LyoqDQogICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKg0KICAqIEBmaWxlICAgIHN0bTMybDE1MnhjYS5oDQogICogQGF1dGhvciAgTUNEIEFwcGxpY2F0aW9uIFRlYW0NCiAgKiBAYnJpZWYgICBDTVNJUyBDb3J0ZXgtTTMgRGV2aWNlIFBlcmlwaGVyYWwgQWNjZXNzIExheWVyIEhlYWRlciBGaWxlLiANCiAgKiAgICAgICAgICBUaGlzIGZpbGUgY29udGFpbnMgYWxsIHRoZSBwZXJpcGhlcmFsIHJlZ2lzdGVyJ3MgZGVmaW5pdGlvbnMsIGJpdHMgDQogICogICAgICAgICAgZGVmaW5pdGlvbnMgYW5kIG1lbW9yeSBtYXBwaW5nIGZvciBTVE0zMkwxeHggZGV2aWNlcy4gICAgICAgICAgICANCiAgKiAgICAgICAgICAgIA0KICAqICAgICAgICAgIFRoaXMgZmlsZSBjb250YWluczoNCiAgKiAgICAgICAgICAgLSBEYXRhIHN0cnVjdHVyZXMgYW5kIHRoZSBhZGRyZXNzIG1hcHBpbmcgZm9yIGFsbCBwZXJpcGhlcmFscw0KICAqICAgICAgICAgICAtIFBlcmlwaGVyYWwncyByZWdpc3RlcnMgZGVjbGFyYXRpb25zIGFuZCBiaXRzIGRlZmluaXRpb24NCiAgKiAgICAgICAgICAgLSBNYWNyb3MgdG8gYWNjZXNzIHBlcmlwaGVyYWyScyByZWdpc3RlcnMgaGFyZHdhcmUNCiAgKiAgDQogICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKg0KICAqIEBhdHRlbnRpb24NCiAgKg0KICAqIDxoMj48Y2VudGVyPiZjb3B5OyBDT1BZUklHSFQoYykgMjAxNyBTVE1pY3JvZWxlY3Ryb25pY3M8L2NlbnRlcj48L2gyPg0KICAqDQogICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0IG1vZGlmaWNhdGlvbiwNCiAgKiBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zIGFyZSBtZXQ6DQogICogICAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2UsDQogICogICAgICB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLg0KICAqICAgMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlLA0KICAqICAgICAgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUgZG9jdW1lbnRhdGlvbg0KICAqICAgICAgYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uDQogICogICAzLiBOZWl0aGVyIHRoZSBuYW1lIG9mIFNUTWljcm9lbGVjdHJvbmljcyBub3IgdGhlIG5hbWVzIG9mIGl0cyBjb250cmlidXRvcnMNCiAgKiAgICAgIG1heSBiZSB1c2VkIHRvIGVuZG9yc2Ugb3IgcHJvbW90ZSBwcm9kdWN0cyBkZXJpdmVkIGZyb20gdGhpcyBzb2Z0d2FyZQ0KICAqICAgICAgd2l0aG91dCBzcGVjaWZpYyBwcmlvciB3cml0dGVuIHBlcm1pc3Npb24uDQogICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQogICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERFUlMgQU5EIENPTlRSSUJVVE9SUyAiQVMgSVMiDQogICogQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRQ0KICAqIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFSRQ0KICAqIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRSBDT1BZUklHSFQgSE9MREVSIE9SIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUNCiAgKiBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTA0KICAqIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SDQogICogU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVINCiAgKiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLA0KICAqIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFDQogICogT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4NCiAgKg0KICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioNCiAgKi8NCg0KLyoqIEBhZGR0b2dyb3VwIENNU0lTDQogICogQHsNCiAgKi8NCg0KLyoqIEBhZGR0b2dyb3VwIHN0bTMybDE1MnhjYQ0KICAqIEB7DQogICovDQogICAgDQojaWZuZGVmIF9fU1RNMzJMMTUyeENBX0gNCiNkZWZpbmUgX19TVE0zMkwxNTJ4Q0FfSA0KDQojaWZkZWYgX19jcGx1c3BsdXMNCiBleHRlcm4gIkMiIHsNCiNlbmRpZiANCiAgDQoNCiAgLyoqIEBhZGR0b2dyb3VwIENvbmZpZ3VyYXRpb25fc2VjdGlvbl9mb3JfQ01TSVMNCiAgKiBAew0KICAqLw0KLyoqDQogICogQGJyaWVmIENvbmZpZ3VyYXRpb24gb2YgdGhlIENvcnRleC1NMyBQcm9jZXNzb3IgYW5kIENvcmUgUGVyaXBoZXJhbHMgDQogKi8NCiNkZWZpbmUgX19DTTNfUkVWICAgICAgICAgICAgICAgICAweDIwMFUgLyohPCBDb3J0ZXgtTTMgUmV2aXNpb24gcjJwMCAgICAgICAgICAgICAgICAgICovDQojZGVmaW5lIF9fTVBVX1BSRVNFTlQgICAgICAgICAgICAgMVUgICAgIC8qITwgU1RNMzJMMXh4IHByb3ZpZGVzIE1QVSAgICAgICAgICAgICAgICAgICAgICAgICAgKi8NCiNkZWZpbmUgX19OVklDX1BSSU9fQklUUyAgICAgICAgICA0VSAgICAgLyohPCBTVE0zMkwxeHggdXNlcyA0IEJpdHMgZm9yIHRoZSBQcmlvcml0eSBMZXZlbHMgICAgKi8NCiNkZWZpbmUgX19WZW5kb3JfU3lzVGlja0NvbmZpZyAgICAwVSAgICAgLyohPCBTZXQgdG8gMSBpZiBkaWZmZXJlbnQgU3lzVGljayBDb25maWcgaXMgdXNlZCAqLw0KIA0KLyoqDQogICogQH0NCiAgKi8NCiAgIA0KLyoqIEBhZGR0b2dyb3VwIFBlcmlwaGVyYWxfaW50ZXJydXB0X251bWJlcl9kZWZpbml0aW9uDQogICogQHsNCiAgKi8NCg0KLyoqDQogKiBAYnJpZWYgU1RNMzJMMXh4IEludGVycnVwdCBOdW1iZXIgRGVmaW5pdGlvbiwgYWNjb3JkaW5nIHRvIHRoZSBzZWxlY3RlZCBkZXZpY2UgDQogKiAgICAgICAgaW4gQHJlZiBMaWJyYXJ5X2NvbmZpZ3VyYXRpb25fc2VjdGlvbiANCiAqLw0KDQogLyohPCBJbnRlcnJ1cHQgTnVtYmVyIERlZmluaXRpb24gKi8NCnR5cGVkZWYgZW51bQ0Kew0KLyoqKioqKiAgQ29ydGV4LU0zIFByb2Nlc3NvciBFeGNlcHRpb25zIE51bWJlcnMgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLw0KICBOb25NYXNrYWJsZUludF9JUlFuICAgICAgICAgPSAtMTQsICAgIC8qITwgMiBOb24gTWFza2FibGUgSW50ZXJydXB0ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLw0KICBIYXJkRmF1bHRfSVJRbiAgICAgICAgICAgICAgPSAtMTMsICAgIC8qITwgMyBDb3J0ZXgtTTMgSGFyZCBGYXVsdCBJbnRlcnJ1cHQgICAgICAgICAgICAgICAgICAgICAgICAqLw0KICBNZW1vcnlNYW5hZ2VtZW50X0lSUW4gICAgICAgPSAtMTIsICAgIC8qITwgNCBDb3J0ZXgtTTMgTWVtb3J5IE1hbmFnZW1lbnQgSW50ZXJydXB0ICAgICAgICAgICAgICAgICAqLw0KICBCdXNGYXVsdF9JUlFuICAgICAgICAgICAgICAgPSAtMTEsICAgIC8qITwgNSBDb3J0ZXgtTTMgQnVzIEZhdWx0IEludGVycnVwdCAgICAgICAgICAgICAgICAgICAgICAgICAqLw0KICBVc2FnZUZhdWx0X0lSUW4gICAgICAgICAgICAgPSAtMTAsICAgIC8qITwgNiBDb3J0ZXgtTTMgVXNhZ2UgRmF1bHQgSW50ZXJydXB0ICAgICAgICAgICAgICAgICAgICAgICAqLw0KICBTVkNfSVJRbiAgICAgICAgICAgICAgICAgICAgPSAtNSwgICAgIC8qITwgMTEgQ29ydGV4LU0zIFNWIENhbGwgSW50ZXJydXB0ICAgICAgICAgICAgICAgICAgICAgICAgICAqLw0KICBEZWJ1Z01vbml0b3JfSVJRbiAgICAgICAgICAgPSAtNCwgICAgIC8qITwgMTIgQ29ydGV4LU0zIERlYnVnIE1vbml0b3IgSW50ZXJydXB0ICAgICAgICAgICAgICAgICAgICAqLw0KICBQZW5kU1ZfSVJRbiAgICAgICAgICAgICAgICAgPSAtMiwgICAgIC8qITwgMTQgQ29ydGV4LU0zIFBlbmQgU1YgSW50ZXJydXB0ICAgICAgICAgICAgICAgICAgICAgICAgICAqLw0KICBTeXNUaWNrX0lSUW4gICAgICAgICAgICAgICAgPSAtMSwgICAgIC8qITwgMTUgQ29ydGV4LU0zIFN5c3RlbSBUaWNrIEludGVycnVwdCAgICAgICAgICAgICAgICAgICAgICAqLw0KDQovKioqKioqICBTVE0zMkwgc3BlY2lmaWMgSW50ZXJydXB0IE51bWJlcnMgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovDQogIFdXREdfSVJRbiAgICAgICAgICAgICAgICAgICA9IDAsICAgICAgLyohPCBXaW5kb3cgV2F0Y2hEb2cgSW50ZXJydXB0ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovDQogIFBWRF9JUlFuICAgICAgICAgICAgICAgICAgICA9IDEsICAgICAgLyohPCBQVkQgdGhyb3VnaCBFWFRJIExpbmUgZGV0ZWN0aW9uIEludGVycnVwdCAgICAgICAgICAgICAgICovDQogIFRBTVBFUl9TVEFNUF9JUlFuICAgICAgICAgICA9IDIsICAgICAgLyohPCBUYW1wZXIgYW5kIFRpbWVTdGFtcCBpbnRlcnJ1cHRzIHRocm91Z2ggdGhlIEVYVEkgbGluZSAgICovDQogIFJUQ19XS1VQX0lSUW4gICAgICAgICAgICAgICA9IDMsICAgICAgLyohPCBSVEMgV2FrZXVwIFRpbWVyIHRocm91Z2ggRVhUSSBMaW5lIEludGVycnVwdCAgICAgICAgICAgICovDQogIEZMQVNIX0lSUW4gICAgICAgICAgICAgICAgICA9IDQsICAgICAgLyohPCBGTEFTSCBnbG9iYWwgSW50ZXJydXB0ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovDQogIFJDQ19JUlFuICAgICAgICAgICAgICAgICAgICA9IDUsICAgICAgLyohPCBSQ0MgZ2xvYmFsIEludGVycnVwdCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovDQogIEVYVEkwX0lSUW4gICAgICAgICAgICAgICAgICA9IDYsICAgICAgLyohPCBFWFRJIExpbmUwIEludGVycnVwdCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovDQogIEVYVEkxX0lSUW4gICAgICAgICAgICAgICAgICA9IDcsICAgICAgLyohPCBFWFRJIExpbmUxIEludGVycnVwdCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovDQogIEVYVEkyX0lSUW4gICAgICAgICAgICAgICAgICA9IDgsICAgICAgLyohPCBFWFRJIExpbmUyIEludGVycnVwdCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovDQogIEVYVEkzX0lSUW4gICAgICAgICAgICAgICAgICA9IDksICAgICAgLyohPCBFWFRJIExpbmUzIEludGVycnVwdCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovDQogIEVYVEk0X0lSUW4gICAgICAgICAgICAgICAgICA9IDEwLCAgICAgLyohPCBFWFRJIExpbmU0IEludGVycnVwdCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovDQogIERNQTFfQ2hhbm5lbDFfSVJRbiAgICAgICAgICA9IDExLCAgICAgLyohPCBETUExIENoYW5uZWwgMSBnbG9iYWwgSW50ZXJydXB0ICAgICAgICAgICAgICAgICAgICAgICAgICovDQogIERNQTFfQ2hhbm5lbDJfSVJRbiAgICAgICAgICA9IDEyLCAgICAgLyohPCBETUExIENoYW5uZWwgMiBnbG9iYWwgSW50ZXJydXB0ICAgICAgICAgICAgICAgICAgICAgICAgICovDQogIERNQTFfQ2hhbm5lbDNfSVJRbiAgICAgICAgICA9IDEzLCAgICAgLyohPCBETUExIENoYW5uZWwgMyBnbG9iYWwgSW50ZXJydXB0ICAgICAgICAgICAgICAgICAgICAgICAgICovDQogIERNQTFfQ2hhbm5lbDRfSVJRbiAgICAgICAgICA9IDE0LCAgICAgLyohPCBETUExIENoYW5uZWwgNCBnbG9iYWwgSW50ZXJydXB0ICAgICAgICAgICAgICAgICAgICAgICAgICovDQogIERNQTFfQ2hhbm5lbDVfSVJRbiAgICAgICAgICA9IDE1LCAgICAgLyohPCBETUExIENoYW5uZWwgNSBnbG9iYWwgSW50ZXJydXB0ICAgICAgICAgICAgICAgICAgICAgICAgICovDQogIERNQTFfQ2hhbm5lbDZfSVJRbiAgICAgICAgICA9IDE2LCAgICAgLyohPCBETUExIENoYW5uZWwgNiBnbG9iYWwgSW50ZXJydXB0ICAgICAgICAgICAgICAgICAgICAgICAgICovDQogIERNQTFfQ2hhbm5lbDdfSVJRbiAgICAgICAgICA9IDE3LCAgICAgLyohPCBETUExIENoYW5uZWwgNyBnbG9iYWwgSW50ZXJydXB0ICAgICAgICAgICAgICAgICAgICAgICAgICovDQogIEFEQzFfSVJRbiAgICAgICAgICAgICAgICAgICA9IDE4LCAgICAgLyohPCBBREMxIGdsb2JhbCBJbnRlcnJ1cHQgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovDQogIFVTQl9IUF9JUlFuICAgICAgICAgICAgICAgICA9IDE5LCAgICAgLyohPCBVU0IgSGlnaCBQcmlvcml0eSBJbnRlcnJ1cHQgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovDQogIFVTQl9MUF9JUlFuICAgICAgICAgICAgICAgICA9IDIwLCAgICAgLyohPCBVU0IgTG93IFByaW9yaXR5IEludGVycnVwdCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovDQogIERBQ19JUlFuICAgICAgICAgICAgICAgICAgICA9IDIxLCAgICAgLyohPCBEQUMgSW50ZXJydXB0ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovDQogIENPTVBfSVJRbiAgICAgICAgICAgICAgICAgICA9IDIyLCAgICAgLyohPCBDb21wYXJhdG9yIHRocm91Z2ggRVhUSSBMaW5lIEludGVycnVwdCAgICAgICAgICAgICAgICAgICovDQogIEVYVEk5XzVfSVJRbiAgICAgICAgICAgICAgICA9IDIzLCAgICAgLyohPCBFeHRlcm5hbCBMaW5lWzk6NV0gSW50ZXJydXB0cyAgICAgICAgICAgICAgICAgICAgICAgICAgICovDQogIExDRF9JUlFuICAgICAgICAgICAgICAgICAgICA9IDI0LCAgICAgLyohPCBMQ0QgSW50ZXJydXB0ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovDQogIFRJTTlfSVJRbiAgICAgICAgICAgICAgICAgICA9IDI1LCAgICAgLyohPCBUSU05IGdsb2JhbCBJbnRlcnJ1cHQgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovDQogIFRJTTEwX0lSUW4gICAgICAgICAgICAgICAgICA9IDI2LCAgICAgLyohPCBUSU0xMCBnbG9iYWwgSW50ZXJydXB0ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovDQogIFRJTTExX0lSUW4gICAgICAgICAgICAgICAgICA9IDI3LCAgICAgLyohPCBUSU0xMSBnbG9iYWwgSW50ZXJydXB0ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovDQogIFRJTTJfSVJRbiAgICAgICAgICAgICAgICAgICA9IDI4LCAgICAgLyohPCBUSU0yIGdsb2JhbCBJbnRlcnJ1cHQgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovDQogIFRJTTNfSVJRbiAgICAgICAgICAgICAgICAgICA9IDI5LCAgICAgLyohPCBUSU0zIGdsb2JhbCBJbnRlcnJ1cHQgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovDQogIFRJTTRfSVJRbiAgICAgICAgICAgICAgICAgICA9IDMwLCAgICAgLyohPCBUSU00IGdsb2JhbCBJbnRlcnJ1cHQgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovDQogIEkyQzFfRVZfSVJRbiAgICAgICAgICAgICAgICA9IDMxLCAgICAgLyohPCBJMkMxIEV2ZW50IEludGVycnVwdCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovDQogIEkyQzFfRVJfSVJRbiAgICAgICAgICAgICAgICA9IDMyLCAgICAgLyohPCBJMkMxIEVycm9yIEludGVycnVwdCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovDQogIEkyQzJfRVZfSVJRbiAgICAgICAgICAgICAgICA9IDMzLCAgICAgLyohPCBJMkMyIEV2ZW50IEludGVycnVwdCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovDQogIEkyQzJfRVJfSVJRbiAgICAgICAgICAgICAgICA9IDM0LCAgICAgLyohPCBJMkMyIEVycm9yIEludGVycnVwdCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovDQogIFNQSTFfSVJRbiAgICAgICAgICAgICAgICAgICA9IDM1LCAgICAgLyohPCBTUEkxIGdsb2JhbCBJbnRlcnJ1cHQgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovDQogIFNQSTJfSVJRbiAgICAgICAgICAgICAgICAgICA9IDM2LCAgICAgLyohPCBTUEkyIGdsb2JhbCBJbnRlcnJ1cHQgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovDQogIFVTQVJUMV9JUlFuICAgICAgICAgICAgICAgICA9IDM3LCAgICAgLyohPCBVU0FSVDEgZ2xvYmFsIEludGVycnVwdCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovDQogIFVTQVJUMl9JUlFuICAgICAgICAgICAgICAgICA9IDM4LCAgICAgLyohPCBVU0FSVDIgZ2xvYmFsIEludGVycnVwdCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovDQogIFVTQVJUM19JUlFuICAgICAgICAgICAgICAgICA9IDM5LCAgICAgLyohPCBVU0FSVDMgZ2xvYmFsIEludGVycnVwdCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovDQogIEVYVEkxNV8xMF9JUlFuICAgICAgICAgICAgICA9IDQwLCAgICAgLyohPCBFeHRlcm5hbCBMaW5lWzE1OjEwXSBJbnRlcnJ1cHRzICAgICAgICAgICAgICAgICAgICAgICAgICovDQogIFJUQ19BbGFybV9JUlFuICAgICAgICAgICAgICA9IDQxLCAgICAgLyohPCBSVEMgQWxhcm0gdGhyb3VnaCBFWFRJIExpbmUgSW50ZXJydXB0ICAgICAgICAgICAgICAgICAgICovDQogIFVTQl9GU19XS1VQX0lSUW4gICAgICAgICAgICA9IDQyLCAgICAgLyohPCBVU0IgRlMgV2FrZVVwIGZyb20gc3VzcGVuZCB0aHJvdWdoIEVYVEkgTGluZSBJbnRlcnJ1cHQgICovDQogIFRJTTZfSVJRbiAgICAgICAgICAgICAgICAgICA9IDQzLCAgICAgLyohPCBUSU02IGdsb2JhbCBJbnRlcnJ1cHQgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovDQogIFRJTTdfSVJRbiAgICAgICAgICAgICAgICAgICA9IDQ0LCAgICAgLyohPCBUSU03IGdsb2JhbCBJbnRlcnJ1cHQgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovDQogIFRJTTVfSVJRbiAgICAgICAgICAgICAgICAgICA9IDQ2LCAgICAgLyohPCBUSU01IGdsb2JhbCBJbnRlcnJ1cHQgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovDQogIFNQSTNfSVJRbiAgICAgICAgICAgICAgICAgICA9IDQ3LCAgICAgLyohPCBTUEkzIGdsb2JhbCBJbnRlcnJ1cHQgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovDQogIERNQTJfQ2hhbm5lbDFfSVJRbiAgICAgICAgICA9IDUwLCAgICAgLyohPCBETUEyIENoYW5uZWwgMSBnbG9iYWwgSW50ZXJydXB0ICAgICAgICAgICAgICAgICAgICAgICAgICovDQogIERNQTJfQ2hhbm5lbDJfSVJRbiAgICAgICAgICA9IDUxLCAgICAgLyohPCBETUEyIENoYW5uZWwgMiBnbG9iYWwgSW50ZXJydXB0ICAgICAgICAgICAgICAgICAgICAgICAgICovDQogIERNQTJfQ2hhbm5lbDNfSVJRbiAgICAgICAgICA9IDUyLCAgICAgLyohPCBETUEyIENoYW5uZWwgMyBnbG9iYWwgSW50ZXJydXB0ICAgICAgICAgICAgICAgICAgICAgICAgICovDQogIERNQTJfQ2hhbm5lbDRfSVJRbiAgICAgICAgICA9IDUzLCAgICAgLyohPCBETUEyIENoYW5uZWwgNCBnbG9iYWwgSW50ZXJydXB0ICAgICAgICAgICAgICAgICAgICAgICAgICovDQogIERNQTJfQ2hhbm5lbDVfSVJRbiAgICAgICAgICA9IDU0LCAgICAgLyohPCBETUEyIENoYW5uZWwgNSBnbG9iYWwgSW50ZXJydXB0ICAgICAgICAgICAgICAgICAgICAgICAgICovDQogIENPTVBfQUNRX0lSUW4gICAgICAgICAgICAgICA9IDU2ICAgICAgLyohPCBDb21wYXJhdG9yIENoYW5uZWwgQWNxdWlzaXRpb24gZ2xvYmFsIEludGVycnVwdCAgICAgICAgICovDQp9IElSUW5fVHlwZTsNCg0KLyoqDQogICogQH0NCiAgKi8NCg0KI2luY2x1ZGUgImNvcmVfY20zLmgiDQojaW5jbHVkZSAic3lzdGVtX3N0bTMybDF4eC5oIg0KI2luY2x1ZGUgPHN0ZGludC5oPg0KDQovKiogQGFkZHRvZ3JvdXAgUGVyaXBoZXJhbF9yZWdpc3RlcnNfc3RydWN0dXJlcw0KICAqIEB7DQogICovICAgDQoNCi8qKiANCiAgKiBAYnJpZWYgQW5hbG9nIHRvIERpZ2l0YWwgQ29udmVydGVyDQogICovDQoNCnR5cGVkZWYgc3RydWN0DQp7DQogIF9fSU8gdWludDMyX3QgU1I7ICAgICAgICAgICAvKiE8IEFEQyBzdGF0dXMgcmVnaXN0ZXIsICAgICAgICAgICAgICAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDAwICovDQogIF9fSU8gdWludDMyX3QgQ1IxOyAgICAgICAgICAvKiE8IEFEQyBjb250cm9sIHJlZ2lzdGVyIDEsICAgICAgICAgICAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDA0ICovDQogIF9fSU8gdWludDMyX3QgQ1IyOyAgICAgICAgICAvKiE8IEFEQyBjb250cm9sIHJlZ2lzdGVyIDIsICAgICAgICAgICAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDA4ICovDQogIF9fSU8gdWludDMyX3QgU01QUjE7ICAgICAgICAvKiE8IEFEQyBzYW1wbGUgdGltZSByZWdpc3RlciAxLCAgICAgICAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDBDICovDQogIF9fSU8gdWludDMyX3QgU01QUjI7ICAgICAgICAvKiE8IEFEQyBzYW1wbGUgdGltZSByZWdpc3RlciAyLCAgICAgICAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDEwICovDQogIF9fSU8gdWludDMyX3QgU01QUjM7ICAgICAgICAvKiE8IEFEQyBzYW1wbGUgdGltZSByZWdpc3RlciAzLCAgICAgICAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDE0ICovDQogIF9fSU8gdWludDMyX3QgSk9GUjE7ICAgICAgICAvKiE8IEFEQyBpbmplY3RlZCBjaGFubmVsIGRhdGEgb2Zmc2V0IHJlZ2lzdGVyIDEsIEFkZHJlc3Mgb2Zmc2V0OiAweDE4ICovDQogIF9fSU8gdWludDMyX3QgSk9GUjI7ICAgICAgICAvKiE8IEFEQyBpbmplY3RlZCBjaGFubmVsIGRhdGEgb2Zmc2V0IHJlZ2lzdGVyIDIsIEFkZHJlc3Mgb2Zmc2V0OiAweDFDICovDQogIF9fSU8gdWludDMyX3QgSk9GUjM7ICAgICAgICAvKiE8IEFEQyBpbmplY3RlZCBjaGFubmVsIGRhdGEgb2Zmc2V0IHJlZ2lzdGVyIDMsIEFkZHJlc3Mgb2Zmc2V0OiAweDIwICovDQogIF9fSU8gdWludDMyX3QgSk9GUjQ7ICAgICAgICAvKiE8IEFEQyBpbmplY3RlZCBjaGFubmVsIGRhdGEgb2Zmc2V0IHJlZ2lzdGVyIDQsIEFkZHJlc3Mgb2Zmc2V0OiAweDI0ICovDQogIF9fSU8gdWludDMyX3QgSFRSOyAgICAgICAgICAvKiE8IEFEQyB3YXRjaGRvZyBoaWdoZXIgdGhyZXNob2xkIHJlZ2lzdGVyLCAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDI4ICovDQogIF9fSU8gdWludDMyX3QgTFRSOyAgICAgICAgICAvKiE8IEFEQyB3YXRjaGRvZyBsb3dlciB0aHJlc2hvbGQgcmVnaXN0ZXIsICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDJDICovDQogIF9fSU8gdWludDMyX3QgU1FSMTsgICAgICAgICAvKiE8IEFEQyByZWd1bGFyIHNlcXVlbmNlIHJlZ2lzdGVyIDEsICAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDMwICovDQogIF9fSU8gdWludDMyX3QgU1FSMjsgICAgICAgICAvKiE8IEFEQyByZWd1bGFyIHNlcXVlbmNlIHJlZ2lzdGVyIDIsICAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDM0ICovDQogIF9fSU8gdWludDMyX3QgU1FSMzsgICAgICAgICAvKiE8IEFEQyByZWd1bGFyIHNlcXVlbmNlIHJlZ2lzdGVyIDMsICAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDM4ICovDQogIF9fSU8gdWludDMyX3QgU1FSNDsgICAgICAgICAvKiE8IEFEQyByZWd1bGFyIHNlcXVlbmNlIHJlZ2lzdGVyIDQsICAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDNDICovDQogIF9fSU8gdWludDMyX3QgU1FSNTsgICAgICAgICAvKiE8IEFEQyByZWd1bGFyIHNlcXVlbmNlIHJlZ2lzdGVyIDUsICAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDQwICovDQogIF9fSU8gdWludDMyX3QgSlNRUjsgICAgICAgICAvKiE8IEFEQyBpbmplY3RlZCBzZXF1ZW5jZSByZWdpc3RlciwgICAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDQ0ICovDQogIF9fSU8gdWludDMyX3QgSkRSMTsgICAgICAgICAvKiE8IEFEQyBpbmplY3RlZCBkYXRhIHJlZ2lzdGVyIDEsICAgICAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDQ4ICovDQogIF9fSU8gdWludDMyX3QgSkRSMjsgICAgICAgICAvKiE8IEFEQyBpbmplY3RlZCBkYXRhIHJlZ2lzdGVyIDIsICAgICAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDRDICovDQogIF9fSU8gdWludDMyX3QgSkRSMzsgICAgICAgICAvKiE8IEFEQyBpbmplY3RlZCBkYXRhIHJlZ2lzdGVyIDMsICAgICAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDUwICovDQogIF9fSU8gdWludDMyX3QgSkRSNDsgICAgICAgICAvKiE8IEFEQyBpbmplY3RlZCBkYXRhIHJlZ2lzdGVyIDQsICAgICAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDU0ICovDQogIF9fSU8gdWludDMyX3QgRFI7ICAgICAgICAgICAvKiE8IEFEQyByZWd1bGFyIGRhdGEgcmVnaXN0ZXIsICAgICAgICAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDU4ICovDQogIF9fSU8gdWludDMyX3QgU01QUjA7ICAgICAgICAvKiE8IEFEQyBzYW1wbGUgdGltZSByZWdpc3RlciAwLCAgICAgICAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDVDICovDQp9IEFEQ19UeXBlRGVmOw0KDQp0eXBlZGVmIHN0cnVjdA0Kew0KICBfX0lPIHVpbnQzMl90IENTUjsgICAgICAgICAgLyohPCBBREMgY29tbW9uIHN0YXR1cyByZWdpc3RlciwgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogQURDMSBiYXNlIGFkZHJlc3MgKyAweDMwMCAqLw0KICBfX0lPIHVpbnQzMl90IENDUjsgICAgICAgICAgLyohPCBBREMgY29tbW9uIGNvbnRyb2wgcmVnaXN0ZXIsICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogQURDMSBiYXNlIGFkZHJlc3MgKyAweDMwNCAqLw0KfSBBRENfQ29tbW9uX1R5cGVEZWY7DQoNCi8qKiANCiAgKiBAYnJpZWYgQ29tcGFyYXRvciANCiAgKi8NCg0KdHlwZWRlZiBzdHJ1Y3QNCnsNCiAgX19JTyB1aW50MzJfdCBDU1I7ICAgICAgICAgLyohPCBDT01QIGNvbnRyb2wgYW5kIHN0YXR1cyByZWdpc3RlciwgQWRkcmVzcyBvZmZzZXQ6IDB4MDAgKi8NCn0gQ09NUF9UeXBlRGVmOw0KDQp0eXBlZGVmIHN0cnVjdA0Kew0KICBfX0lPIHVpbnQzMl90IENTUjsgICAgICAgICAvKiE8IENPTVAgY29udHJvbCBhbmQgc3RhdHVzIHJlZ2lzdGVyLCB1c2VkIGZvciBiaXRzIGNvbW1vbiB0byBzZXZlcmFsIENPTVAgaW5zdGFuY2VzLCBBZGRyZXNzIG9mZnNldDogMHgwMCAqLw0KfSBDT01QX0NvbW1vbl9UeXBlRGVmOw0KDQovKiogDQogICogQGJyaWVmIENSQyBjYWxjdWxhdGlvbiB1bml0DQogICovDQoNCnR5cGVkZWYgc3RydWN0DQp7DQogIF9fSU8gdWludDMyX3QgRFI7ICAgICAgICAgICAvKiE8IENSQyBEYXRhIHJlZ2lzdGVyLCAgICAgICAgICAgICAgICAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDAwICovDQogIF9fSU8gdWludDhfdCAgSURSOyAgICAgICAgICAvKiE8IENSQyBJbmRlcGVuZGVudCBkYXRhIHJlZ2lzdGVyLCAgICAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDA0ICovDQogIHVpbnQ4X3QgICAgICAgUkVTRVJWRUQwOyAgICAvKiE8IFJlc2VydmVkLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDA1ICovDQogIHVpbnQxNl90ICAgICAgUkVTRVJWRUQxOyAgICAvKiE8IFJlc2VydmVkLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDA2ICovIA0KICBfX0lPIHVpbnQzMl90IENSOyAgICAgICAgICAgLyohPCBDUkMgQ29udHJvbCByZWdpc3RlciwgICAgICAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgwOCAqLyANCn0gQ1JDX1R5cGVEZWY7DQoNCi8qKiANCiAgKiBAYnJpZWYgRGlnaXRhbCB0byBBbmFsb2cgQ29udmVydGVyDQogICovDQoNCnR5cGVkZWYgc3RydWN0DQp7DQogIF9fSU8gdWludDMyX3QgQ1I7ICAgICAgICAgICAvKiE8IERBQyBjb250cm9sIHJlZ2lzdGVyLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgwMCAqLw0KICBfX0lPIHVpbnQzMl90IFNXVFJJR1I7ICAgICAgLyohPCBEQUMgc29mdHdhcmUgdHJpZ2dlciByZWdpc3RlciwgICAgICAgICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MDQgKi8NCiAgX19JTyB1aW50MzJfdCBESFIxMlIxOyAgICAgIC8qITwgREFDIGNoYW5uZWwxIDEyLWJpdCByaWdodC1hbGlnbmVkIGRhdGEgaG9sZGluZyByZWdpc3RlciwgIEFkZHJlc3Mgb2Zmc2V0OiAweDA4ICovDQogIF9fSU8gdWludDMyX3QgREhSMTJMMTsgICAgICAvKiE8IERBQyBjaGFubmVsMSAxMi1iaXQgbGVmdCBhbGlnbmVkIGRhdGEgaG9sZGluZyByZWdpc3RlciwgICBBZGRyZXNzIG9mZnNldDogMHgwQyAqLw0KICBfX0lPIHVpbnQzMl90IERIUjhSMTsgICAgICAgLyohPCBEQUMgY2hhbm5lbDEgOC1iaXQgcmlnaHQgYWxpZ25lZCBkYXRhIGhvbGRpbmcgcmVnaXN0ZXIsICAgQWRkcmVzcyBvZmZzZXQ6IDB4MTAgKi8NCiAgX19JTyB1aW50MzJfdCBESFIxMlIyOyAgICAgIC8qITwgREFDIGNoYW5uZWwyIDEyLWJpdCByaWdodCBhbGlnbmVkIGRhdGEgaG9sZGluZyByZWdpc3RlciwgIEFkZHJlc3Mgb2Zmc2V0OiAweDE0ICovDQogIF9fSU8gdWludDMyX3QgREhSMTJMMjsgICAgICAvKiE8IERBQyBjaGFubmVsMiAxMi1iaXQgbGVmdCBhbGlnbmVkIGRhdGEgaG9sZGluZyByZWdpc3RlciwgICBBZGRyZXNzIG9mZnNldDogMHgxOCAqLw0KICBfX0lPIHVpbnQzMl90IERIUjhSMjsgICAgICAgLyohPCBEQUMgY2hhbm5lbDIgOC1iaXQgcmlnaHQtYWxpZ25lZCBkYXRhIGhvbGRpbmcgcmVnaXN0ZXIsICAgQWRkcmVzcyBvZmZzZXQ6IDB4MUMgKi8NCiAgX19JTyB1aW50MzJfdCBESFIxMlJEOyAgICAgIC8qITwgRHVhbCBEQUMgMTItYml0IHJpZ2h0LWFsaWduZWQgZGF0YSBob2xkaW5nIHJlZ2lzdGVyLCAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDIwICovDQogIF9fSU8gdWludDMyX3QgREhSMTJMRDsgICAgICAvKiE8IERVQUwgREFDIDEyLWJpdCBsZWZ0IGFsaWduZWQgZGF0YSBob2xkaW5nIHJlZ2lzdGVyLCAgICAgICBBZGRyZXNzIG9mZnNldDogMHgyNCAqLw0KICBfX0lPIHVpbnQzMl90IERIUjhSRDsgICAgICAgLyohPCBEVUFMIERBQyA4LWJpdCByaWdodCBhbGlnbmVkIGRhdGEgaG9sZGluZyByZWdpc3RlciwgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MjggKi8NCiAgX19JTyB1aW50MzJfdCBET1IxOyAgICAgICAgIC8qITwgREFDIGNoYW5uZWwxIGRhdGEgb3V0cHV0IHJlZ2lzdGVyLCAgICAgICAgICAgICAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDJDICovDQogIF9fSU8gdWludDMyX3QgRE9SMjsgICAgICAgICAvKiE8IERBQyBjaGFubmVsMiBkYXRhIG91dHB1dCByZWdpc3RlciwgICAgICAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgzMCAqLw0KICBfX0lPIHVpbnQzMl90IFNSOyAgICAgICAgICAgLyohPCBEQUMgc3RhdHVzIHJlZ2lzdGVyLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MzQgKi8NCn0gREFDX1R5cGVEZWY7DQoNCi8qKiANCiAgKiBAYnJpZWYgRGVidWcgTUNVDQogICovDQoNCnR5cGVkZWYgc3RydWN0DQp7DQogIF9fSU8gdWludDMyX3QgSURDT0RFOyAgICAgICAvKiE8IE1DVSBkZXZpY2UgSUQgY29kZSwgICAgICAgICAgICAgICAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDAwICovDQogIF9fSU8gdWludDMyX3QgQ1I7ICAgICAgICAgICAvKiE8IERlYnVnIE1DVSBjb25maWd1cmF0aW9uIHJlZ2lzdGVyLCAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDA0ICovDQogIF9fSU8gdWludDMyX3QgQVBCMUZaOyAgICAgICAvKiE8IERlYnVnIE1DVSBBUEIxIGZyZWV6ZSByZWdpc3RlciwgICAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDA4ICovDQogIF9fSU8gdWludDMyX3QgQVBCMkZaOyAgICAgICAvKiE8IERlYnVnIE1DVSBBUEIyIGZyZWV6ZSByZWdpc3RlciwgICAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDBDICovDQp9REJHTUNVX1R5cGVEZWY7DQoNCi8qKiANCiAgKiBAYnJpZWYgRE1BIENvbnRyb2xsZXINCiAgKi8NCg0KdHlwZWRlZiBzdHJ1Y3QNCnsNCiAgX19JTyB1aW50MzJfdCBDQ1I7ICAgICAgICAgIC8qITwgRE1BIGNoYW5uZWwgeCBjb25maWd1cmF0aW9uIHJlZ2lzdGVyICAgICAgICAqLw0KICBfX0lPIHVpbnQzMl90IENORFRSOyAgICAgICAgLyohPCBETUEgY2hhbm5lbCB4IG51bWJlciBvZiBkYXRhIHJlZ2lzdGVyICAgICAgICovDQogIF9fSU8gdWludDMyX3QgQ1BBUjsgICAgICAgICAvKiE8IERNQSBjaGFubmVsIHggcGVyaXBoZXJhbCBhZGRyZXNzIHJlZ2lzdGVyICAgKi8NCiAgX19JTyB1aW50MzJfdCBDTUFSOyAgICAgICAgIC8qITwgRE1BIGNoYW5uZWwgeCBtZW1vcnkgYWRkcmVzcyByZWdpc3RlciAgICAgICAqLw0KfSBETUFfQ2hhbm5lbF9UeXBlRGVmOw0KDQp0eXBlZGVmIHN0cnVjdA0Kew0KICBfX0lPIHVpbnQzMl90IElTUjsgICAgICAgICAgLyohPCBETUEgaW50ZXJydXB0IHN0YXR1cyByZWdpc3RlciwgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgwMCAqLw0KICBfX0lPIHVpbnQzMl90IElGQ1I7ICAgICAgICAgLyohPCBETUEgaW50ZXJydXB0IGZsYWcgY2xlYXIgcmVnaXN0ZXIsICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgwNCAqLw0KfSBETUFfVHlwZURlZjsNCg0KLyoqIA0KICAqIEBicmllZiBFeHRlcm5hbCBJbnRlcnJ1cHQvRXZlbnQgQ29udHJvbGxlcg0KICAqLw0KDQp0eXBlZGVmIHN0cnVjdA0Kew0KICBfX0lPIHVpbnQzMl90IElNUjsgICAgICAgICAgLyohPEVYVEkgSW50ZXJydXB0IG1hc2sgcmVnaXN0ZXIsICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgwMCAqLw0KICBfX0lPIHVpbnQzMl90IEVNUjsgICAgICAgICAgLyohPEVYVEkgRXZlbnQgbWFzayByZWdpc3RlciwgICAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgwNCAqLw0KICBfX0lPIHVpbnQzMl90IFJUU1I7ICAgICAgICAgLyohPEVYVEkgUmlzaW5nIHRyaWdnZXIgc2VsZWN0aW9uIHJlZ2lzdGVyICwgICAgICBBZGRyZXNzIG9mZnNldDogMHgwOCAqLw0KICBfX0lPIHVpbnQzMl90IEZUU1I7ICAgICAgICAgLyohPEVYVEkgRmFsbGluZyB0cmlnZ2VyIHNlbGVjdGlvbiByZWdpc3RlciwgICAgICBBZGRyZXNzIG9mZnNldDogMHgwQyAqLw0KICBfX0lPIHVpbnQzMl90IFNXSUVSOyAgICAgICAgLyohPEVYVEkgU29mdHdhcmUgaW50ZXJydXB0IGV2ZW50IHJlZ2lzdGVyLCAgICAgICBBZGRyZXNzIG9mZnNldDogMHgxMCAqLw0KICBfX0lPIHVpbnQzMl90IFBSOyAgICAgICAgICAgLyohPEVYVEkgUGVuZGluZyByZWdpc3RlciwgICAgICAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgxNCAqLw0KfSBFWFRJX1R5cGVEZWY7DQoNCi8qKiANCiAgKiBAYnJpZWYgRkxBU0ggUmVnaXN0ZXJzDQogICovDQp0eXBlZGVmIHN0cnVjdA0Kew0KICBfX0lPIHVpbnQzMl90IEFDUjsgICAgICAgICAgLyohPCBBY2Nlc3MgY29udHJvbCByZWdpc3RlciwgICAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgwMCAqLw0KICBfX0lPIHVpbnQzMl90IFBFQ1I7ICAgICAgICAgLyohPCBQcm9ncmFtL2VyYXNlIGNvbnRyb2wgcmVnaXN0ZXIsICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgwNCAqLw0KICBfX0lPIHVpbnQzMl90IFBES0VZUjsgICAgICAgLyohPCBQb3dlciBkb3duIGtleSByZWdpc3RlciwgICAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgwOCAqLw0KICBfX0lPIHVpbnQzMl90IFBFS0VZUjsgICAgICAgLyohPCBQcm9ncmFtL2VyYXNlIGtleSByZWdpc3RlciwgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgwYyAqLw0KICBfX0lPIHVpbnQzMl90IFBSR0tFWVI7ICAgICAgLyohPCBQcm9ncmFtIG1lbW9yeSBrZXkgcmVnaXN0ZXIsICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgxMCAqLw0KICBfX0lPIHVpbnQzMl90IE9QVEtFWVI7ICAgICAgLyohPCBPcHRpb24gYnl0ZSBrZXkgcmVnaXN0ZXIsICAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgxNCAqLw0KICBfX0lPIHVpbnQzMl90IFNSOyAgICAgICAgICAgLyohPCBTdGF0dXMgcmVnaXN0ZXIsICAgICAgICAgICAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgxOCAqLw0KICBfX0lPIHVpbnQzMl90IE9CUjsgICAgICAgICAgLyohPCBPcHRpb24gYnl0ZSByZWdpc3RlciwgICAgICAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgxYyAqLw0KICBfX0lPIHVpbnQzMl90IFdSUFIxOyAgICAgICAgLyohPCBXcml0ZSBwcm90ZWN0aW9uIHJlZ2lzdGVyIDEsICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgyMCAqLw0KICB1aW50MzJfdCAgIFJFU0VSVkVEWzIzXTsgICAgLyohPCBSZXNlcnZlZCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgyNCAqLw0KICBfX0lPIHVpbnQzMl90IFdSUFIyOyAgICAgICAgLyohPCBXcml0ZSBwcm90ZWN0aW9uIHJlZ2lzdGVyIDIsICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHg4MCAqLw0KfSBGTEFTSF9UeXBlRGVmOw0KDQovKiogDQogICogQGJyaWVmIE9wdGlvbiBCeXRlcyBSZWdpc3RlcnMNCiAgKi8NCnR5cGVkZWYgc3RydWN0DQp7DQogIF9fSU8gdWludDMyX3QgUkRQOyAgICAgICAgICAgICAgLyohPCBSZWFkIHByb3RlY3Rpb24gcmVnaXN0ZXIsICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MDAgKi8NCiAgX19JTyB1aW50MzJfdCBVU0VSOyAgICAgICAgICAgICAvKiE8IHVzZXIgcmVnaXN0ZXIsICAgICAgICAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgwNCAqLw0KICBfX0lPIHVpbnQzMl90IFdSUDAxOyAgICAgICAgICAgIC8qITwgd3JpdGUgcHJvdGVjdGlvbiByZWdpc3RlciAwIDEsICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDA4ICovDQogIF9fSU8gdWludDMyX3QgV1JQMjM7ICAgICAgICAgICAgLyohPCB3cml0ZSBwcm90ZWN0aW9uIHJlZ2lzdGVyIDIgMywgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MEMgKi8NCiAgX19JTyB1aW50MzJfdCBXUlA0NTsgICAgICAgICAgICAvKiE8IHdyaXRlIHByb3RlY3Rpb24gcmVnaXN0ZXIgNCA1LCAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgxMCAqLw0KICBfX0lPIHVpbnQzMl90IFdSUDY3OyAgICAgICAgICAgIC8qITwgd3JpdGUgcHJvdGVjdGlvbiByZWdpc3RlciA2IDcsICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDE0ICovDQp9IE9CX1R5cGVEZWY7DQoNCi8qKiANCiAgKiBAYnJpZWYgT3BlcmF0aW9uYWwgQW1wbGlmaWVyIChPUEFNUCkNCiAgKi8NCnR5cGVkZWYgc3RydWN0DQp7DQogIF9fSU8gdWludDMyX3QgQ1NSOyAgICAgICAgICAvKiE8IE9QQU1QIGNvbnRyb2wgYW5kIHN0YXR1cyByZWdpc3RlciwgICAgICAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDAwICovDQogIF9fSU8gdWludDMyX3QgT1RSOyAgICAgICAgICAvKiE8IE9QQU1QIG9mZnNldCB0cmltbWluZyByZWdpc3RlciBmb3Igbm9ybWFsIG1vZGUsICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDA0ICovIA0KICBfX0lPIHVpbnQzMl90IExQT1RSOyAgICAgICAgLyohPCBPUEFNUCBvZmZzZXQgdHJpbW1pbmcgcmVnaXN0ZXIgZm9yIGxvdyBwb3dlciBtb2RlLCBBZGRyZXNzIG9mZnNldDogMHgwOCAqLw0KfSBPUEFNUF9UeXBlRGVmOw0KDQp0eXBlZGVmIHN0cnVjdA0Kew0KICBfX0lPIHVpbnQzMl90IENTUjsgICAgICAgICAgLyohPCBPUEFNUCBjb250cm9sIGFuZCBzdGF0dXMgcmVnaXN0ZXIsIHVzZWQgZm9yIGJpdHMgY29tbW9uIHRvIHNldmVyYWwgT1BBTVAgaW5zdGFuY2VzLCAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MDAgKi8NCiAgX19JTyB1aW50MzJfdCBPVFI7ICAgICAgICAgIC8qITwgT1BBTVAgb2Zmc2V0IHRyaW1taW5nIHJlZ2lzdGVyIGZvciBub3JtYWwgbW9kZSwgdXNlZCBmb3IgYml0cyBjb21tb24gdG8gc2V2ZXJhbCBPUEFNUCBpbnN0YW5jZXMsIEFkZHJlc3Mgb2Zmc2V0OiAweDA0ICovIA0KfSBPUEFNUF9Db21tb25fVHlwZURlZjsNCg0KLyoqIA0KICAqIEBicmllZiBHZW5lcmFsIFB1cnBvc2UgSU8NCiAgKi8NCg0KdHlwZWRlZiBzdHJ1Y3QNCnsNCiAgX19JTyB1aW50MzJfdCBNT0RFUjsgICAgICAgIC8qITwgR1BJTyBwb3J0IG1vZGUgcmVnaXN0ZXIsICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MDAgICAgICAqLw0KICBfX0lPIHVpbnQzMl90IE9UWVBFUjsgICAgICAgLyohPCBHUElPIHBvcnQgb3V0cHV0IHR5cGUgcmVnaXN0ZXIsICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgwNCAgICAgICovDQogIF9fSU8gdWludDMyX3QgT1NQRUVEUjsgICAgICAvKiE8IEdQSU8gcG9ydCBvdXRwdXQgc3BlZWQgcmVnaXN0ZXIsICAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDA4ICAgICAgKi8NCiAgX19JTyB1aW50MzJfdCBQVVBEUjsgICAgICAgIC8qITwgR1BJTyBwb3J0IHB1bGwtdXAvcHVsbC1kb3duIHJlZ2lzdGVyLCAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MEMgICAgICAqLw0KICBfX0lPIHVpbnQzMl90IElEUjsgICAgICAgICAgLyohPCBHUElPIHBvcnQgaW5wdXQgZGF0YSByZWdpc3RlciwgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgxMCAgICAgICovDQogIF9fSU8gdWludDMyX3QgT0RSOyAgICAgICAgICAvKiE8IEdQSU8gcG9ydCBvdXRwdXQgZGF0YSByZWdpc3RlciwgICAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDE0ICAgICAgKi8NCiAgX19JTyB1aW50MzJfdCBCU1JSOyAgICAgICAgIC8qITwgR1BJTyBwb3J0IGJpdCBzZXQvcmVzZXQgcmVnaXN0ZXJCU1JSLCAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MTggICAgICAqLw0KICBfX0lPIHVpbnQzMl90IExDS1I7ICAgICAgICAgLyohPCBHUElPIHBvcnQgY29uZmlndXJhdGlvbiBsb2NrIHJlZ2lzdGVyLCAgICAgICBBZGRyZXNzIG9mZnNldDogMHgxQyAgICAgICovDQogIF9fSU8gdWludDMyX3QgQUZSWzJdOyAgICAgICAvKiE8IEdQSU8gYWx0ZXJuYXRlIGZ1bmN0aW9uIHJlZ2lzdGVyLCAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDIwLTB4MjQgKi8NCiAgX19JTyB1aW50MzJfdCBCUlI7ICAgICAgICAgIC8qITwgR1BJTyBiaXQgcmVzZXQgcmVnaXN0ZXIsICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MjggICAgICAqLw0KfSBHUElPX1R5cGVEZWY7DQoNCi8qKiANCiAgKiBAYnJpZWYgU3lzVGVtIENvbmZpZ3VyYXRpb24NCiAgKi8NCg0KdHlwZWRlZiBzdHJ1Y3QNCnsNCiAgX19JTyB1aW50MzJfdCBNRU1STVA7ICAgICAgIC8qITwgU1lTQ0ZHIG1lbW9yeSByZW1hcCByZWdpc3RlciwgICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MDAgICAgICAqLw0KICBfX0lPIHVpbnQzMl90IFBNQzsgICAgICAgICAgLyohPCBTWVNDRkcgcGVyaXBoZXJhbCBtb2RlIGNvbmZpZ3VyYXRpb24gcmVnaXN0ZXIsICAgICBBZGRyZXNzIG9mZnNldDogMHgwNCAgICAgICovDQogIF9fSU8gdWludDMyX3QgRVhUSUNSWzRdOyAgICAvKiE8IFNZU0NGRyBleHRlcm5hbCBpbnRlcnJ1cHQgY29uZmlndXJhdGlvbiByZWdpc3RlcnMsIEFkZHJlc3Mgb2Zmc2V0OiAweDA4LTB4MTQgKi8NCn0gU1lTQ0ZHX1R5cGVEZWY7DQoNCi8qKiANCiAgKiBAYnJpZWYgSW50ZXItaW50ZWdyYXRlZCBDaXJjdWl0IEludGVyZmFjZQ0KICAqLw0KDQp0eXBlZGVmIHN0cnVjdA0Kew0KICBfX0lPIHVpbnQzMl90IENSMTsgICAgICAgICAgLyohPCBJMkMgQ29udHJvbCByZWdpc3RlciAxLCAgICAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgwMCAqLw0KICBfX0lPIHVpbnQzMl90IENSMjsgICAgICAgICAgLyohPCBJMkMgQ29udHJvbCByZWdpc3RlciAyLCAgICAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgwNCAqLw0KICBfX0lPIHVpbnQzMl90IE9BUjE7ICAgICAgICAgLyohPCBJMkMgT3duIGFkZHJlc3MgcmVnaXN0ZXIgMSwgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgwOCAqLw0KICBfX0lPIHVpbnQzMl90IE9BUjI7ICAgICAgICAgLyohPCBJMkMgT3duIGFkZHJlc3MgcmVnaXN0ZXIgMiwgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgwQyAqLw0KICBfX0lPIHVpbnQzMl90IERSOyAgICAgICAgICAgLyohPCBJMkMgRGF0YSByZWdpc3RlciwgICAgICAgICAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgxMCAqLw0KICBfX0lPIHVpbnQzMl90IFNSMTsgICAgICAgICAgLyohPCBJMkMgU3RhdHVzIHJlZ2lzdGVyIDEsICAgICAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgxNCAqLw0KICBfX0lPIHVpbnQzMl90IFNSMjsgICAgICAgICAgLyohPCBJMkMgU3RhdHVzIHJlZ2lzdGVyIDIsICAgICAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgxOCAqLw0KICBfX0lPIHVpbnQzMl90IENDUjsgICAgICAgICAgLyohPCBJMkMgQ2xvY2sgY29udHJvbCByZWdpc3RlciwgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgxQyAqLw0KICBfX0lPIHVpbnQzMl90IFRSSVNFOyAgICAgICAgLyohPCBJMkMgVFJJU0UgcmVnaXN0ZXIsICAgICAgICAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgyMCAqLw0KfSBJMkNfVHlwZURlZjsNCg0KLyoqIA0KICAqIEBicmllZiBJbmRlcGVuZGVudCBXQVRDSERPRw0KICAqLw0KDQp0eXBlZGVmIHN0cnVjdA0Kew0KICBfX0lPIHVpbnQzMl90IEtSOyAgICAgICAgICAgLyohPCBLZXkgcmVnaXN0ZXIsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgwMCAqLw0KICBfX0lPIHVpbnQzMl90IFBSOyAgICAgICAgICAgLyohPCBQcmVzY2FsZXIgcmVnaXN0ZXIsICAgICAgICAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgwNCAqLw0KICBfX0lPIHVpbnQzMl90IFJMUjsgICAgICAgICAgLyohPCBSZWxvYWQgcmVnaXN0ZXIsICAgICAgICAgICAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgwOCAqLw0KICBfX0lPIHVpbnQzMl90IFNSOyAgICAgICAgICAgLyohPCBTdGF0dXMgcmVnaXN0ZXIsICAgICAgICAgICAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgwQyAqLw0KfSBJV0RHX1R5cGVEZWY7DQoNCi8qKiANCiAgKiBAYnJpZWYgTENEDQogICovDQoNCnR5cGVkZWYgc3RydWN0DQp7DQogIF9fSU8gdWludDMyX3QgQ1I7ICAgICAgICAvKiE8IExDRCBjb250cm9sIHJlZ2lzdGVyLCAgICAgICAgICAgICAgICAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDAwICovDQogIF9fSU8gdWludDMyX3QgRkNSOyAgICAgICAvKiE8IExDRCBmcmFtZSBjb250cm9sIHJlZ2lzdGVyLCAgICAgICAgICAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDA0ICovDQogIF9fSU8gdWludDMyX3QgU1I7ICAgICAgICAvKiE8IExDRCBzdGF0dXMgcmVnaXN0ZXIsICAgICAgICAgICAgICAgICAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDA4ICovDQogIF9fSU8gdWludDMyX3QgQ0xSOyAgICAgICAvKiE8IExDRCBjbGVhciByZWdpc3RlciwgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDBDICovDQogIHVpbnQzMl90IFJFU0VSVkVEOyAgICAgICAvKiE8IFJlc2VydmVkLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDEwICovDQogIF9fSU8gdWludDMyX3QgUkFNWzE2XTsgICAvKiE8IExDRCBkaXNwbGF5IG1lbW9yeSwgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDE0LTB4NTAgKi8NCn0gTENEX1R5cGVEZWY7DQoNCi8qKiANCiAgKiBAYnJpZWYgUG93ZXIgQ29udHJvbA0KICAqLw0KDQp0eXBlZGVmIHN0cnVjdA0Kew0KICBfX0lPIHVpbnQzMl90IENSOyAgIC8qITwgUFdSIHBvd2VyIGNvbnRyb2wgcmVnaXN0ZXIsICAgICAgICAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgwMCAqLw0KICBfX0lPIHVpbnQzMl90IENTUjsgIC8qITwgUFdSIHBvd2VyIGNvbnRyb2wvc3RhdHVzIHJlZ2lzdGVyLCAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgwNCAqLw0KfSBQV1JfVHlwZURlZjsNCg0KLyoqIA0KICAqIEBicmllZiBSZXNldCBhbmQgQ2xvY2sgQ29udHJvbA0KICAqLw0KDQp0eXBlZGVmIHN0cnVjdA0Kew0KICBfX0lPIHVpbnQzMl90IENSOyAgICAgICAgICAgIC8qITwgUkNDIGNsb2NrIGNvbnRyb2wgcmVnaXN0ZXIsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgwMCAqLw0KICBfX0lPIHVpbnQzMl90IElDU0NSOyAgICAgICAgIC8qITwgUkNDIEludGVybmFsIGNsb2NrIHNvdXJjZXMgY2FsaWJyYXRpb24gcmVnaXN0ZXIsICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgwNCAqLw0KICBfX0lPIHVpbnQzMl90IENGR1I7ICAgICAgICAgIC8qITwgUkNDIENsb2NrIGNvbmZpZ3VyYXRpb24gcmVnaXN0ZXIsICAgICAgICAgICAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgwOCAqLw0KICBfX0lPIHVpbnQzMl90IENJUjsgICAgICAgICAgIC8qITwgUkNDIENsb2NrIGludGVycnVwdCByZWdpc3RlciwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgwQyAqLw0KICBfX0lPIHVpbnQzMl90IEFIQlJTVFI7ICAgICAgIC8qITwgUkNDIEFIQiBwZXJpcGhlcmFsIHJlc2V0IHJlZ2lzdGVyLCAgICAgICAgICAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgxMCAqLw0KICBfX0lPIHVpbnQzMl90IEFQQjJSU1RSOyAgICAgIC8qITwgUkNDIEFQQjIgcGVyaXBoZXJhbCByZXNldCByZWdpc3RlciwgICAgICAgICAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgxNCAqLw0KICBfX0lPIHVpbnQzMl90IEFQQjFSU1RSOyAgICAgIC8qITwgUkNDIEFQQjEgcGVyaXBoZXJhbCByZXNldCByZWdpc3RlciwgICAgICAgICAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgxOCAqLw0KICBfX0lPIHVpbnQzMl90IEFIQkVOUjsgICAgICAgIC8qITwgUkNDIEFIQiBwZXJpcGhlcmFsIGNsb2NrIGVuYWJsZSByZWdpc3RlciwgICAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgxQyAqLw0KICBfX0lPIHVpbnQzMl90IEFQQjJFTlI7ICAgICAgIC8qITwgUkNDIEFQQjIgcGVyaXBoZXJhbCBjbG9jayBlbmFibGUgcmVnaXN0ZXIsICAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgyMCAqLw0KICBfX0lPIHVpbnQzMl90IEFQQjFFTlI7ICAgICAgIC8qITwgUkNDIEFQQjEgcGVyaXBoZXJhbCBjbG9jayBlbmFibGUgcmVnaXN0ZXIsICAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgyNCAqLw0KICBfX0lPIHVpbnQzMl90IEFIQkxQRU5SOyAgICAgIC8qITwgUkNDIEFIQiBwZXJpcGhlcmFsIGNsb2NrIGVuYWJsZSBpbiBsb3cgcG93ZXIgbW9kZSByZWdpc3RlciwgICBBZGRyZXNzIG9mZnNldDogMHgyOCAqLw0KICBfX0lPIHVpbnQzMl90IEFQQjJMUEVOUjsgICAgIC8qITwgUkNDIEFQQjIgcGVyaXBoZXJhbCBjbG9jayBlbmFibGUgaW4gbG93IHBvd2VyIG1vZGUgcmVnaXN0ZXIsICBBZGRyZXNzIG9mZnNldDogMHgyQyAqLw0KICBfX0lPIHVpbnQzMl90IEFQQjFMUEVOUjsgICAgIC8qITwgUkNDIEFQQjEgcGVyaXBoZXJhbCBjbG9jayBlbmFibGUgaW4gbG93IHBvd2VyIG1vZGUgcmVnaXN0ZXIsICBBZGRyZXNzIG9mZnNldDogMHgzMCAqLw0KICBfX0lPIHVpbnQzMl90IENTUjsgICAgICAgICAgIC8qITwgUkNDIENvbnRyb2wvc3RhdHVzIHJlZ2lzdGVyLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgzNCAqLw0KfSBSQ0NfVHlwZURlZjsNCg0KLyoqIA0KICAqIEBicmllZiBSb3V0aW5nIEludGVyZmFjZSANCiAgKi8NCg0KdHlwZWRlZiBzdHJ1Y3QNCnsNCiAgX19JTyB1aW50MzJfdCBJQ1I7ICAgICAgICAvKiE8IFJJIGlucHV0IGNhcHR1cmUgcmVnaXN0ZXIsICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MDAgKi8NCiAgX19JTyB1aW50MzJfdCBBU0NSMTsgICAgICAvKiE8IFJJIGFuYWxvZyBzd2l0Y2hlcyBjb250cm9sIHJlZ2lzdGVyLCAgICAgICBBZGRyZXNzIG9mZnNldDogMHgwNCAqLw0KICBfX0lPIHVpbnQzMl90IEFTQ1IyOyAgICAgIC8qITwgUkkgYW5hbG9nIHN3aXRjaCBjb250cm9sIHJlZ2lzdGVyIDIsICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgwOCAqLw0KICBfX0lPIHVpbnQzMl90IEhZU0NSMTsgICAgIC8qITwgUkkgaHlzdGVyZXNpcyBjb250cm9sIHJlZ2lzdGVyLCAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgwQyAqLw0KICBfX0lPIHVpbnQzMl90IEhZU0NSMjsgICAgIC8qITwgUkkgSHlzdGVyZXNpcyBjb250cm9sIHJlZ2lzdGVyLCAgICAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDEwICovDQogIF9fSU8gdWludDMyX3QgSFlTQ1IzOyAgICAgLyohPCBSSSBIeXN0ZXJlc2lzIGNvbnRyb2wgcmVnaXN0ZXIsICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MTQgKi8NCiAgX19JTyB1aW50MzJfdCBIWVNDUjQ7ICAgICAvKiE8IFJJIEh5c3RlcmVzaXMgY29udHJvbCByZWdpc3RlciwgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgxOCAqLw0KICBfX0lPIHVpbnQzMl90IEFTTVIxOyAgICAgIC8qITwgUkkgQW5hbG9nIHN3aXRjaCBtb2RlIHJlZ2lzdGVyIDEsICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MUMgKi8NCiAgX19JTyB1aW50MzJfdCBDTVIxOyAgICAgICAvKiE8IFJJIENoYW5uZWwgbWFzayByZWdpc3RlciAxLCAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgyMCAqLw0KICBfX0lPIHVpbnQzMl90IENJQ1IxOyAgICAgIC8qITwgUkkgQ2hhbm5lbCBJZGVuIGZvciBjYXB0dXJlIHJlZ2lzdGVyIDEsICBBZGRyZXNzIG9mZnNldDogMHgyNCAqLw0KICBfX0lPIHVpbnQzMl90IEFTTVIyOyAgICAgIC8qITwgUkkgQW5hbG9nIHN3aXRjaCBtb2RlIHJlZ2lzdGVyIDIsICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MjggKi8NCiAgX19JTyB1aW50MzJfdCBDTVIyOyAgICAgICAvKiE8IFJJIENoYW5uZWwgbWFzayByZWdpc3RlciAyLCAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgyQyAqLw0KICBfX0lPIHVpbnQzMl90IENJQ1IyOyAgICAgIC8qITwgUkkgQ2hhbm5lbCBJZGVuIGZvciBjYXB0dXJlIHJlZ2lzdGVyIDIsICBBZGRyZXNzIG9mZnNldDogMHgzMCAqLw0KICBfX0lPIHVpbnQzMl90IEFTTVIzOyAgICAgIC8qITwgUkkgQW5hbG9nIHN3aXRjaCBtb2RlIHJlZ2lzdGVyIDMsICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MzQgKi8NCiAgX19JTyB1aW50MzJfdCBDTVIzOyAgICAgICAvKiE8IFJJIENoYW5uZWwgbWFzayByZWdpc3RlciAzLCAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgzOCAqLw0KICBfX0lPIHVpbnQzMl90IENJQ1IzOyAgICAgIC8qITwgUkkgQ2hhbm5lbCBJZGVuIGZvciBjYXB0dXJlIHJlZ2lzdGVyIDMsICBBZGRyZXNzIG9mZnNldDogMHgzQyAqLw0KICBfX0lPIHVpbnQzMl90IEFTTVI0OyAgICAgIC8qITwgUkkgQW5hbG9nIHN3aXRjaCBtb2RlIHJlZ2lzdGVyIDQsICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4NDAgKi8NCiAgX19JTyB1aW50MzJfdCBDTVI0OyAgICAgICAvKiE8IFJJIENoYW5uZWwgbWFzayByZWdpc3RlciA0LCAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHg0NCAqLw0KICBfX0lPIHVpbnQzMl90IENJQ1I0OyAgICAgIC8qITwgUkkgQ2hhbm5lbCBJZGVuIGZvciBjYXB0dXJlIHJlZ2lzdGVyIDQsICBBZGRyZXNzIG9mZnNldDogMHg0OCAqLw0KICBfX0lPIHVpbnQzMl90IEFTTVI1OyAgICAgIC8qITwgUkkgQW5hbG9nIHN3aXRjaCBtb2RlIHJlZ2lzdGVyIDUsICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4NEMgKi8NCiAgX19JTyB1aW50MzJfdCBDTVI1OyAgICAgICAvKiE8IFJJIENoYW5uZWwgbWFzayByZWdpc3RlciA1LCAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHg1MCAqLw0KICBfX0lPIHVpbnQzMl90IENJQ1I1OyAgICAgIC8qITwgUkkgQ2hhbm5lbCBJZGVuIGZvciBjYXB0dXJlIHJlZ2lzdGVyIDUsICBBZGRyZXNzIG9mZnNldDogMHg1NCAqLw0KfSBSSV9UeXBlRGVmOw0KDQovKiogDQogICogQGJyaWVmIFJlYWwtVGltZSBDbG9jaw0KICAqLw0KdHlwZWRlZiBzdHJ1Y3QNCnsNCiAgX19JTyB1aW50MzJfdCBUUjsgICAgICAgICAvKiE8IFJUQyB0aW1lIHJlZ2lzdGVyLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MDAgKi8NCiAgX19JTyB1aW50MzJfdCBEUjsgICAgICAgICAvKiE8IFJUQyBkYXRlIHJlZ2lzdGVyLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MDQgKi8NCiAgX19JTyB1aW50MzJfdCBDUjsgICAgICAgICAvKiE8IFJUQyBjb250cm9sIHJlZ2lzdGVyLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MDggKi8gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KICBfX0lPIHVpbnQzMl90IElTUjsgICAgICAgIC8qITwgUlRDIGluaXRpYWxpemF0aW9uIGFuZCBzdGF0dXMgcmVnaXN0ZXIsICAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgwQyAqLw0KICBfX0lPIHVpbnQzMl90IFBSRVI7ICAgICAgIC8qITwgUlRDIHByZXNjYWxlciByZWdpc3RlciwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgxMCAqLw0KICBfX0lPIHVpbnQzMl90IFdVVFI7ICAgICAgIC8qITwgUlRDIHdha2V1cCB0aW1lciByZWdpc3RlciwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgxNCAqLw0KICBfX0lPIHVpbnQzMl90IENBTElCUjsgICAgIC8qITwgUlRDIGNhbGlicmF0aW9uIHJlZ2lzdGVyLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgxOCAqLw0KICBfX0lPIHVpbnQzMl90IEFMUk1BUjsgICAgIC8qITwgUlRDIGFsYXJtIEEgcmVnaXN0ZXIsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgxQyAqLw0KICBfX0lPIHVpbnQzMl90IEFMUk1CUjsgICAgIC8qITwgUlRDIGFsYXJtIEIgcmVnaXN0ZXIsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgyMCAqLw0KICBfX0lPIHVpbnQzMl90IFdQUjsgICAgICAgIC8qITwgUlRDIHdyaXRlIHByb3RlY3Rpb24gcmVnaXN0ZXIsICAgICAgICAgICAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgyNCAqLw0KICBfX0lPIHVpbnQzMl90IFNTUjsgICAgICAgIC8qITwgUlRDIHN1YiBzZWNvbmQgcmVnaXN0ZXIsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgyOCAqLw0KICBfX0lPIHVpbnQzMl90IFNISUZUUjsgICAgIC8qITwgUlRDIHNoaWZ0IGNvbnRyb2wgcmVnaXN0ZXIsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgyQyAqLw0KICBfX0lPIHVpbnQzMl90IFRTVFI7ICAgICAgIC8qITwgUlRDIHRpbWUgc3RhbXAgdGltZSByZWdpc3RlciwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgzMCAqLw0KICBfX0lPIHVpbnQzMl90IFRTRFI7ICAgICAgIC8qITwgUlRDIHRpbWUgc3RhbXAgZGF0ZSByZWdpc3RlciwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgzNCAqLw0KICBfX0lPIHVpbnQzMl90IFRTU1NSOyAgICAgIC8qITwgUlRDIHRpbWUtc3RhbXAgc3ViIHNlY29uZCByZWdpc3RlciwgICAgICAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgzOCAqLw0KICBfX0lPIHVpbnQzMl90IENBTFI7ICAgICAgIC8qITwgUlJUQyBjYWxpYnJhdGlvbiByZWdpc3RlciwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgzQyAqLw0KICBfX0lPIHVpbnQzMl90IFRBRkNSOyAgICAgIC8qITwgUlRDIHRhbXBlciBhbmQgYWx0ZXJuYXRlIGZ1bmN0aW9uIGNvbmZpZ3VyYXRpb24gcmVnaXN0ZXIsICBBZGRyZXNzIG9mZnNldDogMHg0MCAqLw0KICBfX0lPIHVpbnQzMl90IEFMUk1BU1NSOyAgIC8qITwgUlRDIGFsYXJtIEEgc3ViIHNlY29uZCByZWdpc3RlciwgICAgICAgICAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHg0NCAqLw0KICBfX0lPIHVpbnQzMl90IEFMUk1CU1NSOyAgIC8qITwgUlRDIGFsYXJtIEIgc3ViIHNlY29uZCByZWdpc3RlciwgICAgICAgICAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHg0OCAqLw0KICB1aW50MzJfdCBSRVNFUlZFRDc7ICAgICAgIC8qITwgUmVzZXJ2ZWQsIDB4NEMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLw0KICBfX0lPIHVpbnQzMl90IEJLUDBSOyAgICAgIC8qITwgUlRDIGJhY2t1cCByZWdpc3RlciAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHg1MCAqLw0KICBfX0lPIHVpbnQzMl90IEJLUDFSOyAgICAgIC8qITwgUlRDIGJhY2t1cCByZWdpc3RlciAxLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHg1NCAqLw0KICBfX0lPIHVpbnQzMl90IEJLUDJSOyAgICAgIC8qITwgUlRDIGJhY2t1cCByZWdpc3RlciAyLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHg1OCAqLw0KICBfX0lPIHVpbnQzMl90IEJLUDNSOyAgICAgIC8qITwgUlRDIGJhY2t1cCByZWdpc3RlciAzLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHg1QyAqLw0KICBfX0lPIHVpbnQzMl90IEJLUDRSOyAgICAgIC8qITwgUlRDIGJhY2t1cCByZWdpc3RlciA0LCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHg2MCAqLw0KICBfX0lPIHVpbnQzMl90IEJLUDVSOyAgICAgIC8qITwgUlRDIGJhY2t1cCByZWdpc3RlciA1LCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHg2NCAqLw0KICBfX0lPIHVpbnQzMl90IEJLUDZSOyAgICAgIC8qITwgUlRDIGJhY2t1cCByZWdpc3RlciA2LCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHg2OCAqLw0KICBfX0lPIHVpbnQzMl90IEJLUDdSOyAgICAgIC8qITwgUlRDIGJhY2t1cCByZWdpc3RlciA3LCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHg2QyAqLw0KICBfX0lPIHVpbnQzMl90IEJLUDhSOyAgICAgIC8qITwgUlRDIGJhY2t1cCByZWdpc3RlciA4LCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHg3MCAqLw0KICBfX0lPIHVpbnQzMl90IEJLUDlSOyAgICAgIC8qITwgUlRDIGJhY2t1cCByZWdpc3RlciA5LCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHg3NCAqLw0KICBfX0lPIHVpbnQzMl90IEJLUDEwUjsgICAgIC8qITwgUlRDIGJhY2t1cCByZWdpc3RlciAxMCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHg3OCAqLw0KICBfX0lPIHVpbnQzMl90IEJLUDExUjsgICAgIC8qITwgUlRDIGJhY2t1cCByZWdpc3RlciAxMSwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHg3QyAqLw0KICBfX0lPIHVpbnQzMl90IEJLUDEyUjsgICAgIC8qITwgUlRDIGJhY2t1cCByZWdpc3RlciAxMiwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHg4MCAqLw0KICBfX0lPIHVpbnQzMl90IEJLUDEzUjsgICAgIC8qITwgUlRDIGJhY2t1cCByZWdpc3RlciAxMywgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHg4NCAqLw0KICBfX0lPIHVpbnQzMl90IEJLUDE0UjsgICAgIC8qITwgUlRDIGJhY2t1cCByZWdpc3RlciAxNCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHg4OCAqLw0KICBfX0lPIHVpbnQzMl90IEJLUDE1UjsgICAgIC8qITwgUlRDIGJhY2t1cCByZWdpc3RlciAxNSwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHg4QyAqLw0KICBfX0lPIHVpbnQzMl90IEJLUDE2UjsgICAgIC8qITwgUlRDIGJhY2t1cCByZWdpc3RlciAxNiwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHg5MCAqLw0KICBfX0lPIHVpbnQzMl90IEJLUDE3UjsgICAgIC8qITwgUlRDIGJhY2t1cCByZWdpc3RlciAxNywgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHg5NCAqLw0KICBfX0lPIHVpbnQzMl90IEJLUDE4UjsgICAgIC8qITwgUlRDIGJhY2t1cCByZWdpc3RlciAxOCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHg5OCAqLw0KICBfX0lPIHVpbnQzMl90IEJLUDE5UjsgICAgIC8qITwgUlRDIGJhY2t1cCByZWdpc3RlciAxOSwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHg5QyAqLw0KICBfX0lPIHVpbnQzMl90IEJLUDIwUjsgICAgIC8qITwgUlRDIGJhY2t1cCByZWdpc3RlciAyMCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHhBMCAqLw0KICBfX0lPIHVpbnQzMl90IEJLUDIxUjsgICAgIC8qITwgUlRDIGJhY2t1cCByZWdpc3RlciAyMSwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHhBNCAqLw0KICBfX0lPIHVpbnQzMl90IEJLUDIyUjsgICAgIC8qITwgUlRDIGJhY2t1cCByZWdpc3RlciAyMiwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHhBOCAqLw0KICBfX0lPIHVpbnQzMl90IEJLUDIzUjsgICAgIC8qITwgUlRDIGJhY2t1cCByZWdpc3RlciAyMywgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHhBQyAqLw0KICBfX0lPIHVpbnQzMl90IEJLUDI0UjsgICAgIC8qITwgUlRDIGJhY2t1cCByZWdpc3RlciAyNCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHhCMCAqLw0KICBfX0lPIHVpbnQzMl90IEJLUDI1UjsgICAgIC8qITwgUlRDIGJhY2t1cCByZWdpc3RlciAyNSwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHhCNCAqLw0KICBfX0lPIHVpbnQzMl90IEJLUDI2UjsgICAgIC8qITwgUlRDIGJhY2t1cCByZWdpc3RlciAyNiwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHhCOCAqLw0KICBfX0lPIHVpbnQzMl90IEJLUDI3UjsgICAgIC8qITwgUlRDIGJhY2t1cCByZWdpc3RlciAyNywgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHhCQyAqLw0KICBfX0lPIHVpbnQzMl90IEJLUDI4UjsgICAgIC8qITwgUlRDIGJhY2t1cCByZWdpc3RlciAyOCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHhDMCAqLw0KICBfX0lPIHVpbnQzMl90IEJLUDI5UjsgICAgIC8qITwgUlRDIGJhY2t1cCByZWdpc3RlciAyOSwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHhDNCAqLw0KICBfX0lPIHVpbnQzMl90IEJLUDMwUjsgICAgIC8qITwgUlRDIGJhY2t1cCByZWdpc3RlciAzMCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHhDOCAqLw0KICBfX0lPIHVpbnQzMl90IEJLUDMxUjsgICAgIC8qITwgUlRDIGJhY2t1cCByZWdpc3RlciAzMSwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHhDQyAqLw0KfSBSVENfVHlwZURlZjsNCg0KLyoqIA0KICAqIEBicmllZiBTZXJpYWwgUGVyaXBoZXJhbCBJbnRlcmZhY2UNCiAgKi8NCg0KdHlwZWRlZiBzdHJ1Y3QNCnsNCiAgX19JTyB1aW50MzJfdCBDUjE7ICAgICAgICAvKiE8IFNQSSBDb250cm9sIHJlZ2lzdGVyIDEgKG5vdCB1c2VkIGluIEkyUyBtb2RlKSwgICAgICBBZGRyZXNzIG9mZnNldDogMHgwMCAqLw0KICBfX0lPIHVpbnQzMl90IENSMjsgICAgICAgIC8qITwgU1BJIENvbnRyb2wgcmVnaXN0ZXIgMiwgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDA0ICovDQogIF9fSU8gdWludDMyX3QgU1I7ICAgICAgICAgLyohPCBTUEkgU3RhdHVzIHJlZ2lzdGVyLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MDggKi8NCiAgX19JTyB1aW50MzJfdCBEUjsgICAgICAgICAvKiE8IFNQSSBkYXRhIHJlZ2lzdGVyLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgwQyAqLw0KICBfX0lPIHVpbnQzMl90IENSQ1BSOyAgICAgIC8qITwgU1BJIENSQyBwb2x5bm9taWFsIHJlZ2lzdGVyIChub3QgdXNlZCBpbiBJMlMgbW9kZSksIEFkZHJlc3Mgb2Zmc2V0OiAweDEwICovDQogIF9fSU8gdWludDMyX3QgUlhDUkNSOyAgICAgLyohPCBTUEkgUnggQ1JDIHJlZ2lzdGVyIChub3QgdXNlZCBpbiBJMlMgbW9kZSksICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MTQgKi8NCiAgX19JTyB1aW50MzJfdCBUWENSQ1I7ICAgICAvKiE8IFNQSSBUeCBDUkMgcmVnaXN0ZXIgKG5vdCB1c2VkIGluIEkyUyBtb2RlKSwgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgxOCAqLw0KICBfX0lPIHVpbnQzMl90IEkyU0NGR1I7ICAgIC8qITwgU1BJX0kyUyBjb25maWd1cmF0aW9uIHJlZ2lzdGVyLCAgICAgICAgICAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDFDICovDQogIF9fSU8gdWludDMyX3QgSTJTUFI7ICAgICAgLyohPCBTUElfSTJTIHByZXNjYWxlciByZWdpc3RlciwgICAgICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MjAgKi8NCn0gU1BJX1R5cGVEZWY7DQoNCi8qKiANCiAgKiBAYnJpZWYgVElNDQogICovDQp0eXBlZGVmIHN0cnVjdA0Kew0KICBfX0lPIHVpbnQzMl90IENSMTsgICAgICAgICAgLyohPCBUSU0gY29udHJvbCByZWdpc3RlciAxLCAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MDAgKi8NCiAgX19JTyB1aW50MzJfdCBDUjI7ICAgICAgICAgIC8qITwgVElNIGNvbnRyb2wgcmVnaXN0ZXIgMiwgICAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDA0ICovDQogIF9fSU8gdWludDMyX3QgU01DUjsgICAgICAgICAvKiE8IFRJTSBzbGF2ZSBNb2RlIENvbnRyb2wgcmVnaXN0ZXIsICAgICBBZGRyZXNzIG9mZnNldDogMHgwOCAqLw0KICBfX0lPIHVpbnQzMl90IERJRVI7ICAgICAgICAgLyohPCBUSU0gRE1BL2ludGVycnVwdCBlbmFibGUgcmVnaXN0ZXIsICAgQWRkcmVzcyBvZmZzZXQ6IDB4MEMgKi8NCiAgX19JTyB1aW50MzJfdCBTUjsgICAgICAgICAgIC8qITwgVElNIHN0YXR1cyByZWdpc3RlciwgICAgICAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDEwICovDQogIF9fSU8gdWludDMyX3QgRUdSOyAgICAgICAgICAvKiE8IFRJTSBldmVudCBnZW5lcmF0aW9uIHJlZ2lzdGVyLCAgICAgICBBZGRyZXNzIG9mZnNldDogMHgxNCAqLw0KICBfX0lPIHVpbnQzMl90IENDTVIxOyAgICAgICAgLyohPCBUSU0gY2FwdHVyZS9jb21wYXJlIG1vZGUgcmVnaXN0ZXIgMSwgQWRkcmVzcyBvZmZzZXQ6IDB4MTggKi8NCiAgX19JTyB1aW50MzJfdCBDQ01SMjsgICAgICAgIC8qITwgVElNIGNhcHR1cmUvY29tcGFyZSBtb2RlIHJlZ2lzdGVyIDIsIEFkZHJlc3Mgb2Zmc2V0OiAweDFDICovDQogIF9fSU8gdWludDMyX3QgQ0NFUjsgICAgICAgICAvKiE8IFRJTSBjYXB0dXJlL2NvbXBhcmUgZW5hYmxlIHJlZ2lzdGVyLCBBZGRyZXNzIG9mZnNldDogMHgyMCAqLw0KICBfX0lPIHVpbnQzMl90IENOVDsgICAgICAgICAgLyohPCBUSU0gY291bnRlciByZWdpc3RlciwgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MjQgKi8NCiAgX19JTyB1aW50MzJfdCBQU0M7ICAgICAgICAgIC8qITwgVElNIHByZXNjYWxlciByZWdpc3RlciwgICAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDI4ICovDQogIF9fSU8gdWludDMyX3QgQVJSOyAgICAgICAgICAvKiE8IFRJTSBhdXRvLXJlbG9hZCByZWdpc3RlciwgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgyQyAqLw0KICB1aW50MzJfdCAgICAgIFJFU0VSVkVEMTI7ICAgLyohPCBSZXNlcnZlZCwgMHgzMCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8gICAgDQogIF9fSU8gdWludDMyX3QgQ0NSMTsgICAgICAgICAvKiE8IFRJTSBjYXB0dXJlL2NvbXBhcmUgcmVnaXN0ZXIgMSwgICAgICBBZGRyZXNzIG9mZnNldDogMHgzNCAqLyAgICANCiAgX19JTyB1aW50MzJfdCBDQ1IyOyAgICAgICAgIC8qITwgVElNIGNhcHR1cmUvY29tcGFyZSByZWdpc3RlciAyLCAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDM4ICovICAgIA0KICBfX0lPIHVpbnQzMl90IENDUjM7ICAgICAgICAgLyohPCBUSU0gY2FwdHVyZS9jb21wYXJlIHJlZ2lzdGVyIDMsICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4M0MgKi8NCiAgX19JTyB1aW50MzJfdCBDQ1I0OyAgICAgICAgIC8qITwgVElNIGNhcHR1cmUvY29tcGFyZSByZWdpc3RlciA0LCAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDQwICovDQogIHVpbnQzMl90ICAgICAgUkVTRVJWRUQxNzsgICAvKiE8IFJlc2VydmVkLCAweDQ0ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLyANCiAgX19JTyB1aW50MzJfdCBEQ1I7ICAgICAgICAgIC8qITwgVElNIERNQSBjb250cm9sIHJlZ2lzdGVyLCAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDQ4ICovDQogIF9fSU8gdWludDMyX3QgRE1BUjsgICAgICAgICAvKiE8IFRJTSBETUEgYWRkcmVzcyBmb3IgZnVsbCB0cmFuc2ZlciwgICBBZGRyZXNzIG9mZnNldDogMHg0QyAqLw0KICBfX0lPIHVpbnQzMl90IE9SOyAgICAgICAgICAgLyohPCBUSU0gb3B0aW9uIHJlZ2lzdGVyLCAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4NTAgKi8NCn0gVElNX1R5cGVEZWY7DQovKiogDQogICogQGJyaWVmIFVuaXZlcnNhbCBTeW5jaHJvbm91cyBBc3luY2hyb25vdXMgUmVjZWl2ZXIgVHJhbnNtaXR0ZXINCiAgKi8NCiANCnR5cGVkZWYgc3RydWN0DQp7DQogIF9fSU8gdWludDMyX3QgU1I7ICAgICAgICAgLyohPCBVU0FSVCBTdGF0dXMgcmVnaXN0ZXIsICAgICAgICAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDAwICovDQogIF9fSU8gdWludDMyX3QgRFI7ICAgICAgICAgLyohPCBVU0FSVCBEYXRhIHJlZ2lzdGVyLCAgICAgICAgICAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDA0ICovDQogIF9fSU8gdWludDMyX3QgQlJSOyAgICAgICAgLyohPCBVU0FSVCBCYXVkIHJhdGUgcmVnaXN0ZXIsICAgICAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDA4ICovDQogIF9fSU8gdWludDMyX3QgQ1IxOyAgICAgICAgLyohPCBVU0FSVCBDb250cm9sIHJlZ2lzdGVyIDEsICAgICAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDBDICovDQogIF9fSU8gdWludDMyX3QgQ1IyOyAgICAgICAgLyohPCBVU0FSVCBDb250cm9sIHJlZ2lzdGVyIDIsICAgICAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDEwICovDQogIF9fSU8gdWludDMyX3QgQ1IzOyAgICAgICAgLyohPCBVU0FSVCBDb250cm9sIHJlZ2lzdGVyIDMsICAgICAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDE0ICovDQogIF9fSU8gdWludDMyX3QgR1RQUjsgICAgICAgLyohPCBVU0FSVCBHdWFyZCB0aW1lIGFuZCBwcmVzY2FsZXIgcmVnaXN0ZXIsIEFkZHJlc3Mgb2Zmc2V0OiAweDE4ICovDQp9IFVTQVJUX1R5cGVEZWY7DQoNCi8qKiANCiAgKiBAYnJpZWYgVW5pdmVyc2FsIFNlcmlhbCBCdXMgRnVsbCBTcGVlZCBEZXZpY2UNCiAgKi8NCiAgDQp0eXBlZGVmIHN0cnVjdA0Kew0KICBfX0lPIHVpbnQxNl90IEVQMFI7ICAgICAgICAgICAgLyohPCBVU0IgRW5kcG9pbnQgMCByZWdpc3RlciwgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MDAgKi8gDQogIF9fSU8gdWludDE2X3QgUkVTRVJWRUQwOyAgICAgICAvKiE8IFJlc2VydmVkICovICAgICANCiAgX19JTyB1aW50MTZfdCBFUDFSOyAgICAgICAgICAgIC8qITwgVVNCIEVuZHBvaW50IDEgcmVnaXN0ZXIsICAgICAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDA0ICovDQogIF9fSU8gdWludDE2X3QgUkVTRVJWRUQxOyAgICAgICAvKiE8IFJlc2VydmVkICovICAgICAgIA0KICBfX0lPIHVpbnQxNl90IEVQMlI7ICAgICAgICAgICAgLyohPCBVU0IgRW5kcG9pbnQgMiByZWdpc3RlciwgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MDggKi8NCiAgX19JTyB1aW50MTZfdCBSRVNFUlZFRDI7ICAgICAgIC8qITwgUmVzZXJ2ZWQgKi8gICAgICAgDQogIF9fSU8gdWludDE2X3QgRVAzUjsgICAgICAgICAgICAvKiE8IFVTQiBFbmRwb2ludCAzIHJlZ2lzdGVyLCAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgwQyAqLyANCiAgX19JTyB1aW50MTZfdCBSRVNFUlZFRDM7ICAgICAgIC8qITwgUmVzZXJ2ZWQgKi8gICAgICAgDQogIF9fSU8gdWludDE2X3QgRVA0UjsgICAgICAgICAgICAvKiE8IFVTQiBFbmRwb2ludCA0IHJlZ2lzdGVyLCAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgxMCAqLw0KICBfX0lPIHVpbnQxNl90IFJFU0VSVkVENDsgICAgICAgLyohPCBSZXNlcnZlZCAqLyAgICAgICANCiAgX19JTyB1aW50MTZfdCBFUDVSOyAgICAgICAgICAgIC8qITwgVVNCIEVuZHBvaW50IDUgcmVnaXN0ZXIsICAgICAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDE0ICovDQogIF9fSU8gdWludDE2X3QgUkVTRVJWRUQ1OyAgICAgICAvKiE8IFJlc2VydmVkICovICAgICAgIA0KICBfX0lPIHVpbnQxNl90IEVQNlI7ICAgICAgICAgICAgLyohPCBVU0IgRW5kcG9pbnQgNiByZWdpc3RlciwgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MTggKi8NCiAgX19JTyB1aW50MTZfdCBSRVNFUlZFRDY7ICAgICAgIC8qITwgUmVzZXJ2ZWQgKi8gICAgICAgDQogIF9fSU8gdWludDE2X3QgRVA3UjsgICAgICAgICAgICAvKiE8IFVTQiBFbmRwb2ludCA3IHJlZ2lzdGVyLCAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgxQyAqLw0KICBfX0lPIHVpbnQxNl90IFJFU0VSVkVEN1sxN107ICAgLyohPCBSZXNlcnZlZCAqLyAgICAgDQogIF9fSU8gdWludDE2X3QgQ05UUjsgICAgICAgICAgICAvKiE8IENvbnRyb2wgcmVnaXN0ZXIsICAgICAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHg0MCAqLw0KICBfX0lPIHVpbnQxNl90IFJFU0VSVkVEODsgICAgICAgLyohPCBSZXNlcnZlZCAqLyAgICAgICANCiAgX19JTyB1aW50MTZfdCBJU1RSOyAgICAgICAgICAgIC8qITwgSW50ZXJydXB0IHN0YXR1cyByZWdpc3RlciwgICAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDQ0ICovDQogIF9fSU8gdWludDE2X3QgUkVTRVJWRUQ5OyAgICAgICAvKiE8IFJlc2VydmVkICovICAgICAgIA0KICBfX0lPIHVpbnQxNl90IEZOUjsgICAgICAgICAgICAgLyohPCBGcmFtZSBudW1iZXIgcmVnaXN0ZXIsICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4NDggKi8NCiAgX19JTyB1aW50MTZfdCBSRVNFUlZFREE7ICAgICAgIC8qITwgUmVzZXJ2ZWQgKi8gICAgICAgDQogIF9fSU8gdWludDE2X3QgREFERFI7ICAgICAgICAgICAvKiE8IERldmljZSBhZGRyZXNzIHJlZ2lzdGVyLCAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHg0QyAqLw0KICBfX0lPIHVpbnQxNl90IFJFU0VSVkVEQjsgICAgICAgLyohPCBSZXNlcnZlZCAqLyAgICAgICANCiAgX19JTyB1aW50MTZfdCBCVEFCTEU7ICAgICAgICAgIC8qITwgQnVmZmVyIFRhYmxlIGFkZHJlc3MgcmVnaXN0ZXIsICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDUwICovDQogIF9fSU8gdWludDE2X3QgUkVTRVJWRURDOyAgICAgICAvKiE8IFJlc2VydmVkICovICAgICAgIA0KfSBVU0JfVHlwZURlZjsNCg0KLyoqIA0KICAqIEBicmllZiBXaW5kb3cgV0FUQ0hET0cNCiAgKi8NCnR5cGVkZWYgc3RydWN0DQp7DQogIF9fSU8gdWludDMyX3QgQ1I7ICAgLyohPCBXV0RHIENvbnRyb2wgcmVnaXN0ZXIsICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDAwICovDQogIF9fSU8gdWludDMyX3QgQ0ZSOyAgLyohPCBXV0RHIENvbmZpZ3VyYXRpb24gcmVnaXN0ZXIsIEFkZHJlc3Mgb2Zmc2V0OiAweDA0ICovDQogIF9fSU8gdWludDMyX3QgU1I7ICAgLyohPCBXV0RHIFN0YXR1cyByZWdpc3RlciwgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDA4ICovDQp9IFdXREdfVHlwZURlZjsNCg0KLyoqIA0KICAqIEBicmllZiBVbml2ZXJzYWwgU2VyaWFsIEJ1cyBGdWxsIFNwZWVkIERldmljZQ0KICAqLw0KLyoqIA0KICAqIEB9DQogICovDQogIA0KLyoqIEBhZGR0b2dyb3VwIFBlcmlwaGVyYWxfbWVtb3J5X21hcA0KICAqIEB7DQogICovDQoNCiNkZWZpbmUgRkxBU0hfQkFTRSAgICAgICAgICAgICgodWludDMyX3QpMHgwODAwMDAwMFUpICAgICAgICAgICAgICAvKiE8IEZMQVNIIGJhc2UgYWRkcmVzcyBpbiB0aGUgYWxpYXMgcmVnaW9uICovDQojZGVmaW5lIEZMQVNIX0VFUFJPTV9CQVNFICAgICAoKHVpbnQzMl90KShGTEFTSF9CQVNFICsgMHg4MDAwMFUpKSAgLyohPCBGTEFTSCBFRVBST00gYmFzZSBhZGRyZXNzIGluIHRoZSBhbGlhcyByZWdpb24gKi8NCiNkZWZpbmUgU1JBTV9CQVNFICAgICAgICAgICAgICgodWludDMyX3QpMHgyMDAwMDAwMFUpICAgICAgICAgICAgICAvKiE8IFNSQU0gYmFzZSBhZGRyZXNzIGluIHRoZSBhbGlhcyByZWdpb24gKi8NCiNkZWZpbmUgUEVSSVBIX0JBU0UgICAgICAgICAgICgodWludDMyX3QpMHg0MDAwMDAwMFUpICAgICAgICAgICAgICAvKiE8IFBlcmlwaGVyYWwgYmFzZSBhZGRyZXNzIGluIHRoZSBhbGlhcyByZWdpb24gKi8NCiNkZWZpbmUgU1JBTV9CQl9CQVNFICAgICAgICAgICgodWludDMyX3QpMHgyMjAwMDAwMFUpICAgICAgICAgICAgICAvKiE8IFNSQU0gYmFzZSBhZGRyZXNzIGluIHRoZSBiaXQtYmFuZCByZWdpb24gKi8NCiNkZWZpbmUgUEVSSVBIX0JCX0JBU0UgICAgICAgICgodWludDMyX3QpMHg0MjAwMDAwMFUpICAgICAgICAgICAgICAvKiE8IFBlcmlwaGVyYWwgYmFzZSBhZGRyZXNzIGluIHRoZSBiaXQtYmFuZCByZWdpb24gKi8NCiNkZWZpbmUgRkxBU0hfRU5EICAgICAgICAgICAgICgodWludDMyX3QpMHgwODAzRkZGRlUpICAgICAgICAgICAgICAvKiE8IFByb2dyYW0gZW5kIEZMQVNIIGFkZHJlc3MgZm9yIENhdDMgKi8NCiNkZWZpbmUgRkxBU0hfRUVQUk9NX0VORCAgICAgICgodWludDMyX3QpMHgwODA4MUZGRlUpICAgICAgICAgICAgICAvKiE8IEZMQVNIIEVFUFJPTSBlbmQgYWRkcmVzcyAoOEtCKSAqLw0KDQovKiE8IFBlcmlwaGVyYWwgbWVtb3J5IG1hcCAqLw0KI2RlZmluZSBBUEIxUEVSSVBIX0JBU0UgICAgICAgUEVSSVBIX0JBU0UNCiNkZWZpbmUgQVBCMlBFUklQSF9CQVNFICAgICAgIChQRVJJUEhfQkFTRSArIDB4MDAwMTAwMDBVKQ0KI2RlZmluZSBBSEJQRVJJUEhfQkFTRSAgICAgICAgKFBFUklQSF9CQVNFICsgMHgwMDAyMDAwMFUpDQoNCi8qITwgQVBCMSBwZXJpcGhlcmFscyAqLw0KI2RlZmluZSBUSU0yX0JBU0UgICAgICAgICAgICAgKEFQQjFQRVJJUEhfQkFTRSArIDB4MDAwMDAwMDBVKQ0KI2RlZmluZSBUSU0zX0JBU0UgICAgICAgICAgICAgKEFQQjFQRVJJUEhfQkFTRSArIDB4MDAwMDA0MDBVKQ0KI2RlZmluZSBUSU00X0JBU0UgICAgICAgICAgICAgKEFQQjFQRVJJUEhfQkFTRSArIDB4MDAwMDA4MDBVKQ0KI2RlZmluZSBUSU01X0JBU0UgICAgICAgICAgICAgKEFQQjFQRVJJUEhfQkFTRSArIDB4MDAwMDBDMDBVKQ0KI2RlZmluZSBUSU02X0JBU0UgICAgICAgICAgICAgKEFQQjFQRVJJUEhfQkFTRSArIDB4MDAwMDEwMDBVKQ0KI2RlZmluZSBUSU03X0JBU0UgICAgICAgICAgICAgKEFQQjFQRVJJUEhfQkFTRSArIDB4MDAwMDE0MDBVKQ0KI2RlZmluZSBMQ0RfQkFTRSAgICAgICAgICAgICAgKEFQQjFQRVJJUEhfQkFTRSArIDB4MDAwMDI0MDBVKQ0KI2RlZmluZSBSVENfQkFTRSAgICAgICAgICAgICAgKEFQQjFQRVJJUEhfQkFTRSArIDB4MDAwMDI4MDBVKQ0KI2RlZmluZSBXV0RHX0JBU0UgICAgICAgICAgICAgKEFQQjFQRVJJUEhfQkFTRSArIDB4MDAwMDJDMDBVKQ0KI2RlZmluZSBJV0RHX0JBU0UgICAgICAgICAgICAgKEFQQjFQRVJJUEhfQkFTRSArIDB4MDAwMDMwMDBVKQ0KI2RlZmluZSBTUEkyX0JBU0UgICAgICAgICAgICAgKEFQQjFQRVJJUEhfQkFTRSArIDB4MDAwMDM4MDBVKQ0KI2RlZmluZSBTUEkzX0JBU0UgICAgICAgICAgICAgKEFQQjFQRVJJUEhfQkFTRSArIDB4MDAwMDNDMDBVKQ0KI2RlZmluZSBVU0FSVDJfQkFTRSAgICAgICAgICAgKEFQQjFQRVJJUEhfQkFTRSArIDB4MDAwMDQ0MDBVKQ0KI2RlZmluZSBVU0FSVDNfQkFTRSAgICAgICAgICAgKEFQQjFQRVJJUEhfQkFTRSArIDB4MDAwMDQ4MDBVKQ0KI2RlZmluZSBJMkMxX0JBU0UgICAgICAgICAgICAgKEFQQjFQRVJJUEhfQkFTRSArIDB4MDAwMDU0MDBVKQ0KI2RlZmluZSBJMkMyX0JBU0UgICAgICAgICAgICAgKEFQQjFQRVJJUEhfQkFTRSArIDB4MDAwMDU4MDBVKQ0KDQovKiBVU0IgZGV2aWNlIEZTICovDQojZGVmaW5lIFVTQl9CQVNFICAgICAgICAgICAgICAoQVBCMVBFUklQSF9CQVNFICsgMHgwMDAwNUMwMFUpIC8qITwgVVNCX0lQIFBlcmlwaGVyYWwgUmVnaXN0ZXJzIGJhc2UgYWRkcmVzcyAqLw0KI2RlZmluZSBVU0JfUE1BQUREUiAgICAgICAgICAgKEFQQjFQRVJJUEhfQkFTRSArIDB4MDAwMDYwMDBVKSAvKiE8IFVTQl9JUCBQYWNrZXQgTWVtb3J5IEFyZWEgYmFzZSBhZGRyZXNzICovDQoNCi8qIFVTQiBkZXZpY2UgRlMgU1JBTSAqLw0KI2RlZmluZSBQV1JfQkFTRSAgICAgICAgICAgICAgKEFQQjFQRVJJUEhfQkFTRSArIDB4MDAwMDcwMDBVKQ0KI2RlZmluZSBEQUNfQkFTRSAgICAgICAgICAgICAgKEFQQjFQRVJJUEhfQkFTRSArIDB4MDAwMDc0MDBVKQ0KI2RlZmluZSBDT01QX0JBU0UgICAgICAgICAgICAgKEFQQjFQRVJJUEhfQkFTRSArIDB4MDAwMDdDMDBVKQ0KI2RlZmluZSBSSV9CQVNFICAgICAgICAgICAgICAgKEFQQjFQRVJJUEhfQkFTRSArIDB4MDAwMDdDMDRVKQ0KI2RlZmluZSBPUEFNUF9CQVNFICAgICAgICAgICAgKEFQQjFQRVJJUEhfQkFTRSArIDB4MDAwMDdDNUNVKQ0KDQovKiE8IEFQQjIgcGVyaXBoZXJhbHMgKi8NCiNkZWZpbmUgU1lTQ0ZHX0JBU0UgICAgICAgICAgIChBUEIyUEVSSVBIX0JBU0UgKyAweDAwMDAwMDAwVSkNCiNkZWZpbmUgRVhUSV9CQVNFICAgICAgICAgICAgIChBUEIyUEVSSVBIX0JBU0UgKyAweDAwMDAwNDAwVSkNCiNkZWZpbmUgVElNOV9CQVNFICAgICAgICAgICAgIChBUEIyUEVSSVBIX0JBU0UgKyAweDAwMDAwODAwVSkNCiNkZWZpbmUgVElNMTBfQkFTRSAgICAgICAgICAgIChBUEIyUEVSSVBIX0JBU0UgKyAweDAwMDAwQzAwVSkNCiNkZWZpbmUgVElNMTFfQkFTRSAgICAgICAgICAgIChBUEIyUEVSSVBIX0JBU0UgKyAweDAwMDAxMDAwVSkNCiNkZWZpbmUgQURDMV9CQVNFICAgICAgICAgICAgIChBUEIyUEVSSVBIX0JBU0UgKyAweDAwMDAyNDAwVSkNCiNkZWZpbmUgQURDX0JBU0UgICAgICAgICAgICAgIChBUEIyUEVSSVBIX0JBU0UgKyAweDAwMDAyNzAwVSkNCiNkZWZpbmUgU1BJMV9CQVNFICAgICAgICAgICAgIChBUEIyUEVSSVBIX0JBU0UgKyAweDAwMDAzMDAwVSkNCiNkZWZpbmUgVVNBUlQxX0JBU0UgICAgICAgICAgIChBUEIyUEVSSVBIX0JBU0UgKyAweDAwMDAzODAwVSkNCg0KLyohPCBBSEIgcGVyaXBoZXJhbHMgKi8NCiNkZWZpbmUgR1BJT0FfQkFTRSAgICAgICAgICAgIChBSEJQRVJJUEhfQkFTRSArIDB4MDAwMDAwMDBVKQ0KI2RlZmluZSBHUElPQl9CQVNFICAgICAgICAgICAgKEFIQlBFUklQSF9CQVNFICsgMHgwMDAwMDQwMFUpDQojZGVmaW5lIEdQSU9DX0JBU0UgICAgICAgICAgICAoQUhCUEVSSVBIX0JBU0UgKyAweDAwMDAwODAwVSkNCiNkZWZpbmUgR1BJT0RfQkFTRSAgICAgICAgICAgIChBSEJQRVJJUEhfQkFTRSArIDB4MDAwMDBDMDBVKQ0KI2RlZmluZSBHUElPRV9CQVNFICAgICAgICAgICAgKEFIQlBFUklQSF9CQVNFICsgMHgwMDAwMTAwMFUpDQojZGVmaW5lIEdQSU9IX0JBU0UgICAgICAgICAgICAoQUhCUEVSSVBIX0JBU0UgKyAweDAwMDAxNDAwVSkNCiNkZWZpbmUgR1BJT0ZfQkFTRSAgICAgICAgICAgIChBSEJQRVJJUEhfQkFTRSArIDB4MDAwMDE4MDBVKQ0KI2RlZmluZSBHUElPR19CQVNFICAgICAgICAgICAgKEFIQlBFUklQSF9CQVNFICsgMHgwMDAwMUMwMFUpDQojZGVmaW5lIENSQ19CQVNFICAgICAgICAgICAgICAoQUhCUEVSSVBIX0JBU0UgKyAweDAwMDAzMDAwVSkNCiNkZWZpbmUgUkNDX0JBU0UgICAgICAgICAgICAgIChBSEJQRVJJUEhfQkFTRSArIDB4MDAwMDM4MDBVKQ0KI2RlZmluZSBGTEFTSF9SX0JBU0UgICAgICAgICAgKEFIQlBFUklQSF9CQVNFICsgMHgwMDAwM0MwMFUpIC8qITwgRkxBU0ggcmVnaXN0ZXJzIGJhc2UgYWRkcmVzcyAqLw0KI2RlZmluZSBPQl9CQVNFICAgICAgICAgICAgICAgKCh1aW50MzJfdCkweDFGRjgwMDAwVSkgICAgICAgIC8qITwgRkxBU0ggT3B0aW9uIEJ5dGVzIGJhc2UgYWRkcmVzcyAqLw0KI2RlZmluZSBGTEFTSFNJWkVfQkFTRSAgICAgICAgKCh1aW50MzJfdCkweDFGRjgwMENDVSkgICAgICAgIC8qITwgRkxBU0ggU2l6ZSByZWdpc3RlciBiYXNlIGFkZHJlc3MgZm9yIENhdC4zLCBDYXQuNCwgQ2F0LjUgYW5kIENhdC42IGRldmljZXMgKi8NCiNkZWZpbmUgVUlEX0JBU0UgICAgICAgICAgICAgICgodWludDMyX3QpMHgxRkY4MDBEMFUpICAgICAgICAvKiE8IFVuaXF1ZSBkZXZpY2UgSUQgcmVnaXN0ZXIgYmFzZSBhZGRyZXNzIGZvciBDYXQuMywgQ2F0LjQsIENhdC41IGFuZCBDYXQuNiBkZXZpY2VzICovDQojZGVmaW5lIERNQTFfQkFTRSAgICAgICAgICAgICAoQUhCUEVSSVBIX0JBU0UgKyAweDAwMDA2MDAwVSkNCiNkZWZpbmUgRE1BMV9DaGFubmVsMV9CQVNFICAgIChETUExX0JBU0UgKyAweDAwMDAwMDA4VSkNCiNkZWZpbmUgRE1BMV9DaGFubmVsMl9CQVNFICAgIChETUExX0JBU0UgKyAweDAwMDAwMDFDVSkNCiNkZWZpbmUgRE1BMV9DaGFubmVsM19CQVNFICAgIChETUExX0JBU0UgKyAweDAwMDAwMDMwVSkNCiNkZWZpbmUgRE1BMV9DaGFubmVsNF9CQVNFICAgIChETUExX0JBU0UgKyAweDAwMDAwMDQ0VSkNCiNkZWZpbmUgRE1BMV9DaGFubmVsNV9CQVNFICAgIChETUExX0JBU0UgKyAweDAwMDAwMDU4VSkNCiNkZWZpbmUgRE1BMV9DaGFubmVsNl9CQVNFICAgIChETUExX0JBU0UgKyAweDAwMDAwMDZDVSkNCiNkZWZpbmUgRE1BMV9DaGFubmVsN19CQVNFICAgIChETUExX0JBU0UgKyAweDAwMDAwMDgwVSkNCiNkZWZpbmUgRE1BMl9CQVNFICAgICAgICAgICAgIChBSEJQRVJJUEhfQkFTRSArIDB4MDAwMDY0MDBVKQ0KI2RlZmluZSBETUEyX0NoYW5uZWwxX0JBU0UgICAgKERNQTJfQkFTRSArIDB4MDAwMDAwMDhVKQ0KI2RlZmluZSBETUEyX0NoYW5uZWwyX0JBU0UgICAgKERNQTJfQkFTRSArIDB4MDAwMDAwMUNVKQ0KI2RlZmluZSBETUEyX0NoYW5uZWwzX0JBU0UgICAgKERNQTJfQkFTRSArIDB4MDAwMDAwMzBVKQ0KI2RlZmluZSBETUEyX0NoYW5uZWw0X0JBU0UgICAgKERNQTJfQkFTRSArIDB4MDAwMDAwNDRVKQ0KI2RlZmluZSBETUEyX0NoYW5uZWw1X0JBU0UgICAgKERNQTJfQkFTRSArIDB4MDAwMDAwNThVKQ0KI2RlZmluZSBEQkdNQ1VfQkFTRSAgICAgICAgICAgKCh1aW50MzJfdCkweEUwMDQyMDAwVSkgICAgIC8qITwgRGVidWcgTUNVIHJlZ2lzdGVycyBiYXNlIGFkZHJlc3MgKi8NCg0KLyoqDQogICogQH0NCiAgKi8NCiAgDQovKiogQGFkZHRvZ3JvdXAgUGVyaXBoZXJhbF9kZWNsYXJhdGlvbg0KICAqIEB7DQogICovICANCg0KI2RlZmluZSBUSU0yICAgICAgICAgICAgICAgICgoVElNX1R5cGVEZWYgKikgVElNMl9CQVNFKQ0KI2RlZmluZSBUSU0zICAgICAgICAgICAgICAgICgoVElNX1R5cGVEZWYgKikgVElNM19CQVNFKQ0KI2RlZmluZSBUSU00ICAgICAgICAgICAgICAgICgoVElNX1R5cGVEZWYgKikgVElNNF9CQVNFKQ0KI2RlZmluZSBUSU01ICAgICAgICAgICAgICAgICgoVElNX1R5cGVEZWYgKikgVElNNV9CQVNFKQ0KI2RlZmluZSBUSU02ICAgICAgICAgICAgICAgICgoVElNX1R5cGVEZWYgKikgVElNNl9CQVNFKQ0KI2RlZmluZSBUSU03ICAgICAgICAgICAgICAgICgoVElNX1R5cGVEZWYgKikgVElNN19CQVNFKQ0KI2RlZmluZSBMQ0QgICAgICAgICAgICAgICAgICgoTENEX1R5cGVEZWYgKikgTENEX0JBU0UpDQojZGVmaW5lIFJUQyAgICAgICAgICAgICAgICAgKChSVENfVHlwZURlZiAqKSBSVENfQkFTRSkNCiNkZWZpbmUgV1dERyAgICAgICAgICAgICAgICAoKFdXREdfVHlwZURlZiAqKSBXV0RHX0JBU0UpDQojZGVmaW5lIElXREcgICAgICAgICAgICAgICAgKChJV0RHX1R5cGVEZWYgKikgSVdER19CQVNFKQ0KI2RlZmluZSBTUEkyICAgICAgICAgICAgICAgICgoU1BJX1R5cGVEZWYgKikgU1BJMl9CQVNFKQ0KI2RlZmluZSBTUEkzICAgICAgICAgICAgICAgICgoU1BJX1R5cGVEZWYgKikgU1BJM19CQVNFKQ0KI2RlZmluZSBVU0FSVDIgICAgICAgICAgICAgICgoVVNBUlRfVHlwZURlZiAqKSBVU0FSVDJfQkFTRSkNCiNkZWZpbmUgVVNBUlQzICAgICAgICAgICAgICAoKFVTQVJUX1R5cGVEZWYgKikgVVNBUlQzX0JBU0UpDQojZGVmaW5lIEkyQzEgICAgICAgICAgICAgICAgKChJMkNfVHlwZURlZiAqKSBJMkMxX0JBU0UpDQojZGVmaW5lIEkyQzIgICAgICAgICAgICAgICAgKChJMkNfVHlwZURlZiAqKSBJMkMyX0JBU0UpDQovKiBVU0IgZGV2aWNlIEZTICovDQojZGVmaW5lIFVTQiAgICAgICAgICAgICAgICAgICAoKFVTQl9UeXBlRGVmICopIFVTQl9CQVNFKQ0KLyogVVNCIGRldmljZSBGUyBTUkFNICovDQojZGVmaW5lIFBXUiAgICAgICAgICAgICAgICAgKChQV1JfVHlwZURlZiAqKSBQV1JfQkFTRSkNCg0KI2RlZmluZSBEQUMxICAgICAgICAgICAgICAgICgoREFDX1R5cGVEZWYgKikgREFDX0JBU0UpDQovKiBMZWdhY3kgZGVmaW5lICovDQojZGVmaW5lIERBQyAgICAgICAgICAgICAgICAgREFDMQ0KDQojZGVmaW5lIENPTVAgICAgICAgICAgICAgICAgKChDT01QX1R5cGVEZWYgKikgQ09NUF9CQVNFKSAgICAgICAgICAgICAgICAgLyogQ09NUCBnZW5lcmljIGluc3RhbmNlIGluY2x1ZGUgYml0cyBvZiBDT01QMSBhbmQgQ09NUDIgbWl4ZWQgaW4gdGhlIHNhbWUgcmVnaXN0ZXIgKi8NCiNkZWZpbmUgQ09NUDEgICAgICAgICAgICAgICAoKENPTVBfVHlwZURlZiAqKSBDT01QX0JBU0UpICAgICAgICAgICAgICAgICAvKiBDT01QMSBpbnN0YW5jZSBkZWZpbml0aW9uIHRvIGRpZmZlcmVudGlhdGUgQ09NUDEgYW5kIENPTVAyLCBub3QgdG8gYmUgdXNlZCB0byBhY2Nlc3MgY29tcGFyYXRvciByZWdpc3RlciAqLw0KI2RlZmluZSBDT01QMiAgICAgICAgICAgICAgICgoQ09NUF9UeXBlRGVmICopIChDT01QX0JBU0UgKyAweDAwMDAwMDAxVSkpIC8qIENPTVAyIGluc3RhbmNlIGRlZmluaXRpb24gdG8gZGlmZmVyZW50aWF0ZSBDT01QMSBhbmQgQ09NUDIsIG5vdCB0byBiZSB1c2VkIHRvIGFjY2VzcyBjb21wYXJhdG9yIHJlZ2lzdGVyICovDQojZGVmaW5lIENPTVAxMl9DT01NT04gICAgICAgKChDT01QX0NvbW1vbl9UeXBlRGVmICopIENPTVBfQkFTRSkgICAgICAgICAgLyogQ09NUCBjb21tb24gaW5zdGFuY2UgZGVmaW5pdGlvbiB0byBhY2Nlc3MgY29tcGFyYXRvciByZWdpc3RlciBiaXRzIHVzZWQgYnkgYm90aCBjb21wYXJhdG9yIGluc3RhbmNlcyAod2luZG93IG1vZGUpICovDQoNCiNkZWZpbmUgUkkgICAgICAgICAgICAgICAgICAoKFJJX1R5cGVEZWYgKikgUklfQkFTRSkNCg0KI2RlZmluZSBPUEFNUCAgICAgICAgICAgICAgICgoT1BBTVBfVHlwZURlZiAqKSBPUEFNUF9CQVNFKQ0KI2RlZmluZSBPUEFNUDEgICAgICAgICAgICAgICgoT1BBTVBfVHlwZURlZiAqKSBPUEFNUF9CQVNFKQ0KI2RlZmluZSBPUEFNUDIgICAgICAgICAgICAgICgoT1BBTVBfVHlwZURlZiAqKSAoT1BBTVBfQkFTRSArIDB4MDAwMDAwMDFVKSkNCiNkZWZpbmUgT1BBTVAxMl9DT01NT04gICAgICAoKE9QQU1QX0NvbW1vbl9UeXBlRGVmICopIE9QQU1QX0JBU0UpDQojZGVmaW5lIFNZU0NGRyAgICAgICAgICAgICAgKChTWVNDRkdfVHlwZURlZiAqKSBTWVNDRkdfQkFTRSkNCiNkZWZpbmUgRVhUSSAgICAgICAgICAgICAgICAoKEVYVElfVHlwZURlZiAqKSBFWFRJX0JBU0UpDQojZGVmaW5lIFRJTTkgICAgICAgICAgICAgICAgKChUSU1fVHlwZURlZiAqKSBUSU05X0JBU0UpDQojZGVmaW5lIFRJTTEwICAgICAgICAgICAgICAgKChUSU1fVHlwZURlZiAqKSBUSU0xMF9CQVNFKQ0KI2RlZmluZSBUSU0xMSAgICAgICAgICAgICAgICgoVElNX1R5cGVEZWYgKikgVElNMTFfQkFTRSkNCg0KI2RlZmluZSBBREMxICAgICAgICAgICAgICAgICgoQURDX1R5cGVEZWYgKikgQURDMV9CQVNFKQ0KI2RlZmluZSBBREMxX0NPTU1PTiAgICAgICAgICgoQURDX0NvbW1vbl9UeXBlRGVmICopIEFEQ19CQVNFKQ0KLyogTGVnYWN5IGRlZmluZXMgKi8NCiNkZWZpbmUgQURDICAgICAgICAgICAgICAgICBBREMxX0NPTU1PTg0KDQojZGVmaW5lIFNQSTEgICAgICAgICAgICAgICAgKChTUElfVHlwZURlZiAqKSBTUEkxX0JBU0UpDQojZGVmaW5lIFVTQVJUMSAgICAgICAgICAgICAgKChVU0FSVF9UeXBlRGVmICopIFVTQVJUMV9CQVNFKQ0KI2RlZmluZSBHUElPQSAgICAgICAgICAgICAgICgoR1BJT19UeXBlRGVmICopIEdQSU9BX0JBU0UpDQojZGVmaW5lIEdQSU9CICAgICAgICAgICAgICAgKChHUElPX1R5cGVEZWYgKikgR1BJT0JfQkFTRSkNCiNkZWZpbmUgR1BJT0MgICAgICAgICAgICAgICAoKEdQSU9fVHlwZURlZiAqKSBHUElPQ19CQVNFKQ0KI2RlZmluZSBHUElPRCAgICAgICAgICAgICAgICgoR1BJT19UeXBlRGVmICopIEdQSU9EX0JBU0UpDQojZGVmaW5lIEdQSU9FICAgICAgICAgICAgICAgKChHUElPX1R5cGVEZWYgKikgR1BJT0VfQkFTRSkNCiNkZWZpbmUgR1BJT0ggICAgICAgICAgICAgICAoKEdQSU9fVHlwZURlZiAqKSBHUElPSF9CQVNFKQ0KI2RlZmluZSBHUElPRiAgICAgICAgICAgICAgICgoR1BJT19UeXBlRGVmICopIEdQSU9GX0JBU0UpDQojZGVmaW5lIEdQSU9HICAgICAgICAgICAgICAgKChHUElPX1R5cGVEZWYgKikgR1BJT0dfQkFTRSkNCiNkZWZpbmUgQ1JDICAgICAgICAgICAgICAgICAoKENSQ19UeXBlRGVmICopIENSQ19CQVNFKQ0KI2RlZmluZSBSQ0MgICAgICAgICAgICAgICAgICgoUkNDX1R5cGVEZWYgKikgUkNDX0JBU0UpDQojZGVmaW5lIEZMQVNIICAgICAgICAgICAgICAgKChGTEFTSF9UeXBlRGVmICopIEZMQVNIX1JfQkFTRSkNCiNkZWZpbmUgT0IgICAgICAgICAgICAgICAgICAoKE9CX1R5cGVEZWYgKikgT0JfQkFTRSkgDQojZGVmaW5lIERNQTEgICAgICAgICAgICAgICAgKChETUFfVHlwZURlZiAqKSBETUExX0JBU0UpDQojZGVmaW5lIERNQTFfQ2hhbm5lbDEgICAgICAgKChETUFfQ2hhbm5lbF9UeXBlRGVmICopIERNQTFfQ2hhbm5lbDFfQkFTRSkNCiNkZWZpbmUgRE1BMV9DaGFubmVsMiAgICAgICAoKERNQV9DaGFubmVsX1R5cGVEZWYgKikgRE1BMV9DaGFubmVsMl9CQVNFKQ0KI2RlZmluZSBETUExX0NoYW5uZWwzICAgICAgICgoRE1BX0NoYW5uZWxfVHlwZURlZiAqKSBETUExX0NoYW5uZWwzX0JBU0UpDQojZGVmaW5lIERNQTFfQ2hhbm5lbDQgICAgICAgKChETUFfQ2hhbm5lbF9UeXBlRGVmICopIERNQTFfQ2hhbm5lbDRfQkFTRSkNCiNkZWZpbmUgRE1BMV9DaGFubmVsNSAgICAgICAoKERNQV9DaGFubmVsX1R5cGVEZWYgKikgRE1BMV9DaGFubmVsNV9CQVNFKQ0KI2RlZmluZSBETUExX0NoYW5uZWw2ICAgICAgICgoRE1BX0NoYW5uZWxfVHlwZURlZiAqKSBETUExX0NoYW5uZWw2X0JBU0UpDQojZGVmaW5lIERNQTFfQ2hhbm5lbDcgICAgICAgKChETUFfQ2hhbm5lbF9UeXBlRGVmICopIERNQTFfQ2hhbm5lbDdfQkFTRSkNCiNkZWZpbmUgRE1BMiAgICAgICAgICAgICAgICAoKERNQV9UeXBlRGVmICopIERNQTJfQkFTRSkNCiNkZWZpbmUgRE1BMl9DaGFubmVsMSAgICAgICAoKERNQV9DaGFubmVsX1R5cGVEZWYgKikgRE1BMl9DaGFubmVsMV9CQVNFKQ0KI2RlZmluZSBETUEyX0NoYW5uZWwyICAgICAgICgoRE1BX0NoYW5uZWxfVHlwZURlZiAqKSBETUEyX0NoYW5uZWwyX0JBU0UpDQojZGVmaW5lIERNQTJfQ2hhbm5lbDMgICAgICAgKChETUFfQ2hhbm5lbF9UeXBlRGVmICopIERNQTJfQ2hhbm5lbDNfQkFTRSkNCiNkZWZpbmUgRE1BMl9DaGFubmVsNCAgICAgICAoKERNQV9DaGFubmVsX1R5cGVEZWYgKikgRE1BMl9DaGFubmVsNF9CQVNFKQ0KI2RlZmluZSBETUEyX0NoYW5uZWw1ICAgICAgICgoRE1BX0NoYW5uZWxfVHlwZURlZiAqKSBETUEyX0NoYW5uZWw1X0JBU0UpDQojZGVmaW5lIERCR01DVSAgICAgICAgICAgICAgKChEQkdNQ1VfVHlwZURlZiAqKSBEQkdNQ1VfQkFTRSkNCg0KIC8qKg0KICAqIEB9DQogICovDQoNCi8qKiBAYWRkdG9ncm91cCBFeHBvcnRlZF9jb25zdGFudHMNCiAgKiBAew0KICAqLw0KDQovKiogQGFkZHRvZ3JvdXAgUGVyaXBoZXJhbF9SZWdpc3RlcnNfQml0c19EZWZpbml0aW9uDQogICogQHsNCiAgKi8NCiAgICANCi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovDQovKiAgICAgICAgICAgICAgICAgICAgICAgICBQZXJpcGhlcmFsIFJlZ2lzdGVycyBCaXRzIERlZmluaXRpb24gICAgICAgICAgICAgICAqLw0KLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8NCi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovDQovKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLw0KLyogICAgICAgICAgICAgICAgICAgICAgQW5hbG9nIHRvIERpZ2l0YWwgQ29udmVydGVyIChBREMpICAgICAgICAgICAgICAgICAgICAgKi8NCi8qICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovDQovKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLw0KDQovKioqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBBRENfU1IgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBBRENfU1JfQVdEX1BvcyAgICAgICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBBRENfU1JfQVdEX01zayAgICAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgQURDX1NSX0FXRF9Qb3MpICAgICAgICAgIC8qITwgMHgwMDAwMDAwMSAqLw0KI2RlZmluZSBBRENfU1JfQVdEICAgICAgICAgICAgICAgICAgICAgICAgICAgQURDX1NSX0FXRF9Nc2sgICAgICAgICAgICAgICAgICAgIC8qITwgQURDIGFuYWxvZyB3YXRjaGRvZyAxIGZsYWcgKi8NCiNkZWZpbmUgQURDX1NSX0VPQ1NfUG9zICAgICAgICAgICAgICAgICAgICAgICgxVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgQURDX1NSX0VPQ1NfTXNrICAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IEFEQ19TUl9FT0NTX1BvcykgICAgICAgICAvKiE8IDB4MDAwMDAwMDIgKi8NCiNkZWZpbmUgQURDX1NSX0VPQ1MgICAgICAgICAgICAgICAgICAgICAgICAgIEFEQ19TUl9FT0NTX01zayAgICAgICAgICAgICAgICAgICAvKiE8IEFEQyBncm91cCByZWd1bGFyIGVuZCBvZiB1bml0YXJ5IGNvbnZlcnNpb24gb3IgZW5kIG9mIHNlcXVlbmNlIGNvbnZlcnNpb25zIGZsYWcgKi8NCiNkZWZpbmUgQURDX1NSX0pFT1NfUG9zICAgICAgICAgICAgICAgICAgICAgICgyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgQURDX1NSX0pFT1NfTXNrICAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IEFEQ19TUl9KRU9TX1BvcykgICAgICAgICAvKiE8IDB4MDAwMDAwMDQgKi8NCiNkZWZpbmUgQURDX1NSX0pFT1MgICAgICAgICAgICAgICAgICAgICAgICAgIEFEQ19TUl9KRU9TX01zayAgICAgICAgICAgICAgICAgICAvKiE8IEFEQyBncm91cCBpbmplY3RlZCBlbmQgb2Ygc2VxdWVuY2UgY29udmVyc2lvbnMgZmxhZyAqLw0KI2RlZmluZSBBRENfU1JfSlNUUlRfUG9zICAgICAgICAgICAgICAgICAgICAgKDNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBBRENfU1JfSlNUUlRfTXNrICAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgQURDX1NSX0pTVFJUX1BvcykgICAgICAgIC8qITwgMHgwMDAwMDAwOCAqLw0KI2RlZmluZSBBRENfU1JfSlNUUlQgICAgICAgICAgICAgICAgICAgICAgICAgQURDX1NSX0pTVFJUX01zayAgICAgICAgICAgICAgICAgIC8qITwgQURDIGdyb3VwIGluamVjdGVkIGNvbnZlcnNpb24gc3RhcnQgZmxhZyAqLw0KI2RlZmluZSBBRENfU1JfU1RSVF9Qb3MgICAgICAgICAgICAgICAgICAgICAgKDRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBBRENfU1JfU1RSVF9Nc2sgICAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgQURDX1NSX1NUUlRfUG9zKSAgICAgICAgIC8qITwgMHgwMDAwMDAxMCAqLw0KI2RlZmluZSBBRENfU1JfU1RSVCAgICAgICAgICAgICAgICAgICAgICAgICAgQURDX1NSX1NUUlRfTXNrICAgICAgICAgICAgICAgICAgIC8qITwgQURDIGdyb3VwIHJlZ3VsYXIgY29udmVyc2lvbiBzdGFydCBmbGFnICovDQojZGVmaW5lIEFEQ19TUl9PVlJfUG9zICAgICAgICAgICAgICAgICAgICAgICAoNVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEFEQ19TUl9PVlJfTXNrICAgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBBRENfU1JfT1ZSX1BvcykgICAgICAgICAgLyohPCAweDAwMDAwMDIwICovDQojZGVmaW5lIEFEQ19TUl9PVlIgICAgICAgICAgICAgICAgICAgICAgICAgICBBRENfU1JfT1ZSX01zayAgICAgICAgICAgICAgICAgICAgLyohPCBBREMgZ3JvdXAgcmVndWxhciBvdmVycnVuIGZsYWcgKi8NCiNkZWZpbmUgQURDX1NSX0FET05TX1BvcyAgICAgICAgICAgICAgICAgICAgICg2VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgQURDX1NSX0FET05TX01zayAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IEFEQ19TUl9BRE9OU19Qb3MpICAgICAgICAvKiE8IDB4MDAwMDAwNDAgKi8NCiNkZWZpbmUgQURDX1NSX0FET05TICAgICAgICAgICAgICAgICAgICAgICAgIEFEQ19TUl9BRE9OU19Nc2sgICAgICAgICAgICAgICAgICAvKiE8IEFEQyByZWFkeSBmbGFnICovDQojZGVmaW5lIEFEQ19TUl9SQ05SX1BvcyAgICAgICAgICAgICAgICAgICAgICAoOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEFEQ19TUl9SQ05SX01zayAgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBBRENfU1JfUkNOUl9Qb3MpICAgICAgICAgLyohPCAweDAwMDAwMTAwICovDQojZGVmaW5lIEFEQ19TUl9SQ05SICAgICAgICAgICAgICAgICAgICAgICAgICBBRENfU1JfUkNOUl9Nc2sgICAgICAgICAgICAgICAgICAgLyohPCBBREMgZ3JvdXAgcmVndWxhciBub3QgcmVhZHkgZmxhZyAqLw0KI2RlZmluZSBBRENfU1JfSkNOUl9Qb3MgICAgICAgICAgICAgICAgICAgICAgKDlVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBBRENfU1JfSkNOUl9Nc2sgICAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgQURDX1NSX0pDTlJfUG9zKSAgICAgICAgIC8qITwgMHgwMDAwMDIwMCAqLw0KI2RlZmluZSBBRENfU1JfSkNOUiAgICAgICAgICAgICAgICAgICAgICAgICAgQURDX1NSX0pDTlJfTXNrICAgICAgICAgICAgICAgICAgIC8qITwgQURDIGdyb3VwIGluamVjdGVkIG5vdCByZWFkeSBmbGFnICovDQoNCi8qIExlZ2FjeSBkZWZpbmVzICovDQojZGVmaW5lICBBRENfU1JfRU9DICAgICAgICAgICAgICAgICAgICAgICAgICAoQURDX1NSX0VPQ1MpDQojZGVmaW5lICBBRENfU1JfSkVPQyAgICAgICAgICAgICAgICAgICAgICAgICAoQURDX1NSX0pFT1MpDQoNCi8qKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgQURDX0NSMSByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIEFEQ19DUjFfQVdEQ0hfUG9zICAgICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEFEQ19DUjFfQVdEQ0hfTXNrICAgICAgICAgICAgICAgICAgICAoMHgxRlUgPDwgQURDX0NSMV9BV0RDSF9Qb3MpICAgICAgLyohPCAweDAwMDAwMDFGICovDQojZGVmaW5lIEFEQ19DUjFfQVdEQ0ggICAgICAgICAgICAgICAgICAgICAgICBBRENfQ1IxX0FXRENIX01zayAgICAgICAgICAgICAgICAgLyohPCBBREMgYW5hbG9nIHdhdGNoZG9nIDEgbW9uaXRvcmVkIGNoYW5uZWwgc2VsZWN0aW9uICovDQojZGVmaW5lIEFEQ19DUjFfQVdEQ0hfMCAgICAgICAgICAgICAgICAgICAgICAoMHgwMVUgPDwgQURDX0NSMV9BV0RDSF9Qb3MpICAgICAgLyohPCAweDAwMDAwMDAxICovDQojZGVmaW5lIEFEQ19DUjFfQVdEQ0hfMSAgICAgICAgICAgICAgICAgICAgICAoMHgwMlUgPDwgQURDX0NSMV9BV0RDSF9Qb3MpICAgICAgLyohPCAweDAwMDAwMDAyICovDQojZGVmaW5lIEFEQ19DUjFfQVdEQ0hfMiAgICAgICAgICAgICAgICAgICAgICAoMHgwNFUgPDwgQURDX0NSMV9BV0RDSF9Qb3MpICAgICAgLyohPCAweDAwMDAwMDA0ICovDQojZGVmaW5lIEFEQ19DUjFfQVdEQ0hfMyAgICAgICAgICAgICAgICAgICAgICAoMHgwOFUgPDwgQURDX0NSMV9BV0RDSF9Qb3MpICAgICAgLyohPCAweDAwMDAwMDA4ICovDQojZGVmaW5lIEFEQ19DUjFfQVdEQ0hfNCAgICAgICAgICAgICAgICAgICAgICAoMHgxMFUgPDwgQURDX0NSMV9BV0RDSF9Qb3MpICAgICAgLyohPCAweDAwMDAwMDEwICovDQoNCiNkZWZpbmUgQURDX0NSMV9FT0NTSUVfUG9zICAgICAgICAgICAgICAgICAgICg1VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgQURDX0NSMV9FT0NTSUVfTXNrICAgICAgICAgICAgICAgICAgICgweDFVIDw8IEFEQ19DUjFfRU9DU0lFX1BvcykgICAgICAvKiE8IDB4MDAwMDAwMjAgKi8NCiNkZWZpbmUgQURDX0NSMV9FT0NTSUUgICAgICAgICAgICAgICAgICAgICAgIEFEQ19DUjFfRU9DU0lFX01zayAgICAgICAgICAgICAgICAvKiE8IEFEQyBncm91cCByZWd1bGFyIGVuZCBvZiB1bml0YXJ5IGNvbnZlcnNpb24gb3IgZW5kIG9mIHNlcXVlbmNlIGNvbnZlcnNpb25zIGludGVycnVwdCAqLw0KI2RlZmluZSBBRENfQ1IxX0FXRElFX1BvcyAgICAgICAgICAgICAgICAgICAgKDZVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBBRENfQ1IxX0FXRElFX01zayAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgQURDX0NSMV9BV0RJRV9Qb3MpICAgICAgIC8qITwgMHgwMDAwMDA0MCAqLw0KI2RlZmluZSBBRENfQ1IxX0FXRElFICAgICAgICAgICAgICAgICAgICAgICAgQURDX0NSMV9BV0RJRV9Nc2sgICAgICAgICAgICAgICAgIC8qITwgQURDIGFuYWxvZyB3YXRjaGRvZyAxIGludGVycnVwdCAqLw0KI2RlZmluZSBBRENfQ1IxX0pFT1NJRV9Qb3MgICAgICAgICAgICAgICAgICAgKDdVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBBRENfQ1IxX0pFT1NJRV9Nc2sgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgQURDX0NSMV9KRU9TSUVfUG9zKSAgICAgIC8qITwgMHgwMDAwMDA4MCAqLw0KI2RlZmluZSBBRENfQ1IxX0pFT1NJRSAgICAgICAgICAgICAgICAgICAgICAgQURDX0NSMV9KRU9TSUVfTXNrICAgICAgICAgICAgICAgIC8qITwgQURDIGdyb3VwIGluamVjdGVkIGVuZCBvZiBzZXF1ZW5jZSBjb252ZXJzaW9ucyBpbnRlcnJ1cHQgKi8NCiNkZWZpbmUgQURDX0NSMV9TQ0FOX1BvcyAgICAgICAgICAgICAgICAgICAgICg4VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgQURDX0NSMV9TQ0FOX01zayAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IEFEQ19DUjFfU0NBTl9Qb3MpICAgICAgICAvKiE8IDB4MDAwMDAxMDAgKi8NCiNkZWZpbmUgQURDX0NSMV9TQ0FOICAgICAgICAgICAgICAgICAgICAgICAgIEFEQ19DUjFfU0NBTl9Nc2sgICAgICAgICAgICAgICAgICAvKiE8IEFEQyBzY2FuIG1vZGUgKi8NCiNkZWZpbmUgQURDX0NSMV9BV0RTR0xfUG9zICAgICAgICAgICAgICAgICAgICg5VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgQURDX0NSMV9BV0RTR0xfTXNrICAgICAgICAgICAgICAgICAgICgweDFVIDw8IEFEQ19DUjFfQVdEU0dMX1BvcykgICAgICAvKiE8IDB4MDAwMDAyMDAgKi8NCiNkZWZpbmUgQURDX0NSMV9BV0RTR0wgICAgICAgICAgICAgICAgICAgICAgIEFEQ19DUjFfQVdEU0dMX01zayAgICAgICAgICAgICAgICAvKiE8IEFEQyBhbmFsb2cgd2F0Y2hkb2cgMSBtb25pdG9yaW5nIGEgc2luZ2xlIGNoYW5uZWwgb3IgYWxsIGNoYW5uZWxzICovDQojZGVmaW5lIEFEQ19DUjFfSkFVVE9fUG9zICAgICAgICAgICAgICAgICAgICAoMTBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEFEQ19DUjFfSkFVVE9fTXNrICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBBRENfQ1IxX0pBVVRPX1BvcykgICAgICAgLyohPCAweDAwMDAwNDAwICovDQojZGVmaW5lIEFEQ19DUjFfSkFVVE8gICAgICAgICAgICAgICAgICAgICAgICBBRENfQ1IxX0pBVVRPX01zayAgICAgICAgICAgICAgICAgLyohPCBBREMgZ3JvdXAgaW5qZWN0ZWQgYXV0b21hdGljIHRyaWdnZXIgbW9kZSAqLw0KI2RlZmluZSBBRENfQ1IxX0RJU0NFTl9Qb3MgICAgICAgICAgICAgICAgICAgKDExVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBBRENfQ1IxX0RJU0NFTl9Nc2sgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgQURDX0NSMV9ESVNDRU5fUG9zKSAgICAgIC8qITwgMHgwMDAwMDgwMCAqLw0KI2RlZmluZSBBRENfQ1IxX0RJU0NFTiAgICAgICAgICAgICAgICAgICAgICAgQURDX0NSMV9ESVNDRU5fTXNrICAgICAgICAgICAgICAgIC8qITwgQURDIGdyb3VwIHJlZ3VsYXIgc2VxdWVuY2VyIGRpc2NvbnRpbnVvdXMgbW9kZSAqLw0KI2RlZmluZSBBRENfQ1IxX0pESVNDRU5fUG9zICAgICAgICAgICAgICAgICAgKDEyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBBRENfQ1IxX0pESVNDRU5fTXNrICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgQURDX0NSMV9KRElTQ0VOX1BvcykgICAgIC8qITwgMHgwMDAwMTAwMCAqLw0KI2RlZmluZSBBRENfQ1IxX0pESVNDRU4gICAgICAgICAgICAgICAgICAgICAgQURDX0NSMV9KRElTQ0VOX01zayAgICAgICAgICAgICAgIC8qITwgQURDIGdyb3VwIGluamVjdGVkIHNlcXVlbmNlciBkaXNjb250aW51b3VzIG1vZGUgKi8NCg0KI2RlZmluZSBBRENfQ1IxX0RJU0NOVU1fUG9zICAgICAgICAgICAgICAgICAgKDEzVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBBRENfQ1IxX0RJU0NOVU1fTXNrICAgICAgICAgICAgICAgICAgKDB4N1UgPDwgQURDX0NSMV9ESVNDTlVNX1BvcykgICAgIC8qITwgMHgwMDAwRTAwMCAqLw0KI2RlZmluZSBBRENfQ1IxX0RJU0NOVU0gICAgICAgICAgICAgICAgICAgICAgQURDX0NSMV9ESVNDTlVNX01zayAgICAgICAgICAgICAgIC8qITwgQURDIGdyb3VwIHJlZ3VsYXIgc2VxdWVuY2VyIGRpc2NvbnRpbnVvdXMgbnVtYmVyIG9mIHJhbmtzICovDQojZGVmaW5lIEFEQ19DUjFfRElTQ05VTV8wICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBBRENfQ1IxX0RJU0NOVU1fUG9zKSAgICAgLyohPCAweDAwMDAyMDAwICovDQojZGVmaW5lIEFEQ19DUjFfRElTQ05VTV8xICAgICAgICAgICAgICAgICAgICAoMHgyVSA8PCBBRENfQ1IxX0RJU0NOVU1fUG9zKSAgICAgLyohPCAweDAwMDA0MDAwICovDQojZGVmaW5lIEFEQ19DUjFfRElTQ05VTV8yICAgICAgICAgICAgICAgICAgICAoMHg0VSA8PCBBRENfQ1IxX0RJU0NOVU1fUG9zKSAgICAgLyohPCAweDAwMDA4MDAwICovDQoNCiNkZWZpbmUgQURDX0NSMV9QRERfUG9zICAgICAgICAgICAgICAgICAgICAgICgxNlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgQURDX0NSMV9QRERfTXNrICAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IEFEQ19DUjFfUEREX1BvcykgICAgICAgICAvKiE8IDB4MDAwMTAwMDAgKi8NCiNkZWZpbmUgQURDX0NSMV9QREQgICAgICAgICAgICAgICAgICAgICAgICAgIEFEQ19DUjFfUEREX01zayAgICAgICAgICAgICAgICAgICAvKiE8IEFEQyBwb3dlciBkb3duIGR1cmluZyBhdXRvIGRlbGF5IHBoYXNlICovDQojZGVmaW5lIEFEQ19DUjFfUERJX1BvcyAgICAgICAgICAgICAgICAgICAgICAoMTdVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEFEQ19DUjFfUERJX01zayAgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBBRENfQ1IxX1BESV9Qb3MpICAgICAgICAgLyohPCAweDAwMDIwMDAwICovDQojZGVmaW5lIEFEQ19DUjFfUERJICAgICAgICAgICAgICAgICAgICAgICAgICBBRENfQ1IxX1BESV9Nc2sgICAgICAgICAgICAgICAgICAgLyohPCBBREMgcG93ZXIgZG93biBkdXJpbmcgaWRsZSBwaGFzZSAqLw0KDQojZGVmaW5lIEFEQ19DUjFfSkFXREVOX1BvcyAgICAgICAgICAgICAgICAgICAoMjJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEFEQ19DUjFfSkFXREVOX01zayAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBBRENfQ1IxX0pBV0RFTl9Qb3MpICAgICAgLyohPCAweDAwNDAwMDAwICovDQojZGVmaW5lIEFEQ19DUjFfSkFXREVOICAgICAgICAgICAgICAgICAgICAgICBBRENfQ1IxX0pBV0RFTl9Nc2sgICAgICAgICAgICAgICAgLyohPCBBREMgYW5hbG9nIHdhdGNoZG9nIDEgZW5hYmxlIG9uIHNjb3BlIEFEQyBncm91cCBpbmplY3RlZCAqLw0KI2RlZmluZSBBRENfQ1IxX0FXREVOX1BvcyAgICAgICAgICAgICAgICAgICAgKDIzVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBBRENfQ1IxX0FXREVOX01zayAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgQURDX0NSMV9BV0RFTl9Qb3MpICAgICAgIC8qITwgMHgwMDgwMDAwMCAqLw0KI2RlZmluZSBBRENfQ1IxX0FXREVOICAgICAgICAgICAgICAgICAgICAgICAgQURDX0NSMV9BV0RFTl9Nc2sgICAgICAgICAgICAgICAgIC8qITwgQURDIGFuYWxvZyB3YXRjaGRvZyAxIGVuYWJsZSBvbiBzY29wZSBBREMgZ3JvdXAgcmVndWxhciAqLw0KDQojZGVmaW5lIEFEQ19DUjFfUkVTX1BvcyAgICAgICAgICAgICAgICAgICAgICAoMjRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEFEQ19DUjFfUkVTX01zayAgICAgICAgICAgICAgICAgICAgICAoMHgzVSA8PCBBRENfQ1IxX1JFU19Qb3MpICAgICAgICAgLyohPCAweDAzMDAwMDAwICovDQojZGVmaW5lIEFEQ19DUjFfUkVTICAgICAgICAgICAgICAgICAgICAgICAgICBBRENfQ1IxX1JFU19Nc2sgICAgICAgICAgICAgICAgICAgLyohPCBBREMgcmVzb2x1dGlvbiAqLw0KI2RlZmluZSBBRENfQ1IxX1JFU18wICAgICAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgQURDX0NSMV9SRVNfUG9zKSAgICAgICAgIC8qITwgMHgwMTAwMDAwMCAqLw0KI2RlZmluZSBBRENfQ1IxX1JFU18xICAgICAgICAgICAgICAgICAgICAgICAgKDB4MlUgPDwgQURDX0NSMV9SRVNfUG9zKSAgICAgICAgIC8qITwgMHgwMjAwMDAwMCAqLw0KDQojZGVmaW5lIEFEQ19DUjFfT1ZSSUVfUG9zICAgICAgICAgICAgICAgICAgICAoMjZVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEFEQ19DUjFfT1ZSSUVfTXNrICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBBRENfQ1IxX09WUklFX1BvcykgICAgICAgLyohPCAweDA0MDAwMDAwICovDQojZGVmaW5lIEFEQ19DUjFfT1ZSSUUgICAgICAgICAgICAgICAgICAgICAgICBBRENfQ1IxX09WUklFX01zayAgICAgICAgICAgICAgICAgLyohPCBBREMgZ3JvdXAgcmVndWxhciBvdmVycnVuIGludGVycnVwdCAqLw0KDQovKiBMZWdhY3kgZGVmaW5lcyAqLw0KI2RlZmluZSAgQURDX0NSMV9FT0NJRSAgICAgICAgICAgICAgICAgICAgICAgKEFEQ19DUjFfRU9DU0lFKQ0KI2RlZmluZSAgQURDX0NSMV9KRU9DSUUgICAgICAgICAgICAgICAgICAgICAgKEFEQ19DUjFfSkVPU0lFKQ0KDQovKioqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIEFEQ19DUjIgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBBRENfQ1IyX0FET05fUG9zICAgICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBBRENfQ1IyX0FET05fTXNrICAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgQURDX0NSMl9BRE9OX1BvcykgICAgICAgIC8qITwgMHgwMDAwMDAwMSAqLw0KI2RlZmluZSBBRENfQ1IyX0FET04gICAgICAgICAgICAgICAgICAgICAgICAgQURDX0NSMl9BRE9OX01zayAgICAgICAgICAgICAgICAgIC8qITwgQURDIGVuYWJsZSAqLw0KI2RlZmluZSBBRENfQ1IyX0NPTlRfUG9zICAgICAgICAgICAgICAgICAgICAgKDFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBBRENfQ1IyX0NPTlRfTXNrICAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgQURDX0NSMl9DT05UX1BvcykgICAgICAgIC8qITwgMHgwMDAwMDAwMiAqLw0KI2RlZmluZSBBRENfQ1IyX0NPTlQgICAgICAgICAgICAgICAgICAgICAgICAgQURDX0NSMl9DT05UX01zayAgICAgICAgICAgICAgICAgIC8qITwgQURDIGdyb3VwIHJlZ3VsYXIgY29udGludW91cyBjb252ZXJzaW9uIG1vZGUgKi8NCiNkZWZpbmUgQURDX0NSMl9DRkdfUG9zICAgICAgICAgICAgICAgICAgICAgICgyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgQURDX0NSMl9DRkdfTXNrICAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IEFEQ19DUjJfQ0ZHX1BvcykgICAgICAgICAvKiE8IDB4MDAwMDAwMDQgKi8NCiNkZWZpbmUgQURDX0NSMl9DRkcgICAgICAgICAgICAgICAgICAgICAgICAgIEFEQ19DUjJfQ0ZHX01zayAgICAgICAgICAgICAgICAgICAvKiE8IEFEQyBjaGFubmVscyBiYW5rIHNlbGVjdGlvbiAqLw0KDQojZGVmaW5lIEFEQ19DUjJfREVMU19Qb3MgICAgICAgICAgICAgICAgICAgICAoNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEFEQ19DUjJfREVMU19Nc2sgICAgICAgICAgICAgICAgICAgICAoMHg3VSA8PCBBRENfQ1IyX0RFTFNfUG9zKSAgICAgICAgLyohPCAweDAwMDAwMDcwICovDQojZGVmaW5lIEFEQ19DUjJfREVMUyAgICAgICAgICAgICAgICAgICAgICAgICBBRENfQ1IyX0RFTFNfTXNrICAgICAgICAgICAgICAgICAgLyohPCBBREMgYXV0byBkZWxheSBzZWxlY3Rpb24gKi8NCiNkZWZpbmUgQURDX0NSMl9ERUxTXzAgICAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IEFEQ19DUjJfREVMU19Qb3MpICAgICAgICAvKiE8IDB4MDAwMDAwMTAgKi8NCiNkZWZpbmUgQURDX0NSMl9ERUxTXzEgICAgICAgICAgICAgICAgICAgICAgICgweDJVIDw8IEFEQ19DUjJfREVMU19Qb3MpICAgICAgICAvKiE8IDB4MDAwMDAwMjAgKi8NCiNkZWZpbmUgQURDX0NSMl9ERUxTXzIgICAgICAgICAgICAgICAgICAgICAgICgweDRVIDw8IEFEQ19DUjJfREVMU19Qb3MpICAgICAgICAvKiE8IDB4MDAwMDAwNDAgKi8NCg0KI2RlZmluZSBBRENfQ1IyX0RNQV9Qb3MgICAgICAgICAgICAgICAgICAgICAgKDhVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBBRENfQ1IyX0RNQV9Nc2sgICAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgQURDX0NSMl9ETUFfUG9zKSAgICAgICAgIC8qITwgMHgwMDAwMDEwMCAqLw0KI2RlZmluZSBBRENfQ1IyX0RNQSAgICAgICAgICAgICAgICAgICAgICAgICAgQURDX0NSMl9ETUFfTXNrICAgICAgICAgICAgICAgICAgIC8qITwgQURDIERNQSB0cmFuc2ZlciBlbmFibGUgKi8NCiNkZWZpbmUgQURDX0NSMl9ERFNfUG9zICAgICAgICAgICAgICAgICAgICAgICg5VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgQURDX0NSMl9ERFNfTXNrICAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IEFEQ19DUjJfRERTX1BvcykgICAgICAgICAvKiE8IDB4MDAwMDAyMDAgKi8NCiNkZWZpbmUgQURDX0NSMl9ERFMgICAgICAgICAgICAgICAgICAgICAgICAgIEFEQ19DUjJfRERTX01zayAgICAgICAgICAgICAgICAgICAvKiE8IEFEQyBETUEgdHJhbnNmZXIgY29uZmlndXJhdGlvbiAqLw0KI2RlZmluZSBBRENfQ1IyX0VPQ1NfUG9zICAgICAgICAgICAgICAgICAgICAgKDEwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBBRENfQ1IyX0VPQ1NfTXNrICAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgQURDX0NSMl9FT0NTX1BvcykgICAgICAgIC8qITwgMHgwMDAwMDQwMCAqLw0KI2RlZmluZSBBRENfQ1IyX0VPQ1MgICAgICAgICAgICAgICAgICAgICAgICAgQURDX0NSMl9FT0NTX01zayAgICAgICAgICAgICAgICAgIC8qITwgQURDIGVuZCBvZiB1bml0YXJ5IG9yIGVuZCBvZiBzZXF1ZW5jZSBjb252ZXJzaW9ucyBzZWxlY3Rpb24gKi8NCiNkZWZpbmUgQURDX0NSMl9BTElHTl9Qb3MgICAgICAgICAgICAgICAgICAgICgxMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgQURDX0NSMl9BTElHTl9Nc2sgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IEFEQ19DUjJfQUxJR05fUG9zKSAgICAgICAvKiE8IDB4MDAwMDA4MDAgKi8NCiNkZWZpbmUgQURDX0NSMl9BTElHTiAgICAgICAgICAgICAgICAgICAgICAgIEFEQ19DUjJfQUxJR05fTXNrICAgICAgICAgICAgICAgICAvKiE8IEFEQyBkYXRhIGFsaWduZW1lbnQgKi8NCg0KI2RlZmluZSBBRENfQ1IyX0pFWFRTRUxfUG9zICAgICAgICAgICAgICAgICAgKDE2VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBBRENfQ1IyX0pFWFRTRUxfTXNrICAgICAgICAgICAgICAgICAgKDB4RlUgPDwgQURDX0NSMl9KRVhUU0VMX1BvcykgICAgIC8qITwgMHgwMDBGMDAwMCAqLw0KI2RlZmluZSBBRENfQ1IyX0pFWFRTRUwgICAgICAgICAgICAgICAgICAgICAgQURDX0NSMl9KRVhUU0VMX01zayAgICAgICAgICAgICAgIC8qITwgQURDIGdyb3VwIGluamVjdGVkIGV4dGVybmFsIHRyaWdnZXIgc291cmNlICovDQojZGVmaW5lIEFEQ19DUjJfSkVYVFNFTF8wICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBBRENfQ1IyX0pFWFRTRUxfUG9zKSAgICAgLyohPCAweDAwMDEwMDAwICovDQojZGVmaW5lIEFEQ19DUjJfSkVYVFNFTF8xICAgICAgICAgICAgICAgICAgICAoMHgyVSA8PCBBRENfQ1IyX0pFWFRTRUxfUG9zKSAgICAgLyohPCAweDAwMDIwMDAwICovDQojZGVmaW5lIEFEQ19DUjJfSkVYVFNFTF8yICAgICAgICAgICAgICAgICAgICAoMHg0VSA8PCBBRENfQ1IyX0pFWFRTRUxfUG9zKSAgICAgLyohPCAweDAwMDQwMDAwICovDQojZGVmaW5lIEFEQ19DUjJfSkVYVFNFTF8zICAgICAgICAgICAgICAgICAgICAoMHg4VSA8PCBBRENfQ1IyX0pFWFRTRUxfUG9zKSAgICAgLyohPCAweDAwMDgwMDAwICovDQoNCiNkZWZpbmUgQURDX0NSMl9KRVhURU5fUG9zICAgICAgICAgICAgICAgICAgICgyMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgQURDX0NSMl9KRVhURU5fTXNrICAgICAgICAgICAgICAgICAgICgweDNVIDw8IEFEQ19DUjJfSkVYVEVOX1BvcykgICAgICAvKiE8IDB4MDAzMDAwMDAgKi8NCiNkZWZpbmUgQURDX0NSMl9KRVhURU4gICAgICAgICAgICAgICAgICAgICAgIEFEQ19DUjJfSkVYVEVOX01zayAgICAgICAgICAgICAgICAvKiE8IEFEQyBncm91cCBpbmplY3RlZCBleHRlcm5hbCB0cmlnZ2VyIHBvbGFyaXR5ICovDQojZGVmaW5lIEFEQ19DUjJfSkVYVEVOXzAgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBBRENfQ1IyX0pFWFRFTl9Qb3MpICAgICAgLyohPCAweDAwMTAwMDAwICovDQojZGVmaW5lIEFEQ19DUjJfSkVYVEVOXzEgICAgICAgICAgICAgICAgICAgICAoMHgyVSA8PCBBRENfQ1IyX0pFWFRFTl9Qb3MpICAgICAgLyohPCAweDAwMjAwMDAwICovDQoNCiNkZWZpbmUgQURDX0NSMl9KU1dTVEFSVF9Qb3MgICAgICAgICAgICAgICAgICgyMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgQURDX0NSMl9KU1dTVEFSVF9Nc2sgICAgICAgICAgICAgICAgICgweDFVIDw8IEFEQ19DUjJfSlNXU1RBUlRfUG9zKSAgICAvKiE8IDB4MDA0MDAwMDAgKi8NCiNkZWZpbmUgQURDX0NSMl9KU1dTVEFSVCAgICAgICAgICAgICAgICAgICAgIEFEQ19DUjJfSlNXU1RBUlRfTXNrICAgICAgICAgICAgICAvKiE8IEFEQyBncm91cCBpbmplY3RlZCBjb252ZXJzaW9uIHN0YXJ0ICovDQoNCiNkZWZpbmUgQURDX0NSMl9FWFRTRUxfUG9zICAgICAgICAgICAgICAgICAgICgyNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgQURDX0NSMl9FWFRTRUxfTXNrICAgICAgICAgICAgICAgICAgICgweEZVIDw8IEFEQ19DUjJfRVhUU0VMX1BvcykgICAgICAvKiE8IDB4MEYwMDAwMDAgKi8NCiNkZWZpbmUgQURDX0NSMl9FWFRTRUwgICAgICAgICAgICAgICAgICAgICAgIEFEQ19DUjJfRVhUU0VMX01zayAgICAgICAgICAgICAgICAvKiE8IEFEQyBncm91cCByZWd1bGFyIGV4dGVybmFsIHRyaWdnZXIgc291cmNlICovDQojZGVmaW5lIEFEQ19DUjJfRVhUU0VMXzAgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBBRENfQ1IyX0VYVFNFTF9Qb3MpICAgICAgLyohPCAweDAxMDAwMDAwICovDQojZGVmaW5lIEFEQ19DUjJfRVhUU0VMXzEgICAgICAgICAgICAgICAgICAgICAoMHgyVSA8PCBBRENfQ1IyX0VYVFNFTF9Qb3MpICAgICAgLyohPCAweDAyMDAwMDAwICovDQojZGVmaW5lIEFEQ19DUjJfRVhUU0VMXzIgICAgICAgICAgICAgICAgICAgICAoMHg0VSA8PCBBRENfQ1IyX0VYVFNFTF9Qb3MpICAgICAgLyohPCAweDA0MDAwMDAwICovDQojZGVmaW5lIEFEQ19DUjJfRVhUU0VMXzMgICAgICAgICAgICAgICAgICAgICAoMHg4VSA8PCBBRENfQ1IyX0VYVFNFTF9Qb3MpICAgICAgLyohPCAweDA4MDAwMDAwICovDQoNCiNkZWZpbmUgQURDX0NSMl9FWFRFTl9Qb3MgICAgICAgICAgICAgICAgICAgICgyOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgQURDX0NSMl9FWFRFTl9Nc2sgICAgICAgICAgICAgICAgICAgICgweDNVIDw8IEFEQ19DUjJfRVhURU5fUG9zKSAgICAgICAvKiE8IDB4MzAwMDAwMDAgKi8NCiNkZWZpbmUgQURDX0NSMl9FWFRFTiAgICAgICAgICAgICAgICAgICAgICAgIEFEQ19DUjJfRVhURU5fTXNrICAgICAgICAgICAgICAgICAvKiE8IEFEQyBncm91cCByZWd1bGFyIGV4dGVybmFsIHRyaWdnZXIgcG9sYXJpdHkgKi8NCiNkZWZpbmUgQURDX0NSMl9FWFRFTl8wICAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IEFEQ19DUjJfRVhURU5fUG9zKSAgICAgICAvKiE8IDB4MTAwMDAwMDAgKi8NCiNkZWZpbmUgQURDX0NSMl9FWFRFTl8xICAgICAgICAgICAgICAgICAgICAgICgweDJVIDw8IEFEQ19DUjJfRVhURU5fUG9zKSAgICAgICAvKiE8IDB4MjAwMDAwMDAgKi8NCg0KI2RlZmluZSBBRENfQ1IyX1NXU1RBUlRfUG9zICAgICAgICAgICAgICAgICAgKDMwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBBRENfQ1IyX1NXU1RBUlRfTXNrICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgQURDX0NSMl9TV1NUQVJUX1BvcykgICAgIC8qITwgMHg0MDAwMDAwMCAqLw0KI2RlZmluZSBBRENfQ1IyX1NXU1RBUlQgICAgICAgICAgICAgICAgICAgICAgQURDX0NSMl9TV1NUQVJUX01zayAgICAgICAgICAgICAgIC8qITwgQURDIGdyb3VwIHJlZ3VsYXIgY29udmVyc2lvbiBzdGFydCAqLw0KDQovKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgQURDX1NNUFIxIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBBRENfU01QUjFfU01QMjBfUG9zICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBBRENfU01QUjFfU01QMjBfTXNrICAgICAgICAgICAgICAgICAgKDB4N1UgPDwgQURDX1NNUFIxX1NNUDIwX1BvcykgICAgIC8qITwgMHgwMDAwMDAwNyAqLw0KI2RlZmluZSBBRENfU01QUjFfU01QMjAgICAgICAgICAgICAgICAgICAgICAgQURDX1NNUFIxX1NNUDIwX01zayAgICAgICAgICAgICAgIC8qITwgQURDIGNoYW5uZWwgMjAgc2FtcGxpbmcgdGltZSBzZWxlY3Rpb24gKi8NCiNkZWZpbmUgQURDX1NNUFIxX1NNUDIwXzAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IEFEQ19TTVBSMV9TTVAyMF9Qb3MpICAgICAvKiE8IDB4MDAwMDAwMDEgKi8NCiNkZWZpbmUgQURDX1NNUFIxX1NNUDIwXzEgICAgICAgICAgICAgICAgICAgICgweDJVIDw8IEFEQ19TTVBSMV9TTVAyMF9Qb3MpICAgICAvKiE8IDB4MDAwMDAwMDIgKi8NCiNkZWZpbmUgQURDX1NNUFIxX1NNUDIwXzIgICAgICAgICAgICAgICAgICAgICgweDRVIDw8IEFEQ19TTVBSMV9TTVAyMF9Qb3MpICAgICAvKiE8IDB4MDAwMDAwMDQgKi8NCg0KI2RlZmluZSBBRENfU01QUjFfU01QMjFfUG9zICAgICAgICAgICAgICAgICAgKDNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBBRENfU01QUjFfU01QMjFfTXNrICAgICAgICAgICAgICAgICAgKDB4N1UgPDwgQURDX1NNUFIxX1NNUDIxX1BvcykgICAgIC8qITwgMHgwMDAwMDAzOCAqLw0KI2RlZmluZSBBRENfU01QUjFfU01QMjEgICAgICAgICAgICAgICAgICAgICAgQURDX1NNUFIxX1NNUDIxX01zayAgICAgICAgICAgICAgIC8qITwgQURDIGNoYW5uZWwgMjEgc2FtcGxpbmcgdGltZSBzZWxlY3Rpb24gKi8NCiNkZWZpbmUgQURDX1NNUFIxX1NNUDIxXzAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IEFEQ19TTVBSMV9TTVAyMV9Qb3MpICAgICAvKiE8IDB4MDAwMDAwMDggKi8NCiNkZWZpbmUgQURDX1NNUFIxX1NNUDIxXzEgICAgICAgICAgICAgICAgICAgICgweDJVIDw8IEFEQ19TTVBSMV9TTVAyMV9Qb3MpICAgICAvKiE8IDB4MDAwMDAwMTAgKi8NCiNkZWZpbmUgQURDX1NNUFIxX1NNUDIxXzIgICAgICAgICAgICAgICAgICAgICgweDRVIDw8IEFEQ19TTVBSMV9TTVAyMV9Qb3MpICAgICAvKiE8IDB4MDAwMDAwMjAgKi8NCg0KI2RlZmluZSBBRENfU01QUjFfU01QMjJfUG9zICAgICAgICAgICAgICAgICAgKDZVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBBRENfU01QUjFfU01QMjJfTXNrICAgICAgICAgICAgICAgICAgKDB4N1UgPDwgQURDX1NNUFIxX1NNUDIyX1BvcykgICAgIC8qITwgMHgwMDAwMDFDMCAqLw0KI2RlZmluZSBBRENfU01QUjFfU01QMjIgICAgICAgICAgICAgICAgICAgICAgQURDX1NNUFIxX1NNUDIyX01zayAgICAgICAgICAgICAgIC8qITwgQURDIGNoYW5uZWwgMjIgc2FtcGxpbmcgdGltZSBzZWxlY3Rpb24gKi8NCiNkZWZpbmUgQURDX1NNUFIxX1NNUDIyXzAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IEFEQ19TTVBSMV9TTVAyMl9Qb3MpICAgICAvKiE8IDB4MDAwMDAwNDAgKi8NCiNkZWZpbmUgQURDX1NNUFIxX1NNUDIyXzEgICAgICAgICAgICAgICAgICAgICgweDJVIDw8IEFEQ19TTVBSMV9TTVAyMl9Qb3MpICAgICAvKiE8IDB4MDAwMDAwODAgKi8NCiNkZWZpbmUgQURDX1NNUFIxX1NNUDIyXzIgICAgICAgICAgICAgICAgICAgICgweDRVIDw8IEFEQ19TTVBSMV9TTVAyMl9Qb3MpICAgICAvKiE8IDB4MDAwMDAxMDAgKi8NCg0KI2RlZmluZSBBRENfU01QUjFfU01QMjNfUG9zICAgICAgICAgICAgICAgICAgKDlVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBBRENfU01QUjFfU01QMjNfTXNrICAgICAgICAgICAgICAgICAgKDB4N1UgPDwgQURDX1NNUFIxX1NNUDIzX1BvcykgICAgIC8qITwgMHgwMDAwMEUwMCAqLw0KI2RlZmluZSBBRENfU01QUjFfU01QMjMgICAgICAgICAgICAgICAgICAgICAgQURDX1NNUFIxX1NNUDIzX01zayAgICAgICAgICAgICAgIC8qITwgQURDIGNoYW5uZWwgMjMgc2FtcGxpbmcgdGltZSBzZWxlY3Rpb24gKi8NCiNkZWZpbmUgQURDX1NNUFIxX1NNUDIzXzAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IEFEQ19TTVBSMV9TTVAyM19Qb3MpICAgICAvKiE8IDB4MDAwMDAyMDAgKi8NCiNkZWZpbmUgQURDX1NNUFIxX1NNUDIzXzEgICAgICAgICAgICAgICAgICAgICgweDJVIDw8IEFEQ19TTVBSMV9TTVAyM19Qb3MpICAgICAvKiE8IDB4MDAwMDA0MDAgKi8NCiNkZWZpbmUgQURDX1NNUFIxX1NNUDIzXzIgICAgICAgICAgICAgICAgICAgICgweDRVIDw8IEFEQ19TTVBSMV9TTVAyM19Qb3MpICAgICAvKiE8IDB4MDAwMDA4MDAgKi8NCg0KI2RlZmluZSBBRENfU01QUjFfU01QMjRfUG9zICAgICAgICAgICAgICAgICAgKDEyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBBRENfU01QUjFfU01QMjRfTXNrICAgICAgICAgICAgICAgICAgKDB4N1UgPDwgQURDX1NNUFIxX1NNUDI0X1BvcykgICAgIC8qITwgMHgwMDAwNzAwMCAqLw0KI2RlZmluZSBBRENfU01QUjFfU01QMjQgICAgICAgICAgICAgICAgICAgICAgQURDX1NNUFIxX1NNUDI0X01zayAgICAgICAgICAgICAgIC8qITwgQURDIGNoYW5uZWwgMjQgc2FtcGxpbmcgdGltZSBzZWxlY3Rpb24gKi8NCiNkZWZpbmUgQURDX1NNUFIxX1NNUDI0XzAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IEFEQ19TTVBSMV9TTVAyNF9Qb3MpICAgICAvKiE8IDB4MDAwMDEwMDAgKi8NCiNkZWZpbmUgQURDX1NNUFIxX1NNUDI0XzEgICAgICAgICAgICAgICAgICAgICgweDJVIDw8IEFEQ19TTVBSMV9TTVAyNF9Qb3MpICAgICAvKiE8IDB4MDAwMDIwMDAgKi8NCiNkZWZpbmUgQURDX1NNUFIxX1NNUDI0XzIgICAgICAgICAgICAgICAgICAgICgweDRVIDw8IEFEQ19TTVBSMV9TTVAyNF9Qb3MpICAgICAvKiE8IDB4MDAwMDQwMDAgKi8NCg0KI2RlZmluZSBBRENfU01QUjFfU01QMjVfUG9zICAgICAgICAgICAgICAgICAgKDE1VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBBRENfU01QUjFfU01QMjVfTXNrICAgICAgICAgICAgICAgICAgKDB4N1UgPDwgQURDX1NNUFIxX1NNUDI1X1BvcykgICAgIC8qITwgMHgwMDAzODAwMCAqLw0KI2RlZmluZSBBRENfU01QUjFfU01QMjUgICAgICAgICAgICAgICAgICAgICAgQURDX1NNUFIxX1NNUDI1X01zayAgICAgICAgICAgICAgIC8qITwgQURDIGNoYW5uZWwgMjUgc2FtcGxpbmcgdGltZSBzZWxlY3Rpb24gKi8NCiNkZWZpbmUgQURDX1NNUFIxX1NNUDI1XzAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IEFEQ19TTVBSMV9TTVAyNV9Qb3MpICAgICAvKiE8IDB4MDAwMDgwMDAgKi8NCiNkZWZpbmUgQURDX1NNUFIxX1NNUDI1XzEgICAgICAgICAgICAgICAgICAgICgweDJVIDw8IEFEQ19TTVBSMV9TTVAyNV9Qb3MpICAgICAvKiE8IDB4MDAwMTAwMDAgKi8NCiNkZWZpbmUgQURDX1NNUFIxX1NNUDI1XzIgICAgICAgICAgICAgICAgICAgICgweDRVIDw8IEFEQ19TTVBSMV9TTVAyNV9Qb3MpICAgICAvKiE8IDB4MDAwMjAwMDAgKi8NCg0KI2RlZmluZSBBRENfU01QUjFfU01QMjZfUG9zICAgICAgICAgICAgICAgICAgKDE4VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBBRENfU01QUjFfU01QMjZfTXNrICAgICAgICAgICAgICAgICAgKDB4N1UgPDwgQURDX1NNUFIxX1NNUDI2X1BvcykgICAgIC8qITwgMHgwMDFDMDAwMCAqLw0KI2RlZmluZSBBRENfU01QUjFfU01QMjYgICAgICAgICAgICAgICAgICAgICAgQURDX1NNUFIxX1NNUDI2X01zayAgICAgICAgICAgICAgIC8qITwgQURDIGNoYW5uZWwgMjYgc2FtcGxpbmcgdGltZSBzZWxlY3Rpb24gKi8NCiNkZWZpbmUgQURDX1NNUFIxX1NNUDI2XzAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IEFEQ19TTVBSMV9TTVAyNl9Qb3MpICAgICAvKiE8IDB4MDAwNDAwMDAgKi8NCiNkZWZpbmUgQURDX1NNUFIxX1NNUDI2XzEgICAgICAgICAgICAgICAgICAgICgweDJVIDw8IEFEQ19TTVBSMV9TTVAyNl9Qb3MpICAgICAvKiE8IDB4MDAwODAwMDAgKi8NCiNkZWZpbmUgQURDX1NNUFIxX1NNUDI2XzIgICAgICAgICAgICAgICAgICAgICgweDRVIDw8IEFEQ19TTVBSMV9TTVAyNl9Qb3MpICAgICAvKiE8IDB4MDAxMDAwMDAgKi8NCg0KI2RlZmluZSBBRENfU01QUjFfU01QMjdfUG9zICAgICAgICAgICAgICAgICAgKDIxVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBBRENfU01QUjFfU01QMjdfTXNrICAgICAgICAgICAgICAgICAgKDB4N1UgPDwgQURDX1NNUFIxX1NNUDI3X1BvcykgICAgIC8qITwgMHgwMEUwMDAwMCAqLw0KI2RlZmluZSBBRENfU01QUjFfU01QMjcgICAgICAgICAgICAgICAgICAgICAgQURDX1NNUFIxX1NNUDI3X01zayAgICAgICAgICAgICAgIC8qITwgQURDIGNoYW5uZWwgMjcgc2FtcGxpbmcgdGltZSBzZWxlY3Rpb24gKi8NCiNkZWZpbmUgQURDX1NNUFIxX1NNUDI3XzAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IEFEQ19TTVBSMV9TTVAyN19Qb3MpICAgICAvKiE8IDB4MDAyMDAwMDAgKi8NCiNkZWZpbmUgQURDX1NNUFIxX1NNUDI3XzEgICAgICAgICAgICAgICAgICAgICgweDJVIDw8IEFEQ19TTVBSMV9TTVAyN19Qb3MpICAgICAvKiE8IDB4MDA0MDAwMDAgKi8NCiNkZWZpbmUgQURDX1NNUFIxX1NNUDI3XzIgICAgICAgICAgICAgICAgICAgICgweDRVIDw8IEFEQ19TTVBSMV9TTVAyN19Qb3MpICAgICAvKiE8IDB4MDA4MDAwMDAgKi8NCg0KI2RlZmluZSBBRENfU01QUjFfU01QMjhfUG9zICAgICAgICAgICAgICAgICAgKDI0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBBRENfU01QUjFfU01QMjhfTXNrICAgICAgICAgICAgICAgICAgKDB4N1UgPDwgQURDX1NNUFIxX1NNUDI4X1BvcykgICAgIC8qITwgMHgwNzAwMDAwMCAqLw0KI2RlZmluZSBBRENfU01QUjFfU01QMjggICAgICAgICAgICAgICAgICAgICAgQURDX1NNUFIxX1NNUDI4X01zayAgICAgICAgICAgICAgIC8qITwgQURDIGNoYW5uZWwgMjggc2FtcGxpbmcgdGltZSBzZWxlY3Rpb24gKi8NCiNkZWZpbmUgQURDX1NNUFIxX1NNUDI4XzAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IEFEQ19TTVBSMV9TTVAyOF9Qb3MpICAgICAvKiE8IDB4MDEwMDAwMDAgKi8NCiNkZWZpbmUgQURDX1NNUFIxX1NNUDI4XzEgICAgICAgICAgICAgICAgICAgICgweDJVIDw8IEFEQ19TTVBSMV9TTVAyOF9Qb3MpICAgICAvKiE8IDB4MDIwMDAwMDAgKi8NCiNkZWZpbmUgQURDX1NNUFIxX1NNUDI4XzIgICAgICAgICAgICAgICAgICAgICgweDRVIDw8IEFEQ19TTVBSMV9TTVAyOF9Qb3MpICAgICAvKiE8IDB4MDQwMDAwMDAgKi8NCg0KI2RlZmluZSBBRENfU01QUjFfU01QMjlfUG9zICAgICAgICAgICAgICAgICAgKDI3VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBBRENfU01QUjFfU01QMjlfTXNrICAgICAgICAgICAgICAgICAgKDB4N1UgPDwgQURDX1NNUFIxX1NNUDI5X1BvcykgICAgIC8qITwgMHgzODAwMDAwMCAqLw0KI2RlZmluZSBBRENfU01QUjFfU01QMjkgICAgICAgICAgICAgICAgICAgICAgQURDX1NNUFIxX1NNUDI5X01zayAgICAgICAgICAgICAgIC8qITwgQURDIGNoYW5uZWwgMjkgc2FtcGxpbmcgdGltZSBzZWxlY3Rpb24gKi8NCiNkZWZpbmUgQURDX1NNUFIxX1NNUDI5XzAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IEFEQ19TTVBSMV9TTVAyOV9Qb3MpICAgICAvKiE8IDB4MDgwMDAwMDAgKi8NCiNkZWZpbmUgQURDX1NNUFIxX1NNUDI5XzEgICAgICAgICAgICAgICAgICAgICgweDJVIDw8IEFEQ19TTVBSMV9TTVAyOV9Qb3MpICAgICAvKiE8IDB4MTAwMDAwMDAgKi8NCiNkZWZpbmUgQURDX1NNUFIxX1NNUDI5XzIgICAgICAgICAgICAgICAgICAgICgweDRVIDw8IEFEQ19TTVBSMV9TTVAyOV9Qb3MpICAgICAvKiE8IDB4MjAwMDAwMDAgKi8NCg0KLyoqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIEFEQ19TTVBSMiByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgQURDX1NNUFIyX1NNUDEwX1BvcyAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgQURDX1NNUFIyX1NNUDEwX01zayAgICAgICAgICAgICAgICAgICgweDdVIDw8IEFEQ19TTVBSMl9TTVAxMF9Qb3MpICAgICAvKiE8IDB4MDAwMDAwMDcgKi8NCiNkZWZpbmUgQURDX1NNUFIyX1NNUDEwICAgICAgICAgICAgICAgICAgICAgIEFEQ19TTVBSMl9TTVAxMF9Nc2sgICAgICAgICAgICAgICAvKiE8IEFEQyBjaGFubmVsIDEwIHNhbXBsaW5nIHRpbWUgc2VsZWN0aW9uICovDQojZGVmaW5lIEFEQ19TTVBSMl9TTVAxMF8wICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBBRENfU01QUjJfU01QMTBfUG9zKSAgICAgLyohPCAweDAwMDAwMDAxICovDQojZGVmaW5lIEFEQ19TTVBSMl9TTVAxMF8xICAgICAgICAgICAgICAgICAgICAoMHgyVSA8PCBBRENfU01QUjJfU01QMTBfUG9zKSAgICAgLyohPCAweDAwMDAwMDAyICovDQojZGVmaW5lIEFEQ19TTVBSMl9TTVAxMF8yICAgICAgICAgICAgICAgICAgICAoMHg0VSA8PCBBRENfU01QUjJfU01QMTBfUG9zKSAgICAgLyohPCAweDAwMDAwMDA0ICovDQoNCiNkZWZpbmUgQURDX1NNUFIyX1NNUDExX1BvcyAgICAgICAgICAgICAgICAgICgzVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgQURDX1NNUFIyX1NNUDExX01zayAgICAgICAgICAgICAgICAgICgweDdVIDw8IEFEQ19TTVBSMl9TTVAxMV9Qb3MpICAgICAvKiE8IDB4MDAwMDAwMzggKi8NCiNkZWZpbmUgQURDX1NNUFIyX1NNUDExICAgICAgICAgICAgICAgICAgICAgIEFEQ19TTVBSMl9TTVAxMV9Nc2sgICAgICAgICAgICAgICAvKiE8IEFEQyBjaGFubmVsIDExIHNhbXBsaW5nIHRpbWUgc2VsZWN0aW9uICovDQojZGVmaW5lIEFEQ19TTVBSMl9TTVAxMV8wICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBBRENfU01QUjJfU01QMTFfUG9zKSAgICAgLyohPCAweDAwMDAwMDA4ICovDQojZGVmaW5lIEFEQ19TTVBSMl9TTVAxMV8xICAgICAgICAgICAgICAgICAgICAoMHgyVSA8PCBBRENfU01QUjJfU01QMTFfUG9zKSAgICAgLyohPCAweDAwMDAwMDEwICovDQojZGVmaW5lIEFEQ19TTVBSMl9TTVAxMV8yICAgICAgICAgICAgICAgICAgICAoMHg0VSA8PCBBRENfU01QUjJfU01QMTFfUG9zKSAgICAgLyohPCAweDAwMDAwMDIwICovDQoNCiNkZWZpbmUgQURDX1NNUFIyX1NNUDEyX1BvcyAgICAgICAgICAgICAgICAgICg2VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgQURDX1NNUFIyX1NNUDEyX01zayAgICAgICAgICAgICAgICAgICgweDdVIDw8IEFEQ19TTVBSMl9TTVAxMl9Qb3MpICAgICAvKiE8IDB4MDAwMDAxQzAgKi8NCiNkZWZpbmUgQURDX1NNUFIyX1NNUDEyICAgICAgICAgICAgICAgICAgICAgIEFEQ19TTVBSMl9TTVAxMl9Nc2sgICAgICAgICAgICAgICAvKiE8IEFEQyBjaGFubmVsIDEyIHNhbXBsaW5nIHRpbWUgc2VsZWN0aW9uICovDQojZGVmaW5lIEFEQ19TTVBSMl9TTVAxMl8wICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBBRENfU01QUjJfU01QMTJfUG9zKSAgICAgLyohPCAweDAwMDAwMDQwICovDQojZGVmaW5lIEFEQ19TTVBSMl9TTVAxMl8xICAgICAgICAgICAgICAgICAgICAoMHgyVSA8PCBBRENfU01QUjJfU01QMTJfUG9zKSAgICAgLyohPCAweDAwMDAwMDgwICovDQojZGVmaW5lIEFEQ19TTVBSMl9TTVAxMl8yICAgICAgICAgICAgICAgICAgICAoMHg0VSA8PCBBRENfU01QUjJfU01QMTJfUG9zKSAgICAgLyohPCAweDAwMDAwMTAwICovDQoNCiNkZWZpbmUgQURDX1NNUFIyX1NNUDEzX1BvcyAgICAgICAgICAgICAgICAgICg5VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgQURDX1NNUFIyX1NNUDEzX01zayAgICAgICAgICAgICAgICAgICgweDdVIDw8IEFEQ19TTVBSMl9TTVAxM19Qb3MpICAgICAvKiE8IDB4MDAwMDBFMDAgKi8NCiNkZWZpbmUgQURDX1NNUFIyX1NNUDEzICAgICAgICAgICAgICAgICAgICAgIEFEQ19TTVBSMl9TTVAxM19Nc2sgICAgICAgICAgICAgICAvKiE8IEFEQyBjaGFubmVsIDEzIHNhbXBsaW5nIHRpbWUgc2VsZWN0aW9uICovDQojZGVmaW5lIEFEQ19TTVBSMl9TTVAxM18wICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBBRENfU01QUjJfU01QMTNfUG9zKSAgICAgLyohPCAweDAwMDAwMjAwICovDQojZGVmaW5lIEFEQ19TTVBSMl9TTVAxM18xICAgICAgICAgICAgICAgICAgICAoMHgyVSA8PCBBRENfU01QUjJfU01QMTNfUG9zKSAgICAgLyohPCAweDAwMDAwNDAwICovDQojZGVmaW5lIEFEQ19TTVBSMl9TTVAxM18yICAgICAgICAgICAgICAgICAgICAoMHg0VSA8PCBBRENfU01QUjJfU01QMTNfUG9zKSAgICAgLyohPCAweDAwMDAwODAwICovDQoNCiNkZWZpbmUgQURDX1NNUFIyX1NNUDE0X1BvcyAgICAgICAgICAgICAgICAgICgxMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgQURDX1NNUFIyX1NNUDE0X01zayAgICAgICAgICAgICAgICAgICgweDdVIDw8IEFEQ19TTVBSMl9TTVAxNF9Qb3MpICAgICAvKiE8IDB4MDAwMDcwMDAgKi8NCiNkZWZpbmUgQURDX1NNUFIyX1NNUDE0ICAgICAgICAgICAgICAgICAgICAgIEFEQ19TTVBSMl9TTVAxNF9Nc2sgICAgICAgICAgICAgICAvKiE8IEFEQyBjaGFubmVsIDE0IHNhbXBsaW5nIHRpbWUgc2VsZWN0aW9uICovDQojZGVmaW5lIEFEQ19TTVBSMl9TTVAxNF8wICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBBRENfU01QUjJfU01QMTRfUG9zKSAgICAgLyohPCAweDAwMDAxMDAwICovDQojZGVmaW5lIEFEQ19TTVBSMl9TTVAxNF8xICAgICAgICAgICAgICAgICAgICAoMHgyVSA8PCBBRENfU01QUjJfU01QMTRfUG9zKSAgICAgLyohPCAweDAwMDAyMDAwICovDQojZGVmaW5lIEFEQ19TTVBSMl9TTVAxNF8yICAgICAgICAgICAgICAgICAgICAoMHg0VSA8PCBBRENfU01QUjJfU01QMTRfUG9zKSAgICAgLyohPCAweDAwMDA0MDAwICovDQoNCiNkZWZpbmUgQURDX1NNUFIyX1NNUDE1X1BvcyAgICAgICAgICAgICAgICAgICgxNVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgQURDX1NNUFIyX1NNUDE1X01zayAgICAgICAgICAgICAgICAgICgweDdVIDw8IEFEQ19TTVBSMl9TTVAxNV9Qb3MpICAgICAvKiE8IDB4MDAwMzgwMDAgKi8NCiNkZWZpbmUgQURDX1NNUFIyX1NNUDE1ICAgICAgICAgICAgICAgICAgICAgIEFEQ19TTVBSMl9TTVAxNV9Nc2sgICAgICAgICAgICAgICAvKiE8IEFEQyBjaGFubmVsIDUgc2FtcGxpbmcgdGltZSBzZWxlY3Rpb24gKi8NCiNkZWZpbmUgQURDX1NNUFIyX1NNUDE1XzAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IEFEQ19TTVBSMl9TTVAxNV9Qb3MpICAgICAvKiE8IDB4MDAwMDgwMDAgKi8NCiNkZWZpbmUgQURDX1NNUFIyX1NNUDE1XzEgICAgICAgICAgICAgICAgICAgICgweDJVIDw8IEFEQ19TTVBSMl9TTVAxNV9Qb3MpICAgICAvKiE8IDB4MDAwMTAwMDAgKi8NCiNkZWZpbmUgQURDX1NNUFIyX1NNUDE1XzIgICAgICAgICAgICAgICAgICAgICgweDRVIDw8IEFEQ19TTVBSMl9TTVAxNV9Qb3MpICAgICAvKiE8IDB4MDAwMjAwMDAgKi8NCg0KI2RlZmluZSBBRENfU01QUjJfU01QMTZfUG9zICAgICAgICAgICAgICAgICAgKDE4VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBBRENfU01QUjJfU01QMTZfTXNrICAgICAgICAgICAgICAgICAgKDB4N1UgPDwgQURDX1NNUFIyX1NNUDE2X1BvcykgICAgIC8qITwgMHgwMDFDMDAwMCAqLw0KI2RlZmluZSBBRENfU01QUjJfU01QMTYgICAgICAgICAgICAgICAgICAgICAgQURDX1NNUFIyX1NNUDE2X01zayAgICAgICAgICAgICAgIC8qITwgQURDIGNoYW5uZWwgMTYgc2FtcGxpbmcgdGltZSBzZWxlY3Rpb24gKi8NCiNkZWZpbmUgQURDX1NNUFIyX1NNUDE2XzAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IEFEQ19TTVBSMl9TTVAxNl9Qb3MpICAgICAvKiE8IDB4MDAwNDAwMDAgKi8NCiNkZWZpbmUgQURDX1NNUFIyX1NNUDE2XzEgICAgICAgICAgICAgICAgICAgICgweDJVIDw8IEFEQ19TTVBSMl9TTVAxNl9Qb3MpICAgICAvKiE8IDB4MDAwODAwMDAgKi8NCiNkZWZpbmUgQURDX1NNUFIyX1NNUDE2XzIgICAgICAgICAgICAgICAgICAgICgweDRVIDw8IEFEQ19TTVBSMl9TTVAxNl9Qb3MpICAgICAvKiE8IDB4MDAxMDAwMDAgKi8NCg0KI2RlZmluZSBBRENfU01QUjJfU01QMTdfUG9zICAgICAgICAgICAgICAgICAgKDIxVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBBRENfU01QUjJfU01QMTdfTXNrICAgICAgICAgICAgICAgICAgKDB4N1UgPDwgQURDX1NNUFIyX1NNUDE3X1BvcykgICAgIC8qITwgMHgwMEUwMDAwMCAqLw0KI2RlZmluZSBBRENfU01QUjJfU01QMTcgICAgICAgICAgICAgICAgICAgICAgQURDX1NNUFIyX1NNUDE3X01zayAgICAgICAgICAgICAgIC8qITwgQURDIGNoYW5uZWwgMTcgc2FtcGxpbmcgdGltZSBzZWxlY3Rpb24gKi8NCiNkZWZpbmUgQURDX1NNUFIyX1NNUDE3XzAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IEFEQ19TTVBSMl9TTVAxN19Qb3MpICAgICAvKiE8IDB4MDAyMDAwMDAgKi8NCiNkZWZpbmUgQURDX1NNUFIyX1NNUDE3XzEgICAgICAgICAgICAgICAgICAgICgweDJVIDw8IEFEQ19TTVBSMl9TTVAxN19Qb3MpICAgICAvKiE8IDB4MDA0MDAwMDAgKi8NCiNkZWZpbmUgQURDX1NNUFIyX1NNUDE3XzIgICAgICAgICAgICAgICAgICAgICgweDRVIDw8IEFEQ19TTVBSMl9TTVAxN19Qb3MpICAgICAvKiE8IDB4MDA4MDAwMDAgKi8NCg0KI2RlZmluZSBBRENfU01QUjJfU01QMThfUG9zICAgICAgICAgICAgICAgICAgKDI0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBBRENfU01QUjJfU01QMThfTXNrICAgICAgICAgICAgICAgICAgKDB4N1UgPDwgQURDX1NNUFIyX1NNUDE4X1BvcykgICAgIC8qITwgMHgwNzAwMDAwMCAqLw0KI2RlZmluZSBBRENfU01QUjJfU01QMTggICAgICAgICAgICAgICAgICAgICAgQURDX1NNUFIyX1NNUDE4X01zayAgICAgICAgICAgICAgIC8qITwgQURDIGNoYW5uZWwgMTggc2FtcGxpbmcgdGltZSBzZWxlY3Rpb24gKi8NCiNkZWZpbmUgQURDX1NNUFIyX1NNUDE4XzAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IEFEQ19TTVBSMl9TTVAxOF9Qb3MpICAgICAvKiE8IDB4MDEwMDAwMDAgKi8NCiNkZWZpbmUgQURDX1NNUFIyX1NNUDE4XzEgICAgICAgICAgICAgICAgICAgICgweDJVIDw8IEFEQ19TTVBSMl9TTVAxOF9Qb3MpICAgICAvKiE8IDB4MDIwMDAwMDAgKi8NCiNkZWZpbmUgQURDX1NNUFIyX1NNUDE4XzIgICAgICAgICAgICAgICAgICAgICgweDRVIDw8IEFEQ19TTVBSMl9TTVAxOF9Qb3MpICAgICAvKiE8IDB4MDQwMDAwMDAgKi8NCg0KI2RlZmluZSBBRENfU01QUjJfU01QMTlfUG9zICAgICAgICAgICAgICAgICAgKDI3VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBBRENfU01QUjJfU01QMTlfTXNrICAgICAgICAgICAgICAgICAgKDB4N1UgPDwgQURDX1NNUFIyX1NNUDE5X1BvcykgICAgIC8qITwgMHgzODAwMDAwMCAqLw0KI2RlZmluZSBBRENfU01QUjJfU01QMTkgICAgICAgICAgICAgICAgICAgICAgQURDX1NNUFIyX1NNUDE5X01zayAgICAgICAgICAgICAgIC8qITwgQURDIGNoYW5uZWwgMTkgc2FtcGxpbmcgdGltZSBzZWxlY3Rpb24gKi8NCiNkZWZpbmUgQURDX1NNUFIyX1NNUDE5XzAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IEFEQ19TTVBSMl9TTVAxOV9Qb3MpICAgICAvKiE8IDB4MDgwMDAwMDAgKi8NCiNkZWZpbmUgQURDX1NNUFIyX1NNUDE5XzEgICAgICAgICAgICAgICAgICAgICgweDJVIDw8IEFEQ19TTVBSMl9TTVAxOV9Qb3MpICAgICAvKiE8IDB4MTAwMDAwMDAgKi8NCiNkZWZpbmUgQURDX1NNUFIyX1NNUDE5XzIgICAgICAgICAgICAgICAgICAgICgweDRVIDw8IEFEQ19TTVBSMl9TTVAxOV9Qb3MpICAgICAvKiE8IDB4MjAwMDAwMDAgKi8NCg0KLyoqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIEFEQ19TTVBSMyByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgQURDX1NNUFIzX1NNUDBfUG9zICAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgQURDX1NNUFIzX1NNUDBfTXNrICAgICAgICAgICAgICAgICAgICgweDdVIDw8IEFEQ19TTVBSM19TTVAwX1BvcykgICAgICAvKiE8IDB4MDAwMDAwMDcgKi8NCiNkZWZpbmUgQURDX1NNUFIzX1NNUDAgICAgICAgICAgICAgICAgICAgICAgIEFEQ19TTVBSM19TTVAwX01zayAgICAgICAgICAgICAgICAvKiE8IEFEQyBjaGFubmVsIDAgc2FtcGxpbmcgdGltZSBzZWxlY3Rpb24gKi8NCiNkZWZpbmUgQURDX1NNUFIzX1NNUDBfMCAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IEFEQ19TTVBSM19TTVAwX1BvcykgICAgICAvKiE8IDB4MDAwMDAwMDEgKi8NCiNkZWZpbmUgQURDX1NNUFIzX1NNUDBfMSAgICAgICAgICAgICAgICAgICAgICgweDJVIDw8IEFEQ19TTVBSM19TTVAwX1BvcykgICAgICAvKiE8IDB4MDAwMDAwMDIgKi8NCiNkZWZpbmUgQURDX1NNUFIzX1NNUDBfMiAgICAgICAgICAgICAgICAgICAgICgweDRVIDw8IEFEQ19TTVBSM19TTVAwX1BvcykgICAgICAvKiE8IDB4MDAwMDAwMDQgKi8NCiANCiNkZWZpbmUgQURDX1NNUFIzX1NNUDFfUG9zICAgICAgICAgICAgICAgICAgICgzVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgQURDX1NNUFIzX1NNUDFfTXNrICAgICAgICAgICAgICAgICAgICgweDdVIDw8IEFEQ19TTVBSM19TTVAxX1BvcykgICAgICAvKiE8IDB4MDAwMDAwMzggKi8NCiNkZWZpbmUgQURDX1NNUFIzX1NNUDEgICAgICAgICAgICAgICAgICAgICAgIEFEQ19TTVBSM19TTVAxX01zayAgICAgICAgICAgICAgICAvKiE8IEFEQyBjaGFubmVsIDEgc2FtcGxpbmcgdGltZSBzZWxlY3Rpb24gKi8NCiNkZWZpbmUgQURDX1NNUFIzX1NNUDFfMCAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IEFEQ19TTVBSM19TTVAxX1BvcykgICAgICAvKiE8IDB4MDAwMDAwMDggKi8NCiNkZWZpbmUgQURDX1NNUFIzX1NNUDFfMSAgICAgICAgICAgICAgICAgICAgICgweDJVIDw8IEFEQ19TTVBSM19TTVAxX1BvcykgICAgICAvKiE8IDB4MDAwMDAwMTAgKi8NCiNkZWZpbmUgQURDX1NNUFIzX1NNUDFfMiAgICAgICAgICAgICAgICAgICAgICgweDRVIDw8IEFEQ19TTVBSM19TTVAxX1BvcykgICAgICAvKiE8IDB4MDAwMDAwMjAgKi8NCg0KI2RlZmluZSBBRENfU01QUjNfU01QMl9Qb3MgICAgICAgICAgICAgICAgICAgKDZVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBBRENfU01QUjNfU01QMl9Nc2sgICAgICAgICAgICAgICAgICAgKDB4N1UgPDwgQURDX1NNUFIzX1NNUDJfUG9zKSAgICAgIC8qITwgMHgwMDAwMDFDMCAqLw0KI2RlZmluZSBBRENfU01QUjNfU01QMiAgICAgICAgICAgICAgICAgICAgICAgQURDX1NNUFIzX1NNUDJfTXNrICAgICAgICAgICAgICAgIC8qITwgQURDIGNoYW5uZWwgMiBzYW1wbGluZyB0aW1lIHNlbGVjdGlvbiAqLw0KI2RlZmluZSBBRENfU01QUjNfU01QMl8wICAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgQURDX1NNUFIzX1NNUDJfUG9zKSAgICAgIC8qITwgMHgwMDAwMDA0MCAqLw0KI2RlZmluZSBBRENfU01QUjNfU01QMl8xICAgICAgICAgICAgICAgICAgICAgKDB4MlUgPDwgQURDX1NNUFIzX1NNUDJfUG9zKSAgICAgIC8qITwgMHgwMDAwMDA4MCAqLw0KI2RlZmluZSBBRENfU01QUjNfU01QMl8yICAgICAgICAgICAgICAgICAgICAgKDB4NFUgPDwgQURDX1NNUFIzX1NNUDJfUG9zKSAgICAgIC8qITwgMHgwMDAwMDEwMCAqLw0KDQojZGVmaW5lIEFEQ19TTVBSM19TTVAzX1BvcyAgICAgICAgICAgICAgICAgICAoOVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEFEQ19TTVBSM19TTVAzX01zayAgICAgICAgICAgICAgICAgICAoMHg3VSA8PCBBRENfU01QUjNfU01QM19Qb3MpICAgICAgLyohPCAweDAwMDAwRTAwICovDQojZGVmaW5lIEFEQ19TTVBSM19TTVAzICAgICAgICAgICAgICAgICAgICAgICBBRENfU01QUjNfU01QM19Nc2sgICAgICAgICAgICAgICAgLyohPCBBREMgY2hhbm5lbCAzIHNhbXBsaW5nIHRpbWUgc2VsZWN0aW9uICovDQojZGVmaW5lIEFEQ19TTVBSM19TTVAzXzAgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBBRENfU01QUjNfU01QM19Qb3MpICAgICAgLyohPCAweDAwMDAwMjAwICovDQojZGVmaW5lIEFEQ19TTVBSM19TTVAzXzEgICAgICAgICAgICAgICAgICAgICAoMHgyVSA8PCBBRENfU01QUjNfU01QM19Qb3MpICAgICAgLyohPCAweDAwMDAwNDAwICovDQojZGVmaW5lIEFEQ19TTVBSM19TTVAzXzIgICAgICAgICAgICAgICAgICAgICAoMHg0VSA8PCBBRENfU01QUjNfU01QM19Qb3MpICAgICAgLyohPCAweDAwMDAwODAwICovDQoNCiNkZWZpbmUgQURDX1NNUFIzX1NNUDRfUG9zICAgICAgICAgICAgICAgICAgICgxMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgQURDX1NNUFIzX1NNUDRfTXNrICAgICAgICAgICAgICAgICAgICgweDdVIDw8IEFEQ19TTVBSM19TTVA0X1BvcykgICAgICAvKiE8IDB4MDAwMDcwMDAgKi8NCiNkZWZpbmUgQURDX1NNUFIzX1NNUDQgICAgICAgICAgICAgICAgICAgICAgIEFEQ19TTVBSM19TTVA0X01zayAgICAgICAgICAgICAgICAvKiE8IEFEQyBjaGFubmVsIDQgc2FtcGxpbmcgdGltZSBzZWxlY3Rpb24gKi8NCiNkZWZpbmUgQURDX1NNUFIzX1NNUDRfMCAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IEFEQ19TTVBSM19TTVA0X1BvcykgICAgICAvKiE8IDB4MDAwMDEwMDAgKi8NCiNkZWZpbmUgQURDX1NNUFIzX1NNUDRfMSAgICAgICAgICAgICAgICAgICAgICgweDJVIDw8IEFEQ19TTVBSM19TTVA0X1BvcykgICAgICAvKiE8IDB4MDAwMDIwMDAgKi8NCiNkZWZpbmUgQURDX1NNUFIzX1NNUDRfMiAgICAgICAgICAgICAgICAgICAgICgweDRVIDw8IEFEQ19TTVBSM19TTVA0X1BvcykgICAgICAvKiE8IDB4MDAwMDQwMDAgKi8NCg0KI2RlZmluZSBBRENfU01QUjNfU01QNV9Qb3MgICAgICAgICAgICAgICAgICAgKDE1VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBBRENfU01QUjNfU01QNV9Nc2sgICAgICAgICAgICAgICAgICAgKDB4N1UgPDwgQURDX1NNUFIzX1NNUDVfUG9zKSAgICAgIC8qITwgMHgwMDAzODAwMCAqLw0KI2RlZmluZSBBRENfU01QUjNfU01QNSAgICAgICAgICAgICAgICAgICAgICAgQURDX1NNUFIzX1NNUDVfTXNrICAgICAgICAgICAgICAgIC8qITwgQURDIGNoYW5uZWwgNSBzYW1wbGluZyB0aW1lIHNlbGVjdGlvbiAqLw0KI2RlZmluZSBBRENfU01QUjNfU01QNV8wICAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgQURDX1NNUFIzX1NNUDVfUG9zKSAgICAgIC8qITwgMHgwMDAwODAwMCAqLw0KI2RlZmluZSBBRENfU01QUjNfU01QNV8xICAgICAgICAgICAgICAgICAgICAgKDB4MlUgPDwgQURDX1NNUFIzX1NNUDVfUG9zKSAgICAgIC8qITwgMHgwMDAxMDAwMCAqLw0KI2RlZmluZSBBRENfU01QUjNfU01QNV8yICAgICAgICAgICAgICAgICAgICAgKDB4NFUgPDwgQURDX1NNUFIzX1NNUDVfUG9zKSAgICAgIC8qITwgMHgwMDAyMDAwMCAqLw0KDQojZGVmaW5lIEFEQ19TTVBSM19TTVA2X1BvcyAgICAgICAgICAgICAgICAgICAoMThVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEFEQ19TTVBSM19TTVA2X01zayAgICAgICAgICAgICAgICAgICAoMHg3VSA8PCBBRENfU01QUjNfU01QNl9Qb3MpICAgICAgLyohPCAweDAwMUMwMDAwICovDQojZGVmaW5lIEFEQ19TTVBSM19TTVA2ICAgICAgICAgICAgICAgICAgICAgICBBRENfU01QUjNfU01QNl9Nc2sgICAgICAgICAgICAgICAgLyohPCBBREMgY2hhbm5lbCA2IHNhbXBsaW5nIHRpbWUgc2VsZWN0aW9uICovDQojZGVmaW5lIEFEQ19TTVBSM19TTVA2XzAgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBBRENfU01QUjNfU01QNl9Qb3MpICAgICAgLyohPCAweDAwMDQwMDAwICovDQojZGVmaW5lIEFEQ19TTVBSM19TTVA2XzEgICAgICAgICAgICAgICAgICAgICAoMHgyVSA8PCBBRENfU01QUjNfU01QNl9Qb3MpICAgICAgLyohPCAweDAwMDgwMDAwICovDQojZGVmaW5lIEFEQ19TTVBSM19TTVA2XzIgICAgICAgICAgICAgICAgICAgICAoMHg0VSA8PCBBRENfU01QUjNfU01QNl9Qb3MpICAgICAgLyohPCAweDAwMTAwMDAwICovDQoNCiNkZWZpbmUgQURDX1NNUFIzX1NNUDdfUG9zICAgICAgICAgICAgICAgICAgICgyMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgQURDX1NNUFIzX1NNUDdfTXNrICAgICAgICAgICAgICAgICAgICgweDdVIDw8IEFEQ19TTVBSM19TTVA3X1BvcykgICAgICAvKiE8IDB4MDBFMDAwMDAgKi8NCiNkZWZpbmUgQURDX1NNUFIzX1NNUDcgICAgICAgICAgICAgICAgICAgICAgIEFEQ19TTVBSM19TTVA3X01zayAgICAgICAgICAgICAgICAvKiE8IEFEQyBjaGFubmVsIDcgc2FtcGxpbmcgdGltZSBzZWxlY3Rpb24gKi8NCiNkZWZpbmUgQURDX1NNUFIzX1NNUDdfMCAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IEFEQ19TTVBSM19TTVA3X1BvcykgICAgICAvKiE8IDB4MDAyMDAwMDAgKi8NCiNkZWZpbmUgQURDX1NNUFIzX1NNUDdfMSAgICAgICAgICAgICAgICAgICAgICgweDJVIDw8IEFEQ19TTVBSM19TTVA3X1BvcykgICAgICAvKiE8IDB4MDA0MDAwMDAgKi8NCiNkZWZpbmUgQURDX1NNUFIzX1NNUDdfMiAgICAgICAgICAgICAgICAgICAgICgweDRVIDw8IEFEQ19TTVBSM19TTVA3X1BvcykgICAgICAvKiE8IDB4MDA4MDAwMDAgKi8NCg0KI2RlZmluZSBBRENfU01QUjNfU01QOF9Qb3MgICAgICAgICAgICAgICAgICAgKDI0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBBRENfU01QUjNfU01QOF9Nc2sgICAgICAgICAgICAgICAgICAgKDB4N1UgPDwgQURDX1NNUFIzX1NNUDhfUG9zKSAgICAgIC8qITwgMHgwNzAwMDAwMCAqLw0KI2RlZmluZSBBRENfU01QUjNfU01QOCAgICAgICAgICAgICAgICAgICAgICAgQURDX1NNUFIzX1NNUDhfTXNrICAgICAgICAgICAgICAgIC8qITwgQURDIGNoYW5uZWwgOCBzYW1wbGluZyB0aW1lIHNlbGVjdGlvbiAqLw0KI2RlZmluZSBBRENfU01QUjNfU01QOF8wICAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgQURDX1NNUFIzX1NNUDhfUG9zKSAgICAgIC8qITwgMHgwMTAwMDAwMCAqLw0KI2RlZmluZSBBRENfU01QUjNfU01QOF8xICAgICAgICAgICAgICAgICAgICAgKDB4MlUgPDwgQURDX1NNUFIzX1NNUDhfUG9zKSAgICAgIC8qITwgMHgwMjAwMDAwMCAqLw0KI2RlZmluZSBBRENfU01QUjNfU01QOF8yICAgICAgICAgICAgICAgICAgICAgKDB4NFUgPDwgQURDX1NNUFIzX1NNUDhfUG9zKSAgICAgIC8qITwgMHgwNDAwMDAwMCAqLw0KDQojZGVmaW5lIEFEQ19TTVBSM19TTVA5X1BvcyAgICAgICAgICAgICAgICAgICAoMjdVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEFEQ19TTVBSM19TTVA5X01zayAgICAgICAgICAgICAgICAgICAoMHg3VSA8PCBBRENfU01QUjNfU01QOV9Qb3MpICAgICAgLyohPCAweDM4MDAwMDAwICovDQojZGVmaW5lIEFEQ19TTVBSM19TTVA5ICAgICAgICAgICAgICAgICAgICAgICBBRENfU01QUjNfU01QOV9Nc2sgICAgICAgICAgICAgICAgLyohPCBBREMgY2hhbm5lbCA5IHNhbXBsaW5nIHRpbWUgc2VsZWN0aW9uICovDQojZGVmaW5lIEFEQ19TTVBSM19TTVA5XzAgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBBRENfU01QUjNfU01QOV9Qb3MpICAgICAgLyohPCAweDA4MDAwMDAwICovDQojZGVmaW5lIEFEQ19TTVBSM19TTVA5XzEgICAgICAgICAgICAgICAgICAgICAoMHgyVSA8PCBBRENfU01QUjNfU01QOV9Qb3MpICAgICAgLyohPCAweDEwMDAwMDAwICovDQojZGVmaW5lIEFEQ19TTVBSM19TTVA5XzIgICAgICAgICAgICAgICAgICAgICAoMHg0VSA8PCBBRENfU01QUjNfU01QOV9Qb3MpICAgICAgLyohPCAweDIwMDAwMDAwICovDQoNCi8qKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBBRENfSk9GUjEgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIEFEQ19KT0ZSMV9KT0ZGU0VUMV9Qb3MgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEFEQ19KT0ZSMV9KT0ZGU0VUMV9Nc2sgICAgICAgICAgICAgICAoMHhGRkZVIDw8IEFEQ19KT0ZSMV9KT0ZGU0VUMV9Qb3MpIC8qITwgMHgwMDAwMEZGRiAqLw0KI2RlZmluZSBBRENfSk9GUjFfSk9GRlNFVDEgICAgICAgICAgICAgICAgICAgQURDX0pPRlIxX0pPRkZTRVQxX01zayAgICAgICAgICAgIC8qITwgQURDIGdyb3VwIGluamVjdGVkIHNlcXVlbmNlciByYW5rIDEgb2Zmc2V0IHZhbHVlICovDQoNCi8qKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBBRENfSk9GUjIgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIEFEQ19KT0ZSMl9KT0ZGU0VUMl9Qb3MgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEFEQ19KT0ZSMl9KT0ZGU0VUMl9Nc2sgICAgICAgICAgICAgICAoMHhGRkZVIDw8IEFEQ19KT0ZSMl9KT0ZGU0VUMl9Qb3MpIC8qITwgMHgwMDAwMEZGRiAqLw0KI2RlZmluZSBBRENfSk9GUjJfSk9GRlNFVDIgICAgICAgICAgICAgICAgICAgQURDX0pPRlIyX0pPRkZTRVQyX01zayAgICAgICAgICAgIC8qITwgQURDIGdyb3VwIGluamVjdGVkIHNlcXVlbmNlciByYW5rIDIgb2Zmc2V0IHZhbHVlICovDQoNCi8qKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBBRENfSk9GUjMgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIEFEQ19KT0ZSM19KT0ZGU0VUM19Qb3MgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEFEQ19KT0ZSM19KT0ZGU0VUM19Nc2sgICAgICAgICAgICAgICAoMHhGRkZVIDw8IEFEQ19KT0ZSM19KT0ZGU0VUM19Qb3MpIC8qITwgMHgwMDAwMEZGRiAqLw0KI2RlZmluZSBBRENfSk9GUjNfSk9GRlNFVDMgICAgICAgICAgICAgICAgICAgQURDX0pPRlIzX0pPRkZTRVQzX01zayAgICAgICAgICAgIC8qITwgQURDIGdyb3VwIGluamVjdGVkIHNlcXVlbmNlciByYW5rIDMgb2Zmc2V0IHZhbHVlICovDQoNCi8qKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBBRENfSk9GUjQgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIEFEQ19KT0ZSNF9KT0ZGU0VUNF9Qb3MgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEFEQ19KT0ZSNF9KT0ZGU0VUNF9Nc2sgICAgICAgICAgICAgICAoMHhGRkZVIDw8IEFEQ19KT0ZSNF9KT0ZGU0VUNF9Qb3MpIC8qITwgMHgwMDAwMEZGRiAqLw0KI2RlZmluZSBBRENfSk9GUjRfSk9GRlNFVDQgICAgICAgICAgICAgICAgICAgQURDX0pPRlI0X0pPRkZTRVQ0X01zayAgICAgICAgICAgIC8qITwgQURDIGdyb3VwIGluamVjdGVkIHNlcXVlbmNlciByYW5rIDQgb2Zmc2V0IHZhbHVlICovDQoNCi8qKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgQURDX0hUUiByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIEFEQ19IVFJfSFRfUG9zICAgICAgICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEFEQ19IVFJfSFRfTXNrICAgICAgICAgICAgICAgICAgICAgICAoMHhGRkZVIDw8IEFEQ19IVFJfSFRfUG9zKSAgICAgICAgLyohPCAweDAwMDAwRkZGICovDQojZGVmaW5lIEFEQ19IVFJfSFQgICAgICAgICAgICAgICAgICAgICAgICAgICBBRENfSFRSX0hUX01zayAgICAgICAgICAgICAgICAgICAgLyohPCBBREMgYW5hbG9nIHdhdGNoZG9nIDEgdGhyZXNob2xkIGhpZ2ggKi8NCg0KLyoqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBBRENfTFRSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgQURDX0xUUl9MVF9Qb3MgICAgICAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgQURDX0xUUl9MVF9Nc2sgICAgICAgICAgICAgICAgICAgICAgICgweEZGRlUgPDwgQURDX0xUUl9MVF9Qb3MpICAgICAgICAvKiE8IDB4MDAwMDBGRkYgKi8NCiNkZWZpbmUgQURDX0xUUl9MVCAgICAgICAgICAgICAgICAgICAgICAgICAgIEFEQ19MVFJfTFRfTXNrICAgICAgICAgICAgICAgICAgICAvKiE8IEFEQyBhbmFsb2cgd2F0Y2hkb2cgMSB0aHJlc2hvbGQgbG93ICovDQoNCi8qKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgQURDX1NRUjEgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIEFEQ19TUVIxX0xfUG9zICAgICAgICAgICAgICAgICAgICAgICAoMjBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEFEQ19TUVIxX0xfTXNrICAgICAgICAgICAgICAgICAgICAgICAoMHgxRlUgPDwgQURDX1NRUjFfTF9Qb3MpICAgICAgICAgLyohPCAweDAxRjAwMDAwICovDQojZGVmaW5lIEFEQ19TUVIxX0wgICAgICAgICAgICAgICAgICAgICAgICAgICBBRENfU1FSMV9MX01zayAgICAgICAgICAgICAgICAgICAgLyohPCBBREMgZ3JvdXAgcmVndWxhciBzZXF1ZW5jZXIgc2NhbiBsZW5ndGggKi8NCiNkZWZpbmUgQURDX1NRUjFfTF8wICAgICAgICAgICAgICAgICAgICAgICAgICgweDAxVSA8PCBBRENfU1FSMV9MX1BvcykgICAgICAgICAvKiE8IDB4MDAxMDAwMDAgKi8NCiNkZWZpbmUgQURDX1NRUjFfTF8xICAgICAgICAgICAgICAgICAgICAgICAgICgweDAyVSA8PCBBRENfU1FSMV9MX1BvcykgICAgICAgICAvKiE8IDB4MDAyMDAwMDAgKi8NCiNkZWZpbmUgQURDX1NRUjFfTF8yICAgICAgICAgICAgICAgICAgICAgICAgICgweDA0VSA8PCBBRENfU1FSMV9MX1BvcykgICAgICAgICAvKiE8IDB4MDA0MDAwMDAgKi8NCiNkZWZpbmUgQURDX1NRUjFfTF8zICAgICAgICAgICAgICAgICAgICAgICAgICgweDA4VSA8PCBBRENfU1FSMV9MX1BvcykgICAgICAgICAvKiE8IDB4MDA4MDAwMDAgKi8NCiNkZWZpbmUgQURDX1NRUjFfTF80ICAgICAgICAgICAgICAgICAgICAgICAgICgweDEwVSA8PCBBRENfU1FSMV9MX1BvcykgICAgICAgICAvKiE8IDB4MDEwMDAwMDAgKi8NCg0KI2RlZmluZSBBRENfU1FSMV9TUTI4X1BvcyAgICAgICAgICAgICAgICAgICAgKDE1VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBBRENfU1FSMV9TUTI4X01zayAgICAgICAgICAgICAgICAgICAgKDB4MUZVIDw8IEFEQ19TUVIxX1NRMjhfUG9zKSAgICAgIC8qITwgMHgwMDBGODAwMCAqLw0KI2RlZmluZSBBRENfU1FSMV9TUTI4ICAgICAgICAgICAgICAgICAgICAgICAgQURDX1NRUjFfU1EyOF9Nc2sgICAgICAgICAgICAgICAgIC8qITwgQURDIGdyb3VwIHJlZ3VsYXIgc2VxdWVuY2VyIHJhbmsgMjggKi8NCiNkZWZpbmUgQURDX1NRUjFfU1EyOF8wICAgICAgICAgICAgICAgICAgICAgICgweDAxVSA8PCBBRENfU1FSMV9TUTI4X1BvcykgICAgICAvKiE8IDB4MDAwMDgwMDAgKi8NCiNkZWZpbmUgQURDX1NRUjFfU1EyOF8xICAgICAgICAgICAgICAgICAgICAgICgweDAyVSA8PCBBRENfU1FSMV9TUTI4X1BvcykgICAgICAvKiE8IDB4MDAwMTAwMDAgKi8NCiNkZWZpbmUgQURDX1NRUjFfU1EyOF8yICAgICAgICAgICAgICAgICAgICAgICgweDA0VSA8PCBBRENfU1FSMV9TUTI4X1BvcykgICAgICAvKiE8IDB4MDAwMjAwMDAgKi8NCiNkZWZpbmUgQURDX1NRUjFfU1EyOF8zICAgICAgICAgICAgICAgICAgICAgICgweDA4VSA8PCBBRENfU1FSMV9TUTI4X1BvcykgICAgICAvKiE8IDB4MDAwNDAwMDAgKi8NCiNkZWZpbmUgQURDX1NRUjFfU1EyOF80ICAgICAgICAgICAgICAgICAgICAgICgweDEwVSA8PCBBRENfU1FSMV9TUTI4X1BvcykgICAgICAvKiE8IDB4MDAwODAwMDAgKi8NCg0KI2RlZmluZSBBRENfU1FSMV9TUTI3X1BvcyAgICAgICAgICAgICAgICAgICAgKDEwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBBRENfU1FSMV9TUTI3X01zayAgICAgICAgICAgICAgICAgICAgKDB4MUZVIDw8IEFEQ19TUVIxX1NRMjdfUG9zKSAgICAgIC8qITwgMHgwMDAwN0MwMCAqLw0KI2RlZmluZSBBRENfU1FSMV9TUTI3ICAgICAgICAgICAgICAgICAgICAgICAgQURDX1NRUjFfU1EyN19Nc2sgICAgICAgICAgICAgICAgIC8qITwgQURDIGdyb3VwIHJlZ3VsYXIgc2VxdWVuY2VyIHJhbmsgMjcgKi8NCiNkZWZpbmUgQURDX1NRUjFfU1EyN18wICAgICAgICAgICAgICAgICAgICAgICgweDAxVSA8PCBBRENfU1FSMV9TUTI3X1BvcykgICAgICAvKiE8IDB4MDAwMDA0MDAgKi8NCiNkZWZpbmUgQURDX1NRUjFfU1EyN18xICAgICAgICAgICAgICAgICAgICAgICgweDAyVSA8PCBBRENfU1FSMV9TUTI3X1BvcykgICAgICAvKiE8IDB4MDAwMDA4MDAgKi8NCiNkZWZpbmUgQURDX1NRUjFfU1EyN18yICAgICAgICAgICAgICAgICAgICAgICgweDA0VSA8PCBBRENfU1FSMV9TUTI3X1BvcykgICAgICAvKiE8IDB4MDAwMDEwMDAgKi8NCiNkZWZpbmUgQURDX1NRUjFfU1EyN18zICAgICAgICAgICAgICAgICAgICAgICgweDA4VSA8PCBBRENfU1FSMV9TUTI3X1BvcykgICAgICAvKiE8IDB4MDAwMDIwMDAgKi8NCiNkZWZpbmUgQURDX1NRUjFfU1EyN180ICAgICAgICAgICAgICAgICAgICAgICgweDEwVSA8PCBBRENfU1FSMV9TUTI3X1BvcykgICAgICAvKiE8IDB4MDAwMDQwMDAgKi8NCg0KI2RlZmluZSBBRENfU1FSMV9TUTI2X1BvcyAgICAgICAgICAgICAgICAgICAgKDVVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBBRENfU1FSMV9TUTI2X01zayAgICAgICAgICAgICAgICAgICAgKDB4MUZVIDw8IEFEQ19TUVIxX1NRMjZfUG9zKSAgICAgIC8qITwgMHgwMDAwMDNFMCAqLw0KI2RlZmluZSBBRENfU1FSMV9TUTI2ICAgICAgICAgICAgICAgICAgICAgICAgQURDX1NRUjFfU1EyNl9Nc2sgICAgICAgICAgICAgICAgIC8qITwgQURDIGdyb3VwIHJlZ3VsYXIgc2VxdWVuY2VyIHJhbmsgMjYgKi8NCiNkZWZpbmUgQURDX1NRUjFfU1EyNl8wICAgICAgICAgICAgICAgICAgICAgICgweDAxVSA8PCBBRENfU1FSMV9TUTI2X1BvcykgICAgICAvKiE8IDB4MDAwMDAwMjAgKi8NCiNkZWZpbmUgQURDX1NRUjFfU1EyNl8xICAgICAgICAgICAgICAgICAgICAgICgweDAyVSA8PCBBRENfU1FSMV9TUTI2X1BvcykgICAgICAvKiE8IDB4MDAwMDAwNDAgKi8NCiNkZWZpbmUgQURDX1NRUjFfU1EyNl8yICAgICAgICAgICAgICAgICAgICAgICgweDA0VSA8PCBBRENfU1FSMV9TUTI2X1BvcykgICAgICAvKiE8IDB4MDAwMDAwODAgKi8NCiNkZWZpbmUgQURDX1NRUjFfU1EyNl8zICAgICAgICAgICAgICAgICAgICAgICgweDA4VSA8PCBBRENfU1FSMV9TUTI2X1BvcykgICAgICAvKiE8IDB4MDAwMDAxMDAgKi8NCiNkZWZpbmUgQURDX1NRUjFfU1EyNl80ICAgICAgICAgICAgICAgICAgICAgICgweDEwVSA8PCBBRENfU1FSMV9TUTI2X1BvcykgICAgICAvKiE8IDB4MDAwMDAyMDAgKi8NCg0KI2RlZmluZSBBRENfU1FSMV9TUTI1X1BvcyAgICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBBRENfU1FSMV9TUTI1X01zayAgICAgICAgICAgICAgICAgICAgKDB4MUZVIDw8IEFEQ19TUVIxX1NRMjVfUG9zKSAgICAgIC8qITwgMHgwMDAwMDAxRiAqLw0KI2RlZmluZSBBRENfU1FSMV9TUTI1ICAgICAgICAgICAgICAgICAgICAgICAgQURDX1NRUjFfU1EyNV9Nc2sgICAgICAgICAgICAgICAgIC8qITwgQURDIGdyb3VwIHJlZ3VsYXIgc2VxdWVuY2VyIHJhbmsgMjUgKi8NCiNkZWZpbmUgQURDX1NRUjFfU1EyNV8wICAgICAgICAgICAgICAgICAgICAgICgweDAxVSA8PCBBRENfU1FSMV9TUTI1X1BvcykgICAgICAvKiE8IDB4MDAwMDAwMDEgKi8NCiNkZWZpbmUgQURDX1NRUjFfU1EyNV8xICAgICAgICAgICAgICAgICAgICAgICgweDAyVSA8PCBBRENfU1FSMV9TUTI1X1BvcykgICAgICAvKiE8IDB4MDAwMDAwMDIgKi8NCiNkZWZpbmUgQURDX1NRUjFfU1EyNV8yICAgICAgICAgICAgICAgICAgICAgICgweDA0VSA8PCBBRENfU1FSMV9TUTI1X1BvcykgICAgICAvKiE8IDB4MDAwMDAwMDQgKi8NCiNkZWZpbmUgQURDX1NRUjFfU1EyNV8zICAgICAgICAgICAgICAgICAgICAgICgweDA4VSA8PCBBRENfU1FSMV9TUTI1X1BvcykgICAgICAvKiE8IDB4MDAwMDAwMDggKi8NCiNkZWZpbmUgQURDX1NRUjFfU1EyNV80ICAgICAgICAgICAgICAgICAgICAgICgweDEwVSA8PCBBRENfU1FSMV9TUTI1X1BvcykgICAgICAvKiE8IDB4MDAwMDAwMTAgKi8NCg0KLyoqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBBRENfU1FSMiByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgQURDX1NRUjJfU1ExOV9Qb3MgICAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgQURDX1NRUjJfU1ExOV9Nc2sgICAgICAgICAgICAgICAgICAgICgweDFGVSA8PCBBRENfU1FSMl9TUTE5X1BvcykgICAgICAvKiE8IDB4MDAwMDAwMUYgKi8NCiNkZWZpbmUgQURDX1NRUjJfU1ExOSAgICAgICAgICAgICAgICAgICAgICAgIEFEQ19TUVIyX1NRMTlfTXNrICAgICAgICAgICAgICAgICAvKiE8IEFEQyBncm91cCByZWd1bGFyIHNlcXVlbmNlciByYW5rIDE5ICovDQojZGVmaW5lIEFEQ19TUVIyX1NRMTlfMCAgICAgICAgICAgICAgICAgICAgICAoMHgwMVUgPDwgQURDX1NRUjJfU1ExOV9Qb3MpICAgICAgLyohPCAweDAwMDAwMDAxICovDQojZGVmaW5lIEFEQ19TUVIyX1NRMTlfMSAgICAgICAgICAgICAgICAgICAgICAoMHgwMlUgPDwgQURDX1NRUjJfU1ExOV9Qb3MpICAgICAgLyohPCAweDAwMDAwMDAyICovDQojZGVmaW5lIEFEQ19TUVIyX1NRMTlfMiAgICAgICAgICAgICAgICAgICAgICAoMHgwNFUgPDwgQURDX1NRUjJfU1ExOV9Qb3MpICAgICAgLyohPCAweDAwMDAwMDA0ICovDQojZGVmaW5lIEFEQ19TUVIyX1NRMTlfMyAgICAgICAgICAgICAgICAgICAgICAoMHgwOFUgPDwgQURDX1NRUjJfU1ExOV9Qb3MpICAgICAgLyohPCAweDAwMDAwMDA4ICovDQojZGVmaW5lIEFEQ19TUVIyX1NRMTlfNCAgICAgICAgICAgICAgICAgICAgICAoMHgxMFUgPDwgQURDX1NRUjJfU1ExOV9Qb3MpICAgICAgLyohPCAweDAwMDAwMDEwICovDQoNCiNkZWZpbmUgQURDX1NRUjJfU1EyMF9Qb3MgICAgICAgICAgICAgICAgICAgICg1VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgQURDX1NRUjJfU1EyMF9Nc2sgICAgICAgICAgICAgICAgICAgICgweDFGVSA8PCBBRENfU1FSMl9TUTIwX1BvcykgICAgICAvKiE8IDB4MDAwMDAzRTAgKi8NCiNkZWZpbmUgQURDX1NRUjJfU1EyMCAgICAgICAgICAgICAgICAgICAgICAgIEFEQ19TUVIyX1NRMjBfTXNrICAgICAgICAgICAgICAgICAvKiE8IEFEQyBncm91cCByZWd1bGFyIHNlcXVlbmNlciByYW5rIDIwICovDQojZGVmaW5lIEFEQ19TUVIyX1NRMjBfMCAgICAgICAgICAgICAgICAgICAgICAoMHgwMVUgPDwgQURDX1NRUjJfU1EyMF9Qb3MpICAgICAgLyohPCAweDAwMDAwMDIwICovDQojZGVmaW5lIEFEQ19TUVIyX1NRMjBfMSAgICAgICAgICAgICAgICAgICAgICAoMHgwMlUgPDwgQURDX1NRUjJfU1EyMF9Qb3MpICAgICAgLyohPCAweDAwMDAwMDQwICovDQojZGVmaW5lIEFEQ19TUVIyX1NRMjBfMiAgICAgICAgICAgICAgICAgICAgICAoMHgwNFUgPDwgQURDX1NRUjJfU1EyMF9Qb3MpICAgICAgLyohPCAweDAwMDAwMDgwICovDQojZGVmaW5lIEFEQ19TUVIyX1NRMjBfMyAgICAgICAgICAgICAgICAgICAgICAoMHgwOFUgPDwgQURDX1NRUjJfU1EyMF9Qb3MpICAgICAgLyohPCAweDAwMDAwMTAwICovDQojZGVmaW5lIEFEQ19TUVIyX1NRMjBfNCAgICAgICAgICAgICAgICAgICAgICAoMHgxMFUgPDwgQURDX1NRUjJfU1EyMF9Qb3MpICAgICAgLyohPCAweDAwMDAwMjAwICovDQoNCiNkZWZpbmUgQURDX1NRUjJfU1EyMV9Qb3MgICAgICAgICAgICAgICAgICAgICgxMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgQURDX1NRUjJfU1EyMV9Nc2sgICAgICAgICAgICAgICAgICAgICgweDFGVSA8PCBBRENfU1FSMl9TUTIxX1BvcykgICAgICAvKiE8IDB4MDAwMDdDMDAgKi8NCiNkZWZpbmUgQURDX1NRUjJfU1EyMSAgICAgICAgICAgICAgICAgICAgICAgIEFEQ19TUVIyX1NRMjFfTXNrICAgICAgICAgICAgICAgICAvKiE8IEFEQyBncm91cCByZWd1bGFyIHNlcXVlbmNlciByYW5rIDIxICovDQojZGVmaW5lIEFEQ19TUVIyX1NRMjFfMCAgICAgICAgICAgICAgICAgICAgICAoMHgwMVUgPDwgQURDX1NRUjJfU1EyMV9Qb3MpICAgICAgLyohPCAweDAwMDAwNDAwICovDQojZGVmaW5lIEFEQ19TUVIyX1NRMjFfMSAgICAgICAgICAgICAgICAgICAgICAoMHgwMlUgPDwgQURDX1NRUjJfU1EyMV9Qb3MpICAgICAgLyohPCAweDAwMDAwODAwICovDQojZGVmaW5lIEFEQ19TUVIyX1NRMjFfMiAgICAgICAgICAgICAgICAgICAgICAoMHgwNFUgPDwgQURDX1NRUjJfU1EyMV9Qb3MpICAgICAgLyohPCAweDAwMDAxMDAwICovDQojZGVmaW5lIEFEQ19TUVIyX1NRMjFfMyAgICAgICAgICAgICAgICAgICAgICAoMHgwOFUgPDwgQURDX1NRUjJfU1EyMV9Qb3MpICAgICAgLyohPCAweDAwMDAyMDAwICovDQojZGVmaW5lIEFEQ19TUVIyX1NRMjFfNCAgICAgICAgICAgICAgICAgICAgICAoMHgxMFUgPDwgQURDX1NRUjJfU1EyMV9Qb3MpICAgICAgLyohPCAweDAwMDA0MDAwICovDQoNCiNkZWZpbmUgQURDX1NRUjJfU1EyMl9Qb3MgICAgICAgICAgICAgICAgICAgICgxNVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgQURDX1NRUjJfU1EyMl9Nc2sgICAgICAgICAgICAgICAgICAgICgweDFGVSA8PCBBRENfU1FSMl9TUTIyX1BvcykgICAgICAvKiE8IDB4MDAwRjgwMDAgKi8NCiNkZWZpbmUgQURDX1NRUjJfU1EyMiAgICAgICAgICAgICAgICAgICAgICAgIEFEQ19TUVIyX1NRMjJfTXNrICAgICAgICAgICAgICAgICAvKiE8IEFEQyBncm91cCByZWd1bGFyIHNlcXVlbmNlciByYW5rIDIyICovDQojZGVmaW5lIEFEQ19TUVIyX1NRMjJfMCAgICAgICAgICAgICAgICAgICAgICAoMHgwMVUgPDwgQURDX1NRUjJfU1EyMl9Qb3MpICAgICAgLyohPCAweDAwMDA4MDAwICovDQojZGVmaW5lIEFEQ19TUVIyX1NRMjJfMSAgICAgICAgICAgICAgICAgICAgICAoMHgwMlUgPDwgQURDX1NRUjJfU1EyMl9Qb3MpICAgICAgLyohPCAweDAwMDEwMDAwICovDQojZGVmaW5lIEFEQ19TUVIyX1NRMjJfMiAgICAgICAgICAgICAgICAgICAgICAoMHgwNFUgPDwgQURDX1NRUjJfU1EyMl9Qb3MpICAgICAgLyohPCAweDAwMDIwMDAwICovDQojZGVmaW5lIEFEQ19TUVIyX1NRMjJfMyAgICAgICAgICAgICAgICAgICAgICAoMHgwOFUgPDwgQURDX1NRUjJfU1EyMl9Qb3MpICAgICAgLyohPCAweDAwMDQwMDAwICovDQojZGVmaW5lIEFEQ19TUVIyX1NRMjJfNCAgICAgICAgICAgICAgICAgICAgICAoMHgxMFUgPDwgQURDX1NRUjJfU1EyMl9Qb3MpICAgICAgLyohPCAweDAwMDgwMDAwICovDQoNCiNkZWZpbmUgQURDX1NRUjJfU1EyM19Qb3MgICAgICAgICAgICAgICAgICAgICgyMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgQURDX1NRUjJfU1EyM19Nc2sgICAgICAgICAgICAgICAgICAgICgweDFGVSA8PCBBRENfU1FSMl9TUTIzX1BvcykgICAgICAvKiE8IDB4MDFGMDAwMDAgKi8NCiNkZWZpbmUgQURDX1NRUjJfU1EyMyAgICAgICAgICAgICAgICAgICAgICAgIEFEQ19TUVIyX1NRMjNfTXNrICAgICAgICAgICAgICAgICAvKiE8IEFEQyBncm91cCByZWd1bGFyIHNlcXVlbmNlciByYW5rIDIzICovDQojZGVmaW5lIEFEQ19TUVIyX1NRMjNfMCAgICAgICAgICAgICAgICAgICAgICAoMHgwMVUgPDwgQURDX1NRUjJfU1EyM19Qb3MpICAgICAgLyohPCAweDAwMTAwMDAwICovDQojZGVmaW5lIEFEQ19TUVIyX1NRMjNfMSAgICAgICAgICAgICAgICAgICAgICAoMHgwMlUgPDwgQURDX1NRUjJfU1EyM19Qb3MpICAgICAgLyohPCAweDAwMjAwMDAwICovDQojZGVmaW5lIEFEQ19TUVIyX1NRMjNfMiAgICAgICAgICAgICAgICAgICAgICAoMHgwNFUgPDwgQURDX1NRUjJfU1EyM19Qb3MpICAgICAgLyohPCAweDAwNDAwMDAwICovDQojZGVmaW5lIEFEQ19TUVIyX1NRMjNfMyAgICAgICAgICAgICAgICAgICAgICAoMHgwOFUgPDwgQURDX1NRUjJfU1EyM19Qb3MpICAgICAgLyohPCAweDAwODAwMDAwICovDQojZGVmaW5lIEFEQ19TUVIyX1NRMjNfNCAgICAgICAgICAgICAgICAgICAgICAoMHgxMFUgPDwgQURDX1NRUjJfU1EyM19Qb3MpICAgICAgLyohPCAweDAxMDAwMDAwICovDQoNCiNkZWZpbmUgQURDX1NRUjJfU1EyNF9Qb3MgICAgICAgICAgICAgICAgICAgICgyNVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgQURDX1NRUjJfU1EyNF9Nc2sgICAgICAgICAgICAgICAgICAgICgweDFGVSA8PCBBRENfU1FSMl9TUTI0X1BvcykgICAgICAvKiE8IDB4M0UwMDAwMDAgKi8NCiNkZWZpbmUgQURDX1NRUjJfU1EyNCAgICAgICAgICAgICAgICAgICAgICAgIEFEQ19TUVIyX1NRMjRfTXNrICAgICAgICAgICAgICAgICAvKiE8IEFEQyBncm91cCByZWd1bGFyIHNlcXVlbmNlciByYW5rIDI0ICovDQojZGVmaW5lIEFEQ19TUVIyX1NRMjRfMCAgICAgICAgICAgICAgICAgICAgICAoMHgwMVUgPDwgQURDX1NRUjJfU1EyNF9Qb3MpICAgICAgLyohPCAweDAyMDAwMDAwICovDQojZGVmaW5lIEFEQ19TUVIyX1NRMjRfMSAgICAgICAgICAgICAgICAgICAgICAoMHgwMlUgPDwgQURDX1NRUjJfU1EyNF9Qb3MpICAgICAgLyohPCAweDA0MDAwMDAwICovDQojZGVmaW5lIEFEQ19TUVIyX1NRMjRfMiAgICAgICAgICAgICAgICAgICAgICAoMHgwNFUgPDwgQURDX1NRUjJfU1EyNF9Qb3MpICAgICAgLyohPCAweDA4MDAwMDAwICovDQojZGVmaW5lIEFEQ19TUVIyX1NRMjRfMyAgICAgICAgICAgICAgICAgICAgICAoMHgwOFUgPDwgQURDX1NRUjJfU1EyNF9Qb3MpICAgICAgLyohPCAweDEwMDAwMDAwICovDQojZGVmaW5lIEFEQ19TUVIyX1NRMjRfNCAgICAgICAgICAgICAgICAgICAgICAoMHgxMFUgPDwgQURDX1NRUjJfU1EyNF9Qb3MpICAgICAgLyohPCAweDIwMDAwMDAwICovDQoNCi8qKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgQURDX1NRUjMgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIEFEQ19TUVIzX1NRMTNfUG9zICAgICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEFEQ19TUVIzX1NRMTNfTXNrICAgICAgICAgICAgICAgICAgICAoMHgxRlUgPDwgQURDX1NRUjNfU1ExM19Qb3MpICAgICAgLyohPCAweDAwMDAwMDFGICovDQojZGVmaW5lIEFEQ19TUVIzX1NRMTMgICAgICAgICAgICAgICAgICAgICAgICBBRENfU1FSM19TUTEzX01zayAgICAgICAgICAgICAgICAgLyohPCBBREMgZ3JvdXAgcmVndWxhciBzZXF1ZW5jZXIgcmFuayAxMyAqLw0KI2RlZmluZSBBRENfU1FSM19TUTEzXzAgICAgICAgICAgICAgICAgICAgICAgKDB4MDFVIDw8IEFEQ19TUVIzX1NRMTNfUG9zKSAgICAgIC8qITwgMHgwMDAwMDAwMSAqLw0KI2RlZmluZSBBRENfU1FSM19TUTEzXzEgICAgICAgICAgICAgICAgICAgICAgKDB4MDJVIDw8IEFEQ19TUVIzX1NRMTNfUG9zKSAgICAgIC8qITwgMHgwMDAwMDAwMiAqLw0KI2RlZmluZSBBRENfU1FSM19TUTEzXzIgICAgICAgICAgICAgICAgICAgICAgKDB4MDRVIDw8IEFEQ19TUVIzX1NRMTNfUG9zKSAgICAgIC8qITwgMHgwMDAwMDAwNCAqLw0KI2RlZmluZSBBRENfU1FSM19TUTEzXzMgICAgICAgICAgICAgICAgICAgICAgKDB4MDhVIDw8IEFEQ19TUVIzX1NRMTNfUG9zKSAgICAgIC8qITwgMHgwMDAwMDAwOCAqLw0KI2RlZmluZSBBRENfU1FSM19TUTEzXzQgICAgICAgICAgICAgICAgICAgICAgKDB4MTBVIDw8IEFEQ19TUVIzX1NRMTNfUG9zKSAgICAgIC8qITwgMHgwMDAwMDAxMCAqLw0KDQojZGVmaW5lIEFEQ19TUVIzX1NRMTRfUG9zICAgICAgICAgICAgICAgICAgICAoNVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEFEQ19TUVIzX1NRMTRfTXNrICAgICAgICAgICAgICAgICAgICAoMHgxRlUgPDwgQURDX1NRUjNfU1ExNF9Qb3MpICAgICAgLyohPCAweDAwMDAwM0UwICovDQojZGVmaW5lIEFEQ19TUVIzX1NRMTQgICAgICAgICAgICAgICAgICAgICAgICBBRENfU1FSM19TUTE0X01zayAgICAgICAgICAgICAgICAgLyohPCBBREMgZ3JvdXAgcmVndWxhciBzZXF1ZW5jZXIgcmFuayAxNCAqLw0KI2RlZmluZSBBRENfU1FSM19TUTE0XzAgICAgICAgICAgICAgICAgICAgICAgKDB4MDFVIDw8IEFEQ19TUVIzX1NRMTRfUG9zKSAgICAgIC8qITwgMHgwMDAwMDAyMCAqLw0KI2RlZmluZSBBRENfU1FSM19TUTE0XzEgICAgICAgICAgICAgICAgICAgICAgKDB4MDJVIDw8IEFEQ19TUVIzX1NRMTRfUG9zKSAgICAgIC8qITwgMHgwMDAwMDA0MCAqLw0KI2RlZmluZSBBRENfU1FSM19TUTE0XzIgICAgICAgICAgICAgICAgICAgICAgKDB4MDRVIDw8IEFEQ19TUVIzX1NRMTRfUG9zKSAgICAgIC8qITwgMHgwMDAwMDA4MCAqLw0KI2RlZmluZSBBRENfU1FSM19TUTE0XzMgICAgICAgICAgICAgICAgICAgICAgKDB4MDhVIDw8IEFEQ19TUVIzX1NRMTRfUG9zKSAgICAgIC8qITwgMHgwMDAwMDEwMCAqLw0KI2RlZmluZSBBRENfU1FSM19TUTE0XzQgICAgICAgICAgICAgICAgICAgICAgKDB4MTBVIDw8IEFEQ19TUVIzX1NRMTRfUG9zKSAgICAgIC8qITwgMHgwMDAwMDIwMCAqLw0KDQojZGVmaW5lIEFEQ19TUVIzX1NRMTVfUG9zICAgICAgICAgICAgICAgICAgICAoMTBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEFEQ19TUVIzX1NRMTVfTXNrICAgICAgICAgICAgICAgICAgICAoMHgxRlUgPDwgQURDX1NRUjNfU1ExNV9Qb3MpICAgICAgLyohPCAweDAwMDA3QzAwICovDQojZGVmaW5lIEFEQ19TUVIzX1NRMTUgICAgICAgICAgICAgICAgICAgICAgICBBRENfU1FSM19TUTE1X01zayAgICAgICAgICAgICAgICAgLyohPCBBREMgZ3JvdXAgcmVndWxhciBzZXF1ZW5jZXIgcmFuayAxNSAqLw0KI2RlZmluZSBBRENfU1FSM19TUTE1XzAgICAgICAgICAgICAgICAgICAgICAgKDB4MDFVIDw8IEFEQ19TUVIzX1NRMTVfUG9zKSAgICAgIC8qITwgMHgwMDAwMDQwMCAqLw0KI2RlZmluZSBBRENfU1FSM19TUTE1XzEgICAgICAgICAgICAgICAgICAgICAgKDB4MDJVIDw8IEFEQ19TUVIzX1NRMTVfUG9zKSAgICAgIC8qITwgMHgwMDAwMDgwMCAqLw0KI2RlZmluZSBBRENfU1FSM19TUTE1XzIgICAgICAgICAgICAgICAgICAgICAgKDB4MDRVIDw8IEFEQ19TUVIzX1NRMTVfUG9zKSAgICAgIC8qITwgMHgwMDAwMTAwMCAqLw0KI2RlZmluZSBBRENfU1FSM19TUTE1XzMgICAgICAgICAgICAgICAgICAgICAgKDB4MDhVIDw8IEFEQ19TUVIzX1NRMTVfUG9zKSAgICAgIC8qITwgMHgwMDAwMjAwMCAqLw0KI2RlZmluZSBBRENfU1FSM19TUTE1XzQgICAgICAgICAgICAgICAgICAgICAgKDB4MTBVIDw8IEFEQ19TUVIzX1NRMTVfUG9zKSAgICAgIC8qITwgMHgwMDAwNDAwMCAqLw0KDQojZGVmaW5lIEFEQ19TUVIzX1NRMTZfUG9zICAgICAgICAgICAgICAgICAgICAoMTVVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEFEQ19TUVIzX1NRMTZfTXNrICAgICAgICAgICAgICAgICAgICAoMHgxRlUgPDwgQURDX1NRUjNfU1ExNl9Qb3MpICAgICAgLyohPCAweDAwMEY4MDAwICovDQojZGVmaW5lIEFEQ19TUVIzX1NRMTYgICAgICAgICAgICAgICAgICAgICAgICBBRENfU1FSM19TUTE2X01zayAgICAgICAgICAgICAgICAgLyohPCBBREMgZ3JvdXAgcmVndWxhciBzZXF1ZW5jZXIgcmFuayAxNiAqLw0KI2RlZmluZSBBRENfU1FSM19TUTE2XzAgICAgICAgICAgICAgICAgICAgICAgKDB4MDFVIDw8IEFEQ19TUVIzX1NRMTZfUG9zKSAgICAgIC8qITwgMHgwMDAwODAwMCAqLw0KI2RlZmluZSBBRENfU1FSM19TUTE2XzEgICAgICAgICAgICAgICAgICAgICAgKDB4MDJVIDw8IEFEQ19TUVIzX1NRMTZfUG9zKSAgICAgIC8qITwgMHgwMDAxMDAwMCAqLw0KI2RlZmluZSBBRENfU1FSM19TUTE2XzIgICAgICAgICAgICAgICAgICAgICAgKDB4MDRVIDw8IEFEQ19TUVIzX1NRMTZfUG9zKSAgICAgIC8qITwgMHgwMDAyMDAwMCAqLw0KI2RlZmluZSBBRENfU1FSM19TUTE2XzMgICAgICAgICAgICAgICAgICAgICAgKDB4MDhVIDw8IEFEQ19TUVIzX1NRMTZfUG9zKSAgICAgIC8qITwgMHgwMDA0MDAwMCAqLw0KI2RlZmluZSBBRENfU1FSM19TUTE2XzQgICAgICAgICAgICAgICAgICAgICAgKDB4MTBVIDw8IEFEQ19TUVIzX1NRMTZfUG9zKSAgICAgIC8qITwgMHgwMDA4MDAwMCAqLw0KDQojZGVmaW5lIEFEQ19TUVIzX1NRMTdfUG9zICAgICAgICAgICAgICAgICAgICAoMjBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEFEQ19TUVIzX1NRMTdfTXNrICAgICAgICAgICAgICAgICAgICAoMHgxRlUgPDwgQURDX1NRUjNfU1ExN19Qb3MpICAgICAgLyohPCAweDAxRjAwMDAwICovDQojZGVmaW5lIEFEQ19TUVIzX1NRMTcgICAgICAgICAgICAgICAgICAgICAgICBBRENfU1FSM19TUTE3X01zayAgICAgICAgICAgICAgICAgLyohPCBBREMgZ3JvdXAgcmVndWxhciBzZXF1ZW5jZXIgcmFuayAxNyAqLw0KI2RlZmluZSBBRENfU1FSM19TUTE3XzAgICAgICAgICAgICAgICAgICAgICAgKDB4MDFVIDw8IEFEQ19TUVIzX1NRMTdfUG9zKSAgICAgIC8qITwgMHgwMDEwMDAwMCAqLw0KI2RlZmluZSBBRENfU1FSM19TUTE3XzEgICAgICAgICAgICAgICAgICAgICAgKDB4MDJVIDw8IEFEQ19TUVIzX1NRMTdfUG9zKSAgICAgIC8qITwgMHgwMDIwMDAwMCAqLw0KI2RlZmluZSBBRENfU1FSM19TUTE3XzIgICAgICAgICAgICAgICAgICAgICAgKDB4MDRVIDw8IEFEQ19TUVIzX1NRMTdfUG9zKSAgICAgIC8qITwgMHgwMDQwMDAwMCAqLw0KI2RlZmluZSBBRENfU1FSM19TUTE3XzMgICAgICAgICAgICAgICAgICAgICAgKDB4MDhVIDw8IEFEQ19TUVIzX1NRMTdfUG9zKSAgICAgIC8qITwgMHgwMDgwMDAwMCAqLw0KI2RlZmluZSBBRENfU1FSM19TUTE3XzQgICAgICAgICAgICAgICAgICAgICAgKDB4MTBVIDw8IEFEQ19TUVIzX1NRMTdfUG9zKSAgICAgIC8qITwgMHgwMTAwMDAwMCAqLw0KDQojZGVmaW5lIEFEQ19TUVIzX1NRMThfUG9zICAgICAgICAgICAgICAgICAgICAoMjVVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEFEQ19TUVIzX1NRMThfTXNrICAgICAgICAgICAgICAgICAgICAoMHgxRlUgPDwgQURDX1NRUjNfU1ExOF9Qb3MpICAgICAgLyohPCAweDNFMDAwMDAwICovDQojZGVmaW5lIEFEQ19TUVIzX1NRMTggICAgICAgICAgICAgICAgICAgICAgICBBRENfU1FSM19TUTE4X01zayAgICAgICAgICAgICAgICAgLyohPCBBREMgZ3JvdXAgcmVndWxhciBzZXF1ZW5jZXIgcmFuayAxOCAqLw0KI2RlZmluZSBBRENfU1FSM19TUTE4XzAgICAgICAgICAgICAgICAgICAgICAgKDB4MDFVIDw8IEFEQ19TUVIzX1NRMThfUG9zKSAgICAgIC8qITwgMHgwMjAwMDAwMCAqLw0KI2RlZmluZSBBRENfU1FSM19TUTE4XzEgICAgICAgICAgICAgICAgICAgICAgKDB4MDJVIDw8IEFEQ19TUVIzX1NRMThfUG9zKSAgICAgIC8qITwgMHgwNDAwMDAwMCAqLw0KI2RlZmluZSBBRENfU1FSM19TUTE4XzIgICAgICAgICAgICAgICAgICAgICAgKDB4MDRVIDw8IEFEQ19TUVIzX1NRMThfUG9zKSAgICAgIC8qITwgMHgwODAwMDAwMCAqLw0KI2RlZmluZSBBRENfU1FSM19TUTE4XzMgICAgICAgICAgICAgICAgICAgICAgKDB4MDhVIDw8IEFEQ19TUVIzX1NRMThfUG9zKSAgICAgIC8qITwgMHgxMDAwMDAwMCAqLw0KI2RlZmluZSBBRENfU1FSM19TUTE4XzQgICAgICAgICAgICAgICAgICAgICAgKDB4MTBVIDw8IEFEQ19TUVIzX1NRMThfUG9zKSAgICAgIC8qITwgMHgyMDAwMDAwMCAqLw0KDQovKioqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIEFEQ19TUVI0IHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBBRENfU1FSNF9TUTdfUG9zICAgICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBBRENfU1FSNF9TUTdfTXNrICAgICAgICAgICAgICAgICAgICAgKDB4MUZVIDw8IEFEQ19TUVI0X1NRN19Qb3MpICAgICAgIC8qITwgMHgwMDAwMDAxRiAqLw0KI2RlZmluZSBBRENfU1FSNF9TUTcgICAgICAgICAgICAgICAgICAgICAgICAgQURDX1NRUjRfU1E3X01zayAgICAgICAgICAgICAgICAgIC8qITwgQURDIGdyb3VwIHJlZ3VsYXIgc2VxdWVuY2VyIHJhbmsgNyAqLw0KI2RlZmluZSBBRENfU1FSNF9TUTdfMCAgICAgICAgICAgICAgICAgICAgICAgKDB4MDFVIDw8IEFEQ19TUVI0X1NRN19Qb3MpICAgICAgIC8qITwgMHgwMDAwMDAwMSAqLw0KI2RlZmluZSBBRENfU1FSNF9TUTdfMSAgICAgICAgICAgICAgICAgICAgICAgKDB4MDJVIDw8IEFEQ19TUVI0X1NRN19Qb3MpICAgICAgIC8qITwgMHgwMDAwMDAwMiAqLw0KI2RlZmluZSBBRENfU1FSNF9TUTdfMiAgICAgICAgICAgICAgICAgICAgICAgKDB4MDRVIDw8IEFEQ19TUVI0X1NRN19Qb3MpICAgICAgIC8qITwgMHgwMDAwMDAwNCAqLw0KI2RlZmluZSBBRENfU1FSNF9TUTdfMyAgICAgICAgICAgICAgICAgICAgICAgKDB4MDhVIDw8IEFEQ19TUVI0X1NRN19Qb3MpICAgICAgIC8qITwgMHgwMDAwMDAwOCAqLw0KI2RlZmluZSBBRENfU1FSNF9TUTdfNCAgICAgICAgICAgICAgICAgICAgICAgKDB4MTBVIDw8IEFEQ19TUVI0X1NRN19Qb3MpICAgICAgIC8qITwgMHgwMDAwMDAxMCAqLw0KDQojZGVmaW5lIEFEQ19TUVI0X1NROF9Qb3MgICAgICAgICAgICAgICAgICAgICAoNVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEFEQ19TUVI0X1NROF9Nc2sgICAgICAgICAgICAgICAgICAgICAoMHgxRlUgPDwgQURDX1NRUjRfU1E4X1BvcykgICAgICAgLyohPCAweDAwMDAwM0UwICovDQojZGVmaW5lIEFEQ19TUVI0X1NROCAgICAgICAgICAgICAgICAgICAgICAgICBBRENfU1FSNF9TUThfTXNrICAgICAgICAgICAgICAgICAgLyohPCBBREMgZ3JvdXAgcmVndWxhciBzZXF1ZW5jZXIgcmFuayA4ICovDQojZGVmaW5lIEFEQ19TUVI0X1NROF8wICAgICAgICAgICAgICAgICAgICAgICAoMHgwMVUgPDwgQURDX1NRUjRfU1E4X1BvcykgICAgICAgLyohPCAweDAwMDAwMDIwICovDQojZGVmaW5lIEFEQ19TUVI0X1NROF8xICAgICAgICAgICAgICAgICAgICAgICAoMHgwMlUgPDwgQURDX1NRUjRfU1E4X1BvcykgICAgICAgLyohPCAweDAwMDAwMDQwICovDQojZGVmaW5lIEFEQ19TUVI0X1NROF8yICAgICAgICAgICAgICAgICAgICAgICAoMHgwNFUgPDwgQURDX1NRUjRfU1E4X1BvcykgICAgICAgLyohPCAweDAwMDAwMDgwICovDQojZGVmaW5lIEFEQ19TUVI0X1NROF8zICAgICAgICAgICAgICAgICAgICAgICAoMHgwOFUgPDwgQURDX1NRUjRfU1E4X1BvcykgICAgICAgLyohPCAweDAwMDAwMTAwICovDQojZGVmaW5lIEFEQ19TUVI0X1NROF80ICAgICAgICAgICAgICAgICAgICAgICAoMHgxMFUgPDwgQURDX1NRUjRfU1E4X1BvcykgICAgICAgLyohPCAweDAwMDAwMjAwICovDQoNCiNkZWZpbmUgQURDX1NRUjRfU1E5X1BvcyAgICAgICAgICAgICAgICAgICAgICgxMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgQURDX1NRUjRfU1E5X01zayAgICAgICAgICAgICAgICAgICAgICgweDFGVSA8PCBBRENfU1FSNF9TUTlfUG9zKSAgICAgICAvKiE8IDB4MDAwMDdDMDAgKi8NCiNkZWZpbmUgQURDX1NRUjRfU1E5ICAgICAgICAgICAgICAgICAgICAgICAgIEFEQ19TUVI0X1NROV9Nc2sgICAgICAgICAgICAgICAgICAvKiE8IEFEQyBncm91cCByZWd1bGFyIHNlcXVlbmNlciByYW5rIDkgKi8NCiNkZWZpbmUgQURDX1NRUjRfU1E5XzAgICAgICAgICAgICAgICAgICAgICAgICgweDAxVSA8PCBBRENfU1FSNF9TUTlfUG9zKSAgICAgICAvKiE8IDB4MDAwMDA0MDAgKi8NCiNkZWZpbmUgQURDX1NRUjRfU1E5XzEgICAgICAgICAgICAgICAgICAgICAgICgweDAyVSA8PCBBRENfU1FSNF9TUTlfUG9zKSAgICAgICAvKiE8IDB4MDAwMDA4MDAgKi8NCiNkZWZpbmUgQURDX1NRUjRfU1E5XzIgICAgICAgICAgICAgICAgICAgICAgICgweDA0VSA8PCBBRENfU1FSNF9TUTlfUG9zKSAgICAgICAvKiE8IDB4MDAwMDEwMDAgKi8NCiNkZWZpbmUgQURDX1NRUjRfU1E5XzMgICAgICAgICAgICAgICAgICAgICAgICgweDA4VSA8PCBBRENfU1FSNF9TUTlfUG9zKSAgICAgICAvKiE8IDB4MDAwMDIwMDAgKi8NCiNkZWZpbmUgQURDX1NRUjRfU1E5XzQgICAgICAgICAgICAgICAgICAgICAgICgweDEwVSA8PCBBRENfU1FSNF9TUTlfUG9zKSAgICAgICAvKiE8IDB4MDAwMDQwMDAgKi8NCg0KI2RlZmluZSBBRENfU1FSNF9TUTEwX1BvcyAgICAgICAgICAgICAgICAgICAgKDE1VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBBRENfU1FSNF9TUTEwX01zayAgICAgICAgICAgICAgICAgICAgKDB4MUZVIDw8IEFEQ19TUVI0X1NRMTBfUG9zKSAgICAgIC8qITwgMHgwMDBGODAwMCAqLw0KI2RlZmluZSBBRENfU1FSNF9TUTEwICAgICAgICAgICAgICAgICAgICAgICAgQURDX1NRUjRfU1ExMF9Nc2sgICAgICAgICAgICAgICAgIC8qITwgQURDIGdyb3VwIHJlZ3VsYXIgc2VxdWVuY2VyIHJhbmsgMTAgKi8NCiNkZWZpbmUgQURDX1NRUjRfU1ExMF8wICAgICAgICAgICAgICAgICAgICAgICgweDAxVSA8PCBBRENfU1FSNF9TUTEwX1BvcykgICAgICAvKiE8IDB4MDAwMDgwMDAgKi8NCiNkZWZpbmUgQURDX1NRUjRfU1ExMF8xICAgICAgICAgICAgICAgICAgICAgICgweDAyVSA8PCBBRENfU1FSNF9TUTEwX1BvcykgICAgICAvKiE8IDB4MDAwMTAwMDAgKi8NCiNkZWZpbmUgQURDX1NRUjRfU1ExMF8yICAgICAgICAgICAgICAgICAgICAgICgweDA0VSA8PCBBRENfU1FSNF9TUTEwX1BvcykgICAgICAvKiE8IDB4MDAwMjAwMDAgKi8NCiNkZWZpbmUgQURDX1NRUjRfU1ExMF8zICAgICAgICAgICAgICAgICAgICAgICgweDA4VSA8PCBBRENfU1FSNF9TUTEwX1BvcykgICAgICAvKiE8IDB4MDAwNDAwMDAgKi8NCiNkZWZpbmUgQURDX1NRUjRfU1ExMF80ICAgICAgICAgICAgICAgICAgICAgICgweDEwVSA8PCBBRENfU1FSNF9TUTEwX1BvcykgICAgICAvKiE8IDB4MDAwODAwMDAgKi8NCg0KI2RlZmluZSBBRENfU1FSNF9TUTExX1BvcyAgICAgICAgICAgICAgICAgICAgKDIwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBBRENfU1FSNF9TUTExX01zayAgICAgICAgICAgICAgICAgICAgKDB4MUZVIDw8IEFEQ19TUVI0X1NRMTFfUG9zKSAgICAgIC8qITwgMHgwMUYwMDAwMCAqLw0KI2RlZmluZSBBRENfU1FSNF9TUTExICAgICAgICAgICAgICAgICAgICAgICAgQURDX1NRUjRfU1ExMV9Nc2sgICAgICAgICAgICAgICAgIC8qITwgQURDIGdyb3VwIHJlZ3VsYXIgc2VxdWVuY2VyIHJhbmsgMTEgKi8NCiNkZWZpbmUgQURDX1NRUjRfU1ExMV8wICAgICAgICAgICAgICAgICAgICAgICgweDAxVSA8PCBBRENfU1FSNF9TUTExX1BvcykgICAgICAvKiE8IDB4MDAxMDAwMDAgKi8NCiNkZWZpbmUgQURDX1NRUjRfU1ExMV8xICAgICAgICAgICAgICAgICAgICAgICgweDAyVSA8PCBBRENfU1FSNF9TUTExX1BvcykgICAgICAvKiE8IDB4MDAyMDAwMDAgKi8NCiNkZWZpbmUgQURDX1NRUjRfU1ExMV8yICAgICAgICAgICAgICAgICAgICAgICgweDA0VSA8PCBBRENfU1FSNF9TUTExX1BvcykgICAgICAvKiE8IDB4MDA0MDAwMDAgKi8NCiNkZWZpbmUgQURDX1NRUjRfU1ExMV8zICAgICAgICAgICAgICAgICAgICAgICgweDA4VSA8PCBBRENfU1FSNF9TUTExX1BvcykgICAgICAvKiE8IDB4MDA4MDAwMDAgKi8NCiNkZWZpbmUgQURDX1NRUjRfU1ExMV80ICAgICAgICAgICAgICAgICAgICAgICgweDEwVSA8PCBBRENfU1FSNF9TUTExX1BvcykgICAgICAvKiE8IDB4MDEwMDAwMDAgKi8NCg0KI2RlZmluZSBBRENfU1FSNF9TUTEyX1BvcyAgICAgICAgICAgICAgICAgICAgKDI1VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBBRENfU1FSNF9TUTEyX01zayAgICAgICAgICAgICAgICAgICAgKDB4MUZVIDw8IEFEQ19TUVI0X1NRMTJfUG9zKSAgICAgIC8qITwgMHgzRTAwMDAwMCAqLw0KI2RlZmluZSBBRENfU1FSNF9TUTEyICAgICAgICAgICAgICAgICAgICAgICAgQURDX1NRUjRfU1ExMl9Nc2sgICAgICAgICAgICAgICAgIC8qITwgQURDIGdyb3VwIHJlZ3VsYXIgc2VxdWVuY2VyIHJhbmsgMTIgKi8NCiNkZWZpbmUgQURDX1NRUjRfU1ExMl8wICAgICAgICAgICAgICAgICAgICAgICgweDAxVSA8PCBBRENfU1FSNF9TUTEyX1BvcykgICAgICAvKiE8IDB4MDIwMDAwMDAgKi8NCiNkZWZpbmUgQURDX1NRUjRfU1ExMl8xICAgICAgICAgICAgICAgICAgICAgICgweDAyVSA8PCBBRENfU1FSNF9TUTEyX1BvcykgICAgICAvKiE8IDB4MDQwMDAwMDAgKi8NCiNkZWZpbmUgQURDX1NRUjRfU1ExMl8yICAgICAgICAgICAgICAgICAgICAgICgweDA0VSA8PCBBRENfU1FSNF9TUTEyX1BvcykgICAgICAvKiE8IDB4MDgwMDAwMDAgKi8NCiNkZWZpbmUgQURDX1NRUjRfU1ExMl8zICAgICAgICAgICAgICAgICAgICAgICgweDA4VSA8PCBBRENfU1FSNF9TUTEyX1BvcykgICAgICAvKiE8IDB4MTAwMDAwMDAgKi8NCiNkZWZpbmUgQURDX1NRUjRfU1ExMl80ICAgICAgICAgICAgICAgICAgICAgICgweDEwVSA8PCBBRENfU1FSNF9TUTEyX1BvcykgICAgICAvKiE8IDB4MjAwMDAwMDAgKi8NCg0KLyoqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBBRENfU1FSNSByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgQURDX1NRUjVfU1ExX1BvcyAgICAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgQURDX1NRUjVfU1ExX01zayAgICAgICAgICAgICAgICAgICAgICgweDFGVSA8PCBBRENfU1FSNV9TUTFfUG9zKSAgICAgICAvKiE8IDB4MDAwMDAwMUYgKi8NCiNkZWZpbmUgQURDX1NRUjVfU1ExICAgICAgICAgICAgICAgICAgICAgICAgIEFEQ19TUVI1X1NRMV9Nc2sgICAgICAgICAgICAgICAgICAvKiE8IEFEQyBncm91cCByZWd1bGFyIHNlcXVlbmNlciByYW5rIDEgKi8NCiNkZWZpbmUgQURDX1NRUjVfU1ExXzAgICAgICAgICAgICAgICAgICAgICAgICgweDAxVSA8PCBBRENfU1FSNV9TUTFfUG9zKSAgICAgICAvKiE8IDB4MDAwMDAwMDEgKi8NCiNkZWZpbmUgQURDX1NRUjVfU1ExXzEgICAgICAgICAgICAgICAgICAgICAgICgweDAyVSA8PCBBRENfU1FSNV9TUTFfUG9zKSAgICAgICAvKiE8IDB4MDAwMDAwMDIgKi8NCiNkZWZpbmUgQURDX1NRUjVfU1ExXzIgICAgICAgICAgICAgICAgICAgICAgICgweDA0VSA8PCBBRENfU1FSNV9TUTFfUG9zKSAgICAgICAvKiE8IDB4MDAwMDAwMDQgKi8NCiNkZWZpbmUgQURDX1NRUjVfU1ExXzMgICAgICAgICAgICAgICAgICAgICAgICgweDA4VSA8PCBBRENfU1FSNV9TUTFfUG9zKSAgICAgICAvKiE8IDB4MDAwMDAwMDggKi8NCiNkZWZpbmUgQURDX1NRUjVfU1ExXzQgICAgICAgICAgICAgICAgICAgICAgICgweDEwVSA8PCBBRENfU1FSNV9TUTFfUG9zKSAgICAgICAvKiE8IDB4MDAwMDAwMTAgKi8NCg0KI2RlZmluZSBBRENfU1FSNV9TUTJfUG9zICAgICAgICAgICAgICAgICAgICAgKDVVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBBRENfU1FSNV9TUTJfTXNrICAgICAgICAgICAgICAgICAgICAgKDB4MUZVIDw8IEFEQ19TUVI1X1NRMl9Qb3MpICAgICAgIC8qITwgMHgwMDAwMDNFMCAqLw0KI2RlZmluZSBBRENfU1FSNV9TUTIgICAgICAgICAgICAgICAgICAgICAgICAgQURDX1NRUjVfU1EyX01zayAgICAgICAgICAgICAgICAgIC8qITwgQURDIGdyb3VwIHJlZ3VsYXIgc2VxdWVuY2VyIHJhbmsgMiAqLw0KI2RlZmluZSBBRENfU1FSNV9TUTJfMCAgICAgICAgICAgICAgICAgICAgICAgKDB4MDFVIDw8IEFEQ19TUVI1X1NRMl9Qb3MpICAgICAgIC8qITwgMHgwMDAwMDAyMCAqLw0KI2RlZmluZSBBRENfU1FSNV9TUTJfMSAgICAgICAgICAgICAgICAgICAgICAgKDB4MDJVIDw8IEFEQ19TUVI1X1NRMl9Qb3MpICAgICAgIC8qITwgMHgwMDAwMDA0MCAqLw0KI2RlZmluZSBBRENfU1FSNV9TUTJfMiAgICAgICAgICAgICAgICAgICAgICAgKDB4MDRVIDw8IEFEQ19TUVI1X1NRMl9Qb3MpICAgICAgIC8qITwgMHgwMDAwMDA4MCAqLw0KI2RlZmluZSBBRENfU1FSNV9TUTJfMyAgICAgICAgICAgICAgICAgICAgICAgKDB4MDhVIDw8IEFEQ19TUVI1X1NRMl9Qb3MpICAgICAgIC8qITwgMHgwMDAwMDEwMCAqLw0KI2RlZmluZSBBRENfU1FSNV9TUTJfNCAgICAgICAgICAgICAgICAgICAgICAgKDB4MTBVIDw8IEFEQ19TUVI1X1NRMl9Qb3MpICAgICAgIC8qITwgMHgwMDAwMDIwMCAqLw0KDQojZGVmaW5lIEFEQ19TUVI1X1NRM19Qb3MgICAgICAgICAgICAgICAgICAgICAoMTBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEFEQ19TUVI1X1NRM19Nc2sgICAgICAgICAgICAgICAgICAgICAoMHgxRlUgPDwgQURDX1NRUjVfU1EzX1BvcykgICAgICAgLyohPCAweDAwMDA3QzAwICovDQojZGVmaW5lIEFEQ19TUVI1X1NRMyAgICAgICAgICAgICAgICAgICAgICAgICBBRENfU1FSNV9TUTNfTXNrICAgICAgICAgICAgICAgICAgLyohPCBBREMgZ3JvdXAgcmVndWxhciBzZXF1ZW5jZXIgcmFuayAzICovDQojZGVmaW5lIEFEQ19TUVI1X1NRM18wICAgICAgICAgICAgICAgICAgICAgICAoMHgwMVUgPDwgQURDX1NRUjVfU1EzX1BvcykgICAgICAgLyohPCAweDAwMDAwNDAwICovDQojZGVmaW5lIEFEQ19TUVI1X1NRM18xICAgICAgICAgICAgICAgICAgICAgICAoMHgwMlUgPDwgQURDX1NRUjVfU1EzX1BvcykgICAgICAgLyohPCAweDAwMDAwODAwICovDQojZGVmaW5lIEFEQ19TUVI1X1NRM18yICAgICAgICAgICAgICAgICAgICAgICAoMHgwNFUgPDwgQURDX1NRUjVfU1EzX1BvcykgICAgICAgLyohPCAweDAwMDAxMDAwICovDQojZGVmaW5lIEFEQ19TUVI1X1NRM18zICAgICAgICAgICAgICAgICAgICAgICAoMHgwOFUgPDwgQURDX1NRUjVfU1EzX1BvcykgICAgICAgLyohPCAweDAwMDAyMDAwICovDQojZGVmaW5lIEFEQ19TUVI1X1NRM180ICAgICAgICAgICAgICAgICAgICAgICAoMHgxMFUgPDwgQURDX1NRUjVfU1EzX1BvcykgICAgICAgLyohPCAweDAwMDA0MDAwICovDQoNCiNkZWZpbmUgQURDX1NRUjVfU1E0X1BvcyAgICAgICAgICAgICAgICAgICAgICgxNVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgQURDX1NRUjVfU1E0X01zayAgICAgICAgICAgICAgICAgICAgICgweDFGVSA8PCBBRENfU1FSNV9TUTRfUG9zKSAgICAgICAvKiE8IDB4MDAwRjgwMDAgKi8NCiNkZWZpbmUgQURDX1NRUjVfU1E0ICAgICAgICAgICAgICAgICAgICAgICAgIEFEQ19TUVI1X1NRNF9Nc2sgICAgICAgICAgICAgICAgICAvKiE8IEFEQyBncm91cCByZWd1bGFyIHNlcXVlbmNlciByYW5rIDQgKi8NCiNkZWZpbmUgQURDX1NRUjVfU1E0XzAgICAgICAgICAgICAgICAgICAgICAgICgweDAxVSA8PCBBRENfU1FSNV9TUTRfUG9zKSAgICAgICAvKiE8IDB4MDAwMDgwMDAgKi8NCiNkZWZpbmUgQURDX1NRUjVfU1E0XzEgICAgICAgICAgICAgICAgICAgICAgICgweDAyVSA8PCBBRENfU1FSNV9TUTRfUG9zKSAgICAgICAvKiE8IDB4MDAwMTAwMDAgKi8NCiNkZWZpbmUgQURDX1NRUjVfU1E0XzIgICAgICAgICAgICAgICAgICAgICAgICgweDA0VSA8PCBBRENfU1FSNV9TUTRfUG9zKSAgICAgICAvKiE8IDB4MDAwMjAwMDAgKi8NCiNkZWZpbmUgQURDX1NRUjVfU1E0XzMgICAgICAgICAgICAgICAgICAgICAgICgweDA4VSA8PCBBRENfU1FSNV9TUTRfUG9zKSAgICAgICAvKiE8IDB4MDAwNDAwMDAgKi8NCiNkZWZpbmUgQURDX1NRUjVfU1E0XzQgICAgICAgICAgICAgICAgICAgICAgICgweDEwVSA8PCBBRENfU1FSNV9TUTRfUG9zKSAgICAgICAvKiE8IDB4MDAwODAwMDAgKi8NCg0KI2RlZmluZSBBRENfU1FSNV9TUTVfUG9zICAgICAgICAgICAgICAgICAgICAgKDIwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBBRENfU1FSNV9TUTVfTXNrICAgICAgICAgICAgICAgICAgICAgKDB4MUZVIDw8IEFEQ19TUVI1X1NRNV9Qb3MpICAgICAgIC8qITwgMHgwMUYwMDAwMCAqLw0KI2RlZmluZSBBRENfU1FSNV9TUTUgICAgICAgICAgICAgICAgICAgICAgICAgQURDX1NRUjVfU1E1X01zayAgICAgICAgICAgICAgICAgIC8qITwgQURDIGdyb3VwIHJlZ3VsYXIgc2VxdWVuY2VyIHJhbmsgNSAqLw0KI2RlZmluZSBBRENfU1FSNV9TUTVfMCAgICAgICAgICAgICAgICAgICAgICAgKDB4MDFVIDw8IEFEQ19TUVI1X1NRNV9Qb3MpICAgICAgIC8qITwgMHgwMDEwMDAwMCAqLw0KI2RlZmluZSBBRENfU1FSNV9TUTVfMSAgICAgICAgICAgICAgICAgICAgICAgKDB4MDJVIDw8IEFEQ19TUVI1X1NRNV9Qb3MpICAgICAgIC8qITwgMHgwMDIwMDAwMCAqLw0KI2RlZmluZSBBRENfU1FSNV9TUTVfMiAgICAgICAgICAgICAgICAgICAgICAgKDB4MDRVIDw8IEFEQ19TUVI1X1NRNV9Qb3MpICAgICAgIC8qITwgMHgwMDQwMDAwMCAqLw0KI2RlZmluZSBBRENfU1FSNV9TUTVfMyAgICAgICAgICAgICAgICAgICAgICAgKDB4MDhVIDw8IEFEQ19TUVI1X1NRNV9Qb3MpICAgICAgIC8qITwgMHgwMDgwMDAwMCAqLw0KI2RlZmluZSBBRENfU1FSNV9TUTVfNCAgICAgICAgICAgICAgICAgICAgICAgKDB4MTBVIDw8IEFEQ19TUVI1X1NRNV9Qb3MpICAgICAgIC8qITwgMHgwMTAwMDAwMCAqLw0KDQojZGVmaW5lIEFEQ19TUVI1X1NRNl9Qb3MgICAgICAgICAgICAgICAgICAgICAoMjVVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEFEQ19TUVI1X1NRNl9Nc2sgICAgICAgICAgICAgICAgICAgICAoMHgxRlUgPDwgQURDX1NRUjVfU1E2X1BvcykgICAgICAgLyohPCAweDNFMDAwMDAwICovDQojZGVmaW5lIEFEQ19TUVI1X1NRNiAgICAgICAgICAgICAgICAgICAgICAgICBBRENfU1FSNV9TUTZfTXNrICAgICAgICAgICAgICAgICAgLyohPCBBREMgZ3JvdXAgcmVndWxhciBzZXF1ZW5jZXIgcmFuayA2ICovDQojZGVmaW5lIEFEQ19TUVI1X1NRNl8wICAgICAgICAgICAgICAgICAgICAgICAoMHgwMVUgPDwgQURDX1NRUjVfU1E2X1BvcykgICAgICAgLyohPCAweDAyMDAwMDAwICovDQojZGVmaW5lIEFEQ19TUVI1X1NRNl8xICAgICAgICAgICAgICAgICAgICAgICAoMHgwMlUgPDwgQURDX1NRUjVfU1E2X1BvcykgICAgICAgLyohPCAweDA0MDAwMDAwICovDQojZGVmaW5lIEFEQ19TUVI1X1NRNl8yICAgICAgICAgICAgICAgICAgICAgICAoMHgwNFUgPDwgQURDX1NRUjVfU1E2X1BvcykgICAgICAgLyohPCAweDA4MDAwMDAwICovDQojZGVmaW5lIEFEQ19TUVI1X1NRNl8zICAgICAgICAgICAgICAgICAgICAgICAoMHgwOFUgPDwgQURDX1NRUjVfU1E2X1BvcykgICAgICAgLyohPCAweDEwMDAwMDAwICovDQojZGVmaW5lIEFEQ19TUVI1X1NRNl80ICAgICAgICAgICAgICAgICAgICAgICAoMHgxMFUgPDwgQURDX1NRUjVfU1E2X1BvcykgICAgICAgLyohPCAweDIwMDAwMDAwICovDQoNCg0KLyoqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBBRENfSlNRUiByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgQURDX0pTUVJfSlNRMV9Qb3MgICAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgQURDX0pTUVJfSlNRMV9Nc2sgICAgICAgICAgICAgICAgICAgICgweDFGVSA8PCBBRENfSlNRUl9KU1ExX1BvcykgICAgICAvKiE8IDB4MDAwMDAwMUYgKi8NCiNkZWZpbmUgQURDX0pTUVJfSlNRMSAgICAgICAgICAgICAgICAgICAgICAgIEFEQ19KU1FSX0pTUTFfTXNrICAgICAgICAgICAgICAgICAvKiE8IEFEQyBncm91cCBpbmplY3RlZCBzZXF1ZW5jZXIgcmFuayAxICovDQojZGVmaW5lIEFEQ19KU1FSX0pTUTFfMCAgICAgICAgICAgICAgICAgICAgICAoMHgwMVUgPDwgQURDX0pTUVJfSlNRMV9Qb3MpICAgICAgLyohPCAweDAwMDAwMDAxICovDQojZGVmaW5lIEFEQ19KU1FSX0pTUTFfMSAgICAgICAgICAgICAgICAgICAgICAoMHgwMlUgPDwgQURDX0pTUVJfSlNRMV9Qb3MpICAgICAgLyohPCAweDAwMDAwMDAyICovDQojZGVmaW5lIEFEQ19KU1FSX0pTUTFfMiAgICAgICAgICAgICAgICAgICAgICAoMHgwNFUgPDwgQURDX0pTUVJfSlNRMV9Qb3MpICAgICAgLyohPCAweDAwMDAwMDA0ICovDQojZGVmaW5lIEFEQ19KU1FSX0pTUTFfMyAgICAgICAgICAgICAgICAgICAgICAoMHgwOFUgPDwgQURDX0pTUVJfSlNRMV9Qb3MpICAgICAgLyohPCAweDAwMDAwMDA4ICovDQojZGVmaW5lIEFEQ19KU1FSX0pTUTFfNCAgICAgICAgICAgICAgICAgICAgICAoMHgxMFUgPDwgQURDX0pTUVJfSlNRMV9Qb3MpICAgICAgLyohPCAweDAwMDAwMDEwICovDQoNCiNkZWZpbmUgQURDX0pTUVJfSlNRMl9Qb3MgICAgICAgICAgICAgICAgICAgICg1VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgQURDX0pTUVJfSlNRMl9Nc2sgICAgICAgICAgICAgICAgICAgICgweDFGVSA8PCBBRENfSlNRUl9KU1EyX1BvcykgICAgICAvKiE8IDB4MDAwMDAzRTAgKi8NCiNkZWZpbmUgQURDX0pTUVJfSlNRMiAgICAgICAgICAgICAgICAgICAgICAgIEFEQ19KU1FSX0pTUTJfTXNrICAgICAgICAgICAgICAgICAvKiE8IEFEQyBncm91cCBpbmplY3RlZCBzZXF1ZW5jZXIgcmFuayAyICovDQojZGVmaW5lIEFEQ19KU1FSX0pTUTJfMCAgICAgICAgICAgICAgICAgICAgICAoMHgwMVUgPDwgQURDX0pTUVJfSlNRMl9Qb3MpICAgICAgLyohPCAweDAwMDAwMDIwICovDQojZGVmaW5lIEFEQ19KU1FSX0pTUTJfMSAgICAgICAgICAgICAgICAgICAgICAoMHgwMlUgPDwgQURDX0pTUVJfSlNRMl9Qb3MpICAgICAgLyohPCAweDAwMDAwMDQwICovDQojZGVmaW5lIEFEQ19KU1FSX0pTUTJfMiAgICAgICAgICAgICAgICAgICAgICAoMHgwNFUgPDwgQURDX0pTUVJfSlNRMl9Qb3MpICAgICAgLyohPCAweDAwMDAwMDgwICovDQojZGVmaW5lIEFEQ19KU1FSX0pTUTJfMyAgICAgICAgICAgICAgICAgICAgICAoMHgwOFUgPDwgQURDX0pTUVJfSlNRMl9Qb3MpICAgICAgLyohPCAweDAwMDAwMTAwICovDQojZGVmaW5lIEFEQ19KU1FSX0pTUTJfNCAgICAgICAgICAgICAgICAgICAgICAoMHgxMFUgPDwgQURDX0pTUVJfSlNRMl9Qb3MpICAgICAgLyohPCAweDAwMDAwMjAwICovDQoNCiNkZWZpbmUgQURDX0pTUVJfSlNRM19Qb3MgICAgICAgICAgICAgICAgICAgICgxMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgQURDX0pTUVJfSlNRM19Nc2sgICAgICAgICAgICAgICAgICAgICgweDFGVSA8PCBBRENfSlNRUl9KU1EzX1BvcykgICAgICAvKiE8IDB4MDAwMDdDMDAgKi8NCiNkZWZpbmUgQURDX0pTUVJfSlNRMyAgICAgICAgICAgICAgICAgICAgICAgIEFEQ19KU1FSX0pTUTNfTXNrICAgICAgICAgICAgICAgICAvKiE8IEFEQyBncm91cCBpbmplY3RlZCBzZXF1ZW5jZXIgcmFuayAzICovDQojZGVmaW5lIEFEQ19KU1FSX0pTUTNfMCAgICAgICAgICAgICAgICAgICAgICAoMHgwMVUgPDwgQURDX0pTUVJfSlNRM19Qb3MpICAgICAgLyohPCAweDAwMDAwNDAwICovDQojZGVmaW5lIEFEQ19KU1FSX0pTUTNfMSAgICAgICAgICAgICAgICAgICAgICAoMHgwMlUgPDwgQURDX0pTUVJfSlNRM19Qb3MpICAgICAgLyohPCAweDAwMDAwODAwICovDQojZGVmaW5lIEFEQ19KU1FSX0pTUTNfMiAgICAgICAgICAgICAgICAgICAgICAoMHgwNFUgPDwgQURDX0pTUVJfSlNRM19Qb3MpICAgICAgLyohPCAweDAwMDAxMDAwICovDQojZGVmaW5lIEFEQ19KU1FSX0pTUTNfMyAgICAgICAgICAgICAgICAgICAgICAoMHgwOFUgPDwgQURDX0pTUVJfSlNRM19Qb3MpICAgICAgLyohPCAweDAwMDAyMDAwICovDQojZGVmaW5lIEFEQ19KU1FSX0pTUTNfNCAgICAgICAgICAgICAgICAgICAgICAoMHgxMFUgPDwgQURDX0pTUVJfSlNRM19Qb3MpICAgICAgLyohPCAweDAwMDA0MDAwICovDQoNCiNkZWZpbmUgQURDX0pTUVJfSlNRNF9Qb3MgICAgICAgICAgICAgICAgICAgICgxNVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgQURDX0pTUVJfSlNRNF9Nc2sgICAgICAgICAgICAgICAgICAgICgweDFGVSA8PCBBRENfSlNRUl9KU1E0X1BvcykgICAgICAvKiE8IDB4MDAwRjgwMDAgKi8NCiNkZWZpbmUgQURDX0pTUVJfSlNRNCAgICAgICAgICAgICAgICAgICAgICAgIEFEQ19KU1FSX0pTUTRfTXNrICAgICAgICAgICAgICAgICAvKiE8IEFEQyBncm91cCBpbmplY3RlZCBzZXF1ZW5jZXIgcmFuayA0ICovDQojZGVmaW5lIEFEQ19KU1FSX0pTUTRfMCAgICAgICAgICAgICAgICAgICAgICAoMHgwMVUgPDwgQURDX0pTUVJfSlNRNF9Qb3MpICAgICAgLyohPCAweDAwMDA4MDAwICovDQojZGVmaW5lIEFEQ19KU1FSX0pTUTRfMSAgICAgICAgICAgICAgICAgICAgICAoMHgwMlUgPDwgQURDX0pTUVJfSlNRNF9Qb3MpICAgICAgLyohPCAweDAwMDEwMDAwICovDQojZGVmaW5lIEFEQ19KU1FSX0pTUTRfMiAgICAgICAgICAgICAgICAgICAgICAoMHgwNFUgPDwgQURDX0pTUVJfSlNRNF9Qb3MpICAgICAgLyohPCAweDAwMDIwMDAwICovDQojZGVmaW5lIEFEQ19KU1FSX0pTUTRfMyAgICAgICAgICAgICAgICAgICAgICAoMHgwOFUgPDwgQURDX0pTUVJfSlNRNF9Qb3MpICAgICAgLyohPCAweDAwMDQwMDAwICovDQojZGVmaW5lIEFEQ19KU1FSX0pTUTRfNCAgICAgICAgICAgICAgICAgICAgICAoMHgxMFUgPDwgQURDX0pTUVJfSlNRNF9Qb3MpICAgICAgLyohPCAweDAwMDgwMDAwICovDQoNCiNkZWZpbmUgQURDX0pTUVJfSkxfUG9zICAgICAgICAgICAgICAgICAgICAgICgyMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgQURDX0pTUVJfSkxfTXNrICAgICAgICAgICAgICAgICAgICAgICgweDNVIDw8IEFEQ19KU1FSX0pMX1BvcykgICAgICAgICAvKiE8IDB4MDAzMDAwMDAgKi8NCiNkZWZpbmUgQURDX0pTUVJfSkwgICAgICAgICAgICAgICAgICAgICAgICAgIEFEQ19KU1FSX0pMX01zayAgICAgICAgICAgICAgICAgICAvKiE8IEFEQyBncm91cCBpbmplY3RlZCBzZXF1ZW5jZXIgc2NhbiBsZW5ndGggKi8NCiNkZWZpbmUgQURDX0pTUVJfSkxfMCAgICAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IEFEQ19KU1FSX0pMX1BvcykgICAgICAgICAvKiE8IDB4MDAxMDAwMDAgKi8NCiNkZWZpbmUgQURDX0pTUVJfSkxfMSAgICAgICAgICAgICAgICAgICAgICAgICgweDJVIDw8IEFEQ19KU1FSX0pMX1BvcykgICAgICAgICAvKiE8IDB4MDAyMDAwMDAgKi8NCg0KLyoqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBBRENfSkRSMSByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgQURDX0pEUjFfSkRBVEFfUG9zICAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgQURDX0pEUjFfSkRBVEFfTXNrICAgICAgICAgICAgICAgICAgICgweEZGRkZVIDw8IEFEQ19KRFIxX0pEQVRBX1BvcykgICAvKiE8IDB4MDAwMEZGRkYgKi8NCiNkZWZpbmUgQURDX0pEUjFfSkRBVEEgICAgICAgICAgICAgICAgICAgICAgIEFEQ19KRFIxX0pEQVRBX01zayAgICAgICAgICAgICAgICAvKiE8IEFEQyBncm91cCBpbmplY3RlZCBzZXF1ZW5jZXIgcmFuayAxIGNvbnZlcnNpb24gZGF0YSAqLw0KDQovKioqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIEFEQ19KRFIyIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBBRENfSkRSMl9KREFUQV9Qb3MgICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBBRENfSkRSMl9KREFUQV9Nc2sgICAgICAgICAgICAgICAgICAgKDB4RkZGRlUgPDwgQURDX0pEUjJfSkRBVEFfUG9zKSAgIC8qITwgMHgwMDAwRkZGRiAqLw0KI2RlZmluZSBBRENfSkRSMl9KREFUQSAgICAgICAgICAgICAgICAgICAgICAgQURDX0pEUjJfSkRBVEFfTXNrICAgICAgICAgICAgICAgIC8qITwgQURDIGdyb3VwIGluamVjdGVkIHNlcXVlbmNlciByYW5rIDIgY29udmVyc2lvbiBkYXRhICovDQoNCi8qKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgQURDX0pEUjMgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIEFEQ19KRFIzX0pEQVRBX1BvcyAgICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEFEQ19KRFIzX0pEQVRBX01zayAgICAgICAgICAgICAgICAgICAoMHhGRkZGVSA8PCBBRENfSkRSM19KREFUQV9Qb3MpICAgLyohPCAweDAwMDBGRkZGICovDQojZGVmaW5lIEFEQ19KRFIzX0pEQVRBICAgICAgICAgICAgICAgICAgICAgICBBRENfSkRSM19KREFUQV9Nc2sgICAgICAgICAgICAgICAgLyohPCBBREMgZ3JvdXAgaW5qZWN0ZWQgc2VxdWVuY2VyIHJhbmsgMyBjb252ZXJzaW9uIGRhdGEgKi8NCg0KLyoqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBBRENfSkRSNCByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgQURDX0pEUjRfSkRBVEFfUG9zICAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgQURDX0pEUjRfSkRBVEFfTXNrICAgICAgICAgICAgICAgICAgICgweEZGRkZVIDw8IEFEQ19KRFI0X0pEQVRBX1BvcykgICAvKiE8IDB4MDAwMEZGRkYgKi8NCiNkZWZpbmUgQURDX0pEUjRfSkRBVEEgICAgICAgICAgICAgICAgICAgICAgIEFEQ19KRFI0X0pEQVRBX01zayAgICAgICAgICAgICAgICAvKiE8IEFEQyBncm91cCBpbmplY3RlZCBzZXF1ZW5jZXIgcmFuayA0IGNvbnZlcnNpb24gZGF0YSAqLw0KDQovKioqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBBRENfRFIgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBBRENfRFJfREFUQV9Qb3MgICAgICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBBRENfRFJfREFUQV9Nc2sgICAgICAgICAgICAgICAgICAgICAgKDB4RkZGRlUgPDwgQURDX0RSX0RBVEFfUG9zKSAgICAgIC8qITwgMHgwMDAwRkZGRiAqLw0KI2RlZmluZSBBRENfRFJfREFUQSAgICAgICAgICAgICAgICAgICAgICAgICAgQURDX0RSX0RBVEFfTXNrICAgICAgICAgICAgICAgICAgIC8qITwgQURDIGdyb3VwIHJlZ3VsYXIgY29udmVyc2lvbiBkYXRhICovDQoNCi8qKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBBRENfU01QUjAgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIEFEQ19TTVBSMF9TTVAzMF9Qb3MgICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEFEQ19TTVBSMF9TTVAzMF9Nc2sgICAgICAgICAgICAgICAgICAoMHg3VSA8PCBBRENfU01QUjBfU01QMzBfUG9zKSAgICAgLyohPCAweDAwMDAwMDA3ICovDQojZGVmaW5lIEFEQ19TTVBSMF9TTVAzMCAgICAgICAgICAgICAgICAgICAgICBBRENfU01QUjBfU01QMzBfTXNrICAgICAgICAgICAgICAgLyohPCBBREMgY2hhbm5lbCAzMCBzYW1wbGluZyB0aW1lIHNlbGVjdGlvbiAqLw0KI2RlZmluZSBBRENfU01QUjBfU01QMzBfMCAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgQURDX1NNUFIwX1NNUDMwX1BvcykgICAgIC8qITwgMHgwMDAwMDAwMSAqLw0KI2RlZmluZSBBRENfU01QUjBfU01QMzBfMSAgICAgICAgICAgICAgICAgICAgKDB4MlUgPDwgQURDX1NNUFIwX1NNUDMwX1BvcykgICAgIC8qITwgMHgwMDAwMDAwMiAqLw0KI2RlZmluZSBBRENfU01QUjBfU01QMzBfMiAgICAgICAgICAgICAgICAgICAgKDB4NFUgPDwgQURDX1NNUFIwX1NNUDMwX1BvcykgICAgIC8qITwgMHgwMDAwMDAwNCAqLw0KIA0KI2RlZmluZSBBRENfU01QUjBfU01QMzFfUG9zICAgICAgICAgICAgICAgICAgKDNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBBRENfU01QUjBfU01QMzFfTXNrICAgICAgICAgICAgICAgICAgKDB4N1UgPDwgQURDX1NNUFIwX1NNUDMxX1BvcykgICAgIC8qITwgMHgwMDAwMDAzOCAqLw0KI2RlZmluZSBBRENfU01QUjBfU01QMzEgICAgICAgICAgICAgICAgICAgICAgQURDX1NNUFIwX1NNUDMxX01zayAgICAgICAgICAgICAgIC8qITwgQURDIGNoYW5uZWwgMzEgc2FtcGxpbmcgdGltZSBzZWxlY3Rpb24gKi8NCiNkZWZpbmUgQURDX1NNUFIwX1NNUDMxXzAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IEFEQ19TTVBSMF9TTVAzMV9Qb3MpICAgICAvKiE8IDB4MDAwMDAwMDggKi8NCiNkZWZpbmUgQURDX1NNUFIwX1NNUDMxXzEgICAgICAgICAgICAgICAgICAgICgweDJVIDw8IEFEQ19TTVBSMF9TTVAzMV9Qb3MpICAgICAvKiE8IDB4MDAwMDAwMTAgKi8NCiNkZWZpbmUgQURDX1NNUFIwX1NNUDMxXzIgICAgICAgICAgICAgICAgICAgICgweDRVIDw8IEFEQ19TTVBSMF9TTVAzMV9Qb3MpICAgICAvKiE8IDB4MDAwMDAwMjAgKi8NCg0KLyoqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBBRENfQ1NSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgQURDX0NTUl9BV0QxX1BvcyAgICAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgQURDX0NTUl9BV0QxX01zayAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IEFEQ19DU1JfQVdEMV9Qb3MpICAgICAgICAvKiE8IDB4MDAwMDAwMDEgKi8NCiNkZWZpbmUgQURDX0NTUl9BV0QxICAgICAgICAgICAgICAgICAgICAgICAgIEFEQ19DU1JfQVdEMV9Nc2sgICAgICAgICAgICAgICAgICAvKiE8IEFEQyBtdWx0aW1vZGUgbWFzdGVyIGFuYWxvZyB3YXRjaGRvZyAxIGZsYWcgKi8NCiNkZWZpbmUgQURDX0NTUl9FT0NTMV9Qb3MgICAgICAgICAgICAgICAgICAgICgxVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgQURDX0NTUl9FT0NTMV9Nc2sgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IEFEQ19DU1JfRU9DUzFfUG9zKSAgICAgICAvKiE8IDB4MDAwMDAwMDIgKi8NCiNkZWZpbmUgQURDX0NTUl9FT0NTMSAgICAgICAgICAgICAgICAgICAgICAgIEFEQ19DU1JfRU9DUzFfTXNrICAgICAgICAgICAgICAgICAvKiE8IEFEQyBtdWx0aW1vZGUgbWFzdGVyIGdyb3VwIHJlZ3VsYXIgZW5kIG9mIHVuaXRhcnkgY29udmVyc2lvbiBvciBlbmQgb2Ygc2VxdWVuY2UgY29udmVyc2lvbnMgZmxhZyAqLw0KI2RlZmluZSBBRENfQ1NSX0pFT1MxX1BvcyAgICAgICAgICAgICAgICAgICAgKDJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBBRENfQ1NSX0pFT1MxX01zayAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgQURDX0NTUl9KRU9TMV9Qb3MpICAgICAgIC8qITwgMHgwMDAwMDAwNCAqLw0KI2RlZmluZSBBRENfQ1NSX0pFT1MxICAgICAgICAgICAgICAgICAgICAgICAgQURDX0NTUl9KRU9TMV9Nc2sgICAgICAgICAgICAgICAgIC8qITwgQURDIG11bHRpbW9kZSBtYXN0ZXIgZ3JvdXAgaW5qZWN0ZWQgZW5kIG9mIHNlcXVlbmNlIGNvbnZlcnNpb25zIGZsYWcgKi8NCiNkZWZpbmUgQURDX0NTUl9KU1RSVDFfUG9zICAgICAgICAgICAgICAgICAgICgzVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgQURDX0NTUl9KU1RSVDFfTXNrICAgICAgICAgICAgICAgICAgICgweDFVIDw8IEFEQ19DU1JfSlNUUlQxX1BvcykgICAgICAvKiE8IDB4MDAwMDAwMDggKi8NCiNkZWZpbmUgQURDX0NTUl9KU1RSVDEgICAgICAgICAgICAgICAgICAgICAgIEFEQ19DU1JfSlNUUlQxX01zayAgICAgICAgICAgICAgICAvKiE8IEFEQyBtdWx0aW1vZGUgbWFzdGVyIGdyb3VwIGluamVjdGVkIGNvbnZlcnNpb24gc3RhcnQgZmxhZyAqLw0KI2RlZmluZSBBRENfQ1NSX1NUUlQxX1BvcyAgICAgICAgICAgICAgICAgICAgKDRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBBRENfQ1NSX1NUUlQxX01zayAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgQURDX0NTUl9TVFJUMV9Qb3MpICAgICAgIC8qITwgMHgwMDAwMDAxMCAqLw0KI2RlZmluZSBBRENfQ1NSX1NUUlQxICAgICAgICAgICAgICAgICAgICAgICAgQURDX0NTUl9TVFJUMV9Nc2sgICAgICAgICAgICAgICAgIC8qITwgQURDIG11bHRpbW9kZSBtYXN0ZXIgZ3JvdXAgcmVndWxhciBjb252ZXJzaW9uIHN0YXJ0IGZsYWcgKi8NCiNkZWZpbmUgQURDX0NTUl9PVlIxX1BvcyAgICAgICAgICAgICAgICAgICAgICg1VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgQURDX0NTUl9PVlIxX01zayAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IEFEQ19DU1JfT1ZSMV9Qb3MpICAgICAgICAvKiE8IDB4MDAwMDAwMjAgKi8NCiNkZWZpbmUgQURDX0NTUl9PVlIxICAgICAgICAgICAgICAgICAgICAgICAgIEFEQ19DU1JfT1ZSMV9Nc2sgICAgICAgICAgICAgICAgICAvKiE8IEFEQyBtdWx0aW1vZGUgbWFzdGVyIGdyb3VwIHJlZ3VsYXIgb3ZlcnJ1biBmbGFnICovDQojZGVmaW5lIEFEQ19DU1JfQURPTlMxX1BvcyAgICAgICAgICAgICAgICAgICAoNlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEFEQ19DU1JfQURPTlMxX01zayAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBBRENfQ1NSX0FET05TMV9Qb3MpICAgICAgLyohPCAweDAwMDAwMDQwICovDQojZGVmaW5lIEFEQ19DU1JfQURPTlMxICAgICAgICAgICAgICAgICAgICAgICBBRENfQ1NSX0FET05TMV9Nc2sgICAgICAgICAgICAgICAgLyohPCBBREMgbXVsdGltb2RlIG1hc3RlciByZWFkeSBmbGFnICovDQoNCi8qIExlZ2FjeSBkZWZpbmVzICovDQojZGVmaW5lICBBRENfQ1NSX0VPQzEgICAgICAgICAgICAgICAgICAgICAgICAoQURDX0NTUl9FT0NTMSkNCiNkZWZpbmUgIEFEQ19DU1JfSkVPQzEgICAgICAgICAgICAgICAgICAgICAgIChBRENfQ1NSX0pFT1MxKQ0KDQovKioqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIEFEQ19DQ1IgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBBRENfQ0NSX0FEQ1BSRV9Qb3MgICAgICAgICAgICAgICAgICAgKDE2VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBBRENfQ0NSX0FEQ1BSRV9Nc2sgICAgICAgICAgICAgICAgICAgKDB4M1UgPDwgQURDX0NDUl9BRENQUkVfUG9zKSAgICAgIC8qITwgMHgwMDAzMDAwMCAqLw0KI2RlZmluZSBBRENfQ0NSX0FEQ1BSRSAgICAgICAgICAgICAgICAgICAgICAgQURDX0NDUl9BRENQUkVfTXNrICAgICAgICAgICAgICAgIC8qITwgQURDIGNsb2NrIHNvdXJjZSBhc3luY2hyb25vdXMgcHJlc2NhbGVyICovDQojZGVmaW5lIEFEQ19DQ1JfQURDUFJFXzAgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBBRENfQ0NSX0FEQ1BSRV9Qb3MpICAgICAgLyohPCAweDAwMDEwMDAwICovDQojZGVmaW5lIEFEQ19DQ1JfQURDUFJFXzEgICAgICAgICAgICAgICAgICAgICAoMHgyVSA8PCBBRENfQ0NSX0FEQ1BSRV9Qb3MpICAgICAgLyohPCAweDAwMDIwMDAwICovDQojZGVmaW5lIEFEQ19DQ1JfVFNWUkVGRV9Qb3MgICAgICAgICAgICAgICAgICAoMjNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEFEQ19DQ1JfVFNWUkVGRV9Nc2sgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBBRENfQ0NSX1RTVlJFRkVfUG9zKSAgICAgLyohPCAweDAwODAwMDAwICovDQojZGVmaW5lIEFEQ19DQ1JfVFNWUkVGRSAgICAgICAgICAgICAgICAgICAgICBBRENfQ0NSX1RTVlJFRkVfTXNrICAgICAgICAgICAgICAgLyohPCBBREMgaW50ZXJuYWwgcGF0aCB0byBWcmVmSW50IGFuZCB0ZW1wZXJhdHVyZSBzZW5zb3IgZW5hYmxlICovDQoNCi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovDQovKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLw0KLyogICAgICAgICAgICAgICAgICAgICAgQW5hbG9nIENvbXBhcmF0b3JzIChDT01QKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8NCi8qICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovDQovKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLw0KDQovKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgQ09NUF9DU1IgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBDT01QX0NTUl8xMEtQVSAgICAgICAgICAgICAgICAgICAgICAoMHgwMDAwMDAwMVUpICAgICAgICAgICAgICAgICAgICAgIC8qITwgQ29tcGFyYXRvciAxIGlucHV0IHBsdXMgMTBLIHB1bGwtdXAgcmVzaXN0b3IgKi8NCiNkZWZpbmUgQ09NUF9DU1JfNDAwS1BVICAgICAgICAgICAgICAgICAgICAgKDB4MDAwMDAwMDJVKSAgICAgICAgICAgICAgICAgICAgICAvKiE8IENvbXBhcmF0b3IgMSBpbnB1dCBwbHVzIDQwMEsgcHVsbC11cCByZXNpc3RvciAqLw0KI2RlZmluZSBDT01QX0NTUl8xMEtQRCAgICAgICAgICAgICAgICAgICAgICAoMHgwMDAwMDAwNFUpICAgICAgICAgICAgICAgICAgICAgIC8qITwgQ29tcGFyYXRvciAxIGlucHV0IHBsdXMgMTBLIHB1bGwtZG93biByZXNpc3RvciAqLw0KI2RlZmluZSBDT01QX0NTUl80MDBLUEQgICAgICAgICAgICAgICAgICAgICAoMHgwMDAwMDAwOFUpICAgICAgICAgICAgICAgICAgICAgIC8qITwgQ29tcGFyYXRvciAxIGlucHV0IHBsdXMgNDAwSyBwdWxsLWRvd24gcmVzaXN0b3IgKi8NCiNkZWZpbmUgQ09NUF9DU1JfQ01QMUVOX1BvcyAgICAgICAgICAgICAgICAgKDRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgQ09NUF9DU1JfQ01QMUVOX01zayAgICAgICAgICAgICAgICAgKDB4MVUgPDwgQ09NUF9DU1JfQ01QMUVOX1BvcykgICAgICAvKiE8IDB4MDAwMDAwMTAgKi8NCiNkZWZpbmUgQ09NUF9DU1JfQ01QMUVOICAgICAgICAgICAgICAgICAgICAgQ09NUF9DU1JfQ01QMUVOX01zayAgICAgICAgICAgICAgICAvKiE8IENvbXBhcmF0b3IgMSBlbmFibGUgKi8NCiNkZWZpbmUgQ09NUF9DU1JfQ01QMU9VVF9Qb3MgICAgICAgICAgICAgICAgKDdVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgQ09NUF9DU1JfQ01QMU9VVF9Nc2sgICAgICAgICAgICAgICAgKDB4MVUgPDwgQ09NUF9DU1JfQ01QMU9VVF9Qb3MpICAgICAvKiE8IDB4MDAwMDAwODAgKi8NCiNkZWZpbmUgQ09NUF9DU1JfQ01QMU9VVCAgICAgICAgICAgICAgICAgICAgQ09NUF9DU1JfQ01QMU9VVF9Nc2sgICAgICAgICAgICAgICAvKiE8IENvbXBhcmF0b3IgMSBvdXRwdXQgbGV2ZWwgKi8NCiNkZWZpbmUgQ09NUF9DU1JfU1BFRURfUG9zICAgICAgICAgICAgICAgICAgKDEyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgQ09NUF9DU1JfU1BFRURfTXNrICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgQ09NUF9DU1JfU1BFRURfUG9zKSAgICAgICAvKiE8IDB4MDAwMDEwMDAgKi8NCiNkZWZpbmUgQ09NUF9DU1JfU1BFRUQgICAgICAgICAgICAgICAgICAgICAgQ09NUF9DU1JfU1BFRURfTXNrICAgICAgICAgICAgICAgICAvKiE8IENvbXBhcmF0b3IgMiBwb3dlciBtb2RlICovDQojZGVmaW5lIENPTVBfQ1NSX0NNUDJPVVRfUG9zICAgICAgICAgICAgICAgICgxM1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIENPTVBfQ1NSX0NNUDJPVVRfTXNrICAgICAgICAgICAgICAgICgweDFVIDw8IENPTVBfQ1NSX0NNUDJPVVRfUG9zKSAgICAgLyohPCAweDAwMDAyMDAwICovDQojZGVmaW5lIENPTVBfQ1NSX0NNUDJPVVQgICAgICAgICAgICAgICAgICAgIENPTVBfQ1NSX0NNUDJPVVRfTXNrICAgICAgICAgICAgICAgLyohPCBDb21wYXJhdG9yIDIgb3V0cHV0IGxldmVsICovDQoNCiNkZWZpbmUgQ09NUF9DU1JfV05EV0VfUG9zICAgICAgICAgICAgICAgICAgKDE3VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgQ09NUF9DU1JfV05EV0VfTXNrICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgQ09NUF9DU1JfV05EV0VfUG9zKSAgICAgICAvKiE8IDB4MDAwMjAwMDAgKi8NCiNkZWZpbmUgQ09NUF9DU1JfV05EV0UgICAgICAgICAgICAgICAgICAgICAgQ09NUF9DU1JfV05EV0VfTXNrICAgICAgICAgICAgICAgICAvKiE8IFBhaXIgb2YgY29tcGFyYXRvcnMgd2luZG93IG1vZGUuIEJpdCBpbnRlbmRlZCB0byBiZSB1c2VkIHdpdGggQ09NUCBjb21tb24gaW5zdGFuY2UgKENPTVBfQ29tbW9uX1R5cGVEZWYpICAqLw0KDQojZGVmaW5lIENPTVBfQ1NSX0lOU0VMX1BvcyAgICAgICAgICAgICAgICAgICgxOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIENPTVBfQ1NSX0lOU0VMX01zayAgICAgICAgICAgICAgICAgICgweDdVIDw8IENPTVBfQ1NSX0lOU0VMX1BvcykgICAgICAgLyohPCAweDAwMUMwMDAwICovDQojZGVmaW5lIENPTVBfQ1NSX0lOU0VMICAgICAgICAgICAgICAgICAgICAgIENPTVBfQ1NSX0lOU0VMX01zayAgICAgICAgICAgICAgICAgLyohPCBDb21wYXJhdG9yIDIgaW5wdXQgbWludXMgc2VsZWN0aW9uICovDQojZGVmaW5lIENPTVBfQ1NSX0lOU0VMXzAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IENPTVBfQ1NSX0lOU0VMX1BvcykgICAgICAgLyohPCAweDAwMDQwMDAwICovDQojZGVmaW5lIENPTVBfQ1NSX0lOU0VMXzEgICAgICAgICAgICAgICAgICAgICgweDJVIDw8IENPTVBfQ1NSX0lOU0VMX1BvcykgICAgICAgLyohPCAweDAwMDgwMDAwICovDQojZGVmaW5lIENPTVBfQ1NSX0lOU0VMXzIgICAgICAgICAgICAgICAgICAgICgweDRVIDw8IENPTVBfQ1NSX0lOU0VMX1BvcykgICAgICAgLyohPCAweDAwMTAwMDAwICovDQojZGVmaW5lIENPTVBfQ1NSX09VVFNFTF9Qb3MgICAgICAgICAgICAgICAgICgyMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIENPTVBfQ1NSX09VVFNFTF9Nc2sgICAgICAgICAgICAgICAgICgweDdVIDw8IENPTVBfQ1NSX09VVFNFTF9Qb3MpICAgICAgLyohPCAweDAwRTAwMDAwICovDQojZGVmaW5lIENPTVBfQ1NSX09VVFNFTCAgICAgICAgICAgICAgICAgICAgIENPTVBfQ1NSX09VVFNFTF9Nc2sgICAgICAgICAgICAgICAgLyohPCBDb21wYXJhdG9yIDIgb3V0cHV0IHJlZGlyZWN0aW9uICovDQojZGVmaW5lIENPTVBfQ1NSX09VVFNFTF8wICAgICAgICAgICAgICAgICAgICgweDFVIDw8IENPTVBfQ1NSX09VVFNFTF9Qb3MpICAgICAgLyohPCAweDAwMjAwMDAwICovDQojZGVmaW5lIENPTVBfQ1NSX09VVFNFTF8xICAgICAgICAgICAgICAgICAgICgweDJVIDw8IENPTVBfQ1NSX09VVFNFTF9Qb3MpICAgICAgLyohPCAweDAwNDAwMDAwICovDQojZGVmaW5lIENPTVBfQ1NSX09VVFNFTF8yICAgICAgICAgICAgICAgICAgICgweDRVIDw8IENPTVBfQ1NSX09VVFNFTF9Qb3MpICAgICAgLyohPCAweDAwODAwMDAwICovDQoNCi8qIEJpdHMgcHJlc2VudCBpbiBDT01QIHJlZ2lzdGVyIGJ1dCBub3QgcmVsYXRlZCB0byBjb21wYXJhdG9yICovDQovKiAob3IgcGFydGlhbGx5IHJlbGF0ZWQgdG8gY29tcGFyYXRvciwgaW4gYWRkaXRpb24gdG8gb3RoZXIgcGVyaXBoZXJhbHMpICovDQojZGVmaW5lIENPTVBfQ1NSX1NXMV9Qb3MgICAgICAgICAgICAgICAgICAgICg1VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIENPTVBfQ1NSX1NXMV9Nc2sgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IENPTVBfQ1NSX1NXMV9Qb3MpICAgICAgICAgLyohPCAweDAwMDAwMDIwICovDQojZGVmaW5lIENPTVBfQ1NSX1NXMSAgICAgICAgICAgICAgICAgICAgICAgIENPTVBfQ1NSX1NXMV9Nc2sgICAgICAgICAgICAgICAgICAgLyohPCBTVzEgYW5hbG9nIHN3aXRjaCBlbmFibGUgKi8NCiNkZWZpbmUgQ09NUF9DU1JfVlJFRk9VVEVOX1BvcyAgICAgICAgICAgICAgKDE2VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgQ09NUF9DU1JfVlJFRk9VVEVOX01zayAgICAgICAgICAgICAgKDB4MVUgPDwgQ09NUF9DU1JfVlJFRk9VVEVOX1BvcykgICAvKiE8IDB4MDAwMTAwMDAgKi8NCiNkZWZpbmUgQ09NUF9DU1JfVlJFRk9VVEVOICAgICAgICAgICAgICAgICAgQ09NUF9DU1JfVlJFRk9VVEVOX01zayAgICAgICAgICAgICAvKiE8IFZyZWZJbnQgb3V0cHV0IGVuYWJsZSBvbiBHUElPIGdyb3VwIDMgKi8NCg0KI2RlZmluZSBDT01QX0NTUl9GQ0gzX1BvcyAgICAgICAgICAgICAgICAgICAoMjZVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBDT01QX0NTUl9GQ0gzX01zayAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBDT01QX0NTUl9GQ0gzX1BvcykgICAgICAgIC8qITwgMHgwNDAwMDAwMCAqLw0KI2RlZmluZSBDT01QX0NTUl9GQ0gzICAgICAgICAgICAgICAgICAgICAgICBDT01QX0NTUl9GQ0gzX01zayAgICAgICAgICAgICAgICAgIC8qITwgQml0IDI2ICovDQojZGVmaW5lIENPTVBfQ1NSX0ZDSDhfUG9zICAgICAgICAgICAgICAgICAgICgyN1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIENPTVBfQ1NSX0ZDSDhfTXNrICAgICAgICAgICAgICAgICAgICgweDFVIDw8IENPTVBfQ1NSX0ZDSDhfUG9zKSAgICAgICAgLyohPCAweDA4MDAwMDAwICovDQojZGVmaW5lIENPTVBfQ1NSX0ZDSDggICAgICAgICAgICAgICAgICAgICAgIENPTVBfQ1NSX0ZDSDhfTXNrICAgICAgICAgICAgICAgICAgLyohPCBCaXQgMjcgKi8NCiNkZWZpbmUgQ09NUF9DU1JfUkNIMTNfUG9zICAgICAgICAgICAgICAgICAgKDI4VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgQ09NUF9DU1JfUkNIMTNfTXNrICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgQ09NUF9DU1JfUkNIMTNfUG9zKSAgICAgICAvKiE8IDB4MTAwMDAwMDAgKi8NCiNkZWZpbmUgQ09NUF9DU1JfUkNIMTMgICAgICAgICAgICAgICAgICAgICAgQ09NUF9DU1JfUkNIMTNfTXNrICAgICAgICAgICAgICAgICAvKiE8IEJpdCAyOCAqLw0KDQojZGVmaW5lIENPTVBfQ1NSX0NBSUVfUG9zICAgICAgICAgICAgICAgICAgICgyOVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIENPTVBfQ1NSX0NBSUVfTXNrICAgICAgICAgICAgICAgICAgICgweDFVIDw8IENPTVBfQ1NSX0NBSUVfUG9zKSAgICAgICAgLyohPCAweDIwMDAwMDAwICovDQojZGVmaW5lIENPTVBfQ1NSX0NBSUUgICAgICAgICAgICAgICAgICAgICAgIENPTVBfQ1NSX0NBSUVfTXNrICAgICAgICAgICAgICAgICAgLyohPCBCaXQgMjkgKi8NCiNkZWZpbmUgQ09NUF9DU1JfQ0FJRl9Qb3MgICAgICAgICAgICAgICAgICAgKDMwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgQ09NUF9DU1JfQ0FJRl9Nc2sgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgQ09NUF9DU1JfQ0FJRl9Qb3MpICAgICAgICAvKiE8IDB4NDAwMDAwMDAgKi8NCiNkZWZpbmUgQ09NUF9DU1JfQ0FJRiAgICAgICAgICAgICAgICAgICAgICAgQ09NUF9DU1JfQ0FJRl9Nc2sgICAgICAgICAgICAgICAgICAvKiE8IEJpdCAzMCAqLw0KI2RlZmluZSBDT01QX0NTUl9UU1VTUF9Qb3MgICAgICAgICAgICAgICAgICAoMzFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBDT01QX0NTUl9UU1VTUF9Nc2sgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBDT01QX0NTUl9UU1VTUF9Qb3MpICAgICAgIC8qITwgMHg4MDAwMDAwMCAqLw0KI2RlZmluZSBDT01QX0NTUl9UU1VTUCAgICAgICAgICAgICAgICAgICAgICBDT01QX0NTUl9UU1VTUF9Nc2sgICAgICAgICAgICAgICAgIC8qITwgQml0IDMxICovDQoNCi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovDQovKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLw0KLyogICAgICAgICAgICAgICAgICAgICAgICAgT3BlcmF0aW9uYWwgQW1wbGlmaWVyIChPUEFNUCkgICAgICAgICAgICAgICAgICAgICAgKi8NCi8qICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovDQovKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLw0KLyoqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBPUEFNUF9DU1IgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgT1BBTVBfQ1NSX09QQTFQRF9Qb3MgICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgT1BBTVBfQ1NSX09QQTFQRF9Nc2sgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBPUEFNUF9DU1JfT1BBMVBEX1BvcykgICAvKiE8IDB4MDAwMDAwMDEgKi8NCiNkZWZpbmUgT1BBTVBfQ1NSX09QQTFQRCAgICAgICAgICAgICAgICAgICAgICBPUEFNUF9DU1JfT1BBMVBEX01zayAgICAgICAgICAgICAvKiE8IE9QQU1QMSBkaXNhYmxlICovDQojZGVmaW5lIE9QQU1QX0NTUl9TM1NFTDFfUG9zICAgICAgICAgICAgICAgICAgKDFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIE9QQU1QX0NTUl9TM1NFTDFfTXNrICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgT1BBTVBfQ1NSX1MzU0VMMV9Qb3MpICAgLyohPCAweDAwMDAwMDAyICovDQojZGVmaW5lIE9QQU1QX0NTUl9TM1NFTDEgICAgICAgICAgICAgICAgICAgICAgT1BBTVBfQ1NSX1MzU0VMMV9Nc2sgICAgICAgICAgICAgLyohPCBTd2l0Y2ggMyBmb3IgT1BBTVAxIEVuYWJsZSAqLw0KI2RlZmluZSBPUEFNUF9DU1JfUzRTRUwxX1BvcyAgICAgICAgICAgICAgICAgICgyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBPUEFNUF9DU1JfUzRTRUwxX01zayAgICAgICAgICAgICAgICAgICgweDFVIDw8IE9QQU1QX0NTUl9TNFNFTDFfUG9zKSAgIC8qITwgMHgwMDAwMDAwNCAqLw0KI2RlZmluZSBPUEFNUF9DU1JfUzRTRUwxICAgICAgICAgICAgICAgICAgICAgIE9QQU1QX0NTUl9TNFNFTDFfTXNrICAgICAgICAgICAgIC8qITwgU3dpdGNoIDQgZm9yIE9QQU1QMSBFbmFibGUgKi8NCiNkZWZpbmUgT1BBTVBfQ1NSX1M1U0VMMV9Qb3MgICAgICAgICAgICAgICAgICAoM1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgT1BBTVBfQ1NSX1M1U0VMMV9Nc2sgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBPUEFNUF9DU1JfUzVTRUwxX1BvcykgICAvKiE8IDB4MDAwMDAwMDggKi8NCiNkZWZpbmUgT1BBTVBfQ1NSX1M1U0VMMSAgICAgICAgICAgICAgICAgICAgICBPUEFNUF9DU1JfUzVTRUwxX01zayAgICAgICAgICAgICAvKiE8IFN3aXRjaCA1IGZvciBPUEFNUDEgRW5hYmxlICovDQojZGVmaW5lIE9QQU1QX0NTUl9TNlNFTDFfUG9zICAgICAgICAgICAgICAgICAgKDRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIE9QQU1QX0NTUl9TNlNFTDFfTXNrICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgT1BBTVBfQ1NSX1M2U0VMMV9Qb3MpICAgLyohPCAweDAwMDAwMDEwICovDQojZGVmaW5lIE9QQU1QX0NTUl9TNlNFTDEgICAgICAgICAgICAgICAgICAgICAgT1BBTVBfQ1NSX1M2U0VMMV9Nc2sgICAgICAgICAgICAgLyohPCBTd2l0Y2ggNiBmb3IgT1BBTVAxIEVuYWJsZSAqLw0KI2RlZmluZSBPUEFNUF9DU1JfT1BBMUNBTF9MX1BvcyAgICAgICAgICAgICAgICg1VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBPUEFNUF9DU1JfT1BBMUNBTF9MX01zayAgICAgICAgICAgICAgICgweDFVIDw8IE9QQU1QX0NTUl9PUEExQ0FMX0xfUG9zKSAvKiE8IDB4MDAwMDAwMjAgKi8NCiNkZWZpbmUgT1BBTVBfQ1NSX09QQTFDQUxfTCAgICAgICAgICAgICAgICAgICBPUEFNUF9DU1JfT1BBMUNBTF9MX01zayAgICAgICAgICAvKiE8IE9QQU1QMSBPZmZzZXQgY2FsaWJyYXRpb24gZm9yIFAgZGlmZmVyZW50aWFsIHBhaXIgKi8NCiNkZWZpbmUgT1BBTVBfQ1NSX09QQTFDQUxfSF9Qb3MgICAgICAgICAgICAgICAoNlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgT1BBTVBfQ1NSX09QQTFDQUxfSF9Nc2sgICAgICAgICAgICAgICAoMHgxVSA8PCBPUEFNUF9DU1JfT1BBMUNBTF9IX1BvcykgLyohPCAweDAwMDAwMDQwICovDQojZGVmaW5lIE9QQU1QX0NTUl9PUEExQ0FMX0ggICAgICAgICAgICAgICAgICAgT1BBTVBfQ1NSX09QQTFDQUxfSF9Nc2sgICAgICAgICAgLyohPCBPUEFNUDEgT2Zmc2V0IGNhbGlicmF0aW9uIGZvciBOIGRpZmZlcmVudGlhbCBwYWlyICovDQojZGVmaW5lIE9QQU1QX0NTUl9PUEExTFBNX1BvcyAgICAgICAgICAgICAgICAgKDdVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIE9QQU1QX0NTUl9PUEExTFBNX01zayAgICAgICAgICAgICAgICAgKDB4MVUgPDwgT1BBTVBfQ1NSX09QQTFMUE1fUG9zKSAgLyohPCAweDAwMDAwMDgwICovDQojZGVmaW5lIE9QQU1QX0NTUl9PUEExTFBNICAgICAgICAgICAgICAgICAgICAgT1BBTVBfQ1NSX09QQTFMUE1fTXNrICAgICAgICAgICAgLyohPCBPUEFNUDEgTG93IHBvd2VyIGVuYWJsZSAqLw0KI2RlZmluZSBPUEFNUF9DU1JfT1BBMlBEX1BvcyAgICAgICAgICAgICAgICAgICg4VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBPUEFNUF9DU1JfT1BBMlBEX01zayAgICAgICAgICAgICAgICAgICgweDFVIDw8IE9QQU1QX0NTUl9PUEEyUERfUG9zKSAgIC8qITwgMHgwMDAwMDEwMCAqLw0KI2RlZmluZSBPUEFNUF9DU1JfT1BBMlBEICAgICAgICAgICAgICAgICAgICAgIE9QQU1QX0NTUl9PUEEyUERfTXNrICAgICAgICAgICAgIC8qITwgT1BBTVAyIGRpc2FibGUgKi8NCiNkZWZpbmUgT1BBTVBfQ1NSX1MzU0VMMl9Qb3MgICAgICAgICAgICAgICAgICAoOVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgT1BBTVBfQ1NSX1MzU0VMMl9Nc2sgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBPUEFNUF9DU1JfUzNTRUwyX1BvcykgICAvKiE8IDB4MDAwMDAyMDAgKi8NCiNkZWZpbmUgT1BBTVBfQ1NSX1MzU0VMMiAgICAgICAgICAgICAgICAgICAgICBPUEFNUF9DU1JfUzNTRUwyX01zayAgICAgICAgICAgICAvKiE8IFN3aXRjaCAzIGZvciBPUEFNUDIgRW5hYmxlICovDQojZGVmaW5lIE9QQU1QX0NTUl9TNFNFTDJfUG9zICAgICAgICAgICAgICAgICAgKDEwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIE9QQU1QX0NTUl9TNFNFTDJfTXNrICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgT1BBTVBfQ1NSX1M0U0VMMl9Qb3MpICAgLyohPCAweDAwMDAwNDAwICovDQojZGVmaW5lIE9QQU1QX0NTUl9TNFNFTDIgICAgICAgICAgICAgICAgICAgICAgT1BBTVBfQ1NSX1M0U0VMMl9Nc2sgICAgICAgICAgICAgLyohPCBTd2l0Y2ggNCBmb3IgT1BBTVAyIEVuYWJsZSAqLw0KI2RlZmluZSBPUEFNUF9DU1JfUzVTRUwyX1BvcyAgICAgICAgICAgICAgICAgICgxMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBPUEFNUF9DU1JfUzVTRUwyX01zayAgICAgICAgICAgICAgICAgICgweDFVIDw8IE9QQU1QX0NTUl9TNVNFTDJfUG9zKSAgIC8qITwgMHgwMDAwMDgwMCAqLw0KI2RlZmluZSBPUEFNUF9DU1JfUzVTRUwyICAgICAgICAgICAgICAgICAgICAgIE9QQU1QX0NTUl9TNVNFTDJfTXNrICAgICAgICAgICAgIC8qITwgU3dpdGNoIDUgZm9yIE9QQU1QMiBFbmFibGUgKi8NCiNkZWZpbmUgT1BBTVBfQ1NSX1M2U0VMMl9Qb3MgICAgICAgICAgICAgICAgICAoMTJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgT1BBTVBfQ1NSX1M2U0VMMl9Nc2sgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBPUEFNUF9DU1JfUzZTRUwyX1BvcykgICAvKiE8IDB4MDAwMDEwMDAgKi8NCiNkZWZpbmUgT1BBTVBfQ1NSX1M2U0VMMiAgICAgICAgICAgICAgICAgICAgICBPUEFNUF9DU1JfUzZTRUwyX01zayAgICAgICAgICAgICAvKiE8IFN3aXRjaCA2IGZvciBPUEFNUDIgRW5hYmxlICovDQojZGVmaW5lIE9QQU1QX0NTUl9PUEEyQ0FMX0xfUG9zICAgICAgICAgICAgICAgKDEzVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIE9QQU1QX0NTUl9PUEEyQ0FMX0xfTXNrICAgICAgICAgICAgICAgKDB4MVUgPDwgT1BBTVBfQ1NSX09QQTJDQUxfTF9Qb3MpIC8qITwgMHgwMDAwMjAwMCAqLw0KI2RlZmluZSBPUEFNUF9DU1JfT1BBMkNBTF9MICAgICAgICAgICAgICAgICAgIE9QQU1QX0NTUl9PUEEyQ0FMX0xfTXNrICAgICAgICAgIC8qITwgT1BBTVAyIE9mZnNldCBjYWxpYnJhdGlvbiBmb3IgUCBkaWZmZXJlbnRpYWwgcGFpciAqLw0KI2RlZmluZSBPUEFNUF9DU1JfT1BBMkNBTF9IX1BvcyAgICAgICAgICAgICAgICgxNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBPUEFNUF9DU1JfT1BBMkNBTF9IX01zayAgICAgICAgICAgICAgICgweDFVIDw8IE9QQU1QX0NTUl9PUEEyQ0FMX0hfUG9zKSAvKiE8IDB4MDAwMDQwMDAgKi8NCiNkZWZpbmUgT1BBTVBfQ1NSX09QQTJDQUxfSCAgICAgICAgICAgICAgICAgICBPUEFNUF9DU1JfT1BBMkNBTF9IX01zayAgICAgICAgICAvKiE8IE9QQU1QMiBPZmZzZXQgY2FsaWJyYXRpb24gZm9yIE4gZGlmZmVyZW50aWFsIHBhaXIgKi8NCiNkZWZpbmUgT1BBTVBfQ1NSX09QQTJMUE1fUG9zICAgICAgICAgICAgICAgICAoMTVVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgT1BBTVBfQ1NSX09QQTJMUE1fTXNrICAgICAgICAgICAgICAgICAoMHgxVSA8PCBPUEFNUF9DU1JfT1BBMkxQTV9Qb3MpICAvKiE8IDB4MDAwMDgwMDAgKi8NCiNkZWZpbmUgT1BBTVBfQ1NSX09QQTJMUE0gICAgICAgICAgICAgICAgICAgICBPUEFNUF9DU1JfT1BBMkxQTV9Nc2sgICAgICAgICAgICAvKiE8IE9QQU1QMiBMb3cgcG93ZXIgZW5hYmxlICovDQojZGVmaW5lIE9QQU1QX0NTUl9BTkFXU0VMMV9Qb3MgICAgICAgICAgICAgICAgKDI0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIE9QQU1QX0NTUl9BTkFXU0VMMV9Nc2sgICAgICAgICAgICAgICAgKDB4MVUgPDwgT1BBTVBfQ1NSX0FOQVdTRUwxX1BvcykgLyohPCAweDAxMDAwMDAwICovDQojZGVmaW5lIE9QQU1QX0NTUl9BTkFXU0VMMSAgICAgICAgICAgICAgICAgICAgT1BBTVBfQ1NSX0FOQVdTRUwxX01zayAgICAgICAgICAgLyohPCBTd2l0Y2ggQU5BIEVuYWJsZSBmb3IgT1BBTVAxICovIA0KI2RlZmluZSBPUEFNUF9DU1JfQU5BV1NFTDJfUG9zICAgICAgICAgICAgICAgICgyNVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBPUEFNUF9DU1JfQU5BV1NFTDJfTXNrICAgICAgICAgICAgICAgICgweDFVIDw8IE9QQU1QX0NTUl9BTkFXU0VMMl9Qb3MpIC8qITwgMHgwMjAwMDAwMCAqLw0KI2RlZmluZSBPUEFNUF9DU1JfQU5BV1NFTDIgICAgICAgICAgICAgICAgICAgIE9QQU1QX0NTUl9BTkFXU0VMMl9Nc2sgICAgICAgICAgIC8qITwgU3dpdGNoIEFOQSBFbmFibGUgZm9yIE9QQU1QMiAqLw0KI2RlZmluZSBPUEFNUF9DU1JfUzdTRUwyX1BvcyAgICAgICAgICAgICAgICAgICgyN1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBPUEFNUF9DU1JfUzdTRUwyX01zayAgICAgICAgICAgICAgICAgICgweDFVIDw8IE9QQU1QX0NTUl9TN1NFTDJfUG9zKSAgIC8qITwgMHgwODAwMDAwMCAqLw0KI2RlZmluZSBPUEFNUF9DU1JfUzdTRUwyICAgICAgICAgICAgICAgICAgICAgIE9QQU1QX0NTUl9TN1NFTDJfTXNrICAgICAgICAgICAgIC8qITwgU3dpdGNoIDcgZm9yIE9QQU1QMiBFbmFibGUgKi8NCiNkZWZpbmUgT1BBTVBfQ1NSX0FPUF9SQU5HRV9Qb3MgICAgICAgICAgICAgICAoMjhVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgT1BBTVBfQ1NSX0FPUF9SQU5HRV9Nc2sgICAgICAgICAgICAgICAoMHgxVSA8PCBPUEFNUF9DU1JfQU9QX1JBTkdFX1BvcykgLyohPCAweDEwMDAwMDAwICovDQojZGVmaW5lIE9QQU1QX0NTUl9BT1BfUkFOR0UgICAgICAgICAgICAgICAgICAgT1BBTVBfQ1NSX0FPUF9SQU5HRV9Nc2sgICAgICAgICAgLyohPCBDb21tb24gdG8gc2V2ZXJhbCBPUEFNUCBpbnN0YW5jZXM6IE9wZXJhdGlvbmFsIGFtcGxpZmllciB2b2x0YWdlIHN1cHBseSByYW5nZS4gQml0IGludGVuZGVkIHRvIGJlIHVzZWQgd2l0aCBPUEFNUCBjb21tb24gaW5zdGFuY2UgKE9QQU1QX0NvbW1vbl9UeXBlRGVmKSAqLw0KI2RlZmluZSBPUEFNUF9DU1JfT1BBMUNBTE9VVF9Qb3MgICAgICAgICAgICAgICgyOVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBPUEFNUF9DU1JfT1BBMUNBTE9VVF9Nc2sgICAgICAgICAgICAgICgweDFVIDw8IE9QQU1QX0NTUl9PUEExQ0FMT1VUX1BvcykgLyohPCAweDIwMDAwMDAwICovDQojZGVmaW5lIE9QQU1QX0NTUl9PUEExQ0FMT1VUICAgICAgICAgICAgICAgICAgT1BBTVBfQ1NSX09QQTFDQUxPVVRfTXNrICAgICAgICAgLyohPCBPUEFNUDEgY2FsaWJyYXRpb24gb3V0cHV0ICovDQojZGVmaW5lIE9QQU1QX0NTUl9PUEEyQ0FMT1VUX1BvcyAgICAgICAgICAgICAgKDMwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIE9QQU1QX0NTUl9PUEEyQ0FMT1VUX01zayAgICAgICAgICAgICAgKDB4MVUgPDwgT1BBTVBfQ1NSX09QQTJDQUxPVVRfUG9zKSAvKiE8IDB4NDAwMDAwMDAgKi8NCiNkZWZpbmUgT1BBTVBfQ1NSX09QQTJDQUxPVVQgICAgICAgICAgICAgICAgICBPUEFNUF9DU1JfT1BBMkNBTE9VVF9Nc2sgICAgICAgICAvKiE8IE9QQU1QMiBjYWxpYnJhdGlvbiBvdXRwdXQgKi8NCg0KLyoqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBPUEFNUF9PVFIgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgT1BBTVBfT1RSX0FPMV9PUFRfT0ZGU0VUX1RSSU1fTE9XX1BvcyAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgT1BBTVBfT1RSX0FPMV9PUFRfT0ZGU0VUX1RSSU1fTE9XX01zayAoMHgxRlUgPDwgT1BBTVBfT1RSX0FPMV9PUFRfT0ZGU0VUX1RSSU1fTE9XX1BvcykgLyohPCAweDAwMDAwMDFGICovDQojZGVmaW5lIE9QQU1QX09UUl9BTzFfT1BUX09GRlNFVF9UUklNX0xPVyAgICAgT1BBTVBfT1RSX0FPMV9PUFRfT0ZGU0VUX1RSSU1fTE9XX01zayAvKiE8IE9mZnNldCB0cmltIGZvciB0cmFuc2lzdG9ycyBkaWZmZXJlbnRpYWwgcGFpciBQTU9TIG9mIE9QQU1QMSAqLw0KI2RlZmluZSBPUEFNUF9PVFJfQU8xX09QVF9PRkZTRVRfVFJJTV9ISUdIX1BvcyAoNVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBPUEFNUF9PVFJfQU8xX09QVF9PRkZTRVRfVFJJTV9ISUdIX01zayAoMHgxRlUgPDwgT1BBTVBfT1RSX0FPMV9PUFRfT0ZGU0VUX1RSSU1fSElHSF9Qb3MpIC8qITwgMHgwMDAwMDNFMCAqLw0KI2RlZmluZSBPUEFNUF9PVFJfQU8xX09QVF9PRkZTRVRfVFJJTV9ISUdIICAgIE9QQU1QX09UUl9BTzFfT1BUX09GRlNFVF9UUklNX0hJR0hfTXNrIC8qITwgT2Zmc2V0IHRyaW0gZm9yIHRyYW5zaXN0b3JzIGRpZmZlcmVudGlhbCBwYWlyIE5NT1Mgb2YgT1BBTVAxICovDQojZGVmaW5lIE9QQU1QX09UUl9BTzJfT1BUX09GRlNFVF9UUklNX0xPV19Qb3MgKDEwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIE9QQU1QX09UUl9BTzJfT1BUX09GRlNFVF9UUklNX0xPV19Nc2sgKDB4MUZVIDw8IE9QQU1QX09UUl9BTzJfT1BUX09GRlNFVF9UUklNX0xPV19Qb3MpIC8qITwgMHgwMDAwN0MwMCAqLw0KI2RlZmluZSBPUEFNUF9PVFJfQU8yX09QVF9PRkZTRVRfVFJJTV9MT1cgICAgIE9QQU1QX09UUl9BTzJfT1BUX09GRlNFVF9UUklNX0xPV19Nc2sgLyohPCBPZmZzZXQgdHJpbSBmb3IgdHJhbnNpc3RvcnMgZGlmZmVyZW50aWFsIHBhaXIgUE1PUyBvZiBPUEFNUDIgKi8NCiNkZWZpbmUgT1BBTVBfT1RSX0FPMl9PUFRfT0ZGU0VUX1RSSU1fSElHSF9Qb3MgKDE1VSkgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgT1BBTVBfT1RSX0FPMl9PUFRfT0ZGU0VUX1RSSU1fSElHSF9Nc2sgKDB4MUZVIDw8IE9QQU1QX09UUl9BTzJfT1BUX09GRlNFVF9UUklNX0hJR0hfUG9zKSAvKiE8IDB4MDAwRjgwMDAgKi8NCiNkZWZpbmUgT1BBTVBfT1RSX0FPMl9PUFRfT0ZGU0VUX1RSSU1fSElHSCAgICBPUEFNUF9PVFJfQU8yX09QVF9PRkZTRVRfVFJJTV9ISUdIX01zayAvKiE8IE9mZnNldCB0cmltIGZvciB0cmFuc2lzdG9ycyBkaWZmZXJlbnRpYWwgcGFpciBOTU9TIG9mIE9QQU1QMiAqLw0KI2RlZmluZSBPUEFNUF9PVFJfT1RfVVNFUl9Qb3MgICAgICAgICAgICAgICAgICgzMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBPUEFNUF9PVFJfT1RfVVNFUl9Nc2sgICAgICAgICAgICAgICAgICgweDFVIDw8IE9QQU1QX09UUl9PVF9VU0VSX1BvcykgIC8qITwgMHg4MDAwMDAwMCAqLw0KI2RlZmluZSBPUEFNUF9PVFJfT1RfVVNFUiAgICAgICAgICAgICAgICAgICAgIE9QQU1QX09UUl9PVF9VU0VSX01zayAgICAgICAgICAgIC8qITwgU3dpdGNoIHRvIE9QQU1QIG9mZnNldCB1c2VyIHRyaW1tZWQgdmFsdWVzICovDQoNCi8qKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgT1BBTVBfTFBPVFIgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKiovDQojZGVmaW5lIE9QQU1QX09UUl9BTzFfT1BUX09GRlNFVF9UUklNX0xQX0xPV19Qb3MgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIE9QQU1QX09UUl9BTzFfT1BUX09GRlNFVF9UUklNX0xQX0xPV19Nc2sgKDB4MUZVIDw8IE9QQU1QX09UUl9BTzFfT1BUX09GRlNFVF9UUklNX0xQX0xPV19Qb3MpIC8qITwgMHgwMDAwMDAxRiAqLw0KI2RlZmluZSBPUEFNUF9PVFJfQU8xX09QVF9PRkZTRVRfVFJJTV9MUF9MT1cgIE9QQU1QX09UUl9BTzFfT1BUX09GRlNFVF9UUklNX0xQX0xPV19Nc2sgLyohPCBPZmZzZXQgdHJpbSBmb3IgdHJhbnNpc3RvcnMgZGlmZmVyZW50aWFsIHBhaXIgUE1PUyBvZiBPUEFNUDEgKi8NCiNkZWZpbmUgT1BBTVBfT1RSX0FPMV9PUFRfT0ZGU0VUX1RSSU1fTFBfSElHSF9Qb3MgKDVVKSAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgT1BBTVBfT1RSX0FPMV9PUFRfT0ZGU0VUX1RSSU1fTFBfSElHSF9Nc2sgKDB4MUZVIDw8IE9QQU1QX09UUl9BTzFfT1BUX09GRlNFVF9UUklNX0xQX0hJR0hfUG9zKSAvKiE8IDB4MDAwMDAzRTAgKi8NCiNkZWZpbmUgT1BBTVBfT1RSX0FPMV9PUFRfT0ZGU0VUX1RSSU1fTFBfSElHSCBPUEFNUF9PVFJfQU8xX09QVF9PRkZTRVRfVFJJTV9MUF9ISUdIX01zayAvKiE8IE9mZnNldCB0cmltIGZvciB0cmFuc2lzdG9ycyBkaWZmZXJlbnRpYWwgcGFpciBOTU9TIG9mIE9QQU1QMSAqLw0KI2RlZmluZSBPUEFNUF9PVFJfQU8yX09QVF9PRkZTRVRfVFJJTV9MUF9MT1dfUG9zICgxMFUpICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBPUEFNUF9PVFJfQU8yX09QVF9PRkZTRVRfVFJJTV9MUF9MT1dfTXNrICgweDFGVSA8PCBPUEFNUF9PVFJfQU8yX09QVF9PRkZTRVRfVFJJTV9MUF9MT1dfUG9zKSAvKiE8IDB4MDAwMDdDMDAgKi8NCiNkZWZpbmUgT1BBTVBfT1RSX0FPMl9PUFRfT0ZGU0VUX1RSSU1fTFBfTE9XICBPUEFNUF9PVFJfQU8yX09QVF9PRkZTRVRfVFJJTV9MUF9MT1dfTXNrIC8qITwgT2Zmc2V0IHRyaW0gZm9yIHRyYW5zaXN0b3JzIGRpZmZlcmVudGlhbCBwYWlyIFBNT1Mgb2YgT1BBTVAyICovDQojZGVmaW5lIE9QQU1QX09UUl9BTzJfT1BUX09GRlNFVF9UUklNX0xQX0hJR0hfUG9zICgxNVUpICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIE9QQU1QX09UUl9BTzJfT1BUX09GRlNFVF9UUklNX0xQX0hJR0hfTXNrICgweDFGVSA8PCBPUEFNUF9PVFJfQU8yX09QVF9PRkZTRVRfVFJJTV9MUF9ISUdIX1BvcykgLyohPCAweDAwMEY4MDAwICovDQojZGVmaW5lIE9QQU1QX09UUl9BTzJfT1BUX09GRlNFVF9UUklNX0xQX0hJR0ggT1BBTVBfT1RSX0FPMl9PUFRfT0ZGU0VUX1RSSU1fTFBfSElHSF9Nc2sgLyohPCBPZmZzZXQgdHJpbSBmb3IgdHJhbnNpc3RvcnMgZGlmZmVyZW50aWFsIHBhaXIgTk1PUyBvZiBPUEFNUDIgKi8NCg0KLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8NCi8qICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovDQovKiAgICAgICAgICAgICAgICAgICAgICAgQ1JDIGNhbGN1bGF0aW9uIHVuaXQgKENSQykgICAgICAgICAgICAgICAgICAgICAgICAgICAqLw0KLyogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8NCi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovDQoNCi8qKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgQ1JDX0RSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIENSQ19EUl9EUl9Qb3MgICAgICAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIENSQ19EUl9EUl9Nc2sgICAgICAgICAgICAgICAgICAgICAgICgweEZGRkZGRkZGVSA8PCBDUkNfRFJfRFJfUG9zKSAgICAgLyohPCAweEZGRkZGRkZGICovDQojZGVmaW5lIENSQ19EUl9EUiAgICAgICAgICAgICAgICAgICAgICAgICAgIENSQ19EUl9EUl9Nc2sgICAgICAgICAgICAgICAgICAgICAgLyohPCBEYXRhIHJlZ2lzdGVyIGJpdHMgKi8NCg0KLyoqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBDUkNfSURSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgQ1JDX0lEUl9JRFJfUG9zICAgICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgQ1JDX0lEUl9JRFJfTXNrICAgICAgICAgICAgICAgICAgICAgKDB4RkZVIDw8IENSQ19JRFJfSURSX1BvcykgICAgICAgICAvKiE8IDB4MDAwMDAwRkYgKi8NCiNkZWZpbmUgQ1JDX0lEUl9JRFIgICAgICAgICAgICAgICAgICAgICAgICAgQ1JDX0lEUl9JRFJfTXNrICAgICAgICAgICAgICAgICAgICAvKiE8IEdlbmVyYWwtcHVycG9zZSA4LWJpdCBkYXRhIHJlZ2lzdGVyIGJpdHMgKi8NCg0KLyoqKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgQ1JDX0NSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgQ1JDX0NSX1JFU0VUX1BvcyAgICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgQ1JDX0NSX1JFU0VUX01zayAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgQ1JDX0NSX1JFU0VUX1BvcykgICAgICAgICAvKiE8IDB4MDAwMDAwMDEgKi8NCiNkZWZpbmUgQ1JDX0NSX1JFU0VUICAgICAgICAgICAgICAgICAgICAgICAgQ1JDX0NSX1JFU0VUX01zayAgICAgICAgICAgICAgICAgICAvKiE8IFJFU0VUIGJpdCAqLw0KDQovKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLw0KLyogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8NCi8qICAgICAgICAgICAgICAgICAgICBEaWdpdGFsIHRvIEFuYWxvZyBDb252ZXJ0ZXIgKERBQykgICAgICAgICAgICAgICAgICAgICAgICovDQovKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLw0KLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8NCg0KLyoqKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgREFDX0NSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgREFDX0NSX0VOMV9Qb3MgICAgICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgREFDX0NSX0VOMV9Nc2sgICAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgREFDX0NSX0VOMV9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDEgKi8NCiNkZWZpbmUgREFDX0NSX0VOMSAgICAgICAgICAgICAgICAgICAgICAgICAgREFDX0NSX0VOMV9Nc2sgICAgICAgICAgICAgICAgICAgICAvKiE8REFDIGNoYW5uZWwxIGVuYWJsZSAqLw0KI2RlZmluZSBEQUNfQ1JfQk9GRjFfUG9zICAgICAgICAgICAgICAgICAgICAoMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBEQUNfQ1JfQk9GRjFfTXNrICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBEQUNfQ1JfQk9GRjFfUG9zKSAgICAgICAgIC8qITwgMHgwMDAwMDAwMiAqLw0KI2RlZmluZSBEQUNfQ1JfQk9GRjEgICAgICAgICAgICAgICAgICAgICAgICBEQUNfQ1JfQk9GRjFfTXNrICAgICAgICAgICAgICAgICAgIC8qITxEQUMgY2hhbm5lbDEgb3V0cHV0IGJ1ZmZlciBkaXNhYmxlICovDQojZGVmaW5lIERBQ19DUl9URU4xX1BvcyAgICAgICAgICAgICAgICAgICAgICgyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIERBQ19DUl9URU4xX01zayAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IERBQ19DUl9URU4xX1BvcykgICAgICAgICAgLyohPCAweDAwMDAwMDA0ICovDQojZGVmaW5lIERBQ19DUl9URU4xICAgICAgICAgICAgICAgICAgICAgICAgIERBQ19DUl9URU4xX01zayAgICAgICAgICAgICAgICAgICAgLyohPERBQyBjaGFubmVsMSBUcmlnZ2VyIGVuYWJsZSAqLw0KDQojZGVmaW5lIERBQ19DUl9UU0VMMV9Qb3MgICAgICAgICAgICAgICAgICAgICgzVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIERBQ19DUl9UU0VMMV9Nc2sgICAgICAgICAgICAgICAgICAgICgweDdVIDw8IERBQ19DUl9UU0VMMV9Qb3MpICAgICAgICAgLyohPCAweDAwMDAwMDM4ICovDQojZGVmaW5lIERBQ19DUl9UU0VMMSAgICAgICAgICAgICAgICAgICAgICAgIERBQ19DUl9UU0VMMV9Nc2sgICAgICAgICAgICAgICAgICAgLyohPFRTRUwxWzI6MF0gKERBQyBjaGFubmVsMSBUcmlnZ2VyIHNlbGVjdGlvbikgKi8NCiNkZWZpbmUgREFDX0NSX1RTRUwxXzAgICAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgREFDX0NSX1RTRUwxX1BvcykgICAgICAgICAvKiE8IDB4MDAwMDAwMDggKi8NCiNkZWZpbmUgREFDX0NSX1RTRUwxXzEgICAgICAgICAgICAgICAgICAgICAgKDB4MlUgPDwgREFDX0NSX1RTRUwxX1BvcykgICAgICAgICAvKiE8IDB4MDAwMDAwMTAgKi8NCiNkZWZpbmUgREFDX0NSX1RTRUwxXzIgICAgICAgICAgICAgICAgICAgICAgKDB4NFUgPDwgREFDX0NSX1RTRUwxX1BvcykgICAgICAgICAvKiE8IDB4MDAwMDAwMjAgKi8NCg0KI2RlZmluZSBEQUNfQ1JfV0FWRTFfUG9zICAgICAgICAgICAgICAgICAgICAoNlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBEQUNfQ1JfV0FWRTFfTXNrICAgICAgICAgICAgICAgICAgICAoMHgzVSA8PCBEQUNfQ1JfV0FWRTFfUG9zKSAgICAgICAgIC8qITwgMHgwMDAwMDBDMCAqLw0KI2RlZmluZSBEQUNfQ1JfV0FWRTEgICAgICAgICAgICAgICAgICAgICAgICBEQUNfQ1JfV0FWRTFfTXNrICAgICAgICAgICAgICAgICAgIC8qITxXQVZFMVsxOjBdIChEQUMgY2hhbm5lbDEgbm9pc2UvdHJpYW5nbGUgd2F2ZSBnZW5lcmF0aW9uIGVuYWJsZSkgKi8NCiNkZWZpbmUgREFDX0NSX1dBVkUxXzAgICAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgREFDX0NSX1dBVkUxX1BvcykgICAgICAgICAvKiE8IDB4MDAwMDAwNDAgKi8NCiNkZWZpbmUgREFDX0NSX1dBVkUxXzEgICAgICAgICAgICAgICAgICAgICAgKDB4MlUgPDwgREFDX0NSX1dBVkUxX1BvcykgICAgICAgICAvKiE8IDB4MDAwMDAwODAgKi8NCg0KI2RlZmluZSBEQUNfQ1JfTUFNUDFfUG9zICAgICAgICAgICAgICAgICAgICAoOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBEQUNfQ1JfTUFNUDFfTXNrICAgICAgICAgICAgICAgICAgICAoMHhGVSA8PCBEQUNfQ1JfTUFNUDFfUG9zKSAgICAgICAgIC8qITwgMHgwMDAwMEYwMCAqLw0KI2RlZmluZSBEQUNfQ1JfTUFNUDEgICAgICAgICAgICAgICAgICAgICAgICBEQUNfQ1JfTUFNUDFfTXNrICAgICAgICAgICAgICAgICAgIC8qITxNQU1QMVszOjBdIChEQUMgY2hhbm5lbDEgTWFzay9BbXBsaXR1ZGUgc2VsZWN0b3IpICovDQojZGVmaW5lIERBQ19DUl9NQU1QMV8wICAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IERBQ19DUl9NQU1QMV9Qb3MpICAgICAgICAgLyohPCAweDAwMDAwMTAwICovDQojZGVmaW5lIERBQ19DUl9NQU1QMV8xICAgICAgICAgICAgICAgICAgICAgICgweDJVIDw8IERBQ19DUl9NQU1QMV9Qb3MpICAgICAgICAgLyohPCAweDAwMDAwMjAwICovDQojZGVmaW5lIERBQ19DUl9NQU1QMV8yICAgICAgICAgICAgICAgICAgICAgICgweDRVIDw8IERBQ19DUl9NQU1QMV9Qb3MpICAgICAgICAgLyohPCAweDAwMDAwNDAwICovDQojZGVmaW5lIERBQ19DUl9NQU1QMV8zICAgICAgICAgICAgICAgICAgICAgICgweDhVIDw8IERBQ19DUl9NQU1QMV9Qb3MpICAgICAgICAgLyohPCAweDAwMDAwODAwICovDQoNCiNkZWZpbmUgREFDX0NSX0RNQUVOMV9Qb3MgICAgICAgICAgICAgICAgICAgKDEyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgREFDX0NSX0RNQUVOMV9Nc2sgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgREFDX0NSX0RNQUVOMV9Qb3MpICAgICAgICAvKiE8IDB4MDAwMDEwMDAgKi8NCiNkZWZpbmUgREFDX0NSX0RNQUVOMSAgICAgICAgICAgICAgICAgICAgICAgREFDX0NSX0RNQUVOMV9Nc2sgICAgICAgICAgICAgICAgICAvKiE8REFDIGNoYW5uZWwxIERNQSBlbmFibGUgKi8NCiNkZWZpbmUgREFDX0NSX0RNQVVEUklFMV9Qb3MgICAgICAgICAgICAgICAgKDEzVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgREFDX0NSX0RNQVVEUklFMV9Nc2sgICAgICAgICAgICAgICAgKDB4MVUgPDwgREFDX0NSX0RNQVVEUklFMV9Qb3MpICAgICAvKiE8IDB4MDAwMDIwMDAgKi8NCiNkZWZpbmUgREFDX0NSX0RNQVVEUklFMSAgICAgICAgICAgICAgICAgICAgREFDX0NSX0RNQVVEUklFMV9Nc2sgICAgICAgICAgICAgICAvKiE8REFDIGNoYW5uZWwxIERNQSBJbnRlcnJ1cHQgZW5hYmxlICovDQojZGVmaW5lIERBQ19DUl9FTjJfUG9zICAgICAgICAgICAgICAgICAgICAgICgxNlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIERBQ19DUl9FTjJfTXNrICAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IERBQ19DUl9FTjJfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDEwMDAwICovDQojZGVmaW5lIERBQ19DUl9FTjIgICAgICAgICAgICAgICAgICAgICAgICAgIERBQ19DUl9FTjJfTXNrICAgICAgICAgICAgICAgICAgICAgLyohPERBQyBjaGFubmVsMiBlbmFibGUgKi8NCiNkZWZpbmUgREFDX0NSX0JPRkYyX1BvcyAgICAgICAgICAgICAgICAgICAgKDE3VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgREFDX0NSX0JPRkYyX01zayAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgREFDX0NSX0JPRkYyX1BvcykgICAgICAgICAvKiE8IDB4MDAwMjAwMDAgKi8NCiNkZWZpbmUgREFDX0NSX0JPRkYyICAgICAgICAgICAgICAgICAgICAgICAgREFDX0NSX0JPRkYyX01zayAgICAgICAgICAgICAgICAgICAvKiE8REFDIGNoYW5uZWwyIG91dHB1dCBidWZmZXIgZGlzYWJsZSAqLw0KI2RlZmluZSBEQUNfQ1JfVEVOMl9Qb3MgICAgICAgICAgICAgICAgICAgICAoMThVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBEQUNfQ1JfVEVOMl9Nc2sgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBEQUNfQ1JfVEVOMl9Qb3MpICAgICAgICAgIC8qITwgMHgwMDA0MDAwMCAqLw0KI2RlZmluZSBEQUNfQ1JfVEVOMiAgICAgICAgICAgICAgICAgICAgICAgICBEQUNfQ1JfVEVOMl9Nc2sgICAgICAgICAgICAgICAgICAgIC8qITxEQUMgY2hhbm5lbDIgVHJpZ2dlciBlbmFibGUgKi8NCg0KI2RlZmluZSBEQUNfQ1JfVFNFTDJfUG9zICAgICAgICAgICAgICAgICAgICAoMTlVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBEQUNfQ1JfVFNFTDJfTXNrICAgICAgICAgICAgICAgICAgICAoMHg3VSA8PCBEQUNfQ1JfVFNFTDJfUG9zKSAgICAgICAgIC8qITwgMHgwMDM4MDAwMCAqLw0KI2RlZmluZSBEQUNfQ1JfVFNFTDIgICAgICAgICAgICAgICAgICAgICAgICBEQUNfQ1JfVFNFTDJfTXNrICAgICAgICAgICAgICAgICAgIC8qITxUU0VMMlsyOjBdIChEQUMgY2hhbm5lbDIgVHJpZ2dlciBzZWxlY3Rpb24pICovDQojZGVmaW5lIERBQ19DUl9UU0VMMl8wICAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IERBQ19DUl9UU0VMMl9Qb3MpICAgICAgICAgLyohPCAweDAwMDgwMDAwICovDQojZGVmaW5lIERBQ19DUl9UU0VMMl8xICAgICAgICAgICAgICAgICAgICAgICgweDJVIDw8IERBQ19DUl9UU0VMMl9Qb3MpICAgICAgICAgLyohPCAweDAwMTAwMDAwICovDQojZGVmaW5lIERBQ19DUl9UU0VMMl8yICAgICAgICAgICAgICAgICAgICAgICgweDRVIDw8IERBQ19DUl9UU0VMMl9Qb3MpICAgICAgICAgLyohPCAweDAwMjAwMDAwICovDQoNCiNkZWZpbmUgREFDX0NSX1dBVkUyX1BvcyAgICAgICAgICAgICAgICAgICAgKDIyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgREFDX0NSX1dBVkUyX01zayAgICAgICAgICAgICAgICAgICAgKDB4M1UgPDwgREFDX0NSX1dBVkUyX1BvcykgICAgICAgICAvKiE8IDB4MDBDMDAwMDAgKi8NCiNkZWZpbmUgREFDX0NSX1dBVkUyICAgICAgICAgICAgICAgICAgICAgICAgREFDX0NSX1dBVkUyX01zayAgICAgICAgICAgICAgICAgICAvKiE8V0FWRTJbMTowXSAoREFDIGNoYW5uZWwyIG5vaXNlL3RyaWFuZ2xlIHdhdmUgZ2VuZXJhdGlvbiBlbmFibGUpICovDQojZGVmaW5lIERBQ19DUl9XQVZFMl8wICAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IERBQ19DUl9XQVZFMl9Qb3MpICAgICAgICAgLyohPCAweDAwNDAwMDAwICovDQojZGVmaW5lIERBQ19DUl9XQVZFMl8xICAgICAgICAgICAgICAgICAgICAgICgweDJVIDw8IERBQ19DUl9XQVZFMl9Qb3MpICAgICAgICAgLyohPCAweDAwODAwMDAwICovDQoNCiNkZWZpbmUgREFDX0NSX01BTVAyX1BvcyAgICAgICAgICAgICAgICAgICAgKDI0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgREFDX0NSX01BTVAyX01zayAgICAgICAgICAgICAgICAgICAgKDB4RlUgPDwgREFDX0NSX01BTVAyX1BvcykgICAgICAgICAvKiE8IDB4MEYwMDAwMDAgKi8NCiNkZWZpbmUgREFDX0NSX01BTVAyICAgICAgICAgICAgICAgICAgICAgICAgREFDX0NSX01BTVAyX01zayAgICAgICAgICAgICAgICAgICAvKiE8TUFNUDJbMzowXSAoREFDIGNoYW5uZWwyIE1hc2svQW1wbGl0dWRlIHNlbGVjdG9yKSAqLw0KI2RlZmluZSBEQUNfQ1JfTUFNUDJfMCAgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBEQUNfQ1JfTUFNUDJfUG9zKSAgICAgICAgIC8qITwgMHgwMTAwMDAwMCAqLw0KI2RlZmluZSBEQUNfQ1JfTUFNUDJfMSAgICAgICAgICAgICAgICAgICAgICAoMHgyVSA8PCBEQUNfQ1JfTUFNUDJfUG9zKSAgICAgICAgIC8qITwgMHgwMjAwMDAwMCAqLw0KI2RlZmluZSBEQUNfQ1JfTUFNUDJfMiAgICAgICAgICAgICAgICAgICAgICAoMHg0VSA8PCBEQUNfQ1JfTUFNUDJfUG9zKSAgICAgICAgIC8qITwgMHgwNDAwMDAwMCAqLw0KI2RlZmluZSBEQUNfQ1JfTUFNUDJfMyAgICAgICAgICAgICAgICAgICAgICAoMHg4VSA8PCBEQUNfQ1JfTUFNUDJfUG9zKSAgICAgICAgIC8qITwgMHgwODAwMDAwMCAqLw0KDQojZGVmaW5lIERBQ19DUl9ETUFFTjJfUG9zICAgICAgICAgICAgICAgICAgICgyOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIERBQ19DUl9ETUFFTjJfTXNrICAgICAgICAgICAgICAgICAgICgweDFVIDw8IERBQ19DUl9ETUFFTjJfUG9zKSAgICAgICAgLyohPCAweDEwMDAwMDAwICovDQojZGVmaW5lIERBQ19DUl9ETUFFTjIgICAgICAgICAgICAgICAgICAgICAgIERBQ19DUl9ETUFFTjJfTXNrICAgICAgICAgICAgICAgICAgLyohPERBQyBjaGFubmVsMiBETUEgZW5hYmxlZCAqLw0KI2RlZmluZSBEQUNfQ1JfRE1BVURSSUUyX1BvcyAgICAgICAgICAgICAgICAoMjlVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBEQUNfQ1JfRE1BVURSSUUyX01zayAgICAgICAgICAgICAgICAoMHgxVSA8PCBEQUNfQ1JfRE1BVURSSUUyX1BvcykgICAgIC8qITwgMHgyMDAwMDAwMCAqLw0KI2RlZmluZSBEQUNfQ1JfRE1BVURSSUUyICAgICAgICAgICAgICAgICAgICBEQUNfQ1JfRE1BVURSSUUyX01zayAgICAgICAgICAgICAgIC8qITxEQUMgY2hhbm5lbDIgRE1BIHVuZGVycnVuIGludGVycnVwdCBlbmFibGUgKi8NCi8qKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIERBQ19TV1RSSUdSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIERBQ19TV1RSSUdSX1NXVFJJRzFfUG9zICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIERBQ19TV1RSSUdSX1NXVFJJRzFfTXNrICAgICAgICAgICAgICgweDFVIDw8IERBQ19TV1RSSUdSX1NXVFJJRzFfUG9zKSAgLyohPCAweDAwMDAwMDAxICovDQojZGVmaW5lIERBQ19TV1RSSUdSX1NXVFJJRzEgICAgICAgICAgICAgICAgIERBQ19TV1RSSUdSX1NXVFJJRzFfTXNrICAgICAgICAgICAgLyohPERBQyBjaGFubmVsMSBzb2Z0d2FyZSB0cmlnZ2VyICovDQojZGVmaW5lIERBQ19TV1RSSUdSX1NXVFJJRzJfUG9zICAgICAgICAgICAgICgxVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIERBQ19TV1RSSUdSX1NXVFJJRzJfTXNrICAgICAgICAgICAgICgweDFVIDw8IERBQ19TV1RSSUdSX1NXVFJJRzJfUG9zKSAgLyohPCAweDAwMDAwMDAyICovDQojZGVmaW5lIERBQ19TV1RSSUdSX1NXVFJJRzIgICAgICAgICAgICAgICAgIERBQ19TV1RSSUdSX1NXVFJJRzJfTXNrICAgICAgICAgICAgLyohPERBQyBjaGFubmVsMiBzb2Z0d2FyZSB0cmlnZ2VyICovDQoNCi8qKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIERBQ19ESFIxMlIxIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIERBQ19ESFIxMlIxX0RBQ0MxREhSX1BvcyAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIERBQ19ESFIxMlIxX0RBQ0MxREhSX01zayAgICAgICAgICAgICgweEZGRlUgPDwgREFDX0RIUjEyUjFfREFDQzFESFJfUG9zKSAvKiE8IDB4MDAwMDBGRkYgKi8NCiNkZWZpbmUgREFDX0RIUjEyUjFfREFDQzFESFIgICAgICAgICAgICAgICAgREFDX0RIUjEyUjFfREFDQzFESFJfTXNrICAgICAgICAgICAvKiE8REFDIGNoYW5uZWwxIDEyLWJpdCBSaWdodCBhbGlnbmVkIGRhdGEgKi8NCg0KLyoqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgREFDX0RIUjEyTDEgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgREFDX0RIUjEyTDFfREFDQzFESFJfUG9zICAgICAgICAgICAgKDRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgREFDX0RIUjEyTDFfREFDQzFESFJfTXNrICAgICAgICAgICAgKDB4RkZGVSA8PCBEQUNfREhSMTJMMV9EQUNDMURIUl9Qb3MpIC8qITwgMHgwMDAwRkZGMCAqLw0KI2RlZmluZSBEQUNfREhSMTJMMV9EQUNDMURIUiAgICAgICAgICAgICAgICBEQUNfREhSMTJMMV9EQUNDMURIUl9Nc2sgICAgICAgICAgIC8qITxEQUMgY2hhbm5lbDEgMTItYml0IExlZnQgYWxpZ25lZCBkYXRhICovDQoNCi8qKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBEQUNfREhSOFIxIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIERBQ19ESFI4UjFfREFDQzFESFJfUG9zICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIERBQ19ESFI4UjFfREFDQzFESFJfTXNrICAgICAgICAgICAgICgweEZGVSA8PCBEQUNfREhSOFIxX0RBQ0MxREhSX1BvcykgLyohPCAweDAwMDAwMEZGICovDQojZGVmaW5lIERBQ19ESFI4UjFfREFDQzFESFIgICAgICAgICAgICAgICAgIERBQ19ESFI4UjFfREFDQzFESFJfTXNrICAgICAgICAgICAgLyohPERBQyBjaGFubmVsMSA4LWJpdCBSaWdodCBhbGlnbmVkIGRhdGEgKi8NCg0KLyoqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgREFDX0RIUjEyUjIgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgREFDX0RIUjEyUjJfREFDQzJESFJfUG9zICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgREFDX0RIUjEyUjJfREFDQzJESFJfTXNrICAgICAgICAgICAgKDB4RkZGVSA8PCBEQUNfREhSMTJSMl9EQUNDMkRIUl9Qb3MpIC8qITwgMHgwMDAwMEZGRiAqLw0KI2RlZmluZSBEQUNfREhSMTJSMl9EQUNDMkRIUiAgICAgICAgICAgICAgICBEQUNfREhSMTJSMl9EQUNDMkRIUl9Nc2sgICAgICAgICAgIC8qITxEQUMgY2hhbm5lbDIgMTItYml0IFJpZ2h0IGFsaWduZWQgZGF0YSAqLw0KDQovKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBEQUNfREhSMTJMMiByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBEQUNfREhSMTJMMl9EQUNDMkRIUl9Qb3MgICAgICAgICAgICAoNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBEQUNfREhSMTJMMl9EQUNDMkRIUl9Nc2sgICAgICAgICAgICAoMHhGRkZVIDw8IERBQ19ESFIxMkwyX0RBQ0MyREhSX1BvcykgLyohPCAweDAwMDBGRkYwICovDQojZGVmaW5lIERBQ19ESFIxMkwyX0RBQ0MyREhSICAgICAgICAgICAgICAgIERBQ19ESFIxMkwyX0RBQ0MyREhSX01zayAgICAgICAgICAgLyohPERBQyBjaGFubmVsMiAxMi1iaXQgTGVmdCBhbGlnbmVkIGRhdGEgKi8NCg0KLyoqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIERBQ19ESFI4UjIgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgREFDX0RIUjhSMl9EQUNDMkRIUl9Qb3MgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgREFDX0RIUjhSMl9EQUNDMkRIUl9Nc2sgICAgICAgICAgICAgKDB4RkZVIDw8IERBQ19ESFI4UjJfREFDQzJESFJfUG9zKSAvKiE8IDB4MDAwMDAwRkYgKi8NCiNkZWZpbmUgREFDX0RIUjhSMl9EQUNDMkRIUiAgICAgICAgICAgICAgICAgREFDX0RIUjhSMl9EQUNDMkRIUl9Nc2sgICAgICAgICAgICAvKiE8REFDIGNoYW5uZWwyIDgtYml0IFJpZ2h0IGFsaWduZWQgZGF0YSAqLw0KDQovKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBEQUNfREhSMTJSRCByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBEQUNfREhSMTJSRF9EQUNDMURIUl9Qb3MgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBEQUNfREhSMTJSRF9EQUNDMURIUl9Nc2sgICAgICAgICAgICAoMHhGRkZVIDw8IERBQ19ESFIxMlJEX0RBQ0MxREhSX1BvcykgLyohPCAweDAwMDAwRkZGICovDQojZGVmaW5lIERBQ19ESFIxMlJEX0RBQ0MxREhSICAgICAgICAgICAgICAgIERBQ19ESFIxMlJEX0RBQ0MxREhSX01zayAgICAgICAgICAgLyohPERBQyBjaGFubmVsMSAxMi1iaXQgUmlnaHQgYWxpZ25lZCBkYXRhICovDQojZGVmaW5lIERBQ19ESFIxMlJEX0RBQ0MyREhSX1BvcyAgICAgICAgICAgICgxNlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIERBQ19ESFIxMlJEX0RBQ0MyREhSX01zayAgICAgICAgICAgICgweEZGRlUgPDwgREFDX0RIUjEyUkRfREFDQzJESFJfUG9zKSAvKiE8IDB4MEZGRjAwMDAgKi8NCiNkZWZpbmUgREFDX0RIUjEyUkRfREFDQzJESFIgICAgICAgICAgICAgICAgREFDX0RIUjEyUkRfREFDQzJESFJfTXNrICAgICAgICAgICAvKiE8REFDIGNoYW5uZWwyIDEyLWJpdCBSaWdodCBhbGlnbmVkIGRhdGEgKi8NCg0KLyoqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgREFDX0RIUjEyTEQgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgREFDX0RIUjEyTERfREFDQzFESFJfUG9zICAgICAgICAgICAgKDRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgREFDX0RIUjEyTERfREFDQzFESFJfTXNrICAgICAgICAgICAgKDB4RkZGVSA8PCBEQUNfREhSMTJMRF9EQUNDMURIUl9Qb3MpIC8qITwgMHgwMDAwRkZGMCAqLw0KI2RlZmluZSBEQUNfREhSMTJMRF9EQUNDMURIUiAgICAgICAgICAgICAgICBEQUNfREhSMTJMRF9EQUNDMURIUl9Nc2sgICAgICAgICAgIC8qITxEQUMgY2hhbm5lbDEgMTItYml0IExlZnQgYWxpZ25lZCBkYXRhICovDQojZGVmaW5lIERBQ19ESFIxMkxEX0RBQ0MyREhSX1BvcyAgICAgICAgICAgICgyMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIERBQ19ESFIxMkxEX0RBQ0MyREhSX01zayAgICAgICAgICAgICgweEZGRlUgPDwgREFDX0RIUjEyTERfREFDQzJESFJfUG9zKSAvKiE8IDB4RkZGMDAwMDAgKi8NCiNkZWZpbmUgREFDX0RIUjEyTERfREFDQzJESFIgICAgICAgICAgICAgICAgREFDX0RIUjEyTERfREFDQzJESFJfTXNrICAgICAgICAgICAvKiE8REFDIGNoYW5uZWwyIDEyLWJpdCBMZWZ0IGFsaWduZWQgZGF0YSAqLw0KDQovKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgREFDX0RIUjhSRCByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBEQUNfREhSOFJEX0RBQ0MxREhSX1BvcyAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBEQUNfREhSOFJEX0RBQ0MxREhSX01zayAgICAgICAgICAgICAoMHhGRlUgPDwgREFDX0RIUjhSRF9EQUNDMURIUl9Qb3MpIC8qITwgMHgwMDAwMDBGRiAqLw0KI2RlZmluZSBEQUNfREhSOFJEX0RBQ0MxREhSICAgICAgICAgICAgICAgICBEQUNfREhSOFJEX0RBQ0MxREhSX01zayAgICAgICAgICAgIC8qITxEQUMgY2hhbm5lbDEgOC1iaXQgUmlnaHQgYWxpZ25lZCBkYXRhICovDQojZGVmaW5lIERBQ19ESFI4UkRfREFDQzJESFJfUG9zICAgICAgICAgICAgICg4VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIERBQ19ESFI4UkRfREFDQzJESFJfTXNrICAgICAgICAgICAgICgweEZGVSA8PCBEQUNfREhSOFJEX0RBQ0MyREhSX1BvcykgLyohPCAweDAwMDBGRjAwICovDQojZGVmaW5lIERBQ19ESFI4UkRfREFDQzJESFIgICAgICAgICAgICAgICAgIERBQ19ESFI4UkRfREFDQzJESFJfTXNrICAgICAgICAgICAgLyohPERBQyBjaGFubmVsMiA4LWJpdCBSaWdodCBhbGlnbmVkIGRhdGEgKi8NCg0KLyoqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBEQUNfRE9SMSByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgREFDX0RPUjFfREFDQzFET1JfUG9zICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgREFDX0RPUjFfREFDQzFET1JfTXNrICAgICAgICAgICAgICAgKDB4RkZGVSA8PCBEQUNfRE9SMV9EQUNDMURPUl9Qb3MpICAvKiE8IDB4MDAwMDBGRkYgKi8NCiNkZWZpbmUgREFDX0RPUjFfREFDQzFET1IgICAgICAgICAgICAgICAgICAgREFDX0RPUjFfREFDQzFET1JfTXNrICAgICAgICAgICAgICAvKiE8REFDIGNoYW5uZWwxIGRhdGEgb3V0cHV0ICovDQoNCi8qKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgREFDX0RPUjIgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIERBQ19ET1IyX0RBQ0MyRE9SX1BvcyAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIERBQ19ET1IyX0RBQ0MyRE9SX01zayAgICAgICAgICAgICAgICgweEZGRlUgPDwgREFDX0RPUjJfREFDQzJET1JfUG9zKSAgLyohPCAweDAwMDAwRkZGICovDQojZGVmaW5lIERBQ19ET1IyX0RBQ0MyRE9SICAgICAgICAgICAgICAgICAgIERBQ19ET1IyX0RBQ0MyRE9SX01zayAgICAgICAgICAgICAgLyohPERBQyBjaGFubmVsMiBkYXRhIG91dHB1dCAqLw0KDQovKioqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBEQUNfU1IgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBEQUNfU1JfRE1BVURSMV9Qb3MgICAgICAgICAgICAgICAgICAoMTNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBEQUNfU1JfRE1BVURSMV9Nc2sgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBEQUNfU1JfRE1BVURSMV9Qb3MpICAgICAgIC8qITwgMHgwMDAwMjAwMCAqLw0KI2RlZmluZSBEQUNfU1JfRE1BVURSMSAgICAgICAgICAgICAgICAgICAgICBEQUNfU1JfRE1BVURSMV9Nc2sgICAgICAgICAgICAgICAgIC8qITxEQUMgY2hhbm5lbDEgRE1BIHVuZGVycnVuIGZsYWcgKi8NCiNkZWZpbmUgREFDX1NSX0RNQVVEUjJfUG9zICAgICAgICAgICAgICAgICAgKDI5VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgREFDX1NSX0RNQVVEUjJfTXNrICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgREFDX1NSX0RNQVVEUjJfUG9zKSAgICAgICAvKiE8IDB4MjAwMDAwMDAgKi8NCiNkZWZpbmUgREFDX1NSX0RNQVVEUjIgICAgICAgICAgICAgICAgICAgICAgREFDX1NSX0RNQVVEUjJfTXNrICAgICAgICAgICAgICAgICAvKiE8REFDIGNoYW5uZWwyIERNQSB1bmRlcnJ1biBmbGFnICovDQoNCi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovDQovKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLw0KLyogICAgICAgICAgICAgICAgICAgICAgICAgICBEZWJ1ZyBNQ1UgKERCR01DVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8NCi8qICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovDQovKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLw0KDQovKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIERCR01DVV9JRENPREUgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBEQkdNQ1VfSURDT0RFX0RFVl9JRF9Qb3MgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBEQkdNQ1VfSURDT0RFX0RFVl9JRF9Nc2sgICAgICAgICAgICAgICAgICgweEZGRlUgPDwgREJHTUNVX0lEQ09ERV9ERVZfSURfUG9zKSAvKiE8IDB4MDAwMDBGRkYgKi8NCiNkZWZpbmUgREJHTUNVX0lEQ09ERV9ERVZfSUQgICAgICAgICAgICAgICAgICAgICBEQkdNQ1VfSURDT0RFX0RFVl9JRF9Nc2sgICAgICAvKiE8IERldmljZSBJZGVudGlmaWVyICovDQoNCiNkZWZpbmUgREJHTUNVX0lEQ09ERV9SRVZfSURfUG9zICAgICAgICAgICAgICAgICAoMTZVKSAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgREJHTUNVX0lEQ09ERV9SRVZfSURfTXNrICAgICAgICAgICAgICAgICAoMHhGRkZGVSA8PCBEQkdNQ1VfSURDT0RFX1JFVl9JRF9Qb3MpIC8qITwgMHhGRkZGMDAwMCAqLw0KI2RlZmluZSBEQkdNQ1VfSURDT0RFX1JFVl9JRCAgICAgICAgICAgICAgICAgICAgIERCR01DVV9JRENPREVfUkVWX0lEX01zayAgICAgIC8qITwgUkVWX0lEWzE1OjBdIGJpdHMgKFJldmlzaW9uIElkZW50aWZpZXIpICovDQojZGVmaW5lIERCR01DVV9JRENPREVfUkVWX0lEXzAgICAgICAgICAgICAgICAgICAgKDB4MDAwMVUgPDwgREJHTUNVX0lEQ09ERV9SRVZfSURfUG9zKSAvKiE8IDB4MDAwMTAwMDAgKi8NCiNkZWZpbmUgREJHTUNVX0lEQ09ERV9SRVZfSURfMSAgICAgICAgICAgICAgICAgICAoMHgwMDAyVSA8PCBEQkdNQ1VfSURDT0RFX1JFVl9JRF9Qb3MpIC8qITwgMHgwMDAyMDAwMCAqLw0KI2RlZmluZSBEQkdNQ1VfSURDT0RFX1JFVl9JRF8yICAgICAgICAgICAgICAgICAgICgweDAwMDRVIDw8IERCR01DVV9JRENPREVfUkVWX0lEX1BvcykgLyohPCAweDAwMDQwMDAwICovDQojZGVmaW5lIERCR01DVV9JRENPREVfUkVWX0lEXzMgICAgICAgICAgICAgICAgICAgKDB4MDAwOFUgPDwgREJHTUNVX0lEQ09ERV9SRVZfSURfUG9zKSAvKiE8IDB4MDAwODAwMDAgKi8NCiNkZWZpbmUgREJHTUNVX0lEQ09ERV9SRVZfSURfNCAgICAgICAgICAgICAgICAgICAoMHgwMDEwVSA8PCBEQkdNQ1VfSURDT0RFX1JFVl9JRF9Qb3MpIC8qITwgMHgwMDEwMDAwMCAqLw0KI2RlZmluZSBEQkdNQ1VfSURDT0RFX1JFVl9JRF81ICAgICAgICAgICAgICAgICAgICgweDAwMjBVIDw8IERCR01DVV9JRENPREVfUkVWX0lEX1BvcykgLyohPCAweDAwMjAwMDAwICovDQojZGVmaW5lIERCR01DVV9JRENPREVfUkVWX0lEXzYgICAgICAgICAgICAgICAgICAgKDB4MDA0MFUgPDwgREJHTUNVX0lEQ09ERV9SRVZfSURfUG9zKSAvKiE8IDB4MDA0MDAwMDAgKi8NCiNkZWZpbmUgREJHTUNVX0lEQ09ERV9SRVZfSURfNyAgICAgICAgICAgICAgICAgICAoMHgwMDgwVSA8PCBEQkdNQ1VfSURDT0RFX1JFVl9JRF9Qb3MpIC8qITwgMHgwMDgwMDAwMCAqLw0KI2RlZmluZSBEQkdNQ1VfSURDT0RFX1JFVl9JRF84ICAgICAgICAgICAgICAgICAgICgweDAxMDBVIDw8IERCR01DVV9JRENPREVfUkVWX0lEX1BvcykgLyohPCAweDAxMDAwMDAwICovDQojZGVmaW5lIERCR01DVV9JRENPREVfUkVWX0lEXzkgICAgICAgICAgICAgICAgICAgKDB4MDIwMFUgPDwgREJHTUNVX0lEQ09ERV9SRVZfSURfUG9zKSAvKiE8IDB4MDIwMDAwMDAgKi8NCiNkZWZpbmUgREJHTUNVX0lEQ09ERV9SRVZfSURfMTAgICAgICAgICAgICAgICAgICAoMHgwNDAwVSA8PCBEQkdNQ1VfSURDT0RFX1JFVl9JRF9Qb3MpIC8qITwgMHgwNDAwMDAwMCAqLw0KI2RlZmluZSBEQkdNQ1VfSURDT0RFX1JFVl9JRF8xMSAgICAgICAgICAgICAgICAgICgweDA4MDBVIDw8IERCR01DVV9JRENPREVfUkVWX0lEX1BvcykgLyohPCAweDA4MDAwMDAwICovDQojZGVmaW5lIERCR01DVV9JRENPREVfUkVWX0lEXzEyICAgICAgICAgICAgICAgICAgKDB4MTAwMFUgPDwgREJHTUNVX0lEQ09ERV9SRVZfSURfUG9zKSAvKiE8IDB4MTAwMDAwMDAgKi8NCiNkZWZpbmUgREJHTUNVX0lEQ09ERV9SRVZfSURfMTMgICAgICAgICAgICAgICAgICAoMHgyMDAwVSA8PCBEQkdNQ1VfSURDT0RFX1JFVl9JRF9Qb3MpIC8qITwgMHgyMDAwMDAwMCAqLw0KI2RlZmluZSBEQkdNQ1VfSURDT0RFX1JFVl9JRF8xNCAgICAgICAgICAgICAgICAgICgweDQwMDBVIDw8IERCR01DVV9JRENPREVfUkVWX0lEX1BvcykgLyohPCAweDQwMDAwMDAwICovDQojZGVmaW5lIERCR01DVV9JRENPREVfUkVWX0lEXzE1ICAgICAgICAgICAgICAgICAgKDB4ODAwMFUgPDwgREJHTUNVX0lEQ09ERV9SRVZfSURfUG9zKSAvKiE8IDB4ODAwMDAwMDAgKi8NCg0KLyoqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIERCR01DVV9DUiByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgREJHTUNVX0NSX0RCR19TTEVFUF9Qb3MgICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgREJHTUNVX0NSX0RCR19TTEVFUF9Nc2sgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBEQkdNQ1VfQ1JfREJHX1NMRUVQX1BvcykgLyohPCAweDAwMDAwMDAxICovDQojZGVmaW5lIERCR01DVV9DUl9EQkdfU0xFRVAgICAgICAgICAgICAgICAgICAgICAgREJHTUNVX0NSX0RCR19TTEVFUF9Nc2sgICAgICAgLyohPCBEZWJ1ZyBTbGVlcCBNb2RlICovDQojZGVmaW5lIERCR01DVV9DUl9EQkdfU1RPUF9Qb3MgICAgICAgICAgICAgICAgICAgKDFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIERCR01DVV9DUl9EQkdfU1RPUF9Nc2sgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgREJHTUNVX0NSX0RCR19TVE9QX1BvcykgLyohPCAweDAwMDAwMDAyICovDQojZGVmaW5lIERCR01DVV9DUl9EQkdfU1RPUCAgICAgICAgICAgICAgICAgICAgICAgREJHTUNVX0NSX0RCR19TVE9QX01zayAgICAgICAgLyohPCBEZWJ1ZyBTdG9wIE1vZGUgKi8NCiNkZWZpbmUgREJHTUNVX0NSX0RCR19TVEFOREJZX1BvcyAgICAgICAgICAgICAgICAoMlUpICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgREJHTUNVX0NSX0RCR19TVEFOREJZX01zayAgICAgICAgICAgICAgICAoMHgxVSA8PCBEQkdNQ1VfQ1JfREJHX1NUQU5EQllfUG9zKSAvKiE8IDB4MDAwMDAwMDQgKi8NCiNkZWZpbmUgREJHTUNVX0NSX0RCR19TVEFOREJZICAgICAgICAgICAgICAgICAgICBEQkdNQ1VfQ1JfREJHX1NUQU5EQllfTXNrICAgICAvKiE8IERlYnVnIFN0YW5kYnkgbW9kZSAqLw0KI2RlZmluZSBEQkdNQ1VfQ1JfVFJBQ0VfSU9FTl9Qb3MgICAgICAgICAgICAgICAgICg1VSkgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBEQkdNQ1VfQ1JfVFJBQ0VfSU9FTl9Nc2sgICAgICAgICAgICAgICAgICgweDFVIDw8IERCR01DVV9DUl9UUkFDRV9JT0VOX1BvcykgLyohPCAweDAwMDAwMDIwICovDQojZGVmaW5lIERCR01DVV9DUl9UUkFDRV9JT0VOICAgICAgICAgICAgICAgICAgICAgREJHTUNVX0NSX1RSQUNFX0lPRU5fTXNrICAgICAgLyohPCBUcmFjZSBQaW4gQXNzaWdubWVudCBDb250cm9sICovDQoNCiNkZWZpbmUgREJHTUNVX0NSX1RSQUNFX01PREVfUG9zICAgICAgICAgICAgICAgICAoNlUpICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgREJHTUNVX0NSX1RSQUNFX01PREVfTXNrICAgICAgICAgICAgICAgICAoMHgzVSA8PCBEQkdNQ1VfQ1JfVFJBQ0VfTU9ERV9Qb3MpIC8qITwgMHgwMDAwMDBDMCAqLw0KI2RlZmluZSBEQkdNQ1VfQ1JfVFJBQ0VfTU9ERSAgICAgICAgICAgICAgICAgICAgIERCR01DVV9DUl9UUkFDRV9NT0RFX01zayAgICAgIC8qITwgVFJBQ0VfTU9ERVsxOjBdIGJpdHMgKFRyYWNlIFBpbiBBc3NpZ25tZW50IENvbnRyb2wpICovDQojZGVmaW5lIERCR01DVV9DUl9UUkFDRV9NT0RFXzAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgREJHTUNVX0NSX1RSQUNFX01PREVfUG9zKSAvKiE8IDB4MDAwMDAwNDAgKi8NCiNkZWZpbmUgREJHTUNVX0NSX1RSQUNFX01PREVfMSAgICAgICAgICAgICAgICAgICAoMHgyVSA8PCBEQkdNQ1VfQ1JfVFJBQ0VfTU9ERV9Qb3MpIC8qITwgMHgwMDAwMDA4MCAqLw0KDQovKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgREJHTUNVX0FQQjFfRlogcmVnaXN0ZXIgICoqKioqKioqKioqKioqLw0KDQojZGVmaW5lIERCR01DVV9BUEIxX0ZaX0RCR19USU0yX1NUT1BfUG9zICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIERCR01DVV9BUEIxX0ZaX0RCR19USU0yX1NUT1BfTXNrICAgICAgICAgKDB4MVUgPDwgREJHTUNVX0FQQjFfRlpfREJHX1RJTTJfU1RPUF9Qb3MpIC8qITwgMHgwMDAwMDAwMSAqLw0KI2RlZmluZSBEQkdNQ1VfQVBCMV9GWl9EQkdfVElNMl9TVE9QICAgICAgICAgICAgIERCR01DVV9BUEIxX0ZaX0RCR19USU0yX1NUT1BfTXNrIC8qITwgVElNMiBjb3VudGVyIHN0b3BwZWQgd2hlbiBjb3JlIGlzIGhhbHRlZCAqLw0KI2RlZmluZSBEQkdNQ1VfQVBCMV9GWl9EQkdfVElNM19TVE9QX1BvcyAgICAgICAgICgxVSkgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBEQkdNQ1VfQVBCMV9GWl9EQkdfVElNM19TVE9QX01zayAgICAgICAgICgweDFVIDw8IERCR01DVV9BUEIxX0ZaX0RCR19USU0zX1NUT1BfUG9zKSAvKiE8IDB4MDAwMDAwMDIgKi8NCiNkZWZpbmUgREJHTUNVX0FQQjFfRlpfREJHX1RJTTNfU1RPUCAgICAgICAgICAgICBEQkdNQ1VfQVBCMV9GWl9EQkdfVElNM19TVE9QX01zayAvKiE8IFRJTTMgY291bnRlciBzdG9wcGVkIHdoZW4gY29yZSBpcyBoYWx0ZWQgKi8NCiNkZWZpbmUgREJHTUNVX0FQQjFfRlpfREJHX1RJTTRfU1RPUF9Qb3MgICAgICAgICAoMlUpICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgREJHTUNVX0FQQjFfRlpfREJHX1RJTTRfU1RPUF9Nc2sgICAgICAgICAoMHgxVSA8PCBEQkdNQ1VfQVBCMV9GWl9EQkdfVElNNF9TVE9QX1BvcykgLyohPCAweDAwMDAwMDA0ICovDQojZGVmaW5lIERCR01DVV9BUEIxX0ZaX0RCR19USU00X1NUT1AgICAgICAgICAgICAgREJHTUNVX0FQQjFfRlpfREJHX1RJTTRfU1RPUF9Nc2sgLyohPCBUSU00IGNvdW50ZXIgc3RvcHBlZCB3aGVuIGNvcmUgaXMgaGFsdGVkICovDQojZGVmaW5lIERCR01DVV9BUEIxX0ZaX0RCR19USU01X1NUT1BfUG9zICAgICAgICAgKDNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIERCR01DVV9BUEIxX0ZaX0RCR19USU01X1NUT1BfTXNrICAgICAgICAgKDB4MVUgPDwgREJHTUNVX0FQQjFfRlpfREJHX1RJTTVfU1RPUF9Qb3MpIC8qITwgMHgwMDAwMDAwOCAqLw0KI2RlZmluZSBEQkdNQ1VfQVBCMV9GWl9EQkdfVElNNV9TVE9QICAgICAgICAgICAgIERCR01DVV9BUEIxX0ZaX0RCR19USU01X1NUT1BfTXNrIC8qITwgVElNNSBjb3VudGVyIHN0b3BwZWQgd2hlbiBjb3JlIGlzIGhhbHRlZCAqLw0KI2RlZmluZSBEQkdNQ1VfQVBCMV9GWl9EQkdfVElNNl9TVE9QX1BvcyAgICAgICAgICg0VSkgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBEQkdNQ1VfQVBCMV9GWl9EQkdfVElNNl9TVE9QX01zayAgICAgICAgICgweDFVIDw8IERCR01DVV9BUEIxX0ZaX0RCR19USU02X1NUT1BfUG9zKSAvKiE8IDB4MDAwMDAwMTAgKi8NCiNkZWZpbmUgREJHTUNVX0FQQjFfRlpfREJHX1RJTTZfU1RPUCAgICAgICAgICAgICBEQkdNQ1VfQVBCMV9GWl9EQkdfVElNNl9TVE9QX01zayAvKiE8IFRJTTYgY291bnRlciBzdG9wcGVkIHdoZW4gY29yZSBpcyBoYWx0ZWQgKi8NCiNkZWZpbmUgREJHTUNVX0FQQjFfRlpfREJHX1RJTTdfU1RPUF9Qb3MgICAgICAgICAoNVUpICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgREJHTUNVX0FQQjFfRlpfREJHX1RJTTdfU1RPUF9Nc2sgICAgICAgICAoMHgxVSA8PCBEQkdNQ1VfQVBCMV9GWl9EQkdfVElNN19TVE9QX1BvcykgLyohPCAweDAwMDAwMDIwICovDQojZGVmaW5lIERCR01DVV9BUEIxX0ZaX0RCR19USU03X1NUT1AgICAgICAgICAgICAgREJHTUNVX0FQQjFfRlpfREJHX1RJTTdfU1RPUF9Nc2sgLyohPCBUSU03IGNvdW50ZXIgc3RvcHBlZCB3aGVuIGNvcmUgaXMgaGFsdGVkICovDQojZGVmaW5lIERCR01DVV9BUEIxX0ZaX0RCR19SVENfU1RPUF9Qb3MgICAgICAgICAgKDEwVSkgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIERCR01DVV9BUEIxX0ZaX0RCR19SVENfU1RPUF9Nc2sgICAgICAgICAgKDB4MVUgPDwgREJHTUNVX0FQQjFfRlpfREJHX1JUQ19TVE9QX1BvcykgLyohPCAweDAwMDAwNDAwICovDQojZGVmaW5lIERCR01DVV9BUEIxX0ZaX0RCR19SVENfU1RPUCAgICAgICAgICAgICAgREJHTUNVX0FQQjFfRlpfREJHX1JUQ19TVE9QX01zayAvKiE8IFJUQyBDb3VudGVyIHN0b3BwZWQgd2hlbiBDb3JlIGlzIGhhbHRlZCAqLw0KI2RlZmluZSBEQkdNQ1VfQVBCMV9GWl9EQkdfV1dER19TVE9QX1BvcyAgICAgICAgICgxMVUpICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBEQkdNQ1VfQVBCMV9GWl9EQkdfV1dER19TVE9QX01zayAgICAgICAgICgweDFVIDw8IERCR01DVV9BUEIxX0ZaX0RCR19XV0RHX1NUT1BfUG9zKSAvKiE8IDB4MDAwMDA4MDAgKi8NCiNkZWZpbmUgREJHTUNVX0FQQjFfRlpfREJHX1dXREdfU1RPUCAgICAgICAgICAgICBEQkdNQ1VfQVBCMV9GWl9EQkdfV1dER19TVE9QX01zayAvKiE8IERlYnVnIFdpbmRvdyBXYXRjaGRvZyBzdG9wcGVkIHdoZW4gQ29yZSBpcyBoYWx0ZWQgKi8NCiNkZWZpbmUgREJHTUNVX0FQQjFfRlpfREJHX0lXREdfU1RPUF9Qb3MgICAgICAgICAoMTJVKSAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgREJHTUNVX0FQQjFfRlpfREJHX0lXREdfU1RPUF9Nc2sgICAgICAgICAoMHgxVSA8PCBEQkdNQ1VfQVBCMV9GWl9EQkdfSVdER19TVE9QX1BvcykgLyohPCAweDAwMDAxMDAwICovDQojZGVmaW5lIERCR01DVV9BUEIxX0ZaX0RCR19JV0RHX1NUT1AgICAgICAgICAgICAgREJHTUNVX0FQQjFfRlpfREJHX0lXREdfU1RPUF9Nc2sgLyohPCBEZWJ1ZyBJbmRlcGVuZGVudCBXYXRjaGRvZyBzdG9wcGVkIHdoZW4gQ29yZSBpcyBoYWx0ZWQgKi8NCiNkZWZpbmUgREJHTUNVX0FQQjFfRlpfREJHX0kyQzFfU01CVVNfVElNRU9VVF9Qb3MgKDIxVSkgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgREJHTUNVX0FQQjFfRlpfREJHX0kyQzFfU01CVVNfVElNRU9VVF9Nc2sgKDB4MVUgPDwgREJHTUNVX0FQQjFfRlpfREJHX0kyQzFfU01CVVNfVElNRU9VVF9Qb3MpIC8qITwgMHgwMDIwMDAwMCAqLw0KI2RlZmluZSBEQkdNQ1VfQVBCMV9GWl9EQkdfSTJDMV9TTUJVU19USU1FT1VUICAgIERCR01DVV9BUEIxX0ZaX0RCR19JMkMxX1NNQlVTX1RJTUVPVVRfTXNrIC8qITwgU01CVVMgdGltZW91dCBtb2RlIHN0b3BwZWQgd2hlbiBDb3JlIGlzIGhhbHRlZCAqLw0KI2RlZmluZSBEQkdNQ1VfQVBCMV9GWl9EQkdfSTJDMl9TTUJVU19USU1FT1VUX1BvcyAoMjJVKSAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBEQkdNQ1VfQVBCMV9GWl9EQkdfSTJDMl9TTUJVU19USU1FT1VUX01zayAoMHgxVSA8PCBEQkdNQ1VfQVBCMV9GWl9EQkdfSTJDMl9TTUJVU19USU1FT1VUX1BvcykgLyohPCAweDAwNDAwMDAwICovDQojZGVmaW5lIERCR01DVV9BUEIxX0ZaX0RCR19JMkMyX1NNQlVTX1RJTUVPVVQgICAgREJHTUNVX0FQQjFfRlpfREJHX0kyQzJfU01CVVNfVElNRU9VVF9Nc2sgLyohPCBTTUJVUyB0aW1lb3V0IG1vZGUgc3RvcHBlZCB3aGVuIENvcmUgaXMgaGFsdGVkICovDQoNCi8qKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBEQkdNQ1VfQVBCMl9GWiByZWdpc3RlciAgKioqKioqKioqKioqKiovDQoNCiNkZWZpbmUgREJHTUNVX0FQQjJfRlpfREJHX1RJTTlfU1RPUF9Qb3MgICAgICAgICAoMlUpICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgREJHTUNVX0FQQjJfRlpfREJHX1RJTTlfU1RPUF9Nc2sgICAgICAgICAoMHgxVSA8PCBEQkdNQ1VfQVBCMl9GWl9EQkdfVElNOV9TVE9QX1BvcykgLyohPCAweDAwMDAwMDA0ICovDQojZGVmaW5lIERCR01DVV9BUEIyX0ZaX0RCR19USU05X1NUT1AgICAgICAgICAgICAgREJHTUNVX0FQQjJfRlpfREJHX1RJTTlfU1RPUF9Nc2sgLyohPCBUSU05IGNvdW50ZXIgc3RvcHBlZCB3aGVuIGNvcmUgaXMgaGFsdGVkICovDQojZGVmaW5lIERCR01DVV9BUEIyX0ZaX0RCR19USU0xMF9TVE9QX1BvcyAgICAgICAgKDNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIERCR01DVV9BUEIyX0ZaX0RCR19USU0xMF9TVE9QX01zayAgICAgICAgKDB4MVUgPDwgREJHTUNVX0FQQjJfRlpfREJHX1RJTTEwX1NUT1BfUG9zKSAvKiE8IDB4MDAwMDAwMDggKi8NCiNkZWZpbmUgREJHTUNVX0FQQjJfRlpfREJHX1RJTTEwX1NUT1AgICAgICAgICAgICBEQkdNQ1VfQVBCMl9GWl9EQkdfVElNMTBfU1RPUF9Nc2sgLyohPCBUSU0xMCBjb3VudGVyIHN0b3BwZWQgd2hlbiBjb3JlIGlzIGhhbHRlZCAqLw0KI2RlZmluZSBEQkdNQ1VfQVBCMl9GWl9EQkdfVElNMTFfU1RPUF9Qb3MgICAgICAgICg0VSkgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBEQkdNQ1VfQVBCMl9GWl9EQkdfVElNMTFfU1RPUF9Nc2sgICAgICAgICgweDFVIDw8IERCR01DVV9BUEIyX0ZaX0RCR19USU0xMV9TVE9QX1BvcykgLyohPCAweDAwMDAwMDEwICovDQojZGVmaW5lIERCR01DVV9BUEIyX0ZaX0RCR19USU0xMV9TVE9QICAgICAgICAgICAgREJHTUNVX0FQQjJfRlpfREJHX1RJTTExX1NUT1BfTXNrIC8qITwgVElNMTEgY291bnRlciBzdG9wcGVkIHdoZW4gY29yZSBpcyBoYWx0ZWQgKi8NCg0KLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8NCi8qICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovDQovKiAgICAgICAgICAgICAgICAgICAgICAgICAgIERNQSBDb250cm9sbGVyIChETUEpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLw0KLyogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8NCi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovDQoNCi8qKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgRE1BX0lTUiByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIERNQV9JU1JfR0lGMV9Qb3MgICAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIERNQV9JU1JfR0lGMV9Nc2sgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IERNQV9JU1JfR0lGMV9Qb3MpICAgICAgICAgLyohPCAweDAwMDAwMDAxICovDQojZGVmaW5lIERNQV9JU1JfR0lGMSAgICAgICAgICAgICAgICAgICAgICAgIERNQV9JU1JfR0lGMV9Nc2sgICAgICAgICAgICAgICAgICAgLyohPCBDaGFubmVsIDEgR2xvYmFsIGludGVycnVwdCBmbGFnICovDQojZGVmaW5lIERNQV9JU1JfVENJRjFfUG9zICAgICAgICAgICAgICAgICAgICgxVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIERNQV9JU1JfVENJRjFfTXNrICAgICAgICAgICAgICAgICAgICgweDFVIDw8IERNQV9JU1JfVENJRjFfUG9zKSAgICAgICAgLyohPCAweDAwMDAwMDAyICovDQojZGVmaW5lIERNQV9JU1JfVENJRjEgICAgICAgICAgICAgICAgICAgICAgIERNQV9JU1JfVENJRjFfTXNrICAgICAgICAgICAgICAgICAgLyohPCBDaGFubmVsIDEgVHJhbnNmZXIgQ29tcGxldGUgZmxhZyAqLw0KI2RlZmluZSBETUFfSVNSX0hUSUYxX1BvcyAgICAgICAgICAgICAgICAgICAoMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBETUFfSVNSX0hUSUYxX01zayAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBETUFfSVNSX0hUSUYxX1BvcykgICAgICAgIC8qITwgMHgwMDAwMDAwNCAqLw0KI2RlZmluZSBETUFfSVNSX0hUSUYxICAgICAgICAgICAgICAgICAgICAgICBETUFfSVNSX0hUSUYxX01zayAgICAgICAgICAgICAgICAgIC8qITwgQ2hhbm5lbCAxIEhhbGYgVHJhbnNmZXIgZmxhZyAqLw0KI2RlZmluZSBETUFfSVNSX1RFSUYxX1BvcyAgICAgICAgICAgICAgICAgICAoM1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBETUFfSVNSX1RFSUYxX01zayAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBETUFfSVNSX1RFSUYxX1BvcykgICAgICAgIC8qITwgMHgwMDAwMDAwOCAqLw0KI2RlZmluZSBETUFfSVNSX1RFSUYxICAgICAgICAgICAgICAgICAgICAgICBETUFfSVNSX1RFSUYxX01zayAgICAgICAgICAgICAgICAgIC8qITwgQ2hhbm5lbCAxIFRyYW5zZmVyIEVycm9yIGZsYWcgKi8NCiNkZWZpbmUgRE1BX0lTUl9HSUYyX1BvcyAgICAgICAgICAgICAgICAgICAgKDRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRE1BX0lTUl9HSUYyX01zayAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgRE1BX0lTUl9HSUYyX1BvcykgICAgICAgICAvKiE8IDB4MDAwMDAwMTAgKi8NCiNkZWZpbmUgRE1BX0lTUl9HSUYyICAgICAgICAgICAgICAgICAgICAgICAgRE1BX0lTUl9HSUYyX01zayAgICAgICAgICAgICAgICAgICAvKiE8IENoYW5uZWwgMiBHbG9iYWwgaW50ZXJydXB0IGZsYWcgKi8NCiNkZWZpbmUgRE1BX0lTUl9UQ0lGMl9Qb3MgICAgICAgICAgICAgICAgICAgKDVVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRE1BX0lTUl9UQ0lGMl9Nc2sgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgRE1BX0lTUl9UQ0lGMl9Qb3MpICAgICAgICAvKiE8IDB4MDAwMDAwMjAgKi8NCiNkZWZpbmUgRE1BX0lTUl9UQ0lGMiAgICAgICAgICAgICAgICAgICAgICAgRE1BX0lTUl9UQ0lGMl9Nc2sgICAgICAgICAgICAgICAgICAvKiE8IENoYW5uZWwgMiBUcmFuc2ZlciBDb21wbGV0ZSBmbGFnICovDQojZGVmaW5lIERNQV9JU1JfSFRJRjJfUG9zICAgICAgICAgICAgICAgICAgICg2VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIERNQV9JU1JfSFRJRjJfTXNrICAgICAgICAgICAgICAgICAgICgweDFVIDw8IERNQV9JU1JfSFRJRjJfUG9zKSAgICAgICAgLyohPCAweDAwMDAwMDQwICovDQojZGVmaW5lIERNQV9JU1JfSFRJRjIgICAgICAgICAgICAgICAgICAgICAgIERNQV9JU1JfSFRJRjJfTXNrICAgICAgICAgICAgICAgICAgLyohPCBDaGFubmVsIDIgSGFsZiBUcmFuc2ZlciBmbGFnICovDQojZGVmaW5lIERNQV9JU1JfVEVJRjJfUG9zICAgICAgICAgICAgICAgICAgICg3VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIERNQV9JU1JfVEVJRjJfTXNrICAgICAgICAgICAgICAgICAgICgweDFVIDw8IERNQV9JU1JfVEVJRjJfUG9zKSAgICAgICAgLyohPCAweDAwMDAwMDgwICovDQojZGVmaW5lIERNQV9JU1JfVEVJRjIgICAgICAgICAgICAgICAgICAgICAgIERNQV9JU1JfVEVJRjJfTXNrICAgICAgICAgICAgICAgICAgLyohPCBDaGFubmVsIDIgVHJhbnNmZXIgRXJyb3IgZmxhZyAqLw0KI2RlZmluZSBETUFfSVNSX0dJRjNfUG9zICAgICAgICAgICAgICAgICAgICAoOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBETUFfSVNSX0dJRjNfTXNrICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBETUFfSVNSX0dJRjNfUG9zKSAgICAgICAgIC8qITwgMHgwMDAwMDEwMCAqLw0KI2RlZmluZSBETUFfSVNSX0dJRjMgICAgICAgICAgICAgICAgICAgICAgICBETUFfSVNSX0dJRjNfTXNrICAgICAgICAgICAgICAgICAgIC8qITwgQ2hhbm5lbCAzIEdsb2JhbCBpbnRlcnJ1cHQgZmxhZyAqLw0KI2RlZmluZSBETUFfSVNSX1RDSUYzX1BvcyAgICAgICAgICAgICAgICAgICAoOVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBETUFfSVNSX1RDSUYzX01zayAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBETUFfSVNSX1RDSUYzX1BvcykgICAgICAgIC8qITwgMHgwMDAwMDIwMCAqLw0KI2RlZmluZSBETUFfSVNSX1RDSUYzICAgICAgICAgICAgICAgICAgICAgICBETUFfSVNSX1RDSUYzX01zayAgICAgICAgICAgICAgICAgIC8qITwgQ2hhbm5lbCAzIFRyYW5zZmVyIENvbXBsZXRlIGZsYWcgKi8NCiNkZWZpbmUgRE1BX0lTUl9IVElGM19Qb3MgICAgICAgICAgICAgICAgICAgKDEwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRE1BX0lTUl9IVElGM19Nc2sgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgRE1BX0lTUl9IVElGM19Qb3MpICAgICAgICAvKiE8IDB4MDAwMDA0MDAgKi8NCiNkZWZpbmUgRE1BX0lTUl9IVElGMyAgICAgICAgICAgICAgICAgICAgICAgRE1BX0lTUl9IVElGM19Nc2sgICAgICAgICAgICAgICAgICAvKiE8IENoYW5uZWwgMyBIYWxmIFRyYW5zZmVyIGZsYWcgKi8NCiNkZWZpbmUgRE1BX0lTUl9URUlGM19Qb3MgICAgICAgICAgICAgICAgICAgKDExVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRE1BX0lTUl9URUlGM19Nc2sgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgRE1BX0lTUl9URUlGM19Qb3MpICAgICAgICAvKiE8IDB4MDAwMDA4MDAgKi8NCiNkZWZpbmUgRE1BX0lTUl9URUlGMyAgICAgICAgICAgICAgICAgICAgICAgRE1BX0lTUl9URUlGM19Nc2sgICAgICAgICAgICAgICAgICAvKiE8IENoYW5uZWwgMyBUcmFuc2ZlciBFcnJvciBmbGFnICovDQojZGVmaW5lIERNQV9JU1JfR0lGNF9Qb3MgICAgICAgICAgICAgICAgICAgICgxMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIERNQV9JU1JfR0lGNF9Nc2sgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IERNQV9JU1JfR0lGNF9Qb3MpICAgICAgICAgLyohPCAweDAwMDAxMDAwICovDQojZGVmaW5lIERNQV9JU1JfR0lGNCAgICAgICAgICAgICAgICAgICAgICAgIERNQV9JU1JfR0lGNF9Nc2sgICAgICAgICAgICAgICAgICAgLyohPCBDaGFubmVsIDQgR2xvYmFsIGludGVycnVwdCBmbGFnICovDQojZGVmaW5lIERNQV9JU1JfVENJRjRfUG9zICAgICAgICAgICAgICAgICAgICgxM1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIERNQV9JU1JfVENJRjRfTXNrICAgICAgICAgICAgICAgICAgICgweDFVIDw8IERNQV9JU1JfVENJRjRfUG9zKSAgICAgICAgLyohPCAweDAwMDAyMDAwICovDQojZGVmaW5lIERNQV9JU1JfVENJRjQgICAgICAgICAgICAgICAgICAgICAgIERNQV9JU1JfVENJRjRfTXNrICAgICAgICAgICAgICAgICAgLyohPCBDaGFubmVsIDQgVHJhbnNmZXIgQ29tcGxldGUgZmxhZyAqLw0KI2RlZmluZSBETUFfSVNSX0hUSUY0X1BvcyAgICAgICAgICAgICAgICAgICAoMTRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBETUFfSVNSX0hUSUY0X01zayAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBETUFfSVNSX0hUSUY0X1BvcykgICAgICAgIC8qITwgMHgwMDAwNDAwMCAqLw0KI2RlZmluZSBETUFfSVNSX0hUSUY0ICAgICAgICAgICAgICAgICAgICAgICBETUFfSVNSX0hUSUY0X01zayAgICAgICAgICAgICAgICAgIC8qITwgQ2hhbm5lbCA0IEhhbGYgVHJhbnNmZXIgZmxhZyAqLw0KI2RlZmluZSBETUFfSVNSX1RFSUY0X1BvcyAgICAgICAgICAgICAgICAgICAoMTVVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBETUFfSVNSX1RFSUY0X01zayAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBETUFfSVNSX1RFSUY0X1BvcykgICAgICAgIC8qITwgMHgwMDAwODAwMCAqLw0KI2RlZmluZSBETUFfSVNSX1RFSUY0ICAgICAgICAgICAgICAgICAgICAgICBETUFfSVNSX1RFSUY0X01zayAgICAgICAgICAgICAgICAgIC8qITwgQ2hhbm5lbCA0IFRyYW5zZmVyIEVycm9yIGZsYWcgKi8NCiNkZWZpbmUgRE1BX0lTUl9HSUY1X1BvcyAgICAgICAgICAgICAgICAgICAgKDE2VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRE1BX0lTUl9HSUY1X01zayAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgRE1BX0lTUl9HSUY1X1BvcykgICAgICAgICAvKiE8IDB4MDAwMTAwMDAgKi8NCiNkZWZpbmUgRE1BX0lTUl9HSUY1ICAgICAgICAgICAgICAgICAgICAgICAgRE1BX0lTUl9HSUY1X01zayAgICAgICAgICAgICAgICAgICAvKiE8IENoYW5uZWwgNSBHbG9iYWwgaW50ZXJydXB0IGZsYWcgKi8NCiNkZWZpbmUgRE1BX0lTUl9UQ0lGNV9Qb3MgICAgICAgICAgICAgICAgICAgKDE3VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRE1BX0lTUl9UQ0lGNV9Nc2sgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgRE1BX0lTUl9UQ0lGNV9Qb3MpICAgICAgICAvKiE8IDB4MDAwMjAwMDAgKi8NCiNkZWZpbmUgRE1BX0lTUl9UQ0lGNSAgICAgICAgICAgICAgICAgICAgICAgRE1BX0lTUl9UQ0lGNV9Nc2sgICAgICAgICAgICAgICAgICAvKiE8IENoYW5uZWwgNSBUcmFuc2ZlciBDb21wbGV0ZSBmbGFnICovDQojZGVmaW5lIERNQV9JU1JfSFRJRjVfUG9zICAgICAgICAgICAgICAgICAgICgxOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIERNQV9JU1JfSFRJRjVfTXNrICAgICAgICAgICAgICAgICAgICgweDFVIDw8IERNQV9JU1JfSFRJRjVfUG9zKSAgICAgICAgLyohPCAweDAwMDQwMDAwICovDQojZGVmaW5lIERNQV9JU1JfSFRJRjUgICAgICAgICAgICAgICAgICAgICAgIERNQV9JU1JfSFRJRjVfTXNrICAgICAgICAgICAgICAgICAgLyohPCBDaGFubmVsIDUgSGFsZiBUcmFuc2ZlciBmbGFnICovDQojZGVmaW5lIERNQV9JU1JfVEVJRjVfUG9zICAgICAgICAgICAgICAgICAgICgxOVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIERNQV9JU1JfVEVJRjVfTXNrICAgICAgICAgICAgICAgICAgICgweDFVIDw8IERNQV9JU1JfVEVJRjVfUG9zKSAgICAgICAgLyohPCAweDAwMDgwMDAwICovDQojZGVmaW5lIERNQV9JU1JfVEVJRjUgICAgICAgICAgICAgICAgICAgICAgIERNQV9JU1JfVEVJRjVfTXNrICAgICAgICAgICAgICAgICAgLyohPCBDaGFubmVsIDUgVHJhbnNmZXIgRXJyb3IgZmxhZyAqLw0KI2RlZmluZSBETUFfSVNSX0dJRjZfUG9zICAgICAgICAgICAgICAgICAgICAoMjBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBETUFfSVNSX0dJRjZfTXNrICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBETUFfSVNSX0dJRjZfUG9zKSAgICAgICAgIC8qITwgMHgwMDEwMDAwMCAqLw0KI2RlZmluZSBETUFfSVNSX0dJRjYgICAgICAgICAgICAgICAgICAgICAgICBETUFfSVNSX0dJRjZfTXNrICAgICAgICAgICAgICAgICAgIC8qITwgQ2hhbm5lbCA2IEdsb2JhbCBpbnRlcnJ1cHQgZmxhZyAqLw0KI2RlZmluZSBETUFfSVNSX1RDSUY2X1BvcyAgICAgICAgICAgICAgICAgICAoMjFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBETUFfSVNSX1RDSUY2X01zayAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBETUFfSVNSX1RDSUY2X1BvcykgICAgICAgIC8qITwgMHgwMDIwMDAwMCAqLw0KI2RlZmluZSBETUFfSVNSX1RDSUY2ICAgICAgICAgICAgICAgICAgICAgICBETUFfSVNSX1RDSUY2X01zayAgICAgICAgICAgICAgICAgIC8qITwgQ2hhbm5lbCA2IFRyYW5zZmVyIENvbXBsZXRlIGZsYWcgKi8NCiNkZWZpbmUgRE1BX0lTUl9IVElGNl9Qb3MgICAgICAgICAgICAgICAgICAgKDIyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRE1BX0lTUl9IVElGNl9Nc2sgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgRE1BX0lTUl9IVElGNl9Qb3MpICAgICAgICAvKiE8IDB4MDA0MDAwMDAgKi8NCiNkZWZpbmUgRE1BX0lTUl9IVElGNiAgICAgICAgICAgICAgICAgICAgICAgRE1BX0lTUl9IVElGNl9Nc2sgICAgICAgICAgICAgICAgICAvKiE8IENoYW5uZWwgNiBIYWxmIFRyYW5zZmVyIGZsYWcgKi8NCiNkZWZpbmUgRE1BX0lTUl9URUlGNl9Qb3MgICAgICAgICAgICAgICAgICAgKDIzVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRE1BX0lTUl9URUlGNl9Nc2sgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgRE1BX0lTUl9URUlGNl9Qb3MpICAgICAgICAvKiE8IDB4MDA4MDAwMDAgKi8NCiNkZWZpbmUgRE1BX0lTUl9URUlGNiAgICAgICAgICAgICAgICAgICAgICAgRE1BX0lTUl9URUlGNl9Nc2sgICAgICAgICAgICAgICAgICAvKiE8IENoYW5uZWwgNiBUcmFuc2ZlciBFcnJvciBmbGFnICovDQojZGVmaW5lIERNQV9JU1JfR0lGN19Qb3MgICAgICAgICAgICAgICAgICAgICgyNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIERNQV9JU1JfR0lGN19Nc2sgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IERNQV9JU1JfR0lGN19Qb3MpICAgICAgICAgLyohPCAweDAxMDAwMDAwICovDQojZGVmaW5lIERNQV9JU1JfR0lGNyAgICAgICAgICAgICAgICAgICAgICAgIERNQV9JU1JfR0lGN19Nc2sgICAgICAgICAgICAgICAgICAgLyohPCBDaGFubmVsIDcgR2xvYmFsIGludGVycnVwdCBmbGFnICovDQojZGVmaW5lIERNQV9JU1JfVENJRjdfUG9zICAgICAgICAgICAgICAgICAgICgyNVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIERNQV9JU1JfVENJRjdfTXNrICAgICAgICAgICAgICAgICAgICgweDFVIDw8IERNQV9JU1JfVENJRjdfUG9zKSAgICAgICAgLyohPCAweDAyMDAwMDAwICovDQojZGVmaW5lIERNQV9JU1JfVENJRjcgICAgICAgICAgICAgICAgICAgICAgIERNQV9JU1JfVENJRjdfTXNrICAgICAgICAgICAgICAgICAgLyohPCBDaGFubmVsIDcgVHJhbnNmZXIgQ29tcGxldGUgZmxhZyAqLw0KI2RlZmluZSBETUFfSVNSX0hUSUY3X1BvcyAgICAgICAgICAgICAgICAgICAoMjZVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBETUFfSVNSX0hUSUY3X01zayAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBETUFfSVNSX0hUSUY3X1BvcykgICAgICAgIC8qITwgMHgwNDAwMDAwMCAqLw0KI2RlZmluZSBETUFfSVNSX0hUSUY3ICAgICAgICAgICAgICAgICAgICAgICBETUFfSVNSX0hUSUY3X01zayAgICAgICAgICAgICAgICAgIC8qITwgQ2hhbm5lbCA3IEhhbGYgVHJhbnNmZXIgZmxhZyAqLw0KI2RlZmluZSBETUFfSVNSX1RFSUY3X1BvcyAgICAgICAgICAgICAgICAgICAoMjdVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBETUFfSVNSX1RFSUY3X01zayAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBETUFfSVNSX1RFSUY3X1BvcykgICAgICAgIC8qITwgMHgwODAwMDAwMCAqLw0KI2RlZmluZSBETUFfSVNSX1RFSUY3ICAgICAgICAgICAgICAgICAgICAgICBETUFfSVNSX1RFSUY3X01zayAgICAgICAgICAgICAgICAgIC8qITwgQ2hhbm5lbCA3IFRyYW5zZmVyIEVycm9yIGZsYWcgKi8NCg0KLyoqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBETUFfSUZDUiByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgRE1BX0lGQ1JfQ0dJRjFfUG9zICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRE1BX0lGQ1JfQ0dJRjFfTXNrICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgRE1BX0lGQ1JfQ0dJRjFfUG9zKSAgICAgICAvKiE8IDB4MDAwMDAwMDEgKi8NCiNkZWZpbmUgRE1BX0lGQ1JfQ0dJRjEgICAgICAgICAgICAgICAgICAgICAgRE1BX0lGQ1JfQ0dJRjFfTXNrICAgICAgICAgICAgICAgICAvKiE8IENoYW5uZWwgMSBHbG9iYWwgaW50ZXJydXB0IGNsZWFyICovDQojZGVmaW5lIERNQV9JRkNSX0NUQ0lGMV9Qb3MgICAgICAgICAgICAgICAgICgxVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIERNQV9JRkNSX0NUQ0lGMV9Nc2sgICAgICAgICAgICAgICAgICgweDFVIDw8IERNQV9JRkNSX0NUQ0lGMV9Qb3MpICAgICAgLyohPCAweDAwMDAwMDAyICovDQojZGVmaW5lIERNQV9JRkNSX0NUQ0lGMSAgICAgICAgICAgICAgICAgICAgIERNQV9JRkNSX0NUQ0lGMV9Nc2sgICAgICAgICAgICAgICAgLyohPCBDaGFubmVsIDEgVHJhbnNmZXIgQ29tcGxldGUgY2xlYXIgKi8NCiNkZWZpbmUgRE1BX0lGQ1JfQ0hUSUYxX1BvcyAgICAgICAgICAgICAgICAgKDJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRE1BX0lGQ1JfQ0hUSUYxX01zayAgICAgICAgICAgICAgICAgKDB4MVUgPDwgRE1BX0lGQ1JfQ0hUSUYxX1BvcykgICAgICAvKiE8IDB4MDAwMDAwMDQgKi8NCiNkZWZpbmUgRE1BX0lGQ1JfQ0hUSUYxICAgICAgICAgICAgICAgICAgICAgRE1BX0lGQ1JfQ0hUSUYxX01zayAgICAgICAgICAgICAgICAvKiE8IENoYW5uZWwgMSBIYWxmIFRyYW5zZmVyIGNsZWFyICovDQojZGVmaW5lIERNQV9JRkNSX0NURUlGMV9Qb3MgICAgICAgICAgICAgICAgICgzVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIERNQV9JRkNSX0NURUlGMV9Nc2sgICAgICAgICAgICAgICAgICgweDFVIDw8IERNQV9JRkNSX0NURUlGMV9Qb3MpICAgICAgLyohPCAweDAwMDAwMDA4ICovDQojZGVmaW5lIERNQV9JRkNSX0NURUlGMSAgICAgICAgICAgICAgICAgICAgIERNQV9JRkNSX0NURUlGMV9Nc2sgICAgICAgICAgICAgICAgLyohPCBDaGFubmVsIDEgVHJhbnNmZXIgRXJyb3IgY2xlYXIgKi8NCiNkZWZpbmUgRE1BX0lGQ1JfQ0dJRjJfUG9zICAgICAgICAgICAgICAgICAgKDRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRE1BX0lGQ1JfQ0dJRjJfTXNrICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgRE1BX0lGQ1JfQ0dJRjJfUG9zKSAgICAgICAvKiE8IDB4MDAwMDAwMTAgKi8NCiNkZWZpbmUgRE1BX0lGQ1JfQ0dJRjIgICAgICAgICAgICAgICAgICAgICAgRE1BX0lGQ1JfQ0dJRjJfTXNrICAgICAgICAgICAgICAgICAvKiE8IENoYW5uZWwgMiBHbG9iYWwgaW50ZXJydXB0IGNsZWFyICovDQojZGVmaW5lIERNQV9JRkNSX0NUQ0lGMl9Qb3MgICAgICAgICAgICAgICAgICg1VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIERNQV9JRkNSX0NUQ0lGMl9Nc2sgICAgICAgICAgICAgICAgICgweDFVIDw8IERNQV9JRkNSX0NUQ0lGMl9Qb3MpICAgICAgLyohPCAweDAwMDAwMDIwICovDQojZGVmaW5lIERNQV9JRkNSX0NUQ0lGMiAgICAgICAgICAgICAgICAgICAgIERNQV9JRkNSX0NUQ0lGMl9Nc2sgICAgICAgICAgICAgICAgLyohPCBDaGFubmVsIDIgVHJhbnNmZXIgQ29tcGxldGUgY2xlYXIgKi8NCiNkZWZpbmUgRE1BX0lGQ1JfQ0hUSUYyX1BvcyAgICAgICAgICAgICAgICAgKDZVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRE1BX0lGQ1JfQ0hUSUYyX01zayAgICAgICAgICAgICAgICAgKDB4MVUgPDwgRE1BX0lGQ1JfQ0hUSUYyX1BvcykgICAgICAvKiE8IDB4MDAwMDAwNDAgKi8NCiNkZWZpbmUgRE1BX0lGQ1JfQ0hUSUYyICAgICAgICAgICAgICAgICAgICAgRE1BX0lGQ1JfQ0hUSUYyX01zayAgICAgICAgICAgICAgICAvKiE8IENoYW5uZWwgMiBIYWxmIFRyYW5zZmVyIGNsZWFyICovDQojZGVmaW5lIERNQV9JRkNSX0NURUlGMl9Qb3MgICAgICAgICAgICAgICAgICg3VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIERNQV9JRkNSX0NURUlGMl9Nc2sgICAgICAgICAgICAgICAgICgweDFVIDw8IERNQV9JRkNSX0NURUlGMl9Qb3MpICAgICAgLyohPCAweDAwMDAwMDgwICovDQojZGVmaW5lIERNQV9JRkNSX0NURUlGMiAgICAgICAgICAgICAgICAgICAgIERNQV9JRkNSX0NURUlGMl9Nc2sgICAgICAgICAgICAgICAgLyohPCBDaGFubmVsIDIgVHJhbnNmZXIgRXJyb3IgY2xlYXIgKi8NCiNkZWZpbmUgRE1BX0lGQ1JfQ0dJRjNfUG9zICAgICAgICAgICAgICAgICAgKDhVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRE1BX0lGQ1JfQ0dJRjNfTXNrICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgRE1BX0lGQ1JfQ0dJRjNfUG9zKSAgICAgICAvKiE8IDB4MDAwMDAxMDAgKi8NCiNkZWZpbmUgRE1BX0lGQ1JfQ0dJRjMgICAgICAgICAgICAgICAgICAgICAgRE1BX0lGQ1JfQ0dJRjNfTXNrICAgICAgICAgICAgICAgICAvKiE8IENoYW5uZWwgMyBHbG9iYWwgaW50ZXJydXB0IGNsZWFyICovDQojZGVmaW5lIERNQV9JRkNSX0NUQ0lGM19Qb3MgICAgICAgICAgICAgICAgICg5VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIERNQV9JRkNSX0NUQ0lGM19Nc2sgICAgICAgICAgICAgICAgICgweDFVIDw8IERNQV9JRkNSX0NUQ0lGM19Qb3MpICAgICAgLyohPCAweDAwMDAwMjAwICovDQojZGVmaW5lIERNQV9JRkNSX0NUQ0lGMyAgICAgICAgICAgICAgICAgICAgIERNQV9JRkNSX0NUQ0lGM19Nc2sgICAgICAgICAgICAgICAgLyohPCBDaGFubmVsIDMgVHJhbnNmZXIgQ29tcGxldGUgY2xlYXIgKi8NCiNkZWZpbmUgRE1BX0lGQ1JfQ0hUSUYzX1BvcyAgICAgICAgICAgICAgICAgKDEwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRE1BX0lGQ1JfQ0hUSUYzX01zayAgICAgICAgICAgICAgICAgKDB4MVUgPDwgRE1BX0lGQ1JfQ0hUSUYzX1BvcykgICAgICAvKiE8IDB4MDAwMDA0MDAgKi8NCiNkZWZpbmUgRE1BX0lGQ1JfQ0hUSUYzICAgICAgICAgICAgICAgICAgICAgRE1BX0lGQ1JfQ0hUSUYzX01zayAgICAgICAgICAgICAgICAvKiE8IENoYW5uZWwgMyBIYWxmIFRyYW5zZmVyIGNsZWFyICovDQojZGVmaW5lIERNQV9JRkNSX0NURUlGM19Qb3MgICAgICAgICAgICAgICAgICgxMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIERNQV9JRkNSX0NURUlGM19Nc2sgICAgICAgICAgICAgICAgICgweDFVIDw8IERNQV9JRkNSX0NURUlGM19Qb3MpICAgICAgLyohPCAweDAwMDAwODAwICovDQojZGVmaW5lIERNQV9JRkNSX0NURUlGMyAgICAgICAgICAgICAgICAgICAgIERNQV9JRkNSX0NURUlGM19Nc2sgICAgICAgICAgICAgICAgLyohPCBDaGFubmVsIDMgVHJhbnNmZXIgRXJyb3IgY2xlYXIgKi8NCiNkZWZpbmUgRE1BX0lGQ1JfQ0dJRjRfUG9zICAgICAgICAgICAgICAgICAgKDEyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRE1BX0lGQ1JfQ0dJRjRfTXNrICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgRE1BX0lGQ1JfQ0dJRjRfUG9zKSAgICAgICAvKiE8IDB4MDAwMDEwMDAgKi8NCiNkZWZpbmUgRE1BX0lGQ1JfQ0dJRjQgICAgICAgICAgICAgICAgICAgICAgRE1BX0lGQ1JfQ0dJRjRfTXNrICAgICAgICAgICAgICAgICAvKiE8IENoYW5uZWwgNCBHbG9iYWwgaW50ZXJydXB0IGNsZWFyICovDQojZGVmaW5lIERNQV9JRkNSX0NUQ0lGNF9Qb3MgICAgICAgICAgICAgICAgICgxM1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIERNQV9JRkNSX0NUQ0lGNF9Nc2sgICAgICAgICAgICAgICAgICgweDFVIDw8IERNQV9JRkNSX0NUQ0lGNF9Qb3MpICAgICAgLyohPCAweDAwMDAyMDAwICovDQojZGVmaW5lIERNQV9JRkNSX0NUQ0lGNCAgICAgICAgICAgICAgICAgICAgIERNQV9JRkNSX0NUQ0lGNF9Nc2sgICAgICAgICAgICAgICAgLyohPCBDaGFubmVsIDQgVHJhbnNmZXIgQ29tcGxldGUgY2xlYXIgKi8NCiNkZWZpbmUgRE1BX0lGQ1JfQ0hUSUY0X1BvcyAgICAgICAgICAgICAgICAgKDE0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRE1BX0lGQ1JfQ0hUSUY0X01zayAgICAgICAgICAgICAgICAgKDB4MVUgPDwgRE1BX0lGQ1JfQ0hUSUY0X1BvcykgICAgICAvKiE8IDB4MDAwMDQwMDAgKi8NCiNkZWZpbmUgRE1BX0lGQ1JfQ0hUSUY0ICAgICAgICAgICAgICAgICAgICAgRE1BX0lGQ1JfQ0hUSUY0X01zayAgICAgICAgICAgICAgICAvKiE8IENoYW5uZWwgNCBIYWxmIFRyYW5zZmVyIGNsZWFyICovDQojZGVmaW5lIERNQV9JRkNSX0NURUlGNF9Qb3MgICAgICAgICAgICAgICAgICgxNVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIERNQV9JRkNSX0NURUlGNF9Nc2sgICAgICAgICAgICAgICAgICgweDFVIDw8IERNQV9JRkNSX0NURUlGNF9Qb3MpICAgICAgLyohPCAweDAwMDA4MDAwICovDQojZGVmaW5lIERNQV9JRkNSX0NURUlGNCAgICAgICAgICAgICAgICAgICAgIERNQV9JRkNSX0NURUlGNF9Nc2sgICAgICAgICAgICAgICAgLyohPCBDaGFubmVsIDQgVHJhbnNmZXIgRXJyb3IgY2xlYXIgKi8NCiNkZWZpbmUgRE1BX0lGQ1JfQ0dJRjVfUG9zICAgICAgICAgICAgICAgICAgKDE2VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRE1BX0lGQ1JfQ0dJRjVfTXNrICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgRE1BX0lGQ1JfQ0dJRjVfUG9zKSAgICAgICAvKiE8IDB4MDAwMTAwMDAgKi8NCiNkZWZpbmUgRE1BX0lGQ1JfQ0dJRjUgICAgICAgICAgICAgICAgICAgICAgRE1BX0lGQ1JfQ0dJRjVfTXNrICAgICAgICAgICAgICAgICAvKiE8IENoYW5uZWwgNSBHbG9iYWwgaW50ZXJydXB0IGNsZWFyICovDQojZGVmaW5lIERNQV9JRkNSX0NUQ0lGNV9Qb3MgICAgICAgICAgICAgICAgICgxN1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIERNQV9JRkNSX0NUQ0lGNV9Nc2sgICAgICAgICAgICAgICAgICgweDFVIDw8IERNQV9JRkNSX0NUQ0lGNV9Qb3MpICAgICAgLyohPCAweDAwMDIwMDAwICovDQojZGVmaW5lIERNQV9JRkNSX0NUQ0lGNSAgICAgICAgICAgICAgICAgICAgIERNQV9JRkNSX0NUQ0lGNV9Nc2sgICAgICAgICAgICAgICAgLyohPCBDaGFubmVsIDUgVHJhbnNmZXIgQ29tcGxldGUgY2xlYXIgKi8NCiNkZWZpbmUgRE1BX0lGQ1JfQ0hUSUY1X1BvcyAgICAgICAgICAgICAgICAgKDE4VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRE1BX0lGQ1JfQ0hUSUY1X01zayAgICAgICAgICAgICAgICAgKDB4MVUgPDwgRE1BX0lGQ1JfQ0hUSUY1X1BvcykgICAgICAvKiE8IDB4MDAwNDAwMDAgKi8NCiNkZWZpbmUgRE1BX0lGQ1JfQ0hUSUY1ICAgICAgICAgICAgICAgICAgICAgRE1BX0lGQ1JfQ0hUSUY1X01zayAgICAgICAgICAgICAgICAvKiE8IENoYW5uZWwgNSBIYWxmIFRyYW5zZmVyIGNsZWFyICovDQojZGVmaW5lIERNQV9JRkNSX0NURUlGNV9Qb3MgICAgICAgICAgICAgICAgICgxOVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIERNQV9JRkNSX0NURUlGNV9Nc2sgICAgICAgICAgICAgICAgICgweDFVIDw8IERNQV9JRkNSX0NURUlGNV9Qb3MpICAgICAgLyohPCAweDAwMDgwMDAwICovDQojZGVmaW5lIERNQV9JRkNSX0NURUlGNSAgICAgICAgICAgICAgICAgICAgIERNQV9JRkNSX0NURUlGNV9Nc2sgICAgICAgICAgICAgICAgLyohPCBDaGFubmVsIDUgVHJhbnNmZXIgRXJyb3IgY2xlYXIgKi8NCiNkZWZpbmUgRE1BX0lGQ1JfQ0dJRjZfUG9zICAgICAgICAgICAgICAgICAgKDIwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRE1BX0lGQ1JfQ0dJRjZfTXNrICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgRE1BX0lGQ1JfQ0dJRjZfUG9zKSAgICAgICAvKiE8IDB4MDAxMDAwMDAgKi8NCiNkZWZpbmUgRE1BX0lGQ1JfQ0dJRjYgICAgICAgICAgICAgICAgICAgICAgRE1BX0lGQ1JfQ0dJRjZfTXNrICAgICAgICAgICAgICAgICAvKiE8IENoYW5uZWwgNiBHbG9iYWwgaW50ZXJydXB0IGNsZWFyICovDQojZGVmaW5lIERNQV9JRkNSX0NUQ0lGNl9Qb3MgICAgICAgICAgICAgICAgICgyMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIERNQV9JRkNSX0NUQ0lGNl9Nc2sgICAgICAgICAgICAgICAgICgweDFVIDw8IERNQV9JRkNSX0NUQ0lGNl9Qb3MpICAgICAgLyohPCAweDAwMjAwMDAwICovDQojZGVmaW5lIERNQV9JRkNSX0NUQ0lGNiAgICAgICAgICAgICAgICAgICAgIERNQV9JRkNSX0NUQ0lGNl9Nc2sgICAgICAgICAgICAgICAgLyohPCBDaGFubmVsIDYgVHJhbnNmZXIgQ29tcGxldGUgY2xlYXIgKi8NCiNkZWZpbmUgRE1BX0lGQ1JfQ0hUSUY2X1BvcyAgICAgICAgICAgICAgICAgKDIyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRE1BX0lGQ1JfQ0hUSUY2X01zayAgICAgICAgICAgICAgICAgKDB4MVUgPDwgRE1BX0lGQ1JfQ0hUSUY2X1BvcykgICAgICAvKiE8IDB4MDA0MDAwMDAgKi8NCiNkZWZpbmUgRE1BX0lGQ1JfQ0hUSUY2ICAgICAgICAgICAgICAgICAgICAgRE1BX0lGQ1JfQ0hUSUY2X01zayAgICAgICAgICAgICAgICAvKiE8IENoYW5uZWwgNiBIYWxmIFRyYW5zZmVyIGNsZWFyICovDQojZGVmaW5lIERNQV9JRkNSX0NURUlGNl9Qb3MgICAgICAgICAgICAgICAgICgyM1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIERNQV9JRkNSX0NURUlGNl9Nc2sgICAgICAgICAgICAgICAgICgweDFVIDw8IERNQV9JRkNSX0NURUlGNl9Qb3MpICAgICAgLyohPCAweDAwODAwMDAwICovDQojZGVmaW5lIERNQV9JRkNSX0NURUlGNiAgICAgICAgICAgICAgICAgICAgIERNQV9JRkNSX0NURUlGNl9Nc2sgICAgICAgICAgICAgICAgLyohPCBDaGFubmVsIDYgVHJhbnNmZXIgRXJyb3IgY2xlYXIgKi8NCiNkZWZpbmUgRE1BX0lGQ1JfQ0dJRjdfUG9zICAgICAgICAgICAgICAgICAgKDI0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRE1BX0lGQ1JfQ0dJRjdfTXNrICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgRE1BX0lGQ1JfQ0dJRjdfUG9zKSAgICAgICAvKiE8IDB4MDEwMDAwMDAgKi8NCiNkZWZpbmUgRE1BX0lGQ1JfQ0dJRjcgICAgICAgICAgICAgICAgICAgICAgRE1BX0lGQ1JfQ0dJRjdfTXNrICAgICAgICAgICAgICAgICAvKiE8IENoYW5uZWwgNyBHbG9iYWwgaW50ZXJydXB0IGNsZWFyICovDQojZGVmaW5lIERNQV9JRkNSX0NUQ0lGN19Qb3MgICAgICAgICAgICAgICAgICgyNVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIERNQV9JRkNSX0NUQ0lGN19Nc2sgICAgICAgICAgICAgICAgICgweDFVIDw8IERNQV9JRkNSX0NUQ0lGN19Qb3MpICAgICAgLyohPCAweDAyMDAwMDAwICovDQojZGVmaW5lIERNQV9JRkNSX0NUQ0lGNyAgICAgICAgICAgICAgICAgICAgIERNQV9JRkNSX0NUQ0lGN19Nc2sgICAgICAgICAgICAgICAgLyohPCBDaGFubmVsIDcgVHJhbnNmZXIgQ29tcGxldGUgY2xlYXIgKi8NCiNkZWZpbmUgRE1BX0lGQ1JfQ0hUSUY3X1BvcyAgICAgICAgICAgICAgICAgKDI2VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRE1BX0lGQ1JfQ0hUSUY3X01zayAgICAgICAgICAgICAgICAgKDB4MVUgPDwgRE1BX0lGQ1JfQ0hUSUY3X1BvcykgICAgICAvKiE8IDB4MDQwMDAwMDAgKi8NCiNkZWZpbmUgRE1BX0lGQ1JfQ0hUSUY3ICAgICAgICAgICAgICAgICAgICAgRE1BX0lGQ1JfQ0hUSUY3X01zayAgICAgICAgICAgICAgICAvKiE8IENoYW5uZWwgNyBIYWxmIFRyYW5zZmVyIGNsZWFyICovDQojZGVmaW5lIERNQV9JRkNSX0NURUlGN19Qb3MgICAgICAgICAgICAgICAgICgyN1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIERNQV9JRkNSX0NURUlGN19Nc2sgICAgICAgICAgICAgICAgICgweDFVIDw8IERNQV9JRkNSX0NURUlGN19Qb3MpICAgICAgLyohPCAweDA4MDAwMDAwICovDQojZGVmaW5lIERNQV9JRkNSX0NURUlGNyAgICAgICAgICAgICAgICAgICAgIERNQV9JRkNSX0NURUlGN19Nc2sgICAgICAgICAgICAgICAgLyohPCBDaGFubmVsIDcgVHJhbnNmZXIgRXJyb3IgY2xlYXIgKi8NCg0KLyoqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBETUFfQ0NSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBETUFfQ0NSX0VOX1BvcyAgICAgICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBETUFfQ0NSX0VOX01zayAgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBETUFfQ0NSX0VOX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDAwMSAqLw0KI2RlZmluZSBETUFfQ0NSX0VOICAgICAgICAgICAgICAgICAgICAgICAgICBETUFfQ0NSX0VOX01zayAgICAgICAgICAgICAgICAgICAgIC8qITwgQ2hhbm5lbCBlbmFibGUqLw0KI2RlZmluZSBETUFfQ0NSX1RDSUVfUG9zICAgICAgICAgICAgICAgICAgICAoMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBETUFfQ0NSX1RDSUVfTXNrICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBETUFfQ0NSX1RDSUVfUG9zKSAgICAgICAgIC8qITwgMHgwMDAwMDAwMiAqLw0KI2RlZmluZSBETUFfQ0NSX1RDSUUgICAgICAgICAgICAgICAgICAgICAgICBETUFfQ0NSX1RDSUVfTXNrICAgICAgICAgICAgICAgICAgIC8qITwgVHJhbnNmZXIgY29tcGxldGUgaW50ZXJydXB0IGVuYWJsZSAqLw0KI2RlZmluZSBETUFfQ0NSX0hUSUVfUG9zICAgICAgICAgICAgICAgICAgICAoMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBETUFfQ0NSX0hUSUVfTXNrICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBETUFfQ0NSX0hUSUVfUG9zKSAgICAgICAgIC8qITwgMHgwMDAwMDAwNCAqLw0KI2RlZmluZSBETUFfQ0NSX0hUSUUgICAgICAgICAgICAgICAgICAgICAgICBETUFfQ0NSX0hUSUVfTXNrICAgICAgICAgICAgICAgICAgIC8qITwgSGFsZiBUcmFuc2ZlciBpbnRlcnJ1cHQgZW5hYmxlICovDQojZGVmaW5lIERNQV9DQ1JfVEVJRV9Qb3MgICAgICAgICAgICAgICAgICAgICgzVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIERNQV9DQ1JfVEVJRV9Nc2sgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IERNQV9DQ1JfVEVJRV9Qb3MpICAgICAgICAgLyohPCAweDAwMDAwMDA4ICovDQojZGVmaW5lIERNQV9DQ1JfVEVJRSAgICAgICAgICAgICAgICAgICAgICAgIERNQV9DQ1JfVEVJRV9Nc2sgICAgICAgICAgICAgICAgICAgLyohPCBUcmFuc2ZlciBlcnJvciBpbnRlcnJ1cHQgZW5hYmxlICovDQojZGVmaW5lIERNQV9DQ1JfRElSX1BvcyAgICAgICAgICAgICAgICAgICAgICg0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIERNQV9DQ1JfRElSX01zayAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IERNQV9DQ1JfRElSX1BvcykgICAgICAgICAgLyohPCAweDAwMDAwMDEwICovDQojZGVmaW5lIERNQV9DQ1JfRElSICAgICAgICAgICAgICAgICAgICAgICAgIERNQV9DQ1JfRElSX01zayAgICAgICAgICAgICAgICAgICAgLyohPCBEYXRhIHRyYW5zZmVyIGRpcmVjdGlvbiAqLw0KI2RlZmluZSBETUFfQ0NSX0NJUkNfUG9zICAgICAgICAgICAgICAgICAgICAoNVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBETUFfQ0NSX0NJUkNfTXNrICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBETUFfQ0NSX0NJUkNfUG9zKSAgICAgICAgIC8qITwgMHgwMDAwMDAyMCAqLw0KI2RlZmluZSBETUFfQ0NSX0NJUkMgICAgICAgICAgICAgICAgICAgICAgICBETUFfQ0NSX0NJUkNfTXNrICAgICAgICAgICAgICAgICAgIC8qITwgQ2lyY3VsYXIgbW9kZSAqLw0KI2RlZmluZSBETUFfQ0NSX1BJTkNfUG9zICAgICAgICAgICAgICAgICAgICAoNlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBETUFfQ0NSX1BJTkNfTXNrICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBETUFfQ0NSX1BJTkNfUG9zKSAgICAgICAgIC8qITwgMHgwMDAwMDA0MCAqLw0KI2RlZmluZSBETUFfQ0NSX1BJTkMgICAgICAgICAgICAgICAgICAgICAgICBETUFfQ0NSX1BJTkNfTXNrICAgICAgICAgICAgICAgICAgIC8qITwgUGVyaXBoZXJhbCBpbmNyZW1lbnQgbW9kZSAqLw0KI2RlZmluZSBETUFfQ0NSX01JTkNfUG9zICAgICAgICAgICAgICAgICAgICAoN1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBETUFfQ0NSX01JTkNfTXNrICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBETUFfQ0NSX01JTkNfUG9zKSAgICAgICAgIC8qITwgMHgwMDAwMDA4MCAqLw0KI2RlZmluZSBETUFfQ0NSX01JTkMgICAgICAgICAgICAgICAgICAgICAgICBETUFfQ0NSX01JTkNfTXNrICAgICAgICAgICAgICAgICAgIC8qITwgTWVtb3J5IGluY3JlbWVudCBtb2RlICovDQoNCiNkZWZpbmUgRE1BX0NDUl9QU0laRV9Qb3MgICAgICAgICAgICAgICAgICAgKDhVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRE1BX0NDUl9QU0laRV9Nc2sgICAgICAgICAgICAgICAgICAgKDB4M1UgPDwgRE1BX0NDUl9QU0laRV9Qb3MpICAgICAgICAvKiE8IDB4MDAwMDAzMDAgKi8NCiNkZWZpbmUgRE1BX0NDUl9QU0laRSAgICAgICAgICAgICAgICAgICAgICAgRE1BX0NDUl9QU0laRV9Nc2sgICAgICAgICAgICAgICAgICAvKiE8IFBTSVpFWzE6MF0gYml0cyAoUGVyaXBoZXJhbCBzaXplKSAqLw0KI2RlZmluZSBETUFfQ0NSX1BTSVpFXzAgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBETUFfQ0NSX1BTSVpFX1BvcykgICAgICAgIC8qITwgMHgwMDAwMDEwMCAqLw0KI2RlZmluZSBETUFfQ0NSX1BTSVpFXzEgICAgICAgICAgICAgICAgICAgICAoMHgyVSA8PCBETUFfQ0NSX1BTSVpFX1BvcykgICAgICAgIC8qITwgMHgwMDAwMDIwMCAqLw0KDQojZGVmaW5lIERNQV9DQ1JfTVNJWkVfUG9zICAgICAgICAgICAgICAgICAgICgxMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIERNQV9DQ1JfTVNJWkVfTXNrICAgICAgICAgICAgICAgICAgICgweDNVIDw8IERNQV9DQ1JfTVNJWkVfUG9zKSAgICAgICAgLyohPCAweDAwMDAwQzAwICovDQojZGVmaW5lIERNQV9DQ1JfTVNJWkUgICAgICAgICAgICAgICAgICAgICAgIERNQV9DQ1JfTVNJWkVfTXNrICAgICAgICAgICAgICAgICAgLyohPCBNU0laRVsxOjBdIGJpdHMgKE1lbW9yeSBzaXplKSAqLw0KI2RlZmluZSBETUFfQ0NSX01TSVpFXzAgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBETUFfQ0NSX01TSVpFX1BvcykgICAgICAgIC8qITwgMHgwMDAwMDQwMCAqLw0KI2RlZmluZSBETUFfQ0NSX01TSVpFXzEgICAgICAgICAgICAgICAgICAgICAoMHgyVSA8PCBETUFfQ0NSX01TSVpFX1BvcykgICAgICAgIC8qITwgMHgwMDAwMDgwMCAqLw0KDQojZGVmaW5lIERNQV9DQ1JfUExfUG9zICAgICAgICAgICAgICAgICAgICAgICgxMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIERNQV9DQ1JfUExfTXNrICAgICAgICAgICAgICAgICAgICAgICgweDNVIDw8IERNQV9DQ1JfUExfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAzMDAwICovDQojZGVmaW5lIERNQV9DQ1JfUEwgICAgICAgICAgICAgICAgICAgICAgICAgIERNQV9DQ1JfUExfTXNrICAgICAgICAgICAgICAgICAgICAgLyohPCBQTFsxOjBdIGJpdHMoQ2hhbm5lbCBQcmlvcml0eSBsZXZlbCkgKi8NCiNkZWZpbmUgRE1BX0NDUl9QTF8wICAgICAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgRE1BX0NDUl9QTF9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDEwMDAgKi8NCiNkZWZpbmUgRE1BX0NDUl9QTF8xICAgICAgICAgICAgICAgICAgICAgICAgKDB4MlUgPDwgRE1BX0NDUl9QTF9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDIwMDAgKi8NCg0KI2RlZmluZSBETUFfQ0NSX01FTTJNRU1fUG9zICAgICAgICAgICAgICAgICAoMTRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBETUFfQ0NSX01FTTJNRU1fTXNrICAgICAgICAgICAgICAgICAoMHgxVSA8PCBETUFfQ0NSX01FTTJNRU1fUG9zKSAgICAgIC8qITwgMHgwMDAwNDAwMCAqLw0KI2RlZmluZSBETUFfQ0NSX01FTTJNRU0gICAgICAgICAgICAgICAgICAgICBETUFfQ0NSX01FTTJNRU1fTXNrICAgICAgICAgICAgICAgIC8qITwgTWVtb3J5IHRvIG1lbW9yeSBtb2RlICovDQoNCi8qKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGdlbmVyaWMgZm9yIERNQV9DTkRUUiByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgRE1BX0NORFRSX05EVF9Qb3MgICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRE1BX0NORFRSX05EVF9Nc2sgICAgICAgICAgICAgICAgICAgKDB4RkZGRlUgPDwgRE1BX0NORFRSX05EVF9Qb3MpICAgICAvKiE8IDB4MDAwMEZGRkYgKi8NCiNkZWZpbmUgRE1BX0NORFRSX05EVCAgICAgICAgICAgICAgICAgICAgICAgRE1BX0NORFRSX05EVF9Nc2sgICAgICAgICAgICAgICAgICAvKiE8IE51bWJlciBvZiBkYXRhIHRvIFRyYW5zZmVyICovDQoNCi8qKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBETUFfQ05EVFIxIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIERNQV9DTkRUUjFfTkRUX1BvcyAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIERNQV9DTkRUUjFfTkRUX01zayAgICAgICAgICAgICAgICAgICgweEZGRkZVIDw8IERNQV9DTkRUUjFfTkRUX1BvcykgICAgLyohPCAweDAwMDBGRkZGICovDQojZGVmaW5lIERNQV9DTkRUUjFfTkRUICAgICAgICAgICAgICAgICAgICAgIERNQV9DTkRUUjFfTkRUX01zayAgICAgICAgICAgICAgICAgLyohPCBOdW1iZXIgb2YgZGF0YSB0byBUcmFuc2ZlciAqLw0KDQovKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgRE1BX0NORFRSMiByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBETUFfQ05EVFIyX05EVF9Qb3MgICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBETUFfQ05EVFIyX05EVF9Nc2sgICAgICAgICAgICAgICAgICAoMHhGRkZGVSA8PCBETUFfQ05EVFIyX05EVF9Qb3MpICAgIC8qITwgMHgwMDAwRkZGRiAqLw0KI2RlZmluZSBETUFfQ05EVFIyX05EVCAgICAgICAgICAgICAgICAgICAgICBETUFfQ05EVFIyX05EVF9Nc2sgICAgICAgICAgICAgICAgIC8qITwgTnVtYmVyIG9mIGRhdGEgdG8gVHJhbnNmZXIgKi8NCg0KLyoqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIERNQV9DTkRUUjMgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgRE1BX0NORFRSM19ORFRfUG9zICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRE1BX0NORFRSM19ORFRfTXNrICAgICAgICAgICAgICAgICAgKDB4RkZGRlUgPDwgRE1BX0NORFRSM19ORFRfUG9zKSAgICAvKiE8IDB4MDAwMEZGRkYgKi8NCiNkZWZpbmUgRE1BX0NORFRSM19ORFQgICAgICAgICAgICAgICAgICAgICAgRE1BX0NORFRSM19ORFRfTXNrICAgICAgICAgICAgICAgICAvKiE8IE51bWJlciBvZiBkYXRhIHRvIFRyYW5zZmVyICovDQoNCi8qKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBETUFfQ05EVFI0IHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIERNQV9DTkRUUjRfTkRUX1BvcyAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIERNQV9DTkRUUjRfTkRUX01zayAgICAgICAgICAgICAgICAgICgweEZGRkZVIDw8IERNQV9DTkRUUjRfTkRUX1BvcykgICAgLyohPCAweDAwMDBGRkZGICovDQojZGVmaW5lIERNQV9DTkRUUjRfTkRUICAgICAgICAgICAgICAgICAgICAgIERNQV9DTkRUUjRfTkRUX01zayAgICAgICAgICAgICAgICAgLyohPCBOdW1iZXIgb2YgZGF0YSB0byBUcmFuc2ZlciAqLw0KDQovKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgRE1BX0NORFRSNSByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBETUFfQ05EVFI1X05EVF9Qb3MgICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBETUFfQ05EVFI1X05EVF9Nc2sgICAgICAgICAgICAgICAgICAoMHhGRkZGVSA8PCBETUFfQ05EVFI1X05EVF9Qb3MpICAgIC8qITwgMHgwMDAwRkZGRiAqLw0KI2RlZmluZSBETUFfQ05EVFI1X05EVCAgICAgICAgICAgICAgICAgICAgICBETUFfQ05EVFI1X05EVF9Nc2sgICAgICAgICAgICAgICAgIC8qITwgTnVtYmVyIG9mIGRhdGEgdG8gVHJhbnNmZXIgKi8NCg0KLyoqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIERNQV9DTkRUUjYgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgRE1BX0NORFRSNl9ORFRfUG9zICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRE1BX0NORFRSNl9ORFRfTXNrICAgICAgICAgICAgICAgICAgKDB4RkZGRlUgPDwgRE1BX0NORFRSNl9ORFRfUG9zKSAgICAvKiE8IDB4MDAwMEZGRkYgKi8NCiNkZWZpbmUgRE1BX0NORFRSNl9ORFQgICAgICAgICAgICAgICAgICAgICAgRE1BX0NORFRSNl9ORFRfTXNrICAgICAgICAgICAgICAgICAvKiE8IE51bWJlciBvZiBkYXRhIHRvIFRyYW5zZmVyICovDQoNCi8qKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBETUFfQ05EVFI3IHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIERNQV9DTkRUUjdfTkRUX1BvcyAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIERNQV9DTkRUUjdfTkRUX01zayAgICAgICAgICAgICAgICAgICgweEZGRkZVIDw8IERNQV9DTkRUUjdfTkRUX1BvcykgICAgLyohPCAweDAwMDBGRkZGICovDQojZGVmaW5lIERNQV9DTkRUUjdfTkRUICAgICAgICAgICAgICAgICAgICAgIERNQV9DTkRUUjdfTkRUX01zayAgICAgICAgICAgICAgICAgLyohPCBOdW1iZXIgb2YgZGF0YSB0byBUcmFuc2ZlciAqLw0KDQovKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBnZW5lcmljIGZvciBETUFfQ1BBUiByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIERNQV9DUEFSX1BBX1BvcyAgICAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIERNQV9DUEFSX1BBX01zayAgICAgICAgICAgICAgICAgICAgICgweEZGRkZGRkZGVSA8PCBETUFfQ1BBUl9QQV9Qb3MpICAgLyohPCAweEZGRkZGRkZGICovDQojZGVmaW5lIERNQV9DUEFSX1BBICAgICAgICAgICAgICAgICAgICAgICAgIERNQV9DUEFSX1BBX01zayAgICAgICAgICAgICAgICAgICAgLyohPCBQZXJpcGhlcmFsIEFkZHJlc3MgKi8NCg0KLyoqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIERNQV9DUEFSMSByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgRE1BX0NQQVIxX1BBX1BvcyAgICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRE1BX0NQQVIxX1BBX01zayAgICAgICAgICAgICAgICAgICAgKDB4RkZGRkZGRkZVIDw8IERNQV9DUEFSMV9QQV9Qb3MpICAvKiE8IDB4RkZGRkZGRkYgKi8NCiNkZWZpbmUgRE1BX0NQQVIxX1BBICAgICAgICAgICAgICAgICAgICAgICAgRE1BX0NQQVIxX1BBX01zayAgICAgICAgICAgICAgICAgICAvKiE8IFBlcmlwaGVyYWwgQWRkcmVzcyAqLw0KDQovKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgRE1BX0NQQVIyIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBETUFfQ1BBUjJfUEFfUG9zICAgICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBETUFfQ1BBUjJfUEFfTXNrICAgICAgICAgICAgICAgICAgICAoMHhGRkZGRkZGRlUgPDwgRE1BX0NQQVIyX1BBX1BvcykgIC8qITwgMHhGRkZGRkZGRiAqLw0KI2RlZmluZSBETUFfQ1BBUjJfUEEgICAgICAgICAgICAgICAgICAgICAgICBETUFfQ1BBUjJfUEFfTXNrICAgICAgICAgICAgICAgICAgIC8qITwgUGVyaXBoZXJhbCBBZGRyZXNzICovDQoNCi8qKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBETUFfQ1BBUjMgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIERNQV9DUEFSM19QQV9Qb3MgICAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIERNQV9DUEFSM19QQV9Nc2sgICAgICAgICAgICAgICAgICAgICgweEZGRkZGRkZGVSA8PCBETUFfQ1BBUjNfUEFfUG9zKSAgLyohPCAweEZGRkZGRkZGICovDQojZGVmaW5lIERNQV9DUEFSM19QQSAgICAgICAgICAgICAgICAgICAgICAgIERNQV9DUEFSM19QQV9Nc2sgICAgICAgICAgICAgICAgICAgLyohPCBQZXJpcGhlcmFsIEFkZHJlc3MgKi8NCg0KDQovKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgRE1BX0NQQVI0IHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBETUFfQ1BBUjRfUEFfUG9zICAgICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBETUFfQ1BBUjRfUEFfTXNrICAgICAgICAgICAgICAgICAgICAoMHhGRkZGRkZGRlUgPDwgRE1BX0NQQVI0X1BBX1BvcykgIC8qITwgMHhGRkZGRkZGRiAqLw0KI2RlZmluZSBETUFfQ1BBUjRfUEEgICAgICAgICAgICAgICAgICAgICAgICBETUFfQ1BBUjRfUEFfTXNrICAgICAgICAgICAgICAgICAgIC8qITwgUGVyaXBoZXJhbCBBZGRyZXNzICovDQoNCi8qKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBETUFfQ1BBUjUgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIERNQV9DUEFSNV9QQV9Qb3MgICAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIERNQV9DUEFSNV9QQV9Nc2sgICAgICAgICAgICAgICAgICAgICgweEZGRkZGRkZGVSA8PCBETUFfQ1BBUjVfUEFfUG9zKSAgLyohPCAweEZGRkZGRkZGICovDQojZGVmaW5lIERNQV9DUEFSNV9QQSAgICAgICAgICAgICAgICAgICAgICAgIERNQV9DUEFSNV9QQV9Nc2sgICAgICAgICAgICAgICAgICAgLyohPCBQZXJpcGhlcmFsIEFkZHJlc3MgKi8NCg0KLyoqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIERNQV9DUEFSNiByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgRE1BX0NQQVI2X1BBX1BvcyAgICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRE1BX0NQQVI2X1BBX01zayAgICAgICAgICAgICAgICAgICAgKDB4RkZGRkZGRkZVIDw8IERNQV9DUEFSNl9QQV9Qb3MpICAvKiE8IDB4RkZGRkZGRkYgKi8NCiNkZWZpbmUgRE1BX0NQQVI2X1BBICAgICAgICAgICAgICAgICAgICAgICAgRE1BX0NQQVI2X1BBX01zayAgICAgICAgICAgICAgICAgICAvKiE8IFBlcmlwaGVyYWwgQWRkcmVzcyAqLw0KDQoNCi8qKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBETUFfQ1BBUjcgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIERNQV9DUEFSN19QQV9Qb3MgICAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIERNQV9DUEFSN19QQV9Nc2sgICAgICAgICAgICAgICAgICAgICgweEZGRkZGRkZGVSA8PCBETUFfQ1BBUjdfUEFfUG9zKSAgLyohPCAweEZGRkZGRkZGICovDQojZGVmaW5lIERNQV9DUEFSN19QQSAgICAgICAgICAgICAgICAgICAgICAgIERNQV9DUEFSN19QQV9Nc2sgICAgICAgICAgICAgICAgICAgLyohPCBQZXJpcGhlcmFsIEFkZHJlc3MgKi8NCg0KLyoqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZ2VuZXJpYyBmb3IgRE1BX0NNQVIgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBETUFfQ01BUl9NQV9Qb3MgICAgICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBETUFfQ01BUl9NQV9Nc2sgICAgICAgICAgICAgICAgICAgICAoMHhGRkZGRkZGRlUgPDwgRE1BX0NNQVJfTUFfUG9zKSAgIC8qITwgMHhGRkZGRkZGRiAqLw0KI2RlZmluZSBETUFfQ01BUl9NQSAgICAgICAgICAgICAgICAgICAgICAgICBETUFfQ01BUl9NQV9Nc2sgICAgICAgICAgICAgICAgICAgIC8qITwgTWVtb3J5IEFkZHJlc3MgKi8NCg0KLyoqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIERNQV9DTUFSMSByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgRE1BX0NNQVIxX01BX1BvcyAgICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRE1BX0NNQVIxX01BX01zayAgICAgICAgICAgICAgICAgICAgKDB4RkZGRkZGRkZVIDw8IERNQV9DTUFSMV9NQV9Qb3MpICAvKiE8IDB4RkZGRkZGRkYgKi8NCiNkZWZpbmUgRE1BX0NNQVIxX01BICAgICAgICAgICAgICAgICAgICAgICAgRE1BX0NNQVIxX01BX01zayAgICAgICAgICAgICAgICAgICAvKiE8IE1lbW9yeSBBZGRyZXNzICovDQoNCi8qKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBETUFfQ01BUjIgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIERNQV9DTUFSMl9NQV9Qb3MgICAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIERNQV9DTUFSMl9NQV9Nc2sgICAgICAgICAgICAgICAgICAgICgweEZGRkZGRkZGVSA8PCBETUFfQ01BUjJfTUFfUG9zKSAgLyohPCAweEZGRkZGRkZGICovDQojZGVmaW5lIERNQV9DTUFSMl9NQSAgICAgICAgICAgICAgICAgICAgICAgIERNQV9DTUFSMl9NQV9Nc2sgICAgICAgICAgICAgICAgICAgLyohPCBNZW1vcnkgQWRkcmVzcyAqLw0KDQovKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgRE1BX0NNQVIzIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBETUFfQ01BUjNfTUFfUG9zICAgICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBETUFfQ01BUjNfTUFfTXNrICAgICAgICAgICAgICAgICAgICAoMHhGRkZGRkZGRlUgPDwgRE1BX0NNQVIzX01BX1BvcykgIC8qITwgMHhGRkZGRkZGRiAqLw0KI2RlZmluZSBETUFfQ01BUjNfTUEgICAgICAgICAgICAgICAgICAgICAgICBETUFfQ01BUjNfTUFfTXNrICAgICAgICAgICAgICAgICAgIC8qITwgTWVtb3J5IEFkZHJlc3MgKi8NCg0KDQovKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgRE1BX0NNQVI0IHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBETUFfQ01BUjRfTUFfUG9zICAgICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBETUFfQ01BUjRfTUFfTXNrICAgICAgICAgICAgICAgICAgICAoMHhGRkZGRkZGRlUgPDwgRE1BX0NNQVI0X01BX1BvcykgIC8qITwgMHhGRkZGRkZGRiAqLw0KI2RlZmluZSBETUFfQ01BUjRfTUEgICAgICAgICAgICAgICAgICAgICAgICBETUFfQ01BUjRfTUFfTXNrICAgICAgICAgICAgICAgICAgIC8qITwgTWVtb3J5IEFkZHJlc3MgKi8NCg0KLyoqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIERNQV9DTUFSNSByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgRE1BX0NNQVI1X01BX1BvcyAgICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRE1BX0NNQVI1X01BX01zayAgICAgICAgICAgICAgICAgICAgKDB4RkZGRkZGRkZVIDw8IERNQV9DTUFSNV9NQV9Qb3MpICAvKiE8IDB4RkZGRkZGRkYgKi8NCiNkZWZpbmUgRE1BX0NNQVI1X01BICAgICAgICAgICAgICAgICAgICAgICAgRE1BX0NNQVI1X01BX01zayAgICAgICAgICAgICAgICAgICAvKiE8IE1lbW9yeSBBZGRyZXNzICovDQoNCi8qKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBETUFfQ01BUjYgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIERNQV9DTUFSNl9NQV9Qb3MgICAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIERNQV9DTUFSNl9NQV9Nc2sgICAgICAgICAgICAgICAgICAgICgweEZGRkZGRkZGVSA8PCBETUFfQ01BUjZfTUFfUG9zKSAgLyohPCAweEZGRkZGRkZGICovDQojZGVmaW5lIERNQV9DTUFSNl9NQSAgICAgICAgICAgICAgICAgICAgICAgIERNQV9DTUFSNl9NQV9Nc2sgICAgICAgICAgICAgICAgICAgLyohPCBNZW1vcnkgQWRkcmVzcyAqLw0KDQovKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgRE1BX0NNQVI3IHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBETUFfQ01BUjdfTUFfUG9zICAgICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBETUFfQ01BUjdfTUFfTXNrICAgICAgICAgICAgICAgICAgICAoMHhGRkZGRkZGRlUgPDwgRE1BX0NNQVI3X01BX1BvcykgIC8qITwgMHhGRkZGRkZGRiAqLw0KI2RlZmluZSBETUFfQ01BUjdfTUEgICAgICAgICAgICAgICAgICAgICAgICBETUFfQ01BUjdfTUFfTXNrICAgICAgICAgICAgICAgICAgIC8qITwgTWVtb3J5IEFkZHJlc3MgKi8NCg0KLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8NCi8qICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovDQovKiAgICAgICAgICAgICAgICAgIEV4dGVybmFsIEludGVycnVwdC9FdmVudCBDb250cm9sbGVyIChFWFRJKSAgICAgICAgICAgICAgICAqLw0KLyogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8NCi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovDQoNCi8qKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgRVhUSV9JTVIgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIEVYVElfSU1SX01SMF9Qb3MgICAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEVYVElfSU1SX01SMF9Nc2sgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IEVYVElfSU1SX01SMF9Qb3MpICAgICAgICAgLyohPCAweDAwMDAwMDAxICovDQojZGVmaW5lIEVYVElfSU1SX01SMCAgICAgICAgICAgICAgICAgICAgICAgIEVYVElfSU1SX01SMF9Nc2sgICAgICAgICAgICAgICAgICAgLyohPCBJbnRlcnJ1cHQgTWFzayBvbiBsaW5lIDAgKi8NCiNkZWZpbmUgRVhUSV9JTVJfTVIxX1BvcyAgICAgICAgICAgICAgICAgICAgKDFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRVhUSV9JTVJfTVIxX01zayAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgRVhUSV9JTVJfTVIxX1BvcykgICAgICAgICAvKiE8IDB4MDAwMDAwMDIgKi8NCiNkZWZpbmUgRVhUSV9JTVJfTVIxICAgICAgICAgICAgICAgICAgICAgICAgRVhUSV9JTVJfTVIxX01zayAgICAgICAgICAgICAgICAgICAvKiE8IEludGVycnVwdCBNYXNrIG9uIGxpbmUgMSAqLw0KI2RlZmluZSBFWFRJX0lNUl9NUjJfUG9zICAgICAgICAgICAgICAgICAgICAoMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBFWFRJX0lNUl9NUjJfTXNrICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBFWFRJX0lNUl9NUjJfUG9zKSAgICAgICAgIC8qITwgMHgwMDAwMDAwNCAqLw0KI2RlZmluZSBFWFRJX0lNUl9NUjIgICAgICAgICAgICAgICAgICAgICAgICBFWFRJX0lNUl9NUjJfTXNrICAgICAgICAgICAgICAgICAgIC8qITwgSW50ZXJydXB0IE1hc2sgb24gbGluZSAyICovDQojZGVmaW5lIEVYVElfSU1SX01SM19Qb3MgICAgICAgICAgICAgICAgICAgICgzVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEVYVElfSU1SX01SM19Nc2sgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IEVYVElfSU1SX01SM19Qb3MpICAgICAgICAgLyohPCAweDAwMDAwMDA4ICovDQojZGVmaW5lIEVYVElfSU1SX01SMyAgICAgICAgICAgICAgICAgICAgICAgIEVYVElfSU1SX01SM19Nc2sgICAgICAgICAgICAgICAgICAgLyohPCBJbnRlcnJ1cHQgTWFzayBvbiBsaW5lIDMgKi8NCiNkZWZpbmUgRVhUSV9JTVJfTVI0X1BvcyAgICAgICAgICAgICAgICAgICAgKDRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRVhUSV9JTVJfTVI0X01zayAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgRVhUSV9JTVJfTVI0X1BvcykgICAgICAgICAvKiE8IDB4MDAwMDAwMTAgKi8NCiNkZWZpbmUgRVhUSV9JTVJfTVI0ICAgICAgICAgICAgICAgICAgICAgICAgRVhUSV9JTVJfTVI0X01zayAgICAgICAgICAgICAgICAgICAvKiE8IEludGVycnVwdCBNYXNrIG9uIGxpbmUgNCAqLw0KI2RlZmluZSBFWFRJX0lNUl9NUjVfUG9zICAgICAgICAgICAgICAgICAgICAoNVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBFWFRJX0lNUl9NUjVfTXNrICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBFWFRJX0lNUl9NUjVfUG9zKSAgICAgICAgIC8qITwgMHgwMDAwMDAyMCAqLw0KI2RlZmluZSBFWFRJX0lNUl9NUjUgICAgICAgICAgICAgICAgICAgICAgICBFWFRJX0lNUl9NUjVfTXNrICAgICAgICAgICAgICAgICAgIC8qITwgSW50ZXJydXB0IE1hc2sgb24gbGluZSA1ICovDQojZGVmaW5lIEVYVElfSU1SX01SNl9Qb3MgICAgICAgICAgICAgICAgICAgICg2VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEVYVElfSU1SX01SNl9Nc2sgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IEVYVElfSU1SX01SNl9Qb3MpICAgICAgICAgLyohPCAweDAwMDAwMDQwICovDQojZGVmaW5lIEVYVElfSU1SX01SNiAgICAgICAgICAgICAgICAgICAgICAgIEVYVElfSU1SX01SNl9Nc2sgICAgICAgICAgICAgICAgICAgLyohPCBJbnRlcnJ1cHQgTWFzayBvbiBsaW5lIDYgKi8NCiNkZWZpbmUgRVhUSV9JTVJfTVI3X1BvcyAgICAgICAgICAgICAgICAgICAgKDdVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRVhUSV9JTVJfTVI3X01zayAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgRVhUSV9JTVJfTVI3X1BvcykgICAgICAgICAvKiE8IDB4MDAwMDAwODAgKi8NCiNkZWZpbmUgRVhUSV9JTVJfTVI3ICAgICAgICAgICAgICAgICAgICAgICAgRVhUSV9JTVJfTVI3X01zayAgICAgICAgICAgICAgICAgICAvKiE8IEludGVycnVwdCBNYXNrIG9uIGxpbmUgNyAqLw0KI2RlZmluZSBFWFRJX0lNUl9NUjhfUG9zICAgICAgICAgICAgICAgICAgICAoOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBFWFRJX0lNUl9NUjhfTXNrICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBFWFRJX0lNUl9NUjhfUG9zKSAgICAgICAgIC8qITwgMHgwMDAwMDEwMCAqLw0KI2RlZmluZSBFWFRJX0lNUl9NUjggICAgICAgICAgICAgICAgICAgICAgICBFWFRJX0lNUl9NUjhfTXNrICAgICAgICAgICAgICAgICAgIC8qITwgSW50ZXJydXB0IE1hc2sgb24gbGluZSA4ICovDQojZGVmaW5lIEVYVElfSU1SX01SOV9Qb3MgICAgICAgICAgICAgICAgICAgICg5VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEVYVElfSU1SX01SOV9Nc2sgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IEVYVElfSU1SX01SOV9Qb3MpICAgICAgICAgLyohPCAweDAwMDAwMjAwICovDQojZGVmaW5lIEVYVElfSU1SX01SOSAgICAgICAgICAgICAgICAgICAgICAgIEVYVElfSU1SX01SOV9Nc2sgICAgICAgICAgICAgICAgICAgLyohPCBJbnRlcnJ1cHQgTWFzayBvbiBsaW5lIDkgKi8NCiNkZWZpbmUgRVhUSV9JTVJfTVIxMF9Qb3MgICAgICAgICAgICAgICAgICAgKDEwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRVhUSV9JTVJfTVIxMF9Nc2sgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgRVhUSV9JTVJfTVIxMF9Qb3MpICAgICAgICAvKiE8IDB4MDAwMDA0MDAgKi8NCiNkZWZpbmUgRVhUSV9JTVJfTVIxMCAgICAgICAgICAgICAgICAgICAgICAgRVhUSV9JTVJfTVIxMF9Nc2sgICAgICAgICAgICAgICAgICAvKiE8IEludGVycnVwdCBNYXNrIG9uIGxpbmUgMTAgKi8NCiNkZWZpbmUgRVhUSV9JTVJfTVIxMV9Qb3MgICAgICAgICAgICAgICAgICAgKDExVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRVhUSV9JTVJfTVIxMV9Nc2sgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgRVhUSV9JTVJfTVIxMV9Qb3MpICAgICAgICAvKiE8IDB4MDAwMDA4MDAgKi8NCiNkZWZpbmUgRVhUSV9JTVJfTVIxMSAgICAgICAgICAgICAgICAgICAgICAgRVhUSV9JTVJfTVIxMV9Nc2sgICAgICAgICAgICAgICAgICAvKiE8IEludGVycnVwdCBNYXNrIG9uIGxpbmUgMTEgKi8NCiNkZWZpbmUgRVhUSV9JTVJfTVIxMl9Qb3MgICAgICAgICAgICAgICAgICAgKDEyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRVhUSV9JTVJfTVIxMl9Nc2sgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgRVhUSV9JTVJfTVIxMl9Qb3MpICAgICAgICAvKiE8IDB4MDAwMDEwMDAgKi8NCiNkZWZpbmUgRVhUSV9JTVJfTVIxMiAgICAgICAgICAgICAgICAgICAgICAgRVhUSV9JTVJfTVIxMl9Nc2sgICAgICAgICAgICAgICAgICAvKiE8IEludGVycnVwdCBNYXNrIG9uIGxpbmUgMTIgKi8NCiNkZWZpbmUgRVhUSV9JTVJfTVIxM19Qb3MgICAgICAgICAgICAgICAgICAgKDEzVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRVhUSV9JTVJfTVIxM19Nc2sgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgRVhUSV9JTVJfTVIxM19Qb3MpICAgICAgICAvKiE8IDB4MDAwMDIwMDAgKi8NCiNkZWZpbmUgRVhUSV9JTVJfTVIxMyAgICAgICAgICAgICAgICAgICAgICAgRVhUSV9JTVJfTVIxM19Nc2sgICAgICAgICAgICAgICAgICAvKiE8IEludGVycnVwdCBNYXNrIG9uIGxpbmUgMTMgKi8NCiNkZWZpbmUgRVhUSV9JTVJfTVIxNF9Qb3MgICAgICAgICAgICAgICAgICAgKDE0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRVhUSV9JTVJfTVIxNF9Nc2sgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgRVhUSV9JTVJfTVIxNF9Qb3MpICAgICAgICAvKiE8IDB4MDAwMDQwMDAgKi8NCiNkZWZpbmUgRVhUSV9JTVJfTVIxNCAgICAgICAgICAgICAgICAgICAgICAgRVhUSV9JTVJfTVIxNF9Nc2sgICAgICAgICAgICAgICAgICAvKiE8IEludGVycnVwdCBNYXNrIG9uIGxpbmUgMTQgKi8NCiNkZWZpbmUgRVhUSV9JTVJfTVIxNV9Qb3MgICAgICAgICAgICAgICAgICAgKDE1VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRVhUSV9JTVJfTVIxNV9Nc2sgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgRVhUSV9JTVJfTVIxNV9Qb3MpICAgICAgICAvKiE8IDB4MDAwMDgwMDAgKi8NCiNkZWZpbmUgRVhUSV9JTVJfTVIxNSAgICAgICAgICAgICAgICAgICAgICAgRVhUSV9JTVJfTVIxNV9Nc2sgICAgICAgICAgICAgICAgICAvKiE8IEludGVycnVwdCBNYXNrIG9uIGxpbmUgMTUgKi8NCiNkZWZpbmUgRVhUSV9JTVJfTVIxNl9Qb3MgICAgICAgICAgICAgICAgICAgKDE2VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRVhUSV9JTVJfTVIxNl9Nc2sgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgRVhUSV9JTVJfTVIxNl9Qb3MpICAgICAgICAvKiE8IDB4MDAwMTAwMDAgKi8NCiNkZWZpbmUgRVhUSV9JTVJfTVIxNiAgICAgICAgICAgICAgICAgICAgICAgRVhUSV9JTVJfTVIxNl9Nc2sgICAgICAgICAgICAgICAgICAvKiE8IEludGVycnVwdCBNYXNrIG9uIGxpbmUgMTYgKi8NCiNkZWZpbmUgRVhUSV9JTVJfTVIxN19Qb3MgICAgICAgICAgICAgICAgICAgKDE3VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRVhUSV9JTVJfTVIxN19Nc2sgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgRVhUSV9JTVJfTVIxN19Qb3MpICAgICAgICAvKiE8IDB4MDAwMjAwMDAgKi8NCiNkZWZpbmUgRVhUSV9JTVJfTVIxNyAgICAgICAgICAgICAgICAgICAgICAgRVhUSV9JTVJfTVIxN19Nc2sgICAgICAgICAgICAgICAgICAvKiE8IEludGVycnVwdCBNYXNrIG9uIGxpbmUgMTcgKi8NCiNkZWZpbmUgRVhUSV9JTVJfTVIxOF9Qb3MgICAgICAgICAgICAgICAgICAgKDE4VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRVhUSV9JTVJfTVIxOF9Nc2sgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgRVhUSV9JTVJfTVIxOF9Qb3MpICAgICAgICAvKiE8IDB4MDAwNDAwMDAgKi8NCiNkZWZpbmUgRVhUSV9JTVJfTVIxOCAgICAgICAgICAgICAgICAgICAgICAgRVhUSV9JTVJfTVIxOF9Nc2sgICAgICAgICAgICAgICAgICAvKiE8IEludGVycnVwdCBNYXNrIG9uIGxpbmUgMTggKi8NCiNkZWZpbmUgRVhUSV9JTVJfTVIxOV9Qb3MgICAgICAgICAgICAgICAgICAgKDE5VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRVhUSV9JTVJfTVIxOV9Nc2sgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgRVhUSV9JTVJfTVIxOV9Qb3MpICAgICAgICAvKiE8IDB4MDAwODAwMDAgKi8NCiNkZWZpbmUgRVhUSV9JTVJfTVIxOSAgICAgICAgICAgICAgICAgICAgICAgRVhUSV9JTVJfTVIxOV9Nc2sgICAgICAgICAgICAgICAgICAvKiE8IEludGVycnVwdCBNYXNrIG9uIGxpbmUgMTkgKi8NCiNkZWZpbmUgRVhUSV9JTVJfTVIyMF9Qb3MgICAgICAgICAgICAgICAgICAgKDIwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRVhUSV9JTVJfTVIyMF9Nc2sgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgRVhUSV9JTVJfTVIyMF9Qb3MpICAgICAgICAvKiE8IDB4MDAxMDAwMDAgKi8NCiNkZWZpbmUgRVhUSV9JTVJfTVIyMCAgICAgICAgICAgICAgICAgICAgICAgRVhUSV9JTVJfTVIyMF9Nc2sgICAgICAgICAgICAgICAgICAvKiE8IEludGVycnVwdCBNYXNrIG9uIGxpbmUgMjAgKi8NCiNkZWZpbmUgRVhUSV9JTVJfTVIyMV9Qb3MgICAgICAgICAgICAgICAgICAgKDIxVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRVhUSV9JTVJfTVIyMV9Nc2sgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgRVhUSV9JTVJfTVIyMV9Qb3MpICAgICAgICAvKiE8IDB4MDAyMDAwMDAgKi8NCiNkZWZpbmUgRVhUSV9JTVJfTVIyMSAgICAgICAgICAgICAgICAgICAgICAgRVhUSV9JTVJfTVIyMV9Nc2sgICAgICAgICAgICAgICAgICAvKiE8IEludGVycnVwdCBNYXNrIG9uIGxpbmUgMjEgKi8NCiNkZWZpbmUgRVhUSV9JTVJfTVIyMl9Qb3MgICAgICAgICAgICAgICAgICAgKDIyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRVhUSV9JTVJfTVIyMl9Nc2sgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgRVhUSV9JTVJfTVIyMl9Qb3MpICAgICAgICAvKiE8IDB4MDA0MDAwMDAgKi8NCiNkZWZpbmUgRVhUSV9JTVJfTVIyMiAgICAgICAgICAgICAgICAgICAgICAgRVhUSV9JTVJfTVIyMl9Nc2sgICAgICAgICAgICAgICAgICAvKiE8IEludGVycnVwdCBNYXNrIG9uIGxpbmUgMjIgKi8NCiNkZWZpbmUgRVhUSV9JTVJfTVIyM19Qb3MgICAgICAgICAgICAgICAgICAgKDIzVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRVhUSV9JTVJfTVIyM19Nc2sgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgRVhUSV9JTVJfTVIyM19Qb3MpICAgICAgICAvKiE8IDB4MDA4MDAwMDAgKi8NCiNkZWZpbmUgRVhUSV9JTVJfTVIyMyAgICAgICAgICAgICAgICAgICAgICAgRVhUSV9JTVJfTVIyM19Nc2sgICAgICAgICAgICAgICAgICAvKiE8IEludGVycnVwdCBNYXNrIG9uIGxpbmUgMjMgKi8NCg0KLyogUmVmZXJlbmNlcyBEZWZpbmVzICovDQojZGVmaW5lICBFWFRJX0lNUl9JTTAgRVhUSV9JTVJfTVIwDQojZGVmaW5lICBFWFRJX0lNUl9JTTEgRVhUSV9JTVJfTVIxDQojZGVmaW5lICBFWFRJX0lNUl9JTTIgRVhUSV9JTVJfTVIyDQojZGVmaW5lICBFWFRJX0lNUl9JTTMgRVhUSV9JTVJfTVIzDQojZGVmaW5lICBFWFRJX0lNUl9JTTQgRVhUSV9JTVJfTVI0DQojZGVmaW5lICBFWFRJX0lNUl9JTTUgRVhUSV9JTVJfTVI1DQojZGVmaW5lICBFWFRJX0lNUl9JTTYgRVhUSV9JTVJfTVI2DQojZGVmaW5lICBFWFRJX0lNUl9JTTcgRVhUSV9JTVJfTVI3DQojZGVmaW5lICBFWFRJX0lNUl9JTTggRVhUSV9JTVJfTVI4DQojZGVmaW5lICBFWFRJX0lNUl9JTTkgRVhUSV9JTVJfTVI5DQojZGVmaW5lICBFWFRJX0lNUl9JTTEwIEVYVElfSU1SX01SMTANCiNkZWZpbmUgIEVYVElfSU1SX0lNMTEgRVhUSV9JTVJfTVIxMQ0KI2RlZmluZSAgRVhUSV9JTVJfSU0xMiBFWFRJX0lNUl9NUjEyDQojZGVmaW5lICBFWFRJX0lNUl9JTTEzIEVYVElfSU1SX01SMTMNCiNkZWZpbmUgIEVYVElfSU1SX0lNMTQgRVhUSV9JTVJfTVIxNA0KI2RlZmluZSAgRVhUSV9JTVJfSU0xNSBFWFRJX0lNUl9NUjE1DQojZGVmaW5lICBFWFRJX0lNUl9JTTE2IEVYVElfSU1SX01SMTYNCiNkZWZpbmUgIEVYVElfSU1SX0lNMTcgRVhUSV9JTVJfTVIxNw0KI2RlZmluZSAgRVhUSV9JTVJfSU0xOCBFWFRJX0lNUl9NUjE4DQojZGVmaW5lICBFWFRJX0lNUl9JTTE5IEVYVElfSU1SX01SMTkNCiNkZWZpbmUgIEVYVElfSU1SX0lNMjAgRVhUSV9JTVJfTVIyMA0KI2RlZmluZSAgRVhUSV9JTVJfSU0yMSBFWFRJX0lNUl9NUjIxDQojZGVmaW5lICBFWFRJX0lNUl9JTTIyIEVYVElfSU1SX01SMjINCi8qIENhdGVnb3J5IDMsIDQgJiA1ICovDQojZGVmaW5lICBFWFRJX0lNUl9JTTIzIEVYVElfSU1SX01SMjMNCiNkZWZpbmUgRVhUSV9JTVJfSU1fUG9zICAgICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRVhUSV9JTVJfSU1fTXNrICAgICAgICAgICAgICAgICAgICAgKDB4RkZGRkZGVSA8PCBFWFRJX0lNUl9JTV9Qb3MpICAgICAvKiE8IDB4MDBGRkZGRkYgKi8NCiNkZWZpbmUgRVhUSV9JTVJfSU0gICAgICAgICAgICAgICAgICAgICAgICAgRVhUSV9JTVJfSU1fTXNrICAgICAgICAgICAgICAgICAgICAvKiE8IEludGVycnVwdCBNYXNrIEFsbCAqLw0KDQovKioqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIEVYVElfRU1SIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBFWFRJX0VNUl9NUjBfUG9zICAgICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBFWFRJX0VNUl9NUjBfTXNrICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBFWFRJX0VNUl9NUjBfUG9zKSAgICAgICAgIC8qITwgMHgwMDAwMDAwMSAqLw0KI2RlZmluZSBFWFRJX0VNUl9NUjAgICAgICAgICAgICAgICAgICAgICAgICBFWFRJX0VNUl9NUjBfTXNrICAgICAgICAgICAgICAgICAgIC8qITwgRXZlbnQgTWFzayBvbiBsaW5lIDAgKi8NCiNkZWZpbmUgRVhUSV9FTVJfTVIxX1BvcyAgICAgICAgICAgICAgICAgICAgKDFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRVhUSV9FTVJfTVIxX01zayAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgRVhUSV9FTVJfTVIxX1BvcykgICAgICAgICAvKiE8IDB4MDAwMDAwMDIgKi8NCiNkZWZpbmUgRVhUSV9FTVJfTVIxICAgICAgICAgICAgICAgICAgICAgICAgRVhUSV9FTVJfTVIxX01zayAgICAgICAgICAgICAgICAgICAvKiE8IEV2ZW50IE1hc2sgb24gbGluZSAxICovDQojZGVmaW5lIEVYVElfRU1SX01SMl9Qb3MgICAgICAgICAgICAgICAgICAgICgyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEVYVElfRU1SX01SMl9Nc2sgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IEVYVElfRU1SX01SMl9Qb3MpICAgICAgICAgLyohPCAweDAwMDAwMDA0ICovDQojZGVmaW5lIEVYVElfRU1SX01SMiAgICAgICAgICAgICAgICAgICAgICAgIEVYVElfRU1SX01SMl9Nc2sgICAgICAgICAgICAgICAgICAgLyohPCBFdmVudCBNYXNrIG9uIGxpbmUgMiAqLw0KI2RlZmluZSBFWFRJX0VNUl9NUjNfUG9zICAgICAgICAgICAgICAgICAgICAoM1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBFWFRJX0VNUl9NUjNfTXNrICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBFWFRJX0VNUl9NUjNfUG9zKSAgICAgICAgIC8qITwgMHgwMDAwMDAwOCAqLw0KI2RlZmluZSBFWFRJX0VNUl9NUjMgICAgICAgICAgICAgICAgICAgICAgICBFWFRJX0VNUl9NUjNfTXNrICAgICAgICAgICAgICAgICAgIC8qITwgRXZlbnQgTWFzayBvbiBsaW5lIDMgKi8NCiNkZWZpbmUgRVhUSV9FTVJfTVI0X1BvcyAgICAgICAgICAgICAgICAgICAgKDRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRVhUSV9FTVJfTVI0X01zayAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgRVhUSV9FTVJfTVI0X1BvcykgICAgICAgICAvKiE8IDB4MDAwMDAwMTAgKi8NCiNkZWZpbmUgRVhUSV9FTVJfTVI0ICAgICAgICAgICAgICAgICAgICAgICAgRVhUSV9FTVJfTVI0X01zayAgICAgICAgICAgICAgICAgICAvKiE8IEV2ZW50IE1hc2sgb24gbGluZSA0ICovDQojZGVmaW5lIEVYVElfRU1SX01SNV9Qb3MgICAgICAgICAgICAgICAgICAgICg1VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEVYVElfRU1SX01SNV9Nc2sgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IEVYVElfRU1SX01SNV9Qb3MpICAgICAgICAgLyohPCAweDAwMDAwMDIwICovDQojZGVmaW5lIEVYVElfRU1SX01SNSAgICAgICAgICAgICAgICAgICAgICAgIEVYVElfRU1SX01SNV9Nc2sgICAgICAgICAgICAgICAgICAgLyohPCBFdmVudCBNYXNrIG9uIGxpbmUgNSAqLw0KI2RlZmluZSBFWFRJX0VNUl9NUjZfUG9zICAgICAgICAgICAgICAgICAgICAoNlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBFWFRJX0VNUl9NUjZfTXNrICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBFWFRJX0VNUl9NUjZfUG9zKSAgICAgICAgIC8qITwgMHgwMDAwMDA0MCAqLw0KI2RlZmluZSBFWFRJX0VNUl9NUjYgICAgICAgICAgICAgICAgICAgICAgICBFWFRJX0VNUl9NUjZfTXNrICAgICAgICAgICAgICAgICAgIC8qITwgRXZlbnQgTWFzayBvbiBsaW5lIDYgKi8NCiNkZWZpbmUgRVhUSV9FTVJfTVI3X1BvcyAgICAgICAgICAgICAgICAgICAgKDdVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRVhUSV9FTVJfTVI3X01zayAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgRVhUSV9FTVJfTVI3X1BvcykgICAgICAgICAvKiE8IDB4MDAwMDAwODAgKi8NCiNkZWZpbmUgRVhUSV9FTVJfTVI3ICAgICAgICAgICAgICAgICAgICAgICAgRVhUSV9FTVJfTVI3X01zayAgICAgICAgICAgICAgICAgICAvKiE8IEV2ZW50IE1hc2sgb24gbGluZSA3ICovDQojZGVmaW5lIEVYVElfRU1SX01SOF9Qb3MgICAgICAgICAgICAgICAgICAgICg4VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEVYVElfRU1SX01SOF9Nc2sgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IEVYVElfRU1SX01SOF9Qb3MpICAgICAgICAgLyohPCAweDAwMDAwMTAwICovDQojZGVmaW5lIEVYVElfRU1SX01SOCAgICAgICAgICAgICAgICAgICAgICAgIEVYVElfRU1SX01SOF9Nc2sgICAgICAgICAgICAgICAgICAgLyohPCBFdmVudCBNYXNrIG9uIGxpbmUgOCAqLw0KI2RlZmluZSBFWFRJX0VNUl9NUjlfUG9zICAgICAgICAgICAgICAgICAgICAoOVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBFWFRJX0VNUl9NUjlfTXNrICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBFWFRJX0VNUl9NUjlfUG9zKSAgICAgICAgIC8qITwgMHgwMDAwMDIwMCAqLw0KI2RlZmluZSBFWFRJX0VNUl9NUjkgICAgICAgICAgICAgICAgICAgICAgICBFWFRJX0VNUl9NUjlfTXNrICAgICAgICAgICAgICAgICAgIC8qITwgRXZlbnQgTWFzayBvbiBsaW5lIDkgKi8NCiNkZWZpbmUgRVhUSV9FTVJfTVIxMF9Qb3MgICAgICAgICAgICAgICAgICAgKDEwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRVhUSV9FTVJfTVIxMF9Nc2sgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgRVhUSV9FTVJfTVIxMF9Qb3MpICAgICAgICAvKiE8IDB4MDAwMDA0MDAgKi8NCiNkZWZpbmUgRVhUSV9FTVJfTVIxMCAgICAgICAgICAgICAgICAgICAgICAgRVhUSV9FTVJfTVIxMF9Nc2sgICAgICAgICAgICAgICAgICAvKiE8IEV2ZW50IE1hc2sgb24gbGluZSAxMCAqLw0KI2RlZmluZSBFWFRJX0VNUl9NUjExX1BvcyAgICAgICAgICAgICAgICAgICAoMTFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBFWFRJX0VNUl9NUjExX01zayAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBFWFRJX0VNUl9NUjExX1BvcykgICAgICAgIC8qITwgMHgwMDAwMDgwMCAqLw0KI2RlZmluZSBFWFRJX0VNUl9NUjExICAgICAgICAgICAgICAgICAgICAgICBFWFRJX0VNUl9NUjExX01zayAgICAgICAgICAgICAgICAgIC8qITwgRXZlbnQgTWFzayBvbiBsaW5lIDExICovDQojZGVmaW5lIEVYVElfRU1SX01SMTJfUG9zICAgICAgICAgICAgICAgICAgICgxMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEVYVElfRU1SX01SMTJfTXNrICAgICAgICAgICAgICAgICAgICgweDFVIDw8IEVYVElfRU1SX01SMTJfUG9zKSAgICAgICAgLyohPCAweDAwMDAxMDAwICovDQojZGVmaW5lIEVYVElfRU1SX01SMTIgICAgICAgICAgICAgICAgICAgICAgIEVYVElfRU1SX01SMTJfTXNrICAgICAgICAgICAgICAgICAgLyohPCBFdmVudCBNYXNrIG9uIGxpbmUgMTIgKi8NCiNkZWZpbmUgRVhUSV9FTVJfTVIxM19Qb3MgICAgICAgICAgICAgICAgICAgKDEzVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRVhUSV9FTVJfTVIxM19Nc2sgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgRVhUSV9FTVJfTVIxM19Qb3MpICAgICAgICAvKiE8IDB4MDAwMDIwMDAgKi8NCiNkZWZpbmUgRVhUSV9FTVJfTVIxMyAgICAgICAgICAgICAgICAgICAgICAgRVhUSV9FTVJfTVIxM19Nc2sgICAgICAgICAgICAgICAgICAvKiE8IEV2ZW50IE1hc2sgb24gbGluZSAxMyAqLw0KI2RlZmluZSBFWFRJX0VNUl9NUjE0X1BvcyAgICAgICAgICAgICAgICAgICAoMTRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBFWFRJX0VNUl9NUjE0X01zayAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBFWFRJX0VNUl9NUjE0X1BvcykgICAgICAgIC8qITwgMHgwMDAwNDAwMCAqLw0KI2RlZmluZSBFWFRJX0VNUl9NUjE0ICAgICAgICAgICAgICAgICAgICAgICBFWFRJX0VNUl9NUjE0X01zayAgICAgICAgICAgICAgICAgIC8qITwgRXZlbnQgTWFzayBvbiBsaW5lIDE0ICovDQojZGVmaW5lIEVYVElfRU1SX01SMTVfUG9zICAgICAgICAgICAgICAgICAgICgxNVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEVYVElfRU1SX01SMTVfTXNrICAgICAgICAgICAgICAgICAgICgweDFVIDw8IEVYVElfRU1SX01SMTVfUG9zKSAgICAgICAgLyohPCAweDAwMDA4MDAwICovDQojZGVmaW5lIEVYVElfRU1SX01SMTUgICAgICAgICAgICAgICAgICAgICAgIEVYVElfRU1SX01SMTVfTXNrICAgICAgICAgICAgICAgICAgLyohPCBFdmVudCBNYXNrIG9uIGxpbmUgMTUgKi8NCiNkZWZpbmUgRVhUSV9FTVJfTVIxNl9Qb3MgICAgICAgICAgICAgICAgICAgKDE2VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRVhUSV9FTVJfTVIxNl9Nc2sgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgRVhUSV9FTVJfTVIxNl9Qb3MpICAgICAgICAvKiE8IDB4MDAwMTAwMDAgKi8NCiNkZWZpbmUgRVhUSV9FTVJfTVIxNiAgICAgICAgICAgICAgICAgICAgICAgRVhUSV9FTVJfTVIxNl9Nc2sgICAgICAgICAgICAgICAgICAvKiE8IEV2ZW50IE1hc2sgb24gbGluZSAxNiAqLw0KI2RlZmluZSBFWFRJX0VNUl9NUjE3X1BvcyAgICAgICAgICAgICAgICAgICAoMTdVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBFWFRJX0VNUl9NUjE3X01zayAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBFWFRJX0VNUl9NUjE3X1BvcykgICAgICAgIC8qITwgMHgwMDAyMDAwMCAqLw0KI2RlZmluZSBFWFRJX0VNUl9NUjE3ICAgICAgICAgICAgICAgICAgICAgICBFWFRJX0VNUl9NUjE3X01zayAgICAgICAgICAgICAgICAgIC8qITwgRXZlbnQgTWFzayBvbiBsaW5lIDE3ICovDQojZGVmaW5lIEVYVElfRU1SX01SMThfUG9zICAgICAgICAgICAgICAgICAgICgxOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEVYVElfRU1SX01SMThfTXNrICAgICAgICAgICAgICAgICAgICgweDFVIDw8IEVYVElfRU1SX01SMThfUG9zKSAgICAgICAgLyohPCAweDAwMDQwMDAwICovDQojZGVmaW5lIEVYVElfRU1SX01SMTggICAgICAgICAgICAgICAgICAgICAgIEVYVElfRU1SX01SMThfTXNrICAgICAgICAgICAgICAgICAgLyohPCBFdmVudCBNYXNrIG9uIGxpbmUgMTggKi8NCiNkZWZpbmUgRVhUSV9FTVJfTVIxOV9Qb3MgICAgICAgICAgICAgICAgICAgKDE5VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRVhUSV9FTVJfTVIxOV9Nc2sgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgRVhUSV9FTVJfTVIxOV9Qb3MpICAgICAgICAvKiE8IDB4MDAwODAwMDAgKi8NCiNkZWZpbmUgRVhUSV9FTVJfTVIxOSAgICAgICAgICAgICAgICAgICAgICAgRVhUSV9FTVJfTVIxOV9Nc2sgICAgICAgICAgICAgICAgICAvKiE8IEV2ZW50IE1hc2sgb24gbGluZSAxOSAqLw0KI2RlZmluZSBFWFRJX0VNUl9NUjIwX1BvcyAgICAgICAgICAgICAgICAgICAoMjBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBFWFRJX0VNUl9NUjIwX01zayAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBFWFRJX0VNUl9NUjIwX1BvcykgICAgICAgIC8qITwgMHgwMDEwMDAwMCAqLw0KI2RlZmluZSBFWFRJX0VNUl9NUjIwICAgICAgICAgICAgICAgICAgICAgICBFWFRJX0VNUl9NUjIwX01zayAgICAgICAgICAgICAgICAgIC8qITwgRXZlbnQgTWFzayBvbiBsaW5lIDIwICovDQojZGVmaW5lIEVYVElfRU1SX01SMjFfUG9zICAgICAgICAgICAgICAgICAgICgyMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEVYVElfRU1SX01SMjFfTXNrICAgICAgICAgICAgICAgICAgICgweDFVIDw8IEVYVElfRU1SX01SMjFfUG9zKSAgICAgICAgLyohPCAweDAwMjAwMDAwICovDQojZGVmaW5lIEVYVElfRU1SX01SMjEgICAgICAgICAgICAgICAgICAgICAgIEVYVElfRU1SX01SMjFfTXNrICAgICAgICAgICAgICAgICAgLyohPCBFdmVudCBNYXNrIG9uIGxpbmUgMjEgKi8NCiNkZWZpbmUgRVhUSV9FTVJfTVIyMl9Qb3MgICAgICAgICAgICAgICAgICAgKDIyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRVhUSV9FTVJfTVIyMl9Nc2sgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgRVhUSV9FTVJfTVIyMl9Qb3MpICAgICAgICAvKiE8IDB4MDA0MDAwMDAgKi8NCiNkZWZpbmUgRVhUSV9FTVJfTVIyMiAgICAgICAgICAgICAgICAgICAgICAgRVhUSV9FTVJfTVIyMl9Nc2sgICAgICAgICAgICAgICAgICAvKiE8IEV2ZW50IE1hc2sgb24gbGluZSAyMiAqLw0KI2RlZmluZSBFWFRJX0VNUl9NUjIzX1BvcyAgICAgICAgICAgICAgICAgICAoMjNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBFWFRJX0VNUl9NUjIzX01zayAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBFWFRJX0VNUl9NUjIzX1BvcykgICAgICAgIC8qITwgMHgwMDgwMDAwMCAqLw0KI2RlZmluZSBFWFRJX0VNUl9NUjIzICAgICAgICAgICAgICAgICAgICAgICBFWFRJX0VNUl9NUjIzX01zayAgICAgICAgICAgICAgICAgIC8qITwgRXZlbnQgTWFzayBvbiBsaW5lIDIzICovDQoNCi8qIFJlZmVyZW5jZXMgRGVmaW5lcyAqLw0KI2RlZmluZSAgRVhUSV9FTVJfRU0wIEVYVElfRU1SX01SMA0KI2RlZmluZSAgRVhUSV9FTVJfRU0xIEVYVElfRU1SX01SMQ0KI2RlZmluZSAgRVhUSV9FTVJfRU0yIEVYVElfRU1SX01SMg0KI2RlZmluZSAgRVhUSV9FTVJfRU0zIEVYVElfRU1SX01SMw0KI2RlZmluZSAgRVhUSV9FTVJfRU00IEVYVElfRU1SX01SNA0KI2RlZmluZSAgRVhUSV9FTVJfRU01IEVYVElfRU1SX01SNQ0KI2RlZmluZSAgRVhUSV9FTVJfRU02IEVYVElfRU1SX01SNg0KI2RlZmluZSAgRVhUSV9FTVJfRU03IEVYVElfRU1SX01SNw0KI2RlZmluZSAgRVhUSV9FTVJfRU04IEVYVElfRU1SX01SOA0KI2RlZmluZSAgRVhUSV9FTVJfRU05IEVYVElfRU1SX01SOQ0KI2RlZmluZSAgRVhUSV9FTVJfRU0xMCBFWFRJX0VNUl9NUjEwDQojZGVmaW5lICBFWFRJX0VNUl9FTTExIEVYVElfRU1SX01SMTENCiNkZWZpbmUgIEVYVElfRU1SX0VNMTIgRVhUSV9FTVJfTVIxMg0KI2RlZmluZSAgRVhUSV9FTVJfRU0xMyBFWFRJX0VNUl9NUjEzDQojZGVmaW5lICBFWFRJX0VNUl9FTTE0IEVYVElfRU1SX01SMTQNCiNkZWZpbmUgIEVYVElfRU1SX0VNMTUgRVhUSV9FTVJfTVIxNQ0KI2RlZmluZSAgRVhUSV9FTVJfRU0xNiBFWFRJX0VNUl9NUjE2DQojZGVmaW5lICBFWFRJX0VNUl9FTTE3IEVYVElfRU1SX01SMTcNCiNkZWZpbmUgIEVYVElfRU1SX0VNMTggRVhUSV9FTVJfTVIxOA0KI2RlZmluZSAgRVhUSV9FTVJfRU0xOSBFWFRJX0VNUl9NUjE5DQojZGVmaW5lICBFWFRJX0VNUl9FTTIwIEVYVElfRU1SX01SMjANCiNkZWZpbmUgIEVYVElfRU1SX0VNMjEgRVhUSV9FTVJfTVIyMQ0KI2RlZmluZSAgRVhUSV9FTVJfRU0yMiBFWFRJX0VNUl9NUjIyDQojZGVmaW5lICBFWFRJX0VNUl9FTTIzIEVYVElfRU1SX01SMjMNCg0KLyoqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIEVYVElfUlRTUiByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgRVhUSV9SVFNSX1RSMF9Qb3MgICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRVhUSV9SVFNSX1RSMF9Nc2sgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgRVhUSV9SVFNSX1RSMF9Qb3MpICAgICAgICAvKiE8IDB4MDAwMDAwMDEgKi8NCiNkZWZpbmUgRVhUSV9SVFNSX1RSMCAgICAgICAgICAgICAgICAgICAgICAgRVhUSV9SVFNSX1RSMF9Nc2sgICAgICAgICAgICAgICAgICAvKiE8IFJpc2luZyB0cmlnZ2VyIGV2ZW50IGNvbmZpZ3VyYXRpb24gYml0IG9mIGxpbmUgMCAqLw0KI2RlZmluZSBFWFRJX1JUU1JfVFIxX1BvcyAgICAgICAgICAgICAgICAgICAoMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBFWFRJX1JUU1JfVFIxX01zayAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBFWFRJX1JUU1JfVFIxX1BvcykgICAgICAgIC8qITwgMHgwMDAwMDAwMiAqLw0KI2RlZmluZSBFWFRJX1JUU1JfVFIxICAgICAgICAgICAgICAgICAgICAgICBFWFRJX1JUU1JfVFIxX01zayAgICAgICAgICAgICAgICAgIC8qITwgUmlzaW5nIHRyaWdnZXIgZXZlbnQgY29uZmlndXJhdGlvbiBiaXQgb2YgbGluZSAxICovDQojZGVmaW5lIEVYVElfUlRTUl9UUjJfUG9zICAgICAgICAgICAgICAgICAgICgyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEVYVElfUlRTUl9UUjJfTXNrICAgICAgICAgICAgICAgICAgICgweDFVIDw8IEVYVElfUlRTUl9UUjJfUG9zKSAgICAgICAgLyohPCAweDAwMDAwMDA0ICovDQojZGVmaW5lIEVYVElfUlRTUl9UUjIgICAgICAgICAgICAgICAgICAgICAgIEVYVElfUlRTUl9UUjJfTXNrICAgICAgICAgICAgICAgICAgLyohPCBSaXNpbmcgdHJpZ2dlciBldmVudCBjb25maWd1cmF0aW9uIGJpdCBvZiBsaW5lIDIgKi8NCiNkZWZpbmUgRVhUSV9SVFNSX1RSM19Qb3MgICAgICAgICAgICAgICAgICAgKDNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRVhUSV9SVFNSX1RSM19Nc2sgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgRVhUSV9SVFNSX1RSM19Qb3MpICAgICAgICAvKiE8IDB4MDAwMDAwMDggKi8NCiNkZWZpbmUgRVhUSV9SVFNSX1RSMyAgICAgICAgICAgICAgICAgICAgICAgRVhUSV9SVFNSX1RSM19Nc2sgICAgICAgICAgICAgICAgICAvKiE8IFJpc2luZyB0cmlnZ2VyIGV2ZW50IGNvbmZpZ3VyYXRpb24gYml0IG9mIGxpbmUgMyAqLw0KI2RlZmluZSBFWFRJX1JUU1JfVFI0X1BvcyAgICAgICAgICAgICAgICAgICAoNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBFWFRJX1JUU1JfVFI0X01zayAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBFWFRJX1JUU1JfVFI0X1BvcykgICAgICAgIC8qITwgMHgwMDAwMDAxMCAqLw0KI2RlZmluZSBFWFRJX1JUU1JfVFI0ICAgICAgICAgICAgICAgICAgICAgICBFWFRJX1JUU1JfVFI0X01zayAgICAgICAgICAgICAgICAgIC8qITwgUmlzaW5nIHRyaWdnZXIgZXZlbnQgY29uZmlndXJhdGlvbiBiaXQgb2YgbGluZSA0ICovDQojZGVmaW5lIEVYVElfUlRTUl9UUjVfUG9zICAgICAgICAgICAgICAgICAgICg1VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEVYVElfUlRTUl9UUjVfTXNrICAgICAgICAgICAgICAgICAgICgweDFVIDw8IEVYVElfUlRTUl9UUjVfUG9zKSAgICAgICAgLyohPCAweDAwMDAwMDIwICovDQojZGVmaW5lIEVYVElfUlRTUl9UUjUgICAgICAgICAgICAgICAgICAgICAgIEVYVElfUlRTUl9UUjVfTXNrICAgICAgICAgICAgICAgICAgLyohPCBSaXNpbmcgdHJpZ2dlciBldmVudCBjb25maWd1cmF0aW9uIGJpdCBvZiBsaW5lIDUgKi8NCiNkZWZpbmUgRVhUSV9SVFNSX1RSNl9Qb3MgICAgICAgICAgICAgICAgICAgKDZVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRVhUSV9SVFNSX1RSNl9Nc2sgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgRVhUSV9SVFNSX1RSNl9Qb3MpICAgICAgICAvKiE8IDB4MDAwMDAwNDAgKi8NCiNkZWZpbmUgRVhUSV9SVFNSX1RSNiAgICAgICAgICAgICAgICAgICAgICAgRVhUSV9SVFNSX1RSNl9Nc2sgICAgICAgICAgICAgICAgICAvKiE8IFJpc2luZyB0cmlnZ2VyIGV2ZW50IGNvbmZpZ3VyYXRpb24gYml0IG9mIGxpbmUgNiAqLw0KI2RlZmluZSBFWFRJX1JUU1JfVFI3X1BvcyAgICAgICAgICAgICAgICAgICAoN1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBFWFRJX1JUU1JfVFI3X01zayAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBFWFRJX1JUU1JfVFI3X1BvcykgICAgICAgIC8qITwgMHgwMDAwMDA4MCAqLw0KI2RlZmluZSBFWFRJX1JUU1JfVFI3ICAgICAgICAgICAgICAgICAgICAgICBFWFRJX1JUU1JfVFI3X01zayAgICAgICAgICAgICAgICAgIC8qITwgUmlzaW5nIHRyaWdnZXIgZXZlbnQgY29uZmlndXJhdGlvbiBiaXQgb2YgbGluZSA3ICovDQojZGVmaW5lIEVYVElfUlRTUl9UUjhfUG9zICAgICAgICAgICAgICAgICAgICg4VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEVYVElfUlRTUl9UUjhfTXNrICAgICAgICAgICAgICAgICAgICgweDFVIDw8IEVYVElfUlRTUl9UUjhfUG9zKSAgICAgICAgLyohPCAweDAwMDAwMTAwICovDQojZGVmaW5lIEVYVElfUlRTUl9UUjggICAgICAgICAgICAgICAgICAgICAgIEVYVElfUlRTUl9UUjhfTXNrICAgICAgICAgICAgICAgICAgLyohPCBSaXNpbmcgdHJpZ2dlciBldmVudCBjb25maWd1cmF0aW9uIGJpdCBvZiBsaW5lIDggKi8NCiNkZWZpbmUgRVhUSV9SVFNSX1RSOV9Qb3MgICAgICAgICAgICAgICAgICAgKDlVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRVhUSV9SVFNSX1RSOV9Nc2sgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgRVhUSV9SVFNSX1RSOV9Qb3MpICAgICAgICAvKiE8IDB4MDAwMDAyMDAgKi8NCiNkZWZpbmUgRVhUSV9SVFNSX1RSOSAgICAgICAgICAgICAgICAgICAgICAgRVhUSV9SVFNSX1RSOV9Nc2sgICAgICAgICAgICAgICAgICAvKiE8IFJpc2luZyB0cmlnZ2VyIGV2ZW50IGNvbmZpZ3VyYXRpb24gYml0IG9mIGxpbmUgOSAqLw0KI2RlZmluZSBFWFRJX1JUU1JfVFIxMF9Qb3MgICAgICAgICAgICAgICAgICAoMTBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBFWFRJX1JUU1JfVFIxMF9Nc2sgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBFWFRJX1JUU1JfVFIxMF9Qb3MpICAgICAgIC8qITwgMHgwMDAwMDQwMCAqLw0KI2RlZmluZSBFWFRJX1JUU1JfVFIxMCAgICAgICAgICAgICAgICAgICAgICBFWFRJX1JUU1JfVFIxMF9Nc2sgICAgICAgICAgICAgICAgIC8qITwgUmlzaW5nIHRyaWdnZXIgZXZlbnQgY29uZmlndXJhdGlvbiBiaXQgb2YgbGluZSAxMCAqLw0KI2RlZmluZSBFWFRJX1JUU1JfVFIxMV9Qb3MgICAgICAgICAgICAgICAgICAoMTFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBFWFRJX1JUU1JfVFIxMV9Nc2sgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBFWFRJX1JUU1JfVFIxMV9Qb3MpICAgICAgIC8qITwgMHgwMDAwMDgwMCAqLw0KI2RlZmluZSBFWFRJX1JUU1JfVFIxMSAgICAgICAgICAgICAgICAgICAgICBFWFRJX1JUU1JfVFIxMV9Nc2sgICAgICAgICAgICAgICAgIC8qITwgUmlzaW5nIHRyaWdnZXIgZXZlbnQgY29uZmlndXJhdGlvbiBiaXQgb2YgbGluZSAxMSAqLw0KI2RlZmluZSBFWFRJX1JUU1JfVFIxMl9Qb3MgICAgICAgICAgICAgICAgICAoMTJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBFWFRJX1JUU1JfVFIxMl9Nc2sgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBFWFRJX1JUU1JfVFIxMl9Qb3MpICAgICAgIC8qITwgMHgwMDAwMTAwMCAqLw0KI2RlZmluZSBFWFRJX1JUU1JfVFIxMiAgICAgICAgICAgICAgICAgICAgICBFWFRJX1JUU1JfVFIxMl9Nc2sgICAgICAgICAgICAgICAgIC8qITwgUmlzaW5nIHRyaWdnZXIgZXZlbnQgY29uZmlndXJhdGlvbiBiaXQgb2YgbGluZSAxMiAqLw0KI2RlZmluZSBFWFRJX1JUU1JfVFIxM19Qb3MgICAgICAgICAgICAgICAgICAoMTNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBFWFRJX1JUU1JfVFIxM19Nc2sgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBFWFRJX1JUU1JfVFIxM19Qb3MpICAgICAgIC8qITwgMHgwMDAwMjAwMCAqLw0KI2RlZmluZSBFWFRJX1JUU1JfVFIxMyAgICAgICAgICAgICAgICAgICAgICBFWFRJX1JUU1JfVFIxM19Nc2sgICAgICAgICAgICAgICAgIC8qITwgUmlzaW5nIHRyaWdnZXIgZXZlbnQgY29uZmlndXJhdGlvbiBiaXQgb2YgbGluZSAxMyAqLw0KI2RlZmluZSBFWFRJX1JUU1JfVFIxNF9Qb3MgICAgICAgICAgICAgICAgICAoMTRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBFWFRJX1JUU1JfVFIxNF9Nc2sgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBFWFRJX1JUU1JfVFIxNF9Qb3MpICAgICAgIC8qITwgMHgwMDAwNDAwMCAqLw0KI2RlZmluZSBFWFRJX1JUU1JfVFIxNCAgICAgICAgICAgICAgICAgICAgICBFWFRJX1JUU1JfVFIxNF9Nc2sgICAgICAgICAgICAgICAgIC8qITwgUmlzaW5nIHRyaWdnZXIgZXZlbnQgY29uZmlndXJhdGlvbiBiaXQgb2YgbGluZSAxNCAqLw0KI2RlZmluZSBFWFRJX1JUU1JfVFIxNV9Qb3MgICAgICAgICAgICAgICAgICAoMTVVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBFWFRJX1JUU1JfVFIxNV9Nc2sgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBFWFRJX1JUU1JfVFIxNV9Qb3MpICAgICAgIC8qITwgMHgwMDAwODAwMCAqLw0KI2RlZmluZSBFWFRJX1JUU1JfVFIxNSAgICAgICAgICAgICAgICAgICAgICBFWFRJX1JUU1JfVFIxNV9Nc2sgICAgICAgICAgICAgICAgIC8qITwgUmlzaW5nIHRyaWdnZXIgZXZlbnQgY29uZmlndXJhdGlvbiBiaXQgb2YgbGluZSAxNSAqLw0KI2RlZmluZSBFWFRJX1JUU1JfVFIxNl9Qb3MgICAgICAgICAgICAgICAgICAoMTZVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBFWFRJX1JUU1JfVFIxNl9Nc2sgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBFWFRJX1JUU1JfVFIxNl9Qb3MpICAgICAgIC8qITwgMHgwMDAxMDAwMCAqLw0KI2RlZmluZSBFWFRJX1JUU1JfVFIxNiAgICAgICAgICAgICAgICAgICAgICBFWFRJX1JUU1JfVFIxNl9Nc2sgICAgICAgICAgICAgICAgIC8qITwgUmlzaW5nIHRyaWdnZXIgZXZlbnQgY29uZmlndXJhdGlvbiBiaXQgb2YgbGluZSAxNiAqLw0KI2RlZmluZSBFWFRJX1JUU1JfVFIxN19Qb3MgICAgICAgICAgICAgICAgICAoMTdVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBFWFRJX1JUU1JfVFIxN19Nc2sgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBFWFRJX1JUU1JfVFIxN19Qb3MpICAgICAgIC8qITwgMHgwMDAyMDAwMCAqLw0KI2RlZmluZSBFWFRJX1JUU1JfVFIxNyAgICAgICAgICAgICAgICAgICAgICBFWFRJX1JUU1JfVFIxN19Nc2sgICAgICAgICAgICAgICAgIC8qITwgUmlzaW5nIHRyaWdnZXIgZXZlbnQgY29uZmlndXJhdGlvbiBiaXQgb2YgbGluZSAxNyAqLw0KI2RlZmluZSBFWFRJX1JUU1JfVFIxOF9Qb3MgICAgICAgICAgICAgICAgICAoMThVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBFWFRJX1JUU1JfVFIxOF9Nc2sgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBFWFRJX1JUU1JfVFIxOF9Qb3MpICAgICAgIC8qITwgMHgwMDA0MDAwMCAqLw0KI2RlZmluZSBFWFRJX1JUU1JfVFIxOCAgICAgICAgICAgICAgICAgICAgICBFWFRJX1JUU1JfVFIxOF9Nc2sgICAgICAgICAgICAgICAgIC8qITwgUmlzaW5nIHRyaWdnZXIgZXZlbnQgY29uZmlndXJhdGlvbiBiaXQgb2YgbGluZSAxOCAqLw0KI2RlZmluZSBFWFRJX1JUU1JfVFIxOV9Qb3MgICAgICAgICAgICAgICAgICAoMTlVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBFWFRJX1JUU1JfVFIxOV9Nc2sgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBFWFRJX1JUU1JfVFIxOV9Qb3MpICAgICAgIC8qITwgMHgwMDA4MDAwMCAqLw0KI2RlZmluZSBFWFRJX1JUU1JfVFIxOSAgICAgICAgICAgICAgICAgICAgICBFWFRJX1JUU1JfVFIxOV9Nc2sgICAgICAgICAgICAgICAgIC8qITwgUmlzaW5nIHRyaWdnZXIgZXZlbnQgY29uZmlndXJhdGlvbiBiaXQgb2YgbGluZSAxOSAqLw0KI2RlZmluZSBFWFRJX1JUU1JfVFIyMF9Qb3MgICAgICAgICAgICAgICAgICAoMjBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBFWFRJX1JUU1JfVFIyMF9Nc2sgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBFWFRJX1JUU1JfVFIyMF9Qb3MpICAgICAgIC8qITwgMHgwMDEwMDAwMCAqLw0KI2RlZmluZSBFWFRJX1JUU1JfVFIyMCAgICAgICAgICAgICAgICAgICAgICBFWFRJX1JUU1JfVFIyMF9Nc2sgICAgICAgICAgICAgICAgIC8qITwgUmlzaW5nIHRyaWdnZXIgZXZlbnQgY29uZmlndXJhdGlvbiBiaXQgb2YgbGluZSAyMCAqLw0KI2RlZmluZSBFWFRJX1JUU1JfVFIyMV9Qb3MgICAgICAgICAgICAgICAgICAoMjFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBFWFRJX1JUU1JfVFIyMV9Nc2sgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBFWFRJX1JUU1JfVFIyMV9Qb3MpICAgICAgIC8qITwgMHgwMDIwMDAwMCAqLw0KI2RlZmluZSBFWFRJX1JUU1JfVFIyMSAgICAgICAgICAgICAgICAgICAgICBFWFRJX1JUU1JfVFIyMV9Nc2sgICAgICAgICAgICAgICAgIC8qITwgUmlzaW5nIHRyaWdnZXIgZXZlbnQgY29uZmlndXJhdGlvbiBiaXQgb2YgbGluZSAyMSAqLw0KI2RlZmluZSBFWFRJX1JUU1JfVFIyMl9Qb3MgICAgICAgICAgICAgICAgICAoMjJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBFWFRJX1JUU1JfVFIyMl9Nc2sgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBFWFRJX1JUU1JfVFIyMl9Qb3MpICAgICAgIC8qITwgMHgwMDQwMDAwMCAqLw0KI2RlZmluZSBFWFRJX1JUU1JfVFIyMiAgICAgICAgICAgICAgICAgICAgICBFWFRJX1JUU1JfVFIyMl9Nc2sgICAgICAgICAgICAgICAgIC8qITwgUmlzaW5nIHRyaWdnZXIgZXZlbnQgY29uZmlndXJhdGlvbiBiaXQgb2YgbGluZSAyMiAqLw0KI2RlZmluZSBFWFRJX1JUU1JfVFIyM19Qb3MgICAgICAgICAgICAgICAgICAoMjNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBFWFRJX1JUU1JfVFIyM19Nc2sgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBFWFRJX1JUU1JfVFIyM19Qb3MpICAgICAgIC8qITwgMHgwMDgwMDAwMCAqLw0KI2RlZmluZSBFWFRJX1JUU1JfVFIyMyAgICAgICAgICAgICAgICAgICAgICBFWFRJX1JUU1JfVFIyM19Nc2sgICAgICAgICAgICAgICAgIC8qITwgUmlzaW5nIHRyaWdnZXIgZXZlbnQgY29uZmlndXJhdGlvbiBiaXQgb2YgbGluZSAyMyAqLw0KDQovKiBSZWZlcmVuY2VzIERlZmluZXMgKi8NCiNkZWZpbmUgIEVYVElfUlRTUl9SVDAgRVhUSV9SVFNSX1RSMA0KI2RlZmluZSAgRVhUSV9SVFNSX1JUMSBFWFRJX1JUU1JfVFIxDQojZGVmaW5lICBFWFRJX1JUU1JfUlQyIEVYVElfUlRTUl9UUjINCiNkZWZpbmUgIEVYVElfUlRTUl9SVDMgRVhUSV9SVFNSX1RSMw0KI2RlZmluZSAgRVhUSV9SVFNSX1JUNCBFWFRJX1JUU1JfVFI0DQojZGVmaW5lICBFWFRJX1JUU1JfUlQ1IEVYVElfUlRTUl9UUjUNCiNkZWZpbmUgIEVYVElfUlRTUl9SVDYgRVhUSV9SVFNSX1RSNg0KI2RlZmluZSAgRVhUSV9SVFNSX1JUNyBFWFRJX1JUU1JfVFI3DQojZGVmaW5lICBFWFRJX1JUU1JfUlQ4IEVYVElfUlRTUl9UUjgNCiNkZWZpbmUgIEVYVElfUlRTUl9SVDkgRVhUSV9SVFNSX1RSOQ0KI2RlZmluZSAgRVhUSV9SVFNSX1JUMTAgRVhUSV9SVFNSX1RSMTANCiNkZWZpbmUgIEVYVElfUlRTUl9SVDExIEVYVElfUlRTUl9UUjExDQojZGVmaW5lICBFWFRJX1JUU1JfUlQxMiBFWFRJX1JUU1JfVFIxMg0KI2RlZmluZSAgRVhUSV9SVFNSX1JUMTMgRVhUSV9SVFNSX1RSMTMNCiNkZWZpbmUgIEVYVElfUlRTUl9SVDE0IEVYVElfUlRTUl9UUjE0DQojZGVmaW5lICBFWFRJX1JUU1JfUlQxNSBFWFRJX1JUU1JfVFIxNQ0KI2RlZmluZSAgRVhUSV9SVFNSX1JUMTYgRVhUSV9SVFNSX1RSMTYNCiNkZWZpbmUgIEVYVElfUlRTUl9SVDE3IEVYVElfUlRTUl9UUjE3DQojZGVmaW5lICBFWFRJX1JUU1JfUlQxOCBFWFRJX1JUU1JfVFIxOA0KI2RlZmluZSAgRVhUSV9SVFNSX1JUMTkgRVhUSV9SVFNSX1RSMTkNCiNkZWZpbmUgIEVYVElfUlRTUl9SVDIwIEVYVElfUlRTUl9UUjIwDQojZGVmaW5lICBFWFRJX1JUU1JfUlQyMSBFWFRJX1JUU1JfVFIyMQ0KI2RlZmluZSAgRVhUSV9SVFNSX1JUMjIgRVhUSV9SVFNSX1RSMjINCiNkZWZpbmUgIEVYVElfUlRTUl9SVDIzIEVYVElfUlRTUl9UUjIzDQoNCi8qKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBFWFRJX0ZUU1IgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIEVYVElfRlRTUl9UUjBfUG9zICAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEVYVElfRlRTUl9UUjBfTXNrICAgICAgICAgICAgICAgICAgICgweDFVIDw8IEVYVElfRlRTUl9UUjBfUG9zKSAgICAgICAgLyohPCAweDAwMDAwMDAxICovDQojZGVmaW5lIEVYVElfRlRTUl9UUjAgICAgICAgICAgICAgICAgICAgICAgIEVYVElfRlRTUl9UUjBfTXNrICAgICAgICAgICAgICAgICAgLyohPCBGYWxsaW5nIHRyaWdnZXIgZXZlbnQgY29uZmlndXJhdGlvbiBiaXQgb2YgbGluZSAwICovDQojZGVmaW5lIEVYVElfRlRTUl9UUjFfUG9zICAgICAgICAgICAgICAgICAgICgxVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEVYVElfRlRTUl9UUjFfTXNrICAgICAgICAgICAgICAgICAgICgweDFVIDw8IEVYVElfRlRTUl9UUjFfUG9zKSAgICAgICAgLyohPCAweDAwMDAwMDAyICovDQojZGVmaW5lIEVYVElfRlRTUl9UUjEgICAgICAgICAgICAgICAgICAgICAgIEVYVElfRlRTUl9UUjFfTXNrICAgICAgICAgICAgICAgICAgLyohPCBGYWxsaW5nIHRyaWdnZXIgZXZlbnQgY29uZmlndXJhdGlvbiBiaXQgb2YgbGluZSAxICovDQojZGVmaW5lIEVYVElfRlRTUl9UUjJfUG9zICAgICAgICAgICAgICAgICAgICgyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEVYVElfRlRTUl9UUjJfTXNrICAgICAgICAgICAgICAgICAgICgweDFVIDw8IEVYVElfRlRTUl9UUjJfUG9zKSAgICAgICAgLyohPCAweDAwMDAwMDA0ICovDQojZGVmaW5lIEVYVElfRlRTUl9UUjIgICAgICAgICAgICAgICAgICAgICAgIEVYVElfRlRTUl9UUjJfTXNrICAgICAgICAgICAgICAgICAgLyohPCBGYWxsaW5nIHRyaWdnZXIgZXZlbnQgY29uZmlndXJhdGlvbiBiaXQgb2YgbGluZSAyICovDQojZGVmaW5lIEVYVElfRlRTUl9UUjNfUG9zICAgICAgICAgICAgICAgICAgICgzVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEVYVElfRlRTUl9UUjNfTXNrICAgICAgICAgICAgICAgICAgICgweDFVIDw8IEVYVElfRlRTUl9UUjNfUG9zKSAgICAgICAgLyohPCAweDAwMDAwMDA4ICovDQojZGVmaW5lIEVYVElfRlRTUl9UUjMgICAgICAgICAgICAgICAgICAgICAgIEVYVElfRlRTUl9UUjNfTXNrICAgICAgICAgICAgICAgICAgLyohPCBGYWxsaW5nIHRyaWdnZXIgZXZlbnQgY29uZmlndXJhdGlvbiBiaXQgb2YgbGluZSAzICovDQojZGVmaW5lIEVYVElfRlRTUl9UUjRfUG9zICAgICAgICAgICAgICAgICAgICg0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEVYVElfRlRTUl9UUjRfTXNrICAgICAgICAgICAgICAgICAgICgweDFVIDw8IEVYVElfRlRTUl9UUjRfUG9zKSAgICAgICAgLyohPCAweDAwMDAwMDEwICovDQojZGVmaW5lIEVYVElfRlRTUl9UUjQgICAgICAgICAgICAgICAgICAgICAgIEVYVElfRlRTUl9UUjRfTXNrICAgICAgICAgICAgICAgICAgLyohPCBGYWxsaW5nIHRyaWdnZXIgZXZlbnQgY29uZmlndXJhdGlvbiBiaXQgb2YgbGluZSA0ICovDQojZGVmaW5lIEVYVElfRlRTUl9UUjVfUG9zICAgICAgICAgICAgICAgICAgICg1VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEVYVElfRlRTUl9UUjVfTXNrICAgICAgICAgICAgICAgICAgICgweDFVIDw8IEVYVElfRlRTUl9UUjVfUG9zKSAgICAgICAgLyohPCAweDAwMDAwMDIwICovDQojZGVmaW5lIEVYVElfRlRTUl9UUjUgICAgICAgICAgICAgICAgICAgICAgIEVYVElfRlRTUl9UUjVfTXNrICAgICAgICAgICAgICAgICAgLyohPCBGYWxsaW5nIHRyaWdnZXIgZXZlbnQgY29uZmlndXJhdGlvbiBiaXQgb2YgbGluZSA1ICovDQojZGVmaW5lIEVYVElfRlRTUl9UUjZfUG9zICAgICAgICAgICAgICAgICAgICg2VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEVYVElfRlRTUl9UUjZfTXNrICAgICAgICAgICAgICAgICAgICgweDFVIDw8IEVYVElfRlRTUl9UUjZfUG9zKSAgICAgICAgLyohPCAweDAwMDAwMDQwICovDQojZGVmaW5lIEVYVElfRlRTUl9UUjYgICAgICAgICAgICAgICAgICAgICAgIEVYVElfRlRTUl9UUjZfTXNrICAgICAgICAgICAgICAgICAgLyohPCBGYWxsaW5nIHRyaWdnZXIgZXZlbnQgY29uZmlndXJhdGlvbiBiaXQgb2YgbGluZSA2ICovDQojZGVmaW5lIEVYVElfRlRTUl9UUjdfUG9zICAgICAgICAgICAgICAgICAgICg3VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEVYVElfRlRTUl9UUjdfTXNrICAgICAgICAgICAgICAgICAgICgweDFVIDw8IEVYVElfRlRTUl9UUjdfUG9zKSAgICAgICAgLyohPCAweDAwMDAwMDgwICovDQojZGVmaW5lIEVYVElfRlRTUl9UUjcgICAgICAgICAgICAgICAgICAgICAgIEVYVElfRlRTUl9UUjdfTXNrICAgICAgICAgICAgICAgICAgLyohPCBGYWxsaW5nIHRyaWdnZXIgZXZlbnQgY29uZmlndXJhdGlvbiBiaXQgb2YgbGluZSA3ICovDQojZGVmaW5lIEVYVElfRlRTUl9UUjhfUG9zICAgICAgICAgICAgICAgICAgICg4VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEVYVElfRlRTUl9UUjhfTXNrICAgICAgICAgICAgICAgICAgICgweDFVIDw8IEVYVElfRlRTUl9UUjhfUG9zKSAgICAgICAgLyohPCAweDAwMDAwMTAwICovDQojZGVmaW5lIEVYVElfRlRTUl9UUjggICAgICAgICAgICAgICAgICAgICAgIEVYVElfRlRTUl9UUjhfTXNrICAgICAgICAgICAgICAgICAgLyohPCBGYWxsaW5nIHRyaWdnZXIgZXZlbnQgY29uZmlndXJhdGlvbiBiaXQgb2YgbGluZSA4ICovDQojZGVmaW5lIEVYVElfRlRTUl9UUjlfUG9zICAgICAgICAgICAgICAgICAgICg5VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEVYVElfRlRTUl9UUjlfTXNrICAgICAgICAgICAgICAgICAgICgweDFVIDw8IEVYVElfRlRTUl9UUjlfUG9zKSAgICAgICAgLyohPCAweDAwMDAwMjAwICovDQojZGVmaW5lIEVYVElfRlRTUl9UUjkgICAgICAgICAgICAgICAgICAgICAgIEVYVElfRlRTUl9UUjlfTXNrICAgICAgICAgICAgICAgICAgLyohPCBGYWxsaW5nIHRyaWdnZXIgZXZlbnQgY29uZmlndXJhdGlvbiBiaXQgb2YgbGluZSA5ICovDQojZGVmaW5lIEVYVElfRlRTUl9UUjEwX1BvcyAgICAgICAgICAgICAgICAgICgxMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEVYVElfRlRTUl9UUjEwX01zayAgICAgICAgICAgICAgICAgICgweDFVIDw8IEVYVElfRlRTUl9UUjEwX1BvcykgICAgICAgLyohPCAweDAwMDAwNDAwICovDQojZGVmaW5lIEVYVElfRlRTUl9UUjEwICAgICAgICAgICAgICAgICAgICAgIEVYVElfRlRTUl9UUjEwX01zayAgICAgICAgICAgICAgICAgLyohPCBGYWxsaW5nIHRyaWdnZXIgZXZlbnQgY29uZmlndXJhdGlvbiBiaXQgb2YgbGluZSAxMCAqLw0KI2RlZmluZSBFWFRJX0ZUU1JfVFIxMV9Qb3MgICAgICAgICAgICAgICAgICAoMTFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBFWFRJX0ZUU1JfVFIxMV9Nc2sgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBFWFRJX0ZUU1JfVFIxMV9Qb3MpICAgICAgIC8qITwgMHgwMDAwMDgwMCAqLw0KI2RlZmluZSBFWFRJX0ZUU1JfVFIxMSAgICAgICAgICAgICAgICAgICAgICBFWFRJX0ZUU1JfVFIxMV9Nc2sgICAgICAgICAgICAgICAgIC8qITwgRmFsbGluZyB0cmlnZ2VyIGV2ZW50IGNvbmZpZ3VyYXRpb24gYml0IG9mIGxpbmUgMTEgKi8NCiNkZWZpbmUgRVhUSV9GVFNSX1RSMTJfUG9zICAgICAgICAgICAgICAgICAgKDEyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRVhUSV9GVFNSX1RSMTJfTXNrICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgRVhUSV9GVFNSX1RSMTJfUG9zKSAgICAgICAvKiE8IDB4MDAwMDEwMDAgKi8NCiNkZWZpbmUgRVhUSV9GVFNSX1RSMTIgICAgICAgICAgICAgICAgICAgICAgRVhUSV9GVFNSX1RSMTJfTXNrICAgICAgICAgICAgICAgICAvKiE8IEZhbGxpbmcgdHJpZ2dlciBldmVudCBjb25maWd1cmF0aW9uIGJpdCBvZiBsaW5lIDEyICovDQojZGVmaW5lIEVYVElfRlRTUl9UUjEzX1BvcyAgICAgICAgICAgICAgICAgICgxM1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEVYVElfRlRTUl9UUjEzX01zayAgICAgICAgICAgICAgICAgICgweDFVIDw8IEVYVElfRlRTUl9UUjEzX1BvcykgICAgICAgLyohPCAweDAwMDAyMDAwICovDQojZGVmaW5lIEVYVElfRlRTUl9UUjEzICAgICAgICAgICAgICAgICAgICAgIEVYVElfRlRTUl9UUjEzX01zayAgICAgICAgICAgICAgICAgLyohPCBGYWxsaW5nIHRyaWdnZXIgZXZlbnQgY29uZmlndXJhdGlvbiBiaXQgb2YgbGluZSAxMyAqLw0KI2RlZmluZSBFWFRJX0ZUU1JfVFIxNF9Qb3MgICAgICAgICAgICAgICAgICAoMTRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBFWFRJX0ZUU1JfVFIxNF9Nc2sgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBFWFRJX0ZUU1JfVFIxNF9Qb3MpICAgICAgIC8qITwgMHgwMDAwNDAwMCAqLw0KI2RlZmluZSBFWFRJX0ZUU1JfVFIxNCAgICAgICAgICAgICAgICAgICAgICBFWFRJX0ZUU1JfVFIxNF9Nc2sgICAgICAgICAgICAgICAgIC8qITwgRmFsbGluZyB0cmlnZ2VyIGV2ZW50IGNvbmZpZ3VyYXRpb24gYml0IG9mIGxpbmUgMTQgKi8NCiNkZWZpbmUgRVhUSV9GVFNSX1RSMTVfUG9zICAgICAgICAgICAgICAgICAgKDE1VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRVhUSV9GVFNSX1RSMTVfTXNrICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgRVhUSV9GVFNSX1RSMTVfUG9zKSAgICAgICAvKiE8IDB4MDAwMDgwMDAgKi8NCiNkZWZpbmUgRVhUSV9GVFNSX1RSMTUgICAgICAgICAgICAgICAgICAgICAgRVhUSV9GVFNSX1RSMTVfTXNrICAgICAgICAgICAgICAgICAvKiE8IEZhbGxpbmcgdHJpZ2dlciBldmVudCBjb25maWd1cmF0aW9uIGJpdCBvZiBsaW5lIDE1ICovDQojZGVmaW5lIEVYVElfRlRTUl9UUjE2X1BvcyAgICAgICAgICAgICAgICAgICgxNlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEVYVElfRlRTUl9UUjE2X01zayAgICAgICAgICAgICAgICAgICgweDFVIDw8IEVYVElfRlRTUl9UUjE2X1BvcykgICAgICAgLyohPCAweDAwMDEwMDAwICovDQojZGVmaW5lIEVYVElfRlRTUl9UUjE2ICAgICAgICAgICAgICAgICAgICAgIEVYVElfRlRTUl9UUjE2X01zayAgICAgICAgICAgICAgICAgLyohPCBGYWxsaW5nIHRyaWdnZXIgZXZlbnQgY29uZmlndXJhdGlvbiBiaXQgb2YgbGluZSAxNiAqLw0KI2RlZmluZSBFWFRJX0ZUU1JfVFIxN19Qb3MgICAgICAgICAgICAgICAgICAoMTdVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBFWFRJX0ZUU1JfVFIxN19Nc2sgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBFWFRJX0ZUU1JfVFIxN19Qb3MpICAgICAgIC8qITwgMHgwMDAyMDAwMCAqLw0KI2RlZmluZSBFWFRJX0ZUU1JfVFIxNyAgICAgICAgICAgICAgICAgICAgICBFWFRJX0ZUU1JfVFIxN19Nc2sgICAgICAgICAgICAgICAgIC8qITwgRmFsbGluZyB0cmlnZ2VyIGV2ZW50IGNvbmZpZ3VyYXRpb24gYml0IG9mIGxpbmUgMTcgKi8NCiNkZWZpbmUgRVhUSV9GVFNSX1RSMThfUG9zICAgICAgICAgICAgICAgICAgKDE4VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRVhUSV9GVFNSX1RSMThfTXNrICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgRVhUSV9GVFNSX1RSMThfUG9zKSAgICAgICAvKiE8IDB4MDAwNDAwMDAgKi8NCiNkZWZpbmUgRVhUSV9GVFNSX1RSMTggICAgICAgICAgICAgICAgICAgICAgRVhUSV9GVFNSX1RSMThfTXNrICAgICAgICAgICAgICAgICAvKiE8IEZhbGxpbmcgdHJpZ2dlciBldmVudCBjb25maWd1cmF0aW9uIGJpdCBvZiBsaW5lIDE4ICovDQojZGVmaW5lIEVYVElfRlRTUl9UUjE5X1BvcyAgICAgICAgICAgICAgICAgICgxOVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEVYVElfRlRTUl9UUjE5X01zayAgICAgICAgICAgICAgICAgICgweDFVIDw8IEVYVElfRlRTUl9UUjE5X1BvcykgICAgICAgLyohPCAweDAwMDgwMDAwICovDQojZGVmaW5lIEVYVElfRlRTUl9UUjE5ICAgICAgICAgICAgICAgICAgICAgIEVYVElfRlRTUl9UUjE5X01zayAgICAgICAgICAgICAgICAgLyohPCBGYWxsaW5nIHRyaWdnZXIgZXZlbnQgY29uZmlndXJhdGlvbiBiaXQgb2YgbGluZSAxOSAqLw0KI2RlZmluZSBFWFRJX0ZUU1JfVFIyMF9Qb3MgICAgICAgICAgICAgICAgICAoMjBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBFWFRJX0ZUU1JfVFIyMF9Nc2sgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBFWFRJX0ZUU1JfVFIyMF9Qb3MpICAgICAgIC8qITwgMHgwMDEwMDAwMCAqLw0KI2RlZmluZSBFWFRJX0ZUU1JfVFIyMCAgICAgICAgICAgICAgICAgICAgICBFWFRJX0ZUU1JfVFIyMF9Nc2sgICAgICAgICAgICAgICAgIC8qITwgRmFsbGluZyB0cmlnZ2VyIGV2ZW50IGNvbmZpZ3VyYXRpb24gYml0IG9mIGxpbmUgMjAgKi8NCiNkZWZpbmUgRVhUSV9GVFNSX1RSMjFfUG9zICAgICAgICAgICAgICAgICAgKDIxVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRVhUSV9GVFNSX1RSMjFfTXNrICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgRVhUSV9GVFNSX1RSMjFfUG9zKSAgICAgICAvKiE8IDB4MDAyMDAwMDAgKi8NCiNkZWZpbmUgRVhUSV9GVFNSX1RSMjEgICAgICAgICAgICAgICAgICAgICAgRVhUSV9GVFNSX1RSMjFfTXNrICAgICAgICAgICAgICAgICAvKiE8IEZhbGxpbmcgdHJpZ2dlciBldmVudCBjb25maWd1cmF0aW9uIGJpdCBvZiBsaW5lIDIxICovDQojZGVmaW5lIEVYVElfRlRTUl9UUjIyX1BvcyAgICAgICAgICAgICAgICAgICgyMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEVYVElfRlRTUl9UUjIyX01zayAgICAgICAgICAgICAgICAgICgweDFVIDw8IEVYVElfRlRTUl9UUjIyX1BvcykgICAgICAgLyohPCAweDAwNDAwMDAwICovDQojZGVmaW5lIEVYVElfRlRTUl9UUjIyICAgICAgICAgICAgICAgICAgICAgIEVYVElfRlRTUl9UUjIyX01zayAgICAgICAgICAgICAgICAgLyohPCBGYWxsaW5nIHRyaWdnZXIgZXZlbnQgY29uZmlndXJhdGlvbiBiaXQgb2YgbGluZSAyMiAqLw0KI2RlZmluZSBFWFRJX0ZUU1JfVFIyM19Qb3MgICAgICAgICAgICAgICAgICAoMjNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBFWFRJX0ZUU1JfVFIyM19Nc2sgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBFWFRJX0ZUU1JfVFIyM19Qb3MpICAgICAgIC8qITwgMHgwMDgwMDAwMCAqLw0KI2RlZmluZSBFWFRJX0ZUU1JfVFIyMyAgICAgICAgICAgICAgICAgICAgICBFWFRJX0ZUU1JfVFIyM19Nc2sgICAgICAgICAgICAgICAgIC8qITwgRmFsbGluZyB0cmlnZ2VyIGV2ZW50IGNvbmZpZ3VyYXRpb24gYml0IG9mIGxpbmUgMjMgKi8NCg0KLyogUmVmZXJlbmNlcyBEZWZpbmVzICovDQojZGVmaW5lICBFWFRJX0ZUU1JfRlQwIEVYVElfRlRTUl9UUjANCiNkZWZpbmUgIEVYVElfRlRTUl9GVDEgRVhUSV9GVFNSX1RSMQ0KI2RlZmluZSAgRVhUSV9GVFNSX0ZUMiBFWFRJX0ZUU1JfVFIyDQojZGVmaW5lICBFWFRJX0ZUU1JfRlQzIEVYVElfRlRTUl9UUjMNCiNkZWZpbmUgIEVYVElfRlRTUl9GVDQgRVhUSV9GVFNSX1RSNA0KI2RlZmluZSAgRVhUSV9GVFNSX0ZUNSBFWFRJX0ZUU1JfVFI1DQojZGVmaW5lICBFWFRJX0ZUU1JfRlQ2IEVYVElfRlRTUl9UUjYNCiNkZWZpbmUgIEVYVElfRlRTUl9GVDcgRVhUSV9GVFNSX1RSNw0KI2RlZmluZSAgRVhUSV9GVFNSX0ZUOCBFWFRJX0ZUU1JfVFI4DQojZGVmaW5lICBFWFRJX0ZUU1JfRlQ5IEVYVElfRlRTUl9UUjkNCiNkZWZpbmUgIEVYVElfRlRTUl9GVDEwIEVYVElfRlRTUl9UUjEwDQojZGVmaW5lICBFWFRJX0ZUU1JfRlQxMSBFWFRJX0ZUU1JfVFIxMQ0KI2RlZmluZSAgRVhUSV9GVFNSX0ZUMTIgRVhUSV9GVFNSX1RSMTINCiNkZWZpbmUgIEVYVElfRlRTUl9GVDEzIEVYVElfRlRTUl9UUjEzDQojZGVmaW5lICBFWFRJX0ZUU1JfRlQxNCBFWFRJX0ZUU1JfVFIxNA0KI2RlZmluZSAgRVhUSV9GVFNSX0ZUMTUgRVhUSV9GVFNSX1RSMTUNCiNkZWZpbmUgIEVYVElfRlRTUl9GVDE2IEVYVElfRlRTUl9UUjE2DQojZGVmaW5lICBFWFRJX0ZUU1JfRlQxNyBFWFRJX0ZUU1JfVFIxNw0KI2RlZmluZSAgRVhUSV9GVFNSX0ZUMTggRVhUSV9GVFNSX1RSMTgNCiNkZWZpbmUgIEVYVElfRlRTUl9GVDE5IEVYVElfRlRTUl9UUjE5DQojZGVmaW5lICBFWFRJX0ZUU1JfRlQyMCBFWFRJX0ZUU1JfVFIyMA0KI2RlZmluZSAgRVhUSV9GVFNSX0ZUMjEgRVhUSV9GVFNSX1RSMjENCiNkZWZpbmUgIEVYVElfRlRTUl9GVDIyIEVYVElfRlRTUl9UUjIyDQojZGVmaW5lICBFWFRJX0ZUU1JfRlQyMyBFWFRJX0ZUU1JfVFIyMw0KDQovKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgRVhUSV9TV0lFUiByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBFWFRJX1NXSUVSX1NXSUVSMF9Qb3MgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBFWFRJX1NXSUVSX1NXSUVSMF9Nc2sgICAgICAgICAgICAgICAoMHgxVSA8PCBFWFRJX1NXSUVSX1NXSUVSMF9Qb3MpICAgIC8qITwgMHgwMDAwMDAwMSAqLw0KI2RlZmluZSBFWFRJX1NXSUVSX1NXSUVSMCAgICAgICAgICAgICAgICAgICBFWFRJX1NXSUVSX1NXSUVSMF9Nc2sgICAgICAgICAgICAgIC8qITwgU29mdHdhcmUgSW50ZXJydXB0IG9uIGxpbmUgMCAqLw0KI2RlZmluZSBFWFRJX1NXSUVSX1NXSUVSMV9Qb3MgICAgICAgICAgICAgICAoMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBFWFRJX1NXSUVSX1NXSUVSMV9Nc2sgICAgICAgICAgICAgICAoMHgxVSA8PCBFWFRJX1NXSUVSX1NXSUVSMV9Qb3MpICAgIC8qITwgMHgwMDAwMDAwMiAqLw0KI2RlZmluZSBFWFRJX1NXSUVSX1NXSUVSMSAgICAgICAgICAgICAgICAgICBFWFRJX1NXSUVSX1NXSUVSMV9Nc2sgICAgICAgICAgICAgIC8qITwgU29mdHdhcmUgSW50ZXJydXB0IG9uIGxpbmUgMSAqLw0KI2RlZmluZSBFWFRJX1NXSUVSX1NXSUVSMl9Qb3MgICAgICAgICAgICAgICAoMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBFWFRJX1NXSUVSX1NXSUVSMl9Nc2sgICAgICAgICAgICAgICAoMHgxVSA8PCBFWFRJX1NXSUVSX1NXSUVSMl9Qb3MpICAgIC8qITwgMHgwMDAwMDAwNCAqLw0KI2RlZmluZSBFWFRJX1NXSUVSX1NXSUVSMiAgICAgICAgICAgICAgICAgICBFWFRJX1NXSUVSX1NXSUVSMl9Nc2sgICAgICAgICAgICAgIC8qITwgU29mdHdhcmUgSW50ZXJydXB0IG9uIGxpbmUgMiAqLw0KI2RlZmluZSBFWFRJX1NXSUVSX1NXSUVSM19Qb3MgICAgICAgICAgICAgICAoM1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBFWFRJX1NXSUVSX1NXSUVSM19Nc2sgICAgICAgICAgICAgICAoMHgxVSA8PCBFWFRJX1NXSUVSX1NXSUVSM19Qb3MpICAgIC8qITwgMHgwMDAwMDAwOCAqLw0KI2RlZmluZSBFWFRJX1NXSUVSX1NXSUVSMyAgICAgICAgICAgICAgICAgICBFWFRJX1NXSUVSX1NXSUVSM19Nc2sgICAgICAgICAgICAgIC8qITwgU29mdHdhcmUgSW50ZXJydXB0IG9uIGxpbmUgMyAqLw0KI2RlZmluZSBFWFRJX1NXSUVSX1NXSUVSNF9Qb3MgICAgICAgICAgICAgICAoNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBFWFRJX1NXSUVSX1NXSUVSNF9Nc2sgICAgICAgICAgICAgICAoMHgxVSA8PCBFWFRJX1NXSUVSX1NXSUVSNF9Qb3MpICAgIC8qITwgMHgwMDAwMDAxMCAqLw0KI2RlZmluZSBFWFRJX1NXSUVSX1NXSUVSNCAgICAgICAgICAgICAgICAgICBFWFRJX1NXSUVSX1NXSUVSNF9Nc2sgICAgICAgICAgICAgIC8qITwgU29mdHdhcmUgSW50ZXJydXB0IG9uIGxpbmUgNCAqLw0KI2RlZmluZSBFWFRJX1NXSUVSX1NXSUVSNV9Qb3MgICAgICAgICAgICAgICAoNVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBFWFRJX1NXSUVSX1NXSUVSNV9Nc2sgICAgICAgICAgICAgICAoMHgxVSA8PCBFWFRJX1NXSUVSX1NXSUVSNV9Qb3MpICAgIC8qITwgMHgwMDAwMDAyMCAqLw0KI2RlZmluZSBFWFRJX1NXSUVSX1NXSUVSNSAgICAgICAgICAgICAgICAgICBFWFRJX1NXSUVSX1NXSUVSNV9Nc2sgICAgICAgICAgICAgIC8qITwgU29mdHdhcmUgSW50ZXJydXB0IG9uIGxpbmUgNSAqLw0KI2RlZmluZSBFWFRJX1NXSUVSX1NXSUVSNl9Qb3MgICAgICAgICAgICAgICAoNlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBFWFRJX1NXSUVSX1NXSUVSNl9Nc2sgICAgICAgICAgICAgICAoMHgxVSA8PCBFWFRJX1NXSUVSX1NXSUVSNl9Qb3MpICAgIC8qITwgMHgwMDAwMDA0MCAqLw0KI2RlZmluZSBFWFRJX1NXSUVSX1NXSUVSNiAgICAgICAgICAgICAgICAgICBFWFRJX1NXSUVSX1NXSUVSNl9Nc2sgICAgICAgICAgICAgIC8qITwgU29mdHdhcmUgSW50ZXJydXB0IG9uIGxpbmUgNiAqLw0KI2RlZmluZSBFWFRJX1NXSUVSX1NXSUVSN19Qb3MgICAgICAgICAgICAgICAoN1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBFWFRJX1NXSUVSX1NXSUVSN19Nc2sgICAgICAgICAgICAgICAoMHgxVSA8PCBFWFRJX1NXSUVSX1NXSUVSN19Qb3MpICAgIC8qITwgMHgwMDAwMDA4MCAqLw0KI2RlZmluZSBFWFRJX1NXSUVSX1NXSUVSNyAgICAgICAgICAgICAgICAgICBFWFRJX1NXSUVSX1NXSUVSN19Nc2sgICAgICAgICAgICAgIC8qITwgU29mdHdhcmUgSW50ZXJydXB0IG9uIGxpbmUgNyAqLw0KI2RlZmluZSBFWFRJX1NXSUVSX1NXSUVSOF9Qb3MgICAgICAgICAgICAgICAoOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBFWFRJX1NXSUVSX1NXSUVSOF9Nc2sgICAgICAgICAgICAgICAoMHgxVSA8PCBFWFRJX1NXSUVSX1NXSUVSOF9Qb3MpICAgIC8qITwgMHgwMDAwMDEwMCAqLw0KI2RlZmluZSBFWFRJX1NXSUVSX1NXSUVSOCAgICAgICAgICAgICAgICAgICBFWFRJX1NXSUVSX1NXSUVSOF9Nc2sgICAgICAgICAgICAgIC8qITwgU29mdHdhcmUgSW50ZXJydXB0IG9uIGxpbmUgOCAqLw0KI2RlZmluZSBFWFRJX1NXSUVSX1NXSUVSOV9Qb3MgICAgICAgICAgICAgICAoOVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBFWFRJX1NXSUVSX1NXSUVSOV9Nc2sgICAgICAgICAgICAgICAoMHgxVSA8PCBFWFRJX1NXSUVSX1NXSUVSOV9Qb3MpICAgIC8qITwgMHgwMDAwMDIwMCAqLw0KI2RlZmluZSBFWFRJX1NXSUVSX1NXSUVSOSAgICAgICAgICAgICAgICAgICBFWFRJX1NXSUVSX1NXSUVSOV9Nc2sgICAgICAgICAgICAgIC8qITwgU29mdHdhcmUgSW50ZXJydXB0IG9uIGxpbmUgOSAqLw0KI2RlZmluZSBFWFRJX1NXSUVSX1NXSUVSMTBfUG9zICAgICAgICAgICAgICAoMTBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBFWFRJX1NXSUVSX1NXSUVSMTBfTXNrICAgICAgICAgICAgICAoMHgxVSA8PCBFWFRJX1NXSUVSX1NXSUVSMTBfUG9zKSAgIC8qITwgMHgwMDAwMDQwMCAqLw0KI2RlZmluZSBFWFRJX1NXSUVSX1NXSUVSMTAgICAgICAgICAgICAgICAgICBFWFRJX1NXSUVSX1NXSUVSMTBfTXNrICAgICAgICAgICAgIC8qITwgU29mdHdhcmUgSW50ZXJydXB0IG9uIGxpbmUgMTAgKi8NCiNkZWZpbmUgRVhUSV9TV0lFUl9TV0lFUjExX1BvcyAgICAgICAgICAgICAgKDExVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRVhUSV9TV0lFUl9TV0lFUjExX01zayAgICAgICAgICAgICAgKDB4MVUgPDwgRVhUSV9TV0lFUl9TV0lFUjExX1BvcykgICAvKiE8IDB4MDAwMDA4MDAgKi8NCiNkZWZpbmUgRVhUSV9TV0lFUl9TV0lFUjExICAgICAgICAgICAgICAgICAgRVhUSV9TV0lFUl9TV0lFUjExX01zayAgICAgICAgICAgICAvKiE8IFNvZnR3YXJlIEludGVycnVwdCBvbiBsaW5lIDExICovDQojZGVmaW5lIEVYVElfU1dJRVJfU1dJRVIxMl9Qb3MgICAgICAgICAgICAgICgxMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEVYVElfU1dJRVJfU1dJRVIxMl9Nc2sgICAgICAgICAgICAgICgweDFVIDw8IEVYVElfU1dJRVJfU1dJRVIxMl9Qb3MpICAgLyohPCAweDAwMDAxMDAwICovDQojZGVmaW5lIEVYVElfU1dJRVJfU1dJRVIxMiAgICAgICAgICAgICAgICAgIEVYVElfU1dJRVJfU1dJRVIxMl9Nc2sgICAgICAgICAgICAgLyohPCBTb2Z0d2FyZSBJbnRlcnJ1cHQgb24gbGluZSAxMiAqLw0KI2RlZmluZSBFWFRJX1NXSUVSX1NXSUVSMTNfUG9zICAgICAgICAgICAgICAoMTNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBFWFRJX1NXSUVSX1NXSUVSMTNfTXNrICAgICAgICAgICAgICAoMHgxVSA8PCBFWFRJX1NXSUVSX1NXSUVSMTNfUG9zKSAgIC8qITwgMHgwMDAwMjAwMCAqLw0KI2RlZmluZSBFWFRJX1NXSUVSX1NXSUVSMTMgICAgICAgICAgICAgICAgICBFWFRJX1NXSUVSX1NXSUVSMTNfTXNrICAgICAgICAgICAgIC8qITwgU29mdHdhcmUgSW50ZXJydXB0IG9uIGxpbmUgMTMgKi8NCiNkZWZpbmUgRVhUSV9TV0lFUl9TV0lFUjE0X1BvcyAgICAgICAgICAgICAgKDE0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRVhUSV9TV0lFUl9TV0lFUjE0X01zayAgICAgICAgICAgICAgKDB4MVUgPDwgRVhUSV9TV0lFUl9TV0lFUjE0X1BvcykgICAvKiE8IDB4MDAwMDQwMDAgKi8NCiNkZWZpbmUgRVhUSV9TV0lFUl9TV0lFUjE0ICAgICAgICAgICAgICAgICAgRVhUSV9TV0lFUl9TV0lFUjE0X01zayAgICAgICAgICAgICAvKiE8IFNvZnR3YXJlIEludGVycnVwdCBvbiBsaW5lIDE0ICovDQojZGVmaW5lIEVYVElfU1dJRVJfU1dJRVIxNV9Qb3MgICAgICAgICAgICAgICgxNVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEVYVElfU1dJRVJfU1dJRVIxNV9Nc2sgICAgICAgICAgICAgICgweDFVIDw8IEVYVElfU1dJRVJfU1dJRVIxNV9Qb3MpICAgLyohPCAweDAwMDA4MDAwICovDQojZGVmaW5lIEVYVElfU1dJRVJfU1dJRVIxNSAgICAgICAgICAgICAgICAgIEVYVElfU1dJRVJfU1dJRVIxNV9Nc2sgICAgICAgICAgICAgLyohPCBTb2Z0d2FyZSBJbnRlcnJ1cHQgb24gbGluZSAxNSAqLw0KI2RlZmluZSBFWFRJX1NXSUVSX1NXSUVSMTZfUG9zICAgICAgICAgICAgICAoMTZVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBFWFRJX1NXSUVSX1NXSUVSMTZfTXNrICAgICAgICAgICAgICAoMHgxVSA8PCBFWFRJX1NXSUVSX1NXSUVSMTZfUG9zKSAgIC8qITwgMHgwMDAxMDAwMCAqLw0KI2RlZmluZSBFWFRJX1NXSUVSX1NXSUVSMTYgICAgICAgICAgICAgICAgICBFWFRJX1NXSUVSX1NXSUVSMTZfTXNrICAgICAgICAgICAgIC8qITwgU29mdHdhcmUgSW50ZXJydXB0IG9uIGxpbmUgMTYgKi8NCiNkZWZpbmUgRVhUSV9TV0lFUl9TV0lFUjE3X1BvcyAgICAgICAgICAgICAgKDE3VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRVhUSV9TV0lFUl9TV0lFUjE3X01zayAgICAgICAgICAgICAgKDB4MVUgPDwgRVhUSV9TV0lFUl9TV0lFUjE3X1BvcykgICAvKiE8IDB4MDAwMjAwMDAgKi8NCiNkZWZpbmUgRVhUSV9TV0lFUl9TV0lFUjE3ICAgICAgICAgICAgICAgICAgRVhUSV9TV0lFUl9TV0lFUjE3X01zayAgICAgICAgICAgICAvKiE8IFNvZnR3YXJlIEludGVycnVwdCBvbiBsaW5lIDE3ICovDQojZGVmaW5lIEVYVElfU1dJRVJfU1dJRVIxOF9Qb3MgICAgICAgICAgICAgICgxOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEVYVElfU1dJRVJfU1dJRVIxOF9Nc2sgICAgICAgICAgICAgICgweDFVIDw8IEVYVElfU1dJRVJfU1dJRVIxOF9Qb3MpICAgLyohPCAweDAwMDQwMDAwICovDQojZGVmaW5lIEVYVElfU1dJRVJfU1dJRVIxOCAgICAgICAgICAgICAgICAgIEVYVElfU1dJRVJfU1dJRVIxOF9Nc2sgICAgICAgICAgICAgLyohPCBTb2Z0d2FyZSBJbnRlcnJ1cHQgb24gbGluZSAxOCAqLw0KI2RlZmluZSBFWFRJX1NXSUVSX1NXSUVSMTlfUG9zICAgICAgICAgICAgICAoMTlVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBFWFRJX1NXSUVSX1NXSUVSMTlfTXNrICAgICAgICAgICAgICAoMHgxVSA8PCBFWFRJX1NXSUVSX1NXSUVSMTlfUG9zKSAgIC8qITwgMHgwMDA4MDAwMCAqLw0KI2RlZmluZSBFWFRJX1NXSUVSX1NXSUVSMTkgICAgICAgICAgICAgICAgICBFWFRJX1NXSUVSX1NXSUVSMTlfTXNrICAgICAgICAgICAgIC8qITwgU29mdHdhcmUgSW50ZXJydXB0IG9uIGxpbmUgMTkgKi8NCiNkZWZpbmUgRVhUSV9TV0lFUl9TV0lFUjIwX1BvcyAgICAgICAgICAgICAgKDIwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRVhUSV9TV0lFUl9TV0lFUjIwX01zayAgICAgICAgICAgICAgKDB4MVUgPDwgRVhUSV9TV0lFUl9TV0lFUjIwX1BvcykgICAvKiE8IDB4MDAxMDAwMDAgKi8NCiNkZWZpbmUgRVhUSV9TV0lFUl9TV0lFUjIwICAgICAgICAgICAgICAgICAgRVhUSV9TV0lFUl9TV0lFUjIwX01zayAgICAgICAgICAgICAvKiE8IFNvZnR3YXJlIEludGVycnVwdCBvbiBsaW5lIDIwICovDQojZGVmaW5lIEVYVElfU1dJRVJfU1dJRVIyMV9Qb3MgICAgICAgICAgICAgICgyMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEVYVElfU1dJRVJfU1dJRVIyMV9Nc2sgICAgICAgICAgICAgICgweDFVIDw8IEVYVElfU1dJRVJfU1dJRVIyMV9Qb3MpICAgLyohPCAweDAwMjAwMDAwICovDQojZGVmaW5lIEVYVElfU1dJRVJfU1dJRVIyMSAgICAgICAgICAgICAgICAgIEVYVElfU1dJRVJfU1dJRVIyMV9Nc2sgICAgICAgICAgICAgLyohPCBTb2Z0d2FyZSBJbnRlcnJ1cHQgb24gbGluZSAyMSAqLw0KI2RlZmluZSBFWFRJX1NXSUVSX1NXSUVSMjJfUG9zICAgICAgICAgICAgICAoMjJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBFWFRJX1NXSUVSX1NXSUVSMjJfTXNrICAgICAgICAgICAgICAoMHgxVSA8PCBFWFRJX1NXSUVSX1NXSUVSMjJfUG9zKSAgIC8qITwgMHgwMDQwMDAwMCAqLw0KI2RlZmluZSBFWFRJX1NXSUVSX1NXSUVSMjIgICAgICAgICAgICAgICAgICBFWFRJX1NXSUVSX1NXSUVSMjJfTXNrICAgICAgICAgICAgIC8qITwgU29mdHdhcmUgSW50ZXJydXB0IG9uIGxpbmUgMjIgKi8NCiNkZWZpbmUgRVhUSV9TV0lFUl9TV0lFUjIzX1BvcyAgICAgICAgICAgICAgKDIzVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRVhUSV9TV0lFUl9TV0lFUjIzX01zayAgICAgICAgICAgICAgKDB4MVUgPDwgRVhUSV9TV0lFUl9TV0lFUjIzX1BvcykgICAvKiE8IDB4MDA4MDAwMDAgKi8NCiNkZWZpbmUgRVhUSV9TV0lFUl9TV0lFUjIzICAgICAgICAgICAgICAgICAgRVhUSV9TV0lFUl9TV0lFUjIzX01zayAgICAgICAgICAgICAvKiE8IFNvZnR3YXJlIEludGVycnVwdCBvbiBsaW5lIDIzICovDQoNCi8qIFJlZmVyZW5jZXMgRGVmaW5lcyAqLw0KI2RlZmluZSAgRVhUSV9TV0lFUl9TV0kwIEVYVElfU1dJRVJfU1dJRVIwDQojZGVmaW5lICBFWFRJX1NXSUVSX1NXSTEgRVhUSV9TV0lFUl9TV0lFUjENCiNkZWZpbmUgIEVYVElfU1dJRVJfU1dJMiBFWFRJX1NXSUVSX1NXSUVSMg0KI2RlZmluZSAgRVhUSV9TV0lFUl9TV0kzIEVYVElfU1dJRVJfU1dJRVIzDQojZGVmaW5lICBFWFRJX1NXSUVSX1NXSTQgRVhUSV9TV0lFUl9TV0lFUjQNCiNkZWZpbmUgIEVYVElfU1dJRVJfU1dJNSBFWFRJX1NXSUVSX1NXSUVSNQ0KI2RlZmluZSAgRVhUSV9TV0lFUl9TV0k2IEVYVElfU1dJRVJfU1dJRVI2DQojZGVmaW5lICBFWFRJX1NXSUVSX1NXSTcgRVhUSV9TV0lFUl9TV0lFUjcNCiNkZWZpbmUgIEVYVElfU1dJRVJfU1dJOCBFWFRJX1NXSUVSX1NXSUVSOA0KI2RlZmluZSAgRVhUSV9TV0lFUl9TV0k5IEVYVElfU1dJRVJfU1dJRVI5DQojZGVmaW5lICBFWFRJX1NXSUVSX1NXSTEwIEVYVElfU1dJRVJfU1dJRVIxMA0KI2RlZmluZSAgRVhUSV9TV0lFUl9TV0kxMSBFWFRJX1NXSUVSX1NXSUVSMTENCiNkZWZpbmUgIEVYVElfU1dJRVJfU1dJMTIgRVhUSV9TV0lFUl9TV0lFUjEyDQojZGVmaW5lICBFWFRJX1NXSUVSX1NXSTEzIEVYVElfU1dJRVJfU1dJRVIxMw0KI2RlZmluZSAgRVhUSV9TV0lFUl9TV0kxNCBFWFRJX1NXSUVSX1NXSUVSMTQNCiNkZWZpbmUgIEVYVElfU1dJRVJfU1dJMTUgRVhUSV9TV0lFUl9TV0lFUjE1DQojZGVmaW5lICBFWFRJX1NXSUVSX1NXSTE2IEVYVElfU1dJRVJfU1dJRVIxNg0KI2RlZmluZSAgRVhUSV9TV0lFUl9TV0kxNyBFWFRJX1NXSUVSX1NXSUVSMTcNCiNkZWZpbmUgIEVYVElfU1dJRVJfU1dJMTggRVhUSV9TV0lFUl9TV0lFUjE4DQojZGVmaW5lICBFWFRJX1NXSUVSX1NXSTE5IEVYVElfU1dJRVJfU1dJRVIxOQ0KI2RlZmluZSAgRVhUSV9TV0lFUl9TV0kyMCBFWFRJX1NXSUVSX1NXSUVSMjANCiNkZWZpbmUgIEVYVElfU1dJRVJfU1dJMjEgRVhUSV9TV0lFUl9TV0lFUjIxDQojZGVmaW5lICBFWFRJX1NXSUVSX1NXSTIyIEVYVElfU1dJRVJfU1dJRVIyMg0KI2RlZmluZSAgRVhUSV9TV0lFUl9TV0kyMyBFWFRJX1NXSUVSX1NXSUVSMjMNCg0KLyoqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBFWFRJX1BSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgRVhUSV9QUl9QUjBfUG9zICAgICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRVhUSV9QUl9QUjBfTXNrICAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgRVhUSV9QUl9QUjBfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDAwMDEgKi8NCiNkZWZpbmUgRVhUSV9QUl9QUjAgICAgICAgICAgICAgICAgICAgICAgICAgRVhUSV9QUl9QUjBfTXNrICAgICAgICAgICAgICAgICAgICAvKiE8IFBlbmRpbmcgYml0IGZvciBsaW5lIDAgKi8NCiNkZWZpbmUgRVhUSV9QUl9QUjFfUG9zICAgICAgICAgICAgICAgICAgICAgKDFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRVhUSV9QUl9QUjFfTXNrICAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgRVhUSV9QUl9QUjFfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDAwMDIgKi8NCiNkZWZpbmUgRVhUSV9QUl9QUjEgICAgICAgICAgICAgICAgICAgICAgICAgRVhUSV9QUl9QUjFfTXNrICAgICAgICAgICAgICAgICAgICAvKiE8IFBlbmRpbmcgYml0IGZvciBsaW5lIDEgKi8NCiNkZWZpbmUgRVhUSV9QUl9QUjJfUG9zICAgICAgICAgICAgICAgICAgICAgKDJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRVhUSV9QUl9QUjJfTXNrICAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgRVhUSV9QUl9QUjJfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDAwMDQgKi8NCiNkZWZpbmUgRVhUSV9QUl9QUjIgICAgICAgICAgICAgICAgICAgICAgICAgRVhUSV9QUl9QUjJfTXNrICAgICAgICAgICAgICAgICAgICAvKiE8IFBlbmRpbmcgYml0IGZvciBsaW5lIDIgKi8NCiNkZWZpbmUgRVhUSV9QUl9QUjNfUG9zICAgICAgICAgICAgICAgICAgICAgKDNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRVhUSV9QUl9QUjNfTXNrICAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgRVhUSV9QUl9QUjNfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDAwMDggKi8NCiNkZWZpbmUgRVhUSV9QUl9QUjMgICAgICAgICAgICAgICAgICAgICAgICAgRVhUSV9QUl9QUjNfTXNrICAgICAgICAgICAgICAgICAgICAvKiE8IFBlbmRpbmcgYml0IGZvciBsaW5lIDMgKi8NCiNkZWZpbmUgRVhUSV9QUl9QUjRfUG9zICAgICAgICAgICAgICAgICAgICAgKDRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRVhUSV9QUl9QUjRfTXNrICAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgRVhUSV9QUl9QUjRfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDAwMTAgKi8NCiNkZWZpbmUgRVhUSV9QUl9QUjQgICAgICAgICAgICAgICAgICAgICAgICAgRVhUSV9QUl9QUjRfTXNrICAgICAgICAgICAgICAgICAgICAvKiE8IFBlbmRpbmcgYml0IGZvciBsaW5lIDQgKi8NCiNkZWZpbmUgRVhUSV9QUl9QUjVfUG9zICAgICAgICAgICAgICAgICAgICAgKDVVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRVhUSV9QUl9QUjVfTXNrICAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgRVhUSV9QUl9QUjVfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDAwMjAgKi8NCiNkZWZpbmUgRVhUSV9QUl9QUjUgICAgICAgICAgICAgICAgICAgICAgICAgRVhUSV9QUl9QUjVfTXNrICAgICAgICAgICAgICAgICAgICAvKiE8IFBlbmRpbmcgYml0IGZvciBsaW5lIDUgKi8NCiNkZWZpbmUgRVhUSV9QUl9QUjZfUG9zICAgICAgICAgICAgICAgICAgICAgKDZVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRVhUSV9QUl9QUjZfTXNrICAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgRVhUSV9QUl9QUjZfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDAwNDAgKi8NCiNkZWZpbmUgRVhUSV9QUl9QUjYgICAgICAgICAgICAgICAgICAgICAgICAgRVhUSV9QUl9QUjZfTXNrICAgICAgICAgICAgICAgICAgICAvKiE8IFBlbmRpbmcgYml0IGZvciBsaW5lIDYgKi8NCiNkZWZpbmUgRVhUSV9QUl9QUjdfUG9zICAgICAgICAgICAgICAgICAgICAgKDdVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRVhUSV9QUl9QUjdfTXNrICAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgRVhUSV9QUl9QUjdfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDAwODAgKi8NCiNkZWZpbmUgRVhUSV9QUl9QUjcgICAgICAgICAgICAgICAgICAgICAgICAgRVhUSV9QUl9QUjdfTXNrICAgICAgICAgICAgICAgICAgICAvKiE8IFBlbmRpbmcgYml0IGZvciBsaW5lIDcgKi8NCiNkZWZpbmUgRVhUSV9QUl9QUjhfUG9zICAgICAgICAgICAgICAgICAgICAgKDhVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRVhUSV9QUl9QUjhfTXNrICAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgRVhUSV9QUl9QUjhfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDAxMDAgKi8NCiNkZWZpbmUgRVhUSV9QUl9QUjggICAgICAgICAgICAgICAgICAgICAgICAgRVhUSV9QUl9QUjhfTXNrICAgICAgICAgICAgICAgICAgICAvKiE8IFBlbmRpbmcgYml0IGZvciBsaW5lIDggKi8NCiNkZWZpbmUgRVhUSV9QUl9QUjlfUG9zICAgICAgICAgICAgICAgICAgICAgKDlVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRVhUSV9QUl9QUjlfTXNrICAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgRVhUSV9QUl9QUjlfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDAyMDAgKi8NCiNkZWZpbmUgRVhUSV9QUl9QUjkgICAgICAgICAgICAgICAgICAgICAgICAgRVhUSV9QUl9QUjlfTXNrICAgICAgICAgICAgICAgICAgICAvKiE8IFBlbmRpbmcgYml0IGZvciBsaW5lIDkgKi8NCiNkZWZpbmUgRVhUSV9QUl9QUjEwX1BvcyAgICAgICAgICAgICAgICAgICAgKDEwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRVhUSV9QUl9QUjEwX01zayAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgRVhUSV9QUl9QUjEwX1BvcykgICAgICAgICAvKiE8IDB4MDAwMDA0MDAgKi8NCiNkZWZpbmUgRVhUSV9QUl9QUjEwICAgICAgICAgICAgICAgICAgICAgICAgRVhUSV9QUl9QUjEwX01zayAgICAgICAgICAgICAgICAgICAvKiE8IFBlbmRpbmcgYml0IGZvciBsaW5lIDEwICovDQojZGVmaW5lIEVYVElfUFJfUFIxMV9Qb3MgICAgICAgICAgICAgICAgICAgICgxMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEVYVElfUFJfUFIxMV9Nc2sgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IEVYVElfUFJfUFIxMV9Qb3MpICAgICAgICAgLyohPCAweDAwMDAwODAwICovDQojZGVmaW5lIEVYVElfUFJfUFIxMSAgICAgICAgICAgICAgICAgICAgICAgIEVYVElfUFJfUFIxMV9Nc2sgICAgICAgICAgICAgICAgICAgLyohPCBQZW5kaW5nIGJpdCBmb3IgbGluZSAxMSAqLw0KI2RlZmluZSBFWFRJX1BSX1BSMTJfUG9zICAgICAgICAgICAgICAgICAgICAoMTJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBFWFRJX1BSX1BSMTJfTXNrICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBFWFRJX1BSX1BSMTJfUG9zKSAgICAgICAgIC8qITwgMHgwMDAwMTAwMCAqLw0KI2RlZmluZSBFWFRJX1BSX1BSMTIgICAgICAgICAgICAgICAgICAgICAgICBFWFRJX1BSX1BSMTJfTXNrICAgICAgICAgICAgICAgICAgIC8qITwgUGVuZGluZyBiaXQgZm9yIGxpbmUgMTIgKi8NCiNkZWZpbmUgRVhUSV9QUl9QUjEzX1BvcyAgICAgICAgICAgICAgICAgICAgKDEzVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRVhUSV9QUl9QUjEzX01zayAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgRVhUSV9QUl9QUjEzX1BvcykgICAgICAgICAvKiE8IDB4MDAwMDIwMDAgKi8NCiNkZWZpbmUgRVhUSV9QUl9QUjEzICAgICAgICAgICAgICAgICAgICAgICAgRVhUSV9QUl9QUjEzX01zayAgICAgICAgICAgICAgICAgICAvKiE8IFBlbmRpbmcgYml0IGZvciBsaW5lIDEzICovDQojZGVmaW5lIEVYVElfUFJfUFIxNF9Qb3MgICAgICAgICAgICAgICAgICAgICgxNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEVYVElfUFJfUFIxNF9Nc2sgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IEVYVElfUFJfUFIxNF9Qb3MpICAgICAgICAgLyohPCAweDAwMDA0MDAwICovDQojZGVmaW5lIEVYVElfUFJfUFIxNCAgICAgICAgICAgICAgICAgICAgICAgIEVYVElfUFJfUFIxNF9Nc2sgICAgICAgICAgICAgICAgICAgLyohPCBQZW5kaW5nIGJpdCBmb3IgbGluZSAxNCAqLw0KI2RlZmluZSBFWFRJX1BSX1BSMTVfUG9zICAgICAgICAgICAgICAgICAgICAoMTVVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBFWFRJX1BSX1BSMTVfTXNrICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBFWFRJX1BSX1BSMTVfUG9zKSAgICAgICAgIC8qITwgMHgwMDAwODAwMCAqLw0KI2RlZmluZSBFWFRJX1BSX1BSMTUgICAgICAgICAgICAgICAgICAgICAgICBFWFRJX1BSX1BSMTVfTXNrICAgICAgICAgICAgICAgICAgIC8qITwgUGVuZGluZyBiaXQgZm9yIGxpbmUgMTUgKi8NCiNkZWZpbmUgRVhUSV9QUl9QUjE2X1BvcyAgICAgICAgICAgICAgICAgICAgKDE2VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRVhUSV9QUl9QUjE2X01zayAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgRVhUSV9QUl9QUjE2X1BvcykgICAgICAgICAvKiE8IDB4MDAwMTAwMDAgKi8NCiNkZWZpbmUgRVhUSV9QUl9QUjE2ICAgICAgICAgICAgICAgICAgICAgICAgRVhUSV9QUl9QUjE2X01zayAgICAgICAgICAgICAgICAgICAvKiE8IFBlbmRpbmcgYml0IGZvciBsaW5lIDE2ICovDQojZGVmaW5lIEVYVElfUFJfUFIxN19Qb3MgICAgICAgICAgICAgICAgICAgICgxN1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEVYVElfUFJfUFIxN19Nc2sgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IEVYVElfUFJfUFIxN19Qb3MpICAgICAgICAgLyohPCAweDAwMDIwMDAwICovDQojZGVmaW5lIEVYVElfUFJfUFIxNyAgICAgICAgICAgICAgICAgICAgICAgIEVYVElfUFJfUFIxN19Nc2sgICAgICAgICAgICAgICAgICAgLyohPCBQZW5kaW5nIGJpdCBmb3IgbGluZSAxNyAqLw0KI2RlZmluZSBFWFRJX1BSX1BSMThfUG9zICAgICAgICAgICAgICAgICAgICAoMThVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBFWFRJX1BSX1BSMThfTXNrICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBFWFRJX1BSX1BSMThfUG9zKSAgICAgICAgIC8qITwgMHgwMDA0MDAwMCAqLw0KI2RlZmluZSBFWFRJX1BSX1BSMTggICAgICAgICAgICAgICAgICAgICAgICBFWFRJX1BSX1BSMThfTXNrICAgICAgICAgICAgICAgICAgIC8qITwgUGVuZGluZyBiaXQgZm9yIGxpbmUgMTggKi8NCiNkZWZpbmUgRVhUSV9QUl9QUjE5X1BvcyAgICAgICAgICAgICAgICAgICAgKDE5VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRVhUSV9QUl9QUjE5X01zayAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgRVhUSV9QUl9QUjE5X1BvcykgICAgICAgICAvKiE8IDB4MDAwODAwMDAgKi8NCiNkZWZpbmUgRVhUSV9QUl9QUjE5ICAgICAgICAgICAgICAgICAgICAgICAgRVhUSV9QUl9QUjE5X01zayAgICAgICAgICAgICAgICAgICAvKiE8IFBlbmRpbmcgYml0IGZvciBsaW5lIDE5ICovDQojZGVmaW5lIEVYVElfUFJfUFIyMF9Qb3MgICAgICAgICAgICAgICAgICAgICgyMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEVYVElfUFJfUFIyMF9Nc2sgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IEVYVElfUFJfUFIyMF9Qb3MpICAgICAgICAgLyohPCAweDAwMTAwMDAwICovDQojZGVmaW5lIEVYVElfUFJfUFIyMCAgICAgICAgICAgICAgICAgICAgICAgIEVYVElfUFJfUFIyMF9Nc2sgICAgICAgICAgICAgICAgICAgLyohPCBQZW5kaW5nIGJpdCBmb3IgbGluZSAyMCAqLw0KI2RlZmluZSBFWFRJX1BSX1BSMjFfUG9zICAgICAgICAgICAgICAgICAgICAoMjFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBFWFRJX1BSX1BSMjFfTXNrICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBFWFRJX1BSX1BSMjFfUG9zKSAgICAgICAgIC8qITwgMHgwMDIwMDAwMCAqLw0KI2RlZmluZSBFWFRJX1BSX1BSMjEgICAgICAgICAgICAgICAgICAgICAgICBFWFRJX1BSX1BSMjFfTXNrICAgICAgICAgICAgICAgICAgIC8qITwgUGVuZGluZyBiaXQgZm9yIGxpbmUgMjEgKi8NCiNkZWZpbmUgRVhUSV9QUl9QUjIyX1BvcyAgICAgICAgICAgICAgICAgICAgKDIyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRVhUSV9QUl9QUjIyX01zayAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgRVhUSV9QUl9QUjIyX1BvcykgICAgICAgICAvKiE8IDB4MDA0MDAwMDAgKi8NCiNkZWZpbmUgRVhUSV9QUl9QUjIyICAgICAgICAgICAgICAgICAgICAgICAgRVhUSV9QUl9QUjIyX01zayAgICAgICAgICAgICAgICAgICAvKiE8IFBlbmRpbmcgYml0IGZvciBsaW5lIDIyICovDQojZGVmaW5lIEVYVElfUFJfUFIyM19Qb3MgICAgICAgICAgICAgICAgICAgICgyM1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEVYVElfUFJfUFIyM19Nc2sgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IEVYVElfUFJfUFIyM19Qb3MpICAgICAgICAgLyohPCAweDAwODAwMDAwICovDQojZGVmaW5lIEVYVElfUFJfUFIyMyAgICAgICAgICAgICAgICAgICAgICAgIEVYVElfUFJfUFIyM19Nc2sgICAgICAgICAgICAgICAgICAgLyohPCBQZW5kaW5nIGJpdCBmb3IgbGluZSAyMyAqLw0KDQovKiBSZWZlcmVuY2VzIERlZmluZXMgKi8NCiNkZWZpbmUgIEVYVElfUFJfUElGMCBFWFRJX1BSX1BSMA0KI2RlZmluZSAgRVhUSV9QUl9QSUYxIEVYVElfUFJfUFIxDQojZGVmaW5lICBFWFRJX1BSX1BJRjIgRVhUSV9QUl9QUjINCiNkZWZpbmUgIEVYVElfUFJfUElGMyBFWFRJX1BSX1BSMw0KI2RlZmluZSAgRVhUSV9QUl9QSUY0IEVYVElfUFJfUFI0DQojZGVmaW5lICBFWFRJX1BSX1BJRjUgRVhUSV9QUl9QUjUNCiNkZWZpbmUgIEVYVElfUFJfUElGNiBFWFRJX1BSX1BSNg0KI2RlZmluZSAgRVhUSV9QUl9QSUY3IEVYVElfUFJfUFI3DQojZGVmaW5lICBFWFRJX1BSX1BJRjggRVhUSV9QUl9QUjgNCiNkZWZpbmUgIEVYVElfUFJfUElGOSBFWFRJX1BSX1BSOQ0KI2RlZmluZSAgRVhUSV9QUl9QSUYxMCBFWFRJX1BSX1BSMTANCiNkZWZpbmUgIEVYVElfUFJfUElGMTEgRVhUSV9QUl9QUjExDQojZGVmaW5lICBFWFRJX1BSX1BJRjEyIEVYVElfUFJfUFIxMg0KI2RlZmluZSAgRVhUSV9QUl9QSUYxMyBFWFRJX1BSX1BSMTMNCiNkZWZpbmUgIEVYVElfUFJfUElGMTQgRVhUSV9QUl9QUjE0DQojZGVmaW5lICBFWFRJX1BSX1BJRjE1IEVYVElfUFJfUFIxNQ0KI2RlZmluZSAgRVhUSV9QUl9QSUYxNiBFWFRJX1BSX1BSMTYNCiNkZWZpbmUgIEVYVElfUFJfUElGMTcgRVhUSV9QUl9QUjE3DQojZGVmaW5lICBFWFRJX1BSX1BJRjE4IEVYVElfUFJfUFIxOA0KI2RlZmluZSAgRVhUSV9QUl9QSUYxOSBFWFRJX1BSX1BSMTkNCiNkZWZpbmUgIEVYVElfUFJfUElGMjAgRVhUSV9QUl9QUjIwDQojZGVmaW5lICBFWFRJX1BSX1BJRjIxIEVYVElfUFJfUFIyMQ0KI2RlZmluZSAgRVhUSV9QUl9QSUYyMiBFWFRJX1BSX1BSMjINCiNkZWZpbmUgIEVYVElfUFJfUElGMjMgRVhUSV9QUl9QUjIzDQoNCi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovDQovKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLw0KLyogICAgICAgICAgICAgICAgRkxBU0gsIERBVEEgRUVQUk9NIGFuZCBPcHRpb24gQnl0ZXMgUmVnaXN0ZXJzICAgICAgICAgICAgICAgKi8NCi8qICAgICAgICAgICAgICAgICAgICAgICAgKEZMQVNILCBEQVRBX0VFUFJPTSwgT0IpICAgICAgICAgICAgICAgICAgICAgICAgICAgICovDQovKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLw0KLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8NCg0KLyoqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBGTEFTSF9BQ1IgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgRkxBU0hfQUNSX0xBVEVOQ1lfUG9zICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRkxBU0hfQUNSX0xBVEVOQ1lfTXNrICAgICAgICAgICAgICAgICgweDFVIDw8IEZMQVNIX0FDUl9MQVRFTkNZX1BvcykgICAvKiE8IDB4MDAwMDAwMDEgKi8NCiNkZWZpbmUgRkxBU0hfQUNSX0xBVEVOQ1kgICAgICAgICAgICAgICAgICAgIEZMQVNIX0FDUl9MQVRFTkNZX01zayAgICAgICAgICAgICAvKiE8IExhdGVuY3kgKi8NCiNkZWZpbmUgRkxBU0hfQUNSX1BSRlRFTl9Qb3MgICAgICAgICAgICAgICAgICgxVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRkxBU0hfQUNSX1BSRlRFTl9Nc2sgICAgICAgICAgICAgICAgICgweDFVIDw8IEZMQVNIX0FDUl9QUkZURU5fUG9zKSAgICAvKiE8IDB4MDAwMDAwMDIgKi8NCiNkZWZpbmUgRkxBU0hfQUNSX1BSRlRFTiAgICAgICAgICAgICAgICAgICAgIEZMQVNIX0FDUl9QUkZURU5fTXNrICAgICAgICAgICAgICAvKiE8IFByZWZldGNoIEJ1ZmZlciBFbmFibGUgKi8NCiNkZWZpbmUgRkxBU0hfQUNSX0FDQzY0X1BvcyAgICAgICAgICAgICAgICAgICgyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRkxBU0hfQUNSX0FDQzY0X01zayAgICAgICAgICAgICAgICAgICgweDFVIDw8IEZMQVNIX0FDUl9BQ0M2NF9Qb3MpICAgICAvKiE8IDB4MDAwMDAwMDQgKi8NCiNkZWZpbmUgRkxBU0hfQUNSX0FDQzY0ICAgICAgICAgICAgICAgICAgICAgIEZMQVNIX0FDUl9BQ0M2NF9Nc2sgICAgICAgICAgICAgICAvKiE8IEFjY2VzcyA2NCBiaXRzICovDQojZGVmaW5lIEZMQVNIX0FDUl9TTEVFUF9QRF9Qb3MgICAgICAgICAgICAgICAoM1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEZMQVNIX0FDUl9TTEVFUF9QRF9Nc2sgICAgICAgICAgICAgICAoMHgxVSA8PCBGTEFTSF9BQ1JfU0xFRVBfUERfUG9zKSAgLyohPCAweDAwMDAwMDA4ICovDQojZGVmaW5lIEZMQVNIX0FDUl9TTEVFUF9QRCAgICAgICAgICAgICAgICAgICBGTEFTSF9BQ1JfU0xFRVBfUERfTXNrICAgICAgICAgICAgLyohPCBGbGFzaCBtb2RlIGR1cmluZyBzbGVlcCBtb2RlICovDQojZGVmaW5lIEZMQVNIX0FDUl9SVU5fUERfUG9zICAgICAgICAgICAgICAgICAoNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEZMQVNIX0FDUl9SVU5fUERfTXNrICAgICAgICAgICAgICAgICAoMHgxVSA8PCBGTEFTSF9BQ1JfUlVOX1BEX1BvcykgICAgLyohPCAweDAwMDAwMDEwICovDQojZGVmaW5lIEZMQVNIX0FDUl9SVU5fUEQgICAgICAgICAgICAgICAgICAgICBGTEFTSF9BQ1JfUlVOX1BEX01zayAgICAgICAgICAgICAgLyohPCBGbGFzaCBtb2RlIGR1cmluZyBSVU4gbW9kZSAqLw0KDQovKioqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIEZMQVNIX1BFQ1IgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgRkxBU0hfUEVDUl9QRUxPQ0tfUG9zICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRkxBU0hfUEVDUl9QRUxPQ0tfTXNrICAgICAgICAgICAgICAgICgweDFVIDw8IEZMQVNIX1BFQ1JfUEVMT0NLX1BvcykgICAvKiE8IDB4MDAwMDAwMDEgKi8NCiNkZWZpbmUgRkxBU0hfUEVDUl9QRUxPQ0sgICAgICAgICAgICAgICAgICAgIEZMQVNIX1BFQ1JfUEVMT0NLX01zayAgICAgICAgICAgICAvKiE8IEZMQVNIX1BFQ1IgYW5kIEZsYXNoIGRhdGEgTG9jayAqLw0KI2RlZmluZSBGTEFTSF9QRUNSX1BSR0xPQ0tfUG9zICAgICAgICAgICAgICAgKDFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBGTEFTSF9QRUNSX1BSR0xPQ0tfTXNrICAgICAgICAgICAgICAgKDB4MVUgPDwgRkxBU0hfUEVDUl9QUkdMT0NLX1BvcykgIC8qITwgMHgwMDAwMDAwMiAqLw0KI2RlZmluZSBGTEFTSF9QRUNSX1BSR0xPQ0sgICAgICAgICAgICAgICAgICAgRkxBU0hfUEVDUl9QUkdMT0NLX01zayAgICAgICAgICAgIC8qITwgUHJvZ3JhbSBtYXRyaXggTG9jayAqLw0KI2RlZmluZSBGTEFTSF9QRUNSX09QVExPQ0tfUG9zICAgICAgICAgICAgICAgKDJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBGTEFTSF9QRUNSX09QVExPQ0tfTXNrICAgICAgICAgICAgICAgKDB4MVUgPDwgRkxBU0hfUEVDUl9PUFRMT0NLX1BvcykgIC8qITwgMHgwMDAwMDAwNCAqLw0KI2RlZmluZSBGTEFTSF9QRUNSX09QVExPQ0sgICAgICAgICAgICAgICAgICAgRkxBU0hfUEVDUl9PUFRMT0NLX01zayAgICAgICAgICAgIC8qITwgT3B0aW9uIGJ5dGUgbWF0cml4IExvY2sgKi8NCiNkZWZpbmUgRkxBU0hfUEVDUl9QUk9HX1BvcyAgICAgICAgICAgICAgICAgICgzVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRkxBU0hfUEVDUl9QUk9HX01zayAgICAgICAgICAgICAgICAgICgweDFVIDw8IEZMQVNIX1BFQ1JfUFJPR19Qb3MpICAgICAvKiE8IDB4MDAwMDAwMDggKi8NCiNkZWZpbmUgRkxBU0hfUEVDUl9QUk9HICAgICAgICAgICAgICAgICAgICAgIEZMQVNIX1BFQ1JfUFJPR19Nc2sgICAgICAgICAgICAgICAvKiE8IFByb2dyYW0gbWF0cml4IHNlbGVjdGlvbiAqLw0KI2RlZmluZSBGTEFTSF9QRUNSX0RBVEFfUG9zICAgICAgICAgICAgICAgICAgKDRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBGTEFTSF9QRUNSX0RBVEFfTXNrICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgRkxBU0hfUEVDUl9EQVRBX1BvcykgICAgIC8qITwgMHgwMDAwMDAxMCAqLw0KI2RlZmluZSBGTEFTSF9QRUNSX0RBVEEgICAgICAgICAgICAgICAgICAgICAgRkxBU0hfUEVDUl9EQVRBX01zayAgICAgICAgICAgICAgIC8qITwgRGF0YSBtYXRyaXggc2VsZWN0aW9uICovDQojZGVmaW5lIEZMQVNIX1BFQ1JfRlREV19Qb3MgICAgICAgICAgICAgICAgICAoOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEZMQVNIX1BFQ1JfRlREV19Nc2sgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBGTEFTSF9QRUNSX0ZURFdfUG9zKSAgICAgLyohPCAweDAwMDAwMTAwICovDQojZGVmaW5lIEZMQVNIX1BFQ1JfRlREVyAgICAgICAgICAgICAgICAgICAgICBGTEFTSF9QRUNSX0ZURFdfTXNrICAgICAgICAgICAgICAgLyohPCBGaXhlZCBUaW1lIERhdGEgd3JpdGUgZm9yIFdvcmQvSGFsZiBXb3JkL0J5dGUgcHJvZ3JhbW1pbmcgKi8NCiNkZWZpbmUgRkxBU0hfUEVDUl9FUkFTRV9Qb3MgICAgICAgICAgICAgICAgICg5VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRkxBU0hfUEVDUl9FUkFTRV9Nc2sgICAgICAgICAgICAgICAgICgweDFVIDw8IEZMQVNIX1BFQ1JfRVJBU0VfUG9zKSAgICAvKiE8IDB4MDAwMDAyMDAgKi8NCiNkZWZpbmUgRkxBU0hfUEVDUl9FUkFTRSAgICAgICAgICAgICAgICAgICAgIEZMQVNIX1BFQ1JfRVJBU0VfTXNrICAgICAgICAgICAgICAvKiE8IFBhZ2UgZXJhc2luZyBtb2RlICovDQojZGVmaW5lIEZMQVNIX1BFQ1JfRlBSR19Qb3MgICAgICAgICAgICAgICAgICAoMTBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEZMQVNIX1BFQ1JfRlBSR19Nc2sgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBGTEFTSF9QRUNSX0ZQUkdfUG9zKSAgICAgLyohPCAweDAwMDAwNDAwICovDQojZGVmaW5lIEZMQVNIX1BFQ1JfRlBSRyAgICAgICAgICAgICAgICAgICAgICBGTEFTSF9QRUNSX0ZQUkdfTXNrICAgICAgICAgICAgICAgLyohPCBGYXN0IFBhZ2UvSGFsZiBQYWdlIHByb2dyYW1taW5nIG1vZGUgKi8NCiNkZWZpbmUgRkxBU0hfUEVDUl9FT1BJRV9Qb3MgICAgICAgICAgICAgICAgICgxNlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRkxBU0hfUEVDUl9FT1BJRV9Nc2sgICAgICAgICAgICAgICAgICgweDFVIDw8IEZMQVNIX1BFQ1JfRU9QSUVfUG9zKSAgICAvKiE8IDB4MDAwMTAwMDAgKi8NCiNkZWZpbmUgRkxBU0hfUEVDUl9FT1BJRSAgICAgICAgICAgICAgICAgICAgIEZMQVNIX1BFQ1JfRU9QSUVfTXNrICAgICAgICAgICAgICAvKiE8IEVuZCBvZiBwcm9ncmFtbWluZyBpbnRlcnJ1cHQgKi8gDQojZGVmaW5lIEZMQVNIX1BFQ1JfRVJSSUVfUG9zICAgICAgICAgICAgICAgICAoMTdVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEZMQVNIX1BFQ1JfRVJSSUVfTXNrICAgICAgICAgICAgICAgICAoMHgxVSA8PCBGTEFTSF9QRUNSX0VSUklFX1BvcykgICAgLyohPCAweDAwMDIwMDAwICovDQojZGVmaW5lIEZMQVNIX1BFQ1JfRVJSSUUgICAgICAgICAgICAgICAgICAgICBGTEFTSF9QRUNSX0VSUklFX01zayAgICAgICAgICAgICAgLyohPCBFcnJvciBpbnRlcnJ1cHQgKi8gDQojZGVmaW5lIEZMQVNIX1BFQ1JfT0JMX0xBVU5DSF9Qb3MgICAgICAgICAgICAoMThVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEZMQVNIX1BFQ1JfT0JMX0xBVU5DSF9Nc2sgICAgICAgICAgICAoMHgxVSA8PCBGTEFTSF9QRUNSX09CTF9MQVVOQ0hfUG9zKSAvKiE8IDB4MDAwNDAwMDAgKi8NCiNkZWZpbmUgRkxBU0hfUEVDUl9PQkxfTEFVTkNIICAgICAgICAgICAgICAgIEZMQVNIX1BFQ1JfT0JMX0xBVU5DSF9Nc2sgICAgICAgICAvKiE8IExhdW5jaCB0aGUgb3B0aW9uIGJ5dGUgbG9hZGluZyAqLyANCg0KLyoqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIEZMQVNIX1BES0VZUiByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBGTEFTSF9QREtFWVJfUERLRVlSX1BvcyAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBGTEFTSF9QREtFWVJfUERLRVlSX01zayAgICAgICAgICAgICAgKDB4RkZGRkZGRkZVIDw8IEZMQVNIX1BES0VZUl9QREtFWVJfUG9zKSAvKiE8IDB4RkZGRkZGRkYgKi8NCiNkZWZpbmUgRkxBU0hfUERLRVlSX1BES0VZUiAgICAgICAgICAgICAgICAgIEZMQVNIX1BES0VZUl9QREtFWVJfTXNrICAgICAgICAgICAvKiE8IEZMQVNIX1BFQyBhbmQgZGF0YSBtYXRyaXggS2V5ICovDQoNCi8qKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBGTEFTSF9QRUtFWVIgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgRkxBU0hfUEVLRVlSX1BFS0VZUl9Qb3MgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRkxBU0hfUEVLRVlSX1BFS0VZUl9Nc2sgICAgICAgICAgICAgICgweEZGRkZGRkZGVSA8PCBGTEFTSF9QRUtFWVJfUEVLRVlSX1BvcykgLyohPCAweEZGRkZGRkZGICovDQojZGVmaW5lIEZMQVNIX1BFS0VZUl9QRUtFWVIgICAgICAgICAgICAgICAgICBGTEFTSF9QRUtFWVJfUEVLRVlSX01zayAgICAgICAgICAgLyohPCBGTEFTSF9QRUMgYW5kIGRhdGEgbWF0cml4IEtleSAqLw0KDQovKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgRkxBU0hfUFJHS0VZUiByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBGTEFTSF9QUkdLRVlSX1BSR0tFWVJfUG9zICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBGTEFTSF9QUkdLRVlSX1BSR0tFWVJfTXNrICAgICAgICAgICAgKDB4RkZGRkZGRkZVIDw8IEZMQVNIX1BSR0tFWVJfUFJHS0VZUl9Qb3MpIC8qITwgMHhGRkZGRkZGRiAqLw0KI2RlZmluZSBGTEFTSF9QUkdLRVlSX1BSR0tFWVIgICAgICAgICAgICAgICAgRkxBU0hfUFJHS0VZUl9QUkdLRVlSX01zayAgICAgICAgIC8qITwgUHJvZ3JhbSBtYXRyaXggS2V5ICovDQoNCi8qKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBGTEFTSF9PUFRLRVlSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIEZMQVNIX09QVEtFWVJfT1BUS0VZUl9Qb3MgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEZMQVNIX09QVEtFWVJfT1BUS0VZUl9Nc2sgICAgICAgICAgICAoMHhGRkZGRkZGRlUgPDwgRkxBU0hfT1BUS0VZUl9PUFRLRVlSX1BvcykgLyohPCAweEZGRkZGRkZGICovDQojZGVmaW5lIEZMQVNIX09QVEtFWVJfT1BUS0VZUiAgICAgICAgICAgICAgICBGTEFTSF9PUFRLRVlSX09QVEtFWVJfTXNrICAgICAgICAgLyohPCBPcHRpb24gYnl0ZXMgbWF0cml4IEtleSAqLw0KDQovKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgRkxBU0hfU1IgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIEZMQVNIX1NSX0JTWV9Qb3MgICAgICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEZMQVNIX1NSX0JTWV9Nc2sgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBGTEFTSF9TUl9CU1lfUG9zKSAgICAgICAgLyohPCAweDAwMDAwMDAxICovDQojZGVmaW5lIEZMQVNIX1NSX0JTWSAgICAgICAgICAgICAgICAgICAgICAgICBGTEFTSF9TUl9CU1lfTXNrICAgICAgICAgICAgICAgICAgLyohPCBCdXN5ICovDQojZGVmaW5lIEZMQVNIX1NSX0VPUF9Qb3MgICAgICAgICAgICAgICAgICAgICAoMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEZMQVNIX1NSX0VPUF9Nc2sgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBGTEFTSF9TUl9FT1BfUG9zKSAgICAgICAgLyohPCAweDAwMDAwMDAyICovDQojZGVmaW5lIEZMQVNIX1NSX0VPUCAgICAgICAgICAgICAgICAgICAgICAgICBGTEFTSF9TUl9FT1BfTXNrICAgICAgICAgICAgICAgICAgLyohPCBFbmQgT2YgUHJvZ3JhbW1pbmcqLw0KI2RlZmluZSBGTEFTSF9TUl9FTkRIVl9Qb3MgICAgICAgICAgICAgICAgICAgKDJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBGTEFTSF9TUl9FTkRIVl9Nc2sgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgRkxBU0hfU1JfRU5ESFZfUG9zKSAgICAgIC8qITwgMHgwMDAwMDAwNCAqLw0KI2RlZmluZSBGTEFTSF9TUl9FTkRIViAgICAgICAgICAgICAgICAgICAgICAgRkxBU0hfU1JfRU5ESFZfTXNrICAgICAgICAgICAgICAgIC8qITwgRW5kIG9mIGhpZ2ggdm9sdGFnZSAqLw0KI2RlZmluZSBGTEFTSF9TUl9SRUFEWV9Qb3MgICAgICAgICAgICAgICAgICAgKDNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBGTEFTSF9TUl9SRUFEWV9Nc2sgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgRkxBU0hfU1JfUkVBRFlfUG9zKSAgICAgIC8qITwgMHgwMDAwMDAwOCAqLw0KI2RlZmluZSBGTEFTSF9TUl9SRUFEWSAgICAgICAgICAgICAgICAgICAgICAgRkxBU0hfU1JfUkVBRFlfTXNrICAgICAgICAgICAgICAgIC8qITwgRmxhc2ggcmVhZHkgYWZ0ZXIgbG93IHBvd2VyIG1vZGUgKi8NCg0KI2RlZmluZSBGTEFTSF9TUl9XUlBFUlJfUG9zICAgICAgICAgICAgICAgICAgKDhVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBGTEFTSF9TUl9XUlBFUlJfTXNrICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgRkxBU0hfU1JfV1JQRVJSX1BvcykgICAgIC8qITwgMHgwMDAwMDEwMCAqLw0KI2RlZmluZSBGTEFTSF9TUl9XUlBFUlIgICAgICAgICAgICAgICAgICAgICAgRkxBU0hfU1JfV1JQRVJSX01zayAgICAgICAgICAgICAgIC8qITwgV3JpdGUgcHJvdGVjdGVkIGVycm9yICovDQojZGVmaW5lIEZMQVNIX1NSX1BHQUVSUl9Qb3MgICAgICAgICAgICAgICAgICAoOVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEZMQVNIX1NSX1BHQUVSUl9Nc2sgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBGTEFTSF9TUl9QR0FFUlJfUG9zKSAgICAgLyohPCAweDAwMDAwMjAwICovDQojZGVmaW5lIEZMQVNIX1NSX1BHQUVSUiAgICAgICAgICAgICAgICAgICAgICBGTEFTSF9TUl9QR0FFUlJfTXNrICAgICAgICAgICAgICAgLyohPCBQcm9ncmFtbWluZyBBbGlnbm1lbnQgRXJyb3IgKi8NCiNkZWZpbmUgRkxBU0hfU1JfU0laRVJSX1BvcyAgICAgICAgICAgICAgICAgICgxMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRkxBU0hfU1JfU0laRVJSX01zayAgICAgICAgICAgICAgICAgICgweDFVIDw8IEZMQVNIX1NSX1NJWkVSUl9Qb3MpICAgICAvKiE8IDB4MDAwMDA0MDAgKi8NCiNkZWZpbmUgRkxBU0hfU1JfU0laRVJSICAgICAgICAgICAgICAgICAgICAgIEZMQVNIX1NSX1NJWkVSUl9Nc2sgICAgICAgICAgICAgICAvKiE8IFNpemUgZXJyb3IgKi8NCiNkZWZpbmUgRkxBU0hfU1JfT1BUVkVSUl9Qb3MgICAgICAgICAgICAgICAgICgxMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRkxBU0hfU1JfT1BUVkVSUl9Nc2sgICAgICAgICAgICAgICAgICgweDFVIDw8IEZMQVNIX1NSX09QVFZFUlJfUG9zKSAgICAvKiE8IDB4MDAwMDA4MDAgKi8NCiNkZWZpbmUgRkxBU0hfU1JfT1BUVkVSUiAgICAgICAgICAgICAgICAgICAgIEZMQVNIX1NSX09QVFZFUlJfTXNrICAgICAgICAgICAgICAvKiE8IE9wdGlvbiB2YWxpZGl0eSBlcnJvciAqLw0KI2RlZmluZSBGTEFTSF9TUl9PUFRWRVJSVVNSX1BvcyAgICAgICAgICAgICAgKDEyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBGTEFTSF9TUl9PUFRWRVJSVVNSX01zayAgICAgICAgICAgICAgKDB4MVUgPDwgRkxBU0hfU1JfT1BUVkVSUlVTUl9Qb3MpIC8qITwgMHgwMDAwMTAwMCAqLw0KI2RlZmluZSBGTEFTSF9TUl9PUFRWRVJSVVNSICAgICAgICAgICAgICAgICAgRkxBU0hfU1JfT1BUVkVSUlVTUl9Nc2sgICAgICAgICAgIC8qITwgT3B0aW9uIFVzZXIgdmFsaWRpdHkgZXJyb3IgKi8NCg0KLyoqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIEZMQVNIX09CUiByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgRkxBU0hfT0JSX1JEUFJUX1BvcyAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRkxBU0hfT0JSX1JEUFJUX01zayAgICAgICAgICAgICAgICAgICgweEZGVSA8PCBGTEFTSF9PQlJfUkRQUlRfUG9zKSAgICAvKiE8IDB4MDAwMDAwRkYgKi8NCiNkZWZpbmUgRkxBU0hfT0JSX1JEUFJUICAgICAgICAgICAgICAgICAgICAgIEZMQVNIX09CUl9SRFBSVF9Nc2sgICAgICAgICAgICAgICAvKiE8IFJlYWQgUHJvdGVjdGlvbiAqLw0KI2RlZmluZSBGTEFTSF9PQlJfQk9SX0xFVl9Qb3MgICAgICAgICAgICAgICAgKDE2VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBGTEFTSF9PQlJfQk9SX0xFVl9Nc2sgICAgICAgICAgICAgICAgKDB4RlUgPDwgRkxBU0hfT0JSX0JPUl9MRVZfUG9zKSAgIC8qITwgMHgwMDBGMDAwMCAqLw0KI2RlZmluZSBGTEFTSF9PQlJfQk9SX0xFViAgICAgICAgICAgICAgICAgICAgRkxBU0hfT0JSX0JPUl9MRVZfTXNrICAgICAgICAgICAgIC8qITwgQk9SX0xFVlszOjBdIEJyb3duIE91dCBSZXNldCBUaHJlc2hvbGQgTGV2ZWwqLw0KI2RlZmluZSBGTEFTSF9PQlJfVVNFUl9Qb3MgICAgICAgICAgICAgICAgICAgKDIwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBGTEFTSF9PQlJfVVNFUl9Nc2sgICAgICAgICAgICAgICAgICAgKDB4RlUgPDwgRkxBU0hfT0JSX1VTRVJfUG9zKSAgICAgIC8qITwgMHgwMEYwMDAwMCAqLw0KI2RlZmluZSBGTEFTSF9PQlJfVVNFUiAgICAgICAgICAgICAgICAgICAgICAgRkxBU0hfT0JSX1VTRVJfTXNrICAgICAgICAgICAgICAgIC8qITwgVXNlciBPcHRpb24gQnl0ZXMgKi8NCiNkZWZpbmUgRkxBU0hfT0JSX0lXREdfU1dfUG9zICAgICAgICAgICAgICAgICgyMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRkxBU0hfT0JSX0lXREdfU1dfTXNrICAgICAgICAgICAgICAgICgweDFVIDw8IEZMQVNIX09CUl9JV0RHX1NXX1BvcykgICAvKiE8IDB4MDAxMDAwMDAgKi8NCiNkZWZpbmUgRkxBU0hfT0JSX0lXREdfU1cgICAgICAgICAgICAgICAgICAgIEZMQVNIX09CUl9JV0RHX1NXX01zayAgICAgICAgICAgICAvKiE8IElXREdfU1cgKi8NCiNkZWZpbmUgRkxBU0hfT0JSX25SU1RfU1RPUF9Qb3MgICAgICAgICAgICAgICgyMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRkxBU0hfT0JSX25SU1RfU1RPUF9Nc2sgICAgICAgICAgICAgICgweDFVIDw8IEZMQVNIX09CUl9uUlNUX1NUT1BfUG9zKSAvKiE8IDB4MDAyMDAwMDAgKi8NCiNkZWZpbmUgRkxBU0hfT0JSX25SU1RfU1RPUCAgICAgICAgICAgICAgICAgIEZMQVNIX09CUl9uUlNUX1NUT1BfTXNrICAgICAgICAgICAvKiE8IG5SU1RfU1RPUCAqLw0KI2RlZmluZSBGTEFTSF9PQlJfblJTVF9TVERCWV9Qb3MgICAgICAgICAgICAgKDIyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBGTEFTSF9PQlJfblJTVF9TVERCWV9Nc2sgICAgICAgICAgICAgKDB4MVUgPDwgRkxBU0hfT0JSX25SU1RfU1REQllfUG9zKSAvKiE8IDB4MDA0MDAwMDAgKi8NCiNkZWZpbmUgRkxBU0hfT0JSX25SU1RfU1REQlkgICAgICAgICAgICAgICAgIEZMQVNIX09CUl9uUlNUX1NUREJZX01zayAgICAgICAgICAvKiE8IG5SU1RfU1REQlkgKi8NCg0KLyoqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIEZMQVNIX1dSUFIgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgRkxBU0hfV1JQUjFfV1JQX1BvcyAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRkxBU0hfV1JQUjFfV1JQX01zayAgICAgICAgICAgICAgICAgICgweEZGRkZGRkZGVSA8PCBGTEFTSF9XUlBSMV9XUlBfUG9zKSAvKiE8IDB4RkZGRkZGRkYgKi8NCiNkZWZpbmUgRkxBU0hfV1JQUjFfV1JQICAgICAgICAgICAgICAgICAgICAgIEZMQVNIX1dSUFIxX1dSUF9Nc2sgICAgICAgICAgICAgICAvKiE8IFdyaXRlIFByb3RlY3Qgc2VjdG9ycyAwICB0byAzMSAgKi8NCiNkZWZpbmUgRkxBU0hfV1JQUjJfV1JQX1BvcyAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRkxBU0hfV1JQUjJfV1JQX01zayAgICAgICAgICAgICAgICAgICgweEZGRkZGRkZGVSA8PCBGTEFTSF9XUlBSMl9XUlBfUG9zKSAvKiE8IDB4RkZGRkZGRkYgKi8NCiNkZWZpbmUgRkxBU0hfV1JQUjJfV1JQICAgICAgICAgICAgICAgICAgICAgIEZMQVNIX1dSUFIyX1dSUF9Nc2sgICAgICAgICAgICAgICAvKiE8IFdyaXRlIFByb3RlY3Qgc2VjdG9ycyAzMiB0byA2MyAgKi8gICAgICAgICAgICAgDQoNCi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovDQovKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLw0KLyogICAgICAgICAgICAgICAgICAgICAgICAgICAgR2VuZXJhbCBQdXJwb3NlIEkvTyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8NCi8qICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovDQovKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLw0KLyoqKioqKioqKioqKioqKioqKiAgQml0cyBkZWZpbml0aW9uIGZvciBHUElPX01PREVSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgR1BJT19NT0RFUl9NT0RFUjBfUG9zICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19NT0RFUl9NT0RFUjBfTXNrICAgICAgICAgICAgICAgICgweDNVIDw8IEdQSU9fTU9ERVJfTU9ERVIwX1BvcykgICAvKiE8IDB4MDAwMDAwMDMgKi8NCiNkZWZpbmUgR1BJT19NT0RFUl9NT0RFUjAgICAgICAgICAgICAgICAgICAgIEdQSU9fTU9ERVJfTU9ERVIwX01zayAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19NT0RFUl9NT0RFUjBfMCAgICAgICAgICAgICAgICAgICgweDFVIDw8IEdQSU9fTU9ERVJfTU9ERVIwX1BvcykgICAvKiE8IDB4MDAwMDAwMDEgKi8NCiNkZWZpbmUgR1BJT19NT0RFUl9NT0RFUjBfMSAgICAgICAgICAgICAgICAgICgweDJVIDw8IEdQSU9fTU9ERVJfTU9ERVIwX1BvcykgICAvKiE8IDB4MDAwMDAwMDIgKi8NCg0KI2RlZmluZSBHUElPX01PREVSX01PREVSMV9Qb3MgICAgICAgICAgICAgICAgKDJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX01PREVSX01PREVSMV9Nc2sgICAgICAgICAgICAgICAgKDB4M1UgPDwgR1BJT19NT0RFUl9NT0RFUjFfUG9zKSAgIC8qITwgMHgwMDAwMDAwQyAqLw0KI2RlZmluZSBHUElPX01PREVSX01PREVSMSAgICAgICAgICAgICAgICAgICAgR1BJT19NT0RFUl9NT0RFUjFfTXNrICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX01PREVSX01PREVSMV8wICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgR1BJT19NT0RFUl9NT0RFUjFfUG9zKSAgIC8qITwgMHgwMDAwMDAwNCAqLw0KI2RlZmluZSBHUElPX01PREVSX01PREVSMV8xICAgICAgICAgICAgICAgICAgKDB4MlUgPDwgR1BJT19NT0RFUl9NT0RFUjFfUG9zKSAgIC8qITwgMHgwMDAwMDAwOCAqLw0KDQojZGVmaW5lIEdQSU9fTU9ERVJfTU9ERVIyX1BvcyAgICAgICAgICAgICAgICAoNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fTU9ERVJfTU9ERVIyX01zayAgICAgICAgICAgICAgICAoMHgzVSA8PCBHUElPX01PREVSX01PREVSMl9Qb3MpICAgLyohPCAweDAwMDAwMDMwICovDQojZGVmaW5lIEdQSU9fTU9ERVJfTU9ERVIyICAgICAgICAgICAgICAgICAgICBHUElPX01PREVSX01PREVSMl9Nc2sgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fTU9ERVJfTU9ERVIyXzAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBHUElPX01PREVSX01PREVSMl9Qb3MpICAgLyohPCAweDAwMDAwMDEwICovDQojZGVmaW5lIEdQSU9fTU9ERVJfTU9ERVIyXzEgICAgICAgICAgICAgICAgICAoMHgyVSA8PCBHUElPX01PREVSX01PREVSMl9Qb3MpICAgLyohPCAweDAwMDAwMDIwICovDQoNCiNkZWZpbmUgR1BJT19NT0RFUl9NT0RFUjNfUG9zICAgICAgICAgICAgICAgICg2VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19NT0RFUl9NT0RFUjNfTXNrICAgICAgICAgICAgICAgICgweDNVIDw8IEdQSU9fTU9ERVJfTU9ERVIzX1BvcykgICAvKiE8IDB4MDAwMDAwQzAgKi8NCiNkZWZpbmUgR1BJT19NT0RFUl9NT0RFUjMgICAgICAgICAgICAgICAgICAgIEdQSU9fTU9ERVJfTU9ERVIzX01zayAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19NT0RFUl9NT0RFUjNfMCAgICAgICAgICAgICAgICAgICgweDFVIDw8IEdQSU9fTU9ERVJfTU9ERVIzX1BvcykgICAvKiE8IDB4MDAwMDAwNDAgKi8NCiNkZWZpbmUgR1BJT19NT0RFUl9NT0RFUjNfMSAgICAgICAgICAgICAgICAgICgweDJVIDw8IEdQSU9fTU9ERVJfTU9ERVIzX1BvcykgICAvKiE8IDB4MDAwMDAwODAgKi8NCg0KI2RlZmluZSBHUElPX01PREVSX01PREVSNF9Qb3MgICAgICAgICAgICAgICAgKDhVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX01PREVSX01PREVSNF9Nc2sgICAgICAgICAgICAgICAgKDB4M1UgPDwgR1BJT19NT0RFUl9NT0RFUjRfUG9zKSAgIC8qITwgMHgwMDAwMDMwMCAqLw0KI2RlZmluZSBHUElPX01PREVSX01PREVSNCAgICAgICAgICAgICAgICAgICAgR1BJT19NT0RFUl9NT0RFUjRfTXNrICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX01PREVSX01PREVSNF8wICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgR1BJT19NT0RFUl9NT0RFUjRfUG9zKSAgIC8qITwgMHgwMDAwMDEwMCAqLw0KI2RlZmluZSBHUElPX01PREVSX01PREVSNF8xICAgICAgICAgICAgICAgICAgKDB4MlUgPDwgR1BJT19NT0RFUl9NT0RFUjRfUG9zKSAgIC8qITwgMHgwMDAwMDIwMCAqLw0KDQojZGVmaW5lIEdQSU9fTU9ERVJfTU9ERVI1X1BvcyAgICAgICAgICAgICAgICAoMTBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fTU9ERVJfTU9ERVI1X01zayAgICAgICAgICAgICAgICAoMHgzVSA8PCBHUElPX01PREVSX01PREVSNV9Qb3MpICAgLyohPCAweDAwMDAwQzAwICovDQojZGVmaW5lIEdQSU9fTU9ERVJfTU9ERVI1ICAgICAgICAgICAgICAgICAgICBHUElPX01PREVSX01PREVSNV9Nc2sgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fTU9ERVJfTU9ERVI1XzAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBHUElPX01PREVSX01PREVSNV9Qb3MpICAgLyohPCAweDAwMDAwNDAwICovDQojZGVmaW5lIEdQSU9fTU9ERVJfTU9ERVI1XzEgICAgICAgICAgICAgICAgICAoMHgyVSA8PCBHUElPX01PREVSX01PREVSNV9Qb3MpICAgLyohPCAweDAwMDAwODAwICovDQoNCiNkZWZpbmUgR1BJT19NT0RFUl9NT0RFUjZfUG9zICAgICAgICAgICAgICAgICgxMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19NT0RFUl9NT0RFUjZfTXNrICAgICAgICAgICAgICAgICgweDNVIDw8IEdQSU9fTU9ERVJfTU9ERVI2X1BvcykgICAvKiE8IDB4MDAwMDMwMDAgKi8NCiNkZWZpbmUgR1BJT19NT0RFUl9NT0RFUjYgICAgICAgICAgICAgICAgICAgIEdQSU9fTU9ERVJfTU9ERVI2X01zayAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19NT0RFUl9NT0RFUjZfMCAgICAgICAgICAgICAgICAgICgweDFVIDw8IEdQSU9fTU9ERVJfTU9ERVI2X1BvcykgICAvKiE8IDB4MDAwMDEwMDAgKi8NCiNkZWZpbmUgR1BJT19NT0RFUl9NT0RFUjZfMSAgICAgICAgICAgICAgICAgICgweDJVIDw8IEdQSU9fTU9ERVJfTU9ERVI2X1BvcykgICAvKiE8IDB4MDAwMDIwMDAgKi8NCg0KI2RlZmluZSBHUElPX01PREVSX01PREVSN19Qb3MgICAgICAgICAgICAgICAgKDE0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX01PREVSX01PREVSN19Nc2sgICAgICAgICAgICAgICAgKDB4M1UgPDwgR1BJT19NT0RFUl9NT0RFUjdfUG9zKSAgIC8qITwgMHgwMDAwQzAwMCAqLw0KI2RlZmluZSBHUElPX01PREVSX01PREVSNyAgICAgICAgICAgICAgICAgICAgR1BJT19NT0RFUl9NT0RFUjdfTXNrICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX01PREVSX01PREVSN18wICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgR1BJT19NT0RFUl9NT0RFUjdfUG9zKSAgIC8qITwgMHgwMDAwNDAwMCAqLw0KI2RlZmluZSBHUElPX01PREVSX01PREVSN18xICAgICAgICAgICAgICAgICAgKDB4MlUgPDwgR1BJT19NT0RFUl9NT0RFUjdfUG9zKSAgIC8qITwgMHgwMDAwODAwMCAqLw0KDQojZGVmaW5lIEdQSU9fTU9ERVJfTU9ERVI4X1BvcyAgICAgICAgICAgICAgICAoMTZVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fTU9ERVJfTU9ERVI4X01zayAgICAgICAgICAgICAgICAoMHgzVSA8PCBHUElPX01PREVSX01PREVSOF9Qb3MpICAgLyohPCAweDAwMDMwMDAwICovDQojZGVmaW5lIEdQSU9fTU9ERVJfTU9ERVI4ICAgICAgICAgICAgICAgICAgICBHUElPX01PREVSX01PREVSOF9Nc2sgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fTU9ERVJfTU9ERVI4XzAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBHUElPX01PREVSX01PREVSOF9Qb3MpICAgLyohPCAweDAwMDEwMDAwICovDQojZGVmaW5lIEdQSU9fTU9ERVJfTU9ERVI4XzEgICAgICAgICAgICAgICAgICAoMHgyVSA8PCBHUElPX01PREVSX01PREVSOF9Qb3MpICAgLyohPCAweDAwMDIwMDAwICovDQoNCiNkZWZpbmUgR1BJT19NT0RFUl9NT0RFUjlfUG9zICAgICAgICAgICAgICAgICgxOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19NT0RFUl9NT0RFUjlfTXNrICAgICAgICAgICAgICAgICgweDNVIDw8IEdQSU9fTU9ERVJfTU9ERVI5X1BvcykgICAvKiE8IDB4MDAwQzAwMDAgKi8NCiNkZWZpbmUgR1BJT19NT0RFUl9NT0RFUjkgICAgICAgICAgICAgICAgICAgIEdQSU9fTU9ERVJfTU9ERVI5X01zayAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19NT0RFUl9NT0RFUjlfMCAgICAgICAgICAgICAgICAgICgweDFVIDw8IEdQSU9fTU9ERVJfTU9ERVI5X1BvcykgICAvKiE8IDB4MDAwNDAwMDAgKi8NCiNkZWZpbmUgR1BJT19NT0RFUl9NT0RFUjlfMSAgICAgICAgICAgICAgICAgICgweDJVIDw8IEdQSU9fTU9ERVJfTU9ERVI5X1BvcykgICAvKiE8IDB4MDAwODAwMDAgKi8NCg0KI2RlZmluZSBHUElPX01PREVSX01PREVSMTBfUG9zICAgICAgICAgICAgICAgKDIwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX01PREVSX01PREVSMTBfTXNrICAgICAgICAgICAgICAgKDB4M1UgPDwgR1BJT19NT0RFUl9NT0RFUjEwX1BvcykgIC8qITwgMHgwMDMwMDAwMCAqLw0KI2RlZmluZSBHUElPX01PREVSX01PREVSMTAgICAgICAgICAgICAgICAgICAgR1BJT19NT0RFUl9NT0RFUjEwX01zayAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX01PREVSX01PREVSMTBfMCAgICAgICAgICAgICAgICAgKDB4MVUgPDwgR1BJT19NT0RFUl9NT0RFUjEwX1BvcykgIC8qITwgMHgwMDEwMDAwMCAqLw0KI2RlZmluZSBHUElPX01PREVSX01PREVSMTBfMSAgICAgICAgICAgICAgICAgKDB4MlUgPDwgR1BJT19NT0RFUl9NT0RFUjEwX1BvcykgIC8qITwgMHgwMDIwMDAwMCAqLw0KDQojZGVmaW5lIEdQSU9fTU9ERVJfTU9ERVIxMV9Qb3MgICAgICAgICAgICAgICAoMjJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fTU9ERVJfTU9ERVIxMV9Nc2sgICAgICAgICAgICAgICAoMHgzVSA8PCBHUElPX01PREVSX01PREVSMTFfUG9zKSAgLyohPCAweDAwQzAwMDAwICovDQojZGVmaW5lIEdQSU9fTU9ERVJfTU9ERVIxMSAgICAgICAgICAgICAgICAgICBHUElPX01PREVSX01PREVSMTFfTXNrICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fTU9ERVJfTU9ERVIxMV8wICAgICAgICAgICAgICAgICAoMHgxVSA8PCBHUElPX01PREVSX01PREVSMTFfUG9zKSAgLyohPCAweDAwNDAwMDAwICovDQojZGVmaW5lIEdQSU9fTU9ERVJfTU9ERVIxMV8xICAgICAgICAgICAgICAgICAoMHgyVSA8PCBHUElPX01PREVSX01PREVSMTFfUG9zKSAgLyohPCAweDAwODAwMDAwICovDQoNCiNkZWZpbmUgR1BJT19NT0RFUl9NT0RFUjEyX1BvcyAgICAgICAgICAgICAgICgyNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19NT0RFUl9NT0RFUjEyX01zayAgICAgICAgICAgICAgICgweDNVIDw8IEdQSU9fTU9ERVJfTU9ERVIxMl9Qb3MpICAvKiE8IDB4MDMwMDAwMDAgKi8NCiNkZWZpbmUgR1BJT19NT0RFUl9NT0RFUjEyICAgICAgICAgICAgICAgICAgIEdQSU9fTU9ERVJfTU9ERVIxMl9Nc2sgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19NT0RFUl9NT0RFUjEyXzAgICAgICAgICAgICAgICAgICgweDFVIDw8IEdQSU9fTU9ERVJfTU9ERVIxMl9Qb3MpICAvKiE8IDB4MDEwMDAwMDAgKi8NCiNkZWZpbmUgR1BJT19NT0RFUl9NT0RFUjEyXzEgICAgICAgICAgICAgICAgICgweDJVIDw8IEdQSU9fTU9ERVJfTU9ERVIxMl9Qb3MpICAvKiE8IDB4MDIwMDAwMDAgKi8NCg0KI2RlZmluZSBHUElPX01PREVSX01PREVSMTNfUG9zICAgICAgICAgICAgICAgKDI2VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX01PREVSX01PREVSMTNfTXNrICAgICAgICAgICAgICAgKDB4M1UgPDwgR1BJT19NT0RFUl9NT0RFUjEzX1BvcykgIC8qITwgMHgwQzAwMDAwMCAqLw0KI2RlZmluZSBHUElPX01PREVSX01PREVSMTMgICAgICAgICAgICAgICAgICAgR1BJT19NT0RFUl9NT0RFUjEzX01zayAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX01PREVSX01PREVSMTNfMCAgICAgICAgICAgICAgICAgKDB4MVUgPDwgR1BJT19NT0RFUl9NT0RFUjEzX1BvcykgIC8qITwgMHgwNDAwMDAwMCAqLw0KI2RlZmluZSBHUElPX01PREVSX01PREVSMTNfMSAgICAgICAgICAgICAgICAgKDB4MlUgPDwgR1BJT19NT0RFUl9NT0RFUjEzX1BvcykgIC8qITwgMHgwODAwMDAwMCAqLw0KDQojZGVmaW5lIEdQSU9fTU9ERVJfTU9ERVIxNF9Qb3MgICAgICAgICAgICAgICAoMjhVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fTU9ERVJfTU9ERVIxNF9Nc2sgICAgICAgICAgICAgICAoMHgzVSA8PCBHUElPX01PREVSX01PREVSMTRfUG9zKSAgLyohPCAweDMwMDAwMDAwICovDQojZGVmaW5lIEdQSU9fTU9ERVJfTU9ERVIxNCAgICAgICAgICAgICAgICAgICBHUElPX01PREVSX01PREVSMTRfTXNrICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fTU9ERVJfTU9ERVIxNF8wICAgICAgICAgICAgICAgICAoMHgxVSA8PCBHUElPX01PREVSX01PREVSMTRfUG9zKSAgLyohPCAweDEwMDAwMDAwICovDQojZGVmaW5lIEdQSU9fTU9ERVJfTU9ERVIxNF8xICAgICAgICAgICAgICAgICAoMHgyVSA8PCBHUElPX01PREVSX01PREVSMTRfUG9zKSAgLyohPCAweDIwMDAwMDAwICovDQoNCiNkZWZpbmUgR1BJT19NT0RFUl9NT0RFUjE1X1BvcyAgICAgICAgICAgICAgICgzMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19NT0RFUl9NT0RFUjE1X01zayAgICAgICAgICAgICAgICgweDNVIDw8IEdQSU9fTU9ERVJfTU9ERVIxNV9Qb3MpICAvKiE8IDB4QzAwMDAwMDAgKi8NCiNkZWZpbmUgR1BJT19NT0RFUl9NT0RFUjE1ICAgICAgICAgICAgICAgICAgIEdQSU9fTU9ERVJfTU9ERVIxNV9Nc2sgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19NT0RFUl9NT0RFUjE1XzAgICAgICAgICAgICAgICAgICgweDFVIDw8IEdQSU9fTU9ERVJfTU9ERVIxNV9Qb3MpICAvKiE8IDB4NDAwMDAwMDAgKi8NCiNkZWZpbmUgR1BJT19NT0RFUl9NT0RFUjE1XzEgICAgICAgICAgICAgICAgICgweDJVIDw8IEdQSU9fTU9ERVJfTU9ERVIxNV9Qb3MpICAvKiE8IDB4ODAwMDAwMDAgKi8NCg0KLyoqKioqKioqKioqKioqKioqKiAgQml0cyBkZWZpbml0aW9uIGZvciBHUElPX09UWVBFUiByZWdpc3RlciAgKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgR1BJT19PVFlQRVJfT1RfMCAgICAgICAgICAgICAgICAgICAgICgweDAwMDAwMDAxVSkgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19PVFlQRVJfT1RfMSAgICAgICAgICAgICAgICAgICAgICgweDAwMDAwMDAyVSkgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19PVFlQRVJfT1RfMiAgICAgICAgICAgICAgICAgICAgICgweDAwMDAwMDA0VSkgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19PVFlQRVJfT1RfMyAgICAgICAgICAgICAgICAgICAgICgweDAwMDAwMDA4VSkgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19PVFlQRVJfT1RfNCAgICAgICAgICAgICAgICAgICAgICgweDAwMDAwMDEwVSkgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19PVFlQRVJfT1RfNSAgICAgICAgICAgICAgICAgICAgICgweDAwMDAwMDIwVSkgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19PVFlQRVJfT1RfNiAgICAgICAgICAgICAgICAgICAgICgweDAwMDAwMDQwVSkgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19PVFlQRVJfT1RfNyAgICAgICAgICAgICAgICAgICAgICgweDAwMDAwMDgwVSkgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19PVFlQRVJfT1RfOCAgICAgICAgICAgICAgICAgICAgICgweDAwMDAwMTAwVSkgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19PVFlQRVJfT1RfOSAgICAgICAgICAgICAgICAgICAgICgweDAwMDAwMjAwVSkgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19PVFlQRVJfT1RfMTAgICAgICAgICAgICAgICAgICAgICgweDAwMDAwNDAwVSkgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19PVFlQRVJfT1RfMTEgICAgICAgICAgICAgICAgICAgICgweDAwMDAwODAwVSkgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19PVFlQRVJfT1RfMTIgICAgICAgICAgICAgICAgICAgICgweDAwMDAxMDAwVSkgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19PVFlQRVJfT1RfMTMgICAgICAgICAgICAgICAgICAgICgweDAwMDAyMDAwVSkgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19PVFlQRVJfT1RfMTQgICAgICAgICAgICAgICAgICAgICgweDAwMDA0MDAwVSkgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19PVFlQRVJfT1RfMTUgICAgICAgICAgICAgICAgICAgICgweDAwMDA4MDAwVSkgICAgICAgICAgICAgICAgICAgICANCg0KLyoqKioqKioqKioqKioqKioqKiAgQml0cyBkZWZpbml0aW9uIGZvciBHUElPX09TUEVFRFIgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKi8NCiNkZWZpbmUgR1BJT19PU1BFRURFUl9PU1BFRURSMF9Qb3MgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19PU1BFRURFUl9PU1BFRURSMF9Nc2sgICAgICAgICAgICgweDNVIDw8IEdQSU9fT1NQRUVERVJfT1NQRUVEUjBfUG9zKSAvKiE8IDB4MDAwMDAwMDMgKi8NCiNkZWZpbmUgR1BJT19PU1BFRURFUl9PU1BFRURSMCAgICAgICAgICAgICAgIEdQSU9fT1NQRUVERVJfT1NQRUVEUjBfTXNrICAgICAgICANCiNkZWZpbmUgR1BJT19PU1BFRURFUl9PU1BFRURSMF8wICAgICAgICAgICAgICgweDFVIDw8IEdQSU9fT1NQRUVERVJfT1NQRUVEUjBfUG9zKSAvKiE8IDB4MDAwMDAwMDEgKi8NCiNkZWZpbmUgR1BJT19PU1BFRURFUl9PU1BFRURSMF8xICAgICAgICAgICAgICgweDJVIDw8IEdQSU9fT1NQRUVERVJfT1NQRUVEUjBfUG9zKSAvKiE8IDB4MDAwMDAwMDIgKi8NCg0KI2RlZmluZSBHUElPX09TUEVFREVSX09TUEVFRFIxX1BvcyAgICAgICAgICAgKDJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX09TUEVFREVSX09TUEVFRFIxX01zayAgICAgICAgICAgKDB4M1UgPDwgR1BJT19PU1BFRURFUl9PU1BFRURSMV9Qb3MpIC8qITwgMHgwMDAwMDAwQyAqLw0KI2RlZmluZSBHUElPX09TUEVFREVSX09TUEVFRFIxICAgICAgICAgICAgICAgR1BJT19PU1BFRURFUl9PU1BFRURSMV9Nc2sgICAgICAgIA0KI2RlZmluZSBHUElPX09TUEVFREVSX09TUEVFRFIxXzAgICAgICAgICAgICAgKDB4MVUgPDwgR1BJT19PU1BFRURFUl9PU1BFRURSMV9Qb3MpIC8qITwgMHgwMDAwMDAwNCAqLw0KI2RlZmluZSBHUElPX09TUEVFREVSX09TUEVFRFIxXzEgICAgICAgICAgICAgKDB4MlUgPDwgR1BJT19PU1BFRURFUl9PU1BFRURSMV9Qb3MpIC8qITwgMHgwMDAwMDAwOCAqLw0KDQojZGVmaW5lIEdQSU9fT1NQRUVERVJfT1NQRUVEUjJfUG9zICAgICAgICAgICAoNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fT1NQRUVERVJfT1NQRUVEUjJfTXNrICAgICAgICAgICAoMHgzVSA8PCBHUElPX09TUEVFREVSX09TUEVFRFIyX1BvcykgLyohPCAweDAwMDAwMDMwICovDQojZGVmaW5lIEdQSU9fT1NQRUVERVJfT1NQRUVEUjIgICAgICAgICAgICAgICBHUElPX09TUEVFREVSX09TUEVFRFIyX01zayAgICAgICAgDQojZGVmaW5lIEdQSU9fT1NQRUVERVJfT1NQRUVEUjJfMCAgICAgICAgICAgICAoMHgxVSA8PCBHUElPX09TUEVFREVSX09TUEVFRFIyX1BvcykgLyohPCAweDAwMDAwMDEwICovDQojZGVmaW5lIEdQSU9fT1NQRUVERVJfT1NQRUVEUjJfMSAgICAgICAgICAgICAoMHgyVSA8PCBHUElPX09TUEVFREVSX09TUEVFRFIyX1BvcykgLyohPCAweDAwMDAwMDIwICovDQoNCiNkZWZpbmUgR1BJT19PU1BFRURFUl9PU1BFRURSM19Qb3MgICAgICAgICAgICg2VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19PU1BFRURFUl9PU1BFRURSM19Nc2sgICAgICAgICAgICgweDNVIDw8IEdQSU9fT1NQRUVERVJfT1NQRUVEUjNfUG9zKSAvKiE8IDB4MDAwMDAwQzAgKi8NCiNkZWZpbmUgR1BJT19PU1BFRURFUl9PU1BFRURSMyAgICAgICAgICAgICAgIEdQSU9fT1NQRUVERVJfT1NQRUVEUjNfTXNrICAgICAgICANCiNkZWZpbmUgR1BJT19PU1BFRURFUl9PU1BFRURSM18wICAgICAgICAgICAgICgweDFVIDw8IEdQSU9fT1NQRUVERVJfT1NQRUVEUjNfUG9zKSAvKiE8IDB4MDAwMDAwNDAgKi8NCiNkZWZpbmUgR1BJT19PU1BFRURFUl9PU1BFRURSM18xICAgICAgICAgICAgICgweDJVIDw8IEdQSU9fT1NQRUVERVJfT1NQRUVEUjNfUG9zKSAvKiE8IDB4MDAwMDAwODAgKi8NCg0KI2RlZmluZSBHUElPX09TUEVFREVSX09TUEVFRFI0X1BvcyAgICAgICAgICAgKDhVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX09TUEVFREVSX09TUEVFRFI0X01zayAgICAgICAgICAgKDB4M1UgPDwgR1BJT19PU1BFRURFUl9PU1BFRURSNF9Qb3MpIC8qITwgMHgwMDAwMDMwMCAqLw0KI2RlZmluZSBHUElPX09TUEVFREVSX09TUEVFRFI0ICAgICAgICAgICAgICAgR1BJT19PU1BFRURFUl9PU1BFRURSNF9Nc2sgICAgICAgIA0KI2RlZmluZSBHUElPX09TUEVFREVSX09TUEVFRFI0XzAgICAgICAgICAgICAgKDB4MVUgPDwgR1BJT19PU1BFRURFUl9PU1BFRURSNF9Qb3MpIC8qITwgMHgwMDAwMDEwMCAqLw0KI2RlZmluZSBHUElPX09TUEVFREVSX09TUEVFRFI0XzEgICAgICAgICAgICAgKDB4MlUgPDwgR1BJT19PU1BFRURFUl9PU1BFRURSNF9Qb3MpIC8qITwgMHgwMDAwMDIwMCAqLw0KDQojZGVmaW5lIEdQSU9fT1NQRUVERVJfT1NQRUVEUjVfUG9zICAgICAgICAgICAoMTBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fT1NQRUVERVJfT1NQRUVEUjVfTXNrICAgICAgICAgICAoMHgzVSA8PCBHUElPX09TUEVFREVSX09TUEVFRFI1X1BvcykgLyohPCAweDAwMDAwQzAwICovDQojZGVmaW5lIEdQSU9fT1NQRUVERVJfT1NQRUVEUjUgICAgICAgICAgICAgICBHUElPX09TUEVFREVSX09TUEVFRFI1X01zayAgICAgICAgDQojZGVmaW5lIEdQSU9fT1NQRUVERVJfT1NQRUVEUjVfMCAgICAgICAgICAgICAoMHgxVSA8PCBHUElPX09TUEVFREVSX09TUEVFRFI1X1BvcykgLyohPCAweDAwMDAwNDAwICovDQojZGVmaW5lIEdQSU9fT1NQRUVERVJfT1NQRUVEUjVfMSAgICAgICAgICAgICAoMHgyVSA8PCBHUElPX09TUEVFREVSX09TUEVFRFI1X1BvcykgLyohPCAweDAwMDAwODAwICovDQoNCiNkZWZpbmUgR1BJT19PU1BFRURFUl9PU1BFRURSNl9Qb3MgICAgICAgICAgICgxMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19PU1BFRURFUl9PU1BFRURSNl9Nc2sgICAgICAgICAgICgweDNVIDw8IEdQSU9fT1NQRUVERVJfT1NQRUVEUjZfUG9zKSAvKiE8IDB4MDAwMDMwMDAgKi8NCiNkZWZpbmUgR1BJT19PU1BFRURFUl9PU1BFRURSNiAgICAgICAgICAgICAgIEdQSU9fT1NQRUVERVJfT1NQRUVEUjZfTXNrICAgICAgICANCiNkZWZpbmUgR1BJT19PU1BFRURFUl9PU1BFRURSNl8wICAgICAgICAgICAgICgweDFVIDw8IEdQSU9fT1NQRUVERVJfT1NQRUVEUjZfUG9zKSAvKiE8IDB4MDAwMDEwMDAgKi8NCiNkZWZpbmUgR1BJT19PU1BFRURFUl9PU1BFRURSNl8xICAgICAgICAgICAgICgweDJVIDw8IEdQSU9fT1NQRUVERVJfT1NQRUVEUjZfUG9zKSAvKiE8IDB4MDAwMDIwMDAgKi8NCg0KI2RlZmluZSBHUElPX09TUEVFREVSX09TUEVFRFI3X1BvcyAgICAgICAgICAgKDE0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX09TUEVFREVSX09TUEVFRFI3X01zayAgICAgICAgICAgKDB4M1UgPDwgR1BJT19PU1BFRURFUl9PU1BFRURSN19Qb3MpIC8qITwgMHgwMDAwQzAwMCAqLw0KI2RlZmluZSBHUElPX09TUEVFREVSX09TUEVFRFI3ICAgICAgICAgICAgICAgR1BJT19PU1BFRURFUl9PU1BFRURSN19Nc2sgICAgICAgIA0KI2RlZmluZSBHUElPX09TUEVFREVSX09TUEVFRFI3XzAgICAgICAgICAgICAgKDB4MVUgPDwgR1BJT19PU1BFRURFUl9PU1BFRURSN19Qb3MpIC8qITwgMHgwMDAwNDAwMCAqLw0KI2RlZmluZSBHUElPX09TUEVFREVSX09TUEVFRFI3XzEgICAgICAgICAgICAgKDB4MlUgPDwgR1BJT19PU1BFRURFUl9PU1BFRURSN19Qb3MpIC8qITwgMHgwMDAwODAwMCAqLw0KDQojZGVmaW5lIEdQSU9fT1NQRUVERVJfT1NQRUVEUjhfUG9zICAgICAgICAgICAoMTZVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fT1NQRUVERVJfT1NQRUVEUjhfTXNrICAgICAgICAgICAoMHgzVSA8PCBHUElPX09TUEVFREVSX09TUEVFRFI4X1BvcykgLyohPCAweDAwMDMwMDAwICovDQojZGVmaW5lIEdQSU9fT1NQRUVERVJfT1NQRUVEUjggICAgICAgICAgICAgICBHUElPX09TUEVFREVSX09TUEVFRFI4X01zayAgICAgICAgDQojZGVmaW5lIEdQSU9fT1NQRUVERVJfT1NQRUVEUjhfMCAgICAgICAgICAgICAoMHgxVSA8PCBHUElPX09TUEVFREVSX09TUEVFRFI4X1BvcykgLyohPCAweDAwMDEwMDAwICovDQojZGVmaW5lIEdQSU9fT1NQRUVERVJfT1NQRUVEUjhfMSAgICAgICAgICAgICAoMHgyVSA8PCBHUElPX09TUEVFREVSX09TUEVFRFI4X1BvcykgLyohPCAweDAwMDIwMDAwICovDQoNCiNkZWZpbmUgR1BJT19PU1BFRURFUl9PU1BFRURSOV9Qb3MgICAgICAgICAgICgxOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19PU1BFRURFUl9PU1BFRURSOV9Nc2sgICAgICAgICAgICgweDNVIDw8IEdQSU9fT1NQRUVERVJfT1NQRUVEUjlfUG9zKSAvKiE8IDB4MDAwQzAwMDAgKi8NCiNkZWZpbmUgR1BJT19PU1BFRURFUl9PU1BFRURSOSAgICAgICAgICAgICAgIEdQSU9fT1NQRUVERVJfT1NQRUVEUjlfTXNrICAgICAgICANCiNkZWZpbmUgR1BJT19PU1BFRURFUl9PU1BFRURSOV8wICAgICAgICAgICAgICgweDFVIDw8IEdQSU9fT1NQRUVERVJfT1NQRUVEUjlfUG9zKSAvKiE8IDB4MDAwNDAwMDAgKi8NCiNkZWZpbmUgR1BJT19PU1BFRURFUl9PU1BFRURSOV8xICAgICAgICAgICAgICgweDJVIDw8IEdQSU9fT1NQRUVERVJfT1NQRUVEUjlfUG9zKSAvKiE8IDB4MDAwODAwMDAgKi8NCg0KI2RlZmluZSBHUElPX09TUEVFREVSX09TUEVFRFIxMF9Qb3MgICAgICAgICAgKDIwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX09TUEVFREVSX09TUEVFRFIxMF9Nc2sgICAgICAgICAgKDB4M1UgPDwgR1BJT19PU1BFRURFUl9PU1BFRURSMTBfUG9zKSAvKiE8IDB4MDAzMDAwMDAgKi8NCiNkZWZpbmUgR1BJT19PU1BFRURFUl9PU1BFRURSMTAgICAgICAgICAgICAgIEdQSU9fT1NQRUVERVJfT1NQRUVEUjEwX01zayAgICAgICANCiNkZWZpbmUgR1BJT19PU1BFRURFUl9PU1BFRURSMTBfMCAgICAgICAgICAgICgweDFVIDw8IEdQSU9fT1NQRUVERVJfT1NQRUVEUjEwX1BvcykgLyohPCAweDAwMTAwMDAwICovDQojZGVmaW5lIEdQSU9fT1NQRUVERVJfT1NQRUVEUjEwXzEgICAgICAgICAgICAoMHgyVSA8PCBHUElPX09TUEVFREVSX09TUEVFRFIxMF9Qb3MpIC8qITwgMHgwMDIwMDAwMCAqLw0KDQojZGVmaW5lIEdQSU9fT1NQRUVERVJfT1NQRUVEUjExX1BvcyAgICAgICAgICAoMjJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fT1NQRUVERVJfT1NQRUVEUjExX01zayAgICAgICAgICAoMHgzVSA8PCBHUElPX09TUEVFREVSX09TUEVFRFIxMV9Qb3MpIC8qITwgMHgwMEMwMDAwMCAqLw0KI2RlZmluZSBHUElPX09TUEVFREVSX09TUEVFRFIxMSAgICAgICAgICAgICAgR1BJT19PU1BFRURFUl9PU1BFRURSMTFfTXNrICAgICAgIA0KI2RlZmluZSBHUElPX09TUEVFREVSX09TUEVFRFIxMV8wICAgICAgICAgICAgKDB4MVUgPDwgR1BJT19PU1BFRURFUl9PU1BFRURSMTFfUG9zKSAvKiE8IDB4MDA0MDAwMDAgKi8NCiNkZWZpbmUgR1BJT19PU1BFRURFUl9PU1BFRURSMTFfMSAgICAgICAgICAgICgweDJVIDw8IEdQSU9fT1NQRUVERVJfT1NQRUVEUjExX1BvcykgLyohPCAweDAwODAwMDAwICovDQoNCiNkZWZpbmUgR1BJT19PU1BFRURFUl9PU1BFRURSMTJfUG9zICAgICAgICAgICgyNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19PU1BFRURFUl9PU1BFRURSMTJfTXNrICAgICAgICAgICgweDNVIDw8IEdQSU9fT1NQRUVERVJfT1NQRUVEUjEyX1BvcykgLyohPCAweDAzMDAwMDAwICovDQojZGVmaW5lIEdQSU9fT1NQRUVERVJfT1NQRUVEUjEyICAgICAgICAgICAgICBHUElPX09TUEVFREVSX09TUEVFRFIxMl9Nc2sgICAgICAgDQojZGVmaW5lIEdQSU9fT1NQRUVERVJfT1NQRUVEUjEyXzAgICAgICAgICAgICAoMHgxVSA8PCBHUElPX09TUEVFREVSX09TUEVFRFIxMl9Qb3MpIC8qITwgMHgwMTAwMDAwMCAqLw0KI2RlZmluZSBHUElPX09TUEVFREVSX09TUEVFRFIxMl8xICAgICAgICAgICAgKDB4MlUgPDwgR1BJT19PU1BFRURFUl9PU1BFRURSMTJfUG9zKSAvKiE8IDB4MDIwMDAwMDAgKi8NCg0KI2RlZmluZSBHUElPX09TUEVFREVSX09TUEVFRFIxM19Qb3MgICAgICAgICAgKDI2VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX09TUEVFREVSX09TUEVFRFIxM19Nc2sgICAgICAgICAgKDB4M1UgPDwgR1BJT19PU1BFRURFUl9PU1BFRURSMTNfUG9zKSAvKiE8IDB4MEMwMDAwMDAgKi8NCiNkZWZpbmUgR1BJT19PU1BFRURFUl9PU1BFRURSMTMgICAgICAgICAgICAgIEdQSU9fT1NQRUVERVJfT1NQRUVEUjEzX01zayAgICAgICANCiNkZWZpbmUgR1BJT19PU1BFRURFUl9PU1BFRURSMTNfMCAgICAgICAgICAgICgweDFVIDw8IEdQSU9fT1NQRUVERVJfT1NQRUVEUjEzX1BvcykgLyohPCAweDA0MDAwMDAwICovDQojZGVmaW5lIEdQSU9fT1NQRUVERVJfT1NQRUVEUjEzXzEgICAgICAgICAgICAoMHgyVSA8PCBHUElPX09TUEVFREVSX09TUEVFRFIxM19Qb3MpIC8qITwgMHgwODAwMDAwMCAqLw0KDQojZGVmaW5lIEdQSU9fT1NQRUVERVJfT1NQRUVEUjE0X1BvcyAgICAgICAgICAoMjhVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fT1NQRUVERVJfT1NQRUVEUjE0X01zayAgICAgICAgICAoMHgzVSA8PCBHUElPX09TUEVFREVSX09TUEVFRFIxNF9Qb3MpIC8qITwgMHgzMDAwMDAwMCAqLw0KI2RlZmluZSBHUElPX09TUEVFREVSX09TUEVFRFIxNCAgICAgICAgICAgICAgR1BJT19PU1BFRURFUl9PU1BFRURSMTRfTXNrICAgICAgIA0KI2RlZmluZSBHUElPX09TUEVFREVSX09TUEVFRFIxNF8wICAgICAgICAgICAgKDB4MVUgPDwgR1BJT19PU1BFRURFUl9PU1BFRURSMTRfUG9zKSAvKiE8IDB4MTAwMDAwMDAgKi8NCiNkZWZpbmUgR1BJT19PU1BFRURFUl9PU1BFRURSMTRfMSAgICAgICAgICAgICgweDJVIDw8IEdQSU9fT1NQRUVERVJfT1NQRUVEUjE0X1BvcykgLyohPCAweDIwMDAwMDAwICovDQoNCiNkZWZpbmUgR1BJT19PU1BFRURFUl9PU1BFRURSMTVfUG9zICAgICAgICAgICgzMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19PU1BFRURFUl9PU1BFRURSMTVfTXNrICAgICAgICAgICgweDNVIDw8IEdQSU9fT1NQRUVERVJfT1NQRUVEUjE1X1BvcykgLyohPCAweEMwMDAwMDAwICovDQojZGVmaW5lIEdQSU9fT1NQRUVERVJfT1NQRUVEUjE1ICAgICAgICAgICAgICBHUElPX09TUEVFREVSX09TUEVFRFIxNV9Nc2sgICAgICAgDQojZGVmaW5lIEdQSU9fT1NQRUVERVJfT1NQRUVEUjE1XzAgICAgICAgICAgICAoMHgxVSA8PCBHUElPX09TUEVFREVSX09TUEVFRFIxNV9Qb3MpIC8qITwgMHg0MDAwMDAwMCAqLw0KI2RlZmluZSBHUElPX09TUEVFREVSX09TUEVFRFIxNV8xICAgICAgICAgICAgKDB4MlUgPDwgR1BJT19PU1BFRURFUl9PU1BFRURSMTVfUG9zKSAvKiE8IDB4ODAwMDAwMDAgKi8NCg0KLyoqKioqKioqKioqKioqKioqKiAgQml0cyBkZWZpbml0aW9uIGZvciBHUElPX1BVUERSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgR1BJT19QVVBEUl9QVVBEUjBfUG9zICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19QVVBEUl9QVVBEUjBfTXNrICAgICAgICAgICAgICAgICgweDNVIDw8IEdQSU9fUFVQRFJfUFVQRFIwX1BvcykgICAvKiE8IDB4MDAwMDAwMDMgKi8NCiNkZWZpbmUgR1BJT19QVVBEUl9QVVBEUjAgICAgICAgICAgICAgICAgICAgIEdQSU9fUFVQRFJfUFVQRFIwX01zayAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19QVVBEUl9QVVBEUjBfMCAgICAgICAgICAgICAgICAgICgweDFVIDw8IEdQSU9fUFVQRFJfUFVQRFIwX1BvcykgICAvKiE8IDB4MDAwMDAwMDEgKi8NCiNkZWZpbmUgR1BJT19QVVBEUl9QVVBEUjBfMSAgICAgICAgICAgICAgICAgICgweDJVIDw8IEdQSU9fUFVQRFJfUFVQRFIwX1BvcykgICAvKiE8IDB4MDAwMDAwMDIgKi8NCg0KI2RlZmluZSBHUElPX1BVUERSX1BVUERSMV9Qb3MgICAgICAgICAgICAgICAgKDJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX1BVUERSX1BVUERSMV9Nc2sgICAgICAgICAgICAgICAgKDB4M1UgPDwgR1BJT19QVVBEUl9QVVBEUjFfUG9zKSAgIC8qITwgMHgwMDAwMDAwQyAqLw0KI2RlZmluZSBHUElPX1BVUERSX1BVUERSMSAgICAgICAgICAgICAgICAgICAgR1BJT19QVVBEUl9QVVBEUjFfTXNrICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX1BVUERSX1BVUERSMV8wICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgR1BJT19QVVBEUl9QVVBEUjFfUG9zKSAgIC8qITwgMHgwMDAwMDAwNCAqLw0KI2RlZmluZSBHUElPX1BVUERSX1BVUERSMV8xICAgICAgICAgICAgICAgICAgKDB4MlUgPDwgR1BJT19QVVBEUl9QVVBEUjFfUG9zKSAgIC8qITwgMHgwMDAwMDAwOCAqLw0KDQojZGVmaW5lIEdQSU9fUFVQRFJfUFVQRFIyX1BvcyAgICAgICAgICAgICAgICAoNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fUFVQRFJfUFVQRFIyX01zayAgICAgICAgICAgICAgICAoMHgzVSA8PCBHUElPX1BVUERSX1BVUERSMl9Qb3MpICAgLyohPCAweDAwMDAwMDMwICovDQojZGVmaW5lIEdQSU9fUFVQRFJfUFVQRFIyICAgICAgICAgICAgICAgICAgICBHUElPX1BVUERSX1BVUERSMl9Nc2sgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fUFVQRFJfUFVQRFIyXzAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBHUElPX1BVUERSX1BVUERSMl9Qb3MpICAgLyohPCAweDAwMDAwMDEwICovDQojZGVmaW5lIEdQSU9fUFVQRFJfUFVQRFIyXzEgICAgICAgICAgICAgICAgICAoMHgyVSA8PCBHUElPX1BVUERSX1BVUERSMl9Qb3MpICAgLyohPCAweDAwMDAwMDIwICovDQoNCiNkZWZpbmUgR1BJT19QVVBEUl9QVVBEUjNfUG9zICAgICAgICAgICAgICAgICg2VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19QVVBEUl9QVVBEUjNfTXNrICAgICAgICAgICAgICAgICgweDNVIDw8IEdQSU9fUFVQRFJfUFVQRFIzX1BvcykgICAvKiE8IDB4MDAwMDAwQzAgKi8NCiNkZWZpbmUgR1BJT19QVVBEUl9QVVBEUjMgICAgICAgICAgICAgICAgICAgIEdQSU9fUFVQRFJfUFVQRFIzX01zayAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19QVVBEUl9QVVBEUjNfMCAgICAgICAgICAgICAgICAgICgweDFVIDw8IEdQSU9fUFVQRFJfUFVQRFIzX1BvcykgICAvKiE8IDB4MDAwMDAwNDAgKi8NCiNkZWZpbmUgR1BJT19QVVBEUl9QVVBEUjNfMSAgICAgICAgICAgICAgICAgICgweDJVIDw8IEdQSU9fUFVQRFJfUFVQRFIzX1BvcykgICAvKiE8IDB4MDAwMDAwODAgKi8NCg0KI2RlZmluZSBHUElPX1BVUERSX1BVUERSNF9Qb3MgICAgICAgICAgICAgICAgKDhVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX1BVUERSX1BVUERSNF9Nc2sgICAgICAgICAgICAgICAgKDB4M1UgPDwgR1BJT19QVVBEUl9QVVBEUjRfUG9zKSAgIC8qITwgMHgwMDAwMDMwMCAqLw0KI2RlZmluZSBHUElPX1BVUERSX1BVUERSNCAgICAgICAgICAgICAgICAgICAgR1BJT19QVVBEUl9QVVBEUjRfTXNrICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX1BVUERSX1BVUERSNF8wICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgR1BJT19QVVBEUl9QVVBEUjRfUG9zKSAgIC8qITwgMHgwMDAwMDEwMCAqLw0KI2RlZmluZSBHUElPX1BVUERSX1BVUERSNF8xICAgICAgICAgICAgICAgICAgKDB4MlUgPDwgR1BJT19QVVBEUl9QVVBEUjRfUG9zKSAgIC8qITwgMHgwMDAwMDIwMCAqLw0KDQojZGVmaW5lIEdQSU9fUFVQRFJfUFVQRFI1X1BvcyAgICAgICAgICAgICAgICAoMTBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fUFVQRFJfUFVQRFI1X01zayAgICAgICAgICAgICAgICAoMHgzVSA8PCBHUElPX1BVUERSX1BVUERSNV9Qb3MpICAgLyohPCAweDAwMDAwQzAwICovDQojZGVmaW5lIEdQSU9fUFVQRFJfUFVQRFI1ICAgICAgICAgICAgICAgICAgICBHUElPX1BVUERSX1BVUERSNV9Nc2sgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fUFVQRFJfUFVQRFI1XzAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBHUElPX1BVUERSX1BVUERSNV9Qb3MpICAgLyohPCAweDAwMDAwNDAwICovDQojZGVmaW5lIEdQSU9fUFVQRFJfUFVQRFI1XzEgICAgICAgICAgICAgICAgICAoMHgyVSA8PCBHUElPX1BVUERSX1BVUERSNV9Qb3MpICAgLyohPCAweDAwMDAwODAwICovDQoNCiNkZWZpbmUgR1BJT19QVVBEUl9QVVBEUjZfUG9zICAgICAgICAgICAgICAgICgxMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19QVVBEUl9QVVBEUjZfTXNrICAgICAgICAgICAgICAgICgweDNVIDw8IEdQSU9fUFVQRFJfUFVQRFI2X1BvcykgICAvKiE8IDB4MDAwMDMwMDAgKi8NCiNkZWZpbmUgR1BJT19QVVBEUl9QVVBEUjYgICAgICAgICAgICAgICAgICAgIEdQSU9fUFVQRFJfUFVQRFI2X01zayAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19QVVBEUl9QVVBEUjZfMCAgICAgICAgICAgICAgICAgICgweDFVIDw8IEdQSU9fUFVQRFJfUFVQRFI2X1BvcykgICAvKiE8IDB4MDAwMDEwMDAgKi8NCiNkZWZpbmUgR1BJT19QVVBEUl9QVVBEUjZfMSAgICAgICAgICAgICAgICAgICgweDJVIDw8IEdQSU9fUFVQRFJfUFVQRFI2X1BvcykgICAvKiE8IDB4MDAwMDIwMDAgKi8NCg0KI2RlZmluZSBHUElPX1BVUERSX1BVUERSN19Qb3MgICAgICAgICAgICAgICAgKDE0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX1BVUERSX1BVUERSN19Nc2sgICAgICAgICAgICAgICAgKDB4M1UgPDwgR1BJT19QVVBEUl9QVVBEUjdfUG9zKSAgIC8qITwgMHgwMDAwQzAwMCAqLw0KI2RlZmluZSBHUElPX1BVUERSX1BVUERSNyAgICAgICAgICAgICAgICAgICAgR1BJT19QVVBEUl9QVVBEUjdfTXNrICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX1BVUERSX1BVUERSN18wICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgR1BJT19QVVBEUl9QVVBEUjdfUG9zKSAgIC8qITwgMHgwMDAwNDAwMCAqLw0KI2RlZmluZSBHUElPX1BVUERSX1BVUERSN18xICAgICAgICAgICAgICAgICAgKDB4MlUgPDwgR1BJT19QVVBEUl9QVVBEUjdfUG9zKSAgIC8qITwgMHgwMDAwODAwMCAqLw0KDQojZGVmaW5lIEdQSU9fUFVQRFJfUFVQRFI4X1BvcyAgICAgICAgICAgICAgICAoMTZVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fUFVQRFJfUFVQRFI4X01zayAgICAgICAgICAgICAgICAoMHgzVSA8PCBHUElPX1BVUERSX1BVUERSOF9Qb3MpICAgLyohPCAweDAwMDMwMDAwICovDQojZGVmaW5lIEdQSU9fUFVQRFJfUFVQRFI4ICAgICAgICAgICAgICAgICAgICBHUElPX1BVUERSX1BVUERSOF9Nc2sgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fUFVQRFJfUFVQRFI4XzAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBHUElPX1BVUERSX1BVUERSOF9Qb3MpICAgLyohPCAweDAwMDEwMDAwICovDQojZGVmaW5lIEdQSU9fUFVQRFJfUFVQRFI4XzEgICAgICAgICAgICAgICAgICAoMHgyVSA8PCBHUElPX1BVUERSX1BVUERSOF9Qb3MpICAgLyohPCAweDAwMDIwMDAwICovDQoNCiNkZWZpbmUgR1BJT19QVVBEUl9QVVBEUjlfUG9zICAgICAgICAgICAgICAgICgxOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19QVVBEUl9QVVBEUjlfTXNrICAgICAgICAgICAgICAgICgweDNVIDw8IEdQSU9fUFVQRFJfUFVQRFI5X1BvcykgICAvKiE8IDB4MDAwQzAwMDAgKi8NCiNkZWZpbmUgR1BJT19QVVBEUl9QVVBEUjkgICAgICAgICAgICAgICAgICAgIEdQSU9fUFVQRFJfUFVQRFI5X01zayAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19QVVBEUl9QVVBEUjlfMCAgICAgICAgICAgICAgICAgICgweDFVIDw8IEdQSU9fUFVQRFJfUFVQRFI5X1BvcykgICAvKiE8IDB4MDAwNDAwMDAgKi8NCiNkZWZpbmUgR1BJT19QVVBEUl9QVVBEUjlfMSAgICAgICAgICAgICAgICAgICgweDJVIDw8IEdQSU9fUFVQRFJfUFVQRFI5X1BvcykgICAvKiE8IDB4MDAwODAwMDAgKi8NCg0KI2RlZmluZSBHUElPX1BVUERSX1BVUERSMTBfUG9zICAgICAgICAgICAgICAgKDIwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX1BVUERSX1BVUERSMTBfTXNrICAgICAgICAgICAgICAgKDB4M1UgPDwgR1BJT19QVVBEUl9QVVBEUjEwX1BvcykgIC8qITwgMHgwMDMwMDAwMCAqLw0KI2RlZmluZSBHUElPX1BVUERSX1BVUERSMTAgICAgICAgICAgICAgICAgICAgR1BJT19QVVBEUl9QVVBEUjEwX01zayAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX1BVUERSX1BVUERSMTBfMCAgICAgICAgICAgICAgICAgKDB4MVUgPDwgR1BJT19QVVBEUl9QVVBEUjEwX1BvcykgIC8qITwgMHgwMDEwMDAwMCAqLw0KI2RlZmluZSBHUElPX1BVUERSX1BVUERSMTBfMSAgICAgICAgICAgICAgICAgKDB4MlUgPDwgR1BJT19QVVBEUl9QVVBEUjEwX1BvcykgIC8qITwgMHgwMDIwMDAwMCAqLw0KDQojZGVmaW5lIEdQSU9fUFVQRFJfUFVQRFIxMV9Qb3MgICAgICAgICAgICAgICAoMjJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fUFVQRFJfUFVQRFIxMV9Nc2sgICAgICAgICAgICAgICAoMHgzVSA8PCBHUElPX1BVUERSX1BVUERSMTFfUG9zKSAgLyohPCAweDAwQzAwMDAwICovDQojZGVmaW5lIEdQSU9fUFVQRFJfUFVQRFIxMSAgICAgICAgICAgICAgICAgICBHUElPX1BVUERSX1BVUERSMTFfTXNrICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fUFVQRFJfUFVQRFIxMV8wICAgICAgICAgICAgICAgICAoMHgxVSA8PCBHUElPX1BVUERSX1BVUERSMTFfUG9zKSAgLyohPCAweDAwNDAwMDAwICovDQojZGVmaW5lIEdQSU9fUFVQRFJfUFVQRFIxMV8xICAgICAgICAgICAgICAgICAoMHgyVSA8PCBHUElPX1BVUERSX1BVUERSMTFfUG9zKSAgLyohPCAweDAwODAwMDAwICovDQoNCiNkZWZpbmUgR1BJT19QVVBEUl9QVVBEUjEyX1BvcyAgICAgICAgICAgICAgICgyNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19QVVBEUl9QVVBEUjEyX01zayAgICAgICAgICAgICAgICgweDNVIDw8IEdQSU9fUFVQRFJfUFVQRFIxMl9Qb3MpICAvKiE8IDB4MDMwMDAwMDAgKi8NCiNkZWZpbmUgR1BJT19QVVBEUl9QVVBEUjEyICAgICAgICAgICAgICAgICAgIEdQSU9fUFVQRFJfUFVQRFIxMl9Nc2sgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19QVVBEUl9QVVBEUjEyXzAgICAgICAgICAgICAgICAgICgweDFVIDw8IEdQSU9fUFVQRFJfUFVQRFIxMl9Qb3MpICAvKiE8IDB4MDEwMDAwMDAgKi8NCiNkZWZpbmUgR1BJT19QVVBEUl9QVVBEUjEyXzEgICAgICAgICAgICAgICAgICgweDJVIDw8IEdQSU9fUFVQRFJfUFVQRFIxMl9Qb3MpICAvKiE8IDB4MDIwMDAwMDAgKi8NCg0KI2RlZmluZSBHUElPX1BVUERSX1BVUERSMTNfUG9zICAgICAgICAgICAgICAgKDI2VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX1BVUERSX1BVUERSMTNfTXNrICAgICAgICAgICAgICAgKDB4M1UgPDwgR1BJT19QVVBEUl9QVVBEUjEzX1BvcykgIC8qITwgMHgwQzAwMDAwMCAqLw0KI2RlZmluZSBHUElPX1BVUERSX1BVUERSMTMgICAgICAgICAgICAgICAgICAgR1BJT19QVVBEUl9QVVBEUjEzX01zayAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX1BVUERSX1BVUERSMTNfMCAgICAgICAgICAgICAgICAgKDB4MVUgPDwgR1BJT19QVVBEUl9QVVBEUjEzX1BvcykgIC8qITwgMHgwNDAwMDAwMCAqLw0KI2RlZmluZSBHUElPX1BVUERSX1BVUERSMTNfMSAgICAgICAgICAgICAgICAgKDB4MlUgPDwgR1BJT19QVVBEUl9QVVBEUjEzX1BvcykgIC8qITwgMHgwODAwMDAwMCAqLw0KDQojZGVmaW5lIEdQSU9fUFVQRFJfUFVQRFIxNF9Qb3MgICAgICAgICAgICAgICAoMjhVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fUFVQRFJfUFVQRFIxNF9Nc2sgICAgICAgICAgICAgICAoMHgzVSA8PCBHUElPX1BVUERSX1BVUERSMTRfUG9zKSAgLyohPCAweDMwMDAwMDAwICovDQojZGVmaW5lIEdQSU9fUFVQRFJfUFVQRFIxNCAgICAgICAgICAgICAgICAgICBHUElPX1BVUERSX1BVUERSMTRfTXNrICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fUFVQRFJfUFVQRFIxNF8wICAgICAgICAgICAgICAgICAoMHgxVSA8PCBHUElPX1BVUERSX1BVUERSMTRfUG9zKSAgLyohPCAweDEwMDAwMDAwICovDQojZGVmaW5lIEdQSU9fUFVQRFJfUFVQRFIxNF8xICAgICAgICAgICAgICAgICAoMHgyVSA8PCBHUElPX1BVUERSX1BVUERSMTRfUG9zKSAgLyohPCAweDIwMDAwMDAwICovDQojZGVmaW5lIEdQSU9fUFVQRFJfUFVQRFIxNV9Qb3MgICAgICAgICAgICAgICAoMzBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fUFVQRFJfUFVQRFIxNV9Nc2sgICAgICAgICAgICAgICAoMHgzVSA8PCBHUElPX1BVUERSX1BVUERSMTVfUG9zKSAgLyohPCAweEMwMDAwMDAwICovDQojZGVmaW5lIEdQSU9fUFVQRFJfUFVQRFIxNSAgICAgICAgICAgICAgICAgICBHUElPX1BVUERSX1BVUERSMTVfTXNrICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fUFVQRFJfUFVQRFIxNV8wICAgICAgICAgICAgICAgICAoMHgxVSA8PCBHUElPX1BVUERSX1BVUERSMTVfUG9zKSAgLyohPCAweDQwMDAwMDAwICovDQojZGVmaW5lIEdQSU9fUFVQRFJfUFVQRFIxNV8xICAgICAgICAgICAgICAgICAoMHgyVSA8PCBHUElPX1BVUERSX1BVUERSMTVfUG9zKSAgLyohPCAweDgwMDAwMDAwICovDQoNCi8qKioqKioqKioqKioqKioqKiogIEJpdHMgZGVmaW5pdGlvbiBmb3IgR1BJT19JRFIgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIEdQSU9fSURSX0lEUl8wICAgICAgICAgICAgICAgICAgICAgICAoMHgwMDAwMDAwMVUpICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fSURSX0lEUl8xICAgICAgICAgICAgICAgICAgICAgICAoMHgwMDAwMDAwMlUpICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fSURSX0lEUl8yICAgICAgICAgICAgICAgICAgICAgICAoMHgwMDAwMDAwNFUpICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fSURSX0lEUl8zICAgICAgICAgICAgICAgICAgICAgICAoMHgwMDAwMDAwOFUpICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fSURSX0lEUl80ICAgICAgICAgICAgICAgICAgICAgICAoMHgwMDAwMDAxMFUpICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fSURSX0lEUl81ICAgICAgICAgICAgICAgICAgICAgICAoMHgwMDAwMDAyMFUpICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fSURSX0lEUl82ICAgICAgICAgICAgICAgICAgICAgICAoMHgwMDAwMDA0MFUpICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fSURSX0lEUl83ICAgICAgICAgICAgICAgICAgICAgICAoMHgwMDAwMDA4MFUpICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fSURSX0lEUl84ICAgICAgICAgICAgICAgICAgICAgICAoMHgwMDAwMDEwMFUpICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fSURSX0lEUl85ICAgICAgICAgICAgICAgICAgICAgICAoMHgwMDAwMDIwMFUpICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fSURSX0lEUl8xMCAgICAgICAgICAgICAgICAgICAgICAoMHgwMDAwMDQwMFUpICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fSURSX0lEUl8xMSAgICAgICAgICAgICAgICAgICAgICAoMHgwMDAwMDgwMFUpICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fSURSX0lEUl8xMiAgICAgICAgICAgICAgICAgICAgICAoMHgwMDAwMTAwMFUpICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fSURSX0lEUl8xMyAgICAgICAgICAgICAgICAgICAgICAoMHgwMDAwMjAwMFUpICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fSURSX0lEUl8xNCAgICAgICAgICAgICAgICAgICAgICAoMHgwMDAwNDAwMFUpICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fSURSX0lEUl8xNSAgICAgICAgICAgICAgICAgICAgICAoMHgwMDAwODAwMFUpICAgICAgICAgICAgICAgICAgICAgDQoNCi8qKioqKioqKioqKioqKioqKiogIEJpdHMgZGVmaW5pdGlvbiBmb3IgR1BJT19PRFIgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIEdQSU9fT0RSX09EUl8wICAgICAgICAgICAgICAgICAgICAgICAoMHgwMDAwMDAwMVUpICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fT0RSX09EUl8xICAgICAgICAgICAgICAgICAgICAgICAoMHgwMDAwMDAwMlUpICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fT0RSX09EUl8yICAgICAgICAgICAgICAgICAgICAgICAoMHgwMDAwMDAwNFUpICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fT0RSX09EUl8zICAgICAgICAgICAgICAgICAgICAgICAoMHgwMDAwMDAwOFUpICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fT0RSX09EUl80ICAgICAgICAgICAgICAgICAgICAgICAoMHgwMDAwMDAxMFUpICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fT0RSX09EUl81ICAgICAgICAgICAgICAgICAgICAgICAoMHgwMDAwMDAyMFUpICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fT0RSX09EUl82ICAgICAgICAgICAgICAgICAgICAgICAoMHgwMDAwMDA0MFUpICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fT0RSX09EUl83ICAgICAgICAgICAgICAgICAgICAgICAoMHgwMDAwMDA4MFUpICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fT0RSX09EUl84ICAgICAgICAgICAgICAgICAgICAgICAoMHgwMDAwMDEwMFUpICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fT0RSX09EUl85ICAgICAgICAgICAgICAgICAgICAgICAoMHgwMDAwMDIwMFUpICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fT0RSX09EUl8xMCAgICAgICAgICAgICAgICAgICAgICAoMHgwMDAwMDQwMFUpICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fT0RSX09EUl8xMSAgICAgICAgICAgICAgICAgICAgICAoMHgwMDAwMDgwMFUpICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fT0RSX09EUl8xMiAgICAgICAgICAgICAgICAgICAgICAoMHgwMDAwMTAwMFUpICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fT0RSX09EUl8xMyAgICAgICAgICAgICAgICAgICAgICAoMHgwMDAwMjAwMFUpICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fT0RSX09EUl8xNCAgICAgICAgICAgICAgICAgICAgICAoMHgwMDAwNDAwMFUpICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fT0RSX09EUl8xNSAgICAgICAgICAgICAgICAgICAgICAoMHgwMDAwODAwMFUpICAgICAgICAgICAgICAgICAgICAgDQoNCi8qKioqKioqKioqKioqKioqKiogIEJpdHMgZGVmaW5pdGlvbiBmb3IgR1BJT19CU1JSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIEdQSU9fQlNSUl9CU18wICAgICAgICAgICAgICAgICAgICAgICAoMHgwMDAwMDAwMVUpICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fQlNSUl9CU18xICAgICAgICAgICAgICAgICAgICAgICAoMHgwMDAwMDAwMlUpICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fQlNSUl9CU18yICAgICAgICAgICAgICAgICAgICAgICAoMHgwMDAwMDAwNFUpICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fQlNSUl9CU18zICAgICAgICAgICAgICAgICAgICAgICAoMHgwMDAwMDAwOFUpICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fQlNSUl9CU180ICAgICAgICAgICAgICAgICAgICAgICAoMHgwMDAwMDAxMFUpICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fQlNSUl9CU181ICAgICAgICAgICAgICAgICAgICAgICAoMHgwMDAwMDAyMFUpICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fQlNSUl9CU182ICAgICAgICAgICAgICAgICAgICAgICAoMHgwMDAwMDA0MFUpICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fQlNSUl9CU183ICAgICAgICAgICAgICAgICAgICAgICAoMHgwMDAwMDA4MFUpICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fQlNSUl9CU184ICAgICAgICAgICAgICAgICAgICAgICAoMHgwMDAwMDEwMFUpICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fQlNSUl9CU185ICAgICAgICAgICAgICAgICAgICAgICAoMHgwMDAwMDIwMFUpICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fQlNSUl9CU18xMCAgICAgICAgICAgICAgICAgICAgICAoMHgwMDAwMDQwMFUpICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fQlNSUl9CU18xMSAgICAgICAgICAgICAgICAgICAgICAoMHgwMDAwMDgwMFUpICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fQlNSUl9CU18xMiAgICAgICAgICAgICAgICAgICAgICAoMHgwMDAwMTAwMFUpICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fQlNSUl9CU18xMyAgICAgICAgICAgICAgICAgICAgICAoMHgwMDAwMjAwMFUpICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fQlNSUl9CU18xNCAgICAgICAgICAgICAgICAgICAgICAoMHgwMDAwNDAwMFUpICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fQlNSUl9CU18xNSAgICAgICAgICAgICAgICAgICAgICAoMHgwMDAwODAwMFUpICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fQlNSUl9CUl8wICAgICAgICAgICAgICAgICAgICAgICAoMHgwMDAxMDAwMFUpICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fQlNSUl9CUl8xICAgICAgICAgICAgICAgICAgICAgICAoMHgwMDAyMDAwMFUpICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fQlNSUl9CUl8yICAgICAgICAgICAgICAgICAgICAgICAoMHgwMDA0MDAwMFUpICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fQlNSUl9CUl8zICAgICAgICAgICAgICAgICAgICAgICAoMHgwMDA4MDAwMFUpICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fQlNSUl9CUl80ICAgICAgICAgICAgICAgICAgICAgICAoMHgwMDEwMDAwMFUpICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fQlNSUl9CUl81ICAgICAgICAgICAgICAgICAgICAgICAoMHgwMDIwMDAwMFUpICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fQlNSUl9CUl82ICAgICAgICAgICAgICAgICAgICAgICAoMHgwMDQwMDAwMFUpICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fQlNSUl9CUl83ICAgICAgICAgICAgICAgICAgICAgICAoMHgwMDgwMDAwMFUpICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fQlNSUl9CUl84ICAgICAgICAgICAgICAgICAgICAgICAoMHgwMTAwMDAwMFUpICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fQlNSUl9CUl85ICAgICAgICAgICAgICAgICAgICAgICAoMHgwMjAwMDAwMFUpICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fQlNSUl9CUl8xMCAgICAgICAgICAgICAgICAgICAgICAoMHgwNDAwMDAwMFUpICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fQlNSUl9CUl8xMSAgICAgICAgICAgICAgICAgICAgICAoMHgwODAwMDAwMFUpICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fQlNSUl9CUl8xMiAgICAgICAgICAgICAgICAgICAgICAoMHgxMDAwMDAwMFUpICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fQlNSUl9CUl8xMyAgICAgICAgICAgICAgICAgICAgICAoMHgyMDAwMDAwMFUpICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fQlNSUl9CUl8xNCAgICAgICAgICAgICAgICAgICAgICAoMHg0MDAwMDAwMFUpICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fQlNSUl9CUl8xNSAgICAgICAgICAgICAgICAgICAgICAoMHg4MDAwMDAwMFUpICAgICAgICAgICAgICAgICAgICAgDQoNCi8qKioqKioqKioqKioqKioqKiogQml0IGRlZmluaXRpb24gZm9yIEdQSU9fTENLUiByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIEdQSU9fTENLUl9MQ0swX1BvcyAgICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fTENLUl9MQ0swX01zayAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBHUElPX0xDS1JfTENLMF9Qb3MpICAgICAgLyohPCAweDAwMDAwMDAxICovDQojZGVmaW5lIEdQSU9fTENLUl9MQ0swICAgICAgICAgICAgICAgICAgICAgICBHUElPX0xDS1JfTENLMF9Nc2sgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fTENLUl9MQ0sxX1BvcyAgICAgICAgICAgICAgICAgICAoMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fTENLUl9MQ0sxX01zayAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBHUElPX0xDS1JfTENLMV9Qb3MpICAgICAgLyohPCAweDAwMDAwMDAyICovDQojZGVmaW5lIEdQSU9fTENLUl9MQ0sxICAgICAgICAgICAgICAgICAgICAgICBHUElPX0xDS1JfTENLMV9Nc2sgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fTENLUl9MQ0syX1BvcyAgICAgICAgICAgICAgICAgICAoMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fTENLUl9MQ0syX01zayAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBHUElPX0xDS1JfTENLMl9Qb3MpICAgICAgLyohPCAweDAwMDAwMDA0ICovDQojZGVmaW5lIEdQSU9fTENLUl9MQ0syICAgICAgICAgICAgICAgICAgICAgICBHUElPX0xDS1JfTENLMl9Nc2sgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fTENLUl9MQ0szX1BvcyAgICAgICAgICAgICAgICAgICAoM1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fTENLUl9MQ0szX01zayAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBHUElPX0xDS1JfTENLM19Qb3MpICAgICAgLyohPCAweDAwMDAwMDA4ICovDQojZGVmaW5lIEdQSU9fTENLUl9MQ0szICAgICAgICAgICAgICAgICAgICAgICBHUElPX0xDS1JfTENLM19Nc2sgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fTENLUl9MQ0s0X1BvcyAgICAgICAgICAgICAgICAgICAoNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fTENLUl9MQ0s0X01zayAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBHUElPX0xDS1JfTENLNF9Qb3MpICAgICAgLyohPCAweDAwMDAwMDEwICovDQojZGVmaW5lIEdQSU9fTENLUl9MQ0s0ICAgICAgICAgICAgICAgICAgICAgICBHUElPX0xDS1JfTENLNF9Nc2sgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fTENLUl9MQ0s1X1BvcyAgICAgICAgICAgICAgICAgICAoNVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fTENLUl9MQ0s1X01zayAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBHUElPX0xDS1JfTENLNV9Qb3MpICAgICAgLyohPCAweDAwMDAwMDIwICovDQojZGVmaW5lIEdQSU9fTENLUl9MQ0s1ICAgICAgICAgICAgICAgICAgICAgICBHUElPX0xDS1JfTENLNV9Nc2sgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fTENLUl9MQ0s2X1BvcyAgICAgICAgICAgICAgICAgICAoNlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fTENLUl9MQ0s2X01zayAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBHUElPX0xDS1JfTENLNl9Qb3MpICAgICAgLyohPCAweDAwMDAwMDQwICovDQojZGVmaW5lIEdQSU9fTENLUl9MQ0s2ICAgICAgICAgICAgICAgICAgICAgICBHUElPX0xDS1JfTENLNl9Nc2sgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fTENLUl9MQ0s3X1BvcyAgICAgICAgICAgICAgICAgICAoN1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fTENLUl9MQ0s3X01zayAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBHUElPX0xDS1JfTENLN19Qb3MpICAgICAgLyohPCAweDAwMDAwMDgwICovDQojZGVmaW5lIEdQSU9fTENLUl9MQ0s3ICAgICAgICAgICAgICAgICAgICAgICBHUElPX0xDS1JfTENLN19Nc2sgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fTENLUl9MQ0s4X1BvcyAgICAgICAgICAgICAgICAgICAoOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fTENLUl9MQ0s4X01zayAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBHUElPX0xDS1JfTENLOF9Qb3MpICAgICAgLyohPCAweDAwMDAwMTAwICovDQojZGVmaW5lIEdQSU9fTENLUl9MQ0s4ICAgICAgICAgICAgICAgICAgICAgICBHUElPX0xDS1JfTENLOF9Nc2sgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fTENLUl9MQ0s5X1BvcyAgICAgICAgICAgICAgICAgICAoOVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fTENLUl9MQ0s5X01zayAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBHUElPX0xDS1JfTENLOV9Qb3MpICAgICAgLyohPCAweDAwMDAwMjAwICovDQojZGVmaW5lIEdQSU9fTENLUl9MQ0s5ICAgICAgICAgICAgICAgICAgICAgICBHUElPX0xDS1JfTENLOV9Nc2sgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fTENLUl9MQ0sxMF9Qb3MgICAgICAgICAgICAgICAgICAoMTBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fTENLUl9MQ0sxMF9Nc2sgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBHUElPX0xDS1JfTENLMTBfUG9zKSAgICAgLyohPCAweDAwMDAwNDAwICovDQojZGVmaW5lIEdQSU9fTENLUl9MQ0sxMCAgICAgICAgICAgICAgICAgICAgICBHUElPX0xDS1JfTENLMTBfTXNrICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fTENLUl9MQ0sxMV9Qb3MgICAgICAgICAgICAgICAgICAoMTFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fTENLUl9MQ0sxMV9Nc2sgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBHUElPX0xDS1JfTENLMTFfUG9zKSAgICAgLyohPCAweDAwMDAwODAwICovDQojZGVmaW5lIEdQSU9fTENLUl9MQ0sxMSAgICAgICAgICAgICAgICAgICAgICBHUElPX0xDS1JfTENLMTFfTXNrICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fTENLUl9MQ0sxMl9Qb3MgICAgICAgICAgICAgICAgICAoMTJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fTENLUl9MQ0sxMl9Nc2sgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBHUElPX0xDS1JfTENLMTJfUG9zKSAgICAgLyohPCAweDAwMDAxMDAwICovDQojZGVmaW5lIEdQSU9fTENLUl9MQ0sxMiAgICAgICAgICAgICAgICAgICAgICBHUElPX0xDS1JfTENLMTJfTXNrICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fTENLUl9MQ0sxM19Qb3MgICAgICAgICAgICAgICAgICAoMTNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fTENLUl9MQ0sxM19Nc2sgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBHUElPX0xDS1JfTENLMTNfUG9zKSAgICAgLyohPCAweDAwMDAyMDAwICovDQojZGVmaW5lIEdQSU9fTENLUl9MQ0sxMyAgICAgICAgICAgICAgICAgICAgICBHUElPX0xDS1JfTENLMTNfTXNrICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fTENLUl9MQ0sxNF9Qb3MgICAgICAgICAgICAgICAgICAoMTRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fTENLUl9MQ0sxNF9Nc2sgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBHUElPX0xDS1JfTENLMTRfUG9zKSAgICAgLyohPCAweDAwMDA0MDAwICovDQojZGVmaW5lIEdQSU9fTENLUl9MQ0sxNCAgICAgICAgICAgICAgICAgICAgICBHUElPX0xDS1JfTENLMTRfTXNrICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fTENLUl9MQ0sxNV9Qb3MgICAgICAgICAgICAgICAgICAoMTVVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fTENLUl9MQ0sxNV9Nc2sgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBHUElPX0xDS1JfTENLMTVfUG9zKSAgICAgLyohPCAweDAwMDA4MDAwICovDQojZGVmaW5lIEdQSU9fTENLUl9MQ0sxNSAgICAgICAgICAgICAgICAgICAgICBHUElPX0xDS1JfTENLMTVfTXNrICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fTENLUl9MQ0tLX1BvcyAgICAgICAgICAgICAgICAgICAoMTZVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fTENLUl9MQ0tLX01zayAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBHUElPX0xDS1JfTENLS19Qb3MpICAgICAgLyohPCAweDAwMDEwMDAwICovDQojZGVmaW5lIEdQSU9fTENLUl9MQ0tLICAgICAgICAgICAgICAgICAgICAgICBHUElPX0xDS1JfTENLS19Nc2sgICAgICAgICAgICAgICAgDQoNCi8qKioqKioqKioqKioqKioqKiogQml0IGRlZmluaXRpb24gZm9yIEdQSU9fQUZSTCByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIEdQSU9fQUZSTF9BRlNFTDBfUG9zICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX0FGUkxfQUZTRUwwX01zayAgICAgICAgICAgICAgICAgICgweEZVIDw8IEdQSU9fQUZSTF9BRlNFTDBfUG9zKSAgICAgLyohPCAweDAwMDAwMDBGICovDQojZGVmaW5lIEdQSU9fQUZSTF9BRlNFTDAgICAgICAgICAgICAgICAgICAgICAgR1BJT19BRlJMX0FGU0VMMF9Nc2sgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19BRlJMX0FGU0VMMV9Qb3MgICAgICAgICAgICAgICAgICAoNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fQUZSTF9BRlNFTDFfTXNrICAgICAgICAgICAgICAgICAgKDB4RlUgPDwgR1BJT19BRlJMX0FGU0VMMV9Qb3MpICAgICAvKiE8IDB4MDAwMDAwRjAgKi8NCiNkZWZpbmUgR1BJT19BRlJMX0FGU0VMMSAgICAgICAgICAgICAgICAgICAgICBHUElPX0FGUkxfQUZTRUwxX01zayAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX0FGUkxfQUZTRUwyX1BvcyAgICAgICAgICAgICAgICAgICg4VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19BRlJMX0FGU0VMMl9Nc2sgICAgICAgICAgICAgICAgICAoMHhGVSA8PCBHUElPX0FGUkxfQUZTRUwyX1BvcykgICAgIC8qITwgMHgwMDAwMEYwMCAqLw0KI2RlZmluZSBHUElPX0FGUkxfQUZTRUwyICAgICAgICAgICAgICAgICAgICAgIEdQSU9fQUZSTF9BRlNFTDJfTXNrICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fQUZSTF9BRlNFTDNfUG9zICAgICAgICAgICAgICAgICAgKDEyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX0FGUkxfQUZTRUwzX01zayAgICAgICAgICAgICAgICAgICgweEZVIDw8IEdQSU9fQUZSTF9BRlNFTDNfUG9zKSAgICAgLyohPCAweDAwMDBGMDAwICovDQojZGVmaW5lIEdQSU9fQUZSTF9BRlNFTDMgICAgICAgICAgICAgICAgICAgICAgR1BJT19BRlJMX0FGU0VMM19Nc2sgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19BRlJMX0FGU0VMNF9Qb3MgICAgICAgICAgICAgICAgICAoMTZVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fQUZSTF9BRlNFTDRfTXNrICAgICAgICAgICAgICAgICAgKDB4RlUgPDwgR1BJT19BRlJMX0FGU0VMNF9Qb3MpICAgICAvKiE8IDB4MDAwRjAwMDAgKi8NCiNkZWZpbmUgR1BJT19BRlJMX0FGU0VMNCAgICAgICAgICAgICAgICAgICAgICBHUElPX0FGUkxfQUZTRUw0X01zayAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX0FGUkxfQUZTRUw1X1BvcyAgICAgICAgICAgICAgICAgICgyMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19BRlJMX0FGU0VMNV9Nc2sgICAgICAgICAgICAgICAgICAoMHhGVSA8PCBHUElPX0FGUkxfQUZTRUw1X1BvcykgICAgIC8qITwgMHgwMEYwMDAwMCAqLw0KI2RlZmluZSBHUElPX0FGUkxfQUZTRUw1ICAgICAgICAgICAgICAgICAgICAgIEdQSU9fQUZSTF9BRlNFTDVfTXNrICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fQUZSTF9BRlNFTDZfUG9zICAgICAgICAgICAgICAgICAgKDI0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX0FGUkxfQUZTRUw2X01zayAgICAgICAgICAgICAgICAgICgweEZVIDw8IEdQSU9fQUZSTF9BRlNFTDZfUG9zKSAgICAgLyohPCAweDBGMDAwMDAwICovDQojZGVmaW5lIEdQSU9fQUZSTF9BRlNFTDYgICAgICAgICAgICAgICAgICAgICAgR1BJT19BRlJMX0FGU0VMNl9Nc2sgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19BRlJMX0FGU0VMN19Qb3MgICAgICAgICAgICAgICAgICAoMjhVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fQUZSTF9BRlNFTDdfTXNrICAgICAgICAgICAgICAgICAgKDB4RlUgPDwgR1BJT19BRlJMX0FGU0VMN19Qb3MpICAgICAvKiE8IDB4RjAwMDAwMDAgKi8NCiNkZWZpbmUgR1BJT19BRlJMX0FGU0VMNyAgICAgICAgICAgICAgICAgICAgICBHUElPX0FGUkxfQUZTRUw3X01zayAgICAgICAgICAgICAgIA0KDQovKioqKioqKioqKioqKioqKioqIEJpdCBkZWZpbml0aW9uIGZvciBHUElPX0FGUkggcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBHUElPX0FGUkhfQUZTRUw4X1BvcyAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19BRlJIX0FGU0VMOF9Nc2sgICAgICAgICAgICAgICAgICAoMHhGVSA8PCBHUElPX0FGUkhfQUZTRUw4X1BvcykgICAgIC8qITwgMHgwMDAwMDAwRiAqLw0KI2RlZmluZSBHUElPX0FGUkhfQUZTRUw4ICAgICAgICAgICAgICAgICAgICAgIEdQSU9fQUZSSF9BRlNFTDhfTXNrICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fQUZSSF9BRlNFTDlfUG9zICAgICAgICAgICAgICAgICAgKDRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX0FGUkhfQUZTRUw5X01zayAgICAgICAgICAgICAgICAgICgweEZVIDw8IEdQSU9fQUZSSF9BRlNFTDlfUG9zKSAgICAgLyohPCAweDAwMDAwMEYwICovDQojZGVmaW5lIEdQSU9fQUZSSF9BRlNFTDkgICAgICAgICAgICAgICAgICAgICAgR1BJT19BRlJIX0FGU0VMOV9Nc2sgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19BRlJIX0FGU0VMMTBfUG9zICAgICAgICAgICAgICAgICAgKDhVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX0FGUkhfQUZTRUwxMF9Nc2sgICAgICAgICAgICAgICAgICAoMHhGVSA8PCBHUElPX0FGUkhfQUZTRUwxMF9Qb3MpICAgICAvKiE8IDB4MDAwMDBGMDAgKi8NCiNkZWZpbmUgR1BJT19BRlJIX0FGU0VMMTAgICAgICAgICAgICAgICAgICAgICAgR1BJT19BRlJIX0FGU0VMMTBfTXNrICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fQUZSSF9BRlNFTDExX1BvcyAgICAgICAgICAgICAgICAgICgxMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19BRlJIX0FGU0VMMTFfTXNrICAgICAgICAgICAgICAgICAgKDB4RlUgPDwgR1BJT19BRlJIX0FGU0VMMTFfUG9zKSAgICAgLyohPCAweDAwMDBGMDAwICovDQojZGVmaW5lIEdQSU9fQUZSSF9BRlNFTDExICAgICAgICAgICAgICAgICAgICAgIEdQSU9fQUZSSF9BRlNFTDExX01zayAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX0FGUkhfQUZTRUwxMl9Qb3MgICAgICAgICAgICAgICAgICAoMTZVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fQUZSSF9BRlNFTDEyX01zayAgICAgICAgICAgICAgICAgICgweEZVIDw8IEdQSU9fQUZSSF9BRlNFTDEyX1BvcykgICAgIC8qITwgMHgwMDBGMDAwMCAqLw0KI2RlZmluZSBHUElPX0FGUkhfQUZTRUwxMiAgICAgICAgICAgICAgICAgICAgICBHUElPX0FGUkhfQUZTRUwxMl9Nc2sgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19BRlJIX0FGU0VMMTNfUG9zICAgICAgICAgICAgICAgICAgKDIwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX0FGUkhfQUZTRUwxM19Nc2sgICAgICAgICAgICAgICAgICAoMHhGVSA8PCBHUElPX0FGUkhfQUZTRUwxM19Qb3MpICAgICAvKiE8IDB4MDBGMDAwMDAgKi8NCiNkZWZpbmUgR1BJT19BRlJIX0FGU0VMMTMgICAgICAgICAgICAgICAgICAgICAgR1BJT19BRlJIX0FGU0VMMTNfTXNrICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fQUZSSF9BRlNFTDE0X1BvcyAgICAgICAgICAgICAgICAgICgyNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19BRlJIX0FGU0VMMTRfTXNrICAgICAgICAgICAgICAgICAgKDB4RlUgPDwgR1BJT19BRlJIX0FGU0VMMTRfUG9zKSAgICAgLyohPCAweDBGMDAwMDAwICovDQojZGVmaW5lIEdQSU9fQUZSSF9BRlNFTDE0ICAgICAgICAgICAgICAgICAgICAgIEdQSU9fQUZSSF9BRlNFTDE0X01zayAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX0FGUkhfQUZTRUwxNV9Qb3MgICAgICAgICAgICAgICAgICAoMjhVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fQUZSSF9BRlNFTDE1X01zayAgICAgICAgICAgICAgICAgICgweEZVIDw8IEdQSU9fQUZSSF9BRlNFTDE1X1BvcykgICAgIC8qITwgMHhGMDAwMDAwMCAqLw0KI2RlZmluZSBHUElPX0FGUkhfQUZTRUwxNSAgICAgICAgICAgICAgICAgICAgICBHUElPX0FGUkhfQUZTRUwxNV9Nc2sgICAgICAgICAgICAgICANCg0KLyoqKioqKioqKioqKioqKioqKiBCaXQgZGVmaW5pdGlvbiBmb3IgR1BJT19CUlIgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgR1BJT19CUlJfQlJfMCAgICAgICAgICAgICAgICAgICAgICAgICgweDAwMDAwMDAxVSkgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19CUlJfQlJfMSAgICAgICAgICAgICAgICAgICAgICAgICgweDAwMDAwMDAyVSkgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19CUlJfQlJfMiAgICAgICAgICAgICAgICAgICAgICAgICgweDAwMDAwMDA0VSkgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19CUlJfQlJfMyAgICAgICAgICAgICAgICAgICAgICAgICgweDAwMDAwMDA4VSkgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19CUlJfQlJfNCAgICAgICAgICAgICAgICAgICAgICAgICgweDAwMDAwMDEwVSkgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19CUlJfQlJfNSAgICAgICAgICAgICAgICAgICAgICAgICgweDAwMDAwMDIwVSkgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19CUlJfQlJfNiAgICAgICAgICAgICAgICAgICAgICAgICgweDAwMDAwMDQwVSkgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19CUlJfQlJfNyAgICAgICAgICAgICAgICAgICAgICAgICgweDAwMDAwMDgwVSkgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19CUlJfQlJfOCAgICAgICAgICAgICAgICAgICAgICAgICgweDAwMDAwMTAwVSkgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19CUlJfQlJfOSAgICAgICAgICAgICAgICAgICAgICAgICgweDAwMDAwMjAwVSkgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19CUlJfQlJfMTAgICAgICAgICAgICAgICAgICAgICAgICgweDAwMDAwNDAwVSkgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19CUlJfQlJfMTEgICAgICAgICAgICAgICAgICAgICAgICgweDAwMDAwODAwVSkgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19CUlJfQlJfMTIgICAgICAgICAgICAgICAgICAgICAgICgweDAwMDAxMDAwVSkgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19CUlJfQlJfMTMgICAgICAgICAgICAgICAgICAgICAgICgweDAwMDAyMDAwVSkgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19CUlJfQlJfMTQgICAgICAgICAgICAgICAgICAgICAgICgweDAwMDA0MDAwVSkgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19CUlJfQlJfMTUgICAgICAgICAgICAgICAgICAgICAgICgweDAwMDA4MDAwVSkgICAgICAgICAgICAgICAgICAgICANCg0KLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8NCi8qICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovDQovKiAgICAgICAgICAgICAgICAgICBJbnRlci1pbnRlZ3JhdGVkIENpcmN1aXQgSW50ZXJmYWNlIChJMkMpICAgICAgICAgICAgICAgICAqLw0KLyogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8NCi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovDQoNCi8qKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgSTJDX0NSMSByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIEkyQ19DUjFfUEVfUG9zICAgICAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEkyQ19DUjFfUEVfTXNrICAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IEkyQ19DUjFfUEVfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwMDAxICovDQojZGVmaW5lIEkyQ19DUjFfUEUgICAgICAgICAgICAgICAgICAgICAgICAgIEkyQ19DUjFfUEVfTXNrICAgICAgICAgICAgICAgICAgICAgLyohPCBQZXJpcGhlcmFsIEVuYWJsZSAqLw0KI2RlZmluZSBJMkNfQ1IxX1NNQlVTX1BvcyAgICAgICAgICAgICAgICAgICAoMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBJMkNfQ1IxX1NNQlVTX01zayAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBJMkNfQ1IxX1NNQlVTX1BvcykgICAgICAgIC8qITwgMHgwMDAwMDAwMiAqLw0KI2RlZmluZSBJMkNfQ1IxX1NNQlVTICAgICAgICAgICAgICAgICAgICAgICBJMkNfQ1IxX1NNQlVTX01zayAgICAgICAgICAgICAgICAgIC8qITwgU01CdXMgTW9kZSAqLw0KI2RlZmluZSBJMkNfQ1IxX1NNQlRZUEVfUG9zICAgICAgICAgICAgICAgICAoM1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBJMkNfQ1IxX1NNQlRZUEVfTXNrICAgICAgICAgICAgICAgICAoMHgxVSA8PCBJMkNfQ1IxX1NNQlRZUEVfUG9zKSAgICAgIC8qITwgMHgwMDAwMDAwOCAqLw0KI2RlZmluZSBJMkNfQ1IxX1NNQlRZUEUgICAgICAgICAgICAgICAgICAgICBJMkNfQ1IxX1NNQlRZUEVfTXNrICAgICAgICAgICAgICAgIC8qITwgU01CdXMgVHlwZSAqLw0KI2RlZmluZSBJMkNfQ1IxX0VOQVJQX1BvcyAgICAgICAgICAgICAgICAgICAoNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBJMkNfQ1IxX0VOQVJQX01zayAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBJMkNfQ1IxX0VOQVJQX1BvcykgICAgICAgIC8qITwgMHgwMDAwMDAxMCAqLw0KI2RlZmluZSBJMkNfQ1IxX0VOQVJQICAgICAgICAgICAgICAgICAgICAgICBJMkNfQ1IxX0VOQVJQX01zayAgICAgICAgICAgICAgICAgIC8qITwgQVJQIEVuYWJsZSAqLw0KI2RlZmluZSBJMkNfQ1IxX0VOUEVDX1BvcyAgICAgICAgICAgICAgICAgICAoNVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBJMkNfQ1IxX0VOUEVDX01zayAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBJMkNfQ1IxX0VOUEVDX1BvcykgICAgICAgIC8qITwgMHgwMDAwMDAyMCAqLw0KI2RlZmluZSBJMkNfQ1IxX0VOUEVDICAgICAgICAgICAgICAgICAgICAgICBJMkNfQ1IxX0VOUEVDX01zayAgICAgICAgICAgICAgICAgIC8qITwgUEVDIEVuYWJsZSAqLw0KI2RlZmluZSBJMkNfQ1IxX0VOR0NfUG9zICAgICAgICAgICAgICAgICAgICAoNlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBJMkNfQ1IxX0VOR0NfTXNrICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBJMkNfQ1IxX0VOR0NfUG9zKSAgICAgICAgIC8qITwgMHgwMDAwMDA0MCAqLw0KI2RlZmluZSBJMkNfQ1IxX0VOR0MgICAgICAgICAgICAgICAgICAgICAgICBJMkNfQ1IxX0VOR0NfTXNrICAgICAgICAgICAgICAgICAgIC8qITwgR2VuZXJhbCBDYWxsIEVuYWJsZSAqLw0KI2RlZmluZSBJMkNfQ1IxX05PU1RSRVRDSF9Qb3MgICAgICAgICAgICAgICAoN1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBJMkNfQ1IxX05PU1RSRVRDSF9Nc2sgICAgICAgICAgICAgICAoMHgxVSA8PCBJMkNfQ1IxX05PU1RSRVRDSF9Qb3MpICAgIC8qITwgMHgwMDAwMDA4MCAqLw0KI2RlZmluZSBJMkNfQ1IxX05PU1RSRVRDSCAgICAgICAgICAgICAgICAgICBJMkNfQ1IxX05PU1RSRVRDSF9Nc2sgICAgICAgICAgICAgIC8qITwgQ2xvY2sgU3RyZXRjaGluZyBEaXNhYmxlIChTbGF2ZSBtb2RlKSAqLw0KI2RlZmluZSBJMkNfQ1IxX1NUQVJUX1BvcyAgICAgICAgICAgICAgICAgICAoOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBJMkNfQ1IxX1NUQVJUX01zayAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBJMkNfQ1IxX1NUQVJUX1BvcykgICAgICAgIC8qITwgMHgwMDAwMDEwMCAqLw0KI2RlZmluZSBJMkNfQ1IxX1NUQVJUICAgICAgICAgICAgICAgICAgICAgICBJMkNfQ1IxX1NUQVJUX01zayAgICAgICAgICAgICAgICAgIC8qITwgU3RhcnQgR2VuZXJhdGlvbiAqLw0KI2RlZmluZSBJMkNfQ1IxX1NUT1BfUG9zICAgICAgICAgICAgICAgICAgICAoOVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBJMkNfQ1IxX1NUT1BfTXNrICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBJMkNfQ1IxX1NUT1BfUG9zKSAgICAgICAgIC8qITwgMHgwMDAwMDIwMCAqLw0KI2RlZmluZSBJMkNfQ1IxX1NUT1AgICAgICAgICAgICAgICAgICAgICAgICBJMkNfQ1IxX1NUT1BfTXNrICAgICAgICAgICAgICAgICAgIC8qITwgU3RvcCBHZW5lcmF0aW9uICovDQojZGVmaW5lIEkyQ19DUjFfQUNLX1BvcyAgICAgICAgICAgICAgICAgICAgICgxMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEkyQ19DUjFfQUNLX01zayAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IEkyQ19DUjFfQUNLX1BvcykgICAgICAgICAgLyohPCAweDAwMDAwNDAwICovDQojZGVmaW5lIEkyQ19DUjFfQUNLICAgICAgICAgICAgICAgICAgICAgICAgIEkyQ19DUjFfQUNLX01zayAgICAgICAgICAgICAgICAgICAgLyohPCBBY2tub3dsZWRnZSBFbmFibGUgKi8NCiNkZWZpbmUgSTJDX0NSMV9QT1NfUG9zICAgICAgICAgICAgICAgICAgICAgKDExVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgSTJDX0NSMV9QT1NfTXNrICAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgSTJDX0NSMV9QT1NfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDA4MDAgKi8NCiNkZWZpbmUgSTJDX0NSMV9QT1MgICAgICAgICAgICAgICAgICAgICAgICAgSTJDX0NSMV9QT1NfTXNrICAgICAgICAgICAgICAgICAgICAvKiE8IEFja25vd2xlZGdlL1BFQyBQb3NpdGlvbiAoZm9yIGRhdGEgcmVjZXB0aW9uKSAqLw0KI2RlZmluZSBJMkNfQ1IxX1BFQ19Qb3MgICAgICAgICAgICAgICAgICAgICAoMTJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBJMkNfQ1IxX1BFQ19Nc2sgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBJMkNfQ1IxX1BFQ19Qb3MpICAgICAgICAgIC8qITwgMHgwMDAwMTAwMCAqLw0KI2RlZmluZSBJMkNfQ1IxX1BFQyAgICAgICAgICAgICAgICAgICAgICAgICBJMkNfQ1IxX1BFQ19Nc2sgICAgICAgICAgICAgICAgICAgIC8qITwgUGFja2V0IEVycm9yIENoZWNraW5nICovDQojZGVmaW5lIEkyQ19DUjFfQUxFUlRfUG9zICAgICAgICAgICAgICAgICAgICgxM1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEkyQ19DUjFfQUxFUlRfTXNrICAgICAgICAgICAgICAgICAgICgweDFVIDw8IEkyQ19DUjFfQUxFUlRfUG9zKSAgICAgICAgLyohPCAweDAwMDAyMDAwICovDQojZGVmaW5lIEkyQ19DUjFfQUxFUlQgICAgICAgICAgICAgICAgICAgICAgIEkyQ19DUjFfQUxFUlRfTXNrICAgICAgICAgICAgICAgICAgLyohPCBTTUJ1cyBBbGVydCAqLw0KI2RlZmluZSBJMkNfQ1IxX1NXUlNUX1BvcyAgICAgICAgICAgICAgICAgICAoMTVVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBJMkNfQ1IxX1NXUlNUX01zayAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBJMkNfQ1IxX1NXUlNUX1BvcykgICAgICAgIC8qITwgMHgwMDAwODAwMCAqLw0KI2RlZmluZSBJMkNfQ1IxX1NXUlNUICAgICAgICAgICAgICAgICAgICAgICBJMkNfQ1IxX1NXUlNUX01zayAgICAgICAgICAgICAgICAgIC8qITwgU29mdHdhcmUgUmVzZXQgKi8NCg0KLyoqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBJMkNfQ1IyIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgSTJDX0NSMl9GUkVRX1BvcyAgICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgSTJDX0NSMl9GUkVRX01zayAgICAgICAgICAgICAgICAgICAgKDB4M0ZVIDw8IEkyQ19DUjJfRlJFUV9Qb3MpICAgICAgICAvKiE8IDB4MDAwMDAwM0YgKi8NCiNkZWZpbmUgSTJDX0NSMl9GUkVRICAgICAgICAgICAgICAgICAgICAgICAgSTJDX0NSMl9GUkVRX01zayAgICAgICAgICAgICAgICAgICAvKiE8IEZSRVFbNTowXSBiaXRzIChQZXJpcGhlcmFsIENsb2NrIEZyZXF1ZW5jeSkgKi8NCiNkZWZpbmUgSTJDX0NSMl9GUkVRXzAgICAgICAgICAgICAgICAgICAgICAgKDB4MDFVIDw8IEkyQ19DUjJfRlJFUV9Qb3MpICAgICAgICAvKiE8IDB4MDAwMDAwMDEgKi8NCiNkZWZpbmUgSTJDX0NSMl9GUkVRXzEgICAgICAgICAgICAgICAgICAgICAgKDB4MDJVIDw8IEkyQ19DUjJfRlJFUV9Qb3MpICAgICAgICAvKiE8IDB4MDAwMDAwMDIgKi8NCiNkZWZpbmUgSTJDX0NSMl9GUkVRXzIgICAgICAgICAgICAgICAgICAgICAgKDB4MDRVIDw8IEkyQ19DUjJfRlJFUV9Qb3MpICAgICAgICAvKiE8IDB4MDAwMDAwMDQgKi8NCiNkZWZpbmUgSTJDX0NSMl9GUkVRXzMgICAgICAgICAgICAgICAgICAgICAgKDB4MDhVIDw8IEkyQ19DUjJfRlJFUV9Qb3MpICAgICAgICAvKiE8IDB4MDAwMDAwMDggKi8NCiNkZWZpbmUgSTJDX0NSMl9GUkVRXzQgICAgICAgICAgICAgICAgICAgICAgKDB4MTBVIDw8IEkyQ19DUjJfRlJFUV9Qb3MpICAgICAgICAvKiE8IDB4MDAwMDAwMTAgKi8NCiNkZWZpbmUgSTJDX0NSMl9GUkVRXzUgICAgICAgICAgICAgICAgICAgICAgKDB4MjBVIDw8IEkyQ19DUjJfRlJFUV9Qb3MpICAgICAgICAvKiE8IDB4MDAwMDAwMjAgKi8NCg0KI2RlZmluZSBJMkNfQ1IyX0lURVJSRU5fUG9zICAgICAgICAgICAgICAgICAoOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBJMkNfQ1IyX0lURVJSRU5fTXNrICAgICAgICAgICAgICAgICAoMHgxVSA8PCBJMkNfQ1IyX0lURVJSRU5fUG9zKSAgICAgIC8qITwgMHgwMDAwMDEwMCAqLw0KI2RlZmluZSBJMkNfQ1IyX0lURVJSRU4gICAgICAgICAgICAgICAgICAgICBJMkNfQ1IyX0lURVJSRU5fTXNrICAgICAgICAgICAgICAgIC8qITwgRXJyb3IgSW50ZXJydXB0IEVuYWJsZSAqLw0KI2RlZmluZSBJMkNfQ1IyX0lURVZURU5fUG9zICAgICAgICAgICAgICAgICAoOVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBJMkNfQ1IyX0lURVZURU5fTXNrICAgICAgICAgICAgICAgICAoMHgxVSA8PCBJMkNfQ1IyX0lURVZURU5fUG9zKSAgICAgIC8qITwgMHgwMDAwMDIwMCAqLw0KI2RlZmluZSBJMkNfQ1IyX0lURVZURU4gICAgICAgICAgICAgICAgICAgICBJMkNfQ1IyX0lURVZURU5fTXNrICAgICAgICAgICAgICAgIC8qITwgRXZlbnQgSW50ZXJydXB0IEVuYWJsZSAqLw0KI2RlZmluZSBJMkNfQ1IyX0lUQlVGRU5fUG9zICAgICAgICAgICAgICAgICAoMTBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBJMkNfQ1IyX0lUQlVGRU5fTXNrICAgICAgICAgICAgICAgICAoMHgxVSA8PCBJMkNfQ1IyX0lUQlVGRU5fUG9zKSAgICAgIC8qITwgMHgwMDAwMDQwMCAqLw0KI2RlZmluZSBJMkNfQ1IyX0lUQlVGRU4gICAgICAgICAgICAgICAgICAgICBJMkNfQ1IyX0lUQlVGRU5fTXNrICAgICAgICAgICAgICAgIC8qITwgQnVmZmVyIEludGVycnVwdCBFbmFibGUgKi8NCiNkZWZpbmUgSTJDX0NSMl9ETUFFTl9Qb3MgICAgICAgICAgICAgICAgICAgKDExVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgSTJDX0NSMl9ETUFFTl9Nc2sgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgSTJDX0NSMl9ETUFFTl9Qb3MpICAgICAgICAvKiE8IDB4MDAwMDA4MDAgKi8NCiNkZWZpbmUgSTJDX0NSMl9ETUFFTiAgICAgICAgICAgICAgICAgICAgICAgSTJDX0NSMl9ETUFFTl9Nc2sgICAgICAgICAgICAgICAgICAvKiE8IERNQSBSZXF1ZXN0cyBFbmFibGUgKi8NCiNkZWZpbmUgSTJDX0NSMl9MQVNUX1BvcyAgICAgICAgICAgICAgICAgICAgKDEyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgSTJDX0NSMl9MQVNUX01zayAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgSTJDX0NSMl9MQVNUX1BvcykgICAgICAgICAvKiE8IDB4MDAwMDEwMDAgKi8NCiNkZWZpbmUgSTJDX0NSMl9MQVNUICAgICAgICAgICAgICAgICAgICAgICAgSTJDX0NSMl9MQVNUX01zayAgICAgICAgICAgICAgICAgICAvKiE8IERNQSBMYXN0IFRyYW5zZmVyICovDQoNCi8qKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgSTJDX09BUjEgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIEkyQ19PQVIxX0FERDFfNyAgICAgICAgICAgICAgICAgICAgICgweDAwMDAwMEZFVSkgICAgICAgICAgICAgICAgICAgICAgLyohPCBJbnRlcmZhY2UgQWRkcmVzcyAqLw0KI2RlZmluZSBJMkNfT0FSMV9BREQ4XzkgICAgICAgICAgICAgICAgICAgICAoMHgwMDAwMDMwMFUpICAgICAgICAgICAgICAgICAgICAgIC8qITwgSW50ZXJmYWNlIEFkZHJlc3MgKi8NCg0KI2RlZmluZSBJMkNfT0FSMV9BREQwX1BvcyAgICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBJMkNfT0FSMV9BREQwX01zayAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBJMkNfT0FSMV9BREQwX1BvcykgICAgICAgIC8qITwgMHgwMDAwMDAwMSAqLw0KI2RlZmluZSBJMkNfT0FSMV9BREQwICAgICAgICAgICAgICAgICAgICAgICBJMkNfT0FSMV9BREQwX01zayAgICAgICAgICAgICAgICAgIC8qITwgQml0IDAgKi8NCiNkZWZpbmUgSTJDX09BUjFfQUREMV9Qb3MgICAgICAgICAgICAgICAgICAgKDFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgSTJDX09BUjFfQUREMV9Nc2sgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgSTJDX09BUjFfQUREMV9Qb3MpICAgICAgICAvKiE8IDB4MDAwMDAwMDIgKi8NCiNkZWZpbmUgSTJDX09BUjFfQUREMSAgICAgICAgICAgICAgICAgICAgICAgSTJDX09BUjFfQUREMV9Nc2sgICAgICAgICAgICAgICAgICAvKiE8IEJpdCAxICovDQojZGVmaW5lIEkyQ19PQVIxX0FERDJfUG9zICAgICAgICAgICAgICAgICAgICgyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEkyQ19PQVIxX0FERDJfTXNrICAgICAgICAgICAgICAgICAgICgweDFVIDw8IEkyQ19PQVIxX0FERDJfUG9zKSAgICAgICAgLyohPCAweDAwMDAwMDA0ICovDQojZGVmaW5lIEkyQ19PQVIxX0FERDIgICAgICAgICAgICAgICAgICAgICAgIEkyQ19PQVIxX0FERDJfTXNrICAgICAgICAgICAgICAgICAgLyohPCBCaXQgMiAqLw0KI2RlZmluZSBJMkNfT0FSMV9BREQzX1BvcyAgICAgICAgICAgICAgICAgICAoM1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBJMkNfT0FSMV9BREQzX01zayAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBJMkNfT0FSMV9BREQzX1BvcykgICAgICAgIC8qITwgMHgwMDAwMDAwOCAqLw0KI2RlZmluZSBJMkNfT0FSMV9BREQzICAgICAgICAgICAgICAgICAgICAgICBJMkNfT0FSMV9BREQzX01zayAgICAgICAgICAgICAgICAgIC8qITwgQml0IDMgKi8NCiNkZWZpbmUgSTJDX09BUjFfQURENF9Qb3MgICAgICAgICAgICAgICAgICAgKDRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgSTJDX09BUjFfQURENF9Nc2sgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgSTJDX09BUjFfQURENF9Qb3MpICAgICAgICAvKiE8IDB4MDAwMDAwMTAgKi8NCiNkZWZpbmUgSTJDX09BUjFfQURENCAgICAgICAgICAgICAgICAgICAgICAgSTJDX09BUjFfQURENF9Nc2sgICAgICAgICAgICAgICAgICAvKiE8IEJpdCA0ICovDQojZGVmaW5lIEkyQ19PQVIxX0FERDVfUG9zICAgICAgICAgICAgICAgICAgICg1VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEkyQ19PQVIxX0FERDVfTXNrICAgICAgICAgICAgICAgICAgICgweDFVIDw8IEkyQ19PQVIxX0FERDVfUG9zKSAgICAgICAgLyohPCAweDAwMDAwMDIwICovDQojZGVmaW5lIEkyQ19PQVIxX0FERDUgICAgICAgICAgICAgICAgICAgICAgIEkyQ19PQVIxX0FERDVfTXNrICAgICAgICAgICAgICAgICAgLyohPCBCaXQgNSAqLw0KI2RlZmluZSBJMkNfT0FSMV9BREQ2X1BvcyAgICAgICAgICAgICAgICAgICAoNlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBJMkNfT0FSMV9BREQ2X01zayAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBJMkNfT0FSMV9BREQ2X1BvcykgICAgICAgIC8qITwgMHgwMDAwMDA0MCAqLw0KI2RlZmluZSBJMkNfT0FSMV9BREQ2ICAgICAgICAgICAgICAgICAgICAgICBJMkNfT0FSMV9BREQ2X01zayAgICAgICAgICAgICAgICAgIC8qITwgQml0IDYgKi8NCiNkZWZpbmUgSTJDX09BUjFfQUREN19Qb3MgICAgICAgICAgICAgICAgICAgKDdVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgSTJDX09BUjFfQUREN19Nc2sgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgSTJDX09BUjFfQUREN19Qb3MpICAgICAgICAvKiE8IDB4MDAwMDAwODAgKi8NCiNkZWZpbmUgSTJDX09BUjFfQURENyAgICAgICAgICAgICAgICAgICAgICAgSTJDX09BUjFfQUREN19Nc2sgICAgICAgICAgICAgICAgICAvKiE8IEJpdCA3ICovDQojZGVmaW5lIEkyQ19PQVIxX0FERDhfUG9zICAgICAgICAgICAgICAgICAgICg4VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEkyQ19PQVIxX0FERDhfTXNrICAgICAgICAgICAgICAgICAgICgweDFVIDw8IEkyQ19PQVIxX0FERDhfUG9zKSAgICAgICAgLyohPCAweDAwMDAwMTAwICovDQojZGVmaW5lIEkyQ19PQVIxX0FERDggICAgICAgICAgICAgICAgICAgICAgIEkyQ19PQVIxX0FERDhfTXNrICAgICAgICAgICAgICAgICAgLyohPCBCaXQgOCAqLw0KI2RlZmluZSBJMkNfT0FSMV9BREQ5X1BvcyAgICAgICAgICAgICAgICAgICAoOVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBJMkNfT0FSMV9BREQ5X01zayAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBJMkNfT0FSMV9BREQ5X1BvcykgICAgICAgIC8qITwgMHgwMDAwMDIwMCAqLw0KI2RlZmluZSBJMkNfT0FSMV9BREQ5ICAgICAgICAgICAgICAgICAgICAgICBJMkNfT0FSMV9BREQ5X01zayAgICAgICAgICAgICAgICAgIC8qITwgQml0IDkgKi8NCg0KI2RlZmluZSBJMkNfT0FSMV9BRERNT0RFX1BvcyAgICAgICAgICAgICAgICAoMTVVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBJMkNfT0FSMV9BRERNT0RFX01zayAgICAgICAgICAgICAgICAoMHgxVSA8PCBJMkNfT0FSMV9BRERNT0RFX1BvcykgICAgIC8qITwgMHgwMDAwODAwMCAqLw0KI2RlZmluZSBJMkNfT0FSMV9BRERNT0RFICAgICAgICAgICAgICAgICAgICBJMkNfT0FSMV9BRERNT0RFX01zayAgICAgICAgICAgICAgIC8qITwgQWRkcmVzc2luZyBNb2RlIChTbGF2ZSBtb2RlKSAqLw0KDQovKioqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIEkyQ19PQVIyIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBJMkNfT0FSMl9FTkRVQUxfUG9zICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBJMkNfT0FSMl9FTkRVQUxfTXNrICAgICAgICAgICAgICAgICAoMHgxVSA8PCBJMkNfT0FSMl9FTkRVQUxfUG9zKSAgICAgIC8qITwgMHgwMDAwMDAwMSAqLw0KI2RlZmluZSBJMkNfT0FSMl9FTkRVQUwgICAgICAgICAgICAgICAgICAgICBJMkNfT0FSMl9FTkRVQUxfTXNrICAgICAgICAgICAgICAgIC8qITwgRHVhbCBhZGRyZXNzaW5nIG1vZGUgZW5hYmxlICovDQojZGVmaW5lIEkyQ19PQVIyX0FERDJfUG9zICAgICAgICAgICAgICAgICAgICgxVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEkyQ19PQVIyX0FERDJfTXNrICAgICAgICAgICAgICAgICAgICgweDdGVSA8PCBJMkNfT0FSMl9BREQyX1BvcykgICAgICAgLyohPCAweDAwMDAwMEZFICovDQojZGVmaW5lIEkyQ19PQVIyX0FERDIgICAgICAgICAgICAgICAgICAgICAgIEkyQ19PQVIyX0FERDJfTXNrICAgICAgICAgICAgICAgICAgLyohPCBJbnRlcmZhY2UgYWRkcmVzcyAqLw0KDQovKioqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBJMkNfRFIgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBJMkNfRFJfRFJfUG9zICAgICAgICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBJMkNfRFJfRFJfTXNrICAgICAgICAgICAgICAgICAgICAgICAoMHhGRlUgPDwgSTJDX0RSX0RSX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDBGRiAqLw0KI2RlZmluZSBJMkNfRFJfRFIgICAgICAgICAgICAgICAgICAgICAgICAgICBJMkNfRFJfRFJfTXNrICAgICAgICAgICAgICAgICAgICAgIC8qITwgOC1iaXQgRGF0YSBSZWdpc3RlciAqLw0KDQovKioqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIEkyQ19TUjEgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBJMkNfU1IxX1NCX1BvcyAgICAgICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBJMkNfU1IxX1NCX01zayAgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBJMkNfU1IxX1NCX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDAwMSAqLw0KI2RlZmluZSBJMkNfU1IxX1NCICAgICAgICAgICAgICAgICAgICAgICAgICBJMkNfU1IxX1NCX01zayAgICAgICAgICAgICAgICAgICAgIC8qITwgU3RhcnQgQml0IChNYXN0ZXIgbW9kZSkgKi8NCiNkZWZpbmUgSTJDX1NSMV9BRERSX1BvcyAgICAgICAgICAgICAgICAgICAgKDFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgSTJDX1NSMV9BRERSX01zayAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgSTJDX1NSMV9BRERSX1BvcykgICAgICAgICAvKiE8IDB4MDAwMDAwMDIgKi8NCiNkZWZpbmUgSTJDX1NSMV9BRERSICAgICAgICAgICAgICAgICAgICAgICAgSTJDX1NSMV9BRERSX01zayAgICAgICAgICAgICAgICAgICAvKiE8IEFkZHJlc3Mgc2VudCAobWFzdGVyIG1vZGUpL21hdGNoZWQgKHNsYXZlIG1vZGUpICovDQojZGVmaW5lIEkyQ19TUjFfQlRGX1BvcyAgICAgICAgICAgICAgICAgICAgICgyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEkyQ19TUjFfQlRGX01zayAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IEkyQ19TUjFfQlRGX1BvcykgICAgICAgICAgLyohPCAweDAwMDAwMDA0ICovDQojZGVmaW5lIEkyQ19TUjFfQlRGICAgICAgICAgICAgICAgICAgICAgICAgIEkyQ19TUjFfQlRGX01zayAgICAgICAgICAgICAgICAgICAgLyohPCBCeXRlIFRyYW5zZmVyIEZpbmlzaGVkICovDQojZGVmaW5lIEkyQ19TUjFfQUREMTBfUG9zICAgICAgICAgICAgICAgICAgICgzVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEkyQ19TUjFfQUREMTBfTXNrICAgICAgICAgICAgICAgICAgICgweDFVIDw8IEkyQ19TUjFfQUREMTBfUG9zKSAgICAgICAgLyohPCAweDAwMDAwMDA4ICovDQojZGVmaW5lIEkyQ19TUjFfQUREMTAgICAgICAgICAgICAgICAgICAgICAgIEkyQ19TUjFfQUREMTBfTXNrICAgICAgICAgICAgICAgICAgLyohPCAxMC1iaXQgaGVhZGVyIHNlbnQgKE1hc3RlciBtb2RlKSAqLw0KI2RlZmluZSBJMkNfU1IxX1NUT1BGX1BvcyAgICAgICAgICAgICAgICAgICAoNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBJMkNfU1IxX1NUT1BGX01zayAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBJMkNfU1IxX1NUT1BGX1BvcykgICAgICAgIC8qITwgMHgwMDAwMDAxMCAqLw0KI2RlZmluZSBJMkNfU1IxX1NUT1BGICAgICAgICAgICAgICAgICAgICAgICBJMkNfU1IxX1NUT1BGX01zayAgICAgICAgICAgICAgICAgIC8qITwgU3RvcCBkZXRlY3Rpb24gKFNsYXZlIG1vZGUpICovDQojZGVmaW5lIEkyQ19TUjFfUlhORV9Qb3MgICAgICAgICAgICAgICAgICAgICg2VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEkyQ19TUjFfUlhORV9Nc2sgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IEkyQ19TUjFfUlhORV9Qb3MpICAgICAgICAgLyohPCAweDAwMDAwMDQwICovDQojZGVmaW5lIEkyQ19TUjFfUlhORSAgICAgICAgICAgICAgICAgICAgICAgIEkyQ19TUjFfUlhORV9Nc2sgICAgICAgICAgICAgICAgICAgLyohPCBEYXRhIFJlZ2lzdGVyIG5vdCBFbXB0eSAocmVjZWl2ZXJzKSAqLw0KI2RlZmluZSBJMkNfU1IxX1RYRV9Qb3MgICAgICAgICAgICAgICAgICAgICAoN1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBJMkNfU1IxX1RYRV9Nc2sgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBJMkNfU1IxX1RYRV9Qb3MpICAgICAgICAgIC8qITwgMHgwMDAwMDA4MCAqLw0KI2RlZmluZSBJMkNfU1IxX1RYRSAgICAgICAgICAgICAgICAgICAgICAgICBJMkNfU1IxX1RYRV9Nc2sgICAgICAgICAgICAgICAgICAgIC8qITwgRGF0YSBSZWdpc3RlciBFbXB0eSAodHJhbnNtaXR0ZXJzKSAqLw0KI2RlZmluZSBJMkNfU1IxX0JFUlJfUG9zICAgICAgICAgICAgICAgICAgICAoOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBJMkNfU1IxX0JFUlJfTXNrICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBJMkNfU1IxX0JFUlJfUG9zKSAgICAgICAgIC8qITwgMHgwMDAwMDEwMCAqLw0KI2RlZmluZSBJMkNfU1IxX0JFUlIgICAgICAgICAgICAgICAgICAgICAgICBJMkNfU1IxX0JFUlJfTXNrICAgICAgICAgICAgICAgICAgIC8qITwgQnVzIEVycm9yICovDQojZGVmaW5lIEkyQ19TUjFfQVJMT19Qb3MgICAgICAgICAgICAgICAgICAgICg5VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEkyQ19TUjFfQVJMT19Nc2sgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IEkyQ19TUjFfQVJMT19Qb3MpICAgICAgICAgLyohPCAweDAwMDAwMjAwICovDQojZGVmaW5lIEkyQ19TUjFfQVJMTyAgICAgICAgICAgICAgICAgICAgICAgIEkyQ19TUjFfQVJMT19Nc2sgICAgICAgICAgICAgICAgICAgLyohPCBBcmJpdHJhdGlvbiBMb3N0IChtYXN0ZXIgbW9kZSkgKi8NCiNkZWZpbmUgSTJDX1NSMV9BRl9Qb3MgICAgICAgICAgICAgICAgICAgICAgKDEwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgSTJDX1NSMV9BRl9Nc2sgICAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgSTJDX1NSMV9BRl9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDA0MDAgKi8NCiNkZWZpbmUgSTJDX1NSMV9BRiAgICAgICAgICAgICAgICAgICAgICAgICAgSTJDX1NSMV9BRl9Nc2sgICAgICAgICAgICAgICAgICAgICAvKiE8IEFja25vd2xlZGdlIEZhaWx1cmUgKi8NCiNkZWZpbmUgSTJDX1NSMV9PVlJfUG9zICAgICAgICAgICAgICAgICAgICAgKDExVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgSTJDX1NSMV9PVlJfTXNrICAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgSTJDX1NSMV9PVlJfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDA4MDAgKi8NCiNkZWZpbmUgSTJDX1NSMV9PVlIgICAgICAgICAgICAgICAgICAgICAgICAgSTJDX1NSMV9PVlJfTXNrICAgICAgICAgICAgICAgICAgICAvKiE8IE92ZXJydW4vVW5kZXJydW4gKi8NCiNkZWZpbmUgSTJDX1NSMV9QRUNFUlJfUG9zICAgICAgICAgICAgICAgICAgKDEyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgSTJDX1NSMV9QRUNFUlJfTXNrICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgSTJDX1NSMV9QRUNFUlJfUG9zKSAgICAgICAvKiE8IDB4MDAwMDEwMDAgKi8NCiNkZWZpbmUgSTJDX1NSMV9QRUNFUlIgICAgICAgICAgICAgICAgICAgICAgSTJDX1NSMV9QRUNFUlJfTXNrICAgICAgICAgICAgICAgICAvKiE8IFBFQyBFcnJvciBpbiByZWNlcHRpb24gKi8NCiNkZWZpbmUgSTJDX1NSMV9USU1FT1VUX1BvcyAgICAgICAgICAgICAgICAgKDE0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgSTJDX1NSMV9USU1FT1VUX01zayAgICAgICAgICAgICAgICAgKDB4MVUgPDwgSTJDX1NSMV9USU1FT1VUX1BvcykgICAgICAvKiE8IDB4MDAwMDQwMDAgKi8NCiNkZWZpbmUgSTJDX1NSMV9USU1FT1VUICAgICAgICAgICAgICAgICAgICAgSTJDX1NSMV9USU1FT1VUX01zayAgICAgICAgICAgICAgICAvKiE8IFRpbWVvdXQgb3IgVGxvdyBFcnJvciAqLw0KI2RlZmluZSBJMkNfU1IxX1NNQkFMRVJUX1BvcyAgICAgICAgICAgICAgICAoMTVVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBJMkNfU1IxX1NNQkFMRVJUX01zayAgICAgICAgICAgICAgICAoMHgxVSA8PCBJMkNfU1IxX1NNQkFMRVJUX1BvcykgICAgIC8qITwgMHgwMDAwODAwMCAqLw0KI2RlZmluZSBJMkNfU1IxX1NNQkFMRVJUICAgICAgICAgICAgICAgICAgICBJMkNfU1IxX1NNQkFMRVJUX01zayAgICAgICAgICAgICAgIC8qITwgU01CdXMgQWxlcnQgKi8NCg0KLyoqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBJMkNfU1IyIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgSTJDX1NSMl9NU0xfUG9zICAgICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgSTJDX1NSMl9NU0xfTXNrICAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgSTJDX1NSMl9NU0xfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDAwMDEgKi8NCiNkZWZpbmUgSTJDX1NSMl9NU0wgICAgICAgICAgICAgICAgICAgICAgICAgSTJDX1NSMl9NU0xfTXNrICAgICAgICAgICAgICAgICAgICAvKiE8IE1hc3Rlci9TbGF2ZSAqLw0KI2RlZmluZSBJMkNfU1IyX0JVU1lfUG9zICAgICAgICAgICAgICAgICAgICAoMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBJMkNfU1IyX0JVU1lfTXNrICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBJMkNfU1IyX0JVU1lfUG9zKSAgICAgICAgIC8qITwgMHgwMDAwMDAwMiAqLw0KI2RlZmluZSBJMkNfU1IyX0JVU1kgICAgICAgICAgICAgICAgICAgICAgICBJMkNfU1IyX0JVU1lfTXNrICAgICAgICAgICAgICAgICAgIC8qITwgQnVzIEJ1c3kgKi8NCiNkZWZpbmUgSTJDX1NSMl9UUkFfUG9zICAgICAgICAgICAgICAgICAgICAgKDJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgSTJDX1NSMl9UUkFfTXNrICAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgSTJDX1NSMl9UUkFfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDAwMDQgKi8NCiNkZWZpbmUgSTJDX1NSMl9UUkEgICAgICAgICAgICAgICAgICAgICAgICAgSTJDX1NSMl9UUkFfTXNrICAgICAgICAgICAgICAgICAgICAvKiE8IFRyYW5zbWl0dGVyL1JlY2VpdmVyICovDQojZGVmaW5lIEkyQ19TUjJfR0VOQ0FMTF9Qb3MgICAgICAgICAgICAgICAgICg0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEkyQ19TUjJfR0VOQ0FMTF9Nc2sgICAgICAgICAgICAgICAgICgweDFVIDw8IEkyQ19TUjJfR0VOQ0FMTF9Qb3MpICAgICAgLyohPCAweDAwMDAwMDEwICovDQojZGVmaW5lIEkyQ19TUjJfR0VOQ0FMTCAgICAgICAgICAgICAgICAgICAgIEkyQ19TUjJfR0VOQ0FMTF9Nc2sgICAgICAgICAgICAgICAgLyohPCBHZW5lcmFsIENhbGwgQWRkcmVzcyAoU2xhdmUgbW9kZSkgKi8NCiNkZWZpbmUgSTJDX1NSMl9TTUJERUZBVUxUX1BvcyAgICAgICAgICAgICAgKDVVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgSTJDX1NSMl9TTUJERUZBVUxUX01zayAgICAgICAgICAgICAgKDB4MVUgPDwgSTJDX1NSMl9TTUJERUZBVUxUX1BvcykgICAvKiE8IDB4MDAwMDAwMjAgKi8NCiNkZWZpbmUgSTJDX1NSMl9TTUJERUZBVUxUICAgICAgICAgICAgICAgICAgSTJDX1NSMl9TTUJERUZBVUxUX01zayAgICAgICAgICAgICAvKiE8IFNNQnVzIERldmljZSBEZWZhdWx0IEFkZHJlc3MgKFNsYXZlIG1vZGUpICovDQojZGVmaW5lIEkyQ19TUjJfU01CSE9TVF9Qb3MgICAgICAgICAgICAgICAgICg2VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEkyQ19TUjJfU01CSE9TVF9Nc2sgICAgICAgICAgICAgICAgICgweDFVIDw8IEkyQ19TUjJfU01CSE9TVF9Qb3MpICAgICAgLyohPCAweDAwMDAwMDQwICovDQojZGVmaW5lIEkyQ19TUjJfU01CSE9TVCAgICAgICAgICAgICAgICAgICAgIEkyQ19TUjJfU01CSE9TVF9Nc2sgICAgICAgICAgICAgICAgLyohPCBTTUJ1cyBIb3N0IEhlYWRlciAoU2xhdmUgbW9kZSkgKi8NCiNkZWZpbmUgSTJDX1NSMl9EVUFMRl9Qb3MgICAgICAgICAgICAgICAgICAgKDdVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgSTJDX1NSMl9EVUFMRl9Nc2sgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgSTJDX1NSMl9EVUFMRl9Qb3MpICAgICAgICAvKiE8IDB4MDAwMDAwODAgKi8NCiNkZWZpbmUgSTJDX1NSMl9EVUFMRiAgICAgICAgICAgICAgICAgICAgICAgSTJDX1NSMl9EVUFMRl9Nc2sgICAgICAgICAgICAgICAgICAvKiE8IER1YWwgRmxhZyAoU2xhdmUgbW9kZSkgKi8NCiNkZWZpbmUgSTJDX1NSMl9QRUNfUG9zICAgICAgICAgICAgICAgICAgICAgKDhVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgSTJDX1NSMl9QRUNfTXNrICAgICAgICAgICAgICAgICAgICAgKDB4RkZVIDw8IEkyQ19TUjJfUEVDX1BvcykgICAgICAgICAvKiE8IDB4MDAwMEZGMDAgKi8NCiNkZWZpbmUgSTJDX1NSMl9QRUMgICAgICAgICAgICAgICAgICAgICAgICAgSTJDX1NSMl9QRUNfTXNrICAgICAgICAgICAgICAgICAgICAvKiE8IFBhY2tldCBFcnJvciBDaGVja2luZyBSZWdpc3RlciAqLw0KDQovKioqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIEkyQ19DQ1IgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBJMkNfQ0NSX0NDUl9Qb3MgICAgICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBJMkNfQ0NSX0NDUl9Nc2sgICAgICAgICAgICAgICAgICAgICAoMHhGRkZVIDw8IEkyQ19DQ1JfQ0NSX1BvcykgICAgICAgIC8qITwgMHgwMDAwMEZGRiAqLw0KI2RlZmluZSBJMkNfQ0NSX0NDUiAgICAgICAgICAgICAgICAgICAgICAgICBJMkNfQ0NSX0NDUl9Nc2sgICAgICAgICAgICAgICAgICAgIC8qITwgQ2xvY2sgQ29udHJvbCBSZWdpc3RlciBpbiBGYXN0L1N0YW5kYXJkIG1vZGUgKE1hc3RlciBtb2RlKSAqLw0KI2RlZmluZSBJMkNfQ0NSX0RVVFlfUG9zICAgICAgICAgICAgICAgICAgICAoMTRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBJMkNfQ0NSX0RVVFlfTXNrICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBJMkNfQ0NSX0RVVFlfUG9zKSAgICAgICAgIC8qITwgMHgwMDAwNDAwMCAqLw0KI2RlZmluZSBJMkNfQ0NSX0RVVFkgICAgICAgICAgICAgICAgICAgICAgICBJMkNfQ0NSX0RVVFlfTXNrICAgICAgICAgICAgICAgICAgIC8qITwgRmFzdCBNb2RlIER1dHkgQ3ljbGUgKi8NCiNkZWZpbmUgSTJDX0NDUl9GU19Qb3MgICAgICAgICAgICAgICAgICAgICAgKDE1VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgSTJDX0NDUl9GU19Nc2sgICAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgSTJDX0NDUl9GU19Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDgwMDAgKi8NCiNkZWZpbmUgSTJDX0NDUl9GUyAgICAgICAgICAgICAgICAgICAgICAgICAgSTJDX0NDUl9GU19Nc2sgICAgICAgICAgICAgICAgICAgICAvKiE8IEkyQyBNYXN0ZXIgTW9kZSBTZWxlY3Rpb24gKi8NCg0KLyoqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIEkyQ19UUklTRSByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgSTJDX1RSSVNFX1RSSVNFX1BvcyAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgSTJDX1RSSVNFX1RSSVNFX01zayAgICAgICAgICAgICAgICAgKDB4M0ZVIDw8IEkyQ19UUklTRV9UUklTRV9Qb3MpICAgICAvKiE8IDB4MDAwMDAwM0YgKi8NCiNkZWZpbmUgSTJDX1RSSVNFX1RSSVNFICAgICAgICAgICAgICAgICAgICAgSTJDX1RSSVNFX1RSSVNFX01zayAgICAgICAgICAgICAgICAvKiE8IE1heGltdW0gUmlzZSBUaW1lIGluIEZhc3QvU3RhbmRhcmQgbW9kZSAoTWFzdGVyIG1vZGUpICovDQoNCi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovDQovKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLw0KLyogICAgICAgICAgICAgICAgICAgICAgICBJbmRlcGVuZGVudCBXQVRDSERPRyAoSVdERykgICAgICAgICAgICAgICAgICAgICAgICAgKi8NCi8qICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovDQovKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLw0KDQovKioqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIElXREdfS1IgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBJV0RHX0tSX0tFWV9Qb3MgICAgICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBJV0RHX0tSX0tFWV9Nc2sgICAgICAgICAgICAgICAgICAgICAoMHhGRkZGVSA8PCBJV0RHX0tSX0tFWV9Qb3MpICAgICAgIC8qITwgMHgwMDAwRkZGRiAqLw0KI2RlZmluZSBJV0RHX0tSX0tFWSAgICAgICAgICAgICAgICAgICAgICAgICBJV0RHX0tSX0tFWV9Nc2sgICAgICAgICAgICAgICAgICAgIC8qITwgS2V5IHZhbHVlICh3cml0ZSBvbmx5LCByZWFkIDAwMDBoKSAqLw0KDQovKioqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIElXREdfUFIgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBJV0RHX1BSX1BSX1BvcyAgICAgICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBJV0RHX1BSX1BSX01zayAgICAgICAgICAgICAgICAgICAgICAoMHg3VSA8PCBJV0RHX1BSX1BSX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDAwNyAqLw0KI2RlZmluZSBJV0RHX1BSX1BSICAgICAgICAgICAgICAgICAgICAgICAgICBJV0RHX1BSX1BSX01zayAgICAgICAgICAgICAgICAgICAgIC8qITwgUFJbMjowXSAoUHJlc2NhbGVyIGRpdmlkZXIpICovDQojZGVmaW5lIElXREdfUFJfUFJfMCAgICAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IElXREdfUFJfUFJfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwMDAxICovDQojZGVmaW5lIElXREdfUFJfUFJfMSAgICAgICAgICAgICAgICAgICAgICAgICgweDJVIDw8IElXREdfUFJfUFJfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwMDAyICovDQojZGVmaW5lIElXREdfUFJfUFJfMiAgICAgICAgICAgICAgICAgICAgICAgICgweDRVIDw8IElXREdfUFJfUFJfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwMDA0ICovDQoNCi8qKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgSVdER19STFIgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIElXREdfUkxSX1JMX1BvcyAgICAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIElXREdfUkxSX1JMX01zayAgICAgICAgICAgICAgICAgICAgICgweEZGRlUgPDwgSVdER19STFJfUkxfUG9zKSAgICAgICAgLyohPCAweDAwMDAwRkZGICovDQojZGVmaW5lIElXREdfUkxSX1JMICAgICAgICAgICAgICAgICAgICAgICAgIElXREdfUkxSX1JMX01zayAgICAgICAgICAgICAgICAgICAgLyohPCBXYXRjaGRvZyBjb3VudGVyIHJlbG9hZCB2YWx1ZSAqLw0KDQovKioqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIElXREdfU1IgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBJV0RHX1NSX1BWVV9Qb3MgICAgICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBJV0RHX1NSX1BWVV9Nc2sgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBJV0RHX1NSX1BWVV9Qb3MpICAgICAgICAgIC8qITwgMHgwMDAwMDAwMSAqLw0KI2RlZmluZSBJV0RHX1NSX1BWVSAgICAgICAgICAgICAgICAgICAgICAgICBJV0RHX1NSX1BWVV9Nc2sgICAgICAgICAgICAgICAgICAgIC8qITwgV2F0Y2hkb2cgcHJlc2NhbGVyIHZhbHVlIHVwZGF0ZSAqLw0KI2RlZmluZSBJV0RHX1NSX1JWVV9Qb3MgICAgICAgICAgICAgICAgICAgICAoMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBJV0RHX1NSX1JWVV9Nc2sgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBJV0RHX1NSX1JWVV9Qb3MpICAgICAgICAgIC8qITwgMHgwMDAwMDAwMiAqLw0KI2RlZmluZSBJV0RHX1NSX1JWVSAgICAgICAgICAgICAgICAgICAgICAgICBJV0RHX1NSX1JWVV9Nc2sgICAgICAgICAgICAgICAgICAgIC8qITwgV2F0Y2hkb2cgY291bnRlciByZWxvYWQgdmFsdWUgdXBkYXRlICovDQoNCi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovDQovKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLw0KLyogICAgICAgICAgICAgICAgICAgICAgICAgIExDRCBDb250cm9sbGVyIChMQ0QpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8NCi8qICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovDQovKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLw0KDQovKioqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIExDRF9DUiByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBMQ0RfQ1JfTENERU5fUG9zICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBMQ0RfQ1JfTENERU5fTXNrICAgICAgICAgICAoMHgxVSA8PCBMQ0RfQ1JfTENERU5fUG9zKSAgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDAwMSAqLw0KI2RlZmluZSBMQ0RfQ1JfTENERU4gICAgICAgICAgICAgICBMQ0RfQ1JfTENERU5fTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgTENEIEVuYWJsZSBCaXQgKi8NCiNkZWZpbmUgTENEX0NSX1ZTRUxfUG9zICAgICAgICAgICAgKDFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgTENEX0NSX1ZTRUxfTXNrICAgICAgICAgICAgKDB4MVUgPDwgTENEX0NSX1ZTRUxfUG9zKSAgICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDIgKi8NCiNkZWZpbmUgTENEX0NSX1ZTRUwgICAgICAgICAgICAgICAgTENEX0NSX1ZTRUxfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFZvbHRhZ2Ugc291cmNlIHNlbGVjdG9yIEJpdCAqLw0KDQojZGVmaW5lIExDRF9DUl9EVVRZX1BvcyAgICAgICAgICAgICgyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIExDRF9DUl9EVVRZX01zayAgICAgICAgICAgICgweDdVIDw8IExDRF9DUl9EVVRZX1BvcykgICAgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDFDICovDQojZGVmaW5lIExDRF9DUl9EVVRZICAgICAgICAgICAgICAgIExDRF9DUl9EVVRZX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBEVVRZWzI6MF0gYml0cyAoRHV0eSBzZWxlY3RvcikgKi8NCiNkZWZpbmUgTENEX0NSX0RVVFlfMCAgICAgICAgICAgICAgKDB4MVUgPDwgTENEX0NSX0RVVFlfUG9zKSAgICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDQgKi8NCiNkZWZpbmUgTENEX0NSX0RVVFlfMSAgICAgICAgICAgICAgKDB4MlUgPDwgTENEX0NSX0RVVFlfUG9zKSAgICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDggKi8NCiNkZWZpbmUgTENEX0NSX0RVVFlfMiAgICAgICAgICAgICAgKDB4NFUgPDwgTENEX0NSX0RVVFlfUG9zKSAgICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMTAgKi8NCg0KI2RlZmluZSBMQ0RfQ1JfQklBU19Qb3MgICAgICAgICAgICAoNVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBMQ0RfQ1JfQklBU19Nc2sgICAgICAgICAgICAoMHgzVSA8PCBMQ0RfQ1JfQklBU19Qb3MpICAgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDA2MCAqLw0KI2RlZmluZSBMQ0RfQ1JfQklBUyAgICAgICAgICAgICAgICBMQ0RfQ1JfQklBU19Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgQklBU1sxOjBdIGJpdHMgKEJpYXMgc2VsZWN0b3IpICovDQojZGVmaW5lIExDRF9DUl9CSUFTXzAgICAgICAgICAgICAgICgweDFVIDw8IExDRF9DUl9CSUFTX1BvcykgICAgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDIwICovDQojZGVmaW5lIExDRF9DUl9CSUFTXzEgICAgICAgICAgICAgICgweDJVIDw8IExDRF9DUl9CSUFTX1BvcykgICAgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDQwICovDQoNCiNkZWZpbmUgTENEX0NSX01VWF9TRUdfUG9zICAgICAgICAgKDdVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgTENEX0NSX01VWF9TRUdfTXNrICAgICAgICAgKDB4MVUgPDwgTENEX0NSX01VWF9TRUdfUG9zKSAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwODAgKi8NCiNkZWZpbmUgTENEX0NSX01VWF9TRUcgICAgICAgICAgICAgTENEX0NSX01VWF9TRUdfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IE11eCBTZWdtZW50IEVuYWJsZSBCaXQgKi8NCg0KLyoqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBMQ0RfRkNSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgTENEX0ZDUl9IRF9Qb3MgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgTENEX0ZDUl9IRF9Nc2sgICAgICAgICAgICAgKDB4MVUgPDwgTENEX0ZDUl9IRF9Qb3MpICAgICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDEgKi8NCiNkZWZpbmUgTENEX0ZDUl9IRCAgICAgICAgICAgICAgICAgTENEX0ZDUl9IRF9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IEhpZ2ggRHJpdmUgRW5hYmxlIEJpdCAqLw0KI2RlZmluZSBMQ0RfRkNSX1NPRklFX1BvcyAgICAgICAgICAoMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBMQ0RfRkNSX1NPRklFX01zayAgICAgICAgICAoMHgxVSA8PCBMQ0RfRkNSX1NPRklFX1BvcykgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDAwMiAqLw0KI2RlZmluZSBMQ0RfRkNSX1NPRklFICAgICAgICAgICAgICBMQ0RfRkNSX1NPRklFX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgU3RhcnQgb2YgRnJhbWUgSW50ZXJydXB0IEVuYWJsZSBCaXQgKi8NCiNkZWZpbmUgTENEX0ZDUl9VRERJRV9Qb3MgICAgICAgICAgKDNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgTENEX0ZDUl9VRERJRV9Nc2sgICAgICAgICAgKDB4MVUgPDwgTENEX0ZDUl9VRERJRV9Qb3MpICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDggKi8NCiNkZWZpbmUgTENEX0ZDUl9VRERJRSAgICAgICAgICAgICAgTENEX0ZDUl9VRERJRV9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFVwZGF0ZSBEaXNwbGF5IERvbmUgSW50ZXJydXB0IEVuYWJsZSBCaXQgKi8NCg0KI2RlZmluZSBMQ0RfRkNSX1BPTl9Qb3MgICAgICAgICAgICAoNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBMQ0RfRkNSX1BPTl9Nc2sgICAgICAgICAgICAoMHg3VSA8PCBMQ0RfRkNSX1BPTl9Qb3MpICAgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDA3MCAqLw0KI2RlZmluZSBMQ0RfRkNSX1BPTiAgICAgICAgICAgICAgICBMQ0RfRkNSX1BPTl9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgUE9OWzI6MF0gYml0cyAoUHVscyBPTiBEdXJhdGlvbikgKi8NCiNkZWZpbmUgTENEX0ZDUl9QT05fMCAgICAgICAgICAgICAgKDB4MVUgPDwgTENEX0ZDUl9QT05fUG9zKSAgICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMTAgKi8NCiNkZWZpbmUgTENEX0ZDUl9QT05fMSAgICAgICAgICAgICAgKDB4MlUgPDwgTENEX0ZDUl9QT05fUG9zKSAgICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMjAgKi8NCiNkZWZpbmUgTENEX0ZDUl9QT05fMiAgICAgICAgICAgICAgKDB4NFUgPDwgTENEX0ZDUl9QT05fUG9zKSAgICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwNDAgKi8NCg0KI2RlZmluZSBMQ0RfRkNSX0RFQURfUG9zICAgICAgICAgICAoN1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBMQ0RfRkNSX0RFQURfTXNrICAgICAgICAgICAoMHg3VSA8PCBMQ0RfRkNSX0RFQURfUG9zKSAgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDM4MCAqLw0KI2RlZmluZSBMQ0RfRkNSX0RFQUQgICAgICAgICAgICAgICBMQ0RfRkNSX0RFQURfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgREVBRFsyOjBdIGJpdHMgKERFQUQgVGltZSkgKi8NCiNkZWZpbmUgTENEX0ZDUl9ERUFEXzAgICAgICAgICAgICAgKDB4MVUgPDwgTENEX0ZDUl9ERUFEX1BvcykgICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwODAgKi8NCiNkZWZpbmUgTENEX0ZDUl9ERUFEXzEgICAgICAgICAgICAgKDB4MlUgPDwgTENEX0ZDUl9ERUFEX1BvcykgICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAxMDAgKi8NCiNkZWZpbmUgTENEX0ZDUl9ERUFEXzIgICAgICAgICAgICAgKDB4NFUgPDwgTENEX0ZDUl9ERUFEX1BvcykgICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAyMDAgKi8NCg0KI2RlZmluZSBMQ0RfRkNSX0NDX1BvcyAgICAgICAgICAgICAoMTBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBMQ0RfRkNSX0NDX01zayAgICAgICAgICAgICAoMHg3VSA8PCBMQ0RfRkNSX0NDX1BvcykgICAgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMUMwMCAqLw0KI2RlZmluZSBMQ0RfRkNSX0NDICAgICAgICAgICAgICAgICBMQ0RfRkNSX0NDX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgQ0NbMjowXSBiaXRzIChDb250cmFzdCBDb250cm9sKSAqLw0KI2RlZmluZSBMQ0RfRkNSX0NDXzAgICAgICAgICAgICAgICAoMHgxVSA8PCBMQ0RfRkNSX0NDX1BvcykgICAgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDQwMCAqLw0KI2RlZmluZSBMQ0RfRkNSX0NDXzEgICAgICAgICAgICAgICAoMHgyVSA8PCBMQ0RfRkNSX0NDX1BvcykgICAgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDgwMCAqLw0KI2RlZmluZSBMQ0RfRkNSX0NDXzIgICAgICAgICAgICAgICAoMHg0VSA8PCBMQ0RfRkNSX0NDX1BvcykgICAgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMTAwMCAqLw0KDQojZGVmaW5lIExDRF9GQ1JfQkxJTktGX1BvcyAgICAgICAgICgxM1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIExDRF9GQ1JfQkxJTktGX01zayAgICAgICAgICgweDdVIDw8IExDRF9GQ1JfQkxJTktGX1BvcykgICAgICAgICAgICAgICAgLyohPCAweDAwMDBFMDAwICovDQojZGVmaW5lIExDRF9GQ1JfQkxJTktGICAgICAgICAgICAgIExDRF9GQ1JfQkxJTktGX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBCTElOS0ZbMjowXSBiaXRzIChCbGluayBGcmVxdWVuY3kpICovDQojZGVmaW5lIExDRF9GQ1JfQkxJTktGXzAgICAgICAgICAgICgweDFVIDw8IExDRF9GQ1JfQkxJTktGX1BvcykgICAgICAgICAgICAgICAgLyohPCAweDAwMDAyMDAwICovDQojZGVmaW5lIExDRF9GQ1JfQkxJTktGXzEgICAgICAgICAgICgweDJVIDw8IExDRF9GQ1JfQkxJTktGX1BvcykgICAgICAgICAgICAgICAgLyohPCAweDAwMDA0MDAwICovDQojZGVmaW5lIExDRF9GQ1JfQkxJTktGXzIgICAgICAgICAgICgweDRVIDw8IExDRF9GQ1JfQkxJTktGX1BvcykgICAgICAgICAgICAgICAgLyohPCAweDAwMDA4MDAwICovDQoNCiNkZWZpbmUgTENEX0ZDUl9CTElOS19Qb3MgICAgICAgICAgKDE2VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgTENEX0ZDUl9CTElOS19Nc2sgICAgICAgICAgKDB4M1UgPDwgTENEX0ZDUl9CTElOS19Qb3MpICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMzAwMDAgKi8NCiNkZWZpbmUgTENEX0ZDUl9CTElOSyAgICAgICAgICAgICAgTENEX0ZDUl9CTElOS19Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IEJMSU5LWzE6MF0gYml0cyAoQmxpbmsgRW5hYmxlKSAqLw0KI2RlZmluZSBMQ0RfRkNSX0JMSU5LXzAgICAgICAgICAgICAoMHgxVSA8PCBMQ0RfRkNSX0JMSU5LX1BvcykgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAxMDAwMCAqLw0KI2RlZmluZSBMQ0RfRkNSX0JMSU5LXzEgICAgICAgICAgICAoMHgyVSA8PCBMQ0RfRkNSX0JMSU5LX1BvcykgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAyMDAwMCAqLw0KDQojZGVmaW5lIExDRF9GQ1JfRElWX1BvcyAgICAgICAgICAgICgxOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIExDRF9GQ1JfRElWX01zayAgICAgICAgICAgICgweEZVIDw8IExDRF9GQ1JfRElWX1BvcykgICAgICAgICAgICAgICAgICAgLyohPCAweDAwM0MwMDAwICovDQojZGVmaW5lIExDRF9GQ1JfRElWICAgICAgICAgICAgICAgIExDRF9GQ1JfRElWX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBESVZbMzowXSBiaXRzIChEaXZpZGVyKSAqLw0KI2RlZmluZSBMQ0RfRkNSX1BTX1BvcyAgICAgICAgICAgICAoMjJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBMQ0RfRkNSX1BTX01zayAgICAgICAgICAgICAoMHhGVSA8PCBMQ0RfRkNSX1BTX1BvcykgICAgICAgICAgICAgICAgICAgIC8qITwgMHgwM0MwMDAwMCAqLw0KI2RlZmluZSBMQ0RfRkNSX1BTICAgICAgICAgICAgICAgICBMQ0RfRkNSX1BTX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgUFNbMzowXSBiaXRzIChQcmVzY2FsZXIpICovDQoNCi8qKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgTENEX1NSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIExDRF9TUl9FTlNfUG9zICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIExDRF9TUl9FTlNfTXNrICAgICAgICAgICAgICgweDFVIDw8IExDRF9TUl9FTlNfUG9zKSAgICAgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDAxICovDQojZGVmaW5lIExDRF9TUl9FTlMgICAgICAgICAgICAgICAgIExDRF9TUl9FTlNfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBMQ0QgRW5hYmxlZCBCaXQgKi8NCiNkZWZpbmUgTENEX1NSX1NPRl9Qb3MgICAgICAgICAgICAgKDFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgTENEX1NSX1NPRl9Nc2sgICAgICAgICAgICAgKDB4MVUgPDwgTENEX1NSX1NPRl9Qb3MpICAgICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDIgKi8NCiNkZWZpbmUgTENEX1NSX1NPRiAgICAgICAgICAgICAgICAgTENEX1NSX1NPRl9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFN0YXJ0IE9mIEZyYW1lIEZsYWcgQml0ICovDQojZGVmaW5lIExDRF9TUl9VRFJfUG9zICAgICAgICAgICAgICgyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIExDRF9TUl9VRFJfTXNrICAgICAgICAgICAgICgweDFVIDw8IExDRF9TUl9VRFJfUG9zKSAgICAgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDA0ICovDQojZGVmaW5lIExDRF9TUl9VRFIgICAgICAgICAgICAgICAgIExDRF9TUl9VRFJfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBVcGRhdGUgRGlzcGxheSBSZXF1ZXN0IEJpdCAqLw0KI2RlZmluZSBMQ0RfU1JfVUREX1BvcyAgICAgICAgICAgICAoM1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBMQ0RfU1JfVUREX01zayAgICAgICAgICAgICAoMHgxVSA8PCBMQ0RfU1JfVUREX1BvcykgICAgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDAwOCAqLw0KI2RlZmluZSBMQ0RfU1JfVUREICAgICAgICAgICAgICAgICBMQ0RfU1JfVUREX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgVXBkYXRlIERpc3BsYXkgRG9uZSBGbGFnIEJpdCAqLw0KI2RlZmluZSBMQ0RfU1JfUkRZX1BvcyAgICAgICAgICAgICAoNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBMQ0RfU1JfUkRZX01zayAgICAgICAgICAgICAoMHgxVSA8PCBMQ0RfU1JfUkRZX1BvcykgICAgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDAxMCAqLw0KI2RlZmluZSBMQ0RfU1JfUkRZICAgICAgICAgICAgICAgICBMQ0RfU1JfUkRZX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgUmVhZHkgRmxhZyBCaXQgKi8NCiNkZWZpbmUgTENEX1NSX0ZDUlNSX1BvcyAgICAgICAgICAgKDVVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgTENEX1NSX0ZDUlNSX01zayAgICAgICAgICAgKDB4MVUgPDwgTENEX1NSX0ZDUlNSX1BvcykgICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMjAgKi8NCiNkZWZpbmUgTENEX1NSX0ZDUlNSICAgICAgICAgICAgICAgTENEX1NSX0ZDUlNSX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IExDRCBGQ1IgUmVnaXN0ZXIgU3luY2hyb25pemF0aW9uIEZsYWcgQml0ICovDQoNCi8qKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgTENEX0NMUiByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIExDRF9DTFJfU09GQ19Qb3MgICAgICAgICAgICgxVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIExDRF9DTFJfU09GQ19Nc2sgICAgICAgICAgICgweDFVIDw8IExDRF9DTFJfU09GQ19Qb3MpICAgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDAyICovDQojZGVmaW5lIExDRF9DTFJfU09GQyAgICAgICAgICAgICAgIExDRF9DTFJfU09GQ19Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBTdGFydCBPZiBGcmFtZSBGbGFnIENsZWFyIEJpdCAqLw0KI2RlZmluZSBMQ0RfQ0xSX1VERENfUG9zICAgICAgICAgICAoM1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBMQ0RfQ0xSX1VERENfTXNrICAgICAgICAgICAoMHgxVSA8PCBMQ0RfQ0xSX1VERENfUG9zKSAgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDAwOCAqLw0KI2RlZmluZSBMQ0RfQ0xSX1VEREMgICAgICAgICAgICAgICBMQ0RfQ0xSX1VERENfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgVXBkYXRlIERpc3BsYXkgRG9uZSBGbGFnIENsZWFyIEJpdCAqLw0KDQovKioqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIExDRF9SQU0gcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBMQ0RfUkFNX1NFR01FTlRfREFUQV9Qb3MgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBMQ0RfUkFNX1NFR01FTlRfREFUQV9Nc2sgICAoMHhGRkZGRkZGRlUgPDwgTENEX1JBTV9TRUdNRU5UX0RBVEFfUG9zKSAgIC8qITwgMHhGRkZGRkZGRiAqLw0KI2RlZmluZSBMQ0RfUkFNX1NFR01FTlRfREFUQSAgICAgICBMQ0RfUkFNX1NFR01FTlRfREFUQV9Nc2sgICAgICAgICAgICAgICAgICAgIC8qITwgU2VnbWVudCBEYXRhIEJpdHMgKi8NCg0KLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8NCi8qICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovDQovKiAgICAgICAgICAgICAgICAgICAgICAgICAgUG93ZXIgQ29udHJvbCAoUFdSKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLw0KLyogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8NCi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovDQoNCiNkZWZpbmUgUFdSX1BWRF9TVVBQT1JUICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBXUiBmZWF0dXJlIGF2YWlsYWJsZSBvbmx5IG9uIHNwZWNpZmljIGRldmljZXM6IFBvd2VyIFZvbHRhZ2UgRGV0ZWN0aW9uIGZlYXR1cmUgKi8NCg0KLyoqKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgUFdSX0NSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgUFdSX0NSX0xQU0RTUl9Qb3MgICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUFdSX0NSX0xQU0RTUl9Nc2sgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgUFdSX0NSX0xQU0RTUl9Qb3MpICAgICAgICAvKiE8IDB4MDAwMDAwMDEgKi8NCiNkZWZpbmUgUFdSX0NSX0xQU0RTUiAgICAgICAgICAgICAgICAgICAgICAgUFdSX0NSX0xQU0RTUl9Nc2sgICAgICAgICAgICAgICAgICAvKiE8IExvdy1wb3dlciBkZWVwc2xlZXAvc2xlZXAvbG93IHBvd2VyIHJ1biAqLw0KI2RlZmluZSBQV1JfQ1JfUEREU19Qb3MgICAgICAgICAgICAgICAgICAgICAoMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBQV1JfQ1JfUEREU19Nc2sgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBQV1JfQ1JfUEREU19Qb3MpICAgICAgICAgIC8qITwgMHgwMDAwMDAwMiAqLw0KI2RlZmluZSBQV1JfQ1JfUEREUyAgICAgICAgICAgICAgICAgICAgICAgICBQV1JfQ1JfUEREU19Nc2sgICAgICAgICAgICAgICAgICAgIC8qITwgUG93ZXIgRG93biBEZWVwc2xlZXAgKi8NCiNkZWZpbmUgUFdSX0NSX0NXVUZfUG9zICAgICAgICAgICAgICAgICAgICAgKDJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUFdSX0NSX0NXVUZfTXNrICAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgUFdSX0NSX0NXVUZfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDAwMDQgKi8NCiNkZWZpbmUgUFdSX0NSX0NXVUYgICAgICAgICAgICAgICAgICAgICAgICAgUFdSX0NSX0NXVUZfTXNrICAgICAgICAgICAgICAgICAgICAvKiE8IENsZWFyIFdha2V1cCBGbGFnICovDQojZGVmaW5lIFBXUl9DUl9DU0JGX1BvcyAgICAgICAgICAgICAgICAgICAgICgzVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFBXUl9DUl9DU0JGX01zayAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFBXUl9DUl9DU0JGX1BvcykgICAgICAgICAgLyohPCAweDAwMDAwMDA4ICovDQojZGVmaW5lIFBXUl9DUl9DU0JGICAgICAgICAgICAgICAgICAgICAgICAgIFBXUl9DUl9DU0JGX01zayAgICAgICAgICAgICAgICAgICAgLyohPCBDbGVhciBTdGFuZGJ5IEZsYWcgKi8NCiNkZWZpbmUgUFdSX0NSX1BWREVfUG9zICAgICAgICAgICAgICAgICAgICAgKDRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUFdSX0NSX1BWREVfTXNrICAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgUFdSX0NSX1BWREVfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDAwMTAgKi8NCiNkZWZpbmUgUFdSX0NSX1BWREUgICAgICAgICAgICAgICAgICAgICAgICAgUFdSX0NSX1BWREVfTXNrICAgICAgICAgICAgICAgICAgICAvKiE8IFBvd2VyIFZvbHRhZ2UgRGV0ZWN0b3IgRW5hYmxlICovDQoNCiNkZWZpbmUgUFdSX0NSX1BMU19Qb3MgICAgICAgICAgICAgICAgICAgICAgKDVVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUFdSX0NSX1BMU19Nc2sgICAgICAgICAgICAgICAgICAgICAgKDB4N1UgPDwgUFdSX0NSX1BMU19Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDAwRTAgKi8NCiNkZWZpbmUgUFdSX0NSX1BMUyAgICAgICAgICAgICAgICAgICAgICAgICAgUFdSX0NSX1BMU19Nc2sgICAgICAgICAgICAgICAgICAgICAvKiE8IFBMU1syOjBdIGJpdHMgKFBWRCBMZXZlbCBTZWxlY3Rpb24pICovDQojZGVmaW5lIFBXUl9DUl9QTFNfMCAgICAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFBXUl9DUl9QTFNfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwMDIwICovDQojZGVmaW5lIFBXUl9DUl9QTFNfMSAgICAgICAgICAgICAgICAgICAgICAgICgweDJVIDw8IFBXUl9DUl9QTFNfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwMDQwICovDQojZGVmaW5lIFBXUl9DUl9QTFNfMiAgICAgICAgICAgICAgICAgICAgICAgICgweDRVIDw8IFBXUl9DUl9QTFNfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwMDgwICovDQoNCi8qITwgUFZEIGxldmVsIGNvbmZpZ3VyYXRpb24gKi8NCiNkZWZpbmUgUFdSX0NSX1BMU19MRVYwICAgICAgICAgICAgICAgICAgICAgKDB4MDAwMDAwMDBVKSAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBWRCBsZXZlbCAwICovDQojZGVmaW5lIFBXUl9DUl9QTFNfTEVWMSAgICAgICAgICAgICAgICAgICAgICgweDAwMDAwMDIwVSkgICAgICAgICAgICAgICAgICAgICAgLyohPCBQVkQgbGV2ZWwgMSAqLw0KI2RlZmluZSBQV1JfQ1JfUExTX0xFVjIgICAgICAgICAgICAgICAgICAgICAoMHgwMDAwMDA0MFUpICAgICAgICAgICAgICAgICAgICAgIC8qITwgUFZEIGxldmVsIDIgKi8NCiNkZWZpbmUgUFdSX0NSX1BMU19MRVYzICAgICAgICAgICAgICAgICAgICAgKDB4MDAwMDAwNjBVKSAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBWRCBsZXZlbCAzICovDQojZGVmaW5lIFBXUl9DUl9QTFNfTEVWNCAgICAgICAgICAgICAgICAgICAgICgweDAwMDAwMDgwVSkgICAgICAgICAgICAgICAgICAgICAgLyohPCBQVkQgbGV2ZWwgNCAqLw0KI2RlZmluZSBQV1JfQ1JfUExTX0xFVjUgICAgICAgICAgICAgICAgICAgICAoMHgwMDAwMDBBMFUpICAgICAgICAgICAgICAgICAgICAgIC8qITwgUFZEIGxldmVsIDUgKi8NCiNkZWZpbmUgUFdSX0NSX1BMU19MRVY2ICAgICAgICAgICAgICAgICAgICAgKDB4MDAwMDAwQzBVKSAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBWRCBsZXZlbCA2ICovDQojZGVmaW5lIFBXUl9DUl9QTFNfTEVWNyAgICAgICAgICAgICAgICAgICAgICgweDAwMDAwMEUwVSkgICAgICAgICAgICAgICAgICAgICAgLyohPCBQVkQgbGV2ZWwgNyAqLw0KDQojZGVmaW5lIFBXUl9DUl9EQlBfUG9zICAgICAgICAgICAgICAgICAgICAgICg4VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFBXUl9DUl9EQlBfTXNrICAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFBXUl9DUl9EQlBfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwMTAwICovDQojZGVmaW5lIFBXUl9DUl9EQlAgICAgICAgICAgICAgICAgICAgICAgICAgIFBXUl9DUl9EQlBfTXNrICAgICAgICAgICAgICAgICAgICAgLyohPCBEaXNhYmxlIEJhY2t1cCBEb21haW4gd3JpdGUgcHJvdGVjdGlvbiAqLw0KI2RlZmluZSBQV1JfQ1JfVUxQX1BvcyAgICAgICAgICAgICAgICAgICAgICAoOVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBQV1JfQ1JfVUxQX01zayAgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBQV1JfQ1JfVUxQX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDIwMCAqLw0KI2RlZmluZSBQV1JfQ1JfVUxQICAgICAgICAgICAgICAgICAgICAgICAgICBQV1JfQ1JfVUxQX01zayAgICAgICAgICAgICAgICAgICAgIC8qITwgVWx0cmEgTG93IFBvd2VyIG1vZGUgKi8NCiNkZWZpbmUgUFdSX0NSX0ZXVV9Qb3MgICAgICAgICAgICAgICAgICAgICAgKDEwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUFdSX0NSX0ZXVV9Nc2sgICAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgUFdSX0NSX0ZXVV9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDA0MDAgKi8NCiNkZWZpbmUgUFdSX0NSX0ZXVSAgICAgICAgICAgICAgICAgICAgICAgICAgUFdSX0NSX0ZXVV9Nc2sgICAgICAgICAgICAgICAgICAgICAvKiE8IEZhc3Qgd2FrZXVwICovDQoNCiNkZWZpbmUgUFdSX0NSX1ZPU19Qb3MgICAgICAgICAgICAgICAgICAgICAgKDExVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUFdSX0NSX1ZPU19Nc2sgICAgICAgICAgICAgICAgICAgICAgKDB4M1UgPDwgUFdSX0NSX1ZPU19Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDE4MDAgKi8NCiNkZWZpbmUgUFdSX0NSX1ZPUyAgICAgICAgICAgICAgICAgICAgICAgICAgUFdSX0NSX1ZPU19Nc2sgICAgICAgICAgICAgICAgICAgICAvKiE8IFZPU1sxOjBdIGJpdHMgKFZvbHRhZ2Ugc2NhbGluZyByYW5nZSBzZWxlY3Rpb24pICovDQojZGVmaW5lIFBXUl9DUl9WT1NfMCAgICAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFBXUl9DUl9WT1NfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwODAwICovDQojZGVmaW5lIFBXUl9DUl9WT1NfMSAgICAgICAgICAgICAgICAgICAgICAgICgweDJVIDw8IFBXUl9DUl9WT1NfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAxMDAwICovDQojZGVmaW5lIFBXUl9DUl9MUFJVTl9Qb3MgICAgICAgICAgICAgICAgICAgICgxNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFBXUl9DUl9MUFJVTl9Nc2sgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFBXUl9DUl9MUFJVTl9Qb3MpICAgICAgICAgLyohPCAweDAwMDA0MDAwICovDQojZGVmaW5lIFBXUl9DUl9MUFJVTiAgICAgICAgICAgICAgICAgICAgICAgIFBXUl9DUl9MUFJVTl9Nc2sgICAgICAgICAgICAgICAgICAgLyohPCBMb3cgcG93ZXIgcnVuIG1vZGUgKi8NCg0KLyoqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBQV1JfQ1NSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgUFdSX0NTUl9XVUZfUG9zICAgICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUFdSX0NTUl9XVUZfTXNrICAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgUFdSX0NTUl9XVUZfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDAwMDEgKi8NCiNkZWZpbmUgUFdSX0NTUl9XVUYgICAgICAgICAgICAgICAgICAgICAgICAgUFdSX0NTUl9XVUZfTXNrICAgICAgICAgICAgICAgICAgICAvKiE8IFdha2V1cCBGbGFnICovDQojZGVmaW5lIFBXUl9DU1JfU0JGX1BvcyAgICAgICAgICAgICAgICAgICAgICgxVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFBXUl9DU1JfU0JGX01zayAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFBXUl9DU1JfU0JGX1BvcykgICAgICAgICAgLyohPCAweDAwMDAwMDAyICovDQojZGVmaW5lIFBXUl9DU1JfU0JGICAgICAgICAgICAgICAgICAgICAgICAgIFBXUl9DU1JfU0JGX01zayAgICAgICAgICAgICAgICAgICAgLyohPCBTdGFuZGJ5IEZsYWcgKi8NCiNkZWZpbmUgUFdSX0NTUl9QVkRPX1BvcyAgICAgICAgICAgICAgICAgICAgKDJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUFdSX0NTUl9QVkRPX01zayAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgUFdSX0NTUl9QVkRPX1BvcykgICAgICAgICAvKiE8IDB4MDAwMDAwMDQgKi8NCiNkZWZpbmUgUFdSX0NTUl9QVkRPICAgICAgICAgICAgICAgICAgICAgICAgUFdSX0NTUl9QVkRPX01zayAgICAgICAgICAgICAgICAgICAvKiE8IFBWRCBPdXRwdXQgKi8NCiNkZWZpbmUgUFdSX0NTUl9WUkVGSU5UUkRZRl9Qb3MgICAgICAgICAgICAgKDNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUFdSX0NTUl9WUkVGSU5UUkRZRl9Nc2sgICAgICAgICAgICAgKDB4MVUgPDwgUFdSX0NTUl9WUkVGSU5UUkRZRl9Qb3MpICAvKiE8IDB4MDAwMDAwMDggKi8NCiNkZWZpbmUgUFdSX0NTUl9WUkVGSU5UUkRZRiAgICAgICAgICAgICAgICAgUFdSX0NTUl9WUkVGSU5UUkRZRl9Nc2sgICAgICAgICAgICAvKiE8IEludGVybmFsIHZvbHRhZ2UgcmVmZXJlbmNlIChWUkVGSU5UKSByZWFkeSBmbGFnICovDQojZGVmaW5lIFBXUl9DU1JfVk9TRl9Qb3MgICAgICAgICAgICAgICAgICAgICg0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFBXUl9DU1JfVk9TRl9Nc2sgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFBXUl9DU1JfVk9TRl9Qb3MpICAgICAgICAgLyohPCAweDAwMDAwMDEwICovDQojZGVmaW5lIFBXUl9DU1JfVk9TRiAgICAgICAgICAgICAgICAgICAgICAgIFBXUl9DU1JfVk9TRl9Nc2sgICAgICAgICAgICAgICAgICAgLyohPCBWb2x0YWdlIFNjYWxpbmcgc2VsZWN0IGZsYWcgKi8NCiNkZWZpbmUgUFdSX0NTUl9SRUdMUEZfUG9zICAgICAgICAgICAgICAgICAgKDVVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUFdSX0NTUl9SRUdMUEZfTXNrICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgUFdSX0NTUl9SRUdMUEZfUG9zKSAgICAgICAvKiE8IDB4MDAwMDAwMjAgKi8NCiNkZWZpbmUgUFdSX0NTUl9SRUdMUEYgICAgICAgICAgICAgICAgICAgICAgUFdSX0NTUl9SRUdMUEZfTXNrICAgICAgICAgICAgICAgICAvKiE8IFJlZ3VsYXRvciBMUCBmbGFnICovDQoNCiNkZWZpbmUgUFdSX0NTUl9FV1VQMV9Qb3MgICAgICAgICAgICAgICAgICAgKDhVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUFdSX0NTUl9FV1VQMV9Nc2sgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgUFdSX0NTUl9FV1VQMV9Qb3MpICAgICAgICAvKiE8IDB4MDAwMDAxMDAgKi8NCiNkZWZpbmUgUFdSX0NTUl9FV1VQMSAgICAgICAgICAgICAgICAgICAgICAgUFdSX0NTUl9FV1VQMV9Nc2sgICAgICAgICAgICAgICAgICAvKiE8IEVuYWJsZSBXS1VQIHBpbiAxICovDQojZGVmaW5lIFBXUl9DU1JfRVdVUDJfUG9zICAgICAgICAgICAgICAgICAgICg5VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFBXUl9DU1JfRVdVUDJfTXNrICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFBXUl9DU1JfRVdVUDJfUG9zKSAgICAgICAgLyohPCAweDAwMDAwMjAwICovDQojZGVmaW5lIFBXUl9DU1JfRVdVUDIgICAgICAgICAgICAgICAgICAgICAgIFBXUl9DU1JfRVdVUDJfTXNrICAgICAgICAgICAgICAgICAgLyohPCBFbmFibGUgV0tVUCBwaW4gMiAqLw0KI2RlZmluZSBQV1JfQ1NSX0VXVVAzX1BvcyAgICAgICAgICAgICAgICAgICAoMTBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBQV1JfQ1NSX0VXVVAzX01zayAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBQV1JfQ1NSX0VXVVAzX1BvcykgICAgICAgIC8qITwgMHgwMDAwMDQwMCAqLw0KI2RlZmluZSBQV1JfQ1NSX0VXVVAzICAgICAgICAgICAgICAgICAgICAgICBQV1JfQ1NSX0VXVVAzX01zayAgICAgICAgICAgICAgICAgIC8qITwgRW5hYmxlIFdLVVAgcGluIDMgKi8NCg0KLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8NCi8qICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovDQovKiAgICAgICAgICAgICAgICAgICAgICBSZXNldCBhbmQgQ2xvY2sgQ29udHJvbCAoUkNDKSAgICAgICAgICAgICAgICAgICAgICAgICAqLw0KLyogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8NCi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovDQovKg0KKiBAYnJpZWYgU3BlY2lmaWMgZGV2aWNlIGZlYXR1cmUgZGVmaW5pdGlvbnMgIChub3QgcHJlc2VudCBvbiBhbGwgZGV2aWNlcyBpbiB0aGUgU1RNMzJGMCBzZXJpZSkNCiovDQojZGVmaW5lIFJDQ19MU0VDU1NfU1VQUE9SVCAgICAgICAgICAvKiE8IExTRSBDU1MgZmVhdHVyZSBzdXBwb3J0ICovDQoNCi8qKioqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFJDQ19DUiByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIFJDQ19DUl9IU0lPTl9Qb3MgICAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19DUl9IU0lPTl9Nc2sgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFJDQ19DUl9IU0lPTl9Qb3MpICAgICAgICAgLyohPCAweDAwMDAwMDAxICovDQojZGVmaW5lIFJDQ19DUl9IU0lPTiAgICAgICAgICAgICAgICAgICAgICAgIFJDQ19DUl9IU0lPTl9Nc2sgICAgICAgICAgICAgICAgICAgLyohPCBJbnRlcm5hbCBIaWdoIFNwZWVkIGNsb2NrIGVuYWJsZSAqLw0KI2RlZmluZSBSQ0NfQ1JfSFNJUkRZX1BvcyAgICAgICAgICAgICAgICAgICAoMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQ1JfSFNJUkRZX01zayAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBSQ0NfQ1JfSFNJUkRZX1BvcykgICAgICAgIC8qITwgMHgwMDAwMDAwMiAqLw0KI2RlZmluZSBSQ0NfQ1JfSFNJUkRZICAgICAgICAgICAgICAgICAgICAgICBSQ0NfQ1JfSFNJUkRZX01zayAgICAgICAgICAgICAgICAgIC8qITwgSW50ZXJuYWwgSGlnaCBTcGVlZCBjbG9jayByZWFkeSBmbGFnICovDQoNCiNkZWZpbmUgUkNDX0NSX01TSU9OX1BvcyAgICAgICAgICAgICAgICAgICAgKDhVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0NSX01TSU9OX01zayAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgUkNDX0NSX01TSU9OX1BvcykgICAgICAgICAvKiE8IDB4MDAwMDAxMDAgKi8NCiNkZWZpbmUgUkNDX0NSX01TSU9OICAgICAgICAgICAgICAgICAgICAgICAgUkNDX0NSX01TSU9OX01zayAgICAgICAgICAgICAgICAgICAvKiE8IEludGVybmFsIE11bHRpIFNwZWVkIGNsb2NrIGVuYWJsZSAqLw0KI2RlZmluZSBSQ0NfQ1JfTVNJUkRZX1BvcyAgICAgICAgICAgICAgICAgICAoOVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQ1JfTVNJUkRZX01zayAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBSQ0NfQ1JfTVNJUkRZX1BvcykgICAgICAgIC8qITwgMHgwMDAwMDIwMCAqLw0KI2RlZmluZSBSQ0NfQ1JfTVNJUkRZICAgICAgICAgICAgICAgICAgICAgICBSQ0NfQ1JfTVNJUkRZX01zayAgICAgICAgICAgICAgICAgIC8qITwgSW50ZXJuYWwgTXVsdGkgU3BlZWQgY2xvY2sgcmVhZHkgZmxhZyAqLw0KDQojZGVmaW5lIFJDQ19DUl9IU0VPTl9Qb3MgICAgICAgICAgICAgICAgICAgICgxNlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19DUl9IU0VPTl9Nc2sgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFJDQ19DUl9IU0VPTl9Qb3MpICAgICAgICAgLyohPCAweDAwMDEwMDAwICovDQojZGVmaW5lIFJDQ19DUl9IU0VPTiAgICAgICAgICAgICAgICAgICAgICAgIFJDQ19DUl9IU0VPTl9Nc2sgICAgICAgICAgICAgICAgICAgLyohPCBFeHRlcm5hbCBIaWdoIFNwZWVkIGNsb2NrIGVuYWJsZSAqLw0KI2RlZmluZSBSQ0NfQ1JfSFNFUkRZX1BvcyAgICAgICAgICAgICAgICAgICAoMTdVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQ1JfSFNFUkRZX01zayAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBSQ0NfQ1JfSFNFUkRZX1BvcykgICAgICAgIC8qITwgMHgwMDAyMDAwMCAqLw0KI2RlZmluZSBSQ0NfQ1JfSFNFUkRZICAgICAgICAgICAgICAgICAgICAgICBSQ0NfQ1JfSFNFUkRZX01zayAgICAgICAgICAgICAgICAgIC8qITwgRXh0ZXJuYWwgSGlnaCBTcGVlZCBjbG9jayByZWFkeSBmbGFnICovDQojZGVmaW5lIFJDQ19DUl9IU0VCWVBfUG9zICAgICAgICAgICAgICAgICAgICgxOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19DUl9IU0VCWVBfTXNrICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFJDQ19DUl9IU0VCWVBfUG9zKSAgICAgICAgLyohPCAweDAwMDQwMDAwICovDQojZGVmaW5lIFJDQ19DUl9IU0VCWVAgICAgICAgICAgICAgICAgICAgICAgIFJDQ19DUl9IU0VCWVBfTXNrICAgICAgICAgICAgICAgICAgLyohPCBFeHRlcm5hbCBIaWdoIFNwZWVkIGNsb2NrIEJ5cGFzcyAqLw0KDQojZGVmaW5lIFJDQ19DUl9QTExPTl9Qb3MgICAgICAgICAgICAgICAgICAgICgyNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19DUl9QTExPTl9Nc2sgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFJDQ19DUl9QTExPTl9Qb3MpICAgICAgICAgLyohPCAweDAxMDAwMDAwICovDQojZGVmaW5lIFJDQ19DUl9QTExPTiAgICAgICAgICAgICAgICAgICAgICAgIFJDQ19DUl9QTExPTl9Nc2sgICAgICAgICAgICAgICAgICAgLyohPCBQTEwgZW5hYmxlICovDQojZGVmaW5lIFJDQ19DUl9QTExSRFlfUG9zICAgICAgICAgICAgICAgICAgICgyNVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19DUl9QTExSRFlfTXNrICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFJDQ19DUl9QTExSRFlfUG9zKSAgICAgICAgLyohPCAweDAyMDAwMDAwICovDQojZGVmaW5lIFJDQ19DUl9QTExSRFkgICAgICAgICAgICAgICAgICAgICAgIFJDQ19DUl9QTExSRFlfTXNrICAgICAgICAgICAgICAgICAgLyohPCBQTEwgY2xvY2sgcmVhZHkgZmxhZyAqLw0KI2RlZmluZSBSQ0NfQ1JfQ1NTT05fUG9zICAgICAgICAgICAgICAgICAgICAoMjhVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQ1JfQ1NTT05fTXNrICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBSQ0NfQ1JfQ1NTT05fUG9zKSAgICAgICAgIC8qITwgMHgxMDAwMDAwMCAqLw0KI2RlZmluZSBSQ0NfQ1JfQ1NTT04gICAgICAgICAgICAgICAgICAgICAgICBSQ0NfQ1JfQ1NTT05fTXNrICAgICAgICAgICAgICAgICAgIC8qITwgQ2xvY2sgU2VjdXJpdHkgU3lzdGVtIGVuYWJsZSAqLw0KDQojZGVmaW5lIFJDQ19DUl9SVENQUkVfUG9zICAgICAgICAgICAgICAgICAgICgyOVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19DUl9SVENQUkVfTXNrICAgICAgICAgICAgICAgICAgICgweDNVIDw8IFJDQ19DUl9SVENQUkVfUG9zKSAgICAgICAgLyohPCAweDYwMDAwMDAwICovDQojZGVmaW5lIFJDQ19DUl9SVENQUkUgICAgICAgICAgICAgICAgICAgICAgIFJDQ19DUl9SVENQUkVfTXNrICAgICAgICAgICAgICAgICAgLyohPCBSVEMvTENEIFByZXNjYWxlciAqLw0KI2RlZmluZSBSQ0NfQ1JfUlRDUFJFXzAgICAgICAgICAgICAgICAgICAgICAoMHgyMDAwMDAwMFUpICAgICAgICAgICAgICAgICAgICAgIC8qITwgQml0MCAqLw0KI2RlZmluZSBSQ0NfQ1JfUlRDUFJFXzEgICAgICAgICAgICAgICAgICAgICAoMHg0MDAwMDAwMFUpICAgICAgICAgICAgICAgICAgICAgIC8qITwgQml0MSAqLw0KDQovKioqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBSQ0NfSUNTQ1IgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBSQ0NfSUNTQ1JfSFNJQ0FMX1BvcyAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfSUNTQ1JfSFNJQ0FMX01zayAgICAgICAgICAgICAgICAoMHhGRlUgPDwgUkNDX0lDU0NSX0hTSUNBTF9Qb3MpICAgIC8qITwgMHgwMDAwMDBGRiAqLw0KI2RlZmluZSBSQ0NfSUNTQ1JfSFNJQ0FMICAgICAgICAgICAgICAgICAgICBSQ0NfSUNTQ1JfSFNJQ0FMX01zayAgICAgICAgICAgICAgIC8qITwgSW50ZXJuYWwgSGlnaCBTcGVlZCBjbG9jayBDYWxpYnJhdGlvbiAqLw0KI2RlZmluZSBSQ0NfSUNTQ1JfSFNJVFJJTV9Qb3MgICAgICAgICAgICAgICAoOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfSUNTQ1JfSFNJVFJJTV9Nc2sgICAgICAgICAgICAgICAoMHgxRlUgPDwgUkNDX0lDU0NSX0hTSVRSSU1fUG9zKSAgIC8qITwgMHgwMDAwMUYwMCAqLw0KI2RlZmluZSBSQ0NfSUNTQ1JfSFNJVFJJTSAgICAgICAgICAgICAgICAgICBSQ0NfSUNTQ1JfSFNJVFJJTV9Nc2sgICAgICAgICAgICAgIC8qITwgSW50ZXJuYWwgSGlnaCBTcGVlZCBjbG9jayB0cmltbWluZyAqLw0KDQojZGVmaW5lIFJDQ19JQ1NDUl9NU0lSQU5HRV9Qb3MgICAgICAgICAgICAgICgxM1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19JQ1NDUl9NU0lSQU5HRV9Nc2sgICAgICAgICAgICAgICgweDdVIDw8IFJDQ19JQ1NDUl9NU0lSQU5HRV9Qb3MpICAgLyohPCAweDAwMDBFMDAwICovDQojZGVmaW5lIFJDQ19JQ1NDUl9NU0lSQU5HRSAgICAgICAgICAgICAgICAgIFJDQ19JQ1NDUl9NU0lSQU5HRV9Nc2sgICAgICAgICAgICAgLyohPCBJbnRlcm5hbCBNdWx0aSBTcGVlZCBjbG9jayBSYW5nZSAqLw0KI2RlZmluZSBSQ0NfSUNTQ1JfTVNJUkFOR0VfMCAgICAgICAgICAgICAgICAoMHgwVSA8PCBSQ0NfSUNTQ1JfTVNJUkFOR0VfUG9zKSAgIC8qITwgMHgwMDAwMDAwMCAqLw0KI2RlZmluZSBSQ0NfSUNTQ1JfTVNJUkFOR0VfMSAgICAgICAgICAgICAgICAoMHgxVSA8PCBSQ0NfSUNTQ1JfTVNJUkFOR0VfUG9zKSAgIC8qITwgMHgwMDAwMjAwMCAqLw0KI2RlZmluZSBSQ0NfSUNTQ1JfTVNJUkFOR0VfMiAgICAgICAgICAgICAgICAoMHgyVSA8PCBSQ0NfSUNTQ1JfTVNJUkFOR0VfUG9zKSAgIC8qITwgMHgwMDAwNDAwMCAqLw0KI2RlZmluZSBSQ0NfSUNTQ1JfTVNJUkFOR0VfMyAgICAgICAgICAgICAgICAoMHgzVSA8PCBSQ0NfSUNTQ1JfTVNJUkFOR0VfUG9zKSAgIC8qITwgMHgwMDAwNjAwMCAqLw0KI2RlZmluZSBSQ0NfSUNTQ1JfTVNJUkFOR0VfNCAgICAgICAgICAgICAgICAoMHg0VSA8PCBSQ0NfSUNTQ1JfTVNJUkFOR0VfUG9zKSAgIC8qITwgMHgwMDAwODAwMCAqLw0KI2RlZmluZSBSQ0NfSUNTQ1JfTVNJUkFOR0VfNSAgICAgICAgICAgICAgICAoMHg1VSA8PCBSQ0NfSUNTQ1JfTVNJUkFOR0VfUG9zKSAgIC8qITwgMHgwMDAwQTAwMCAqLw0KI2RlZmluZSBSQ0NfSUNTQ1JfTVNJUkFOR0VfNiAgICAgICAgICAgICAgICAoMHg2VSA8PCBSQ0NfSUNTQ1JfTVNJUkFOR0VfUG9zKSAgIC8qITwgMHgwMDAwQzAwMCAqLw0KI2RlZmluZSBSQ0NfSUNTQ1JfTVNJQ0FMX1BvcyAgICAgICAgICAgICAgICAoMTZVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfSUNTQ1JfTVNJQ0FMX01zayAgICAgICAgICAgICAgICAoMHhGRlUgPDwgUkNDX0lDU0NSX01TSUNBTF9Qb3MpICAgIC8qITwgMHgwMEZGMDAwMCAqLw0KI2RlZmluZSBSQ0NfSUNTQ1JfTVNJQ0FMICAgICAgICAgICAgICAgICAgICBSQ0NfSUNTQ1JfTVNJQ0FMX01zayAgICAgICAgICAgICAgIC8qITwgSW50ZXJuYWwgTXVsdGkgU3BlZWQgY2xvY2sgQ2FsaWJyYXRpb24gKi8NCiNkZWZpbmUgUkNDX0lDU0NSX01TSVRSSU1fUG9zICAgICAgICAgICAgICAgKDI0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0lDU0NSX01TSVRSSU1fTXNrICAgICAgICAgICAgICAgKDB4RkZVIDw8IFJDQ19JQ1NDUl9NU0lUUklNX1BvcykgICAvKiE8IDB4RkYwMDAwMDAgKi8NCiNkZWZpbmUgUkNDX0lDU0NSX01TSVRSSU0gICAgICAgICAgICAgICAgICAgUkNDX0lDU0NSX01TSVRSSU1fTXNrICAgICAgICAgICAgICAvKiE8IEludGVybmFsIE11bHRpIFNwZWVkIGNsb2NrIHRyaW1taW5nICovDQoNCi8qKioqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFJDQ19DRkdSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIFJDQ19DRkdSX1NXX1BvcyAgICAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19DRkdSX1NXX01zayAgICAgICAgICAgICAgICAgICAgICgweDNVIDw8IFJDQ19DRkdSX1NXX1BvcykgICAgICAgICAgLyohPCAweDAwMDAwMDAzICovDQojZGVmaW5lIFJDQ19DRkdSX1NXICAgICAgICAgICAgICAgICAgICAgICAgIFJDQ19DRkdSX1NXX01zayAgICAgICAgICAgICAgICAgICAgLyohPCBTV1sxOjBdIGJpdHMgKFN5c3RlbSBjbG9jayBTd2l0Y2gpICovDQojZGVmaW5lIFJDQ19DRkdSX1NXXzAgICAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFJDQ19DRkdSX1NXX1BvcykgICAgICAgICAgLyohPCAweDAwMDAwMDAxICovDQojZGVmaW5lIFJDQ19DRkdSX1NXXzEgICAgICAgICAgICAgICAgICAgICAgICgweDJVIDw8IFJDQ19DRkdSX1NXX1BvcykgICAgICAgICAgLyohPCAweDAwMDAwMDAyICovDQoNCi8qITwgU1cgY29uZmlndXJhdGlvbiAqLw0KI2RlZmluZSBSQ0NfQ0ZHUl9TV19NU0kgICAgICAgICAgICAgICAgICAgICAoMHgwMDAwMDAwMFUpICAgICAgICAgICAgICAgICAgICAgIC8qITwgTVNJIHNlbGVjdGVkIGFzIHN5c3RlbSBjbG9jayAqLw0KI2RlZmluZSBSQ0NfQ0ZHUl9TV19IU0kgICAgICAgICAgICAgICAgICAgICAoMHgwMDAwMDAwMVUpICAgICAgICAgICAgICAgICAgICAgIC8qITwgSFNJIHNlbGVjdGVkIGFzIHN5c3RlbSBjbG9jayAqLw0KI2RlZmluZSBSQ0NfQ0ZHUl9TV19IU0UgICAgICAgICAgICAgICAgICAgICAoMHgwMDAwMDAwMlUpICAgICAgICAgICAgICAgICAgICAgIC8qITwgSFNFIHNlbGVjdGVkIGFzIHN5c3RlbSBjbG9jayAqLw0KI2RlZmluZSBSQ0NfQ0ZHUl9TV19QTEwgICAgICAgICAgICAgICAgICAgICAoMHgwMDAwMDAwM1UpICAgICAgICAgICAgICAgICAgICAgIC8qITwgUExMIHNlbGVjdGVkIGFzIHN5c3RlbSBjbG9jayAqLw0KDQojZGVmaW5lIFJDQ19DRkdSX1NXU19Qb3MgICAgICAgICAgICAgICAgICAgICgyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19DRkdSX1NXU19Nc2sgICAgICAgICAgICAgICAgICAgICgweDNVIDw8IFJDQ19DRkdSX1NXU19Qb3MpICAgICAgICAgLyohPCAweDAwMDAwMDBDICovDQojZGVmaW5lIFJDQ19DRkdSX1NXUyAgICAgICAgICAgICAgICAgICAgICAgIFJDQ19DRkdSX1NXU19Nc2sgICAgICAgICAgICAgICAgICAgLyohPCBTV1NbMTowXSBiaXRzIChTeXN0ZW0gQ2xvY2sgU3dpdGNoIFN0YXR1cykgKi8NCiNkZWZpbmUgUkNDX0NGR1JfU1dTXzAgICAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgUkNDX0NGR1JfU1dTX1BvcykgICAgICAgICAvKiE8IDB4MDAwMDAwMDQgKi8NCiNkZWZpbmUgUkNDX0NGR1JfU1dTXzEgICAgICAgICAgICAgICAgICAgICAgKDB4MlUgPDwgUkNDX0NGR1JfU1dTX1BvcykgICAgICAgICAvKiE8IDB4MDAwMDAwMDggKi8NCg0KLyohPCBTV1MgY29uZmlndXJhdGlvbiAqLw0KI2RlZmluZSBSQ0NfQ0ZHUl9TV1NfTVNJICAgICAgICAgICAgICAgICAgICAoMHgwMDAwMDAwMFUpICAgICAgICAgICAgICAgICAgICAgIC8qITwgTVNJIG9zY2lsbGF0b3IgdXNlZCBhcyBzeXN0ZW0gY2xvY2sgKi8NCiNkZWZpbmUgUkNDX0NGR1JfU1dTX0hTSSAgICAgICAgICAgICAgICAgICAgKDB4MDAwMDAwMDRVKSAgICAgICAgICAgICAgICAgICAgICAvKiE8IEhTSSBvc2NpbGxhdG9yIHVzZWQgYXMgc3lzdGVtIGNsb2NrICovDQojZGVmaW5lIFJDQ19DRkdSX1NXU19IU0UgICAgICAgICAgICAgICAgICAgICgweDAwMDAwMDA4VSkgICAgICAgICAgICAgICAgICAgICAgLyohPCBIU0Ugb3NjaWxsYXRvciB1c2VkIGFzIHN5c3RlbSBjbG9jayAqLw0KI2RlZmluZSBSQ0NfQ0ZHUl9TV1NfUExMICAgICAgICAgICAgICAgICAgICAoMHgwMDAwMDAwQ1UpICAgICAgICAgICAgICAgICAgICAgIC8qITwgUExMIHVzZWQgYXMgc3lzdGVtIGNsb2NrICovDQoNCiNkZWZpbmUgUkNDX0NGR1JfSFBSRV9Qb3MgICAgICAgICAgICAgICAgICAgKDRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0NGR1JfSFBSRV9Nc2sgICAgICAgICAgICAgICAgICAgKDB4RlUgPDwgUkNDX0NGR1JfSFBSRV9Qb3MpICAgICAgICAvKiE8IDB4MDAwMDAwRjAgKi8NCiNkZWZpbmUgUkNDX0NGR1JfSFBSRSAgICAgICAgICAgICAgICAgICAgICAgUkNDX0NGR1JfSFBSRV9Nc2sgICAgICAgICAgICAgICAgICAvKiE8IEhQUkVbMzowXSBiaXRzIChBSEIgcHJlc2NhbGVyKSAqLw0KI2RlZmluZSBSQ0NfQ0ZHUl9IUFJFXzAgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBSQ0NfQ0ZHUl9IUFJFX1BvcykgICAgICAgIC8qITwgMHgwMDAwMDAxMCAqLw0KI2RlZmluZSBSQ0NfQ0ZHUl9IUFJFXzEgICAgICAgICAgICAgICAgICAgICAoMHgyVSA8PCBSQ0NfQ0ZHUl9IUFJFX1BvcykgICAgICAgIC8qITwgMHgwMDAwMDAyMCAqLw0KI2RlZmluZSBSQ0NfQ0ZHUl9IUFJFXzIgICAgICAgICAgICAgICAgICAgICAoMHg0VSA8PCBSQ0NfQ0ZHUl9IUFJFX1BvcykgICAgICAgIC8qITwgMHgwMDAwMDA0MCAqLw0KI2RlZmluZSBSQ0NfQ0ZHUl9IUFJFXzMgICAgICAgICAgICAgICAgICAgICAoMHg4VSA8PCBSQ0NfQ0ZHUl9IUFJFX1BvcykgICAgICAgIC8qITwgMHgwMDAwMDA4MCAqLw0KDQovKiE8IEhQUkUgY29uZmlndXJhdGlvbiAqLw0KI2RlZmluZSBSQ0NfQ0ZHUl9IUFJFX0RJVjEgICAgICAgICAgICAgICAgICAoMHgwMDAwMDAwMFUpICAgICAgICAgICAgICAgICAgICAgIC8qITwgU1lTQ0xLIG5vdCBkaXZpZGVkICovDQojZGVmaW5lIFJDQ19DRkdSX0hQUkVfRElWMiAgICAgICAgICAgICAgICAgICgweDAwMDAwMDgwVSkgICAgICAgICAgICAgICAgICAgICAgLyohPCBTWVNDTEsgZGl2aWRlZCBieSAyICovDQojZGVmaW5lIFJDQ19DRkdSX0hQUkVfRElWNCAgICAgICAgICAgICAgICAgICgweDAwMDAwMDkwVSkgICAgICAgICAgICAgICAgICAgICAgLyohPCBTWVNDTEsgZGl2aWRlZCBieSA0ICovDQojZGVmaW5lIFJDQ19DRkdSX0hQUkVfRElWOCAgICAgICAgICAgICAgICAgICgweDAwMDAwMEEwVSkgICAgICAgICAgICAgICAgICAgICAgLyohPCBTWVNDTEsgZGl2aWRlZCBieSA4ICovDQojZGVmaW5lIFJDQ19DRkdSX0hQUkVfRElWMTYgICAgICAgICAgICAgICAgICgweDAwMDAwMEIwVSkgICAgICAgICAgICAgICAgICAgICAgLyohPCBTWVNDTEsgZGl2aWRlZCBieSAxNiAqLw0KI2RlZmluZSBSQ0NfQ0ZHUl9IUFJFX0RJVjY0ICAgICAgICAgICAgICAgICAoMHgwMDAwMDBDMFUpICAgICAgICAgICAgICAgICAgICAgIC8qITwgU1lTQ0xLIGRpdmlkZWQgYnkgNjQgKi8NCiNkZWZpbmUgUkNDX0NGR1JfSFBSRV9ESVYxMjggICAgICAgICAgICAgICAgKDB4MDAwMDAwRDBVKSAgICAgICAgICAgICAgICAgICAgICAvKiE8IFNZU0NMSyBkaXZpZGVkIGJ5IDEyOCAqLw0KI2RlZmluZSBSQ0NfQ0ZHUl9IUFJFX0RJVjI1NiAgICAgICAgICAgICAgICAoMHgwMDAwMDBFMFUpICAgICAgICAgICAgICAgICAgICAgIC8qITwgU1lTQ0xLIGRpdmlkZWQgYnkgMjU2ICovDQojZGVmaW5lIFJDQ19DRkdSX0hQUkVfRElWNTEyICAgICAgICAgICAgICAgICgweDAwMDAwMEYwVSkgICAgICAgICAgICAgICAgICAgICAgLyohPCBTWVNDTEsgZGl2aWRlZCBieSA1MTIgKi8NCg0KI2RlZmluZSBSQ0NfQ0ZHUl9QUFJFMV9Qb3MgICAgICAgICAgICAgICAgICAoOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQ0ZHUl9QUFJFMV9Nc2sgICAgICAgICAgICAgICAgICAoMHg3VSA8PCBSQ0NfQ0ZHUl9QUFJFMV9Qb3MpICAgICAgIC8qITwgMHgwMDAwMDcwMCAqLw0KI2RlZmluZSBSQ0NfQ0ZHUl9QUFJFMSAgICAgICAgICAgICAgICAgICAgICBSQ0NfQ0ZHUl9QUFJFMV9Nc2sgICAgICAgICAgICAgICAgIC8qITwgUFJFMVsyOjBdIGJpdHMgKEFQQjEgcHJlc2NhbGVyKSAqLw0KI2RlZmluZSBSQ0NfQ0ZHUl9QUFJFMV8wICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBSQ0NfQ0ZHUl9QUFJFMV9Qb3MpICAgICAgIC8qITwgMHgwMDAwMDEwMCAqLw0KI2RlZmluZSBSQ0NfQ0ZHUl9QUFJFMV8xICAgICAgICAgICAgICAgICAgICAoMHgyVSA8PCBSQ0NfQ0ZHUl9QUFJFMV9Qb3MpICAgICAgIC8qITwgMHgwMDAwMDIwMCAqLw0KI2RlZmluZSBSQ0NfQ0ZHUl9QUFJFMV8yICAgICAgICAgICAgICAgICAgICAoMHg0VSA8PCBSQ0NfQ0ZHUl9QUFJFMV9Qb3MpICAgICAgIC8qITwgMHgwMDAwMDQwMCAqLw0KDQovKiE8IFBQUkUxIGNvbmZpZ3VyYXRpb24gKi8NCiNkZWZpbmUgUkNDX0NGR1JfUFBSRTFfRElWMSAgICAgICAgICAgICAgICAgKDB4MDAwMDAwMDBVKSAgICAgICAgICAgICAgICAgICAgICAvKiE8IEhDTEsgbm90IGRpdmlkZWQgKi8NCiNkZWZpbmUgUkNDX0NGR1JfUFBSRTFfRElWMiAgICAgICAgICAgICAgICAgKDB4MDAwMDA0MDBVKSAgICAgICAgICAgICAgICAgICAgICAvKiE8IEhDTEsgZGl2aWRlZCBieSAyICovDQojZGVmaW5lIFJDQ19DRkdSX1BQUkUxX0RJVjQgICAgICAgICAgICAgICAgICgweDAwMDAwNTAwVSkgICAgICAgICAgICAgICAgICAgICAgLyohPCBIQ0xLIGRpdmlkZWQgYnkgNCAqLw0KI2RlZmluZSBSQ0NfQ0ZHUl9QUFJFMV9ESVY4ICAgICAgICAgICAgICAgICAoMHgwMDAwMDYwMFUpICAgICAgICAgICAgICAgICAgICAgIC8qITwgSENMSyBkaXZpZGVkIGJ5IDggKi8NCiNkZWZpbmUgUkNDX0NGR1JfUFBSRTFfRElWMTYgICAgICAgICAgICAgICAgKDB4MDAwMDA3MDBVKSAgICAgICAgICAgICAgICAgICAgICAvKiE8IEhDTEsgZGl2aWRlZCBieSAxNiAqLw0KDQojZGVmaW5lIFJDQ19DRkdSX1BQUkUyX1BvcyAgICAgICAgICAgICAgICAgICgxMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19DRkdSX1BQUkUyX01zayAgICAgICAgICAgICAgICAgICgweDdVIDw8IFJDQ19DRkdSX1BQUkUyX1BvcykgICAgICAgLyohPCAweDAwMDAzODAwICovDQojZGVmaW5lIFJDQ19DRkdSX1BQUkUyICAgICAgICAgICAgICAgICAgICAgIFJDQ19DRkdSX1BQUkUyX01zayAgICAgICAgICAgICAgICAgLyohPCBQUkUyWzI6MF0gYml0cyAoQVBCMiBwcmVzY2FsZXIpICovDQojZGVmaW5lIFJDQ19DRkdSX1BQUkUyXzAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFJDQ19DRkdSX1BQUkUyX1BvcykgICAgICAgLyohPCAweDAwMDAwODAwICovDQojZGVmaW5lIFJDQ19DRkdSX1BQUkUyXzEgICAgICAgICAgICAgICAgICAgICgweDJVIDw8IFJDQ19DRkdSX1BQUkUyX1BvcykgICAgICAgLyohPCAweDAwMDAxMDAwICovDQojZGVmaW5lIFJDQ19DRkdSX1BQUkUyXzIgICAgICAgICAgICAgICAgICAgICgweDRVIDw8IFJDQ19DRkdSX1BQUkUyX1BvcykgICAgICAgLyohPCAweDAwMDAyMDAwICovDQoNCi8qITwgUFBSRTIgY29uZmlndXJhdGlvbiAqLw0KI2RlZmluZSBSQ0NfQ0ZHUl9QUFJFMl9ESVYxICAgICAgICAgICAgICAgICAoMHgwMDAwMDAwMFUpICAgICAgICAgICAgICAgICAgICAgIC8qITwgSENMSyBub3QgZGl2aWRlZCAqLw0KI2RlZmluZSBSQ0NfQ0ZHUl9QUFJFMl9ESVYyICAgICAgICAgICAgICAgICAoMHgwMDAwMjAwMFUpICAgICAgICAgICAgICAgICAgICAgIC8qITwgSENMSyBkaXZpZGVkIGJ5IDIgKi8NCiNkZWZpbmUgUkNDX0NGR1JfUFBSRTJfRElWNCAgICAgICAgICAgICAgICAgKDB4MDAwMDI4MDBVKSAgICAgICAgICAgICAgICAgICAgICAvKiE8IEhDTEsgZGl2aWRlZCBieSA0ICovDQojZGVmaW5lIFJDQ19DRkdSX1BQUkUyX0RJVjggICAgICAgICAgICAgICAgICgweDAwMDAzMDAwVSkgICAgICAgICAgICAgICAgICAgICAgLyohPCBIQ0xLIGRpdmlkZWQgYnkgOCAqLw0KI2RlZmluZSBSQ0NfQ0ZHUl9QUFJFMl9ESVYxNiAgICAgICAgICAgICAgICAoMHgwMDAwMzgwMFUpICAgICAgICAgICAgICAgICAgICAgIC8qITwgSENMSyBkaXZpZGVkIGJ5IDE2ICovDQoNCi8qITwgUExMIGVudHJ5IGNsb2NrIHNvdXJjZSovDQojZGVmaW5lIFJDQ19DRkdSX1BMTFNSQ19Qb3MgICAgICAgICAgICAgICAgICgxNlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19DRkdSX1BMTFNSQ19Nc2sgICAgICAgICAgICAgICAgICgweDFVIDw8IFJDQ19DRkdSX1BMTFNSQ19Qb3MpICAgICAgLyohPCAweDAwMDEwMDAwICovDQojZGVmaW5lIFJDQ19DRkdSX1BMTFNSQyAgICAgICAgICAgICAgICAgICAgIFJDQ19DRkdSX1BMTFNSQ19Nc2sgICAgICAgICAgICAgICAgLyohPCBQTEwgZW50cnkgY2xvY2sgc291cmNlICovDQoNCiNkZWZpbmUgUkNDX0NGR1JfUExMU1JDX0hTSSAgICAgICAgICAgICAgICAgKDB4MDAwMDAwMDBVKSAgICAgICAgICAgICAgICAgICAgICAvKiE8IEhTSSBhcyBQTEwgZW50cnkgY2xvY2sgc291cmNlICovDQojZGVmaW5lIFJDQ19DRkdSX1BMTFNSQ19IU0UgICAgICAgICAgICAgICAgICgweDAwMDEwMDAwVSkgICAgICAgICAgICAgICAgICAgICAgLyohPCBIU0UgYXMgUExMIGVudHJ5IGNsb2NrIHNvdXJjZSAqLw0KDQoNCi8qITwgUExMTVVMIGNvbmZpZ3VyYXRpb24gKi8NCiNkZWZpbmUgUkNDX0NGR1JfUExMTVVMX1BvcyAgICAgICAgICAgICAgICAgKDE4VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0NGR1JfUExMTVVMX01zayAgICAgICAgICAgICAgICAgKDB4RlUgPDwgUkNDX0NGR1JfUExMTVVMX1BvcykgICAgICAvKiE8IDB4MDAzQzAwMDAgKi8NCiNkZWZpbmUgUkNDX0NGR1JfUExMTVVMICAgICAgICAgICAgICAgICAgICAgUkNDX0NGR1JfUExMTVVMX01zayAgICAgICAgICAgICAgICAvKiE8IFBMTE1VTFszOjBdIGJpdHMgKFBMTCBtdWx0aXBsaWNhdGlvbiBmYWN0b3IpICovDQojZGVmaW5lIFJDQ19DRkdSX1BMTE1VTF8wICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFJDQ19DRkdSX1BMTE1VTF9Qb3MpICAgICAgLyohPCAweDAwMDQwMDAwICovDQojZGVmaW5lIFJDQ19DRkdSX1BMTE1VTF8xICAgICAgICAgICAgICAgICAgICgweDJVIDw8IFJDQ19DRkdSX1BMTE1VTF9Qb3MpICAgICAgLyohPCAweDAwMDgwMDAwICovDQojZGVmaW5lIFJDQ19DRkdSX1BMTE1VTF8yICAgICAgICAgICAgICAgICAgICgweDRVIDw8IFJDQ19DRkdSX1BMTE1VTF9Qb3MpICAgICAgLyohPCAweDAwMTAwMDAwICovDQojZGVmaW5lIFJDQ19DRkdSX1BMTE1VTF8zICAgICAgICAgICAgICAgICAgICgweDhVIDw8IFJDQ19DRkdSX1BMTE1VTF9Qb3MpICAgICAgLyohPCAweDAwMjAwMDAwICovDQoNCi8qITwgUExMTVVMIGNvbmZpZ3VyYXRpb24gKi8NCiNkZWZpbmUgUkNDX0NGR1JfUExMTVVMMyAgICAgICAgICAgICAgICAgICAgKDB4MDAwMDAwMDBVKSAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBMTCBpbnB1dCBjbG9jayAqIDMgKi8NCiNkZWZpbmUgUkNDX0NGR1JfUExMTVVMNCAgICAgICAgICAgICAgICAgICAgKDB4MDAwNDAwMDBVKSAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBMTCBpbnB1dCBjbG9jayAqIDQgKi8NCiNkZWZpbmUgUkNDX0NGR1JfUExMTVVMNiAgICAgICAgICAgICAgICAgICAgKDB4MDAwODAwMDBVKSAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBMTCBpbnB1dCBjbG9jayAqIDYgKi8NCiNkZWZpbmUgUkNDX0NGR1JfUExMTVVMOCAgICAgICAgICAgICAgICAgICAgKDB4MDAwQzAwMDBVKSAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBMTCBpbnB1dCBjbG9jayAqIDggKi8NCiNkZWZpbmUgUkNDX0NGR1JfUExMTVVMMTIgICAgICAgICAgICAgICAgICAgKDB4MDAxMDAwMDBVKSAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBMTCBpbnB1dCBjbG9jayAqIDEyICovDQojZGVmaW5lIFJDQ19DRkdSX1BMTE1VTDE2ICAgICAgICAgICAgICAgICAgICgweDAwMTQwMDAwVSkgICAgICAgICAgICAgICAgICAgICAgLyohPCBQTEwgaW5wdXQgY2xvY2sgKiAxNiAqLw0KI2RlZmluZSBSQ0NfQ0ZHUl9QTExNVUwyNCAgICAgICAgICAgICAgICAgICAoMHgwMDE4MDAwMFUpICAgICAgICAgICAgICAgICAgICAgIC8qITwgUExMIGlucHV0IGNsb2NrICogMjQgKi8NCiNkZWZpbmUgUkNDX0NGR1JfUExMTVVMMzIgICAgICAgICAgICAgICAgICAgKDB4MDAxQzAwMDBVKSAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBMTCBpbnB1dCBjbG9jayAqIDMyICovDQojZGVmaW5lIFJDQ19DRkdSX1BMTE1VTDQ4ICAgICAgICAgICAgICAgICAgICgweDAwMjAwMDAwVSkgICAgICAgICAgICAgICAgICAgICAgLyohPCBQTEwgaW5wdXQgY2xvY2sgKiA0OCAqLw0KDQovKiE8IFBMTERJViBjb25maWd1cmF0aW9uICovDQojZGVmaW5lIFJDQ19DRkdSX1BMTERJVl9Qb3MgICAgICAgICAgICAgICAgICgyMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19DRkdSX1BMTERJVl9Nc2sgICAgICAgICAgICAgICAgICgweDNVIDw8IFJDQ19DRkdSX1BMTERJVl9Qb3MpICAgICAgLyohPCAweDAwQzAwMDAwICovDQojZGVmaW5lIFJDQ19DRkdSX1BMTERJViAgICAgICAgICAgICAgICAgICAgIFJDQ19DRkdSX1BMTERJVl9Nc2sgICAgICAgICAgICAgICAgLyohPCBQTExESVZbMTowXSBiaXRzIChQTEwgT3V0cHV0IERpdmlzaW9uKSAqLw0KI2RlZmluZSBSQ0NfQ0ZHUl9QTExESVZfMCAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBSQ0NfQ0ZHUl9QTExESVZfUG9zKSAgICAgIC8qITwgMHgwMDQwMDAwMCAqLw0KI2RlZmluZSBSQ0NfQ0ZHUl9QTExESVZfMSAgICAgICAgICAgICAgICAgICAoMHgyVSA8PCBSQ0NfQ0ZHUl9QTExESVZfUG9zKSAgICAgIC8qITwgMHgwMDgwMDAwMCAqLw0KDQoNCi8qITwgUExMRElWIGNvbmZpZ3VyYXRpb24gKi8NCiNkZWZpbmUgUkNDX0NGR1JfUExMRElWMSAgICAgICAgICAgICAgICAgICAgKDB4MDAwMDAwMDBVKSAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBMTCBjbG9jayBvdXRwdXQgPSBDS1ZDTyAvIDEgKi8NCiNkZWZpbmUgUkNDX0NGR1JfUExMRElWMl9Qb3MgICAgICAgICAgICAgICAgKDIyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0NGR1JfUExMRElWMl9Nc2sgICAgICAgICAgICAgICAgKDB4MVUgPDwgUkNDX0NGR1JfUExMRElWMl9Qb3MpICAgICAvKiE8IDB4MDA0MDAwMDAgKi8NCiNkZWZpbmUgUkNDX0NGR1JfUExMRElWMiAgICAgICAgICAgICAgICAgICAgUkNDX0NGR1JfUExMRElWMl9Nc2sgICAgICAgICAgICAgICAvKiE8IFBMTCBjbG9jayBvdXRwdXQgPSBDS1ZDTyAvIDIgKi8NCiNkZWZpbmUgUkNDX0NGR1JfUExMRElWM19Qb3MgICAgICAgICAgICAgICAgKDIzVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0NGR1JfUExMRElWM19Nc2sgICAgICAgICAgICAgICAgKDB4MVUgPDwgUkNDX0NGR1JfUExMRElWM19Qb3MpICAgICAvKiE8IDB4MDA4MDAwMDAgKi8NCiNkZWZpbmUgUkNDX0NGR1JfUExMRElWMyAgICAgICAgICAgICAgICAgICAgUkNDX0NGR1JfUExMRElWM19Nc2sgICAgICAgICAgICAgICAvKiE8IFBMTCBjbG9jayBvdXRwdXQgPSBDS1ZDTyAvIDMgKi8NCiNkZWZpbmUgUkNDX0NGR1JfUExMRElWNF9Qb3MgICAgICAgICAgICAgICAgKDIyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0NGR1JfUExMRElWNF9Nc2sgICAgICAgICAgICAgICAgKDB4M1UgPDwgUkNDX0NGR1JfUExMRElWNF9Qb3MpICAgICAvKiE8IDB4MDBDMDAwMDAgKi8NCiNkZWZpbmUgUkNDX0NGR1JfUExMRElWNCAgICAgICAgICAgICAgICAgICAgUkNDX0NGR1JfUExMRElWNF9Nc2sgICAgICAgICAgICAgICAvKiE8IFBMTCBjbG9jayBvdXRwdXQgPSBDS1ZDTyAvIDQgKi8NCg0KDQojZGVmaW5lIFJDQ19DRkdSX01DT1NFTF9Qb3MgICAgICAgICAgICAgICAgICgyNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19DRkdSX01DT1NFTF9Nc2sgICAgICAgICAgICAgICAgICgweDdVIDw8IFJDQ19DRkdSX01DT1NFTF9Qb3MpICAgICAgLyohPCAweDA3MDAwMDAwICovDQojZGVmaW5lIFJDQ19DRkdSX01DT1NFTCAgICAgICAgICAgICAgICAgICAgIFJDQ19DRkdSX01DT1NFTF9Nc2sgICAgICAgICAgICAgICAgLyohPCBNQ09bMjowXSBiaXRzIChNaWNyb2NvbnRyb2xsZXIgQ2xvY2sgT3V0cHV0KSAqLw0KI2RlZmluZSBSQ0NfQ0ZHUl9NQ09TRUxfMCAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBSQ0NfQ0ZHUl9NQ09TRUxfUG9zKSAgICAgIC8qITwgMHgwMTAwMDAwMCAqLw0KI2RlZmluZSBSQ0NfQ0ZHUl9NQ09TRUxfMSAgICAgICAgICAgICAgICAgICAoMHgyVSA8PCBSQ0NfQ0ZHUl9NQ09TRUxfUG9zKSAgICAgIC8qITwgMHgwMjAwMDAwMCAqLw0KI2RlZmluZSBSQ0NfQ0ZHUl9NQ09TRUxfMiAgICAgICAgICAgICAgICAgICAoMHg0VSA8PCBSQ0NfQ0ZHUl9NQ09TRUxfUG9zKSAgICAgIC8qITwgMHgwNDAwMDAwMCAqLw0KDQovKiE8IE1DTyBjb25maWd1cmF0aW9uICovDQojZGVmaW5lIFJDQ19DRkdSX01DT1NFTF9OT0NMT0NLICAgICAgICAgICAgICgweDAwMDAwMDAwVSkgICAgICAgICAgICAgICAgICAgICAgLyohPCBObyBjbG9jayAqLw0KI2RlZmluZSBSQ0NfQ0ZHUl9NQ09TRUxfU1lTQ0xLX1BvcyAgICAgICAgICAoMjRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQ0ZHUl9NQ09TRUxfU1lTQ0xLX01zayAgICAgICAgICAoMHgxVSA8PCBSQ0NfQ0ZHUl9NQ09TRUxfU1lTQ0xLX1BvcykgLyohPCAweDAxMDAwMDAwICovDQojZGVmaW5lIFJDQ19DRkdSX01DT1NFTF9TWVNDTEsgICAgICAgICAgICAgIFJDQ19DRkdSX01DT1NFTF9TWVNDTEtfTXNrICAgICAgICAgLyohPCBTeXN0ZW0gY2xvY2sgc2VsZWN0ZWQgKi8NCiNkZWZpbmUgUkNDX0NGR1JfTUNPU0VMX0hTSV9Qb3MgICAgICAgICAgICAgKDI1VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0NGR1JfTUNPU0VMX0hTSV9Nc2sgICAgICAgICAgICAgKDB4MVUgPDwgUkNDX0NGR1JfTUNPU0VMX0hTSV9Qb3MpICAvKiE8IDB4MDIwMDAwMDAgKi8NCiNkZWZpbmUgUkNDX0NGR1JfTUNPU0VMX0hTSSAgICAgICAgICAgICAgICAgUkNDX0NGR1JfTUNPU0VMX0hTSV9Nc2sgICAgICAgICAgICAvKiE8IEludGVybmFsIDE2IE1IeiBSQyBvc2NpbGxhdG9yIGNsb2NrIHNlbGVjdGVkICovDQojZGVmaW5lIFJDQ19DRkdSX01DT1NFTF9NU0lfUG9zICAgICAgICAgICAgICgyNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19DRkdSX01DT1NFTF9NU0lfTXNrICAgICAgICAgICAgICgweDNVIDw8IFJDQ19DRkdSX01DT1NFTF9NU0lfUG9zKSAgLyohPCAweDAzMDAwMDAwICovDQojZGVmaW5lIFJDQ19DRkdSX01DT1NFTF9NU0kgICAgICAgICAgICAgICAgIFJDQ19DRkdSX01DT1NFTF9NU0lfTXNrICAgICAgICAgICAgLyohPCBJbnRlcm5hbCBNZWRpdW0gU3BlZWQgUkMgb3NjaWxsYXRvciBjbG9jayBzZWxlY3RlZCAqLw0KI2RlZmluZSBSQ0NfQ0ZHUl9NQ09TRUxfSFNFX1BvcyAgICAgICAgICAgICAoMjZVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQ0ZHUl9NQ09TRUxfSFNFX01zayAgICAgICAgICAgICAoMHgxVSA8PCBSQ0NfQ0ZHUl9NQ09TRUxfSFNFX1BvcykgIC8qITwgMHgwNDAwMDAwMCAqLw0KI2RlZmluZSBSQ0NfQ0ZHUl9NQ09TRUxfSFNFICAgICAgICAgICAgICAgICBSQ0NfQ0ZHUl9NQ09TRUxfSFNFX01zayAgICAgICAgICAgIC8qITwgRXh0ZXJuYWwgMS0yNSBNSHogb3NjaWxsYXRvciBjbG9jayBzZWxlY3RlZCAqLw0KI2RlZmluZSBSQ0NfQ0ZHUl9NQ09TRUxfUExMX1BvcyAgICAgICAgICAgICAoMjRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQ0ZHUl9NQ09TRUxfUExMX01zayAgICAgICAgICAgICAoMHg1VSA8PCBSQ0NfQ0ZHUl9NQ09TRUxfUExMX1BvcykgIC8qITwgMHgwNTAwMDAwMCAqLw0KI2RlZmluZSBSQ0NfQ0ZHUl9NQ09TRUxfUExMICAgICAgICAgICAgICAgICBSQ0NfQ0ZHUl9NQ09TRUxfUExMX01zayAgICAgICAgICAgIC8qITwgUExMIGNsb2NrIGRpdmlkZWQgKi8NCiNkZWZpbmUgUkNDX0NGR1JfTUNPU0VMX0xTSV9Qb3MgICAgICAgICAgICAgKDI1VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0NGR1JfTUNPU0VMX0xTSV9Nc2sgICAgICAgICAgICAgKDB4M1UgPDwgUkNDX0NGR1JfTUNPU0VMX0xTSV9Qb3MpICAvKiE8IDB4MDYwMDAwMDAgKi8NCiNkZWZpbmUgUkNDX0NGR1JfTUNPU0VMX0xTSSAgICAgICAgICAgICAgICAgUkNDX0NGR1JfTUNPU0VMX0xTSV9Nc2sgICAgICAgICAgICAvKiE8IExTSSBzZWxlY3RlZCAqLw0KI2RlZmluZSBSQ0NfQ0ZHUl9NQ09TRUxfTFNFX1BvcyAgICAgICAgICAgICAoMjRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQ0ZHUl9NQ09TRUxfTFNFX01zayAgICAgICAgICAgICAoMHg3VSA8PCBSQ0NfQ0ZHUl9NQ09TRUxfTFNFX1BvcykgIC8qITwgMHgwNzAwMDAwMCAqLw0KI2RlZmluZSBSQ0NfQ0ZHUl9NQ09TRUxfTFNFICAgICAgICAgICAgICAgICBSQ0NfQ0ZHUl9NQ09TRUxfTFNFX01zayAgICAgICAgICAgIC8qITwgTFNFIHNlbGVjdGVkICovDQoNCiNkZWZpbmUgUkNDX0NGR1JfTUNPUFJFX1BvcyAgICAgICAgICAgICAgICAgKDI4VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0NGR1JfTUNPUFJFX01zayAgICAgICAgICAgICAgICAgKDB4N1UgPDwgUkNDX0NGR1JfTUNPUFJFX1BvcykgICAgICAvKiE8IDB4NzAwMDAwMDAgKi8NCiNkZWZpbmUgUkNDX0NGR1JfTUNPUFJFICAgICAgICAgICAgICAgICAgICAgUkNDX0NGR1JfTUNPUFJFX01zayAgICAgICAgICAgICAgICAvKiE8IE1DT1BSRVsyOjBdIGJpdHMgKE1pY3JvY29udHJvbGxlciBDbG9jayBPdXRwdXQgUHJlc2NhbGVyKSAqLw0KI2RlZmluZSBSQ0NfQ0ZHUl9NQ09QUkVfMCAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBSQ0NfQ0ZHUl9NQ09QUkVfUG9zKSAgICAgIC8qITwgMHgxMDAwMDAwMCAqLw0KI2RlZmluZSBSQ0NfQ0ZHUl9NQ09QUkVfMSAgICAgICAgICAgICAgICAgICAoMHgyVSA8PCBSQ0NfQ0ZHUl9NQ09QUkVfUG9zKSAgICAgIC8qITwgMHgyMDAwMDAwMCAqLw0KI2RlZmluZSBSQ0NfQ0ZHUl9NQ09QUkVfMiAgICAgICAgICAgICAgICAgICAoMHg0VSA8PCBSQ0NfQ0ZHUl9NQ09QUkVfUG9zKSAgICAgIC8qITwgMHg0MDAwMDAwMCAqLw0KDQovKiE8IE1DTyBQcmVzY2FsZXIgY29uZmlndXJhdGlvbiAqLyANCiNkZWZpbmUgUkNDX0NGR1JfTUNPUFJFX0RJVjEgICAgICAgICAgICAgICAgKDB4MDAwMDAwMDBVKSAgICAgICAgICAgICAgICAgICAgICAvKiE8IE1DTyBpcyBkaXZpZGVkIGJ5IDEgKi8NCiNkZWZpbmUgUkNDX0NGR1JfTUNPUFJFX0RJVjIgICAgICAgICAgICAgICAgKDB4MTAwMDAwMDBVKSAgICAgICAgICAgICAgICAgICAgICAvKiE8IE1DTyBpcyBkaXZpZGVkIGJ5IDIgKi8NCiNkZWZpbmUgUkNDX0NGR1JfTUNPUFJFX0RJVjQgICAgICAgICAgICAgICAgKDB4MjAwMDAwMDBVKSAgICAgICAgICAgICAgICAgICAgICAvKiE8IE1DTyBpcyBkaXZpZGVkIGJ5IDQgKi8NCiNkZWZpbmUgUkNDX0NGR1JfTUNPUFJFX0RJVjggICAgICAgICAgICAgICAgKDB4MzAwMDAwMDBVKSAgICAgICAgICAgICAgICAgICAgICAvKiE8IE1DTyBpcyBkaXZpZGVkIGJ5IDggKi8NCiNkZWZpbmUgUkNDX0NGR1JfTUNPUFJFX0RJVjE2ICAgICAgICAgICAgICAgKDB4NDAwMDAwMDBVKSAgICAgICAgICAgICAgICAgICAgICAvKiE8IE1DTyBpcyBkaXZpZGVkIGJ5IDE2ICovDQogDQovKiBMZWdhY3kgYWxpYXNlcyAqLw0KI2RlZmluZSAgUkNDX0NGR1JfTUNPX0RJVjEgICAgICAgICAgICAgICAgICBSQ0NfQ0ZHUl9NQ09QUkVfRElWMQ0KI2RlZmluZSAgUkNDX0NGR1JfTUNPX0RJVjIgICAgICAgICAgICAgICAgICBSQ0NfQ0ZHUl9NQ09QUkVfRElWMg0KI2RlZmluZSAgUkNDX0NGR1JfTUNPX0RJVjQgICAgICAgICAgICAgICAgICBSQ0NfQ0ZHUl9NQ09QUkVfRElWNA0KI2RlZmluZSAgUkNDX0NGR1JfTUNPX0RJVjggICAgICAgICAgICAgICAgICBSQ0NfQ0ZHUl9NQ09QUkVfRElWOA0KI2RlZmluZSAgUkNDX0NGR1JfTUNPX0RJVjE2ICAgICAgICAgICAgICAgICBSQ0NfQ0ZHUl9NQ09QUkVfRElWMTYNCiNkZWZpbmUgIFJDQ19DRkdSX01DT19OT0NMT0NLICAgICAgICAgICAgICAgUkNDX0NGR1JfTUNPU0VMX05PQ0xPQ0sNCiNkZWZpbmUgIFJDQ19DRkdSX01DT19TWVNDTEsgICAgICAgICAgICAgICAgUkNDX0NGR1JfTUNPU0VMX1NZU0NMSw0KI2RlZmluZSAgUkNDX0NGR1JfTUNPX0hTSSAgICAgICAgICAgICAgICAgICBSQ0NfQ0ZHUl9NQ09TRUxfSFNJDQojZGVmaW5lICBSQ0NfQ0ZHUl9NQ09fTVNJICAgICAgICAgICAgICAgICAgIFJDQ19DRkdSX01DT1NFTF9NU0kNCiNkZWZpbmUgIFJDQ19DRkdSX01DT19IU0UgICAgICAgICAgICAgICAgICAgUkNDX0NGR1JfTUNPU0VMX0hTRQ0KI2RlZmluZSAgUkNDX0NGR1JfTUNPX1BMTCAgICAgICAgICAgICAgICAgICBSQ0NfQ0ZHUl9NQ09TRUxfUExMDQojZGVmaW5lICBSQ0NfQ0ZHUl9NQ09fTFNJICAgICAgICAgICAgICAgICAgIFJDQ19DRkdSX01DT1NFTF9MU0kNCiNkZWZpbmUgIFJDQ19DRkdSX01DT19MU0UgICAgICAgICAgICAgICAgICAgUkNDX0NGR1JfTUNPU0VMX0xTRQ0KDQovKiE8KioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgUkNDX0NJUiByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIFJDQ19DSVJfTFNJUkRZRl9Qb3MgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19DSVJfTFNJUkRZRl9Nc2sgICAgICAgICAgICAgICAgICgweDFVIDw8IFJDQ19DSVJfTFNJUkRZRl9Qb3MpICAgICAgLyohPCAweDAwMDAwMDAxICovDQojZGVmaW5lIFJDQ19DSVJfTFNJUkRZRiAgICAgICAgICAgICAgICAgICAgIFJDQ19DSVJfTFNJUkRZRl9Nc2sgICAgICAgICAgICAgICAgLyohPCBMU0kgUmVhZHkgSW50ZXJydXB0IGZsYWcgKi8NCiNkZWZpbmUgUkNDX0NJUl9MU0VSRFlGX1BvcyAgICAgICAgICAgICAgICAgKDFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0NJUl9MU0VSRFlGX01zayAgICAgICAgICAgICAgICAgKDB4MVUgPDwgUkNDX0NJUl9MU0VSRFlGX1BvcykgICAgICAvKiE8IDB4MDAwMDAwMDIgKi8NCiNkZWZpbmUgUkNDX0NJUl9MU0VSRFlGICAgICAgICAgICAgICAgICAgICAgUkNDX0NJUl9MU0VSRFlGX01zayAgICAgICAgICAgICAgICAvKiE8IExTRSBSZWFkeSBJbnRlcnJ1cHQgZmxhZyAqLw0KI2RlZmluZSBSQ0NfQ0lSX0hTSVJEWUZfUG9zICAgICAgICAgICAgICAgICAoMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQ0lSX0hTSVJEWUZfTXNrICAgICAgICAgICAgICAgICAoMHgxVSA8PCBSQ0NfQ0lSX0hTSVJEWUZfUG9zKSAgICAgIC8qITwgMHgwMDAwMDAwNCAqLw0KI2RlZmluZSBSQ0NfQ0lSX0hTSVJEWUYgICAgICAgICAgICAgICAgICAgICBSQ0NfQ0lSX0hTSVJEWUZfTXNrICAgICAgICAgICAgICAgIC8qITwgSFNJIFJlYWR5IEludGVycnVwdCBmbGFnICovDQojZGVmaW5lIFJDQ19DSVJfSFNFUkRZRl9Qb3MgICAgICAgICAgICAgICAgICgzVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19DSVJfSFNFUkRZRl9Nc2sgICAgICAgICAgICAgICAgICgweDFVIDw8IFJDQ19DSVJfSFNFUkRZRl9Qb3MpICAgICAgLyohPCAweDAwMDAwMDA4ICovDQojZGVmaW5lIFJDQ19DSVJfSFNFUkRZRiAgICAgICAgICAgICAgICAgICAgIFJDQ19DSVJfSFNFUkRZRl9Nc2sgICAgICAgICAgICAgICAgLyohPCBIU0UgUmVhZHkgSW50ZXJydXB0IGZsYWcgKi8NCiNkZWZpbmUgUkNDX0NJUl9QTExSRFlGX1BvcyAgICAgICAgICAgICAgICAgKDRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0NJUl9QTExSRFlGX01zayAgICAgICAgICAgICAgICAgKDB4MVUgPDwgUkNDX0NJUl9QTExSRFlGX1BvcykgICAgICAvKiE8IDB4MDAwMDAwMTAgKi8NCiNkZWZpbmUgUkNDX0NJUl9QTExSRFlGICAgICAgICAgICAgICAgICAgICAgUkNDX0NJUl9QTExSRFlGX01zayAgICAgICAgICAgICAgICAvKiE8IFBMTCBSZWFkeSBJbnRlcnJ1cHQgZmxhZyAqLw0KI2RlZmluZSBSQ0NfQ0lSX01TSVJEWUZfUG9zICAgICAgICAgICAgICAgICAoNVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQ0lSX01TSVJEWUZfTXNrICAgICAgICAgICAgICAgICAoMHgxVSA8PCBSQ0NfQ0lSX01TSVJEWUZfUG9zKSAgICAgIC8qITwgMHgwMDAwMDAyMCAqLw0KI2RlZmluZSBSQ0NfQ0lSX01TSVJEWUYgICAgICAgICAgICAgICAgICAgICBSQ0NfQ0lSX01TSVJEWUZfTXNrICAgICAgICAgICAgICAgIC8qITwgTVNJIFJlYWR5IEludGVycnVwdCBmbGFnICovDQojZGVmaW5lIFJDQ19DSVJfTFNFQ1NTRl9Qb3MgICAgICAgICAgICAgICAgICg2VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19DSVJfTFNFQ1NTRl9Nc2sgICAgICAgICAgICAgICAgICgweDFVIDw8IFJDQ19DSVJfTFNFQ1NTRl9Qb3MpICAgICAgLyohPCAweDAwMDAwMDQwICovDQojZGVmaW5lIFJDQ19DSVJfTFNFQ1NTRiAgICAgICAgICAgICAgICAgICAgIFJDQ19DSVJfTFNFQ1NTRl9Nc2sgICAgICAgICAgICAgICAgLyohPCBMU0UgQ1NTIEludGVycnVwdCBmbGFnICovDQojZGVmaW5lIFJDQ19DSVJfQ1NTRl9Qb3MgICAgICAgICAgICAgICAgICAgICg3VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19DSVJfQ1NTRl9Nc2sgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFJDQ19DSVJfQ1NTRl9Qb3MpICAgICAgICAgLyohPCAweDAwMDAwMDgwICovDQojZGVmaW5lIFJDQ19DSVJfQ1NTRiAgICAgICAgICAgICAgICAgICAgICAgIFJDQ19DSVJfQ1NTRl9Nc2sgICAgICAgICAgICAgICAgICAgLyohPCBDbG9jayBTZWN1cml0eSBTeXN0ZW0gSW50ZXJydXB0IGZsYWcgKi8NCg0KI2RlZmluZSBSQ0NfQ0lSX0xTSVJEWUlFX1BvcyAgICAgICAgICAgICAgICAoOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQ0lSX0xTSVJEWUlFX01zayAgICAgICAgICAgICAgICAoMHgxVSA8PCBSQ0NfQ0lSX0xTSVJEWUlFX1BvcykgICAgIC8qITwgMHgwMDAwMDEwMCAqLw0KI2RlZmluZSBSQ0NfQ0lSX0xTSVJEWUlFICAgICAgICAgICAgICAgICAgICBSQ0NfQ0lSX0xTSVJEWUlFX01zayAgICAgICAgICAgICAgIC8qITwgTFNJIFJlYWR5IEludGVycnVwdCBFbmFibGUgKi8NCiNkZWZpbmUgUkNDX0NJUl9MU0VSRFlJRV9Qb3MgICAgICAgICAgICAgICAgKDlVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0NJUl9MU0VSRFlJRV9Nc2sgICAgICAgICAgICAgICAgKDB4MVUgPDwgUkNDX0NJUl9MU0VSRFlJRV9Qb3MpICAgICAvKiE8IDB4MDAwMDAyMDAgKi8NCiNkZWZpbmUgUkNDX0NJUl9MU0VSRFlJRSAgICAgICAgICAgICAgICAgICAgUkNDX0NJUl9MU0VSRFlJRV9Nc2sgICAgICAgICAgICAgICAvKiE8IExTRSBSZWFkeSBJbnRlcnJ1cHQgRW5hYmxlICovDQojZGVmaW5lIFJDQ19DSVJfSFNJUkRZSUVfUG9zICAgICAgICAgICAgICAgICgxMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19DSVJfSFNJUkRZSUVfTXNrICAgICAgICAgICAgICAgICgweDFVIDw8IFJDQ19DSVJfSFNJUkRZSUVfUG9zKSAgICAgLyohPCAweDAwMDAwNDAwICovDQojZGVmaW5lIFJDQ19DSVJfSFNJUkRZSUUgICAgICAgICAgICAgICAgICAgIFJDQ19DSVJfSFNJUkRZSUVfTXNrICAgICAgICAgICAgICAgLyohPCBIU0kgUmVhZHkgSW50ZXJydXB0IEVuYWJsZSAqLw0KI2RlZmluZSBSQ0NfQ0lSX0hTRVJEWUlFX1BvcyAgICAgICAgICAgICAgICAoMTFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQ0lSX0hTRVJEWUlFX01zayAgICAgICAgICAgICAgICAoMHgxVSA8PCBSQ0NfQ0lSX0hTRVJEWUlFX1BvcykgICAgIC8qITwgMHgwMDAwMDgwMCAqLw0KI2RlZmluZSBSQ0NfQ0lSX0hTRVJEWUlFICAgICAgICAgICAgICAgICAgICBSQ0NfQ0lSX0hTRVJEWUlFX01zayAgICAgICAgICAgICAgIC8qITwgSFNFIFJlYWR5IEludGVycnVwdCBFbmFibGUgKi8NCiNkZWZpbmUgUkNDX0NJUl9QTExSRFlJRV9Qb3MgICAgICAgICAgICAgICAgKDEyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0NJUl9QTExSRFlJRV9Nc2sgICAgICAgICAgICAgICAgKDB4MVUgPDwgUkNDX0NJUl9QTExSRFlJRV9Qb3MpICAgICAvKiE8IDB4MDAwMDEwMDAgKi8NCiNkZWZpbmUgUkNDX0NJUl9QTExSRFlJRSAgICAgICAgICAgICAgICAgICAgUkNDX0NJUl9QTExSRFlJRV9Nc2sgICAgICAgICAgICAgICAvKiE8IFBMTCBSZWFkeSBJbnRlcnJ1cHQgRW5hYmxlICovDQojZGVmaW5lIFJDQ19DSVJfTVNJUkRZSUVfUG9zICAgICAgICAgICAgICAgICgxM1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19DSVJfTVNJUkRZSUVfTXNrICAgICAgICAgICAgICAgICgweDFVIDw8IFJDQ19DSVJfTVNJUkRZSUVfUG9zKSAgICAgLyohPCAweDAwMDAyMDAwICovDQojZGVmaW5lIFJDQ19DSVJfTVNJUkRZSUUgICAgICAgICAgICAgICAgICAgIFJDQ19DSVJfTVNJUkRZSUVfTXNrICAgICAgICAgICAgICAgLyohPCBNU0kgUmVhZHkgSW50ZXJydXB0IEVuYWJsZSAqLw0KI2RlZmluZSBSQ0NfQ0lSX0xTRUNTU0lFX1BvcyAgICAgICAgICAgICAgICAoMTRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQ0lSX0xTRUNTU0lFX01zayAgICAgICAgICAgICAgICAoMHgxVSA8PCBSQ0NfQ0lSX0xTRUNTU0lFX1BvcykgICAgIC8qITwgMHgwMDAwNDAwMCAqLw0KI2RlZmluZSBSQ0NfQ0lSX0xTRUNTU0lFICAgICAgICAgICAgICAgICAgICBSQ0NfQ0lSX0xTRUNTU0lFX01zayAgICAgICAgICAgICAgIC8qITwgTFNFIENTUyBJbnRlcnJ1cHQgRW5hYmxlICovDQoNCiNkZWZpbmUgUkNDX0NJUl9MU0lSRFlDX1BvcyAgICAgICAgICAgICAgICAgKDE2VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0NJUl9MU0lSRFlDX01zayAgICAgICAgICAgICAgICAgKDB4MVUgPDwgUkNDX0NJUl9MU0lSRFlDX1BvcykgICAgICAvKiE8IDB4MDAwMTAwMDAgKi8NCiNkZWZpbmUgUkNDX0NJUl9MU0lSRFlDICAgICAgICAgICAgICAgICAgICAgUkNDX0NJUl9MU0lSRFlDX01zayAgICAgICAgICAgICAgICAvKiE8IExTSSBSZWFkeSBJbnRlcnJ1cHQgQ2xlYXIgKi8NCiNkZWZpbmUgUkNDX0NJUl9MU0VSRFlDX1BvcyAgICAgICAgICAgICAgICAgKDE3VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0NJUl9MU0VSRFlDX01zayAgICAgICAgICAgICAgICAgKDB4MVUgPDwgUkNDX0NJUl9MU0VSRFlDX1BvcykgICAgICAvKiE8IDB4MDAwMjAwMDAgKi8NCiNkZWZpbmUgUkNDX0NJUl9MU0VSRFlDICAgICAgICAgICAgICAgICAgICAgUkNDX0NJUl9MU0VSRFlDX01zayAgICAgICAgICAgICAgICAvKiE8IExTRSBSZWFkeSBJbnRlcnJ1cHQgQ2xlYXIgKi8NCiNkZWZpbmUgUkNDX0NJUl9IU0lSRFlDX1BvcyAgICAgICAgICAgICAgICAgKDE4VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0NJUl9IU0lSRFlDX01zayAgICAgICAgICAgICAgICAgKDB4MVUgPDwgUkNDX0NJUl9IU0lSRFlDX1BvcykgICAgICAvKiE8IDB4MDAwNDAwMDAgKi8NCiNkZWZpbmUgUkNDX0NJUl9IU0lSRFlDICAgICAgICAgICAgICAgICAgICAgUkNDX0NJUl9IU0lSRFlDX01zayAgICAgICAgICAgICAgICAvKiE8IEhTSSBSZWFkeSBJbnRlcnJ1cHQgQ2xlYXIgKi8NCiNkZWZpbmUgUkNDX0NJUl9IU0VSRFlDX1BvcyAgICAgICAgICAgICAgICAgKDE5VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0NJUl9IU0VSRFlDX01zayAgICAgICAgICAgICAgICAgKDB4MVUgPDwgUkNDX0NJUl9IU0VSRFlDX1BvcykgICAgICAvKiE8IDB4MDAwODAwMDAgKi8NCiNkZWZpbmUgUkNDX0NJUl9IU0VSRFlDICAgICAgICAgICAgICAgICAgICAgUkNDX0NJUl9IU0VSRFlDX01zayAgICAgICAgICAgICAgICAvKiE8IEhTRSBSZWFkeSBJbnRlcnJ1cHQgQ2xlYXIgKi8NCiNkZWZpbmUgUkNDX0NJUl9QTExSRFlDX1BvcyAgICAgICAgICAgICAgICAgKDIwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0NJUl9QTExSRFlDX01zayAgICAgICAgICAgICAgICAgKDB4MVUgPDwgUkNDX0NJUl9QTExSRFlDX1BvcykgICAgICAvKiE8IDB4MDAxMDAwMDAgKi8NCiNkZWZpbmUgUkNDX0NJUl9QTExSRFlDICAgICAgICAgICAgICAgICAgICAgUkNDX0NJUl9QTExSRFlDX01zayAgICAgICAgICAgICAgICAvKiE8IFBMTCBSZWFkeSBJbnRlcnJ1cHQgQ2xlYXIgKi8NCiNkZWZpbmUgUkNDX0NJUl9NU0lSRFlDX1BvcyAgICAgICAgICAgICAgICAgKDIxVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0NJUl9NU0lSRFlDX01zayAgICAgICAgICAgICAgICAgKDB4MVUgPDwgUkNDX0NJUl9NU0lSRFlDX1BvcykgICAgICAvKiE8IDB4MDAyMDAwMDAgKi8NCiNkZWZpbmUgUkNDX0NJUl9NU0lSRFlDICAgICAgICAgICAgICAgICAgICAgUkNDX0NJUl9NU0lSRFlDX01zayAgICAgICAgICAgICAgICAvKiE8IE1TSSBSZWFkeSBJbnRlcnJ1cHQgQ2xlYXIgKi8NCiNkZWZpbmUgUkNDX0NJUl9MU0VDU1NDX1BvcyAgICAgICAgICAgICAgICAgKDIyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0NJUl9MU0VDU1NDX01zayAgICAgICAgICAgICAgICAgKDB4MVUgPDwgUkNDX0NJUl9MU0VDU1NDX1BvcykgICAgICAvKiE8IDB4MDA0MDAwMDAgKi8NCiNkZWZpbmUgUkNDX0NJUl9MU0VDU1NDICAgICAgICAgICAgICAgICAgICAgUkNDX0NJUl9MU0VDU1NDX01zayAgICAgICAgICAgICAgICAvKiE8IExTRSBDU1MgSW50ZXJydXB0IENsZWFyICovDQojZGVmaW5lIFJDQ19DSVJfQ1NTQ19Qb3MgICAgICAgICAgICAgICAgICAgICgyM1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19DSVJfQ1NTQ19Nc2sgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFJDQ19DSVJfQ1NTQ19Qb3MpICAgICAgICAgLyohPCAweDAwODAwMDAwICovDQojZGVmaW5lIFJDQ19DSVJfQ1NTQyAgICAgICAgICAgICAgICAgICAgICAgIFJDQ19DSVJfQ1NTQ19Nc2sgICAgICAgICAgICAgICAgICAgLyohPCBDbG9jayBTZWN1cml0eSBTeXN0ZW0gSW50ZXJydXB0IENsZWFyICovDQoNCi8qKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFJDQ19BSEJSU1RSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIFJDQ19BSEJSU1RSX0dQSU9BUlNUX1BvcyAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19BSEJSU1RSX0dQSU9BUlNUX01zayAgICAgICAgICAgICgweDFVIDw8IFJDQ19BSEJSU1RSX0dQSU9BUlNUX1BvcykgLyohPCAweDAwMDAwMDAxICovDQojZGVmaW5lIFJDQ19BSEJSU1RSX0dQSU9BUlNUICAgICAgICAgICAgICAgIFJDQ19BSEJSU1RSX0dQSU9BUlNUX01zayAgICAgICAgICAgLyohPCBHUElPIHBvcnQgQSByZXNldCAqLw0KI2RlZmluZSBSQ0NfQUhCUlNUUl9HUElPQlJTVF9Qb3MgICAgICAgICAgICAoMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQUhCUlNUUl9HUElPQlJTVF9Nc2sgICAgICAgICAgICAoMHgxVSA8PCBSQ0NfQUhCUlNUUl9HUElPQlJTVF9Qb3MpIC8qITwgMHgwMDAwMDAwMiAqLw0KI2RlZmluZSBSQ0NfQUhCUlNUUl9HUElPQlJTVCAgICAgICAgICAgICAgICBSQ0NfQUhCUlNUUl9HUElPQlJTVF9Nc2sgICAgICAgICAgIC8qITwgR1BJTyBwb3J0IEIgcmVzZXQgKi8NCiNkZWZpbmUgUkNDX0FIQlJTVFJfR1BJT0NSU1RfUG9zICAgICAgICAgICAgKDJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0FIQlJTVFJfR1BJT0NSU1RfTXNrICAgICAgICAgICAgKDB4MVUgPDwgUkNDX0FIQlJTVFJfR1BJT0NSU1RfUG9zKSAvKiE8IDB4MDAwMDAwMDQgKi8NCiNkZWZpbmUgUkNDX0FIQlJTVFJfR1BJT0NSU1QgICAgICAgICAgICAgICAgUkNDX0FIQlJTVFJfR1BJT0NSU1RfTXNrICAgICAgICAgICAvKiE8IEdQSU8gcG9ydCBDIHJlc2V0ICovDQojZGVmaW5lIFJDQ19BSEJSU1RSX0dQSU9EUlNUX1BvcyAgICAgICAgICAgICgzVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19BSEJSU1RSX0dQSU9EUlNUX01zayAgICAgICAgICAgICgweDFVIDw8IFJDQ19BSEJSU1RSX0dQSU9EUlNUX1BvcykgLyohPCAweDAwMDAwMDA4ICovDQojZGVmaW5lIFJDQ19BSEJSU1RSX0dQSU9EUlNUICAgICAgICAgICAgICAgIFJDQ19BSEJSU1RSX0dQSU9EUlNUX01zayAgICAgICAgICAgLyohPCBHUElPIHBvcnQgRCByZXNldCAqLw0KI2RlZmluZSBSQ0NfQUhCUlNUUl9HUElPRVJTVF9Qb3MgICAgICAgICAgICAoNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQUhCUlNUUl9HUElPRVJTVF9Nc2sgICAgICAgICAgICAoMHgxVSA8PCBSQ0NfQUhCUlNUUl9HUElPRVJTVF9Qb3MpIC8qITwgMHgwMDAwMDAxMCAqLw0KI2RlZmluZSBSQ0NfQUhCUlNUUl9HUElPRVJTVCAgICAgICAgICAgICAgICBSQ0NfQUhCUlNUUl9HUElPRVJTVF9Nc2sgICAgICAgICAgIC8qITwgR1BJTyBwb3J0IEUgcmVzZXQgKi8NCiNkZWZpbmUgUkNDX0FIQlJTVFJfR1BJT0hSU1RfUG9zICAgICAgICAgICAgKDVVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0FIQlJTVFJfR1BJT0hSU1RfTXNrICAgICAgICAgICAgKDB4MVUgPDwgUkNDX0FIQlJTVFJfR1BJT0hSU1RfUG9zKSAvKiE8IDB4MDAwMDAwMjAgKi8NCiNkZWZpbmUgUkNDX0FIQlJTVFJfR1BJT0hSU1QgICAgICAgICAgICAgICAgUkNDX0FIQlJTVFJfR1BJT0hSU1RfTXNrICAgICAgICAgICAvKiE8IEdQSU8gcG9ydCBIIHJlc2V0ICovDQojZGVmaW5lIFJDQ19BSEJSU1RSX0dQSU9GUlNUX1BvcyAgICAgICAgICAgICg2VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19BSEJSU1RSX0dQSU9GUlNUX01zayAgICAgICAgICAgICgweDFVIDw8IFJDQ19BSEJSU1RSX0dQSU9GUlNUX1BvcykgLyohPCAweDAwMDAwMDQwICovDQojZGVmaW5lIFJDQ19BSEJSU1RSX0dQSU9GUlNUICAgICAgICAgICAgICAgIFJDQ19BSEJSU1RSX0dQSU9GUlNUX01zayAgICAgICAgICAgLyohPCBHUElPIHBvcnQgRiByZXNldCAqLw0KI2RlZmluZSBSQ0NfQUhCUlNUUl9HUElPR1JTVF9Qb3MgICAgICAgICAgICAoN1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQUhCUlNUUl9HUElPR1JTVF9Nc2sgICAgICAgICAgICAoMHgxVSA8PCBSQ0NfQUhCUlNUUl9HUElPR1JTVF9Qb3MpIC8qITwgMHgwMDAwMDA4MCAqLw0KI2RlZmluZSBSQ0NfQUhCUlNUUl9HUElPR1JTVCAgICAgICAgICAgICAgICBSQ0NfQUhCUlNUUl9HUElPR1JTVF9Nc2sgICAgICAgICAgIC8qITwgR1BJTyBwb3J0IEcgcmVzZXQgKi8NCiNkZWZpbmUgUkNDX0FIQlJTVFJfQ1JDUlNUX1BvcyAgICAgICAgICAgICAgKDEyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0FIQlJTVFJfQ1JDUlNUX01zayAgICAgICAgICAgICAgKDB4MVUgPDwgUkNDX0FIQlJTVFJfQ1JDUlNUX1BvcykgICAvKiE8IDB4MDAwMDEwMDAgKi8NCiNkZWZpbmUgUkNDX0FIQlJTVFJfQ1JDUlNUICAgICAgICAgICAgICAgICAgUkNDX0FIQlJTVFJfQ1JDUlNUX01zayAgICAgICAgICAgICAvKiE8IENSQyByZXNldCAqLw0KI2RlZmluZSBSQ0NfQUhCUlNUUl9GTElURlJTVF9Qb3MgICAgICAgICAgICAoMTVVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQUhCUlNUUl9GTElURlJTVF9Nc2sgICAgICAgICAgICAoMHgxVSA8PCBSQ0NfQUhCUlNUUl9GTElURlJTVF9Qb3MpIC8qITwgMHgwMDAwODAwMCAqLw0KI2RlZmluZSBSQ0NfQUhCUlNUUl9GTElURlJTVCAgICAgICAgICAgICAgICBSQ0NfQUhCUlNUUl9GTElURlJTVF9Nc2sgICAgICAgICAgIC8qITwgRkxJVEYgcmVzZXQgKi8NCiNkZWZpbmUgUkNDX0FIQlJTVFJfRE1BMVJTVF9Qb3MgICAgICAgICAgICAgKDI0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0FIQlJTVFJfRE1BMVJTVF9Nc2sgICAgICAgICAgICAgKDB4MVUgPDwgUkNDX0FIQlJTVFJfRE1BMVJTVF9Qb3MpICAvKiE8IDB4MDEwMDAwMDAgKi8NCiNkZWZpbmUgUkNDX0FIQlJTVFJfRE1BMVJTVCAgICAgICAgICAgICAgICAgUkNDX0FIQlJTVFJfRE1BMVJTVF9Nc2sgICAgICAgICAgICAvKiE8IERNQTEgcmVzZXQgKi8NCiNkZWZpbmUgUkNDX0FIQlJTVFJfRE1BMlJTVF9Qb3MgICAgICAgICAgICAgKDI1VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0FIQlJTVFJfRE1BMlJTVF9Nc2sgICAgICAgICAgICAgKDB4MVUgPDwgUkNDX0FIQlJTVFJfRE1BMlJTVF9Qb3MpICAvKiE8IDB4MDIwMDAwMDAgKi8NCiNkZWZpbmUgUkNDX0FIQlJTVFJfRE1BMlJTVCAgICAgICAgICAgICAgICAgUkNDX0FIQlJTVFJfRE1BMlJTVF9Nc2sgICAgICAgICAgICAvKiE8IERNQTIgcmVzZXQgKi8NCiANCi8qKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFJDQ19BUEIyUlNUUiByZWdpc3RlciAgKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIFJDQ19BUEIyUlNUUl9TWVNDRkdSU1RfUG9zICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19BUEIyUlNUUl9TWVNDRkdSU1RfTXNrICAgICAgICAgICgweDFVIDw8IFJDQ19BUEIyUlNUUl9TWVNDRkdSU1RfUG9zKSAvKiE8IDB4MDAwMDAwMDEgKi8NCiNkZWZpbmUgUkNDX0FQQjJSU1RSX1NZU0NGR1JTVCAgICAgICAgICAgICAgUkNDX0FQQjJSU1RSX1NZU0NGR1JTVF9Nc2sgICAgICAgICAvKiE8IFN5c3RlbSBDb25maWd1cmF0aW9uIFNZU0NGRyByZXNldCAqLw0KI2RlZmluZSBSQ0NfQVBCMlJTVFJfVElNOVJTVF9Qb3MgICAgICAgICAgICAoMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQVBCMlJTVFJfVElNOVJTVF9Nc2sgICAgICAgICAgICAoMHgxVSA8PCBSQ0NfQVBCMlJTVFJfVElNOVJTVF9Qb3MpIC8qITwgMHgwMDAwMDAwNCAqLw0KI2RlZmluZSBSQ0NfQVBCMlJTVFJfVElNOVJTVCAgICAgICAgICAgICAgICBSQ0NfQVBCMlJTVFJfVElNOVJTVF9Nc2sgICAgICAgICAgIC8qITwgVElNOSByZXNldCAqLw0KI2RlZmluZSBSQ0NfQVBCMlJTVFJfVElNMTBSU1RfUG9zICAgICAgICAgICAoM1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQVBCMlJTVFJfVElNMTBSU1RfTXNrICAgICAgICAgICAoMHgxVSA8PCBSQ0NfQVBCMlJTVFJfVElNMTBSU1RfUG9zKSAvKiE8IDB4MDAwMDAwMDggKi8NCiNkZWZpbmUgUkNDX0FQQjJSU1RSX1RJTTEwUlNUICAgICAgICAgICAgICAgUkNDX0FQQjJSU1RSX1RJTTEwUlNUX01zayAgICAgICAgICAvKiE8IFRJTTEwIHJlc2V0ICovDQojZGVmaW5lIFJDQ19BUEIyUlNUUl9USU0xMVJTVF9Qb3MgICAgICAgICAgICg0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19BUEIyUlNUUl9USU0xMVJTVF9Nc2sgICAgICAgICAgICgweDFVIDw8IFJDQ19BUEIyUlNUUl9USU0xMVJTVF9Qb3MpIC8qITwgMHgwMDAwMDAxMCAqLw0KI2RlZmluZSBSQ0NfQVBCMlJTVFJfVElNMTFSU1QgICAgICAgICAgICAgICBSQ0NfQVBCMlJTVFJfVElNMTFSU1RfTXNrICAgICAgICAgIC8qITwgVElNMTEgcmVzZXQgKi8NCiNkZWZpbmUgUkNDX0FQQjJSU1RSX0FEQzFSU1RfUG9zICAgICAgICAgICAgKDlVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0FQQjJSU1RSX0FEQzFSU1RfTXNrICAgICAgICAgICAgKDB4MVUgPDwgUkNDX0FQQjJSU1RSX0FEQzFSU1RfUG9zKSAvKiE8IDB4MDAwMDAyMDAgKi8NCiNkZWZpbmUgUkNDX0FQQjJSU1RSX0FEQzFSU1QgICAgICAgICAgICAgICAgUkNDX0FQQjJSU1RSX0FEQzFSU1RfTXNrICAgICAgICAgICAvKiE8IEFEQzEgcmVzZXQgKi8NCiNkZWZpbmUgUkNDX0FQQjJSU1RSX1NQSTFSU1RfUG9zICAgICAgICAgICAgKDEyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0FQQjJSU1RSX1NQSTFSU1RfTXNrICAgICAgICAgICAgKDB4MVUgPDwgUkNDX0FQQjJSU1RSX1NQSTFSU1RfUG9zKSAvKiE8IDB4MDAwMDEwMDAgKi8NCiNkZWZpbmUgUkNDX0FQQjJSU1RSX1NQSTFSU1QgICAgICAgICAgICAgICAgUkNDX0FQQjJSU1RSX1NQSTFSU1RfTXNrICAgICAgICAgICAvKiE8IFNQSTEgcmVzZXQgKi8NCiNkZWZpbmUgUkNDX0FQQjJSU1RSX1VTQVJUMVJTVF9Qb3MgICAgICAgICAgKDE0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0FQQjJSU1RSX1VTQVJUMVJTVF9Nc2sgICAgICAgICAgKDB4MVUgPDwgUkNDX0FQQjJSU1RSX1VTQVJUMVJTVF9Qb3MpIC8qITwgMHgwMDAwNDAwMCAqLw0KI2RlZmluZSBSQ0NfQVBCMlJTVFJfVVNBUlQxUlNUICAgICAgICAgICAgICBSQ0NfQVBCMlJTVFJfVVNBUlQxUlNUX01zayAgICAgICAgIC8qITwgVVNBUlQxIHJlc2V0ICovDQoNCi8qKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFJDQ19BUEIxUlNUUiByZWdpc3RlciAgKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIFJDQ19BUEIxUlNUUl9USU0yUlNUX1BvcyAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19BUEIxUlNUUl9USU0yUlNUX01zayAgICAgICAgICAgICgweDFVIDw8IFJDQ19BUEIxUlNUUl9USU0yUlNUX1BvcykgLyohPCAweDAwMDAwMDAxICovDQojZGVmaW5lIFJDQ19BUEIxUlNUUl9USU0yUlNUICAgICAgICAgICAgICAgIFJDQ19BUEIxUlNUUl9USU0yUlNUX01zayAgICAgICAgICAgLyohPCBUaW1lciAyIHJlc2V0ICovDQojZGVmaW5lIFJDQ19BUEIxUlNUUl9USU0zUlNUX1BvcyAgICAgICAgICAgICgxVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19BUEIxUlNUUl9USU0zUlNUX01zayAgICAgICAgICAgICgweDFVIDw8IFJDQ19BUEIxUlNUUl9USU0zUlNUX1BvcykgLyohPCAweDAwMDAwMDAyICovDQojZGVmaW5lIFJDQ19BUEIxUlNUUl9USU0zUlNUICAgICAgICAgICAgICAgIFJDQ19BUEIxUlNUUl9USU0zUlNUX01zayAgICAgICAgICAgLyohPCBUaW1lciAzIHJlc2V0ICovDQojZGVmaW5lIFJDQ19BUEIxUlNUUl9USU00UlNUX1BvcyAgICAgICAgICAgICgyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19BUEIxUlNUUl9USU00UlNUX01zayAgICAgICAgICAgICgweDFVIDw8IFJDQ19BUEIxUlNUUl9USU00UlNUX1BvcykgLyohPCAweDAwMDAwMDA0ICovDQojZGVmaW5lIFJDQ19BUEIxUlNUUl9USU00UlNUICAgICAgICAgICAgICAgIFJDQ19BUEIxUlNUUl9USU00UlNUX01zayAgICAgICAgICAgLyohPCBUaW1lciA0IHJlc2V0ICovDQojZGVmaW5lIFJDQ19BUEIxUlNUUl9USU01UlNUX1BvcyAgICAgICAgICAgICgzVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19BUEIxUlNUUl9USU01UlNUX01zayAgICAgICAgICAgICgweDFVIDw8IFJDQ19BUEIxUlNUUl9USU01UlNUX1BvcykgLyohPCAweDAwMDAwMDA4ICovDQojZGVmaW5lIFJDQ19BUEIxUlNUUl9USU01UlNUICAgICAgICAgICAgICAgIFJDQ19BUEIxUlNUUl9USU01UlNUX01zayAgICAgICAgICAgLyohPCBUaW1lciA1IHJlc2V0ICovDQojZGVmaW5lIFJDQ19BUEIxUlNUUl9USU02UlNUX1BvcyAgICAgICAgICAgICg0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19BUEIxUlNUUl9USU02UlNUX01zayAgICAgICAgICAgICgweDFVIDw8IFJDQ19BUEIxUlNUUl9USU02UlNUX1BvcykgLyohPCAweDAwMDAwMDEwICovDQojZGVmaW5lIFJDQ19BUEIxUlNUUl9USU02UlNUICAgICAgICAgICAgICAgIFJDQ19BUEIxUlNUUl9USU02UlNUX01zayAgICAgICAgICAgLyohPCBUaW1lciA2IHJlc2V0ICovDQojZGVmaW5lIFJDQ19BUEIxUlNUUl9USU03UlNUX1BvcyAgICAgICAgICAgICg1VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19BUEIxUlNUUl9USU03UlNUX01zayAgICAgICAgICAgICgweDFVIDw8IFJDQ19BUEIxUlNUUl9USU03UlNUX1BvcykgLyohPCAweDAwMDAwMDIwICovDQojZGVmaW5lIFJDQ19BUEIxUlNUUl9USU03UlNUICAgICAgICAgICAgICAgIFJDQ19BUEIxUlNUUl9USU03UlNUX01zayAgICAgICAgICAgLyohPCBUaW1lciA3IHJlc2V0ICovDQojZGVmaW5lIFJDQ19BUEIxUlNUUl9MQ0RSU1RfUG9zICAgICAgICAgICAgICg5VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19BUEIxUlNUUl9MQ0RSU1RfTXNrICAgICAgICAgICAgICgweDFVIDw8IFJDQ19BUEIxUlNUUl9MQ0RSU1RfUG9zKSAgLyohPCAweDAwMDAwMjAwICovDQojZGVmaW5lIFJDQ19BUEIxUlNUUl9MQ0RSU1QgICAgICAgICAgICAgICAgIFJDQ19BUEIxUlNUUl9MQ0RSU1RfTXNrICAgICAgICAgICAgLyohPCBMQ0QgcmVzZXQgKi8NCiNkZWZpbmUgUkNDX0FQQjFSU1RSX1dXREdSU1RfUG9zICAgICAgICAgICAgKDExVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0FQQjFSU1RSX1dXREdSU1RfTXNrICAgICAgICAgICAgKDB4MVUgPDwgUkNDX0FQQjFSU1RSX1dXREdSU1RfUG9zKSAvKiE8IDB4MDAwMDA4MDAgKi8NCiNkZWZpbmUgUkNDX0FQQjFSU1RSX1dXREdSU1QgICAgICAgICAgICAgICAgUkNDX0FQQjFSU1RSX1dXREdSU1RfTXNrICAgICAgICAgICAvKiE8IFdpbmRvdyBXYXRjaGRvZyByZXNldCAqLw0KI2RlZmluZSBSQ0NfQVBCMVJTVFJfU1BJMlJTVF9Qb3MgICAgICAgICAgICAoMTRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQVBCMVJTVFJfU1BJMlJTVF9Nc2sgICAgICAgICAgICAoMHgxVSA8PCBSQ0NfQVBCMVJTVFJfU1BJMlJTVF9Qb3MpIC8qITwgMHgwMDAwNDAwMCAqLw0KI2RlZmluZSBSQ0NfQVBCMVJTVFJfU1BJMlJTVCAgICAgICAgICAgICAgICBSQ0NfQVBCMVJTVFJfU1BJMlJTVF9Nc2sgICAgICAgICAgIC8qITwgU1BJIDIgcmVzZXQgKi8NCiNkZWZpbmUgUkNDX0FQQjFSU1RSX1NQSTNSU1RfUG9zICAgICAgICAgICAgKDE1VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0FQQjFSU1RSX1NQSTNSU1RfTXNrICAgICAgICAgICAgKDB4MVUgPDwgUkNDX0FQQjFSU1RSX1NQSTNSU1RfUG9zKSAvKiE8IDB4MDAwMDgwMDAgKi8NCiNkZWZpbmUgUkNDX0FQQjFSU1RSX1NQSTNSU1QgICAgICAgICAgICAgICAgUkNDX0FQQjFSU1RSX1NQSTNSU1RfTXNrICAgICAgICAgICAvKiE8IFNQSSAzIHJlc2V0ICovDQojZGVmaW5lIFJDQ19BUEIxUlNUUl9VU0FSVDJSU1RfUG9zICAgICAgICAgICgxN1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19BUEIxUlNUUl9VU0FSVDJSU1RfTXNrICAgICAgICAgICgweDFVIDw8IFJDQ19BUEIxUlNUUl9VU0FSVDJSU1RfUG9zKSAvKiE8IDB4MDAwMjAwMDAgKi8NCiNkZWZpbmUgUkNDX0FQQjFSU1RSX1VTQVJUMlJTVCAgICAgICAgICAgICAgUkNDX0FQQjFSU1RSX1VTQVJUMlJTVF9Nc2sgICAgICAgICAvKiE8IFVTQVJUIDIgcmVzZXQgKi8NCiNkZWZpbmUgUkNDX0FQQjFSU1RSX1VTQVJUM1JTVF9Qb3MgICAgICAgICAgKDE4VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0FQQjFSU1RSX1VTQVJUM1JTVF9Nc2sgICAgICAgICAgKDB4MVUgPDwgUkNDX0FQQjFSU1RSX1VTQVJUM1JTVF9Qb3MpIC8qITwgMHgwMDA0MDAwMCAqLw0KI2RlZmluZSBSQ0NfQVBCMVJTVFJfVVNBUlQzUlNUICAgICAgICAgICAgICBSQ0NfQVBCMVJTVFJfVVNBUlQzUlNUX01zayAgICAgICAgIC8qITwgVVNBUlQgMyByZXNldCAqLw0KI2RlZmluZSBSQ0NfQVBCMVJTVFJfSTJDMVJTVF9Qb3MgICAgICAgICAgICAoMjFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQVBCMVJTVFJfSTJDMVJTVF9Nc2sgICAgICAgICAgICAoMHgxVSA8PCBSQ0NfQVBCMVJTVFJfSTJDMVJTVF9Qb3MpIC8qITwgMHgwMDIwMDAwMCAqLw0KI2RlZmluZSBSQ0NfQVBCMVJTVFJfSTJDMVJTVCAgICAgICAgICAgICAgICBSQ0NfQVBCMVJTVFJfSTJDMVJTVF9Nc2sgICAgICAgICAgIC8qITwgSTJDIDEgcmVzZXQgKi8NCiNkZWZpbmUgUkNDX0FQQjFSU1RSX0kyQzJSU1RfUG9zICAgICAgICAgICAgKDIyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0FQQjFSU1RSX0kyQzJSU1RfTXNrICAgICAgICAgICAgKDB4MVUgPDwgUkNDX0FQQjFSU1RSX0kyQzJSU1RfUG9zKSAvKiE8IDB4MDA0MDAwMDAgKi8NCiNkZWZpbmUgUkNDX0FQQjFSU1RSX0kyQzJSU1QgICAgICAgICAgICAgICAgUkNDX0FQQjFSU1RSX0kyQzJSU1RfTXNrICAgICAgICAgICAvKiE8IEkyQyAyIHJlc2V0ICovDQojZGVmaW5lIFJDQ19BUEIxUlNUUl9VU0JSU1RfUG9zICAgICAgICAgICAgICgyM1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19BUEIxUlNUUl9VU0JSU1RfTXNrICAgICAgICAgICAgICgweDFVIDw8IFJDQ19BUEIxUlNUUl9VU0JSU1RfUG9zKSAgLyohPCAweDAwODAwMDAwICovDQojZGVmaW5lIFJDQ19BUEIxUlNUUl9VU0JSU1QgICAgICAgICAgICAgICAgIFJDQ19BUEIxUlNUUl9VU0JSU1RfTXNrICAgICAgICAgICAgLyohPCBVU0IgcmVzZXQgKi8NCiNkZWZpbmUgUkNDX0FQQjFSU1RSX1BXUlJTVF9Qb3MgICAgICAgICAgICAgKDI4VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0FQQjFSU1RSX1BXUlJTVF9Nc2sgICAgICAgICAgICAgKDB4MVUgPDwgUkNDX0FQQjFSU1RSX1BXUlJTVF9Qb3MpICAvKiE8IDB4MTAwMDAwMDAgKi8NCiNkZWZpbmUgUkNDX0FQQjFSU1RSX1BXUlJTVCAgICAgICAgICAgICAgICAgUkNDX0FQQjFSU1RSX1BXUlJTVF9Nc2sgICAgICAgICAgICAvKiE8IFBvd2VyIGludGVyZmFjZSByZXNldCAqLw0KI2RlZmluZSBSQ0NfQVBCMVJTVFJfREFDUlNUX1BvcyAgICAgICAgICAgICAoMjlVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQVBCMVJTVFJfREFDUlNUX01zayAgICAgICAgICAgICAoMHgxVSA8PCBSQ0NfQVBCMVJTVFJfREFDUlNUX1BvcykgIC8qITwgMHgyMDAwMDAwMCAqLw0KI2RlZmluZSBSQ0NfQVBCMVJTVFJfREFDUlNUICAgICAgICAgICAgICAgICBSQ0NfQVBCMVJTVFJfREFDUlNUX01zayAgICAgICAgICAgIC8qITwgREFDIGludGVyZmFjZSByZXNldCAqLw0KI2RlZmluZSBSQ0NfQVBCMVJTVFJfQ09NUFJTVF9Qb3MgICAgICAgICAgICAoMzFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQVBCMVJTVFJfQ09NUFJTVF9Nc2sgICAgICAgICAgICAoMHgxVSA8PCBSQ0NfQVBCMVJTVFJfQ09NUFJTVF9Qb3MpIC8qITwgMHg4MDAwMDAwMCAqLw0KI2RlZmluZSBSQ0NfQVBCMVJTVFJfQ09NUFJTVCAgICAgICAgICAgICAgICBSQ0NfQVBCMVJTVFJfQ09NUFJTVF9Nc2sgICAgICAgICAgIC8qITwgQ29tcGFyYXRvciBpbnRlcmZhY2UgcmVzZXQgKi8NCg0KLyoqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFJDQ19BSEJFTlIgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgUkNDX0FIQkVOUl9HUElPQUVOX1BvcyAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0FIQkVOUl9HUElPQUVOX01zayAgICAgICAgICAgICAgKDB4MVUgPDwgUkNDX0FIQkVOUl9HUElPQUVOX1BvcykgICAvKiE8IDB4MDAwMDAwMDEgKi8NCiNkZWZpbmUgUkNDX0FIQkVOUl9HUElPQUVOICAgICAgICAgICAgICAgICAgUkNDX0FIQkVOUl9HUElPQUVOX01zayAgICAgICAgICAgICAvKiE8IEdQSU8gcG9ydCBBIGNsb2NrIGVuYWJsZSAqLw0KI2RlZmluZSBSQ0NfQUhCRU5SX0dQSU9CRU5fUG9zICAgICAgICAgICAgICAoMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQUhCRU5SX0dQSU9CRU5fTXNrICAgICAgICAgICAgICAoMHgxVSA8PCBSQ0NfQUhCRU5SX0dQSU9CRU5fUG9zKSAgIC8qITwgMHgwMDAwMDAwMiAqLw0KI2RlZmluZSBSQ0NfQUhCRU5SX0dQSU9CRU4gICAgICAgICAgICAgICAgICBSQ0NfQUhCRU5SX0dQSU9CRU5fTXNrICAgICAgICAgICAgIC8qITwgR1BJTyBwb3J0IEIgY2xvY2sgZW5hYmxlICovDQojZGVmaW5lIFJDQ19BSEJFTlJfR1BJT0NFTl9Qb3MgICAgICAgICAgICAgICgyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19BSEJFTlJfR1BJT0NFTl9Nc2sgICAgICAgICAgICAgICgweDFVIDw8IFJDQ19BSEJFTlJfR1BJT0NFTl9Qb3MpICAgLyohPCAweDAwMDAwMDA0ICovDQojZGVmaW5lIFJDQ19BSEJFTlJfR1BJT0NFTiAgICAgICAgICAgICAgICAgIFJDQ19BSEJFTlJfR1BJT0NFTl9Nc2sgICAgICAgICAgICAgLyohPCBHUElPIHBvcnQgQyBjbG9jayBlbmFibGUgKi8NCiNkZWZpbmUgUkNDX0FIQkVOUl9HUElPREVOX1BvcyAgICAgICAgICAgICAgKDNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0FIQkVOUl9HUElPREVOX01zayAgICAgICAgICAgICAgKDB4MVUgPDwgUkNDX0FIQkVOUl9HUElPREVOX1BvcykgICAvKiE8IDB4MDAwMDAwMDggKi8NCiNkZWZpbmUgUkNDX0FIQkVOUl9HUElPREVOICAgICAgICAgICAgICAgICAgUkNDX0FIQkVOUl9HUElPREVOX01zayAgICAgICAgICAgICAvKiE8IEdQSU8gcG9ydCBEIGNsb2NrIGVuYWJsZSAqLw0KI2RlZmluZSBSQ0NfQUhCRU5SX0dQSU9FRU5fUG9zICAgICAgICAgICAgICAoNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQUhCRU5SX0dQSU9FRU5fTXNrICAgICAgICAgICAgICAoMHgxVSA8PCBSQ0NfQUhCRU5SX0dQSU9FRU5fUG9zKSAgIC8qITwgMHgwMDAwMDAxMCAqLw0KI2RlZmluZSBSQ0NfQUhCRU5SX0dQSU9FRU4gICAgICAgICAgICAgICAgICBSQ0NfQUhCRU5SX0dQSU9FRU5fTXNrICAgICAgICAgICAgIC8qITwgR1BJTyBwb3J0IEUgY2xvY2sgZW5hYmxlICovDQojZGVmaW5lIFJDQ19BSEJFTlJfR1BJT0hFTl9Qb3MgICAgICAgICAgICAgICg1VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19BSEJFTlJfR1BJT0hFTl9Nc2sgICAgICAgICAgICAgICgweDFVIDw8IFJDQ19BSEJFTlJfR1BJT0hFTl9Qb3MpICAgLyohPCAweDAwMDAwMDIwICovDQojZGVmaW5lIFJDQ19BSEJFTlJfR1BJT0hFTiAgICAgICAgICAgICAgICAgIFJDQ19BSEJFTlJfR1BJT0hFTl9Nc2sgICAgICAgICAgICAgLyohPCBHUElPIHBvcnQgSCBjbG9jayBlbmFibGUgKi8NCiNkZWZpbmUgUkNDX0FIQkVOUl9HUElPRkVOX1BvcyAgICAgICAgICAgICAgKDZVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0FIQkVOUl9HUElPRkVOX01zayAgICAgICAgICAgICAgKDB4MVUgPDwgUkNDX0FIQkVOUl9HUElPRkVOX1BvcykgICAvKiE8IDB4MDAwMDAwNDAgKi8NCiNkZWZpbmUgUkNDX0FIQkVOUl9HUElPRkVOICAgICAgICAgICAgICAgICAgUkNDX0FIQkVOUl9HUElPRkVOX01zayAgICAgICAgICAgICAvKiE8IEdQSU8gcG9ydCBGIGNsb2NrIGVuYWJsZSAqLw0KI2RlZmluZSBSQ0NfQUhCRU5SX0dQSU9HRU5fUG9zICAgICAgICAgICAgICAoN1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQUhCRU5SX0dQSU9HRU5fTXNrICAgICAgICAgICAgICAoMHgxVSA8PCBSQ0NfQUhCRU5SX0dQSU9HRU5fUG9zKSAgIC8qITwgMHgwMDAwMDA4MCAqLw0KI2RlZmluZSBSQ0NfQUhCRU5SX0dQSU9HRU4gICAgICAgICAgICAgICAgICBSQ0NfQUhCRU5SX0dQSU9HRU5fTXNrICAgICAgICAgICAgIC8qITwgR1BJTyBwb3J0IEcgY2xvY2sgZW5hYmxlICovDQojZGVmaW5lIFJDQ19BSEJFTlJfQ1JDRU5fUG9zICAgICAgICAgICAgICAgICgxMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19BSEJFTlJfQ1JDRU5fTXNrICAgICAgICAgICAgICAgICgweDFVIDw8IFJDQ19BSEJFTlJfQ1JDRU5fUG9zKSAgICAgLyohPCAweDAwMDAxMDAwICovDQojZGVmaW5lIFJDQ19BSEJFTlJfQ1JDRU4gICAgICAgICAgICAgICAgICAgIFJDQ19BSEJFTlJfQ1JDRU5fTXNrICAgICAgICAgICAgICAgLyohPCBDUkMgY2xvY2sgZW5hYmxlICovDQojZGVmaW5lIFJDQ19BSEJFTlJfRkxJVEZFTl9Qb3MgICAgICAgICAgICAgICgxNVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19BSEJFTlJfRkxJVEZFTl9Nc2sgICAgICAgICAgICAgICgweDFVIDw8IFJDQ19BSEJFTlJfRkxJVEZFTl9Qb3MpICAgLyohPCAweDAwMDA4MDAwICovDQojZGVmaW5lIFJDQ19BSEJFTlJfRkxJVEZFTiAgICAgICAgICAgICAgICAgIFJDQ19BSEJFTlJfRkxJVEZFTl9Nc2sgICAgICAgICAgICAgLyohPCBGTElURiBjbG9jayBlbmFibGUgKGhhcyBlZmZlY3Qgb25seSB3aGVuDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoZSBGbGFzaCBtZW1vcnkgaXMgaW4gcG93ZXIgZG93biBtb2RlKSAqLw0KI2RlZmluZSBSQ0NfQUhCRU5SX0RNQTFFTl9Qb3MgICAgICAgICAgICAgICAoMjRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQUhCRU5SX0RNQTFFTl9Nc2sgICAgICAgICAgICAgICAoMHgxVSA8PCBSQ0NfQUhCRU5SX0RNQTFFTl9Qb3MpICAgIC8qITwgMHgwMTAwMDAwMCAqLw0KI2RlZmluZSBSQ0NfQUhCRU5SX0RNQTFFTiAgICAgICAgICAgICAgICAgICBSQ0NfQUhCRU5SX0RNQTFFTl9Nc2sgICAgICAgICAgICAgIC8qITwgRE1BMSBjbG9jayBlbmFibGUgKi8NCiNkZWZpbmUgUkNDX0FIQkVOUl9ETUEyRU5fUG9zICAgICAgICAgICAgICAgKDI1VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0FIQkVOUl9ETUEyRU5fTXNrICAgICAgICAgICAgICAgKDB4MVUgPDwgUkNDX0FIQkVOUl9ETUEyRU5fUG9zKSAgICAvKiE8IDB4MDIwMDAwMDAgKi8NCiNkZWZpbmUgUkNDX0FIQkVOUl9ETUEyRU4gICAgICAgICAgICAgICAgICAgUkNDX0FIQkVOUl9ETUEyRU5fTXNrICAgICAgICAgICAgICAvKiE8IERNQTIgY2xvY2sgZW5hYmxlICovDQoNCi8qKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBSQ0NfQVBCMkVOUiByZWdpc3RlciAgKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIFJDQ19BUEIyRU5SX1NZU0NGR0VOX1BvcyAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19BUEIyRU5SX1NZU0NGR0VOX01zayAgICAgICAgICAgICgweDFVIDw8IFJDQ19BUEIyRU5SX1NZU0NGR0VOX1BvcykgLyohPCAweDAwMDAwMDAxICovDQojZGVmaW5lIFJDQ19BUEIyRU5SX1NZU0NGR0VOICAgICAgICAgICAgICAgIFJDQ19BUEIyRU5SX1NZU0NGR0VOX01zayAgICAgICAgICAgLyohPCBTeXN0ZW0gQ29uZmlndXJhdGlvbiBTWVNDRkcgY2xvY2sgZW5hYmxlICovDQojZGVmaW5lIFJDQ19BUEIyRU5SX1RJTTlFTl9Qb3MgICAgICAgICAgICAgICgyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19BUEIyRU5SX1RJTTlFTl9Nc2sgICAgICAgICAgICAgICgweDFVIDw8IFJDQ19BUEIyRU5SX1RJTTlFTl9Qb3MpICAgLyohPCAweDAwMDAwMDA0ICovDQojZGVmaW5lIFJDQ19BUEIyRU5SX1RJTTlFTiAgICAgICAgICAgICAgICAgIFJDQ19BUEIyRU5SX1RJTTlFTl9Nc2sgICAgICAgICAgICAgLyohPCBUSU05IGludGVyZmFjZSBjbG9jayBlbmFibGUgKi8NCiNkZWZpbmUgUkNDX0FQQjJFTlJfVElNMTBFTl9Qb3MgICAgICAgICAgICAgKDNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0FQQjJFTlJfVElNMTBFTl9Nc2sgICAgICAgICAgICAgKDB4MVUgPDwgUkNDX0FQQjJFTlJfVElNMTBFTl9Qb3MpICAvKiE8IDB4MDAwMDAwMDggKi8NCiNkZWZpbmUgUkNDX0FQQjJFTlJfVElNMTBFTiAgICAgICAgICAgICAgICAgUkNDX0FQQjJFTlJfVElNMTBFTl9Nc2sgICAgICAgICAgICAvKiE8IFRJTTEwIGludGVyZmFjZSBjbG9jayBlbmFibGUgKi8NCiNkZWZpbmUgUkNDX0FQQjJFTlJfVElNMTFFTl9Qb3MgICAgICAgICAgICAgKDRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0FQQjJFTlJfVElNMTFFTl9Nc2sgICAgICAgICAgICAgKDB4MVUgPDwgUkNDX0FQQjJFTlJfVElNMTFFTl9Qb3MpICAvKiE8IDB4MDAwMDAwMTAgKi8NCiNkZWZpbmUgUkNDX0FQQjJFTlJfVElNMTFFTiAgICAgICAgICAgICAgICAgUkNDX0FQQjJFTlJfVElNMTFFTl9Nc2sgICAgICAgICAgICAvKiE8IFRJTTExIFRpbWVyIGNsb2NrIGVuYWJsZSAqLw0KI2RlZmluZSBSQ0NfQVBCMkVOUl9BREMxRU5fUG9zICAgICAgICAgICAgICAoOVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQVBCMkVOUl9BREMxRU5fTXNrICAgICAgICAgICAgICAoMHgxVSA8PCBSQ0NfQVBCMkVOUl9BREMxRU5fUG9zKSAgIC8qITwgMHgwMDAwMDIwMCAqLw0KI2RlZmluZSBSQ0NfQVBCMkVOUl9BREMxRU4gICAgICAgICAgICAgICAgICBSQ0NfQVBCMkVOUl9BREMxRU5fTXNrICAgICAgICAgICAgIC8qITwgQURDMSBjbG9jayBlbmFibGUgKi8NCiNkZWZpbmUgUkNDX0FQQjJFTlJfU1BJMUVOX1BvcyAgICAgICAgICAgICAgKDEyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0FQQjJFTlJfU1BJMUVOX01zayAgICAgICAgICAgICAgKDB4MVUgPDwgUkNDX0FQQjJFTlJfU1BJMUVOX1BvcykgICAvKiE8IDB4MDAwMDEwMDAgKi8NCiNkZWZpbmUgUkNDX0FQQjJFTlJfU1BJMUVOICAgICAgICAgICAgICAgICAgUkNDX0FQQjJFTlJfU1BJMUVOX01zayAgICAgICAgICAgICAvKiE8IFNQSTEgY2xvY2sgZW5hYmxlICovDQojZGVmaW5lIFJDQ19BUEIyRU5SX1VTQVJUMUVOX1BvcyAgICAgICAgICAgICgxNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19BUEIyRU5SX1VTQVJUMUVOX01zayAgICAgICAgICAgICgweDFVIDw8IFJDQ19BUEIyRU5SX1VTQVJUMUVOX1BvcykgLyohPCAweDAwMDA0MDAwICovDQojZGVmaW5lIFJDQ19BUEIyRU5SX1VTQVJUMUVOICAgICAgICAgICAgICAgIFJDQ19BUEIyRU5SX1VTQVJUMUVOX01zayAgICAgICAgICAgLyohPCBVU0FSVDEgY2xvY2sgZW5hYmxlICovDQoNCi8qKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFJDQ19BUEIxRU5SIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIFJDQ19BUEIxRU5SX1RJTTJFTl9Qb3MgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19BUEIxRU5SX1RJTTJFTl9Nc2sgICAgICAgICAgICAgICgweDFVIDw8IFJDQ19BUEIxRU5SX1RJTTJFTl9Qb3MpICAgLyohPCAweDAwMDAwMDAxICovDQojZGVmaW5lIFJDQ19BUEIxRU5SX1RJTTJFTiAgICAgICAgICAgICAgICAgIFJDQ19BUEIxRU5SX1RJTTJFTl9Nc2sgICAgICAgICAgICAgLyohPCBUaW1lciAyIGNsb2NrIGVuYWJsZWQqLw0KI2RlZmluZSBSQ0NfQVBCMUVOUl9USU0zRU5fUG9zICAgICAgICAgICAgICAoMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQVBCMUVOUl9USU0zRU5fTXNrICAgICAgICAgICAgICAoMHgxVSA8PCBSQ0NfQVBCMUVOUl9USU0zRU5fUG9zKSAgIC8qITwgMHgwMDAwMDAwMiAqLw0KI2RlZmluZSBSQ0NfQVBCMUVOUl9USU0zRU4gICAgICAgICAgICAgICAgICBSQ0NfQVBCMUVOUl9USU0zRU5fTXNrICAgICAgICAgICAgIC8qITwgVGltZXIgMyBjbG9jayBlbmFibGUgKi8NCiNkZWZpbmUgUkNDX0FQQjFFTlJfVElNNEVOX1BvcyAgICAgICAgICAgICAgKDJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0FQQjFFTlJfVElNNEVOX01zayAgICAgICAgICAgICAgKDB4MVUgPDwgUkNDX0FQQjFFTlJfVElNNEVOX1BvcykgICAvKiE8IDB4MDAwMDAwMDQgKi8NCiNkZWZpbmUgUkNDX0FQQjFFTlJfVElNNEVOICAgICAgICAgICAgICAgICAgUkNDX0FQQjFFTlJfVElNNEVOX01zayAgICAgICAgICAgICAvKiE8IFRpbWVyIDQgY2xvY2sgZW5hYmxlICovDQojZGVmaW5lIFJDQ19BUEIxRU5SX1RJTTVFTl9Qb3MgICAgICAgICAgICAgICgzVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19BUEIxRU5SX1RJTTVFTl9Nc2sgICAgICAgICAgICAgICgweDFVIDw8IFJDQ19BUEIxRU5SX1RJTTVFTl9Qb3MpICAgLyohPCAweDAwMDAwMDA4ICovDQojZGVmaW5lIFJDQ19BUEIxRU5SX1RJTTVFTiAgICAgICAgICAgICAgICAgIFJDQ19BUEIxRU5SX1RJTTVFTl9Nc2sgICAgICAgICAgICAgLyohPCBUaW1lciA1IGNsb2NrIGVuYWJsZSAqLw0KI2RlZmluZSBSQ0NfQVBCMUVOUl9USU02RU5fUG9zICAgICAgICAgICAgICAoNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQVBCMUVOUl9USU02RU5fTXNrICAgICAgICAgICAgICAoMHgxVSA8PCBSQ0NfQVBCMUVOUl9USU02RU5fUG9zKSAgIC8qITwgMHgwMDAwMDAxMCAqLw0KI2RlZmluZSBSQ0NfQVBCMUVOUl9USU02RU4gICAgICAgICAgICAgICAgICBSQ0NfQVBCMUVOUl9USU02RU5fTXNrICAgICAgICAgICAgIC8qITwgVGltZXIgNiBjbG9jayBlbmFibGUgKi8NCiNkZWZpbmUgUkNDX0FQQjFFTlJfVElNN0VOX1BvcyAgICAgICAgICAgICAgKDVVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0FQQjFFTlJfVElNN0VOX01zayAgICAgICAgICAgICAgKDB4MVUgPDwgUkNDX0FQQjFFTlJfVElNN0VOX1BvcykgICAvKiE8IDB4MDAwMDAwMjAgKi8NCiNkZWZpbmUgUkNDX0FQQjFFTlJfVElNN0VOICAgICAgICAgICAgICAgICAgUkNDX0FQQjFFTlJfVElNN0VOX01zayAgICAgICAgICAgICAvKiE8IFRpbWVyIDcgY2xvY2sgZW5hYmxlICovDQojZGVmaW5lIFJDQ19BUEIxRU5SX0xDREVOX1BvcyAgICAgICAgICAgICAgICg5VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19BUEIxRU5SX0xDREVOX01zayAgICAgICAgICAgICAgICgweDFVIDw8IFJDQ19BUEIxRU5SX0xDREVOX1BvcykgICAgLyohPCAweDAwMDAwMjAwICovDQojZGVmaW5lIFJDQ19BUEIxRU5SX0xDREVOICAgICAgICAgICAgICAgICAgIFJDQ19BUEIxRU5SX0xDREVOX01zayAgICAgICAgICAgICAgLyohPCBMQ0QgY2xvY2sgZW5hYmxlICovDQojZGVmaW5lIFJDQ19BUEIxRU5SX1dXREdFTl9Qb3MgICAgICAgICAgICAgICgxMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19BUEIxRU5SX1dXREdFTl9Nc2sgICAgICAgICAgICAgICgweDFVIDw8IFJDQ19BUEIxRU5SX1dXREdFTl9Qb3MpICAgLyohPCAweDAwMDAwODAwICovDQojZGVmaW5lIFJDQ19BUEIxRU5SX1dXREdFTiAgICAgICAgICAgICAgICAgIFJDQ19BUEIxRU5SX1dXREdFTl9Nc2sgICAgICAgICAgICAgLyohPCBXaW5kb3cgV2F0Y2hkb2cgY2xvY2sgZW5hYmxlICovDQojZGVmaW5lIFJDQ19BUEIxRU5SX1NQSTJFTl9Qb3MgICAgICAgICAgICAgICgxNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19BUEIxRU5SX1NQSTJFTl9Nc2sgICAgICAgICAgICAgICgweDFVIDw8IFJDQ19BUEIxRU5SX1NQSTJFTl9Qb3MpICAgLyohPCAweDAwMDA0MDAwICovDQojZGVmaW5lIFJDQ19BUEIxRU5SX1NQSTJFTiAgICAgICAgICAgICAgICAgIFJDQ19BUEIxRU5SX1NQSTJFTl9Nc2sgICAgICAgICAgICAgLyohPCBTUEkgMiBjbG9jayBlbmFibGUgKi8NCiNkZWZpbmUgUkNDX0FQQjFFTlJfU1BJM0VOX1BvcyAgICAgICAgICAgICAgKDE1VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0FQQjFFTlJfU1BJM0VOX01zayAgICAgICAgICAgICAgKDB4MVUgPDwgUkNDX0FQQjFFTlJfU1BJM0VOX1BvcykgICAvKiE8IDB4MDAwMDgwMDAgKi8NCiNkZWZpbmUgUkNDX0FQQjFFTlJfU1BJM0VOICAgICAgICAgICAgICAgICAgUkNDX0FQQjFFTlJfU1BJM0VOX01zayAgICAgICAgICAgICAvKiE8IFNQSSAzIGNsb2NrIGVuYWJsZSAqLw0KI2RlZmluZSBSQ0NfQVBCMUVOUl9VU0FSVDJFTl9Qb3MgICAgICAgICAgICAoMTdVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQVBCMUVOUl9VU0FSVDJFTl9Nc2sgICAgICAgICAgICAoMHgxVSA8PCBSQ0NfQVBCMUVOUl9VU0FSVDJFTl9Qb3MpIC8qITwgMHgwMDAyMDAwMCAqLw0KI2RlZmluZSBSQ0NfQVBCMUVOUl9VU0FSVDJFTiAgICAgICAgICAgICAgICBSQ0NfQVBCMUVOUl9VU0FSVDJFTl9Nc2sgICAgICAgICAgIC8qITwgVVNBUlQgMiBjbG9jayBlbmFibGUgKi8NCiNkZWZpbmUgUkNDX0FQQjFFTlJfVVNBUlQzRU5fUG9zICAgICAgICAgICAgKDE4VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0FQQjFFTlJfVVNBUlQzRU5fTXNrICAgICAgICAgICAgKDB4MVUgPDwgUkNDX0FQQjFFTlJfVVNBUlQzRU5fUG9zKSAvKiE8IDB4MDAwNDAwMDAgKi8NCiNkZWZpbmUgUkNDX0FQQjFFTlJfVVNBUlQzRU4gICAgICAgICAgICAgICAgUkNDX0FQQjFFTlJfVVNBUlQzRU5fTXNrICAgICAgICAgICAvKiE8IFVTQVJUIDMgY2xvY2sgZW5hYmxlICovDQojZGVmaW5lIFJDQ19BUEIxRU5SX0kyQzFFTl9Qb3MgICAgICAgICAgICAgICgyMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19BUEIxRU5SX0kyQzFFTl9Nc2sgICAgICAgICAgICAgICgweDFVIDw8IFJDQ19BUEIxRU5SX0kyQzFFTl9Qb3MpICAgLyohPCAweDAwMjAwMDAwICovDQojZGVmaW5lIFJDQ19BUEIxRU5SX0kyQzFFTiAgICAgICAgICAgICAgICAgIFJDQ19BUEIxRU5SX0kyQzFFTl9Nc2sgICAgICAgICAgICAgLyohPCBJMkMgMSBjbG9jayBlbmFibGUgKi8NCiNkZWZpbmUgUkNDX0FQQjFFTlJfSTJDMkVOX1BvcyAgICAgICAgICAgICAgKDIyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0FQQjFFTlJfSTJDMkVOX01zayAgICAgICAgICAgICAgKDB4MVUgPDwgUkNDX0FQQjFFTlJfSTJDMkVOX1BvcykgICAvKiE8IDB4MDA0MDAwMDAgKi8NCiNkZWZpbmUgUkNDX0FQQjFFTlJfSTJDMkVOICAgICAgICAgICAgICAgICAgUkNDX0FQQjFFTlJfSTJDMkVOX01zayAgICAgICAgICAgICAvKiE8IEkyQyAyIGNsb2NrIGVuYWJsZSAqLw0KI2RlZmluZSBSQ0NfQVBCMUVOUl9VU0JFTl9Qb3MgICAgICAgICAgICAgICAoMjNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQVBCMUVOUl9VU0JFTl9Nc2sgICAgICAgICAgICAgICAoMHgxVSA8PCBSQ0NfQVBCMUVOUl9VU0JFTl9Qb3MpICAgIC8qITwgMHgwMDgwMDAwMCAqLw0KI2RlZmluZSBSQ0NfQVBCMUVOUl9VU0JFTiAgICAgICAgICAgICAgICAgICBSQ0NfQVBCMUVOUl9VU0JFTl9Nc2sgICAgICAgICAgICAgIC8qITwgVVNCIGNsb2NrIGVuYWJsZSAqLw0KI2RlZmluZSBSQ0NfQVBCMUVOUl9QV1JFTl9Qb3MgICAgICAgICAgICAgICAoMjhVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQVBCMUVOUl9QV1JFTl9Nc2sgICAgICAgICAgICAgICAoMHgxVSA8PCBSQ0NfQVBCMUVOUl9QV1JFTl9Qb3MpICAgIC8qITwgMHgxMDAwMDAwMCAqLw0KI2RlZmluZSBSQ0NfQVBCMUVOUl9QV1JFTiAgICAgICAgICAgICAgICAgICBSQ0NfQVBCMUVOUl9QV1JFTl9Nc2sgICAgICAgICAgICAgIC8qITwgUG93ZXIgaW50ZXJmYWNlIGNsb2NrIGVuYWJsZSAqLw0KI2RlZmluZSBSQ0NfQVBCMUVOUl9EQUNFTl9Qb3MgICAgICAgICAgICAgICAoMjlVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQVBCMUVOUl9EQUNFTl9Nc2sgICAgICAgICAgICAgICAoMHgxVSA8PCBSQ0NfQVBCMUVOUl9EQUNFTl9Qb3MpICAgIC8qITwgMHgyMDAwMDAwMCAqLw0KI2RlZmluZSBSQ0NfQVBCMUVOUl9EQUNFTiAgICAgICAgICAgICAgICAgICBSQ0NfQVBCMUVOUl9EQUNFTl9Nc2sgICAgICAgICAgICAgIC8qITwgREFDIGludGVyZmFjZSBjbG9jayBlbmFibGUgKi8NCiNkZWZpbmUgUkNDX0FQQjFFTlJfQ09NUEVOX1BvcyAgICAgICAgICAgICAgKDMxVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0FQQjFFTlJfQ09NUEVOX01zayAgICAgICAgICAgICAgKDB4MVUgPDwgUkNDX0FQQjFFTlJfQ09NUEVOX1BvcykgICAvKiE8IDB4ODAwMDAwMDAgKi8NCiNkZWZpbmUgUkNDX0FQQjFFTlJfQ09NUEVOICAgICAgICAgICAgICAgICAgUkNDX0FQQjFFTlJfQ09NUEVOX01zayAgICAgICAgICAgICAvKiE8IENvbXBhcmF0b3IgaW50ZXJmYWNlIGNsb2NrIGVuYWJsZSAqLw0KDQovKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgUkNDX0FIQkxQRU5SIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBSQ0NfQUhCTFBFTlJfR1BJT0FMUEVOX1BvcyAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQUhCTFBFTlJfR1BJT0FMUEVOX01zayAgICAgICAgICAoMHgxVSA8PCBSQ0NfQUhCTFBFTlJfR1BJT0FMUEVOX1BvcykgLyohPCAweDAwMDAwMDAxICovDQojZGVmaW5lIFJDQ19BSEJMUEVOUl9HUElPQUxQRU4gICAgICAgICAgICAgIFJDQ19BSEJMUEVOUl9HUElPQUxQRU5fTXNrICAgICAgICAgLyohPCBHUElPIHBvcnQgQSBjbG9jayBlbmFibGVkIGluIHNsZWVwIG1vZGUgKi8NCiNkZWZpbmUgUkNDX0FIQkxQRU5SX0dQSU9CTFBFTl9Qb3MgICAgICAgICAgKDFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0FIQkxQRU5SX0dQSU9CTFBFTl9Nc2sgICAgICAgICAgKDB4MVUgPDwgUkNDX0FIQkxQRU5SX0dQSU9CTFBFTl9Qb3MpIC8qITwgMHgwMDAwMDAwMiAqLw0KI2RlZmluZSBSQ0NfQUhCTFBFTlJfR1BJT0JMUEVOICAgICAgICAgICAgICBSQ0NfQUhCTFBFTlJfR1BJT0JMUEVOX01zayAgICAgICAgIC8qITwgR1BJTyBwb3J0IEIgY2xvY2sgZW5hYmxlZCBpbiBzbGVlcCBtb2RlICovDQojZGVmaW5lIFJDQ19BSEJMUEVOUl9HUElPQ0xQRU5fUG9zICAgICAgICAgICgyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19BSEJMUEVOUl9HUElPQ0xQRU5fTXNrICAgICAgICAgICgweDFVIDw8IFJDQ19BSEJMUEVOUl9HUElPQ0xQRU5fUG9zKSAvKiE8IDB4MDAwMDAwMDQgKi8NCiNkZWZpbmUgUkNDX0FIQkxQRU5SX0dQSU9DTFBFTiAgICAgICAgICAgICAgUkNDX0FIQkxQRU5SX0dQSU9DTFBFTl9Nc2sgICAgICAgICAvKiE8IEdQSU8gcG9ydCBDIGNsb2NrIGVuYWJsZWQgaW4gc2xlZXAgbW9kZSAqLw0KI2RlZmluZSBSQ0NfQUhCTFBFTlJfR1BJT0RMUEVOX1BvcyAgICAgICAgICAoM1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQUhCTFBFTlJfR1BJT0RMUEVOX01zayAgICAgICAgICAoMHgxVSA8PCBSQ0NfQUhCTFBFTlJfR1BJT0RMUEVOX1BvcykgLyohPCAweDAwMDAwMDA4ICovDQojZGVmaW5lIFJDQ19BSEJMUEVOUl9HUElPRExQRU4gICAgICAgICAgICAgIFJDQ19BSEJMUEVOUl9HUElPRExQRU5fTXNrICAgICAgICAgLyohPCBHUElPIHBvcnQgRCBjbG9jayBlbmFibGVkIGluIHNsZWVwIG1vZGUgKi8NCiNkZWZpbmUgUkNDX0FIQkxQRU5SX0dQSU9FTFBFTl9Qb3MgICAgICAgICAgKDRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0FIQkxQRU5SX0dQSU9FTFBFTl9Nc2sgICAgICAgICAgKDB4MVUgPDwgUkNDX0FIQkxQRU5SX0dQSU9FTFBFTl9Qb3MpIC8qITwgMHgwMDAwMDAxMCAqLw0KI2RlZmluZSBSQ0NfQUhCTFBFTlJfR1BJT0VMUEVOICAgICAgICAgICAgICBSQ0NfQUhCTFBFTlJfR1BJT0VMUEVOX01zayAgICAgICAgIC8qITwgR1BJTyBwb3J0IEUgY2xvY2sgZW5hYmxlZCBpbiBzbGVlcCBtb2RlICovDQojZGVmaW5lIFJDQ19BSEJMUEVOUl9HUElPSExQRU5fUG9zICAgICAgICAgICg1VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19BSEJMUEVOUl9HUElPSExQRU5fTXNrICAgICAgICAgICgweDFVIDw8IFJDQ19BSEJMUEVOUl9HUElPSExQRU5fUG9zKSAvKiE8IDB4MDAwMDAwMjAgKi8NCiNkZWZpbmUgUkNDX0FIQkxQRU5SX0dQSU9ITFBFTiAgICAgICAgICAgICAgUkNDX0FIQkxQRU5SX0dQSU9ITFBFTl9Nc2sgICAgICAgICAvKiE8IEdQSU8gcG9ydCBIIGNsb2NrIGVuYWJsZWQgaW4gc2xlZXAgbW9kZSAqLw0KI2RlZmluZSBSQ0NfQUhCTFBFTlJfR1BJT0ZMUEVOX1BvcyAgICAgICAgICAoNlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQUhCTFBFTlJfR1BJT0ZMUEVOX01zayAgICAgICAgICAoMHgxVSA8PCBSQ0NfQUhCTFBFTlJfR1BJT0ZMUEVOX1BvcykgLyohPCAweDAwMDAwMDQwICovDQojZGVmaW5lIFJDQ19BSEJMUEVOUl9HUElPRkxQRU4gICAgICAgICAgICAgIFJDQ19BSEJMUEVOUl9HUElPRkxQRU5fTXNrICAgICAgICAgLyohPCBHUElPIHBvcnQgRiBjbG9jayBlbmFibGVkIGluIHNsZWVwIG1vZGUgKi8NCiNkZWZpbmUgUkNDX0FIQkxQRU5SX0dQSU9HTFBFTl9Qb3MgICAgICAgICAgKDdVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0FIQkxQRU5SX0dQSU9HTFBFTl9Nc2sgICAgICAgICAgKDB4MVUgPDwgUkNDX0FIQkxQRU5SX0dQSU9HTFBFTl9Qb3MpIC8qITwgMHgwMDAwMDA4MCAqLw0KI2RlZmluZSBSQ0NfQUhCTFBFTlJfR1BJT0dMUEVOICAgICAgICAgICAgICBSQ0NfQUhCTFBFTlJfR1BJT0dMUEVOX01zayAgICAgICAgIC8qITwgR1BJTyBwb3J0IEcgY2xvY2sgZW5hYmxlZCBpbiBzbGVlcCBtb2RlICovDQojZGVmaW5lIFJDQ19BSEJMUEVOUl9DUkNMUEVOX1BvcyAgICAgICAgICAgICgxMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19BSEJMUEVOUl9DUkNMUEVOX01zayAgICAgICAgICAgICgweDFVIDw8IFJDQ19BSEJMUEVOUl9DUkNMUEVOX1BvcykgLyohPCAweDAwMDAxMDAwICovDQojZGVmaW5lIFJDQ19BSEJMUEVOUl9DUkNMUEVOICAgICAgICAgICAgICAgIFJDQ19BSEJMUEVOUl9DUkNMUEVOX01zayAgICAgICAgICAgLyohPCBDUkMgY2xvY2sgZW5hYmxlZCBpbiBzbGVlcCBtb2RlICovDQojZGVmaW5lIFJDQ19BSEJMUEVOUl9GTElURkxQRU5fUG9zICAgICAgICAgICgxNVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19BSEJMUEVOUl9GTElURkxQRU5fTXNrICAgICAgICAgICgweDFVIDw8IFJDQ19BSEJMUEVOUl9GTElURkxQRU5fUG9zKSAvKiE8IDB4MDAwMDgwMDAgKi8NCiNkZWZpbmUgUkNDX0FIQkxQRU5SX0ZMSVRGTFBFTiAgICAgICAgICAgICAgUkNDX0FIQkxQRU5SX0ZMSVRGTFBFTl9Nc2sgICAgICAgICAvKiE8IEZsYXNoIEludGVyZmFjZSBjbG9jayBlbmFibGVkIGluIHNsZWVwIG1vZGUNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKGhhcyBlZmZlY3Qgb25seSB3aGVuIHRoZSBGbGFzaCBtZW1vcnkgaXMNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGluIHBvd2VyIGRvd24gbW9kZSkgKi8NCiNkZWZpbmUgUkNDX0FIQkxQRU5SX1NSQU1MUEVOX1BvcyAgICAgICAgICAgKDE2VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0FIQkxQRU5SX1NSQU1MUEVOX01zayAgICAgICAgICAgKDB4MVUgPDwgUkNDX0FIQkxQRU5SX1NSQU1MUEVOX1BvcykgLyohPCAweDAwMDEwMDAwICovDQojZGVmaW5lIFJDQ19BSEJMUEVOUl9TUkFNTFBFTiAgICAgICAgICAgICAgIFJDQ19BSEJMUEVOUl9TUkFNTFBFTl9Nc2sgICAgICAgICAgLyohPCBTUkFNIGNsb2NrIGVuYWJsZWQgaW4gc2xlZXAgbW9kZSAqLw0KI2RlZmluZSBSQ0NfQUhCTFBFTlJfRE1BMUxQRU5fUG9zICAgICAgICAgICAoMjRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQUhCTFBFTlJfRE1BMUxQRU5fTXNrICAgICAgICAgICAoMHgxVSA8PCBSQ0NfQUhCTFBFTlJfRE1BMUxQRU5fUG9zKSAvKiE8IDB4MDEwMDAwMDAgKi8NCiNkZWZpbmUgUkNDX0FIQkxQRU5SX0RNQTFMUEVOICAgICAgICAgICAgICAgUkNDX0FIQkxQRU5SX0RNQTFMUEVOX01zayAgICAgICAgICAvKiE8IERNQTEgY2xvY2sgZW5hYmxlZCBpbiBzbGVlcCBtb2RlICovDQojZGVmaW5lIFJDQ19BSEJMUEVOUl9ETUEyTFBFTl9Qb3MgICAgICAgICAgICgyNVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19BSEJMUEVOUl9ETUEyTFBFTl9Nc2sgICAgICAgICAgICgweDFVIDw8IFJDQ19BSEJMUEVOUl9ETUEyTFBFTl9Qb3MpIC8qITwgMHgwMjAwMDAwMCAqLw0KI2RlZmluZSBSQ0NfQUhCTFBFTlJfRE1BMkxQRU4gICAgICAgICAgICAgICBSQ0NfQUhCTFBFTlJfRE1BMkxQRU5fTXNrICAgICAgICAgIC8qITwgRE1BMiBjbG9jayBlbmFibGVkIGluIHNsZWVwIG1vZGUgKi8NCg0KLyoqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFJDQ19BUEIyTFBFTlIgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKi8NCiNkZWZpbmUgUkNDX0FQQjJMUEVOUl9TWVNDRkdMUEVOX1BvcyAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0FQQjJMUEVOUl9TWVNDRkdMUEVOX01zayAgICAgICAgKDB4MVUgPDwgUkNDX0FQQjJMUEVOUl9TWVNDRkdMUEVOX1BvcykgLyohPCAweDAwMDAwMDAxICovDQojZGVmaW5lIFJDQ19BUEIyTFBFTlJfU1lTQ0ZHTFBFTiAgICAgICAgICAgIFJDQ19BUEIyTFBFTlJfU1lTQ0ZHTFBFTl9Nc2sgICAgICAgLyohPCBTeXN0ZW0gQ29uZmlndXJhdGlvbiBTWVNDRkcgY2xvY2sgZW5hYmxlZCBpbiBzbGVlcCBtb2RlICovDQojZGVmaW5lIFJDQ19BUEIyTFBFTlJfVElNOUxQRU5fUG9zICAgICAgICAgICgyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19BUEIyTFBFTlJfVElNOUxQRU5fTXNrICAgICAgICAgICgweDFVIDw8IFJDQ19BUEIyTFBFTlJfVElNOUxQRU5fUG9zKSAvKiE8IDB4MDAwMDAwMDQgKi8NCiNkZWZpbmUgUkNDX0FQQjJMUEVOUl9USU05TFBFTiAgICAgICAgICAgICAgUkNDX0FQQjJMUEVOUl9USU05TFBFTl9Nc2sgICAgICAgICAvKiE8IFRJTTkgaW50ZXJmYWNlIGNsb2NrIGVuYWJsZWQgaW4gc2xlZXAgbW9kZSAqLw0KI2RlZmluZSBSQ0NfQVBCMkxQRU5SX1RJTTEwTFBFTl9Qb3MgICAgICAgICAoM1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQVBCMkxQRU5SX1RJTTEwTFBFTl9Nc2sgICAgICAgICAoMHgxVSA8PCBSQ0NfQVBCMkxQRU5SX1RJTTEwTFBFTl9Qb3MpIC8qITwgMHgwMDAwMDAwOCAqLw0KI2RlZmluZSBSQ0NfQVBCMkxQRU5SX1RJTTEwTFBFTiAgICAgICAgICAgICBSQ0NfQVBCMkxQRU5SX1RJTTEwTFBFTl9Nc2sgICAgICAgIC8qITwgVElNMTAgaW50ZXJmYWNlIGNsb2NrIGVuYWJsZWQgaW4gc2xlZXAgbW9kZSAqLw0KI2RlZmluZSBSQ0NfQVBCMkxQRU5SX1RJTTExTFBFTl9Qb3MgICAgICAgICAoNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQVBCMkxQRU5SX1RJTTExTFBFTl9Nc2sgICAgICAgICAoMHgxVSA8PCBSQ0NfQVBCMkxQRU5SX1RJTTExTFBFTl9Qb3MpIC8qITwgMHgwMDAwMDAxMCAqLw0KI2RlZmluZSBSQ0NfQVBCMkxQRU5SX1RJTTExTFBFTiAgICAgICAgICAgICBSQ0NfQVBCMkxQRU5SX1RJTTExTFBFTl9Nc2sgICAgICAgIC8qITwgVElNMTEgVGltZXIgY2xvY2sgZW5hYmxlZCBpbiBzbGVlcCBtb2RlICovDQojZGVmaW5lIFJDQ19BUEIyTFBFTlJfQURDMUxQRU5fUG9zICAgICAgICAgICg5VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19BUEIyTFBFTlJfQURDMUxQRU5fTXNrICAgICAgICAgICgweDFVIDw8IFJDQ19BUEIyTFBFTlJfQURDMUxQRU5fUG9zKSAvKiE8IDB4MDAwMDAyMDAgKi8NCiNkZWZpbmUgUkNDX0FQQjJMUEVOUl9BREMxTFBFTiAgICAgICAgICAgICAgUkNDX0FQQjJMUEVOUl9BREMxTFBFTl9Nc2sgICAgICAgICAvKiE8IEFEQzEgY2xvY2sgZW5hYmxlZCBpbiBzbGVlcCBtb2RlICovDQojZGVmaW5lIFJDQ19BUEIyTFBFTlJfU1BJMUxQRU5fUG9zICAgICAgICAgICgxMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19BUEIyTFBFTlJfU1BJMUxQRU5fTXNrICAgICAgICAgICgweDFVIDw8IFJDQ19BUEIyTFBFTlJfU1BJMUxQRU5fUG9zKSAvKiE8IDB4MDAwMDEwMDAgKi8NCiNkZWZpbmUgUkNDX0FQQjJMUEVOUl9TUEkxTFBFTiAgICAgICAgICAgICAgUkNDX0FQQjJMUEVOUl9TUEkxTFBFTl9Nc2sgICAgICAgICAvKiE8IFNQSTEgY2xvY2sgZW5hYmxlZCBpbiBzbGVlcCBtb2RlICovDQojZGVmaW5lIFJDQ19BUEIyTFBFTlJfVVNBUlQxTFBFTl9Qb3MgICAgICAgICgxNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19BUEIyTFBFTlJfVVNBUlQxTFBFTl9Nc2sgICAgICAgICgweDFVIDw8IFJDQ19BUEIyTFBFTlJfVVNBUlQxTFBFTl9Qb3MpIC8qITwgMHgwMDAwNDAwMCAqLw0KI2RlZmluZSBSQ0NfQVBCMkxQRU5SX1VTQVJUMUxQRU4gICAgICAgICAgICBSQ0NfQVBCMkxQRU5SX1VTQVJUMUxQRU5fTXNrICAgICAgIC8qITwgVVNBUlQxIGNsb2NrIGVuYWJsZWQgaW4gc2xlZXAgbW9kZSAqLw0KDQovKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBSQ0NfQVBCMUxQRU5SIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBSQ0NfQVBCMUxQRU5SX1RJTTJMUEVOX1BvcyAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQVBCMUxQRU5SX1RJTTJMUEVOX01zayAgICAgICAgICAoMHgxVSA8PCBSQ0NfQVBCMUxQRU5SX1RJTTJMUEVOX1BvcykgLyohPCAweDAwMDAwMDAxICovDQojZGVmaW5lIFJDQ19BUEIxTFBFTlJfVElNMkxQRU4gICAgICAgICAgICAgIFJDQ19BUEIxTFBFTlJfVElNMkxQRU5fTXNrICAgICAgICAgLyohPCBUaW1lciAyIGNsb2NrIGVuYWJsZWQgaW4gc2xlZXAgbW9kZSAqLw0KI2RlZmluZSBSQ0NfQVBCMUxQRU5SX1RJTTNMUEVOX1BvcyAgICAgICAgICAoMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQVBCMUxQRU5SX1RJTTNMUEVOX01zayAgICAgICAgICAoMHgxVSA8PCBSQ0NfQVBCMUxQRU5SX1RJTTNMUEVOX1BvcykgLyohPCAweDAwMDAwMDAyICovDQojZGVmaW5lIFJDQ19BUEIxTFBFTlJfVElNM0xQRU4gICAgICAgICAgICAgIFJDQ19BUEIxTFBFTlJfVElNM0xQRU5fTXNrICAgICAgICAgLyohPCBUaW1lciAzIGNsb2NrIGVuYWJsZWQgaW4gc2xlZXAgbW9kZSAqLw0KI2RlZmluZSBSQ0NfQVBCMUxQRU5SX1RJTTRMUEVOX1BvcyAgICAgICAgICAoMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQVBCMUxQRU5SX1RJTTRMUEVOX01zayAgICAgICAgICAoMHgxVSA8PCBSQ0NfQVBCMUxQRU5SX1RJTTRMUEVOX1BvcykgLyohPCAweDAwMDAwMDA0ICovDQojZGVmaW5lIFJDQ19BUEIxTFBFTlJfVElNNExQRU4gICAgICAgICAgICAgIFJDQ19BUEIxTFBFTlJfVElNNExQRU5fTXNrICAgICAgICAgLyohPCBUaW1lciA0IGNsb2NrIGVuYWJsZWQgaW4gc2xlZXAgbW9kZSAqLw0KI2RlZmluZSBSQ0NfQVBCMUxQRU5SX1RJTTVMUEVOX1BvcyAgICAgICAgICAoM1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQVBCMUxQRU5SX1RJTTVMUEVOX01zayAgICAgICAgICAoMHgxVSA8PCBSQ0NfQVBCMUxQRU5SX1RJTTVMUEVOX1BvcykgLyohPCAweDAwMDAwMDA4ICovDQojZGVmaW5lIFJDQ19BUEIxTFBFTlJfVElNNUxQRU4gICAgICAgICAgICAgIFJDQ19BUEIxTFBFTlJfVElNNUxQRU5fTXNrICAgICAgICAgLyohPCBUaW1lciA1IGNsb2NrIGVuYWJsZWQgaW4gc2xlZXAgbW9kZSAqLw0KI2RlZmluZSBSQ0NfQVBCMUxQRU5SX1RJTTZMUEVOX1BvcyAgICAgICAgICAoNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQVBCMUxQRU5SX1RJTTZMUEVOX01zayAgICAgICAgICAoMHgxVSA8PCBSQ0NfQVBCMUxQRU5SX1RJTTZMUEVOX1BvcykgLyohPCAweDAwMDAwMDEwICovDQojZGVmaW5lIFJDQ19BUEIxTFBFTlJfVElNNkxQRU4gICAgICAgICAgICAgIFJDQ19BUEIxTFBFTlJfVElNNkxQRU5fTXNrICAgICAgICAgLyohPCBUaW1lciA2IGNsb2NrIGVuYWJsZWQgaW4gc2xlZXAgbW9kZSAqLw0KI2RlZmluZSBSQ0NfQVBCMUxQRU5SX1RJTTdMUEVOX1BvcyAgICAgICAgICAoNVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQVBCMUxQRU5SX1RJTTdMUEVOX01zayAgICAgICAgICAoMHgxVSA8PCBSQ0NfQVBCMUxQRU5SX1RJTTdMUEVOX1BvcykgLyohPCAweDAwMDAwMDIwICovDQojZGVmaW5lIFJDQ19BUEIxTFBFTlJfVElNN0xQRU4gICAgICAgICAgICAgIFJDQ19BUEIxTFBFTlJfVElNN0xQRU5fTXNrICAgICAgICAgLyohPCBUaW1lciA3IGNsb2NrIGVuYWJsZWQgaW4gc2xlZXAgbW9kZSAqLw0KI2RlZmluZSBSQ0NfQVBCMUxQRU5SX0xDRExQRU5fUG9zICAgICAgICAgICAoOVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQVBCMUxQRU5SX0xDRExQRU5fTXNrICAgICAgICAgICAoMHgxVSA8PCBSQ0NfQVBCMUxQRU5SX0xDRExQRU5fUG9zKSAvKiE8IDB4MDAwMDAyMDAgKi8NCiNkZWZpbmUgUkNDX0FQQjFMUEVOUl9MQ0RMUEVOICAgICAgICAgICAgICAgUkNDX0FQQjFMUEVOUl9MQ0RMUEVOX01zayAgICAgICAgICAvKiE8IExDRCBjbG9jayBlbmFibGVkIGluIHNsZWVwIG1vZGUgKi8NCiNkZWZpbmUgUkNDX0FQQjFMUEVOUl9XV0RHTFBFTl9Qb3MgICAgICAgICAgKDExVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0FQQjFMUEVOUl9XV0RHTFBFTl9Nc2sgICAgICAgICAgKDB4MVUgPDwgUkNDX0FQQjFMUEVOUl9XV0RHTFBFTl9Qb3MpIC8qITwgMHgwMDAwMDgwMCAqLw0KI2RlZmluZSBSQ0NfQVBCMUxQRU5SX1dXREdMUEVOICAgICAgICAgICAgICBSQ0NfQVBCMUxQRU5SX1dXREdMUEVOX01zayAgICAgICAgIC8qITwgV2luZG93IFdhdGNoZG9nIGNsb2NrIGVuYWJsZWQgaW4gc2xlZXAgbW9kZSAqLw0KI2RlZmluZSBSQ0NfQVBCMUxQRU5SX1NQSTJMUEVOX1BvcyAgICAgICAgICAoMTRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQVBCMUxQRU5SX1NQSTJMUEVOX01zayAgICAgICAgICAoMHgxVSA8PCBSQ0NfQVBCMUxQRU5SX1NQSTJMUEVOX1BvcykgLyohPCAweDAwMDA0MDAwICovDQojZGVmaW5lIFJDQ19BUEIxTFBFTlJfU1BJMkxQRU4gICAgICAgICAgICAgIFJDQ19BUEIxTFBFTlJfU1BJMkxQRU5fTXNrICAgICAgICAgLyohPCBTUEkgMiBjbG9jayBlbmFibGVkIGluIHNsZWVwIG1vZGUgKi8NCiNkZWZpbmUgUkNDX0FQQjFMUEVOUl9TUEkzTFBFTl9Qb3MgICAgICAgICAgKDE1VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0FQQjFMUEVOUl9TUEkzTFBFTl9Nc2sgICAgICAgICAgKDB4MVUgPDwgUkNDX0FQQjFMUEVOUl9TUEkzTFBFTl9Qb3MpIC8qITwgMHgwMDAwODAwMCAqLw0KI2RlZmluZSBSQ0NfQVBCMUxQRU5SX1NQSTNMUEVOICAgICAgICAgICAgICBSQ0NfQVBCMUxQRU5SX1NQSTNMUEVOX01zayAgICAgICAgIC8qITwgU1BJIDMgY2xvY2sgZW5hYmxlZCBpbiBzbGVlcCBtb2RlICovDQojZGVmaW5lIFJDQ19BUEIxTFBFTlJfVVNBUlQyTFBFTl9Qb3MgICAgICAgICgxN1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19BUEIxTFBFTlJfVVNBUlQyTFBFTl9Nc2sgICAgICAgICgweDFVIDw8IFJDQ19BUEIxTFBFTlJfVVNBUlQyTFBFTl9Qb3MpIC8qITwgMHgwMDAyMDAwMCAqLw0KI2RlZmluZSBSQ0NfQVBCMUxQRU5SX1VTQVJUMkxQRU4gICAgICAgICAgICBSQ0NfQVBCMUxQRU5SX1VTQVJUMkxQRU5fTXNrICAgICAgIC8qITwgVVNBUlQgMiBjbG9jayBlbmFibGVkIGluIHNsZWVwIG1vZGUgKi8NCiNkZWZpbmUgUkNDX0FQQjFMUEVOUl9VU0FSVDNMUEVOX1BvcyAgICAgICAgKDE4VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0FQQjFMUEVOUl9VU0FSVDNMUEVOX01zayAgICAgICAgKDB4MVUgPDwgUkNDX0FQQjFMUEVOUl9VU0FSVDNMUEVOX1BvcykgLyohPCAweDAwMDQwMDAwICovDQojZGVmaW5lIFJDQ19BUEIxTFBFTlJfVVNBUlQzTFBFTiAgICAgICAgICAgIFJDQ19BUEIxTFBFTlJfVVNBUlQzTFBFTl9Nc2sgICAgICAgLyohPCBVU0FSVCAzIGNsb2NrIGVuYWJsZWQgaW4gc2xlZXAgbW9kZSAqLw0KI2RlZmluZSBSQ0NfQVBCMUxQRU5SX0kyQzFMUEVOX1BvcyAgICAgICAgICAoMjFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQVBCMUxQRU5SX0kyQzFMUEVOX01zayAgICAgICAgICAoMHgxVSA8PCBSQ0NfQVBCMUxQRU5SX0kyQzFMUEVOX1BvcykgLyohPCAweDAwMjAwMDAwICovDQojZGVmaW5lIFJDQ19BUEIxTFBFTlJfSTJDMUxQRU4gICAgICAgICAgICAgIFJDQ19BUEIxTFBFTlJfSTJDMUxQRU5fTXNrICAgICAgICAgLyohPCBJMkMgMSBjbG9jayBlbmFibGVkIGluIHNsZWVwIG1vZGUgKi8NCiNkZWZpbmUgUkNDX0FQQjFMUEVOUl9JMkMyTFBFTl9Qb3MgICAgICAgICAgKDIyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0FQQjFMUEVOUl9JMkMyTFBFTl9Nc2sgICAgICAgICAgKDB4MVUgPDwgUkNDX0FQQjFMUEVOUl9JMkMyTFBFTl9Qb3MpIC8qITwgMHgwMDQwMDAwMCAqLw0KI2RlZmluZSBSQ0NfQVBCMUxQRU5SX0kyQzJMUEVOICAgICAgICAgICAgICBSQ0NfQVBCMUxQRU5SX0kyQzJMUEVOX01zayAgICAgICAgIC8qITwgSTJDIDIgY2xvY2sgZW5hYmxlZCBpbiBzbGVlcCBtb2RlICovDQojZGVmaW5lIFJDQ19BUEIxTFBFTlJfVVNCTFBFTl9Qb3MgICAgICAgICAgICgyM1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19BUEIxTFBFTlJfVVNCTFBFTl9Nc2sgICAgICAgICAgICgweDFVIDw8IFJDQ19BUEIxTFBFTlJfVVNCTFBFTl9Qb3MpIC8qITwgMHgwMDgwMDAwMCAqLw0KI2RlZmluZSBSQ0NfQVBCMUxQRU5SX1VTQkxQRU4gICAgICAgICAgICAgICBSQ0NfQVBCMUxQRU5SX1VTQkxQRU5fTXNrICAgICAgICAgIC8qITwgVVNCIGNsb2NrIGVuYWJsZWQgaW4gc2xlZXAgbW9kZSAqLw0KI2RlZmluZSBSQ0NfQVBCMUxQRU5SX1BXUkxQRU5fUG9zICAgICAgICAgICAoMjhVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQVBCMUxQRU5SX1BXUkxQRU5fTXNrICAgICAgICAgICAoMHgxVSA8PCBSQ0NfQVBCMUxQRU5SX1BXUkxQRU5fUG9zKSAvKiE8IDB4MTAwMDAwMDAgKi8NCiNkZWZpbmUgUkNDX0FQQjFMUEVOUl9QV1JMUEVOICAgICAgICAgICAgICAgUkNDX0FQQjFMUEVOUl9QV1JMUEVOX01zayAgICAgICAgICAvKiE8IFBvd2VyIGludGVyZmFjZSBjbG9jayBlbmFibGVkIGluIHNsZWVwIG1vZGUgKi8NCiNkZWZpbmUgUkNDX0FQQjFMUEVOUl9EQUNMUEVOX1BvcyAgICAgICAgICAgKDI5VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0FQQjFMUEVOUl9EQUNMUEVOX01zayAgICAgICAgICAgKDB4MVUgPDwgUkNDX0FQQjFMUEVOUl9EQUNMUEVOX1BvcykgLyohPCAweDIwMDAwMDAwICovDQojZGVmaW5lIFJDQ19BUEIxTFBFTlJfREFDTFBFTiAgICAgICAgICAgICAgIFJDQ19BUEIxTFBFTlJfREFDTFBFTl9Nc2sgICAgICAgICAgLyohPCBEQUMgaW50ZXJmYWNlIGNsb2NrIGVuYWJsZWQgaW4gc2xlZXAgbW9kZSAqLw0KI2RlZmluZSBSQ0NfQVBCMUxQRU5SX0NPTVBMUEVOX1BvcyAgICAgICAgICAoMzFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQVBCMUxQRU5SX0NPTVBMUEVOX01zayAgICAgICAgICAoMHgxVSA8PCBSQ0NfQVBCMUxQRU5SX0NPTVBMUEVOX1BvcykgLyohPCAweDgwMDAwMDAwICovDQojZGVmaW5lIFJDQ19BUEIxTFBFTlJfQ09NUExQRU4gICAgICAgICAgICAgIFJDQ19BUEIxTFBFTlJfQ09NUExQRU5fTXNrICAgICAgICAgLyohPCBDb21wYXJhdG9yIGludGVyZmFjZSBjbG9jayBlbmFibGVkIGluIHNsZWVwIG1vZGUqLw0KDQovKioqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFJDQ19DU1IgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBSQ0NfQ1NSX0xTSU9OX1BvcyAgICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQ1NSX0xTSU9OX01zayAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBSQ0NfQ1NSX0xTSU9OX1BvcykgICAgICAgIC8qITwgMHgwMDAwMDAwMSAqLw0KI2RlZmluZSBSQ0NfQ1NSX0xTSU9OICAgICAgICAgICAgICAgICAgICAgICBSQ0NfQ1NSX0xTSU9OX01zayAgICAgICAgICAgICAgICAgIC8qITwgSW50ZXJuYWwgTG93IFNwZWVkIG9zY2lsbGF0b3IgZW5hYmxlICovDQojZGVmaW5lIFJDQ19DU1JfTFNJUkRZX1BvcyAgICAgICAgICAgICAgICAgICgxVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19DU1JfTFNJUkRZX01zayAgICAgICAgICAgICAgICAgICgweDFVIDw8IFJDQ19DU1JfTFNJUkRZX1BvcykgICAgICAgLyohPCAweDAwMDAwMDAyICovDQojZGVmaW5lIFJDQ19DU1JfTFNJUkRZICAgICAgICAgICAgICAgICAgICAgIFJDQ19DU1JfTFNJUkRZX01zayAgICAgICAgICAgICAgICAgLyohPCBJbnRlcm5hbCBMb3cgU3BlZWQgb3NjaWxsYXRvciBSZWFkeSAqLw0KDQojZGVmaW5lIFJDQ19DU1JfTFNFT05fUG9zICAgICAgICAgICAgICAgICAgICg4VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19DU1JfTFNFT05fTXNrICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFJDQ19DU1JfTFNFT05fUG9zKSAgICAgICAgLyohPCAweDAwMDAwMTAwICovDQojZGVmaW5lIFJDQ19DU1JfTFNFT04gICAgICAgICAgICAgICAgICAgICAgIFJDQ19DU1JfTFNFT05fTXNrICAgICAgICAgICAgICAgICAgLyohPCBFeHRlcm5hbCBMb3cgU3BlZWQgb3NjaWxsYXRvciBlbmFibGUgKi8NCiNkZWZpbmUgUkNDX0NTUl9MU0VSRFlfUG9zICAgICAgICAgICAgICAgICAgKDlVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0NTUl9MU0VSRFlfTXNrICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgUkNDX0NTUl9MU0VSRFlfUG9zKSAgICAgICAvKiE8IDB4MDAwMDAyMDAgKi8NCiNkZWZpbmUgUkNDX0NTUl9MU0VSRFkgICAgICAgICAgICAgICAgICAgICAgUkNDX0NTUl9MU0VSRFlfTXNrICAgICAgICAgICAgICAgICAvKiE8IEV4dGVybmFsIExvdyBTcGVlZCBvc2NpbGxhdG9yIFJlYWR5ICovDQojZGVmaW5lIFJDQ19DU1JfTFNFQllQX1BvcyAgICAgICAgICAgICAgICAgICgxMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19DU1JfTFNFQllQX01zayAgICAgICAgICAgICAgICAgICgweDFVIDw8IFJDQ19DU1JfTFNFQllQX1BvcykgICAgICAgLyohPCAweDAwMDAwNDAwICovDQojZGVmaW5lIFJDQ19DU1JfTFNFQllQICAgICAgICAgICAgICAgICAgICAgIFJDQ19DU1JfTFNFQllQX01zayAgICAgICAgICAgICAgICAgLyohPCBFeHRlcm5hbCBMb3cgU3BlZWQgb3NjaWxsYXRvciBCeXBhc3MgKi8NCg0KI2RlZmluZSBSQ0NfQ1NSX0xTRUNTU09OX1BvcyAgICAgICAgICAgICAgICAoMTFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQ1NSX0xTRUNTU09OX01zayAgICAgICAgICAgICAgICAoMHgxVSA8PCBSQ0NfQ1NSX0xTRUNTU09OX1BvcykgICAgIC8qITwgMHgwMDAwMDgwMCAqLw0KI2RlZmluZSBSQ0NfQ1NSX0xTRUNTU09OICAgICAgICAgICAgICAgICAgICBSQ0NfQ1NSX0xTRUNTU09OX01zayAgICAgICAgICAgICAgIC8qITwgRXh0ZXJuYWwgTG93IFNwZWVkIG9zY2lsbGF0b3IgQ1NTIEVuYWJsZSAqLw0KI2RlZmluZSBSQ0NfQ1NSX0xTRUNTU0RfUG9zICAgICAgICAgICAgICAgICAoMTJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQ1NSX0xTRUNTU0RfTXNrICAgICAgICAgICAgICAgICAoMHgxVSA8PCBSQ0NfQ1NSX0xTRUNTU0RfUG9zKSAgICAgIC8qITwgMHgwMDAwMTAwMCAqLw0KI2RlZmluZSBSQ0NfQ1NSX0xTRUNTU0QgICAgICAgICAgICAgICAgICAgICBSQ0NfQ1NSX0xTRUNTU0RfTXNrICAgICAgICAgICAgICAgIC8qITwgRXh0ZXJuYWwgTG93IFNwZWVkIG9zY2lsbGF0b3IgQ1NTIERldGVjdGVkICovDQoNCiNkZWZpbmUgUkNDX0NTUl9SVENTRUxfUG9zICAgICAgICAgICAgICAgICAgKDE2VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0NTUl9SVENTRUxfTXNrICAgICAgICAgICAgICAgICAgKDB4M1UgPDwgUkNDX0NTUl9SVENTRUxfUG9zKSAgICAgICAvKiE8IDB4MDAwMzAwMDAgKi8NCiNkZWZpbmUgUkNDX0NTUl9SVENTRUwgICAgICAgICAgICAgICAgICAgICAgUkNDX0NTUl9SVENTRUxfTXNrICAgICAgICAgICAgICAgICAvKiE8IFJUQ1NFTFsxOjBdIGJpdHMgKFJUQyBjbG9jayBzb3VyY2Ugc2VsZWN0aW9uKSAqLw0KI2RlZmluZSBSQ0NfQ1NSX1JUQ1NFTF8wICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBSQ0NfQ1NSX1JUQ1NFTF9Qb3MpICAgICAgIC8qITwgMHgwMDAxMDAwMCAqLw0KI2RlZmluZSBSQ0NfQ1NSX1JUQ1NFTF8xICAgICAgICAgICAgICAgICAgICAoMHgyVSA8PCBSQ0NfQ1NSX1JUQ1NFTF9Qb3MpICAgICAgIC8qITwgMHgwMDAyMDAwMCAqLw0KDQovKiE8IFJUQyBjb25naWd1cmF0aW9uICovDQojZGVmaW5lIFJDQ19DU1JfUlRDU0VMX05PQ0xPQ0sgICAgICAgICAgICAgICgweDAwMDAwMDAwVSkgICAgICAgICAgICAgICAgICAgICAgLyohPCBObyBjbG9jayAqLw0KI2RlZmluZSBSQ0NfQ1NSX1JUQ1NFTF9MU0VfUG9zICAgICAgICAgICAgICAoMTZVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQ1NSX1JUQ1NFTF9MU0VfTXNrICAgICAgICAgICAgICAoMHgxVSA8PCBSQ0NfQ1NSX1JUQ1NFTF9MU0VfUG9zKSAgIC8qITwgMHgwMDAxMDAwMCAqLw0KI2RlZmluZSBSQ0NfQ1NSX1JUQ1NFTF9MU0UgICAgICAgICAgICAgICAgICBSQ0NfQ1NSX1JUQ1NFTF9MU0VfTXNrICAgICAgICAgICAgIC8qITwgTFNFIG9zY2lsbGF0b3IgY2xvY2sgdXNlZCBhcyBSVEMgY2xvY2sgKi8NCiNkZWZpbmUgUkNDX0NTUl9SVENTRUxfTFNJX1BvcyAgICAgICAgICAgICAgKDE3VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0NTUl9SVENTRUxfTFNJX01zayAgICAgICAgICAgICAgKDB4MVUgPDwgUkNDX0NTUl9SVENTRUxfTFNJX1BvcykgICAvKiE8IDB4MDAwMjAwMDAgKi8NCiNkZWZpbmUgUkNDX0NTUl9SVENTRUxfTFNJICAgICAgICAgICAgICAgICAgUkNDX0NTUl9SVENTRUxfTFNJX01zayAgICAgICAgICAgICAvKiE8IExTSSBvc2NpbGxhdG9yIGNsb2NrIHVzZWQgYXMgUlRDIGNsb2NrICovDQojZGVmaW5lIFJDQ19DU1JfUlRDU0VMX0hTRV9Qb3MgICAgICAgICAgICAgICgxNlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19DU1JfUlRDU0VMX0hTRV9Nc2sgICAgICAgICAgICAgICgweDNVIDw8IFJDQ19DU1JfUlRDU0VMX0hTRV9Qb3MpICAgLyohPCAweDAwMDMwMDAwICovDQojZGVmaW5lIFJDQ19DU1JfUlRDU0VMX0hTRSAgICAgICAgICAgICAgICAgIFJDQ19DU1JfUlRDU0VMX0hTRV9Nc2sgICAgICAgICAgICAgLyohPCBIU0Ugb3NjaWxsYXRvciBjbG9jayBkaXZpZGVkIGJ5IDIsIDQsIDggb3IgMTYgYnkgUlRDUFJFIHVzZWQgYXMgUlRDIGNsb2NrICovDQoNCiNkZWZpbmUgUkNDX0NTUl9SVENFTl9Qb3MgICAgICAgICAgICAgICAgICAgKDIyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0NTUl9SVENFTl9Nc2sgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgUkNDX0NTUl9SVENFTl9Qb3MpICAgICAgICAvKiE8IDB4MDA0MDAwMDAgKi8NCiNkZWZpbmUgUkNDX0NTUl9SVENFTiAgICAgICAgICAgICAgICAgICAgICAgUkNDX0NTUl9SVENFTl9Nc2sgICAgICAgICAgICAgICAgICAvKiE8IFJUQyBjbG9jayBlbmFibGUgKi8NCiNkZWZpbmUgUkNDX0NTUl9SVENSU1RfUG9zICAgICAgICAgICAgICAgICAgKDIzVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0NTUl9SVENSU1RfTXNrICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgUkNDX0NTUl9SVENSU1RfUG9zKSAgICAgICAvKiE8IDB4MDA4MDAwMDAgKi8NCiNkZWZpbmUgUkNDX0NTUl9SVENSU1QgICAgICAgICAgICAgICAgICAgICAgUkNDX0NTUl9SVENSU1RfTXNrICAgICAgICAgICAgICAgICAvKiE8IFJUQyByZXNldCAgKi8NCiANCiNkZWZpbmUgUkNDX0NTUl9STVZGX1BvcyAgICAgICAgICAgICAgICAgICAgKDI0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0NTUl9STVZGX01zayAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgUkNDX0NTUl9STVZGX1BvcykgICAgICAgICAvKiE8IDB4MDEwMDAwMDAgKi8NCiNkZWZpbmUgUkNDX0NTUl9STVZGICAgICAgICAgICAgICAgICAgICAgICAgUkNDX0NTUl9STVZGX01zayAgICAgICAgICAgICAgICAgICAvKiE8IFJlbW92ZSByZXNldCBmbGFnICovDQojZGVmaW5lIFJDQ19DU1JfT0JMUlNURl9Qb3MgICAgICAgICAgICAgICAgICgyNVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19DU1JfT0JMUlNURl9Nc2sgICAgICAgICAgICAgICAgICgweDFVIDw8IFJDQ19DU1JfT0JMUlNURl9Qb3MpICAgICAgLyohPCAweDAyMDAwMDAwICovDQojZGVmaW5lIFJDQ19DU1JfT0JMUlNURiAgICAgICAgICAgICAgICAgICAgIFJDQ19DU1JfT0JMUlNURl9Nc2sgICAgICAgICAgICAgICAgLyohPCBPcHRpb24gQnl0ZXMgTG9hZGVyIHJlc2V0IGZsYWcgKi8NCiNkZWZpbmUgUkNDX0NTUl9QSU5SU1RGX1BvcyAgICAgICAgICAgICAgICAgKDI2VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0NTUl9QSU5SU1RGX01zayAgICAgICAgICAgICAgICAgKDB4MVUgPDwgUkNDX0NTUl9QSU5SU1RGX1BvcykgICAgICAvKiE8IDB4MDQwMDAwMDAgKi8NCiNkZWZpbmUgUkNDX0NTUl9QSU5SU1RGICAgICAgICAgICAgICAgICAgICAgUkNDX0NTUl9QSU5SU1RGX01zayAgICAgICAgICAgICAgICAvKiE8IFBJTiByZXNldCBmbGFnICovDQojZGVmaW5lIFJDQ19DU1JfUE9SUlNURl9Qb3MgICAgICAgICAgICAgICAgICgyN1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19DU1JfUE9SUlNURl9Nc2sgICAgICAgICAgICAgICAgICgweDFVIDw8IFJDQ19DU1JfUE9SUlNURl9Qb3MpICAgICAgLyohPCAweDA4MDAwMDAwICovDQojZGVmaW5lIFJDQ19DU1JfUE9SUlNURiAgICAgICAgICAgICAgICAgICAgIFJDQ19DU1JfUE9SUlNURl9Nc2sgICAgICAgICAgICAgICAgLyohPCBQT1IvUERSIHJlc2V0IGZsYWcgKi8NCiNkZWZpbmUgUkNDX0NTUl9TRlRSU1RGX1BvcyAgICAgICAgICAgICAgICAgKDI4VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0NTUl9TRlRSU1RGX01zayAgICAgICAgICAgICAgICAgKDB4MVUgPDwgUkNDX0NTUl9TRlRSU1RGX1BvcykgICAgICAvKiE8IDB4MTAwMDAwMDAgKi8NCiNkZWZpbmUgUkNDX0NTUl9TRlRSU1RGICAgICAgICAgICAgICAgICAgICAgUkNDX0NTUl9TRlRSU1RGX01zayAgICAgICAgICAgICAgICAvKiE8IFNvZnR3YXJlIFJlc2V0IGZsYWcgKi8NCiNkZWZpbmUgUkNDX0NTUl9JV0RHUlNURl9Qb3MgICAgICAgICAgICAgICAgKDI5VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0NTUl9JV0RHUlNURl9Nc2sgICAgICAgICAgICAgICAgKDB4MVUgPDwgUkNDX0NTUl9JV0RHUlNURl9Qb3MpICAgICAvKiE8IDB4MjAwMDAwMDAgKi8NCiNkZWZpbmUgUkNDX0NTUl9JV0RHUlNURiAgICAgICAgICAgICAgICAgICAgUkNDX0NTUl9JV0RHUlNURl9Nc2sgICAgICAgICAgICAgICAvKiE8IEluZGVwZW5kZW50IFdhdGNoZG9nIHJlc2V0IGZsYWcgKi8NCiNkZWZpbmUgUkNDX0NTUl9XV0RHUlNURl9Qb3MgICAgICAgICAgICAgICAgKDMwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0NTUl9XV0RHUlNURl9Nc2sgICAgICAgICAgICAgICAgKDB4MVUgPDwgUkNDX0NTUl9XV0RHUlNURl9Qb3MpICAgICAvKiE8IDB4NDAwMDAwMDAgKi8NCiNkZWZpbmUgUkNDX0NTUl9XV0RHUlNURiAgICAgICAgICAgICAgICAgICAgUkNDX0NTUl9XV0RHUlNURl9Nc2sgICAgICAgICAgICAgICAvKiE8IFdpbmRvdyB3YXRjaGRvZyByZXNldCBmbGFnICovDQojZGVmaW5lIFJDQ19DU1JfTFBXUlJTVEZfUG9zICAgICAgICAgICAgICAgICgzMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19DU1JfTFBXUlJTVEZfTXNrICAgICAgICAgICAgICAgICgweDFVIDw8IFJDQ19DU1JfTFBXUlJTVEZfUG9zKSAgICAgLyohPCAweDgwMDAwMDAwICovDQojZGVmaW5lIFJDQ19DU1JfTFBXUlJTVEYgICAgICAgICAgICAgICAgICAgIFJDQ19DU1JfTFBXUlJTVEZfTXNrICAgICAgICAgICAgICAgLyohPCBMb3ctUG93ZXIgcmVzZXQgZmxhZyAqLw0KDQovKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLw0KLyogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8NCi8qICAgICAgICAgICAgICAgICAgICAgICAgICAgUmVhbC1UaW1lIENsb2NrIChSVEMpICAgICAgICAgICAgICAgICAgICAgICAgICAgICovDQovKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLw0KLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8NCi8qDQoqIEBicmllZiBTcGVjaWZpYyBkZXZpY2UgZmVhdHVyZSBkZWZpbml0aW9ucyAgKG5vdCBwcmVzZW50IG9uIGFsbCBkZXZpY2VzIGluIHRoZSBTVE0zMkYwIHNlcmllKQ0KKi8NCiNkZWZpbmUgUlRDX1RBTVBFUjFfU1VQUE9SVCAgICAgICAvKiE8IFRBTVBFUiAxIGZlYXR1cmUgc3VwcG9ydCAqLw0KI2RlZmluZSBSVENfVEFNUEVSMl9TVVBQT1JUICAgICAgIC8qITwgVEFNUEVSIDIgZmVhdHVyZSBzdXBwb3J0ICovDQojZGVmaW5lIFJUQ19UQU1QRVIzX1NVUFBPUlQgICAgICAgLyohPCBUQU1QRVIgMyBmZWF0dXJlIHN1cHBvcnQgKi8NCiNkZWZpbmUgUlRDX0JBQ0tVUF9TVVBQT1JUICAgICAgICAvKiE8IEJBQ0tVUCByZWdpc3RlciBmZWF0dXJlIHN1cHBvcnQgKi8NCiNkZWZpbmUgUlRDX1dBS0VVUF9TVVBQT1JUICAgICAgICAvKiE8IFdBS0VVUCBmZWF0dXJlIHN1cHBvcnQgKi8NCiNkZWZpbmUgUlRDX1NNT09USENBTElCX1NVUFBPUlQgICAvKiE8IFNtb290aCBkaWdpdGFsIGNhbGlicmF0aW9uIGZlYXR1cmUgc3VwcG9ydCAqLw0KI2RlZmluZSBSVENfU1VCU0VDT05EX1NVUFBPUlQgICAgIC8qITwgU3ViLXNlY29uZCBmZWF0dXJlIHN1cHBvcnQgKi8NCg0KLyoqKioqKioqKioqKioqKioqKioqICBCaXRzIGRlZmluaXRpb24gZm9yIFJUQ19UUiByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgUlRDX1RSX1BNX1BvcyAgICAgICAgICAgICAgICAgICAgICAgICgyMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX1RSX1BNX01zayAgICAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFJUQ19UUl9QTV9Qb3MpICAgICAgICAgICAvKiE8IDB4MDA0MDAwMDAgKi8NCiNkZWZpbmUgUlRDX1RSX1BNICAgICAgICAgICAgICAgICAgICAgICAgICAgIFJUQ19UUl9QTV9Nc2sgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX1RSX0hUX1BvcyAgICAgICAgICAgICAgICAgICAgICAgICgyMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX1RSX0hUX01zayAgICAgICAgICAgICAgICAgICAgICAgICgweDNVIDw8IFJUQ19UUl9IVF9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAzMDAwMDAgKi8NCiNkZWZpbmUgUlRDX1RSX0hUICAgICAgICAgICAgICAgICAgICAgICAgICAgIFJUQ19UUl9IVF9Nc2sgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX1RSX0hUXzAgICAgICAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFJUQ19UUl9IVF9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAxMDAwMDAgKi8NCiNkZWZpbmUgUlRDX1RSX0hUXzEgICAgICAgICAgICAgICAgICAgICAgICAgICgweDJVIDw8IFJUQ19UUl9IVF9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAyMDAwMDAgKi8NCiNkZWZpbmUgUlRDX1RSX0hVX1BvcyAgICAgICAgICAgICAgICAgICAgICAgICgxNlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX1RSX0hVX01zayAgICAgICAgICAgICAgICAgICAgICAgICgweEZVIDw8IFJUQ19UUl9IVV9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwRjAwMDAgKi8NCiNkZWZpbmUgUlRDX1RSX0hVICAgICAgICAgICAgICAgICAgICAgICAgICAgIFJUQ19UUl9IVV9Nc2sgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX1RSX0hVXzAgICAgICAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFJUQ19UUl9IVV9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMTAwMDAgKi8NCiNkZWZpbmUgUlRDX1RSX0hVXzEgICAgICAgICAgICAgICAgICAgICAgICAgICgweDJVIDw8IFJUQ19UUl9IVV9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMjAwMDAgKi8NCiNkZWZpbmUgUlRDX1RSX0hVXzIgICAgICAgICAgICAgICAgICAgICAgICAgICgweDRVIDw8IFJUQ19UUl9IVV9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwNDAwMDAgKi8NCiNkZWZpbmUgUlRDX1RSX0hVXzMgICAgICAgICAgICAgICAgICAgICAgICAgICgweDhVIDw8IFJUQ19UUl9IVV9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwODAwMDAgKi8NCiNkZWZpbmUgUlRDX1RSX01OVF9Qb3MgICAgICAgICAgICAgICAgICAgICAgICgxMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX1RSX01OVF9Nc2sgICAgICAgICAgICAgICAgICAgICAgICgweDdVIDw8IFJUQ19UUl9NTlRfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDcwMDAgKi8NCiNkZWZpbmUgUlRDX1RSX01OVCAgICAgICAgICAgICAgICAgICAgICAgICAgIFJUQ19UUl9NTlRfTXNrICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX1RSX01OVF8wICAgICAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFJUQ19UUl9NTlRfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDEwMDAgKi8NCiNkZWZpbmUgUlRDX1RSX01OVF8xICAgICAgICAgICAgICAgICAgICAgICAgICgweDJVIDw8IFJUQ19UUl9NTlRfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDIwMDAgKi8NCiNkZWZpbmUgUlRDX1RSX01OVF8yICAgICAgICAgICAgICAgICAgICAgICAgICgweDRVIDw8IFJUQ19UUl9NTlRfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDQwMDAgKi8NCiNkZWZpbmUgUlRDX1RSX01OVV9Qb3MgICAgICAgICAgICAgICAgICAgICAgICg4VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX1RSX01OVV9Nc2sgICAgICAgICAgICAgICAgICAgICAgICgweEZVIDw8IFJUQ19UUl9NTlVfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDBGMDAgKi8NCiNkZWZpbmUgUlRDX1RSX01OVSAgICAgICAgICAgICAgICAgICAgICAgICAgIFJUQ19UUl9NTlVfTXNrICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX1RSX01OVV8wICAgICAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFJUQ19UUl9NTlVfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDAxMDAgKi8NCiNkZWZpbmUgUlRDX1RSX01OVV8xICAgICAgICAgICAgICAgICAgICAgICAgICgweDJVIDw8IFJUQ19UUl9NTlVfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDAyMDAgKi8NCiNkZWZpbmUgUlRDX1RSX01OVV8yICAgICAgICAgICAgICAgICAgICAgICAgICgweDRVIDw8IFJUQ19UUl9NTlVfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDA0MDAgKi8NCiNkZWZpbmUgUlRDX1RSX01OVV8zICAgICAgICAgICAgICAgICAgICAgICAgICgweDhVIDw8IFJUQ19UUl9NTlVfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDA4MDAgKi8NCiNkZWZpbmUgUlRDX1RSX1NUX1BvcyAgICAgICAgICAgICAgICAgICAgICAgICg0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX1RSX1NUX01zayAgICAgICAgICAgICAgICAgICAgICAgICgweDdVIDw8IFJUQ19UUl9TVF9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDAwNzAgKi8NCiNkZWZpbmUgUlRDX1RSX1NUICAgICAgICAgICAgICAgICAgICAgICAgICAgIFJUQ19UUl9TVF9Nc2sgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX1RSX1NUXzAgICAgICAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFJUQ19UUl9TVF9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDAwMTAgKi8NCiNkZWZpbmUgUlRDX1RSX1NUXzEgICAgICAgICAgICAgICAgICAgICAgICAgICgweDJVIDw8IFJUQ19UUl9TVF9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDAwMjAgKi8NCiNkZWZpbmUgUlRDX1RSX1NUXzIgICAgICAgICAgICAgICAgICAgICAgICAgICgweDRVIDw8IFJUQ19UUl9TVF9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDAwNDAgKi8NCiNkZWZpbmUgUlRDX1RSX1NVX1BvcyAgICAgICAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX1RSX1NVX01zayAgICAgICAgICAgICAgICAgICAgICAgICgweEZVIDw8IFJUQ19UUl9TVV9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDAwMEYgKi8NCiNkZWZpbmUgUlRDX1RSX1NVICAgICAgICAgICAgICAgICAgICAgICAgICAgIFJUQ19UUl9TVV9Nc2sgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX1RSX1NVXzAgICAgICAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFJUQ19UUl9TVV9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDEgKi8NCiNkZWZpbmUgUlRDX1RSX1NVXzEgICAgICAgICAgICAgICAgICAgICAgICAgICgweDJVIDw8IFJUQ19UUl9TVV9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDIgKi8NCiNkZWZpbmUgUlRDX1RSX1NVXzIgICAgICAgICAgICAgICAgICAgICAgICAgICgweDRVIDw8IFJUQ19UUl9TVV9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDQgKi8NCiNkZWZpbmUgUlRDX1RSX1NVXzMgICAgICAgICAgICAgICAgICAgICAgICAgICgweDhVIDw8IFJUQ19UUl9TVV9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDggKi8NCg0KLyoqKioqKioqKioqKioqKioqKioqICBCaXRzIGRlZmluaXRpb24gZm9yIFJUQ19EUiByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgUlRDX0RSX1lUX1BvcyAgICAgICAgICAgICAgICAgICAgICAgICgyMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0RSX1lUX01zayAgICAgICAgICAgICAgICAgICAgICAgICgweEZVIDw8IFJUQ19EUl9ZVF9Qb3MpICAgICAgICAgICAvKiE8IDB4MDBGMDAwMDAgKi8NCiNkZWZpbmUgUlRDX0RSX1lUICAgICAgICAgICAgICAgICAgICAgICAgICAgIFJUQ19EUl9ZVF9Nc2sgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0RSX1lUXzAgICAgICAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFJUQ19EUl9ZVF9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAxMDAwMDAgKi8NCiNkZWZpbmUgUlRDX0RSX1lUXzEgICAgICAgICAgICAgICAgICAgICAgICAgICgweDJVIDw8IFJUQ19EUl9ZVF9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAyMDAwMDAgKi8NCiNkZWZpbmUgUlRDX0RSX1lUXzIgICAgICAgICAgICAgICAgICAgICAgICAgICgweDRVIDw8IFJUQ19EUl9ZVF9Qb3MpICAgICAgICAgICAvKiE8IDB4MDA0MDAwMDAgKi8NCiNkZWZpbmUgUlRDX0RSX1lUXzMgICAgICAgICAgICAgICAgICAgICAgICAgICgweDhVIDw8IFJUQ19EUl9ZVF9Qb3MpICAgICAgICAgICAvKiE8IDB4MDA4MDAwMDAgKi8NCiNkZWZpbmUgUlRDX0RSX1lVX1BvcyAgICAgICAgICAgICAgICAgICAgICAgICgxNlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0RSX1lVX01zayAgICAgICAgICAgICAgICAgICAgICAgICgweEZVIDw8IFJUQ19EUl9ZVV9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwRjAwMDAgKi8NCiNkZWZpbmUgUlRDX0RSX1lVICAgICAgICAgICAgICAgICAgICAgICAgICAgIFJUQ19EUl9ZVV9Nc2sgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0RSX1lVXzAgICAgICAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFJUQ19EUl9ZVV9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMTAwMDAgKi8NCiNkZWZpbmUgUlRDX0RSX1lVXzEgICAgICAgICAgICAgICAgICAgICAgICAgICgweDJVIDw8IFJUQ19EUl9ZVV9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMjAwMDAgKi8NCiNkZWZpbmUgUlRDX0RSX1lVXzIgICAgICAgICAgICAgICAgICAgICAgICAgICgweDRVIDw8IFJUQ19EUl9ZVV9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwNDAwMDAgKi8NCiNkZWZpbmUgUlRDX0RSX1lVXzMgICAgICAgICAgICAgICAgICAgICAgICAgICgweDhVIDw8IFJUQ19EUl9ZVV9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwODAwMDAgKi8NCiNkZWZpbmUgUlRDX0RSX1dEVV9Qb3MgICAgICAgICAgICAgICAgICAgICAgICgxM1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0RSX1dEVV9Nc2sgICAgICAgICAgICAgICAgICAgICAgICgweDdVIDw8IFJUQ19EUl9XRFVfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMEUwMDAgKi8NCiNkZWZpbmUgUlRDX0RSX1dEVSAgICAgICAgICAgICAgICAgICAgICAgICAgIFJUQ19EUl9XRFVfTXNrICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0RSX1dEVV8wICAgICAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFJUQ19EUl9XRFVfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDIwMDAgKi8NCiNkZWZpbmUgUlRDX0RSX1dEVV8xICAgICAgICAgICAgICAgICAgICAgICAgICgweDJVIDw8IFJUQ19EUl9XRFVfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDQwMDAgKi8NCiNkZWZpbmUgUlRDX0RSX1dEVV8yICAgICAgICAgICAgICAgICAgICAgICAgICgweDRVIDw8IFJUQ19EUl9XRFVfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDgwMDAgKi8NCiNkZWZpbmUgUlRDX0RSX01UX1BvcyAgICAgICAgICAgICAgICAgICAgICAgICgxMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0RSX01UX01zayAgICAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFJUQ19EUl9NVF9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDEwMDAgKi8NCiNkZWZpbmUgUlRDX0RSX01UICAgICAgICAgICAgICAgICAgICAgICAgICAgIFJUQ19EUl9NVF9Nc2sgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0RSX01VX1BvcyAgICAgICAgICAgICAgICAgICAgICAgICg4VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0RSX01VX01zayAgICAgICAgICAgICAgICAgICAgICAgICgweEZVIDw8IFJUQ19EUl9NVV9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDBGMDAgKi8NCiNkZWZpbmUgUlRDX0RSX01VICAgICAgICAgICAgICAgICAgICAgICAgICAgIFJUQ19EUl9NVV9Nc2sgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0RSX01VXzAgICAgICAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFJUQ19EUl9NVV9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDAxMDAgKi8NCiNkZWZpbmUgUlRDX0RSX01VXzEgICAgICAgICAgICAgICAgICAgICAgICAgICgweDJVIDw8IFJUQ19EUl9NVV9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDAyMDAgKi8NCiNkZWZpbmUgUlRDX0RSX01VXzIgICAgICAgICAgICAgICAgICAgICAgICAgICgweDRVIDw8IFJUQ19EUl9NVV9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDA0MDAgKi8NCiNkZWZpbmUgUlRDX0RSX01VXzMgICAgICAgICAgICAgICAgICAgICAgICAgICgweDhVIDw8IFJUQ19EUl9NVV9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDA4MDAgKi8NCiNkZWZpbmUgUlRDX0RSX0RUX1BvcyAgICAgICAgICAgICAgICAgICAgICAgICg0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0RSX0RUX01zayAgICAgICAgICAgICAgICAgICAgICAgICgweDNVIDw8IFJUQ19EUl9EVF9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDAwMzAgKi8NCiNkZWZpbmUgUlRDX0RSX0RUICAgICAgICAgICAgICAgICAgICAgICAgICAgIFJUQ19EUl9EVF9Nc2sgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0RSX0RUXzAgICAgICAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFJUQ19EUl9EVF9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDAwMTAgKi8NCiNkZWZpbmUgUlRDX0RSX0RUXzEgICAgICAgICAgICAgICAgICAgICAgICAgICgweDJVIDw8IFJUQ19EUl9EVF9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDAwMjAgKi8NCiNkZWZpbmUgUlRDX0RSX0RVX1BvcyAgICAgICAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0RSX0RVX01zayAgICAgICAgICAgICAgICAgICAgICAgICgweEZVIDw8IFJUQ19EUl9EVV9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDAwMEYgKi8NCiNkZWZpbmUgUlRDX0RSX0RVICAgICAgICAgICAgICAgICAgICAgICAgICAgIFJUQ19EUl9EVV9Nc2sgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0RSX0RVXzAgICAgICAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFJUQ19EUl9EVV9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDEgKi8NCiNkZWZpbmUgUlRDX0RSX0RVXzEgICAgICAgICAgICAgICAgICAgICAgICAgICgweDJVIDw8IFJUQ19EUl9EVV9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDIgKi8NCiNkZWZpbmUgUlRDX0RSX0RVXzIgICAgICAgICAgICAgICAgICAgICAgICAgICgweDRVIDw8IFJUQ19EUl9EVV9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDQgKi8NCiNkZWZpbmUgUlRDX0RSX0RVXzMgICAgICAgICAgICAgICAgICAgICAgICAgICgweDhVIDw8IFJUQ19EUl9EVV9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDggKi8NCg0KLyoqKioqKioqKioqKioqKioqKioqICBCaXRzIGRlZmluaXRpb24gZm9yIFJUQ19DUiByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgUlRDX0NSX0NPRV9Qb3MgICAgICAgICAgICAgICAgICAgICAgICgyM1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0NSX0NPRV9Nc2sgICAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFJUQ19DUl9DT0VfUG9zKSAgICAgICAgICAvKiE8IDB4MDA4MDAwMDAgKi8NCiNkZWZpbmUgUlRDX0NSX0NPRSAgICAgICAgICAgICAgICAgICAgICAgICAgIFJUQ19DUl9DT0VfTXNrICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0NSX09TRUxfUG9zICAgICAgICAgICAgICAgICAgICAgICgyMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0NSX09TRUxfTXNrICAgICAgICAgICAgICAgICAgICAgICgweDNVIDw8IFJUQ19DUl9PU0VMX1BvcykgICAgICAgICAvKiE8IDB4MDA2MDAwMDAgKi8NCiNkZWZpbmUgUlRDX0NSX09TRUwgICAgICAgICAgICAgICAgICAgICAgICAgIFJUQ19DUl9PU0VMX01zayAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0NSX09TRUxfMCAgICAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFJUQ19DUl9PU0VMX1BvcykgICAgICAgICAvKiE8IDB4MDAyMDAwMDAgKi8NCiNkZWZpbmUgUlRDX0NSX09TRUxfMSAgICAgICAgICAgICAgICAgICAgICAgICgweDJVIDw8IFJUQ19DUl9PU0VMX1BvcykgICAgICAgICAvKiE8IDB4MDA0MDAwMDAgKi8NCiNkZWZpbmUgUlRDX0NSX1BPTF9Qb3MgICAgICAgICAgICAgICAgICAgICAgICgyMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0NSX1BPTF9Nc2sgICAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFJUQ19DUl9QT0xfUG9zKSAgICAgICAgICAvKiE8IDB4MDAxMDAwMDAgKi8NCiNkZWZpbmUgUlRDX0NSX1BPTCAgICAgICAgICAgICAgICAgICAgICAgICAgIFJUQ19DUl9QT0xfTXNrICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0NSX0NPU0VMX1BvcyAgICAgICAgICAgICAgICAgICAgICgxOVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0NSX0NPU0VMX01zayAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFJUQ19DUl9DT1NFTF9Qb3MpICAgICAgICAvKiE8IDB4MDAwODAwMDAgKi8NCiNkZWZpbmUgUlRDX0NSX0NPU0VMICAgICAgICAgICAgICAgICAgICAgICAgIFJUQ19DUl9DT1NFTF9Nc2sgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0NSX0JLUF9Qb3MgICAgICAgICAgICAgICAgICAgICAgICgxOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0NSX0JLUF9Nc2sgICAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFJUQ19DUl9CS1BfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwNDAwMDAgKi8NCiNkZWZpbmUgUlRDX0NSX0JLUCAgICAgICAgICAgICAgICAgICAgICAgICAgIFJUQ19DUl9CS1BfTXNrICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0NSX1NVQjFIX1BvcyAgICAgICAgICAgICAgICAgICAgICgxN1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0NSX1NVQjFIX01zayAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFJUQ19DUl9TVUIxSF9Qb3MpICAgICAgICAvKiE8IDB4MDAwMjAwMDAgKi8NCiNkZWZpbmUgUlRDX0NSX1NVQjFIICAgICAgICAgICAgICAgICAgICAgICAgIFJUQ19DUl9TVUIxSF9Nc2sgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0NSX0FERDFIX1BvcyAgICAgICAgICAgICAgICAgICAgICgxNlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0NSX0FERDFIX01zayAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFJUQ19DUl9BREQxSF9Qb3MpICAgICAgICAvKiE8IDB4MDAwMTAwMDAgKi8NCiNkZWZpbmUgUlRDX0NSX0FERDFIICAgICAgICAgICAgICAgICAgICAgICAgIFJUQ19DUl9BREQxSF9Nc2sgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0NSX1RTSUVfUG9zICAgICAgICAgICAgICAgICAgICAgICgxNVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0NSX1RTSUVfTXNrICAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFJUQ19DUl9UU0lFX1BvcykgICAgICAgICAvKiE8IDB4MDAwMDgwMDAgKi8NCiNkZWZpbmUgUlRDX0NSX1RTSUUgICAgICAgICAgICAgICAgICAgICAgICAgIFJUQ19DUl9UU0lFX01zayAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0NSX1dVVElFX1BvcyAgICAgICAgICAgICAgICAgICAgICgxNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0NSX1dVVElFX01zayAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFJUQ19DUl9XVVRJRV9Qb3MpICAgICAgICAvKiE8IDB4MDAwMDQwMDAgKi8NCiNkZWZpbmUgUlRDX0NSX1dVVElFICAgICAgICAgICAgICAgICAgICAgICAgIFJUQ19DUl9XVVRJRV9Nc2sgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0NSX0FMUkJJRV9Qb3MgICAgICAgICAgICAgICAgICAgICgxM1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0NSX0FMUkJJRV9Nc2sgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFJUQ19DUl9BTFJCSUVfUG9zKSAgICAgICAvKiE8IDB4MDAwMDIwMDAgKi8NCiNkZWZpbmUgUlRDX0NSX0FMUkJJRSAgICAgICAgICAgICAgICAgICAgICAgIFJUQ19DUl9BTFJCSUVfTXNrICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0NSX0FMUkFJRV9Qb3MgICAgICAgICAgICAgICAgICAgICgxMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0NSX0FMUkFJRV9Nc2sgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFJUQ19DUl9BTFJBSUVfUG9zKSAgICAgICAvKiE8IDB4MDAwMDEwMDAgKi8NCiNkZWZpbmUgUlRDX0NSX0FMUkFJRSAgICAgICAgICAgICAgICAgICAgICAgIFJUQ19DUl9BTFJBSUVfTXNrICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0NSX1RTRV9Qb3MgICAgICAgICAgICAgICAgICAgICAgICgxMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0NSX1RTRV9Nc2sgICAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFJUQ19DUl9UU0VfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDA4MDAgKi8NCiNkZWZpbmUgUlRDX0NSX1RTRSAgICAgICAgICAgICAgICAgICAgICAgICAgIFJUQ19DUl9UU0VfTXNrICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0NSX1dVVEVfUG9zICAgICAgICAgICAgICAgICAgICAgICgxMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0NSX1dVVEVfTXNrICAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFJUQ19DUl9XVVRFX1BvcykgICAgICAgICAvKiE8IDB4MDAwMDA0MDAgKi8NCiNkZWZpbmUgUlRDX0NSX1dVVEUgICAgICAgICAgICAgICAgICAgICAgICAgIFJUQ19DUl9XVVRFX01zayAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0NSX0FMUkJFX1BvcyAgICAgICAgICAgICAgICAgICAgICg5VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0NSX0FMUkJFX01zayAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFJUQ19DUl9BTFJCRV9Qb3MpICAgICAgICAvKiE8IDB4MDAwMDAyMDAgKi8NCiNkZWZpbmUgUlRDX0NSX0FMUkJFICAgICAgICAgICAgICAgICAgICAgICAgIFJUQ19DUl9BTFJCRV9Nc2sgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0NSX0FMUkFFX1BvcyAgICAgICAgICAgICAgICAgICAgICg4VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0NSX0FMUkFFX01zayAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFJUQ19DUl9BTFJBRV9Qb3MpICAgICAgICAvKiE8IDB4MDAwMDAxMDAgKi8NCiNkZWZpbmUgUlRDX0NSX0FMUkFFICAgICAgICAgICAgICAgICAgICAgICAgIFJUQ19DUl9BTFJBRV9Nc2sgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0NSX0RDRV9Qb3MgICAgICAgICAgICAgICAgICAgICAgICg3VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0NSX0RDRV9Nc2sgICAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFJUQ19DUl9EQ0VfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDAwODAgKi8NCiNkZWZpbmUgUlRDX0NSX0RDRSAgICAgICAgICAgICAgICAgICAgICAgICAgIFJUQ19DUl9EQ0VfTXNrICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0NSX0ZNVF9Qb3MgICAgICAgICAgICAgICAgICAgICAgICg2VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0NSX0ZNVF9Nc2sgICAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFJUQ19DUl9GTVRfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDAwNDAgKi8NCiNkZWZpbmUgUlRDX0NSX0ZNVCAgICAgICAgICAgICAgICAgICAgICAgICAgIFJUQ19DUl9GTVRfTXNrICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0NSX0JZUFNIQURfUG9zICAgICAgICAgICAgICAgICAgICg1VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0NSX0JZUFNIQURfTXNrICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFJUQ19DUl9CWVBTSEFEX1BvcykgICAgICAvKiE8IDB4MDAwMDAwMjAgKi8NCiNkZWZpbmUgUlRDX0NSX0JZUFNIQUQgICAgICAgICAgICAgICAgICAgICAgIFJUQ19DUl9CWVBTSEFEX01zayAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0NSX1JFRkNLT05fUG9zICAgICAgICAgICAgICAgICAgICg0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0NSX1JFRkNLT05fTXNrICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFJUQ19DUl9SRUZDS09OX1BvcykgICAgICAvKiE8IDB4MDAwMDAwMTAgKi8NCiNkZWZpbmUgUlRDX0NSX1JFRkNLT04gICAgICAgICAgICAgICAgICAgICAgIFJUQ19DUl9SRUZDS09OX01zayAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0NSX1RTRURHRV9Qb3MgICAgICAgICAgICAgICAgICAgICgzVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0NSX1RTRURHRV9Nc2sgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFJUQ19DUl9UU0VER0VfUG9zKSAgICAgICAvKiE8IDB4MDAwMDAwMDggKi8NCiNkZWZpbmUgUlRDX0NSX1RTRURHRSAgICAgICAgICAgICAgICAgICAgICAgIFJUQ19DUl9UU0VER0VfTXNrICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0NSX1dVQ0tTRUxfUG9zICAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0NSX1dVQ0tTRUxfTXNrICAgICAgICAgICAgICAgICAgICgweDdVIDw8IFJUQ19DUl9XVUNLU0VMX1BvcykgICAgICAvKiE8IDB4MDAwMDAwMDcgKi8NCiNkZWZpbmUgUlRDX0NSX1dVQ0tTRUwgICAgICAgICAgICAgICAgICAgICAgIFJUQ19DUl9XVUNLU0VMX01zayAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0NSX1dVQ0tTRUxfMCAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFJUQ19DUl9XVUNLU0VMX1BvcykgICAgICAvKiE8IDB4MDAwMDAwMDEgKi8NCiNkZWZpbmUgUlRDX0NSX1dVQ0tTRUxfMSAgICAgICAgICAgICAgICAgICAgICgweDJVIDw8IFJUQ19DUl9XVUNLU0VMX1BvcykgICAgICAvKiE8IDB4MDAwMDAwMDIgKi8NCiNkZWZpbmUgUlRDX0NSX1dVQ0tTRUxfMiAgICAgICAgICAgICAgICAgICAgICgweDRVIDw8IFJUQ19DUl9XVUNLU0VMX1BvcykgICAgICAvKiE8IDB4MDAwMDAwMDQgKi8NCg0KLyogTGVnYWN5IGRlZmluZXMgKi8NCiNkZWZpbmUgIFJUQ19DUl9CQ0tfUG9zIFJUQ19DUl9CS1BfUG9zDQojZGVmaW5lICBSVENfQ1JfQkNLX01zayBSVENfQ1JfQktQX01zaw0KI2RlZmluZSAgUlRDX0NSX0JDSyAgICAgUlRDX0NSX0JLUA0KDQovKioqKioqKioqKioqKioqKioqKiogIEJpdHMgZGVmaW5pdGlvbiBmb3IgUlRDX0lTUiByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBSVENfSVNSX1JFQ0FMUEZfUG9zICAgICAgICAgICAgICAgICAgKDE2VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfSVNSX1JFQ0FMUEZfTXNrICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgUlRDX0lTUl9SRUNBTFBGX1BvcykgICAgIC8qITwgMHgwMDAxMDAwMCAqLw0KI2RlZmluZSBSVENfSVNSX1JFQ0FMUEYgICAgICAgICAgICAgICAgICAgICAgUlRDX0lTUl9SRUNBTFBGX01zayAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfSVNSX1RBTVAzRl9Qb3MgICAgICAgICAgICAgICAgICAgKDE1VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfSVNSX1RBTVAzRl9Nc2sgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgUlRDX0lTUl9UQU1QM0ZfUG9zKSAgICAgIC8qITwgMHgwMDAwODAwMCAqLw0KI2RlZmluZSBSVENfSVNSX1RBTVAzRiAgICAgICAgICAgICAgICAgICAgICAgUlRDX0lTUl9UQU1QM0ZfTXNrICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfSVNSX1RBTVAyRl9Qb3MgICAgICAgICAgICAgICAgICAgKDE0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfSVNSX1RBTVAyRl9Nc2sgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgUlRDX0lTUl9UQU1QMkZfUG9zKSAgICAgIC8qITwgMHgwMDAwNDAwMCAqLw0KI2RlZmluZSBSVENfSVNSX1RBTVAyRiAgICAgICAgICAgICAgICAgICAgICAgUlRDX0lTUl9UQU1QMkZfTXNrICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfSVNSX1RBTVAxRl9Qb3MgICAgICAgICAgICAgICAgICAgKDEzVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfSVNSX1RBTVAxRl9Nc2sgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgUlRDX0lTUl9UQU1QMUZfUG9zKSAgICAgIC8qITwgMHgwMDAwMjAwMCAqLw0KI2RlZmluZSBSVENfSVNSX1RBTVAxRiAgICAgICAgICAgICAgICAgICAgICAgUlRDX0lTUl9UQU1QMUZfTXNrICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfSVNSX1RTT1ZGX1BvcyAgICAgICAgICAgICAgICAgICAgKDEyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfSVNSX1RTT1ZGX01zayAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgUlRDX0lTUl9UU09WRl9Qb3MpICAgICAgIC8qITwgMHgwMDAwMTAwMCAqLw0KI2RlZmluZSBSVENfSVNSX1RTT1ZGICAgICAgICAgICAgICAgICAgICAgICAgUlRDX0lTUl9UU09WRl9Nc2sgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfSVNSX1RTRl9Qb3MgICAgICAgICAgICAgICAgICAgICAgKDExVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfSVNSX1RTRl9Nc2sgICAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgUlRDX0lTUl9UU0ZfUG9zKSAgICAgICAgIC8qITwgMHgwMDAwMDgwMCAqLw0KI2RlZmluZSBSVENfSVNSX1RTRiAgICAgICAgICAgICAgICAgICAgICAgICAgUlRDX0lTUl9UU0ZfTXNrICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfSVNSX1dVVEZfUG9zICAgICAgICAgICAgICAgICAgICAgKDEwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfSVNSX1dVVEZfTXNrICAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgUlRDX0lTUl9XVVRGX1BvcykgICAgICAgIC8qITwgMHgwMDAwMDQwMCAqLw0KI2RlZmluZSBSVENfSVNSX1dVVEYgICAgICAgICAgICAgICAgICAgICAgICAgUlRDX0lTUl9XVVRGX01zayAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfSVNSX0FMUkJGX1BvcyAgICAgICAgICAgICAgICAgICAgKDlVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfSVNSX0FMUkJGX01zayAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgUlRDX0lTUl9BTFJCRl9Qb3MpICAgICAgIC8qITwgMHgwMDAwMDIwMCAqLw0KI2RlZmluZSBSVENfSVNSX0FMUkJGICAgICAgICAgICAgICAgICAgICAgICAgUlRDX0lTUl9BTFJCRl9Nc2sgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfSVNSX0FMUkFGX1BvcyAgICAgICAgICAgICAgICAgICAgKDhVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfSVNSX0FMUkFGX01zayAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgUlRDX0lTUl9BTFJBRl9Qb3MpICAgICAgIC8qITwgMHgwMDAwMDEwMCAqLw0KI2RlZmluZSBSVENfSVNSX0FMUkFGICAgICAgICAgICAgICAgICAgICAgICAgUlRDX0lTUl9BTFJBRl9Nc2sgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfSVNSX0lOSVRfUG9zICAgICAgICAgICAgICAgICAgICAgKDdVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfSVNSX0lOSVRfTXNrICAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgUlRDX0lTUl9JTklUX1BvcykgICAgICAgIC8qITwgMHgwMDAwMDA4MCAqLw0KI2RlZmluZSBSVENfSVNSX0lOSVQgICAgICAgICAgICAgICAgICAgICAgICAgUlRDX0lTUl9JTklUX01zayAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfSVNSX0lOSVRGX1BvcyAgICAgICAgICAgICAgICAgICAgKDZVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfSVNSX0lOSVRGX01zayAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgUlRDX0lTUl9JTklURl9Qb3MpICAgICAgIC8qITwgMHgwMDAwMDA0MCAqLw0KI2RlZmluZSBSVENfSVNSX0lOSVRGICAgICAgICAgICAgICAgICAgICAgICAgUlRDX0lTUl9JTklURl9Nc2sgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfSVNSX1JTRl9Qb3MgICAgICAgICAgICAgICAgICAgICAgKDVVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfSVNSX1JTRl9Nc2sgICAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgUlRDX0lTUl9SU0ZfUG9zKSAgICAgICAgIC8qITwgMHgwMDAwMDAyMCAqLw0KI2RlZmluZSBSVENfSVNSX1JTRiAgICAgICAgICAgICAgICAgICAgICAgICAgUlRDX0lTUl9SU0ZfTXNrICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfSVNSX0lOSVRTX1BvcyAgICAgICAgICAgICAgICAgICAgKDRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfSVNSX0lOSVRTX01zayAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgUlRDX0lTUl9JTklUU19Qb3MpICAgICAgIC8qITwgMHgwMDAwMDAxMCAqLw0KI2RlZmluZSBSVENfSVNSX0lOSVRTICAgICAgICAgICAgICAgICAgICAgICAgUlRDX0lTUl9JTklUU19Nc2sgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfSVNSX1NIUEZfUG9zICAgICAgICAgICAgICAgICAgICAgKDNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfSVNSX1NIUEZfTXNrICAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgUlRDX0lTUl9TSFBGX1BvcykgICAgICAgIC8qITwgMHgwMDAwMDAwOCAqLw0KI2RlZmluZSBSVENfSVNSX1NIUEYgICAgICAgICAgICAgICAgICAgICAgICAgUlRDX0lTUl9TSFBGX01zayAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfSVNSX1dVVFdGX1BvcyAgICAgICAgICAgICAgICAgICAgKDJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfSVNSX1dVVFdGX01zayAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgUlRDX0lTUl9XVVRXRl9Qb3MpICAgICAgIC8qITwgMHgwMDAwMDAwNCAqLw0KI2RlZmluZSBSVENfSVNSX1dVVFdGICAgICAgICAgICAgICAgICAgICAgICAgUlRDX0lTUl9XVVRXRl9Nc2sgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfSVNSX0FMUkJXRl9Qb3MgICAgICAgICAgICAgICAgICAgKDFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfSVNSX0FMUkJXRl9Nc2sgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgUlRDX0lTUl9BTFJCV0ZfUG9zKSAgICAgIC8qITwgMHgwMDAwMDAwMiAqLw0KI2RlZmluZSBSVENfSVNSX0FMUkJXRiAgICAgICAgICAgICAgICAgICAgICAgUlRDX0lTUl9BTFJCV0ZfTXNrICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfSVNSX0FMUkFXRl9Qb3MgICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfSVNSX0FMUkFXRl9Nc2sgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgUlRDX0lTUl9BTFJBV0ZfUG9zKSAgICAgIC8qITwgMHgwMDAwMDAwMSAqLw0KI2RlZmluZSBSVENfSVNSX0FMUkFXRiAgICAgICAgICAgICAgICAgICAgICAgUlRDX0lTUl9BTFJBV0ZfTXNrICAgICAgICAgICAgICAgIA0KDQovKioqKioqKioqKioqKioqKioqKiogIEJpdHMgZGVmaW5pdGlvbiBmb3IgUlRDX1BSRVIgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBSVENfUFJFUl9QUkVESVZfQV9Qb3MgICAgICAgICAgICAgICAgKDE2VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfUFJFUl9QUkVESVZfQV9Nc2sgICAgICAgICAgICAgICAgKDB4N0ZVIDw8IFJUQ19QUkVSX1BSRURJVl9BX1BvcykgIC8qITwgMHgwMDdGMDAwMCAqLw0KI2RlZmluZSBSVENfUFJFUl9QUkVESVZfQSAgICAgICAgICAgICAgICAgICAgUlRDX1BSRVJfUFJFRElWX0FfTXNrICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfUFJFUl9QUkVESVZfU19Qb3MgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfUFJFUl9QUkVESVZfU19Nc2sgICAgICAgICAgICAgICAgKDB4N0ZGRlUgPDwgUlRDX1BSRVJfUFJFRElWX1NfUG9zKSAvKiE8IDB4MDAwMDdGRkYgKi8NCiNkZWZpbmUgUlRDX1BSRVJfUFJFRElWX1MgICAgICAgICAgICAgICAgICAgIFJUQ19QUkVSX1BSRURJVl9TX01zayAgICAgICAgICAgICANCg0KLyoqKioqKioqKioqKioqKioqKioqICBCaXRzIGRlZmluaXRpb24gZm9yIFJUQ19XVVRSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgUlRDX1dVVFJfV1VUX1BvcyAgICAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX1dVVFJfV1VUX01zayAgICAgICAgICAgICAgICAgICAgICgweEZGRkZVIDw8IFJUQ19XVVRSX1dVVF9Qb3MpICAgICAvKiE8IDB4MDAwMEZGRkYgKi8NCiNkZWZpbmUgUlRDX1dVVFJfV1VUICAgICAgICAgICAgICAgICAgICAgICAgIFJUQ19XVVRSX1dVVF9Nc2sgICAgICAgICAgICAgICAgICANCg0KLyoqKioqKioqKioqKioqKioqKioqICBCaXRzIGRlZmluaXRpb24gZm9yIFJUQ19DQUxJQlIgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKi8NCiNkZWZpbmUgUlRDX0NBTElCUl9EQ1NfUG9zICAgICAgICAgICAgICAgICAgICg3VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0NBTElCUl9EQ1NfTXNrICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFJUQ19DQUxJQlJfRENTX1BvcykgICAgICAvKiE8IDB4MDAwMDAwODAgKi8NCiNkZWZpbmUgUlRDX0NBTElCUl9EQ1MgICAgICAgICAgICAgICAgICAgICAgIFJUQ19DQUxJQlJfRENTX01zayAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0NBTElCUl9EQ19Qb3MgICAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0NBTElCUl9EQ19Nc2sgICAgICAgICAgICAgICAgICAgICgweDFGVSA8PCBSVENfQ0FMSUJSX0RDX1BvcykgICAgICAvKiE8IDB4MDAwMDAwMUYgKi8NCiNkZWZpbmUgUlRDX0NBTElCUl9EQyAgICAgICAgICAgICAgICAgICAgICAgIFJUQ19DQUxJQlJfRENfTXNrICAgICAgICAgICAgICAgICANCg0KLyoqKioqKioqKioqKioqKioqKioqICBCaXRzIGRlZmluaXRpb24gZm9yIFJUQ19BTFJNQVIgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKi8NCiNkZWZpbmUgUlRDX0FMUk1BUl9NU0s0X1BvcyAgICAgICAgICAgICAgICAgICgzMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0FMUk1BUl9NU0s0X01zayAgICAgICAgICAgICAgICAgICgweDFVIDw8IFJUQ19BTFJNQVJfTVNLNF9Qb3MpICAgICAvKiE8IDB4ODAwMDAwMDAgKi8NCiNkZWZpbmUgUlRDX0FMUk1BUl9NU0s0ICAgICAgICAgICAgICAgICAgICAgIFJUQ19BTFJNQVJfTVNLNF9Nc2sgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0FMUk1BUl9XRFNFTF9Qb3MgICAgICAgICAgICAgICAgICgzMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0FMUk1BUl9XRFNFTF9Nc2sgICAgICAgICAgICAgICAgICgweDFVIDw8IFJUQ19BTFJNQVJfV0RTRUxfUG9zKSAgICAvKiE8IDB4NDAwMDAwMDAgKi8NCiNkZWZpbmUgUlRDX0FMUk1BUl9XRFNFTCAgICAgICAgICAgICAgICAgICAgIFJUQ19BTFJNQVJfV0RTRUxfTXNrICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0FMUk1BUl9EVF9Qb3MgICAgICAgICAgICAgICAgICAgICgyOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0FMUk1BUl9EVF9Nc2sgICAgICAgICAgICAgICAgICAgICgweDNVIDw8IFJUQ19BTFJNQVJfRFRfUG9zKSAgICAgICAvKiE8IDB4MzAwMDAwMDAgKi8NCiNkZWZpbmUgUlRDX0FMUk1BUl9EVCAgICAgICAgICAgICAgICAgICAgICAgIFJUQ19BTFJNQVJfRFRfTXNrICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0FMUk1BUl9EVF8wICAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFJUQ19BTFJNQVJfRFRfUG9zKSAgICAgICAvKiE8IDB4MTAwMDAwMDAgKi8NCiNkZWZpbmUgUlRDX0FMUk1BUl9EVF8xICAgICAgICAgICAgICAgICAgICAgICgweDJVIDw8IFJUQ19BTFJNQVJfRFRfUG9zKSAgICAgICAvKiE8IDB4MjAwMDAwMDAgKi8NCiNkZWZpbmUgUlRDX0FMUk1BUl9EVV9Qb3MgICAgICAgICAgICAgICAgICAgICgyNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0FMUk1BUl9EVV9Nc2sgICAgICAgICAgICAgICAgICAgICgweEZVIDw8IFJUQ19BTFJNQVJfRFVfUG9zKSAgICAgICAvKiE8IDB4MEYwMDAwMDAgKi8NCiNkZWZpbmUgUlRDX0FMUk1BUl9EVSAgICAgICAgICAgICAgICAgICAgICAgIFJUQ19BTFJNQVJfRFVfTXNrICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0FMUk1BUl9EVV8wICAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFJUQ19BTFJNQVJfRFVfUG9zKSAgICAgICAvKiE8IDB4MDEwMDAwMDAgKi8NCiNkZWZpbmUgUlRDX0FMUk1BUl9EVV8xICAgICAgICAgICAgICAgICAgICAgICgweDJVIDw8IFJUQ19BTFJNQVJfRFVfUG9zKSAgICAgICAvKiE8IDB4MDIwMDAwMDAgKi8NCiNkZWZpbmUgUlRDX0FMUk1BUl9EVV8yICAgICAgICAgICAgICAgICAgICAgICgweDRVIDw8IFJUQ19BTFJNQVJfRFVfUG9zKSAgICAgICAvKiE8IDB4MDQwMDAwMDAgKi8NCiNkZWZpbmUgUlRDX0FMUk1BUl9EVV8zICAgICAgICAgICAgICAgICAgICAgICgweDhVIDw8IFJUQ19BTFJNQVJfRFVfUG9zKSAgICAgICAvKiE8IDB4MDgwMDAwMDAgKi8NCiNkZWZpbmUgUlRDX0FMUk1BUl9NU0szX1BvcyAgICAgICAgICAgICAgICAgICgyM1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0FMUk1BUl9NU0szX01zayAgICAgICAgICAgICAgICAgICgweDFVIDw8IFJUQ19BTFJNQVJfTVNLM19Qb3MpICAgICAvKiE8IDB4MDA4MDAwMDAgKi8NCiNkZWZpbmUgUlRDX0FMUk1BUl9NU0szICAgICAgICAgICAgICAgICAgICAgIFJUQ19BTFJNQVJfTVNLM19Nc2sgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0FMUk1BUl9QTV9Qb3MgICAgICAgICAgICAgICAgICAgICgyMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0FMUk1BUl9QTV9Nc2sgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFJUQ19BTFJNQVJfUE1fUG9zKSAgICAgICAvKiE8IDB4MDA0MDAwMDAgKi8NCiNkZWZpbmUgUlRDX0FMUk1BUl9QTSAgICAgICAgICAgICAgICAgICAgICAgIFJUQ19BTFJNQVJfUE1fTXNrICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0FMUk1BUl9IVF9Qb3MgICAgICAgICAgICAgICAgICAgICgyMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0FMUk1BUl9IVF9Nc2sgICAgICAgICAgICAgICAgICAgICgweDNVIDw8IFJUQ19BTFJNQVJfSFRfUG9zKSAgICAgICAvKiE8IDB4MDAzMDAwMDAgKi8NCiNkZWZpbmUgUlRDX0FMUk1BUl9IVCAgICAgICAgICAgICAgICAgICAgICAgIFJUQ19BTFJNQVJfSFRfTXNrICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0FMUk1BUl9IVF8wICAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFJUQ19BTFJNQVJfSFRfUG9zKSAgICAgICAvKiE8IDB4MDAxMDAwMDAgKi8NCiNkZWZpbmUgUlRDX0FMUk1BUl9IVF8xICAgICAgICAgICAgICAgICAgICAgICgweDJVIDw8IFJUQ19BTFJNQVJfSFRfUG9zKSAgICAgICAvKiE8IDB4MDAyMDAwMDAgKi8NCiNkZWZpbmUgUlRDX0FMUk1BUl9IVV9Qb3MgICAgICAgICAgICAgICAgICAgICgxNlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0FMUk1BUl9IVV9Nc2sgICAgICAgICAgICAgICAgICAgICgweEZVIDw8IFJUQ19BTFJNQVJfSFVfUG9zKSAgICAgICAvKiE8IDB4MDAwRjAwMDAgKi8NCiNkZWZpbmUgUlRDX0FMUk1BUl9IVSAgICAgICAgICAgICAgICAgICAgICAgIFJUQ19BTFJNQVJfSFVfTXNrICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0FMUk1BUl9IVV8wICAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFJUQ19BTFJNQVJfSFVfUG9zKSAgICAgICAvKiE8IDB4MDAwMTAwMDAgKi8NCiNkZWZpbmUgUlRDX0FMUk1BUl9IVV8xICAgICAgICAgICAgICAgICAgICAgICgweDJVIDw8IFJUQ19BTFJNQVJfSFVfUG9zKSAgICAgICAvKiE8IDB4MDAwMjAwMDAgKi8NCiNkZWZpbmUgUlRDX0FMUk1BUl9IVV8yICAgICAgICAgICAgICAgICAgICAgICgweDRVIDw8IFJUQ19BTFJNQVJfSFVfUG9zKSAgICAgICAvKiE8IDB4MDAwNDAwMDAgKi8NCiNkZWZpbmUgUlRDX0FMUk1BUl9IVV8zICAgICAgICAgICAgICAgICAgICAgICgweDhVIDw8IFJUQ19BTFJNQVJfSFVfUG9zKSAgICAgICAvKiE8IDB4MDAwODAwMDAgKi8NCiNkZWZpbmUgUlRDX0FMUk1BUl9NU0syX1BvcyAgICAgICAgICAgICAgICAgICgxNVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0FMUk1BUl9NU0syX01zayAgICAgICAgICAgICAgICAgICgweDFVIDw8IFJUQ19BTFJNQVJfTVNLMl9Qb3MpICAgICAvKiE8IDB4MDAwMDgwMDAgKi8NCiNkZWZpbmUgUlRDX0FMUk1BUl9NU0syICAgICAgICAgICAgICAgICAgICAgIFJUQ19BTFJNQVJfTVNLMl9Nc2sgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0FMUk1BUl9NTlRfUG9zICAgICAgICAgICAgICAgICAgICgxMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0FMUk1BUl9NTlRfTXNrICAgICAgICAgICAgICAgICAgICgweDdVIDw8IFJUQ19BTFJNQVJfTU5UX1BvcykgICAgICAvKiE8IDB4MDAwMDcwMDAgKi8NCiNkZWZpbmUgUlRDX0FMUk1BUl9NTlQgICAgICAgICAgICAgICAgICAgICAgIFJUQ19BTFJNQVJfTU5UX01zayAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0FMUk1BUl9NTlRfMCAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFJUQ19BTFJNQVJfTU5UX1BvcykgICAgICAvKiE8IDB4MDAwMDEwMDAgKi8NCiNkZWZpbmUgUlRDX0FMUk1BUl9NTlRfMSAgICAgICAgICAgICAgICAgICAgICgweDJVIDw8IFJUQ19BTFJNQVJfTU5UX1BvcykgICAgICAvKiE8IDB4MDAwMDIwMDAgKi8NCiNkZWZpbmUgUlRDX0FMUk1BUl9NTlRfMiAgICAgICAgICAgICAgICAgICAgICgweDRVIDw8IFJUQ19BTFJNQVJfTU5UX1BvcykgICAgICAvKiE8IDB4MDAwMDQwMDAgKi8NCiNkZWZpbmUgUlRDX0FMUk1BUl9NTlVfUG9zICAgICAgICAgICAgICAgICAgICg4VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0FMUk1BUl9NTlVfTXNrICAgICAgICAgICAgICAgICAgICgweEZVIDw8IFJUQ19BTFJNQVJfTU5VX1BvcykgICAgICAvKiE8IDB4MDAwMDBGMDAgKi8NCiNkZWZpbmUgUlRDX0FMUk1BUl9NTlUgICAgICAgICAgICAgICAgICAgICAgIFJUQ19BTFJNQVJfTU5VX01zayAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0FMUk1BUl9NTlVfMCAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFJUQ19BTFJNQVJfTU5VX1BvcykgICAgICAvKiE8IDB4MDAwMDAxMDAgKi8NCiNkZWZpbmUgUlRDX0FMUk1BUl9NTlVfMSAgICAgICAgICAgICAgICAgICAgICgweDJVIDw8IFJUQ19BTFJNQVJfTU5VX1BvcykgICAgICAvKiE8IDB4MDAwMDAyMDAgKi8NCiNkZWZpbmUgUlRDX0FMUk1BUl9NTlVfMiAgICAgICAgICAgICAgICAgICAgICgweDRVIDw8IFJUQ19BTFJNQVJfTU5VX1BvcykgICAgICAvKiE8IDB4MDAwMDA0MDAgKi8NCiNkZWZpbmUgUlRDX0FMUk1BUl9NTlVfMyAgICAgICAgICAgICAgICAgICAgICgweDhVIDw8IFJUQ19BTFJNQVJfTU5VX1BvcykgICAgICAvKiE8IDB4MDAwMDA4MDAgKi8NCiNkZWZpbmUgUlRDX0FMUk1BUl9NU0sxX1BvcyAgICAgICAgICAgICAgICAgICg3VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0FMUk1BUl9NU0sxX01zayAgICAgICAgICAgICAgICAgICgweDFVIDw8IFJUQ19BTFJNQVJfTVNLMV9Qb3MpICAgICAvKiE8IDB4MDAwMDAwODAgKi8NCiNkZWZpbmUgUlRDX0FMUk1BUl9NU0sxICAgICAgICAgICAgICAgICAgICAgIFJUQ19BTFJNQVJfTVNLMV9Nc2sgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0FMUk1BUl9TVF9Qb3MgICAgICAgICAgICAgICAgICAgICg0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0FMUk1BUl9TVF9Nc2sgICAgICAgICAgICAgICAgICAgICgweDdVIDw8IFJUQ19BTFJNQVJfU1RfUG9zKSAgICAgICAvKiE8IDB4MDAwMDAwNzAgKi8NCiNkZWZpbmUgUlRDX0FMUk1BUl9TVCAgICAgICAgICAgICAgICAgICAgICAgIFJUQ19BTFJNQVJfU1RfTXNrICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0FMUk1BUl9TVF8wICAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFJUQ19BTFJNQVJfU1RfUG9zKSAgICAgICAvKiE8IDB4MDAwMDAwMTAgKi8NCiNkZWZpbmUgUlRDX0FMUk1BUl9TVF8xICAgICAgICAgICAgICAgICAgICAgICgweDJVIDw8IFJUQ19BTFJNQVJfU1RfUG9zKSAgICAgICAvKiE8IDB4MDAwMDAwMjAgKi8NCiNkZWZpbmUgUlRDX0FMUk1BUl9TVF8yICAgICAgICAgICAgICAgICAgICAgICgweDRVIDw8IFJUQ19BTFJNQVJfU1RfUG9zKSAgICAgICAvKiE8IDB4MDAwMDAwNDAgKi8NCiNkZWZpbmUgUlRDX0FMUk1BUl9TVV9Qb3MgICAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0FMUk1BUl9TVV9Nc2sgICAgICAgICAgICAgICAgICAgICgweEZVIDw8IFJUQ19BTFJNQVJfU1VfUG9zKSAgICAgICAvKiE8IDB4MDAwMDAwMEYgKi8NCiNkZWZpbmUgUlRDX0FMUk1BUl9TVSAgICAgICAgICAgICAgICAgICAgICAgIFJUQ19BTFJNQVJfU1VfTXNrICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0FMUk1BUl9TVV8wICAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFJUQ19BTFJNQVJfU1VfUG9zKSAgICAgICAvKiE8IDB4MDAwMDAwMDEgKi8NCiNkZWZpbmUgUlRDX0FMUk1BUl9TVV8xICAgICAgICAgICAgICAgICAgICAgICgweDJVIDw8IFJUQ19BTFJNQVJfU1VfUG9zKSAgICAgICAvKiE8IDB4MDAwMDAwMDIgKi8NCiNkZWZpbmUgUlRDX0FMUk1BUl9TVV8yICAgICAgICAgICAgICAgICAgICAgICgweDRVIDw8IFJUQ19BTFJNQVJfU1VfUG9zKSAgICAgICAvKiE8IDB4MDAwMDAwMDQgKi8NCiNkZWZpbmUgUlRDX0FMUk1BUl9TVV8zICAgICAgICAgICAgICAgICAgICAgICgweDhVIDw8IFJUQ19BTFJNQVJfU1VfUG9zKSAgICAgICAvKiE8IDB4MDAwMDAwMDggKi8NCg0KLyoqKioqKioqKioqKioqKioqKioqICBCaXRzIGRlZmluaXRpb24gZm9yIFJUQ19BTFJNQlIgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKi8NCiNkZWZpbmUgUlRDX0FMUk1CUl9NU0s0X1BvcyAgICAgICAgICAgICAgICAgICgzMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0FMUk1CUl9NU0s0X01zayAgICAgICAgICAgICAgICAgICgweDFVIDw8IFJUQ19BTFJNQlJfTVNLNF9Qb3MpICAgICAvKiE8IDB4ODAwMDAwMDAgKi8NCiNkZWZpbmUgUlRDX0FMUk1CUl9NU0s0ICAgICAgICAgICAgICAgICAgICAgIFJUQ19BTFJNQlJfTVNLNF9Nc2sgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0FMUk1CUl9XRFNFTF9Qb3MgICAgICAgICAgICAgICAgICgzMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0FMUk1CUl9XRFNFTF9Nc2sgICAgICAgICAgICAgICAgICgweDFVIDw8IFJUQ19BTFJNQlJfV0RTRUxfUG9zKSAgICAvKiE8IDB4NDAwMDAwMDAgKi8NCiNkZWZpbmUgUlRDX0FMUk1CUl9XRFNFTCAgICAgICAgICAgICAgICAgICAgIFJUQ19BTFJNQlJfV0RTRUxfTXNrICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0FMUk1CUl9EVF9Qb3MgICAgICAgICAgICAgICAgICAgICgyOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0FMUk1CUl9EVF9Nc2sgICAgICAgICAgICAgICAgICAgICgweDNVIDw8IFJUQ19BTFJNQlJfRFRfUG9zKSAgICAgICAvKiE8IDB4MzAwMDAwMDAgKi8NCiNkZWZpbmUgUlRDX0FMUk1CUl9EVCAgICAgICAgICAgICAgICAgICAgICAgIFJUQ19BTFJNQlJfRFRfTXNrICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0FMUk1CUl9EVF8wICAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFJUQ19BTFJNQlJfRFRfUG9zKSAgICAgICAvKiE8IDB4MTAwMDAwMDAgKi8NCiNkZWZpbmUgUlRDX0FMUk1CUl9EVF8xICAgICAgICAgICAgICAgICAgICAgICgweDJVIDw8IFJUQ19BTFJNQlJfRFRfUG9zKSAgICAgICAvKiE8IDB4MjAwMDAwMDAgKi8NCiNkZWZpbmUgUlRDX0FMUk1CUl9EVV9Qb3MgICAgICAgICAgICAgICAgICAgICgyNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0FMUk1CUl9EVV9Nc2sgICAgICAgICAgICAgICAgICAgICgweEZVIDw8IFJUQ19BTFJNQlJfRFVfUG9zKSAgICAgICAvKiE8IDB4MEYwMDAwMDAgKi8NCiNkZWZpbmUgUlRDX0FMUk1CUl9EVSAgICAgICAgICAgICAgICAgICAgICAgIFJUQ19BTFJNQlJfRFVfTXNrICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0FMUk1CUl9EVV8wICAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFJUQ19BTFJNQlJfRFVfUG9zKSAgICAgICAvKiE8IDB4MDEwMDAwMDAgKi8NCiNkZWZpbmUgUlRDX0FMUk1CUl9EVV8xICAgICAgICAgICAgICAgICAgICAgICgweDJVIDw8IFJUQ19BTFJNQlJfRFVfUG9zKSAgICAgICAvKiE8IDB4MDIwMDAwMDAgKi8NCiNkZWZpbmUgUlRDX0FMUk1CUl9EVV8yICAgICAgICAgICAgICAgICAgICAgICgweDRVIDw8IFJUQ19BTFJNQlJfRFVfUG9zKSAgICAgICAvKiE8IDB4MDQwMDAwMDAgKi8NCiNkZWZpbmUgUlRDX0FMUk1CUl9EVV8zICAgICAgICAgICAgICAgICAgICAgICgweDhVIDw8IFJUQ19BTFJNQlJfRFVfUG9zKSAgICAgICAvKiE8IDB4MDgwMDAwMDAgKi8NCiNkZWZpbmUgUlRDX0FMUk1CUl9NU0szX1BvcyAgICAgICAgICAgICAgICAgICgyM1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0FMUk1CUl9NU0szX01zayAgICAgICAgICAgICAgICAgICgweDFVIDw8IFJUQ19BTFJNQlJfTVNLM19Qb3MpICAgICAvKiE8IDB4MDA4MDAwMDAgKi8NCiNkZWZpbmUgUlRDX0FMUk1CUl9NU0szICAgICAgICAgICAgICAgICAgICAgIFJUQ19BTFJNQlJfTVNLM19Nc2sgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0FMUk1CUl9QTV9Qb3MgICAgICAgICAgICAgICAgICAgICgyMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0FMUk1CUl9QTV9Nc2sgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFJUQ19BTFJNQlJfUE1fUG9zKSAgICAgICAvKiE8IDB4MDA0MDAwMDAgKi8NCiNkZWZpbmUgUlRDX0FMUk1CUl9QTSAgICAgICAgICAgICAgICAgICAgICAgIFJUQ19BTFJNQlJfUE1fTXNrICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0FMUk1CUl9IVF9Qb3MgICAgICAgICAgICAgICAgICAgICgyMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0FMUk1CUl9IVF9Nc2sgICAgICAgICAgICAgICAgICAgICgweDNVIDw8IFJUQ19BTFJNQlJfSFRfUG9zKSAgICAgICAvKiE8IDB4MDAzMDAwMDAgKi8NCiNkZWZpbmUgUlRDX0FMUk1CUl9IVCAgICAgICAgICAgICAgICAgICAgICAgIFJUQ19BTFJNQlJfSFRfTXNrICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0FMUk1CUl9IVF8wICAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFJUQ19BTFJNQlJfSFRfUG9zKSAgICAgICAvKiE8IDB4MDAxMDAwMDAgKi8NCiNkZWZpbmUgUlRDX0FMUk1CUl9IVF8xICAgICAgICAgICAgICAgICAgICAgICgweDJVIDw8IFJUQ19BTFJNQlJfSFRfUG9zKSAgICAgICAvKiE8IDB4MDAyMDAwMDAgKi8NCiNkZWZpbmUgUlRDX0FMUk1CUl9IVV9Qb3MgICAgICAgICAgICAgICAgICAgICgxNlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0FMUk1CUl9IVV9Nc2sgICAgICAgICAgICAgICAgICAgICgweEZVIDw8IFJUQ19BTFJNQlJfSFVfUG9zKSAgICAgICAvKiE8IDB4MDAwRjAwMDAgKi8NCiNkZWZpbmUgUlRDX0FMUk1CUl9IVSAgICAgICAgICAgICAgICAgICAgICAgIFJUQ19BTFJNQlJfSFVfTXNrICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0FMUk1CUl9IVV8wICAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFJUQ19BTFJNQlJfSFVfUG9zKSAgICAgICAvKiE8IDB4MDAwMTAwMDAgKi8NCiNkZWZpbmUgUlRDX0FMUk1CUl9IVV8xICAgICAgICAgICAgICAgICAgICAgICgweDJVIDw8IFJUQ19BTFJNQlJfSFVfUG9zKSAgICAgICAvKiE8IDB4MDAwMjAwMDAgKi8NCiNkZWZpbmUgUlRDX0FMUk1CUl9IVV8yICAgICAgICAgICAgICAgICAgICAgICgweDRVIDw8IFJUQ19BTFJNQlJfSFVfUG9zKSAgICAgICAvKiE8IDB4MDAwNDAwMDAgKi8NCiNkZWZpbmUgUlRDX0FMUk1CUl9IVV8zICAgICAgICAgICAgICAgICAgICAgICgweDhVIDw8IFJUQ19BTFJNQlJfSFVfUG9zKSAgICAgICAvKiE8IDB4MDAwODAwMDAgKi8NCiNkZWZpbmUgUlRDX0FMUk1CUl9NU0syX1BvcyAgICAgICAgICAgICAgICAgICgxNVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0FMUk1CUl9NU0syX01zayAgICAgICAgICAgICAgICAgICgweDFVIDw8IFJUQ19BTFJNQlJfTVNLMl9Qb3MpICAgICAvKiE8IDB4MDAwMDgwMDAgKi8NCiNkZWZpbmUgUlRDX0FMUk1CUl9NU0syICAgICAgICAgICAgICAgICAgICAgIFJUQ19BTFJNQlJfTVNLMl9Nc2sgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0FMUk1CUl9NTlRfUG9zICAgICAgICAgICAgICAgICAgICgxMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0FMUk1CUl9NTlRfTXNrICAgICAgICAgICAgICAgICAgICgweDdVIDw8IFJUQ19BTFJNQlJfTU5UX1BvcykgICAgICAvKiE8IDB4MDAwMDcwMDAgKi8NCiNkZWZpbmUgUlRDX0FMUk1CUl9NTlQgICAgICAgICAgICAgICAgICAgICAgIFJUQ19BTFJNQlJfTU5UX01zayAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0FMUk1CUl9NTlRfMCAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFJUQ19BTFJNQlJfTU5UX1BvcykgICAgICAvKiE8IDB4MDAwMDEwMDAgKi8NCiNkZWZpbmUgUlRDX0FMUk1CUl9NTlRfMSAgICAgICAgICAgICAgICAgICAgICgweDJVIDw8IFJUQ19BTFJNQlJfTU5UX1BvcykgICAgICAvKiE8IDB4MDAwMDIwMDAgKi8NCiNkZWZpbmUgUlRDX0FMUk1CUl9NTlRfMiAgICAgICAgICAgICAgICAgICAgICgweDRVIDw8IFJUQ19BTFJNQlJfTU5UX1BvcykgICAgICAvKiE8IDB4MDAwMDQwMDAgKi8NCiNkZWZpbmUgUlRDX0FMUk1CUl9NTlVfUG9zICAgICAgICAgICAgICAgICAgICg4VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0FMUk1CUl9NTlVfTXNrICAgICAgICAgICAgICAgICAgICgweEZVIDw8IFJUQ19BTFJNQlJfTU5VX1BvcykgICAgICAvKiE8IDB4MDAwMDBGMDAgKi8NCiNkZWZpbmUgUlRDX0FMUk1CUl9NTlUgICAgICAgICAgICAgICAgICAgICAgIFJUQ19BTFJNQlJfTU5VX01zayAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0FMUk1CUl9NTlVfMCAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFJUQ19BTFJNQlJfTU5VX1BvcykgICAgICAvKiE8IDB4MDAwMDAxMDAgKi8NCiNkZWZpbmUgUlRDX0FMUk1CUl9NTlVfMSAgICAgICAgICAgICAgICAgICAgICgweDJVIDw8IFJUQ19BTFJNQlJfTU5VX1BvcykgICAgICAvKiE8IDB4MDAwMDAyMDAgKi8NCiNkZWZpbmUgUlRDX0FMUk1CUl9NTlVfMiAgICAgICAgICAgICAgICAgICAgICgweDRVIDw8IFJUQ19BTFJNQlJfTU5VX1BvcykgICAgICAvKiE8IDB4MDAwMDA0MDAgKi8NCiNkZWZpbmUgUlRDX0FMUk1CUl9NTlVfMyAgICAgICAgICAgICAgICAgICAgICgweDhVIDw8IFJUQ19BTFJNQlJfTU5VX1BvcykgICAgICAvKiE8IDB4MDAwMDA4MDAgKi8NCiNkZWZpbmUgUlRDX0FMUk1CUl9NU0sxX1BvcyAgICAgICAgICAgICAgICAgICg3VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0FMUk1CUl9NU0sxX01zayAgICAgICAgICAgICAgICAgICgweDFVIDw8IFJUQ19BTFJNQlJfTVNLMV9Qb3MpICAgICAvKiE8IDB4MDAwMDAwODAgKi8NCiNkZWZpbmUgUlRDX0FMUk1CUl9NU0sxICAgICAgICAgICAgICAgICAgICAgIFJUQ19BTFJNQlJfTVNLMV9Nc2sgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0FMUk1CUl9TVF9Qb3MgICAgICAgICAgICAgICAgICAgICg0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0FMUk1CUl9TVF9Nc2sgICAgICAgICAgICAgICAgICAgICgweDdVIDw8IFJUQ19BTFJNQlJfU1RfUG9zKSAgICAgICAvKiE8IDB4MDAwMDAwNzAgKi8NCiNkZWZpbmUgUlRDX0FMUk1CUl9TVCAgICAgICAgICAgICAgICAgICAgICAgIFJUQ19BTFJNQlJfU1RfTXNrICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0FMUk1CUl9TVF8wICAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFJUQ19BTFJNQlJfU1RfUG9zKSAgICAgICAvKiE8IDB4MDAwMDAwMTAgKi8NCiNkZWZpbmUgUlRDX0FMUk1CUl9TVF8xICAgICAgICAgICAgICAgICAgICAgICgweDJVIDw8IFJUQ19BTFJNQlJfU1RfUG9zKSAgICAgICAvKiE8IDB4MDAwMDAwMjAgKi8NCiNkZWZpbmUgUlRDX0FMUk1CUl9TVF8yICAgICAgICAgICAgICAgICAgICAgICgweDRVIDw8IFJUQ19BTFJNQlJfU1RfUG9zKSAgICAgICAvKiE8IDB4MDAwMDAwNDAgKi8NCiNkZWZpbmUgUlRDX0FMUk1CUl9TVV9Qb3MgICAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0FMUk1CUl9TVV9Nc2sgICAgICAgICAgICAgICAgICAgICgweEZVIDw8IFJUQ19BTFJNQlJfU1VfUG9zKSAgICAgICAvKiE8IDB4MDAwMDAwMEYgKi8NCiNkZWZpbmUgUlRDX0FMUk1CUl9TVSAgICAgICAgICAgICAgICAgICAgICAgIFJUQ19BTFJNQlJfU1VfTXNrICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0FMUk1CUl9TVV8wICAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFJUQ19BTFJNQlJfU1VfUG9zKSAgICAgICAvKiE8IDB4MDAwMDAwMDEgKi8NCiNkZWZpbmUgUlRDX0FMUk1CUl9TVV8xICAgICAgICAgICAgICAgICAgICAgICgweDJVIDw8IFJUQ19BTFJNQlJfU1VfUG9zKSAgICAgICAvKiE8IDB4MDAwMDAwMDIgKi8NCiNkZWZpbmUgUlRDX0FMUk1CUl9TVV8yICAgICAgICAgICAgICAgICAgICAgICgweDRVIDw8IFJUQ19BTFJNQlJfU1VfUG9zKSAgICAgICAvKiE8IDB4MDAwMDAwMDQgKi8NCiNkZWZpbmUgUlRDX0FMUk1CUl9TVV8zICAgICAgICAgICAgICAgICAgICAgICgweDhVIDw8IFJUQ19BTFJNQlJfU1VfUG9zKSAgICAgICAvKiE8IDB4MDAwMDAwMDggKi8NCg0KLyoqKioqKioqKioqKioqKioqKioqICBCaXRzIGRlZmluaXRpb24gZm9yIFJUQ19XUFIgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgUlRDX1dQUl9LRVlfUG9zICAgICAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX1dQUl9LRVlfTXNrICAgICAgICAgICAgICAgICAgICAgICgweEZGVSA8PCBSVENfV1BSX0tFWV9Qb3MpICAgICAgICAvKiE8IDB4MDAwMDAwRkYgKi8NCiNkZWZpbmUgUlRDX1dQUl9LRVkgICAgICAgICAgICAgICAgICAgICAgICAgIFJUQ19XUFJfS0VZX01zayAgICAgICAgICAgICAgICAgICANCg0KLyoqKioqKioqKioqKioqKioqKioqICBCaXRzIGRlZmluaXRpb24gZm9yIFJUQ19TU1IgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgUlRDX1NTUl9TU19Qb3MgICAgICAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX1NTUl9TU19Nc2sgICAgICAgICAgICAgICAgICAgICAgICgweEZGRkZVIDw8IFJUQ19TU1JfU1NfUG9zKSAgICAgICAvKiE8IDB4MDAwMEZGRkYgKi8NCiNkZWZpbmUgUlRDX1NTUl9TUyAgICAgICAgICAgICAgICAgICAgICAgICAgIFJUQ19TU1JfU1NfTXNrICAgICAgICAgICAgICAgICAgICANCg0KLyoqKioqKioqKioqKioqKioqKioqICBCaXRzIGRlZmluaXRpb24gZm9yIFJUQ19TSElGVFIgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKi8NCiNkZWZpbmUgUlRDX1NISUZUUl9TVUJGU19Qb3MgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX1NISUZUUl9TVUJGU19Nc2sgICAgICAgICAgICAgICAgICgweDdGRkZVIDw8IFJUQ19TSElGVFJfU1VCRlNfUG9zKSAvKiE8IDB4MDAwMDdGRkYgKi8NCiNkZWZpbmUgUlRDX1NISUZUUl9TVUJGUyAgICAgICAgICAgICAgICAgICAgIFJUQ19TSElGVFJfU1VCRlNfTXNrICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX1NISUZUUl9BREQxU19Qb3MgICAgICAgICAgICAgICAgICgzMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX1NISUZUUl9BREQxU19Nc2sgICAgICAgICAgICAgICAgICgweDFVIDw8IFJUQ19TSElGVFJfQUREMVNfUG9zKSAgICAvKiE8IDB4ODAwMDAwMDAgKi8NCiNkZWZpbmUgUlRDX1NISUZUUl9BREQxUyAgICAgICAgICAgICAgICAgICAgIFJUQ19TSElGVFJfQUREMVNfTXNrICAgICAgICAgICAgICANCg0KLyoqKioqKioqKioqKioqKioqKioqICBCaXRzIGRlZmluaXRpb24gZm9yIFJUQ19UU1RSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgUlRDX1RTVFJfUE1fUG9zICAgICAgICAgICAgICAgICAgICAgICgyMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX1RTVFJfUE1fTXNrICAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFJUQ19UU1RSX1BNX1BvcykgICAgICAgICAvKiE8IDB4MDA0MDAwMDAgKi8NCiNkZWZpbmUgUlRDX1RTVFJfUE0gICAgICAgICAgICAgICAgICAgICAgICAgIFJUQ19UU1RSX1BNX01zayAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX1RTVFJfSFRfUG9zICAgICAgICAgICAgICAgICAgICAgICgyMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX1RTVFJfSFRfTXNrICAgICAgICAgICAgICAgICAgICAgICgweDNVIDw8IFJUQ19UU1RSX0hUX1BvcykgICAgICAgICAvKiE8IDB4MDAzMDAwMDAgKi8NCiNkZWZpbmUgUlRDX1RTVFJfSFQgICAgICAgICAgICAgICAgICAgICAgICAgIFJUQ19UU1RSX0hUX01zayAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX1RTVFJfSFRfMCAgICAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFJUQ19UU1RSX0hUX1BvcykgICAgICAgICAvKiE8IDB4MDAxMDAwMDAgKi8NCiNkZWZpbmUgUlRDX1RTVFJfSFRfMSAgICAgICAgICAgICAgICAgICAgICAgICgweDJVIDw8IFJUQ19UU1RSX0hUX1BvcykgICAgICAgICAvKiE8IDB4MDAyMDAwMDAgKi8NCiNkZWZpbmUgUlRDX1RTVFJfSFVfUG9zICAgICAgICAgICAgICAgICAgICAgICgxNlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX1RTVFJfSFVfTXNrICAgICAgICAgICAgICAgICAgICAgICgweEZVIDw8IFJUQ19UU1RSX0hVX1BvcykgICAgICAgICAvKiE8IDB4MDAwRjAwMDAgKi8NCiNkZWZpbmUgUlRDX1RTVFJfSFUgICAgICAgICAgICAgICAgICAgICAgICAgIFJUQ19UU1RSX0hVX01zayAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX1RTVFJfSFVfMCAgICAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFJUQ19UU1RSX0hVX1BvcykgICAgICAgICAvKiE8IDB4MDAwMTAwMDAgKi8NCiNkZWZpbmUgUlRDX1RTVFJfSFVfMSAgICAgICAgICAgICAgICAgICAgICAgICgweDJVIDw8IFJUQ19UU1RSX0hVX1BvcykgICAgICAgICAvKiE8IDB4MDAwMjAwMDAgKi8NCiNkZWZpbmUgUlRDX1RTVFJfSFVfMiAgICAgICAgICAgICAgICAgICAgICAgICgweDRVIDw8IFJUQ19UU1RSX0hVX1BvcykgICAgICAgICAvKiE8IDB4MDAwNDAwMDAgKi8NCiNkZWZpbmUgUlRDX1RTVFJfSFVfMyAgICAgICAgICAgICAgICAgICAgICAgICgweDhVIDw8IFJUQ19UU1RSX0hVX1BvcykgICAgICAgICAvKiE8IDB4MDAwODAwMDAgKi8NCiNkZWZpbmUgUlRDX1RTVFJfTU5UX1BvcyAgICAgICAgICAgICAgICAgICAgICgxMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX1RTVFJfTU5UX01zayAgICAgICAgICAgICAgICAgICAgICgweDdVIDw8IFJUQ19UU1RSX01OVF9Qb3MpICAgICAgICAvKiE8IDB4MDAwMDcwMDAgKi8NCiNkZWZpbmUgUlRDX1RTVFJfTU5UICAgICAgICAgICAgICAgICAgICAgICAgIFJUQ19UU1RSX01OVF9Nc2sgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX1RTVFJfTU5UXzAgICAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFJUQ19UU1RSX01OVF9Qb3MpICAgICAgICAvKiE8IDB4MDAwMDEwMDAgKi8NCiNkZWZpbmUgUlRDX1RTVFJfTU5UXzEgICAgICAgICAgICAgICAgICAgICAgICgweDJVIDw8IFJUQ19UU1RSX01OVF9Qb3MpICAgICAgICAvKiE8IDB4MDAwMDIwMDAgKi8NCiNkZWZpbmUgUlRDX1RTVFJfTU5UXzIgICAgICAgICAgICAgICAgICAgICAgICgweDRVIDw8IFJUQ19UU1RSX01OVF9Qb3MpICAgICAgICAvKiE8IDB4MDAwMDQwMDAgKi8NCiNkZWZpbmUgUlRDX1RTVFJfTU5VX1BvcyAgICAgICAgICAgICAgICAgICAgICg4VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX1RTVFJfTU5VX01zayAgICAgICAgICAgICAgICAgICAgICgweEZVIDw8IFJUQ19UU1RSX01OVV9Qb3MpICAgICAgICAvKiE8IDB4MDAwMDBGMDAgKi8NCiNkZWZpbmUgUlRDX1RTVFJfTU5VICAgICAgICAgICAgICAgICAgICAgICAgIFJUQ19UU1RSX01OVV9Nc2sgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX1RTVFJfTU5VXzAgICAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFJUQ19UU1RSX01OVV9Qb3MpICAgICAgICAvKiE8IDB4MDAwMDAxMDAgKi8NCiNkZWZpbmUgUlRDX1RTVFJfTU5VXzEgICAgICAgICAgICAgICAgICAgICAgICgweDJVIDw8IFJUQ19UU1RSX01OVV9Qb3MpICAgICAgICAvKiE8IDB4MDAwMDAyMDAgKi8NCiNkZWZpbmUgUlRDX1RTVFJfTU5VXzIgICAgICAgICAgICAgICAgICAgICAgICgweDRVIDw8IFJUQ19UU1RSX01OVV9Qb3MpICAgICAgICAvKiE8IDB4MDAwMDA0MDAgKi8NCiNkZWZpbmUgUlRDX1RTVFJfTU5VXzMgICAgICAgICAgICAgICAgICAgICAgICgweDhVIDw8IFJUQ19UU1RSX01OVV9Qb3MpICAgICAgICAvKiE8IDB4MDAwMDA4MDAgKi8NCiNkZWZpbmUgUlRDX1RTVFJfU1RfUG9zICAgICAgICAgICAgICAgICAgICAgICg0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX1RTVFJfU1RfTXNrICAgICAgICAgICAgICAgICAgICAgICgweDdVIDw8IFJUQ19UU1RSX1NUX1BvcykgICAgICAgICAvKiE8IDB4MDAwMDAwNzAgKi8NCiNkZWZpbmUgUlRDX1RTVFJfU1QgICAgICAgICAgICAgICAgICAgICAgICAgIFJUQ19UU1RSX1NUX01zayAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX1RTVFJfU1RfMCAgICAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFJUQ19UU1RSX1NUX1BvcykgICAgICAgICAvKiE8IDB4MDAwMDAwMTAgKi8NCiNkZWZpbmUgUlRDX1RTVFJfU1RfMSAgICAgICAgICAgICAgICAgICAgICAgICgweDJVIDw8IFJUQ19UU1RSX1NUX1BvcykgICAgICAgICAvKiE8IDB4MDAwMDAwMjAgKi8NCiNkZWZpbmUgUlRDX1RTVFJfU1RfMiAgICAgICAgICAgICAgICAgICAgICAgICgweDRVIDw8IFJUQ19UU1RSX1NUX1BvcykgICAgICAgICAvKiE8IDB4MDAwMDAwNDAgKi8NCiNkZWZpbmUgUlRDX1RTVFJfU1VfUG9zICAgICAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX1RTVFJfU1VfTXNrICAgICAgICAgICAgICAgICAgICAgICgweEZVIDw8IFJUQ19UU1RSX1NVX1BvcykgICAgICAgICAvKiE8IDB4MDAwMDAwMEYgKi8NCiNkZWZpbmUgUlRDX1RTVFJfU1UgICAgICAgICAgICAgICAgICAgICAgICAgIFJUQ19UU1RSX1NVX01zayAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX1RTVFJfU1VfMCAgICAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFJUQ19UU1RSX1NVX1BvcykgICAgICAgICAvKiE8IDB4MDAwMDAwMDEgKi8NCiNkZWZpbmUgUlRDX1RTVFJfU1VfMSAgICAgICAgICAgICAgICAgICAgICAgICgweDJVIDw8IFJUQ19UU1RSX1NVX1BvcykgICAgICAgICAvKiE8IDB4MDAwMDAwMDIgKi8NCiNkZWZpbmUgUlRDX1RTVFJfU1VfMiAgICAgICAgICAgICAgICAgICAgICAgICgweDRVIDw8IFJUQ19UU1RSX1NVX1BvcykgICAgICAgICAvKiE8IDB4MDAwMDAwMDQgKi8NCiNkZWZpbmUgUlRDX1RTVFJfU1VfMyAgICAgICAgICAgICAgICAgICAgICAgICgweDhVIDw8IFJUQ19UU1RSX1NVX1BvcykgICAgICAgICAvKiE8IDB4MDAwMDAwMDggKi8NCg0KLyoqKioqKioqKioqKioqKioqKioqICBCaXRzIGRlZmluaXRpb24gZm9yIFJUQ19UU0RSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgUlRDX1RTRFJfV0RVX1BvcyAgICAgICAgICAgICAgICAgICAgICgxM1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX1RTRFJfV0RVX01zayAgICAgICAgICAgICAgICAgICAgICgweDdVIDw8IFJUQ19UU0RSX1dEVV9Qb3MpICAgICAgICAvKiE8IDB4MDAwMEUwMDAgKi8NCiNkZWZpbmUgUlRDX1RTRFJfV0RVICAgICAgICAgICAgICAgICAgICAgICAgIFJUQ19UU0RSX1dEVV9Nc2sgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX1RTRFJfV0RVXzAgICAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFJUQ19UU0RSX1dEVV9Qb3MpICAgICAgICAvKiE8IDB4MDAwMDIwMDAgKi8NCiNkZWZpbmUgUlRDX1RTRFJfV0RVXzEgICAgICAgICAgICAgICAgICAgICAgICgweDJVIDw8IFJUQ19UU0RSX1dEVV9Qb3MpICAgICAgICAvKiE8IDB4MDAwMDQwMDAgKi8NCiNkZWZpbmUgUlRDX1RTRFJfV0RVXzIgICAgICAgICAgICAgICAgICAgICAgICgweDRVIDw8IFJUQ19UU0RSX1dEVV9Qb3MpICAgICAgICAvKiE8IDB4MDAwMDgwMDAgKi8NCiNkZWZpbmUgUlRDX1RTRFJfTVRfUG9zICAgICAgICAgICAgICAgICAgICAgICgxMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX1RTRFJfTVRfTXNrICAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFJUQ19UU0RSX01UX1BvcykgICAgICAgICAvKiE8IDB4MDAwMDEwMDAgKi8NCiNkZWZpbmUgUlRDX1RTRFJfTVQgICAgICAgICAgICAgICAgICAgICAgICAgIFJUQ19UU0RSX01UX01zayAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX1RTRFJfTVVfUG9zICAgICAgICAgICAgICAgICAgICAgICg4VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX1RTRFJfTVVfTXNrICAgICAgICAgICAgICAgICAgICAgICgweEZVIDw8IFJUQ19UU0RSX01VX1BvcykgICAgICAgICAvKiE8IDB4MDAwMDBGMDAgKi8NCiNkZWZpbmUgUlRDX1RTRFJfTVUgICAgICAgICAgICAgICAgICAgICAgICAgIFJUQ19UU0RSX01VX01zayAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX1RTRFJfTVVfMCAgICAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFJUQ19UU0RSX01VX1BvcykgICAgICAgICAvKiE8IDB4MDAwMDAxMDAgKi8NCiNkZWZpbmUgUlRDX1RTRFJfTVVfMSAgICAgICAgICAgICAgICAgICAgICAgICgweDJVIDw8IFJUQ19UU0RSX01VX1BvcykgICAgICAgICAvKiE8IDB4MDAwMDAyMDAgKi8NCiNkZWZpbmUgUlRDX1RTRFJfTVVfMiAgICAgICAgICAgICAgICAgICAgICAgICgweDRVIDw8IFJUQ19UU0RSX01VX1BvcykgICAgICAgICAvKiE8IDB4MDAwMDA0MDAgKi8NCiNkZWZpbmUgUlRDX1RTRFJfTVVfMyAgICAgICAgICAgICAgICAgICAgICAgICgweDhVIDw8IFJUQ19UU0RSX01VX1BvcykgICAgICAgICAvKiE8IDB4MDAwMDA4MDAgKi8NCiNkZWZpbmUgUlRDX1RTRFJfRFRfUG9zICAgICAgICAgICAgICAgICAgICAgICg0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX1RTRFJfRFRfTXNrICAgICAgICAgICAgICAgICAgICAgICgweDNVIDw8IFJUQ19UU0RSX0RUX1BvcykgICAgICAgICAvKiE8IDB4MDAwMDAwMzAgKi8NCiNkZWZpbmUgUlRDX1RTRFJfRFQgICAgICAgICAgICAgICAgICAgICAgICAgIFJUQ19UU0RSX0RUX01zayAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX1RTRFJfRFRfMCAgICAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFJUQ19UU0RSX0RUX1BvcykgICAgICAgICAvKiE8IDB4MDAwMDAwMTAgKi8NCiNkZWZpbmUgUlRDX1RTRFJfRFRfMSAgICAgICAgICAgICAgICAgICAgICAgICgweDJVIDw8IFJUQ19UU0RSX0RUX1BvcykgICAgICAgICAvKiE8IDB4MDAwMDAwMjAgKi8NCiNkZWZpbmUgUlRDX1RTRFJfRFVfUG9zICAgICAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX1RTRFJfRFVfTXNrICAgICAgICAgICAgICAgICAgICAgICgweEZVIDw8IFJUQ19UU0RSX0RVX1BvcykgICAgICAgICAvKiE8IDB4MDAwMDAwMEYgKi8NCiNkZWZpbmUgUlRDX1RTRFJfRFUgICAgICAgICAgICAgICAgICAgICAgICAgIFJUQ19UU0RSX0RVX01zayAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX1RTRFJfRFVfMCAgICAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFJUQ19UU0RSX0RVX1BvcykgICAgICAgICAvKiE8IDB4MDAwMDAwMDEgKi8NCiNkZWZpbmUgUlRDX1RTRFJfRFVfMSAgICAgICAgICAgICAgICAgICAgICAgICgweDJVIDw8IFJUQ19UU0RSX0RVX1BvcykgICAgICAgICAvKiE8IDB4MDAwMDAwMDIgKi8NCiNkZWZpbmUgUlRDX1RTRFJfRFVfMiAgICAgICAgICAgICAgICAgICAgICAgICgweDRVIDw8IFJUQ19UU0RSX0RVX1BvcykgICAgICAgICAvKiE8IDB4MDAwMDAwMDQgKi8NCiNkZWZpbmUgUlRDX1RTRFJfRFVfMyAgICAgICAgICAgICAgICAgICAgICAgICgweDhVIDw8IFJUQ19UU0RSX0RVX1BvcykgICAgICAgICAvKiE8IDB4MDAwMDAwMDggKi8NCg0KLyoqKioqKioqKioqKioqKioqKioqICBCaXRzIGRlZmluaXRpb24gZm9yIFJUQ19UU1NTUiByZWdpc3RlciAgKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgUlRDX1RTU1NSX1NTX1BvcyAgICAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX1RTU1NSX1NTX01zayAgICAgICAgICAgICAgICAgICAgICgweEZGRkZVIDw8IFJUQ19UU1NTUl9TU19Qb3MpICAgICAvKiE8IDB4MDAwMEZGRkYgKi8NCiNkZWZpbmUgUlRDX1RTU1NSX1NTICAgICAgICAgICAgICAgICAgICAgICAgIFJUQ19UU1NTUl9TU19Nc2sgICAgICAgICAgICAgICAgICANCg0KLyoqKioqKioqKioqKioqKioqKioqICBCaXRzIGRlZmluaXRpb24gZm9yIFJUQ19DQUwgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBSVENfQ0FMUl9DQUxQX1BvcyAgICAgICAgICAgICAgICAgICAgKDE1VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfQ0FMUl9DQUxQX01zayAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgUlRDX0NBTFJfQ0FMUF9Qb3MpICAgICAgIC8qITwgMHgwMDAwODAwMCAqLw0KI2RlZmluZSBSVENfQ0FMUl9DQUxQICAgICAgICAgICAgICAgICAgICAgICAgUlRDX0NBTFJfQ0FMUF9Nc2sgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfQ0FMUl9DQUxXOF9Qb3MgICAgICAgICAgICAgICAgICAgKDE0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfQ0FMUl9DQUxXOF9Nc2sgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgUlRDX0NBTFJfQ0FMVzhfUG9zKSAgICAgIC8qITwgMHgwMDAwNDAwMCAqLw0KI2RlZmluZSBSVENfQ0FMUl9DQUxXOCAgICAgICAgICAgICAgICAgICAgICAgUlRDX0NBTFJfQ0FMVzhfTXNrICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfQ0FMUl9DQUxXMTZfUG9zICAgICAgICAgICAgICAgICAgKDEzVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfQ0FMUl9DQUxXMTZfTXNrICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgUlRDX0NBTFJfQ0FMVzE2X1BvcykgICAgIC8qITwgMHgwMDAwMjAwMCAqLw0KI2RlZmluZSBSVENfQ0FMUl9DQUxXMTYgICAgICAgICAgICAgICAgICAgICAgUlRDX0NBTFJfQ0FMVzE2X01zayAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfQ0FMUl9DQUxNX1BvcyAgICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfQ0FMUl9DQUxNX01zayAgICAgICAgICAgICAgICAgICAgKDB4MUZGVSA8PCBSVENfQ0FMUl9DQUxNX1BvcykgICAgIC8qITwgMHgwMDAwMDFGRiAqLw0KI2RlZmluZSBSVENfQ0FMUl9DQUxNICAgICAgICAgICAgICAgICAgICAgICAgUlRDX0NBTFJfQ0FMTV9Nc2sgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfQ0FMUl9DQUxNXzAgICAgICAgICAgICAgICAgICAgICAgKDB4MDAxVSA8PCBSVENfQ0FMUl9DQUxNX1BvcykgICAgIC8qITwgMHgwMDAwMDAwMSAqLw0KI2RlZmluZSBSVENfQ0FMUl9DQUxNXzEgICAgICAgICAgICAgICAgICAgICAgKDB4MDAyVSA8PCBSVENfQ0FMUl9DQUxNX1BvcykgICAgIC8qITwgMHgwMDAwMDAwMiAqLw0KI2RlZmluZSBSVENfQ0FMUl9DQUxNXzIgICAgICAgICAgICAgICAgICAgICAgKDB4MDA0VSA8PCBSVENfQ0FMUl9DQUxNX1BvcykgICAgIC8qITwgMHgwMDAwMDAwNCAqLw0KI2RlZmluZSBSVENfQ0FMUl9DQUxNXzMgICAgICAgICAgICAgICAgICAgICAgKDB4MDA4VSA8PCBSVENfQ0FMUl9DQUxNX1BvcykgICAgIC8qITwgMHgwMDAwMDAwOCAqLw0KI2RlZmluZSBSVENfQ0FMUl9DQUxNXzQgICAgICAgICAgICAgICAgICAgICAgKDB4MDEwVSA8PCBSVENfQ0FMUl9DQUxNX1BvcykgICAgIC8qITwgMHgwMDAwMDAxMCAqLw0KI2RlZmluZSBSVENfQ0FMUl9DQUxNXzUgICAgICAgICAgICAgICAgICAgICAgKDB4MDIwVSA8PCBSVENfQ0FMUl9DQUxNX1BvcykgICAgIC8qITwgMHgwMDAwMDAyMCAqLw0KI2RlZmluZSBSVENfQ0FMUl9DQUxNXzYgICAgICAgICAgICAgICAgICAgICAgKDB4MDQwVSA8PCBSVENfQ0FMUl9DQUxNX1BvcykgICAgIC8qITwgMHgwMDAwMDA0MCAqLw0KI2RlZmluZSBSVENfQ0FMUl9DQUxNXzcgICAgICAgICAgICAgICAgICAgICAgKDB4MDgwVSA8PCBSVENfQ0FMUl9DQUxNX1BvcykgICAgIC8qITwgMHgwMDAwMDA4MCAqLw0KI2RlZmluZSBSVENfQ0FMUl9DQUxNXzggICAgICAgICAgICAgICAgICAgICAgKDB4MTAwVSA8PCBSVENfQ0FMUl9DQUxNX1BvcykgICAgIC8qITwgMHgwMDAwMDEwMCAqLw0KDQovKioqKioqKioqKioqKioqKioqKiogIEJpdHMgZGVmaW5pdGlvbiBmb3IgUlRDX1RBRkNSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBSVENfVEFGQ1JfQUxBUk1PVVRUWVBFX1BvcyAgICAgICAgICAgKDE4VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfVEFGQ1JfQUxBUk1PVVRUWVBFX01zayAgICAgICAgICAgKDB4MVUgPDwgUlRDX1RBRkNSX0FMQVJNT1VUVFlQRV9Qb3MpIC8qITwgMHgwMDA0MDAwMCAqLw0KI2RlZmluZSBSVENfVEFGQ1JfQUxBUk1PVVRUWVBFICAgICAgICAgICAgICAgUlRDX1RBRkNSX0FMQVJNT1VUVFlQRV9Nc2sgICAgICAgIA0KI2RlZmluZSBSVENfVEFGQ1JfVEFNUFBVRElTX1BvcyAgICAgICAgICAgICAgKDE1VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfVEFGQ1JfVEFNUFBVRElTX01zayAgICAgICAgICAgICAgKDB4MVUgPDwgUlRDX1RBRkNSX1RBTVBQVURJU19Qb3MpIC8qITwgMHgwMDAwODAwMCAqLw0KI2RlZmluZSBSVENfVEFGQ1JfVEFNUFBVRElTICAgICAgICAgICAgICAgICAgUlRDX1RBRkNSX1RBTVBQVURJU19Nc2sgICAgICAgICAgIA0KI2RlZmluZSBSVENfVEFGQ1JfVEFNUFBSQ0hfUG9zICAgICAgICAgICAgICAgKDEzVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfVEFGQ1JfVEFNUFBSQ0hfTXNrICAgICAgICAgICAgICAgKDB4M1UgPDwgUlRDX1RBRkNSX1RBTVBQUkNIX1BvcykgIC8qITwgMHgwMDAwNjAwMCAqLw0KI2RlZmluZSBSVENfVEFGQ1JfVEFNUFBSQ0ggICAgICAgICAgICAgICAgICAgUlRDX1RBRkNSX1RBTVBQUkNIX01zayAgICAgICAgICAgIA0KI2RlZmluZSBSVENfVEFGQ1JfVEFNUFBSQ0hfMCAgICAgICAgICAgICAgICAgKDB4MVUgPDwgUlRDX1RBRkNSX1RBTVBQUkNIX1BvcykgIC8qITwgMHgwMDAwMjAwMCAqLw0KI2RlZmluZSBSVENfVEFGQ1JfVEFNUFBSQ0hfMSAgICAgICAgICAgICAgICAgKDB4MlUgPDwgUlRDX1RBRkNSX1RBTVBQUkNIX1BvcykgIC8qITwgMHgwMDAwNDAwMCAqLw0KI2RlZmluZSBSVENfVEFGQ1JfVEFNUEZMVF9Qb3MgICAgICAgICAgICAgICAgKDExVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfVEFGQ1JfVEFNUEZMVF9Nc2sgICAgICAgICAgICAgICAgKDB4M1UgPDwgUlRDX1RBRkNSX1RBTVBGTFRfUG9zKSAgIC8qITwgMHgwMDAwMTgwMCAqLw0KI2RlZmluZSBSVENfVEFGQ1JfVEFNUEZMVCAgICAgICAgICAgICAgICAgICAgUlRDX1RBRkNSX1RBTVBGTFRfTXNrICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfVEFGQ1JfVEFNUEZMVF8wICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgUlRDX1RBRkNSX1RBTVBGTFRfUG9zKSAgIC8qITwgMHgwMDAwMDgwMCAqLw0KI2RlZmluZSBSVENfVEFGQ1JfVEFNUEZMVF8xICAgICAgICAgICAgICAgICAgKDB4MlUgPDwgUlRDX1RBRkNSX1RBTVBGTFRfUG9zKSAgIC8qITwgMHgwMDAwMTAwMCAqLw0KI2RlZmluZSBSVENfVEFGQ1JfVEFNUEZSRVFfUG9zICAgICAgICAgICAgICAgKDhVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfVEFGQ1JfVEFNUEZSRVFfTXNrICAgICAgICAgICAgICAgKDB4N1UgPDwgUlRDX1RBRkNSX1RBTVBGUkVRX1BvcykgIC8qITwgMHgwMDAwMDcwMCAqLw0KI2RlZmluZSBSVENfVEFGQ1JfVEFNUEZSRVEgICAgICAgICAgICAgICAgICAgUlRDX1RBRkNSX1RBTVBGUkVRX01zayAgICAgICAgICAgIA0KI2RlZmluZSBSVENfVEFGQ1JfVEFNUEZSRVFfMCAgICAgICAgICAgICAgICAgKDB4MVUgPDwgUlRDX1RBRkNSX1RBTVBGUkVRX1BvcykgIC8qITwgMHgwMDAwMDEwMCAqLw0KI2RlZmluZSBSVENfVEFGQ1JfVEFNUEZSRVFfMSAgICAgICAgICAgICAgICAgKDB4MlUgPDwgUlRDX1RBRkNSX1RBTVBGUkVRX1BvcykgIC8qITwgMHgwMDAwMDIwMCAqLw0KI2RlZmluZSBSVENfVEFGQ1JfVEFNUEZSRVFfMiAgICAgICAgICAgICAgICAgKDB4NFUgPDwgUlRDX1RBRkNSX1RBTVBGUkVRX1BvcykgIC8qITwgMHgwMDAwMDQwMCAqLw0KI2RlZmluZSBSVENfVEFGQ1JfVEFNUFRTX1BvcyAgICAgICAgICAgICAgICAgKDdVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfVEFGQ1JfVEFNUFRTX01zayAgICAgICAgICAgICAgICAgKDB4MVUgPDwgUlRDX1RBRkNSX1RBTVBUU19Qb3MpICAgIC8qITwgMHgwMDAwMDA4MCAqLw0KI2RlZmluZSBSVENfVEFGQ1JfVEFNUFRTICAgICAgICAgICAgICAgICAgICAgUlRDX1RBRkNSX1RBTVBUU19Nc2sgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfVEFGQ1JfVEFNUDNUUkdfUG9zICAgICAgICAgICAgICAgKDZVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfVEFGQ1JfVEFNUDNUUkdfTXNrICAgICAgICAgICAgICAgKDB4MVUgPDwgUlRDX1RBRkNSX1RBTVAzVFJHX1BvcykgIC8qITwgMHgwMDAwMDA0MCAqLw0KI2RlZmluZSBSVENfVEFGQ1JfVEFNUDNUUkcgICAgICAgICAgICAgICAgICAgUlRDX1RBRkNSX1RBTVAzVFJHX01zayAgICAgICAgICAgIA0KI2RlZmluZSBSVENfVEFGQ1JfVEFNUDNFX1BvcyAgICAgICAgICAgICAgICAgKDVVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfVEFGQ1JfVEFNUDNFX01zayAgICAgICAgICAgICAgICAgKDB4MVUgPDwgUlRDX1RBRkNSX1RBTVAzRV9Qb3MpICAgIC8qITwgMHgwMDAwMDAyMCAqLw0KI2RlZmluZSBSVENfVEFGQ1JfVEFNUDNFICAgICAgICAgICAgICAgICAgICAgUlRDX1RBRkNSX1RBTVAzRV9Nc2sgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfVEFGQ1JfVEFNUDJUUkdfUG9zICAgICAgICAgICAgICAgKDRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfVEFGQ1JfVEFNUDJUUkdfTXNrICAgICAgICAgICAgICAgKDB4MVUgPDwgUlRDX1RBRkNSX1RBTVAyVFJHX1BvcykgIC8qITwgMHgwMDAwMDAxMCAqLw0KI2RlZmluZSBSVENfVEFGQ1JfVEFNUDJUUkcgICAgICAgICAgICAgICAgICAgUlRDX1RBRkNSX1RBTVAyVFJHX01zayAgICAgICAgICAgIA0KI2RlZmluZSBSVENfVEFGQ1JfVEFNUDJFX1BvcyAgICAgICAgICAgICAgICAgKDNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfVEFGQ1JfVEFNUDJFX01zayAgICAgICAgICAgICAgICAgKDB4MVUgPDwgUlRDX1RBRkNSX1RBTVAyRV9Qb3MpICAgIC8qITwgMHgwMDAwMDAwOCAqLw0KI2RlZmluZSBSVENfVEFGQ1JfVEFNUDJFICAgICAgICAgICAgICAgICAgICAgUlRDX1RBRkNSX1RBTVAyRV9Nc2sgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfVEFGQ1JfVEFNUElFX1BvcyAgICAgICAgICAgICAgICAgKDJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfVEFGQ1JfVEFNUElFX01zayAgICAgICAgICAgICAgICAgKDB4MVUgPDwgUlRDX1RBRkNSX1RBTVBJRV9Qb3MpICAgIC8qITwgMHgwMDAwMDAwNCAqLw0KI2RlZmluZSBSVENfVEFGQ1JfVEFNUElFICAgICAgICAgICAgICAgICAgICAgUlRDX1RBRkNSX1RBTVBJRV9Nc2sgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfVEFGQ1JfVEFNUDFUUkdfUG9zICAgICAgICAgICAgICAgKDFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfVEFGQ1JfVEFNUDFUUkdfTXNrICAgICAgICAgICAgICAgKDB4MVUgPDwgUlRDX1RBRkNSX1RBTVAxVFJHX1BvcykgIC8qITwgMHgwMDAwMDAwMiAqLw0KI2RlZmluZSBSVENfVEFGQ1JfVEFNUDFUUkcgICAgICAgICAgICAgICAgICAgUlRDX1RBRkNSX1RBTVAxVFJHX01zayAgICAgICAgICAgIA0KI2RlZmluZSBSVENfVEFGQ1JfVEFNUDFFX1BvcyAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfVEFGQ1JfVEFNUDFFX01zayAgICAgICAgICAgICAgICAgKDB4MVUgPDwgUlRDX1RBRkNSX1RBTVAxRV9Qb3MpICAgIC8qITwgMHgwMDAwMDAwMSAqLw0KI2RlZmluZSBSVENfVEFGQ1JfVEFNUDFFICAgICAgICAgICAgICAgICAgICAgUlRDX1RBRkNSX1RBTVAxRV9Nc2sgICAgICAgICAgICAgIA0KDQovKioqKioqKioqKioqKioqKioqKiogIEJpdHMgZGVmaW5pdGlvbiBmb3IgUlRDX0FMUk1BU1NSIHJlZ2lzdGVyICAqKioqKioqKioqKioqLw0KI2RlZmluZSBSVENfQUxSTUFTU1JfTUFTS1NTX1BvcyAgICAgICAgICAgICAgKDI0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfQUxSTUFTU1JfTUFTS1NTX01zayAgICAgICAgICAgICAgKDB4RlUgPDwgUlRDX0FMUk1BU1NSX01BU0tTU19Qb3MpIC8qITwgMHgwRjAwMDAwMCAqLw0KI2RlZmluZSBSVENfQUxSTUFTU1JfTUFTS1NTICAgICAgICAgICAgICAgICAgUlRDX0FMUk1BU1NSX01BU0tTU19Nc2sgICAgICAgICAgIA0KI2RlZmluZSBSVENfQUxSTUFTU1JfTUFTS1NTXzAgICAgICAgICAgICAgICAgKDB4MVUgPDwgUlRDX0FMUk1BU1NSX01BU0tTU19Qb3MpIC8qITwgMHgwMTAwMDAwMCAqLw0KI2RlZmluZSBSVENfQUxSTUFTU1JfTUFTS1NTXzEgICAgICAgICAgICAgICAgKDB4MlUgPDwgUlRDX0FMUk1BU1NSX01BU0tTU19Qb3MpIC8qITwgMHgwMjAwMDAwMCAqLw0KI2RlZmluZSBSVENfQUxSTUFTU1JfTUFTS1NTXzIgICAgICAgICAgICAgICAgKDB4NFUgPDwgUlRDX0FMUk1BU1NSX01BU0tTU19Qb3MpIC8qITwgMHgwNDAwMDAwMCAqLw0KI2RlZmluZSBSVENfQUxSTUFTU1JfTUFTS1NTXzMgICAgICAgICAgICAgICAgKDB4OFUgPDwgUlRDX0FMUk1BU1NSX01BU0tTU19Qb3MpIC8qITwgMHgwODAwMDAwMCAqLw0KI2RlZmluZSBSVENfQUxSTUFTU1JfU1NfUG9zICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfQUxSTUFTU1JfU1NfTXNrICAgICAgICAgICAgICAgICAgKDB4N0ZGRlUgPDwgUlRDX0FMUk1BU1NSX1NTX1BvcykgIC8qITwgMHgwMDAwN0ZGRiAqLw0KI2RlZmluZSBSVENfQUxSTUFTU1JfU1MgICAgICAgICAgICAgICAgICAgICAgUlRDX0FMUk1BU1NSX1NTX01zayAgICAgICAgICAgICAgIA0KDQovKioqKioqKioqKioqKioqKioqKiogIEJpdHMgZGVmaW5pdGlvbiBmb3IgUlRDX0FMUk1CU1NSIHJlZ2lzdGVyICAqKioqKioqKioqKioqLw0KI2RlZmluZSBSVENfQUxSTUJTU1JfTUFTS1NTX1BvcyAgICAgICAgICAgICAgKDI0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfQUxSTUJTU1JfTUFTS1NTX01zayAgICAgICAgICAgICAgKDB4RlUgPDwgUlRDX0FMUk1CU1NSX01BU0tTU19Qb3MpIC8qITwgMHgwRjAwMDAwMCAqLw0KI2RlZmluZSBSVENfQUxSTUJTU1JfTUFTS1NTICAgICAgICAgICAgICAgICAgUlRDX0FMUk1CU1NSX01BU0tTU19Nc2sgICAgICAgICAgIA0KI2RlZmluZSBSVENfQUxSTUJTU1JfTUFTS1NTXzAgICAgICAgICAgICAgICAgKDB4MVUgPDwgUlRDX0FMUk1CU1NSX01BU0tTU19Qb3MpIC8qITwgMHgwMTAwMDAwMCAqLw0KI2RlZmluZSBSVENfQUxSTUJTU1JfTUFTS1NTXzEgICAgICAgICAgICAgICAgKDB4MlUgPDwgUlRDX0FMUk1CU1NSX01BU0tTU19Qb3MpIC8qITwgMHgwMjAwMDAwMCAqLw0KI2RlZmluZSBSVENfQUxSTUJTU1JfTUFTS1NTXzIgICAgICAgICAgICAgICAgKDB4NFUgPDwgUlRDX0FMUk1CU1NSX01BU0tTU19Qb3MpIC8qITwgMHgwNDAwMDAwMCAqLw0KI2RlZmluZSBSVENfQUxSTUJTU1JfTUFTS1NTXzMgICAgICAgICAgICAgICAgKDB4OFUgPDwgUlRDX0FMUk1CU1NSX01BU0tTU19Qb3MpIC8qITwgMHgwODAwMDAwMCAqLw0KI2RlZmluZSBSVENfQUxSTUJTU1JfU1NfUG9zICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfQUxSTUJTU1JfU1NfTXNrICAgICAgICAgICAgICAgICAgKDB4N0ZGRlUgPDwgUlRDX0FMUk1CU1NSX1NTX1BvcykgIC8qITwgMHgwMDAwN0ZGRiAqLw0KI2RlZmluZSBSVENfQUxSTUJTU1JfU1MgICAgICAgICAgICAgICAgICAgICAgUlRDX0FMUk1CU1NSX1NTX01zayAgICAgICAgICAgICAgIA0KDQovKioqKioqKioqKioqKioqKioqKiogIEJpdHMgZGVmaW5pdGlvbiBmb3IgUlRDX0JLUDBSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBSVENfQktQMFJfUG9zICAgICAgICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfQktQMFJfTXNrICAgICAgICAgICAgICAgICAgICAgICAgKDB4RkZGRkZGRkZVIDw8IFJUQ19CS1AwUl9Qb3MpICAgIC8qITwgMHhGRkZGRkZGRiAqLw0KI2RlZmluZSBSVENfQktQMFIgICAgICAgICAgICAgICAgICAgICAgICAgICAgUlRDX0JLUDBSX01zayAgICAgICAgICAgICAgICAgICAgIA0KDQovKioqKioqKioqKioqKioqKioqKiogIEJpdHMgZGVmaW5pdGlvbiBmb3IgUlRDX0JLUDFSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBSVENfQktQMVJfUG9zICAgICAgICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfQktQMVJfTXNrICAgICAgICAgICAgICAgICAgICAgICAgKDB4RkZGRkZGRkZVIDw8IFJUQ19CS1AxUl9Qb3MpICAgIC8qITwgMHhGRkZGRkZGRiAqLw0KI2RlZmluZSBSVENfQktQMVIgICAgICAgICAgICAgICAgICAgICAgICAgICAgUlRDX0JLUDFSX01zayAgICAgICAgICAgICAgICAgICAgIA0KDQovKioqKioqKioqKioqKioqKioqKiogIEJpdHMgZGVmaW5pdGlvbiBmb3IgUlRDX0JLUDJSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBSVENfQktQMlJfUG9zICAgICAgICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfQktQMlJfTXNrICAgICAgICAgICAgICAgICAgICAgICAgKDB4RkZGRkZGRkZVIDw8IFJUQ19CS1AyUl9Qb3MpICAgIC8qITwgMHhGRkZGRkZGRiAqLw0KI2RlZmluZSBSVENfQktQMlIgICAgICAgICAgICAgICAgICAgICAgICAgICAgUlRDX0JLUDJSX01zayAgICAgICAgICAgICAgICAgICAgIA0KDQovKioqKioqKioqKioqKioqKioqKiogIEJpdHMgZGVmaW5pdGlvbiBmb3IgUlRDX0JLUDNSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBSVENfQktQM1JfUG9zICAgICAgICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfQktQM1JfTXNrICAgICAgICAgICAgICAgICAgICAgICAgKDB4RkZGRkZGRkZVIDw8IFJUQ19CS1AzUl9Qb3MpICAgIC8qITwgMHhGRkZGRkZGRiAqLw0KI2RlZmluZSBSVENfQktQM1IgICAgICAgICAgICAgICAgICAgICAgICAgICAgUlRDX0JLUDNSX01zayAgICAgICAgICAgICAgICAgICAgIA0KDQovKioqKioqKioqKioqKioqKioqKiogIEJpdHMgZGVmaW5pdGlvbiBmb3IgUlRDX0JLUDRSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBSVENfQktQNFJfUG9zICAgICAgICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfQktQNFJfTXNrICAgICAgICAgICAgICAgICAgICAgICAgKDB4RkZGRkZGRkZVIDw8IFJUQ19CS1A0Ul9Qb3MpICAgIC8qITwgMHhGRkZGRkZGRiAqLw0KI2RlZmluZSBSVENfQktQNFIgICAgICAgICAgICAgICAgICAgICAgICAgICAgUlRDX0JLUDRSX01zayAgICAgICAgICAgICAgICAgICAgIA0KDQovKioqKioqKioqKioqKioqKioqKiogIEJpdHMgZGVmaW5pdGlvbiBmb3IgUlRDX0JLUDVSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBSVENfQktQNVJfUG9zICAgICAgICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfQktQNVJfTXNrICAgICAgICAgICAgICAgICAgICAgICAgKDB4RkZGRkZGRkZVIDw8IFJUQ19CS1A1Ul9Qb3MpICAgIC8qITwgMHhGRkZGRkZGRiAqLw0KI2RlZmluZSBSVENfQktQNVIgICAgICAgICAgICAgICAgICAgICAgICAgICAgUlRDX0JLUDVSX01zayAgICAgICAgICAgICAgICAgICAgIA0KDQovKioqKioqKioqKioqKioqKioqKiogIEJpdHMgZGVmaW5pdGlvbiBmb3IgUlRDX0JLUDZSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBSVENfQktQNlJfUG9zICAgICAgICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfQktQNlJfTXNrICAgICAgICAgICAgICAgICAgICAgICAgKDB4RkZGRkZGRkZVIDw8IFJUQ19CS1A2Ul9Qb3MpICAgIC8qITwgMHhGRkZGRkZGRiAqLw0KI2RlZmluZSBSVENfQktQNlIgICAgICAgICAgICAgICAgICAgICAgICAgICAgUlRDX0JLUDZSX01zayAgICAgICAgICAgICAgICAgICAgIA0KDQovKioqKioqKioqKioqKioqKioqKiogIEJpdHMgZGVmaW5pdGlvbiBmb3IgUlRDX0JLUDdSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBSVENfQktQN1JfUG9zICAgICAgICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfQktQN1JfTXNrICAgICAgICAgICAgICAgICAgICAgICAgKDB4RkZGRkZGRkZVIDw8IFJUQ19CS1A3Ul9Qb3MpICAgIC8qITwgMHhGRkZGRkZGRiAqLw0KI2RlZmluZSBSVENfQktQN1IgICAgICAgICAgICAgICAgICAgICAgICAgICAgUlRDX0JLUDdSX01zayAgICAgICAgICAgICAgICAgICAgIA0KDQovKioqKioqKioqKioqKioqKioqKiogIEJpdHMgZGVmaW5pdGlvbiBmb3IgUlRDX0JLUDhSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBSVENfQktQOFJfUG9zICAgICAgICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfQktQOFJfTXNrICAgICAgICAgICAgICAgICAgICAgICAgKDB4RkZGRkZGRkZVIDw8IFJUQ19CS1A4Ul9Qb3MpICAgIC8qITwgMHhGRkZGRkZGRiAqLw0KI2RlZmluZSBSVENfQktQOFIgICAgICAgICAgICAgICAgICAgICAgICAgICAgUlRDX0JLUDhSX01zayAgICAgICAgICAgICAgICAgICAgIA0KDQovKioqKioqKioqKioqKioqKioqKiogIEJpdHMgZGVmaW5pdGlvbiBmb3IgUlRDX0JLUDlSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBSVENfQktQOVJfUG9zICAgICAgICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfQktQOVJfTXNrICAgICAgICAgICAgICAgICAgICAgICAgKDB4RkZGRkZGRkZVIDw8IFJUQ19CS1A5Ul9Qb3MpICAgIC8qITwgMHhGRkZGRkZGRiAqLw0KI2RlZmluZSBSVENfQktQOVIgICAgICAgICAgICAgICAgICAgICAgICAgICAgUlRDX0JLUDlSX01zayAgICAgICAgICAgICAgICAgICAgIA0KDQovKioqKioqKioqKioqKioqKioqKiogIEJpdHMgZGVmaW5pdGlvbiBmb3IgUlRDX0JLUDEwUiByZWdpc3RlciAgKioqKioqKioqKioqKioqLw0KI2RlZmluZSBSVENfQktQMTBSX1BvcyAgICAgICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfQktQMTBSX01zayAgICAgICAgICAgICAgICAgICAgICAgKDB4RkZGRkZGRkZVIDw8IFJUQ19CS1AxMFJfUG9zKSAgIC8qITwgMHhGRkZGRkZGRiAqLw0KI2RlZmluZSBSVENfQktQMTBSICAgICAgICAgICAgICAgICAgICAgICAgICAgUlRDX0JLUDEwUl9Nc2sgICAgICAgICAgICAgICAgICAgIA0KDQovKioqKioqKioqKioqKioqKioqKiogIEJpdHMgZGVmaW5pdGlvbiBmb3IgUlRDX0JLUDExUiByZWdpc3RlciAgKioqKioqKioqKioqKioqLw0KI2RlZmluZSBSVENfQktQMTFSX1BvcyAgICAgICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfQktQMTFSX01zayAgICAgICAgICAgICAgICAgICAgICAgKDB4RkZGRkZGRkZVIDw8IFJUQ19CS1AxMVJfUG9zKSAgIC8qITwgMHhGRkZGRkZGRiAqLw0KI2RlZmluZSBSVENfQktQMTFSICAgICAgICAgICAgICAgICAgICAgICAgICAgUlRDX0JLUDExUl9Nc2sgICAgICAgICAgICAgICAgICAgIA0KDQovKioqKioqKioqKioqKioqKioqKiogIEJpdHMgZGVmaW5pdGlvbiBmb3IgUlRDX0JLUDEyUiByZWdpc3RlciAgKioqKioqKioqKioqKioqLw0KI2RlZmluZSBSVENfQktQMTJSX1BvcyAgICAgICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfQktQMTJSX01zayAgICAgICAgICAgICAgICAgICAgICAgKDB4RkZGRkZGRkZVIDw8IFJUQ19CS1AxMlJfUG9zKSAgIC8qITwgMHhGRkZGRkZGRiAqLw0KI2RlZmluZSBSVENfQktQMTJSICAgICAgICAgICAgICAgICAgICAgICAgICAgUlRDX0JLUDEyUl9Nc2sgICAgICAgICAgICAgICAgICAgIA0KDQovKioqKioqKioqKioqKioqKioqKiogIEJpdHMgZGVmaW5pdGlvbiBmb3IgUlRDX0JLUDEzUiByZWdpc3RlciAgKioqKioqKioqKioqKioqLw0KI2RlZmluZSBSVENfQktQMTNSX1BvcyAgICAgICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfQktQMTNSX01zayAgICAgICAgICAgICAgICAgICAgICAgKDB4RkZGRkZGRkZVIDw8IFJUQ19CS1AxM1JfUG9zKSAgIC8qITwgMHhGRkZGRkZGRiAqLw0KI2RlZmluZSBSVENfQktQMTNSICAgICAgICAgICAgICAgICAgICAgICAgICAgUlRDX0JLUDEzUl9Nc2sgICAgICAgICAgICAgICAgICAgIA0KDQovKioqKioqKioqKioqKioqKioqKiogIEJpdHMgZGVmaW5pdGlvbiBmb3IgUlRDX0JLUDE0UiByZWdpc3RlciAgKioqKioqKioqKioqKioqLw0KI2RlZmluZSBSVENfQktQMTRSX1BvcyAgICAgICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfQktQMTRSX01zayAgICAgICAgICAgICAgICAgICAgICAgKDB4RkZGRkZGRkZVIDw8IFJUQ19CS1AxNFJfUG9zKSAgIC8qITwgMHhGRkZGRkZGRiAqLw0KI2RlZmluZSBSVENfQktQMTRSICAgICAgICAgICAgICAgICAgICAgICAgICAgUlRDX0JLUDE0Ul9Nc2sgICAgICAgICAgICAgICAgICAgIA0KDQovKioqKioqKioqKioqKioqKioqKiogIEJpdHMgZGVmaW5pdGlvbiBmb3IgUlRDX0JLUDE1UiByZWdpc3RlciAgKioqKioqKioqKioqKioqLw0KI2RlZmluZSBSVENfQktQMTVSX1BvcyAgICAgICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfQktQMTVSX01zayAgICAgICAgICAgICAgICAgICAgICAgKDB4RkZGRkZGRkZVIDw8IFJUQ19CS1AxNVJfUG9zKSAgIC8qITwgMHhGRkZGRkZGRiAqLw0KI2RlZmluZSBSVENfQktQMTVSICAgICAgICAgICAgICAgICAgICAgICAgICAgUlRDX0JLUDE1Ul9Nc2sgICAgICAgICAgICAgICAgICAgIA0KDQovKioqKioqKioqKioqKioqKioqKiogIEJpdHMgZGVmaW5pdGlvbiBmb3IgUlRDX0JLUDE2UiByZWdpc3RlciAgKioqKioqKioqKioqKioqLw0KI2RlZmluZSBSVENfQktQMTZSX1BvcyAgICAgICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfQktQMTZSX01zayAgICAgICAgICAgICAgICAgICAgICAgKDB4RkZGRkZGRkZVIDw8IFJUQ19CS1AxNlJfUG9zKSAgIC8qITwgMHhGRkZGRkZGRiAqLw0KI2RlZmluZSBSVENfQktQMTZSICAgICAgICAgICAgICAgICAgICAgICAgICAgUlRDX0JLUDE2Ul9Nc2sgICAgICAgICAgICAgICAgICAgIA0KDQovKioqKioqKioqKioqKioqKioqKiogIEJpdHMgZGVmaW5pdGlvbiBmb3IgUlRDX0JLUDE3UiByZWdpc3RlciAgKioqKioqKioqKioqKioqLw0KI2RlZmluZSBSVENfQktQMTdSX1BvcyAgICAgICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfQktQMTdSX01zayAgICAgICAgICAgICAgICAgICAgICAgKDB4RkZGRkZGRkZVIDw8IFJUQ19CS1AxN1JfUG9zKSAgIC8qITwgMHhGRkZGRkZGRiAqLw0KI2RlZmluZSBSVENfQktQMTdSICAgICAgICAgICAgICAgICAgICAgICAgICAgUlRDX0JLUDE3Ul9Nc2sgICAgICAgICAgICAgICAgICAgIA0KDQovKioqKioqKioqKioqKioqKioqKiogIEJpdHMgZGVmaW5pdGlvbiBmb3IgUlRDX0JLUDE4UiByZWdpc3RlciAgKioqKioqKioqKioqKioqLw0KI2RlZmluZSBSVENfQktQMThSX1BvcyAgICAgICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfQktQMThSX01zayAgICAgICAgICAgICAgICAgICAgICAgKDB4RkZGRkZGRkZVIDw8IFJUQ19CS1AxOFJfUG9zKSAgIC8qITwgMHhGRkZGRkZGRiAqLw0KI2RlZmluZSBSVENfQktQMThSICAgICAgICAgICAgICAgICAgICAgICAgICAgUlRDX0JLUDE4Ul9Nc2sgICAgICAgICAgICAgICAgICAgIA0KDQovKioqKioqKioqKioqKioqKioqKiogIEJpdHMgZGVmaW5pdGlvbiBmb3IgUlRDX0JLUDE5UiByZWdpc3RlciAgKioqKioqKioqKioqKioqLw0KI2RlZmluZSBSVENfQktQMTlSX1BvcyAgICAgICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfQktQMTlSX01zayAgICAgICAgICAgICAgICAgICAgICAgKDB4RkZGRkZGRkZVIDw8IFJUQ19CS1AxOVJfUG9zKSAgIC8qITwgMHhGRkZGRkZGRiAqLw0KI2RlZmluZSBSVENfQktQMTlSICAgICAgICAgICAgICAgICAgICAgICAgICAgUlRDX0JLUDE5Ul9Nc2sgICAgICAgICAgICAgICAgICAgIA0KDQovKioqKioqKioqKioqKioqKioqKiogIEJpdHMgZGVmaW5pdGlvbiBmb3IgUlRDX0JLUDIwUiByZWdpc3RlciAgKioqKioqKioqKioqKioqLw0KI2RlZmluZSBSVENfQktQMjBSX1BvcyAgICAgICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfQktQMjBSX01zayAgICAgICAgICAgICAgICAgICAgICAgKDB4RkZGRkZGRkZVIDw8IFJUQ19CS1AyMFJfUG9zKSAgIC8qITwgMHhGRkZGRkZGRiAqLw0KI2RlZmluZSBSVENfQktQMjBSICAgICAgICAgICAgICAgICAgICAgICAgICAgUlRDX0JLUDIwUl9Nc2sgICAgICAgICAgICAgICAgICAgIA0KDQovKioqKioqKioqKioqKioqKioqKiogIEJpdHMgZGVmaW5pdGlvbiBmb3IgUlRDX0JLUDIxUiByZWdpc3RlciAgKioqKioqKioqKioqKioqLw0KI2RlZmluZSBSVENfQktQMjFSX1BvcyAgICAgICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfQktQMjFSX01zayAgICAgICAgICAgICAgICAgICAgICAgKDB4RkZGRkZGRkZVIDw8IFJUQ19CS1AyMVJfUG9zKSAgIC8qITwgMHhGRkZGRkZGRiAqLw0KI2RlZmluZSBSVENfQktQMjFSICAgICAgICAgICAgICAgICAgICAgICAgICAgUlRDX0JLUDIxUl9Nc2sgICAgICAgICAgICAgICAgICAgIA0KDQovKioqKioqKioqKioqKioqKioqKiogIEJpdHMgZGVmaW5pdGlvbiBmb3IgUlRDX0JLUDIyUiByZWdpc3RlciAgKioqKioqKioqKioqKioqLw0KI2RlZmluZSBSVENfQktQMjJSX1BvcyAgICAgICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfQktQMjJSX01zayAgICAgICAgICAgICAgICAgICAgICAgKDB4RkZGRkZGRkZVIDw8IFJUQ19CS1AyMlJfUG9zKSAgIC8qITwgMHhGRkZGRkZGRiAqLw0KI2RlZmluZSBSVENfQktQMjJSICAgICAgICAgICAgICAgICAgICAgICAgICAgUlRDX0JLUDIyUl9Nc2sgICAgICAgICAgICAgICAgICAgIA0KDQovKioqKioqKioqKioqKioqKioqKiogIEJpdHMgZGVmaW5pdGlvbiBmb3IgUlRDX0JLUDIzUiByZWdpc3RlciAgKioqKioqKioqKioqKioqLw0KI2RlZmluZSBSVENfQktQMjNSX1BvcyAgICAgICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfQktQMjNSX01zayAgICAgICAgICAgICAgICAgICAgICAgKDB4RkZGRkZGRkZVIDw8IFJUQ19CS1AyM1JfUG9zKSAgIC8qITwgMHhGRkZGRkZGRiAqLw0KI2RlZmluZSBSVENfQktQMjNSICAgICAgICAgICAgICAgICAgICAgICAgICAgUlRDX0JLUDIzUl9Nc2sgICAgICAgICAgICAgICAgICAgIA0KDQovKioqKioqKioqKioqKioqKioqKiogIEJpdHMgZGVmaW5pdGlvbiBmb3IgUlRDX0JLUDI0UiByZWdpc3RlciAgKioqKioqKioqKioqKioqLw0KI2RlZmluZSBSVENfQktQMjRSX1BvcyAgICAgICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfQktQMjRSX01zayAgICAgICAgICAgICAgICAgICAgICAgKDB4RkZGRkZGRkZVIDw8IFJUQ19CS1AyNFJfUG9zKSAgIC8qITwgMHhGRkZGRkZGRiAqLw0KI2RlZmluZSBSVENfQktQMjRSICAgICAgICAgICAgICAgICAgICAgICAgICAgUlRDX0JLUDI0Ul9Nc2sgICAgICAgICAgICAgICAgICAgIA0KDQovKioqKioqKioqKioqKioqKioqKiogIEJpdHMgZGVmaW5pdGlvbiBmb3IgUlRDX0JLUDI1UiByZWdpc3RlciAgKioqKioqKioqKioqKioqLw0KI2RlZmluZSBSVENfQktQMjVSX1BvcyAgICAgICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfQktQMjVSX01zayAgICAgICAgICAgICAgICAgICAgICAgKDB4RkZGRkZGRkZVIDw8IFJUQ19CS1AyNVJfUG9zKSAgIC8qITwgMHhGRkZGRkZGRiAqLw0KI2RlZmluZSBSVENfQktQMjVSICAgICAgICAgICAgICAgICAgICAgICAgICAgUlRDX0JLUDI1Ul9Nc2sgICAgICAgICAgICAgICAgICAgIA0KDQovKioqKioqKioqKioqKioqKioqKiogIEJpdHMgZGVmaW5pdGlvbiBmb3IgUlRDX0JLUDI2UiByZWdpc3RlciAgKioqKioqKioqKioqKioqLw0KI2RlZmluZSBSVENfQktQMjZSX1BvcyAgICAgICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfQktQMjZSX01zayAgICAgICAgICAgICAgICAgICAgICAgKDB4RkZGRkZGRkZVIDw8IFJUQ19CS1AyNlJfUG9zKSAgIC8qITwgMHhGRkZGRkZGRiAqLw0KI2RlZmluZSBSVENfQktQMjZSICAgICAgICAgICAgICAgICAgICAgICAgICAgUlRDX0JLUDI2Ul9Nc2sgICAgICAgICAgICAgICAgICAgIA0KDQovKioqKioqKioqKioqKioqKioqKiogIEJpdHMgZGVmaW5pdGlvbiBmb3IgUlRDX0JLUDI3UiByZWdpc3RlciAgKioqKioqKioqKioqKioqLw0KI2RlZmluZSBSVENfQktQMjdSX1BvcyAgICAgICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfQktQMjdSX01zayAgICAgICAgICAgICAgICAgICAgICAgKDB4RkZGRkZGRkZVIDw8IFJUQ19CS1AyN1JfUG9zKSAgIC8qITwgMHhGRkZGRkZGRiAqLw0KI2RlZmluZSBSVENfQktQMjdSICAgICAgICAgICAgICAgICAgICAgICAgICAgUlRDX0JLUDI3Ul9Nc2sgICAgICAgICAgICAgICAgICAgIA0KDQovKioqKioqKioqKioqKioqKioqKiogIEJpdHMgZGVmaW5pdGlvbiBmb3IgUlRDX0JLUDI4UiByZWdpc3RlciAgKioqKioqKioqKioqKioqLw0KI2RlZmluZSBSVENfQktQMjhSX1BvcyAgICAgICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfQktQMjhSX01zayAgICAgICAgICAgICAgICAgICAgICAgKDB4RkZGRkZGRkZVIDw8IFJUQ19CS1AyOFJfUG9zKSAgIC8qITwgMHhGRkZGRkZGRiAqLw0KI2RlZmluZSBSVENfQktQMjhSICAgICAgICAgICAgICAgICAgICAgICAgICAgUlRDX0JLUDI4Ul9Nc2sgICAgICAgICAgICAgICAgICAgIA0KDQovKioqKioqKioqKioqKioqKioqKiogIEJpdHMgZGVmaW5pdGlvbiBmb3IgUlRDX0JLUDI5UiByZWdpc3RlciAgKioqKioqKioqKioqKioqLw0KI2RlZmluZSBSVENfQktQMjlSX1BvcyAgICAgICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfQktQMjlSX01zayAgICAgICAgICAgICAgICAgICAgICAgKDB4RkZGRkZGRkZVIDw8IFJUQ19CS1AyOVJfUG9zKSAgIC8qITwgMHhGRkZGRkZGRiAqLw0KI2RlZmluZSBSVENfQktQMjlSICAgICAgICAgICAgICAgICAgICAgICAgICAgUlRDX0JLUDI5Ul9Nc2sgICAgICAgICAgICAgICAgICAgIA0KDQovKioqKioqKioqKioqKioqKioqKiogIEJpdHMgZGVmaW5pdGlvbiBmb3IgUlRDX0JLUDMwUiByZWdpc3RlciAgKioqKioqKioqKioqKioqLw0KI2RlZmluZSBSVENfQktQMzBSX1BvcyAgICAgICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfQktQMzBSX01zayAgICAgICAgICAgICAgICAgICAgICAgKDB4RkZGRkZGRkZVIDw8IFJUQ19CS1AzMFJfUG9zKSAgIC8qITwgMHhGRkZGRkZGRiAqLw0KI2RlZmluZSBSVENfQktQMzBSICAgICAgICAgICAgICAgICAgICAgICAgICAgUlRDX0JLUDMwUl9Nc2sgICAgICAgICAgICAgICAgICAgIA0KDQovKioqKioqKioqKioqKioqKioqKiogIEJpdHMgZGVmaW5pdGlvbiBmb3IgUlRDX0JLUDMxUiByZWdpc3RlciAgKioqKioqKioqKioqKioqLw0KI2RlZmluZSBSVENfQktQMzFSX1BvcyAgICAgICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfQktQMzFSX01zayAgICAgICAgICAgICAgICAgICAgICAgKDB4RkZGRkZGRkZVIDw8IFJUQ19CS1AzMVJfUG9zKSAgIC8qITwgMHhGRkZGRkZGRiAqLw0KI2RlZmluZSBSVENfQktQMzFSICAgICAgICAgICAgICAgICAgICAgICAgICAgUlRDX0JLUDMxUl9Nc2sgICAgICAgICAgICAgICAgICAgIA0KDQovKioqKioqKioqKioqKioqKioqKiogTnVtYmVyIG9mIGJhY2t1cCByZWdpc3RlcnMgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBSVENfQktQX05VTUJFUiAzMg0KDQovKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLw0KLyogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8NCi8qICAgICAgICAgICAgICAgICAgICAgU2VyaWFsIFBlcmlwaGVyYWwgSW50ZXJmYWNlIChTUEkpICAgICAgICAgICAgICAgICAgICAgICovDQovKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLw0KLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8NCg0KLyoNCiAqIEBicmllZiBTcGVjaWZpYyBkZXZpY2UgZmVhdHVyZSBkZWZpbml0aW9ucyAobm90IHByZXNlbnQgb24gYWxsIGRldmljZXMgaW4gdGhlIFNUTTMyRjMgc2VyaWUpDQogKi8NCiNkZWZpbmUgU1BJX0kyU19TVVBQT1JUICAgIA0KDQovKioqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFNQSV9DUjEgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBTUElfQ1IxX0NQSEFfUG9zICAgICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBTUElfQ1IxX0NQSEFfTXNrICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBTUElfQ1IxX0NQSEFfUG9zKSAgICAgICAgIC8qITwgMHgwMDAwMDAwMSAqLw0KI2RlZmluZSBTUElfQ1IxX0NQSEEgICAgICAgICAgICAgICAgICAgICAgICBTUElfQ1IxX0NQSEFfTXNrICAgICAgICAgICAgICAgICAgIC8qITwgQ2xvY2sgUGhhc2UgKi8NCiNkZWZpbmUgU1BJX0NSMV9DUE9MX1BvcyAgICAgICAgICAgICAgICAgICAgKDFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgU1BJX0NSMV9DUE9MX01zayAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgU1BJX0NSMV9DUE9MX1BvcykgICAgICAgICAvKiE8IDB4MDAwMDAwMDIgKi8NCiNkZWZpbmUgU1BJX0NSMV9DUE9MICAgICAgICAgICAgICAgICAgICAgICAgU1BJX0NSMV9DUE9MX01zayAgICAgICAgICAgICAgICAgICAvKiE8IENsb2NrIFBvbGFyaXR5ICovDQojZGVmaW5lIFNQSV9DUjFfTVNUUl9Qb3MgICAgICAgICAgICAgICAgICAgICgyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFNQSV9DUjFfTVNUUl9Nc2sgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFNQSV9DUjFfTVNUUl9Qb3MpICAgICAgICAgLyohPCAweDAwMDAwMDA0ICovDQojZGVmaW5lIFNQSV9DUjFfTVNUUiAgICAgICAgICAgICAgICAgICAgICAgIFNQSV9DUjFfTVNUUl9Nc2sgICAgICAgICAgICAgICAgICAgLyohPCBNYXN0ZXIgU2VsZWN0aW9uICovDQoNCiNkZWZpbmUgU1BJX0NSMV9CUl9Qb3MgICAgICAgICAgICAgICAgICAgICAgKDNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgU1BJX0NSMV9CUl9Nc2sgICAgICAgICAgICAgICAgICAgICAgKDB4N1UgPDwgU1BJX0NSMV9CUl9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDAwMzggKi8NCiNkZWZpbmUgU1BJX0NSMV9CUiAgICAgICAgICAgICAgICAgICAgICAgICAgU1BJX0NSMV9CUl9Nc2sgICAgICAgICAgICAgICAgICAgICAvKiE8IEJSWzI6MF0gYml0cyAoQmF1ZCBSYXRlIENvbnRyb2wpICovDQojZGVmaW5lIFNQSV9DUjFfQlJfMCAgICAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFNQSV9DUjFfQlJfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwMDA4ICovDQojZGVmaW5lIFNQSV9DUjFfQlJfMSAgICAgICAgICAgICAgICAgICAgICAgICgweDJVIDw8IFNQSV9DUjFfQlJfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwMDEwICovDQojZGVmaW5lIFNQSV9DUjFfQlJfMiAgICAgICAgICAgICAgICAgICAgICAgICgweDRVIDw8IFNQSV9DUjFfQlJfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwMDIwICovDQoNCiNkZWZpbmUgU1BJX0NSMV9TUEVfUG9zICAgICAgICAgICAgICAgICAgICAgKDZVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgU1BJX0NSMV9TUEVfTXNrICAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgU1BJX0NSMV9TUEVfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDAwNDAgKi8NCiNkZWZpbmUgU1BJX0NSMV9TUEUgICAgICAgICAgICAgICAgICAgICAgICAgU1BJX0NSMV9TUEVfTXNrICAgICAgICAgICAgICAgICAgICAvKiE8IFNQSSBFbmFibGUgKi8NCiNkZWZpbmUgU1BJX0NSMV9MU0JGSVJTVF9Qb3MgICAgICAgICAgICAgICAgKDdVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgU1BJX0NSMV9MU0JGSVJTVF9Nc2sgICAgICAgICAgICAgICAgKDB4MVUgPDwgU1BJX0NSMV9MU0JGSVJTVF9Qb3MpICAgICAvKiE8IDB4MDAwMDAwODAgKi8NCiNkZWZpbmUgU1BJX0NSMV9MU0JGSVJTVCAgICAgICAgICAgICAgICAgICAgU1BJX0NSMV9MU0JGSVJTVF9Nc2sgICAgICAgICAgICAgICAvKiE8IEZyYW1lIEZvcm1hdCAqLw0KI2RlZmluZSBTUElfQ1IxX1NTSV9Qb3MgICAgICAgICAgICAgICAgICAgICAoOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBTUElfQ1IxX1NTSV9Nc2sgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBTUElfQ1IxX1NTSV9Qb3MpICAgICAgICAgIC8qITwgMHgwMDAwMDEwMCAqLw0KI2RlZmluZSBTUElfQ1IxX1NTSSAgICAgICAgICAgICAgICAgICAgICAgICBTUElfQ1IxX1NTSV9Nc2sgICAgICAgICAgICAgICAgICAgIC8qITwgSW50ZXJuYWwgc2xhdmUgc2VsZWN0ICovDQojZGVmaW5lIFNQSV9DUjFfU1NNX1BvcyAgICAgICAgICAgICAgICAgICAgICg5VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFNQSV9DUjFfU1NNX01zayAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFNQSV9DUjFfU1NNX1BvcykgICAgICAgICAgLyohPCAweDAwMDAwMjAwICovDQojZGVmaW5lIFNQSV9DUjFfU1NNICAgICAgICAgICAgICAgICAgICAgICAgIFNQSV9DUjFfU1NNX01zayAgICAgICAgICAgICAgICAgICAgLyohPCBTb2Z0d2FyZSBzbGF2ZSBtYW5hZ2VtZW50ICovDQojZGVmaW5lIFNQSV9DUjFfUlhPTkxZX1BvcyAgICAgICAgICAgICAgICAgICgxMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFNQSV9DUjFfUlhPTkxZX01zayAgICAgICAgICAgICAgICAgICgweDFVIDw8IFNQSV9DUjFfUlhPTkxZX1BvcykgICAgICAgLyohPCAweDAwMDAwNDAwICovDQojZGVmaW5lIFNQSV9DUjFfUlhPTkxZICAgICAgICAgICAgICAgICAgICAgIFNQSV9DUjFfUlhPTkxZX01zayAgICAgICAgICAgICAgICAgLyohPCBSZWNlaXZlIG9ubHkgKi8NCiNkZWZpbmUgU1BJX0NSMV9ERkZfUG9zICAgICAgICAgICAgICAgICAgICAgKDExVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgU1BJX0NSMV9ERkZfTXNrICAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgU1BJX0NSMV9ERkZfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDA4MDAgKi8NCiNkZWZpbmUgU1BJX0NSMV9ERkYgICAgICAgICAgICAgICAgICAgICAgICAgU1BJX0NSMV9ERkZfTXNrICAgICAgICAgICAgICAgICAgICAvKiE8IERhdGEgRnJhbWUgRm9ybWF0ICovDQojZGVmaW5lIFNQSV9DUjFfQ1JDTkVYVF9Qb3MgICAgICAgICAgICAgICAgICgxMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFNQSV9DUjFfQ1JDTkVYVF9Nc2sgICAgICAgICAgICAgICAgICgweDFVIDw8IFNQSV9DUjFfQ1JDTkVYVF9Qb3MpICAgICAgLyohPCAweDAwMDAxMDAwICovDQojZGVmaW5lIFNQSV9DUjFfQ1JDTkVYVCAgICAgICAgICAgICAgICAgICAgIFNQSV9DUjFfQ1JDTkVYVF9Nc2sgICAgICAgICAgICAgICAgLyohPCBUcmFuc21pdCBDUkMgbmV4dCAqLw0KI2RlZmluZSBTUElfQ1IxX0NSQ0VOX1BvcyAgICAgICAgICAgICAgICAgICAoMTNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBTUElfQ1IxX0NSQ0VOX01zayAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBTUElfQ1IxX0NSQ0VOX1BvcykgICAgICAgIC8qITwgMHgwMDAwMjAwMCAqLw0KI2RlZmluZSBTUElfQ1IxX0NSQ0VOICAgICAgICAgICAgICAgICAgICAgICBTUElfQ1IxX0NSQ0VOX01zayAgICAgICAgICAgICAgICAgIC8qITwgSGFyZHdhcmUgQ1JDIGNhbGN1bGF0aW9uIGVuYWJsZSAqLw0KI2RlZmluZSBTUElfQ1IxX0JJRElPRV9Qb3MgICAgICAgICAgICAgICAgICAoMTRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBTUElfQ1IxX0JJRElPRV9Nc2sgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBTUElfQ1IxX0JJRElPRV9Qb3MpICAgICAgIC8qITwgMHgwMDAwNDAwMCAqLw0KI2RlZmluZSBTUElfQ1IxX0JJRElPRSAgICAgICAgICAgICAgICAgICAgICBTUElfQ1IxX0JJRElPRV9Nc2sgICAgICAgICAgICAgICAgIC8qITwgT3V0cHV0IGVuYWJsZSBpbiBiaWRpcmVjdGlvbmFsIG1vZGUgKi8NCiNkZWZpbmUgU1BJX0NSMV9CSURJTU9ERV9Qb3MgICAgICAgICAgICAgICAgKDE1VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgU1BJX0NSMV9CSURJTU9ERV9Nc2sgICAgICAgICAgICAgICAgKDB4MVUgPDwgU1BJX0NSMV9CSURJTU9ERV9Qb3MpICAgICAvKiE8IDB4MDAwMDgwMDAgKi8NCiNkZWZpbmUgU1BJX0NSMV9CSURJTU9ERSAgICAgICAgICAgICAgICAgICAgU1BJX0NSMV9CSURJTU9ERV9Nc2sgICAgICAgICAgICAgICAvKiE8IEJpZGlyZWN0aW9uYWwgZGF0YSBtb2RlIGVuYWJsZSAqLw0KDQovKioqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFNQSV9DUjIgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBTUElfQ1IyX1JYRE1BRU5fUG9zICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBTUElfQ1IyX1JYRE1BRU5fTXNrICAgICAgICAgICAgICAgICAoMHgxVSA8PCBTUElfQ1IyX1JYRE1BRU5fUG9zKSAgICAgIC8qITwgMHgwMDAwMDAwMSAqLw0KI2RlZmluZSBTUElfQ1IyX1JYRE1BRU4gICAgICAgICAgICAgICAgICAgICBTUElfQ1IyX1JYRE1BRU5fTXNrICAgICAgICAgICAgICAgIC8qITwgUnggQnVmZmVyIERNQSBFbmFibGUgKi8NCiNkZWZpbmUgU1BJX0NSMl9UWERNQUVOX1BvcyAgICAgICAgICAgICAgICAgKDFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgU1BJX0NSMl9UWERNQUVOX01zayAgICAgICAgICAgICAgICAgKDB4MVUgPDwgU1BJX0NSMl9UWERNQUVOX1BvcykgICAgICAvKiE8IDB4MDAwMDAwMDIgKi8NCiNkZWZpbmUgU1BJX0NSMl9UWERNQUVOICAgICAgICAgICAgICAgICAgICAgU1BJX0NSMl9UWERNQUVOX01zayAgICAgICAgICAgICAgICAvKiE8IFR4IEJ1ZmZlciBETUEgRW5hYmxlICovDQojZGVmaW5lIFNQSV9DUjJfU1NPRV9Qb3MgICAgICAgICAgICAgICAgICAgICgyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFNQSV9DUjJfU1NPRV9Nc2sgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFNQSV9DUjJfU1NPRV9Qb3MpICAgICAgICAgLyohPCAweDAwMDAwMDA0ICovDQojZGVmaW5lIFNQSV9DUjJfU1NPRSAgICAgICAgICAgICAgICAgICAgICAgIFNQSV9DUjJfU1NPRV9Nc2sgICAgICAgICAgICAgICAgICAgLyohPCBTUyBPdXRwdXQgRW5hYmxlICovDQojZGVmaW5lIFNQSV9DUjJfRlJGX1BvcyAgICAgICAgICAgICAgICAgICAgICg0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFNQSV9DUjJfRlJGX01zayAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFNQSV9DUjJfRlJGX1BvcykgICAgICAgICAgLyohPCAweDAwMDAwMDEwICovDQojZGVmaW5lIFNQSV9DUjJfRlJGICAgICAgICAgICAgICAgICAgICAgICAgIFNQSV9DUjJfRlJGX01zayAgICAgICAgICAgICAgICAgICAgLyohPCBGcmFtZSBmb3JtYXQgKi8NCiNkZWZpbmUgU1BJX0NSMl9FUlJJRV9Qb3MgICAgICAgICAgICAgICAgICAgKDVVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgU1BJX0NSMl9FUlJJRV9Nc2sgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgU1BJX0NSMl9FUlJJRV9Qb3MpICAgICAgICAvKiE8IDB4MDAwMDAwMjAgKi8NCiNkZWZpbmUgU1BJX0NSMl9FUlJJRSAgICAgICAgICAgICAgICAgICAgICAgU1BJX0NSMl9FUlJJRV9Nc2sgICAgICAgICAgICAgICAgICAvKiE8IEVycm9yIEludGVycnVwdCBFbmFibGUgKi8NCiNkZWZpbmUgU1BJX0NSMl9SWE5FSUVfUG9zICAgICAgICAgICAgICAgICAgKDZVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgU1BJX0NSMl9SWE5FSUVfTXNrICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgU1BJX0NSMl9SWE5FSUVfUG9zKSAgICAgICAvKiE8IDB4MDAwMDAwNDAgKi8NCiNkZWZpbmUgU1BJX0NSMl9SWE5FSUUgICAgICAgICAgICAgICAgICAgICAgU1BJX0NSMl9SWE5FSUVfTXNrICAgICAgICAgICAgICAgICAvKiE8IFJYIGJ1ZmZlciBOb3QgRW1wdHkgSW50ZXJydXB0IEVuYWJsZSAqLw0KI2RlZmluZSBTUElfQ1IyX1RYRUlFX1BvcyAgICAgICAgICAgICAgICAgICAoN1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBTUElfQ1IyX1RYRUlFX01zayAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBTUElfQ1IyX1RYRUlFX1BvcykgICAgICAgIC8qITwgMHgwMDAwMDA4MCAqLw0KI2RlZmluZSBTUElfQ1IyX1RYRUlFICAgICAgICAgICAgICAgICAgICAgICBTUElfQ1IyX1RYRUlFX01zayAgICAgICAgICAgICAgICAgIC8qITwgVHggYnVmZmVyIEVtcHR5IEludGVycnVwdCBFbmFibGUgKi8NCg0KLyoqKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgU1BJX1NSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgU1BJX1NSX1JYTkVfUG9zICAgICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgU1BJX1NSX1JYTkVfTXNrICAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgU1BJX1NSX1JYTkVfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDAwMDEgKi8NCiNkZWZpbmUgU1BJX1NSX1JYTkUgICAgICAgICAgICAgICAgICAgICAgICAgU1BJX1NSX1JYTkVfTXNrICAgICAgICAgICAgICAgICAgICAvKiE8IFJlY2VpdmUgYnVmZmVyIE5vdCBFbXB0eSAqLw0KI2RlZmluZSBTUElfU1JfVFhFX1BvcyAgICAgICAgICAgICAgICAgICAgICAoMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBTUElfU1JfVFhFX01zayAgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBTUElfU1JfVFhFX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDAwMiAqLw0KI2RlZmluZSBTUElfU1JfVFhFICAgICAgICAgICAgICAgICAgICAgICAgICBTUElfU1JfVFhFX01zayAgICAgICAgICAgICAgICAgICAgIC8qITwgVHJhbnNtaXQgYnVmZmVyIEVtcHR5ICovDQojZGVmaW5lIFNQSV9TUl9DSFNJREVfUG9zICAgICAgICAgICAgICAgICAgICgyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFNQSV9TUl9DSFNJREVfTXNrICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFNQSV9TUl9DSFNJREVfUG9zKSAgICAgICAgLyohPCAweDAwMDAwMDA0ICovDQojZGVmaW5lIFNQSV9TUl9DSFNJREUgICAgICAgICAgICAgICAgICAgICAgIFNQSV9TUl9DSFNJREVfTXNrICAgICAgICAgICAgICAgICAgLyohPCBDaGFubmVsIHNpZGUgKi8NCiNkZWZpbmUgU1BJX1NSX1VEUl9Qb3MgICAgICAgICAgICAgICAgICAgICAgKDNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgU1BJX1NSX1VEUl9Nc2sgICAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgU1BJX1NSX1VEUl9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDggKi8NCiNkZWZpbmUgU1BJX1NSX1VEUiAgICAgICAgICAgICAgICAgICAgICAgICAgU1BJX1NSX1VEUl9Nc2sgICAgICAgICAgICAgICAgICAgICAvKiE8IFVuZGVycnVuIGZsYWcgKi8NCiNkZWZpbmUgU1BJX1NSX0NSQ0VSUl9Qb3MgICAgICAgICAgICAgICAgICAgKDRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgU1BJX1NSX0NSQ0VSUl9Nc2sgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgU1BJX1NSX0NSQ0VSUl9Qb3MpICAgICAgICAvKiE8IDB4MDAwMDAwMTAgKi8NCiNkZWZpbmUgU1BJX1NSX0NSQ0VSUiAgICAgICAgICAgICAgICAgICAgICAgU1BJX1NSX0NSQ0VSUl9Nc2sgICAgICAgICAgICAgICAgICAvKiE8IENSQyBFcnJvciBmbGFnICovDQojZGVmaW5lIFNQSV9TUl9NT0RGX1BvcyAgICAgICAgICAgICAgICAgICAgICg1VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFNQSV9TUl9NT0RGX01zayAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFNQSV9TUl9NT0RGX1BvcykgICAgICAgICAgLyohPCAweDAwMDAwMDIwICovDQojZGVmaW5lIFNQSV9TUl9NT0RGICAgICAgICAgICAgICAgICAgICAgICAgIFNQSV9TUl9NT0RGX01zayAgICAgICAgICAgICAgICAgICAgLyohPCBNb2RlIGZhdWx0ICovDQojZGVmaW5lIFNQSV9TUl9PVlJfUG9zICAgICAgICAgICAgICAgICAgICAgICg2VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFNQSV9TUl9PVlJfTXNrICAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFNQSV9TUl9PVlJfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwMDQwICovDQojZGVmaW5lIFNQSV9TUl9PVlIgICAgICAgICAgICAgICAgICAgICAgICAgIFNQSV9TUl9PVlJfTXNrICAgICAgICAgICAgICAgICAgICAgLyohPCBPdmVycnVuIGZsYWcgKi8NCiNkZWZpbmUgU1BJX1NSX0JTWV9Qb3MgICAgICAgICAgICAgICAgICAgICAgKDdVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgU1BJX1NSX0JTWV9Nc2sgICAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgU1BJX1NSX0JTWV9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDAwODAgKi8NCiNkZWZpbmUgU1BJX1NSX0JTWSAgICAgICAgICAgICAgICAgICAgICAgICAgU1BJX1NSX0JTWV9Nc2sgICAgICAgICAgICAgICAgICAgICAvKiE8IEJ1c3kgZmxhZyAqLw0KI2RlZmluZSBTUElfU1JfRlJFX1BvcyAgICAgICAgICAgICAgICAgICAgICAoOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBTUElfU1JfRlJFX01zayAgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBTUElfU1JfRlJFX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDEwMCAqLw0KI2RlZmluZSBTUElfU1JfRlJFICAgICAgICAgICAgICAgICAgICAgICAgICBTUElfU1JfRlJFX01zayAgICAgICAgICAgICAgICAgICAgIC8qITxGcmFtZSBmb3JtYXQgZXJyb3IgZmxhZyAgKi8NCg0KLyoqKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgU1BJX0RSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgU1BJX0RSX0RSX1BvcyAgICAgICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgU1BJX0RSX0RSX01zayAgICAgICAgICAgICAgICAgICAgICAgKDB4RkZGRlUgPDwgU1BJX0RSX0RSX1BvcykgICAgICAgICAvKiE8IDB4MDAwMEZGRkYgKi8NCiNkZWZpbmUgU1BJX0RSX0RSICAgICAgICAgICAgICAgICAgICAgICAgICAgU1BJX0RSX0RSX01zayAgICAgICAgICAgICAgICAgICAgICAvKiE8IERhdGEgUmVnaXN0ZXIgKi8NCg0KLyoqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBTUElfQ1JDUFIgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgU1BJX0NSQ1BSX0NSQ1BPTFlfUG9zICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgU1BJX0NSQ1BSX0NSQ1BPTFlfTXNrICAgICAgICAgICAgICAgKDB4RkZGRlUgPDwgU1BJX0NSQ1BSX0NSQ1BPTFlfUG9zKSAvKiE8IDB4MDAwMEZGRkYgKi8NCiNkZWZpbmUgU1BJX0NSQ1BSX0NSQ1BPTFkgICAgICAgICAgICAgICAgICAgU1BJX0NSQ1BSX0NSQ1BPTFlfTXNrICAgICAgICAgICAgICAvKiE8IENSQyBwb2x5bm9taWFsIHJlZ2lzdGVyICovDQoNCi8qKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBTUElfUlhDUkNSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIFNQSV9SWENSQ1JfUlhDUkNfUG9zICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFNQSV9SWENSQ1JfUlhDUkNfTXNrICAgICAgICAgICAgICAgICgweEZGRkZVIDw8IFNQSV9SWENSQ1JfUlhDUkNfUG9zKSAgLyohPCAweDAwMDBGRkZGICovDQojZGVmaW5lIFNQSV9SWENSQ1JfUlhDUkMgICAgICAgICAgICAgICAgICAgIFNQSV9SWENSQ1JfUlhDUkNfTXNrICAgICAgICAgICAgICAgLyohPCBSeCBDUkMgUmVnaXN0ZXIgKi8NCg0KLyoqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFNQSV9UWENSQ1IgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgU1BJX1RYQ1JDUl9UWENSQ19Qb3MgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgU1BJX1RYQ1JDUl9UWENSQ19Nc2sgICAgICAgICAgICAgICAgKDB4RkZGRlUgPDwgU1BJX1RYQ1JDUl9UWENSQ19Qb3MpICAvKiE8IDB4MDAwMEZGRkYgKi8NCiNkZWZpbmUgU1BJX1RYQ1JDUl9UWENSQyAgICAgICAgICAgICAgICAgICAgU1BJX1RYQ1JDUl9UWENSQ19Nc2sgICAgICAgICAgICAgICAvKiE8IFR4IENSQyBSZWdpc3RlciAqLw0KDQovKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgU1BJX0kyU0NGR1IgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBTUElfSTJTQ0ZHUl9DSExFTl9Qb3MgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBTUElfSTJTQ0ZHUl9DSExFTl9Nc2sgICAgICAgICAgICAgICAoMHgxVSA8PCBTUElfSTJTQ0ZHUl9DSExFTl9Qb3MpICAgIC8qITwgMHgwMDAwMDAwMSAqLw0KI2RlZmluZSBTUElfSTJTQ0ZHUl9DSExFTiAgICAgICAgICAgICAgICAgICBTUElfSTJTQ0ZHUl9DSExFTl9Nc2sgICAgICAgICAgICAgIC8qITxDaGFubmVsIGxlbmd0aCAobnVtYmVyIG9mIGJpdHMgcGVyIGF1ZGlvIGNoYW5uZWwpICovDQoNCiNkZWZpbmUgU1BJX0kyU0NGR1JfREFUTEVOX1BvcyAgICAgICAgICAgICAgKDFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgU1BJX0kyU0NGR1JfREFUTEVOX01zayAgICAgICAgICAgICAgKDB4M1UgPDwgU1BJX0kyU0NGR1JfREFUTEVOX1BvcykgICAvKiE8IDB4MDAwMDAwMDYgKi8NCiNkZWZpbmUgU1BJX0kyU0NGR1JfREFUTEVOICAgICAgICAgICAgICAgICAgU1BJX0kyU0NGR1JfREFUTEVOX01zayAgICAgICAgICAgICAvKiE8REFUTEVOWzE6MF0gYml0cyAoRGF0YSBsZW5ndGggdG8gYmUgdHJhbnNmZXJyZWQpICovDQojZGVmaW5lIFNQSV9JMlNDRkdSX0RBVExFTl8wICAgICAgICAgICAgICAgICgweDFVIDw8IFNQSV9JMlNDRkdSX0RBVExFTl9Qb3MpICAgLyohPCAweDAwMDAwMDAyICovDQojZGVmaW5lIFNQSV9JMlNDRkdSX0RBVExFTl8xICAgICAgICAgICAgICAgICgweDJVIDw8IFNQSV9JMlNDRkdSX0RBVExFTl9Qb3MpICAgLyohPCAweDAwMDAwMDA0ICovDQoNCiNkZWZpbmUgU1BJX0kyU0NGR1JfQ0tQT0xfUG9zICAgICAgICAgICAgICAgKDNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgU1BJX0kyU0NGR1JfQ0tQT0xfTXNrICAgICAgICAgICAgICAgKDB4MVUgPDwgU1BJX0kyU0NGR1JfQ0tQT0xfUG9zKSAgICAvKiE8IDB4MDAwMDAwMDggKi8NCiNkZWZpbmUgU1BJX0kyU0NGR1JfQ0tQT0wgICAgICAgICAgICAgICAgICAgU1BJX0kyU0NGR1JfQ0tQT0xfTXNrICAgICAgICAgICAgICAvKiE8c3RlYWR5IHN0YXRlIGNsb2NrIHBvbGFyaXR5ICovDQoNCiNkZWZpbmUgU1BJX0kyU0NGR1JfSTJTU1REX1BvcyAgICAgICAgICAgICAgKDRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgU1BJX0kyU0NGR1JfSTJTU1REX01zayAgICAgICAgICAgICAgKDB4M1UgPDwgU1BJX0kyU0NGR1JfSTJTU1REX1BvcykgICAvKiE8IDB4MDAwMDAwMzAgKi8NCiNkZWZpbmUgU1BJX0kyU0NGR1JfSTJTU1REICAgICAgICAgICAgICAgICAgU1BJX0kyU0NGR1JfSTJTU1REX01zayAgICAgICAgICAgICAvKiE8STJTU1REWzE6MF0gYml0cyAoSTJTIHN0YW5kYXJkIHNlbGVjdGlvbikgKi8NCiNkZWZpbmUgU1BJX0kyU0NGR1JfSTJTU1REXzAgICAgICAgICAgICAgICAgKDB4MVUgPDwgU1BJX0kyU0NGR1JfSTJTU1REX1BvcykgICAvKiE8IDB4MDAwMDAwMTAgKi8NCiNkZWZpbmUgU1BJX0kyU0NGR1JfSTJTU1REXzEgICAgICAgICAgICAgICAgKDB4MlUgPDwgU1BJX0kyU0NGR1JfSTJTU1REX1BvcykgICAvKiE8IDB4MDAwMDAwMjAgKi8NCg0KI2RlZmluZSBTUElfSTJTQ0ZHUl9QQ01TWU5DX1BvcyAgICAgICAgICAgICAoN1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBTUElfSTJTQ0ZHUl9QQ01TWU5DX01zayAgICAgICAgICAgICAoMHgxVSA8PCBTUElfSTJTQ0ZHUl9QQ01TWU5DX1BvcykgIC8qITwgMHgwMDAwMDA4MCAqLw0KI2RlZmluZSBTUElfSTJTQ0ZHUl9QQ01TWU5DICAgICAgICAgICAgICAgICBTUElfSTJTQ0ZHUl9QQ01TWU5DX01zayAgICAgICAgICAgIC8qITxQQ00gZnJhbWUgc3luY2hyb25pemF0aW9uICovDQoNCiNkZWZpbmUgU1BJX0kyU0NGR1JfSTJTQ0ZHX1BvcyAgICAgICAgICAgICAgKDhVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgU1BJX0kyU0NGR1JfSTJTQ0ZHX01zayAgICAgICAgICAgICAgKDB4M1UgPDwgU1BJX0kyU0NGR1JfSTJTQ0ZHX1BvcykgICAvKiE8IDB4MDAwMDAzMDAgKi8NCiNkZWZpbmUgU1BJX0kyU0NGR1JfSTJTQ0ZHICAgICAgICAgICAgICAgICAgU1BJX0kyU0NGR1JfSTJTQ0ZHX01zayAgICAgICAgICAgICAvKiE8STJTQ0ZHWzE6MF0gYml0cyAoSTJTIGNvbmZpZ3VyYXRpb24gbW9kZSkgKi8NCiNkZWZpbmUgU1BJX0kyU0NGR1JfSTJTQ0ZHXzAgICAgICAgICAgICAgICAgKDB4MVUgPDwgU1BJX0kyU0NGR1JfSTJTQ0ZHX1BvcykgICAvKiE8IDB4MDAwMDAxMDAgKi8NCiNkZWZpbmUgU1BJX0kyU0NGR1JfSTJTQ0ZHXzEgICAgICAgICAgICAgICAgKDB4MlUgPDwgU1BJX0kyU0NGR1JfSTJTQ0ZHX1BvcykgICAvKiE8IDB4MDAwMDAyMDAgKi8NCg0KI2RlZmluZSBTUElfSTJTQ0ZHUl9JMlNFX1BvcyAgICAgICAgICAgICAgICAoMTBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBTUElfSTJTQ0ZHUl9JMlNFX01zayAgICAgICAgICAgICAgICAoMHgxVSA8PCBTUElfSTJTQ0ZHUl9JMlNFX1BvcykgICAgIC8qITwgMHgwMDAwMDQwMCAqLw0KI2RlZmluZSBTUElfSTJTQ0ZHUl9JMlNFICAgICAgICAgICAgICAgICAgICBTUElfSTJTQ0ZHUl9JMlNFX01zayAgICAgICAgICAgICAgIC8qITxJMlMgRW5hYmxlICovDQojZGVmaW5lIFNQSV9JMlNDRkdSX0kyU01PRF9Qb3MgICAgICAgICAgICAgICgxMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFNQSV9JMlNDRkdSX0kyU01PRF9Nc2sgICAgICAgICAgICAgICgweDFVIDw8IFNQSV9JMlNDRkdSX0kyU01PRF9Qb3MpICAgLyohPCAweDAwMDAwODAwICovDQojZGVmaW5lIFNQSV9JMlNDRkdSX0kyU01PRCAgICAgICAgICAgICAgICAgIFNQSV9JMlNDRkdSX0kyU01PRF9Nc2sgICAgICAgICAgICAgLyohPEkyUyBtb2RlIHNlbGVjdGlvbiAqLw0KDQovKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgU1BJX0kyU1BSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBTUElfSTJTUFJfSTJTRElWX1BvcyAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBTUElfSTJTUFJfSTJTRElWX01zayAgICAgICAgICAgICAgICAoMHhGRlUgPDwgU1BJX0kyU1BSX0kyU0RJVl9Qb3MpICAgIC8qITwgMHgwMDAwMDBGRiAqLw0KI2RlZmluZSBTUElfSTJTUFJfSTJTRElWICAgICAgICAgICAgICAgICAgICBTUElfSTJTUFJfSTJTRElWX01zayAgICAgICAgICAgICAgIC8qITxJMlMgTGluZWFyIHByZXNjYWxlciAqLw0KI2RlZmluZSBTUElfSTJTUFJfT0REX1BvcyAgICAgICAgICAgICAgICAgICAoOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBTUElfSTJTUFJfT0REX01zayAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBTUElfSTJTUFJfT0REX1BvcykgICAgICAgIC8qITwgMHgwMDAwMDEwMCAqLw0KI2RlZmluZSBTUElfSTJTUFJfT0REICAgICAgICAgICAgICAgICAgICAgICBTUElfSTJTUFJfT0REX01zayAgICAgICAgICAgICAgICAgIC8qITxPZGQgZmFjdG9yIGZvciB0aGUgcHJlc2NhbGVyICovDQojZGVmaW5lIFNQSV9JMlNQUl9NQ0tPRV9Qb3MgICAgICAgICAgICAgICAgICg5VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFNQSV9JMlNQUl9NQ0tPRV9Nc2sgICAgICAgICAgICAgICAgICgweDFVIDw8IFNQSV9JMlNQUl9NQ0tPRV9Qb3MpICAgICAgLyohPCAweDAwMDAwMjAwICovDQojZGVmaW5lIFNQSV9JMlNQUl9NQ0tPRSAgICAgICAgICAgICAgICAgICAgIFNQSV9JMlNQUl9NQ0tPRV9Nc2sgICAgICAgICAgICAgICAgLyohPE1hc3RlciBDbG9jayBPdXRwdXQgRW5hYmxlICovDQoNCi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovDQovKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLw0KLyogICAgICAgICAgICAgICAgICAgICAgIFN5c3RlbSBDb25maWd1cmF0aW9uIChTWVNDRkcpICAgICAgICAgICAgICAgICAgICAgICAgKi8NCi8qICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovDQovKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLw0KLyoqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgU1lTQ0ZHX01FTVJNUCByZWdpc3RlciAgKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgU1lTQ0ZHX01FTVJNUF9NRU1fTU9ERV9Qb3MgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgU1lTQ0ZHX01FTVJNUF9NRU1fTU9ERV9Nc2sgICAgICAoMHgzVSA8PCBTWVNDRkdfTUVNUk1QX01FTV9NT0RFX1BvcykgICAvKiE8IDB4MDAwMDAwMDMgKi8NCiNkZWZpbmUgU1lTQ0ZHX01FTVJNUF9NRU1fTU9ERSAgICAgICAgICBTWVNDRkdfTUVNUk1QX01FTV9NT0RFX01zayAgICAgICAgICAgICAvKiE8IFNZU0NGR19NZW1vcnkgUmVtYXAgQ29uZmlnICovDQojZGVmaW5lIFNZU0NGR19NRU1STVBfTUVNX01PREVfMCAgICAgICAgKDB4MVUgPDwgU1lTQ0ZHX01FTVJNUF9NRU1fTU9ERV9Qb3MpICAgLyohPCAweDAwMDAwMDAxICovDQojZGVmaW5lIFNZU0NGR19NRU1STVBfTUVNX01PREVfMSAgICAgICAgKDB4MlUgPDwgU1lTQ0ZHX01FTVJNUF9NRU1fTU9ERV9Qb3MpICAgLyohPCAweDAwMDAwMDAyICovDQojZGVmaW5lIFNZU0NGR19NRU1STVBfQk9PVF9NT0RFX1BvcyAgICAgKDhVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFNZU0NGR19NRU1STVBfQk9PVF9NT0RFX01zayAgICAgKDB4M1UgPDwgU1lTQ0ZHX01FTVJNUF9CT09UX01PREVfUG9zKSAgLyohPCAweDAwMDAwMzAwICovDQojZGVmaW5lIFNZU0NGR19NRU1STVBfQk9PVF9NT0RFICAgICAgICAgU1lTQ0ZHX01FTVJNUF9CT09UX01PREVfTXNrICAgICAgICAgICAgLyohPCBCb290IG1vZGUgQ29uZmlnICovDQojZGVmaW5lIFNZU0NGR19NRU1STVBfQk9PVF9NT0RFXzAgICAgICAgKDB4MVUgPDwgU1lTQ0ZHX01FTVJNUF9CT09UX01PREVfUG9zKSAgLyohPCAweDAwMDAwMTAwICovDQojZGVmaW5lIFNZU0NGR19NRU1STVBfQk9PVF9NT0RFXzEgICAgICAgKDB4MlUgPDwgU1lTQ0ZHX01FTVJNUF9CT09UX01PREVfUG9zKSAgLyohPCAweDAwMDAwMjAwICovDQoNCi8qKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFNZU0NGR19QTUMgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIFNZU0NGR19QTUNfVVNCX1BVX1BvcyAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFNZU0NGR19QTUNfVVNCX1BVX01zayAgICAgICAgICAgKDB4MVUgPDwgU1lTQ0ZHX1BNQ19VU0JfUFVfUG9zKSAgICAgICAgLyohPCAweDAwMDAwMDAxICovDQojZGVmaW5lIFNZU0NGR19QTUNfVVNCX1BVICAgICAgICAgICAgICAgU1lTQ0ZHX1BNQ19VU0JfUFVfTXNrICAgICAgICAgICAgICAgICAgLyohPCBTWVNDRkcgUE1DICovDQojZGVmaW5lIFNZU0NGR19QTUNfTENEX0NBUEFfUG9zICAgICAgICAgKDFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFNZU0NGR19QTUNfTENEX0NBUEFfTXNrICAgICAgICAgKDB4MUZVIDw8IFNZU0NGR19QTUNfTENEX0NBUEFfUG9zKSAgICAgLyohPCAweDAwMDAwMDNFICovDQojZGVmaW5lIFNZU0NGR19QTUNfTENEX0NBUEEgICAgICAgICAgICAgU1lTQ0ZHX1BNQ19MQ0RfQ0FQQV9Nc2sgICAgICAgICAgICAgICAgLyohPCBMQ0RfQ0FQQSBkZWNvdXBsaW5nIGNhcGFjaXRhbmNlIGNvbm5lY3Rpb24gKi8NCiNkZWZpbmUgU1lTQ0ZHX1BNQ19MQ0RfQ0FQQV8wICAgICAgICAgICAoMHgwMVUgPDwgU1lTQ0ZHX1BNQ19MQ0RfQ0FQQV9Qb3MpICAgICAvKiE8IDB4MDAwMDAwMDIgKi8NCiNkZWZpbmUgU1lTQ0ZHX1BNQ19MQ0RfQ0FQQV8xICAgICAgICAgICAoMHgwMlUgPDwgU1lTQ0ZHX1BNQ19MQ0RfQ0FQQV9Qb3MpICAgICAvKiE8IDB4MDAwMDAwMDQgKi8NCiNkZWZpbmUgU1lTQ0ZHX1BNQ19MQ0RfQ0FQQV8yICAgICAgICAgICAoMHgwNFUgPDwgU1lTQ0ZHX1BNQ19MQ0RfQ0FQQV9Qb3MpICAgICAvKiE8IDB4MDAwMDAwMDggKi8NCiNkZWZpbmUgU1lTQ0ZHX1BNQ19MQ0RfQ0FQQV8zICAgICAgICAgICAoMHgwOFUgPDwgU1lTQ0ZHX1BNQ19MQ0RfQ0FQQV9Qb3MpICAgICAvKiE8IDB4MDAwMDAwMTAgKi8NCiNkZWZpbmUgU1lTQ0ZHX1BNQ19MQ0RfQ0FQQV80ICAgICAgICAgICAoMHgxMFUgPDwgU1lTQ0ZHX1BNQ19MQ0RfQ0FQQV9Qb3MpICAgICAvKiE8IDB4MDAwMDAwMjAgKi8NCg0KLyoqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgU1lTQ0ZHX0VYVElDUjEgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKi8NCiNkZWZpbmUgU1lTQ0ZHX0VYVElDUjFfRVhUSTBfUG9zICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgU1lTQ0ZHX0VYVElDUjFfRVhUSTBfTXNrICAgICAgICAoMHhGVSA8PCBTWVNDRkdfRVhUSUNSMV9FWFRJMF9Qb3MpICAgICAvKiE8IDB4MDAwMDAwMEYgKi8NCiNkZWZpbmUgU1lTQ0ZHX0VYVElDUjFfRVhUSTAgICAgICAgICAgICBTWVNDRkdfRVhUSUNSMV9FWFRJMF9Nc2sgICAgICAgICAgICAgICAvKiE8IEVYVEkgMCBjb25maWd1cmF0aW9uICovDQojZGVmaW5lIFNZU0NGR19FWFRJQ1IxX0VYVEkxX1BvcyAgICAgICAgKDRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFNZU0NGR19FWFRJQ1IxX0VYVEkxX01zayAgICAgICAgKDB4RlUgPDwgU1lTQ0ZHX0VYVElDUjFfRVhUSTFfUG9zKSAgICAgLyohPCAweDAwMDAwMEYwICovDQojZGVmaW5lIFNZU0NGR19FWFRJQ1IxX0VYVEkxICAgICAgICAgICAgU1lTQ0ZHX0VYVElDUjFfRVhUSTFfTXNrICAgICAgICAgICAgICAgLyohPCBFWFRJIDEgY29uZmlndXJhdGlvbiAqLw0KI2RlZmluZSBTWVNDRkdfRVhUSUNSMV9FWFRJMl9Qb3MgICAgICAgICg4VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBTWVNDRkdfRVhUSUNSMV9FWFRJMl9Nc2sgICAgICAgICgweEZVIDw8IFNZU0NGR19FWFRJQ1IxX0VYVEkyX1BvcykgICAgIC8qITwgMHgwMDAwMEYwMCAqLw0KI2RlZmluZSBTWVNDRkdfRVhUSUNSMV9FWFRJMiAgICAgICAgICAgIFNZU0NGR19FWFRJQ1IxX0VYVEkyX01zayAgICAgICAgICAgICAgIC8qITwgRVhUSSAyIGNvbmZpZ3VyYXRpb24gKi8NCiNkZWZpbmUgU1lTQ0ZHX0VYVElDUjFfRVhUSTNfUG9zICAgICAgICAoMTJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgU1lTQ0ZHX0VYVElDUjFfRVhUSTNfTXNrICAgICAgICAoMHhGVSA8PCBTWVNDRkdfRVhUSUNSMV9FWFRJM19Qb3MpICAgICAvKiE8IDB4MDAwMEYwMDAgKi8NCiNkZWZpbmUgU1lTQ0ZHX0VYVElDUjFfRVhUSTMgICAgICAgICAgICBTWVNDRkdfRVhUSUNSMV9FWFRJM19Nc2sgICAgICAgICAgICAgICAvKiE8IEVYVEkgMyBjb25maWd1cmF0aW9uICovDQoNCi8qKiANCiAgKiBAYnJpZWYgIEVYVEkwIGNvbmZpZ3VyYXRpb24gIA0KICAqLyANCiNkZWZpbmUgU1lTQ0ZHX0VYVElDUjFfRVhUSTBfUEEgICAgICAgICAoMHgwMDAwMDAwMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBBWzBdIHBpbiAqLw0KI2RlZmluZSBTWVNDRkdfRVhUSUNSMV9FWFRJMF9QQiAgICAgICAgICgweDAwMDAwMDAxVSkgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgUEJbMF0gcGluICovDQojZGVmaW5lIFNZU0NGR19FWFRJQ1IxX0VYVEkwX1BDICAgICAgICAgKDB4MDAwMDAwMDJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBQQ1swXSBwaW4gKi8NCiNkZWZpbmUgU1lTQ0ZHX0VYVElDUjFfRVhUSTBfUEQgICAgICAgICAoMHgwMDAwMDAwM1UpICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBEWzBdIHBpbiAqLw0KI2RlZmluZSBTWVNDRkdfRVhUSUNSMV9FWFRJMF9QRSAgICAgICAgICgweDAwMDAwMDA0VSkgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgUEVbMF0gcGluICovDQojZGVmaW5lIFNZU0NGR19FWFRJQ1IxX0VYVEkwX1BIICAgICAgICAgKDB4MDAwMDAwMDVVKSAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBQSFswXSBwaW4gKi8NCiNkZWZpbmUgU1lTQ0ZHX0VYVElDUjFfRVhUSTBfUEYgICAgICAgICAoMHgwMDAwMDAwNlUpICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBGWzBdIHBpbiAqLw0KI2RlZmluZSBTWVNDRkdfRVhUSUNSMV9FWFRJMF9QRyAgICAgICAgICgweDAwMDAwMDA3VSkgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgUEdbMF0gcGluICovDQoNCi8qKiANCiAgKiBAYnJpZWYgIEVYVEkxIGNvbmZpZ3VyYXRpb24gIA0KICAqLyANCiNkZWZpbmUgU1lTQ0ZHX0VYVElDUjFfRVhUSTFfUEEgICAgICAgICAoMHgwMDAwMDAwMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBBWzFdIHBpbiAqLw0KI2RlZmluZSBTWVNDRkdfRVhUSUNSMV9FWFRJMV9QQiAgICAgICAgICgweDAwMDAwMDEwVSkgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgUEJbMV0gcGluICovDQojZGVmaW5lIFNZU0NGR19FWFRJQ1IxX0VYVEkxX1BDICAgICAgICAgKDB4MDAwMDAwMjBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBQQ1sxXSBwaW4gKi8NCiNkZWZpbmUgU1lTQ0ZHX0VYVElDUjFfRVhUSTFfUEQgICAgICAgICAoMHgwMDAwMDAzMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBEWzFdIHBpbiAqLw0KI2RlZmluZSBTWVNDRkdfRVhUSUNSMV9FWFRJMV9QRSAgICAgICAgICgweDAwMDAwMDQwVSkgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgUEVbMV0gcGluICovDQojZGVmaW5lIFNZU0NGR19FWFRJQ1IxX0VYVEkxX1BIICAgICAgICAgKDB4MDAwMDAwNTBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBQSFsxXSBwaW4gKi8NCiNkZWZpbmUgU1lTQ0ZHX0VYVElDUjFfRVhUSTFfUEYgICAgICAgICAoMHgwMDAwMDA2MFUpICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBGWzFdIHBpbiAqLw0KI2RlZmluZSBTWVNDRkdfRVhUSUNSMV9FWFRJMV9QRyAgICAgICAgICgweDAwMDAwMDcwVSkgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgUEdbMV0gcGluICovDQoNCi8qKiANCiAgKiBAYnJpZWYgIEVYVEkyIGNvbmZpZ3VyYXRpb24gIA0KICAqLyANCiNkZWZpbmUgU1lTQ0ZHX0VYVElDUjFfRVhUSTJfUEEgICAgICAgICAoMHgwMDAwMDAwMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBBWzJdIHBpbiAqLw0KI2RlZmluZSBTWVNDRkdfRVhUSUNSMV9FWFRJMl9QQiAgICAgICAgICgweDAwMDAwMTAwVSkgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgUEJbMl0gcGluICovDQojZGVmaW5lIFNZU0NGR19FWFRJQ1IxX0VYVEkyX1BDICAgICAgICAgKDB4MDAwMDAyMDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBQQ1syXSBwaW4gKi8NCiNkZWZpbmUgU1lTQ0ZHX0VYVElDUjFfRVhUSTJfUEQgICAgICAgICAoMHgwMDAwMDMwMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBEWzJdIHBpbiAqLw0KI2RlZmluZSBTWVNDRkdfRVhUSUNSMV9FWFRJMl9QRSAgICAgICAgICgweDAwMDAwNDAwVSkgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgUEVbMl0gcGluICovDQojZGVmaW5lIFNZU0NGR19FWFRJQ1IxX0VYVEkyX1BIICAgICAgICAgKDB4MDAwMDA1MDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBQSFsyXSBwaW4gKi8NCiNkZWZpbmUgU1lTQ0ZHX0VYVElDUjFfRVhUSTJfUEYgICAgICAgICAoMHgwMDAwMDYwMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBGWzJdIHBpbiAqLw0KI2RlZmluZSBTWVNDRkdfRVhUSUNSMV9FWFRJMl9QRyAgICAgICAgICgweDAwMDAwNzAwVSkgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgUEdbMl0gcGluICovDQoNCi8qKiANCiAgKiBAYnJpZWYgIEVYVEkzIGNvbmZpZ3VyYXRpb24gIA0KICAqLyANCiNkZWZpbmUgU1lTQ0ZHX0VYVElDUjFfRVhUSTNfUEEgICAgICAgICAoMHgwMDAwMDAwMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBBWzNdIHBpbiAqLw0KI2RlZmluZSBTWVNDRkdfRVhUSUNSMV9FWFRJM19QQiAgICAgICAgICgweDAwMDAxMDAwVSkgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgUEJbM10gcGluICovDQojZGVmaW5lIFNZU0NGR19FWFRJQ1IxX0VYVEkzX1BDICAgICAgICAgKDB4MDAwMDIwMDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBQQ1szXSBwaW4gKi8NCiNkZWZpbmUgU1lTQ0ZHX0VYVElDUjFfRVhUSTNfUEQgICAgICAgICAoMHgwMDAwMzAwMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBEWzNdIHBpbiAqLw0KI2RlZmluZSBTWVNDRkdfRVhUSUNSMV9FWFRJM19QRSAgICAgICAgICgweDAwMDA0MDAwVSkgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgUEVbM10gcGluICovDQojZGVmaW5lIFNZU0NGR19FWFRJQ1IxX0VYVEkzX1BGICAgICAgICAgKDB4MDAwMDMwMDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBQRlszXSBwaW4gKi8NCiNkZWZpbmUgU1lTQ0ZHX0VYVElDUjFfRVhUSTNfUEcgICAgICAgICAoMHgwMDAwNDAwMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBHWzNdIHBpbiAqLw0KDQovKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBTWVNDRkdfRVhUSUNSMiByZWdpc3RlciAgKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIFNZU0NGR19FWFRJQ1IyX0VYVEk0X1BvcyAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFNZU0NGR19FWFRJQ1IyX0VYVEk0X01zayAgICAgICAgKDB4RlUgPDwgU1lTQ0ZHX0VYVElDUjJfRVhUSTRfUG9zKSAgICAgLyohPCAweDAwMDAwMDBGICovDQojZGVmaW5lIFNZU0NGR19FWFRJQ1IyX0VYVEk0ICAgICAgICAgICAgU1lTQ0ZHX0VYVElDUjJfRVhUSTRfTXNrICAgICAgICAgICAgICAgLyohPCBFWFRJIDQgY29uZmlndXJhdGlvbiAqLw0KI2RlZmluZSBTWVNDRkdfRVhUSUNSMl9FWFRJNV9Qb3MgICAgICAgICg0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBTWVNDRkdfRVhUSUNSMl9FWFRJNV9Nc2sgICAgICAgICgweEZVIDw8IFNZU0NGR19FWFRJQ1IyX0VYVEk1X1BvcykgICAgIC8qITwgMHgwMDAwMDBGMCAqLw0KI2RlZmluZSBTWVNDRkdfRVhUSUNSMl9FWFRJNSAgICAgICAgICAgIFNZU0NGR19FWFRJQ1IyX0VYVEk1X01zayAgICAgICAgICAgICAgIC8qITwgRVhUSSA1IGNvbmZpZ3VyYXRpb24gKi8NCiNkZWZpbmUgU1lTQ0ZHX0VYVElDUjJfRVhUSTZfUG9zICAgICAgICAoOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgU1lTQ0ZHX0VYVElDUjJfRVhUSTZfTXNrICAgICAgICAoMHhGVSA8PCBTWVNDRkdfRVhUSUNSMl9FWFRJNl9Qb3MpICAgICAvKiE8IDB4MDAwMDBGMDAgKi8NCiNkZWZpbmUgU1lTQ0ZHX0VYVElDUjJfRVhUSTYgICAgICAgICAgICBTWVNDRkdfRVhUSUNSMl9FWFRJNl9Nc2sgICAgICAgICAgICAgICAvKiE8IEVYVEkgNiBjb25maWd1cmF0aW9uICovDQojZGVmaW5lIFNZU0NGR19FWFRJQ1IyX0VYVEk3X1BvcyAgICAgICAgKDEyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFNZU0NGR19FWFRJQ1IyX0VYVEk3X01zayAgICAgICAgKDB4RlUgPDwgU1lTQ0ZHX0VYVElDUjJfRVhUSTdfUG9zKSAgICAgLyohPCAweDAwMDBGMDAwICovDQojZGVmaW5lIFNZU0NGR19FWFRJQ1IyX0VYVEk3ICAgICAgICAgICAgU1lTQ0ZHX0VYVElDUjJfRVhUSTdfTXNrICAgICAgICAgICAgICAgLyohPCBFWFRJIDcgY29uZmlndXJhdGlvbiAqLw0KDQovKiogDQogICogQGJyaWVmICBFWFRJNCBjb25maWd1cmF0aW9uICANCiAgKi8gDQojZGVmaW5lIFNZU0NGR19FWFRJQ1IyX0VYVEk0X1BBICAgICAgICAgKDB4MDAwMDAwMDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBQQVs0XSBwaW4gKi8NCiNkZWZpbmUgU1lTQ0ZHX0VYVElDUjJfRVhUSTRfUEIgICAgICAgICAoMHgwMDAwMDAwMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBCWzRdIHBpbiAqLw0KI2RlZmluZSBTWVNDRkdfRVhUSUNSMl9FWFRJNF9QQyAgICAgICAgICgweDAwMDAwMDAyVSkgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgUENbNF0gcGluICovDQojZGVmaW5lIFNZU0NGR19FWFRJQ1IyX0VYVEk0X1BEICAgICAgICAgKDB4MDAwMDAwMDNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBQRFs0XSBwaW4gKi8NCiNkZWZpbmUgU1lTQ0ZHX0VYVElDUjJfRVhUSTRfUEUgICAgICAgICAoMHgwMDAwMDAwNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBFWzRdIHBpbiAqLw0KI2RlZmluZSBTWVNDRkdfRVhUSUNSMl9FWFRJNF9QRiAgICAgICAgICgweDAwMDAwMDA2VSkgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgUEZbNF0gcGluICovDQojZGVmaW5lIFNZU0NGR19FWFRJQ1IyX0VYVEk0X1BHICAgICAgICAgKDB4MDAwMDAwMDdVKSAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBQR1s0XSBwaW4gKi8NCg0KLyoqIA0KICAqIEBicmllZiAgRVhUSTUgY29uZmlndXJhdGlvbiAgDQogICovIA0KI2RlZmluZSBTWVNDRkdfRVhUSUNSMl9FWFRJNV9QQSAgICAgICAgICgweDAwMDAwMDAwVSkgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgUEFbNV0gcGluICovDQojZGVmaW5lIFNZU0NGR19FWFRJQ1IyX0VYVEk1X1BCICAgICAgICAgKDB4MDAwMDAwMTBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBQQls1XSBwaW4gKi8NCiNkZWZpbmUgU1lTQ0ZHX0VYVElDUjJfRVhUSTVfUEMgICAgICAgICAoMHgwMDAwMDAyMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBDWzVdIHBpbiAqLw0KI2RlZmluZSBTWVNDRkdfRVhUSUNSMl9FWFRJNV9QRCAgICAgICAgICgweDAwMDAwMDMwVSkgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgUERbNV0gcGluICovDQojZGVmaW5lIFNZU0NGR19FWFRJQ1IyX0VYVEk1X1BFICAgICAgICAgKDB4MDAwMDAwNDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBQRVs1XSBwaW4gKi8NCiNkZWZpbmUgU1lTQ0ZHX0VYVElDUjJfRVhUSTVfUEYgICAgICAgICAoMHgwMDAwMDA2MFUpICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBGWzVdIHBpbiAqLw0KI2RlZmluZSBTWVNDRkdfRVhUSUNSMl9FWFRJNV9QRyAgICAgICAgICgweDAwMDAwMDcwVSkgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgUEdbNV0gcGluICovDQoNCi8qKiANCiAgKiBAYnJpZWYgIEVYVEk2IGNvbmZpZ3VyYXRpb24gIA0KICAqLyANCiNkZWZpbmUgU1lTQ0ZHX0VYVElDUjJfRVhUSTZfUEEgICAgICAgICAoMHgwMDAwMDAwMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBBWzZdIHBpbiAqLw0KI2RlZmluZSBTWVNDRkdfRVhUSUNSMl9FWFRJNl9QQiAgICAgICAgICgweDAwMDAwMTAwVSkgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgUEJbNl0gcGluICovDQojZGVmaW5lIFNZU0NGR19FWFRJQ1IyX0VYVEk2X1BDICAgICAgICAgKDB4MDAwMDAyMDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBQQ1s2XSBwaW4gKi8NCiNkZWZpbmUgU1lTQ0ZHX0VYVElDUjJfRVhUSTZfUEQgICAgICAgICAoMHgwMDAwMDMwMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBEWzZdIHBpbiAqLw0KI2RlZmluZSBTWVNDRkdfRVhUSUNSMl9FWFRJNl9QRSAgICAgICAgICgweDAwMDAwNDAwVSkgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgUEVbNl0gcGluICovDQojZGVmaW5lIFNZU0NGR19FWFRJQ1IyX0VYVEk2X1BGICAgICAgICAgKDB4MDAwMDA2MDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBQRls2XSBwaW4gKi8NCiNkZWZpbmUgU1lTQ0ZHX0VYVElDUjJfRVhUSTZfUEcgICAgICAgICAoMHgwMDAwMDcwMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBHWzZdIHBpbiAqLw0KDQovKiogDQogICogQGJyaWVmICBFWFRJNyBjb25maWd1cmF0aW9uICANCiAgKi8gDQojZGVmaW5lIFNZU0NGR19FWFRJQ1IyX0VYVEk3X1BBICAgICAgICAgKDB4MDAwMDAwMDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBQQVs3XSBwaW4gKi8NCiNkZWZpbmUgU1lTQ0ZHX0VYVElDUjJfRVhUSTdfUEIgICAgICAgICAoMHgwMDAwMTAwMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBCWzddIHBpbiAqLw0KI2RlZmluZSBTWVNDRkdfRVhUSUNSMl9FWFRJN19QQyAgICAgICAgICgweDAwMDAyMDAwVSkgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgUENbN10gcGluICovDQojZGVmaW5lIFNZU0NGR19FWFRJQ1IyX0VYVEk3X1BEICAgICAgICAgKDB4MDAwMDMwMDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBQRFs3XSBwaW4gKi8NCiNkZWZpbmUgU1lTQ0ZHX0VYVElDUjJfRVhUSTdfUEUgICAgICAgICAoMHgwMDAwNDAwMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBFWzddIHBpbiAqLw0KI2RlZmluZSBTWVNDRkdfRVhUSUNSMl9FWFRJN19QRiAgICAgICAgICgweDAwMDA2MDAwVSkgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgUEZbN10gcGluICovDQojZGVmaW5lIFNZU0NGR19FWFRJQ1IyX0VYVEk3X1BHICAgICAgICAgKDB4MDAwMDcwMDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBQR1s3XSBwaW4gKi8NCg0KLyoqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgU1lTQ0ZHX0VYVElDUjMgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBTWVNDRkdfRVhUSUNSM19FWFRJOF9Qb3MgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBTWVNDRkdfRVhUSUNSM19FWFRJOF9Nc2sgICAgICAgICgweEZVIDw8IFNZU0NGR19FWFRJQ1IzX0VYVEk4X1BvcykgICAgIC8qITwgMHgwMDAwMDAwRiAqLw0KI2RlZmluZSBTWVNDRkdfRVhUSUNSM19FWFRJOCAgICAgICAgICAgIFNZU0NGR19FWFRJQ1IzX0VYVEk4X01zayAgICAgICAgICAgICAgIC8qITwgRVhUSSA4IGNvbmZpZ3VyYXRpb24gKi8NCiNkZWZpbmUgU1lTQ0ZHX0VYVElDUjNfRVhUSTlfUG9zICAgICAgICAoNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgU1lTQ0ZHX0VYVElDUjNfRVhUSTlfTXNrICAgICAgICAoMHhGVSA8PCBTWVNDRkdfRVhUSUNSM19FWFRJOV9Qb3MpICAgICAvKiE8IDB4MDAwMDAwRjAgKi8NCiNkZWZpbmUgU1lTQ0ZHX0VYVElDUjNfRVhUSTkgICAgICAgICAgICBTWVNDRkdfRVhUSUNSM19FWFRJOV9Nc2sgICAgICAgICAgICAgICAvKiE8IEVYVEkgOSBjb25maWd1cmF0aW9uICovDQojZGVmaW5lIFNZU0NGR19FWFRJQ1IzX0VYVEkxMF9Qb3MgICAgICAgKDhVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFNZU0NGR19FWFRJQ1IzX0VYVEkxMF9Nc2sgICAgICAgKDB4RlUgPDwgU1lTQ0ZHX0VYVElDUjNfRVhUSTEwX1BvcykgICAgLyohPCAweDAwMDAwRjAwICovDQojZGVmaW5lIFNZU0NGR19FWFRJQ1IzX0VYVEkxMCAgICAgICAgICAgU1lTQ0ZHX0VYVElDUjNfRVhUSTEwX01zayAgICAgICAgICAgICAgLyohPCBFWFRJIDEwIGNvbmZpZ3VyYXRpb24gKi8NCiNkZWZpbmUgU1lTQ0ZHX0VYVElDUjNfRVhUSTExX1BvcyAgICAgICAoMTJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgU1lTQ0ZHX0VYVElDUjNfRVhUSTExX01zayAgICAgICAoMHhGVSA8PCBTWVNDRkdfRVhUSUNSM19FWFRJMTFfUG9zKSAgICAvKiE8IDB4MDAwMEYwMDAgKi8NCiNkZWZpbmUgU1lTQ0ZHX0VYVElDUjNfRVhUSTExICAgICAgICAgICBTWVNDRkdfRVhUSUNSM19FWFRJMTFfTXNrICAgICAgICAgICAgICAvKiE8IEVYVEkgMTEgY29uZmlndXJhdGlvbiAqLw0KDQovKiogDQogICogQGJyaWVmICBFWFRJOCBjb25maWd1cmF0aW9uICANCiAgKi8gDQojZGVmaW5lIFNZU0NGR19FWFRJQ1IzX0VYVEk4X1BBICAgICAgICAgKDB4MDAwMDAwMDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBQQVs4XSBwaW4gKi8NCiNkZWZpbmUgU1lTQ0ZHX0VYVElDUjNfRVhUSThfUEIgICAgICAgICAoMHgwMDAwMDAwMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBCWzhdIHBpbiAqLw0KI2RlZmluZSBTWVNDRkdfRVhUSUNSM19FWFRJOF9QQyAgICAgICAgICgweDAwMDAwMDAyVSkgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgUENbOF0gcGluICovDQojZGVmaW5lIFNZU0NGR19FWFRJQ1IzX0VYVEk4X1BEICAgICAgICAgKDB4MDAwMDAwMDNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBQRFs4XSBwaW4gKi8NCiNkZWZpbmUgU1lTQ0ZHX0VYVElDUjNfRVhUSThfUEUgICAgICAgICAoMHgwMDAwMDAwNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBFWzhdIHBpbiAqLw0KI2RlZmluZSBTWVNDRkdfRVhUSUNSM19FWFRJOF9QRiAgICAgICAgICgweDAwMDAwMDA2VSkgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgUEZbOF0gcGluICovDQojZGVmaW5lIFNZU0NGR19FWFRJQ1IzX0VYVEk4X1BHICAgICAgICAgKDB4MDAwMDAwMDdVKSAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBQR1s4XSBwaW4gKi8NCg0KLyoqIA0KICAqIEBicmllZiAgRVhUSTkgY29uZmlndXJhdGlvbiAgDQogICovIA0KI2RlZmluZSBTWVNDRkdfRVhUSUNSM19FWFRJOV9QQSAgICAgICAgICgweDAwMDAwMDAwVSkgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgUEFbOV0gcGluICovDQojZGVmaW5lIFNZU0NGR19FWFRJQ1IzX0VYVEk5X1BCICAgICAgICAgKDB4MDAwMDAwMTBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBQQls5XSBwaW4gKi8NCiNkZWZpbmUgU1lTQ0ZHX0VYVElDUjNfRVhUSTlfUEMgICAgICAgICAoMHgwMDAwMDAyMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBDWzldIHBpbiAqLw0KI2RlZmluZSBTWVNDRkdfRVhUSUNSM19FWFRJOV9QRCAgICAgICAgICgweDAwMDAwMDMwVSkgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgUERbOV0gcGluICovDQojZGVmaW5lIFNZU0NGR19FWFRJQ1IzX0VYVEk5X1BFICAgICAgICAgKDB4MDAwMDAwNDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBQRVs5XSBwaW4gKi8NCiNkZWZpbmUgU1lTQ0ZHX0VYVElDUjNfRVhUSTlfUEYgICAgICAgICAoMHgwMDAwMDA2MFUpICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBGWzldIHBpbiAqLw0KI2RlZmluZSBTWVNDRkdfRVhUSUNSM19FWFRJOV9QRyAgICAgICAgICgweDAwMDAwMDcwVSkgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgUEdbOV0gcGluICovDQoNCi8qKiANCiAgKiBAYnJpZWYgIEVYVEkxMCBjb25maWd1cmF0aW9uICANCiAgKi8gDQojZGVmaW5lIFNZU0NGR19FWFRJQ1IzX0VYVEkxMF9QQSAgICAgICAgKDB4MDAwMDAwMDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBQQVsxMF0gcGluICovDQojZGVmaW5lIFNZU0NGR19FWFRJQ1IzX0VYVEkxMF9QQiAgICAgICAgKDB4MDAwMDAxMDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBQQlsxMF0gcGluICovDQojZGVmaW5lIFNZU0NGR19FWFRJQ1IzX0VYVEkxMF9QQyAgICAgICAgKDB4MDAwMDAyMDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBQQ1sxMF0gcGluICovDQojZGVmaW5lIFNZU0NGR19FWFRJQ1IzX0VYVEkxMF9QRCAgICAgICAgKDB4MDAwMDAzMDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBQRFsxMF0gcGluICovDQojZGVmaW5lIFNZU0NGR19FWFRJQ1IzX0VYVEkxMF9QRSAgICAgICAgKDB4MDAwMDA0MDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBQRVsxMF0gcGluICovDQojZGVmaW5lIFNZU0NGR19FWFRJQ1IzX0VYVEkxMF9QRiAgICAgICAgKDB4MDAwMDA2MDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBQRlsxMF0gcGluICovDQojZGVmaW5lIFNZU0NGR19FWFRJQ1IzX0VYVEkxMF9QRyAgICAgICAgKDB4MDAwMDA3MDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBQR1sxMF0gcGluICovDQoNCi8qKiANCiAgKiBAYnJpZWYgIEVYVEkxMSBjb25maWd1cmF0aW9uICANCiAgKi8gDQojZGVmaW5lIFNZU0NGR19FWFRJQ1IzX0VYVEkxMV9QQSAgICAgICAgKDB4MDAwMDAwMDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBQQVsxMV0gcGluICovDQojZGVmaW5lIFNZU0NGR19FWFRJQ1IzX0VYVEkxMV9QQiAgICAgICAgKDB4MDAwMDEwMDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBQQlsxMV0gcGluICovDQojZGVmaW5lIFNZU0NGR19FWFRJQ1IzX0VYVEkxMV9QQyAgICAgICAgKDB4MDAwMDIwMDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBQQ1sxMV0gcGluICovDQojZGVmaW5lIFNZU0NGR19FWFRJQ1IzX0VYVEkxMV9QRCAgICAgICAgKDB4MDAwMDMwMDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBQRFsxMV0gcGluICovDQojZGVmaW5lIFNZU0NGR19FWFRJQ1IzX0VYVEkxMV9QRSAgICAgICAgKDB4MDAwMDQwMDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBQRVsxMV0gcGluICovDQojZGVmaW5lIFNZU0NGR19FWFRJQ1IzX0VYVEkxMV9QRiAgICAgICAgKDB4MDAwMDYwMDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBQRlsxMV0gcGluICovDQojZGVmaW5lIFNZU0NGR19FWFRJQ1IzX0VYVEkxMV9QRyAgICAgICAgKDB4MDAwMDcwMDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBQR1sxMV0gcGluICovDQoNCi8qKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFNZU0NGR19FWFRJQ1I0IHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgU1lTQ0ZHX0VYVElDUjRfRVhUSTEyX1BvcyAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgU1lTQ0ZHX0VYVElDUjRfRVhUSTEyX01zayAgICAgICAoMHhGVSA8PCBTWVNDRkdfRVhUSUNSNF9FWFRJMTJfUG9zKSAgICAvKiE8IDB4MDAwMDAwMEYgKi8NCiNkZWZpbmUgU1lTQ0ZHX0VYVElDUjRfRVhUSTEyICAgICAgICAgICBTWVNDRkdfRVhUSUNSNF9FWFRJMTJfTXNrICAgICAgICAgICAgICAvKiE8IEVYVEkgMTIgY29uZmlndXJhdGlvbiAqLw0KI2RlZmluZSBTWVNDRkdfRVhUSUNSNF9FWFRJMTNfUG9zICAgICAgICg0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBTWVNDRkdfRVhUSUNSNF9FWFRJMTNfTXNrICAgICAgICgweEZVIDw8IFNZU0NGR19FWFRJQ1I0X0VYVEkxM19Qb3MpICAgIC8qITwgMHgwMDAwMDBGMCAqLw0KI2RlZmluZSBTWVNDRkdfRVhUSUNSNF9FWFRJMTMgICAgICAgICAgIFNZU0NGR19FWFRJQ1I0X0VYVEkxM19Nc2sgICAgICAgICAgICAgIC8qITwgRVhUSSAxMyBjb25maWd1cmF0aW9uICovDQojZGVmaW5lIFNZU0NGR19FWFRJQ1I0X0VYVEkxNF9Qb3MgICAgICAgKDhVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFNZU0NGR19FWFRJQ1I0X0VYVEkxNF9Nc2sgICAgICAgKDB4RlUgPDwgU1lTQ0ZHX0VYVElDUjRfRVhUSTE0X1BvcykgICAgLyohPCAweDAwMDAwRjAwICovDQojZGVmaW5lIFNZU0NGR19FWFRJQ1I0X0VYVEkxNCAgICAgICAgICAgU1lTQ0ZHX0VYVElDUjRfRVhUSTE0X01zayAgICAgICAgICAgICAgLyohPCBFWFRJIDE0IGNvbmZpZ3VyYXRpb24gKi8NCiNkZWZpbmUgU1lTQ0ZHX0VYVElDUjRfRVhUSTE1X1BvcyAgICAgICAoMTJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgU1lTQ0ZHX0VYVElDUjRfRVhUSTE1X01zayAgICAgICAoMHhGVSA8PCBTWVNDRkdfRVhUSUNSNF9FWFRJMTVfUG9zKSAgICAvKiE8IDB4MDAwMEYwMDAgKi8NCiNkZWZpbmUgU1lTQ0ZHX0VYVElDUjRfRVhUSTE1ICAgICAgICAgICBTWVNDRkdfRVhUSUNSNF9FWFRJMTVfTXNrICAgICAgICAgICAgICAvKiE8IEVYVEkgMTUgY29uZmlndXJhdGlvbiAqLw0KDQovKiogDQogICogQGJyaWVmICBFWFRJMTIgY29uZmlndXJhdGlvbiAgDQogICovIA0KI2RlZmluZSBTWVNDRkdfRVhUSUNSNF9FWFRJMTJfUEEgICAgICAgICgweDAwMDAwMDAwVSkgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgUEFbMTJdIHBpbiAqLw0KI2RlZmluZSBTWVNDRkdfRVhUSUNSNF9FWFRJMTJfUEIgICAgICAgICgweDAwMDAwMDAxVSkgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgUEJbMTJdIHBpbiAqLw0KI2RlZmluZSBTWVNDRkdfRVhUSUNSNF9FWFRJMTJfUEMgICAgICAgICgweDAwMDAwMDAyVSkgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgUENbMTJdIHBpbiAqLw0KI2RlZmluZSBTWVNDRkdfRVhUSUNSNF9FWFRJMTJfUEQgICAgICAgICgweDAwMDAwMDAzVSkgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgUERbMTJdIHBpbiAqLw0KI2RlZmluZSBTWVNDRkdfRVhUSUNSNF9FWFRJMTJfUEUgICAgICAgICgweDAwMDAwMDA0VSkgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgUEVbMTJdIHBpbiAqLw0KI2RlZmluZSBTWVNDRkdfRVhUSUNSNF9FWFRJMTJfUEYgICAgICAgICgweDAwMDAwMDA2VSkgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgUEZbMTJdIHBpbiAqLw0KI2RlZmluZSBTWVNDRkdfRVhUSUNSNF9FWFRJMTJfUEcgICAgICAgICgweDAwMDAwMDA3VSkgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgUEdbMTJdIHBpbiAqLw0KDQovKiogDQogICogQGJyaWVmICBFWFRJMTMgY29uZmlndXJhdGlvbiAgDQogICovIA0KI2RlZmluZSBTWVNDRkdfRVhUSUNSNF9FWFRJMTNfUEEgICAgICAgICgweDAwMDAwMDAwVSkgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgUEFbMTNdIHBpbiAqLw0KI2RlZmluZSBTWVNDRkdfRVhUSUNSNF9FWFRJMTNfUEIgICAgICAgICgweDAwMDAwMDEwVSkgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgUEJbMTNdIHBpbiAqLw0KI2RlZmluZSBTWVNDRkdfRVhUSUNSNF9FWFRJMTNfUEMgICAgICAgICgweDAwMDAwMDIwVSkgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgUENbMTNdIHBpbiAqLw0KI2RlZmluZSBTWVNDRkdfRVhUSUNSNF9FWFRJMTNfUEQgICAgICAgICgweDAwMDAwMDMwVSkgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgUERbMTNdIHBpbiAqLw0KI2RlZmluZSBTWVNDRkdfRVhUSUNSNF9FWFRJMTNfUEUgICAgICAgICgweDAwMDAwMDQwVSkgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgUEVbMTNdIHBpbiAqLw0KI2RlZmluZSBTWVNDRkdfRVhUSUNSNF9FWFRJMTNfUEYgICAgICAgICgweDAwMDAwMDYwVSkgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgUEZbMTNdIHBpbiAqLw0KI2RlZmluZSBTWVNDRkdfRVhUSUNSNF9FWFRJMTNfUEcgICAgICAgICgweDAwMDAwMDcwVSkgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgUEdbMTNdIHBpbiAqLw0KDQovKiogDQogICogQGJyaWVmICBFWFRJMTQgY29uZmlndXJhdGlvbiAgDQogICovIA0KI2RlZmluZSBTWVNDRkdfRVhUSUNSNF9FWFRJMTRfUEEgICAgICAgICgweDAwMDAwMDAwVSkgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgUEFbMTRdIHBpbiAqLw0KI2RlZmluZSBTWVNDRkdfRVhUSUNSNF9FWFRJMTRfUEIgICAgICAgICgweDAwMDAwMTAwVSkgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgUEJbMTRdIHBpbiAqLw0KI2RlZmluZSBTWVNDRkdfRVhUSUNSNF9FWFRJMTRfUEMgICAgICAgICgweDAwMDAwMjAwVSkgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgUENbMTRdIHBpbiAqLw0KI2RlZmluZSBTWVNDRkdfRVhUSUNSNF9FWFRJMTRfUEQgICAgICAgICgweDAwMDAwMzAwVSkgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgUERbMTRdIHBpbiAqLw0KI2RlZmluZSBTWVNDRkdfRVhUSUNSNF9FWFRJMTRfUEUgICAgICAgICgweDAwMDAwNDAwVSkgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgUEVbMTRdIHBpbiAqLw0KI2RlZmluZSBTWVNDRkdfRVhUSUNSNF9FWFRJMTRfUEYgICAgICAgICgweDAwMDAwNjAwVSkgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgUEZbMTRdIHBpbiAqLw0KI2RlZmluZSBTWVNDRkdfRVhUSUNSNF9FWFRJMTRfUEcgICAgICAgICgweDAwMDAwNzAwVSkgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgUEdbMTRdIHBpbiAqLw0KDQovKiogDQogICogQGJyaWVmICBFWFRJMTUgY29uZmlndXJhdGlvbiAgDQogICovIA0KI2RlZmluZSBTWVNDRkdfRVhUSUNSNF9FWFRJMTVfUEEgICAgICAgICgweDAwMDAwMDAwVSkgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgUEFbMTVdIHBpbiAqLw0KI2RlZmluZSBTWVNDRkdfRVhUSUNSNF9FWFRJMTVfUEIgICAgICAgICgweDAwMDAxMDAwVSkgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgUEJbMTVdIHBpbiAqLw0KI2RlZmluZSBTWVNDRkdfRVhUSUNSNF9FWFRJMTVfUEMgICAgICAgICgweDAwMDAyMDAwVSkgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgUENbMTVdIHBpbiAqLw0KI2RlZmluZSBTWVNDRkdfRVhUSUNSNF9FWFRJMTVfUEQgICAgICAgICgweDAwMDAzMDAwVSkgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgUERbMTVdIHBpbiAqLw0KI2RlZmluZSBTWVNDRkdfRVhUSUNSNF9FWFRJMTVfUEUgICAgICAgICgweDAwMDA0MDAwVSkgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgUEVbMTVdIHBpbiAqLw0KI2RlZmluZSBTWVNDRkdfRVhUSUNSNF9FWFRJMTVfUEYgICAgICAgICgweDAwMDA2MDAwVSkgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgUEZbMTVdIHBpbiAqLw0KI2RlZmluZSBTWVNDRkdfRVhUSUNSNF9FWFRJMTVfUEcgICAgICAgICgweDAwMDA3MDAwVSkgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgUEdbMTVdIHBpbiAqLw0KIA0KLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8NCi8qICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovDQovKiAgICAgICAgICAgICAgICAgICAgICAgUm91dGluZyBJbnRlcmZhY2UgKFJJKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLw0KLyogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8NCi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovDQoNCi8qKioqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFJJX0lDUiByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIFJJX0lDUl9JQzFPU19Qb3MgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJJX0lDUl9JQzFPU19Nc2sgICAgICAgICAgICAgICAgKDB4RlUgPDwgUklfSUNSX0lDMU9TX1BvcykgICAgICAgICAgICAgLyohPCAweDAwMDAwMDBGICovDQojZGVmaW5lIFJJX0lDUl9JQzFPUyAgICAgICAgICAgICAgICAgICAgUklfSUNSX0lDMU9TX01zayAgICAgICAgICAgICAgICAgICAgICAgLyohPCBJQzFPU1szOjBdIGJpdHMgKElucHV0IENhcHR1cmUgMSBzZWxlY3QgYml0cykgKi8NCiNkZWZpbmUgUklfSUNSX0lDMU9TXzAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBSSV9JQ1JfSUMxT1NfUG9zKSAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDEgKi8NCiNkZWZpbmUgUklfSUNSX0lDMU9TXzEgICAgICAgICAgICAgICAgICAoMHgyVSA8PCBSSV9JQ1JfSUMxT1NfUG9zKSAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDIgKi8NCiNkZWZpbmUgUklfSUNSX0lDMU9TXzIgICAgICAgICAgICAgICAgICAoMHg0VSA8PCBSSV9JQ1JfSUMxT1NfUG9zKSAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDQgKi8NCiNkZWZpbmUgUklfSUNSX0lDMU9TXzMgICAgICAgICAgICAgICAgICAoMHg4VSA8PCBSSV9JQ1JfSUMxT1NfUG9zKSAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDggKi8NCg0KI2RlZmluZSBSSV9JQ1JfSUMyT1NfUG9zICAgICAgICAgICAgICAgICg0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSSV9JQ1JfSUMyT1NfTXNrICAgICAgICAgICAgICAgICgweEZVIDw8IFJJX0lDUl9JQzJPU19Qb3MpICAgICAgICAgICAgIC8qITwgMHgwMDAwMDBGMCAqLw0KI2RlZmluZSBSSV9JQ1JfSUMyT1MgICAgICAgICAgICAgICAgICAgIFJJX0lDUl9JQzJPU19Nc2sgICAgICAgICAgICAgICAgICAgICAgIC8qITwgSUMyT1NbMzowXSBiaXRzIChJbnB1dCBDYXB0dXJlIDIgc2VsZWN0IGJpdHMpICovDQojZGVmaW5lIFJJX0lDUl9JQzJPU18wICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgUklfSUNSX0lDMk9TX1BvcykgICAgICAgICAgICAgLyohPCAweDAwMDAwMDEwICovDQojZGVmaW5lIFJJX0lDUl9JQzJPU18xICAgICAgICAgICAgICAgICAgKDB4MlUgPDwgUklfSUNSX0lDMk9TX1BvcykgICAgICAgICAgICAgLyohPCAweDAwMDAwMDIwICovDQojZGVmaW5lIFJJX0lDUl9JQzJPU18yICAgICAgICAgICAgICAgICAgKDB4NFUgPDwgUklfSUNSX0lDMk9TX1BvcykgICAgICAgICAgICAgLyohPCAweDAwMDAwMDQwICovDQojZGVmaW5lIFJJX0lDUl9JQzJPU18zICAgICAgICAgICAgICAgICAgKDB4OFUgPDwgUklfSUNSX0lDMk9TX1BvcykgICAgICAgICAgICAgLyohPCAweDAwMDAwMDgwICovDQoNCiNkZWZpbmUgUklfSUNSX0lDM09TX1BvcyAgICAgICAgICAgICAgICAoOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUklfSUNSX0lDM09TX01zayAgICAgICAgICAgICAgICAoMHhGVSA8PCBSSV9JQ1JfSUMzT1NfUG9zKSAgICAgICAgICAgICAvKiE8IDB4MDAwMDBGMDAgKi8NCiNkZWZpbmUgUklfSUNSX0lDM09TICAgICAgICAgICAgICAgICAgICBSSV9JQ1JfSUMzT1NfTXNrICAgICAgICAgICAgICAgICAgICAgICAvKiE8IElDM09TWzM6MF0gYml0cyAoSW5wdXQgQ2FwdHVyZSAzIHNlbGVjdCBiaXRzKSAqLw0KI2RlZmluZSBSSV9JQ1JfSUMzT1NfMCAgICAgICAgICAgICAgICAgICgweDFVIDw8IFJJX0lDUl9JQzNPU19Qb3MpICAgICAgICAgICAgIC8qITwgMHgwMDAwMDEwMCAqLw0KI2RlZmluZSBSSV9JQ1JfSUMzT1NfMSAgICAgICAgICAgICAgICAgICgweDJVIDw8IFJJX0lDUl9JQzNPU19Qb3MpICAgICAgICAgICAgIC8qITwgMHgwMDAwMDIwMCAqLw0KI2RlZmluZSBSSV9JQ1JfSUMzT1NfMiAgICAgICAgICAgICAgICAgICgweDRVIDw8IFJJX0lDUl9JQzNPU19Qb3MpICAgICAgICAgICAgIC8qITwgMHgwMDAwMDQwMCAqLw0KI2RlZmluZSBSSV9JQ1JfSUMzT1NfMyAgICAgICAgICAgICAgICAgICgweDhVIDw8IFJJX0lDUl9JQzNPU19Qb3MpICAgICAgICAgICAgIC8qITwgMHgwMDAwMDgwMCAqLw0KDQojZGVmaW5lIFJJX0lDUl9JQzRPU19Qb3MgICAgICAgICAgICAgICAgKDEyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJJX0lDUl9JQzRPU19Nc2sgICAgICAgICAgICAgICAgKDB4RlUgPDwgUklfSUNSX0lDNE9TX1BvcykgICAgICAgICAgICAgLyohPCAweDAwMDBGMDAwICovDQojZGVmaW5lIFJJX0lDUl9JQzRPUyAgICAgICAgICAgICAgICAgICAgUklfSUNSX0lDNE9TX01zayAgICAgICAgICAgICAgICAgICAgICAgLyohPCBJQzRPU1szOjBdIGJpdHMgKElucHV0IENhcHR1cmUgNCBzZWxlY3QgYml0cykgKi8NCiNkZWZpbmUgUklfSUNSX0lDNE9TXzAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBSSV9JQ1JfSUM0T1NfUG9zKSAgICAgICAgICAgICAvKiE8IDB4MDAwMDEwMDAgKi8NCiNkZWZpbmUgUklfSUNSX0lDNE9TXzEgICAgICAgICAgICAgICAgICAoMHgyVSA8PCBSSV9JQ1JfSUM0T1NfUG9zKSAgICAgICAgICAgICAvKiE8IDB4MDAwMDIwMDAgKi8NCiNkZWZpbmUgUklfSUNSX0lDNE9TXzIgICAgICAgICAgICAgICAgICAoMHg0VSA8PCBSSV9JQ1JfSUM0T1NfUG9zKSAgICAgICAgICAgICAvKiE8IDB4MDAwMDQwMDAgKi8NCiNkZWZpbmUgUklfSUNSX0lDNE9TXzMgICAgICAgICAgICAgICAgICAoMHg4VSA8PCBSSV9JQ1JfSUM0T1NfUG9zKSAgICAgICAgICAgICAvKiE8IDB4MDAwMDgwMDAgKi8NCg0KI2RlZmluZSBSSV9JQ1JfVElNX1BvcyAgICAgICAgICAgICAgICAgICgxNlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSSV9JQ1JfVElNX01zayAgICAgICAgICAgICAgICAgICgweDNVIDw8IFJJX0lDUl9USU1fUG9zKSAgICAgICAgICAgICAgIC8qITwgMHgwMDAzMDAwMCAqLw0KI2RlZmluZSBSSV9JQ1JfVElNICAgICAgICAgICAgICAgICAgICAgIFJJX0lDUl9USU1fTXNrICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgVElNWzM6MF0gYml0cyAoVGltZXJzIHNlbGVjdCBiaXRzKSAqLw0KI2RlZmluZSBSSV9JQ1JfVElNXzAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFJJX0lDUl9USU1fUG9zKSAgICAgICAgICAgICAgIC8qITwgMHgwMDAxMDAwMCAqLw0KI2RlZmluZSBSSV9JQ1JfVElNXzEgICAgICAgICAgICAgICAgICAgICgweDJVIDw8IFJJX0lDUl9USU1fUG9zKSAgICAgICAgICAgICAgIC8qITwgMHgwMDAyMDAwMCAqLw0KDQojZGVmaW5lIFJJX0lDUl9JQzFfUG9zICAgICAgICAgICAgICAgICAgKDE4VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJJX0lDUl9JQzFfTXNrICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgUklfSUNSX0lDMV9Qb3MpICAgICAgICAgICAgICAgLyohPCAweDAwMDQwMDAwICovDQojZGVmaW5lIFJJX0lDUl9JQzEgICAgICAgICAgICAgICAgICAgICAgUklfSUNSX0lDMV9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBJbnB1dCBjYXB0dXJlIDEgKi8NCiNkZWZpbmUgUklfSUNSX0lDMl9Qb3MgICAgICAgICAgICAgICAgICAoMTlVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUklfSUNSX0lDMl9Nc2sgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBSSV9JQ1JfSUMyX1BvcykgICAgICAgICAgICAgICAvKiE8IDB4MDAwODAwMDAgKi8NCiNkZWZpbmUgUklfSUNSX0lDMiAgICAgICAgICAgICAgICAgICAgICBSSV9JQ1JfSUMyX01zayAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IElucHV0IGNhcHR1cmUgMiAqLw0KI2RlZmluZSBSSV9JQ1JfSUMzX1BvcyAgICAgICAgICAgICAgICAgICgyMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSSV9JQ1JfSUMzX01zayAgICAgICAgICAgICAgICAgICgweDFVIDw8IFJJX0lDUl9JQzNfUG9zKSAgICAgICAgICAgICAgIC8qITwgMHgwMDEwMDAwMCAqLw0KI2RlZmluZSBSSV9JQ1JfSUMzICAgICAgICAgICAgICAgICAgICAgIFJJX0lDUl9JQzNfTXNrICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgSW5wdXQgY2FwdHVyZSAzICovDQojZGVmaW5lIFJJX0lDUl9JQzRfUG9zICAgICAgICAgICAgICAgICAgKDIxVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJJX0lDUl9JQzRfTXNrICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgUklfSUNSX0lDNF9Qb3MpICAgICAgICAgICAgICAgLyohPCAweDAwMjAwMDAwICovDQojZGVmaW5lIFJJX0lDUl9JQzQgICAgICAgICAgICAgICAgICAgICAgUklfSUNSX0lDNF9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBJbnB1dCBjYXB0dXJlIDQgKi8NCg0KLyoqKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgUklfQVNDUjEgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBSSV9BU0NSMV9DSF9Qb3MgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSSV9BU0NSMV9DSF9Nc2sgICAgICAgICAgICAgICAgICgweDdCRkRGRkZGVSA8PCBSSV9BU0NSMV9DSF9Qb3MpICAgICAgIC8qITwgMHg3QkZERkZGRiAqLw0KI2RlZmluZSBSSV9BU0NSMV9DSCAgICAgICAgICAgICAgICAgICAgIFJJX0FTQ1IxX0NIX01zayAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgQVNfQ0hbMjU6MThdICYgQVNfQ0hbMTU6MF0gYml0cyAoIEFuYWxvZyBzd2l0Y2hlcyBzZWxlY3Rpb24gYml0cykgKi8NCiNkZWZpbmUgUklfQVNDUjFfQ0hfMCAgICAgICAgICAgICAgICAgICAoMHgwMDAwMDAwMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IEJpdCAwICovDQojZGVmaW5lIFJJX0FTQ1IxX0NIXzEgICAgICAgICAgICAgICAgICAgKDB4MDAwMDAwMDJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBCaXQgMSAqLw0KI2RlZmluZSBSSV9BU0NSMV9DSF8yICAgICAgICAgICAgICAgICAgICgweDAwMDAwMDA0VSkgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgQml0IDIgKi8NCiNkZWZpbmUgUklfQVNDUjFfQ0hfMyAgICAgICAgICAgICAgICAgICAoMHgwMDAwMDAwOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IEJpdCAzICovDQojZGVmaW5lIFJJX0FTQ1IxX0NIXzQgICAgICAgICAgICAgICAgICAgKDB4MDAwMDAwMTBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBCaXQgNCAqLw0KI2RlZmluZSBSSV9BU0NSMV9DSF81ICAgICAgICAgICAgICAgICAgICgweDAwMDAwMDIwVSkgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgQml0IDUgKi8NCiNkZWZpbmUgUklfQVNDUjFfQ0hfNiAgICAgICAgICAgICAgICAgICAoMHgwMDAwMDA0MFUpICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IEJpdCA2ICovDQojZGVmaW5lIFJJX0FTQ1IxX0NIXzcgICAgICAgICAgICAgICAgICAgKDB4MDAwMDAwODBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBCaXQgNyAqLw0KI2RlZmluZSBSSV9BU0NSMV9DSF84ICAgICAgICAgICAgICAgICAgICgweDAwMDAwMTAwVSkgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgQml0IDggKi8NCiNkZWZpbmUgUklfQVNDUjFfQ0hfOSAgICAgICAgICAgICAgICAgICAoMHgwMDAwMDIwMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IEJpdCA5ICovDQojZGVmaW5lIFJJX0FTQ1IxX0NIXzEwICAgICAgICAgICAgICAgICAgKDB4MDAwMDA0MDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBCaXQgMTAgKi8NCiNkZWZpbmUgUklfQVNDUjFfQ0hfMTEgICAgICAgICAgICAgICAgICAoMHgwMDAwMDgwMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IEJpdCAxMSAqLw0KI2RlZmluZSBSSV9BU0NSMV9DSF8xMiAgICAgICAgICAgICAgICAgICgweDAwMDAxMDAwVSkgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgQml0IDEyICovDQojZGVmaW5lIFJJX0FTQ1IxX0NIXzEzICAgICAgICAgICAgICAgICAgKDB4MDAwMDIwMDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBCaXQgMTMgKi8NCiNkZWZpbmUgUklfQVNDUjFfQ0hfMTQgICAgICAgICAgICAgICAgICAoMHgwMDAwNDAwMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IEJpdCAxNCAqLw0KI2RlZmluZSBSSV9BU0NSMV9DSF8xNSAgICAgICAgICAgICAgICAgICgweDAwMDA4MDAwVSkgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgQml0IDE1ICovDQojZGVmaW5lIFJJX0FTQ1IxX0NIXzMxICAgICAgICAgICAgICAgICAgKDB4MDAwMTAwMDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBCaXQgMTYgKi8NCiNkZWZpbmUgUklfQVNDUjFfQ0hfMTggICAgICAgICAgICAgICAgICAoMHgwMDA0MDAwMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IEJpdCAxOCAqLw0KI2RlZmluZSBSSV9BU0NSMV9DSF8xOSAgICAgICAgICAgICAgICAgICgweDAwMDgwMDAwVSkgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgQml0IDE5ICovDQojZGVmaW5lIFJJX0FTQ1IxX0NIXzIwICAgICAgICAgICAgICAgICAgKDB4MDAxMDAwMDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBCaXQgMjAgKi8NCiNkZWZpbmUgUklfQVNDUjFfQ0hfMjEgICAgICAgICAgICAgICAgICAoMHgwMDIwMDAwMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IEJpdCAyMSAqLw0KI2RlZmluZSBSSV9BU0NSMV9DSF8yMiAgICAgICAgICAgICAgICAgICgweDAwNDAwMDAwVSkgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgQml0IDIyICovDQojZGVmaW5lIFJJX0FTQ1IxX0NIXzIzICAgICAgICAgICAgICAgICAgKDB4MDA4MDAwMDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBCaXQgMjMgKi8NCiNkZWZpbmUgUklfQVNDUjFfQ0hfMjQgICAgICAgICAgICAgICAgICAoMHgwMTAwMDAwMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IEJpdCAyNCAqLw0KI2RlZmluZSBSSV9BU0NSMV9DSF8yNSAgICAgICAgICAgICAgICAgICgweDAyMDAwMDAwVSkgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgQml0IDI1ICovDQojZGVmaW5lIFJJX0FTQ1IxX1ZDT01QX1BvcyAgICAgICAgICAgICAgKDI2VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJJX0FTQ1IxX1ZDT01QX01zayAgICAgICAgICAgICAgKDB4MVUgPDwgUklfQVNDUjFfVkNPTVBfUG9zKSAgICAgICAgICAgLyohPCAweDA0MDAwMDAwICovDQojZGVmaW5lIFJJX0FTQ1IxX1ZDT01QICAgICAgICAgICAgICAgICAgUklfQVNDUjFfVkNPTVBfTXNrICAgICAgICAgICAgICAgICAgICAgLyohPCBBREMgYW5hbG9nIHN3aXRjaCBzZWxlY3Rpb24gZm9yIGludGVybmFsIG5vZGUgdG8gQ09NUDEgKi8NCiNkZWZpbmUgUklfQVNDUjFfQ0hfMjcgICAgICAgICAgICAgICAgICAoMHgwODAwMDAwMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IEJpdCAyNyAqLw0KI2RlZmluZSBSSV9BU0NSMV9DSF8yOCAgICAgICAgICAgICAgICAgICgweDEwMDAwMDAwVSkgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgQml0IDI4ICovDQojZGVmaW5lIFJJX0FTQ1IxX0NIXzI5ICAgICAgICAgICAgICAgICAgKDB4MjAwMDAwMDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBCaXQgMjkgKi8NCiNkZWZpbmUgUklfQVNDUjFfQ0hfMzAgICAgICAgICAgICAgICAgICAoMHg0MDAwMDAwMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IEJpdCAzMCAqLw0KI2RlZmluZSBSSV9BU0NSMV9TQ01fUG9zICAgICAgICAgICAgICAgICgzMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSSV9BU0NSMV9TQ01fTXNrICAgICAgICAgICAgICAgICgweDFVIDw8IFJJX0FTQ1IxX1NDTV9Qb3MpICAgICAgICAgICAgIC8qITwgMHg4MDAwMDAwMCAqLw0KI2RlZmluZSBSSV9BU0NSMV9TQ00gICAgICAgICAgICAgICAgICAgIFJJX0FTQ1IxX1NDTV9Nc2sgICAgICAgICAgICAgICAgICAgICAgIC8qITwgSS9PIFN3aXRjaCBjb250cm9sIG1vZGUgKi8NCg0KLyoqKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgUklfQVNDUjIgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBSSV9BU0NSMl9HUjEwXzEgICAgICAgICAgICAgICAgICgweDAwMDAwMDAxVSkgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgR1IxMC0xIHNlbGVjdGlvbiBiaXQgKi8NCiNkZWZpbmUgUklfQVNDUjJfR1IxMF8yICAgICAgICAgICAgICAgICAoMHgwMDAwMDAwMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IEdSMTAtMiBzZWxlY3Rpb24gYml0ICovDQojZGVmaW5lIFJJX0FTQ1IyX0dSMTBfMyAgICAgICAgICAgICAgICAgKDB4MDAwMDAwMDRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBHUjEwLTMgc2VsZWN0aW9uIGJpdCAqLw0KI2RlZmluZSBSSV9BU0NSMl9HUjEwXzQgICAgICAgICAgICAgICAgICgweDAwMDAwMDA4VSkgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgR1IxMC00IHNlbGVjdGlvbiBiaXQgKi8NCiNkZWZpbmUgUklfQVNDUjJfR1I2X1BvcyAgICAgICAgICAgICAgICAoNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUklfQVNDUjJfR1I2X01zayAgICAgICAgICAgICAgICAoMHgxODAwMDAzVSA8PCBSSV9BU0NSMl9HUjZfUG9zKSAgICAgICAvKiE8IDB4MTgwMDAwMzAgKi8NCiNkZWZpbmUgUklfQVNDUjJfR1I2ICAgICAgICAgICAgICAgICAgICBSSV9BU0NSMl9HUjZfTXNrICAgICAgICAgICAgICAgICAgICAgICAvKiE8IEdSNiBzZWxlY3Rpb24gYml0cyAqLw0KI2RlZmluZSBSSV9BU0NSMl9HUjZfMSAgICAgICAgICAgICAgICAgICgweDAwMDAwMDFVIDw8IFJJX0FTQ1IyX0dSNl9Qb3MpICAgICAgIC8qITwgMHgwMDAwMDAxMCAqLw0KI2RlZmluZSBSSV9BU0NSMl9HUjZfMiAgICAgICAgICAgICAgICAgICgweDAwMDAwMDJVIDw8IFJJX0FTQ1IyX0dSNl9Qb3MpICAgICAgIC8qITwgMHgwMDAwMDAyMCAqLw0KI2RlZmluZSBSSV9BU0NSMl9HUjZfMyAgICAgICAgICAgICAgICAgICgweDA4MDAwMDBVIDw8IFJJX0FTQ1IyX0dSNl9Qb3MpICAgICAgIC8qITwgMHgwODAwMDAwMCAqLw0KI2RlZmluZSBSSV9BU0NSMl9HUjZfNCAgICAgICAgICAgICAgICAgICgweDEwMDAwMDBVIDw8IFJJX0FTQ1IyX0dSNl9Qb3MpICAgICAgIC8qITwgMHgxMDAwMDAwMCAqLw0KI2RlZmluZSBSSV9BU0NSMl9HUjVfMSAgICAgICAgICAgICAgICAgICgweDAwMDAwMDQwVSkgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgR1I1LTEgc2VsZWN0aW9uIGJpdCAqLw0KI2RlZmluZSBSSV9BU0NSMl9HUjVfMiAgICAgICAgICAgICAgICAgICgweDAwMDAwMDgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgR1I1LTIgc2VsZWN0aW9uIGJpdCAqLw0KI2RlZmluZSBSSV9BU0NSMl9HUjVfMyAgICAgICAgICAgICAgICAgICgweDAwMDAwMTAwVSkgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgR1I1LTMgc2VsZWN0aW9uIGJpdCAqLw0KI2RlZmluZSBSSV9BU0NSMl9HUjRfMSAgICAgICAgICAgICAgICAgICgweDAwMDAwMjAwVSkgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgR1I0LTEgc2VsZWN0aW9uIGJpdCAqLw0KI2RlZmluZSBSSV9BU0NSMl9HUjRfMiAgICAgICAgICAgICAgICAgICgweDAwMDAwNDAwVSkgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgR1I0LTIgc2VsZWN0aW9uIGJpdCAqLw0KI2RlZmluZSBSSV9BU0NSMl9HUjRfMyAgICAgICAgICAgICAgICAgICgweDAwMDAwODAwVSkgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgR1I0LTMgc2VsZWN0aW9uIGJpdCAqLw0KI2RlZmluZSBSSV9BU0NSMl9HUjRfNCAgICAgICAgICAgICAgICAgICgweDAwMDA4MDAwVSkgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgR1I0LTQgc2VsZWN0aW9uIGJpdCAqLw0KI2RlZmluZSBSSV9BU0NSMl9DSDBiX1BvcyAgICAgICAgICAgICAgICgxNlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSSV9BU0NSMl9DSDBiX01zayAgICAgICAgICAgICAgICgweDFVIDw8IFJJX0FTQ1IyX0NIMGJfUG9zKSAgICAgICAgICAgIC8qITwgMHgwMDAxMDAwMCAqLw0KI2RlZmluZSBSSV9BU0NSMl9DSDBiICAgICAgICAgICAgICAgICAgIFJJX0FTQ1IyX0NIMGJfTXNrICAgICAgICAgICAgICAgICAgICAgIC8qITwgQ0gwYiBzZWxlY3Rpb24gYml0ICovDQojZGVmaW5lIFJJX0FTQ1IyX0NIMWJfUG9zICAgICAgICAgICAgICAgKDE3VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJJX0FTQ1IyX0NIMWJfTXNrICAgICAgICAgICAgICAgKDB4MVUgPDwgUklfQVNDUjJfQ0gxYl9Qb3MpICAgICAgICAgICAgLyohPCAweDAwMDIwMDAwICovDQojZGVmaW5lIFJJX0FTQ1IyX0NIMWIgICAgICAgICAgICAgICAgICAgUklfQVNDUjJfQ0gxYl9Nc2sgICAgICAgICAgICAgICAgICAgICAgLyohPCBDSDFiIHNlbGVjdGlvbiBiaXQgKi8NCiNkZWZpbmUgUklfQVNDUjJfQ0gyYl9Qb3MgICAgICAgICAgICAgICAoMThVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUklfQVNDUjJfQ0gyYl9Nc2sgICAgICAgICAgICAgICAoMHgxVSA8PCBSSV9BU0NSMl9DSDJiX1BvcykgICAgICAgICAgICAvKiE8IDB4MDAwNDAwMDAgKi8NCiNkZWZpbmUgUklfQVNDUjJfQ0gyYiAgICAgICAgICAgICAgICAgICBSSV9BU0NSMl9DSDJiX01zayAgICAgICAgICAgICAgICAgICAgICAvKiE8IENIMmIgc2VsZWN0aW9uIGJpdCAqLw0KI2RlZmluZSBSSV9BU0NSMl9DSDNiX1BvcyAgICAgICAgICAgICAgICgxOVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSSV9BU0NSMl9DSDNiX01zayAgICAgICAgICAgICAgICgweDFVIDw8IFJJX0FTQ1IyX0NIM2JfUG9zKSAgICAgICAgICAgIC8qITwgMHgwMDA4MDAwMCAqLw0KI2RlZmluZSBSSV9BU0NSMl9DSDNiICAgICAgICAgICAgICAgICAgIFJJX0FTQ1IyX0NIM2JfTXNrICAgICAgICAgICAgICAgICAgICAgIC8qITwgQ0gzYiBzZWxlY3Rpb24gYml0ICovDQojZGVmaW5lIFJJX0FTQ1IyX0NINmJfUG9zICAgICAgICAgICAgICAgKDIwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJJX0FTQ1IyX0NINmJfTXNrICAgICAgICAgICAgICAgKDB4MVUgPDwgUklfQVNDUjJfQ0g2Yl9Qb3MpICAgICAgICAgICAgLyohPCAweDAwMTAwMDAwICovDQojZGVmaW5lIFJJX0FTQ1IyX0NINmIgICAgICAgICAgICAgICAgICAgUklfQVNDUjJfQ0g2Yl9Nc2sgICAgICAgICAgICAgICAgICAgICAgLyohPCBDSDZiIHNlbGVjdGlvbiBiaXQgKi8NCiNkZWZpbmUgUklfQVNDUjJfQ0g3Yl9Qb3MgICAgICAgICAgICAgICAoMjFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUklfQVNDUjJfQ0g3Yl9Nc2sgICAgICAgICAgICAgICAoMHgxVSA8PCBSSV9BU0NSMl9DSDdiX1BvcykgICAgICAgICAgICAvKiE8IDB4MDAyMDAwMDAgKi8NCiNkZWZpbmUgUklfQVNDUjJfQ0g3YiAgICAgICAgICAgICAgICAgICBSSV9BU0NSMl9DSDdiX01zayAgICAgICAgICAgICAgICAgICAgICAvKiE8IENIN2Igc2VsZWN0aW9uIGJpdCAqLw0KI2RlZmluZSBSSV9BU0NSMl9DSDhiX1BvcyAgICAgICAgICAgICAgICgyMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSSV9BU0NSMl9DSDhiX01zayAgICAgICAgICAgICAgICgweDFVIDw8IFJJX0FTQ1IyX0NIOGJfUG9zKSAgICAgICAgICAgIC8qITwgMHgwMDQwMDAwMCAqLw0KI2RlZmluZSBSSV9BU0NSMl9DSDhiICAgICAgICAgICAgICAgICAgIFJJX0FTQ1IyX0NIOGJfTXNrICAgICAgICAgICAgICAgICAgICAgIC8qITwgQ0g4YiBzZWxlY3Rpb24gYml0ICovDQojZGVmaW5lIFJJX0FTQ1IyX0NIOWJfUG9zICAgICAgICAgICAgICAgKDIzVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJJX0FTQ1IyX0NIOWJfTXNrICAgICAgICAgICAgICAgKDB4MVUgPDwgUklfQVNDUjJfQ0g5Yl9Qb3MpICAgICAgICAgICAgLyohPCAweDAwODAwMDAwICovDQojZGVmaW5lIFJJX0FTQ1IyX0NIOWIgICAgICAgICAgICAgICAgICAgUklfQVNDUjJfQ0g5Yl9Nc2sgICAgICAgICAgICAgICAgICAgICAgLyohPCBDSDliIHNlbGVjdGlvbiBiaXQgKi8NCiNkZWZpbmUgUklfQVNDUjJfQ0gxMGJfUG9zICAgICAgICAgICAgICAoMjRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUklfQVNDUjJfQ0gxMGJfTXNrICAgICAgICAgICAgICAoMHgxVSA8PCBSSV9BU0NSMl9DSDEwYl9Qb3MpICAgICAgICAgICAvKiE8IDB4MDEwMDAwMDAgKi8NCiNkZWZpbmUgUklfQVNDUjJfQ0gxMGIgICAgICAgICAgICAgICAgICBSSV9BU0NSMl9DSDEwYl9Nc2sgICAgICAgICAgICAgICAgICAgICAvKiE8IENIMTBiIHNlbGVjdGlvbiBiaXQgKi8NCiNkZWZpbmUgUklfQVNDUjJfQ0gxMWJfUG9zICAgICAgICAgICAgICAoMjVVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUklfQVNDUjJfQ0gxMWJfTXNrICAgICAgICAgICAgICAoMHgxVSA8PCBSSV9BU0NSMl9DSDExYl9Qb3MpICAgICAgICAgICAvKiE8IDB4MDIwMDAwMDAgKi8NCiNkZWZpbmUgUklfQVNDUjJfQ0gxMWIgICAgICAgICAgICAgICAgICBSSV9BU0NSMl9DSDExYl9Nc2sgICAgICAgICAgICAgICAgICAgICAvKiE8IENIMTFiIHNlbGVjdGlvbiBiaXQgKi8NCiNkZWZpbmUgUklfQVNDUjJfQ0gxMmJfUG9zICAgICAgICAgICAgICAoMjZVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUklfQVNDUjJfQ0gxMmJfTXNrICAgICAgICAgICAgICAoMHgxVSA8PCBSSV9BU0NSMl9DSDEyYl9Qb3MpICAgICAgICAgICAvKiE8IDB4MDQwMDAwMDAgKi8NCiNkZWZpbmUgUklfQVNDUjJfQ0gxMmIgICAgICAgICAgICAgICAgICBSSV9BU0NSMl9DSDEyYl9Nc2sgICAgICAgICAgICAgICAgICAgICAvKiE8IENIMTJiIHNlbGVjdGlvbiBiaXQgKi8NCg0KLyoqKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgUklfSFlTQ1IxIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgUklfSFlTQ1IxX1BBX1BvcyAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUklfSFlTQ1IxX1BBX01zayAgICAgICAgICAgICAgICAoMHhGRkZGVSA8PCBSSV9IWVNDUjFfUEFfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMEZGRkYgKi8NCiNkZWZpbmUgUklfSFlTQ1IxX1BBICAgICAgICAgICAgICAgICAgICBSSV9IWVNDUjFfUEFfTXNrICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBBWzE1OjBdIFBvcnQgQSBIeXN0ZXJlc2lzIHNlbGVjdGlvbiAqLw0KI2RlZmluZSBSSV9IWVNDUjFfUEFfMCAgICAgICAgICAgICAgICAgICgweDAwMDFVIDw8IFJJX0hZU0NSMV9QQV9Qb3MpICAgICAgICAgIC8qITwgMHgwMDAwMDAwMSAqLw0KI2RlZmluZSBSSV9IWVNDUjFfUEFfMSAgICAgICAgICAgICAgICAgICgweDAwMDJVIDw8IFJJX0hZU0NSMV9QQV9Qb3MpICAgICAgICAgIC8qITwgMHgwMDAwMDAwMiAqLw0KI2RlZmluZSBSSV9IWVNDUjFfUEFfMiAgICAgICAgICAgICAgICAgICgweDAwMDRVIDw8IFJJX0hZU0NSMV9QQV9Qb3MpICAgICAgICAgIC8qITwgMHgwMDAwMDAwNCAqLw0KI2RlZmluZSBSSV9IWVNDUjFfUEFfMyAgICAgICAgICAgICAgICAgICgweDAwMDhVIDw8IFJJX0hZU0NSMV9QQV9Qb3MpICAgICAgICAgIC8qITwgMHgwMDAwMDAwOCAqLw0KI2RlZmluZSBSSV9IWVNDUjFfUEFfNCAgICAgICAgICAgICAgICAgICgweDAwMTBVIDw8IFJJX0hZU0NSMV9QQV9Qb3MpICAgICAgICAgIC8qITwgMHgwMDAwMDAxMCAqLw0KI2RlZmluZSBSSV9IWVNDUjFfUEFfNSAgICAgICAgICAgICAgICAgICgweDAwMjBVIDw8IFJJX0hZU0NSMV9QQV9Qb3MpICAgICAgICAgIC8qITwgMHgwMDAwMDAyMCAqLw0KI2RlZmluZSBSSV9IWVNDUjFfUEFfNiAgICAgICAgICAgICAgICAgICgweDAwNDBVIDw8IFJJX0hZU0NSMV9QQV9Qb3MpICAgICAgICAgIC8qITwgMHgwMDAwMDA0MCAqLw0KI2RlZmluZSBSSV9IWVNDUjFfUEFfNyAgICAgICAgICAgICAgICAgICgweDAwODBVIDw8IFJJX0hZU0NSMV9QQV9Qb3MpICAgICAgICAgIC8qITwgMHgwMDAwMDA4MCAqLw0KI2RlZmluZSBSSV9IWVNDUjFfUEFfOCAgICAgICAgICAgICAgICAgICgweDAxMDBVIDw8IFJJX0hZU0NSMV9QQV9Qb3MpICAgICAgICAgIC8qITwgMHgwMDAwMDEwMCAqLw0KI2RlZmluZSBSSV9IWVNDUjFfUEFfOSAgICAgICAgICAgICAgICAgICgweDAyMDBVIDw8IFJJX0hZU0NSMV9QQV9Qb3MpICAgICAgICAgIC8qITwgMHgwMDAwMDIwMCAqLw0KI2RlZmluZSBSSV9IWVNDUjFfUEFfMTAgICAgICAgICAgICAgICAgICgweDA0MDBVIDw8IFJJX0hZU0NSMV9QQV9Qb3MpICAgICAgICAgIC8qITwgMHgwMDAwMDQwMCAqLw0KI2RlZmluZSBSSV9IWVNDUjFfUEFfMTEgICAgICAgICAgICAgICAgICgweDA4MDBVIDw8IFJJX0hZU0NSMV9QQV9Qb3MpICAgICAgICAgIC8qITwgMHgwMDAwMDgwMCAqLw0KI2RlZmluZSBSSV9IWVNDUjFfUEFfMTIgICAgICAgICAgICAgICAgICgweDEwMDBVIDw8IFJJX0hZU0NSMV9QQV9Qb3MpICAgICAgICAgIC8qITwgMHgwMDAwMTAwMCAqLw0KI2RlZmluZSBSSV9IWVNDUjFfUEFfMTMgICAgICAgICAgICAgICAgICgweDIwMDBVIDw8IFJJX0hZU0NSMV9QQV9Qb3MpICAgICAgICAgIC8qITwgMHgwMDAwMjAwMCAqLw0KI2RlZmluZSBSSV9IWVNDUjFfUEFfMTQgICAgICAgICAgICAgICAgICgweDQwMDBVIDw8IFJJX0hZU0NSMV9QQV9Qb3MpICAgICAgICAgIC8qITwgMHgwMDAwNDAwMCAqLw0KI2RlZmluZSBSSV9IWVNDUjFfUEFfMTUgICAgICAgICAgICAgICAgICgweDgwMDBVIDw8IFJJX0hZU0NSMV9QQV9Qb3MpICAgICAgICAgIC8qITwgMHgwMDAwODAwMCAqLw0KDQojZGVmaW5lIFJJX0hZU0NSMV9QQl9Qb3MgICAgICAgICAgICAgICAgKDE2VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJJX0hZU0NSMV9QQl9Nc2sgICAgICAgICAgICAgICAgKDB4RkZGRlUgPDwgUklfSFlTQ1IxX1BCX1BvcykgICAgICAgICAgLyohPCAweEZGRkYwMDAwICovDQojZGVmaW5lIFJJX0hZU0NSMV9QQiAgICAgICAgICAgICAgICAgICAgUklfSFlTQ1IxX1BCX01zayAgICAgICAgICAgICAgICAgICAgICAgLyohPCBQQlsxNTowXSBQb3J0IEIgSHlzdGVyZXNpcyBzZWxlY3Rpb24gKi8NCiNkZWZpbmUgUklfSFlTQ1IxX1BCXzAgICAgICAgICAgICAgICAgICAoMHgwMDAxVSA8PCBSSV9IWVNDUjFfUEJfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMTAwMDAgKi8NCiNkZWZpbmUgUklfSFlTQ1IxX1BCXzEgICAgICAgICAgICAgICAgICAoMHgwMDAyVSA8PCBSSV9IWVNDUjFfUEJfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMjAwMDAgKi8NCiNkZWZpbmUgUklfSFlTQ1IxX1BCXzIgICAgICAgICAgICAgICAgICAoMHgwMDA0VSA8PCBSSV9IWVNDUjFfUEJfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwNDAwMDAgKi8NCiNkZWZpbmUgUklfSFlTQ1IxX1BCXzMgICAgICAgICAgICAgICAgICAoMHgwMDA4VSA8PCBSSV9IWVNDUjFfUEJfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwODAwMDAgKi8NCiNkZWZpbmUgUklfSFlTQ1IxX1BCXzQgICAgICAgICAgICAgICAgICAoMHgwMDEwVSA8PCBSSV9IWVNDUjFfUEJfUG9zKSAgICAgICAgICAvKiE8IDB4MDAxMDAwMDAgKi8NCiNkZWZpbmUgUklfSFlTQ1IxX1BCXzUgICAgICAgICAgICAgICAgICAoMHgwMDIwVSA8PCBSSV9IWVNDUjFfUEJfUG9zKSAgICAgICAgICAvKiE8IDB4MDAyMDAwMDAgKi8NCiNkZWZpbmUgUklfSFlTQ1IxX1BCXzYgICAgICAgICAgICAgICAgICAoMHgwMDQwVSA8PCBSSV9IWVNDUjFfUEJfUG9zKSAgICAgICAgICAvKiE8IDB4MDA0MDAwMDAgKi8NCiNkZWZpbmUgUklfSFlTQ1IxX1BCXzcgICAgICAgICAgICAgICAgICAoMHgwMDgwVSA8PCBSSV9IWVNDUjFfUEJfUG9zKSAgICAgICAgICAvKiE8IDB4MDA4MDAwMDAgKi8NCiNkZWZpbmUgUklfSFlTQ1IxX1BCXzggICAgICAgICAgICAgICAgICAoMHgwMTAwVSA8PCBSSV9IWVNDUjFfUEJfUG9zKSAgICAgICAgICAvKiE8IDB4MDEwMDAwMDAgKi8NCiNkZWZpbmUgUklfSFlTQ1IxX1BCXzkgICAgICAgICAgICAgICAgICAoMHgwMjAwVSA8PCBSSV9IWVNDUjFfUEJfUG9zKSAgICAgICAgICAvKiE8IDB4MDIwMDAwMDAgKi8NCiNkZWZpbmUgUklfSFlTQ1IxX1BCXzEwICAgICAgICAgICAgICAgICAoMHgwNDAwVSA8PCBSSV9IWVNDUjFfUEJfUG9zKSAgICAgICAgICAvKiE8IDB4MDQwMDAwMDAgKi8NCiNkZWZpbmUgUklfSFlTQ1IxX1BCXzExICAgICAgICAgICAgICAgICAoMHgwODAwVSA8PCBSSV9IWVNDUjFfUEJfUG9zKSAgICAgICAgICAvKiE8IDB4MDgwMDAwMDAgKi8NCiNkZWZpbmUgUklfSFlTQ1IxX1BCXzEyICAgICAgICAgICAgICAgICAoMHgxMDAwVSA8PCBSSV9IWVNDUjFfUEJfUG9zKSAgICAgICAgICAvKiE8IDB4MTAwMDAwMDAgKi8NCiNkZWZpbmUgUklfSFlTQ1IxX1BCXzEzICAgICAgICAgICAgICAgICAoMHgyMDAwVSA8PCBSSV9IWVNDUjFfUEJfUG9zKSAgICAgICAgICAvKiE8IDB4MjAwMDAwMDAgKi8NCiNkZWZpbmUgUklfSFlTQ1IxX1BCXzE0ICAgICAgICAgICAgICAgICAoMHg0MDAwVSA8PCBSSV9IWVNDUjFfUEJfUG9zKSAgICAgICAgICAvKiE8IDB4NDAwMDAwMDAgKi8NCiNkZWZpbmUgUklfSFlTQ1IxX1BCXzE1ICAgICAgICAgICAgICAgICAoMHg4MDAwVSA8PCBSSV9IWVNDUjFfUEJfUG9zKSAgICAgICAgICAvKiE8IDB4ODAwMDAwMDAgKi8NCg0KLyoqKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgUklfSFlTQ1IyIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgUklfSFlTQ1IyX1BDX1BvcyAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUklfSFlTQ1IyX1BDX01zayAgICAgICAgICAgICAgICAoMHhGRkZGVSA8PCBSSV9IWVNDUjJfUENfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMEZGRkYgKi8NCiNkZWZpbmUgUklfSFlTQ1IyX1BDICAgICAgICAgICAgICAgICAgICBSSV9IWVNDUjJfUENfTXNrICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBDWzE1OjBdIFBvcnQgQyBIeXN0ZXJlc2lzIHNlbGVjdGlvbiAqLw0KI2RlZmluZSBSSV9IWVNDUjJfUENfMCAgICAgICAgICAgICAgICAgICgweDAwMDFVIDw8IFJJX0hZU0NSMl9QQ19Qb3MpICAgICAgICAgIC8qITwgMHgwMDAwMDAwMSAqLw0KI2RlZmluZSBSSV9IWVNDUjJfUENfMSAgICAgICAgICAgICAgICAgICgweDAwMDJVIDw8IFJJX0hZU0NSMl9QQ19Qb3MpICAgICAgICAgIC8qITwgMHgwMDAwMDAwMiAqLw0KI2RlZmluZSBSSV9IWVNDUjJfUENfMiAgICAgICAgICAgICAgICAgICgweDAwMDRVIDw8IFJJX0hZU0NSMl9QQ19Qb3MpICAgICAgICAgIC8qITwgMHgwMDAwMDAwNCAqLw0KI2RlZmluZSBSSV9IWVNDUjJfUENfMyAgICAgICAgICAgICAgICAgICgweDAwMDhVIDw8IFJJX0hZU0NSMl9QQ19Qb3MpICAgICAgICAgIC8qITwgMHgwMDAwMDAwOCAqLw0KI2RlZmluZSBSSV9IWVNDUjJfUENfNCAgICAgICAgICAgICAgICAgICgweDAwMTBVIDw8IFJJX0hZU0NSMl9QQ19Qb3MpICAgICAgICAgIC8qITwgMHgwMDAwMDAxMCAqLw0KI2RlZmluZSBSSV9IWVNDUjJfUENfNSAgICAgICAgICAgICAgICAgICgweDAwMjBVIDw8IFJJX0hZU0NSMl9QQ19Qb3MpICAgICAgICAgIC8qITwgMHgwMDAwMDAyMCAqLw0KI2RlZmluZSBSSV9IWVNDUjJfUENfNiAgICAgICAgICAgICAgICAgICgweDAwNDBVIDw8IFJJX0hZU0NSMl9QQ19Qb3MpICAgICAgICAgIC8qITwgMHgwMDAwMDA0MCAqLw0KI2RlZmluZSBSSV9IWVNDUjJfUENfNyAgICAgICAgICAgICAgICAgICgweDAwODBVIDw8IFJJX0hZU0NSMl9QQ19Qb3MpICAgICAgICAgIC8qITwgMHgwMDAwMDA4MCAqLw0KI2RlZmluZSBSSV9IWVNDUjJfUENfOCAgICAgICAgICAgICAgICAgICgweDAxMDBVIDw8IFJJX0hZU0NSMl9QQ19Qb3MpICAgICAgICAgIC8qITwgMHgwMDAwMDEwMCAqLw0KI2RlZmluZSBSSV9IWVNDUjJfUENfOSAgICAgICAgICAgICAgICAgICgweDAyMDBVIDw8IFJJX0hZU0NSMl9QQ19Qb3MpICAgICAgICAgIC8qITwgMHgwMDAwMDIwMCAqLw0KI2RlZmluZSBSSV9IWVNDUjJfUENfMTAgICAgICAgICAgICAgICAgICgweDA0MDBVIDw8IFJJX0hZU0NSMl9QQ19Qb3MpICAgICAgICAgIC8qITwgMHgwMDAwMDQwMCAqLw0KI2RlZmluZSBSSV9IWVNDUjJfUENfMTEgICAgICAgICAgICAgICAgICgweDA4MDBVIDw8IFJJX0hZU0NSMl9QQ19Qb3MpICAgICAgICAgIC8qITwgMHgwMDAwMDgwMCAqLw0KI2RlZmluZSBSSV9IWVNDUjJfUENfMTIgICAgICAgICAgICAgICAgICgweDEwMDBVIDw8IFJJX0hZU0NSMl9QQ19Qb3MpICAgICAgICAgIC8qITwgMHgwMDAwMTAwMCAqLw0KI2RlZmluZSBSSV9IWVNDUjJfUENfMTMgICAgICAgICAgICAgICAgICgweDIwMDBVIDw8IFJJX0hZU0NSMl9QQ19Qb3MpICAgICAgICAgIC8qITwgMHgwMDAwMjAwMCAqLw0KI2RlZmluZSBSSV9IWVNDUjJfUENfMTQgICAgICAgICAgICAgICAgICgweDQwMDBVIDw8IFJJX0hZU0NSMl9QQ19Qb3MpICAgICAgICAgIC8qITwgMHgwMDAwNDAwMCAqLw0KI2RlZmluZSBSSV9IWVNDUjJfUENfMTUgICAgICAgICAgICAgICAgICgweDgwMDBVIDw8IFJJX0hZU0NSMl9QQ19Qb3MpICAgICAgICAgIC8qITwgMHgwMDAwODAwMCAqLw0KDQojZGVmaW5lIFJJX0hZU0NSMl9QRF9Qb3MgICAgICAgICAgICAgICAgKDE2VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJJX0hZU0NSMl9QRF9Nc2sgICAgICAgICAgICAgICAgKDB4RkZGRlUgPDwgUklfSFlTQ1IyX1BEX1BvcykgICAgICAgICAgLyohPCAweEZGRkYwMDAwICovDQojZGVmaW5lIFJJX0hZU0NSMl9QRCAgICAgICAgICAgICAgICAgICAgUklfSFlTQ1IyX1BEX01zayAgICAgICAgICAgICAgICAgICAgICAgLyohPCBQRFsxNTowXSBQb3J0IEQgSHlzdGVyZXNpcyBzZWxlY3Rpb24gKi8NCiNkZWZpbmUgUklfSFlTQ1IyX1BEXzAgICAgICAgICAgICAgICAgICAoMHgwMDAxVSA8PCBSSV9IWVNDUjJfUERfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMTAwMDAgKi8NCiNkZWZpbmUgUklfSFlTQ1IyX1BEXzEgICAgICAgICAgICAgICAgICAoMHgwMDAyVSA8PCBSSV9IWVNDUjJfUERfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMjAwMDAgKi8NCiNkZWZpbmUgUklfSFlTQ1IyX1BEXzIgICAgICAgICAgICAgICAgICAoMHgwMDA0VSA8PCBSSV9IWVNDUjJfUERfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwNDAwMDAgKi8NCiNkZWZpbmUgUklfSFlTQ1IyX1BEXzMgICAgICAgICAgICAgICAgICAoMHgwMDA4VSA8PCBSSV9IWVNDUjJfUERfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwODAwMDAgKi8NCiNkZWZpbmUgUklfSFlTQ1IyX1BEXzQgICAgICAgICAgICAgICAgICAoMHgwMDEwVSA8PCBSSV9IWVNDUjJfUERfUG9zKSAgICAgICAgICAvKiE8IDB4MDAxMDAwMDAgKi8NCiNkZWZpbmUgUklfSFlTQ1IyX1BEXzUgICAgICAgICAgICAgICAgICAoMHgwMDIwVSA8PCBSSV9IWVNDUjJfUERfUG9zKSAgICAgICAgICAvKiE8IDB4MDAyMDAwMDAgKi8NCiNkZWZpbmUgUklfSFlTQ1IyX1BEXzYgICAgICAgICAgICAgICAgICAoMHgwMDQwVSA8PCBSSV9IWVNDUjJfUERfUG9zKSAgICAgICAgICAvKiE8IDB4MDA0MDAwMDAgKi8NCiNkZWZpbmUgUklfSFlTQ1IyX1BEXzcgICAgICAgICAgICAgICAgICAoMHgwMDgwVSA8PCBSSV9IWVNDUjJfUERfUG9zKSAgICAgICAgICAvKiE8IDB4MDA4MDAwMDAgKi8NCiNkZWZpbmUgUklfSFlTQ1IyX1BEXzggICAgICAgICAgICAgICAgICAoMHgwMTAwVSA8PCBSSV9IWVNDUjJfUERfUG9zKSAgICAgICAgICAvKiE8IDB4MDEwMDAwMDAgKi8NCiNkZWZpbmUgUklfSFlTQ1IyX1BEXzkgICAgICAgICAgICAgICAgICAoMHgwMjAwVSA8PCBSSV9IWVNDUjJfUERfUG9zKSAgICAgICAgICAvKiE8IDB4MDIwMDAwMDAgKi8NCiNkZWZpbmUgUklfSFlTQ1IyX1BEXzEwICAgICAgICAgICAgICAgICAoMHgwNDAwVSA8PCBSSV9IWVNDUjJfUERfUG9zKSAgICAgICAgICAvKiE8IDB4MDQwMDAwMDAgKi8NCiNkZWZpbmUgUklfSFlTQ1IyX1BEXzExICAgICAgICAgICAgICAgICAoMHgwODAwVSA8PCBSSV9IWVNDUjJfUERfUG9zKSAgICAgICAgICAvKiE8IDB4MDgwMDAwMDAgKi8NCiNkZWZpbmUgUklfSFlTQ1IyX1BEXzEyICAgICAgICAgICAgICAgICAoMHgxMDAwVSA8PCBSSV9IWVNDUjJfUERfUG9zKSAgICAgICAgICAvKiE8IDB4MTAwMDAwMDAgKi8NCiNkZWZpbmUgUklfSFlTQ1IyX1BEXzEzICAgICAgICAgICAgICAgICAoMHgyMDAwVSA8PCBSSV9IWVNDUjJfUERfUG9zKSAgICAgICAgICAvKiE8IDB4MjAwMDAwMDAgKi8NCiNkZWZpbmUgUklfSFlTQ1IyX1BEXzE0ICAgICAgICAgICAgICAgICAoMHg0MDAwVSA8PCBSSV9IWVNDUjJfUERfUG9zKSAgICAgICAgICAvKiE8IDB4NDAwMDAwMDAgKi8NCiNkZWZpbmUgUklfSFlTQ1IyX1BEXzE1ICAgICAgICAgICAgICAgICAoMHg4MDAwVSA8PCBSSV9IWVNDUjJfUERfUG9zKSAgICAgICAgICAvKiE8IDB4ODAwMDAwMDAgKi8NCg0KLyoqKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgUklfSFlTQ1IzIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgUklfSFlTQ1IzX1BFX1BvcyAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUklfSFlTQ1IzX1BFX01zayAgICAgICAgICAgICAgICAoMHhGRkZGVSA8PCBSSV9IWVNDUjNfUEVfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMEZGRkYgKi8NCiNkZWZpbmUgUklfSFlTQ1IzX1BFICAgICAgICAgICAgICAgICAgICBSSV9IWVNDUjNfUEVfTXNrICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBFWzE1OjBdIFBvcnQgRSBIeXN0ZXJlc2lzIHNlbGVjdGlvbiAqLw0KI2RlZmluZSBSSV9IWVNDUjNfUEVfMCAgICAgICAgICAgICAgICAgICgweDAwMDFVIDw8IFJJX0hZU0NSM19QRV9Qb3MpICAgICAgICAgIC8qITwgMHgwMDAwMDAwMSAqLw0KI2RlZmluZSBSSV9IWVNDUjNfUEVfMSAgICAgICAgICAgICAgICAgICgweDAwMDJVIDw8IFJJX0hZU0NSM19QRV9Qb3MpICAgICAgICAgIC8qITwgMHgwMDAwMDAwMiAqLw0KI2RlZmluZSBSSV9IWVNDUjNfUEVfMiAgICAgICAgICAgICAgICAgICgweDAwMDRVIDw8IFJJX0hZU0NSM19QRV9Qb3MpICAgICAgICAgIC8qITwgMHgwMDAwMDAwNCAqLw0KI2RlZmluZSBSSV9IWVNDUjNfUEVfMyAgICAgICAgICAgICAgICAgICgweDAwMDhVIDw8IFJJX0hZU0NSM19QRV9Qb3MpICAgICAgICAgIC8qITwgMHgwMDAwMDAwOCAqLw0KI2RlZmluZSBSSV9IWVNDUjNfUEVfNCAgICAgICAgICAgICAgICAgICgweDAwMTBVIDw8IFJJX0hZU0NSM19QRV9Qb3MpICAgICAgICAgIC8qITwgMHgwMDAwMDAxMCAqLw0KI2RlZmluZSBSSV9IWVNDUjNfUEVfNSAgICAgICAgICAgICAgICAgICgweDAwMjBVIDw8IFJJX0hZU0NSM19QRV9Qb3MpICAgICAgICAgIC8qITwgMHgwMDAwMDAyMCAqLw0KI2RlZmluZSBSSV9IWVNDUjNfUEVfNiAgICAgICAgICAgICAgICAgICgweDAwNDBVIDw8IFJJX0hZU0NSM19QRV9Qb3MpICAgICAgICAgIC8qITwgMHgwMDAwMDA0MCAqLw0KI2RlZmluZSBSSV9IWVNDUjNfUEVfNyAgICAgICAgICAgICAgICAgICgweDAwODBVIDw8IFJJX0hZU0NSM19QRV9Qb3MpICAgICAgICAgIC8qITwgMHgwMDAwMDA4MCAqLw0KI2RlZmluZSBSSV9IWVNDUjNfUEVfOCAgICAgICAgICAgICAgICAgICgweDAxMDBVIDw8IFJJX0hZU0NSM19QRV9Qb3MpICAgICAgICAgIC8qITwgMHgwMDAwMDEwMCAqLw0KI2RlZmluZSBSSV9IWVNDUjNfUEVfOSAgICAgICAgICAgICAgICAgICgweDAyMDBVIDw8IFJJX0hZU0NSM19QRV9Qb3MpICAgICAgICAgIC8qITwgMHgwMDAwMDIwMCAqLw0KI2RlZmluZSBSSV9IWVNDUjNfUEVfMTAgICAgICAgICAgICAgICAgICgweDA0MDBVIDw8IFJJX0hZU0NSM19QRV9Qb3MpICAgICAgICAgIC8qITwgMHgwMDAwMDQwMCAqLw0KI2RlZmluZSBSSV9IWVNDUjNfUEVfMTEgICAgICAgICAgICAgICAgICgweDA4MDBVIDw8IFJJX0hZU0NSM19QRV9Qb3MpICAgICAgICAgIC8qITwgMHgwMDAwMDgwMCAqLw0KI2RlZmluZSBSSV9IWVNDUjNfUEVfMTIgICAgICAgICAgICAgICAgICgweDEwMDBVIDw8IFJJX0hZU0NSM19QRV9Qb3MpICAgICAgICAgIC8qITwgMHgwMDAwMTAwMCAqLw0KI2RlZmluZSBSSV9IWVNDUjNfUEVfMTMgICAgICAgICAgICAgICAgICgweDIwMDBVIDw8IFJJX0hZU0NSM19QRV9Qb3MpICAgICAgICAgIC8qITwgMHgwMDAwMjAwMCAqLw0KI2RlZmluZSBSSV9IWVNDUjNfUEVfMTQgICAgICAgICAgICAgICAgICgweDQwMDBVIDw8IFJJX0hZU0NSM19QRV9Qb3MpICAgICAgICAgIC8qITwgMHgwMDAwNDAwMCAqLw0KI2RlZmluZSBSSV9IWVNDUjNfUEVfMTUgICAgICAgICAgICAgICAgICgweDgwMDBVIDw8IFJJX0hZU0NSM19QRV9Qb3MpICAgICAgICAgIC8qITwgMHgwMDAwODAwMCAqLw0KI2RlZmluZSBSSV9IWVNDUjNfUEZfUG9zICAgICAgICAgICAgICAgICgxNlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSSV9IWVNDUjNfUEZfTXNrICAgICAgICAgICAgICAgICgweEZGRkZVIDw8IFJJX0hZU0NSM19QRl9Qb3MpICAgICAgICAgIC8qITwgMHhGRkZGMDAwMCAqLw0KI2RlZmluZSBSSV9IWVNDUjNfUEYgICAgICAgICAgICAgICAgICAgIFJJX0hZU0NSM19QRl9Nc2sgICAgICAgICAgICAgICAgICAgICAgIC8qITwgUEZbMTU6MF0gUG9ydCBGIEh5c3RlcmVzaXMgc2VsZWN0aW9uICovDQojZGVmaW5lIFJJX0hZU0NSM19QRl8wICAgICAgICAgICAgICAgICAgKDB4MDAwMVUgPDwgUklfSFlTQ1IzX1BGX1BvcykgICAgICAgICAgLyohPCAweDAwMDEwMDAwICovDQojZGVmaW5lIFJJX0hZU0NSM19QRl8xICAgICAgICAgICAgICAgICAgKDB4MDAwMlUgPDwgUklfSFlTQ1IzX1BGX1BvcykgICAgICAgICAgLyohPCAweDAwMDIwMDAwICovDQojZGVmaW5lIFJJX0hZU0NSM19QRl8yICAgICAgICAgICAgICAgICAgKDB4MDAwNFUgPDwgUklfSFlTQ1IzX1BGX1BvcykgICAgICAgICAgLyohPCAweDAwMDQwMDAwICovDQojZGVmaW5lIFJJX0hZU0NSM19QRl8zICAgICAgICAgICAgICAgICAgKDB4MDAwOFUgPDwgUklfSFlTQ1IzX1BGX1BvcykgICAgICAgICAgLyohPCAweDAwMDgwMDAwICovDQojZGVmaW5lIFJJX0hZU0NSM19QRl80ICAgICAgICAgICAgICAgICAgKDB4MDAxMFUgPDwgUklfSFlTQ1IzX1BGX1BvcykgICAgICAgICAgLyohPCAweDAwMTAwMDAwICovDQojZGVmaW5lIFJJX0hZU0NSM19QRl81ICAgICAgICAgICAgICAgICAgKDB4MDAyMFUgPDwgUklfSFlTQ1IzX1BGX1BvcykgICAgICAgICAgLyohPCAweDAwMjAwMDAwICovDQojZGVmaW5lIFJJX0hZU0NSM19QRl82ICAgICAgICAgICAgICAgICAgKDB4MDA0MFUgPDwgUklfSFlTQ1IzX1BGX1BvcykgICAgICAgICAgLyohPCAweDAwNDAwMDAwICovDQojZGVmaW5lIFJJX0hZU0NSM19QRl83ICAgICAgICAgICAgICAgICAgKDB4MDA4MFUgPDwgUklfSFlTQ1IzX1BGX1BvcykgICAgICAgICAgLyohPCAweDAwODAwMDAwICovDQojZGVmaW5lIFJJX0hZU0NSM19QRl84ICAgICAgICAgICAgICAgICAgKDB4MDEwMFUgPDwgUklfSFlTQ1IzX1BGX1BvcykgICAgICAgICAgLyohPCAweDAxMDAwMDAwICovDQojZGVmaW5lIFJJX0hZU0NSM19QRl85ICAgICAgICAgICAgICAgICAgKDB4MDIwMFUgPDwgUklfSFlTQ1IzX1BGX1BvcykgICAgICAgICAgLyohPCAweDAyMDAwMDAwICovDQojZGVmaW5lIFJJX0hZU0NSM19QRl8xMCAgICAgICAgICAgICAgICAgKDB4MDQwMFUgPDwgUklfSFlTQ1IzX1BGX1BvcykgICAgICAgICAgLyohPCAweDA0MDAwMDAwICovDQojZGVmaW5lIFJJX0hZU0NSM19QRl8xMSAgICAgICAgICAgICAgICAgKDB4MDgwMFUgPDwgUklfSFlTQ1IzX1BGX1BvcykgICAgICAgICAgLyohPCAweDA4MDAwMDAwICovDQojZGVmaW5lIFJJX0hZU0NSM19QRl8xMiAgICAgICAgICAgICAgICAgKDB4MTAwMFUgPDwgUklfSFlTQ1IzX1BGX1BvcykgICAgICAgICAgLyohPCAweDEwMDAwMDAwICovDQojZGVmaW5lIFJJX0hZU0NSM19QRl8xMyAgICAgICAgICAgICAgICAgKDB4MjAwMFUgPDwgUklfSFlTQ1IzX1BGX1BvcykgICAgICAgICAgLyohPCAweDIwMDAwMDAwICovDQojZGVmaW5lIFJJX0hZU0NSM19QRl8xNCAgICAgICAgICAgICAgICAgKDB4NDAwMFUgPDwgUklfSFlTQ1IzX1BGX1BvcykgICAgICAgICAgLyohPCAweDQwMDAwMDAwICovDQojZGVmaW5lIFJJX0hZU0NSM19QRl8xNSAgICAgICAgICAgICAgICAgKDB4ODAwMFUgPDwgUklfSFlTQ1IzX1BGX1BvcykgICAgICAgICAgLyohPCAweDgwMDAwMDAwICovDQoNCi8qKioqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFJJX0hZU0NSNCByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIFJJX0hZU0NSNF9QR19Qb3MgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJJX0hZU0NSNF9QR19Nc2sgICAgICAgICAgICAgICAgKDB4RkZGRlUgPDwgUklfSFlTQ1I0X1BHX1BvcykgICAgICAgICAgLyohPCAweDAwMDBGRkZGICovDQojZGVmaW5lIFJJX0hZU0NSNF9QRyAgICAgICAgICAgICAgICAgICAgUklfSFlTQ1I0X1BHX01zayAgICAgICAgICAgICAgICAgICAgICAgLyohPCBQR1sxNTowXSBQb3J0IEcgSHlzdGVyZXNpcyBzZWxlY3Rpb24gKi8NCiNkZWZpbmUgUklfSFlTQ1I0X1BHXzAgICAgICAgICAgICAgICAgICAoMHgwMDAxVSA8PCBSSV9IWVNDUjRfUEdfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDAwMDEgKi8NCiNkZWZpbmUgUklfSFlTQ1I0X1BHXzEgICAgICAgICAgICAgICAgICAoMHgwMDAyVSA8PCBSSV9IWVNDUjRfUEdfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDAwMDIgKi8NCiNkZWZpbmUgUklfSFlTQ1I0X1BHXzIgICAgICAgICAgICAgICAgICAoMHgwMDA0VSA8PCBSSV9IWVNDUjRfUEdfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDAwMDQgKi8NCiNkZWZpbmUgUklfSFlTQ1I0X1BHXzMgICAgICAgICAgICAgICAgICAoMHgwMDA4VSA8PCBSSV9IWVNDUjRfUEdfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDAwMDggKi8NCiNkZWZpbmUgUklfSFlTQ1I0X1BHXzQgICAgICAgICAgICAgICAgICAoMHgwMDEwVSA8PCBSSV9IWVNDUjRfUEdfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDAwMTAgKi8NCiNkZWZpbmUgUklfSFlTQ1I0X1BHXzUgICAgICAgICAgICAgICAgICAoMHgwMDIwVSA8PCBSSV9IWVNDUjRfUEdfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDAwMjAgKi8NCiNkZWZpbmUgUklfSFlTQ1I0X1BHXzYgICAgICAgICAgICAgICAgICAoMHgwMDQwVSA8PCBSSV9IWVNDUjRfUEdfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDAwNDAgKi8NCiNkZWZpbmUgUklfSFlTQ1I0X1BHXzcgICAgICAgICAgICAgICAgICAoMHgwMDgwVSA8PCBSSV9IWVNDUjRfUEdfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDAwODAgKi8NCiNkZWZpbmUgUklfSFlTQ1I0X1BHXzggICAgICAgICAgICAgICAgICAoMHgwMTAwVSA8PCBSSV9IWVNDUjRfUEdfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDAxMDAgKi8NCiNkZWZpbmUgUklfSFlTQ1I0X1BHXzkgICAgICAgICAgICAgICAgICAoMHgwMjAwVSA8PCBSSV9IWVNDUjRfUEdfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDAyMDAgKi8NCiNkZWZpbmUgUklfSFlTQ1I0X1BHXzEwICAgICAgICAgICAgICAgICAoMHgwNDAwVSA8PCBSSV9IWVNDUjRfUEdfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDA0MDAgKi8NCiNkZWZpbmUgUklfSFlTQ1I0X1BHXzExICAgICAgICAgICAgICAgICAoMHgwODAwVSA8PCBSSV9IWVNDUjRfUEdfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDA4MDAgKi8NCiNkZWZpbmUgUklfSFlTQ1I0X1BHXzEyICAgICAgICAgICAgICAgICAoMHgxMDAwVSA8PCBSSV9IWVNDUjRfUEdfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDEwMDAgKi8NCiNkZWZpbmUgUklfSFlTQ1I0X1BHXzEzICAgICAgICAgICAgICAgICAoMHgyMDAwVSA8PCBSSV9IWVNDUjRfUEdfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDIwMDAgKi8NCiNkZWZpbmUgUklfSFlTQ1I0X1BHXzE0ICAgICAgICAgICAgICAgICAoMHg0MDAwVSA8PCBSSV9IWVNDUjRfUEdfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDQwMDAgKi8NCiNkZWZpbmUgUklfSFlTQ1I0X1BHXzE1ICAgICAgICAgICAgICAgICAoMHg4MDAwVSA8PCBSSV9IWVNDUjRfUEdfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDgwMDAgKi8NCg0KLyoqKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgUklfQVNNUjEgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBSSV9BU01SMV9QQV9Qb3MgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSSV9BU01SMV9QQV9Nc2sgICAgICAgICAgICAgICAgICgweEZGRkZVIDw8IFJJX0FTTVIxX1BBX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwRkZGRiAqLw0KI2RlZmluZSBSSV9BU01SMV9QQSAgICAgICAgICAgICAgICAgICAgIFJJX0FTTVIxX1BBX01zayAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgUEFbMTU6MF0gUG9ydCBBIHNlbGVjdGlvbiovDQojZGVmaW5lIFJJX0FTTVIxX1BBXzAgICAgICAgICAgICAgICAgICAgKDB4MDAwMVUgPDwgUklfQVNNUjFfUEFfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwMDAxICovDQojZGVmaW5lIFJJX0FTTVIxX1BBXzEgICAgICAgICAgICAgICAgICAgKDB4MDAwMlUgPDwgUklfQVNNUjFfUEFfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwMDAyICovDQojZGVmaW5lIFJJX0FTTVIxX1BBXzIgICAgICAgICAgICAgICAgICAgKDB4MDAwNFUgPDwgUklfQVNNUjFfUEFfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwMDA0ICovDQojZGVmaW5lIFJJX0FTTVIxX1BBXzMgICAgICAgICAgICAgICAgICAgKDB4MDAwOFUgPDwgUklfQVNNUjFfUEFfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwMDA4ICovDQojZGVmaW5lIFJJX0FTTVIxX1BBXzQgICAgICAgICAgICAgICAgICAgKDB4MDAxMFUgPDwgUklfQVNNUjFfUEFfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwMDEwICovDQojZGVmaW5lIFJJX0FTTVIxX1BBXzUgICAgICAgICAgICAgICAgICAgKDB4MDAyMFUgPDwgUklfQVNNUjFfUEFfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwMDIwICovDQojZGVmaW5lIFJJX0FTTVIxX1BBXzYgICAgICAgICAgICAgICAgICAgKDB4MDA0MFUgPDwgUklfQVNNUjFfUEFfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwMDQwICovDQojZGVmaW5lIFJJX0FTTVIxX1BBXzcgICAgICAgICAgICAgICAgICAgKDB4MDA4MFUgPDwgUklfQVNNUjFfUEFfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwMDgwICovDQojZGVmaW5lIFJJX0FTTVIxX1BBXzggICAgICAgICAgICAgICAgICAgKDB4MDEwMFUgPDwgUklfQVNNUjFfUEFfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwMTAwICovDQojZGVmaW5lIFJJX0FTTVIxX1BBXzkgICAgICAgICAgICAgICAgICAgKDB4MDIwMFUgPDwgUklfQVNNUjFfUEFfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwMjAwICovDQojZGVmaW5lIFJJX0FTTVIxX1BBXzEwICAgICAgICAgICAgICAgICAgKDB4MDQwMFUgPDwgUklfQVNNUjFfUEFfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwNDAwICovDQojZGVmaW5lIFJJX0FTTVIxX1BBXzExICAgICAgICAgICAgICAgICAgKDB4MDgwMFUgPDwgUklfQVNNUjFfUEFfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwODAwICovDQojZGVmaW5lIFJJX0FTTVIxX1BBXzEyICAgICAgICAgICAgICAgICAgKDB4MTAwMFUgPDwgUklfQVNNUjFfUEFfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAxMDAwICovDQojZGVmaW5lIFJJX0FTTVIxX1BBXzEzICAgICAgICAgICAgICAgICAgKDB4MjAwMFUgPDwgUklfQVNNUjFfUEFfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAyMDAwICovDQojZGVmaW5lIFJJX0FTTVIxX1BBXzE0ICAgICAgICAgICAgICAgICAgKDB4NDAwMFUgPDwgUklfQVNNUjFfUEFfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDA0MDAwICovDQojZGVmaW5lIFJJX0FTTVIxX1BBXzE1ICAgICAgICAgICAgICAgICAgKDB4ODAwMFUgPDwgUklfQVNNUjFfUEFfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDA4MDAwICovDQoNCi8qKioqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFJJX0NNUjEgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBSSV9DTVIxX1BBX1BvcyAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSSV9DTVIxX1BBX01zayAgICAgICAgICAgICAgICAgICgweEZGRkZVIDw8IFJJX0NNUjFfUEFfUG9zKSAgICAgICAgICAgIC8qITwgMHgwMDAwRkZGRiAqLw0KI2RlZmluZSBSSV9DTVIxX1BBICAgICAgICAgICAgICAgICAgICAgIFJJX0NNUjFfUEFfTXNrICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgUEFbMTU6MF0gUG9ydCBBIHNlbGVjdGlvbiovDQojZGVmaW5lIFJJX0NNUjFfUEFfMCAgICAgICAgICAgICAgICAgICAgKDB4MDAwMVUgPDwgUklfQ01SMV9QQV9Qb3MpICAgICAgICAgICAgLyohPCAweDAwMDAwMDAxICovDQojZGVmaW5lIFJJX0NNUjFfUEFfMSAgICAgICAgICAgICAgICAgICAgKDB4MDAwMlUgPDwgUklfQ01SMV9QQV9Qb3MpICAgICAgICAgICAgLyohPCAweDAwMDAwMDAyICovDQojZGVmaW5lIFJJX0NNUjFfUEFfMiAgICAgICAgICAgICAgICAgICAgKDB4MDAwNFUgPDwgUklfQ01SMV9QQV9Qb3MpICAgICAgICAgICAgLyohPCAweDAwMDAwMDA0ICovDQojZGVmaW5lIFJJX0NNUjFfUEFfMyAgICAgICAgICAgICAgICAgICAgKDB4MDAwOFUgPDwgUklfQ01SMV9QQV9Qb3MpICAgICAgICAgICAgLyohPCAweDAwMDAwMDA4ICovDQojZGVmaW5lIFJJX0NNUjFfUEFfNCAgICAgICAgICAgICAgICAgICAgKDB4MDAxMFUgPDwgUklfQ01SMV9QQV9Qb3MpICAgICAgICAgICAgLyohPCAweDAwMDAwMDEwICovDQojZGVmaW5lIFJJX0NNUjFfUEFfNSAgICAgICAgICAgICAgICAgICAgKDB4MDAyMFUgPDwgUklfQ01SMV9QQV9Qb3MpICAgICAgICAgICAgLyohPCAweDAwMDAwMDIwICovDQojZGVmaW5lIFJJX0NNUjFfUEFfNiAgICAgICAgICAgICAgICAgICAgKDB4MDA0MFUgPDwgUklfQ01SMV9QQV9Qb3MpICAgICAgICAgICAgLyohPCAweDAwMDAwMDQwICovDQojZGVmaW5lIFJJX0NNUjFfUEFfNyAgICAgICAgICAgICAgICAgICAgKDB4MDA4MFUgPDwgUklfQ01SMV9QQV9Qb3MpICAgICAgICAgICAgLyohPCAweDAwMDAwMDgwICovDQojZGVmaW5lIFJJX0NNUjFfUEFfOCAgICAgICAgICAgICAgICAgICAgKDB4MDEwMFUgPDwgUklfQ01SMV9QQV9Qb3MpICAgICAgICAgICAgLyohPCAweDAwMDAwMTAwICovDQojZGVmaW5lIFJJX0NNUjFfUEFfOSAgICAgICAgICAgICAgICAgICAgKDB4MDIwMFUgPDwgUklfQ01SMV9QQV9Qb3MpICAgICAgICAgICAgLyohPCAweDAwMDAwMjAwICovDQojZGVmaW5lIFJJX0NNUjFfUEFfMTAgICAgICAgICAgICAgICAgICAgKDB4MDQwMFUgPDwgUklfQ01SMV9QQV9Qb3MpICAgICAgICAgICAgLyohPCAweDAwMDAwNDAwICovDQojZGVmaW5lIFJJX0NNUjFfUEFfMTEgICAgICAgICAgICAgICAgICAgKDB4MDgwMFUgPDwgUklfQ01SMV9QQV9Qb3MpICAgICAgICAgICAgLyohPCAweDAwMDAwODAwICovDQojZGVmaW5lIFJJX0NNUjFfUEFfMTIgICAgICAgICAgICAgICAgICAgKDB4MTAwMFUgPDwgUklfQ01SMV9QQV9Qb3MpICAgICAgICAgICAgLyohPCAweDAwMDAxMDAwICovDQojZGVmaW5lIFJJX0NNUjFfUEFfMTMgICAgICAgICAgICAgICAgICAgKDB4MjAwMFUgPDwgUklfQ01SMV9QQV9Qb3MpICAgICAgICAgICAgLyohPCAweDAwMDAyMDAwICovDQojZGVmaW5lIFJJX0NNUjFfUEFfMTQgICAgICAgICAgICAgICAgICAgKDB4NDAwMFUgPDwgUklfQ01SMV9QQV9Qb3MpICAgICAgICAgICAgLyohPCAweDAwMDA0MDAwICovDQojZGVmaW5lIFJJX0NNUjFfUEFfMTUgICAgICAgICAgICAgICAgICAgKDB4ODAwMFUgPDwgUklfQ01SMV9QQV9Qb3MpICAgICAgICAgICAgLyohPCAweDAwMDA4MDAwICovDQoNCi8qKioqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFJJX0NJQ1IxIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgUklfQ0lDUjFfUEFfUG9zICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUklfQ0lDUjFfUEFfTXNrICAgICAgICAgICAgICAgICAoMHhGRkZGVSA8PCBSSV9DSUNSMV9QQV9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMEZGRkYgKi8NCiNkZWZpbmUgUklfQ0lDUjFfUEEgICAgICAgICAgICAgICAgICAgICBSSV9DSUNSMV9QQV9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBBWzE1OjBdIFBvcnQgQSBzZWxlY3Rpb24qLw0KI2RlZmluZSBSSV9DSUNSMV9QQV8wICAgICAgICAgICAgICAgICAgICgweDAwMDFVIDw8IFJJX0NJQ1IxX1BBX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDAwMSAqLw0KI2RlZmluZSBSSV9DSUNSMV9QQV8xICAgICAgICAgICAgICAgICAgICgweDAwMDJVIDw8IFJJX0NJQ1IxX1BBX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDAwMiAqLw0KI2RlZmluZSBSSV9DSUNSMV9QQV8yICAgICAgICAgICAgICAgICAgICgweDAwMDRVIDw8IFJJX0NJQ1IxX1BBX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDAwNCAqLw0KI2RlZmluZSBSSV9DSUNSMV9QQV8zICAgICAgICAgICAgICAgICAgICgweDAwMDhVIDw8IFJJX0NJQ1IxX1BBX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDAwOCAqLw0KI2RlZmluZSBSSV9DSUNSMV9QQV80ICAgICAgICAgICAgICAgICAgICgweDAwMTBVIDw8IFJJX0NJQ1IxX1BBX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDAxMCAqLw0KI2RlZmluZSBSSV9DSUNSMV9QQV81ICAgICAgICAgICAgICAgICAgICgweDAwMjBVIDw8IFJJX0NJQ1IxX1BBX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDAyMCAqLw0KI2RlZmluZSBSSV9DSUNSMV9QQV82ICAgICAgICAgICAgICAgICAgICgweDAwNDBVIDw8IFJJX0NJQ1IxX1BBX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDA0MCAqLw0KI2RlZmluZSBSSV9DSUNSMV9QQV83ICAgICAgICAgICAgICAgICAgICgweDAwODBVIDw8IFJJX0NJQ1IxX1BBX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDA4MCAqLw0KI2RlZmluZSBSSV9DSUNSMV9QQV84ICAgICAgICAgICAgICAgICAgICgweDAxMDBVIDw8IFJJX0NJQ1IxX1BBX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDEwMCAqLw0KI2RlZmluZSBSSV9DSUNSMV9QQV85ICAgICAgICAgICAgICAgICAgICgweDAyMDBVIDw8IFJJX0NJQ1IxX1BBX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDIwMCAqLw0KI2RlZmluZSBSSV9DSUNSMV9QQV8xMCAgICAgICAgICAgICAgICAgICgweDA0MDBVIDw8IFJJX0NJQ1IxX1BBX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDQwMCAqLw0KI2RlZmluZSBSSV9DSUNSMV9QQV8xMSAgICAgICAgICAgICAgICAgICgweDA4MDBVIDw8IFJJX0NJQ1IxX1BBX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDgwMCAqLw0KI2RlZmluZSBSSV9DSUNSMV9QQV8xMiAgICAgICAgICAgICAgICAgICgweDEwMDBVIDw8IFJJX0NJQ1IxX1BBX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMTAwMCAqLw0KI2RlZmluZSBSSV9DSUNSMV9QQV8xMyAgICAgICAgICAgICAgICAgICgweDIwMDBVIDw8IFJJX0NJQ1IxX1BBX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMjAwMCAqLw0KI2RlZmluZSBSSV9DSUNSMV9QQV8xNCAgICAgICAgICAgICAgICAgICgweDQwMDBVIDw8IFJJX0NJQ1IxX1BBX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwNDAwMCAqLw0KI2RlZmluZSBSSV9DSUNSMV9QQV8xNSAgICAgICAgICAgICAgICAgICgweDgwMDBVIDw8IFJJX0NJQ1IxX1BBX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwODAwMCAqLw0KDQovKioqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBSSV9BU01SMiByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIFJJX0FTTVIyX1BCX1BvcyAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJJX0FTTVIyX1BCX01zayAgICAgICAgICAgICAgICAgKDB4RkZGRlUgPDwgUklfQVNNUjJfUEJfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDBGRkZGICovDQojZGVmaW5lIFJJX0FTTVIyX1BCICAgICAgICAgICAgICAgICAgICAgUklfQVNNUjJfUEJfTXNrICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBQQlsxNTowXSBQb3J0IEIgc2VsZWN0aW9uICovDQojZGVmaW5lIFJJX0FTTVIyX1BCXzAgICAgICAgICAgICAgICAgICAgKDB4MDAwMVUgPDwgUklfQVNNUjJfUEJfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwMDAxICovDQojZGVmaW5lIFJJX0FTTVIyX1BCXzEgICAgICAgICAgICAgICAgICAgKDB4MDAwMlUgPDwgUklfQVNNUjJfUEJfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwMDAyICovDQojZGVmaW5lIFJJX0FTTVIyX1BCXzIgICAgICAgICAgICAgICAgICAgKDB4MDAwNFUgPDwgUklfQVNNUjJfUEJfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwMDA0ICovDQojZGVmaW5lIFJJX0FTTVIyX1BCXzMgICAgICAgICAgICAgICAgICAgKDB4MDAwOFUgPDwgUklfQVNNUjJfUEJfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwMDA4ICovDQojZGVmaW5lIFJJX0FTTVIyX1BCXzQgICAgICAgICAgICAgICAgICAgKDB4MDAxMFUgPDwgUklfQVNNUjJfUEJfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwMDEwICovDQojZGVmaW5lIFJJX0FTTVIyX1BCXzUgICAgICAgICAgICAgICAgICAgKDB4MDAyMFUgPDwgUklfQVNNUjJfUEJfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwMDIwICovDQojZGVmaW5lIFJJX0FTTVIyX1BCXzYgICAgICAgICAgICAgICAgICAgKDB4MDA0MFUgPDwgUklfQVNNUjJfUEJfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwMDQwICovDQojZGVmaW5lIFJJX0FTTVIyX1BCXzcgICAgICAgICAgICAgICAgICAgKDB4MDA4MFUgPDwgUklfQVNNUjJfUEJfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwMDgwICovDQojZGVmaW5lIFJJX0FTTVIyX1BCXzggICAgICAgICAgICAgICAgICAgKDB4MDEwMFUgPDwgUklfQVNNUjJfUEJfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwMTAwICovDQojZGVmaW5lIFJJX0FTTVIyX1BCXzkgICAgICAgICAgICAgICAgICAgKDB4MDIwMFUgPDwgUklfQVNNUjJfUEJfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwMjAwICovDQojZGVmaW5lIFJJX0FTTVIyX1BCXzEwICAgICAgICAgICAgICAgICAgKDB4MDQwMFUgPDwgUklfQVNNUjJfUEJfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwNDAwICovDQojZGVmaW5lIFJJX0FTTVIyX1BCXzExICAgICAgICAgICAgICAgICAgKDB4MDgwMFUgPDwgUklfQVNNUjJfUEJfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwODAwICovDQojZGVmaW5lIFJJX0FTTVIyX1BCXzEyICAgICAgICAgICAgICAgICAgKDB4MTAwMFUgPDwgUklfQVNNUjJfUEJfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAxMDAwICovDQojZGVmaW5lIFJJX0FTTVIyX1BCXzEzICAgICAgICAgICAgICAgICAgKDB4MjAwMFUgPDwgUklfQVNNUjJfUEJfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAyMDAwICovDQojZGVmaW5lIFJJX0FTTVIyX1BCXzE0ICAgICAgICAgICAgICAgICAgKDB4NDAwMFUgPDwgUklfQVNNUjJfUEJfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDA0MDAwICovDQojZGVmaW5lIFJJX0FTTVIyX1BCXzE1ICAgICAgICAgICAgICAgICAgKDB4ODAwMFUgPDwgUklfQVNNUjJfUEJfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDA4MDAwICovDQoNCi8qKioqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFJJX0NNUjIgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBSSV9DTVIyX1BCX1BvcyAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSSV9DTVIyX1BCX01zayAgICAgICAgICAgICAgICAgICgweEZGRkZVIDw8IFJJX0NNUjJfUEJfUG9zKSAgICAgICAgICAgIC8qITwgMHgwMDAwRkZGRiAqLw0KI2RlZmluZSBSSV9DTVIyX1BCICAgICAgICAgICAgICAgICAgICAgIFJJX0NNUjJfUEJfTXNrICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgUEJbMTU6MF0gUG9ydCBCIHNlbGVjdGlvbiAqLw0KI2RlZmluZSBSSV9DTVIyX1BCXzAgICAgICAgICAgICAgICAgICAgICgweDAwMDFVIDw8IFJJX0NNUjJfUEJfUG9zKSAgICAgICAgICAgIC8qITwgMHgwMDAwMDAwMSAqLw0KI2RlZmluZSBSSV9DTVIyX1BCXzEgICAgICAgICAgICAgICAgICAgICgweDAwMDJVIDw8IFJJX0NNUjJfUEJfUG9zKSAgICAgICAgICAgIC8qITwgMHgwMDAwMDAwMiAqLw0KI2RlZmluZSBSSV9DTVIyX1BCXzIgICAgICAgICAgICAgICAgICAgICgweDAwMDRVIDw8IFJJX0NNUjJfUEJfUG9zKSAgICAgICAgICAgIC8qITwgMHgwMDAwMDAwNCAqLw0KI2RlZmluZSBSSV9DTVIyX1BCXzMgICAgICAgICAgICAgICAgICAgICgweDAwMDhVIDw8IFJJX0NNUjJfUEJfUG9zKSAgICAgICAgICAgIC8qITwgMHgwMDAwMDAwOCAqLw0KI2RlZmluZSBSSV9DTVIyX1BCXzQgICAgICAgICAgICAgICAgICAgICgweDAwMTBVIDw8IFJJX0NNUjJfUEJfUG9zKSAgICAgICAgICAgIC8qITwgMHgwMDAwMDAxMCAqLw0KI2RlZmluZSBSSV9DTVIyX1BCXzUgICAgICAgICAgICAgICAgICAgICgweDAwMjBVIDw8IFJJX0NNUjJfUEJfUG9zKSAgICAgICAgICAgIC8qITwgMHgwMDAwMDAyMCAqLw0KI2RlZmluZSBSSV9DTVIyX1BCXzYgICAgICAgICAgICAgICAgICAgICgweDAwNDBVIDw8IFJJX0NNUjJfUEJfUG9zKSAgICAgICAgICAgIC8qITwgMHgwMDAwMDA0MCAqLw0KI2RlZmluZSBSSV9DTVIyX1BCXzcgICAgICAgICAgICAgICAgICAgICgweDAwODBVIDw8IFJJX0NNUjJfUEJfUG9zKSAgICAgICAgICAgIC8qITwgMHgwMDAwMDA4MCAqLw0KI2RlZmluZSBSSV9DTVIyX1BCXzggICAgICAgICAgICAgICAgICAgICgweDAxMDBVIDw8IFJJX0NNUjJfUEJfUG9zKSAgICAgICAgICAgIC8qITwgMHgwMDAwMDEwMCAqLw0KI2RlZmluZSBSSV9DTVIyX1BCXzkgICAgICAgICAgICAgICAgICAgICgweDAyMDBVIDw8IFJJX0NNUjJfUEJfUG9zKSAgICAgICAgICAgIC8qITwgMHgwMDAwMDIwMCAqLw0KI2RlZmluZSBSSV9DTVIyX1BCXzEwICAgICAgICAgICAgICAgICAgICgweDA0MDBVIDw8IFJJX0NNUjJfUEJfUG9zKSAgICAgICAgICAgIC8qITwgMHgwMDAwMDQwMCAqLw0KI2RlZmluZSBSSV9DTVIyX1BCXzExICAgICAgICAgICAgICAgICAgICgweDA4MDBVIDw8IFJJX0NNUjJfUEJfUG9zKSAgICAgICAgICAgIC8qITwgMHgwMDAwMDgwMCAqLw0KI2RlZmluZSBSSV9DTVIyX1BCXzEyICAgICAgICAgICAgICAgICAgICgweDEwMDBVIDw8IFJJX0NNUjJfUEJfUG9zKSAgICAgICAgICAgIC8qITwgMHgwMDAwMTAwMCAqLw0KI2RlZmluZSBSSV9DTVIyX1BCXzEzICAgICAgICAgICAgICAgICAgICgweDIwMDBVIDw8IFJJX0NNUjJfUEJfUG9zKSAgICAgICAgICAgIC8qITwgMHgwMDAwMjAwMCAqLw0KI2RlZmluZSBSSV9DTVIyX1BCXzE0ICAgICAgICAgICAgICAgICAgICgweDQwMDBVIDw8IFJJX0NNUjJfUEJfUG9zKSAgICAgICAgICAgIC8qITwgMHgwMDAwNDAwMCAqLw0KI2RlZmluZSBSSV9DTVIyX1BCXzE1ICAgICAgICAgICAgICAgICAgICgweDgwMDBVIDw8IFJJX0NNUjJfUEJfUG9zKSAgICAgICAgICAgIC8qITwgMHgwMDAwODAwMCAqLw0KDQovKioqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBSSV9DSUNSMiByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIFJJX0NJQ1IyX1BCX1BvcyAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJJX0NJQ1IyX1BCX01zayAgICAgICAgICAgICAgICAgKDB4RkZGRlUgPDwgUklfQ0lDUjJfUEJfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDBGRkZGICovDQojZGVmaW5lIFJJX0NJQ1IyX1BCICAgICAgICAgICAgICAgICAgICAgUklfQ0lDUjJfUEJfTXNrICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBQQlsxNTowXSBQb3J0IEIgc2VsZWN0aW9uICovDQojZGVmaW5lIFJJX0NJQ1IyX1BCXzAgICAgICAgICAgICAgICAgICAgKDB4MDAwMVUgPDwgUklfQ0lDUjJfUEJfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwMDAxICovDQojZGVmaW5lIFJJX0NJQ1IyX1BCXzEgICAgICAgICAgICAgICAgICAgKDB4MDAwMlUgPDwgUklfQ0lDUjJfUEJfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwMDAyICovDQojZGVmaW5lIFJJX0NJQ1IyX1BCXzIgICAgICAgICAgICAgICAgICAgKDB4MDAwNFUgPDwgUklfQ0lDUjJfUEJfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwMDA0ICovDQojZGVmaW5lIFJJX0NJQ1IyX1BCXzMgICAgICAgICAgICAgICAgICAgKDB4MDAwOFUgPDwgUklfQ0lDUjJfUEJfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwMDA4ICovDQojZGVmaW5lIFJJX0NJQ1IyX1BCXzQgICAgICAgICAgICAgICAgICAgKDB4MDAxMFUgPDwgUklfQ0lDUjJfUEJfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwMDEwICovDQojZGVmaW5lIFJJX0NJQ1IyX1BCXzUgICAgICAgICAgICAgICAgICAgKDB4MDAyMFUgPDwgUklfQ0lDUjJfUEJfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwMDIwICovDQojZGVmaW5lIFJJX0NJQ1IyX1BCXzYgICAgICAgICAgICAgICAgICAgKDB4MDA0MFUgPDwgUklfQ0lDUjJfUEJfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwMDQwICovDQojZGVmaW5lIFJJX0NJQ1IyX1BCXzcgICAgICAgICAgICAgICAgICAgKDB4MDA4MFUgPDwgUklfQ0lDUjJfUEJfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwMDgwICovDQojZGVmaW5lIFJJX0NJQ1IyX1BCXzggICAgICAgICAgICAgICAgICAgKDB4MDEwMFUgPDwgUklfQ0lDUjJfUEJfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwMTAwICovDQojZGVmaW5lIFJJX0NJQ1IyX1BCXzkgICAgICAgICAgICAgICAgICAgKDB4MDIwMFUgPDwgUklfQ0lDUjJfUEJfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwMjAwICovDQojZGVmaW5lIFJJX0NJQ1IyX1BCXzEwICAgICAgICAgICAgICAgICAgKDB4MDQwMFUgPDwgUklfQ0lDUjJfUEJfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwNDAwICovDQojZGVmaW5lIFJJX0NJQ1IyX1BCXzExICAgICAgICAgICAgICAgICAgKDB4MDgwMFUgPDwgUklfQ0lDUjJfUEJfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwODAwICovDQojZGVmaW5lIFJJX0NJQ1IyX1BCXzEyICAgICAgICAgICAgICAgICAgKDB4MTAwMFUgPDwgUklfQ0lDUjJfUEJfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAxMDAwICovDQojZGVmaW5lIFJJX0NJQ1IyX1BCXzEzICAgICAgICAgICAgICAgICAgKDB4MjAwMFUgPDwgUklfQ0lDUjJfUEJfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAyMDAwICovDQojZGVmaW5lIFJJX0NJQ1IyX1BCXzE0ICAgICAgICAgICAgICAgICAgKDB4NDAwMFUgPDwgUklfQ0lDUjJfUEJfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDA0MDAwICovDQojZGVmaW5lIFJJX0NJQ1IyX1BCXzE1ICAgICAgICAgICAgICAgICAgKDB4ODAwMFUgPDwgUklfQ0lDUjJfUEJfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDA4MDAwICovDQoNCi8qKioqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFJJX0FTTVIzIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgUklfQVNNUjNfUENfUG9zICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUklfQVNNUjNfUENfTXNrICAgICAgICAgICAgICAgICAoMHhGRkZGVSA8PCBSSV9BU01SM19QQ19Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMEZGRkYgKi8NCiNkZWZpbmUgUklfQVNNUjNfUEMgICAgICAgICAgICAgICAgICAgICBSSV9BU01SM19QQ19Nc2sgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBDWzE1OjBdIFBvcnQgQyBzZWxlY3Rpb24gKi8NCiNkZWZpbmUgUklfQVNNUjNfUENfMCAgICAgICAgICAgICAgICAgICAoMHgwMDAxVSA8PCBSSV9BU01SM19QQ19Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDEgKi8NCiNkZWZpbmUgUklfQVNNUjNfUENfMSAgICAgICAgICAgICAgICAgICAoMHgwMDAyVSA8PCBSSV9BU01SM19QQ19Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDIgKi8NCiNkZWZpbmUgUklfQVNNUjNfUENfMiAgICAgICAgICAgICAgICAgICAoMHgwMDA0VSA8PCBSSV9BU01SM19QQ19Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDQgKi8NCiNkZWZpbmUgUklfQVNNUjNfUENfMyAgICAgICAgICAgICAgICAgICAoMHgwMDA4VSA8PCBSSV9BU01SM19QQ19Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDggKi8NCiNkZWZpbmUgUklfQVNNUjNfUENfNCAgICAgICAgICAgICAgICAgICAoMHgwMDEwVSA8PCBSSV9BU01SM19QQ19Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDAwMTAgKi8NCiNkZWZpbmUgUklfQVNNUjNfUENfNSAgICAgICAgICAgICAgICAgICAoMHgwMDIwVSA8PCBSSV9BU01SM19QQ19Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDAwMjAgKi8NCiNkZWZpbmUgUklfQVNNUjNfUENfNiAgICAgICAgICAgICAgICAgICAoMHgwMDQwVSA8PCBSSV9BU01SM19QQ19Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDAwNDAgKi8NCiNkZWZpbmUgUklfQVNNUjNfUENfNyAgICAgICAgICAgICAgICAgICAoMHgwMDgwVSA8PCBSSV9BU01SM19QQ19Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDAwODAgKi8NCiNkZWZpbmUgUklfQVNNUjNfUENfOCAgICAgICAgICAgICAgICAgICAoMHgwMTAwVSA8PCBSSV9BU01SM19QQ19Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDAxMDAgKi8NCiNkZWZpbmUgUklfQVNNUjNfUENfOSAgICAgICAgICAgICAgICAgICAoMHgwMjAwVSA8PCBSSV9BU01SM19QQ19Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDAyMDAgKi8NCiNkZWZpbmUgUklfQVNNUjNfUENfMTAgICAgICAgICAgICAgICAgICAoMHgwNDAwVSA8PCBSSV9BU01SM19QQ19Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDA0MDAgKi8NCiNkZWZpbmUgUklfQVNNUjNfUENfMTEgICAgICAgICAgICAgICAgICAoMHgwODAwVSA8PCBSSV9BU01SM19QQ19Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDA4MDAgKi8NCiNkZWZpbmUgUklfQVNNUjNfUENfMTIgICAgICAgICAgICAgICAgICAoMHgxMDAwVSA8PCBSSV9BU01SM19QQ19Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDEwMDAgKi8NCiNkZWZpbmUgUklfQVNNUjNfUENfMTMgICAgICAgICAgICAgICAgICAoMHgyMDAwVSA8PCBSSV9BU01SM19QQ19Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDIwMDAgKi8NCiNkZWZpbmUgUklfQVNNUjNfUENfMTQgICAgICAgICAgICAgICAgICAoMHg0MDAwVSA8PCBSSV9BU01SM19QQ19Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDQwMDAgKi8NCiNkZWZpbmUgUklfQVNNUjNfUENfMTUgICAgICAgICAgICAgICAgICAoMHg4MDAwVSA8PCBSSV9BU01SM19QQ19Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDgwMDAgKi8NCg0KLyoqKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgUklfQ01SMyByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIFJJX0NNUjNfUENfUG9zICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJJX0NNUjNfUENfTXNrICAgICAgICAgICAgICAgICAgKDB4RkZGRlUgPDwgUklfQ01SM19QQ19Qb3MpICAgICAgICAgICAgLyohPCAweDAwMDBGRkZGICovDQojZGVmaW5lIFJJX0NNUjNfUEMgICAgICAgICAgICAgICAgICAgICAgUklfQ01SM19QQ19Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBQQ1sxNTowXSBQb3J0IEMgc2VsZWN0aW9uICovDQojZGVmaW5lIFJJX0NNUjNfUENfMCAgICAgICAgICAgICAgICAgICAgKDB4MDAwMVUgPDwgUklfQ01SM19QQ19Qb3MpICAgICAgICAgICAgLyohPCAweDAwMDAwMDAxICovDQojZGVmaW5lIFJJX0NNUjNfUENfMSAgICAgICAgICAgICAgICAgICAgKDB4MDAwMlUgPDwgUklfQ01SM19QQ19Qb3MpICAgICAgICAgICAgLyohPCAweDAwMDAwMDAyICovDQojZGVmaW5lIFJJX0NNUjNfUENfMiAgICAgICAgICAgICAgICAgICAgKDB4MDAwNFUgPDwgUklfQ01SM19QQ19Qb3MpICAgICAgICAgICAgLyohPCAweDAwMDAwMDA0ICovDQojZGVmaW5lIFJJX0NNUjNfUENfMyAgICAgICAgICAgICAgICAgICAgKDB4MDAwOFUgPDwgUklfQ01SM19QQ19Qb3MpICAgICAgICAgICAgLyohPCAweDAwMDAwMDA4ICovDQojZGVmaW5lIFJJX0NNUjNfUENfNCAgICAgICAgICAgICAgICAgICAgKDB4MDAxMFUgPDwgUklfQ01SM19QQ19Qb3MpICAgICAgICAgICAgLyohPCAweDAwMDAwMDEwICovDQojZGVmaW5lIFJJX0NNUjNfUENfNSAgICAgICAgICAgICAgICAgICAgKDB4MDAyMFUgPDwgUklfQ01SM19QQ19Qb3MpICAgICAgICAgICAgLyohPCAweDAwMDAwMDIwICovDQojZGVmaW5lIFJJX0NNUjNfUENfNiAgICAgICAgICAgICAgICAgICAgKDB4MDA0MFUgPDwgUklfQ01SM19QQ19Qb3MpICAgICAgICAgICAgLyohPCAweDAwMDAwMDQwICovDQojZGVmaW5lIFJJX0NNUjNfUENfNyAgICAgICAgICAgICAgICAgICAgKDB4MDA4MFUgPDwgUklfQ01SM19QQ19Qb3MpICAgICAgICAgICAgLyohPCAweDAwMDAwMDgwICovDQojZGVmaW5lIFJJX0NNUjNfUENfOCAgICAgICAgICAgICAgICAgICAgKDB4MDEwMFUgPDwgUklfQ01SM19QQ19Qb3MpICAgICAgICAgICAgLyohPCAweDAwMDAwMTAwICovDQojZGVmaW5lIFJJX0NNUjNfUENfOSAgICAgICAgICAgICAgICAgICAgKDB4MDIwMFUgPDwgUklfQ01SM19QQ19Qb3MpICAgICAgICAgICAgLyohPCAweDAwMDAwMjAwICovDQojZGVmaW5lIFJJX0NNUjNfUENfMTAgICAgICAgICAgICAgICAgICAgKDB4MDQwMFUgPDwgUklfQ01SM19QQ19Qb3MpICAgICAgICAgICAgLyohPCAweDAwMDAwNDAwICovDQojZGVmaW5lIFJJX0NNUjNfUENfMTEgICAgICAgICAgICAgICAgICAgKDB4MDgwMFUgPDwgUklfQ01SM19QQ19Qb3MpICAgICAgICAgICAgLyohPCAweDAwMDAwODAwICovDQojZGVmaW5lIFJJX0NNUjNfUENfMTIgICAgICAgICAgICAgICAgICAgKDB4MTAwMFUgPDwgUklfQ01SM19QQ19Qb3MpICAgICAgICAgICAgLyohPCAweDAwMDAxMDAwICovDQojZGVmaW5lIFJJX0NNUjNfUENfMTMgICAgICAgICAgICAgICAgICAgKDB4MjAwMFUgPDwgUklfQ01SM19QQ19Qb3MpICAgICAgICAgICAgLyohPCAweDAwMDAyMDAwICovDQojZGVmaW5lIFJJX0NNUjNfUENfMTQgICAgICAgICAgICAgICAgICAgKDB4NDAwMFUgPDwgUklfQ01SM19QQ19Qb3MpICAgICAgICAgICAgLyohPCAweDAwMDA0MDAwICovDQojZGVmaW5lIFJJX0NNUjNfUENfMTUgICAgICAgICAgICAgICAgICAgKDB4ODAwMFUgPDwgUklfQ01SM19QQ19Qb3MpICAgICAgICAgICAgLyohPCAweDAwMDA4MDAwICovDQoNCi8qKioqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFJJX0NJQ1IzIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgUklfQ0lDUjNfUENfUG9zICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUklfQ0lDUjNfUENfTXNrICAgICAgICAgICAgICAgICAoMHhGRkZGVSA8PCBSSV9DSUNSM19QQ19Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMEZGRkYgKi8NCiNkZWZpbmUgUklfQ0lDUjNfUEMgICAgICAgICAgICAgICAgICAgICBSSV9DSUNSM19QQ19Nc2sgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBDWzE1OjBdIFBvcnQgQyBzZWxlY3Rpb24gKi8NCiNkZWZpbmUgUklfQ0lDUjNfUENfMCAgICAgICAgICAgICAgICAgICAoMHgwMDAxVSA8PCBSSV9DSUNSM19QQ19Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDEgKi8NCiNkZWZpbmUgUklfQ0lDUjNfUENfMSAgICAgICAgICAgICAgICAgICAoMHgwMDAyVSA8PCBSSV9DSUNSM19QQ19Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDIgKi8NCiNkZWZpbmUgUklfQ0lDUjNfUENfMiAgICAgICAgICAgICAgICAgICAoMHgwMDA0VSA8PCBSSV9DSUNSM19QQ19Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDQgKi8NCiNkZWZpbmUgUklfQ0lDUjNfUENfMyAgICAgICAgICAgICAgICAgICAoMHgwMDA4VSA8PCBSSV9DSUNSM19QQ19Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDggKi8NCiNkZWZpbmUgUklfQ0lDUjNfUENfNCAgICAgICAgICAgICAgICAgICAoMHgwMDEwVSA8PCBSSV9DSUNSM19QQ19Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDAwMTAgKi8NCiNkZWZpbmUgUklfQ0lDUjNfUENfNSAgICAgICAgICAgICAgICAgICAoMHgwMDIwVSA8PCBSSV9DSUNSM19QQ19Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDAwMjAgKi8NCiNkZWZpbmUgUklfQ0lDUjNfUENfNiAgICAgICAgICAgICAgICAgICAoMHgwMDQwVSA8PCBSSV9DSUNSM19QQ19Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDAwNDAgKi8NCiNkZWZpbmUgUklfQ0lDUjNfUENfNyAgICAgICAgICAgICAgICAgICAoMHgwMDgwVSA8PCBSSV9DSUNSM19QQ19Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDAwODAgKi8NCiNkZWZpbmUgUklfQ0lDUjNfUENfOCAgICAgICAgICAgICAgICAgICAoMHgwMTAwVSA8PCBSSV9DSUNSM19QQ19Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDAxMDAgKi8NCiNkZWZpbmUgUklfQ0lDUjNfUENfOSAgICAgICAgICAgICAgICAgICAoMHgwMjAwVSA8PCBSSV9DSUNSM19QQ19Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDAyMDAgKi8NCiNkZWZpbmUgUklfQ0lDUjNfUENfMTAgICAgICAgICAgICAgICAgICAoMHgwNDAwVSA8PCBSSV9DSUNSM19QQ19Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDA0MDAgKi8NCiNkZWZpbmUgUklfQ0lDUjNfUENfMTEgICAgICAgICAgICAgICAgICAoMHgwODAwVSA8PCBSSV9DSUNSM19QQ19Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDA4MDAgKi8NCiNkZWZpbmUgUklfQ0lDUjNfUENfMTIgICAgICAgICAgICAgICAgICAoMHgxMDAwVSA8PCBSSV9DSUNSM19QQ19Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDEwMDAgKi8NCiNkZWZpbmUgUklfQ0lDUjNfUENfMTMgICAgICAgICAgICAgICAgICAoMHgyMDAwVSA8PCBSSV9DSUNSM19QQ19Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDIwMDAgKi8NCiNkZWZpbmUgUklfQ0lDUjNfUENfMTQgICAgICAgICAgICAgICAgICAoMHg0MDAwVSA8PCBSSV9DSUNSM19QQ19Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDQwMDAgKi8NCiNkZWZpbmUgUklfQ0lDUjNfUENfMTUgICAgICAgICAgICAgICAgICAoMHg4MDAwVSA8PCBSSV9DSUNSM19QQ19Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDgwMDAgKi8NCg0KLyoqKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgUklfQVNNUjQgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBSSV9BU01SNF9QRl9Qb3MgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSSV9BU01SNF9QRl9Nc2sgICAgICAgICAgICAgICAgICgweEZGRkZVIDw8IFJJX0FTTVI0X1BGX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwRkZGRiAqLw0KI2RlZmluZSBSSV9BU01SNF9QRiAgICAgICAgICAgICAgICAgICAgIFJJX0FTTVI0X1BGX01zayAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgUEZbMTU6MF0gUG9ydCBGIHNlbGVjdGlvbiAqLw0KI2RlZmluZSBSSV9BU01SNF9QRl8wICAgICAgICAgICAgICAgICAgICgweDAwMDFVIDw8IFJJX0FTTVI0X1BGX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDAwMSAqLw0KI2RlZmluZSBSSV9BU01SNF9QRl8xICAgICAgICAgICAgICAgICAgICgweDAwMDJVIDw8IFJJX0FTTVI0X1BGX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDAwMiAqLw0KI2RlZmluZSBSSV9BU01SNF9QRl8yICAgICAgICAgICAgICAgICAgICgweDAwMDRVIDw8IFJJX0FTTVI0X1BGX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDAwNCAqLw0KI2RlZmluZSBSSV9BU01SNF9QRl8zICAgICAgICAgICAgICAgICAgICgweDAwMDhVIDw8IFJJX0FTTVI0X1BGX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDAwOCAqLw0KI2RlZmluZSBSSV9BU01SNF9QRl80ICAgICAgICAgICAgICAgICAgICgweDAwMTBVIDw8IFJJX0FTTVI0X1BGX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDAxMCAqLw0KI2RlZmluZSBSSV9BU01SNF9QRl81ICAgICAgICAgICAgICAgICAgICgweDAwMjBVIDw8IFJJX0FTTVI0X1BGX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDAyMCAqLw0KI2RlZmluZSBSSV9BU01SNF9QRl82ICAgICAgICAgICAgICAgICAgICgweDAwNDBVIDw8IFJJX0FTTVI0X1BGX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDA0MCAqLw0KI2RlZmluZSBSSV9BU01SNF9QRl83ICAgICAgICAgICAgICAgICAgICgweDAwODBVIDw8IFJJX0FTTVI0X1BGX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDA4MCAqLw0KI2RlZmluZSBSSV9BU01SNF9QRl84ICAgICAgICAgICAgICAgICAgICgweDAxMDBVIDw8IFJJX0FTTVI0X1BGX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDEwMCAqLw0KI2RlZmluZSBSSV9BU01SNF9QRl85ICAgICAgICAgICAgICAgICAgICgweDAyMDBVIDw8IFJJX0FTTVI0X1BGX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDIwMCAqLw0KI2RlZmluZSBSSV9BU01SNF9QRl8xMCAgICAgICAgICAgICAgICAgICgweDA0MDBVIDw8IFJJX0FTTVI0X1BGX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDQwMCAqLw0KI2RlZmluZSBSSV9BU01SNF9QRl8xMSAgICAgICAgICAgICAgICAgICgweDA4MDBVIDw8IFJJX0FTTVI0X1BGX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDgwMCAqLw0KI2RlZmluZSBSSV9BU01SNF9QRl8xMiAgICAgICAgICAgICAgICAgICgweDEwMDBVIDw8IFJJX0FTTVI0X1BGX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMTAwMCAqLw0KI2RlZmluZSBSSV9BU01SNF9QRl8xMyAgICAgICAgICAgICAgICAgICgweDIwMDBVIDw8IFJJX0FTTVI0X1BGX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMjAwMCAqLw0KI2RlZmluZSBSSV9BU01SNF9QRl8xNCAgICAgICAgICAgICAgICAgICgweDQwMDBVIDw8IFJJX0FTTVI0X1BGX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwNDAwMCAqLw0KI2RlZmluZSBSSV9BU01SNF9QRl8xNSAgICAgICAgICAgICAgICAgICgweDgwMDBVIDw8IFJJX0FTTVI0X1BGX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwODAwMCAqLw0KDQovKioqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBSSV9DTVI0IHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgUklfQ01SNF9QRl9Qb3MgICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUklfQ01SNF9QRl9Nc2sgICAgICAgICAgICAgICAgICAoMHhGRkZGVSA8PCBSSV9DTVI0X1BGX1BvcykgICAgICAgICAgICAvKiE8IDB4MDAwMEZGRkYgKi8NCiNkZWZpbmUgUklfQ01SNF9QRiAgICAgICAgICAgICAgICAgICAgICBSSV9DTVI0X1BGX01zayAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBGWzE1OjBdIFBvcnQgRiBzZWxlY3Rpb24gKi8NCiNkZWZpbmUgUklfQ01SNF9QRl8wICAgICAgICAgICAgICAgICAgICAoMHgwMDAxVSA8PCBSSV9DTVI0X1BGX1BvcykgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDEgKi8NCiNkZWZpbmUgUklfQ01SNF9QRl8xICAgICAgICAgICAgICAgICAgICAoMHgwMDAyVSA8PCBSSV9DTVI0X1BGX1BvcykgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDIgKi8NCiNkZWZpbmUgUklfQ01SNF9QRl8yICAgICAgICAgICAgICAgICAgICAoMHgwMDA0VSA8PCBSSV9DTVI0X1BGX1BvcykgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDQgKi8NCiNkZWZpbmUgUklfQ01SNF9QRl8zICAgICAgICAgICAgICAgICAgICAoMHgwMDA4VSA8PCBSSV9DTVI0X1BGX1BvcykgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDggKi8NCiNkZWZpbmUgUklfQ01SNF9QRl80ICAgICAgICAgICAgICAgICAgICAoMHgwMDEwVSA8PCBSSV9DTVI0X1BGX1BvcykgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMTAgKi8NCiNkZWZpbmUgUklfQ01SNF9QRl81ICAgICAgICAgICAgICAgICAgICAoMHgwMDIwVSA8PCBSSV9DTVI0X1BGX1BvcykgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMjAgKi8NCiNkZWZpbmUgUklfQ01SNF9QRl82ICAgICAgICAgICAgICAgICAgICAoMHgwMDQwVSA8PCBSSV9DTVI0X1BGX1BvcykgICAgICAgICAgICAvKiE8IDB4MDAwMDAwNDAgKi8NCiNkZWZpbmUgUklfQ01SNF9QRl83ICAgICAgICAgICAgICAgICAgICAoMHgwMDgwVSA8PCBSSV9DTVI0X1BGX1BvcykgICAgICAgICAgICAvKiE8IDB4MDAwMDAwODAgKi8NCiNkZWZpbmUgUklfQ01SNF9QRl84ICAgICAgICAgICAgICAgICAgICAoMHgwMTAwVSA8PCBSSV9DTVI0X1BGX1BvcykgICAgICAgICAgICAvKiE8IDB4MDAwMDAxMDAgKi8NCiNkZWZpbmUgUklfQ01SNF9QRl85ICAgICAgICAgICAgICAgICAgICAoMHgwMjAwVSA8PCBSSV9DTVI0X1BGX1BvcykgICAgICAgICAgICAvKiE8IDB4MDAwMDAyMDAgKi8NCiNkZWZpbmUgUklfQ01SNF9QRl8xMCAgICAgICAgICAgICAgICAgICAoMHgwNDAwVSA8PCBSSV9DTVI0X1BGX1BvcykgICAgICAgICAgICAvKiE8IDB4MDAwMDA0MDAgKi8NCiNkZWZpbmUgUklfQ01SNF9QRl8xMSAgICAgICAgICAgICAgICAgICAoMHgwODAwVSA8PCBSSV9DTVI0X1BGX1BvcykgICAgICAgICAgICAvKiE8IDB4MDAwMDA4MDAgKi8NCiNkZWZpbmUgUklfQ01SNF9QRl8xMiAgICAgICAgICAgICAgICAgICAoMHgxMDAwVSA8PCBSSV9DTVI0X1BGX1BvcykgICAgICAgICAgICAvKiE8IDB4MDAwMDEwMDAgKi8NCiNkZWZpbmUgUklfQ01SNF9QRl8xMyAgICAgICAgICAgICAgICAgICAoMHgyMDAwVSA8PCBSSV9DTVI0X1BGX1BvcykgICAgICAgICAgICAvKiE8IDB4MDAwMDIwMDAgKi8NCiNkZWZpbmUgUklfQ01SNF9QRl8xNCAgICAgICAgICAgICAgICAgICAoMHg0MDAwVSA8PCBSSV9DTVI0X1BGX1BvcykgICAgICAgICAgICAvKiE8IDB4MDAwMDQwMDAgKi8NCiNkZWZpbmUgUklfQ01SNF9QRl8xNSAgICAgICAgICAgICAgICAgICAoMHg4MDAwVSA8PCBSSV9DTVI0X1BGX1BvcykgICAgICAgICAgICAvKiE8IDB4MDAwMDgwMDAgKi8NCg0KLyoqKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgUklfQ0lDUjQgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBSSV9DSUNSNF9QRl9Qb3MgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSSV9DSUNSNF9QRl9Nc2sgICAgICAgICAgICAgICAgICgweEZGRkZVIDw8IFJJX0NJQ1I0X1BGX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwRkZGRiAqLw0KI2RlZmluZSBSSV9DSUNSNF9QRiAgICAgICAgICAgICAgICAgICAgIFJJX0NJQ1I0X1BGX01zayAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgUEZbMTU6MF0gUG9ydCBGIHNlbGVjdGlvbiAqLw0KI2RlZmluZSBSSV9DSUNSNF9QRl8wICAgICAgICAgICAgICAgICAgICgweDAwMDFVIDw8IFJJX0NJQ1I0X1BGX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDAwMSAqLw0KI2RlZmluZSBSSV9DSUNSNF9QRl8xICAgICAgICAgICAgICAgICAgICgweDAwMDJVIDw8IFJJX0NJQ1I0X1BGX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDAwMiAqLw0KI2RlZmluZSBSSV9DSUNSNF9QRl8yICAgICAgICAgICAgICAgICAgICgweDAwMDRVIDw8IFJJX0NJQ1I0X1BGX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDAwNCAqLw0KI2RlZmluZSBSSV9DSUNSNF9QRl8zICAgICAgICAgICAgICAgICAgICgweDAwMDhVIDw8IFJJX0NJQ1I0X1BGX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDAwOCAqLw0KI2RlZmluZSBSSV9DSUNSNF9QRl80ICAgICAgICAgICAgICAgICAgICgweDAwMTBVIDw8IFJJX0NJQ1I0X1BGX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDAxMCAqLw0KI2RlZmluZSBSSV9DSUNSNF9QRl81ICAgICAgICAgICAgICAgICAgICgweDAwMjBVIDw8IFJJX0NJQ1I0X1BGX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDAyMCAqLw0KI2RlZmluZSBSSV9DSUNSNF9QRl82ICAgICAgICAgICAgICAgICAgICgweDAwNDBVIDw8IFJJX0NJQ1I0X1BGX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDA0MCAqLw0KI2RlZmluZSBSSV9DSUNSNF9QRl83ICAgICAgICAgICAgICAgICAgICgweDAwODBVIDw8IFJJX0NJQ1I0X1BGX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDA4MCAqLw0KI2RlZmluZSBSSV9DSUNSNF9QRl84ICAgICAgICAgICAgICAgICAgICgweDAxMDBVIDw8IFJJX0NJQ1I0X1BGX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDEwMCAqLw0KI2RlZmluZSBSSV9DSUNSNF9QRl85ICAgICAgICAgICAgICAgICAgICgweDAyMDBVIDw8IFJJX0NJQ1I0X1BGX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDIwMCAqLw0KI2RlZmluZSBSSV9DSUNSNF9QRl8xMCAgICAgICAgICAgICAgICAgICgweDA0MDBVIDw8IFJJX0NJQ1I0X1BGX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDQwMCAqLw0KI2RlZmluZSBSSV9DSUNSNF9QRl8xMSAgICAgICAgICAgICAgICAgICgweDA4MDBVIDw8IFJJX0NJQ1I0X1BGX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDgwMCAqLw0KI2RlZmluZSBSSV9DSUNSNF9QRl8xMiAgICAgICAgICAgICAgICAgICgweDEwMDBVIDw8IFJJX0NJQ1I0X1BGX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMTAwMCAqLw0KI2RlZmluZSBSSV9DSUNSNF9QRl8xMyAgICAgICAgICAgICAgICAgICgweDIwMDBVIDw8IFJJX0NJQ1I0X1BGX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMjAwMCAqLw0KI2RlZmluZSBSSV9DSUNSNF9QRl8xNCAgICAgICAgICAgICAgICAgICgweDQwMDBVIDw8IFJJX0NJQ1I0X1BGX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwNDAwMCAqLw0KI2RlZmluZSBSSV9DSUNSNF9QRl8xNSAgICAgICAgICAgICAgICAgICgweDgwMDBVIDw8IFJJX0NJQ1I0X1BGX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwODAwMCAqLw0KDQovKioqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBSSV9BU01SNSByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIFJJX0FTTVI1X1BHX1BvcyAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJJX0FTTVI1X1BHX01zayAgICAgICAgICAgICAgICAgKDB4RkZGRlUgPDwgUklfQVNNUjVfUEdfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDBGRkZGICovDQojZGVmaW5lIFJJX0FTTVI1X1BHICAgICAgICAgICAgICAgICAgICAgUklfQVNNUjVfUEdfTXNrICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBQR1sxNTowXSBQb3J0IEcgc2VsZWN0aW9uICovDQojZGVmaW5lIFJJX0FTTVI1X1BHXzAgICAgICAgICAgICAgICAgICAgKDB4MDAwMVUgPDwgUklfQVNNUjVfUEdfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwMDAxICovDQojZGVmaW5lIFJJX0FTTVI1X1BHXzEgICAgICAgICAgICAgICAgICAgKDB4MDAwMlUgPDwgUklfQVNNUjVfUEdfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwMDAyICovDQojZGVmaW5lIFJJX0FTTVI1X1BHXzIgICAgICAgICAgICAgICAgICAgKDB4MDAwNFUgPDwgUklfQVNNUjVfUEdfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwMDA0ICovDQojZGVmaW5lIFJJX0FTTVI1X1BHXzMgICAgICAgICAgICAgICAgICAgKDB4MDAwOFUgPDwgUklfQVNNUjVfUEdfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwMDA4ICovDQojZGVmaW5lIFJJX0FTTVI1X1BHXzQgICAgICAgICAgICAgICAgICAgKDB4MDAxMFUgPDwgUklfQVNNUjVfUEdfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwMDEwICovDQojZGVmaW5lIFJJX0FTTVI1X1BHXzUgICAgICAgICAgICAgICAgICAgKDB4MDAyMFUgPDwgUklfQVNNUjVfUEdfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwMDIwICovDQojZGVmaW5lIFJJX0FTTVI1X1BHXzYgICAgICAgICAgICAgICAgICAgKDB4MDA0MFUgPDwgUklfQVNNUjVfUEdfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwMDQwICovDQojZGVmaW5lIFJJX0FTTVI1X1BHXzcgICAgICAgICAgICAgICAgICAgKDB4MDA4MFUgPDwgUklfQVNNUjVfUEdfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwMDgwICovDQojZGVmaW5lIFJJX0FTTVI1X1BHXzggICAgICAgICAgICAgICAgICAgKDB4MDEwMFUgPDwgUklfQVNNUjVfUEdfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwMTAwICovDQojZGVmaW5lIFJJX0FTTVI1X1BHXzkgICAgICAgICAgICAgICAgICAgKDB4MDIwMFUgPDwgUklfQVNNUjVfUEdfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwMjAwICovDQojZGVmaW5lIFJJX0FTTVI1X1BHXzEwICAgICAgICAgICAgICAgICAgKDB4MDQwMFUgPDwgUklfQVNNUjVfUEdfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwNDAwICovDQojZGVmaW5lIFJJX0FTTVI1X1BHXzExICAgICAgICAgICAgICAgICAgKDB4MDgwMFUgPDwgUklfQVNNUjVfUEdfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwODAwICovDQojZGVmaW5lIFJJX0FTTVI1X1BHXzEyICAgICAgICAgICAgICAgICAgKDB4MTAwMFUgPDwgUklfQVNNUjVfUEdfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAxMDAwICovDQojZGVmaW5lIFJJX0FTTVI1X1BHXzEzICAgICAgICAgICAgICAgICAgKDB4MjAwMFUgPDwgUklfQVNNUjVfUEdfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAyMDAwICovDQojZGVmaW5lIFJJX0FTTVI1X1BHXzE0ICAgICAgICAgICAgICAgICAgKDB4NDAwMFUgPDwgUklfQVNNUjVfUEdfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDA0MDAwICovDQojZGVmaW5lIFJJX0FTTVI1X1BHXzE1ICAgICAgICAgICAgICAgICAgKDB4ODAwMFUgPDwgUklfQVNNUjVfUEdfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDA4MDAwICovDQoNCi8qKioqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFJJX0NNUjUgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBSSV9DTVI1X1BHX1BvcyAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSSV9DTVI1X1BHX01zayAgICAgICAgICAgICAgICAgICgweEZGRkZVIDw8IFJJX0NNUjVfUEdfUG9zKSAgICAgICAgICAgIC8qITwgMHgwMDAwRkZGRiAqLw0KI2RlZmluZSBSSV9DTVI1X1BHICAgICAgICAgICAgICAgICAgICAgIFJJX0NNUjVfUEdfTXNrICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgUEdbMTU6MF0gUG9ydCBHIHNlbGVjdGlvbiAqLw0KI2RlZmluZSBSSV9DTVI1X1BHXzAgICAgICAgICAgICAgICAgICAgICgweDAwMDFVIDw8IFJJX0NNUjVfUEdfUG9zKSAgICAgICAgICAgIC8qITwgMHgwMDAwMDAwMSAqLw0KI2RlZmluZSBSSV9DTVI1X1BHXzEgICAgICAgICAgICAgICAgICAgICgweDAwMDJVIDw8IFJJX0NNUjVfUEdfUG9zKSAgICAgICAgICAgIC8qITwgMHgwMDAwMDAwMiAqLw0KI2RlZmluZSBSSV9DTVI1X1BHXzIgICAgICAgICAgICAgICAgICAgICgweDAwMDRVIDw8IFJJX0NNUjVfUEdfUG9zKSAgICAgICAgICAgIC8qITwgMHgwMDAwMDAwNCAqLw0KI2RlZmluZSBSSV9DTVI1X1BHXzMgICAgICAgICAgICAgICAgICAgICgweDAwMDhVIDw8IFJJX0NNUjVfUEdfUG9zKSAgICAgICAgICAgIC8qITwgMHgwMDAwMDAwOCAqLw0KI2RlZmluZSBSSV9DTVI1X1BHXzQgICAgICAgICAgICAgICAgICAgICgweDAwMTBVIDw8IFJJX0NNUjVfUEdfUG9zKSAgICAgICAgICAgIC8qITwgMHgwMDAwMDAxMCAqLw0KI2RlZmluZSBSSV9DTVI1X1BHXzUgICAgICAgICAgICAgICAgICAgICgweDAwMjBVIDw8IFJJX0NNUjVfUEdfUG9zKSAgICAgICAgICAgIC8qITwgMHgwMDAwMDAyMCAqLw0KI2RlZmluZSBSSV9DTVI1X1BHXzYgICAgICAgICAgICAgICAgICAgICgweDAwNDBVIDw8IFJJX0NNUjVfUEdfUG9zKSAgICAgICAgICAgIC8qITwgMHgwMDAwMDA0MCAqLw0KI2RlZmluZSBSSV9DTVI1X1BHXzcgICAgICAgICAgICAgICAgICAgICgweDAwODBVIDw8IFJJX0NNUjVfUEdfUG9zKSAgICAgICAgICAgIC8qITwgMHgwMDAwMDA4MCAqLw0KI2RlZmluZSBSSV9DTVI1X1BHXzggICAgICAgICAgICAgICAgICAgICgweDAxMDBVIDw8IFJJX0NNUjVfUEdfUG9zKSAgICAgICAgICAgIC8qITwgMHgwMDAwMDEwMCAqLw0KI2RlZmluZSBSSV9DTVI1X1BHXzkgICAgICAgICAgICAgICAgICAgICgweDAyMDBVIDw8IFJJX0NNUjVfUEdfUG9zKSAgICAgICAgICAgIC8qITwgMHgwMDAwMDIwMCAqLw0KI2RlZmluZSBSSV9DTVI1X1BHXzEwICAgICAgICAgICAgICAgICAgICgweDA0MDBVIDw8IFJJX0NNUjVfUEdfUG9zKSAgICAgICAgICAgIC8qITwgMHgwMDAwMDQwMCAqLw0KI2RlZmluZSBSSV9DTVI1X1BHXzExICAgICAgICAgICAgICAgICAgICgweDA4MDBVIDw8IFJJX0NNUjVfUEdfUG9zKSAgICAgICAgICAgIC8qITwgMHgwMDAwMDgwMCAqLw0KI2RlZmluZSBSSV9DTVI1X1BHXzEyICAgICAgICAgICAgICAgICAgICgweDEwMDBVIDw8IFJJX0NNUjVfUEdfUG9zKSAgICAgICAgICAgIC8qITwgMHgwMDAwMTAwMCAqLw0KI2RlZmluZSBSSV9DTVI1X1BHXzEzICAgICAgICAgICAgICAgICAgICgweDIwMDBVIDw8IFJJX0NNUjVfUEdfUG9zKSAgICAgICAgICAgIC8qITwgMHgwMDAwMjAwMCAqLw0KI2RlZmluZSBSSV9DTVI1X1BHXzE0ICAgICAgICAgICAgICAgICAgICgweDQwMDBVIDw8IFJJX0NNUjVfUEdfUG9zKSAgICAgICAgICAgIC8qITwgMHgwMDAwNDAwMCAqLw0KI2RlZmluZSBSSV9DTVI1X1BHXzE1ICAgICAgICAgICAgICAgICAgICgweDgwMDBVIDw8IFJJX0NNUjVfUEdfUG9zKSAgICAgICAgICAgIC8qITwgMHgwMDAwODAwMCAqLw0KDQovKioqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBSSV9DSUNSNSByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIFJJX0NJQ1I1X1BHX1BvcyAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJJX0NJQ1I1X1BHX01zayAgICAgICAgICAgICAgICAgKDB4RkZGRlUgPDwgUklfQ0lDUjVfUEdfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDBGRkZGICovDQojZGVmaW5lIFJJX0NJQ1I1X1BHICAgICAgICAgICAgICAgICAgICAgUklfQ0lDUjVfUEdfTXNrICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBQR1sxNTowXSBQb3J0IEcgc2VsZWN0aW9uICovDQojZGVmaW5lIFJJX0NJQ1I1X1BHXzAgICAgICAgICAgICAgICAgICAgKDB4MDAwMVUgPDwgUklfQ0lDUjVfUEdfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwMDAxICovDQojZGVmaW5lIFJJX0NJQ1I1X1BHXzEgICAgICAgICAgICAgICAgICAgKDB4MDAwMlUgPDwgUklfQ0lDUjVfUEdfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwMDAyICovDQojZGVmaW5lIFJJX0NJQ1I1X1BHXzIgICAgICAgICAgICAgICAgICAgKDB4MDAwNFUgPDwgUklfQ0lDUjVfUEdfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwMDA0ICovDQojZGVmaW5lIFJJX0NJQ1I1X1BHXzMgICAgICAgICAgICAgICAgICAgKDB4MDAwOFUgPDwgUklfQ0lDUjVfUEdfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwMDA4ICovDQojZGVmaW5lIFJJX0NJQ1I1X1BHXzQgICAgICAgICAgICAgICAgICAgKDB4MDAxMFUgPDwgUklfQ0lDUjVfUEdfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwMDEwICovDQojZGVmaW5lIFJJX0NJQ1I1X1BHXzUgICAgICAgICAgICAgICAgICAgKDB4MDAyMFUgPDwgUklfQ0lDUjVfUEdfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwMDIwICovDQojZGVmaW5lIFJJX0NJQ1I1X1BHXzYgICAgICAgICAgICAgICAgICAgKDB4MDA0MFUgPDwgUklfQ0lDUjVfUEdfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwMDQwICovDQojZGVmaW5lIFJJX0NJQ1I1X1BHXzcgICAgICAgICAgICAgICAgICAgKDB4MDA4MFUgPDwgUklfQ0lDUjVfUEdfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwMDgwICovDQojZGVmaW5lIFJJX0NJQ1I1X1BHXzggICAgICAgICAgICAgICAgICAgKDB4MDEwMFUgPDwgUklfQ0lDUjVfUEdfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwMTAwICovDQojZGVmaW5lIFJJX0NJQ1I1X1BHXzkgICAgICAgICAgICAgICAgICAgKDB4MDIwMFUgPDwgUklfQ0lDUjVfUEdfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwMjAwICovDQojZGVmaW5lIFJJX0NJQ1I1X1BHXzEwICAgICAgICAgICAgICAgICAgKDB4MDQwMFUgPDwgUklfQ0lDUjVfUEdfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwNDAwICovDQojZGVmaW5lIFJJX0NJQ1I1X1BHXzExICAgICAgICAgICAgICAgICAgKDB4MDgwMFUgPDwgUklfQ0lDUjVfUEdfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwODAwICovDQojZGVmaW5lIFJJX0NJQ1I1X1BHXzEyICAgICAgICAgICAgICAgICAgKDB4MTAwMFUgPDwgUklfQ0lDUjVfUEdfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAxMDAwICovDQojZGVmaW5lIFJJX0NJQ1I1X1BHXzEzICAgICAgICAgICAgICAgICAgKDB4MjAwMFUgPDwgUklfQ0lDUjVfUEdfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAyMDAwICovDQojZGVmaW5lIFJJX0NJQ1I1X1BHXzE0ICAgICAgICAgICAgICAgICAgKDB4NDAwMFUgPDwgUklfQ0lDUjVfUEdfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDA0MDAwICovDQojZGVmaW5lIFJJX0NJQ1I1X1BHXzE1ICAgICAgICAgICAgICAgICAgKDB4ODAwMFUgPDwgUklfQ0lDUjVfUEdfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDA4MDAwICovDQoNCi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovDQovKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLw0KLyogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgVGltZXJzIChUSU0pICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8NCi8qICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovDQovKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLw0KDQovKioqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFRJTV9DUjEgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBUSU1fQ1IxX0NFTl9Qb3MgICAgICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBUSU1fQ1IxX0NFTl9Nc2sgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBUSU1fQ1IxX0NFTl9Qb3MpICAgICAgICAgIC8qITwgMHgwMDAwMDAwMSAqLw0KI2RlZmluZSBUSU1fQ1IxX0NFTiAgICAgICAgICAgICAgICAgICAgICAgICBUSU1fQ1IxX0NFTl9Nc2sgICAgICAgICAgICAgICAgICAgIC8qITxDb3VudGVyIGVuYWJsZSAqLw0KI2RlZmluZSBUSU1fQ1IxX1VESVNfUG9zICAgICAgICAgICAgICAgICAgICAoMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBUSU1fQ1IxX1VESVNfTXNrICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBUSU1fQ1IxX1VESVNfUG9zKSAgICAgICAgIC8qITwgMHgwMDAwMDAwMiAqLw0KI2RlZmluZSBUSU1fQ1IxX1VESVMgICAgICAgICAgICAgICAgICAgICAgICBUSU1fQ1IxX1VESVNfTXNrICAgICAgICAgICAgICAgICAgIC8qITxVcGRhdGUgZGlzYWJsZSAqLw0KI2RlZmluZSBUSU1fQ1IxX1VSU19Qb3MgICAgICAgICAgICAgICAgICAgICAoMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBUSU1fQ1IxX1VSU19Nc2sgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBUSU1fQ1IxX1VSU19Qb3MpICAgICAgICAgIC8qITwgMHgwMDAwMDAwNCAqLw0KI2RlZmluZSBUSU1fQ1IxX1VSUyAgICAgICAgICAgICAgICAgICAgICAgICBUSU1fQ1IxX1VSU19Nc2sgICAgICAgICAgICAgICAgICAgIC8qITxVcGRhdGUgcmVxdWVzdCBzb3VyY2UgKi8NCiNkZWZpbmUgVElNX0NSMV9PUE1fUG9zICAgICAgICAgICAgICAgICAgICAgKDNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVElNX0NSMV9PUE1fTXNrICAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVElNX0NSMV9PUE1fUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDAwMDggKi8NCiNkZWZpbmUgVElNX0NSMV9PUE0gICAgICAgICAgICAgICAgICAgICAgICAgVElNX0NSMV9PUE1fTXNrICAgICAgICAgICAgICAgICAgICAvKiE8T25lIHB1bHNlIG1vZGUgKi8NCiNkZWZpbmUgVElNX0NSMV9ESVJfUG9zICAgICAgICAgICAgICAgICAgICAgKDRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVElNX0NSMV9ESVJfTXNrICAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVElNX0NSMV9ESVJfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDAwMTAgKi8NCiNkZWZpbmUgVElNX0NSMV9ESVIgICAgICAgICAgICAgICAgICAgICAgICAgVElNX0NSMV9ESVJfTXNrICAgICAgICAgICAgICAgICAgICAvKiE8RGlyZWN0aW9uICovDQoNCiNkZWZpbmUgVElNX0NSMV9DTVNfUG9zICAgICAgICAgICAgICAgICAgICAgKDVVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVElNX0NSMV9DTVNfTXNrICAgICAgICAgICAgICAgICAgICAgKDB4M1UgPDwgVElNX0NSMV9DTVNfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDAwNjAgKi8NCiNkZWZpbmUgVElNX0NSMV9DTVMgICAgICAgICAgICAgICAgICAgICAgICAgVElNX0NSMV9DTVNfTXNrICAgICAgICAgICAgICAgICAgICAvKiE8Q01TWzE6MF0gYml0cyAoQ2VudGVyLWFsaWduZWQgbW9kZSBzZWxlY3Rpb24pICovDQojZGVmaW5lIFRJTV9DUjFfQ01TXzAgICAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFRJTV9DUjFfQ01TX1BvcykgICAgICAgICAgLyohPCAweDAwMDAwMDIwICovDQojZGVmaW5lIFRJTV9DUjFfQ01TXzEgICAgICAgICAgICAgICAgICAgICAgICgweDJVIDw8IFRJTV9DUjFfQ01TX1BvcykgICAgICAgICAgLyohPCAweDAwMDAwMDQwICovDQoNCiNkZWZpbmUgVElNX0NSMV9BUlBFX1BvcyAgICAgICAgICAgICAgICAgICAgKDdVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVElNX0NSMV9BUlBFX01zayAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVElNX0NSMV9BUlBFX1BvcykgICAgICAgICAvKiE8IDB4MDAwMDAwODAgKi8NCiNkZWZpbmUgVElNX0NSMV9BUlBFICAgICAgICAgICAgICAgICAgICAgICAgVElNX0NSMV9BUlBFX01zayAgICAgICAgICAgICAgICAgICAvKiE8QXV0by1yZWxvYWQgcHJlbG9hZCBlbmFibGUgKi8NCg0KI2RlZmluZSBUSU1fQ1IxX0NLRF9Qb3MgICAgICAgICAgICAgICAgICAgICAoOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBUSU1fQ1IxX0NLRF9Nc2sgICAgICAgICAgICAgICAgICAgICAoMHgzVSA8PCBUSU1fQ1IxX0NLRF9Qb3MpICAgICAgICAgIC8qITwgMHgwMDAwMDMwMCAqLw0KI2RlZmluZSBUSU1fQ1IxX0NLRCAgICAgICAgICAgICAgICAgICAgICAgICBUSU1fQ1IxX0NLRF9Nc2sgICAgICAgICAgICAgICAgICAgIC8qITxDS0RbMTowXSBiaXRzIChjbG9jayBkaXZpc2lvbikgKi8NCiNkZWZpbmUgVElNX0NSMV9DS0RfMCAgICAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVElNX0NSMV9DS0RfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDAxMDAgKi8NCiNkZWZpbmUgVElNX0NSMV9DS0RfMSAgICAgICAgICAgICAgICAgICAgICAgKDB4MlUgPDwgVElNX0NSMV9DS0RfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDAyMDAgKi8NCg0KLyoqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBUSU1fQ1IyIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgVElNX0NSMl9DQ0RTX1BvcyAgICAgICAgICAgICAgICAgICAgKDNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVElNX0NSMl9DQ0RTX01zayAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVElNX0NSMl9DQ0RTX1BvcykgICAgICAgICAvKiE8IDB4MDAwMDAwMDggKi8NCiNkZWZpbmUgVElNX0NSMl9DQ0RTICAgICAgICAgICAgICAgICAgICAgICAgVElNX0NSMl9DQ0RTX01zayAgICAgICAgICAgICAgICAgICAvKiE8Q2FwdHVyZS9Db21wYXJlIERNQSBTZWxlY3Rpb24gKi8NCg0KI2RlZmluZSBUSU1fQ1IyX01NU19Qb3MgICAgICAgICAgICAgICAgICAgICAoNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBUSU1fQ1IyX01NU19Nc2sgICAgICAgICAgICAgICAgICAgICAoMHg3VSA8PCBUSU1fQ1IyX01NU19Qb3MpICAgICAgICAgIC8qITwgMHgwMDAwMDA3MCAqLw0KI2RlZmluZSBUSU1fQ1IyX01NUyAgICAgICAgICAgICAgICAgICAgICAgICBUSU1fQ1IyX01NU19Nc2sgICAgICAgICAgICAgICAgICAgIC8qITxNTVNbMjowXSBiaXRzIChNYXN0ZXIgTW9kZSBTZWxlY3Rpb24pICovDQojZGVmaW5lIFRJTV9DUjJfTU1TXzAgICAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFRJTV9DUjJfTU1TX1BvcykgICAgICAgICAgLyohPCAweDAwMDAwMDEwICovDQojZGVmaW5lIFRJTV9DUjJfTU1TXzEgICAgICAgICAgICAgICAgICAgICAgICgweDJVIDw8IFRJTV9DUjJfTU1TX1BvcykgICAgICAgICAgLyohPCAweDAwMDAwMDIwICovDQojZGVmaW5lIFRJTV9DUjJfTU1TXzIgICAgICAgICAgICAgICAgICAgICAgICgweDRVIDw8IFRJTV9DUjJfTU1TX1BvcykgICAgICAgICAgLyohPCAweDAwMDAwMDQwICovDQoNCiNkZWZpbmUgVElNX0NSMl9USTFTX1BvcyAgICAgICAgICAgICAgICAgICAgKDdVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVElNX0NSMl9USTFTX01zayAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVElNX0NSMl9USTFTX1BvcykgICAgICAgICAvKiE8IDB4MDAwMDAwODAgKi8NCiNkZWZpbmUgVElNX0NSMl9USTFTICAgICAgICAgICAgICAgICAgICAgICAgVElNX0NSMl9USTFTX01zayAgICAgICAgICAgICAgICAgICAvKiE8VEkxIFNlbGVjdGlvbiAqLw0KDQovKioqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFRJTV9TTUNSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBUSU1fU01DUl9TTVNfUG9zICAgICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBUSU1fU01DUl9TTVNfTXNrICAgICAgICAgICAgICAgICAgICAoMHg3VSA8PCBUSU1fU01DUl9TTVNfUG9zKSAgICAgICAgIC8qITwgMHgwMDAwMDAwNyAqLw0KI2RlZmluZSBUSU1fU01DUl9TTVMgICAgICAgICAgICAgICAgICAgICAgICBUSU1fU01DUl9TTVNfTXNrICAgICAgICAgICAgICAgICAgIC8qITxTTVNbMjowXSBiaXRzIChTbGF2ZSBtb2RlIHNlbGVjdGlvbikgKi8NCiNkZWZpbmUgVElNX1NNQ1JfU01TXzAgICAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVElNX1NNQ1JfU01TX1BvcykgICAgICAgICAvKiE8IDB4MDAwMDAwMDEgKi8NCiNkZWZpbmUgVElNX1NNQ1JfU01TXzEgICAgICAgICAgICAgICAgICAgICAgKDB4MlUgPDwgVElNX1NNQ1JfU01TX1BvcykgICAgICAgICAvKiE8IDB4MDAwMDAwMDIgKi8NCiNkZWZpbmUgVElNX1NNQ1JfU01TXzIgICAgICAgICAgICAgICAgICAgICAgKDB4NFUgPDwgVElNX1NNQ1JfU01TX1BvcykgICAgICAgICAvKiE8IDB4MDAwMDAwMDQgKi8NCg0KI2RlZmluZSBUSU1fU01DUl9PQ0NTX1BvcyAgICAgICAgICAgICAgICAgICAoM1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBUSU1fU01DUl9PQ0NTX01zayAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBUSU1fU01DUl9PQ0NTX1BvcykgICAgICAgIC8qITwgMHgwMDAwMDAwOCAqLw0KI2RlZmluZSBUSU1fU01DUl9PQ0NTICAgICAgICAgICAgICAgICAgICAgICBUSU1fU01DUl9PQ0NTX01zayAgICAgICAgICAgICAgICAgIC8qITwgT0NSRUYgY2xlYXIgc2VsZWN0aW9uICovDQoNCiNkZWZpbmUgVElNX1NNQ1JfVFNfUG9zICAgICAgICAgICAgICAgICAgICAgKDRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVElNX1NNQ1JfVFNfTXNrICAgICAgICAgICAgICAgICAgICAgKDB4N1UgPDwgVElNX1NNQ1JfVFNfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDAwNzAgKi8NCiNkZWZpbmUgVElNX1NNQ1JfVFMgICAgICAgICAgICAgICAgICAgICAgICAgVElNX1NNQ1JfVFNfTXNrICAgICAgICAgICAgICAgICAgICAvKiE8VFNbMjowXSBiaXRzIChUcmlnZ2VyIHNlbGVjdGlvbikgKi8NCiNkZWZpbmUgVElNX1NNQ1JfVFNfMCAgICAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVElNX1NNQ1JfVFNfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDAwMTAgKi8NCiNkZWZpbmUgVElNX1NNQ1JfVFNfMSAgICAgICAgICAgICAgICAgICAgICAgKDB4MlUgPDwgVElNX1NNQ1JfVFNfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDAwMjAgKi8NCiNkZWZpbmUgVElNX1NNQ1JfVFNfMiAgICAgICAgICAgICAgICAgICAgICAgKDB4NFUgPDwgVElNX1NNQ1JfVFNfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDAwNDAgKi8NCg0KI2RlZmluZSBUSU1fU01DUl9NU01fUG9zICAgICAgICAgICAgICAgICAgICAoN1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBUSU1fU01DUl9NU01fTXNrICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBUSU1fU01DUl9NU01fUG9zKSAgICAgICAgIC8qITwgMHgwMDAwMDA4MCAqLw0KI2RlZmluZSBUSU1fU01DUl9NU00gICAgICAgICAgICAgICAgICAgICAgICBUSU1fU01DUl9NU01fTXNrICAgICAgICAgICAgICAgICAgIC8qITxNYXN0ZXIvc2xhdmUgbW9kZSAqLw0KDQojZGVmaW5lIFRJTV9TTUNSX0VURl9Qb3MgICAgICAgICAgICAgICAgICAgICg4VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFRJTV9TTUNSX0VURl9Nc2sgICAgICAgICAgICAgICAgICAgICgweEZVIDw8IFRJTV9TTUNSX0VURl9Qb3MpICAgICAgICAgLyohPCAweDAwMDAwRjAwICovDQojZGVmaW5lIFRJTV9TTUNSX0VURiAgICAgICAgICAgICAgICAgICAgICAgIFRJTV9TTUNSX0VURl9Nc2sgICAgICAgICAgICAgICAgICAgLyohPEVURlszOjBdIGJpdHMgKEV4dGVybmFsIHRyaWdnZXIgZmlsdGVyKSAqLw0KI2RlZmluZSBUSU1fU01DUl9FVEZfMCAgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBUSU1fU01DUl9FVEZfUG9zKSAgICAgICAgIC8qITwgMHgwMDAwMDEwMCAqLw0KI2RlZmluZSBUSU1fU01DUl9FVEZfMSAgICAgICAgICAgICAgICAgICAgICAoMHgyVSA8PCBUSU1fU01DUl9FVEZfUG9zKSAgICAgICAgIC8qITwgMHgwMDAwMDIwMCAqLw0KI2RlZmluZSBUSU1fU01DUl9FVEZfMiAgICAgICAgICAgICAgICAgICAgICAoMHg0VSA8PCBUSU1fU01DUl9FVEZfUG9zKSAgICAgICAgIC8qITwgMHgwMDAwMDQwMCAqLw0KI2RlZmluZSBUSU1fU01DUl9FVEZfMyAgICAgICAgICAgICAgICAgICAgICAoMHg4VSA8PCBUSU1fU01DUl9FVEZfUG9zKSAgICAgICAgIC8qITwgMHgwMDAwMDgwMCAqLw0KDQojZGVmaW5lIFRJTV9TTUNSX0VUUFNfUG9zICAgICAgICAgICAgICAgICAgICgxMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFRJTV9TTUNSX0VUUFNfTXNrICAgICAgICAgICAgICAgICAgICgweDNVIDw8IFRJTV9TTUNSX0VUUFNfUG9zKSAgICAgICAgLyohPCAweDAwMDAzMDAwICovDQojZGVmaW5lIFRJTV9TTUNSX0VUUFMgICAgICAgICAgICAgICAgICAgICAgIFRJTV9TTUNSX0VUUFNfTXNrICAgICAgICAgICAgICAgICAgLyohPEVUUFNbMTowXSBiaXRzIChFeHRlcm5hbCB0cmlnZ2VyIHByZXNjYWxlcikgKi8NCiNkZWZpbmUgVElNX1NNQ1JfRVRQU18wICAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVElNX1NNQ1JfRVRQU19Qb3MpICAgICAgICAvKiE8IDB4MDAwMDEwMDAgKi8NCiNkZWZpbmUgVElNX1NNQ1JfRVRQU18xICAgICAgICAgICAgICAgICAgICAgKDB4MlUgPDwgVElNX1NNQ1JfRVRQU19Qb3MpICAgICAgICAvKiE8IDB4MDAwMDIwMDAgKi8NCg0KI2RlZmluZSBUSU1fU01DUl9FQ0VfUG9zICAgICAgICAgICAgICAgICAgICAoMTRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBUSU1fU01DUl9FQ0VfTXNrICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBUSU1fU01DUl9FQ0VfUG9zKSAgICAgICAgIC8qITwgMHgwMDAwNDAwMCAqLw0KI2RlZmluZSBUSU1fU01DUl9FQ0UgICAgICAgICAgICAgICAgICAgICAgICBUSU1fU01DUl9FQ0VfTXNrICAgICAgICAgICAgICAgICAgIC8qITxFeHRlcm5hbCBjbG9jayBlbmFibGUgKi8NCiNkZWZpbmUgVElNX1NNQ1JfRVRQX1BvcyAgICAgICAgICAgICAgICAgICAgKDE1VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVElNX1NNQ1JfRVRQX01zayAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVElNX1NNQ1JfRVRQX1BvcykgICAgICAgICAvKiE8IDB4MDAwMDgwMDAgKi8NCiNkZWZpbmUgVElNX1NNQ1JfRVRQICAgICAgICAgICAgICAgICAgICAgICAgVElNX1NNQ1JfRVRQX01zayAgICAgICAgICAgICAgICAgICAvKiE8RXh0ZXJuYWwgdHJpZ2dlciBwb2xhcml0eSAqLw0KDQovKioqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFRJTV9ESUVSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBUSU1fRElFUl9VSUVfUG9zICAgICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBUSU1fRElFUl9VSUVfTXNrICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBUSU1fRElFUl9VSUVfUG9zKSAgICAgICAgIC8qITwgMHgwMDAwMDAwMSAqLw0KI2RlZmluZSBUSU1fRElFUl9VSUUgICAgICAgICAgICAgICAgICAgICAgICBUSU1fRElFUl9VSUVfTXNrICAgICAgICAgICAgICAgICAgIC8qITxVcGRhdGUgaW50ZXJydXB0IGVuYWJsZSAqLw0KI2RlZmluZSBUSU1fRElFUl9DQzFJRV9Qb3MgICAgICAgICAgICAgICAgICAoMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBUSU1fRElFUl9DQzFJRV9Nc2sgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBUSU1fRElFUl9DQzFJRV9Qb3MpICAgICAgIC8qITwgMHgwMDAwMDAwMiAqLw0KI2RlZmluZSBUSU1fRElFUl9DQzFJRSAgICAgICAgICAgICAgICAgICAgICBUSU1fRElFUl9DQzFJRV9Nc2sgICAgICAgICAgICAgICAgIC8qITxDYXB0dXJlL0NvbXBhcmUgMSBpbnRlcnJ1cHQgZW5hYmxlICovDQojZGVmaW5lIFRJTV9ESUVSX0NDMklFX1BvcyAgICAgICAgICAgICAgICAgICgyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFRJTV9ESUVSX0NDMklFX01zayAgICAgICAgICAgICAgICAgICgweDFVIDw8IFRJTV9ESUVSX0NDMklFX1BvcykgICAgICAgLyohPCAweDAwMDAwMDA0ICovDQojZGVmaW5lIFRJTV9ESUVSX0NDMklFICAgICAgICAgICAgICAgICAgICAgIFRJTV9ESUVSX0NDMklFX01zayAgICAgICAgICAgICAgICAgLyohPENhcHR1cmUvQ29tcGFyZSAyIGludGVycnVwdCBlbmFibGUgKi8NCiNkZWZpbmUgVElNX0RJRVJfQ0MzSUVfUG9zICAgICAgICAgICAgICAgICAgKDNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVElNX0RJRVJfQ0MzSUVfTXNrICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVElNX0RJRVJfQ0MzSUVfUG9zKSAgICAgICAvKiE8IDB4MDAwMDAwMDggKi8NCiNkZWZpbmUgVElNX0RJRVJfQ0MzSUUgICAgICAgICAgICAgICAgICAgICAgVElNX0RJRVJfQ0MzSUVfTXNrICAgICAgICAgICAgICAgICAvKiE8Q2FwdHVyZS9Db21wYXJlIDMgaW50ZXJydXB0IGVuYWJsZSAqLw0KI2RlZmluZSBUSU1fRElFUl9DQzRJRV9Qb3MgICAgICAgICAgICAgICAgICAoNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBUSU1fRElFUl9DQzRJRV9Nc2sgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBUSU1fRElFUl9DQzRJRV9Qb3MpICAgICAgIC8qITwgMHgwMDAwMDAxMCAqLw0KI2RlZmluZSBUSU1fRElFUl9DQzRJRSAgICAgICAgICAgICAgICAgICAgICBUSU1fRElFUl9DQzRJRV9Nc2sgICAgICAgICAgICAgICAgIC8qITxDYXB0dXJlL0NvbXBhcmUgNCBpbnRlcnJ1cHQgZW5hYmxlICovDQojZGVmaW5lIFRJTV9ESUVSX1RJRV9Qb3MgICAgICAgICAgICAgICAgICAgICg2VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFRJTV9ESUVSX1RJRV9Nc2sgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFRJTV9ESUVSX1RJRV9Qb3MpICAgICAgICAgLyohPCAweDAwMDAwMDQwICovDQojZGVmaW5lIFRJTV9ESUVSX1RJRSAgICAgICAgICAgICAgICAgICAgICAgIFRJTV9ESUVSX1RJRV9Nc2sgICAgICAgICAgICAgICAgICAgLyohPFRyaWdnZXIgaW50ZXJydXB0IGVuYWJsZSAqLw0KI2RlZmluZSBUSU1fRElFUl9VREVfUG9zICAgICAgICAgICAgICAgICAgICAoOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBUSU1fRElFUl9VREVfTXNrICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBUSU1fRElFUl9VREVfUG9zKSAgICAgICAgIC8qITwgMHgwMDAwMDEwMCAqLw0KI2RlZmluZSBUSU1fRElFUl9VREUgICAgICAgICAgICAgICAgICAgICAgICBUSU1fRElFUl9VREVfTXNrICAgICAgICAgICAgICAgICAgIC8qITxVcGRhdGUgRE1BIHJlcXVlc3QgZW5hYmxlICovDQojZGVmaW5lIFRJTV9ESUVSX0NDMURFX1BvcyAgICAgICAgICAgICAgICAgICg5VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFRJTV9ESUVSX0NDMURFX01zayAgICAgICAgICAgICAgICAgICgweDFVIDw8IFRJTV9ESUVSX0NDMURFX1BvcykgICAgICAgLyohPCAweDAwMDAwMjAwICovDQojZGVmaW5lIFRJTV9ESUVSX0NDMURFICAgICAgICAgICAgICAgICAgICAgIFRJTV9ESUVSX0NDMURFX01zayAgICAgICAgICAgICAgICAgLyohPENhcHR1cmUvQ29tcGFyZSAxIERNQSByZXF1ZXN0IGVuYWJsZSAqLw0KI2RlZmluZSBUSU1fRElFUl9DQzJERV9Qb3MgICAgICAgICAgICAgICAgICAoMTBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBUSU1fRElFUl9DQzJERV9Nc2sgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBUSU1fRElFUl9DQzJERV9Qb3MpICAgICAgIC8qITwgMHgwMDAwMDQwMCAqLw0KI2RlZmluZSBUSU1fRElFUl9DQzJERSAgICAgICAgICAgICAgICAgICAgICBUSU1fRElFUl9DQzJERV9Nc2sgICAgICAgICAgICAgICAgIC8qITxDYXB0dXJlL0NvbXBhcmUgMiBETUEgcmVxdWVzdCBlbmFibGUgKi8NCiNkZWZpbmUgVElNX0RJRVJfQ0MzREVfUG9zICAgICAgICAgICAgICAgICAgKDExVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVElNX0RJRVJfQ0MzREVfTXNrICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVElNX0RJRVJfQ0MzREVfUG9zKSAgICAgICAvKiE8IDB4MDAwMDA4MDAgKi8NCiNkZWZpbmUgVElNX0RJRVJfQ0MzREUgICAgICAgICAgICAgICAgICAgICAgVElNX0RJRVJfQ0MzREVfTXNrICAgICAgICAgICAgICAgICAvKiE8Q2FwdHVyZS9Db21wYXJlIDMgRE1BIHJlcXVlc3QgZW5hYmxlICovDQojZGVmaW5lIFRJTV9ESUVSX0NDNERFX1BvcyAgICAgICAgICAgICAgICAgICgxMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFRJTV9ESUVSX0NDNERFX01zayAgICAgICAgICAgICAgICAgICgweDFVIDw8IFRJTV9ESUVSX0NDNERFX1BvcykgICAgICAgLyohPCAweDAwMDAxMDAwICovDQojZGVmaW5lIFRJTV9ESUVSX0NDNERFICAgICAgICAgICAgICAgICAgICAgIFRJTV9ESUVSX0NDNERFX01zayAgICAgICAgICAgICAgICAgLyohPENhcHR1cmUvQ29tcGFyZSA0IERNQSByZXF1ZXN0IGVuYWJsZSAqLw0KI2RlZmluZSBUSU1fRElFUl9DT01ERSAgICAgICAgICAgICAgICAgICAgICAoKHVpbnQxNl90KTB4MjAwMFUpICAgICAgICAgICAgICAgIC8qITxDT00gRE1BIHJlcXVlc3QgZW5hYmxlICovDQojZGVmaW5lIFRJTV9ESUVSX1RERV9Qb3MgICAgICAgICAgICAgICAgICAgICgxNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFRJTV9ESUVSX1RERV9Nc2sgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFRJTV9ESUVSX1RERV9Qb3MpICAgICAgICAgLyohPCAweDAwMDA0MDAwICovDQojZGVmaW5lIFRJTV9ESUVSX1RERSAgICAgICAgICAgICAgICAgICAgICAgIFRJTV9ESUVSX1RERV9Nc2sgICAgICAgICAgICAgICAgICAgLyohPFRyaWdnZXIgRE1BIHJlcXVlc3QgZW5hYmxlICovDQoNCi8qKioqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFRJTV9TUiByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIFRJTV9TUl9VSUZfUG9zICAgICAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFRJTV9TUl9VSUZfTXNrICAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFRJTV9TUl9VSUZfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwMDAxICovDQojZGVmaW5lIFRJTV9TUl9VSUYgICAgICAgICAgICAgICAgICAgICAgICAgIFRJTV9TUl9VSUZfTXNrICAgICAgICAgICAgICAgICAgICAgLyohPFVwZGF0ZSBpbnRlcnJ1cHQgRmxhZyAqLw0KI2RlZmluZSBUSU1fU1JfQ0MxSUZfUG9zICAgICAgICAgICAgICAgICAgICAoMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBUSU1fU1JfQ0MxSUZfTXNrICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBUSU1fU1JfQ0MxSUZfUG9zKSAgICAgICAgIC8qITwgMHgwMDAwMDAwMiAqLw0KI2RlZmluZSBUSU1fU1JfQ0MxSUYgICAgICAgICAgICAgICAgICAgICAgICBUSU1fU1JfQ0MxSUZfTXNrICAgICAgICAgICAgICAgICAgIC8qITxDYXB0dXJlL0NvbXBhcmUgMSBpbnRlcnJ1cHQgRmxhZyAqLw0KI2RlZmluZSBUSU1fU1JfQ0MySUZfUG9zICAgICAgICAgICAgICAgICAgICAoMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBUSU1fU1JfQ0MySUZfTXNrICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBUSU1fU1JfQ0MySUZfUG9zKSAgICAgICAgIC8qITwgMHgwMDAwMDAwNCAqLw0KI2RlZmluZSBUSU1fU1JfQ0MySUYgICAgICAgICAgICAgICAgICAgICAgICBUSU1fU1JfQ0MySUZfTXNrICAgICAgICAgICAgICAgICAgIC8qITxDYXB0dXJlL0NvbXBhcmUgMiBpbnRlcnJ1cHQgRmxhZyAqLw0KI2RlZmluZSBUSU1fU1JfQ0MzSUZfUG9zICAgICAgICAgICAgICAgICAgICAoM1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBUSU1fU1JfQ0MzSUZfTXNrICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBUSU1fU1JfQ0MzSUZfUG9zKSAgICAgICAgIC8qITwgMHgwMDAwMDAwOCAqLw0KI2RlZmluZSBUSU1fU1JfQ0MzSUYgICAgICAgICAgICAgICAgICAgICAgICBUSU1fU1JfQ0MzSUZfTXNrICAgICAgICAgICAgICAgICAgIC8qITxDYXB0dXJlL0NvbXBhcmUgMyBpbnRlcnJ1cHQgRmxhZyAqLw0KI2RlZmluZSBUSU1fU1JfQ0M0SUZfUG9zICAgICAgICAgICAgICAgICAgICAoNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBUSU1fU1JfQ0M0SUZfTXNrICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBUSU1fU1JfQ0M0SUZfUG9zKSAgICAgICAgIC8qITwgMHgwMDAwMDAxMCAqLw0KI2RlZmluZSBUSU1fU1JfQ0M0SUYgICAgICAgICAgICAgICAgICAgICAgICBUSU1fU1JfQ0M0SUZfTXNrICAgICAgICAgICAgICAgICAgIC8qITxDYXB0dXJlL0NvbXBhcmUgNCBpbnRlcnJ1cHQgRmxhZyAqLw0KI2RlZmluZSBUSU1fU1JfVElGX1BvcyAgICAgICAgICAgICAgICAgICAgICAoNlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBUSU1fU1JfVElGX01zayAgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBUSU1fU1JfVElGX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDA0MCAqLw0KI2RlZmluZSBUSU1fU1JfVElGICAgICAgICAgICAgICAgICAgICAgICAgICBUSU1fU1JfVElGX01zayAgICAgICAgICAgICAgICAgICAgIC8qITxUcmlnZ2VyIGludGVycnVwdCBGbGFnICovDQojZGVmaW5lIFRJTV9TUl9DQzFPRl9Qb3MgICAgICAgICAgICAgICAgICAgICg5VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFRJTV9TUl9DQzFPRl9Nc2sgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFRJTV9TUl9DQzFPRl9Qb3MpICAgICAgICAgLyohPCAweDAwMDAwMjAwICovDQojZGVmaW5lIFRJTV9TUl9DQzFPRiAgICAgICAgICAgICAgICAgICAgICAgIFRJTV9TUl9DQzFPRl9Nc2sgICAgICAgICAgICAgICAgICAgLyohPENhcHR1cmUvQ29tcGFyZSAxIE92ZXJjYXB0dXJlIEZsYWcgKi8NCiNkZWZpbmUgVElNX1NSX0NDMk9GX1BvcyAgICAgICAgICAgICAgICAgICAgKDEwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVElNX1NSX0NDMk9GX01zayAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVElNX1NSX0NDMk9GX1BvcykgICAgICAgICAvKiE8IDB4MDAwMDA0MDAgKi8NCiNkZWZpbmUgVElNX1NSX0NDMk9GICAgICAgICAgICAgICAgICAgICAgICAgVElNX1NSX0NDMk9GX01zayAgICAgICAgICAgICAgICAgICAvKiE8Q2FwdHVyZS9Db21wYXJlIDIgT3ZlcmNhcHR1cmUgRmxhZyAqLw0KI2RlZmluZSBUSU1fU1JfQ0MzT0ZfUG9zICAgICAgICAgICAgICAgICAgICAoMTFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBUSU1fU1JfQ0MzT0ZfTXNrICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBUSU1fU1JfQ0MzT0ZfUG9zKSAgICAgICAgIC8qITwgMHgwMDAwMDgwMCAqLw0KI2RlZmluZSBUSU1fU1JfQ0MzT0YgICAgICAgICAgICAgICAgICAgICAgICBUSU1fU1JfQ0MzT0ZfTXNrICAgICAgICAgICAgICAgICAgIC8qITxDYXB0dXJlL0NvbXBhcmUgMyBPdmVyY2FwdHVyZSBGbGFnICovDQojZGVmaW5lIFRJTV9TUl9DQzRPRl9Qb3MgICAgICAgICAgICAgICAgICAgICgxMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFRJTV9TUl9DQzRPRl9Nc2sgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFRJTV9TUl9DQzRPRl9Qb3MpICAgICAgICAgLyohPCAweDAwMDAxMDAwICovDQojZGVmaW5lIFRJTV9TUl9DQzRPRiAgICAgICAgICAgICAgICAgICAgICAgIFRJTV9TUl9DQzRPRl9Nc2sgICAgICAgICAgICAgICAgICAgLyohPENhcHR1cmUvQ29tcGFyZSA0IE92ZXJjYXB0dXJlIEZsYWcgKi8NCg0KLyoqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBUSU1fRUdSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgVElNX0VHUl9VR19Qb3MgICAgICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVElNX0VHUl9VR19Nc2sgICAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVElNX0VHUl9VR19Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDEgKi8NCiNkZWZpbmUgVElNX0VHUl9VRyAgICAgICAgICAgICAgICAgICAgICAgICAgVElNX0VHUl9VR19Nc2sgICAgICAgICAgICAgICAgICAgICAvKiE8VXBkYXRlIEdlbmVyYXRpb24gKi8NCiNkZWZpbmUgVElNX0VHUl9DQzFHX1BvcyAgICAgICAgICAgICAgICAgICAgKDFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVElNX0VHUl9DQzFHX01zayAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVElNX0VHUl9DQzFHX1BvcykgICAgICAgICAvKiE8IDB4MDAwMDAwMDIgKi8NCiNkZWZpbmUgVElNX0VHUl9DQzFHICAgICAgICAgICAgICAgICAgICAgICAgVElNX0VHUl9DQzFHX01zayAgICAgICAgICAgICAgICAgICAvKiE8Q2FwdHVyZS9Db21wYXJlIDEgR2VuZXJhdGlvbiAqLw0KI2RlZmluZSBUSU1fRUdSX0NDMkdfUG9zICAgICAgICAgICAgICAgICAgICAoMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBUSU1fRUdSX0NDMkdfTXNrICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBUSU1fRUdSX0NDMkdfUG9zKSAgICAgICAgIC8qITwgMHgwMDAwMDAwNCAqLw0KI2RlZmluZSBUSU1fRUdSX0NDMkcgICAgICAgICAgICAgICAgICAgICAgICBUSU1fRUdSX0NDMkdfTXNrICAgICAgICAgICAgICAgICAgIC8qITxDYXB0dXJlL0NvbXBhcmUgMiBHZW5lcmF0aW9uICovDQojZGVmaW5lIFRJTV9FR1JfQ0MzR19Qb3MgICAgICAgICAgICAgICAgICAgICgzVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFRJTV9FR1JfQ0MzR19Nc2sgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFRJTV9FR1JfQ0MzR19Qb3MpICAgICAgICAgLyohPCAweDAwMDAwMDA4ICovDQojZGVmaW5lIFRJTV9FR1JfQ0MzRyAgICAgICAgICAgICAgICAgICAgICAgIFRJTV9FR1JfQ0MzR19Nc2sgICAgICAgICAgICAgICAgICAgLyohPENhcHR1cmUvQ29tcGFyZSAzIEdlbmVyYXRpb24gKi8NCiNkZWZpbmUgVElNX0VHUl9DQzRHX1BvcyAgICAgICAgICAgICAgICAgICAgKDRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVElNX0VHUl9DQzRHX01zayAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVElNX0VHUl9DQzRHX1BvcykgICAgICAgICAvKiE8IDB4MDAwMDAwMTAgKi8NCiNkZWZpbmUgVElNX0VHUl9DQzRHICAgICAgICAgICAgICAgICAgICAgICAgVElNX0VHUl9DQzRHX01zayAgICAgICAgICAgICAgICAgICAvKiE8Q2FwdHVyZS9Db21wYXJlIDQgR2VuZXJhdGlvbiAqLw0KI2RlZmluZSBUSU1fRUdSX1RHX1BvcyAgICAgICAgICAgICAgICAgICAgICAoNlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBUSU1fRUdSX1RHX01zayAgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBUSU1fRUdSX1RHX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDA0MCAqLw0KI2RlZmluZSBUSU1fRUdSX1RHICAgICAgICAgICAgICAgICAgICAgICAgICBUSU1fRUdSX1RHX01zayAgICAgICAgICAgICAgICAgICAgIC8qITxUcmlnZ2VyIEdlbmVyYXRpb24gKi8NCiAgICAgICAgICAgICAgICAgICANCi8qKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBUSU1fQ0NNUjEgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIFRJTV9DQ01SMV9DQzFTX1BvcyAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFRJTV9DQ01SMV9DQzFTX01zayAgICAgICAgICAgICAgICAgICgweDNVIDw8IFRJTV9DQ01SMV9DQzFTX1BvcykgICAgICAgLyohPCAweDAwMDAwMDAzICovDQojZGVmaW5lIFRJTV9DQ01SMV9DQzFTICAgICAgICAgICAgICAgICAgICAgIFRJTV9DQ01SMV9DQzFTX01zayAgICAgICAgICAgICAgICAgLyohPENDMVNbMTowXSBiaXRzIChDYXB0dXJlL0NvbXBhcmUgMSBTZWxlY3Rpb24pICovDQojZGVmaW5lIFRJTV9DQ01SMV9DQzFTXzAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFRJTV9DQ01SMV9DQzFTX1BvcykgICAgICAgLyohPCAweDAwMDAwMDAxICovDQojZGVmaW5lIFRJTV9DQ01SMV9DQzFTXzEgICAgICAgICAgICAgICAgICAgICgweDJVIDw8IFRJTV9DQ01SMV9DQzFTX1BvcykgICAgICAgLyohPCAweDAwMDAwMDAyICovDQoNCiNkZWZpbmUgVElNX0NDTVIxX09DMUZFX1BvcyAgICAgICAgICAgICAgICAgKDJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVElNX0NDTVIxX09DMUZFX01zayAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVElNX0NDTVIxX09DMUZFX1BvcykgICAgICAvKiE8IDB4MDAwMDAwMDQgKi8NCiNkZWZpbmUgVElNX0NDTVIxX09DMUZFICAgICAgICAgICAgICAgICAgICAgVElNX0NDTVIxX09DMUZFX01zayAgICAgICAgICAgICAgICAvKiE8T3V0cHV0IENvbXBhcmUgMSBGYXN0IGVuYWJsZSAqLw0KI2RlZmluZSBUSU1fQ0NNUjFfT0MxUEVfUG9zICAgICAgICAgICAgICAgICAoM1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBUSU1fQ0NNUjFfT0MxUEVfTXNrICAgICAgICAgICAgICAgICAoMHgxVSA8PCBUSU1fQ0NNUjFfT0MxUEVfUG9zKSAgICAgIC8qITwgMHgwMDAwMDAwOCAqLw0KI2RlZmluZSBUSU1fQ0NNUjFfT0MxUEUgICAgICAgICAgICAgICAgICAgICBUSU1fQ0NNUjFfT0MxUEVfTXNrICAgICAgICAgICAgICAgIC8qITxPdXRwdXQgQ29tcGFyZSAxIFByZWxvYWQgZW5hYmxlICovDQoNCiNkZWZpbmUgVElNX0NDTVIxX09DMU1fUG9zICAgICAgICAgICAgICAgICAgKDRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVElNX0NDTVIxX09DMU1fTXNrICAgICAgICAgICAgICAgICAgKDB4N1UgPDwgVElNX0NDTVIxX09DMU1fUG9zKSAgICAgICAvKiE8IDB4MDAwMDAwNzAgKi8NCiNkZWZpbmUgVElNX0NDTVIxX09DMU0gICAgICAgICAgICAgICAgICAgICAgVElNX0NDTVIxX09DMU1fTXNrICAgICAgICAgICAgICAgICAvKiE8T0MxTVsyOjBdIGJpdHMgKE91dHB1dCBDb21wYXJlIDEgTW9kZSkgKi8NCiNkZWZpbmUgVElNX0NDTVIxX09DMU1fMCAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVElNX0NDTVIxX09DMU1fUG9zKSAgICAgICAvKiE8IDB4MDAwMDAwMTAgKi8NCiNkZWZpbmUgVElNX0NDTVIxX09DMU1fMSAgICAgICAgICAgICAgICAgICAgKDB4MlUgPDwgVElNX0NDTVIxX09DMU1fUG9zKSAgICAgICAvKiE8IDB4MDAwMDAwMjAgKi8NCiNkZWZpbmUgVElNX0NDTVIxX09DMU1fMiAgICAgICAgICAgICAgICAgICAgKDB4NFUgPDwgVElNX0NDTVIxX09DMU1fUG9zKSAgICAgICAvKiE8IDB4MDAwMDAwNDAgKi8NCg0KI2RlZmluZSBUSU1fQ0NNUjFfT0MxQ0VfUG9zICAgICAgICAgICAgICAgICAoN1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBUSU1fQ0NNUjFfT0MxQ0VfTXNrICAgICAgICAgICAgICAgICAoMHgxVSA8PCBUSU1fQ0NNUjFfT0MxQ0VfUG9zKSAgICAgIC8qITwgMHgwMDAwMDA4MCAqLw0KI2RlZmluZSBUSU1fQ0NNUjFfT0MxQ0UgICAgICAgICAgICAgICAgICAgICBUSU1fQ0NNUjFfT0MxQ0VfTXNrICAgICAgICAgICAgICAgIC8qITxPdXRwdXQgQ29tcGFyZSAxQ2xlYXIgRW5hYmxlICovDQoNCiNkZWZpbmUgVElNX0NDTVIxX0NDMlNfUG9zICAgICAgICAgICAgICAgICAgKDhVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVElNX0NDTVIxX0NDMlNfTXNrICAgICAgICAgICAgICAgICAgKDB4M1UgPDwgVElNX0NDTVIxX0NDMlNfUG9zKSAgICAgICAvKiE8IDB4MDAwMDAzMDAgKi8NCiNkZWZpbmUgVElNX0NDTVIxX0NDMlMgICAgICAgICAgICAgICAgICAgICAgVElNX0NDTVIxX0NDMlNfTXNrICAgICAgICAgICAgICAgICAvKiE8Q0MyU1sxOjBdIGJpdHMgKENhcHR1cmUvQ29tcGFyZSAyIFNlbGVjdGlvbikgKi8NCiNkZWZpbmUgVElNX0NDTVIxX0NDMlNfMCAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVElNX0NDTVIxX0NDMlNfUG9zKSAgICAgICAvKiE8IDB4MDAwMDAxMDAgKi8NCiNkZWZpbmUgVElNX0NDTVIxX0NDMlNfMSAgICAgICAgICAgICAgICAgICAgKDB4MlUgPDwgVElNX0NDTVIxX0NDMlNfUG9zKSAgICAgICAvKiE8IDB4MDAwMDAyMDAgKi8NCg0KI2RlZmluZSBUSU1fQ0NNUjFfT0MyRkVfUG9zICAgICAgICAgICAgICAgICAoMTBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBUSU1fQ0NNUjFfT0MyRkVfTXNrICAgICAgICAgICAgICAgICAoMHgxVSA8PCBUSU1fQ0NNUjFfT0MyRkVfUG9zKSAgICAgIC8qITwgMHgwMDAwMDQwMCAqLw0KI2RlZmluZSBUSU1fQ0NNUjFfT0MyRkUgICAgICAgICAgICAgICAgICAgICBUSU1fQ0NNUjFfT0MyRkVfTXNrICAgICAgICAgICAgICAgIC8qITxPdXRwdXQgQ29tcGFyZSAyIEZhc3QgZW5hYmxlICovDQojZGVmaW5lIFRJTV9DQ01SMV9PQzJQRV9Qb3MgICAgICAgICAgICAgICAgICgxMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFRJTV9DQ01SMV9PQzJQRV9Nc2sgICAgICAgICAgICAgICAgICgweDFVIDw8IFRJTV9DQ01SMV9PQzJQRV9Qb3MpICAgICAgLyohPCAweDAwMDAwODAwICovDQojZGVmaW5lIFRJTV9DQ01SMV9PQzJQRSAgICAgICAgICAgICAgICAgICAgIFRJTV9DQ01SMV9PQzJQRV9Nc2sgICAgICAgICAgICAgICAgLyohPE91dHB1dCBDb21wYXJlIDIgUHJlbG9hZCBlbmFibGUgKi8NCg0KI2RlZmluZSBUSU1fQ0NNUjFfT0MyTV9Qb3MgICAgICAgICAgICAgICAgICAoMTJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBUSU1fQ0NNUjFfT0MyTV9Nc2sgICAgICAgICAgICAgICAgICAoMHg3VSA8PCBUSU1fQ0NNUjFfT0MyTV9Qb3MpICAgICAgIC8qITwgMHgwMDAwNzAwMCAqLw0KI2RlZmluZSBUSU1fQ0NNUjFfT0MyTSAgICAgICAgICAgICAgICAgICAgICBUSU1fQ0NNUjFfT0MyTV9Nc2sgICAgICAgICAgICAgICAgIC8qITxPQzJNWzI6MF0gYml0cyAoT3V0cHV0IENvbXBhcmUgMiBNb2RlKSAqLw0KI2RlZmluZSBUSU1fQ0NNUjFfT0MyTV8wICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBUSU1fQ0NNUjFfT0MyTV9Qb3MpICAgICAgIC8qITwgMHgwMDAwMTAwMCAqLw0KI2RlZmluZSBUSU1fQ0NNUjFfT0MyTV8xICAgICAgICAgICAgICAgICAgICAoMHgyVSA8PCBUSU1fQ0NNUjFfT0MyTV9Qb3MpICAgICAgIC8qITwgMHgwMDAwMjAwMCAqLw0KI2RlZmluZSBUSU1fQ0NNUjFfT0MyTV8yICAgICAgICAgICAgICAgICAgICAoMHg0VSA8PCBUSU1fQ0NNUjFfT0MyTV9Qb3MpICAgICAgIC8qITwgMHgwMDAwNDAwMCAqLw0KDQojZGVmaW5lIFRJTV9DQ01SMV9PQzJDRV9Qb3MgICAgICAgICAgICAgICAgICgxNVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFRJTV9DQ01SMV9PQzJDRV9Nc2sgICAgICAgICAgICAgICAgICgweDFVIDw8IFRJTV9DQ01SMV9PQzJDRV9Qb3MpICAgICAgLyohPCAweDAwMDA4MDAwICovDQojZGVmaW5lIFRJTV9DQ01SMV9PQzJDRSAgICAgICAgICAgICAgICAgICAgIFRJTV9DQ01SMV9PQzJDRV9Nc2sgICAgICAgICAgICAgICAgLyohPE91dHB1dCBDb21wYXJlIDIgQ2xlYXIgRW5hYmxlICovDQoNCi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovDQoNCiNkZWZpbmUgVElNX0NDTVIxX0lDMVBTQ19Qb3MgICAgICAgICAgICAgICAgKDJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVElNX0NDTVIxX0lDMVBTQ19Nc2sgICAgICAgICAgICAgICAgKDB4M1UgPDwgVElNX0NDTVIxX0lDMVBTQ19Qb3MpICAgICAvKiE8IDB4MDAwMDAwMEMgKi8NCiNkZWZpbmUgVElNX0NDTVIxX0lDMVBTQyAgICAgICAgICAgICAgICAgICAgVElNX0NDTVIxX0lDMVBTQ19Nc2sgICAgICAgICAgICAgICAvKiE8SUMxUFNDWzE6MF0gYml0cyAoSW5wdXQgQ2FwdHVyZSAxIFByZXNjYWxlcikgKi8NCiNkZWZpbmUgVElNX0NDTVIxX0lDMVBTQ18wICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVElNX0NDTVIxX0lDMVBTQ19Qb3MpICAgICAvKiE8IDB4MDAwMDAwMDQgKi8NCiNkZWZpbmUgVElNX0NDTVIxX0lDMVBTQ18xICAgICAgICAgICAgICAgICAgKDB4MlUgPDwgVElNX0NDTVIxX0lDMVBTQ19Qb3MpICAgICAvKiE8IDB4MDAwMDAwMDggKi8NCg0KI2RlZmluZSBUSU1fQ0NNUjFfSUMxRl9Qb3MgICAgICAgICAgICAgICAgICAoNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBUSU1fQ0NNUjFfSUMxRl9Nc2sgICAgICAgICAgICAgICAgICAoMHhGVSA8PCBUSU1fQ0NNUjFfSUMxRl9Qb3MpICAgICAgIC8qITwgMHgwMDAwMDBGMCAqLw0KI2RlZmluZSBUSU1fQ0NNUjFfSUMxRiAgICAgICAgICAgICAgICAgICAgICBUSU1fQ0NNUjFfSUMxRl9Nc2sgICAgICAgICAgICAgICAgIC8qITxJQzFGWzM6MF0gYml0cyAoSW5wdXQgQ2FwdHVyZSAxIEZpbHRlcikgKi8NCiNkZWZpbmUgVElNX0NDTVIxX0lDMUZfMCAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVElNX0NDTVIxX0lDMUZfUG9zKSAgICAgICAvKiE8IDB4MDAwMDAwMTAgKi8NCiNkZWZpbmUgVElNX0NDTVIxX0lDMUZfMSAgICAgICAgICAgICAgICAgICAgKDB4MlUgPDwgVElNX0NDTVIxX0lDMUZfUG9zKSAgICAgICAvKiE8IDB4MDAwMDAwMjAgKi8NCiNkZWZpbmUgVElNX0NDTVIxX0lDMUZfMiAgICAgICAgICAgICAgICAgICAgKDB4NFUgPDwgVElNX0NDTVIxX0lDMUZfUG9zKSAgICAgICAvKiE8IDB4MDAwMDAwNDAgKi8NCiNkZWZpbmUgVElNX0NDTVIxX0lDMUZfMyAgICAgICAgICAgICAgICAgICAgKDB4OFUgPDwgVElNX0NDTVIxX0lDMUZfUG9zKSAgICAgICAvKiE8IDB4MDAwMDAwODAgKi8NCg0KI2RlZmluZSBUSU1fQ0NNUjFfSUMyUFNDX1BvcyAgICAgICAgICAgICAgICAoMTBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBUSU1fQ0NNUjFfSUMyUFNDX01zayAgICAgICAgICAgICAgICAoMHgzVSA8PCBUSU1fQ0NNUjFfSUMyUFNDX1BvcykgICAgIC8qITwgMHgwMDAwMEMwMCAqLw0KI2RlZmluZSBUSU1fQ0NNUjFfSUMyUFNDICAgICAgICAgICAgICAgICAgICBUSU1fQ0NNUjFfSUMyUFNDX01zayAgICAgICAgICAgICAgIC8qITxJQzJQU0NbMTowXSBiaXRzIChJbnB1dCBDYXB0dXJlIDIgUHJlc2NhbGVyKSAqLw0KI2RlZmluZSBUSU1fQ0NNUjFfSUMyUFNDXzAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBUSU1fQ0NNUjFfSUMyUFNDX1BvcykgICAgIC8qITwgMHgwMDAwMDQwMCAqLw0KI2RlZmluZSBUSU1fQ0NNUjFfSUMyUFNDXzEgICAgICAgICAgICAgICAgICAoMHgyVSA8PCBUSU1fQ0NNUjFfSUMyUFNDX1BvcykgICAgIC8qITwgMHgwMDAwMDgwMCAqLw0KDQojZGVmaW5lIFRJTV9DQ01SMV9JQzJGX1BvcyAgICAgICAgICAgICAgICAgICgxMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFRJTV9DQ01SMV9JQzJGX01zayAgICAgICAgICAgICAgICAgICgweEZVIDw8IFRJTV9DQ01SMV9JQzJGX1BvcykgICAgICAgLyohPCAweDAwMDBGMDAwICovDQojZGVmaW5lIFRJTV9DQ01SMV9JQzJGICAgICAgICAgICAgICAgICAgICAgIFRJTV9DQ01SMV9JQzJGX01zayAgICAgICAgICAgICAgICAgLyohPElDMkZbMzowXSBiaXRzIChJbnB1dCBDYXB0dXJlIDIgRmlsdGVyKSAqLw0KI2RlZmluZSBUSU1fQ0NNUjFfSUMyRl8wICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBUSU1fQ0NNUjFfSUMyRl9Qb3MpICAgICAgIC8qITwgMHgwMDAwMTAwMCAqLw0KI2RlZmluZSBUSU1fQ0NNUjFfSUMyRl8xICAgICAgICAgICAgICAgICAgICAoMHgyVSA8PCBUSU1fQ0NNUjFfSUMyRl9Qb3MpICAgICAgIC8qITwgMHgwMDAwMjAwMCAqLw0KI2RlZmluZSBUSU1fQ0NNUjFfSUMyRl8yICAgICAgICAgICAgICAgICAgICAoMHg0VSA8PCBUSU1fQ0NNUjFfSUMyRl9Qb3MpICAgICAgIC8qITwgMHgwMDAwNDAwMCAqLw0KI2RlZmluZSBUSU1fQ0NNUjFfSUMyRl8zICAgICAgICAgICAgICAgICAgICAoMHg4VSA8PCBUSU1fQ0NNUjFfSUMyRl9Qb3MpICAgICAgIC8qITwgMHgwMDAwODAwMCAqLw0KDQovKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgVElNX0NDTVIyIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBUSU1fQ0NNUjJfQ0MzU19Qb3MgICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBUSU1fQ0NNUjJfQ0MzU19Nc2sgICAgICAgICAgICAgICAgICAoMHgzVSA8PCBUSU1fQ0NNUjJfQ0MzU19Qb3MpICAgICAgIC8qITwgMHgwMDAwMDAwMyAqLw0KI2RlZmluZSBUSU1fQ0NNUjJfQ0MzUyAgICAgICAgICAgICAgICAgICAgICBUSU1fQ0NNUjJfQ0MzU19Nc2sgICAgICAgICAgICAgICAgIC8qITxDQzNTWzE6MF0gYml0cyAoQ2FwdHVyZS9Db21wYXJlIDMgU2VsZWN0aW9uKSAqLw0KI2RlZmluZSBUSU1fQ0NNUjJfQ0MzU18wICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBUSU1fQ0NNUjJfQ0MzU19Qb3MpICAgICAgIC8qITwgMHgwMDAwMDAwMSAqLw0KI2RlZmluZSBUSU1fQ0NNUjJfQ0MzU18xICAgICAgICAgICAgICAgICAgICAoMHgyVSA8PCBUSU1fQ0NNUjJfQ0MzU19Qb3MpICAgICAgIC8qITwgMHgwMDAwMDAwMiAqLw0KDQojZGVmaW5lIFRJTV9DQ01SMl9PQzNGRV9Qb3MgICAgICAgICAgICAgICAgICgyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFRJTV9DQ01SMl9PQzNGRV9Nc2sgICAgICAgICAgICAgICAgICgweDFVIDw8IFRJTV9DQ01SMl9PQzNGRV9Qb3MpICAgICAgLyohPCAweDAwMDAwMDA0ICovDQojZGVmaW5lIFRJTV9DQ01SMl9PQzNGRSAgICAgICAgICAgICAgICAgICAgIFRJTV9DQ01SMl9PQzNGRV9Nc2sgICAgICAgICAgICAgICAgLyohPE91dHB1dCBDb21wYXJlIDMgRmFzdCBlbmFibGUgKi8NCiNkZWZpbmUgVElNX0NDTVIyX09DM1BFX1BvcyAgICAgICAgICAgICAgICAgKDNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVElNX0NDTVIyX09DM1BFX01zayAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVElNX0NDTVIyX09DM1BFX1BvcykgICAgICAvKiE8IDB4MDAwMDAwMDggKi8NCiNkZWZpbmUgVElNX0NDTVIyX09DM1BFICAgICAgICAgICAgICAgICAgICAgVElNX0NDTVIyX09DM1BFX01zayAgICAgICAgICAgICAgICAvKiE8T3V0cHV0IENvbXBhcmUgMyBQcmVsb2FkIGVuYWJsZSAqLw0KDQojZGVmaW5lIFRJTV9DQ01SMl9PQzNNX1BvcyAgICAgICAgICAgICAgICAgICg0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFRJTV9DQ01SMl9PQzNNX01zayAgICAgICAgICAgICAgICAgICgweDdVIDw8IFRJTV9DQ01SMl9PQzNNX1BvcykgICAgICAgLyohPCAweDAwMDAwMDcwICovDQojZGVmaW5lIFRJTV9DQ01SMl9PQzNNICAgICAgICAgICAgICAgICAgICAgIFRJTV9DQ01SMl9PQzNNX01zayAgICAgICAgICAgICAgICAgLyohPE9DM01bMjowXSBiaXRzIChPdXRwdXQgQ29tcGFyZSAzIE1vZGUpICovDQojZGVmaW5lIFRJTV9DQ01SMl9PQzNNXzAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFRJTV9DQ01SMl9PQzNNX1BvcykgICAgICAgLyohPCAweDAwMDAwMDEwICovDQojZGVmaW5lIFRJTV9DQ01SMl9PQzNNXzEgICAgICAgICAgICAgICAgICAgICgweDJVIDw8IFRJTV9DQ01SMl9PQzNNX1BvcykgICAgICAgLyohPCAweDAwMDAwMDIwICovDQojZGVmaW5lIFRJTV9DQ01SMl9PQzNNXzIgICAgICAgICAgICAgICAgICAgICgweDRVIDw8IFRJTV9DQ01SMl9PQzNNX1BvcykgICAgICAgLyohPCAweDAwMDAwMDQwICovDQoNCiNkZWZpbmUgVElNX0NDTVIyX09DM0NFX1BvcyAgICAgICAgICAgICAgICAgKDdVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVElNX0NDTVIyX09DM0NFX01zayAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVElNX0NDTVIyX09DM0NFX1BvcykgICAgICAvKiE8IDB4MDAwMDAwODAgKi8NCiNkZWZpbmUgVElNX0NDTVIyX09DM0NFICAgICAgICAgICAgICAgICAgICAgVElNX0NDTVIyX09DM0NFX01zayAgICAgICAgICAgICAgICAvKiE8T3V0cHV0IENvbXBhcmUgMyBDbGVhciBFbmFibGUgKi8NCg0KI2RlZmluZSBUSU1fQ0NNUjJfQ0M0U19Qb3MgICAgICAgICAgICAgICAgICAoOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBUSU1fQ0NNUjJfQ0M0U19Nc2sgICAgICAgICAgICAgICAgICAoMHgzVSA8PCBUSU1fQ0NNUjJfQ0M0U19Qb3MpICAgICAgIC8qITwgMHgwMDAwMDMwMCAqLw0KI2RlZmluZSBUSU1fQ0NNUjJfQ0M0UyAgICAgICAgICAgICAgICAgICAgICBUSU1fQ0NNUjJfQ0M0U19Nc2sgICAgICAgICAgICAgICAgIC8qITxDQzRTWzE6MF0gYml0cyAoQ2FwdHVyZS9Db21wYXJlIDQgU2VsZWN0aW9uKSAqLw0KI2RlZmluZSBUSU1fQ0NNUjJfQ0M0U18wICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBUSU1fQ0NNUjJfQ0M0U19Qb3MpICAgICAgIC8qITwgMHgwMDAwMDEwMCAqLw0KI2RlZmluZSBUSU1fQ0NNUjJfQ0M0U18xICAgICAgICAgICAgICAgICAgICAoMHgyVSA8PCBUSU1fQ0NNUjJfQ0M0U19Qb3MpICAgICAgIC8qITwgMHgwMDAwMDIwMCAqLw0KDQojZGVmaW5lIFRJTV9DQ01SMl9PQzRGRV9Qb3MgICAgICAgICAgICAgICAgICgxMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFRJTV9DQ01SMl9PQzRGRV9Nc2sgICAgICAgICAgICAgICAgICgweDFVIDw8IFRJTV9DQ01SMl9PQzRGRV9Qb3MpICAgICAgLyohPCAweDAwMDAwNDAwICovDQojZGVmaW5lIFRJTV9DQ01SMl9PQzRGRSAgICAgICAgICAgICAgICAgICAgIFRJTV9DQ01SMl9PQzRGRV9Nc2sgICAgICAgICAgICAgICAgLyohPE91dHB1dCBDb21wYXJlIDQgRmFzdCBlbmFibGUgKi8NCiNkZWZpbmUgVElNX0NDTVIyX09DNFBFX1BvcyAgICAgICAgICAgICAgICAgKDExVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVElNX0NDTVIyX09DNFBFX01zayAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVElNX0NDTVIyX09DNFBFX1BvcykgICAgICAvKiE8IDB4MDAwMDA4MDAgKi8NCiNkZWZpbmUgVElNX0NDTVIyX09DNFBFICAgICAgICAgICAgICAgICAgICAgVElNX0NDTVIyX09DNFBFX01zayAgICAgICAgICAgICAgICAvKiE8T3V0cHV0IENvbXBhcmUgNCBQcmVsb2FkIGVuYWJsZSAqLw0KDQojZGVmaW5lIFRJTV9DQ01SMl9PQzRNX1BvcyAgICAgICAgICAgICAgICAgICgxMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFRJTV9DQ01SMl9PQzRNX01zayAgICAgICAgICAgICAgICAgICgweDdVIDw8IFRJTV9DQ01SMl9PQzRNX1BvcykgICAgICAgLyohPCAweDAwMDA3MDAwICovDQojZGVmaW5lIFRJTV9DQ01SMl9PQzRNICAgICAgICAgICAgICAgICAgICAgIFRJTV9DQ01SMl9PQzRNX01zayAgICAgICAgICAgICAgICAgLyohPE9DNE1bMjowXSBiaXRzIChPdXRwdXQgQ29tcGFyZSA0IE1vZGUpICovDQojZGVmaW5lIFRJTV9DQ01SMl9PQzRNXzAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFRJTV9DQ01SMl9PQzRNX1BvcykgICAgICAgLyohPCAweDAwMDAxMDAwICovDQojZGVmaW5lIFRJTV9DQ01SMl9PQzRNXzEgICAgICAgICAgICAgICAgICAgICgweDJVIDw8IFRJTV9DQ01SMl9PQzRNX1BvcykgICAgICAgLyohPCAweDAwMDAyMDAwICovDQojZGVmaW5lIFRJTV9DQ01SMl9PQzRNXzIgICAgICAgICAgICAgICAgICAgICgweDRVIDw8IFRJTV9DQ01SMl9PQzRNX1BvcykgICAgICAgLyohPCAweDAwMDA0MDAwICovDQoNCiNkZWZpbmUgVElNX0NDTVIyX09DNENFX1BvcyAgICAgICAgICAgICAgICAgKDE1VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVElNX0NDTVIyX09DNENFX01zayAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVElNX0NDTVIyX09DNENFX1BvcykgICAgICAvKiE8IDB4MDAwMDgwMDAgKi8NCiNkZWZpbmUgVElNX0NDTVIyX09DNENFICAgICAgICAgICAgICAgICAgICAgVElNX0NDTVIyX09DNENFX01zayAgICAgICAgICAgICAgICAvKiE8T3V0cHV0IENvbXBhcmUgNCBDbGVhciBFbmFibGUgKi8NCg0KLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi8NCg0KI2RlZmluZSBUSU1fQ0NNUjJfSUMzUFNDX1BvcyAgICAgICAgICAgICAgICAoMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBUSU1fQ0NNUjJfSUMzUFNDX01zayAgICAgICAgICAgICAgICAoMHgzVSA8PCBUSU1fQ0NNUjJfSUMzUFNDX1BvcykgICAgIC8qITwgMHgwMDAwMDAwQyAqLw0KI2RlZmluZSBUSU1fQ0NNUjJfSUMzUFNDICAgICAgICAgICAgICAgICAgICBUSU1fQ0NNUjJfSUMzUFNDX01zayAgICAgICAgICAgICAgIC8qITxJQzNQU0NbMTowXSBiaXRzIChJbnB1dCBDYXB0dXJlIDMgUHJlc2NhbGVyKSAqLw0KI2RlZmluZSBUSU1fQ0NNUjJfSUMzUFNDXzAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBUSU1fQ0NNUjJfSUMzUFNDX1BvcykgICAgIC8qITwgMHgwMDAwMDAwNCAqLw0KI2RlZmluZSBUSU1fQ0NNUjJfSUMzUFNDXzEgICAgICAgICAgICAgICAgICAoMHgyVSA8PCBUSU1fQ0NNUjJfSUMzUFNDX1BvcykgICAgIC8qITwgMHgwMDAwMDAwOCAqLw0KDQojZGVmaW5lIFRJTV9DQ01SMl9JQzNGX1BvcyAgICAgICAgICAgICAgICAgICg0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFRJTV9DQ01SMl9JQzNGX01zayAgICAgICAgICAgICAgICAgICgweEZVIDw8IFRJTV9DQ01SMl9JQzNGX1BvcykgICAgICAgLyohPCAweDAwMDAwMEYwICovDQojZGVmaW5lIFRJTV9DQ01SMl9JQzNGICAgICAgICAgICAgICAgICAgICAgIFRJTV9DQ01SMl9JQzNGX01zayAgICAgICAgICAgICAgICAgLyohPElDM0ZbMzowXSBiaXRzIChJbnB1dCBDYXB0dXJlIDMgRmlsdGVyKSAqLw0KI2RlZmluZSBUSU1fQ0NNUjJfSUMzRl8wICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBUSU1fQ0NNUjJfSUMzRl9Qb3MpICAgICAgIC8qITwgMHgwMDAwMDAxMCAqLw0KI2RlZmluZSBUSU1fQ0NNUjJfSUMzRl8xICAgICAgICAgICAgICAgICAgICAoMHgyVSA8PCBUSU1fQ0NNUjJfSUMzRl9Qb3MpICAgICAgIC8qITwgMHgwMDAwMDAyMCAqLw0KI2RlZmluZSBUSU1fQ0NNUjJfSUMzRl8yICAgICAgICAgICAgICAgICAgICAoMHg0VSA8PCBUSU1fQ0NNUjJfSUMzRl9Qb3MpICAgICAgIC8qITwgMHgwMDAwMDA0MCAqLw0KI2RlZmluZSBUSU1fQ0NNUjJfSUMzRl8zICAgICAgICAgICAgICAgICAgICAoMHg4VSA8PCBUSU1fQ0NNUjJfSUMzRl9Qb3MpICAgICAgIC8qITwgMHgwMDAwMDA4MCAqLw0KDQojZGVmaW5lIFRJTV9DQ01SMl9JQzRQU0NfUG9zICAgICAgICAgICAgICAgICgxMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFRJTV9DQ01SMl9JQzRQU0NfTXNrICAgICAgICAgICAgICAgICgweDNVIDw8IFRJTV9DQ01SMl9JQzRQU0NfUG9zKSAgICAgLyohPCAweDAwMDAwQzAwICovDQojZGVmaW5lIFRJTV9DQ01SMl9JQzRQU0MgICAgICAgICAgICAgICAgICAgIFRJTV9DQ01SMl9JQzRQU0NfTXNrICAgICAgICAgICAgICAgLyohPElDNFBTQ1sxOjBdIGJpdHMgKElucHV0IENhcHR1cmUgNCBQcmVzY2FsZXIpICovDQojZGVmaW5lIFRJTV9DQ01SMl9JQzRQU0NfMCAgICAgICAgICAgICAgICAgICgweDFVIDw8IFRJTV9DQ01SMl9JQzRQU0NfUG9zKSAgICAgLyohPCAweDAwMDAwNDAwICovDQojZGVmaW5lIFRJTV9DQ01SMl9JQzRQU0NfMSAgICAgICAgICAgICAgICAgICgweDJVIDw8IFRJTV9DQ01SMl9JQzRQU0NfUG9zKSAgICAgLyohPCAweDAwMDAwODAwICovDQoNCiNkZWZpbmUgVElNX0NDTVIyX0lDNEZfUG9zICAgICAgICAgICAgICAgICAgKDEyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVElNX0NDTVIyX0lDNEZfTXNrICAgICAgICAgICAgICAgICAgKDB4RlUgPDwgVElNX0NDTVIyX0lDNEZfUG9zKSAgICAgICAvKiE8IDB4MDAwMEYwMDAgKi8NCiNkZWZpbmUgVElNX0NDTVIyX0lDNEYgICAgICAgICAgICAgICAgICAgICAgVElNX0NDTVIyX0lDNEZfTXNrICAgICAgICAgICAgICAgICAvKiE8SUM0RlszOjBdIGJpdHMgKElucHV0IENhcHR1cmUgNCBGaWx0ZXIpICovDQojZGVmaW5lIFRJTV9DQ01SMl9JQzRGXzAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFRJTV9DQ01SMl9JQzRGX1BvcykgICAgICAgLyohPCAweDAwMDAxMDAwICovDQojZGVmaW5lIFRJTV9DQ01SMl9JQzRGXzEgICAgICAgICAgICAgICAgICAgICgweDJVIDw8IFRJTV9DQ01SMl9JQzRGX1BvcykgICAgICAgLyohPCAweDAwMDAyMDAwICovDQojZGVmaW5lIFRJTV9DQ01SMl9JQzRGXzIgICAgICAgICAgICAgICAgICAgICgweDRVIDw8IFRJTV9DQ01SMl9JQzRGX1BvcykgICAgICAgLyohPCAweDAwMDA0MDAwICovDQojZGVmaW5lIFRJTV9DQ01SMl9JQzRGXzMgICAgICAgICAgICAgICAgICAgICgweDhVIDw8IFRJTV9DQ01SMl9JQzRGX1BvcykgICAgICAgLyohPCAweDAwMDA4MDAwICovDQoNCi8qKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgVElNX0NDRVIgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIFRJTV9DQ0VSX0NDMUVfUG9zICAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFRJTV9DQ0VSX0NDMUVfTXNrICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFRJTV9DQ0VSX0NDMUVfUG9zKSAgICAgICAgLyohPCAweDAwMDAwMDAxICovDQojZGVmaW5lIFRJTV9DQ0VSX0NDMUUgICAgICAgICAgICAgICAgICAgICAgIFRJTV9DQ0VSX0NDMUVfTXNrICAgICAgICAgICAgICAgICAgLyohPENhcHR1cmUvQ29tcGFyZSAxIG91dHB1dCBlbmFibGUgKi8NCiNkZWZpbmUgVElNX0NDRVJfQ0MxUF9Qb3MgICAgICAgICAgICAgICAgICAgKDFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVElNX0NDRVJfQ0MxUF9Nc2sgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVElNX0NDRVJfQ0MxUF9Qb3MpICAgICAgICAvKiE8IDB4MDAwMDAwMDIgKi8NCiNkZWZpbmUgVElNX0NDRVJfQ0MxUCAgICAgICAgICAgICAgICAgICAgICAgVElNX0NDRVJfQ0MxUF9Nc2sgICAgICAgICAgICAgICAgICAvKiE8Q2FwdHVyZS9Db21wYXJlIDEgb3V0cHV0IFBvbGFyaXR5ICovDQojZGVmaW5lIFRJTV9DQ0VSX0NDMU5QX1BvcyAgICAgICAgICAgICAgICAgICgzVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFRJTV9DQ0VSX0NDMU5QX01zayAgICAgICAgICAgICAgICAgICgweDFVIDw8IFRJTV9DQ0VSX0NDMU5QX1BvcykgICAgICAgLyohPCAweDAwMDAwMDA4ICovDQojZGVmaW5lIFRJTV9DQ0VSX0NDMU5QICAgICAgICAgICAgICAgICAgICAgIFRJTV9DQ0VSX0NDMU5QX01zayAgICAgICAgICAgICAgICAgLyohPENhcHR1cmUvQ29tcGFyZSAxIENvbXBsZW1lbnRhcnkgb3V0cHV0IFBvbGFyaXR5ICovDQojZGVmaW5lIFRJTV9DQ0VSX0NDMkVfUG9zICAgICAgICAgICAgICAgICAgICg0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFRJTV9DQ0VSX0NDMkVfTXNrICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFRJTV9DQ0VSX0NDMkVfUG9zKSAgICAgICAgLyohPCAweDAwMDAwMDEwICovDQojZGVmaW5lIFRJTV9DQ0VSX0NDMkUgICAgICAgICAgICAgICAgICAgICAgIFRJTV9DQ0VSX0NDMkVfTXNrICAgICAgICAgICAgICAgICAgLyohPENhcHR1cmUvQ29tcGFyZSAyIG91dHB1dCBlbmFibGUgKi8NCiNkZWZpbmUgVElNX0NDRVJfQ0MyUF9Qb3MgICAgICAgICAgICAgICAgICAgKDVVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVElNX0NDRVJfQ0MyUF9Nc2sgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVElNX0NDRVJfQ0MyUF9Qb3MpICAgICAgICAvKiE8IDB4MDAwMDAwMjAgKi8NCiNkZWZpbmUgVElNX0NDRVJfQ0MyUCAgICAgICAgICAgICAgICAgICAgICAgVElNX0NDRVJfQ0MyUF9Nc2sgICAgICAgICAgICAgICAgICAvKiE8Q2FwdHVyZS9Db21wYXJlIDIgb3V0cHV0IFBvbGFyaXR5ICovDQojZGVmaW5lIFRJTV9DQ0VSX0NDMk5QX1BvcyAgICAgICAgICAgICAgICAgICg3VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFRJTV9DQ0VSX0NDMk5QX01zayAgICAgICAgICAgICAgICAgICgweDFVIDw8IFRJTV9DQ0VSX0NDMk5QX1BvcykgICAgICAgLyohPCAweDAwMDAwMDgwICovDQojZGVmaW5lIFRJTV9DQ0VSX0NDMk5QICAgICAgICAgICAgICAgICAgICAgIFRJTV9DQ0VSX0NDMk5QX01zayAgICAgICAgICAgICAgICAgLyohPENhcHR1cmUvQ29tcGFyZSAyIENvbXBsZW1lbnRhcnkgb3V0cHV0IFBvbGFyaXR5ICovDQojZGVmaW5lIFRJTV9DQ0VSX0NDM0VfUG9zICAgICAgICAgICAgICAgICAgICg4VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFRJTV9DQ0VSX0NDM0VfTXNrICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFRJTV9DQ0VSX0NDM0VfUG9zKSAgICAgICAgLyohPCAweDAwMDAwMTAwICovDQojZGVmaW5lIFRJTV9DQ0VSX0NDM0UgICAgICAgICAgICAgICAgICAgICAgIFRJTV9DQ0VSX0NDM0VfTXNrICAgICAgICAgICAgICAgICAgLyohPENhcHR1cmUvQ29tcGFyZSAzIG91dHB1dCBlbmFibGUgKi8NCiNkZWZpbmUgVElNX0NDRVJfQ0MzUF9Qb3MgICAgICAgICAgICAgICAgICAgKDlVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVElNX0NDRVJfQ0MzUF9Nc2sgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVElNX0NDRVJfQ0MzUF9Qb3MpICAgICAgICAvKiE8IDB4MDAwMDAyMDAgKi8NCiNkZWZpbmUgVElNX0NDRVJfQ0MzUCAgICAgICAgICAgICAgICAgICAgICAgVElNX0NDRVJfQ0MzUF9Nc2sgICAgICAgICAgICAgICAgICAvKiE8Q2FwdHVyZS9Db21wYXJlIDMgb3V0cHV0IFBvbGFyaXR5ICovDQojZGVmaW5lIFRJTV9DQ0VSX0NDM05QX1BvcyAgICAgICAgICAgICAgICAgICgxMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFRJTV9DQ0VSX0NDM05QX01zayAgICAgICAgICAgICAgICAgICgweDFVIDw8IFRJTV9DQ0VSX0NDM05QX1BvcykgICAgICAgLyohPCAweDAwMDAwODAwICovDQojZGVmaW5lIFRJTV9DQ0VSX0NDM05QICAgICAgICAgICAgICAgICAgICAgIFRJTV9DQ0VSX0NDM05QX01zayAgICAgICAgICAgICAgICAgLyohPENhcHR1cmUvQ29tcGFyZSAzIENvbXBsZW1lbnRhcnkgb3V0cHV0IFBvbGFyaXR5ICovDQojZGVmaW5lIFRJTV9DQ0VSX0NDNEVfUG9zICAgICAgICAgICAgICAgICAgICgxMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFRJTV9DQ0VSX0NDNEVfTXNrICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFRJTV9DQ0VSX0NDNEVfUG9zKSAgICAgICAgLyohPCAweDAwMDAxMDAwICovDQojZGVmaW5lIFRJTV9DQ0VSX0NDNEUgICAgICAgICAgICAgICAgICAgICAgIFRJTV9DQ0VSX0NDNEVfTXNrICAgICAgICAgICAgICAgICAgLyohPENhcHR1cmUvQ29tcGFyZSA0IG91dHB1dCBlbmFibGUgKi8NCiNkZWZpbmUgVElNX0NDRVJfQ0M0UF9Qb3MgICAgICAgICAgICAgICAgICAgKDEzVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVElNX0NDRVJfQ0M0UF9Nc2sgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVElNX0NDRVJfQ0M0UF9Qb3MpICAgICAgICAvKiE8IDB4MDAwMDIwMDAgKi8NCiNkZWZpbmUgVElNX0NDRVJfQ0M0UCAgICAgICAgICAgICAgICAgICAgICAgVElNX0NDRVJfQ0M0UF9Nc2sgICAgICAgICAgICAgICAgICAvKiE8Q2FwdHVyZS9Db21wYXJlIDQgb3V0cHV0IFBvbGFyaXR5ICovDQojZGVmaW5lIFRJTV9DQ0VSX0NDNE5QX1BvcyAgICAgICAgICAgICAgICAgICgxNVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFRJTV9DQ0VSX0NDNE5QX01zayAgICAgICAgICAgICAgICAgICgweDFVIDw8IFRJTV9DQ0VSX0NDNE5QX1BvcykgICAgICAgLyohPCAweDAwMDA4MDAwICovDQojZGVmaW5lIFRJTV9DQ0VSX0NDNE5QICAgICAgICAgICAgICAgICAgICAgIFRJTV9DQ0VSX0NDNE5QX01zayAgICAgICAgICAgICAgICAgLyohPENhcHR1cmUvQ29tcGFyZSA0IENvbXBsZW1lbnRhcnkgb3V0cHV0IFBvbGFyaXR5ICovDQoNCi8qKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgVElNX0NOVCByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIFRJTV9DTlRfQ05UX1BvcyAgICAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFRJTV9DTlRfQ05UX01zayAgICAgICAgICAgICAgICAgICAgICgweEZGRkZGRkZGVSA8PCBUSU1fQ05UX0NOVF9Qb3MpICAgLyohPCAweEZGRkZGRkZGICovDQojZGVmaW5lIFRJTV9DTlRfQ05UICAgICAgICAgICAgICAgICAgICAgICAgIFRJTV9DTlRfQ05UX01zayAgICAgICAgICAgICAgICAgICAgLyohPENvdW50ZXIgVmFsdWUgKi8NCg0KLyoqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBUSU1fUFNDIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgVElNX1BTQ19QU0NfUG9zICAgICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVElNX1BTQ19QU0NfTXNrICAgICAgICAgICAgICAgICAgICAgKDB4RkZGRlUgPDwgVElNX1BTQ19QU0NfUG9zKSAgICAgICAvKiE8IDB4MDAwMEZGRkYgKi8NCiNkZWZpbmUgVElNX1BTQ19QU0MgICAgICAgICAgICAgICAgICAgICAgICAgVElNX1BTQ19QU0NfTXNrICAgICAgICAgICAgICAgICAgICAvKiE8UHJlc2NhbGVyIFZhbHVlICovDQoNCi8qKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgVElNX0FSUiByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIFRJTV9BUlJfQVJSX1BvcyAgICAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFRJTV9BUlJfQVJSX01zayAgICAgICAgICAgICAgICAgICAgICgweEZGRkZGRkZGVSA8PCBUSU1fQVJSX0FSUl9Qb3MpICAgLyohPCAweEZGRkZGRkZGICovDQojZGVmaW5lIFRJTV9BUlJfQVJSICAgICAgICAgICAgICAgICAgICAgICAgIFRJTV9BUlJfQVJSX01zayAgICAgICAgICAgICAgICAgICAgLyohPGFjdHVhbCBhdXRvLXJlbG9hZCBWYWx1ZSAqLw0KICAgICAgICAgICANCi8qKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgVElNX0NDUjEgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIFRJTV9DQ1IxX0NDUjFfUG9zICAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFRJTV9DQ1IxX0NDUjFfTXNrICAgICAgICAgICAgICAgICAgICgweEZGRkZVIDw8IFRJTV9DQ1IxX0NDUjFfUG9zKSAgICAgLyohPCAweDAwMDBGRkZGICovDQojZGVmaW5lIFRJTV9DQ1IxX0NDUjEgICAgICAgICAgICAgICAgICAgICAgIFRJTV9DQ1IxX0NDUjFfTXNrICAgICAgICAgICAgICAgICAgLyohPENhcHR1cmUvQ29tcGFyZSAxIFZhbHVlICovDQoNCi8qKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgVElNX0NDUjIgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIFRJTV9DQ1IyX0NDUjJfUG9zICAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFRJTV9DQ1IyX0NDUjJfTXNrICAgICAgICAgICAgICAgICAgICgweEZGRkZVIDw8IFRJTV9DQ1IyX0NDUjJfUG9zKSAgICAgLyohPCAweDAwMDBGRkZGICovDQojZGVmaW5lIFRJTV9DQ1IyX0NDUjIgICAgICAgICAgICAgICAgICAgICAgIFRJTV9DQ1IyX0NDUjJfTXNrICAgICAgICAgICAgICAgICAgLyohPENhcHR1cmUvQ29tcGFyZSAyIFZhbHVlICovDQoNCi8qKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgVElNX0NDUjMgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIFRJTV9DQ1IzX0NDUjNfUG9zICAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFRJTV9DQ1IzX0NDUjNfTXNrICAgICAgICAgICAgICAgICAgICgweEZGRkZVIDw8IFRJTV9DQ1IzX0NDUjNfUG9zKSAgICAgLyohPCAweDAwMDBGRkZGICovDQojZGVmaW5lIFRJTV9DQ1IzX0NDUjMgICAgICAgICAgICAgICAgICAgICAgIFRJTV9DQ1IzX0NDUjNfTXNrICAgICAgICAgICAgICAgICAgLyohPENhcHR1cmUvQ29tcGFyZSAzIFZhbHVlICovDQoNCi8qKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgVElNX0NDUjQgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIFRJTV9DQ1I0X0NDUjRfUG9zICAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFRJTV9DQ1I0X0NDUjRfTXNrICAgICAgICAgICAgICAgICAgICgweEZGRkZVIDw8IFRJTV9DQ1I0X0NDUjRfUG9zKSAgICAgLyohPCAweDAwMDBGRkZGICovDQojZGVmaW5lIFRJTV9DQ1I0X0NDUjQgICAgICAgICAgICAgICAgICAgICAgIFRJTV9DQ1I0X0NDUjRfTXNrICAgICAgICAgICAgICAgICAgLyohPENhcHR1cmUvQ29tcGFyZSA0IFZhbHVlICovDQoNCi8qKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgVElNX0RDUiByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIFRJTV9EQ1JfREJBX1BvcyAgICAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFRJTV9EQ1JfREJBX01zayAgICAgICAgICAgICAgICAgICAgICgweDFGVSA8PCBUSU1fRENSX0RCQV9Qb3MpICAgICAgICAgLyohPCAweDAwMDAwMDFGICovDQojZGVmaW5lIFRJTV9EQ1JfREJBICAgICAgICAgICAgICAgICAgICAgICAgIFRJTV9EQ1JfREJBX01zayAgICAgICAgICAgICAgICAgICAgLyohPERCQVs0OjBdIGJpdHMgKERNQSBCYXNlIEFkZHJlc3MpICovDQojZGVmaW5lIFRJTV9EQ1JfREJBXzAgICAgICAgICAgICAgICAgICAgICAgICgweDAxVSA8PCBUSU1fRENSX0RCQV9Qb3MpICAgICAgICAgLyohPCAweDAwMDAwMDAxICovDQojZGVmaW5lIFRJTV9EQ1JfREJBXzEgICAgICAgICAgICAgICAgICAgICAgICgweDAyVSA8PCBUSU1fRENSX0RCQV9Qb3MpICAgICAgICAgLyohPCAweDAwMDAwMDAyICovDQojZGVmaW5lIFRJTV9EQ1JfREJBXzIgICAgICAgICAgICAgICAgICAgICAgICgweDA0VSA8PCBUSU1fRENSX0RCQV9Qb3MpICAgICAgICAgLyohPCAweDAwMDAwMDA0ICovDQojZGVmaW5lIFRJTV9EQ1JfREJBXzMgICAgICAgICAgICAgICAgICAgICAgICgweDA4VSA8PCBUSU1fRENSX0RCQV9Qb3MpICAgICAgICAgLyohPCAweDAwMDAwMDA4ICovDQojZGVmaW5lIFRJTV9EQ1JfREJBXzQgICAgICAgICAgICAgICAgICAgICAgICgweDEwVSA8PCBUSU1fRENSX0RCQV9Qb3MpICAgICAgICAgLyohPCAweDAwMDAwMDEwICovDQoNCiNkZWZpbmUgVElNX0RDUl9EQkxfUG9zICAgICAgICAgICAgICAgICAgICAgKDhVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVElNX0RDUl9EQkxfTXNrICAgICAgICAgICAgICAgICAgICAgKDB4MUZVIDw8IFRJTV9EQ1JfREJMX1BvcykgICAgICAgICAvKiE8IDB4MDAwMDFGMDAgKi8NCiNkZWZpbmUgVElNX0RDUl9EQkwgICAgICAgICAgICAgICAgICAgICAgICAgVElNX0RDUl9EQkxfTXNrICAgICAgICAgICAgICAgICAgICAvKiE8REJMWzQ6MF0gYml0cyAoRE1BIEJ1cnN0IExlbmd0aCkgKi8NCiNkZWZpbmUgVElNX0RDUl9EQkxfMCAgICAgICAgICAgICAgICAgICAgICAgKDB4MDFVIDw8IFRJTV9EQ1JfREJMX1BvcykgICAgICAgICAvKiE8IDB4MDAwMDAxMDAgKi8NCiNkZWZpbmUgVElNX0RDUl9EQkxfMSAgICAgICAgICAgICAgICAgICAgICAgKDB4MDJVIDw8IFRJTV9EQ1JfREJMX1BvcykgICAgICAgICAvKiE8IDB4MDAwMDAyMDAgKi8NCiNkZWZpbmUgVElNX0RDUl9EQkxfMiAgICAgICAgICAgICAgICAgICAgICAgKDB4MDRVIDw8IFRJTV9EQ1JfREJMX1BvcykgICAgICAgICAvKiE8IDB4MDAwMDA0MDAgKi8NCiNkZWZpbmUgVElNX0RDUl9EQkxfMyAgICAgICAgICAgICAgICAgICAgICAgKDB4MDhVIDw8IFRJTV9EQ1JfREJMX1BvcykgICAgICAgICAvKiE8IDB4MDAwMDA4MDAgKi8NCiNkZWZpbmUgVElNX0RDUl9EQkxfNCAgICAgICAgICAgICAgICAgICAgICAgKDB4MTBVIDw8IFRJTV9EQ1JfREJMX1BvcykgICAgICAgICAvKiE8IDB4MDAwMDEwMDAgKi8NCg0KLyoqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBUSU1fRE1BUiByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgVElNX0RNQVJfRE1BQl9Qb3MgICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVElNX0RNQVJfRE1BQl9Nc2sgICAgICAgICAgICAgICAgICAgKDB4RkZGRlUgPDwgVElNX0RNQVJfRE1BQl9Qb3MpICAgICAvKiE8IDB4MDAwMEZGRkYgKi8NCiNkZWZpbmUgVElNX0RNQVJfRE1BQiAgICAgICAgICAgICAgICAgICAgICAgVElNX0RNQVJfRE1BQl9Nc2sgICAgICAgICAgICAgICAgICAvKiE8RE1BIHJlZ2lzdGVyIGZvciBidXJzdCBhY2Nlc3NlcyAqLw0KDQovKioqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFRJTV9PUiByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBUSU1fT1JfVEkxUk1QX1BvcyAgICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBUSU1fT1JfVEkxUk1QX01zayAgICAgICAgICAgICAgICAgICAoMHgzVSA8PCBUSU1fT1JfVEkxUk1QX1BvcykgICAgICAgIC8qITwgMHgwMDAwMDAwMyAqLw0KI2RlZmluZSBUSU1fT1JfVEkxUk1QICAgICAgICAgICAgICAgICAgICAgICBUSU1fT1JfVEkxUk1QX01zayAgICAgICAgICAgICAgICAgIC8qITxUSTFfUk1QWzE6MF0gYml0cyAoVElNIElucHV0IDEgcmVtYXApICovDQojZGVmaW5lIFRJTV9PUl9USTFSTVBfMCAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFRJTV9PUl9USTFSTVBfUG9zKSAgICAgICAgLyohPCAweDAwMDAwMDAxICovDQojZGVmaW5lIFRJTV9PUl9USTFSTVBfMSAgICAgICAgICAgICAgICAgICAgICgweDJVIDw8IFRJTV9PUl9USTFSTVBfUG9zKSAgICAgICAgLyohPCAweDAwMDAwMDAyICovDQoNCiNkZWZpbmUgVElNX09SX0VUUl9STVBfUG9zICAgICAgICAgICAgICAgICAgKDJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVElNX09SX0VUUl9STVBfTXNrICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVElNX09SX0VUUl9STVBfUG9zKSAgICAgICAvKiE8IDB4MDAwMDAwMDQgKi8NCiNkZWZpbmUgVElNX09SX0VUUl9STVAgICAgICAgICAgICAgICAgICAgICAgVElNX09SX0VUUl9STVBfTXNrICAgICAgICAgICAgICAgICAvKiE8RVRSX1JNUCBiaXQgKFRJTTEwLzExIEVUUiByZW1hcCkqLw0KI2RlZmluZSBUSU1fT1JfVEkxX1JNUF9SSV9Qb3MgICAgICAgICAgICAgICAoM1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBUSU1fT1JfVEkxX1JNUF9SSV9Nc2sgICAgICAgICAgICAgICAoMHgxVSA8PCBUSU1fT1JfVEkxX1JNUF9SSV9Qb3MpICAgIC8qITwgMHgwMDAwMDAwOCAqLw0KI2RlZmluZSBUSU1fT1JfVEkxX1JNUF9SSSAgICAgICAgICAgICAgICAgICBUSU1fT1JfVEkxX1JNUF9SSV9Nc2sgICAgICAgICAgICAgIC8qITxUSTFfUk1QX1JJIGJpdCAoVElNMTAvMTEgSW5wdXQgMSByZW1hcCBmb3IgUm91dGluZyBpbnRlcmZhY2UpICovDQoNCi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovDQojZGVmaW5lIFRJTTlfT1JfSVRSMV9STVBfUG9zICAgICAgICAgICAgICAgICgyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFRJTTlfT1JfSVRSMV9STVBfTXNrICAgICAgICAgICAgICAgICgweDFVIDw8IFRJTTlfT1JfSVRSMV9STVBfUG9zKSAgICAgLyohPCAweDAwMDAwMDA0ICovDQojZGVmaW5lIFRJTTlfT1JfSVRSMV9STVAgICAgICAgICAgICAgICAgICAgIFRJTTlfT1JfSVRSMV9STVBfTXNrICAgICAgICAgICAgICAgLyohPElUUjFfUk1QIGJpdCAoVElNOSBJbnRlcm5hbCB0cmlnZ2VyIDEgcmVtYXApICovDQoNCi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovDQojZGVmaW5lIFRJTTJfT1JfSVRSMV9STVBfUG9zICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFRJTTJfT1JfSVRSMV9STVBfTXNrICAgICAgICAgICAgICAgICgweDFVIDw8IFRJTTJfT1JfSVRSMV9STVBfUG9zKSAgICAgLyohPCAweDAwMDAwMDAxICovDQojZGVmaW5lIFRJTTJfT1JfSVRSMV9STVAgICAgICAgICAgICAgICAgICAgIFRJTTJfT1JfSVRSMV9STVBfTXNrICAgICAgICAgICAgICAgLyohPElUUjFfUk1QIGJpdCAoVElNMiBJbnRlcm5hbCB0cmlnZ2VyIDEgcmVtYXApICovDQoNCi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovDQojZGVmaW5lIFRJTTNfT1JfSVRSMl9STVBfUG9zICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFRJTTNfT1JfSVRSMl9STVBfTXNrICAgICAgICAgICAgICAgICgweDFVIDw8IFRJTTNfT1JfSVRSMl9STVBfUG9zKSAgICAgLyohPCAweDAwMDAwMDAxICovDQojZGVmaW5lIFRJTTNfT1JfSVRSMl9STVAgICAgICAgICAgICAgICAgICAgIFRJTTNfT1JfSVRSMl9STVBfTXNrICAgICAgICAgICAgICAgLyohPElUUjJfUk1QIGJpdCAoVElNMyBJbnRlcm5hbCB0cmlnZ2VyIDIgcmVtYXApICovDQoNCi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovDQoNCi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovDQovKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLw0KLyogICAgICBVbml2ZXJzYWwgU3luY2hyb25vdXMgQXN5bmNocm9ub3VzIFJlY2VpdmVyIFRyYW5zbWl0dGVyIChVU0FSVCkgICAgICAgKi8NCi8qICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovDQovKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLw0KDQovKioqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFVTQVJUX1NSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBVU0FSVF9TUl9QRV9Qb3MgICAgICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0FSVF9TUl9QRV9Nc2sgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBVU0FSVF9TUl9QRV9Qb3MpICAgICAgICAgIC8qITwgMHgwMDAwMDAwMSAqLw0KI2RlZmluZSBVU0FSVF9TUl9QRSAgICAgICAgICAgICAgICAgICAgICAgICBVU0FSVF9TUl9QRV9Nc2sgICAgICAgICAgICAgICAgICAgIC8qITwgUGFyaXR5IEVycm9yICovDQojZGVmaW5lIFVTQVJUX1NSX0ZFX1BvcyAgICAgICAgICAgICAgICAgICAgICgxVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQVJUX1NSX0ZFX01zayAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFVTQVJUX1NSX0ZFX1BvcykgICAgICAgICAgLyohPCAweDAwMDAwMDAyICovDQojZGVmaW5lIFVTQVJUX1NSX0ZFICAgICAgICAgICAgICAgICAgICAgICAgIFVTQVJUX1NSX0ZFX01zayAgICAgICAgICAgICAgICAgICAgLyohPCBGcmFtaW5nIEVycm9yICovDQojZGVmaW5lIFVTQVJUX1NSX05FX1BvcyAgICAgICAgICAgICAgICAgICAgICgyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQVJUX1NSX05FX01zayAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFVTQVJUX1NSX05FX1BvcykgICAgICAgICAgLyohPCAweDAwMDAwMDA0ICovDQojZGVmaW5lIFVTQVJUX1NSX05FICAgICAgICAgICAgICAgICAgICAgICAgIFVTQVJUX1NSX05FX01zayAgICAgICAgICAgICAgICAgICAgLyohPCBOb2lzZSBFcnJvciBGbGFnICovDQojZGVmaW5lIFVTQVJUX1NSX09SRV9Qb3MgICAgICAgICAgICAgICAgICAgICgzVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQVJUX1NSX09SRV9Nc2sgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFVTQVJUX1NSX09SRV9Qb3MpICAgICAgICAgLyohPCAweDAwMDAwMDA4ICovDQojZGVmaW5lIFVTQVJUX1NSX09SRSAgICAgICAgICAgICAgICAgICAgICAgIFVTQVJUX1NSX09SRV9Nc2sgICAgICAgICAgICAgICAgICAgLyohPCBPdmVyUnVuIEVycm9yICovDQojZGVmaW5lIFVTQVJUX1NSX0lETEVfUG9zICAgICAgICAgICAgICAgICAgICg0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQVJUX1NSX0lETEVfTXNrICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFVTQVJUX1NSX0lETEVfUG9zKSAgICAgICAgLyohPCAweDAwMDAwMDEwICovDQojZGVmaW5lIFVTQVJUX1NSX0lETEUgICAgICAgICAgICAgICAgICAgICAgIFVTQVJUX1NSX0lETEVfTXNrICAgICAgICAgICAgICAgICAgLyohPCBJRExFIGxpbmUgZGV0ZWN0ZWQgKi8NCiNkZWZpbmUgVVNBUlRfU1JfUlhORV9Qb3MgICAgICAgICAgICAgICAgICAgKDVVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNBUlRfU1JfUlhORV9Nc2sgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVVNBUlRfU1JfUlhORV9Qb3MpICAgICAgICAvKiE8IDB4MDAwMDAwMjAgKi8NCiNkZWZpbmUgVVNBUlRfU1JfUlhORSAgICAgICAgICAgICAgICAgICAgICAgVVNBUlRfU1JfUlhORV9Nc2sgICAgICAgICAgICAgICAgICAvKiE8IFJlYWQgRGF0YSBSZWdpc3RlciBOb3QgRW1wdHkgKi8NCiNkZWZpbmUgVVNBUlRfU1JfVENfUG9zICAgICAgICAgICAgICAgICAgICAgKDZVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNBUlRfU1JfVENfTXNrICAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVVNBUlRfU1JfVENfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDAwNDAgKi8NCiNkZWZpbmUgVVNBUlRfU1JfVEMgICAgICAgICAgICAgICAgICAgICAgICAgVVNBUlRfU1JfVENfTXNrICAgICAgICAgICAgICAgICAgICAvKiE8IFRyYW5zbWlzc2lvbiBDb21wbGV0ZSAqLw0KI2RlZmluZSBVU0FSVF9TUl9UWEVfUG9zICAgICAgICAgICAgICAgICAgICAoN1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0FSVF9TUl9UWEVfTXNrICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBVU0FSVF9TUl9UWEVfUG9zKSAgICAgICAgIC8qITwgMHgwMDAwMDA4MCAqLw0KI2RlZmluZSBVU0FSVF9TUl9UWEUgICAgICAgICAgICAgICAgICAgICAgICBVU0FSVF9TUl9UWEVfTXNrICAgICAgICAgICAgICAgICAgIC8qITwgVHJhbnNtaXQgRGF0YSBSZWdpc3RlciBFbXB0eSAqLw0KI2RlZmluZSBVU0FSVF9TUl9MQkRfUG9zICAgICAgICAgICAgICAgICAgICAoOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0FSVF9TUl9MQkRfTXNrICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBVU0FSVF9TUl9MQkRfUG9zKSAgICAgICAgIC8qITwgMHgwMDAwMDEwMCAqLw0KI2RlZmluZSBVU0FSVF9TUl9MQkQgICAgICAgICAgICAgICAgICAgICAgICBVU0FSVF9TUl9MQkRfTXNrICAgICAgICAgICAgICAgICAgIC8qITwgTElOIEJyZWFrIERldGVjdGlvbiBGbGFnICovDQojZGVmaW5lIFVTQVJUX1NSX0NUU19Qb3MgICAgICAgICAgICAgICAgICAgICg5VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQVJUX1NSX0NUU19Nc2sgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFVTQVJUX1NSX0NUU19Qb3MpICAgICAgICAgLyohPCAweDAwMDAwMjAwICovDQojZGVmaW5lIFVTQVJUX1NSX0NUUyAgICAgICAgICAgICAgICAgICAgICAgIFVTQVJUX1NSX0NUU19Nc2sgICAgICAgICAgICAgICAgICAgLyohPCBDVFMgRmxhZyAqLw0KDQovKioqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFVTQVJUX0RSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBVU0FSVF9EUl9EUl9Qb3MgICAgICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0FSVF9EUl9EUl9Nc2sgICAgICAgICAgICAgICAgICAgICAoMHgxRkZVIDw8IFVTQVJUX0RSX0RSX1BvcykgICAgICAgIC8qITwgMHgwMDAwMDFGRiAqLw0KI2RlZmluZSBVU0FSVF9EUl9EUiAgICAgICAgICAgICAgICAgICAgICAgICBVU0FSVF9EUl9EUl9Nc2sgICAgICAgICAgICAgICAgICAgIC8qITwgRGF0YSB2YWx1ZSAqLw0KDQovKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgVVNBUlRfQlJSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBVU0FSVF9CUlJfRElWX0ZSQUNUSU9OX1BvcyAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0FSVF9CUlJfRElWX0ZSQUNUSU9OX01zayAgICAgICAgICAoMHhGVSA8PCBVU0FSVF9CUlJfRElWX0ZSQUNUSU9OX1BvcykgLyohPCAweDAwMDAwMDBGICovDQojZGVmaW5lIFVTQVJUX0JSUl9ESVZfRlJBQ1RJT04gICAgICAgICAgICAgIFVTQVJUX0JSUl9ESVZfRlJBQ1RJT05fTXNrICAgICAgICAgLyohPCBGcmFjdGlvbiBvZiBVU0FSVERJViAqLw0KI2RlZmluZSBVU0FSVF9CUlJfRElWX01BTlRJU1NBX1BvcyAgICAgICAgICAoNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0FSVF9CUlJfRElWX01BTlRJU1NBX01zayAgICAgICAgICAoMHhGRkZVIDw8IFVTQVJUX0JSUl9ESVZfTUFOVElTU0FfUG9zKSAvKiE8IDB4MDAwMEZGRjAgKi8NCiNkZWZpbmUgVVNBUlRfQlJSX0RJVl9NQU5USVNTQSAgICAgICAgICAgICAgVVNBUlRfQlJSX0RJVl9NQU5USVNTQV9Nc2sgICAgICAgICAvKiE8IE1hbnRpc3NhIG9mIFVTQVJURElWICovDQoNCi8qKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBVU0FSVF9DUjEgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIFVTQVJUX0NSMV9TQktfUG9zICAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQVJUX0NSMV9TQktfTXNrICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFVTQVJUX0NSMV9TQktfUG9zKSAgICAgICAgLyohPCAweDAwMDAwMDAxICovDQojZGVmaW5lIFVTQVJUX0NSMV9TQksgICAgICAgICAgICAgICAgICAgICAgIFVTQVJUX0NSMV9TQktfTXNrICAgICAgICAgICAgICAgICAgLyohPCBTZW5kIEJyZWFrICovDQojZGVmaW5lIFVTQVJUX0NSMV9SV1VfUG9zICAgICAgICAgICAgICAgICAgICgxVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQVJUX0NSMV9SV1VfTXNrICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFVTQVJUX0NSMV9SV1VfUG9zKSAgICAgICAgLyohPCAweDAwMDAwMDAyICovDQojZGVmaW5lIFVTQVJUX0NSMV9SV1UgICAgICAgICAgICAgICAgICAgICAgIFVTQVJUX0NSMV9SV1VfTXNrICAgICAgICAgICAgICAgICAgLyohPCBSZWNlaXZlciB3YWtldXAgKi8NCiNkZWZpbmUgVVNBUlRfQ1IxX1JFX1BvcyAgICAgICAgICAgICAgICAgICAgKDJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNBUlRfQ1IxX1JFX01zayAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVVNBUlRfQ1IxX1JFX1BvcykgICAgICAgICAvKiE8IDB4MDAwMDAwMDQgKi8NCiNkZWZpbmUgVVNBUlRfQ1IxX1JFICAgICAgICAgICAgICAgICAgICAgICAgVVNBUlRfQ1IxX1JFX01zayAgICAgICAgICAgICAgICAgICAvKiE8IFJlY2VpdmVyIEVuYWJsZSAqLw0KI2RlZmluZSBVU0FSVF9DUjFfVEVfUG9zICAgICAgICAgICAgICAgICAgICAoM1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0FSVF9DUjFfVEVfTXNrICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBVU0FSVF9DUjFfVEVfUG9zKSAgICAgICAgIC8qITwgMHgwMDAwMDAwOCAqLw0KI2RlZmluZSBVU0FSVF9DUjFfVEUgICAgICAgICAgICAgICAgICAgICAgICBVU0FSVF9DUjFfVEVfTXNrICAgICAgICAgICAgICAgICAgIC8qITwgVHJhbnNtaXR0ZXIgRW5hYmxlICovDQojZGVmaW5lIFVTQVJUX0NSMV9JRExFSUVfUG9zICAgICAgICAgICAgICAgICg0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQVJUX0NSMV9JRExFSUVfTXNrICAgICAgICAgICAgICAgICgweDFVIDw8IFVTQVJUX0NSMV9JRExFSUVfUG9zKSAgICAgLyohPCAweDAwMDAwMDEwICovDQojZGVmaW5lIFVTQVJUX0NSMV9JRExFSUUgICAgICAgICAgICAgICAgICAgIFVTQVJUX0NSMV9JRExFSUVfTXNrICAgICAgICAgICAgICAgLyohPCBJRExFIEludGVycnVwdCBFbmFibGUgKi8NCiNkZWZpbmUgVVNBUlRfQ1IxX1JYTkVJRV9Qb3MgICAgICAgICAgICAgICAgKDVVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNBUlRfQ1IxX1JYTkVJRV9Nc2sgICAgICAgICAgICAgICAgKDB4MVUgPDwgVVNBUlRfQ1IxX1JYTkVJRV9Qb3MpICAgICAvKiE8IDB4MDAwMDAwMjAgKi8NCiNkZWZpbmUgVVNBUlRfQ1IxX1JYTkVJRSAgICAgICAgICAgICAgICAgICAgVVNBUlRfQ1IxX1JYTkVJRV9Nc2sgICAgICAgICAgICAgICAvKiE8IFJYTkUgSW50ZXJydXB0IEVuYWJsZSAqLw0KI2RlZmluZSBVU0FSVF9DUjFfVENJRV9Qb3MgICAgICAgICAgICAgICAgICAoNlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0FSVF9DUjFfVENJRV9Nc2sgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBVU0FSVF9DUjFfVENJRV9Qb3MpICAgICAgIC8qITwgMHgwMDAwMDA0MCAqLw0KI2RlZmluZSBVU0FSVF9DUjFfVENJRSAgICAgICAgICAgICAgICAgICAgICBVU0FSVF9DUjFfVENJRV9Nc2sgICAgICAgICAgICAgICAgIC8qITwgVHJhbnNtaXNzaW9uIENvbXBsZXRlIEludGVycnVwdCBFbmFibGUgKi8NCiNkZWZpbmUgVVNBUlRfQ1IxX1RYRUlFX1BvcyAgICAgICAgICAgICAgICAgKDdVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNBUlRfQ1IxX1RYRUlFX01zayAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVVNBUlRfQ1IxX1RYRUlFX1BvcykgICAgICAvKiE8IDB4MDAwMDAwODAgKi8NCiNkZWZpbmUgVVNBUlRfQ1IxX1RYRUlFICAgICAgICAgICAgICAgICAgICAgVVNBUlRfQ1IxX1RYRUlFX01zayAgICAgICAgICAgICAgICAvKiE8IFBFIEludGVycnVwdCBFbmFibGUgKi8NCiNkZWZpbmUgVVNBUlRfQ1IxX1BFSUVfUG9zICAgICAgICAgICAgICAgICAgKDhVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNBUlRfQ1IxX1BFSUVfTXNrICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVVNBUlRfQ1IxX1BFSUVfUG9zKSAgICAgICAvKiE8IDB4MDAwMDAxMDAgKi8NCiNkZWZpbmUgVVNBUlRfQ1IxX1BFSUUgICAgICAgICAgICAgICAgICAgICAgVVNBUlRfQ1IxX1BFSUVfTXNrICAgICAgICAgICAgICAgICAvKiE8IFBFIEludGVycnVwdCBFbmFibGUgKi8NCiNkZWZpbmUgVVNBUlRfQ1IxX1BTX1BvcyAgICAgICAgICAgICAgICAgICAgKDlVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNBUlRfQ1IxX1BTX01zayAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVVNBUlRfQ1IxX1BTX1BvcykgICAgICAgICAvKiE8IDB4MDAwMDAyMDAgKi8NCiNkZWZpbmUgVVNBUlRfQ1IxX1BTICAgICAgICAgICAgICAgICAgICAgICAgVVNBUlRfQ1IxX1BTX01zayAgICAgICAgICAgICAgICAgICAvKiE8IFBhcml0eSBTZWxlY3Rpb24gKi8NCiNkZWZpbmUgVVNBUlRfQ1IxX1BDRV9Qb3MgICAgICAgICAgICAgICAgICAgKDEwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNBUlRfQ1IxX1BDRV9Nc2sgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVVNBUlRfQ1IxX1BDRV9Qb3MpICAgICAgICAvKiE8IDB4MDAwMDA0MDAgKi8NCiNkZWZpbmUgVVNBUlRfQ1IxX1BDRSAgICAgICAgICAgICAgICAgICAgICAgVVNBUlRfQ1IxX1BDRV9Nc2sgICAgICAgICAgICAgICAgICAvKiE8IFBhcml0eSBDb250cm9sIEVuYWJsZSAqLw0KI2RlZmluZSBVU0FSVF9DUjFfV0FLRV9Qb3MgICAgICAgICAgICAgICAgICAoMTFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0FSVF9DUjFfV0FLRV9Nc2sgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBVU0FSVF9DUjFfV0FLRV9Qb3MpICAgICAgIC8qITwgMHgwMDAwMDgwMCAqLw0KI2RlZmluZSBVU0FSVF9DUjFfV0FLRSAgICAgICAgICAgICAgICAgICAgICBVU0FSVF9DUjFfV0FLRV9Nc2sgICAgICAgICAgICAgICAgIC8qITwgV2FrZXVwIG1ldGhvZCAqLw0KI2RlZmluZSBVU0FSVF9DUjFfTV9Qb3MgICAgICAgICAgICAgICAgICAgICAoMTJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0FSVF9DUjFfTV9Nc2sgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBVU0FSVF9DUjFfTV9Qb3MpICAgICAgICAgIC8qITwgMHgwMDAwMTAwMCAqLw0KI2RlZmluZSBVU0FSVF9DUjFfTSAgICAgICAgICAgICAgICAgICAgICAgICBVU0FSVF9DUjFfTV9Nc2sgICAgICAgICAgICAgICAgICAgIC8qITwgV29yZCBsZW5ndGggKi8NCiNkZWZpbmUgVVNBUlRfQ1IxX1VFX1BvcyAgICAgICAgICAgICAgICAgICAgKDEzVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNBUlRfQ1IxX1VFX01zayAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVVNBUlRfQ1IxX1VFX1BvcykgICAgICAgICAvKiE8IDB4MDAwMDIwMDAgKi8NCiNkZWZpbmUgVVNBUlRfQ1IxX1VFICAgICAgICAgICAgICAgICAgICAgICAgVVNBUlRfQ1IxX1VFX01zayAgICAgICAgICAgICAgICAgICAvKiE8IFVTQVJUIEVuYWJsZSAqLw0KI2RlZmluZSBVU0FSVF9DUjFfT1ZFUjhfUG9zICAgICAgICAgICAgICAgICAoMTVVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0FSVF9DUjFfT1ZFUjhfTXNrICAgICAgICAgICAgICAgICAoMHgxVSA8PCBVU0FSVF9DUjFfT1ZFUjhfUG9zKSAgICAgIC8qITwgMHgwMDAwODAwMCAqLw0KI2RlZmluZSBVU0FSVF9DUjFfT1ZFUjggICAgICAgICAgICAgICAgICAgICBVU0FSVF9DUjFfT1ZFUjhfTXNrICAgICAgICAgICAgICAgIC8qITwgT3ZlcnNhbXBsaW5nIGJ5IDgtYml0IG1vZGUgKi8NCg0KLyoqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFVTQVJUX0NSMiByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgVVNBUlRfQ1IyX0FERF9Qb3MgICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNBUlRfQ1IyX0FERF9Nc2sgICAgICAgICAgICAgICAgICAgKDB4RlUgPDwgVVNBUlRfQ1IyX0FERF9Qb3MpICAgICAgICAvKiE8IDB4MDAwMDAwMEYgKi8NCiNkZWZpbmUgVVNBUlRfQ1IyX0FERCAgICAgICAgICAgICAgICAgICAgICAgVVNBUlRfQ1IyX0FERF9Nc2sgICAgICAgICAgICAgICAgICAvKiE8IEFkZHJlc3Mgb2YgdGhlIFVTQVJUIG5vZGUgKi8NCiNkZWZpbmUgVVNBUlRfQ1IyX0xCRExfUG9zICAgICAgICAgICAgICAgICAgKDVVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNBUlRfQ1IyX0xCRExfTXNrICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVVNBUlRfQ1IyX0xCRExfUG9zKSAgICAgICAvKiE8IDB4MDAwMDAwMjAgKi8NCiNkZWZpbmUgVVNBUlRfQ1IyX0xCREwgICAgICAgICAgICAgICAgICAgICAgVVNBUlRfQ1IyX0xCRExfTXNrICAgICAgICAgICAgICAgICAvKiE8IExJTiBCcmVhayBEZXRlY3Rpb24gTGVuZ3RoICovDQojZGVmaW5lIFVTQVJUX0NSMl9MQkRJRV9Qb3MgICAgICAgICAgICAgICAgICg2VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQVJUX0NSMl9MQkRJRV9Nc2sgICAgICAgICAgICAgICAgICgweDFVIDw8IFVTQVJUX0NSMl9MQkRJRV9Qb3MpICAgICAgLyohPCAweDAwMDAwMDQwICovDQojZGVmaW5lIFVTQVJUX0NSMl9MQkRJRSAgICAgICAgICAgICAgICAgICAgIFVTQVJUX0NSMl9MQkRJRV9Nc2sgICAgICAgICAgICAgICAgLyohPCBMSU4gQnJlYWsgRGV0ZWN0aW9uIEludGVycnVwdCBFbmFibGUgKi8NCiNkZWZpbmUgVVNBUlRfQ1IyX0xCQ0xfUG9zICAgICAgICAgICAgICAgICAgKDhVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNBUlRfQ1IyX0xCQ0xfTXNrICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVVNBUlRfQ1IyX0xCQ0xfUG9zKSAgICAgICAvKiE8IDB4MDAwMDAxMDAgKi8NCiNkZWZpbmUgVVNBUlRfQ1IyX0xCQ0wgICAgICAgICAgICAgICAgICAgICAgVVNBUlRfQ1IyX0xCQ0xfTXNrICAgICAgICAgICAgICAgICAvKiE8IExhc3QgQml0IENsb2NrIHB1bHNlICovDQojZGVmaW5lIFVTQVJUX0NSMl9DUEhBX1BvcyAgICAgICAgICAgICAgICAgICg5VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQVJUX0NSMl9DUEhBX01zayAgICAgICAgICAgICAgICAgICgweDFVIDw8IFVTQVJUX0NSMl9DUEhBX1BvcykgICAgICAgLyohPCAweDAwMDAwMjAwICovDQojZGVmaW5lIFVTQVJUX0NSMl9DUEhBICAgICAgICAgICAgICAgICAgICAgIFVTQVJUX0NSMl9DUEhBX01zayAgICAgICAgICAgICAgICAgLyohPCBDbG9jayBQaGFzZSAqLw0KI2RlZmluZSBVU0FSVF9DUjJfQ1BPTF9Qb3MgICAgICAgICAgICAgICAgICAoMTBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0FSVF9DUjJfQ1BPTF9Nc2sgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBVU0FSVF9DUjJfQ1BPTF9Qb3MpICAgICAgIC8qITwgMHgwMDAwMDQwMCAqLw0KI2RlZmluZSBVU0FSVF9DUjJfQ1BPTCAgICAgICAgICAgICAgICAgICAgICBVU0FSVF9DUjJfQ1BPTF9Nc2sgICAgICAgICAgICAgICAgIC8qITwgQ2xvY2sgUG9sYXJpdHkgKi8NCiNkZWZpbmUgVVNBUlRfQ1IyX0NMS0VOX1BvcyAgICAgICAgICAgICAgICAgKDExVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNBUlRfQ1IyX0NMS0VOX01zayAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVVNBUlRfQ1IyX0NMS0VOX1BvcykgICAgICAvKiE8IDB4MDAwMDA4MDAgKi8NCiNkZWZpbmUgVVNBUlRfQ1IyX0NMS0VOICAgICAgICAgICAgICAgICAgICAgVVNBUlRfQ1IyX0NMS0VOX01zayAgICAgICAgICAgICAgICAvKiE8IENsb2NrIEVuYWJsZSAqLw0KDQojZGVmaW5lIFVTQVJUX0NSMl9TVE9QX1BvcyAgICAgICAgICAgICAgICAgICgxMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQVJUX0NSMl9TVE9QX01zayAgICAgICAgICAgICAgICAgICgweDNVIDw8IFVTQVJUX0NSMl9TVE9QX1BvcykgICAgICAgLyohPCAweDAwMDAzMDAwICovDQojZGVmaW5lIFVTQVJUX0NSMl9TVE9QICAgICAgICAgICAgICAgICAgICAgIFVTQVJUX0NSMl9TVE9QX01zayAgICAgICAgICAgICAgICAgLyohPCBTVE9QWzE6MF0gYml0cyAoU1RPUCBiaXRzKSAqLw0KI2RlZmluZSBVU0FSVF9DUjJfU1RPUF8wICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBVU0FSVF9DUjJfU1RPUF9Qb3MpICAgICAgIC8qITwgMHgwMDAwMTAwMCAqLw0KI2RlZmluZSBVU0FSVF9DUjJfU1RPUF8xICAgICAgICAgICAgICAgICAgICAoMHgyVSA8PCBVU0FSVF9DUjJfU1RPUF9Qb3MpICAgICAgIC8qITwgMHgwMDAwMjAwMCAqLw0KDQojZGVmaW5lIFVTQVJUX0NSMl9MSU5FTl9Qb3MgICAgICAgICAgICAgICAgICgxNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQVJUX0NSMl9MSU5FTl9Nc2sgICAgICAgICAgICAgICAgICgweDFVIDw8IFVTQVJUX0NSMl9MSU5FTl9Qb3MpICAgICAgLyohPCAweDAwMDA0MDAwICovDQojZGVmaW5lIFVTQVJUX0NSMl9MSU5FTiAgICAgICAgICAgICAgICAgICAgIFVTQVJUX0NSMl9MSU5FTl9Nc2sgICAgICAgICAgICAgICAgLyohPCBMSU4gbW9kZSBlbmFibGUgKi8NCg0KLyoqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFVTQVJUX0NSMyByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgVVNBUlRfQ1IzX0VJRV9Qb3MgICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNBUlRfQ1IzX0VJRV9Nc2sgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVVNBUlRfQ1IzX0VJRV9Qb3MpICAgICAgICAvKiE8IDB4MDAwMDAwMDEgKi8NCiNkZWZpbmUgVVNBUlRfQ1IzX0VJRSAgICAgICAgICAgICAgICAgICAgICAgVVNBUlRfQ1IzX0VJRV9Nc2sgICAgICAgICAgICAgICAgICAvKiE8IEVycm9yIEludGVycnVwdCBFbmFibGUgKi8NCiNkZWZpbmUgVVNBUlRfQ1IzX0lSRU5fUG9zICAgICAgICAgICAgICAgICAgKDFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNBUlRfQ1IzX0lSRU5fTXNrICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVVNBUlRfQ1IzX0lSRU5fUG9zKSAgICAgICAvKiE8IDB4MDAwMDAwMDIgKi8NCiNkZWZpbmUgVVNBUlRfQ1IzX0lSRU4gICAgICAgICAgICAgICAgICAgICAgVVNBUlRfQ1IzX0lSRU5fTXNrICAgICAgICAgICAgICAgICAvKiE8IElyREEgbW9kZSBFbmFibGUgKi8NCiNkZWZpbmUgVVNBUlRfQ1IzX0lSTFBfUG9zICAgICAgICAgICAgICAgICAgKDJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNBUlRfQ1IzX0lSTFBfTXNrICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVVNBUlRfQ1IzX0lSTFBfUG9zKSAgICAgICAvKiE8IDB4MDAwMDAwMDQgKi8NCiNkZWZpbmUgVVNBUlRfQ1IzX0lSTFAgICAgICAgICAgICAgICAgICAgICAgVVNBUlRfQ1IzX0lSTFBfTXNrICAgICAgICAgICAgICAgICAvKiE8IElyREEgTG93LVBvd2VyICovDQojZGVmaW5lIFVTQVJUX0NSM19IRFNFTF9Qb3MgICAgICAgICAgICAgICAgICgzVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQVJUX0NSM19IRFNFTF9Nc2sgICAgICAgICAgICAgICAgICgweDFVIDw8IFVTQVJUX0NSM19IRFNFTF9Qb3MpICAgICAgLyohPCAweDAwMDAwMDA4ICovDQojZGVmaW5lIFVTQVJUX0NSM19IRFNFTCAgICAgICAgICAgICAgICAgICAgIFVTQVJUX0NSM19IRFNFTF9Nc2sgICAgICAgICAgICAgICAgLyohPCBIYWxmLUR1cGxleCBTZWxlY3Rpb24gKi8NCiNkZWZpbmUgVVNBUlRfQ1IzX05BQ0tfUG9zICAgICAgICAgICAgICAgICAgKDRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNBUlRfQ1IzX05BQ0tfTXNrICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVVNBUlRfQ1IzX05BQ0tfUG9zKSAgICAgICAvKiE8IDB4MDAwMDAwMTAgKi8NCiNkZWZpbmUgVVNBUlRfQ1IzX05BQ0sgICAgICAgICAgICAgICAgICAgICAgVVNBUlRfQ1IzX05BQ0tfTXNrICAgICAgICAgICAgICAgICAvKiE8IFNtYXJ0Y2FyZCBOQUNLIGVuYWJsZSAqLw0KI2RlZmluZSBVU0FSVF9DUjNfU0NFTl9Qb3MgICAgICAgICAgICAgICAgICAoNVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0FSVF9DUjNfU0NFTl9Nc2sgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBVU0FSVF9DUjNfU0NFTl9Qb3MpICAgICAgIC8qITwgMHgwMDAwMDAyMCAqLw0KI2RlZmluZSBVU0FSVF9DUjNfU0NFTiAgICAgICAgICAgICAgICAgICAgICBVU0FSVF9DUjNfU0NFTl9Nc2sgICAgICAgICAgICAgICAgIC8qITwgU21hcnRjYXJkIG1vZGUgZW5hYmxlICovDQojZGVmaW5lIFVTQVJUX0NSM19ETUFSX1BvcyAgICAgICAgICAgICAgICAgICg2VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQVJUX0NSM19ETUFSX01zayAgICAgICAgICAgICAgICAgICgweDFVIDw8IFVTQVJUX0NSM19ETUFSX1BvcykgICAgICAgLyohPCAweDAwMDAwMDQwICovDQojZGVmaW5lIFVTQVJUX0NSM19ETUFSICAgICAgICAgICAgICAgICAgICAgIFVTQVJUX0NSM19ETUFSX01zayAgICAgICAgICAgICAgICAgLyohPCBETUEgRW5hYmxlIFJlY2VpdmVyICovDQojZGVmaW5lIFVTQVJUX0NSM19ETUFUX1BvcyAgICAgICAgICAgICAgICAgICg3VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQVJUX0NSM19ETUFUX01zayAgICAgICAgICAgICAgICAgICgweDFVIDw8IFVTQVJUX0NSM19ETUFUX1BvcykgICAgICAgLyohPCAweDAwMDAwMDgwICovDQojZGVmaW5lIFVTQVJUX0NSM19ETUFUICAgICAgICAgICAgICAgICAgICAgIFVTQVJUX0NSM19ETUFUX01zayAgICAgICAgICAgICAgICAgLyohPCBETUEgRW5hYmxlIFRyYW5zbWl0dGVyICovDQojZGVmaW5lIFVTQVJUX0NSM19SVFNFX1BvcyAgICAgICAgICAgICAgICAgICg4VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQVJUX0NSM19SVFNFX01zayAgICAgICAgICAgICAgICAgICgweDFVIDw8IFVTQVJUX0NSM19SVFNFX1BvcykgICAgICAgLyohPCAweDAwMDAwMTAwICovDQojZGVmaW5lIFVTQVJUX0NSM19SVFNFICAgICAgICAgICAgICAgICAgICAgIFVTQVJUX0NSM19SVFNFX01zayAgICAgICAgICAgICAgICAgLyohPCBSVFMgRW5hYmxlICovDQojZGVmaW5lIFVTQVJUX0NSM19DVFNFX1BvcyAgICAgICAgICAgICAgICAgICg5VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQVJUX0NSM19DVFNFX01zayAgICAgICAgICAgICAgICAgICgweDFVIDw8IFVTQVJUX0NSM19DVFNFX1BvcykgICAgICAgLyohPCAweDAwMDAwMjAwICovDQojZGVmaW5lIFVTQVJUX0NSM19DVFNFICAgICAgICAgICAgICAgICAgICAgIFVTQVJUX0NSM19DVFNFX01zayAgICAgICAgICAgICAgICAgLyohPCBDVFMgRW5hYmxlICovDQojZGVmaW5lIFVTQVJUX0NSM19DVFNJRV9Qb3MgICAgICAgICAgICAgICAgICgxMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQVJUX0NSM19DVFNJRV9Nc2sgICAgICAgICAgICAgICAgICgweDFVIDw8IFVTQVJUX0NSM19DVFNJRV9Qb3MpICAgICAgLyohPCAweDAwMDAwNDAwICovDQojZGVmaW5lIFVTQVJUX0NSM19DVFNJRSAgICAgICAgICAgICAgICAgICAgIFVTQVJUX0NSM19DVFNJRV9Nc2sgICAgICAgICAgICAgICAgLyohPCBDVFMgSW50ZXJydXB0IEVuYWJsZSAqLw0KI2RlZmluZSBVU0FSVF9DUjNfT05FQklUX1BvcyAgICAgICAgICAgICAgICAoMTFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0FSVF9DUjNfT05FQklUX01zayAgICAgICAgICAgICAgICAoMHgxVSA8PCBVU0FSVF9DUjNfT05FQklUX1BvcykgICAgIC8qITwgMHgwMDAwMDgwMCAqLw0KI2RlZmluZSBVU0FSVF9DUjNfT05FQklUICAgICAgICAgICAgICAgICAgICBVU0FSVF9DUjNfT05FQklUX01zayAgICAgICAgICAgICAgIC8qITwgT25lIHNhbXBsZSBiaXQgbWV0aG9kIGVuYWJsZSAqLw0KDQovKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgVVNBUlRfR1RQUiByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBVU0FSVF9HVFBSX1BTQ19Qb3MgICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0FSVF9HVFBSX1BTQ19Nc2sgICAgICAgICAgICAgICAgICAoMHhGRlUgPDwgVVNBUlRfR1RQUl9QU0NfUG9zKSAgICAgIC8qITwgMHgwMDAwMDBGRiAqLw0KI2RlZmluZSBVU0FSVF9HVFBSX1BTQyAgICAgICAgICAgICAgICAgICAgICBVU0FSVF9HVFBSX1BTQ19Nc2sgICAgICAgICAgICAgICAgIC8qITwgUFNDWzc6MF0gYml0cyAoUHJlc2NhbGVyIHZhbHVlKSAqLw0KI2RlZmluZSBVU0FSVF9HVFBSX1BTQ18wICAgICAgICAgICAgICAgICAgICAoMHgwMVUgPDwgVVNBUlRfR1RQUl9QU0NfUG9zKSAgICAgIC8qITwgMHgwMDAwMDAwMSAqLw0KI2RlZmluZSBVU0FSVF9HVFBSX1BTQ18xICAgICAgICAgICAgICAgICAgICAoMHgwMlUgPDwgVVNBUlRfR1RQUl9QU0NfUG9zKSAgICAgIC8qITwgMHgwMDAwMDAwMiAqLw0KI2RlZmluZSBVU0FSVF9HVFBSX1BTQ18yICAgICAgICAgICAgICAgICAgICAoMHgwNFUgPDwgVVNBUlRfR1RQUl9QU0NfUG9zKSAgICAgIC8qITwgMHgwMDAwMDAwNCAqLw0KI2RlZmluZSBVU0FSVF9HVFBSX1BTQ18zICAgICAgICAgICAgICAgICAgICAoMHgwOFUgPDwgVVNBUlRfR1RQUl9QU0NfUG9zKSAgICAgIC8qITwgMHgwMDAwMDAwOCAqLw0KI2RlZmluZSBVU0FSVF9HVFBSX1BTQ180ICAgICAgICAgICAgICAgICAgICAoMHgxMFUgPDwgVVNBUlRfR1RQUl9QU0NfUG9zKSAgICAgIC8qITwgMHgwMDAwMDAxMCAqLw0KI2RlZmluZSBVU0FSVF9HVFBSX1BTQ181ICAgICAgICAgICAgICAgICAgICAoMHgyMFUgPDwgVVNBUlRfR1RQUl9QU0NfUG9zKSAgICAgIC8qITwgMHgwMDAwMDAyMCAqLw0KI2RlZmluZSBVU0FSVF9HVFBSX1BTQ182ICAgICAgICAgICAgICAgICAgICAoMHg0MFUgPDwgVVNBUlRfR1RQUl9QU0NfUG9zKSAgICAgIC8qITwgMHgwMDAwMDA0MCAqLw0KI2RlZmluZSBVU0FSVF9HVFBSX1BTQ183ICAgICAgICAgICAgICAgICAgICAoMHg4MFUgPDwgVVNBUlRfR1RQUl9QU0NfUG9zKSAgICAgIC8qITwgMHgwMDAwMDA4MCAqLw0KDQojZGVmaW5lIFVTQVJUX0dUUFJfR1RfUG9zICAgICAgICAgICAgICAgICAgICg4VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQVJUX0dUUFJfR1RfTXNrICAgICAgICAgICAgICAgICAgICgweEZGVSA8PCBVU0FSVF9HVFBSX0dUX1BvcykgICAgICAgLyohPCAweDAwMDBGRjAwICovDQojZGVmaW5lIFVTQVJUX0dUUFJfR1QgICAgICAgICAgICAgICAgICAgICAgIFVTQVJUX0dUUFJfR1RfTXNrICAgICAgICAgICAgICAgICAgLyohPCBHdWFyZCB0aW1lIHZhbHVlICovDQoNCi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovDQovKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLw0KLyogICAgICAgICAgICAgICAgICAgICBVbml2ZXJzYWwgU2VyaWFsIEJ1cyAoVVNCKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8NCi8qICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovDQovKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLw0KDQovKiE8RW5kcG9pbnQtc3BlY2lmaWMgcmVnaXN0ZXJzICovDQoNCiNkZWZpbmUgIFVTQl9FUDBSICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgVVNCX0JBU0UgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IGVuZHBvaW50IDAgcmVnaXN0ZXIgYWRkcmVzcyAqLw0KI2RlZmluZSAgVVNCX0VQMVIgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChVU0JfQkFTRSArIDB4MDAwMDAwMDRVKSAgICAgICAgIC8qITwgZW5kcG9pbnQgMSByZWdpc3RlciBhZGRyZXNzICovDQojZGVmaW5lICBVU0JfRVAyUiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKFVTQl9CQVNFICsgMHgwMDAwMDAwOFUpICAgICAgICAgLyohPCBlbmRwb2ludCAyIHJlZ2lzdGVyIGFkZHJlc3MgKi8NCiNkZWZpbmUgIFVTQl9FUDNSICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoVVNCX0JBU0UgKyAweDAwMDAwMDBDVSkgICAgICAgICAvKiE8IGVuZHBvaW50IDMgcmVnaXN0ZXIgYWRkcmVzcyAqLw0KI2RlZmluZSAgVVNCX0VQNFIgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChVU0JfQkFTRSArIDB4MDAwMDAwMTBVKSAgICAgICAgIC8qITwgZW5kcG9pbnQgNCByZWdpc3RlciBhZGRyZXNzICovDQojZGVmaW5lICBVU0JfRVA1UiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKFVTQl9CQVNFICsgMHgwMDAwMDAxNFUpICAgICAgICAgLyohPCBlbmRwb2ludCA1IHJlZ2lzdGVyIGFkZHJlc3MgKi8NCiNkZWZpbmUgIFVTQl9FUDZSICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoVVNCX0JBU0UgKyAweDAwMDAwMDE4VSkgICAgICAgICAvKiE8IGVuZHBvaW50IDYgcmVnaXN0ZXIgYWRkcmVzcyAqLw0KI2RlZmluZSAgVVNCX0VQN1IgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChVU0JfQkFTRSArIDB4MDAwMDAwMUNVKSAgICAgICAgIC8qITwgZW5kcG9pbnQgNyByZWdpc3RlciBhZGRyZXNzICovDQoNCi8qIGJpdCBwb3NpdGlvbnMgKi8gDQojZGVmaW5lIFVTQl9FUF9DVFJfUlhfUG9zICAgICAgICAgICAgICAgICAgICAgKDE1VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQl9FUF9DVFJfUlhfTXNrICAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVVNCX0VQX0NUUl9SWF9Qb3MpICAgICAgLyohPCAweDAwMDA4MDAwICovDQojZGVmaW5lIFVTQl9FUF9DVFJfUlggICAgICAgICAgICAgICAgICAgICAgICAgVVNCX0VQX0NUUl9SWF9Nc2sgICAgICAgICAgICAgICAgLyohPCAgRW5kUG9pbnQgQ29ycmVjdCBUUmFuc2ZlciBSWCAqLw0KI2RlZmluZSBVU0JfRVBfRFRPR19SWF9Qb3MgICAgICAgICAgICAgICAgICAgICgxNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0JfRVBfRFRPR19SWF9Nc2sgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFVTQl9FUF9EVE9HX1JYX1BvcykgICAgIC8qITwgMHgwMDAwNDAwMCAqLw0KI2RlZmluZSBVU0JfRVBfRFRPR19SWCAgICAgICAgICAgICAgICAgICAgICAgIFVTQl9FUF9EVE9HX1JYX01zayAgICAgICAgICAgICAgIC8qITwgIEVuZFBvaW50IERhdGEgVE9HR0xFIFJYICovDQojZGVmaW5lIFVTQl9FUFJYX1NUQVRfUG9zICAgICAgICAgICAgICAgICAgICAgKDEyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQl9FUFJYX1NUQVRfTXNrICAgICAgICAgICAgICAgICAgICAgKDB4M1UgPDwgVVNCX0VQUlhfU1RBVF9Qb3MpICAgICAgLyohPCAweDAwMDAzMDAwICovDQojZGVmaW5lIFVTQl9FUFJYX1NUQVQgICAgICAgICAgICAgICAgICAgICAgICAgVVNCX0VQUlhfU1RBVF9Nc2sgICAgICAgICAgICAgICAgLyohPCAgRW5kUG9pbnQgUlggU1RBVHVzIGJpdCBmaWVsZCAqLw0KI2RlZmluZSBVU0JfRVBfU0VUVVBfUG9zICAgICAgICAgICAgICAgICAgICAgICgxMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0JfRVBfU0VUVVBfTXNrICAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFVTQl9FUF9TRVRVUF9Qb3MpICAgICAgIC8qITwgMHgwMDAwMDgwMCAqLw0KI2RlZmluZSBVU0JfRVBfU0VUVVAgICAgICAgICAgICAgICAgICAgICAgICAgIFVTQl9FUF9TRVRVUF9Nc2sgICAgICAgICAgICAgICAgIC8qITwgIEVuZFBvaW50IFNFVFVQICovDQojZGVmaW5lIFVTQl9FUF9UX0ZJRUxEX1BvcyAgICAgICAgICAgICAgICAgICAgKDlVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQl9FUF9UX0ZJRUxEX01zayAgICAgICAgICAgICAgICAgICAgKDB4M1UgPDwgVVNCX0VQX1RfRklFTERfUG9zKSAgICAgLyohPCAweDAwMDAwNjAwICovDQojZGVmaW5lIFVTQl9FUF9UX0ZJRUxEICAgICAgICAgICAgICAgICAgICAgICAgVVNCX0VQX1RfRklFTERfTXNrICAgICAgICAgICAgICAgLyohPCAgRW5kUG9pbnQgVFlQRSAqLw0KI2RlZmluZSBVU0JfRVBfS0lORF9Qb3MgICAgICAgICAgICAgICAgICAgICAgICg4VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0JfRVBfS0lORF9Nc2sgICAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFVTQl9FUF9LSU5EX1BvcykgICAgICAgIC8qITwgMHgwMDAwMDEwMCAqLw0KI2RlZmluZSBVU0JfRVBfS0lORCAgICAgICAgICAgICAgICAgICAgICAgICAgIFVTQl9FUF9LSU5EX01zayAgICAgICAgICAgICAgICAgIC8qITwgIEVuZFBvaW50IEtJTkQgKi8NCiNkZWZpbmUgVVNCX0VQX0NUUl9UWF9Qb3MgICAgICAgICAgICAgICAgICAgICAoN1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNCX0VQX0NUUl9UWF9Nc2sgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBVU0JfRVBfQ1RSX1RYX1BvcykgICAgICAvKiE8IDB4MDAwMDAwODAgKi8NCiNkZWZpbmUgVVNCX0VQX0NUUl9UWCAgICAgICAgICAgICAgICAgICAgICAgICBVU0JfRVBfQ1RSX1RYX01zayAgICAgICAgICAgICAgICAvKiE8ICBFbmRQb2ludCBDb3JyZWN0IFRSYW5zZmVyIFRYICovDQojZGVmaW5lIFVTQl9FUF9EVE9HX1RYX1BvcyAgICAgICAgICAgICAgICAgICAgKDZVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQl9FUF9EVE9HX1RYX01zayAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVVNCX0VQX0RUT0dfVFhfUG9zKSAgICAgLyohPCAweDAwMDAwMDQwICovDQojZGVmaW5lIFVTQl9FUF9EVE9HX1RYICAgICAgICAgICAgICAgICAgICAgICAgVVNCX0VQX0RUT0dfVFhfTXNrICAgICAgICAgICAgICAgLyohPCAgRW5kUG9pbnQgRGF0YSBUT0dHTEUgVFggKi8NCiNkZWZpbmUgVVNCX0VQVFhfU1RBVF9Qb3MgICAgICAgICAgICAgICAgICAgICAoNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNCX0VQVFhfU1RBVF9Nc2sgICAgICAgICAgICAgICAgICAgICAoMHgzVSA8PCBVU0JfRVBUWF9TVEFUX1BvcykgICAgICAvKiE8IDB4MDAwMDAwMzAgKi8NCiNkZWZpbmUgVVNCX0VQVFhfU1RBVCAgICAgICAgICAgICAgICAgICAgICAgICBVU0JfRVBUWF9TVEFUX01zayAgICAgICAgICAgICAgICAvKiE8ICBFbmRQb2ludCBUWCBTVEFUdXMgYml0IGZpZWxkICovDQojZGVmaW5lIFVTQl9FUEFERFJfRklFTERfUG9zICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQl9FUEFERFJfRklFTERfTXNrICAgICAgICAgICAgICAgICAgKDB4RlUgPDwgVVNCX0VQQUREUl9GSUVMRF9Qb3MpICAgLyohPCAweDAwMDAwMDBGICovDQojZGVmaW5lIFVTQl9FUEFERFJfRklFTEQgICAgICAgICAgICAgICAgICAgICAgVVNCX0VQQUREUl9GSUVMRF9Nc2sgICAgICAgICAgICAgLyohPCAgRW5kUG9pbnQgQUREUmVzcyBGSUVMRCAqLw0KDQovKiBFbmRQb2ludCBSRUdpc3RlciBNQVNLIChubyB0b2dnbGUgZmllbGRzKSAqLw0KI2RlZmluZSAgVVNCX0VQUkVHX01BU0sgICAgIChVU0JfRVBfQ1RSX1JYfFVTQl9FUF9TRVRVUHxVU0JfRVBfVF9GSUVMRHxVU0JfRVBfS0lORHxVU0JfRVBfQ1RSX1RYfFVTQl9FUEFERFJfRklFTEQpDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBFUF9UWVBFWzE6MF0gRW5kUG9pbnQgVFlQRSAqLw0KI2RlZmluZSBVU0JfRVBfVFlQRV9NQVNLX1BvcyAgICAgICAgICAgICAgICAgICg5VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0JfRVBfVFlQRV9NQVNLX01zayAgICAgICAgICAgICAgICAgICgweDNVIDw8IFVTQl9FUF9UWVBFX01BU0tfUG9zKSAgIC8qITwgMHgwMDAwMDYwMCAqLw0KI2RlZmluZSBVU0JfRVBfVFlQRV9NQVNLICAgICAgICAgICAgICAgICAgICAgIFVTQl9FUF9UWVBFX01BU0tfTXNrICAgICAgICAgICAgIC8qITwgRW5kUG9pbnQgVFlQRSBNYXNrICovDQojZGVmaW5lIFVTQl9FUF9CVUxLICAgICAgICAgICAgICAgICAgICAgICAgICAgKDB4MDAwMDAwMDBVKSAgICAgICAgICAgICAgICAgICAgLyohPCBFbmRQb2ludCBCVUxLICovDQojZGVmaW5lIFVTQl9FUF9DT05UUk9MICAgICAgICAgICAgICAgICAgICAgICAgKDB4MDAwMDAyMDBVKSAgICAgICAgICAgICAgICAgICAgLyohPCBFbmRQb2ludCBDT05UUk9MICovDQojZGVmaW5lIFVTQl9FUF9JU09DSFJPTk9VUyAgICAgICAgICAgICAgICAgICAgKDB4MDAwMDA0MDBVKSAgICAgICAgICAgICAgICAgICAgLyohPCBFbmRQb2ludCBJU09DSFJPTk9VUyAqLw0KI2RlZmluZSBVU0JfRVBfSU5URVJSVVBUICAgICAgICAgICAgICAgICAgICAgICgweDAwMDAwNjAwVSkgICAgICAgICAgICAgICAgICAgIC8qITwgRW5kUG9pbnQgSU5URVJSVVBUICovDQojZGVmaW5lICBVU0JfRVBfVF9NQVNLICAgICAgKH5VU0JfRVBfVF9GSUVMRCAmIFVTQl9FUFJFR19NQVNLKQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgIFVTQl9FUEtJTkRfTUFTSyAgICAoflVTQl9FUF9LSU5EICYgVVNCX0VQUkVHX01BU0spICAgICAgICAgICAgLyohPCBFUF9LSU5EIEVuZFBvaW50IEtJTkQgKi8NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFNUQVRfVFhbMTowXSBTVEFUdXMgZm9yIFRYIHRyYW5zZmVyICovDQojZGVmaW5lIFVTQl9FUF9UWF9ESVMgICAgICAgICAgICAgICAgICAgICAgICAgKDB4MDAwMDAwMDBVKSAgICAgICAgICAgICAgICAgICAgLyohPCBFbmRQb2ludCBUWCBESVNhYmxlZCAqLw0KI2RlZmluZSBVU0JfRVBfVFhfU1RBTEwgICAgICAgICAgICAgICAgICAgICAgICgweDAwMDAwMDEwVSkgICAgICAgICAgICAgICAgICAgIC8qITwgRW5kUG9pbnQgVFggU1RBTExlZCAqLw0KI2RlZmluZSBVU0JfRVBfVFhfTkFLICAgICAgICAgICAgICAgICAgICAgICAgICgweDAwMDAwMDIwVSkgICAgICAgICAgICAgICAgICAgIC8qITwgRW5kUG9pbnQgVFggTkFLZWQgKi8NCiNkZWZpbmUgVVNCX0VQX1RYX1ZBTElEICAgICAgICAgICAgICAgICAgICAgICAoMHgwMDAwMDAzMFUpICAgICAgICAgICAgICAgICAgICAvKiE8IEVuZFBvaW50IFRYIFZBTElEICovDQojZGVmaW5lIFVTQl9FUFRYX0RUT0cxICAgICAgICAgICAgICAgICAgICAgICAgKDB4MDAwMDAwMTBVKSAgICAgICAgICAgICAgICAgICAgLyohPCBFbmRQb2ludCBUWCBEYXRhIFRPR2dsZSBiaXQxICovDQojZGVmaW5lIFVTQl9FUFRYX0RUT0cyICAgICAgICAgICAgICAgICAgICAgICAgKDB4MDAwMDAwMjBVKSAgICAgICAgICAgICAgICAgICAgLyohPCBFbmRQb2ludCBUWCBEYXRhIFRPR2dsZSBiaXQyICovDQojZGVmaW5lICBVU0JfRVBUWF9EVE9HTUFTSyAgKFVTQl9FUFRYX1NUQVR8VVNCX0VQUkVHX01BU0spDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBTVEFUX1JYWzE6MF0gU1RBVHVzIGZvciBSWCB0cmFuc2ZlciAqLw0KI2RlZmluZSBVU0JfRVBfUlhfRElTICAgICAgICAgICAgICAgICAgICAgICAgICgweDAwMDAwMDAwVSkgICAgICAgICAgICAgICAgICAgIC8qITwgRW5kUG9pbnQgUlggRElTYWJsZWQgKi8NCiNkZWZpbmUgVVNCX0VQX1JYX1NUQUxMICAgICAgICAgICAgICAgICAgICAgICAoMHgwMDAwMTAwMFUpICAgICAgICAgICAgICAgICAgICAvKiE8IEVuZFBvaW50IFJYIFNUQUxMZWQgKi8NCiNkZWZpbmUgVVNCX0VQX1JYX05BSyAgICAgICAgICAgICAgICAgICAgICAgICAoMHgwMDAwMjAwMFUpICAgICAgICAgICAgICAgICAgICAvKiE8IEVuZFBvaW50IFJYIE5BS2VkICovDQojZGVmaW5lIFVTQl9FUF9SWF9WQUxJRCAgICAgICAgICAgICAgICAgICAgICAgKDB4MDAwMDMwMDBVKSAgICAgICAgICAgICAgICAgICAgLyohPCBFbmRQb2ludCBSWCBWQUxJRCAqLw0KI2RlZmluZSBVU0JfRVBSWF9EVE9HMSAgICAgICAgICAgICAgICAgICAgICAgICgweDAwMDAxMDAwVSkgICAgICAgICAgICAgICAgICAgIC8qITwgRW5kUG9pbnQgUlggRGF0YSBUT0dnbGUgYml0MSAqLw0KI2RlZmluZSBVU0JfRVBSWF9EVE9HMiAgICAgICAgICAgICAgICAgICAgICAgICgweDAwMDAyMDAwVSkgICAgICAgICAgICAgICAgICAgIC8qITwgRW5kUG9pbnQgUlggRGF0YSBUT0dnbGUgYml0MSAqLw0KI2RlZmluZSAgVVNCX0VQUlhfRFRPR01BU0sgIChVU0JfRVBSWF9TVEFUfFVTQl9FUFJFR19NQVNLKQ0KDQovKioqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFVTQl9FUDBSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBVU0JfRVAwUl9FQV9Qb3MgICAgICAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0JfRVAwUl9FQV9Nc2sgICAgICAgICAgICAgICAgICAgICAgICgweEZVIDw8IFVTQl9FUDBSX0VBX1BvcykgICAgICAgIC8qITwgMHgwMDAwMDAwRiAqLw0KI2RlZmluZSBVU0JfRVAwUl9FQSAgICAgICAgICAgICAgICAgICAgICAgICAgIFVTQl9FUDBSX0VBX01zayAgICAgICAgICAgICAgICAgIC8qITxFbmRwb2ludCBBZGRyZXNzICovDQoNCiNkZWZpbmUgVVNCX0VQMFJfU1RBVF9UWF9Qb3MgICAgICAgICAgICAgICAgICAoNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNCX0VQMFJfU1RBVF9UWF9Nc2sgICAgICAgICAgICAgICAgICAoMHgzVSA8PCBVU0JfRVAwUl9TVEFUX1RYX1BvcykgICAvKiE8IDB4MDAwMDAwMzAgKi8NCiNkZWZpbmUgVVNCX0VQMFJfU1RBVF9UWCAgICAgICAgICAgICAgICAgICAgICBVU0JfRVAwUl9TVEFUX1RYX01zayAgICAgICAgICAgICAvKiE8U1RBVF9UWFsxOjBdIGJpdHMgKFN0YXR1cyBiaXRzLCBmb3IgdHJhbnNtaXNzaW9uIHRyYW5zZmVycykgKi8NCiNkZWZpbmUgVVNCX0VQMFJfU1RBVF9UWF8wICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBVU0JfRVAwUl9TVEFUX1RYX1BvcykgICAvKiE8IDB4MDAwMDAwMTAgKi8NCiNkZWZpbmUgVVNCX0VQMFJfU1RBVF9UWF8xICAgICAgICAgICAgICAgICAgICAoMHgyVSA8PCBVU0JfRVAwUl9TVEFUX1RYX1BvcykgICAvKiE8IDB4MDAwMDAwMjAgKi8NCg0KI2RlZmluZSBVU0JfRVAwUl9EVE9HX1RYX1BvcyAgICAgICAgICAgICAgICAgICg2VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0JfRVAwUl9EVE9HX1RYX01zayAgICAgICAgICAgICAgICAgICgweDFVIDw8IFVTQl9FUDBSX0RUT0dfVFhfUG9zKSAgIC8qITwgMHgwMDAwMDA0MCAqLw0KI2RlZmluZSBVU0JfRVAwUl9EVE9HX1RYICAgICAgICAgICAgICAgICAgICAgIFVTQl9FUDBSX0RUT0dfVFhfTXNrICAgICAgICAgICAgIC8qITxEYXRhIFRvZ2dsZSwgZm9yIHRyYW5zbWlzc2lvbiB0cmFuc2ZlcnMgKi8NCiNkZWZpbmUgVVNCX0VQMFJfQ1RSX1RYX1BvcyAgICAgICAgICAgICAgICAgICAoN1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNCX0VQMFJfQ1RSX1RYX01zayAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBVU0JfRVAwUl9DVFJfVFhfUG9zKSAgICAvKiE8IDB4MDAwMDAwODAgKi8NCiNkZWZpbmUgVVNCX0VQMFJfQ1RSX1RYICAgICAgICAgICAgICAgICAgICAgICBVU0JfRVAwUl9DVFJfVFhfTXNrICAgICAgICAgICAgICAvKiE8Q29ycmVjdCBUcmFuc2ZlciBmb3IgdHJhbnNtaXNzaW9uICovDQojZGVmaW5lIFVTQl9FUDBSX0VQX0tJTkRfUG9zICAgICAgICAgICAgICAgICAgKDhVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQl9FUDBSX0VQX0tJTkRfTXNrICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVVNCX0VQMFJfRVBfS0lORF9Qb3MpICAgLyohPCAweDAwMDAwMTAwICovDQojZGVmaW5lIFVTQl9FUDBSX0VQX0tJTkQgICAgICAgICAgICAgICAgICAgICAgVVNCX0VQMFJfRVBfS0lORF9Nc2sgICAgICAgICAgICAgLyohPEVuZHBvaW50IEtpbmQgKi8NCg0KI2RlZmluZSBVU0JfRVAwUl9FUF9UWVBFX1BvcyAgICAgICAgICAgICAgICAgICg5VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0JfRVAwUl9FUF9UWVBFX01zayAgICAgICAgICAgICAgICAgICgweDNVIDw8IFVTQl9FUDBSX0VQX1RZUEVfUG9zKSAgIC8qITwgMHgwMDAwMDYwMCAqLw0KI2RlZmluZSBVU0JfRVAwUl9FUF9UWVBFICAgICAgICAgICAgICAgICAgICAgIFVTQl9FUDBSX0VQX1RZUEVfTXNrICAgICAgICAgICAgIC8qITxFUF9UWVBFWzE6MF0gYml0cyAoRW5kcG9pbnQgdHlwZSkgKi8NCiNkZWZpbmUgVVNCX0VQMFJfRVBfVFlQRV8wICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBVU0JfRVAwUl9FUF9UWVBFX1BvcykgICAvKiE8IDB4MDAwMDAyMDAgKi8NCiNkZWZpbmUgVVNCX0VQMFJfRVBfVFlQRV8xICAgICAgICAgICAgICAgICAgICAoMHgyVSA8PCBVU0JfRVAwUl9FUF9UWVBFX1BvcykgICAvKiE8IDB4MDAwMDA0MDAgKi8NCg0KI2RlZmluZSBVU0JfRVAwUl9TRVRVUF9Qb3MgICAgICAgICAgICAgICAgICAgICgxMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0JfRVAwUl9TRVRVUF9Nc2sgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFVTQl9FUDBSX1NFVFVQX1BvcykgICAgIC8qITwgMHgwMDAwMDgwMCAqLw0KI2RlZmluZSBVU0JfRVAwUl9TRVRVUCAgICAgICAgICAgICAgICAgICAgICAgIFVTQl9FUDBSX1NFVFVQX01zayAgICAgICAgICAgICAgIC8qITxTZXR1cCB0cmFuc2FjdGlvbiBjb21wbGV0ZWQgKi8NCg0KI2RlZmluZSBVU0JfRVAwUl9TVEFUX1JYX1BvcyAgICAgICAgICAgICAgICAgICgxMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0JfRVAwUl9TVEFUX1JYX01zayAgICAgICAgICAgICAgICAgICgweDNVIDw8IFVTQl9FUDBSX1NUQVRfUlhfUG9zKSAgIC8qITwgMHgwMDAwMzAwMCAqLw0KI2RlZmluZSBVU0JfRVAwUl9TVEFUX1JYICAgICAgICAgICAgICAgICAgICAgIFVTQl9FUDBSX1NUQVRfUlhfTXNrICAgICAgICAgICAgIC8qITxTVEFUX1JYWzE6MF0gYml0cyAoU3RhdHVzIGJpdHMsIGZvciByZWNlcHRpb24gdHJhbnNmZXJzKSAqLw0KI2RlZmluZSBVU0JfRVAwUl9TVEFUX1JYXzAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFVTQl9FUDBSX1NUQVRfUlhfUG9zKSAgIC8qITwgMHgwMDAwMTAwMCAqLw0KI2RlZmluZSBVU0JfRVAwUl9TVEFUX1JYXzEgICAgICAgICAgICAgICAgICAgICgweDJVIDw8IFVTQl9FUDBSX1NUQVRfUlhfUG9zKSAgIC8qITwgMHgwMDAwMjAwMCAqLw0KDQojZGVmaW5lIFVTQl9FUDBSX0RUT0dfUlhfUG9zICAgICAgICAgICAgICAgICAgKDE0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQl9FUDBSX0RUT0dfUlhfTXNrICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVVNCX0VQMFJfRFRPR19SWF9Qb3MpICAgLyohPCAweDAwMDA0MDAwICovDQojZGVmaW5lIFVTQl9FUDBSX0RUT0dfUlggICAgICAgICAgICAgICAgICAgICAgVVNCX0VQMFJfRFRPR19SWF9Nc2sgICAgICAgICAgICAgLyohPERhdGEgVG9nZ2xlLCBmb3IgcmVjZXB0aW9uIHRyYW5zZmVycyAqLw0KI2RlZmluZSBVU0JfRVAwUl9DVFJfUlhfUG9zICAgICAgICAgICAgICAgICAgICgxNVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0JfRVAwUl9DVFJfUlhfTXNrICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFVTQl9FUDBSX0NUUl9SWF9Qb3MpICAgIC8qITwgMHgwMDAwODAwMCAqLw0KI2RlZmluZSBVU0JfRVAwUl9DVFJfUlggICAgICAgICAgICAgICAgICAgICAgIFVTQl9FUDBSX0NUUl9SWF9Nc2sgICAgICAgICAgICAgIC8qITxDb3JyZWN0IFRyYW5zZmVyIGZvciByZWNlcHRpb24gKi8NCg0KLyoqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBVU0JfRVAxUiByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgVVNCX0VQMVJfRUFfUG9zICAgICAgICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNCX0VQMVJfRUFfTXNrICAgICAgICAgICAgICAgICAgICAgICAoMHhGVSA8PCBVU0JfRVAxUl9FQV9Qb3MpICAgICAgICAvKiE8IDB4MDAwMDAwMEYgKi8NCiNkZWZpbmUgVVNCX0VQMVJfRUEgICAgICAgICAgICAgICAgICAgICAgICAgICBVU0JfRVAxUl9FQV9Nc2sgICAgICAgICAgICAgICAgICAvKiE8RW5kcG9pbnQgQWRkcmVzcyAqLw0KDQojZGVmaW5lIFVTQl9FUDFSX1NUQVRfVFhfUG9zICAgICAgICAgICAgICAgICAgKDRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQl9FUDFSX1NUQVRfVFhfTXNrICAgICAgICAgICAgICAgICAgKDB4M1UgPDwgVVNCX0VQMVJfU1RBVF9UWF9Qb3MpICAgLyohPCAweDAwMDAwMDMwICovDQojZGVmaW5lIFVTQl9FUDFSX1NUQVRfVFggICAgICAgICAgICAgICAgICAgICAgVVNCX0VQMVJfU1RBVF9UWF9Nc2sgICAgICAgICAgICAgLyohPFNUQVRfVFhbMTowXSBiaXRzIChTdGF0dXMgYml0cywgZm9yIHRyYW5zbWlzc2lvbiB0cmFuc2ZlcnMpICovDQojZGVmaW5lIFVTQl9FUDFSX1NUQVRfVFhfMCAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVVNCX0VQMVJfU1RBVF9UWF9Qb3MpICAgLyohPCAweDAwMDAwMDEwICovDQojZGVmaW5lIFVTQl9FUDFSX1NUQVRfVFhfMSAgICAgICAgICAgICAgICAgICAgKDB4MlUgPDwgVVNCX0VQMVJfU1RBVF9UWF9Qb3MpICAgLyohPCAweDAwMDAwMDIwICovDQoNCiNkZWZpbmUgVVNCX0VQMVJfRFRPR19UWF9Qb3MgICAgICAgICAgICAgICAgICAoNlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNCX0VQMVJfRFRPR19UWF9Nc2sgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBVU0JfRVAxUl9EVE9HX1RYX1BvcykgICAvKiE8IDB4MDAwMDAwNDAgKi8NCiNkZWZpbmUgVVNCX0VQMVJfRFRPR19UWCAgICAgICAgICAgICAgICAgICAgICBVU0JfRVAxUl9EVE9HX1RYX01zayAgICAgICAgICAgICAvKiE8RGF0YSBUb2dnbGUsIGZvciB0cmFuc21pc3Npb24gdHJhbnNmZXJzICovDQojZGVmaW5lIFVTQl9FUDFSX0NUUl9UWF9Qb3MgICAgICAgICAgICAgICAgICAgKDdVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQl9FUDFSX0NUUl9UWF9Nc2sgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVVNCX0VQMVJfQ1RSX1RYX1BvcykgICAgLyohPCAweDAwMDAwMDgwICovDQojZGVmaW5lIFVTQl9FUDFSX0NUUl9UWCAgICAgICAgICAgICAgICAgICAgICAgVVNCX0VQMVJfQ1RSX1RYX01zayAgICAgICAgICAgICAgLyohPENvcnJlY3QgVHJhbnNmZXIgZm9yIHRyYW5zbWlzc2lvbiAqLw0KI2RlZmluZSBVU0JfRVAxUl9FUF9LSU5EX1BvcyAgICAgICAgICAgICAgICAgICg4VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0JfRVAxUl9FUF9LSU5EX01zayAgICAgICAgICAgICAgICAgICgweDFVIDw8IFVTQl9FUDFSX0VQX0tJTkRfUG9zKSAgIC8qITwgMHgwMDAwMDEwMCAqLw0KI2RlZmluZSBVU0JfRVAxUl9FUF9LSU5EICAgICAgICAgICAgICAgICAgICAgIFVTQl9FUDFSX0VQX0tJTkRfTXNrICAgICAgICAgICAgIC8qITxFbmRwb2ludCBLaW5kICovDQoNCiNkZWZpbmUgVVNCX0VQMVJfRVBfVFlQRV9Qb3MgICAgICAgICAgICAgICAgICAoOVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNCX0VQMVJfRVBfVFlQRV9Nc2sgICAgICAgICAgICAgICAgICAoMHgzVSA8PCBVU0JfRVAxUl9FUF9UWVBFX1BvcykgICAvKiE8IDB4MDAwMDA2MDAgKi8NCiNkZWZpbmUgVVNCX0VQMVJfRVBfVFlQRSAgICAgICAgICAgICAgICAgICAgICBVU0JfRVAxUl9FUF9UWVBFX01zayAgICAgICAgICAgICAvKiE8RVBfVFlQRVsxOjBdIGJpdHMgKEVuZHBvaW50IHR5cGUpICovDQojZGVmaW5lIFVTQl9FUDFSX0VQX1RZUEVfMCAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVVNCX0VQMVJfRVBfVFlQRV9Qb3MpICAgLyohPCAweDAwMDAwMjAwICovDQojZGVmaW5lIFVTQl9FUDFSX0VQX1RZUEVfMSAgICAgICAgICAgICAgICAgICAgKDB4MlUgPDwgVVNCX0VQMVJfRVBfVFlQRV9Qb3MpICAgLyohPCAweDAwMDAwNDAwICovDQoNCiNkZWZpbmUgVVNCX0VQMVJfU0VUVVBfUG9zICAgICAgICAgICAgICAgICAgICAoMTFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNCX0VQMVJfU0VUVVBfTXNrICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBVU0JfRVAxUl9TRVRVUF9Qb3MpICAgICAvKiE8IDB4MDAwMDA4MDAgKi8NCiNkZWZpbmUgVVNCX0VQMVJfU0VUVVAgICAgICAgICAgICAgICAgICAgICAgICBVU0JfRVAxUl9TRVRVUF9Nc2sgICAgICAgICAgICAgICAvKiE8U2V0dXAgdHJhbnNhY3Rpb24gY29tcGxldGVkICovDQoNCiNkZWZpbmUgVVNCX0VQMVJfU1RBVF9SWF9Qb3MgICAgICAgICAgICAgICAgICAoMTJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNCX0VQMVJfU1RBVF9SWF9Nc2sgICAgICAgICAgICAgICAgICAoMHgzVSA8PCBVU0JfRVAxUl9TVEFUX1JYX1BvcykgICAvKiE8IDB4MDAwMDMwMDAgKi8NCiNkZWZpbmUgVVNCX0VQMVJfU1RBVF9SWCAgICAgICAgICAgICAgICAgICAgICBVU0JfRVAxUl9TVEFUX1JYX01zayAgICAgICAgICAgICAvKiE8U1RBVF9SWFsxOjBdIGJpdHMgKFN0YXR1cyBiaXRzLCBmb3IgcmVjZXB0aW9uIHRyYW5zZmVycykgKi8NCiNkZWZpbmUgVVNCX0VQMVJfU1RBVF9SWF8wICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBVU0JfRVAxUl9TVEFUX1JYX1BvcykgICAvKiE8IDB4MDAwMDEwMDAgKi8NCiNkZWZpbmUgVVNCX0VQMVJfU1RBVF9SWF8xICAgICAgICAgICAgICAgICAgICAoMHgyVSA8PCBVU0JfRVAxUl9TVEFUX1JYX1BvcykgICAvKiE8IDB4MDAwMDIwMDAgKi8NCg0KI2RlZmluZSBVU0JfRVAxUl9EVE9HX1JYX1BvcyAgICAgICAgICAgICAgICAgICgxNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0JfRVAxUl9EVE9HX1JYX01zayAgICAgICAgICAgICAgICAgICgweDFVIDw8IFVTQl9FUDFSX0RUT0dfUlhfUG9zKSAgIC8qITwgMHgwMDAwNDAwMCAqLw0KI2RlZmluZSBVU0JfRVAxUl9EVE9HX1JYICAgICAgICAgICAgICAgICAgICAgIFVTQl9FUDFSX0RUT0dfUlhfTXNrICAgICAgICAgICAgIC8qITxEYXRhIFRvZ2dsZSwgZm9yIHJlY2VwdGlvbiB0cmFuc2ZlcnMgKi8NCiNkZWZpbmUgVVNCX0VQMVJfQ1RSX1JYX1BvcyAgICAgICAgICAgICAgICAgICAoMTVVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNCX0VQMVJfQ1RSX1JYX01zayAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBVU0JfRVAxUl9DVFJfUlhfUG9zKSAgICAvKiE8IDB4MDAwMDgwMDAgKi8NCiNkZWZpbmUgVVNCX0VQMVJfQ1RSX1JYICAgICAgICAgICAgICAgICAgICAgICBVU0JfRVAxUl9DVFJfUlhfTXNrICAgICAgICAgICAgICAvKiE8Q29ycmVjdCBUcmFuc2ZlciBmb3IgcmVjZXB0aW9uICovDQoNCi8qKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgVVNCX0VQMlIgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIFVTQl9FUDJSX0VBX1BvcyAgICAgICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQl9FUDJSX0VBX01zayAgICAgICAgICAgICAgICAgICAgICAgKDB4RlUgPDwgVVNCX0VQMlJfRUFfUG9zKSAgICAgICAgLyohPCAweDAwMDAwMDBGICovDQojZGVmaW5lIFVTQl9FUDJSX0VBICAgICAgICAgICAgICAgICAgICAgICAgICAgVVNCX0VQMlJfRUFfTXNrICAgICAgICAgICAgICAgICAgLyohPEVuZHBvaW50IEFkZHJlc3MgKi8NCg0KI2RlZmluZSBVU0JfRVAyUl9TVEFUX1RYX1BvcyAgICAgICAgICAgICAgICAgICg0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0JfRVAyUl9TVEFUX1RYX01zayAgICAgICAgICAgICAgICAgICgweDNVIDw8IFVTQl9FUDJSX1NUQVRfVFhfUG9zKSAgIC8qITwgMHgwMDAwMDAzMCAqLw0KI2RlZmluZSBVU0JfRVAyUl9TVEFUX1RYICAgICAgICAgICAgICAgICAgICAgIFVTQl9FUDJSX1NUQVRfVFhfTXNrICAgICAgICAgICAgIC8qITxTVEFUX1RYWzE6MF0gYml0cyAoU3RhdHVzIGJpdHMsIGZvciB0cmFuc21pc3Npb24gdHJhbnNmZXJzKSAqLw0KI2RlZmluZSBVU0JfRVAyUl9TVEFUX1RYXzAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFVTQl9FUDJSX1NUQVRfVFhfUG9zKSAgIC8qITwgMHgwMDAwMDAxMCAqLw0KI2RlZmluZSBVU0JfRVAyUl9TVEFUX1RYXzEgICAgICAgICAgICAgICAgICAgICgweDJVIDw8IFVTQl9FUDJSX1NUQVRfVFhfUG9zKSAgIC8qITwgMHgwMDAwMDAyMCAqLw0KDQojZGVmaW5lIFVTQl9FUDJSX0RUT0dfVFhfUG9zICAgICAgICAgICAgICAgICAgKDZVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQl9FUDJSX0RUT0dfVFhfTXNrICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVVNCX0VQMlJfRFRPR19UWF9Qb3MpICAgLyohPCAweDAwMDAwMDQwICovDQojZGVmaW5lIFVTQl9FUDJSX0RUT0dfVFggICAgICAgICAgICAgICAgICAgICAgVVNCX0VQMlJfRFRPR19UWF9Nc2sgICAgICAgICAgICAgLyohPERhdGEgVG9nZ2xlLCBmb3IgdHJhbnNtaXNzaW9uIHRyYW5zZmVycyAqLw0KI2RlZmluZSBVU0JfRVAyUl9DVFJfVFhfUG9zICAgICAgICAgICAgICAgICAgICg3VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0JfRVAyUl9DVFJfVFhfTXNrICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFVTQl9FUDJSX0NUUl9UWF9Qb3MpICAgIC8qITwgMHgwMDAwMDA4MCAqLw0KI2RlZmluZSBVU0JfRVAyUl9DVFJfVFggICAgICAgICAgICAgICAgICAgICAgIFVTQl9FUDJSX0NUUl9UWF9Nc2sgICAgICAgICAgICAgIC8qITxDb3JyZWN0IFRyYW5zZmVyIGZvciB0cmFuc21pc3Npb24gKi8NCiNkZWZpbmUgVVNCX0VQMlJfRVBfS0lORF9Qb3MgICAgICAgICAgICAgICAgICAoOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNCX0VQMlJfRVBfS0lORF9Nc2sgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBVU0JfRVAyUl9FUF9LSU5EX1BvcykgICAvKiE8IDB4MDAwMDAxMDAgKi8NCiNkZWZpbmUgVVNCX0VQMlJfRVBfS0lORCAgICAgICAgICAgICAgICAgICAgICBVU0JfRVAyUl9FUF9LSU5EX01zayAgICAgICAgICAgICAvKiE8RW5kcG9pbnQgS2luZCAqLw0KDQojZGVmaW5lIFVTQl9FUDJSX0VQX1RZUEVfUG9zICAgICAgICAgICAgICAgICAgKDlVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQl9FUDJSX0VQX1RZUEVfTXNrICAgICAgICAgICAgICAgICAgKDB4M1UgPDwgVVNCX0VQMlJfRVBfVFlQRV9Qb3MpICAgLyohPCAweDAwMDAwNjAwICovDQojZGVmaW5lIFVTQl9FUDJSX0VQX1RZUEUgICAgICAgICAgICAgICAgICAgICAgVVNCX0VQMlJfRVBfVFlQRV9Nc2sgICAgICAgICAgICAgLyohPEVQX1RZUEVbMTowXSBiaXRzIChFbmRwb2ludCB0eXBlKSAqLw0KI2RlZmluZSBVU0JfRVAyUl9FUF9UWVBFXzAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFVTQl9FUDJSX0VQX1RZUEVfUG9zKSAgIC8qITwgMHgwMDAwMDIwMCAqLw0KI2RlZmluZSBVU0JfRVAyUl9FUF9UWVBFXzEgICAgICAgICAgICAgICAgICAgICgweDJVIDw8IFVTQl9FUDJSX0VQX1RZUEVfUG9zKSAgIC8qITwgMHgwMDAwMDQwMCAqLw0KDQojZGVmaW5lIFVTQl9FUDJSX1NFVFVQX1BvcyAgICAgICAgICAgICAgICAgICAgKDExVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQl9FUDJSX1NFVFVQX01zayAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVVNCX0VQMlJfU0VUVVBfUG9zKSAgICAgLyohPCAweDAwMDAwODAwICovDQojZGVmaW5lIFVTQl9FUDJSX1NFVFVQICAgICAgICAgICAgICAgICAgICAgICAgVVNCX0VQMlJfU0VUVVBfTXNrICAgICAgICAgICAgICAgLyohPFNldHVwIHRyYW5zYWN0aW9uIGNvbXBsZXRlZCAqLw0KDQojZGVmaW5lIFVTQl9FUDJSX1NUQVRfUlhfUG9zICAgICAgICAgICAgICAgICAgKDEyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQl9FUDJSX1NUQVRfUlhfTXNrICAgICAgICAgICAgICAgICAgKDB4M1UgPDwgVVNCX0VQMlJfU1RBVF9SWF9Qb3MpICAgLyohPCAweDAwMDAzMDAwICovDQojZGVmaW5lIFVTQl9FUDJSX1NUQVRfUlggICAgICAgICAgICAgICAgICAgICAgVVNCX0VQMlJfU1RBVF9SWF9Nc2sgICAgICAgICAgICAgLyohPFNUQVRfUlhbMTowXSBiaXRzIChTdGF0dXMgYml0cywgZm9yIHJlY2VwdGlvbiB0cmFuc2ZlcnMpICovDQojZGVmaW5lIFVTQl9FUDJSX1NUQVRfUlhfMCAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVVNCX0VQMlJfU1RBVF9SWF9Qb3MpICAgLyohPCAweDAwMDAxMDAwICovDQojZGVmaW5lIFVTQl9FUDJSX1NUQVRfUlhfMSAgICAgICAgICAgICAgICAgICAgKDB4MlUgPDwgVVNCX0VQMlJfU1RBVF9SWF9Qb3MpICAgLyohPCAweDAwMDAyMDAwICovDQoNCiNkZWZpbmUgVVNCX0VQMlJfRFRPR19SWF9Qb3MgICAgICAgICAgICAgICAgICAoMTRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNCX0VQMlJfRFRPR19SWF9Nc2sgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBVU0JfRVAyUl9EVE9HX1JYX1BvcykgICAvKiE8IDB4MDAwMDQwMDAgKi8NCiNkZWZpbmUgVVNCX0VQMlJfRFRPR19SWCAgICAgICAgICAgICAgICAgICAgICBVU0JfRVAyUl9EVE9HX1JYX01zayAgICAgICAgICAgICAvKiE8RGF0YSBUb2dnbGUsIGZvciByZWNlcHRpb24gdHJhbnNmZXJzICovDQojZGVmaW5lIFVTQl9FUDJSX0NUUl9SWF9Qb3MgICAgICAgICAgICAgICAgICAgKDE1VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQl9FUDJSX0NUUl9SWF9Nc2sgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVVNCX0VQMlJfQ1RSX1JYX1BvcykgICAgLyohPCAweDAwMDA4MDAwICovDQojZGVmaW5lIFVTQl9FUDJSX0NUUl9SWCAgICAgICAgICAgICAgICAgICAgICAgVVNCX0VQMlJfQ1RSX1JYX01zayAgICAgICAgICAgICAgLyohPENvcnJlY3QgVHJhbnNmZXIgZm9yIHJlY2VwdGlvbiAqLw0KDQovKioqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFVTQl9FUDNSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBVU0JfRVAzUl9FQV9Qb3MgICAgICAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0JfRVAzUl9FQV9Nc2sgICAgICAgICAgICAgICAgICAgICAgICgweEZVIDw8IFVTQl9FUDNSX0VBX1BvcykgICAgICAgIC8qITwgMHgwMDAwMDAwRiAqLw0KI2RlZmluZSBVU0JfRVAzUl9FQSAgICAgICAgICAgICAgICAgICAgICAgICAgIFVTQl9FUDNSX0VBX01zayAgICAgICAgICAgICAgICAgIC8qITxFbmRwb2ludCBBZGRyZXNzICovDQoNCiNkZWZpbmUgVVNCX0VQM1JfU1RBVF9UWF9Qb3MgICAgICAgICAgICAgICAgICAoNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNCX0VQM1JfU1RBVF9UWF9Nc2sgICAgICAgICAgICAgICAgICAoMHgzVSA8PCBVU0JfRVAzUl9TVEFUX1RYX1BvcykgICAvKiE8IDB4MDAwMDAwMzAgKi8NCiNkZWZpbmUgVVNCX0VQM1JfU1RBVF9UWCAgICAgICAgICAgICAgICAgICAgICBVU0JfRVAzUl9TVEFUX1RYX01zayAgICAgICAgICAgICAvKiE8U1RBVF9UWFsxOjBdIGJpdHMgKFN0YXR1cyBiaXRzLCBmb3IgdHJhbnNtaXNzaW9uIHRyYW5zZmVycykgKi8NCiNkZWZpbmUgVVNCX0VQM1JfU1RBVF9UWF8wICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBVU0JfRVAzUl9TVEFUX1RYX1BvcykgICAvKiE8IDB4MDAwMDAwMTAgKi8NCiNkZWZpbmUgVVNCX0VQM1JfU1RBVF9UWF8xICAgICAgICAgICAgICAgICAgICAoMHgyVSA8PCBVU0JfRVAzUl9TVEFUX1RYX1BvcykgICAvKiE8IDB4MDAwMDAwMjAgKi8NCg0KI2RlZmluZSBVU0JfRVAzUl9EVE9HX1RYX1BvcyAgICAgICAgICAgICAgICAgICg2VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0JfRVAzUl9EVE9HX1RYX01zayAgICAgICAgICAgICAgICAgICgweDFVIDw8IFVTQl9FUDNSX0RUT0dfVFhfUG9zKSAgIC8qITwgMHgwMDAwMDA0MCAqLw0KI2RlZmluZSBVU0JfRVAzUl9EVE9HX1RYICAgICAgICAgICAgICAgICAgICAgIFVTQl9FUDNSX0RUT0dfVFhfTXNrICAgICAgICAgICAgIC8qITxEYXRhIFRvZ2dsZSwgZm9yIHRyYW5zbWlzc2lvbiB0cmFuc2ZlcnMgKi8NCiNkZWZpbmUgVVNCX0VQM1JfQ1RSX1RYX1BvcyAgICAgICAgICAgICAgICAgICAoN1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNCX0VQM1JfQ1RSX1RYX01zayAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBVU0JfRVAzUl9DVFJfVFhfUG9zKSAgICAvKiE8IDB4MDAwMDAwODAgKi8NCiNkZWZpbmUgVVNCX0VQM1JfQ1RSX1RYICAgICAgICAgICAgICAgICAgICAgICBVU0JfRVAzUl9DVFJfVFhfTXNrICAgICAgICAgICAgICAvKiE8Q29ycmVjdCBUcmFuc2ZlciBmb3IgdHJhbnNtaXNzaW9uICovDQojZGVmaW5lIFVTQl9FUDNSX0VQX0tJTkRfUG9zICAgICAgICAgICAgICAgICAgKDhVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQl9FUDNSX0VQX0tJTkRfTXNrICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVVNCX0VQM1JfRVBfS0lORF9Qb3MpICAgLyohPCAweDAwMDAwMTAwICovDQojZGVmaW5lIFVTQl9FUDNSX0VQX0tJTkQgICAgICAgICAgICAgICAgICAgICAgVVNCX0VQM1JfRVBfS0lORF9Nc2sgICAgICAgICAgICAgLyohPEVuZHBvaW50IEtpbmQgKi8NCg0KI2RlZmluZSBVU0JfRVAzUl9FUF9UWVBFX1BvcyAgICAgICAgICAgICAgICAgICg5VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0JfRVAzUl9FUF9UWVBFX01zayAgICAgICAgICAgICAgICAgICgweDNVIDw8IFVTQl9FUDNSX0VQX1RZUEVfUG9zKSAgIC8qITwgMHgwMDAwMDYwMCAqLw0KI2RlZmluZSBVU0JfRVAzUl9FUF9UWVBFICAgICAgICAgICAgICAgICAgICAgIFVTQl9FUDNSX0VQX1RZUEVfTXNrICAgICAgICAgICAgIC8qITxFUF9UWVBFWzE6MF0gYml0cyAoRW5kcG9pbnQgdHlwZSkgKi8NCiNkZWZpbmUgVVNCX0VQM1JfRVBfVFlQRV8wICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBVU0JfRVAzUl9FUF9UWVBFX1BvcykgICAvKiE8IDB4MDAwMDAyMDAgKi8NCiNkZWZpbmUgVVNCX0VQM1JfRVBfVFlQRV8xICAgICAgICAgICAgICAgICAgICAoMHgyVSA8PCBVU0JfRVAzUl9FUF9UWVBFX1BvcykgICAvKiE8IDB4MDAwMDA0MDAgKi8NCg0KI2RlZmluZSBVU0JfRVAzUl9TRVRVUF9Qb3MgICAgICAgICAgICAgICAgICAgICgxMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0JfRVAzUl9TRVRVUF9Nc2sgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFVTQl9FUDNSX1NFVFVQX1BvcykgICAgIC8qITwgMHgwMDAwMDgwMCAqLw0KI2RlZmluZSBVU0JfRVAzUl9TRVRVUCAgICAgICAgICAgICAgICAgICAgICAgIFVTQl9FUDNSX1NFVFVQX01zayAgICAgICAgICAgICAgIC8qITxTZXR1cCB0cmFuc2FjdGlvbiBjb21wbGV0ZWQgKi8NCg0KI2RlZmluZSBVU0JfRVAzUl9TVEFUX1JYX1BvcyAgICAgICAgICAgICAgICAgICgxMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0JfRVAzUl9TVEFUX1JYX01zayAgICAgICAgICAgICAgICAgICgweDNVIDw8IFVTQl9FUDNSX1NUQVRfUlhfUG9zKSAgIC8qITwgMHgwMDAwMzAwMCAqLw0KI2RlZmluZSBVU0JfRVAzUl9TVEFUX1JYICAgICAgICAgICAgICAgICAgICAgIFVTQl9FUDNSX1NUQVRfUlhfTXNrICAgICAgICAgICAgIC8qITxTVEFUX1JYWzE6MF0gYml0cyAoU3RhdHVzIGJpdHMsIGZvciByZWNlcHRpb24gdHJhbnNmZXJzKSAqLw0KI2RlZmluZSBVU0JfRVAzUl9TVEFUX1JYXzAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFVTQl9FUDNSX1NUQVRfUlhfUG9zKSAgIC8qITwgMHgwMDAwMTAwMCAqLw0KI2RlZmluZSBVU0JfRVAzUl9TVEFUX1JYXzEgICAgICAgICAgICAgICAgICAgICgweDJVIDw8IFVTQl9FUDNSX1NUQVRfUlhfUG9zKSAgIC8qITwgMHgwMDAwMjAwMCAqLw0KDQojZGVmaW5lIFVTQl9FUDNSX0RUT0dfUlhfUG9zICAgICAgICAgICAgICAgICAgKDE0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQl9FUDNSX0RUT0dfUlhfTXNrICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVVNCX0VQM1JfRFRPR19SWF9Qb3MpICAgLyohPCAweDAwMDA0MDAwICovDQojZGVmaW5lIFVTQl9FUDNSX0RUT0dfUlggICAgICAgICAgICAgICAgICAgICAgVVNCX0VQM1JfRFRPR19SWF9Nc2sgICAgICAgICAgICAgLyohPERhdGEgVG9nZ2xlLCBmb3IgcmVjZXB0aW9uIHRyYW5zZmVycyAqLw0KI2RlZmluZSBVU0JfRVAzUl9DVFJfUlhfUG9zICAgICAgICAgICAgICAgICAgICgxNVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0JfRVAzUl9DVFJfUlhfTXNrICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFVTQl9FUDNSX0NUUl9SWF9Qb3MpICAgIC8qITwgMHgwMDAwODAwMCAqLw0KI2RlZmluZSBVU0JfRVAzUl9DVFJfUlggICAgICAgICAgICAgICAgICAgICAgIFVTQl9FUDNSX0NUUl9SWF9Nc2sgICAgICAgICAgICAgIC8qITxDb3JyZWN0IFRyYW5zZmVyIGZvciByZWNlcHRpb24gKi8NCg0KLyoqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBVU0JfRVA0UiByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgVVNCX0VQNFJfRUFfUG9zICAgICAgICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNCX0VQNFJfRUFfTXNrICAgICAgICAgICAgICAgICAgICAgICAoMHhGVSA8PCBVU0JfRVA0Ul9FQV9Qb3MpICAgICAgICAvKiE8IDB4MDAwMDAwMEYgKi8NCiNkZWZpbmUgVVNCX0VQNFJfRUEgICAgICAgICAgICAgICAgICAgICAgICAgICBVU0JfRVA0Ul9FQV9Nc2sgICAgICAgICAgICAgICAgICAvKiE8RW5kcG9pbnQgQWRkcmVzcyAqLw0KDQojZGVmaW5lIFVTQl9FUDRSX1NUQVRfVFhfUG9zICAgICAgICAgICAgICAgICAgKDRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQl9FUDRSX1NUQVRfVFhfTXNrICAgICAgICAgICAgICAgICAgKDB4M1UgPDwgVVNCX0VQNFJfU1RBVF9UWF9Qb3MpICAgLyohPCAweDAwMDAwMDMwICovDQojZGVmaW5lIFVTQl9FUDRSX1NUQVRfVFggICAgICAgICAgICAgICAgICAgICAgVVNCX0VQNFJfU1RBVF9UWF9Nc2sgICAgICAgICAgICAgLyohPFNUQVRfVFhbMTowXSBiaXRzIChTdGF0dXMgYml0cywgZm9yIHRyYW5zbWlzc2lvbiB0cmFuc2ZlcnMpICovDQojZGVmaW5lIFVTQl9FUDRSX1NUQVRfVFhfMCAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVVNCX0VQNFJfU1RBVF9UWF9Qb3MpICAgLyohPCAweDAwMDAwMDEwICovDQojZGVmaW5lIFVTQl9FUDRSX1NUQVRfVFhfMSAgICAgICAgICAgICAgICAgICAgKDB4MlUgPDwgVVNCX0VQNFJfU1RBVF9UWF9Qb3MpICAgLyohPCAweDAwMDAwMDIwICovDQoNCiNkZWZpbmUgVVNCX0VQNFJfRFRPR19UWF9Qb3MgICAgICAgICAgICAgICAgICAoNlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNCX0VQNFJfRFRPR19UWF9Nc2sgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBVU0JfRVA0Ul9EVE9HX1RYX1BvcykgICAvKiE8IDB4MDAwMDAwNDAgKi8NCiNkZWZpbmUgVVNCX0VQNFJfRFRPR19UWCAgICAgICAgICAgICAgICAgICAgICBVU0JfRVA0Ul9EVE9HX1RYX01zayAgICAgICAgICAgICAvKiE8RGF0YSBUb2dnbGUsIGZvciB0cmFuc21pc3Npb24gdHJhbnNmZXJzICovDQojZGVmaW5lIFVTQl9FUDRSX0NUUl9UWF9Qb3MgICAgICAgICAgICAgICAgICAgKDdVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQl9FUDRSX0NUUl9UWF9Nc2sgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVVNCX0VQNFJfQ1RSX1RYX1BvcykgICAgLyohPCAweDAwMDAwMDgwICovDQojZGVmaW5lIFVTQl9FUDRSX0NUUl9UWCAgICAgICAgICAgICAgICAgICAgICAgVVNCX0VQNFJfQ1RSX1RYX01zayAgICAgICAgICAgICAgLyohPENvcnJlY3QgVHJhbnNmZXIgZm9yIHRyYW5zbWlzc2lvbiAqLw0KI2RlZmluZSBVU0JfRVA0Ul9FUF9LSU5EX1BvcyAgICAgICAgICAgICAgICAgICg4VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0JfRVA0Ul9FUF9LSU5EX01zayAgICAgICAgICAgICAgICAgICgweDFVIDw8IFVTQl9FUDRSX0VQX0tJTkRfUG9zKSAgIC8qITwgMHgwMDAwMDEwMCAqLw0KI2RlZmluZSBVU0JfRVA0Ul9FUF9LSU5EICAgICAgICAgICAgICAgICAgICAgIFVTQl9FUDRSX0VQX0tJTkRfTXNrICAgICAgICAgICAgIC8qITxFbmRwb2ludCBLaW5kICovDQoNCiNkZWZpbmUgVVNCX0VQNFJfRVBfVFlQRV9Qb3MgICAgICAgICAgICAgICAgICAoOVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNCX0VQNFJfRVBfVFlQRV9Nc2sgICAgICAgICAgICAgICAgICAoMHgzVSA8PCBVU0JfRVA0Ul9FUF9UWVBFX1BvcykgICAvKiE8IDB4MDAwMDA2MDAgKi8NCiNkZWZpbmUgVVNCX0VQNFJfRVBfVFlQRSAgICAgICAgICAgICAgICAgICAgICBVU0JfRVA0Ul9FUF9UWVBFX01zayAgICAgICAgICAgICAvKiE8RVBfVFlQRVsxOjBdIGJpdHMgKEVuZHBvaW50IHR5cGUpICovDQojZGVmaW5lIFVTQl9FUDRSX0VQX1RZUEVfMCAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVVNCX0VQNFJfRVBfVFlQRV9Qb3MpICAgLyohPCAweDAwMDAwMjAwICovDQojZGVmaW5lIFVTQl9FUDRSX0VQX1RZUEVfMSAgICAgICAgICAgICAgICAgICAgKDB4MlUgPDwgVVNCX0VQNFJfRVBfVFlQRV9Qb3MpICAgLyohPCAweDAwMDAwNDAwICovDQoNCiNkZWZpbmUgVVNCX0VQNFJfU0VUVVBfUG9zICAgICAgICAgICAgICAgICAgICAoMTFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNCX0VQNFJfU0VUVVBfTXNrICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBVU0JfRVA0Ul9TRVRVUF9Qb3MpICAgICAvKiE8IDB4MDAwMDA4MDAgKi8NCiNkZWZpbmUgVVNCX0VQNFJfU0VUVVAgICAgICAgICAgICAgICAgICAgICAgICBVU0JfRVA0Ul9TRVRVUF9Nc2sgICAgICAgICAgICAgICAvKiE8U2V0dXAgdHJhbnNhY3Rpb24gY29tcGxldGVkICovDQoNCiNkZWZpbmUgVVNCX0VQNFJfU1RBVF9SWF9Qb3MgICAgICAgICAgICAgICAgICAoMTJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNCX0VQNFJfU1RBVF9SWF9Nc2sgICAgICAgICAgICAgICAgICAoMHgzVSA8PCBVU0JfRVA0Ul9TVEFUX1JYX1BvcykgICAvKiE8IDB4MDAwMDMwMDAgKi8NCiNkZWZpbmUgVVNCX0VQNFJfU1RBVF9SWCAgICAgICAgICAgICAgICAgICAgICBVU0JfRVA0Ul9TVEFUX1JYX01zayAgICAgICAgICAgICAvKiE8U1RBVF9SWFsxOjBdIGJpdHMgKFN0YXR1cyBiaXRzLCBmb3IgcmVjZXB0aW9uIHRyYW5zZmVycykgKi8NCiNkZWZpbmUgVVNCX0VQNFJfU1RBVF9SWF8wICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBVU0JfRVA0Ul9TVEFUX1JYX1BvcykgICAvKiE8IDB4MDAwMDEwMDAgKi8NCiNkZWZpbmUgVVNCX0VQNFJfU1RBVF9SWF8xICAgICAgICAgICAgICAgICAgICAoMHgyVSA8PCBVU0JfRVA0Ul9TVEFUX1JYX1BvcykgICAvKiE8IDB4MDAwMDIwMDAgKi8NCg0KI2RlZmluZSBVU0JfRVA0Ul9EVE9HX1JYX1BvcyAgICAgICAgICAgICAgICAgICgxNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0JfRVA0Ul9EVE9HX1JYX01zayAgICAgICAgICAgICAgICAgICgweDFVIDw8IFVTQl9FUDRSX0RUT0dfUlhfUG9zKSAgIC8qITwgMHgwMDAwNDAwMCAqLw0KI2RlZmluZSBVU0JfRVA0Ul9EVE9HX1JYICAgICAgICAgICAgICAgICAgICAgIFVTQl9FUDRSX0RUT0dfUlhfTXNrICAgICAgICAgICAgIC8qITxEYXRhIFRvZ2dsZSwgZm9yIHJlY2VwdGlvbiB0cmFuc2ZlcnMgKi8NCiNkZWZpbmUgVVNCX0VQNFJfQ1RSX1JYX1BvcyAgICAgICAgICAgICAgICAgICAoMTVVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNCX0VQNFJfQ1RSX1JYX01zayAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBVU0JfRVA0Ul9DVFJfUlhfUG9zKSAgICAvKiE8IDB4MDAwMDgwMDAgKi8NCiNkZWZpbmUgVVNCX0VQNFJfQ1RSX1JYICAgICAgICAgICAgICAgICAgICAgICBVU0JfRVA0Ul9DVFJfUlhfTXNrICAgICAgICAgICAgICAvKiE8Q29ycmVjdCBUcmFuc2ZlciBmb3IgcmVjZXB0aW9uICovDQoNCi8qKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgVVNCX0VQNVIgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIFVTQl9FUDVSX0VBX1BvcyAgICAgICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQl9FUDVSX0VBX01zayAgICAgICAgICAgICAgICAgICAgICAgKDB4RlUgPDwgVVNCX0VQNVJfRUFfUG9zKSAgICAgICAgLyohPCAweDAwMDAwMDBGICovDQojZGVmaW5lIFVTQl9FUDVSX0VBICAgICAgICAgICAgICAgICAgICAgICAgICAgVVNCX0VQNVJfRUFfTXNrICAgICAgICAgICAgICAgICAgLyohPEVuZHBvaW50IEFkZHJlc3MgKi8NCg0KI2RlZmluZSBVU0JfRVA1Ul9TVEFUX1RYX1BvcyAgICAgICAgICAgICAgICAgICg0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0JfRVA1Ul9TVEFUX1RYX01zayAgICAgICAgICAgICAgICAgICgweDNVIDw8IFVTQl9FUDVSX1NUQVRfVFhfUG9zKSAgIC8qITwgMHgwMDAwMDAzMCAqLw0KI2RlZmluZSBVU0JfRVA1Ul9TVEFUX1RYICAgICAgICAgICAgICAgICAgICAgIFVTQl9FUDVSX1NUQVRfVFhfTXNrICAgICAgICAgICAgIC8qITxTVEFUX1RYWzE6MF0gYml0cyAoU3RhdHVzIGJpdHMsIGZvciB0cmFuc21pc3Npb24gdHJhbnNmZXJzKSAqLw0KI2RlZmluZSBVU0JfRVA1Ul9TVEFUX1RYXzAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFVTQl9FUDVSX1NUQVRfVFhfUG9zKSAgIC8qITwgMHgwMDAwMDAxMCAqLw0KI2RlZmluZSBVU0JfRVA1Ul9TVEFUX1RYXzEgICAgICAgICAgICAgICAgICAgICgweDJVIDw8IFVTQl9FUDVSX1NUQVRfVFhfUG9zKSAgIC8qITwgMHgwMDAwMDAyMCAqLw0KDQojZGVmaW5lIFVTQl9FUDVSX0RUT0dfVFhfUG9zICAgICAgICAgICAgICAgICAgKDZVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQl9FUDVSX0RUT0dfVFhfTXNrICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVVNCX0VQNVJfRFRPR19UWF9Qb3MpICAgLyohPCAweDAwMDAwMDQwICovDQojZGVmaW5lIFVTQl9FUDVSX0RUT0dfVFggICAgICAgICAgICAgICAgICAgICAgVVNCX0VQNVJfRFRPR19UWF9Nc2sgICAgICAgICAgICAgLyohPERhdGEgVG9nZ2xlLCBmb3IgdHJhbnNtaXNzaW9uIHRyYW5zZmVycyAqLw0KI2RlZmluZSBVU0JfRVA1Ul9DVFJfVFhfUG9zICAgICAgICAgICAgICAgICAgICg3VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0JfRVA1Ul9DVFJfVFhfTXNrICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFVTQl9FUDVSX0NUUl9UWF9Qb3MpICAgIC8qITwgMHgwMDAwMDA4MCAqLw0KI2RlZmluZSBVU0JfRVA1Ul9DVFJfVFggICAgICAgICAgICAgICAgICAgICAgIFVTQl9FUDVSX0NUUl9UWF9Nc2sgICAgICAgICAgICAgIC8qITxDb3JyZWN0IFRyYW5zZmVyIGZvciB0cmFuc21pc3Npb24gKi8NCiNkZWZpbmUgVVNCX0VQNVJfRVBfS0lORF9Qb3MgICAgICAgICAgICAgICAgICAoOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNCX0VQNVJfRVBfS0lORF9Nc2sgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBVU0JfRVA1Ul9FUF9LSU5EX1BvcykgICAvKiE8IDB4MDAwMDAxMDAgKi8NCiNkZWZpbmUgVVNCX0VQNVJfRVBfS0lORCAgICAgICAgICAgICAgICAgICAgICBVU0JfRVA1Ul9FUF9LSU5EX01zayAgICAgICAgICAgICAvKiE8RW5kcG9pbnQgS2luZCAqLw0KDQojZGVmaW5lIFVTQl9FUDVSX0VQX1RZUEVfUG9zICAgICAgICAgICAgICAgICAgKDlVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQl9FUDVSX0VQX1RZUEVfTXNrICAgICAgICAgICAgICAgICAgKDB4M1UgPDwgVVNCX0VQNVJfRVBfVFlQRV9Qb3MpICAgLyohPCAweDAwMDAwNjAwICovDQojZGVmaW5lIFVTQl9FUDVSX0VQX1RZUEUgICAgICAgICAgICAgICAgICAgICAgVVNCX0VQNVJfRVBfVFlQRV9Nc2sgICAgICAgICAgICAgLyohPEVQX1RZUEVbMTowXSBiaXRzIChFbmRwb2ludCB0eXBlKSAqLw0KI2RlZmluZSBVU0JfRVA1Ul9FUF9UWVBFXzAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFVTQl9FUDVSX0VQX1RZUEVfUG9zKSAgIC8qITwgMHgwMDAwMDIwMCAqLw0KI2RlZmluZSBVU0JfRVA1Ul9FUF9UWVBFXzEgICAgICAgICAgICAgICAgICAgICgweDJVIDw8IFVTQl9FUDVSX0VQX1RZUEVfUG9zKSAgIC8qITwgMHgwMDAwMDQwMCAqLw0KDQojZGVmaW5lIFVTQl9FUDVSX1NFVFVQX1BvcyAgICAgICAgICAgICAgICAgICAgKDExVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQl9FUDVSX1NFVFVQX01zayAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVVNCX0VQNVJfU0VUVVBfUG9zKSAgICAgLyohPCAweDAwMDAwODAwICovDQojZGVmaW5lIFVTQl9FUDVSX1NFVFVQICAgICAgICAgICAgICAgICAgICAgICAgVVNCX0VQNVJfU0VUVVBfTXNrICAgICAgICAgICAgICAgLyohPFNldHVwIHRyYW5zYWN0aW9uIGNvbXBsZXRlZCAqLw0KDQojZGVmaW5lIFVTQl9FUDVSX1NUQVRfUlhfUG9zICAgICAgICAgICAgICAgICAgKDEyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQl9FUDVSX1NUQVRfUlhfTXNrICAgICAgICAgICAgICAgICAgKDB4M1UgPDwgVVNCX0VQNVJfU1RBVF9SWF9Qb3MpICAgLyohPCAweDAwMDAzMDAwICovDQojZGVmaW5lIFVTQl9FUDVSX1NUQVRfUlggICAgICAgICAgICAgICAgICAgICAgVVNCX0VQNVJfU1RBVF9SWF9Nc2sgICAgICAgICAgICAgLyohPFNUQVRfUlhbMTowXSBiaXRzIChTdGF0dXMgYml0cywgZm9yIHJlY2VwdGlvbiB0cmFuc2ZlcnMpICovDQojZGVmaW5lIFVTQl9FUDVSX1NUQVRfUlhfMCAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVVNCX0VQNVJfU1RBVF9SWF9Qb3MpICAgLyohPCAweDAwMDAxMDAwICovDQojZGVmaW5lIFVTQl9FUDVSX1NUQVRfUlhfMSAgICAgICAgICAgICAgICAgICAgKDB4MlUgPDwgVVNCX0VQNVJfU1RBVF9SWF9Qb3MpICAgLyohPCAweDAwMDAyMDAwICovDQoNCiNkZWZpbmUgVVNCX0VQNVJfRFRPR19SWF9Qb3MgICAgICAgICAgICAgICAgICAoMTRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNCX0VQNVJfRFRPR19SWF9Nc2sgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBVU0JfRVA1Ul9EVE9HX1JYX1BvcykgICAvKiE8IDB4MDAwMDQwMDAgKi8NCiNkZWZpbmUgVVNCX0VQNVJfRFRPR19SWCAgICAgICAgICAgICAgICAgICAgICBVU0JfRVA1Ul9EVE9HX1JYX01zayAgICAgICAgICAgICAvKiE8RGF0YSBUb2dnbGUsIGZvciByZWNlcHRpb24gdHJhbnNmZXJzICovDQojZGVmaW5lIFVTQl9FUDVSX0NUUl9SWF9Qb3MgICAgICAgICAgICAgICAgICAgKDE1VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQl9FUDVSX0NUUl9SWF9Nc2sgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVVNCX0VQNVJfQ1RSX1JYX1BvcykgICAgLyohPCAweDAwMDA4MDAwICovDQojZGVmaW5lIFVTQl9FUDVSX0NUUl9SWCAgICAgICAgICAgICAgICAgICAgICAgVVNCX0VQNVJfQ1RSX1JYX01zayAgICAgICAgICAgICAgLyohPENvcnJlY3QgVHJhbnNmZXIgZm9yIHJlY2VwdGlvbiAqLw0KDQovKioqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFVTQl9FUDZSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBVU0JfRVA2Ul9FQV9Qb3MgICAgICAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0JfRVA2Ul9FQV9Nc2sgICAgICAgICAgICAgICAgICAgICAgICgweEZVIDw8IFVTQl9FUDZSX0VBX1BvcykgICAgICAgIC8qITwgMHgwMDAwMDAwRiAqLw0KI2RlZmluZSBVU0JfRVA2Ul9FQSAgICAgICAgICAgICAgICAgICAgICAgICAgIFVTQl9FUDZSX0VBX01zayAgICAgICAgICAgICAgICAgIC8qITxFbmRwb2ludCBBZGRyZXNzICovDQoNCiNkZWZpbmUgVVNCX0VQNlJfU1RBVF9UWF9Qb3MgICAgICAgICAgICAgICAgICAoNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNCX0VQNlJfU1RBVF9UWF9Nc2sgICAgICAgICAgICAgICAgICAoMHgzVSA8PCBVU0JfRVA2Ul9TVEFUX1RYX1BvcykgICAvKiE8IDB4MDAwMDAwMzAgKi8NCiNkZWZpbmUgVVNCX0VQNlJfU1RBVF9UWCAgICAgICAgICAgICAgICAgICAgICBVU0JfRVA2Ul9TVEFUX1RYX01zayAgICAgICAgICAgICAvKiE8U1RBVF9UWFsxOjBdIGJpdHMgKFN0YXR1cyBiaXRzLCBmb3IgdHJhbnNtaXNzaW9uIHRyYW5zZmVycykgKi8NCiNkZWZpbmUgVVNCX0VQNlJfU1RBVF9UWF8wICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBVU0JfRVA2Ul9TVEFUX1RYX1BvcykgICAvKiE8IDB4MDAwMDAwMTAgKi8NCiNkZWZpbmUgVVNCX0VQNlJfU1RBVF9UWF8xICAgICAgICAgICAgICAgICAgICAoMHgyVSA8PCBVU0JfRVA2Ul9TVEFUX1RYX1BvcykgICAvKiE8IDB4MDAwMDAwMjAgKi8NCg0KI2RlZmluZSBVU0JfRVA2Ul9EVE9HX1RYX1BvcyAgICAgICAgICAgICAgICAgICg2VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0JfRVA2Ul9EVE9HX1RYX01zayAgICAgICAgICAgICAgICAgICgweDFVIDw8IFVTQl9FUDZSX0RUT0dfVFhfUG9zKSAgIC8qITwgMHgwMDAwMDA0MCAqLw0KI2RlZmluZSBVU0JfRVA2Ul9EVE9HX1RYICAgICAgICAgICAgICAgICAgICAgIFVTQl9FUDZSX0RUT0dfVFhfTXNrICAgICAgICAgICAgIC8qITxEYXRhIFRvZ2dsZSwgZm9yIHRyYW5zbWlzc2lvbiB0cmFuc2ZlcnMgKi8NCiNkZWZpbmUgVVNCX0VQNlJfQ1RSX1RYX1BvcyAgICAgICAgICAgICAgICAgICAoN1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNCX0VQNlJfQ1RSX1RYX01zayAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBVU0JfRVA2Ul9DVFJfVFhfUG9zKSAgICAvKiE8IDB4MDAwMDAwODAgKi8NCiNkZWZpbmUgVVNCX0VQNlJfQ1RSX1RYICAgICAgICAgICAgICAgICAgICAgICBVU0JfRVA2Ul9DVFJfVFhfTXNrICAgICAgICAgICAgICAvKiE8Q29ycmVjdCBUcmFuc2ZlciBmb3IgdHJhbnNtaXNzaW9uICovDQojZGVmaW5lIFVTQl9FUDZSX0VQX0tJTkRfUG9zICAgICAgICAgICAgICAgICAgKDhVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQl9FUDZSX0VQX0tJTkRfTXNrICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVVNCX0VQNlJfRVBfS0lORF9Qb3MpICAgLyohPCAweDAwMDAwMTAwICovDQojZGVmaW5lIFVTQl9FUDZSX0VQX0tJTkQgICAgICAgICAgICAgICAgICAgICAgVVNCX0VQNlJfRVBfS0lORF9Nc2sgICAgICAgICAgICAgLyohPEVuZHBvaW50IEtpbmQgKi8NCg0KI2RlZmluZSBVU0JfRVA2Ul9FUF9UWVBFX1BvcyAgICAgICAgICAgICAgICAgICg5VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0JfRVA2Ul9FUF9UWVBFX01zayAgICAgICAgICAgICAgICAgICgweDNVIDw8IFVTQl9FUDZSX0VQX1RZUEVfUG9zKSAgIC8qITwgMHgwMDAwMDYwMCAqLw0KI2RlZmluZSBVU0JfRVA2Ul9FUF9UWVBFICAgICAgICAgICAgICAgICAgICAgIFVTQl9FUDZSX0VQX1RZUEVfTXNrICAgICAgICAgICAgIC8qITxFUF9UWVBFWzE6MF0gYml0cyAoRW5kcG9pbnQgdHlwZSkgKi8NCiNkZWZpbmUgVVNCX0VQNlJfRVBfVFlQRV8wICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBVU0JfRVA2Ul9FUF9UWVBFX1BvcykgICAvKiE8IDB4MDAwMDAyMDAgKi8NCiNkZWZpbmUgVVNCX0VQNlJfRVBfVFlQRV8xICAgICAgICAgICAgICAgICAgICAoMHgyVSA8PCBVU0JfRVA2Ul9FUF9UWVBFX1BvcykgICAvKiE8IDB4MDAwMDA0MDAgKi8NCg0KI2RlZmluZSBVU0JfRVA2Ul9TRVRVUF9Qb3MgICAgICAgICAgICAgICAgICAgICgxMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0JfRVA2Ul9TRVRVUF9Nc2sgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFVTQl9FUDZSX1NFVFVQX1BvcykgICAgIC8qITwgMHgwMDAwMDgwMCAqLw0KI2RlZmluZSBVU0JfRVA2Ul9TRVRVUCAgICAgICAgICAgICAgICAgICAgICAgIFVTQl9FUDZSX1NFVFVQX01zayAgICAgICAgICAgICAgIC8qITxTZXR1cCB0cmFuc2FjdGlvbiBjb21wbGV0ZWQgKi8NCg0KI2RlZmluZSBVU0JfRVA2Ul9TVEFUX1JYX1BvcyAgICAgICAgICAgICAgICAgICgxMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0JfRVA2Ul9TVEFUX1JYX01zayAgICAgICAgICAgICAgICAgICgweDNVIDw8IFVTQl9FUDZSX1NUQVRfUlhfUG9zKSAgIC8qITwgMHgwMDAwMzAwMCAqLw0KI2RlZmluZSBVU0JfRVA2Ul9TVEFUX1JYICAgICAgICAgICAgICAgICAgICAgIFVTQl9FUDZSX1NUQVRfUlhfTXNrICAgICAgICAgICAgIC8qITxTVEFUX1JYWzE6MF0gYml0cyAoU3RhdHVzIGJpdHMsIGZvciByZWNlcHRpb24gdHJhbnNmZXJzKSAqLw0KI2RlZmluZSBVU0JfRVA2Ul9TVEFUX1JYXzAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFVTQl9FUDZSX1NUQVRfUlhfUG9zKSAgIC8qITwgMHgwMDAwMTAwMCAqLw0KI2RlZmluZSBVU0JfRVA2Ul9TVEFUX1JYXzEgICAgICAgICAgICAgICAgICAgICgweDJVIDw8IFVTQl9FUDZSX1NUQVRfUlhfUG9zKSAgIC8qITwgMHgwMDAwMjAwMCAqLw0KDQojZGVmaW5lIFVTQl9FUDZSX0RUT0dfUlhfUG9zICAgICAgICAgICAgICAgICAgKDE0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQl9FUDZSX0RUT0dfUlhfTXNrICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVVNCX0VQNlJfRFRPR19SWF9Qb3MpICAgLyohPCAweDAwMDA0MDAwICovDQojZGVmaW5lIFVTQl9FUDZSX0RUT0dfUlggICAgICAgICAgICAgICAgICAgICAgVVNCX0VQNlJfRFRPR19SWF9Nc2sgICAgICAgICAgICAgLyohPERhdGEgVG9nZ2xlLCBmb3IgcmVjZXB0aW9uIHRyYW5zZmVycyAqLw0KI2RlZmluZSBVU0JfRVA2Ul9DVFJfUlhfUG9zICAgICAgICAgICAgICAgICAgICgxNVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0JfRVA2Ul9DVFJfUlhfTXNrICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFVTQl9FUDZSX0NUUl9SWF9Qb3MpICAgIC8qITwgMHgwMDAwODAwMCAqLw0KI2RlZmluZSBVU0JfRVA2Ul9DVFJfUlggICAgICAgICAgICAgICAgICAgICAgIFVTQl9FUDZSX0NUUl9SWF9Nc2sgICAgICAgICAgICAgIC8qITxDb3JyZWN0IFRyYW5zZmVyIGZvciByZWNlcHRpb24gKi8NCg0KLyoqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBVU0JfRVA3UiByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgVVNCX0VQN1JfRUFfUG9zICAgICAgICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNCX0VQN1JfRUFfTXNrICAgICAgICAgICAgICAgICAgICAgICAoMHhGVSA8PCBVU0JfRVA3Ul9FQV9Qb3MpICAgICAgICAvKiE8IDB4MDAwMDAwMEYgKi8NCiNkZWZpbmUgVVNCX0VQN1JfRUEgICAgICAgICAgICAgICAgICAgICAgICAgICBVU0JfRVA3Ul9FQV9Nc2sgICAgICAgICAgICAgICAgICAvKiE8RW5kcG9pbnQgQWRkcmVzcyAqLw0KDQojZGVmaW5lIFVTQl9FUDdSX1NUQVRfVFhfUG9zICAgICAgICAgICAgICAgICAgKDRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQl9FUDdSX1NUQVRfVFhfTXNrICAgICAgICAgICAgICAgICAgKDB4M1UgPDwgVVNCX0VQN1JfU1RBVF9UWF9Qb3MpICAgLyohPCAweDAwMDAwMDMwICovDQojZGVmaW5lIFVTQl9FUDdSX1NUQVRfVFggICAgICAgICAgICAgICAgICAgICAgVVNCX0VQN1JfU1RBVF9UWF9Nc2sgICAgICAgICAgICAgLyohPFNUQVRfVFhbMTowXSBiaXRzIChTdGF0dXMgYml0cywgZm9yIHRyYW5zbWlzc2lvbiB0cmFuc2ZlcnMpICovDQojZGVmaW5lIFVTQl9FUDdSX1NUQVRfVFhfMCAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVVNCX0VQN1JfU1RBVF9UWF9Qb3MpICAgLyohPCAweDAwMDAwMDEwICovDQojZGVmaW5lIFVTQl9FUDdSX1NUQVRfVFhfMSAgICAgICAgICAgICAgICAgICAgKDB4MlUgPDwgVVNCX0VQN1JfU1RBVF9UWF9Qb3MpICAgLyohPCAweDAwMDAwMDIwICovDQoNCiNkZWZpbmUgVVNCX0VQN1JfRFRPR19UWF9Qb3MgICAgICAgICAgICAgICAgICAoNlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNCX0VQN1JfRFRPR19UWF9Nc2sgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBVU0JfRVA3Ul9EVE9HX1RYX1BvcykgICAvKiE8IDB4MDAwMDAwNDAgKi8NCiNkZWZpbmUgVVNCX0VQN1JfRFRPR19UWCAgICAgICAgICAgICAgICAgICAgICBVU0JfRVA3Ul9EVE9HX1RYX01zayAgICAgICAgICAgICAvKiE8RGF0YSBUb2dnbGUsIGZvciB0cmFuc21pc3Npb24gdHJhbnNmZXJzICovDQojZGVmaW5lIFVTQl9FUDdSX0NUUl9UWF9Qb3MgICAgICAgICAgICAgICAgICAgKDdVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQl9FUDdSX0NUUl9UWF9Nc2sgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVVNCX0VQN1JfQ1RSX1RYX1BvcykgICAgLyohPCAweDAwMDAwMDgwICovDQojZGVmaW5lIFVTQl9FUDdSX0NUUl9UWCAgICAgICAgICAgICAgICAgICAgICAgVVNCX0VQN1JfQ1RSX1RYX01zayAgICAgICAgICAgICAgLyohPENvcnJlY3QgVHJhbnNmZXIgZm9yIHRyYW5zbWlzc2lvbiAqLw0KI2RlZmluZSBVU0JfRVA3Ul9FUF9LSU5EX1BvcyAgICAgICAgICAgICAgICAgICg4VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0JfRVA3Ul9FUF9LSU5EX01zayAgICAgICAgICAgICAgICAgICgweDFVIDw8IFVTQl9FUDdSX0VQX0tJTkRfUG9zKSAgIC8qITwgMHgwMDAwMDEwMCAqLw0KI2RlZmluZSBVU0JfRVA3Ul9FUF9LSU5EICAgICAgICAgICAgICAgICAgICAgIFVTQl9FUDdSX0VQX0tJTkRfTXNrICAgICAgICAgICAgIC8qITxFbmRwb2ludCBLaW5kICovDQoNCiNkZWZpbmUgVVNCX0VQN1JfRVBfVFlQRV9Qb3MgICAgICAgICAgICAgICAgICAoOVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNCX0VQN1JfRVBfVFlQRV9Nc2sgICAgICAgICAgICAgICAgICAoMHgzVSA8PCBVU0JfRVA3Ul9FUF9UWVBFX1BvcykgICAvKiE8IDB4MDAwMDA2MDAgKi8NCiNkZWZpbmUgVVNCX0VQN1JfRVBfVFlQRSAgICAgICAgICAgICAgICAgICAgICBVU0JfRVA3Ul9FUF9UWVBFX01zayAgICAgICAgICAgICAvKiE8RVBfVFlQRVsxOjBdIGJpdHMgKEVuZHBvaW50IHR5cGUpICovDQojZGVmaW5lIFVTQl9FUDdSX0VQX1RZUEVfMCAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVVNCX0VQN1JfRVBfVFlQRV9Qb3MpICAgLyohPCAweDAwMDAwMjAwICovDQojZGVmaW5lIFVTQl9FUDdSX0VQX1RZUEVfMSAgICAgICAgICAgICAgICAgICAgKDB4MlUgPDwgVVNCX0VQN1JfRVBfVFlQRV9Qb3MpICAgLyohPCAweDAwMDAwNDAwICovDQoNCiNkZWZpbmUgVVNCX0VQN1JfU0VUVVBfUG9zICAgICAgICAgICAgICAgICAgICAoMTFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNCX0VQN1JfU0VUVVBfTXNrICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBVU0JfRVA3Ul9TRVRVUF9Qb3MpICAgICAvKiE8IDB4MDAwMDA4MDAgKi8NCiNkZWZpbmUgVVNCX0VQN1JfU0VUVVAgICAgICAgICAgICAgICAgICAgICAgICBVU0JfRVA3Ul9TRVRVUF9Nc2sgICAgICAgICAgICAgICAvKiE8U2V0dXAgdHJhbnNhY3Rpb24gY29tcGxldGVkICovDQoNCiNkZWZpbmUgVVNCX0VQN1JfU1RBVF9SWF9Qb3MgICAgICAgICAgICAgICAgICAoMTJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNCX0VQN1JfU1RBVF9SWF9Nc2sgICAgICAgICAgICAgICAgICAoMHgzVSA8PCBVU0JfRVA3Ul9TVEFUX1JYX1BvcykgICAvKiE8IDB4MDAwMDMwMDAgKi8NCiNkZWZpbmUgVVNCX0VQN1JfU1RBVF9SWCAgICAgICAgICAgICAgICAgICAgICBVU0JfRVA3Ul9TVEFUX1JYX01zayAgICAgICAgICAgICAvKiE8U1RBVF9SWFsxOjBdIGJpdHMgKFN0YXR1cyBiaXRzLCBmb3IgcmVjZXB0aW9uIHRyYW5zZmVycykgKi8NCiNkZWZpbmUgVVNCX0VQN1JfU1RBVF9SWF8wICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBVU0JfRVA3Ul9TVEFUX1JYX1BvcykgICAvKiE8IDB4MDAwMDEwMDAgKi8NCiNkZWZpbmUgVVNCX0VQN1JfU1RBVF9SWF8xICAgICAgICAgICAgICAgICAgICAoMHgyVSA8PCBVU0JfRVA3Ul9TVEFUX1JYX1BvcykgICAvKiE8IDB4MDAwMDIwMDAgKi8NCg0KI2RlZmluZSBVU0JfRVA3Ul9EVE9HX1JYX1BvcyAgICAgICAgICAgICAgICAgICgxNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0JfRVA3Ul9EVE9HX1JYX01zayAgICAgICAgICAgICAgICAgICgweDFVIDw8IFVTQl9FUDdSX0RUT0dfUlhfUG9zKSAgIC8qITwgMHgwMDAwNDAwMCAqLw0KI2RlZmluZSBVU0JfRVA3Ul9EVE9HX1JYICAgICAgICAgICAgICAgICAgICAgIFVTQl9FUDdSX0RUT0dfUlhfTXNrICAgICAgICAgICAgIC8qITxEYXRhIFRvZ2dsZSwgZm9yIHJlY2VwdGlvbiB0cmFuc2ZlcnMgKi8NCiNkZWZpbmUgVVNCX0VQN1JfQ1RSX1JYX1BvcyAgICAgICAgICAgICAgICAgICAoMTVVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNCX0VQN1JfQ1RSX1JYX01zayAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBVU0JfRVA3Ul9DVFJfUlhfUG9zKSAgICAvKiE8IDB4MDAwMDgwMDAgKi8NCiNkZWZpbmUgVVNCX0VQN1JfQ1RSX1JYICAgICAgICAgICAgICAgICAgICAgICBVU0JfRVA3Ul9DVFJfUlhfTXNrICAgICAgICAgICAgICAvKiE8Q29ycmVjdCBUcmFuc2ZlciBmb3IgcmVjZXB0aW9uICovDQoNCi8qITxDb21tb24gcmVnaXN0ZXJzICovDQoNCiNkZWZpbmUgIFVTQl9DTlRSICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoVVNCX0JBU0UgKyAweDAwMDAwMDQwVSkgICAgICAgICAgLyohPCBDb250cm9sIHJlZ2lzdGVyICovDQojZGVmaW5lICBVU0JfSVNUUiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKFVTQl9CQVNFICsgMHgwMDAwMDA0NFUpICAgICAgICAgIC8qITwgSW50ZXJydXB0IHN0YXR1cyByZWdpc3RlciAqLw0KI2RlZmluZSAgVVNCX0ZOUiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChVU0JfQkFTRSArIDB4MDAwMDAwNDhVKSAgICAgICAgICAvKiE8IEZyYW1lIG51bWJlciByZWdpc3RlciAqLw0KI2RlZmluZSAgVVNCX0RBRERSICAgICAgICAgICAgICAgICAgICAgICAgICAgIChVU0JfQkFTRSArIDB4MDAwMDAwNENVKSAgICAgICAgICAvKiE8IERldmljZSBhZGRyZXNzIHJlZ2lzdGVyICovDQojZGVmaW5lICBVU0JfQlRBQkxFICAgICAgICAgICAgICAgICAgICAgICAgICAgKFVTQl9CQVNFICsgMHgwMDAwMDA1MFUpICAgICAgICAgIC8qITwgQnVmZmVyIFRhYmxlIGFkZHJlc3MgcmVnaXN0ZXIgKi8NCg0KDQoNCi8qKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgVVNCX0NOVFIgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIFVTQl9DTlRSX0ZSRVNfUG9zICAgICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQl9DTlRSX0ZSRVNfTXNrICAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVVNCX0NOVFJfRlJFU19Qb3MpICAgICAgLyohPCAweDAwMDAwMDAxICovDQojZGVmaW5lIFVTQl9DTlRSX0ZSRVMgICAgICAgICAgICAgICAgICAgICAgICAgVVNCX0NOVFJfRlJFU19Nc2sgICAgICAgICAgICAgICAgLyohPEZvcmNlIFVTQiBSZXNldCAqLw0KI2RlZmluZSBVU0JfQ05UUl9QRFdOX1BvcyAgICAgICAgICAgICAgICAgICAgICgxVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0JfQ05UUl9QRFdOX01zayAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFVTQl9DTlRSX1BEV05fUG9zKSAgICAgIC8qITwgMHgwMDAwMDAwMiAqLw0KI2RlZmluZSBVU0JfQ05UUl9QRFdOICAgICAgICAgICAgICAgICAgICAgICAgIFVTQl9DTlRSX1BEV05fTXNrICAgICAgICAgICAgICAgIC8qITxQb3dlciBkb3duICovDQojZGVmaW5lIFVTQl9DTlRSX0xQTU9ERV9Qb3MgICAgICAgICAgICAgICAgICAgKDJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQl9DTlRSX0xQTU9ERV9Nc2sgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVVNCX0NOVFJfTFBNT0RFX1BvcykgICAgLyohPCAweDAwMDAwMDA0ICovDQojZGVmaW5lIFVTQl9DTlRSX0xQTU9ERSAgICAgICAgICAgICAgICAgICAgICAgVVNCX0NOVFJfTFBNT0RFX01zayAgICAgICAgICAgICAgLyohPExvdy1wb3dlciBtb2RlICovDQojZGVmaW5lIFVTQl9DTlRSX0ZTVVNQX1BvcyAgICAgICAgICAgICAgICAgICAgKDNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQl9DTlRSX0ZTVVNQX01zayAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVVNCX0NOVFJfRlNVU1BfUG9zKSAgICAgLyohPCAweDAwMDAwMDA4ICovDQojZGVmaW5lIFVTQl9DTlRSX0ZTVVNQICAgICAgICAgICAgICAgICAgICAgICAgVVNCX0NOVFJfRlNVU1BfTXNrICAgICAgICAgICAgICAgLyohPEZvcmNlIHN1c3BlbmQgKi8NCiNkZWZpbmUgVVNCX0NOVFJfUkVTVU1FX1BvcyAgICAgICAgICAgICAgICAgICAoNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNCX0NOVFJfUkVTVU1FX01zayAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBVU0JfQ05UUl9SRVNVTUVfUG9zKSAgICAvKiE8IDB4MDAwMDAwMTAgKi8NCiNkZWZpbmUgVVNCX0NOVFJfUkVTVU1FICAgICAgICAgICAgICAgICAgICAgICBVU0JfQ05UUl9SRVNVTUVfTXNrICAgICAgICAgICAgICAvKiE8UmVzdW1lIHJlcXVlc3QgKi8NCiNkZWZpbmUgVVNCX0NOVFJfRVNPRk1fUG9zICAgICAgICAgICAgICAgICAgICAoOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNCX0NOVFJfRVNPRk1fTXNrICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBVU0JfQ05UUl9FU09GTV9Qb3MpICAgICAvKiE8IDB4MDAwMDAxMDAgKi8NCiNkZWZpbmUgVVNCX0NOVFJfRVNPRk0gICAgICAgICAgICAgICAgICAgICAgICBVU0JfQ05UUl9FU09GTV9Nc2sgICAgICAgICAgICAgICAvKiE8RXhwZWN0ZWQgU3RhcnQgT2YgRnJhbWUgSW50ZXJydXB0IE1hc2sgKi8NCiNkZWZpbmUgVVNCX0NOVFJfU09GTV9Qb3MgICAgICAgICAgICAgICAgICAgICAoOVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNCX0NOVFJfU09GTV9Nc2sgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBVU0JfQ05UUl9TT0ZNX1BvcykgICAgICAvKiE8IDB4MDAwMDAyMDAgKi8NCiNkZWZpbmUgVVNCX0NOVFJfU09GTSAgICAgICAgICAgICAgICAgICAgICAgICBVU0JfQ05UUl9TT0ZNX01zayAgICAgICAgICAgICAgICAvKiE8U3RhcnQgT2YgRnJhbWUgSW50ZXJydXB0IE1hc2sgKi8NCiNkZWZpbmUgVVNCX0NOVFJfUkVTRVRNX1BvcyAgICAgICAgICAgICAgICAgICAoMTBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNCX0NOVFJfUkVTRVRNX01zayAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBVU0JfQ05UUl9SRVNFVE1fUG9zKSAgICAvKiE8IDB4MDAwMDA0MDAgKi8NCiNkZWZpbmUgVVNCX0NOVFJfUkVTRVRNICAgICAgICAgICAgICAgICAgICAgICBVU0JfQ05UUl9SRVNFVE1fTXNrICAgICAgICAgICAgICAvKiE8UkVTRVQgSW50ZXJydXB0IE1hc2sgKi8NCiNkZWZpbmUgVVNCX0NOVFJfU1VTUE1fUG9zICAgICAgICAgICAgICAgICAgICAoMTFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNCX0NOVFJfU1VTUE1fTXNrICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBVU0JfQ05UUl9TVVNQTV9Qb3MpICAgICAvKiE8IDB4MDAwMDA4MDAgKi8NCiNkZWZpbmUgVVNCX0NOVFJfU1VTUE0gICAgICAgICAgICAgICAgICAgICAgICBVU0JfQ05UUl9TVVNQTV9Nc2sgICAgICAgICAgICAgICAvKiE8U3VzcGVuZCBtb2RlIEludGVycnVwdCBNYXNrICovDQojZGVmaW5lIFVTQl9DTlRSX1dLVVBNX1BvcyAgICAgICAgICAgICAgICAgICAgKDEyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQl9DTlRSX1dLVVBNX01zayAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVVNCX0NOVFJfV0tVUE1fUG9zKSAgICAgLyohPCAweDAwMDAxMDAwICovDQojZGVmaW5lIFVTQl9DTlRSX1dLVVBNICAgICAgICAgICAgICAgICAgICAgICAgVVNCX0NOVFJfV0tVUE1fTXNrICAgICAgICAgICAgICAgLyohPFdha2V1cCBJbnRlcnJ1cHQgTWFzayAqLw0KI2RlZmluZSBVU0JfQ05UUl9FUlJNX1BvcyAgICAgICAgICAgICAgICAgICAgICgxM1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0JfQ05UUl9FUlJNX01zayAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFVTQl9DTlRSX0VSUk1fUG9zKSAgICAgIC8qITwgMHgwMDAwMjAwMCAqLw0KI2RlZmluZSBVU0JfQ05UUl9FUlJNICAgICAgICAgICAgICAgICAgICAgICAgIFVTQl9DTlRSX0VSUk1fTXNrICAgICAgICAgICAgICAgIC8qITxFcnJvciBJbnRlcnJ1cHQgTWFzayAqLw0KI2RlZmluZSBVU0JfQ05UUl9QTUFPVlJNX1BvcyAgICAgICAgICAgICAgICAgICgxNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0JfQ05UUl9QTUFPVlJNX01zayAgICAgICAgICAgICAgICAgICgweDFVIDw8IFVTQl9DTlRSX1BNQU9WUk1fUG9zKSAgIC8qITwgMHgwMDAwNDAwMCAqLw0KI2RlZmluZSBVU0JfQ05UUl9QTUFPVlJNICAgICAgICAgICAgICAgICAgICAgIFVTQl9DTlRSX1BNQU9WUk1fTXNrICAgICAgICAgICAgIC8qITxQYWNrZXQgTWVtb3J5IEFyZWEgT3ZlciAvIFVuZGVycnVuIEludGVycnVwdCBNYXNrICovDQojZGVmaW5lIFVTQl9DTlRSX0NUUk1fUG9zICAgICAgICAgICAgICAgICAgICAgKDE1VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQl9DTlRSX0NUUk1fTXNrICAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVVNCX0NOVFJfQ1RSTV9Qb3MpICAgICAgLyohPCAweDAwMDA4MDAwICovDQojZGVmaW5lIFVTQl9DTlRSX0NUUk0gICAgICAgICAgICAgICAgICAgICAgICAgVVNCX0NOVFJfQ1RSTV9Nc2sgICAgICAgICAgICAgICAgLyohPENvcnJlY3QgVHJhbnNmZXIgSW50ZXJydXB0IE1hc2sgKi8NCg0KLyoqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBVU0JfSVNUUiByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgVVNCX0lTVFJfRVBfSURfUG9zICAgICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNCX0lTVFJfRVBfSURfTXNrICAgICAgICAgICAgICAgICAgICAoMHhGVSA8PCBVU0JfSVNUUl9FUF9JRF9Qb3MpICAgICAvKiE8IDB4MDAwMDAwMEYgKi8NCiNkZWZpbmUgVVNCX0lTVFJfRVBfSUQgICAgICAgICAgICAgICAgICAgICAgICBVU0JfSVNUUl9FUF9JRF9Nc2sgICAgICAgICAgICAgICAvKiE8RW5kcG9pbnQgSWRlbnRpZmllciAqLw0KI2RlZmluZSBVU0JfSVNUUl9ESVJfUG9zICAgICAgICAgICAgICAgICAgICAgICg0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0JfSVNUUl9ESVJfTXNrICAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFVTQl9JU1RSX0RJUl9Qb3MpICAgICAgIC8qITwgMHgwMDAwMDAxMCAqLw0KI2RlZmluZSBVU0JfSVNUUl9ESVIgICAgICAgICAgICAgICAgICAgICAgICAgIFVTQl9JU1RSX0RJUl9Nc2sgICAgICAgICAgICAgICAgIC8qITxEaXJlY3Rpb24gb2YgdHJhbnNhY3Rpb24gKi8NCiNkZWZpbmUgVVNCX0lTVFJfRVNPRl9Qb3MgICAgICAgICAgICAgICAgICAgICAoOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNCX0lTVFJfRVNPRl9Nc2sgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBVU0JfSVNUUl9FU09GX1BvcykgICAgICAvKiE8IDB4MDAwMDAxMDAgKi8NCiNkZWZpbmUgVVNCX0lTVFJfRVNPRiAgICAgICAgICAgICAgICAgICAgICAgICBVU0JfSVNUUl9FU09GX01zayAgICAgICAgICAgICAgICAvKiE8RXhwZWN0ZWQgU3RhcnQgT2YgRnJhbWUgKi8NCiNkZWZpbmUgVVNCX0lTVFJfU09GX1BvcyAgICAgICAgICAgICAgICAgICAgICAoOVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNCX0lTVFJfU09GX01zayAgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBVU0JfSVNUUl9TT0ZfUG9zKSAgICAgICAvKiE8IDB4MDAwMDAyMDAgKi8NCiNkZWZpbmUgVVNCX0lTVFJfU09GICAgICAgICAgICAgICAgICAgICAgICAgICBVU0JfSVNUUl9TT0ZfTXNrICAgICAgICAgICAgICAgICAvKiE8U3RhcnQgT2YgRnJhbWUgKi8NCiNkZWZpbmUgVVNCX0lTVFJfUkVTRVRfUG9zICAgICAgICAgICAgICAgICAgICAoMTBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNCX0lTVFJfUkVTRVRfTXNrICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBVU0JfSVNUUl9SRVNFVF9Qb3MpICAgICAvKiE8IDB4MDAwMDA0MDAgKi8NCiNkZWZpbmUgVVNCX0lTVFJfUkVTRVQgICAgICAgICAgICAgICAgICAgICAgICBVU0JfSVNUUl9SRVNFVF9Nc2sgICAgICAgICAgICAgICAvKiE8VVNCIFJFU0VUIHJlcXVlc3QgKi8NCiNkZWZpbmUgVVNCX0lTVFJfU1VTUF9Qb3MgICAgICAgICAgICAgICAgICAgICAoMTFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNCX0lTVFJfU1VTUF9Nc2sgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBVU0JfSVNUUl9TVVNQX1BvcykgICAgICAvKiE8IDB4MDAwMDA4MDAgKi8NCiNkZWZpbmUgVVNCX0lTVFJfU1VTUCAgICAgICAgICAgICAgICAgICAgICAgICBVU0JfSVNUUl9TVVNQX01zayAgICAgICAgICAgICAgICAvKiE8U3VzcGVuZCBtb2RlIHJlcXVlc3QgKi8NCiNkZWZpbmUgVVNCX0lTVFJfV0tVUF9Qb3MgICAgICAgICAgICAgICAgICAgICAoMTJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNCX0lTVFJfV0tVUF9Nc2sgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBVU0JfSVNUUl9XS1VQX1BvcykgICAgICAvKiE8IDB4MDAwMDEwMDAgKi8NCiNkZWZpbmUgVVNCX0lTVFJfV0tVUCAgICAgICAgICAgICAgICAgICAgICAgICBVU0JfSVNUUl9XS1VQX01zayAgICAgICAgICAgICAgICAvKiE8V2FrZSB1cCAqLw0KI2RlZmluZSBVU0JfSVNUUl9FUlJfUG9zICAgICAgICAgICAgICAgICAgICAgICgxM1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0JfSVNUUl9FUlJfTXNrICAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFVTQl9JU1RSX0VSUl9Qb3MpICAgICAgIC8qITwgMHgwMDAwMjAwMCAqLw0KI2RlZmluZSBVU0JfSVNUUl9FUlIgICAgICAgICAgICAgICAgICAgICAgICAgIFVTQl9JU1RSX0VSUl9Nc2sgICAgICAgICAgICAgICAgIC8qITxFcnJvciAqLw0KI2RlZmluZSBVU0JfSVNUUl9QTUFPVlJfUG9zICAgICAgICAgICAgICAgICAgICgxNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0JfSVNUUl9QTUFPVlJfTXNrICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFVTQl9JU1RSX1BNQU9WUl9Qb3MpICAgIC8qITwgMHgwMDAwNDAwMCAqLw0KI2RlZmluZSBVU0JfSVNUUl9QTUFPVlIgICAgICAgICAgICAgICAgICAgICAgIFVTQl9JU1RSX1BNQU9WUl9Nc2sgICAgICAgICAgICAgIC8qITxQYWNrZXQgTWVtb3J5IEFyZWEgT3ZlciAvIFVuZGVycnVuICovDQojZGVmaW5lIFVTQl9JU1RSX0NUUl9Qb3MgICAgICAgICAgICAgICAgICAgICAgKDE1VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQl9JU1RSX0NUUl9Nc2sgICAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVVNCX0lTVFJfQ1RSX1BvcykgICAgICAgLyohPCAweDAwMDA4MDAwICovDQojZGVmaW5lIFVTQl9JU1RSX0NUUiAgICAgICAgICAgICAgICAgICAgICAgICAgVVNCX0lTVFJfQ1RSX01zayAgICAgICAgICAgICAgICAgLyohPENvcnJlY3QgVHJhbnNmZXIgKi8NCg0KI2RlZmluZSAgVVNCX0NMUl9DVFIgICAgICAgICAgICAgICAgICAgICAgICAgICh+VVNCX0lTVFJfQ1RSKSAgICAgICAgICAgICAgICAgIC8qITwgY2xlYXIgQ29ycmVjdCBUUmFuc2ZlciBiaXQgKi8NCiNkZWZpbmUgIFVTQl9DTFJfUE1BT1ZSTSAgICAgICAgICAgICAgICAgICAgICAoflVTQl9JU1RSX1BNQU9WUikgICAgICAgICAgICAgICAvKiE8IGNsZWFyIERNQSBPVmVSL3VuZGVycnVuIGJpdCovDQojZGVmaW5lICBVU0JfQ0xSX0VSUiAgICAgICAgICAgICAgICAgICAgICAgICAgKH5VU0JfSVNUUl9FUlIpICAgICAgICAgICAgICAgICAgLyohPCBjbGVhciBFUlJvciBiaXQgKi8NCiNkZWZpbmUgIFVTQl9DTFJfV0tVUCAgICAgICAgICAgICAgICAgICAgICAgICAoflVTQl9JU1RSX1dLVVApICAgICAgICAgICAgICAgICAvKiE8IGNsZWFyIFdhS2UgVVAgYml0ICovDQojZGVmaW5lICBVU0JfQ0xSX1NVU1AgICAgICAgICAgICAgICAgICAgICAgICAgKH5VU0JfSVNUUl9TVVNQKSAgICAgICAgICAgICAgICAgLyohPCBjbGVhciBTVVNQZW5kIGJpdCAqLw0KI2RlZmluZSAgVVNCX0NMUl9SRVNFVCAgICAgICAgICAgICAgICAgICAgICAgICh+VVNCX0lTVFJfUkVTRVQpICAgICAgICAgICAgICAgIC8qITwgY2xlYXIgUkVTRVQgYml0ICovDQojZGVmaW5lICBVU0JfQ0xSX1NPRiAgICAgICAgICAgICAgICAgICAgICAgICAgKH5VU0JfSVNUUl9TT0YpICAgICAgICAgICAgICAgICAgLyohPCBjbGVhciBTdGFydCBPZiBGcmFtZSBiaXQgKi8NCiNkZWZpbmUgIFVTQl9DTFJfRVNPRiAgICAgICAgICAgICAgICAgICAgICAgICAoflVTQl9JU1RSX0VTT0YpICAgICAgICAgICAgICAgICAvKiE8IGNsZWFyIEV4cGVjdGVkIFN0YXJ0IE9mIEZyYW1lIGJpdCAqLw0KDQoNCi8qKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgVVNCX0ZOUiByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIFVTQl9GTlJfRk5fUG9zICAgICAgICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQl9GTlJfRk5fTXNrICAgICAgICAgICAgICAgICAgICAgICAgKDB4N0ZGVSA8PCBVU0JfRk5SX0ZOX1BvcykgICAgICAgLyohPCAweDAwMDAwN0ZGICovDQojZGVmaW5lIFVTQl9GTlJfRk4gICAgICAgICAgICAgICAgICAgICAgICAgICAgVVNCX0ZOUl9GTl9Nc2sgICAgICAgICAgICAgICAgICAgLyohPEZyYW1lIE51bWJlciAqLw0KI2RlZmluZSBVU0JfRk5SX0xTT0ZfUG9zICAgICAgICAgICAgICAgICAgICAgICgxMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0JfRk5SX0xTT0ZfTXNrICAgICAgICAgICAgICAgICAgICAgICgweDNVIDw8IFVTQl9GTlJfTFNPRl9Qb3MpICAgICAgIC8qITwgMHgwMDAwMTgwMCAqLw0KI2RlZmluZSBVU0JfRk5SX0xTT0YgICAgICAgICAgICAgICAgICAgICAgICAgIFVTQl9GTlJfTFNPRl9Nc2sgICAgICAgICAgICAgICAgIC8qITxMb3N0IFNPRiAqLw0KI2RlZmluZSBVU0JfRk5SX0xDS19Qb3MgICAgICAgICAgICAgICAgICAgICAgICgxM1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0JfRk5SX0xDS19Nc2sgICAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFVTQl9GTlJfTENLX1BvcykgICAgICAgIC8qITwgMHgwMDAwMjAwMCAqLw0KI2RlZmluZSBVU0JfRk5SX0xDSyAgICAgICAgICAgICAgICAgICAgICAgICAgIFVTQl9GTlJfTENLX01zayAgICAgICAgICAgICAgICAgIC8qITxMb2NrZWQgKi8NCiNkZWZpbmUgVVNCX0ZOUl9SWERNX1BvcyAgICAgICAgICAgICAgICAgICAgICAoMTRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNCX0ZOUl9SWERNX01zayAgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBVU0JfRk5SX1JYRE1fUG9zKSAgICAgICAvKiE8IDB4MDAwMDQwMDAgKi8NCiNkZWZpbmUgVVNCX0ZOUl9SWERNICAgICAgICAgICAgICAgICAgICAgICAgICBVU0JfRk5SX1JYRE1fTXNrICAgICAgICAgICAgICAgICAvKiE8UmVjZWl2ZSBEYXRhIC0gTGluZSBTdGF0dXMgKi8NCiNkZWZpbmUgVVNCX0ZOUl9SWERQX1BvcyAgICAgICAgICAgICAgICAgICAgICAoMTVVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNCX0ZOUl9SWERQX01zayAgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBVU0JfRk5SX1JYRFBfUG9zKSAgICAgICAvKiE8IDB4MDAwMDgwMDAgKi8NCiNkZWZpbmUgVVNCX0ZOUl9SWERQICAgICAgICAgICAgICAgICAgICAgICAgICBVU0JfRk5SX1JYRFBfTXNrICAgICAgICAgICAgICAgICAvKiE8UmVjZWl2ZSBEYXRhICsgTGluZSBTdGF0dXMgKi8NCg0KLyoqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFVTQl9EQUREUiByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgVVNCX0RBRERSX0FERF9Qb3MgICAgICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNCX0RBRERSX0FERF9Nc2sgICAgICAgICAgICAgICAgICAgICAoMHg3RlUgPDwgVVNCX0RBRERSX0FERF9Qb3MpICAgICAvKiE8IDB4MDAwMDAwN0YgKi8NCiNkZWZpbmUgVVNCX0RBRERSX0FERCAgICAgICAgICAgICAgICAgICAgICAgICBVU0JfREFERFJfQUREX01zayAgICAgICAgICAgICAgICAvKiE8QUREWzY6MF0gYml0cyAoRGV2aWNlIEFkZHJlc3MpICovDQojZGVmaW5lIFVTQl9EQUREUl9BREQwX1BvcyAgICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQl9EQUREUl9BREQwX01zayAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVVNCX0RBRERSX0FERDBfUG9zKSAgICAgLyohPCAweDAwMDAwMDAxICovDQojZGVmaW5lIFVTQl9EQUREUl9BREQwICAgICAgICAgICAgICAgICAgICAgICAgVVNCX0RBRERSX0FERDBfTXNrICAgICAgICAgICAgICAgLyohPEJpdCAwICovDQojZGVmaW5lIFVTQl9EQUREUl9BREQxX1BvcyAgICAgICAgICAgICAgICAgICAgKDFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQl9EQUREUl9BREQxX01zayAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVVNCX0RBRERSX0FERDFfUG9zKSAgICAgLyohPCAweDAwMDAwMDAyICovDQojZGVmaW5lIFVTQl9EQUREUl9BREQxICAgICAgICAgICAgICAgICAgICAgICAgVVNCX0RBRERSX0FERDFfTXNrICAgICAgICAgICAgICAgLyohPEJpdCAxICovDQojZGVmaW5lIFVTQl9EQUREUl9BREQyX1BvcyAgICAgICAgICAgICAgICAgICAgKDJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQl9EQUREUl9BREQyX01zayAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVVNCX0RBRERSX0FERDJfUG9zKSAgICAgLyohPCAweDAwMDAwMDA0ICovDQojZGVmaW5lIFVTQl9EQUREUl9BREQyICAgICAgICAgICAgICAgICAgICAgICAgVVNCX0RBRERSX0FERDJfTXNrICAgICAgICAgICAgICAgLyohPEJpdCAyICovDQojZGVmaW5lIFVTQl9EQUREUl9BREQzX1BvcyAgICAgICAgICAgICAgICAgICAgKDNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQl9EQUREUl9BREQzX01zayAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVVNCX0RBRERSX0FERDNfUG9zKSAgICAgLyohPCAweDAwMDAwMDA4ICovDQojZGVmaW5lIFVTQl9EQUREUl9BREQzICAgICAgICAgICAgICAgICAgICAgICAgVVNCX0RBRERSX0FERDNfTXNrICAgICAgICAgICAgICAgLyohPEJpdCAzICovDQojZGVmaW5lIFVTQl9EQUREUl9BREQ0X1BvcyAgICAgICAgICAgICAgICAgICAgKDRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQl9EQUREUl9BREQ0X01zayAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVVNCX0RBRERSX0FERDRfUG9zKSAgICAgLyohPCAweDAwMDAwMDEwICovDQojZGVmaW5lIFVTQl9EQUREUl9BREQ0ICAgICAgICAgICAgICAgICAgICAgICAgVVNCX0RBRERSX0FERDRfTXNrICAgICAgICAgICAgICAgLyohPEJpdCA0ICovDQojZGVmaW5lIFVTQl9EQUREUl9BREQ1X1BvcyAgICAgICAgICAgICAgICAgICAgKDVVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQl9EQUREUl9BREQ1X01zayAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVVNCX0RBRERSX0FERDVfUG9zKSAgICAgLyohPCAweDAwMDAwMDIwICovDQojZGVmaW5lIFVTQl9EQUREUl9BREQ1ICAgICAgICAgICAgICAgICAgICAgICAgVVNCX0RBRERSX0FERDVfTXNrICAgICAgICAgICAgICAgLyohPEJpdCA1ICovDQojZGVmaW5lIFVTQl9EQUREUl9BREQ2X1BvcyAgICAgICAgICAgICAgICAgICAgKDZVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQl9EQUREUl9BREQ2X01zayAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVVNCX0RBRERSX0FERDZfUG9zKSAgICAgLyohPCAweDAwMDAwMDQwICovDQojZGVmaW5lIFVTQl9EQUREUl9BREQ2ICAgICAgICAgICAgICAgICAgICAgICAgVVNCX0RBRERSX0FERDZfTXNrICAgICAgICAgICAgICAgLyohPEJpdCA2ICovDQoNCiNkZWZpbmUgVVNCX0RBRERSX0VGX1BvcyAgICAgICAgICAgICAgICAgICAgICAoN1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNCX0RBRERSX0VGX01zayAgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBVU0JfREFERFJfRUZfUG9zKSAgICAgICAvKiE8IDB4MDAwMDAwODAgKi8NCiNkZWZpbmUgVVNCX0RBRERSX0VGICAgICAgICAgICAgICAgICAgICAgICAgICBVU0JfREFERFJfRUZfTXNrICAgICAgICAgICAgICAgICAvKiE8RW5hYmxlIEZ1bmN0aW9uICovDQoNCi8qKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBVU0JfQlRBQkxFIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKiovICAgIA0KI2RlZmluZSBVU0JfQlRBQkxFX0JUQUJMRV9Qb3MgICAgICAgICAgICAgICAgICgzVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0JfQlRBQkxFX0JUQUJMRV9Nc2sgICAgICAgICAgICAgICAgICgweDFGRkZVIDw8IFVTQl9CVEFCTEVfQlRBQkxFX1BvcykgLyohPCAweDAwMDBGRkY4ICovDQojZGVmaW5lIFVTQl9CVEFCTEVfQlRBQkxFICAgICAgICAgICAgICAgICAgICAgVVNCX0JUQUJMRV9CVEFCTEVfTXNrICAgICAgICAgICAgLyohPEJ1ZmZlciBUYWJsZSAqLw0KDQovKiE8IEJ1ZmZlciBkZXNjcmlwdG9yIHRhYmxlICovDQovKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBVU0JfQUREUjBfVFggcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBVU0JfQUREUjBfVFhfQUREUjBfVFhfUG9zICAgICAgICAgICAgICgxVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0JfQUREUjBfVFhfQUREUjBfVFhfTXNrICAgICAgICAgICAgICgweDdGRkZVIDw8IFVTQl9BRERSMF9UWF9BRERSMF9UWF9Qb3MpIC8qITwgMHgwMDAwRkZGRSAqLw0KI2RlZmluZSBVU0JfQUREUjBfVFhfQUREUjBfVFggICAgICAgICAgICAgICAgIFVTQl9BRERSMF9UWF9BRERSMF9UWF9Nc2sgICAgICAgIC8qITwgVHJhbnNtaXNzaW9uIEJ1ZmZlciBBZGRyZXNzIDAgKi8NCg0KLyoqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgVVNCX0FERFIxX1RYIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgVVNCX0FERFIxX1RYX0FERFIxX1RYX1BvcyAgICAgICAgICAgICAoMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNCX0FERFIxX1RYX0FERFIxX1RYX01zayAgICAgICAgICAgICAoMHg3RkZGVSA8PCBVU0JfQUREUjFfVFhfQUREUjFfVFhfUG9zKSAvKiE8IDB4MDAwMEZGRkUgKi8NCiNkZWZpbmUgVVNCX0FERFIxX1RYX0FERFIxX1RYICAgICAgICAgICAgICAgICBVU0JfQUREUjFfVFhfQUREUjFfVFhfTXNrICAgICAgICAvKiE8IFRyYW5zbWlzc2lvbiBCdWZmZXIgQWRkcmVzcyAxICovDQoNCi8qKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFVTQl9BRERSMl9UWCByZWdpc3RlciAgKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIFVTQl9BRERSMl9UWF9BRERSMl9UWF9Qb3MgICAgICAgICAgICAgKDFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQl9BRERSMl9UWF9BRERSMl9UWF9Nc2sgICAgICAgICAgICAgKDB4N0ZGRlUgPDwgVVNCX0FERFIyX1RYX0FERFIyX1RYX1BvcykgLyohPCAweDAwMDBGRkZFICovDQojZGVmaW5lIFVTQl9BRERSMl9UWF9BRERSMl9UWCAgICAgICAgICAgICAgICAgVVNCX0FERFIyX1RYX0FERFIyX1RYX01zayAgICAgICAgLyohPCBUcmFuc21pc3Npb24gQnVmZmVyIEFkZHJlc3MgMiAqLw0KDQovKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBVU0JfQUREUjNfVFggcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBVU0JfQUREUjNfVFhfQUREUjNfVFhfUG9zICAgICAgICAgICAgICgxVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0JfQUREUjNfVFhfQUREUjNfVFhfTXNrICAgICAgICAgICAgICgweDdGRkZVIDw8IFVTQl9BRERSM19UWF9BRERSM19UWF9Qb3MpIC8qITwgMHgwMDAwRkZGRSAqLw0KI2RlZmluZSBVU0JfQUREUjNfVFhfQUREUjNfVFggICAgICAgICAgICAgICAgIFVTQl9BRERSM19UWF9BRERSM19UWF9Nc2sgICAgICAgIC8qITwgVHJhbnNtaXNzaW9uIEJ1ZmZlciBBZGRyZXNzIDMgKi8NCg0KLyoqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgVVNCX0FERFI0X1RYIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgVVNCX0FERFI0X1RYX0FERFI0X1RYX1BvcyAgICAgICAgICAgICAoMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNCX0FERFI0X1RYX0FERFI0X1RYX01zayAgICAgICAgICAgICAoMHg3RkZGVSA8PCBVU0JfQUREUjRfVFhfQUREUjRfVFhfUG9zKSAvKiE8IDB4MDAwMEZGRkUgKi8NCiNkZWZpbmUgVVNCX0FERFI0X1RYX0FERFI0X1RYICAgICAgICAgICAgICAgICBVU0JfQUREUjRfVFhfQUREUjRfVFhfTXNrICAgICAgICAvKiE8IFRyYW5zbWlzc2lvbiBCdWZmZXIgQWRkcmVzcyA0ICovDQoNCi8qKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFVTQl9BRERSNV9UWCByZWdpc3RlciAgKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIFVTQl9BRERSNV9UWF9BRERSNV9UWF9Qb3MgICAgICAgICAgICAgKDFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQl9BRERSNV9UWF9BRERSNV9UWF9Nc2sgICAgICAgICAgICAgKDB4N0ZGRlUgPDwgVVNCX0FERFI1X1RYX0FERFI1X1RYX1BvcykgLyohPCAweDAwMDBGRkZFICovDQojZGVmaW5lIFVTQl9BRERSNV9UWF9BRERSNV9UWCAgICAgICAgICAgICAgICAgVVNCX0FERFI1X1RYX0FERFI1X1RYX01zayAgICAgICAgLyohPCBUcmFuc21pc3Npb24gQnVmZmVyIEFkZHJlc3MgNSAqLw0KDQovKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBVU0JfQUREUjZfVFggcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBVU0JfQUREUjZfVFhfQUREUjZfVFhfUG9zICAgICAgICAgICAgICgxVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0JfQUREUjZfVFhfQUREUjZfVFhfTXNrICAgICAgICAgICAgICgweDdGRkZVIDw8IFVTQl9BRERSNl9UWF9BRERSNl9UWF9Qb3MpIC8qITwgMHgwMDAwRkZGRSAqLw0KI2RlZmluZSBVU0JfQUREUjZfVFhfQUREUjZfVFggICAgICAgICAgICAgICAgIFVTQl9BRERSNl9UWF9BRERSNl9UWF9Nc2sgICAgICAgIC8qITwgVHJhbnNtaXNzaW9uIEJ1ZmZlciBBZGRyZXNzIDYgKi8NCg0KLyoqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgVVNCX0FERFI3X1RYIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgVVNCX0FERFI3X1RYX0FERFI3X1RYX1BvcyAgICAgICAgICAgICAoMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNCX0FERFI3X1RYX0FERFI3X1RYX01zayAgICAgICAgICAgICAoMHg3RkZGVSA8PCBVU0JfQUREUjdfVFhfQUREUjdfVFhfUG9zKSAvKiE8IDB4MDAwMEZGRkUgKi8NCiNkZWZpbmUgVVNCX0FERFI3X1RYX0FERFI3X1RYICAgICAgICAgICAgICAgICBVU0JfQUREUjdfVFhfQUREUjdfVFhfTXNrICAgICAgICAvKiE8IFRyYW5zbWlzc2lvbiBCdWZmZXIgQWRkcmVzcyA3ICovDQoNCi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovDQoNCi8qKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFVTQl9DT1VOVDBfVFggcmVnaXN0ZXIgICoqKioqKioqKioqKioqKiovDQojZGVmaW5lIFVTQl9DT1VOVDBfVFhfQ09VTlQwX1RYX1BvcyAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQl9DT1VOVDBfVFhfQ09VTlQwX1RYX01zayAgICAgICAgICAgKDB4M0ZGVSA8PCBVU0JfQ09VTlQwX1RYX0NPVU5UMF9UWF9Qb3MpIC8qITwgMHgwMDAwMDNGRiAqLw0KI2RlZmluZSBVU0JfQ09VTlQwX1RYX0NPVU5UMF9UWCAgICAgICAgICAgICAgIFVTQl9DT1VOVDBfVFhfQ09VTlQwX1RYX01zayAgICAgIC8qITwgVHJhbnNtaXNzaW9uIEJ5dGUgQ291bnQgMCAqLw0KDQovKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBVU0JfQ09VTlQxX1RYIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBVU0JfQ09VTlQxX1RYX0NPVU5UMV9UWF9Qb3MgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0JfQ09VTlQxX1RYX0NPVU5UMV9UWF9Nc2sgICAgICAgICAgICgweDNGRlUgPDwgVVNCX0NPVU5UMV9UWF9DT1VOVDFfVFhfUG9zKSAvKiE8IDB4MDAwMDAzRkYgKi8NCiNkZWZpbmUgVVNCX0NPVU5UMV9UWF9DT1VOVDFfVFggICAgICAgICAgICAgICBVU0JfQ09VTlQxX1RYX0NPVU5UMV9UWF9Nc2sgICAgICAvKiE8IFRyYW5zbWlzc2lvbiBCeXRlIENvdW50IDEgKi8NCg0KLyoqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgVVNCX0NPVU5UMl9UWCByZWdpc3RlciAgKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgVVNCX0NPVU5UMl9UWF9DT1VOVDJfVFhfUG9zICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNCX0NPVU5UMl9UWF9DT1VOVDJfVFhfTXNrICAgICAgICAgICAoMHgzRkZVIDw8IFVTQl9DT1VOVDJfVFhfQ09VTlQyX1RYX1BvcykgLyohPCAweDAwMDAwM0ZGICovDQojZGVmaW5lIFVTQl9DT1VOVDJfVFhfQ09VTlQyX1RYICAgICAgICAgICAgICAgVVNCX0NPVU5UMl9UWF9DT1VOVDJfVFhfTXNrICAgICAgLyohPCBUcmFuc21pc3Npb24gQnl0ZSBDb3VudCAyICovDQoNCi8qKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFVTQl9DT1VOVDNfVFggcmVnaXN0ZXIgICoqKioqKioqKioqKioqKiovDQojZGVmaW5lIFVTQl9DT1VOVDNfVFhfQ09VTlQzX1RYX1BvcyAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQl9DT1VOVDNfVFhfQ09VTlQzX1RYX01zayAgICAgICAgICAgKDB4M0ZGVSA8PCBVU0JfQ09VTlQzX1RYX0NPVU5UM19UWF9Qb3MpIC8qITwgMHgwMDAwMDNGRiAqLw0KI2RlZmluZSBVU0JfQ09VTlQzX1RYX0NPVU5UM19UWCAgICAgICAgICAgICAgIFVTQl9DT1VOVDNfVFhfQ09VTlQzX1RYX01zayAgICAgIC8qITwgVHJhbnNtaXNzaW9uIEJ5dGUgQ291bnQgMyAqLw0KDQovKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBVU0JfQ09VTlQ0X1RYIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBVU0JfQ09VTlQ0X1RYX0NPVU5UNF9UWF9Qb3MgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0JfQ09VTlQ0X1RYX0NPVU5UNF9UWF9Nc2sgICAgICAgICAgICgweDNGRlUgPDwgVVNCX0NPVU5UNF9UWF9DT1VOVDRfVFhfUG9zKSAvKiE8IDB4MDAwMDAzRkYgKi8NCiNkZWZpbmUgVVNCX0NPVU5UNF9UWF9DT1VOVDRfVFggICAgICAgICAgICAgICBVU0JfQ09VTlQ0X1RYX0NPVU5UNF9UWF9Nc2sgICAgICAvKiE8IFRyYW5zbWlzc2lvbiBCeXRlIENvdW50IDQgKi8NCg0KLyoqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgVVNCX0NPVU5UNV9UWCByZWdpc3RlciAgKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgVVNCX0NPVU5UNV9UWF9DT1VOVDVfVFhfUG9zICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNCX0NPVU5UNV9UWF9DT1VOVDVfVFhfTXNrICAgICAgICAgICAoMHgzRkZVIDw8IFVTQl9DT1VOVDVfVFhfQ09VTlQ1X1RYX1BvcykgLyohPCAweDAwMDAwM0ZGICovDQojZGVmaW5lIFVTQl9DT1VOVDVfVFhfQ09VTlQ1X1RYICAgICAgICAgICAgICAgVVNCX0NPVU5UNV9UWF9DT1VOVDVfVFhfTXNrICAgICAgLyohPCBUcmFuc21pc3Npb24gQnl0ZSBDb3VudCA1ICovDQoNCi8qKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFVTQl9DT1VOVDZfVFggcmVnaXN0ZXIgICoqKioqKioqKioqKioqKiovDQojZGVmaW5lIFVTQl9DT1VOVDZfVFhfQ09VTlQ2X1RYX1BvcyAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQl9DT1VOVDZfVFhfQ09VTlQ2X1RYX01zayAgICAgICAgICAgKDB4M0ZGVSA8PCBVU0JfQ09VTlQ2X1RYX0NPVU5UNl9UWF9Qb3MpIC8qITwgMHgwMDAwMDNGRiAqLw0KI2RlZmluZSBVU0JfQ09VTlQ2X1RYX0NPVU5UNl9UWCAgICAgICAgICAgICAgIFVTQl9DT1VOVDZfVFhfQ09VTlQ2X1RYX01zayAgICAgIC8qITwgVHJhbnNtaXNzaW9uIEJ5dGUgQ291bnQgNiAqLw0KDQovKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBVU0JfQ09VTlQ3X1RYIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBVU0JfQ09VTlQ3X1RYX0NPVU5UN19UWF9Qb3MgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0JfQ09VTlQ3X1RYX0NPVU5UN19UWF9Nc2sgICAgICAgICAgICgweDNGRlUgPDwgVVNCX0NPVU5UN19UWF9DT1VOVDdfVFhfUG9zKSAvKiE8IDB4MDAwMDAzRkYgKi8NCiNkZWZpbmUgVVNCX0NPVU5UN19UWF9DT1VOVDdfVFggICAgICAgICAgICAgICBVU0JfQ09VTlQ3X1RYX0NPVU5UN19UWF9Nc2sgICAgICAvKiE8IFRyYW5zbWlzc2lvbiBCeXRlIENvdW50IDcgKi8NCg0KLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi8NCg0KLyoqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBVU0JfQ09VTlQwX1RYXzAgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKi8NCiNkZWZpbmUgVVNCX0NPVU5UMF9UWF8wX0NPVU5UMF9UWF8wICAgICAgICAgICAoMHgwMDAwMDNGRlUpICAgICAgICAgICAgICAgICAgICAvKiE8IFRyYW5zbWlzc2lvbiBCeXRlIENvdW50IDAgKGxvdykgKi8NCg0KLyoqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBVU0JfQ09VTlQwX1RYXzEgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKi8NCiNkZWZpbmUgVVNCX0NPVU5UMF9UWF8xX0NPVU5UMF9UWF8xICAgICAgICAgICAoMHgwM0ZGMDAwMFUpICAgICAgICAgICAgICAgICAgICAvKiE8IFRyYW5zbWlzc2lvbiBCeXRlIENvdW50IDAgKGhpZ2gpICovDQoNCi8qKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgVVNCX0NPVU5UMV9UWF8wIHJlZ2lzdGVyICAqKioqKioqKioqKioqKiovDQojZGVmaW5lIFVTQl9DT1VOVDFfVFhfMF9DT1VOVDFfVFhfMCAgICAgICAgICAgKDB4MDAwMDAzRkZVKSAgICAgICAgICAgICAgICAgICAgLyohPCBUcmFuc21pc3Npb24gQnl0ZSBDb3VudCAxIChsb3cpICovDQoNCi8qKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgVVNCX0NPVU5UMV9UWF8xIHJlZ2lzdGVyICAqKioqKioqKioqKioqKiovDQojZGVmaW5lIFVTQl9DT1VOVDFfVFhfMV9DT1VOVDFfVFhfMSAgICAgICAgICAgKDB4MDNGRjAwMDBVKSAgICAgICAgICAgICAgICAgICAgLyohPCBUcmFuc21pc3Npb24gQnl0ZSBDb3VudCAxIChoaWdoKSAqLw0KDQovKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFVTQl9DT1VOVDJfVFhfMCByZWdpc3RlciAgKioqKioqKioqKioqKioqLw0KI2RlZmluZSBVU0JfQ09VTlQyX1RYXzBfQ09VTlQyX1RYXzAgICAgICAgICAgICgweDAwMDAwM0ZGVSkgICAgICAgICAgICAgICAgICAgIC8qITwgVHJhbnNtaXNzaW9uIEJ5dGUgQ291bnQgMiAobG93KSAqLw0KDQovKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFVTQl9DT1VOVDJfVFhfMSByZWdpc3RlciAgKioqKioqKioqKioqKioqLw0KI2RlZmluZSBVU0JfQ09VTlQyX1RYXzFfQ09VTlQyX1RYXzEgICAgICAgICAgICgweDAzRkYwMDAwVSkgICAgICAgICAgICAgICAgICAgIC8qITwgVHJhbnNtaXNzaW9uIEJ5dGUgQ291bnQgMiAoaGlnaCkgKi8NCg0KLyoqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBVU0JfQ09VTlQzX1RYXzAgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKi8NCiNkZWZpbmUgIFVTQl9DT1VOVDNfVFhfMF9DT1VOVDNfVFhfMCAgICAgICAgICgodWludDMyX3QpMHgwMDAwMDAwMFUwM0ZGKSAgICAgICAgLyohPCBUcmFuc21pc3Npb24gQnl0ZSBDb3VudCAzIChsb3cpICovDQoNCi8qKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgVVNCX0NPVU5UM19UWF8xIHJlZ2lzdGVyICAqKioqKioqKioqKioqKiovDQojZGVmaW5lICBVU0JfQ09VTlQzX1RYXzFfQ09VTlQzX1RYXzEgICAgICAgICAoKHVpbnQzMl90KTB4MDAwMDAzRkZVMDAwMCkgICAgICAgIC8qITwgVHJhbnNtaXNzaW9uIEJ5dGUgQ291bnQgMyAoaGlnaCkgKi8NCg0KLyoqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBVU0JfQ09VTlQ0X1RYXzAgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKi8NCiNkZWZpbmUgVVNCX0NPVU5UNF9UWF8wX0NPVU5UNF9UWF8wICAgICAgICAgICAoMHgwMDAwMDNGRlUpICAgICAgICAgICAgICAgICAgICAvKiE8IFRyYW5zbWlzc2lvbiBCeXRlIENvdW50IDQgKGxvdykgKi8NCg0KLyoqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBVU0JfQ09VTlQ0X1RYXzEgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKi8NCiNkZWZpbmUgVVNCX0NPVU5UNF9UWF8xX0NPVU5UNF9UWF8xICAgICAgICAgICAoMHgwM0ZGMDAwMFUpICAgICAgICAgICAgICAgICAgICAvKiE8IFRyYW5zbWlzc2lvbiBCeXRlIENvdW50IDQgKGhpZ2gpICovDQoNCi8qKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgVVNCX0NPVU5UNV9UWF8wIHJlZ2lzdGVyICAqKioqKioqKioqKioqKiovDQojZGVmaW5lIFVTQl9DT1VOVDVfVFhfMF9DT1VOVDVfVFhfMCAgICAgICAgICAgKDB4MDAwMDAzRkZVKSAgICAgICAgICAgICAgICAgICAgLyohPCBUcmFuc21pc3Npb24gQnl0ZSBDb3VudCA1IChsb3cpICovDQoNCi8qKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgVVNCX0NPVU5UNV9UWF8xIHJlZ2lzdGVyICAqKioqKioqKioqKioqKiovDQojZGVmaW5lIFVTQl9DT1VOVDVfVFhfMV9DT1VOVDVfVFhfMSAgICAgICAgICAgKDB4MDNGRjAwMDBVKSAgICAgICAgICAgICAgICAgICAgLyohPCBUcmFuc21pc3Npb24gQnl0ZSBDb3VudCA1IChoaWdoKSAqLw0KDQovKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFVTQl9DT1VOVDZfVFhfMCByZWdpc3RlciAgKioqKioqKioqKioqKioqLw0KI2RlZmluZSBVU0JfQ09VTlQ2X1RYXzBfQ09VTlQ2X1RYXzAgICAgICAgICAgICgweDAwMDAwM0ZGVSkgICAgICAgICAgICAgICAgICAgIC8qITwgVHJhbnNtaXNzaW9uIEJ5dGUgQ291bnQgNiAobG93KSAqLw0KDQovKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFVTQl9DT1VOVDZfVFhfMSByZWdpc3RlciAgKioqKioqKioqKioqKioqLw0KI2RlZmluZSBVU0JfQ09VTlQ2X1RYXzFfQ09VTlQ2X1RYXzEgICAgICAgICAgICgweDAzRkYwMDAwVSkgICAgICAgICAgICAgICAgICAgIC8qITwgVHJhbnNtaXNzaW9uIEJ5dGUgQ291bnQgNiAoaGlnaCkgKi8NCg0KLyoqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBVU0JfQ09VTlQ3X1RYXzAgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKi8NCiNkZWZpbmUgVVNCX0NPVU5UN19UWF8wX0NPVU5UN19UWF8wICAgICAgICAgICAoMHgwMDAwMDNGRlUpICAgICAgICAgICAgICAgICAgICAvKiE8IFRyYW5zbWlzc2lvbiBCeXRlIENvdW50IDcgKGxvdykgKi8NCg0KLyoqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBVU0JfQ09VTlQ3X1RYXzEgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKi8NCiNkZWZpbmUgVVNCX0NPVU5UN19UWF8xX0NPVU5UN19UWF8xICAgICAgICAgICAoMHgwM0ZGMDAwMFUpICAgICAgICAgICAgICAgICAgICAvKiE8IFRyYW5zbWlzc2lvbiBCeXRlIENvdW50IDcgKGhpZ2gpICovDQoNCi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovDQoNCi8qKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFVTQl9BRERSMF9SWCByZWdpc3RlciAgKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIFVTQl9BRERSMF9SWF9BRERSMF9SWF9Qb3MgICAgICAgICAgICAgKDFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQl9BRERSMF9SWF9BRERSMF9SWF9Nc2sgICAgICAgICAgICAgKDB4N0ZGRlUgPDwgVVNCX0FERFIwX1JYX0FERFIwX1JYX1BvcykgLyohPCAweDAwMDBGRkZFICovDQojZGVmaW5lIFVTQl9BRERSMF9SWF9BRERSMF9SWCAgICAgICAgICAgICAgICAgVVNCX0FERFIwX1JYX0FERFIwX1JYX01zayAgICAgICAgLyohPCBSZWNlcHRpb24gQnVmZmVyIEFkZHJlc3MgMCAqLw0KDQovKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBVU0JfQUREUjFfUlggcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBVU0JfQUREUjFfUlhfQUREUjFfUlhfUG9zICAgICAgICAgICAgICgxVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0JfQUREUjFfUlhfQUREUjFfUlhfTXNrICAgICAgICAgICAgICgweDdGRkZVIDw8IFVTQl9BRERSMV9SWF9BRERSMV9SWF9Qb3MpIC8qITwgMHgwMDAwRkZGRSAqLw0KI2RlZmluZSBVU0JfQUREUjFfUlhfQUREUjFfUlggICAgICAgICAgICAgICAgIFVTQl9BRERSMV9SWF9BRERSMV9SWF9Nc2sgICAgICAgIC8qITwgUmVjZXB0aW9uIEJ1ZmZlciBBZGRyZXNzIDEgKi8NCg0KLyoqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgVVNCX0FERFIyX1JYIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgVVNCX0FERFIyX1JYX0FERFIyX1JYX1BvcyAgICAgICAgICAgICAoMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNCX0FERFIyX1JYX0FERFIyX1JYX01zayAgICAgICAgICAgICAoMHg3RkZGVSA8PCBVU0JfQUREUjJfUlhfQUREUjJfUlhfUG9zKSAvKiE8IDB4MDAwMEZGRkUgKi8NCiNkZWZpbmUgVVNCX0FERFIyX1JYX0FERFIyX1JYICAgICAgICAgICAgICAgICBVU0JfQUREUjJfUlhfQUREUjJfUlhfTXNrICAgICAgICAvKiE8IFJlY2VwdGlvbiBCdWZmZXIgQWRkcmVzcyAyICovDQoNCi8qKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFVTQl9BRERSM19SWCByZWdpc3RlciAgKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIFVTQl9BRERSM19SWF9BRERSM19SWF9Qb3MgICAgICAgICAgICAgKDFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQl9BRERSM19SWF9BRERSM19SWF9Nc2sgICAgICAgICAgICAgKDB4N0ZGRlUgPDwgVVNCX0FERFIzX1JYX0FERFIzX1JYX1BvcykgLyohPCAweDAwMDBGRkZFICovDQojZGVmaW5lIFVTQl9BRERSM19SWF9BRERSM19SWCAgICAgICAgICAgICAgICAgVVNCX0FERFIzX1JYX0FERFIzX1JYX01zayAgICAgICAgLyohPCBSZWNlcHRpb24gQnVmZmVyIEFkZHJlc3MgMyAqLw0KDQovKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBVU0JfQUREUjRfUlggcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBVU0JfQUREUjRfUlhfQUREUjRfUlhfUG9zICAgICAgICAgICAgICgxVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0JfQUREUjRfUlhfQUREUjRfUlhfTXNrICAgICAgICAgICAgICgweDdGRkZVIDw8IFVTQl9BRERSNF9SWF9BRERSNF9SWF9Qb3MpIC8qITwgMHgwMDAwRkZGRSAqLw0KI2RlZmluZSBVU0JfQUREUjRfUlhfQUREUjRfUlggICAgICAgICAgICAgICAgIFVTQl9BRERSNF9SWF9BRERSNF9SWF9Nc2sgICAgICAgIC8qITwgUmVjZXB0aW9uIEJ1ZmZlciBBZGRyZXNzIDQgKi8NCg0KLyoqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgVVNCX0FERFI1X1JYIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgVVNCX0FERFI1X1JYX0FERFI1X1JYX1BvcyAgICAgICAgICAgICAoMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNCX0FERFI1X1JYX0FERFI1X1JYX01zayAgICAgICAgICAgICAoMHg3RkZGVSA8PCBVU0JfQUREUjVfUlhfQUREUjVfUlhfUG9zKSAvKiE8IDB4MDAwMEZGRkUgKi8NCiNkZWZpbmUgVVNCX0FERFI1X1JYX0FERFI1X1JYICAgICAgICAgICAgICAgICBVU0JfQUREUjVfUlhfQUREUjVfUlhfTXNrICAgICAgICAvKiE8IFJlY2VwdGlvbiBCdWZmZXIgQWRkcmVzcyA1ICovDQoNCi8qKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFVTQl9BRERSNl9SWCByZWdpc3RlciAgKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIFVTQl9BRERSNl9SWF9BRERSNl9SWF9Qb3MgICAgICAgICAgICAgKDFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQl9BRERSNl9SWF9BRERSNl9SWF9Nc2sgICAgICAgICAgICAgKDB4N0ZGRlUgPDwgVVNCX0FERFI2X1JYX0FERFI2X1JYX1BvcykgLyohPCAweDAwMDBGRkZFICovDQojZGVmaW5lIFVTQl9BRERSNl9SWF9BRERSNl9SWCAgICAgICAgICAgICAgICAgVVNCX0FERFI2X1JYX0FERFI2X1JYX01zayAgICAgICAgLyohPCBSZWNlcHRpb24gQnVmZmVyIEFkZHJlc3MgNiAqLw0KDQovKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBVU0JfQUREUjdfUlggcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBVU0JfQUREUjdfUlhfQUREUjdfUlhfUG9zICAgICAgICAgICAgICgxVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0JfQUREUjdfUlhfQUREUjdfUlhfTXNrICAgICAgICAgICAgICgweDdGRkZVIDw8IFVTQl9BRERSN19SWF9BRERSN19SWF9Qb3MpIC8qITwgMHgwMDAwRkZGRSAqLw0KI2RlZmluZSBVU0JfQUREUjdfUlhfQUREUjdfUlggICAgICAgICAgICAgICAgIFVTQl9BRERSN19SWF9BRERSN19SWF9Nc2sgICAgICAgIC8qITwgUmVjZXB0aW9uIEJ1ZmZlciBBZGRyZXNzIDcgKi8NCg0KLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi8NCg0KLyoqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgVVNCX0NPVU5UMF9SWCByZWdpc3RlciAgKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgVVNCX0NPVU5UMF9SWF9DT1VOVDBfUlhfUG9zICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNCX0NPVU5UMF9SWF9DT1VOVDBfUlhfTXNrICAgICAgICAgICAoMHgzRkZVIDw8IFVTQl9DT1VOVDBfUlhfQ09VTlQwX1JYX1BvcykgLyohPCAweDAwMDAwM0ZGICovDQojZGVmaW5lIFVTQl9DT1VOVDBfUlhfQ09VTlQwX1JYICAgICAgICAgICAgICAgVVNCX0NPVU5UMF9SWF9DT1VOVDBfUlhfTXNrICAgICAgLyohPCBSZWNlcHRpb24gQnl0ZSBDb3VudCAqLw0KDQojZGVmaW5lIFVTQl9DT1VOVDBfUlhfTlVNX0JMT0NLX1BvcyAgICAgICAgICAgKDEwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQl9DT1VOVDBfUlhfTlVNX0JMT0NLX01zayAgICAgICAgICAgKDB4MUZVIDw8IFVTQl9DT1VOVDBfUlhfTlVNX0JMT0NLX1BvcykgLyohPCAweDAwMDA3QzAwICovDQojZGVmaW5lIFVTQl9DT1VOVDBfUlhfTlVNX0JMT0NLICAgICAgICAgICAgICAgVVNCX0NPVU5UMF9SWF9OVU1fQkxPQ0tfTXNrICAgICAgLyohPCBOVU1fQkxPQ0tbNDowXSBiaXRzIChOdW1iZXIgb2YgYmxvY2tzKSAqLw0KI2RlZmluZSBVU0JfQ09VTlQwX1JYX05VTV9CTE9DS18wICAgICAgICAgICAgICgweDAxVSA8PCBVU0JfQ09VTlQwX1JYX05VTV9CTE9DS19Qb3MpIC8qITwgMHgwMDAwMDQwMCAqLw0KI2RlZmluZSBVU0JfQ09VTlQwX1JYX05VTV9CTE9DS18xICAgICAgICAgICAgICgweDAyVSA8PCBVU0JfQ09VTlQwX1JYX05VTV9CTE9DS19Qb3MpIC8qITwgMHgwMDAwMDgwMCAqLw0KI2RlZmluZSBVU0JfQ09VTlQwX1JYX05VTV9CTE9DS18yICAgICAgICAgICAgICgweDA0VSA8PCBVU0JfQ09VTlQwX1JYX05VTV9CTE9DS19Qb3MpIC8qITwgMHgwMDAwMTAwMCAqLw0KI2RlZmluZSBVU0JfQ09VTlQwX1JYX05VTV9CTE9DS18zICAgICAgICAgICAgICgweDA4VSA8PCBVU0JfQ09VTlQwX1JYX05VTV9CTE9DS19Qb3MpIC8qITwgMHgwMDAwMjAwMCAqLw0KI2RlZmluZSBVU0JfQ09VTlQwX1JYX05VTV9CTE9DS180ICAgICAgICAgICAgICgweDEwVSA8PCBVU0JfQ09VTlQwX1JYX05VTV9CTE9DS19Qb3MpIC8qITwgMHgwMDAwNDAwMCAqLw0KDQojZGVmaW5lIFVTQl9DT1VOVDBfUlhfQkxTSVpFX1BvcyAgICAgICAgICAgICAgKDE1VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQl9DT1VOVDBfUlhfQkxTSVpFX01zayAgICAgICAgICAgICAgKDB4MVUgPDwgVVNCX0NPVU5UMF9SWF9CTFNJWkVfUG9zKSAvKiE8IDB4MDAwMDgwMDAgKi8NCiNkZWZpbmUgVVNCX0NPVU5UMF9SWF9CTFNJWkUgICAgICAgICAgICAgICAgICBVU0JfQ09VTlQwX1JYX0JMU0laRV9Nc2sgICAgICAgICAvKiE8IEJMb2NrIFNJWkUgKi8NCg0KLyoqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgVVNCX0NPVU5UMV9SWCByZWdpc3RlciAgKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgVVNCX0NPVU5UMV9SWF9DT1VOVDFfUlhfUG9zICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNCX0NPVU5UMV9SWF9DT1VOVDFfUlhfTXNrICAgICAgICAgICAoMHgzRkZVIDw8IFVTQl9DT1VOVDFfUlhfQ09VTlQxX1JYX1BvcykgLyohPCAweDAwMDAwM0ZGICovDQojZGVmaW5lIFVTQl9DT1VOVDFfUlhfQ09VTlQxX1JYICAgICAgICAgICAgICAgVVNCX0NPVU5UMV9SWF9DT1VOVDFfUlhfTXNrICAgICAgLyohPCBSZWNlcHRpb24gQnl0ZSBDb3VudCAqLw0KDQojZGVmaW5lIFVTQl9DT1VOVDFfUlhfTlVNX0JMT0NLX1BvcyAgICAgICAgICAgKDEwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQl9DT1VOVDFfUlhfTlVNX0JMT0NLX01zayAgICAgICAgICAgKDB4MUZVIDw8IFVTQl9DT1VOVDFfUlhfTlVNX0JMT0NLX1BvcykgLyohPCAweDAwMDA3QzAwICovDQojZGVmaW5lIFVTQl9DT1VOVDFfUlhfTlVNX0JMT0NLICAgICAgICAgICAgICAgVVNCX0NPVU5UMV9SWF9OVU1fQkxPQ0tfTXNrICAgICAgLyohPCBOVU1fQkxPQ0tbNDowXSBiaXRzIChOdW1iZXIgb2YgYmxvY2tzKSAqLw0KI2RlZmluZSBVU0JfQ09VTlQxX1JYX05VTV9CTE9DS18wICAgICAgICAgICAgICgweDAxVSA8PCBVU0JfQ09VTlQxX1JYX05VTV9CTE9DS19Qb3MpIC8qITwgMHgwMDAwMDQwMCAqLw0KI2RlZmluZSBVU0JfQ09VTlQxX1JYX05VTV9CTE9DS18xICAgICAgICAgICAgICgweDAyVSA8PCBVU0JfQ09VTlQxX1JYX05VTV9CTE9DS19Qb3MpIC8qITwgMHgwMDAwMDgwMCAqLw0KI2RlZmluZSBVU0JfQ09VTlQxX1JYX05VTV9CTE9DS18yICAgICAgICAgICAgICgweDA0VSA8PCBVU0JfQ09VTlQxX1JYX05VTV9CTE9DS19Qb3MpIC8qITwgMHgwMDAwMTAwMCAqLw0KI2RlZmluZSBVU0JfQ09VTlQxX1JYX05VTV9CTE9DS18zICAgICAgICAgICAgICgweDA4VSA8PCBVU0JfQ09VTlQxX1JYX05VTV9CTE9DS19Qb3MpIC8qITwgMHgwMDAwMjAwMCAqLw0KI2RlZmluZSBVU0JfQ09VTlQxX1JYX05VTV9CTE9DS180ICAgICAgICAgICAgICgweDEwVSA8PCBVU0JfQ09VTlQxX1JYX05VTV9CTE9DS19Qb3MpIC8qITwgMHgwMDAwNDAwMCAqLw0KDQojZGVmaW5lIFVTQl9DT1VOVDFfUlhfQkxTSVpFX1BvcyAgICAgICAgICAgICAgKDE1VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQl9DT1VOVDFfUlhfQkxTSVpFX01zayAgICAgICAgICAgICAgKDB4MVUgPDwgVVNCX0NPVU5UMV9SWF9CTFNJWkVfUG9zKSAvKiE8IDB4MDAwMDgwMDAgKi8NCiNkZWZpbmUgVVNCX0NPVU5UMV9SWF9CTFNJWkUgICAgICAgICAgICAgICAgICBVU0JfQ09VTlQxX1JYX0JMU0laRV9Nc2sgICAgICAgICAvKiE8IEJMb2NrIFNJWkUgKi8NCg0KLyoqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgVVNCX0NPVU5UMl9SWCByZWdpc3RlciAgKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgVVNCX0NPVU5UMl9SWF9DT1VOVDJfUlhfUG9zICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNCX0NPVU5UMl9SWF9DT1VOVDJfUlhfTXNrICAgICAgICAgICAoMHgzRkZVIDw8IFVTQl9DT1VOVDJfUlhfQ09VTlQyX1JYX1BvcykgLyohPCAweDAwMDAwM0ZGICovDQojZGVmaW5lIFVTQl9DT1VOVDJfUlhfQ09VTlQyX1JYICAgICAgICAgICAgICAgVVNCX0NPVU5UMl9SWF9DT1VOVDJfUlhfTXNrICAgICAgLyohPCBSZWNlcHRpb24gQnl0ZSBDb3VudCAqLw0KDQojZGVmaW5lIFVTQl9DT1VOVDJfUlhfTlVNX0JMT0NLX1BvcyAgICAgICAgICAgKDEwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQl9DT1VOVDJfUlhfTlVNX0JMT0NLX01zayAgICAgICAgICAgKDB4MUZVIDw8IFVTQl9DT1VOVDJfUlhfTlVNX0JMT0NLX1BvcykgLyohPCAweDAwMDA3QzAwICovDQojZGVmaW5lIFVTQl9DT1VOVDJfUlhfTlVNX0JMT0NLICAgICAgICAgICAgICAgVVNCX0NPVU5UMl9SWF9OVU1fQkxPQ0tfTXNrICAgICAgLyohPCBOVU1fQkxPQ0tbNDowXSBiaXRzIChOdW1iZXIgb2YgYmxvY2tzKSAqLw0KI2RlZmluZSBVU0JfQ09VTlQyX1JYX05VTV9CTE9DS18wICAgICAgICAgICAgICgweDAxVSA8PCBVU0JfQ09VTlQyX1JYX05VTV9CTE9DS19Qb3MpIC8qITwgMHgwMDAwMDQwMCAqLw0KI2RlZmluZSBVU0JfQ09VTlQyX1JYX05VTV9CTE9DS18xICAgICAgICAgICAgICgweDAyVSA8PCBVU0JfQ09VTlQyX1JYX05VTV9CTE9DS19Qb3MpIC8qITwgMHgwMDAwMDgwMCAqLw0KI2RlZmluZSBVU0JfQ09VTlQyX1JYX05VTV9CTE9DS18yICAgICAgICAgICAgICgweDA0VSA8PCBVU0JfQ09VTlQyX1JYX05VTV9CTE9DS19Qb3MpIC8qITwgMHgwMDAwMTAwMCAqLw0KI2RlZmluZSBVU0JfQ09VTlQyX1JYX05VTV9CTE9DS18zICAgICAgICAgICAgICgweDA4VSA8PCBVU0JfQ09VTlQyX1JYX05VTV9CTE9DS19Qb3MpIC8qITwgMHgwMDAwMjAwMCAqLw0KI2RlZmluZSBVU0JfQ09VTlQyX1JYX05VTV9CTE9DS180ICAgICAgICAgICAgICgweDEwVSA8PCBVU0JfQ09VTlQyX1JYX05VTV9CTE9DS19Qb3MpIC8qITwgMHgwMDAwNDAwMCAqLw0KDQojZGVmaW5lIFVTQl9DT1VOVDJfUlhfQkxTSVpFX1BvcyAgICAgICAgICAgICAgKDE1VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQl9DT1VOVDJfUlhfQkxTSVpFX01zayAgICAgICAgICAgICAgKDB4MVUgPDwgVVNCX0NPVU5UMl9SWF9CTFNJWkVfUG9zKSAvKiE8IDB4MDAwMDgwMDAgKi8NCiNkZWZpbmUgVVNCX0NPVU5UMl9SWF9CTFNJWkUgICAgICAgICAgICAgICAgICBVU0JfQ09VTlQyX1JYX0JMU0laRV9Nc2sgICAgICAgICAvKiE8IEJMb2NrIFNJWkUgKi8NCg0KLyoqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgVVNCX0NPVU5UM19SWCByZWdpc3RlciAgKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgVVNCX0NPVU5UM19SWF9DT1VOVDNfUlhfUG9zICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNCX0NPVU5UM19SWF9DT1VOVDNfUlhfTXNrICAgICAgICAgICAoMHgzRkZVIDw8IFVTQl9DT1VOVDNfUlhfQ09VTlQzX1JYX1BvcykgLyohPCAweDAwMDAwM0ZGICovDQojZGVmaW5lIFVTQl9DT1VOVDNfUlhfQ09VTlQzX1JYICAgICAgICAgICAgICAgVVNCX0NPVU5UM19SWF9DT1VOVDNfUlhfTXNrICAgICAgLyohPCBSZWNlcHRpb24gQnl0ZSBDb3VudCAqLw0KDQojZGVmaW5lIFVTQl9DT1VOVDNfUlhfTlVNX0JMT0NLX1BvcyAgICAgICAgICAgKDEwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQl9DT1VOVDNfUlhfTlVNX0JMT0NLX01zayAgICAgICAgICAgKDB4MUZVIDw8IFVTQl9DT1VOVDNfUlhfTlVNX0JMT0NLX1BvcykgLyohPCAweDAwMDA3QzAwICovDQojZGVmaW5lIFVTQl9DT1VOVDNfUlhfTlVNX0JMT0NLICAgICAgICAgICAgICAgVVNCX0NPVU5UM19SWF9OVU1fQkxPQ0tfTXNrICAgICAgLyohPCBOVU1fQkxPQ0tbNDowXSBiaXRzIChOdW1iZXIgb2YgYmxvY2tzKSAqLw0KI2RlZmluZSBVU0JfQ09VTlQzX1JYX05VTV9CTE9DS18wICAgICAgICAgICAgICgweDAxVSA8PCBVU0JfQ09VTlQzX1JYX05VTV9CTE9DS19Qb3MpIC8qITwgMHgwMDAwMDQwMCAqLw0KI2RlZmluZSBVU0JfQ09VTlQzX1JYX05VTV9CTE9DS18xICAgICAgICAgICAgICgweDAyVSA8PCBVU0JfQ09VTlQzX1JYX05VTV9CTE9DS19Qb3MpIC8qITwgMHgwMDAwMDgwMCAqLw0KI2RlZmluZSBVU0JfQ09VTlQzX1JYX05VTV9CTE9DS18yICAgICAgICAgICAgICgweDA0VSA8PCBVU0JfQ09VTlQzX1JYX05VTV9CTE9DS19Qb3MpIC8qITwgMHgwMDAwMTAwMCAqLw0KI2RlZmluZSBVU0JfQ09VTlQzX1JYX05VTV9CTE9DS18zICAgICAgICAgICAgICgweDA4VSA8PCBVU0JfQ09VTlQzX1JYX05VTV9CTE9DS19Qb3MpIC8qITwgMHgwMDAwMjAwMCAqLw0KI2RlZmluZSBVU0JfQ09VTlQzX1JYX05VTV9CTE9DS180ICAgICAgICAgICAgICgweDEwVSA8PCBVU0JfQ09VTlQzX1JYX05VTV9CTE9DS19Qb3MpIC8qITwgMHgwMDAwNDAwMCAqLw0KDQojZGVmaW5lIFVTQl9DT1VOVDNfUlhfQkxTSVpFX1BvcyAgICAgICAgICAgICAgKDE1VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQl9DT1VOVDNfUlhfQkxTSVpFX01zayAgICAgICAgICAgICAgKDB4MVUgPDwgVVNCX0NPVU5UM19SWF9CTFNJWkVfUG9zKSAvKiE8IDB4MDAwMDgwMDAgKi8NCiNkZWZpbmUgVVNCX0NPVU5UM19SWF9CTFNJWkUgICAgICAgICAgICAgICAgICBVU0JfQ09VTlQzX1JYX0JMU0laRV9Nc2sgICAgICAgICAvKiE8IEJMb2NrIFNJWkUgKi8NCg0KLyoqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgVVNCX0NPVU5UNF9SWCByZWdpc3RlciAgKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgVVNCX0NPVU5UNF9SWF9DT1VOVDRfUlhfUG9zICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNCX0NPVU5UNF9SWF9DT1VOVDRfUlhfTXNrICAgICAgICAgICAoMHgzRkZVIDw8IFVTQl9DT1VOVDRfUlhfQ09VTlQ0X1JYX1BvcykgLyohPCAweDAwMDAwM0ZGICovDQojZGVmaW5lIFVTQl9DT1VOVDRfUlhfQ09VTlQ0X1JYICAgICAgICAgICAgICAgVVNCX0NPVU5UNF9SWF9DT1VOVDRfUlhfTXNrICAgICAgLyohPCBSZWNlcHRpb24gQnl0ZSBDb3VudCAqLw0KDQojZGVmaW5lIFVTQl9DT1VOVDRfUlhfTlVNX0JMT0NLX1BvcyAgICAgICAgICAgKDEwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQl9DT1VOVDRfUlhfTlVNX0JMT0NLX01zayAgICAgICAgICAgKDB4MUZVIDw8IFVTQl9DT1VOVDRfUlhfTlVNX0JMT0NLX1BvcykgLyohPCAweDAwMDA3QzAwICovDQojZGVmaW5lIFVTQl9DT1VOVDRfUlhfTlVNX0JMT0NLICAgICAgICAgICAgICAgVVNCX0NPVU5UNF9SWF9OVU1fQkxPQ0tfTXNrICAgICAgLyohPCBOVU1fQkxPQ0tbNDowXSBiaXRzIChOdW1iZXIgb2YgYmxvY2tzKSAqLw0KI2RlZmluZSBVU0JfQ09VTlQ0X1JYX05VTV9CTE9DS18wICAgICAgICAgICAgICgweDAxVSA8PCBVU0JfQ09VTlQ0X1JYX05VTV9CTE9DS19Qb3MpIC8qITwgMHgwMDAwMDQwMCAqLw0KI2RlZmluZSBVU0JfQ09VTlQ0X1JYX05VTV9CTE9DS18xICAgICAgICAgICAgICgweDAyVSA8PCBVU0JfQ09VTlQ0X1JYX05VTV9CTE9DS19Qb3MpIC8qITwgMHgwMDAwMDgwMCAqLw0KI2RlZmluZSBVU0JfQ09VTlQ0X1JYX05VTV9CTE9DS18yICAgICAgICAgICAgICgweDA0VSA8PCBVU0JfQ09VTlQ0X1JYX05VTV9CTE9DS19Qb3MpIC8qITwgMHgwMDAwMTAwMCAqLw0KI2RlZmluZSBVU0JfQ09VTlQ0X1JYX05VTV9CTE9DS18zICAgICAgICAgICAgICgweDA4VSA8PCBVU0JfQ09VTlQ0X1JYX05VTV9CTE9DS19Qb3MpIC8qITwgMHgwMDAwMjAwMCAqLw0KI2RlZmluZSBVU0JfQ09VTlQ0X1JYX05VTV9CTE9DS180ICAgICAgICAgICAgICgweDEwVSA8PCBVU0JfQ09VTlQ0X1JYX05VTV9CTE9DS19Qb3MpIC8qITwgMHgwMDAwNDAwMCAqLw0KDQojZGVmaW5lIFVTQl9DT1VOVDRfUlhfQkxTSVpFX1BvcyAgICAgICAgICAgICAgKDE1VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQl9DT1VOVDRfUlhfQkxTSVpFX01zayAgICAgICAgICAgICAgKDB4MVUgPDwgVVNCX0NPVU5UNF9SWF9CTFNJWkVfUG9zKSAvKiE8IDB4MDAwMDgwMDAgKi8NCiNkZWZpbmUgVVNCX0NPVU5UNF9SWF9CTFNJWkUgICAgICAgICAgICAgICAgICBVU0JfQ09VTlQ0X1JYX0JMU0laRV9Nc2sgICAgICAgICAvKiE8IEJMb2NrIFNJWkUgKi8NCg0KLyoqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgVVNCX0NPVU5UNV9SWCByZWdpc3RlciAgKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgVVNCX0NPVU5UNV9SWF9DT1VOVDVfUlhfUG9zICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNCX0NPVU5UNV9SWF9DT1VOVDVfUlhfTXNrICAgICAgICAgICAoMHgzRkZVIDw8IFVTQl9DT1VOVDVfUlhfQ09VTlQ1X1JYX1BvcykgLyohPCAweDAwMDAwM0ZGICovDQojZGVmaW5lIFVTQl9DT1VOVDVfUlhfQ09VTlQ1X1JYICAgICAgICAgICAgICAgVVNCX0NPVU5UNV9SWF9DT1VOVDVfUlhfTXNrICAgICAgLyohPCBSZWNlcHRpb24gQnl0ZSBDb3VudCAqLw0KDQojZGVmaW5lIFVTQl9DT1VOVDVfUlhfTlVNX0JMT0NLX1BvcyAgICAgICAgICAgKDEwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQl9DT1VOVDVfUlhfTlVNX0JMT0NLX01zayAgICAgICAgICAgKDB4MUZVIDw8IFVTQl9DT1VOVDVfUlhfTlVNX0JMT0NLX1BvcykgLyohPCAweDAwMDA3QzAwICovDQojZGVmaW5lIFVTQl9DT1VOVDVfUlhfTlVNX0JMT0NLICAgICAgICAgICAgICAgVVNCX0NPVU5UNV9SWF9OVU1fQkxPQ0tfTXNrICAgICAgLyohPCBOVU1fQkxPQ0tbNDowXSBiaXRzIChOdW1iZXIgb2YgYmxvY2tzKSAqLw0KI2RlZmluZSBVU0JfQ09VTlQ1X1JYX05VTV9CTE9DS18wICAgICAgICAgICAgICgweDAxVSA8PCBVU0JfQ09VTlQ1X1JYX05VTV9CTE9DS19Qb3MpIC8qITwgMHgwMDAwMDQwMCAqLw0KI2RlZmluZSBVU0JfQ09VTlQ1X1JYX05VTV9CTE9DS18xICAgICAgICAgICAgICgweDAyVSA8PCBVU0JfQ09VTlQ1X1JYX05VTV9CTE9DS19Qb3MpIC8qITwgMHgwMDAwMDgwMCAqLw0KI2RlZmluZSBVU0JfQ09VTlQ1X1JYX05VTV9CTE9DS18yICAgICAgICAgICAgICgweDA0VSA8PCBVU0JfQ09VTlQ1X1JYX05VTV9CTE9DS19Qb3MpIC8qITwgMHgwMDAwMTAwMCAqLw0KI2RlZmluZSBVU0JfQ09VTlQ1X1JYX05VTV9CTE9DS18zICAgICAgICAgICAgICgweDA4VSA8PCBVU0JfQ09VTlQ1X1JYX05VTV9CTE9DS19Qb3MpIC8qITwgMHgwMDAwMjAwMCAqLw0KI2RlZmluZSBVU0JfQ09VTlQ1X1JYX05VTV9CTE9DS180ICAgICAgICAgICAgICgweDEwVSA8PCBVU0JfQ09VTlQ1X1JYX05VTV9CTE9DS19Qb3MpIC8qITwgMHgwMDAwNDAwMCAqLw0KDQojZGVmaW5lIFVTQl9DT1VOVDVfUlhfQkxTSVpFX1BvcyAgICAgICAgICAgICAgKDE1VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQl9DT1VOVDVfUlhfQkxTSVpFX01zayAgICAgICAgICAgICAgKDB4MVUgPDwgVVNCX0NPVU5UNV9SWF9CTFNJWkVfUG9zKSAvKiE8IDB4MDAwMDgwMDAgKi8NCiNkZWZpbmUgVVNCX0NPVU5UNV9SWF9CTFNJWkUgICAgICAgICAgICAgICAgICBVU0JfQ09VTlQ1X1JYX0JMU0laRV9Nc2sgICAgICAgICAvKiE8IEJMb2NrIFNJWkUgKi8NCg0KLyoqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgVVNCX0NPVU5UNl9SWCByZWdpc3RlciAgKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgVVNCX0NPVU5UNl9SWF9DT1VOVDZfUlhfUG9zICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNCX0NPVU5UNl9SWF9DT1VOVDZfUlhfTXNrICAgICAgICAgICAoMHgzRkZVIDw8IFVTQl9DT1VOVDZfUlhfQ09VTlQ2X1JYX1BvcykgLyohPCAweDAwMDAwM0ZGICovDQojZGVmaW5lIFVTQl9DT1VOVDZfUlhfQ09VTlQ2X1JYICAgICAgICAgICAgICAgVVNCX0NPVU5UNl9SWF9DT1VOVDZfUlhfTXNrICAgICAgLyohPCBSZWNlcHRpb24gQnl0ZSBDb3VudCAqLw0KDQojZGVmaW5lIFVTQl9DT1VOVDZfUlhfTlVNX0JMT0NLX1BvcyAgICAgICAgICAgKDEwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQl9DT1VOVDZfUlhfTlVNX0JMT0NLX01zayAgICAgICAgICAgKDB4MUZVIDw8IFVTQl9DT1VOVDZfUlhfTlVNX0JMT0NLX1BvcykgLyohPCAweDAwMDA3QzAwICovDQojZGVmaW5lIFVTQl9DT1VOVDZfUlhfTlVNX0JMT0NLICAgICAgICAgICAgICAgVVNCX0NPVU5UNl9SWF9OVU1fQkxPQ0tfTXNrICAgICAgLyohPCBOVU1fQkxPQ0tbNDowXSBiaXRzIChOdW1iZXIgb2YgYmxvY2tzKSAqLw0KI2RlZmluZSBVU0JfQ09VTlQ2X1JYX05VTV9CTE9DS18wICAgICAgICAgICAgICgweDAxVSA8PCBVU0JfQ09VTlQ2X1JYX05VTV9CTE9DS19Qb3MpIC8qITwgMHgwMDAwMDQwMCAqLw0KI2RlZmluZSBVU0JfQ09VTlQ2X1JYX05VTV9CTE9DS18xICAgICAgICAgICAgICgweDAyVSA8PCBVU0JfQ09VTlQ2X1JYX05VTV9CTE9DS19Qb3MpIC8qITwgMHgwMDAwMDgwMCAqLw0KI2RlZmluZSBVU0JfQ09VTlQ2X1JYX05VTV9CTE9DS18yICAgICAgICAgICAgICgweDA0VSA8PCBVU0JfQ09VTlQ2X1JYX05VTV9CTE9DS19Qb3MpIC8qITwgMHgwMDAwMTAwMCAqLw0KI2RlZmluZSBVU0JfQ09VTlQ2X1JYX05VTV9CTE9DS18zICAgICAgICAgICAgICgweDA4VSA8PCBVU0JfQ09VTlQ2X1JYX05VTV9CTE9DS19Qb3MpIC8qITwgMHgwMDAwMjAwMCAqLw0KI2RlZmluZSBVU0JfQ09VTlQ2X1JYX05VTV9CTE9DS180ICAgICAgICAgICAgICgweDEwVSA8PCBVU0JfQ09VTlQ2X1JYX05VTV9CTE9DS19Qb3MpIC8qITwgMHgwMDAwNDAwMCAqLw0KDQojZGVmaW5lIFVTQl9DT1VOVDZfUlhfQkxTSVpFX1BvcyAgICAgICAgICAgICAgKDE1VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQl9DT1VOVDZfUlhfQkxTSVpFX01zayAgICAgICAgICAgICAgKDB4MVUgPDwgVVNCX0NPVU5UNl9SWF9CTFNJWkVfUG9zKSAvKiE8IDB4MDAwMDgwMDAgKi8NCiNkZWZpbmUgVVNCX0NPVU5UNl9SWF9CTFNJWkUgICAgICAgICAgICAgICAgICBVU0JfQ09VTlQ2X1JYX0JMU0laRV9Nc2sgICAgICAgICAvKiE8IEJMb2NrIFNJWkUgKi8NCg0KLyoqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgVVNCX0NPVU5UN19SWCByZWdpc3RlciAgKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgVVNCX0NPVU5UN19SWF9DT1VOVDdfUlhfUG9zICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNCX0NPVU5UN19SWF9DT1VOVDdfUlhfTXNrICAgICAgICAgICAoMHgzRkZVIDw8IFVTQl9DT1VOVDdfUlhfQ09VTlQ3X1JYX1BvcykgLyohPCAweDAwMDAwM0ZGICovDQojZGVmaW5lIFVTQl9DT1VOVDdfUlhfQ09VTlQ3X1JYICAgICAgICAgICAgICAgVVNCX0NPVU5UN19SWF9DT1VOVDdfUlhfTXNrICAgICAgLyohPCBSZWNlcHRpb24gQnl0ZSBDb3VudCAqLw0KDQojZGVmaW5lIFVTQl9DT1VOVDdfUlhfTlVNX0JMT0NLX1BvcyAgICAgICAgICAgKDEwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQl9DT1VOVDdfUlhfTlVNX0JMT0NLX01zayAgICAgICAgICAgKDB4MUZVIDw8IFVTQl9DT1VOVDdfUlhfTlVNX0JMT0NLX1BvcykgLyohPCAweDAwMDA3QzAwICovDQojZGVmaW5lIFVTQl9DT1VOVDdfUlhfTlVNX0JMT0NLICAgICAgICAgICAgICAgVVNCX0NPVU5UN19SWF9OVU1fQkxPQ0tfTXNrICAgICAgLyohPCBOVU1fQkxPQ0tbNDowXSBiaXRzIChOdW1iZXIgb2YgYmxvY2tzKSAqLw0KI2RlZmluZSBVU0JfQ09VTlQ3X1JYX05VTV9CTE9DS18wICAgICAgICAgICAgICgweDAxVSA8PCBVU0JfQ09VTlQ3X1JYX05VTV9CTE9DS19Qb3MpIC8qITwgMHgwMDAwMDQwMCAqLw0KI2RlZmluZSBVU0JfQ09VTlQ3X1JYX05VTV9CTE9DS18xICAgICAgICAgICAgICgweDAyVSA8PCBVU0JfQ09VTlQ3X1JYX05VTV9CTE9DS19Qb3MpIC8qITwgMHgwMDAwMDgwMCAqLw0KI2RlZmluZSBVU0JfQ09VTlQ3X1JYX05VTV9CTE9DS18yICAgICAgICAgICAgICgweDA0VSA8PCBVU0JfQ09VTlQ3X1JYX05VTV9CTE9DS19Qb3MpIC8qITwgMHgwMDAwMTAwMCAqLw0KI2RlZmluZSBVU0JfQ09VTlQ3X1JYX05VTV9CTE9DS18zICAgICAgICAgICAgICgweDA4VSA8PCBVU0JfQ09VTlQ3X1JYX05VTV9CTE9DS19Qb3MpIC8qITwgMHgwMDAwMjAwMCAqLw0KI2RlZmluZSBVU0JfQ09VTlQ3X1JYX05VTV9CTE9DS180ICAgICAgICAgICAgICgweDEwVSA8PCBVU0JfQ09VTlQ3X1JYX05VTV9CTE9DS19Qb3MpIC8qITwgMHgwMDAwNDAwMCAqLw0KDQojZGVmaW5lIFVTQl9DT1VOVDdfUlhfQkxTSVpFX1BvcyAgICAgICAgICAgICAgKDE1VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQl9DT1VOVDdfUlhfQkxTSVpFX01zayAgICAgICAgICAgICAgKDB4MVUgPDwgVVNCX0NPVU5UN19SWF9CTFNJWkVfUG9zKSAvKiE8IDB4MDAwMDgwMDAgKi8NCiNkZWZpbmUgVVNCX0NPVU5UN19SWF9CTFNJWkUgICAgICAgICAgICAgICAgICBVU0JfQ09VTlQ3X1JYX0JMU0laRV9Nc2sgICAgICAgICAvKiE8IEJMb2NrIFNJWkUgKi8NCg0KLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi8NCg0KLyoqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBVU0JfQ09VTlQwX1JYXzAgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKi8NCiNkZWZpbmUgVVNCX0NPVU5UMF9SWF8wX0NPVU5UMF9SWF8wICAgICAgICAgICAoMHgwMDAwMDNGRlUpICAgICAgICAgICAgICAgICAgICAvKiE8IFJlY2VwdGlvbiBCeXRlIENvdW50IChsb3cpICovDQoNCiNkZWZpbmUgVVNCX0NPVU5UMF9SWF8wX05VTV9CTE9DS18wICAgICAgICAgICAoMHgwMDAwN0MwMFUpICAgICAgICAgICAgICAgICAgICAvKiE8IE5VTV9CTE9DS18wWzQ6MF0gYml0cyAoTnVtYmVyIG9mIGJsb2NrcykgKGxvdykgKi8NCiNkZWZpbmUgVVNCX0NPVU5UMF9SWF8wX05VTV9CTE9DS18wXzAgICAgICAgICAoMHgwMDAwMDQwMFUpICAgICAgICAgICAgICAgICAgICAvKiE8IEJpdCAwICovDQojZGVmaW5lIFVTQl9DT1VOVDBfUlhfMF9OVU1fQkxPQ0tfMF8xICAgICAgICAgKDB4MDAwMDA4MDBVKSAgICAgICAgICAgICAgICAgICAgLyohPCBCaXQgMSAqLw0KI2RlZmluZSBVU0JfQ09VTlQwX1JYXzBfTlVNX0JMT0NLXzBfMiAgICAgICAgICgweDAwMDAxMDAwVSkgICAgICAgICAgICAgICAgICAgIC8qITwgQml0IDIgKi8NCiNkZWZpbmUgVVNCX0NPVU5UMF9SWF8wX05VTV9CTE9DS18wXzMgICAgICAgICAoMHgwMDAwMjAwMFUpICAgICAgICAgICAgICAgICAgICAvKiE8IEJpdCAzICovDQojZGVmaW5lIFVTQl9DT1VOVDBfUlhfMF9OVU1fQkxPQ0tfMF80ICAgICAgICAgKDB4MDAwMDQwMDBVKSAgICAgICAgICAgICAgICAgICAgLyohPCBCaXQgNCAqLw0KDQojZGVmaW5lIFVTQl9DT1VOVDBfUlhfMF9CTFNJWkVfMCAgICAgICAgICAgICAgKDB4MDAwMDgwMDBVKSAgICAgICAgICAgICAgICAgICAgLyohPCBCTG9jayBTSVpFIChsb3cpICovDQoNCi8qKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgVVNCX0NPVU5UMF9SWF8xIHJlZ2lzdGVyICAqKioqKioqKioqKioqKiovDQojZGVmaW5lIFVTQl9DT1VOVDBfUlhfMV9DT1VOVDBfUlhfMSAgICAgICAgICAgKDB4MDNGRjAwMDBVKSAgICAgICAgICAgICAgICAgICAgLyohPCBSZWNlcHRpb24gQnl0ZSBDb3VudCAoaGlnaCkgKi8NCg0KI2RlZmluZSBVU0JfQ09VTlQwX1JYXzFfTlVNX0JMT0NLXzEgICAgICAgICAgICgweDdDMDAwMDAwVSkgICAgICAgICAgICAgICAgICAgIC8qITwgTlVNX0JMT0NLXzFbNDowXSBiaXRzIChOdW1iZXIgb2YgYmxvY2tzKSAoaGlnaCkgKi8NCiNkZWZpbmUgVVNCX0NPVU5UMF9SWF8xX05VTV9CTE9DS18xXzAgICAgICAgICAoMHgwNDAwMDAwMFUpICAgICAgICAgICAgICAgICAgICAvKiE8IEJpdCAxICovDQojZGVmaW5lIFVTQl9DT1VOVDBfUlhfMV9OVU1fQkxPQ0tfMV8xICAgICAgICAgKDB4MDgwMDAwMDBVKSAgICAgICAgICAgICAgICAgICAgLyohPCBCaXQgMSAqLw0KI2RlZmluZSBVU0JfQ09VTlQwX1JYXzFfTlVNX0JMT0NLXzFfMiAgICAgICAgICgweDEwMDAwMDAwVSkgICAgICAgICAgICAgICAgICAgIC8qITwgQml0IDIgKi8NCiNkZWZpbmUgVVNCX0NPVU5UMF9SWF8xX05VTV9CTE9DS18xXzMgICAgICAgICAoMHgyMDAwMDAwMFUpICAgICAgICAgICAgICAgICAgICAvKiE8IEJpdCAzICovDQojZGVmaW5lIFVTQl9DT1VOVDBfUlhfMV9OVU1fQkxPQ0tfMV80ICAgICAgICAgKDB4NDAwMDAwMDBVKSAgICAgICAgICAgICAgICAgICAgLyohPCBCaXQgNCAqLw0KDQojZGVmaW5lIFVTQl9DT1VOVDBfUlhfMV9CTFNJWkVfMSAgICAgICAgICAgICAgKDB4ODAwMDAwMDBVKSAgICAgICAgICAgICAgICAgICAgLyohPCBCTG9jayBTSVpFIChoaWdoKSAqLw0KDQovKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFVTQl9DT1VOVDFfUlhfMCByZWdpc3RlciAgKioqKioqKioqKioqKioqLw0KI2RlZmluZSBVU0JfQ09VTlQxX1JYXzBfQ09VTlQxX1JYXzAgICAgICAgICAgICgweDAwMDAwM0ZGVSkgICAgICAgICAgICAgICAgICAgIC8qITwgUmVjZXB0aW9uIEJ5dGUgQ291bnQgKGxvdykgKi8NCg0KI2RlZmluZSBVU0JfQ09VTlQxX1JYXzBfTlVNX0JMT0NLXzAgICAgICAgICAgICgweDAwMDA3QzAwVSkgICAgICAgICAgICAgICAgICAgIC8qITwgTlVNX0JMT0NLXzBbNDowXSBiaXRzIChOdW1iZXIgb2YgYmxvY2tzKSAobG93KSAqLw0KI2RlZmluZSBVU0JfQ09VTlQxX1JYXzBfTlVNX0JMT0NLXzBfMCAgICAgICAgICgweDAwMDAwNDAwVSkgICAgICAgICAgICAgICAgICAgIC8qITwgQml0IDAgKi8NCiNkZWZpbmUgVVNCX0NPVU5UMV9SWF8wX05VTV9CTE9DS18wXzEgICAgICAgICAoMHgwMDAwMDgwMFUpICAgICAgICAgICAgICAgICAgICAvKiE8IEJpdCAxICovDQojZGVmaW5lIFVTQl9DT1VOVDFfUlhfMF9OVU1fQkxPQ0tfMF8yICAgICAgICAgKDB4MDAwMDEwMDBVKSAgICAgICAgICAgICAgICAgICAgLyohPCBCaXQgMiAqLw0KI2RlZmluZSBVU0JfQ09VTlQxX1JYXzBfTlVNX0JMT0NLXzBfMyAgICAgICAgICgweDAwMDAyMDAwVSkgICAgICAgICAgICAgICAgICAgIC8qITwgQml0IDMgKi8NCiNkZWZpbmUgVVNCX0NPVU5UMV9SWF8wX05VTV9CTE9DS18wXzQgICAgICAgICAoMHgwMDAwNDAwMFUpICAgICAgICAgICAgICAgICAgICAvKiE8IEJpdCA0ICovDQoNCiNkZWZpbmUgVVNCX0NPVU5UMV9SWF8wX0JMU0laRV8wICAgICAgICAgICAgICAoMHgwMDAwODAwMFUpICAgICAgICAgICAgICAgICAgICAvKiE8IEJMb2NrIFNJWkUgKGxvdykgKi8NCg0KLyoqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBVU0JfQ09VTlQxX1JYXzEgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKi8NCiNkZWZpbmUgVVNCX0NPVU5UMV9SWF8xX0NPVU5UMV9SWF8xICAgICAgICAgICAoMHgwM0ZGMDAwMFUpICAgICAgICAgICAgICAgICAgICAvKiE8IFJlY2VwdGlvbiBCeXRlIENvdW50IChoaWdoKSAqLw0KDQojZGVmaW5lIFVTQl9DT1VOVDFfUlhfMV9OVU1fQkxPQ0tfMSAgICAgICAgICAgKDB4N0MwMDAwMDBVKSAgICAgICAgICAgICAgICAgICAgLyohPCBOVU1fQkxPQ0tfMVs0OjBdIGJpdHMgKE51bWJlciBvZiBibG9ja3MpIChoaWdoKSAqLw0KI2RlZmluZSBVU0JfQ09VTlQxX1JYXzFfTlVNX0JMT0NLXzFfMCAgICAgICAgICgweDA0MDAwMDAwVSkgICAgICAgICAgICAgICAgICAgIC8qITwgQml0IDAgKi8NCiNkZWZpbmUgVVNCX0NPVU5UMV9SWF8xX05VTV9CTE9DS18xXzEgICAgICAgICAoMHgwODAwMDAwMFUpICAgICAgICAgICAgICAgICAgICAvKiE8IEJpdCAxICovDQojZGVmaW5lIFVTQl9DT1VOVDFfUlhfMV9OVU1fQkxPQ0tfMV8yICAgICAgICAgKDB4MTAwMDAwMDBVKSAgICAgICAgICAgICAgICAgICAgLyohPCBCaXQgMiAqLw0KI2RlZmluZSBVU0JfQ09VTlQxX1JYXzFfTlVNX0JMT0NLXzFfMyAgICAgICAgICgweDIwMDAwMDAwVSkgICAgICAgICAgICAgICAgICAgIC8qITwgQml0IDMgKi8NCiNkZWZpbmUgVVNCX0NPVU5UMV9SWF8xX05VTV9CTE9DS18xXzQgICAgICAgICAoMHg0MDAwMDAwMFUpICAgICAgICAgICAgICAgICAgICAvKiE8IEJpdCA0ICovDQoNCiNkZWZpbmUgVVNCX0NPVU5UMV9SWF8xX0JMU0laRV8xICAgICAgICAgICAgICAoMHg4MDAwMDAwMFUpICAgICAgICAgICAgICAgICAgICAvKiE8IEJMb2NrIFNJWkUgKGhpZ2gpICovDQoNCi8qKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgVVNCX0NPVU5UMl9SWF8wIHJlZ2lzdGVyICAqKioqKioqKioqKioqKiovDQojZGVmaW5lIFVTQl9DT1VOVDJfUlhfMF9DT1VOVDJfUlhfMCAgICAgICAgICAgKDB4MDAwMDAzRkZVKSAgICAgICAgICAgICAgICAgICAgLyohPCBSZWNlcHRpb24gQnl0ZSBDb3VudCAobG93KSAqLw0KDQojZGVmaW5lIFVTQl9DT1VOVDJfUlhfMF9OVU1fQkxPQ0tfMCAgICAgICAgICAgKDB4MDAwMDdDMDBVKSAgICAgICAgICAgICAgICAgICAgLyohPCBOVU1fQkxPQ0tfMFs0OjBdIGJpdHMgKE51bWJlciBvZiBibG9ja3MpIChsb3cpICovDQojZGVmaW5lIFVTQl9DT1VOVDJfUlhfMF9OVU1fQkxPQ0tfMF8wICAgICAgICAgKDB4MDAwMDA0MDBVKSAgICAgICAgICAgICAgICAgICAgLyohPCBCaXQgMCAqLw0KI2RlZmluZSBVU0JfQ09VTlQyX1JYXzBfTlVNX0JMT0NLXzBfMSAgICAgICAgICgweDAwMDAwODAwVSkgICAgICAgICAgICAgICAgICAgIC8qITwgQml0IDEgKi8NCiNkZWZpbmUgVVNCX0NPVU5UMl9SWF8wX05VTV9CTE9DS18wXzIgICAgICAgICAoMHgwMDAwMTAwMFUpICAgICAgICAgICAgICAgICAgICAvKiE8IEJpdCAyICovDQojZGVmaW5lIFVTQl9DT1VOVDJfUlhfMF9OVU1fQkxPQ0tfMF8zICAgICAgICAgKDB4MDAwMDIwMDBVKSAgICAgICAgICAgICAgICAgICAgLyohPCBCaXQgMyAqLw0KI2RlZmluZSBVU0JfQ09VTlQyX1JYXzBfTlVNX0JMT0NLXzBfNCAgICAgICAgICgweDAwMDA0MDAwVSkgICAgICAgICAgICAgICAgICAgIC8qITwgQml0IDQgKi8NCg0KI2RlZmluZSBVU0JfQ09VTlQyX1JYXzBfQkxTSVpFXzAgICAgICAgICAgICAgICgweDAwMDA4MDAwVSkgICAgICAgICAgICAgICAgICAgIC8qITwgQkxvY2sgU0laRSAobG93KSAqLw0KDQovKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFVTQl9DT1VOVDJfUlhfMSByZWdpc3RlciAgKioqKioqKioqKioqKioqLw0KI2RlZmluZSBVU0JfQ09VTlQyX1JYXzFfQ09VTlQyX1JYXzEgICAgICAgICAgICgweDAzRkYwMDAwVSkgICAgICAgICAgICAgICAgICAgIC8qITwgUmVjZXB0aW9uIEJ5dGUgQ291bnQgKGhpZ2gpICovDQoNCiNkZWZpbmUgVVNCX0NPVU5UMl9SWF8xX05VTV9CTE9DS18xICAgICAgICAgICAoMHg3QzAwMDAwMFUpICAgICAgICAgICAgICAgICAgICAvKiE8IE5VTV9CTE9DS18xWzQ6MF0gYml0cyAoTnVtYmVyIG9mIGJsb2NrcykgKGhpZ2gpICovDQojZGVmaW5lIFVTQl9DT1VOVDJfUlhfMV9OVU1fQkxPQ0tfMV8wICAgICAgICAgKDB4MDQwMDAwMDBVKSAgICAgICAgICAgICAgICAgICAgLyohPCBCaXQgMCAqLw0KI2RlZmluZSBVU0JfQ09VTlQyX1JYXzFfTlVNX0JMT0NLXzFfMSAgICAgICAgICgweDA4MDAwMDAwVSkgICAgICAgICAgICAgICAgICAgIC8qITwgQml0IDEgKi8NCiNkZWZpbmUgVVNCX0NPVU5UMl9SWF8xX05VTV9CTE9DS18xXzIgICAgICAgICAoMHgxMDAwMDAwMFUpICAgICAgICAgICAgICAgICAgICAvKiE8IEJpdCAyICovDQojZGVmaW5lIFVTQl9DT1VOVDJfUlhfMV9OVU1fQkxPQ0tfMV8zICAgICAgICAgKDB4MjAwMDAwMDBVKSAgICAgICAgICAgICAgICAgICAgLyohPCBCaXQgMyAqLw0KI2RlZmluZSBVU0JfQ09VTlQyX1JYXzFfTlVNX0JMT0NLXzFfNCAgICAgICAgICgweDQwMDAwMDAwVSkgICAgICAgICAgICAgICAgICAgIC8qITwgQml0IDQgKi8NCg0KI2RlZmluZSBVU0JfQ09VTlQyX1JYXzFfQkxTSVpFXzEgICAgICAgICAgICAgICgweDgwMDAwMDAwVSkgICAgICAgICAgICAgICAgICAgIC8qITwgQkxvY2sgU0laRSAoaGlnaCkgKi8NCg0KLyoqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBVU0JfQ09VTlQzX1JYXzAgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKi8NCiNkZWZpbmUgVVNCX0NPVU5UM19SWF8wX0NPVU5UM19SWF8wICAgICAgICAgICAoMHgwMDAwMDNGRlUpICAgICAgICAgICAgICAgICAgICAvKiE8IFJlY2VwdGlvbiBCeXRlIENvdW50IChsb3cpICovDQoNCiNkZWZpbmUgVVNCX0NPVU5UM19SWF8wX05VTV9CTE9DS18wICAgICAgICAgICAoMHgwMDAwN0MwMFUpICAgICAgICAgICAgICAgICAgICAvKiE8IE5VTV9CTE9DS18wWzQ6MF0gYml0cyAoTnVtYmVyIG9mIGJsb2NrcykgKGxvdykgKi8NCiNkZWZpbmUgVVNCX0NPVU5UM19SWF8wX05VTV9CTE9DS18wXzAgICAgICAgICAoMHgwMDAwMDQwMFUpICAgICAgICAgICAgICAgICAgICAvKiE8IEJpdCAwICovDQojZGVmaW5lIFVTQl9DT1VOVDNfUlhfMF9OVU1fQkxPQ0tfMF8xICAgICAgICAgKDB4MDAwMDA4MDBVKSAgICAgICAgICAgICAgICAgICAgLyohPCBCaXQgMSAqLw0KI2RlZmluZSBVU0JfQ09VTlQzX1JYXzBfTlVNX0JMT0NLXzBfMiAgICAgICAgICgweDAwMDAxMDAwVSkgICAgICAgICAgICAgICAgICAgIC8qITwgQml0IDIgKi8NCiNkZWZpbmUgVVNCX0NPVU5UM19SWF8wX05VTV9CTE9DS18wXzMgICAgICAgICAoMHgwMDAwMjAwMFUpICAgICAgICAgICAgICAgICAgICAvKiE8IEJpdCAzICovDQojZGVmaW5lIFVTQl9DT1VOVDNfUlhfMF9OVU1fQkxPQ0tfMF80ICAgICAgICAgKDB4MDAwMDQwMDBVKSAgICAgICAgICAgICAgICAgICAgLyohPCBCaXQgNCAqLw0KDQojZGVmaW5lIFVTQl9DT1VOVDNfUlhfMF9CTFNJWkVfMCAgICAgICAgICAgICAgKDB4MDAwMDgwMDBVKSAgICAgICAgICAgICAgICAgICAgLyohPCBCTG9jayBTSVpFIChsb3cpICovDQoNCi8qKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgVVNCX0NPVU5UM19SWF8xIHJlZ2lzdGVyICAqKioqKioqKioqKioqKiovDQojZGVmaW5lIFVTQl9DT1VOVDNfUlhfMV9DT1VOVDNfUlhfMSAgICAgICAgICAgKDB4MDNGRjAwMDBVKSAgICAgICAgICAgICAgICAgICAgLyohPCBSZWNlcHRpb24gQnl0ZSBDb3VudCAoaGlnaCkgKi8NCg0KI2RlZmluZSBVU0JfQ09VTlQzX1JYXzFfTlVNX0JMT0NLXzEgICAgICAgICAgICgweDdDMDAwMDAwVSkgICAgICAgICAgICAgICAgICAgIC8qITwgTlVNX0JMT0NLXzFbNDowXSBiaXRzIChOdW1iZXIgb2YgYmxvY2tzKSAoaGlnaCkgKi8NCiNkZWZpbmUgVVNCX0NPVU5UM19SWF8xX05VTV9CTE9DS18xXzAgICAgICAgICAoMHgwNDAwMDAwMFUpICAgICAgICAgICAgICAgICAgICAvKiE8IEJpdCAwICovDQojZGVmaW5lIFVTQl9DT1VOVDNfUlhfMV9OVU1fQkxPQ0tfMV8xICAgICAgICAgKDB4MDgwMDAwMDBVKSAgICAgICAgICAgICAgICAgICAgLyohPCBCaXQgMSAqLw0KI2RlZmluZSBVU0JfQ09VTlQzX1JYXzFfTlVNX0JMT0NLXzFfMiAgICAgICAgICgweDEwMDAwMDAwVSkgICAgICAgICAgICAgICAgICAgIC8qITwgQml0IDIgKi8NCiNkZWZpbmUgVVNCX0NPVU5UM19SWF8xX05VTV9CTE9DS18xXzMgICAgICAgICAoMHgyMDAwMDAwMFUpICAgICAgICAgICAgICAgICAgICAvKiE8IEJpdCAzICovDQojZGVmaW5lIFVTQl9DT1VOVDNfUlhfMV9OVU1fQkxPQ0tfMV80ICAgICAgICAgKDB4NDAwMDAwMDBVKSAgICAgICAgICAgICAgICAgICAgLyohPCBCaXQgNCAqLw0KDQojZGVmaW5lIFVTQl9DT1VOVDNfUlhfMV9CTFNJWkVfMSAgICAgICAgICAgICAgKDB4ODAwMDAwMDBVKSAgICAgICAgICAgICAgICAgICAgLyohPCBCTG9jayBTSVpFIChoaWdoKSAqLw0KDQovKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFVTQl9DT1VOVDRfUlhfMCByZWdpc3RlciAgKioqKioqKioqKioqKioqLw0KI2RlZmluZSBVU0JfQ09VTlQ0X1JYXzBfQ09VTlQ0X1JYXzAgICAgICAgICAgICgweDAwMDAwM0ZGVSkgICAgICAgICAgICAgICAgICAgIC8qITwgUmVjZXB0aW9uIEJ5dGUgQ291bnQgKGxvdykgKi8NCg0KI2RlZmluZSBVU0JfQ09VTlQ0X1JYXzBfTlVNX0JMT0NLXzAgICAgICAgICAgICgweDAwMDA3QzAwVSkgICAgICAgICAgICAgICAgICAgIC8qITwgTlVNX0JMT0NLXzBbNDowXSBiaXRzIChOdW1iZXIgb2YgYmxvY2tzKSAobG93KSAqLw0KI2RlZmluZSBVU0JfQ09VTlQ0X1JYXzBfTlVNX0JMT0NLXzBfMCAgICAgICAgICgweDAwMDAwNDAwVSkgICAgICAgICAgICAgICAgICAgIC8qITwgQml0IDAgKi8NCiNkZWZpbmUgVVNCX0NPVU5UNF9SWF8wX05VTV9CTE9DS18wXzEgICAgICAgICAoMHgwMDAwMDgwMFUpICAgICAgICAgICAgICAgICAgICAvKiE8IEJpdCAxICovDQojZGVmaW5lIFVTQl9DT1VOVDRfUlhfMF9OVU1fQkxPQ0tfMF8yICAgICAgICAgKDB4MDAwMDEwMDBVKSAgICAgICAgICAgICAgICAgICAgLyohPCBCaXQgMiAqLw0KI2RlZmluZSBVU0JfQ09VTlQ0X1JYXzBfTlVNX0JMT0NLXzBfMyAgICAgICAgICgweDAwMDAyMDAwVSkgICAgICAgICAgICAgICAgICAgIC8qITwgQml0IDMgKi8NCiNkZWZpbmUgVVNCX0NPVU5UNF9SWF8wX05VTV9CTE9DS18wXzQgICAgICAgICAoMHgwMDAwNDAwMFUpICAgICAgICAgICAgICAgICAgICAvKiE8IEJpdCA0ICovDQoNCiNkZWZpbmUgVVNCX0NPVU5UNF9SWF8wX0JMU0laRV8wICAgICAgICAgICAgICAoMHgwMDAwODAwMFUpICAgICAgICAgICAgICAgICAgICAvKiE8IEJMb2NrIFNJWkUgKGxvdykgKi8NCg0KLyoqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBVU0JfQ09VTlQ0X1JYXzEgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKi8NCiNkZWZpbmUgVVNCX0NPVU5UNF9SWF8xX0NPVU5UNF9SWF8xICAgICAgICAgICAoMHgwM0ZGMDAwMFUpICAgICAgICAgICAgICAgICAgICAvKiE8IFJlY2VwdGlvbiBCeXRlIENvdW50IChoaWdoKSAqLw0KDQojZGVmaW5lIFVTQl9DT1VOVDRfUlhfMV9OVU1fQkxPQ0tfMSAgICAgICAgICAgKDB4N0MwMDAwMDBVKSAgICAgICAgICAgICAgICAgICAgLyohPCBOVU1fQkxPQ0tfMVs0OjBdIGJpdHMgKE51bWJlciBvZiBibG9ja3MpIChoaWdoKSAqLw0KI2RlZmluZSBVU0JfQ09VTlQ0X1JYXzFfTlVNX0JMT0NLXzFfMCAgICAgICAgICgweDA0MDAwMDAwVSkgICAgICAgICAgICAgICAgICAgIC8qITwgQml0IDAgKi8NCiNkZWZpbmUgVVNCX0NPVU5UNF9SWF8xX05VTV9CTE9DS18xXzEgICAgICAgICAoMHgwODAwMDAwMFUpICAgICAgICAgICAgICAgICAgICAvKiE8IEJpdCAxICovDQojZGVmaW5lIFVTQl9DT1VOVDRfUlhfMV9OVU1fQkxPQ0tfMV8yICAgICAgICAgKDB4MTAwMDAwMDBVKSAgICAgICAgICAgICAgICAgICAgLyohPCBCaXQgMiAqLw0KI2RlZmluZSBVU0JfQ09VTlQ0X1JYXzFfTlVNX0JMT0NLXzFfMyAgICAgICAgICgweDIwMDAwMDAwVSkgICAgICAgICAgICAgICAgICAgIC8qITwgQml0IDMgKi8NCiNkZWZpbmUgVVNCX0NPVU5UNF9SWF8xX05VTV9CTE9DS18xXzQgICAgICAgICAoMHg0MDAwMDAwMFUpICAgICAgICAgICAgICAgICAgICAvKiE8IEJpdCA0ICovDQoNCiNkZWZpbmUgVVNCX0NPVU5UNF9SWF8xX0JMU0laRV8xICAgICAgICAgICAgICAoMHg4MDAwMDAwMFUpICAgICAgICAgICAgICAgICAgICAvKiE8IEJMb2NrIFNJWkUgKGhpZ2gpICovDQoNCi8qKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgVVNCX0NPVU5UNV9SWF8wIHJlZ2lzdGVyICAqKioqKioqKioqKioqKiovDQojZGVmaW5lIFVTQl9DT1VOVDVfUlhfMF9DT1VOVDVfUlhfMCAgICAgICAgICAgKDB4MDAwMDAzRkZVKSAgICAgICAgICAgICAgICAgICAgLyohPCBSZWNlcHRpb24gQnl0ZSBDb3VudCAobG93KSAqLw0KDQojZGVmaW5lIFVTQl9DT1VOVDVfUlhfMF9OVU1fQkxPQ0tfMCAgICAgICAgICAgKDB4MDAwMDdDMDBVKSAgICAgICAgICAgICAgICAgICAgLyohPCBOVU1fQkxPQ0tfMFs0OjBdIGJpdHMgKE51bWJlciBvZiBibG9ja3MpIChsb3cpICovDQojZGVmaW5lIFVTQl9DT1VOVDVfUlhfMF9OVU1fQkxPQ0tfMF8wICAgICAgICAgKDB4MDAwMDA0MDBVKSAgICAgICAgICAgICAgICAgICAgLyohPCBCaXQgMCAqLw0KI2RlZmluZSBVU0JfQ09VTlQ1X1JYXzBfTlVNX0JMT0NLXzBfMSAgICAgICAgICgweDAwMDAwODAwVSkgICAgICAgICAgICAgICAgICAgIC8qITwgQml0IDEgKi8NCiNkZWZpbmUgVVNCX0NPVU5UNV9SWF8wX05VTV9CTE9DS18wXzIgICAgICAgICAoMHgwMDAwMTAwMFUpICAgICAgICAgICAgICAgICAgICAvKiE8IEJpdCAyICovDQojZGVmaW5lIFVTQl9DT1VOVDVfUlhfMF9OVU1fQkxPQ0tfMF8zICAgICAgICAgKDB4MDAwMDIwMDBVKSAgICAgICAgICAgICAgICAgICAgLyohPCBCaXQgMyAqLw0KI2RlZmluZSBVU0JfQ09VTlQ1X1JYXzBfTlVNX0JMT0NLXzBfNCAgICAgICAgICgweDAwMDA0MDAwVSkgICAgICAgICAgICAgICAgICAgIC8qITwgQml0IDQgKi8NCg0KI2RlZmluZSBVU0JfQ09VTlQ1X1JYXzBfQkxTSVpFXzAgICAgICAgICAgICAgICgweDAwMDA4MDAwVSkgICAgICAgICAgICAgICAgICAgIC8qITwgQkxvY2sgU0laRSAobG93KSAqLw0KDQovKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFVTQl9DT1VOVDVfUlhfMSByZWdpc3RlciAgKioqKioqKioqKioqKioqLw0KI2RlZmluZSBVU0JfQ09VTlQ1X1JYXzFfQ09VTlQ1X1JYXzEgICAgICAgICAgICgweDAzRkYwMDAwVSkgICAgICAgICAgICAgICAgICAgIC8qITwgUmVjZXB0aW9uIEJ5dGUgQ291bnQgKGhpZ2gpICovDQoNCiNkZWZpbmUgVVNCX0NPVU5UNV9SWF8xX05VTV9CTE9DS18xICAgICAgICAgICAoMHg3QzAwMDAwMFUpICAgICAgICAgICAgICAgICAgICAvKiE8IE5VTV9CTE9DS18xWzQ6MF0gYml0cyAoTnVtYmVyIG9mIGJsb2NrcykgKGhpZ2gpICovDQojZGVmaW5lIFVTQl9DT1VOVDVfUlhfMV9OVU1fQkxPQ0tfMV8wICAgICAgICAgKDB4MDQwMDAwMDBVKSAgICAgICAgICAgICAgICAgICAgLyohPCBCaXQgMCAqLw0KI2RlZmluZSBVU0JfQ09VTlQ1X1JYXzFfTlVNX0JMT0NLXzFfMSAgICAgICAgICgweDA4MDAwMDAwVSkgICAgICAgICAgICAgICAgICAgIC8qITwgQml0IDEgKi8NCiNkZWZpbmUgVVNCX0NPVU5UNV9SWF8xX05VTV9CTE9DS18xXzIgICAgICAgICAoMHgxMDAwMDAwMFUpICAgICAgICAgICAgICAgICAgICAvKiE8IEJpdCAyICovDQojZGVmaW5lIFVTQl9DT1VOVDVfUlhfMV9OVU1fQkxPQ0tfMV8zICAgICAgICAgKDB4MjAwMDAwMDBVKSAgICAgICAgICAgICAgICAgICAgLyohPCBCaXQgMyAqLw0KI2RlZmluZSBVU0JfQ09VTlQ1X1JYXzFfTlVNX0JMT0NLXzFfNCAgICAgICAgICgweDQwMDAwMDAwVSkgICAgICAgICAgICAgICAgICAgIC8qITwgQml0IDQgKi8NCg0KI2RlZmluZSBVU0JfQ09VTlQ1X1JYXzFfQkxTSVpFXzEgICAgICAgICAgICAgICgweDgwMDAwMDAwVSkgICAgICAgICAgICAgICAgICAgIC8qITwgQkxvY2sgU0laRSAoaGlnaCkgKi8NCg0KLyoqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFVTQl9DT1VOVDZfUlhfMCAgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKi8NCiNkZWZpbmUgVVNCX0NPVU5UNl9SWF8wX0NPVU5UNl9SWF8wICAgICAgICAgICAoMHgwMDAwMDNGRlUpICAgICAgICAgICAgICAgICAgICAvKiE8IFJlY2VwdGlvbiBCeXRlIENvdW50IChsb3cpICovDQoNCiNkZWZpbmUgVVNCX0NPVU5UNl9SWF8wX05VTV9CTE9DS18wICAgICAgICAgICAoMHgwMDAwN0MwMFUpICAgICAgICAgICAgICAgICAgICAvKiE8IE5VTV9CTE9DS18wWzQ6MF0gYml0cyAoTnVtYmVyIG9mIGJsb2NrcykgKGxvdykgKi8NCiNkZWZpbmUgVVNCX0NPVU5UNl9SWF8wX05VTV9CTE9DS18wXzAgICAgICAgICAoMHgwMDAwMDQwMFUpICAgICAgICAgICAgICAgICAgICAvKiE8IEJpdCAwICovDQojZGVmaW5lIFVTQl9DT1VOVDZfUlhfMF9OVU1fQkxPQ0tfMF8xICAgICAgICAgKDB4MDAwMDA4MDBVKSAgICAgICAgICAgICAgICAgICAgLyohPCBCaXQgMSAqLw0KI2RlZmluZSBVU0JfQ09VTlQ2X1JYXzBfTlVNX0JMT0NLXzBfMiAgICAgICAgICgweDAwMDAxMDAwVSkgICAgICAgICAgICAgICAgICAgIC8qITwgQml0IDIgKi8NCiNkZWZpbmUgVVNCX0NPVU5UNl9SWF8wX05VTV9CTE9DS18wXzMgICAgICAgICAoMHgwMDAwMjAwMFUpICAgICAgICAgICAgICAgICAgICAvKiE8IEJpdCAzICovDQojZGVmaW5lIFVTQl9DT1VOVDZfUlhfMF9OVU1fQkxPQ0tfMF80ICAgICAgICAgKDB4MDAwMDQwMDBVKSAgICAgICAgICAgICAgICAgICAgLyohPCBCaXQgNCAqLw0KDQojZGVmaW5lIFVTQl9DT1VOVDZfUlhfMF9CTFNJWkVfMCAgICAgICAgICAgICAgKDB4MDAwMDgwMDBVKSAgICAgICAgICAgICAgICAgICAgLyohPCBCTG9jayBTSVpFIChsb3cpICovDQoNCi8qKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgVVNCX0NPVU5UNl9SWF8xIHJlZ2lzdGVyICAqKioqKioqKioqKioqKiovDQojZGVmaW5lIFVTQl9DT1VOVDZfUlhfMV9DT1VOVDZfUlhfMSAgICAgICAgICAgKDB4MDNGRjAwMDBVKSAgICAgICAgICAgICAgICAgICAgLyohPCBSZWNlcHRpb24gQnl0ZSBDb3VudCAoaGlnaCkgKi8NCg0KI2RlZmluZSBVU0JfQ09VTlQ2X1JYXzFfTlVNX0JMT0NLXzEgICAgICAgICAgICgweDdDMDAwMDAwVSkgICAgICAgICAgICAgICAgICAgIC8qITwgTlVNX0JMT0NLXzFbNDowXSBiaXRzIChOdW1iZXIgb2YgYmxvY2tzKSAoaGlnaCkgKi8NCiNkZWZpbmUgVVNCX0NPVU5UNl9SWF8xX05VTV9CTE9DS18xXzAgICAgICAgICAoMHgwNDAwMDAwMFUpICAgICAgICAgICAgICAgICAgICAvKiE8IEJpdCAwICovDQojZGVmaW5lIFVTQl9DT1VOVDZfUlhfMV9OVU1fQkxPQ0tfMV8xICAgICAgICAgKDB4MDgwMDAwMDBVKSAgICAgICAgICAgICAgICAgICAgLyohPCBCaXQgMSAqLw0KI2RlZmluZSBVU0JfQ09VTlQ2X1JYXzFfTlVNX0JMT0NLXzFfMiAgICAgICAgICgweDEwMDAwMDAwVSkgICAgICAgICAgICAgICAgICAgIC8qITwgQml0IDIgKi8NCiNkZWZpbmUgVVNCX0NPVU5UNl9SWF8xX05VTV9CTE9DS18xXzMgICAgICAgICAoMHgyMDAwMDAwMFUpICAgICAgICAgICAgICAgICAgICAvKiE8IEJpdCAzICovDQojZGVmaW5lIFVTQl9DT1VOVDZfUlhfMV9OVU1fQkxPQ0tfMV80ICAgICAgICAgKDB4NDAwMDAwMDBVKSAgICAgICAgICAgICAgICAgICAgLyohPCBCaXQgNCAqLw0KDQojZGVmaW5lIFVTQl9DT1VOVDZfUlhfMV9CTFNJWkVfMSAgICAgICAgICAgICAgKDB4ODAwMDAwMDBVKSAgICAgICAgICAgICAgICAgICAgLyohPCBCTG9jayBTSVpFIChoaWdoKSAqLw0KDQovKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgVVNCX0NPVU5UN19SWF8wIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBVU0JfQ09VTlQ3X1JYXzBfQ09VTlQ3X1JYXzAgICAgICAgICAgICgweDAwMDAwM0ZGVSkgICAgICAgICAgICAgICAgICAgIC8qITwgUmVjZXB0aW9uIEJ5dGUgQ291bnQgKGxvdykgKi8NCg0KI2RlZmluZSBVU0JfQ09VTlQ3X1JYXzBfTlVNX0JMT0NLXzAgICAgICAgICAgICgweDAwMDA3QzAwVSkgICAgICAgICAgICAgICAgICAgIC8qITwgTlVNX0JMT0NLXzBbNDowXSBiaXRzIChOdW1iZXIgb2YgYmxvY2tzKSAobG93KSAqLw0KI2RlZmluZSBVU0JfQ09VTlQ3X1JYXzBfTlVNX0JMT0NLXzBfMCAgICAgICAgICgweDAwMDAwNDAwVSkgICAgICAgICAgICAgICAgICAgIC8qITwgQml0IDAgKi8NCiNkZWZpbmUgVVNCX0NPVU5UN19SWF8wX05VTV9CTE9DS18wXzEgICAgICAgICAoMHgwMDAwMDgwMFUpICAgICAgICAgICAgICAgICAgICAvKiE8IEJpdCAxICovDQojZGVmaW5lIFVTQl9DT1VOVDdfUlhfMF9OVU1fQkxPQ0tfMF8yICAgICAgICAgKDB4MDAwMDEwMDBVKSAgICAgICAgICAgICAgICAgICAgLyohPCBCaXQgMiAqLw0KI2RlZmluZSBVU0JfQ09VTlQ3X1JYXzBfTlVNX0JMT0NLXzBfMyAgICAgICAgICgweDAwMDAyMDAwVSkgICAgICAgICAgICAgICAgICAgIC8qITwgQml0IDMgKi8NCiNkZWZpbmUgVVNCX0NPVU5UN19SWF8wX05VTV9CTE9DS18wXzQgICAgICAgICAoMHgwMDAwNDAwMFUpICAgICAgICAgICAgICAgICAgICAvKiE8IEJpdCA0ICovDQoNCiNkZWZpbmUgVVNCX0NPVU5UN19SWF8wX0JMU0laRV8wICAgICAgICAgICAgICAoMHgwMDAwODAwMFUpICAgICAgICAgICAgICAgICAgICAvKiE8IEJMb2NrIFNJWkUgKGxvdykgKi8NCg0KLyoqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFVTQl9DT1VOVDdfUlhfMSByZWdpc3RlciAgKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgVVNCX0NPVU5UN19SWF8xX0NPVU5UN19SWF8xICAgICAgICAgICAoMHgwM0ZGMDAwMFUpICAgICAgICAgICAgICAgICAgICAvKiE8IFJlY2VwdGlvbiBCeXRlIENvdW50IChoaWdoKSAqLw0KDQojZGVmaW5lIFVTQl9DT1VOVDdfUlhfMV9OVU1fQkxPQ0tfMSAgICAgICAgICAgKDB4N0MwMDAwMDBVKSAgICAgICAgICAgICAgICAgICAgLyohPCBOVU1fQkxPQ0tfMVs0OjBdIGJpdHMgKE51bWJlciBvZiBibG9ja3MpIChoaWdoKSAqLw0KI2RlZmluZSBVU0JfQ09VTlQ3X1JYXzFfTlVNX0JMT0NLXzFfMCAgICAgICAgICgweDA0MDAwMDAwVSkgICAgICAgICAgICAgICAgICAgIC8qITwgQml0IDAgKi8NCiNkZWZpbmUgVVNCX0NPVU5UN19SWF8xX05VTV9CTE9DS18xXzEgICAgICAgICAoMHgwODAwMDAwMFUpICAgICAgICAgICAgICAgICAgICAvKiE8IEJpdCAxICovDQojZGVmaW5lIFVTQl9DT1VOVDdfUlhfMV9OVU1fQkxPQ0tfMV8yICAgICAgICAgKDB4MTAwMDAwMDBVKSAgICAgICAgICAgICAgICAgICAgLyohPCBCaXQgMiAqLw0KI2RlZmluZSBVU0JfQ09VTlQ3X1JYXzFfTlVNX0JMT0NLXzFfMyAgICAgICAgICgweDIwMDAwMDAwVSkgICAgICAgICAgICAgICAgICAgIC8qITwgQml0IDMgKi8NCiNkZWZpbmUgVVNCX0NPVU5UN19SWF8xX05VTV9CTE9DS18xXzQgICAgICAgICAoMHg0MDAwMDAwMFUpICAgICAgICAgICAgICAgICAgICAvKiE8IEJpdCA0ICovDQoNCiNkZWZpbmUgVVNCX0NPVU5UN19SWF8xX0JMU0laRV8xICAgICAgICAgICAgICAoMHg4MDAwMDAwMFUpICAgICAgICAgICAgICAgICAgICAvKiE8IEJMb2NrIFNJWkUgKGhpZ2gpICovDQoNCi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovDQovKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLw0KLyogICAgICAgICAgICAgICAgICAgICAgICAgV2luZG93IFdBVENIRE9HIChXV0RHKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8NCi8qICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovDQovKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLw0KDQovKioqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFdXREdfQ1IgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBXV0RHX0NSX1RfUG9zICAgICAgICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBXV0RHX0NSX1RfTXNrICAgICAgICAgICAgICAgICAgICAgICAoMHg3RlUgPDwgV1dER19DUl9UX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDA3RiAqLw0KI2RlZmluZSBXV0RHX0NSX1QgICAgICAgICAgICAgICAgICAgICAgICAgICBXV0RHX0NSX1RfTXNrICAgICAgICAgICAgICAgICAgICAgIC8qITwgVFs2OjBdIGJpdHMgKDctQml0IGNvdW50ZXIgKE1TQiB0byBMU0IpKSAqLw0KI2RlZmluZSBXV0RHX0NSX1RfMCAgICAgICAgICAgICAgICAgICAgICAgICAoMHgwMVUgPDwgV1dER19DUl9UX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDAwMSAqLw0KI2RlZmluZSBXV0RHX0NSX1RfMSAgICAgICAgICAgICAgICAgICAgICAgICAoMHgwMlUgPDwgV1dER19DUl9UX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDAwMiAqLw0KI2RlZmluZSBXV0RHX0NSX1RfMiAgICAgICAgICAgICAgICAgICAgICAgICAoMHgwNFUgPDwgV1dER19DUl9UX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDAwNCAqLw0KI2RlZmluZSBXV0RHX0NSX1RfMyAgICAgICAgICAgICAgICAgICAgICAgICAoMHgwOFUgPDwgV1dER19DUl9UX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDAwOCAqLw0KI2RlZmluZSBXV0RHX0NSX1RfNCAgICAgICAgICAgICAgICAgICAgICAgICAoMHgxMFUgPDwgV1dER19DUl9UX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDAxMCAqLw0KI2RlZmluZSBXV0RHX0NSX1RfNSAgICAgICAgICAgICAgICAgICAgICAgICAoMHgyMFUgPDwgV1dER19DUl9UX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDAyMCAqLw0KI2RlZmluZSBXV0RHX0NSX1RfNiAgICAgICAgICAgICAgICAgICAgICAgICAoMHg0MFUgPDwgV1dER19DUl9UX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDA0MCAqLw0KDQovKiBMZWdhY3kgZGVmaW5lcyAqLw0KI2RlZmluZSAgV1dER19DUl9UMCBXV0RHX0NSX1RfMA0KI2RlZmluZSAgV1dER19DUl9UMSBXV0RHX0NSX1RfMQ0KI2RlZmluZSAgV1dER19DUl9UMiBXV0RHX0NSX1RfMg0KI2RlZmluZSAgV1dER19DUl9UMyBXV0RHX0NSX1RfMw0KI2RlZmluZSAgV1dER19DUl9UNCBXV0RHX0NSX1RfNA0KI2RlZmluZSAgV1dER19DUl9UNSBXV0RHX0NSX1RfNQ0KI2RlZmluZSAgV1dER19DUl9UNiBXV0RHX0NSX1RfNg0KDQojZGVmaW5lIFdXREdfQ1JfV0RHQV9Qb3MgICAgICAgICAgICAgICAgICAgICg3VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFdXREdfQ1JfV0RHQV9Nc2sgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFdXREdfQ1JfV0RHQV9Qb3MpICAgICAgICAgLyohPCAweDAwMDAwMDgwICovDQojZGVmaW5lIFdXREdfQ1JfV0RHQSAgICAgICAgICAgICAgICAgICAgICAgIFdXREdfQ1JfV0RHQV9Nc2sgICAgICAgICAgICAgICAgICAgLyohPCBBY3RpdmF0aW9uIGJpdCAqLw0KDQovKioqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFdXREdfQ0ZSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBXV0RHX0NGUl9XX1BvcyAgICAgICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBXV0RHX0NGUl9XX01zayAgICAgICAgICAgICAgICAgICAgICAoMHg3RlUgPDwgV1dER19DRlJfV19Qb3MpICAgICAgICAgIC8qITwgMHgwMDAwMDA3RiAqLw0KI2RlZmluZSBXV0RHX0NGUl9XICAgICAgICAgICAgICAgICAgICAgICAgICBXV0RHX0NGUl9XX01zayAgICAgICAgICAgICAgICAgICAgIC8qITwgV1s2OjBdIGJpdHMgKDctYml0IHdpbmRvdyB2YWx1ZSkgKi8NCiNkZWZpbmUgV1dER19DRlJfV18wICAgICAgICAgICAgICAgICAgICAgICAgKDB4MDFVIDw8IFdXREdfQ0ZSX1dfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDAwMDEgKi8NCiNkZWZpbmUgV1dER19DRlJfV18xICAgICAgICAgICAgICAgICAgICAgICAgKDB4MDJVIDw8IFdXREdfQ0ZSX1dfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDAwMDIgKi8NCiNkZWZpbmUgV1dER19DRlJfV18yICAgICAgICAgICAgICAgICAgICAgICAgKDB4MDRVIDw8IFdXREdfQ0ZSX1dfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDAwMDQgKi8NCiNkZWZpbmUgV1dER19DRlJfV18zICAgICAgICAgICAgICAgICAgICAgICAgKDB4MDhVIDw8IFdXREdfQ0ZSX1dfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDAwMDggKi8NCiNkZWZpbmUgV1dER19DRlJfV180ICAgICAgICAgICAgICAgICAgICAgICAgKDB4MTBVIDw8IFdXREdfQ0ZSX1dfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDAwMTAgKi8NCiNkZWZpbmUgV1dER19DRlJfV181ICAgICAgICAgICAgICAgICAgICAgICAgKDB4MjBVIDw8IFdXREdfQ0ZSX1dfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDAwMjAgKi8NCiNkZWZpbmUgV1dER19DRlJfV182ICAgICAgICAgICAgICAgICAgICAgICAgKDB4NDBVIDw8IFdXREdfQ0ZSX1dfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDAwNDAgKi8NCg0KLyogTGVnYWN5IGRlZmluZXMgKi8NCiNkZWZpbmUgIFdXREdfQ0ZSX1cwIFdXREdfQ0ZSX1dfMA0KI2RlZmluZSAgV1dER19DRlJfVzEgV1dER19DRlJfV18xDQojZGVmaW5lICBXV0RHX0NGUl9XMiBXV0RHX0NGUl9XXzINCiNkZWZpbmUgIFdXREdfQ0ZSX1czIFdXREdfQ0ZSX1dfMw0KI2RlZmluZSAgV1dER19DRlJfVzQgV1dER19DRlJfV180DQojZGVmaW5lICBXV0RHX0NGUl9XNSBXV0RHX0NGUl9XXzUNCiNkZWZpbmUgIFdXREdfQ0ZSX1c2IFdXREdfQ0ZSX1dfNg0KDQojZGVmaW5lIFdXREdfQ0ZSX1dER1RCX1BvcyAgICAgICAgICAgICAgICAgICg3VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFdXREdfQ0ZSX1dER1RCX01zayAgICAgICAgICAgICAgICAgICgweDNVIDw8IFdXREdfQ0ZSX1dER1RCX1BvcykgICAgICAgLyohPCAweDAwMDAwMTgwICovDQojZGVmaW5lIFdXREdfQ0ZSX1dER1RCICAgICAgICAgICAgICAgICAgICAgIFdXREdfQ0ZSX1dER1RCX01zayAgICAgICAgICAgICAgICAgLyohPCBXREdUQlsxOjBdIGJpdHMgKFRpbWVyIEJhc2UpICovDQojZGVmaW5lIFdXREdfQ0ZSX1dER1RCXzAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFdXREdfQ0ZSX1dER1RCX1BvcykgICAgICAgLyohPCAweDAwMDAwMDgwICovDQojZGVmaW5lIFdXREdfQ0ZSX1dER1RCXzEgICAgICAgICAgICAgICAgICAgICgweDJVIDw8IFdXREdfQ0ZSX1dER1RCX1BvcykgICAgICAgLyohPCAweDAwMDAwMTAwICovDQoNCi8qIExlZ2FjeSBkZWZpbmVzICovDQojZGVmaW5lICBXV0RHX0NGUl9XREdUQjAgV1dER19DRlJfV0RHVEJfMA0KI2RlZmluZSAgV1dER19DRlJfV0RHVEIxIFdXREdfQ0ZSX1dER1RCXzENCg0KI2RlZmluZSBXV0RHX0NGUl9FV0lfUG9zICAgICAgICAgICAgICAgICAgICAoOVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBXV0RHX0NGUl9FV0lfTXNrICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBXV0RHX0NGUl9FV0lfUG9zKSAgICAgICAgIC8qITwgMHgwMDAwMDIwMCAqLw0KI2RlZmluZSBXV0RHX0NGUl9FV0kgICAgICAgICAgICAgICAgICAgICAgICBXV0RHX0NGUl9FV0lfTXNrICAgICAgICAgICAgICAgICAgIC8qITwgRWFybHkgV2FrZXVwIEludGVycnVwdCAqLw0KDQovKioqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFdXREdfU1IgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBXV0RHX1NSX0VXSUZfUG9zICAgICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBXV0RHX1NSX0VXSUZfTXNrICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBXV0RHX1NSX0VXSUZfUG9zKSAgICAgICAgIC8qITwgMHgwMDAwMDAwMSAqLw0KI2RlZmluZSBXV0RHX1NSX0VXSUYgICAgICAgICAgICAgICAgICAgICAgICBXV0RHX1NSX0VXSUZfTXNrICAgICAgICAgICAgICAgICAgIC8qITwgRWFybHkgV2FrZXVwIEludGVycnVwdCBGbGFnICovDQoNCi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovDQovKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLw0KLyogICAgICAgICAgICAgICAgICAgICAgICBTeXN0ZW1UaWNrIChTeXNUaWNrKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8NCi8qICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovDQovKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLw0KDQovKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBTeXNUaWNrX0NUUkwgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBTeXNUaWNrX0NUUkxfRU5BQkxFICAgICAgICAgICAgICAgICAoMHgwMDAwMDAwMVUpICAgICAgICAgICAgICAgICAgICAgIC8qITwgQ291bnRlciBlbmFibGUgKi8NCiNkZWZpbmUgU3lzVGlja19DVFJMX1RJQ0tJTlQgICAgICAgICAgICAgICAgKDB4MDAwMDAwMDJVKSAgICAgICAgICAgICAgICAgICAgICAvKiE8IENvdW50aW5nIGRvd24gdG8gMCBwZW5kcyB0aGUgU3lzVGljayBoYW5kbGVyICovDQojZGVmaW5lIFN5c1RpY2tfQ1RSTF9DTEtTT1VSQ0UgICAgICAgICAgICAgICgweDAwMDAwMDA0VSkgICAgICAgICAgICAgICAgICAgICAgLyohPCBDbG9jayBzb3VyY2UgKi8NCiNkZWZpbmUgU3lzVGlja19DVFJMX0NPVU5URkxBRyAgICAgICAgICAgICAgKDB4MDAwMTAwMDBVKSAgICAgICAgICAgICAgICAgICAgICAvKiE8IENvdW50IEZsYWcgKi8NCg0KLyoqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgU3lzVGlja19MT0FEIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgU3lzVGlja19MT0FEX1JFTE9BRCAgICAgICAgICAgICAgICAgKDB4MDBGRkZGRkZVKSAgICAgICAgICAgICAgICAgICAgICAvKiE8IFZhbHVlIHRvIGxvYWQgaW50byB0aGUgU3lzVGljayBDdXJyZW50IFZhbHVlIFJlZ2lzdGVyIHdoZW4gdGhlIGNvdW50ZXIgcmVhY2hlcyAwICovDQoNCi8qKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFN5c1RpY2tfVkFMIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIFN5c1RpY2tfVkFMX0NVUlJFTlQgICAgICAgICAgICAgICAgICgweDAwRkZGRkZGVSkgICAgICAgICAgICAgICAgICAgICAgLyohPCBDdXJyZW50IHZhbHVlIGF0IHRoZSB0aW1lIHRoZSByZWdpc3RlciBpcyBhY2Nlc3NlZCAqLw0KDQovKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBTeXNUaWNrX0NBTElCIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBTeXNUaWNrX0NBTElCX1RFTk1TICAgICAgICAgICAgICAgICAoMHgwMEZGRkZGRlUpICAgICAgICAgICAgICAgICAgICAgIC8qITwgUmVsb2FkIHZhbHVlIHRvIHVzZSBmb3IgMTBtcyB0aW1pbmcgKi8NCiNkZWZpbmUgU3lzVGlja19DQUxJQl9TS0VXICAgICAgICAgICAgICAgICAgKDB4NDAwMDAwMDBVKSAgICAgICAgICAgICAgICAgICAgICAvKiE8IENhbGlicmF0aW9uIHZhbHVlIGlzIG5vdCBleGFjdGx5IDEwIG1zICovDQojZGVmaW5lIFN5c1RpY2tfQ0FMSUJfTk9SRUYgICAgICAgICAgICAgICAgICgweDgwMDAwMDAwVSkgICAgICAgICAgICAgICAgICAgICAgLyohPCBUaGUgcmVmZXJlbmNlIGNsb2NrIGlzIG5vdCBwcm92aWRlZCAqLw0KDQovKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLw0KLyogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8NCi8qICAgICAgICAgICAgICAgTmVzdGVkIFZlY3RvcmVkIEludGVycnVwdCBDb250cm9sbGVyIChOVklDKSAgICAgICAgICAgICAgICAgICovDQovKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLw0KLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8NCg0KLyoqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIE5WSUNfSVNFUiByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgTlZJQ19JU0VSX1NFVEVOQV9Qb3MgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgTlZJQ19JU0VSX1NFVEVOQV9Nc2sgICAgICAgICAgICAgICAgKDB4RkZGRkZGRkZVIDw8IE5WSUNfSVNFUl9TRVRFTkFfUG9zKSAvKiE8IDB4RkZGRkZGRkYgKi8NCiNkZWZpbmUgTlZJQ19JU0VSX1NFVEVOQSAgICAgICAgICAgICAgICAgICAgTlZJQ19JU0VSX1NFVEVOQV9Nc2sgICAgICAgICAgICAgICAvKiE8IEludGVycnVwdCBzZXQgZW5hYmxlIGJpdHMgKi8NCiNkZWZpbmUgTlZJQ19JU0VSX1NFVEVOQV8wICAgICAgICAgICAgICAgICAgKDB4MDAwMDAwMDFVIDw8IE5WSUNfSVNFUl9TRVRFTkFfUG9zKSAvKiE8IDB4MDAwMDAwMDEgKi8NCiNkZWZpbmUgTlZJQ19JU0VSX1NFVEVOQV8xICAgICAgICAgICAgICAgICAgKDB4MDAwMDAwMDJVIDw8IE5WSUNfSVNFUl9TRVRFTkFfUG9zKSAvKiE8IDB4MDAwMDAwMDIgKi8NCiNkZWZpbmUgTlZJQ19JU0VSX1NFVEVOQV8yICAgICAgICAgICAgICAgICAgKDB4MDAwMDAwMDRVIDw8IE5WSUNfSVNFUl9TRVRFTkFfUG9zKSAvKiE8IDB4MDAwMDAwMDQgKi8NCiNkZWZpbmUgTlZJQ19JU0VSX1NFVEVOQV8zICAgICAgICAgICAgICAgICAgKDB4MDAwMDAwMDhVIDw8IE5WSUNfSVNFUl9TRVRFTkFfUG9zKSAvKiE8IDB4MDAwMDAwMDggKi8NCiNkZWZpbmUgTlZJQ19JU0VSX1NFVEVOQV80ICAgICAgICAgICAgICAgICAgKDB4MDAwMDAwMTBVIDw8IE5WSUNfSVNFUl9TRVRFTkFfUG9zKSAvKiE8IDB4MDAwMDAwMTAgKi8NCiNkZWZpbmUgTlZJQ19JU0VSX1NFVEVOQV81ICAgICAgICAgICAgICAgICAgKDB4MDAwMDAwMjBVIDw8IE5WSUNfSVNFUl9TRVRFTkFfUG9zKSAvKiE8IDB4MDAwMDAwMjAgKi8NCiNkZWZpbmUgTlZJQ19JU0VSX1NFVEVOQV82ICAgICAgICAgICAgICAgICAgKDB4MDAwMDAwNDBVIDw8IE5WSUNfSVNFUl9TRVRFTkFfUG9zKSAvKiE8IDB4MDAwMDAwNDAgKi8NCiNkZWZpbmUgTlZJQ19JU0VSX1NFVEVOQV83ICAgICAgICAgICAgICAgICAgKDB4MDAwMDAwODBVIDw8IE5WSUNfSVNFUl9TRVRFTkFfUG9zKSAvKiE8IDB4MDAwMDAwODAgKi8NCiNkZWZpbmUgTlZJQ19JU0VSX1NFVEVOQV84ICAgICAgICAgICAgICAgICAgKDB4MDAwMDAxMDBVIDw8IE5WSUNfSVNFUl9TRVRFTkFfUG9zKSAvKiE8IDB4MDAwMDAxMDAgKi8NCiNkZWZpbmUgTlZJQ19JU0VSX1NFVEVOQV85ICAgICAgICAgICAgICAgICAgKDB4MDAwMDAyMDBVIDw8IE5WSUNfSVNFUl9TRVRFTkFfUG9zKSAvKiE8IDB4MDAwMDAyMDAgKi8NCiNkZWZpbmUgTlZJQ19JU0VSX1NFVEVOQV8xMCAgICAgICAgICAgICAgICAgKDB4MDAwMDA0MDBVIDw8IE5WSUNfSVNFUl9TRVRFTkFfUG9zKSAvKiE8IDB4MDAwMDA0MDAgKi8NCiNkZWZpbmUgTlZJQ19JU0VSX1NFVEVOQV8xMSAgICAgICAgICAgICAgICAgKDB4MDAwMDA4MDBVIDw8IE5WSUNfSVNFUl9TRVRFTkFfUG9zKSAvKiE8IDB4MDAwMDA4MDAgKi8NCiNkZWZpbmUgTlZJQ19JU0VSX1NFVEVOQV8xMiAgICAgICAgICAgICAgICAgKDB4MDAwMDEwMDBVIDw8IE5WSUNfSVNFUl9TRVRFTkFfUG9zKSAvKiE8IDB4MDAwMDEwMDAgKi8NCiNkZWZpbmUgTlZJQ19JU0VSX1NFVEVOQV8xMyAgICAgICAgICAgICAgICAgKDB4MDAwMDIwMDBVIDw8IE5WSUNfSVNFUl9TRVRFTkFfUG9zKSAvKiE8IDB4MDAwMDIwMDAgKi8NCiNkZWZpbmUgTlZJQ19JU0VSX1NFVEVOQV8xNCAgICAgICAgICAgICAgICAgKDB4MDAwMDQwMDBVIDw8IE5WSUNfSVNFUl9TRVRFTkFfUG9zKSAvKiE8IDB4MDAwMDQwMDAgKi8NCiNkZWZpbmUgTlZJQ19JU0VSX1NFVEVOQV8xNSAgICAgICAgICAgICAgICAgKDB4MDAwMDgwMDBVIDw8IE5WSUNfSVNFUl9TRVRFTkFfUG9zKSAvKiE8IDB4MDAwMDgwMDAgKi8NCiNkZWZpbmUgTlZJQ19JU0VSX1NFVEVOQV8xNiAgICAgICAgICAgICAgICAgKDB4MDAwMTAwMDBVIDw8IE5WSUNfSVNFUl9TRVRFTkFfUG9zKSAvKiE8IDB4MDAwMTAwMDAgKi8NCiNkZWZpbmUgTlZJQ19JU0VSX1NFVEVOQV8xNyAgICAgICAgICAgICAgICAgKDB4MDAwMjAwMDBVIDw8IE5WSUNfSVNFUl9TRVRFTkFfUG9zKSAvKiE8IDB4MDAwMjAwMDAgKi8NCiNkZWZpbmUgTlZJQ19JU0VSX1NFVEVOQV8xOCAgICAgICAgICAgICAgICAgKDB4MDAwNDAwMDBVIDw8IE5WSUNfSVNFUl9TRVRFTkFfUG9zKSAvKiE8IDB4MDAwNDAwMDAgKi8NCiNkZWZpbmUgTlZJQ19JU0VSX1NFVEVOQV8xOSAgICAgICAgICAgICAgICAgKDB4MDAwODAwMDBVIDw8IE5WSUNfSVNFUl9TRVRFTkFfUG9zKSAvKiE8IDB4MDAwODAwMDAgKi8NCiNkZWZpbmUgTlZJQ19JU0VSX1NFVEVOQV8yMCAgICAgICAgICAgICAgICAgKDB4MDAxMDAwMDBVIDw8IE5WSUNfSVNFUl9TRVRFTkFfUG9zKSAvKiE8IDB4MDAxMDAwMDAgKi8NCiNkZWZpbmUgTlZJQ19JU0VSX1NFVEVOQV8yMSAgICAgICAgICAgICAgICAgKDB4MDAyMDAwMDBVIDw8IE5WSUNfSVNFUl9TRVRFTkFfUG9zKSAvKiE8IDB4MDAyMDAwMDAgKi8NCiNkZWZpbmUgTlZJQ19JU0VSX1NFVEVOQV8yMiAgICAgICAgICAgICAgICAgKDB4MDA0MDAwMDBVIDw8IE5WSUNfSVNFUl9TRVRFTkFfUG9zKSAvKiE8IDB4MDA0MDAwMDAgKi8NCiNkZWZpbmUgTlZJQ19JU0VSX1NFVEVOQV8yMyAgICAgICAgICAgICAgICAgKDB4MDA4MDAwMDBVIDw8IE5WSUNfSVNFUl9TRVRFTkFfUG9zKSAvKiE8IDB4MDA4MDAwMDAgKi8NCiNkZWZpbmUgTlZJQ19JU0VSX1NFVEVOQV8yNCAgICAgICAgICAgICAgICAgKDB4MDEwMDAwMDBVIDw8IE5WSUNfSVNFUl9TRVRFTkFfUG9zKSAvKiE8IDB4MDEwMDAwMDAgKi8NCiNkZWZpbmUgTlZJQ19JU0VSX1NFVEVOQV8yNSAgICAgICAgICAgICAgICAgKDB4MDIwMDAwMDBVIDw8IE5WSUNfSVNFUl9TRVRFTkFfUG9zKSAvKiE8IDB4MDIwMDAwMDAgKi8NCiNkZWZpbmUgTlZJQ19JU0VSX1NFVEVOQV8yNiAgICAgICAgICAgICAgICAgKDB4MDQwMDAwMDBVIDw8IE5WSUNfSVNFUl9TRVRFTkFfUG9zKSAvKiE8IDB4MDQwMDAwMDAgKi8NCiNkZWZpbmUgTlZJQ19JU0VSX1NFVEVOQV8yNyAgICAgICAgICAgICAgICAgKDB4MDgwMDAwMDBVIDw8IE5WSUNfSVNFUl9TRVRFTkFfUG9zKSAvKiE8IDB4MDgwMDAwMDAgKi8NCiNkZWZpbmUgTlZJQ19JU0VSX1NFVEVOQV8yOCAgICAgICAgICAgICAgICAgKDB4MTAwMDAwMDBVIDw8IE5WSUNfSVNFUl9TRVRFTkFfUG9zKSAvKiE8IDB4MTAwMDAwMDAgKi8NCiNkZWZpbmUgTlZJQ19JU0VSX1NFVEVOQV8yOSAgICAgICAgICAgICAgICAgKDB4MjAwMDAwMDBVIDw8IE5WSUNfSVNFUl9TRVRFTkFfUG9zKSAvKiE8IDB4MjAwMDAwMDAgKi8NCiNkZWZpbmUgTlZJQ19JU0VSX1NFVEVOQV8zMCAgICAgICAgICAgICAgICAgKDB4NDAwMDAwMDBVIDw8IE5WSUNfSVNFUl9TRVRFTkFfUG9zKSAvKiE8IDB4NDAwMDAwMDAgKi8NCiNkZWZpbmUgTlZJQ19JU0VSX1NFVEVOQV8zMSAgICAgICAgICAgICAgICAgKDB4ODAwMDAwMDBVIDw8IE5WSUNfSVNFUl9TRVRFTkFfUG9zKSAvKiE8IDB4ODAwMDAwMDAgKi8NCg0KLyoqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIE5WSUNfSUNFUiByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgTlZJQ19JQ0VSX0NMUkVOQV9Qb3MgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgTlZJQ19JQ0VSX0NMUkVOQV9Nc2sgICAgICAgICAgICAgICAgKDB4RkZGRkZGRkZVIDw8IE5WSUNfSUNFUl9DTFJFTkFfUG9zKSAvKiE8IDB4RkZGRkZGRkYgKi8NCiNkZWZpbmUgTlZJQ19JQ0VSX0NMUkVOQSAgICAgICAgICAgICAgICAgICAgTlZJQ19JQ0VSX0NMUkVOQV9Nc2sgICAgICAgICAgICAgICAvKiE8IEludGVycnVwdCBjbGVhci1lbmFibGUgYml0cyAqLw0KI2RlZmluZSBOVklDX0lDRVJfQ0xSRU5BXzAgICAgICAgICAgICAgICAgICAoMHgwMDAwMDAwMVUgPDwgTlZJQ19JQ0VSX0NMUkVOQV9Qb3MpIC8qITwgMHgwMDAwMDAwMSAqLw0KI2RlZmluZSBOVklDX0lDRVJfQ0xSRU5BXzEgICAgICAgICAgICAgICAgICAoMHgwMDAwMDAwMlUgPDwgTlZJQ19JQ0VSX0NMUkVOQV9Qb3MpIC8qITwgMHgwMDAwMDAwMiAqLw0KI2RlZmluZSBOVklDX0lDRVJfQ0xSRU5BXzIgICAgICAgICAgICAgICAgICAoMHgwMDAwMDAwNFUgPDwgTlZJQ19JQ0VSX0NMUkVOQV9Qb3MpIC8qITwgMHgwMDAwMDAwNCAqLw0KI2RlZmluZSBOVklDX0lDRVJfQ0xSRU5BXzMgICAgICAgICAgICAgICAgICAoMHgwMDAwMDAwOFUgPDwgTlZJQ19JQ0VSX0NMUkVOQV9Qb3MpIC8qITwgMHgwMDAwMDAwOCAqLw0KI2RlZmluZSBOVklDX0lDRVJfQ0xSRU5BXzQgICAgICAgICAgICAgICAgICAoMHgwMDAwMDAxMFUgPDwgTlZJQ19JQ0VSX0NMUkVOQV9Qb3MpIC8qITwgMHgwMDAwMDAxMCAqLw0KI2RlZmluZSBOVklDX0lDRVJfQ0xSRU5BXzUgICAgICAgICAgICAgICAgICAoMHgwMDAwMDAyMFUgPDwgTlZJQ19JQ0VSX0NMUkVOQV9Qb3MpIC8qITwgMHgwMDAwMDAyMCAqLw0KI2RlZmluZSBOVklDX0lDRVJfQ0xSRU5BXzYgICAgICAgICAgICAgICAgICAoMHgwMDAwMDA0MFUgPDwgTlZJQ19JQ0VSX0NMUkVOQV9Qb3MpIC8qITwgMHgwMDAwMDA0MCAqLw0KI2RlZmluZSBOVklDX0lDRVJfQ0xSRU5BXzcgICAgICAgICAgICAgICAgICAoMHgwMDAwMDA4MFUgPDwgTlZJQ19JQ0VSX0NMUkVOQV9Qb3MpIC8qITwgMHgwMDAwMDA4MCAqLw0KI2RlZmluZSBOVklDX0lDRVJfQ0xSRU5BXzggICAgICAgICAgICAgICAgICAoMHgwMDAwMDEwMFUgPDwgTlZJQ19JQ0VSX0NMUkVOQV9Qb3MpIC8qITwgMHgwMDAwMDEwMCAqLw0KI2RlZmluZSBOVklDX0lDRVJfQ0xSRU5BXzkgICAgICAgICAgICAgICAgICAoMHgwMDAwMDIwMFUgPDwgTlZJQ19JQ0VSX0NMUkVOQV9Qb3MpIC8qITwgMHgwMDAwMDIwMCAqLw0KI2RlZmluZSBOVklDX0lDRVJfQ0xSRU5BXzEwICAgICAgICAgICAgICAgICAoMHgwMDAwMDQwMFUgPDwgTlZJQ19JQ0VSX0NMUkVOQV9Qb3MpIC8qITwgMHgwMDAwMDQwMCAqLw0KI2RlZmluZSBOVklDX0lDRVJfQ0xSRU5BXzExICAgICAgICAgICAgICAgICAoMHgwMDAwMDgwMFUgPDwgTlZJQ19JQ0VSX0NMUkVOQV9Qb3MpIC8qITwgMHgwMDAwMDgwMCAqLw0KI2RlZmluZSBOVklDX0lDRVJfQ0xSRU5BXzEyICAgICAgICAgICAgICAgICAoMHgwMDAwMTAwMFUgPDwgTlZJQ19JQ0VSX0NMUkVOQV9Qb3MpIC8qITwgMHgwMDAwMTAwMCAqLw0KI2RlZmluZSBOVklDX0lDRVJfQ0xSRU5BXzEzICAgICAgICAgICAgICAgICAoMHgwMDAwMjAwMFUgPDwgTlZJQ19JQ0VSX0NMUkVOQV9Qb3MpIC8qITwgMHgwMDAwMjAwMCAqLw0KI2RlZmluZSBOVklDX0lDRVJfQ0xSRU5BXzE0ICAgICAgICAgICAgICAgICAoMHgwMDAwNDAwMFUgPDwgTlZJQ19JQ0VSX0NMUkVOQV9Qb3MpIC8qITwgMHgwMDAwNDAwMCAqLw0KI2RlZmluZSBOVklDX0lDRVJfQ0xSRU5BXzE1ICAgICAgICAgICAgICAgICAoMHgwMDAwODAwMFUgPDwgTlZJQ19JQ0VSX0NMUkVOQV9Qb3MpIC8qITwgMHgwMDAwODAwMCAqLw0KI2RlZmluZSBOVklDX0lDRVJfQ0xSRU5BXzE2ICAgICAgICAgICAgICAgICAoMHgwMDAxMDAwMFUgPDwgTlZJQ19JQ0VSX0NMUkVOQV9Qb3MpIC8qITwgMHgwMDAxMDAwMCAqLw0KI2RlZmluZSBOVklDX0lDRVJfQ0xSRU5BXzE3ICAgICAgICAgICAgICAgICAoMHgwMDAyMDAwMFUgPDwgTlZJQ19JQ0VSX0NMUkVOQV9Qb3MpIC8qITwgMHgwMDAyMDAwMCAqLw0KI2RlZmluZSBOVklDX0lDRVJfQ0xSRU5BXzE4ICAgICAgICAgICAgICAgICAoMHgwMDA0MDAwMFUgPDwgTlZJQ19JQ0VSX0NMUkVOQV9Qb3MpIC8qITwgMHgwMDA0MDAwMCAqLw0KI2RlZmluZSBOVklDX0lDRVJfQ0xSRU5BXzE5ICAgICAgICAgICAgICAgICAoMHgwMDA4MDAwMFUgPDwgTlZJQ19JQ0VSX0NMUkVOQV9Qb3MpIC8qITwgMHgwMDA4MDAwMCAqLw0KI2RlZmluZSBOVklDX0lDRVJfQ0xSRU5BXzIwICAgICAgICAgICAgICAgICAoMHgwMDEwMDAwMFUgPDwgTlZJQ19JQ0VSX0NMUkVOQV9Qb3MpIC8qITwgMHgwMDEwMDAwMCAqLw0KI2RlZmluZSBOVklDX0lDRVJfQ0xSRU5BXzIxICAgICAgICAgICAgICAgICAoMHgwMDIwMDAwMFUgPDwgTlZJQ19JQ0VSX0NMUkVOQV9Qb3MpIC8qITwgMHgwMDIwMDAwMCAqLw0KI2RlZmluZSBOVklDX0lDRVJfQ0xSRU5BXzIyICAgICAgICAgICAgICAgICAoMHgwMDQwMDAwMFUgPDwgTlZJQ19JQ0VSX0NMUkVOQV9Qb3MpIC8qITwgMHgwMDQwMDAwMCAqLw0KI2RlZmluZSBOVklDX0lDRVJfQ0xSRU5BXzIzICAgICAgICAgICAgICAgICAoMHgwMDgwMDAwMFUgPDwgTlZJQ19JQ0VSX0NMUkVOQV9Qb3MpIC8qITwgMHgwMDgwMDAwMCAqLw0KI2RlZmluZSBOVklDX0lDRVJfQ0xSRU5BXzI0ICAgICAgICAgICAgICAgICAoMHgwMTAwMDAwMFUgPDwgTlZJQ19JQ0VSX0NMUkVOQV9Qb3MpIC8qITwgMHgwMTAwMDAwMCAqLw0KI2RlZmluZSBOVklDX0lDRVJfQ0xSRU5BXzI1ICAgICAgICAgICAgICAgICAoMHgwMjAwMDAwMFUgPDwgTlZJQ19JQ0VSX0NMUkVOQV9Qb3MpIC8qITwgMHgwMjAwMDAwMCAqLw0KI2RlZmluZSBOVklDX0lDRVJfQ0xSRU5BXzI2ICAgICAgICAgICAgICAgICAoMHgwNDAwMDAwMFUgPDwgTlZJQ19JQ0VSX0NMUkVOQV9Qb3MpIC8qITwgMHgwNDAwMDAwMCAqLw0KI2RlZmluZSBOVklDX0lDRVJfQ0xSRU5BXzI3ICAgICAgICAgICAgICAgICAoMHgwODAwMDAwMFUgPDwgTlZJQ19JQ0VSX0NMUkVOQV9Qb3MpIC8qITwgMHgwODAwMDAwMCAqLw0KI2RlZmluZSBOVklDX0lDRVJfQ0xSRU5BXzI4ICAgICAgICAgICAgICAgICAoMHgxMDAwMDAwMFUgPDwgTlZJQ19JQ0VSX0NMUkVOQV9Qb3MpIC8qITwgMHgxMDAwMDAwMCAqLw0KI2RlZmluZSBOVklDX0lDRVJfQ0xSRU5BXzI5ICAgICAgICAgICAgICAgICAoMHgyMDAwMDAwMFUgPDwgTlZJQ19JQ0VSX0NMUkVOQV9Qb3MpIC8qITwgMHgyMDAwMDAwMCAqLw0KI2RlZmluZSBOVklDX0lDRVJfQ0xSRU5BXzMwICAgICAgICAgICAgICAgICAoMHg0MDAwMDAwMFUgPDwgTlZJQ19JQ0VSX0NMUkVOQV9Qb3MpIC8qITwgMHg0MDAwMDAwMCAqLw0KI2RlZmluZSBOVklDX0lDRVJfQ0xSRU5BXzMxICAgICAgICAgICAgICAgICAoMHg4MDAwMDAwMFUgPDwgTlZJQ19JQ0VSX0NMUkVOQV9Qb3MpIC8qITwgMHg4MDAwMDAwMCAqLw0KDQovKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgTlZJQ19JU1BSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBOVklDX0lTUFJfU0VUUEVORF9Qb3MgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBOVklDX0lTUFJfU0VUUEVORF9Nc2sgICAgICAgICAgICAgICAoMHhGRkZGRkZGRlUgPDwgTlZJQ19JU1BSX1NFVFBFTkRfUG9zKSAvKiE8IDB4RkZGRkZGRkYgKi8NCiNkZWZpbmUgTlZJQ19JU1BSX1NFVFBFTkQgICAgICAgICAgICAgICAgICAgTlZJQ19JU1BSX1NFVFBFTkRfTXNrICAgICAgICAgICAgICAvKiE8IEludGVycnVwdCBzZXQtcGVuZGluZyBiaXRzICovDQojZGVmaW5lIE5WSUNfSVNQUl9TRVRQRU5EXzAgICAgICAgICAgICAgICAgICgweDAwMDAwMDAxVSA8PCBOVklDX0lTUFJfU0VUUEVORF9Qb3MpIC8qITwgMHgwMDAwMDAwMSAqLw0KI2RlZmluZSBOVklDX0lTUFJfU0VUUEVORF8xICAgICAgICAgICAgICAgICAoMHgwMDAwMDAwMlUgPDwgTlZJQ19JU1BSX1NFVFBFTkRfUG9zKSAvKiE8IDB4MDAwMDAwMDIgKi8NCiNkZWZpbmUgTlZJQ19JU1BSX1NFVFBFTkRfMiAgICAgICAgICAgICAgICAgKDB4MDAwMDAwMDRVIDw8IE5WSUNfSVNQUl9TRVRQRU5EX1BvcykgLyohPCAweDAwMDAwMDA0ICovDQojZGVmaW5lIE5WSUNfSVNQUl9TRVRQRU5EXzMgICAgICAgICAgICAgICAgICgweDAwMDAwMDA4VSA8PCBOVklDX0lTUFJfU0VUUEVORF9Qb3MpIC8qITwgMHgwMDAwMDAwOCAqLw0KI2RlZmluZSBOVklDX0lTUFJfU0VUUEVORF80ICAgICAgICAgICAgICAgICAoMHgwMDAwMDAxMFUgPDwgTlZJQ19JU1BSX1NFVFBFTkRfUG9zKSAvKiE8IDB4MDAwMDAwMTAgKi8NCiNkZWZpbmUgTlZJQ19JU1BSX1NFVFBFTkRfNSAgICAgICAgICAgICAgICAgKDB4MDAwMDAwMjBVIDw8IE5WSUNfSVNQUl9TRVRQRU5EX1BvcykgLyohPCAweDAwMDAwMDIwICovDQojZGVmaW5lIE5WSUNfSVNQUl9TRVRQRU5EXzYgICAgICAgICAgICAgICAgICgweDAwMDAwMDQwVSA8PCBOVklDX0lTUFJfU0VUUEVORF9Qb3MpIC8qITwgMHgwMDAwMDA0MCAqLw0KI2RlZmluZSBOVklDX0lTUFJfU0VUUEVORF83ICAgICAgICAgICAgICAgICAoMHgwMDAwMDA4MFUgPDwgTlZJQ19JU1BSX1NFVFBFTkRfUG9zKSAvKiE8IDB4MDAwMDAwODAgKi8NCiNkZWZpbmUgTlZJQ19JU1BSX1NFVFBFTkRfOCAgICAgICAgICAgICAgICAgKDB4MDAwMDAxMDBVIDw8IE5WSUNfSVNQUl9TRVRQRU5EX1BvcykgLyohPCAweDAwMDAwMTAwICovDQojZGVmaW5lIE5WSUNfSVNQUl9TRVRQRU5EXzkgICAgICAgICAgICAgICAgICgweDAwMDAwMjAwVSA8PCBOVklDX0lTUFJfU0VUUEVORF9Qb3MpIC8qITwgMHgwMDAwMDIwMCAqLw0KI2RlZmluZSBOVklDX0lTUFJfU0VUUEVORF8xMCAgICAgICAgICAgICAgICAoMHgwMDAwMDQwMFUgPDwgTlZJQ19JU1BSX1NFVFBFTkRfUG9zKSAvKiE8IDB4MDAwMDA0MDAgKi8NCiNkZWZpbmUgTlZJQ19JU1BSX1NFVFBFTkRfMTEgICAgICAgICAgICAgICAgKDB4MDAwMDA4MDBVIDw8IE5WSUNfSVNQUl9TRVRQRU5EX1BvcykgLyohPCAweDAwMDAwODAwICovDQojZGVmaW5lIE5WSUNfSVNQUl9TRVRQRU5EXzEyICAgICAgICAgICAgICAgICgweDAwMDAxMDAwVSA8PCBOVklDX0lTUFJfU0VUUEVORF9Qb3MpIC8qITwgMHgwMDAwMTAwMCAqLw0KI2RlZmluZSBOVklDX0lTUFJfU0VUUEVORF8xMyAgICAgICAgICAgICAgICAoMHgwMDAwMjAwMFUgPDwgTlZJQ19JU1BSX1NFVFBFTkRfUG9zKSAvKiE8IDB4MDAwMDIwMDAgKi8NCiNkZWZpbmUgTlZJQ19JU1BSX1NFVFBFTkRfMTQgICAgICAgICAgICAgICAgKDB4MDAwMDQwMDBVIDw8IE5WSUNfSVNQUl9TRVRQRU5EX1BvcykgLyohPCAweDAwMDA0MDAwICovDQojZGVmaW5lIE5WSUNfSVNQUl9TRVRQRU5EXzE1ICAgICAgICAgICAgICAgICgweDAwMDA4MDAwVSA8PCBOVklDX0lTUFJfU0VUUEVORF9Qb3MpIC8qITwgMHgwMDAwODAwMCAqLw0KI2RlZmluZSBOVklDX0lTUFJfU0VUUEVORF8xNiAgICAgICAgICAgICAgICAoMHgwMDAxMDAwMFUgPDwgTlZJQ19JU1BSX1NFVFBFTkRfUG9zKSAvKiE8IDB4MDAwMTAwMDAgKi8NCiNkZWZpbmUgTlZJQ19JU1BSX1NFVFBFTkRfMTcgICAgICAgICAgICAgICAgKDB4MDAwMjAwMDBVIDw8IE5WSUNfSVNQUl9TRVRQRU5EX1BvcykgLyohPCAweDAwMDIwMDAwICovDQojZGVmaW5lIE5WSUNfSVNQUl9TRVRQRU5EXzE4ICAgICAgICAgICAgICAgICgweDAwMDQwMDAwVSA8PCBOVklDX0lTUFJfU0VUUEVORF9Qb3MpIC8qITwgMHgwMDA0MDAwMCAqLw0KI2RlZmluZSBOVklDX0lTUFJfU0VUUEVORF8xOSAgICAgICAgICAgICAgICAoMHgwMDA4MDAwMFUgPDwgTlZJQ19JU1BSX1NFVFBFTkRfUG9zKSAvKiE8IDB4MDAwODAwMDAgKi8NCiNkZWZpbmUgTlZJQ19JU1BSX1NFVFBFTkRfMjAgICAgICAgICAgICAgICAgKDB4MDAxMDAwMDBVIDw8IE5WSUNfSVNQUl9TRVRQRU5EX1BvcykgLyohPCAweDAwMTAwMDAwICovDQojZGVmaW5lIE5WSUNfSVNQUl9TRVRQRU5EXzIxICAgICAgICAgICAgICAgICgweDAwMjAwMDAwVSA8PCBOVklDX0lTUFJfU0VUUEVORF9Qb3MpIC8qITwgMHgwMDIwMDAwMCAqLw0KI2RlZmluZSBOVklDX0lTUFJfU0VUUEVORF8yMiAgICAgICAgICAgICAgICAoMHgwMDQwMDAwMFUgPDwgTlZJQ19JU1BSX1NFVFBFTkRfUG9zKSAvKiE8IDB4MDA0MDAwMDAgKi8NCiNkZWZpbmUgTlZJQ19JU1BSX1NFVFBFTkRfMjMgICAgICAgICAgICAgICAgKDB4MDA4MDAwMDBVIDw8IE5WSUNfSVNQUl9TRVRQRU5EX1BvcykgLyohPCAweDAwODAwMDAwICovDQojZGVmaW5lIE5WSUNfSVNQUl9TRVRQRU5EXzI0ICAgICAgICAgICAgICAgICgweDAxMDAwMDAwVSA8PCBOVklDX0lTUFJfU0VUUEVORF9Qb3MpIC8qITwgMHgwMTAwMDAwMCAqLw0KI2RlZmluZSBOVklDX0lTUFJfU0VUUEVORF8yNSAgICAgICAgICAgICAgICAoMHgwMjAwMDAwMFUgPDwgTlZJQ19JU1BSX1NFVFBFTkRfUG9zKSAvKiE8IDB4MDIwMDAwMDAgKi8NCiNkZWZpbmUgTlZJQ19JU1BSX1NFVFBFTkRfMjYgICAgICAgICAgICAgICAgKDB4MDQwMDAwMDBVIDw8IE5WSUNfSVNQUl9TRVRQRU5EX1BvcykgLyohPCAweDA0MDAwMDAwICovDQojZGVmaW5lIE5WSUNfSVNQUl9TRVRQRU5EXzI3ICAgICAgICAgICAgICAgICgweDA4MDAwMDAwVSA8PCBOVklDX0lTUFJfU0VUUEVORF9Qb3MpIC8qITwgMHgwODAwMDAwMCAqLw0KI2RlZmluZSBOVklDX0lTUFJfU0VUUEVORF8yOCAgICAgICAgICAgICAgICAoMHgxMDAwMDAwMFUgPDwgTlZJQ19JU1BSX1NFVFBFTkRfUG9zKSAvKiE8IDB4MTAwMDAwMDAgKi8NCiNkZWZpbmUgTlZJQ19JU1BSX1NFVFBFTkRfMjkgICAgICAgICAgICAgICAgKDB4MjAwMDAwMDBVIDw8IE5WSUNfSVNQUl9TRVRQRU5EX1BvcykgLyohPCAweDIwMDAwMDAwICovDQojZGVmaW5lIE5WSUNfSVNQUl9TRVRQRU5EXzMwICAgICAgICAgICAgICAgICgweDQwMDAwMDAwVSA8PCBOVklDX0lTUFJfU0VUUEVORF9Qb3MpIC8qITwgMHg0MDAwMDAwMCAqLw0KI2RlZmluZSBOVklDX0lTUFJfU0VUUEVORF8zMSAgICAgICAgICAgICAgICAoMHg4MDAwMDAwMFUgPDwgTlZJQ19JU1BSX1NFVFBFTkRfUG9zKSAvKiE8IDB4ODAwMDAwMDAgKi8NCg0KLyoqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIE5WSUNfSUNQUiByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgTlZJQ19JQ1BSX0NMUlBFTkRfUG9zICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgTlZJQ19JQ1BSX0NMUlBFTkRfTXNrICAgICAgICAgICAgICAgKDB4RkZGRkZGRkZVIDw8IE5WSUNfSUNQUl9DTFJQRU5EX1BvcykgLyohPCAweEZGRkZGRkZGICovDQojZGVmaW5lIE5WSUNfSUNQUl9DTFJQRU5EICAgICAgICAgICAgICAgICAgIE5WSUNfSUNQUl9DTFJQRU5EX01zayAgICAgICAgICAgICAgLyohPCBJbnRlcnJ1cHQgY2xlYXItcGVuZGluZyBiaXRzICovDQojZGVmaW5lIE5WSUNfSUNQUl9DTFJQRU5EXzAgICAgICAgICAgICAgICAgICgweDAwMDAwMDAxVSA8PCBOVklDX0lDUFJfQ0xSUEVORF9Qb3MpIC8qITwgMHgwMDAwMDAwMSAqLw0KI2RlZmluZSBOVklDX0lDUFJfQ0xSUEVORF8xICAgICAgICAgICAgICAgICAoMHgwMDAwMDAwMlUgPDwgTlZJQ19JQ1BSX0NMUlBFTkRfUG9zKSAvKiE8IDB4MDAwMDAwMDIgKi8NCiNkZWZpbmUgTlZJQ19JQ1BSX0NMUlBFTkRfMiAgICAgICAgICAgICAgICAgKDB4MDAwMDAwMDRVIDw8IE5WSUNfSUNQUl9DTFJQRU5EX1BvcykgLyohPCAweDAwMDAwMDA0ICovDQojZGVmaW5lIE5WSUNfSUNQUl9DTFJQRU5EXzMgICAgICAgICAgICAgICAgICgweDAwMDAwMDA4VSA8PCBOVklDX0lDUFJfQ0xSUEVORF9Qb3MpIC8qITwgMHgwMDAwMDAwOCAqLw0KI2RlZmluZSBOVklDX0lDUFJfQ0xSUEVORF80ICAgICAgICAgICAgICAgICAoMHgwMDAwMDAxMFUgPDwgTlZJQ19JQ1BSX0NMUlBFTkRfUG9zKSAvKiE8IDB4MDAwMDAwMTAgKi8NCiNkZWZpbmUgTlZJQ19JQ1BSX0NMUlBFTkRfNSAgICAgICAgICAgICAgICAgKDB4MDAwMDAwMjBVIDw8IE5WSUNfSUNQUl9DTFJQRU5EX1BvcykgLyohPCAweDAwMDAwMDIwICovDQojZGVmaW5lIE5WSUNfSUNQUl9DTFJQRU5EXzYgICAgICAgICAgICAgICAgICgweDAwMDAwMDQwVSA8PCBOVklDX0lDUFJfQ0xSUEVORF9Qb3MpIC8qITwgMHgwMDAwMDA0MCAqLw0KI2RlZmluZSBOVklDX0lDUFJfQ0xSUEVORF83ICAgICAgICAgICAgICAgICAoMHgwMDAwMDA4MFUgPDwgTlZJQ19JQ1BSX0NMUlBFTkRfUG9zKSAvKiE8IDB4MDAwMDAwODAgKi8NCiNkZWZpbmUgTlZJQ19JQ1BSX0NMUlBFTkRfOCAgICAgICAgICAgICAgICAgKDB4MDAwMDAxMDBVIDw8IE5WSUNfSUNQUl9DTFJQRU5EX1BvcykgLyohPCAweDAwMDAwMTAwICovDQojZGVmaW5lIE5WSUNfSUNQUl9DTFJQRU5EXzkgICAgICAgICAgICAgICAgICgweDAwMDAwMjAwVSA8PCBOVklDX0lDUFJfQ0xSUEVORF9Qb3MpIC8qITwgMHgwMDAwMDIwMCAqLw0KI2RlZmluZSBOVklDX0lDUFJfQ0xSUEVORF8xMCAgICAgICAgICAgICAgICAoMHgwMDAwMDQwMFUgPDwgTlZJQ19JQ1BSX0NMUlBFTkRfUG9zKSAvKiE8IDB4MDAwMDA0MDAgKi8NCiNkZWZpbmUgTlZJQ19JQ1BSX0NMUlBFTkRfMTEgICAgICAgICAgICAgICAgKDB4MDAwMDA4MDBVIDw8IE5WSUNfSUNQUl9DTFJQRU5EX1BvcykgLyohPCAweDAwMDAwODAwICovDQojZGVmaW5lIE5WSUNfSUNQUl9DTFJQRU5EXzEyICAgICAgICAgICAgICAgICgweDAwMDAxMDAwVSA8PCBOVklDX0lDUFJfQ0xSUEVORF9Qb3MpIC8qITwgMHgwMDAwMTAwMCAqLw0KI2RlZmluZSBOVklDX0lDUFJfQ0xSUEVORF8xMyAgICAgICAgICAgICAgICAoMHgwMDAwMjAwMFUgPDwgTlZJQ19JQ1BSX0NMUlBFTkRfUG9zKSAvKiE8IDB4MDAwMDIwMDAgKi8NCiNkZWZpbmUgTlZJQ19JQ1BSX0NMUlBFTkRfMTQgICAgICAgICAgICAgICAgKDB4MDAwMDQwMDBVIDw8IE5WSUNfSUNQUl9DTFJQRU5EX1BvcykgLyohPCAweDAwMDA0MDAwICovDQojZGVmaW5lIE5WSUNfSUNQUl9DTFJQRU5EXzE1ICAgICAgICAgICAgICAgICgweDAwMDA4MDAwVSA8PCBOVklDX0lDUFJfQ0xSUEVORF9Qb3MpIC8qITwgMHgwMDAwODAwMCAqLw0KI2RlZmluZSBOVklDX0lDUFJfQ0xSUEVORF8xNiAgICAgICAgICAgICAgICAoMHgwMDAxMDAwMFUgPDwgTlZJQ19JQ1BSX0NMUlBFTkRfUG9zKSAvKiE8IDB4MDAwMTAwMDAgKi8NCiNkZWZpbmUgTlZJQ19JQ1BSX0NMUlBFTkRfMTcgICAgICAgICAgICAgICAgKDB4MDAwMjAwMDBVIDw8IE5WSUNfSUNQUl9DTFJQRU5EX1BvcykgLyohPCAweDAwMDIwMDAwICovDQojZGVmaW5lIE5WSUNfSUNQUl9DTFJQRU5EXzE4ICAgICAgICAgICAgICAgICgweDAwMDQwMDAwVSA8PCBOVklDX0lDUFJfQ0xSUEVORF9Qb3MpIC8qITwgMHgwMDA0MDAwMCAqLw0KI2RlZmluZSBOVklDX0lDUFJfQ0xSUEVORF8xOSAgICAgICAgICAgICAgICAoMHgwMDA4MDAwMFUgPDwgTlZJQ19JQ1BSX0NMUlBFTkRfUG9zKSAvKiE8IDB4MDAwODAwMDAgKi8NCiNkZWZpbmUgTlZJQ19JQ1BSX0NMUlBFTkRfMjAgICAgICAgICAgICAgICAgKDB4MDAxMDAwMDBVIDw8IE5WSUNfSUNQUl9DTFJQRU5EX1BvcykgLyohPCAweDAwMTAwMDAwICovDQojZGVmaW5lIE5WSUNfSUNQUl9DTFJQRU5EXzIxICAgICAgICAgICAgICAgICgweDAwMjAwMDAwVSA8PCBOVklDX0lDUFJfQ0xSUEVORF9Qb3MpIC8qITwgMHgwMDIwMDAwMCAqLw0KI2RlZmluZSBOVklDX0lDUFJfQ0xSUEVORF8yMiAgICAgICAgICAgICAgICAoMHgwMDQwMDAwMFUgPDwgTlZJQ19JQ1BSX0NMUlBFTkRfUG9zKSAvKiE8IDB4MDA0MDAwMDAgKi8NCiNkZWZpbmUgTlZJQ19JQ1BSX0NMUlBFTkRfMjMgICAgICAgICAgICAgICAgKDB4MDA4MDAwMDBVIDw8IE5WSUNfSUNQUl9DTFJQRU5EX1BvcykgLyohPCAweDAwODAwMDAwICovDQojZGVmaW5lIE5WSUNfSUNQUl9DTFJQRU5EXzI0ICAgICAgICAgICAgICAgICgweDAxMDAwMDAwVSA8PCBOVklDX0lDUFJfQ0xSUEVORF9Qb3MpIC8qITwgMHgwMTAwMDAwMCAqLw0KI2RlZmluZSBOVklDX0lDUFJfQ0xSUEVORF8yNSAgICAgICAgICAgICAgICAoMHgwMjAwMDAwMFUgPDwgTlZJQ19JQ1BSX0NMUlBFTkRfUG9zKSAvKiE8IDB4MDIwMDAwMDAgKi8NCiNkZWZpbmUgTlZJQ19JQ1BSX0NMUlBFTkRfMjYgICAgICAgICAgICAgICAgKDB4MDQwMDAwMDBVIDw8IE5WSUNfSUNQUl9DTFJQRU5EX1BvcykgLyohPCAweDA0MDAwMDAwICovDQojZGVmaW5lIE5WSUNfSUNQUl9DTFJQRU5EXzI3ICAgICAgICAgICAgICAgICgweDA4MDAwMDAwVSA8PCBOVklDX0lDUFJfQ0xSUEVORF9Qb3MpIC8qITwgMHgwODAwMDAwMCAqLw0KI2RlZmluZSBOVklDX0lDUFJfQ0xSUEVORF8yOCAgICAgICAgICAgICAgICAoMHgxMDAwMDAwMFUgPDwgTlZJQ19JQ1BSX0NMUlBFTkRfUG9zKSAvKiE8IDB4MTAwMDAwMDAgKi8NCiNkZWZpbmUgTlZJQ19JQ1BSX0NMUlBFTkRfMjkgICAgICAgICAgICAgICAgKDB4MjAwMDAwMDBVIDw8IE5WSUNfSUNQUl9DTFJQRU5EX1BvcykgLyohPCAweDIwMDAwMDAwICovDQojZGVmaW5lIE5WSUNfSUNQUl9DTFJQRU5EXzMwICAgICAgICAgICAgICAgICgweDQwMDAwMDAwVSA8PCBOVklDX0lDUFJfQ0xSUEVORF9Qb3MpIC8qITwgMHg0MDAwMDAwMCAqLw0KI2RlZmluZSBOVklDX0lDUFJfQ0xSUEVORF8zMSAgICAgICAgICAgICAgICAoMHg4MDAwMDAwMFUgPDwgTlZJQ19JQ1BSX0NMUlBFTkRfUG9zKSAvKiE8IDB4ODAwMDAwMDAgKi8NCg0KLyoqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIE5WSUNfSUFCUiByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgTlZJQ19JQUJSX0FDVElWRV9Qb3MgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgTlZJQ19JQUJSX0FDVElWRV9Nc2sgICAgICAgICAgICAgICAgKDB4RkZGRkZGRkZVIDw8IE5WSUNfSUFCUl9BQ1RJVkVfUG9zKSAvKiE8IDB4RkZGRkZGRkYgKi8NCiNkZWZpbmUgTlZJQ19JQUJSX0FDVElWRSAgICAgICAgICAgICAgICAgICAgTlZJQ19JQUJSX0FDVElWRV9Nc2sgICAgICAgICAgICAgICAvKiE8IEludGVycnVwdCBhY3RpdmUgZmxhZ3MgKi8NCiNkZWZpbmUgTlZJQ19JQUJSX0FDVElWRV8wICAgICAgICAgICAgICAgICAgKDB4MDAwMDAwMDFVIDw8IE5WSUNfSUFCUl9BQ1RJVkVfUG9zKSAvKiE8IDB4MDAwMDAwMDEgKi8NCiNkZWZpbmUgTlZJQ19JQUJSX0FDVElWRV8xICAgICAgICAgICAgICAgICAgKDB4MDAwMDAwMDJVIDw8IE5WSUNfSUFCUl9BQ1RJVkVfUG9zKSAvKiE8IDB4MDAwMDAwMDIgKi8NCiNkZWZpbmUgTlZJQ19JQUJSX0FDVElWRV8yICAgICAgICAgICAgICAgICAgKDB4MDAwMDAwMDRVIDw8IE5WSUNfSUFCUl9BQ1RJVkVfUG9zKSAvKiE8IDB4MDAwMDAwMDQgKi8NCiNkZWZpbmUgTlZJQ19JQUJSX0FDVElWRV8zICAgICAgICAgICAgICAgICAgKDB4MDAwMDAwMDhVIDw8IE5WSUNfSUFCUl9BQ1RJVkVfUG9zKSAvKiE8IDB4MDAwMDAwMDggKi8NCiNkZWZpbmUgTlZJQ19JQUJSX0FDVElWRV80ICAgICAgICAgICAgICAgICAgKDB4MDAwMDAwMTBVIDw8IE5WSUNfSUFCUl9BQ1RJVkVfUG9zKSAvKiE8IDB4MDAwMDAwMTAgKi8NCiNkZWZpbmUgTlZJQ19JQUJSX0FDVElWRV81ICAgICAgICAgICAgICAgICAgKDB4MDAwMDAwMjBVIDw8IE5WSUNfSUFCUl9BQ1RJVkVfUG9zKSAvKiE8IDB4MDAwMDAwMjAgKi8NCiNkZWZpbmUgTlZJQ19JQUJSX0FDVElWRV82ICAgICAgICAgICAgICAgICAgKDB4MDAwMDAwNDBVIDw8IE5WSUNfSUFCUl9BQ1RJVkVfUG9zKSAvKiE8IDB4MDAwMDAwNDAgKi8NCiNkZWZpbmUgTlZJQ19JQUJSX0FDVElWRV83ICAgICAgICAgICAgICAgICAgKDB4MDAwMDAwODBVIDw8IE5WSUNfSUFCUl9BQ1RJVkVfUG9zKSAvKiE8IDB4MDAwMDAwODAgKi8NCiNkZWZpbmUgTlZJQ19JQUJSX0FDVElWRV84ICAgICAgICAgICAgICAgICAgKDB4MDAwMDAxMDBVIDw8IE5WSUNfSUFCUl9BQ1RJVkVfUG9zKSAvKiE8IDB4MDAwMDAxMDAgKi8NCiNkZWZpbmUgTlZJQ19JQUJSX0FDVElWRV85ICAgICAgICAgICAgICAgICAgKDB4MDAwMDAyMDBVIDw8IE5WSUNfSUFCUl9BQ1RJVkVfUG9zKSAvKiE8IDB4MDAwMDAyMDAgKi8NCiNkZWZpbmUgTlZJQ19JQUJSX0FDVElWRV8xMCAgICAgICAgICAgICAgICAgKDB4MDAwMDA0MDBVIDw8IE5WSUNfSUFCUl9BQ1RJVkVfUG9zKSAvKiE8IDB4MDAwMDA0MDAgKi8NCiNkZWZpbmUgTlZJQ19JQUJSX0FDVElWRV8xMSAgICAgICAgICAgICAgICAgKDB4MDAwMDA4MDBVIDw8IE5WSUNfSUFCUl9BQ1RJVkVfUG9zKSAvKiE8IDB4MDAwMDA4MDAgKi8NCiNkZWZpbmUgTlZJQ19JQUJSX0FDVElWRV8xMiAgICAgICAgICAgICAgICAgKDB4MDAwMDEwMDBVIDw8IE5WSUNfSUFCUl9BQ1RJVkVfUG9zKSAvKiE8IDB4MDAwMDEwMDAgKi8NCiNkZWZpbmUgTlZJQ19JQUJSX0FDVElWRV8xMyAgICAgICAgICAgICAgICAgKDB4MDAwMDIwMDBVIDw8IE5WSUNfSUFCUl9BQ1RJVkVfUG9zKSAvKiE8IDB4MDAwMDIwMDAgKi8NCiNkZWZpbmUgTlZJQ19JQUJSX0FDVElWRV8xNCAgICAgICAgICAgICAgICAgKDB4MDAwMDQwMDBVIDw8IE5WSUNfSUFCUl9BQ1RJVkVfUG9zKSAvKiE8IDB4MDAwMDQwMDAgKi8NCiNkZWZpbmUgTlZJQ19JQUJSX0FDVElWRV8xNSAgICAgICAgICAgICAgICAgKDB4MDAwMDgwMDBVIDw8IE5WSUNfSUFCUl9BQ1RJVkVfUG9zKSAvKiE8IDB4MDAwMDgwMDAgKi8NCiNkZWZpbmUgTlZJQ19JQUJSX0FDVElWRV8xNiAgICAgICAgICAgICAgICAgKDB4MDAwMTAwMDBVIDw8IE5WSUNfSUFCUl9BQ1RJVkVfUG9zKSAvKiE8IDB4MDAwMTAwMDAgKi8NCiNkZWZpbmUgTlZJQ19JQUJSX0FDVElWRV8xNyAgICAgICAgICAgICAgICAgKDB4MDAwMjAwMDBVIDw8IE5WSUNfSUFCUl9BQ1RJVkVfUG9zKSAvKiE8IDB4MDAwMjAwMDAgKi8NCiNkZWZpbmUgTlZJQ19JQUJSX0FDVElWRV8xOCAgICAgICAgICAgICAgICAgKDB4MDAwNDAwMDBVIDw8IE5WSUNfSUFCUl9BQ1RJVkVfUG9zKSAvKiE8IDB4MDAwNDAwMDAgKi8NCiNkZWZpbmUgTlZJQ19JQUJSX0FDVElWRV8xOSAgICAgICAgICAgICAgICAgKDB4MDAwODAwMDBVIDw8IE5WSUNfSUFCUl9BQ1RJVkVfUG9zKSAvKiE8IDB4MDAwODAwMDAgKi8NCiNkZWZpbmUgTlZJQ19JQUJSX0FDVElWRV8yMCAgICAgICAgICAgICAgICAgKDB4MDAxMDAwMDBVIDw8IE5WSUNfSUFCUl9BQ1RJVkVfUG9zKSAvKiE8IDB4MDAxMDAwMDAgKi8NCiNkZWZpbmUgTlZJQ19JQUJSX0FDVElWRV8yMSAgICAgICAgICAgICAgICAgKDB4MDAyMDAwMDBVIDw8IE5WSUNfSUFCUl9BQ1RJVkVfUG9zKSAvKiE8IDB4MDAyMDAwMDAgKi8NCiNkZWZpbmUgTlZJQ19JQUJSX0FDVElWRV8yMiAgICAgICAgICAgICAgICAgKDB4MDA0MDAwMDBVIDw8IE5WSUNfSUFCUl9BQ1RJVkVfUG9zKSAvKiE8IDB4MDA0MDAwMDAgKi8NCiNkZWZpbmUgTlZJQ19JQUJSX0FDVElWRV8yMyAgICAgICAgICAgICAgICAgKDB4MDA4MDAwMDBVIDw8IE5WSUNfSUFCUl9BQ1RJVkVfUG9zKSAvKiE8IDB4MDA4MDAwMDAgKi8NCiNkZWZpbmUgTlZJQ19JQUJSX0FDVElWRV8yNCAgICAgICAgICAgICAgICAgKDB4MDEwMDAwMDBVIDw8IE5WSUNfSUFCUl9BQ1RJVkVfUG9zKSAvKiE8IDB4MDEwMDAwMDAgKi8NCiNkZWZpbmUgTlZJQ19JQUJSX0FDVElWRV8yNSAgICAgICAgICAgICAgICAgKDB4MDIwMDAwMDBVIDw8IE5WSUNfSUFCUl9BQ1RJVkVfUG9zKSAvKiE8IDB4MDIwMDAwMDAgKi8NCiNkZWZpbmUgTlZJQ19JQUJSX0FDVElWRV8yNiAgICAgICAgICAgICAgICAgKDB4MDQwMDAwMDBVIDw8IE5WSUNfSUFCUl9BQ1RJVkVfUG9zKSAvKiE8IDB4MDQwMDAwMDAgKi8NCiNkZWZpbmUgTlZJQ19JQUJSX0FDVElWRV8yNyAgICAgICAgICAgICAgICAgKDB4MDgwMDAwMDBVIDw8IE5WSUNfSUFCUl9BQ1RJVkVfUG9zKSAvKiE8IDB4MDgwMDAwMDAgKi8NCiNkZWZpbmUgTlZJQ19JQUJSX0FDVElWRV8yOCAgICAgICAgICAgICAgICAgKDB4MTAwMDAwMDBVIDw8IE5WSUNfSUFCUl9BQ1RJVkVfUG9zKSAvKiE8IDB4MTAwMDAwMDAgKi8NCiNkZWZpbmUgTlZJQ19JQUJSX0FDVElWRV8yOSAgICAgICAgICAgICAgICAgKDB4MjAwMDAwMDBVIDw8IE5WSUNfSUFCUl9BQ1RJVkVfUG9zKSAvKiE8IDB4MjAwMDAwMDAgKi8NCiNkZWZpbmUgTlZJQ19JQUJSX0FDVElWRV8zMCAgICAgICAgICAgICAgICAgKDB4NDAwMDAwMDBVIDw8IE5WSUNfSUFCUl9BQ1RJVkVfUG9zKSAvKiE8IDB4NDAwMDAwMDAgKi8NCiNkZWZpbmUgTlZJQ19JQUJSX0FDVElWRV8zMSAgICAgICAgICAgICAgICAgKDB4ODAwMDAwMDBVIDw8IE5WSUNfSUFCUl9BQ1RJVkVfUG9zKSAvKiE8IDB4ODAwMDAwMDAgKi8NCg0KLyoqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIE5WSUNfUFJJMCByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgTlZJQ19JUFIwX1BSSV8wICAgICAgICAgICAgICAgICAgICAgKDB4MDAwMDAwRkZVKSAgICAgICAgICAgICAgICAgICAgICAvKiE8IFByaW9yaXR5IG9mIGludGVycnVwdCAwICovDQojZGVmaW5lIE5WSUNfSVBSMF9QUklfMSAgICAgICAgICAgICAgICAgICAgICgweDAwMDBGRjAwVSkgICAgICAgICAgICAgICAgICAgICAgLyohPCBQcmlvcml0eSBvZiBpbnRlcnJ1cHQgMSAqLw0KI2RlZmluZSBOVklDX0lQUjBfUFJJXzIgICAgICAgICAgICAgICAgICAgICAoMHgwMEZGMDAwMFUpICAgICAgICAgICAgICAgICAgICAgIC8qITwgUHJpb3JpdHkgb2YgaW50ZXJydXB0IDIgKi8NCiNkZWZpbmUgTlZJQ19JUFIwX1BSSV8zICAgICAgICAgICAgICAgICAgICAgKDB4RkYwMDAwMDBVKSAgICAgICAgICAgICAgICAgICAgICAvKiE8IFByaW9yaXR5IG9mIGludGVycnVwdCAzICovDQoNCi8qKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBOVklDX1BSSTEgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIE5WSUNfSVBSMV9QUklfNCAgICAgICAgICAgICAgICAgICAgICgweDAwMDAwMEZGVSkgICAgICAgICAgICAgICAgICAgICAgLyohPCBQcmlvcml0eSBvZiBpbnRlcnJ1cHQgNCAqLw0KI2RlZmluZSBOVklDX0lQUjFfUFJJXzUgICAgICAgICAgICAgICAgICAgICAoMHgwMDAwRkYwMFUpICAgICAgICAgICAgICAgICAgICAgIC8qITwgUHJpb3JpdHkgb2YgaW50ZXJydXB0IDUgKi8NCiNkZWZpbmUgTlZJQ19JUFIxX1BSSV82ICAgICAgICAgICAgICAgICAgICAgKDB4MDBGRjAwMDBVKSAgICAgICAgICAgICAgICAgICAgICAvKiE8IFByaW9yaXR5IG9mIGludGVycnVwdCA2ICovDQojZGVmaW5lIE5WSUNfSVBSMV9QUklfNyAgICAgICAgICAgICAgICAgICAgICgweEZGMDAwMDAwVSkgICAgICAgICAgICAgICAgICAgICAgLyohPCBQcmlvcml0eSBvZiBpbnRlcnJ1cHQgNyAqLw0KDQovKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgTlZJQ19QUkkyIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBOVklDX0lQUjJfUFJJXzggICAgICAgICAgICAgICAgICAgICAoMHgwMDAwMDBGRlUpICAgICAgICAgICAgICAgICAgICAgIC8qITwgUHJpb3JpdHkgb2YgaW50ZXJydXB0IDggKi8NCiNkZWZpbmUgTlZJQ19JUFIyX1BSSV85ICAgICAgICAgICAgICAgICAgICAgKDB4MDAwMEZGMDBVKSAgICAgICAgICAgICAgICAgICAgICAvKiE8IFByaW9yaXR5IG9mIGludGVycnVwdCA5ICovDQojZGVmaW5lIE5WSUNfSVBSMl9QUklfMTAgICAgICAgICAgICAgICAgICAgICgweDAwRkYwMDAwVSkgICAgICAgICAgICAgICAgICAgICAgLyohPCBQcmlvcml0eSBvZiBpbnRlcnJ1cHQgMTAgKi8NCiNkZWZpbmUgTlZJQ19JUFIyX1BSSV8xMSAgICAgICAgICAgICAgICAgICAgKDB4RkYwMDAwMDBVKSAgICAgICAgICAgICAgICAgICAgICAvKiE8IFByaW9yaXR5IG9mIGludGVycnVwdCAxMSAqLw0KDQovKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgTlZJQ19QUkkzIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBOVklDX0lQUjNfUFJJXzEyICAgICAgICAgICAgICAgICAgICAoMHgwMDAwMDBGRlUpICAgICAgICAgICAgICAgICAgICAgIC8qITwgUHJpb3JpdHkgb2YgaW50ZXJydXB0IDEyICovDQojZGVmaW5lIE5WSUNfSVBSM19QUklfMTMgICAgICAgICAgICAgICAgICAgICgweDAwMDBGRjAwVSkgICAgICAgICAgICAgICAgICAgICAgLyohPCBQcmlvcml0eSBvZiBpbnRlcnJ1cHQgMTMgKi8NCiNkZWZpbmUgTlZJQ19JUFIzX1BSSV8xNCAgICAgICAgICAgICAgICAgICAgKDB4MDBGRjAwMDBVKSAgICAgICAgICAgICAgICAgICAgICAvKiE8IFByaW9yaXR5IG9mIGludGVycnVwdCAxNCAqLw0KI2RlZmluZSBOVklDX0lQUjNfUFJJXzE1ICAgICAgICAgICAgICAgICAgICAoMHhGRjAwMDAwMFUpICAgICAgICAgICAgICAgICAgICAgIC8qITwgUHJpb3JpdHkgb2YgaW50ZXJydXB0IDE1ICovDQoNCi8qKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBOVklDX1BSSTQgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIE5WSUNfSVBSNF9QUklfMTYgICAgICAgICAgICAgICAgICAgICgweDAwMDAwMEZGVSkgICAgICAgICAgICAgICAgICAgICAgLyohPCBQcmlvcml0eSBvZiBpbnRlcnJ1cHQgMTYgKi8NCiNkZWZpbmUgTlZJQ19JUFI0X1BSSV8xNyAgICAgICAgICAgICAgICAgICAgKDB4MDAwMEZGMDBVKSAgICAgICAgICAgICAgICAgICAgICAvKiE8IFByaW9yaXR5IG9mIGludGVycnVwdCAxNyAqLw0KI2RlZmluZSBOVklDX0lQUjRfUFJJXzE4ICAgICAgICAgICAgICAgICAgICAoMHgwMEZGMDAwMFUpICAgICAgICAgICAgICAgICAgICAgIC8qITwgUHJpb3JpdHkgb2YgaW50ZXJydXB0IDE4ICovDQojZGVmaW5lIE5WSUNfSVBSNF9QUklfMTkgICAgICAgICAgICAgICAgICAgICgweEZGMDAwMDAwVSkgICAgICAgICAgICAgICAgICAgICAgLyohPCBQcmlvcml0eSBvZiBpbnRlcnJ1cHQgMTkgKi8NCg0KLyoqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIE5WSUNfUFJJNSByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgTlZJQ19JUFI1X1BSSV8yMCAgICAgICAgICAgICAgICAgICAgKDB4MDAwMDAwRkZVKSAgICAgICAgICAgICAgICAgICAgICAvKiE8IFByaW9yaXR5IG9mIGludGVycnVwdCAyMCAqLw0KI2RlZmluZSBOVklDX0lQUjVfUFJJXzIxICAgICAgICAgICAgICAgICAgICAoMHgwMDAwRkYwMFUpICAgICAgICAgICAgICAgICAgICAgIC8qITwgUHJpb3JpdHkgb2YgaW50ZXJydXB0IDIxICovDQojZGVmaW5lIE5WSUNfSVBSNV9QUklfMjIgICAgICAgICAgICAgICAgICAgICgweDAwRkYwMDAwVSkgICAgICAgICAgICAgICAgICAgICAgLyohPCBQcmlvcml0eSBvZiBpbnRlcnJ1cHQgMjIgKi8NCiNkZWZpbmUgTlZJQ19JUFI1X1BSSV8yMyAgICAgICAgICAgICAgICAgICAgKDB4RkYwMDAwMDBVKSAgICAgICAgICAgICAgICAgICAgICAvKiE8IFByaW9yaXR5IG9mIGludGVycnVwdCAyMyAqLw0KDQovKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgTlZJQ19QUkk2IHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBOVklDX0lQUjZfUFJJXzI0ICAgICAgICAgICAgICAgICAgICAoMHgwMDAwMDBGRlUpICAgICAgICAgICAgICAgICAgICAgIC8qITwgUHJpb3JpdHkgb2YgaW50ZXJydXB0IDI0ICovDQojZGVmaW5lIE5WSUNfSVBSNl9QUklfMjUgICAgICAgICAgICAgICAgICAgICgweDAwMDBGRjAwVSkgICAgICAgICAgICAgICAgICAgICAgLyohPCBQcmlvcml0eSBvZiBpbnRlcnJ1cHQgMjUgKi8NCiNkZWZpbmUgTlZJQ19JUFI2X1BSSV8yNiAgICAgICAgICAgICAgICAgICAgKDB4MDBGRjAwMDBVKSAgICAgICAgICAgICAgICAgICAgICAvKiE8IFByaW9yaXR5IG9mIGludGVycnVwdCAyNiAqLw0KI2RlZmluZSBOVklDX0lQUjZfUFJJXzI3ICAgICAgICAgICAgICAgICAgICAoMHhGRjAwMDAwMFUpICAgICAgICAgICAgICAgICAgICAgIC8qITwgUHJpb3JpdHkgb2YgaW50ZXJydXB0IDI3ICovDQoNCi8qKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBOVklDX1BSSTcgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIE5WSUNfSVBSN19QUklfMjggICAgICAgICAgICAgICAgICAgICgweDAwMDAwMEZGVSkgICAgICAgICAgICAgICAgICAgICAgLyohPCBQcmlvcml0eSBvZiBpbnRlcnJ1cHQgMjggKi8NCiNkZWZpbmUgTlZJQ19JUFI3X1BSSV8yOSAgICAgICAgICAgICAgICAgICAgKDB4MDAwMEZGMDBVKSAgICAgICAgICAgICAgICAgICAgICAvKiE8IFByaW9yaXR5IG9mIGludGVycnVwdCAyOSAqLw0KI2RlZmluZSBOVklDX0lQUjdfUFJJXzMwICAgICAgICAgICAgICAgICAgICAoMHgwMEZGMDAwMFUpICAgICAgICAgICAgICAgICAgICAgIC8qITwgUHJpb3JpdHkgb2YgaW50ZXJydXB0IDMwICovDQojZGVmaW5lIE5WSUNfSVBSN19QUklfMzEgICAgICAgICAgICAgICAgICAgICgweEZGMDAwMDAwVSkgICAgICAgICAgICAgICAgICAgICAgLyohPCBQcmlvcml0eSBvZiBpbnRlcnJ1cHQgMzEgKi8NCg0KLyoqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFNDQl9DUFVJRCByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgU0NCX0NQVUlEX1JFVklTSU9OICAgICAgICAgICAgICAgICAgKDB4MDAwMDAwMEZVKSAgICAgICAgICAgICAgICAgICAgICAvKiE8IEltcGxlbWVudGF0aW9uIGRlZmluZWQgcmV2aXNpb24gbnVtYmVyICovDQojZGVmaW5lIFNDQl9DUFVJRF9QQVJUTk8gICAgICAgICAgICAgICAgICAgICgweDAwMDBGRkYwVSkgICAgICAgICAgICAgICAgICAgICAgLyohPCBOdW1iZXIgb2YgcHJvY2Vzc29yIHdpdGhpbiBzZXJpZSAqLw0KI2RlZmluZSBTQ0JfQ1BVSURfQ29uc3RhbnQgICAgICAgICAgICAgICAgICAoMHgwMDBGMDAwMFUpICAgICAgICAgICAgICAgICAgICAgIC8qITwgUmVhZHMgYXMgMHgwRiAqLw0KI2RlZmluZSBTQ0JfQ1BVSURfVkFSSUFOVCAgICAgICAgICAgICAgICAgICAoMHgwMEYwMDAwMFUpICAgICAgICAgICAgICAgICAgICAgIC8qITwgSW1wbGVtZW50YXRpb24gZGVmaW5lZCB2YXJpYW50IG51bWJlciAqLw0KI2RlZmluZSBTQ0JfQ1BVSURfSU1QTEVNRU5URVIgICAgICAgICAgICAgICAoMHhGRjAwMDAwMFUpICAgICAgICAgICAgICAgICAgICAgIC8qITwgSW1wbGVtZW50ZXIgY29kZS4gQVJNIGlzIDB4NDEgKi8NCg0KLyoqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBTQ0JfSUNTUiByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgU0NCX0lDU1JfVkVDVEFDVElWRSAgICAgICAgICAgICAgICAgKDB4MDAwMDAxRkZVKSAgICAgICAgICAgICAgICAgICAgICAvKiE8IEFjdGl2ZSBJU1IgbnVtYmVyIGZpZWxkICovDQojZGVmaW5lIFNDQl9JQ1NSX1JFVFRPQkFTRSAgICAgICAgICAgICAgICAgICgweDAwMDAwODAwVSkgICAgICAgICAgICAgICAgICAgICAgLyohPCBBbGwgYWN0aXZlIGV4Y2VwdGlvbnMgbWludXMgdGhlIElQU1JfY3VycmVudF9leGNlcHRpb24geWllbGRzIHRoZSBlbXB0eSBzZXQgKi8NCiNkZWZpbmUgU0NCX0lDU1JfVkVDVFBFTkRJTkcgICAgICAgICAgICAgICAgKDB4MDAzRkYwMDBVKSAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBlbmRpbmcgSVNSIG51bWJlciBmaWVsZCAqLw0KI2RlZmluZSBTQ0JfSUNTUl9JU1JQRU5ESU5HICAgICAgICAgICAgICAgICAoMHgwMDQwMDAwMFUpICAgICAgICAgICAgICAgICAgICAgIC8qITwgSW50ZXJydXB0IHBlbmRpbmcgZmxhZyAqLw0KI2RlZmluZSBTQ0JfSUNTUl9JU1JQUkVFTVBUICAgICAgICAgICAgICAgICAoMHgwMDgwMDAwMFUpICAgICAgICAgICAgICAgICAgICAgIC8qITwgSXQgaW5kaWNhdGVzIHRoYXQgYSBwZW5kaW5nIGludGVycnVwdCBiZWNvbWVzIGFjdGl2ZSBpbiB0aGUgbmV4dCBydW5uaW5nIGN5Y2xlICovDQojZGVmaW5lIFNDQl9JQ1NSX1BFTkRTVENMUiAgICAgICAgICAgICAgICAgICgweDAyMDAwMDAwVSkgICAgICAgICAgICAgICAgICAgICAgLyohPCBDbGVhciBwZW5kaW5nIFN5c1RpY2sgYml0ICovDQojZGVmaW5lIFNDQl9JQ1NSX1BFTkRTVFNFVCAgICAgICAgICAgICAgICAgICgweDA0MDAwMDAwVSkgICAgICAgICAgICAgICAgICAgICAgLyohPCBTZXQgcGVuZGluZyBTeXNUaWNrIGJpdCAqLw0KI2RlZmluZSBTQ0JfSUNTUl9QRU5EU1ZDTFIgICAgICAgICAgICAgICAgICAoMHgwODAwMDAwMFUpICAgICAgICAgICAgICAgICAgICAgIC8qITwgQ2xlYXIgcGVuZGluZyBwZW5kU1YgYml0ICovDQojZGVmaW5lIFNDQl9JQ1NSX1BFTkRTVlNFVCAgICAgICAgICAgICAgICAgICgweDEwMDAwMDAwVSkgICAgICAgICAgICAgICAgICAgICAgLyohPCBTZXQgcGVuZGluZyBwZW5kU1YgYml0ICovDQojZGVmaW5lIFNDQl9JQ1NSX05NSVBFTkRTRVQgICAgICAgICAgICAgICAgICgweDgwMDAwMDAwVSkgICAgICAgICAgICAgICAgICAgICAgLyohPCBTZXQgcGVuZGluZyBOTUkgYml0ICovDQoNCi8qKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgU0NCX1ZUT1IgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIFNDQl9WVE9SX1RCTE9GRiAgICAgICAgICAgICAgICAgICAgICgweDFGRkZGRjgwVSkgICAgICAgICAgICAgICAgICAgICAgLyohPCBWZWN0b3IgdGFibGUgYmFzZSBvZmZzZXQgZmllbGQgKi8NCiNkZWZpbmUgU0NCX1ZUT1JfVEJMQkFTRSAgICAgICAgICAgICAgICAgICAgKDB4MjAwMDAwMDBVKSAgICAgICAgICAgICAgICAgICAgICAvKiE8IFRhYmxlIGJhc2UgaW4gY29kZSgwKSBvciBSQU0oMSkgKi8NCg0KLyohPCoqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgU0NCX0FJUkNSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBTQ0JfQUlSQ1JfVkVDVFJFU0VUICAgICAgICAgICAgICAgICAoMHgwMDAwMDAwMVUpICAgICAgICAgICAgICAgICAgICAgIC8qITwgU3lzdGVtIFJlc2V0IGJpdCAqLw0KI2RlZmluZSBTQ0JfQUlSQ1JfVkVDVENMUkFDVElWRSAgICAgICAgICAgICAoMHgwMDAwMDAwMlUpICAgICAgICAgICAgICAgICAgICAgIC8qITwgQ2xlYXIgYWN0aXZlIHZlY3RvciBiaXQgKi8NCiNkZWZpbmUgU0NCX0FJUkNSX1NZU1JFU0VUUkVRICAgICAgICAgICAgICAgKDB4MDAwMDAwMDRVKSAgICAgICAgICAgICAgICAgICAgICAvKiE8IFJlcXVlc3RzIGNoaXAgY29udHJvbCBsb2dpYyB0byBnZW5lcmF0ZSBhIHJlc2V0ICovDQoNCiNkZWZpbmUgU0NCX0FJUkNSX1BSSUdST1VQICAgICAgICAgICAgICAgICAgKDB4MDAwMDA3MDBVKSAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBSSUdST1VQWzI6MF0gYml0cyAoUHJpb3JpdHkgZ3JvdXApICovDQojZGVmaW5lIFNDQl9BSVJDUl9QUklHUk9VUF8wICAgICAgICAgICAgICAgICgweDAwMDAwMTAwVSkgICAgICAgICAgICAgICAgICAgICAgLyohPCBCaXQgMCAqLw0KI2RlZmluZSBTQ0JfQUlSQ1JfUFJJR1JPVVBfMSAgICAgICAgICAgICAgICAoMHgwMDAwMDIwMFUpICAgICAgICAgICAgICAgICAgICAgIC8qITwgQml0IDEgKi8NCiNkZWZpbmUgU0NCX0FJUkNSX1BSSUdST1VQXzIgICAgICAgICAgICAgICAgKDB4MDAwMDA0MDBVKSAgICAgICAgICAgICAgICAgICAgICAvKiE8IEJpdCAyICAqLw0KDQovKiBwcm9yaXR5IGdyb3VwIGNvbmZpZ3VyYXRpb24gKi8NCiNkZWZpbmUgU0NCX0FJUkNSX1BSSUdST1VQMCAgICAgICAgICAgICAgICAgKDB4MDAwMDAwMDBVKSAgICAgICAgICAgICAgICAgICAgICAvKiE8IFByaW9yaXR5IGdyb3VwPTAgKDcgYml0cyBvZiBwcmUtZW1wdGlvbiBwcmlvcml0eSwgMSBiaXQgb2Ygc3VicHJpb3JpdHkpICovDQojZGVmaW5lIFNDQl9BSVJDUl9QUklHUk9VUDEgICAgICAgICAgICAgICAgICgweDAwMDAwMTAwVSkgICAgICAgICAgICAgICAgICAgICAgLyohPCBQcmlvcml0eSBncm91cD0xICg2IGJpdHMgb2YgcHJlLWVtcHRpb24gcHJpb3JpdHksIDIgYml0cyBvZiBzdWJwcmlvcml0eSkgKi8NCiNkZWZpbmUgU0NCX0FJUkNSX1BSSUdST1VQMiAgICAgICAgICAgICAgICAgKDB4MDAwMDAyMDBVKSAgICAgICAgICAgICAgICAgICAgICAvKiE8IFByaW9yaXR5IGdyb3VwPTIgKDUgYml0cyBvZiBwcmUtZW1wdGlvbiBwcmlvcml0eSwgMyBiaXRzIG9mIHN1YnByaW9yaXR5KSAqLw0KI2RlZmluZSBTQ0JfQUlSQ1JfUFJJR1JPVVAzICAgICAgICAgICAgICAgICAoMHgwMDAwMDMwMFUpICAgICAgICAgICAgICAgICAgICAgIC8qITwgUHJpb3JpdHkgZ3JvdXA9MyAoNCBiaXRzIG9mIHByZS1lbXB0aW9uIHByaW9yaXR5LCA0IGJpdHMgb2Ygc3VicHJpb3JpdHkpICovDQojZGVmaW5lIFNDQl9BSVJDUl9QUklHUk9VUDQgICAgICAgICAgICAgICAgICgweDAwMDAwNDAwVSkgICAgICAgICAgICAgICAgICAgICAgLyohPCBQcmlvcml0eSBncm91cD00ICgzIGJpdHMgb2YgcHJlLWVtcHRpb24gcHJpb3JpdHksIDUgYml0cyBvZiBzdWJwcmlvcml0eSkgKi8NCiNkZWZpbmUgU0NCX0FJUkNSX1BSSUdST1VQNSAgICAgICAgICAgICAgICAgKDB4MDAwMDA1MDBVKSAgICAgICAgICAgICAgICAgICAgICAvKiE8IFByaW9yaXR5IGdyb3VwPTUgKDIgYml0cyBvZiBwcmUtZW1wdGlvbiBwcmlvcml0eSwgNiBiaXRzIG9mIHN1YnByaW9yaXR5KSAqLw0KI2RlZmluZSBTQ0JfQUlSQ1JfUFJJR1JPVVA2ICAgICAgICAgICAgICAgICAoMHgwMDAwMDYwMFUpICAgICAgICAgICAgICAgICAgICAgIC8qITwgUHJpb3JpdHkgZ3JvdXA9NiAoMSBiaXQgb2YgcHJlLWVtcHRpb24gcHJpb3JpdHksIDcgYml0cyBvZiBzdWJwcmlvcml0eSkgKi8NCiNkZWZpbmUgU0NCX0FJUkNSX1BSSUdST1VQNyAgICAgICAgICAgICAgICAgKDB4MDAwMDA3MDBVKSAgICAgICAgICAgICAgICAgICAgICAvKiE8IFByaW9yaXR5IGdyb3VwPTcgKG5vIHByZS1lbXB0aW9uIHByaW9yaXR5LCA4IGJpdHMgb2Ygc3VicHJpb3JpdHkpICovDQoNCiNkZWZpbmUgU0NCX0FJUkNSX0VORElBTkVTUyAgICAgICAgICAgICAgICAgKDB4MDAwMDgwMDBVKSAgICAgICAgICAgICAgICAgICAgICAvKiE8IERhdGEgZW5kaWFubmVzcyBiaXQgKi8NCiNkZWZpbmUgU0NCX0FJUkNSX1ZFQ1RLRVkgICAgICAgICAgICAgICAgICAgKDB4RkZGRjAwMDBVKSAgICAgICAgICAgICAgICAgICAgICAvKiE8IFJlZ2lzdGVyIGtleSAoVkVDVEtFWSkgLSBSZWFkcyBhcyAweEZBMDUgKFZFQ1RLRVlTVEFUKSAqLw0KDQovKioqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFNDQl9TQ1IgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBTQ0JfU0NSX1NMRUVQT05FWElUICAgICAgICAgICAgICAgICAoMHgwMDAwMDAwMlUpICAgICAgICAgICAgICAgICAgICAgIC8qITwgU2xlZXAgb24gZXhpdCBiaXQgKi8NCiNkZWZpbmUgU0NCX1NDUl9TTEVFUERFRVAgICAgICAgICAgICAgICAgICAgKDB4MDAwMDAwMDRVKSAgICAgICAgICAgICAgICAgICAgICAvKiE8IFNsZWVwIGRlZXAgYml0ICovDQojZGVmaW5lIFNDQl9TQ1JfU0VWT05QRU5EICAgICAgICAgICAgICAgICAgICgweDAwMDAwMDEwVSkgICAgICAgICAgICAgICAgICAgICAgLyohPCBXYWtlIHVwIGZyb20gV0ZFICovDQoNCi8qKioqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFNDQl9DQ1IgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIFNDQl9DQ1JfTk9OQkFTRVRIUkRFTkEgICAgICAgICAgICAgICgweDAwMDAwMDAxVSkgICAgICAgICAgICAgICAgICAgICAgLyohPCBUaHJlYWQgbW9kZSBjYW4gYmUgZW50ZXJlZCBmcm9tIGFueSBsZXZlbCBpbiBIYW5kbGVyIG1vZGUgYnkgY29udHJvbGxlZCByZXR1cm4gdmFsdWUgKi8NCiNkZWZpbmUgU0NCX0NDUl9VU0VSU0VUTVBFTkQgICAgICAgICAgICAgICAgKDB4MDAwMDAwMDJVKSAgICAgICAgICAgICAgICAgICAgICAvKiE8IEVuYWJsZXMgdXNlciBjb2RlIHRvIHdyaXRlIHRoZSBTb2Z0d2FyZSBUcmlnZ2VyIEludGVycnVwdCByZWdpc3RlciB0byB0cmlnZ2VyIChwZW5kKSBhIE1haW4gZXhjZXB0aW9uICovDQojZGVmaW5lIFNDQl9DQ1JfVU5BTElHTl9UUlAgICAgICAgICAgICAgICAgICgweDAwMDAwMDA4VSkgICAgICAgICAgICAgICAgICAgICAgLyohPCBUcmFwIGZvciB1bmFsaWduZWQgYWNjZXNzICovDQojZGVmaW5lIFNDQl9DQ1JfRElWXzBfVFJQICAgICAgICAgICAgICAgICAgICgweDAwMDAwMDEwVSkgICAgICAgICAgICAgICAgICAgICAgLyohPCBUcmFwIG9uIERpdmlkZSBieSAwICovDQojZGVmaW5lIFNDQl9DQ1JfQkZIRk5NSUdOICAgICAgICAgICAgICAgICAgICgweDAwMDAwMTAwVSkgICAgICAgICAgICAgICAgICAgICAgLyohPCBIYW5kbGVycyBydW5uaW5nIGF0IHByaW9yaXR5IC0xIGFuZCAtMiAqLw0KI2RlZmluZSBTQ0JfQ0NSX1NUS0FMSUdOICAgICAgICAgICAgICAgICAgICAoMHgwMDAwMDIwMFUpICAgICAgICAgICAgICAgICAgICAgIC8qITwgT24gZXhjZXB0aW9uIGVudHJ5LCB0aGUgU1AgdXNlZCBwcmlvciB0byB0aGUgZXhjZXB0aW9uIGlzIGFkanVzdGVkIHRvIGJlIDgtYnl0ZSBhbGlnbmVkICovDQoNCi8qKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgU0NCX1NIUFIgcmVnaXN0ZXIgKioqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIFNDQl9TSFBSX1BSSV9OX1BvcyAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFNDQl9TSFBSX1BSSV9OX01zayAgICAgICAgICAgICAgICAgICgweEZGVSA8PCBTQ0JfU0hQUl9QUklfTl9Qb3MpICAgICAgLyohPCAweDAwMDAwMEZGICovDQojZGVmaW5lIFNDQl9TSFBSX1BSSV9OICAgICAgICAgICAgICAgICAgICAgIFNDQl9TSFBSX1BSSV9OX01zayAgICAgICAgICAgICAgICAgLyohPCBQcmlvcml0eSBvZiBzeXN0ZW0gaGFuZGxlciA0LDgsIGFuZCAxMi4gTWVtIE1hbmFnZSwgcmVzZXJ2ZWQgYW5kIERlYnVnIE1vbml0b3IgKi8NCiNkZWZpbmUgU0NCX1NIUFJfUFJJX04xX1BvcyAgICAgICAgICAgICAgICAgKDhVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgU0NCX1NIUFJfUFJJX04xX01zayAgICAgICAgICAgICAgICAgKDB4RkZVIDw8IFNDQl9TSFBSX1BSSV9OMV9Qb3MpICAgICAvKiE8IDB4MDAwMEZGMDAgKi8NCiNkZWZpbmUgU0NCX1NIUFJfUFJJX04xICAgICAgICAgICAgICAgICAgICAgU0NCX1NIUFJfUFJJX04xX01zayAgICAgICAgICAgICAgICAvKiE8IFByaW9yaXR5IG9mIHN5c3RlbSBoYW5kbGVyIDUsOSwgYW5kIDEzLiBCdXMgRmF1bHQsIHJlc2VydmVkIGFuZCByZXNlcnZlZCAqLw0KI2RlZmluZSBTQ0JfU0hQUl9QUklfTjJfUG9zICAgICAgICAgICAgICAgICAoMTZVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBTQ0JfU0hQUl9QUklfTjJfTXNrICAgICAgICAgICAgICAgICAoMHhGRlUgPDwgU0NCX1NIUFJfUFJJX04yX1BvcykgICAgIC8qITwgMHgwMEZGMDAwMCAqLw0KI2RlZmluZSBTQ0JfU0hQUl9QUklfTjIgICAgICAgICAgICAgICAgICAgICBTQ0JfU0hQUl9QUklfTjJfTXNrICAgICAgICAgICAgICAgIC8qITwgUHJpb3JpdHkgb2Ygc3lzdGVtIGhhbmRsZXIgNiwxMCwgYW5kIDE0LiBVc2FnZSBGYXVsdCwgcmVzZXJ2ZWQgYW5kIFBlbmRTViAqLw0KI2RlZmluZSBTQ0JfU0hQUl9QUklfTjNfUG9zICAgICAgICAgICAgICAgICAoMjRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBTQ0JfU0hQUl9QUklfTjNfTXNrICAgICAgICAgICAgICAgICAoMHhGRlUgPDwgU0NCX1NIUFJfUFJJX04zX1BvcykgICAgIC8qITwgMHhGRjAwMDAwMCAqLw0KI2RlZmluZSBTQ0JfU0hQUl9QUklfTjMgICAgICAgICAgICAgICAgICAgICBTQ0JfU0hQUl9QUklfTjNfTXNrICAgICAgICAgICAgICAgIC8qITwgUHJpb3JpdHkgb2Ygc3lzdGVtIGhhbmRsZXIgNywxMSwgYW5kIDE1LiBSZXNlcnZlZCwgU1ZDYWxsIGFuZCBTeXNUaWNrICovDQoNCi8qKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBTQ0JfU0hDU1IgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIFNDQl9TSENTUl9NRU1GQVVMVEFDVCAgICAgICAgICAgICAgICgweDAwMDAwMDAxVSkgICAgICAgICAgICAgICAgICAgICAgLyohPCBNZW1NYW5hZ2UgaXMgYWN0aXZlICovDQojZGVmaW5lIFNDQl9TSENTUl9CVVNGQVVMVEFDVCAgICAgICAgICAgICAgICgweDAwMDAwMDAyVSkgICAgICAgICAgICAgICAgICAgICAgLyohPCBCdXNGYXVsdCBpcyBhY3RpdmUgKi8NCiNkZWZpbmUgU0NCX1NIQ1NSX1VTR0ZBVUxUQUNUICAgICAgICAgICAgICAgKDB4MDAwMDAwMDhVKSAgICAgICAgICAgICAgICAgICAgICAvKiE8IFVzYWdlRmF1bHQgaXMgYWN0aXZlICovDQojZGVmaW5lIFNDQl9TSENTUl9TVkNBTExBQ1QgICAgICAgICAgICAgICAgICgweDAwMDAwMDgwVSkgICAgICAgICAgICAgICAgICAgICAgLyohPCBTVkNhbGwgaXMgYWN0aXZlICovDQojZGVmaW5lIFNDQl9TSENTUl9NT05JVE9SQUNUICAgICAgICAgICAgICAgICgweDAwMDAwMTAwVSkgICAgICAgICAgICAgICAgICAgICAgLyohPCBNb25pdG9yIGlzIGFjdGl2ZSAqLw0KI2RlZmluZSBTQ0JfU0hDU1JfUEVORFNWQUNUICAgICAgICAgICAgICAgICAoMHgwMDAwMDQwMFUpICAgICAgICAgICAgICAgICAgICAgIC8qITwgUGVuZFNWIGlzIGFjdGl2ZSAqLw0KI2RlZmluZSBTQ0JfU0hDU1JfU1lTVElDS0FDVCAgICAgICAgICAgICAgICAoMHgwMDAwMDgwMFUpICAgICAgICAgICAgICAgICAgICAgIC8qITwgU3lzVGljayBpcyBhY3RpdmUgKi8NCiNkZWZpbmUgU0NCX1NIQ1NSX1VTR0ZBVUxUUEVOREVEICAgICAgICAgICAgKDB4MDAwMDEwMDBVKSAgICAgICAgICAgICAgICAgICAgICAvKiE8IFVzYWdlIEZhdWx0IGlzIHBlbmRlZCAqLw0KI2RlZmluZSBTQ0JfU0hDU1JfTUVNRkFVTFRQRU5ERUQgICAgICAgICAgICAoMHgwMDAwMjAwMFUpICAgICAgICAgICAgICAgICAgICAgIC8qITwgTWVtTWFuYWdlIGlzIHBlbmRlZCAqLw0KI2RlZmluZSBTQ0JfU0hDU1JfQlVTRkFVTFRQRU5ERUQgICAgICAgICAgICAoMHgwMDAwNDAwMFUpICAgICAgICAgICAgICAgICAgICAgIC8qITwgQnVzIEZhdWx0IGlzIHBlbmRlZCAqLw0KI2RlZmluZSBTQ0JfU0hDU1JfU1ZDQUxMUEVOREVEICAgICAgICAgICAgICAoMHgwMDAwODAwMFUpICAgICAgICAgICAgICAgICAgICAgIC8qITwgU1ZDYWxsIGlzIHBlbmRlZCAqLw0KI2RlZmluZSBTQ0JfU0hDU1JfTUVNRkFVTFRFTkEgICAgICAgICAgICAgICAoMHgwMDAxMDAwMFUpICAgICAgICAgICAgICAgICAgICAgIC8qITwgTWVtTWFuYWdlIGVuYWJsZSAqLw0KI2RlZmluZSBTQ0JfU0hDU1JfQlVTRkFVTFRFTkEgICAgICAgICAgICAgICAoMHgwMDAyMDAwMFUpICAgICAgICAgICAgICAgICAgICAgIC8qITwgQnVzIEZhdWx0IGVuYWJsZSAqLw0KI2RlZmluZSBTQ0JfU0hDU1JfVVNHRkFVTFRFTkEgICAgICAgICAgICAgICAoMHgwMDA0MDAwMFUpICAgICAgICAgICAgICAgICAgICAgIC8qITwgVXNhZ2VGYXVsdCBlbmFibGUgKi8NCg0KLyoqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBTQ0JfQ0ZTUiByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKi8NCi8qITwgTUZTUiAqLw0KI2RlZmluZSBTQ0JfQ0ZTUl9JQUNDVklPTF9Qb3MgICAgICAgICAgICAgIChTQ0JfU0hDU1JfTUVNRkFVTFRBQ1RfUG9zICsgMFUpICAgIC8qITwgU0NCIENGU1IgKE1NRlNSKTogSUFDQ1ZJT0wgUG9zaXRpb24gKi8NCiNkZWZpbmUgU0NCX0NGU1JfSUFDQ1ZJT0xfTXNrICAgICAgICAgICAgICAoMVVMIC8qPDwgU0NCX0NGU1JfSUFDQ1ZJT0xfUG9zKi8pICAvKiE8IFNDQiBDRlNSIChNTUZTUik6IElBQ0NWSU9MIE1hc2sgKi8NCiNkZWZpbmUgU0NCX0NGU1JfSUFDQ1ZJT0wgICAgICAgICAgICAgICAgICAgU0NCX0NGU1JfSUFDQ1ZJT0xfTXNrICAgICAgICAgICAgICAvKiE8IEluc3RydWN0aW9uIGFjY2VzcyB2aW9sYXRpb24gKi8NCiNkZWZpbmUgU0NCX0NGU1JfREFDQ1ZJT0xfUG9zICAgICAgICAgICAgICAoU0NCX1NIQ1NSX01FTUZBVUxUQUNUX1BvcyArIDFVKSAgICAvKiE8IFNDQiBDRlNSIChNTUZTUik6IERBQ0NWSU9MIFBvc2l0aW9uICovDQojZGVmaW5lIFNDQl9DRlNSX0RBQ0NWSU9MX01zayAgICAgICAgICAgICAgKDFVTCA8PCBTQ0JfQ0ZTUl9EQUNDVklPTF9Qb3MpICAgICAgLyohPCBTQ0IgQ0ZTUiAoTU1GU1IpOiBEQUNDVklPTCBNYXNrICovDQojZGVmaW5lIFNDQl9DRlNSX0RBQ0NWSU9MICAgICAgICAgICAgICAgICAgIFNDQl9DRlNSX0RBQ0NWSU9MX01zayAgICAgICAgICAgICAgLyohPCBEYXRhIGFjY2VzcyB2aW9sYXRpb24gKi8NCiNkZWZpbmUgU0NCX0NGU1JfTVVOU1RLRVJSX1BvcyAgICAgICAgICAgICAoU0NCX1NIQ1NSX01FTUZBVUxUQUNUX1BvcyArIDNVKSAgICAvKiE8IFNDQiBDRlNSIChNTUZTUik6IE1VTlNUS0VSUiBQb3NpdGlvbiAqLw0KI2RlZmluZSBTQ0JfQ0ZTUl9NVU5TVEtFUlJfTXNrICAgICAgICAgICAgICgxVUwgPDwgU0NCX0NGU1JfTVVOU1RLRVJSX1BvcykgICAgIC8qITwgU0NCIENGU1IgKE1NRlNSKTogTVVOU1RLRVJSIE1hc2sgKi8NCiNkZWZpbmUgU0NCX0NGU1JfTVVOU1RLRVJSICAgICAgICAgICAgICAgICAgU0NCX0NGU1JfTVVOU1RLRVJSX01zayAgICAgICAgICAgICAvKiE8IFVuc3RhY2tpbmcgZXJyb3IgKi8NCiNkZWZpbmUgU0NCX0NGU1JfTVNUS0VSUl9Qb3MgICAgICAgICAgICAgICAoU0NCX1NIQ1NSX01FTUZBVUxUQUNUX1BvcyArIDRVKSAgICAvKiE8IFNDQiBDRlNSIChNTUZTUik6IE1TVEtFUlIgUG9zaXRpb24gKi8NCiNkZWZpbmUgU0NCX0NGU1JfTVNUS0VSUl9Nc2sgICAgICAgICAgICAgICAoMVVMIDw8IFNDQl9DRlNSX01TVEtFUlJfUG9zKSAgICAgICAvKiE8IFNDQiBDRlNSIChNTUZTUik6IE1TVEtFUlIgTWFzayAqLw0KI2RlZmluZSBTQ0JfQ0ZTUl9NU1RLRVJSICAgICAgICAgICAgICAgICAgICBTQ0JfQ0ZTUl9NU1RLRVJSX01zayAgICAgICAgICAgICAgIC8qITwgU3RhY2tpbmcgZXJyb3IgKi8NCiNkZWZpbmUgU0NCX0NGU1JfTU1BUlZBTElEX1BvcyAgICAgICAgICAgICAoU0NCX1NIQ1NSX01FTUZBVUxUQUNUX1BvcyArIDdVKSAgICAvKiE8IFNDQiBDRlNSIChNTUZTUik6IE1NQVJWQUxJRCBQb3NpdGlvbiAqLw0KI2RlZmluZSBTQ0JfQ0ZTUl9NTUFSVkFMSURfTXNrICAgICAgICAgICAgICgxVUwgPDwgU0NCX0NGU1JfTU1BUlZBTElEX1BvcykgICAgIC8qITwgU0NCIENGU1IgKE1NRlNSKTogTU1BUlZBTElEIE1hc2sgKi8NCiNkZWZpbmUgU0NCX0NGU1JfTU1BUlZBTElEICAgICAgICAgICAgICAgICAgU0NCX0NGU1JfTU1BUlZBTElEX01zayAgICAgICAgICAgICAvKiE8IE1lbW9yeSBNYW5hZ2UgQWRkcmVzcyBSZWdpc3RlciBhZGRyZXNzIHZhbGlkIGZsYWcgKi8NCi8qITwgQkZTUiAqLw0KI2RlZmluZSBTQ0JfQ0ZTUl9JQlVTRVJSX1BvcyAgICAgICAgICAgICAgKFNDQl9DRlNSX0JVU0ZBVUxUU1JfUG9zICsgMFUpICAgICAgIC8qITwgU0NCIENGU1IgKEJGU1IpOiBJQlVTRVJSIFBvc2l0aW9uICovDQojZGVmaW5lIFNDQl9DRlNSX0lCVVNFUlJfTXNrICAgICAgICAgICAgICAoMVVMIDw8IFNDQl9DRlNSX0lCVVNFUlJfUG9zKSAgICAgICAgLyohPCBTQ0IgQ0ZTUiAoQkZTUik6IElCVVNFUlIgTWFzayAqLw0KI2RlZmluZSBTQ0JfQ0ZTUl9JQlVTRVJSICAgICAgICAgICAgICAgICAgICBTQ0JfQ0ZTUl9JQlVTRVJSX01zayAgICAgICAgICAgICAgIC8qITwgSW5zdHJ1Y3Rpb24gYnVzIGVycm9yIGZsYWcgKi8NCiNkZWZpbmUgU0NCX0NGU1JfUFJFQ0lTRVJSX1BvcyAgICAgICAgICAgIChTQ0JfQ0ZTUl9CVVNGQVVMVFNSX1BvcyArIDFVKSAgICAgICAvKiE8IFNDQiBDRlNSIChCRlNSKTogUFJFQ0lTRVJSIFBvc2l0aW9uICovDQojZGVmaW5lIFNDQl9DRlNSX1BSRUNJU0VSUl9Nc2sgICAgICAgICAgICAoMVVMIDw8IFNDQl9DRlNSX1BSRUNJU0VSUl9Qb3MpICAgICAgLyohPCBTQ0IgQ0ZTUiAoQkZTUik6IFBSRUNJU0VSUiBNYXNrICovDQojZGVmaW5lIFNDQl9DRlNSX1BSRUNJU0VSUiAgICAgICAgICAgICAgICAgIFNDQl9DRlNSX1BSRUNJU0VSUl9Nc2sgICAgICAgICAgICAgLyohPCBQcmVjaXNlIGRhdGEgYnVzIGVycm9yICovDQojZGVmaW5lIFNDQl9DRlNSX0lNUFJFQ0lTRVJSX1BvcyAgICAgICAgICAoU0NCX0NGU1JfQlVTRkFVTFRTUl9Qb3MgKyAyVSkgICAgICAgLyohPCBTQ0IgQ0ZTUiAoQkZTUik6IElNUFJFQ0lTRVJSIFBvc2l0aW9uICovDQojZGVmaW5lIFNDQl9DRlNSX0lNUFJFQ0lTRVJSX01zayAgICAgICAgICAoMVVMIDw8IFNDQl9DRlNSX0lNUFJFQ0lTRVJSX1BvcykgICAgLyohPCBTQ0IgQ0ZTUiAoQkZTUik6IElNUFJFQ0lTRVJSIE1hc2sgKi8NCiNkZWZpbmUgU0NCX0NGU1JfSU1QUkVDSVNFUlIgICAgICAgICAgICAgICAgU0NCX0NGU1JfSU1QUkVDSVNFUlJfTXNrICAgICAgICAgICAvKiE8IEltcHJlY2lzZSBkYXRhIGJ1cyBlcnJvciAqLw0KI2RlZmluZSBTQ0JfQ0ZTUl9VTlNUS0VSUl9Qb3MgICAgICAgICAgICAgKFNDQl9DRlNSX0JVU0ZBVUxUU1JfUG9zICsgM1UpICAgICAgIC8qITwgU0NCIENGU1IgKEJGU1IpOiBVTlNUS0VSUiBQb3NpdGlvbiAqLw0KI2RlZmluZSBTQ0JfQ0ZTUl9VTlNUS0VSUl9Nc2sgICAgICAgICAgICAgKDFVTCA8PCBTQ0JfQ0ZTUl9VTlNUS0VSUl9Qb3MpICAgICAgIC8qITwgU0NCIENGU1IgKEJGU1IpOiBVTlNUS0VSUiBNYXNrICovDQojZGVmaW5lIFNDQl9DRlNSX1VOU1RLRVJSICAgICAgICAgICAgICAgICAgIFNDQl9DRlNSX1VOU1RLRVJSX01zayAgICAgICAgICAgICAgLyohPCBVbnN0YWNraW5nIGVycm9yICovDQojZGVmaW5lIFNDQl9DRlNSX1NUS0VSUl9Qb3MgICAgICAgICAgICAgICAoU0NCX0NGU1JfQlVTRkFVTFRTUl9Qb3MgKyA0VSkgICAgICAgLyohPCBTQ0IgQ0ZTUiAoQkZTUik6IFNUS0VSUiBQb3NpdGlvbiAqLw0KI2RlZmluZSBTQ0JfQ0ZTUl9TVEtFUlJfTXNrICAgICAgICAgICAgICAgKDFVTCA8PCBTQ0JfQ0ZTUl9TVEtFUlJfUG9zKSAgICAgICAgIC8qITwgU0NCIENGU1IgKEJGU1IpOiBTVEtFUlIgTWFzayAqLw0KI2RlZmluZSBTQ0JfQ0ZTUl9TVEtFUlIgICAgICAgICAgICAgICAgICAgICBTQ0JfQ0ZTUl9TVEtFUlJfTXNrICAgICAgICAgICAgICAgIC8qITwgU3RhY2tpbmcgZXJyb3IgKi8NCiNkZWZpbmUgU0NCX0NGU1JfQkZBUlZBTElEX1BvcyAgICAgICAgICAgIChTQ0JfQ0ZTUl9CVVNGQVVMVFNSX1BvcyArIDdVKSAgICAgICAvKiE8IFNDQiBDRlNSIChCRlNSKTogQkZBUlZBTElEIFBvc2l0aW9uICovDQojZGVmaW5lIFNDQl9DRlNSX0JGQVJWQUxJRF9Nc2sgICAgICAgICAgICAoMVVMIDw8IFNDQl9DRlNSX0JGQVJWQUxJRF9Qb3MpICAgICAgLyohPCBTQ0IgQ0ZTUiAoQkZTUik6IEJGQVJWQUxJRCBNYXNrICovDQojZGVmaW5lIFNDQl9DRlNSX0JGQVJWQUxJRCAgICAgICAgICAgICAgICAgIFNDQl9DRlNSX0JGQVJWQUxJRF9Nc2sgICAgICAgICAgICAgLyohPCBCdXMgRmF1bHQgQWRkcmVzcyBSZWdpc3RlciBhZGRyZXNzIHZhbGlkIGZsYWcgKi8NCi8qITwgVUZTUiAqLw0KI2RlZmluZSBTQ0JfQ0ZTUl9VTkRFRklOU1RSX1BvcyAgICAgICAgICAgKFNDQl9DRlNSX1VTR0ZBVUxUU1JfUG9zICsgMFUpICAgICAgIC8qITwgU0NCIENGU1IgKFVGU1IpOiBVTkRFRklOU1RSIFBvc2l0aW9uICovDQojZGVmaW5lIFNDQl9DRlNSX1VOREVGSU5TVFJfTXNrICAgICAgICAgICAoMVVMIDw8IFNDQl9DRlNSX1VOREVGSU5TVFJfUG9zKSAgICAgLyohPCBTQ0IgQ0ZTUiAoVUZTUik6IFVOREVGSU5TVFIgTWFzayAqLw0KI2RlZmluZSBTQ0JfQ0ZTUl9VTkRFRklOU1RSICAgICAgICAgICAgICAgICBTQ0JfQ0ZTUl9VTkRFRklOU1RSX01zayAgICAgICAgICAgIC8qITwgVGhlIHByb2Nlc3NvciBhdHRlbXB0IHRvIGV4Y2VjdXRlIGFuIHVuZGVmaW5lZCBpbnN0cnVjdGlvbiAqLw0KI2RlZmluZSBTQ0JfQ0ZTUl9JTlZTVEFURV9Qb3MgICAgICAgICAgICAgKFNDQl9DRlNSX1VTR0ZBVUxUU1JfUG9zICsgMVUpICAgICAgIC8qITwgU0NCIENGU1IgKFVGU1IpOiBJTlZTVEFURSBQb3NpdGlvbiAqLw0KI2RlZmluZSBTQ0JfQ0ZTUl9JTlZTVEFURV9Nc2sgICAgICAgICAgICAgKDFVTCA8PCBTQ0JfQ0ZTUl9JTlZTVEFURV9Qb3MpICAgICAgIC8qITwgU0NCIENGU1IgKFVGU1IpOiBJTlZTVEFURSBNYXNrICovDQojZGVmaW5lIFNDQl9DRlNSX0lOVlNUQVRFICAgICAgICAgICAgICAgICAgIFNDQl9DRlNSX0lOVlNUQVRFX01zayAgICAgICAgICAgICAgLyohPCBJbnZhbGlkIGNvbWJpbmF0aW9uIG9mIEVQU1IgYW5kIGluc3RydWN0aW9uICovDQojZGVmaW5lIFNDQl9DRlNSX0lOVlBDX1BvcyAgICAgICAgICAgICAgICAoU0NCX0NGU1JfVVNHRkFVTFRTUl9Qb3MgKyAyVSkgICAgICAgLyohPCBTQ0IgQ0ZTUiAoVUZTUik6IElOVlBDIFBvc2l0aW9uICovDQojZGVmaW5lIFNDQl9DRlNSX0lOVlBDX01zayAgICAgICAgICAgICAgICAoMVVMIDw8IFNDQl9DRlNSX0lOVlBDX1BvcykgICAgICAgICAgLyohPCBTQ0IgQ0ZTUiAoVUZTUik6IElOVlBDIE1hc2sgKi8NCiNkZWZpbmUgU0NCX0NGU1JfSU5WUEMgICAgICAgICAgICAgICAgICAgICAgU0NCX0NGU1JfSU5WUENfTXNrICAgICAgICAgICAgICAgICAvKiE8IEF0dGVtcHQgdG8gbG9hZCBFWENfUkVUVVJOIGludG8gcGMgaWxsZWdhbGx5ICovDQojZGVmaW5lIFNDQl9DRlNSX05PQ1BfUG9zICAgICAgICAgICAgICAgICAoU0NCX0NGU1JfVVNHRkFVTFRTUl9Qb3MgKyAzVSkgICAgICAgLyohPCBTQ0IgQ0ZTUiAoVUZTUik6IE5PQ1AgUG9zaXRpb24gKi8NCiNkZWZpbmUgU0NCX0NGU1JfTk9DUF9Nc2sgICAgICAgICAgICAgICAgICgxVUwgPDwgU0NCX0NGU1JfTk9DUF9Qb3MpICAgICAgICAgICAvKiE8IFNDQiBDRlNSIChVRlNSKTogTk9DUCBNYXNrICovDQojZGVmaW5lIFNDQl9DRlNSX05PQ1AgICAgICAgICAgICAgICAgICAgICAgIFNDQl9DRlNSX05PQ1BfTXNrICAgICAgICAgICAgICAgICAgLyohPCBBdHRlbXB0IHRvIHVzZSBhIGNvcHJvY2Vzc29yIGluc3RydWN0aW9uICovDQojZGVmaW5lIFNDQl9DRlNSX1VOQUxJR05FRF9Qb3MgICAgICAgICAgICAoU0NCX0NGU1JfVVNHRkFVTFRTUl9Qb3MgKyA4VSkgICAgICAgLyohPCBTQ0IgQ0ZTUiAoVUZTUik6IFVOQUxJR05FRCBQb3NpdGlvbiAqLw0KI2RlZmluZSBTQ0JfQ0ZTUl9VTkFMSUdORURfTXNrICAgICAgICAgICAgKDFVTCA8PCBTQ0JfQ0ZTUl9VTkFMSUdORURfUG9zKSAgICAgIC8qITwgU0NCIENGU1IgKFVGU1IpOiBVTkFMSUdORUQgTWFzayAqLw0KI2RlZmluZSBTQ0JfQ0ZTUl9VTkFMSUdORUQgICAgICAgICAgICAgICAgICBTQ0JfQ0ZTUl9VTkFMSUdORURfTXNrICAgICAgICAgICAgIC8qITwgRmF1bHQgb2NjdXJzIHdoZW4gdGhlcmUgaXMgYW4gYXR0ZW1wdCB0byBtYWtlIGFuIHVuYWxpZ25lZCBtZW1vcnkgYWNjZXNzICovDQojZGVmaW5lIFNDQl9DRlNSX0RJVkJZWkVST19Qb3MgICAgICAgICAgICAoU0NCX0NGU1JfVVNHRkFVTFRTUl9Qb3MgKyA5VSkgICAgICAgLyohPCBTQ0IgQ0ZTUiAoVUZTUik6IERJVkJZWkVSTyBQb3NpdGlvbiAqLw0KI2RlZmluZSBTQ0JfQ0ZTUl9ESVZCWVpFUk9fTXNrICAgICAgICAgICAgKDFVTCA8PCBTQ0JfQ0ZTUl9ESVZCWVpFUk9fUG9zKSAgICAgIC8qITwgU0NCIENGU1IgKFVGU1IpOiBESVZCWVpFUk8gTWFzayAqLw0KI2RlZmluZSBTQ0JfQ0ZTUl9ESVZCWVpFUk8gICAgICAgICAgICAgICAgICBTQ0JfQ0ZTUl9ESVZCWVpFUk9fTXNrICAgICAgICAgICAgIC8qITwgRmF1bHQgb2NjdXJzIHdoZW4gU0RJViBvciBESVYgaW5zdHJ1Y3Rpb24gaXMgdXNlZCB3aXRoIGEgZGl2aXNvciBvZiAwICovDQoNCi8qKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgU0NCX0hGU1IgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIFNDQl9IRlNSX1ZFQ1RUQkwgICAgICAgICAgICAgICAgICAgICgweDAwMDAwMDAyVSkgICAgICAgICAgICAgICAgICAgICAgLyohPCBGYXVsdCBvY2N1cmVzIGJlY2F1c2Ugb2YgdmVjdG9yIHRhYmxlIHJlYWQgb24gZXhjZXB0aW9uIHByb2Nlc3NpbmcgKi8NCiNkZWZpbmUgU0NCX0hGU1JfRk9SQ0VEICAgICAgICAgICAgICAgICAgICAgKDB4NDAwMDAwMDBVKSAgICAgICAgICAgICAgICAgICAgICAvKiE8IEhhcmQgRmF1bHQgYWN0aXZhdGVkIHdoZW4gYSBjb25maWd1cmFibGUgRmF1bHQgd2FzIHJlY2VpdmVkIGFuZCBjYW5ub3QgYWN0aXZhdGUgKi8NCiNkZWZpbmUgU0NCX0hGU1JfREVCVUdFVlQgICAgICAgICAgICAgICAgICAgKDB4ODAwMDAwMDBVKSAgICAgICAgICAgICAgICAgICAgICAvKiE8IEZhdWx0IHJlbGF0ZWQgdG8gZGVidWcgKi8NCg0KLyoqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBTQ0JfREZTUiByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgU0NCX0RGU1JfSEFMVEVEICAgICAgICAgICAgICAgICAgICAgKDB4MDAwMDAwMDFVKSAgICAgICAgICAgICAgICAgICAgICAvKiE8IEhhbHQgcmVxdWVzdCBmbGFnICovDQojZGVmaW5lIFNDQl9ERlNSX0JLUFQgICAgICAgICAgICAgICAgICAgICAgICgweDAwMDAwMDAyVSkgICAgICAgICAgICAgICAgICAgICAgLyohPCBCS1BUIGZsYWcgKi8NCiNkZWZpbmUgU0NCX0RGU1JfRFdUVFJBUCAgICAgICAgICAgICAgICAgICAgKDB4MDAwMDAwMDRVKSAgICAgICAgICAgICAgICAgICAgICAvKiE8IERhdGEgV2F0Y2hwb2ludCBhbmQgVHJhY2UgKERXVCkgZmxhZyAqLw0KI2RlZmluZSBTQ0JfREZTUl9WQ0FUQ0ggICAgICAgICAgICAgICAgICAgICAoMHgwMDAwMDAwOFUpICAgICAgICAgICAgICAgICAgICAgIC8qITwgVmVjdG9yIGNhdGNoIGZsYWcgKi8NCiNkZWZpbmUgU0NCX0RGU1JfRVhURVJOQUwgICAgICAgICAgICAgICAgICAgKDB4MDAwMDAwMTBVKSAgICAgICAgICAgICAgICAgICAgICAvKiE8IEV4dGVybmFsIGRlYnVnIHJlcXVlc3QgZmxhZyAqLw0KDQovKioqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFNDQl9NTUZBUiByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBTQ0JfTU1GQVJfQUREUkVTU19Qb3MgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBTQ0JfTU1GQVJfQUREUkVTU19Nc2sgICAgICAgICAgICAgICAoMHhGRkZGRkZGRlUgPDwgU0NCX01NRkFSX0FERFJFU1NfUG9zKSAvKiE8IDB4RkZGRkZGRkYgKi8NCiNkZWZpbmUgU0NCX01NRkFSX0FERFJFU1MgICAgICAgICAgICAgICAgICAgU0NCX01NRkFSX0FERFJFU1NfTXNrICAgICAgICAgICAgICAvKiE8IE1lbSBNYW5hZ2UgZmF1bHQgYWRkcmVzcyBmaWVsZCAqLw0KDQovKioqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFNDQl9CRkFSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBTQ0JfQkZBUl9BRERSRVNTX1BvcyAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBTQ0JfQkZBUl9BRERSRVNTX01zayAgICAgICAgICAgICAgICAoMHhGRkZGRkZGRlUgPDwgU0NCX0JGQVJfQUREUkVTU19Qb3MpIC8qITwgMHhGRkZGRkZGRiAqLw0KI2RlZmluZSBTQ0JfQkZBUl9BRERSRVNTICAgICAgICAgICAgICAgICAgICBTQ0JfQkZBUl9BRERSRVNTX01zayAgICAgICAgICAgICAgIC8qITwgQnVzIGZhdWx0IGFkZHJlc3MgZmllbGQgKi8NCg0KLyoqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBTQ0JfYWZzciByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgU0NCX0FGU1JfSU1QREVGX1BvcyAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgU0NCX0FGU1JfSU1QREVGX01zayAgICAgICAgICAgICAgICAgKDB4RkZGRkZGRkZVIDw8IFNDQl9BRlNSX0lNUERFRl9Qb3MpIC8qITwgMHhGRkZGRkZGRiAqLw0KI2RlZmluZSBTQ0JfQUZTUl9JTVBERUYgICAgICAgICAgICAgICAgICAgICBTQ0JfQUZTUl9JTVBERUZfTXNrICAgICAgICAgICAgICAgIC8qITwgSW1wbGVtZW50YXRpb24gZGVmaW5lZCAqLw0KLyoqDQogICogQH0NCiAgKi8NCg0KIC8qKg0KICAqIEB9DQogICovIA0KLyoqIEBhZGR0b2dyb3VwIEV4cG9ydGVkX21hY3JvDQogICogQHsNCiAgKi8NCiAgICAgIA0KLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiBBREMgSW5zdGFuY2VzICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgSVNfQURDX0FMTF9JTlNUQU5DRShJTlNUQU5DRSkgKChJTlNUQU5DRSkgPT0gQURDMSkNCg0KI2RlZmluZSBJU19BRENfQ09NTU9OX0lOU1RBTkNFKElOU1RBTkNFKSAoKElOU1RBTkNFKSA9PSBBREMxX0NPTU1PTikNCg0KLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqIENPTVAgSW5zdGFuY2VzICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgSVNfQ09NUF9BTExfSU5TVEFOQ0UoSU5TVEFOQ0UpICgoKElOU1RBTkNFKSA9PSBDT01QMSkgfHwgXA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoSU5TVEFOQ0UpID09IENPTVAyKSkNCg0KI2RlZmluZSBJU19DT01QX0NPTU1PTl9JTlNUQU5DRShDT01NT05fSU5TVEFOQ0UpICgoQ09NTU9OX0lOU1RBTkNFKSA9PSBDT01QMTJfQ09NTU9OKQ0KDQovKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqIENSQyBJbnN0YW5jZXMgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBJU19DUkNfQUxMX0lOU1RBTkNFKElOU1RBTkNFKSAoKElOU1RBTkNFKSA9PSBDUkMpDQoNCi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKiogREFDIEluc3RhbmNlcyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIElTX0RBQ19BTExfSU5TVEFOQ0UoSU5TVEFOQ0UpICgoSU5TVEFOQ0UpID09IERBQykNCg0KLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiBETUEgSW5zdGFuY2VzICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgSVNfRE1BX0FMTF9JTlNUQU5DRShJTlNUQU5DRSkgKCgoSU5TVEFOQ0UpID09IERNQTFfQ2hhbm5lbDEpIHx8IFwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoSU5TVEFOQ0UpID09IERNQTFfQ2hhbm5lbDIpIHx8IFwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoSU5TVEFOQ0UpID09IERNQTFfQ2hhbm5lbDMpIHx8IFwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoSU5TVEFOQ0UpID09IERNQTFfQ2hhbm5lbDQpIHx8IFwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoSU5TVEFOQ0UpID09IERNQTFfQ2hhbm5lbDUpIHx8IFwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoSU5TVEFOQ0UpID09IERNQTFfQ2hhbm5lbDYpIHx8IFwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoSU5TVEFOQ0UpID09IERNQTFfQ2hhbm5lbDcpIHx8IFwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoSU5TVEFOQ0UpID09IERNQTJfQ2hhbm5lbDEpIHx8IFwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoSU5TVEFOQ0UpID09IERNQTJfQ2hhbm5lbDIpIHx8IFwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoSU5TVEFOQ0UpID09IERNQTJfQ2hhbm5lbDMpIHx8IFwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoSU5TVEFOQ0UpID09IERNQTJfQ2hhbm5lbDQpIHx8IFwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoSU5TVEFOQ0UpID09IERNQTJfQ2hhbm5lbDUpKQ0KDQovKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiBHUElPIEluc3RhbmNlcyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBJU19HUElPX0FMTF9JTlNUQU5DRShJTlNUQU5DRSkgKCgoSU5TVEFOQ0UpID09IEdQSU9BKSB8fCBcDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gR1BJT0IpIHx8IFwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBHUElPQykgfHwgXA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoSU5TVEFOQ0UpID09IEdQSU9EKSB8fCBcDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gR1BJT0UpIHx8IFwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBHUElPRikgfHwgXA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoSU5TVEFOQ0UpID09IEdQSU9HKSB8fCBcDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gR1BJT0gpKQ0KDQovKioqKioqKioqKioqKioqKioqKioqKioqKioqKiBHUElPIEFsdGVybmF0ZSBGdW5jdGlvbiBJbnN0YW5jZXMgKioqKioqKioqKioqKioqLw0KI2RlZmluZSBJU19HUElPX0FGX0lOU1RBTkNFKElOU1RBTkNFKSBJU19HUElPX0FMTF9JTlNUQU5DRShJTlNUQU5DRSkNCg0KLyoqKioqKioqKioqKioqKioqKioqKioqKioqKiogR1BJTyBMb2NrIEluc3RhbmNlcyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8NCi8qIE9uIEwxLCBhbGwgR1BJTyBCYW5rIHN1cHBvcnQgdGhlIExvY2sgbWVjaGFuaXNtICovDQojZGVmaW5lIElTX0dQSU9fTE9DS19JTlNUQU5DRShJTlNUQU5DRSkgSVNfR1BJT19BTExfSU5TVEFOQ0UoSU5TVEFOQ0UpDQoNCi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiBJMkMgSW5zdGFuY2VzICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIElTX0kyQ19BTExfSU5TVEFOQ0UoSU5TVEFOQ0UpICgoKElOU1RBTkNFKSA9PSBJMkMxKSB8fCBcDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBJMkMyKSkNCg0KLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiBTTUJVUyBJbnN0YW5jZXMgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgSVNfU01CVVNfQUxMX0lOU1RBTkNFKElOU1RBTkNFKSBJU19JMkNfQUxMX0lOU1RBTkNFKElOU1RBTkNFKQ0KDQovKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiogSTJTIEluc3RhbmNlcyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBJU19JMlNfQUxMX0lOU1RBTkNFKElOU1RBTkNFKSAoKChJTlNUQU5DRSkgPT0gU1BJMikgfHwgXA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gU1BJMykpDQovKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqIElXREcgSW5zdGFuY2VzICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBJU19JV0RHX0FMTF9JTlNUQU5DRShJTlNUQU5DRSkgICgoSU5TVEFOQ0UpID09IElXREcpDQoNCi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKiogT1BBTVAgSW5zdGFuY2VzICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIElTX09QQU1QX0FMTF9JTlNUQU5DRShJTlNUQU5DRSkgKCgoSU5TVEFOQ0UpID09IE9QQU1QMSkgfHwgXA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBPUEFNUDIpKQ0KDQojZGVmaW5lIElTX09QQU1QX0NPTU1PTl9JTlNUQU5DRShDT01NT05fSU5TVEFOQ0UpICgoQ09NTU9OX0lOU1RBTkNFKSA9PSBPUEFNUDEyX0NPTU1PTikNCg0KLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiBSVEMgSW5zdGFuY2VzICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgSVNfUlRDX0FMTF9JTlNUQU5DRShJTlNUQU5DRSkgICgoSU5TVEFOQ0UpID09IFJUQykNCg0KLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqIFNQSSBJbnN0YW5jZXMgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgSVNfU1BJX0FMTF9JTlNUQU5DRShJTlNUQU5DRSkgKCgoSU5TVEFOQ0UpID09IFNQSTEpIHx8IFwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoSU5TVEFOQ0UpID09IFNQSTIpIHx8IFwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoSU5TVEFOQ0UpID09IFNQSTMpKQ0KDQovKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqIFRJTSBJbnN0YW5jZXMgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLyANCiNkZWZpbmUgSVNfVElNX0lOU1RBTkNFKElOU1RBTkNFKSAoKChJTlNUQU5DRSkgPT0gVElNMikgICAgfHwgXA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBUSU0zKSAgICB8fCBcDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoSU5TVEFOQ0UpID09IFRJTTQpICAgIHx8IFwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gVElNNSkgICAgfHwgXA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBUSU02KSAgICB8fCBcDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoSU5TVEFOQ0UpID09IFRJTTcpICAgIHx8IFwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gVElNOSkgICAgfHwgXA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBUSU0xMCkgICB8fCBcDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoSU5TVEFOQ0UpID09IFRJTTExKSkNCg0KI2RlZmluZSBJU19USU1fQ0MxX0lOU1RBTkNFKElOU1RBTkNFKSAoKChJTlNUQU5DRSkgPT0gVElNMikgIHx8IFwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoSU5TVEFOQ0UpID09IFRJTTMpICB8fCBcDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBUSU00KSAgfHwgXA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gVElNNSkgIHx8IFwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoSU5TVEFOQ0UpID09IFRJTTkpICB8fCBcDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBUSU0xMCkgfHwgXA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gVElNMTEpKQ0KDQojZGVmaW5lIElTX1RJTV9DQzJfSU5TVEFOQ0UoSU5TVEFOQ0UpICgoKElOU1RBTkNFKSA9PSBUSU0yKSAgfHwgXA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gVElNMykgIHx8IFwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoSU5TVEFOQ0UpID09IFRJTTQpICB8fCBcDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBUSU01KSAgfHwgXA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gVElNOSkpDQoNCiNkZWZpbmUgSVNfVElNX0NDM19JTlNUQU5DRShJTlNUQU5DRSkgKCgoSU5TVEFOQ0UpID09IFRJTTIpICB8fCBcDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBUSU0zKSAgfHwgXA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gVElNNCkgIHx8IFwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoSU5TVEFOQ0UpID09IFRJTTUpKQ0KDQojZGVmaW5lIElTX1RJTV9DQzRfSU5TVEFOQ0UoSU5TVEFOQ0UpICgoKElOU1RBTkNFKSA9PSBUSU0yKSAgfHwgXA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gVElNMykgIHx8IFwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoSU5TVEFOQ0UpID09IFRJTTQpICB8fCBcDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBUSU01KSkNCg0KI2RlZmluZSBJU19USU1fQ0xPQ0tTT1VSQ0VfRVRSTU9ERTFfSU5TVEFOQ0UoSU5TVEFOQ0UpICgoKElOU1RBTkNFKSA9PSBUSU0yKSAgfHwgXA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBUSU0zKSAgfHwgXA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBUSU00KSAgfHwgXA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBUSU01KSAgfHwgXA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBUSU05KSkNCg0KI2RlZmluZSBJU19USU1fQ0xPQ0tTT1VSQ0VfRVRSTU9ERTJfSU5TVEFOQ0UoSU5TVEFOQ0UpICgoKElOU1RBTkNFKSA9PSBUSU0yKSAgfHwgXA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBUSU0zKSAgfHwgXA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBUSU00KSAgfHwgXA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBUSU01KSAgfHwgXA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBUSU05KSAgfHwgXA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBUSU0xMCkgfHwgXA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBUSU0xMSkpDQoNCiNkZWZpbmUgSVNfVElNX0NMT0NLU09VUkNFX1RJWF9JTlNUQU5DRShJTlNUQU5DRSkgKCgoSU5TVEFOQ0UpID09IFRJTTIpICB8fCBcDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBUSU0zKSAgfHwgXA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gVElNNCkgIHx8IFwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoSU5TVEFOQ0UpID09IFRJTTUpICB8fCBcDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBUSU05KSkNCg0KI2RlZmluZSBJU19USU1fQ0xPQ0tTT1VSQ0VfSVRSWF9JTlNUQU5DRShJTlNUQU5DRSkgKCgoSU5TVEFOQ0UpID09IFRJTTIpICB8fCBcDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gVElNMykgIHx8IFwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBUSU00KSAgfHwgXA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoSU5TVEFOQ0UpID09IFRJTTUpICB8fCBcDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gVElNOSkpDQoNCiNkZWZpbmUgSVNfVElNX09DWFJFRl9DTEVBUl9JTlNUQU5DRShJTlNUQU5DRSkgKCgoSU5TVEFOQ0UpID09IFRJTTIpICB8fCBcDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBUSU0zKSAgfHwgXA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gVElNNCkpDQoNCiNkZWZpbmUgSVNfVElNX1hPUl9JTlNUQU5DRShJTlNUQU5DRSkgKCgoSU5TVEFOQ0UpID09IFRJTTIpICB8fCBcDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBUSU0zKSAgfHwgXA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gVElNNCkgIHx8IFwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoSU5TVEFOQ0UpID09IFRJTTUpKQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIElTX1RJTV9FVFJfSU5TVEFOQ0UoSU5TVEFOQ0UpICgoKElOU1RBTkNFKSA9PSBUSU0yKSAgfHwgXA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gVElNMykgIHx8IFwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoSU5TVEFOQ0UpID09IFRJTTQpICB8fCBcDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBUSU01KSkNCg0KDQojZGVmaW5lIElTX1RJTV9NQVNURVJfSU5TVEFOQ0UoSU5TVEFOQ0UpICgoKElOU1RBTkNFKSA9PSBUSU0yKSAgfHwgXA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gVElNMykgIHx8IFwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoSU5TVEFOQ0UpID09IFRJTTQpICB8fCBcDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBUSU01KSAgfHwgXA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gVElNNikgIHx8IFwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoSU5TVEFOQ0UpID09IFRJTTcpICB8fCBcDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBUSU05KSkNCg0KI2RlZmluZSBJU19USU1fU0xBVkVfSU5TVEFOQ0UoSU5TVEFOQ0UpICgoKElOU1RBTkNFKSA9PSBUSU0yKSAgfHwgXA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBUSU0zKSAgfHwgXA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBUSU00KSAgfHwgXA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBUSU01KSAgfHwgXA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBUSU05KSkNCg0KI2RlZmluZSBJU19USU1fMzJCX0NPVU5URVJfSU5TVEFOQ0UoSU5TVEFOQ0UpICgoSU5TVEFOQ0UpID09IFRJTTUpDQoNCiNkZWZpbmUgSVNfVElNX0RNQUJVUlNUX0lOU1RBTkNFKElOU1RBTkNFKSAoKChJTlNUQU5DRSkgPT0gVElNMikgIHx8IFwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gVElNMykgIHx8IFwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gVElNNCkgIHx8IFwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gVElNNSkpDQoNCiNkZWZpbmUgSVNfVElNX0NDWF9JTlNUQU5DRShJTlNUQU5DRSwgQ0hBTk5FTCkgXA0KICAgICgoKChJTlNUQU5DRSkgPT0gVElNMikgJiYgICAgICAgICAgICAgICAgICAgXA0KICAgICAoKChDSEFOTkVMKSA9PSBUSU1fQ0hBTk5FTF8xKSB8fCAgICAgICAgICBcDQogICAgICAoKENIQU5ORUwpID09IFRJTV9DSEFOTkVMXzIpIHx8ICAgICAgICAgIFwNCiAgICAgICgoQ0hBTk5FTCkgPT0gVElNX0NIQU5ORUxfMykgfHwgICAgICAgICAgXA0KICAgICAgKChDSEFOTkVMKSA9PSBUSU1fQ0hBTk5FTF80KSkpICAgICAgICAgICBcDQogICAgfHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwNCiAgICAoKChJTlNUQU5DRSkgPT0gVElNMykgJiYgICAgICAgICAgICAgICAgICAgXA0KICAgICAoKChDSEFOTkVMKSA9PSBUSU1fQ0hBTk5FTF8xKSB8fCAgICAgICAgICBcDQogICAgICAoKENIQU5ORUwpID09IFRJTV9DSEFOTkVMXzIpIHx8ICAgICAgICAgIFwNCiAgICAgICgoQ0hBTk5FTCkgPT0gVElNX0NIQU5ORUxfMykgfHwgICAgICAgICAgXA0KICAgICAgKChDSEFOTkVMKSA9PSBUSU1fQ0hBTk5FTF80KSkpICAgICAgICAgICBcDQogICAgfHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwNCiAgICAoKChJTlNUQU5DRSkgPT0gVElNNCkgJiYgICAgICAgICAgICAgICAgICAgXA0KICAgICAoKChDSEFOTkVMKSA9PSBUSU1fQ0hBTk5FTF8xKSB8fCAgICAgICAgICBcDQogICAgICAoKENIQU5ORUwpID09IFRJTV9DSEFOTkVMXzIpIHx8ICAgICAgICAgIFwNCiAgICAgICgoQ0hBTk5FTCkgPT0gVElNX0NIQU5ORUxfMykgfHwgICAgICAgICAgXA0KICAgICAgKChDSEFOTkVMKSA9PSBUSU1fQ0hBTk5FTF80KSkpICAgICAgICAgICBcDQogICAgfHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwNCiAgICAoKChJTlNUQU5DRSkgPT0gVElNNSkgJiYgICAgICAgICAgICAgICAgICAgXA0KICAgICAoKChDSEFOTkVMKSA9PSBUSU1fQ0hBTk5FTF8xKSB8fCAgICAgICAgICBcDQogICAgICAoKENIQU5ORUwpID09IFRJTV9DSEFOTkVMXzIpIHx8ICAgICAgICAgIFwNCiAgICAgICgoQ0hBTk5FTCkgPT0gVElNX0NIQU5ORUxfMykgfHwgICAgICAgICAgXA0KICAgICAgKChDSEFOTkVMKSA9PSBUSU1fQ0hBTk5FTF80KSkpICAgICAgICAgICBcDQogICAgfHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwNCiAgICAoKChJTlNUQU5DRSkgPT0gVElNOSkgJiYgICAgICAgICAgICAgICAgICBcDQogICAgICgoKENIQU5ORUwpID09IFRJTV9DSEFOTkVMXzEpIHx8ICAgICAgICAgIFwNCiAgICAgICgoQ0hBTk5FTCkgPT0gVElNX0NIQU5ORUxfMikpKSAgICAgICAgICAgXA0KICAgIHx8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcDQogICAgKCgoSU5TVEFOQ0UpID09IFRJTTEwKSAmJiAgICAgICAgICAgICAgICAgIFwNCiAgICAgKCgoQ0hBTk5FTCkgPT0gVElNX0NIQU5ORUxfMSkpKSAgICAgICAgICAgXA0KICAgIHx8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcDQogICAgKCgoSU5TVEFOQ0UpID09IFRJTTExKSAmJiAgICAgICAgICAgICAgICAgIFwNCiAgICAgKCgoQ0hBTk5FTCkgPT0gVElNX0NIQU5ORUxfMSkpKSkNCg0KI2RlZmluZSBJU19USU1fQ0xPQ0tfRElWSVNJT05fSU5TVEFOQ0UoSU5TVEFOQ0UpICgoKElOU1RBTkNFKSA9PSBUSU0yKSAgfHwgXA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBUSU0zKSAgfHwgXA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBUSU00KSAgfHwgXA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBUSU01KSAgfHwgXA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBUSU05KSAgfHwgXA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBUSU0xMCkgfHwgXA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBUSU0xMSkpDQoNCiNkZWZpbmUgSVNfVElNX0RNQV9JTlNUQU5DRShJTlNUQU5DRSkgKCgoSU5TVEFOQ0UpID09IFRJTTIpICAgIHx8IFwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoSU5TVEFOQ0UpID09IFRJTTMpICAgIHx8IFwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoSU5TVEFOQ0UpID09IFRJTTQpICAgIHx8IFwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoSU5TVEFOQ0UpID09IFRJTTUpICAgIHx8IFwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoSU5TVEFOQ0UpID09IFRJTTYpICAgIHx8IFwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoSU5TVEFOQ0UpID09IFRJTTcpKQ0KICAgIA0KI2RlZmluZSBJU19USU1fRE1BX0NDX0lOU1RBTkNFKElOU1RBTkNFKSAoKChJTlNUQU5DRSkgPT0gVElNMikgIHx8IFwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoSU5TVEFOQ0UpID09IFRJTTMpICB8fCBcDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBUSU00KSAgfHwgXA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gVElNNSkpDQoNCiNkZWZpbmUgSVNfVElNX0NPVU5URVJfTU9ERV9TRUxFQ1RfSU5TVEFOQ0UoSU5TVEFOQ0UpICgoKElOU1RBTkNFKSA9PSBUSU0yKSAgICB8fCBcDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gVElNMykgICAgfHwgXA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoSU5TVEFOQ0UpID09IFRJTTQpICAgIHx8IFwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBUSU01KSAgICB8fCBcDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gVElNOSkpDQoNCiNkZWZpbmUgSVNfVElNX0VOQ09ERVJfSU5URVJGQUNFX0lOU1RBTkNFKElOU1RBTkNFKSAoKChJTlNUQU5DRSkgPT0gVElNMikgIHx8IFwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gVElNMykgIHx8IFwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gVElNNCkgIHx8IFwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gVElNNSkgIHx8IFwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gVElNOSkpDQoNCiNkZWZpbmUgSVNfVElNX1JFTUFQX0lOU1RBTkNFKElOU1RBTkNFKSAoKChJTlNUQU5DRSkgPT0gVElNMikgICAgfHwgXA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBUSU0zKSAgICB8fCBcDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoSU5TVEFOQ0UpID09IFRJTTkpICAgIHx8IFwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gVElNMTApICAgfHwgXA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBUSU0xMSkpDQoNCi8qKioqKioqKioqKioqKioqKioqKiBVU0FSVCBJbnN0YW5jZXMgOiBTeW5jaHJvbm91cyBtb2RlICoqKioqKioqKioqKioqKioqKioqKiovICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBJU19VU0FSVF9JTlNUQU5DRShJTlNUQU5DRSkgKCgoSU5TVEFOQ0UpID09IFVTQVJUMSkgfHwgXA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoSU5TVEFOQ0UpID09IFVTQVJUMikgfHwgXA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoSU5TVEFOQ0UpID09IFVTQVJUMykpDQoNCi8qKioqKioqKioqKioqKioqKioqKiBVQVJUIEluc3RhbmNlcyA6IEFzeW5jaHJvbm91cyBtb2RlICoqKioqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIElTX1VBUlRfSU5TVEFOQ0UoSU5TVEFOQ0UpICgoKElOU1RBTkNFKSA9PSBVU0FSVDEpIHx8IFwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoSU5TVEFOQ0UpID09IFVTQVJUMikgfHwgXA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gVVNBUlQzKSkNCg0KLyoqKioqKioqKioqKioqKioqKioqIFVBUlQgSW5zdGFuY2VzIDogSGFsZi1EdXBsZXggbW9kZSAqKioqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBJU19VQVJUX0hBTEZEVVBMRVhfSU5TVEFOQ0UoSU5TVEFOQ0UpICAgKCgoSU5TVEFOQ0UpID09IFVTQVJUMSkgfHwgXA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoSU5TVEFOQ0UpID09IFVTQVJUMikgfHwgXA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoSU5TVEFOQ0UpID09IFVTQVJUMykpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQoNCi8qKioqKioqKioqKioqKioqKioqKiBVQVJUIEluc3RhbmNlcyA6IExJTiBtb2RlICoqKioqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIElTX1VBUlRfTElOX0lOU1RBTkNFKElOU1RBTkNFKSAgICgoKElOU1RBTkNFKSA9PSBVU0FSVDEpIHx8IFwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoSU5TVEFOQ0UpID09IFVTQVJUMikgfHwgXA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gVVNBUlQzKSkgDQoNCi8qKioqKioqKioqKioqKioqKiogVUFSVCBJbnN0YW5jZXMgOiBIYXJkd2FyZSBGbG93IGNvbnRyb2wgKioqKioqKioqKioqKioqKioqKiovICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIElTX1VBUlRfSFdGTE9XX0lOU1RBTkNFKElOU1RBTkNFKSAoKChJTlNUQU5DRSkgPT0gVVNBUlQxKSB8fCBcDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gVVNBUlQyKSB8fCBcDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gVVNBUlQzKSkNCg0KLyoqKioqKioqKioqKioqKioqKioqKiBVQVJUIEluc3RhbmNlcyA6IFNtYXJkIGNhcmQgbW9kZSAqKioqKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgSVNfU01BUlRDQVJEX0lOU1RBTkNFKElOU1RBTkNFKSAoKChJTlNUQU5DRSkgPT0gVVNBUlQxKSB8fCBcDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoSU5TVEFOQ0UpID09IFVTQVJUMikgfHwgXA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBVU0FSVDMpKQ0KDQovKioqKioqKioqKioqKioqKioqKioqKiogVUFSVCBJbnN0YW5jZXMgOiBJUkRBIG1vZGUgKioqKioqKioqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBJU19JUkRBX0lOU1RBTkNFKElOU1RBTkNFKSAoKChJTlNUQU5DRSkgPT0gVVNBUlQxKSB8fCBcDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBVU0FSVDIpIHx8IFwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoSU5TVEFOQ0UpID09IFVTQVJUMykpDQoNCi8qKioqKioqKioqKioqKioqKiBVQVJUIEluc3RhbmNlcyA6IE11bHRpLVByb2Nlc3NvciBtb2RlICoqKioqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIElTX1VBUlRfTVVMVElQUk9DRVNTT1JfSU5TVEFOQ0UoSU5TVEFOQ0UpICAgKCgoSU5TVEFOQ0UpID09IFVTQVJUMSkgfHwgXA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBVU0FSVDIpIHx8IFwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gVVNBUlQzKSkgDQoNCi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKiogV1dERyBJbnN0YW5jZXMgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIElTX1dXREdfQUxMX0lOU1RBTkNFKElOU1RBTkNFKSAgKChJTlNUQU5DRSkgPT0gV1dERykNCg0KDQovKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqIExDRCBJbnN0YW5jZXMgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIElTX0xDRF9BTExfSU5TVEFOQ0UoSU5TVEFOQ0UpICgoSU5TVEFOQ0UpID09IExDRCkNCg0KLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiBVU0IgSW5zdGFuY2VzICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBJU19VU0JfQUxMX0lOU1RBTkNFKElOU1RBTkNFKSAoKElOU1RBTkNFKSA9PSBVU0IpDQoNCi8qKg0KICAqIEB9DQogICovDQoNCi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovDQovKiAgRm9yIGEgcGFpbmxlc3MgY29kZXMgbWlncmF0aW9uIGJldHdlZW4gdGhlIFNUTTMyTDF4eCBkZXZpY2UgcHJvZHVjdCAgICAgICAqLw0KLyogIGxpbmVzLCB0aGUgYWxpYXNlcyBkZWZpbmVkIGJlbG93IGFyZSBwdXQgaW4gcGxhY2UgdG8gb3ZlcmNvbWUgdGhlICAgICAgICAgKi8NCi8qICBkaWZmZXJlbmNlcyBpbiB0aGUgaW50ZXJydXB0IGhhbmRsZXJzIGFuZCBJUlFuIGRlZmluaXRpb25zLiAgICAgICAgICAgICAgICovDQovKiAgTm8gbmVlZCB0byB1cGRhdGUgZGV2ZWxvcGVkIGludGVycnVwdCBjb2RlIHdoZW4gbW92aW5nIGFjcm9zcyAgICAgICAgICAgICAqLyANCi8qICBwcm9kdWN0IGxpbmVzIHdpdGhpbiB0aGUgc2FtZSBTVE0zMkwxIEZhbWlseSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovDQovKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLw0KDQovKiBBbGlhc2VzIGZvciBfX0lSUW4gKi8NCg0KLyogQWxpYXNlcyBmb3IgX19JUlFIYW5kbGVyICovDQoNCi8qKg0KICAqIEB9DQogICovDQoNCi8qKg0KICAqIEB9DQogICovDQoNCiNpZmRlZiBfX2NwbHVzcGx1cw0KfQ0KI2VuZGlmIC8qIF9fY3BsdXNwbHVzICovDQoNCiNlbmRpZiAvKiBfX1NUTTMyTDE1MnhDQV9IICovDQoNCg0KDQovKioqKioqKioqKioqKioqKioqKioqKioqIChDKSBDT1BZUklHSFQgU1RNaWNyb2VsZWN0cm9uaWNzICoqKioqRU5EIE9GIEZJTEUqKioqLw0K