LyoqDQogICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKg0KICAqIEBmaWxlICAgIHN0bTMybDE1MXhkeC5oDQogICogQGF1dGhvciAgTUNEIEFwcGxpY2F0aW9uIFRlYW0NCiAgKiBAYnJpZWYgICBDTVNJUyBDb3J0ZXgtTTMgRGV2aWNlIFBlcmlwaGVyYWwgQWNjZXNzIExheWVyIEhlYWRlciBGaWxlLiANCiAgKiAgICAgICAgICBUaGlzIGZpbGUgY29udGFpbnMgYWxsIHRoZSBwZXJpcGhlcmFsIHJlZ2lzdGVyJ3MgZGVmaW5pdGlvbnMsIGJpdHMgDQogICogICAgICAgICAgZGVmaW5pdGlvbnMgYW5kIG1lbW9yeSBtYXBwaW5nIGZvciBTVE0zMkwxeHggZGV2aWNlcy4gICAgICAgICAgICANCiAgKiAgICAgICAgICAgIA0KICAqICAgICAgICAgIFRoaXMgZmlsZSBjb250YWluczoNCiAgKiAgICAgICAgICAgLSBEYXRhIHN0cnVjdHVyZXMgYW5kIHRoZSBhZGRyZXNzIG1hcHBpbmcgZm9yIGFsbCBwZXJpcGhlcmFscw0KICAqICAgICAgICAgICAtIFBlcmlwaGVyYWwncyByZWdpc3RlcnMgZGVjbGFyYXRpb25zIGFuZCBiaXRzIGRlZmluaXRpb24NCiAgKiAgICAgICAgICAgLSBNYWNyb3MgdG8gYWNjZXNzIHBlcmlwaGVyYWyScyByZWdpc3RlcnMgaGFyZHdhcmUNCiAgKiAgDQogICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKg0KICAqIEBhdHRlbnRpb24NCiAgKg0KICAqIDxoMj48Y2VudGVyPiZjb3B5OyBDT1BZUklHSFQoYykgMjAxNyBTVE1pY3JvZWxlY3Ryb25pY3M8L2NlbnRlcj48L2gyPg0KICAqDQogICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0IG1vZGlmaWNhdGlvbiwNCiAgKiBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zIGFyZSBtZXQ6DQogICogICAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2UsDQogICogICAgICB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLg0KICAqICAgMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlLA0KICAqICAgICAgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUgZG9jdW1lbnRhdGlvbg0KICAqICAgICAgYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uDQogICogICAzLiBOZWl0aGVyIHRoZSBuYW1lIG9mIFNUTWljcm9lbGVjdHJvbmljcyBub3IgdGhlIG5hbWVzIG9mIGl0cyBjb250cmlidXRvcnMNCiAgKiAgICAgIG1heSBiZSB1c2VkIHRvIGVuZG9yc2Ugb3IgcHJvbW90ZSBwcm9kdWN0cyBkZXJpdmVkIGZyb20gdGhpcyBzb2Z0d2FyZQ0KICAqICAgICAgd2l0aG91dCBzcGVjaWZpYyBwcmlvciB3cml0dGVuIHBlcm1pc3Npb24uDQogICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQogICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERFUlMgQU5EIENPTlRSSUJVVE9SUyAiQVMgSVMiDQogICogQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRQ0KICAqIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFSRQ0KICAqIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRSBDT1BZUklHSFQgSE9MREVSIE9SIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUNCiAgKiBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTA0KICAqIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SDQogICogU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVINCiAgKiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLA0KICAqIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFDQogICogT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4NCiAgKg0KICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioNCiAgKi8NCg0KLyoqIEBhZGR0b2dyb3VwIENNU0lTDQogICogQHsNCiAgKi8NCg0KLyoqIEBhZGR0b2dyb3VwIHN0bTMybDE1MXhkeA0KICAqIEB7DQogICovDQogICAgDQojaWZuZGVmIF9fU1RNMzJMMTUxeERYX0gNCiNkZWZpbmUgX19TVE0zMkwxNTF4RFhfSA0KDQojaWZkZWYgX19jcGx1c3BsdXMNCiBleHRlcm4gIkMiIHsNCiNlbmRpZiANCiAgDQoNCiAgLyoqIEBhZGR0b2dyb3VwIENvbmZpZ3VyYXRpb25fc2VjdGlvbl9mb3JfQ01TSVMNCiAgKiBAew0KICAqLw0KLyoqDQogICogQGJyaWVmIENvbmZpZ3VyYXRpb24gb2YgdGhlIENvcnRleC1NMyBQcm9jZXNzb3IgYW5kIENvcmUgUGVyaXBoZXJhbHMgDQogKi8NCiNkZWZpbmUgX19DTTNfUkVWICAgICAgICAgICAgICAgICAweDIwMFUgLyohPCBDb3J0ZXgtTTMgUmV2aXNpb24gcjJwMCAgICAgICAgICAgICAgICAgICovDQojZGVmaW5lIF9fTVBVX1BSRVNFTlQgICAgICAgICAgICAgMVUgICAgIC8qITwgU1RNMzJMMXh4IHByb3ZpZGVzIE1QVSAgICAgICAgICAgICAgICAgICAgICAgICAgKi8NCiNkZWZpbmUgX19OVklDX1BSSU9fQklUUyAgICAgICAgICA0VSAgICAgLyohPCBTVE0zMkwxeHggdXNlcyA0IEJpdHMgZm9yIHRoZSBQcmlvcml0eSBMZXZlbHMgICAgKi8NCiNkZWZpbmUgX19WZW5kb3JfU3lzVGlja0NvbmZpZyAgICAwVSAgICAgLyohPCBTZXQgdG8gMSBpZiBkaWZmZXJlbnQgU3lzVGljayBDb25maWcgaXMgdXNlZCAqLw0KIA0KLyoqDQogICogQH0NCiAgKi8NCiAgIA0KLyoqIEBhZGR0b2dyb3VwIFBlcmlwaGVyYWxfaW50ZXJydXB0X251bWJlcl9kZWZpbml0aW9uDQogICogQHsNCiAgKi8NCg0KLyoqDQogKiBAYnJpZWYgU1RNMzJMMXh4IEludGVycnVwdCBOdW1iZXIgRGVmaW5pdGlvbiwgYWNjb3JkaW5nIHRvIHRoZSBzZWxlY3RlZCBkZXZpY2UgDQogKiAgICAgICAgaW4gQHJlZiBMaWJyYXJ5X2NvbmZpZ3VyYXRpb25fc2VjdGlvbiANCiAqLw0KDQogLyohPCBJbnRlcnJ1cHQgTnVtYmVyIERlZmluaXRpb24gKi8NCnR5cGVkZWYgZW51bQ0Kew0KLyoqKioqKiAgQ29ydGV4LU0zIFByb2Nlc3NvciBFeGNlcHRpb25zIE51bWJlcnMgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLw0KICBOb25NYXNrYWJsZUludF9JUlFuICAgICAgICAgPSAtMTQsICAgIC8qITwgMiBOb24gTWFza2FibGUgSW50ZXJydXB0ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLw0KICBIYXJkRmF1bHRfSVJRbiAgICAgICAgICAgICAgPSAtMTMsICAgIC8qITwgMyBDb3J0ZXgtTTMgSGFyZCBGYXVsdCBJbnRlcnJ1cHQgICAgICAgICAgICAgICAgICAgICAgICAqLw0KICBNZW1vcnlNYW5hZ2VtZW50X0lSUW4gICAgICAgPSAtMTIsICAgIC8qITwgNCBDb3J0ZXgtTTMgTWVtb3J5IE1hbmFnZW1lbnQgSW50ZXJydXB0ICAgICAgICAgICAgICAgICAqLw0KICBCdXNGYXVsdF9JUlFuICAgICAgICAgICAgICAgPSAtMTEsICAgIC8qITwgNSBDb3J0ZXgtTTMgQnVzIEZhdWx0IEludGVycnVwdCAgICAgICAgICAgICAgICAgICAgICAgICAqLw0KICBVc2FnZUZhdWx0X0lSUW4gICAgICAgICAgICAgPSAtMTAsICAgIC8qITwgNiBDb3J0ZXgtTTMgVXNhZ2UgRmF1bHQgSW50ZXJydXB0ICAgICAgICAgICAgICAgICAgICAgICAqLw0KICBTVkNfSVJRbiAgICAgICAgICAgICAgICAgICAgPSAtNSwgICAgIC8qITwgMTEgQ29ydGV4LU0zIFNWIENhbGwgSW50ZXJydXB0ICAgICAgICAgICAgICAgICAgICAgICAgICAqLw0KICBEZWJ1Z01vbml0b3JfSVJRbiAgICAgICAgICAgPSAtNCwgICAgIC8qITwgMTIgQ29ydGV4LU0zIERlYnVnIE1vbml0b3IgSW50ZXJydXB0ICAgICAgICAgICAgICAgICAgICAqLw0KICBQZW5kU1ZfSVJRbiAgICAgICAgICAgICAgICAgPSAtMiwgICAgIC8qITwgMTQgQ29ydGV4LU0zIFBlbmQgU1YgSW50ZXJydXB0ICAgICAgICAgICAgICAgICAgICAgICAgICAqLw0KICBTeXNUaWNrX0lSUW4gICAgICAgICAgICAgICAgPSAtMSwgICAgIC8qITwgMTUgQ29ydGV4LU0zIFN5c3RlbSBUaWNrIEludGVycnVwdCAgICAgICAgICAgICAgICAgICAgICAqLw0KDQovKioqKioqICBTVE0zMkwgc3BlY2lmaWMgSW50ZXJydXB0IE51bWJlcnMgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovDQogIFdXREdfSVJRbiAgICAgICAgICAgICAgICAgICA9IDAsICAgICAgLyohPCBXaW5kb3cgV2F0Y2hEb2cgSW50ZXJydXB0ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovDQogIFBWRF9JUlFuICAgICAgICAgICAgICAgICAgICA9IDEsICAgICAgLyohPCBQVkQgdGhyb3VnaCBFWFRJIExpbmUgZGV0ZWN0aW9uIEludGVycnVwdCAgICAgICAgICAgICAgICovDQogIFRBTVBFUl9TVEFNUF9JUlFuICAgICAgICAgICA9IDIsICAgICAgLyohPCBUYW1wZXIgYW5kIFRpbWVTdGFtcCBpbnRlcnJ1cHRzIHRocm91Z2ggdGhlIEVYVEkgbGluZSAgICovDQogIFJUQ19XS1VQX0lSUW4gICAgICAgICAgICAgICA9IDMsICAgICAgLyohPCBSVEMgV2FrZXVwIFRpbWVyIHRocm91Z2ggRVhUSSBMaW5lIEludGVycnVwdCAgICAgICAgICAgICovDQogIEZMQVNIX0lSUW4gICAgICAgICAgICAgICAgICA9IDQsICAgICAgLyohPCBGTEFTSCBnbG9iYWwgSW50ZXJydXB0ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovDQogIFJDQ19JUlFuICAgICAgICAgICAgICAgICAgICA9IDUsICAgICAgLyohPCBSQ0MgZ2xvYmFsIEludGVycnVwdCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovDQogIEVYVEkwX0lSUW4gICAgICAgICAgICAgICAgICA9IDYsICAgICAgLyohPCBFWFRJIExpbmUwIEludGVycnVwdCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovDQogIEVYVEkxX0lSUW4gICAgICAgICAgICAgICAgICA9IDcsICAgICAgLyohPCBFWFRJIExpbmUxIEludGVycnVwdCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovDQogIEVYVEkyX0lSUW4gICAgICAgICAgICAgICAgICA9IDgsICAgICAgLyohPCBFWFRJIExpbmUyIEludGVycnVwdCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovDQogIEVYVEkzX0lSUW4gICAgICAgICAgICAgICAgICA9IDksICAgICAgLyohPCBFWFRJIExpbmUzIEludGVycnVwdCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovDQogIEVYVEk0X0lSUW4gICAgICAgICAgICAgICAgICA9IDEwLCAgICAgLyohPCBFWFRJIExpbmU0IEludGVycnVwdCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovDQogIERNQTFfQ2hhbm5lbDFfSVJRbiAgICAgICAgICA9IDExLCAgICAgLyohPCBETUExIENoYW5uZWwgMSBnbG9iYWwgSW50ZXJydXB0ICAgICAgICAgICAgICAgICAgICAgICAgICovDQogIERNQTFfQ2hhbm5lbDJfSVJRbiAgICAgICAgICA9IDEyLCAgICAgLyohPCBETUExIENoYW5uZWwgMiBnbG9iYWwgSW50ZXJydXB0ICAgICAgICAgICAgICAgICAgICAgICAgICovDQogIERNQTFfQ2hhbm5lbDNfSVJRbiAgICAgICAgICA9IDEzLCAgICAgLyohPCBETUExIENoYW5uZWwgMyBnbG9iYWwgSW50ZXJydXB0ICAgICAgICAgICAgICAgICAgICAgICAgICovDQogIERNQTFfQ2hhbm5lbDRfSVJRbiAgICAgICAgICA9IDE0LCAgICAgLyohPCBETUExIENoYW5uZWwgNCBnbG9iYWwgSW50ZXJydXB0ICAgICAgICAgICAgICAgICAgICAgICAgICovDQogIERNQTFfQ2hhbm5lbDVfSVJRbiAgICAgICAgICA9IDE1LCAgICAgLyohPCBETUExIENoYW5uZWwgNSBnbG9iYWwgSW50ZXJydXB0ICAgICAgICAgICAgICAgICAgICAgICAgICovDQogIERNQTFfQ2hhbm5lbDZfSVJRbiAgICAgICAgICA9IDE2LCAgICAgLyohPCBETUExIENoYW5uZWwgNiBnbG9iYWwgSW50ZXJydXB0ICAgICAgICAgICAgICAgICAgICAgICAgICovDQogIERNQTFfQ2hhbm5lbDdfSVJRbiAgICAgICAgICA9IDE3LCAgICAgLyohPCBETUExIENoYW5uZWwgNyBnbG9iYWwgSW50ZXJydXB0ICAgICAgICAgICAgICAgICAgICAgICAgICovDQogIEFEQzFfSVJRbiAgICAgICAgICAgICAgICAgICA9IDE4LCAgICAgLyohPCBBREMxIGdsb2JhbCBJbnRlcnJ1cHQgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovDQogIFVTQl9IUF9JUlFuICAgICAgICAgICAgICAgICA9IDE5LCAgICAgLyohPCBVU0IgSGlnaCBQcmlvcml0eSBJbnRlcnJ1cHQgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovDQogIFVTQl9MUF9JUlFuICAgICAgICAgICAgICAgICA9IDIwLCAgICAgLyohPCBVU0IgTG93IFByaW9yaXR5IEludGVycnVwdCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovDQogIERBQ19JUlFuICAgICAgICAgICAgICAgICAgICA9IDIxLCAgICAgLyohPCBEQUMgSW50ZXJydXB0ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovDQogIENPTVBfSVJRbiAgICAgICAgICAgICAgICAgICA9IDIyLCAgICAgLyohPCBDb21wYXJhdG9yIHRocm91Z2ggRVhUSSBMaW5lIEludGVycnVwdCAgICAgICAgICAgICAgICAgICovDQogIEVYVEk5XzVfSVJRbiAgICAgICAgICAgICAgICA9IDIzLCAgICAgLyohPCBFeHRlcm5hbCBMaW5lWzk6NV0gSW50ZXJydXB0cyAgICAgICAgICAgICAgICAgICAgICAgICAgICovDQogIFRJTTlfSVJRbiAgICAgICAgICAgICAgICAgICA9IDI1LCAgICAgLyohPCBUSU05IGdsb2JhbCBJbnRlcnJ1cHQgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovDQogIFRJTTEwX0lSUW4gICAgICAgICAgICAgICAgICA9IDI2LCAgICAgLyohPCBUSU0xMCBnbG9iYWwgSW50ZXJydXB0ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovDQogIFRJTTExX0lSUW4gICAgICAgICAgICAgICAgICA9IDI3LCAgICAgLyohPCBUSU0xMSBnbG9iYWwgSW50ZXJydXB0ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovDQogIFRJTTJfSVJRbiAgICAgICAgICAgICAgICAgICA9IDI4LCAgICAgLyohPCBUSU0yIGdsb2JhbCBJbnRlcnJ1cHQgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovDQogIFRJTTNfSVJRbiAgICAgICAgICAgICAgICAgICA9IDI5LCAgICAgLyohPCBUSU0zIGdsb2JhbCBJbnRlcnJ1cHQgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovDQogIFRJTTRfSVJRbiAgICAgICAgICAgICAgICAgICA9IDMwLCAgICAgLyohPCBUSU00IGdsb2JhbCBJbnRlcnJ1cHQgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovDQogIEkyQzFfRVZfSVJRbiAgICAgICAgICAgICAgICA9IDMxLCAgICAgLyohPCBJMkMxIEV2ZW50IEludGVycnVwdCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovDQogIEkyQzFfRVJfSVJRbiAgICAgICAgICAgICAgICA9IDMyLCAgICAgLyohPCBJMkMxIEVycm9yIEludGVycnVwdCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovDQogIEkyQzJfRVZfSVJRbiAgICAgICAgICAgICAgICA9IDMzLCAgICAgLyohPCBJMkMyIEV2ZW50IEludGVycnVwdCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovDQogIEkyQzJfRVJfSVJRbiAgICAgICAgICAgICAgICA9IDM0LCAgICAgLyohPCBJMkMyIEVycm9yIEludGVycnVwdCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovDQogIFNQSTFfSVJRbiAgICAgICAgICAgICAgICAgICA9IDM1LCAgICAgLyohPCBTUEkxIGdsb2JhbCBJbnRlcnJ1cHQgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovDQogIFNQSTJfSVJRbiAgICAgICAgICAgICAgICAgICA9IDM2LCAgICAgLyohPCBTUEkyIGdsb2JhbCBJbnRlcnJ1cHQgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovDQogIFVTQVJUMV9JUlFuICAgICAgICAgICAgICAgICA9IDM3LCAgICAgLyohPCBVU0FSVDEgZ2xvYmFsIEludGVycnVwdCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovDQogIFVTQVJUMl9JUlFuICAgICAgICAgICAgICAgICA9IDM4LCAgICAgLyohPCBVU0FSVDIgZ2xvYmFsIEludGVycnVwdCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovDQogIFVTQVJUM19JUlFuICAgICAgICAgICAgICAgICA9IDM5LCAgICAgLyohPCBVU0FSVDMgZ2xvYmFsIEludGVycnVwdCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovDQogIEVYVEkxNV8xMF9JUlFuICAgICAgICAgICAgICA9IDQwLCAgICAgLyohPCBFeHRlcm5hbCBMaW5lWzE1OjEwXSBJbnRlcnJ1cHRzICAgICAgICAgICAgICAgICAgICAgICAgICovDQogIFJUQ19BbGFybV9JUlFuICAgICAgICAgICAgICA9IDQxLCAgICAgLyohPCBSVEMgQWxhcm0gdGhyb3VnaCBFWFRJIExpbmUgSW50ZXJydXB0ICAgICAgICAgICAgICAgICAgICovDQogIFVTQl9GU19XS1VQX0lSUW4gICAgICAgICAgICA9IDQyLCAgICAgLyohPCBVU0IgRlMgV2FrZVVwIGZyb20gc3VzcGVuZCB0aHJvdWdoIEVYVEkgTGluZSBJbnRlcnJ1cHQgICovDQogIFRJTTZfSVJRbiAgICAgICAgICAgICAgICAgICA9IDQzLCAgICAgLyohPCBUSU02IGdsb2JhbCBJbnRlcnJ1cHQgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovDQogIFRJTTdfSVJRbiAgICAgICAgICAgICAgICAgICA9IDQ0LCAgICAgLyohPCBUSU03IGdsb2JhbCBJbnRlcnJ1cHQgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovDQogIFRJTTVfSVJRbiAgICAgICAgICAgICAgICAgICA9IDQ2LCAgICAgLyohPCBUSU01IGdsb2JhbCBJbnRlcnJ1cHQgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovDQogIFNQSTNfSVJRbiAgICAgICAgICAgICAgICAgICA9IDQ3LCAgICAgLyohPCBTUEkzIGdsb2JhbCBJbnRlcnJ1cHQgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovDQogIFVBUlQ0X0lSUW4gICAgICAgICAgICAgICAgICA9IDQ4LCAgICAgLyohPCBVQVJUNCBnbG9iYWwgSW50ZXJydXB0ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovDQogIFVBUlQ1X0lSUW4gICAgICAgICAgICAgICAgICA9IDQ5LCAgICAgLyohPCBVQVJUNSBnbG9iYWwgSW50ZXJydXB0ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovDQogIERNQTJfQ2hhbm5lbDFfSVJRbiAgICAgICAgICA9IDUwLCAgICAgLyohPCBETUEyIENoYW5uZWwgMSBnbG9iYWwgSW50ZXJydXB0ICAgICAgICAgICAgICAgICAgICAgICAgICovDQogIERNQTJfQ2hhbm5lbDJfSVJRbiAgICAgICAgICA9IDUxLCAgICAgLyohPCBETUEyIENoYW5uZWwgMiBnbG9iYWwgSW50ZXJydXB0ICAgICAgICAgICAgICAgICAgICAgICAgICovDQogIERNQTJfQ2hhbm5lbDNfSVJRbiAgICAgICAgICA9IDUyLCAgICAgLyohPCBETUEyIENoYW5uZWwgMyBnbG9iYWwgSW50ZXJydXB0ICAgICAgICAgICAgICAgICAgICAgICAgICovDQogIERNQTJfQ2hhbm5lbDRfSVJRbiAgICAgICAgICA9IDUzLCAgICAgLyohPCBETUEyIENoYW5uZWwgNCBnbG9iYWwgSW50ZXJydXB0ICAgICAgICAgICAgICAgICAgICAgICAgICovDQogIERNQTJfQ2hhbm5lbDVfSVJRbiAgICAgICAgICA9IDU0LCAgICAgLyohPCBETUEyIENoYW5uZWwgNSBnbG9iYWwgSW50ZXJydXB0ICAgICAgICAgICAgICAgICAgICAgICAgICovDQogIENPTVBfQUNRX0lSUW4gICAgICAgICAgICAgICA9IDU2ICAgICAgLyohPCBDb21wYXJhdG9yIENoYW5uZWwgQWNxdWlzaXRpb24gZ2xvYmFsIEludGVycnVwdCAgICAgICAgICovDQp9IElSUW5fVHlwZTsNCg0KLyoqDQogICogQH0NCiAgKi8NCg0KI2luY2x1ZGUgImNvcmVfY20zLmgiDQojaW5jbHVkZSAic3lzdGVtX3N0bTMybDF4eC5oIg0KI2luY2x1ZGUgPHN0ZGludC5oPg0KDQovKiogQGFkZHRvZ3JvdXAgUGVyaXBoZXJhbF9yZWdpc3RlcnNfc3RydWN0dXJlcw0KICAqIEB7DQogICovICAgDQoNCi8qKiANCiAgKiBAYnJpZWYgQW5hbG9nIHRvIERpZ2l0YWwgQ29udmVydGVyDQogICovDQoNCnR5cGVkZWYgc3RydWN0DQp7DQogIF9fSU8gdWludDMyX3QgU1I7ICAgICAgICAgICAvKiE8IEFEQyBzdGF0dXMgcmVnaXN0ZXIsICAgICAgICAgICAgICAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDAwICovDQogIF9fSU8gdWludDMyX3QgQ1IxOyAgICAgICAgICAvKiE8IEFEQyBjb250cm9sIHJlZ2lzdGVyIDEsICAgICAgICAgICAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDA0ICovDQogIF9fSU8gdWludDMyX3QgQ1IyOyAgICAgICAgICAvKiE8IEFEQyBjb250cm9sIHJlZ2lzdGVyIDIsICAgICAgICAgICAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDA4ICovDQogIF9fSU8gdWludDMyX3QgU01QUjE7ICAgICAgICAvKiE8IEFEQyBzYW1wbGUgdGltZSByZWdpc3RlciAxLCAgICAgICAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDBDICovDQogIF9fSU8gdWludDMyX3QgU01QUjI7ICAgICAgICAvKiE8IEFEQyBzYW1wbGUgdGltZSByZWdpc3RlciAyLCAgICAgICAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDEwICovDQogIF9fSU8gdWludDMyX3QgU01QUjM7ICAgICAgICAvKiE8IEFEQyBzYW1wbGUgdGltZSByZWdpc3RlciAzLCAgICAgICAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDE0ICovDQogIF9fSU8gdWludDMyX3QgSk9GUjE7ICAgICAgICAvKiE8IEFEQyBpbmplY3RlZCBjaGFubmVsIGRhdGEgb2Zmc2V0IHJlZ2lzdGVyIDEsIEFkZHJlc3Mgb2Zmc2V0OiAweDE4ICovDQogIF9fSU8gdWludDMyX3QgSk9GUjI7ICAgICAgICAvKiE8IEFEQyBpbmplY3RlZCBjaGFubmVsIGRhdGEgb2Zmc2V0IHJlZ2lzdGVyIDIsIEFkZHJlc3Mgb2Zmc2V0OiAweDFDICovDQogIF9fSU8gdWludDMyX3QgSk9GUjM7ICAgICAgICAvKiE8IEFEQyBpbmplY3RlZCBjaGFubmVsIGRhdGEgb2Zmc2V0IHJlZ2lzdGVyIDMsIEFkZHJlc3Mgb2Zmc2V0OiAweDIwICovDQogIF9fSU8gdWludDMyX3QgSk9GUjQ7ICAgICAgICAvKiE8IEFEQyBpbmplY3RlZCBjaGFubmVsIGRhdGEgb2Zmc2V0IHJlZ2lzdGVyIDQsIEFkZHJlc3Mgb2Zmc2V0OiAweDI0ICovDQogIF9fSU8gdWludDMyX3QgSFRSOyAgICAgICAgICAvKiE8IEFEQyB3YXRjaGRvZyBoaWdoZXIgdGhyZXNob2xkIHJlZ2lzdGVyLCAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDI4ICovDQogIF9fSU8gdWludDMyX3QgTFRSOyAgICAgICAgICAvKiE8IEFEQyB3YXRjaGRvZyBsb3dlciB0aHJlc2hvbGQgcmVnaXN0ZXIsICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDJDICovDQogIF9fSU8gdWludDMyX3QgU1FSMTsgICAgICAgICAvKiE8IEFEQyByZWd1bGFyIHNlcXVlbmNlIHJlZ2lzdGVyIDEsICAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDMwICovDQogIF9fSU8gdWludDMyX3QgU1FSMjsgICAgICAgICAvKiE8IEFEQyByZWd1bGFyIHNlcXVlbmNlIHJlZ2lzdGVyIDIsICAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDM0ICovDQogIF9fSU8gdWludDMyX3QgU1FSMzsgICAgICAgICAvKiE8IEFEQyByZWd1bGFyIHNlcXVlbmNlIHJlZ2lzdGVyIDMsICAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDM4ICovDQogIF9fSU8gdWludDMyX3QgU1FSNDsgICAgICAgICAvKiE8IEFEQyByZWd1bGFyIHNlcXVlbmNlIHJlZ2lzdGVyIDQsICAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDNDICovDQogIF9fSU8gdWludDMyX3QgU1FSNTsgICAgICAgICAvKiE8IEFEQyByZWd1bGFyIHNlcXVlbmNlIHJlZ2lzdGVyIDUsICAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDQwICovDQogIF9fSU8gdWludDMyX3QgSlNRUjsgICAgICAgICAvKiE8IEFEQyBpbmplY3RlZCBzZXF1ZW5jZSByZWdpc3RlciwgICAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDQ0ICovDQogIF9fSU8gdWludDMyX3QgSkRSMTsgICAgICAgICAvKiE8IEFEQyBpbmplY3RlZCBkYXRhIHJlZ2lzdGVyIDEsICAgICAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDQ4ICovDQogIF9fSU8gdWludDMyX3QgSkRSMjsgICAgICAgICAvKiE8IEFEQyBpbmplY3RlZCBkYXRhIHJlZ2lzdGVyIDIsICAgICAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDRDICovDQogIF9fSU8gdWludDMyX3QgSkRSMzsgICAgICAgICAvKiE8IEFEQyBpbmplY3RlZCBkYXRhIHJlZ2lzdGVyIDMsICAgICAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDUwICovDQogIF9fSU8gdWludDMyX3QgSkRSNDsgICAgICAgICAvKiE8IEFEQyBpbmplY3RlZCBkYXRhIHJlZ2lzdGVyIDQsICAgICAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDU0ICovDQogIF9fSU8gdWludDMyX3QgRFI7ICAgICAgICAgICAvKiE8IEFEQyByZWd1bGFyIGRhdGEgcmVnaXN0ZXIsICAgICAgICAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDU4ICovDQogIF9fSU8gdWludDMyX3QgU01QUjA7ICAgICAgICAvKiE8IEFEQyBzYW1wbGUgdGltZSByZWdpc3RlciAwLCAgICAgICAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDVDICovDQp9IEFEQ19UeXBlRGVmOw0KDQp0eXBlZGVmIHN0cnVjdA0Kew0KICBfX0lPIHVpbnQzMl90IENTUjsgICAgICAgICAgLyohPCBBREMgY29tbW9uIHN0YXR1cyByZWdpc3RlciwgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogQURDMSBiYXNlIGFkZHJlc3MgKyAweDMwMCAqLw0KICBfX0lPIHVpbnQzMl90IENDUjsgICAgICAgICAgLyohPCBBREMgY29tbW9uIGNvbnRyb2wgcmVnaXN0ZXIsICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogQURDMSBiYXNlIGFkZHJlc3MgKyAweDMwNCAqLw0KfSBBRENfQ29tbW9uX1R5cGVEZWY7DQoNCi8qKiANCiAgKiBAYnJpZWYgQ29tcGFyYXRvciANCiAgKi8NCg0KdHlwZWRlZiBzdHJ1Y3QNCnsNCiAgX19JTyB1aW50MzJfdCBDU1I7ICAgICAgICAgLyohPCBDT01QIGNvbnRyb2wgYW5kIHN0YXR1cyByZWdpc3RlciwgQWRkcmVzcyBvZmZzZXQ6IDB4MDAgKi8NCn0gQ09NUF9UeXBlRGVmOw0KDQp0eXBlZGVmIHN0cnVjdA0Kew0KICBfX0lPIHVpbnQzMl90IENTUjsgICAgICAgICAvKiE8IENPTVAgY29udHJvbCBhbmQgc3RhdHVzIHJlZ2lzdGVyLCB1c2VkIGZvciBiaXRzIGNvbW1vbiB0byBzZXZlcmFsIENPTVAgaW5zdGFuY2VzLCBBZGRyZXNzIG9mZnNldDogMHgwMCAqLw0KfSBDT01QX0NvbW1vbl9UeXBlRGVmOw0KDQovKiogDQogICogQGJyaWVmIENSQyBjYWxjdWxhdGlvbiB1bml0DQogICovDQoNCnR5cGVkZWYgc3RydWN0DQp7DQogIF9fSU8gdWludDMyX3QgRFI7ICAgICAgICAgICAvKiE8IENSQyBEYXRhIHJlZ2lzdGVyLCAgICAgICAgICAgICAgICAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDAwICovDQogIF9fSU8gdWludDhfdCAgSURSOyAgICAgICAgICAvKiE8IENSQyBJbmRlcGVuZGVudCBkYXRhIHJlZ2lzdGVyLCAgICAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDA0ICovDQogIHVpbnQ4X3QgICAgICAgUkVTRVJWRUQwOyAgICAvKiE8IFJlc2VydmVkLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDA1ICovDQogIHVpbnQxNl90ICAgICAgUkVTRVJWRUQxOyAgICAvKiE8IFJlc2VydmVkLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDA2ICovIA0KICBfX0lPIHVpbnQzMl90IENSOyAgICAgICAgICAgLyohPCBDUkMgQ29udHJvbCByZWdpc3RlciwgICAgICAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgwOCAqLyANCn0gQ1JDX1R5cGVEZWY7DQoNCi8qKiANCiAgKiBAYnJpZWYgRGlnaXRhbCB0byBBbmFsb2cgQ29udmVydGVyDQogICovDQoNCnR5cGVkZWYgc3RydWN0DQp7DQogIF9fSU8gdWludDMyX3QgQ1I7ICAgICAgICAgICAvKiE8IERBQyBjb250cm9sIHJlZ2lzdGVyLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgwMCAqLw0KICBfX0lPIHVpbnQzMl90IFNXVFJJR1I7ICAgICAgLyohPCBEQUMgc29mdHdhcmUgdHJpZ2dlciByZWdpc3RlciwgICAgICAgICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MDQgKi8NCiAgX19JTyB1aW50MzJfdCBESFIxMlIxOyAgICAgIC8qITwgREFDIGNoYW5uZWwxIDEyLWJpdCByaWdodC1hbGlnbmVkIGRhdGEgaG9sZGluZyByZWdpc3RlciwgIEFkZHJlc3Mgb2Zmc2V0OiAweDA4ICovDQogIF9fSU8gdWludDMyX3QgREhSMTJMMTsgICAgICAvKiE8IERBQyBjaGFubmVsMSAxMi1iaXQgbGVmdCBhbGlnbmVkIGRhdGEgaG9sZGluZyByZWdpc3RlciwgICBBZGRyZXNzIG9mZnNldDogMHgwQyAqLw0KICBfX0lPIHVpbnQzMl90IERIUjhSMTsgICAgICAgLyohPCBEQUMgY2hhbm5lbDEgOC1iaXQgcmlnaHQgYWxpZ25lZCBkYXRhIGhvbGRpbmcgcmVnaXN0ZXIsICAgQWRkcmVzcyBvZmZzZXQ6IDB4MTAgKi8NCiAgX19JTyB1aW50MzJfdCBESFIxMlIyOyAgICAgIC8qITwgREFDIGNoYW5uZWwyIDEyLWJpdCByaWdodCBhbGlnbmVkIGRhdGEgaG9sZGluZyByZWdpc3RlciwgIEFkZHJlc3Mgb2Zmc2V0OiAweDE0ICovDQogIF9fSU8gdWludDMyX3QgREhSMTJMMjsgICAgICAvKiE8IERBQyBjaGFubmVsMiAxMi1iaXQgbGVmdCBhbGlnbmVkIGRhdGEgaG9sZGluZyByZWdpc3RlciwgICBBZGRyZXNzIG9mZnNldDogMHgxOCAqLw0KICBfX0lPIHVpbnQzMl90IERIUjhSMjsgICAgICAgLyohPCBEQUMgY2hhbm5lbDIgOC1iaXQgcmlnaHQtYWxpZ25lZCBkYXRhIGhvbGRpbmcgcmVnaXN0ZXIsICAgQWRkcmVzcyBvZmZzZXQ6IDB4MUMgKi8NCiAgX19JTyB1aW50MzJfdCBESFIxMlJEOyAgICAgIC8qITwgRHVhbCBEQUMgMTItYml0IHJpZ2h0LWFsaWduZWQgZGF0YSBob2xkaW5nIHJlZ2lzdGVyLCAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDIwICovDQogIF9fSU8gdWludDMyX3QgREhSMTJMRDsgICAgICAvKiE8IERVQUwgREFDIDEyLWJpdCBsZWZ0IGFsaWduZWQgZGF0YSBob2xkaW5nIHJlZ2lzdGVyLCAgICAgICBBZGRyZXNzIG9mZnNldDogMHgyNCAqLw0KICBfX0lPIHVpbnQzMl90IERIUjhSRDsgICAgICAgLyohPCBEVUFMIERBQyA4LWJpdCByaWdodCBhbGlnbmVkIGRhdGEgaG9sZGluZyByZWdpc3RlciwgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MjggKi8NCiAgX19JTyB1aW50MzJfdCBET1IxOyAgICAgICAgIC8qITwgREFDIGNoYW5uZWwxIGRhdGEgb3V0cHV0IHJlZ2lzdGVyLCAgICAgICAgICAgICAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDJDICovDQogIF9fSU8gdWludDMyX3QgRE9SMjsgICAgICAgICAvKiE8IERBQyBjaGFubmVsMiBkYXRhIG91dHB1dCByZWdpc3RlciwgICAgICAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgzMCAqLw0KICBfX0lPIHVpbnQzMl90IFNSOyAgICAgICAgICAgLyohPCBEQUMgc3RhdHVzIHJlZ2lzdGVyLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MzQgKi8NCn0gREFDX1R5cGVEZWY7DQoNCi8qKiANCiAgKiBAYnJpZWYgRGVidWcgTUNVDQogICovDQoNCnR5cGVkZWYgc3RydWN0DQp7DQogIF9fSU8gdWludDMyX3QgSURDT0RFOyAgICAgICAvKiE8IE1DVSBkZXZpY2UgSUQgY29kZSwgICAgICAgICAgICAgICAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDAwICovDQogIF9fSU8gdWludDMyX3QgQ1I7ICAgICAgICAgICAvKiE8IERlYnVnIE1DVSBjb25maWd1cmF0aW9uIHJlZ2lzdGVyLCAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDA0ICovDQogIF9fSU8gdWludDMyX3QgQVBCMUZaOyAgICAgICAvKiE8IERlYnVnIE1DVSBBUEIxIGZyZWV6ZSByZWdpc3RlciwgICAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDA4ICovDQogIF9fSU8gdWludDMyX3QgQVBCMkZaOyAgICAgICAvKiE8IERlYnVnIE1DVSBBUEIyIGZyZWV6ZSByZWdpc3RlciwgICAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDBDICovDQp9REJHTUNVX1R5cGVEZWY7DQoNCi8qKiANCiAgKiBAYnJpZWYgRE1BIENvbnRyb2xsZXINCiAgKi8NCg0KdHlwZWRlZiBzdHJ1Y3QNCnsNCiAgX19JTyB1aW50MzJfdCBDQ1I7ICAgICAgICAgIC8qITwgRE1BIGNoYW5uZWwgeCBjb25maWd1cmF0aW9uIHJlZ2lzdGVyICAgICAgICAqLw0KICBfX0lPIHVpbnQzMl90IENORFRSOyAgICAgICAgLyohPCBETUEgY2hhbm5lbCB4IG51bWJlciBvZiBkYXRhIHJlZ2lzdGVyICAgICAgICovDQogIF9fSU8gdWludDMyX3QgQ1BBUjsgICAgICAgICAvKiE8IERNQSBjaGFubmVsIHggcGVyaXBoZXJhbCBhZGRyZXNzIHJlZ2lzdGVyICAgKi8NCiAgX19JTyB1aW50MzJfdCBDTUFSOyAgICAgICAgIC8qITwgRE1BIGNoYW5uZWwgeCBtZW1vcnkgYWRkcmVzcyByZWdpc3RlciAgICAgICAqLw0KfSBETUFfQ2hhbm5lbF9UeXBlRGVmOw0KDQp0eXBlZGVmIHN0cnVjdA0Kew0KICBfX0lPIHVpbnQzMl90IElTUjsgICAgICAgICAgLyohPCBETUEgaW50ZXJydXB0IHN0YXR1cyByZWdpc3RlciwgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgwMCAqLw0KICBfX0lPIHVpbnQzMl90IElGQ1I7ICAgICAgICAgLyohPCBETUEgaW50ZXJydXB0IGZsYWcgY2xlYXIgcmVnaXN0ZXIsICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgwNCAqLw0KfSBETUFfVHlwZURlZjsNCg0KLyoqIA0KICAqIEBicmllZiBFeHRlcm5hbCBJbnRlcnJ1cHQvRXZlbnQgQ29udHJvbGxlcg0KICAqLw0KDQp0eXBlZGVmIHN0cnVjdA0Kew0KICBfX0lPIHVpbnQzMl90IElNUjsgICAgICAgICAgLyohPEVYVEkgSW50ZXJydXB0IG1hc2sgcmVnaXN0ZXIsICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgwMCAqLw0KICBfX0lPIHVpbnQzMl90IEVNUjsgICAgICAgICAgLyohPEVYVEkgRXZlbnQgbWFzayByZWdpc3RlciwgICAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgwNCAqLw0KICBfX0lPIHVpbnQzMl90IFJUU1I7ICAgICAgICAgLyohPEVYVEkgUmlzaW5nIHRyaWdnZXIgc2VsZWN0aW9uIHJlZ2lzdGVyICwgICAgICBBZGRyZXNzIG9mZnNldDogMHgwOCAqLw0KICBfX0lPIHVpbnQzMl90IEZUU1I7ICAgICAgICAgLyohPEVYVEkgRmFsbGluZyB0cmlnZ2VyIHNlbGVjdGlvbiByZWdpc3RlciwgICAgICBBZGRyZXNzIG9mZnNldDogMHgwQyAqLw0KICBfX0lPIHVpbnQzMl90IFNXSUVSOyAgICAgICAgLyohPEVYVEkgU29mdHdhcmUgaW50ZXJydXB0IGV2ZW50IHJlZ2lzdGVyLCAgICAgICBBZGRyZXNzIG9mZnNldDogMHgxMCAqLw0KICBfX0lPIHVpbnQzMl90IFBSOyAgICAgICAgICAgLyohPEVYVEkgUGVuZGluZyByZWdpc3RlciwgICAgICAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgxNCAqLw0KfSBFWFRJX1R5cGVEZWY7DQoNCi8qKiANCiAgKiBAYnJpZWYgRkxBU0ggUmVnaXN0ZXJzDQogICovDQp0eXBlZGVmIHN0cnVjdA0Kew0KICBfX0lPIHVpbnQzMl90IEFDUjsgICAgICAgICAgLyohPCBBY2Nlc3MgY29udHJvbCByZWdpc3RlciwgICAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgwMCAqLw0KICBfX0lPIHVpbnQzMl90IFBFQ1I7ICAgICAgICAgLyohPCBQcm9ncmFtL2VyYXNlIGNvbnRyb2wgcmVnaXN0ZXIsICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgwNCAqLw0KICBfX0lPIHVpbnQzMl90IFBES0VZUjsgICAgICAgLyohPCBQb3dlciBkb3duIGtleSByZWdpc3RlciwgICAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgwOCAqLw0KICBfX0lPIHVpbnQzMl90IFBFS0VZUjsgICAgICAgLyohPCBQcm9ncmFtL2VyYXNlIGtleSByZWdpc3RlciwgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgwYyAqLw0KICBfX0lPIHVpbnQzMl90IFBSR0tFWVI7ICAgICAgLyohPCBQcm9ncmFtIG1lbW9yeSBrZXkgcmVnaXN0ZXIsICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgxMCAqLw0KICBfX0lPIHVpbnQzMl90IE9QVEtFWVI7ICAgICAgLyohPCBPcHRpb24gYnl0ZSBrZXkgcmVnaXN0ZXIsICAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgxNCAqLw0KICBfX0lPIHVpbnQzMl90IFNSOyAgICAgICAgICAgLyohPCBTdGF0dXMgcmVnaXN0ZXIsICAgICAgICAgICAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgxOCAqLw0KICBfX0lPIHVpbnQzMl90IE9CUjsgICAgICAgICAgLyohPCBPcHRpb24gYnl0ZSByZWdpc3RlciwgICAgICAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgxYyAqLw0KICBfX0lPIHVpbnQzMl90IFdSUFIxOyAgICAgICAgLyohPCBXcml0ZSBwcm90ZWN0aW9uIHJlZ2lzdGVyIDEsICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgyMCAqLw0KICB1aW50MzJfdCAgIFJFU0VSVkVEWzIzXTsgICAgLyohPCBSZXNlcnZlZCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgyNCAqLw0KICBfX0lPIHVpbnQzMl90IFdSUFIyOyAgICAgICAgLyohPCBXcml0ZSBwcm90ZWN0aW9uIHJlZ2lzdGVyIDIsICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHg4MCAqLw0KICBfX0lPIHVpbnQzMl90IFdSUFIzOyAgICAgICAgLyohPCBXcml0ZSBwcm90ZWN0aW9uIHJlZ2lzdGVyIDMsICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHg4NCAqLw0KICBfX0lPIHVpbnQzMl90IFdSUFI0OyAgICAgICAgLyohPCBXcml0ZSBwcm90ZWN0aW9uIHJlZ2lzdGVyIDQsICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHg4OCAqLw0KfSBGTEFTSF9UeXBlRGVmOw0KDQovKiogDQogICogQGJyaWVmIE9wdGlvbiBCeXRlcyBSZWdpc3RlcnMNCiAgKi8NCnR5cGVkZWYgc3RydWN0DQp7DQogIF9fSU8gdWludDMyX3QgUkRQOyAgICAgICAgICAgICAgLyohPCBSZWFkIHByb3RlY3Rpb24gcmVnaXN0ZXIsICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MDAgKi8NCiAgX19JTyB1aW50MzJfdCBVU0VSOyAgICAgICAgICAgICAvKiE8IHVzZXIgcmVnaXN0ZXIsICAgICAgICAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgwNCAqLw0KICBfX0lPIHVpbnQzMl90IFdSUDAxOyAgICAgICAgICAgIC8qITwgd3JpdGUgcHJvdGVjdGlvbiByZWdpc3RlciAwIDEsICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDA4ICovDQogIF9fSU8gdWludDMyX3QgV1JQMjM7ICAgICAgICAgICAgLyohPCB3cml0ZSBwcm90ZWN0aW9uIHJlZ2lzdGVyIDIgMywgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MEMgKi8NCiAgX19JTyB1aW50MzJfdCBXUlA0NTsgICAgICAgICAgICAvKiE8IHdyaXRlIHByb3RlY3Rpb24gcmVnaXN0ZXIgNCA1LCAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgxMCAqLw0KICBfX0lPIHVpbnQzMl90IFdSUDY3OyAgICAgICAgICAgIC8qITwgd3JpdGUgcHJvdGVjdGlvbiByZWdpc3RlciA2IDcsICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDE0ICovDQogIF9fSU8gdWludDMyX3QgV1JQODk7ICAgICAgICAgICAgLyohPCB3cml0ZSBwcm90ZWN0aW9uIHJlZ2lzdGVyIDggOSwgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MTggKi8NCiAgX19JTyB1aW50MzJfdCBXUlAxMDExOyAgICAgICAgICAvKiE8IHdyaXRlIHByb3RlY3Rpb24gcmVnaXN0ZXIgMTAgMTEsICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgxQyAqLw0KICB1aW50MzJfdCAgIFJFU0VSVkVEWzI0XTsgICAgICAgIC8qITwgUmVzZXJ2ZWQsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgMHgyMCAtPiAweDdDICAgICovDQogIF9fSU8gdWludDMyX3QgV1JQMTIxMzsgICAgICAgICAgLyohPCB3cml0ZSBwcm90ZWN0aW9uIHJlZ2lzdGVyIDEyIDEzLCAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4ODAgKi8NCiAgX19JTyB1aW50MzJfdCBXUlAxNDE1OyAgICAgICAgICAvKiE8IHdyaXRlIHByb3RlY3Rpb24gcmVnaXN0ZXIgMTQgMTUsICAgICAgICBBZGRyZXNzIG9mZnNldDogMHg4NCAqLw0KfSBPQl9UeXBlRGVmOw0KDQovKiogDQogICogQGJyaWVmIE9wZXJhdGlvbmFsIEFtcGxpZmllciAoT1BBTVApDQogICovDQp0eXBlZGVmIHN0cnVjdA0Kew0KICBfX0lPIHVpbnQzMl90IENTUjsgICAgICAgICAgLyohPCBPUEFNUCBjb250cm9sIGFuZCBzdGF0dXMgcmVnaXN0ZXIsICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgwMCAqLw0KICBfX0lPIHVpbnQzMl90IE9UUjsgICAgICAgICAgLyohPCBPUEFNUCBvZmZzZXQgdHJpbW1pbmcgcmVnaXN0ZXIgZm9yIG5vcm1hbCBtb2RlLCAgICBBZGRyZXNzIG9mZnNldDogMHgwNCAqLyANCiAgX19JTyB1aW50MzJfdCBMUE9UUjsgICAgICAgIC8qITwgT1BBTVAgb2Zmc2V0IHRyaW1taW5nIHJlZ2lzdGVyIGZvciBsb3cgcG93ZXIgbW9kZSwgQWRkcmVzcyBvZmZzZXQ6IDB4MDggKi8NCn0gT1BBTVBfVHlwZURlZjsNCg0KdHlwZWRlZiBzdHJ1Y3QNCnsNCiAgX19JTyB1aW50MzJfdCBDU1I7ICAgICAgICAgIC8qITwgT1BBTVAgY29udHJvbCBhbmQgc3RhdHVzIHJlZ2lzdGVyLCB1c2VkIGZvciBiaXRzIGNvbW1vbiB0byBzZXZlcmFsIE9QQU1QIGluc3RhbmNlcywgICAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDAwICovDQogIF9fSU8gdWludDMyX3QgT1RSOyAgICAgICAgICAvKiE8IE9QQU1QIG9mZnNldCB0cmltbWluZyByZWdpc3RlciBmb3Igbm9ybWFsIG1vZGUsIHVzZWQgZm9yIGJpdHMgY29tbW9uIHRvIHNldmVyYWwgT1BBTVAgaW5zdGFuY2VzLCBBZGRyZXNzIG9mZnNldDogMHgwNCAqLyANCn0gT1BBTVBfQ29tbW9uX1R5cGVEZWY7DQoNCi8qKiANCiAgKiBAYnJpZWYgR2VuZXJhbCBQdXJwb3NlIElPDQogICovDQoNCnR5cGVkZWYgc3RydWN0DQp7DQogIF9fSU8gdWludDMyX3QgTU9ERVI7ICAgICAgICAvKiE8IEdQSU8gcG9ydCBtb2RlIHJlZ2lzdGVyLCAgICAgICAgICAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDAwICAgICAgKi8NCiAgX19JTyB1aW50MzJfdCBPVFlQRVI7ICAgICAgIC8qITwgR1BJTyBwb3J0IG91dHB1dCB0eXBlIHJlZ2lzdGVyLCAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MDQgICAgICAqLw0KICBfX0lPIHVpbnQzMl90IE9TUEVFRFI7ICAgICAgLyohPCBHUElPIHBvcnQgb3V0cHV0IHNwZWVkIHJlZ2lzdGVyLCAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgwOCAgICAgICovDQogIF9fSU8gdWludDMyX3QgUFVQRFI7ICAgICAgICAvKiE8IEdQSU8gcG9ydCBwdWxsLXVwL3B1bGwtZG93biByZWdpc3RlciwgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDBDICAgICAgKi8NCiAgX19JTyB1aW50MzJfdCBJRFI7ICAgICAgICAgIC8qITwgR1BJTyBwb3J0IGlucHV0IGRhdGEgcmVnaXN0ZXIsICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MTAgICAgICAqLw0KICBfX0lPIHVpbnQzMl90IE9EUjsgICAgICAgICAgLyohPCBHUElPIHBvcnQgb3V0cHV0IGRhdGEgcmVnaXN0ZXIsICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgxNCAgICAgICovDQogIF9fSU8gdWludDMyX3QgQlNSUjsgICAgICAgICAvKiE8IEdQSU8gcG9ydCBiaXQgc2V0L3Jlc2V0IHJlZ2lzdGVyQlNSUiwgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDE4ICAgICAgKi8NCiAgX19JTyB1aW50MzJfdCBMQ0tSOyAgICAgICAgIC8qITwgR1BJTyBwb3J0IGNvbmZpZ3VyYXRpb24gbG9jayByZWdpc3RlciwgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MUMgICAgICAqLw0KICBfX0lPIHVpbnQzMl90IEFGUlsyXTsgICAgICAgLyohPCBHUElPIGFsdGVybmF0ZSBmdW5jdGlvbiByZWdpc3RlciwgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgyMC0weDI0ICovDQogIF9fSU8gdWludDMyX3QgQlJSOyAgICAgICAgICAvKiE8IEdQSU8gYml0IHJlc2V0IHJlZ2lzdGVyLCAgICAgICAgICAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDI4ICAgICAgKi8NCn0gR1BJT19UeXBlRGVmOw0KDQovKiogDQogICogQGJyaWVmIFN5c1RlbSBDb25maWd1cmF0aW9uDQogICovDQoNCnR5cGVkZWYgc3RydWN0DQp7DQogIF9fSU8gdWludDMyX3QgTUVNUk1QOyAgICAgICAvKiE8IFNZU0NGRyBtZW1vcnkgcmVtYXAgcmVnaXN0ZXIsICAgICAgICAgICAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDAwICAgICAgKi8NCiAgX19JTyB1aW50MzJfdCBQTUM7ICAgICAgICAgIC8qITwgU1lTQ0ZHIHBlcmlwaGVyYWwgbW9kZSBjb25maWd1cmF0aW9uIHJlZ2lzdGVyLCAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MDQgICAgICAqLw0KICBfX0lPIHVpbnQzMl90IEVYVElDUls0XTsgICAgLyohPCBTWVNDRkcgZXh0ZXJuYWwgaW50ZXJydXB0IGNvbmZpZ3VyYXRpb24gcmVnaXN0ZXJzLCBBZGRyZXNzIG9mZnNldDogMHgwOC0weDE0ICovDQp9IFNZU0NGR19UeXBlRGVmOw0KDQovKiogDQogICogQGJyaWVmIEludGVyLWludGVncmF0ZWQgQ2lyY3VpdCBJbnRlcmZhY2UNCiAgKi8NCg0KdHlwZWRlZiBzdHJ1Y3QNCnsNCiAgX19JTyB1aW50MzJfdCBDUjE7ICAgICAgICAgIC8qITwgSTJDIENvbnRyb2wgcmVnaXN0ZXIgMSwgICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MDAgKi8NCiAgX19JTyB1aW50MzJfdCBDUjI7ICAgICAgICAgIC8qITwgSTJDIENvbnRyb2wgcmVnaXN0ZXIgMiwgICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MDQgKi8NCiAgX19JTyB1aW50MzJfdCBPQVIxOyAgICAgICAgIC8qITwgSTJDIE93biBhZGRyZXNzIHJlZ2lzdGVyIDEsICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MDggKi8NCiAgX19JTyB1aW50MzJfdCBPQVIyOyAgICAgICAgIC8qITwgSTJDIE93biBhZGRyZXNzIHJlZ2lzdGVyIDIsICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MEMgKi8NCiAgX19JTyB1aW50MzJfdCBEUjsgICAgICAgICAgIC8qITwgSTJDIERhdGEgcmVnaXN0ZXIsICAgICAgICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MTAgKi8NCiAgX19JTyB1aW50MzJfdCBTUjE7ICAgICAgICAgIC8qITwgSTJDIFN0YXR1cyByZWdpc3RlciAxLCAgICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MTQgKi8NCiAgX19JTyB1aW50MzJfdCBTUjI7ICAgICAgICAgIC8qITwgSTJDIFN0YXR1cyByZWdpc3RlciAyLCAgICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MTggKi8NCiAgX19JTyB1aW50MzJfdCBDQ1I7ICAgICAgICAgIC8qITwgSTJDIENsb2NrIGNvbnRyb2wgcmVnaXN0ZXIsICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MUMgKi8NCiAgX19JTyB1aW50MzJfdCBUUklTRTsgICAgICAgIC8qITwgSTJDIFRSSVNFIHJlZ2lzdGVyLCAgICAgICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MjAgKi8NCn0gSTJDX1R5cGVEZWY7DQoNCi8qKiANCiAgKiBAYnJpZWYgSW5kZXBlbmRlbnQgV0FUQ0hET0cNCiAgKi8NCg0KdHlwZWRlZiBzdHJ1Y3QNCnsNCiAgX19JTyB1aW50MzJfdCBLUjsgICAgICAgICAgIC8qITwgS2V5IHJlZ2lzdGVyLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MDAgKi8NCiAgX19JTyB1aW50MzJfdCBQUjsgICAgICAgICAgIC8qITwgUHJlc2NhbGVyIHJlZ2lzdGVyLCAgICAgICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MDQgKi8NCiAgX19JTyB1aW50MzJfdCBSTFI7ICAgICAgICAgIC8qITwgUmVsb2FkIHJlZ2lzdGVyLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MDggKi8NCiAgX19JTyB1aW50MzJfdCBTUjsgICAgICAgICAgIC8qITwgU3RhdHVzIHJlZ2lzdGVyLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MEMgKi8NCn0gSVdER19UeXBlRGVmOw0KDQovKiogDQogICogQGJyaWVmIFBvd2VyIENvbnRyb2wNCiAgKi8NCg0KdHlwZWRlZiBzdHJ1Y3QNCnsNCiAgX19JTyB1aW50MzJfdCBDUjsgICAvKiE8IFBXUiBwb3dlciBjb250cm9sIHJlZ2lzdGVyLCAgICAgICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MDAgKi8NCiAgX19JTyB1aW50MzJfdCBDU1I7ICAvKiE8IFBXUiBwb3dlciBjb250cm9sL3N0YXR1cyByZWdpc3RlciwgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MDQgKi8NCn0gUFdSX1R5cGVEZWY7DQoNCi8qKiANCiAgKiBAYnJpZWYgUmVzZXQgYW5kIENsb2NrIENvbnRyb2wNCiAgKi8NCg0KdHlwZWRlZiBzdHJ1Y3QNCnsNCiAgX19JTyB1aW50MzJfdCBDUjsgICAgICAgICAgICAvKiE8IFJDQyBjbG9jayBjb250cm9sIHJlZ2lzdGVyLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MDAgKi8NCiAgX19JTyB1aW50MzJfdCBJQ1NDUjsgICAgICAgICAvKiE8IFJDQyBJbnRlcm5hbCBjbG9jayBzb3VyY2VzIGNhbGlicmF0aW9uIHJlZ2lzdGVyLCAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MDQgKi8NCiAgX19JTyB1aW50MzJfdCBDRkdSOyAgICAgICAgICAvKiE8IFJDQyBDbG9jayBjb25maWd1cmF0aW9uIHJlZ2lzdGVyLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MDggKi8NCiAgX19JTyB1aW50MzJfdCBDSVI7ICAgICAgICAgICAvKiE8IFJDQyBDbG9jayBpbnRlcnJ1cHQgcmVnaXN0ZXIsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MEMgKi8NCiAgX19JTyB1aW50MzJfdCBBSEJSU1RSOyAgICAgICAvKiE8IFJDQyBBSEIgcGVyaXBoZXJhbCByZXNldCByZWdpc3RlciwgICAgICAgICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MTAgKi8NCiAgX19JTyB1aW50MzJfdCBBUEIyUlNUUjsgICAgICAvKiE8IFJDQyBBUEIyIHBlcmlwaGVyYWwgcmVzZXQgcmVnaXN0ZXIsICAgICAgICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MTQgKi8NCiAgX19JTyB1aW50MzJfdCBBUEIxUlNUUjsgICAgICAvKiE8IFJDQyBBUEIxIHBlcmlwaGVyYWwgcmVzZXQgcmVnaXN0ZXIsICAgICAgICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MTggKi8NCiAgX19JTyB1aW50MzJfdCBBSEJFTlI7ICAgICAgICAvKiE8IFJDQyBBSEIgcGVyaXBoZXJhbCBjbG9jayBlbmFibGUgcmVnaXN0ZXIsICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MUMgKi8NCiAgX19JTyB1aW50MzJfdCBBUEIyRU5SOyAgICAgICAvKiE8IFJDQyBBUEIyIHBlcmlwaGVyYWwgY2xvY2sgZW5hYmxlIHJlZ2lzdGVyLCAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MjAgKi8NCiAgX19JTyB1aW50MzJfdCBBUEIxRU5SOyAgICAgICAvKiE8IFJDQyBBUEIxIHBlcmlwaGVyYWwgY2xvY2sgZW5hYmxlIHJlZ2lzdGVyLCAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MjQgKi8NCiAgX19JTyB1aW50MzJfdCBBSEJMUEVOUjsgICAgICAvKiE8IFJDQyBBSEIgcGVyaXBoZXJhbCBjbG9jayBlbmFibGUgaW4gbG93IHBvd2VyIG1vZGUgcmVnaXN0ZXIsICAgQWRkcmVzcyBvZmZzZXQ6IDB4MjggKi8NCiAgX19JTyB1aW50MzJfdCBBUEIyTFBFTlI7ICAgICAvKiE8IFJDQyBBUEIyIHBlcmlwaGVyYWwgY2xvY2sgZW5hYmxlIGluIGxvdyBwb3dlciBtb2RlIHJlZ2lzdGVyLCAgQWRkcmVzcyBvZmZzZXQ6IDB4MkMgKi8NCiAgX19JTyB1aW50MzJfdCBBUEIxTFBFTlI7ICAgICAvKiE8IFJDQyBBUEIxIHBlcmlwaGVyYWwgY2xvY2sgZW5hYmxlIGluIGxvdyBwb3dlciBtb2RlIHJlZ2lzdGVyLCAgQWRkcmVzcyBvZmZzZXQ6IDB4MzAgKi8NCiAgX19JTyB1aW50MzJfdCBDU1I7ICAgICAgICAgICAvKiE8IFJDQyBDb250cm9sL3N0YXR1cyByZWdpc3RlciwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MzQgKi8NCn0gUkNDX1R5cGVEZWY7DQoNCi8qKiANCiAgKiBAYnJpZWYgUm91dGluZyBJbnRlcmZhY2UgDQogICovDQoNCnR5cGVkZWYgc3RydWN0DQp7DQogIF9fSU8gdWludDMyX3QgSUNSOyAgICAgICAgLyohPCBSSSBpbnB1dCBjYXB0dXJlIHJlZ2lzdGVyLCAgICAgICAgICAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDAwICovDQogIF9fSU8gdWludDMyX3QgQVNDUjE7ICAgICAgLyohPCBSSSBhbmFsb2cgc3dpdGNoZXMgY29udHJvbCByZWdpc3RlciwgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MDQgKi8NCiAgX19JTyB1aW50MzJfdCBBU0NSMjsgICAgICAvKiE8IFJJIGFuYWxvZyBzd2l0Y2ggY29udHJvbCByZWdpc3RlciAyLCAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MDggKi8NCiAgX19JTyB1aW50MzJfdCBIWVNDUjE7ICAgICAvKiE8IFJJIGh5c3RlcmVzaXMgY29udHJvbCByZWdpc3RlciwgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MEMgKi8NCiAgX19JTyB1aW50MzJfdCBIWVNDUjI7ICAgICAvKiE8IFJJIEh5c3RlcmVzaXMgY29udHJvbCByZWdpc3RlciwgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgxMCAqLw0KICBfX0lPIHVpbnQzMl90IEhZU0NSMzsgICAgIC8qITwgUkkgSHlzdGVyZXNpcyBjb250cm9sIHJlZ2lzdGVyLCAgICAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDE0ICovDQogIF9fSU8gdWludDMyX3QgSFlTQ1I0OyAgICAgLyohPCBSSSBIeXN0ZXJlc2lzIGNvbnRyb2wgcmVnaXN0ZXIsICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MTggKi8NCiAgX19JTyB1aW50MzJfdCBBU01SMTsgICAgICAvKiE8IFJJIEFuYWxvZyBzd2l0Y2ggbW9kZSByZWdpc3RlciAxLCAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDFDICovDQogIF9fSU8gdWludDMyX3QgQ01SMTsgICAgICAgLyohPCBSSSBDaGFubmVsIG1hc2sgcmVnaXN0ZXIgMSwgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MjAgKi8NCiAgX19JTyB1aW50MzJfdCBDSUNSMTsgICAgICAvKiE8IFJJIENoYW5uZWwgSWRlbiBmb3IgY2FwdHVyZSByZWdpc3RlciAxLCAgQWRkcmVzcyBvZmZzZXQ6IDB4MjQgKi8NCiAgX19JTyB1aW50MzJfdCBBU01SMjsgICAgICAvKiE8IFJJIEFuYWxvZyBzd2l0Y2ggbW9kZSByZWdpc3RlciAyLCAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDI4ICovDQogIF9fSU8gdWludDMyX3QgQ01SMjsgICAgICAgLyohPCBSSSBDaGFubmVsIG1hc2sgcmVnaXN0ZXIgMiwgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MkMgKi8NCiAgX19JTyB1aW50MzJfdCBDSUNSMjsgICAgICAvKiE8IFJJIENoYW5uZWwgSWRlbiBmb3IgY2FwdHVyZSByZWdpc3RlciAyLCAgQWRkcmVzcyBvZmZzZXQ6IDB4MzAgKi8NCiAgX19JTyB1aW50MzJfdCBBU01SMzsgICAgICAvKiE8IFJJIEFuYWxvZyBzd2l0Y2ggbW9kZSByZWdpc3RlciAzLCAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDM0ICovDQogIF9fSU8gdWludDMyX3QgQ01SMzsgICAgICAgLyohPCBSSSBDaGFubmVsIG1hc2sgcmVnaXN0ZXIgMywgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MzggKi8NCiAgX19JTyB1aW50MzJfdCBDSUNSMzsgICAgICAvKiE8IFJJIENoYW5uZWwgSWRlbiBmb3IgY2FwdHVyZSByZWdpc3RlciAzLCAgQWRkcmVzcyBvZmZzZXQ6IDB4M0MgKi8NCiAgX19JTyB1aW50MzJfdCBBU01SNDsgICAgICAvKiE8IFJJIEFuYWxvZyBzd2l0Y2ggbW9kZSByZWdpc3RlciA0LCAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDQwICovDQogIF9fSU8gdWludDMyX3QgQ01SNDsgICAgICAgLyohPCBSSSBDaGFubmVsIG1hc2sgcmVnaXN0ZXIgNCwgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4NDQgKi8NCiAgX19JTyB1aW50MzJfdCBDSUNSNDsgICAgICAvKiE8IFJJIENoYW5uZWwgSWRlbiBmb3IgY2FwdHVyZSByZWdpc3RlciA0LCAgQWRkcmVzcyBvZmZzZXQ6IDB4NDggKi8NCiAgX19JTyB1aW50MzJfdCBBU01SNTsgICAgICAvKiE8IFJJIEFuYWxvZyBzd2l0Y2ggbW9kZSByZWdpc3RlciA1LCAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDRDICovDQogIF9fSU8gdWludDMyX3QgQ01SNTsgICAgICAgLyohPCBSSSBDaGFubmVsIG1hc2sgcmVnaXN0ZXIgNSwgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4NTAgKi8NCiAgX19JTyB1aW50MzJfdCBDSUNSNTsgICAgICAvKiE8IFJJIENoYW5uZWwgSWRlbiBmb3IgY2FwdHVyZSByZWdpc3RlciA1LCAgQWRkcmVzcyBvZmZzZXQ6IDB4NTQgKi8NCn0gUklfVHlwZURlZjsNCg0KLyoqIA0KICAqIEBicmllZiBSZWFsLVRpbWUgQ2xvY2sNCiAgKi8NCnR5cGVkZWYgc3RydWN0DQp7DQogIF9fSU8gdWludDMyX3QgVFI7ICAgICAgICAgLyohPCBSVEMgdGltZSByZWdpc3RlciwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDAwICovDQogIF9fSU8gdWludDMyX3QgRFI7ICAgICAgICAgLyohPCBSVEMgZGF0ZSByZWdpc3RlciwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDA0ICovDQogIF9fSU8gdWludDMyX3QgQ1I7ICAgICAgICAgLyohPCBSVEMgY29udHJvbCByZWdpc3RlciwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDA4ICovICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiAgX19JTyB1aW50MzJfdCBJU1I7ICAgICAgICAvKiE8IFJUQyBpbml0aWFsaXphdGlvbiBhbmQgc3RhdHVzIHJlZ2lzdGVyLCAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MEMgKi8NCiAgX19JTyB1aW50MzJfdCBQUkVSOyAgICAgICAvKiE8IFJUQyBwcmVzY2FsZXIgcmVnaXN0ZXIsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MTAgKi8NCiAgX19JTyB1aW50MzJfdCBXVVRSOyAgICAgICAvKiE8IFJUQyB3YWtldXAgdGltZXIgcmVnaXN0ZXIsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MTQgKi8NCiAgX19JTyB1aW50MzJfdCBDQUxJQlI7ICAgICAvKiE8IFJUQyBjYWxpYnJhdGlvbiByZWdpc3RlciwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MTggKi8NCiAgX19JTyB1aW50MzJfdCBBTFJNQVI7ICAgICAvKiE8IFJUQyBhbGFybSBBIHJlZ2lzdGVyLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MUMgKi8NCiAgX19JTyB1aW50MzJfdCBBTFJNQlI7ICAgICAvKiE8IFJUQyBhbGFybSBCIHJlZ2lzdGVyLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MjAgKi8NCiAgX19JTyB1aW50MzJfdCBXUFI7ICAgICAgICAvKiE8IFJUQyB3cml0ZSBwcm90ZWN0aW9uIHJlZ2lzdGVyLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MjQgKi8NCiAgX19JTyB1aW50MzJfdCBTU1I7ICAgICAgICAvKiE8IFJUQyBzdWIgc2Vjb25kIHJlZ2lzdGVyLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MjggKi8NCiAgX19JTyB1aW50MzJfdCBTSElGVFI7ICAgICAvKiE8IFJUQyBzaGlmdCBjb250cm9sIHJlZ2lzdGVyLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MkMgKi8NCiAgX19JTyB1aW50MzJfdCBUU1RSOyAgICAgICAvKiE8IFJUQyB0aW1lIHN0YW1wIHRpbWUgcmVnaXN0ZXIsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MzAgKi8NCiAgX19JTyB1aW50MzJfdCBUU0RSOyAgICAgICAvKiE8IFJUQyB0aW1lIHN0YW1wIGRhdGUgcmVnaXN0ZXIsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MzQgKi8NCiAgX19JTyB1aW50MzJfdCBUU1NTUjsgICAgICAvKiE8IFJUQyB0aW1lLXN0YW1wIHN1YiBzZWNvbmQgcmVnaXN0ZXIsICAgICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MzggKi8NCiAgX19JTyB1aW50MzJfdCBDQUxSOyAgICAgICAvKiE8IFJSVEMgY2FsaWJyYXRpb24gcmVnaXN0ZXIsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4M0MgKi8NCiAgX19JTyB1aW50MzJfdCBUQUZDUjsgICAgICAvKiE8IFJUQyB0YW1wZXIgYW5kIGFsdGVybmF0ZSBmdW5jdGlvbiBjb25maWd1cmF0aW9uIHJlZ2lzdGVyLCAgQWRkcmVzcyBvZmZzZXQ6IDB4NDAgKi8NCiAgX19JTyB1aW50MzJfdCBBTFJNQVNTUjsgICAvKiE8IFJUQyBhbGFybSBBIHN1YiBzZWNvbmQgcmVnaXN0ZXIsICAgICAgICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4NDQgKi8NCiAgX19JTyB1aW50MzJfdCBBTFJNQlNTUjsgICAvKiE8IFJUQyBhbGFybSBCIHN1YiBzZWNvbmQgcmVnaXN0ZXIsICAgICAgICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4NDggKi8NCiAgdWludDMyX3QgUkVTRVJWRUQ3OyAgICAgICAvKiE8IFJlc2VydmVkLCAweDRDICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8NCiAgX19JTyB1aW50MzJfdCBCS1AwUjsgICAgICAvKiE8IFJUQyBiYWNrdXAgcmVnaXN0ZXIgMCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4NTAgKi8NCiAgX19JTyB1aW50MzJfdCBCS1AxUjsgICAgICAvKiE8IFJUQyBiYWNrdXAgcmVnaXN0ZXIgMSwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4NTQgKi8NCiAgX19JTyB1aW50MzJfdCBCS1AyUjsgICAgICAvKiE8IFJUQyBiYWNrdXAgcmVnaXN0ZXIgMiwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4NTggKi8NCiAgX19JTyB1aW50MzJfdCBCS1AzUjsgICAgICAvKiE8IFJUQyBiYWNrdXAgcmVnaXN0ZXIgMywgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4NUMgKi8NCiAgX19JTyB1aW50MzJfdCBCS1A0UjsgICAgICAvKiE8IFJUQyBiYWNrdXAgcmVnaXN0ZXIgNCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4NjAgKi8NCiAgX19JTyB1aW50MzJfdCBCS1A1UjsgICAgICAvKiE8IFJUQyBiYWNrdXAgcmVnaXN0ZXIgNSwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4NjQgKi8NCiAgX19JTyB1aW50MzJfdCBCS1A2UjsgICAgICAvKiE8IFJUQyBiYWNrdXAgcmVnaXN0ZXIgNiwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4NjggKi8NCiAgX19JTyB1aW50MzJfdCBCS1A3UjsgICAgICAvKiE8IFJUQyBiYWNrdXAgcmVnaXN0ZXIgNywgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4NkMgKi8NCiAgX19JTyB1aW50MzJfdCBCS1A4UjsgICAgICAvKiE8IFJUQyBiYWNrdXAgcmVnaXN0ZXIgOCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4NzAgKi8NCiAgX19JTyB1aW50MzJfdCBCS1A5UjsgICAgICAvKiE8IFJUQyBiYWNrdXAgcmVnaXN0ZXIgOSwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4NzQgKi8NCiAgX19JTyB1aW50MzJfdCBCS1AxMFI7ICAgICAvKiE8IFJUQyBiYWNrdXAgcmVnaXN0ZXIgMTAsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4NzggKi8NCiAgX19JTyB1aW50MzJfdCBCS1AxMVI7ICAgICAvKiE8IFJUQyBiYWNrdXAgcmVnaXN0ZXIgMTEsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4N0MgKi8NCiAgX19JTyB1aW50MzJfdCBCS1AxMlI7ICAgICAvKiE8IFJUQyBiYWNrdXAgcmVnaXN0ZXIgMTIsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4ODAgKi8NCiAgX19JTyB1aW50MzJfdCBCS1AxM1I7ICAgICAvKiE8IFJUQyBiYWNrdXAgcmVnaXN0ZXIgMTMsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4ODQgKi8NCiAgX19JTyB1aW50MzJfdCBCS1AxNFI7ICAgICAvKiE8IFJUQyBiYWNrdXAgcmVnaXN0ZXIgMTQsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4ODggKi8NCiAgX19JTyB1aW50MzJfdCBCS1AxNVI7ICAgICAvKiE8IFJUQyBiYWNrdXAgcmVnaXN0ZXIgMTUsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4OEMgKi8NCiAgX19JTyB1aW50MzJfdCBCS1AxNlI7ICAgICAvKiE8IFJUQyBiYWNrdXAgcmVnaXN0ZXIgMTYsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4OTAgKi8NCiAgX19JTyB1aW50MzJfdCBCS1AxN1I7ICAgICAvKiE8IFJUQyBiYWNrdXAgcmVnaXN0ZXIgMTcsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4OTQgKi8NCiAgX19JTyB1aW50MzJfdCBCS1AxOFI7ICAgICAvKiE8IFJUQyBiYWNrdXAgcmVnaXN0ZXIgMTgsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4OTggKi8NCiAgX19JTyB1aW50MzJfdCBCS1AxOVI7ICAgICAvKiE8IFJUQyBiYWNrdXAgcmVnaXN0ZXIgMTksICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4OUMgKi8NCiAgX19JTyB1aW50MzJfdCBCS1AyMFI7ICAgICAvKiE8IFJUQyBiYWNrdXAgcmVnaXN0ZXIgMjAsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4QTAgKi8NCiAgX19JTyB1aW50MzJfdCBCS1AyMVI7ICAgICAvKiE8IFJUQyBiYWNrdXAgcmVnaXN0ZXIgMjEsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4QTQgKi8NCiAgX19JTyB1aW50MzJfdCBCS1AyMlI7ICAgICAvKiE8IFJUQyBiYWNrdXAgcmVnaXN0ZXIgMjIsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4QTggKi8NCiAgX19JTyB1aW50MzJfdCBCS1AyM1I7ICAgICAvKiE8IFJUQyBiYWNrdXAgcmVnaXN0ZXIgMjMsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4QUMgKi8NCiAgX19JTyB1aW50MzJfdCBCS1AyNFI7ICAgICAvKiE8IFJUQyBiYWNrdXAgcmVnaXN0ZXIgMjQsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4QjAgKi8NCiAgX19JTyB1aW50MzJfdCBCS1AyNVI7ICAgICAvKiE8IFJUQyBiYWNrdXAgcmVnaXN0ZXIgMjUsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4QjQgKi8NCiAgX19JTyB1aW50MzJfdCBCS1AyNlI7ICAgICAvKiE8IFJUQyBiYWNrdXAgcmVnaXN0ZXIgMjYsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4QjggKi8NCiAgX19JTyB1aW50MzJfdCBCS1AyN1I7ICAgICAvKiE8IFJUQyBiYWNrdXAgcmVnaXN0ZXIgMjcsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4QkMgKi8NCiAgX19JTyB1aW50MzJfdCBCS1AyOFI7ICAgICAvKiE8IFJUQyBiYWNrdXAgcmVnaXN0ZXIgMjgsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4QzAgKi8NCiAgX19JTyB1aW50MzJfdCBCS1AyOVI7ICAgICAvKiE8IFJUQyBiYWNrdXAgcmVnaXN0ZXIgMjksICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4QzQgKi8NCiAgX19JTyB1aW50MzJfdCBCS1AzMFI7ICAgICAvKiE8IFJUQyBiYWNrdXAgcmVnaXN0ZXIgMzAsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4QzggKi8NCiAgX19JTyB1aW50MzJfdCBCS1AzMVI7ICAgICAvKiE8IFJUQyBiYWNrdXAgcmVnaXN0ZXIgMzEsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4Q0MgKi8NCn0gUlRDX1R5cGVEZWY7DQoNCi8qKiANCiAgKiBAYnJpZWYgU2VyaWFsIFBlcmlwaGVyYWwgSW50ZXJmYWNlDQogICovDQoNCnR5cGVkZWYgc3RydWN0DQp7DQogIF9fSU8gdWludDMyX3QgQ1IxOyAgICAgICAgLyohPCBTUEkgQ29udHJvbCByZWdpc3RlciAxIChub3QgdXNlZCBpbiBJMlMgbW9kZSksICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MDAgKi8NCiAgX19JTyB1aW50MzJfdCBDUjI7ICAgICAgICAvKiE8IFNQSSBDb250cm9sIHJlZ2lzdGVyIDIsICAgICAgICAgICAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgwNCAqLw0KICBfX0lPIHVpbnQzMl90IFNSOyAgICAgICAgIC8qITwgU1BJIFN0YXR1cyByZWdpc3RlciwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDA4ICovDQogIF9fSU8gdWludDMyX3QgRFI7ICAgICAgICAgLyohPCBTUEkgZGF0YSByZWdpc3RlciwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MEMgKi8NCiAgX19JTyB1aW50MzJfdCBDUkNQUjsgICAgICAvKiE8IFNQSSBDUkMgcG9seW5vbWlhbCByZWdpc3RlciAobm90IHVzZWQgaW4gSTJTIG1vZGUpLCBBZGRyZXNzIG9mZnNldDogMHgxMCAqLw0KICBfX0lPIHVpbnQzMl90IFJYQ1JDUjsgICAgIC8qITwgU1BJIFJ4IENSQyByZWdpc3RlciAobm90IHVzZWQgaW4gSTJTIG1vZGUpLCAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDE0ICovDQogIF9fSU8gdWludDMyX3QgVFhDUkNSOyAgICAgLyohPCBTUEkgVHggQ1JDIHJlZ2lzdGVyIChub3QgdXNlZCBpbiBJMlMgbW9kZSksICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MTggKi8NCiAgX19JTyB1aW50MzJfdCBJMlNDRkdSOyAgICAvKiE8IFNQSV9JMlMgY29uZmlndXJhdGlvbiByZWdpc3RlciwgICAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgxQyAqLw0KICBfX0lPIHVpbnQzMl90IEkyU1BSOyAgICAgIC8qITwgU1BJX0kyUyBwcmVzY2FsZXIgcmVnaXN0ZXIsICAgICAgICAgICAgICAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDIwICovDQp9IFNQSV9UeXBlRGVmOw0KDQovKiogDQogICogQGJyaWVmIFRJTQ0KICAqLw0KdHlwZWRlZiBzdHJ1Y3QNCnsNCiAgX19JTyB1aW50MzJfdCBDUjE7ICAgICAgICAgIC8qITwgVElNIGNvbnRyb2wgcmVnaXN0ZXIgMSwgICAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDAwICovDQogIF9fSU8gdWludDMyX3QgQ1IyOyAgICAgICAgICAvKiE8IFRJTSBjb250cm9sIHJlZ2lzdGVyIDIsICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgwNCAqLw0KICBfX0lPIHVpbnQzMl90IFNNQ1I7ICAgICAgICAgLyohPCBUSU0gc2xhdmUgTW9kZSBDb250cm9sIHJlZ2lzdGVyLCAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MDggKi8NCiAgX19JTyB1aW50MzJfdCBESUVSOyAgICAgICAgIC8qITwgVElNIERNQS9pbnRlcnJ1cHQgZW5hYmxlIHJlZ2lzdGVyLCAgIEFkZHJlc3Mgb2Zmc2V0OiAweDBDICovDQogIF9fSU8gdWludDMyX3QgU1I7ICAgICAgICAgICAvKiE8IFRJTSBzdGF0dXMgcmVnaXN0ZXIsICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgxMCAqLw0KICBfX0lPIHVpbnQzMl90IEVHUjsgICAgICAgICAgLyohPCBUSU0gZXZlbnQgZ2VuZXJhdGlvbiByZWdpc3RlciwgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MTQgKi8NCiAgX19JTyB1aW50MzJfdCBDQ01SMTsgICAgICAgIC8qITwgVElNIGNhcHR1cmUvY29tcGFyZSBtb2RlIHJlZ2lzdGVyIDEsIEFkZHJlc3Mgb2Zmc2V0OiAweDE4ICovDQogIF9fSU8gdWludDMyX3QgQ0NNUjI7ICAgICAgICAvKiE8IFRJTSBjYXB0dXJlL2NvbXBhcmUgbW9kZSByZWdpc3RlciAyLCBBZGRyZXNzIG9mZnNldDogMHgxQyAqLw0KICBfX0lPIHVpbnQzMl90IENDRVI7ICAgICAgICAgLyohPCBUSU0gY2FwdHVyZS9jb21wYXJlIGVuYWJsZSByZWdpc3RlciwgQWRkcmVzcyBvZmZzZXQ6IDB4MjAgKi8NCiAgX19JTyB1aW50MzJfdCBDTlQ7ICAgICAgICAgIC8qITwgVElNIGNvdW50ZXIgcmVnaXN0ZXIsICAgICAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDI0ICovDQogIF9fSU8gdWludDMyX3QgUFNDOyAgICAgICAgICAvKiE8IFRJTSBwcmVzY2FsZXIgcmVnaXN0ZXIsICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgyOCAqLw0KICBfX0lPIHVpbnQzMl90IEFSUjsgICAgICAgICAgLyohPCBUSU0gYXV0by1yZWxvYWQgcmVnaXN0ZXIsICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MkMgKi8NCiAgdWludDMyX3QgICAgICBSRVNFUlZFRDEyOyAgIC8qITwgUmVzZXJ2ZWQsIDB4MzAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovICAgIA0KICBfX0lPIHVpbnQzMl90IENDUjE7ICAgICAgICAgLyohPCBUSU0gY2FwdHVyZS9jb21wYXJlIHJlZ2lzdGVyIDEsICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MzQgKi8gICAgDQogIF9fSU8gdWludDMyX3QgQ0NSMjsgICAgICAgICAvKiE8IFRJTSBjYXB0dXJlL2NvbXBhcmUgcmVnaXN0ZXIgMiwgICAgICBBZGRyZXNzIG9mZnNldDogMHgzOCAqLyAgICANCiAgX19JTyB1aW50MzJfdCBDQ1IzOyAgICAgICAgIC8qITwgVElNIGNhcHR1cmUvY29tcGFyZSByZWdpc3RlciAzLCAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDNDICovDQogIF9fSU8gdWludDMyX3QgQ0NSNDsgICAgICAgICAvKiE8IFRJTSBjYXB0dXJlL2NvbXBhcmUgcmVnaXN0ZXIgNCwgICAgICBBZGRyZXNzIG9mZnNldDogMHg0MCAqLw0KICB1aW50MzJfdCAgICAgIFJFU0VSVkVEMTc7ICAgLyohPCBSZXNlcnZlZCwgMHg0NCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8gDQogIF9fSU8gdWludDMyX3QgRENSOyAgICAgICAgICAvKiE8IFRJTSBETUEgY29udHJvbCByZWdpc3RlciwgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHg0OCAqLw0KICBfX0lPIHVpbnQzMl90IERNQVI7ICAgICAgICAgLyohPCBUSU0gRE1BIGFkZHJlc3MgZm9yIGZ1bGwgdHJhbnNmZXIsICAgQWRkcmVzcyBvZmZzZXQ6IDB4NEMgKi8NCiAgX19JTyB1aW50MzJfdCBPUjsgICAgICAgICAgIC8qITwgVElNIG9wdGlvbiByZWdpc3RlciwgICAgICAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDUwICovDQp9IFRJTV9UeXBlRGVmOw0KLyoqIA0KICAqIEBicmllZiBVbml2ZXJzYWwgU3luY2hyb25vdXMgQXN5bmNocm9ub3VzIFJlY2VpdmVyIFRyYW5zbWl0dGVyDQogICovDQogDQp0eXBlZGVmIHN0cnVjdA0Kew0KICBfX0lPIHVpbnQzMl90IFNSOyAgICAgICAgIC8qITwgVVNBUlQgU3RhdHVzIHJlZ2lzdGVyLCAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgwMCAqLw0KICBfX0lPIHVpbnQzMl90IERSOyAgICAgICAgIC8qITwgVVNBUlQgRGF0YSByZWdpc3RlciwgICAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgwNCAqLw0KICBfX0lPIHVpbnQzMl90IEJSUjsgICAgICAgIC8qITwgVVNBUlQgQmF1ZCByYXRlIHJlZ2lzdGVyLCAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgwOCAqLw0KICBfX0lPIHVpbnQzMl90IENSMTsgICAgICAgIC8qITwgVVNBUlQgQ29udHJvbCByZWdpc3RlciAxLCAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgwQyAqLw0KICBfX0lPIHVpbnQzMl90IENSMjsgICAgICAgIC8qITwgVVNBUlQgQ29udHJvbCByZWdpc3RlciAyLCAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgxMCAqLw0KICBfX0lPIHVpbnQzMl90IENSMzsgICAgICAgIC8qITwgVVNBUlQgQ29udHJvbCByZWdpc3RlciAzLCAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgxNCAqLw0KICBfX0lPIHVpbnQzMl90IEdUUFI7ICAgICAgIC8qITwgVVNBUlQgR3VhcmQgdGltZSBhbmQgcHJlc2NhbGVyIHJlZ2lzdGVyLCBBZGRyZXNzIG9mZnNldDogMHgxOCAqLw0KfSBVU0FSVF9UeXBlRGVmOw0KDQovKiogDQogICogQGJyaWVmIFVuaXZlcnNhbCBTZXJpYWwgQnVzIEZ1bGwgU3BlZWQgRGV2aWNlDQogICovDQogIA0KdHlwZWRlZiBzdHJ1Y3QNCnsNCiAgX19JTyB1aW50MTZfdCBFUDBSOyAgICAgICAgICAgIC8qITwgVVNCIEVuZHBvaW50IDAgcmVnaXN0ZXIsICAgICAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDAwICovIA0KICBfX0lPIHVpbnQxNl90IFJFU0VSVkVEMDsgICAgICAgLyohPCBSZXNlcnZlZCAqLyAgICAgDQogIF9fSU8gdWludDE2X3QgRVAxUjsgICAgICAgICAgICAvKiE8IFVTQiBFbmRwb2ludCAxIHJlZ2lzdGVyLCAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgwNCAqLw0KICBfX0lPIHVpbnQxNl90IFJFU0VSVkVEMTsgICAgICAgLyohPCBSZXNlcnZlZCAqLyAgICAgICANCiAgX19JTyB1aW50MTZfdCBFUDJSOyAgICAgICAgICAgIC8qITwgVVNCIEVuZHBvaW50IDIgcmVnaXN0ZXIsICAgICAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDA4ICovDQogIF9fSU8gdWludDE2X3QgUkVTRVJWRUQyOyAgICAgICAvKiE8IFJlc2VydmVkICovICAgICAgIA0KICBfX0lPIHVpbnQxNl90IEVQM1I7ICAgICAgICAgICAgLyohPCBVU0IgRW5kcG9pbnQgMyByZWdpc3RlciwgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MEMgKi8gDQogIF9fSU8gdWludDE2X3QgUkVTRVJWRUQzOyAgICAgICAvKiE8IFJlc2VydmVkICovICAgICAgIA0KICBfX0lPIHVpbnQxNl90IEVQNFI7ICAgICAgICAgICAgLyohPCBVU0IgRW5kcG9pbnQgNCByZWdpc3RlciwgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MTAgKi8NCiAgX19JTyB1aW50MTZfdCBSRVNFUlZFRDQ7ICAgICAgIC8qITwgUmVzZXJ2ZWQgKi8gICAgICAgDQogIF9fSU8gdWludDE2X3QgRVA1UjsgICAgICAgICAgICAvKiE8IFVTQiBFbmRwb2ludCA1IHJlZ2lzdGVyLCAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgxNCAqLw0KICBfX0lPIHVpbnQxNl90IFJFU0VSVkVENTsgICAgICAgLyohPCBSZXNlcnZlZCAqLyAgICAgICANCiAgX19JTyB1aW50MTZfdCBFUDZSOyAgICAgICAgICAgIC8qITwgVVNCIEVuZHBvaW50IDYgcmVnaXN0ZXIsICAgICAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDE4ICovDQogIF9fSU8gdWludDE2X3QgUkVTRVJWRUQ2OyAgICAgICAvKiE8IFJlc2VydmVkICovICAgICAgIA0KICBfX0lPIHVpbnQxNl90IEVQN1I7ICAgICAgICAgICAgLyohPCBVU0IgRW5kcG9pbnQgNyByZWdpc3RlciwgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MUMgKi8NCiAgX19JTyB1aW50MTZfdCBSRVNFUlZFRDdbMTddOyAgIC8qITwgUmVzZXJ2ZWQgKi8gICAgIA0KICBfX0lPIHVpbnQxNl90IENOVFI7ICAgICAgICAgICAgLyohPCBDb250cm9sIHJlZ2lzdGVyLCAgICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4NDAgKi8NCiAgX19JTyB1aW50MTZfdCBSRVNFUlZFRDg7ICAgICAgIC8qITwgUmVzZXJ2ZWQgKi8gICAgICAgDQogIF9fSU8gdWludDE2X3QgSVNUUjsgICAgICAgICAgICAvKiE8IEludGVycnVwdCBzdGF0dXMgcmVnaXN0ZXIsICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHg0NCAqLw0KICBfX0lPIHVpbnQxNl90IFJFU0VSVkVEOTsgICAgICAgLyohPCBSZXNlcnZlZCAqLyAgICAgICANCiAgX19JTyB1aW50MTZfdCBGTlI7ICAgICAgICAgICAgIC8qITwgRnJhbWUgbnVtYmVyIHJlZ2lzdGVyLCAgICAgICAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDQ4ICovDQogIF9fSU8gdWludDE2X3QgUkVTRVJWRURBOyAgICAgICAvKiE8IFJlc2VydmVkICovICAgICAgIA0KICBfX0lPIHVpbnQxNl90IERBRERSOyAgICAgICAgICAgLyohPCBEZXZpY2UgYWRkcmVzcyByZWdpc3RlciwgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4NEMgKi8NCiAgX19JTyB1aW50MTZfdCBSRVNFUlZFREI7ICAgICAgIC8qITwgUmVzZXJ2ZWQgKi8gICAgICAgDQogIF9fSU8gdWludDE2X3QgQlRBQkxFOyAgICAgICAgICAvKiE8IEJ1ZmZlciBUYWJsZSBhZGRyZXNzIHJlZ2lzdGVyLCAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHg1MCAqLw0KICBfX0lPIHVpbnQxNl90IFJFU0VSVkVEQzsgICAgICAgLyohPCBSZXNlcnZlZCAqLyAgICAgICANCn0gVVNCX1R5cGVEZWY7DQoNCi8qKiANCiAgKiBAYnJpZWYgV2luZG93IFdBVENIRE9HDQogICovDQp0eXBlZGVmIHN0cnVjdA0Kew0KICBfX0lPIHVpbnQzMl90IENSOyAgIC8qITwgV1dERyBDb250cm9sIHJlZ2lzdGVyLCAgICAgICBBZGRyZXNzIG9mZnNldDogMHgwMCAqLw0KICBfX0lPIHVpbnQzMl90IENGUjsgIC8qITwgV1dERyBDb25maWd1cmF0aW9uIHJlZ2lzdGVyLCBBZGRyZXNzIG9mZnNldDogMHgwNCAqLw0KICBfX0lPIHVpbnQzMl90IFNSOyAgIC8qITwgV1dERyBTdGF0dXMgcmVnaXN0ZXIsICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgwOCAqLw0KfSBXV0RHX1R5cGVEZWY7DQoNCi8qKiANCiAgKiBAYnJpZWYgVW5pdmVyc2FsIFNlcmlhbCBCdXMgRnVsbCBTcGVlZCBEZXZpY2UNCiAgKi8NCi8qKiANCiAgKiBAfQ0KICAqLw0KICANCi8qKiBAYWRkdG9ncm91cCBQZXJpcGhlcmFsX21lbW9yeV9tYXANCiAgKiBAew0KICAqLw0KDQojZGVmaW5lIEZMQVNIX0JBU0UgICAgICAgICAgICAoKHVpbnQzMl90KTB4MDgwMDAwMDBVKSAgICAgICAgICAgICAgLyohPCBGTEFTSCBiYXNlIGFkZHJlc3MgaW4gdGhlIGFsaWFzIHJlZ2lvbiAqLw0KI2RlZmluZSBGTEFTSF9FRVBST01fQkFTRSAgICAgKCh1aW50MzJfdCkoRkxBU0hfQkFTRSArIDB4ODAwMDBVKSkgIC8qITwgRkxBU0ggRUVQUk9NIGJhc2UgYWRkcmVzcyBpbiB0aGUgYWxpYXMgcmVnaW9uICovDQojZGVmaW5lIFNSQU1fQkFTRSAgICAgICAgICAgICAoKHVpbnQzMl90KTB4MjAwMDAwMDBVKSAgICAgICAgICAgICAgLyohPCBTUkFNIGJhc2UgYWRkcmVzcyBpbiB0aGUgYWxpYXMgcmVnaW9uICovDQojZGVmaW5lIFBFUklQSF9CQVNFICAgICAgICAgICAoKHVpbnQzMl90KTB4NDAwMDAwMDBVKSAgICAgICAgICAgICAgLyohPCBQZXJpcGhlcmFsIGJhc2UgYWRkcmVzcyBpbiB0aGUgYWxpYXMgcmVnaW9uICovDQojZGVmaW5lIFNSQU1fQkJfQkFTRSAgICAgICAgICAoKHVpbnQzMl90KTB4MjIwMDAwMDBVKSAgICAgICAgICAgICAgLyohPCBTUkFNIGJhc2UgYWRkcmVzcyBpbiB0aGUgYml0LWJhbmQgcmVnaW9uICovDQojZGVmaW5lIFBFUklQSF9CQl9CQVNFICAgICAgICAoKHVpbnQzMl90KTB4NDIwMDAwMDBVKSAgICAgICAgICAgICAgLyohPCBQZXJpcGhlcmFsIGJhc2UgYWRkcmVzcyBpbiB0aGUgYml0LWJhbmQgcmVnaW9uICovDQojZGVmaW5lIEZMQVNIX0JBTksyX0JBU0UgICAgICAoKHVpbnQzMl90KTB4MDgwNDAwMDBVKSAgICAgICAgICAgICAgLyohPCBGTEFTSCBCQU5LMiBiYXNlIGFkZHJlc3MgaW4gdGhlIGFsaWFzIHJlZ2lvbiAqLw0KI2RlZmluZSBGTEFTSF9CQU5LMV9FTkQgICAgICAgKCh1aW50MzJfdCkweDA4MDJGRkZGVSkgICAgICAgICAgICAgIC8qITwgUHJvZ3JhbSBlbmQgRkxBU0ggQkFOSzEgYWRkcmVzcyAgKi8NCiNkZWZpbmUgRkxBU0hfQkFOSzJfRU5EICAgICAgICgodWludDMyX3QpMHgwODA2RkZGRlUpICAgICAgICAgICAgICAvKiE8IFByb2dyYW0gZW5kIEZMQVNIIEJBTksyIGFkZHJlc3MgICovDQojZGVmaW5lIEZMQVNIX0VFUFJPTV9FTkQgICAgICAoKHVpbnQzMl90KTB4MDgwODNGRkZVKSAgICAgICAgICAgICAgLyohPCBGTEFTSCBFRVBST00gZW5kIGFkZHJlc3MgKDE2S0IpICovDQoNCi8qITwgUGVyaXBoZXJhbCBtZW1vcnkgbWFwICovDQojZGVmaW5lIEFQQjFQRVJJUEhfQkFTRSAgICAgICBQRVJJUEhfQkFTRQ0KI2RlZmluZSBBUEIyUEVSSVBIX0JBU0UgICAgICAgKFBFUklQSF9CQVNFICsgMHgwMDAxMDAwMFUpDQojZGVmaW5lIEFIQlBFUklQSF9CQVNFICAgICAgICAoUEVSSVBIX0JBU0UgKyAweDAwMDIwMDAwVSkNCg0KLyohPCBBUEIxIHBlcmlwaGVyYWxzICovDQojZGVmaW5lIFRJTTJfQkFTRSAgICAgICAgICAgICAoQVBCMVBFUklQSF9CQVNFICsgMHgwMDAwMDAwMFUpDQojZGVmaW5lIFRJTTNfQkFTRSAgICAgICAgICAgICAoQVBCMVBFUklQSF9CQVNFICsgMHgwMDAwMDQwMFUpDQojZGVmaW5lIFRJTTRfQkFTRSAgICAgICAgICAgICAoQVBCMVBFUklQSF9CQVNFICsgMHgwMDAwMDgwMFUpDQojZGVmaW5lIFRJTTVfQkFTRSAgICAgICAgICAgICAoQVBCMVBFUklQSF9CQVNFICsgMHgwMDAwMEMwMFUpDQojZGVmaW5lIFRJTTZfQkFTRSAgICAgICAgICAgICAoQVBCMVBFUklQSF9CQVNFICsgMHgwMDAwMTAwMFUpDQojZGVmaW5lIFRJTTdfQkFTRSAgICAgICAgICAgICAoQVBCMVBFUklQSF9CQVNFICsgMHgwMDAwMTQwMFUpDQojZGVmaW5lIFJUQ19CQVNFICAgICAgICAgICAgICAoQVBCMVBFUklQSF9CQVNFICsgMHgwMDAwMjgwMFUpDQojZGVmaW5lIFdXREdfQkFTRSAgICAgICAgICAgICAoQVBCMVBFUklQSF9CQVNFICsgMHgwMDAwMkMwMFUpDQojZGVmaW5lIElXREdfQkFTRSAgICAgICAgICAgICAoQVBCMVBFUklQSF9CQVNFICsgMHgwMDAwMzAwMFUpDQojZGVmaW5lIFNQSTJfQkFTRSAgICAgICAgICAgICAoQVBCMVBFUklQSF9CQVNFICsgMHgwMDAwMzgwMFUpDQojZGVmaW5lIFNQSTNfQkFTRSAgICAgICAgICAgICAoQVBCMVBFUklQSF9CQVNFICsgMHgwMDAwM0MwMFUpDQojZGVmaW5lIFVTQVJUMl9CQVNFICAgICAgICAgICAoQVBCMVBFUklQSF9CQVNFICsgMHgwMDAwNDQwMFUpDQojZGVmaW5lIFVTQVJUM19CQVNFICAgICAgICAgICAoQVBCMVBFUklQSF9CQVNFICsgMHgwMDAwNDgwMFUpDQojZGVmaW5lIFVBUlQ0X0JBU0UgICAgICAgICAgICAoQVBCMVBFUklQSF9CQVNFICsgMHgwMDAwNEMwMFUpDQojZGVmaW5lIFVBUlQ1X0JBU0UgICAgICAgICAgICAoQVBCMVBFUklQSF9CQVNFICsgMHgwMDAwNTAwMFUpDQojZGVmaW5lIEkyQzFfQkFTRSAgICAgICAgICAgICAoQVBCMVBFUklQSF9CQVNFICsgMHgwMDAwNTQwMFUpDQojZGVmaW5lIEkyQzJfQkFTRSAgICAgICAgICAgICAoQVBCMVBFUklQSF9CQVNFICsgMHgwMDAwNTgwMFUpDQoNCi8qIFVTQiBkZXZpY2UgRlMgKi8NCiNkZWZpbmUgVVNCX0JBU0UgICAgICAgICAgICAgIChBUEIxUEVSSVBIX0JBU0UgKyAweDAwMDA1QzAwVSkgLyohPCBVU0JfSVAgUGVyaXBoZXJhbCBSZWdpc3RlcnMgYmFzZSBhZGRyZXNzICovDQojZGVmaW5lIFVTQl9QTUFBRERSICAgICAgICAgICAoQVBCMVBFUklQSF9CQVNFICsgMHgwMDAwNjAwMFUpIC8qITwgVVNCX0lQIFBhY2tldCBNZW1vcnkgQXJlYSBiYXNlIGFkZHJlc3MgKi8NCg0KLyogVVNCIGRldmljZSBGUyBTUkFNICovDQojZGVmaW5lIFBXUl9CQVNFICAgICAgICAgICAgICAoQVBCMVBFUklQSF9CQVNFICsgMHgwMDAwNzAwMFUpDQojZGVmaW5lIERBQ19CQVNFICAgICAgICAgICAgICAoQVBCMVBFUklQSF9CQVNFICsgMHgwMDAwNzQwMFUpDQojZGVmaW5lIENPTVBfQkFTRSAgICAgICAgICAgICAoQVBCMVBFUklQSF9CQVNFICsgMHgwMDAwN0MwMFUpDQojZGVmaW5lIFJJX0JBU0UgICAgICAgICAgICAgICAoQVBCMVBFUklQSF9CQVNFICsgMHgwMDAwN0MwNFUpDQojZGVmaW5lIE9QQU1QX0JBU0UgICAgICAgICAgICAoQVBCMVBFUklQSF9CQVNFICsgMHgwMDAwN0M1Q1UpDQoNCi8qITwgQVBCMiBwZXJpcGhlcmFscyAqLw0KI2RlZmluZSBTWVNDRkdfQkFTRSAgICAgICAgICAgKEFQQjJQRVJJUEhfQkFTRSArIDB4MDAwMDAwMDBVKQ0KI2RlZmluZSBFWFRJX0JBU0UgICAgICAgICAgICAgKEFQQjJQRVJJUEhfQkFTRSArIDB4MDAwMDA0MDBVKQ0KI2RlZmluZSBUSU05X0JBU0UgICAgICAgICAgICAgKEFQQjJQRVJJUEhfQkFTRSArIDB4MDAwMDA4MDBVKQ0KI2RlZmluZSBUSU0xMF9CQVNFICAgICAgICAgICAgKEFQQjJQRVJJUEhfQkFTRSArIDB4MDAwMDBDMDBVKQ0KI2RlZmluZSBUSU0xMV9CQVNFICAgICAgICAgICAgKEFQQjJQRVJJUEhfQkFTRSArIDB4MDAwMDEwMDBVKQ0KI2RlZmluZSBBREMxX0JBU0UgICAgICAgICAgICAgKEFQQjJQRVJJUEhfQkFTRSArIDB4MDAwMDI0MDBVKQ0KI2RlZmluZSBBRENfQkFTRSAgICAgICAgICAgICAgKEFQQjJQRVJJUEhfQkFTRSArIDB4MDAwMDI3MDBVKQ0KI2RlZmluZSBTUEkxX0JBU0UgICAgICAgICAgICAgKEFQQjJQRVJJUEhfQkFTRSArIDB4MDAwMDMwMDBVKQ0KI2RlZmluZSBVU0FSVDFfQkFTRSAgICAgICAgICAgKEFQQjJQRVJJUEhfQkFTRSArIDB4MDAwMDM4MDBVKQ0KDQovKiE8IEFIQiBwZXJpcGhlcmFscyAqLw0KI2RlZmluZSBHUElPQV9CQVNFICAgICAgICAgICAgKEFIQlBFUklQSF9CQVNFICsgMHgwMDAwMDAwMFUpDQojZGVmaW5lIEdQSU9CX0JBU0UgICAgICAgICAgICAoQUhCUEVSSVBIX0JBU0UgKyAweDAwMDAwNDAwVSkNCiNkZWZpbmUgR1BJT0NfQkFTRSAgICAgICAgICAgIChBSEJQRVJJUEhfQkFTRSArIDB4MDAwMDA4MDBVKQ0KI2RlZmluZSBHUElPRF9CQVNFICAgICAgICAgICAgKEFIQlBFUklQSF9CQVNFICsgMHgwMDAwMEMwMFUpDQojZGVmaW5lIEdQSU9FX0JBU0UgICAgICAgICAgICAoQUhCUEVSSVBIX0JBU0UgKyAweDAwMDAxMDAwVSkNCiNkZWZpbmUgR1BJT0hfQkFTRSAgICAgICAgICAgIChBSEJQRVJJUEhfQkFTRSArIDB4MDAwMDE0MDBVKQ0KI2RlZmluZSBHUElPRl9CQVNFICAgICAgICAgICAgKEFIQlBFUklQSF9CQVNFICsgMHgwMDAwMTgwMFUpDQojZGVmaW5lIEdQSU9HX0JBU0UgICAgICAgICAgICAoQUhCUEVSSVBIX0JBU0UgKyAweDAwMDAxQzAwVSkNCiNkZWZpbmUgQ1JDX0JBU0UgICAgICAgICAgICAgIChBSEJQRVJJUEhfQkFTRSArIDB4MDAwMDMwMDBVKQ0KI2RlZmluZSBSQ0NfQkFTRSAgICAgICAgICAgICAgKEFIQlBFUklQSF9CQVNFICsgMHgwMDAwMzgwMFUpDQojZGVmaW5lIEZMQVNIX1JfQkFTRSAgICAgICAgICAoQUhCUEVSSVBIX0JBU0UgKyAweDAwMDAzQzAwVSkgLyohPCBGTEFTSCByZWdpc3RlcnMgYmFzZSBhZGRyZXNzICovDQojZGVmaW5lIE9CX0JBU0UgICAgICAgICAgICAgICAoKHVpbnQzMl90KTB4MUZGODAwMDBVKSAgICAgICAgLyohPCBGTEFTSCBPcHRpb24gQnl0ZXMgYmFzZSBhZGRyZXNzICovDQojZGVmaW5lIEZMQVNIU0laRV9CQVNFICAgICAgICAoKHVpbnQzMl90KTB4MUZGODAwQ0NVKSAgICAgICAgLyohPCBGTEFTSCBTaXplIHJlZ2lzdGVyIGJhc2UgYWRkcmVzcyBmb3IgQ2F0LjMsIENhdC40LCBDYXQuNSBhbmQgQ2F0LjYgZGV2aWNlcyAqLw0KI2RlZmluZSBVSURfQkFTRSAgICAgICAgICAgICAgKCh1aW50MzJfdCkweDFGRjgwMEQwVSkgICAgICAgIC8qITwgVW5pcXVlIGRldmljZSBJRCByZWdpc3RlciBiYXNlIGFkZHJlc3MgZm9yIENhdC4zLCBDYXQuNCwgQ2F0LjUgYW5kIENhdC42IGRldmljZXMgKi8NCiNkZWZpbmUgRE1BMV9CQVNFICAgICAgICAgICAgIChBSEJQRVJJUEhfQkFTRSArIDB4MDAwMDYwMDBVKQ0KI2RlZmluZSBETUExX0NoYW5uZWwxX0JBU0UgICAgKERNQTFfQkFTRSArIDB4MDAwMDAwMDhVKQ0KI2RlZmluZSBETUExX0NoYW5uZWwyX0JBU0UgICAgKERNQTFfQkFTRSArIDB4MDAwMDAwMUNVKQ0KI2RlZmluZSBETUExX0NoYW5uZWwzX0JBU0UgICAgKERNQTFfQkFTRSArIDB4MDAwMDAwMzBVKQ0KI2RlZmluZSBETUExX0NoYW5uZWw0X0JBU0UgICAgKERNQTFfQkFTRSArIDB4MDAwMDAwNDRVKQ0KI2RlZmluZSBETUExX0NoYW5uZWw1X0JBU0UgICAgKERNQTFfQkFTRSArIDB4MDAwMDAwNThVKQ0KI2RlZmluZSBETUExX0NoYW5uZWw2X0JBU0UgICAgKERNQTFfQkFTRSArIDB4MDAwMDAwNkNVKQ0KI2RlZmluZSBETUExX0NoYW5uZWw3X0JBU0UgICAgKERNQTFfQkFTRSArIDB4MDAwMDAwODBVKQ0KI2RlZmluZSBETUEyX0JBU0UgICAgICAgICAgICAgKEFIQlBFUklQSF9CQVNFICsgMHgwMDAwNjQwMFUpDQojZGVmaW5lIERNQTJfQ2hhbm5lbDFfQkFTRSAgICAoRE1BMl9CQVNFICsgMHgwMDAwMDAwOFUpDQojZGVmaW5lIERNQTJfQ2hhbm5lbDJfQkFTRSAgICAoRE1BMl9CQVNFICsgMHgwMDAwMDAxQ1UpDQojZGVmaW5lIERNQTJfQ2hhbm5lbDNfQkFTRSAgICAoRE1BMl9CQVNFICsgMHgwMDAwMDAzMFUpDQojZGVmaW5lIERNQTJfQ2hhbm5lbDRfQkFTRSAgICAoRE1BMl9CQVNFICsgMHgwMDAwMDA0NFUpDQojZGVmaW5lIERNQTJfQ2hhbm5lbDVfQkFTRSAgICAoRE1BMl9CQVNFICsgMHgwMDAwMDA1OFUpDQojZGVmaW5lIERCR01DVV9CQVNFICAgICAgICAgICAoKHVpbnQzMl90KTB4RTAwNDIwMDBVKSAgICAgLyohPCBEZWJ1ZyBNQ1UgcmVnaXN0ZXJzIGJhc2UgYWRkcmVzcyAqLw0KDQovKioNCiAgKiBAfQ0KICAqLw0KICANCi8qKiBAYWRkdG9ncm91cCBQZXJpcGhlcmFsX2RlY2xhcmF0aW9uDQogICogQHsNCiAgKi8gIA0KDQojZGVmaW5lIFRJTTIgICAgICAgICAgICAgICAgKChUSU1fVHlwZURlZiAqKSBUSU0yX0JBU0UpDQojZGVmaW5lIFRJTTMgICAgICAgICAgICAgICAgKChUSU1fVHlwZURlZiAqKSBUSU0zX0JBU0UpDQojZGVmaW5lIFRJTTQgICAgICAgICAgICAgICAgKChUSU1fVHlwZURlZiAqKSBUSU00X0JBU0UpDQojZGVmaW5lIFRJTTUgICAgICAgICAgICAgICAgKChUSU1fVHlwZURlZiAqKSBUSU01X0JBU0UpDQojZGVmaW5lIFRJTTYgICAgICAgICAgICAgICAgKChUSU1fVHlwZURlZiAqKSBUSU02X0JBU0UpDQojZGVmaW5lIFRJTTcgICAgICAgICAgICAgICAgKChUSU1fVHlwZURlZiAqKSBUSU03X0JBU0UpDQojZGVmaW5lIFJUQyAgICAgICAgICAgICAgICAgKChSVENfVHlwZURlZiAqKSBSVENfQkFTRSkNCiNkZWZpbmUgV1dERyAgICAgICAgICAgICAgICAoKFdXREdfVHlwZURlZiAqKSBXV0RHX0JBU0UpDQojZGVmaW5lIElXREcgICAgICAgICAgICAgICAgKChJV0RHX1R5cGVEZWYgKikgSVdER19CQVNFKQ0KI2RlZmluZSBTUEkyICAgICAgICAgICAgICAgICgoU1BJX1R5cGVEZWYgKikgU1BJMl9CQVNFKQ0KI2RlZmluZSBTUEkzICAgICAgICAgICAgICAgICgoU1BJX1R5cGVEZWYgKikgU1BJM19CQVNFKQ0KI2RlZmluZSBVU0FSVDIgICAgICAgICAgICAgICgoVVNBUlRfVHlwZURlZiAqKSBVU0FSVDJfQkFTRSkNCiNkZWZpbmUgVVNBUlQzICAgICAgICAgICAgICAoKFVTQVJUX1R5cGVEZWYgKikgVVNBUlQzX0JBU0UpDQojZGVmaW5lIFVBUlQ0ICAgICAgICAgICAgICAgKChVU0FSVF9UeXBlRGVmICopIFVBUlQ0X0JBU0UpDQojZGVmaW5lIFVBUlQ1ICAgICAgICAgICAgICAgKChVU0FSVF9UeXBlRGVmICopIFVBUlQ1X0JBU0UpDQojZGVmaW5lIEkyQzEgICAgICAgICAgICAgICAgKChJMkNfVHlwZURlZiAqKSBJMkMxX0JBU0UpDQojZGVmaW5lIEkyQzIgICAgICAgICAgICAgICAgKChJMkNfVHlwZURlZiAqKSBJMkMyX0JBU0UpDQovKiBVU0IgZGV2aWNlIEZTICovDQojZGVmaW5lIFVTQiAgICAgICAgICAgICAgICAgICAoKFVTQl9UeXBlRGVmICopIFVTQl9CQVNFKQ0KLyogVVNCIGRldmljZSBGUyBTUkFNICovDQojZGVmaW5lIFBXUiAgICAgICAgICAgICAgICAgKChQV1JfVHlwZURlZiAqKSBQV1JfQkFTRSkNCg0KI2RlZmluZSBEQUMxICAgICAgICAgICAgICAgICgoREFDX1R5cGVEZWYgKikgREFDX0JBU0UpDQovKiBMZWdhY3kgZGVmaW5lICovDQojZGVmaW5lIERBQyAgICAgICAgICAgICAgICAgREFDMQ0KDQojZGVmaW5lIENPTVAgICAgICAgICAgICAgICAgKChDT01QX1R5cGVEZWYgKikgQ09NUF9CQVNFKSAgICAgICAgICAgICAgICAgLyogQ09NUCBnZW5lcmljIGluc3RhbmNlIGluY2x1ZGUgYml0cyBvZiBDT01QMSBhbmQgQ09NUDIgbWl4ZWQgaW4gdGhlIHNhbWUgcmVnaXN0ZXIgKi8NCiNkZWZpbmUgQ09NUDEgICAgICAgICAgICAgICAoKENPTVBfVHlwZURlZiAqKSBDT01QX0JBU0UpICAgICAgICAgICAgICAgICAvKiBDT01QMSBpbnN0YW5jZSBkZWZpbml0aW9uIHRvIGRpZmZlcmVudGlhdGUgQ09NUDEgYW5kIENPTVAyLCBub3QgdG8gYmUgdXNlZCB0byBhY2Nlc3MgY29tcGFyYXRvciByZWdpc3RlciAqLw0KI2RlZmluZSBDT01QMiAgICAgICAgICAgICAgICgoQ09NUF9UeXBlRGVmICopIChDT01QX0JBU0UgKyAweDAwMDAwMDAxVSkpIC8qIENPTVAyIGluc3RhbmNlIGRlZmluaXRpb24gdG8gZGlmZmVyZW50aWF0ZSBDT01QMSBhbmQgQ09NUDIsIG5vdCB0byBiZSB1c2VkIHRvIGFjY2VzcyBjb21wYXJhdG9yIHJlZ2lzdGVyICovDQojZGVmaW5lIENPTVAxMl9DT01NT04gICAgICAgKChDT01QX0NvbW1vbl9UeXBlRGVmICopIENPTVBfQkFTRSkgICAgICAgICAgLyogQ09NUCBjb21tb24gaW5zdGFuY2UgZGVmaW5pdGlvbiB0byBhY2Nlc3MgY29tcGFyYXRvciByZWdpc3RlciBiaXRzIHVzZWQgYnkgYm90aCBjb21wYXJhdG9yIGluc3RhbmNlcyAod2luZG93IG1vZGUpICovDQoNCiNkZWZpbmUgUkkgICAgICAgICAgICAgICAgICAoKFJJX1R5cGVEZWYgKikgUklfQkFTRSkNCg0KI2RlZmluZSBPUEFNUCAgICAgICAgICAgICAgICgoT1BBTVBfVHlwZURlZiAqKSBPUEFNUF9CQVNFKQ0KI2RlZmluZSBPUEFNUDEgICAgICAgICAgICAgICgoT1BBTVBfVHlwZURlZiAqKSBPUEFNUF9CQVNFKQ0KI2RlZmluZSBPUEFNUDIgICAgICAgICAgICAgICgoT1BBTVBfVHlwZURlZiAqKSAoT1BBTVBfQkFTRSArIDB4MDAwMDAwMDFVKSkNCiNkZWZpbmUgT1BBTVAxMl9DT01NT04gICAgICAoKE9QQU1QX0NvbW1vbl9UeXBlRGVmICopIE9QQU1QX0JBU0UpDQojZGVmaW5lIFNZU0NGRyAgICAgICAgICAgICAgKChTWVNDRkdfVHlwZURlZiAqKSBTWVNDRkdfQkFTRSkNCiNkZWZpbmUgRVhUSSAgICAgICAgICAgICAgICAoKEVYVElfVHlwZURlZiAqKSBFWFRJX0JBU0UpDQojZGVmaW5lIFRJTTkgICAgICAgICAgICAgICAgKChUSU1fVHlwZURlZiAqKSBUSU05X0JBU0UpDQojZGVmaW5lIFRJTTEwICAgICAgICAgICAgICAgKChUSU1fVHlwZURlZiAqKSBUSU0xMF9CQVNFKQ0KI2RlZmluZSBUSU0xMSAgICAgICAgICAgICAgICgoVElNX1R5cGVEZWYgKikgVElNMTFfQkFTRSkNCg0KI2RlZmluZSBBREMxICAgICAgICAgICAgICAgICgoQURDX1R5cGVEZWYgKikgQURDMV9CQVNFKQ0KI2RlZmluZSBBREMxX0NPTU1PTiAgICAgICAgICgoQURDX0NvbW1vbl9UeXBlRGVmICopIEFEQ19CQVNFKQ0KLyogTGVnYWN5IGRlZmluZXMgKi8NCiNkZWZpbmUgQURDICAgICAgICAgICAgICAgICBBREMxX0NPTU1PTg0KDQojZGVmaW5lIFNQSTEgICAgICAgICAgICAgICAgKChTUElfVHlwZURlZiAqKSBTUEkxX0JBU0UpDQojZGVmaW5lIFVTQVJUMSAgICAgICAgICAgICAgKChVU0FSVF9UeXBlRGVmICopIFVTQVJUMV9CQVNFKQ0KI2RlZmluZSBHUElPQSAgICAgICAgICAgICAgICgoR1BJT19UeXBlRGVmICopIEdQSU9BX0JBU0UpDQojZGVmaW5lIEdQSU9CICAgICAgICAgICAgICAgKChHUElPX1R5cGVEZWYgKikgR1BJT0JfQkFTRSkNCiNkZWZpbmUgR1BJT0MgICAgICAgICAgICAgICAoKEdQSU9fVHlwZURlZiAqKSBHUElPQ19CQVNFKQ0KI2RlZmluZSBHUElPRCAgICAgICAgICAgICAgICgoR1BJT19UeXBlRGVmICopIEdQSU9EX0JBU0UpDQojZGVmaW5lIEdQSU9FICAgICAgICAgICAgICAgKChHUElPX1R5cGVEZWYgKikgR1BJT0VfQkFTRSkNCiNkZWZpbmUgR1BJT0ggICAgICAgICAgICAgICAoKEdQSU9fVHlwZURlZiAqKSBHUElPSF9CQVNFKQ0KI2RlZmluZSBHUElPRiAgICAgICAgICAgICAgICgoR1BJT19UeXBlRGVmICopIEdQSU9GX0JBU0UpDQojZGVmaW5lIEdQSU9HICAgICAgICAgICAgICAgKChHUElPX1R5cGVEZWYgKikgR1BJT0dfQkFTRSkNCiNkZWZpbmUgQ1JDICAgICAgICAgICAgICAgICAoKENSQ19UeXBlRGVmICopIENSQ19CQVNFKQ0KI2RlZmluZSBSQ0MgICAgICAgICAgICAgICAgICgoUkNDX1R5cGVEZWYgKikgUkNDX0JBU0UpDQojZGVmaW5lIEZMQVNIICAgICAgICAgICAgICAgKChGTEFTSF9UeXBlRGVmICopIEZMQVNIX1JfQkFTRSkNCiNkZWZpbmUgT0IgICAgICAgICAgICAgICAgICAoKE9CX1R5cGVEZWYgKikgT0JfQkFTRSkgDQojZGVmaW5lIERNQTEgICAgICAgICAgICAgICAgKChETUFfVHlwZURlZiAqKSBETUExX0JBU0UpDQojZGVmaW5lIERNQTFfQ2hhbm5lbDEgICAgICAgKChETUFfQ2hhbm5lbF9UeXBlRGVmICopIERNQTFfQ2hhbm5lbDFfQkFTRSkNCiNkZWZpbmUgRE1BMV9DaGFubmVsMiAgICAgICAoKERNQV9DaGFubmVsX1R5cGVEZWYgKikgRE1BMV9DaGFubmVsMl9CQVNFKQ0KI2RlZmluZSBETUExX0NoYW5uZWwzICAgICAgICgoRE1BX0NoYW5uZWxfVHlwZURlZiAqKSBETUExX0NoYW5uZWwzX0JBU0UpDQojZGVmaW5lIERNQTFfQ2hhbm5lbDQgICAgICAgKChETUFfQ2hhbm5lbF9UeXBlRGVmICopIERNQTFfQ2hhbm5lbDRfQkFTRSkNCiNkZWZpbmUgRE1BMV9DaGFubmVsNSAgICAgICAoKERNQV9DaGFubmVsX1R5cGVEZWYgKikgRE1BMV9DaGFubmVsNV9CQVNFKQ0KI2RlZmluZSBETUExX0NoYW5uZWw2ICAgICAgICgoRE1BX0NoYW5uZWxfVHlwZURlZiAqKSBETUExX0NoYW5uZWw2X0JBU0UpDQojZGVmaW5lIERNQTFfQ2hhbm5lbDcgICAgICAgKChETUFfQ2hhbm5lbF9UeXBlRGVmICopIERNQTFfQ2hhbm5lbDdfQkFTRSkNCiNkZWZpbmUgRE1BMiAgICAgICAgICAgICAgICAoKERNQV9UeXBlRGVmICopIERNQTJfQkFTRSkNCiNkZWZpbmUgRE1BMl9DaGFubmVsMSAgICAgICAoKERNQV9DaGFubmVsX1R5cGVEZWYgKikgRE1BMl9DaGFubmVsMV9CQVNFKQ0KI2RlZmluZSBETUEyX0NoYW5uZWwyICAgICAgICgoRE1BX0NoYW5uZWxfVHlwZURlZiAqKSBETUEyX0NoYW5uZWwyX0JBU0UpDQojZGVmaW5lIERNQTJfQ2hhbm5lbDMgICAgICAgKChETUFfQ2hhbm5lbF9UeXBlRGVmICopIERNQTJfQ2hhbm5lbDNfQkFTRSkNCiNkZWZpbmUgRE1BMl9DaGFubmVsNCAgICAgICAoKERNQV9DaGFubmVsX1R5cGVEZWYgKikgRE1BMl9DaGFubmVsNF9CQVNFKQ0KI2RlZmluZSBETUEyX0NoYW5uZWw1ICAgICAgICgoRE1BX0NoYW5uZWxfVHlwZURlZiAqKSBETUEyX0NoYW5uZWw1X0JBU0UpDQojZGVmaW5lIERCR01DVSAgICAgICAgICAgICAgKChEQkdNQ1VfVHlwZURlZiAqKSBEQkdNQ1VfQkFTRSkNCg0KIC8qKg0KICAqIEB9DQogICovDQoNCi8qKiBAYWRkdG9ncm91cCBFeHBvcnRlZF9jb25zdGFudHMNCiAgKiBAew0KICAqLw0KDQovKiogQGFkZHRvZ3JvdXAgUGVyaXBoZXJhbF9SZWdpc3RlcnNfQml0c19EZWZpbml0aW9uDQogICogQHsNCiAgKi8NCiAgICANCi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovDQovKiAgICAgICAgICAgICAgICAgICAgICAgICBQZXJpcGhlcmFsIFJlZ2lzdGVycyBCaXRzIERlZmluaXRpb24gICAgICAgICAgICAgICAqLw0KLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8NCi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovDQovKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLw0KLyogICAgICAgICAgICAgICAgICAgICAgQW5hbG9nIHRvIERpZ2l0YWwgQ29udmVydGVyIChBREMpICAgICAgICAgICAgICAgICAgICAgKi8NCi8qICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovDQovKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLw0KDQovKioqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBBRENfU1IgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBBRENfU1JfQVdEX1BvcyAgICAgICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBBRENfU1JfQVdEX01zayAgICAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgQURDX1NSX0FXRF9Qb3MpICAgICAgICAgIC8qITwgMHgwMDAwMDAwMSAqLw0KI2RlZmluZSBBRENfU1JfQVdEICAgICAgICAgICAgICAgICAgICAgICAgICAgQURDX1NSX0FXRF9Nc2sgICAgICAgICAgICAgICAgICAgIC8qITwgQURDIGFuYWxvZyB3YXRjaGRvZyAxIGZsYWcgKi8NCiNkZWZpbmUgQURDX1NSX0VPQ1NfUG9zICAgICAgICAgICAgICAgICAgICAgICgxVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgQURDX1NSX0VPQ1NfTXNrICAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IEFEQ19TUl9FT0NTX1BvcykgICAgICAgICAvKiE8IDB4MDAwMDAwMDIgKi8NCiNkZWZpbmUgQURDX1NSX0VPQ1MgICAgICAgICAgICAgICAgICAgICAgICAgIEFEQ19TUl9FT0NTX01zayAgICAgICAgICAgICAgICAgICAvKiE8IEFEQyBncm91cCByZWd1bGFyIGVuZCBvZiB1bml0YXJ5IGNvbnZlcnNpb24gb3IgZW5kIG9mIHNlcXVlbmNlIGNvbnZlcnNpb25zIGZsYWcgKi8NCiNkZWZpbmUgQURDX1NSX0pFT1NfUG9zICAgICAgICAgICAgICAgICAgICAgICgyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgQURDX1NSX0pFT1NfTXNrICAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IEFEQ19TUl9KRU9TX1BvcykgICAgICAgICAvKiE8IDB4MDAwMDAwMDQgKi8NCiNkZWZpbmUgQURDX1NSX0pFT1MgICAgICAgICAgICAgICAgICAgICAgICAgIEFEQ19TUl9KRU9TX01zayAgICAgICAgICAgICAgICAgICAvKiE8IEFEQyBncm91cCBpbmplY3RlZCBlbmQgb2Ygc2VxdWVuY2UgY29udmVyc2lvbnMgZmxhZyAqLw0KI2RlZmluZSBBRENfU1JfSlNUUlRfUG9zICAgICAgICAgICAgICAgICAgICAgKDNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBBRENfU1JfSlNUUlRfTXNrICAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgQURDX1NSX0pTVFJUX1BvcykgICAgICAgIC8qITwgMHgwMDAwMDAwOCAqLw0KI2RlZmluZSBBRENfU1JfSlNUUlQgICAgICAgICAgICAgICAgICAgICAgICAgQURDX1NSX0pTVFJUX01zayAgICAgICAgICAgICAgICAgIC8qITwgQURDIGdyb3VwIGluamVjdGVkIGNvbnZlcnNpb24gc3RhcnQgZmxhZyAqLw0KI2RlZmluZSBBRENfU1JfU1RSVF9Qb3MgICAgICAgICAgICAgICAgICAgICAgKDRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBBRENfU1JfU1RSVF9Nc2sgICAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgQURDX1NSX1NUUlRfUG9zKSAgICAgICAgIC8qITwgMHgwMDAwMDAxMCAqLw0KI2RlZmluZSBBRENfU1JfU1RSVCAgICAgICAgICAgICAgICAgICAgICAgICAgQURDX1NSX1NUUlRfTXNrICAgICAgICAgICAgICAgICAgIC8qITwgQURDIGdyb3VwIHJlZ3VsYXIgY29udmVyc2lvbiBzdGFydCBmbGFnICovDQojZGVmaW5lIEFEQ19TUl9PVlJfUG9zICAgICAgICAgICAgICAgICAgICAgICAoNVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEFEQ19TUl9PVlJfTXNrICAgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBBRENfU1JfT1ZSX1BvcykgICAgICAgICAgLyohPCAweDAwMDAwMDIwICovDQojZGVmaW5lIEFEQ19TUl9PVlIgICAgICAgICAgICAgICAgICAgICAgICAgICBBRENfU1JfT1ZSX01zayAgICAgICAgICAgICAgICAgICAgLyohPCBBREMgZ3JvdXAgcmVndWxhciBvdmVycnVuIGZsYWcgKi8NCiNkZWZpbmUgQURDX1NSX0FET05TX1BvcyAgICAgICAgICAgICAgICAgICAgICg2VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgQURDX1NSX0FET05TX01zayAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IEFEQ19TUl9BRE9OU19Qb3MpICAgICAgICAvKiE8IDB4MDAwMDAwNDAgKi8NCiNkZWZpbmUgQURDX1NSX0FET05TICAgICAgICAgICAgICAgICAgICAgICAgIEFEQ19TUl9BRE9OU19Nc2sgICAgICAgICAgICAgICAgICAvKiE8IEFEQyByZWFkeSBmbGFnICovDQojZGVmaW5lIEFEQ19TUl9SQ05SX1BvcyAgICAgICAgICAgICAgICAgICAgICAoOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEFEQ19TUl9SQ05SX01zayAgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBBRENfU1JfUkNOUl9Qb3MpICAgICAgICAgLyohPCAweDAwMDAwMTAwICovDQojZGVmaW5lIEFEQ19TUl9SQ05SICAgICAgICAgICAgICAgICAgICAgICAgICBBRENfU1JfUkNOUl9Nc2sgICAgICAgICAgICAgICAgICAgLyohPCBBREMgZ3JvdXAgcmVndWxhciBub3QgcmVhZHkgZmxhZyAqLw0KI2RlZmluZSBBRENfU1JfSkNOUl9Qb3MgICAgICAgICAgICAgICAgICAgICAgKDlVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBBRENfU1JfSkNOUl9Nc2sgICAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgQURDX1NSX0pDTlJfUG9zKSAgICAgICAgIC8qITwgMHgwMDAwMDIwMCAqLw0KI2RlZmluZSBBRENfU1JfSkNOUiAgICAgICAgICAgICAgICAgICAgICAgICAgQURDX1NSX0pDTlJfTXNrICAgICAgICAgICAgICAgICAgIC8qITwgQURDIGdyb3VwIGluamVjdGVkIG5vdCByZWFkeSBmbGFnICovDQoNCi8qIExlZ2FjeSBkZWZpbmVzICovDQojZGVmaW5lICBBRENfU1JfRU9DICAgICAgICAgICAgICAgICAgICAgICAgICAoQURDX1NSX0VPQ1MpDQojZGVmaW5lICBBRENfU1JfSkVPQyAgICAgICAgICAgICAgICAgICAgICAgICAoQURDX1NSX0pFT1MpDQoNCi8qKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgQURDX0NSMSByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIEFEQ19DUjFfQVdEQ0hfUG9zICAgICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEFEQ19DUjFfQVdEQ0hfTXNrICAgICAgICAgICAgICAgICAgICAoMHgxRlUgPDwgQURDX0NSMV9BV0RDSF9Qb3MpICAgICAgLyohPCAweDAwMDAwMDFGICovDQojZGVmaW5lIEFEQ19DUjFfQVdEQ0ggICAgICAgICAgICAgICAgICAgICAgICBBRENfQ1IxX0FXRENIX01zayAgICAgICAgICAgICAgICAgLyohPCBBREMgYW5hbG9nIHdhdGNoZG9nIDEgbW9uaXRvcmVkIGNoYW5uZWwgc2VsZWN0aW9uICovDQojZGVmaW5lIEFEQ19DUjFfQVdEQ0hfMCAgICAgICAgICAgICAgICAgICAgICAoMHgwMVUgPDwgQURDX0NSMV9BV0RDSF9Qb3MpICAgICAgLyohPCAweDAwMDAwMDAxICovDQojZGVmaW5lIEFEQ19DUjFfQVdEQ0hfMSAgICAgICAgICAgICAgICAgICAgICAoMHgwMlUgPDwgQURDX0NSMV9BV0RDSF9Qb3MpICAgICAgLyohPCAweDAwMDAwMDAyICovDQojZGVmaW5lIEFEQ19DUjFfQVdEQ0hfMiAgICAgICAgICAgICAgICAgICAgICAoMHgwNFUgPDwgQURDX0NSMV9BV0RDSF9Qb3MpICAgICAgLyohPCAweDAwMDAwMDA0ICovDQojZGVmaW5lIEFEQ19DUjFfQVdEQ0hfMyAgICAgICAgICAgICAgICAgICAgICAoMHgwOFUgPDwgQURDX0NSMV9BV0RDSF9Qb3MpICAgICAgLyohPCAweDAwMDAwMDA4ICovDQojZGVmaW5lIEFEQ19DUjFfQVdEQ0hfNCAgICAgICAgICAgICAgICAgICAgICAoMHgxMFUgPDwgQURDX0NSMV9BV0RDSF9Qb3MpICAgICAgLyohPCAweDAwMDAwMDEwICovDQoNCiNkZWZpbmUgQURDX0NSMV9FT0NTSUVfUG9zICAgICAgICAgICAgICAgICAgICg1VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgQURDX0NSMV9FT0NTSUVfTXNrICAgICAgICAgICAgICAgICAgICgweDFVIDw8IEFEQ19DUjFfRU9DU0lFX1BvcykgICAgICAvKiE8IDB4MDAwMDAwMjAgKi8NCiNkZWZpbmUgQURDX0NSMV9FT0NTSUUgICAgICAgICAgICAgICAgICAgICAgIEFEQ19DUjFfRU9DU0lFX01zayAgICAgICAgICAgICAgICAvKiE8IEFEQyBncm91cCByZWd1bGFyIGVuZCBvZiB1bml0YXJ5IGNvbnZlcnNpb24gb3IgZW5kIG9mIHNlcXVlbmNlIGNvbnZlcnNpb25zIGludGVycnVwdCAqLw0KI2RlZmluZSBBRENfQ1IxX0FXRElFX1BvcyAgICAgICAgICAgICAgICAgICAgKDZVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBBRENfQ1IxX0FXRElFX01zayAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgQURDX0NSMV9BV0RJRV9Qb3MpICAgICAgIC8qITwgMHgwMDAwMDA0MCAqLw0KI2RlZmluZSBBRENfQ1IxX0FXRElFICAgICAgICAgICAgICAgICAgICAgICAgQURDX0NSMV9BV0RJRV9Nc2sgICAgICAgICAgICAgICAgIC8qITwgQURDIGFuYWxvZyB3YXRjaGRvZyAxIGludGVycnVwdCAqLw0KI2RlZmluZSBBRENfQ1IxX0pFT1NJRV9Qb3MgICAgICAgICAgICAgICAgICAgKDdVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBBRENfQ1IxX0pFT1NJRV9Nc2sgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgQURDX0NSMV9KRU9TSUVfUG9zKSAgICAgIC8qITwgMHgwMDAwMDA4MCAqLw0KI2RlZmluZSBBRENfQ1IxX0pFT1NJRSAgICAgICAgICAgICAgICAgICAgICAgQURDX0NSMV9KRU9TSUVfTXNrICAgICAgICAgICAgICAgIC8qITwgQURDIGdyb3VwIGluamVjdGVkIGVuZCBvZiBzZXF1ZW5jZSBjb252ZXJzaW9ucyBpbnRlcnJ1cHQgKi8NCiNkZWZpbmUgQURDX0NSMV9TQ0FOX1BvcyAgICAgICAgICAgICAgICAgICAgICg4VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgQURDX0NSMV9TQ0FOX01zayAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IEFEQ19DUjFfU0NBTl9Qb3MpICAgICAgICAvKiE8IDB4MDAwMDAxMDAgKi8NCiNkZWZpbmUgQURDX0NSMV9TQ0FOICAgICAgICAgICAgICAgICAgICAgICAgIEFEQ19DUjFfU0NBTl9Nc2sgICAgICAgICAgICAgICAgICAvKiE8IEFEQyBzY2FuIG1vZGUgKi8NCiNkZWZpbmUgQURDX0NSMV9BV0RTR0xfUG9zICAgICAgICAgICAgICAgICAgICg5VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgQURDX0NSMV9BV0RTR0xfTXNrICAgICAgICAgICAgICAgICAgICgweDFVIDw8IEFEQ19DUjFfQVdEU0dMX1BvcykgICAgICAvKiE8IDB4MDAwMDAyMDAgKi8NCiNkZWZpbmUgQURDX0NSMV9BV0RTR0wgICAgICAgICAgICAgICAgICAgICAgIEFEQ19DUjFfQVdEU0dMX01zayAgICAgICAgICAgICAgICAvKiE8IEFEQyBhbmFsb2cgd2F0Y2hkb2cgMSBtb25pdG9yaW5nIGEgc2luZ2xlIGNoYW5uZWwgb3IgYWxsIGNoYW5uZWxzICovDQojZGVmaW5lIEFEQ19DUjFfSkFVVE9fUG9zICAgICAgICAgICAgICAgICAgICAoMTBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEFEQ19DUjFfSkFVVE9fTXNrICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBBRENfQ1IxX0pBVVRPX1BvcykgICAgICAgLyohPCAweDAwMDAwNDAwICovDQojZGVmaW5lIEFEQ19DUjFfSkFVVE8gICAgICAgICAgICAgICAgICAgICAgICBBRENfQ1IxX0pBVVRPX01zayAgICAgICAgICAgICAgICAgLyohPCBBREMgZ3JvdXAgaW5qZWN0ZWQgYXV0b21hdGljIHRyaWdnZXIgbW9kZSAqLw0KI2RlZmluZSBBRENfQ1IxX0RJU0NFTl9Qb3MgICAgICAgICAgICAgICAgICAgKDExVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBBRENfQ1IxX0RJU0NFTl9Nc2sgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgQURDX0NSMV9ESVNDRU5fUG9zKSAgICAgIC8qITwgMHgwMDAwMDgwMCAqLw0KI2RlZmluZSBBRENfQ1IxX0RJU0NFTiAgICAgICAgICAgICAgICAgICAgICAgQURDX0NSMV9ESVNDRU5fTXNrICAgICAgICAgICAgICAgIC8qITwgQURDIGdyb3VwIHJlZ3VsYXIgc2VxdWVuY2VyIGRpc2NvbnRpbnVvdXMgbW9kZSAqLw0KI2RlZmluZSBBRENfQ1IxX0pESVNDRU5fUG9zICAgICAgICAgICAgICAgICAgKDEyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBBRENfQ1IxX0pESVNDRU5fTXNrICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgQURDX0NSMV9KRElTQ0VOX1BvcykgICAgIC8qITwgMHgwMDAwMTAwMCAqLw0KI2RlZmluZSBBRENfQ1IxX0pESVNDRU4gICAgICAgICAgICAgICAgICAgICAgQURDX0NSMV9KRElTQ0VOX01zayAgICAgICAgICAgICAgIC8qITwgQURDIGdyb3VwIGluamVjdGVkIHNlcXVlbmNlciBkaXNjb250aW51b3VzIG1vZGUgKi8NCg0KI2RlZmluZSBBRENfQ1IxX0RJU0NOVU1fUG9zICAgICAgICAgICAgICAgICAgKDEzVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBBRENfQ1IxX0RJU0NOVU1fTXNrICAgICAgICAgICAgICAgICAgKDB4N1UgPDwgQURDX0NSMV9ESVNDTlVNX1BvcykgICAgIC8qITwgMHgwMDAwRTAwMCAqLw0KI2RlZmluZSBBRENfQ1IxX0RJU0NOVU0gICAgICAgICAgICAgICAgICAgICAgQURDX0NSMV9ESVNDTlVNX01zayAgICAgICAgICAgICAgIC8qITwgQURDIGdyb3VwIHJlZ3VsYXIgc2VxdWVuY2VyIGRpc2NvbnRpbnVvdXMgbnVtYmVyIG9mIHJhbmtzICovDQojZGVmaW5lIEFEQ19DUjFfRElTQ05VTV8wICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBBRENfQ1IxX0RJU0NOVU1fUG9zKSAgICAgLyohPCAweDAwMDAyMDAwICovDQojZGVmaW5lIEFEQ19DUjFfRElTQ05VTV8xICAgICAgICAgICAgICAgICAgICAoMHgyVSA8PCBBRENfQ1IxX0RJU0NOVU1fUG9zKSAgICAgLyohPCAweDAwMDA0MDAwICovDQojZGVmaW5lIEFEQ19DUjFfRElTQ05VTV8yICAgICAgICAgICAgICAgICAgICAoMHg0VSA8PCBBRENfQ1IxX0RJU0NOVU1fUG9zKSAgICAgLyohPCAweDAwMDA4MDAwICovDQoNCiNkZWZpbmUgQURDX0NSMV9QRERfUG9zICAgICAgICAgICAgICAgICAgICAgICgxNlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgQURDX0NSMV9QRERfTXNrICAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IEFEQ19DUjFfUEREX1BvcykgICAgICAgICAvKiE8IDB4MDAwMTAwMDAgKi8NCiNkZWZpbmUgQURDX0NSMV9QREQgICAgICAgICAgICAgICAgICAgICAgICAgIEFEQ19DUjFfUEREX01zayAgICAgICAgICAgICAgICAgICAvKiE8IEFEQyBwb3dlciBkb3duIGR1cmluZyBhdXRvIGRlbGF5IHBoYXNlICovDQojZGVmaW5lIEFEQ19DUjFfUERJX1BvcyAgICAgICAgICAgICAgICAgICAgICAoMTdVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEFEQ19DUjFfUERJX01zayAgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBBRENfQ1IxX1BESV9Qb3MpICAgICAgICAgLyohPCAweDAwMDIwMDAwICovDQojZGVmaW5lIEFEQ19DUjFfUERJICAgICAgICAgICAgICAgICAgICAgICAgICBBRENfQ1IxX1BESV9Nc2sgICAgICAgICAgICAgICAgICAgLyohPCBBREMgcG93ZXIgZG93biBkdXJpbmcgaWRsZSBwaGFzZSAqLw0KDQojZGVmaW5lIEFEQ19DUjFfSkFXREVOX1BvcyAgICAgICAgICAgICAgICAgICAoMjJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEFEQ19DUjFfSkFXREVOX01zayAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBBRENfQ1IxX0pBV0RFTl9Qb3MpICAgICAgLyohPCAweDAwNDAwMDAwICovDQojZGVmaW5lIEFEQ19DUjFfSkFXREVOICAgICAgICAgICAgICAgICAgICAgICBBRENfQ1IxX0pBV0RFTl9Nc2sgICAgICAgICAgICAgICAgLyohPCBBREMgYW5hbG9nIHdhdGNoZG9nIDEgZW5hYmxlIG9uIHNjb3BlIEFEQyBncm91cCBpbmplY3RlZCAqLw0KI2RlZmluZSBBRENfQ1IxX0FXREVOX1BvcyAgICAgICAgICAgICAgICAgICAgKDIzVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBBRENfQ1IxX0FXREVOX01zayAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgQURDX0NSMV9BV0RFTl9Qb3MpICAgICAgIC8qITwgMHgwMDgwMDAwMCAqLw0KI2RlZmluZSBBRENfQ1IxX0FXREVOICAgICAgICAgICAgICAgICAgICAgICAgQURDX0NSMV9BV0RFTl9Nc2sgICAgICAgICAgICAgICAgIC8qITwgQURDIGFuYWxvZyB3YXRjaGRvZyAxIGVuYWJsZSBvbiBzY29wZSBBREMgZ3JvdXAgcmVndWxhciAqLw0KDQojZGVmaW5lIEFEQ19DUjFfUkVTX1BvcyAgICAgICAgICAgICAgICAgICAgICAoMjRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEFEQ19DUjFfUkVTX01zayAgICAgICAgICAgICAgICAgICAgICAoMHgzVSA8PCBBRENfQ1IxX1JFU19Qb3MpICAgICAgICAgLyohPCAweDAzMDAwMDAwICovDQojZGVmaW5lIEFEQ19DUjFfUkVTICAgICAgICAgICAgICAgICAgICAgICAgICBBRENfQ1IxX1JFU19Nc2sgICAgICAgICAgICAgICAgICAgLyohPCBBREMgcmVzb2x1dGlvbiAqLw0KI2RlZmluZSBBRENfQ1IxX1JFU18wICAgICAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgQURDX0NSMV9SRVNfUG9zKSAgICAgICAgIC8qITwgMHgwMTAwMDAwMCAqLw0KI2RlZmluZSBBRENfQ1IxX1JFU18xICAgICAgICAgICAgICAgICAgICAgICAgKDB4MlUgPDwgQURDX0NSMV9SRVNfUG9zKSAgICAgICAgIC8qITwgMHgwMjAwMDAwMCAqLw0KDQojZGVmaW5lIEFEQ19DUjFfT1ZSSUVfUG9zICAgICAgICAgICAgICAgICAgICAoMjZVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEFEQ19DUjFfT1ZSSUVfTXNrICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBBRENfQ1IxX09WUklFX1BvcykgICAgICAgLyohPCAweDA0MDAwMDAwICovDQojZGVmaW5lIEFEQ19DUjFfT1ZSSUUgICAgICAgICAgICAgICAgICAgICAgICBBRENfQ1IxX09WUklFX01zayAgICAgICAgICAgICAgICAgLyohPCBBREMgZ3JvdXAgcmVndWxhciBvdmVycnVuIGludGVycnVwdCAqLw0KDQovKiBMZWdhY3kgZGVmaW5lcyAqLw0KI2RlZmluZSAgQURDX0NSMV9FT0NJRSAgICAgICAgICAgICAgICAgICAgICAgKEFEQ19DUjFfRU9DU0lFKQ0KI2RlZmluZSAgQURDX0NSMV9KRU9DSUUgICAgICAgICAgICAgICAgICAgICAgKEFEQ19DUjFfSkVPU0lFKQ0KDQovKioqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIEFEQ19DUjIgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBBRENfQ1IyX0FET05fUG9zICAgICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBBRENfQ1IyX0FET05fTXNrICAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgQURDX0NSMl9BRE9OX1BvcykgICAgICAgIC8qITwgMHgwMDAwMDAwMSAqLw0KI2RlZmluZSBBRENfQ1IyX0FET04gICAgICAgICAgICAgICAgICAgICAgICAgQURDX0NSMl9BRE9OX01zayAgICAgICAgICAgICAgICAgIC8qITwgQURDIGVuYWJsZSAqLw0KI2RlZmluZSBBRENfQ1IyX0NPTlRfUG9zICAgICAgICAgICAgICAgICAgICAgKDFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBBRENfQ1IyX0NPTlRfTXNrICAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgQURDX0NSMl9DT05UX1BvcykgICAgICAgIC8qITwgMHgwMDAwMDAwMiAqLw0KI2RlZmluZSBBRENfQ1IyX0NPTlQgICAgICAgICAgICAgICAgICAgICAgICAgQURDX0NSMl9DT05UX01zayAgICAgICAgICAgICAgICAgIC8qITwgQURDIGdyb3VwIHJlZ3VsYXIgY29udGludW91cyBjb252ZXJzaW9uIG1vZGUgKi8NCiNkZWZpbmUgQURDX0NSMl9DRkdfUG9zICAgICAgICAgICAgICAgICAgICAgICgyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgQURDX0NSMl9DRkdfTXNrICAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IEFEQ19DUjJfQ0ZHX1BvcykgICAgICAgICAvKiE8IDB4MDAwMDAwMDQgKi8NCiNkZWZpbmUgQURDX0NSMl9DRkcgICAgICAgICAgICAgICAgICAgICAgICAgIEFEQ19DUjJfQ0ZHX01zayAgICAgICAgICAgICAgICAgICAvKiE8IEFEQyBjaGFubmVscyBiYW5rIHNlbGVjdGlvbiAqLw0KDQojZGVmaW5lIEFEQ19DUjJfREVMU19Qb3MgICAgICAgICAgICAgICAgICAgICAoNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEFEQ19DUjJfREVMU19Nc2sgICAgICAgICAgICAgICAgICAgICAoMHg3VSA8PCBBRENfQ1IyX0RFTFNfUG9zKSAgICAgICAgLyohPCAweDAwMDAwMDcwICovDQojZGVmaW5lIEFEQ19DUjJfREVMUyAgICAgICAgICAgICAgICAgICAgICAgICBBRENfQ1IyX0RFTFNfTXNrICAgICAgICAgICAgICAgICAgLyohPCBBREMgYXV0byBkZWxheSBzZWxlY3Rpb24gKi8NCiNkZWZpbmUgQURDX0NSMl9ERUxTXzAgICAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IEFEQ19DUjJfREVMU19Qb3MpICAgICAgICAvKiE8IDB4MDAwMDAwMTAgKi8NCiNkZWZpbmUgQURDX0NSMl9ERUxTXzEgICAgICAgICAgICAgICAgICAgICAgICgweDJVIDw8IEFEQ19DUjJfREVMU19Qb3MpICAgICAgICAvKiE8IDB4MDAwMDAwMjAgKi8NCiNkZWZpbmUgQURDX0NSMl9ERUxTXzIgICAgICAgICAgICAgICAgICAgICAgICgweDRVIDw8IEFEQ19DUjJfREVMU19Qb3MpICAgICAgICAvKiE8IDB4MDAwMDAwNDAgKi8NCg0KI2RlZmluZSBBRENfQ1IyX0RNQV9Qb3MgICAgICAgICAgICAgICAgICAgICAgKDhVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBBRENfQ1IyX0RNQV9Nc2sgICAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgQURDX0NSMl9ETUFfUG9zKSAgICAgICAgIC8qITwgMHgwMDAwMDEwMCAqLw0KI2RlZmluZSBBRENfQ1IyX0RNQSAgICAgICAgICAgICAgICAgICAgICAgICAgQURDX0NSMl9ETUFfTXNrICAgICAgICAgICAgICAgICAgIC8qITwgQURDIERNQSB0cmFuc2ZlciBlbmFibGUgKi8NCiNkZWZpbmUgQURDX0NSMl9ERFNfUG9zICAgICAgICAgICAgICAgICAgICAgICg5VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgQURDX0NSMl9ERFNfTXNrICAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IEFEQ19DUjJfRERTX1BvcykgICAgICAgICAvKiE8IDB4MDAwMDAyMDAgKi8NCiNkZWZpbmUgQURDX0NSMl9ERFMgICAgICAgICAgICAgICAgICAgICAgICAgIEFEQ19DUjJfRERTX01zayAgICAgICAgICAgICAgICAgICAvKiE8IEFEQyBETUEgdHJhbnNmZXIgY29uZmlndXJhdGlvbiAqLw0KI2RlZmluZSBBRENfQ1IyX0VPQ1NfUG9zICAgICAgICAgICAgICAgICAgICAgKDEwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBBRENfQ1IyX0VPQ1NfTXNrICAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgQURDX0NSMl9FT0NTX1BvcykgICAgICAgIC8qITwgMHgwMDAwMDQwMCAqLw0KI2RlZmluZSBBRENfQ1IyX0VPQ1MgICAgICAgICAgICAgICAgICAgICAgICAgQURDX0NSMl9FT0NTX01zayAgICAgICAgICAgICAgICAgIC8qITwgQURDIGVuZCBvZiB1bml0YXJ5IG9yIGVuZCBvZiBzZXF1ZW5jZSBjb252ZXJzaW9ucyBzZWxlY3Rpb24gKi8NCiNkZWZpbmUgQURDX0NSMl9BTElHTl9Qb3MgICAgICAgICAgICAgICAgICAgICgxMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgQURDX0NSMl9BTElHTl9Nc2sgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IEFEQ19DUjJfQUxJR05fUG9zKSAgICAgICAvKiE8IDB4MDAwMDA4MDAgKi8NCiNkZWZpbmUgQURDX0NSMl9BTElHTiAgICAgICAgICAgICAgICAgICAgICAgIEFEQ19DUjJfQUxJR05fTXNrICAgICAgICAgICAgICAgICAvKiE8IEFEQyBkYXRhIGFsaWduZW1lbnQgKi8NCg0KI2RlZmluZSBBRENfQ1IyX0pFWFRTRUxfUG9zICAgICAgICAgICAgICAgICAgKDE2VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBBRENfQ1IyX0pFWFRTRUxfTXNrICAgICAgICAgICAgICAgICAgKDB4RlUgPDwgQURDX0NSMl9KRVhUU0VMX1BvcykgICAgIC8qITwgMHgwMDBGMDAwMCAqLw0KI2RlZmluZSBBRENfQ1IyX0pFWFRTRUwgICAgICAgICAgICAgICAgICAgICAgQURDX0NSMl9KRVhUU0VMX01zayAgICAgICAgICAgICAgIC8qITwgQURDIGdyb3VwIGluamVjdGVkIGV4dGVybmFsIHRyaWdnZXIgc291cmNlICovDQojZGVmaW5lIEFEQ19DUjJfSkVYVFNFTF8wICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBBRENfQ1IyX0pFWFRTRUxfUG9zKSAgICAgLyohPCAweDAwMDEwMDAwICovDQojZGVmaW5lIEFEQ19DUjJfSkVYVFNFTF8xICAgICAgICAgICAgICAgICAgICAoMHgyVSA8PCBBRENfQ1IyX0pFWFRTRUxfUG9zKSAgICAgLyohPCAweDAwMDIwMDAwICovDQojZGVmaW5lIEFEQ19DUjJfSkVYVFNFTF8yICAgICAgICAgICAgICAgICAgICAoMHg0VSA8PCBBRENfQ1IyX0pFWFRTRUxfUG9zKSAgICAgLyohPCAweDAwMDQwMDAwICovDQojZGVmaW5lIEFEQ19DUjJfSkVYVFNFTF8zICAgICAgICAgICAgICAgICAgICAoMHg4VSA8PCBBRENfQ1IyX0pFWFRTRUxfUG9zKSAgICAgLyohPCAweDAwMDgwMDAwICovDQoNCiNkZWZpbmUgQURDX0NSMl9KRVhURU5fUG9zICAgICAgICAgICAgICAgICAgICgyMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgQURDX0NSMl9KRVhURU5fTXNrICAgICAgICAgICAgICAgICAgICgweDNVIDw8IEFEQ19DUjJfSkVYVEVOX1BvcykgICAgICAvKiE8IDB4MDAzMDAwMDAgKi8NCiNkZWZpbmUgQURDX0NSMl9KRVhURU4gICAgICAgICAgICAgICAgICAgICAgIEFEQ19DUjJfSkVYVEVOX01zayAgICAgICAgICAgICAgICAvKiE8IEFEQyBncm91cCBpbmplY3RlZCBleHRlcm5hbCB0cmlnZ2VyIHBvbGFyaXR5ICovDQojZGVmaW5lIEFEQ19DUjJfSkVYVEVOXzAgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBBRENfQ1IyX0pFWFRFTl9Qb3MpICAgICAgLyohPCAweDAwMTAwMDAwICovDQojZGVmaW5lIEFEQ19DUjJfSkVYVEVOXzEgICAgICAgICAgICAgICAgICAgICAoMHgyVSA8PCBBRENfQ1IyX0pFWFRFTl9Qb3MpICAgICAgLyohPCAweDAwMjAwMDAwICovDQoNCiNkZWZpbmUgQURDX0NSMl9KU1dTVEFSVF9Qb3MgICAgICAgICAgICAgICAgICgyMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgQURDX0NSMl9KU1dTVEFSVF9Nc2sgICAgICAgICAgICAgICAgICgweDFVIDw8IEFEQ19DUjJfSlNXU1RBUlRfUG9zKSAgICAvKiE8IDB4MDA0MDAwMDAgKi8NCiNkZWZpbmUgQURDX0NSMl9KU1dTVEFSVCAgICAgICAgICAgICAgICAgICAgIEFEQ19DUjJfSlNXU1RBUlRfTXNrICAgICAgICAgICAgICAvKiE8IEFEQyBncm91cCBpbmplY3RlZCBjb252ZXJzaW9uIHN0YXJ0ICovDQoNCiNkZWZpbmUgQURDX0NSMl9FWFRTRUxfUG9zICAgICAgICAgICAgICAgICAgICgyNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgQURDX0NSMl9FWFRTRUxfTXNrICAgICAgICAgICAgICAgICAgICgweEZVIDw8IEFEQ19DUjJfRVhUU0VMX1BvcykgICAgICAvKiE8IDB4MEYwMDAwMDAgKi8NCiNkZWZpbmUgQURDX0NSMl9FWFRTRUwgICAgICAgICAgICAgICAgICAgICAgIEFEQ19DUjJfRVhUU0VMX01zayAgICAgICAgICAgICAgICAvKiE8IEFEQyBncm91cCByZWd1bGFyIGV4dGVybmFsIHRyaWdnZXIgc291cmNlICovDQojZGVmaW5lIEFEQ19DUjJfRVhUU0VMXzAgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBBRENfQ1IyX0VYVFNFTF9Qb3MpICAgICAgLyohPCAweDAxMDAwMDAwICovDQojZGVmaW5lIEFEQ19DUjJfRVhUU0VMXzEgICAgICAgICAgICAgICAgICAgICAoMHgyVSA8PCBBRENfQ1IyX0VYVFNFTF9Qb3MpICAgICAgLyohPCAweDAyMDAwMDAwICovDQojZGVmaW5lIEFEQ19DUjJfRVhUU0VMXzIgICAgICAgICAgICAgICAgICAgICAoMHg0VSA8PCBBRENfQ1IyX0VYVFNFTF9Qb3MpICAgICAgLyohPCAweDA0MDAwMDAwICovDQojZGVmaW5lIEFEQ19DUjJfRVhUU0VMXzMgICAgICAgICAgICAgICAgICAgICAoMHg4VSA8PCBBRENfQ1IyX0VYVFNFTF9Qb3MpICAgICAgLyohPCAweDA4MDAwMDAwICovDQoNCiNkZWZpbmUgQURDX0NSMl9FWFRFTl9Qb3MgICAgICAgICAgICAgICAgICAgICgyOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgQURDX0NSMl9FWFRFTl9Nc2sgICAgICAgICAgICAgICAgICAgICgweDNVIDw8IEFEQ19DUjJfRVhURU5fUG9zKSAgICAgICAvKiE8IDB4MzAwMDAwMDAgKi8NCiNkZWZpbmUgQURDX0NSMl9FWFRFTiAgICAgICAgICAgICAgICAgICAgICAgIEFEQ19DUjJfRVhURU5fTXNrICAgICAgICAgICAgICAgICAvKiE8IEFEQyBncm91cCByZWd1bGFyIGV4dGVybmFsIHRyaWdnZXIgcG9sYXJpdHkgKi8NCiNkZWZpbmUgQURDX0NSMl9FWFRFTl8wICAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IEFEQ19DUjJfRVhURU5fUG9zKSAgICAgICAvKiE8IDB4MTAwMDAwMDAgKi8NCiNkZWZpbmUgQURDX0NSMl9FWFRFTl8xICAgICAgICAgICAgICAgICAgICAgICgweDJVIDw8IEFEQ19DUjJfRVhURU5fUG9zKSAgICAgICAvKiE8IDB4MjAwMDAwMDAgKi8NCg0KI2RlZmluZSBBRENfQ1IyX1NXU1RBUlRfUG9zICAgICAgICAgICAgICAgICAgKDMwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBBRENfQ1IyX1NXU1RBUlRfTXNrICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgQURDX0NSMl9TV1NUQVJUX1BvcykgICAgIC8qITwgMHg0MDAwMDAwMCAqLw0KI2RlZmluZSBBRENfQ1IyX1NXU1RBUlQgICAgICAgICAgICAgICAgICAgICAgQURDX0NSMl9TV1NUQVJUX01zayAgICAgICAgICAgICAgIC8qITwgQURDIGdyb3VwIHJlZ3VsYXIgY29udmVyc2lvbiBzdGFydCAqLw0KDQovKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgQURDX1NNUFIxIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBBRENfU01QUjFfU01QMjBfUG9zICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBBRENfU01QUjFfU01QMjBfTXNrICAgICAgICAgICAgICAgICAgKDB4N1UgPDwgQURDX1NNUFIxX1NNUDIwX1BvcykgICAgIC8qITwgMHgwMDAwMDAwNyAqLw0KI2RlZmluZSBBRENfU01QUjFfU01QMjAgICAgICAgICAgICAgICAgICAgICAgQURDX1NNUFIxX1NNUDIwX01zayAgICAgICAgICAgICAgIC8qITwgQURDIGNoYW5uZWwgMjAgc2FtcGxpbmcgdGltZSBzZWxlY3Rpb24gKi8NCiNkZWZpbmUgQURDX1NNUFIxX1NNUDIwXzAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IEFEQ19TTVBSMV9TTVAyMF9Qb3MpICAgICAvKiE8IDB4MDAwMDAwMDEgKi8NCiNkZWZpbmUgQURDX1NNUFIxX1NNUDIwXzEgICAgICAgICAgICAgICAgICAgICgweDJVIDw8IEFEQ19TTVBSMV9TTVAyMF9Qb3MpICAgICAvKiE8IDB4MDAwMDAwMDIgKi8NCiNkZWZpbmUgQURDX1NNUFIxX1NNUDIwXzIgICAgICAgICAgICAgICAgICAgICgweDRVIDw8IEFEQ19TTVBSMV9TTVAyMF9Qb3MpICAgICAvKiE8IDB4MDAwMDAwMDQgKi8NCg0KI2RlZmluZSBBRENfU01QUjFfU01QMjFfUG9zICAgICAgICAgICAgICAgICAgKDNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBBRENfU01QUjFfU01QMjFfTXNrICAgICAgICAgICAgICAgICAgKDB4N1UgPDwgQURDX1NNUFIxX1NNUDIxX1BvcykgICAgIC8qITwgMHgwMDAwMDAzOCAqLw0KI2RlZmluZSBBRENfU01QUjFfU01QMjEgICAgICAgICAgICAgICAgICAgICAgQURDX1NNUFIxX1NNUDIxX01zayAgICAgICAgICAgICAgIC8qITwgQURDIGNoYW5uZWwgMjEgc2FtcGxpbmcgdGltZSBzZWxlY3Rpb24gKi8NCiNkZWZpbmUgQURDX1NNUFIxX1NNUDIxXzAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IEFEQ19TTVBSMV9TTVAyMV9Qb3MpICAgICAvKiE8IDB4MDAwMDAwMDggKi8NCiNkZWZpbmUgQURDX1NNUFIxX1NNUDIxXzEgICAgICAgICAgICAgICAgICAgICgweDJVIDw8IEFEQ19TTVBSMV9TTVAyMV9Qb3MpICAgICAvKiE8IDB4MDAwMDAwMTAgKi8NCiNkZWZpbmUgQURDX1NNUFIxX1NNUDIxXzIgICAgICAgICAgICAgICAgICAgICgweDRVIDw8IEFEQ19TTVBSMV9TTVAyMV9Qb3MpICAgICAvKiE8IDB4MDAwMDAwMjAgKi8NCg0KI2RlZmluZSBBRENfU01QUjFfU01QMjJfUG9zICAgICAgICAgICAgICAgICAgKDZVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBBRENfU01QUjFfU01QMjJfTXNrICAgICAgICAgICAgICAgICAgKDB4N1UgPDwgQURDX1NNUFIxX1NNUDIyX1BvcykgICAgIC8qITwgMHgwMDAwMDFDMCAqLw0KI2RlZmluZSBBRENfU01QUjFfU01QMjIgICAgICAgICAgICAgICAgICAgICAgQURDX1NNUFIxX1NNUDIyX01zayAgICAgICAgICAgICAgIC8qITwgQURDIGNoYW5uZWwgMjIgc2FtcGxpbmcgdGltZSBzZWxlY3Rpb24gKi8NCiNkZWZpbmUgQURDX1NNUFIxX1NNUDIyXzAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IEFEQ19TTVBSMV9TTVAyMl9Qb3MpICAgICAvKiE8IDB4MDAwMDAwNDAgKi8NCiNkZWZpbmUgQURDX1NNUFIxX1NNUDIyXzEgICAgICAgICAgICAgICAgICAgICgweDJVIDw8IEFEQ19TTVBSMV9TTVAyMl9Qb3MpICAgICAvKiE8IDB4MDAwMDAwODAgKi8NCiNkZWZpbmUgQURDX1NNUFIxX1NNUDIyXzIgICAgICAgICAgICAgICAgICAgICgweDRVIDw8IEFEQ19TTVBSMV9TTVAyMl9Qb3MpICAgICAvKiE8IDB4MDAwMDAxMDAgKi8NCg0KI2RlZmluZSBBRENfU01QUjFfU01QMjNfUG9zICAgICAgICAgICAgICAgICAgKDlVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBBRENfU01QUjFfU01QMjNfTXNrICAgICAgICAgICAgICAgICAgKDB4N1UgPDwgQURDX1NNUFIxX1NNUDIzX1BvcykgICAgIC8qITwgMHgwMDAwMEUwMCAqLw0KI2RlZmluZSBBRENfU01QUjFfU01QMjMgICAgICAgICAgICAgICAgICAgICAgQURDX1NNUFIxX1NNUDIzX01zayAgICAgICAgICAgICAgIC8qITwgQURDIGNoYW5uZWwgMjMgc2FtcGxpbmcgdGltZSBzZWxlY3Rpb24gKi8NCiNkZWZpbmUgQURDX1NNUFIxX1NNUDIzXzAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IEFEQ19TTVBSMV9TTVAyM19Qb3MpICAgICAvKiE8IDB4MDAwMDAyMDAgKi8NCiNkZWZpbmUgQURDX1NNUFIxX1NNUDIzXzEgICAgICAgICAgICAgICAgICAgICgweDJVIDw8IEFEQ19TTVBSMV9TTVAyM19Qb3MpICAgICAvKiE8IDB4MDAwMDA0MDAgKi8NCiNkZWZpbmUgQURDX1NNUFIxX1NNUDIzXzIgICAgICAgICAgICAgICAgICAgICgweDRVIDw8IEFEQ19TTVBSMV9TTVAyM19Qb3MpICAgICAvKiE8IDB4MDAwMDA4MDAgKi8NCg0KI2RlZmluZSBBRENfU01QUjFfU01QMjRfUG9zICAgICAgICAgICAgICAgICAgKDEyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBBRENfU01QUjFfU01QMjRfTXNrICAgICAgICAgICAgICAgICAgKDB4N1UgPDwgQURDX1NNUFIxX1NNUDI0X1BvcykgICAgIC8qITwgMHgwMDAwNzAwMCAqLw0KI2RlZmluZSBBRENfU01QUjFfU01QMjQgICAgICAgICAgICAgICAgICAgICAgQURDX1NNUFIxX1NNUDI0X01zayAgICAgICAgICAgICAgIC8qITwgQURDIGNoYW5uZWwgMjQgc2FtcGxpbmcgdGltZSBzZWxlY3Rpb24gKi8NCiNkZWZpbmUgQURDX1NNUFIxX1NNUDI0XzAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IEFEQ19TTVBSMV9TTVAyNF9Qb3MpICAgICAvKiE8IDB4MDAwMDEwMDAgKi8NCiNkZWZpbmUgQURDX1NNUFIxX1NNUDI0XzEgICAgICAgICAgICAgICAgICAgICgweDJVIDw8IEFEQ19TTVBSMV9TTVAyNF9Qb3MpICAgICAvKiE8IDB4MDAwMDIwMDAgKi8NCiNkZWZpbmUgQURDX1NNUFIxX1NNUDI0XzIgICAgICAgICAgICAgICAgICAgICgweDRVIDw8IEFEQ19TTVBSMV9TTVAyNF9Qb3MpICAgICAvKiE8IDB4MDAwMDQwMDAgKi8NCg0KI2RlZmluZSBBRENfU01QUjFfU01QMjVfUG9zICAgICAgICAgICAgICAgICAgKDE1VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBBRENfU01QUjFfU01QMjVfTXNrICAgICAgICAgICAgICAgICAgKDB4N1UgPDwgQURDX1NNUFIxX1NNUDI1X1BvcykgICAgIC8qITwgMHgwMDAzODAwMCAqLw0KI2RlZmluZSBBRENfU01QUjFfU01QMjUgICAgICAgICAgICAgICAgICAgICAgQURDX1NNUFIxX1NNUDI1X01zayAgICAgICAgICAgICAgIC8qITwgQURDIGNoYW5uZWwgMjUgc2FtcGxpbmcgdGltZSBzZWxlY3Rpb24gKi8NCiNkZWZpbmUgQURDX1NNUFIxX1NNUDI1XzAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IEFEQ19TTVBSMV9TTVAyNV9Qb3MpICAgICAvKiE8IDB4MDAwMDgwMDAgKi8NCiNkZWZpbmUgQURDX1NNUFIxX1NNUDI1XzEgICAgICAgICAgICAgICAgICAgICgweDJVIDw8IEFEQ19TTVBSMV9TTVAyNV9Qb3MpICAgICAvKiE8IDB4MDAwMTAwMDAgKi8NCiNkZWZpbmUgQURDX1NNUFIxX1NNUDI1XzIgICAgICAgICAgICAgICAgICAgICgweDRVIDw8IEFEQ19TTVBSMV9TTVAyNV9Qb3MpICAgICAvKiE8IDB4MDAwMjAwMDAgKi8NCg0KI2RlZmluZSBBRENfU01QUjFfU01QMjZfUG9zICAgICAgICAgICAgICAgICAgKDE4VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBBRENfU01QUjFfU01QMjZfTXNrICAgICAgICAgICAgICAgICAgKDB4N1UgPDwgQURDX1NNUFIxX1NNUDI2X1BvcykgICAgIC8qITwgMHgwMDFDMDAwMCAqLw0KI2RlZmluZSBBRENfU01QUjFfU01QMjYgICAgICAgICAgICAgICAgICAgICAgQURDX1NNUFIxX1NNUDI2X01zayAgICAgICAgICAgICAgIC8qITwgQURDIGNoYW5uZWwgMjYgc2FtcGxpbmcgdGltZSBzZWxlY3Rpb24gKi8NCiNkZWZpbmUgQURDX1NNUFIxX1NNUDI2XzAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IEFEQ19TTVBSMV9TTVAyNl9Qb3MpICAgICAvKiE8IDB4MDAwNDAwMDAgKi8NCiNkZWZpbmUgQURDX1NNUFIxX1NNUDI2XzEgICAgICAgICAgICAgICAgICAgICgweDJVIDw8IEFEQ19TTVBSMV9TTVAyNl9Qb3MpICAgICAvKiE8IDB4MDAwODAwMDAgKi8NCiNkZWZpbmUgQURDX1NNUFIxX1NNUDI2XzIgICAgICAgICAgICAgICAgICAgICgweDRVIDw8IEFEQ19TTVBSMV9TTVAyNl9Qb3MpICAgICAvKiE8IDB4MDAxMDAwMDAgKi8NCg0KI2RlZmluZSBBRENfU01QUjFfU01QMjdfUG9zICAgICAgICAgICAgICAgICAgKDIxVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBBRENfU01QUjFfU01QMjdfTXNrICAgICAgICAgICAgICAgICAgKDB4N1UgPDwgQURDX1NNUFIxX1NNUDI3X1BvcykgICAgIC8qITwgMHgwMEUwMDAwMCAqLw0KI2RlZmluZSBBRENfU01QUjFfU01QMjcgICAgICAgICAgICAgICAgICAgICAgQURDX1NNUFIxX1NNUDI3X01zayAgICAgICAgICAgICAgIC8qITwgQURDIGNoYW5uZWwgMjcgc2FtcGxpbmcgdGltZSBzZWxlY3Rpb24gKi8NCiNkZWZpbmUgQURDX1NNUFIxX1NNUDI3XzAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IEFEQ19TTVBSMV9TTVAyN19Qb3MpICAgICAvKiE8IDB4MDAyMDAwMDAgKi8NCiNkZWZpbmUgQURDX1NNUFIxX1NNUDI3XzEgICAgICAgICAgICAgICAgICAgICgweDJVIDw8IEFEQ19TTVBSMV9TTVAyN19Qb3MpICAgICAvKiE8IDB4MDA0MDAwMDAgKi8NCiNkZWZpbmUgQURDX1NNUFIxX1NNUDI3XzIgICAgICAgICAgICAgICAgICAgICgweDRVIDw8IEFEQ19TTVBSMV9TTVAyN19Qb3MpICAgICAvKiE8IDB4MDA4MDAwMDAgKi8NCg0KI2RlZmluZSBBRENfU01QUjFfU01QMjhfUG9zICAgICAgICAgICAgICAgICAgKDI0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBBRENfU01QUjFfU01QMjhfTXNrICAgICAgICAgICAgICAgICAgKDB4N1UgPDwgQURDX1NNUFIxX1NNUDI4X1BvcykgICAgIC8qITwgMHgwNzAwMDAwMCAqLw0KI2RlZmluZSBBRENfU01QUjFfU01QMjggICAgICAgICAgICAgICAgICAgICAgQURDX1NNUFIxX1NNUDI4X01zayAgICAgICAgICAgICAgIC8qITwgQURDIGNoYW5uZWwgMjggc2FtcGxpbmcgdGltZSBzZWxlY3Rpb24gKi8NCiNkZWZpbmUgQURDX1NNUFIxX1NNUDI4XzAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IEFEQ19TTVBSMV9TTVAyOF9Qb3MpICAgICAvKiE8IDB4MDEwMDAwMDAgKi8NCiNkZWZpbmUgQURDX1NNUFIxX1NNUDI4XzEgICAgICAgICAgICAgICAgICAgICgweDJVIDw8IEFEQ19TTVBSMV9TTVAyOF9Qb3MpICAgICAvKiE8IDB4MDIwMDAwMDAgKi8NCiNkZWZpbmUgQURDX1NNUFIxX1NNUDI4XzIgICAgICAgICAgICAgICAgICAgICgweDRVIDw8IEFEQ19TTVBSMV9TTVAyOF9Qb3MpICAgICAvKiE8IDB4MDQwMDAwMDAgKi8NCg0KI2RlZmluZSBBRENfU01QUjFfU01QMjlfUG9zICAgICAgICAgICAgICAgICAgKDI3VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBBRENfU01QUjFfU01QMjlfTXNrICAgICAgICAgICAgICAgICAgKDB4N1UgPDwgQURDX1NNUFIxX1NNUDI5X1BvcykgICAgIC8qITwgMHgzODAwMDAwMCAqLw0KI2RlZmluZSBBRENfU01QUjFfU01QMjkgICAgICAgICAgICAgICAgICAgICAgQURDX1NNUFIxX1NNUDI5X01zayAgICAgICAgICAgICAgIC8qITwgQURDIGNoYW5uZWwgMjkgc2FtcGxpbmcgdGltZSBzZWxlY3Rpb24gKi8NCiNkZWZpbmUgQURDX1NNUFIxX1NNUDI5XzAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IEFEQ19TTVBSMV9TTVAyOV9Qb3MpICAgICAvKiE8IDB4MDgwMDAwMDAgKi8NCiNkZWZpbmUgQURDX1NNUFIxX1NNUDI5XzEgICAgICAgICAgICAgICAgICAgICgweDJVIDw8IEFEQ19TTVBSMV9TTVAyOV9Qb3MpICAgICAvKiE8IDB4MTAwMDAwMDAgKi8NCiNkZWZpbmUgQURDX1NNUFIxX1NNUDI5XzIgICAgICAgICAgICAgICAgICAgICgweDRVIDw8IEFEQ19TTVBSMV9TTVAyOV9Qb3MpICAgICAvKiE8IDB4MjAwMDAwMDAgKi8NCg0KLyoqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIEFEQ19TTVBSMiByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgQURDX1NNUFIyX1NNUDEwX1BvcyAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgQURDX1NNUFIyX1NNUDEwX01zayAgICAgICAgICAgICAgICAgICgweDdVIDw8IEFEQ19TTVBSMl9TTVAxMF9Qb3MpICAgICAvKiE8IDB4MDAwMDAwMDcgKi8NCiNkZWZpbmUgQURDX1NNUFIyX1NNUDEwICAgICAgICAgICAgICAgICAgICAgIEFEQ19TTVBSMl9TTVAxMF9Nc2sgICAgICAgICAgICAgICAvKiE8IEFEQyBjaGFubmVsIDEwIHNhbXBsaW5nIHRpbWUgc2VsZWN0aW9uICovDQojZGVmaW5lIEFEQ19TTVBSMl9TTVAxMF8wICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBBRENfU01QUjJfU01QMTBfUG9zKSAgICAgLyohPCAweDAwMDAwMDAxICovDQojZGVmaW5lIEFEQ19TTVBSMl9TTVAxMF8xICAgICAgICAgICAgICAgICAgICAoMHgyVSA8PCBBRENfU01QUjJfU01QMTBfUG9zKSAgICAgLyohPCAweDAwMDAwMDAyICovDQojZGVmaW5lIEFEQ19TTVBSMl9TTVAxMF8yICAgICAgICAgICAgICAgICAgICAoMHg0VSA8PCBBRENfU01QUjJfU01QMTBfUG9zKSAgICAgLyohPCAweDAwMDAwMDA0ICovDQoNCiNkZWZpbmUgQURDX1NNUFIyX1NNUDExX1BvcyAgICAgICAgICAgICAgICAgICgzVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgQURDX1NNUFIyX1NNUDExX01zayAgICAgICAgICAgICAgICAgICgweDdVIDw8IEFEQ19TTVBSMl9TTVAxMV9Qb3MpICAgICAvKiE8IDB4MDAwMDAwMzggKi8NCiNkZWZpbmUgQURDX1NNUFIyX1NNUDExICAgICAgICAgICAgICAgICAgICAgIEFEQ19TTVBSMl9TTVAxMV9Nc2sgICAgICAgICAgICAgICAvKiE8IEFEQyBjaGFubmVsIDExIHNhbXBsaW5nIHRpbWUgc2VsZWN0aW9uICovDQojZGVmaW5lIEFEQ19TTVBSMl9TTVAxMV8wICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBBRENfU01QUjJfU01QMTFfUG9zKSAgICAgLyohPCAweDAwMDAwMDA4ICovDQojZGVmaW5lIEFEQ19TTVBSMl9TTVAxMV8xICAgICAgICAgICAgICAgICAgICAoMHgyVSA8PCBBRENfU01QUjJfU01QMTFfUG9zKSAgICAgLyohPCAweDAwMDAwMDEwICovDQojZGVmaW5lIEFEQ19TTVBSMl9TTVAxMV8yICAgICAgICAgICAgICAgICAgICAoMHg0VSA8PCBBRENfU01QUjJfU01QMTFfUG9zKSAgICAgLyohPCAweDAwMDAwMDIwICovDQoNCiNkZWZpbmUgQURDX1NNUFIyX1NNUDEyX1BvcyAgICAgICAgICAgICAgICAgICg2VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgQURDX1NNUFIyX1NNUDEyX01zayAgICAgICAgICAgICAgICAgICgweDdVIDw8IEFEQ19TTVBSMl9TTVAxMl9Qb3MpICAgICAvKiE8IDB4MDAwMDAxQzAgKi8NCiNkZWZpbmUgQURDX1NNUFIyX1NNUDEyICAgICAgICAgICAgICAgICAgICAgIEFEQ19TTVBSMl9TTVAxMl9Nc2sgICAgICAgICAgICAgICAvKiE8IEFEQyBjaGFubmVsIDEyIHNhbXBsaW5nIHRpbWUgc2VsZWN0aW9uICovDQojZGVmaW5lIEFEQ19TTVBSMl9TTVAxMl8wICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBBRENfU01QUjJfU01QMTJfUG9zKSAgICAgLyohPCAweDAwMDAwMDQwICovDQojZGVmaW5lIEFEQ19TTVBSMl9TTVAxMl8xICAgICAgICAgICAgICAgICAgICAoMHgyVSA8PCBBRENfU01QUjJfU01QMTJfUG9zKSAgICAgLyohPCAweDAwMDAwMDgwICovDQojZGVmaW5lIEFEQ19TTVBSMl9TTVAxMl8yICAgICAgICAgICAgICAgICAgICAoMHg0VSA8PCBBRENfU01QUjJfU01QMTJfUG9zKSAgICAgLyohPCAweDAwMDAwMTAwICovDQoNCiNkZWZpbmUgQURDX1NNUFIyX1NNUDEzX1BvcyAgICAgICAgICAgICAgICAgICg5VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgQURDX1NNUFIyX1NNUDEzX01zayAgICAgICAgICAgICAgICAgICgweDdVIDw8IEFEQ19TTVBSMl9TTVAxM19Qb3MpICAgICAvKiE8IDB4MDAwMDBFMDAgKi8NCiNkZWZpbmUgQURDX1NNUFIyX1NNUDEzICAgICAgICAgICAgICAgICAgICAgIEFEQ19TTVBSMl9TTVAxM19Nc2sgICAgICAgICAgICAgICAvKiE8IEFEQyBjaGFubmVsIDEzIHNhbXBsaW5nIHRpbWUgc2VsZWN0aW9uICovDQojZGVmaW5lIEFEQ19TTVBSMl9TTVAxM18wICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBBRENfU01QUjJfU01QMTNfUG9zKSAgICAgLyohPCAweDAwMDAwMjAwICovDQojZGVmaW5lIEFEQ19TTVBSMl9TTVAxM18xICAgICAgICAgICAgICAgICAgICAoMHgyVSA8PCBBRENfU01QUjJfU01QMTNfUG9zKSAgICAgLyohPCAweDAwMDAwNDAwICovDQojZGVmaW5lIEFEQ19TTVBSMl9TTVAxM18yICAgICAgICAgICAgICAgICAgICAoMHg0VSA8PCBBRENfU01QUjJfU01QMTNfUG9zKSAgICAgLyohPCAweDAwMDAwODAwICovDQoNCiNkZWZpbmUgQURDX1NNUFIyX1NNUDE0X1BvcyAgICAgICAgICAgICAgICAgICgxMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgQURDX1NNUFIyX1NNUDE0X01zayAgICAgICAgICAgICAgICAgICgweDdVIDw8IEFEQ19TTVBSMl9TTVAxNF9Qb3MpICAgICAvKiE8IDB4MDAwMDcwMDAgKi8NCiNkZWZpbmUgQURDX1NNUFIyX1NNUDE0ICAgICAgICAgICAgICAgICAgICAgIEFEQ19TTVBSMl9TTVAxNF9Nc2sgICAgICAgICAgICAgICAvKiE8IEFEQyBjaGFubmVsIDE0IHNhbXBsaW5nIHRpbWUgc2VsZWN0aW9uICovDQojZGVmaW5lIEFEQ19TTVBSMl9TTVAxNF8wICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBBRENfU01QUjJfU01QMTRfUG9zKSAgICAgLyohPCAweDAwMDAxMDAwICovDQojZGVmaW5lIEFEQ19TTVBSMl9TTVAxNF8xICAgICAgICAgICAgICAgICAgICAoMHgyVSA8PCBBRENfU01QUjJfU01QMTRfUG9zKSAgICAgLyohPCAweDAwMDAyMDAwICovDQojZGVmaW5lIEFEQ19TTVBSMl9TTVAxNF8yICAgICAgICAgICAgICAgICAgICAoMHg0VSA8PCBBRENfU01QUjJfU01QMTRfUG9zKSAgICAgLyohPCAweDAwMDA0MDAwICovDQoNCiNkZWZpbmUgQURDX1NNUFIyX1NNUDE1X1BvcyAgICAgICAgICAgICAgICAgICgxNVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgQURDX1NNUFIyX1NNUDE1X01zayAgICAgICAgICAgICAgICAgICgweDdVIDw8IEFEQ19TTVBSMl9TTVAxNV9Qb3MpICAgICAvKiE8IDB4MDAwMzgwMDAgKi8NCiNkZWZpbmUgQURDX1NNUFIyX1NNUDE1ICAgICAgICAgICAgICAgICAgICAgIEFEQ19TTVBSMl9TTVAxNV9Nc2sgICAgICAgICAgICAgICAvKiE8IEFEQyBjaGFubmVsIDUgc2FtcGxpbmcgdGltZSBzZWxlY3Rpb24gKi8NCiNkZWZpbmUgQURDX1NNUFIyX1NNUDE1XzAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IEFEQ19TTVBSMl9TTVAxNV9Qb3MpICAgICAvKiE8IDB4MDAwMDgwMDAgKi8NCiNkZWZpbmUgQURDX1NNUFIyX1NNUDE1XzEgICAgICAgICAgICAgICAgICAgICgweDJVIDw8IEFEQ19TTVBSMl9TTVAxNV9Qb3MpICAgICAvKiE8IDB4MDAwMTAwMDAgKi8NCiNkZWZpbmUgQURDX1NNUFIyX1NNUDE1XzIgICAgICAgICAgICAgICAgICAgICgweDRVIDw8IEFEQ19TTVBSMl9TTVAxNV9Qb3MpICAgICAvKiE8IDB4MDAwMjAwMDAgKi8NCg0KI2RlZmluZSBBRENfU01QUjJfU01QMTZfUG9zICAgICAgICAgICAgICAgICAgKDE4VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBBRENfU01QUjJfU01QMTZfTXNrICAgICAgICAgICAgICAgICAgKDB4N1UgPDwgQURDX1NNUFIyX1NNUDE2X1BvcykgICAgIC8qITwgMHgwMDFDMDAwMCAqLw0KI2RlZmluZSBBRENfU01QUjJfU01QMTYgICAgICAgICAgICAgICAgICAgICAgQURDX1NNUFIyX1NNUDE2X01zayAgICAgICAgICAgICAgIC8qITwgQURDIGNoYW5uZWwgMTYgc2FtcGxpbmcgdGltZSBzZWxlY3Rpb24gKi8NCiNkZWZpbmUgQURDX1NNUFIyX1NNUDE2XzAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IEFEQ19TTVBSMl9TTVAxNl9Qb3MpICAgICAvKiE8IDB4MDAwNDAwMDAgKi8NCiNkZWZpbmUgQURDX1NNUFIyX1NNUDE2XzEgICAgICAgICAgICAgICAgICAgICgweDJVIDw8IEFEQ19TTVBSMl9TTVAxNl9Qb3MpICAgICAvKiE8IDB4MDAwODAwMDAgKi8NCiNkZWZpbmUgQURDX1NNUFIyX1NNUDE2XzIgICAgICAgICAgICAgICAgICAgICgweDRVIDw8IEFEQ19TTVBSMl9TTVAxNl9Qb3MpICAgICAvKiE8IDB4MDAxMDAwMDAgKi8NCg0KI2RlZmluZSBBRENfU01QUjJfU01QMTdfUG9zICAgICAgICAgICAgICAgICAgKDIxVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBBRENfU01QUjJfU01QMTdfTXNrICAgICAgICAgICAgICAgICAgKDB4N1UgPDwgQURDX1NNUFIyX1NNUDE3X1BvcykgICAgIC8qITwgMHgwMEUwMDAwMCAqLw0KI2RlZmluZSBBRENfU01QUjJfU01QMTcgICAgICAgICAgICAgICAgICAgICAgQURDX1NNUFIyX1NNUDE3X01zayAgICAgICAgICAgICAgIC8qITwgQURDIGNoYW5uZWwgMTcgc2FtcGxpbmcgdGltZSBzZWxlY3Rpb24gKi8NCiNkZWZpbmUgQURDX1NNUFIyX1NNUDE3XzAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IEFEQ19TTVBSMl9TTVAxN19Qb3MpICAgICAvKiE8IDB4MDAyMDAwMDAgKi8NCiNkZWZpbmUgQURDX1NNUFIyX1NNUDE3XzEgICAgICAgICAgICAgICAgICAgICgweDJVIDw8IEFEQ19TTVBSMl9TTVAxN19Qb3MpICAgICAvKiE8IDB4MDA0MDAwMDAgKi8NCiNkZWZpbmUgQURDX1NNUFIyX1NNUDE3XzIgICAgICAgICAgICAgICAgICAgICgweDRVIDw8IEFEQ19TTVBSMl9TTVAxN19Qb3MpICAgICAvKiE8IDB4MDA4MDAwMDAgKi8NCg0KI2RlZmluZSBBRENfU01QUjJfU01QMThfUG9zICAgICAgICAgICAgICAgICAgKDI0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBBRENfU01QUjJfU01QMThfTXNrICAgICAgICAgICAgICAgICAgKDB4N1UgPDwgQURDX1NNUFIyX1NNUDE4X1BvcykgICAgIC8qITwgMHgwNzAwMDAwMCAqLw0KI2RlZmluZSBBRENfU01QUjJfU01QMTggICAgICAgICAgICAgICAgICAgICAgQURDX1NNUFIyX1NNUDE4X01zayAgICAgICAgICAgICAgIC8qITwgQURDIGNoYW5uZWwgMTggc2FtcGxpbmcgdGltZSBzZWxlY3Rpb24gKi8NCiNkZWZpbmUgQURDX1NNUFIyX1NNUDE4XzAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IEFEQ19TTVBSMl9TTVAxOF9Qb3MpICAgICAvKiE8IDB4MDEwMDAwMDAgKi8NCiNkZWZpbmUgQURDX1NNUFIyX1NNUDE4XzEgICAgICAgICAgICAgICAgICAgICgweDJVIDw8IEFEQ19TTVBSMl9TTVAxOF9Qb3MpICAgICAvKiE8IDB4MDIwMDAwMDAgKi8NCiNkZWZpbmUgQURDX1NNUFIyX1NNUDE4XzIgICAgICAgICAgICAgICAgICAgICgweDRVIDw8IEFEQ19TTVBSMl9TTVAxOF9Qb3MpICAgICAvKiE8IDB4MDQwMDAwMDAgKi8NCg0KI2RlZmluZSBBRENfU01QUjJfU01QMTlfUG9zICAgICAgICAgICAgICAgICAgKDI3VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBBRENfU01QUjJfU01QMTlfTXNrICAgICAgICAgICAgICAgICAgKDB4N1UgPDwgQURDX1NNUFIyX1NNUDE5X1BvcykgICAgIC8qITwgMHgzODAwMDAwMCAqLw0KI2RlZmluZSBBRENfU01QUjJfU01QMTkgICAgICAgICAgICAgICAgICAgICAgQURDX1NNUFIyX1NNUDE5X01zayAgICAgICAgICAgICAgIC8qITwgQURDIGNoYW5uZWwgMTkgc2FtcGxpbmcgdGltZSBzZWxlY3Rpb24gKi8NCiNkZWZpbmUgQURDX1NNUFIyX1NNUDE5XzAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IEFEQ19TTVBSMl9TTVAxOV9Qb3MpICAgICAvKiE8IDB4MDgwMDAwMDAgKi8NCiNkZWZpbmUgQURDX1NNUFIyX1NNUDE5XzEgICAgICAgICAgICAgICAgICAgICgweDJVIDw8IEFEQ19TTVBSMl9TTVAxOV9Qb3MpICAgICAvKiE8IDB4MTAwMDAwMDAgKi8NCiNkZWZpbmUgQURDX1NNUFIyX1NNUDE5XzIgICAgICAgICAgICAgICAgICAgICgweDRVIDw8IEFEQ19TTVBSMl9TTVAxOV9Qb3MpICAgICAvKiE8IDB4MjAwMDAwMDAgKi8NCg0KLyoqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIEFEQ19TTVBSMyByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgQURDX1NNUFIzX1NNUDBfUG9zICAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgQURDX1NNUFIzX1NNUDBfTXNrICAgICAgICAgICAgICAgICAgICgweDdVIDw8IEFEQ19TTVBSM19TTVAwX1BvcykgICAgICAvKiE8IDB4MDAwMDAwMDcgKi8NCiNkZWZpbmUgQURDX1NNUFIzX1NNUDAgICAgICAgICAgICAgICAgICAgICAgIEFEQ19TTVBSM19TTVAwX01zayAgICAgICAgICAgICAgICAvKiE8IEFEQyBjaGFubmVsIDAgc2FtcGxpbmcgdGltZSBzZWxlY3Rpb24gKi8NCiNkZWZpbmUgQURDX1NNUFIzX1NNUDBfMCAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IEFEQ19TTVBSM19TTVAwX1BvcykgICAgICAvKiE8IDB4MDAwMDAwMDEgKi8NCiNkZWZpbmUgQURDX1NNUFIzX1NNUDBfMSAgICAgICAgICAgICAgICAgICAgICgweDJVIDw8IEFEQ19TTVBSM19TTVAwX1BvcykgICAgICAvKiE8IDB4MDAwMDAwMDIgKi8NCiNkZWZpbmUgQURDX1NNUFIzX1NNUDBfMiAgICAgICAgICAgICAgICAgICAgICgweDRVIDw8IEFEQ19TTVBSM19TTVAwX1BvcykgICAgICAvKiE8IDB4MDAwMDAwMDQgKi8NCiANCiNkZWZpbmUgQURDX1NNUFIzX1NNUDFfUG9zICAgICAgICAgICAgICAgICAgICgzVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgQURDX1NNUFIzX1NNUDFfTXNrICAgICAgICAgICAgICAgICAgICgweDdVIDw8IEFEQ19TTVBSM19TTVAxX1BvcykgICAgICAvKiE8IDB4MDAwMDAwMzggKi8NCiNkZWZpbmUgQURDX1NNUFIzX1NNUDEgICAgICAgICAgICAgICAgICAgICAgIEFEQ19TTVBSM19TTVAxX01zayAgICAgICAgICAgICAgICAvKiE8IEFEQyBjaGFubmVsIDEgc2FtcGxpbmcgdGltZSBzZWxlY3Rpb24gKi8NCiNkZWZpbmUgQURDX1NNUFIzX1NNUDFfMCAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IEFEQ19TTVBSM19TTVAxX1BvcykgICAgICAvKiE8IDB4MDAwMDAwMDggKi8NCiNkZWZpbmUgQURDX1NNUFIzX1NNUDFfMSAgICAgICAgICAgICAgICAgICAgICgweDJVIDw8IEFEQ19TTVBSM19TTVAxX1BvcykgICAgICAvKiE8IDB4MDAwMDAwMTAgKi8NCiNkZWZpbmUgQURDX1NNUFIzX1NNUDFfMiAgICAgICAgICAgICAgICAgICAgICgweDRVIDw8IEFEQ19TTVBSM19TTVAxX1BvcykgICAgICAvKiE8IDB4MDAwMDAwMjAgKi8NCg0KI2RlZmluZSBBRENfU01QUjNfU01QMl9Qb3MgICAgICAgICAgICAgICAgICAgKDZVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBBRENfU01QUjNfU01QMl9Nc2sgICAgICAgICAgICAgICAgICAgKDB4N1UgPDwgQURDX1NNUFIzX1NNUDJfUG9zKSAgICAgIC8qITwgMHgwMDAwMDFDMCAqLw0KI2RlZmluZSBBRENfU01QUjNfU01QMiAgICAgICAgICAgICAgICAgICAgICAgQURDX1NNUFIzX1NNUDJfTXNrICAgICAgICAgICAgICAgIC8qITwgQURDIGNoYW5uZWwgMiBzYW1wbGluZyB0aW1lIHNlbGVjdGlvbiAqLw0KI2RlZmluZSBBRENfU01QUjNfU01QMl8wICAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgQURDX1NNUFIzX1NNUDJfUG9zKSAgICAgIC8qITwgMHgwMDAwMDA0MCAqLw0KI2RlZmluZSBBRENfU01QUjNfU01QMl8xICAgICAgICAgICAgICAgICAgICAgKDB4MlUgPDwgQURDX1NNUFIzX1NNUDJfUG9zKSAgICAgIC8qITwgMHgwMDAwMDA4MCAqLw0KI2RlZmluZSBBRENfU01QUjNfU01QMl8yICAgICAgICAgICAgICAgICAgICAgKDB4NFUgPDwgQURDX1NNUFIzX1NNUDJfUG9zKSAgICAgIC8qITwgMHgwMDAwMDEwMCAqLw0KDQojZGVmaW5lIEFEQ19TTVBSM19TTVAzX1BvcyAgICAgICAgICAgICAgICAgICAoOVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEFEQ19TTVBSM19TTVAzX01zayAgICAgICAgICAgICAgICAgICAoMHg3VSA8PCBBRENfU01QUjNfU01QM19Qb3MpICAgICAgLyohPCAweDAwMDAwRTAwICovDQojZGVmaW5lIEFEQ19TTVBSM19TTVAzICAgICAgICAgICAgICAgICAgICAgICBBRENfU01QUjNfU01QM19Nc2sgICAgICAgICAgICAgICAgLyohPCBBREMgY2hhbm5lbCAzIHNhbXBsaW5nIHRpbWUgc2VsZWN0aW9uICovDQojZGVmaW5lIEFEQ19TTVBSM19TTVAzXzAgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBBRENfU01QUjNfU01QM19Qb3MpICAgICAgLyohPCAweDAwMDAwMjAwICovDQojZGVmaW5lIEFEQ19TTVBSM19TTVAzXzEgICAgICAgICAgICAgICAgICAgICAoMHgyVSA8PCBBRENfU01QUjNfU01QM19Qb3MpICAgICAgLyohPCAweDAwMDAwNDAwICovDQojZGVmaW5lIEFEQ19TTVBSM19TTVAzXzIgICAgICAgICAgICAgICAgICAgICAoMHg0VSA8PCBBRENfU01QUjNfU01QM19Qb3MpICAgICAgLyohPCAweDAwMDAwODAwICovDQoNCiNkZWZpbmUgQURDX1NNUFIzX1NNUDRfUG9zICAgICAgICAgICAgICAgICAgICgxMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgQURDX1NNUFIzX1NNUDRfTXNrICAgICAgICAgICAgICAgICAgICgweDdVIDw8IEFEQ19TTVBSM19TTVA0X1BvcykgICAgICAvKiE8IDB4MDAwMDcwMDAgKi8NCiNkZWZpbmUgQURDX1NNUFIzX1NNUDQgICAgICAgICAgICAgICAgICAgICAgIEFEQ19TTVBSM19TTVA0X01zayAgICAgICAgICAgICAgICAvKiE8IEFEQyBjaGFubmVsIDQgc2FtcGxpbmcgdGltZSBzZWxlY3Rpb24gKi8NCiNkZWZpbmUgQURDX1NNUFIzX1NNUDRfMCAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IEFEQ19TTVBSM19TTVA0X1BvcykgICAgICAvKiE8IDB4MDAwMDEwMDAgKi8NCiNkZWZpbmUgQURDX1NNUFIzX1NNUDRfMSAgICAgICAgICAgICAgICAgICAgICgweDJVIDw8IEFEQ19TTVBSM19TTVA0X1BvcykgICAgICAvKiE8IDB4MDAwMDIwMDAgKi8NCiNkZWZpbmUgQURDX1NNUFIzX1NNUDRfMiAgICAgICAgICAgICAgICAgICAgICgweDRVIDw8IEFEQ19TTVBSM19TTVA0X1BvcykgICAgICAvKiE8IDB4MDAwMDQwMDAgKi8NCg0KI2RlZmluZSBBRENfU01QUjNfU01QNV9Qb3MgICAgICAgICAgICAgICAgICAgKDE1VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBBRENfU01QUjNfU01QNV9Nc2sgICAgICAgICAgICAgICAgICAgKDB4N1UgPDwgQURDX1NNUFIzX1NNUDVfUG9zKSAgICAgIC8qITwgMHgwMDAzODAwMCAqLw0KI2RlZmluZSBBRENfU01QUjNfU01QNSAgICAgICAgICAgICAgICAgICAgICAgQURDX1NNUFIzX1NNUDVfTXNrICAgICAgICAgICAgICAgIC8qITwgQURDIGNoYW5uZWwgNSBzYW1wbGluZyB0aW1lIHNlbGVjdGlvbiAqLw0KI2RlZmluZSBBRENfU01QUjNfU01QNV8wICAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgQURDX1NNUFIzX1NNUDVfUG9zKSAgICAgIC8qITwgMHgwMDAwODAwMCAqLw0KI2RlZmluZSBBRENfU01QUjNfU01QNV8xICAgICAgICAgICAgICAgICAgICAgKDB4MlUgPDwgQURDX1NNUFIzX1NNUDVfUG9zKSAgICAgIC8qITwgMHgwMDAxMDAwMCAqLw0KI2RlZmluZSBBRENfU01QUjNfU01QNV8yICAgICAgICAgICAgICAgICAgICAgKDB4NFUgPDwgQURDX1NNUFIzX1NNUDVfUG9zKSAgICAgIC8qITwgMHgwMDAyMDAwMCAqLw0KDQojZGVmaW5lIEFEQ19TTVBSM19TTVA2X1BvcyAgICAgICAgICAgICAgICAgICAoMThVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEFEQ19TTVBSM19TTVA2X01zayAgICAgICAgICAgICAgICAgICAoMHg3VSA8PCBBRENfU01QUjNfU01QNl9Qb3MpICAgICAgLyohPCAweDAwMUMwMDAwICovDQojZGVmaW5lIEFEQ19TTVBSM19TTVA2ICAgICAgICAgICAgICAgICAgICAgICBBRENfU01QUjNfU01QNl9Nc2sgICAgICAgICAgICAgICAgLyohPCBBREMgY2hhbm5lbCA2IHNhbXBsaW5nIHRpbWUgc2VsZWN0aW9uICovDQojZGVmaW5lIEFEQ19TTVBSM19TTVA2XzAgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBBRENfU01QUjNfU01QNl9Qb3MpICAgICAgLyohPCAweDAwMDQwMDAwICovDQojZGVmaW5lIEFEQ19TTVBSM19TTVA2XzEgICAgICAgICAgICAgICAgICAgICAoMHgyVSA8PCBBRENfU01QUjNfU01QNl9Qb3MpICAgICAgLyohPCAweDAwMDgwMDAwICovDQojZGVmaW5lIEFEQ19TTVBSM19TTVA2XzIgICAgICAgICAgICAgICAgICAgICAoMHg0VSA8PCBBRENfU01QUjNfU01QNl9Qb3MpICAgICAgLyohPCAweDAwMTAwMDAwICovDQoNCiNkZWZpbmUgQURDX1NNUFIzX1NNUDdfUG9zICAgICAgICAgICAgICAgICAgICgyMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgQURDX1NNUFIzX1NNUDdfTXNrICAgICAgICAgICAgICAgICAgICgweDdVIDw8IEFEQ19TTVBSM19TTVA3X1BvcykgICAgICAvKiE8IDB4MDBFMDAwMDAgKi8NCiNkZWZpbmUgQURDX1NNUFIzX1NNUDcgICAgICAgICAgICAgICAgICAgICAgIEFEQ19TTVBSM19TTVA3X01zayAgICAgICAgICAgICAgICAvKiE8IEFEQyBjaGFubmVsIDcgc2FtcGxpbmcgdGltZSBzZWxlY3Rpb24gKi8NCiNkZWZpbmUgQURDX1NNUFIzX1NNUDdfMCAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IEFEQ19TTVBSM19TTVA3X1BvcykgICAgICAvKiE8IDB4MDAyMDAwMDAgKi8NCiNkZWZpbmUgQURDX1NNUFIzX1NNUDdfMSAgICAgICAgICAgICAgICAgICAgICgweDJVIDw8IEFEQ19TTVBSM19TTVA3X1BvcykgICAgICAvKiE8IDB4MDA0MDAwMDAgKi8NCiNkZWZpbmUgQURDX1NNUFIzX1NNUDdfMiAgICAgICAgICAgICAgICAgICAgICgweDRVIDw8IEFEQ19TTVBSM19TTVA3X1BvcykgICAgICAvKiE8IDB4MDA4MDAwMDAgKi8NCg0KI2RlZmluZSBBRENfU01QUjNfU01QOF9Qb3MgICAgICAgICAgICAgICAgICAgKDI0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBBRENfU01QUjNfU01QOF9Nc2sgICAgICAgICAgICAgICAgICAgKDB4N1UgPDwgQURDX1NNUFIzX1NNUDhfUG9zKSAgICAgIC8qITwgMHgwNzAwMDAwMCAqLw0KI2RlZmluZSBBRENfU01QUjNfU01QOCAgICAgICAgICAgICAgICAgICAgICAgQURDX1NNUFIzX1NNUDhfTXNrICAgICAgICAgICAgICAgIC8qITwgQURDIGNoYW5uZWwgOCBzYW1wbGluZyB0aW1lIHNlbGVjdGlvbiAqLw0KI2RlZmluZSBBRENfU01QUjNfU01QOF8wICAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgQURDX1NNUFIzX1NNUDhfUG9zKSAgICAgIC8qITwgMHgwMTAwMDAwMCAqLw0KI2RlZmluZSBBRENfU01QUjNfU01QOF8xICAgICAgICAgICAgICAgICAgICAgKDB4MlUgPDwgQURDX1NNUFIzX1NNUDhfUG9zKSAgICAgIC8qITwgMHgwMjAwMDAwMCAqLw0KI2RlZmluZSBBRENfU01QUjNfU01QOF8yICAgICAgICAgICAgICAgICAgICAgKDB4NFUgPDwgQURDX1NNUFIzX1NNUDhfUG9zKSAgICAgIC8qITwgMHgwNDAwMDAwMCAqLw0KDQojZGVmaW5lIEFEQ19TTVBSM19TTVA5X1BvcyAgICAgICAgICAgICAgICAgICAoMjdVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEFEQ19TTVBSM19TTVA5X01zayAgICAgICAgICAgICAgICAgICAoMHg3VSA8PCBBRENfU01QUjNfU01QOV9Qb3MpICAgICAgLyohPCAweDM4MDAwMDAwICovDQojZGVmaW5lIEFEQ19TTVBSM19TTVA5ICAgICAgICAgICAgICAgICAgICAgICBBRENfU01QUjNfU01QOV9Nc2sgICAgICAgICAgICAgICAgLyohPCBBREMgY2hhbm5lbCA5IHNhbXBsaW5nIHRpbWUgc2VsZWN0aW9uICovDQojZGVmaW5lIEFEQ19TTVBSM19TTVA5XzAgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBBRENfU01QUjNfU01QOV9Qb3MpICAgICAgLyohPCAweDA4MDAwMDAwICovDQojZGVmaW5lIEFEQ19TTVBSM19TTVA5XzEgICAgICAgICAgICAgICAgICAgICAoMHgyVSA8PCBBRENfU01QUjNfU01QOV9Qb3MpICAgICAgLyohPCAweDEwMDAwMDAwICovDQojZGVmaW5lIEFEQ19TTVBSM19TTVA5XzIgICAgICAgICAgICAgICAgICAgICAoMHg0VSA8PCBBRENfU01QUjNfU01QOV9Qb3MpICAgICAgLyohPCAweDIwMDAwMDAwICovDQoNCi8qKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBBRENfSk9GUjEgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIEFEQ19KT0ZSMV9KT0ZGU0VUMV9Qb3MgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEFEQ19KT0ZSMV9KT0ZGU0VUMV9Nc2sgICAgICAgICAgICAgICAoMHhGRkZVIDw8IEFEQ19KT0ZSMV9KT0ZGU0VUMV9Qb3MpIC8qITwgMHgwMDAwMEZGRiAqLw0KI2RlZmluZSBBRENfSk9GUjFfSk9GRlNFVDEgICAgICAgICAgICAgICAgICAgQURDX0pPRlIxX0pPRkZTRVQxX01zayAgICAgICAgICAgIC8qITwgQURDIGdyb3VwIGluamVjdGVkIHNlcXVlbmNlciByYW5rIDEgb2Zmc2V0IHZhbHVlICovDQoNCi8qKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBBRENfSk9GUjIgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIEFEQ19KT0ZSMl9KT0ZGU0VUMl9Qb3MgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEFEQ19KT0ZSMl9KT0ZGU0VUMl9Nc2sgICAgICAgICAgICAgICAoMHhGRkZVIDw8IEFEQ19KT0ZSMl9KT0ZGU0VUMl9Qb3MpIC8qITwgMHgwMDAwMEZGRiAqLw0KI2RlZmluZSBBRENfSk9GUjJfSk9GRlNFVDIgICAgICAgICAgICAgICAgICAgQURDX0pPRlIyX0pPRkZTRVQyX01zayAgICAgICAgICAgIC8qITwgQURDIGdyb3VwIGluamVjdGVkIHNlcXVlbmNlciByYW5rIDIgb2Zmc2V0IHZhbHVlICovDQoNCi8qKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBBRENfSk9GUjMgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIEFEQ19KT0ZSM19KT0ZGU0VUM19Qb3MgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEFEQ19KT0ZSM19KT0ZGU0VUM19Nc2sgICAgICAgICAgICAgICAoMHhGRkZVIDw8IEFEQ19KT0ZSM19KT0ZGU0VUM19Qb3MpIC8qITwgMHgwMDAwMEZGRiAqLw0KI2RlZmluZSBBRENfSk9GUjNfSk9GRlNFVDMgICAgICAgICAgICAgICAgICAgQURDX0pPRlIzX0pPRkZTRVQzX01zayAgICAgICAgICAgIC8qITwgQURDIGdyb3VwIGluamVjdGVkIHNlcXVlbmNlciByYW5rIDMgb2Zmc2V0IHZhbHVlICovDQoNCi8qKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBBRENfSk9GUjQgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIEFEQ19KT0ZSNF9KT0ZGU0VUNF9Qb3MgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEFEQ19KT0ZSNF9KT0ZGU0VUNF9Nc2sgICAgICAgICAgICAgICAoMHhGRkZVIDw8IEFEQ19KT0ZSNF9KT0ZGU0VUNF9Qb3MpIC8qITwgMHgwMDAwMEZGRiAqLw0KI2RlZmluZSBBRENfSk9GUjRfSk9GRlNFVDQgICAgICAgICAgICAgICAgICAgQURDX0pPRlI0X0pPRkZTRVQ0X01zayAgICAgICAgICAgIC8qITwgQURDIGdyb3VwIGluamVjdGVkIHNlcXVlbmNlciByYW5rIDQgb2Zmc2V0IHZhbHVlICovDQoNCi8qKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgQURDX0hUUiByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIEFEQ19IVFJfSFRfUG9zICAgICAgICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEFEQ19IVFJfSFRfTXNrICAgICAgICAgICAgICAgICAgICAgICAoMHhGRkZVIDw8IEFEQ19IVFJfSFRfUG9zKSAgICAgICAgLyohPCAweDAwMDAwRkZGICovDQojZGVmaW5lIEFEQ19IVFJfSFQgICAgICAgICAgICAgICAgICAgICAgICAgICBBRENfSFRSX0hUX01zayAgICAgICAgICAgICAgICAgICAgLyohPCBBREMgYW5hbG9nIHdhdGNoZG9nIDEgdGhyZXNob2xkIGhpZ2ggKi8NCg0KLyoqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBBRENfTFRSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgQURDX0xUUl9MVF9Qb3MgICAgICAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgQURDX0xUUl9MVF9Nc2sgICAgICAgICAgICAgICAgICAgICAgICgweEZGRlUgPDwgQURDX0xUUl9MVF9Qb3MpICAgICAgICAvKiE8IDB4MDAwMDBGRkYgKi8NCiNkZWZpbmUgQURDX0xUUl9MVCAgICAgICAgICAgICAgICAgICAgICAgICAgIEFEQ19MVFJfTFRfTXNrICAgICAgICAgICAgICAgICAgICAvKiE8IEFEQyBhbmFsb2cgd2F0Y2hkb2cgMSB0aHJlc2hvbGQgbG93ICovDQoNCi8qKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgQURDX1NRUjEgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIEFEQ19TUVIxX0xfUG9zICAgICAgICAgICAgICAgICAgICAgICAoMjBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEFEQ19TUVIxX0xfTXNrICAgICAgICAgICAgICAgICAgICAgICAoMHgxRlUgPDwgQURDX1NRUjFfTF9Qb3MpICAgICAgICAgLyohPCAweDAxRjAwMDAwICovDQojZGVmaW5lIEFEQ19TUVIxX0wgICAgICAgICAgICAgICAgICAgICAgICAgICBBRENfU1FSMV9MX01zayAgICAgICAgICAgICAgICAgICAgLyohPCBBREMgZ3JvdXAgcmVndWxhciBzZXF1ZW5jZXIgc2NhbiBsZW5ndGggKi8NCiNkZWZpbmUgQURDX1NRUjFfTF8wICAgICAgICAgICAgICAgICAgICAgICAgICgweDAxVSA8PCBBRENfU1FSMV9MX1BvcykgICAgICAgICAvKiE8IDB4MDAxMDAwMDAgKi8NCiNkZWZpbmUgQURDX1NRUjFfTF8xICAgICAgICAgICAgICAgICAgICAgICAgICgweDAyVSA8PCBBRENfU1FSMV9MX1BvcykgICAgICAgICAvKiE8IDB4MDAyMDAwMDAgKi8NCiNkZWZpbmUgQURDX1NRUjFfTF8yICAgICAgICAgICAgICAgICAgICAgICAgICgweDA0VSA8PCBBRENfU1FSMV9MX1BvcykgICAgICAgICAvKiE8IDB4MDA0MDAwMDAgKi8NCiNkZWZpbmUgQURDX1NRUjFfTF8zICAgICAgICAgICAgICAgICAgICAgICAgICgweDA4VSA8PCBBRENfU1FSMV9MX1BvcykgICAgICAgICAvKiE8IDB4MDA4MDAwMDAgKi8NCiNkZWZpbmUgQURDX1NRUjFfTF80ICAgICAgICAgICAgICAgICAgICAgICAgICgweDEwVSA8PCBBRENfU1FSMV9MX1BvcykgICAgICAgICAvKiE8IDB4MDEwMDAwMDAgKi8NCg0KI2RlZmluZSBBRENfU1FSMV9TUTI4X1BvcyAgICAgICAgICAgICAgICAgICAgKDE1VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBBRENfU1FSMV9TUTI4X01zayAgICAgICAgICAgICAgICAgICAgKDB4MUZVIDw8IEFEQ19TUVIxX1NRMjhfUG9zKSAgICAgIC8qITwgMHgwMDBGODAwMCAqLw0KI2RlZmluZSBBRENfU1FSMV9TUTI4ICAgICAgICAgICAgICAgICAgICAgICAgQURDX1NRUjFfU1EyOF9Nc2sgICAgICAgICAgICAgICAgIC8qITwgQURDIGdyb3VwIHJlZ3VsYXIgc2VxdWVuY2VyIHJhbmsgMjggKi8NCiNkZWZpbmUgQURDX1NRUjFfU1EyOF8wICAgICAgICAgICAgICAgICAgICAgICgweDAxVSA8PCBBRENfU1FSMV9TUTI4X1BvcykgICAgICAvKiE8IDB4MDAwMDgwMDAgKi8NCiNkZWZpbmUgQURDX1NRUjFfU1EyOF8xICAgICAgICAgICAgICAgICAgICAgICgweDAyVSA8PCBBRENfU1FSMV9TUTI4X1BvcykgICAgICAvKiE8IDB4MDAwMTAwMDAgKi8NCiNkZWZpbmUgQURDX1NRUjFfU1EyOF8yICAgICAgICAgICAgICAgICAgICAgICgweDA0VSA8PCBBRENfU1FSMV9TUTI4X1BvcykgICAgICAvKiE8IDB4MDAwMjAwMDAgKi8NCiNkZWZpbmUgQURDX1NRUjFfU1EyOF8zICAgICAgICAgICAgICAgICAgICAgICgweDA4VSA8PCBBRENfU1FSMV9TUTI4X1BvcykgICAgICAvKiE8IDB4MDAwNDAwMDAgKi8NCiNkZWZpbmUgQURDX1NRUjFfU1EyOF80ICAgICAgICAgICAgICAgICAgICAgICgweDEwVSA8PCBBRENfU1FSMV9TUTI4X1BvcykgICAgICAvKiE8IDB4MDAwODAwMDAgKi8NCg0KI2RlZmluZSBBRENfU1FSMV9TUTI3X1BvcyAgICAgICAgICAgICAgICAgICAgKDEwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBBRENfU1FSMV9TUTI3X01zayAgICAgICAgICAgICAgICAgICAgKDB4MUZVIDw8IEFEQ19TUVIxX1NRMjdfUG9zKSAgICAgIC8qITwgMHgwMDAwN0MwMCAqLw0KI2RlZmluZSBBRENfU1FSMV9TUTI3ICAgICAgICAgICAgICAgICAgICAgICAgQURDX1NRUjFfU1EyN19Nc2sgICAgICAgICAgICAgICAgIC8qITwgQURDIGdyb3VwIHJlZ3VsYXIgc2VxdWVuY2VyIHJhbmsgMjcgKi8NCiNkZWZpbmUgQURDX1NRUjFfU1EyN18wICAgICAgICAgICAgICAgICAgICAgICgweDAxVSA8PCBBRENfU1FSMV9TUTI3X1BvcykgICAgICAvKiE8IDB4MDAwMDA0MDAgKi8NCiNkZWZpbmUgQURDX1NRUjFfU1EyN18xICAgICAgICAgICAgICAgICAgICAgICgweDAyVSA8PCBBRENfU1FSMV9TUTI3X1BvcykgICAgICAvKiE8IDB4MDAwMDA4MDAgKi8NCiNkZWZpbmUgQURDX1NRUjFfU1EyN18yICAgICAgICAgICAgICAgICAgICAgICgweDA0VSA8PCBBRENfU1FSMV9TUTI3X1BvcykgICAgICAvKiE8IDB4MDAwMDEwMDAgKi8NCiNkZWZpbmUgQURDX1NRUjFfU1EyN18zICAgICAgICAgICAgICAgICAgICAgICgweDA4VSA8PCBBRENfU1FSMV9TUTI3X1BvcykgICAgICAvKiE8IDB4MDAwMDIwMDAgKi8NCiNkZWZpbmUgQURDX1NRUjFfU1EyN180ICAgICAgICAgICAgICAgICAgICAgICgweDEwVSA8PCBBRENfU1FSMV9TUTI3X1BvcykgICAgICAvKiE8IDB4MDAwMDQwMDAgKi8NCg0KI2RlZmluZSBBRENfU1FSMV9TUTI2X1BvcyAgICAgICAgICAgICAgICAgICAgKDVVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBBRENfU1FSMV9TUTI2X01zayAgICAgICAgICAgICAgICAgICAgKDB4MUZVIDw8IEFEQ19TUVIxX1NRMjZfUG9zKSAgICAgIC8qITwgMHgwMDAwMDNFMCAqLw0KI2RlZmluZSBBRENfU1FSMV9TUTI2ICAgICAgICAgICAgICAgICAgICAgICAgQURDX1NRUjFfU1EyNl9Nc2sgICAgICAgICAgICAgICAgIC8qITwgQURDIGdyb3VwIHJlZ3VsYXIgc2VxdWVuY2VyIHJhbmsgMjYgKi8NCiNkZWZpbmUgQURDX1NRUjFfU1EyNl8wICAgICAgICAgICAgICAgICAgICAgICgweDAxVSA8PCBBRENfU1FSMV9TUTI2X1BvcykgICAgICAvKiE8IDB4MDAwMDAwMjAgKi8NCiNkZWZpbmUgQURDX1NRUjFfU1EyNl8xICAgICAgICAgICAgICAgICAgICAgICgweDAyVSA8PCBBRENfU1FSMV9TUTI2X1BvcykgICAgICAvKiE8IDB4MDAwMDAwNDAgKi8NCiNkZWZpbmUgQURDX1NRUjFfU1EyNl8yICAgICAgICAgICAgICAgICAgICAgICgweDA0VSA8PCBBRENfU1FSMV9TUTI2X1BvcykgICAgICAvKiE8IDB4MDAwMDAwODAgKi8NCiNkZWZpbmUgQURDX1NRUjFfU1EyNl8zICAgICAgICAgICAgICAgICAgICAgICgweDA4VSA8PCBBRENfU1FSMV9TUTI2X1BvcykgICAgICAvKiE8IDB4MDAwMDAxMDAgKi8NCiNkZWZpbmUgQURDX1NRUjFfU1EyNl80ICAgICAgICAgICAgICAgICAgICAgICgweDEwVSA8PCBBRENfU1FSMV9TUTI2X1BvcykgICAgICAvKiE8IDB4MDAwMDAyMDAgKi8NCg0KI2RlZmluZSBBRENfU1FSMV9TUTI1X1BvcyAgICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBBRENfU1FSMV9TUTI1X01zayAgICAgICAgICAgICAgICAgICAgKDB4MUZVIDw8IEFEQ19TUVIxX1NRMjVfUG9zKSAgICAgIC8qITwgMHgwMDAwMDAxRiAqLw0KI2RlZmluZSBBRENfU1FSMV9TUTI1ICAgICAgICAgICAgICAgICAgICAgICAgQURDX1NRUjFfU1EyNV9Nc2sgICAgICAgICAgICAgICAgIC8qITwgQURDIGdyb3VwIHJlZ3VsYXIgc2VxdWVuY2VyIHJhbmsgMjUgKi8NCiNkZWZpbmUgQURDX1NRUjFfU1EyNV8wICAgICAgICAgICAgICAgICAgICAgICgweDAxVSA8PCBBRENfU1FSMV9TUTI1X1BvcykgICAgICAvKiE8IDB4MDAwMDAwMDEgKi8NCiNkZWZpbmUgQURDX1NRUjFfU1EyNV8xICAgICAgICAgICAgICAgICAgICAgICgweDAyVSA8PCBBRENfU1FSMV9TUTI1X1BvcykgICAgICAvKiE8IDB4MDAwMDAwMDIgKi8NCiNkZWZpbmUgQURDX1NRUjFfU1EyNV8yICAgICAgICAgICAgICAgICAgICAgICgweDA0VSA8PCBBRENfU1FSMV9TUTI1X1BvcykgICAgICAvKiE8IDB4MDAwMDAwMDQgKi8NCiNkZWZpbmUgQURDX1NRUjFfU1EyNV8zICAgICAgICAgICAgICAgICAgICAgICgweDA4VSA8PCBBRENfU1FSMV9TUTI1X1BvcykgICAgICAvKiE8IDB4MDAwMDAwMDggKi8NCiNkZWZpbmUgQURDX1NRUjFfU1EyNV80ICAgICAgICAgICAgICAgICAgICAgICgweDEwVSA8PCBBRENfU1FSMV9TUTI1X1BvcykgICAgICAvKiE8IDB4MDAwMDAwMTAgKi8NCg0KLyoqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBBRENfU1FSMiByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgQURDX1NRUjJfU1ExOV9Qb3MgICAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgQURDX1NRUjJfU1ExOV9Nc2sgICAgICAgICAgICAgICAgICAgICgweDFGVSA8PCBBRENfU1FSMl9TUTE5X1BvcykgICAgICAvKiE8IDB4MDAwMDAwMUYgKi8NCiNkZWZpbmUgQURDX1NRUjJfU1ExOSAgICAgICAgICAgICAgICAgICAgICAgIEFEQ19TUVIyX1NRMTlfTXNrICAgICAgICAgICAgICAgICAvKiE8IEFEQyBncm91cCByZWd1bGFyIHNlcXVlbmNlciByYW5rIDE5ICovDQojZGVmaW5lIEFEQ19TUVIyX1NRMTlfMCAgICAgICAgICAgICAgICAgICAgICAoMHgwMVUgPDwgQURDX1NRUjJfU1ExOV9Qb3MpICAgICAgLyohPCAweDAwMDAwMDAxICovDQojZGVmaW5lIEFEQ19TUVIyX1NRMTlfMSAgICAgICAgICAgICAgICAgICAgICAoMHgwMlUgPDwgQURDX1NRUjJfU1ExOV9Qb3MpICAgICAgLyohPCAweDAwMDAwMDAyICovDQojZGVmaW5lIEFEQ19TUVIyX1NRMTlfMiAgICAgICAgICAgICAgICAgICAgICAoMHgwNFUgPDwgQURDX1NRUjJfU1ExOV9Qb3MpICAgICAgLyohPCAweDAwMDAwMDA0ICovDQojZGVmaW5lIEFEQ19TUVIyX1NRMTlfMyAgICAgICAgICAgICAgICAgICAgICAoMHgwOFUgPDwgQURDX1NRUjJfU1ExOV9Qb3MpICAgICAgLyohPCAweDAwMDAwMDA4ICovDQojZGVmaW5lIEFEQ19TUVIyX1NRMTlfNCAgICAgICAgICAgICAgICAgICAgICAoMHgxMFUgPDwgQURDX1NRUjJfU1ExOV9Qb3MpICAgICAgLyohPCAweDAwMDAwMDEwICovDQoNCiNkZWZpbmUgQURDX1NRUjJfU1EyMF9Qb3MgICAgICAgICAgICAgICAgICAgICg1VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgQURDX1NRUjJfU1EyMF9Nc2sgICAgICAgICAgICAgICAgICAgICgweDFGVSA8PCBBRENfU1FSMl9TUTIwX1BvcykgICAgICAvKiE8IDB4MDAwMDAzRTAgKi8NCiNkZWZpbmUgQURDX1NRUjJfU1EyMCAgICAgICAgICAgICAgICAgICAgICAgIEFEQ19TUVIyX1NRMjBfTXNrICAgICAgICAgICAgICAgICAvKiE8IEFEQyBncm91cCByZWd1bGFyIHNlcXVlbmNlciByYW5rIDIwICovDQojZGVmaW5lIEFEQ19TUVIyX1NRMjBfMCAgICAgICAgICAgICAgICAgICAgICAoMHgwMVUgPDwgQURDX1NRUjJfU1EyMF9Qb3MpICAgICAgLyohPCAweDAwMDAwMDIwICovDQojZGVmaW5lIEFEQ19TUVIyX1NRMjBfMSAgICAgICAgICAgICAgICAgICAgICAoMHgwMlUgPDwgQURDX1NRUjJfU1EyMF9Qb3MpICAgICAgLyohPCAweDAwMDAwMDQwICovDQojZGVmaW5lIEFEQ19TUVIyX1NRMjBfMiAgICAgICAgICAgICAgICAgICAgICAoMHgwNFUgPDwgQURDX1NRUjJfU1EyMF9Qb3MpICAgICAgLyohPCAweDAwMDAwMDgwICovDQojZGVmaW5lIEFEQ19TUVIyX1NRMjBfMyAgICAgICAgICAgICAgICAgICAgICAoMHgwOFUgPDwgQURDX1NRUjJfU1EyMF9Qb3MpICAgICAgLyohPCAweDAwMDAwMTAwICovDQojZGVmaW5lIEFEQ19TUVIyX1NRMjBfNCAgICAgICAgICAgICAgICAgICAgICAoMHgxMFUgPDwgQURDX1NRUjJfU1EyMF9Qb3MpICAgICAgLyohPCAweDAwMDAwMjAwICovDQoNCiNkZWZpbmUgQURDX1NRUjJfU1EyMV9Qb3MgICAgICAgICAgICAgICAgICAgICgxMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgQURDX1NRUjJfU1EyMV9Nc2sgICAgICAgICAgICAgICAgICAgICgweDFGVSA8PCBBRENfU1FSMl9TUTIxX1BvcykgICAgICAvKiE8IDB4MDAwMDdDMDAgKi8NCiNkZWZpbmUgQURDX1NRUjJfU1EyMSAgICAgICAgICAgICAgICAgICAgICAgIEFEQ19TUVIyX1NRMjFfTXNrICAgICAgICAgICAgICAgICAvKiE8IEFEQyBncm91cCByZWd1bGFyIHNlcXVlbmNlciByYW5rIDIxICovDQojZGVmaW5lIEFEQ19TUVIyX1NRMjFfMCAgICAgICAgICAgICAgICAgICAgICAoMHgwMVUgPDwgQURDX1NRUjJfU1EyMV9Qb3MpICAgICAgLyohPCAweDAwMDAwNDAwICovDQojZGVmaW5lIEFEQ19TUVIyX1NRMjFfMSAgICAgICAgICAgICAgICAgICAgICAoMHgwMlUgPDwgQURDX1NRUjJfU1EyMV9Qb3MpICAgICAgLyohPCAweDAwMDAwODAwICovDQojZGVmaW5lIEFEQ19TUVIyX1NRMjFfMiAgICAgICAgICAgICAgICAgICAgICAoMHgwNFUgPDwgQURDX1NRUjJfU1EyMV9Qb3MpICAgICAgLyohPCAweDAwMDAxMDAwICovDQojZGVmaW5lIEFEQ19TUVIyX1NRMjFfMyAgICAgICAgICAgICAgICAgICAgICAoMHgwOFUgPDwgQURDX1NRUjJfU1EyMV9Qb3MpICAgICAgLyohPCAweDAwMDAyMDAwICovDQojZGVmaW5lIEFEQ19TUVIyX1NRMjFfNCAgICAgICAgICAgICAgICAgICAgICAoMHgxMFUgPDwgQURDX1NRUjJfU1EyMV9Qb3MpICAgICAgLyohPCAweDAwMDA0MDAwICovDQoNCiNkZWZpbmUgQURDX1NRUjJfU1EyMl9Qb3MgICAgICAgICAgICAgICAgICAgICgxNVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgQURDX1NRUjJfU1EyMl9Nc2sgICAgICAgICAgICAgICAgICAgICgweDFGVSA8PCBBRENfU1FSMl9TUTIyX1BvcykgICAgICAvKiE8IDB4MDAwRjgwMDAgKi8NCiNkZWZpbmUgQURDX1NRUjJfU1EyMiAgICAgICAgICAgICAgICAgICAgICAgIEFEQ19TUVIyX1NRMjJfTXNrICAgICAgICAgICAgICAgICAvKiE8IEFEQyBncm91cCByZWd1bGFyIHNlcXVlbmNlciByYW5rIDIyICovDQojZGVmaW5lIEFEQ19TUVIyX1NRMjJfMCAgICAgICAgICAgICAgICAgICAgICAoMHgwMVUgPDwgQURDX1NRUjJfU1EyMl9Qb3MpICAgICAgLyohPCAweDAwMDA4MDAwICovDQojZGVmaW5lIEFEQ19TUVIyX1NRMjJfMSAgICAgICAgICAgICAgICAgICAgICAoMHgwMlUgPDwgQURDX1NRUjJfU1EyMl9Qb3MpICAgICAgLyohPCAweDAwMDEwMDAwICovDQojZGVmaW5lIEFEQ19TUVIyX1NRMjJfMiAgICAgICAgICAgICAgICAgICAgICAoMHgwNFUgPDwgQURDX1NRUjJfU1EyMl9Qb3MpICAgICAgLyohPCAweDAwMDIwMDAwICovDQojZGVmaW5lIEFEQ19TUVIyX1NRMjJfMyAgICAgICAgICAgICAgICAgICAgICAoMHgwOFUgPDwgQURDX1NRUjJfU1EyMl9Qb3MpICAgICAgLyohPCAweDAwMDQwMDAwICovDQojZGVmaW5lIEFEQ19TUVIyX1NRMjJfNCAgICAgICAgICAgICAgICAgICAgICAoMHgxMFUgPDwgQURDX1NRUjJfU1EyMl9Qb3MpICAgICAgLyohPCAweDAwMDgwMDAwICovDQoNCiNkZWZpbmUgQURDX1NRUjJfU1EyM19Qb3MgICAgICAgICAgICAgICAgICAgICgyMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgQURDX1NRUjJfU1EyM19Nc2sgICAgICAgICAgICAgICAgICAgICgweDFGVSA8PCBBRENfU1FSMl9TUTIzX1BvcykgICAgICAvKiE8IDB4MDFGMDAwMDAgKi8NCiNkZWZpbmUgQURDX1NRUjJfU1EyMyAgICAgICAgICAgICAgICAgICAgICAgIEFEQ19TUVIyX1NRMjNfTXNrICAgICAgICAgICAgICAgICAvKiE8IEFEQyBncm91cCByZWd1bGFyIHNlcXVlbmNlciByYW5rIDIzICovDQojZGVmaW5lIEFEQ19TUVIyX1NRMjNfMCAgICAgICAgICAgICAgICAgICAgICAoMHgwMVUgPDwgQURDX1NRUjJfU1EyM19Qb3MpICAgICAgLyohPCAweDAwMTAwMDAwICovDQojZGVmaW5lIEFEQ19TUVIyX1NRMjNfMSAgICAgICAgICAgICAgICAgICAgICAoMHgwMlUgPDwgQURDX1NRUjJfU1EyM19Qb3MpICAgICAgLyohPCAweDAwMjAwMDAwICovDQojZGVmaW5lIEFEQ19TUVIyX1NRMjNfMiAgICAgICAgICAgICAgICAgICAgICAoMHgwNFUgPDwgQURDX1NRUjJfU1EyM19Qb3MpICAgICAgLyohPCAweDAwNDAwMDAwICovDQojZGVmaW5lIEFEQ19TUVIyX1NRMjNfMyAgICAgICAgICAgICAgICAgICAgICAoMHgwOFUgPDwgQURDX1NRUjJfU1EyM19Qb3MpICAgICAgLyohPCAweDAwODAwMDAwICovDQojZGVmaW5lIEFEQ19TUVIyX1NRMjNfNCAgICAgICAgICAgICAgICAgICAgICAoMHgxMFUgPDwgQURDX1NRUjJfU1EyM19Qb3MpICAgICAgLyohPCAweDAxMDAwMDAwICovDQoNCiNkZWZpbmUgQURDX1NRUjJfU1EyNF9Qb3MgICAgICAgICAgICAgICAgICAgICgyNVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgQURDX1NRUjJfU1EyNF9Nc2sgICAgICAgICAgICAgICAgICAgICgweDFGVSA8PCBBRENfU1FSMl9TUTI0X1BvcykgICAgICAvKiE8IDB4M0UwMDAwMDAgKi8NCiNkZWZpbmUgQURDX1NRUjJfU1EyNCAgICAgICAgICAgICAgICAgICAgICAgIEFEQ19TUVIyX1NRMjRfTXNrICAgICAgICAgICAgICAgICAvKiE8IEFEQyBncm91cCByZWd1bGFyIHNlcXVlbmNlciByYW5rIDI0ICovDQojZGVmaW5lIEFEQ19TUVIyX1NRMjRfMCAgICAgICAgICAgICAgICAgICAgICAoMHgwMVUgPDwgQURDX1NRUjJfU1EyNF9Qb3MpICAgICAgLyohPCAweDAyMDAwMDAwICovDQojZGVmaW5lIEFEQ19TUVIyX1NRMjRfMSAgICAgICAgICAgICAgICAgICAgICAoMHgwMlUgPDwgQURDX1NRUjJfU1EyNF9Qb3MpICAgICAgLyohPCAweDA0MDAwMDAwICovDQojZGVmaW5lIEFEQ19TUVIyX1NRMjRfMiAgICAgICAgICAgICAgICAgICAgICAoMHgwNFUgPDwgQURDX1NRUjJfU1EyNF9Qb3MpICAgICAgLyohPCAweDA4MDAwMDAwICovDQojZGVmaW5lIEFEQ19TUVIyX1NRMjRfMyAgICAgICAgICAgICAgICAgICAgICAoMHgwOFUgPDwgQURDX1NRUjJfU1EyNF9Qb3MpICAgICAgLyohPCAweDEwMDAwMDAwICovDQojZGVmaW5lIEFEQ19TUVIyX1NRMjRfNCAgICAgICAgICAgICAgICAgICAgICAoMHgxMFUgPDwgQURDX1NRUjJfU1EyNF9Qb3MpICAgICAgLyohPCAweDIwMDAwMDAwICovDQoNCi8qKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgQURDX1NRUjMgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIEFEQ19TUVIzX1NRMTNfUG9zICAgICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEFEQ19TUVIzX1NRMTNfTXNrICAgICAgICAgICAgICAgICAgICAoMHgxRlUgPDwgQURDX1NRUjNfU1ExM19Qb3MpICAgICAgLyohPCAweDAwMDAwMDFGICovDQojZGVmaW5lIEFEQ19TUVIzX1NRMTMgICAgICAgICAgICAgICAgICAgICAgICBBRENfU1FSM19TUTEzX01zayAgICAgICAgICAgICAgICAgLyohPCBBREMgZ3JvdXAgcmVndWxhciBzZXF1ZW5jZXIgcmFuayAxMyAqLw0KI2RlZmluZSBBRENfU1FSM19TUTEzXzAgICAgICAgICAgICAgICAgICAgICAgKDB4MDFVIDw8IEFEQ19TUVIzX1NRMTNfUG9zKSAgICAgIC8qITwgMHgwMDAwMDAwMSAqLw0KI2RlZmluZSBBRENfU1FSM19TUTEzXzEgICAgICAgICAgICAgICAgICAgICAgKDB4MDJVIDw8IEFEQ19TUVIzX1NRMTNfUG9zKSAgICAgIC8qITwgMHgwMDAwMDAwMiAqLw0KI2RlZmluZSBBRENfU1FSM19TUTEzXzIgICAgICAgICAgICAgICAgICAgICAgKDB4MDRVIDw8IEFEQ19TUVIzX1NRMTNfUG9zKSAgICAgIC8qITwgMHgwMDAwMDAwNCAqLw0KI2RlZmluZSBBRENfU1FSM19TUTEzXzMgICAgICAgICAgICAgICAgICAgICAgKDB4MDhVIDw8IEFEQ19TUVIzX1NRMTNfUG9zKSAgICAgIC8qITwgMHgwMDAwMDAwOCAqLw0KI2RlZmluZSBBRENfU1FSM19TUTEzXzQgICAgICAgICAgICAgICAgICAgICAgKDB4MTBVIDw8IEFEQ19TUVIzX1NRMTNfUG9zKSAgICAgIC8qITwgMHgwMDAwMDAxMCAqLw0KDQojZGVmaW5lIEFEQ19TUVIzX1NRMTRfUG9zICAgICAgICAgICAgICAgICAgICAoNVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEFEQ19TUVIzX1NRMTRfTXNrICAgICAgICAgICAgICAgICAgICAoMHgxRlUgPDwgQURDX1NRUjNfU1ExNF9Qb3MpICAgICAgLyohPCAweDAwMDAwM0UwICovDQojZGVmaW5lIEFEQ19TUVIzX1NRMTQgICAgICAgICAgICAgICAgICAgICAgICBBRENfU1FSM19TUTE0X01zayAgICAgICAgICAgICAgICAgLyohPCBBREMgZ3JvdXAgcmVndWxhciBzZXF1ZW5jZXIgcmFuayAxNCAqLw0KI2RlZmluZSBBRENfU1FSM19TUTE0XzAgICAgICAgICAgICAgICAgICAgICAgKDB4MDFVIDw8IEFEQ19TUVIzX1NRMTRfUG9zKSAgICAgIC8qITwgMHgwMDAwMDAyMCAqLw0KI2RlZmluZSBBRENfU1FSM19TUTE0XzEgICAgICAgICAgICAgICAgICAgICAgKDB4MDJVIDw8IEFEQ19TUVIzX1NRMTRfUG9zKSAgICAgIC8qITwgMHgwMDAwMDA0MCAqLw0KI2RlZmluZSBBRENfU1FSM19TUTE0XzIgICAgICAgICAgICAgICAgICAgICAgKDB4MDRVIDw8IEFEQ19TUVIzX1NRMTRfUG9zKSAgICAgIC8qITwgMHgwMDAwMDA4MCAqLw0KI2RlZmluZSBBRENfU1FSM19TUTE0XzMgICAgICAgICAgICAgICAgICAgICAgKDB4MDhVIDw8IEFEQ19TUVIzX1NRMTRfUG9zKSAgICAgIC8qITwgMHgwMDAwMDEwMCAqLw0KI2RlZmluZSBBRENfU1FSM19TUTE0XzQgICAgICAgICAgICAgICAgICAgICAgKDB4MTBVIDw8IEFEQ19TUVIzX1NRMTRfUG9zKSAgICAgIC8qITwgMHgwMDAwMDIwMCAqLw0KDQojZGVmaW5lIEFEQ19TUVIzX1NRMTVfUG9zICAgICAgICAgICAgICAgICAgICAoMTBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEFEQ19TUVIzX1NRMTVfTXNrICAgICAgICAgICAgICAgICAgICAoMHgxRlUgPDwgQURDX1NRUjNfU1ExNV9Qb3MpICAgICAgLyohPCAweDAwMDA3QzAwICovDQojZGVmaW5lIEFEQ19TUVIzX1NRMTUgICAgICAgICAgICAgICAgICAgICAgICBBRENfU1FSM19TUTE1X01zayAgICAgICAgICAgICAgICAgLyohPCBBREMgZ3JvdXAgcmVndWxhciBzZXF1ZW5jZXIgcmFuayAxNSAqLw0KI2RlZmluZSBBRENfU1FSM19TUTE1XzAgICAgICAgICAgICAgICAgICAgICAgKDB4MDFVIDw8IEFEQ19TUVIzX1NRMTVfUG9zKSAgICAgIC8qITwgMHgwMDAwMDQwMCAqLw0KI2RlZmluZSBBRENfU1FSM19TUTE1XzEgICAgICAgICAgICAgICAgICAgICAgKDB4MDJVIDw8IEFEQ19TUVIzX1NRMTVfUG9zKSAgICAgIC8qITwgMHgwMDAwMDgwMCAqLw0KI2RlZmluZSBBRENfU1FSM19TUTE1XzIgICAgICAgICAgICAgICAgICAgICAgKDB4MDRVIDw8IEFEQ19TUVIzX1NRMTVfUG9zKSAgICAgIC8qITwgMHgwMDAwMTAwMCAqLw0KI2RlZmluZSBBRENfU1FSM19TUTE1XzMgICAgICAgICAgICAgICAgICAgICAgKDB4MDhVIDw8IEFEQ19TUVIzX1NRMTVfUG9zKSAgICAgIC8qITwgMHgwMDAwMjAwMCAqLw0KI2RlZmluZSBBRENfU1FSM19TUTE1XzQgICAgICAgICAgICAgICAgICAgICAgKDB4MTBVIDw8IEFEQ19TUVIzX1NRMTVfUG9zKSAgICAgIC8qITwgMHgwMDAwNDAwMCAqLw0KDQojZGVmaW5lIEFEQ19TUVIzX1NRMTZfUG9zICAgICAgICAgICAgICAgICAgICAoMTVVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEFEQ19TUVIzX1NRMTZfTXNrICAgICAgICAgICAgICAgICAgICAoMHgxRlUgPDwgQURDX1NRUjNfU1ExNl9Qb3MpICAgICAgLyohPCAweDAwMEY4MDAwICovDQojZGVmaW5lIEFEQ19TUVIzX1NRMTYgICAgICAgICAgICAgICAgICAgICAgICBBRENfU1FSM19TUTE2X01zayAgICAgICAgICAgICAgICAgLyohPCBBREMgZ3JvdXAgcmVndWxhciBzZXF1ZW5jZXIgcmFuayAxNiAqLw0KI2RlZmluZSBBRENfU1FSM19TUTE2XzAgICAgICAgICAgICAgICAgICAgICAgKDB4MDFVIDw8IEFEQ19TUVIzX1NRMTZfUG9zKSAgICAgIC8qITwgMHgwMDAwODAwMCAqLw0KI2RlZmluZSBBRENfU1FSM19TUTE2XzEgICAgICAgICAgICAgICAgICAgICAgKDB4MDJVIDw8IEFEQ19TUVIzX1NRMTZfUG9zKSAgICAgIC8qITwgMHgwMDAxMDAwMCAqLw0KI2RlZmluZSBBRENfU1FSM19TUTE2XzIgICAgICAgICAgICAgICAgICAgICAgKDB4MDRVIDw8IEFEQ19TUVIzX1NRMTZfUG9zKSAgICAgIC8qITwgMHgwMDAyMDAwMCAqLw0KI2RlZmluZSBBRENfU1FSM19TUTE2XzMgICAgICAgICAgICAgICAgICAgICAgKDB4MDhVIDw8IEFEQ19TUVIzX1NRMTZfUG9zKSAgICAgIC8qITwgMHgwMDA0MDAwMCAqLw0KI2RlZmluZSBBRENfU1FSM19TUTE2XzQgICAgICAgICAgICAgICAgICAgICAgKDB4MTBVIDw8IEFEQ19TUVIzX1NRMTZfUG9zKSAgICAgIC8qITwgMHgwMDA4MDAwMCAqLw0KDQojZGVmaW5lIEFEQ19TUVIzX1NRMTdfUG9zICAgICAgICAgICAgICAgICAgICAoMjBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEFEQ19TUVIzX1NRMTdfTXNrICAgICAgICAgICAgICAgICAgICAoMHgxRlUgPDwgQURDX1NRUjNfU1ExN19Qb3MpICAgICAgLyohPCAweDAxRjAwMDAwICovDQojZGVmaW5lIEFEQ19TUVIzX1NRMTcgICAgICAgICAgICAgICAgICAgICAgICBBRENfU1FSM19TUTE3X01zayAgICAgICAgICAgICAgICAgLyohPCBBREMgZ3JvdXAgcmVndWxhciBzZXF1ZW5jZXIgcmFuayAxNyAqLw0KI2RlZmluZSBBRENfU1FSM19TUTE3XzAgICAgICAgICAgICAgICAgICAgICAgKDB4MDFVIDw8IEFEQ19TUVIzX1NRMTdfUG9zKSAgICAgIC8qITwgMHgwMDEwMDAwMCAqLw0KI2RlZmluZSBBRENfU1FSM19TUTE3XzEgICAgICAgICAgICAgICAgICAgICAgKDB4MDJVIDw8IEFEQ19TUVIzX1NRMTdfUG9zKSAgICAgIC8qITwgMHgwMDIwMDAwMCAqLw0KI2RlZmluZSBBRENfU1FSM19TUTE3XzIgICAgICAgICAgICAgICAgICAgICAgKDB4MDRVIDw8IEFEQ19TUVIzX1NRMTdfUG9zKSAgICAgIC8qITwgMHgwMDQwMDAwMCAqLw0KI2RlZmluZSBBRENfU1FSM19TUTE3XzMgICAgICAgICAgICAgICAgICAgICAgKDB4MDhVIDw8IEFEQ19TUVIzX1NRMTdfUG9zKSAgICAgIC8qITwgMHgwMDgwMDAwMCAqLw0KI2RlZmluZSBBRENfU1FSM19TUTE3XzQgICAgICAgICAgICAgICAgICAgICAgKDB4MTBVIDw8IEFEQ19TUVIzX1NRMTdfUG9zKSAgICAgIC8qITwgMHgwMTAwMDAwMCAqLw0KDQojZGVmaW5lIEFEQ19TUVIzX1NRMThfUG9zICAgICAgICAgICAgICAgICAgICAoMjVVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEFEQ19TUVIzX1NRMThfTXNrICAgICAgICAgICAgICAgICAgICAoMHgxRlUgPDwgQURDX1NRUjNfU1ExOF9Qb3MpICAgICAgLyohPCAweDNFMDAwMDAwICovDQojZGVmaW5lIEFEQ19TUVIzX1NRMTggICAgICAgICAgICAgICAgICAgICAgICBBRENfU1FSM19TUTE4X01zayAgICAgICAgICAgICAgICAgLyohPCBBREMgZ3JvdXAgcmVndWxhciBzZXF1ZW5jZXIgcmFuayAxOCAqLw0KI2RlZmluZSBBRENfU1FSM19TUTE4XzAgICAgICAgICAgICAgICAgICAgICAgKDB4MDFVIDw8IEFEQ19TUVIzX1NRMThfUG9zKSAgICAgIC8qITwgMHgwMjAwMDAwMCAqLw0KI2RlZmluZSBBRENfU1FSM19TUTE4XzEgICAgICAgICAgICAgICAgICAgICAgKDB4MDJVIDw8IEFEQ19TUVIzX1NRMThfUG9zKSAgICAgIC8qITwgMHgwNDAwMDAwMCAqLw0KI2RlZmluZSBBRENfU1FSM19TUTE4XzIgICAgICAgICAgICAgICAgICAgICAgKDB4MDRVIDw8IEFEQ19TUVIzX1NRMThfUG9zKSAgICAgIC8qITwgMHgwODAwMDAwMCAqLw0KI2RlZmluZSBBRENfU1FSM19TUTE4XzMgICAgICAgICAgICAgICAgICAgICAgKDB4MDhVIDw8IEFEQ19TUVIzX1NRMThfUG9zKSAgICAgIC8qITwgMHgxMDAwMDAwMCAqLw0KI2RlZmluZSBBRENfU1FSM19TUTE4XzQgICAgICAgICAgICAgICAgICAgICAgKDB4MTBVIDw8IEFEQ19TUVIzX1NRMThfUG9zKSAgICAgIC8qITwgMHgyMDAwMDAwMCAqLw0KDQovKioqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIEFEQ19TUVI0IHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBBRENfU1FSNF9TUTdfUG9zICAgICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBBRENfU1FSNF9TUTdfTXNrICAgICAgICAgICAgICAgICAgICAgKDB4MUZVIDw8IEFEQ19TUVI0X1NRN19Qb3MpICAgICAgIC8qITwgMHgwMDAwMDAxRiAqLw0KI2RlZmluZSBBRENfU1FSNF9TUTcgICAgICAgICAgICAgICAgICAgICAgICAgQURDX1NRUjRfU1E3X01zayAgICAgICAgICAgICAgICAgIC8qITwgQURDIGdyb3VwIHJlZ3VsYXIgc2VxdWVuY2VyIHJhbmsgNyAqLw0KI2RlZmluZSBBRENfU1FSNF9TUTdfMCAgICAgICAgICAgICAgICAgICAgICAgKDB4MDFVIDw8IEFEQ19TUVI0X1NRN19Qb3MpICAgICAgIC8qITwgMHgwMDAwMDAwMSAqLw0KI2RlZmluZSBBRENfU1FSNF9TUTdfMSAgICAgICAgICAgICAgICAgICAgICAgKDB4MDJVIDw8IEFEQ19TUVI0X1NRN19Qb3MpICAgICAgIC8qITwgMHgwMDAwMDAwMiAqLw0KI2RlZmluZSBBRENfU1FSNF9TUTdfMiAgICAgICAgICAgICAgICAgICAgICAgKDB4MDRVIDw8IEFEQ19TUVI0X1NRN19Qb3MpICAgICAgIC8qITwgMHgwMDAwMDAwNCAqLw0KI2RlZmluZSBBRENfU1FSNF9TUTdfMyAgICAgICAgICAgICAgICAgICAgICAgKDB4MDhVIDw8IEFEQ19TUVI0X1NRN19Qb3MpICAgICAgIC8qITwgMHgwMDAwMDAwOCAqLw0KI2RlZmluZSBBRENfU1FSNF9TUTdfNCAgICAgICAgICAgICAgICAgICAgICAgKDB4MTBVIDw8IEFEQ19TUVI0X1NRN19Qb3MpICAgICAgIC8qITwgMHgwMDAwMDAxMCAqLw0KDQojZGVmaW5lIEFEQ19TUVI0X1NROF9Qb3MgICAgICAgICAgICAgICAgICAgICAoNVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEFEQ19TUVI0X1NROF9Nc2sgICAgICAgICAgICAgICAgICAgICAoMHgxRlUgPDwgQURDX1NRUjRfU1E4X1BvcykgICAgICAgLyohPCAweDAwMDAwM0UwICovDQojZGVmaW5lIEFEQ19TUVI0X1NROCAgICAgICAgICAgICAgICAgICAgICAgICBBRENfU1FSNF9TUThfTXNrICAgICAgICAgICAgICAgICAgLyohPCBBREMgZ3JvdXAgcmVndWxhciBzZXF1ZW5jZXIgcmFuayA4ICovDQojZGVmaW5lIEFEQ19TUVI0X1NROF8wICAgICAgICAgICAgICAgICAgICAgICAoMHgwMVUgPDwgQURDX1NRUjRfU1E4X1BvcykgICAgICAgLyohPCAweDAwMDAwMDIwICovDQojZGVmaW5lIEFEQ19TUVI0X1NROF8xICAgICAgICAgICAgICAgICAgICAgICAoMHgwMlUgPDwgQURDX1NRUjRfU1E4X1BvcykgICAgICAgLyohPCAweDAwMDAwMDQwICovDQojZGVmaW5lIEFEQ19TUVI0X1NROF8yICAgICAgICAgICAgICAgICAgICAgICAoMHgwNFUgPDwgQURDX1NRUjRfU1E4X1BvcykgICAgICAgLyohPCAweDAwMDAwMDgwICovDQojZGVmaW5lIEFEQ19TUVI0X1NROF8zICAgICAgICAgICAgICAgICAgICAgICAoMHgwOFUgPDwgQURDX1NRUjRfU1E4X1BvcykgICAgICAgLyohPCAweDAwMDAwMTAwICovDQojZGVmaW5lIEFEQ19TUVI0X1NROF80ICAgICAgICAgICAgICAgICAgICAgICAoMHgxMFUgPDwgQURDX1NRUjRfU1E4X1BvcykgICAgICAgLyohPCAweDAwMDAwMjAwICovDQoNCiNkZWZpbmUgQURDX1NRUjRfU1E5X1BvcyAgICAgICAgICAgICAgICAgICAgICgxMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgQURDX1NRUjRfU1E5X01zayAgICAgICAgICAgICAgICAgICAgICgweDFGVSA8PCBBRENfU1FSNF9TUTlfUG9zKSAgICAgICAvKiE8IDB4MDAwMDdDMDAgKi8NCiNkZWZpbmUgQURDX1NRUjRfU1E5ICAgICAgICAgICAgICAgICAgICAgICAgIEFEQ19TUVI0X1NROV9Nc2sgICAgICAgICAgICAgICAgICAvKiE8IEFEQyBncm91cCByZWd1bGFyIHNlcXVlbmNlciByYW5rIDkgKi8NCiNkZWZpbmUgQURDX1NRUjRfU1E5XzAgICAgICAgICAgICAgICAgICAgICAgICgweDAxVSA8PCBBRENfU1FSNF9TUTlfUG9zKSAgICAgICAvKiE8IDB4MDAwMDA0MDAgKi8NCiNkZWZpbmUgQURDX1NRUjRfU1E5XzEgICAgICAgICAgICAgICAgICAgICAgICgweDAyVSA8PCBBRENfU1FSNF9TUTlfUG9zKSAgICAgICAvKiE8IDB4MDAwMDA4MDAgKi8NCiNkZWZpbmUgQURDX1NRUjRfU1E5XzIgICAgICAgICAgICAgICAgICAgICAgICgweDA0VSA8PCBBRENfU1FSNF9TUTlfUG9zKSAgICAgICAvKiE8IDB4MDAwMDEwMDAgKi8NCiNkZWZpbmUgQURDX1NRUjRfU1E5XzMgICAgICAgICAgICAgICAgICAgICAgICgweDA4VSA8PCBBRENfU1FSNF9TUTlfUG9zKSAgICAgICAvKiE8IDB4MDAwMDIwMDAgKi8NCiNkZWZpbmUgQURDX1NRUjRfU1E5XzQgICAgICAgICAgICAgICAgICAgICAgICgweDEwVSA8PCBBRENfU1FSNF9TUTlfUG9zKSAgICAgICAvKiE8IDB4MDAwMDQwMDAgKi8NCg0KI2RlZmluZSBBRENfU1FSNF9TUTEwX1BvcyAgICAgICAgICAgICAgICAgICAgKDE1VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBBRENfU1FSNF9TUTEwX01zayAgICAgICAgICAgICAgICAgICAgKDB4MUZVIDw8IEFEQ19TUVI0X1NRMTBfUG9zKSAgICAgIC8qITwgMHgwMDBGODAwMCAqLw0KI2RlZmluZSBBRENfU1FSNF9TUTEwICAgICAgICAgICAgICAgICAgICAgICAgQURDX1NRUjRfU1ExMF9Nc2sgICAgICAgICAgICAgICAgIC8qITwgQURDIGdyb3VwIHJlZ3VsYXIgc2VxdWVuY2VyIHJhbmsgMTAgKi8NCiNkZWZpbmUgQURDX1NRUjRfU1ExMF8wICAgICAgICAgICAgICAgICAgICAgICgweDAxVSA8PCBBRENfU1FSNF9TUTEwX1BvcykgICAgICAvKiE8IDB4MDAwMDgwMDAgKi8NCiNkZWZpbmUgQURDX1NRUjRfU1ExMF8xICAgICAgICAgICAgICAgICAgICAgICgweDAyVSA8PCBBRENfU1FSNF9TUTEwX1BvcykgICAgICAvKiE8IDB4MDAwMTAwMDAgKi8NCiNkZWZpbmUgQURDX1NRUjRfU1ExMF8yICAgICAgICAgICAgICAgICAgICAgICgweDA0VSA8PCBBRENfU1FSNF9TUTEwX1BvcykgICAgICAvKiE8IDB4MDAwMjAwMDAgKi8NCiNkZWZpbmUgQURDX1NRUjRfU1ExMF8zICAgICAgICAgICAgICAgICAgICAgICgweDA4VSA8PCBBRENfU1FSNF9TUTEwX1BvcykgICAgICAvKiE8IDB4MDAwNDAwMDAgKi8NCiNkZWZpbmUgQURDX1NRUjRfU1ExMF80ICAgICAgICAgICAgICAgICAgICAgICgweDEwVSA8PCBBRENfU1FSNF9TUTEwX1BvcykgICAgICAvKiE8IDB4MDAwODAwMDAgKi8NCg0KI2RlZmluZSBBRENfU1FSNF9TUTExX1BvcyAgICAgICAgICAgICAgICAgICAgKDIwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBBRENfU1FSNF9TUTExX01zayAgICAgICAgICAgICAgICAgICAgKDB4MUZVIDw8IEFEQ19TUVI0X1NRMTFfUG9zKSAgICAgIC8qITwgMHgwMUYwMDAwMCAqLw0KI2RlZmluZSBBRENfU1FSNF9TUTExICAgICAgICAgICAgICAgICAgICAgICAgQURDX1NRUjRfU1ExMV9Nc2sgICAgICAgICAgICAgICAgIC8qITwgQURDIGdyb3VwIHJlZ3VsYXIgc2VxdWVuY2VyIHJhbmsgMTEgKi8NCiNkZWZpbmUgQURDX1NRUjRfU1ExMV8wICAgICAgICAgICAgICAgICAgICAgICgweDAxVSA8PCBBRENfU1FSNF9TUTExX1BvcykgICAgICAvKiE8IDB4MDAxMDAwMDAgKi8NCiNkZWZpbmUgQURDX1NRUjRfU1ExMV8xICAgICAgICAgICAgICAgICAgICAgICgweDAyVSA8PCBBRENfU1FSNF9TUTExX1BvcykgICAgICAvKiE8IDB4MDAyMDAwMDAgKi8NCiNkZWZpbmUgQURDX1NRUjRfU1ExMV8yICAgICAgICAgICAgICAgICAgICAgICgweDA0VSA8PCBBRENfU1FSNF9TUTExX1BvcykgICAgICAvKiE8IDB4MDA0MDAwMDAgKi8NCiNkZWZpbmUgQURDX1NRUjRfU1ExMV8zICAgICAgICAgICAgICAgICAgICAgICgweDA4VSA8PCBBRENfU1FSNF9TUTExX1BvcykgICAgICAvKiE8IDB4MDA4MDAwMDAgKi8NCiNkZWZpbmUgQURDX1NRUjRfU1ExMV80ICAgICAgICAgICAgICAgICAgICAgICgweDEwVSA8PCBBRENfU1FSNF9TUTExX1BvcykgICAgICAvKiE8IDB4MDEwMDAwMDAgKi8NCg0KI2RlZmluZSBBRENfU1FSNF9TUTEyX1BvcyAgICAgICAgICAgICAgICAgICAgKDI1VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBBRENfU1FSNF9TUTEyX01zayAgICAgICAgICAgICAgICAgICAgKDB4MUZVIDw8IEFEQ19TUVI0X1NRMTJfUG9zKSAgICAgIC8qITwgMHgzRTAwMDAwMCAqLw0KI2RlZmluZSBBRENfU1FSNF9TUTEyICAgICAgICAgICAgICAgICAgICAgICAgQURDX1NRUjRfU1ExMl9Nc2sgICAgICAgICAgICAgICAgIC8qITwgQURDIGdyb3VwIHJlZ3VsYXIgc2VxdWVuY2VyIHJhbmsgMTIgKi8NCiNkZWZpbmUgQURDX1NRUjRfU1ExMl8wICAgICAgICAgICAgICAgICAgICAgICgweDAxVSA8PCBBRENfU1FSNF9TUTEyX1BvcykgICAgICAvKiE8IDB4MDIwMDAwMDAgKi8NCiNkZWZpbmUgQURDX1NRUjRfU1ExMl8xICAgICAgICAgICAgICAgICAgICAgICgweDAyVSA8PCBBRENfU1FSNF9TUTEyX1BvcykgICAgICAvKiE8IDB4MDQwMDAwMDAgKi8NCiNkZWZpbmUgQURDX1NRUjRfU1ExMl8yICAgICAgICAgICAgICAgICAgICAgICgweDA0VSA8PCBBRENfU1FSNF9TUTEyX1BvcykgICAgICAvKiE8IDB4MDgwMDAwMDAgKi8NCiNkZWZpbmUgQURDX1NRUjRfU1ExMl8zICAgICAgICAgICAgICAgICAgICAgICgweDA4VSA8PCBBRENfU1FSNF9TUTEyX1BvcykgICAgICAvKiE8IDB4MTAwMDAwMDAgKi8NCiNkZWZpbmUgQURDX1NRUjRfU1ExMl80ICAgICAgICAgICAgICAgICAgICAgICgweDEwVSA8PCBBRENfU1FSNF9TUTEyX1BvcykgICAgICAvKiE8IDB4MjAwMDAwMDAgKi8NCg0KLyoqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBBRENfU1FSNSByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgQURDX1NRUjVfU1ExX1BvcyAgICAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgQURDX1NRUjVfU1ExX01zayAgICAgICAgICAgICAgICAgICAgICgweDFGVSA8PCBBRENfU1FSNV9TUTFfUG9zKSAgICAgICAvKiE8IDB4MDAwMDAwMUYgKi8NCiNkZWZpbmUgQURDX1NRUjVfU1ExICAgICAgICAgICAgICAgICAgICAgICAgIEFEQ19TUVI1X1NRMV9Nc2sgICAgICAgICAgICAgICAgICAvKiE8IEFEQyBncm91cCByZWd1bGFyIHNlcXVlbmNlciByYW5rIDEgKi8NCiNkZWZpbmUgQURDX1NRUjVfU1ExXzAgICAgICAgICAgICAgICAgICAgICAgICgweDAxVSA8PCBBRENfU1FSNV9TUTFfUG9zKSAgICAgICAvKiE8IDB4MDAwMDAwMDEgKi8NCiNkZWZpbmUgQURDX1NRUjVfU1ExXzEgICAgICAgICAgICAgICAgICAgICAgICgweDAyVSA8PCBBRENfU1FSNV9TUTFfUG9zKSAgICAgICAvKiE8IDB4MDAwMDAwMDIgKi8NCiNkZWZpbmUgQURDX1NRUjVfU1ExXzIgICAgICAgICAgICAgICAgICAgICAgICgweDA0VSA8PCBBRENfU1FSNV9TUTFfUG9zKSAgICAgICAvKiE8IDB4MDAwMDAwMDQgKi8NCiNkZWZpbmUgQURDX1NRUjVfU1ExXzMgICAgICAgICAgICAgICAgICAgICAgICgweDA4VSA8PCBBRENfU1FSNV9TUTFfUG9zKSAgICAgICAvKiE8IDB4MDAwMDAwMDggKi8NCiNkZWZpbmUgQURDX1NRUjVfU1ExXzQgICAgICAgICAgICAgICAgICAgICAgICgweDEwVSA8PCBBRENfU1FSNV9TUTFfUG9zKSAgICAgICAvKiE8IDB4MDAwMDAwMTAgKi8NCg0KI2RlZmluZSBBRENfU1FSNV9TUTJfUG9zICAgICAgICAgICAgICAgICAgICAgKDVVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBBRENfU1FSNV9TUTJfTXNrICAgICAgICAgICAgICAgICAgICAgKDB4MUZVIDw8IEFEQ19TUVI1X1NRMl9Qb3MpICAgICAgIC8qITwgMHgwMDAwMDNFMCAqLw0KI2RlZmluZSBBRENfU1FSNV9TUTIgICAgICAgICAgICAgICAgICAgICAgICAgQURDX1NRUjVfU1EyX01zayAgICAgICAgICAgICAgICAgIC8qITwgQURDIGdyb3VwIHJlZ3VsYXIgc2VxdWVuY2VyIHJhbmsgMiAqLw0KI2RlZmluZSBBRENfU1FSNV9TUTJfMCAgICAgICAgICAgICAgICAgICAgICAgKDB4MDFVIDw8IEFEQ19TUVI1X1NRMl9Qb3MpICAgICAgIC8qITwgMHgwMDAwMDAyMCAqLw0KI2RlZmluZSBBRENfU1FSNV9TUTJfMSAgICAgICAgICAgICAgICAgICAgICAgKDB4MDJVIDw8IEFEQ19TUVI1X1NRMl9Qb3MpICAgICAgIC8qITwgMHgwMDAwMDA0MCAqLw0KI2RlZmluZSBBRENfU1FSNV9TUTJfMiAgICAgICAgICAgICAgICAgICAgICAgKDB4MDRVIDw8IEFEQ19TUVI1X1NRMl9Qb3MpICAgICAgIC8qITwgMHgwMDAwMDA4MCAqLw0KI2RlZmluZSBBRENfU1FSNV9TUTJfMyAgICAgICAgICAgICAgICAgICAgICAgKDB4MDhVIDw8IEFEQ19TUVI1X1NRMl9Qb3MpICAgICAgIC8qITwgMHgwMDAwMDEwMCAqLw0KI2RlZmluZSBBRENfU1FSNV9TUTJfNCAgICAgICAgICAgICAgICAgICAgICAgKDB4MTBVIDw8IEFEQ19TUVI1X1NRMl9Qb3MpICAgICAgIC8qITwgMHgwMDAwMDIwMCAqLw0KDQojZGVmaW5lIEFEQ19TUVI1X1NRM19Qb3MgICAgICAgICAgICAgICAgICAgICAoMTBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEFEQ19TUVI1X1NRM19Nc2sgICAgICAgICAgICAgICAgICAgICAoMHgxRlUgPDwgQURDX1NRUjVfU1EzX1BvcykgICAgICAgLyohPCAweDAwMDA3QzAwICovDQojZGVmaW5lIEFEQ19TUVI1X1NRMyAgICAgICAgICAgICAgICAgICAgICAgICBBRENfU1FSNV9TUTNfTXNrICAgICAgICAgICAgICAgICAgLyohPCBBREMgZ3JvdXAgcmVndWxhciBzZXF1ZW5jZXIgcmFuayAzICovDQojZGVmaW5lIEFEQ19TUVI1X1NRM18wICAgICAgICAgICAgICAgICAgICAgICAoMHgwMVUgPDwgQURDX1NRUjVfU1EzX1BvcykgICAgICAgLyohPCAweDAwMDAwNDAwICovDQojZGVmaW5lIEFEQ19TUVI1X1NRM18xICAgICAgICAgICAgICAgICAgICAgICAoMHgwMlUgPDwgQURDX1NRUjVfU1EzX1BvcykgICAgICAgLyohPCAweDAwMDAwODAwICovDQojZGVmaW5lIEFEQ19TUVI1X1NRM18yICAgICAgICAgICAgICAgICAgICAgICAoMHgwNFUgPDwgQURDX1NRUjVfU1EzX1BvcykgICAgICAgLyohPCAweDAwMDAxMDAwICovDQojZGVmaW5lIEFEQ19TUVI1X1NRM18zICAgICAgICAgICAgICAgICAgICAgICAoMHgwOFUgPDwgQURDX1NRUjVfU1EzX1BvcykgICAgICAgLyohPCAweDAwMDAyMDAwICovDQojZGVmaW5lIEFEQ19TUVI1X1NRM180ICAgICAgICAgICAgICAgICAgICAgICAoMHgxMFUgPDwgQURDX1NRUjVfU1EzX1BvcykgICAgICAgLyohPCAweDAwMDA0MDAwICovDQoNCiNkZWZpbmUgQURDX1NRUjVfU1E0X1BvcyAgICAgICAgICAgICAgICAgICAgICgxNVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgQURDX1NRUjVfU1E0X01zayAgICAgICAgICAgICAgICAgICAgICgweDFGVSA8PCBBRENfU1FSNV9TUTRfUG9zKSAgICAgICAvKiE8IDB4MDAwRjgwMDAgKi8NCiNkZWZpbmUgQURDX1NRUjVfU1E0ICAgICAgICAgICAgICAgICAgICAgICAgIEFEQ19TUVI1X1NRNF9Nc2sgICAgICAgICAgICAgICAgICAvKiE8IEFEQyBncm91cCByZWd1bGFyIHNlcXVlbmNlciByYW5rIDQgKi8NCiNkZWZpbmUgQURDX1NRUjVfU1E0XzAgICAgICAgICAgICAgICAgICAgICAgICgweDAxVSA8PCBBRENfU1FSNV9TUTRfUG9zKSAgICAgICAvKiE8IDB4MDAwMDgwMDAgKi8NCiNkZWZpbmUgQURDX1NRUjVfU1E0XzEgICAgICAgICAgICAgICAgICAgICAgICgweDAyVSA8PCBBRENfU1FSNV9TUTRfUG9zKSAgICAgICAvKiE8IDB4MDAwMTAwMDAgKi8NCiNkZWZpbmUgQURDX1NRUjVfU1E0XzIgICAgICAgICAgICAgICAgICAgICAgICgweDA0VSA8PCBBRENfU1FSNV9TUTRfUG9zKSAgICAgICAvKiE8IDB4MDAwMjAwMDAgKi8NCiNkZWZpbmUgQURDX1NRUjVfU1E0XzMgICAgICAgICAgICAgICAgICAgICAgICgweDA4VSA8PCBBRENfU1FSNV9TUTRfUG9zKSAgICAgICAvKiE8IDB4MDAwNDAwMDAgKi8NCiNkZWZpbmUgQURDX1NRUjVfU1E0XzQgICAgICAgICAgICAgICAgICAgICAgICgweDEwVSA8PCBBRENfU1FSNV9TUTRfUG9zKSAgICAgICAvKiE8IDB4MDAwODAwMDAgKi8NCg0KI2RlZmluZSBBRENfU1FSNV9TUTVfUG9zICAgICAgICAgICAgICAgICAgICAgKDIwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBBRENfU1FSNV9TUTVfTXNrICAgICAgICAgICAgICAgICAgICAgKDB4MUZVIDw8IEFEQ19TUVI1X1NRNV9Qb3MpICAgICAgIC8qITwgMHgwMUYwMDAwMCAqLw0KI2RlZmluZSBBRENfU1FSNV9TUTUgICAgICAgICAgICAgICAgICAgICAgICAgQURDX1NRUjVfU1E1X01zayAgICAgICAgICAgICAgICAgIC8qITwgQURDIGdyb3VwIHJlZ3VsYXIgc2VxdWVuY2VyIHJhbmsgNSAqLw0KI2RlZmluZSBBRENfU1FSNV9TUTVfMCAgICAgICAgICAgICAgICAgICAgICAgKDB4MDFVIDw8IEFEQ19TUVI1X1NRNV9Qb3MpICAgICAgIC8qITwgMHgwMDEwMDAwMCAqLw0KI2RlZmluZSBBRENfU1FSNV9TUTVfMSAgICAgICAgICAgICAgICAgICAgICAgKDB4MDJVIDw8IEFEQ19TUVI1X1NRNV9Qb3MpICAgICAgIC8qITwgMHgwMDIwMDAwMCAqLw0KI2RlZmluZSBBRENfU1FSNV9TUTVfMiAgICAgICAgICAgICAgICAgICAgICAgKDB4MDRVIDw8IEFEQ19TUVI1X1NRNV9Qb3MpICAgICAgIC8qITwgMHgwMDQwMDAwMCAqLw0KI2RlZmluZSBBRENfU1FSNV9TUTVfMyAgICAgICAgICAgICAgICAgICAgICAgKDB4MDhVIDw8IEFEQ19TUVI1X1NRNV9Qb3MpICAgICAgIC8qITwgMHgwMDgwMDAwMCAqLw0KI2RlZmluZSBBRENfU1FSNV9TUTVfNCAgICAgICAgICAgICAgICAgICAgICAgKDB4MTBVIDw8IEFEQ19TUVI1X1NRNV9Qb3MpICAgICAgIC8qITwgMHgwMTAwMDAwMCAqLw0KDQojZGVmaW5lIEFEQ19TUVI1X1NRNl9Qb3MgICAgICAgICAgICAgICAgICAgICAoMjVVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEFEQ19TUVI1X1NRNl9Nc2sgICAgICAgICAgICAgICAgICAgICAoMHgxRlUgPDwgQURDX1NRUjVfU1E2X1BvcykgICAgICAgLyohPCAweDNFMDAwMDAwICovDQojZGVmaW5lIEFEQ19TUVI1X1NRNiAgICAgICAgICAgICAgICAgICAgICAgICBBRENfU1FSNV9TUTZfTXNrICAgICAgICAgICAgICAgICAgLyohPCBBREMgZ3JvdXAgcmVndWxhciBzZXF1ZW5jZXIgcmFuayA2ICovDQojZGVmaW5lIEFEQ19TUVI1X1NRNl8wICAgICAgICAgICAgICAgICAgICAgICAoMHgwMVUgPDwgQURDX1NRUjVfU1E2X1BvcykgICAgICAgLyohPCAweDAyMDAwMDAwICovDQojZGVmaW5lIEFEQ19TUVI1X1NRNl8xICAgICAgICAgICAgICAgICAgICAgICAoMHgwMlUgPDwgQURDX1NRUjVfU1E2X1BvcykgICAgICAgLyohPCAweDA0MDAwMDAwICovDQojZGVmaW5lIEFEQ19TUVI1X1NRNl8yICAgICAgICAgICAgICAgICAgICAgICAoMHgwNFUgPDwgQURDX1NRUjVfU1E2X1BvcykgICAgICAgLyohPCAweDA4MDAwMDAwICovDQojZGVmaW5lIEFEQ19TUVI1X1NRNl8zICAgICAgICAgICAgICAgICAgICAgICAoMHgwOFUgPDwgQURDX1NRUjVfU1E2X1BvcykgICAgICAgLyohPCAweDEwMDAwMDAwICovDQojZGVmaW5lIEFEQ19TUVI1X1NRNl80ICAgICAgICAgICAgICAgICAgICAgICAoMHgxMFUgPDwgQURDX1NRUjVfU1E2X1BvcykgICAgICAgLyohPCAweDIwMDAwMDAwICovDQoNCg0KLyoqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBBRENfSlNRUiByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgQURDX0pTUVJfSlNRMV9Qb3MgICAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgQURDX0pTUVJfSlNRMV9Nc2sgICAgICAgICAgICAgICAgICAgICgweDFGVSA8PCBBRENfSlNRUl9KU1ExX1BvcykgICAgICAvKiE8IDB4MDAwMDAwMUYgKi8NCiNkZWZpbmUgQURDX0pTUVJfSlNRMSAgICAgICAgICAgICAgICAgICAgICAgIEFEQ19KU1FSX0pTUTFfTXNrICAgICAgICAgICAgICAgICAvKiE8IEFEQyBncm91cCBpbmplY3RlZCBzZXF1ZW5jZXIgcmFuayAxICovDQojZGVmaW5lIEFEQ19KU1FSX0pTUTFfMCAgICAgICAgICAgICAgICAgICAgICAoMHgwMVUgPDwgQURDX0pTUVJfSlNRMV9Qb3MpICAgICAgLyohPCAweDAwMDAwMDAxICovDQojZGVmaW5lIEFEQ19KU1FSX0pTUTFfMSAgICAgICAgICAgICAgICAgICAgICAoMHgwMlUgPDwgQURDX0pTUVJfSlNRMV9Qb3MpICAgICAgLyohPCAweDAwMDAwMDAyICovDQojZGVmaW5lIEFEQ19KU1FSX0pTUTFfMiAgICAgICAgICAgICAgICAgICAgICAoMHgwNFUgPDwgQURDX0pTUVJfSlNRMV9Qb3MpICAgICAgLyohPCAweDAwMDAwMDA0ICovDQojZGVmaW5lIEFEQ19KU1FSX0pTUTFfMyAgICAgICAgICAgICAgICAgICAgICAoMHgwOFUgPDwgQURDX0pTUVJfSlNRMV9Qb3MpICAgICAgLyohPCAweDAwMDAwMDA4ICovDQojZGVmaW5lIEFEQ19KU1FSX0pTUTFfNCAgICAgICAgICAgICAgICAgICAgICAoMHgxMFUgPDwgQURDX0pTUVJfSlNRMV9Qb3MpICAgICAgLyohPCAweDAwMDAwMDEwICovDQoNCiNkZWZpbmUgQURDX0pTUVJfSlNRMl9Qb3MgICAgICAgICAgICAgICAgICAgICg1VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgQURDX0pTUVJfSlNRMl9Nc2sgICAgICAgICAgICAgICAgICAgICgweDFGVSA8PCBBRENfSlNRUl9KU1EyX1BvcykgICAgICAvKiE8IDB4MDAwMDAzRTAgKi8NCiNkZWZpbmUgQURDX0pTUVJfSlNRMiAgICAgICAgICAgICAgICAgICAgICAgIEFEQ19KU1FSX0pTUTJfTXNrICAgICAgICAgICAgICAgICAvKiE8IEFEQyBncm91cCBpbmplY3RlZCBzZXF1ZW5jZXIgcmFuayAyICovDQojZGVmaW5lIEFEQ19KU1FSX0pTUTJfMCAgICAgICAgICAgICAgICAgICAgICAoMHgwMVUgPDwgQURDX0pTUVJfSlNRMl9Qb3MpICAgICAgLyohPCAweDAwMDAwMDIwICovDQojZGVmaW5lIEFEQ19KU1FSX0pTUTJfMSAgICAgICAgICAgICAgICAgICAgICAoMHgwMlUgPDwgQURDX0pTUVJfSlNRMl9Qb3MpICAgICAgLyohPCAweDAwMDAwMDQwICovDQojZGVmaW5lIEFEQ19KU1FSX0pTUTJfMiAgICAgICAgICAgICAgICAgICAgICAoMHgwNFUgPDwgQURDX0pTUVJfSlNRMl9Qb3MpICAgICAgLyohPCAweDAwMDAwMDgwICovDQojZGVmaW5lIEFEQ19KU1FSX0pTUTJfMyAgICAgICAgICAgICAgICAgICAgICAoMHgwOFUgPDwgQURDX0pTUVJfSlNRMl9Qb3MpICAgICAgLyohPCAweDAwMDAwMTAwICovDQojZGVmaW5lIEFEQ19KU1FSX0pTUTJfNCAgICAgICAgICAgICAgICAgICAgICAoMHgxMFUgPDwgQURDX0pTUVJfSlNRMl9Qb3MpICAgICAgLyohPCAweDAwMDAwMjAwICovDQoNCiNkZWZpbmUgQURDX0pTUVJfSlNRM19Qb3MgICAgICAgICAgICAgICAgICAgICgxMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgQURDX0pTUVJfSlNRM19Nc2sgICAgICAgICAgICAgICAgICAgICgweDFGVSA8PCBBRENfSlNRUl9KU1EzX1BvcykgICAgICAvKiE8IDB4MDAwMDdDMDAgKi8NCiNkZWZpbmUgQURDX0pTUVJfSlNRMyAgICAgICAgICAgICAgICAgICAgICAgIEFEQ19KU1FSX0pTUTNfTXNrICAgICAgICAgICAgICAgICAvKiE8IEFEQyBncm91cCBpbmplY3RlZCBzZXF1ZW5jZXIgcmFuayAzICovDQojZGVmaW5lIEFEQ19KU1FSX0pTUTNfMCAgICAgICAgICAgICAgICAgICAgICAoMHgwMVUgPDwgQURDX0pTUVJfSlNRM19Qb3MpICAgICAgLyohPCAweDAwMDAwNDAwICovDQojZGVmaW5lIEFEQ19KU1FSX0pTUTNfMSAgICAgICAgICAgICAgICAgICAgICAoMHgwMlUgPDwgQURDX0pTUVJfSlNRM19Qb3MpICAgICAgLyohPCAweDAwMDAwODAwICovDQojZGVmaW5lIEFEQ19KU1FSX0pTUTNfMiAgICAgICAgICAgICAgICAgICAgICAoMHgwNFUgPDwgQURDX0pTUVJfSlNRM19Qb3MpICAgICAgLyohPCAweDAwMDAxMDAwICovDQojZGVmaW5lIEFEQ19KU1FSX0pTUTNfMyAgICAgICAgICAgICAgICAgICAgICAoMHgwOFUgPDwgQURDX0pTUVJfSlNRM19Qb3MpICAgICAgLyohPCAweDAwMDAyMDAwICovDQojZGVmaW5lIEFEQ19KU1FSX0pTUTNfNCAgICAgICAgICAgICAgICAgICAgICAoMHgxMFUgPDwgQURDX0pTUVJfSlNRM19Qb3MpICAgICAgLyohPCAweDAwMDA0MDAwICovDQoNCiNkZWZpbmUgQURDX0pTUVJfSlNRNF9Qb3MgICAgICAgICAgICAgICAgICAgICgxNVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgQURDX0pTUVJfSlNRNF9Nc2sgICAgICAgICAgICAgICAgICAgICgweDFGVSA8PCBBRENfSlNRUl9KU1E0X1BvcykgICAgICAvKiE8IDB4MDAwRjgwMDAgKi8NCiNkZWZpbmUgQURDX0pTUVJfSlNRNCAgICAgICAgICAgICAgICAgICAgICAgIEFEQ19KU1FSX0pTUTRfTXNrICAgICAgICAgICAgICAgICAvKiE8IEFEQyBncm91cCBpbmplY3RlZCBzZXF1ZW5jZXIgcmFuayA0ICovDQojZGVmaW5lIEFEQ19KU1FSX0pTUTRfMCAgICAgICAgICAgICAgICAgICAgICAoMHgwMVUgPDwgQURDX0pTUVJfSlNRNF9Qb3MpICAgICAgLyohPCAweDAwMDA4MDAwICovDQojZGVmaW5lIEFEQ19KU1FSX0pTUTRfMSAgICAgICAgICAgICAgICAgICAgICAoMHgwMlUgPDwgQURDX0pTUVJfSlNRNF9Qb3MpICAgICAgLyohPCAweDAwMDEwMDAwICovDQojZGVmaW5lIEFEQ19KU1FSX0pTUTRfMiAgICAgICAgICAgICAgICAgICAgICAoMHgwNFUgPDwgQURDX0pTUVJfSlNRNF9Qb3MpICAgICAgLyohPCAweDAwMDIwMDAwICovDQojZGVmaW5lIEFEQ19KU1FSX0pTUTRfMyAgICAgICAgICAgICAgICAgICAgICAoMHgwOFUgPDwgQURDX0pTUVJfSlNRNF9Qb3MpICAgICAgLyohPCAweDAwMDQwMDAwICovDQojZGVmaW5lIEFEQ19KU1FSX0pTUTRfNCAgICAgICAgICAgICAgICAgICAgICAoMHgxMFUgPDwgQURDX0pTUVJfSlNRNF9Qb3MpICAgICAgLyohPCAweDAwMDgwMDAwICovDQoNCiNkZWZpbmUgQURDX0pTUVJfSkxfUG9zICAgICAgICAgICAgICAgICAgICAgICgyMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgQURDX0pTUVJfSkxfTXNrICAgICAgICAgICAgICAgICAgICAgICgweDNVIDw8IEFEQ19KU1FSX0pMX1BvcykgICAgICAgICAvKiE8IDB4MDAzMDAwMDAgKi8NCiNkZWZpbmUgQURDX0pTUVJfSkwgICAgICAgICAgICAgICAgICAgICAgICAgIEFEQ19KU1FSX0pMX01zayAgICAgICAgICAgICAgICAgICAvKiE8IEFEQyBncm91cCBpbmplY3RlZCBzZXF1ZW5jZXIgc2NhbiBsZW5ndGggKi8NCiNkZWZpbmUgQURDX0pTUVJfSkxfMCAgICAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IEFEQ19KU1FSX0pMX1BvcykgICAgICAgICAvKiE8IDB4MDAxMDAwMDAgKi8NCiNkZWZpbmUgQURDX0pTUVJfSkxfMSAgICAgICAgICAgICAgICAgICAgICAgICgweDJVIDw8IEFEQ19KU1FSX0pMX1BvcykgICAgICAgICAvKiE8IDB4MDAyMDAwMDAgKi8NCg0KLyoqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBBRENfSkRSMSByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgQURDX0pEUjFfSkRBVEFfUG9zICAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgQURDX0pEUjFfSkRBVEFfTXNrICAgICAgICAgICAgICAgICAgICgweEZGRkZVIDw8IEFEQ19KRFIxX0pEQVRBX1BvcykgICAvKiE8IDB4MDAwMEZGRkYgKi8NCiNkZWZpbmUgQURDX0pEUjFfSkRBVEEgICAgICAgICAgICAgICAgICAgICAgIEFEQ19KRFIxX0pEQVRBX01zayAgICAgICAgICAgICAgICAvKiE8IEFEQyBncm91cCBpbmplY3RlZCBzZXF1ZW5jZXIgcmFuayAxIGNvbnZlcnNpb24gZGF0YSAqLw0KDQovKioqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIEFEQ19KRFIyIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBBRENfSkRSMl9KREFUQV9Qb3MgICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBBRENfSkRSMl9KREFUQV9Nc2sgICAgICAgICAgICAgICAgICAgKDB4RkZGRlUgPDwgQURDX0pEUjJfSkRBVEFfUG9zKSAgIC8qITwgMHgwMDAwRkZGRiAqLw0KI2RlZmluZSBBRENfSkRSMl9KREFUQSAgICAgICAgICAgICAgICAgICAgICAgQURDX0pEUjJfSkRBVEFfTXNrICAgICAgICAgICAgICAgIC8qITwgQURDIGdyb3VwIGluamVjdGVkIHNlcXVlbmNlciByYW5rIDIgY29udmVyc2lvbiBkYXRhICovDQoNCi8qKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgQURDX0pEUjMgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIEFEQ19KRFIzX0pEQVRBX1BvcyAgICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEFEQ19KRFIzX0pEQVRBX01zayAgICAgICAgICAgICAgICAgICAoMHhGRkZGVSA8PCBBRENfSkRSM19KREFUQV9Qb3MpICAgLyohPCAweDAwMDBGRkZGICovDQojZGVmaW5lIEFEQ19KRFIzX0pEQVRBICAgICAgICAgICAgICAgICAgICAgICBBRENfSkRSM19KREFUQV9Nc2sgICAgICAgICAgICAgICAgLyohPCBBREMgZ3JvdXAgaW5qZWN0ZWQgc2VxdWVuY2VyIHJhbmsgMyBjb252ZXJzaW9uIGRhdGEgKi8NCg0KLyoqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBBRENfSkRSNCByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgQURDX0pEUjRfSkRBVEFfUG9zICAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgQURDX0pEUjRfSkRBVEFfTXNrICAgICAgICAgICAgICAgICAgICgweEZGRkZVIDw8IEFEQ19KRFI0X0pEQVRBX1BvcykgICAvKiE8IDB4MDAwMEZGRkYgKi8NCiNkZWZpbmUgQURDX0pEUjRfSkRBVEEgICAgICAgICAgICAgICAgICAgICAgIEFEQ19KRFI0X0pEQVRBX01zayAgICAgICAgICAgICAgICAvKiE8IEFEQyBncm91cCBpbmplY3RlZCBzZXF1ZW5jZXIgcmFuayA0IGNvbnZlcnNpb24gZGF0YSAqLw0KDQovKioqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBBRENfRFIgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBBRENfRFJfREFUQV9Qb3MgICAgICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBBRENfRFJfREFUQV9Nc2sgICAgICAgICAgICAgICAgICAgICAgKDB4RkZGRlUgPDwgQURDX0RSX0RBVEFfUG9zKSAgICAgIC8qITwgMHgwMDAwRkZGRiAqLw0KI2RlZmluZSBBRENfRFJfREFUQSAgICAgICAgICAgICAgICAgICAgICAgICAgQURDX0RSX0RBVEFfTXNrICAgICAgICAgICAgICAgICAgIC8qITwgQURDIGdyb3VwIHJlZ3VsYXIgY29udmVyc2lvbiBkYXRhICovDQoNCi8qKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBBRENfU01QUjAgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIEFEQ19TTVBSMF9TTVAzMF9Qb3MgICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEFEQ19TTVBSMF9TTVAzMF9Nc2sgICAgICAgICAgICAgICAgICAoMHg3VSA8PCBBRENfU01QUjBfU01QMzBfUG9zKSAgICAgLyohPCAweDAwMDAwMDA3ICovDQojZGVmaW5lIEFEQ19TTVBSMF9TTVAzMCAgICAgICAgICAgICAgICAgICAgICBBRENfU01QUjBfU01QMzBfTXNrICAgICAgICAgICAgICAgLyohPCBBREMgY2hhbm5lbCAzMCBzYW1wbGluZyB0aW1lIHNlbGVjdGlvbiAqLw0KI2RlZmluZSBBRENfU01QUjBfU01QMzBfMCAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgQURDX1NNUFIwX1NNUDMwX1BvcykgICAgIC8qITwgMHgwMDAwMDAwMSAqLw0KI2RlZmluZSBBRENfU01QUjBfU01QMzBfMSAgICAgICAgICAgICAgICAgICAgKDB4MlUgPDwgQURDX1NNUFIwX1NNUDMwX1BvcykgICAgIC8qITwgMHgwMDAwMDAwMiAqLw0KI2RlZmluZSBBRENfU01QUjBfU01QMzBfMiAgICAgICAgICAgICAgICAgICAgKDB4NFUgPDwgQURDX1NNUFIwX1NNUDMwX1BvcykgICAgIC8qITwgMHgwMDAwMDAwNCAqLw0KIA0KI2RlZmluZSBBRENfU01QUjBfU01QMzFfUG9zICAgICAgICAgICAgICAgICAgKDNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBBRENfU01QUjBfU01QMzFfTXNrICAgICAgICAgICAgICAgICAgKDB4N1UgPDwgQURDX1NNUFIwX1NNUDMxX1BvcykgICAgIC8qITwgMHgwMDAwMDAzOCAqLw0KI2RlZmluZSBBRENfU01QUjBfU01QMzEgICAgICAgICAgICAgICAgICAgICAgQURDX1NNUFIwX1NNUDMxX01zayAgICAgICAgICAgICAgIC8qITwgQURDIGNoYW5uZWwgMzEgc2FtcGxpbmcgdGltZSBzZWxlY3Rpb24gKi8NCiNkZWZpbmUgQURDX1NNUFIwX1NNUDMxXzAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IEFEQ19TTVBSMF9TTVAzMV9Qb3MpICAgICAvKiE8IDB4MDAwMDAwMDggKi8NCiNkZWZpbmUgQURDX1NNUFIwX1NNUDMxXzEgICAgICAgICAgICAgICAgICAgICgweDJVIDw8IEFEQ19TTVBSMF9TTVAzMV9Qb3MpICAgICAvKiE8IDB4MDAwMDAwMTAgKi8NCiNkZWZpbmUgQURDX1NNUFIwX1NNUDMxXzIgICAgICAgICAgICAgICAgICAgICgweDRVIDw8IEFEQ19TTVBSMF9TTVAzMV9Qb3MpICAgICAvKiE8IDB4MDAwMDAwMjAgKi8NCg0KLyoqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBBRENfQ1NSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgQURDX0NTUl9BV0QxX1BvcyAgICAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgQURDX0NTUl9BV0QxX01zayAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IEFEQ19DU1JfQVdEMV9Qb3MpICAgICAgICAvKiE8IDB4MDAwMDAwMDEgKi8NCiNkZWZpbmUgQURDX0NTUl9BV0QxICAgICAgICAgICAgICAgICAgICAgICAgIEFEQ19DU1JfQVdEMV9Nc2sgICAgICAgICAgICAgICAgICAvKiE8IEFEQyBtdWx0aW1vZGUgbWFzdGVyIGFuYWxvZyB3YXRjaGRvZyAxIGZsYWcgKi8NCiNkZWZpbmUgQURDX0NTUl9FT0NTMV9Qb3MgICAgICAgICAgICAgICAgICAgICgxVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgQURDX0NTUl9FT0NTMV9Nc2sgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IEFEQ19DU1JfRU9DUzFfUG9zKSAgICAgICAvKiE8IDB4MDAwMDAwMDIgKi8NCiNkZWZpbmUgQURDX0NTUl9FT0NTMSAgICAgICAgICAgICAgICAgICAgICAgIEFEQ19DU1JfRU9DUzFfTXNrICAgICAgICAgICAgICAgICAvKiE8IEFEQyBtdWx0aW1vZGUgbWFzdGVyIGdyb3VwIHJlZ3VsYXIgZW5kIG9mIHVuaXRhcnkgY29udmVyc2lvbiBvciBlbmQgb2Ygc2VxdWVuY2UgY29udmVyc2lvbnMgZmxhZyAqLw0KI2RlZmluZSBBRENfQ1NSX0pFT1MxX1BvcyAgICAgICAgICAgICAgICAgICAgKDJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBBRENfQ1NSX0pFT1MxX01zayAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgQURDX0NTUl9KRU9TMV9Qb3MpICAgICAgIC8qITwgMHgwMDAwMDAwNCAqLw0KI2RlZmluZSBBRENfQ1NSX0pFT1MxICAgICAgICAgICAgICAgICAgICAgICAgQURDX0NTUl9KRU9TMV9Nc2sgICAgICAgICAgICAgICAgIC8qITwgQURDIG11bHRpbW9kZSBtYXN0ZXIgZ3JvdXAgaW5qZWN0ZWQgZW5kIG9mIHNlcXVlbmNlIGNvbnZlcnNpb25zIGZsYWcgKi8NCiNkZWZpbmUgQURDX0NTUl9KU1RSVDFfUG9zICAgICAgICAgICAgICAgICAgICgzVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgQURDX0NTUl9KU1RSVDFfTXNrICAgICAgICAgICAgICAgICAgICgweDFVIDw8IEFEQ19DU1JfSlNUUlQxX1BvcykgICAgICAvKiE8IDB4MDAwMDAwMDggKi8NCiNkZWZpbmUgQURDX0NTUl9KU1RSVDEgICAgICAgICAgICAgICAgICAgICAgIEFEQ19DU1JfSlNUUlQxX01zayAgICAgICAgICAgICAgICAvKiE8IEFEQyBtdWx0aW1vZGUgbWFzdGVyIGdyb3VwIGluamVjdGVkIGNvbnZlcnNpb24gc3RhcnQgZmxhZyAqLw0KI2RlZmluZSBBRENfQ1NSX1NUUlQxX1BvcyAgICAgICAgICAgICAgICAgICAgKDRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBBRENfQ1NSX1NUUlQxX01zayAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgQURDX0NTUl9TVFJUMV9Qb3MpICAgICAgIC8qITwgMHgwMDAwMDAxMCAqLw0KI2RlZmluZSBBRENfQ1NSX1NUUlQxICAgICAgICAgICAgICAgICAgICAgICAgQURDX0NTUl9TVFJUMV9Nc2sgICAgICAgICAgICAgICAgIC8qITwgQURDIG11bHRpbW9kZSBtYXN0ZXIgZ3JvdXAgcmVndWxhciBjb252ZXJzaW9uIHN0YXJ0IGZsYWcgKi8NCiNkZWZpbmUgQURDX0NTUl9PVlIxX1BvcyAgICAgICAgICAgICAgICAgICAgICg1VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgQURDX0NTUl9PVlIxX01zayAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IEFEQ19DU1JfT1ZSMV9Qb3MpICAgICAgICAvKiE8IDB4MDAwMDAwMjAgKi8NCiNkZWZpbmUgQURDX0NTUl9PVlIxICAgICAgICAgICAgICAgICAgICAgICAgIEFEQ19DU1JfT1ZSMV9Nc2sgICAgICAgICAgICAgICAgICAvKiE8IEFEQyBtdWx0aW1vZGUgbWFzdGVyIGdyb3VwIHJlZ3VsYXIgb3ZlcnJ1biBmbGFnICovDQojZGVmaW5lIEFEQ19DU1JfQURPTlMxX1BvcyAgICAgICAgICAgICAgICAgICAoNlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEFEQ19DU1JfQURPTlMxX01zayAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBBRENfQ1NSX0FET05TMV9Qb3MpICAgICAgLyohPCAweDAwMDAwMDQwICovDQojZGVmaW5lIEFEQ19DU1JfQURPTlMxICAgICAgICAgICAgICAgICAgICAgICBBRENfQ1NSX0FET05TMV9Nc2sgICAgICAgICAgICAgICAgLyohPCBBREMgbXVsdGltb2RlIG1hc3RlciByZWFkeSBmbGFnICovDQoNCi8qIExlZ2FjeSBkZWZpbmVzICovDQojZGVmaW5lICBBRENfQ1NSX0VPQzEgICAgICAgICAgICAgICAgICAgICAgICAoQURDX0NTUl9FT0NTMSkNCiNkZWZpbmUgIEFEQ19DU1JfSkVPQzEgICAgICAgICAgICAgICAgICAgICAgIChBRENfQ1NSX0pFT1MxKQ0KDQovKioqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIEFEQ19DQ1IgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBBRENfQ0NSX0FEQ1BSRV9Qb3MgICAgICAgICAgICAgICAgICAgKDE2VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBBRENfQ0NSX0FEQ1BSRV9Nc2sgICAgICAgICAgICAgICAgICAgKDB4M1UgPDwgQURDX0NDUl9BRENQUkVfUG9zKSAgICAgIC8qITwgMHgwMDAzMDAwMCAqLw0KI2RlZmluZSBBRENfQ0NSX0FEQ1BSRSAgICAgICAgICAgICAgICAgICAgICAgQURDX0NDUl9BRENQUkVfTXNrICAgICAgICAgICAgICAgIC8qITwgQURDIGNsb2NrIHNvdXJjZSBhc3luY2hyb25vdXMgcHJlc2NhbGVyICovDQojZGVmaW5lIEFEQ19DQ1JfQURDUFJFXzAgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBBRENfQ0NSX0FEQ1BSRV9Qb3MpICAgICAgLyohPCAweDAwMDEwMDAwICovDQojZGVmaW5lIEFEQ19DQ1JfQURDUFJFXzEgICAgICAgICAgICAgICAgICAgICAoMHgyVSA8PCBBRENfQ0NSX0FEQ1BSRV9Qb3MpICAgICAgLyohPCAweDAwMDIwMDAwICovDQojZGVmaW5lIEFEQ19DQ1JfVFNWUkVGRV9Qb3MgICAgICAgICAgICAgICAgICAoMjNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEFEQ19DQ1JfVFNWUkVGRV9Nc2sgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBBRENfQ0NSX1RTVlJFRkVfUG9zKSAgICAgLyohPCAweDAwODAwMDAwICovDQojZGVmaW5lIEFEQ19DQ1JfVFNWUkVGRSAgICAgICAgICAgICAgICAgICAgICBBRENfQ0NSX1RTVlJFRkVfTXNrICAgICAgICAgICAgICAgLyohPCBBREMgaW50ZXJuYWwgcGF0aCB0byBWcmVmSW50IGFuZCB0ZW1wZXJhdHVyZSBzZW5zb3IgZW5hYmxlICovDQoNCi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovDQovKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLw0KLyogICAgICAgICAgICAgICAgICAgICAgQW5hbG9nIENvbXBhcmF0b3JzIChDT01QKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8NCi8qICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovDQovKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLw0KDQovKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgQ09NUF9DU1IgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBDT01QX0NTUl8xMEtQVSAgICAgICAgICAgICAgICAgICAgICAoMHgwMDAwMDAwMVUpICAgICAgICAgICAgICAgICAgICAgIC8qITwgQ29tcGFyYXRvciAxIGlucHV0IHBsdXMgMTBLIHB1bGwtdXAgcmVzaXN0b3IgKi8NCiNkZWZpbmUgQ09NUF9DU1JfNDAwS1BVICAgICAgICAgICAgICAgICAgICAgKDB4MDAwMDAwMDJVKSAgICAgICAgICAgICAgICAgICAgICAvKiE8IENvbXBhcmF0b3IgMSBpbnB1dCBwbHVzIDQwMEsgcHVsbC11cCByZXNpc3RvciAqLw0KI2RlZmluZSBDT01QX0NTUl8xMEtQRCAgICAgICAgICAgICAgICAgICAgICAoMHgwMDAwMDAwNFUpICAgICAgICAgICAgICAgICAgICAgIC8qITwgQ29tcGFyYXRvciAxIGlucHV0IHBsdXMgMTBLIHB1bGwtZG93biByZXNpc3RvciAqLw0KI2RlZmluZSBDT01QX0NTUl80MDBLUEQgICAgICAgICAgICAgICAgICAgICAoMHgwMDAwMDAwOFUpICAgICAgICAgICAgICAgICAgICAgIC8qITwgQ29tcGFyYXRvciAxIGlucHV0IHBsdXMgNDAwSyBwdWxsLWRvd24gcmVzaXN0b3IgKi8NCiNkZWZpbmUgQ09NUF9DU1JfQ01QMUVOX1BvcyAgICAgICAgICAgICAgICAgKDRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgQ09NUF9DU1JfQ01QMUVOX01zayAgICAgICAgICAgICAgICAgKDB4MVUgPDwgQ09NUF9DU1JfQ01QMUVOX1BvcykgICAgICAvKiE8IDB4MDAwMDAwMTAgKi8NCiNkZWZpbmUgQ09NUF9DU1JfQ01QMUVOICAgICAgICAgICAgICAgICAgICAgQ09NUF9DU1JfQ01QMUVOX01zayAgICAgICAgICAgICAgICAvKiE8IENvbXBhcmF0b3IgMSBlbmFibGUgKi8NCiNkZWZpbmUgQ09NUF9DU1JfQ01QMU9VVF9Qb3MgICAgICAgICAgICAgICAgKDdVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgQ09NUF9DU1JfQ01QMU9VVF9Nc2sgICAgICAgICAgICAgICAgKDB4MVUgPDwgQ09NUF9DU1JfQ01QMU9VVF9Qb3MpICAgICAvKiE8IDB4MDAwMDAwODAgKi8NCiNkZWZpbmUgQ09NUF9DU1JfQ01QMU9VVCAgICAgICAgICAgICAgICAgICAgQ09NUF9DU1JfQ01QMU9VVF9Nc2sgICAgICAgICAgICAgICAvKiE8IENvbXBhcmF0b3IgMSBvdXRwdXQgbGV2ZWwgKi8NCiNkZWZpbmUgQ09NUF9DU1JfU1BFRURfUG9zICAgICAgICAgICAgICAgICAgKDEyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgQ09NUF9DU1JfU1BFRURfTXNrICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgQ09NUF9DU1JfU1BFRURfUG9zKSAgICAgICAvKiE8IDB4MDAwMDEwMDAgKi8NCiNkZWZpbmUgQ09NUF9DU1JfU1BFRUQgICAgICAgICAgICAgICAgICAgICAgQ09NUF9DU1JfU1BFRURfTXNrICAgICAgICAgICAgICAgICAvKiE8IENvbXBhcmF0b3IgMiBwb3dlciBtb2RlICovDQojZGVmaW5lIENPTVBfQ1NSX0NNUDJPVVRfUG9zICAgICAgICAgICAgICAgICgxM1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIENPTVBfQ1NSX0NNUDJPVVRfTXNrICAgICAgICAgICAgICAgICgweDFVIDw8IENPTVBfQ1NSX0NNUDJPVVRfUG9zKSAgICAgLyohPCAweDAwMDAyMDAwICovDQojZGVmaW5lIENPTVBfQ1NSX0NNUDJPVVQgICAgICAgICAgICAgICAgICAgIENPTVBfQ1NSX0NNUDJPVVRfTXNrICAgICAgICAgICAgICAgLyohPCBDb21wYXJhdG9yIDIgb3V0cHV0IGxldmVsICovDQoNCiNkZWZpbmUgQ09NUF9DU1JfV05EV0VfUG9zICAgICAgICAgICAgICAgICAgKDE3VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgQ09NUF9DU1JfV05EV0VfTXNrICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgQ09NUF9DU1JfV05EV0VfUG9zKSAgICAgICAvKiE8IDB4MDAwMjAwMDAgKi8NCiNkZWZpbmUgQ09NUF9DU1JfV05EV0UgICAgICAgICAgICAgICAgICAgICAgQ09NUF9DU1JfV05EV0VfTXNrICAgICAgICAgICAgICAgICAvKiE8IFBhaXIgb2YgY29tcGFyYXRvcnMgd2luZG93IG1vZGUuIEJpdCBpbnRlbmRlZCB0byBiZSB1c2VkIHdpdGggQ09NUCBjb21tb24gaW5zdGFuY2UgKENPTVBfQ29tbW9uX1R5cGVEZWYpICAqLw0KDQojZGVmaW5lIENPTVBfQ1NSX0lOU0VMX1BvcyAgICAgICAgICAgICAgICAgICgxOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIENPTVBfQ1NSX0lOU0VMX01zayAgICAgICAgICAgICAgICAgICgweDdVIDw8IENPTVBfQ1NSX0lOU0VMX1BvcykgICAgICAgLyohPCAweDAwMUMwMDAwICovDQojZGVmaW5lIENPTVBfQ1NSX0lOU0VMICAgICAgICAgICAgICAgICAgICAgIENPTVBfQ1NSX0lOU0VMX01zayAgICAgICAgICAgICAgICAgLyohPCBDb21wYXJhdG9yIDIgaW5wdXQgbWludXMgc2VsZWN0aW9uICovDQojZGVmaW5lIENPTVBfQ1NSX0lOU0VMXzAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IENPTVBfQ1NSX0lOU0VMX1BvcykgICAgICAgLyohPCAweDAwMDQwMDAwICovDQojZGVmaW5lIENPTVBfQ1NSX0lOU0VMXzEgICAgICAgICAgICAgICAgICAgICgweDJVIDw8IENPTVBfQ1NSX0lOU0VMX1BvcykgICAgICAgLyohPCAweDAwMDgwMDAwICovDQojZGVmaW5lIENPTVBfQ1NSX0lOU0VMXzIgICAgICAgICAgICAgICAgICAgICgweDRVIDw8IENPTVBfQ1NSX0lOU0VMX1BvcykgICAgICAgLyohPCAweDAwMTAwMDAwICovDQojZGVmaW5lIENPTVBfQ1NSX09VVFNFTF9Qb3MgICAgICAgICAgICAgICAgICgyMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIENPTVBfQ1NSX09VVFNFTF9Nc2sgICAgICAgICAgICAgICAgICgweDdVIDw8IENPTVBfQ1NSX09VVFNFTF9Qb3MpICAgICAgLyohPCAweDAwRTAwMDAwICovDQojZGVmaW5lIENPTVBfQ1NSX09VVFNFTCAgICAgICAgICAgICAgICAgICAgIENPTVBfQ1NSX09VVFNFTF9Nc2sgICAgICAgICAgICAgICAgLyohPCBDb21wYXJhdG9yIDIgb3V0cHV0IHJlZGlyZWN0aW9uICovDQojZGVmaW5lIENPTVBfQ1NSX09VVFNFTF8wICAgICAgICAgICAgICAgICAgICgweDFVIDw8IENPTVBfQ1NSX09VVFNFTF9Qb3MpICAgICAgLyohPCAweDAwMjAwMDAwICovDQojZGVmaW5lIENPTVBfQ1NSX09VVFNFTF8xICAgICAgICAgICAgICAgICAgICgweDJVIDw8IENPTVBfQ1NSX09VVFNFTF9Qb3MpICAgICAgLyohPCAweDAwNDAwMDAwICovDQojZGVmaW5lIENPTVBfQ1NSX09VVFNFTF8yICAgICAgICAgICAgICAgICAgICgweDRVIDw8IENPTVBfQ1NSX09VVFNFTF9Qb3MpICAgICAgLyohPCAweDAwODAwMDAwICovDQoNCi8qIEJpdHMgcHJlc2VudCBpbiBDT01QIHJlZ2lzdGVyIGJ1dCBub3QgcmVsYXRlZCB0byBjb21wYXJhdG9yICovDQovKiAob3IgcGFydGlhbGx5IHJlbGF0ZWQgdG8gY29tcGFyYXRvciwgaW4gYWRkaXRpb24gdG8gb3RoZXIgcGVyaXBoZXJhbHMpICovDQojZGVmaW5lIENPTVBfQ1NSX1NXMV9Qb3MgICAgICAgICAgICAgICAgICAgICg1VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIENPTVBfQ1NSX1NXMV9Nc2sgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IENPTVBfQ1NSX1NXMV9Qb3MpICAgICAgICAgLyohPCAweDAwMDAwMDIwICovDQojZGVmaW5lIENPTVBfQ1NSX1NXMSAgICAgICAgICAgICAgICAgICAgICAgIENPTVBfQ1NSX1NXMV9Nc2sgICAgICAgICAgICAgICAgICAgLyohPCBTVzEgYW5hbG9nIHN3aXRjaCBlbmFibGUgKi8NCiNkZWZpbmUgQ09NUF9DU1JfVlJFRk9VVEVOX1BvcyAgICAgICAgICAgICAgKDE2VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgQ09NUF9DU1JfVlJFRk9VVEVOX01zayAgICAgICAgICAgICAgKDB4MVUgPDwgQ09NUF9DU1JfVlJFRk9VVEVOX1BvcykgICAvKiE8IDB4MDAwMTAwMDAgKi8NCiNkZWZpbmUgQ09NUF9DU1JfVlJFRk9VVEVOICAgICAgICAgICAgICAgICAgQ09NUF9DU1JfVlJFRk9VVEVOX01zayAgICAgICAgICAgICAvKiE8IFZyZWZJbnQgb3V0cHV0IGVuYWJsZSBvbiBHUElPIGdyb3VwIDMgKi8NCg0KI2RlZmluZSBDT01QX0NTUl9GQ0gzX1BvcyAgICAgICAgICAgICAgICAgICAoMjZVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBDT01QX0NTUl9GQ0gzX01zayAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBDT01QX0NTUl9GQ0gzX1BvcykgICAgICAgIC8qITwgMHgwNDAwMDAwMCAqLw0KI2RlZmluZSBDT01QX0NTUl9GQ0gzICAgICAgICAgICAgICAgICAgICAgICBDT01QX0NTUl9GQ0gzX01zayAgICAgICAgICAgICAgICAgIC8qITwgQml0IDI2ICovDQojZGVmaW5lIENPTVBfQ1NSX0ZDSDhfUG9zICAgICAgICAgICAgICAgICAgICgyN1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIENPTVBfQ1NSX0ZDSDhfTXNrICAgICAgICAgICAgICAgICAgICgweDFVIDw8IENPTVBfQ1NSX0ZDSDhfUG9zKSAgICAgICAgLyohPCAweDA4MDAwMDAwICovDQojZGVmaW5lIENPTVBfQ1NSX0ZDSDggICAgICAgICAgICAgICAgICAgICAgIENPTVBfQ1NSX0ZDSDhfTXNrICAgICAgICAgICAgICAgICAgLyohPCBCaXQgMjcgKi8NCiNkZWZpbmUgQ09NUF9DU1JfUkNIMTNfUG9zICAgICAgICAgICAgICAgICAgKDI4VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgQ09NUF9DU1JfUkNIMTNfTXNrICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgQ09NUF9DU1JfUkNIMTNfUG9zKSAgICAgICAvKiE8IDB4MTAwMDAwMDAgKi8NCiNkZWZpbmUgQ09NUF9DU1JfUkNIMTMgICAgICAgICAgICAgICAgICAgICAgQ09NUF9DU1JfUkNIMTNfTXNrICAgICAgICAgICAgICAgICAvKiE8IEJpdCAyOCAqLw0KDQojZGVmaW5lIENPTVBfQ1NSX0NBSUVfUG9zICAgICAgICAgICAgICAgICAgICgyOVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIENPTVBfQ1NSX0NBSUVfTXNrICAgICAgICAgICAgICAgICAgICgweDFVIDw8IENPTVBfQ1NSX0NBSUVfUG9zKSAgICAgICAgLyohPCAweDIwMDAwMDAwICovDQojZGVmaW5lIENPTVBfQ1NSX0NBSUUgICAgICAgICAgICAgICAgICAgICAgIENPTVBfQ1NSX0NBSUVfTXNrICAgICAgICAgICAgICAgICAgLyohPCBCaXQgMjkgKi8NCiNkZWZpbmUgQ09NUF9DU1JfQ0FJRl9Qb3MgICAgICAgICAgICAgICAgICAgKDMwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgQ09NUF9DU1JfQ0FJRl9Nc2sgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgQ09NUF9DU1JfQ0FJRl9Qb3MpICAgICAgICAvKiE8IDB4NDAwMDAwMDAgKi8NCiNkZWZpbmUgQ09NUF9DU1JfQ0FJRiAgICAgICAgICAgICAgICAgICAgICAgQ09NUF9DU1JfQ0FJRl9Nc2sgICAgICAgICAgICAgICAgICAvKiE8IEJpdCAzMCAqLw0KI2RlZmluZSBDT01QX0NTUl9UU1VTUF9Qb3MgICAgICAgICAgICAgICAgICAoMzFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBDT01QX0NTUl9UU1VTUF9Nc2sgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBDT01QX0NTUl9UU1VTUF9Qb3MpICAgICAgIC8qITwgMHg4MDAwMDAwMCAqLw0KI2RlZmluZSBDT01QX0NTUl9UU1VTUCAgICAgICAgICAgICAgICAgICAgICBDT01QX0NTUl9UU1VTUF9Nc2sgICAgICAgICAgICAgICAgIC8qITwgQml0IDMxICovDQoNCi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovDQovKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLw0KLyogICAgICAgICAgICAgICAgICAgICAgICAgT3BlcmF0aW9uYWwgQW1wbGlmaWVyIChPUEFNUCkgICAgICAgICAgICAgICAgICAgICAgKi8NCi8qICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovDQovKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLw0KLyoqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBPUEFNUF9DU1IgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgT1BBTVBfQ1NSX09QQTFQRF9Qb3MgICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgT1BBTVBfQ1NSX09QQTFQRF9Nc2sgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBPUEFNUF9DU1JfT1BBMVBEX1BvcykgICAvKiE8IDB4MDAwMDAwMDEgKi8NCiNkZWZpbmUgT1BBTVBfQ1NSX09QQTFQRCAgICAgICAgICAgICAgICAgICAgICBPUEFNUF9DU1JfT1BBMVBEX01zayAgICAgICAgICAgICAvKiE8IE9QQU1QMSBkaXNhYmxlICovDQojZGVmaW5lIE9QQU1QX0NTUl9TM1NFTDFfUG9zICAgICAgICAgICAgICAgICAgKDFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIE9QQU1QX0NTUl9TM1NFTDFfTXNrICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgT1BBTVBfQ1NSX1MzU0VMMV9Qb3MpICAgLyohPCAweDAwMDAwMDAyICovDQojZGVmaW5lIE9QQU1QX0NTUl9TM1NFTDEgICAgICAgICAgICAgICAgICAgICAgT1BBTVBfQ1NSX1MzU0VMMV9Nc2sgICAgICAgICAgICAgLyohPCBTd2l0Y2ggMyBmb3IgT1BBTVAxIEVuYWJsZSAqLw0KI2RlZmluZSBPUEFNUF9DU1JfUzRTRUwxX1BvcyAgICAgICAgICAgICAgICAgICgyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBPUEFNUF9DU1JfUzRTRUwxX01zayAgICAgICAgICAgICAgICAgICgweDFVIDw8IE9QQU1QX0NTUl9TNFNFTDFfUG9zKSAgIC8qITwgMHgwMDAwMDAwNCAqLw0KI2RlZmluZSBPUEFNUF9DU1JfUzRTRUwxICAgICAgICAgICAgICAgICAgICAgIE9QQU1QX0NTUl9TNFNFTDFfTXNrICAgICAgICAgICAgIC8qITwgU3dpdGNoIDQgZm9yIE9QQU1QMSBFbmFibGUgKi8NCiNkZWZpbmUgT1BBTVBfQ1NSX1M1U0VMMV9Qb3MgICAgICAgICAgICAgICAgICAoM1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgT1BBTVBfQ1NSX1M1U0VMMV9Nc2sgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBPUEFNUF9DU1JfUzVTRUwxX1BvcykgICAvKiE8IDB4MDAwMDAwMDggKi8NCiNkZWZpbmUgT1BBTVBfQ1NSX1M1U0VMMSAgICAgICAgICAgICAgICAgICAgICBPUEFNUF9DU1JfUzVTRUwxX01zayAgICAgICAgICAgICAvKiE8IFN3aXRjaCA1IGZvciBPUEFNUDEgRW5hYmxlICovDQojZGVmaW5lIE9QQU1QX0NTUl9TNlNFTDFfUG9zICAgICAgICAgICAgICAgICAgKDRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIE9QQU1QX0NTUl9TNlNFTDFfTXNrICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgT1BBTVBfQ1NSX1M2U0VMMV9Qb3MpICAgLyohPCAweDAwMDAwMDEwICovDQojZGVmaW5lIE9QQU1QX0NTUl9TNlNFTDEgICAgICAgICAgICAgICAgICAgICAgT1BBTVBfQ1NSX1M2U0VMMV9Nc2sgICAgICAgICAgICAgLyohPCBTd2l0Y2ggNiBmb3IgT1BBTVAxIEVuYWJsZSAqLw0KI2RlZmluZSBPUEFNUF9DU1JfT1BBMUNBTF9MX1BvcyAgICAgICAgICAgICAgICg1VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBPUEFNUF9DU1JfT1BBMUNBTF9MX01zayAgICAgICAgICAgICAgICgweDFVIDw8IE9QQU1QX0NTUl9PUEExQ0FMX0xfUG9zKSAvKiE8IDB4MDAwMDAwMjAgKi8NCiNkZWZpbmUgT1BBTVBfQ1NSX09QQTFDQUxfTCAgICAgICAgICAgICAgICAgICBPUEFNUF9DU1JfT1BBMUNBTF9MX01zayAgICAgICAgICAvKiE8IE9QQU1QMSBPZmZzZXQgY2FsaWJyYXRpb24gZm9yIFAgZGlmZmVyZW50aWFsIHBhaXIgKi8NCiNkZWZpbmUgT1BBTVBfQ1NSX09QQTFDQUxfSF9Qb3MgICAgICAgICAgICAgICAoNlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgT1BBTVBfQ1NSX09QQTFDQUxfSF9Nc2sgICAgICAgICAgICAgICAoMHgxVSA8PCBPUEFNUF9DU1JfT1BBMUNBTF9IX1BvcykgLyohPCAweDAwMDAwMDQwICovDQojZGVmaW5lIE9QQU1QX0NTUl9PUEExQ0FMX0ggICAgICAgICAgICAgICAgICAgT1BBTVBfQ1NSX09QQTFDQUxfSF9Nc2sgICAgICAgICAgLyohPCBPUEFNUDEgT2Zmc2V0IGNhbGlicmF0aW9uIGZvciBOIGRpZmZlcmVudGlhbCBwYWlyICovDQojZGVmaW5lIE9QQU1QX0NTUl9PUEExTFBNX1BvcyAgICAgICAgICAgICAgICAgKDdVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIE9QQU1QX0NTUl9PUEExTFBNX01zayAgICAgICAgICAgICAgICAgKDB4MVUgPDwgT1BBTVBfQ1NSX09QQTFMUE1fUG9zKSAgLyohPCAweDAwMDAwMDgwICovDQojZGVmaW5lIE9QQU1QX0NTUl9PUEExTFBNICAgICAgICAgICAgICAgICAgICAgT1BBTVBfQ1NSX09QQTFMUE1fTXNrICAgICAgICAgICAgLyohPCBPUEFNUDEgTG93IHBvd2VyIGVuYWJsZSAqLw0KI2RlZmluZSBPUEFNUF9DU1JfT1BBMlBEX1BvcyAgICAgICAgICAgICAgICAgICg4VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBPUEFNUF9DU1JfT1BBMlBEX01zayAgICAgICAgICAgICAgICAgICgweDFVIDw8IE9QQU1QX0NTUl9PUEEyUERfUG9zKSAgIC8qITwgMHgwMDAwMDEwMCAqLw0KI2RlZmluZSBPUEFNUF9DU1JfT1BBMlBEICAgICAgICAgICAgICAgICAgICAgIE9QQU1QX0NTUl9PUEEyUERfTXNrICAgICAgICAgICAgIC8qITwgT1BBTVAyIGRpc2FibGUgKi8NCiNkZWZpbmUgT1BBTVBfQ1NSX1MzU0VMMl9Qb3MgICAgICAgICAgICAgICAgICAoOVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgT1BBTVBfQ1NSX1MzU0VMMl9Nc2sgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBPUEFNUF9DU1JfUzNTRUwyX1BvcykgICAvKiE8IDB4MDAwMDAyMDAgKi8NCiNkZWZpbmUgT1BBTVBfQ1NSX1MzU0VMMiAgICAgICAgICAgICAgICAgICAgICBPUEFNUF9DU1JfUzNTRUwyX01zayAgICAgICAgICAgICAvKiE8IFN3aXRjaCAzIGZvciBPUEFNUDIgRW5hYmxlICovDQojZGVmaW5lIE9QQU1QX0NTUl9TNFNFTDJfUG9zICAgICAgICAgICAgICAgICAgKDEwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIE9QQU1QX0NTUl9TNFNFTDJfTXNrICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgT1BBTVBfQ1NSX1M0U0VMMl9Qb3MpICAgLyohPCAweDAwMDAwNDAwICovDQojZGVmaW5lIE9QQU1QX0NTUl9TNFNFTDIgICAgICAgICAgICAgICAgICAgICAgT1BBTVBfQ1NSX1M0U0VMMl9Nc2sgICAgICAgICAgICAgLyohPCBTd2l0Y2ggNCBmb3IgT1BBTVAyIEVuYWJsZSAqLw0KI2RlZmluZSBPUEFNUF9DU1JfUzVTRUwyX1BvcyAgICAgICAgICAgICAgICAgICgxMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBPUEFNUF9DU1JfUzVTRUwyX01zayAgICAgICAgICAgICAgICAgICgweDFVIDw8IE9QQU1QX0NTUl9TNVNFTDJfUG9zKSAgIC8qITwgMHgwMDAwMDgwMCAqLw0KI2RlZmluZSBPUEFNUF9DU1JfUzVTRUwyICAgICAgICAgICAgICAgICAgICAgIE9QQU1QX0NTUl9TNVNFTDJfTXNrICAgICAgICAgICAgIC8qITwgU3dpdGNoIDUgZm9yIE9QQU1QMiBFbmFibGUgKi8NCiNkZWZpbmUgT1BBTVBfQ1NSX1M2U0VMMl9Qb3MgICAgICAgICAgICAgICAgICAoMTJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgT1BBTVBfQ1NSX1M2U0VMMl9Nc2sgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBPUEFNUF9DU1JfUzZTRUwyX1BvcykgICAvKiE8IDB4MDAwMDEwMDAgKi8NCiNkZWZpbmUgT1BBTVBfQ1NSX1M2U0VMMiAgICAgICAgICAgICAgICAgICAgICBPUEFNUF9DU1JfUzZTRUwyX01zayAgICAgICAgICAgICAvKiE8IFN3aXRjaCA2IGZvciBPUEFNUDIgRW5hYmxlICovDQojZGVmaW5lIE9QQU1QX0NTUl9PUEEyQ0FMX0xfUG9zICAgICAgICAgICAgICAgKDEzVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIE9QQU1QX0NTUl9PUEEyQ0FMX0xfTXNrICAgICAgICAgICAgICAgKDB4MVUgPDwgT1BBTVBfQ1NSX09QQTJDQUxfTF9Qb3MpIC8qITwgMHgwMDAwMjAwMCAqLw0KI2RlZmluZSBPUEFNUF9DU1JfT1BBMkNBTF9MICAgICAgICAgICAgICAgICAgIE9QQU1QX0NTUl9PUEEyQ0FMX0xfTXNrICAgICAgICAgIC8qITwgT1BBTVAyIE9mZnNldCBjYWxpYnJhdGlvbiBmb3IgUCBkaWZmZXJlbnRpYWwgcGFpciAqLw0KI2RlZmluZSBPUEFNUF9DU1JfT1BBMkNBTF9IX1BvcyAgICAgICAgICAgICAgICgxNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBPUEFNUF9DU1JfT1BBMkNBTF9IX01zayAgICAgICAgICAgICAgICgweDFVIDw8IE9QQU1QX0NTUl9PUEEyQ0FMX0hfUG9zKSAvKiE8IDB4MDAwMDQwMDAgKi8NCiNkZWZpbmUgT1BBTVBfQ1NSX09QQTJDQUxfSCAgICAgICAgICAgICAgICAgICBPUEFNUF9DU1JfT1BBMkNBTF9IX01zayAgICAgICAgICAvKiE8IE9QQU1QMiBPZmZzZXQgY2FsaWJyYXRpb24gZm9yIE4gZGlmZmVyZW50aWFsIHBhaXIgKi8NCiNkZWZpbmUgT1BBTVBfQ1NSX09QQTJMUE1fUG9zICAgICAgICAgICAgICAgICAoMTVVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgT1BBTVBfQ1NSX09QQTJMUE1fTXNrICAgICAgICAgICAgICAgICAoMHgxVSA8PCBPUEFNUF9DU1JfT1BBMkxQTV9Qb3MpICAvKiE8IDB4MDAwMDgwMDAgKi8NCiNkZWZpbmUgT1BBTVBfQ1NSX09QQTJMUE0gICAgICAgICAgICAgICAgICAgICBPUEFNUF9DU1JfT1BBMkxQTV9Nc2sgICAgICAgICAgICAvKiE8IE9QQU1QMiBMb3cgcG93ZXIgZW5hYmxlICovDQojZGVmaW5lIE9QQU1QX0NTUl9BTkFXU0VMMV9Qb3MgICAgICAgICAgICAgICAgKDI0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIE9QQU1QX0NTUl9BTkFXU0VMMV9Nc2sgICAgICAgICAgICAgICAgKDB4MVUgPDwgT1BBTVBfQ1NSX0FOQVdTRUwxX1BvcykgLyohPCAweDAxMDAwMDAwICovDQojZGVmaW5lIE9QQU1QX0NTUl9BTkFXU0VMMSAgICAgICAgICAgICAgICAgICAgT1BBTVBfQ1NSX0FOQVdTRUwxX01zayAgICAgICAgICAgLyohPCBTd2l0Y2ggQU5BIEVuYWJsZSBmb3IgT1BBTVAxICovIA0KI2RlZmluZSBPUEFNUF9DU1JfQU5BV1NFTDJfUG9zICAgICAgICAgICAgICAgICgyNVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBPUEFNUF9DU1JfQU5BV1NFTDJfTXNrICAgICAgICAgICAgICAgICgweDFVIDw8IE9QQU1QX0NTUl9BTkFXU0VMMl9Qb3MpIC8qITwgMHgwMjAwMDAwMCAqLw0KI2RlZmluZSBPUEFNUF9DU1JfQU5BV1NFTDIgICAgICAgICAgICAgICAgICAgIE9QQU1QX0NTUl9BTkFXU0VMMl9Nc2sgICAgICAgICAgIC8qITwgU3dpdGNoIEFOQSBFbmFibGUgZm9yIE9QQU1QMiAqLw0KI2RlZmluZSBPUEFNUF9DU1JfUzdTRUwyX1BvcyAgICAgICAgICAgICAgICAgICgyN1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBPUEFNUF9DU1JfUzdTRUwyX01zayAgICAgICAgICAgICAgICAgICgweDFVIDw8IE9QQU1QX0NTUl9TN1NFTDJfUG9zKSAgIC8qITwgMHgwODAwMDAwMCAqLw0KI2RlZmluZSBPUEFNUF9DU1JfUzdTRUwyICAgICAgICAgICAgICAgICAgICAgIE9QQU1QX0NTUl9TN1NFTDJfTXNrICAgICAgICAgICAgIC8qITwgU3dpdGNoIDcgZm9yIE9QQU1QMiBFbmFibGUgKi8NCiNkZWZpbmUgT1BBTVBfQ1NSX0FPUF9SQU5HRV9Qb3MgICAgICAgICAgICAgICAoMjhVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgT1BBTVBfQ1NSX0FPUF9SQU5HRV9Nc2sgICAgICAgICAgICAgICAoMHgxVSA8PCBPUEFNUF9DU1JfQU9QX1JBTkdFX1BvcykgLyohPCAweDEwMDAwMDAwICovDQojZGVmaW5lIE9QQU1QX0NTUl9BT1BfUkFOR0UgICAgICAgICAgICAgICAgICAgT1BBTVBfQ1NSX0FPUF9SQU5HRV9Nc2sgICAgICAgICAgLyohPCBDb21tb24gdG8gc2V2ZXJhbCBPUEFNUCBpbnN0YW5jZXM6IE9wZXJhdGlvbmFsIGFtcGxpZmllciB2b2x0YWdlIHN1cHBseSByYW5nZS4gQml0IGludGVuZGVkIHRvIGJlIHVzZWQgd2l0aCBPUEFNUCBjb21tb24gaW5zdGFuY2UgKE9QQU1QX0NvbW1vbl9UeXBlRGVmKSAqLw0KI2RlZmluZSBPUEFNUF9DU1JfT1BBMUNBTE9VVF9Qb3MgICAgICAgICAgICAgICgyOVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBPUEFNUF9DU1JfT1BBMUNBTE9VVF9Nc2sgICAgICAgICAgICAgICgweDFVIDw8IE9QQU1QX0NTUl9PUEExQ0FMT1VUX1BvcykgLyohPCAweDIwMDAwMDAwICovDQojZGVmaW5lIE9QQU1QX0NTUl9PUEExQ0FMT1VUICAgICAgICAgICAgICAgICAgT1BBTVBfQ1NSX09QQTFDQUxPVVRfTXNrICAgICAgICAgLyohPCBPUEFNUDEgY2FsaWJyYXRpb24gb3V0cHV0ICovDQojZGVmaW5lIE9QQU1QX0NTUl9PUEEyQ0FMT1VUX1BvcyAgICAgICAgICAgICAgKDMwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIE9QQU1QX0NTUl9PUEEyQ0FMT1VUX01zayAgICAgICAgICAgICAgKDB4MVUgPDwgT1BBTVBfQ1NSX09QQTJDQUxPVVRfUG9zKSAvKiE8IDB4NDAwMDAwMDAgKi8NCiNkZWZpbmUgT1BBTVBfQ1NSX09QQTJDQUxPVVQgICAgICAgICAgICAgICAgICBPUEFNUF9DU1JfT1BBMkNBTE9VVF9Nc2sgICAgICAgICAvKiE8IE9QQU1QMiBjYWxpYnJhdGlvbiBvdXRwdXQgKi8NCg0KLyoqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBPUEFNUF9PVFIgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgT1BBTVBfT1RSX0FPMV9PUFRfT0ZGU0VUX1RSSU1fTE9XX1BvcyAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgT1BBTVBfT1RSX0FPMV9PUFRfT0ZGU0VUX1RSSU1fTE9XX01zayAoMHgxRlUgPDwgT1BBTVBfT1RSX0FPMV9PUFRfT0ZGU0VUX1RSSU1fTE9XX1BvcykgLyohPCAweDAwMDAwMDFGICovDQojZGVmaW5lIE9QQU1QX09UUl9BTzFfT1BUX09GRlNFVF9UUklNX0xPVyAgICAgT1BBTVBfT1RSX0FPMV9PUFRfT0ZGU0VUX1RSSU1fTE9XX01zayAvKiE8IE9mZnNldCB0cmltIGZvciB0cmFuc2lzdG9ycyBkaWZmZXJlbnRpYWwgcGFpciBQTU9TIG9mIE9QQU1QMSAqLw0KI2RlZmluZSBPUEFNUF9PVFJfQU8xX09QVF9PRkZTRVRfVFJJTV9ISUdIX1BvcyAoNVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBPUEFNUF9PVFJfQU8xX09QVF9PRkZTRVRfVFJJTV9ISUdIX01zayAoMHgxRlUgPDwgT1BBTVBfT1RSX0FPMV9PUFRfT0ZGU0VUX1RSSU1fSElHSF9Qb3MpIC8qITwgMHgwMDAwMDNFMCAqLw0KI2RlZmluZSBPUEFNUF9PVFJfQU8xX09QVF9PRkZTRVRfVFJJTV9ISUdIICAgIE9QQU1QX09UUl9BTzFfT1BUX09GRlNFVF9UUklNX0hJR0hfTXNrIC8qITwgT2Zmc2V0IHRyaW0gZm9yIHRyYW5zaXN0b3JzIGRpZmZlcmVudGlhbCBwYWlyIE5NT1Mgb2YgT1BBTVAxICovDQojZGVmaW5lIE9QQU1QX09UUl9BTzJfT1BUX09GRlNFVF9UUklNX0xPV19Qb3MgKDEwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIE9QQU1QX09UUl9BTzJfT1BUX09GRlNFVF9UUklNX0xPV19Nc2sgKDB4MUZVIDw8IE9QQU1QX09UUl9BTzJfT1BUX09GRlNFVF9UUklNX0xPV19Qb3MpIC8qITwgMHgwMDAwN0MwMCAqLw0KI2RlZmluZSBPUEFNUF9PVFJfQU8yX09QVF9PRkZTRVRfVFJJTV9MT1cgICAgIE9QQU1QX09UUl9BTzJfT1BUX09GRlNFVF9UUklNX0xPV19Nc2sgLyohPCBPZmZzZXQgdHJpbSBmb3IgdHJhbnNpc3RvcnMgZGlmZmVyZW50aWFsIHBhaXIgUE1PUyBvZiBPUEFNUDIgKi8NCiNkZWZpbmUgT1BBTVBfT1RSX0FPMl9PUFRfT0ZGU0VUX1RSSU1fSElHSF9Qb3MgKDE1VSkgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgT1BBTVBfT1RSX0FPMl9PUFRfT0ZGU0VUX1RSSU1fSElHSF9Nc2sgKDB4MUZVIDw8IE9QQU1QX09UUl9BTzJfT1BUX09GRlNFVF9UUklNX0hJR0hfUG9zKSAvKiE8IDB4MDAwRjgwMDAgKi8NCiNkZWZpbmUgT1BBTVBfT1RSX0FPMl9PUFRfT0ZGU0VUX1RSSU1fSElHSCAgICBPUEFNUF9PVFJfQU8yX09QVF9PRkZTRVRfVFJJTV9ISUdIX01zayAvKiE8IE9mZnNldCB0cmltIGZvciB0cmFuc2lzdG9ycyBkaWZmZXJlbnRpYWwgcGFpciBOTU9TIG9mIE9QQU1QMiAqLw0KI2RlZmluZSBPUEFNUF9PVFJfT1RfVVNFUl9Qb3MgICAgICAgICAgICAgICAgICgzMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBPUEFNUF9PVFJfT1RfVVNFUl9Nc2sgICAgICAgICAgICAgICAgICgweDFVIDw8IE9QQU1QX09UUl9PVF9VU0VSX1BvcykgIC8qITwgMHg4MDAwMDAwMCAqLw0KI2RlZmluZSBPUEFNUF9PVFJfT1RfVVNFUiAgICAgICAgICAgICAgICAgICAgIE9QQU1QX09UUl9PVF9VU0VSX01zayAgICAgICAgICAgIC8qITwgU3dpdGNoIHRvIE9QQU1QIG9mZnNldCB1c2VyIHRyaW1tZWQgdmFsdWVzICovDQoNCi8qKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgT1BBTVBfTFBPVFIgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKiovDQojZGVmaW5lIE9QQU1QX09UUl9BTzFfT1BUX09GRlNFVF9UUklNX0xQX0xPV19Qb3MgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIE9QQU1QX09UUl9BTzFfT1BUX09GRlNFVF9UUklNX0xQX0xPV19Nc2sgKDB4MUZVIDw8IE9QQU1QX09UUl9BTzFfT1BUX09GRlNFVF9UUklNX0xQX0xPV19Qb3MpIC8qITwgMHgwMDAwMDAxRiAqLw0KI2RlZmluZSBPUEFNUF9PVFJfQU8xX09QVF9PRkZTRVRfVFJJTV9MUF9MT1cgIE9QQU1QX09UUl9BTzFfT1BUX09GRlNFVF9UUklNX0xQX0xPV19Nc2sgLyohPCBPZmZzZXQgdHJpbSBmb3IgdHJhbnNpc3RvcnMgZGlmZmVyZW50aWFsIHBhaXIgUE1PUyBvZiBPUEFNUDEgKi8NCiNkZWZpbmUgT1BBTVBfT1RSX0FPMV9PUFRfT0ZGU0VUX1RSSU1fTFBfSElHSF9Qb3MgKDVVKSAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgT1BBTVBfT1RSX0FPMV9PUFRfT0ZGU0VUX1RSSU1fTFBfSElHSF9Nc2sgKDB4MUZVIDw8IE9QQU1QX09UUl9BTzFfT1BUX09GRlNFVF9UUklNX0xQX0hJR0hfUG9zKSAvKiE8IDB4MDAwMDAzRTAgKi8NCiNkZWZpbmUgT1BBTVBfT1RSX0FPMV9PUFRfT0ZGU0VUX1RSSU1fTFBfSElHSCBPUEFNUF9PVFJfQU8xX09QVF9PRkZTRVRfVFJJTV9MUF9ISUdIX01zayAvKiE8IE9mZnNldCB0cmltIGZvciB0cmFuc2lzdG9ycyBkaWZmZXJlbnRpYWwgcGFpciBOTU9TIG9mIE9QQU1QMSAqLw0KI2RlZmluZSBPUEFNUF9PVFJfQU8yX09QVF9PRkZTRVRfVFJJTV9MUF9MT1dfUG9zICgxMFUpICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBPUEFNUF9PVFJfQU8yX09QVF9PRkZTRVRfVFJJTV9MUF9MT1dfTXNrICgweDFGVSA8PCBPUEFNUF9PVFJfQU8yX09QVF9PRkZTRVRfVFJJTV9MUF9MT1dfUG9zKSAvKiE8IDB4MDAwMDdDMDAgKi8NCiNkZWZpbmUgT1BBTVBfT1RSX0FPMl9PUFRfT0ZGU0VUX1RSSU1fTFBfTE9XICBPUEFNUF9PVFJfQU8yX09QVF9PRkZTRVRfVFJJTV9MUF9MT1dfTXNrIC8qITwgT2Zmc2V0IHRyaW0gZm9yIHRyYW5zaXN0b3JzIGRpZmZlcmVudGlhbCBwYWlyIFBNT1Mgb2YgT1BBTVAyICovDQojZGVmaW5lIE9QQU1QX09UUl9BTzJfT1BUX09GRlNFVF9UUklNX0xQX0hJR0hfUG9zICgxNVUpICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIE9QQU1QX09UUl9BTzJfT1BUX09GRlNFVF9UUklNX0xQX0hJR0hfTXNrICgweDFGVSA8PCBPUEFNUF9PVFJfQU8yX09QVF9PRkZTRVRfVFJJTV9MUF9ISUdIX1BvcykgLyohPCAweDAwMEY4MDAwICovDQojZGVmaW5lIE9QQU1QX09UUl9BTzJfT1BUX09GRlNFVF9UUklNX0xQX0hJR0ggT1BBTVBfT1RSX0FPMl9PUFRfT0ZGU0VUX1RSSU1fTFBfSElHSF9Nc2sgLyohPCBPZmZzZXQgdHJpbSBmb3IgdHJhbnNpc3RvcnMgZGlmZmVyZW50aWFsIHBhaXIgTk1PUyBvZiBPUEFNUDIgKi8NCg0KLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8NCi8qICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovDQovKiAgICAgICAgICAgICAgICAgICAgICAgQ1JDIGNhbGN1bGF0aW9uIHVuaXQgKENSQykgICAgICAgICAgICAgICAgICAgICAgICAgICAqLw0KLyogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8NCi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovDQoNCi8qKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgQ1JDX0RSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIENSQ19EUl9EUl9Qb3MgICAgICAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIENSQ19EUl9EUl9Nc2sgICAgICAgICAgICAgICAgICAgICAgICgweEZGRkZGRkZGVSA8PCBDUkNfRFJfRFJfUG9zKSAgICAgLyohPCAweEZGRkZGRkZGICovDQojZGVmaW5lIENSQ19EUl9EUiAgICAgICAgICAgICAgICAgICAgICAgICAgIENSQ19EUl9EUl9Nc2sgICAgICAgICAgICAgICAgICAgICAgLyohPCBEYXRhIHJlZ2lzdGVyIGJpdHMgKi8NCg0KLyoqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBDUkNfSURSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgQ1JDX0lEUl9JRFJfUG9zICAgICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgQ1JDX0lEUl9JRFJfTXNrICAgICAgICAgICAgICAgICAgICAgKDB4RkZVIDw8IENSQ19JRFJfSURSX1BvcykgICAgICAgICAvKiE8IDB4MDAwMDAwRkYgKi8NCiNkZWZpbmUgQ1JDX0lEUl9JRFIgICAgICAgICAgICAgICAgICAgICAgICAgQ1JDX0lEUl9JRFJfTXNrICAgICAgICAgICAgICAgICAgICAvKiE8IEdlbmVyYWwtcHVycG9zZSA4LWJpdCBkYXRhIHJlZ2lzdGVyIGJpdHMgKi8NCg0KLyoqKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgQ1JDX0NSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgQ1JDX0NSX1JFU0VUX1BvcyAgICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgQ1JDX0NSX1JFU0VUX01zayAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgQ1JDX0NSX1JFU0VUX1BvcykgICAgICAgICAvKiE8IDB4MDAwMDAwMDEgKi8NCiNkZWZpbmUgQ1JDX0NSX1JFU0VUICAgICAgICAgICAgICAgICAgICAgICAgQ1JDX0NSX1JFU0VUX01zayAgICAgICAgICAgICAgICAgICAvKiE8IFJFU0VUIGJpdCAqLw0KDQovKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLw0KLyogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8NCi8qICAgICAgICAgICAgICAgICAgICBEaWdpdGFsIHRvIEFuYWxvZyBDb252ZXJ0ZXIgKERBQykgICAgICAgICAgICAgICAgICAgICAgICovDQovKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLw0KLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8NCg0KLyoqKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgREFDX0NSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgREFDX0NSX0VOMV9Qb3MgICAgICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgREFDX0NSX0VOMV9Nc2sgICAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgREFDX0NSX0VOMV9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDEgKi8NCiNkZWZpbmUgREFDX0NSX0VOMSAgICAgICAgICAgICAgICAgICAgICAgICAgREFDX0NSX0VOMV9Nc2sgICAgICAgICAgICAgICAgICAgICAvKiE8REFDIGNoYW5uZWwxIGVuYWJsZSAqLw0KI2RlZmluZSBEQUNfQ1JfQk9GRjFfUG9zICAgICAgICAgICAgICAgICAgICAoMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBEQUNfQ1JfQk9GRjFfTXNrICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBEQUNfQ1JfQk9GRjFfUG9zKSAgICAgICAgIC8qITwgMHgwMDAwMDAwMiAqLw0KI2RlZmluZSBEQUNfQ1JfQk9GRjEgICAgICAgICAgICAgICAgICAgICAgICBEQUNfQ1JfQk9GRjFfTXNrICAgICAgICAgICAgICAgICAgIC8qITxEQUMgY2hhbm5lbDEgb3V0cHV0IGJ1ZmZlciBkaXNhYmxlICovDQojZGVmaW5lIERBQ19DUl9URU4xX1BvcyAgICAgICAgICAgICAgICAgICAgICgyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIERBQ19DUl9URU4xX01zayAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IERBQ19DUl9URU4xX1BvcykgICAgICAgICAgLyohPCAweDAwMDAwMDA0ICovDQojZGVmaW5lIERBQ19DUl9URU4xICAgICAgICAgICAgICAgICAgICAgICAgIERBQ19DUl9URU4xX01zayAgICAgICAgICAgICAgICAgICAgLyohPERBQyBjaGFubmVsMSBUcmlnZ2VyIGVuYWJsZSAqLw0KDQojZGVmaW5lIERBQ19DUl9UU0VMMV9Qb3MgICAgICAgICAgICAgICAgICAgICgzVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIERBQ19DUl9UU0VMMV9Nc2sgICAgICAgICAgICAgICAgICAgICgweDdVIDw8IERBQ19DUl9UU0VMMV9Qb3MpICAgICAgICAgLyohPCAweDAwMDAwMDM4ICovDQojZGVmaW5lIERBQ19DUl9UU0VMMSAgICAgICAgICAgICAgICAgICAgICAgIERBQ19DUl9UU0VMMV9Nc2sgICAgICAgICAgICAgICAgICAgLyohPFRTRUwxWzI6MF0gKERBQyBjaGFubmVsMSBUcmlnZ2VyIHNlbGVjdGlvbikgKi8NCiNkZWZpbmUgREFDX0NSX1RTRUwxXzAgICAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgREFDX0NSX1RTRUwxX1BvcykgICAgICAgICAvKiE8IDB4MDAwMDAwMDggKi8NCiNkZWZpbmUgREFDX0NSX1RTRUwxXzEgICAgICAgICAgICAgICAgICAgICAgKDB4MlUgPDwgREFDX0NSX1RTRUwxX1BvcykgICAgICAgICAvKiE8IDB4MDAwMDAwMTAgKi8NCiNkZWZpbmUgREFDX0NSX1RTRUwxXzIgICAgICAgICAgICAgICAgICAgICAgKDB4NFUgPDwgREFDX0NSX1RTRUwxX1BvcykgICAgICAgICAvKiE8IDB4MDAwMDAwMjAgKi8NCg0KI2RlZmluZSBEQUNfQ1JfV0FWRTFfUG9zICAgICAgICAgICAgICAgICAgICAoNlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBEQUNfQ1JfV0FWRTFfTXNrICAgICAgICAgICAgICAgICAgICAoMHgzVSA8PCBEQUNfQ1JfV0FWRTFfUG9zKSAgICAgICAgIC8qITwgMHgwMDAwMDBDMCAqLw0KI2RlZmluZSBEQUNfQ1JfV0FWRTEgICAgICAgICAgICAgICAgICAgICAgICBEQUNfQ1JfV0FWRTFfTXNrICAgICAgICAgICAgICAgICAgIC8qITxXQVZFMVsxOjBdIChEQUMgY2hhbm5lbDEgbm9pc2UvdHJpYW5nbGUgd2F2ZSBnZW5lcmF0aW9uIGVuYWJsZSkgKi8NCiNkZWZpbmUgREFDX0NSX1dBVkUxXzAgICAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgREFDX0NSX1dBVkUxX1BvcykgICAgICAgICAvKiE8IDB4MDAwMDAwNDAgKi8NCiNkZWZpbmUgREFDX0NSX1dBVkUxXzEgICAgICAgICAgICAgICAgICAgICAgKDB4MlUgPDwgREFDX0NSX1dBVkUxX1BvcykgICAgICAgICAvKiE8IDB4MDAwMDAwODAgKi8NCg0KI2RlZmluZSBEQUNfQ1JfTUFNUDFfUG9zICAgICAgICAgICAgICAgICAgICAoOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBEQUNfQ1JfTUFNUDFfTXNrICAgICAgICAgICAgICAgICAgICAoMHhGVSA8PCBEQUNfQ1JfTUFNUDFfUG9zKSAgICAgICAgIC8qITwgMHgwMDAwMEYwMCAqLw0KI2RlZmluZSBEQUNfQ1JfTUFNUDEgICAgICAgICAgICAgICAgICAgICAgICBEQUNfQ1JfTUFNUDFfTXNrICAgICAgICAgICAgICAgICAgIC8qITxNQU1QMVszOjBdIChEQUMgY2hhbm5lbDEgTWFzay9BbXBsaXR1ZGUgc2VsZWN0b3IpICovDQojZGVmaW5lIERBQ19DUl9NQU1QMV8wICAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IERBQ19DUl9NQU1QMV9Qb3MpICAgICAgICAgLyohPCAweDAwMDAwMTAwICovDQojZGVmaW5lIERBQ19DUl9NQU1QMV8xICAgICAgICAgICAgICAgICAgICAgICgweDJVIDw8IERBQ19DUl9NQU1QMV9Qb3MpICAgICAgICAgLyohPCAweDAwMDAwMjAwICovDQojZGVmaW5lIERBQ19DUl9NQU1QMV8yICAgICAgICAgICAgICAgICAgICAgICgweDRVIDw8IERBQ19DUl9NQU1QMV9Qb3MpICAgICAgICAgLyohPCAweDAwMDAwNDAwICovDQojZGVmaW5lIERBQ19DUl9NQU1QMV8zICAgICAgICAgICAgICAgICAgICAgICgweDhVIDw8IERBQ19DUl9NQU1QMV9Qb3MpICAgICAgICAgLyohPCAweDAwMDAwODAwICovDQoNCiNkZWZpbmUgREFDX0NSX0RNQUVOMV9Qb3MgICAgICAgICAgICAgICAgICAgKDEyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgREFDX0NSX0RNQUVOMV9Nc2sgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgREFDX0NSX0RNQUVOMV9Qb3MpICAgICAgICAvKiE8IDB4MDAwMDEwMDAgKi8NCiNkZWZpbmUgREFDX0NSX0RNQUVOMSAgICAgICAgICAgICAgICAgICAgICAgREFDX0NSX0RNQUVOMV9Nc2sgICAgICAgICAgICAgICAgICAvKiE8REFDIGNoYW5uZWwxIERNQSBlbmFibGUgKi8NCiNkZWZpbmUgREFDX0NSX0RNQVVEUklFMV9Qb3MgICAgICAgICAgICAgICAgKDEzVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgREFDX0NSX0RNQVVEUklFMV9Nc2sgICAgICAgICAgICAgICAgKDB4MVUgPDwgREFDX0NSX0RNQVVEUklFMV9Qb3MpICAgICAvKiE8IDB4MDAwMDIwMDAgKi8NCiNkZWZpbmUgREFDX0NSX0RNQVVEUklFMSAgICAgICAgICAgICAgICAgICAgREFDX0NSX0RNQVVEUklFMV9Nc2sgICAgICAgICAgICAgICAvKiE8REFDIGNoYW5uZWwxIERNQSBJbnRlcnJ1cHQgZW5hYmxlICovDQojZGVmaW5lIERBQ19DUl9FTjJfUG9zICAgICAgICAgICAgICAgICAgICAgICgxNlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIERBQ19DUl9FTjJfTXNrICAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IERBQ19DUl9FTjJfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDEwMDAwICovDQojZGVmaW5lIERBQ19DUl9FTjIgICAgICAgICAgICAgICAgICAgICAgICAgIERBQ19DUl9FTjJfTXNrICAgICAgICAgICAgICAgICAgICAgLyohPERBQyBjaGFubmVsMiBlbmFibGUgKi8NCiNkZWZpbmUgREFDX0NSX0JPRkYyX1BvcyAgICAgICAgICAgICAgICAgICAgKDE3VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgREFDX0NSX0JPRkYyX01zayAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgREFDX0NSX0JPRkYyX1BvcykgICAgICAgICAvKiE8IDB4MDAwMjAwMDAgKi8NCiNkZWZpbmUgREFDX0NSX0JPRkYyICAgICAgICAgICAgICAgICAgICAgICAgREFDX0NSX0JPRkYyX01zayAgICAgICAgICAgICAgICAgICAvKiE8REFDIGNoYW5uZWwyIG91dHB1dCBidWZmZXIgZGlzYWJsZSAqLw0KI2RlZmluZSBEQUNfQ1JfVEVOMl9Qb3MgICAgICAgICAgICAgICAgICAgICAoMThVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBEQUNfQ1JfVEVOMl9Nc2sgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBEQUNfQ1JfVEVOMl9Qb3MpICAgICAgICAgIC8qITwgMHgwMDA0MDAwMCAqLw0KI2RlZmluZSBEQUNfQ1JfVEVOMiAgICAgICAgICAgICAgICAgICAgICAgICBEQUNfQ1JfVEVOMl9Nc2sgICAgICAgICAgICAgICAgICAgIC8qITxEQUMgY2hhbm5lbDIgVHJpZ2dlciBlbmFibGUgKi8NCg0KI2RlZmluZSBEQUNfQ1JfVFNFTDJfUG9zICAgICAgICAgICAgICAgICAgICAoMTlVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBEQUNfQ1JfVFNFTDJfTXNrICAgICAgICAgICAgICAgICAgICAoMHg3VSA8PCBEQUNfQ1JfVFNFTDJfUG9zKSAgICAgICAgIC8qITwgMHgwMDM4MDAwMCAqLw0KI2RlZmluZSBEQUNfQ1JfVFNFTDIgICAgICAgICAgICAgICAgICAgICAgICBEQUNfQ1JfVFNFTDJfTXNrICAgICAgICAgICAgICAgICAgIC8qITxUU0VMMlsyOjBdIChEQUMgY2hhbm5lbDIgVHJpZ2dlciBzZWxlY3Rpb24pICovDQojZGVmaW5lIERBQ19DUl9UU0VMMl8wICAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IERBQ19DUl9UU0VMMl9Qb3MpICAgICAgICAgLyohPCAweDAwMDgwMDAwICovDQojZGVmaW5lIERBQ19DUl9UU0VMMl8xICAgICAgICAgICAgICAgICAgICAgICgweDJVIDw8IERBQ19DUl9UU0VMMl9Qb3MpICAgICAgICAgLyohPCAweDAwMTAwMDAwICovDQojZGVmaW5lIERBQ19DUl9UU0VMMl8yICAgICAgICAgICAgICAgICAgICAgICgweDRVIDw8IERBQ19DUl9UU0VMMl9Qb3MpICAgICAgICAgLyohPCAweDAwMjAwMDAwICovDQoNCiNkZWZpbmUgREFDX0NSX1dBVkUyX1BvcyAgICAgICAgICAgICAgICAgICAgKDIyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgREFDX0NSX1dBVkUyX01zayAgICAgICAgICAgICAgICAgICAgKDB4M1UgPDwgREFDX0NSX1dBVkUyX1BvcykgICAgICAgICAvKiE8IDB4MDBDMDAwMDAgKi8NCiNkZWZpbmUgREFDX0NSX1dBVkUyICAgICAgICAgICAgICAgICAgICAgICAgREFDX0NSX1dBVkUyX01zayAgICAgICAgICAgICAgICAgICAvKiE8V0FWRTJbMTowXSAoREFDIGNoYW5uZWwyIG5vaXNlL3RyaWFuZ2xlIHdhdmUgZ2VuZXJhdGlvbiBlbmFibGUpICovDQojZGVmaW5lIERBQ19DUl9XQVZFMl8wICAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IERBQ19DUl9XQVZFMl9Qb3MpICAgICAgICAgLyohPCAweDAwNDAwMDAwICovDQojZGVmaW5lIERBQ19DUl9XQVZFMl8xICAgICAgICAgICAgICAgICAgICAgICgweDJVIDw8IERBQ19DUl9XQVZFMl9Qb3MpICAgICAgICAgLyohPCAweDAwODAwMDAwICovDQoNCiNkZWZpbmUgREFDX0NSX01BTVAyX1BvcyAgICAgICAgICAgICAgICAgICAgKDI0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgREFDX0NSX01BTVAyX01zayAgICAgICAgICAgICAgICAgICAgKDB4RlUgPDwgREFDX0NSX01BTVAyX1BvcykgICAgICAgICAvKiE8IDB4MEYwMDAwMDAgKi8NCiNkZWZpbmUgREFDX0NSX01BTVAyICAgICAgICAgICAgICAgICAgICAgICAgREFDX0NSX01BTVAyX01zayAgICAgICAgICAgICAgICAgICAvKiE8TUFNUDJbMzowXSAoREFDIGNoYW5uZWwyIE1hc2svQW1wbGl0dWRlIHNlbGVjdG9yKSAqLw0KI2RlZmluZSBEQUNfQ1JfTUFNUDJfMCAgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBEQUNfQ1JfTUFNUDJfUG9zKSAgICAgICAgIC8qITwgMHgwMTAwMDAwMCAqLw0KI2RlZmluZSBEQUNfQ1JfTUFNUDJfMSAgICAgICAgICAgICAgICAgICAgICAoMHgyVSA8PCBEQUNfQ1JfTUFNUDJfUG9zKSAgICAgICAgIC8qITwgMHgwMjAwMDAwMCAqLw0KI2RlZmluZSBEQUNfQ1JfTUFNUDJfMiAgICAgICAgICAgICAgICAgICAgICAoMHg0VSA8PCBEQUNfQ1JfTUFNUDJfUG9zKSAgICAgICAgIC8qITwgMHgwNDAwMDAwMCAqLw0KI2RlZmluZSBEQUNfQ1JfTUFNUDJfMyAgICAgICAgICAgICAgICAgICAgICAoMHg4VSA8PCBEQUNfQ1JfTUFNUDJfUG9zKSAgICAgICAgIC8qITwgMHgwODAwMDAwMCAqLw0KDQojZGVmaW5lIERBQ19DUl9ETUFFTjJfUG9zICAgICAgICAgICAgICAgICAgICgyOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIERBQ19DUl9ETUFFTjJfTXNrICAgICAgICAgICAgICAgICAgICgweDFVIDw8IERBQ19DUl9ETUFFTjJfUG9zKSAgICAgICAgLyohPCAweDEwMDAwMDAwICovDQojZGVmaW5lIERBQ19DUl9ETUFFTjIgICAgICAgICAgICAgICAgICAgICAgIERBQ19DUl9ETUFFTjJfTXNrICAgICAgICAgICAgICAgICAgLyohPERBQyBjaGFubmVsMiBETUEgZW5hYmxlZCAqLw0KI2RlZmluZSBEQUNfQ1JfRE1BVURSSUUyX1BvcyAgICAgICAgICAgICAgICAoMjlVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBEQUNfQ1JfRE1BVURSSUUyX01zayAgICAgICAgICAgICAgICAoMHgxVSA8PCBEQUNfQ1JfRE1BVURSSUUyX1BvcykgICAgIC8qITwgMHgyMDAwMDAwMCAqLw0KI2RlZmluZSBEQUNfQ1JfRE1BVURSSUUyICAgICAgICAgICAgICAgICAgICBEQUNfQ1JfRE1BVURSSUUyX01zayAgICAgICAgICAgICAgIC8qITxEQUMgY2hhbm5lbDIgRE1BIHVuZGVycnVuIGludGVycnVwdCBlbmFibGUgKi8NCi8qKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIERBQ19TV1RSSUdSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIERBQ19TV1RSSUdSX1NXVFJJRzFfUG9zICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIERBQ19TV1RSSUdSX1NXVFJJRzFfTXNrICAgICAgICAgICAgICgweDFVIDw8IERBQ19TV1RSSUdSX1NXVFJJRzFfUG9zKSAgLyohPCAweDAwMDAwMDAxICovDQojZGVmaW5lIERBQ19TV1RSSUdSX1NXVFJJRzEgICAgICAgICAgICAgICAgIERBQ19TV1RSSUdSX1NXVFJJRzFfTXNrICAgICAgICAgICAgLyohPERBQyBjaGFubmVsMSBzb2Z0d2FyZSB0cmlnZ2VyICovDQojZGVmaW5lIERBQ19TV1RSSUdSX1NXVFJJRzJfUG9zICAgICAgICAgICAgICgxVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIERBQ19TV1RSSUdSX1NXVFJJRzJfTXNrICAgICAgICAgICAgICgweDFVIDw8IERBQ19TV1RSSUdSX1NXVFJJRzJfUG9zKSAgLyohPCAweDAwMDAwMDAyICovDQojZGVmaW5lIERBQ19TV1RSSUdSX1NXVFJJRzIgICAgICAgICAgICAgICAgIERBQ19TV1RSSUdSX1NXVFJJRzJfTXNrICAgICAgICAgICAgLyohPERBQyBjaGFubmVsMiBzb2Z0d2FyZSB0cmlnZ2VyICovDQoNCi8qKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIERBQ19ESFIxMlIxIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIERBQ19ESFIxMlIxX0RBQ0MxREhSX1BvcyAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIERBQ19ESFIxMlIxX0RBQ0MxREhSX01zayAgICAgICAgICAgICgweEZGRlUgPDwgREFDX0RIUjEyUjFfREFDQzFESFJfUG9zKSAvKiE8IDB4MDAwMDBGRkYgKi8NCiNkZWZpbmUgREFDX0RIUjEyUjFfREFDQzFESFIgICAgICAgICAgICAgICAgREFDX0RIUjEyUjFfREFDQzFESFJfTXNrICAgICAgICAgICAvKiE8REFDIGNoYW5uZWwxIDEyLWJpdCBSaWdodCBhbGlnbmVkIGRhdGEgKi8NCg0KLyoqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgREFDX0RIUjEyTDEgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgREFDX0RIUjEyTDFfREFDQzFESFJfUG9zICAgICAgICAgICAgKDRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgREFDX0RIUjEyTDFfREFDQzFESFJfTXNrICAgICAgICAgICAgKDB4RkZGVSA8PCBEQUNfREhSMTJMMV9EQUNDMURIUl9Qb3MpIC8qITwgMHgwMDAwRkZGMCAqLw0KI2RlZmluZSBEQUNfREhSMTJMMV9EQUNDMURIUiAgICAgICAgICAgICAgICBEQUNfREhSMTJMMV9EQUNDMURIUl9Nc2sgICAgICAgICAgIC8qITxEQUMgY2hhbm5lbDEgMTItYml0IExlZnQgYWxpZ25lZCBkYXRhICovDQoNCi8qKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBEQUNfREhSOFIxIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIERBQ19ESFI4UjFfREFDQzFESFJfUG9zICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIERBQ19ESFI4UjFfREFDQzFESFJfTXNrICAgICAgICAgICAgICgweEZGVSA8PCBEQUNfREhSOFIxX0RBQ0MxREhSX1BvcykgLyohPCAweDAwMDAwMEZGICovDQojZGVmaW5lIERBQ19ESFI4UjFfREFDQzFESFIgICAgICAgICAgICAgICAgIERBQ19ESFI4UjFfREFDQzFESFJfTXNrICAgICAgICAgICAgLyohPERBQyBjaGFubmVsMSA4LWJpdCBSaWdodCBhbGlnbmVkIGRhdGEgKi8NCg0KLyoqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgREFDX0RIUjEyUjIgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgREFDX0RIUjEyUjJfREFDQzJESFJfUG9zICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgREFDX0RIUjEyUjJfREFDQzJESFJfTXNrICAgICAgICAgICAgKDB4RkZGVSA8PCBEQUNfREhSMTJSMl9EQUNDMkRIUl9Qb3MpIC8qITwgMHgwMDAwMEZGRiAqLw0KI2RlZmluZSBEQUNfREhSMTJSMl9EQUNDMkRIUiAgICAgICAgICAgICAgICBEQUNfREhSMTJSMl9EQUNDMkRIUl9Nc2sgICAgICAgICAgIC8qITxEQUMgY2hhbm5lbDIgMTItYml0IFJpZ2h0IGFsaWduZWQgZGF0YSAqLw0KDQovKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBEQUNfREhSMTJMMiByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBEQUNfREhSMTJMMl9EQUNDMkRIUl9Qb3MgICAgICAgICAgICAoNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBEQUNfREhSMTJMMl9EQUNDMkRIUl9Nc2sgICAgICAgICAgICAoMHhGRkZVIDw8IERBQ19ESFIxMkwyX0RBQ0MyREhSX1BvcykgLyohPCAweDAwMDBGRkYwICovDQojZGVmaW5lIERBQ19ESFIxMkwyX0RBQ0MyREhSICAgICAgICAgICAgICAgIERBQ19ESFIxMkwyX0RBQ0MyREhSX01zayAgICAgICAgICAgLyohPERBQyBjaGFubmVsMiAxMi1iaXQgTGVmdCBhbGlnbmVkIGRhdGEgKi8NCg0KLyoqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIERBQ19ESFI4UjIgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgREFDX0RIUjhSMl9EQUNDMkRIUl9Qb3MgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgREFDX0RIUjhSMl9EQUNDMkRIUl9Nc2sgICAgICAgICAgICAgKDB4RkZVIDw8IERBQ19ESFI4UjJfREFDQzJESFJfUG9zKSAvKiE8IDB4MDAwMDAwRkYgKi8NCiNkZWZpbmUgREFDX0RIUjhSMl9EQUNDMkRIUiAgICAgICAgICAgICAgICAgREFDX0RIUjhSMl9EQUNDMkRIUl9Nc2sgICAgICAgICAgICAvKiE8REFDIGNoYW5uZWwyIDgtYml0IFJpZ2h0IGFsaWduZWQgZGF0YSAqLw0KDQovKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBEQUNfREhSMTJSRCByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBEQUNfREhSMTJSRF9EQUNDMURIUl9Qb3MgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBEQUNfREhSMTJSRF9EQUNDMURIUl9Nc2sgICAgICAgICAgICAoMHhGRkZVIDw8IERBQ19ESFIxMlJEX0RBQ0MxREhSX1BvcykgLyohPCAweDAwMDAwRkZGICovDQojZGVmaW5lIERBQ19ESFIxMlJEX0RBQ0MxREhSICAgICAgICAgICAgICAgIERBQ19ESFIxMlJEX0RBQ0MxREhSX01zayAgICAgICAgICAgLyohPERBQyBjaGFubmVsMSAxMi1iaXQgUmlnaHQgYWxpZ25lZCBkYXRhICovDQojZGVmaW5lIERBQ19ESFIxMlJEX0RBQ0MyREhSX1BvcyAgICAgICAgICAgICgxNlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIERBQ19ESFIxMlJEX0RBQ0MyREhSX01zayAgICAgICAgICAgICgweEZGRlUgPDwgREFDX0RIUjEyUkRfREFDQzJESFJfUG9zKSAvKiE8IDB4MEZGRjAwMDAgKi8NCiNkZWZpbmUgREFDX0RIUjEyUkRfREFDQzJESFIgICAgICAgICAgICAgICAgREFDX0RIUjEyUkRfREFDQzJESFJfTXNrICAgICAgICAgICAvKiE8REFDIGNoYW5uZWwyIDEyLWJpdCBSaWdodCBhbGlnbmVkIGRhdGEgKi8NCg0KLyoqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgREFDX0RIUjEyTEQgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgREFDX0RIUjEyTERfREFDQzFESFJfUG9zICAgICAgICAgICAgKDRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgREFDX0RIUjEyTERfREFDQzFESFJfTXNrICAgICAgICAgICAgKDB4RkZGVSA8PCBEQUNfREhSMTJMRF9EQUNDMURIUl9Qb3MpIC8qITwgMHgwMDAwRkZGMCAqLw0KI2RlZmluZSBEQUNfREhSMTJMRF9EQUNDMURIUiAgICAgICAgICAgICAgICBEQUNfREhSMTJMRF9EQUNDMURIUl9Nc2sgICAgICAgICAgIC8qITxEQUMgY2hhbm5lbDEgMTItYml0IExlZnQgYWxpZ25lZCBkYXRhICovDQojZGVmaW5lIERBQ19ESFIxMkxEX0RBQ0MyREhSX1BvcyAgICAgICAgICAgICgyMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIERBQ19ESFIxMkxEX0RBQ0MyREhSX01zayAgICAgICAgICAgICgweEZGRlUgPDwgREFDX0RIUjEyTERfREFDQzJESFJfUG9zKSAvKiE8IDB4RkZGMDAwMDAgKi8NCiNkZWZpbmUgREFDX0RIUjEyTERfREFDQzJESFIgICAgICAgICAgICAgICAgREFDX0RIUjEyTERfREFDQzJESFJfTXNrICAgICAgICAgICAvKiE8REFDIGNoYW5uZWwyIDEyLWJpdCBMZWZ0IGFsaWduZWQgZGF0YSAqLw0KDQovKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgREFDX0RIUjhSRCByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBEQUNfREhSOFJEX0RBQ0MxREhSX1BvcyAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBEQUNfREhSOFJEX0RBQ0MxREhSX01zayAgICAgICAgICAgICAoMHhGRlUgPDwgREFDX0RIUjhSRF9EQUNDMURIUl9Qb3MpIC8qITwgMHgwMDAwMDBGRiAqLw0KI2RlZmluZSBEQUNfREhSOFJEX0RBQ0MxREhSICAgICAgICAgICAgICAgICBEQUNfREhSOFJEX0RBQ0MxREhSX01zayAgICAgICAgICAgIC8qITxEQUMgY2hhbm5lbDEgOC1iaXQgUmlnaHQgYWxpZ25lZCBkYXRhICovDQojZGVmaW5lIERBQ19ESFI4UkRfREFDQzJESFJfUG9zICAgICAgICAgICAgICg4VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIERBQ19ESFI4UkRfREFDQzJESFJfTXNrICAgICAgICAgICAgICgweEZGVSA8PCBEQUNfREhSOFJEX0RBQ0MyREhSX1BvcykgLyohPCAweDAwMDBGRjAwICovDQojZGVmaW5lIERBQ19ESFI4UkRfREFDQzJESFIgICAgICAgICAgICAgICAgIERBQ19ESFI4UkRfREFDQzJESFJfTXNrICAgICAgICAgICAgLyohPERBQyBjaGFubmVsMiA4LWJpdCBSaWdodCBhbGlnbmVkIGRhdGEgKi8NCg0KLyoqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBEQUNfRE9SMSByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgREFDX0RPUjFfREFDQzFET1JfUG9zICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgREFDX0RPUjFfREFDQzFET1JfTXNrICAgICAgICAgICAgICAgKDB4RkZGVSA8PCBEQUNfRE9SMV9EQUNDMURPUl9Qb3MpICAvKiE8IDB4MDAwMDBGRkYgKi8NCiNkZWZpbmUgREFDX0RPUjFfREFDQzFET1IgICAgICAgICAgICAgICAgICAgREFDX0RPUjFfREFDQzFET1JfTXNrICAgICAgICAgICAgICAvKiE8REFDIGNoYW5uZWwxIGRhdGEgb3V0cHV0ICovDQoNCi8qKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgREFDX0RPUjIgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIERBQ19ET1IyX0RBQ0MyRE9SX1BvcyAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIERBQ19ET1IyX0RBQ0MyRE9SX01zayAgICAgICAgICAgICAgICgweEZGRlUgPDwgREFDX0RPUjJfREFDQzJET1JfUG9zKSAgLyohPCAweDAwMDAwRkZGICovDQojZGVmaW5lIERBQ19ET1IyX0RBQ0MyRE9SICAgICAgICAgICAgICAgICAgIERBQ19ET1IyX0RBQ0MyRE9SX01zayAgICAgICAgICAgICAgLyohPERBQyBjaGFubmVsMiBkYXRhIG91dHB1dCAqLw0KDQovKioqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBEQUNfU1IgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBEQUNfU1JfRE1BVURSMV9Qb3MgICAgICAgICAgICAgICAgICAoMTNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBEQUNfU1JfRE1BVURSMV9Nc2sgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBEQUNfU1JfRE1BVURSMV9Qb3MpICAgICAgIC8qITwgMHgwMDAwMjAwMCAqLw0KI2RlZmluZSBEQUNfU1JfRE1BVURSMSAgICAgICAgICAgICAgICAgICAgICBEQUNfU1JfRE1BVURSMV9Nc2sgICAgICAgICAgICAgICAgIC8qITxEQUMgY2hhbm5lbDEgRE1BIHVuZGVycnVuIGZsYWcgKi8NCiNkZWZpbmUgREFDX1NSX0RNQVVEUjJfUG9zICAgICAgICAgICAgICAgICAgKDI5VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgREFDX1NSX0RNQVVEUjJfTXNrICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgREFDX1NSX0RNQVVEUjJfUG9zKSAgICAgICAvKiE8IDB4MjAwMDAwMDAgKi8NCiNkZWZpbmUgREFDX1NSX0RNQVVEUjIgICAgICAgICAgICAgICAgICAgICAgREFDX1NSX0RNQVVEUjJfTXNrICAgICAgICAgICAgICAgICAvKiE8REFDIGNoYW5uZWwyIERNQSB1bmRlcnJ1biBmbGFnICovDQoNCi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovDQovKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLw0KLyogICAgICAgICAgICAgICAgICAgICAgICAgICBEZWJ1ZyBNQ1UgKERCR01DVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8NCi8qICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovDQovKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLw0KDQovKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIERCR01DVV9JRENPREUgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBEQkdNQ1VfSURDT0RFX0RFVl9JRF9Qb3MgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBEQkdNQ1VfSURDT0RFX0RFVl9JRF9Nc2sgICAgICAgICAgICAgICAgICgweEZGRlUgPDwgREJHTUNVX0lEQ09ERV9ERVZfSURfUG9zKSAvKiE8IDB4MDAwMDBGRkYgKi8NCiNkZWZpbmUgREJHTUNVX0lEQ09ERV9ERVZfSUQgICAgICAgICAgICAgICAgICAgICBEQkdNQ1VfSURDT0RFX0RFVl9JRF9Nc2sgICAgICAvKiE8IERldmljZSBJZGVudGlmaWVyICovDQoNCiNkZWZpbmUgREJHTUNVX0lEQ09ERV9SRVZfSURfUG9zICAgICAgICAgICAgICAgICAoMTZVKSAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgREJHTUNVX0lEQ09ERV9SRVZfSURfTXNrICAgICAgICAgICAgICAgICAoMHhGRkZGVSA8PCBEQkdNQ1VfSURDT0RFX1JFVl9JRF9Qb3MpIC8qITwgMHhGRkZGMDAwMCAqLw0KI2RlZmluZSBEQkdNQ1VfSURDT0RFX1JFVl9JRCAgICAgICAgICAgICAgICAgICAgIERCR01DVV9JRENPREVfUkVWX0lEX01zayAgICAgIC8qITwgUkVWX0lEWzE1OjBdIGJpdHMgKFJldmlzaW9uIElkZW50aWZpZXIpICovDQojZGVmaW5lIERCR01DVV9JRENPREVfUkVWX0lEXzAgICAgICAgICAgICAgICAgICAgKDB4MDAwMVUgPDwgREJHTUNVX0lEQ09ERV9SRVZfSURfUG9zKSAvKiE8IDB4MDAwMTAwMDAgKi8NCiNkZWZpbmUgREJHTUNVX0lEQ09ERV9SRVZfSURfMSAgICAgICAgICAgICAgICAgICAoMHgwMDAyVSA8PCBEQkdNQ1VfSURDT0RFX1JFVl9JRF9Qb3MpIC8qITwgMHgwMDAyMDAwMCAqLw0KI2RlZmluZSBEQkdNQ1VfSURDT0RFX1JFVl9JRF8yICAgICAgICAgICAgICAgICAgICgweDAwMDRVIDw8IERCR01DVV9JRENPREVfUkVWX0lEX1BvcykgLyohPCAweDAwMDQwMDAwICovDQojZGVmaW5lIERCR01DVV9JRENPREVfUkVWX0lEXzMgICAgICAgICAgICAgICAgICAgKDB4MDAwOFUgPDwgREJHTUNVX0lEQ09ERV9SRVZfSURfUG9zKSAvKiE8IDB4MDAwODAwMDAgKi8NCiNkZWZpbmUgREJHTUNVX0lEQ09ERV9SRVZfSURfNCAgICAgICAgICAgICAgICAgICAoMHgwMDEwVSA8PCBEQkdNQ1VfSURDT0RFX1JFVl9JRF9Qb3MpIC8qITwgMHgwMDEwMDAwMCAqLw0KI2RlZmluZSBEQkdNQ1VfSURDT0RFX1JFVl9JRF81ICAgICAgICAgICAgICAgICAgICgweDAwMjBVIDw8IERCR01DVV9JRENPREVfUkVWX0lEX1BvcykgLyohPCAweDAwMjAwMDAwICovDQojZGVmaW5lIERCR01DVV9JRENPREVfUkVWX0lEXzYgICAgICAgICAgICAgICAgICAgKDB4MDA0MFUgPDwgREJHTUNVX0lEQ09ERV9SRVZfSURfUG9zKSAvKiE8IDB4MDA0MDAwMDAgKi8NCiNkZWZpbmUgREJHTUNVX0lEQ09ERV9SRVZfSURfNyAgICAgICAgICAgICAgICAgICAoMHgwMDgwVSA8PCBEQkdNQ1VfSURDT0RFX1JFVl9JRF9Qb3MpIC8qITwgMHgwMDgwMDAwMCAqLw0KI2RlZmluZSBEQkdNQ1VfSURDT0RFX1JFVl9JRF84ICAgICAgICAgICAgICAgICAgICgweDAxMDBVIDw8IERCR01DVV9JRENPREVfUkVWX0lEX1BvcykgLyohPCAweDAxMDAwMDAwICovDQojZGVmaW5lIERCR01DVV9JRENPREVfUkVWX0lEXzkgICAgICAgICAgICAgICAgICAgKDB4MDIwMFUgPDwgREJHTUNVX0lEQ09ERV9SRVZfSURfUG9zKSAvKiE8IDB4MDIwMDAwMDAgKi8NCiNkZWZpbmUgREJHTUNVX0lEQ09ERV9SRVZfSURfMTAgICAgICAgICAgICAgICAgICAoMHgwNDAwVSA8PCBEQkdNQ1VfSURDT0RFX1JFVl9JRF9Qb3MpIC8qITwgMHgwNDAwMDAwMCAqLw0KI2RlZmluZSBEQkdNQ1VfSURDT0RFX1JFVl9JRF8xMSAgICAgICAgICAgICAgICAgICgweDA4MDBVIDw8IERCR01DVV9JRENPREVfUkVWX0lEX1BvcykgLyohPCAweDA4MDAwMDAwICovDQojZGVmaW5lIERCR01DVV9JRENPREVfUkVWX0lEXzEyICAgICAgICAgICAgICAgICAgKDB4MTAwMFUgPDwgREJHTUNVX0lEQ09ERV9SRVZfSURfUG9zKSAvKiE8IDB4MTAwMDAwMDAgKi8NCiNkZWZpbmUgREJHTUNVX0lEQ09ERV9SRVZfSURfMTMgICAgICAgICAgICAgICAgICAoMHgyMDAwVSA8PCBEQkdNQ1VfSURDT0RFX1JFVl9JRF9Qb3MpIC8qITwgMHgyMDAwMDAwMCAqLw0KI2RlZmluZSBEQkdNQ1VfSURDT0RFX1JFVl9JRF8xNCAgICAgICAgICAgICAgICAgICgweDQwMDBVIDw8IERCR01DVV9JRENPREVfUkVWX0lEX1BvcykgLyohPCAweDQwMDAwMDAwICovDQojZGVmaW5lIERCR01DVV9JRENPREVfUkVWX0lEXzE1ICAgICAgICAgICAgICAgICAgKDB4ODAwMFUgPDwgREJHTUNVX0lEQ09ERV9SRVZfSURfUG9zKSAvKiE8IDB4ODAwMDAwMDAgKi8NCg0KLyoqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIERCR01DVV9DUiByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgREJHTUNVX0NSX0RCR19TTEVFUF9Qb3MgICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgREJHTUNVX0NSX0RCR19TTEVFUF9Nc2sgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBEQkdNQ1VfQ1JfREJHX1NMRUVQX1BvcykgLyohPCAweDAwMDAwMDAxICovDQojZGVmaW5lIERCR01DVV9DUl9EQkdfU0xFRVAgICAgICAgICAgICAgICAgICAgICAgREJHTUNVX0NSX0RCR19TTEVFUF9Nc2sgICAgICAgLyohPCBEZWJ1ZyBTbGVlcCBNb2RlICovDQojZGVmaW5lIERCR01DVV9DUl9EQkdfU1RPUF9Qb3MgICAgICAgICAgICAgICAgICAgKDFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIERCR01DVV9DUl9EQkdfU1RPUF9Nc2sgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgREJHTUNVX0NSX0RCR19TVE9QX1BvcykgLyohPCAweDAwMDAwMDAyICovDQojZGVmaW5lIERCR01DVV9DUl9EQkdfU1RPUCAgICAgICAgICAgICAgICAgICAgICAgREJHTUNVX0NSX0RCR19TVE9QX01zayAgICAgICAgLyohPCBEZWJ1ZyBTdG9wIE1vZGUgKi8NCiNkZWZpbmUgREJHTUNVX0NSX0RCR19TVEFOREJZX1BvcyAgICAgICAgICAgICAgICAoMlUpICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgREJHTUNVX0NSX0RCR19TVEFOREJZX01zayAgICAgICAgICAgICAgICAoMHgxVSA8PCBEQkdNQ1VfQ1JfREJHX1NUQU5EQllfUG9zKSAvKiE8IDB4MDAwMDAwMDQgKi8NCiNkZWZpbmUgREJHTUNVX0NSX0RCR19TVEFOREJZICAgICAgICAgICAgICAgICAgICBEQkdNQ1VfQ1JfREJHX1NUQU5EQllfTXNrICAgICAvKiE8IERlYnVnIFN0YW5kYnkgbW9kZSAqLw0KI2RlZmluZSBEQkdNQ1VfQ1JfVFJBQ0VfSU9FTl9Qb3MgICAgICAgICAgICAgICAgICg1VSkgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBEQkdNQ1VfQ1JfVFJBQ0VfSU9FTl9Nc2sgICAgICAgICAgICAgICAgICgweDFVIDw8IERCR01DVV9DUl9UUkFDRV9JT0VOX1BvcykgLyohPCAweDAwMDAwMDIwICovDQojZGVmaW5lIERCR01DVV9DUl9UUkFDRV9JT0VOICAgICAgICAgICAgICAgICAgICAgREJHTUNVX0NSX1RSQUNFX0lPRU5fTXNrICAgICAgLyohPCBUcmFjZSBQaW4gQXNzaWdubWVudCBDb250cm9sICovDQoNCiNkZWZpbmUgREJHTUNVX0NSX1RSQUNFX01PREVfUG9zICAgICAgICAgICAgICAgICAoNlUpICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgREJHTUNVX0NSX1RSQUNFX01PREVfTXNrICAgICAgICAgICAgICAgICAoMHgzVSA8PCBEQkdNQ1VfQ1JfVFJBQ0VfTU9ERV9Qb3MpIC8qITwgMHgwMDAwMDBDMCAqLw0KI2RlZmluZSBEQkdNQ1VfQ1JfVFJBQ0VfTU9ERSAgICAgICAgICAgICAgICAgICAgIERCR01DVV9DUl9UUkFDRV9NT0RFX01zayAgICAgIC8qITwgVFJBQ0VfTU9ERVsxOjBdIGJpdHMgKFRyYWNlIFBpbiBBc3NpZ25tZW50IENvbnRyb2wpICovDQojZGVmaW5lIERCR01DVV9DUl9UUkFDRV9NT0RFXzAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgREJHTUNVX0NSX1RSQUNFX01PREVfUG9zKSAvKiE8IDB4MDAwMDAwNDAgKi8NCiNkZWZpbmUgREJHTUNVX0NSX1RSQUNFX01PREVfMSAgICAgICAgICAgICAgICAgICAoMHgyVSA8PCBEQkdNQ1VfQ1JfVFJBQ0VfTU9ERV9Qb3MpIC8qITwgMHgwMDAwMDA4MCAqLw0KDQovKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgREJHTUNVX0FQQjFfRlogcmVnaXN0ZXIgICoqKioqKioqKioqKioqLw0KDQojZGVmaW5lIERCR01DVV9BUEIxX0ZaX0RCR19USU0yX1NUT1BfUG9zICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIERCR01DVV9BUEIxX0ZaX0RCR19USU0yX1NUT1BfTXNrICAgICAgICAgKDB4MVUgPDwgREJHTUNVX0FQQjFfRlpfREJHX1RJTTJfU1RPUF9Qb3MpIC8qITwgMHgwMDAwMDAwMSAqLw0KI2RlZmluZSBEQkdNQ1VfQVBCMV9GWl9EQkdfVElNMl9TVE9QICAgICAgICAgICAgIERCR01DVV9BUEIxX0ZaX0RCR19USU0yX1NUT1BfTXNrIC8qITwgVElNMiBjb3VudGVyIHN0b3BwZWQgd2hlbiBjb3JlIGlzIGhhbHRlZCAqLw0KI2RlZmluZSBEQkdNQ1VfQVBCMV9GWl9EQkdfVElNM19TVE9QX1BvcyAgICAgICAgICgxVSkgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBEQkdNQ1VfQVBCMV9GWl9EQkdfVElNM19TVE9QX01zayAgICAgICAgICgweDFVIDw8IERCR01DVV9BUEIxX0ZaX0RCR19USU0zX1NUT1BfUG9zKSAvKiE8IDB4MDAwMDAwMDIgKi8NCiNkZWZpbmUgREJHTUNVX0FQQjFfRlpfREJHX1RJTTNfU1RPUCAgICAgICAgICAgICBEQkdNQ1VfQVBCMV9GWl9EQkdfVElNM19TVE9QX01zayAvKiE8IFRJTTMgY291bnRlciBzdG9wcGVkIHdoZW4gY29yZSBpcyBoYWx0ZWQgKi8NCiNkZWZpbmUgREJHTUNVX0FQQjFfRlpfREJHX1RJTTRfU1RPUF9Qb3MgICAgICAgICAoMlUpICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgREJHTUNVX0FQQjFfRlpfREJHX1RJTTRfU1RPUF9Nc2sgICAgICAgICAoMHgxVSA8PCBEQkdNQ1VfQVBCMV9GWl9EQkdfVElNNF9TVE9QX1BvcykgLyohPCAweDAwMDAwMDA0ICovDQojZGVmaW5lIERCR01DVV9BUEIxX0ZaX0RCR19USU00X1NUT1AgICAgICAgICAgICAgREJHTUNVX0FQQjFfRlpfREJHX1RJTTRfU1RPUF9Nc2sgLyohPCBUSU00IGNvdW50ZXIgc3RvcHBlZCB3aGVuIGNvcmUgaXMgaGFsdGVkICovDQojZGVmaW5lIERCR01DVV9BUEIxX0ZaX0RCR19USU01X1NUT1BfUG9zICAgICAgICAgKDNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIERCR01DVV9BUEIxX0ZaX0RCR19USU01X1NUT1BfTXNrICAgICAgICAgKDB4MVUgPDwgREJHTUNVX0FQQjFfRlpfREJHX1RJTTVfU1RPUF9Qb3MpIC8qITwgMHgwMDAwMDAwOCAqLw0KI2RlZmluZSBEQkdNQ1VfQVBCMV9GWl9EQkdfVElNNV9TVE9QICAgICAgICAgICAgIERCR01DVV9BUEIxX0ZaX0RCR19USU01X1NUT1BfTXNrIC8qITwgVElNNSBjb3VudGVyIHN0b3BwZWQgd2hlbiBjb3JlIGlzIGhhbHRlZCAqLw0KI2RlZmluZSBEQkdNQ1VfQVBCMV9GWl9EQkdfVElNNl9TVE9QX1BvcyAgICAgICAgICg0VSkgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBEQkdNQ1VfQVBCMV9GWl9EQkdfVElNNl9TVE9QX01zayAgICAgICAgICgweDFVIDw8IERCR01DVV9BUEIxX0ZaX0RCR19USU02X1NUT1BfUG9zKSAvKiE8IDB4MDAwMDAwMTAgKi8NCiNkZWZpbmUgREJHTUNVX0FQQjFfRlpfREJHX1RJTTZfU1RPUCAgICAgICAgICAgICBEQkdNQ1VfQVBCMV9GWl9EQkdfVElNNl9TVE9QX01zayAvKiE8IFRJTTYgY291bnRlciBzdG9wcGVkIHdoZW4gY29yZSBpcyBoYWx0ZWQgKi8NCiNkZWZpbmUgREJHTUNVX0FQQjFfRlpfREJHX1RJTTdfU1RPUF9Qb3MgICAgICAgICAoNVUpICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgREJHTUNVX0FQQjFfRlpfREJHX1RJTTdfU1RPUF9Nc2sgICAgICAgICAoMHgxVSA8PCBEQkdNQ1VfQVBCMV9GWl9EQkdfVElNN19TVE9QX1BvcykgLyohPCAweDAwMDAwMDIwICovDQojZGVmaW5lIERCR01DVV9BUEIxX0ZaX0RCR19USU03X1NUT1AgICAgICAgICAgICAgREJHTUNVX0FQQjFfRlpfREJHX1RJTTdfU1RPUF9Nc2sgLyohPCBUSU03IGNvdW50ZXIgc3RvcHBlZCB3aGVuIGNvcmUgaXMgaGFsdGVkICovDQojZGVmaW5lIERCR01DVV9BUEIxX0ZaX0RCR19SVENfU1RPUF9Qb3MgICAgICAgICAgKDEwVSkgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIERCR01DVV9BUEIxX0ZaX0RCR19SVENfU1RPUF9Nc2sgICAgICAgICAgKDB4MVUgPDwgREJHTUNVX0FQQjFfRlpfREJHX1JUQ19TVE9QX1BvcykgLyohPCAweDAwMDAwNDAwICovDQojZGVmaW5lIERCR01DVV9BUEIxX0ZaX0RCR19SVENfU1RPUCAgICAgICAgICAgICAgREJHTUNVX0FQQjFfRlpfREJHX1JUQ19TVE9QX01zayAvKiE8IFJUQyBDb3VudGVyIHN0b3BwZWQgd2hlbiBDb3JlIGlzIGhhbHRlZCAqLw0KI2RlZmluZSBEQkdNQ1VfQVBCMV9GWl9EQkdfV1dER19TVE9QX1BvcyAgICAgICAgICgxMVUpICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBEQkdNQ1VfQVBCMV9GWl9EQkdfV1dER19TVE9QX01zayAgICAgICAgICgweDFVIDw8IERCR01DVV9BUEIxX0ZaX0RCR19XV0RHX1NUT1BfUG9zKSAvKiE8IDB4MDAwMDA4MDAgKi8NCiNkZWZpbmUgREJHTUNVX0FQQjFfRlpfREJHX1dXREdfU1RPUCAgICAgICAgICAgICBEQkdNQ1VfQVBCMV9GWl9EQkdfV1dER19TVE9QX01zayAvKiE8IERlYnVnIFdpbmRvdyBXYXRjaGRvZyBzdG9wcGVkIHdoZW4gQ29yZSBpcyBoYWx0ZWQgKi8NCiNkZWZpbmUgREJHTUNVX0FQQjFfRlpfREJHX0lXREdfU1RPUF9Qb3MgICAgICAgICAoMTJVKSAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgREJHTUNVX0FQQjFfRlpfREJHX0lXREdfU1RPUF9Nc2sgICAgICAgICAoMHgxVSA8PCBEQkdNQ1VfQVBCMV9GWl9EQkdfSVdER19TVE9QX1BvcykgLyohPCAweDAwMDAxMDAwICovDQojZGVmaW5lIERCR01DVV9BUEIxX0ZaX0RCR19JV0RHX1NUT1AgICAgICAgICAgICAgREJHTUNVX0FQQjFfRlpfREJHX0lXREdfU1RPUF9Nc2sgLyohPCBEZWJ1ZyBJbmRlcGVuZGVudCBXYXRjaGRvZyBzdG9wcGVkIHdoZW4gQ29yZSBpcyBoYWx0ZWQgKi8NCiNkZWZpbmUgREJHTUNVX0FQQjFfRlpfREJHX0kyQzFfU01CVVNfVElNRU9VVF9Qb3MgKDIxVSkgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgREJHTUNVX0FQQjFfRlpfREJHX0kyQzFfU01CVVNfVElNRU9VVF9Nc2sgKDB4MVUgPDwgREJHTUNVX0FQQjFfRlpfREJHX0kyQzFfU01CVVNfVElNRU9VVF9Qb3MpIC8qITwgMHgwMDIwMDAwMCAqLw0KI2RlZmluZSBEQkdNQ1VfQVBCMV9GWl9EQkdfSTJDMV9TTUJVU19USU1FT1VUICAgIERCR01DVV9BUEIxX0ZaX0RCR19JMkMxX1NNQlVTX1RJTUVPVVRfTXNrIC8qITwgU01CVVMgdGltZW91dCBtb2RlIHN0b3BwZWQgd2hlbiBDb3JlIGlzIGhhbHRlZCAqLw0KI2RlZmluZSBEQkdNQ1VfQVBCMV9GWl9EQkdfSTJDMl9TTUJVU19USU1FT1VUX1BvcyAoMjJVKSAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBEQkdNQ1VfQVBCMV9GWl9EQkdfSTJDMl9TTUJVU19USU1FT1VUX01zayAoMHgxVSA8PCBEQkdNQ1VfQVBCMV9GWl9EQkdfSTJDMl9TTUJVU19USU1FT1VUX1BvcykgLyohPCAweDAwNDAwMDAwICovDQojZGVmaW5lIERCR01DVV9BUEIxX0ZaX0RCR19JMkMyX1NNQlVTX1RJTUVPVVQgICAgREJHTUNVX0FQQjFfRlpfREJHX0kyQzJfU01CVVNfVElNRU9VVF9Nc2sgLyohPCBTTUJVUyB0aW1lb3V0IG1vZGUgc3RvcHBlZCB3aGVuIENvcmUgaXMgaGFsdGVkICovDQoNCi8qKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBEQkdNQ1VfQVBCMl9GWiByZWdpc3RlciAgKioqKioqKioqKioqKiovDQoNCiNkZWZpbmUgREJHTUNVX0FQQjJfRlpfREJHX1RJTTlfU1RPUF9Qb3MgICAgICAgICAoMlUpICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgREJHTUNVX0FQQjJfRlpfREJHX1RJTTlfU1RPUF9Nc2sgICAgICAgICAoMHgxVSA8PCBEQkdNQ1VfQVBCMl9GWl9EQkdfVElNOV9TVE9QX1BvcykgLyohPCAweDAwMDAwMDA0ICovDQojZGVmaW5lIERCR01DVV9BUEIyX0ZaX0RCR19USU05X1NUT1AgICAgICAgICAgICAgREJHTUNVX0FQQjJfRlpfREJHX1RJTTlfU1RPUF9Nc2sgLyohPCBUSU05IGNvdW50ZXIgc3RvcHBlZCB3aGVuIGNvcmUgaXMgaGFsdGVkICovDQojZGVmaW5lIERCR01DVV9BUEIyX0ZaX0RCR19USU0xMF9TVE9QX1BvcyAgICAgICAgKDNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIERCR01DVV9BUEIyX0ZaX0RCR19USU0xMF9TVE9QX01zayAgICAgICAgKDB4MVUgPDwgREJHTUNVX0FQQjJfRlpfREJHX1RJTTEwX1NUT1BfUG9zKSAvKiE8IDB4MDAwMDAwMDggKi8NCiNkZWZpbmUgREJHTUNVX0FQQjJfRlpfREJHX1RJTTEwX1NUT1AgICAgICAgICAgICBEQkdNQ1VfQVBCMl9GWl9EQkdfVElNMTBfU1RPUF9Nc2sgLyohPCBUSU0xMCBjb3VudGVyIHN0b3BwZWQgd2hlbiBjb3JlIGlzIGhhbHRlZCAqLw0KI2RlZmluZSBEQkdNQ1VfQVBCMl9GWl9EQkdfVElNMTFfU1RPUF9Qb3MgICAgICAgICg0VSkgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBEQkdNQ1VfQVBCMl9GWl9EQkdfVElNMTFfU1RPUF9Nc2sgICAgICAgICgweDFVIDw8IERCR01DVV9BUEIyX0ZaX0RCR19USU0xMV9TVE9QX1BvcykgLyohPCAweDAwMDAwMDEwICovDQojZGVmaW5lIERCR01DVV9BUEIyX0ZaX0RCR19USU0xMV9TVE9QICAgICAgICAgICAgREJHTUNVX0FQQjJfRlpfREJHX1RJTTExX1NUT1BfTXNrIC8qITwgVElNMTEgY291bnRlciBzdG9wcGVkIHdoZW4gY29yZSBpcyBoYWx0ZWQgKi8NCg0KLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8NCi8qICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovDQovKiAgICAgICAgICAgICAgICAgICAgICAgICAgIERNQSBDb250cm9sbGVyIChETUEpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLw0KLyogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8NCi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovDQoNCi8qKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgRE1BX0lTUiByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIERNQV9JU1JfR0lGMV9Qb3MgICAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIERNQV9JU1JfR0lGMV9Nc2sgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IERNQV9JU1JfR0lGMV9Qb3MpICAgICAgICAgLyohPCAweDAwMDAwMDAxICovDQojZGVmaW5lIERNQV9JU1JfR0lGMSAgICAgICAgICAgICAgICAgICAgICAgIERNQV9JU1JfR0lGMV9Nc2sgICAgICAgICAgICAgICAgICAgLyohPCBDaGFubmVsIDEgR2xvYmFsIGludGVycnVwdCBmbGFnICovDQojZGVmaW5lIERNQV9JU1JfVENJRjFfUG9zICAgICAgICAgICAgICAgICAgICgxVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIERNQV9JU1JfVENJRjFfTXNrICAgICAgICAgICAgICAgICAgICgweDFVIDw8IERNQV9JU1JfVENJRjFfUG9zKSAgICAgICAgLyohPCAweDAwMDAwMDAyICovDQojZGVmaW5lIERNQV9JU1JfVENJRjEgICAgICAgICAgICAgICAgICAgICAgIERNQV9JU1JfVENJRjFfTXNrICAgICAgICAgICAgICAgICAgLyohPCBDaGFubmVsIDEgVHJhbnNmZXIgQ29tcGxldGUgZmxhZyAqLw0KI2RlZmluZSBETUFfSVNSX0hUSUYxX1BvcyAgICAgICAgICAgICAgICAgICAoMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBETUFfSVNSX0hUSUYxX01zayAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBETUFfSVNSX0hUSUYxX1BvcykgICAgICAgIC8qITwgMHgwMDAwMDAwNCAqLw0KI2RlZmluZSBETUFfSVNSX0hUSUYxICAgICAgICAgICAgICAgICAgICAgICBETUFfSVNSX0hUSUYxX01zayAgICAgICAgICAgICAgICAgIC8qITwgQ2hhbm5lbCAxIEhhbGYgVHJhbnNmZXIgZmxhZyAqLw0KI2RlZmluZSBETUFfSVNSX1RFSUYxX1BvcyAgICAgICAgICAgICAgICAgICAoM1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBETUFfSVNSX1RFSUYxX01zayAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBETUFfSVNSX1RFSUYxX1BvcykgICAgICAgIC8qITwgMHgwMDAwMDAwOCAqLw0KI2RlZmluZSBETUFfSVNSX1RFSUYxICAgICAgICAgICAgICAgICAgICAgICBETUFfSVNSX1RFSUYxX01zayAgICAgICAgICAgICAgICAgIC8qITwgQ2hhbm5lbCAxIFRyYW5zZmVyIEVycm9yIGZsYWcgKi8NCiNkZWZpbmUgRE1BX0lTUl9HSUYyX1BvcyAgICAgICAgICAgICAgICAgICAgKDRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRE1BX0lTUl9HSUYyX01zayAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgRE1BX0lTUl9HSUYyX1BvcykgICAgICAgICAvKiE8IDB4MDAwMDAwMTAgKi8NCiNkZWZpbmUgRE1BX0lTUl9HSUYyICAgICAgICAgICAgICAgICAgICAgICAgRE1BX0lTUl9HSUYyX01zayAgICAgICAgICAgICAgICAgICAvKiE8IENoYW5uZWwgMiBHbG9iYWwgaW50ZXJydXB0IGZsYWcgKi8NCiNkZWZpbmUgRE1BX0lTUl9UQ0lGMl9Qb3MgICAgICAgICAgICAgICAgICAgKDVVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRE1BX0lTUl9UQ0lGMl9Nc2sgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgRE1BX0lTUl9UQ0lGMl9Qb3MpICAgICAgICAvKiE8IDB4MDAwMDAwMjAgKi8NCiNkZWZpbmUgRE1BX0lTUl9UQ0lGMiAgICAgICAgICAgICAgICAgICAgICAgRE1BX0lTUl9UQ0lGMl9Nc2sgICAgICAgICAgICAgICAgICAvKiE8IENoYW5uZWwgMiBUcmFuc2ZlciBDb21wbGV0ZSBmbGFnICovDQojZGVmaW5lIERNQV9JU1JfSFRJRjJfUG9zICAgICAgICAgICAgICAgICAgICg2VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIERNQV9JU1JfSFRJRjJfTXNrICAgICAgICAgICAgICAgICAgICgweDFVIDw8IERNQV9JU1JfSFRJRjJfUG9zKSAgICAgICAgLyohPCAweDAwMDAwMDQwICovDQojZGVmaW5lIERNQV9JU1JfSFRJRjIgICAgICAgICAgICAgICAgICAgICAgIERNQV9JU1JfSFRJRjJfTXNrICAgICAgICAgICAgICAgICAgLyohPCBDaGFubmVsIDIgSGFsZiBUcmFuc2ZlciBmbGFnICovDQojZGVmaW5lIERNQV9JU1JfVEVJRjJfUG9zICAgICAgICAgICAgICAgICAgICg3VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIERNQV9JU1JfVEVJRjJfTXNrICAgICAgICAgICAgICAgICAgICgweDFVIDw8IERNQV9JU1JfVEVJRjJfUG9zKSAgICAgICAgLyohPCAweDAwMDAwMDgwICovDQojZGVmaW5lIERNQV9JU1JfVEVJRjIgICAgICAgICAgICAgICAgICAgICAgIERNQV9JU1JfVEVJRjJfTXNrICAgICAgICAgICAgICAgICAgLyohPCBDaGFubmVsIDIgVHJhbnNmZXIgRXJyb3IgZmxhZyAqLw0KI2RlZmluZSBETUFfSVNSX0dJRjNfUG9zICAgICAgICAgICAgICAgICAgICAoOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBETUFfSVNSX0dJRjNfTXNrICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBETUFfSVNSX0dJRjNfUG9zKSAgICAgICAgIC8qITwgMHgwMDAwMDEwMCAqLw0KI2RlZmluZSBETUFfSVNSX0dJRjMgICAgICAgICAgICAgICAgICAgICAgICBETUFfSVNSX0dJRjNfTXNrICAgICAgICAgICAgICAgICAgIC8qITwgQ2hhbm5lbCAzIEdsb2JhbCBpbnRlcnJ1cHQgZmxhZyAqLw0KI2RlZmluZSBETUFfSVNSX1RDSUYzX1BvcyAgICAgICAgICAgICAgICAgICAoOVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBETUFfSVNSX1RDSUYzX01zayAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBETUFfSVNSX1RDSUYzX1BvcykgICAgICAgIC8qITwgMHgwMDAwMDIwMCAqLw0KI2RlZmluZSBETUFfSVNSX1RDSUYzICAgICAgICAgICAgICAgICAgICAgICBETUFfSVNSX1RDSUYzX01zayAgICAgICAgICAgICAgICAgIC8qITwgQ2hhbm5lbCAzIFRyYW5zZmVyIENvbXBsZXRlIGZsYWcgKi8NCiNkZWZpbmUgRE1BX0lTUl9IVElGM19Qb3MgICAgICAgICAgICAgICAgICAgKDEwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRE1BX0lTUl9IVElGM19Nc2sgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgRE1BX0lTUl9IVElGM19Qb3MpICAgICAgICAvKiE8IDB4MDAwMDA0MDAgKi8NCiNkZWZpbmUgRE1BX0lTUl9IVElGMyAgICAgICAgICAgICAgICAgICAgICAgRE1BX0lTUl9IVElGM19Nc2sgICAgICAgICAgICAgICAgICAvKiE8IENoYW5uZWwgMyBIYWxmIFRyYW5zZmVyIGZsYWcgKi8NCiNkZWZpbmUgRE1BX0lTUl9URUlGM19Qb3MgICAgICAgICAgICAgICAgICAgKDExVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRE1BX0lTUl9URUlGM19Nc2sgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgRE1BX0lTUl9URUlGM19Qb3MpICAgICAgICAvKiE8IDB4MDAwMDA4MDAgKi8NCiNkZWZpbmUgRE1BX0lTUl9URUlGMyAgICAgICAgICAgICAgICAgICAgICAgRE1BX0lTUl9URUlGM19Nc2sgICAgICAgICAgICAgICAgICAvKiE8IENoYW5uZWwgMyBUcmFuc2ZlciBFcnJvciBmbGFnICovDQojZGVmaW5lIERNQV9JU1JfR0lGNF9Qb3MgICAgICAgICAgICAgICAgICAgICgxMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIERNQV9JU1JfR0lGNF9Nc2sgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IERNQV9JU1JfR0lGNF9Qb3MpICAgICAgICAgLyohPCAweDAwMDAxMDAwICovDQojZGVmaW5lIERNQV9JU1JfR0lGNCAgICAgICAgICAgICAgICAgICAgICAgIERNQV9JU1JfR0lGNF9Nc2sgICAgICAgICAgICAgICAgICAgLyohPCBDaGFubmVsIDQgR2xvYmFsIGludGVycnVwdCBmbGFnICovDQojZGVmaW5lIERNQV9JU1JfVENJRjRfUG9zICAgICAgICAgICAgICAgICAgICgxM1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIERNQV9JU1JfVENJRjRfTXNrICAgICAgICAgICAgICAgICAgICgweDFVIDw8IERNQV9JU1JfVENJRjRfUG9zKSAgICAgICAgLyohPCAweDAwMDAyMDAwICovDQojZGVmaW5lIERNQV9JU1JfVENJRjQgICAgICAgICAgICAgICAgICAgICAgIERNQV9JU1JfVENJRjRfTXNrICAgICAgICAgICAgICAgICAgLyohPCBDaGFubmVsIDQgVHJhbnNmZXIgQ29tcGxldGUgZmxhZyAqLw0KI2RlZmluZSBETUFfSVNSX0hUSUY0X1BvcyAgICAgICAgICAgICAgICAgICAoMTRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBETUFfSVNSX0hUSUY0X01zayAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBETUFfSVNSX0hUSUY0X1BvcykgICAgICAgIC8qITwgMHgwMDAwNDAwMCAqLw0KI2RlZmluZSBETUFfSVNSX0hUSUY0ICAgICAgICAgICAgICAgICAgICAgICBETUFfSVNSX0hUSUY0X01zayAgICAgICAgICAgICAgICAgIC8qITwgQ2hhbm5lbCA0IEhhbGYgVHJhbnNmZXIgZmxhZyAqLw0KI2RlZmluZSBETUFfSVNSX1RFSUY0X1BvcyAgICAgICAgICAgICAgICAgICAoMTVVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBETUFfSVNSX1RFSUY0X01zayAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBETUFfSVNSX1RFSUY0X1BvcykgICAgICAgIC8qITwgMHgwMDAwODAwMCAqLw0KI2RlZmluZSBETUFfSVNSX1RFSUY0ICAgICAgICAgICAgICAgICAgICAgICBETUFfSVNSX1RFSUY0X01zayAgICAgICAgICAgICAgICAgIC8qITwgQ2hhbm5lbCA0IFRyYW5zZmVyIEVycm9yIGZsYWcgKi8NCiNkZWZpbmUgRE1BX0lTUl9HSUY1X1BvcyAgICAgICAgICAgICAgICAgICAgKDE2VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRE1BX0lTUl9HSUY1X01zayAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgRE1BX0lTUl9HSUY1X1BvcykgICAgICAgICAvKiE8IDB4MDAwMTAwMDAgKi8NCiNkZWZpbmUgRE1BX0lTUl9HSUY1ICAgICAgICAgICAgICAgICAgICAgICAgRE1BX0lTUl9HSUY1X01zayAgICAgICAgICAgICAgICAgICAvKiE8IENoYW5uZWwgNSBHbG9iYWwgaW50ZXJydXB0IGZsYWcgKi8NCiNkZWZpbmUgRE1BX0lTUl9UQ0lGNV9Qb3MgICAgICAgICAgICAgICAgICAgKDE3VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRE1BX0lTUl9UQ0lGNV9Nc2sgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgRE1BX0lTUl9UQ0lGNV9Qb3MpICAgICAgICAvKiE8IDB4MDAwMjAwMDAgKi8NCiNkZWZpbmUgRE1BX0lTUl9UQ0lGNSAgICAgICAgICAgICAgICAgICAgICAgRE1BX0lTUl9UQ0lGNV9Nc2sgICAgICAgICAgICAgICAgICAvKiE8IENoYW5uZWwgNSBUcmFuc2ZlciBDb21wbGV0ZSBmbGFnICovDQojZGVmaW5lIERNQV9JU1JfSFRJRjVfUG9zICAgICAgICAgICAgICAgICAgICgxOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIERNQV9JU1JfSFRJRjVfTXNrICAgICAgICAgICAgICAgICAgICgweDFVIDw8IERNQV9JU1JfSFRJRjVfUG9zKSAgICAgICAgLyohPCAweDAwMDQwMDAwICovDQojZGVmaW5lIERNQV9JU1JfSFRJRjUgICAgICAgICAgICAgICAgICAgICAgIERNQV9JU1JfSFRJRjVfTXNrICAgICAgICAgICAgICAgICAgLyohPCBDaGFubmVsIDUgSGFsZiBUcmFuc2ZlciBmbGFnICovDQojZGVmaW5lIERNQV9JU1JfVEVJRjVfUG9zICAgICAgICAgICAgICAgICAgICgxOVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIERNQV9JU1JfVEVJRjVfTXNrICAgICAgICAgICAgICAgICAgICgweDFVIDw8IERNQV9JU1JfVEVJRjVfUG9zKSAgICAgICAgLyohPCAweDAwMDgwMDAwICovDQojZGVmaW5lIERNQV9JU1JfVEVJRjUgICAgICAgICAgICAgICAgICAgICAgIERNQV9JU1JfVEVJRjVfTXNrICAgICAgICAgICAgICAgICAgLyohPCBDaGFubmVsIDUgVHJhbnNmZXIgRXJyb3IgZmxhZyAqLw0KI2RlZmluZSBETUFfSVNSX0dJRjZfUG9zICAgICAgICAgICAgICAgICAgICAoMjBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBETUFfSVNSX0dJRjZfTXNrICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBETUFfSVNSX0dJRjZfUG9zKSAgICAgICAgIC8qITwgMHgwMDEwMDAwMCAqLw0KI2RlZmluZSBETUFfSVNSX0dJRjYgICAgICAgICAgICAgICAgICAgICAgICBETUFfSVNSX0dJRjZfTXNrICAgICAgICAgICAgICAgICAgIC8qITwgQ2hhbm5lbCA2IEdsb2JhbCBpbnRlcnJ1cHQgZmxhZyAqLw0KI2RlZmluZSBETUFfSVNSX1RDSUY2X1BvcyAgICAgICAgICAgICAgICAgICAoMjFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBETUFfSVNSX1RDSUY2X01zayAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBETUFfSVNSX1RDSUY2X1BvcykgICAgICAgIC8qITwgMHgwMDIwMDAwMCAqLw0KI2RlZmluZSBETUFfSVNSX1RDSUY2ICAgICAgICAgICAgICAgICAgICAgICBETUFfSVNSX1RDSUY2X01zayAgICAgICAgICAgICAgICAgIC8qITwgQ2hhbm5lbCA2IFRyYW5zZmVyIENvbXBsZXRlIGZsYWcgKi8NCiNkZWZpbmUgRE1BX0lTUl9IVElGNl9Qb3MgICAgICAgICAgICAgICAgICAgKDIyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRE1BX0lTUl9IVElGNl9Nc2sgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgRE1BX0lTUl9IVElGNl9Qb3MpICAgICAgICAvKiE8IDB4MDA0MDAwMDAgKi8NCiNkZWZpbmUgRE1BX0lTUl9IVElGNiAgICAgICAgICAgICAgICAgICAgICAgRE1BX0lTUl9IVElGNl9Nc2sgICAgICAgICAgICAgICAgICAvKiE8IENoYW5uZWwgNiBIYWxmIFRyYW5zZmVyIGZsYWcgKi8NCiNkZWZpbmUgRE1BX0lTUl9URUlGNl9Qb3MgICAgICAgICAgICAgICAgICAgKDIzVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRE1BX0lTUl9URUlGNl9Nc2sgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgRE1BX0lTUl9URUlGNl9Qb3MpICAgICAgICAvKiE8IDB4MDA4MDAwMDAgKi8NCiNkZWZpbmUgRE1BX0lTUl9URUlGNiAgICAgICAgICAgICAgICAgICAgICAgRE1BX0lTUl9URUlGNl9Nc2sgICAgICAgICAgICAgICAgICAvKiE8IENoYW5uZWwgNiBUcmFuc2ZlciBFcnJvciBmbGFnICovDQojZGVmaW5lIERNQV9JU1JfR0lGN19Qb3MgICAgICAgICAgICAgICAgICAgICgyNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIERNQV9JU1JfR0lGN19Nc2sgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IERNQV9JU1JfR0lGN19Qb3MpICAgICAgICAgLyohPCAweDAxMDAwMDAwICovDQojZGVmaW5lIERNQV9JU1JfR0lGNyAgICAgICAgICAgICAgICAgICAgICAgIERNQV9JU1JfR0lGN19Nc2sgICAgICAgICAgICAgICAgICAgLyohPCBDaGFubmVsIDcgR2xvYmFsIGludGVycnVwdCBmbGFnICovDQojZGVmaW5lIERNQV9JU1JfVENJRjdfUG9zICAgICAgICAgICAgICAgICAgICgyNVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIERNQV9JU1JfVENJRjdfTXNrICAgICAgICAgICAgICAgICAgICgweDFVIDw8IERNQV9JU1JfVENJRjdfUG9zKSAgICAgICAgLyohPCAweDAyMDAwMDAwICovDQojZGVmaW5lIERNQV9JU1JfVENJRjcgICAgICAgICAgICAgICAgICAgICAgIERNQV9JU1JfVENJRjdfTXNrICAgICAgICAgICAgICAgICAgLyohPCBDaGFubmVsIDcgVHJhbnNmZXIgQ29tcGxldGUgZmxhZyAqLw0KI2RlZmluZSBETUFfSVNSX0hUSUY3X1BvcyAgICAgICAgICAgICAgICAgICAoMjZVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBETUFfSVNSX0hUSUY3X01zayAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBETUFfSVNSX0hUSUY3X1BvcykgICAgICAgIC8qITwgMHgwNDAwMDAwMCAqLw0KI2RlZmluZSBETUFfSVNSX0hUSUY3ICAgICAgICAgICAgICAgICAgICAgICBETUFfSVNSX0hUSUY3X01zayAgICAgICAgICAgICAgICAgIC8qITwgQ2hhbm5lbCA3IEhhbGYgVHJhbnNmZXIgZmxhZyAqLw0KI2RlZmluZSBETUFfSVNSX1RFSUY3X1BvcyAgICAgICAgICAgICAgICAgICAoMjdVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBETUFfSVNSX1RFSUY3X01zayAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBETUFfSVNSX1RFSUY3X1BvcykgICAgICAgIC8qITwgMHgwODAwMDAwMCAqLw0KI2RlZmluZSBETUFfSVNSX1RFSUY3ICAgICAgICAgICAgICAgICAgICAgICBETUFfSVNSX1RFSUY3X01zayAgICAgICAgICAgICAgICAgIC8qITwgQ2hhbm5lbCA3IFRyYW5zZmVyIEVycm9yIGZsYWcgKi8NCg0KLyoqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBETUFfSUZDUiByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgRE1BX0lGQ1JfQ0dJRjFfUG9zICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRE1BX0lGQ1JfQ0dJRjFfTXNrICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgRE1BX0lGQ1JfQ0dJRjFfUG9zKSAgICAgICAvKiE8IDB4MDAwMDAwMDEgKi8NCiNkZWZpbmUgRE1BX0lGQ1JfQ0dJRjEgICAgICAgICAgICAgICAgICAgICAgRE1BX0lGQ1JfQ0dJRjFfTXNrICAgICAgICAgICAgICAgICAvKiE8IENoYW5uZWwgMSBHbG9iYWwgaW50ZXJydXB0IGNsZWFyICovDQojZGVmaW5lIERNQV9JRkNSX0NUQ0lGMV9Qb3MgICAgICAgICAgICAgICAgICgxVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIERNQV9JRkNSX0NUQ0lGMV9Nc2sgICAgICAgICAgICAgICAgICgweDFVIDw8IERNQV9JRkNSX0NUQ0lGMV9Qb3MpICAgICAgLyohPCAweDAwMDAwMDAyICovDQojZGVmaW5lIERNQV9JRkNSX0NUQ0lGMSAgICAgICAgICAgICAgICAgICAgIERNQV9JRkNSX0NUQ0lGMV9Nc2sgICAgICAgICAgICAgICAgLyohPCBDaGFubmVsIDEgVHJhbnNmZXIgQ29tcGxldGUgY2xlYXIgKi8NCiNkZWZpbmUgRE1BX0lGQ1JfQ0hUSUYxX1BvcyAgICAgICAgICAgICAgICAgKDJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRE1BX0lGQ1JfQ0hUSUYxX01zayAgICAgICAgICAgICAgICAgKDB4MVUgPDwgRE1BX0lGQ1JfQ0hUSUYxX1BvcykgICAgICAvKiE8IDB4MDAwMDAwMDQgKi8NCiNkZWZpbmUgRE1BX0lGQ1JfQ0hUSUYxICAgICAgICAgICAgICAgICAgICAgRE1BX0lGQ1JfQ0hUSUYxX01zayAgICAgICAgICAgICAgICAvKiE8IENoYW5uZWwgMSBIYWxmIFRyYW5zZmVyIGNsZWFyICovDQojZGVmaW5lIERNQV9JRkNSX0NURUlGMV9Qb3MgICAgICAgICAgICAgICAgICgzVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIERNQV9JRkNSX0NURUlGMV9Nc2sgICAgICAgICAgICAgICAgICgweDFVIDw8IERNQV9JRkNSX0NURUlGMV9Qb3MpICAgICAgLyohPCAweDAwMDAwMDA4ICovDQojZGVmaW5lIERNQV9JRkNSX0NURUlGMSAgICAgICAgICAgICAgICAgICAgIERNQV9JRkNSX0NURUlGMV9Nc2sgICAgICAgICAgICAgICAgLyohPCBDaGFubmVsIDEgVHJhbnNmZXIgRXJyb3IgY2xlYXIgKi8NCiNkZWZpbmUgRE1BX0lGQ1JfQ0dJRjJfUG9zICAgICAgICAgICAgICAgICAgKDRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRE1BX0lGQ1JfQ0dJRjJfTXNrICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgRE1BX0lGQ1JfQ0dJRjJfUG9zKSAgICAgICAvKiE8IDB4MDAwMDAwMTAgKi8NCiNkZWZpbmUgRE1BX0lGQ1JfQ0dJRjIgICAgICAgICAgICAgICAgICAgICAgRE1BX0lGQ1JfQ0dJRjJfTXNrICAgICAgICAgICAgICAgICAvKiE8IENoYW5uZWwgMiBHbG9iYWwgaW50ZXJydXB0IGNsZWFyICovDQojZGVmaW5lIERNQV9JRkNSX0NUQ0lGMl9Qb3MgICAgICAgICAgICAgICAgICg1VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIERNQV9JRkNSX0NUQ0lGMl9Nc2sgICAgICAgICAgICAgICAgICgweDFVIDw8IERNQV9JRkNSX0NUQ0lGMl9Qb3MpICAgICAgLyohPCAweDAwMDAwMDIwICovDQojZGVmaW5lIERNQV9JRkNSX0NUQ0lGMiAgICAgICAgICAgICAgICAgICAgIERNQV9JRkNSX0NUQ0lGMl9Nc2sgICAgICAgICAgICAgICAgLyohPCBDaGFubmVsIDIgVHJhbnNmZXIgQ29tcGxldGUgY2xlYXIgKi8NCiNkZWZpbmUgRE1BX0lGQ1JfQ0hUSUYyX1BvcyAgICAgICAgICAgICAgICAgKDZVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRE1BX0lGQ1JfQ0hUSUYyX01zayAgICAgICAgICAgICAgICAgKDB4MVUgPDwgRE1BX0lGQ1JfQ0hUSUYyX1BvcykgICAgICAvKiE8IDB4MDAwMDAwNDAgKi8NCiNkZWZpbmUgRE1BX0lGQ1JfQ0hUSUYyICAgICAgICAgICAgICAgICAgICAgRE1BX0lGQ1JfQ0hUSUYyX01zayAgICAgICAgICAgICAgICAvKiE8IENoYW5uZWwgMiBIYWxmIFRyYW5zZmVyIGNsZWFyICovDQojZGVmaW5lIERNQV9JRkNSX0NURUlGMl9Qb3MgICAgICAgICAgICAgICAgICg3VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIERNQV9JRkNSX0NURUlGMl9Nc2sgICAgICAgICAgICAgICAgICgweDFVIDw8IERNQV9JRkNSX0NURUlGMl9Qb3MpICAgICAgLyohPCAweDAwMDAwMDgwICovDQojZGVmaW5lIERNQV9JRkNSX0NURUlGMiAgICAgICAgICAgICAgICAgICAgIERNQV9JRkNSX0NURUlGMl9Nc2sgICAgICAgICAgICAgICAgLyohPCBDaGFubmVsIDIgVHJhbnNmZXIgRXJyb3IgY2xlYXIgKi8NCiNkZWZpbmUgRE1BX0lGQ1JfQ0dJRjNfUG9zICAgICAgICAgICAgICAgICAgKDhVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRE1BX0lGQ1JfQ0dJRjNfTXNrICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgRE1BX0lGQ1JfQ0dJRjNfUG9zKSAgICAgICAvKiE8IDB4MDAwMDAxMDAgKi8NCiNkZWZpbmUgRE1BX0lGQ1JfQ0dJRjMgICAgICAgICAgICAgICAgICAgICAgRE1BX0lGQ1JfQ0dJRjNfTXNrICAgICAgICAgICAgICAgICAvKiE8IENoYW5uZWwgMyBHbG9iYWwgaW50ZXJydXB0IGNsZWFyICovDQojZGVmaW5lIERNQV9JRkNSX0NUQ0lGM19Qb3MgICAgICAgICAgICAgICAgICg5VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIERNQV9JRkNSX0NUQ0lGM19Nc2sgICAgICAgICAgICAgICAgICgweDFVIDw8IERNQV9JRkNSX0NUQ0lGM19Qb3MpICAgICAgLyohPCAweDAwMDAwMjAwICovDQojZGVmaW5lIERNQV9JRkNSX0NUQ0lGMyAgICAgICAgICAgICAgICAgICAgIERNQV9JRkNSX0NUQ0lGM19Nc2sgICAgICAgICAgICAgICAgLyohPCBDaGFubmVsIDMgVHJhbnNmZXIgQ29tcGxldGUgY2xlYXIgKi8NCiNkZWZpbmUgRE1BX0lGQ1JfQ0hUSUYzX1BvcyAgICAgICAgICAgICAgICAgKDEwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRE1BX0lGQ1JfQ0hUSUYzX01zayAgICAgICAgICAgICAgICAgKDB4MVUgPDwgRE1BX0lGQ1JfQ0hUSUYzX1BvcykgICAgICAvKiE8IDB4MDAwMDA0MDAgKi8NCiNkZWZpbmUgRE1BX0lGQ1JfQ0hUSUYzICAgICAgICAgICAgICAgICAgICAgRE1BX0lGQ1JfQ0hUSUYzX01zayAgICAgICAgICAgICAgICAvKiE8IENoYW5uZWwgMyBIYWxmIFRyYW5zZmVyIGNsZWFyICovDQojZGVmaW5lIERNQV9JRkNSX0NURUlGM19Qb3MgICAgICAgICAgICAgICAgICgxMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIERNQV9JRkNSX0NURUlGM19Nc2sgICAgICAgICAgICAgICAgICgweDFVIDw8IERNQV9JRkNSX0NURUlGM19Qb3MpICAgICAgLyohPCAweDAwMDAwODAwICovDQojZGVmaW5lIERNQV9JRkNSX0NURUlGMyAgICAgICAgICAgICAgICAgICAgIERNQV9JRkNSX0NURUlGM19Nc2sgICAgICAgICAgICAgICAgLyohPCBDaGFubmVsIDMgVHJhbnNmZXIgRXJyb3IgY2xlYXIgKi8NCiNkZWZpbmUgRE1BX0lGQ1JfQ0dJRjRfUG9zICAgICAgICAgICAgICAgICAgKDEyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRE1BX0lGQ1JfQ0dJRjRfTXNrICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgRE1BX0lGQ1JfQ0dJRjRfUG9zKSAgICAgICAvKiE8IDB4MDAwMDEwMDAgKi8NCiNkZWZpbmUgRE1BX0lGQ1JfQ0dJRjQgICAgICAgICAgICAgICAgICAgICAgRE1BX0lGQ1JfQ0dJRjRfTXNrICAgICAgICAgICAgICAgICAvKiE8IENoYW5uZWwgNCBHbG9iYWwgaW50ZXJydXB0IGNsZWFyICovDQojZGVmaW5lIERNQV9JRkNSX0NUQ0lGNF9Qb3MgICAgICAgICAgICAgICAgICgxM1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIERNQV9JRkNSX0NUQ0lGNF9Nc2sgICAgICAgICAgICAgICAgICgweDFVIDw8IERNQV9JRkNSX0NUQ0lGNF9Qb3MpICAgICAgLyohPCAweDAwMDAyMDAwICovDQojZGVmaW5lIERNQV9JRkNSX0NUQ0lGNCAgICAgICAgICAgICAgICAgICAgIERNQV9JRkNSX0NUQ0lGNF9Nc2sgICAgICAgICAgICAgICAgLyohPCBDaGFubmVsIDQgVHJhbnNmZXIgQ29tcGxldGUgY2xlYXIgKi8NCiNkZWZpbmUgRE1BX0lGQ1JfQ0hUSUY0X1BvcyAgICAgICAgICAgICAgICAgKDE0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRE1BX0lGQ1JfQ0hUSUY0X01zayAgICAgICAgICAgICAgICAgKDB4MVUgPDwgRE1BX0lGQ1JfQ0hUSUY0X1BvcykgICAgICAvKiE8IDB4MDAwMDQwMDAgKi8NCiNkZWZpbmUgRE1BX0lGQ1JfQ0hUSUY0ICAgICAgICAgICAgICAgICAgICAgRE1BX0lGQ1JfQ0hUSUY0X01zayAgICAgICAgICAgICAgICAvKiE8IENoYW5uZWwgNCBIYWxmIFRyYW5zZmVyIGNsZWFyICovDQojZGVmaW5lIERNQV9JRkNSX0NURUlGNF9Qb3MgICAgICAgICAgICAgICAgICgxNVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIERNQV9JRkNSX0NURUlGNF9Nc2sgICAgICAgICAgICAgICAgICgweDFVIDw8IERNQV9JRkNSX0NURUlGNF9Qb3MpICAgICAgLyohPCAweDAwMDA4MDAwICovDQojZGVmaW5lIERNQV9JRkNSX0NURUlGNCAgICAgICAgICAgICAgICAgICAgIERNQV9JRkNSX0NURUlGNF9Nc2sgICAgICAgICAgICAgICAgLyohPCBDaGFubmVsIDQgVHJhbnNmZXIgRXJyb3IgY2xlYXIgKi8NCiNkZWZpbmUgRE1BX0lGQ1JfQ0dJRjVfUG9zICAgICAgICAgICAgICAgICAgKDE2VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRE1BX0lGQ1JfQ0dJRjVfTXNrICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgRE1BX0lGQ1JfQ0dJRjVfUG9zKSAgICAgICAvKiE8IDB4MDAwMTAwMDAgKi8NCiNkZWZpbmUgRE1BX0lGQ1JfQ0dJRjUgICAgICAgICAgICAgICAgICAgICAgRE1BX0lGQ1JfQ0dJRjVfTXNrICAgICAgICAgICAgICAgICAvKiE8IENoYW5uZWwgNSBHbG9iYWwgaW50ZXJydXB0IGNsZWFyICovDQojZGVmaW5lIERNQV9JRkNSX0NUQ0lGNV9Qb3MgICAgICAgICAgICAgICAgICgxN1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIERNQV9JRkNSX0NUQ0lGNV9Nc2sgICAgICAgICAgICAgICAgICgweDFVIDw8IERNQV9JRkNSX0NUQ0lGNV9Qb3MpICAgICAgLyohPCAweDAwMDIwMDAwICovDQojZGVmaW5lIERNQV9JRkNSX0NUQ0lGNSAgICAgICAgICAgICAgICAgICAgIERNQV9JRkNSX0NUQ0lGNV9Nc2sgICAgICAgICAgICAgICAgLyohPCBDaGFubmVsIDUgVHJhbnNmZXIgQ29tcGxldGUgY2xlYXIgKi8NCiNkZWZpbmUgRE1BX0lGQ1JfQ0hUSUY1X1BvcyAgICAgICAgICAgICAgICAgKDE4VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRE1BX0lGQ1JfQ0hUSUY1X01zayAgICAgICAgICAgICAgICAgKDB4MVUgPDwgRE1BX0lGQ1JfQ0hUSUY1X1BvcykgICAgICAvKiE8IDB4MDAwNDAwMDAgKi8NCiNkZWZpbmUgRE1BX0lGQ1JfQ0hUSUY1ICAgICAgICAgICAgICAgICAgICAgRE1BX0lGQ1JfQ0hUSUY1X01zayAgICAgICAgICAgICAgICAvKiE8IENoYW5uZWwgNSBIYWxmIFRyYW5zZmVyIGNsZWFyICovDQojZGVmaW5lIERNQV9JRkNSX0NURUlGNV9Qb3MgICAgICAgICAgICAgICAgICgxOVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIERNQV9JRkNSX0NURUlGNV9Nc2sgICAgICAgICAgICAgICAgICgweDFVIDw8IERNQV9JRkNSX0NURUlGNV9Qb3MpICAgICAgLyohPCAweDAwMDgwMDAwICovDQojZGVmaW5lIERNQV9JRkNSX0NURUlGNSAgICAgICAgICAgICAgICAgICAgIERNQV9JRkNSX0NURUlGNV9Nc2sgICAgICAgICAgICAgICAgLyohPCBDaGFubmVsIDUgVHJhbnNmZXIgRXJyb3IgY2xlYXIgKi8NCiNkZWZpbmUgRE1BX0lGQ1JfQ0dJRjZfUG9zICAgICAgICAgICAgICAgICAgKDIwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRE1BX0lGQ1JfQ0dJRjZfTXNrICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgRE1BX0lGQ1JfQ0dJRjZfUG9zKSAgICAgICAvKiE8IDB4MDAxMDAwMDAgKi8NCiNkZWZpbmUgRE1BX0lGQ1JfQ0dJRjYgICAgICAgICAgICAgICAgICAgICAgRE1BX0lGQ1JfQ0dJRjZfTXNrICAgICAgICAgICAgICAgICAvKiE8IENoYW5uZWwgNiBHbG9iYWwgaW50ZXJydXB0IGNsZWFyICovDQojZGVmaW5lIERNQV9JRkNSX0NUQ0lGNl9Qb3MgICAgICAgICAgICAgICAgICgyMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIERNQV9JRkNSX0NUQ0lGNl9Nc2sgICAgICAgICAgICAgICAgICgweDFVIDw8IERNQV9JRkNSX0NUQ0lGNl9Qb3MpICAgICAgLyohPCAweDAwMjAwMDAwICovDQojZGVmaW5lIERNQV9JRkNSX0NUQ0lGNiAgICAgICAgICAgICAgICAgICAgIERNQV9JRkNSX0NUQ0lGNl9Nc2sgICAgICAgICAgICAgICAgLyohPCBDaGFubmVsIDYgVHJhbnNmZXIgQ29tcGxldGUgY2xlYXIgKi8NCiNkZWZpbmUgRE1BX0lGQ1JfQ0hUSUY2X1BvcyAgICAgICAgICAgICAgICAgKDIyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRE1BX0lGQ1JfQ0hUSUY2X01zayAgICAgICAgICAgICAgICAgKDB4MVUgPDwgRE1BX0lGQ1JfQ0hUSUY2X1BvcykgICAgICAvKiE8IDB4MDA0MDAwMDAgKi8NCiNkZWZpbmUgRE1BX0lGQ1JfQ0hUSUY2ICAgICAgICAgICAgICAgICAgICAgRE1BX0lGQ1JfQ0hUSUY2X01zayAgICAgICAgICAgICAgICAvKiE8IENoYW5uZWwgNiBIYWxmIFRyYW5zZmVyIGNsZWFyICovDQojZGVmaW5lIERNQV9JRkNSX0NURUlGNl9Qb3MgICAgICAgICAgICAgICAgICgyM1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIERNQV9JRkNSX0NURUlGNl9Nc2sgICAgICAgICAgICAgICAgICgweDFVIDw8IERNQV9JRkNSX0NURUlGNl9Qb3MpICAgICAgLyohPCAweDAwODAwMDAwICovDQojZGVmaW5lIERNQV9JRkNSX0NURUlGNiAgICAgICAgICAgICAgICAgICAgIERNQV9JRkNSX0NURUlGNl9Nc2sgICAgICAgICAgICAgICAgLyohPCBDaGFubmVsIDYgVHJhbnNmZXIgRXJyb3IgY2xlYXIgKi8NCiNkZWZpbmUgRE1BX0lGQ1JfQ0dJRjdfUG9zICAgICAgICAgICAgICAgICAgKDI0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRE1BX0lGQ1JfQ0dJRjdfTXNrICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgRE1BX0lGQ1JfQ0dJRjdfUG9zKSAgICAgICAvKiE8IDB4MDEwMDAwMDAgKi8NCiNkZWZpbmUgRE1BX0lGQ1JfQ0dJRjcgICAgICAgICAgICAgICAgICAgICAgRE1BX0lGQ1JfQ0dJRjdfTXNrICAgICAgICAgICAgICAgICAvKiE8IENoYW5uZWwgNyBHbG9iYWwgaW50ZXJydXB0IGNsZWFyICovDQojZGVmaW5lIERNQV9JRkNSX0NUQ0lGN19Qb3MgICAgICAgICAgICAgICAgICgyNVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIERNQV9JRkNSX0NUQ0lGN19Nc2sgICAgICAgICAgICAgICAgICgweDFVIDw8IERNQV9JRkNSX0NUQ0lGN19Qb3MpICAgICAgLyohPCAweDAyMDAwMDAwICovDQojZGVmaW5lIERNQV9JRkNSX0NUQ0lGNyAgICAgICAgICAgICAgICAgICAgIERNQV9JRkNSX0NUQ0lGN19Nc2sgICAgICAgICAgICAgICAgLyohPCBDaGFubmVsIDcgVHJhbnNmZXIgQ29tcGxldGUgY2xlYXIgKi8NCiNkZWZpbmUgRE1BX0lGQ1JfQ0hUSUY3X1BvcyAgICAgICAgICAgICAgICAgKDI2VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRE1BX0lGQ1JfQ0hUSUY3X01zayAgICAgICAgICAgICAgICAgKDB4MVUgPDwgRE1BX0lGQ1JfQ0hUSUY3X1BvcykgICAgICAvKiE8IDB4MDQwMDAwMDAgKi8NCiNkZWZpbmUgRE1BX0lGQ1JfQ0hUSUY3ICAgICAgICAgICAgICAgICAgICAgRE1BX0lGQ1JfQ0hUSUY3X01zayAgICAgICAgICAgICAgICAvKiE8IENoYW5uZWwgNyBIYWxmIFRyYW5zZmVyIGNsZWFyICovDQojZGVmaW5lIERNQV9JRkNSX0NURUlGN19Qb3MgICAgICAgICAgICAgICAgICgyN1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIERNQV9JRkNSX0NURUlGN19Nc2sgICAgICAgICAgICAgICAgICgweDFVIDw8IERNQV9JRkNSX0NURUlGN19Qb3MpICAgICAgLyohPCAweDA4MDAwMDAwICovDQojZGVmaW5lIERNQV9JRkNSX0NURUlGNyAgICAgICAgICAgICAgICAgICAgIERNQV9JRkNSX0NURUlGN19Nc2sgICAgICAgICAgICAgICAgLyohPCBDaGFubmVsIDcgVHJhbnNmZXIgRXJyb3IgY2xlYXIgKi8NCg0KLyoqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBETUFfQ0NSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBETUFfQ0NSX0VOX1BvcyAgICAgICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBETUFfQ0NSX0VOX01zayAgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBETUFfQ0NSX0VOX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDAwMSAqLw0KI2RlZmluZSBETUFfQ0NSX0VOICAgICAgICAgICAgICAgICAgICAgICAgICBETUFfQ0NSX0VOX01zayAgICAgICAgICAgICAgICAgICAgIC8qITwgQ2hhbm5lbCBlbmFibGUqLw0KI2RlZmluZSBETUFfQ0NSX1RDSUVfUG9zICAgICAgICAgICAgICAgICAgICAoMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBETUFfQ0NSX1RDSUVfTXNrICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBETUFfQ0NSX1RDSUVfUG9zKSAgICAgICAgIC8qITwgMHgwMDAwMDAwMiAqLw0KI2RlZmluZSBETUFfQ0NSX1RDSUUgICAgICAgICAgICAgICAgICAgICAgICBETUFfQ0NSX1RDSUVfTXNrICAgICAgICAgICAgICAgICAgIC8qITwgVHJhbnNmZXIgY29tcGxldGUgaW50ZXJydXB0IGVuYWJsZSAqLw0KI2RlZmluZSBETUFfQ0NSX0hUSUVfUG9zICAgICAgICAgICAgICAgICAgICAoMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBETUFfQ0NSX0hUSUVfTXNrICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBETUFfQ0NSX0hUSUVfUG9zKSAgICAgICAgIC8qITwgMHgwMDAwMDAwNCAqLw0KI2RlZmluZSBETUFfQ0NSX0hUSUUgICAgICAgICAgICAgICAgICAgICAgICBETUFfQ0NSX0hUSUVfTXNrICAgICAgICAgICAgICAgICAgIC8qITwgSGFsZiBUcmFuc2ZlciBpbnRlcnJ1cHQgZW5hYmxlICovDQojZGVmaW5lIERNQV9DQ1JfVEVJRV9Qb3MgICAgICAgICAgICAgICAgICAgICgzVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIERNQV9DQ1JfVEVJRV9Nc2sgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IERNQV9DQ1JfVEVJRV9Qb3MpICAgICAgICAgLyohPCAweDAwMDAwMDA4ICovDQojZGVmaW5lIERNQV9DQ1JfVEVJRSAgICAgICAgICAgICAgICAgICAgICAgIERNQV9DQ1JfVEVJRV9Nc2sgICAgICAgICAgICAgICAgICAgLyohPCBUcmFuc2ZlciBlcnJvciBpbnRlcnJ1cHQgZW5hYmxlICovDQojZGVmaW5lIERNQV9DQ1JfRElSX1BvcyAgICAgICAgICAgICAgICAgICAgICg0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIERNQV9DQ1JfRElSX01zayAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IERNQV9DQ1JfRElSX1BvcykgICAgICAgICAgLyohPCAweDAwMDAwMDEwICovDQojZGVmaW5lIERNQV9DQ1JfRElSICAgICAgICAgICAgICAgICAgICAgICAgIERNQV9DQ1JfRElSX01zayAgICAgICAgICAgICAgICAgICAgLyohPCBEYXRhIHRyYW5zZmVyIGRpcmVjdGlvbiAqLw0KI2RlZmluZSBETUFfQ0NSX0NJUkNfUG9zICAgICAgICAgICAgICAgICAgICAoNVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBETUFfQ0NSX0NJUkNfTXNrICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBETUFfQ0NSX0NJUkNfUG9zKSAgICAgICAgIC8qITwgMHgwMDAwMDAyMCAqLw0KI2RlZmluZSBETUFfQ0NSX0NJUkMgICAgICAgICAgICAgICAgICAgICAgICBETUFfQ0NSX0NJUkNfTXNrICAgICAgICAgICAgICAgICAgIC8qITwgQ2lyY3VsYXIgbW9kZSAqLw0KI2RlZmluZSBETUFfQ0NSX1BJTkNfUG9zICAgICAgICAgICAgICAgICAgICAoNlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBETUFfQ0NSX1BJTkNfTXNrICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBETUFfQ0NSX1BJTkNfUG9zKSAgICAgICAgIC8qITwgMHgwMDAwMDA0MCAqLw0KI2RlZmluZSBETUFfQ0NSX1BJTkMgICAgICAgICAgICAgICAgICAgICAgICBETUFfQ0NSX1BJTkNfTXNrICAgICAgICAgICAgICAgICAgIC8qITwgUGVyaXBoZXJhbCBpbmNyZW1lbnQgbW9kZSAqLw0KI2RlZmluZSBETUFfQ0NSX01JTkNfUG9zICAgICAgICAgICAgICAgICAgICAoN1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBETUFfQ0NSX01JTkNfTXNrICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBETUFfQ0NSX01JTkNfUG9zKSAgICAgICAgIC8qITwgMHgwMDAwMDA4MCAqLw0KI2RlZmluZSBETUFfQ0NSX01JTkMgICAgICAgICAgICAgICAgICAgICAgICBETUFfQ0NSX01JTkNfTXNrICAgICAgICAgICAgICAgICAgIC8qITwgTWVtb3J5IGluY3JlbWVudCBtb2RlICovDQoNCiNkZWZpbmUgRE1BX0NDUl9QU0laRV9Qb3MgICAgICAgICAgICAgICAgICAgKDhVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRE1BX0NDUl9QU0laRV9Nc2sgICAgICAgICAgICAgICAgICAgKDB4M1UgPDwgRE1BX0NDUl9QU0laRV9Qb3MpICAgICAgICAvKiE8IDB4MDAwMDAzMDAgKi8NCiNkZWZpbmUgRE1BX0NDUl9QU0laRSAgICAgICAgICAgICAgICAgICAgICAgRE1BX0NDUl9QU0laRV9Nc2sgICAgICAgICAgICAgICAgICAvKiE8IFBTSVpFWzE6MF0gYml0cyAoUGVyaXBoZXJhbCBzaXplKSAqLw0KI2RlZmluZSBETUFfQ0NSX1BTSVpFXzAgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBETUFfQ0NSX1BTSVpFX1BvcykgICAgICAgIC8qITwgMHgwMDAwMDEwMCAqLw0KI2RlZmluZSBETUFfQ0NSX1BTSVpFXzEgICAgICAgICAgICAgICAgICAgICAoMHgyVSA8PCBETUFfQ0NSX1BTSVpFX1BvcykgICAgICAgIC8qITwgMHgwMDAwMDIwMCAqLw0KDQojZGVmaW5lIERNQV9DQ1JfTVNJWkVfUG9zICAgICAgICAgICAgICAgICAgICgxMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIERNQV9DQ1JfTVNJWkVfTXNrICAgICAgICAgICAgICAgICAgICgweDNVIDw8IERNQV9DQ1JfTVNJWkVfUG9zKSAgICAgICAgLyohPCAweDAwMDAwQzAwICovDQojZGVmaW5lIERNQV9DQ1JfTVNJWkUgICAgICAgICAgICAgICAgICAgICAgIERNQV9DQ1JfTVNJWkVfTXNrICAgICAgICAgICAgICAgICAgLyohPCBNU0laRVsxOjBdIGJpdHMgKE1lbW9yeSBzaXplKSAqLw0KI2RlZmluZSBETUFfQ0NSX01TSVpFXzAgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBETUFfQ0NSX01TSVpFX1BvcykgICAgICAgIC8qITwgMHgwMDAwMDQwMCAqLw0KI2RlZmluZSBETUFfQ0NSX01TSVpFXzEgICAgICAgICAgICAgICAgICAgICAoMHgyVSA8PCBETUFfQ0NSX01TSVpFX1BvcykgICAgICAgIC8qITwgMHgwMDAwMDgwMCAqLw0KDQojZGVmaW5lIERNQV9DQ1JfUExfUG9zICAgICAgICAgICAgICAgICAgICAgICgxMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIERNQV9DQ1JfUExfTXNrICAgICAgICAgICAgICAgICAgICAgICgweDNVIDw8IERNQV9DQ1JfUExfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAzMDAwICovDQojZGVmaW5lIERNQV9DQ1JfUEwgICAgICAgICAgICAgICAgICAgICAgICAgIERNQV9DQ1JfUExfTXNrICAgICAgICAgICAgICAgICAgICAgLyohPCBQTFsxOjBdIGJpdHMoQ2hhbm5lbCBQcmlvcml0eSBsZXZlbCkgKi8NCiNkZWZpbmUgRE1BX0NDUl9QTF8wICAgICAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgRE1BX0NDUl9QTF9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDEwMDAgKi8NCiNkZWZpbmUgRE1BX0NDUl9QTF8xICAgICAgICAgICAgICAgICAgICAgICAgKDB4MlUgPDwgRE1BX0NDUl9QTF9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDIwMDAgKi8NCg0KI2RlZmluZSBETUFfQ0NSX01FTTJNRU1fUG9zICAgICAgICAgICAgICAgICAoMTRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBETUFfQ0NSX01FTTJNRU1fTXNrICAgICAgICAgICAgICAgICAoMHgxVSA8PCBETUFfQ0NSX01FTTJNRU1fUG9zKSAgICAgIC8qITwgMHgwMDAwNDAwMCAqLw0KI2RlZmluZSBETUFfQ0NSX01FTTJNRU0gICAgICAgICAgICAgICAgICAgICBETUFfQ0NSX01FTTJNRU1fTXNrICAgICAgICAgICAgICAgIC8qITwgTWVtb3J5IHRvIG1lbW9yeSBtb2RlICovDQoNCi8qKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGdlbmVyaWMgZm9yIERNQV9DTkRUUiByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgRE1BX0NORFRSX05EVF9Qb3MgICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRE1BX0NORFRSX05EVF9Nc2sgICAgICAgICAgICAgICAgICAgKDB4RkZGRlUgPDwgRE1BX0NORFRSX05EVF9Qb3MpICAgICAvKiE8IDB4MDAwMEZGRkYgKi8NCiNkZWZpbmUgRE1BX0NORFRSX05EVCAgICAgICAgICAgICAgICAgICAgICAgRE1BX0NORFRSX05EVF9Nc2sgICAgICAgICAgICAgICAgICAvKiE8IE51bWJlciBvZiBkYXRhIHRvIFRyYW5zZmVyICovDQoNCi8qKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBETUFfQ05EVFIxIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIERNQV9DTkRUUjFfTkRUX1BvcyAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIERNQV9DTkRUUjFfTkRUX01zayAgICAgICAgICAgICAgICAgICgweEZGRkZVIDw8IERNQV9DTkRUUjFfTkRUX1BvcykgICAgLyohPCAweDAwMDBGRkZGICovDQojZGVmaW5lIERNQV9DTkRUUjFfTkRUICAgICAgICAgICAgICAgICAgICAgIERNQV9DTkRUUjFfTkRUX01zayAgICAgICAgICAgICAgICAgLyohPCBOdW1iZXIgb2YgZGF0YSB0byBUcmFuc2ZlciAqLw0KDQovKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgRE1BX0NORFRSMiByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBETUFfQ05EVFIyX05EVF9Qb3MgICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBETUFfQ05EVFIyX05EVF9Nc2sgICAgICAgICAgICAgICAgICAoMHhGRkZGVSA8PCBETUFfQ05EVFIyX05EVF9Qb3MpICAgIC8qITwgMHgwMDAwRkZGRiAqLw0KI2RlZmluZSBETUFfQ05EVFIyX05EVCAgICAgICAgICAgICAgICAgICAgICBETUFfQ05EVFIyX05EVF9Nc2sgICAgICAgICAgICAgICAgIC8qITwgTnVtYmVyIG9mIGRhdGEgdG8gVHJhbnNmZXIgKi8NCg0KLyoqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIERNQV9DTkRUUjMgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgRE1BX0NORFRSM19ORFRfUG9zICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRE1BX0NORFRSM19ORFRfTXNrICAgICAgICAgICAgICAgICAgKDB4RkZGRlUgPDwgRE1BX0NORFRSM19ORFRfUG9zKSAgICAvKiE8IDB4MDAwMEZGRkYgKi8NCiNkZWZpbmUgRE1BX0NORFRSM19ORFQgICAgICAgICAgICAgICAgICAgICAgRE1BX0NORFRSM19ORFRfTXNrICAgICAgICAgICAgICAgICAvKiE8IE51bWJlciBvZiBkYXRhIHRvIFRyYW5zZmVyICovDQoNCi8qKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBETUFfQ05EVFI0IHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIERNQV9DTkRUUjRfTkRUX1BvcyAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIERNQV9DTkRUUjRfTkRUX01zayAgICAgICAgICAgICAgICAgICgweEZGRkZVIDw8IERNQV9DTkRUUjRfTkRUX1BvcykgICAgLyohPCAweDAwMDBGRkZGICovDQojZGVmaW5lIERNQV9DTkRUUjRfTkRUICAgICAgICAgICAgICAgICAgICAgIERNQV9DTkRUUjRfTkRUX01zayAgICAgICAgICAgICAgICAgLyohPCBOdW1iZXIgb2YgZGF0YSB0byBUcmFuc2ZlciAqLw0KDQovKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgRE1BX0NORFRSNSByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBETUFfQ05EVFI1X05EVF9Qb3MgICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBETUFfQ05EVFI1X05EVF9Nc2sgICAgICAgICAgICAgICAgICAoMHhGRkZGVSA8PCBETUFfQ05EVFI1X05EVF9Qb3MpICAgIC8qITwgMHgwMDAwRkZGRiAqLw0KI2RlZmluZSBETUFfQ05EVFI1X05EVCAgICAgICAgICAgICAgICAgICAgICBETUFfQ05EVFI1X05EVF9Nc2sgICAgICAgICAgICAgICAgIC8qITwgTnVtYmVyIG9mIGRhdGEgdG8gVHJhbnNmZXIgKi8NCg0KLyoqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIERNQV9DTkRUUjYgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgRE1BX0NORFRSNl9ORFRfUG9zICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRE1BX0NORFRSNl9ORFRfTXNrICAgICAgICAgICAgICAgICAgKDB4RkZGRlUgPDwgRE1BX0NORFRSNl9ORFRfUG9zKSAgICAvKiE8IDB4MDAwMEZGRkYgKi8NCiNkZWZpbmUgRE1BX0NORFRSNl9ORFQgICAgICAgICAgICAgICAgICAgICAgRE1BX0NORFRSNl9ORFRfTXNrICAgICAgICAgICAgICAgICAvKiE8IE51bWJlciBvZiBkYXRhIHRvIFRyYW5zZmVyICovDQoNCi8qKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBETUFfQ05EVFI3IHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIERNQV9DTkRUUjdfTkRUX1BvcyAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIERNQV9DTkRUUjdfTkRUX01zayAgICAgICAgICAgICAgICAgICgweEZGRkZVIDw8IERNQV9DTkRUUjdfTkRUX1BvcykgICAgLyohPCAweDAwMDBGRkZGICovDQojZGVmaW5lIERNQV9DTkRUUjdfTkRUICAgICAgICAgICAgICAgICAgICAgIERNQV9DTkRUUjdfTkRUX01zayAgICAgICAgICAgICAgICAgLyohPCBOdW1iZXIgb2YgZGF0YSB0byBUcmFuc2ZlciAqLw0KDQovKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBnZW5lcmljIGZvciBETUFfQ1BBUiByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIERNQV9DUEFSX1BBX1BvcyAgICAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIERNQV9DUEFSX1BBX01zayAgICAgICAgICAgICAgICAgICAgICgweEZGRkZGRkZGVSA8PCBETUFfQ1BBUl9QQV9Qb3MpICAgLyohPCAweEZGRkZGRkZGICovDQojZGVmaW5lIERNQV9DUEFSX1BBICAgICAgICAgICAgICAgICAgICAgICAgIERNQV9DUEFSX1BBX01zayAgICAgICAgICAgICAgICAgICAgLyohPCBQZXJpcGhlcmFsIEFkZHJlc3MgKi8NCg0KLyoqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIERNQV9DUEFSMSByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgRE1BX0NQQVIxX1BBX1BvcyAgICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRE1BX0NQQVIxX1BBX01zayAgICAgICAgICAgICAgICAgICAgKDB4RkZGRkZGRkZVIDw8IERNQV9DUEFSMV9QQV9Qb3MpICAvKiE8IDB4RkZGRkZGRkYgKi8NCiNkZWZpbmUgRE1BX0NQQVIxX1BBICAgICAgICAgICAgICAgICAgICAgICAgRE1BX0NQQVIxX1BBX01zayAgICAgICAgICAgICAgICAgICAvKiE8IFBlcmlwaGVyYWwgQWRkcmVzcyAqLw0KDQovKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgRE1BX0NQQVIyIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBETUFfQ1BBUjJfUEFfUG9zICAgICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBETUFfQ1BBUjJfUEFfTXNrICAgICAgICAgICAgICAgICAgICAoMHhGRkZGRkZGRlUgPDwgRE1BX0NQQVIyX1BBX1BvcykgIC8qITwgMHhGRkZGRkZGRiAqLw0KI2RlZmluZSBETUFfQ1BBUjJfUEEgICAgICAgICAgICAgICAgICAgICAgICBETUFfQ1BBUjJfUEFfTXNrICAgICAgICAgICAgICAgICAgIC8qITwgUGVyaXBoZXJhbCBBZGRyZXNzICovDQoNCi8qKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBETUFfQ1BBUjMgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIERNQV9DUEFSM19QQV9Qb3MgICAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIERNQV9DUEFSM19QQV9Nc2sgICAgICAgICAgICAgICAgICAgICgweEZGRkZGRkZGVSA8PCBETUFfQ1BBUjNfUEFfUG9zKSAgLyohPCAweEZGRkZGRkZGICovDQojZGVmaW5lIERNQV9DUEFSM19QQSAgICAgICAgICAgICAgICAgICAgICAgIERNQV9DUEFSM19QQV9Nc2sgICAgICAgICAgICAgICAgICAgLyohPCBQZXJpcGhlcmFsIEFkZHJlc3MgKi8NCg0KDQovKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgRE1BX0NQQVI0IHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBETUFfQ1BBUjRfUEFfUG9zICAgICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBETUFfQ1BBUjRfUEFfTXNrICAgICAgICAgICAgICAgICAgICAoMHhGRkZGRkZGRlUgPDwgRE1BX0NQQVI0X1BBX1BvcykgIC8qITwgMHhGRkZGRkZGRiAqLw0KI2RlZmluZSBETUFfQ1BBUjRfUEEgICAgICAgICAgICAgICAgICAgICAgICBETUFfQ1BBUjRfUEFfTXNrICAgICAgICAgICAgICAgICAgIC8qITwgUGVyaXBoZXJhbCBBZGRyZXNzICovDQoNCi8qKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBETUFfQ1BBUjUgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIERNQV9DUEFSNV9QQV9Qb3MgICAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIERNQV9DUEFSNV9QQV9Nc2sgICAgICAgICAgICAgICAgICAgICgweEZGRkZGRkZGVSA8PCBETUFfQ1BBUjVfUEFfUG9zKSAgLyohPCAweEZGRkZGRkZGICovDQojZGVmaW5lIERNQV9DUEFSNV9QQSAgICAgICAgICAgICAgICAgICAgICAgIERNQV9DUEFSNV9QQV9Nc2sgICAgICAgICAgICAgICAgICAgLyohPCBQZXJpcGhlcmFsIEFkZHJlc3MgKi8NCg0KLyoqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIERNQV9DUEFSNiByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgRE1BX0NQQVI2X1BBX1BvcyAgICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRE1BX0NQQVI2X1BBX01zayAgICAgICAgICAgICAgICAgICAgKDB4RkZGRkZGRkZVIDw8IERNQV9DUEFSNl9QQV9Qb3MpICAvKiE8IDB4RkZGRkZGRkYgKi8NCiNkZWZpbmUgRE1BX0NQQVI2X1BBICAgICAgICAgICAgICAgICAgICAgICAgRE1BX0NQQVI2X1BBX01zayAgICAgICAgICAgICAgICAgICAvKiE8IFBlcmlwaGVyYWwgQWRkcmVzcyAqLw0KDQoNCi8qKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBETUFfQ1BBUjcgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIERNQV9DUEFSN19QQV9Qb3MgICAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIERNQV9DUEFSN19QQV9Nc2sgICAgICAgICAgICAgICAgICAgICgweEZGRkZGRkZGVSA8PCBETUFfQ1BBUjdfUEFfUG9zKSAgLyohPCAweEZGRkZGRkZGICovDQojZGVmaW5lIERNQV9DUEFSN19QQSAgICAgICAgICAgICAgICAgICAgICAgIERNQV9DUEFSN19QQV9Nc2sgICAgICAgICAgICAgICAgICAgLyohPCBQZXJpcGhlcmFsIEFkZHJlc3MgKi8NCg0KLyoqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZ2VuZXJpYyBmb3IgRE1BX0NNQVIgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBETUFfQ01BUl9NQV9Qb3MgICAgICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBETUFfQ01BUl9NQV9Nc2sgICAgICAgICAgICAgICAgICAgICAoMHhGRkZGRkZGRlUgPDwgRE1BX0NNQVJfTUFfUG9zKSAgIC8qITwgMHhGRkZGRkZGRiAqLw0KI2RlZmluZSBETUFfQ01BUl9NQSAgICAgICAgICAgICAgICAgICAgICAgICBETUFfQ01BUl9NQV9Nc2sgICAgICAgICAgICAgICAgICAgIC8qITwgTWVtb3J5IEFkZHJlc3MgKi8NCg0KLyoqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIERNQV9DTUFSMSByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgRE1BX0NNQVIxX01BX1BvcyAgICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRE1BX0NNQVIxX01BX01zayAgICAgICAgICAgICAgICAgICAgKDB4RkZGRkZGRkZVIDw8IERNQV9DTUFSMV9NQV9Qb3MpICAvKiE8IDB4RkZGRkZGRkYgKi8NCiNkZWZpbmUgRE1BX0NNQVIxX01BICAgICAgICAgICAgICAgICAgICAgICAgRE1BX0NNQVIxX01BX01zayAgICAgICAgICAgICAgICAgICAvKiE8IE1lbW9yeSBBZGRyZXNzICovDQoNCi8qKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBETUFfQ01BUjIgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIERNQV9DTUFSMl9NQV9Qb3MgICAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIERNQV9DTUFSMl9NQV9Nc2sgICAgICAgICAgICAgICAgICAgICgweEZGRkZGRkZGVSA8PCBETUFfQ01BUjJfTUFfUG9zKSAgLyohPCAweEZGRkZGRkZGICovDQojZGVmaW5lIERNQV9DTUFSMl9NQSAgICAgICAgICAgICAgICAgICAgICAgIERNQV9DTUFSMl9NQV9Nc2sgICAgICAgICAgICAgICAgICAgLyohPCBNZW1vcnkgQWRkcmVzcyAqLw0KDQovKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgRE1BX0NNQVIzIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBETUFfQ01BUjNfTUFfUG9zICAgICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBETUFfQ01BUjNfTUFfTXNrICAgICAgICAgICAgICAgICAgICAoMHhGRkZGRkZGRlUgPDwgRE1BX0NNQVIzX01BX1BvcykgIC8qITwgMHhGRkZGRkZGRiAqLw0KI2RlZmluZSBETUFfQ01BUjNfTUEgICAgICAgICAgICAgICAgICAgICAgICBETUFfQ01BUjNfTUFfTXNrICAgICAgICAgICAgICAgICAgIC8qITwgTWVtb3J5IEFkZHJlc3MgKi8NCg0KDQovKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgRE1BX0NNQVI0IHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBETUFfQ01BUjRfTUFfUG9zICAgICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBETUFfQ01BUjRfTUFfTXNrICAgICAgICAgICAgICAgICAgICAoMHhGRkZGRkZGRlUgPDwgRE1BX0NNQVI0X01BX1BvcykgIC8qITwgMHhGRkZGRkZGRiAqLw0KI2RlZmluZSBETUFfQ01BUjRfTUEgICAgICAgICAgICAgICAgICAgICAgICBETUFfQ01BUjRfTUFfTXNrICAgICAgICAgICAgICAgICAgIC8qITwgTWVtb3J5IEFkZHJlc3MgKi8NCg0KLyoqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIERNQV9DTUFSNSByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgRE1BX0NNQVI1X01BX1BvcyAgICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRE1BX0NNQVI1X01BX01zayAgICAgICAgICAgICAgICAgICAgKDB4RkZGRkZGRkZVIDw8IERNQV9DTUFSNV9NQV9Qb3MpICAvKiE8IDB4RkZGRkZGRkYgKi8NCiNkZWZpbmUgRE1BX0NNQVI1X01BICAgICAgICAgICAgICAgICAgICAgICAgRE1BX0NNQVI1X01BX01zayAgICAgICAgICAgICAgICAgICAvKiE8IE1lbW9yeSBBZGRyZXNzICovDQoNCi8qKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBETUFfQ01BUjYgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIERNQV9DTUFSNl9NQV9Qb3MgICAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIERNQV9DTUFSNl9NQV9Nc2sgICAgICAgICAgICAgICAgICAgICgweEZGRkZGRkZGVSA8PCBETUFfQ01BUjZfTUFfUG9zKSAgLyohPCAweEZGRkZGRkZGICovDQojZGVmaW5lIERNQV9DTUFSNl9NQSAgICAgICAgICAgICAgICAgICAgICAgIERNQV9DTUFSNl9NQV9Nc2sgICAgICAgICAgICAgICAgICAgLyohPCBNZW1vcnkgQWRkcmVzcyAqLw0KDQovKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgRE1BX0NNQVI3IHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBETUFfQ01BUjdfTUFfUG9zICAgICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBETUFfQ01BUjdfTUFfTXNrICAgICAgICAgICAgICAgICAgICAoMHhGRkZGRkZGRlUgPDwgRE1BX0NNQVI3X01BX1BvcykgIC8qITwgMHhGRkZGRkZGRiAqLw0KI2RlZmluZSBETUFfQ01BUjdfTUEgICAgICAgICAgICAgICAgICAgICAgICBETUFfQ01BUjdfTUFfTXNrICAgICAgICAgICAgICAgICAgIC8qITwgTWVtb3J5IEFkZHJlc3MgKi8NCg0KLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8NCi8qICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovDQovKiAgICAgICAgICAgICAgICAgIEV4dGVybmFsIEludGVycnVwdC9FdmVudCBDb250cm9sbGVyIChFWFRJKSAgICAgICAgICAgICAgICAqLw0KLyogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8NCi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovDQoNCi8qKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgRVhUSV9JTVIgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIEVYVElfSU1SX01SMF9Qb3MgICAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEVYVElfSU1SX01SMF9Nc2sgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IEVYVElfSU1SX01SMF9Qb3MpICAgICAgICAgLyohPCAweDAwMDAwMDAxICovDQojZGVmaW5lIEVYVElfSU1SX01SMCAgICAgICAgICAgICAgICAgICAgICAgIEVYVElfSU1SX01SMF9Nc2sgICAgICAgICAgICAgICAgICAgLyohPCBJbnRlcnJ1cHQgTWFzayBvbiBsaW5lIDAgKi8NCiNkZWZpbmUgRVhUSV9JTVJfTVIxX1BvcyAgICAgICAgICAgICAgICAgICAgKDFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRVhUSV9JTVJfTVIxX01zayAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgRVhUSV9JTVJfTVIxX1BvcykgICAgICAgICAvKiE8IDB4MDAwMDAwMDIgKi8NCiNkZWZpbmUgRVhUSV9JTVJfTVIxICAgICAgICAgICAgICAgICAgICAgICAgRVhUSV9JTVJfTVIxX01zayAgICAgICAgICAgICAgICAgICAvKiE8IEludGVycnVwdCBNYXNrIG9uIGxpbmUgMSAqLw0KI2RlZmluZSBFWFRJX0lNUl9NUjJfUG9zICAgICAgICAgICAgICAgICAgICAoMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBFWFRJX0lNUl9NUjJfTXNrICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBFWFRJX0lNUl9NUjJfUG9zKSAgICAgICAgIC8qITwgMHgwMDAwMDAwNCAqLw0KI2RlZmluZSBFWFRJX0lNUl9NUjIgICAgICAgICAgICAgICAgICAgICAgICBFWFRJX0lNUl9NUjJfTXNrICAgICAgICAgICAgICAgICAgIC8qITwgSW50ZXJydXB0IE1hc2sgb24gbGluZSAyICovDQojZGVmaW5lIEVYVElfSU1SX01SM19Qb3MgICAgICAgICAgICAgICAgICAgICgzVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEVYVElfSU1SX01SM19Nc2sgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IEVYVElfSU1SX01SM19Qb3MpICAgICAgICAgLyohPCAweDAwMDAwMDA4ICovDQojZGVmaW5lIEVYVElfSU1SX01SMyAgICAgICAgICAgICAgICAgICAgICAgIEVYVElfSU1SX01SM19Nc2sgICAgICAgICAgICAgICAgICAgLyohPCBJbnRlcnJ1cHQgTWFzayBvbiBsaW5lIDMgKi8NCiNkZWZpbmUgRVhUSV9JTVJfTVI0X1BvcyAgICAgICAgICAgICAgICAgICAgKDRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRVhUSV9JTVJfTVI0X01zayAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgRVhUSV9JTVJfTVI0X1BvcykgICAgICAgICAvKiE8IDB4MDAwMDAwMTAgKi8NCiNkZWZpbmUgRVhUSV9JTVJfTVI0ICAgICAgICAgICAgICAgICAgICAgICAgRVhUSV9JTVJfTVI0X01zayAgICAgICAgICAgICAgICAgICAvKiE8IEludGVycnVwdCBNYXNrIG9uIGxpbmUgNCAqLw0KI2RlZmluZSBFWFRJX0lNUl9NUjVfUG9zICAgICAgICAgICAgICAgICAgICAoNVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBFWFRJX0lNUl9NUjVfTXNrICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBFWFRJX0lNUl9NUjVfUG9zKSAgICAgICAgIC8qITwgMHgwMDAwMDAyMCAqLw0KI2RlZmluZSBFWFRJX0lNUl9NUjUgICAgICAgICAgICAgICAgICAgICAgICBFWFRJX0lNUl9NUjVfTXNrICAgICAgICAgICAgICAgICAgIC8qITwgSW50ZXJydXB0IE1hc2sgb24gbGluZSA1ICovDQojZGVmaW5lIEVYVElfSU1SX01SNl9Qb3MgICAgICAgICAgICAgICAgICAgICg2VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEVYVElfSU1SX01SNl9Nc2sgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IEVYVElfSU1SX01SNl9Qb3MpICAgICAgICAgLyohPCAweDAwMDAwMDQwICovDQojZGVmaW5lIEVYVElfSU1SX01SNiAgICAgICAgICAgICAgICAgICAgICAgIEVYVElfSU1SX01SNl9Nc2sgICAgICAgICAgICAgICAgICAgLyohPCBJbnRlcnJ1cHQgTWFzayBvbiBsaW5lIDYgKi8NCiNkZWZpbmUgRVhUSV9JTVJfTVI3X1BvcyAgICAgICAgICAgICAgICAgICAgKDdVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRVhUSV9JTVJfTVI3X01zayAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgRVhUSV9JTVJfTVI3X1BvcykgICAgICAgICAvKiE8IDB4MDAwMDAwODAgKi8NCiNkZWZpbmUgRVhUSV9JTVJfTVI3ICAgICAgICAgICAgICAgICAgICAgICAgRVhUSV9JTVJfTVI3X01zayAgICAgICAgICAgICAgICAgICAvKiE8IEludGVycnVwdCBNYXNrIG9uIGxpbmUgNyAqLw0KI2RlZmluZSBFWFRJX0lNUl9NUjhfUG9zICAgICAgICAgICAgICAgICAgICAoOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBFWFRJX0lNUl9NUjhfTXNrICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBFWFRJX0lNUl9NUjhfUG9zKSAgICAgICAgIC8qITwgMHgwMDAwMDEwMCAqLw0KI2RlZmluZSBFWFRJX0lNUl9NUjggICAgICAgICAgICAgICAgICAgICAgICBFWFRJX0lNUl9NUjhfTXNrICAgICAgICAgICAgICAgICAgIC8qITwgSW50ZXJydXB0IE1hc2sgb24gbGluZSA4ICovDQojZGVmaW5lIEVYVElfSU1SX01SOV9Qb3MgICAgICAgICAgICAgICAgICAgICg5VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEVYVElfSU1SX01SOV9Nc2sgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IEVYVElfSU1SX01SOV9Qb3MpICAgICAgICAgLyohPCAweDAwMDAwMjAwICovDQojZGVmaW5lIEVYVElfSU1SX01SOSAgICAgICAgICAgICAgICAgICAgICAgIEVYVElfSU1SX01SOV9Nc2sgICAgICAgICAgICAgICAgICAgLyohPCBJbnRlcnJ1cHQgTWFzayBvbiBsaW5lIDkgKi8NCiNkZWZpbmUgRVhUSV9JTVJfTVIxMF9Qb3MgICAgICAgICAgICAgICAgICAgKDEwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRVhUSV9JTVJfTVIxMF9Nc2sgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgRVhUSV9JTVJfTVIxMF9Qb3MpICAgICAgICAvKiE8IDB4MDAwMDA0MDAgKi8NCiNkZWZpbmUgRVhUSV9JTVJfTVIxMCAgICAgICAgICAgICAgICAgICAgICAgRVhUSV9JTVJfTVIxMF9Nc2sgICAgICAgICAgICAgICAgICAvKiE8IEludGVycnVwdCBNYXNrIG9uIGxpbmUgMTAgKi8NCiNkZWZpbmUgRVhUSV9JTVJfTVIxMV9Qb3MgICAgICAgICAgICAgICAgICAgKDExVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRVhUSV9JTVJfTVIxMV9Nc2sgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgRVhUSV9JTVJfTVIxMV9Qb3MpICAgICAgICAvKiE8IDB4MDAwMDA4MDAgKi8NCiNkZWZpbmUgRVhUSV9JTVJfTVIxMSAgICAgICAgICAgICAgICAgICAgICAgRVhUSV9JTVJfTVIxMV9Nc2sgICAgICAgICAgICAgICAgICAvKiE8IEludGVycnVwdCBNYXNrIG9uIGxpbmUgMTEgKi8NCiNkZWZpbmUgRVhUSV9JTVJfTVIxMl9Qb3MgICAgICAgICAgICAgICAgICAgKDEyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRVhUSV9JTVJfTVIxMl9Nc2sgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgRVhUSV9JTVJfTVIxMl9Qb3MpICAgICAgICAvKiE8IDB4MDAwMDEwMDAgKi8NCiNkZWZpbmUgRVhUSV9JTVJfTVIxMiAgICAgICAgICAgICAgICAgICAgICAgRVhUSV9JTVJfTVIxMl9Nc2sgICAgICAgICAgICAgICAgICAvKiE8IEludGVycnVwdCBNYXNrIG9uIGxpbmUgMTIgKi8NCiNkZWZpbmUgRVhUSV9JTVJfTVIxM19Qb3MgICAgICAgICAgICAgICAgICAgKDEzVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRVhUSV9JTVJfTVIxM19Nc2sgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgRVhUSV9JTVJfTVIxM19Qb3MpICAgICAgICAvKiE8IDB4MDAwMDIwMDAgKi8NCiNkZWZpbmUgRVhUSV9JTVJfTVIxMyAgICAgICAgICAgICAgICAgICAgICAgRVhUSV9JTVJfTVIxM19Nc2sgICAgICAgICAgICAgICAgICAvKiE8IEludGVycnVwdCBNYXNrIG9uIGxpbmUgMTMgKi8NCiNkZWZpbmUgRVhUSV9JTVJfTVIxNF9Qb3MgICAgICAgICAgICAgICAgICAgKDE0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRVhUSV9JTVJfTVIxNF9Nc2sgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgRVhUSV9JTVJfTVIxNF9Qb3MpICAgICAgICAvKiE8IDB4MDAwMDQwMDAgKi8NCiNkZWZpbmUgRVhUSV9JTVJfTVIxNCAgICAgICAgICAgICAgICAgICAgICAgRVhUSV9JTVJfTVIxNF9Nc2sgICAgICAgICAgICAgICAgICAvKiE8IEludGVycnVwdCBNYXNrIG9uIGxpbmUgMTQgKi8NCiNkZWZpbmUgRVhUSV9JTVJfTVIxNV9Qb3MgICAgICAgICAgICAgICAgICAgKDE1VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRVhUSV9JTVJfTVIxNV9Nc2sgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgRVhUSV9JTVJfTVIxNV9Qb3MpICAgICAgICAvKiE8IDB4MDAwMDgwMDAgKi8NCiNkZWZpbmUgRVhUSV9JTVJfTVIxNSAgICAgICAgICAgICAgICAgICAgICAgRVhUSV9JTVJfTVIxNV9Nc2sgICAgICAgICAgICAgICAgICAvKiE8IEludGVycnVwdCBNYXNrIG9uIGxpbmUgMTUgKi8NCiNkZWZpbmUgRVhUSV9JTVJfTVIxNl9Qb3MgICAgICAgICAgICAgICAgICAgKDE2VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRVhUSV9JTVJfTVIxNl9Nc2sgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgRVhUSV9JTVJfTVIxNl9Qb3MpICAgICAgICAvKiE8IDB4MDAwMTAwMDAgKi8NCiNkZWZpbmUgRVhUSV9JTVJfTVIxNiAgICAgICAgICAgICAgICAgICAgICAgRVhUSV9JTVJfTVIxNl9Nc2sgICAgICAgICAgICAgICAgICAvKiE8IEludGVycnVwdCBNYXNrIG9uIGxpbmUgMTYgKi8NCiNkZWZpbmUgRVhUSV9JTVJfTVIxN19Qb3MgICAgICAgICAgICAgICAgICAgKDE3VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRVhUSV9JTVJfTVIxN19Nc2sgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgRVhUSV9JTVJfTVIxN19Qb3MpICAgICAgICAvKiE8IDB4MDAwMjAwMDAgKi8NCiNkZWZpbmUgRVhUSV9JTVJfTVIxNyAgICAgICAgICAgICAgICAgICAgICAgRVhUSV9JTVJfTVIxN19Nc2sgICAgICAgICAgICAgICAgICAvKiE8IEludGVycnVwdCBNYXNrIG9uIGxpbmUgMTcgKi8NCiNkZWZpbmUgRVhUSV9JTVJfTVIxOF9Qb3MgICAgICAgICAgICAgICAgICAgKDE4VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRVhUSV9JTVJfTVIxOF9Nc2sgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgRVhUSV9JTVJfTVIxOF9Qb3MpICAgICAgICAvKiE8IDB4MDAwNDAwMDAgKi8NCiNkZWZpbmUgRVhUSV9JTVJfTVIxOCAgICAgICAgICAgICAgICAgICAgICAgRVhUSV9JTVJfTVIxOF9Nc2sgICAgICAgICAgICAgICAgICAvKiE8IEludGVycnVwdCBNYXNrIG9uIGxpbmUgMTggKi8NCiNkZWZpbmUgRVhUSV9JTVJfTVIxOV9Qb3MgICAgICAgICAgICAgICAgICAgKDE5VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRVhUSV9JTVJfTVIxOV9Nc2sgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgRVhUSV9JTVJfTVIxOV9Qb3MpICAgICAgICAvKiE8IDB4MDAwODAwMDAgKi8NCiNkZWZpbmUgRVhUSV9JTVJfTVIxOSAgICAgICAgICAgICAgICAgICAgICAgRVhUSV9JTVJfTVIxOV9Nc2sgICAgICAgICAgICAgICAgICAvKiE8IEludGVycnVwdCBNYXNrIG9uIGxpbmUgMTkgKi8NCiNkZWZpbmUgRVhUSV9JTVJfTVIyMF9Qb3MgICAgICAgICAgICAgICAgICAgKDIwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRVhUSV9JTVJfTVIyMF9Nc2sgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgRVhUSV9JTVJfTVIyMF9Qb3MpICAgICAgICAvKiE8IDB4MDAxMDAwMDAgKi8NCiNkZWZpbmUgRVhUSV9JTVJfTVIyMCAgICAgICAgICAgICAgICAgICAgICAgRVhUSV9JTVJfTVIyMF9Nc2sgICAgICAgICAgICAgICAgICAvKiE8IEludGVycnVwdCBNYXNrIG9uIGxpbmUgMjAgKi8NCiNkZWZpbmUgRVhUSV9JTVJfTVIyMV9Qb3MgICAgICAgICAgICAgICAgICAgKDIxVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRVhUSV9JTVJfTVIyMV9Nc2sgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgRVhUSV9JTVJfTVIyMV9Qb3MpICAgICAgICAvKiE8IDB4MDAyMDAwMDAgKi8NCiNkZWZpbmUgRVhUSV9JTVJfTVIyMSAgICAgICAgICAgICAgICAgICAgICAgRVhUSV9JTVJfTVIyMV9Nc2sgICAgICAgICAgICAgICAgICAvKiE8IEludGVycnVwdCBNYXNrIG9uIGxpbmUgMjEgKi8NCiNkZWZpbmUgRVhUSV9JTVJfTVIyMl9Qb3MgICAgICAgICAgICAgICAgICAgKDIyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRVhUSV9JTVJfTVIyMl9Nc2sgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgRVhUSV9JTVJfTVIyMl9Qb3MpICAgICAgICAvKiE8IDB4MDA0MDAwMDAgKi8NCiNkZWZpbmUgRVhUSV9JTVJfTVIyMiAgICAgICAgICAgICAgICAgICAgICAgRVhUSV9JTVJfTVIyMl9Nc2sgICAgICAgICAgICAgICAgICAvKiE8IEludGVycnVwdCBNYXNrIG9uIGxpbmUgMjIgKi8NCiNkZWZpbmUgRVhUSV9JTVJfTVIyM19Qb3MgICAgICAgICAgICAgICAgICAgKDIzVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRVhUSV9JTVJfTVIyM19Nc2sgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgRVhUSV9JTVJfTVIyM19Qb3MpICAgICAgICAvKiE8IDB4MDA4MDAwMDAgKi8NCiNkZWZpbmUgRVhUSV9JTVJfTVIyMyAgICAgICAgICAgICAgICAgICAgICAgRVhUSV9JTVJfTVIyM19Nc2sgICAgICAgICAgICAgICAgICAvKiE8IEludGVycnVwdCBNYXNrIG9uIGxpbmUgMjMgKi8NCg0KLyogUmVmZXJlbmNlcyBEZWZpbmVzICovDQojZGVmaW5lICBFWFRJX0lNUl9JTTAgRVhUSV9JTVJfTVIwDQojZGVmaW5lICBFWFRJX0lNUl9JTTEgRVhUSV9JTVJfTVIxDQojZGVmaW5lICBFWFRJX0lNUl9JTTIgRVhUSV9JTVJfTVIyDQojZGVmaW5lICBFWFRJX0lNUl9JTTMgRVhUSV9JTVJfTVIzDQojZGVmaW5lICBFWFRJX0lNUl9JTTQgRVhUSV9JTVJfTVI0DQojZGVmaW5lICBFWFRJX0lNUl9JTTUgRVhUSV9JTVJfTVI1DQojZGVmaW5lICBFWFRJX0lNUl9JTTYgRVhUSV9JTVJfTVI2DQojZGVmaW5lICBFWFRJX0lNUl9JTTcgRVhUSV9JTVJfTVI3DQojZGVmaW5lICBFWFRJX0lNUl9JTTggRVhUSV9JTVJfTVI4DQojZGVmaW5lICBFWFRJX0lNUl9JTTkgRVhUSV9JTVJfTVI5DQojZGVmaW5lICBFWFRJX0lNUl9JTTEwIEVYVElfSU1SX01SMTANCiNkZWZpbmUgIEVYVElfSU1SX0lNMTEgRVhUSV9JTVJfTVIxMQ0KI2RlZmluZSAgRVhUSV9JTVJfSU0xMiBFWFRJX0lNUl9NUjEyDQojZGVmaW5lICBFWFRJX0lNUl9JTTEzIEVYVElfSU1SX01SMTMNCiNkZWZpbmUgIEVYVElfSU1SX0lNMTQgRVhUSV9JTVJfTVIxNA0KI2RlZmluZSAgRVhUSV9JTVJfSU0xNSBFWFRJX0lNUl9NUjE1DQojZGVmaW5lICBFWFRJX0lNUl9JTTE2IEVYVElfSU1SX01SMTYNCiNkZWZpbmUgIEVYVElfSU1SX0lNMTcgRVhUSV9JTVJfTVIxNw0KI2RlZmluZSAgRVhUSV9JTVJfSU0xOCBFWFRJX0lNUl9NUjE4DQojZGVmaW5lICBFWFRJX0lNUl9JTTE5IEVYVElfSU1SX01SMTkNCiNkZWZpbmUgIEVYVElfSU1SX0lNMjAgRVhUSV9JTVJfTVIyMA0KI2RlZmluZSAgRVhUSV9JTVJfSU0yMSBFWFRJX0lNUl9NUjIxDQojZGVmaW5lICBFWFRJX0lNUl9JTTIyIEVYVElfSU1SX01SMjINCi8qIENhdGVnb3J5IDMsIDQgJiA1ICovDQojZGVmaW5lICBFWFRJX0lNUl9JTTIzIEVYVElfSU1SX01SMjMNCiNkZWZpbmUgRVhUSV9JTVJfSU1fUG9zICAgICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRVhUSV9JTVJfSU1fTXNrICAgICAgICAgICAgICAgICAgICAgKDB4RkZGRkZGVSA8PCBFWFRJX0lNUl9JTV9Qb3MpICAgICAvKiE8IDB4MDBGRkZGRkYgKi8NCiNkZWZpbmUgRVhUSV9JTVJfSU0gICAgICAgICAgICAgICAgICAgICAgICAgRVhUSV9JTVJfSU1fTXNrICAgICAgICAgICAgICAgICAgICAvKiE8IEludGVycnVwdCBNYXNrIEFsbCAqLw0KDQovKioqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIEVYVElfRU1SIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBFWFRJX0VNUl9NUjBfUG9zICAgICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBFWFRJX0VNUl9NUjBfTXNrICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBFWFRJX0VNUl9NUjBfUG9zKSAgICAgICAgIC8qITwgMHgwMDAwMDAwMSAqLw0KI2RlZmluZSBFWFRJX0VNUl9NUjAgICAgICAgICAgICAgICAgICAgICAgICBFWFRJX0VNUl9NUjBfTXNrICAgICAgICAgICAgICAgICAgIC8qITwgRXZlbnQgTWFzayBvbiBsaW5lIDAgKi8NCiNkZWZpbmUgRVhUSV9FTVJfTVIxX1BvcyAgICAgICAgICAgICAgICAgICAgKDFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRVhUSV9FTVJfTVIxX01zayAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgRVhUSV9FTVJfTVIxX1BvcykgICAgICAgICAvKiE8IDB4MDAwMDAwMDIgKi8NCiNkZWZpbmUgRVhUSV9FTVJfTVIxICAgICAgICAgICAgICAgICAgICAgICAgRVhUSV9FTVJfTVIxX01zayAgICAgICAgICAgICAgICAgICAvKiE8IEV2ZW50IE1hc2sgb24gbGluZSAxICovDQojZGVmaW5lIEVYVElfRU1SX01SMl9Qb3MgICAgICAgICAgICAgICAgICAgICgyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEVYVElfRU1SX01SMl9Nc2sgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IEVYVElfRU1SX01SMl9Qb3MpICAgICAgICAgLyohPCAweDAwMDAwMDA0ICovDQojZGVmaW5lIEVYVElfRU1SX01SMiAgICAgICAgICAgICAgICAgICAgICAgIEVYVElfRU1SX01SMl9Nc2sgICAgICAgICAgICAgICAgICAgLyohPCBFdmVudCBNYXNrIG9uIGxpbmUgMiAqLw0KI2RlZmluZSBFWFRJX0VNUl9NUjNfUG9zICAgICAgICAgICAgICAgICAgICAoM1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBFWFRJX0VNUl9NUjNfTXNrICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBFWFRJX0VNUl9NUjNfUG9zKSAgICAgICAgIC8qITwgMHgwMDAwMDAwOCAqLw0KI2RlZmluZSBFWFRJX0VNUl9NUjMgICAgICAgICAgICAgICAgICAgICAgICBFWFRJX0VNUl9NUjNfTXNrICAgICAgICAgICAgICAgICAgIC8qITwgRXZlbnQgTWFzayBvbiBsaW5lIDMgKi8NCiNkZWZpbmUgRVhUSV9FTVJfTVI0X1BvcyAgICAgICAgICAgICAgICAgICAgKDRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRVhUSV9FTVJfTVI0X01zayAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgRVhUSV9FTVJfTVI0X1BvcykgICAgICAgICAvKiE8IDB4MDAwMDAwMTAgKi8NCiNkZWZpbmUgRVhUSV9FTVJfTVI0ICAgICAgICAgICAgICAgICAgICAgICAgRVhUSV9FTVJfTVI0X01zayAgICAgICAgICAgICAgICAgICAvKiE8IEV2ZW50IE1hc2sgb24gbGluZSA0ICovDQojZGVmaW5lIEVYVElfRU1SX01SNV9Qb3MgICAgICAgICAgICAgICAgICAgICg1VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEVYVElfRU1SX01SNV9Nc2sgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IEVYVElfRU1SX01SNV9Qb3MpICAgICAgICAgLyohPCAweDAwMDAwMDIwICovDQojZGVmaW5lIEVYVElfRU1SX01SNSAgICAgICAgICAgICAgICAgICAgICAgIEVYVElfRU1SX01SNV9Nc2sgICAgICAgICAgICAgICAgICAgLyohPCBFdmVudCBNYXNrIG9uIGxpbmUgNSAqLw0KI2RlZmluZSBFWFRJX0VNUl9NUjZfUG9zICAgICAgICAgICAgICAgICAgICAoNlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBFWFRJX0VNUl9NUjZfTXNrICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBFWFRJX0VNUl9NUjZfUG9zKSAgICAgICAgIC8qITwgMHgwMDAwMDA0MCAqLw0KI2RlZmluZSBFWFRJX0VNUl9NUjYgICAgICAgICAgICAgICAgICAgICAgICBFWFRJX0VNUl9NUjZfTXNrICAgICAgICAgICAgICAgICAgIC8qITwgRXZlbnQgTWFzayBvbiBsaW5lIDYgKi8NCiNkZWZpbmUgRVhUSV9FTVJfTVI3X1BvcyAgICAgICAgICAgICAgICAgICAgKDdVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRVhUSV9FTVJfTVI3X01zayAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgRVhUSV9FTVJfTVI3X1BvcykgICAgICAgICAvKiE8IDB4MDAwMDAwODAgKi8NCiNkZWZpbmUgRVhUSV9FTVJfTVI3ICAgICAgICAgICAgICAgICAgICAgICAgRVhUSV9FTVJfTVI3X01zayAgICAgICAgICAgICAgICAgICAvKiE8IEV2ZW50IE1hc2sgb24gbGluZSA3ICovDQojZGVmaW5lIEVYVElfRU1SX01SOF9Qb3MgICAgICAgICAgICAgICAgICAgICg4VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEVYVElfRU1SX01SOF9Nc2sgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IEVYVElfRU1SX01SOF9Qb3MpICAgICAgICAgLyohPCAweDAwMDAwMTAwICovDQojZGVmaW5lIEVYVElfRU1SX01SOCAgICAgICAgICAgICAgICAgICAgICAgIEVYVElfRU1SX01SOF9Nc2sgICAgICAgICAgICAgICAgICAgLyohPCBFdmVudCBNYXNrIG9uIGxpbmUgOCAqLw0KI2RlZmluZSBFWFRJX0VNUl9NUjlfUG9zICAgICAgICAgICAgICAgICAgICAoOVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBFWFRJX0VNUl9NUjlfTXNrICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBFWFRJX0VNUl9NUjlfUG9zKSAgICAgICAgIC8qITwgMHgwMDAwMDIwMCAqLw0KI2RlZmluZSBFWFRJX0VNUl9NUjkgICAgICAgICAgICAgICAgICAgICAgICBFWFRJX0VNUl9NUjlfTXNrICAgICAgICAgICAgICAgICAgIC8qITwgRXZlbnQgTWFzayBvbiBsaW5lIDkgKi8NCiNkZWZpbmUgRVhUSV9FTVJfTVIxMF9Qb3MgICAgICAgICAgICAgICAgICAgKDEwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRVhUSV9FTVJfTVIxMF9Nc2sgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgRVhUSV9FTVJfTVIxMF9Qb3MpICAgICAgICAvKiE8IDB4MDAwMDA0MDAgKi8NCiNkZWZpbmUgRVhUSV9FTVJfTVIxMCAgICAgICAgICAgICAgICAgICAgICAgRVhUSV9FTVJfTVIxMF9Nc2sgICAgICAgICAgICAgICAgICAvKiE8IEV2ZW50IE1hc2sgb24gbGluZSAxMCAqLw0KI2RlZmluZSBFWFRJX0VNUl9NUjExX1BvcyAgICAgICAgICAgICAgICAgICAoMTFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBFWFRJX0VNUl9NUjExX01zayAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBFWFRJX0VNUl9NUjExX1BvcykgICAgICAgIC8qITwgMHgwMDAwMDgwMCAqLw0KI2RlZmluZSBFWFRJX0VNUl9NUjExICAgICAgICAgICAgICAgICAgICAgICBFWFRJX0VNUl9NUjExX01zayAgICAgICAgICAgICAgICAgIC8qITwgRXZlbnQgTWFzayBvbiBsaW5lIDExICovDQojZGVmaW5lIEVYVElfRU1SX01SMTJfUG9zICAgICAgICAgICAgICAgICAgICgxMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEVYVElfRU1SX01SMTJfTXNrICAgICAgICAgICAgICAgICAgICgweDFVIDw8IEVYVElfRU1SX01SMTJfUG9zKSAgICAgICAgLyohPCAweDAwMDAxMDAwICovDQojZGVmaW5lIEVYVElfRU1SX01SMTIgICAgICAgICAgICAgICAgICAgICAgIEVYVElfRU1SX01SMTJfTXNrICAgICAgICAgICAgICAgICAgLyohPCBFdmVudCBNYXNrIG9uIGxpbmUgMTIgKi8NCiNkZWZpbmUgRVhUSV9FTVJfTVIxM19Qb3MgICAgICAgICAgICAgICAgICAgKDEzVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRVhUSV9FTVJfTVIxM19Nc2sgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgRVhUSV9FTVJfTVIxM19Qb3MpICAgICAgICAvKiE8IDB4MDAwMDIwMDAgKi8NCiNkZWZpbmUgRVhUSV9FTVJfTVIxMyAgICAgICAgICAgICAgICAgICAgICAgRVhUSV9FTVJfTVIxM19Nc2sgICAgICAgICAgICAgICAgICAvKiE8IEV2ZW50IE1hc2sgb24gbGluZSAxMyAqLw0KI2RlZmluZSBFWFRJX0VNUl9NUjE0X1BvcyAgICAgICAgICAgICAgICAgICAoMTRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBFWFRJX0VNUl9NUjE0X01zayAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBFWFRJX0VNUl9NUjE0X1BvcykgICAgICAgIC8qITwgMHgwMDAwNDAwMCAqLw0KI2RlZmluZSBFWFRJX0VNUl9NUjE0ICAgICAgICAgICAgICAgICAgICAgICBFWFRJX0VNUl9NUjE0X01zayAgICAgICAgICAgICAgICAgIC8qITwgRXZlbnQgTWFzayBvbiBsaW5lIDE0ICovDQojZGVmaW5lIEVYVElfRU1SX01SMTVfUG9zICAgICAgICAgICAgICAgICAgICgxNVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEVYVElfRU1SX01SMTVfTXNrICAgICAgICAgICAgICAgICAgICgweDFVIDw8IEVYVElfRU1SX01SMTVfUG9zKSAgICAgICAgLyohPCAweDAwMDA4MDAwICovDQojZGVmaW5lIEVYVElfRU1SX01SMTUgICAgICAgICAgICAgICAgICAgICAgIEVYVElfRU1SX01SMTVfTXNrICAgICAgICAgICAgICAgICAgLyohPCBFdmVudCBNYXNrIG9uIGxpbmUgMTUgKi8NCiNkZWZpbmUgRVhUSV9FTVJfTVIxNl9Qb3MgICAgICAgICAgICAgICAgICAgKDE2VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRVhUSV9FTVJfTVIxNl9Nc2sgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgRVhUSV9FTVJfTVIxNl9Qb3MpICAgICAgICAvKiE8IDB4MDAwMTAwMDAgKi8NCiNkZWZpbmUgRVhUSV9FTVJfTVIxNiAgICAgICAgICAgICAgICAgICAgICAgRVhUSV9FTVJfTVIxNl9Nc2sgICAgICAgICAgICAgICAgICAvKiE8IEV2ZW50IE1hc2sgb24gbGluZSAxNiAqLw0KI2RlZmluZSBFWFRJX0VNUl9NUjE3X1BvcyAgICAgICAgICAgICAgICAgICAoMTdVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBFWFRJX0VNUl9NUjE3X01zayAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBFWFRJX0VNUl9NUjE3X1BvcykgICAgICAgIC8qITwgMHgwMDAyMDAwMCAqLw0KI2RlZmluZSBFWFRJX0VNUl9NUjE3ICAgICAgICAgICAgICAgICAgICAgICBFWFRJX0VNUl9NUjE3X01zayAgICAgICAgICAgICAgICAgIC8qITwgRXZlbnQgTWFzayBvbiBsaW5lIDE3ICovDQojZGVmaW5lIEVYVElfRU1SX01SMThfUG9zICAgICAgICAgICAgICAgICAgICgxOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEVYVElfRU1SX01SMThfTXNrICAgICAgICAgICAgICAgICAgICgweDFVIDw8IEVYVElfRU1SX01SMThfUG9zKSAgICAgICAgLyohPCAweDAwMDQwMDAwICovDQojZGVmaW5lIEVYVElfRU1SX01SMTggICAgICAgICAgICAgICAgICAgICAgIEVYVElfRU1SX01SMThfTXNrICAgICAgICAgICAgICAgICAgLyohPCBFdmVudCBNYXNrIG9uIGxpbmUgMTggKi8NCiNkZWZpbmUgRVhUSV9FTVJfTVIxOV9Qb3MgICAgICAgICAgICAgICAgICAgKDE5VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRVhUSV9FTVJfTVIxOV9Nc2sgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgRVhUSV9FTVJfTVIxOV9Qb3MpICAgICAgICAvKiE8IDB4MDAwODAwMDAgKi8NCiNkZWZpbmUgRVhUSV9FTVJfTVIxOSAgICAgICAgICAgICAgICAgICAgICAgRVhUSV9FTVJfTVIxOV9Nc2sgICAgICAgICAgICAgICAgICAvKiE8IEV2ZW50IE1hc2sgb24gbGluZSAxOSAqLw0KI2RlZmluZSBFWFRJX0VNUl9NUjIwX1BvcyAgICAgICAgICAgICAgICAgICAoMjBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBFWFRJX0VNUl9NUjIwX01zayAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBFWFRJX0VNUl9NUjIwX1BvcykgICAgICAgIC8qITwgMHgwMDEwMDAwMCAqLw0KI2RlZmluZSBFWFRJX0VNUl9NUjIwICAgICAgICAgICAgICAgICAgICAgICBFWFRJX0VNUl9NUjIwX01zayAgICAgICAgICAgICAgICAgIC8qITwgRXZlbnQgTWFzayBvbiBsaW5lIDIwICovDQojZGVmaW5lIEVYVElfRU1SX01SMjFfUG9zICAgICAgICAgICAgICAgICAgICgyMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEVYVElfRU1SX01SMjFfTXNrICAgICAgICAgICAgICAgICAgICgweDFVIDw8IEVYVElfRU1SX01SMjFfUG9zKSAgICAgICAgLyohPCAweDAwMjAwMDAwICovDQojZGVmaW5lIEVYVElfRU1SX01SMjEgICAgICAgICAgICAgICAgICAgICAgIEVYVElfRU1SX01SMjFfTXNrICAgICAgICAgICAgICAgICAgLyohPCBFdmVudCBNYXNrIG9uIGxpbmUgMjEgKi8NCiNkZWZpbmUgRVhUSV9FTVJfTVIyMl9Qb3MgICAgICAgICAgICAgICAgICAgKDIyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRVhUSV9FTVJfTVIyMl9Nc2sgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgRVhUSV9FTVJfTVIyMl9Qb3MpICAgICAgICAvKiE8IDB4MDA0MDAwMDAgKi8NCiNkZWZpbmUgRVhUSV9FTVJfTVIyMiAgICAgICAgICAgICAgICAgICAgICAgRVhUSV9FTVJfTVIyMl9Nc2sgICAgICAgICAgICAgICAgICAvKiE8IEV2ZW50IE1hc2sgb24gbGluZSAyMiAqLw0KI2RlZmluZSBFWFRJX0VNUl9NUjIzX1BvcyAgICAgICAgICAgICAgICAgICAoMjNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBFWFRJX0VNUl9NUjIzX01zayAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBFWFRJX0VNUl9NUjIzX1BvcykgICAgICAgIC8qITwgMHgwMDgwMDAwMCAqLw0KI2RlZmluZSBFWFRJX0VNUl9NUjIzICAgICAgICAgICAgICAgICAgICAgICBFWFRJX0VNUl9NUjIzX01zayAgICAgICAgICAgICAgICAgIC8qITwgRXZlbnQgTWFzayBvbiBsaW5lIDIzICovDQoNCi8qIFJlZmVyZW5jZXMgRGVmaW5lcyAqLw0KI2RlZmluZSAgRVhUSV9FTVJfRU0wIEVYVElfRU1SX01SMA0KI2RlZmluZSAgRVhUSV9FTVJfRU0xIEVYVElfRU1SX01SMQ0KI2RlZmluZSAgRVhUSV9FTVJfRU0yIEVYVElfRU1SX01SMg0KI2RlZmluZSAgRVhUSV9FTVJfRU0zIEVYVElfRU1SX01SMw0KI2RlZmluZSAgRVhUSV9FTVJfRU00IEVYVElfRU1SX01SNA0KI2RlZmluZSAgRVhUSV9FTVJfRU01IEVYVElfRU1SX01SNQ0KI2RlZmluZSAgRVhUSV9FTVJfRU02IEVYVElfRU1SX01SNg0KI2RlZmluZSAgRVhUSV9FTVJfRU03IEVYVElfRU1SX01SNw0KI2RlZmluZSAgRVhUSV9FTVJfRU04IEVYVElfRU1SX01SOA0KI2RlZmluZSAgRVhUSV9FTVJfRU05IEVYVElfRU1SX01SOQ0KI2RlZmluZSAgRVhUSV9FTVJfRU0xMCBFWFRJX0VNUl9NUjEwDQojZGVmaW5lICBFWFRJX0VNUl9FTTExIEVYVElfRU1SX01SMTENCiNkZWZpbmUgIEVYVElfRU1SX0VNMTIgRVhUSV9FTVJfTVIxMg0KI2RlZmluZSAgRVhUSV9FTVJfRU0xMyBFWFRJX0VNUl9NUjEzDQojZGVmaW5lICBFWFRJX0VNUl9FTTE0IEVYVElfRU1SX01SMTQNCiNkZWZpbmUgIEVYVElfRU1SX0VNMTUgRVhUSV9FTVJfTVIxNQ0KI2RlZmluZSAgRVhUSV9FTVJfRU0xNiBFWFRJX0VNUl9NUjE2DQojZGVmaW5lICBFWFRJX0VNUl9FTTE3IEVYVElfRU1SX01SMTcNCiNkZWZpbmUgIEVYVElfRU1SX0VNMTggRVhUSV9FTVJfTVIxOA0KI2RlZmluZSAgRVhUSV9FTVJfRU0xOSBFWFRJX0VNUl9NUjE5DQojZGVmaW5lICBFWFRJX0VNUl9FTTIwIEVYVElfRU1SX01SMjANCiNkZWZpbmUgIEVYVElfRU1SX0VNMjEgRVhUSV9FTVJfTVIyMQ0KI2RlZmluZSAgRVhUSV9FTVJfRU0yMiBFWFRJX0VNUl9NUjIyDQojZGVmaW5lICBFWFRJX0VNUl9FTTIzIEVYVElfRU1SX01SMjMNCg0KLyoqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIEVYVElfUlRTUiByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgRVhUSV9SVFNSX1RSMF9Qb3MgICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRVhUSV9SVFNSX1RSMF9Nc2sgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgRVhUSV9SVFNSX1RSMF9Qb3MpICAgICAgICAvKiE8IDB4MDAwMDAwMDEgKi8NCiNkZWZpbmUgRVhUSV9SVFNSX1RSMCAgICAgICAgICAgICAgICAgICAgICAgRVhUSV9SVFNSX1RSMF9Nc2sgICAgICAgICAgICAgICAgICAvKiE8IFJpc2luZyB0cmlnZ2VyIGV2ZW50IGNvbmZpZ3VyYXRpb24gYml0IG9mIGxpbmUgMCAqLw0KI2RlZmluZSBFWFRJX1JUU1JfVFIxX1BvcyAgICAgICAgICAgICAgICAgICAoMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBFWFRJX1JUU1JfVFIxX01zayAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBFWFRJX1JUU1JfVFIxX1BvcykgICAgICAgIC8qITwgMHgwMDAwMDAwMiAqLw0KI2RlZmluZSBFWFRJX1JUU1JfVFIxICAgICAgICAgICAgICAgICAgICAgICBFWFRJX1JUU1JfVFIxX01zayAgICAgICAgICAgICAgICAgIC8qITwgUmlzaW5nIHRyaWdnZXIgZXZlbnQgY29uZmlndXJhdGlvbiBiaXQgb2YgbGluZSAxICovDQojZGVmaW5lIEVYVElfUlRTUl9UUjJfUG9zICAgICAgICAgICAgICAgICAgICgyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEVYVElfUlRTUl9UUjJfTXNrICAgICAgICAgICAgICAgICAgICgweDFVIDw8IEVYVElfUlRTUl9UUjJfUG9zKSAgICAgICAgLyohPCAweDAwMDAwMDA0ICovDQojZGVmaW5lIEVYVElfUlRTUl9UUjIgICAgICAgICAgICAgICAgICAgICAgIEVYVElfUlRTUl9UUjJfTXNrICAgICAgICAgICAgICAgICAgLyohPCBSaXNpbmcgdHJpZ2dlciBldmVudCBjb25maWd1cmF0aW9uIGJpdCBvZiBsaW5lIDIgKi8NCiNkZWZpbmUgRVhUSV9SVFNSX1RSM19Qb3MgICAgICAgICAgICAgICAgICAgKDNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRVhUSV9SVFNSX1RSM19Nc2sgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgRVhUSV9SVFNSX1RSM19Qb3MpICAgICAgICAvKiE8IDB4MDAwMDAwMDggKi8NCiNkZWZpbmUgRVhUSV9SVFNSX1RSMyAgICAgICAgICAgICAgICAgICAgICAgRVhUSV9SVFNSX1RSM19Nc2sgICAgICAgICAgICAgICAgICAvKiE8IFJpc2luZyB0cmlnZ2VyIGV2ZW50IGNvbmZpZ3VyYXRpb24gYml0IG9mIGxpbmUgMyAqLw0KI2RlZmluZSBFWFRJX1JUU1JfVFI0X1BvcyAgICAgICAgICAgICAgICAgICAoNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBFWFRJX1JUU1JfVFI0X01zayAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBFWFRJX1JUU1JfVFI0X1BvcykgICAgICAgIC8qITwgMHgwMDAwMDAxMCAqLw0KI2RlZmluZSBFWFRJX1JUU1JfVFI0ICAgICAgICAgICAgICAgICAgICAgICBFWFRJX1JUU1JfVFI0X01zayAgICAgICAgICAgICAgICAgIC8qITwgUmlzaW5nIHRyaWdnZXIgZXZlbnQgY29uZmlndXJhdGlvbiBiaXQgb2YgbGluZSA0ICovDQojZGVmaW5lIEVYVElfUlRTUl9UUjVfUG9zICAgICAgICAgICAgICAgICAgICg1VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEVYVElfUlRTUl9UUjVfTXNrICAgICAgICAgICAgICAgICAgICgweDFVIDw8IEVYVElfUlRTUl9UUjVfUG9zKSAgICAgICAgLyohPCAweDAwMDAwMDIwICovDQojZGVmaW5lIEVYVElfUlRTUl9UUjUgICAgICAgICAgICAgICAgICAgICAgIEVYVElfUlRTUl9UUjVfTXNrICAgICAgICAgICAgICAgICAgLyohPCBSaXNpbmcgdHJpZ2dlciBldmVudCBjb25maWd1cmF0aW9uIGJpdCBvZiBsaW5lIDUgKi8NCiNkZWZpbmUgRVhUSV9SVFNSX1RSNl9Qb3MgICAgICAgICAgICAgICAgICAgKDZVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRVhUSV9SVFNSX1RSNl9Nc2sgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgRVhUSV9SVFNSX1RSNl9Qb3MpICAgICAgICAvKiE8IDB4MDAwMDAwNDAgKi8NCiNkZWZpbmUgRVhUSV9SVFNSX1RSNiAgICAgICAgICAgICAgICAgICAgICAgRVhUSV9SVFNSX1RSNl9Nc2sgICAgICAgICAgICAgICAgICAvKiE8IFJpc2luZyB0cmlnZ2VyIGV2ZW50IGNvbmZpZ3VyYXRpb24gYml0IG9mIGxpbmUgNiAqLw0KI2RlZmluZSBFWFRJX1JUU1JfVFI3X1BvcyAgICAgICAgICAgICAgICAgICAoN1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBFWFRJX1JUU1JfVFI3X01zayAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBFWFRJX1JUU1JfVFI3X1BvcykgICAgICAgIC8qITwgMHgwMDAwMDA4MCAqLw0KI2RlZmluZSBFWFRJX1JUU1JfVFI3ICAgICAgICAgICAgICAgICAgICAgICBFWFRJX1JUU1JfVFI3X01zayAgICAgICAgICAgICAgICAgIC8qITwgUmlzaW5nIHRyaWdnZXIgZXZlbnQgY29uZmlndXJhdGlvbiBiaXQgb2YgbGluZSA3ICovDQojZGVmaW5lIEVYVElfUlRTUl9UUjhfUG9zICAgICAgICAgICAgICAgICAgICg4VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEVYVElfUlRTUl9UUjhfTXNrICAgICAgICAgICAgICAgICAgICgweDFVIDw8IEVYVElfUlRTUl9UUjhfUG9zKSAgICAgICAgLyohPCAweDAwMDAwMTAwICovDQojZGVmaW5lIEVYVElfUlRTUl9UUjggICAgICAgICAgICAgICAgICAgICAgIEVYVElfUlRTUl9UUjhfTXNrICAgICAgICAgICAgICAgICAgLyohPCBSaXNpbmcgdHJpZ2dlciBldmVudCBjb25maWd1cmF0aW9uIGJpdCBvZiBsaW5lIDggKi8NCiNkZWZpbmUgRVhUSV9SVFNSX1RSOV9Qb3MgICAgICAgICAgICAgICAgICAgKDlVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRVhUSV9SVFNSX1RSOV9Nc2sgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgRVhUSV9SVFNSX1RSOV9Qb3MpICAgICAgICAvKiE8IDB4MDAwMDAyMDAgKi8NCiNkZWZpbmUgRVhUSV9SVFNSX1RSOSAgICAgICAgICAgICAgICAgICAgICAgRVhUSV9SVFNSX1RSOV9Nc2sgICAgICAgICAgICAgICAgICAvKiE8IFJpc2luZyB0cmlnZ2VyIGV2ZW50IGNvbmZpZ3VyYXRpb24gYml0IG9mIGxpbmUgOSAqLw0KI2RlZmluZSBFWFRJX1JUU1JfVFIxMF9Qb3MgICAgICAgICAgICAgICAgICAoMTBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBFWFRJX1JUU1JfVFIxMF9Nc2sgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBFWFRJX1JUU1JfVFIxMF9Qb3MpICAgICAgIC8qITwgMHgwMDAwMDQwMCAqLw0KI2RlZmluZSBFWFRJX1JUU1JfVFIxMCAgICAgICAgICAgICAgICAgICAgICBFWFRJX1JUU1JfVFIxMF9Nc2sgICAgICAgICAgICAgICAgIC8qITwgUmlzaW5nIHRyaWdnZXIgZXZlbnQgY29uZmlndXJhdGlvbiBiaXQgb2YgbGluZSAxMCAqLw0KI2RlZmluZSBFWFRJX1JUU1JfVFIxMV9Qb3MgICAgICAgICAgICAgICAgICAoMTFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBFWFRJX1JUU1JfVFIxMV9Nc2sgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBFWFRJX1JUU1JfVFIxMV9Qb3MpICAgICAgIC8qITwgMHgwMDAwMDgwMCAqLw0KI2RlZmluZSBFWFRJX1JUU1JfVFIxMSAgICAgICAgICAgICAgICAgICAgICBFWFRJX1JUU1JfVFIxMV9Nc2sgICAgICAgICAgICAgICAgIC8qITwgUmlzaW5nIHRyaWdnZXIgZXZlbnQgY29uZmlndXJhdGlvbiBiaXQgb2YgbGluZSAxMSAqLw0KI2RlZmluZSBFWFRJX1JUU1JfVFIxMl9Qb3MgICAgICAgICAgICAgICAgICAoMTJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBFWFRJX1JUU1JfVFIxMl9Nc2sgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBFWFRJX1JUU1JfVFIxMl9Qb3MpICAgICAgIC8qITwgMHgwMDAwMTAwMCAqLw0KI2RlZmluZSBFWFRJX1JUU1JfVFIxMiAgICAgICAgICAgICAgICAgICAgICBFWFRJX1JUU1JfVFIxMl9Nc2sgICAgICAgICAgICAgICAgIC8qITwgUmlzaW5nIHRyaWdnZXIgZXZlbnQgY29uZmlndXJhdGlvbiBiaXQgb2YgbGluZSAxMiAqLw0KI2RlZmluZSBFWFRJX1JUU1JfVFIxM19Qb3MgICAgICAgICAgICAgICAgICAoMTNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBFWFRJX1JUU1JfVFIxM19Nc2sgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBFWFRJX1JUU1JfVFIxM19Qb3MpICAgICAgIC8qITwgMHgwMDAwMjAwMCAqLw0KI2RlZmluZSBFWFRJX1JUU1JfVFIxMyAgICAgICAgICAgICAgICAgICAgICBFWFRJX1JUU1JfVFIxM19Nc2sgICAgICAgICAgICAgICAgIC8qITwgUmlzaW5nIHRyaWdnZXIgZXZlbnQgY29uZmlndXJhdGlvbiBiaXQgb2YgbGluZSAxMyAqLw0KI2RlZmluZSBFWFRJX1JUU1JfVFIxNF9Qb3MgICAgICAgICAgICAgICAgICAoMTRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBFWFRJX1JUU1JfVFIxNF9Nc2sgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBFWFRJX1JUU1JfVFIxNF9Qb3MpICAgICAgIC8qITwgMHgwMDAwNDAwMCAqLw0KI2RlZmluZSBFWFRJX1JUU1JfVFIxNCAgICAgICAgICAgICAgICAgICAgICBFWFRJX1JUU1JfVFIxNF9Nc2sgICAgICAgICAgICAgICAgIC8qITwgUmlzaW5nIHRyaWdnZXIgZXZlbnQgY29uZmlndXJhdGlvbiBiaXQgb2YgbGluZSAxNCAqLw0KI2RlZmluZSBFWFRJX1JUU1JfVFIxNV9Qb3MgICAgICAgICAgICAgICAgICAoMTVVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBFWFRJX1JUU1JfVFIxNV9Nc2sgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBFWFRJX1JUU1JfVFIxNV9Qb3MpICAgICAgIC8qITwgMHgwMDAwODAwMCAqLw0KI2RlZmluZSBFWFRJX1JUU1JfVFIxNSAgICAgICAgICAgICAgICAgICAgICBFWFRJX1JUU1JfVFIxNV9Nc2sgICAgICAgICAgICAgICAgIC8qITwgUmlzaW5nIHRyaWdnZXIgZXZlbnQgY29uZmlndXJhdGlvbiBiaXQgb2YgbGluZSAxNSAqLw0KI2RlZmluZSBFWFRJX1JUU1JfVFIxNl9Qb3MgICAgICAgICAgICAgICAgICAoMTZVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBFWFRJX1JUU1JfVFIxNl9Nc2sgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBFWFRJX1JUU1JfVFIxNl9Qb3MpICAgICAgIC8qITwgMHgwMDAxMDAwMCAqLw0KI2RlZmluZSBFWFRJX1JUU1JfVFIxNiAgICAgICAgICAgICAgICAgICAgICBFWFRJX1JUU1JfVFIxNl9Nc2sgICAgICAgICAgICAgICAgIC8qITwgUmlzaW5nIHRyaWdnZXIgZXZlbnQgY29uZmlndXJhdGlvbiBiaXQgb2YgbGluZSAxNiAqLw0KI2RlZmluZSBFWFRJX1JUU1JfVFIxN19Qb3MgICAgICAgICAgICAgICAgICAoMTdVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBFWFRJX1JUU1JfVFIxN19Nc2sgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBFWFRJX1JUU1JfVFIxN19Qb3MpICAgICAgIC8qITwgMHgwMDAyMDAwMCAqLw0KI2RlZmluZSBFWFRJX1JUU1JfVFIxNyAgICAgICAgICAgICAgICAgICAgICBFWFRJX1JUU1JfVFIxN19Nc2sgICAgICAgICAgICAgICAgIC8qITwgUmlzaW5nIHRyaWdnZXIgZXZlbnQgY29uZmlndXJhdGlvbiBiaXQgb2YgbGluZSAxNyAqLw0KI2RlZmluZSBFWFRJX1JUU1JfVFIxOF9Qb3MgICAgICAgICAgICAgICAgICAoMThVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBFWFRJX1JUU1JfVFIxOF9Nc2sgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBFWFRJX1JUU1JfVFIxOF9Qb3MpICAgICAgIC8qITwgMHgwMDA0MDAwMCAqLw0KI2RlZmluZSBFWFRJX1JUU1JfVFIxOCAgICAgICAgICAgICAgICAgICAgICBFWFRJX1JUU1JfVFIxOF9Nc2sgICAgICAgICAgICAgICAgIC8qITwgUmlzaW5nIHRyaWdnZXIgZXZlbnQgY29uZmlndXJhdGlvbiBiaXQgb2YgbGluZSAxOCAqLw0KI2RlZmluZSBFWFRJX1JUU1JfVFIxOV9Qb3MgICAgICAgICAgICAgICAgICAoMTlVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBFWFRJX1JUU1JfVFIxOV9Nc2sgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBFWFRJX1JUU1JfVFIxOV9Qb3MpICAgICAgIC8qITwgMHgwMDA4MDAwMCAqLw0KI2RlZmluZSBFWFRJX1JUU1JfVFIxOSAgICAgICAgICAgICAgICAgICAgICBFWFRJX1JUU1JfVFIxOV9Nc2sgICAgICAgICAgICAgICAgIC8qITwgUmlzaW5nIHRyaWdnZXIgZXZlbnQgY29uZmlndXJhdGlvbiBiaXQgb2YgbGluZSAxOSAqLw0KI2RlZmluZSBFWFRJX1JUU1JfVFIyMF9Qb3MgICAgICAgICAgICAgICAgICAoMjBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBFWFRJX1JUU1JfVFIyMF9Nc2sgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBFWFRJX1JUU1JfVFIyMF9Qb3MpICAgICAgIC8qITwgMHgwMDEwMDAwMCAqLw0KI2RlZmluZSBFWFRJX1JUU1JfVFIyMCAgICAgICAgICAgICAgICAgICAgICBFWFRJX1JUU1JfVFIyMF9Nc2sgICAgICAgICAgICAgICAgIC8qITwgUmlzaW5nIHRyaWdnZXIgZXZlbnQgY29uZmlndXJhdGlvbiBiaXQgb2YgbGluZSAyMCAqLw0KI2RlZmluZSBFWFRJX1JUU1JfVFIyMV9Qb3MgICAgICAgICAgICAgICAgICAoMjFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBFWFRJX1JUU1JfVFIyMV9Nc2sgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBFWFRJX1JUU1JfVFIyMV9Qb3MpICAgICAgIC8qITwgMHgwMDIwMDAwMCAqLw0KI2RlZmluZSBFWFRJX1JUU1JfVFIyMSAgICAgICAgICAgICAgICAgICAgICBFWFRJX1JUU1JfVFIyMV9Nc2sgICAgICAgICAgICAgICAgIC8qITwgUmlzaW5nIHRyaWdnZXIgZXZlbnQgY29uZmlndXJhdGlvbiBiaXQgb2YgbGluZSAyMSAqLw0KI2RlZmluZSBFWFRJX1JUU1JfVFIyMl9Qb3MgICAgICAgICAgICAgICAgICAoMjJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBFWFRJX1JUU1JfVFIyMl9Nc2sgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBFWFRJX1JUU1JfVFIyMl9Qb3MpICAgICAgIC8qITwgMHgwMDQwMDAwMCAqLw0KI2RlZmluZSBFWFRJX1JUU1JfVFIyMiAgICAgICAgICAgICAgICAgICAgICBFWFRJX1JUU1JfVFIyMl9Nc2sgICAgICAgICAgICAgICAgIC8qITwgUmlzaW5nIHRyaWdnZXIgZXZlbnQgY29uZmlndXJhdGlvbiBiaXQgb2YgbGluZSAyMiAqLw0KI2RlZmluZSBFWFRJX1JUU1JfVFIyM19Qb3MgICAgICAgICAgICAgICAgICAoMjNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBFWFRJX1JUU1JfVFIyM19Nc2sgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBFWFRJX1JUU1JfVFIyM19Qb3MpICAgICAgIC8qITwgMHgwMDgwMDAwMCAqLw0KI2RlZmluZSBFWFRJX1JUU1JfVFIyMyAgICAgICAgICAgICAgICAgICAgICBFWFRJX1JUU1JfVFIyM19Nc2sgICAgICAgICAgICAgICAgIC8qITwgUmlzaW5nIHRyaWdnZXIgZXZlbnQgY29uZmlndXJhdGlvbiBiaXQgb2YgbGluZSAyMyAqLw0KDQovKiBSZWZlcmVuY2VzIERlZmluZXMgKi8NCiNkZWZpbmUgIEVYVElfUlRTUl9SVDAgRVhUSV9SVFNSX1RSMA0KI2RlZmluZSAgRVhUSV9SVFNSX1JUMSBFWFRJX1JUU1JfVFIxDQojZGVmaW5lICBFWFRJX1JUU1JfUlQyIEVYVElfUlRTUl9UUjINCiNkZWZpbmUgIEVYVElfUlRTUl9SVDMgRVhUSV9SVFNSX1RSMw0KI2RlZmluZSAgRVhUSV9SVFNSX1JUNCBFWFRJX1JUU1JfVFI0DQojZGVmaW5lICBFWFRJX1JUU1JfUlQ1IEVYVElfUlRTUl9UUjUNCiNkZWZpbmUgIEVYVElfUlRTUl9SVDYgRVhUSV9SVFNSX1RSNg0KI2RlZmluZSAgRVhUSV9SVFNSX1JUNyBFWFRJX1JUU1JfVFI3DQojZGVmaW5lICBFWFRJX1JUU1JfUlQ4IEVYVElfUlRTUl9UUjgNCiNkZWZpbmUgIEVYVElfUlRTUl9SVDkgRVhUSV9SVFNSX1RSOQ0KI2RlZmluZSAgRVhUSV9SVFNSX1JUMTAgRVhUSV9SVFNSX1RSMTANCiNkZWZpbmUgIEVYVElfUlRTUl9SVDExIEVYVElfUlRTUl9UUjExDQojZGVmaW5lICBFWFRJX1JUU1JfUlQxMiBFWFRJX1JUU1JfVFIxMg0KI2RlZmluZSAgRVhUSV9SVFNSX1JUMTMgRVhUSV9SVFNSX1RSMTMNCiNkZWZpbmUgIEVYVElfUlRTUl9SVDE0IEVYVElfUlRTUl9UUjE0DQojZGVmaW5lICBFWFRJX1JUU1JfUlQxNSBFWFRJX1JUU1JfVFIxNQ0KI2RlZmluZSAgRVhUSV9SVFNSX1JUMTYgRVhUSV9SVFNSX1RSMTYNCiNkZWZpbmUgIEVYVElfUlRTUl9SVDE3IEVYVElfUlRTUl9UUjE3DQojZGVmaW5lICBFWFRJX1JUU1JfUlQxOCBFWFRJX1JUU1JfVFIxOA0KI2RlZmluZSAgRVhUSV9SVFNSX1JUMTkgRVhUSV9SVFNSX1RSMTkNCiNkZWZpbmUgIEVYVElfUlRTUl9SVDIwIEVYVElfUlRTUl9UUjIwDQojZGVmaW5lICBFWFRJX1JUU1JfUlQyMSBFWFRJX1JUU1JfVFIyMQ0KI2RlZmluZSAgRVhUSV9SVFNSX1JUMjIgRVhUSV9SVFNSX1RSMjINCiNkZWZpbmUgIEVYVElfUlRTUl9SVDIzIEVYVElfUlRTUl9UUjIzDQoNCi8qKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBFWFRJX0ZUU1IgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIEVYVElfRlRTUl9UUjBfUG9zICAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEVYVElfRlRTUl9UUjBfTXNrICAgICAgICAgICAgICAgICAgICgweDFVIDw8IEVYVElfRlRTUl9UUjBfUG9zKSAgICAgICAgLyohPCAweDAwMDAwMDAxICovDQojZGVmaW5lIEVYVElfRlRTUl9UUjAgICAgICAgICAgICAgICAgICAgICAgIEVYVElfRlRTUl9UUjBfTXNrICAgICAgICAgICAgICAgICAgLyohPCBGYWxsaW5nIHRyaWdnZXIgZXZlbnQgY29uZmlndXJhdGlvbiBiaXQgb2YgbGluZSAwICovDQojZGVmaW5lIEVYVElfRlRTUl9UUjFfUG9zICAgICAgICAgICAgICAgICAgICgxVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEVYVElfRlRTUl9UUjFfTXNrICAgICAgICAgICAgICAgICAgICgweDFVIDw8IEVYVElfRlRTUl9UUjFfUG9zKSAgICAgICAgLyohPCAweDAwMDAwMDAyICovDQojZGVmaW5lIEVYVElfRlRTUl9UUjEgICAgICAgICAgICAgICAgICAgICAgIEVYVElfRlRTUl9UUjFfTXNrICAgICAgICAgICAgICAgICAgLyohPCBGYWxsaW5nIHRyaWdnZXIgZXZlbnQgY29uZmlndXJhdGlvbiBiaXQgb2YgbGluZSAxICovDQojZGVmaW5lIEVYVElfRlRTUl9UUjJfUG9zICAgICAgICAgICAgICAgICAgICgyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEVYVElfRlRTUl9UUjJfTXNrICAgICAgICAgICAgICAgICAgICgweDFVIDw8IEVYVElfRlRTUl9UUjJfUG9zKSAgICAgICAgLyohPCAweDAwMDAwMDA0ICovDQojZGVmaW5lIEVYVElfRlRTUl9UUjIgICAgICAgICAgICAgICAgICAgICAgIEVYVElfRlRTUl9UUjJfTXNrICAgICAgICAgICAgICAgICAgLyohPCBGYWxsaW5nIHRyaWdnZXIgZXZlbnQgY29uZmlndXJhdGlvbiBiaXQgb2YgbGluZSAyICovDQojZGVmaW5lIEVYVElfRlRTUl9UUjNfUG9zICAgICAgICAgICAgICAgICAgICgzVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEVYVElfRlRTUl9UUjNfTXNrICAgICAgICAgICAgICAgICAgICgweDFVIDw8IEVYVElfRlRTUl9UUjNfUG9zKSAgICAgICAgLyohPCAweDAwMDAwMDA4ICovDQojZGVmaW5lIEVYVElfRlRTUl9UUjMgICAgICAgICAgICAgICAgICAgICAgIEVYVElfRlRTUl9UUjNfTXNrICAgICAgICAgICAgICAgICAgLyohPCBGYWxsaW5nIHRyaWdnZXIgZXZlbnQgY29uZmlndXJhdGlvbiBiaXQgb2YgbGluZSAzICovDQojZGVmaW5lIEVYVElfRlRTUl9UUjRfUG9zICAgICAgICAgICAgICAgICAgICg0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEVYVElfRlRTUl9UUjRfTXNrICAgICAgICAgICAgICAgICAgICgweDFVIDw8IEVYVElfRlRTUl9UUjRfUG9zKSAgICAgICAgLyohPCAweDAwMDAwMDEwICovDQojZGVmaW5lIEVYVElfRlRTUl9UUjQgICAgICAgICAgICAgICAgICAgICAgIEVYVElfRlRTUl9UUjRfTXNrICAgICAgICAgICAgICAgICAgLyohPCBGYWxsaW5nIHRyaWdnZXIgZXZlbnQgY29uZmlndXJhdGlvbiBiaXQgb2YgbGluZSA0ICovDQojZGVmaW5lIEVYVElfRlRTUl9UUjVfUG9zICAgICAgICAgICAgICAgICAgICg1VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEVYVElfRlRTUl9UUjVfTXNrICAgICAgICAgICAgICAgICAgICgweDFVIDw8IEVYVElfRlRTUl9UUjVfUG9zKSAgICAgICAgLyohPCAweDAwMDAwMDIwICovDQojZGVmaW5lIEVYVElfRlRTUl9UUjUgICAgICAgICAgICAgICAgICAgICAgIEVYVElfRlRTUl9UUjVfTXNrICAgICAgICAgICAgICAgICAgLyohPCBGYWxsaW5nIHRyaWdnZXIgZXZlbnQgY29uZmlndXJhdGlvbiBiaXQgb2YgbGluZSA1ICovDQojZGVmaW5lIEVYVElfRlRTUl9UUjZfUG9zICAgICAgICAgICAgICAgICAgICg2VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEVYVElfRlRTUl9UUjZfTXNrICAgICAgICAgICAgICAgICAgICgweDFVIDw8IEVYVElfRlRTUl9UUjZfUG9zKSAgICAgICAgLyohPCAweDAwMDAwMDQwICovDQojZGVmaW5lIEVYVElfRlRTUl9UUjYgICAgICAgICAgICAgICAgICAgICAgIEVYVElfRlRTUl9UUjZfTXNrICAgICAgICAgICAgICAgICAgLyohPCBGYWxsaW5nIHRyaWdnZXIgZXZlbnQgY29uZmlndXJhdGlvbiBiaXQgb2YgbGluZSA2ICovDQojZGVmaW5lIEVYVElfRlRTUl9UUjdfUG9zICAgICAgICAgICAgICAgICAgICg3VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEVYVElfRlRTUl9UUjdfTXNrICAgICAgICAgICAgICAgICAgICgweDFVIDw8IEVYVElfRlRTUl9UUjdfUG9zKSAgICAgICAgLyohPCAweDAwMDAwMDgwICovDQojZGVmaW5lIEVYVElfRlRTUl9UUjcgICAgICAgICAgICAgICAgICAgICAgIEVYVElfRlRTUl9UUjdfTXNrICAgICAgICAgICAgICAgICAgLyohPCBGYWxsaW5nIHRyaWdnZXIgZXZlbnQgY29uZmlndXJhdGlvbiBiaXQgb2YgbGluZSA3ICovDQojZGVmaW5lIEVYVElfRlRTUl9UUjhfUG9zICAgICAgICAgICAgICAgICAgICg4VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEVYVElfRlRTUl9UUjhfTXNrICAgICAgICAgICAgICAgICAgICgweDFVIDw8IEVYVElfRlRTUl9UUjhfUG9zKSAgICAgICAgLyohPCAweDAwMDAwMTAwICovDQojZGVmaW5lIEVYVElfRlRTUl9UUjggICAgICAgICAgICAgICAgICAgICAgIEVYVElfRlRTUl9UUjhfTXNrICAgICAgICAgICAgICAgICAgLyohPCBGYWxsaW5nIHRyaWdnZXIgZXZlbnQgY29uZmlndXJhdGlvbiBiaXQgb2YgbGluZSA4ICovDQojZGVmaW5lIEVYVElfRlRTUl9UUjlfUG9zICAgICAgICAgICAgICAgICAgICg5VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEVYVElfRlRTUl9UUjlfTXNrICAgICAgICAgICAgICAgICAgICgweDFVIDw8IEVYVElfRlRTUl9UUjlfUG9zKSAgICAgICAgLyohPCAweDAwMDAwMjAwICovDQojZGVmaW5lIEVYVElfRlRTUl9UUjkgICAgICAgICAgICAgICAgICAgICAgIEVYVElfRlRTUl9UUjlfTXNrICAgICAgICAgICAgICAgICAgLyohPCBGYWxsaW5nIHRyaWdnZXIgZXZlbnQgY29uZmlndXJhdGlvbiBiaXQgb2YgbGluZSA5ICovDQojZGVmaW5lIEVYVElfRlRTUl9UUjEwX1BvcyAgICAgICAgICAgICAgICAgICgxMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEVYVElfRlRTUl9UUjEwX01zayAgICAgICAgICAgICAgICAgICgweDFVIDw8IEVYVElfRlRTUl9UUjEwX1BvcykgICAgICAgLyohPCAweDAwMDAwNDAwICovDQojZGVmaW5lIEVYVElfRlRTUl9UUjEwICAgICAgICAgICAgICAgICAgICAgIEVYVElfRlRTUl9UUjEwX01zayAgICAgICAgICAgICAgICAgLyohPCBGYWxsaW5nIHRyaWdnZXIgZXZlbnQgY29uZmlndXJhdGlvbiBiaXQgb2YgbGluZSAxMCAqLw0KI2RlZmluZSBFWFRJX0ZUU1JfVFIxMV9Qb3MgICAgICAgICAgICAgICAgICAoMTFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBFWFRJX0ZUU1JfVFIxMV9Nc2sgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBFWFRJX0ZUU1JfVFIxMV9Qb3MpICAgICAgIC8qITwgMHgwMDAwMDgwMCAqLw0KI2RlZmluZSBFWFRJX0ZUU1JfVFIxMSAgICAgICAgICAgICAgICAgICAgICBFWFRJX0ZUU1JfVFIxMV9Nc2sgICAgICAgICAgICAgICAgIC8qITwgRmFsbGluZyB0cmlnZ2VyIGV2ZW50IGNvbmZpZ3VyYXRpb24gYml0IG9mIGxpbmUgMTEgKi8NCiNkZWZpbmUgRVhUSV9GVFNSX1RSMTJfUG9zICAgICAgICAgICAgICAgICAgKDEyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRVhUSV9GVFNSX1RSMTJfTXNrICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgRVhUSV9GVFNSX1RSMTJfUG9zKSAgICAgICAvKiE8IDB4MDAwMDEwMDAgKi8NCiNkZWZpbmUgRVhUSV9GVFNSX1RSMTIgICAgICAgICAgICAgICAgICAgICAgRVhUSV9GVFNSX1RSMTJfTXNrICAgICAgICAgICAgICAgICAvKiE8IEZhbGxpbmcgdHJpZ2dlciBldmVudCBjb25maWd1cmF0aW9uIGJpdCBvZiBsaW5lIDEyICovDQojZGVmaW5lIEVYVElfRlRTUl9UUjEzX1BvcyAgICAgICAgICAgICAgICAgICgxM1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEVYVElfRlRTUl9UUjEzX01zayAgICAgICAgICAgICAgICAgICgweDFVIDw8IEVYVElfRlRTUl9UUjEzX1BvcykgICAgICAgLyohPCAweDAwMDAyMDAwICovDQojZGVmaW5lIEVYVElfRlRTUl9UUjEzICAgICAgICAgICAgICAgICAgICAgIEVYVElfRlRTUl9UUjEzX01zayAgICAgICAgICAgICAgICAgLyohPCBGYWxsaW5nIHRyaWdnZXIgZXZlbnQgY29uZmlndXJhdGlvbiBiaXQgb2YgbGluZSAxMyAqLw0KI2RlZmluZSBFWFRJX0ZUU1JfVFIxNF9Qb3MgICAgICAgICAgICAgICAgICAoMTRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBFWFRJX0ZUU1JfVFIxNF9Nc2sgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBFWFRJX0ZUU1JfVFIxNF9Qb3MpICAgICAgIC8qITwgMHgwMDAwNDAwMCAqLw0KI2RlZmluZSBFWFRJX0ZUU1JfVFIxNCAgICAgICAgICAgICAgICAgICAgICBFWFRJX0ZUU1JfVFIxNF9Nc2sgICAgICAgICAgICAgICAgIC8qITwgRmFsbGluZyB0cmlnZ2VyIGV2ZW50IGNvbmZpZ3VyYXRpb24gYml0IG9mIGxpbmUgMTQgKi8NCiNkZWZpbmUgRVhUSV9GVFNSX1RSMTVfUG9zICAgICAgICAgICAgICAgICAgKDE1VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRVhUSV9GVFNSX1RSMTVfTXNrICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgRVhUSV9GVFNSX1RSMTVfUG9zKSAgICAgICAvKiE8IDB4MDAwMDgwMDAgKi8NCiNkZWZpbmUgRVhUSV9GVFNSX1RSMTUgICAgICAgICAgICAgICAgICAgICAgRVhUSV9GVFNSX1RSMTVfTXNrICAgICAgICAgICAgICAgICAvKiE8IEZhbGxpbmcgdHJpZ2dlciBldmVudCBjb25maWd1cmF0aW9uIGJpdCBvZiBsaW5lIDE1ICovDQojZGVmaW5lIEVYVElfRlRTUl9UUjE2X1BvcyAgICAgICAgICAgICAgICAgICgxNlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEVYVElfRlRTUl9UUjE2X01zayAgICAgICAgICAgICAgICAgICgweDFVIDw8IEVYVElfRlRTUl9UUjE2X1BvcykgICAgICAgLyohPCAweDAwMDEwMDAwICovDQojZGVmaW5lIEVYVElfRlRTUl9UUjE2ICAgICAgICAgICAgICAgICAgICAgIEVYVElfRlRTUl9UUjE2X01zayAgICAgICAgICAgICAgICAgLyohPCBGYWxsaW5nIHRyaWdnZXIgZXZlbnQgY29uZmlndXJhdGlvbiBiaXQgb2YgbGluZSAxNiAqLw0KI2RlZmluZSBFWFRJX0ZUU1JfVFIxN19Qb3MgICAgICAgICAgICAgICAgICAoMTdVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBFWFRJX0ZUU1JfVFIxN19Nc2sgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBFWFRJX0ZUU1JfVFIxN19Qb3MpICAgICAgIC8qITwgMHgwMDAyMDAwMCAqLw0KI2RlZmluZSBFWFRJX0ZUU1JfVFIxNyAgICAgICAgICAgICAgICAgICAgICBFWFRJX0ZUU1JfVFIxN19Nc2sgICAgICAgICAgICAgICAgIC8qITwgRmFsbGluZyB0cmlnZ2VyIGV2ZW50IGNvbmZpZ3VyYXRpb24gYml0IG9mIGxpbmUgMTcgKi8NCiNkZWZpbmUgRVhUSV9GVFNSX1RSMThfUG9zICAgICAgICAgICAgICAgICAgKDE4VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRVhUSV9GVFNSX1RSMThfTXNrICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgRVhUSV9GVFNSX1RSMThfUG9zKSAgICAgICAvKiE8IDB4MDAwNDAwMDAgKi8NCiNkZWZpbmUgRVhUSV9GVFNSX1RSMTggICAgICAgICAgICAgICAgICAgICAgRVhUSV9GVFNSX1RSMThfTXNrICAgICAgICAgICAgICAgICAvKiE8IEZhbGxpbmcgdHJpZ2dlciBldmVudCBjb25maWd1cmF0aW9uIGJpdCBvZiBsaW5lIDE4ICovDQojZGVmaW5lIEVYVElfRlRTUl9UUjE5X1BvcyAgICAgICAgICAgICAgICAgICgxOVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEVYVElfRlRTUl9UUjE5X01zayAgICAgICAgICAgICAgICAgICgweDFVIDw8IEVYVElfRlRTUl9UUjE5X1BvcykgICAgICAgLyohPCAweDAwMDgwMDAwICovDQojZGVmaW5lIEVYVElfRlRTUl9UUjE5ICAgICAgICAgICAgICAgICAgICAgIEVYVElfRlRTUl9UUjE5X01zayAgICAgICAgICAgICAgICAgLyohPCBGYWxsaW5nIHRyaWdnZXIgZXZlbnQgY29uZmlndXJhdGlvbiBiaXQgb2YgbGluZSAxOSAqLw0KI2RlZmluZSBFWFRJX0ZUU1JfVFIyMF9Qb3MgICAgICAgICAgICAgICAgICAoMjBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBFWFRJX0ZUU1JfVFIyMF9Nc2sgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBFWFRJX0ZUU1JfVFIyMF9Qb3MpICAgICAgIC8qITwgMHgwMDEwMDAwMCAqLw0KI2RlZmluZSBFWFRJX0ZUU1JfVFIyMCAgICAgICAgICAgICAgICAgICAgICBFWFRJX0ZUU1JfVFIyMF9Nc2sgICAgICAgICAgICAgICAgIC8qITwgRmFsbGluZyB0cmlnZ2VyIGV2ZW50IGNvbmZpZ3VyYXRpb24gYml0IG9mIGxpbmUgMjAgKi8NCiNkZWZpbmUgRVhUSV9GVFNSX1RSMjFfUG9zICAgICAgICAgICAgICAgICAgKDIxVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRVhUSV9GVFNSX1RSMjFfTXNrICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgRVhUSV9GVFNSX1RSMjFfUG9zKSAgICAgICAvKiE8IDB4MDAyMDAwMDAgKi8NCiNkZWZpbmUgRVhUSV9GVFNSX1RSMjEgICAgICAgICAgICAgICAgICAgICAgRVhUSV9GVFNSX1RSMjFfTXNrICAgICAgICAgICAgICAgICAvKiE8IEZhbGxpbmcgdHJpZ2dlciBldmVudCBjb25maWd1cmF0aW9uIGJpdCBvZiBsaW5lIDIxICovDQojZGVmaW5lIEVYVElfRlRTUl9UUjIyX1BvcyAgICAgICAgICAgICAgICAgICgyMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEVYVElfRlRTUl9UUjIyX01zayAgICAgICAgICAgICAgICAgICgweDFVIDw8IEVYVElfRlRTUl9UUjIyX1BvcykgICAgICAgLyohPCAweDAwNDAwMDAwICovDQojZGVmaW5lIEVYVElfRlRTUl9UUjIyICAgICAgICAgICAgICAgICAgICAgIEVYVElfRlRTUl9UUjIyX01zayAgICAgICAgICAgICAgICAgLyohPCBGYWxsaW5nIHRyaWdnZXIgZXZlbnQgY29uZmlndXJhdGlvbiBiaXQgb2YgbGluZSAyMiAqLw0KI2RlZmluZSBFWFRJX0ZUU1JfVFIyM19Qb3MgICAgICAgICAgICAgICAgICAoMjNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBFWFRJX0ZUU1JfVFIyM19Nc2sgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBFWFRJX0ZUU1JfVFIyM19Qb3MpICAgICAgIC8qITwgMHgwMDgwMDAwMCAqLw0KI2RlZmluZSBFWFRJX0ZUU1JfVFIyMyAgICAgICAgICAgICAgICAgICAgICBFWFRJX0ZUU1JfVFIyM19Nc2sgICAgICAgICAgICAgICAgIC8qITwgRmFsbGluZyB0cmlnZ2VyIGV2ZW50IGNvbmZpZ3VyYXRpb24gYml0IG9mIGxpbmUgMjMgKi8NCg0KLyogUmVmZXJlbmNlcyBEZWZpbmVzICovDQojZGVmaW5lICBFWFRJX0ZUU1JfRlQwIEVYVElfRlRTUl9UUjANCiNkZWZpbmUgIEVYVElfRlRTUl9GVDEgRVhUSV9GVFNSX1RSMQ0KI2RlZmluZSAgRVhUSV9GVFNSX0ZUMiBFWFRJX0ZUU1JfVFIyDQojZGVmaW5lICBFWFRJX0ZUU1JfRlQzIEVYVElfRlRTUl9UUjMNCiNkZWZpbmUgIEVYVElfRlRTUl9GVDQgRVhUSV9GVFNSX1RSNA0KI2RlZmluZSAgRVhUSV9GVFNSX0ZUNSBFWFRJX0ZUU1JfVFI1DQojZGVmaW5lICBFWFRJX0ZUU1JfRlQ2IEVYVElfRlRTUl9UUjYNCiNkZWZpbmUgIEVYVElfRlRTUl9GVDcgRVhUSV9GVFNSX1RSNw0KI2RlZmluZSAgRVhUSV9GVFNSX0ZUOCBFWFRJX0ZUU1JfVFI4DQojZGVmaW5lICBFWFRJX0ZUU1JfRlQ5IEVYVElfRlRTUl9UUjkNCiNkZWZpbmUgIEVYVElfRlRTUl9GVDEwIEVYVElfRlRTUl9UUjEwDQojZGVmaW5lICBFWFRJX0ZUU1JfRlQxMSBFWFRJX0ZUU1JfVFIxMQ0KI2RlZmluZSAgRVhUSV9GVFNSX0ZUMTIgRVhUSV9GVFNSX1RSMTINCiNkZWZpbmUgIEVYVElfRlRTUl9GVDEzIEVYVElfRlRTUl9UUjEzDQojZGVmaW5lICBFWFRJX0ZUU1JfRlQxNCBFWFRJX0ZUU1JfVFIxNA0KI2RlZmluZSAgRVhUSV9GVFNSX0ZUMTUgRVhUSV9GVFNSX1RSMTUNCiNkZWZpbmUgIEVYVElfRlRTUl9GVDE2IEVYVElfRlRTUl9UUjE2DQojZGVmaW5lICBFWFRJX0ZUU1JfRlQxNyBFWFRJX0ZUU1JfVFIxNw0KI2RlZmluZSAgRVhUSV9GVFNSX0ZUMTggRVhUSV9GVFNSX1RSMTgNCiNkZWZpbmUgIEVYVElfRlRTUl9GVDE5IEVYVElfRlRTUl9UUjE5DQojZGVmaW5lICBFWFRJX0ZUU1JfRlQyMCBFWFRJX0ZUU1JfVFIyMA0KI2RlZmluZSAgRVhUSV9GVFNSX0ZUMjEgRVhUSV9GVFNSX1RSMjENCiNkZWZpbmUgIEVYVElfRlRTUl9GVDIyIEVYVElfRlRTUl9UUjIyDQojZGVmaW5lICBFWFRJX0ZUU1JfRlQyMyBFWFRJX0ZUU1JfVFIyMw0KDQovKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgRVhUSV9TV0lFUiByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBFWFRJX1NXSUVSX1NXSUVSMF9Qb3MgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBFWFRJX1NXSUVSX1NXSUVSMF9Nc2sgICAgICAgICAgICAgICAoMHgxVSA8PCBFWFRJX1NXSUVSX1NXSUVSMF9Qb3MpICAgIC8qITwgMHgwMDAwMDAwMSAqLw0KI2RlZmluZSBFWFRJX1NXSUVSX1NXSUVSMCAgICAgICAgICAgICAgICAgICBFWFRJX1NXSUVSX1NXSUVSMF9Nc2sgICAgICAgICAgICAgIC8qITwgU29mdHdhcmUgSW50ZXJydXB0IG9uIGxpbmUgMCAqLw0KI2RlZmluZSBFWFRJX1NXSUVSX1NXSUVSMV9Qb3MgICAgICAgICAgICAgICAoMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBFWFRJX1NXSUVSX1NXSUVSMV9Nc2sgICAgICAgICAgICAgICAoMHgxVSA8PCBFWFRJX1NXSUVSX1NXSUVSMV9Qb3MpICAgIC8qITwgMHgwMDAwMDAwMiAqLw0KI2RlZmluZSBFWFRJX1NXSUVSX1NXSUVSMSAgICAgICAgICAgICAgICAgICBFWFRJX1NXSUVSX1NXSUVSMV9Nc2sgICAgICAgICAgICAgIC8qITwgU29mdHdhcmUgSW50ZXJydXB0IG9uIGxpbmUgMSAqLw0KI2RlZmluZSBFWFRJX1NXSUVSX1NXSUVSMl9Qb3MgICAgICAgICAgICAgICAoMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBFWFRJX1NXSUVSX1NXSUVSMl9Nc2sgICAgICAgICAgICAgICAoMHgxVSA8PCBFWFRJX1NXSUVSX1NXSUVSMl9Qb3MpICAgIC8qITwgMHgwMDAwMDAwNCAqLw0KI2RlZmluZSBFWFRJX1NXSUVSX1NXSUVSMiAgICAgICAgICAgICAgICAgICBFWFRJX1NXSUVSX1NXSUVSMl9Nc2sgICAgICAgICAgICAgIC8qITwgU29mdHdhcmUgSW50ZXJydXB0IG9uIGxpbmUgMiAqLw0KI2RlZmluZSBFWFRJX1NXSUVSX1NXSUVSM19Qb3MgICAgICAgICAgICAgICAoM1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBFWFRJX1NXSUVSX1NXSUVSM19Nc2sgICAgICAgICAgICAgICAoMHgxVSA8PCBFWFRJX1NXSUVSX1NXSUVSM19Qb3MpICAgIC8qITwgMHgwMDAwMDAwOCAqLw0KI2RlZmluZSBFWFRJX1NXSUVSX1NXSUVSMyAgICAgICAgICAgICAgICAgICBFWFRJX1NXSUVSX1NXSUVSM19Nc2sgICAgICAgICAgICAgIC8qITwgU29mdHdhcmUgSW50ZXJydXB0IG9uIGxpbmUgMyAqLw0KI2RlZmluZSBFWFRJX1NXSUVSX1NXSUVSNF9Qb3MgICAgICAgICAgICAgICAoNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBFWFRJX1NXSUVSX1NXSUVSNF9Nc2sgICAgICAgICAgICAgICAoMHgxVSA8PCBFWFRJX1NXSUVSX1NXSUVSNF9Qb3MpICAgIC8qITwgMHgwMDAwMDAxMCAqLw0KI2RlZmluZSBFWFRJX1NXSUVSX1NXSUVSNCAgICAgICAgICAgICAgICAgICBFWFRJX1NXSUVSX1NXSUVSNF9Nc2sgICAgICAgICAgICAgIC8qITwgU29mdHdhcmUgSW50ZXJydXB0IG9uIGxpbmUgNCAqLw0KI2RlZmluZSBFWFRJX1NXSUVSX1NXSUVSNV9Qb3MgICAgICAgICAgICAgICAoNVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBFWFRJX1NXSUVSX1NXSUVSNV9Nc2sgICAgICAgICAgICAgICAoMHgxVSA8PCBFWFRJX1NXSUVSX1NXSUVSNV9Qb3MpICAgIC8qITwgMHgwMDAwMDAyMCAqLw0KI2RlZmluZSBFWFRJX1NXSUVSX1NXSUVSNSAgICAgICAgICAgICAgICAgICBFWFRJX1NXSUVSX1NXSUVSNV9Nc2sgICAgICAgICAgICAgIC8qITwgU29mdHdhcmUgSW50ZXJydXB0IG9uIGxpbmUgNSAqLw0KI2RlZmluZSBFWFRJX1NXSUVSX1NXSUVSNl9Qb3MgICAgICAgICAgICAgICAoNlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBFWFRJX1NXSUVSX1NXSUVSNl9Nc2sgICAgICAgICAgICAgICAoMHgxVSA8PCBFWFRJX1NXSUVSX1NXSUVSNl9Qb3MpICAgIC8qITwgMHgwMDAwMDA0MCAqLw0KI2RlZmluZSBFWFRJX1NXSUVSX1NXSUVSNiAgICAgICAgICAgICAgICAgICBFWFRJX1NXSUVSX1NXSUVSNl9Nc2sgICAgICAgICAgICAgIC8qITwgU29mdHdhcmUgSW50ZXJydXB0IG9uIGxpbmUgNiAqLw0KI2RlZmluZSBFWFRJX1NXSUVSX1NXSUVSN19Qb3MgICAgICAgICAgICAgICAoN1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBFWFRJX1NXSUVSX1NXSUVSN19Nc2sgICAgICAgICAgICAgICAoMHgxVSA8PCBFWFRJX1NXSUVSX1NXSUVSN19Qb3MpICAgIC8qITwgMHgwMDAwMDA4MCAqLw0KI2RlZmluZSBFWFRJX1NXSUVSX1NXSUVSNyAgICAgICAgICAgICAgICAgICBFWFRJX1NXSUVSX1NXSUVSN19Nc2sgICAgICAgICAgICAgIC8qITwgU29mdHdhcmUgSW50ZXJydXB0IG9uIGxpbmUgNyAqLw0KI2RlZmluZSBFWFRJX1NXSUVSX1NXSUVSOF9Qb3MgICAgICAgICAgICAgICAoOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBFWFRJX1NXSUVSX1NXSUVSOF9Nc2sgICAgICAgICAgICAgICAoMHgxVSA8PCBFWFRJX1NXSUVSX1NXSUVSOF9Qb3MpICAgIC8qITwgMHgwMDAwMDEwMCAqLw0KI2RlZmluZSBFWFRJX1NXSUVSX1NXSUVSOCAgICAgICAgICAgICAgICAgICBFWFRJX1NXSUVSX1NXSUVSOF9Nc2sgICAgICAgICAgICAgIC8qITwgU29mdHdhcmUgSW50ZXJydXB0IG9uIGxpbmUgOCAqLw0KI2RlZmluZSBFWFRJX1NXSUVSX1NXSUVSOV9Qb3MgICAgICAgICAgICAgICAoOVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBFWFRJX1NXSUVSX1NXSUVSOV9Nc2sgICAgICAgICAgICAgICAoMHgxVSA8PCBFWFRJX1NXSUVSX1NXSUVSOV9Qb3MpICAgIC8qITwgMHgwMDAwMDIwMCAqLw0KI2RlZmluZSBFWFRJX1NXSUVSX1NXSUVSOSAgICAgICAgICAgICAgICAgICBFWFRJX1NXSUVSX1NXSUVSOV9Nc2sgICAgICAgICAgICAgIC8qITwgU29mdHdhcmUgSW50ZXJydXB0IG9uIGxpbmUgOSAqLw0KI2RlZmluZSBFWFRJX1NXSUVSX1NXSUVSMTBfUG9zICAgICAgICAgICAgICAoMTBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBFWFRJX1NXSUVSX1NXSUVSMTBfTXNrICAgICAgICAgICAgICAoMHgxVSA8PCBFWFRJX1NXSUVSX1NXSUVSMTBfUG9zKSAgIC8qITwgMHgwMDAwMDQwMCAqLw0KI2RlZmluZSBFWFRJX1NXSUVSX1NXSUVSMTAgICAgICAgICAgICAgICAgICBFWFRJX1NXSUVSX1NXSUVSMTBfTXNrICAgICAgICAgICAgIC8qITwgU29mdHdhcmUgSW50ZXJydXB0IG9uIGxpbmUgMTAgKi8NCiNkZWZpbmUgRVhUSV9TV0lFUl9TV0lFUjExX1BvcyAgICAgICAgICAgICAgKDExVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRVhUSV9TV0lFUl9TV0lFUjExX01zayAgICAgICAgICAgICAgKDB4MVUgPDwgRVhUSV9TV0lFUl9TV0lFUjExX1BvcykgICAvKiE8IDB4MDAwMDA4MDAgKi8NCiNkZWZpbmUgRVhUSV9TV0lFUl9TV0lFUjExICAgICAgICAgICAgICAgICAgRVhUSV9TV0lFUl9TV0lFUjExX01zayAgICAgICAgICAgICAvKiE8IFNvZnR3YXJlIEludGVycnVwdCBvbiBsaW5lIDExICovDQojZGVmaW5lIEVYVElfU1dJRVJfU1dJRVIxMl9Qb3MgICAgICAgICAgICAgICgxMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEVYVElfU1dJRVJfU1dJRVIxMl9Nc2sgICAgICAgICAgICAgICgweDFVIDw8IEVYVElfU1dJRVJfU1dJRVIxMl9Qb3MpICAgLyohPCAweDAwMDAxMDAwICovDQojZGVmaW5lIEVYVElfU1dJRVJfU1dJRVIxMiAgICAgICAgICAgICAgICAgIEVYVElfU1dJRVJfU1dJRVIxMl9Nc2sgICAgICAgICAgICAgLyohPCBTb2Z0d2FyZSBJbnRlcnJ1cHQgb24gbGluZSAxMiAqLw0KI2RlZmluZSBFWFRJX1NXSUVSX1NXSUVSMTNfUG9zICAgICAgICAgICAgICAoMTNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBFWFRJX1NXSUVSX1NXSUVSMTNfTXNrICAgICAgICAgICAgICAoMHgxVSA8PCBFWFRJX1NXSUVSX1NXSUVSMTNfUG9zKSAgIC8qITwgMHgwMDAwMjAwMCAqLw0KI2RlZmluZSBFWFRJX1NXSUVSX1NXSUVSMTMgICAgICAgICAgICAgICAgICBFWFRJX1NXSUVSX1NXSUVSMTNfTXNrICAgICAgICAgICAgIC8qITwgU29mdHdhcmUgSW50ZXJydXB0IG9uIGxpbmUgMTMgKi8NCiNkZWZpbmUgRVhUSV9TV0lFUl9TV0lFUjE0X1BvcyAgICAgICAgICAgICAgKDE0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRVhUSV9TV0lFUl9TV0lFUjE0X01zayAgICAgICAgICAgICAgKDB4MVUgPDwgRVhUSV9TV0lFUl9TV0lFUjE0X1BvcykgICAvKiE8IDB4MDAwMDQwMDAgKi8NCiNkZWZpbmUgRVhUSV9TV0lFUl9TV0lFUjE0ICAgICAgICAgICAgICAgICAgRVhUSV9TV0lFUl9TV0lFUjE0X01zayAgICAgICAgICAgICAvKiE8IFNvZnR3YXJlIEludGVycnVwdCBvbiBsaW5lIDE0ICovDQojZGVmaW5lIEVYVElfU1dJRVJfU1dJRVIxNV9Qb3MgICAgICAgICAgICAgICgxNVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEVYVElfU1dJRVJfU1dJRVIxNV9Nc2sgICAgICAgICAgICAgICgweDFVIDw8IEVYVElfU1dJRVJfU1dJRVIxNV9Qb3MpICAgLyohPCAweDAwMDA4MDAwICovDQojZGVmaW5lIEVYVElfU1dJRVJfU1dJRVIxNSAgICAgICAgICAgICAgICAgIEVYVElfU1dJRVJfU1dJRVIxNV9Nc2sgICAgICAgICAgICAgLyohPCBTb2Z0d2FyZSBJbnRlcnJ1cHQgb24gbGluZSAxNSAqLw0KI2RlZmluZSBFWFRJX1NXSUVSX1NXSUVSMTZfUG9zICAgICAgICAgICAgICAoMTZVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBFWFRJX1NXSUVSX1NXSUVSMTZfTXNrICAgICAgICAgICAgICAoMHgxVSA8PCBFWFRJX1NXSUVSX1NXSUVSMTZfUG9zKSAgIC8qITwgMHgwMDAxMDAwMCAqLw0KI2RlZmluZSBFWFRJX1NXSUVSX1NXSUVSMTYgICAgICAgICAgICAgICAgICBFWFRJX1NXSUVSX1NXSUVSMTZfTXNrICAgICAgICAgICAgIC8qITwgU29mdHdhcmUgSW50ZXJydXB0IG9uIGxpbmUgMTYgKi8NCiNkZWZpbmUgRVhUSV9TV0lFUl9TV0lFUjE3X1BvcyAgICAgICAgICAgICAgKDE3VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRVhUSV9TV0lFUl9TV0lFUjE3X01zayAgICAgICAgICAgICAgKDB4MVUgPDwgRVhUSV9TV0lFUl9TV0lFUjE3X1BvcykgICAvKiE8IDB4MDAwMjAwMDAgKi8NCiNkZWZpbmUgRVhUSV9TV0lFUl9TV0lFUjE3ICAgICAgICAgICAgICAgICAgRVhUSV9TV0lFUl9TV0lFUjE3X01zayAgICAgICAgICAgICAvKiE8IFNvZnR3YXJlIEludGVycnVwdCBvbiBsaW5lIDE3ICovDQojZGVmaW5lIEVYVElfU1dJRVJfU1dJRVIxOF9Qb3MgICAgICAgICAgICAgICgxOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEVYVElfU1dJRVJfU1dJRVIxOF9Nc2sgICAgICAgICAgICAgICgweDFVIDw8IEVYVElfU1dJRVJfU1dJRVIxOF9Qb3MpICAgLyohPCAweDAwMDQwMDAwICovDQojZGVmaW5lIEVYVElfU1dJRVJfU1dJRVIxOCAgICAgICAgICAgICAgICAgIEVYVElfU1dJRVJfU1dJRVIxOF9Nc2sgICAgICAgICAgICAgLyohPCBTb2Z0d2FyZSBJbnRlcnJ1cHQgb24gbGluZSAxOCAqLw0KI2RlZmluZSBFWFRJX1NXSUVSX1NXSUVSMTlfUG9zICAgICAgICAgICAgICAoMTlVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBFWFRJX1NXSUVSX1NXSUVSMTlfTXNrICAgICAgICAgICAgICAoMHgxVSA8PCBFWFRJX1NXSUVSX1NXSUVSMTlfUG9zKSAgIC8qITwgMHgwMDA4MDAwMCAqLw0KI2RlZmluZSBFWFRJX1NXSUVSX1NXSUVSMTkgICAgICAgICAgICAgICAgICBFWFRJX1NXSUVSX1NXSUVSMTlfTXNrICAgICAgICAgICAgIC8qITwgU29mdHdhcmUgSW50ZXJydXB0IG9uIGxpbmUgMTkgKi8NCiNkZWZpbmUgRVhUSV9TV0lFUl9TV0lFUjIwX1BvcyAgICAgICAgICAgICAgKDIwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRVhUSV9TV0lFUl9TV0lFUjIwX01zayAgICAgICAgICAgICAgKDB4MVUgPDwgRVhUSV9TV0lFUl9TV0lFUjIwX1BvcykgICAvKiE8IDB4MDAxMDAwMDAgKi8NCiNkZWZpbmUgRVhUSV9TV0lFUl9TV0lFUjIwICAgICAgICAgICAgICAgICAgRVhUSV9TV0lFUl9TV0lFUjIwX01zayAgICAgICAgICAgICAvKiE8IFNvZnR3YXJlIEludGVycnVwdCBvbiBsaW5lIDIwICovDQojZGVmaW5lIEVYVElfU1dJRVJfU1dJRVIyMV9Qb3MgICAgICAgICAgICAgICgyMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEVYVElfU1dJRVJfU1dJRVIyMV9Nc2sgICAgICAgICAgICAgICgweDFVIDw8IEVYVElfU1dJRVJfU1dJRVIyMV9Qb3MpICAgLyohPCAweDAwMjAwMDAwICovDQojZGVmaW5lIEVYVElfU1dJRVJfU1dJRVIyMSAgICAgICAgICAgICAgICAgIEVYVElfU1dJRVJfU1dJRVIyMV9Nc2sgICAgICAgICAgICAgLyohPCBTb2Z0d2FyZSBJbnRlcnJ1cHQgb24gbGluZSAyMSAqLw0KI2RlZmluZSBFWFRJX1NXSUVSX1NXSUVSMjJfUG9zICAgICAgICAgICAgICAoMjJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBFWFRJX1NXSUVSX1NXSUVSMjJfTXNrICAgICAgICAgICAgICAoMHgxVSA8PCBFWFRJX1NXSUVSX1NXSUVSMjJfUG9zKSAgIC8qITwgMHgwMDQwMDAwMCAqLw0KI2RlZmluZSBFWFRJX1NXSUVSX1NXSUVSMjIgICAgICAgICAgICAgICAgICBFWFRJX1NXSUVSX1NXSUVSMjJfTXNrICAgICAgICAgICAgIC8qITwgU29mdHdhcmUgSW50ZXJydXB0IG9uIGxpbmUgMjIgKi8NCiNkZWZpbmUgRVhUSV9TV0lFUl9TV0lFUjIzX1BvcyAgICAgICAgICAgICAgKDIzVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRVhUSV9TV0lFUl9TV0lFUjIzX01zayAgICAgICAgICAgICAgKDB4MVUgPDwgRVhUSV9TV0lFUl9TV0lFUjIzX1BvcykgICAvKiE8IDB4MDA4MDAwMDAgKi8NCiNkZWZpbmUgRVhUSV9TV0lFUl9TV0lFUjIzICAgICAgICAgICAgICAgICAgRVhUSV9TV0lFUl9TV0lFUjIzX01zayAgICAgICAgICAgICAvKiE8IFNvZnR3YXJlIEludGVycnVwdCBvbiBsaW5lIDIzICovDQoNCi8qIFJlZmVyZW5jZXMgRGVmaW5lcyAqLw0KI2RlZmluZSAgRVhUSV9TV0lFUl9TV0kwIEVYVElfU1dJRVJfU1dJRVIwDQojZGVmaW5lICBFWFRJX1NXSUVSX1NXSTEgRVhUSV9TV0lFUl9TV0lFUjENCiNkZWZpbmUgIEVYVElfU1dJRVJfU1dJMiBFWFRJX1NXSUVSX1NXSUVSMg0KI2RlZmluZSAgRVhUSV9TV0lFUl9TV0kzIEVYVElfU1dJRVJfU1dJRVIzDQojZGVmaW5lICBFWFRJX1NXSUVSX1NXSTQgRVhUSV9TV0lFUl9TV0lFUjQNCiNkZWZpbmUgIEVYVElfU1dJRVJfU1dJNSBFWFRJX1NXSUVSX1NXSUVSNQ0KI2RlZmluZSAgRVhUSV9TV0lFUl9TV0k2IEVYVElfU1dJRVJfU1dJRVI2DQojZGVmaW5lICBFWFRJX1NXSUVSX1NXSTcgRVhUSV9TV0lFUl9TV0lFUjcNCiNkZWZpbmUgIEVYVElfU1dJRVJfU1dJOCBFWFRJX1NXSUVSX1NXSUVSOA0KI2RlZmluZSAgRVhUSV9TV0lFUl9TV0k5IEVYVElfU1dJRVJfU1dJRVI5DQojZGVmaW5lICBFWFRJX1NXSUVSX1NXSTEwIEVYVElfU1dJRVJfU1dJRVIxMA0KI2RlZmluZSAgRVhUSV9TV0lFUl9TV0kxMSBFWFRJX1NXSUVSX1NXSUVSMTENCiNkZWZpbmUgIEVYVElfU1dJRVJfU1dJMTIgRVhUSV9TV0lFUl9TV0lFUjEyDQojZGVmaW5lICBFWFRJX1NXSUVSX1NXSTEzIEVYVElfU1dJRVJfU1dJRVIxMw0KI2RlZmluZSAgRVhUSV9TV0lFUl9TV0kxNCBFWFRJX1NXSUVSX1NXSUVSMTQNCiNkZWZpbmUgIEVYVElfU1dJRVJfU1dJMTUgRVhUSV9TV0lFUl9TV0lFUjE1DQojZGVmaW5lICBFWFRJX1NXSUVSX1NXSTE2IEVYVElfU1dJRVJfU1dJRVIxNg0KI2RlZmluZSAgRVhUSV9TV0lFUl9TV0kxNyBFWFRJX1NXSUVSX1NXSUVSMTcNCiNkZWZpbmUgIEVYVElfU1dJRVJfU1dJMTggRVhUSV9TV0lFUl9TV0lFUjE4DQojZGVmaW5lICBFWFRJX1NXSUVSX1NXSTE5IEVYVElfU1dJRVJfU1dJRVIxOQ0KI2RlZmluZSAgRVhUSV9TV0lFUl9TV0kyMCBFWFRJX1NXSUVSX1NXSUVSMjANCiNkZWZpbmUgIEVYVElfU1dJRVJfU1dJMjEgRVhUSV9TV0lFUl9TV0lFUjIxDQojZGVmaW5lICBFWFRJX1NXSUVSX1NXSTIyIEVYVElfU1dJRVJfU1dJRVIyMg0KI2RlZmluZSAgRVhUSV9TV0lFUl9TV0kyMyBFWFRJX1NXSUVSX1NXSUVSMjMNCg0KLyoqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBFWFRJX1BSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgRVhUSV9QUl9QUjBfUG9zICAgICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRVhUSV9QUl9QUjBfTXNrICAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgRVhUSV9QUl9QUjBfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDAwMDEgKi8NCiNkZWZpbmUgRVhUSV9QUl9QUjAgICAgICAgICAgICAgICAgICAgICAgICAgRVhUSV9QUl9QUjBfTXNrICAgICAgICAgICAgICAgICAgICAvKiE8IFBlbmRpbmcgYml0IGZvciBsaW5lIDAgKi8NCiNkZWZpbmUgRVhUSV9QUl9QUjFfUG9zICAgICAgICAgICAgICAgICAgICAgKDFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRVhUSV9QUl9QUjFfTXNrICAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgRVhUSV9QUl9QUjFfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDAwMDIgKi8NCiNkZWZpbmUgRVhUSV9QUl9QUjEgICAgICAgICAgICAgICAgICAgICAgICAgRVhUSV9QUl9QUjFfTXNrICAgICAgICAgICAgICAgICAgICAvKiE8IFBlbmRpbmcgYml0IGZvciBsaW5lIDEgKi8NCiNkZWZpbmUgRVhUSV9QUl9QUjJfUG9zICAgICAgICAgICAgICAgICAgICAgKDJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRVhUSV9QUl9QUjJfTXNrICAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgRVhUSV9QUl9QUjJfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDAwMDQgKi8NCiNkZWZpbmUgRVhUSV9QUl9QUjIgICAgICAgICAgICAgICAgICAgICAgICAgRVhUSV9QUl9QUjJfTXNrICAgICAgICAgICAgICAgICAgICAvKiE8IFBlbmRpbmcgYml0IGZvciBsaW5lIDIgKi8NCiNkZWZpbmUgRVhUSV9QUl9QUjNfUG9zICAgICAgICAgICAgICAgICAgICAgKDNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRVhUSV9QUl9QUjNfTXNrICAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgRVhUSV9QUl9QUjNfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDAwMDggKi8NCiNkZWZpbmUgRVhUSV9QUl9QUjMgICAgICAgICAgICAgICAgICAgICAgICAgRVhUSV9QUl9QUjNfTXNrICAgICAgICAgICAgICAgICAgICAvKiE8IFBlbmRpbmcgYml0IGZvciBsaW5lIDMgKi8NCiNkZWZpbmUgRVhUSV9QUl9QUjRfUG9zICAgICAgICAgICAgICAgICAgICAgKDRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRVhUSV9QUl9QUjRfTXNrICAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgRVhUSV9QUl9QUjRfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDAwMTAgKi8NCiNkZWZpbmUgRVhUSV9QUl9QUjQgICAgICAgICAgICAgICAgICAgICAgICAgRVhUSV9QUl9QUjRfTXNrICAgICAgICAgICAgICAgICAgICAvKiE8IFBlbmRpbmcgYml0IGZvciBsaW5lIDQgKi8NCiNkZWZpbmUgRVhUSV9QUl9QUjVfUG9zICAgICAgICAgICAgICAgICAgICAgKDVVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRVhUSV9QUl9QUjVfTXNrICAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgRVhUSV9QUl9QUjVfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDAwMjAgKi8NCiNkZWZpbmUgRVhUSV9QUl9QUjUgICAgICAgICAgICAgICAgICAgICAgICAgRVhUSV9QUl9QUjVfTXNrICAgICAgICAgICAgICAgICAgICAvKiE8IFBlbmRpbmcgYml0IGZvciBsaW5lIDUgKi8NCiNkZWZpbmUgRVhUSV9QUl9QUjZfUG9zICAgICAgICAgICAgICAgICAgICAgKDZVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRVhUSV9QUl9QUjZfTXNrICAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgRVhUSV9QUl9QUjZfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDAwNDAgKi8NCiNkZWZpbmUgRVhUSV9QUl9QUjYgICAgICAgICAgICAgICAgICAgICAgICAgRVhUSV9QUl9QUjZfTXNrICAgICAgICAgICAgICAgICAgICAvKiE8IFBlbmRpbmcgYml0IGZvciBsaW5lIDYgKi8NCiNkZWZpbmUgRVhUSV9QUl9QUjdfUG9zICAgICAgICAgICAgICAgICAgICAgKDdVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRVhUSV9QUl9QUjdfTXNrICAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgRVhUSV9QUl9QUjdfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDAwODAgKi8NCiNkZWZpbmUgRVhUSV9QUl9QUjcgICAgICAgICAgICAgICAgICAgICAgICAgRVhUSV9QUl9QUjdfTXNrICAgICAgICAgICAgICAgICAgICAvKiE8IFBlbmRpbmcgYml0IGZvciBsaW5lIDcgKi8NCiNkZWZpbmUgRVhUSV9QUl9QUjhfUG9zICAgICAgICAgICAgICAgICAgICAgKDhVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRVhUSV9QUl9QUjhfTXNrICAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgRVhUSV9QUl9QUjhfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDAxMDAgKi8NCiNkZWZpbmUgRVhUSV9QUl9QUjggICAgICAgICAgICAgICAgICAgICAgICAgRVhUSV9QUl9QUjhfTXNrICAgICAgICAgICAgICAgICAgICAvKiE8IFBlbmRpbmcgYml0IGZvciBsaW5lIDggKi8NCiNkZWZpbmUgRVhUSV9QUl9QUjlfUG9zICAgICAgICAgICAgICAgICAgICAgKDlVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRVhUSV9QUl9QUjlfTXNrICAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgRVhUSV9QUl9QUjlfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDAyMDAgKi8NCiNkZWZpbmUgRVhUSV9QUl9QUjkgICAgICAgICAgICAgICAgICAgICAgICAgRVhUSV9QUl9QUjlfTXNrICAgICAgICAgICAgICAgICAgICAvKiE8IFBlbmRpbmcgYml0IGZvciBsaW5lIDkgKi8NCiNkZWZpbmUgRVhUSV9QUl9QUjEwX1BvcyAgICAgICAgICAgICAgICAgICAgKDEwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRVhUSV9QUl9QUjEwX01zayAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgRVhUSV9QUl9QUjEwX1BvcykgICAgICAgICAvKiE8IDB4MDAwMDA0MDAgKi8NCiNkZWZpbmUgRVhUSV9QUl9QUjEwICAgICAgICAgICAgICAgICAgICAgICAgRVhUSV9QUl9QUjEwX01zayAgICAgICAgICAgICAgICAgICAvKiE8IFBlbmRpbmcgYml0IGZvciBsaW5lIDEwICovDQojZGVmaW5lIEVYVElfUFJfUFIxMV9Qb3MgICAgICAgICAgICAgICAgICAgICgxMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEVYVElfUFJfUFIxMV9Nc2sgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IEVYVElfUFJfUFIxMV9Qb3MpICAgICAgICAgLyohPCAweDAwMDAwODAwICovDQojZGVmaW5lIEVYVElfUFJfUFIxMSAgICAgICAgICAgICAgICAgICAgICAgIEVYVElfUFJfUFIxMV9Nc2sgICAgICAgICAgICAgICAgICAgLyohPCBQZW5kaW5nIGJpdCBmb3IgbGluZSAxMSAqLw0KI2RlZmluZSBFWFRJX1BSX1BSMTJfUG9zICAgICAgICAgICAgICAgICAgICAoMTJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBFWFRJX1BSX1BSMTJfTXNrICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBFWFRJX1BSX1BSMTJfUG9zKSAgICAgICAgIC8qITwgMHgwMDAwMTAwMCAqLw0KI2RlZmluZSBFWFRJX1BSX1BSMTIgICAgICAgICAgICAgICAgICAgICAgICBFWFRJX1BSX1BSMTJfTXNrICAgICAgICAgICAgICAgICAgIC8qITwgUGVuZGluZyBiaXQgZm9yIGxpbmUgMTIgKi8NCiNkZWZpbmUgRVhUSV9QUl9QUjEzX1BvcyAgICAgICAgICAgICAgICAgICAgKDEzVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRVhUSV9QUl9QUjEzX01zayAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgRVhUSV9QUl9QUjEzX1BvcykgICAgICAgICAvKiE8IDB4MDAwMDIwMDAgKi8NCiNkZWZpbmUgRVhUSV9QUl9QUjEzICAgICAgICAgICAgICAgICAgICAgICAgRVhUSV9QUl9QUjEzX01zayAgICAgICAgICAgICAgICAgICAvKiE8IFBlbmRpbmcgYml0IGZvciBsaW5lIDEzICovDQojZGVmaW5lIEVYVElfUFJfUFIxNF9Qb3MgICAgICAgICAgICAgICAgICAgICgxNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEVYVElfUFJfUFIxNF9Nc2sgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IEVYVElfUFJfUFIxNF9Qb3MpICAgICAgICAgLyohPCAweDAwMDA0MDAwICovDQojZGVmaW5lIEVYVElfUFJfUFIxNCAgICAgICAgICAgICAgICAgICAgICAgIEVYVElfUFJfUFIxNF9Nc2sgICAgICAgICAgICAgICAgICAgLyohPCBQZW5kaW5nIGJpdCBmb3IgbGluZSAxNCAqLw0KI2RlZmluZSBFWFRJX1BSX1BSMTVfUG9zICAgICAgICAgICAgICAgICAgICAoMTVVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBFWFRJX1BSX1BSMTVfTXNrICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBFWFRJX1BSX1BSMTVfUG9zKSAgICAgICAgIC8qITwgMHgwMDAwODAwMCAqLw0KI2RlZmluZSBFWFRJX1BSX1BSMTUgICAgICAgICAgICAgICAgICAgICAgICBFWFRJX1BSX1BSMTVfTXNrICAgICAgICAgICAgICAgICAgIC8qITwgUGVuZGluZyBiaXQgZm9yIGxpbmUgMTUgKi8NCiNkZWZpbmUgRVhUSV9QUl9QUjE2X1BvcyAgICAgICAgICAgICAgICAgICAgKDE2VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRVhUSV9QUl9QUjE2X01zayAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgRVhUSV9QUl9QUjE2X1BvcykgICAgICAgICAvKiE8IDB4MDAwMTAwMDAgKi8NCiNkZWZpbmUgRVhUSV9QUl9QUjE2ICAgICAgICAgICAgICAgICAgICAgICAgRVhUSV9QUl9QUjE2X01zayAgICAgICAgICAgICAgICAgICAvKiE8IFBlbmRpbmcgYml0IGZvciBsaW5lIDE2ICovDQojZGVmaW5lIEVYVElfUFJfUFIxN19Qb3MgICAgICAgICAgICAgICAgICAgICgxN1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEVYVElfUFJfUFIxN19Nc2sgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IEVYVElfUFJfUFIxN19Qb3MpICAgICAgICAgLyohPCAweDAwMDIwMDAwICovDQojZGVmaW5lIEVYVElfUFJfUFIxNyAgICAgICAgICAgICAgICAgICAgICAgIEVYVElfUFJfUFIxN19Nc2sgICAgICAgICAgICAgICAgICAgLyohPCBQZW5kaW5nIGJpdCBmb3IgbGluZSAxNyAqLw0KI2RlZmluZSBFWFRJX1BSX1BSMThfUG9zICAgICAgICAgICAgICAgICAgICAoMThVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBFWFRJX1BSX1BSMThfTXNrICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBFWFRJX1BSX1BSMThfUG9zKSAgICAgICAgIC8qITwgMHgwMDA0MDAwMCAqLw0KI2RlZmluZSBFWFRJX1BSX1BSMTggICAgICAgICAgICAgICAgICAgICAgICBFWFRJX1BSX1BSMThfTXNrICAgICAgICAgICAgICAgICAgIC8qITwgUGVuZGluZyBiaXQgZm9yIGxpbmUgMTggKi8NCiNkZWZpbmUgRVhUSV9QUl9QUjE5X1BvcyAgICAgICAgICAgICAgICAgICAgKDE5VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRVhUSV9QUl9QUjE5X01zayAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgRVhUSV9QUl9QUjE5X1BvcykgICAgICAgICAvKiE8IDB4MDAwODAwMDAgKi8NCiNkZWZpbmUgRVhUSV9QUl9QUjE5ICAgICAgICAgICAgICAgICAgICAgICAgRVhUSV9QUl9QUjE5X01zayAgICAgICAgICAgICAgICAgICAvKiE8IFBlbmRpbmcgYml0IGZvciBsaW5lIDE5ICovDQojZGVmaW5lIEVYVElfUFJfUFIyMF9Qb3MgICAgICAgICAgICAgICAgICAgICgyMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEVYVElfUFJfUFIyMF9Nc2sgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IEVYVElfUFJfUFIyMF9Qb3MpICAgICAgICAgLyohPCAweDAwMTAwMDAwICovDQojZGVmaW5lIEVYVElfUFJfUFIyMCAgICAgICAgICAgICAgICAgICAgICAgIEVYVElfUFJfUFIyMF9Nc2sgICAgICAgICAgICAgICAgICAgLyohPCBQZW5kaW5nIGJpdCBmb3IgbGluZSAyMCAqLw0KI2RlZmluZSBFWFRJX1BSX1BSMjFfUG9zICAgICAgICAgICAgICAgICAgICAoMjFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBFWFRJX1BSX1BSMjFfTXNrICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBFWFRJX1BSX1BSMjFfUG9zKSAgICAgICAgIC8qITwgMHgwMDIwMDAwMCAqLw0KI2RlZmluZSBFWFRJX1BSX1BSMjEgICAgICAgICAgICAgICAgICAgICAgICBFWFRJX1BSX1BSMjFfTXNrICAgICAgICAgICAgICAgICAgIC8qITwgUGVuZGluZyBiaXQgZm9yIGxpbmUgMjEgKi8NCiNkZWZpbmUgRVhUSV9QUl9QUjIyX1BvcyAgICAgICAgICAgICAgICAgICAgKDIyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRVhUSV9QUl9QUjIyX01zayAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgRVhUSV9QUl9QUjIyX1BvcykgICAgICAgICAvKiE8IDB4MDA0MDAwMDAgKi8NCiNkZWZpbmUgRVhUSV9QUl9QUjIyICAgICAgICAgICAgICAgICAgICAgICAgRVhUSV9QUl9QUjIyX01zayAgICAgICAgICAgICAgICAgICAvKiE8IFBlbmRpbmcgYml0IGZvciBsaW5lIDIyICovDQojZGVmaW5lIEVYVElfUFJfUFIyM19Qb3MgICAgICAgICAgICAgICAgICAgICgyM1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEVYVElfUFJfUFIyM19Nc2sgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IEVYVElfUFJfUFIyM19Qb3MpICAgICAgICAgLyohPCAweDAwODAwMDAwICovDQojZGVmaW5lIEVYVElfUFJfUFIyMyAgICAgICAgICAgICAgICAgICAgICAgIEVYVElfUFJfUFIyM19Nc2sgICAgICAgICAgICAgICAgICAgLyohPCBQZW5kaW5nIGJpdCBmb3IgbGluZSAyMyAqLw0KDQovKiBSZWZlcmVuY2VzIERlZmluZXMgKi8NCiNkZWZpbmUgIEVYVElfUFJfUElGMCBFWFRJX1BSX1BSMA0KI2RlZmluZSAgRVhUSV9QUl9QSUYxIEVYVElfUFJfUFIxDQojZGVmaW5lICBFWFRJX1BSX1BJRjIgRVhUSV9QUl9QUjINCiNkZWZpbmUgIEVYVElfUFJfUElGMyBFWFRJX1BSX1BSMw0KI2RlZmluZSAgRVhUSV9QUl9QSUY0IEVYVElfUFJfUFI0DQojZGVmaW5lICBFWFRJX1BSX1BJRjUgRVhUSV9QUl9QUjUNCiNkZWZpbmUgIEVYVElfUFJfUElGNiBFWFRJX1BSX1BSNg0KI2RlZmluZSAgRVhUSV9QUl9QSUY3IEVYVElfUFJfUFI3DQojZGVmaW5lICBFWFRJX1BSX1BJRjggRVhUSV9QUl9QUjgNCiNkZWZpbmUgIEVYVElfUFJfUElGOSBFWFRJX1BSX1BSOQ0KI2RlZmluZSAgRVhUSV9QUl9QSUYxMCBFWFRJX1BSX1BSMTANCiNkZWZpbmUgIEVYVElfUFJfUElGMTEgRVhUSV9QUl9QUjExDQojZGVmaW5lICBFWFRJX1BSX1BJRjEyIEVYVElfUFJfUFIxMg0KI2RlZmluZSAgRVhUSV9QUl9QSUYxMyBFWFRJX1BSX1BSMTMNCiNkZWZpbmUgIEVYVElfUFJfUElGMTQgRVhUSV9QUl9QUjE0DQojZGVmaW5lICBFWFRJX1BSX1BJRjE1IEVYVElfUFJfUFIxNQ0KI2RlZmluZSAgRVhUSV9QUl9QSUYxNiBFWFRJX1BSX1BSMTYNCiNkZWZpbmUgIEVYVElfUFJfUElGMTcgRVhUSV9QUl9QUjE3DQojZGVmaW5lICBFWFRJX1BSX1BJRjE4IEVYVElfUFJfUFIxOA0KI2RlZmluZSAgRVhUSV9QUl9QSUYxOSBFWFRJX1BSX1BSMTkNCiNkZWZpbmUgIEVYVElfUFJfUElGMjAgRVhUSV9QUl9QUjIwDQojZGVmaW5lICBFWFRJX1BSX1BJRjIxIEVYVElfUFJfUFIyMQ0KI2RlZmluZSAgRVhUSV9QUl9QSUYyMiBFWFRJX1BSX1BSMjINCiNkZWZpbmUgIEVYVElfUFJfUElGMjMgRVhUSV9QUl9QUjIzDQoNCi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovDQovKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLw0KLyogICAgICAgICAgICAgICAgRkxBU0gsIERBVEEgRUVQUk9NIGFuZCBPcHRpb24gQnl0ZXMgUmVnaXN0ZXJzICAgICAgICAgICAgICAgKi8NCi8qICAgICAgICAgICAgICAgICAgICAgICAgKEZMQVNILCBEQVRBX0VFUFJPTSwgT0IpICAgICAgICAgICAgICAgICAgICAgICAgICAgICovDQovKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLw0KLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8NCg0KLyoqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBGTEFTSF9BQ1IgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgRkxBU0hfQUNSX0xBVEVOQ1lfUG9zICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRkxBU0hfQUNSX0xBVEVOQ1lfTXNrICAgICAgICAgICAgICAgICgweDFVIDw8IEZMQVNIX0FDUl9MQVRFTkNZX1BvcykgICAvKiE8IDB4MDAwMDAwMDEgKi8NCiNkZWZpbmUgRkxBU0hfQUNSX0xBVEVOQ1kgICAgICAgICAgICAgICAgICAgIEZMQVNIX0FDUl9MQVRFTkNZX01zayAgICAgICAgICAgICAvKiE8IExhdGVuY3kgKi8NCiNkZWZpbmUgRkxBU0hfQUNSX1BSRlRFTl9Qb3MgICAgICAgICAgICAgICAgICgxVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRkxBU0hfQUNSX1BSRlRFTl9Nc2sgICAgICAgICAgICAgICAgICgweDFVIDw8IEZMQVNIX0FDUl9QUkZURU5fUG9zKSAgICAvKiE8IDB4MDAwMDAwMDIgKi8NCiNkZWZpbmUgRkxBU0hfQUNSX1BSRlRFTiAgICAgICAgICAgICAgICAgICAgIEZMQVNIX0FDUl9QUkZURU5fTXNrICAgICAgICAgICAgICAvKiE8IFByZWZldGNoIEJ1ZmZlciBFbmFibGUgKi8NCiNkZWZpbmUgRkxBU0hfQUNSX0FDQzY0X1BvcyAgICAgICAgICAgICAgICAgICgyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRkxBU0hfQUNSX0FDQzY0X01zayAgICAgICAgICAgICAgICAgICgweDFVIDw8IEZMQVNIX0FDUl9BQ0M2NF9Qb3MpICAgICAvKiE8IDB4MDAwMDAwMDQgKi8NCiNkZWZpbmUgRkxBU0hfQUNSX0FDQzY0ICAgICAgICAgICAgICAgICAgICAgIEZMQVNIX0FDUl9BQ0M2NF9Nc2sgICAgICAgICAgICAgICAvKiE8IEFjY2VzcyA2NCBiaXRzICovDQojZGVmaW5lIEZMQVNIX0FDUl9TTEVFUF9QRF9Qb3MgICAgICAgICAgICAgICAoM1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEZMQVNIX0FDUl9TTEVFUF9QRF9Nc2sgICAgICAgICAgICAgICAoMHgxVSA8PCBGTEFTSF9BQ1JfU0xFRVBfUERfUG9zKSAgLyohPCAweDAwMDAwMDA4ICovDQojZGVmaW5lIEZMQVNIX0FDUl9TTEVFUF9QRCAgICAgICAgICAgICAgICAgICBGTEFTSF9BQ1JfU0xFRVBfUERfTXNrICAgICAgICAgICAgLyohPCBGbGFzaCBtb2RlIGR1cmluZyBzbGVlcCBtb2RlICovDQojZGVmaW5lIEZMQVNIX0FDUl9SVU5fUERfUG9zICAgICAgICAgICAgICAgICAoNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEZMQVNIX0FDUl9SVU5fUERfTXNrICAgICAgICAgICAgICAgICAoMHgxVSA8PCBGTEFTSF9BQ1JfUlVOX1BEX1BvcykgICAgLyohPCAweDAwMDAwMDEwICovDQojZGVmaW5lIEZMQVNIX0FDUl9SVU5fUEQgICAgICAgICAgICAgICAgICAgICBGTEFTSF9BQ1JfUlVOX1BEX01zayAgICAgICAgICAgICAgLyohPCBGbGFzaCBtb2RlIGR1cmluZyBSVU4gbW9kZSAqLw0KDQovKioqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIEZMQVNIX1BFQ1IgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgRkxBU0hfUEVDUl9QRUxPQ0tfUG9zICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRkxBU0hfUEVDUl9QRUxPQ0tfTXNrICAgICAgICAgICAgICAgICgweDFVIDw8IEZMQVNIX1BFQ1JfUEVMT0NLX1BvcykgICAvKiE8IDB4MDAwMDAwMDEgKi8NCiNkZWZpbmUgRkxBU0hfUEVDUl9QRUxPQ0sgICAgICAgICAgICAgICAgICAgIEZMQVNIX1BFQ1JfUEVMT0NLX01zayAgICAgICAgICAgICAvKiE8IEZMQVNIX1BFQ1IgYW5kIEZsYXNoIGRhdGEgTG9jayAqLw0KI2RlZmluZSBGTEFTSF9QRUNSX1BSR0xPQ0tfUG9zICAgICAgICAgICAgICAgKDFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBGTEFTSF9QRUNSX1BSR0xPQ0tfTXNrICAgICAgICAgICAgICAgKDB4MVUgPDwgRkxBU0hfUEVDUl9QUkdMT0NLX1BvcykgIC8qITwgMHgwMDAwMDAwMiAqLw0KI2RlZmluZSBGTEFTSF9QRUNSX1BSR0xPQ0sgICAgICAgICAgICAgICAgICAgRkxBU0hfUEVDUl9QUkdMT0NLX01zayAgICAgICAgICAgIC8qITwgUHJvZ3JhbSBtYXRyaXggTG9jayAqLw0KI2RlZmluZSBGTEFTSF9QRUNSX09QVExPQ0tfUG9zICAgICAgICAgICAgICAgKDJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBGTEFTSF9QRUNSX09QVExPQ0tfTXNrICAgICAgICAgICAgICAgKDB4MVUgPDwgRkxBU0hfUEVDUl9PUFRMT0NLX1BvcykgIC8qITwgMHgwMDAwMDAwNCAqLw0KI2RlZmluZSBGTEFTSF9QRUNSX09QVExPQ0sgICAgICAgICAgICAgICAgICAgRkxBU0hfUEVDUl9PUFRMT0NLX01zayAgICAgICAgICAgIC8qITwgT3B0aW9uIGJ5dGUgbWF0cml4IExvY2sgKi8NCiNkZWZpbmUgRkxBU0hfUEVDUl9QUk9HX1BvcyAgICAgICAgICAgICAgICAgICgzVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRkxBU0hfUEVDUl9QUk9HX01zayAgICAgICAgICAgICAgICAgICgweDFVIDw8IEZMQVNIX1BFQ1JfUFJPR19Qb3MpICAgICAvKiE8IDB4MDAwMDAwMDggKi8NCiNkZWZpbmUgRkxBU0hfUEVDUl9QUk9HICAgICAgICAgICAgICAgICAgICAgIEZMQVNIX1BFQ1JfUFJPR19Nc2sgICAgICAgICAgICAgICAvKiE8IFByb2dyYW0gbWF0cml4IHNlbGVjdGlvbiAqLw0KI2RlZmluZSBGTEFTSF9QRUNSX0RBVEFfUG9zICAgICAgICAgICAgICAgICAgKDRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBGTEFTSF9QRUNSX0RBVEFfTXNrICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgRkxBU0hfUEVDUl9EQVRBX1BvcykgICAgIC8qITwgMHgwMDAwMDAxMCAqLw0KI2RlZmluZSBGTEFTSF9QRUNSX0RBVEEgICAgICAgICAgICAgICAgICAgICAgRkxBU0hfUEVDUl9EQVRBX01zayAgICAgICAgICAgICAgIC8qITwgRGF0YSBtYXRyaXggc2VsZWN0aW9uICovDQojZGVmaW5lIEZMQVNIX1BFQ1JfRlREV19Qb3MgICAgICAgICAgICAgICAgICAoOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEZMQVNIX1BFQ1JfRlREV19Nc2sgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBGTEFTSF9QRUNSX0ZURFdfUG9zKSAgICAgLyohPCAweDAwMDAwMTAwICovDQojZGVmaW5lIEZMQVNIX1BFQ1JfRlREVyAgICAgICAgICAgICAgICAgICAgICBGTEFTSF9QRUNSX0ZURFdfTXNrICAgICAgICAgICAgICAgLyohPCBGaXhlZCBUaW1lIERhdGEgd3JpdGUgZm9yIFdvcmQvSGFsZiBXb3JkL0J5dGUgcHJvZ3JhbW1pbmcgKi8NCiNkZWZpbmUgRkxBU0hfUEVDUl9FUkFTRV9Qb3MgICAgICAgICAgICAgICAgICg5VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRkxBU0hfUEVDUl9FUkFTRV9Nc2sgICAgICAgICAgICAgICAgICgweDFVIDw8IEZMQVNIX1BFQ1JfRVJBU0VfUG9zKSAgICAvKiE8IDB4MDAwMDAyMDAgKi8NCiNkZWZpbmUgRkxBU0hfUEVDUl9FUkFTRSAgICAgICAgICAgICAgICAgICAgIEZMQVNIX1BFQ1JfRVJBU0VfTXNrICAgICAgICAgICAgICAvKiE8IFBhZ2UgZXJhc2luZyBtb2RlICovDQojZGVmaW5lIEZMQVNIX1BFQ1JfRlBSR19Qb3MgICAgICAgICAgICAgICAgICAoMTBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEZMQVNIX1BFQ1JfRlBSR19Nc2sgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBGTEFTSF9QRUNSX0ZQUkdfUG9zKSAgICAgLyohPCAweDAwMDAwNDAwICovDQojZGVmaW5lIEZMQVNIX1BFQ1JfRlBSRyAgICAgICAgICAgICAgICAgICAgICBGTEFTSF9QRUNSX0ZQUkdfTXNrICAgICAgICAgICAgICAgLyohPCBGYXN0IFBhZ2UvSGFsZiBQYWdlIHByb2dyYW1taW5nIG1vZGUgKi8NCiNkZWZpbmUgRkxBU0hfUEVDUl9QQVJBTExCQU5LX1BvcyAgICAgICAgICAgICgxNVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRkxBU0hfUEVDUl9QQVJBTExCQU5LX01zayAgICAgICAgICAgICgweDFVIDw8IEZMQVNIX1BFQ1JfUEFSQUxMQkFOS19Qb3MpIC8qITwgMHgwMDAwODAwMCAqLw0KI2RlZmluZSBGTEFTSF9QRUNSX1BBUkFMTEJBTksgICAgICAgICAgICAgICAgRkxBU0hfUEVDUl9QQVJBTExCQU5LX01zayAgICAgICAgIC8qITwgUGFyYWxsZWwgQmFuayBtb2RlICovDQojZGVmaW5lIEZMQVNIX1BFQ1JfRU9QSUVfUG9zICAgICAgICAgICAgICAgICAoMTZVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEZMQVNIX1BFQ1JfRU9QSUVfTXNrICAgICAgICAgICAgICAgICAoMHgxVSA8PCBGTEFTSF9QRUNSX0VPUElFX1BvcykgICAgLyohPCAweDAwMDEwMDAwICovDQojZGVmaW5lIEZMQVNIX1BFQ1JfRU9QSUUgICAgICAgICAgICAgICAgICAgICBGTEFTSF9QRUNSX0VPUElFX01zayAgICAgICAgICAgICAgLyohPCBFbmQgb2YgcHJvZ3JhbW1pbmcgaW50ZXJydXB0ICovIA0KI2RlZmluZSBGTEFTSF9QRUNSX0VSUklFX1BvcyAgICAgICAgICAgICAgICAgKDE3VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBGTEFTSF9QRUNSX0VSUklFX01zayAgICAgICAgICAgICAgICAgKDB4MVUgPDwgRkxBU0hfUEVDUl9FUlJJRV9Qb3MpICAgIC8qITwgMHgwMDAyMDAwMCAqLw0KI2RlZmluZSBGTEFTSF9QRUNSX0VSUklFICAgICAgICAgICAgICAgICAgICAgRkxBU0hfUEVDUl9FUlJJRV9Nc2sgICAgICAgICAgICAgIC8qITwgRXJyb3IgaW50ZXJydXB0ICovIA0KI2RlZmluZSBGTEFTSF9QRUNSX09CTF9MQVVOQ0hfUG9zICAgICAgICAgICAgKDE4VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBGTEFTSF9QRUNSX09CTF9MQVVOQ0hfTXNrICAgICAgICAgICAgKDB4MVUgPDwgRkxBU0hfUEVDUl9PQkxfTEFVTkNIX1BvcykgLyohPCAweDAwMDQwMDAwICovDQojZGVmaW5lIEZMQVNIX1BFQ1JfT0JMX0xBVU5DSCAgICAgICAgICAgICAgICBGTEFTSF9QRUNSX09CTF9MQVVOQ0hfTXNrICAgICAgICAgLyohPCBMYXVuY2ggdGhlIG9wdGlvbiBieXRlIGxvYWRpbmcgKi8gDQoNCi8qKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBGTEFTSF9QREtFWVIgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgRkxBU0hfUERLRVlSX1BES0VZUl9Qb3MgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRkxBU0hfUERLRVlSX1BES0VZUl9Nc2sgICAgICAgICAgICAgICgweEZGRkZGRkZGVSA8PCBGTEFTSF9QREtFWVJfUERLRVlSX1BvcykgLyohPCAweEZGRkZGRkZGICovDQojZGVmaW5lIEZMQVNIX1BES0VZUl9QREtFWVIgICAgICAgICAgICAgICAgICBGTEFTSF9QREtFWVJfUERLRVlSX01zayAgICAgICAgICAgLyohPCBGTEFTSF9QRUMgYW5kIGRhdGEgbWF0cml4IEtleSAqLw0KDQovKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgRkxBU0hfUEVLRVlSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIEZMQVNIX1BFS0VZUl9QRUtFWVJfUG9zICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEZMQVNIX1BFS0VZUl9QRUtFWVJfTXNrICAgICAgICAgICAgICAoMHhGRkZGRkZGRlUgPDwgRkxBU0hfUEVLRVlSX1BFS0VZUl9Qb3MpIC8qITwgMHhGRkZGRkZGRiAqLw0KI2RlZmluZSBGTEFTSF9QRUtFWVJfUEVLRVlSICAgICAgICAgICAgICAgICAgRkxBU0hfUEVLRVlSX1BFS0VZUl9Nc2sgICAgICAgICAgIC8qITwgRkxBU0hfUEVDIGFuZCBkYXRhIG1hdHJpeCBLZXkgKi8NCg0KLyoqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIEZMQVNIX1BSR0tFWVIgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgRkxBU0hfUFJHS0VZUl9QUkdLRVlSX1BvcyAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRkxBU0hfUFJHS0VZUl9QUkdLRVlSX01zayAgICAgICAgICAgICgweEZGRkZGRkZGVSA8PCBGTEFTSF9QUkdLRVlSX1BSR0tFWVJfUG9zKSAvKiE8IDB4RkZGRkZGRkYgKi8NCiNkZWZpbmUgRkxBU0hfUFJHS0VZUl9QUkdLRVlSICAgICAgICAgICAgICAgIEZMQVNIX1BSR0tFWVJfUFJHS0VZUl9Nc2sgICAgICAgICAvKiE8IFByb2dyYW0gbWF0cml4IEtleSAqLw0KDQovKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgRkxBU0hfT1BUS0VZUiByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBGTEFTSF9PUFRLRVlSX09QVEtFWVJfUG9zICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBGTEFTSF9PUFRLRVlSX09QVEtFWVJfTXNrICAgICAgICAgICAgKDB4RkZGRkZGRkZVIDw8IEZMQVNIX09QVEtFWVJfT1BUS0VZUl9Qb3MpIC8qITwgMHhGRkZGRkZGRiAqLw0KI2RlZmluZSBGTEFTSF9PUFRLRVlSX09QVEtFWVIgICAgICAgICAgICAgICAgRkxBU0hfT1BUS0VZUl9PUFRLRVlSX01zayAgICAgICAgIC8qITwgT3B0aW9uIGJ5dGVzIG1hdHJpeCBLZXkgKi8NCg0KLyoqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIEZMQVNIX1NSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBGTEFTSF9TUl9CU1lfUG9zICAgICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBGTEFTSF9TUl9CU1lfTXNrICAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgRkxBU0hfU1JfQlNZX1BvcykgICAgICAgIC8qITwgMHgwMDAwMDAwMSAqLw0KI2RlZmluZSBGTEFTSF9TUl9CU1kgICAgICAgICAgICAgICAgICAgICAgICAgRkxBU0hfU1JfQlNZX01zayAgICAgICAgICAgICAgICAgIC8qITwgQnVzeSAqLw0KI2RlZmluZSBGTEFTSF9TUl9FT1BfUG9zICAgICAgICAgICAgICAgICAgICAgKDFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBGTEFTSF9TUl9FT1BfTXNrICAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgRkxBU0hfU1JfRU9QX1BvcykgICAgICAgIC8qITwgMHgwMDAwMDAwMiAqLw0KI2RlZmluZSBGTEFTSF9TUl9FT1AgICAgICAgICAgICAgICAgICAgICAgICAgRkxBU0hfU1JfRU9QX01zayAgICAgICAgICAgICAgICAgIC8qITwgRW5kIE9mIFByb2dyYW1taW5nKi8NCiNkZWZpbmUgRkxBU0hfU1JfRU5ESFZfUG9zICAgICAgICAgICAgICAgICAgICgyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRkxBU0hfU1JfRU5ESFZfTXNrICAgICAgICAgICAgICAgICAgICgweDFVIDw8IEZMQVNIX1NSX0VOREhWX1BvcykgICAgICAvKiE8IDB4MDAwMDAwMDQgKi8NCiNkZWZpbmUgRkxBU0hfU1JfRU5ESFYgICAgICAgICAgICAgICAgICAgICAgIEZMQVNIX1NSX0VOREhWX01zayAgICAgICAgICAgICAgICAvKiE8IEVuZCBvZiBoaWdoIHZvbHRhZ2UgKi8NCiNkZWZpbmUgRkxBU0hfU1JfUkVBRFlfUG9zICAgICAgICAgICAgICAgICAgICgzVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRkxBU0hfU1JfUkVBRFlfTXNrICAgICAgICAgICAgICAgICAgICgweDFVIDw8IEZMQVNIX1NSX1JFQURZX1BvcykgICAgICAvKiE8IDB4MDAwMDAwMDggKi8NCiNkZWZpbmUgRkxBU0hfU1JfUkVBRFkgICAgICAgICAgICAgICAgICAgICAgIEZMQVNIX1NSX1JFQURZX01zayAgICAgICAgICAgICAgICAvKiE8IEZsYXNoIHJlYWR5IGFmdGVyIGxvdyBwb3dlciBtb2RlICovDQoNCiNkZWZpbmUgRkxBU0hfU1JfV1JQRVJSX1BvcyAgICAgICAgICAgICAgICAgICg4VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRkxBU0hfU1JfV1JQRVJSX01zayAgICAgICAgICAgICAgICAgICgweDFVIDw8IEZMQVNIX1NSX1dSUEVSUl9Qb3MpICAgICAvKiE8IDB4MDAwMDAxMDAgKi8NCiNkZWZpbmUgRkxBU0hfU1JfV1JQRVJSICAgICAgICAgICAgICAgICAgICAgIEZMQVNIX1NSX1dSUEVSUl9Nc2sgICAgICAgICAgICAgICAvKiE8IFdyaXRlIHByb3RlY3RlZCBlcnJvciAqLw0KI2RlZmluZSBGTEFTSF9TUl9QR0FFUlJfUG9zICAgICAgICAgICAgICAgICAgKDlVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBGTEFTSF9TUl9QR0FFUlJfTXNrICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgRkxBU0hfU1JfUEdBRVJSX1BvcykgICAgIC8qITwgMHgwMDAwMDIwMCAqLw0KI2RlZmluZSBGTEFTSF9TUl9QR0FFUlIgICAgICAgICAgICAgICAgICAgICAgRkxBU0hfU1JfUEdBRVJSX01zayAgICAgICAgICAgICAgIC8qITwgUHJvZ3JhbW1pbmcgQWxpZ25tZW50IEVycm9yICovDQojZGVmaW5lIEZMQVNIX1NSX1NJWkVSUl9Qb3MgICAgICAgICAgICAgICAgICAoMTBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEZMQVNIX1NSX1NJWkVSUl9Nc2sgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBGTEFTSF9TUl9TSVpFUlJfUG9zKSAgICAgLyohPCAweDAwMDAwNDAwICovDQojZGVmaW5lIEZMQVNIX1NSX1NJWkVSUiAgICAgICAgICAgICAgICAgICAgICBGTEFTSF9TUl9TSVpFUlJfTXNrICAgICAgICAgICAgICAgLyohPCBTaXplIGVycm9yICovDQojZGVmaW5lIEZMQVNIX1NSX09QVFZFUlJfUG9zICAgICAgICAgICAgICAgICAoMTFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEZMQVNIX1NSX09QVFZFUlJfTXNrICAgICAgICAgICAgICAgICAoMHgxVSA8PCBGTEFTSF9TUl9PUFRWRVJSX1BvcykgICAgLyohPCAweDAwMDAwODAwICovDQojZGVmaW5lIEZMQVNIX1NSX09QVFZFUlIgICAgICAgICAgICAgICAgICAgICBGTEFTSF9TUl9PUFRWRVJSX01zayAgICAgICAgICAgICAgLyohPCBPcHRpb24gdmFsaWRpdHkgZXJyb3IgKi8NCiNkZWZpbmUgRkxBU0hfU1JfT1BUVkVSUlVTUl9Qb3MgICAgICAgICAgICAgICgxMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRkxBU0hfU1JfT1BUVkVSUlVTUl9Nc2sgICAgICAgICAgICAgICgweDFVIDw8IEZMQVNIX1NSX09QVFZFUlJVU1JfUG9zKSAvKiE8IDB4MDAwMDEwMDAgKi8NCiNkZWZpbmUgRkxBU0hfU1JfT1BUVkVSUlVTUiAgICAgICAgICAgICAgICAgIEZMQVNIX1NSX09QVFZFUlJVU1JfTXNrICAgICAgICAgICAvKiE8IE9wdGlvbiBVc2VyIHZhbGlkaXR5IGVycm9yICovDQoNCi8qKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBGTEFTSF9PQlIgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIEZMQVNIX09CUl9SRFBSVF9Qb3MgICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEZMQVNIX09CUl9SRFBSVF9Nc2sgICAgICAgICAgICAgICAgICAoMHhGRlUgPDwgRkxBU0hfT0JSX1JEUFJUX1BvcykgICAgLyohPCAweDAwMDAwMEZGICovDQojZGVmaW5lIEZMQVNIX09CUl9SRFBSVCAgICAgICAgICAgICAgICAgICAgICBGTEFTSF9PQlJfUkRQUlRfTXNrICAgICAgICAgICAgICAgLyohPCBSZWFkIFByb3RlY3Rpb24gKi8NCiNkZWZpbmUgRkxBU0hfT0JSX0JPUl9MRVZfUG9zICAgICAgICAgICAgICAgICgxNlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRkxBU0hfT0JSX0JPUl9MRVZfTXNrICAgICAgICAgICAgICAgICgweEZVIDw8IEZMQVNIX09CUl9CT1JfTEVWX1BvcykgICAvKiE8IDB4MDAwRjAwMDAgKi8NCiNkZWZpbmUgRkxBU0hfT0JSX0JPUl9MRVYgICAgICAgICAgICAgICAgICAgIEZMQVNIX09CUl9CT1JfTEVWX01zayAgICAgICAgICAgICAvKiE8IEJPUl9MRVZbMzowXSBCcm93biBPdXQgUmVzZXQgVGhyZXNob2xkIExldmVsKi8NCiNkZWZpbmUgRkxBU0hfT0JSX1VTRVJfUG9zICAgICAgICAgICAgICAgICAgICgyMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRkxBU0hfT0JSX1VTRVJfTXNrICAgICAgICAgICAgICAgICAgICgweEZVIDw8IEZMQVNIX09CUl9VU0VSX1BvcykgICAgICAvKiE8IDB4MDBGMDAwMDAgKi8NCiNkZWZpbmUgRkxBU0hfT0JSX1VTRVIgICAgICAgICAgICAgICAgICAgICAgIEZMQVNIX09CUl9VU0VSX01zayAgICAgICAgICAgICAgICAvKiE8IFVzZXIgT3B0aW9uIEJ5dGVzICovDQojZGVmaW5lIEZMQVNIX09CUl9JV0RHX1NXX1BvcyAgICAgICAgICAgICAgICAoMjBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEZMQVNIX09CUl9JV0RHX1NXX01zayAgICAgICAgICAgICAgICAoMHgxVSA8PCBGTEFTSF9PQlJfSVdER19TV19Qb3MpICAgLyohPCAweDAwMTAwMDAwICovDQojZGVmaW5lIEZMQVNIX09CUl9JV0RHX1NXICAgICAgICAgICAgICAgICAgICBGTEFTSF9PQlJfSVdER19TV19Nc2sgICAgICAgICAgICAgLyohPCBJV0RHX1NXICovDQojZGVmaW5lIEZMQVNIX09CUl9uUlNUX1NUT1BfUG9zICAgICAgICAgICAgICAoMjFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEZMQVNIX09CUl9uUlNUX1NUT1BfTXNrICAgICAgICAgICAgICAoMHgxVSA8PCBGTEFTSF9PQlJfblJTVF9TVE9QX1BvcykgLyohPCAweDAwMjAwMDAwICovDQojZGVmaW5lIEZMQVNIX09CUl9uUlNUX1NUT1AgICAgICAgICAgICAgICAgICBGTEFTSF9PQlJfblJTVF9TVE9QX01zayAgICAgICAgICAgLyohPCBuUlNUX1NUT1AgKi8NCiNkZWZpbmUgRkxBU0hfT0JSX25SU1RfU1REQllfUG9zICAgICAgICAgICAgICgyMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRkxBU0hfT0JSX25SU1RfU1REQllfTXNrICAgICAgICAgICAgICgweDFVIDw8IEZMQVNIX09CUl9uUlNUX1NUREJZX1BvcykgLyohPCAweDAwNDAwMDAwICovDQojZGVmaW5lIEZMQVNIX09CUl9uUlNUX1NUREJZICAgICAgICAgICAgICAgICBGTEFTSF9PQlJfblJTVF9TVERCWV9Nc2sgICAgICAgICAgLyohPCBuUlNUX1NUREJZICovDQojZGVmaW5lIEZMQVNIX09CUl9uUlNUX0JGQjJfUG9zICAgICAgICAgICAgICAoMjNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEZMQVNIX09CUl9uUlNUX0JGQjJfTXNrICAgICAgICAgICAgICAoMHgxVSA8PCBGTEFTSF9PQlJfblJTVF9CRkIyX1BvcykgLyohPCAweDAwODAwMDAwICovDQojZGVmaW5lIEZMQVNIX09CUl9uUlNUX0JGQjIgICAgICAgICAgICAgICAgICBGTEFTSF9PQlJfblJTVF9CRkIyX01zayAgICAgICAgICAgLyohPCBCRkIyICovDQoNCi8qKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBGTEFTSF9XUlBSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIEZMQVNIX1dSUFIxX1dSUF9Qb3MgICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEZMQVNIX1dSUFIxX1dSUF9Nc2sgICAgICAgICAgICAgICAgICAoMHhGRkZGRkZGRlUgPDwgRkxBU0hfV1JQUjFfV1JQX1BvcykgLyohPCAweEZGRkZGRkZGICovDQojZGVmaW5lIEZMQVNIX1dSUFIxX1dSUCAgICAgICAgICAgICAgICAgICAgICBGTEFTSF9XUlBSMV9XUlBfTXNrICAgICAgICAgICAgICAgLyohPCBXcml0ZSBQcm90ZWN0IHNlY3RvcnMgMCAgdG8gMzEgICovDQojZGVmaW5lIEZMQVNIX1dSUFIyX1dSUF9Qb3MgICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEZMQVNIX1dSUFIyX1dSUF9Nc2sgICAgICAgICAgICAgICAgICAoMHhGRkZGVSA8PCBGTEFTSF9XUlBSMl9XUlBfUG9zKSAgLyohPCAweDAwMDBGRkZGICovDQojZGVmaW5lIEZMQVNIX1dSUFIyX1dSUCAgICAgICAgICAgICAgICAgICAgICBGTEFTSF9XUlBSMl9XUlBfTXNrICAgICAgICAgICAgICAgLyohPCBXcml0ZSBQcm90ZWN0IHNlY3RvcnMgMzIgdG8gNDcgICovICAgICAgICAgICAgIA0KI2RlZmluZSBGTEFTSF9XUlBSM19XUlBfUG9zICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBGTEFTSF9XUlBSM19XUlBfTXNrICAgICAgICAgICAgICAgICAgKDB4RkZGRkZGRkZVIDw8IEZMQVNIX1dSUFIzX1dSUF9Qb3MpIC8qITwgMHhGRkZGRkZGRiAqLw0KI2RlZmluZSBGTEFTSF9XUlBSM19XUlAgICAgICAgICAgICAgICAgICAgICAgRkxBU0hfV1JQUjNfV1JQX01zayAgICAgICAgICAgICAgIC8qITwgV3JpdGUgUHJvdGVjdCBzZWN0b3JzIDY0IHRvIDk1ICAqLyANCiNkZWZpbmUgRkxBU0hfV1JQUjRfV1JQX1BvcyAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRkxBU0hfV1JQUjRfV1JQX01zayAgICAgICAgICAgICAgICAgICgweEZGRkZVIDw8IEZMQVNIX1dSUFI0X1dSUF9Qb3MpICAvKiE8IDB4MDAwMEZGRkYgKi8NCiNkZWZpbmUgRkxBU0hfV1JQUjRfV1JQICAgICAgICAgICAgICAgICAgICAgIEZMQVNIX1dSUFI0X1dSUF9Nc2sgICAgICAgICAgICAgICAvKiE8IFdyaXRlIFByb3RlY3Qgc2VjdG9ycyA5NiB0byAxMTEgKi8gDQoNCi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovDQovKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLw0KLyogICAgICAgICAgICAgICAgICAgICAgICAgICAgR2VuZXJhbCBQdXJwb3NlIEkvTyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8NCi8qICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovDQovKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLw0KLyoqKioqKioqKioqKioqKioqKiAgQml0cyBkZWZpbml0aW9uIGZvciBHUElPX01PREVSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgR1BJT19NT0RFUl9NT0RFUjBfUG9zICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19NT0RFUl9NT0RFUjBfTXNrICAgICAgICAgICAgICAgICgweDNVIDw8IEdQSU9fTU9ERVJfTU9ERVIwX1BvcykgICAvKiE8IDB4MDAwMDAwMDMgKi8NCiNkZWZpbmUgR1BJT19NT0RFUl9NT0RFUjAgICAgICAgICAgICAgICAgICAgIEdQSU9fTU9ERVJfTU9ERVIwX01zayAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19NT0RFUl9NT0RFUjBfMCAgICAgICAgICAgICAgICAgICgweDFVIDw8IEdQSU9fTU9ERVJfTU9ERVIwX1BvcykgICAvKiE8IDB4MDAwMDAwMDEgKi8NCiNkZWZpbmUgR1BJT19NT0RFUl9NT0RFUjBfMSAgICAgICAgICAgICAgICAgICgweDJVIDw8IEdQSU9fTU9ERVJfTU9ERVIwX1BvcykgICAvKiE8IDB4MDAwMDAwMDIgKi8NCg0KI2RlZmluZSBHUElPX01PREVSX01PREVSMV9Qb3MgICAgICAgICAgICAgICAgKDJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX01PREVSX01PREVSMV9Nc2sgICAgICAgICAgICAgICAgKDB4M1UgPDwgR1BJT19NT0RFUl9NT0RFUjFfUG9zKSAgIC8qITwgMHgwMDAwMDAwQyAqLw0KI2RlZmluZSBHUElPX01PREVSX01PREVSMSAgICAgICAgICAgICAgICAgICAgR1BJT19NT0RFUl9NT0RFUjFfTXNrICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX01PREVSX01PREVSMV8wICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgR1BJT19NT0RFUl9NT0RFUjFfUG9zKSAgIC8qITwgMHgwMDAwMDAwNCAqLw0KI2RlZmluZSBHUElPX01PREVSX01PREVSMV8xICAgICAgICAgICAgICAgICAgKDB4MlUgPDwgR1BJT19NT0RFUl9NT0RFUjFfUG9zKSAgIC8qITwgMHgwMDAwMDAwOCAqLw0KDQojZGVmaW5lIEdQSU9fTU9ERVJfTU9ERVIyX1BvcyAgICAgICAgICAgICAgICAoNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fTU9ERVJfTU9ERVIyX01zayAgICAgICAgICAgICAgICAoMHgzVSA8PCBHUElPX01PREVSX01PREVSMl9Qb3MpICAgLyohPCAweDAwMDAwMDMwICovDQojZGVmaW5lIEdQSU9fTU9ERVJfTU9ERVIyICAgICAgICAgICAgICAgICAgICBHUElPX01PREVSX01PREVSMl9Nc2sgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fTU9ERVJfTU9ERVIyXzAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBHUElPX01PREVSX01PREVSMl9Qb3MpICAgLyohPCAweDAwMDAwMDEwICovDQojZGVmaW5lIEdQSU9fTU9ERVJfTU9ERVIyXzEgICAgICAgICAgICAgICAgICAoMHgyVSA8PCBHUElPX01PREVSX01PREVSMl9Qb3MpICAgLyohPCAweDAwMDAwMDIwICovDQoNCiNkZWZpbmUgR1BJT19NT0RFUl9NT0RFUjNfUG9zICAgICAgICAgICAgICAgICg2VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19NT0RFUl9NT0RFUjNfTXNrICAgICAgICAgICAgICAgICgweDNVIDw8IEdQSU9fTU9ERVJfTU9ERVIzX1BvcykgICAvKiE8IDB4MDAwMDAwQzAgKi8NCiNkZWZpbmUgR1BJT19NT0RFUl9NT0RFUjMgICAgICAgICAgICAgICAgICAgIEdQSU9fTU9ERVJfTU9ERVIzX01zayAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19NT0RFUl9NT0RFUjNfMCAgICAgICAgICAgICAgICAgICgweDFVIDw8IEdQSU9fTU9ERVJfTU9ERVIzX1BvcykgICAvKiE8IDB4MDAwMDAwNDAgKi8NCiNkZWZpbmUgR1BJT19NT0RFUl9NT0RFUjNfMSAgICAgICAgICAgICAgICAgICgweDJVIDw8IEdQSU9fTU9ERVJfTU9ERVIzX1BvcykgICAvKiE8IDB4MDAwMDAwODAgKi8NCg0KI2RlZmluZSBHUElPX01PREVSX01PREVSNF9Qb3MgICAgICAgICAgICAgICAgKDhVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX01PREVSX01PREVSNF9Nc2sgICAgICAgICAgICAgICAgKDB4M1UgPDwgR1BJT19NT0RFUl9NT0RFUjRfUG9zKSAgIC8qITwgMHgwMDAwMDMwMCAqLw0KI2RlZmluZSBHUElPX01PREVSX01PREVSNCAgICAgICAgICAgICAgICAgICAgR1BJT19NT0RFUl9NT0RFUjRfTXNrICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX01PREVSX01PREVSNF8wICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgR1BJT19NT0RFUl9NT0RFUjRfUG9zKSAgIC8qITwgMHgwMDAwMDEwMCAqLw0KI2RlZmluZSBHUElPX01PREVSX01PREVSNF8xICAgICAgICAgICAgICAgICAgKDB4MlUgPDwgR1BJT19NT0RFUl9NT0RFUjRfUG9zKSAgIC8qITwgMHgwMDAwMDIwMCAqLw0KDQojZGVmaW5lIEdQSU9fTU9ERVJfTU9ERVI1X1BvcyAgICAgICAgICAgICAgICAoMTBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fTU9ERVJfTU9ERVI1X01zayAgICAgICAgICAgICAgICAoMHgzVSA8PCBHUElPX01PREVSX01PREVSNV9Qb3MpICAgLyohPCAweDAwMDAwQzAwICovDQojZGVmaW5lIEdQSU9fTU9ERVJfTU9ERVI1ICAgICAgICAgICAgICAgICAgICBHUElPX01PREVSX01PREVSNV9Nc2sgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fTU9ERVJfTU9ERVI1XzAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBHUElPX01PREVSX01PREVSNV9Qb3MpICAgLyohPCAweDAwMDAwNDAwICovDQojZGVmaW5lIEdQSU9fTU9ERVJfTU9ERVI1XzEgICAgICAgICAgICAgICAgICAoMHgyVSA8PCBHUElPX01PREVSX01PREVSNV9Qb3MpICAgLyohPCAweDAwMDAwODAwICovDQoNCiNkZWZpbmUgR1BJT19NT0RFUl9NT0RFUjZfUG9zICAgICAgICAgICAgICAgICgxMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19NT0RFUl9NT0RFUjZfTXNrICAgICAgICAgICAgICAgICgweDNVIDw8IEdQSU9fTU9ERVJfTU9ERVI2X1BvcykgICAvKiE8IDB4MDAwMDMwMDAgKi8NCiNkZWZpbmUgR1BJT19NT0RFUl9NT0RFUjYgICAgICAgICAgICAgICAgICAgIEdQSU9fTU9ERVJfTU9ERVI2X01zayAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19NT0RFUl9NT0RFUjZfMCAgICAgICAgICAgICAgICAgICgweDFVIDw8IEdQSU9fTU9ERVJfTU9ERVI2X1BvcykgICAvKiE8IDB4MDAwMDEwMDAgKi8NCiNkZWZpbmUgR1BJT19NT0RFUl9NT0RFUjZfMSAgICAgICAgICAgICAgICAgICgweDJVIDw8IEdQSU9fTU9ERVJfTU9ERVI2X1BvcykgICAvKiE8IDB4MDAwMDIwMDAgKi8NCg0KI2RlZmluZSBHUElPX01PREVSX01PREVSN19Qb3MgICAgICAgICAgICAgICAgKDE0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX01PREVSX01PREVSN19Nc2sgICAgICAgICAgICAgICAgKDB4M1UgPDwgR1BJT19NT0RFUl9NT0RFUjdfUG9zKSAgIC8qITwgMHgwMDAwQzAwMCAqLw0KI2RlZmluZSBHUElPX01PREVSX01PREVSNyAgICAgICAgICAgICAgICAgICAgR1BJT19NT0RFUl9NT0RFUjdfTXNrICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX01PREVSX01PREVSN18wICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgR1BJT19NT0RFUl9NT0RFUjdfUG9zKSAgIC8qITwgMHgwMDAwNDAwMCAqLw0KI2RlZmluZSBHUElPX01PREVSX01PREVSN18xICAgICAgICAgICAgICAgICAgKDB4MlUgPDwgR1BJT19NT0RFUl9NT0RFUjdfUG9zKSAgIC8qITwgMHgwMDAwODAwMCAqLw0KDQojZGVmaW5lIEdQSU9fTU9ERVJfTU9ERVI4X1BvcyAgICAgICAgICAgICAgICAoMTZVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fTU9ERVJfTU9ERVI4X01zayAgICAgICAgICAgICAgICAoMHgzVSA8PCBHUElPX01PREVSX01PREVSOF9Qb3MpICAgLyohPCAweDAwMDMwMDAwICovDQojZGVmaW5lIEdQSU9fTU9ERVJfTU9ERVI4ICAgICAgICAgICAgICAgICAgICBHUElPX01PREVSX01PREVSOF9Nc2sgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fTU9ERVJfTU9ERVI4XzAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBHUElPX01PREVSX01PREVSOF9Qb3MpICAgLyohPCAweDAwMDEwMDAwICovDQojZGVmaW5lIEdQSU9fTU9ERVJfTU9ERVI4XzEgICAgICAgICAgICAgICAgICAoMHgyVSA8PCBHUElPX01PREVSX01PREVSOF9Qb3MpICAgLyohPCAweDAwMDIwMDAwICovDQoNCiNkZWZpbmUgR1BJT19NT0RFUl9NT0RFUjlfUG9zICAgICAgICAgICAgICAgICgxOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19NT0RFUl9NT0RFUjlfTXNrICAgICAgICAgICAgICAgICgweDNVIDw8IEdQSU9fTU9ERVJfTU9ERVI5X1BvcykgICAvKiE8IDB4MDAwQzAwMDAgKi8NCiNkZWZpbmUgR1BJT19NT0RFUl9NT0RFUjkgICAgICAgICAgICAgICAgICAgIEdQSU9fTU9ERVJfTU9ERVI5X01zayAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19NT0RFUl9NT0RFUjlfMCAgICAgICAgICAgICAgICAgICgweDFVIDw8IEdQSU9fTU9ERVJfTU9ERVI5X1BvcykgICAvKiE8IDB4MDAwNDAwMDAgKi8NCiNkZWZpbmUgR1BJT19NT0RFUl9NT0RFUjlfMSAgICAgICAgICAgICAgICAgICgweDJVIDw8IEdQSU9fTU9ERVJfTU9ERVI5X1BvcykgICAvKiE8IDB4MDAwODAwMDAgKi8NCg0KI2RlZmluZSBHUElPX01PREVSX01PREVSMTBfUG9zICAgICAgICAgICAgICAgKDIwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX01PREVSX01PREVSMTBfTXNrICAgICAgICAgICAgICAgKDB4M1UgPDwgR1BJT19NT0RFUl9NT0RFUjEwX1BvcykgIC8qITwgMHgwMDMwMDAwMCAqLw0KI2RlZmluZSBHUElPX01PREVSX01PREVSMTAgICAgICAgICAgICAgICAgICAgR1BJT19NT0RFUl9NT0RFUjEwX01zayAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX01PREVSX01PREVSMTBfMCAgICAgICAgICAgICAgICAgKDB4MVUgPDwgR1BJT19NT0RFUl9NT0RFUjEwX1BvcykgIC8qITwgMHgwMDEwMDAwMCAqLw0KI2RlZmluZSBHUElPX01PREVSX01PREVSMTBfMSAgICAgICAgICAgICAgICAgKDB4MlUgPDwgR1BJT19NT0RFUl9NT0RFUjEwX1BvcykgIC8qITwgMHgwMDIwMDAwMCAqLw0KDQojZGVmaW5lIEdQSU9fTU9ERVJfTU9ERVIxMV9Qb3MgICAgICAgICAgICAgICAoMjJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fTU9ERVJfTU9ERVIxMV9Nc2sgICAgICAgICAgICAgICAoMHgzVSA8PCBHUElPX01PREVSX01PREVSMTFfUG9zKSAgLyohPCAweDAwQzAwMDAwICovDQojZGVmaW5lIEdQSU9fTU9ERVJfTU9ERVIxMSAgICAgICAgICAgICAgICAgICBHUElPX01PREVSX01PREVSMTFfTXNrICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fTU9ERVJfTU9ERVIxMV8wICAgICAgICAgICAgICAgICAoMHgxVSA8PCBHUElPX01PREVSX01PREVSMTFfUG9zKSAgLyohPCAweDAwNDAwMDAwICovDQojZGVmaW5lIEdQSU9fTU9ERVJfTU9ERVIxMV8xICAgICAgICAgICAgICAgICAoMHgyVSA8PCBHUElPX01PREVSX01PREVSMTFfUG9zKSAgLyohPCAweDAwODAwMDAwICovDQoNCiNkZWZpbmUgR1BJT19NT0RFUl9NT0RFUjEyX1BvcyAgICAgICAgICAgICAgICgyNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19NT0RFUl9NT0RFUjEyX01zayAgICAgICAgICAgICAgICgweDNVIDw8IEdQSU9fTU9ERVJfTU9ERVIxMl9Qb3MpICAvKiE8IDB4MDMwMDAwMDAgKi8NCiNkZWZpbmUgR1BJT19NT0RFUl9NT0RFUjEyICAgICAgICAgICAgICAgICAgIEdQSU9fTU9ERVJfTU9ERVIxMl9Nc2sgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19NT0RFUl9NT0RFUjEyXzAgICAgICAgICAgICAgICAgICgweDFVIDw8IEdQSU9fTU9ERVJfTU9ERVIxMl9Qb3MpICAvKiE8IDB4MDEwMDAwMDAgKi8NCiNkZWZpbmUgR1BJT19NT0RFUl9NT0RFUjEyXzEgICAgICAgICAgICAgICAgICgweDJVIDw8IEdQSU9fTU9ERVJfTU9ERVIxMl9Qb3MpICAvKiE8IDB4MDIwMDAwMDAgKi8NCg0KI2RlZmluZSBHUElPX01PREVSX01PREVSMTNfUG9zICAgICAgICAgICAgICAgKDI2VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX01PREVSX01PREVSMTNfTXNrICAgICAgICAgICAgICAgKDB4M1UgPDwgR1BJT19NT0RFUl9NT0RFUjEzX1BvcykgIC8qITwgMHgwQzAwMDAwMCAqLw0KI2RlZmluZSBHUElPX01PREVSX01PREVSMTMgICAgICAgICAgICAgICAgICAgR1BJT19NT0RFUl9NT0RFUjEzX01zayAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX01PREVSX01PREVSMTNfMCAgICAgICAgICAgICAgICAgKDB4MVUgPDwgR1BJT19NT0RFUl9NT0RFUjEzX1BvcykgIC8qITwgMHgwNDAwMDAwMCAqLw0KI2RlZmluZSBHUElPX01PREVSX01PREVSMTNfMSAgICAgICAgICAgICAgICAgKDB4MlUgPDwgR1BJT19NT0RFUl9NT0RFUjEzX1BvcykgIC8qITwgMHgwODAwMDAwMCAqLw0KDQojZGVmaW5lIEdQSU9fTU9ERVJfTU9ERVIxNF9Qb3MgICAgICAgICAgICAgICAoMjhVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fTU9ERVJfTU9ERVIxNF9Nc2sgICAgICAgICAgICAgICAoMHgzVSA8PCBHUElPX01PREVSX01PREVSMTRfUG9zKSAgLyohPCAweDMwMDAwMDAwICovDQojZGVmaW5lIEdQSU9fTU9ERVJfTU9ERVIxNCAgICAgICAgICAgICAgICAgICBHUElPX01PREVSX01PREVSMTRfTXNrICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fTU9ERVJfTU9ERVIxNF8wICAgICAgICAgICAgICAgICAoMHgxVSA8PCBHUElPX01PREVSX01PREVSMTRfUG9zKSAgLyohPCAweDEwMDAwMDAwICovDQojZGVmaW5lIEdQSU9fTU9ERVJfTU9ERVIxNF8xICAgICAgICAgICAgICAgICAoMHgyVSA8PCBHUElPX01PREVSX01PREVSMTRfUG9zKSAgLyohPCAweDIwMDAwMDAwICovDQoNCiNkZWZpbmUgR1BJT19NT0RFUl9NT0RFUjE1X1BvcyAgICAgICAgICAgICAgICgzMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19NT0RFUl9NT0RFUjE1X01zayAgICAgICAgICAgICAgICgweDNVIDw8IEdQSU9fTU9ERVJfTU9ERVIxNV9Qb3MpICAvKiE8IDB4QzAwMDAwMDAgKi8NCiNkZWZpbmUgR1BJT19NT0RFUl9NT0RFUjE1ICAgICAgICAgICAgICAgICAgIEdQSU9fTU9ERVJfTU9ERVIxNV9Nc2sgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19NT0RFUl9NT0RFUjE1XzAgICAgICAgICAgICAgICAgICgweDFVIDw8IEdQSU9fTU9ERVJfTU9ERVIxNV9Qb3MpICAvKiE8IDB4NDAwMDAwMDAgKi8NCiNkZWZpbmUgR1BJT19NT0RFUl9NT0RFUjE1XzEgICAgICAgICAgICAgICAgICgweDJVIDw8IEdQSU9fTU9ERVJfTU9ERVIxNV9Qb3MpICAvKiE8IDB4ODAwMDAwMDAgKi8NCg0KLyoqKioqKioqKioqKioqKioqKiAgQml0cyBkZWZpbml0aW9uIGZvciBHUElPX09UWVBFUiByZWdpc3RlciAgKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgR1BJT19PVFlQRVJfT1RfMCAgICAgICAgICAgICAgICAgICAgICgweDAwMDAwMDAxVSkgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19PVFlQRVJfT1RfMSAgICAgICAgICAgICAgICAgICAgICgweDAwMDAwMDAyVSkgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19PVFlQRVJfT1RfMiAgICAgICAgICAgICAgICAgICAgICgweDAwMDAwMDA0VSkgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19PVFlQRVJfT1RfMyAgICAgICAgICAgICAgICAgICAgICgweDAwMDAwMDA4VSkgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19PVFlQRVJfT1RfNCAgICAgICAgICAgICAgICAgICAgICgweDAwMDAwMDEwVSkgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19PVFlQRVJfT1RfNSAgICAgICAgICAgICAgICAgICAgICgweDAwMDAwMDIwVSkgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19PVFlQRVJfT1RfNiAgICAgICAgICAgICAgICAgICAgICgweDAwMDAwMDQwVSkgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19PVFlQRVJfT1RfNyAgICAgICAgICAgICAgICAgICAgICgweDAwMDAwMDgwVSkgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19PVFlQRVJfT1RfOCAgICAgICAgICAgICAgICAgICAgICgweDAwMDAwMTAwVSkgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19PVFlQRVJfT1RfOSAgICAgICAgICAgICAgICAgICAgICgweDAwMDAwMjAwVSkgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19PVFlQRVJfT1RfMTAgICAgICAgICAgICAgICAgICAgICgweDAwMDAwNDAwVSkgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19PVFlQRVJfT1RfMTEgICAgICAgICAgICAgICAgICAgICgweDAwMDAwODAwVSkgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19PVFlQRVJfT1RfMTIgICAgICAgICAgICAgICAgICAgICgweDAwMDAxMDAwVSkgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19PVFlQRVJfT1RfMTMgICAgICAgICAgICAgICAgICAgICgweDAwMDAyMDAwVSkgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19PVFlQRVJfT1RfMTQgICAgICAgICAgICAgICAgICAgICgweDAwMDA0MDAwVSkgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19PVFlQRVJfT1RfMTUgICAgICAgICAgICAgICAgICAgICgweDAwMDA4MDAwVSkgICAgICAgICAgICAgICAgICAgICANCg0KLyoqKioqKioqKioqKioqKioqKiAgQml0cyBkZWZpbml0aW9uIGZvciBHUElPX09TUEVFRFIgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKi8NCiNkZWZpbmUgR1BJT19PU1BFRURFUl9PU1BFRURSMF9Qb3MgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19PU1BFRURFUl9PU1BFRURSMF9Nc2sgICAgICAgICAgICgweDNVIDw8IEdQSU9fT1NQRUVERVJfT1NQRUVEUjBfUG9zKSAvKiE8IDB4MDAwMDAwMDMgKi8NCiNkZWZpbmUgR1BJT19PU1BFRURFUl9PU1BFRURSMCAgICAgICAgICAgICAgIEdQSU9fT1NQRUVERVJfT1NQRUVEUjBfTXNrICAgICAgICANCiNkZWZpbmUgR1BJT19PU1BFRURFUl9PU1BFRURSMF8wICAgICAgICAgICAgICgweDFVIDw8IEdQSU9fT1NQRUVERVJfT1NQRUVEUjBfUG9zKSAvKiE8IDB4MDAwMDAwMDEgKi8NCiNkZWZpbmUgR1BJT19PU1BFRURFUl9PU1BFRURSMF8xICAgICAgICAgICAgICgweDJVIDw8IEdQSU9fT1NQRUVERVJfT1NQRUVEUjBfUG9zKSAvKiE8IDB4MDAwMDAwMDIgKi8NCg0KI2RlZmluZSBHUElPX09TUEVFREVSX09TUEVFRFIxX1BvcyAgICAgICAgICAgKDJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX09TUEVFREVSX09TUEVFRFIxX01zayAgICAgICAgICAgKDB4M1UgPDwgR1BJT19PU1BFRURFUl9PU1BFRURSMV9Qb3MpIC8qITwgMHgwMDAwMDAwQyAqLw0KI2RlZmluZSBHUElPX09TUEVFREVSX09TUEVFRFIxICAgICAgICAgICAgICAgR1BJT19PU1BFRURFUl9PU1BFRURSMV9Nc2sgICAgICAgIA0KI2RlZmluZSBHUElPX09TUEVFREVSX09TUEVFRFIxXzAgICAgICAgICAgICAgKDB4MVUgPDwgR1BJT19PU1BFRURFUl9PU1BFRURSMV9Qb3MpIC8qITwgMHgwMDAwMDAwNCAqLw0KI2RlZmluZSBHUElPX09TUEVFREVSX09TUEVFRFIxXzEgICAgICAgICAgICAgKDB4MlUgPDwgR1BJT19PU1BFRURFUl9PU1BFRURSMV9Qb3MpIC8qITwgMHgwMDAwMDAwOCAqLw0KDQojZGVmaW5lIEdQSU9fT1NQRUVERVJfT1NQRUVEUjJfUG9zICAgICAgICAgICAoNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fT1NQRUVERVJfT1NQRUVEUjJfTXNrICAgICAgICAgICAoMHgzVSA8PCBHUElPX09TUEVFREVSX09TUEVFRFIyX1BvcykgLyohPCAweDAwMDAwMDMwICovDQojZGVmaW5lIEdQSU9fT1NQRUVERVJfT1NQRUVEUjIgICAgICAgICAgICAgICBHUElPX09TUEVFREVSX09TUEVFRFIyX01zayAgICAgICAgDQojZGVmaW5lIEdQSU9fT1NQRUVERVJfT1NQRUVEUjJfMCAgICAgICAgICAgICAoMHgxVSA8PCBHUElPX09TUEVFREVSX09TUEVFRFIyX1BvcykgLyohPCAweDAwMDAwMDEwICovDQojZGVmaW5lIEdQSU9fT1NQRUVERVJfT1NQRUVEUjJfMSAgICAgICAgICAgICAoMHgyVSA8PCBHUElPX09TUEVFREVSX09TUEVFRFIyX1BvcykgLyohPCAweDAwMDAwMDIwICovDQoNCiNkZWZpbmUgR1BJT19PU1BFRURFUl9PU1BFRURSM19Qb3MgICAgICAgICAgICg2VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19PU1BFRURFUl9PU1BFRURSM19Nc2sgICAgICAgICAgICgweDNVIDw8IEdQSU9fT1NQRUVERVJfT1NQRUVEUjNfUG9zKSAvKiE8IDB4MDAwMDAwQzAgKi8NCiNkZWZpbmUgR1BJT19PU1BFRURFUl9PU1BFRURSMyAgICAgICAgICAgICAgIEdQSU9fT1NQRUVERVJfT1NQRUVEUjNfTXNrICAgICAgICANCiNkZWZpbmUgR1BJT19PU1BFRURFUl9PU1BFRURSM18wICAgICAgICAgICAgICgweDFVIDw8IEdQSU9fT1NQRUVERVJfT1NQRUVEUjNfUG9zKSAvKiE8IDB4MDAwMDAwNDAgKi8NCiNkZWZpbmUgR1BJT19PU1BFRURFUl9PU1BFRURSM18xICAgICAgICAgICAgICgweDJVIDw8IEdQSU9fT1NQRUVERVJfT1NQRUVEUjNfUG9zKSAvKiE8IDB4MDAwMDAwODAgKi8NCg0KI2RlZmluZSBHUElPX09TUEVFREVSX09TUEVFRFI0X1BvcyAgICAgICAgICAgKDhVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX09TUEVFREVSX09TUEVFRFI0X01zayAgICAgICAgICAgKDB4M1UgPDwgR1BJT19PU1BFRURFUl9PU1BFRURSNF9Qb3MpIC8qITwgMHgwMDAwMDMwMCAqLw0KI2RlZmluZSBHUElPX09TUEVFREVSX09TUEVFRFI0ICAgICAgICAgICAgICAgR1BJT19PU1BFRURFUl9PU1BFRURSNF9Nc2sgICAgICAgIA0KI2RlZmluZSBHUElPX09TUEVFREVSX09TUEVFRFI0XzAgICAgICAgICAgICAgKDB4MVUgPDwgR1BJT19PU1BFRURFUl9PU1BFRURSNF9Qb3MpIC8qITwgMHgwMDAwMDEwMCAqLw0KI2RlZmluZSBHUElPX09TUEVFREVSX09TUEVFRFI0XzEgICAgICAgICAgICAgKDB4MlUgPDwgR1BJT19PU1BFRURFUl9PU1BFRURSNF9Qb3MpIC8qITwgMHgwMDAwMDIwMCAqLw0KDQojZGVmaW5lIEdQSU9fT1NQRUVERVJfT1NQRUVEUjVfUG9zICAgICAgICAgICAoMTBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fT1NQRUVERVJfT1NQRUVEUjVfTXNrICAgICAgICAgICAoMHgzVSA8PCBHUElPX09TUEVFREVSX09TUEVFRFI1X1BvcykgLyohPCAweDAwMDAwQzAwICovDQojZGVmaW5lIEdQSU9fT1NQRUVERVJfT1NQRUVEUjUgICAgICAgICAgICAgICBHUElPX09TUEVFREVSX09TUEVFRFI1X01zayAgICAgICAgDQojZGVmaW5lIEdQSU9fT1NQRUVERVJfT1NQRUVEUjVfMCAgICAgICAgICAgICAoMHgxVSA8PCBHUElPX09TUEVFREVSX09TUEVFRFI1X1BvcykgLyohPCAweDAwMDAwNDAwICovDQojZGVmaW5lIEdQSU9fT1NQRUVERVJfT1NQRUVEUjVfMSAgICAgICAgICAgICAoMHgyVSA8PCBHUElPX09TUEVFREVSX09TUEVFRFI1X1BvcykgLyohPCAweDAwMDAwODAwICovDQoNCiNkZWZpbmUgR1BJT19PU1BFRURFUl9PU1BFRURSNl9Qb3MgICAgICAgICAgICgxMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19PU1BFRURFUl9PU1BFRURSNl9Nc2sgICAgICAgICAgICgweDNVIDw8IEdQSU9fT1NQRUVERVJfT1NQRUVEUjZfUG9zKSAvKiE8IDB4MDAwMDMwMDAgKi8NCiNkZWZpbmUgR1BJT19PU1BFRURFUl9PU1BFRURSNiAgICAgICAgICAgICAgIEdQSU9fT1NQRUVERVJfT1NQRUVEUjZfTXNrICAgICAgICANCiNkZWZpbmUgR1BJT19PU1BFRURFUl9PU1BFRURSNl8wICAgICAgICAgICAgICgweDFVIDw8IEdQSU9fT1NQRUVERVJfT1NQRUVEUjZfUG9zKSAvKiE8IDB4MDAwMDEwMDAgKi8NCiNkZWZpbmUgR1BJT19PU1BFRURFUl9PU1BFRURSNl8xICAgICAgICAgICAgICgweDJVIDw8IEdQSU9fT1NQRUVERVJfT1NQRUVEUjZfUG9zKSAvKiE8IDB4MDAwMDIwMDAgKi8NCg0KI2RlZmluZSBHUElPX09TUEVFREVSX09TUEVFRFI3X1BvcyAgICAgICAgICAgKDE0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX09TUEVFREVSX09TUEVFRFI3X01zayAgICAgICAgICAgKDB4M1UgPDwgR1BJT19PU1BFRURFUl9PU1BFRURSN19Qb3MpIC8qITwgMHgwMDAwQzAwMCAqLw0KI2RlZmluZSBHUElPX09TUEVFREVSX09TUEVFRFI3ICAgICAgICAgICAgICAgR1BJT19PU1BFRURFUl9PU1BFRURSN19Nc2sgICAgICAgIA0KI2RlZmluZSBHUElPX09TUEVFREVSX09TUEVFRFI3XzAgICAgICAgICAgICAgKDB4MVUgPDwgR1BJT19PU1BFRURFUl9PU1BFRURSN19Qb3MpIC8qITwgMHgwMDAwNDAwMCAqLw0KI2RlZmluZSBHUElPX09TUEVFREVSX09TUEVFRFI3XzEgICAgICAgICAgICAgKDB4MlUgPDwgR1BJT19PU1BFRURFUl9PU1BFRURSN19Qb3MpIC8qITwgMHgwMDAwODAwMCAqLw0KDQojZGVmaW5lIEdQSU9fT1NQRUVERVJfT1NQRUVEUjhfUG9zICAgICAgICAgICAoMTZVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fT1NQRUVERVJfT1NQRUVEUjhfTXNrICAgICAgICAgICAoMHgzVSA8PCBHUElPX09TUEVFREVSX09TUEVFRFI4X1BvcykgLyohPCAweDAwMDMwMDAwICovDQojZGVmaW5lIEdQSU9fT1NQRUVERVJfT1NQRUVEUjggICAgICAgICAgICAgICBHUElPX09TUEVFREVSX09TUEVFRFI4X01zayAgICAgICAgDQojZGVmaW5lIEdQSU9fT1NQRUVERVJfT1NQRUVEUjhfMCAgICAgICAgICAgICAoMHgxVSA8PCBHUElPX09TUEVFREVSX09TUEVFRFI4X1BvcykgLyohPCAweDAwMDEwMDAwICovDQojZGVmaW5lIEdQSU9fT1NQRUVERVJfT1NQRUVEUjhfMSAgICAgICAgICAgICAoMHgyVSA8PCBHUElPX09TUEVFREVSX09TUEVFRFI4X1BvcykgLyohPCAweDAwMDIwMDAwICovDQoNCiNkZWZpbmUgR1BJT19PU1BFRURFUl9PU1BFRURSOV9Qb3MgICAgICAgICAgICgxOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19PU1BFRURFUl9PU1BFRURSOV9Nc2sgICAgICAgICAgICgweDNVIDw8IEdQSU9fT1NQRUVERVJfT1NQRUVEUjlfUG9zKSAvKiE8IDB4MDAwQzAwMDAgKi8NCiNkZWZpbmUgR1BJT19PU1BFRURFUl9PU1BFRURSOSAgICAgICAgICAgICAgIEdQSU9fT1NQRUVERVJfT1NQRUVEUjlfTXNrICAgICAgICANCiNkZWZpbmUgR1BJT19PU1BFRURFUl9PU1BFRURSOV8wICAgICAgICAgICAgICgweDFVIDw8IEdQSU9fT1NQRUVERVJfT1NQRUVEUjlfUG9zKSAvKiE8IDB4MDAwNDAwMDAgKi8NCiNkZWZpbmUgR1BJT19PU1BFRURFUl9PU1BFRURSOV8xICAgICAgICAgICAgICgweDJVIDw8IEdQSU9fT1NQRUVERVJfT1NQRUVEUjlfUG9zKSAvKiE8IDB4MDAwODAwMDAgKi8NCg0KI2RlZmluZSBHUElPX09TUEVFREVSX09TUEVFRFIxMF9Qb3MgICAgICAgICAgKDIwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX09TUEVFREVSX09TUEVFRFIxMF9Nc2sgICAgICAgICAgKDB4M1UgPDwgR1BJT19PU1BFRURFUl9PU1BFRURSMTBfUG9zKSAvKiE8IDB4MDAzMDAwMDAgKi8NCiNkZWZpbmUgR1BJT19PU1BFRURFUl9PU1BFRURSMTAgICAgICAgICAgICAgIEdQSU9fT1NQRUVERVJfT1NQRUVEUjEwX01zayAgICAgICANCiNkZWZpbmUgR1BJT19PU1BFRURFUl9PU1BFRURSMTBfMCAgICAgICAgICAgICgweDFVIDw8IEdQSU9fT1NQRUVERVJfT1NQRUVEUjEwX1BvcykgLyohPCAweDAwMTAwMDAwICovDQojZGVmaW5lIEdQSU9fT1NQRUVERVJfT1NQRUVEUjEwXzEgICAgICAgICAgICAoMHgyVSA8PCBHUElPX09TUEVFREVSX09TUEVFRFIxMF9Qb3MpIC8qITwgMHgwMDIwMDAwMCAqLw0KDQojZGVmaW5lIEdQSU9fT1NQRUVERVJfT1NQRUVEUjExX1BvcyAgICAgICAgICAoMjJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fT1NQRUVERVJfT1NQRUVEUjExX01zayAgICAgICAgICAoMHgzVSA8PCBHUElPX09TUEVFREVSX09TUEVFRFIxMV9Qb3MpIC8qITwgMHgwMEMwMDAwMCAqLw0KI2RlZmluZSBHUElPX09TUEVFREVSX09TUEVFRFIxMSAgICAgICAgICAgICAgR1BJT19PU1BFRURFUl9PU1BFRURSMTFfTXNrICAgICAgIA0KI2RlZmluZSBHUElPX09TUEVFREVSX09TUEVFRFIxMV8wICAgICAgICAgICAgKDB4MVUgPDwgR1BJT19PU1BFRURFUl9PU1BFRURSMTFfUG9zKSAvKiE8IDB4MDA0MDAwMDAgKi8NCiNkZWZpbmUgR1BJT19PU1BFRURFUl9PU1BFRURSMTFfMSAgICAgICAgICAgICgweDJVIDw8IEdQSU9fT1NQRUVERVJfT1NQRUVEUjExX1BvcykgLyohPCAweDAwODAwMDAwICovDQoNCiNkZWZpbmUgR1BJT19PU1BFRURFUl9PU1BFRURSMTJfUG9zICAgICAgICAgICgyNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19PU1BFRURFUl9PU1BFRURSMTJfTXNrICAgICAgICAgICgweDNVIDw8IEdQSU9fT1NQRUVERVJfT1NQRUVEUjEyX1BvcykgLyohPCAweDAzMDAwMDAwICovDQojZGVmaW5lIEdQSU9fT1NQRUVERVJfT1NQRUVEUjEyICAgICAgICAgICAgICBHUElPX09TUEVFREVSX09TUEVFRFIxMl9Nc2sgICAgICAgDQojZGVmaW5lIEdQSU9fT1NQRUVERVJfT1NQRUVEUjEyXzAgICAgICAgICAgICAoMHgxVSA8PCBHUElPX09TUEVFREVSX09TUEVFRFIxMl9Qb3MpIC8qITwgMHgwMTAwMDAwMCAqLw0KI2RlZmluZSBHUElPX09TUEVFREVSX09TUEVFRFIxMl8xICAgICAgICAgICAgKDB4MlUgPDwgR1BJT19PU1BFRURFUl9PU1BFRURSMTJfUG9zKSAvKiE8IDB4MDIwMDAwMDAgKi8NCg0KI2RlZmluZSBHUElPX09TUEVFREVSX09TUEVFRFIxM19Qb3MgICAgICAgICAgKDI2VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX09TUEVFREVSX09TUEVFRFIxM19Nc2sgICAgICAgICAgKDB4M1UgPDwgR1BJT19PU1BFRURFUl9PU1BFRURSMTNfUG9zKSAvKiE8IDB4MEMwMDAwMDAgKi8NCiNkZWZpbmUgR1BJT19PU1BFRURFUl9PU1BFRURSMTMgICAgICAgICAgICAgIEdQSU9fT1NQRUVERVJfT1NQRUVEUjEzX01zayAgICAgICANCiNkZWZpbmUgR1BJT19PU1BFRURFUl9PU1BFRURSMTNfMCAgICAgICAgICAgICgweDFVIDw8IEdQSU9fT1NQRUVERVJfT1NQRUVEUjEzX1BvcykgLyohPCAweDA0MDAwMDAwICovDQojZGVmaW5lIEdQSU9fT1NQRUVERVJfT1NQRUVEUjEzXzEgICAgICAgICAgICAoMHgyVSA8PCBHUElPX09TUEVFREVSX09TUEVFRFIxM19Qb3MpIC8qITwgMHgwODAwMDAwMCAqLw0KDQojZGVmaW5lIEdQSU9fT1NQRUVERVJfT1NQRUVEUjE0X1BvcyAgICAgICAgICAoMjhVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fT1NQRUVERVJfT1NQRUVEUjE0X01zayAgICAgICAgICAoMHgzVSA8PCBHUElPX09TUEVFREVSX09TUEVFRFIxNF9Qb3MpIC8qITwgMHgzMDAwMDAwMCAqLw0KI2RlZmluZSBHUElPX09TUEVFREVSX09TUEVFRFIxNCAgICAgICAgICAgICAgR1BJT19PU1BFRURFUl9PU1BFRURSMTRfTXNrICAgICAgIA0KI2RlZmluZSBHUElPX09TUEVFREVSX09TUEVFRFIxNF8wICAgICAgICAgICAgKDB4MVUgPDwgR1BJT19PU1BFRURFUl9PU1BFRURSMTRfUG9zKSAvKiE8IDB4MTAwMDAwMDAgKi8NCiNkZWZpbmUgR1BJT19PU1BFRURFUl9PU1BFRURSMTRfMSAgICAgICAgICAgICgweDJVIDw8IEdQSU9fT1NQRUVERVJfT1NQRUVEUjE0X1BvcykgLyohPCAweDIwMDAwMDAwICovDQoNCiNkZWZpbmUgR1BJT19PU1BFRURFUl9PU1BFRURSMTVfUG9zICAgICAgICAgICgzMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19PU1BFRURFUl9PU1BFRURSMTVfTXNrICAgICAgICAgICgweDNVIDw8IEdQSU9fT1NQRUVERVJfT1NQRUVEUjE1X1BvcykgLyohPCAweEMwMDAwMDAwICovDQojZGVmaW5lIEdQSU9fT1NQRUVERVJfT1NQRUVEUjE1ICAgICAgICAgICAgICBHUElPX09TUEVFREVSX09TUEVFRFIxNV9Nc2sgICAgICAgDQojZGVmaW5lIEdQSU9fT1NQRUVERVJfT1NQRUVEUjE1XzAgICAgICAgICAgICAoMHgxVSA8PCBHUElPX09TUEVFREVSX09TUEVFRFIxNV9Qb3MpIC8qITwgMHg0MDAwMDAwMCAqLw0KI2RlZmluZSBHUElPX09TUEVFREVSX09TUEVFRFIxNV8xICAgICAgICAgICAgKDB4MlUgPDwgR1BJT19PU1BFRURFUl9PU1BFRURSMTVfUG9zKSAvKiE8IDB4ODAwMDAwMDAgKi8NCg0KLyoqKioqKioqKioqKioqKioqKiAgQml0cyBkZWZpbml0aW9uIGZvciBHUElPX1BVUERSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgR1BJT19QVVBEUl9QVVBEUjBfUG9zICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19QVVBEUl9QVVBEUjBfTXNrICAgICAgICAgICAgICAgICgweDNVIDw8IEdQSU9fUFVQRFJfUFVQRFIwX1BvcykgICAvKiE8IDB4MDAwMDAwMDMgKi8NCiNkZWZpbmUgR1BJT19QVVBEUl9QVVBEUjAgICAgICAgICAgICAgICAgICAgIEdQSU9fUFVQRFJfUFVQRFIwX01zayAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19QVVBEUl9QVVBEUjBfMCAgICAgICAgICAgICAgICAgICgweDFVIDw8IEdQSU9fUFVQRFJfUFVQRFIwX1BvcykgICAvKiE8IDB4MDAwMDAwMDEgKi8NCiNkZWZpbmUgR1BJT19QVVBEUl9QVVBEUjBfMSAgICAgICAgICAgICAgICAgICgweDJVIDw8IEdQSU9fUFVQRFJfUFVQRFIwX1BvcykgICAvKiE8IDB4MDAwMDAwMDIgKi8NCg0KI2RlZmluZSBHUElPX1BVUERSX1BVUERSMV9Qb3MgICAgICAgICAgICAgICAgKDJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX1BVUERSX1BVUERSMV9Nc2sgICAgICAgICAgICAgICAgKDB4M1UgPDwgR1BJT19QVVBEUl9QVVBEUjFfUG9zKSAgIC8qITwgMHgwMDAwMDAwQyAqLw0KI2RlZmluZSBHUElPX1BVUERSX1BVUERSMSAgICAgICAgICAgICAgICAgICAgR1BJT19QVVBEUl9QVVBEUjFfTXNrICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX1BVUERSX1BVUERSMV8wICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgR1BJT19QVVBEUl9QVVBEUjFfUG9zKSAgIC8qITwgMHgwMDAwMDAwNCAqLw0KI2RlZmluZSBHUElPX1BVUERSX1BVUERSMV8xICAgICAgICAgICAgICAgICAgKDB4MlUgPDwgR1BJT19QVVBEUl9QVVBEUjFfUG9zKSAgIC8qITwgMHgwMDAwMDAwOCAqLw0KDQojZGVmaW5lIEdQSU9fUFVQRFJfUFVQRFIyX1BvcyAgICAgICAgICAgICAgICAoNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fUFVQRFJfUFVQRFIyX01zayAgICAgICAgICAgICAgICAoMHgzVSA8PCBHUElPX1BVUERSX1BVUERSMl9Qb3MpICAgLyohPCAweDAwMDAwMDMwICovDQojZGVmaW5lIEdQSU9fUFVQRFJfUFVQRFIyICAgICAgICAgICAgICAgICAgICBHUElPX1BVUERSX1BVUERSMl9Nc2sgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fUFVQRFJfUFVQRFIyXzAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBHUElPX1BVUERSX1BVUERSMl9Qb3MpICAgLyohPCAweDAwMDAwMDEwICovDQojZGVmaW5lIEdQSU9fUFVQRFJfUFVQRFIyXzEgICAgICAgICAgICAgICAgICAoMHgyVSA8PCBHUElPX1BVUERSX1BVUERSMl9Qb3MpICAgLyohPCAweDAwMDAwMDIwICovDQoNCiNkZWZpbmUgR1BJT19QVVBEUl9QVVBEUjNfUG9zICAgICAgICAgICAgICAgICg2VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19QVVBEUl9QVVBEUjNfTXNrICAgICAgICAgICAgICAgICgweDNVIDw8IEdQSU9fUFVQRFJfUFVQRFIzX1BvcykgICAvKiE8IDB4MDAwMDAwQzAgKi8NCiNkZWZpbmUgR1BJT19QVVBEUl9QVVBEUjMgICAgICAgICAgICAgICAgICAgIEdQSU9fUFVQRFJfUFVQRFIzX01zayAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19QVVBEUl9QVVBEUjNfMCAgICAgICAgICAgICAgICAgICgweDFVIDw8IEdQSU9fUFVQRFJfUFVQRFIzX1BvcykgICAvKiE8IDB4MDAwMDAwNDAgKi8NCiNkZWZpbmUgR1BJT19QVVBEUl9QVVBEUjNfMSAgICAgICAgICAgICAgICAgICgweDJVIDw8IEdQSU9fUFVQRFJfUFVQRFIzX1BvcykgICAvKiE8IDB4MDAwMDAwODAgKi8NCg0KI2RlZmluZSBHUElPX1BVUERSX1BVUERSNF9Qb3MgICAgICAgICAgICAgICAgKDhVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX1BVUERSX1BVUERSNF9Nc2sgICAgICAgICAgICAgICAgKDB4M1UgPDwgR1BJT19QVVBEUl9QVVBEUjRfUG9zKSAgIC8qITwgMHgwMDAwMDMwMCAqLw0KI2RlZmluZSBHUElPX1BVUERSX1BVUERSNCAgICAgICAgICAgICAgICAgICAgR1BJT19QVVBEUl9QVVBEUjRfTXNrICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX1BVUERSX1BVUERSNF8wICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgR1BJT19QVVBEUl9QVVBEUjRfUG9zKSAgIC8qITwgMHgwMDAwMDEwMCAqLw0KI2RlZmluZSBHUElPX1BVUERSX1BVUERSNF8xICAgICAgICAgICAgICAgICAgKDB4MlUgPDwgR1BJT19QVVBEUl9QVVBEUjRfUG9zKSAgIC8qITwgMHgwMDAwMDIwMCAqLw0KDQojZGVmaW5lIEdQSU9fUFVQRFJfUFVQRFI1X1BvcyAgICAgICAgICAgICAgICAoMTBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fUFVQRFJfUFVQRFI1X01zayAgICAgICAgICAgICAgICAoMHgzVSA8PCBHUElPX1BVUERSX1BVUERSNV9Qb3MpICAgLyohPCAweDAwMDAwQzAwICovDQojZGVmaW5lIEdQSU9fUFVQRFJfUFVQRFI1ICAgICAgICAgICAgICAgICAgICBHUElPX1BVUERSX1BVUERSNV9Nc2sgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fUFVQRFJfUFVQRFI1XzAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBHUElPX1BVUERSX1BVUERSNV9Qb3MpICAgLyohPCAweDAwMDAwNDAwICovDQojZGVmaW5lIEdQSU9fUFVQRFJfUFVQRFI1XzEgICAgICAgICAgICAgICAgICAoMHgyVSA8PCBHUElPX1BVUERSX1BVUERSNV9Qb3MpICAgLyohPCAweDAwMDAwODAwICovDQoNCiNkZWZpbmUgR1BJT19QVVBEUl9QVVBEUjZfUG9zICAgICAgICAgICAgICAgICgxMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19QVVBEUl9QVVBEUjZfTXNrICAgICAgICAgICAgICAgICgweDNVIDw8IEdQSU9fUFVQRFJfUFVQRFI2X1BvcykgICAvKiE8IDB4MDAwMDMwMDAgKi8NCiNkZWZpbmUgR1BJT19QVVBEUl9QVVBEUjYgICAgICAgICAgICAgICAgICAgIEdQSU9fUFVQRFJfUFVQRFI2X01zayAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19QVVBEUl9QVVBEUjZfMCAgICAgICAgICAgICAgICAgICgweDFVIDw8IEdQSU9fUFVQRFJfUFVQRFI2X1BvcykgICAvKiE8IDB4MDAwMDEwMDAgKi8NCiNkZWZpbmUgR1BJT19QVVBEUl9QVVBEUjZfMSAgICAgICAgICAgICAgICAgICgweDJVIDw8IEdQSU9fUFVQRFJfUFVQRFI2X1BvcykgICAvKiE8IDB4MDAwMDIwMDAgKi8NCg0KI2RlZmluZSBHUElPX1BVUERSX1BVUERSN19Qb3MgICAgICAgICAgICAgICAgKDE0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX1BVUERSX1BVUERSN19Nc2sgICAgICAgICAgICAgICAgKDB4M1UgPDwgR1BJT19QVVBEUl9QVVBEUjdfUG9zKSAgIC8qITwgMHgwMDAwQzAwMCAqLw0KI2RlZmluZSBHUElPX1BVUERSX1BVUERSNyAgICAgICAgICAgICAgICAgICAgR1BJT19QVVBEUl9QVVBEUjdfTXNrICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX1BVUERSX1BVUERSN18wICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgR1BJT19QVVBEUl9QVVBEUjdfUG9zKSAgIC8qITwgMHgwMDAwNDAwMCAqLw0KI2RlZmluZSBHUElPX1BVUERSX1BVUERSN18xICAgICAgICAgICAgICAgICAgKDB4MlUgPDwgR1BJT19QVVBEUl9QVVBEUjdfUG9zKSAgIC8qITwgMHgwMDAwODAwMCAqLw0KDQojZGVmaW5lIEdQSU9fUFVQRFJfUFVQRFI4X1BvcyAgICAgICAgICAgICAgICAoMTZVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fUFVQRFJfUFVQRFI4X01zayAgICAgICAgICAgICAgICAoMHgzVSA8PCBHUElPX1BVUERSX1BVUERSOF9Qb3MpICAgLyohPCAweDAwMDMwMDAwICovDQojZGVmaW5lIEdQSU9fUFVQRFJfUFVQRFI4ICAgICAgICAgICAgICAgICAgICBHUElPX1BVUERSX1BVUERSOF9Nc2sgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fUFVQRFJfUFVQRFI4XzAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBHUElPX1BVUERSX1BVUERSOF9Qb3MpICAgLyohPCAweDAwMDEwMDAwICovDQojZGVmaW5lIEdQSU9fUFVQRFJfUFVQRFI4XzEgICAgICAgICAgICAgICAgICAoMHgyVSA8PCBHUElPX1BVUERSX1BVUERSOF9Qb3MpICAgLyohPCAweDAwMDIwMDAwICovDQoNCiNkZWZpbmUgR1BJT19QVVBEUl9QVVBEUjlfUG9zICAgICAgICAgICAgICAgICgxOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19QVVBEUl9QVVBEUjlfTXNrICAgICAgICAgICAgICAgICgweDNVIDw8IEdQSU9fUFVQRFJfUFVQRFI5X1BvcykgICAvKiE8IDB4MDAwQzAwMDAgKi8NCiNkZWZpbmUgR1BJT19QVVBEUl9QVVBEUjkgICAgICAgICAgICAgICAgICAgIEdQSU9fUFVQRFJfUFVQRFI5X01zayAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19QVVBEUl9QVVBEUjlfMCAgICAgICAgICAgICAgICAgICgweDFVIDw8IEdQSU9fUFVQRFJfUFVQRFI5X1BvcykgICAvKiE8IDB4MDAwNDAwMDAgKi8NCiNkZWZpbmUgR1BJT19QVVBEUl9QVVBEUjlfMSAgICAgICAgICAgICAgICAgICgweDJVIDw8IEdQSU9fUFVQRFJfUFVQRFI5X1BvcykgICAvKiE8IDB4MDAwODAwMDAgKi8NCg0KI2RlZmluZSBHUElPX1BVUERSX1BVUERSMTBfUG9zICAgICAgICAgICAgICAgKDIwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX1BVUERSX1BVUERSMTBfTXNrICAgICAgICAgICAgICAgKDB4M1UgPDwgR1BJT19QVVBEUl9QVVBEUjEwX1BvcykgIC8qITwgMHgwMDMwMDAwMCAqLw0KI2RlZmluZSBHUElPX1BVUERSX1BVUERSMTAgICAgICAgICAgICAgICAgICAgR1BJT19QVVBEUl9QVVBEUjEwX01zayAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX1BVUERSX1BVUERSMTBfMCAgICAgICAgICAgICAgICAgKDB4MVUgPDwgR1BJT19QVVBEUl9QVVBEUjEwX1BvcykgIC8qITwgMHgwMDEwMDAwMCAqLw0KI2RlZmluZSBHUElPX1BVUERSX1BVUERSMTBfMSAgICAgICAgICAgICAgICAgKDB4MlUgPDwgR1BJT19QVVBEUl9QVVBEUjEwX1BvcykgIC8qITwgMHgwMDIwMDAwMCAqLw0KDQojZGVmaW5lIEdQSU9fUFVQRFJfUFVQRFIxMV9Qb3MgICAgICAgICAgICAgICAoMjJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fUFVQRFJfUFVQRFIxMV9Nc2sgICAgICAgICAgICAgICAoMHgzVSA8PCBHUElPX1BVUERSX1BVUERSMTFfUG9zKSAgLyohPCAweDAwQzAwMDAwICovDQojZGVmaW5lIEdQSU9fUFVQRFJfUFVQRFIxMSAgICAgICAgICAgICAgICAgICBHUElPX1BVUERSX1BVUERSMTFfTXNrICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fUFVQRFJfUFVQRFIxMV8wICAgICAgICAgICAgICAgICAoMHgxVSA8PCBHUElPX1BVUERSX1BVUERSMTFfUG9zKSAgLyohPCAweDAwNDAwMDAwICovDQojZGVmaW5lIEdQSU9fUFVQRFJfUFVQRFIxMV8xICAgICAgICAgICAgICAgICAoMHgyVSA8PCBHUElPX1BVUERSX1BVUERSMTFfUG9zKSAgLyohPCAweDAwODAwMDAwICovDQoNCiNkZWZpbmUgR1BJT19QVVBEUl9QVVBEUjEyX1BvcyAgICAgICAgICAgICAgICgyNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19QVVBEUl9QVVBEUjEyX01zayAgICAgICAgICAgICAgICgweDNVIDw8IEdQSU9fUFVQRFJfUFVQRFIxMl9Qb3MpICAvKiE8IDB4MDMwMDAwMDAgKi8NCiNkZWZpbmUgR1BJT19QVVBEUl9QVVBEUjEyICAgICAgICAgICAgICAgICAgIEdQSU9fUFVQRFJfUFVQRFIxMl9Nc2sgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19QVVBEUl9QVVBEUjEyXzAgICAgICAgICAgICAgICAgICgweDFVIDw8IEdQSU9fUFVQRFJfUFVQRFIxMl9Qb3MpICAvKiE8IDB4MDEwMDAwMDAgKi8NCiNkZWZpbmUgR1BJT19QVVBEUl9QVVBEUjEyXzEgICAgICAgICAgICAgICAgICgweDJVIDw8IEdQSU9fUFVQRFJfUFVQRFIxMl9Qb3MpICAvKiE8IDB4MDIwMDAwMDAgKi8NCg0KI2RlZmluZSBHUElPX1BVUERSX1BVUERSMTNfUG9zICAgICAgICAgICAgICAgKDI2VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX1BVUERSX1BVUERSMTNfTXNrICAgICAgICAgICAgICAgKDB4M1UgPDwgR1BJT19QVVBEUl9QVVBEUjEzX1BvcykgIC8qITwgMHgwQzAwMDAwMCAqLw0KI2RlZmluZSBHUElPX1BVUERSX1BVUERSMTMgICAgICAgICAgICAgICAgICAgR1BJT19QVVBEUl9QVVBEUjEzX01zayAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX1BVUERSX1BVUERSMTNfMCAgICAgICAgICAgICAgICAgKDB4MVUgPDwgR1BJT19QVVBEUl9QVVBEUjEzX1BvcykgIC8qITwgMHgwNDAwMDAwMCAqLw0KI2RlZmluZSBHUElPX1BVUERSX1BVUERSMTNfMSAgICAgICAgICAgICAgICAgKDB4MlUgPDwgR1BJT19QVVBEUl9QVVBEUjEzX1BvcykgIC8qITwgMHgwODAwMDAwMCAqLw0KDQojZGVmaW5lIEdQSU9fUFVQRFJfUFVQRFIxNF9Qb3MgICAgICAgICAgICAgICAoMjhVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fUFVQRFJfUFVQRFIxNF9Nc2sgICAgICAgICAgICAgICAoMHgzVSA8PCBHUElPX1BVUERSX1BVUERSMTRfUG9zKSAgLyohPCAweDMwMDAwMDAwICovDQojZGVmaW5lIEdQSU9fUFVQRFJfUFVQRFIxNCAgICAgICAgICAgICAgICAgICBHUElPX1BVUERSX1BVUERSMTRfTXNrICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fUFVQRFJfUFVQRFIxNF8wICAgICAgICAgICAgICAgICAoMHgxVSA8PCBHUElPX1BVUERSX1BVUERSMTRfUG9zKSAgLyohPCAweDEwMDAwMDAwICovDQojZGVmaW5lIEdQSU9fUFVQRFJfUFVQRFIxNF8xICAgICAgICAgICAgICAgICAoMHgyVSA8PCBHUElPX1BVUERSX1BVUERSMTRfUG9zKSAgLyohPCAweDIwMDAwMDAwICovDQojZGVmaW5lIEdQSU9fUFVQRFJfUFVQRFIxNV9Qb3MgICAgICAgICAgICAgICAoMzBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fUFVQRFJfUFVQRFIxNV9Nc2sgICAgICAgICAgICAgICAoMHgzVSA8PCBHUElPX1BVUERSX1BVUERSMTVfUG9zKSAgLyohPCAweEMwMDAwMDAwICovDQojZGVmaW5lIEdQSU9fUFVQRFJfUFVQRFIxNSAgICAgICAgICAgICAgICAgICBHUElPX1BVUERSX1BVUERSMTVfTXNrICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fUFVQRFJfUFVQRFIxNV8wICAgICAgICAgICAgICAgICAoMHgxVSA8PCBHUElPX1BVUERSX1BVUERSMTVfUG9zKSAgLyohPCAweDQwMDAwMDAwICovDQojZGVmaW5lIEdQSU9fUFVQRFJfUFVQRFIxNV8xICAgICAgICAgICAgICAgICAoMHgyVSA8PCBHUElPX1BVUERSX1BVUERSMTVfUG9zKSAgLyohPCAweDgwMDAwMDAwICovDQoNCi8qKioqKioqKioqKioqKioqKiogIEJpdHMgZGVmaW5pdGlvbiBmb3IgR1BJT19JRFIgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIEdQSU9fSURSX0lEUl8wICAgICAgICAgICAgICAgICAgICAgICAoMHgwMDAwMDAwMVUpICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fSURSX0lEUl8xICAgICAgICAgICAgICAgICAgICAgICAoMHgwMDAwMDAwMlUpICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fSURSX0lEUl8yICAgICAgICAgICAgICAgICAgICAgICAoMHgwMDAwMDAwNFUpICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fSURSX0lEUl8zICAgICAgICAgICAgICAgICAgICAgICAoMHgwMDAwMDAwOFUpICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fSURSX0lEUl80ICAgICAgICAgICAgICAgICAgICAgICAoMHgwMDAwMDAxMFUpICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fSURSX0lEUl81ICAgICAgICAgICAgICAgICAgICAgICAoMHgwMDAwMDAyMFUpICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fSURSX0lEUl82ICAgICAgICAgICAgICAgICAgICAgICAoMHgwMDAwMDA0MFUpICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fSURSX0lEUl83ICAgICAgICAgICAgICAgICAgICAgICAoMHgwMDAwMDA4MFUpICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fSURSX0lEUl84ICAgICAgICAgICAgICAgICAgICAgICAoMHgwMDAwMDEwMFUpICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fSURSX0lEUl85ICAgICAgICAgICAgICAgICAgICAgICAoMHgwMDAwMDIwMFUpICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fSURSX0lEUl8xMCAgICAgICAgICAgICAgICAgICAgICAoMHgwMDAwMDQwMFUpICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fSURSX0lEUl8xMSAgICAgICAgICAgICAgICAgICAgICAoMHgwMDAwMDgwMFUpICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fSURSX0lEUl8xMiAgICAgICAgICAgICAgICAgICAgICAoMHgwMDAwMTAwMFUpICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fSURSX0lEUl8xMyAgICAgICAgICAgICAgICAgICAgICAoMHgwMDAwMjAwMFUpICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fSURSX0lEUl8xNCAgICAgICAgICAgICAgICAgICAgICAoMHgwMDAwNDAwMFUpICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fSURSX0lEUl8xNSAgICAgICAgICAgICAgICAgICAgICAoMHgwMDAwODAwMFUpICAgICAgICAgICAgICAgICAgICAgDQoNCi8qKioqKioqKioqKioqKioqKiogIEJpdHMgZGVmaW5pdGlvbiBmb3IgR1BJT19PRFIgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIEdQSU9fT0RSX09EUl8wICAgICAgICAgICAgICAgICAgICAgICAoMHgwMDAwMDAwMVUpICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fT0RSX09EUl8xICAgICAgICAgICAgICAgICAgICAgICAoMHgwMDAwMDAwMlUpICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fT0RSX09EUl8yICAgICAgICAgICAgICAgICAgICAgICAoMHgwMDAwMDAwNFUpICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fT0RSX09EUl8zICAgICAgICAgICAgICAgICAgICAgICAoMHgwMDAwMDAwOFUpICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fT0RSX09EUl80ICAgICAgICAgICAgICAgICAgICAgICAoMHgwMDAwMDAxMFUpICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fT0RSX09EUl81ICAgICAgICAgICAgICAgICAgICAgICAoMHgwMDAwMDAyMFUpICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fT0RSX09EUl82ICAgICAgICAgICAgICAgICAgICAgICAoMHgwMDAwMDA0MFUpICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fT0RSX09EUl83ICAgICAgICAgICAgICAgICAgICAgICAoMHgwMDAwMDA4MFUpICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fT0RSX09EUl84ICAgICAgICAgICAgICAgICAgICAgICAoMHgwMDAwMDEwMFUpICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fT0RSX09EUl85ICAgICAgICAgICAgICAgICAgICAgICAoMHgwMDAwMDIwMFUpICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fT0RSX09EUl8xMCAgICAgICAgICAgICAgICAgICAgICAoMHgwMDAwMDQwMFUpICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fT0RSX09EUl8xMSAgICAgICAgICAgICAgICAgICAgICAoMHgwMDAwMDgwMFUpICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fT0RSX09EUl8xMiAgICAgICAgICAgICAgICAgICAgICAoMHgwMDAwMTAwMFUpICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fT0RSX09EUl8xMyAgICAgICAgICAgICAgICAgICAgICAoMHgwMDAwMjAwMFUpICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fT0RSX09EUl8xNCAgICAgICAgICAgICAgICAgICAgICAoMHgwMDAwNDAwMFUpICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fT0RSX09EUl8xNSAgICAgICAgICAgICAgICAgICAgICAoMHgwMDAwODAwMFUpICAgICAgICAgICAgICAgICAgICAgDQoNCi8qKioqKioqKioqKioqKioqKiogIEJpdHMgZGVmaW5pdGlvbiBmb3IgR1BJT19CU1JSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIEdQSU9fQlNSUl9CU18wICAgICAgICAgICAgICAgICAgICAgICAoMHgwMDAwMDAwMVUpICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fQlNSUl9CU18xICAgICAgICAgICAgICAgICAgICAgICAoMHgwMDAwMDAwMlUpICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fQlNSUl9CU18yICAgICAgICAgICAgICAgICAgICAgICAoMHgwMDAwMDAwNFUpICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fQlNSUl9CU18zICAgICAgICAgICAgICAgICAgICAgICAoMHgwMDAwMDAwOFUpICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fQlNSUl9CU180ICAgICAgICAgICAgICAgICAgICAgICAoMHgwMDAwMDAxMFUpICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fQlNSUl9CU181ICAgICAgICAgICAgICAgICAgICAgICAoMHgwMDAwMDAyMFUpICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fQlNSUl9CU182ICAgICAgICAgICAgICAgICAgICAgICAoMHgwMDAwMDA0MFUpICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fQlNSUl9CU183ICAgICAgICAgICAgICAgICAgICAgICAoMHgwMDAwMDA4MFUpICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fQlNSUl9CU184ICAgICAgICAgICAgICAgICAgICAgICAoMHgwMDAwMDEwMFUpICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fQlNSUl9CU185ICAgICAgICAgICAgICAgICAgICAgICAoMHgwMDAwMDIwMFUpICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fQlNSUl9CU18xMCAgICAgICAgICAgICAgICAgICAgICAoMHgwMDAwMDQwMFUpICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fQlNSUl9CU18xMSAgICAgICAgICAgICAgICAgICAgICAoMHgwMDAwMDgwMFUpICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fQlNSUl9CU18xMiAgICAgICAgICAgICAgICAgICAgICAoMHgwMDAwMTAwMFUpICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fQlNSUl9CU18xMyAgICAgICAgICAgICAgICAgICAgICAoMHgwMDAwMjAwMFUpICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fQlNSUl9CU18xNCAgICAgICAgICAgICAgICAgICAgICAoMHgwMDAwNDAwMFUpICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fQlNSUl9CU18xNSAgICAgICAgICAgICAgICAgICAgICAoMHgwMDAwODAwMFUpICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fQlNSUl9CUl8wICAgICAgICAgICAgICAgICAgICAgICAoMHgwMDAxMDAwMFUpICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fQlNSUl9CUl8xICAgICAgICAgICAgICAgICAgICAgICAoMHgwMDAyMDAwMFUpICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fQlNSUl9CUl8yICAgICAgICAgICAgICAgICAgICAgICAoMHgwMDA0MDAwMFUpICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fQlNSUl9CUl8zICAgICAgICAgICAgICAgICAgICAgICAoMHgwMDA4MDAwMFUpICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fQlNSUl9CUl80ICAgICAgICAgICAgICAgICAgICAgICAoMHgwMDEwMDAwMFUpICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fQlNSUl9CUl81ICAgICAgICAgICAgICAgICAgICAgICAoMHgwMDIwMDAwMFUpICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fQlNSUl9CUl82ICAgICAgICAgICAgICAgICAgICAgICAoMHgwMDQwMDAwMFUpICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fQlNSUl9CUl83ICAgICAgICAgICAgICAgICAgICAgICAoMHgwMDgwMDAwMFUpICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fQlNSUl9CUl84ICAgICAgICAgICAgICAgICAgICAgICAoMHgwMTAwMDAwMFUpICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fQlNSUl9CUl85ICAgICAgICAgICAgICAgICAgICAgICAoMHgwMjAwMDAwMFUpICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fQlNSUl9CUl8xMCAgICAgICAgICAgICAgICAgICAgICAoMHgwNDAwMDAwMFUpICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fQlNSUl9CUl8xMSAgICAgICAgICAgICAgICAgICAgICAoMHgwODAwMDAwMFUpICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fQlNSUl9CUl8xMiAgICAgICAgICAgICAgICAgICAgICAoMHgxMDAwMDAwMFUpICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fQlNSUl9CUl8xMyAgICAgICAgICAgICAgICAgICAgICAoMHgyMDAwMDAwMFUpICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fQlNSUl9CUl8xNCAgICAgICAgICAgICAgICAgICAgICAoMHg0MDAwMDAwMFUpICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fQlNSUl9CUl8xNSAgICAgICAgICAgICAgICAgICAgICAoMHg4MDAwMDAwMFUpICAgICAgICAgICAgICAgICAgICAgDQoNCi8qKioqKioqKioqKioqKioqKiogQml0IGRlZmluaXRpb24gZm9yIEdQSU9fTENLUiByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIEdQSU9fTENLUl9MQ0swX1BvcyAgICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fTENLUl9MQ0swX01zayAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBHUElPX0xDS1JfTENLMF9Qb3MpICAgICAgLyohPCAweDAwMDAwMDAxICovDQojZGVmaW5lIEdQSU9fTENLUl9MQ0swICAgICAgICAgICAgICAgICAgICAgICBHUElPX0xDS1JfTENLMF9Nc2sgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fTENLUl9MQ0sxX1BvcyAgICAgICAgICAgICAgICAgICAoMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fTENLUl9MQ0sxX01zayAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBHUElPX0xDS1JfTENLMV9Qb3MpICAgICAgLyohPCAweDAwMDAwMDAyICovDQojZGVmaW5lIEdQSU9fTENLUl9MQ0sxICAgICAgICAgICAgICAgICAgICAgICBHUElPX0xDS1JfTENLMV9Nc2sgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fTENLUl9MQ0syX1BvcyAgICAgICAgICAgICAgICAgICAoMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fTENLUl9MQ0syX01zayAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBHUElPX0xDS1JfTENLMl9Qb3MpICAgICAgLyohPCAweDAwMDAwMDA0ICovDQojZGVmaW5lIEdQSU9fTENLUl9MQ0syICAgICAgICAgICAgICAgICAgICAgICBHUElPX0xDS1JfTENLMl9Nc2sgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fTENLUl9MQ0szX1BvcyAgICAgICAgICAgICAgICAgICAoM1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fTENLUl9MQ0szX01zayAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBHUElPX0xDS1JfTENLM19Qb3MpICAgICAgLyohPCAweDAwMDAwMDA4ICovDQojZGVmaW5lIEdQSU9fTENLUl9MQ0szICAgICAgICAgICAgICAgICAgICAgICBHUElPX0xDS1JfTENLM19Nc2sgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fTENLUl9MQ0s0X1BvcyAgICAgICAgICAgICAgICAgICAoNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fTENLUl9MQ0s0X01zayAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBHUElPX0xDS1JfTENLNF9Qb3MpICAgICAgLyohPCAweDAwMDAwMDEwICovDQojZGVmaW5lIEdQSU9fTENLUl9MQ0s0ICAgICAgICAgICAgICAgICAgICAgICBHUElPX0xDS1JfTENLNF9Nc2sgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fTENLUl9MQ0s1X1BvcyAgICAgICAgICAgICAgICAgICAoNVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fTENLUl9MQ0s1X01zayAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBHUElPX0xDS1JfTENLNV9Qb3MpICAgICAgLyohPCAweDAwMDAwMDIwICovDQojZGVmaW5lIEdQSU9fTENLUl9MQ0s1ICAgICAgICAgICAgICAgICAgICAgICBHUElPX0xDS1JfTENLNV9Nc2sgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fTENLUl9MQ0s2X1BvcyAgICAgICAgICAgICAgICAgICAoNlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fTENLUl9MQ0s2X01zayAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBHUElPX0xDS1JfTENLNl9Qb3MpICAgICAgLyohPCAweDAwMDAwMDQwICovDQojZGVmaW5lIEdQSU9fTENLUl9MQ0s2ICAgICAgICAgICAgICAgICAgICAgICBHUElPX0xDS1JfTENLNl9Nc2sgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fTENLUl9MQ0s3X1BvcyAgICAgICAgICAgICAgICAgICAoN1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fTENLUl9MQ0s3X01zayAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBHUElPX0xDS1JfTENLN19Qb3MpICAgICAgLyohPCAweDAwMDAwMDgwICovDQojZGVmaW5lIEdQSU9fTENLUl9MQ0s3ICAgICAgICAgICAgICAgICAgICAgICBHUElPX0xDS1JfTENLN19Nc2sgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fTENLUl9MQ0s4X1BvcyAgICAgICAgICAgICAgICAgICAoOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fTENLUl9MQ0s4X01zayAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBHUElPX0xDS1JfTENLOF9Qb3MpICAgICAgLyohPCAweDAwMDAwMTAwICovDQojZGVmaW5lIEdQSU9fTENLUl9MQ0s4ICAgICAgICAgICAgICAgICAgICAgICBHUElPX0xDS1JfTENLOF9Nc2sgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fTENLUl9MQ0s5X1BvcyAgICAgICAgICAgICAgICAgICAoOVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fTENLUl9MQ0s5X01zayAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBHUElPX0xDS1JfTENLOV9Qb3MpICAgICAgLyohPCAweDAwMDAwMjAwICovDQojZGVmaW5lIEdQSU9fTENLUl9MQ0s5ICAgICAgICAgICAgICAgICAgICAgICBHUElPX0xDS1JfTENLOV9Nc2sgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fTENLUl9MQ0sxMF9Qb3MgICAgICAgICAgICAgICAgICAoMTBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fTENLUl9MQ0sxMF9Nc2sgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBHUElPX0xDS1JfTENLMTBfUG9zKSAgICAgLyohPCAweDAwMDAwNDAwICovDQojZGVmaW5lIEdQSU9fTENLUl9MQ0sxMCAgICAgICAgICAgICAgICAgICAgICBHUElPX0xDS1JfTENLMTBfTXNrICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fTENLUl9MQ0sxMV9Qb3MgICAgICAgICAgICAgICAgICAoMTFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fTENLUl9MQ0sxMV9Nc2sgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBHUElPX0xDS1JfTENLMTFfUG9zKSAgICAgLyohPCAweDAwMDAwODAwICovDQojZGVmaW5lIEdQSU9fTENLUl9MQ0sxMSAgICAgICAgICAgICAgICAgICAgICBHUElPX0xDS1JfTENLMTFfTXNrICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fTENLUl9MQ0sxMl9Qb3MgICAgICAgICAgICAgICAgICAoMTJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fTENLUl9MQ0sxMl9Nc2sgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBHUElPX0xDS1JfTENLMTJfUG9zKSAgICAgLyohPCAweDAwMDAxMDAwICovDQojZGVmaW5lIEdQSU9fTENLUl9MQ0sxMiAgICAgICAgICAgICAgICAgICAgICBHUElPX0xDS1JfTENLMTJfTXNrICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fTENLUl9MQ0sxM19Qb3MgICAgICAgICAgICAgICAgICAoMTNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fTENLUl9MQ0sxM19Nc2sgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBHUElPX0xDS1JfTENLMTNfUG9zKSAgICAgLyohPCAweDAwMDAyMDAwICovDQojZGVmaW5lIEdQSU9fTENLUl9MQ0sxMyAgICAgICAgICAgICAgICAgICAgICBHUElPX0xDS1JfTENLMTNfTXNrICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fTENLUl9MQ0sxNF9Qb3MgICAgICAgICAgICAgICAgICAoMTRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fTENLUl9MQ0sxNF9Nc2sgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBHUElPX0xDS1JfTENLMTRfUG9zKSAgICAgLyohPCAweDAwMDA0MDAwICovDQojZGVmaW5lIEdQSU9fTENLUl9MQ0sxNCAgICAgICAgICAgICAgICAgICAgICBHUElPX0xDS1JfTENLMTRfTXNrICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fTENLUl9MQ0sxNV9Qb3MgICAgICAgICAgICAgICAgICAoMTVVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fTENLUl9MQ0sxNV9Nc2sgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBHUElPX0xDS1JfTENLMTVfUG9zKSAgICAgLyohPCAweDAwMDA4MDAwICovDQojZGVmaW5lIEdQSU9fTENLUl9MQ0sxNSAgICAgICAgICAgICAgICAgICAgICBHUElPX0xDS1JfTENLMTVfTXNrICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fTENLUl9MQ0tLX1BvcyAgICAgICAgICAgICAgICAgICAoMTZVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fTENLUl9MQ0tLX01zayAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBHUElPX0xDS1JfTENLS19Qb3MpICAgICAgLyohPCAweDAwMDEwMDAwICovDQojZGVmaW5lIEdQSU9fTENLUl9MQ0tLICAgICAgICAgICAgICAgICAgICAgICBHUElPX0xDS1JfTENLS19Nc2sgICAgICAgICAgICAgICAgDQoNCi8qKioqKioqKioqKioqKioqKiogQml0IGRlZmluaXRpb24gZm9yIEdQSU9fQUZSTCByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIEdQSU9fQUZSTF9BRlNFTDBfUG9zICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX0FGUkxfQUZTRUwwX01zayAgICAgICAgICAgICAgICAgICgweEZVIDw8IEdQSU9fQUZSTF9BRlNFTDBfUG9zKSAgICAgLyohPCAweDAwMDAwMDBGICovDQojZGVmaW5lIEdQSU9fQUZSTF9BRlNFTDAgICAgICAgICAgICAgICAgICAgICAgR1BJT19BRlJMX0FGU0VMMF9Nc2sgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19BRlJMX0FGU0VMMV9Qb3MgICAgICAgICAgICAgICAgICAoNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fQUZSTF9BRlNFTDFfTXNrICAgICAgICAgICAgICAgICAgKDB4RlUgPDwgR1BJT19BRlJMX0FGU0VMMV9Qb3MpICAgICAvKiE8IDB4MDAwMDAwRjAgKi8NCiNkZWZpbmUgR1BJT19BRlJMX0FGU0VMMSAgICAgICAgICAgICAgICAgICAgICBHUElPX0FGUkxfQUZTRUwxX01zayAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX0FGUkxfQUZTRUwyX1BvcyAgICAgICAgICAgICAgICAgICg4VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19BRlJMX0FGU0VMMl9Nc2sgICAgICAgICAgICAgICAgICAoMHhGVSA8PCBHUElPX0FGUkxfQUZTRUwyX1BvcykgICAgIC8qITwgMHgwMDAwMEYwMCAqLw0KI2RlZmluZSBHUElPX0FGUkxfQUZTRUwyICAgICAgICAgICAgICAgICAgICAgIEdQSU9fQUZSTF9BRlNFTDJfTXNrICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fQUZSTF9BRlNFTDNfUG9zICAgICAgICAgICAgICAgICAgKDEyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX0FGUkxfQUZTRUwzX01zayAgICAgICAgICAgICAgICAgICgweEZVIDw8IEdQSU9fQUZSTF9BRlNFTDNfUG9zKSAgICAgLyohPCAweDAwMDBGMDAwICovDQojZGVmaW5lIEdQSU9fQUZSTF9BRlNFTDMgICAgICAgICAgICAgICAgICAgICAgR1BJT19BRlJMX0FGU0VMM19Nc2sgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19BRlJMX0FGU0VMNF9Qb3MgICAgICAgICAgICAgICAgICAoMTZVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fQUZSTF9BRlNFTDRfTXNrICAgICAgICAgICAgICAgICAgKDB4RlUgPDwgR1BJT19BRlJMX0FGU0VMNF9Qb3MpICAgICAvKiE8IDB4MDAwRjAwMDAgKi8NCiNkZWZpbmUgR1BJT19BRlJMX0FGU0VMNCAgICAgICAgICAgICAgICAgICAgICBHUElPX0FGUkxfQUZTRUw0X01zayAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX0FGUkxfQUZTRUw1X1BvcyAgICAgICAgICAgICAgICAgICgyMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19BRlJMX0FGU0VMNV9Nc2sgICAgICAgICAgICAgICAgICAoMHhGVSA8PCBHUElPX0FGUkxfQUZTRUw1X1BvcykgICAgIC8qITwgMHgwMEYwMDAwMCAqLw0KI2RlZmluZSBHUElPX0FGUkxfQUZTRUw1ICAgICAgICAgICAgICAgICAgICAgIEdQSU9fQUZSTF9BRlNFTDVfTXNrICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fQUZSTF9BRlNFTDZfUG9zICAgICAgICAgICAgICAgICAgKDI0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX0FGUkxfQUZTRUw2X01zayAgICAgICAgICAgICAgICAgICgweEZVIDw8IEdQSU9fQUZSTF9BRlNFTDZfUG9zKSAgICAgLyohPCAweDBGMDAwMDAwICovDQojZGVmaW5lIEdQSU9fQUZSTF9BRlNFTDYgICAgICAgICAgICAgICAgICAgICAgR1BJT19BRlJMX0FGU0VMNl9Nc2sgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19BRlJMX0FGU0VMN19Qb3MgICAgICAgICAgICAgICAgICAoMjhVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fQUZSTF9BRlNFTDdfTXNrICAgICAgICAgICAgICAgICAgKDB4RlUgPDwgR1BJT19BRlJMX0FGU0VMN19Qb3MpICAgICAvKiE8IDB4RjAwMDAwMDAgKi8NCiNkZWZpbmUgR1BJT19BRlJMX0FGU0VMNyAgICAgICAgICAgICAgICAgICAgICBHUElPX0FGUkxfQUZTRUw3X01zayAgICAgICAgICAgICAgIA0KDQovKioqKioqKioqKioqKioqKioqIEJpdCBkZWZpbml0aW9uIGZvciBHUElPX0FGUkggcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBHUElPX0FGUkhfQUZTRUw4X1BvcyAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19BRlJIX0FGU0VMOF9Nc2sgICAgICAgICAgICAgICAgICAoMHhGVSA8PCBHUElPX0FGUkhfQUZTRUw4X1BvcykgICAgIC8qITwgMHgwMDAwMDAwRiAqLw0KI2RlZmluZSBHUElPX0FGUkhfQUZTRUw4ICAgICAgICAgICAgICAgICAgICAgIEdQSU9fQUZSSF9BRlNFTDhfTXNrICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fQUZSSF9BRlNFTDlfUG9zICAgICAgICAgICAgICAgICAgKDRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX0FGUkhfQUZTRUw5X01zayAgICAgICAgICAgICAgICAgICgweEZVIDw8IEdQSU9fQUZSSF9BRlNFTDlfUG9zKSAgICAgLyohPCAweDAwMDAwMEYwICovDQojZGVmaW5lIEdQSU9fQUZSSF9BRlNFTDkgICAgICAgICAgICAgICAgICAgICAgR1BJT19BRlJIX0FGU0VMOV9Nc2sgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19BRlJIX0FGU0VMMTBfUG9zICAgICAgICAgICAgICAgICAgKDhVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX0FGUkhfQUZTRUwxMF9Nc2sgICAgICAgICAgICAgICAgICAoMHhGVSA8PCBHUElPX0FGUkhfQUZTRUwxMF9Qb3MpICAgICAvKiE8IDB4MDAwMDBGMDAgKi8NCiNkZWZpbmUgR1BJT19BRlJIX0FGU0VMMTAgICAgICAgICAgICAgICAgICAgICAgR1BJT19BRlJIX0FGU0VMMTBfTXNrICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fQUZSSF9BRlNFTDExX1BvcyAgICAgICAgICAgICAgICAgICgxMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19BRlJIX0FGU0VMMTFfTXNrICAgICAgICAgICAgICAgICAgKDB4RlUgPDwgR1BJT19BRlJIX0FGU0VMMTFfUG9zKSAgICAgLyohPCAweDAwMDBGMDAwICovDQojZGVmaW5lIEdQSU9fQUZSSF9BRlNFTDExICAgICAgICAgICAgICAgICAgICAgIEdQSU9fQUZSSF9BRlNFTDExX01zayAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX0FGUkhfQUZTRUwxMl9Qb3MgICAgICAgICAgICAgICAgICAoMTZVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fQUZSSF9BRlNFTDEyX01zayAgICAgICAgICAgICAgICAgICgweEZVIDw8IEdQSU9fQUZSSF9BRlNFTDEyX1BvcykgICAgIC8qITwgMHgwMDBGMDAwMCAqLw0KI2RlZmluZSBHUElPX0FGUkhfQUZTRUwxMiAgICAgICAgICAgICAgICAgICAgICBHUElPX0FGUkhfQUZTRUwxMl9Nc2sgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19BRlJIX0FGU0VMMTNfUG9zICAgICAgICAgICAgICAgICAgKDIwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX0FGUkhfQUZTRUwxM19Nc2sgICAgICAgICAgICAgICAgICAoMHhGVSA8PCBHUElPX0FGUkhfQUZTRUwxM19Qb3MpICAgICAvKiE8IDB4MDBGMDAwMDAgKi8NCiNkZWZpbmUgR1BJT19BRlJIX0FGU0VMMTMgICAgICAgICAgICAgICAgICAgICAgR1BJT19BRlJIX0FGU0VMMTNfTXNrICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fQUZSSF9BRlNFTDE0X1BvcyAgICAgICAgICAgICAgICAgICgyNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19BRlJIX0FGU0VMMTRfTXNrICAgICAgICAgICAgICAgICAgKDB4RlUgPDwgR1BJT19BRlJIX0FGU0VMMTRfUG9zKSAgICAgLyohPCAweDBGMDAwMDAwICovDQojZGVmaW5lIEdQSU9fQUZSSF9BRlNFTDE0ICAgICAgICAgICAgICAgICAgICAgIEdQSU9fQUZSSF9BRlNFTDE0X01zayAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX0FGUkhfQUZTRUwxNV9Qb3MgICAgICAgICAgICAgICAgICAoMjhVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fQUZSSF9BRlNFTDE1X01zayAgICAgICAgICAgICAgICAgICgweEZVIDw8IEdQSU9fQUZSSF9BRlNFTDE1X1BvcykgICAgIC8qITwgMHhGMDAwMDAwMCAqLw0KI2RlZmluZSBHUElPX0FGUkhfQUZTRUwxNSAgICAgICAgICAgICAgICAgICAgICBHUElPX0FGUkhfQUZTRUwxNV9Nc2sgICAgICAgICAgICAgICANCg0KLyoqKioqKioqKioqKioqKioqKiBCaXQgZGVmaW5pdGlvbiBmb3IgR1BJT19CUlIgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgR1BJT19CUlJfQlJfMCAgICAgICAgICAgICAgICAgICAgICAgICgweDAwMDAwMDAxVSkgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19CUlJfQlJfMSAgICAgICAgICAgICAgICAgICAgICAgICgweDAwMDAwMDAyVSkgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19CUlJfQlJfMiAgICAgICAgICAgICAgICAgICAgICAgICgweDAwMDAwMDA0VSkgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19CUlJfQlJfMyAgICAgICAgICAgICAgICAgICAgICAgICgweDAwMDAwMDA4VSkgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19CUlJfQlJfNCAgICAgICAgICAgICAgICAgICAgICAgICgweDAwMDAwMDEwVSkgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19CUlJfQlJfNSAgICAgICAgICAgICAgICAgICAgICAgICgweDAwMDAwMDIwVSkgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19CUlJfQlJfNiAgICAgICAgICAgICAgICAgICAgICAgICgweDAwMDAwMDQwVSkgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19CUlJfQlJfNyAgICAgICAgICAgICAgICAgICAgICAgICgweDAwMDAwMDgwVSkgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19CUlJfQlJfOCAgICAgICAgICAgICAgICAgICAgICAgICgweDAwMDAwMTAwVSkgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19CUlJfQlJfOSAgICAgICAgICAgICAgICAgICAgICAgICgweDAwMDAwMjAwVSkgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19CUlJfQlJfMTAgICAgICAgICAgICAgICAgICAgICAgICgweDAwMDAwNDAwVSkgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19CUlJfQlJfMTEgICAgICAgICAgICAgICAgICAgICAgICgweDAwMDAwODAwVSkgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19CUlJfQlJfMTIgICAgICAgICAgICAgICAgICAgICAgICgweDAwMDAxMDAwVSkgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19CUlJfQlJfMTMgICAgICAgICAgICAgICAgICAgICAgICgweDAwMDAyMDAwVSkgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19CUlJfQlJfMTQgICAgICAgICAgICAgICAgICAgICAgICgweDAwMDA0MDAwVSkgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19CUlJfQlJfMTUgICAgICAgICAgICAgICAgICAgICAgICgweDAwMDA4MDAwVSkgICAgICAgICAgICAgICAgICAgICANCg0KLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8NCi8qICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovDQovKiAgICAgICAgICAgICAgICAgICBJbnRlci1pbnRlZ3JhdGVkIENpcmN1aXQgSW50ZXJmYWNlIChJMkMpICAgICAgICAgICAgICAgICAqLw0KLyogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8NCi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovDQoNCi8qKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgSTJDX0NSMSByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIEkyQ19DUjFfUEVfUG9zICAgICAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEkyQ19DUjFfUEVfTXNrICAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IEkyQ19DUjFfUEVfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwMDAxICovDQojZGVmaW5lIEkyQ19DUjFfUEUgICAgICAgICAgICAgICAgICAgICAgICAgIEkyQ19DUjFfUEVfTXNrICAgICAgICAgICAgICAgICAgICAgLyohPCBQZXJpcGhlcmFsIEVuYWJsZSAqLw0KI2RlZmluZSBJMkNfQ1IxX1NNQlVTX1BvcyAgICAgICAgICAgICAgICAgICAoMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBJMkNfQ1IxX1NNQlVTX01zayAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBJMkNfQ1IxX1NNQlVTX1BvcykgICAgICAgIC8qITwgMHgwMDAwMDAwMiAqLw0KI2RlZmluZSBJMkNfQ1IxX1NNQlVTICAgICAgICAgICAgICAgICAgICAgICBJMkNfQ1IxX1NNQlVTX01zayAgICAgICAgICAgICAgICAgIC8qITwgU01CdXMgTW9kZSAqLw0KI2RlZmluZSBJMkNfQ1IxX1NNQlRZUEVfUG9zICAgICAgICAgICAgICAgICAoM1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBJMkNfQ1IxX1NNQlRZUEVfTXNrICAgICAgICAgICAgICAgICAoMHgxVSA8PCBJMkNfQ1IxX1NNQlRZUEVfUG9zKSAgICAgIC8qITwgMHgwMDAwMDAwOCAqLw0KI2RlZmluZSBJMkNfQ1IxX1NNQlRZUEUgICAgICAgICAgICAgICAgICAgICBJMkNfQ1IxX1NNQlRZUEVfTXNrICAgICAgICAgICAgICAgIC8qITwgU01CdXMgVHlwZSAqLw0KI2RlZmluZSBJMkNfQ1IxX0VOQVJQX1BvcyAgICAgICAgICAgICAgICAgICAoNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBJMkNfQ1IxX0VOQVJQX01zayAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBJMkNfQ1IxX0VOQVJQX1BvcykgICAgICAgIC8qITwgMHgwMDAwMDAxMCAqLw0KI2RlZmluZSBJMkNfQ1IxX0VOQVJQICAgICAgICAgICAgICAgICAgICAgICBJMkNfQ1IxX0VOQVJQX01zayAgICAgICAgICAgICAgICAgIC8qITwgQVJQIEVuYWJsZSAqLw0KI2RlZmluZSBJMkNfQ1IxX0VOUEVDX1BvcyAgICAgICAgICAgICAgICAgICAoNVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBJMkNfQ1IxX0VOUEVDX01zayAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBJMkNfQ1IxX0VOUEVDX1BvcykgICAgICAgIC8qITwgMHgwMDAwMDAyMCAqLw0KI2RlZmluZSBJMkNfQ1IxX0VOUEVDICAgICAgICAgICAgICAgICAgICAgICBJMkNfQ1IxX0VOUEVDX01zayAgICAgICAgICAgICAgICAgIC8qITwgUEVDIEVuYWJsZSAqLw0KI2RlZmluZSBJMkNfQ1IxX0VOR0NfUG9zICAgICAgICAgICAgICAgICAgICAoNlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBJMkNfQ1IxX0VOR0NfTXNrICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBJMkNfQ1IxX0VOR0NfUG9zKSAgICAgICAgIC8qITwgMHgwMDAwMDA0MCAqLw0KI2RlZmluZSBJMkNfQ1IxX0VOR0MgICAgICAgICAgICAgICAgICAgICAgICBJMkNfQ1IxX0VOR0NfTXNrICAgICAgICAgICAgICAgICAgIC8qITwgR2VuZXJhbCBDYWxsIEVuYWJsZSAqLw0KI2RlZmluZSBJMkNfQ1IxX05PU1RSRVRDSF9Qb3MgICAgICAgICAgICAgICAoN1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBJMkNfQ1IxX05PU1RSRVRDSF9Nc2sgICAgICAgICAgICAgICAoMHgxVSA8PCBJMkNfQ1IxX05PU1RSRVRDSF9Qb3MpICAgIC8qITwgMHgwMDAwMDA4MCAqLw0KI2RlZmluZSBJMkNfQ1IxX05PU1RSRVRDSCAgICAgICAgICAgICAgICAgICBJMkNfQ1IxX05PU1RSRVRDSF9Nc2sgICAgICAgICAgICAgIC8qITwgQ2xvY2sgU3RyZXRjaGluZyBEaXNhYmxlIChTbGF2ZSBtb2RlKSAqLw0KI2RlZmluZSBJMkNfQ1IxX1NUQVJUX1BvcyAgICAgICAgICAgICAgICAgICAoOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBJMkNfQ1IxX1NUQVJUX01zayAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBJMkNfQ1IxX1NUQVJUX1BvcykgICAgICAgIC8qITwgMHgwMDAwMDEwMCAqLw0KI2RlZmluZSBJMkNfQ1IxX1NUQVJUICAgICAgICAgICAgICAgICAgICAgICBJMkNfQ1IxX1NUQVJUX01zayAgICAgICAgICAgICAgICAgIC8qITwgU3RhcnQgR2VuZXJhdGlvbiAqLw0KI2RlZmluZSBJMkNfQ1IxX1NUT1BfUG9zICAgICAgICAgICAgICAgICAgICAoOVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBJMkNfQ1IxX1NUT1BfTXNrICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBJMkNfQ1IxX1NUT1BfUG9zKSAgICAgICAgIC8qITwgMHgwMDAwMDIwMCAqLw0KI2RlZmluZSBJMkNfQ1IxX1NUT1AgICAgICAgICAgICAgICAgICAgICAgICBJMkNfQ1IxX1NUT1BfTXNrICAgICAgICAgICAgICAgICAgIC8qITwgU3RvcCBHZW5lcmF0aW9uICovDQojZGVmaW5lIEkyQ19DUjFfQUNLX1BvcyAgICAgICAgICAgICAgICAgICAgICgxMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEkyQ19DUjFfQUNLX01zayAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IEkyQ19DUjFfQUNLX1BvcykgICAgICAgICAgLyohPCAweDAwMDAwNDAwICovDQojZGVmaW5lIEkyQ19DUjFfQUNLICAgICAgICAgICAgICAgICAgICAgICAgIEkyQ19DUjFfQUNLX01zayAgICAgICAgICAgICAgICAgICAgLyohPCBBY2tub3dsZWRnZSBFbmFibGUgKi8NCiNkZWZpbmUgSTJDX0NSMV9QT1NfUG9zICAgICAgICAgICAgICAgICAgICAgKDExVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgSTJDX0NSMV9QT1NfTXNrICAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgSTJDX0NSMV9QT1NfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDA4MDAgKi8NCiNkZWZpbmUgSTJDX0NSMV9QT1MgICAgICAgICAgICAgICAgICAgICAgICAgSTJDX0NSMV9QT1NfTXNrICAgICAgICAgICAgICAgICAgICAvKiE8IEFja25vd2xlZGdlL1BFQyBQb3NpdGlvbiAoZm9yIGRhdGEgcmVjZXB0aW9uKSAqLw0KI2RlZmluZSBJMkNfQ1IxX1BFQ19Qb3MgICAgICAgICAgICAgICAgICAgICAoMTJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBJMkNfQ1IxX1BFQ19Nc2sgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBJMkNfQ1IxX1BFQ19Qb3MpICAgICAgICAgIC8qITwgMHgwMDAwMTAwMCAqLw0KI2RlZmluZSBJMkNfQ1IxX1BFQyAgICAgICAgICAgICAgICAgICAgICAgICBJMkNfQ1IxX1BFQ19Nc2sgICAgICAgICAgICAgICAgICAgIC8qITwgUGFja2V0IEVycm9yIENoZWNraW5nICovDQojZGVmaW5lIEkyQ19DUjFfQUxFUlRfUG9zICAgICAgICAgICAgICAgICAgICgxM1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEkyQ19DUjFfQUxFUlRfTXNrICAgICAgICAgICAgICAgICAgICgweDFVIDw8IEkyQ19DUjFfQUxFUlRfUG9zKSAgICAgICAgLyohPCAweDAwMDAyMDAwICovDQojZGVmaW5lIEkyQ19DUjFfQUxFUlQgICAgICAgICAgICAgICAgICAgICAgIEkyQ19DUjFfQUxFUlRfTXNrICAgICAgICAgICAgICAgICAgLyohPCBTTUJ1cyBBbGVydCAqLw0KI2RlZmluZSBJMkNfQ1IxX1NXUlNUX1BvcyAgICAgICAgICAgICAgICAgICAoMTVVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBJMkNfQ1IxX1NXUlNUX01zayAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBJMkNfQ1IxX1NXUlNUX1BvcykgICAgICAgIC8qITwgMHgwMDAwODAwMCAqLw0KI2RlZmluZSBJMkNfQ1IxX1NXUlNUICAgICAgICAgICAgICAgICAgICAgICBJMkNfQ1IxX1NXUlNUX01zayAgICAgICAgICAgICAgICAgIC8qITwgU29mdHdhcmUgUmVzZXQgKi8NCg0KLyoqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBJMkNfQ1IyIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgSTJDX0NSMl9GUkVRX1BvcyAgICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgSTJDX0NSMl9GUkVRX01zayAgICAgICAgICAgICAgICAgICAgKDB4M0ZVIDw8IEkyQ19DUjJfRlJFUV9Qb3MpICAgICAgICAvKiE8IDB4MDAwMDAwM0YgKi8NCiNkZWZpbmUgSTJDX0NSMl9GUkVRICAgICAgICAgICAgICAgICAgICAgICAgSTJDX0NSMl9GUkVRX01zayAgICAgICAgICAgICAgICAgICAvKiE8IEZSRVFbNTowXSBiaXRzIChQZXJpcGhlcmFsIENsb2NrIEZyZXF1ZW5jeSkgKi8NCiNkZWZpbmUgSTJDX0NSMl9GUkVRXzAgICAgICAgICAgICAgICAgICAgICAgKDB4MDFVIDw8IEkyQ19DUjJfRlJFUV9Qb3MpICAgICAgICAvKiE8IDB4MDAwMDAwMDEgKi8NCiNkZWZpbmUgSTJDX0NSMl9GUkVRXzEgICAgICAgICAgICAgICAgICAgICAgKDB4MDJVIDw8IEkyQ19DUjJfRlJFUV9Qb3MpICAgICAgICAvKiE8IDB4MDAwMDAwMDIgKi8NCiNkZWZpbmUgSTJDX0NSMl9GUkVRXzIgICAgICAgICAgICAgICAgICAgICAgKDB4MDRVIDw8IEkyQ19DUjJfRlJFUV9Qb3MpICAgICAgICAvKiE8IDB4MDAwMDAwMDQgKi8NCiNkZWZpbmUgSTJDX0NSMl9GUkVRXzMgICAgICAgICAgICAgICAgICAgICAgKDB4MDhVIDw8IEkyQ19DUjJfRlJFUV9Qb3MpICAgICAgICAvKiE8IDB4MDAwMDAwMDggKi8NCiNkZWZpbmUgSTJDX0NSMl9GUkVRXzQgICAgICAgICAgICAgICAgICAgICAgKDB4MTBVIDw8IEkyQ19DUjJfRlJFUV9Qb3MpICAgICAgICAvKiE8IDB4MDAwMDAwMTAgKi8NCiNkZWZpbmUgSTJDX0NSMl9GUkVRXzUgICAgICAgICAgICAgICAgICAgICAgKDB4MjBVIDw8IEkyQ19DUjJfRlJFUV9Qb3MpICAgICAgICAvKiE8IDB4MDAwMDAwMjAgKi8NCg0KI2RlZmluZSBJMkNfQ1IyX0lURVJSRU5fUG9zICAgICAgICAgICAgICAgICAoOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBJMkNfQ1IyX0lURVJSRU5fTXNrICAgICAgICAgICAgICAgICAoMHgxVSA8PCBJMkNfQ1IyX0lURVJSRU5fUG9zKSAgICAgIC8qITwgMHgwMDAwMDEwMCAqLw0KI2RlZmluZSBJMkNfQ1IyX0lURVJSRU4gICAgICAgICAgICAgICAgICAgICBJMkNfQ1IyX0lURVJSRU5fTXNrICAgICAgICAgICAgICAgIC8qITwgRXJyb3IgSW50ZXJydXB0IEVuYWJsZSAqLw0KI2RlZmluZSBJMkNfQ1IyX0lURVZURU5fUG9zICAgICAgICAgICAgICAgICAoOVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBJMkNfQ1IyX0lURVZURU5fTXNrICAgICAgICAgICAgICAgICAoMHgxVSA8PCBJMkNfQ1IyX0lURVZURU5fUG9zKSAgICAgIC8qITwgMHgwMDAwMDIwMCAqLw0KI2RlZmluZSBJMkNfQ1IyX0lURVZURU4gICAgICAgICAgICAgICAgICAgICBJMkNfQ1IyX0lURVZURU5fTXNrICAgICAgICAgICAgICAgIC8qITwgRXZlbnQgSW50ZXJydXB0IEVuYWJsZSAqLw0KI2RlZmluZSBJMkNfQ1IyX0lUQlVGRU5fUG9zICAgICAgICAgICAgICAgICAoMTBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBJMkNfQ1IyX0lUQlVGRU5fTXNrICAgICAgICAgICAgICAgICAoMHgxVSA8PCBJMkNfQ1IyX0lUQlVGRU5fUG9zKSAgICAgIC8qITwgMHgwMDAwMDQwMCAqLw0KI2RlZmluZSBJMkNfQ1IyX0lUQlVGRU4gICAgICAgICAgICAgICAgICAgICBJMkNfQ1IyX0lUQlVGRU5fTXNrICAgICAgICAgICAgICAgIC8qITwgQnVmZmVyIEludGVycnVwdCBFbmFibGUgKi8NCiNkZWZpbmUgSTJDX0NSMl9ETUFFTl9Qb3MgICAgICAgICAgICAgICAgICAgKDExVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgSTJDX0NSMl9ETUFFTl9Nc2sgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgSTJDX0NSMl9ETUFFTl9Qb3MpICAgICAgICAvKiE8IDB4MDAwMDA4MDAgKi8NCiNkZWZpbmUgSTJDX0NSMl9ETUFFTiAgICAgICAgICAgICAgICAgICAgICAgSTJDX0NSMl9ETUFFTl9Nc2sgICAgICAgICAgICAgICAgICAvKiE8IERNQSBSZXF1ZXN0cyBFbmFibGUgKi8NCiNkZWZpbmUgSTJDX0NSMl9MQVNUX1BvcyAgICAgICAgICAgICAgICAgICAgKDEyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgSTJDX0NSMl9MQVNUX01zayAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgSTJDX0NSMl9MQVNUX1BvcykgICAgICAgICAvKiE8IDB4MDAwMDEwMDAgKi8NCiNkZWZpbmUgSTJDX0NSMl9MQVNUICAgICAgICAgICAgICAgICAgICAgICAgSTJDX0NSMl9MQVNUX01zayAgICAgICAgICAgICAgICAgICAvKiE8IERNQSBMYXN0IFRyYW5zZmVyICovDQoNCi8qKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgSTJDX09BUjEgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIEkyQ19PQVIxX0FERDFfNyAgICAgICAgICAgICAgICAgICAgICgweDAwMDAwMEZFVSkgICAgICAgICAgICAgICAgICAgICAgLyohPCBJbnRlcmZhY2UgQWRkcmVzcyAqLw0KI2RlZmluZSBJMkNfT0FSMV9BREQ4XzkgICAgICAgICAgICAgICAgICAgICAoMHgwMDAwMDMwMFUpICAgICAgICAgICAgICAgICAgICAgIC8qITwgSW50ZXJmYWNlIEFkZHJlc3MgKi8NCg0KI2RlZmluZSBJMkNfT0FSMV9BREQwX1BvcyAgICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBJMkNfT0FSMV9BREQwX01zayAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBJMkNfT0FSMV9BREQwX1BvcykgICAgICAgIC8qITwgMHgwMDAwMDAwMSAqLw0KI2RlZmluZSBJMkNfT0FSMV9BREQwICAgICAgICAgICAgICAgICAgICAgICBJMkNfT0FSMV9BREQwX01zayAgICAgICAgICAgICAgICAgIC8qITwgQml0IDAgKi8NCiNkZWZpbmUgSTJDX09BUjFfQUREMV9Qb3MgICAgICAgICAgICAgICAgICAgKDFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgSTJDX09BUjFfQUREMV9Nc2sgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgSTJDX09BUjFfQUREMV9Qb3MpICAgICAgICAvKiE8IDB4MDAwMDAwMDIgKi8NCiNkZWZpbmUgSTJDX09BUjFfQUREMSAgICAgICAgICAgICAgICAgICAgICAgSTJDX09BUjFfQUREMV9Nc2sgICAgICAgICAgICAgICAgICAvKiE8IEJpdCAxICovDQojZGVmaW5lIEkyQ19PQVIxX0FERDJfUG9zICAgICAgICAgICAgICAgICAgICgyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEkyQ19PQVIxX0FERDJfTXNrICAgICAgICAgICAgICAgICAgICgweDFVIDw8IEkyQ19PQVIxX0FERDJfUG9zKSAgICAgICAgLyohPCAweDAwMDAwMDA0ICovDQojZGVmaW5lIEkyQ19PQVIxX0FERDIgICAgICAgICAgICAgICAgICAgICAgIEkyQ19PQVIxX0FERDJfTXNrICAgICAgICAgICAgICAgICAgLyohPCBCaXQgMiAqLw0KI2RlZmluZSBJMkNfT0FSMV9BREQzX1BvcyAgICAgICAgICAgICAgICAgICAoM1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBJMkNfT0FSMV9BREQzX01zayAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBJMkNfT0FSMV9BREQzX1BvcykgICAgICAgIC8qITwgMHgwMDAwMDAwOCAqLw0KI2RlZmluZSBJMkNfT0FSMV9BREQzICAgICAgICAgICAgICAgICAgICAgICBJMkNfT0FSMV9BREQzX01zayAgICAgICAgICAgICAgICAgIC8qITwgQml0IDMgKi8NCiNkZWZpbmUgSTJDX09BUjFfQURENF9Qb3MgICAgICAgICAgICAgICAgICAgKDRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgSTJDX09BUjFfQURENF9Nc2sgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgSTJDX09BUjFfQURENF9Qb3MpICAgICAgICAvKiE8IDB4MDAwMDAwMTAgKi8NCiNkZWZpbmUgSTJDX09BUjFfQURENCAgICAgICAgICAgICAgICAgICAgICAgSTJDX09BUjFfQURENF9Nc2sgICAgICAgICAgICAgICAgICAvKiE8IEJpdCA0ICovDQojZGVmaW5lIEkyQ19PQVIxX0FERDVfUG9zICAgICAgICAgICAgICAgICAgICg1VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEkyQ19PQVIxX0FERDVfTXNrICAgICAgICAgICAgICAgICAgICgweDFVIDw8IEkyQ19PQVIxX0FERDVfUG9zKSAgICAgICAgLyohPCAweDAwMDAwMDIwICovDQojZGVmaW5lIEkyQ19PQVIxX0FERDUgICAgICAgICAgICAgICAgICAgICAgIEkyQ19PQVIxX0FERDVfTXNrICAgICAgICAgICAgICAgICAgLyohPCBCaXQgNSAqLw0KI2RlZmluZSBJMkNfT0FSMV9BREQ2X1BvcyAgICAgICAgICAgICAgICAgICAoNlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBJMkNfT0FSMV9BREQ2X01zayAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBJMkNfT0FSMV9BREQ2X1BvcykgICAgICAgIC8qITwgMHgwMDAwMDA0MCAqLw0KI2RlZmluZSBJMkNfT0FSMV9BREQ2ICAgICAgICAgICAgICAgICAgICAgICBJMkNfT0FSMV9BREQ2X01zayAgICAgICAgICAgICAgICAgIC8qITwgQml0IDYgKi8NCiNkZWZpbmUgSTJDX09BUjFfQUREN19Qb3MgICAgICAgICAgICAgICAgICAgKDdVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgSTJDX09BUjFfQUREN19Nc2sgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgSTJDX09BUjFfQUREN19Qb3MpICAgICAgICAvKiE8IDB4MDAwMDAwODAgKi8NCiNkZWZpbmUgSTJDX09BUjFfQURENyAgICAgICAgICAgICAgICAgICAgICAgSTJDX09BUjFfQUREN19Nc2sgICAgICAgICAgICAgICAgICAvKiE8IEJpdCA3ICovDQojZGVmaW5lIEkyQ19PQVIxX0FERDhfUG9zICAgICAgICAgICAgICAgICAgICg4VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEkyQ19PQVIxX0FERDhfTXNrICAgICAgICAgICAgICAgICAgICgweDFVIDw8IEkyQ19PQVIxX0FERDhfUG9zKSAgICAgICAgLyohPCAweDAwMDAwMTAwICovDQojZGVmaW5lIEkyQ19PQVIxX0FERDggICAgICAgICAgICAgICAgICAgICAgIEkyQ19PQVIxX0FERDhfTXNrICAgICAgICAgICAgICAgICAgLyohPCBCaXQgOCAqLw0KI2RlZmluZSBJMkNfT0FSMV9BREQ5X1BvcyAgICAgICAgICAgICAgICAgICAoOVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBJMkNfT0FSMV9BREQ5X01zayAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBJMkNfT0FSMV9BREQ5X1BvcykgICAgICAgIC8qITwgMHgwMDAwMDIwMCAqLw0KI2RlZmluZSBJMkNfT0FSMV9BREQ5ICAgICAgICAgICAgICAgICAgICAgICBJMkNfT0FSMV9BREQ5X01zayAgICAgICAgICAgICAgICAgIC8qITwgQml0IDkgKi8NCg0KI2RlZmluZSBJMkNfT0FSMV9BRERNT0RFX1BvcyAgICAgICAgICAgICAgICAoMTVVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBJMkNfT0FSMV9BRERNT0RFX01zayAgICAgICAgICAgICAgICAoMHgxVSA8PCBJMkNfT0FSMV9BRERNT0RFX1BvcykgICAgIC8qITwgMHgwMDAwODAwMCAqLw0KI2RlZmluZSBJMkNfT0FSMV9BRERNT0RFICAgICAgICAgICAgICAgICAgICBJMkNfT0FSMV9BRERNT0RFX01zayAgICAgICAgICAgICAgIC8qITwgQWRkcmVzc2luZyBNb2RlIChTbGF2ZSBtb2RlKSAqLw0KDQovKioqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIEkyQ19PQVIyIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBJMkNfT0FSMl9FTkRVQUxfUG9zICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBJMkNfT0FSMl9FTkRVQUxfTXNrICAgICAgICAgICAgICAgICAoMHgxVSA8PCBJMkNfT0FSMl9FTkRVQUxfUG9zKSAgICAgIC8qITwgMHgwMDAwMDAwMSAqLw0KI2RlZmluZSBJMkNfT0FSMl9FTkRVQUwgICAgICAgICAgICAgICAgICAgICBJMkNfT0FSMl9FTkRVQUxfTXNrICAgICAgICAgICAgICAgIC8qITwgRHVhbCBhZGRyZXNzaW5nIG1vZGUgZW5hYmxlICovDQojZGVmaW5lIEkyQ19PQVIyX0FERDJfUG9zICAgICAgICAgICAgICAgICAgICgxVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEkyQ19PQVIyX0FERDJfTXNrICAgICAgICAgICAgICAgICAgICgweDdGVSA8PCBJMkNfT0FSMl9BREQyX1BvcykgICAgICAgLyohPCAweDAwMDAwMEZFICovDQojZGVmaW5lIEkyQ19PQVIyX0FERDIgICAgICAgICAgICAgICAgICAgICAgIEkyQ19PQVIyX0FERDJfTXNrICAgICAgICAgICAgICAgICAgLyohPCBJbnRlcmZhY2UgYWRkcmVzcyAqLw0KDQovKioqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBJMkNfRFIgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBJMkNfRFJfRFJfUG9zICAgICAgICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBJMkNfRFJfRFJfTXNrICAgICAgICAgICAgICAgICAgICAgICAoMHhGRlUgPDwgSTJDX0RSX0RSX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDBGRiAqLw0KI2RlZmluZSBJMkNfRFJfRFIgICAgICAgICAgICAgICAgICAgICAgICAgICBJMkNfRFJfRFJfTXNrICAgICAgICAgICAgICAgICAgICAgIC8qITwgOC1iaXQgRGF0YSBSZWdpc3RlciAqLw0KDQovKioqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIEkyQ19TUjEgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBJMkNfU1IxX1NCX1BvcyAgICAgICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBJMkNfU1IxX1NCX01zayAgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBJMkNfU1IxX1NCX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDAwMSAqLw0KI2RlZmluZSBJMkNfU1IxX1NCICAgICAgICAgICAgICAgICAgICAgICAgICBJMkNfU1IxX1NCX01zayAgICAgICAgICAgICAgICAgICAgIC8qITwgU3RhcnQgQml0IChNYXN0ZXIgbW9kZSkgKi8NCiNkZWZpbmUgSTJDX1NSMV9BRERSX1BvcyAgICAgICAgICAgICAgICAgICAgKDFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgSTJDX1NSMV9BRERSX01zayAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgSTJDX1NSMV9BRERSX1BvcykgICAgICAgICAvKiE8IDB4MDAwMDAwMDIgKi8NCiNkZWZpbmUgSTJDX1NSMV9BRERSICAgICAgICAgICAgICAgICAgICAgICAgSTJDX1NSMV9BRERSX01zayAgICAgICAgICAgICAgICAgICAvKiE8IEFkZHJlc3Mgc2VudCAobWFzdGVyIG1vZGUpL21hdGNoZWQgKHNsYXZlIG1vZGUpICovDQojZGVmaW5lIEkyQ19TUjFfQlRGX1BvcyAgICAgICAgICAgICAgICAgICAgICgyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEkyQ19TUjFfQlRGX01zayAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IEkyQ19TUjFfQlRGX1BvcykgICAgICAgICAgLyohPCAweDAwMDAwMDA0ICovDQojZGVmaW5lIEkyQ19TUjFfQlRGICAgICAgICAgICAgICAgICAgICAgICAgIEkyQ19TUjFfQlRGX01zayAgICAgICAgICAgICAgICAgICAgLyohPCBCeXRlIFRyYW5zZmVyIEZpbmlzaGVkICovDQojZGVmaW5lIEkyQ19TUjFfQUREMTBfUG9zICAgICAgICAgICAgICAgICAgICgzVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEkyQ19TUjFfQUREMTBfTXNrICAgICAgICAgICAgICAgICAgICgweDFVIDw8IEkyQ19TUjFfQUREMTBfUG9zKSAgICAgICAgLyohPCAweDAwMDAwMDA4ICovDQojZGVmaW5lIEkyQ19TUjFfQUREMTAgICAgICAgICAgICAgICAgICAgICAgIEkyQ19TUjFfQUREMTBfTXNrICAgICAgICAgICAgICAgICAgLyohPCAxMC1iaXQgaGVhZGVyIHNlbnQgKE1hc3RlciBtb2RlKSAqLw0KI2RlZmluZSBJMkNfU1IxX1NUT1BGX1BvcyAgICAgICAgICAgICAgICAgICAoNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBJMkNfU1IxX1NUT1BGX01zayAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBJMkNfU1IxX1NUT1BGX1BvcykgICAgICAgIC8qITwgMHgwMDAwMDAxMCAqLw0KI2RlZmluZSBJMkNfU1IxX1NUT1BGICAgICAgICAgICAgICAgICAgICAgICBJMkNfU1IxX1NUT1BGX01zayAgICAgICAgICAgICAgICAgIC8qITwgU3RvcCBkZXRlY3Rpb24gKFNsYXZlIG1vZGUpICovDQojZGVmaW5lIEkyQ19TUjFfUlhORV9Qb3MgICAgICAgICAgICAgICAgICAgICg2VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEkyQ19TUjFfUlhORV9Nc2sgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IEkyQ19TUjFfUlhORV9Qb3MpICAgICAgICAgLyohPCAweDAwMDAwMDQwICovDQojZGVmaW5lIEkyQ19TUjFfUlhORSAgICAgICAgICAgICAgICAgICAgICAgIEkyQ19TUjFfUlhORV9Nc2sgICAgICAgICAgICAgICAgICAgLyohPCBEYXRhIFJlZ2lzdGVyIG5vdCBFbXB0eSAocmVjZWl2ZXJzKSAqLw0KI2RlZmluZSBJMkNfU1IxX1RYRV9Qb3MgICAgICAgICAgICAgICAgICAgICAoN1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBJMkNfU1IxX1RYRV9Nc2sgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBJMkNfU1IxX1RYRV9Qb3MpICAgICAgICAgIC8qITwgMHgwMDAwMDA4MCAqLw0KI2RlZmluZSBJMkNfU1IxX1RYRSAgICAgICAgICAgICAgICAgICAgICAgICBJMkNfU1IxX1RYRV9Nc2sgICAgICAgICAgICAgICAgICAgIC8qITwgRGF0YSBSZWdpc3RlciBFbXB0eSAodHJhbnNtaXR0ZXJzKSAqLw0KI2RlZmluZSBJMkNfU1IxX0JFUlJfUG9zICAgICAgICAgICAgICAgICAgICAoOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBJMkNfU1IxX0JFUlJfTXNrICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBJMkNfU1IxX0JFUlJfUG9zKSAgICAgICAgIC8qITwgMHgwMDAwMDEwMCAqLw0KI2RlZmluZSBJMkNfU1IxX0JFUlIgICAgICAgICAgICAgICAgICAgICAgICBJMkNfU1IxX0JFUlJfTXNrICAgICAgICAgICAgICAgICAgIC8qITwgQnVzIEVycm9yICovDQojZGVmaW5lIEkyQ19TUjFfQVJMT19Qb3MgICAgICAgICAgICAgICAgICAgICg5VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEkyQ19TUjFfQVJMT19Nc2sgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IEkyQ19TUjFfQVJMT19Qb3MpICAgICAgICAgLyohPCAweDAwMDAwMjAwICovDQojZGVmaW5lIEkyQ19TUjFfQVJMTyAgICAgICAgICAgICAgICAgICAgICAgIEkyQ19TUjFfQVJMT19Nc2sgICAgICAgICAgICAgICAgICAgLyohPCBBcmJpdHJhdGlvbiBMb3N0IChtYXN0ZXIgbW9kZSkgKi8NCiNkZWZpbmUgSTJDX1NSMV9BRl9Qb3MgICAgICAgICAgICAgICAgICAgICAgKDEwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgSTJDX1NSMV9BRl9Nc2sgICAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgSTJDX1NSMV9BRl9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDA0MDAgKi8NCiNkZWZpbmUgSTJDX1NSMV9BRiAgICAgICAgICAgICAgICAgICAgICAgICAgSTJDX1NSMV9BRl9Nc2sgICAgICAgICAgICAgICAgICAgICAvKiE8IEFja25vd2xlZGdlIEZhaWx1cmUgKi8NCiNkZWZpbmUgSTJDX1NSMV9PVlJfUG9zICAgICAgICAgICAgICAgICAgICAgKDExVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgSTJDX1NSMV9PVlJfTXNrICAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgSTJDX1NSMV9PVlJfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDA4MDAgKi8NCiNkZWZpbmUgSTJDX1NSMV9PVlIgICAgICAgICAgICAgICAgICAgICAgICAgSTJDX1NSMV9PVlJfTXNrICAgICAgICAgICAgICAgICAgICAvKiE8IE92ZXJydW4vVW5kZXJydW4gKi8NCiNkZWZpbmUgSTJDX1NSMV9QRUNFUlJfUG9zICAgICAgICAgICAgICAgICAgKDEyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgSTJDX1NSMV9QRUNFUlJfTXNrICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgSTJDX1NSMV9QRUNFUlJfUG9zKSAgICAgICAvKiE8IDB4MDAwMDEwMDAgKi8NCiNkZWZpbmUgSTJDX1NSMV9QRUNFUlIgICAgICAgICAgICAgICAgICAgICAgSTJDX1NSMV9QRUNFUlJfTXNrICAgICAgICAgICAgICAgICAvKiE8IFBFQyBFcnJvciBpbiByZWNlcHRpb24gKi8NCiNkZWZpbmUgSTJDX1NSMV9USU1FT1VUX1BvcyAgICAgICAgICAgICAgICAgKDE0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgSTJDX1NSMV9USU1FT1VUX01zayAgICAgICAgICAgICAgICAgKDB4MVUgPDwgSTJDX1NSMV9USU1FT1VUX1BvcykgICAgICAvKiE8IDB4MDAwMDQwMDAgKi8NCiNkZWZpbmUgSTJDX1NSMV9USU1FT1VUICAgICAgICAgICAgICAgICAgICAgSTJDX1NSMV9USU1FT1VUX01zayAgICAgICAgICAgICAgICAvKiE8IFRpbWVvdXQgb3IgVGxvdyBFcnJvciAqLw0KI2RlZmluZSBJMkNfU1IxX1NNQkFMRVJUX1BvcyAgICAgICAgICAgICAgICAoMTVVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBJMkNfU1IxX1NNQkFMRVJUX01zayAgICAgICAgICAgICAgICAoMHgxVSA8PCBJMkNfU1IxX1NNQkFMRVJUX1BvcykgICAgIC8qITwgMHgwMDAwODAwMCAqLw0KI2RlZmluZSBJMkNfU1IxX1NNQkFMRVJUICAgICAgICAgICAgICAgICAgICBJMkNfU1IxX1NNQkFMRVJUX01zayAgICAgICAgICAgICAgIC8qITwgU01CdXMgQWxlcnQgKi8NCg0KLyoqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBJMkNfU1IyIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgSTJDX1NSMl9NU0xfUG9zICAgICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgSTJDX1NSMl9NU0xfTXNrICAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgSTJDX1NSMl9NU0xfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDAwMDEgKi8NCiNkZWZpbmUgSTJDX1NSMl9NU0wgICAgICAgICAgICAgICAgICAgICAgICAgSTJDX1NSMl9NU0xfTXNrICAgICAgICAgICAgICAgICAgICAvKiE8IE1hc3Rlci9TbGF2ZSAqLw0KI2RlZmluZSBJMkNfU1IyX0JVU1lfUG9zICAgICAgICAgICAgICAgICAgICAoMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBJMkNfU1IyX0JVU1lfTXNrICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBJMkNfU1IyX0JVU1lfUG9zKSAgICAgICAgIC8qITwgMHgwMDAwMDAwMiAqLw0KI2RlZmluZSBJMkNfU1IyX0JVU1kgICAgICAgICAgICAgICAgICAgICAgICBJMkNfU1IyX0JVU1lfTXNrICAgICAgICAgICAgICAgICAgIC8qITwgQnVzIEJ1c3kgKi8NCiNkZWZpbmUgSTJDX1NSMl9UUkFfUG9zICAgICAgICAgICAgICAgICAgICAgKDJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgSTJDX1NSMl9UUkFfTXNrICAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgSTJDX1NSMl9UUkFfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDAwMDQgKi8NCiNkZWZpbmUgSTJDX1NSMl9UUkEgICAgICAgICAgICAgICAgICAgICAgICAgSTJDX1NSMl9UUkFfTXNrICAgICAgICAgICAgICAgICAgICAvKiE8IFRyYW5zbWl0dGVyL1JlY2VpdmVyICovDQojZGVmaW5lIEkyQ19TUjJfR0VOQ0FMTF9Qb3MgICAgICAgICAgICAgICAgICg0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEkyQ19TUjJfR0VOQ0FMTF9Nc2sgICAgICAgICAgICAgICAgICgweDFVIDw8IEkyQ19TUjJfR0VOQ0FMTF9Qb3MpICAgICAgLyohPCAweDAwMDAwMDEwICovDQojZGVmaW5lIEkyQ19TUjJfR0VOQ0FMTCAgICAgICAgICAgICAgICAgICAgIEkyQ19TUjJfR0VOQ0FMTF9Nc2sgICAgICAgICAgICAgICAgLyohPCBHZW5lcmFsIENhbGwgQWRkcmVzcyAoU2xhdmUgbW9kZSkgKi8NCiNkZWZpbmUgSTJDX1NSMl9TTUJERUZBVUxUX1BvcyAgICAgICAgICAgICAgKDVVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgSTJDX1NSMl9TTUJERUZBVUxUX01zayAgICAgICAgICAgICAgKDB4MVUgPDwgSTJDX1NSMl9TTUJERUZBVUxUX1BvcykgICAvKiE8IDB4MDAwMDAwMjAgKi8NCiNkZWZpbmUgSTJDX1NSMl9TTUJERUZBVUxUICAgICAgICAgICAgICAgICAgSTJDX1NSMl9TTUJERUZBVUxUX01zayAgICAgICAgICAgICAvKiE8IFNNQnVzIERldmljZSBEZWZhdWx0IEFkZHJlc3MgKFNsYXZlIG1vZGUpICovDQojZGVmaW5lIEkyQ19TUjJfU01CSE9TVF9Qb3MgICAgICAgICAgICAgICAgICg2VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEkyQ19TUjJfU01CSE9TVF9Nc2sgICAgICAgICAgICAgICAgICgweDFVIDw8IEkyQ19TUjJfU01CSE9TVF9Qb3MpICAgICAgLyohPCAweDAwMDAwMDQwICovDQojZGVmaW5lIEkyQ19TUjJfU01CSE9TVCAgICAgICAgICAgICAgICAgICAgIEkyQ19TUjJfU01CSE9TVF9Nc2sgICAgICAgICAgICAgICAgLyohPCBTTUJ1cyBIb3N0IEhlYWRlciAoU2xhdmUgbW9kZSkgKi8NCiNkZWZpbmUgSTJDX1NSMl9EVUFMRl9Qb3MgICAgICAgICAgICAgICAgICAgKDdVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgSTJDX1NSMl9EVUFMRl9Nc2sgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgSTJDX1NSMl9EVUFMRl9Qb3MpICAgICAgICAvKiE8IDB4MDAwMDAwODAgKi8NCiNkZWZpbmUgSTJDX1NSMl9EVUFMRiAgICAgICAgICAgICAgICAgICAgICAgSTJDX1NSMl9EVUFMRl9Nc2sgICAgICAgICAgICAgICAgICAvKiE8IER1YWwgRmxhZyAoU2xhdmUgbW9kZSkgKi8NCiNkZWZpbmUgSTJDX1NSMl9QRUNfUG9zICAgICAgICAgICAgICAgICAgICAgKDhVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgSTJDX1NSMl9QRUNfTXNrICAgICAgICAgICAgICAgICAgICAgKDB4RkZVIDw8IEkyQ19TUjJfUEVDX1BvcykgICAgICAgICAvKiE8IDB4MDAwMEZGMDAgKi8NCiNkZWZpbmUgSTJDX1NSMl9QRUMgICAgICAgICAgICAgICAgICAgICAgICAgSTJDX1NSMl9QRUNfTXNrICAgICAgICAgICAgICAgICAgICAvKiE8IFBhY2tldCBFcnJvciBDaGVja2luZyBSZWdpc3RlciAqLw0KDQovKioqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIEkyQ19DQ1IgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBJMkNfQ0NSX0NDUl9Qb3MgICAgICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBJMkNfQ0NSX0NDUl9Nc2sgICAgICAgICAgICAgICAgICAgICAoMHhGRkZVIDw8IEkyQ19DQ1JfQ0NSX1BvcykgICAgICAgIC8qITwgMHgwMDAwMEZGRiAqLw0KI2RlZmluZSBJMkNfQ0NSX0NDUiAgICAgICAgICAgICAgICAgICAgICAgICBJMkNfQ0NSX0NDUl9Nc2sgICAgICAgICAgICAgICAgICAgIC8qITwgQ2xvY2sgQ29udHJvbCBSZWdpc3RlciBpbiBGYXN0L1N0YW5kYXJkIG1vZGUgKE1hc3RlciBtb2RlKSAqLw0KI2RlZmluZSBJMkNfQ0NSX0RVVFlfUG9zICAgICAgICAgICAgICAgICAgICAoMTRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBJMkNfQ0NSX0RVVFlfTXNrICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBJMkNfQ0NSX0RVVFlfUG9zKSAgICAgICAgIC8qITwgMHgwMDAwNDAwMCAqLw0KI2RlZmluZSBJMkNfQ0NSX0RVVFkgICAgICAgICAgICAgICAgICAgICAgICBJMkNfQ0NSX0RVVFlfTXNrICAgICAgICAgICAgICAgICAgIC8qITwgRmFzdCBNb2RlIER1dHkgQ3ljbGUgKi8NCiNkZWZpbmUgSTJDX0NDUl9GU19Qb3MgICAgICAgICAgICAgICAgICAgICAgKDE1VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgSTJDX0NDUl9GU19Nc2sgICAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgSTJDX0NDUl9GU19Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDgwMDAgKi8NCiNkZWZpbmUgSTJDX0NDUl9GUyAgICAgICAgICAgICAgICAgICAgICAgICAgSTJDX0NDUl9GU19Nc2sgICAgICAgICAgICAgICAgICAgICAvKiE8IEkyQyBNYXN0ZXIgTW9kZSBTZWxlY3Rpb24gKi8NCg0KLyoqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIEkyQ19UUklTRSByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgSTJDX1RSSVNFX1RSSVNFX1BvcyAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgSTJDX1RSSVNFX1RSSVNFX01zayAgICAgICAgICAgICAgICAgKDB4M0ZVIDw8IEkyQ19UUklTRV9UUklTRV9Qb3MpICAgICAvKiE8IDB4MDAwMDAwM0YgKi8NCiNkZWZpbmUgSTJDX1RSSVNFX1RSSVNFICAgICAgICAgICAgICAgICAgICAgSTJDX1RSSVNFX1RSSVNFX01zayAgICAgICAgICAgICAgICAvKiE8IE1heGltdW0gUmlzZSBUaW1lIGluIEZhc3QvU3RhbmRhcmQgbW9kZSAoTWFzdGVyIG1vZGUpICovDQoNCi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovDQovKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLw0KLyogICAgICAgICAgICAgICAgICAgICAgICBJbmRlcGVuZGVudCBXQVRDSERPRyAoSVdERykgICAgICAgICAgICAgICAgICAgICAgICAgKi8NCi8qICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovDQovKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLw0KDQovKioqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIElXREdfS1IgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBJV0RHX0tSX0tFWV9Qb3MgICAgICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBJV0RHX0tSX0tFWV9Nc2sgICAgICAgICAgICAgICAgICAgICAoMHhGRkZGVSA8PCBJV0RHX0tSX0tFWV9Qb3MpICAgICAgIC8qITwgMHgwMDAwRkZGRiAqLw0KI2RlZmluZSBJV0RHX0tSX0tFWSAgICAgICAgICAgICAgICAgICAgICAgICBJV0RHX0tSX0tFWV9Nc2sgICAgICAgICAgICAgICAgICAgIC8qITwgS2V5IHZhbHVlICh3cml0ZSBvbmx5LCByZWFkIDAwMDBoKSAqLw0KDQovKioqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIElXREdfUFIgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBJV0RHX1BSX1BSX1BvcyAgICAgICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBJV0RHX1BSX1BSX01zayAgICAgICAgICAgICAgICAgICAgICAoMHg3VSA8PCBJV0RHX1BSX1BSX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDAwNyAqLw0KI2RlZmluZSBJV0RHX1BSX1BSICAgICAgICAgICAgICAgICAgICAgICAgICBJV0RHX1BSX1BSX01zayAgICAgICAgICAgICAgICAgICAgIC8qITwgUFJbMjowXSAoUHJlc2NhbGVyIGRpdmlkZXIpICovDQojZGVmaW5lIElXREdfUFJfUFJfMCAgICAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IElXREdfUFJfUFJfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwMDAxICovDQojZGVmaW5lIElXREdfUFJfUFJfMSAgICAgICAgICAgICAgICAgICAgICAgICgweDJVIDw8IElXREdfUFJfUFJfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwMDAyICovDQojZGVmaW5lIElXREdfUFJfUFJfMiAgICAgICAgICAgICAgICAgICAgICAgICgweDRVIDw8IElXREdfUFJfUFJfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwMDA0ICovDQoNCi8qKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgSVdER19STFIgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIElXREdfUkxSX1JMX1BvcyAgICAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIElXREdfUkxSX1JMX01zayAgICAgICAgICAgICAgICAgICAgICgweEZGRlUgPDwgSVdER19STFJfUkxfUG9zKSAgICAgICAgLyohPCAweDAwMDAwRkZGICovDQojZGVmaW5lIElXREdfUkxSX1JMICAgICAgICAgICAgICAgICAgICAgICAgIElXREdfUkxSX1JMX01zayAgICAgICAgICAgICAgICAgICAgLyohPCBXYXRjaGRvZyBjb3VudGVyIHJlbG9hZCB2YWx1ZSAqLw0KDQovKioqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIElXREdfU1IgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBJV0RHX1NSX1BWVV9Qb3MgICAgICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBJV0RHX1NSX1BWVV9Nc2sgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBJV0RHX1NSX1BWVV9Qb3MpICAgICAgICAgIC8qITwgMHgwMDAwMDAwMSAqLw0KI2RlZmluZSBJV0RHX1NSX1BWVSAgICAgICAgICAgICAgICAgICAgICAgICBJV0RHX1NSX1BWVV9Nc2sgICAgICAgICAgICAgICAgICAgIC8qITwgV2F0Y2hkb2cgcHJlc2NhbGVyIHZhbHVlIHVwZGF0ZSAqLw0KI2RlZmluZSBJV0RHX1NSX1JWVV9Qb3MgICAgICAgICAgICAgICAgICAgICAoMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBJV0RHX1NSX1JWVV9Nc2sgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBJV0RHX1NSX1JWVV9Qb3MpICAgICAgICAgIC8qITwgMHgwMDAwMDAwMiAqLw0KI2RlZmluZSBJV0RHX1NSX1JWVSAgICAgICAgICAgICAgICAgICAgICAgICBJV0RHX1NSX1JWVV9Nc2sgICAgICAgICAgICAgICAgICAgIC8qITwgV2F0Y2hkb2cgY291bnRlciByZWxvYWQgdmFsdWUgdXBkYXRlICovDQoNCi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovDQovKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLw0KLyogICAgICAgICAgICAgICAgICAgICAgICAgIFBvd2VyIENvbnRyb2wgKFBXUikgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8NCi8qICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovDQovKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLw0KDQojZGVmaW5lIFBXUl9QVkRfU1VQUE9SVCAgICAgICAgICAgICAgICAgICAgICAgLyohPCBQV1IgZmVhdHVyZSBhdmFpbGFibGUgb25seSBvbiBzcGVjaWZpYyBkZXZpY2VzOiBQb3dlciBWb2x0YWdlIERldGVjdGlvbiBmZWF0dXJlICovDQoNCi8qKioqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFBXUl9DUiByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIFBXUl9DUl9MUFNEU1JfUG9zICAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFBXUl9DUl9MUFNEU1JfTXNrICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFBXUl9DUl9MUFNEU1JfUG9zKSAgICAgICAgLyohPCAweDAwMDAwMDAxICovDQojZGVmaW5lIFBXUl9DUl9MUFNEU1IgICAgICAgICAgICAgICAgICAgICAgIFBXUl9DUl9MUFNEU1JfTXNrICAgICAgICAgICAgICAgICAgLyohPCBMb3ctcG93ZXIgZGVlcHNsZWVwL3NsZWVwL2xvdyBwb3dlciBydW4gKi8NCiNkZWZpbmUgUFdSX0NSX1BERFNfUG9zICAgICAgICAgICAgICAgICAgICAgKDFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUFdSX0NSX1BERFNfTXNrICAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgUFdSX0NSX1BERFNfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDAwMDIgKi8NCiNkZWZpbmUgUFdSX0NSX1BERFMgICAgICAgICAgICAgICAgICAgICAgICAgUFdSX0NSX1BERFNfTXNrICAgICAgICAgICAgICAgICAgICAvKiE8IFBvd2VyIERvd24gRGVlcHNsZWVwICovDQojZGVmaW5lIFBXUl9DUl9DV1VGX1BvcyAgICAgICAgICAgICAgICAgICAgICgyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFBXUl9DUl9DV1VGX01zayAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFBXUl9DUl9DV1VGX1BvcykgICAgICAgICAgLyohPCAweDAwMDAwMDA0ICovDQojZGVmaW5lIFBXUl9DUl9DV1VGICAgICAgICAgICAgICAgICAgICAgICAgIFBXUl9DUl9DV1VGX01zayAgICAgICAgICAgICAgICAgICAgLyohPCBDbGVhciBXYWtldXAgRmxhZyAqLw0KI2RlZmluZSBQV1JfQ1JfQ1NCRl9Qb3MgICAgICAgICAgICAgICAgICAgICAoM1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBQV1JfQ1JfQ1NCRl9Nc2sgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBQV1JfQ1JfQ1NCRl9Qb3MpICAgICAgICAgIC8qITwgMHgwMDAwMDAwOCAqLw0KI2RlZmluZSBQV1JfQ1JfQ1NCRiAgICAgICAgICAgICAgICAgICAgICAgICBQV1JfQ1JfQ1NCRl9Nc2sgICAgICAgICAgICAgICAgICAgIC8qITwgQ2xlYXIgU3RhbmRieSBGbGFnICovDQojZGVmaW5lIFBXUl9DUl9QVkRFX1BvcyAgICAgICAgICAgICAgICAgICAgICg0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFBXUl9DUl9QVkRFX01zayAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFBXUl9DUl9QVkRFX1BvcykgICAgICAgICAgLyohPCAweDAwMDAwMDEwICovDQojZGVmaW5lIFBXUl9DUl9QVkRFICAgICAgICAgICAgICAgICAgICAgICAgIFBXUl9DUl9QVkRFX01zayAgICAgICAgICAgICAgICAgICAgLyohPCBQb3dlciBWb2x0YWdlIERldGVjdG9yIEVuYWJsZSAqLw0KDQojZGVmaW5lIFBXUl9DUl9QTFNfUG9zICAgICAgICAgICAgICAgICAgICAgICg1VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFBXUl9DUl9QTFNfTXNrICAgICAgICAgICAgICAgICAgICAgICgweDdVIDw8IFBXUl9DUl9QTFNfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwMEUwICovDQojZGVmaW5lIFBXUl9DUl9QTFMgICAgICAgICAgICAgICAgICAgICAgICAgIFBXUl9DUl9QTFNfTXNrICAgICAgICAgICAgICAgICAgICAgLyohPCBQTFNbMjowXSBiaXRzIChQVkQgTGV2ZWwgU2VsZWN0aW9uKSAqLw0KI2RlZmluZSBQV1JfQ1JfUExTXzAgICAgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBQV1JfQ1JfUExTX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDAyMCAqLw0KI2RlZmluZSBQV1JfQ1JfUExTXzEgICAgICAgICAgICAgICAgICAgICAgICAoMHgyVSA8PCBQV1JfQ1JfUExTX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDA0MCAqLw0KI2RlZmluZSBQV1JfQ1JfUExTXzIgICAgICAgICAgICAgICAgICAgICAgICAoMHg0VSA8PCBQV1JfQ1JfUExTX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDA4MCAqLw0KDQovKiE8IFBWRCBsZXZlbCBjb25maWd1cmF0aW9uICovDQojZGVmaW5lIFBXUl9DUl9QTFNfTEVWMCAgICAgICAgICAgICAgICAgICAgICgweDAwMDAwMDAwVSkgICAgICAgICAgICAgICAgICAgICAgLyohPCBQVkQgbGV2ZWwgMCAqLw0KI2RlZmluZSBQV1JfQ1JfUExTX0xFVjEgICAgICAgICAgICAgICAgICAgICAoMHgwMDAwMDAyMFUpICAgICAgICAgICAgICAgICAgICAgIC8qITwgUFZEIGxldmVsIDEgKi8NCiNkZWZpbmUgUFdSX0NSX1BMU19MRVYyICAgICAgICAgICAgICAgICAgICAgKDB4MDAwMDAwNDBVKSAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBWRCBsZXZlbCAyICovDQojZGVmaW5lIFBXUl9DUl9QTFNfTEVWMyAgICAgICAgICAgICAgICAgICAgICgweDAwMDAwMDYwVSkgICAgICAgICAgICAgICAgICAgICAgLyohPCBQVkQgbGV2ZWwgMyAqLw0KI2RlZmluZSBQV1JfQ1JfUExTX0xFVjQgICAgICAgICAgICAgICAgICAgICAoMHgwMDAwMDA4MFUpICAgICAgICAgICAgICAgICAgICAgIC8qITwgUFZEIGxldmVsIDQgKi8NCiNkZWZpbmUgUFdSX0NSX1BMU19MRVY1ICAgICAgICAgICAgICAgICAgICAgKDB4MDAwMDAwQTBVKSAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBWRCBsZXZlbCA1ICovDQojZGVmaW5lIFBXUl9DUl9QTFNfTEVWNiAgICAgICAgICAgICAgICAgICAgICgweDAwMDAwMEMwVSkgICAgICAgICAgICAgICAgICAgICAgLyohPCBQVkQgbGV2ZWwgNiAqLw0KI2RlZmluZSBQV1JfQ1JfUExTX0xFVjcgICAgICAgICAgICAgICAgICAgICAoMHgwMDAwMDBFMFUpICAgICAgICAgICAgICAgICAgICAgIC8qITwgUFZEIGxldmVsIDcgKi8NCg0KI2RlZmluZSBQV1JfQ1JfREJQX1BvcyAgICAgICAgICAgICAgICAgICAgICAoOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBQV1JfQ1JfREJQX01zayAgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBQV1JfQ1JfREJQX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDEwMCAqLw0KI2RlZmluZSBQV1JfQ1JfREJQICAgICAgICAgICAgICAgICAgICAgICAgICBQV1JfQ1JfREJQX01zayAgICAgICAgICAgICAgICAgICAgIC8qITwgRGlzYWJsZSBCYWNrdXAgRG9tYWluIHdyaXRlIHByb3RlY3Rpb24gKi8NCiNkZWZpbmUgUFdSX0NSX1VMUF9Qb3MgICAgICAgICAgICAgICAgICAgICAgKDlVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUFdSX0NSX1VMUF9Nc2sgICAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgUFdSX0NSX1VMUF9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDAyMDAgKi8NCiNkZWZpbmUgUFdSX0NSX1VMUCAgICAgICAgICAgICAgICAgICAgICAgICAgUFdSX0NSX1VMUF9Nc2sgICAgICAgICAgICAgICAgICAgICAvKiE8IFVsdHJhIExvdyBQb3dlciBtb2RlICovDQojZGVmaW5lIFBXUl9DUl9GV1VfUG9zICAgICAgICAgICAgICAgICAgICAgICgxMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFBXUl9DUl9GV1VfTXNrICAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFBXUl9DUl9GV1VfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwNDAwICovDQojZGVmaW5lIFBXUl9DUl9GV1UgICAgICAgICAgICAgICAgICAgICAgICAgIFBXUl9DUl9GV1VfTXNrICAgICAgICAgICAgICAgICAgICAgLyohPCBGYXN0IHdha2V1cCAqLw0KDQojZGVmaW5lIFBXUl9DUl9WT1NfUG9zICAgICAgICAgICAgICAgICAgICAgICgxMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFBXUl9DUl9WT1NfTXNrICAgICAgICAgICAgICAgICAgICAgICgweDNVIDw8IFBXUl9DUl9WT1NfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAxODAwICovDQojZGVmaW5lIFBXUl9DUl9WT1MgICAgICAgICAgICAgICAgICAgICAgICAgIFBXUl9DUl9WT1NfTXNrICAgICAgICAgICAgICAgICAgICAgLyohPCBWT1NbMTowXSBiaXRzIChWb2x0YWdlIHNjYWxpbmcgcmFuZ2Ugc2VsZWN0aW9uKSAqLw0KI2RlZmluZSBQV1JfQ1JfVk9TXzAgICAgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBQV1JfQ1JfVk9TX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDgwMCAqLw0KI2RlZmluZSBQV1JfQ1JfVk9TXzEgICAgICAgICAgICAgICAgICAgICAgICAoMHgyVSA8PCBQV1JfQ1JfVk9TX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMTAwMCAqLw0KI2RlZmluZSBQV1JfQ1JfTFBSVU5fUG9zICAgICAgICAgICAgICAgICAgICAoMTRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBQV1JfQ1JfTFBSVU5fTXNrICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBQV1JfQ1JfTFBSVU5fUG9zKSAgICAgICAgIC8qITwgMHgwMDAwNDAwMCAqLw0KI2RlZmluZSBQV1JfQ1JfTFBSVU4gICAgICAgICAgICAgICAgICAgICAgICBQV1JfQ1JfTFBSVU5fTXNrICAgICAgICAgICAgICAgICAgIC8qITwgTG93IHBvd2VyIHJ1biBtb2RlICovDQoNCi8qKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgUFdSX0NTUiByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIFBXUl9DU1JfV1VGX1BvcyAgICAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFBXUl9DU1JfV1VGX01zayAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFBXUl9DU1JfV1VGX1BvcykgICAgICAgICAgLyohPCAweDAwMDAwMDAxICovDQojZGVmaW5lIFBXUl9DU1JfV1VGICAgICAgICAgICAgICAgICAgICAgICAgIFBXUl9DU1JfV1VGX01zayAgICAgICAgICAgICAgICAgICAgLyohPCBXYWtldXAgRmxhZyAqLw0KI2RlZmluZSBQV1JfQ1NSX1NCRl9Qb3MgICAgICAgICAgICAgICAgICAgICAoMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBQV1JfQ1NSX1NCRl9Nc2sgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBQV1JfQ1NSX1NCRl9Qb3MpICAgICAgICAgIC8qITwgMHgwMDAwMDAwMiAqLw0KI2RlZmluZSBQV1JfQ1NSX1NCRiAgICAgICAgICAgICAgICAgICAgICAgICBQV1JfQ1NSX1NCRl9Nc2sgICAgICAgICAgICAgICAgICAgIC8qITwgU3RhbmRieSBGbGFnICovDQojZGVmaW5lIFBXUl9DU1JfUFZET19Qb3MgICAgICAgICAgICAgICAgICAgICgyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFBXUl9DU1JfUFZET19Nc2sgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFBXUl9DU1JfUFZET19Qb3MpICAgICAgICAgLyohPCAweDAwMDAwMDA0ICovDQojZGVmaW5lIFBXUl9DU1JfUFZETyAgICAgICAgICAgICAgICAgICAgICAgIFBXUl9DU1JfUFZET19Nc2sgICAgICAgICAgICAgICAgICAgLyohPCBQVkQgT3V0cHV0ICovDQojZGVmaW5lIFBXUl9DU1JfVlJFRklOVFJEWUZfUG9zICAgICAgICAgICAgICgzVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFBXUl9DU1JfVlJFRklOVFJEWUZfTXNrICAgICAgICAgICAgICgweDFVIDw8IFBXUl9DU1JfVlJFRklOVFJEWUZfUG9zKSAgLyohPCAweDAwMDAwMDA4ICovDQojZGVmaW5lIFBXUl9DU1JfVlJFRklOVFJEWUYgICAgICAgICAgICAgICAgIFBXUl9DU1JfVlJFRklOVFJEWUZfTXNrICAgICAgICAgICAgLyohPCBJbnRlcm5hbCB2b2x0YWdlIHJlZmVyZW5jZSAoVlJFRklOVCkgcmVhZHkgZmxhZyAqLw0KI2RlZmluZSBQV1JfQ1NSX1ZPU0ZfUG9zICAgICAgICAgICAgICAgICAgICAoNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBQV1JfQ1NSX1ZPU0ZfTXNrICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBQV1JfQ1NSX1ZPU0ZfUG9zKSAgICAgICAgIC8qITwgMHgwMDAwMDAxMCAqLw0KI2RlZmluZSBQV1JfQ1NSX1ZPU0YgICAgICAgICAgICAgICAgICAgICAgICBQV1JfQ1NSX1ZPU0ZfTXNrICAgICAgICAgICAgICAgICAgIC8qITwgVm9sdGFnZSBTY2FsaW5nIHNlbGVjdCBmbGFnICovDQojZGVmaW5lIFBXUl9DU1JfUkVHTFBGX1BvcyAgICAgICAgICAgICAgICAgICg1VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFBXUl9DU1JfUkVHTFBGX01zayAgICAgICAgICAgICAgICAgICgweDFVIDw8IFBXUl9DU1JfUkVHTFBGX1BvcykgICAgICAgLyohPCAweDAwMDAwMDIwICovDQojZGVmaW5lIFBXUl9DU1JfUkVHTFBGICAgICAgICAgICAgICAgICAgICAgIFBXUl9DU1JfUkVHTFBGX01zayAgICAgICAgICAgICAgICAgLyohPCBSZWd1bGF0b3IgTFAgZmxhZyAqLw0KDQojZGVmaW5lIFBXUl9DU1JfRVdVUDFfUG9zICAgICAgICAgICAgICAgICAgICg4VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFBXUl9DU1JfRVdVUDFfTXNrICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFBXUl9DU1JfRVdVUDFfUG9zKSAgICAgICAgLyohPCAweDAwMDAwMTAwICovDQojZGVmaW5lIFBXUl9DU1JfRVdVUDEgICAgICAgICAgICAgICAgICAgICAgIFBXUl9DU1JfRVdVUDFfTXNrICAgICAgICAgICAgICAgICAgLyohPCBFbmFibGUgV0tVUCBwaW4gMSAqLw0KI2RlZmluZSBQV1JfQ1NSX0VXVVAyX1BvcyAgICAgICAgICAgICAgICAgICAoOVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBQV1JfQ1NSX0VXVVAyX01zayAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBQV1JfQ1NSX0VXVVAyX1BvcykgICAgICAgIC8qITwgMHgwMDAwMDIwMCAqLw0KI2RlZmluZSBQV1JfQ1NSX0VXVVAyICAgICAgICAgICAgICAgICAgICAgICBQV1JfQ1NSX0VXVVAyX01zayAgICAgICAgICAgICAgICAgIC8qITwgRW5hYmxlIFdLVVAgcGluIDIgKi8NCiNkZWZpbmUgUFdSX0NTUl9FV1VQM19Qb3MgICAgICAgICAgICAgICAgICAgKDEwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUFdSX0NTUl9FV1VQM19Nc2sgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgUFdSX0NTUl9FV1VQM19Qb3MpICAgICAgICAvKiE8IDB4MDAwMDA0MDAgKi8NCiNkZWZpbmUgUFdSX0NTUl9FV1VQMyAgICAgICAgICAgICAgICAgICAgICAgUFdSX0NTUl9FV1VQM19Nc2sgICAgICAgICAgICAgICAgICAvKiE8IEVuYWJsZSBXS1VQIHBpbiAzICovDQoNCi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovDQovKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLw0KLyogICAgICAgICAgICAgICAgICAgICAgUmVzZXQgYW5kIENsb2NrIENvbnRyb2wgKFJDQykgICAgICAgICAgICAgICAgICAgICAgICAgKi8NCi8qICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovDQovKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLw0KLyoNCiogQGJyaWVmIFNwZWNpZmljIGRldmljZSBmZWF0dXJlIGRlZmluaXRpb25zICAobm90IHByZXNlbnQgb24gYWxsIGRldmljZXMgaW4gdGhlIFNUTTMyRjAgc2VyaWUpDQoqLw0KI2RlZmluZSBSQ0NfTFNFQ1NTX1NVUFBPUlQgICAgICAgICAgLyohPCBMU0UgQ1NTIGZlYXR1cmUgc3VwcG9ydCAqLw0KDQovKioqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBSQ0NfQ1IgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBSQ0NfQ1JfSFNJT05fUG9zICAgICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQ1JfSFNJT05fTXNrICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBSQ0NfQ1JfSFNJT05fUG9zKSAgICAgICAgIC8qITwgMHgwMDAwMDAwMSAqLw0KI2RlZmluZSBSQ0NfQ1JfSFNJT04gICAgICAgICAgICAgICAgICAgICAgICBSQ0NfQ1JfSFNJT05fTXNrICAgICAgICAgICAgICAgICAgIC8qITwgSW50ZXJuYWwgSGlnaCBTcGVlZCBjbG9jayBlbmFibGUgKi8NCiNkZWZpbmUgUkNDX0NSX0hTSVJEWV9Qb3MgICAgICAgICAgICAgICAgICAgKDFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0NSX0hTSVJEWV9Nc2sgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgUkNDX0NSX0hTSVJEWV9Qb3MpICAgICAgICAvKiE8IDB4MDAwMDAwMDIgKi8NCiNkZWZpbmUgUkNDX0NSX0hTSVJEWSAgICAgICAgICAgICAgICAgICAgICAgUkNDX0NSX0hTSVJEWV9Nc2sgICAgICAgICAgICAgICAgICAvKiE8IEludGVybmFsIEhpZ2ggU3BlZWQgY2xvY2sgcmVhZHkgZmxhZyAqLw0KDQojZGVmaW5lIFJDQ19DUl9NU0lPTl9Qb3MgICAgICAgICAgICAgICAgICAgICg4VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19DUl9NU0lPTl9Nc2sgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFJDQ19DUl9NU0lPTl9Qb3MpICAgICAgICAgLyohPCAweDAwMDAwMTAwICovDQojZGVmaW5lIFJDQ19DUl9NU0lPTiAgICAgICAgICAgICAgICAgICAgICAgIFJDQ19DUl9NU0lPTl9Nc2sgICAgICAgICAgICAgICAgICAgLyohPCBJbnRlcm5hbCBNdWx0aSBTcGVlZCBjbG9jayBlbmFibGUgKi8NCiNkZWZpbmUgUkNDX0NSX01TSVJEWV9Qb3MgICAgICAgICAgICAgICAgICAgKDlVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0NSX01TSVJEWV9Nc2sgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgUkNDX0NSX01TSVJEWV9Qb3MpICAgICAgICAvKiE8IDB4MDAwMDAyMDAgKi8NCiNkZWZpbmUgUkNDX0NSX01TSVJEWSAgICAgICAgICAgICAgICAgICAgICAgUkNDX0NSX01TSVJEWV9Nc2sgICAgICAgICAgICAgICAgICAvKiE8IEludGVybmFsIE11bHRpIFNwZWVkIGNsb2NrIHJlYWR5IGZsYWcgKi8NCg0KI2RlZmluZSBSQ0NfQ1JfSFNFT05fUG9zICAgICAgICAgICAgICAgICAgICAoMTZVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQ1JfSFNFT05fTXNrICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBSQ0NfQ1JfSFNFT05fUG9zKSAgICAgICAgIC8qITwgMHgwMDAxMDAwMCAqLw0KI2RlZmluZSBSQ0NfQ1JfSFNFT04gICAgICAgICAgICAgICAgICAgICAgICBSQ0NfQ1JfSFNFT05fTXNrICAgICAgICAgICAgICAgICAgIC8qITwgRXh0ZXJuYWwgSGlnaCBTcGVlZCBjbG9jayBlbmFibGUgKi8NCiNkZWZpbmUgUkNDX0NSX0hTRVJEWV9Qb3MgICAgICAgICAgICAgICAgICAgKDE3VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0NSX0hTRVJEWV9Nc2sgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgUkNDX0NSX0hTRVJEWV9Qb3MpICAgICAgICAvKiE8IDB4MDAwMjAwMDAgKi8NCiNkZWZpbmUgUkNDX0NSX0hTRVJEWSAgICAgICAgICAgICAgICAgICAgICAgUkNDX0NSX0hTRVJEWV9Nc2sgICAgICAgICAgICAgICAgICAvKiE8IEV4dGVybmFsIEhpZ2ggU3BlZWQgY2xvY2sgcmVhZHkgZmxhZyAqLw0KI2RlZmluZSBSQ0NfQ1JfSFNFQllQX1BvcyAgICAgICAgICAgICAgICAgICAoMThVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQ1JfSFNFQllQX01zayAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBSQ0NfQ1JfSFNFQllQX1BvcykgICAgICAgIC8qITwgMHgwMDA0MDAwMCAqLw0KI2RlZmluZSBSQ0NfQ1JfSFNFQllQICAgICAgICAgICAgICAgICAgICAgICBSQ0NfQ1JfSFNFQllQX01zayAgICAgICAgICAgICAgICAgIC8qITwgRXh0ZXJuYWwgSGlnaCBTcGVlZCBjbG9jayBCeXBhc3MgKi8NCg0KI2RlZmluZSBSQ0NfQ1JfUExMT05fUG9zICAgICAgICAgICAgICAgICAgICAoMjRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQ1JfUExMT05fTXNrICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBSQ0NfQ1JfUExMT05fUG9zKSAgICAgICAgIC8qITwgMHgwMTAwMDAwMCAqLw0KI2RlZmluZSBSQ0NfQ1JfUExMT04gICAgICAgICAgICAgICAgICAgICAgICBSQ0NfQ1JfUExMT05fTXNrICAgICAgICAgICAgICAgICAgIC8qITwgUExMIGVuYWJsZSAqLw0KI2RlZmluZSBSQ0NfQ1JfUExMUkRZX1BvcyAgICAgICAgICAgICAgICAgICAoMjVVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQ1JfUExMUkRZX01zayAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBSQ0NfQ1JfUExMUkRZX1BvcykgICAgICAgIC8qITwgMHgwMjAwMDAwMCAqLw0KI2RlZmluZSBSQ0NfQ1JfUExMUkRZICAgICAgICAgICAgICAgICAgICAgICBSQ0NfQ1JfUExMUkRZX01zayAgICAgICAgICAgICAgICAgIC8qITwgUExMIGNsb2NrIHJlYWR5IGZsYWcgKi8NCiNkZWZpbmUgUkNDX0NSX0NTU09OX1BvcyAgICAgICAgICAgICAgICAgICAgKDI4VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0NSX0NTU09OX01zayAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgUkNDX0NSX0NTU09OX1BvcykgICAgICAgICAvKiE8IDB4MTAwMDAwMDAgKi8NCiNkZWZpbmUgUkNDX0NSX0NTU09OICAgICAgICAgICAgICAgICAgICAgICAgUkNDX0NSX0NTU09OX01zayAgICAgICAgICAgICAgICAgICAvKiE8IENsb2NrIFNlY3VyaXR5IFN5c3RlbSBlbmFibGUgKi8NCg0KI2RlZmluZSBSQ0NfQ1JfUlRDUFJFX1BvcyAgICAgICAgICAgICAgICAgICAoMjlVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQ1JfUlRDUFJFX01zayAgICAgICAgICAgICAgICAgICAoMHgzVSA8PCBSQ0NfQ1JfUlRDUFJFX1BvcykgICAgICAgIC8qITwgMHg2MDAwMDAwMCAqLw0KI2RlZmluZSBSQ0NfQ1JfUlRDUFJFICAgICAgICAgICAgICAgICAgICAgICBSQ0NfQ1JfUlRDUFJFX01zayAgICAgICAgICAgICAgICAgIC8qITwgUlRDIFByZXNjYWxlciAqLw0KI2RlZmluZSBSQ0NfQ1JfUlRDUFJFXzAgICAgICAgICAgICAgICAgICAgICAoMHgyMDAwMDAwMFUpICAgICAgICAgICAgICAgICAgICAgIC8qITwgQml0MCAqLw0KI2RlZmluZSBSQ0NfQ1JfUlRDUFJFXzEgICAgICAgICAgICAgICAgICAgICAoMHg0MDAwMDAwMFUpICAgICAgICAgICAgICAgICAgICAgIC8qITwgQml0MSAqLw0KDQovKioqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBSQ0NfSUNTQ1IgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBSQ0NfSUNTQ1JfSFNJQ0FMX1BvcyAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfSUNTQ1JfSFNJQ0FMX01zayAgICAgICAgICAgICAgICAoMHhGRlUgPDwgUkNDX0lDU0NSX0hTSUNBTF9Qb3MpICAgIC8qITwgMHgwMDAwMDBGRiAqLw0KI2RlZmluZSBSQ0NfSUNTQ1JfSFNJQ0FMICAgICAgICAgICAgICAgICAgICBSQ0NfSUNTQ1JfSFNJQ0FMX01zayAgICAgICAgICAgICAgIC8qITwgSW50ZXJuYWwgSGlnaCBTcGVlZCBjbG9jayBDYWxpYnJhdGlvbiAqLw0KI2RlZmluZSBSQ0NfSUNTQ1JfSFNJVFJJTV9Qb3MgICAgICAgICAgICAgICAoOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfSUNTQ1JfSFNJVFJJTV9Nc2sgICAgICAgICAgICAgICAoMHgxRlUgPDwgUkNDX0lDU0NSX0hTSVRSSU1fUG9zKSAgIC8qITwgMHgwMDAwMUYwMCAqLw0KI2RlZmluZSBSQ0NfSUNTQ1JfSFNJVFJJTSAgICAgICAgICAgICAgICAgICBSQ0NfSUNTQ1JfSFNJVFJJTV9Nc2sgICAgICAgICAgICAgIC8qITwgSW50ZXJuYWwgSGlnaCBTcGVlZCBjbG9jayB0cmltbWluZyAqLw0KDQojZGVmaW5lIFJDQ19JQ1NDUl9NU0lSQU5HRV9Qb3MgICAgICAgICAgICAgICgxM1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19JQ1NDUl9NU0lSQU5HRV9Nc2sgICAgICAgICAgICAgICgweDdVIDw8IFJDQ19JQ1NDUl9NU0lSQU5HRV9Qb3MpICAgLyohPCAweDAwMDBFMDAwICovDQojZGVmaW5lIFJDQ19JQ1NDUl9NU0lSQU5HRSAgICAgICAgICAgICAgICAgIFJDQ19JQ1NDUl9NU0lSQU5HRV9Nc2sgICAgICAgICAgICAgLyohPCBJbnRlcm5hbCBNdWx0aSBTcGVlZCBjbG9jayBSYW5nZSAqLw0KI2RlZmluZSBSQ0NfSUNTQ1JfTVNJUkFOR0VfMCAgICAgICAgICAgICAgICAoMHgwVSA8PCBSQ0NfSUNTQ1JfTVNJUkFOR0VfUG9zKSAgIC8qITwgMHgwMDAwMDAwMCAqLw0KI2RlZmluZSBSQ0NfSUNTQ1JfTVNJUkFOR0VfMSAgICAgICAgICAgICAgICAoMHgxVSA8PCBSQ0NfSUNTQ1JfTVNJUkFOR0VfUG9zKSAgIC8qITwgMHgwMDAwMjAwMCAqLw0KI2RlZmluZSBSQ0NfSUNTQ1JfTVNJUkFOR0VfMiAgICAgICAgICAgICAgICAoMHgyVSA8PCBSQ0NfSUNTQ1JfTVNJUkFOR0VfUG9zKSAgIC8qITwgMHgwMDAwNDAwMCAqLw0KI2RlZmluZSBSQ0NfSUNTQ1JfTVNJUkFOR0VfMyAgICAgICAgICAgICAgICAoMHgzVSA8PCBSQ0NfSUNTQ1JfTVNJUkFOR0VfUG9zKSAgIC8qITwgMHgwMDAwNjAwMCAqLw0KI2RlZmluZSBSQ0NfSUNTQ1JfTVNJUkFOR0VfNCAgICAgICAgICAgICAgICAoMHg0VSA8PCBSQ0NfSUNTQ1JfTVNJUkFOR0VfUG9zKSAgIC8qITwgMHgwMDAwODAwMCAqLw0KI2RlZmluZSBSQ0NfSUNTQ1JfTVNJUkFOR0VfNSAgICAgICAgICAgICAgICAoMHg1VSA8PCBSQ0NfSUNTQ1JfTVNJUkFOR0VfUG9zKSAgIC8qITwgMHgwMDAwQTAwMCAqLw0KI2RlZmluZSBSQ0NfSUNTQ1JfTVNJUkFOR0VfNiAgICAgICAgICAgICAgICAoMHg2VSA8PCBSQ0NfSUNTQ1JfTVNJUkFOR0VfUG9zKSAgIC8qITwgMHgwMDAwQzAwMCAqLw0KI2RlZmluZSBSQ0NfSUNTQ1JfTVNJQ0FMX1BvcyAgICAgICAgICAgICAgICAoMTZVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfSUNTQ1JfTVNJQ0FMX01zayAgICAgICAgICAgICAgICAoMHhGRlUgPDwgUkNDX0lDU0NSX01TSUNBTF9Qb3MpICAgIC8qITwgMHgwMEZGMDAwMCAqLw0KI2RlZmluZSBSQ0NfSUNTQ1JfTVNJQ0FMICAgICAgICAgICAgICAgICAgICBSQ0NfSUNTQ1JfTVNJQ0FMX01zayAgICAgICAgICAgICAgIC8qITwgSW50ZXJuYWwgTXVsdGkgU3BlZWQgY2xvY2sgQ2FsaWJyYXRpb24gKi8NCiNkZWZpbmUgUkNDX0lDU0NSX01TSVRSSU1fUG9zICAgICAgICAgICAgICAgKDI0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0lDU0NSX01TSVRSSU1fTXNrICAgICAgICAgICAgICAgKDB4RkZVIDw8IFJDQ19JQ1NDUl9NU0lUUklNX1BvcykgICAvKiE8IDB4RkYwMDAwMDAgKi8NCiNkZWZpbmUgUkNDX0lDU0NSX01TSVRSSU0gICAgICAgICAgICAgICAgICAgUkNDX0lDU0NSX01TSVRSSU1fTXNrICAgICAgICAgICAgICAvKiE8IEludGVybmFsIE11bHRpIFNwZWVkIGNsb2NrIHRyaW1taW5nICovDQoNCi8qKioqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFJDQ19DRkdSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIFJDQ19DRkdSX1NXX1BvcyAgICAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19DRkdSX1NXX01zayAgICAgICAgICAgICAgICAgICAgICgweDNVIDw8IFJDQ19DRkdSX1NXX1BvcykgICAgICAgICAgLyohPCAweDAwMDAwMDAzICovDQojZGVmaW5lIFJDQ19DRkdSX1NXICAgICAgICAgICAgICAgICAgICAgICAgIFJDQ19DRkdSX1NXX01zayAgICAgICAgICAgICAgICAgICAgLyohPCBTV1sxOjBdIGJpdHMgKFN5c3RlbSBjbG9jayBTd2l0Y2gpICovDQojZGVmaW5lIFJDQ19DRkdSX1NXXzAgICAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFJDQ19DRkdSX1NXX1BvcykgICAgICAgICAgLyohPCAweDAwMDAwMDAxICovDQojZGVmaW5lIFJDQ19DRkdSX1NXXzEgICAgICAgICAgICAgICAgICAgICAgICgweDJVIDw8IFJDQ19DRkdSX1NXX1BvcykgICAgICAgICAgLyohPCAweDAwMDAwMDAyICovDQoNCi8qITwgU1cgY29uZmlndXJhdGlvbiAqLw0KI2RlZmluZSBSQ0NfQ0ZHUl9TV19NU0kgICAgICAgICAgICAgICAgICAgICAoMHgwMDAwMDAwMFUpICAgICAgICAgICAgICAgICAgICAgIC8qITwgTVNJIHNlbGVjdGVkIGFzIHN5c3RlbSBjbG9jayAqLw0KI2RlZmluZSBSQ0NfQ0ZHUl9TV19IU0kgICAgICAgICAgICAgICAgICAgICAoMHgwMDAwMDAwMVUpICAgICAgICAgICAgICAgICAgICAgIC8qITwgSFNJIHNlbGVjdGVkIGFzIHN5c3RlbSBjbG9jayAqLw0KI2RlZmluZSBSQ0NfQ0ZHUl9TV19IU0UgICAgICAgICAgICAgICAgICAgICAoMHgwMDAwMDAwMlUpICAgICAgICAgICAgICAgICAgICAgIC8qITwgSFNFIHNlbGVjdGVkIGFzIHN5c3RlbSBjbG9jayAqLw0KI2RlZmluZSBSQ0NfQ0ZHUl9TV19QTEwgICAgICAgICAgICAgICAgICAgICAoMHgwMDAwMDAwM1UpICAgICAgICAgICAgICAgICAgICAgIC8qITwgUExMIHNlbGVjdGVkIGFzIHN5c3RlbSBjbG9jayAqLw0KDQojZGVmaW5lIFJDQ19DRkdSX1NXU19Qb3MgICAgICAgICAgICAgICAgICAgICgyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19DRkdSX1NXU19Nc2sgICAgICAgICAgICAgICAgICAgICgweDNVIDw8IFJDQ19DRkdSX1NXU19Qb3MpICAgICAgICAgLyohPCAweDAwMDAwMDBDICovDQojZGVmaW5lIFJDQ19DRkdSX1NXUyAgICAgICAgICAgICAgICAgICAgICAgIFJDQ19DRkdSX1NXU19Nc2sgICAgICAgICAgICAgICAgICAgLyohPCBTV1NbMTowXSBiaXRzIChTeXN0ZW0gQ2xvY2sgU3dpdGNoIFN0YXR1cykgKi8NCiNkZWZpbmUgUkNDX0NGR1JfU1dTXzAgICAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgUkNDX0NGR1JfU1dTX1BvcykgICAgICAgICAvKiE8IDB4MDAwMDAwMDQgKi8NCiNkZWZpbmUgUkNDX0NGR1JfU1dTXzEgICAgICAgICAgICAgICAgICAgICAgKDB4MlUgPDwgUkNDX0NGR1JfU1dTX1BvcykgICAgICAgICAvKiE8IDB4MDAwMDAwMDggKi8NCg0KLyohPCBTV1MgY29uZmlndXJhdGlvbiAqLw0KI2RlZmluZSBSQ0NfQ0ZHUl9TV1NfTVNJICAgICAgICAgICAgICAgICAgICAoMHgwMDAwMDAwMFUpICAgICAgICAgICAgICAgICAgICAgIC8qITwgTVNJIG9zY2lsbGF0b3IgdXNlZCBhcyBzeXN0ZW0gY2xvY2sgKi8NCiNkZWZpbmUgUkNDX0NGR1JfU1dTX0hTSSAgICAgICAgICAgICAgICAgICAgKDB4MDAwMDAwMDRVKSAgICAgICAgICAgICAgICAgICAgICAvKiE8IEhTSSBvc2NpbGxhdG9yIHVzZWQgYXMgc3lzdGVtIGNsb2NrICovDQojZGVmaW5lIFJDQ19DRkdSX1NXU19IU0UgICAgICAgICAgICAgICAgICAgICgweDAwMDAwMDA4VSkgICAgICAgICAgICAgICAgICAgICAgLyohPCBIU0Ugb3NjaWxsYXRvciB1c2VkIGFzIHN5c3RlbSBjbG9jayAqLw0KI2RlZmluZSBSQ0NfQ0ZHUl9TV1NfUExMICAgICAgICAgICAgICAgICAgICAoMHgwMDAwMDAwQ1UpICAgICAgICAgICAgICAgICAgICAgIC8qITwgUExMIHVzZWQgYXMgc3lzdGVtIGNsb2NrICovDQoNCiNkZWZpbmUgUkNDX0NGR1JfSFBSRV9Qb3MgICAgICAgICAgICAgICAgICAgKDRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0NGR1JfSFBSRV9Nc2sgICAgICAgICAgICAgICAgICAgKDB4RlUgPDwgUkNDX0NGR1JfSFBSRV9Qb3MpICAgICAgICAvKiE8IDB4MDAwMDAwRjAgKi8NCiNkZWZpbmUgUkNDX0NGR1JfSFBSRSAgICAgICAgICAgICAgICAgICAgICAgUkNDX0NGR1JfSFBSRV9Nc2sgICAgICAgICAgICAgICAgICAvKiE8IEhQUkVbMzowXSBiaXRzIChBSEIgcHJlc2NhbGVyKSAqLw0KI2RlZmluZSBSQ0NfQ0ZHUl9IUFJFXzAgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBSQ0NfQ0ZHUl9IUFJFX1BvcykgICAgICAgIC8qITwgMHgwMDAwMDAxMCAqLw0KI2RlZmluZSBSQ0NfQ0ZHUl9IUFJFXzEgICAgICAgICAgICAgICAgICAgICAoMHgyVSA8PCBSQ0NfQ0ZHUl9IUFJFX1BvcykgICAgICAgIC8qITwgMHgwMDAwMDAyMCAqLw0KI2RlZmluZSBSQ0NfQ0ZHUl9IUFJFXzIgICAgICAgICAgICAgICAgICAgICAoMHg0VSA8PCBSQ0NfQ0ZHUl9IUFJFX1BvcykgICAgICAgIC8qITwgMHgwMDAwMDA0MCAqLw0KI2RlZmluZSBSQ0NfQ0ZHUl9IUFJFXzMgICAgICAgICAgICAgICAgICAgICAoMHg4VSA8PCBSQ0NfQ0ZHUl9IUFJFX1BvcykgICAgICAgIC8qITwgMHgwMDAwMDA4MCAqLw0KDQovKiE8IEhQUkUgY29uZmlndXJhdGlvbiAqLw0KI2RlZmluZSBSQ0NfQ0ZHUl9IUFJFX0RJVjEgICAgICAgICAgICAgICAgICAoMHgwMDAwMDAwMFUpICAgICAgICAgICAgICAgICAgICAgIC8qITwgU1lTQ0xLIG5vdCBkaXZpZGVkICovDQojZGVmaW5lIFJDQ19DRkdSX0hQUkVfRElWMiAgICAgICAgICAgICAgICAgICgweDAwMDAwMDgwVSkgICAgICAgICAgICAgICAgICAgICAgLyohPCBTWVNDTEsgZGl2aWRlZCBieSAyICovDQojZGVmaW5lIFJDQ19DRkdSX0hQUkVfRElWNCAgICAgICAgICAgICAgICAgICgweDAwMDAwMDkwVSkgICAgICAgICAgICAgICAgICAgICAgLyohPCBTWVNDTEsgZGl2aWRlZCBieSA0ICovDQojZGVmaW5lIFJDQ19DRkdSX0hQUkVfRElWOCAgICAgICAgICAgICAgICAgICgweDAwMDAwMEEwVSkgICAgICAgICAgICAgICAgICAgICAgLyohPCBTWVNDTEsgZGl2aWRlZCBieSA4ICovDQojZGVmaW5lIFJDQ19DRkdSX0hQUkVfRElWMTYgICAgICAgICAgICAgICAgICgweDAwMDAwMEIwVSkgICAgICAgICAgICAgICAgICAgICAgLyohPCBTWVNDTEsgZGl2aWRlZCBieSAxNiAqLw0KI2RlZmluZSBSQ0NfQ0ZHUl9IUFJFX0RJVjY0ICAgICAgICAgICAgICAgICAoMHgwMDAwMDBDMFUpICAgICAgICAgICAgICAgICAgICAgIC8qITwgU1lTQ0xLIGRpdmlkZWQgYnkgNjQgKi8NCiNkZWZpbmUgUkNDX0NGR1JfSFBSRV9ESVYxMjggICAgICAgICAgICAgICAgKDB4MDAwMDAwRDBVKSAgICAgICAgICAgICAgICAgICAgICAvKiE8IFNZU0NMSyBkaXZpZGVkIGJ5IDEyOCAqLw0KI2RlZmluZSBSQ0NfQ0ZHUl9IUFJFX0RJVjI1NiAgICAgICAgICAgICAgICAoMHgwMDAwMDBFMFUpICAgICAgICAgICAgICAgICAgICAgIC8qITwgU1lTQ0xLIGRpdmlkZWQgYnkgMjU2ICovDQojZGVmaW5lIFJDQ19DRkdSX0hQUkVfRElWNTEyICAgICAgICAgICAgICAgICgweDAwMDAwMEYwVSkgICAgICAgICAgICAgICAgICAgICAgLyohPCBTWVNDTEsgZGl2aWRlZCBieSA1MTIgKi8NCg0KI2RlZmluZSBSQ0NfQ0ZHUl9QUFJFMV9Qb3MgICAgICAgICAgICAgICAgICAoOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQ0ZHUl9QUFJFMV9Nc2sgICAgICAgICAgICAgICAgICAoMHg3VSA8PCBSQ0NfQ0ZHUl9QUFJFMV9Qb3MpICAgICAgIC8qITwgMHgwMDAwMDcwMCAqLw0KI2RlZmluZSBSQ0NfQ0ZHUl9QUFJFMSAgICAgICAgICAgICAgICAgICAgICBSQ0NfQ0ZHUl9QUFJFMV9Nc2sgICAgICAgICAgICAgICAgIC8qITwgUFJFMVsyOjBdIGJpdHMgKEFQQjEgcHJlc2NhbGVyKSAqLw0KI2RlZmluZSBSQ0NfQ0ZHUl9QUFJFMV8wICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBSQ0NfQ0ZHUl9QUFJFMV9Qb3MpICAgICAgIC8qITwgMHgwMDAwMDEwMCAqLw0KI2RlZmluZSBSQ0NfQ0ZHUl9QUFJFMV8xICAgICAgICAgICAgICAgICAgICAoMHgyVSA8PCBSQ0NfQ0ZHUl9QUFJFMV9Qb3MpICAgICAgIC8qITwgMHgwMDAwMDIwMCAqLw0KI2RlZmluZSBSQ0NfQ0ZHUl9QUFJFMV8yICAgICAgICAgICAgICAgICAgICAoMHg0VSA8PCBSQ0NfQ0ZHUl9QUFJFMV9Qb3MpICAgICAgIC8qITwgMHgwMDAwMDQwMCAqLw0KDQovKiE8IFBQUkUxIGNvbmZpZ3VyYXRpb24gKi8NCiNkZWZpbmUgUkNDX0NGR1JfUFBSRTFfRElWMSAgICAgICAgICAgICAgICAgKDB4MDAwMDAwMDBVKSAgICAgICAgICAgICAgICAgICAgICAvKiE8IEhDTEsgbm90IGRpdmlkZWQgKi8NCiNkZWZpbmUgUkNDX0NGR1JfUFBSRTFfRElWMiAgICAgICAgICAgICAgICAgKDB4MDAwMDA0MDBVKSAgICAgICAgICAgICAgICAgICAgICAvKiE8IEhDTEsgZGl2aWRlZCBieSAyICovDQojZGVmaW5lIFJDQ19DRkdSX1BQUkUxX0RJVjQgICAgICAgICAgICAgICAgICgweDAwMDAwNTAwVSkgICAgICAgICAgICAgICAgICAgICAgLyohPCBIQ0xLIGRpdmlkZWQgYnkgNCAqLw0KI2RlZmluZSBSQ0NfQ0ZHUl9QUFJFMV9ESVY4ICAgICAgICAgICAgICAgICAoMHgwMDAwMDYwMFUpICAgICAgICAgICAgICAgICAgICAgIC8qITwgSENMSyBkaXZpZGVkIGJ5IDggKi8NCiNkZWZpbmUgUkNDX0NGR1JfUFBSRTFfRElWMTYgICAgICAgICAgICAgICAgKDB4MDAwMDA3MDBVKSAgICAgICAgICAgICAgICAgICAgICAvKiE8IEhDTEsgZGl2aWRlZCBieSAxNiAqLw0KDQojZGVmaW5lIFJDQ19DRkdSX1BQUkUyX1BvcyAgICAgICAgICAgICAgICAgICgxMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19DRkdSX1BQUkUyX01zayAgICAgICAgICAgICAgICAgICgweDdVIDw8IFJDQ19DRkdSX1BQUkUyX1BvcykgICAgICAgLyohPCAweDAwMDAzODAwICovDQojZGVmaW5lIFJDQ19DRkdSX1BQUkUyICAgICAgICAgICAgICAgICAgICAgIFJDQ19DRkdSX1BQUkUyX01zayAgICAgICAgICAgICAgICAgLyohPCBQUkUyWzI6MF0gYml0cyAoQVBCMiBwcmVzY2FsZXIpICovDQojZGVmaW5lIFJDQ19DRkdSX1BQUkUyXzAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFJDQ19DRkdSX1BQUkUyX1BvcykgICAgICAgLyohPCAweDAwMDAwODAwICovDQojZGVmaW5lIFJDQ19DRkdSX1BQUkUyXzEgICAgICAgICAgICAgICAgICAgICgweDJVIDw8IFJDQ19DRkdSX1BQUkUyX1BvcykgICAgICAgLyohPCAweDAwMDAxMDAwICovDQojZGVmaW5lIFJDQ19DRkdSX1BQUkUyXzIgICAgICAgICAgICAgICAgICAgICgweDRVIDw8IFJDQ19DRkdSX1BQUkUyX1BvcykgICAgICAgLyohPCAweDAwMDAyMDAwICovDQoNCi8qITwgUFBSRTIgY29uZmlndXJhdGlvbiAqLw0KI2RlZmluZSBSQ0NfQ0ZHUl9QUFJFMl9ESVYxICAgICAgICAgICAgICAgICAoMHgwMDAwMDAwMFUpICAgICAgICAgICAgICAgICAgICAgIC8qITwgSENMSyBub3QgZGl2aWRlZCAqLw0KI2RlZmluZSBSQ0NfQ0ZHUl9QUFJFMl9ESVYyICAgICAgICAgICAgICAgICAoMHgwMDAwMjAwMFUpICAgICAgICAgICAgICAgICAgICAgIC8qITwgSENMSyBkaXZpZGVkIGJ5IDIgKi8NCiNkZWZpbmUgUkNDX0NGR1JfUFBSRTJfRElWNCAgICAgICAgICAgICAgICAgKDB4MDAwMDI4MDBVKSAgICAgICAgICAgICAgICAgICAgICAvKiE8IEhDTEsgZGl2aWRlZCBieSA0ICovDQojZGVmaW5lIFJDQ19DRkdSX1BQUkUyX0RJVjggICAgICAgICAgICAgICAgICgweDAwMDAzMDAwVSkgICAgICAgICAgICAgICAgICAgICAgLyohPCBIQ0xLIGRpdmlkZWQgYnkgOCAqLw0KI2RlZmluZSBSQ0NfQ0ZHUl9QUFJFMl9ESVYxNiAgICAgICAgICAgICAgICAoMHgwMDAwMzgwMFUpICAgICAgICAgICAgICAgICAgICAgIC8qITwgSENMSyBkaXZpZGVkIGJ5IDE2ICovDQoNCi8qITwgUExMIGVudHJ5IGNsb2NrIHNvdXJjZSovDQojZGVmaW5lIFJDQ19DRkdSX1BMTFNSQ19Qb3MgICAgICAgICAgICAgICAgICgxNlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19DRkdSX1BMTFNSQ19Nc2sgICAgICAgICAgICAgICAgICgweDFVIDw8IFJDQ19DRkdSX1BMTFNSQ19Qb3MpICAgICAgLyohPCAweDAwMDEwMDAwICovDQojZGVmaW5lIFJDQ19DRkdSX1BMTFNSQyAgICAgICAgICAgICAgICAgICAgIFJDQ19DRkdSX1BMTFNSQ19Nc2sgICAgICAgICAgICAgICAgLyohPCBQTEwgZW50cnkgY2xvY2sgc291cmNlICovDQoNCiNkZWZpbmUgUkNDX0NGR1JfUExMU1JDX0hTSSAgICAgICAgICAgICAgICAgKDB4MDAwMDAwMDBVKSAgICAgICAgICAgICAgICAgICAgICAvKiE8IEhTSSBhcyBQTEwgZW50cnkgY2xvY2sgc291cmNlICovDQojZGVmaW5lIFJDQ19DRkdSX1BMTFNSQ19IU0UgICAgICAgICAgICAgICAgICgweDAwMDEwMDAwVSkgICAgICAgICAgICAgICAgICAgICAgLyohPCBIU0UgYXMgUExMIGVudHJ5IGNsb2NrIHNvdXJjZSAqLw0KDQoNCi8qITwgUExMTVVMIGNvbmZpZ3VyYXRpb24gKi8NCiNkZWZpbmUgUkNDX0NGR1JfUExMTVVMX1BvcyAgICAgICAgICAgICAgICAgKDE4VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0NGR1JfUExMTVVMX01zayAgICAgICAgICAgICAgICAgKDB4RlUgPDwgUkNDX0NGR1JfUExMTVVMX1BvcykgICAgICAvKiE8IDB4MDAzQzAwMDAgKi8NCiNkZWZpbmUgUkNDX0NGR1JfUExMTVVMICAgICAgICAgICAgICAgICAgICAgUkNDX0NGR1JfUExMTVVMX01zayAgICAgICAgICAgICAgICAvKiE8IFBMTE1VTFszOjBdIGJpdHMgKFBMTCBtdWx0aXBsaWNhdGlvbiBmYWN0b3IpICovDQojZGVmaW5lIFJDQ19DRkdSX1BMTE1VTF8wICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFJDQ19DRkdSX1BMTE1VTF9Qb3MpICAgICAgLyohPCAweDAwMDQwMDAwICovDQojZGVmaW5lIFJDQ19DRkdSX1BMTE1VTF8xICAgICAgICAgICAgICAgICAgICgweDJVIDw8IFJDQ19DRkdSX1BMTE1VTF9Qb3MpICAgICAgLyohPCAweDAwMDgwMDAwICovDQojZGVmaW5lIFJDQ19DRkdSX1BMTE1VTF8yICAgICAgICAgICAgICAgICAgICgweDRVIDw8IFJDQ19DRkdSX1BMTE1VTF9Qb3MpICAgICAgLyohPCAweDAwMTAwMDAwICovDQojZGVmaW5lIFJDQ19DRkdSX1BMTE1VTF8zICAgICAgICAgICAgICAgICAgICgweDhVIDw8IFJDQ19DRkdSX1BMTE1VTF9Qb3MpICAgICAgLyohPCAweDAwMjAwMDAwICovDQoNCi8qITwgUExMTVVMIGNvbmZpZ3VyYXRpb24gKi8NCiNkZWZpbmUgUkNDX0NGR1JfUExMTVVMMyAgICAgICAgICAgICAgICAgICAgKDB4MDAwMDAwMDBVKSAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBMTCBpbnB1dCBjbG9jayAqIDMgKi8NCiNkZWZpbmUgUkNDX0NGR1JfUExMTVVMNCAgICAgICAgICAgICAgICAgICAgKDB4MDAwNDAwMDBVKSAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBMTCBpbnB1dCBjbG9jayAqIDQgKi8NCiNkZWZpbmUgUkNDX0NGR1JfUExMTVVMNiAgICAgICAgICAgICAgICAgICAgKDB4MDAwODAwMDBVKSAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBMTCBpbnB1dCBjbG9jayAqIDYgKi8NCiNkZWZpbmUgUkNDX0NGR1JfUExMTVVMOCAgICAgICAgICAgICAgICAgICAgKDB4MDAwQzAwMDBVKSAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBMTCBpbnB1dCBjbG9jayAqIDggKi8NCiNkZWZpbmUgUkNDX0NGR1JfUExMTVVMMTIgICAgICAgICAgICAgICAgICAgKDB4MDAxMDAwMDBVKSAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBMTCBpbnB1dCBjbG9jayAqIDEyICovDQojZGVmaW5lIFJDQ19DRkdSX1BMTE1VTDE2ICAgICAgICAgICAgICAgICAgICgweDAwMTQwMDAwVSkgICAgICAgICAgICAgICAgICAgICAgLyohPCBQTEwgaW5wdXQgY2xvY2sgKiAxNiAqLw0KI2RlZmluZSBSQ0NfQ0ZHUl9QTExNVUwyNCAgICAgICAgICAgICAgICAgICAoMHgwMDE4MDAwMFUpICAgICAgICAgICAgICAgICAgICAgIC8qITwgUExMIGlucHV0IGNsb2NrICogMjQgKi8NCiNkZWZpbmUgUkNDX0NGR1JfUExMTVVMMzIgICAgICAgICAgICAgICAgICAgKDB4MDAxQzAwMDBVKSAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBMTCBpbnB1dCBjbG9jayAqIDMyICovDQojZGVmaW5lIFJDQ19DRkdSX1BMTE1VTDQ4ICAgICAgICAgICAgICAgICAgICgweDAwMjAwMDAwVSkgICAgICAgICAgICAgICAgICAgICAgLyohPCBQTEwgaW5wdXQgY2xvY2sgKiA0OCAqLw0KDQovKiE8IFBMTERJViBjb25maWd1cmF0aW9uICovDQojZGVmaW5lIFJDQ19DRkdSX1BMTERJVl9Qb3MgICAgICAgICAgICAgICAgICgyMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19DRkdSX1BMTERJVl9Nc2sgICAgICAgICAgICAgICAgICgweDNVIDw8IFJDQ19DRkdSX1BMTERJVl9Qb3MpICAgICAgLyohPCAweDAwQzAwMDAwICovDQojZGVmaW5lIFJDQ19DRkdSX1BMTERJViAgICAgICAgICAgICAgICAgICAgIFJDQ19DRkdSX1BMTERJVl9Nc2sgICAgICAgICAgICAgICAgLyohPCBQTExESVZbMTowXSBiaXRzIChQTEwgT3V0cHV0IERpdmlzaW9uKSAqLw0KI2RlZmluZSBSQ0NfQ0ZHUl9QTExESVZfMCAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBSQ0NfQ0ZHUl9QTExESVZfUG9zKSAgICAgIC8qITwgMHgwMDQwMDAwMCAqLw0KI2RlZmluZSBSQ0NfQ0ZHUl9QTExESVZfMSAgICAgICAgICAgICAgICAgICAoMHgyVSA8PCBSQ0NfQ0ZHUl9QTExESVZfUG9zKSAgICAgIC8qITwgMHgwMDgwMDAwMCAqLw0KDQoNCi8qITwgUExMRElWIGNvbmZpZ3VyYXRpb24gKi8NCiNkZWZpbmUgUkNDX0NGR1JfUExMRElWMSAgICAgICAgICAgICAgICAgICAgKDB4MDAwMDAwMDBVKSAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBMTCBjbG9jayBvdXRwdXQgPSBDS1ZDTyAvIDEgKi8NCiNkZWZpbmUgUkNDX0NGR1JfUExMRElWMl9Qb3MgICAgICAgICAgICAgICAgKDIyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0NGR1JfUExMRElWMl9Nc2sgICAgICAgICAgICAgICAgKDB4MVUgPDwgUkNDX0NGR1JfUExMRElWMl9Qb3MpICAgICAvKiE8IDB4MDA0MDAwMDAgKi8NCiNkZWZpbmUgUkNDX0NGR1JfUExMRElWMiAgICAgICAgICAgICAgICAgICAgUkNDX0NGR1JfUExMRElWMl9Nc2sgICAgICAgICAgICAgICAvKiE8IFBMTCBjbG9jayBvdXRwdXQgPSBDS1ZDTyAvIDIgKi8NCiNkZWZpbmUgUkNDX0NGR1JfUExMRElWM19Qb3MgICAgICAgICAgICAgICAgKDIzVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0NGR1JfUExMRElWM19Nc2sgICAgICAgICAgICAgICAgKDB4MVUgPDwgUkNDX0NGR1JfUExMRElWM19Qb3MpICAgICAvKiE8IDB4MDA4MDAwMDAgKi8NCiNkZWZpbmUgUkNDX0NGR1JfUExMRElWMyAgICAgICAgICAgICAgICAgICAgUkNDX0NGR1JfUExMRElWM19Nc2sgICAgICAgICAgICAgICAvKiE8IFBMTCBjbG9jayBvdXRwdXQgPSBDS1ZDTyAvIDMgKi8NCiNkZWZpbmUgUkNDX0NGR1JfUExMRElWNF9Qb3MgICAgICAgICAgICAgICAgKDIyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0NGR1JfUExMRElWNF9Nc2sgICAgICAgICAgICAgICAgKDB4M1UgPDwgUkNDX0NGR1JfUExMRElWNF9Qb3MpICAgICAvKiE8IDB4MDBDMDAwMDAgKi8NCiNkZWZpbmUgUkNDX0NGR1JfUExMRElWNCAgICAgICAgICAgICAgICAgICAgUkNDX0NGR1JfUExMRElWNF9Nc2sgICAgICAgICAgICAgICAvKiE8IFBMTCBjbG9jayBvdXRwdXQgPSBDS1ZDTyAvIDQgKi8NCg0KDQojZGVmaW5lIFJDQ19DRkdSX01DT1NFTF9Qb3MgICAgICAgICAgICAgICAgICgyNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19DRkdSX01DT1NFTF9Nc2sgICAgICAgICAgICAgICAgICgweDdVIDw8IFJDQ19DRkdSX01DT1NFTF9Qb3MpICAgICAgLyohPCAweDA3MDAwMDAwICovDQojZGVmaW5lIFJDQ19DRkdSX01DT1NFTCAgICAgICAgICAgICAgICAgICAgIFJDQ19DRkdSX01DT1NFTF9Nc2sgICAgICAgICAgICAgICAgLyohPCBNQ09bMjowXSBiaXRzIChNaWNyb2NvbnRyb2xsZXIgQ2xvY2sgT3V0cHV0KSAqLw0KI2RlZmluZSBSQ0NfQ0ZHUl9NQ09TRUxfMCAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBSQ0NfQ0ZHUl9NQ09TRUxfUG9zKSAgICAgIC8qITwgMHgwMTAwMDAwMCAqLw0KI2RlZmluZSBSQ0NfQ0ZHUl9NQ09TRUxfMSAgICAgICAgICAgICAgICAgICAoMHgyVSA8PCBSQ0NfQ0ZHUl9NQ09TRUxfUG9zKSAgICAgIC8qITwgMHgwMjAwMDAwMCAqLw0KI2RlZmluZSBSQ0NfQ0ZHUl9NQ09TRUxfMiAgICAgICAgICAgICAgICAgICAoMHg0VSA8PCBSQ0NfQ0ZHUl9NQ09TRUxfUG9zKSAgICAgIC8qITwgMHgwNDAwMDAwMCAqLw0KDQovKiE8IE1DTyBjb25maWd1cmF0aW9uICovDQojZGVmaW5lIFJDQ19DRkdSX01DT1NFTF9OT0NMT0NLICAgICAgICAgICAgICgweDAwMDAwMDAwVSkgICAgICAgICAgICAgICAgICAgICAgLyohPCBObyBjbG9jayAqLw0KI2RlZmluZSBSQ0NfQ0ZHUl9NQ09TRUxfU1lTQ0xLX1BvcyAgICAgICAgICAoMjRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQ0ZHUl9NQ09TRUxfU1lTQ0xLX01zayAgICAgICAgICAoMHgxVSA8PCBSQ0NfQ0ZHUl9NQ09TRUxfU1lTQ0xLX1BvcykgLyohPCAweDAxMDAwMDAwICovDQojZGVmaW5lIFJDQ19DRkdSX01DT1NFTF9TWVNDTEsgICAgICAgICAgICAgIFJDQ19DRkdSX01DT1NFTF9TWVNDTEtfTXNrICAgICAgICAgLyohPCBTeXN0ZW0gY2xvY2sgc2VsZWN0ZWQgKi8NCiNkZWZpbmUgUkNDX0NGR1JfTUNPU0VMX0hTSV9Qb3MgICAgICAgICAgICAgKDI1VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0NGR1JfTUNPU0VMX0hTSV9Nc2sgICAgICAgICAgICAgKDB4MVUgPDwgUkNDX0NGR1JfTUNPU0VMX0hTSV9Qb3MpICAvKiE8IDB4MDIwMDAwMDAgKi8NCiNkZWZpbmUgUkNDX0NGR1JfTUNPU0VMX0hTSSAgICAgICAgICAgICAgICAgUkNDX0NGR1JfTUNPU0VMX0hTSV9Nc2sgICAgICAgICAgICAvKiE8IEludGVybmFsIDE2IE1IeiBSQyBvc2NpbGxhdG9yIGNsb2NrIHNlbGVjdGVkICovDQojZGVmaW5lIFJDQ19DRkdSX01DT1NFTF9NU0lfUG9zICAgICAgICAgICAgICgyNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19DRkdSX01DT1NFTF9NU0lfTXNrICAgICAgICAgICAgICgweDNVIDw8IFJDQ19DRkdSX01DT1NFTF9NU0lfUG9zKSAgLyohPCAweDAzMDAwMDAwICovDQojZGVmaW5lIFJDQ19DRkdSX01DT1NFTF9NU0kgICAgICAgICAgICAgICAgIFJDQ19DRkdSX01DT1NFTF9NU0lfTXNrICAgICAgICAgICAgLyohPCBJbnRlcm5hbCBNZWRpdW0gU3BlZWQgUkMgb3NjaWxsYXRvciBjbG9jayBzZWxlY3RlZCAqLw0KI2RlZmluZSBSQ0NfQ0ZHUl9NQ09TRUxfSFNFX1BvcyAgICAgICAgICAgICAoMjZVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQ0ZHUl9NQ09TRUxfSFNFX01zayAgICAgICAgICAgICAoMHgxVSA8PCBSQ0NfQ0ZHUl9NQ09TRUxfSFNFX1BvcykgIC8qITwgMHgwNDAwMDAwMCAqLw0KI2RlZmluZSBSQ0NfQ0ZHUl9NQ09TRUxfSFNFICAgICAgICAgICAgICAgICBSQ0NfQ0ZHUl9NQ09TRUxfSFNFX01zayAgICAgICAgICAgIC8qITwgRXh0ZXJuYWwgMS0yNSBNSHogb3NjaWxsYXRvciBjbG9jayBzZWxlY3RlZCAqLw0KI2RlZmluZSBSQ0NfQ0ZHUl9NQ09TRUxfUExMX1BvcyAgICAgICAgICAgICAoMjRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQ0ZHUl9NQ09TRUxfUExMX01zayAgICAgICAgICAgICAoMHg1VSA8PCBSQ0NfQ0ZHUl9NQ09TRUxfUExMX1BvcykgIC8qITwgMHgwNTAwMDAwMCAqLw0KI2RlZmluZSBSQ0NfQ0ZHUl9NQ09TRUxfUExMICAgICAgICAgICAgICAgICBSQ0NfQ0ZHUl9NQ09TRUxfUExMX01zayAgICAgICAgICAgIC8qITwgUExMIGNsb2NrIGRpdmlkZWQgKi8NCiNkZWZpbmUgUkNDX0NGR1JfTUNPU0VMX0xTSV9Qb3MgICAgICAgICAgICAgKDI1VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0NGR1JfTUNPU0VMX0xTSV9Nc2sgICAgICAgICAgICAgKDB4M1UgPDwgUkNDX0NGR1JfTUNPU0VMX0xTSV9Qb3MpICAvKiE8IDB4MDYwMDAwMDAgKi8NCiNkZWZpbmUgUkNDX0NGR1JfTUNPU0VMX0xTSSAgICAgICAgICAgICAgICAgUkNDX0NGR1JfTUNPU0VMX0xTSV9Nc2sgICAgICAgICAgICAvKiE8IExTSSBzZWxlY3RlZCAqLw0KI2RlZmluZSBSQ0NfQ0ZHUl9NQ09TRUxfTFNFX1BvcyAgICAgICAgICAgICAoMjRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQ0ZHUl9NQ09TRUxfTFNFX01zayAgICAgICAgICAgICAoMHg3VSA8PCBSQ0NfQ0ZHUl9NQ09TRUxfTFNFX1BvcykgIC8qITwgMHgwNzAwMDAwMCAqLw0KI2RlZmluZSBSQ0NfQ0ZHUl9NQ09TRUxfTFNFICAgICAgICAgICAgICAgICBSQ0NfQ0ZHUl9NQ09TRUxfTFNFX01zayAgICAgICAgICAgIC8qITwgTFNFIHNlbGVjdGVkICovDQoNCiNkZWZpbmUgUkNDX0NGR1JfTUNPUFJFX1BvcyAgICAgICAgICAgICAgICAgKDI4VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0NGR1JfTUNPUFJFX01zayAgICAgICAgICAgICAgICAgKDB4N1UgPDwgUkNDX0NGR1JfTUNPUFJFX1BvcykgICAgICAvKiE8IDB4NzAwMDAwMDAgKi8NCiNkZWZpbmUgUkNDX0NGR1JfTUNPUFJFICAgICAgICAgICAgICAgICAgICAgUkNDX0NGR1JfTUNPUFJFX01zayAgICAgICAgICAgICAgICAvKiE8IE1DT1BSRVsyOjBdIGJpdHMgKE1pY3JvY29udHJvbGxlciBDbG9jayBPdXRwdXQgUHJlc2NhbGVyKSAqLw0KI2RlZmluZSBSQ0NfQ0ZHUl9NQ09QUkVfMCAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBSQ0NfQ0ZHUl9NQ09QUkVfUG9zKSAgICAgIC8qITwgMHgxMDAwMDAwMCAqLw0KI2RlZmluZSBSQ0NfQ0ZHUl9NQ09QUkVfMSAgICAgICAgICAgICAgICAgICAoMHgyVSA8PCBSQ0NfQ0ZHUl9NQ09QUkVfUG9zKSAgICAgIC8qITwgMHgyMDAwMDAwMCAqLw0KI2RlZmluZSBSQ0NfQ0ZHUl9NQ09QUkVfMiAgICAgICAgICAgICAgICAgICAoMHg0VSA8PCBSQ0NfQ0ZHUl9NQ09QUkVfUG9zKSAgICAgIC8qITwgMHg0MDAwMDAwMCAqLw0KDQovKiE8IE1DTyBQcmVzY2FsZXIgY29uZmlndXJhdGlvbiAqLyANCiNkZWZpbmUgUkNDX0NGR1JfTUNPUFJFX0RJVjEgICAgICAgICAgICAgICAgKDB4MDAwMDAwMDBVKSAgICAgICAgICAgICAgICAgICAgICAvKiE8IE1DTyBpcyBkaXZpZGVkIGJ5IDEgKi8NCiNkZWZpbmUgUkNDX0NGR1JfTUNPUFJFX0RJVjIgICAgICAgICAgICAgICAgKDB4MTAwMDAwMDBVKSAgICAgICAgICAgICAgICAgICAgICAvKiE8IE1DTyBpcyBkaXZpZGVkIGJ5IDIgKi8NCiNkZWZpbmUgUkNDX0NGR1JfTUNPUFJFX0RJVjQgICAgICAgICAgICAgICAgKDB4MjAwMDAwMDBVKSAgICAgICAgICAgICAgICAgICAgICAvKiE8IE1DTyBpcyBkaXZpZGVkIGJ5IDQgKi8NCiNkZWZpbmUgUkNDX0NGR1JfTUNPUFJFX0RJVjggICAgICAgICAgICAgICAgKDB4MzAwMDAwMDBVKSAgICAgICAgICAgICAgICAgICAgICAvKiE8IE1DTyBpcyBkaXZpZGVkIGJ5IDggKi8NCiNkZWZpbmUgUkNDX0NGR1JfTUNPUFJFX0RJVjE2ICAgICAgICAgICAgICAgKDB4NDAwMDAwMDBVKSAgICAgICAgICAgICAgICAgICAgICAvKiE8IE1DTyBpcyBkaXZpZGVkIGJ5IDE2ICovDQogDQovKiBMZWdhY3kgYWxpYXNlcyAqLw0KI2RlZmluZSAgUkNDX0NGR1JfTUNPX0RJVjEgICAgICAgICAgICAgICAgICBSQ0NfQ0ZHUl9NQ09QUkVfRElWMQ0KI2RlZmluZSAgUkNDX0NGR1JfTUNPX0RJVjIgICAgICAgICAgICAgICAgICBSQ0NfQ0ZHUl9NQ09QUkVfRElWMg0KI2RlZmluZSAgUkNDX0NGR1JfTUNPX0RJVjQgICAgICAgICAgICAgICAgICBSQ0NfQ0ZHUl9NQ09QUkVfRElWNA0KI2RlZmluZSAgUkNDX0NGR1JfTUNPX0RJVjggICAgICAgICAgICAgICAgICBSQ0NfQ0ZHUl9NQ09QUkVfRElWOA0KI2RlZmluZSAgUkNDX0NGR1JfTUNPX0RJVjE2ICAgICAgICAgICAgICAgICBSQ0NfQ0ZHUl9NQ09QUkVfRElWMTYNCiNkZWZpbmUgIFJDQ19DRkdSX01DT19OT0NMT0NLICAgICAgICAgICAgICAgUkNDX0NGR1JfTUNPU0VMX05PQ0xPQ0sNCiNkZWZpbmUgIFJDQ19DRkdSX01DT19TWVNDTEsgICAgICAgICAgICAgICAgUkNDX0NGR1JfTUNPU0VMX1NZU0NMSw0KI2RlZmluZSAgUkNDX0NGR1JfTUNPX0hTSSAgICAgICAgICAgICAgICAgICBSQ0NfQ0ZHUl9NQ09TRUxfSFNJDQojZGVmaW5lICBSQ0NfQ0ZHUl9NQ09fTVNJICAgICAgICAgICAgICAgICAgIFJDQ19DRkdSX01DT1NFTF9NU0kNCiNkZWZpbmUgIFJDQ19DRkdSX01DT19IU0UgICAgICAgICAgICAgICAgICAgUkNDX0NGR1JfTUNPU0VMX0hTRQ0KI2RlZmluZSAgUkNDX0NGR1JfTUNPX1BMTCAgICAgICAgICAgICAgICAgICBSQ0NfQ0ZHUl9NQ09TRUxfUExMDQojZGVmaW5lICBSQ0NfQ0ZHUl9NQ09fTFNJICAgICAgICAgICAgICAgICAgIFJDQ19DRkdSX01DT1NFTF9MU0kNCiNkZWZpbmUgIFJDQ19DRkdSX01DT19MU0UgICAgICAgICAgICAgICAgICAgUkNDX0NGR1JfTUNPU0VMX0xTRQ0KDQovKiE8KioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgUkNDX0NJUiByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIFJDQ19DSVJfTFNJUkRZRl9Qb3MgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19DSVJfTFNJUkRZRl9Nc2sgICAgICAgICAgICAgICAgICgweDFVIDw8IFJDQ19DSVJfTFNJUkRZRl9Qb3MpICAgICAgLyohPCAweDAwMDAwMDAxICovDQojZGVmaW5lIFJDQ19DSVJfTFNJUkRZRiAgICAgICAgICAgICAgICAgICAgIFJDQ19DSVJfTFNJUkRZRl9Nc2sgICAgICAgICAgICAgICAgLyohPCBMU0kgUmVhZHkgSW50ZXJydXB0IGZsYWcgKi8NCiNkZWZpbmUgUkNDX0NJUl9MU0VSRFlGX1BvcyAgICAgICAgICAgICAgICAgKDFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0NJUl9MU0VSRFlGX01zayAgICAgICAgICAgICAgICAgKDB4MVUgPDwgUkNDX0NJUl9MU0VSRFlGX1BvcykgICAgICAvKiE8IDB4MDAwMDAwMDIgKi8NCiNkZWZpbmUgUkNDX0NJUl9MU0VSRFlGICAgICAgICAgICAgICAgICAgICAgUkNDX0NJUl9MU0VSRFlGX01zayAgICAgICAgICAgICAgICAvKiE8IExTRSBSZWFkeSBJbnRlcnJ1cHQgZmxhZyAqLw0KI2RlZmluZSBSQ0NfQ0lSX0hTSVJEWUZfUG9zICAgICAgICAgICAgICAgICAoMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQ0lSX0hTSVJEWUZfTXNrICAgICAgICAgICAgICAgICAoMHgxVSA8PCBSQ0NfQ0lSX0hTSVJEWUZfUG9zKSAgICAgIC8qITwgMHgwMDAwMDAwNCAqLw0KI2RlZmluZSBSQ0NfQ0lSX0hTSVJEWUYgICAgICAgICAgICAgICAgICAgICBSQ0NfQ0lSX0hTSVJEWUZfTXNrICAgICAgICAgICAgICAgIC8qITwgSFNJIFJlYWR5IEludGVycnVwdCBmbGFnICovDQojZGVmaW5lIFJDQ19DSVJfSFNFUkRZRl9Qb3MgICAgICAgICAgICAgICAgICgzVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19DSVJfSFNFUkRZRl9Nc2sgICAgICAgICAgICAgICAgICgweDFVIDw8IFJDQ19DSVJfSFNFUkRZRl9Qb3MpICAgICAgLyohPCAweDAwMDAwMDA4ICovDQojZGVmaW5lIFJDQ19DSVJfSFNFUkRZRiAgICAgICAgICAgICAgICAgICAgIFJDQ19DSVJfSFNFUkRZRl9Nc2sgICAgICAgICAgICAgICAgLyohPCBIU0UgUmVhZHkgSW50ZXJydXB0IGZsYWcgKi8NCiNkZWZpbmUgUkNDX0NJUl9QTExSRFlGX1BvcyAgICAgICAgICAgICAgICAgKDRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0NJUl9QTExSRFlGX01zayAgICAgICAgICAgICAgICAgKDB4MVUgPDwgUkNDX0NJUl9QTExSRFlGX1BvcykgICAgICAvKiE8IDB4MDAwMDAwMTAgKi8NCiNkZWZpbmUgUkNDX0NJUl9QTExSRFlGICAgICAgICAgICAgICAgICAgICAgUkNDX0NJUl9QTExSRFlGX01zayAgICAgICAgICAgICAgICAvKiE8IFBMTCBSZWFkeSBJbnRlcnJ1cHQgZmxhZyAqLw0KI2RlZmluZSBSQ0NfQ0lSX01TSVJEWUZfUG9zICAgICAgICAgICAgICAgICAoNVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQ0lSX01TSVJEWUZfTXNrICAgICAgICAgICAgICAgICAoMHgxVSA8PCBSQ0NfQ0lSX01TSVJEWUZfUG9zKSAgICAgIC8qITwgMHgwMDAwMDAyMCAqLw0KI2RlZmluZSBSQ0NfQ0lSX01TSVJEWUYgICAgICAgICAgICAgICAgICAgICBSQ0NfQ0lSX01TSVJEWUZfTXNrICAgICAgICAgICAgICAgIC8qITwgTVNJIFJlYWR5IEludGVycnVwdCBmbGFnICovDQojZGVmaW5lIFJDQ19DSVJfTFNFQ1NTRl9Qb3MgICAgICAgICAgICAgICAgICg2VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19DSVJfTFNFQ1NTRl9Nc2sgICAgICAgICAgICAgICAgICgweDFVIDw8IFJDQ19DSVJfTFNFQ1NTRl9Qb3MpICAgICAgLyohPCAweDAwMDAwMDQwICovDQojZGVmaW5lIFJDQ19DSVJfTFNFQ1NTRiAgICAgICAgICAgICAgICAgICAgIFJDQ19DSVJfTFNFQ1NTRl9Nc2sgICAgICAgICAgICAgICAgLyohPCBMU0UgQ1NTIEludGVycnVwdCBmbGFnICovDQojZGVmaW5lIFJDQ19DSVJfQ1NTRl9Qb3MgICAgICAgICAgICAgICAgICAgICg3VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19DSVJfQ1NTRl9Nc2sgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFJDQ19DSVJfQ1NTRl9Qb3MpICAgICAgICAgLyohPCAweDAwMDAwMDgwICovDQojZGVmaW5lIFJDQ19DSVJfQ1NTRiAgICAgICAgICAgICAgICAgICAgICAgIFJDQ19DSVJfQ1NTRl9Nc2sgICAgICAgICAgICAgICAgICAgLyohPCBDbG9jayBTZWN1cml0eSBTeXN0ZW0gSW50ZXJydXB0IGZsYWcgKi8NCg0KI2RlZmluZSBSQ0NfQ0lSX0xTSVJEWUlFX1BvcyAgICAgICAgICAgICAgICAoOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQ0lSX0xTSVJEWUlFX01zayAgICAgICAgICAgICAgICAoMHgxVSA8PCBSQ0NfQ0lSX0xTSVJEWUlFX1BvcykgICAgIC8qITwgMHgwMDAwMDEwMCAqLw0KI2RlZmluZSBSQ0NfQ0lSX0xTSVJEWUlFICAgICAgICAgICAgICAgICAgICBSQ0NfQ0lSX0xTSVJEWUlFX01zayAgICAgICAgICAgICAgIC8qITwgTFNJIFJlYWR5IEludGVycnVwdCBFbmFibGUgKi8NCiNkZWZpbmUgUkNDX0NJUl9MU0VSRFlJRV9Qb3MgICAgICAgICAgICAgICAgKDlVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0NJUl9MU0VSRFlJRV9Nc2sgICAgICAgICAgICAgICAgKDB4MVUgPDwgUkNDX0NJUl9MU0VSRFlJRV9Qb3MpICAgICAvKiE8IDB4MDAwMDAyMDAgKi8NCiNkZWZpbmUgUkNDX0NJUl9MU0VSRFlJRSAgICAgICAgICAgICAgICAgICAgUkNDX0NJUl9MU0VSRFlJRV9Nc2sgICAgICAgICAgICAgICAvKiE8IExTRSBSZWFkeSBJbnRlcnJ1cHQgRW5hYmxlICovDQojZGVmaW5lIFJDQ19DSVJfSFNJUkRZSUVfUG9zICAgICAgICAgICAgICAgICgxMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19DSVJfSFNJUkRZSUVfTXNrICAgICAgICAgICAgICAgICgweDFVIDw8IFJDQ19DSVJfSFNJUkRZSUVfUG9zKSAgICAgLyohPCAweDAwMDAwNDAwICovDQojZGVmaW5lIFJDQ19DSVJfSFNJUkRZSUUgICAgICAgICAgICAgICAgICAgIFJDQ19DSVJfSFNJUkRZSUVfTXNrICAgICAgICAgICAgICAgLyohPCBIU0kgUmVhZHkgSW50ZXJydXB0IEVuYWJsZSAqLw0KI2RlZmluZSBSQ0NfQ0lSX0hTRVJEWUlFX1BvcyAgICAgICAgICAgICAgICAoMTFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQ0lSX0hTRVJEWUlFX01zayAgICAgICAgICAgICAgICAoMHgxVSA8PCBSQ0NfQ0lSX0hTRVJEWUlFX1BvcykgICAgIC8qITwgMHgwMDAwMDgwMCAqLw0KI2RlZmluZSBSQ0NfQ0lSX0hTRVJEWUlFICAgICAgICAgICAgICAgICAgICBSQ0NfQ0lSX0hTRVJEWUlFX01zayAgICAgICAgICAgICAgIC8qITwgSFNFIFJlYWR5IEludGVycnVwdCBFbmFibGUgKi8NCiNkZWZpbmUgUkNDX0NJUl9QTExSRFlJRV9Qb3MgICAgICAgICAgICAgICAgKDEyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0NJUl9QTExSRFlJRV9Nc2sgICAgICAgICAgICAgICAgKDB4MVUgPDwgUkNDX0NJUl9QTExSRFlJRV9Qb3MpICAgICAvKiE8IDB4MDAwMDEwMDAgKi8NCiNkZWZpbmUgUkNDX0NJUl9QTExSRFlJRSAgICAgICAgICAgICAgICAgICAgUkNDX0NJUl9QTExSRFlJRV9Nc2sgICAgICAgICAgICAgICAvKiE8IFBMTCBSZWFkeSBJbnRlcnJ1cHQgRW5hYmxlICovDQojZGVmaW5lIFJDQ19DSVJfTVNJUkRZSUVfUG9zICAgICAgICAgICAgICAgICgxM1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19DSVJfTVNJUkRZSUVfTXNrICAgICAgICAgICAgICAgICgweDFVIDw8IFJDQ19DSVJfTVNJUkRZSUVfUG9zKSAgICAgLyohPCAweDAwMDAyMDAwICovDQojZGVmaW5lIFJDQ19DSVJfTVNJUkRZSUUgICAgICAgICAgICAgICAgICAgIFJDQ19DSVJfTVNJUkRZSUVfTXNrICAgICAgICAgICAgICAgLyohPCBNU0kgUmVhZHkgSW50ZXJydXB0IEVuYWJsZSAqLw0KI2RlZmluZSBSQ0NfQ0lSX0xTRUNTU0lFX1BvcyAgICAgICAgICAgICAgICAoMTRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQ0lSX0xTRUNTU0lFX01zayAgICAgICAgICAgICAgICAoMHgxVSA8PCBSQ0NfQ0lSX0xTRUNTU0lFX1BvcykgICAgIC8qITwgMHgwMDAwNDAwMCAqLw0KI2RlZmluZSBSQ0NfQ0lSX0xTRUNTU0lFICAgICAgICAgICAgICAgICAgICBSQ0NfQ0lSX0xTRUNTU0lFX01zayAgICAgICAgICAgICAgIC8qITwgTFNFIENTUyBJbnRlcnJ1cHQgRW5hYmxlICovDQoNCiNkZWZpbmUgUkNDX0NJUl9MU0lSRFlDX1BvcyAgICAgICAgICAgICAgICAgKDE2VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0NJUl9MU0lSRFlDX01zayAgICAgICAgICAgICAgICAgKDB4MVUgPDwgUkNDX0NJUl9MU0lSRFlDX1BvcykgICAgICAvKiE8IDB4MDAwMTAwMDAgKi8NCiNkZWZpbmUgUkNDX0NJUl9MU0lSRFlDICAgICAgICAgICAgICAgICAgICAgUkNDX0NJUl9MU0lSRFlDX01zayAgICAgICAgICAgICAgICAvKiE8IExTSSBSZWFkeSBJbnRlcnJ1cHQgQ2xlYXIgKi8NCiNkZWZpbmUgUkNDX0NJUl9MU0VSRFlDX1BvcyAgICAgICAgICAgICAgICAgKDE3VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0NJUl9MU0VSRFlDX01zayAgICAgICAgICAgICAgICAgKDB4MVUgPDwgUkNDX0NJUl9MU0VSRFlDX1BvcykgICAgICAvKiE8IDB4MDAwMjAwMDAgKi8NCiNkZWZpbmUgUkNDX0NJUl9MU0VSRFlDICAgICAgICAgICAgICAgICAgICAgUkNDX0NJUl9MU0VSRFlDX01zayAgICAgICAgICAgICAgICAvKiE8IExTRSBSZWFkeSBJbnRlcnJ1cHQgQ2xlYXIgKi8NCiNkZWZpbmUgUkNDX0NJUl9IU0lSRFlDX1BvcyAgICAgICAgICAgICAgICAgKDE4VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0NJUl9IU0lSRFlDX01zayAgICAgICAgICAgICAgICAgKDB4MVUgPDwgUkNDX0NJUl9IU0lSRFlDX1BvcykgICAgICAvKiE8IDB4MDAwNDAwMDAgKi8NCiNkZWZpbmUgUkNDX0NJUl9IU0lSRFlDICAgICAgICAgICAgICAgICAgICAgUkNDX0NJUl9IU0lSRFlDX01zayAgICAgICAgICAgICAgICAvKiE8IEhTSSBSZWFkeSBJbnRlcnJ1cHQgQ2xlYXIgKi8NCiNkZWZpbmUgUkNDX0NJUl9IU0VSRFlDX1BvcyAgICAgICAgICAgICAgICAgKDE5VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0NJUl9IU0VSRFlDX01zayAgICAgICAgICAgICAgICAgKDB4MVUgPDwgUkNDX0NJUl9IU0VSRFlDX1BvcykgICAgICAvKiE8IDB4MDAwODAwMDAgKi8NCiNkZWZpbmUgUkNDX0NJUl9IU0VSRFlDICAgICAgICAgICAgICAgICAgICAgUkNDX0NJUl9IU0VSRFlDX01zayAgICAgICAgICAgICAgICAvKiE8IEhTRSBSZWFkeSBJbnRlcnJ1cHQgQ2xlYXIgKi8NCiNkZWZpbmUgUkNDX0NJUl9QTExSRFlDX1BvcyAgICAgICAgICAgICAgICAgKDIwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0NJUl9QTExSRFlDX01zayAgICAgICAgICAgICAgICAgKDB4MVUgPDwgUkNDX0NJUl9QTExSRFlDX1BvcykgICAgICAvKiE8IDB4MDAxMDAwMDAgKi8NCiNkZWZpbmUgUkNDX0NJUl9QTExSRFlDICAgICAgICAgICAgICAgICAgICAgUkNDX0NJUl9QTExSRFlDX01zayAgICAgICAgICAgICAgICAvKiE8IFBMTCBSZWFkeSBJbnRlcnJ1cHQgQ2xlYXIgKi8NCiNkZWZpbmUgUkNDX0NJUl9NU0lSRFlDX1BvcyAgICAgICAgICAgICAgICAgKDIxVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0NJUl9NU0lSRFlDX01zayAgICAgICAgICAgICAgICAgKDB4MVUgPDwgUkNDX0NJUl9NU0lSRFlDX1BvcykgICAgICAvKiE8IDB4MDAyMDAwMDAgKi8NCiNkZWZpbmUgUkNDX0NJUl9NU0lSRFlDICAgICAgICAgICAgICAgICAgICAgUkNDX0NJUl9NU0lSRFlDX01zayAgICAgICAgICAgICAgICAvKiE8IE1TSSBSZWFkeSBJbnRlcnJ1cHQgQ2xlYXIgKi8NCiNkZWZpbmUgUkNDX0NJUl9MU0VDU1NDX1BvcyAgICAgICAgICAgICAgICAgKDIyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0NJUl9MU0VDU1NDX01zayAgICAgICAgICAgICAgICAgKDB4MVUgPDwgUkNDX0NJUl9MU0VDU1NDX1BvcykgICAgICAvKiE8IDB4MDA0MDAwMDAgKi8NCiNkZWZpbmUgUkNDX0NJUl9MU0VDU1NDICAgICAgICAgICAgICAgICAgICAgUkNDX0NJUl9MU0VDU1NDX01zayAgICAgICAgICAgICAgICAvKiE8IExTRSBDU1MgSW50ZXJydXB0IENsZWFyICovDQojZGVmaW5lIFJDQ19DSVJfQ1NTQ19Qb3MgICAgICAgICAgICAgICAgICAgICgyM1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19DSVJfQ1NTQ19Nc2sgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFJDQ19DSVJfQ1NTQ19Qb3MpICAgICAgICAgLyohPCAweDAwODAwMDAwICovDQojZGVmaW5lIFJDQ19DSVJfQ1NTQyAgICAgICAgICAgICAgICAgICAgICAgIFJDQ19DSVJfQ1NTQ19Nc2sgICAgICAgICAgICAgICAgICAgLyohPCBDbG9jayBTZWN1cml0eSBTeXN0ZW0gSW50ZXJydXB0IENsZWFyICovDQoNCi8qKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFJDQ19BSEJSU1RSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIFJDQ19BSEJSU1RSX0dQSU9BUlNUX1BvcyAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19BSEJSU1RSX0dQSU9BUlNUX01zayAgICAgICAgICAgICgweDFVIDw8IFJDQ19BSEJSU1RSX0dQSU9BUlNUX1BvcykgLyohPCAweDAwMDAwMDAxICovDQojZGVmaW5lIFJDQ19BSEJSU1RSX0dQSU9BUlNUICAgICAgICAgICAgICAgIFJDQ19BSEJSU1RSX0dQSU9BUlNUX01zayAgICAgICAgICAgLyohPCBHUElPIHBvcnQgQSByZXNldCAqLw0KI2RlZmluZSBSQ0NfQUhCUlNUUl9HUElPQlJTVF9Qb3MgICAgICAgICAgICAoMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQUhCUlNUUl9HUElPQlJTVF9Nc2sgICAgICAgICAgICAoMHgxVSA8PCBSQ0NfQUhCUlNUUl9HUElPQlJTVF9Qb3MpIC8qITwgMHgwMDAwMDAwMiAqLw0KI2RlZmluZSBSQ0NfQUhCUlNUUl9HUElPQlJTVCAgICAgICAgICAgICAgICBSQ0NfQUhCUlNUUl9HUElPQlJTVF9Nc2sgICAgICAgICAgIC8qITwgR1BJTyBwb3J0IEIgcmVzZXQgKi8NCiNkZWZpbmUgUkNDX0FIQlJTVFJfR1BJT0NSU1RfUG9zICAgICAgICAgICAgKDJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0FIQlJTVFJfR1BJT0NSU1RfTXNrICAgICAgICAgICAgKDB4MVUgPDwgUkNDX0FIQlJTVFJfR1BJT0NSU1RfUG9zKSAvKiE8IDB4MDAwMDAwMDQgKi8NCiNkZWZpbmUgUkNDX0FIQlJTVFJfR1BJT0NSU1QgICAgICAgICAgICAgICAgUkNDX0FIQlJTVFJfR1BJT0NSU1RfTXNrICAgICAgICAgICAvKiE8IEdQSU8gcG9ydCBDIHJlc2V0ICovDQojZGVmaW5lIFJDQ19BSEJSU1RSX0dQSU9EUlNUX1BvcyAgICAgICAgICAgICgzVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19BSEJSU1RSX0dQSU9EUlNUX01zayAgICAgICAgICAgICgweDFVIDw8IFJDQ19BSEJSU1RSX0dQSU9EUlNUX1BvcykgLyohPCAweDAwMDAwMDA4ICovDQojZGVmaW5lIFJDQ19BSEJSU1RSX0dQSU9EUlNUICAgICAgICAgICAgICAgIFJDQ19BSEJSU1RSX0dQSU9EUlNUX01zayAgICAgICAgICAgLyohPCBHUElPIHBvcnQgRCByZXNldCAqLw0KI2RlZmluZSBSQ0NfQUhCUlNUUl9HUElPRVJTVF9Qb3MgICAgICAgICAgICAoNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQUhCUlNUUl9HUElPRVJTVF9Nc2sgICAgICAgICAgICAoMHgxVSA8PCBSQ0NfQUhCUlNUUl9HUElPRVJTVF9Qb3MpIC8qITwgMHgwMDAwMDAxMCAqLw0KI2RlZmluZSBSQ0NfQUhCUlNUUl9HUElPRVJTVCAgICAgICAgICAgICAgICBSQ0NfQUhCUlNUUl9HUElPRVJTVF9Nc2sgICAgICAgICAgIC8qITwgR1BJTyBwb3J0IEUgcmVzZXQgKi8NCiNkZWZpbmUgUkNDX0FIQlJTVFJfR1BJT0hSU1RfUG9zICAgICAgICAgICAgKDVVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0FIQlJTVFJfR1BJT0hSU1RfTXNrICAgICAgICAgICAgKDB4MVUgPDwgUkNDX0FIQlJTVFJfR1BJT0hSU1RfUG9zKSAvKiE8IDB4MDAwMDAwMjAgKi8NCiNkZWZpbmUgUkNDX0FIQlJTVFJfR1BJT0hSU1QgICAgICAgICAgICAgICAgUkNDX0FIQlJTVFJfR1BJT0hSU1RfTXNrICAgICAgICAgICAvKiE8IEdQSU8gcG9ydCBIIHJlc2V0ICovDQojZGVmaW5lIFJDQ19BSEJSU1RSX0dQSU9GUlNUX1BvcyAgICAgICAgICAgICg2VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19BSEJSU1RSX0dQSU9GUlNUX01zayAgICAgICAgICAgICgweDFVIDw8IFJDQ19BSEJSU1RSX0dQSU9GUlNUX1BvcykgLyohPCAweDAwMDAwMDQwICovDQojZGVmaW5lIFJDQ19BSEJSU1RSX0dQSU9GUlNUICAgICAgICAgICAgICAgIFJDQ19BSEJSU1RSX0dQSU9GUlNUX01zayAgICAgICAgICAgLyohPCBHUElPIHBvcnQgRiByZXNldCAqLw0KI2RlZmluZSBSQ0NfQUhCUlNUUl9HUElPR1JTVF9Qb3MgICAgICAgICAgICAoN1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQUhCUlNUUl9HUElPR1JTVF9Nc2sgICAgICAgICAgICAoMHgxVSA8PCBSQ0NfQUhCUlNUUl9HUElPR1JTVF9Qb3MpIC8qITwgMHgwMDAwMDA4MCAqLw0KI2RlZmluZSBSQ0NfQUhCUlNUUl9HUElPR1JTVCAgICAgICAgICAgICAgICBSQ0NfQUhCUlNUUl9HUElPR1JTVF9Nc2sgICAgICAgICAgIC8qITwgR1BJTyBwb3J0IEcgcmVzZXQgKi8NCiNkZWZpbmUgUkNDX0FIQlJTVFJfQ1JDUlNUX1BvcyAgICAgICAgICAgICAgKDEyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0FIQlJTVFJfQ1JDUlNUX01zayAgICAgICAgICAgICAgKDB4MVUgPDwgUkNDX0FIQlJTVFJfQ1JDUlNUX1BvcykgICAvKiE8IDB4MDAwMDEwMDAgKi8NCiNkZWZpbmUgUkNDX0FIQlJTVFJfQ1JDUlNUICAgICAgICAgICAgICAgICAgUkNDX0FIQlJTVFJfQ1JDUlNUX01zayAgICAgICAgICAgICAvKiE8IENSQyByZXNldCAqLw0KI2RlZmluZSBSQ0NfQUhCUlNUUl9GTElURlJTVF9Qb3MgICAgICAgICAgICAoMTVVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQUhCUlNUUl9GTElURlJTVF9Nc2sgICAgICAgICAgICAoMHgxVSA8PCBSQ0NfQUhCUlNUUl9GTElURlJTVF9Qb3MpIC8qITwgMHgwMDAwODAwMCAqLw0KI2RlZmluZSBSQ0NfQUhCUlNUUl9GTElURlJTVCAgICAgICAgICAgICAgICBSQ0NfQUhCUlNUUl9GTElURlJTVF9Nc2sgICAgICAgICAgIC8qITwgRkxJVEYgcmVzZXQgKi8NCiNkZWZpbmUgUkNDX0FIQlJTVFJfRE1BMVJTVF9Qb3MgICAgICAgICAgICAgKDI0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0FIQlJTVFJfRE1BMVJTVF9Nc2sgICAgICAgICAgICAgKDB4MVUgPDwgUkNDX0FIQlJTVFJfRE1BMVJTVF9Qb3MpICAvKiE8IDB4MDEwMDAwMDAgKi8NCiNkZWZpbmUgUkNDX0FIQlJTVFJfRE1BMVJTVCAgICAgICAgICAgICAgICAgUkNDX0FIQlJTVFJfRE1BMVJTVF9Nc2sgICAgICAgICAgICAvKiE8IERNQTEgcmVzZXQgKi8NCiNkZWZpbmUgUkNDX0FIQlJTVFJfRE1BMlJTVF9Qb3MgICAgICAgICAgICAgKDI1VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0FIQlJTVFJfRE1BMlJTVF9Nc2sgICAgICAgICAgICAgKDB4MVUgPDwgUkNDX0FIQlJTVFJfRE1BMlJTVF9Qb3MpICAvKiE8IDB4MDIwMDAwMDAgKi8NCiNkZWZpbmUgUkNDX0FIQlJTVFJfRE1BMlJTVCAgICAgICAgICAgICAgICAgUkNDX0FIQlJTVFJfRE1BMlJTVF9Nc2sgICAgICAgICAgICAvKiE8IERNQTIgcmVzZXQgKi8NCiANCi8qKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFJDQ19BUEIyUlNUUiByZWdpc3RlciAgKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIFJDQ19BUEIyUlNUUl9TWVNDRkdSU1RfUG9zICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19BUEIyUlNUUl9TWVNDRkdSU1RfTXNrICAgICAgICAgICgweDFVIDw8IFJDQ19BUEIyUlNUUl9TWVNDRkdSU1RfUG9zKSAvKiE8IDB4MDAwMDAwMDEgKi8NCiNkZWZpbmUgUkNDX0FQQjJSU1RSX1NZU0NGR1JTVCAgICAgICAgICAgICAgUkNDX0FQQjJSU1RSX1NZU0NGR1JTVF9Nc2sgICAgICAgICAvKiE8IFN5c3RlbSBDb25maWd1cmF0aW9uIFNZU0NGRyByZXNldCAqLw0KI2RlZmluZSBSQ0NfQVBCMlJTVFJfVElNOVJTVF9Qb3MgICAgICAgICAgICAoMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQVBCMlJTVFJfVElNOVJTVF9Nc2sgICAgICAgICAgICAoMHgxVSA8PCBSQ0NfQVBCMlJTVFJfVElNOVJTVF9Qb3MpIC8qITwgMHgwMDAwMDAwNCAqLw0KI2RlZmluZSBSQ0NfQVBCMlJTVFJfVElNOVJTVCAgICAgICAgICAgICAgICBSQ0NfQVBCMlJTVFJfVElNOVJTVF9Nc2sgICAgICAgICAgIC8qITwgVElNOSByZXNldCAqLw0KI2RlZmluZSBSQ0NfQVBCMlJTVFJfVElNMTBSU1RfUG9zICAgICAgICAgICAoM1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQVBCMlJTVFJfVElNMTBSU1RfTXNrICAgICAgICAgICAoMHgxVSA8PCBSQ0NfQVBCMlJTVFJfVElNMTBSU1RfUG9zKSAvKiE8IDB4MDAwMDAwMDggKi8NCiNkZWZpbmUgUkNDX0FQQjJSU1RSX1RJTTEwUlNUICAgICAgICAgICAgICAgUkNDX0FQQjJSU1RSX1RJTTEwUlNUX01zayAgICAgICAgICAvKiE8IFRJTTEwIHJlc2V0ICovDQojZGVmaW5lIFJDQ19BUEIyUlNUUl9USU0xMVJTVF9Qb3MgICAgICAgICAgICg0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19BUEIyUlNUUl9USU0xMVJTVF9Nc2sgICAgICAgICAgICgweDFVIDw8IFJDQ19BUEIyUlNUUl9USU0xMVJTVF9Qb3MpIC8qITwgMHgwMDAwMDAxMCAqLw0KI2RlZmluZSBSQ0NfQVBCMlJTVFJfVElNMTFSU1QgICAgICAgICAgICAgICBSQ0NfQVBCMlJTVFJfVElNMTFSU1RfTXNrICAgICAgICAgIC8qITwgVElNMTEgcmVzZXQgKi8NCiNkZWZpbmUgUkNDX0FQQjJSU1RSX0FEQzFSU1RfUG9zICAgICAgICAgICAgKDlVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0FQQjJSU1RSX0FEQzFSU1RfTXNrICAgICAgICAgICAgKDB4MVUgPDwgUkNDX0FQQjJSU1RSX0FEQzFSU1RfUG9zKSAvKiE8IDB4MDAwMDAyMDAgKi8NCiNkZWZpbmUgUkNDX0FQQjJSU1RSX0FEQzFSU1QgICAgICAgICAgICAgICAgUkNDX0FQQjJSU1RSX0FEQzFSU1RfTXNrICAgICAgICAgICAvKiE8IEFEQzEgcmVzZXQgKi8NCiNkZWZpbmUgUkNDX0FQQjJSU1RSX1NQSTFSU1RfUG9zICAgICAgICAgICAgKDEyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0FQQjJSU1RSX1NQSTFSU1RfTXNrICAgICAgICAgICAgKDB4MVUgPDwgUkNDX0FQQjJSU1RSX1NQSTFSU1RfUG9zKSAvKiE8IDB4MDAwMDEwMDAgKi8NCiNkZWZpbmUgUkNDX0FQQjJSU1RSX1NQSTFSU1QgICAgICAgICAgICAgICAgUkNDX0FQQjJSU1RSX1NQSTFSU1RfTXNrICAgICAgICAgICAvKiE8IFNQSTEgcmVzZXQgKi8NCiNkZWZpbmUgUkNDX0FQQjJSU1RSX1VTQVJUMVJTVF9Qb3MgICAgICAgICAgKDE0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0FQQjJSU1RSX1VTQVJUMVJTVF9Nc2sgICAgICAgICAgKDB4MVUgPDwgUkNDX0FQQjJSU1RSX1VTQVJUMVJTVF9Qb3MpIC8qITwgMHgwMDAwNDAwMCAqLw0KI2RlZmluZSBSQ0NfQVBCMlJTVFJfVVNBUlQxUlNUICAgICAgICAgICAgICBSQ0NfQVBCMlJTVFJfVVNBUlQxUlNUX01zayAgICAgICAgIC8qITwgVVNBUlQxIHJlc2V0ICovDQoNCi8qKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFJDQ19BUEIxUlNUUiByZWdpc3RlciAgKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIFJDQ19BUEIxUlNUUl9USU0yUlNUX1BvcyAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19BUEIxUlNUUl9USU0yUlNUX01zayAgICAgICAgICAgICgweDFVIDw8IFJDQ19BUEIxUlNUUl9USU0yUlNUX1BvcykgLyohPCAweDAwMDAwMDAxICovDQojZGVmaW5lIFJDQ19BUEIxUlNUUl9USU0yUlNUICAgICAgICAgICAgICAgIFJDQ19BUEIxUlNUUl9USU0yUlNUX01zayAgICAgICAgICAgLyohPCBUaW1lciAyIHJlc2V0ICovDQojZGVmaW5lIFJDQ19BUEIxUlNUUl9USU0zUlNUX1BvcyAgICAgICAgICAgICgxVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19BUEIxUlNUUl9USU0zUlNUX01zayAgICAgICAgICAgICgweDFVIDw8IFJDQ19BUEIxUlNUUl9USU0zUlNUX1BvcykgLyohPCAweDAwMDAwMDAyICovDQojZGVmaW5lIFJDQ19BUEIxUlNUUl9USU0zUlNUICAgICAgICAgICAgICAgIFJDQ19BUEIxUlNUUl9USU0zUlNUX01zayAgICAgICAgICAgLyohPCBUaW1lciAzIHJlc2V0ICovDQojZGVmaW5lIFJDQ19BUEIxUlNUUl9USU00UlNUX1BvcyAgICAgICAgICAgICgyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19BUEIxUlNUUl9USU00UlNUX01zayAgICAgICAgICAgICgweDFVIDw8IFJDQ19BUEIxUlNUUl9USU00UlNUX1BvcykgLyohPCAweDAwMDAwMDA0ICovDQojZGVmaW5lIFJDQ19BUEIxUlNUUl9USU00UlNUICAgICAgICAgICAgICAgIFJDQ19BUEIxUlNUUl9USU00UlNUX01zayAgICAgICAgICAgLyohPCBUaW1lciA0IHJlc2V0ICovDQojZGVmaW5lIFJDQ19BUEIxUlNUUl9USU01UlNUX1BvcyAgICAgICAgICAgICgzVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19BUEIxUlNUUl9USU01UlNUX01zayAgICAgICAgICAgICgweDFVIDw8IFJDQ19BUEIxUlNUUl9USU01UlNUX1BvcykgLyohPCAweDAwMDAwMDA4ICovDQojZGVmaW5lIFJDQ19BUEIxUlNUUl9USU01UlNUICAgICAgICAgICAgICAgIFJDQ19BUEIxUlNUUl9USU01UlNUX01zayAgICAgICAgICAgLyohPCBUaW1lciA1IHJlc2V0ICovDQojZGVmaW5lIFJDQ19BUEIxUlNUUl9USU02UlNUX1BvcyAgICAgICAgICAgICg0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19BUEIxUlNUUl9USU02UlNUX01zayAgICAgICAgICAgICgweDFVIDw8IFJDQ19BUEIxUlNUUl9USU02UlNUX1BvcykgLyohPCAweDAwMDAwMDEwICovDQojZGVmaW5lIFJDQ19BUEIxUlNUUl9USU02UlNUICAgICAgICAgICAgICAgIFJDQ19BUEIxUlNUUl9USU02UlNUX01zayAgICAgICAgICAgLyohPCBUaW1lciA2IHJlc2V0ICovDQojZGVmaW5lIFJDQ19BUEIxUlNUUl9USU03UlNUX1BvcyAgICAgICAgICAgICg1VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19BUEIxUlNUUl9USU03UlNUX01zayAgICAgICAgICAgICgweDFVIDw8IFJDQ19BUEIxUlNUUl9USU03UlNUX1BvcykgLyohPCAweDAwMDAwMDIwICovDQojZGVmaW5lIFJDQ19BUEIxUlNUUl9USU03UlNUICAgICAgICAgICAgICAgIFJDQ19BUEIxUlNUUl9USU03UlNUX01zayAgICAgICAgICAgLyohPCBUaW1lciA3IHJlc2V0ICovDQojZGVmaW5lIFJDQ19BUEIxUlNUUl9XV0RHUlNUX1BvcyAgICAgICAgICAgICgxMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19BUEIxUlNUUl9XV0RHUlNUX01zayAgICAgICAgICAgICgweDFVIDw8IFJDQ19BUEIxUlNUUl9XV0RHUlNUX1BvcykgLyohPCAweDAwMDAwODAwICovDQojZGVmaW5lIFJDQ19BUEIxUlNUUl9XV0RHUlNUICAgICAgICAgICAgICAgIFJDQ19BUEIxUlNUUl9XV0RHUlNUX01zayAgICAgICAgICAgLyohPCBXaW5kb3cgV2F0Y2hkb2cgcmVzZXQgKi8NCiNkZWZpbmUgUkNDX0FQQjFSU1RSX1NQSTJSU1RfUG9zICAgICAgICAgICAgKDE0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0FQQjFSU1RSX1NQSTJSU1RfTXNrICAgICAgICAgICAgKDB4MVUgPDwgUkNDX0FQQjFSU1RSX1NQSTJSU1RfUG9zKSAvKiE8IDB4MDAwMDQwMDAgKi8NCiNkZWZpbmUgUkNDX0FQQjFSU1RSX1NQSTJSU1QgICAgICAgICAgICAgICAgUkNDX0FQQjFSU1RSX1NQSTJSU1RfTXNrICAgICAgICAgICAvKiE8IFNQSSAyIHJlc2V0ICovDQojZGVmaW5lIFJDQ19BUEIxUlNUUl9TUEkzUlNUX1BvcyAgICAgICAgICAgICgxNVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19BUEIxUlNUUl9TUEkzUlNUX01zayAgICAgICAgICAgICgweDFVIDw8IFJDQ19BUEIxUlNUUl9TUEkzUlNUX1BvcykgLyohPCAweDAwMDA4MDAwICovDQojZGVmaW5lIFJDQ19BUEIxUlNUUl9TUEkzUlNUICAgICAgICAgICAgICAgIFJDQ19BUEIxUlNUUl9TUEkzUlNUX01zayAgICAgICAgICAgLyohPCBTUEkgMyByZXNldCAqLw0KI2RlZmluZSBSQ0NfQVBCMVJTVFJfVVNBUlQyUlNUX1BvcyAgICAgICAgICAoMTdVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQVBCMVJTVFJfVVNBUlQyUlNUX01zayAgICAgICAgICAoMHgxVSA8PCBSQ0NfQVBCMVJTVFJfVVNBUlQyUlNUX1BvcykgLyohPCAweDAwMDIwMDAwICovDQojZGVmaW5lIFJDQ19BUEIxUlNUUl9VU0FSVDJSU1QgICAgICAgICAgICAgIFJDQ19BUEIxUlNUUl9VU0FSVDJSU1RfTXNrICAgICAgICAgLyohPCBVU0FSVCAyIHJlc2V0ICovDQojZGVmaW5lIFJDQ19BUEIxUlNUUl9VU0FSVDNSU1RfUG9zICAgICAgICAgICgxOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19BUEIxUlNUUl9VU0FSVDNSU1RfTXNrICAgICAgICAgICgweDFVIDw8IFJDQ19BUEIxUlNUUl9VU0FSVDNSU1RfUG9zKSAvKiE8IDB4MDAwNDAwMDAgKi8NCiNkZWZpbmUgUkNDX0FQQjFSU1RSX1VTQVJUM1JTVCAgICAgICAgICAgICAgUkNDX0FQQjFSU1RSX1VTQVJUM1JTVF9Nc2sgICAgICAgICAvKiE8IFVTQVJUIDMgcmVzZXQgKi8NCiNkZWZpbmUgUkNDX0FQQjFSU1RSX1VBUlQ0UlNUX1BvcyAgICAgICAgICAgKDE5VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0FQQjFSU1RSX1VBUlQ0UlNUX01zayAgICAgICAgICAgKDB4MVUgPDwgUkNDX0FQQjFSU1RSX1VBUlQ0UlNUX1BvcykgLyohPCAweDAwMDgwMDAwICovDQojZGVmaW5lIFJDQ19BUEIxUlNUUl9VQVJUNFJTVCAgICAgICAgICAgICAgIFJDQ19BUEIxUlNUUl9VQVJUNFJTVF9Nc2sgICAgICAgICAgLyohPCBVQVJUIDQgcmVzZXQgKi8NCiNkZWZpbmUgUkNDX0FQQjFSU1RSX1VBUlQ1UlNUX1BvcyAgICAgICAgICAgKDIwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0FQQjFSU1RSX1VBUlQ1UlNUX01zayAgICAgICAgICAgKDB4MVUgPDwgUkNDX0FQQjFSU1RSX1VBUlQ1UlNUX1BvcykgLyohPCAweDAwMTAwMDAwICovDQojZGVmaW5lIFJDQ19BUEIxUlNUUl9VQVJUNVJTVCAgICAgICAgICAgICAgIFJDQ19BUEIxUlNUUl9VQVJUNVJTVF9Nc2sgICAgICAgICAgLyohPCBVQVJUIDUgcmVzZXQgKi8NCiNkZWZpbmUgUkNDX0FQQjFSU1RSX0kyQzFSU1RfUG9zICAgICAgICAgICAgKDIxVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0FQQjFSU1RSX0kyQzFSU1RfTXNrICAgICAgICAgICAgKDB4MVUgPDwgUkNDX0FQQjFSU1RSX0kyQzFSU1RfUG9zKSAvKiE8IDB4MDAyMDAwMDAgKi8NCiNkZWZpbmUgUkNDX0FQQjFSU1RSX0kyQzFSU1QgICAgICAgICAgICAgICAgUkNDX0FQQjFSU1RSX0kyQzFSU1RfTXNrICAgICAgICAgICAvKiE8IEkyQyAxIHJlc2V0ICovDQojZGVmaW5lIFJDQ19BUEIxUlNUUl9JMkMyUlNUX1BvcyAgICAgICAgICAgICgyMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19BUEIxUlNUUl9JMkMyUlNUX01zayAgICAgICAgICAgICgweDFVIDw8IFJDQ19BUEIxUlNUUl9JMkMyUlNUX1BvcykgLyohPCAweDAwNDAwMDAwICovDQojZGVmaW5lIFJDQ19BUEIxUlNUUl9JMkMyUlNUICAgICAgICAgICAgICAgIFJDQ19BUEIxUlNUUl9JMkMyUlNUX01zayAgICAgICAgICAgLyohPCBJMkMgMiByZXNldCAqLw0KI2RlZmluZSBSQ0NfQVBCMVJTVFJfVVNCUlNUX1BvcyAgICAgICAgICAgICAoMjNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQVBCMVJTVFJfVVNCUlNUX01zayAgICAgICAgICAgICAoMHgxVSA8PCBSQ0NfQVBCMVJTVFJfVVNCUlNUX1BvcykgIC8qITwgMHgwMDgwMDAwMCAqLw0KI2RlZmluZSBSQ0NfQVBCMVJTVFJfVVNCUlNUICAgICAgICAgICAgICAgICBSQ0NfQVBCMVJTVFJfVVNCUlNUX01zayAgICAgICAgICAgIC8qITwgVVNCIHJlc2V0ICovDQojZGVmaW5lIFJDQ19BUEIxUlNUUl9QV1JSU1RfUG9zICAgICAgICAgICAgICgyOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19BUEIxUlNUUl9QV1JSU1RfTXNrICAgICAgICAgICAgICgweDFVIDw8IFJDQ19BUEIxUlNUUl9QV1JSU1RfUG9zKSAgLyohPCAweDEwMDAwMDAwICovDQojZGVmaW5lIFJDQ19BUEIxUlNUUl9QV1JSU1QgICAgICAgICAgICAgICAgIFJDQ19BUEIxUlNUUl9QV1JSU1RfTXNrICAgICAgICAgICAgLyohPCBQb3dlciBpbnRlcmZhY2UgcmVzZXQgKi8NCiNkZWZpbmUgUkNDX0FQQjFSU1RSX0RBQ1JTVF9Qb3MgICAgICAgICAgICAgKDI5VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0FQQjFSU1RSX0RBQ1JTVF9Nc2sgICAgICAgICAgICAgKDB4MVUgPDwgUkNDX0FQQjFSU1RSX0RBQ1JTVF9Qb3MpICAvKiE8IDB4MjAwMDAwMDAgKi8NCiNkZWZpbmUgUkNDX0FQQjFSU1RSX0RBQ1JTVCAgICAgICAgICAgICAgICAgUkNDX0FQQjFSU1RSX0RBQ1JTVF9Nc2sgICAgICAgICAgICAvKiE8IERBQyBpbnRlcmZhY2UgcmVzZXQgKi8NCiNkZWZpbmUgUkNDX0FQQjFSU1RSX0NPTVBSU1RfUG9zICAgICAgICAgICAgKDMxVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0FQQjFSU1RSX0NPTVBSU1RfTXNrICAgICAgICAgICAgKDB4MVUgPDwgUkNDX0FQQjFSU1RSX0NPTVBSU1RfUG9zKSAvKiE8IDB4ODAwMDAwMDAgKi8NCiNkZWZpbmUgUkNDX0FQQjFSU1RSX0NPTVBSU1QgICAgICAgICAgICAgICAgUkNDX0FQQjFSU1RSX0NPTVBSU1RfTXNrICAgICAgICAgICAvKiE8IENvbXBhcmF0b3IgaW50ZXJmYWNlIHJlc2V0ICovDQoNCi8qKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBSQ0NfQUhCRU5SIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIFJDQ19BSEJFTlJfR1BJT0FFTl9Qb3MgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19BSEJFTlJfR1BJT0FFTl9Nc2sgICAgICAgICAgICAgICgweDFVIDw8IFJDQ19BSEJFTlJfR1BJT0FFTl9Qb3MpICAgLyohPCAweDAwMDAwMDAxICovDQojZGVmaW5lIFJDQ19BSEJFTlJfR1BJT0FFTiAgICAgICAgICAgICAgICAgIFJDQ19BSEJFTlJfR1BJT0FFTl9Nc2sgICAgICAgICAgICAgLyohPCBHUElPIHBvcnQgQSBjbG9jayBlbmFibGUgKi8NCiNkZWZpbmUgUkNDX0FIQkVOUl9HUElPQkVOX1BvcyAgICAgICAgICAgICAgKDFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0FIQkVOUl9HUElPQkVOX01zayAgICAgICAgICAgICAgKDB4MVUgPDwgUkNDX0FIQkVOUl9HUElPQkVOX1BvcykgICAvKiE8IDB4MDAwMDAwMDIgKi8NCiNkZWZpbmUgUkNDX0FIQkVOUl9HUElPQkVOICAgICAgICAgICAgICAgICAgUkNDX0FIQkVOUl9HUElPQkVOX01zayAgICAgICAgICAgICAvKiE8IEdQSU8gcG9ydCBCIGNsb2NrIGVuYWJsZSAqLw0KI2RlZmluZSBSQ0NfQUhCRU5SX0dQSU9DRU5fUG9zICAgICAgICAgICAgICAoMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQUhCRU5SX0dQSU9DRU5fTXNrICAgICAgICAgICAgICAoMHgxVSA8PCBSQ0NfQUhCRU5SX0dQSU9DRU5fUG9zKSAgIC8qITwgMHgwMDAwMDAwNCAqLw0KI2RlZmluZSBSQ0NfQUhCRU5SX0dQSU9DRU4gICAgICAgICAgICAgICAgICBSQ0NfQUhCRU5SX0dQSU9DRU5fTXNrICAgICAgICAgICAgIC8qITwgR1BJTyBwb3J0IEMgY2xvY2sgZW5hYmxlICovDQojZGVmaW5lIFJDQ19BSEJFTlJfR1BJT0RFTl9Qb3MgICAgICAgICAgICAgICgzVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19BSEJFTlJfR1BJT0RFTl9Nc2sgICAgICAgICAgICAgICgweDFVIDw8IFJDQ19BSEJFTlJfR1BJT0RFTl9Qb3MpICAgLyohPCAweDAwMDAwMDA4ICovDQojZGVmaW5lIFJDQ19BSEJFTlJfR1BJT0RFTiAgICAgICAgICAgICAgICAgIFJDQ19BSEJFTlJfR1BJT0RFTl9Nc2sgICAgICAgICAgICAgLyohPCBHUElPIHBvcnQgRCBjbG9jayBlbmFibGUgKi8NCiNkZWZpbmUgUkNDX0FIQkVOUl9HUElPRUVOX1BvcyAgICAgICAgICAgICAgKDRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0FIQkVOUl9HUElPRUVOX01zayAgICAgICAgICAgICAgKDB4MVUgPDwgUkNDX0FIQkVOUl9HUElPRUVOX1BvcykgICAvKiE8IDB4MDAwMDAwMTAgKi8NCiNkZWZpbmUgUkNDX0FIQkVOUl9HUElPRUVOICAgICAgICAgICAgICAgICAgUkNDX0FIQkVOUl9HUElPRUVOX01zayAgICAgICAgICAgICAvKiE8IEdQSU8gcG9ydCBFIGNsb2NrIGVuYWJsZSAqLw0KI2RlZmluZSBSQ0NfQUhCRU5SX0dQSU9IRU5fUG9zICAgICAgICAgICAgICAoNVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQUhCRU5SX0dQSU9IRU5fTXNrICAgICAgICAgICAgICAoMHgxVSA8PCBSQ0NfQUhCRU5SX0dQSU9IRU5fUG9zKSAgIC8qITwgMHgwMDAwMDAyMCAqLw0KI2RlZmluZSBSQ0NfQUhCRU5SX0dQSU9IRU4gICAgICAgICAgICAgICAgICBSQ0NfQUhCRU5SX0dQSU9IRU5fTXNrICAgICAgICAgICAgIC8qITwgR1BJTyBwb3J0IEggY2xvY2sgZW5hYmxlICovDQojZGVmaW5lIFJDQ19BSEJFTlJfR1BJT0ZFTl9Qb3MgICAgICAgICAgICAgICg2VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19BSEJFTlJfR1BJT0ZFTl9Nc2sgICAgICAgICAgICAgICgweDFVIDw8IFJDQ19BSEJFTlJfR1BJT0ZFTl9Qb3MpICAgLyohPCAweDAwMDAwMDQwICovDQojZGVmaW5lIFJDQ19BSEJFTlJfR1BJT0ZFTiAgICAgICAgICAgICAgICAgIFJDQ19BSEJFTlJfR1BJT0ZFTl9Nc2sgICAgICAgICAgICAgLyohPCBHUElPIHBvcnQgRiBjbG9jayBlbmFibGUgKi8NCiNkZWZpbmUgUkNDX0FIQkVOUl9HUElPR0VOX1BvcyAgICAgICAgICAgICAgKDdVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0FIQkVOUl9HUElPR0VOX01zayAgICAgICAgICAgICAgKDB4MVUgPDwgUkNDX0FIQkVOUl9HUElPR0VOX1BvcykgICAvKiE8IDB4MDAwMDAwODAgKi8NCiNkZWZpbmUgUkNDX0FIQkVOUl9HUElPR0VOICAgICAgICAgICAgICAgICAgUkNDX0FIQkVOUl9HUElPR0VOX01zayAgICAgICAgICAgICAvKiE8IEdQSU8gcG9ydCBHIGNsb2NrIGVuYWJsZSAqLw0KI2RlZmluZSBSQ0NfQUhCRU5SX0NSQ0VOX1BvcyAgICAgICAgICAgICAgICAoMTJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQUhCRU5SX0NSQ0VOX01zayAgICAgICAgICAgICAgICAoMHgxVSA8PCBSQ0NfQUhCRU5SX0NSQ0VOX1BvcykgICAgIC8qITwgMHgwMDAwMTAwMCAqLw0KI2RlZmluZSBSQ0NfQUhCRU5SX0NSQ0VOICAgICAgICAgICAgICAgICAgICBSQ0NfQUhCRU5SX0NSQ0VOX01zayAgICAgICAgICAgICAgIC8qITwgQ1JDIGNsb2NrIGVuYWJsZSAqLw0KI2RlZmluZSBSQ0NfQUhCRU5SX0ZMSVRGRU5fUG9zICAgICAgICAgICAgICAoMTVVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQUhCRU5SX0ZMSVRGRU5fTXNrICAgICAgICAgICAgICAoMHgxVSA8PCBSQ0NfQUhCRU5SX0ZMSVRGRU5fUG9zKSAgIC8qITwgMHgwMDAwODAwMCAqLw0KI2RlZmluZSBSQ0NfQUhCRU5SX0ZMSVRGRU4gICAgICAgICAgICAgICAgICBSQ0NfQUhCRU5SX0ZMSVRGRU5fTXNrICAgICAgICAgICAgIC8qITwgRkxJVEYgY2xvY2sgZW5hYmxlIChoYXMgZWZmZWN0IG9ubHkgd2hlbg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aGUgRmxhc2ggbWVtb3J5IGlzIGluIHBvd2VyIGRvd24gbW9kZSkgKi8NCiNkZWZpbmUgUkNDX0FIQkVOUl9ETUExRU5fUG9zICAgICAgICAgICAgICAgKDI0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0FIQkVOUl9ETUExRU5fTXNrICAgICAgICAgICAgICAgKDB4MVUgPDwgUkNDX0FIQkVOUl9ETUExRU5fUG9zKSAgICAvKiE8IDB4MDEwMDAwMDAgKi8NCiNkZWZpbmUgUkNDX0FIQkVOUl9ETUExRU4gICAgICAgICAgICAgICAgICAgUkNDX0FIQkVOUl9ETUExRU5fTXNrICAgICAgICAgICAgICAvKiE8IERNQTEgY2xvY2sgZW5hYmxlICovDQojZGVmaW5lIFJDQ19BSEJFTlJfRE1BMkVOX1BvcyAgICAgICAgICAgICAgICgyNVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19BSEJFTlJfRE1BMkVOX01zayAgICAgICAgICAgICAgICgweDFVIDw8IFJDQ19BSEJFTlJfRE1BMkVOX1BvcykgICAgLyohPCAweDAyMDAwMDAwICovDQojZGVmaW5lIFJDQ19BSEJFTlJfRE1BMkVOICAgICAgICAgICAgICAgICAgIFJDQ19BSEJFTlJfRE1BMkVOX01zayAgICAgICAgICAgICAgLyohPCBETUEyIGNsb2NrIGVuYWJsZSAqLw0KDQovKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgUkNDX0FQQjJFTlIgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBSQ0NfQVBCMkVOUl9TWVNDRkdFTl9Qb3MgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQVBCMkVOUl9TWVNDRkdFTl9Nc2sgICAgICAgICAgICAoMHgxVSA8PCBSQ0NfQVBCMkVOUl9TWVNDRkdFTl9Qb3MpIC8qITwgMHgwMDAwMDAwMSAqLw0KI2RlZmluZSBSQ0NfQVBCMkVOUl9TWVNDRkdFTiAgICAgICAgICAgICAgICBSQ0NfQVBCMkVOUl9TWVNDRkdFTl9Nc2sgICAgICAgICAgIC8qITwgU3lzdGVtIENvbmZpZ3VyYXRpb24gU1lTQ0ZHIGNsb2NrIGVuYWJsZSAqLw0KI2RlZmluZSBSQ0NfQVBCMkVOUl9USU05RU5fUG9zICAgICAgICAgICAgICAoMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQVBCMkVOUl9USU05RU5fTXNrICAgICAgICAgICAgICAoMHgxVSA8PCBSQ0NfQVBCMkVOUl9USU05RU5fUG9zKSAgIC8qITwgMHgwMDAwMDAwNCAqLw0KI2RlZmluZSBSQ0NfQVBCMkVOUl9USU05RU4gICAgICAgICAgICAgICAgICBSQ0NfQVBCMkVOUl9USU05RU5fTXNrICAgICAgICAgICAgIC8qITwgVElNOSBpbnRlcmZhY2UgY2xvY2sgZW5hYmxlICovDQojZGVmaW5lIFJDQ19BUEIyRU5SX1RJTTEwRU5fUG9zICAgICAgICAgICAgICgzVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19BUEIyRU5SX1RJTTEwRU5fTXNrICAgICAgICAgICAgICgweDFVIDw8IFJDQ19BUEIyRU5SX1RJTTEwRU5fUG9zKSAgLyohPCAweDAwMDAwMDA4ICovDQojZGVmaW5lIFJDQ19BUEIyRU5SX1RJTTEwRU4gICAgICAgICAgICAgICAgIFJDQ19BUEIyRU5SX1RJTTEwRU5fTXNrICAgICAgICAgICAgLyohPCBUSU0xMCBpbnRlcmZhY2UgY2xvY2sgZW5hYmxlICovDQojZGVmaW5lIFJDQ19BUEIyRU5SX1RJTTExRU5fUG9zICAgICAgICAgICAgICg0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19BUEIyRU5SX1RJTTExRU5fTXNrICAgICAgICAgICAgICgweDFVIDw8IFJDQ19BUEIyRU5SX1RJTTExRU5fUG9zKSAgLyohPCAweDAwMDAwMDEwICovDQojZGVmaW5lIFJDQ19BUEIyRU5SX1RJTTExRU4gICAgICAgICAgICAgICAgIFJDQ19BUEIyRU5SX1RJTTExRU5fTXNrICAgICAgICAgICAgLyohPCBUSU0xMSBUaW1lciBjbG9jayBlbmFibGUgKi8NCiNkZWZpbmUgUkNDX0FQQjJFTlJfQURDMUVOX1BvcyAgICAgICAgICAgICAgKDlVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0FQQjJFTlJfQURDMUVOX01zayAgICAgICAgICAgICAgKDB4MVUgPDwgUkNDX0FQQjJFTlJfQURDMUVOX1BvcykgICAvKiE8IDB4MDAwMDAyMDAgKi8NCiNkZWZpbmUgUkNDX0FQQjJFTlJfQURDMUVOICAgICAgICAgICAgICAgICAgUkNDX0FQQjJFTlJfQURDMUVOX01zayAgICAgICAgICAgICAvKiE8IEFEQzEgY2xvY2sgZW5hYmxlICovDQojZGVmaW5lIFJDQ19BUEIyRU5SX1NQSTFFTl9Qb3MgICAgICAgICAgICAgICgxMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19BUEIyRU5SX1NQSTFFTl9Nc2sgICAgICAgICAgICAgICgweDFVIDw8IFJDQ19BUEIyRU5SX1NQSTFFTl9Qb3MpICAgLyohPCAweDAwMDAxMDAwICovDQojZGVmaW5lIFJDQ19BUEIyRU5SX1NQSTFFTiAgICAgICAgICAgICAgICAgIFJDQ19BUEIyRU5SX1NQSTFFTl9Nc2sgICAgICAgICAgICAgLyohPCBTUEkxIGNsb2NrIGVuYWJsZSAqLw0KI2RlZmluZSBSQ0NfQVBCMkVOUl9VU0FSVDFFTl9Qb3MgICAgICAgICAgICAoMTRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQVBCMkVOUl9VU0FSVDFFTl9Nc2sgICAgICAgICAgICAoMHgxVSA8PCBSQ0NfQVBCMkVOUl9VU0FSVDFFTl9Qb3MpIC8qITwgMHgwMDAwNDAwMCAqLw0KI2RlZmluZSBSQ0NfQVBCMkVOUl9VU0FSVDFFTiAgICAgICAgICAgICAgICBSQ0NfQVBCMkVOUl9VU0FSVDFFTl9Nc2sgICAgICAgICAgIC8qITwgVVNBUlQxIGNsb2NrIGVuYWJsZSAqLw0KDQovKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBSQ0NfQVBCMUVOUiByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBSQ0NfQVBCMUVOUl9USU0yRU5fUG9zICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQVBCMUVOUl9USU0yRU5fTXNrICAgICAgICAgICAgICAoMHgxVSA8PCBSQ0NfQVBCMUVOUl9USU0yRU5fUG9zKSAgIC8qITwgMHgwMDAwMDAwMSAqLw0KI2RlZmluZSBSQ0NfQVBCMUVOUl9USU0yRU4gICAgICAgICAgICAgICAgICBSQ0NfQVBCMUVOUl9USU0yRU5fTXNrICAgICAgICAgICAgIC8qITwgVGltZXIgMiBjbG9jayBlbmFibGVkKi8NCiNkZWZpbmUgUkNDX0FQQjFFTlJfVElNM0VOX1BvcyAgICAgICAgICAgICAgKDFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0FQQjFFTlJfVElNM0VOX01zayAgICAgICAgICAgICAgKDB4MVUgPDwgUkNDX0FQQjFFTlJfVElNM0VOX1BvcykgICAvKiE8IDB4MDAwMDAwMDIgKi8NCiNkZWZpbmUgUkNDX0FQQjFFTlJfVElNM0VOICAgICAgICAgICAgICAgICAgUkNDX0FQQjFFTlJfVElNM0VOX01zayAgICAgICAgICAgICAvKiE8IFRpbWVyIDMgY2xvY2sgZW5hYmxlICovDQojZGVmaW5lIFJDQ19BUEIxRU5SX1RJTTRFTl9Qb3MgICAgICAgICAgICAgICgyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19BUEIxRU5SX1RJTTRFTl9Nc2sgICAgICAgICAgICAgICgweDFVIDw8IFJDQ19BUEIxRU5SX1RJTTRFTl9Qb3MpICAgLyohPCAweDAwMDAwMDA0ICovDQojZGVmaW5lIFJDQ19BUEIxRU5SX1RJTTRFTiAgICAgICAgICAgICAgICAgIFJDQ19BUEIxRU5SX1RJTTRFTl9Nc2sgICAgICAgICAgICAgLyohPCBUaW1lciA0IGNsb2NrIGVuYWJsZSAqLw0KI2RlZmluZSBSQ0NfQVBCMUVOUl9USU01RU5fUG9zICAgICAgICAgICAgICAoM1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQVBCMUVOUl9USU01RU5fTXNrICAgICAgICAgICAgICAoMHgxVSA8PCBSQ0NfQVBCMUVOUl9USU01RU5fUG9zKSAgIC8qITwgMHgwMDAwMDAwOCAqLw0KI2RlZmluZSBSQ0NfQVBCMUVOUl9USU01RU4gICAgICAgICAgICAgICAgICBSQ0NfQVBCMUVOUl9USU01RU5fTXNrICAgICAgICAgICAgIC8qITwgVGltZXIgNSBjbG9jayBlbmFibGUgKi8NCiNkZWZpbmUgUkNDX0FQQjFFTlJfVElNNkVOX1BvcyAgICAgICAgICAgICAgKDRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0FQQjFFTlJfVElNNkVOX01zayAgICAgICAgICAgICAgKDB4MVUgPDwgUkNDX0FQQjFFTlJfVElNNkVOX1BvcykgICAvKiE8IDB4MDAwMDAwMTAgKi8NCiNkZWZpbmUgUkNDX0FQQjFFTlJfVElNNkVOICAgICAgICAgICAgICAgICAgUkNDX0FQQjFFTlJfVElNNkVOX01zayAgICAgICAgICAgICAvKiE8IFRpbWVyIDYgY2xvY2sgZW5hYmxlICovDQojZGVmaW5lIFJDQ19BUEIxRU5SX1RJTTdFTl9Qb3MgICAgICAgICAgICAgICg1VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19BUEIxRU5SX1RJTTdFTl9Nc2sgICAgICAgICAgICAgICgweDFVIDw8IFJDQ19BUEIxRU5SX1RJTTdFTl9Qb3MpICAgLyohPCAweDAwMDAwMDIwICovDQojZGVmaW5lIFJDQ19BUEIxRU5SX1RJTTdFTiAgICAgICAgICAgICAgICAgIFJDQ19BUEIxRU5SX1RJTTdFTl9Nc2sgICAgICAgICAgICAgLyohPCBUaW1lciA3IGNsb2NrIGVuYWJsZSAqLw0KI2RlZmluZSBSQ0NfQVBCMUVOUl9XV0RHRU5fUG9zICAgICAgICAgICAgICAoMTFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQVBCMUVOUl9XV0RHRU5fTXNrICAgICAgICAgICAgICAoMHgxVSA8PCBSQ0NfQVBCMUVOUl9XV0RHRU5fUG9zKSAgIC8qITwgMHgwMDAwMDgwMCAqLw0KI2RlZmluZSBSQ0NfQVBCMUVOUl9XV0RHRU4gICAgICAgICAgICAgICAgICBSQ0NfQVBCMUVOUl9XV0RHRU5fTXNrICAgICAgICAgICAgIC8qITwgV2luZG93IFdhdGNoZG9nIGNsb2NrIGVuYWJsZSAqLw0KI2RlZmluZSBSQ0NfQVBCMUVOUl9TUEkyRU5fUG9zICAgICAgICAgICAgICAoMTRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQVBCMUVOUl9TUEkyRU5fTXNrICAgICAgICAgICAgICAoMHgxVSA8PCBSQ0NfQVBCMUVOUl9TUEkyRU5fUG9zKSAgIC8qITwgMHgwMDAwNDAwMCAqLw0KI2RlZmluZSBSQ0NfQVBCMUVOUl9TUEkyRU4gICAgICAgICAgICAgICAgICBSQ0NfQVBCMUVOUl9TUEkyRU5fTXNrICAgICAgICAgICAgIC8qITwgU1BJIDIgY2xvY2sgZW5hYmxlICovDQojZGVmaW5lIFJDQ19BUEIxRU5SX1NQSTNFTl9Qb3MgICAgICAgICAgICAgICgxNVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19BUEIxRU5SX1NQSTNFTl9Nc2sgICAgICAgICAgICAgICgweDFVIDw8IFJDQ19BUEIxRU5SX1NQSTNFTl9Qb3MpICAgLyohPCAweDAwMDA4MDAwICovDQojZGVmaW5lIFJDQ19BUEIxRU5SX1NQSTNFTiAgICAgICAgICAgICAgICAgIFJDQ19BUEIxRU5SX1NQSTNFTl9Nc2sgICAgICAgICAgICAgLyohPCBTUEkgMyBjbG9jayBlbmFibGUgKi8NCiNkZWZpbmUgUkNDX0FQQjFFTlJfVVNBUlQyRU5fUG9zICAgICAgICAgICAgKDE3VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0FQQjFFTlJfVVNBUlQyRU5fTXNrICAgICAgICAgICAgKDB4MVUgPDwgUkNDX0FQQjFFTlJfVVNBUlQyRU5fUG9zKSAvKiE8IDB4MDAwMjAwMDAgKi8NCiNkZWZpbmUgUkNDX0FQQjFFTlJfVVNBUlQyRU4gICAgICAgICAgICAgICAgUkNDX0FQQjFFTlJfVVNBUlQyRU5fTXNrICAgICAgICAgICAvKiE8IFVTQVJUIDIgY2xvY2sgZW5hYmxlICovDQojZGVmaW5lIFJDQ19BUEIxRU5SX1VTQVJUM0VOX1BvcyAgICAgICAgICAgICgxOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19BUEIxRU5SX1VTQVJUM0VOX01zayAgICAgICAgICAgICgweDFVIDw8IFJDQ19BUEIxRU5SX1VTQVJUM0VOX1BvcykgLyohPCAweDAwMDQwMDAwICovDQojZGVmaW5lIFJDQ19BUEIxRU5SX1VTQVJUM0VOICAgICAgICAgICAgICAgIFJDQ19BUEIxRU5SX1VTQVJUM0VOX01zayAgICAgICAgICAgLyohPCBVU0FSVCAzIGNsb2NrIGVuYWJsZSAqLw0KI2RlZmluZSBSQ0NfQVBCMUVOUl9VQVJUNEVOX1BvcyAgICAgICAgICAgICAoMTlVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQVBCMUVOUl9VQVJUNEVOX01zayAgICAgICAgICAgICAoMHgxVSA8PCBSQ0NfQVBCMUVOUl9VQVJUNEVOX1BvcykgIC8qITwgMHgwMDA4MDAwMCAqLw0KI2RlZmluZSBSQ0NfQVBCMUVOUl9VQVJUNEVOICAgICAgICAgICAgICAgICBSQ0NfQVBCMUVOUl9VQVJUNEVOX01zayAgICAgICAgICAgIC8qITwgVUFSVCA0IGNsb2NrIGVuYWJsZSAqLw0KI2RlZmluZSBSQ0NfQVBCMUVOUl9VQVJUNUVOX1BvcyAgICAgICAgICAgICAoMjBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQVBCMUVOUl9VQVJUNUVOX01zayAgICAgICAgICAgICAoMHgxVSA8PCBSQ0NfQVBCMUVOUl9VQVJUNUVOX1BvcykgIC8qITwgMHgwMDEwMDAwMCAqLw0KI2RlZmluZSBSQ0NfQVBCMUVOUl9VQVJUNUVOICAgICAgICAgICAgICAgICBSQ0NfQVBCMUVOUl9VQVJUNUVOX01zayAgICAgICAgICAgIC8qITwgVUFSVCA1IGNsb2NrIGVuYWJsZSAqLw0KI2RlZmluZSBSQ0NfQVBCMUVOUl9JMkMxRU5fUG9zICAgICAgICAgICAgICAoMjFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQVBCMUVOUl9JMkMxRU5fTXNrICAgICAgICAgICAgICAoMHgxVSA8PCBSQ0NfQVBCMUVOUl9JMkMxRU5fUG9zKSAgIC8qITwgMHgwMDIwMDAwMCAqLw0KI2RlZmluZSBSQ0NfQVBCMUVOUl9JMkMxRU4gICAgICAgICAgICAgICAgICBSQ0NfQVBCMUVOUl9JMkMxRU5fTXNrICAgICAgICAgICAgIC8qITwgSTJDIDEgY2xvY2sgZW5hYmxlICovDQojZGVmaW5lIFJDQ19BUEIxRU5SX0kyQzJFTl9Qb3MgICAgICAgICAgICAgICgyMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19BUEIxRU5SX0kyQzJFTl9Nc2sgICAgICAgICAgICAgICgweDFVIDw8IFJDQ19BUEIxRU5SX0kyQzJFTl9Qb3MpICAgLyohPCAweDAwNDAwMDAwICovDQojZGVmaW5lIFJDQ19BUEIxRU5SX0kyQzJFTiAgICAgICAgICAgICAgICAgIFJDQ19BUEIxRU5SX0kyQzJFTl9Nc2sgICAgICAgICAgICAgLyohPCBJMkMgMiBjbG9jayBlbmFibGUgKi8NCiNkZWZpbmUgUkNDX0FQQjFFTlJfVVNCRU5fUG9zICAgICAgICAgICAgICAgKDIzVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0FQQjFFTlJfVVNCRU5fTXNrICAgICAgICAgICAgICAgKDB4MVUgPDwgUkNDX0FQQjFFTlJfVVNCRU5fUG9zKSAgICAvKiE8IDB4MDA4MDAwMDAgKi8NCiNkZWZpbmUgUkNDX0FQQjFFTlJfVVNCRU4gICAgICAgICAgICAgICAgICAgUkNDX0FQQjFFTlJfVVNCRU5fTXNrICAgICAgICAgICAgICAvKiE8IFVTQiBjbG9jayBlbmFibGUgKi8NCiNkZWZpbmUgUkNDX0FQQjFFTlJfUFdSRU5fUG9zICAgICAgICAgICAgICAgKDI4VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0FQQjFFTlJfUFdSRU5fTXNrICAgICAgICAgICAgICAgKDB4MVUgPDwgUkNDX0FQQjFFTlJfUFdSRU5fUG9zKSAgICAvKiE8IDB4MTAwMDAwMDAgKi8NCiNkZWZpbmUgUkNDX0FQQjFFTlJfUFdSRU4gICAgICAgICAgICAgICAgICAgUkNDX0FQQjFFTlJfUFdSRU5fTXNrICAgICAgICAgICAgICAvKiE8IFBvd2VyIGludGVyZmFjZSBjbG9jayBlbmFibGUgKi8NCiNkZWZpbmUgUkNDX0FQQjFFTlJfREFDRU5fUG9zICAgICAgICAgICAgICAgKDI5VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0FQQjFFTlJfREFDRU5fTXNrICAgICAgICAgICAgICAgKDB4MVUgPDwgUkNDX0FQQjFFTlJfREFDRU5fUG9zKSAgICAvKiE8IDB4MjAwMDAwMDAgKi8NCiNkZWZpbmUgUkNDX0FQQjFFTlJfREFDRU4gICAgICAgICAgICAgICAgICAgUkNDX0FQQjFFTlJfREFDRU5fTXNrICAgICAgICAgICAgICAvKiE8IERBQyBpbnRlcmZhY2UgY2xvY2sgZW5hYmxlICovDQojZGVmaW5lIFJDQ19BUEIxRU5SX0NPTVBFTl9Qb3MgICAgICAgICAgICAgICgzMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19BUEIxRU5SX0NPTVBFTl9Nc2sgICAgICAgICAgICAgICgweDFVIDw8IFJDQ19BUEIxRU5SX0NPTVBFTl9Qb3MpICAgLyohPCAweDgwMDAwMDAwICovDQojZGVmaW5lIFJDQ19BUEIxRU5SX0NPTVBFTiAgICAgICAgICAgICAgICAgIFJDQ19BUEIxRU5SX0NPTVBFTl9Nc2sgICAgICAgICAgICAgLyohPCBDb21wYXJhdG9yIGludGVyZmFjZSBjbG9jayBlbmFibGUgKi8NCg0KLyoqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFJDQ19BSEJMUEVOUiByZWdpc3RlciAgKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgUkNDX0FIQkxQRU5SX0dQSU9BTFBFTl9Qb3MgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0FIQkxQRU5SX0dQSU9BTFBFTl9Nc2sgICAgICAgICAgKDB4MVUgPDwgUkNDX0FIQkxQRU5SX0dQSU9BTFBFTl9Qb3MpIC8qITwgMHgwMDAwMDAwMSAqLw0KI2RlZmluZSBSQ0NfQUhCTFBFTlJfR1BJT0FMUEVOICAgICAgICAgICAgICBSQ0NfQUhCTFBFTlJfR1BJT0FMUEVOX01zayAgICAgICAgIC8qITwgR1BJTyBwb3J0IEEgY2xvY2sgZW5hYmxlZCBpbiBzbGVlcCBtb2RlICovDQojZGVmaW5lIFJDQ19BSEJMUEVOUl9HUElPQkxQRU5fUG9zICAgICAgICAgICgxVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19BSEJMUEVOUl9HUElPQkxQRU5fTXNrICAgICAgICAgICgweDFVIDw8IFJDQ19BSEJMUEVOUl9HUElPQkxQRU5fUG9zKSAvKiE8IDB4MDAwMDAwMDIgKi8NCiNkZWZpbmUgUkNDX0FIQkxQRU5SX0dQSU9CTFBFTiAgICAgICAgICAgICAgUkNDX0FIQkxQRU5SX0dQSU9CTFBFTl9Nc2sgICAgICAgICAvKiE8IEdQSU8gcG9ydCBCIGNsb2NrIGVuYWJsZWQgaW4gc2xlZXAgbW9kZSAqLw0KI2RlZmluZSBSQ0NfQUhCTFBFTlJfR1BJT0NMUEVOX1BvcyAgICAgICAgICAoMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQUhCTFBFTlJfR1BJT0NMUEVOX01zayAgICAgICAgICAoMHgxVSA8PCBSQ0NfQUhCTFBFTlJfR1BJT0NMUEVOX1BvcykgLyohPCAweDAwMDAwMDA0ICovDQojZGVmaW5lIFJDQ19BSEJMUEVOUl9HUElPQ0xQRU4gICAgICAgICAgICAgIFJDQ19BSEJMUEVOUl9HUElPQ0xQRU5fTXNrICAgICAgICAgLyohPCBHUElPIHBvcnQgQyBjbG9jayBlbmFibGVkIGluIHNsZWVwIG1vZGUgKi8NCiNkZWZpbmUgUkNDX0FIQkxQRU5SX0dQSU9ETFBFTl9Qb3MgICAgICAgICAgKDNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0FIQkxQRU5SX0dQSU9ETFBFTl9Nc2sgICAgICAgICAgKDB4MVUgPDwgUkNDX0FIQkxQRU5SX0dQSU9ETFBFTl9Qb3MpIC8qITwgMHgwMDAwMDAwOCAqLw0KI2RlZmluZSBSQ0NfQUhCTFBFTlJfR1BJT0RMUEVOICAgICAgICAgICAgICBSQ0NfQUhCTFBFTlJfR1BJT0RMUEVOX01zayAgICAgICAgIC8qITwgR1BJTyBwb3J0IEQgY2xvY2sgZW5hYmxlZCBpbiBzbGVlcCBtb2RlICovDQojZGVmaW5lIFJDQ19BSEJMUEVOUl9HUElPRUxQRU5fUG9zICAgICAgICAgICg0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19BSEJMUEVOUl9HUElPRUxQRU5fTXNrICAgICAgICAgICgweDFVIDw8IFJDQ19BSEJMUEVOUl9HUElPRUxQRU5fUG9zKSAvKiE8IDB4MDAwMDAwMTAgKi8NCiNkZWZpbmUgUkNDX0FIQkxQRU5SX0dQSU9FTFBFTiAgICAgICAgICAgICAgUkNDX0FIQkxQRU5SX0dQSU9FTFBFTl9Nc2sgICAgICAgICAvKiE8IEdQSU8gcG9ydCBFIGNsb2NrIGVuYWJsZWQgaW4gc2xlZXAgbW9kZSAqLw0KI2RlZmluZSBSQ0NfQUhCTFBFTlJfR1BJT0hMUEVOX1BvcyAgICAgICAgICAoNVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQUhCTFBFTlJfR1BJT0hMUEVOX01zayAgICAgICAgICAoMHgxVSA8PCBSQ0NfQUhCTFBFTlJfR1BJT0hMUEVOX1BvcykgLyohPCAweDAwMDAwMDIwICovDQojZGVmaW5lIFJDQ19BSEJMUEVOUl9HUElPSExQRU4gICAgICAgICAgICAgIFJDQ19BSEJMUEVOUl9HUElPSExQRU5fTXNrICAgICAgICAgLyohPCBHUElPIHBvcnQgSCBjbG9jayBlbmFibGVkIGluIHNsZWVwIG1vZGUgKi8NCiNkZWZpbmUgUkNDX0FIQkxQRU5SX0dQSU9GTFBFTl9Qb3MgICAgICAgICAgKDZVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0FIQkxQRU5SX0dQSU9GTFBFTl9Nc2sgICAgICAgICAgKDB4MVUgPDwgUkNDX0FIQkxQRU5SX0dQSU9GTFBFTl9Qb3MpIC8qITwgMHgwMDAwMDA0MCAqLw0KI2RlZmluZSBSQ0NfQUhCTFBFTlJfR1BJT0ZMUEVOICAgICAgICAgICAgICBSQ0NfQUhCTFBFTlJfR1BJT0ZMUEVOX01zayAgICAgICAgIC8qITwgR1BJTyBwb3J0IEYgY2xvY2sgZW5hYmxlZCBpbiBzbGVlcCBtb2RlICovDQojZGVmaW5lIFJDQ19BSEJMUEVOUl9HUElPR0xQRU5fUG9zICAgICAgICAgICg3VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19BSEJMUEVOUl9HUElPR0xQRU5fTXNrICAgICAgICAgICgweDFVIDw8IFJDQ19BSEJMUEVOUl9HUElPR0xQRU5fUG9zKSAvKiE8IDB4MDAwMDAwODAgKi8NCiNkZWZpbmUgUkNDX0FIQkxQRU5SX0dQSU9HTFBFTiAgICAgICAgICAgICAgUkNDX0FIQkxQRU5SX0dQSU9HTFBFTl9Nc2sgICAgICAgICAvKiE8IEdQSU8gcG9ydCBHIGNsb2NrIGVuYWJsZWQgaW4gc2xlZXAgbW9kZSAqLw0KI2RlZmluZSBSQ0NfQUhCTFBFTlJfQ1JDTFBFTl9Qb3MgICAgICAgICAgICAoMTJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQUhCTFBFTlJfQ1JDTFBFTl9Nc2sgICAgICAgICAgICAoMHgxVSA8PCBSQ0NfQUhCTFBFTlJfQ1JDTFBFTl9Qb3MpIC8qITwgMHgwMDAwMTAwMCAqLw0KI2RlZmluZSBSQ0NfQUhCTFBFTlJfQ1JDTFBFTiAgICAgICAgICAgICAgICBSQ0NfQUhCTFBFTlJfQ1JDTFBFTl9Nc2sgICAgICAgICAgIC8qITwgQ1JDIGNsb2NrIGVuYWJsZWQgaW4gc2xlZXAgbW9kZSAqLw0KI2RlZmluZSBSQ0NfQUhCTFBFTlJfRkxJVEZMUEVOX1BvcyAgICAgICAgICAoMTVVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQUhCTFBFTlJfRkxJVEZMUEVOX01zayAgICAgICAgICAoMHgxVSA8PCBSQ0NfQUhCTFBFTlJfRkxJVEZMUEVOX1BvcykgLyohPCAweDAwMDA4MDAwICovDQojZGVmaW5lIFJDQ19BSEJMUEVOUl9GTElURkxQRU4gICAgICAgICAgICAgIFJDQ19BSEJMUEVOUl9GTElURkxQRU5fTXNrICAgICAgICAgLyohPCBGbGFzaCBJbnRlcmZhY2UgY2xvY2sgZW5hYmxlZCBpbiBzbGVlcCBtb2RlDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChoYXMgZWZmZWN0IG9ubHkgd2hlbiB0aGUgRmxhc2ggbWVtb3J5IGlzDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbiBwb3dlciBkb3duIG1vZGUpICovDQojZGVmaW5lIFJDQ19BSEJMUEVOUl9TUkFNTFBFTl9Qb3MgICAgICAgICAgICgxNlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19BSEJMUEVOUl9TUkFNTFBFTl9Nc2sgICAgICAgICAgICgweDFVIDw8IFJDQ19BSEJMUEVOUl9TUkFNTFBFTl9Qb3MpIC8qITwgMHgwMDAxMDAwMCAqLw0KI2RlZmluZSBSQ0NfQUhCTFBFTlJfU1JBTUxQRU4gICAgICAgICAgICAgICBSQ0NfQUhCTFBFTlJfU1JBTUxQRU5fTXNrICAgICAgICAgIC8qITwgU1JBTSBjbG9jayBlbmFibGVkIGluIHNsZWVwIG1vZGUgKi8NCiNkZWZpbmUgUkNDX0FIQkxQRU5SX0RNQTFMUEVOX1BvcyAgICAgICAgICAgKDI0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0FIQkxQRU5SX0RNQTFMUEVOX01zayAgICAgICAgICAgKDB4MVUgPDwgUkNDX0FIQkxQRU5SX0RNQTFMUEVOX1BvcykgLyohPCAweDAxMDAwMDAwICovDQojZGVmaW5lIFJDQ19BSEJMUEVOUl9ETUExTFBFTiAgICAgICAgICAgICAgIFJDQ19BSEJMUEVOUl9ETUExTFBFTl9Nc2sgICAgICAgICAgLyohPCBETUExIGNsb2NrIGVuYWJsZWQgaW4gc2xlZXAgbW9kZSAqLw0KI2RlZmluZSBSQ0NfQUhCTFBFTlJfRE1BMkxQRU5fUG9zICAgICAgICAgICAoMjVVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQUhCTFBFTlJfRE1BMkxQRU5fTXNrICAgICAgICAgICAoMHgxVSA8PCBSQ0NfQUhCTFBFTlJfRE1BMkxQRU5fUG9zKSAvKiE8IDB4MDIwMDAwMDAgKi8NCiNkZWZpbmUgUkNDX0FIQkxQRU5SX0RNQTJMUEVOICAgICAgICAgICAgICAgUkNDX0FIQkxQRU5SX0RNQTJMUEVOX01zayAgICAgICAgICAvKiE8IERNQTIgY2xvY2sgZW5hYmxlZCBpbiBzbGVlcCBtb2RlICovDQoNCi8qKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBSQ0NfQVBCMkxQRU5SIHJlZ2lzdGVyICAqKioqKioqKioqKioqKiovDQojZGVmaW5lIFJDQ19BUEIyTFBFTlJfU1lTQ0ZHTFBFTl9Qb3MgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19BUEIyTFBFTlJfU1lTQ0ZHTFBFTl9Nc2sgICAgICAgICgweDFVIDw8IFJDQ19BUEIyTFBFTlJfU1lTQ0ZHTFBFTl9Qb3MpIC8qITwgMHgwMDAwMDAwMSAqLw0KI2RlZmluZSBSQ0NfQVBCMkxQRU5SX1NZU0NGR0xQRU4gICAgICAgICAgICBSQ0NfQVBCMkxQRU5SX1NZU0NGR0xQRU5fTXNrICAgICAgIC8qITwgU3lzdGVtIENvbmZpZ3VyYXRpb24gU1lTQ0ZHIGNsb2NrIGVuYWJsZWQgaW4gc2xlZXAgbW9kZSAqLw0KI2RlZmluZSBSQ0NfQVBCMkxQRU5SX1RJTTlMUEVOX1BvcyAgICAgICAgICAoMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQVBCMkxQRU5SX1RJTTlMUEVOX01zayAgICAgICAgICAoMHgxVSA8PCBSQ0NfQVBCMkxQRU5SX1RJTTlMUEVOX1BvcykgLyohPCAweDAwMDAwMDA0ICovDQojZGVmaW5lIFJDQ19BUEIyTFBFTlJfVElNOUxQRU4gICAgICAgICAgICAgIFJDQ19BUEIyTFBFTlJfVElNOUxQRU5fTXNrICAgICAgICAgLyohPCBUSU05IGludGVyZmFjZSBjbG9jayBlbmFibGVkIGluIHNsZWVwIG1vZGUgKi8NCiNkZWZpbmUgUkNDX0FQQjJMUEVOUl9USU0xMExQRU5fUG9zICAgICAgICAgKDNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0FQQjJMUEVOUl9USU0xMExQRU5fTXNrICAgICAgICAgKDB4MVUgPDwgUkNDX0FQQjJMUEVOUl9USU0xMExQRU5fUG9zKSAvKiE8IDB4MDAwMDAwMDggKi8NCiNkZWZpbmUgUkNDX0FQQjJMUEVOUl9USU0xMExQRU4gICAgICAgICAgICAgUkNDX0FQQjJMUEVOUl9USU0xMExQRU5fTXNrICAgICAgICAvKiE8IFRJTTEwIGludGVyZmFjZSBjbG9jayBlbmFibGVkIGluIHNsZWVwIG1vZGUgKi8NCiNkZWZpbmUgUkNDX0FQQjJMUEVOUl9USU0xMUxQRU5fUG9zICAgICAgICAgKDRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0FQQjJMUEVOUl9USU0xMUxQRU5fTXNrICAgICAgICAgKDB4MVUgPDwgUkNDX0FQQjJMUEVOUl9USU0xMUxQRU5fUG9zKSAvKiE8IDB4MDAwMDAwMTAgKi8NCiNkZWZpbmUgUkNDX0FQQjJMUEVOUl9USU0xMUxQRU4gICAgICAgICAgICAgUkNDX0FQQjJMUEVOUl9USU0xMUxQRU5fTXNrICAgICAgICAvKiE8IFRJTTExIFRpbWVyIGNsb2NrIGVuYWJsZWQgaW4gc2xlZXAgbW9kZSAqLw0KI2RlZmluZSBSQ0NfQVBCMkxQRU5SX0FEQzFMUEVOX1BvcyAgICAgICAgICAoOVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQVBCMkxQRU5SX0FEQzFMUEVOX01zayAgICAgICAgICAoMHgxVSA8PCBSQ0NfQVBCMkxQRU5SX0FEQzFMUEVOX1BvcykgLyohPCAweDAwMDAwMjAwICovDQojZGVmaW5lIFJDQ19BUEIyTFBFTlJfQURDMUxQRU4gICAgICAgICAgICAgIFJDQ19BUEIyTFBFTlJfQURDMUxQRU5fTXNrICAgICAgICAgLyohPCBBREMxIGNsb2NrIGVuYWJsZWQgaW4gc2xlZXAgbW9kZSAqLw0KI2RlZmluZSBSQ0NfQVBCMkxQRU5SX1NQSTFMUEVOX1BvcyAgICAgICAgICAoMTJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQVBCMkxQRU5SX1NQSTFMUEVOX01zayAgICAgICAgICAoMHgxVSA8PCBSQ0NfQVBCMkxQRU5SX1NQSTFMUEVOX1BvcykgLyohPCAweDAwMDAxMDAwICovDQojZGVmaW5lIFJDQ19BUEIyTFBFTlJfU1BJMUxQRU4gICAgICAgICAgICAgIFJDQ19BUEIyTFBFTlJfU1BJMUxQRU5fTXNrICAgICAgICAgLyohPCBTUEkxIGNsb2NrIGVuYWJsZWQgaW4gc2xlZXAgbW9kZSAqLw0KI2RlZmluZSBSQ0NfQVBCMkxQRU5SX1VTQVJUMUxQRU5fUG9zICAgICAgICAoMTRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQVBCMkxQRU5SX1VTQVJUMUxQRU5fTXNrICAgICAgICAoMHgxVSA8PCBSQ0NfQVBCMkxQRU5SX1VTQVJUMUxQRU5fUG9zKSAvKiE8IDB4MDAwMDQwMDAgKi8NCiNkZWZpbmUgUkNDX0FQQjJMUEVOUl9VU0FSVDFMUEVOICAgICAgICAgICAgUkNDX0FQQjJMUEVOUl9VU0FSVDFMUEVOX01zayAgICAgICAvKiE8IFVTQVJUMSBjbG9jayBlbmFibGVkIGluIHNsZWVwIG1vZGUgKi8NCg0KLyoqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgUkNDX0FQQjFMUEVOUiByZWdpc3RlciAgKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgUkNDX0FQQjFMUEVOUl9USU0yTFBFTl9Qb3MgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0FQQjFMUEVOUl9USU0yTFBFTl9Nc2sgICAgICAgICAgKDB4MVUgPDwgUkNDX0FQQjFMUEVOUl9USU0yTFBFTl9Qb3MpIC8qITwgMHgwMDAwMDAwMSAqLw0KI2RlZmluZSBSQ0NfQVBCMUxQRU5SX1RJTTJMUEVOICAgICAgICAgICAgICBSQ0NfQVBCMUxQRU5SX1RJTTJMUEVOX01zayAgICAgICAgIC8qITwgVGltZXIgMiBjbG9jayBlbmFibGVkIGluIHNsZWVwIG1vZGUgKi8NCiNkZWZpbmUgUkNDX0FQQjFMUEVOUl9USU0zTFBFTl9Qb3MgICAgICAgICAgKDFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0FQQjFMUEVOUl9USU0zTFBFTl9Nc2sgICAgICAgICAgKDB4MVUgPDwgUkNDX0FQQjFMUEVOUl9USU0zTFBFTl9Qb3MpIC8qITwgMHgwMDAwMDAwMiAqLw0KI2RlZmluZSBSQ0NfQVBCMUxQRU5SX1RJTTNMUEVOICAgICAgICAgICAgICBSQ0NfQVBCMUxQRU5SX1RJTTNMUEVOX01zayAgICAgICAgIC8qITwgVGltZXIgMyBjbG9jayBlbmFibGVkIGluIHNsZWVwIG1vZGUgKi8NCiNkZWZpbmUgUkNDX0FQQjFMUEVOUl9USU00TFBFTl9Qb3MgICAgICAgICAgKDJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0FQQjFMUEVOUl9USU00TFBFTl9Nc2sgICAgICAgICAgKDB4MVUgPDwgUkNDX0FQQjFMUEVOUl9USU00TFBFTl9Qb3MpIC8qITwgMHgwMDAwMDAwNCAqLw0KI2RlZmluZSBSQ0NfQVBCMUxQRU5SX1RJTTRMUEVOICAgICAgICAgICAgICBSQ0NfQVBCMUxQRU5SX1RJTTRMUEVOX01zayAgICAgICAgIC8qITwgVGltZXIgNCBjbG9jayBlbmFibGVkIGluIHNsZWVwIG1vZGUgKi8NCiNkZWZpbmUgUkNDX0FQQjFMUEVOUl9USU01TFBFTl9Qb3MgICAgICAgICAgKDNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0FQQjFMUEVOUl9USU01TFBFTl9Nc2sgICAgICAgICAgKDB4MVUgPDwgUkNDX0FQQjFMUEVOUl9USU01TFBFTl9Qb3MpIC8qITwgMHgwMDAwMDAwOCAqLw0KI2RlZmluZSBSQ0NfQVBCMUxQRU5SX1RJTTVMUEVOICAgICAgICAgICAgICBSQ0NfQVBCMUxQRU5SX1RJTTVMUEVOX01zayAgICAgICAgIC8qITwgVGltZXIgNSBjbG9jayBlbmFibGVkIGluIHNsZWVwIG1vZGUgKi8NCiNkZWZpbmUgUkNDX0FQQjFMUEVOUl9USU02TFBFTl9Qb3MgICAgICAgICAgKDRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0FQQjFMUEVOUl9USU02TFBFTl9Nc2sgICAgICAgICAgKDB4MVUgPDwgUkNDX0FQQjFMUEVOUl9USU02TFBFTl9Qb3MpIC8qITwgMHgwMDAwMDAxMCAqLw0KI2RlZmluZSBSQ0NfQVBCMUxQRU5SX1RJTTZMUEVOICAgICAgICAgICAgICBSQ0NfQVBCMUxQRU5SX1RJTTZMUEVOX01zayAgICAgICAgIC8qITwgVGltZXIgNiBjbG9jayBlbmFibGVkIGluIHNsZWVwIG1vZGUgKi8NCiNkZWZpbmUgUkNDX0FQQjFMUEVOUl9USU03TFBFTl9Qb3MgICAgICAgICAgKDVVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0FQQjFMUEVOUl9USU03TFBFTl9Nc2sgICAgICAgICAgKDB4MVUgPDwgUkNDX0FQQjFMUEVOUl9USU03TFBFTl9Qb3MpIC8qITwgMHgwMDAwMDAyMCAqLw0KI2RlZmluZSBSQ0NfQVBCMUxQRU5SX1RJTTdMUEVOICAgICAgICAgICAgICBSQ0NfQVBCMUxQRU5SX1RJTTdMUEVOX01zayAgICAgICAgIC8qITwgVGltZXIgNyBjbG9jayBlbmFibGVkIGluIHNsZWVwIG1vZGUgKi8NCiNkZWZpbmUgUkNDX0FQQjFMUEVOUl9XV0RHTFBFTl9Qb3MgICAgICAgICAgKDExVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0FQQjFMUEVOUl9XV0RHTFBFTl9Nc2sgICAgICAgICAgKDB4MVUgPDwgUkNDX0FQQjFMUEVOUl9XV0RHTFBFTl9Qb3MpIC8qITwgMHgwMDAwMDgwMCAqLw0KI2RlZmluZSBSQ0NfQVBCMUxQRU5SX1dXREdMUEVOICAgICAgICAgICAgICBSQ0NfQVBCMUxQRU5SX1dXREdMUEVOX01zayAgICAgICAgIC8qITwgV2luZG93IFdhdGNoZG9nIGNsb2NrIGVuYWJsZWQgaW4gc2xlZXAgbW9kZSAqLw0KI2RlZmluZSBSQ0NfQVBCMUxQRU5SX1NQSTJMUEVOX1BvcyAgICAgICAgICAoMTRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQVBCMUxQRU5SX1NQSTJMUEVOX01zayAgICAgICAgICAoMHgxVSA8PCBSQ0NfQVBCMUxQRU5SX1NQSTJMUEVOX1BvcykgLyohPCAweDAwMDA0MDAwICovDQojZGVmaW5lIFJDQ19BUEIxTFBFTlJfU1BJMkxQRU4gICAgICAgICAgICAgIFJDQ19BUEIxTFBFTlJfU1BJMkxQRU5fTXNrICAgICAgICAgLyohPCBTUEkgMiBjbG9jayBlbmFibGVkIGluIHNsZWVwIG1vZGUgKi8NCiNkZWZpbmUgUkNDX0FQQjFMUEVOUl9TUEkzTFBFTl9Qb3MgICAgICAgICAgKDE1VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0FQQjFMUEVOUl9TUEkzTFBFTl9Nc2sgICAgICAgICAgKDB4MVUgPDwgUkNDX0FQQjFMUEVOUl9TUEkzTFBFTl9Qb3MpIC8qITwgMHgwMDAwODAwMCAqLw0KI2RlZmluZSBSQ0NfQVBCMUxQRU5SX1NQSTNMUEVOICAgICAgICAgICAgICBSQ0NfQVBCMUxQRU5SX1NQSTNMUEVOX01zayAgICAgICAgIC8qITwgU1BJIDMgY2xvY2sgZW5hYmxlZCBpbiBzbGVlcCBtb2RlICovDQojZGVmaW5lIFJDQ19BUEIxTFBFTlJfVVNBUlQyTFBFTl9Qb3MgICAgICAgICgxN1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19BUEIxTFBFTlJfVVNBUlQyTFBFTl9Nc2sgICAgICAgICgweDFVIDw8IFJDQ19BUEIxTFBFTlJfVVNBUlQyTFBFTl9Qb3MpIC8qITwgMHgwMDAyMDAwMCAqLw0KI2RlZmluZSBSQ0NfQVBCMUxQRU5SX1VTQVJUMkxQRU4gICAgICAgICAgICBSQ0NfQVBCMUxQRU5SX1VTQVJUMkxQRU5fTXNrICAgICAgIC8qITwgVVNBUlQgMiBjbG9jayBlbmFibGVkIGluIHNsZWVwIG1vZGUgKi8NCiNkZWZpbmUgUkNDX0FQQjFMUEVOUl9VU0FSVDNMUEVOX1BvcyAgICAgICAgKDE4VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0FQQjFMUEVOUl9VU0FSVDNMUEVOX01zayAgICAgICAgKDB4MVUgPDwgUkNDX0FQQjFMUEVOUl9VU0FSVDNMUEVOX1BvcykgLyohPCAweDAwMDQwMDAwICovDQojZGVmaW5lIFJDQ19BUEIxTFBFTlJfVVNBUlQzTFBFTiAgICAgICAgICAgIFJDQ19BUEIxTFBFTlJfVVNBUlQzTFBFTl9Nc2sgICAgICAgLyohPCBVU0FSVCAzIGNsb2NrIGVuYWJsZWQgaW4gc2xlZXAgbW9kZSAqLw0KI2RlZmluZSBSQ0NfQVBCMUxQRU5SX1VBUlQ0TFBFTl9Qb3MgICAgICAgICAoMTlVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQVBCMUxQRU5SX1VBUlQ0TFBFTl9Nc2sgICAgICAgICAoMHgxVSA8PCBSQ0NfQVBCMUxQRU5SX1VBUlQ0TFBFTl9Qb3MpIC8qITwgMHgwMDA4MDAwMCAqLw0KI2RlZmluZSBSQ0NfQVBCMUxQRU5SX1VBUlQ0TFBFTiAgICAgICAgICAgICBSQ0NfQVBCMUxQRU5SX1VBUlQ0TFBFTl9Nc2sgICAgICAgIC8qITwgVUFSVCA0IGNsb2NrIGVuYWJsZWQgaW4gc2xlZXAgbW9kZSAqLw0KI2RlZmluZSBSQ0NfQVBCMUxQRU5SX1VBUlQ1TFBFTl9Qb3MgICAgICAgICAoMjBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQVBCMUxQRU5SX1VBUlQ1TFBFTl9Nc2sgICAgICAgICAoMHgxVSA8PCBSQ0NfQVBCMUxQRU5SX1VBUlQ1TFBFTl9Qb3MpIC8qITwgMHgwMDEwMDAwMCAqLw0KI2RlZmluZSBSQ0NfQVBCMUxQRU5SX1VBUlQ1TFBFTiAgICAgICAgICAgICBSQ0NfQVBCMUxQRU5SX1VBUlQ1TFBFTl9Nc2sgICAgICAgIC8qITwgVUFSVCA1IGNsb2NrIGVuYWJsZWQgaW4gc2xlZXAgbW9kZSAqLw0KI2RlZmluZSBSQ0NfQVBCMUxQRU5SX0kyQzFMUEVOX1BvcyAgICAgICAgICAoMjFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQVBCMUxQRU5SX0kyQzFMUEVOX01zayAgICAgICAgICAoMHgxVSA8PCBSQ0NfQVBCMUxQRU5SX0kyQzFMUEVOX1BvcykgLyohPCAweDAwMjAwMDAwICovDQojZGVmaW5lIFJDQ19BUEIxTFBFTlJfSTJDMUxQRU4gICAgICAgICAgICAgIFJDQ19BUEIxTFBFTlJfSTJDMUxQRU5fTXNrICAgICAgICAgLyohPCBJMkMgMSBjbG9jayBlbmFibGVkIGluIHNsZWVwIG1vZGUgKi8NCiNkZWZpbmUgUkNDX0FQQjFMUEVOUl9JMkMyTFBFTl9Qb3MgICAgICAgICAgKDIyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0FQQjFMUEVOUl9JMkMyTFBFTl9Nc2sgICAgICAgICAgKDB4MVUgPDwgUkNDX0FQQjFMUEVOUl9JMkMyTFBFTl9Qb3MpIC8qITwgMHgwMDQwMDAwMCAqLw0KI2RlZmluZSBSQ0NfQVBCMUxQRU5SX0kyQzJMUEVOICAgICAgICAgICAgICBSQ0NfQVBCMUxQRU5SX0kyQzJMUEVOX01zayAgICAgICAgIC8qITwgSTJDIDIgY2xvY2sgZW5hYmxlZCBpbiBzbGVlcCBtb2RlICovDQojZGVmaW5lIFJDQ19BUEIxTFBFTlJfVVNCTFBFTl9Qb3MgICAgICAgICAgICgyM1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19BUEIxTFBFTlJfVVNCTFBFTl9Nc2sgICAgICAgICAgICgweDFVIDw8IFJDQ19BUEIxTFBFTlJfVVNCTFBFTl9Qb3MpIC8qITwgMHgwMDgwMDAwMCAqLw0KI2RlZmluZSBSQ0NfQVBCMUxQRU5SX1VTQkxQRU4gICAgICAgICAgICAgICBSQ0NfQVBCMUxQRU5SX1VTQkxQRU5fTXNrICAgICAgICAgIC8qITwgVVNCIGNsb2NrIGVuYWJsZWQgaW4gc2xlZXAgbW9kZSAqLw0KI2RlZmluZSBSQ0NfQVBCMUxQRU5SX1BXUkxQRU5fUG9zICAgICAgICAgICAoMjhVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQVBCMUxQRU5SX1BXUkxQRU5fTXNrICAgICAgICAgICAoMHgxVSA8PCBSQ0NfQVBCMUxQRU5SX1BXUkxQRU5fUG9zKSAvKiE8IDB4MTAwMDAwMDAgKi8NCiNkZWZpbmUgUkNDX0FQQjFMUEVOUl9QV1JMUEVOICAgICAgICAgICAgICAgUkNDX0FQQjFMUEVOUl9QV1JMUEVOX01zayAgICAgICAgICAvKiE8IFBvd2VyIGludGVyZmFjZSBjbG9jayBlbmFibGVkIGluIHNsZWVwIG1vZGUgKi8NCiNkZWZpbmUgUkNDX0FQQjFMUEVOUl9EQUNMUEVOX1BvcyAgICAgICAgICAgKDI5VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0FQQjFMUEVOUl9EQUNMUEVOX01zayAgICAgICAgICAgKDB4MVUgPDwgUkNDX0FQQjFMUEVOUl9EQUNMUEVOX1BvcykgLyohPCAweDIwMDAwMDAwICovDQojZGVmaW5lIFJDQ19BUEIxTFBFTlJfREFDTFBFTiAgICAgICAgICAgICAgIFJDQ19BUEIxTFBFTlJfREFDTFBFTl9Nc2sgICAgICAgICAgLyohPCBEQUMgaW50ZXJmYWNlIGNsb2NrIGVuYWJsZWQgaW4gc2xlZXAgbW9kZSAqLw0KI2RlZmluZSBSQ0NfQVBCMUxQRU5SX0NPTVBMUEVOX1BvcyAgICAgICAgICAoMzFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQVBCMUxQRU5SX0NPTVBMUEVOX01zayAgICAgICAgICAoMHgxVSA8PCBSQ0NfQVBCMUxQRU5SX0NPTVBMUEVOX1BvcykgLyohPCAweDgwMDAwMDAwICovDQojZGVmaW5lIFJDQ19BUEIxTFBFTlJfQ09NUExQRU4gICAgICAgICAgICAgIFJDQ19BUEIxTFBFTlJfQ09NUExQRU5fTXNrICAgICAgICAgLyohPCBDb21wYXJhdG9yIGludGVyZmFjZSBjbG9jayBlbmFibGVkIGluIHNsZWVwIG1vZGUqLw0KDQovKioqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFJDQ19DU1IgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBSQ0NfQ1NSX0xTSU9OX1BvcyAgICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQ1NSX0xTSU9OX01zayAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBSQ0NfQ1NSX0xTSU9OX1BvcykgICAgICAgIC8qITwgMHgwMDAwMDAwMSAqLw0KI2RlZmluZSBSQ0NfQ1NSX0xTSU9OICAgICAgICAgICAgICAgICAgICAgICBSQ0NfQ1NSX0xTSU9OX01zayAgICAgICAgICAgICAgICAgIC8qITwgSW50ZXJuYWwgTG93IFNwZWVkIG9zY2lsbGF0b3IgZW5hYmxlICovDQojZGVmaW5lIFJDQ19DU1JfTFNJUkRZX1BvcyAgICAgICAgICAgICAgICAgICgxVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19DU1JfTFNJUkRZX01zayAgICAgICAgICAgICAgICAgICgweDFVIDw8IFJDQ19DU1JfTFNJUkRZX1BvcykgICAgICAgLyohPCAweDAwMDAwMDAyICovDQojZGVmaW5lIFJDQ19DU1JfTFNJUkRZICAgICAgICAgICAgICAgICAgICAgIFJDQ19DU1JfTFNJUkRZX01zayAgICAgICAgICAgICAgICAgLyohPCBJbnRlcm5hbCBMb3cgU3BlZWQgb3NjaWxsYXRvciBSZWFkeSAqLw0KDQojZGVmaW5lIFJDQ19DU1JfTFNFT05fUG9zICAgICAgICAgICAgICAgICAgICg4VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19DU1JfTFNFT05fTXNrICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFJDQ19DU1JfTFNFT05fUG9zKSAgICAgICAgLyohPCAweDAwMDAwMTAwICovDQojZGVmaW5lIFJDQ19DU1JfTFNFT04gICAgICAgICAgICAgICAgICAgICAgIFJDQ19DU1JfTFNFT05fTXNrICAgICAgICAgICAgICAgICAgLyohPCBFeHRlcm5hbCBMb3cgU3BlZWQgb3NjaWxsYXRvciBlbmFibGUgKi8NCiNkZWZpbmUgUkNDX0NTUl9MU0VSRFlfUG9zICAgICAgICAgICAgICAgICAgKDlVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0NTUl9MU0VSRFlfTXNrICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgUkNDX0NTUl9MU0VSRFlfUG9zKSAgICAgICAvKiE8IDB4MDAwMDAyMDAgKi8NCiNkZWZpbmUgUkNDX0NTUl9MU0VSRFkgICAgICAgICAgICAgICAgICAgICAgUkNDX0NTUl9MU0VSRFlfTXNrICAgICAgICAgICAgICAgICAvKiE8IEV4dGVybmFsIExvdyBTcGVlZCBvc2NpbGxhdG9yIFJlYWR5ICovDQojZGVmaW5lIFJDQ19DU1JfTFNFQllQX1BvcyAgICAgICAgICAgICAgICAgICgxMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19DU1JfTFNFQllQX01zayAgICAgICAgICAgICAgICAgICgweDFVIDw8IFJDQ19DU1JfTFNFQllQX1BvcykgICAgICAgLyohPCAweDAwMDAwNDAwICovDQojZGVmaW5lIFJDQ19DU1JfTFNFQllQICAgICAgICAgICAgICAgICAgICAgIFJDQ19DU1JfTFNFQllQX01zayAgICAgICAgICAgICAgICAgLyohPCBFeHRlcm5hbCBMb3cgU3BlZWQgb3NjaWxsYXRvciBCeXBhc3MgKi8NCg0KI2RlZmluZSBSQ0NfQ1NSX0xTRUNTU09OX1BvcyAgICAgICAgICAgICAgICAoMTFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQ1NSX0xTRUNTU09OX01zayAgICAgICAgICAgICAgICAoMHgxVSA8PCBSQ0NfQ1NSX0xTRUNTU09OX1BvcykgICAgIC8qITwgMHgwMDAwMDgwMCAqLw0KI2RlZmluZSBSQ0NfQ1NSX0xTRUNTU09OICAgICAgICAgICAgICAgICAgICBSQ0NfQ1NSX0xTRUNTU09OX01zayAgICAgICAgICAgICAgIC8qITwgRXh0ZXJuYWwgTG93IFNwZWVkIG9zY2lsbGF0b3IgQ1NTIEVuYWJsZSAqLw0KI2RlZmluZSBSQ0NfQ1NSX0xTRUNTU0RfUG9zICAgICAgICAgICAgICAgICAoMTJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQ1NSX0xTRUNTU0RfTXNrICAgICAgICAgICAgICAgICAoMHgxVSA8PCBSQ0NfQ1NSX0xTRUNTU0RfUG9zKSAgICAgIC8qITwgMHgwMDAwMTAwMCAqLw0KI2RlZmluZSBSQ0NfQ1NSX0xTRUNTU0QgICAgICAgICAgICAgICAgICAgICBSQ0NfQ1NSX0xTRUNTU0RfTXNrICAgICAgICAgICAgICAgIC8qITwgRXh0ZXJuYWwgTG93IFNwZWVkIG9zY2lsbGF0b3IgQ1NTIERldGVjdGVkICovDQoNCiNkZWZpbmUgUkNDX0NTUl9SVENTRUxfUG9zICAgICAgICAgICAgICAgICAgKDE2VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0NTUl9SVENTRUxfTXNrICAgICAgICAgICAgICAgICAgKDB4M1UgPDwgUkNDX0NTUl9SVENTRUxfUG9zKSAgICAgICAvKiE8IDB4MDAwMzAwMDAgKi8NCiNkZWZpbmUgUkNDX0NTUl9SVENTRUwgICAgICAgICAgICAgICAgICAgICAgUkNDX0NTUl9SVENTRUxfTXNrICAgICAgICAgICAgICAgICAvKiE8IFJUQ1NFTFsxOjBdIGJpdHMgKFJUQyBjbG9jayBzb3VyY2Ugc2VsZWN0aW9uKSAqLw0KI2RlZmluZSBSQ0NfQ1NSX1JUQ1NFTF8wICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBSQ0NfQ1NSX1JUQ1NFTF9Qb3MpICAgICAgIC8qITwgMHgwMDAxMDAwMCAqLw0KI2RlZmluZSBSQ0NfQ1NSX1JUQ1NFTF8xICAgICAgICAgICAgICAgICAgICAoMHgyVSA8PCBSQ0NfQ1NSX1JUQ1NFTF9Qb3MpICAgICAgIC8qITwgMHgwMDAyMDAwMCAqLw0KDQovKiE8IFJUQyBjb25naWd1cmF0aW9uICovDQojZGVmaW5lIFJDQ19DU1JfUlRDU0VMX05PQ0xPQ0sgICAgICAgICAgICAgICgweDAwMDAwMDAwVSkgICAgICAgICAgICAgICAgICAgICAgLyohPCBObyBjbG9jayAqLw0KI2RlZmluZSBSQ0NfQ1NSX1JUQ1NFTF9MU0VfUG9zICAgICAgICAgICAgICAoMTZVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQ1NSX1JUQ1NFTF9MU0VfTXNrICAgICAgICAgICAgICAoMHgxVSA8PCBSQ0NfQ1NSX1JUQ1NFTF9MU0VfUG9zKSAgIC8qITwgMHgwMDAxMDAwMCAqLw0KI2RlZmluZSBSQ0NfQ1NSX1JUQ1NFTF9MU0UgICAgICAgICAgICAgICAgICBSQ0NfQ1NSX1JUQ1NFTF9MU0VfTXNrICAgICAgICAgICAgIC8qITwgTFNFIG9zY2lsbGF0b3IgY2xvY2sgdXNlZCBhcyBSVEMgY2xvY2sgKi8NCiNkZWZpbmUgUkNDX0NTUl9SVENTRUxfTFNJX1BvcyAgICAgICAgICAgICAgKDE3VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0NTUl9SVENTRUxfTFNJX01zayAgICAgICAgICAgICAgKDB4MVUgPDwgUkNDX0NTUl9SVENTRUxfTFNJX1BvcykgICAvKiE8IDB4MDAwMjAwMDAgKi8NCiNkZWZpbmUgUkNDX0NTUl9SVENTRUxfTFNJICAgICAgICAgICAgICAgICAgUkNDX0NTUl9SVENTRUxfTFNJX01zayAgICAgICAgICAgICAvKiE8IExTSSBvc2NpbGxhdG9yIGNsb2NrIHVzZWQgYXMgUlRDIGNsb2NrICovDQojZGVmaW5lIFJDQ19DU1JfUlRDU0VMX0hTRV9Qb3MgICAgICAgICAgICAgICgxNlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19DU1JfUlRDU0VMX0hTRV9Nc2sgICAgICAgICAgICAgICgweDNVIDw8IFJDQ19DU1JfUlRDU0VMX0hTRV9Qb3MpICAgLyohPCAweDAwMDMwMDAwICovDQojZGVmaW5lIFJDQ19DU1JfUlRDU0VMX0hTRSAgICAgICAgICAgICAgICAgIFJDQ19DU1JfUlRDU0VMX0hTRV9Nc2sgICAgICAgICAgICAgLyohPCBIU0Ugb3NjaWxsYXRvciBjbG9jayBkaXZpZGVkIGJ5IDIsIDQsIDggb3IgMTYgYnkgUlRDUFJFIHVzZWQgYXMgUlRDIGNsb2NrICovDQoNCiNkZWZpbmUgUkNDX0NTUl9SVENFTl9Qb3MgICAgICAgICAgICAgICAgICAgKDIyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0NTUl9SVENFTl9Nc2sgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgUkNDX0NTUl9SVENFTl9Qb3MpICAgICAgICAvKiE8IDB4MDA0MDAwMDAgKi8NCiNkZWZpbmUgUkNDX0NTUl9SVENFTiAgICAgICAgICAgICAgICAgICAgICAgUkNDX0NTUl9SVENFTl9Nc2sgICAgICAgICAgICAgICAgICAvKiE8IFJUQyBjbG9jayBlbmFibGUgKi8NCiNkZWZpbmUgUkNDX0NTUl9SVENSU1RfUG9zICAgICAgICAgICAgICAgICAgKDIzVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0NTUl9SVENSU1RfTXNrICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgUkNDX0NTUl9SVENSU1RfUG9zKSAgICAgICAvKiE8IDB4MDA4MDAwMDAgKi8NCiNkZWZpbmUgUkNDX0NTUl9SVENSU1QgICAgICAgICAgICAgICAgICAgICAgUkNDX0NTUl9SVENSU1RfTXNrICAgICAgICAgICAgICAgICAvKiE8IFJUQyByZXNldCAgKi8NCiANCiNkZWZpbmUgUkNDX0NTUl9STVZGX1BvcyAgICAgICAgICAgICAgICAgICAgKDI0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0NTUl9STVZGX01zayAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgUkNDX0NTUl9STVZGX1BvcykgICAgICAgICAvKiE8IDB4MDEwMDAwMDAgKi8NCiNkZWZpbmUgUkNDX0NTUl9STVZGICAgICAgICAgICAgICAgICAgICAgICAgUkNDX0NTUl9STVZGX01zayAgICAgICAgICAgICAgICAgICAvKiE8IFJlbW92ZSByZXNldCBmbGFnICovDQojZGVmaW5lIFJDQ19DU1JfT0JMUlNURl9Qb3MgICAgICAgICAgICAgICAgICgyNVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19DU1JfT0JMUlNURl9Nc2sgICAgICAgICAgICAgICAgICgweDFVIDw8IFJDQ19DU1JfT0JMUlNURl9Qb3MpICAgICAgLyohPCAweDAyMDAwMDAwICovDQojZGVmaW5lIFJDQ19DU1JfT0JMUlNURiAgICAgICAgICAgICAgICAgICAgIFJDQ19DU1JfT0JMUlNURl9Nc2sgICAgICAgICAgICAgICAgLyohPCBPcHRpb24gQnl0ZXMgTG9hZGVyIHJlc2V0IGZsYWcgKi8NCiNkZWZpbmUgUkNDX0NTUl9QSU5SU1RGX1BvcyAgICAgICAgICAgICAgICAgKDI2VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0NTUl9QSU5SU1RGX01zayAgICAgICAgICAgICAgICAgKDB4MVUgPDwgUkNDX0NTUl9QSU5SU1RGX1BvcykgICAgICAvKiE8IDB4MDQwMDAwMDAgKi8NCiNkZWZpbmUgUkNDX0NTUl9QSU5SU1RGICAgICAgICAgICAgICAgICAgICAgUkNDX0NTUl9QSU5SU1RGX01zayAgICAgICAgICAgICAgICAvKiE8IFBJTiByZXNldCBmbGFnICovDQojZGVmaW5lIFJDQ19DU1JfUE9SUlNURl9Qb3MgICAgICAgICAgICAgICAgICgyN1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19DU1JfUE9SUlNURl9Nc2sgICAgICAgICAgICAgICAgICgweDFVIDw8IFJDQ19DU1JfUE9SUlNURl9Qb3MpICAgICAgLyohPCAweDA4MDAwMDAwICovDQojZGVmaW5lIFJDQ19DU1JfUE9SUlNURiAgICAgICAgICAgICAgICAgICAgIFJDQ19DU1JfUE9SUlNURl9Nc2sgICAgICAgICAgICAgICAgLyohPCBQT1IvUERSIHJlc2V0IGZsYWcgKi8NCiNkZWZpbmUgUkNDX0NTUl9TRlRSU1RGX1BvcyAgICAgICAgICAgICAgICAgKDI4VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0NTUl9TRlRSU1RGX01zayAgICAgICAgICAgICAgICAgKDB4MVUgPDwgUkNDX0NTUl9TRlRSU1RGX1BvcykgICAgICAvKiE8IDB4MTAwMDAwMDAgKi8NCiNkZWZpbmUgUkNDX0NTUl9TRlRSU1RGICAgICAgICAgICAgICAgICAgICAgUkNDX0NTUl9TRlRSU1RGX01zayAgICAgICAgICAgICAgICAvKiE8IFNvZnR3YXJlIFJlc2V0IGZsYWcgKi8NCiNkZWZpbmUgUkNDX0NTUl9JV0RHUlNURl9Qb3MgICAgICAgICAgICAgICAgKDI5VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0NTUl9JV0RHUlNURl9Nc2sgICAgICAgICAgICAgICAgKDB4MVUgPDwgUkNDX0NTUl9JV0RHUlNURl9Qb3MpICAgICAvKiE8IDB4MjAwMDAwMDAgKi8NCiNkZWZpbmUgUkNDX0NTUl9JV0RHUlNURiAgICAgICAgICAgICAgICAgICAgUkNDX0NTUl9JV0RHUlNURl9Nc2sgICAgICAgICAgICAgICAvKiE8IEluZGVwZW5kZW50IFdhdGNoZG9nIHJlc2V0IGZsYWcgKi8NCiNkZWZpbmUgUkNDX0NTUl9XV0RHUlNURl9Qb3MgICAgICAgICAgICAgICAgKDMwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0NTUl9XV0RHUlNURl9Nc2sgICAgICAgICAgICAgICAgKDB4MVUgPDwgUkNDX0NTUl9XV0RHUlNURl9Qb3MpICAgICAvKiE8IDB4NDAwMDAwMDAgKi8NCiNkZWZpbmUgUkNDX0NTUl9XV0RHUlNURiAgICAgICAgICAgICAgICAgICAgUkNDX0NTUl9XV0RHUlNURl9Nc2sgICAgICAgICAgICAgICAvKiE8IFdpbmRvdyB3YXRjaGRvZyByZXNldCBmbGFnICovDQojZGVmaW5lIFJDQ19DU1JfTFBXUlJTVEZfUG9zICAgICAgICAgICAgICAgICgzMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19DU1JfTFBXUlJTVEZfTXNrICAgICAgICAgICAgICAgICgweDFVIDw8IFJDQ19DU1JfTFBXUlJTVEZfUG9zKSAgICAgLyohPCAweDgwMDAwMDAwICovDQojZGVmaW5lIFJDQ19DU1JfTFBXUlJTVEYgICAgICAgICAgICAgICAgICAgIFJDQ19DU1JfTFBXUlJTVEZfTXNrICAgICAgICAgICAgICAgLyohPCBMb3ctUG93ZXIgcmVzZXQgZmxhZyAqLw0KDQovKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLw0KLyogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8NCi8qICAgICAgICAgICAgICAgICAgICAgICAgICAgUmVhbC1UaW1lIENsb2NrIChSVEMpICAgICAgICAgICAgICAgICAgICAgICAgICAgICovDQovKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLw0KLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8NCi8qDQoqIEBicmllZiBTcGVjaWZpYyBkZXZpY2UgZmVhdHVyZSBkZWZpbml0aW9ucyAgKG5vdCBwcmVzZW50IG9uIGFsbCBkZXZpY2VzIGluIHRoZSBTVE0zMkYwIHNlcmllKQ0KKi8NCiNkZWZpbmUgUlRDX1RBTVBFUjFfU1VQUE9SVCAgICAgICAvKiE8IFRBTVBFUiAxIGZlYXR1cmUgc3VwcG9ydCAqLw0KI2RlZmluZSBSVENfVEFNUEVSMl9TVVBQT1JUICAgICAgIC8qITwgVEFNUEVSIDIgZmVhdHVyZSBzdXBwb3J0ICovDQojZGVmaW5lIFJUQ19UQU1QRVIzX1NVUFBPUlQgICAgICAgLyohPCBUQU1QRVIgMyBmZWF0dXJlIHN1cHBvcnQgKi8NCiNkZWZpbmUgUlRDX0JBQ0tVUF9TVVBQT1JUICAgICAgICAvKiE8IEJBQ0tVUCByZWdpc3RlciBmZWF0dXJlIHN1cHBvcnQgKi8NCiNkZWZpbmUgUlRDX1dBS0VVUF9TVVBQT1JUICAgICAgICAvKiE8IFdBS0VVUCBmZWF0dXJlIHN1cHBvcnQgKi8NCiNkZWZpbmUgUlRDX1NNT09USENBTElCX1NVUFBPUlQgICAvKiE8IFNtb290aCBkaWdpdGFsIGNhbGlicmF0aW9uIGZlYXR1cmUgc3VwcG9ydCAqLw0KI2RlZmluZSBSVENfU1VCU0VDT05EX1NVUFBPUlQgICAgIC8qITwgU3ViLXNlY29uZCBmZWF0dXJlIHN1cHBvcnQgKi8NCg0KLyoqKioqKioqKioqKioqKioqKioqICBCaXRzIGRlZmluaXRpb24gZm9yIFJUQ19UUiByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgUlRDX1RSX1BNX1BvcyAgICAgICAgICAgICAgICAgICAgICAgICgyMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX1RSX1BNX01zayAgICAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFJUQ19UUl9QTV9Qb3MpICAgICAgICAgICAvKiE8IDB4MDA0MDAwMDAgKi8NCiNkZWZpbmUgUlRDX1RSX1BNICAgICAgICAgICAgICAgICAgICAgICAgICAgIFJUQ19UUl9QTV9Nc2sgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX1RSX0hUX1BvcyAgICAgICAgICAgICAgICAgICAgICAgICgyMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX1RSX0hUX01zayAgICAgICAgICAgICAgICAgICAgICAgICgweDNVIDw8IFJUQ19UUl9IVF9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAzMDAwMDAgKi8NCiNkZWZpbmUgUlRDX1RSX0hUICAgICAgICAgICAgICAgICAgICAgICAgICAgIFJUQ19UUl9IVF9Nc2sgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX1RSX0hUXzAgICAgICAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFJUQ19UUl9IVF9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAxMDAwMDAgKi8NCiNkZWZpbmUgUlRDX1RSX0hUXzEgICAgICAgICAgICAgICAgICAgICAgICAgICgweDJVIDw8IFJUQ19UUl9IVF9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAyMDAwMDAgKi8NCiNkZWZpbmUgUlRDX1RSX0hVX1BvcyAgICAgICAgICAgICAgICAgICAgICAgICgxNlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX1RSX0hVX01zayAgICAgICAgICAgICAgICAgICAgICAgICgweEZVIDw8IFJUQ19UUl9IVV9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwRjAwMDAgKi8NCiNkZWZpbmUgUlRDX1RSX0hVICAgICAgICAgICAgICAgICAgICAgICAgICAgIFJUQ19UUl9IVV9Nc2sgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX1RSX0hVXzAgICAgICAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFJUQ19UUl9IVV9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMTAwMDAgKi8NCiNkZWZpbmUgUlRDX1RSX0hVXzEgICAgICAgICAgICAgICAgICAgICAgICAgICgweDJVIDw8IFJUQ19UUl9IVV9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMjAwMDAgKi8NCiNkZWZpbmUgUlRDX1RSX0hVXzIgICAgICAgICAgICAgICAgICAgICAgICAgICgweDRVIDw8IFJUQ19UUl9IVV9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwNDAwMDAgKi8NCiNkZWZpbmUgUlRDX1RSX0hVXzMgICAgICAgICAgICAgICAgICAgICAgICAgICgweDhVIDw8IFJUQ19UUl9IVV9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwODAwMDAgKi8NCiNkZWZpbmUgUlRDX1RSX01OVF9Qb3MgICAgICAgICAgICAgICAgICAgICAgICgxMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX1RSX01OVF9Nc2sgICAgICAgICAgICAgICAgICAgICAgICgweDdVIDw8IFJUQ19UUl9NTlRfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDcwMDAgKi8NCiNkZWZpbmUgUlRDX1RSX01OVCAgICAgICAgICAgICAgICAgICAgICAgICAgIFJUQ19UUl9NTlRfTXNrICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX1RSX01OVF8wICAgICAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFJUQ19UUl9NTlRfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDEwMDAgKi8NCiNkZWZpbmUgUlRDX1RSX01OVF8xICAgICAgICAgICAgICAgICAgICAgICAgICgweDJVIDw8IFJUQ19UUl9NTlRfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDIwMDAgKi8NCiNkZWZpbmUgUlRDX1RSX01OVF8yICAgICAgICAgICAgICAgICAgICAgICAgICgweDRVIDw8IFJUQ19UUl9NTlRfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDQwMDAgKi8NCiNkZWZpbmUgUlRDX1RSX01OVV9Qb3MgICAgICAgICAgICAgICAgICAgICAgICg4VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX1RSX01OVV9Nc2sgICAgICAgICAgICAgICAgICAgICAgICgweEZVIDw8IFJUQ19UUl9NTlVfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDBGMDAgKi8NCiNkZWZpbmUgUlRDX1RSX01OVSAgICAgICAgICAgICAgICAgICAgICAgICAgIFJUQ19UUl9NTlVfTXNrICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX1RSX01OVV8wICAgICAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFJUQ19UUl9NTlVfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDAxMDAgKi8NCiNkZWZpbmUgUlRDX1RSX01OVV8xICAgICAgICAgICAgICAgICAgICAgICAgICgweDJVIDw8IFJUQ19UUl9NTlVfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDAyMDAgKi8NCiNkZWZpbmUgUlRDX1RSX01OVV8yICAgICAgICAgICAgICAgICAgICAgICAgICgweDRVIDw8IFJUQ19UUl9NTlVfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDA0MDAgKi8NCiNkZWZpbmUgUlRDX1RSX01OVV8zICAgICAgICAgICAgICAgICAgICAgICAgICgweDhVIDw8IFJUQ19UUl9NTlVfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDA4MDAgKi8NCiNkZWZpbmUgUlRDX1RSX1NUX1BvcyAgICAgICAgICAgICAgICAgICAgICAgICg0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX1RSX1NUX01zayAgICAgICAgICAgICAgICAgICAgICAgICgweDdVIDw8IFJUQ19UUl9TVF9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDAwNzAgKi8NCiNkZWZpbmUgUlRDX1RSX1NUICAgICAgICAgICAgICAgICAgICAgICAgICAgIFJUQ19UUl9TVF9Nc2sgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX1RSX1NUXzAgICAgICAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFJUQ19UUl9TVF9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDAwMTAgKi8NCiNkZWZpbmUgUlRDX1RSX1NUXzEgICAgICAgICAgICAgICAgICAgICAgICAgICgweDJVIDw8IFJUQ19UUl9TVF9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDAwMjAgKi8NCiNkZWZpbmUgUlRDX1RSX1NUXzIgICAgICAgICAgICAgICAgICAgICAgICAgICgweDRVIDw8IFJUQ19UUl9TVF9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDAwNDAgKi8NCiNkZWZpbmUgUlRDX1RSX1NVX1BvcyAgICAgICAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX1RSX1NVX01zayAgICAgICAgICAgICAgICAgICAgICAgICgweEZVIDw8IFJUQ19UUl9TVV9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDAwMEYgKi8NCiNkZWZpbmUgUlRDX1RSX1NVICAgICAgICAgICAgICAgICAgICAgICAgICAgIFJUQ19UUl9TVV9Nc2sgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX1RSX1NVXzAgICAgICAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFJUQ19UUl9TVV9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDEgKi8NCiNkZWZpbmUgUlRDX1RSX1NVXzEgICAgICAgICAgICAgICAgICAgICAgICAgICgweDJVIDw8IFJUQ19UUl9TVV9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDIgKi8NCiNkZWZpbmUgUlRDX1RSX1NVXzIgICAgICAgICAgICAgICAgICAgICAgICAgICgweDRVIDw8IFJUQ19UUl9TVV9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDQgKi8NCiNkZWZpbmUgUlRDX1RSX1NVXzMgICAgICAgICAgICAgICAgICAgICAgICAgICgweDhVIDw8IFJUQ19UUl9TVV9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDggKi8NCg0KLyoqKioqKioqKioqKioqKioqKioqICBCaXRzIGRlZmluaXRpb24gZm9yIFJUQ19EUiByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgUlRDX0RSX1lUX1BvcyAgICAgICAgICAgICAgICAgICAgICAgICgyMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0RSX1lUX01zayAgICAgICAgICAgICAgICAgICAgICAgICgweEZVIDw8IFJUQ19EUl9ZVF9Qb3MpICAgICAgICAgICAvKiE8IDB4MDBGMDAwMDAgKi8NCiNkZWZpbmUgUlRDX0RSX1lUICAgICAgICAgICAgICAgICAgICAgICAgICAgIFJUQ19EUl9ZVF9Nc2sgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0RSX1lUXzAgICAgICAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFJUQ19EUl9ZVF9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAxMDAwMDAgKi8NCiNkZWZpbmUgUlRDX0RSX1lUXzEgICAgICAgICAgICAgICAgICAgICAgICAgICgweDJVIDw8IFJUQ19EUl9ZVF9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAyMDAwMDAgKi8NCiNkZWZpbmUgUlRDX0RSX1lUXzIgICAgICAgICAgICAgICAgICAgICAgICAgICgweDRVIDw8IFJUQ19EUl9ZVF9Qb3MpICAgICAgICAgICAvKiE8IDB4MDA0MDAwMDAgKi8NCiNkZWZpbmUgUlRDX0RSX1lUXzMgICAgICAgICAgICAgICAgICAgICAgICAgICgweDhVIDw8IFJUQ19EUl9ZVF9Qb3MpICAgICAgICAgICAvKiE8IDB4MDA4MDAwMDAgKi8NCiNkZWZpbmUgUlRDX0RSX1lVX1BvcyAgICAgICAgICAgICAgICAgICAgICAgICgxNlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0RSX1lVX01zayAgICAgICAgICAgICAgICAgICAgICAgICgweEZVIDw8IFJUQ19EUl9ZVV9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwRjAwMDAgKi8NCiNkZWZpbmUgUlRDX0RSX1lVICAgICAgICAgICAgICAgICAgICAgICAgICAgIFJUQ19EUl9ZVV9Nc2sgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0RSX1lVXzAgICAgICAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFJUQ19EUl9ZVV9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMTAwMDAgKi8NCiNkZWZpbmUgUlRDX0RSX1lVXzEgICAgICAgICAgICAgICAgICAgICAgICAgICgweDJVIDw8IFJUQ19EUl9ZVV9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMjAwMDAgKi8NCiNkZWZpbmUgUlRDX0RSX1lVXzIgICAgICAgICAgICAgICAgICAgICAgICAgICgweDRVIDw8IFJUQ19EUl9ZVV9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwNDAwMDAgKi8NCiNkZWZpbmUgUlRDX0RSX1lVXzMgICAgICAgICAgICAgICAgICAgICAgICAgICgweDhVIDw8IFJUQ19EUl9ZVV9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwODAwMDAgKi8NCiNkZWZpbmUgUlRDX0RSX1dEVV9Qb3MgICAgICAgICAgICAgICAgICAgICAgICgxM1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0RSX1dEVV9Nc2sgICAgICAgICAgICAgICAgICAgICAgICgweDdVIDw8IFJUQ19EUl9XRFVfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMEUwMDAgKi8NCiNkZWZpbmUgUlRDX0RSX1dEVSAgICAgICAgICAgICAgICAgICAgICAgICAgIFJUQ19EUl9XRFVfTXNrICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0RSX1dEVV8wICAgICAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFJUQ19EUl9XRFVfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDIwMDAgKi8NCiNkZWZpbmUgUlRDX0RSX1dEVV8xICAgICAgICAgICAgICAgICAgICAgICAgICgweDJVIDw8IFJUQ19EUl9XRFVfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDQwMDAgKi8NCiNkZWZpbmUgUlRDX0RSX1dEVV8yICAgICAgICAgICAgICAgICAgICAgICAgICgweDRVIDw8IFJUQ19EUl9XRFVfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDgwMDAgKi8NCiNkZWZpbmUgUlRDX0RSX01UX1BvcyAgICAgICAgICAgICAgICAgICAgICAgICgxMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0RSX01UX01zayAgICAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFJUQ19EUl9NVF9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDEwMDAgKi8NCiNkZWZpbmUgUlRDX0RSX01UICAgICAgICAgICAgICAgICAgICAgICAgICAgIFJUQ19EUl9NVF9Nc2sgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0RSX01VX1BvcyAgICAgICAgICAgICAgICAgICAgICAgICg4VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0RSX01VX01zayAgICAgICAgICAgICAgICAgICAgICAgICgweEZVIDw8IFJUQ19EUl9NVV9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDBGMDAgKi8NCiNkZWZpbmUgUlRDX0RSX01VICAgICAgICAgICAgICAgICAgICAgICAgICAgIFJUQ19EUl9NVV9Nc2sgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0RSX01VXzAgICAgICAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFJUQ19EUl9NVV9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDAxMDAgKi8NCiNkZWZpbmUgUlRDX0RSX01VXzEgICAgICAgICAgICAgICAgICAgICAgICAgICgweDJVIDw8IFJUQ19EUl9NVV9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDAyMDAgKi8NCiNkZWZpbmUgUlRDX0RSX01VXzIgICAgICAgICAgICAgICAgICAgICAgICAgICgweDRVIDw8IFJUQ19EUl9NVV9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDA0MDAgKi8NCiNkZWZpbmUgUlRDX0RSX01VXzMgICAgICAgICAgICAgICAgICAgICAgICAgICgweDhVIDw8IFJUQ19EUl9NVV9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDA4MDAgKi8NCiNkZWZpbmUgUlRDX0RSX0RUX1BvcyAgICAgICAgICAgICAgICAgICAgICAgICg0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0RSX0RUX01zayAgICAgICAgICAgICAgICAgICAgICAgICgweDNVIDw8IFJUQ19EUl9EVF9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDAwMzAgKi8NCiNkZWZpbmUgUlRDX0RSX0RUICAgICAgICAgICAgICAgICAgICAgICAgICAgIFJUQ19EUl9EVF9Nc2sgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0RSX0RUXzAgICAgICAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFJUQ19EUl9EVF9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDAwMTAgKi8NCiNkZWZpbmUgUlRDX0RSX0RUXzEgICAgICAgICAgICAgICAgICAgICAgICAgICgweDJVIDw8IFJUQ19EUl9EVF9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDAwMjAgKi8NCiNkZWZpbmUgUlRDX0RSX0RVX1BvcyAgICAgICAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0RSX0RVX01zayAgICAgICAgICAgICAgICAgICAgICAgICgweEZVIDw8IFJUQ19EUl9EVV9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDAwMEYgKi8NCiNkZWZpbmUgUlRDX0RSX0RVICAgICAgICAgICAgICAgICAgICAgICAgICAgIFJUQ19EUl9EVV9Nc2sgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0RSX0RVXzAgICAgICAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFJUQ19EUl9EVV9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDEgKi8NCiNkZWZpbmUgUlRDX0RSX0RVXzEgICAgICAgICAgICAgICAgICAgICAgICAgICgweDJVIDw8IFJUQ19EUl9EVV9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDIgKi8NCiNkZWZpbmUgUlRDX0RSX0RVXzIgICAgICAgICAgICAgICAgICAgICAgICAgICgweDRVIDw8IFJUQ19EUl9EVV9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDQgKi8NCiNkZWZpbmUgUlRDX0RSX0RVXzMgICAgICAgICAgICAgICAgICAgICAgICAgICgweDhVIDw8IFJUQ19EUl9EVV9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDggKi8NCg0KLyoqKioqKioqKioqKioqKioqKioqICBCaXRzIGRlZmluaXRpb24gZm9yIFJUQ19DUiByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgUlRDX0NSX0NPRV9Qb3MgICAgICAgICAgICAgICAgICAgICAgICgyM1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0NSX0NPRV9Nc2sgICAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFJUQ19DUl9DT0VfUG9zKSAgICAgICAgICAvKiE8IDB4MDA4MDAwMDAgKi8NCiNkZWZpbmUgUlRDX0NSX0NPRSAgICAgICAgICAgICAgICAgICAgICAgICAgIFJUQ19DUl9DT0VfTXNrICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0NSX09TRUxfUG9zICAgICAgICAgICAgICAgICAgICAgICgyMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0NSX09TRUxfTXNrICAgICAgICAgICAgICAgICAgICAgICgweDNVIDw8IFJUQ19DUl9PU0VMX1BvcykgICAgICAgICAvKiE8IDB4MDA2MDAwMDAgKi8NCiNkZWZpbmUgUlRDX0NSX09TRUwgICAgICAgICAgICAgICAgICAgICAgICAgIFJUQ19DUl9PU0VMX01zayAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0NSX09TRUxfMCAgICAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFJUQ19DUl9PU0VMX1BvcykgICAgICAgICAvKiE8IDB4MDAyMDAwMDAgKi8NCiNkZWZpbmUgUlRDX0NSX09TRUxfMSAgICAgICAgICAgICAgICAgICAgICAgICgweDJVIDw8IFJUQ19DUl9PU0VMX1BvcykgICAgICAgICAvKiE8IDB4MDA0MDAwMDAgKi8NCiNkZWZpbmUgUlRDX0NSX1BPTF9Qb3MgICAgICAgICAgICAgICAgICAgICAgICgyMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0NSX1BPTF9Nc2sgICAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFJUQ19DUl9QT0xfUG9zKSAgICAgICAgICAvKiE8IDB4MDAxMDAwMDAgKi8NCiNkZWZpbmUgUlRDX0NSX1BPTCAgICAgICAgICAgICAgICAgICAgICAgICAgIFJUQ19DUl9QT0xfTXNrICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0NSX0NPU0VMX1BvcyAgICAgICAgICAgICAgICAgICAgICgxOVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0NSX0NPU0VMX01zayAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFJUQ19DUl9DT1NFTF9Qb3MpICAgICAgICAvKiE8IDB4MDAwODAwMDAgKi8NCiNkZWZpbmUgUlRDX0NSX0NPU0VMICAgICAgICAgICAgICAgICAgICAgICAgIFJUQ19DUl9DT1NFTF9Nc2sgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0NSX0JLUF9Qb3MgICAgICAgICAgICAgICAgICAgICAgICgxOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0NSX0JLUF9Nc2sgICAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFJUQ19DUl9CS1BfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwNDAwMDAgKi8NCiNkZWZpbmUgUlRDX0NSX0JLUCAgICAgICAgICAgICAgICAgICAgICAgICAgIFJUQ19DUl9CS1BfTXNrICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0NSX1NVQjFIX1BvcyAgICAgICAgICAgICAgICAgICAgICgxN1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0NSX1NVQjFIX01zayAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFJUQ19DUl9TVUIxSF9Qb3MpICAgICAgICAvKiE8IDB4MDAwMjAwMDAgKi8NCiNkZWZpbmUgUlRDX0NSX1NVQjFIICAgICAgICAgICAgICAgICAgICAgICAgIFJUQ19DUl9TVUIxSF9Nc2sgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0NSX0FERDFIX1BvcyAgICAgICAgICAgICAgICAgICAgICgxNlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0NSX0FERDFIX01zayAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFJUQ19DUl9BREQxSF9Qb3MpICAgICAgICAvKiE8IDB4MDAwMTAwMDAgKi8NCiNkZWZpbmUgUlRDX0NSX0FERDFIICAgICAgICAgICAgICAgICAgICAgICAgIFJUQ19DUl9BREQxSF9Nc2sgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0NSX1RTSUVfUG9zICAgICAgICAgICAgICAgICAgICAgICgxNVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0NSX1RTSUVfTXNrICAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFJUQ19DUl9UU0lFX1BvcykgICAgICAgICAvKiE8IDB4MDAwMDgwMDAgKi8NCiNkZWZpbmUgUlRDX0NSX1RTSUUgICAgICAgICAgICAgICAgICAgICAgICAgIFJUQ19DUl9UU0lFX01zayAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0NSX1dVVElFX1BvcyAgICAgICAgICAgICAgICAgICAgICgxNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0NSX1dVVElFX01zayAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFJUQ19DUl9XVVRJRV9Qb3MpICAgICAgICAvKiE8IDB4MDAwMDQwMDAgKi8NCiNkZWZpbmUgUlRDX0NSX1dVVElFICAgICAgICAgICAgICAgICAgICAgICAgIFJUQ19DUl9XVVRJRV9Nc2sgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0NSX0FMUkJJRV9Qb3MgICAgICAgICAgICAgICAgICAgICgxM1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0NSX0FMUkJJRV9Nc2sgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFJUQ19DUl9BTFJCSUVfUG9zKSAgICAgICAvKiE8IDB4MDAwMDIwMDAgKi8NCiNkZWZpbmUgUlRDX0NSX0FMUkJJRSAgICAgICAgICAgICAgICAgICAgICAgIFJUQ19DUl9BTFJCSUVfTXNrICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0NSX0FMUkFJRV9Qb3MgICAgICAgICAgICAgICAgICAgICgxMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0NSX0FMUkFJRV9Nc2sgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFJUQ19DUl9BTFJBSUVfUG9zKSAgICAgICAvKiE8IDB4MDAwMDEwMDAgKi8NCiNkZWZpbmUgUlRDX0NSX0FMUkFJRSAgICAgICAgICAgICAgICAgICAgICAgIFJUQ19DUl9BTFJBSUVfTXNrICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0NSX1RTRV9Qb3MgICAgICAgICAgICAgICAgICAgICAgICgxMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0NSX1RTRV9Nc2sgICAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFJUQ19DUl9UU0VfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDA4MDAgKi8NCiNkZWZpbmUgUlRDX0NSX1RTRSAgICAgICAgICAgICAgICAgICAgICAgICAgIFJUQ19DUl9UU0VfTXNrICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0NSX1dVVEVfUG9zICAgICAgICAgICAgICAgICAgICAgICgxMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0NSX1dVVEVfTXNrICAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFJUQ19DUl9XVVRFX1BvcykgICAgICAgICAvKiE8IDB4MDAwMDA0MDAgKi8NCiNkZWZpbmUgUlRDX0NSX1dVVEUgICAgICAgICAgICAgICAgICAgICAgICAgIFJUQ19DUl9XVVRFX01zayAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0NSX0FMUkJFX1BvcyAgICAgICAgICAgICAgICAgICAgICg5VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0NSX0FMUkJFX01zayAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFJUQ19DUl9BTFJCRV9Qb3MpICAgICAgICAvKiE8IDB4MDAwMDAyMDAgKi8NCiNkZWZpbmUgUlRDX0NSX0FMUkJFICAgICAgICAgICAgICAgICAgICAgICAgIFJUQ19DUl9BTFJCRV9Nc2sgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0NSX0FMUkFFX1BvcyAgICAgICAgICAgICAgICAgICAgICg4VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0NSX0FMUkFFX01zayAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFJUQ19DUl9BTFJBRV9Qb3MpICAgICAgICAvKiE8IDB4MDAwMDAxMDAgKi8NCiNkZWZpbmUgUlRDX0NSX0FMUkFFICAgICAgICAgICAgICAgICAgICAgICAgIFJUQ19DUl9BTFJBRV9Nc2sgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0NSX0RDRV9Qb3MgICAgICAgICAgICAgICAgICAgICAgICg3VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0NSX0RDRV9Nc2sgICAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFJUQ19DUl9EQ0VfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDAwODAgKi8NCiNkZWZpbmUgUlRDX0NSX0RDRSAgICAgICAgICAgICAgICAgICAgICAgICAgIFJUQ19DUl9EQ0VfTXNrICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0NSX0ZNVF9Qb3MgICAgICAgICAgICAgICAgICAgICAgICg2VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0NSX0ZNVF9Nc2sgICAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFJUQ19DUl9GTVRfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDAwNDAgKi8NCiNkZWZpbmUgUlRDX0NSX0ZNVCAgICAgICAgICAgICAgICAgICAgICAgICAgIFJUQ19DUl9GTVRfTXNrICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0NSX0JZUFNIQURfUG9zICAgICAgICAgICAgICAgICAgICg1VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0NSX0JZUFNIQURfTXNrICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFJUQ19DUl9CWVBTSEFEX1BvcykgICAgICAvKiE8IDB4MDAwMDAwMjAgKi8NCiNkZWZpbmUgUlRDX0NSX0JZUFNIQUQgICAgICAgICAgICAgICAgICAgICAgIFJUQ19DUl9CWVBTSEFEX01zayAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0NSX1JFRkNLT05fUG9zICAgICAgICAgICAgICAgICAgICg0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0NSX1JFRkNLT05fTXNrICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFJUQ19DUl9SRUZDS09OX1BvcykgICAgICAvKiE8IDB4MDAwMDAwMTAgKi8NCiNkZWZpbmUgUlRDX0NSX1JFRkNLT04gICAgICAgICAgICAgICAgICAgICAgIFJUQ19DUl9SRUZDS09OX01zayAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0NSX1RTRURHRV9Qb3MgICAgICAgICAgICAgICAgICAgICgzVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0NSX1RTRURHRV9Nc2sgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFJUQ19DUl9UU0VER0VfUG9zKSAgICAgICAvKiE8IDB4MDAwMDAwMDggKi8NCiNkZWZpbmUgUlRDX0NSX1RTRURHRSAgICAgICAgICAgICAgICAgICAgICAgIFJUQ19DUl9UU0VER0VfTXNrICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0NSX1dVQ0tTRUxfUG9zICAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0NSX1dVQ0tTRUxfTXNrICAgICAgICAgICAgICAgICAgICgweDdVIDw8IFJUQ19DUl9XVUNLU0VMX1BvcykgICAgICAvKiE8IDB4MDAwMDAwMDcgKi8NCiNkZWZpbmUgUlRDX0NSX1dVQ0tTRUwgICAgICAgICAgICAgICAgICAgICAgIFJUQ19DUl9XVUNLU0VMX01zayAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0NSX1dVQ0tTRUxfMCAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFJUQ19DUl9XVUNLU0VMX1BvcykgICAgICAvKiE8IDB4MDAwMDAwMDEgKi8NCiNkZWZpbmUgUlRDX0NSX1dVQ0tTRUxfMSAgICAgICAgICAgICAgICAgICAgICgweDJVIDw8IFJUQ19DUl9XVUNLU0VMX1BvcykgICAgICAvKiE8IDB4MDAwMDAwMDIgKi8NCiNkZWZpbmUgUlRDX0NSX1dVQ0tTRUxfMiAgICAgICAgICAgICAgICAgICAgICgweDRVIDw8IFJUQ19DUl9XVUNLU0VMX1BvcykgICAgICAvKiE8IDB4MDAwMDAwMDQgKi8NCg0KLyogTGVnYWN5IGRlZmluZXMgKi8NCiNkZWZpbmUgIFJUQ19DUl9CQ0tfUG9zIFJUQ19DUl9CS1BfUG9zDQojZGVmaW5lICBSVENfQ1JfQkNLX01zayBSVENfQ1JfQktQX01zaw0KI2RlZmluZSAgUlRDX0NSX0JDSyAgICAgUlRDX0NSX0JLUA0KDQovKioqKioqKioqKioqKioqKioqKiogIEJpdHMgZGVmaW5pdGlvbiBmb3IgUlRDX0lTUiByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBSVENfSVNSX1JFQ0FMUEZfUG9zICAgICAgICAgICAgICAgICAgKDE2VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfSVNSX1JFQ0FMUEZfTXNrICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgUlRDX0lTUl9SRUNBTFBGX1BvcykgICAgIC8qITwgMHgwMDAxMDAwMCAqLw0KI2RlZmluZSBSVENfSVNSX1JFQ0FMUEYgICAgICAgICAgICAgICAgICAgICAgUlRDX0lTUl9SRUNBTFBGX01zayAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfSVNSX1RBTVAzRl9Qb3MgICAgICAgICAgICAgICAgICAgKDE1VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfSVNSX1RBTVAzRl9Nc2sgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgUlRDX0lTUl9UQU1QM0ZfUG9zKSAgICAgIC8qITwgMHgwMDAwODAwMCAqLw0KI2RlZmluZSBSVENfSVNSX1RBTVAzRiAgICAgICAgICAgICAgICAgICAgICAgUlRDX0lTUl9UQU1QM0ZfTXNrICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfSVNSX1RBTVAyRl9Qb3MgICAgICAgICAgICAgICAgICAgKDE0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfSVNSX1RBTVAyRl9Nc2sgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgUlRDX0lTUl9UQU1QMkZfUG9zKSAgICAgIC8qITwgMHgwMDAwNDAwMCAqLw0KI2RlZmluZSBSVENfSVNSX1RBTVAyRiAgICAgICAgICAgICAgICAgICAgICAgUlRDX0lTUl9UQU1QMkZfTXNrICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfSVNSX1RBTVAxRl9Qb3MgICAgICAgICAgICAgICAgICAgKDEzVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfSVNSX1RBTVAxRl9Nc2sgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgUlRDX0lTUl9UQU1QMUZfUG9zKSAgICAgIC8qITwgMHgwMDAwMjAwMCAqLw0KI2RlZmluZSBSVENfSVNSX1RBTVAxRiAgICAgICAgICAgICAgICAgICAgICAgUlRDX0lTUl9UQU1QMUZfTXNrICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfSVNSX1RTT1ZGX1BvcyAgICAgICAgICAgICAgICAgICAgKDEyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfSVNSX1RTT1ZGX01zayAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgUlRDX0lTUl9UU09WRl9Qb3MpICAgICAgIC8qITwgMHgwMDAwMTAwMCAqLw0KI2RlZmluZSBSVENfSVNSX1RTT1ZGICAgICAgICAgICAgICAgICAgICAgICAgUlRDX0lTUl9UU09WRl9Nc2sgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfSVNSX1RTRl9Qb3MgICAgICAgICAgICAgICAgICAgICAgKDExVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfSVNSX1RTRl9Nc2sgICAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgUlRDX0lTUl9UU0ZfUG9zKSAgICAgICAgIC8qITwgMHgwMDAwMDgwMCAqLw0KI2RlZmluZSBSVENfSVNSX1RTRiAgICAgICAgICAgICAgICAgICAgICAgICAgUlRDX0lTUl9UU0ZfTXNrICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfSVNSX1dVVEZfUG9zICAgICAgICAgICAgICAgICAgICAgKDEwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfSVNSX1dVVEZfTXNrICAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgUlRDX0lTUl9XVVRGX1BvcykgICAgICAgIC8qITwgMHgwMDAwMDQwMCAqLw0KI2RlZmluZSBSVENfSVNSX1dVVEYgICAgICAgICAgICAgICAgICAgICAgICAgUlRDX0lTUl9XVVRGX01zayAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfSVNSX0FMUkJGX1BvcyAgICAgICAgICAgICAgICAgICAgKDlVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfSVNSX0FMUkJGX01zayAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgUlRDX0lTUl9BTFJCRl9Qb3MpICAgICAgIC8qITwgMHgwMDAwMDIwMCAqLw0KI2RlZmluZSBSVENfSVNSX0FMUkJGICAgICAgICAgICAgICAgICAgICAgICAgUlRDX0lTUl9BTFJCRl9Nc2sgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfSVNSX0FMUkFGX1BvcyAgICAgICAgICAgICAgICAgICAgKDhVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfSVNSX0FMUkFGX01zayAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgUlRDX0lTUl9BTFJBRl9Qb3MpICAgICAgIC8qITwgMHgwMDAwMDEwMCAqLw0KI2RlZmluZSBSVENfSVNSX0FMUkFGICAgICAgICAgICAgICAgICAgICAgICAgUlRDX0lTUl9BTFJBRl9Nc2sgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfSVNSX0lOSVRfUG9zICAgICAgICAgICAgICAgICAgICAgKDdVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfSVNSX0lOSVRfTXNrICAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgUlRDX0lTUl9JTklUX1BvcykgICAgICAgIC8qITwgMHgwMDAwMDA4MCAqLw0KI2RlZmluZSBSVENfSVNSX0lOSVQgICAgICAgICAgICAgICAgICAgICAgICAgUlRDX0lTUl9JTklUX01zayAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfSVNSX0lOSVRGX1BvcyAgICAgICAgICAgICAgICAgICAgKDZVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfSVNSX0lOSVRGX01zayAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgUlRDX0lTUl9JTklURl9Qb3MpICAgICAgIC8qITwgMHgwMDAwMDA0MCAqLw0KI2RlZmluZSBSVENfSVNSX0lOSVRGICAgICAgICAgICAgICAgICAgICAgICAgUlRDX0lTUl9JTklURl9Nc2sgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfSVNSX1JTRl9Qb3MgICAgICAgICAgICAgICAgICAgICAgKDVVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfSVNSX1JTRl9Nc2sgICAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgUlRDX0lTUl9SU0ZfUG9zKSAgICAgICAgIC8qITwgMHgwMDAwMDAyMCAqLw0KI2RlZmluZSBSVENfSVNSX1JTRiAgICAgICAgICAgICAgICAgICAgICAgICAgUlRDX0lTUl9SU0ZfTXNrICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfSVNSX0lOSVRTX1BvcyAgICAgICAgICAgICAgICAgICAgKDRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfSVNSX0lOSVRTX01zayAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgUlRDX0lTUl9JTklUU19Qb3MpICAgICAgIC8qITwgMHgwMDAwMDAxMCAqLw0KI2RlZmluZSBSVENfSVNSX0lOSVRTICAgICAgICAgICAgICAgICAgICAgICAgUlRDX0lTUl9JTklUU19Nc2sgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfSVNSX1NIUEZfUG9zICAgICAgICAgICAgICAgICAgICAgKDNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfSVNSX1NIUEZfTXNrICAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgUlRDX0lTUl9TSFBGX1BvcykgICAgICAgIC8qITwgMHgwMDAwMDAwOCAqLw0KI2RlZmluZSBSVENfSVNSX1NIUEYgICAgICAgICAgICAgICAgICAgICAgICAgUlRDX0lTUl9TSFBGX01zayAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfSVNSX1dVVFdGX1BvcyAgICAgICAgICAgICAgICAgICAgKDJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfSVNSX1dVVFdGX01zayAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgUlRDX0lTUl9XVVRXRl9Qb3MpICAgICAgIC8qITwgMHgwMDAwMDAwNCAqLw0KI2RlZmluZSBSVENfSVNSX1dVVFdGICAgICAgICAgICAgICAgICAgICAgICAgUlRDX0lTUl9XVVRXRl9Nc2sgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfSVNSX0FMUkJXRl9Qb3MgICAgICAgICAgICAgICAgICAgKDFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfSVNSX0FMUkJXRl9Nc2sgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgUlRDX0lTUl9BTFJCV0ZfUG9zKSAgICAgIC8qITwgMHgwMDAwMDAwMiAqLw0KI2RlZmluZSBSVENfSVNSX0FMUkJXRiAgICAgICAgICAgICAgICAgICAgICAgUlRDX0lTUl9BTFJCV0ZfTXNrICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfSVNSX0FMUkFXRl9Qb3MgICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfSVNSX0FMUkFXRl9Nc2sgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgUlRDX0lTUl9BTFJBV0ZfUG9zKSAgICAgIC8qITwgMHgwMDAwMDAwMSAqLw0KI2RlZmluZSBSVENfSVNSX0FMUkFXRiAgICAgICAgICAgICAgICAgICAgICAgUlRDX0lTUl9BTFJBV0ZfTXNrICAgICAgICAgICAgICAgIA0KDQovKioqKioqKioqKioqKioqKioqKiogIEJpdHMgZGVmaW5pdGlvbiBmb3IgUlRDX1BSRVIgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBSVENfUFJFUl9QUkVESVZfQV9Qb3MgICAgICAgICAgICAgICAgKDE2VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfUFJFUl9QUkVESVZfQV9Nc2sgICAgICAgICAgICAgICAgKDB4N0ZVIDw8IFJUQ19QUkVSX1BSRURJVl9BX1BvcykgIC8qITwgMHgwMDdGMDAwMCAqLw0KI2RlZmluZSBSVENfUFJFUl9QUkVESVZfQSAgICAgICAgICAgICAgICAgICAgUlRDX1BSRVJfUFJFRElWX0FfTXNrICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfUFJFUl9QUkVESVZfU19Qb3MgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfUFJFUl9QUkVESVZfU19Nc2sgICAgICAgICAgICAgICAgKDB4N0ZGRlUgPDwgUlRDX1BSRVJfUFJFRElWX1NfUG9zKSAvKiE8IDB4MDAwMDdGRkYgKi8NCiNkZWZpbmUgUlRDX1BSRVJfUFJFRElWX1MgICAgICAgICAgICAgICAgICAgIFJUQ19QUkVSX1BSRURJVl9TX01zayAgICAgICAgICAgICANCg0KLyoqKioqKioqKioqKioqKioqKioqICBCaXRzIGRlZmluaXRpb24gZm9yIFJUQ19XVVRSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgUlRDX1dVVFJfV1VUX1BvcyAgICAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX1dVVFJfV1VUX01zayAgICAgICAgICAgICAgICAgICAgICgweEZGRkZVIDw8IFJUQ19XVVRSX1dVVF9Qb3MpICAgICAvKiE8IDB4MDAwMEZGRkYgKi8NCiNkZWZpbmUgUlRDX1dVVFJfV1VUICAgICAgICAgICAgICAgICAgICAgICAgIFJUQ19XVVRSX1dVVF9Nc2sgICAgICAgICAgICAgICAgICANCg0KLyoqKioqKioqKioqKioqKioqKioqICBCaXRzIGRlZmluaXRpb24gZm9yIFJUQ19DQUxJQlIgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKi8NCiNkZWZpbmUgUlRDX0NBTElCUl9EQ1NfUG9zICAgICAgICAgICAgICAgICAgICg3VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0NBTElCUl9EQ1NfTXNrICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFJUQ19DQUxJQlJfRENTX1BvcykgICAgICAvKiE8IDB4MDAwMDAwODAgKi8NCiNkZWZpbmUgUlRDX0NBTElCUl9EQ1MgICAgICAgICAgICAgICAgICAgICAgIFJUQ19DQUxJQlJfRENTX01zayAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0NBTElCUl9EQ19Qb3MgICAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0NBTElCUl9EQ19Nc2sgICAgICAgICAgICAgICAgICAgICgweDFGVSA8PCBSVENfQ0FMSUJSX0RDX1BvcykgICAgICAvKiE8IDB4MDAwMDAwMUYgKi8NCiNkZWZpbmUgUlRDX0NBTElCUl9EQyAgICAgICAgICAgICAgICAgICAgICAgIFJUQ19DQUxJQlJfRENfTXNrICAgICAgICAgICAgICAgICANCg0KLyoqKioqKioqKioqKioqKioqKioqICBCaXRzIGRlZmluaXRpb24gZm9yIFJUQ19BTFJNQVIgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKi8NCiNkZWZpbmUgUlRDX0FMUk1BUl9NU0s0X1BvcyAgICAgICAgICAgICAgICAgICgzMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0FMUk1BUl9NU0s0X01zayAgICAgICAgICAgICAgICAgICgweDFVIDw8IFJUQ19BTFJNQVJfTVNLNF9Qb3MpICAgICAvKiE8IDB4ODAwMDAwMDAgKi8NCiNkZWZpbmUgUlRDX0FMUk1BUl9NU0s0ICAgICAgICAgICAgICAgICAgICAgIFJUQ19BTFJNQVJfTVNLNF9Nc2sgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0FMUk1BUl9XRFNFTF9Qb3MgICAgICAgICAgICAgICAgICgzMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0FMUk1BUl9XRFNFTF9Nc2sgICAgICAgICAgICAgICAgICgweDFVIDw8IFJUQ19BTFJNQVJfV0RTRUxfUG9zKSAgICAvKiE8IDB4NDAwMDAwMDAgKi8NCiNkZWZpbmUgUlRDX0FMUk1BUl9XRFNFTCAgICAgICAgICAgICAgICAgICAgIFJUQ19BTFJNQVJfV0RTRUxfTXNrICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0FMUk1BUl9EVF9Qb3MgICAgICAgICAgICAgICAgICAgICgyOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0FMUk1BUl9EVF9Nc2sgICAgICAgICAgICAgICAgICAgICgweDNVIDw8IFJUQ19BTFJNQVJfRFRfUG9zKSAgICAgICAvKiE8IDB4MzAwMDAwMDAgKi8NCiNkZWZpbmUgUlRDX0FMUk1BUl9EVCAgICAgICAgICAgICAgICAgICAgICAgIFJUQ19BTFJNQVJfRFRfTXNrICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0FMUk1BUl9EVF8wICAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFJUQ19BTFJNQVJfRFRfUG9zKSAgICAgICAvKiE8IDB4MTAwMDAwMDAgKi8NCiNkZWZpbmUgUlRDX0FMUk1BUl9EVF8xICAgICAgICAgICAgICAgICAgICAgICgweDJVIDw8IFJUQ19BTFJNQVJfRFRfUG9zKSAgICAgICAvKiE8IDB4MjAwMDAwMDAgKi8NCiNkZWZpbmUgUlRDX0FMUk1BUl9EVV9Qb3MgICAgICAgICAgICAgICAgICAgICgyNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0FMUk1BUl9EVV9Nc2sgICAgICAgICAgICAgICAgICAgICgweEZVIDw8IFJUQ19BTFJNQVJfRFVfUG9zKSAgICAgICAvKiE8IDB4MEYwMDAwMDAgKi8NCiNkZWZpbmUgUlRDX0FMUk1BUl9EVSAgICAgICAgICAgICAgICAgICAgICAgIFJUQ19BTFJNQVJfRFVfTXNrICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0FMUk1BUl9EVV8wICAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFJUQ19BTFJNQVJfRFVfUG9zKSAgICAgICAvKiE8IDB4MDEwMDAwMDAgKi8NCiNkZWZpbmUgUlRDX0FMUk1BUl9EVV8xICAgICAgICAgICAgICAgICAgICAgICgweDJVIDw8IFJUQ19BTFJNQVJfRFVfUG9zKSAgICAgICAvKiE8IDB4MDIwMDAwMDAgKi8NCiNkZWZpbmUgUlRDX0FMUk1BUl9EVV8yICAgICAgICAgICAgICAgICAgICAgICgweDRVIDw8IFJUQ19BTFJNQVJfRFVfUG9zKSAgICAgICAvKiE8IDB4MDQwMDAwMDAgKi8NCiNkZWZpbmUgUlRDX0FMUk1BUl9EVV8zICAgICAgICAgICAgICAgICAgICAgICgweDhVIDw8IFJUQ19BTFJNQVJfRFVfUG9zKSAgICAgICAvKiE8IDB4MDgwMDAwMDAgKi8NCiNkZWZpbmUgUlRDX0FMUk1BUl9NU0szX1BvcyAgICAgICAgICAgICAgICAgICgyM1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0FMUk1BUl9NU0szX01zayAgICAgICAgICAgICAgICAgICgweDFVIDw8IFJUQ19BTFJNQVJfTVNLM19Qb3MpICAgICAvKiE8IDB4MDA4MDAwMDAgKi8NCiNkZWZpbmUgUlRDX0FMUk1BUl9NU0szICAgICAgICAgICAgICAgICAgICAgIFJUQ19BTFJNQVJfTVNLM19Nc2sgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0FMUk1BUl9QTV9Qb3MgICAgICAgICAgICAgICAgICAgICgyMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0FMUk1BUl9QTV9Nc2sgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFJUQ19BTFJNQVJfUE1fUG9zKSAgICAgICAvKiE8IDB4MDA0MDAwMDAgKi8NCiNkZWZpbmUgUlRDX0FMUk1BUl9QTSAgICAgICAgICAgICAgICAgICAgICAgIFJUQ19BTFJNQVJfUE1fTXNrICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0FMUk1BUl9IVF9Qb3MgICAgICAgICAgICAgICAgICAgICgyMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0FMUk1BUl9IVF9Nc2sgICAgICAgICAgICAgICAgICAgICgweDNVIDw8IFJUQ19BTFJNQVJfSFRfUG9zKSAgICAgICAvKiE8IDB4MDAzMDAwMDAgKi8NCiNkZWZpbmUgUlRDX0FMUk1BUl9IVCAgICAgICAgICAgICAgICAgICAgICAgIFJUQ19BTFJNQVJfSFRfTXNrICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0FMUk1BUl9IVF8wICAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFJUQ19BTFJNQVJfSFRfUG9zKSAgICAgICAvKiE8IDB4MDAxMDAwMDAgKi8NCiNkZWZpbmUgUlRDX0FMUk1BUl9IVF8xICAgICAgICAgICAgICAgICAgICAgICgweDJVIDw8IFJUQ19BTFJNQVJfSFRfUG9zKSAgICAgICAvKiE8IDB4MDAyMDAwMDAgKi8NCiNkZWZpbmUgUlRDX0FMUk1BUl9IVV9Qb3MgICAgICAgICAgICAgICAgICAgICgxNlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0FMUk1BUl9IVV9Nc2sgICAgICAgICAgICAgICAgICAgICgweEZVIDw8IFJUQ19BTFJNQVJfSFVfUG9zKSAgICAgICAvKiE8IDB4MDAwRjAwMDAgKi8NCiNkZWZpbmUgUlRDX0FMUk1BUl9IVSAgICAgICAgICAgICAgICAgICAgICAgIFJUQ19BTFJNQVJfSFVfTXNrICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0FMUk1BUl9IVV8wICAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFJUQ19BTFJNQVJfSFVfUG9zKSAgICAgICAvKiE8IDB4MDAwMTAwMDAgKi8NCiNkZWZpbmUgUlRDX0FMUk1BUl9IVV8xICAgICAgICAgICAgICAgICAgICAgICgweDJVIDw8IFJUQ19BTFJNQVJfSFVfUG9zKSAgICAgICAvKiE8IDB4MDAwMjAwMDAgKi8NCiNkZWZpbmUgUlRDX0FMUk1BUl9IVV8yICAgICAgICAgICAgICAgICAgICAgICgweDRVIDw8IFJUQ19BTFJNQVJfSFVfUG9zKSAgICAgICAvKiE8IDB4MDAwNDAwMDAgKi8NCiNkZWZpbmUgUlRDX0FMUk1BUl9IVV8zICAgICAgICAgICAgICAgICAgICAgICgweDhVIDw8IFJUQ19BTFJNQVJfSFVfUG9zKSAgICAgICAvKiE8IDB4MDAwODAwMDAgKi8NCiNkZWZpbmUgUlRDX0FMUk1BUl9NU0syX1BvcyAgICAgICAgICAgICAgICAgICgxNVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0FMUk1BUl9NU0syX01zayAgICAgICAgICAgICAgICAgICgweDFVIDw8IFJUQ19BTFJNQVJfTVNLMl9Qb3MpICAgICAvKiE8IDB4MDAwMDgwMDAgKi8NCiNkZWZpbmUgUlRDX0FMUk1BUl9NU0syICAgICAgICAgICAgICAgICAgICAgIFJUQ19BTFJNQVJfTVNLMl9Nc2sgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0FMUk1BUl9NTlRfUG9zICAgICAgICAgICAgICAgICAgICgxMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0FMUk1BUl9NTlRfTXNrICAgICAgICAgICAgICAgICAgICgweDdVIDw8IFJUQ19BTFJNQVJfTU5UX1BvcykgICAgICAvKiE8IDB4MDAwMDcwMDAgKi8NCiNkZWZpbmUgUlRDX0FMUk1BUl9NTlQgICAgICAgICAgICAgICAgICAgICAgIFJUQ19BTFJNQVJfTU5UX01zayAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0FMUk1BUl9NTlRfMCAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFJUQ19BTFJNQVJfTU5UX1BvcykgICAgICAvKiE8IDB4MDAwMDEwMDAgKi8NCiNkZWZpbmUgUlRDX0FMUk1BUl9NTlRfMSAgICAgICAgICAgICAgICAgICAgICgweDJVIDw8IFJUQ19BTFJNQVJfTU5UX1BvcykgICAgICAvKiE8IDB4MDAwMDIwMDAgKi8NCiNkZWZpbmUgUlRDX0FMUk1BUl9NTlRfMiAgICAgICAgICAgICAgICAgICAgICgweDRVIDw8IFJUQ19BTFJNQVJfTU5UX1BvcykgICAgICAvKiE8IDB4MDAwMDQwMDAgKi8NCiNkZWZpbmUgUlRDX0FMUk1BUl9NTlVfUG9zICAgICAgICAgICAgICAgICAgICg4VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0FMUk1BUl9NTlVfTXNrICAgICAgICAgICAgICAgICAgICgweEZVIDw8IFJUQ19BTFJNQVJfTU5VX1BvcykgICAgICAvKiE8IDB4MDAwMDBGMDAgKi8NCiNkZWZpbmUgUlRDX0FMUk1BUl9NTlUgICAgICAgICAgICAgICAgICAgICAgIFJUQ19BTFJNQVJfTU5VX01zayAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0FMUk1BUl9NTlVfMCAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFJUQ19BTFJNQVJfTU5VX1BvcykgICAgICAvKiE8IDB4MDAwMDAxMDAgKi8NCiNkZWZpbmUgUlRDX0FMUk1BUl9NTlVfMSAgICAgICAgICAgICAgICAgICAgICgweDJVIDw8IFJUQ19BTFJNQVJfTU5VX1BvcykgICAgICAvKiE8IDB4MDAwMDAyMDAgKi8NCiNkZWZpbmUgUlRDX0FMUk1BUl9NTlVfMiAgICAgICAgICAgICAgICAgICAgICgweDRVIDw8IFJUQ19BTFJNQVJfTU5VX1BvcykgICAgICAvKiE8IDB4MDAwMDA0MDAgKi8NCiNkZWZpbmUgUlRDX0FMUk1BUl9NTlVfMyAgICAgICAgICAgICAgICAgICAgICgweDhVIDw8IFJUQ19BTFJNQVJfTU5VX1BvcykgICAgICAvKiE8IDB4MDAwMDA4MDAgKi8NCiNkZWZpbmUgUlRDX0FMUk1BUl9NU0sxX1BvcyAgICAgICAgICAgICAgICAgICg3VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0FMUk1BUl9NU0sxX01zayAgICAgICAgICAgICAgICAgICgweDFVIDw8IFJUQ19BTFJNQVJfTVNLMV9Qb3MpICAgICAvKiE8IDB4MDAwMDAwODAgKi8NCiNkZWZpbmUgUlRDX0FMUk1BUl9NU0sxICAgICAgICAgICAgICAgICAgICAgIFJUQ19BTFJNQVJfTVNLMV9Nc2sgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0FMUk1BUl9TVF9Qb3MgICAgICAgICAgICAgICAgICAgICg0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0FMUk1BUl9TVF9Nc2sgICAgICAgICAgICAgICAgICAgICgweDdVIDw8IFJUQ19BTFJNQVJfU1RfUG9zKSAgICAgICAvKiE8IDB4MDAwMDAwNzAgKi8NCiNkZWZpbmUgUlRDX0FMUk1BUl9TVCAgICAgICAgICAgICAgICAgICAgICAgIFJUQ19BTFJNQVJfU1RfTXNrICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0FMUk1BUl9TVF8wICAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFJUQ19BTFJNQVJfU1RfUG9zKSAgICAgICAvKiE8IDB4MDAwMDAwMTAgKi8NCiNkZWZpbmUgUlRDX0FMUk1BUl9TVF8xICAgICAgICAgICAgICAgICAgICAgICgweDJVIDw8IFJUQ19BTFJNQVJfU1RfUG9zKSAgICAgICAvKiE8IDB4MDAwMDAwMjAgKi8NCiNkZWZpbmUgUlRDX0FMUk1BUl9TVF8yICAgICAgICAgICAgICAgICAgICAgICgweDRVIDw8IFJUQ19BTFJNQVJfU1RfUG9zKSAgICAgICAvKiE8IDB4MDAwMDAwNDAgKi8NCiNkZWZpbmUgUlRDX0FMUk1BUl9TVV9Qb3MgICAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0FMUk1BUl9TVV9Nc2sgICAgICAgICAgICAgICAgICAgICgweEZVIDw8IFJUQ19BTFJNQVJfU1VfUG9zKSAgICAgICAvKiE8IDB4MDAwMDAwMEYgKi8NCiNkZWZpbmUgUlRDX0FMUk1BUl9TVSAgICAgICAgICAgICAgICAgICAgICAgIFJUQ19BTFJNQVJfU1VfTXNrICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0FMUk1BUl9TVV8wICAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFJUQ19BTFJNQVJfU1VfUG9zKSAgICAgICAvKiE8IDB4MDAwMDAwMDEgKi8NCiNkZWZpbmUgUlRDX0FMUk1BUl9TVV8xICAgICAgICAgICAgICAgICAgICAgICgweDJVIDw8IFJUQ19BTFJNQVJfU1VfUG9zKSAgICAgICAvKiE8IDB4MDAwMDAwMDIgKi8NCiNkZWZpbmUgUlRDX0FMUk1BUl9TVV8yICAgICAgICAgICAgICAgICAgICAgICgweDRVIDw8IFJUQ19BTFJNQVJfU1VfUG9zKSAgICAgICAvKiE8IDB4MDAwMDAwMDQgKi8NCiNkZWZpbmUgUlRDX0FMUk1BUl9TVV8zICAgICAgICAgICAgICAgICAgICAgICgweDhVIDw8IFJUQ19BTFJNQVJfU1VfUG9zKSAgICAgICAvKiE8IDB4MDAwMDAwMDggKi8NCg0KLyoqKioqKioqKioqKioqKioqKioqICBCaXRzIGRlZmluaXRpb24gZm9yIFJUQ19BTFJNQlIgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKi8NCiNkZWZpbmUgUlRDX0FMUk1CUl9NU0s0X1BvcyAgICAgICAgICAgICAgICAgICgzMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0FMUk1CUl9NU0s0X01zayAgICAgICAgICAgICAgICAgICgweDFVIDw8IFJUQ19BTFJNQlJfTVNLNF9Qb3MpICAgICAvKiE8IDB4ODAwMDAwMDAgKi8NCiNkZWZpbmUgUlRDX0FMUk1CUl9NU0s0ICAgICAgICAgICAgICAgICAgICAgIFJUQ19BTFJNQlJfTVNLNF9Nc2sgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0FMUk1CUl9XRFNFTF9Qb3MgICAgICAgICAgICAgICAgICgzMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0FMUk1CUl9XRFNFTF9Nc2sgICAgICAgICAgICAgICAgICgweDFVIDw8IFJUQ19BTFJNQlJfV0RTRUxfUG9zKSAgICAvKiE8IDB4NDAwMDAwMDAgKi8NCiNkZWZpbmUgUlRDX0FMUk1CUl9XRFNFTCAgICAgICAgICAgICAgICAgICAgIFJUQ19BTFJNQlJfV0RTRUxfTXNrICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0FMUk1CUl9EVF9Qb3MgICAgICAgICAgICAgICAgICAgICgyOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0FMUk1CUl9EVF9Nc2sgICAgICAgICAgICAgICAgICAgICgweDNVIDw8IFJUQ19BTFJNQlJfRFRfUG9zKSAgICAgICAvKiE8IDB4MzAwMDAwMDAgKi8NCiNkZWZpbmUgUlRDX0FMUk1CUl9EVCAgICAgICAgICAgICAgICAgICAgICAgIFJUQ19BTFJNQlJfRFRfTXNrICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0FMUk1CUl9EVF8wICAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFJUQ19BTFJNQlJfRFRfUG9zKSAgICAgICAvKiE8IDB4MTAwMDAwMDAgKi8NCiNkZWZpbmUgUlRDX0FMUk1CUl9EVF8xICAgICAgICAgICAgICAgICAgICAgICgweDJVIDw8IFJUQ19BTFJNQlJfRFRfUG9zKSAgICAgICAvKiE8IDB4MjAwMDAwMDAgKi8NCiNkZWZpbmUgUlRDX0FMUk1CUl9EVV9Qb3MgICAgICAgICAgICAgICAgICAgICgyNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0FMUk1CUl9EVV9Nc2sgICAgICAgICAgICAgICAgICAgICgweEZVIDw8IFJUQ19BTFJNQlJfRFVfUG9zKSAgICAgICAvKiE8IDB4MEYwMDAwMDAgKi8NCiNkZWZpbmUgUlRDX0FMUk1CUl9EVSAgICAgICAgICAgICAgICAgICAgICAgIFJUQ19BTFJNQlJfRFVfTXNrICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0FMUk1CUl9EVV8wICAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFJUQ19BTFJNQlJfRFVfUG9zKSAgICAgICAvKiE8IDB4MDEwMDAwMDAgKi8NCiNkZWZpbmUgUlRDX0FMUk1CUl9EVV8xICAgICAgICAgICAgICAgICAgICAgICgweDJVIDw8IFJUQ19BTFJNQlJfRFVfUG9zKSAgICAgICAvKiE8IDB4MDIwMDAwMDAgKi8NCiNkZWZpbmUgUlRDX0FMUk1CUl9EVV8yICAgICAgICAgICAgICAgICAgICAgICgweDRVIDw8IFJUQ19BTFJNQlJfRFVfUG9zKSAgICAgICAvKiE8IDB4MDQwMDAwMDAgKi8NCiNkZWZpbmUgUlRDX0FMUk1CUl9EVV8zICAgICAgICAgICAgICAgICAgICAgICgweDhVIDw8IFJUQ19BTFJNQlJfRFVfUG9zKSAgICAgICAvKiE8IDB4MDgwMDAwMDAgKi8NCiNkZWZpbmUgUlRDX0FMUk1CUl9NU0szX1BvcyAgICAgICAgICAgICAgICAgICgyM1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0FMUk1CUl9NU0szX01zayAgICAgICAgICAgICAgICAgICgweDFVIDw8IFJUQ19BTFJNQlJfTVNLM19Qb3MpICAgICAvKiE8IDB4MDA4MDAwMDAgKi8NCiNkZWZpbmUgUlRDX0FMUk1CUl9NU0szICAgICAgICAgICAgICAgICAgICAgIFJUQ19BTFJNQlJfTVNLM19Nc2sgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0FMUk1CUl9QTV9Qb3MgICAgICAgICAgICAgICAgICAgICgyMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0FMUk1CUl9QTV9Nc2sgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFJUQ19BTFJNQlJfUE1fUG9zKSAgICAgICAvKiE8IDB4MDA0MDAwMDAgKi8NCiNkZWZpbmUgUlRDX0FMUk1CUl9QTSAgICAgICAgICAgICAgICAgICAgICAgIFJUQ19BTFJNQlJfUE1fTXNrICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0FMUk1CUl9IVF9Qb3MgICAgICAgICAgICAgICAgICAgICgyMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0FMUk1CUl9IVF9Nc2sgICAgICAgICAgICAgICAgICAgICgweDNVIDw8IFJUQ19BTFJNQlJfSFRfUG9zKSAgICAgICAvKiE8IDB4MDAzMDAwMDAgKi8NCiNkZWZpbmUgUlRDX0FMUk1CUl9IVCAgICAgICAgICAgICAgICAgICAgICAgIFJUQ19BTFJNQlJfSFRfTXNrICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0FMUk1CUl9IVF8wICAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFJUQ19BTFJNQlJfSFRfUG9zKSAgICAgICAvKiE8IDB4MDAxMDAwMDAgKi8NCiNkZWZpbmUgUlRDX0FMUk1CUl9IVF8xICAgICAgICAgICAgICAgICAgICAgICgweDJVIDw8IFJUQ19BTFJNQlJfSFRfUG9zKSAgICAgICAvKiE8IDB4MDAyMDAwMDAgKi8NCiNkZWZpbmUgUlRDX0FMUk1CUl9IVV9Qb3MgICAgICAgICAgICAgICAgICAgICgxNlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0FMUk1CUl9IVV9Nc2sgICAgICAgICAgICAgICAgICAgICgweEZVIDw8IFJUQ19BTFJNQlJfSFVfUG9zKSAgICAgICAvKiE8IDB4MDAwRjAwMDAgKi8NCiNkZWZpbmUgUlRDX0FMUk1CUl9IVSAgICAgICAgICAgICAgICAgICAgICAgIFJUQ19BTFJNQlJfSFVfTXNrICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0FMUk1CUl9IVV8wICAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFJUQ19BTFJNQlJfSFVfUG9zKSAgICAgICAvKiE8IDB4MDAwMTAwMDAgKi8NCiNkZWZpbmUgUlRDX0FMUk1CUl9IVV8xICAgICAgICAgICAgICAgICAgICAgICgweDJVIDw8IFJUQ19BTFJNQlJfSFVfUG9zKSAgICAgICAvKiE8IDB4MDAwMjAwMDAgKi8NCiNkZWZpbmUgUlRDX0FMUk1CUl9IVV8yICAgICAgICAgICAgICAgICAgICAgICgweDRVIDw8IFJUQ19BTFJNQlJfSFVfUG9zKSAgICAgICAvKiE8IDB4MDAwNDAwMDAgKi8NCiNkZWZpbmUgUlRDX0FMUk1CUl9IVV8zICAgICAgICAgICAgICAgICAgICAgICgweDhVIDw8IFJUQ19BTFJNQlJfSFVfUG9zKSAgICAgICAvKiE8IDB4MDAwODAwMDAgKi8NCiNkZWZpbmUgUlRDX0FMUk1CUl9NU0syX1BvcyAgICAgICAgICAgICAgICAgICgxNVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0FMUk1CUl9NU0syX01zayAgICAgICAgICAgICAgICAgICgweDFVIDw8IFJUQ19BTFJNQlJfTVNLMl9Qb3MpICAgICAvKiE8IDB4MDAwMDgwMDAgKi8NCiNkZWZpbmUgUlRDX0FMUk1CUl9NU0syICAgICAgICAgICAgICAgICAgICAgIFJUQ19BTFJNQlJfTVNLMl9Nc2sgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0FMUk1CUl9NTlRfUG9zICAgICAgICAgICAgICAgICAgICgxMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0FMUk1CUl9NTlRfTXNrICAgICAgICAgICAgICAgICAgICgweDdVIDw8IFJUQ19BTFJNQlJfTU5UX1BvcykgICAgICAvKiE8IDB4MDAwMDcwMDAgKi8NCiNkZWZpbmUgUlRDX0FMUk1CUl9NTlQgICAgICAgICAgICAgICAgICAgICAgIFJUQ19BTFJNQlJfTU5UX01zayAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0FMUk1CUl9NTlRfMCAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFJUQ19BTFJNQlJfTU5UX1BvcykgICAgICAvKiE8IDB4MDAwMDEwMDAgKi8NCiNkZWZpbmUgUlRDX0FMUk1CUl9NTlRfMSAgICAgICAgICAgICAgICAgICAgICgweDJVIDw8IFJUQ19BTFJNQlJfTU5UX1BvcykgICAgICAvKiE8IDB4MDAwMDIwMDAgKi8NCiNkZWZpbmUgUlRDX0FMUk1CUl9NTlRfMiAgICAgICAgICAgICAgICAgICAgICgweDRVIDw8IFJUQ19BTFJNQlJfTU5UX1BvcykgICAgICAvKiE8IDB4MDAwMDQwMDAgKi8NCiNkZWZpbmUgUlRDX0FMUk1CUl9NTlVfUG9zICAgICAgICAgICAgICAgICAgICg4VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0FMUk1CUl9NTlVfTXNrICAgICAgICAgICAgICAgICAgICgweEZVIDw8IFJUQ19BTFJNQlJfTU5VX1BvcykgICAgICAvKiE8IDB4MDAwMDBGMDAgKi8NCiNkZWZpbmUgUlRDX0FMUk1CUl9NTlUgICAgICAgICAgICAgICAgICAgICAgIFJUQ19BTFJNQlJfTU5VX01zayAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0FMUk1CUl9NTlVfMCAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFJUQ19BTFJNQlJfTU5VX1BvcykgICAgICAvKiE8IDB4MDAwMDAxMDAgKi8NCiNkZWZpbmUgUlRDX0FMUk1CUl9NTlVfMSAgICAgICAgICAgICAgICAgICAgICgweDJVIDw8IFJUQ19BTFJNQlJfTU5VX1BvcykgICAgICAvKiE8IDB4MDAwMDAyMDAgKi8NCiNkZWZpbmUgUlRDX0FMUk1CUl9NTlVfMiAgICAgICAgICAgICAgICAgICAgICgweDRVIDw8IFJUQ19BTFJNQlJfTU5VX1BvcykgICAgICAvKiE8IDB4MDAwMDA0MDAgKi8NCiNkZWZpbmUgUlRDX0FMUk1CUl9NTlVfMyAgICAgICAgICAgICAgICAgICAgICgweDhVIDw8IFJUQ19BTFJNQlJfTU5VX1BvcykgICAgICAvKiE8IDB4MDAwMDA4MDAgKi8NCiNkZWZpbmUgUlRDX0FMUk1CUl9NU0sxX1BvcyAgICAgICAgICAgICAgICAgICg3VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0FMUk1CUl9NU0sxX01zayAgICAgICAgICAgICAgICAgICgweDFVIDw8IFJUQ19BTFJNQlJfTVNLMV9Qb3MpICAgICAvKiE8IDB4MDAwMDAwODAgKi8NCiNkZWZpbmUgUlRDX0FMUk1CUl9NU0sxICAgICAgICAgICAgICAgICAgICAgIFJUQ19BTFJNQlJfTVNLMV9Nc2sgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0FMUk1CUl9TVF9Qb3MgICAgICAgICAgICAgICAgICAgICg0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0FMUk1CUl9TVF9Nc2sgICAgICAgICAgICAgICAgICAgICgweDdVIDw8IFJUQ19BTFJNQlJfU1RfUG9zKSAgICAgICAvKiE8IDB4MDAwMDAwNzAgKi8NCiNkZWZpbmUgUlRDX0FMUk1CUl9TVCAgICAgICAgICAgICAgICAgICAgICAgIFJUQ19BTFJNQlJfU1RfTXNrICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0FMUk1CUl9TVF8wICAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFJUQ19BTFJNQlJfU1RfUG9zKSAgICAgICAvKiE8IDB4MDAwMDAwMTAgKi8NCiNkZWZpbmUgUlRDX0FMUk1CUl9TVF8xICAgICAgICAgICAgICAgICAgICAgICgweDJVIDw8IFJUQ19BTFJNQlJfU1RfUG9zKSAgICAgICAvKiE8IDB4MDAwMDAwMjAgKi8NCiNkZWZpbmUgUlRDX0FMUk1CUl9TVF8yICAgICAgICAgICAgICAgICAgICAgICgweDRVIDw8IFJUQ19BTFJNQlJfU1RfUG9zKSAgICAgICAvKiE8IDB4MDAwMDAwNDAgKi8NCiNkZWZpbmUgUlRDX0FMUk1CUl9TVV9Qb3MgICAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0FMUk1CUl9TVV9Nc2sgICAgICAgICAgICAgICAgICAgICgweEZVIDw8IFJUQ19BTFJNQlJfU1VfUG9zKSAgICAgICAvKiE8IDB4MDAwMDAwMEYgKi8NCiNkZWZpbmUgUlRDX0FMUk1CUl9TVSAgICAgICAgICAgICAgICAgICAgICAgIFJUQ19BTFJNQlJfU1VfTXNrICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0FMUk1CUl9TVV8wICAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFJUQ19BTFJNQlJfU1VfUG9zKSAgICAgICAvKiE8IDB4MDAwMDAwMDEgKi8NCiNkZWZpbmUgUlRDX0FMUk1CUl9TVV8xICAgICAgICAgICAgICAgICAgICAgICgweDJVIDw8IFJUQ19BTFJNQlJfU1VfUG9zKSAgICAgICAvKiE8IDB4MDAwMDAwMDIgKi8NCiNkZWZpbmUgUlRDX0FMUk1CUl9TVV8yICAgICAgICAgICAgICAgICAgICAgICgweDRVIDw8IFJUQ19BTFJNQlJfU1VfUG9zKSAgICAgICAvKiE8IDB4MDAwMDAwMDQgKi8NCiNkZWZpbmUgUlRDX0FMUk1CUl9TVV8zICAgICAgICAgICAgICAgICAgICAgICgweDhVIDw8IFJUQ19BTFJNQlJfU1VfUG9zKSAgICAgICAvKiE8IDB4MDAwMDAwMDggKi8NCg0KLyoqKioqKioqKioqKioqKioqKioqICBCaXRzIGRlZmluaXRpb24gZm9yIFJUQ19XUFIgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgUlRDX1dQUl9LRVlfUG9zICAgICAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX1dQUl9LRVlfTXNrICAgICAgICAgICAgICAgICAgICAgICgweEZGVSA8PCBSVENfV1BSX0tFWV9Qb3MpICAgICAgICAvKiE8IDB4MDAwMDAwRkYgKi8NCiNkZWZpbmUgUlRDX1dQUl9LRVkgICAgICAgICAgICAgICAgICAgICAgICAgIFJUQ19XUFJfS0VZX01zayAgICAgICAgICAgICAgICAgICANCg0KLyoqKioqKioqKioqKioqKioqKioqICBCaXRzIGRlZmluaXRpb24gZm9yIFJUQ19TU1IgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgUlRDX1NTUl9TU19Qb3MgICAgICAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX1NTUl9TU19Nc2sgICAgICAgICAgICAgICAgICAgICAgICgweEZGRkZVIDw8IFJUQ19TU1JfU1NfUG9zKSAgICAgICAvKiE8IDB4MDAwMEZGRkYgKi8NCiNkZWZpbmUgUlRDX1NTUl9TUyAgICAgICAgICAgICAgICAgICAgICAgICAgIFJUQ19TU1JfU1NfTXNrICAgICAgICAgICAgICAgICAgICANCg0KLyoqKioqKioqKioqKioqKioqKioqICBCaXRzIGRlZmluaXRpb24gZm9yIFJUQ19TSElGVFIgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKi8NCiNkZWZpbmUgUlRDX1NISUZUUl9TVUJGU19Qb3MgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX1NISUZUUl9TVUJGU19Nc2sgICAgICAgICAgICAgICAgICgweDdGRkZVIDw8IFJUQ19TSElGVFJfU1VCRlNfUG9zKSAvKiE8IDB4MDAwMDdGRkYgKi8NCiNkZWZpbmUgUlRDX1NISUZUUl9TVUJGUyAgICAgICAgICAgICAgICAgICAgIFJUQ19TSElGVFJfU1VCRlNfTXNrICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX1NISUZUUl9BREQxU19Qb3MgICAgICAgICAgICAgICAgICgzMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX1NISUZUUl9BREQxU19Nc2sgICAgICAgICAgICAgICAgICgweDFVIDw8IFJUQ19TSElGVFJfQUREMVNfUG9zKSAgICAvKiE8IDB4ODAwMDAwMDAgKi8NCiNkZWZpbmUgUlRDX1NISUZUUl9BREQxUyAgICAgICAgICAgICAgICAgICAgIFJUQ19TSElGVFJfQUREMVNfTXNrICAgICAgICAgICAgICANCg0KLyoqKioqKioqKioqKioqKioqKioqICBCaXRzIGRlZmluaXRpb24gZm9yIFJUQ19UU1RSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgUlRDX1RTVFJfUE1fUG9zICAgICAgICAgICAgICAgICAgICAgICgyMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX1RTVFJfUE1fTXNrICAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFJUQ19UU1RSX1BNX1BvcykgICAgICAgICAvKiE8IDB4MDA0MDAwMDAgKi8NCiNkZWZpbmUgUlRDX1RTVFJfUE0gICAgICAgICAgICAgICAgICAgICAgICAgIFJUQ19UU1RSX1BNX01zayAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX1RTVFJfSFRfUG9zICAgICAgICAgICAgICAgICAgICAgICgyMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX1RTVFJfSFRfTXNrICAgICAgICAgICAgICAgICAgICAgICgweDNVIDw8IFJUQ19UU1RSX0hUX1BvcykgICAgICAgICAvKiE8IDB4MDAzMDAwMDAgKi8NCiNkZWZpbmUgUlRDX1RTVFJfSFQgICAgICAgICAgICAgICAgICAgICAgICAgIFJUQ19UU1RSX0hUX01zayAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX1RTVFJfSFRfMCAgICAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFJUQ19UU1RSX0hUX1BvcykgICAgICAgICAvKiE8IDB4MDAxMDAwMDAgKi8NCiNkZWZpbmUgUlRDX1RTVFJfSFRfMSAgICAgICAgICAgICAgICAgICAgICAgICgweDJVIDw8IFJUQ19UU1RSX0hUX1BvcykgICAgICAgICAvKiE8IDB4MDAyMDAwMDAgKi8NCiNkZWZpbmUgUlRDX1RTVFJfSFVfUG9zICAgICAgICAgICAgICAgICAgICAgICgxNlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX1RTVFJfSFVfTXNrICAgICAgICAgICAgICAgICAgICAgICgweEZVIDw8IFJUQ19UU1RSX0hVX1BvcykgICAgICAgICAvKiE8IDB4MDAwRjAwMDAgKi8NCiNkZWZpbmUgUlRDX1RTVFJfSFUgICAgICAgICAgICAgICAgICAgICAgICAgIFJUQ19UU1RSX0hVX01zayAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX1RTVFJfSFVfMCAgICAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFJUQ19UU1RSX0hVX1BvcykgICAgICAgICAvKiE8IDB4MDAwMTAwMDAgKi8NCiNkZWZpbmUgUlRDX1RTVFJfSFVfMSAgICAgICAgICAgICAgICAgICAgICAgICgweDJVIDw8IFJUQ19UU1RSX0hVX1BvcykgICAgICAgICAvKiE8IDB4MDAwMjAwMDAgKi8NCiNkZWZpbmUgUlRDX1RTVFJfSFVfMiAgICAgICAgICAgICAgICAgICAgICAgICgweDRVIDw8IFJUQ19UU1RSX0hVX1BvcykgICAgICAgICAvKiE8IDB4MDAwNDAwMDAgKi8NCiNkZWZpbmUgUlRDX1RTVFJfSFVfMyAgICAgICAgICAgICAgICAgICAgICAgICgweDhVIDw8IFJUQ19UU1RSX0hVX1BvcykgICAgICAgICAvKiE8IDB4MDAwODAwMDAgKi8NCiNkZWZpbmUgUlRDX1RTVFJfTU5UX1BvcyAgICAgICAgICAgICAgICAgICAgICgxMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX1RTVFJfTU5UX01zayAgICAgICAgICAgICAgICAgICAgICgweDdVIDw8IFJUQ19UU1RSX01OVF9Qb3MpICAgICAgICAvKiE8IDB4MDAwMDcwMDAgKi8NCiNkZWZpbmUgUlRDX1RTVFJfTU5UICAgICAgICAgICAgICAgICAgICAgICAgIFJUQ19UU1RSX01OVF9Nc2sgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX1RTVFJfTU5UXzAgICAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFJUQ19UU1RSX01OVF9Qb3MpICAgICAgICAvKiE8IDB4MDAwMDEwMDAgKi8NCiNkZWZpbmUgUlRDX1RTVFJfTU5UXzEgICAgICAgICAgICAgICAgICAgICAgICgweDJVIDw8IFJUQ19UU1RSX01OVF9Qb3MpICAgICAgICAvKiE8IDB4MDAwMDIwMDAgKi8NCiNkZWZpbmUgUlRDX1RTVFJfTU5UXzIgICAgICAgICAgICAgICAgICAgICAgICgweDRVIDw8IFJUQ19UU1RSX01OVF9Qb3MpICAgICAgICAvKiE8IDB4MDAwMDQwMDAgKi8NCiNkZWZpbmUgUlRDX1RTVFJfTU5VX1BvcyAgICAgICAgICAgICAgICAgICAgICg4VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX1RTVFJfTU5VX01zayAgICAgICAgICAgICAgICAgICAgICgweEZVIDw8IFJUQ19UU1RSX01OVV9Qb3MpICAgICAgICAvKiE8IDB4MDAwMDBGMDAgKi8NCiNkZWZpbmUgUlRDX1RTVFJfTU5VICAgICAgICAgICAgICAgICAgICAgICAgIFJUQ19UU1RSX01OVV9Nc2sgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX1RTVFJfTU5VXzAgICAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFJUQ19UU1RSX01OVV9Qb3MpICAgICAgICAvKiE8IDB4MDAwMDAxMDAgKi8NCiNkZWZpbmUgUlRDX1RTVFJfTU5VXzEgICAgICAgICAgICAgICAgICAgICAgICgweDJVIDw8IFJUQ19UU1RSX01OVV9Qb3MpICAgICAgICAvKiE8IDB4MDAwMDAyMDAgKi8NCiNkZWZpbmUgUlRDX1RTVFJfTU5VXzIgICAgICAgICAgICAgICAgICAgICAgICgweDRVIDw8IFJUQ19UU1RSX01OVV9Qb3MpICAgICAgICAvKiE8IDB4MDAwMDA0MDAgKi8NCiNkZWZpbmUgUlRDX1RTVFJfTU5VXzMgICAgICAgICAgICAgICAgICAgICAgICgweDhVIDw8IFJUQ19UU1RSX01OVV9Qb3MpICAgICAgICAvKiE8IDB4MDAwMDA4MDAgKi8NCiNkZWZpbmUgUlRDX1RTVFJfU1RfUG9zICAgICAgICAgICAgICAgICAgICAgICg0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX1RTVFJfU1RfTXNrICAgICAgICAgICAgICAgICAgICAgICgweDdVIDw8IFJUQ19UU1RSX1NUX1BvcykgICAgICAgICAvKiE8IDB4MDAwMDAwNzAgKi8NCiNkZWZpbmUgUlRDX1RTVFJfU1QgICAgICAgICAgICAgICAgICAgICAgICAgIFJUQ19UU1RSX1NUX01zayAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX1RTVFJfU1RfMCAgICAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFJUQ19UU1RSX1NUX1BvcykgICAgICAgICAvKiE8IDB4MDAwMDAwMTAgKi8NCiNkZWZpbmUgUlRDX1RTVFJfU1RfMSAgICAgICAgICAgICAgICAgICAgICAgICgweDJVIDw8IFJUQ19UU1RSX1NUX1BvcykgICAgICAgICAvKiE8IDB4MDAwMDAwMjAgKi8NCiNkZWZpbmUgUlRDX1RTVFJfU1RfMiAgICAgICAgICAgICAgICAgICAgICAgICgweDRVIDw8IFJUQ19UU1RSX1NUX1BvcykgICAgICAgICAvKiE8IDB4MDAwMDAwNDAgKi8NCiNkZWZpbmUgUlRDX1RTVFJfU1VfUG9zICAgICAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX1RTVFJfU1VfTXNrICAgICAgICAgICAgICAgICAgICAgICgweEZVIDw8IFJUQ19UU1RSX1NVX1BvcykgICAgICAgICAvKiE8IDB4MDAwMDAwMEYgKi8NCiNkZWZpbmUgUlRDX1RTVFJfU1UgICAgICAgICAgICAgICAgICAgICAgICAgIFJUQ19UU1RSX1NVX01zayAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX1RTVFJfU1VfMCAgICAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFJUQ19UU1RSX1NVX1BvcykgICAgICAgICAvKiE8IDB4MDAwMDAwMDEgKi8NCiNkZWZpbmUgUlRDX1RTVFJfU1VfMSAgICAgICAgICAgICAgICAgICAgICAgICgweDJVIDw8IFJUQ19UU1RSX1NVX1BvcykgICAgICAgICAvKiE8IDB4MDAwMDAwMDIgKi8NCiNkZWZpbmUgUlRDX1RTVFJfU1VfMiAgICAgICAgICAgICAgICAgICAgICAgICgweDRVIDw8IFJUQ19UU1RSX1NVX1BvcykgICAgICAgICAvKiE8IDB4MDAwMDAwMDQgKi8NCiNkZWZpbmUgUlRDX1RTVFJfU1VfMyAgICAgICAgICAgICAgICAgICAgICAgICgweDhVIDw8IFJUQ19UU1RSX1NVX1BvcykgICAgICAgICAvKiE8IDB4MDAwMDAwMDggKi8NCg0KLyoqKioqKioqKioqKioqKioqKioqICBCaXRzIGRlZmluaXRpb24gZm9yIFJUQ19UU0RSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgUlRDX1RTRFJfV0RVX1BvcyAgICAgICAgICAgICAgICAgICAgICgxM1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX1RTRFJfV0RVX01zayAgICAgICAgICAgICAgICAgICAgICgweDdVIDw8IFJUQ19UU0RSX1dEVV9Qb3MpICAgICAgICAvKiE8IDB4MDAwMEUwMDAgKi8NCiNkZWZpbmUgUlRDX1RTRFJfV0RVICAgICAgICAgICAgICAgICAgICAgICAgIFJUQ19UU0RSX1dEVV9Nc2sgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX1RTRFJfV0RVXzAgICAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFJUQ19UU0RSX1dEVV9Qb3MpICAgICAgICAvKiE8IDB4MDAwMDIwMDAgKi8NCiNkZWZpbmUgUlRDX1RTRFJfV0RVXzEgICAgICAgICAgICAgICAgICAgICAgICgweDJVIDw8IFJUQ19UU0RSX1dEVV9Qb3MpICAgICAgICAvKiE8IDB4MDAwMDQwMDAgKi8NCiNkZWZpbmUgUlRDX1RTRFJfV0RVXzIgICAgICAgICAgICAgICAgICAgICAgICgweDRVIDw8IFJUQ19UU0RSX1dEVV9Qb3MpICAgICAgICAvKiE8IDB4MDAwMDgwMDAgKi8NCiNkZWZpbmUgUlRDX1RTRFJfTVRfUG9zICAgICAgICAgICAgICAgICAgICAgICgxMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX1RTRFJfTVRfTXNrICAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFJUQ19UU0RSX01UX1BvcykgICAgICAgICAvKiE8IDB4MDAwMDEwMDAgKi8NCiNkZWZpbmUgUlRDX1RTRFJfTVQgICAgICAgICAgICAgICAgICAgICAgICAgIFJUQ19UU0RSX01UX01zayAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX1RTRFJfTVVfUG9zICAgICAgICAgICAgICAgICAgICAgICg4VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX1RTRFJfTVVfTXNrICAgICAgICAgICAgICAgICAgICAgICgweEZVIDw8IFJUQ19UU0RSX01VX1BvcykgICAgICAgICAvKiE8IDB4MDAwMDBGMDAgKi8NCiNkZWZpbmUgUlRDX1RTRFJfTVUgICAgICAgICAgICAgICAgICAgICAgICAgIFJUQ19UU0RSX01VX01zayAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX1RTRFJfTVVfMCAgICAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFJUQ19UU0RSX01VX1BvcykgICAgICAgICAvKiE8IDB4MDAwMDAxMDAgKi8NCiNkZWZpbmUgUlRDX1RTRFJfTVVfMSAgICAgICAgICAgICAgICAgICAgICAgICgweDJVIDw8IFJUQ19UU0RSX01VX1BvcykgICAgICAgICAvKiE8IDB4MDAwMDAyMDAgKi8NCiNkZWZpbmUgUlRDX1RTRFJfTVVfMiAgICAgICAgICAgICAgICAgICAgICAgICgweDRVIDw8IFJUQ19UU0RSX01VX1BvcykgICAgICAgICAvKiE8IDB4MDAwMDA0MDAgKi8NCiNkZWZpbmUgUlRDX1RTRFJfTVVfMyAgICAgICAgICAgICAgICAgICAgICAgICgweDhVIDw8IFJUQ19UU0RSX01VX1BvcykgICAgICAgICAvKiE8IDB4MDAwMDA4MDAgKi8NCiNkZWZpbmUgUlRDX1RTRFJfRFRfUG9zICAgICAgICAgICAgICAgICAgICAgICg0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX1RTRFJfRFRfTXNrICAgICAgICAgICAgICAgICAgICAgICgweDNVIDw8IFJUQ19UU0RSX0RUX1BvcykgICAgICAgICAvKiE8IDB4MDAwMDAwMzAgKi8NCiNkZWZpbmUgUlRDX1RTRFJfRFQgICAgICAgICAgICAgICAgICAgICAgICAgIFJUQ19UU0RSX0RUX01zayAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX1RTRFJfRFRfMCAgICAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFJUQ19UU0RSX0RUX1BvcykgICAgICAgICAvKiE8IDB4MDAwMDAwMTAgKi8NCiNkZWZpbmUgUlRDX1RTRFJfRFRfMSAgICAgICAgICAgICAgICAgICAgICAgICgweDJVIDw8IFJUQ19UU0RSX0RUX1BvcykgICAgICAgICAvKiE8IDB4MDAwMDAwMjAgKi8NCiNkZWZpbmUgUlRDX1RTRFJfRFVfUG9zICAgICAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX1RTRFJfRFVfTXNrICAgICAgICAgICAgICAgICAgICAgICgweEZVIDw8IFJUQ19UU0RSX0RVX1BvcykgICAgICAgICAvKiE8IDB4MDAwMDAwMEYgKi8NCiNkZWZpbmUgUlRDX1RTRFJfRFUgICAgICAgICAgICAgICAgICAgICAgICAgIFJUQ19UU0RSX0RVX01zayAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX1RTRFJfRFVfMCAgICAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFJUQ19UU0RSX0RVX1BvcykgICAgICAgICAvKiE8IDB4MDAwMDAwMDEgKi8NCiNkZWZpbmUgUlRDX1RTRFJfRFVfMSAgICAgICAgICAgICAgICAgICAgICAgICgweDJVIDw8IFJUQ19UU0RSX0RVX1BvcykgICAgICAgICAvKiE8IDB4MDAwMDAwMDIgKi8NCiNkZWZpbmUgUlRDX1RTRFJfRFVfMiAgICAgICAgICAgICAgICAgICAgICAgICgweDRVIDw8IFJUQ19UU0RSX0RVX1BvcykgICAgICAgICAvKiE8IDB4MDAwMDAwMDQgKi8NCiNkZWZpbmUgUlRDX1RTRFJfRFVfMyAgICAgICAgICAgICAgICAgICAgICAgICgweDhVIDw8IFJUQ19UU0RSX0RVX1BvcykgICAgICAgICAvKiE8IDB4MDAwMDAwMDggKi8NCg0KLyoqKioqKioqKioqKioqKioqKioqICBCaXRzIGRlZmluaXRpb24gZm9yIFJUQ19UU1NTUiByZWdpc3RlciAgKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgUlRDX1RTU1NSX1NTX1BvcyAgICAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX1RTU1NSX1NTX01zayAgICAgICAgICAgICAgICAgICAgICgweEZGRkZVIDw8IFJUQ19UU1NTUl9TU19Qb3MpICAgICAvKiE8IDB4MDAwMEZGRkYgKi8NCiNkZWZpbmUgUlRDX1RTU1NSX1NTICAgICAgICAgICAgICAgICAgICAgICAgIFJUQ19UU1NTUl9TU19Nc2sgICAgICAgICAgICAgICAgICANCg0KLyoqKioqKioqKioqKioqKioqKioqICBCaXRzIGRlZmluaXRpb24gZm9yIFJUQ19DQUwgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBSVENfQ0FMUl9DQUxQX1BvcyAgICAgICAgICAgICAgICAgICAgKDE1VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfQ0FMUl9DQUxQX01zayAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgUlRDX0NBTFJfQ0FMUF9Qb3MpICAgICAgIC8qITwgMHgwMDAwODAwMCAqLw0KI2RlZmluZSBSVENfQ0FMUl9DQUxQICAgICAgICAgICAgICAgICAgICAgICAgUlRDX0NBTFJfQ0FMUF9Nc2sgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfQ0FMUl9DQUxXOF9Qb3MgICAgICAgICAgICAgICAgICAgKDE0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfQ0FMUl9DQUxXOF9Nc2sgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgUlRDX0NBTFJfQ0FMVzhfUG9zKSAgICAgIC8qITwgMHgwMDAwNDAwMCAqLw0KI2RlZmluZSBSVENfQ0FMUl9DQUxXOCAgICAgICAgICAgICAgICAgICAgICAgUlRDX0NBTFJfQ0FMVzhfTXNrICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfQ0FMUl9DQUxXMTZfUG9zICAgICAgICAgICAgICAgICAgKDEzVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfQ0FMUl9DQUxXMTZfTXNrICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgUlRDX0NBTFJfQ0FMVzE2X1BvcykgICAgIC8qITwgMHgwMDAwMjAwMCAqLw0KI2RlZmluZSBSVENfQ0FMUl9DQUxXMTYgICAgICAgICAgICAgICAgICAgICAgUlRDX0NBTFJfQ0FMVzE2X01zayAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfQ0FMUl9DQUxNX1BvcyAgICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfQ0FMUl9DQUxNX01zayAgICAgICAgICAgICAgICAgICAgKDB4MUZGVSA8PCBSVENfQ0FMUl9DQUxNX1BvcykgICAgIC8qITwgMHgwMDAwMDFGRiAqLw0KI2RlZmluZSBSVENfQ0FMUl9DQUxNICAgICAgICAgICAgICAgICAgICAgICAgUlRDX0NBTFJfQ0FMTV9Nc2sgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfQ0FMUl9DQUxNXzAgICAgICAgICAgICAgICAgICAgICAgKDB4MDAxVSA8PCBSVENfQ0FMUl9DQUxNX1BvcykgICAgIC8qITwgMHgwMDAwMDAwMSAqLw0KI2RlZmluZSBSVENfQ0FMUl9DQUxNXzEgICAgICAgICAgICAgICAgICAgICAgKDB4MDAyVSA8PCBSVENfQ0FMUl9DQUxNX1BvcykgICAgIC8qITwgMHgwMDAwMDAwMiAqLw0KI2RlZmluZSBSVENfQ0FMUl9DQUxNXzIgICAgICAgICAgICAgICAgICAgICAgKDB4MDA0VSA8PCBSVENfQ0FMUl9DQUxNX1BvcykgICAgIC8qITwgMHgwMDAwMDAwNCAqLw0KI2RlZmluZSBSVENfQ0FMUl9DQUxNXzMgICAgICAgICAgICAgICAgICAgICAgKDB4MDA4VSA8PCBSVENfQ0FMUl9DQUxNX1BvcykgICAgIC8qITwgMHgwMDAwMDAwOCAqLw0KI2RlZmluZSBSVENfQ0FMUl9DQUxNXzQgICAgICAgICAgICAgICAgICAgICAgKDB4MDEwVSA8PCBSVENfQ0FMUl9DQUxNX1BvcykgICAgIC8qITwgMHgwMDAwMDAxMCAqLw0KI2RlZmluZSBSVENfQ0FMUl9DQUxNXzUgICAgICAgICAgICAgICAgICAgICAgKDB4MDIwVSA8PCBSVENfQ0FMUl9DQUxNX1BvcykgICAgIC8qITwgMHgwMDAwMDAyMCAqLw0KI2RlZmluZSBSVENfQ0FMUl9DQUxNXzYgICAgICAgICAgICAgICAgICAgICAgKDB4MDQwVSA8PCBSVENfQ0FMUl9DQUxNX1BvcykgICAgIC8qITwgMHgwMDAwMDA0MCAqLw0KI2RlZmluZSBSVENfQ0FMUl9DQUxNXzcgICAgICAgICAgICAgICAgICAgICAgKDB4MDgwVSA8PCBSVENfQ0FMUl9DQUxNX1BvcykgICAgIC8qITwgMHgwMDAwMDA4MCAqLw0KI2RlZmluZSBSVENfQ0FMUl9DQUxNXzggICAgICAgICAgICAgICAgICAgICAgKDB4MTAwVSA8PCBSVENfQ0FMUl9DQUxNX1BvcykgICAgIC8qITwgMHgwMDAwMDEwMCAqLw0KDQovKioqKioqKioqKioqKioqKioqKiogIEJpdHMgZGVmaW5pdGlvbiBmb3IgUlRDX1RBRkNSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBSVENfVEFGQ1JfQUxBUk1PVVRUWVBFX1BvcyAgICAgICAgICAgKDE4VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfVEFGQ1JfQUxBUk1PVVRUWVBFX01zayAgICAgICAgICAgKDB4MVUgPDwgUlRDX1RBRkNSX0FMQVJNT1VUVFlQRV9Qb3MpIC8qITwgMHgwMDA0MDAwMCAqLw0KI2RlZmluZSBSVENfVEFGQ1JfQUxBUk1PVVRUWVBFICAgICAgICAgICAgICAgUlRDX1RBRkNSX0FMQVJNT1VUVFlQRV9Nc2sgICAgICAgIA0KI2RlZmluZSBSVENfVEFGQ1JfVEFNUFBVRElTX1BvcyAgICAgICAgICAgICAgKDE1VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfVEFGQ1JfVEFNUFBVRElTX01zayAgICAgICAgICAgICAgKDB4MVUgPDwgUlRDX1RBRkNSX1RBTVBQVURJU19Qb3MpIC8qITwgMHgwMDAwODAwMCAqLw0KI2RlZmluZSBSVENfVEFGQ1JfVEFNUFBVRElTICAgICAgICAgICAgICAgICAgUlRDX1RBRkNSX1RBTVBQVURJU19Nc2sgICAgICAgICAgIA0KI2RlZmluZSBSVENfVEFGQ1JfVEFNUFBSQ0hfUG9zICAgICAgICAgICAgICAgKDEzVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfVEFGQ1JfVEFNUFBSQ0hfTXNrICAgICAgICAgICAgICAgKDB4M1UgPDwgUlRDX1RBRkNSX1RBTVBQUkNIX1BvcykgIC8qITwgMHgwMDAwNjAwMCAqLw0KI2RlZmluZSBSVENfVEFGQ1JfVEFNUFBSQ0ggICAgICAgICAgICAgICAgICAgUlRDX1RBRkNSX1RBTVBQUkNIX01zayAgICAgICAgICAgIA0KI2RlZmluZSBSVENfVEFGQ1JfVEFNUFBSQ0hfMCAgICAgICAgICAgICAgICAgKDB4MVUgPDwgUlRDX1RBRkNSX1RBTVBQUkNIX1BvcykgIC8qITwgMHgwMDAwMjAwMCAqLw0KI2RlZmluZSBSVENfVEFGQ1JfVEFNUFBSQ0hfMSAgICAgICAgICAgICAgICAgKDB4MlUgPDwgUlRDX1RBRkNSX1RBTVBQUkNIX1BvcykgIC8qITwgMHgwMDAwNDAwMCAqLw0KI2RlZmluZSBSVENfVEFGQ1JfVEFNUEZMVF9Qb3MgICAgICAgICAgICAgICAgKDExVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfVEFGQ1JfVEFNUEZMVF9Nc2sgICAgICAgICAgICAgICAgKDB4M1UgPDwgUlRDX1RBRkNSX1RBTVBGTFRfUG9zKSAgIC8qITwgMHgwMDAwMTgwMCAqLw0KI2RlZmluZSBSVENfVEFGQ1JfVEFNUEZMVCAgICAgICAgICAgICAgICAgICAgUlRDX1RBRkNSX1RBTVBGTFRfTXNrICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfVEFGQ1JfVEFNUEZMVF8wICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgUlRDX1RBRkNSX1RBTVBGTFRfUG9zKSAgIC8qITwgMHgwMDAwMDgwMCAqLw0KI2RlZmluZSBSVENfVEFGQ1JfVEFNUEZMVF8xICAgICAgICAgICAgICAgICAgKDB4MlUgPDwgUlRDX1RBRkNSX1RBTVBGTFRfUG9zKSAgIC8qITwgMHgwMDAwMTAwMCAqLw0KI2RlZmluZSBSVENfVEFGQ1JfVEFNUEZSRVFfUG9zICAgICAgICAgICAgICAgKDhVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfVEFGQ1JfVEFNUEZSRVFfTXNrICAgICAgICAgICAgICAgKDB4N1UgPDwgUlRDX1RBRkNSX1RBTVBGUkVRX1BvcykgIC8qITwgMHgwMDAwMDcwMCAqLw0KI2RlZmluZSBSVENfVEFGQ1JfVEFNUEZSRVEgICAgICAgICAgICAgICAgICAgUlRDX1RBRkNSX1RBTVBGUkVRX01zayAgICAgICAgICAgIA0KI2RlZmluZSBSVENfVEFGQ1JfVEFNUEZSRVFfMCAgICAgICAgICAgICAgICAgKDB4MVUgPDwgUlRDX1RBRkNSX1RBTVBGUkVRX1BvcykgIC8qITwgMHgwMDAwMDEwMCAqLw0KI2RlZmluZSBSVENfVEFGQ1JfVEFNUEZSRVFfMSAgICAgICAgICAgICAgICAgKDB4MlUgPDwgUlRDX1RBRkNSX1RBTVBGUkVRX1BvcykgIC8qITwgMHgwMDAwMDIwMCAqLw0KI2RlZmluZSBSVENfVEFGQ1JfVEFNUEZSRVFfMiAgICAgICAgICAgICAgICAgKDB4NFUgPDwgUlRDX1RBRkNSX1RBTVBGUkVRX1BvcykgIC8qITwgMHgwMDAwMDQwMCAqLw0KI2RlZmluZSBSVENfVEFGQ1JfVEFNUFRTX1BvcyAgICAgICAgICAgICAgICAgKDdVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfVEFGQ1JfVEFNUFRTX01zayAgICAgICAgICAgICAgICAgKDB4MVUgPDwgUlRDX1RBRkNSX1RBTVBUU19Qb3MpICAgIC8qITwgMHgwMDAwMDA4MCAqLw0KI2RlZmluZSBSVENfVEFGQ1JfVEFNUFRTICAgICAgICAgICAgICAgICAgICAgUlRDX1RBRkNSX1RBTVBUU19Nc2sgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfVEFGQ1JfVEFNUDNUUkdfUG9zICAgICAgICAgICAgICAgKDZVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfVEFGQ1JfVEFNUDNUUkdfTXNrICAgICAgICAgICAgICAgKDB4MVUgPDwgUlRDX1RBRkNSX1RBTVAzVFJHX1BvcykgIC8qITwgMHgwMDAwMDA0MCAqLw0KI2RlZmluZSBSVENfVEFGQ1JfVEFNUDNUUkcgICAgICAgICAgICAgICAgICAgUlRDX1RBRkNSX1RBTVAzVFJHX01zayAgICAgICAgICAgIA0KI2RlZmluZSBSVENfVEFGQ1JfVEFNUDNFX1BvcyAgICAgICAgICAgICAgICAgKDVVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfVEFGQ1JfVEFNUDNFX01zayAgICAgICAgICAgICAgICAgKDB4MVUgPDwgUlRDX1RBRkNSX1RBTVAzRV9Qb3MpICAgIC8qITwgMHgwMDAwMDAyMCAqLw0KI2RlZmluZSBSVENfVEFGQ1JfVEFNUDNFICAgICAgICAgICAgICAgICAgICAgUlRDX1RBRkNSX1RBTVAzRV9Nc2sgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfVEFGQ1JfVEFNUDJUUkdfUG9zICAgICAgICAgICAgICAgKDRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfVEFGQ1JfVEFNUDJUUkdfTXNrICAgICAgICAgICAgICAgKDB4MVUgPDwgUlRDX1RBRkNSX1RBTVAyVFJHX1BvcykgIC8qITwgMHgwMDAwMDAxMCAqLw0KI2RlZmluZSBSVENfVEFGQ1JfVEFNUDJUUkcgICAgICAgICAgICAgICAgICAgUlRDX1RBRkNSX1RBTVAyVFJHX01zayAgICAgICAgICAgIA0KI2RlZmluZSBSVENfVEFGQ1JfVEFNUDJFX1BvcyAgICAgICAgICAgICAgICAgKDNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfVEFGQ1JfVEFNUDJFX01zayAgICAgICAgICAgICAgICAgKDB4MVUgPDwgUlRDX1RBRkNSX1RBTVAyRV9Qb3MpICAgIC8qITwgMHgwMDAwMDAwOCAqLw0KI2RlZmluZSBSVENfVEFGQ1JfVEFNUDJFICAgICAgICAgICAgICAgICAgICAgUlRDX1RBRkNSX1RBTVAyRV9Nc2sgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfVEFGQ1JfVEFNUElFX1BvcyAgICAgICAgICAgICAgICAgKDJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfVEFGQ1JfVEFNUElFX01zayAgICAgICAgICAgICAgICAgKDB4MVUgPDwgUlRDX1RBRkNSX1RBTVBJRV9Qb3MpICAgIC8qITwgMHgwMDAwMDAwNCAqLw0KI2RlZmluZSBSVENfVEFGQ1JfVEFNUElFICAgICAgICAgICAgICAgICAgICAgUlRDX1RBRkNSX1RBTVBJRV9Nc2sgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfVEFGQ1JfVEFNUDFUUkdfUG9zICAgICAgICAgICAgICAgKDFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfVEFGQ1JfVEFNUDFUUkdfTXNrICAgICAgICAgICAgICAgKDB4MVUgPDwgUlRDX1RBRkNSX1RBTVAxVFJHX1BvcykgIC8qITwgMHgwMDAwMDAwMiAqLw0KI2RlZmluZSBSVENfVEFGQ1JfVEFNUDFUUkcgICAgICAgICAgICAgICAgICAgUlRDX1RBRkNSX1RBTVAxVFJHX01zayAgICAgICAgICAgIA0KI2RlZmluZSBSVENfVEFGQ1JfVEFNUDFFX1BvcyAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfVEFGQ1JfVEFNUDFFX01zayAgICAgICAgICAgICAgICAgKDB4MVUgPDwgUlRDX1RBRkNSX1RBTVAxRV9Qb3MpICAgIC8qITwgMHgwMDAwMDAwMSAqLw0KI2RlZmluZSBSVENfVEFGQ1JfVEFNUDFFICAgICAgICAgICAgICAgICAgICAgUlRDX1RBRkNSX1RBTVAxRV9Nc2sgICAgICAgICAgICAgIA0KDQovKioqKioqKioqKioqKioqKioqKiogIEJpdHMgZGVmaW5pdGlvbiBmb3IgUlRDX0FMUk1BU1NSIHJlZ2lzdGVyICAqKioqKioqKioqKioqLw0KI2RlZmluZSBSVENfQUxSTUFTU1JfTUFTS1NTX1BvcyAgICAgICAgICAgICAgKDI0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfQUxSTUFTU1JfTUFTS1NTX01zayAgICAgICAgICAgICAgKDB4RlUgPDwgUlRDX0FMUk1BU1NSX01BU0tTU19Qb3MpIC8qITwgMHgwRjAwMDAwMCAqLw0KI2RlZmluZSBSVENfQUxSTUFTU1JfTUFTS1NTICAgICAgICAgICAgICAgICAgUlRDX0FMUk1BU1NSX01BU0tTU19Nc2sgICAgICAgICAgIA0KI2RlZmluZSBSVENfQUxSTUFTU1JfTUFTS1NTXzAgICAgICAgICAgICAgICAgKDB4MVUgPDwgUlRDX0FMUk1BU1NSX01BU0tTU19Qb3MpIC8qITwgMHgwMTAwMDAwMCAqLw0KI2RlZmluZSBSVENfQUxSTUFTU1JfTUFTS1NTXzEgICAgICAgICAgICAgICAgKDB4MlUgPDwgUlRDX0FMUk1BU1NSX01BU0tTU19Qb3MpIC8qITwgMHgwMjAwMDAwMCAqLw0KI2RlZmluZSBSVENfQUxSTUFTU1JfTUFTS1NTXzIgICAgICAgICAgICAgICAgKDB4NFUgPDwgUlRDX0FMUk1BU1NSX01BU0tTU19Qb3MpIC8qITwgMHgwNDAwMDAwMCAqLw0KI2RlZmluZSBSVENfQUxSTUFTU1JfTUFTS1NTXzMgICAgICAgICAgICAgICAgKDB4OFUgPDwgUlRDX0FMUk1BU1NSX01BU0tTU19Qb3MpIC8qITwgMHgwODAwMDAwMCAqLw0KI2RlZmluZSBSVENfQUxSTUFTU1JfU1NfUG9zICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfQUxSTUFTU1JfU1NfTXNrICAgICAgICAgICAgICAgICAgKDB4N0ZGRlUgPDwgUlRDX0FMUk1BU1NSX1NTX1BvcykgIC8qITwgMHgwMDAwN0ZGRiAqLw0KI2RlZmluZSBSVENfQUxSTUFTU1JfU1MgICAgICAgICAgICAgICAgICAgICAgUlRDX0FMUk1BU1NSX1NTX01zayAgICAgICAgICAgICAgIA0KDQovKioqKioqKioqKioqKioqKioqKiogIEJpdHMgZGVmaW5pdGlvbiBmb3IgUlRDX0FMUk1CU1NSIHJlZ2lzdGVyICAqKioqKioqKioqKioqLw0KI2RlZmluZSBSVENfQUxSTUJTU1JfTUFTS1NTX1BvcyAgICAgICAgICAgICAgKDI0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfQUxSTUJTU1JfTUFTS1NTX01zayAgICAgICAgICAgICAgKDB4RlUgPDwgUlRDX0FMUk1CU1NSX01BU0tTU19Qb3MpIC8qITwgMHgwRjAwMDAwMCAqLw0KI2RlZmluZSBSVENfQUxSTUJTU1JfTUFTS1NTICAgICAgICAgICAgICAgICAgUlRDX0FMUk1CU1NSX01BU0tTU19Nc2sgICAgICAgICAgIA0KI2RlZmluZSBSVENfQUxSTUJTU1JfTUFTS1NTXzAgICAgICAgICAgICAgICAgKDB4MVUgPDwgUlRDX0FMUk1CU1NSX01BU0tTU19Qb3MpIC8qITwgMHgwMTAwMDAwMCAqLw0KI2RlZmluZSBSVENfQUxSTUJTU1JfTUFTS1NTXzEgICAgICAgICAgICAgICAgKDB4MlUgPDwgUlRDX0FMUk1CU1NSX01BU0tTU19Qb3MpIC8qITwgMHgwMjAwMDAwMCAqLw0KI2RlZmluZSBSVENfQUxSTUJTU1JfTUFTS1NTXzIgICAgICAgICAgICAgICAgKDB4NFUgPDwgUlRDX0FMUk1CU1NSX01BU0tTU19Qb3MpIC8qITwgMHgwNDAwMDAwMCAqLw0KI2RlZmluZSBSVENfQUxSTUJTU1JfTUFTS1NTXzMgICAgICAgICAgICAgICAgKDB4OFUgPDwgUlRDX0FMUk1CU1NSX01BU0tTU19Qb3MpIC8qITwgMHgwODAwMDAwMCAqLw0KI2RlZmluZSBSVENfQUxSTUJTU1JfU1NfUG9zICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfQUxSTUJTU1JfU1NfTXNrICAgICAgICAgICAgICAgICAgKDB4N0ZGRlUgPDwgUlRDX0FMUk1CU1NSX1NTX1BvcykgIC8qITwgMHgwMDAwN0ZGRiAqLw0KI2RlZmluZSBSVENfQUxSTUJTU1JfU1MgICAgICAgICAgICAgICAgICAgICAgUlRDX0FMUk1CU1NSX1NTX01zayAgICAgICAgICAgICAgIA0KDQovKioqKioqKioqKioqKioqKioqKiogIEJpdHMgZGVmaW5pdGlvbiBmb3IgUlRDX0JLUDBSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBSVENfQktQMFJfUG9zICAgICAgICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfQktQMFJfTXNrICAgICAgICAgICAgICAgICAgICAgICAgKDB4RkZGRkZGRkZVIDw8IFJUQ19CS1AwUl9Qb3MpICAgIC8qITwgMHhGRkZGRkZGRiAqLw0KI2RlZmluZSBSVENfQktQMFIgICAgICAgICAgICAgICAgICAgICAgICAgICAgUlRDX0JLUDBSX01zayAgICAgICAgICAgICAgICAgICAgIA0KDQovKioqKioqKioqKioqKioqKioqKiogIEJpdHMgZGVmaW5pdGlvbiBmb3IgUlRDX0JLUDFSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBSVENfQktQMVJfUG9zICAgICAgICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfQktQMVJfTXNrICAgICAgICAgICAgICAgICAgICAgICAgKDB4RkZGRkZGRkZVIDw8IFJUQ19CS1AxUl9Qb3MpICAgIC8qITwgMHhGRkZGRkZGRiAqLw0KI2RlZmluZSBSVENfQktQMVIgICAgICAgICAgICAgICAgICAgICAgICAgICAgUlRDX0JLUDFSX01zayAgICAgICAgICAgICAgICAgICAgIA0KDQovKioqKioqKioqKioqKioqKioqKiogIEJpdHMgZGVmaW5pdGlvbiBmb3IgUlRDX0JLUDJSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBSVENfQktQMlJfUG9zICAgICAgICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfQktQMlJfTXNrICAgICAgICAgICAgICAgICAgICAgICAgKDB4RkZGRkZGRkZVIDw8IFJUQ19CS1AyUl9Qb3MpICAgIC8qITwgMHhGRkZGRkZGRiAqLw0KI2RlZmluZSBSVENfQktQMlIgICAgICAgICAgICAgICAgICAgICAgICAgICAgUlRDX0JLUDJSX01zayAgICAgICAgICAgICAgICAgICAgIA0KDQovKioqKioqKioqKioqKioqKioqKiogIEJpdHMgZGVmaW5pdGlvbiBmb3IgUlRDX0JLUDNSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBSVENfQktQM1JfUG9zICAgICAgICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfQktQM1JfTXNrICAgICAgICAgICAgICAgICAgICAgICAgKDB4RkZGRkZGRkZVIDw8IFJUQ19CS1AzUl9Qb3MpICAgIC8qITwgMHhGRkZGRkZGRiAqLw0KI2RlZmluZSBSVENfQktQM1IgICAgICAgICAgICAgICAgICAgICAgICAgICAgUlRDX0JLUDNSX01zayAgICAgICAgICAgICAgICAgICAgIA0KDQovKioqKioqKioqKioqKioqKioqKiogIEJpdHMgZGVmaW5pdGlvbiBmb3IgUlRDX0JLUDRSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBSVENfQktQNFJfUG9zICAgICAgICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfQktQNFJfTXNrICAgICAgICAgICAgICAgICAgICAgICAgKDB4RkZGRkZGRkZVIDw8IFJUQ19CS1A0Ul9Qb3MpICAgIC8qITwgMHhGRkZGRkZGRiAqLw0KI2RlZmluZSBSVENfQktQNFIgICAgICAgICAgICAgICAgICAgICAgICAgICAgUlRDX0JLUDRSX01zayAgICAgICAgICAgICAgICAgICAgIA0KDQovKioqKioqKioqKioqKioqKioqKiogIEJpdHMgZGVmaW5pdGlvbiBmb3IgUlRDX0JLUDVSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBSVENfQktQNVJfUG9zICAgICAgICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfQktQNVJfTXNrICAgICAgICAgICAgICAgICAgICAgICAgKDB4RkZGRkZGRkZVIDw8IFJUQ19CS1A1Ul9Qb3MpICAgIC8qITwgMHhGRkZGRkZGRiAqLw0KI2RlZmluZSBSVENfQktQNVIgICAgICAgICAgICAgICAgICAgICAgICAgICAgUlRDX0JLUDVSX01zayAgICAgICAgICAgICAgICAgICAgIA0KDQovKioqKioqKioqKioqKioqKioqKiogIEJpdHMgZGVmaW5pdGlvbiBmb3IgUlRDX0JLUDZSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBSVENfQktQNlJfUG9zICAgICAgICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfQktQNlJfTXNrICAgICAgICAgICAgICAgICAgICAgICAgKDB4RkZGRkZGRkZVIDw8IFJUQ19CS1A2Ul9Qb3MpICAgIC8qITwgMHhGRkZGRkZGRiAqLw0KI2RlZmluZSBSVENfQktQNlIgICAgICAgICAgICAgICAgICAgICAgICAgICAgUlRDX0JLUDZSX01zayAgICAgICAgICAgICAgICAgICAgIA0KDQovKioqKioqKioqKioqKioqKioqKiogIEJpdHMgZGVmaW5pdGlvbiBmb3IgUlRDX0JLUDdSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBSVENfQktQN1JfUG9zICAgICAgICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfQktQN1JfTXNrICAgICAgICAgICAgICAgICAgICAgICAgKDB4RkZGRkZGRkZVIDw8IFJUQ19CS1A3Ul9Qb3MpICAgIC8qITwgMHhGRkZGRkZGRiAqLw0KI2RlZmluZSBSVENfQktQN1IgICAgICAgICAgICAgICAgICAgICAgICAgICAgUlRDX0JLUDdSX01zayAgICAgICAgICAgICAgICAgICAgIA0KDQovKioqKioqKioqKioqKioqKioqKiogIEJpdHMgZGVmaW5pdGlvbiBmb3IgUlRDX0JLUDhSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBSVENfQktQOFJfUG9zICAgICAgICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfQktQOFJfTXNrICAgICAgICAgICAgICAgICAgICAgICAgKDB4RkZGRkZGRkZVIDw8IFJUQ19CS1A4Ul9Qb3MpICAgIC8qITwgMHhGRkZGRkZGRiAqLw0KI2RlZmluZSBSVENfQktQOFIgICAgICAgICAgICAgICAgICAgICAgICAgICAgUlRDX0JLUDhSX01zayAgICAgICAgICAgICAgICAgICAgIA0KDQovKioqKioqKioqKioqKioqKioqKiogIEJpdHMgZGVmaW5pdGlvbiBmb3IgUlRDX0JLUDlSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBSVENfQktQOVJfUG9zICAgICAgICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfQktQOVJfTXNrICAgICAgICAgICAgICAgICAgICAgICAgKDB4RkZGRkZGRkZVIDw8IFJUQ19CS1A5Ul9Qb3MpICAgIC8qITwgMHhGRkZGRkZGRiAqLw0KI2RlZmluZSBSVENfQktQOVIgICAgICAgICAgICAgICAgICAgICAgICAgICAgUlRDX0JLUDlSX01zayAgICAgICAgICAgICAgICAgICAgIA0KDQovKioqKioqKioqKioqKioqKioqKiogIEJpdHMgZGVmaW5pdGlvbiBmb3IgUlRDX0JLUDEwUiByZWdpc3RlciAgKioqKioqKioqKioqKioqLw0KI2RlZmluZSBSVENfQktQMTBSX1BvcyAgICAgICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfQktQMTBSX01zayAgICAgICAgICAgICAgICAgICAgICAgKDB4RkZGRkZGRkZVIDw8IFJUQ19CS1AxMFJfUG9zKSAgIC8qITwgMHhGRkZGRkZGRiAqLw0KI2RlZmluZSBSVENfQktQMTBSICAgICAgICAgICAgICAgICAgICAgICAgICAgUlRDX0JLUDEwUl9Nc2sgICAgICAgICAgICAgICAgICAgIA0KDQovKioqKioqKioqKioqKioqKioqKiogIEJpdHMgZGVmaW5pdGlvbiBmb3IgUlRDX0JLUDExUiByZWdpc3RlciAgKioqKioqKioqKioqKioqLw0KI2RlZmluZSBSVENfQktQMTFSX1BvcyAgICAgICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfQktQMTFSX01zayAgICAgICAgICAgICAgICAgICAgICAgKDB4RkZGRkZGRkZVIDw8IFJUQ19CS1AxMVJfUG9zKSAgIC8qITwgMHhGRkZGRkZGRiAqLw0KI2RlZmluZSBSVENfQktQMTFSICAgICAgICAgICAgICAgICAgICAgICAgICAgUlRDX0JLUDExUl9Nc2sgICAgICAgICAgICAgICAgICAgIA0KDQovKioqKioqKioqKioqKioqKioqKiogIEJpdHMgZGVmaW5pdGlvbiBmb3IgUlRDX0JLUDEyUiByZWdpc3RlciAgKioqKioqKioqKioqKioqLw0KI2RlZmluZSBSVENfQktQMTJSX1BvcyAgICAgICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfQktQMTJSX01zayAgICAgICAgICAgICAgICAgICAgICAgKDB4RkZGRkZGRkZVIDw8IFJUQ19CS1AxMlJfUG9zKSAgIC8qITwgMHhGRkZGRkZGRiAqLw0KI2RlZmluZSBSVENfQktQMTJSICAgICAgICAgICAgICAgICAgICAgICAgICAgUlRDX0JLUDEyUl9Nc2sgICAgICAgICAgICAgICAgICAgIA0KDQovKioqKioqKioqKioqKioqKioqKiogIEJpdHMgZGVmaW5pdGlvbiBmb3IgUlRDX0JLUDEzUiByZWdpc3RlciAgKioqKioqKioqKioqKioqLw0KI2RlZmluZSBSVENfQktQMTNSX1BvcyAgICAgICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfQktQMTNSX01zayAgICAgICAgICAgICAgICAgICAgICAgKDB4RkZGRkZGRkZVIDw8IFJUQ19CS1AxM1JfUG9zKSAgIC8qITwgMHhGRkZGRkZGRiAqLw0KI2RlZmluZSBSVENfQktQMTNSICAgICAgICAgICAgICAgICAgICAgICAgICAgUlRDX0JLUDEzUl9Nc2sgICAgICAgICAgICAgICAgICAgIA0KDQovKioqKioqKioqKioqKioqKioqKiogIEJpdHMgZGVmaW5pdGlvbiBmb3IgUlRDX0JLUDE0UiByZWdpc3RlciAgKioqKioqKioqKioqKioqLw0KI2RlZmluZSBSVENfQktQMTRSX1BvcyAgICAgICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfQktQMTRSX01zayAgICAgICAgICAgICAgICAgICAgICAgKDB4RkZGRkZGRkZVIDw8IFJUQ19CS1AxNFJfUG9zKSAgIC8qITwgMHhGRkZGRkZGRiAqLw0KI2RlZmluZSBSVENfQktQMTRSICAgICAgICAgICAgICAgICAgICAgICAgICAgUlRDX0JLUDE0Ul9Nc2sgICAgICAgICAgICAgICAgICAgIA0KDQovKioqKioqKioqKioqKioqKioqKiogIEJpdHMgZGVmaW5pdGlvbiBmb3IgUlRDX0JLUDE1UiByZWdpc3RlciAgKioqKioqKioqKioqKioqLw0KI2RlZmluZSBSVENfQktQMTVSX1BvcyAgICAgICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfQktQMTVSX01zayAgICAgICAgICAgICAgICAgICAgICAgKDB4RkZGRkZGRkZVIDw8IFJUQ19CS1AxNVJfUG9zKSAgIC8qITwgMHhGRkZGRkZGRiAqLw0KI2RlZmluZSBSVENfQktQMTVSICAgICAgICAgICAgICAgICAgICAgICAgICAgUlRDX0JLUDE1Ul9Nc2sgICAgICAgICAgICAgICAgICAgIA0KDQovKioqKioqKioqKioqKioqKioqKiogIEJpdHMgZGVmaW5pdGlvbiBmb3IgUlRDX0JLUDE2UiByZWdpc3RlciAgKioqKioqKioqKioqKioqLw0KI2RlZmluZSBSVENfQktQMTZSX1BvcyAgICAgICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfQktQMTZSX01zayAgICAgICAgICAgICAgICAgICAgICAgKDB4RkZGRkZGRkZVIDw8IFJUQ19CS1AxNlJfUG9zKSAgIC8qITwgMHhGRkZGRkZGRiAqLw0KI2RlZmluZSBSVENfQktQMTZSICAgICAgICAgICAgICAgICAgICAgICAgICAgUlRDX0JLUDE2Ul9Nc2sgICAgICAgICAgICAgICAgICAgIA0KDQovKioqKioqKioqKioqKioqKioqKiogIEJpdHMgZGVmaW5pdGlvbiBmb3IgUlRDX0JLUDE3UiByZWdpc3RlciAgKioqKioqKioqKioqKioqLw0KI2RlZmluZSBSVENfQktQMTdSX1BvcyAgICAgICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfQktQMTdSX01zayAgICAgICAgICAgICAgICAgICAgICAgKDB4RkZGRkZGRkZVIDw8IFJUQ19CS1AxN1JfUG9zKSAgIC8qITwgMHhGRkZGRkZGRiAqLw0KI2RlZmluZSBSVENfQktQMTdSICAgICAgICAgICAgICAgICAgICAgICAgICAgUlRDX0JLUDE3Ul9Nc2sgICAgICAgICAgICAgICAgICAgIA0KDQovKioqKioqKioqKioqKioqKioqKiogIEJpdHMgZGVmaW5pdGlvbiBmb3IgUlRDX0JLUDE4UiByZWdpc3RlciAgKioqKioqKioqKioqKioqLw0KI2RlZmluZSBSVENfQktQMThSX1BvcyAgICAgICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfQktQMThSX01zayAgICAgICAgICAgICAgICAgICAgICAgKDB4RkZGRkZGRkZVIDw8IFJUQ19CS1AxOFJfUG9zKSAgIC8qITwgMHhGRkZGRkZGRiAqLw0KI2RlZmluZSBSVENfQktQMThSICAgICAgICAgICAgICAgICAgICAgICAgICAgUlRDX0JLUDE4Ul9Nc2sgICAgICAgICAgICAgICAgICAgIA0KDQovKioqKioqKioqKioqKioqKioqKiogIEJpdHMgZGVmaW5pdGlvbiBmb3IgUlRDX0JLUDE5UiByZWdpc3RlciAgKioqKioqKioqKioqKioqLw0KI2RlZmluZSBSVENfQktQMTlSX1BvcyAgICAgICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfQktQMTlSX01zayAgICAgICAgICAgICAgICAgICAgICAgKDB4RkZGRkZGRkZVIDw8IFJUQ19CS1AxOVJfUG9zKSAgIC8qITwgMHhGRkZGRkZGRiAqLw0KI2RlZmluZSBSVENfQktQMTlSICAgICAgICAgICAgICAgICAgICAgICAgICAgUlRDX0JLUDE5Ul9Nc2sgICAgICAgICAgICAgICAgICAgIA0KDQovKioqKioqKioqKioqKioqKioqKiogIEJpdHMgZGVmaW5pdGlvbiBmb3IgUlRDX0JLUDIwUiByZWdpc3RlciAgKioqKioqKioqKioqKioqLw0KI2RlZmluZSBSVENfQktQMjBSX1BvcyAgICAgICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfQktQMjBSX01zayAgICAgICAgICAgICAgICAgICAgICAgKDB4RkZGRkZGRkZVIDw8IFJUQ19CS1AyMFJfUG9zKSAgIC8qITwgMHhGRkZGRkZGRiAqLw0KI2RlZmluZSBSVENfQktQMjBSICAgICAgICAgICAgICAgICAgICAgICAgICAgUlRDX0JLUDIwUl9Nc2sgICAgICAgICAgICAgICAgICAgIA0KDQovKioqKioqKioqKioqKioqKioqKiogIEJpdHMgZGVmaW5pdGlvbiBmb3IgUlRDX0JLUDIxUiByZWdpc3RlciAgKioqKioqKioqKioqKioqLw0KI2RlZmluZSBSVENfQktQMjFSX1BvcyAgICAgICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfQktQMjFSX01zayAgICAgICAgICAgICAgICAgICAgICAgKDB4RkZGRkZGRkZVIDw8IFJUQ19CS1AyMVJfUG9zKSAgIC8qITwgMHhGRkZGRkZGRiAqLw0KI2RlZmluZSBSVENfQktQMjFSICAgICAgICAgICAgICAgICAgICAgICAgICAgUlRDX0JLUDIxUl9Nc2sgICAgICAgICAgICAgICAgICAgIA0KDQovKioqKioqKioqKioqKioqKioqKiogIEJpdHMgZGVmaW5pdGlvbiBmb3IgUlRDX0JLUDIyUiByZWdpc3RlciAgKioqKioqKioqKioqKioqLw0KI2RlZmluZSBSVENfQktQMjJSX1BvcyAgICAgICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfQktQMjJSX01zayAgICAgICAgICAgICAgICAgICAgICAgKDB4RkZGRkZGRkZVIDw8IFJUQ19CS1AyMlJfUG9zKSAgIC8qITwgMHhGRkZGRkZGRiAqLw0KI2RlZmluZSBSVENfQktQMjJSICAgICAgICAgICAgICAgICAgICAgICAgICAgUlRDX0JLUDIyUl9Nc2sgICAgICAgICAgICAgICAgICAgIA0KDQovKioqKioqKioqKioqKioqKioqKiogIEJpdHMgZGVmaW5pdGlvbiBmb3IgUlRDX0JLUDIzUiByZWdpc3RlciAgKioqKioqKioqKioqKioqLw0KI2RlZmluZSBSVENfQktQMjNSX1BvcyAgICAgICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfQktQMjNSX01zayAgICAgICAgICAgICAgICAgICAgICAgKDB4RkZGRkZGRkZVIDw8IFJUQ19CS1AyM1JfUG9zKSAgIC8qITwgMHhGRkZGRkZGRiAqLw0KI2RlZmluZSBSVENfQktQMjNSICAgICAgICAgICAgICAgICAgICAgICAgICAgUlRDX0JLUDIzUl9Nc2sgICAgICAgICAgICAgICAgICAgIA0KDQovKioqKioqKioqKioqKioqKioqKiogIEJpdHMgZGVmaW5pdGlvbiBmb3IgUlRDX0JLUDI0UiByZWdpc3RlciAgKioqKioqKioqKioqKioqLw0KI2RlZmluZSBSVENfQktQMjRSX1BvcyAgICAgICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfQktQMjRSX01zayAgICAgICAgICAgICAgICAgICAgICAgKDB4RkZGRkZGRkZVIDw8IFJUQ19CS1AyNFJfUG9zKSAgIC8qITwgMHhGRkZGRkZGRiAqLw0KI2RlZmluZSBSVENfQktQMjRSICAgICAgICAgICAgICAgICAgICAgICAgICAgUlRDX0JLUDI0Ul9Nc2sgICAgICAgICAgICAgICAgICAgIA0KDQovKioqKioqKioqKioqKioqKioqKiogIEJpdHMgZGVmaW5pdGlvbiBmb3IgUlRDX0JLUDI1UiByZWdpc3RlciAgKioqKioqKioqKioqKioqLw0KI2RlZmluZSBSVENfQktQMjVSX1BvcyAgICAgICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfQktQMjVSX01zayAgICAgICAgICAgICAgICAgICAgICAgKDB4RkZGRkZGRkZVIDw8IFJUQ19CS1AyNVJfUG9zKSAgIC8qITwgMHhGRkZGRkZGRiAqLw0KI2RlZmluZSBSVENfQktQMjVSICAgICAgICAgICAgICAgICAgICAgICAgICAgUlRDX0JLUDI1Ul9Nc2sgICAgICAgICAgICAgICAgICAgIA0KDQovKioqKioqKioqKioqKioqKioqKiogIEJpdHMgZGVmaW5pdGlvbiBmb3IgUlRDX0JLUDI2UiByZWdpc3RlciAgKioqKioqKioqKioqKioqLw0KI2RlZmluZSBSVENfQktQMjZSX1BvcyAgICAgICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfQktQMjZSX01zayAgICAgICAgICAgICAgICAgICAgICAgKDB4RkZGRkZGRkZVIDw8IFJUQ19CS1AyNlJfUG9zKSAgIC8qITwgMHhGRkZGRkZGRiAqLw0KI2RlZmluZSBSVENfQktQMjZSICAgICAgICAgICAgICAgICAgICAgICAgICAgUlRDX0JLUDI2Ul9Nc2sgICAgICAgICAgICAgICAgICAgIA0KDQovKioqKioqKioqKioqKioqKioqKiogIEJpdHMgZGVmaW5pdGlvbiBmb3IgUlRDX0JLUDI3UiByZWdpc3RlciAgKioqKioqKioqKioqKioqLw0KI2RlZmluZSBSVENfQktQMjdSX1BvcyAgICAgICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfQktQMjdSX01zayAgICAgICAgICAgICAgICAgICAgICAgKDB4RkZGRkZGRkZVIDw8IFJUQ19CS1AyN1JfUG9zKSAgIC8qITwgMHhGRkZGRkZGRiAqLw0KI2RlZmluZSBSVENfQktQMjdSICAgICAgICAgICAgICAgICAgICAgICAgICAgUlRDX0JLUDI3Ul9Nc2sgICAgICAgICAgICAgICAgICAgIA0KDQovKioqKioqKioqKioqKioqKioqKiogIEJpdHMgZGVmaW5pdGlvbiBmb3IgUlRDX0JLUDI4UiByZWdpc3RlciAgKioqKioqKioqKioqKioqLw0KI2RlZmluZSBSVENfQktQMjhSX1BvcyAgICAgICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfQktQMjhSX01zayAgICAgICAgICAgICAgICAgICAgICAgKDB4RkZGRkZGRkZVIDw8IFJUQ19CS1AyOFJfUG9zKSAgIC8qITwgMHhGRkZGRkZGRiAqLw0KI2RlZmluZSBSVENfQktQMjhSICAgICAgICAgICAgICAgICAgICAgICAgICAgUlRDX0JLUDI4Ul9Nc2sgICAgICAgICAgICAgICAgICAgIA0KDQovKioqKioqKioqKioqKioqKioqKiogIEJpdHMgZGVmaW5pdGlvbiBmb3IgUlRDX0JLUDI5UiByZWdpc3RlciAgKioqKioqKioqKioqKioqLw0KI2RlZmluZSBSVENfQktQMjlSX1BvcyAgICAgICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfQktQMjlSX01zayAgICAgICAgICAgICAgICAgICAgICAgKDB4RkZGRkZGRkZVIDw8IFJUQ19CS1AyOVJfUG9zKSAgIC8qITwgMHhGRkZGRkZGRiAqLw0KI2RlZmluZSBSVENfQktQMjlSICAgICAgICAgICAgICAgICAgICAgICAgICAgUlRDX0JLUDI5Ul9Nc2sgICAgICAgICAgICAgICAgICAgIA0KDQovKioqKioqKioqKioqKioqKioqKiogIEJpdHMgZGVmaW5pdGlvbiBmb3IgUlRDX0JLUDMwUiByZWdpc3RlciAgKioqKioqKioqKioqKioqLw0KI2RlZmluZSBSVENfQktQMzBSX1BvcyAgICAgICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfQktQMzBSX01zayAgICAgICAgICAgICAgICAgICAgICAgKDB4RkZGRkZGRkZVIDw8IFJUQ19CS1AzMFJfUG9zKSAgIC8qITwgMHhGRkZGRkZGRiAqLw0KI2RlZmluZSBSVENfQktQMzBSICAgICAgICAgICAgICAgICAgICAgICAgICAgUlRDX0JLUDMwUl9Nc2sgICAgICAgICAgICAgICAgICAgIA0KDQovKioqKioqKioqKioqKioqKioqKiogIEJpdHMgZGVmaW5pdGlvbiBmb3IgUlRDX0JLUDMxUiByZWdpc3RlciAgKioqKioqKioqKioqKioqLw0KI2RlZmluZSBSVENfQktQMzFSX1BvcyAgICAgICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfQktQMzFSX01zayAgICAgICAgICAgICAgICAgICAgICAgKDB4RkZGRkZGRkZVIDw8IFJUQ19CS1AzMVJfUG9zKSAgIC8qITwgMHhGRkZGRkZGRiAqLw0KI2RlZmluZSBSVENfQktQMzFSICAgICAgICAgICAgICAgICAgICAgICAgICAgUlRDX0JLUDMxUl9Nc2sgICAgICAgICAgICAgICAgICAgIA0KDQovKioqKioqKioqKioqKioqKioqKiogTnVtYmVyIG9mIGJhY2t1cCByZWdpc3RlcnMgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBSVENfQktQX05VTUJFUiAzMg0KDQovKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLw0KLyogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8NCi8qICAgICAgICAgICAgICAgICAgICAgU2VyaWFsIFBlcmlwaGVyYWwgSW50ZXJmYWNlIChTUEkpICAgICAgICAgICAgICAgICAgICAgICovDQovKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLw0KLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8NCg0KLyoNCiAqIEBicmllZiBTcGVjaWZpYyBkZXZpY2UgZmVhdHVyZSBkZWZpbml0aW9ucyAobm90IHByZXNlbnQgb24gYWxsIGRldmljZXMgaW4gdGhlIFNUTTMyRjMgc2VyaWUpDQogKi8NCiNkZWZpbmUgU1BJX0kyU19TVVBQT1JUICAgIA0KDQovKioqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFNQSV9DUjEgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBTUElfQ1IxX0NQSEFfUG9zICAgICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBTUElfQ1IxX0NQSEFfTXNrICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBTUElfQ1IxX0NQSEFfUG9zKSAgICAgICAgIC8qITwgMHgwMDAwMDAwMSAqLw0KI2RlZmluZSBTUElfQ1IxX0NQSEEgICAgICAgICAgICAgICAgICAgICAgICBTUElfQ1IxX0NQSEFfTXNrICAgICAgICAgICAgICAgICAgIC8qITwgQ2xvY2sgUGhhc2UgKi8NCiNkZWZpbmUgU1BJX0NSMV9DUE9MX1BvcyAgICAgICAgICAgICAgICAgICAgKDFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgU1BJX0NSMV9DUE9MX01zayAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgU1BJX0NSMV9DUE9MX1BvcykgICAgICAgICAvKiE8IDB4MDAwMDAwMDIgKi8NCiNkZWZpbmUgU1BJX0NSMV9DUE9MICAgICAgICAgICAgICAgICAgICAgICAgU1BJX0NSMV9DUE9MX01zayAgICAgICAgICAgICAgICAgICAvKiE8IENsb2NrIFBvbGFyaXR5ICovDQojZGVmaW5lIFNQSV9DUjFfTVNUUl9Qb3MgICAgICAgICAgICAgICAgICAgICgyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFNQSV9DUjFfTVNUUl9Nc2sgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFNQSV9DUjFfTVNUUl9Qb3MpICAgICAgICAgLyohPCAweDAwMDAwMDA0ICovDQojZGVmaW5lIFNQSV9DUjFfTVNUUiAgICAgICAgICAgICAgICAgICAgICAgIFNQSV9DUjFfTVNUUl9Nc2sgICAgICAgICAgICAgICAgICAgLyohPCBNYXN0ZXIgU2VsZWN0aW9uICovDQoNCiNkZWZpbmUgU1BJX0NSMV9CUl9Qb3MgICAgICAgICAgICAgICAgICAgICAgKDNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgU1BJX0NSMV9CUl9Nc2sgICAgICAgICAgICAgICAgICAgICAgKDB4N1UgPDwgU1BJX0NSMV9CUl9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDAwMzggKi8NCiNkZWZpbmUgU1BJX0NSMV9CUiAgICAgICAgICAgICAgICAgICAgICAgICAgU1BJX0NSMV9CUl9Nc2sgICAgICAgICAgICAgICAgICAgICAvKiE8IEJSWzI6MF0gYml0cyAoQmF1ZCBSYXRlIENvbnRyb2wpICovDQojZGVmaW5lIFNQSV9DUjFfQlJfMCAgICAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFNQSV9DUjFfQlJfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwMDA4ICovDQojZGVmaW5lIFNQSV9DUjFfQlJfMSAgICAgICAgICAgICAgICAgICAgICAgICgweDJVIDw8IFNQSV9DUjFfQlJfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwMDEwICovDQojZGVmaW5lIFNQSV9DUjFfQlJfMiAgICAgICAgICAgICAgICAgICAgICAgICgweDRVIDw8IFNQSV9DUjFfQlJfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwMDIwICovDQoNCiNkZWZpbmUgU1BJX0NSMV9TUEVfUG9zICAgICAgICAgICAgICAgICAgICAgKDZVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgU1BJX0NSMV9TUEVfTXNrICAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgU1BJX0NSMV9TUEVfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDAwNDAgKi8NCiNkZWZpbmUgU1BJX0NSMV9TUEUgICAgICAgICAgICAgICAgICAgICAgICAgU1BJX0NSMV9TUEVfTXNrICAgICAgICAgICAgICAgICAgICAvKiE8IFNQSSBFbmFibGUgKi8NCiNkZWZpbmUgU1BJX0NSMV9MU0JGSVJTVF9Qb3MgICAgICAgICAgICAgICAgKDdVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgU1BJX0NSMV9MU0JGSVJTVF9Nc2sgICAgICAgICAgICAgICAgKDB4MVUgPDwgU1BJX0NSMV9MU0JGSVJTVF9Qb3MpICAgICAvKiE8IDB4MDAwMDAwODAgKi8NCiNkZWZpbmUgU1BJX0NSMV9MU0JGSVJTVCAgICAgICAgICAgICAgICAgICAgU1BJX0NSMV9MU0JGSVJTVF9Nc2sgICAgICAgICAgICAgICAvKiE8IEZyYW1lIEZvcm1hdCAqLw0KI2RlZmluZSBTUElfQ1IxX1NTSV9Qb3MgICAgICAgICAgICAgICAgICAgICAoOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBTUElfQ1IxX1NTSV9Nc2sgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBTUElfQ1IxX1NTSV9Qb3MpICAgICAgICAgIC8qITwgMHgwMDAwMDEwMCAqLw0KI2RlZmluZSBTUElfQ1IxX1NTSSAgICAgICAgICAgICAgICAgICAgICAgICBTUElfQ1IxX1NTSV9Nc2sgICAgICAgICAgICAgICAgICAgIC8qITwgSW50ZXJuYWwgc2xhdmUgc2VsZWN0ICovDQojZGVmaW5lIFNQSV9DUjFfU1NNX1BvcyAgICAgICAgICAgICAgICAgICAgICg5VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFNQSV9DUjFfU1NNX01zayAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFNQSV9DUjFfU1NNX1BvcykgICAgICAgICAgLyohPCAweDAwMDAwMjAwICovDQojZGVmaW5lIFNQSV9DUjFfU1NNICAgICAgICAgICAgICAgICAgICAgICAgIFNQSV9DUjFfU1NNX01zayAgICAgICAgICAgICAgICAgICAgLyohPCBTb2Z0d2FyZSBzbGF2ZSBtYW5hZ2VtZW50ICovDQojZGVmaW5lIFNQSV9DUjFfUlhPTkxZX1BvcyAgICAgICAgICAgICAgICAgICgxMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFNQSV9DUjFfUlhPTkxZX01zayAgICAgICAgICAgICAgICAgICgweDFVIDw8IFNQSV9DUjFfUlhPTkxZX1BvcykgICAgICAgLyohPCAweDAwMDAwNDAwICovDQojZGVmaW5lIFNQSV9DUjFfUlhPTkxZICAgICAgICAgICAgICAgICAgICAgIFNQSV9DUjFfUlhPTkxZX01zayAgICAgICAgICAgICAgICAgLyohPCBSZWNlaXZlIG9ubHkgKi8NCiNkZWZpbmUgU1BJX0NSMV9ERkZfUG9zICAgICAgICAgICAgICAgICAgICAgKDExVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgU1BJX0NSMV9ERkZfTXNrICAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgU1BJX0NSMV9ERkZfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDA4MDAgKi8NCiNkZWZpbmUgU1BJX0NSMV9ERkYgICAgICAgICAgICAgICAgICAgICAgICAgU1BJX0NSMV9ERkZfTXNrICAgICAgICAgICAgICAgICAgICAvKiE8IERhdGEgRnJhbWUgRm9ybWF0ICovDQojZGVmaW5lIFNQSV9DUjFfQ1JDTkVYVF9Qb3MgICAgICAgICAgICAgICAgICgxMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFNQSV9DUjFfQ1JDTkVYVF9Nc2sgICAgICAgICAgICAgICAgICgweDFVIDw8IFNQSV9DUjFfQ1JDTkVYVF9Qb3MpICAgICAgLyohPCAweDAwMDAxMDAwICovDQojZGVmaW5lIFNQSV9DUjFfQ1JDTkVYVCAgICAgICAgICAgICAgICAgICAgIFNQSV9DUjFfQ1JDTkVYVF9Nc2sgICAgICAgICAgICAgICAgLyohPCBUcmFuc21pdCBDUkMgbmV4dCAqLw0KI2RlZmluZSBTUElfQ1IxX0NSQ0VOX1BvcyAgICAgICAgICAgICAgICAgICAoMTNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBTUElfQ1IxX0NSQ0VOX01zayAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBTUElfQ1IxX0NSQ0VOX1BvcykgICAgICAgIC8qITwgMHgwMDAwMjAwMCAqLw0KI2RlZmluZSBTUElfQ1IxX0NSQ0VOICAgICAgICAgICAgICAgICAgICAgICBTUElfQ1IxX0NSQ0VOX01zayAgICAgICAgICAgICAgICAgIC8qITwgSGFyZHdhcmUgQ1JDIGNhbGN1bGF0aW9uIGVuYWJsZSAqLw0KI2RlZmluZSBTUElfQ1IxX0JJRElPRV9Qb3MgICAgICAgICAgICAgICAgICAoMTRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBTUElfQ1IxX0JJRElPRV9Nc2sgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBTUElfQ1IxX0JJRElPRV9Qb3MpICAgICAgIC8qITwgMHgwMDAwNDAwMCAqLw0KI2RlZmluZSBTUElfQ1IxX0JJRElPRSAgICAgICAgICAgICAgICAgICAgICBTUElfQ1IxX0JJRElPRV9Nc2sgICAgICAgICAgICAgICAgIC8qITwgT3V0cHV0IGVuYWJsZSBpbiBiaWRpcmVjdGlvbmFsIG1vZGUgKi8NCiNkZWZpbmUgU1BJX0NSMV9CSURJTU9ERV9Qb3MgICAgICAgICAgICAgICAgKDE1VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgU1BJX0NSMV9CSURJTU9ERV9Nc2sgICAgICAgICAgICAgICAgKDB4MVUgPDwgU1BJX0NSMV9CSURJTU9ERV9Qb3MpICAgICAvKiE8IDB4MDAwMDgwMDAgKi8NCiNkZWZpbmUgU1BJX0NSMV9CSURJTU9ERSAgICAgICAgICAgICAgICAgICAgU1BJX0NSMV9CSURJTU9ERV9Nc2sgICAgICAgICAgICAgICAvKiE8IEJpZGlyZWN0aW9uYWwgZGF0YSBtb2RlIGVuYWJsZSAqLw0KDQovKioqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFNQSV9DUjIgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBTUElfQ1IyX1JYRE1BRU5fUG9zICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBTUElfQ1IyX1JYRE1BRU5fTXNrICAgICAgICAgICAgICAgICAoMHgxVSA8PCBTUElfQ1IyX1JYRE1BRU5fUG9zKSAgICAgIC8qITwgMHgwMDAwMDAwMSAqLw0KI2RlZmluZSBTUElfQ1IyX1JYRE1BRU4gICAgICAgICAgICAgICAgICAgICBTUElfQ1IyX1JYRE1BRU5fTXNrICAgICAgICAgICAgICAgIC8qITwgUnggQnVmZmVyIERNQSBFbmFibGUgKi8NCiNkZWZpbmUgU1BJX0NSMl9UWERNQUVOX1BvcyAgICAgICAgICAgICAgICAgKDFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgU1BJX0NSMl9UWERNQUVOX01zayAgICAgICAgICAgICAgICAgKDB4MVUgPDwgU1BJX0NSMl9UWERNQUVOX1BvcykgICAgICAvKiE8IDB4MDAwMDAwMDIgKi8NCiNkZWZpbmUgU1BJX0NSMl9UWERNQUVOICAgICAgICAgICAgICAgICAgICAgU1BJX0NSMl9UWERNQUVOX01zayAgICAgICAgICAgICAgICAvKiE8IFR4IEJ1ZmZlciBETUEgRW5hYmxlICovDQojZGVmaW5lIFNQSV9DUjJfU1NPRV9Qb3MgICAgICAgICAgICAgICAgICAgICgyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFNQSV9DUjJfU1NPRV9Nc2sgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFNQSV9DUjJfU1NPRV9Qb3MpICAgICAgICAgLyohPCAweDAwMDAwMDA0ICovDQojZGVmaW5lIFNQSV9DUjJfU1NPRSAgICAgICAgICAgICAgICAgICAgICAgIFNQSV9DUjJfU1NPRV9Nc2sgICAgICAgICAgICAgICAgICAgLyohPCBTUyBPdXRwdXQgRW5hYmxlICovDQojZGVmaW5lIFNQSV9DUjJfRlJGX1BvcyAgICAgICAgICAgICAgICAgICAgICg0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFNQSV9DUjJfRlJGX01zayAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFNQSV9DUjJfRlJGX1BvcykgICAgICAgICAgLyohPCAweDAwMDAwMDEwICovDQojZGVmaW5lIFNQSV9DUjJfRlJGICAgICAgICAgICAgICAgICAgICAgICAgIFNQSV9DUjJfRlJGX01zayAgICAgICAgICAgICAgICAgICAgLyohPCBGcmFtZSBmb3JtYXQgKi8NCiNkZWZpbmUgU1BJX0NSMl9FUlJJRV9Qb3MgICAgICAgICAgICAgICAgICAgKDVVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgU1BJX0NSMl9FUlJJRV9Nc2sgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgU1BJX0NSMl9FUlJJRV9Qb3MpICAgICAgICAvKiE8IDB4MDAwMDAwMjAgKi8NCiNkZWZpbmUgU1BJX0NSMl9FUlJJRSAgICAgICAgICAgICAgICAgICAgICAgU1BJX0NSMl9FUlJJRV9Nc2sgICAgICAgICAgICAgICAgICAvKiE8IEVycm9yIEludGVycnVwdCBFbmFibGUgKi8NCiNkZWZpbmUgU1BJX0NSMl9SWE5FSUVfUG9zICAgICAgICAgICAgICAgICAgKDZVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgU1BJX0NSMl9SWE5FSUVfTXNrICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgU1BJX0NSMl9SWE5FSUVfUG9zKSAgICAgICAvKiE8IDB4MDAwMDAwNDAgKi8NCiNkZWZpbmUgU1BJX0NSMl9SWE5FSUUgICAgICAgICAgICAgICAgICAgICAgU1BJX0NSMl9SWE5FSUVfTXNrICAgICAgICAgICAgICAgICAvKiE8IFJYIGJ1ZmZlciBOb3QgRW1wdHkgSW50ZXJydXB0IEVuYWJsZSAqLw0KI2RlZmluZSBTUElfQ1IyX1RYRUlFX1BvcyAgICAgICAgICAgICAgICAgICAoN1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBTUElfQ1IyX1RYRUlFX01zayAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBTUElfQ1IyX1RYRUlFX1BvcykgICAgICAgIC8qITwgMHgwMDAwMDA4MCAqLw0KI2RlZmluZSBTUElfQ1IyX1RYRUlFICAgICAgICAgICAgICAgICAgICAgICBTUElfQ1IyX1RYRUlFX01zayAgICAgICAgICAgICAgICAgIC8qITwgVHggYnVmZmVyIEVtcHR5IEludGVycnVwdCBFbmFibGUgKi8NCg0KLyoqKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgU1BJX1NSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgU1BJX1NSX1JYTkVfUG9zICAgICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgU1BJX1NSX1JYTkVfTXNrICAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgU1BJX1NSX1JYTkVfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDAwMDEgKi8NCiNkZWZpbmUgU1BJX1NSX1JYTkUgICAgICAgICAgICAgICAgICAgICAgICAgU1BJX1NSX1JYTkVfTXNrICAgICAgICAgICAgICAgICAgICAvKiE8IFJlY2VpdmUgYnVmZmVyIE5vdCBFbXB0eSAqLw0KI2RlZmluZSBTUElfU1JfVFhFX1BvcyAgICAgICAgICAgICAgICAgICAgICAoMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBTUElfU1JfVFhFX01zayAgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBTUElfU1JfVFhFX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDAwMiAqLw0KI2RlZmluZSBTUElfU1JfVFhFICAgICAgICAgICAgICAgICAgICAgICAgICBTUElfU1JfVFhFX01zayAgICAgICAgICAgICAgICAgICAgIC8qITwgVHJhbnNtaXQgYnVmZmVyIEVtcHR5ICovDQojZGVmaW5lIFNQSV9TUl9DSFNJREVfUG9zICAgICAgICAgICAgICAgICAgICgyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFNQSV9TUl9DSFNJREVfTXNrICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFNQSV9TUl9DSFNJREVfUG9zKSAgICAgICAgLyohPCAweDAwMDAwMDA0ICovDQojZGVmaW5lIFNQSV9TUl9DSFNJREUgICAgICAgICAgICAgICAgICAgICAgIFNQSV9TUl9DSFNJREVfTXNrICAgICAgICAgICAgICAgICAgLyohPCBDaGFubmVsIHNpZGUgKi8NCiNkZWZpbmUgU1BJX1NSX1VEUl9Qb3MgICAgICAgICAgICAgICAgICAgICAgKDNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgU1BJX1NSX1VEUl9Nc2sgICAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgU1BJX1NSX1VEUl9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDggKi8NCiNkZWZpbmUgU1BJX1NSX1VEUiAgICAgICAgICAgICAgICAgICAgICAgICAgU1BJX1NSX1VEUl9Nc2sgICAgICAgICAgICAgICAgICAgICAvKiE8IFVuZGVycnVuIGZsYWcgKi8NCiNkZWZpbmUgU1BJX1NSX0NSQ0VSUl9Qb3MgICAgICAgICAgICAgICAgICAgKDRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgU1BJX1NSX0NSQ0VSUl9Nc2sgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgU1BJX1NSX0NSQ0VSUl9Qb3MpICAgICAgICAvKiE8IDB4MDAwMDAwMTAgKi8NCiNkZWZpbmUgU1BJX1NSX0NSQ0VSUiAgICAgICAgICAgICAgICAgICAgICAgU1BJX1NSX0NSQ0VSUl9Nc2sgICAgICAgICAgICAgICAgICAvKiE8IENSQyBFcnJvciBmbGFnICovDQojZGVmaW5lIFNQSV9TUl9NT0RGX1BvcyAgICAgICAgICAgICAgICAgICAgICg1VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFNQSV9TUl9NT0RGX01zayAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFNQSV9TUl9NT0RGX1BvcykgICAgICAgICAgLyohPCAweDAwMDAwMDIwICovDQojZGVmaW5lIFNQSV9TUl9NT0RGICAgICAgICAgICAgICAgICAgICAgICAgIFNQSV9TUl9NT0RGX01zayAgICAgICAgICAgICAgICAgICAgLyohPCBNb2RlIGZhdWx0ICovDQojZGVmaW5lIFNQSV9TUl9PVlJfUG9zICAgICAgICAgICAgICAgICAgICAgICg2VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFNQSV9TUl9PVlJfTXNrICAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFNQSV9TUl9PVlJfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwMDQwICovDQojZGVmaW5lIFNQSV9TUl9PVlIgICAgICAgICAgICAgICAgICAgICAgICAgIFNQSV9TUl9PVlJfTXNrICAgICAgICAgICAgICAgICAgICAgLyohPCBPdmVycnVuIGZsYWcgKi8NCiNkZWZpbmUgU1BJX1NSX0JTWV9Qb3MgICAgICAgICAgICAgICAgICAgICAgKDdVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgU1BJX1NSX0JTWV9Nc2sgICAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgU1BJX1NSX0JTWV9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDAwODAgKi8NCiNkZWZpbmUgU1BJX1NSX0JTWSAgICAgICAgICAgICAgICAgICAgICAgICAgU1BJX1NSX0JTWV9Nc2sgICAgICAgICAgICAgICAgICAgICAvKiE8IEJ1c3kgZmxhZyAqLw0KI2RlZmluZSBTUElfU1JfRlJFX1BvcyAgICAgICAgICAgICAgICAgICAgICAoOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBTUElfU1JfRlJFX01zayAgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBTUElfU1JfRlJFX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDEwMCAqLw0KI2RlZmluZSBTUElfU1JfRlJFICAgICAgICAgICAgICAgICAgICAgICAgICBTUElfU1JfRlJFX01zayAgICAgICAgICAgICAgICAgICAgIC8qITxGcmFtZSBmb3JtYXQgZXJyb3IgZmxhZyAgKi8NCg0KLyoqKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgU1BJX0RSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgU1BJX0RSX0RSX1BvcyAgICAgICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgU1BJX0RSX0RSX01zayAgICAgICAgICAgICAgICAgICAgICAgKDB4RkZGRlUgPDwgU1BJX0RSX0RSX1BvcykgICAgICAgICAvKiE8IDB4MDAwMEZGRkYgKi8NCiNkZWZpbmUgU1BJX0RSX0RSICAgICAgICAgICAgICAgICAgICAgICAgICAgU1BJX0RSX0RSX01zayAgICAgICAgICAgICAgICAgICAgICAvKiE8IERhdGEgUmVnaXN0ZXIgKi8NCg0KLyoqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBTUElfQ1JDUFIgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgU1BJX0NSQ1BSX0NSQ1BPTFlfUG9zICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgU1BJX0NSQ1BSX0NSQ1BPTFlfTXNrICAgICAgICAgICAgICAgKDB4RkZGRlUgPDwgU1BJX0NSQ1BSX0NSQ1BPTFlfUG9zKSAvKiE8IDB4MDAwMEZGRkYgKi8NCiNkZWZpbmUgU1BJX0NSQ1BSX0NSQ1BPTFkgICAgICAgICAgICAgICAgICAgU1BJX0NSQ1BSX0NSQ1BPTFlfTXNrICAgICAgICAgICAgICAvKiE8IENSQyBwb2x5bm9taWFsIHJlZ2lzdGVyICovDQoNCi8qKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBTUElfUlhDUkNSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIFNQSV9SWENSQ1JfUlhDUkNfUG9zICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFNQSV9SWENSQ1JfUlhDUkNfTXNrICAgICAgICAgICAgICAgICgweEZGRkZVIDw8IFNQSV9SWENSQ1JfUlhDUkNfUG9zKSAgLyohPCAweDAwMDBGRkZGICovDQojZGVmaW5lIFNQSV9SWENSQ1JfUlhDUkMgICAgICAgICAgICAgICAgICAgIFNQSV9SWENSQ1JfUlhDUkNfTXNrICAgICAgICAgICAgICAgLyohPCBSeCBDUkMgUmVnaXN0ZXIgKi8NCg0KLyoqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFNQSV9UWENSQ1IgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgU1BJX1RYQ1JDUl9UWENSQ19Qb3MgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgU1BJX1RYQ1JDUl9UWENSQ19Nc2sgICAgICAgICAgICAgICAgKDB4RkZGRlUgPDwgU1BJX1RYQ1JDUl9UWENSQ19Qb3MpICAvKiE8IDB4MDAwMEZGRkYgKi8NCiNkZWZpbmUgU1BJX1RYQ1JDUl9UWENSQyAgICAgICAgICAgICAgICAgICAgU1BJX1RYQ1JDUl9UWENSQ19Nc2sgICAgICAgICAgICAgICAvKiE8IFR4IENSQyBSZWdpc3RlciAqLw0KDQovKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgU1BJX0kyU0NGR1IgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBTUElfSTJTQ0ZHUl9DSExFTl9Qb3MgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBTUElfSTJTQ0ZHUl9DSExFTl9Nc2sgICAgICAgICAgICAgICAoMHgxVSA8PCBTUElfSTJTQ0ZHUl9DSExFTl9Qb3MpICAgIC8qITwgMHgwMDAwMDAwMSAqLw0KI2RlZmluZSBTUElfSTJTQ0ZHUl9DSExFTiAgICAgICAgICAgICAgICAgICBTUElfSTJTQ0ZHUl9DSExFTl9Nc2sgICAgICAgICAgICAgIC8qITxDaGFubmVsIGxlbmd0aCAobnVtYmVyIG9mIGJpdHMgcGVyIGF1ZGlvIGNoYW5uZWwpICovDQoNCiNkZWZpbmUgU1BJX0kyU0NGR1JfREFUTEVOX1BvcyAgICAgICAgICAgICAgKDFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgU1BJX0kyU0NGR1JfREFUTEVOX01zayAgICAgICAgICAgICAgKDB4M1UgPDwgU1BJX0kyU0NGR1JfREFUTEVOX1BvcykgICAvKiE8IDB4MDAwMDAwMDYgKi8NCiNkZWZpbmUgU1BJX0kyU0NGR1JfREFUTEVOICAgICAgICAgICAgICAgICAgU1BJX0kyU0NGR1JfREFUTEVOX01zayAgICAgICAgICAgICAvKiE8REFUTEVOWzE6MF0gYml0cyAoRGF0YSBsZW5ndGggdG8gYmUgdHJhbnNmZXJyZWQpICovDQojZGVmaW5lIFNQSV9JMlNDRkdSX0RBVExFTl8wICAgICAgICAgICAgICAgICgweDFVIDw8IFNQSV9JMlNDRkdSX0RBVExFTl9Qb3MpICAgLyohPCAweDAwMDAwMDAyICovDQojZGVmaW5lIFNQSV9JMlNDRkdSX0RBVExFTl8xICAgICAgICAgICAgICAgICgweDJVIDw8IFNQSV9JMlNDRkdSX0RBVExFTl9Qb3MpICAgLyohPCAweDAwMDAwMDA0ICovDQoNCiNkZWZpbmUgU1BJX0kyU0NGR1JfQ0tQT0xfUG9zICAgICAgICAgICAgICAgKDNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgU1BJX0kyU0NGR1JfQ0tQT0xfTXNrICAgICAgICAgICAgICAgKDB4MVUgPDwgU1BJX0kyU0NGR1JfQ0tQT0xfUG9zKSAgICAvKiE8IDB4MDAwMDAwMDggKi8NCiNkZWZpbmUgU1BJX0kyU0NGR1JfQ0tQT0wgICAgICAgICAgICAgICAgICAgU1BJX0kyU0NGR1JfQ0tQT0xfTXNrICAgICAgICAgICAgICAvKiE8c3RlYWR5IHN0YXRlIGNsb2NrIHBvbGFyaXR5ICovDQoNCiNkZWZpbmUgU1BJX0kyU0NGR1JfSTJTU1REX1BvcyAgICAgICAgICAgICAgKDRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgU1BJX0kyU0NGR1JfSTJTU1REX01zayAgICAgICAgICAgICAgKDB4M1UgPDwgU1BJX0kyU0NGR1JfSTJTU1REX1BvcykgICAvKiE8IDB4MDAwMDAwMzAgKi8NCiNkZWZpbmUgU1BJX0kyU0NGR1JfSTJTU1REICAgICAgICAgICAgICAgICAgU1BJX0kyU0NGR1JfSTJTU1REX01zayAgICAgICAgICAgICAvKiE8STJTU1REWzE6MF0gYml0cyAoSTJTIHN0YW5kYXJkIHNlbGVjdGlvbikgKi8NCiNkZWZpbmUgU1BJX0kyU0NGR1JfSTJTU1REXzAgICAgICAgICAgICAgICAgKDB4MVUgPDwgU1BJX0kyU0NGR1JfSTJTU1REX1BvcykgICAvKiE8IDB4MDAwMDAwMTAgKi8NCiNkZWZpbmUgU1BJX0kyU0NGR1JfSTJTU1REXzEgICAgICAgICAgICAgICAgKDB4MlUgPDwgU1BJX0kyU0NGR1JfSTJTU1REX1BvcykgICAvKiE8IDB4MDAwMDAwMjAgKi8NCg0KI2RlZmluZSBTUElfSTJTQ0ZHUl9QQ01TWU5DX1BvcyAgICAgICAgICAgICAoN1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBTUElfSTJTQ0ZHUl9QQ01TWU5DX01zayAgICAgICAgICAgICAoMHgxVSA8PCBTUElfSTJTQ0ZHUl9QQ01TWU5DX1BvcykgIC8qITwgMHgwMDAwMDA4MCAqLw0KI2RlZmluZSBTUElfSTJTQ0ZHUl9QQ01TWU5DICAgICAgICAgICAgICAgICBTUElfSTJTQ0ZHUl9QQ01TWU5DX01zayAgICAgICAgICAgIC8qITxQQ00gZnJhbWUgc3luY2hyb25pemF0aW9uICovDQoNCiNkZWZpbmUgU1BJX0kyU0NGR1JfSTJTQ0ZHX1BvcyAgICAgICAgICAgICAgKDhVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgU1BJX0kyU0NGR1JfSTJTQ0ZHX01zayAgICAgICAgICAgICAgKDB4M1UgPDwgU1BJX0kyU0NGR1JfSTJTQ0ZHX1BvcykgICAvKiE8IDB4MDAwMDAzMDAgKi8NCiNkZWZpbmUgU1BJX0kyU0NGR1JfSTJTQ0ZHICAgICAgICAgICAgICAgICAgU1BJX0kyU0NGR1JfSTJTQ0ZHX01zayAgICAgICAgICAgICAvKiE8STJTQ0ZHWzE6MF0gYml0cyAoSTJTIGNvbmZpZ3VyYXRpb24gbW9kZSkgKi8NCiNkZWZpbmUgU1BJX0kyU0NGR1JfSTJTQ0ZHXzAgICAgICAgICAgICAgICAgKDB4MVUgPDwgU1BJX0kyU0NGR1JfSTJTQ0ZHX1BvcykgICAvKiE8IDB4MDAwMDAxMDAgKi8NCiNkZWZpbmUgU1BJX0kyU0NGR1JfSTJTQ0ZHXzEgICAgICAgICAgICAgICAgKDB4MlUgPDwgU1BJX0kyU0NGR1JfSTJTQ0ZHX1BvcykgICAvKiE8IDB4MDAwMDAyMDAgKi8NCg0KI2RlZmluZSBTUElfSTJTQ0ZHUl9JMlNFX1BvcyAgICAgICAgICAgICAgICAoMTBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBTUElfSTJTQ0ZHUl9JMlNFX01zayAgICAgICAgICAgICAgICAoMHgxVSA8PCBTUElfSTJTQ0ZHUl9JMlNFX1BvcykgICAgIC8qITwgMHgwMDAwMDQwMCAqLw0KI2RlZmluZSBTUElfSTJTQ0ZHUl9JMlNFICAgICAgICAgICAgICAgICAgICBTUElfSTJTQ0ZHUl9JMlNFX01zayAgICAgICAgICAgICAgIC8qITxJMlMgRW5hYmxlICovDQojZGVmaW5lIFNQSV9JMlNDRkdSX0kyU01PRF9Qb3MgICAgICAgICAgICAgICgxMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFNQSV9JMlNDRkdSX0kyU01PRF9Nc2sgICAgICAgICAgICAgICgweDFVIDw8IFNQSV9JMlNDRkdSX0kyU01PRF9Qb3MpICAgLyohPCAweDAwMDAwODAwICovDQojZGVmaW5lIFNQSV9JMlNDRkdSX0kyU01PRCAgICAgICAgICAgICAgICAgIFNQSV9JMlNDRkdSX0kyU01PRF9Nc2sgICAgICAgICAgICAgLyohPEkyUyBtb2RlIHNlbGVjdGlvbiAqLw0KDQovKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgU1BJX0kyU1BSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBTUElfSTJTUFJfSTJTRElWX1BvcyAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBTUElfSTJTUFJfSTJTRElWX01zayAgICAgICAgICAgICAgICAoMHhGRlUgPDwgU1BJX0kyU1BSX0kyU0RJVl9Qb3MpICAgIC8qITwgMHgwMDAwMDBGRiAqLw0KI2RlZmluZSBTUElfSTJTUFJfSTJTRElWICAgICAgICAgICAgICAgICAgICBTUElfSTJTUFJfSTJTRElWX01zayAgICAgICAgICAgICAgIC8qITxJMlMgTGluZWFyIHByZXNjYWxlciAqLw0KI2RlZmluZSBTUElfSTJTUFJfT0REX1BvcyAgICAgICAgICAgICAgICAgICAoOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBTUElfSTJTUFJfT0REX01zayAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBTUElfSTJTUFJfT0REX1BvcykgICAgICAgIC8qITwgMHgwMDAwMDEwMCAqLw0KI2RlZmluZSBTUElfSTJTUFJfT0REICAgICAgICAgICAgICAgICAgICAgICBTUElfSTJTUFJfT0REX01zayAgICAgICAgICAgICAgICAgIC8qITxPZGQgZmFjdG9yIGZvciB0aGUgcHJlc2NhbGVyICovDQojZGVmaW5lIFNQSV9JMlNQUl9NQ0tPRV9Qb3MgICAgICAgICAgICAgICAgICg5VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFNQSV9JMlNQUl9NQ0tPRV9Nc2sgICAgICAgICAgICAgICAgICgweDFVIDw8IFNQSV9JMlNQUl9NQ0tPRV9Qb3MpICAgICAgLyohPCAweDAwMDAwMjAwICovDQojZGVmaW5lIFNQSV9JMlNQUl9NQ0tPRSAgICAgICAgICAgICAgICAgICAgIFNQSV9JMlNQUl9NQ0tPRV9Nc2sgICAgICAgICAgICAgICAgLyohPE1hc3RlciBDbG9jayBPdXRwdXQgRW5hYmxlICovDQoNCi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovDQovKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLw0KLyogICAgICAgICAgICAgICAgICAgICAgIFN5c3RlbSBDb25maWd1cmF0aW9uIChTWVNDRkcpICAgICAgICAgICAgICAgICAgICAgICAgKi8NCi8qICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovDQovKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLw0KLyoqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgU1lTQ0ZHX01FTVJNUCByZWdpc3RlciAgKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgU1lTQ0ZHX01FTVJNUF9NRU1fTU9ERV9Qb3MgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgU1lTQ0ZHX01FTVJNUF9NRU1fTU9ERV9Nc2sgICAgICAoMHgzVSA8PCBTWVNDRkdfTUVNUk1QX01FTV9NT0RFX1BvcykgICAvKiE8IDB4MDAwMDAwMDMgKi8NCiNkZWZpbmUgU1lTQ0ZHX01FTVJNUF9NRU1fTU9ERSAgICAgICAgICBTWVNDRkdfTUVNUk1QX01FTV9NT0RFX01zayAgICAgICAgICAgICAvKiE8IFNZU0NGR19NZW1vcnkgUmVtYXAgQ29uZmlnICovDQojZGVmaW5lIFNZU0NGR19NRU1STVBfTUVNX01PREVfMCAgICAgICAgKDB4MVUgPDwgU1lTQ0ZHX01FTVJNUF9NRU1fTU9ERV9Qb3MpICAgLyohPCAweDAwMDAwMDAxICovDQojZGVmaW5lIFNZU0NGR19NRU1STVBfTUVNX01PREVfMSAgICAgICAgKDB4MlUgPDwgU1lTQ0ZHX01FTVJNUF9NRU1fTU9ERV9Qb3MpICAgLyohPCAweDAwMDAwMDAyICovDQojZGVmaW5lIFNZU0NGR19NRU1STVBfQk9PVF9NT0RFX1BvcyAgICAgKDhVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFNZU0NGR19NRU1STVBfQk9PVF9NT0RFX01zayAgICAgKDB4M1UgPDwgU1lTQ0ZHX01FTVJNUF9CT09UX01PREVfUG9zKSAgLyohPCAweDAwMDAwMzAwICovDQojZGVmaW5lIFNZU0NGR19NRU1STVBfQk9PVF9NT0RFICAgICAgICAgU1lTQ0ZHX01FTVJNUF9CT09UX01PREVfTXNrICAgICAgICAgICAgLyohPCBCb290IG1vZGUgQ29uZmlnICovDQojZGVmaW5lIFNZU0NGR19NRU1STVBfQk9PVF9NT0RFXzAgICAgICAgKDB4MVUgPDwgU1lTQ0ZHX01FTVJNUF9CT09UX01PREVfUG9zKSAgLyohPCAweDAwMDAwMTAwICovDQojZGVmaW5lIFNZU0NGR19NRU1STVBfQk9PVF9NT0RFXzEgICAgICAgKDB4MlUgPDwgU1lTQ0ZHX01FTVJNUF9CT09UX01PREVfUG9zKSAgLyohPCAweDAwMDAwMjAwICovDQoNCi8qKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFNZU0NGR19QTUMgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIFNZU0NGR19QTUNfVVNCX1BVX1BvcyAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFNZU0NGR19QTUNfVVNCX1BVX01zayAgICAgICAgICAgKDB4MVUgPDwgU1lTQ0ZHX1BNQ19VU0JfUFVfUG9zKSAgICAgICAgLyohPCAweDAwMDAwMDAxICovDQojZGVmaW5lIFNZU0NGR19QTUNfVVNCX1BVICAgICAgICAgICAgICAgU1lTQ0ZHX1BNQ19VU0JfUFVfTXNrICAgICAgICAgICAgICAgICAgLyohPCBTWVNDRkcgUE1DICovDQoNCi8qKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFNZU0NGR19FWFRJQ1IxIHJlZ2lzdGVyICAqKioqKioqKioqKioqKiovDQojZGVmaW5lIFNZU0NGR19FWFRJQ1IxX0VYVEkwX1BvcyAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFNZU0NGR19FWFRJQ1IxX0VYVEkwX01zayAgICAgICAgKDB4RlUgPDwgU1lTQ0ZHX0VYVElDUjFfRVhUSTBfUG9zKSAgICAgLyohPCAweDAwMDAwMDBGICovDQojZGVmaW5lIFNZU0NGR19FWFRJQ1IxX0VYVEkwICAgICAgICAgICAgU1lTQ0ZHX0VYVElDUjFfRVhUSTBfTXNrICAgICAgICAgICAgICAgLyohPCBFWFRJIDAgY29uZmlndXJhdGlvbiAqLw0KI2RlZmluZSBTWVNDRkdfRVhUSUNSMV9FWFRJMV9Qb3MgICAgICAgICg0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBTWVNDRkdfRVhUSUNSMV9FWFRJMV9Nc2sgICAgICAgICgweEZVIDw8IFNZU0NGR19FWFRJQ1IxX0VYVEkxX1BvcykgICAgIC8qITwgMHgwMDAwMDBGMCAqLw0KI2RlZmluZSBTWVNDRkdfRVhUSUNSMV9FWFRJMSAgICAgICAgICAgIFNZU0NGR19FWFRJQ1IxX0VYVEkxX01zayAgICAgICAgICAgICAgIC8qITwgRVhUSSAxIGNvbmZpZ3VyYXRpb24gKi8NCiNkZWZpbmUgU1lTQ0ZHX0VYVElDUjFfRVhUSTJfUG9zICAgICAgICAoOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgU1lTQ0ZHX0VYVElDUjFfRVhUSTJfTXNrICAgICAgICAoMHhGVSA8PCBTWVNDRkdfRVhUSUNSMV9FWFRJMl9Qb3MpICAgICAvKiE8IDB4MDAwMDBGMDAgKi8NCiNkZWZpbmUgU1lTQ0ZHX0VYVElDUjFfRVhUSTIgICAgICAgICAgICBTWVNDRkdfRVhUSUNSMV9FWFRJMl9Nc2sgICAgICAgICAgICAgICAvKiE8IEVYVEkgMiBjb25maWd1cmF0aW9uICovDQojZGVmaW5lIFNZU0NGR19FWFRJQ1IxX0VYVEkzX1BvcyAgICAgICAgKDEyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFNZU0NGR19FWFRJQ1IxX0VYVEkzX01zayAgICAgICAgKDB4RlUgPDwgU1lTQ0ZHX0VYVElDUjFfRVhUSTNfUG9zKSAgICAgLyohPCAweDAwMDBGMDAwICovDQojZGVmaW5lIFNZU0NGR19FWFRJQ1IxX0VYVEkzICAgICAgICAgICAgU1lTQ0ZHX0VYVElDUjFfRVhUSTNfTXNrICAgICAgICAgICAgICAgLyohPCBFWFRJIDMgY29uZmlndXJhdGlvbiAqLw0KDQovKiogDQogICogQGJyaWVmICBFWFRJMCBjb25maWd1cmF0aW9uICANCiAgKi8gDQojZGVmaW5lIFNZU0NGR19FWFRJQ1IxX0VYVEkwX1BBICAgICAgICAgKDB4MDAwMDAwMDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBQQVswXSBwaW4gKi8NCiNkZWZpbmUgU1lTQ0ZHX0VYVElDUjFfRVhUSTBfUEIgICAgICAgICAoMHgwMDAwMDAwMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBCWzBdIHBpbiAqLw0KI2RlZmluZSBTWVNDRkdfRVhUSUNSMV9FWFRJMF9QQyAgICAgICAgICgweDAwMDAwMDAyVSkgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgUENbMF0gcGluICovDQojZGVmaW5lIFNZU0NGR19FWFRJQ1IxX0VYVEkwX1BEICAgICAgICAgKDB4MDAwMDAwMDNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBQRFswXSBwaW4gKi8NCiNkZWZpbmUgU1lTQ0ZHX0VYVElDUjFfRVhUSTBfUEUgICAgICAgICAoMHgwMDAwMDAwNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBFWzBdIHBpbiAqLw0KI2RlZmluZSBTWVNDRkdfRVhUSUNSMV9FWFRJMF9QSCAgICAgICAgICgweDAwMDAwMDA1VSkgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgUEhbMF0gcGluICovDQojZGVmaW5lIFNZU0NGR19FWFRJQ1IxX0VYVEkwX1BGICAgICAgICAgKDB4MDAwMDAwMDZVKSAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBQRlswXSBwaW4gKi8NCiNkZWZpbmUgU1lTQ0ZHX0VYVElDUjFfRVhUSTBfUEcgICAgICAgICAoMHgwMDAwMDAwN1UpICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBHWzBdIHBpbiAqLw0KDQovKiogDQogICogQGJyaWVmICBFWFRJMSBjb25maWd1cmF0aW9uICANCiAgKi8gDQojZGVmaW5lIFNZU0NGR19FWFRJQ1IxX0VYVEkxX1BBICAgICAgICAgKDB4MDAwMDAwMDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBQQVsxXSBwaW4gKi8NCiNkZWZpbmUgU1lTQ0ZHX0VYVElDUjFfRVhUSTFfUEIgICAgICAgICAoMHgwMDAwMDAxMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBCWzFdIHBpbiAqLw0KI2RlZmluZSBTWVNDRkdfRVhUSUNSMV9FWFRJMV9QQyAgICAgICAgICgweDAwMDAwMDIwVSkgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgUENbMV0gcGluICovDQojZGVmaW5lIFNZU0NGR19FWFRJQ1IxX0VYVEkxX1BEICAgICAgICAgKDB4MDAwMDAwMzBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBQRFsxXSBwaW4gKi8NCiNkZWZpbmUgU1lTQ0ZHX0VYVElDUjFfRVhUSTFfUEUgICAgICAgICAoMHgwMDAwMDA0MFUpICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBFWzFdIHBpbiAqLw0KI2RlZmluZSBTWVNDRkdfRVhUSUNSMV9FWFRJMV9QSCAgICAgICAgICgweDAwMDAwMDUwVSkgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgUEhbMV0gcGluICovDQojZGVmaW5lIFNZU0NGR19FWFRJQ1IxX0VYVEkxX1BGICAgICAgICAgKDB4MDAwMDAwNjBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBQRlsxXSBwaW4gKi8NCiNkZWZpbmUgU1lTQ0ZHX0VYVElDUjFfRVhUSTFfUEcgICAgICAgICAoMHgwMDAwMDA3MFUpICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBHWzFdIHBpbiAqLw0KDQovKiogDQogICogQGJyaWVmICBFWFRJMiBjb25maWd1cmF0aW9uICANCiAgKi8gDQojZGVmaW5lIFNZU0NGR19FWFRJQ1IxX0VYVEkyX1BBICAgICAgICAgKDB4MDAwMDAwMDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBQQVsyXSBwaW4gKi8NCiNkZWZpbmUgU1lTQ0ZHX0VYVElDUjFfRVhUSTJfUEIgICAgICAgICAoMHgwMDAwMDEwMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBCWzJdIHBpbiAqLw0KI2RlZmluZSBTWVNDRkdfRVhUSUNSMV9FWFRJMl9QQyAgICAgICAgICgweDAwMDAwMjAwVSkgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgUENbMl0gcGluICovDQojZGVmaW5lIFNZU0NGR19FWFRJQ1IxX0VYVEkyX1BEICAgICAgICAgKDB4MDAwMDAzMDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBQRFsyXSBwaW4gKi8NCiNkZWZpbmUgU1lTQ0ZHX0VYVElDUjFfRVhUSTJfUEUgICAgICAgICAoMHgwMDAwMDQwMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBFWzJdIHBpbiAqLw0KI2RlZmluZSBTWVNDRkdfRVhUSUNSMV9FWFRJMl9QSCAgICAgICAgICgweDAwMDAwNTAwVSkgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgUEhbMl0gcGluICovDQojZGVmaW5lIFNZU0NGR19FWFRJQ1IxX0VYVEkyX1BGICAgICAgICAgKDB4MDAwMDA2MDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBQRlsyXSBwaW4gKi8NCiNkZWZpbmUgU1lTQ0ZHX0VYVElDUjFfRVhUSTJfUEcgICAgICAgICAoMHgwMDAwMDcwMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBHWzJdIHBpbiAqLw0KDQovKiogDQogICogQGJyaWVmICBFWFRJMyBjb25maWd1cmF0aW9uICANCiAgKi8gDQojZGVmaW5lIFNZU0NGR19FWFRJQ1IxX0VYVEkzX1BBICAgICAgICAgKDB4MDAwMDAwMDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBQQVszXSBwaW4gKi8NCiNkZWZpbmUgU1lTQ0ZHX0VYVElDUjFfRVhUSTNfUEIgICAgICAgICAoMHgwMDAwMTAwMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBCWzNdIHBpbiAqLw0KI2RlZmluZSBTWVNDRkdfRVhUSUNSMV9FWFRJM19QQyAgICAgICAgICgweDAwMDAyMDAwVSkgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgUENbM10gcGluICovDQojZGVmaW5lIFNZU0NGR19FWFRJQ1IxX0VYVEkzX1BEICAgICAgICAgKDB4MDAwMDMwMDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBQRFszXSBwaW4gKi8NCiNkZWZpbmUgU1lTQ0ZHX0VYVElDUjFfRVhUSTNfUEUgICAgICAgICAoMHgwMDAwNDAwMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBFWzNdIHBpbiAqLw0KI2RlZmluZSBTWVNDRkdfRVhUSUNSMV9FWFRJM19QRiAgICAgICAgICgweDAwMDAzMDAwVSkgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgUEZbM10gcGluICovDQojZGVmaW5lIFNZU0NGR19FWFRJQ1IxX0VYVEkzX1BHICAgICAgICAgKDB4MDAwMDQwMDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBQR1szXSBwaW4gKi8NCg0KLyoqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgU1lTQ0ZHX0VYVElDUjIgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBTWVNDRkdfRVhUSUNSMl9FWFRJNF9Qb3MgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBTWVNDRkdfRVhUSUNSMl9FWFRJNF9Nc2sgICAgICAgICgweEZVIDw8IFNZU0NGR19FWFRJQ1IyX0VYVEk0X1BvcykgICAgIC8qITwgMHgwMDAwMDAwRiAqLw0KI2RlZmluZSBTWVNDRkdfRVhUSUNSMl9FWFRJNCAgICAgICAgICAgIFNZU0NGR19FWFRJQ1IyX0VYVEk0X01zayAgICAgICAgICAgICAgIC8qITwgRVhUSSA0IGNvbmZpZ3VyYXRpb24gKi8NCiNkZWZpbmUgU1lTQ0ZHX0VYVElDUjJfRVhUSTVfUG9zICAgICAgICAoNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgU1lTQ0ZHX0VYVElDUjJfRVhUSTVfTXNrICAgICAgICAoMHhGVSA8PCBTWVNDRkdfRVhUSUNSMl9FWFRJNV9Qb3MpICAgICAvKiE8IDB4MDAwMDAwRjAgKi8NCiNkZWZpbmUgU1lTQ0ZHX0VYVElDUjJfRVhUSTUgICAgICAgICAgICBTWVNDRkdfRVhUSUNSMl9FWFRJNV9Nc2sgICAgICAgICAgICAgICAvKiE8IEVYVEkgNSBjb25maWd1cmF0aW9uICovDQojZGVmaW5lIFNZU0NGR19FWFRJQ1IyX0VYVEk2X1BvcyAgICAgICAgKDhVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFNZU0NGR19FWFRJQ1IyX0VYVEk2X01zayAgICAgICAgKDB4RlUgPDwgU1lTQ0ZHX0VYVElDUjJfRVhUSTZfUG9zKSAgICAgLyohPCAweDAwMDAwRjAwICovDQojZGVmaW5lIFNZU0NGR19FWFRJQ1IyX0VYVEk2ICAgICAgICAgICAgU1lTQ0ZHX0VYVElDUjJfRVhUSTZfTXNrICAgICAgICAgICAgICAgLyohPCBFWFRJIDYgY29uZmlndXJhdGlvbiAqLw0KI2RlZmluZSBTWVNDRkdfRVhUSUNSMl9FWFRJN19Qb3MgICAgICAgICgxMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBTWVNDRkdfRVhUSUNSMl9FWFRJN19Nc2sgICAgICAgICgweEZVIDw8IFNZU0NGR19FWFRJQ1IyX0VYVEk3X1BvcykgICAgIC8qITwgMHgwMDAwRjAwMCAqLw0KI2RlZmluZSBTWVNDRkdfRVhUSUNSMl9FWFRJNyAgICAgICAgICAgIFNZU0NGR19FWFRJQ1IyX0VYVEk3X01zayAgICAgICAgICAgICAgIC8qITwgRVhUSSA3IGNvbmZpZ3VyYXRpb24gKi8NCg0KLyoqIA0KICAqIEBicmllZiAgRVhUSTQgY29uZmlndXJhdGlvbiAgDQogICovIA0KI2RlZmluZSBTWVNDRkdfRVhUSUNSMl9FWFRJNF9QQSAgICAgICAgICgweDAwMDAwMDAwVSkgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgUEFbNF0gcGluICovDQojZGVmaW5lIFNZU0NGR19FWFRJQ1IyX0VYVEk0X1BCICAgICAgICAgKDB4MDAwMDAwMDFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBQQls0XSBwaW4gKi8NCiNkZWZpbmUgU1lTQ0ZHX0VYVElDUjJfRVhUSTRfUEMgICAgICAgICAoMHgwMDAwMDAwMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBDWzRdIHBpbiAqLw0KI2RlZmluZSBTWVNDRkdfRVhUSUNSMl9FWFRJNF9QRCAgICAgICAgICgweDAwMDAwMDAzVSkgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgUERbNF0gcGluICovDQojZGVmaW5lIFNZU0NGR19FWFRJQ1IyX0VYVEk0X1BFICAgICAgICAgKDB4MDAwMDAwMDRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBQRVs0XSBwaW4gKi8NCiNkZWZpbmUgU1lTQ0ZHX0VYVElDUjJfRVhUSTRfUEYgICAgICAgICAoMHgwMDAwMDAwNlUpICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBGWzRdIHBpbiAqLw0KI2RlZmluZSBTWVNDRkdfRVhUSUNSMl9FWFRJNF9QRyAgICAgICAgICgweDAwMDAwMDA3VSkgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgUEdbNF0gcGluICovDQoNCi8qKiANCiAgKiBAYnJpZWYgIEVYVEk1IGNvbmZpZ3VyYXRpb24gIA0KICAqLyANCiNkZWZpbmUgU1lTQ0ZHX0VYVElDUjJfRVhUSTVfUEEgICAgICAgICAoMHgwMDAwMDAwMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBBWzVdIHBpbiAqLw0KI2RlZmluZSBTWVNDRkdfRVhUSUNSMl9FWFRJNV9QQiAgICAgICAgICgweDAwMDAwMDEwVSkgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgUEJbNV0gcGluICovDQojZGVmaW5lIFNZU0NGR19FWFRJQ1IyX0VYVEk1X1BDICAgICAgICAgKDB4MDAwMDAwMjBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBQQ1s1XSBwaW4gKi8NCiNkZWZpbmUgU1lTQ0ZHX0VYVElDUjJfRVhUSTVfUEQgICAgICAgICAoMHgwMDAwMDAzMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBEWzVdIHBpbiAqLw0KI2RlZmluZSBTWVNDRkdfRVhUSUNSMl9FWFRJNV9QRSAgICAgICAgICgweDAwMDAwMDQwVSkgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgUEVbNV0gcGluICovDQojZGVmaW5lIFNZU0NGR19FWFRJQ1IyX0VYVEk1X1BGICAgICAgICAgKDB4MDAwMDAwNjBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBQRls1XSBwaW4gKi8NCiNkZWZpbmUgU1lTQ0ZHX0VYVElDUjJfRVhUSTVfUEcgICAgICAgICAoMHgwMDAwMDA3MFUpICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBHWzVdIHBpbiAqLw0KDQovKiogDQogICogQGJyaWVmICBFWFRJNiBjb25maWd1cmF0aW9uICANCiAgKi8gDQojZGVmaW5lIFNZU0NGR19FWFRJQ1IyX0VYVEk2X1BBICAgICAgICAgKDB4MDAwMDAwMDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBQQVs2XSBwaW4gKi8NCiNkZWZpbmUgU1lTQ0ZHX0VYVElDUjJfRVhUSTZfUEIgICAgICAgICAoMHgwMDAwMDEwMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBCWzZdIHBpbiAqLw0KI2RlZmluZSBTWVNDRkdfRVhUSUNSMl9FWFRJNl9QQyAgICAgICAgICgweDAwMDAwMjAwVSkgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgUENbNl0gcGluICovDQojZGVmaW5lIFNZU0NGR19FWFRJQ1IyX0VYVEk2X1BEICAgICAgICAgKDB4MDAwMDAzMDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBQRFs2XSBwaW4gKi8NCiNkZWZpbmUgU1lTQ0ZHX0VYVElDUjJfRVhUSTZfUEUgICAgICAgICAoMHgwMDAwMDQwMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBFWzZdIHBpbiAqLw0KI2RlZmluZSBTWVNDRkdfRVhUSUNSMl9FWFRJNl9QRiAgICAgICAgICgweDAwMDAwNjAwVSkgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgUEZbNl0gcGluICovDQojZGVmaW5lIFNZU0NGR19FWFRJQ1IyX0VYVEk2X1BHICAgICAgICAgKDB4MDAwMDA3MDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBQR1s2XSBwaW4gKi8NCg0KLyoqIA0KICAqIEBicmllZiAgRVhUSTcgY29uZmlndXJhdGlvbiAgDQogICovIA0KI2RlZmluZSBTWVNDRkdfRVhUSUNSMl9FWFRJN19QQSAgICAgICAgICgweDAwMDAwMDAwVSkgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgUEFbN10gcGluICovDQojZGVmaW5lIFNZU0NGR19FWFRJQ1IyX0VYVEk3X1BCICAgICAgICAgKDB4MDAwMDEwMDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBQQls3XSBwaW4gKi8NCiNkZWZpbmUgU1lTQ0ZHX0VYVElDUjJfRVhUSTdfUEMgICAgICAgICAoMHgwMDAwMjAwMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBDWzddIHBpbiAqLw0KI2RlZmluZSBTWVNDRkdfRVhUSUNSMl9FWFRJN19QRCAgICAgICAgICgweDAwMDAzMDAwVSkgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgUERbN10gcGluICovDQojZGVmaW5lIFNZU0NGR19FWFRJQ1IyX0VYVEk3X1BFICAgICAgICAgKDB4MDAwMDQwMDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBQRVs3XSBwaW4gKi8NCiNkZWZpbmUgU1lTQ0ZHX0VYVElDUjJfRVhUSTdfUEYgICAgICAgICAoMHgwMDAwNjAwMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBGWzddIHBpbiAqLw0KI2RlZmluZSBTWVNDRkdfRVhUSUNSMl9FWFRJN19QRyAgICAgICAgICgweDAwMDA3MDAwVSkgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgUEdbN10gcGluICovDQoNCi8qKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFNZU0NGR19FWFRJQ1IzIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgU1lTQ0ZHX0VYVElDUjNfRVhUSThfUG9zICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgU1lTQ0ZHX0VYVElDUjNfRVhUSThfTXNrICAgICAgICAoMHhGVSA8PCBTWVNDRkdfRVhUSUNSM19FWFRJOF9Qb3MpICAgICAvKiE8IDB4MDAwMDAwMEYgKi8NCiNkZWZpbmUgU1lTQ0ZHX0VYVElDUjNfRVhUSTggICAgICAgICAgICBTWVNDRkdfRVhUSUNSM19FWFRJOF9Nc2sgICAgICAgICAgICAgICAvKiE8IEVYVEkgOCBjb25maWd1cmF0aW9uICovDQojZGVmaW5lIFNZU0NGR19FWFRJQ1IzX0VYVEk5X1BvcyAgICAgICAgKDRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFNZU0NGR19FWFRJQ1IzX0VYVEk5X01zayAgICAgICAgKDB4RlUgPDwgU1lTQ0ZHX0VYVElDUjNfRVhUSTlfUG9zKSAgICAgLyohPCAweDAwMDAwMEYwICovDQojZGVmaW5lIFNZU0NGR19FWFRJQ1IzX0VYVEk5ICAgICAgICAgICAgU1lTQ0ZHX0VYVElDUjNfRVhUSTlfTXNrICAgICAgICAgICAgICAgLyohPCBFWFRJIDkgY29uZmlndXJhdGlvbiAqLw0KI2RlZmluZSBTWVNDRkdfRVhUSUNSM19FWFRJMTBfUG9zICAgICAgICg4VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBTWVNDRkdfRVhUSUNSM19FWFRJMTBfTXNrICAgICAgICgweEZVIDw8IFNZU0NGR19FWFRJQ1IzX0VYVEkxMF9Qb3MpICAgIC8qITwgMHgwMDAwMEYwMCAqLw0KI2RlZmluZSBTWVNDRkdfRVhUSUNSM19FWFRJMTAgICAgICAgICAgIFNZU0NGR19FWFRJQ1IzX0VYVEkxMF9Nc2sgICAgICAgICAgICAgIC8qITwgRVhUSSAxMCBjb25maWd1cmF0aW9uICovDQojZGVmaW5lIFNZU0NGR19FWFRJQ1IzX0VYVEkxMV9Qb3MgICAgICAgKDEyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFNZU0NGR19FWFRJQ1IzX0VYVEkxMV9Nc2sgICAgICAgKDB4RlUgPDwgU1lTQ0ZHX0VYVElDUjNfRVhUSTExX1BvcykgICAgLyohPCAweDAwMDBGMDAwICovDQojZGVmaW5lIFNZU0NGR19FWFRJQ1IzX0VYVEkxMSAgICAgICAgICAgU1lTQ0ZHX0VYVElDUjNfRVhUSTExX01zayAgICAgICAgICAgICAgLyohPCBFWFRJIDExIGNvbmZpZ3VyYXRpb24gKi8NCg0KLyoqIA0KICAqIEBicmllZiAgRVhUSTggY29uZmlndXJhdGlvbiAgDQogICovIA0KI2RlZmluZSBTWVNDRkdfRVhUSUNSM19FWFRJOF9QQSAgICAgICAgICgweDAwMDAwMDAwVSkgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgUEFbOF0gcGluICovDQojZGVmaW5lIFNZU0NGR19FWFRJQ1IzX0VYVEk4X1BCICAgICAgICAgKDB4MDAwMDAwMDFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBQQls4XSBwaW4gKi8NCiNkZWZpbmUgU1lTQ0ZHX0VYVElDUjNfRVhUSThfUEMgICAgICAgICAoMHgwMDAwMDAwMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBDWzhdIHBpbiAqLw0KI2RlZmluZSBTWVNDRkdfRVhUSUNSM19FWFRJOF9QRCAgICAgICAgICgweDAwMDAwMDAzVSkgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgUERbOF0gcGluICovDQojZGVmaW5lIFNZU0NGR19FWFRJQ1IzX0VYVEk4X1BFICAgICAgICAgKDB4MDAwMDAwMDRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBQRVs4XSBwaW4gKi8NCiNkZWZpbmUgU1lTQ0ZHX0VYVElDUjNfRVhUSThfUEYgICAgICAgICAoMHgwMDAwMDAwNlUpICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBGWzhdIHBpbiAqLw0KI2RlZmluZSBTWVNDRkdfRVhUSUNSM19FWFRJOF9QRyAgICAgICAgICgweDAwMDAwMDA3VSkgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgUEdbOF0gcGluICovDQoNCi8qKiANCiAgKiBAYnJpZWYgIEVYVEk5IGNvbmZpZ3VyYXRpb24gIA0KICAqLyANCiNkZWZpbmUgU1lTQ0ZHX0VYVElDUjNfRVhUSTlfUEEgICAgICAgICAoMHgwMDAwMDAwMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBBWzldIHBpbiAqLw0KI2RlZmluZSBTWVNDRkdfRVhUSUNSM19FWFRJOV9QQiAgICAgICAgICgweDAwMDAwMDEwVSkgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgUEJbOV0gcGluICovDQojZGVmaW5lIFNZU0NGR19FWFRJQ1IzX0VYVEk5X1BDICAgICAgICAgKDB4MDAwMDAwMjBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBQQ1s5XSBwaW4gKi8NCiNkZWZpbmUgU1lTQ0ZHX0VYVElDUjNfRVhUSTlfUEQgICAgICAgICAoMHgwMDAwMDAzMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBEWzldIHBpbiAqLw0KI2RlZmluZSBTWVNDRkdfRVhUSUNSM19FWFRJOV9QRSAgICAgICAgICgweDAwMDAwMDQwVSkgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgUEVbOV0gcGluICovDQojZGVmaW5lIFNZU0NGR19FWFRJQ1IzX0VYVEk5X1BGICAgICAgICAgKDB4MDAwMDAwNjBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBQRls5XSBwaW4gKi8NCiNkZWZpbmUgU1lTQ0ZHX0VYVElDUjNfRVhUSTlfUEcgICAgICAgICAoMHgwMDAwMDA3MFUpICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBHWzldIHBpbiAqLw0KDQovKiogDQogICogQGJyaWVmICBFWFRJMTAgY29uZmlndXJhdGlvbiAgDQogICovIA0KI2RlZmluZSBTWVNDRkdfRVhUSUNSM19FWFRJMTBfUEEgICAgICAgICgweDAwMDAwMDAwVSkgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgUEFbMTBdIHBpbiAqLw0KI2RlZmluZSBTWVNDRkdfRVhUSUNSM19FWFRJMTBfUEIgICAgICAgICgweDAwMDAwMTAwVSkgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgUEJbMTBdIHBpbiAqLw0KI2RlZmluZSBTWVNDRkdfRVhUSUNSM19FWFRJMTBfUEMgICAgICAgICgweDAwMDAwMjAwVSkgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgUENbMTBdIHBpbiAqLw0KI2RlZmluZSBTWVNDRkdfRVhUSUNSM19FWFRJMTBfUEQgICAgICAgICgweDAwMDAwMzAwVSkgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgUERbMTBdIHBpbiAqLw0KI2RlZmluZSBTWVNDRkdfRVhUSUNSM19FWFRJMTBfUEUgICAgICAgICgweDAwMDAwNDAwVSkgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgUEVbMTBdIHBpbiAqLw0KI2RlZmluZSBTWVNDRkdfRVhUSUNSM19FWFRJMTBfUEYgICAgICAgICgweDAwMDAwNjAwVSkgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgUEZbMTBdIHBpbiAqLw0KI2RlZmluZSBTWVNDRkdfRVhUSUNSM19FWFRJMTBfUEcgICAgICAgICgweDAwMDAwNzAwVSkgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgUEdbMTBdIHBpbiAqLw0KDQovKiogDQogICogQGJyaWVmICBFWFRJMTEgY29uZmlndXJhdGlvbiAgDQogICovIA0KI2RlZmluZSBTWVNDRkdfRVhUSUNSM19FWFRJMTFfUEEgICAgICAgICgweDAwMDAwMDAwVSkgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgUEFbMTFdIHBpbiAqLw0KI2RlZmluZSBTWVNDRkdfRVhUSUNSM19FWFRJMTFfUEIgICAgICAgICgweDAwMDAxMDAwVSkgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgUEJbMTFdIHBpbiAqLw0KI2RlZmluZSBTWVNDRkdfRVhUSUNSM19FWFRJMTFfUEMgICAgICAgICgweDAwMDAyMDAwVSkgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgUENbMTFdIHBpbiAqLw0KI2RlZmluZSBTWVNDRkdfRVhUSUNSM19FWFRJMTFfUEQgICAgICAgICgweDAwMDAzMDAwVSkgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgUERbMTFdIHBpbiAqLw0KI2RlZmluZSBTWVNDRkdfRVhUSUNSM19FWFRJMTFfUEUgICAgICAgICgweDAwMDA0MDAwVSkgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgUEVbMTFdIHBpbiAqLw0KI2RlZmluZSBTWVNDRkdfRVhUSUNSM19FWFRJMTFfUEYgICAgICAgICgweDAwMDA2MDAwVSkgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgUEZbMTFdIHBpbiAqLw0KI2RlZmluZSBTWVNDRkdfRVhUSUNSM19FWFRJMTFfUEcgICAgICAgICgweDAwMDA3MDAwVSkgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgUEdbMTFdIHBpbiAqLw0KDQovKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBTWVNDRkdfRVhUSUNSNCByZWdpc3RlciAgKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIFNZU0NGR19FWFRJQ1I0X0VYVEkxMl9Qb3MgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFNZU0NGR19FWFRJQ1I0X0VYVEkxMl9Nc2sgICAgICAgKDB4RlUgPDwgU1lTQ0ZHX0VYVElDUjRfRVhUSTEyX1BvcykgICAgLyohPCAweDAwMDAwMDBGICovDQojZGVmaW5lIFNZU0NGR19FWFRJQ1I0X0VYVEkxMiAgICAgICAgICAgU1lTQ0ZHX0VYVElDUjRfRVhUSTEyX01zayAgICAgICAgICAgICAgLyohPCBFWFRJIDEyIGNvbmZpZ3VyYXRpb24gKi8NCiNkZWZpbmUgU1lTQ0ZHX0VYVElDUjRfRVhUSTEzX1BvcyAgICAgICAoNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgU1lTQ0ZHX0VYVElDUjRfRVhUSTEzX01zayAgICAgICAoMHhGVSA8PCBTWVNDRkdfRVhUSUNSNF9FWFRJMTNfUG9zKSAgICAvKiE8IDB4MDAwMDAwRjAgKi8NCiNkZWZpbmUgU1lTQ0ZHX0VYVElDUjRfRVhUSTEzICAgICAgICAgICBTWVNDRkdfRVhUSUNSNF9FWFRJMTNfTXNrICAgICAgICAgICAgICAvKiE8IEVYVEkgMTMgY29uZmlndXJhdGlvbiAqLw0KI2RlZmluZSBTWVNDRkdfRVhUSUNSNF9FWFRJMTRfUG9zICAgICAgICg4VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBTWVNDRkdfRVhUSUNSNF9FWFRJMTRfTXNrICAgICAgICgweEZVIDw8IFNZU0NGR19FWFRJQ1I0X0VYVEkxNF9Qb3MpICAgIC8qITwgMHgwMDAwMEYwMCAqLw0KI2RlZmluZSBTWVNDRkdfRVhUSUNSNF9FWFRJMTQgICAgICAgICAgIFNZU0NGR19FWFRJQ1I0X0VYVEkxNF9Nc2sgICAgICAgICAgICAgIC8qITwgRVhUSSAxNCBjb25maWd1cmF0aW9uICovDQojZGVmaW5lIFNZU0NGR19FWFRJQ1I0X0VYVEkxNV9Qb3MgICAgICAgKDEyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFNZU0NGR19FWFRJQ1I0X0VYVEkxNV9Nc2sgICAgICAgKDB4RlUgPDwgU1lTQ0ZHX0VYVElDUjRfRVhUSTE1X1BvcykgICAgLyohPCAweDAwMDBGMDAwICovDQojZGVmaW5lIFNZU0NGR19FWFRJQ1I0X0VYVEkxNSAgICAgICAgICAgU1lTQ0ZHX0VYVElDUjRfRVhUSTE1X01zayAgICAgICAgICAgICAgLyohPCBFWFRJIDE1IGNvbmZpZ3VyYXRpb24gKi8NCg0KLyoqIA0KICAqIEBicmllZiAgRVhUSTEyIGNvbmZpZ3VyYXRpb24gIA0KICAqLyANCiNkZWZpbmUgU1lTQ0ZHX0VYVElDUjRfRVhUSTEyX1BBICAgICAgICAoMHgwMDAwMDAwMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBBWzEyXSBwaW4gKi8NCiNkZWZpbmUgU1lTQ0ZHX0VYVElDUjRfRVhUSTEyX1BCICAgICAgICAoMHgwMDAwMDAwMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBCWzEyXSBwaW4gKi8NCiNkZWZpbmUgU1lTQ0ZHX0VYVElDUjRfRVhUSTEyX1BDICAgICAgICAoMHgwMDAwMDAwMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBDWzEyXSBwaW4gKi8NCiNkZWZpbmUgU1lTQ0ZHX0VYVElDUjRfRVhUSTEyX1BEICAgICAgICAoMHgwMDAwMDAwM1UpICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBEWzEyXSBwaW4gKi8NCiNkZWZpbmUgU1lTQ0ZHX0VYVElDUjRfRVhUSTEyX1BFICAgICAgICAoMHgwMDAwMDAwNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBFWzEyXSBwaW4gKi8NCiNkZWZpbmUgU1lTQ0ZHX0VYVElDUjRfRVhUSTEyX1BGICAgICAgICAoMHgwMDAwMDAwNlUpICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBGWzEyXSBwaW4gKi8NCiNkZWZpbmUgU1lTQ0ZHX0VYVElDUjRfRVhUSTEyX1BHICAgICAgICAoMHgwMDAwMDAwN1UpICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBHWzEyXSBwaW4gKi8NCg0KLyoqIA0KICAqIEBicmllZiAgRVhUSTEzIGNvbmZpZ3VyYXRpb24gIA0KICAqLyANCiNkZWZpbmUgU1lTQ0ZHX0VYVElDUjRfRVhUSTEzX1BBICAgICAgICAoMHgwMDAwMDAwMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBBWzEzXSBwaW4gKi8NCiNkZWZpbmUgU1lTQ0ZHX0VYVElDUjRfRVhUSTEzX1BCICAgICAgICAoMHgwMDAwMDAxMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBCWzEzXSBwaW4gKi8NCiNkZWZpbmUgU1lTQ0ZHX0VYVElDUjRfRVhUSTEzX1BDICAgICAgICAoMHgwMDAwMDAyMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBDWzEzXSBwaW4gKi8NCiNkZWZpbmUgU1lTQ0ZHX0VYVElDUjRfRVhUSTEzX1BEICAgICAgICAoMHgwMDAwMDAzMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBEWzEzXSBwaW4gKi8NCiNkZWZpbmUgU1lTQ0ZHX0VYVElDUjRfRVhUSTEzX1BFICAgICAgICAoMHgwMDAwMDA0MFUpICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBFWzEzXSBwaW4gKi8NCiNkZWZpbmUgU1lTQ0ZHX0VYVElDUjRfRVhUSTEzX1BGICAgICAgICAoMHgwMDAwMDA2MFUpICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBGWzEzXSBwaW4gKi8NCiNkZWZpbmUgU1lTQ0ZHX0VYVElDUjRfRVhUSTEzX1BHICAgICAgICAoMHgwMDAwMDA3MFUpICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBHWzEzXSBwaW4gKi8NCg0KLyoqIA0KICAqIEBicmllZiAgRVhUSTE0IGNvbmZpZ3VyYXRpb24gIA0KICAqLyANCiNkZWZpbmUgU1lTQ0ZHX0VYVElDUjRfRVhUSTE0X1BBICAgICAgICAoMHgwMDAwMDAwMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBBWzE0XSBwaW4gKi8NCiNkZWZpbmUgU1lTQ0ZHX0VYVElDUjRfRVhUSTE0X1BCICAgICAgICAoMHgwMDAwMDEwMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBCWzE0XSBwaW4gKi8NCiNkZWZpbmUgU1lTQ0ZHX0VYVElDUjRfRVhUSTE0X1BDICAgICAgICAoMHgwMDAwMDIwMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBDWzE0XSBwaW4gKi8NCiNkZWZpbmUgU1lTQ0ZHX0VYVElDUjRfRVhUSTE0X1BEICAgICAgICAoMHgwMDAwMDMwMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBEWzE0XSBwaW4gKi8NCiNkZWZpbmUgU1lTQ0ZHX0VYVElDUjRfRVhUSTE0X1BFICAgICAgICAoMHgwMDAwMDQwMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBFWzE0XSBwaW4gKi8NCiNkZWZpbmUgU1lTQ0ZHX0VYVElDUjRfRVhUSTE0X1BGICAgICAgICAoMHgwMDAwMDYwMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBGWzE0XSBwaW4gKi8NCiNkZWZpbmUgU1lTQ0ZHX0VYVElDUjRfRVhUSTE0X1BHICAgICAgICAoMHgwMDAwMDcwMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBHWzE0XSBwaW4gKi8NCg0KLyoqIA0KICAqIEBicmllZiAgRVhUSTE1IGNvbmZpZ3VyYXRpb24gIA0KICAqLyANCiNkZWZpbmUgU1lTQ0ZHX0VYVElDUjRfRVhUSTE1X1BBICAgICAgICAoMHgwMDAwMDAwMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBBWzE1XSBwaW4gKi8NCiNkZWZpbmUgU1lTQ0ZHX0VYVElDUjRfRVhUSTE1X1BCICAgICAgICAoMHgwMDAwMTAwMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBCWzE1XSBwaW4gKi8NCiNkZWZpbmUgU1lTQ0ZHX0VYVElDUjRfRVhUSTE1X1BDICAgICAgICAoMHgwMDAwMjAwMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBDWzE1XSBwaW4gKi8NCiNkZWZpbmUgU1lTQ0ZHX0VYVElDUjRfRVhUSTE1X1BEICAgICAgICAoMHgwMDAwMzAwMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBEWzE1XSBwaW4gKi8NCiNkZWZpbmUgU1lTQ0ZHX0VYVElDUjRfRVhUSTE1X1BFICAgICAgICAoMHgwMDAwNDAwMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBFWzE1XSBwaW4gKi8NCiNkZWZpbmUgU1lTQ0ZHX0VYVElDUjRfRVhUSTE1X1BGICAgICAgICAoMHgwMDAwNjAwMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBGWzE1XSBwaW4gKi8NCiNkZWZpbmUgU1lTQ0ZHX0VYVElDUjRfRVhUSTE1X1BHICAgICAgICAoMHgwMDAwNzAwMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBHWzE1XSBwaW4gKi8NCiANCi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovDQovKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLw0KLyogICAgICAgICAgICAgICAgICAgICAgIFJvdXRpbmcgSW50ZXJmYWNlIChSSSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8NCi8qICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovDQovKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLw0KDQovKioqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBSSV9JQ1IgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBSSV9JQ1JfSUMxT1NfUG9zICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSSV9JQ1JfSUMxT1NfTXNrICAgICAgICAgICAgICAgICgweEZVIDw8IFJJX0lDUl9JQzFPU19Qb3MpICAgICAgICAgICAgIC8qITwgMHgwMDAwMDAwRiAqLw0KI2RlZmluZSBSSV9JQ1JfSUMxT1MgICAgICAgICAgICAgICAgICAgIFJJX0lDUl9JQzFPU19Nc2sgICAgICAgICAgICAgICAgICAgICAgIC8qITwgSUMxT1NbMzowXSBiaXRzIChJbnB1dCBDYXB0dXJlIDEgc2VsZWN0IGJpdHMpICovDQojZGVmaW5lIFJJX0lDUl9JQzFPU18wICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgUklfSUNSX0lDMU9TX1BvcykgICAgICAgICAgICAgLyohPCAweDAwMDAwMDAxICovDQojZGVmaW5lIFJJX0lDUl9JQzFPU18xICAgICAgICAgICAgICAgICAgKDB4MlUgPDwgUklfSUNSX0lDMU9TX1BvcykgICAgICAgICAgICAgLyohPCAweDAwMDAwMDAyICovDQojZGVmaW5lIFJJX0lDUl9JQzFPU18yICAgICAgICAgICAgICAgICAgKDB4NFUgPDwgUklfSUNSX0lDMU9TX1BvcykgICAgICAgICAgICAgLyohPCAweDAwMDAwMDA0ICovDQojZGVmaW5lIFJJX0lDUl9JQzFPU18zICAgICAgICAgICAgICAgICAgKDB4OFUgPDwgUklfSUNSX0lDMU9TX1BvcykgICAgICAgICAgICAgLyohPCAweDAwMDAwMDA4ICovDQoNCiNkZWZpbmUgUklfSUNSX0lDMk9TX1BvcyAgICAgICAgICAgICAgICAoNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUklfSUNSX0lDMk9TX01zayAgICAgICAgICAgICAgICAoMHhGVSA8PCBSSV9JQ1JfSUMyT1NfUG9zKSAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwRjAgKi8NCiNkZWZpbmUgUklfSUNSX0lDMk9TICAgICAgICAgICAgICAgICAgICBSSV9JQ1JfSUMyT1NfTXNrICAgICAgICAgICAgICAgICAgICAgICAvKiE8IElDMk9TWzM6MF0gYml0cyAoSW5wdXQgQ2FwdHVyZSAyIHNlbGVjdCBiaXRzKSAqLw0KI2RlZmluZSBSSV9JQ1JfSUMyT1NfMCAgICAgICAgICAgICAgICAgICgweDFVIDw8IFJJX0lDUl9JQzJPU19Qb3MpICAgICAgICAgICAgIC8qITwgMHgwMDAwMDAxMCAqLw0KI2RlZmluZSBSSV9JQ1JfSUMyT1NfMSAgICAgICAgICAgICAgICAgICgweDJVIDw8IFJJX0lDUl9JQzJPU19Qb3MpICAgICAgICAgICAgIC8qITwgMHgwMDAwMDAyMCAqLw0KI2RlZmluZSBSSV9JQ1JfSUMyT1NfMiAgICAgICAgICAgICAgICAgICgweDRVIDw8IFJJX0lDUl9JQzJPU19Qb3MpICAgICAgICAgICAgIC8qITwgMHgwMDAwMDA0MCAqLw0KI2RlZmluZSBSSV9JQ1JfSUMyT1NfMyAgICAgICAgICAgICAgICAgICgweDhVIDw8IFJJX0lDUl9JQzJPU19Qb3MpICAgICAgICAgICAgIC8qITwgMHgwMDAwMDA4MCAqLw0KDQojZGVmaW5lIFJJX0lDUl9JQzNPU19Qb3MgICAgICAgICAgICAgICAgKDhVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJJX0lDUl9JQzNPU19Nc2sgICAgICAgICAgICAgICAgKDB4RlUgPDwgUklfSUNSX0lDM09TX1BvcykgICAgICAgICAgICAgLyohPCAweDAwMDAwRjAwICovDQojZGVmaW5lIFJJX0lDUl9JQzNPUyAgICAgICAgICAgICAgICAgICAgUklfSUNSX0lDM09TX01zayAgICAgICAgICAgICAgICAgICAgICAgLyohPCBJQzNPU1szOjBdIGJpdHMgKElucHV0IENhcHR1cmUgMyBzZWxlY3QgYml0cykgKi8NCiNkZWZpbmUgUklfSUNSX0lDM09TXzAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBSSV9JQ1JfSUMzT1NfUG9zKSAgICAgICAgICAgICAvKiE8IDB4MDAwMDAxMDAgKi8NCiNkZWZpbmUgUklfSUNSX0lDM09TXzEgICAgICAgICAgICAgICAgICAoMHgyVSA8PCBSSV9JQ1JfSUMzT1NfUG9zKSAgICAgICAgICAgICAvKiE8IDB4MDAwMDAyMDAgKi8NCiNkZWZpbmUgUklfSUNSX0lDM09TXzIgICAgICAgICAgICAgICAgICAoMHg0VSA8PCBSSV9JQ1JfSUMzT1NfUG9zKSAgICAgICAgICAgICAvKiE8IDB4MDAwMDA0MDAgKi8NCiNkZWZpbmUgUklfSUNSX0lDM09TXzMgICAgICAgICAgICAgICAgICAoMHg4VSA8PCBSSV9JQ1JfSUMzT1NfUG9zKSAgICAgICAgICAgICAvKiE8IDB4MDAwMDA4MDAgKi8NCg0KI2RlZmluZSBSSV9JQ1JfSUM0T1NfUG9zICAgICAgICAgICAgICAgICgxMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSSV9JQ1JfSUM0T1NfTXNrICAgICAgICAgICAgICAgICgweEZVIDw8IFJJX0lDUl9JQzRPU19Qb3MpICAgICAgICAgICAgIC8qITwgMHgwMDAwRjAwMCAqLw0KI2RlZmluZSBSSV9JQ1JfSUM0T1MgICAgICAgICAgICAgICAgICAgIFJJX0lDUl9JQzRPU19Nc2sgICAgICAgICAgICAgICAgICAgICAgIC8qITwgSUM0T1NbMzowXSBiaXRzIChJbnB1dCBDYXB0dXJlIDQgc2VsZWN0IGJpdHMpICovDQojZGVmaW5lIFJJX0lDUl9JQzRPU18wICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgUklfSUNSX0lDNE9TX1BvcykgICAgICAgICAgICAgLyohPCAweDAwMDAxMDAwICovDQojZGVmaW5lIFJJX0lDUl9JQzRPU18xICAgICAgICAgICAgICAgICAgKDB4MlUgPDwgUklfSUNSX0lDNE9TX1BvcykgICAgICAgICAgICAgLyohPCAweDAwMDAyMDAwICovDQojZGVmaW5lIFJJX0lDUl9JQzRPU18yICAgICAgICAgICAgICAgICAgKDB4NFUgPDwgUklfSUNSX0lDNE9TX1BvcykgICAgICAgICAgICAgLyohPCAweDAwMDA0MDAwICovDQojZGVmaW5lIFJJX0lDUl9JQzRPU18zICAgICAgICAgICAgICAgICAgKDB4OFUgPDwgUklfSUNSX0lDNE9TX1BvcykgICAgICAgICAgICAgLyohPCAweDAwMDA4MDAwICovDQoNCiNkZWZpbmUgUklfSUNSX1RJTV9Qb3MgICAgICAgICAgICAgICAgICAoMTZVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUklfSUNSX1RJTV9Nc2sgICAgICAgICAgICAgICAgICAoMHgzVSA8PCBSSV9JQ1JfVElNX1BvcykgICAgICAgICAgICAgICAvKiE8IDB4MDAwMzAwMDAgKi8NCiNkZWZpbmUgUklfSUNSX1RJTSAgICAgICAgICAgICAgICAgICAgICBSSV9JQ1JfVElNX01zayAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFRJTVszOjBdIGJpdHMgKFRpbWVycyBzZWxlY3QgYml0cykgKi8NCiNkZWZpbmUgUklfSUNSX1RJTV8wICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBSSV9JQ1JfVElNX1BvcykgICAgICAgICAgICAgICAvKiE8IDB4MDAwMTAwMDAgKi8NCiNkZWZpbmUgUklfSUNSX1RJTV8xICAgICAgICAgICAgICAgICAgICAoMHgyVSA8PCBSSV9JQ1JfVElNX1BvcykgICAgICAgICAgICAgICAvKiE8IDB4MDAwMjAwMDAgKi8NCg0KI2RlZmluZSBSSV9JQ1JfSUMxX1BvcyAgICAgICAgICAgICAgICAgICgxOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSSV9JQ1JfSUMxX01zayAgICAgICAgICAgICAgICAgICgweDFVIDw8IFJJX0lDUl9JQzFfUG9zKSAgICAgICAgICAgICAgIC8qITwgMHgwMDA0MDAwMCAqLw0KI2RlZmluZSBSSV9JQ1JfSUMxICAgICAgICAgICAgICAgICAgICAgIFJJX0lDUl9JQzFfTXNrICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgSW5wdXQgY2FwdHVyZSAxICovDQojZGVmaW5lIFJJX0lDUl9JQzJfUG9zICAgICAgICAgICAgICAgICAgKDE5VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJJX0lDUl9JQzJfTXNrICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgUklfSUNSX0lDMl9Qb3MpICAgICAgICAgICAgICAgLyohPCAweDAwMDgwMDAwICovDQojZGVmaW5lIFJJX0lDUl9JQzIgICAgICAgICAgICAgICAgICAgICAgUklfSUNSX0lDMl9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBJbnB1dCBjYXB0dXJlIDIgKi8NCiNkZWZpbmUgUklfSUNSX0lDM19Qb3MgICAgICAgICAgICAgICAgICAoMjBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUklfSUNSX0lDM19Nc2sgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBSSV9JQ1JfSUMzX1BvcykgICAgICAgICAgICAgICAvKiE8IDB4MDAxMDAwMDAgKi8NCiNkZWZpbmUgUklfSUNSX0lDMyAgICAgICAgICAgICAgICAgICAgICBSSV9JQ1JfSUMzX01zayAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IElucHV0IGNhcHR1cmUgMyAqLw0KI2RlZmluZSBSSV9JQ1JfSUM0X1BvcyAgICAgICAgICAgICAgICAgICgyMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSSV9JQ1JfSUM0X01zayAgICAgICAgICAgICAgICAgICgweDFVIDw8IFJJX0lDUl9JQzRfUG9zKSAgICAgICAgICAgICAgIC8qITwgMHgwMDIwMDAwMCAqLw0KI2RlZmluZSBSSV9JQ1JfSUM0ICAgICAgICAgICAgICAgICAgICAgIFJJX0lDUl9JQzRfTXNrICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgSW5wdXQgY2FwdHVyZSA0ICovDQoNCi8qKioqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFJJX0FTQ1IxIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgUklfQVNDUjFfQ0hfUG9zICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUklfQVNDUjFfQ0hfTXNrICAgICAgICAgICAgICAgICAoMHg3QkZERkZGRlUgPDwgUklfQVNDUjFfQ0hfUG9zKSAgICAgICAvKiE8IDB4N0JGREZGRkYgKi8NCiNkZWZpbmUgUklfQVNDUjFfQ0ggICAgICAgICAgICAgICAgICAgICBSSV9BU0NSMV9DSF9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IEFTX0NIWzI1OjE4XSAmIEFTX0NIWzE1OjBdIGJpdHMgKCBBbmFsb2cgc3dpdGNoZXMgc2VsZWN0aW9uIGJpdHMpICovDQojZGVmaW5lIFJJX0FTQ1IxX0NIXzAgICAgICAgICAgICAgICAgICAgKDB4MDAwMDAwMDFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBCaXQgMCAqLw0KI2RlZmluZSBSSV9BU0NSMV9DSF8xICAgICAgICAgICAgICAgICAgICgweDAwMDAwMDAyVSkgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgQml0IDEgKi8NCiNkZWZpbmUgUklfQVNDUjFfQ0hfMiAgICAgICAgICAgICAgICAgICAoMHgwMDAwMDAwNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IEJpdCAyICovDQojZGVmaW5lIFJJX0FTQ1IxX0NIXzMgICAgICAgICAgICAgICAgICAgKDB4MDAwMDAwMDhVKSAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBCaXQgMyAqLw0KI2RlZmluZSBSSV9BU0NSMV9DSF80ICAgICAgICAgICAgICAgICAgICgweDAwMDAwMDEwVSkgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgQml0IDQgKi8NCiNkZWZpbmUgUklfQVNDUjFfQ0hfNSAgICAgICAgICAgICAgICAgICAoMHgwMDAwMDAyMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IEJpdCA1ICovDQojZGVmaW5lIFJJX0FTQ1IxX0NIXzYgICAgICAgICAgICAgICAgICAgKDB4MDAwMDAwNDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBCaXQgNiAqLw0KI2RlZmluZSBSSV9BU0NSMV9DSF83ICAgICAgICAgICAgICAgICAgICgweDAwMDAwMDgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgQml0IDcgKi8NCiNkZWZpbmUgUklfQVNDUjFfQ0hfOCAgICAgICAgICAgICAgICAgICAoMHgwMDAwMDEwMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IEJpdCA4ICovDQojZGVmaW5lIFJJX0FTQ1IxX0NIXzkgICAgICAgICAgICAgICAgICAgKDB4MDAwMDAyMDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBCaXQgOSAqLw0KI2RlZmluZSBSSV9BU0NSMV9DSF8xMCAgICAgICAgICAgICAgICAgICgweDAwMDAwNDAwVSkgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgQml0IDEwICovDQojZGVmaW5lIFJJX0FTQ1IxX0NIXzExICAgICAgICAgICAgICAgICAgKDB4MDAwMDA4MDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBCaXQgMTEgKi8NCiNkZWZpbmUgUklfQVNDUjFfQ0hfMTIgICAgICAgICAgICAgICAgICAoMHgwMDAwMTAwMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IEJpdCAxMiAqLw0KI2RlZmluZSBSSV9BU0NSMV9DSF8xMyAgICAgICAgICAgICAgICAgICgweDAwMDAyMDAwVSkgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgQml0IDEzICovDQojZGVmaW5lIFJJX0FTQ1IxX0NIXzE0ICAgICAgICAgICAgICAgICAgKDB4MDAwMDQwMDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBCaXQgMTQgKi8NCiNkZWZpbmUgUklfQVNDUjFfQ0hfMTUgICAgICAgICAgICAgICAgICAoMHgwMDAwODAwMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IEJpdCAxNSAqLw0KI2RlZmluZSBSSV9BU0NSMV9DSF8zMSAgICAgICAgICAgICAgICAgICgweDAwMDEwMDAwVSkgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgQml0IDE2ICovDQojZGVmaW5lIFJJX0FTQ1IxX0NIXzE4ICAgICAgICAgICAgICAgICAgKDB4MDAwNDAwMDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBCaXQgMTggKi8NCiNkZWZpbmUgUklfQVNDUjFfQ0hfMTkgICAgICAgICAgICAgICAgICAoMHgwMDA4MDAwMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IEJpdCAxOSAqLw0KI2RlZmluZSBSSV9BU0NSMV9DSF8yMCAgICAgICAgICAgICAgICAgICgweDAwMTAwMDAwVSkgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgQml0IDIwICovDQojZGVmaW5lIFJJX0FTQ1IxX0NIXzIxICAgICAgICAgICAgICAgICAgKDB4MDAyMDAwMDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBCaXQgMjEgKi8NCiNkZWZpbmUgUklfQVNDUjFfQ0hfMjIgICAgICAgICAgICAgICAgICAoMHgwMDQwMDAwMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IEJpdCAyMiAqLw0KI2RlZmluZSBSSV9BU0NSMV9DSF8yMyAgICAgICAgICAgICAgICAgICgweDAwODAwMDAwVSkgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgQml0IDIzICovDQojZGVmaW5lIFJJX0FTQ1IxX0NIXzI0ICAgICAgICAgICAgICAgICAgKDB4MDEwMDAwMDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBCaXQgMjQgKi8NCiNkZWZpbmUgUklfQVNDUjFfQ0hfMjUgICAgICAgICAgICAgICAgICAoMHgwMjAwMDAwMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IEJpdCAyNSAqLw0KI2RlZmluZSBSSV9BU0NSMV9WQ09NUF9Qb3MgICAgICAgICAgICAgICgyNlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSSV9BU0NSMV9WQ09NUF9Nc2sgICAgICAgICAgICAgICgweDFVIDw8IFJJX0FTQ1IxX1ZDT01QX1BvcykgICAgICAgICAgIC8qITwgMHgwNDAwMDAwMCAqLw0KI2RlZmluZSBSSV9BU0NSMV9WQ09NUCAgICAgICAgICAgICAgICAgIFJJX0FTQ1IxX1ZDT01QX01zayAgICAgICAgICAgICAgICAgICAgIC8qITwgQURDIGFuYWxvZyBzd2l0Y2ggc2VsZWN0aW9uIGZvciBpbnRlcm5hbCBub2RlIHRvIENPTVAxICovDQojZGVmaW5lIFJJX0FTQ1IxX0NIXzI3ICAgICAgICAgICAgICAgICAgKDB4MDgwMDAwMDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBCaXQgMjcgKi8NCiNkZWZpbmUgUklfQVNDUjFfQ0hfMjggICAgICAgICAgICAgICAgICAoMHgxMDAwMDAwMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IEJpdCAyOCAqLw0KI2RlZmluZSBSSV9BU0NSMV9DSF8yOSAgICAgICAgICAgICAgICAgICgweDIwMDAwMDAwVSkgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgQml0IDI5ICovDQojZGVmaW5lIFJJX0FTQ1IxX0NIXzMwICAgICAgICAgICAgICAgICAgKDB4NDAwMDAwMDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBCaXQgMzAgKi8NCiNkZWZpbmUgUklfQVNDUjFfU0NNX1BvcyAgICAgICAgICAgICAgICAoMzFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUklfQVNDUjFfU0NNX01zayAgICAgICAgICAgICAgICAoMHgxVSA8PCBSSV9BU0NSMV9TQ01fUG9zKSAgICAgICAgICAgICAvKiE8IDB4ODAwMDAwMDAgKi8NCiNkZWZpbmUgUklfQVNDUjFfU0NNICAgICAgICAgICAgICAgICAgICBSSV9BU0NSMV9TQ01fTXNrICAgICAgICAgICAgICAgICAgICAgICAvKiE8IEkvTyBTd2l0Y2ggY29udHJvbCBtb2RlICovDQoNCi8qKioqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFJJX0FTQ1IyIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgUklfQVNDUjJfR1IxMF8xICAgICAgICAgICAgICAgICAoMHgwMDAwMDAwMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IEdSMTAtMSBzZWxlY3Rpb24gYml0ICovDQojZGVmaW5lIFJJX0FTQ1IyX0dSMTBfMiAgICAgICAgICAgICAgICAgKDB4MDAwMDAwMDJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBHUjEwLTIgc2VsZWN0aW9uIGJpdCAqLw0KI2RlZmluZSBSSV9BU0NSMl9HUjEwXzMgICAgICAgICAgICAgICAgICgweDAwMDAwMDA0VSkgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgR1IxMC0zIHNlbGVjdGlvbiBiaXQgKi8NCiNkZWZpbmUgUklfQVNDUjJfR1IxMF80ICAgICAgICAgICAgICAgICAoMHgwMDAwMDAwOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IEdSMTAtNCBzZWxlY3Rpb24gYml0ICovDQojZGVmaW5lIFJJX0FTQ1IyX0dSNl9Qb3MgICAgICAgICAgICAgICAgKDRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJJX0FTQ1IyX0dSNl9Nc2sgICAgICAgICAgICAgICAgKDB4MTgwMDAwM1UgPDwgUklfQVNDUjJfR1I2X1BvcykgICAgICAgLyohPCAweDE4MDAwMDMwICovDQojZGVmaW5lIFJJX0FTQ1IyX0dSNiAgICAgICAgICAgICAgICAgICAgUklfQVNDUjJfR1I2X01zayAgICAgICAgICAgICAgICAgICAgICAgLyohPCBHUjYgc2VsZWN0aW9uIGJpdHMgKi8NCiNkZWZpbmUgUklfQVNDUjJfR1I2XzEgICAgICAgICAgICAgICAgICAoMHgwMDAwMDAxVSA8PCBSSV9BU0NSMl9HUjZfUG9zKSAgICAgICAvKiE8IDB4MDAwMDAwMTAgKi8NCiNkZWZpbmUgUklfQVNDUjJfR1I2XzIgICAgICAgICAgICAgICAgICAoMHgwMDAwMDAyVSA8PCBSSV9BU0NSMl9HUjZfUG9zKSAgICAgICAvKiE8IDB4MDAwMDAwMjAgKi8NCiNkZWZpbmUgUklfQVNDUjJfR1I2XzMgICAgICAgICAgICAgICAgICAoMHgwODAwMDAwVSA8PCBSSV9BU0NSMl9HUjZfUG9zKSAgICAgICAvKiE8IDB4MDgwMDAwMDAgKi8NCiNkZWZpbmUgUklfQVNDUjJfR1I2XzQgICAgICAgICAgICAgICAgICAoMHgxMDAwMDAwVSA8PCBSSV9BU0NSMl9HUjZfUG9zKSAgICAgICAvKiE8IDB4MTAwMDAwMDAgKi8NCiNkZWZpbmUgUklfQVNDUjJfR1I1XzEgICAgICAgICAgICAgICAgICAoMHgwMDAwMDA0MFUpICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IEdSNS0xIHNlbGVjdGlvbiBiaXQgKi8NCiNkZWZpbmUgUklfQVNDUjJfR1I1XzIgICAgICAgICAgICAgICAgICAoMHgwMDAwMDA4MFUpICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IEdSNS0yIHNlbGVjdGlvbiBiaXQgKi8NCiNkZWZpbmUgUklfQVNDUjJfR1I1XzMgICAgICAgICAgICAgICAgICAoMHgwMDAwMDEwMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IEdSNS0zIHNlbGVjdGlvbiBiaXQgKi8NCiNkZWZpbmUgUklfQVNDUjJfR1I0XzEgICAgICAgICAgICAgICAgICAoMHgwMDAwMDIwMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IEdSNC0xIHNlbGVjdGlvbiBiaXQgKi8NCiNkZWZpbmUgUklfQVNDUjJfR1I0XzIgICAgICAgICAgICAgICAgICAoMHgwMDAwMDQwMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IEdSNC0yIHNlbGVjdGlvbiBiaXQgKi8NCiNkZWZpbmUgUklfQVNDUjJfR1I0XzMgICAgICAgICAgICAgICAgICAoMHgwMDAwMDgwMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IEdSNC0zIHNlbGVjdGlvbiBiaXQgKi8NCiNkZWZpbmUgUklfQVNDUjJfR1I0XzQgICAgICAgICAgICAgICAgICAoMHgwMDAwODAwMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IEdSNC00IHNlbGVjdGlvbiBiaXQgKi8NCiNkZWZpbmUgUklfQVNDUjJfQ0gwYl9Qb3MgICAgICAgICAgICAgICAoMTZVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUklfQVNDUjJfQ0gwYl9Nc2sgICAgICAgICAgICAgICAoMHgxVSA8PCBSSV9BU0NSMl9DSDBiX1BvcykgICAgICAgICAgICAvKiE8IDB4MDAwMTAwMDAgKi8NCiNkZWZpbmUgUklfQVNDUjJfQ0gwYiAgICAgICAgICAgICAgICAgICBSSV9BU0NSMl9DSDBiX01zayAgICAgICAgICAgICAgICAgICAgICAvKiE8IENIMGIgc2VsZWN0aW9uIGJpdCAqLw0KI2RlZmluZSBSSV9BU0NSMl9DSDFiX1BvcyAgICAgICAgICAgICAgICgxN1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSSV9BU0NSMl9DSDFiX01zayAgICAgICAgICAgICAgICgweDFVIDw8IFJJX0FTQ1IyX0NIMWJfUG9zKSAgICAgICAgICAgIC8qITwgMHgwMDAyMDAwMCAqLw0KI2RlZmluZSBSSV9BU0NSMl9DSDFiICAgICAgICAgICAgICAgICAgIFJJX0FTQ1IyX0NIMWJfTXNrICAgICAgICAgICAgICAgICAgICAgIC8qITwgQ0gxYiBzZWxlY3Rpb24gYml0ICovDQojZGVmaW5lIFJJX0FTQ1IyX0NIMmJfUG9zICAgICAgICAgICAgICAgKDE4VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJJX0FTQ1IyX0NIMmJfTXNrICAgICAgICAgICAgICAgKDB4MVUgPDwgUklfQVNDUjJfQ0gyYl9Qb3MpICAgICAgICAgICAgLyohPCAweDAwMDQwMDAwICovDQojZGVmaW5lIFJJX0FTQ1IyX0NIMmIgICAgICAgICAgICAgICAgICAgUklfQVNDUjJfQ0gyYl9Nc2sgICAgICAgICAgICAgICAgICAgICAgLyohPCBDSDJiIHNlbGVjdGlvbiBiaXQgKi8NCiNkZWZpbmUgUklfQVNDUjJfQ0gzYl9Qb3MgICAgICAgICAgICAgICAoMTlVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUklfQVNDUjJfQ0gzYl9Nc2sgICAgICAgICAgICAgICAoMHgxVSA8PCBSSV9BU0NSMl9DSDNiX1BvcykgICAgICAgICAgICAvKiE8IDB4MDAwODAwMDAgKi8NCiNkZWZpbmUgUklfQVNDUjJfQ0gzYiAgICAgICAgICAgICAgICAgICBSSV9BU0NSMl9DSDNiX01zayAgICAgICAgICAgICAgICAgICAgICAvKiE8IENIM2Igc2VsZWN0aW9uIGJpdCAqLw0KI2RlZmluZSBSSV9BU0NSMl9DSDZiX1BvcyAgICAgICAgICAgICAgICgyMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSSV9BU0NSMl9DSDZiX01zayAgICAgICAgICAgICAgICgweDFVIDw8IFJJX0FTQ1IyX0NINmJfUG9zKSAgICAgICAgICAgIC8qITwgMHgwMDEwMDAwMCAqLw0KI2RlZmluZSBSSV9BU0NSMl9DSDZiICAgICAgICAgICAgICAgICAgIFJJX0FTQ1IyX0NINmJfTXNrICAgICAgICAgICAgICAgICAgICAgIC8qITwgQ0g2YiBzZWxlY3Rpb24gYml0ICovDQojZGVmaW5lIFJJX0FTQ1IyX0NIN2JfUG9zICAgICAgICAgICAgICAgKDIxVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJJX0FTQ1IyX0NIN2JfTXNrICAgICAgICAgICAgICAgKDB4MVUgPDwgUklfQVNDUjJfQ0g3Yl9Qb3MpICAgICAgICAgICAgLyohPCAweDAwMjAwMDAwICovDQojZGVmaW5lIFJJX0FTQ1IyX0NIN2IgICAgICAgICAgICAgICAgICAgUklfQVNDUjJfQ0g3Yl9Nc2sgICAgICAgICAgICAgICAgICAgICAgLyohPCBDSDdiIHNlbGVjdGlvbiBiaXQgKi8NCiNkZWZpbmUgUklfQVNDUjJfQ0g4Yl9Qb3MgICAgICAgICAgICAgICAoMjJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUklfQVNDUjJfQ0g4Yl9Nc2sgICAgICAgICAgICAgICAoMHgxVSA8PCBSSV9BU0NSMl9DSDhiX1BvcykgICAgICAgICAgICAvKiE8IDB4MDA0MDAwMDAgKi8NCiNkZWZpbmUgUklfQVNDUjJfQ0g4YiAgICAgICAgICAgICAgICAgICBSSV9BU0NSMl9DSDhiX01zayAgICAgICAgICAgICAgICAgICAgICAvKiE8IENIOGIgc2VsZWN0aW9uIGJpdCAqLw0KI2RlZmluZSBSSV9BU0NSMl9DSDliX1BvcyAgICAgICAgICAgICAgICgyM1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSSV9BU0NSMl9DSDliX01zayAgICAgICAgICAgICAgICgweDFVIDw8IFJJX0FTQ1IyX0NIOWJfUG9zKSAgICAgICAgICAgIC8qITwgMHgwMDgwMDAwMCAqLw0KI2RlZmluZSBSSV9BU0NSMl9DSDliICAgICAgICAgICAgICAgICAgIFJJX0FTQ1IyX0NIOWJfTXNrICAgICAgICAgICAgICAgICAgICAgIC8qITwgQ0g5YiBzZWxlY3Rpb24gYml0ICovDQojZGVmaW5lIFJJX0FTQ1IyX0NIMTBiX1BvcyAgICAgICAgICAgICAgKDI0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJJX0FTQ1IyX0NIMTBiX01zayAgICAgICAgICAgICAgKDB4MVUgPDwgUklfQVNDUjJfQ0gxMGJfUG9zKSAgICAgICAgICAgLyohPCAweDAxMDAwMDAwICovDQojZGVmaW5lIFJJX0FTQ1IyX0NIMTBiICAgICAgICAgICAgICAgICAgUklfQVNDUjJfQ0gxMGJfTXNrICAgICAgICAgICAgICAgICAgICAgLyohPCBDSDEwYiBzZWxlY3Rpb24gYml0ICovDQojZGVmaW5lIFJJX0FTQ1IyX0NIMTFiX1BvcyAgICAgICAgICAgICAgKDI1VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJJX0FTQ1IyX0NIMTFiX01zayAgICAgICAgICAgICAgKDB4MVUgPDwgUklfQVNDUjJfQ0gxMWJfUG9zKSAgICAgICAgICAgLyohPCAweDAyMDAwMDAwICovDQojZGVmaW5lIFJJX0FTQ1IyX0NIMTFiICAgICAgICAgICAgICAgICAgUklfQVNDUjJfQ0gxMWJfTXNrICAgICAgICAgICAgICAgICAgICAgLyohPCBDSDExYiBzZWxlY3Rpb24gYml0ICovDQojZGVmaW5lIFJJX0FTQ1IyX0NIMTJiX1BvcyAgICAgICAgICAgICAgKDI2VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJJX0FTQ1IyX0NIMTJiX01zayAgICAgICAgICAgICAgKDB4MVUgPDwgUklfQVNDUjJfQ0gxMmJfUG9zKSAgICAgICAgICAgLyohPCAweDA0MDAwMDAwICovDQojZGVmaW5lIFJJX0FTQ1IyX0NIMTJiICAgICAgICAgICAgICAgICAgUklfQVNDUjJfQ0gxMmJfTXNrICAgICAgICAgICAgICAgICAgICAgLyohPCBDSDEyYiBzZWxlY3Rpb24gYml0ICovDQoNCi8qKioqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFJJX0hZU0NSMSByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIFJJX0hZU0NSMV9QQV9Qb3MgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJJX0hZU0NSMV9QQV9Nc2sgICAgICAgICAgICAgICAgKDB4RkZGRlUgPDwgUklfSFlTQ1IxX1BBX1BvcykgICAgICAgICAgLyohPCAweDAwMDBGRkZGICovDQojZGVmaW5lIFJJX0hZU0NSMV9QQSAgICAgICAgICAgICAgICAgICAgUklfSFlTQ1IxX1BBX01zayAgICAgICAgICAgICAgICAgICAgICAgLyohPCBQQVsxNTowXSBQb3J0IEEgSHlzdGVyZXNpcyBzZWxlY3Rpb24gKi8NCiNkZWZpbmUgUklfSFlTQ1IxX1BBXzAgICAgICAgICAgICAgICAgICAoMHgwMDAxVSA8PCBSSV9IWVNDUjFfUEFfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDAwMDEgKi8NCiNkZWZpbmUgUklfSFlTQ1IxX1BBXzEgICAgICAgICAgICAgICAgICAoMHgwMDAyVSA8PCBSSV9IWVNDUjFfUEFfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDAwMDIgKi8NCiNkZWZpbmUgUklfSFlTQ1IxX1BBXzIgICAgICAgICAgICAgICAgICAoMHgwMDA0VSA8PCBSSV9IWVNDUjFfUEFfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDAwMDQgKi8NCiNkZWZpbmUgUklfSFlTQ1IxX1BBXzMgICAgICAgICAgICAgICAgICAoMHgwMDA4VSA8PCBSSV9IWVNDUjFfUEFfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDAwMDggKi8NCiNkZWZpbmUgUklfSFlTQ1IxX1BBXzQgICAgICAgICAgICAgICAgICAoMHgwMDEwVSA8PCBSSV9IWVNDUjFfUEFfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDAwMTAgKi8NCiNkZWZpbmUgUklfSFlTQ1IxX1BBXzUgICAgICAgICAgICAgICAgICAoMHgwMDIwVSA8PCBSSV9IWVNDUjFfUEFfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDAwMjAgKi8NCiNkZWZpbmUgUklfSFlTQ1IxX1BBXzYgICAgICAgICAgICAgICAgICAoMHgwMDQwVSA8PCBSSV9IWVNDUjFfUEFfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDAwNDAgKi8NCiNkZWZpbmUgUklfSFlTQ1IxX1BBXzcgICAgICAgICAgICAgICAgICAoMHgwMDgwVSA8PCBSSV9IWVNDUjFfUEFfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDAwODAgKi8NCiNkZWZpbmUgUklfSFlTQ1IxX1BBXzggICAgICAgICAgICAgICAgICAoMHgwMTAwVSA8PCBSSV9IWVNDUjFfUEFfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDAxMDAgKi8NCiNkZWZpbmUgUklfSFlTQ1IxX1BBXzkgICAgICAgICAgICAgICAgICAoMHgwMjAwVSA8PCBSSV9IWVNDUjFfUEFfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDAyMDAgKi8NCiNkZWZpbmUgUklfSFlTQ1IxX1BBXzEwICAgICAgICAgICAgICAgICAoMHgwNDAwVSA8PCBSSV9IWVNDUjFfUEFfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDA0MDAgKi8NCiNkZWZpbmUgUklfSFlTQ1IxX1BBXzExICAgICAgICAgICAgICAgICAoMHgwODAwVSA8PCBSSV9IWVNDUjFfUEFfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDA4MDAgKi8NCiNkZWZpbmUgUklfSFlTQ1IxX1BBXzEyICAgICAgICAgICAgICAgICAoMHgxMDAwVSA8PCBSSV9IWVNDUjFfUEFfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDEwMDAgKi8NCiNkZWZpbmUgUklfSFlTQ1IxX1BBXzEzICAgICAgICAgICAgICAgICAoMHgyMDAwVSA8PCBSSV9IWVNDUjFfUEFfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDIwMDAgKi8NCiNkZWZpbmUgUklfSFlTQ1IxX1BBXzE0ICAgICAgICAgICAgICAgICAoMHg0MDAwVSA8PCBSSV9IWVNDUjFfUEFfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDQwMDAgKi8NCiNkZWZpbmUgUklfSFlTQ1IxX1BBXzE1ICAgICAgICAgICAgICAgICAoMHg4MDAwVSA8PCBSSV9IWVNDUjFfUEFfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDgwMDAgKi8NCg0KI2RlZmluZSBSSV9IWVNDUjFfUEJfUG9zICAgICAgICAgICAgICAgICgxNlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSSV9IWVNDUjFfUEJfTXNrICAgICAgICAgICAgICAgICgweEZGRkZVIDw8IFJJX0hZU0NSMV9QQl9Qb3MpICAgICAgICAgIC8qITwgMHhGRkZGMDAwMCAqLw0KI2RlZmluZSBSSV9IWVNDUjFfUEIgICAgICAgICAgICAgICAgICAgIFJJX0hZU0NSMV9QQl9Nc2sgICAgICAgICAgICAgICAgICAgICAgIC8qITwgUEJbMTU6MF0gUG9ydCBCIEh5c3RlcmVzaXMgc2VsZWN0aW9uICovDQojZGVmaW5lIFJJX0hZU0NSMV9QQl8wICAgICAgICAgICAgICAgICAgKDB4MDAwMVUgPDwgUklfSFlTQ1IxX1BCX1BvcykgICAgICAgICAgLyohPCAweDAwMDEwMDAwICovDQojZGVmaW5lIFJJX0hZU0NSMV9QQl8xICAgICAgICAgICAgICAgICAgKDB4MDAwMlUgPDwgUklfSFlTQ1IxX1BCX1BvcykgICAgICAgICAgLyohPCAweDAwMDIwMDAwICovDQojZGVmaW5lIFJJX0hZU0NSMV9QQl8yICAgICAgICAgICAgICAgICAgKDB4MDAwNFUgPDwgUklfSFlTQ1IxX1BCX1BvcykgICAgICAgICAgLyohPCAweDAwMDQwMDAwICovDQojZGVmaW5lIFJJX0hZU0NSMV9QQl8zICAgICAgICAgICAgICAgICAgKDB4MDAwOFUgPDwgUklfSFlTQ1IxX1BCX1BvcykgICAgICAgICAgLyohPCAweDAwMDgwMDAwICovDQojZGVmaW5lIFJJX0hZU0NSMV9QQl80ICAgICAgICAgICAgICAgICAgKDB4MDAxMFUgPDwgUklfSFlTQ1IxX1BCX1BvcykgICAgICAgICAgLyohPCAweDAwMTAwMDAwICovDQojZGVmaW5lIFJJX0hZU0NSMV9QQl81ICAgICAgICAgICAgICAgICAgKDB4MDAyMFUgPDwgUklfSFlTQ1IxX1BCX1BvcykgICAgICAgICAgLyohPCAweDAwMjAwMDAwICovDQojZGVmaW5lIFJJX0hZU0NSMV9QQl82ICAgICAgICAgICAgICAgICAgKDB4MDA0MFUgPDwgUklfSFlTQ1IxX1BCX1BvcykgICAgICAgICAgLyohPCAweDAwNDAwMDAwICovDQojZGVmaW5lIFJJX0hZU0NSMV9QQl83ICAgICAgICAgICAgICAgICAgKDB4MDA4MFUgPDwgUklfSFlTQ1IxX1BCX1BvcykgICAgICAgICAgLyohPCAweDAwODAwMDAwICovDQojZGVmaW5lIFJJX0hZU0NSMV9QQl84ICAgICAgICAgICAgICAgICAgKDB4MDEwMFUgPDwgUklfSFlTQ1IxX1BCX1BvcykgICAgICAgICAgLyohPCAweDAxMDAwMDAwICovDQojZGVmaW5lIFJJX0hZU0NSMV9QQl85ICAgICAgICAgICAgICAgICAgKDB4MDIwMFUgPDwgUklfSFlTQ1IxX1BCX1BvcykgICAgICAgICAgLyohPCAweDAyMDAwMDAwICovDQojZGVmaW5lIFJJX0hZU0NSMV9QQl8xMCAgICAgICAgICAgICAgICAgKDB4MDQwMFUgPDwgUklfSFlTQ1IxX1BCX1BvcykgICAgICAgICAgLyohPCAweDA0MDAwMDAwICovDQojZGVmaW5lIFJJX0hZU0NSMV9QQl8xMSAgICAgICAgICAgICAgICAgKDB4MDgwMFUgPDwgUklfSFlTQ1IxX1BCX1BvcykgICAgICAgICAgLyohPCAweDA4MDAwMDAwICovDQojZGVmaW5lIFJJX0hZU0NSMV9QQl8xMiAgICAgICAgICAgICAgICAgKDB4MTAwMFUgPDwgUklfSFlTQ1IxX1BCX1BvcykgICAgICAgICAgLyohPCAweDEwMDAwMDAwICovDQojZGVmaW5lIFJJX0hZU0NSMV9QQl8xMyAgICAgICAgICAgICAgICAgKDB4MjAwMFUgPDwgUklfSFlTQ1IxX1BCX1BvcykgICAgICAgICAgLyohPCAweDIwMDAwMDAwICovDQojZGVmaW5lIFJJX0hZU0NSMV9QQl8xNCAgICAgICAgICAgICAgICAgKDB4NDAwMFUgPDwgUklfSFlTQ1IxX1BCX1BvcykgICAgICAgICAgLyohPCAweDQwMDAwMDAwICovDQojZGVmaW5lIFJJX0hZU0NSMV9QQl8xNSAgICAgICAgICAgICAgICAgKDB4ODAwMFUgPDwgUklfSFlTQ1IxX1BCX1BvcykgICAgICAgICAgLyohPCAweDgwMDAwMDAwICovDQoNCi8qKioqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFJJX0hZU0NSMiByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIFJJX0hZU0NSMl9QQ19Qb3MgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJJX0hZU0NSMl9QQ19Nc2sgICAgICAgICAgICAgICAgKDB4RkZGRlUgPDwgUklfSFlTQ1IyX1BDX1BvcykgICAgICAgICAgLyohPCAweDAwMDBGRkZGICovDQojZGVmaW5lIFJJX0hZU0NSMl9QQyAgICAgICAgICAgICAgICAgICAgUklfSFlTQ1IyX1BDX01zayAgICAgICAgICAgICAgICAgICAgICAgLyohPCBQQ1sxNTowXSBQb3J0IEMgSHlzdGVyZXNpcyBzZWxlY3Rpb24gKi8NCiNkZWZpbmUgUklfSFlTQ1IyX1BDXzAgICAgICAgICAgICAgICAgICAoMHgwMDAxVSA8PCBSSV9IWVNDUjJfUENfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDAwMDEgKi8NCiNkZWZpbmUgUklfSFlTQ1IyX1BDXzEgICAgICAgICAgICAgICAgICAoMHgwMDAyVSA8PCBSSV9IWVNDUjJfUENfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDAwMDIgKi8NCiNkZWZpbmUgUklfSFlTQ1IyX1BDXzIgICAgICAgICAgICAgICAgICAoMHgwMDA0VSA8PCBSSV9IWVNDUjJfUENfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDAwMDQgKi8NCiNkZWZpbmUgUklfSFlTQ1IyX1BDXzMgICAgICAgICAgICAgICAgICAoMHgwMDA4VSA8PCBSSV9IWVNDUjJfUENfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDAwMDggKi8NCiNkZWZpbmUgUklfSFlTQ1IyX1BDXzQgICAgICAgICAgICAgICAgICAoMHgwMDEwVSA8PCBSSV9IWVNDUjJfUENfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDAwMTAgKi8NCiNkZWZpbmUgUklfSFlTQ1IyX1BDXzUgICAgICAgICAgICAgICAgICAoMHgwMDIwVSA8PCBSSV9IWVNDUjJfUENfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDAwMjAgKi8NCiNkZWZpbmUgUklfSFlTQ1IyX1BDXzYgICAgICAgICAgICAgICAgICAoMHgwMDQwVSA8PCBSSV9IWVNDUjJfUENfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDAwNDAgKi8NCiNkZWZpbmUgUklfSFlTQ1IyX1BDXzcgICAgICAgICAgICAgICAgICAoMHgwMDgwVSA8PCBSSV9IWVNDUjJfUENfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDAwODAgKi8NCiNkZWZpbmUgUklfSFlTQ1IyX1BDXzggICAgICAgICAgICAgICAgICAoMHgwMTAwVSA8PCBSSV9IWVNDUjJfUENfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDAxMDAgKi8NCiNkZWZpbmUgUklfSFlTQ1IyX1BDXzkgICAgICAgICAgICAgICAgICAoMHgwMjAwVSA8PCBSSV9IWVNDUjJfUENfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDAyMDAgKi8NCiNkZWZpbmUgUklfSFlTQ1IyX1BDXzEwICAgICAgICAgICAgICAgICAoMHgwNDAwVSA8PCBSSV9IWVNDUjJfUENfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDA0MDAgKi8NCiNkZWZpbmUgUklfSFlTQ1IyX1BDXzExICAgICAgICAgICAgICAgICAoMHgwODAwVSA8PCBSSV9IWVNDUjJfUENfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDA4MDAgKi8NCiNkZWZpbmUgUklfSFlTQ1IyX1BDXzEyICAgICAgICAgICAgICAgICAoMHgxMDAwVSA8PCBSSV9IWVNDUjJfUENfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDEwMDAgKi8NCiNkZWZpbmUgUklfSFlTQ1IyX1BDXzEzICAgICAgICAgICAgICAgICAoMHgyMDAwVSA8PCBSSV9IWVNDUjJfUENfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDIwMDAgKi8NCiNkZWZpbmUgUklfSFlTQ1IyX1BDXzE0ICAgICAgICAgICAgICAgICAoMHg0MDAwVSA8PCBSSV9IWVNDUjJfUENfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDQwMDAgKi8NCiNkZWZpbmUgUklfSFlTQ1IyX1BDXzE1ICAgICAgICAgICAgICAgICAoMHg4MDAwVSA8PCBSSV9IWVNDUjJfUENfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDgwMDAgKi8NCg0KI2RlZmluZSBSSV9IWVNDUjJfUERfUG9zICAgICAgICAgICAgICAgICgxNlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSSV9IWVNDUjJfUERfTXNrICAgICAgICAgICAgICAgICgweEZGRkZVIDw8IFJJX0hZU0NSMl9QRF9Qb3MpICAgICAgICAgIC8qITwgMHhGRkZGMDAwMCAqLw0KI2RlZmluZSBSSV9IWVNDUjJfUEQgICAgICAgICAgICAgICAgICAgIFJJX0hZU0NSMl9QRF9Nc2sgICAgICAgICAgICAgICAgICAgICAgIC8qITwgUERbMTU6MF0gUG9ydCBEIEh5c3RlcmVzaXMgc2VsZWN0aW9uICovDQojZGVmaW5lIFJJX0hZU0NSMl9QRF8wICAgICAgICAgICAgICAgICAgKDB4MDAwMVUgPDwgUklfSFlTQ1IyX1BEX1BvcykgICAgICAgICAgLyohPCAweDAwMDEwMDAwICovDQojZGVmaW5lIFJJX0hZU0NSMl9QRF8xICAgICAgICAgICAgICAgICAgKDB4MDAwMlUgPDwgUklfSFlTQ1IyX1BEX1BvcykgICAgICAgICAgLyohPCAweDAwMDIwMDAwICovDQojZGVmaW5lIFJJX0hZU0NSMl9QRF8yICAgICAgICAgICAgICAgICAgKDB4MDAwNFUgPDwgUklfSFlTQ1IyX1BEX1BvcykgICAgICAgICAgLyohPCAweDAwMDQwMDAwICovDQojZGVmaW5lIFJJX0hZU0NSMl9QRF8zICAgICAgICAgICAgICAgICAgKDB4MDAwOFUgPDwgUklfSFlTQ1IyX1BEX1BvcykgICAgICAgICAgLyohPCAweDAwMDgwMDAwICovDQojZGVmaW5lIFJJX0hZU0NSMl9QRF80ICAgICAgICAgICAgICAgICAgKDB4MDAxMFUgPDwgUklfSFlTQ1IyX1BEX1BvcykgICAgICAgICAgLyohPCAweDAwMTAwMDAwICovDQojZGVmaW5lIFJJX0hZU0NSMl9QRF81ICAgICAgICAgICAgICAgICAgKDB4MDAyMFUgPDwgUklfSFlTQ1IyX1BEX1BvcykgICAgICAgICAgLyohPCAweDAwMjAwMDAwICovDQojZGVmaW5lIFJJX0hZU0NSMl9QRF82ICAgICAgICAgICAgICAgICAgKDB4MDA0MFUgPDwgUklfSFlTQ1IyX1BEX1BvcykgICAgICAgICAgLyohPCAweDAwNDAwMDAwICovDQojZGVmaW5lIFJJX0hZU0NSMl9QRF83ICAgICAgICAgICAgICAgICAgKDB4MDA4MFUgPDwgUklfSFlTQ1IyX1BEX1BvcykgICAgICAgICAgLyohPCAweDAwODAwMDAwICovDQojZGVmaW5lIFJJX0hZU0NSMl9QRF84ICAgICAgICAgICAgICAgICAgKDB4MDEwMFUgPDwgUklfSFlTQ1IyX1BEX1BvcykgICAgICAgICAgLyohPCAweDAxMDAwMDAwICovDQojZGVmaW5lIFJJX0hZU0NSMl9QRF85ICAgICAgICAgICAgICAgICAgKDB4MDIwMFUgPDwgUklfSFlTQ1IyX1BEX1BvcykgICAgICAgICAgLyohPCAweDAyMDAwMDAwICovDQojZGVmaW5lIFJJX0hZU0NSMl9QRF8xMCAgICAgICAgICAgICAgICAgKDB4MDQwMFUgPDwgUklfSFlTQ1IyX1BEX1BvcykgICAgICAgICAgLyohPCAweDA0MDAwMDAwICovDQojZGVmaW5lIFJJX0hZU0NSMl9QRF8xMSAgICAgICAgICAgICAgICAgKDB4MDgwMFUgPDwgUklfSFlTQ1IyX1BEX1BvcykgICAgICAgICAgLyohPCAweDA4MDAwMDAwICovDQojZGVmaW5lIFJJX0hZU0NSMl9QRF8xMiAgICAgICAgICAgICAgICAgKDB4MTAwMFUgPDwgUklfSFlTQ1IyX1BEX1BvcykgICAgICAgICAgLyohPCAweDEwMDAwMDAwICovDQojZGVmaW5lIFJJX0hZU0NSMl9QRF8xMyAgICAgICAgICAgICAgICAgKDB4MjAwMFUgPDwgUklfSFlTQ1IyX1BEX1BvcykgICAgICAgICAgLyohPCAweDIwMDAwMDAwICovDQojZGVmaW5lIFJJX0hZU0NSMl9QRF8xNCAgICAgICAgICAgICAgICAgKDB4NDAwMFUgPDwgUklfSFlTQ1IyX1BEX1BvcykgICAgICAgICAgLyohPCAweDQwMDAwMDAwICovDQojZGVmaW5lIFJJX0hZU0NSMl9QRF8xNSAgICAgICAgICAgICAgICAgKDB4ODAwMFUgPDwgUklfSFlTQ1IyX1BEX1BvcykgICAgICAgICAgLyohPCAweDgwMDAwMDAwICovDQoNCi8qKioqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFJJX0hZU0NSMyByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIFJJX0hZU0NSM19QRV9Qb3MgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJJX0hZU0NSM19QRV9Nc2sgICAgICAgICAgICAgICAgKDB4RkZGRlUgPDwgUklfSFlTQ1IzX1BFX1BvcykgICAgICAgICAgLyohPCAweDAwMDBGRkZGICovDQojZGVmaW5lIFJJX0hZU0NSM19QRSAgICAgICAgICAgICAgICAgICAgUklfSFlTQ1IzX1BFX01zayAgICAgICAgICAgICAgICAgICAgICAgLyohPCBQRVsxNTowXSBQb3J0IEUgSHlzdGVyZXNpcyBzZWxlY3Rpb24gKi8NCiNkZWZpbmUgUklfSFlTQ1IzX1BFXzAgICAgICAgICAgICAgICAgICAoMHgwMDAxVSA8PCBSSV9IWVNDUjNfUEVfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDAwMDEgKi8NCiNkZWZpbmUgUklfSFlTQ1IzX1BFXzEgICAgICAgICAgICAgICAgICAoMHgwMDAyVSA8PCBSSV9IWVNDUjNfUEVfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDAwMDIgKi8NCiNkZWZpbmUgUklfSFlTQ1IzX1BFXzIgICAgICAgICAgICAgICAgICAoMHgwMDA0VSA8PCBSSV9IWVNDUjNfUEVfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDAwMDQgKi8NCiNkZWZpbmUgUklfSFlTQ1IzX1BFXzMgICAgICAgICAgICAgICAgICAoMHgwMDA4VSA8PCBSSV9IWVNDUjNfUEVfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDAwMDggKi8NCiNkZWZpbmUgUklfSFlTQ1IzX1BFXzQgICAgICAgICAgICAgICAgICAoMHgwMDEwVSA8PCBSSV9IWVNDUjNfUEVfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDAwMTAgKi8NCiNkZWZpbmUgUklfSFlTQ1IzX1BFXzUgICAgICAgICAgICAgICAgICAoMHgwMDIwVSA8PCBSSV9IWVNDUjNfUEVfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDAwMjAgKi8NCiNkZWZpbmUgUklfSFlTQ1IzX1BFXzYgICAgICAgICAgICAgICAgICAoMHgwMDQwVSA8PCBSSV9IWVNDUjNfUEVfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDAwNDAgKi8NCiNkZWZpbmUgUklfSFlTQ1IzX1BFXzcgICAgICAgICAgICAgICAgICAoMHgwMDgwVSA8PCBSSV9IWVNDUjNfUEVfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDAwODAgKi8NCiNkZWZpbmUgUklfSFlTQ1IzX1BFXzggICAgICAgICAgICAgICAgICAoMHgwMTAwVSA8PCBSSV9IWVNDUjNfUEVfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDAxMDAgKi8NCiNkZWZpbmUgUklfSFlTQ1IzX1BFXzkgICAgICAgICAgICAgICAgICAoMHgwMjAwVSA8PCBSSV9IWVNDUjNfUEVfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDAyMDAgKi8NCiNkZWZpbmUgUklfSFlTQ1IzX1BFXzEwICAgICAgICAgICAgICAgICAoMHgwNDAwVSA8PCBSSV9IWVNDUjNfUEVfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDA0MDAgKi8NCiNkZWZpbmUgUklfSFlTQ1IzX1BFXzExICAgICAgICAgICAgICAgICAoMHgwODAwVSA8PCBSSV9IWVNDUjNfUEVfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDA4MDAgKi8NCiNkZWZpbmUgUklfSFlTQ1IzX1BFXzEyICAgICAgICAgICAgICAgICAoMHgxMDAwVSA8PCBSSV9IWVNDUjNfUEVfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDEwMDAgKi8NCiNkZWZpbmUgUklfSFlTQ1IzX1BFXzEzICAgICAgICAgICAgICAgICAoMHgyMDAwVSA8PCBSSV9IWVNDUjNfUEVfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDIwMDAgKi8NCiNkZWZpbmUgUklfSFlTQ1IzX1BFXzE0ICAgICAgICAgICAgICAgICAoMHg0MDAwVSA8PCBSSV9IWVNDUjNfUEVfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDQwMDAgKi8NCiNkZWZpbmUgUklfSFlTQ1IzX1BFXzE1ICAgICAgICAgICAgICAgICAoMHg4MDAwVSA8PCBSSV9IWVNDUjNfUEVfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDgwMDAgKi8NCiNkZWZpbmUgUklfSFlTQ1IzX1BGX1BvcyAgICAgICAgICAgICAgICAoMTZVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUklfSFlTQ1IzX1BGX01zayAgICAgICAgICAgICAgICAoMHhGRkZGVSA8PCBSSV9IWVNDUjNfUEZfUG9zKSAgICAgICAgICAvKiE8IDB4RkZGRjAwMDAgKi8NCiNkZWZpbmUgUklfSFlTQ1IzX1BGICAgICAgICAgICAgICAgICAgICBSSV9IWVNDUjNfUEZfTXNrICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBGWzE1OjBdIFBvcnQgRiBIeXN0ZXJlc2lzIHNlbGVjdGlvbiAqLw0KI2RlZmluZSBSSV9IWVNDUjNfUEZfMCAgICAgICAgICAgICAgICAgICgweDAwMDFVIDw8IFJJX0hZU0NSM19QRl9Qb3MpICAgICAgICAgIC8qITwgMHgwMDAxMDAwMCAqLw0KI2RlZmluZSBSSV9IWVNDUjNfUEZfMSAgICAgICAgICAgICAgICAgICgweDAwMDJVIDw8IFJJX0hZU0NSM19QRl9Qb3MpICAgICAgICAgIC8qITwgMHgwMDAyMDAwMCAqLw0KI2RlZmluZSBSSV9IWVNDUjNfUEZfMiAgICAgICAgICAgICAgICAgICgweDAwMDRVIDw8IFJJX0hZU0NSM19QRl9Qb3MpICAgICAgICAgIC8qITwgMHgwMDA0MDAwMCAqLw0KI2RlZmluZSBSSV9IWVNDUjNfUEZfMyAgICAgICAgICAgICAgICAgICgweDAwMDhVIDw8IFJJX0hZU0NSM19QRl9Qb3MpICAgICAgICAgIC8qITwgMHgwMDA4MDAwMCAqLw0KI2RlZmluZSBSSV9IWVNDUjNfUEZfNCAgICAgICAgICAgICAgICAgICgweDAwMTBVIDw8IFJJX0hZU0NSM19QRl9Qb3MpICAgICAgICAgIC8qITwgMHgwMDEwMDAwMCAqLw0KI2RlZmluZSBSSV9IWVNDUjNfUEZfNSAgICAgICAgICAgICAgICAgICgweDAwMjBVIDw8IFJJX0hZU0NSM19QRl9Qb3MpICAgICAgICAgIC8qITwgMHgwMDIwMDAwMCAqLw0KI2RlZmluZSBSSV9IWVNDUjNfUEZfNiAgICAgICAgICAgICAgICAgICgweDAwNDBVIDw8IFJJX0hZU0NSM19QRl9Qb3MpICAgICAgICAgIC8qITwgMHgwMDQwMDAwMCAqLw0KI2RlZmluZSBSSV9IWVNDUjNfUEZfNyAgICAgICAgICAgICAgICAgICgweDAwODBVIDw8IFJJX0hZU0NSM19QRl9Qb3MpICAgICAgICAgIC8qITwgMHgwMDgwMDAwMCAqLw0KI2RlZmluZSBSSV9IWVNDUjNfUEZfOCAgICAgICAgICAgICAgICAgICgweDAxMDBVIDw8IFJJX0hZU0NSM19QRl9Qb3MpICAgICAgICAgIC8qITwgMHgwMTAwMDAwMCAqLw0KI2RlZmluZSBSSV9IWVNDUjNfUEZfOSAgICAgICAgICAgICAgICAgICgweDAyMDBVIDw8IFJJX0hZU0NSM19QRl9Qb3MpICAgICAgICAgIC8qITwgMHgwMjAwMDAwMCAqLw0KI2RlZmluZSBSSV9IWVNDUjNfUEZfMTAgICAgICAgICAgICAgICAgICgweDA0MDBVIDw8IFJJX0hZU0NSM19QRl9Qb3MpICAgICAgICAgIC8qITwgMHgwNDAwMDAwMCAqLw0KI2RlZmluZSBSSV9IWVNDUjNfUEZfMTEgICAgICAgICAgICAgICAgICgweDA4MDBVIDw8IFJJX0hZU0NSM19QRl9Qb3MpICAgICAgICAgIC8qITwgMHgwODAwMDAwMCAqLw0KI2RlZmluZSBSSV9IWVNDUjNfUEZfMTIgICAgICAgICAgICAgICAgICgweDEwMDBVIDw8IFJJX0hZU0NSM19QRl9Qb3MpICAgICAgICAgIC8qITwgMHgxMDAwMDAwMCAqLw0KI2RlZmluZSBSSV9IWVNDUjNfUEZfMTMgICAgICAgICAgICAgICAgICgweDIwMDBVIDw8IFJJX0hZU0NSM19QRl9Qb3MpICAgICAgICAgIC8qITwgMHgyMDAwMDAwMCAqLw0KI2RlZmluZSBSSV9IWVNDUjNfUEZfMTQgICAgICAgICAgICAgICAgICgweDQwMDBVIDw8IFJJX0hZU0NSM19QRl9Qb3MpICAgICAgICAgIC8qITwgMHg0MDAwMDAwMCAqLw0KI2RlZmluZSBSSV9IWVNDUjNfUEZfMTUgICAgICAgICAgICAgICAgICgweDgwMDBVIDw8IFJJX0hZU0NSM19QRl9Qb3MpICAgICAgICAgIC8qITwgMHg4MDAwMDAwMCAqLw0KDQovKioqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBSSV9IWVNDUjQgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBSSV9IWVNDUjRfUEdfUG9zICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSSV9IWVNDUjRfUEdfTXNrICAgICAgICAgICAgICAgICgweEZGRkZVIDw8IFJJX0hZU0NSNF9QR19Qb3MpICAgICAgICAgIC8qITwgMHgwMDAwRkZGRiAqLw0KI2RlZmluZSBSSV9IWVNDUjRfUEcgICAgICAgICAgICAgICAgICAgIFJJX0hZU0NSNF9QR19Nc2sgICAgICAgICAgICAgICAgICAgICAgIC8qITwgUEdbMTU6MF0gUG9ydCBHIEh5c3RlcmVzaXMgc2VsZWN0aW9uICovDQojZGVmaW5lIFJJX0hZU0NSNF9QR18wICAgICAgICAgICAgICAgICAgKDB4MDAwMVUgPDwgUklfSFlTQ1I0X1BHX1BvcykgICAgICAgICAgLyohPCAweDAwMDAwMDAxICovDQojZGVmaW5lIFJJX0hZU0NSNF9QR18xICAgICAgICAgICAgICAgICAgKDB4MDAwMlUgPDwgUklfSFlTQ1I0X1BHX1BvcykgICAgICAgICAgLyohPCAweDAwMDAwMDAyICovDQojZGVmaW5lIFJJX0hZU0NSNF9QR18yICAgICAgICAgICAgICAgICAgKDB4MDAwNFUgPDwgUklfSFlTQ1I0X1BHX1BvcykgICAgICAgICAgLyohPCAweDAwMDAwMDA0ICovDQojZGVmaW5lIFJJX0hZU0NSNF9QR18zICAgICAgICAgICAgICAgICAgKDB4MDAwOFUgPDwgUklfSFlTQ1I0X1BHX1BvcykgICAgICAgICAgLyohPCAweDAwMDAwMDA4ICovDQojZGVmaW5lIFJJX0hZU0NSNF9QR180ICAgICAgICAgICAgICAgICAgKDB4MDAxMFUgPDwgUklfSFlTQ1I0X1BHX1BvcykgICAgICAgICAgLyohPCAweDAwMDAwMDEwICovDQojZGVmaW5lIFJJX0hZU0NSNF9QR181ICAgICAgICAgICAgICAgICAgKDB4MDAyMFUgPDwgUklfSFlTQ1I0X1BHX1BvcykgICAgICAgICAgLyohPCAweDAwMDAwMDIwICovDQojZGVmaW5lIFJJX0hZU0NSNF9QR182ICAgICAgICAgICAgICAgICAgKDB4MDA0MFUgPDwgUklfSFlTQ1I0X1BHX1BvcykgICAgICAgICAgLyohPCAweDAwMDAwMDQwICovDQojZGVmaW5lIFJJX0hZU0NSNF9QR183ICAgICAgICAgICAgICAgICAgKDB4MDA4MFUgPDwgUklfSFlTQ1I0X1BHX1BvcykgICAgICAgICAgLyohPCAweDAwMDAwMDgwICovDQojZGVmaW5lIFJJX0hZU0NSNF9QR184ICAgICAgICAgICAgICAgICAgKDB4MDEwMFUgPDwgUklfSFlTQ1I0X1BHX1BvcykgICAgICAgICAgLyohPCAweDAwMDAwMTAwICovDQojZGVmaW5lIFJJX0hZU0NSNF9QR185ICAgICAgICAgICAgICAgICAgKDB4MDIwMFUgPDwgUklfSFlTQ1I0X1BHX1BvcykgICAgICAgICAgLyohPCAweDAwMDAwMjAwICovDQojZGVmaW5lIFJJX0hZU0NSNF9QR18xMCAgICAgICAgICAgICAgICAgKDB4MDQwMFUgPDwgUklfSFlTQ1I0X1BHX1BvcykgICAgICAgICAgLyohPCAweDAwMDAwNDAwICovDQojZGVmaW5lIFJJX0hZU0NSNF9QR18xMSAgICAgICAgICAgICAgICAgKDB4MDgwMFUgPDwgUklfSFlTQ1I0X1BHX1BvcykgICAgICAgICAgLyohPCAweDAwMDAwODAwICovDQojZGVmaW5lIFJJX0hZU0NSNF9QR18xMiAgICAgICAgICAgICAgICAgKDB4MTAwMFUgPDwgUklfSFlTQ1I0X1BHX1BvcykgICAgICAgICAgLyohPCAweDAwMDAxMDAwICovDQojZGVmaW5lIFJJX0hZU0NSNF9QR18xMyAgICAgICAgICAgICAgICAgKDB4MjAwMFUgPDwgUklfSFlTQ1I0X1BHX1BvcykgICAgICAgICAgLyohPCAweDAwMDAyMDAwICovDQojZGVmaW5lIFJJX0hZU0NSNF9QR18xNCAgICAgICAgICAgICAgICAgKDB4NDAwMFUgPDwgUklfSFlTQ1I0X1BHX1BvcykgICAgICAgICAgLyohPCAweDAwMDA0MDAwICovDQojZGVmaW5lIFJJX0hZU0NSNF9QR18xNSAgICAgICAgICAgICAgICAgKDB4ODAwMFUgPDwgUklfSFlTQ1I0X1BHX1BvcykgICAgICAgICAgLyohPCAweDAwMDA4MDAwICovDQoNCi8qKioqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFJJX0FTTVIxIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgUklfQVNNUjFfUEFfUG9zICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUklfQVNNUjFfUEFfTXNrICAgICAgICAgICAgICAgICAoMHhGRkZGVSA8PCBSSV9BU01SMV9QQV9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMEZGRkYgKi8NCiNkZWZpbmUgUklfQVNNUjFfUEEgICAgICAgICAgICAgICAgICAgICBSSV9BU01SMV9QQV9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBBWzE1OjBdIFBvcnQgQSBzZWxlY3Rpb24qLw0KI2RlZmluZSBSSV9BU01SMV9QQV8wICAgICAgICAgICAgICAgICAgICgweDAwMDFVIDw8IFJJX0FTTVIxX1BBX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDAwMSAqLw0KI2RlZmluZSBSSV9BU01SMV9QQV8xICAgICAgICAgICAgICAgICAgICgweDAwMDJVIDw8IFJJX0FTTVIxX1BBX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDAwMiAqLw0KI2RlZmluZSBSSV9BU01SMV9QQV8yICAgICAgICAgICAgICAgICAgICgweDAwMDRVIDw8IFJJX0FTTVIxX1BBX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDAwNCAqLw0KI2RlZmluZSBSSV9BU01SMV9QQV8zICAgICAgICAgICAgICAgICAgICgweDAwMDhVIDw8IFJJX0FTTVIxX1BBX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDAwOCAqLw0KI2RlZmluZSBSSV9BU01SMV9QQV80ICAgICAgICAgICAgICAgICAgICgweDAwMTBVIDw8IFJJX0FTTVIxX1BBX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDAxMCAqLw0KI2RlZmluZSBSSV9BU01SMV9QQV81ICAgICAgICAgICAgICAgICAgICgweDAwMjBVIDw8IFJJX0FTTVIxX1BBX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDAyMCAqLw0KI2RlZmluZSBSSV9BU01SMV9QQV82ICAgICAgICAgICAgICAgICAgICgweDAwNDBVIDw8IFJJX0FTTVIxX1BBX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDA0MCAqLw0KI2RlZmluZSBSSV9BU01SMV9QQV83ICAgICAgICAgICAgICAgICAgICgweDAwODBVIDw8IFJJX0FTTVIxX1BBX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDA4MCAqLw0KI2RlZmluZSBSSV9BU01SMV9QQV84ICAgICAgICAgICAgICAgICAgICgweDAxMDBVIDw8IFJJX0FTTVIxX1BBX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDEwMCAqLw0KI2RlZmluZSBSSV9BU01SMV9QQV85ICAgICAgICAgICAgICAgICAgICgweDAyMDBVIDw8IFJJX0FTTVIxX1BBX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDIwMCAqLw0KI2RlZmluZSBSSV9BU01SMV9QQV8xMCAgICAgICAgICAgICAgICAgICgweDA0MDBVIDw8IFJJX0FTTVIxX1BBX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDQwMCAqLw0KI2RlZmluZSBSSV9BU01SMV9QQV8xMSAgICAgICAgICAgICAgICAgICgweDA4MDBVIDw8IFJJX0FTTVIxX1BBX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDgwMCAqLw0KI2RlZmluZSBSSV9BU01SMV9QQV8xMiAgICAgICAgICAgICAgICAgICgweDEwMDBVIDw8IFJJX0FTTVIxX1BBX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMTAwMCAqLw0KI2RlZmluZSBSSV9BU01SMV9QQV8xMyAgICAgICAgICAgICAgICAgICgweDIwMDBVIDw8IFJJX0FTTVIxX1BBX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMjAwMCAqLw0KI2RlZmluZSBSSV9BU01SMV9QQV8xNCAgICAgICAgICAgICAgICAgICgweDQwMDBVIDw8IFJJX0FTTVIxX1BBX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwNDAwMCAqLw0KI2RlZmluZSBSSV9BU01SMV9QQV8xNSAgICAgICAgICAgICAgICAgICgweDgwMDBVIDw8IFJJX0FTTVIxX1BBX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwODAwMCAqLw0KDQovKioqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBSSV9DTVIxIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgUklfQ01SMV9QQV9Qb3MgICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUklfQ01SMV9QQV9Nc2sgICAgICAgICAgICAgICAgICAoMHhGRkZGVSA8PCBSSV9DTVIxX1BBX1BvcykgICAgICAgICAgICAvKiE8IDB4MDAwMEZGRkYgKi8NCiNkZWZpbmUgUklfQ01SMV9QQSAgICAgICAgICAgICAgICAgICAgICBSSV9DTVIxX1BBX01zayAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBBWzE1OjBdIFBvcnQgQSBzZWxlY3Rpb24qLw0KI2RlZmluZSBSSV9DTVIxX1BBXzAgICAgICAgICAgICAgICAgICAgICgweDAwMDFVIDw8IFJJX0NNUjFfUEFfUG9zKSAgICAgICAgICAgIC8qITwgMHgwMDAwMDAwMSAqLw0KI2RlZmluZSBSSV9DTVIxX1BBXzEgICAgICAgICAgICAgICAgICAgICgweDAwMDJVIDw8IFJJX0NNUjFfUEFfUG9zKSAgICAgICAgICAgIC8qITwgMHgwMDAwMDAwMiAqLw0KI2RlZmluZSBSSV9DTVIxX1BBXzIgICAgICAgICAgICAgICAgICAgICgweDAwMDRVIDw8IFJJX0NNUjFfUEFfUG9zKSAgICAgICAgICAgIC8qITwgMHgwMDAwMDAwNCAqLw0KI2RlZmluZSBSSV9DTVIxX1BBXzMgICAgICAgICAgICAgICAgICAgICgweDAwMDhVIDw8IFJJX0NNUjFfUEFfUG9zKSAgICAgICAgICAgIC8qITwgMHgwMDAwMDAwOCAqLw0KI2RlZmluZSBSSV9DTVIxX1BBXzQgICAgICAgICAgICAgICAgICAgICgweDAwMTBVIDw8IFJJX0NNUjFfUEFfUG9zKSAgICAgICAgICAgIC8qITwgMHgwMDAwMDAxMCAqLw0KI2RlZmluZSBSSV9DTVIxX1BBXzUgICAgICAgICAgICAgICAgICAgICgweDAwMjBVIDw8IFJJX0NNUjFfUEFfUG9zKSAgICAgICAgICAgIC8qITwgMHgwMDAwMDAyMCAqLw0KI2RlZmluZSBSSV9DTVIxX1BBXzYgICAgICAgICAgICAgICAgICAgICgweDAwNDBVIDw8IFJJX0NNUjFfUEFfUG9zKSAgICAgICAgICAgIC8qITwgMHgwMDAwMDA0MCAqLw0KI2RlZmluZSBSSV9DTVIxX1BBXzcgICAgICAgICAgICAgICAgICAgICgweDAwODBVIDw8IFJJX0NNUjFfUEFfUG9zKSAgICAgICAgICAgIC8qITwgMHgwMDAwMDA4MCAqLw0KI2RlZmluZSBSSV9DTVIxX1BBXzggICAgICAgICAgICAgICAgICAgICgweDAxMDBVIDw8IFJJX0NNUjFfUEFfUG9zKSAgICAgICAgICAgIC8qITwgMHgwMDAwMDEwMCAqLw0KI2RlZmluZSBSSV9DTVIxX1BBXzkgICAgICAgICAgICAgICAgICAgICgweDAyMDBVIDw8IFJJX0NNUjFfUEFfUG9zKSAgICAgICAgICAgIC8qITwgMHgwMDAwMDIwMCAqLw0KI2RlZmluZSBSSV9DTVIxX1BBXzEwICAgICAgICAgICAgICAgICAgICgweDA0MDBVIDw8IFJJX0NNUjFfUEFfUG9zKSAgICAgICAgICAgIC8qITwgMHgwMDAwMDQwMCAqLw0KI2RlZmluZSBSSV9DTVIxX1BBXzExICAgICAgICAgICAgICAgICAgICgweDA4MDBVIDw8IFJJX0NNUjFfUEFfUG9zKSAgICAgICAgICAgIC8qITwgMHgwMDAwMDgwMCAqLw0KI2RlZmluZSBSSV9DTVIxX1BBXzEyICAgICAgICAgICAgICAgICAgICgweDEwMDBVIDw8IFJJX0NNUjFfUEFfUG9zKSAgICAgICAgICAgIC8qITwgMHgwMDAwMTAwMCAqLw0KI2RlZmluZSBSSV9DTVIxX1BBXzEzICAgICAgICAgICAgICAgICAgICgweDIwMDBVIDw8IFJJX0NNUjFfUEFfUG9zKSAgICAgICAgICAgIC8qITwgMHgwMDAwMjAwMCAqLw0KI2RlZmluZSBSSV9DTVIxX1BBXzE0ICAgICAgICAgICAgICAgICAgICgweDQwMDBVIDw8IFJJX0NNUjFfUEFfUG9zKSAgICAgICAgICAgIC8qITwgMHgwMDAwNDAwMCAqLw0KI2RlZmluZSBSSV9DTVIxX1BBXzE1ICAgICAgICAgICAgICAgICAgICgweDgwMDBVIDw8IFJJX0NNUjFfUEFfUG9zKSAgICAgICAgICAgIC8qITwgMHgwMDAwODAwMCAqLw0KDQovKioqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBSSV9DSUNSMSByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIFJJX0NJQ1IxX1BBX1BvcyAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJJX0NJQ1IxX1BBX01zayAgICAgICAgICAgICAgICAgKDB4RkZGRlUgPDwgUklfQ0lDUjFfUEFfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDBGRkZGICovDQojZGVmaW5lIFJJX0NJQ1IxX1BBICAgICAgICAgICAgICAgICAgICAgUklfQ0lDUjFfUEFfTXNrICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBQQVsxNTowXSBQb3J0IEEgc2VsZWN0aW9uKi8NCiNkZWZpbmUgUklfQ0lDUjFfUEFfMCAgICAgICAgICAgICAgICAgICAoMHgwMDAxVSA8PCBSSV9DSUNSMV9QQV9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDEgKi8NCiNkZWZpbmUgUklfQ0lDUjFfUEFfMSAgICAgICAgICAgICAgICAgICAoMHgwMDAyVSA8PCBSSV9DSUNSMV9QQV9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDIgKi8NCiNkZWZpbmUgUklfQ0lDUjFfUEFfMiAgICAgICAgICAgICAgICAgICAoMHgwMDA0VSA8PCBSSV9DSUNSMV9QQV9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDQgKi8NCiNkZWZpbmUgUklfQ0lDUjFfUEFfMyAgICAgICAgICAgICAgICAgICAoMHgwMDA4VSA8PCBSSV9DSUNSMV9QQV9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDggKi8NCiNkZWZpbmUgUklfQ0lDUjFfUEFfNCAgICAgICAgICAgICAgICAgICAoMHgwMDEwVSA8PCBSSV9DSUNSMV9QQV9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDAwMTAgKi8NCiNkZWZpbmUgUklfQ0lDUjFfUEFfNSAgICAgICAgICAgICAgICAgICAoMHgwMDIwVSA8PCBSSV9DSUNSMV9QQV9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDAwMjAgKi8NCiNkZWZpbmUgUklfQ0lDUjFfUEFfNiAgICAgICAgICAgICAgICAgICAoMHgwMDQwVSA8PCBSSV9DSUNSMV9QQV9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDAwNDAgKi8NCiNkZWZpbmUgUklfQ0lDUjFfUEFfNyAgICAgICAgICAgICAgICAgICAoMHgwMDgwVSA8PCBSSV9DSUNSMV9QQV9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDAwODAgKi8NCiNkZWZpbmUgUklfQ0lDUjFfUEFfOCAgICAgICAgICAgICAgICAgICAoMHgwMTAwVSA8PCBSSV9DSUNSMV9QQV9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDAxMDAgKi8NCiNkZWZpbmUgUklfQ0lDUjFfUEFfOSAgICAgICAgICAgICAgICAgICAoMHgwMjAwVSA8PCBSSV9DSUNSMV9QQV9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDAyMDAgKi8NCiNkZWZpbmUgUklfQ0lDUjFfUEFfMTAgICAgICAgICAgICAgICAgICAoMHgwNDAwVSA8PCBSSV9DSUNSMV9QQV9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDA0MDAgKi8NCiNkZWZpbmUgUklfQ0lDUjFfUEFfMTEgICAgICAgICAgICAgICAgICAoMHgwODAwVSA8PCBSSV9DSUNSMV9QQV9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDA4MDAgKi8NCiNkZWZpbmUgUklfQ0lDUjFfUEFfMTIgICAgICAgICAgICAgICAgICAoMHgxMDAwVSA8PCBSSV9DSUNSMV9QQV9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDEwMDAgKi8NCiNkZWZpbmUgUklfQ0lDUjFfUEFfMTMgICAgICAgICAgICAgICAgICAoMHgyMDAwVSA8PCBSSV9DSUNSMV9QQV9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDIwMDAgKi8NCiNkZWZpbmUgUklfQ0lDUjFfUEFfMTQgICAgICAgICAgICAgICAgICAoMHg0MDAwVSA8PCBSSV9DSUNSMV9QQV9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDQwMDAgKi8NCiNkZWZpbmUgUklfQ0lDUjFfUEFfMTUgICAgICAgICAgICAgICAgICAoMHg4MDAwVSA8PCBSSV9DSUNSMV9QQV9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDgwMDAgKi8NCg0KLyoqKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgUklfQVNNUjIgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBSSV9BU01SMl9QQl9Qb3MgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSSV9BU01SMl9QQl9Nc2sgICAgICAgICAgICAgICAgICgweEZGRkZVIDw8IFJJX0FTTVIyX1BCX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwRkZGRiAqLw0KI2RlZmluZSBSSV9BU01SMl9QQiAgICAgICAgICAgICAgICAgICAgIFJJX0FTTVIyX1BCX01zayAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgUEJbMTU6MF0gUG9ydCBCIHNlbGVjdGlvbiAqLw0KI2RlZmluZSBSSV9BU01SMl9QQl8wICAgICAgICAgICAgICAgICAgICgweDAwMDFVIDw8IFJJX0FTTVIyX1BCX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDAwMSAqLw0KI2RlZmluZSBSSV9BU01SMl9QQl8xICAgICAgICAgICAgICAgICAgICgweDAwMDJVIDw8IFJJX0FTTVIyX1BCX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDAwMiAqLw0KI2RlZmluZSBSSV9BU01SMl9QQl8yICAgICAgICAgICAgICAgICAgICgweDAwMDRVIDw8IFJJX0FTTVIyX1BCX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDAwNCAqLw0KI2RlZmluZSBSSV9BU01SMl9QQl8zICAgICAgICAgICAgICAgICAgICgweDAwMDhVIDw8IFJJX0FTTVIyX1BCX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDAwOCAqLw0KI2RlZmluZSBSSV9BU01SMl9QQl80ICAgICAgICAgICAgICAgICAgICgweDAwMTBVIDw8IFJJX0FTTVIyX1BCX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDAxMCAqLw0KI2RlZmluZSBSSV9BU01SMl9QQl81ICAgICAgICAgICAgICAgICAgICgweDAwMjBVIDw8IFJJX0FTTVIyX1BCX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDAyMCAqLw0KI2RlZmluZSBSSV9BU01SMl9QQl82ICAgICAgICAgICAgICAgICAgICgweDAwNDBVIDw8IFJJX0FTTVIyX1BCX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDA0MCAqLw0KI2RlZmluZSBSSV9BU01SMl9QQl83ICAgICAgICAgICAgICAgICAgICgweDAwODBVIDw8IFJJX0FTTVIyX1BCX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDA4MCAqLw0KI2RlZmluZSBSSV9BU01SMl9QQl84ICAgICAgICAgICAgICAgICAgICgweDAxMDBVIDw8IFJJX0FTTVIyX1BCX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDEwMCAqLw0KI2RlZmluZSBSSV9BU01SMl9QQl85ICAgICAgICAgICAgICAgICAgICgweDAyMDBVIDw8IFJJX0FTTVIyX1BCX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDIwMCAqLw0KI2RlZmluZSBSSV9BU01SMl9QQl8xMCAgICAgICAgICAgICAgICAgICgweDA0MDBVIDw8IFJJX0FTTVIyX1BCX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDQwMCAqLw0KI2RlZmluZSBSSV9BU01SMl9QQl8xMSAgICAgICAgICAgICAgICAgICgweDA4MDBVIDw8IFJJX0FTTVIyX1BCX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDgwMCAqLw0KI2RlZmluZSBSSV9BU01SMl9QQl8xMiAgICAgICAgICAgICAgICAgICgweDEwMDBVIDw8IFJJX0FTTVIyX1BCX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMTAwMCAqLw0KI2RlZmluZSBSSV9BU01SMl9QQl8xMyAgICAgICAgICAgICAgICAgICgweDIwMDBVIDw8IFJJX0FTTVIyX1BCX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMjAwMCAqLw0KI2RlZmluZSBSSV9BU01SMl9QQl8xNCAgICAgICAgICAgICAgICAgICgweDQwMDBVIDw8IFJJX0FTTVIyX1BCX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwNDAwMCAqLw0KI2RlZmluZSBSSV9BU01SMl9QQl8xNSAgICAgICAgICAgICAgICAgICgweDgwMDBVIDw8IFJJX0FTTVIyX1BCX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwODAwMCAqLw0KDQovKioqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBSSV9DTVIyIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgUklfQ01SMl9QQl9Qb3MgICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUklfQ01SMl9QQl9Nc2sgICAgICAgICAgICAgICAgICAoMHhGRkZGVSA8PCBSSV9DTVIyX1BCX1BvcykgICAgICAgICAgICAvKiE8IDB4MDAwMEZGRkYgKi8NCiNkZWZpbmUgUklfQ01SMl9QQiAgICAgICAgICAgICAgICAgICAgICBSSV9DTVIyX1BCX01zayAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBCWzE1OjBdIFBvcnQgQiBzZWxlY3Rpb24gKi8NCiNkZWZpbmUgUklfQ01SMl9QQl8wICAgICAgICAgICAgICAgICAgICAoMHgwMDAxVSA8PCBSSV9DTVIyX1BCX1BvcykgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDEgKi8NCiNkZWZpbmUgUklfQ01SMl9QQl8xICAgICAgICAgICAgICAgICAgICAoMHgwMDAyVSA8PCBSSV9DTVIyX1BCX1BvcykgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDIgKi8NCiNkZWZpbmUgUklfQ01SMl9QQl8yICAgICAgICAgICAgICAgICAgICAoMHgwMDA0VSA8PCBSSV9DTVIyX1BCX1BvcykgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDQgKi8NCiNkZWZpbmUgUklfQ01SMl9QQl8zICAgICAgICAgICAgICAgICAgICAoMHgwMDA4VSA8PCBSSV9DTVIyX1BCX1BvcykgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDggKi8NCiNkZWZpbmUgUklfQ01SMl9QQl80ICAgICAgICAgICAgICAgICAgICAoMHgwMDEwVSA8PCBSSV9DTVIyX1BCX1BvcykgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMTAgKi8NCiNkZWZpbmUgUklfQ01SMl9QQl81ICAgICAgICAgICAgICAgICAgICAoMHgwMDIwVSA8PCBSSV9DTVIyX1BCX1BvcykgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMjAgKi8NCiNkZWZpbmUgUklfQ01SMl9QQl82ICAgICAgICAgICAgICAgICAgICAoMHgwMDQwVSA8PCBSSV9DTVIyX1BCX1BvcykgICAgICAgICAgICAvKiE8IDB4MDAwMDAwNDAgKi8NCiNkZWZpbmUgUklfQ01SMl9QQl83ICAgICAgICAgICAgICAgICAgICAoMHgwMDgwVSA8PCBSSV9DTVIyX1BCX1BvcykgICAgICAgICAgICAvKiE8IDB4MDAwMDAwODAgKi8NCiNkZWZpbmUgUklfQ01SMl9QQl84ICAgICAgICAgICAgICAgICAgICAoMHgwMTAwVSA8PCBSSV9DTVIyX1BCX1BvcykgICAgICAgICAgICAvKiE8IDB4MDAwMDAxMDAgKi8NCiNkZWZpbmUgUklfQ01SMl9QQl85ICAgICAgICAgICAgICAgICAgICAoMHgwMjAwVSA8PCBSSV9DTVIyX1BCX1BvcykgICAgICAgICAgICAvKiE8IDB4MDAwMDAyMDAgKi8NCiNkZWZpbmUgUklfQ01SMl9QQl8xMCAgICAgICAgICAgICAgICAgICAoMHgwNDAwVSA8PCBSSV9DTVIyX1BCX1BvcykgICAgICAgICAgICAvKiE8IDB4MDAwMDA0MDAgKi8NCiNkZWZpbmUgUklfQ01SMl9QQl8xMSAgICAgICAgICAgICAgICAgICAoMHgwODAwVSA8PCBSSV9DTVIyX1BCX1BvcykgICAgICAgICAgICAvKiE8IDB4MDAwMDA4MDAgKi8NCiNkZWZpbmUgUklfQ01SMl9QQl8xMiAgICAgICAgICAgICAgICAgICAoMHgxMDAwVSA8PCBSSV9DTVIyX1BCX1BvcykgICAgICAgICAgICAvKiE8IDB4MDAwMDEwMDAgKi8NCiNkZWZpbmUgUklfQ01SMl9QQl8xMyAgICAgICAgICAgICAgICAgICAoMHgyMDAwVSA8PCBSSV9DTVIyX1BCX1BvcykgICAgICAgICAgICAvKiE8IDB4MDAwMDIwMDAgKi8NCiNkZWZpbmUgUklfQ01SMl9QQl8xNCAgICAgICAgICAgICAgICAgICAoMHg0MDAwVSA8PCBSSV9DTVIyX1BCX1BvcykgICAgICAgICAgICAvKiE8IDB4MDAwMDQwMDAgKi8NCiNkZWZpbmUgUklfQ01SMl9QQl8xNSAgICAgICAgICAgICAgICAgICAoMHg4MDAwVSA8PCBSSV9DTVIyX1BCX1BvcykgICAgICAgICAgICAvKiE8IDB4MDAwMDgwMDAgKi8NCg0KLyoqKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgUklfQ0lDUjIgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBSSV9DSUNSMl9QQl9Qb3MgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSSV9DSUNSMl9QQl9Nc2sgICAgICAgICAgICAgICAgICgweEZGRkZVIDw8IFJJX0NJQ1IyX1BCX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwRkZGRiAqLw0KI2RlZmluZSBSSV9DSUNSMl9QQiAgICAgICAgICAgICAgICAgICAgIFJJX0NJQ1IyX1BCX01zayAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgUEJbMTU6MF0gUG9ydCBCIHNlbGVjdGlvbiAqLw0KI2RlZmluZSBSSV9DSUNSMl9QQl8wICAgICAgICAgICAgICAgICAgICgweDAwMDFVIDw8IFJJX0NJQ1IyX1BCX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDAwMSAqLw0KI2RlZmluZSBSSV9DSUNSMl9QQl8xICAgICAgICAgICAgICAgICAgICgweDAwMDJVIDw8IFJJX0NJQ1IyX1BCX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDAwMiAqLw0KI2RlZmluZSBSSV9DSUNSMl9QQl8yICAgICAgICAgICAgICAgICAgICgweDAwMDRVIDw8IFJJX0NJQ1IyX1BCX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDAwNCAqLw0KI2RlZmluZSBSSV9DSUNSMl9QQl8zICAgICAgICAgICAgICAgICAgICgweDAwMDhVIDw8IFJJX0NJQ1IyX1BCX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDAwOCAqLw0KI2RlZmluZSBSSV9DSUNSMl9QQl80ICAgICAgICAgICAgICAgICAgICgweDAwMTBVIDw8IFJJX0NJQ1IyX1BCX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDAxMCAqLw0KI2RlZmluZSBSSV9DSUNSMl9QQl81ICAgICAgICAgICAgICAgICAgICgweDAwMjBVIDw8IFJJX0NJQ1IyX1BCX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDAyMCAqLw0KI2RlZmluZSBSSV9DSUNSMl9QQl82ICAgICAgICAgICAgICAgICAgICgweDAwNDBVIDw8IFJJX0NJQ1IyX1BCX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDA0MCAqLw0KI2RlZmluZSBSSV9DSUNSMl9QQl83ICAgICAgICAgICAgICAgICAgICgweDAwODBVIDw8IFJJX0NJQ1IyX1BCX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDA4MCAqLw0KI2RlZmluZSBSSV9DSUNSMl9QQl84ICAgICAgICAgICAgICAgICAgICgweDAxMDBVIDw8IFJJX0NJQ1IyX1BCX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDEwMCAqLw0KI2RlZmluZSBSSV9DSUNSMl9QQl85ICAgICAgICAgICAgICAgICAgICgweDAyMDBVIDw8IFJJX0NJQ1IyX1BCX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDIwMCAqLw0KI2RlZmluZSBSSV9DSUNSMl9QQl8xMCAgICAgICAgICAgICAgICAgICgweDA0MDBVIDw8IFJJX0NJQ1IyX1BCX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDQwMCAqLw0KI2RlZmluZSBSSV9DSUNSMl9QQl8xMSAgICAgICAgICAgICAgICAgICgweDA4MDBVIDw8IFJJX0NJQ1IyX1BCX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDgwMCAqLw0KI2RlZmluZSBSSV9DSUNSMl9QQl8xMiAgICAgICAgICAgICAgICAgICgweDEwMDBVIDw8IFJJX0NJQ1IyX1BCX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMTAwMCAqLw0KI2RlZmluZSBSSV9DSUNSMl9QQl8xMyAgICAgICAgICAgICAgICAgICgweDIwMDBVIDw8IFJJX0NJQ1IyX1BCX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMjAwMCAqLw0KI2RlZmluZSBSSV9DSUNSMl9QQl8xNCAgICAgICAgICAgICAgICAgICgweDQwMDBVIDw8IFJJX0NJQ1IyX1BCX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwNDAwMCAqLw0KI2RlZmluZSBSSV9DSUNSMl9QQl8xNSAgICAgICAgICAgICAgICAgICgweDgwMDBVIDw8IFJJX0NJQ1IyX1BCX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwODAwMCAqLw0KDQovKioqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBSSV9BU01SMyByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIFJJX0FTTVIzX1BDX1BvcyAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJJX0FTTVIzX1BDX01zayAgICAgICAgICAgICAgICAgKDB4RkZGRlUgPDwgUklfQVNNUjNfUENfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDBGRkZGICovDQojZGVmaW5lIFJJX0FTTVIzX1BDICAgICAgICAgICAgICAgICAgICAgUklfQVNNUjNfUENfTXNrICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBQQ1sxNTowXSBQb3J0IEMgc2VsZWN0aW9uICovDQojZGVmaW5lIFJJX0FTTVIzX1BDXzAgICAgICAgICAgICAgICAgICAgKDB4MDAwMVUgPDwgUklfQVNNUjNfUENfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwMDAxICovDQojZGVmaW5lIFJJX0FTTVIzX1BDXzEgICAgICAgICAgICAgICAgICAgKDB4MDAwMlUgPDwgUklfQVNNUjNfUENfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwMDAyICovDQojZGVmaW5lIFJJX0FTTVIzX1BDXzIgICAgICAgICAgICAgICAgICAgKDB4MDAwNFUgPDwgUklfQVNNUjNfUENfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwMDA0ICovDQojZGVmaW5lIFJJX0FTTVIzX1BDXzMgICAgICAgICAgICAgICAgICAgKDB4MDAwOFUgPDwgUklfQVNNUjNfUENfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwMDA4ICovDQojZGVmaW5lIFJJX0FTTVIzX1BDXzQgICAgICAgICAgICAgICAgICAgKDB4MDAxMFUgPDwgUklfQVNNUjNfUENfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwMDEwICovDQojZGVmaW5lIFJJX0FTTVIzX1BDXzUgICAgICAgICAgICAgICAgICAgKDB4MDAyMFUgPDwgUklfQVNNUjNfUENfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwMDIwICovDQojZGVmaW5lIFJJX0FTTVIzX1BDXzYgICAgICAgICAgICAgICAgICAgKDB4MDA0MFUgPDwgUklfQVNNUjNfUENfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwMDQwICovDQojZGVmaW5lIFJJX0FTTVIzX1BDXzcgICAgICAgICAgICAgICAgICAgKDB4MDA4MFUgPDwgUklfQVNNUjNfUENfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwMDgwICovDQojZGVmaW5lIFJJX0FTTVIzX1BDXzggICAgICAgICAgICAgICAgICAgKDB4MDEwMFUgPDwgUklfQVNNUjNfUENfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwMTAwICovDQojZGVmaW5lIFJJX0FTTVIzX1BDXzkgICAgICAgICAgICAgICAgICAgKDB4MDIwMFUgPDwgUklfQVNNUjNfUENfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwMjAwICovDQojZGVmaW5lIFJJX0FTTVIzX1BDXzEwICAgICAgICAgICAgICAgICAgKDB4MDQwMFUgPDwgUklfQVNNUjNfUENfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwNDAwICovDQojZGVmaW5lIFJJX0FTTVIzX1BDXzExICAgICAgICAgICAgICAgICAgKDB4MDgwMFUgPDwgUklfQVNNUjNfUENfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwODAwICovDQojZGVmaW5lIFJJX0FTTVIzX1BDXzEyICAgICAgICAgICAgICAgICAgKDB4MTAwMFUgPDwgUklfQVNNUjNfUENfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAxMDAwICovDQojZGVmaW5lIFJJX0FTTVIzX1BDXzEzICAgICAgICAgICAgICAgICAgKDB4MjAwMFUgPDwgUklfQVNNUjNfUENfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAyMDAwICovDQojZGVmaW5lIFJJX0FTTVIzX1BDXzE0ICAgICAgICAgICAgICAgICAgKDB4NDAwMFUgPDwgUklfQVNNUjNfUENfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDA0MDAwICovDQojZGVmaW5lIFJJX0FTTVIzX1BDXzE1ICAgICAgICAgICAgICAgICAgKDB4ODAwMFUgPDwgUklfQVNNUjNfUENfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDA4MDAwICovDQoNCi8qKioqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFJJX0NNUjMgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBSSV9DTVIzX1BDX1BvcyAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSSV9DTVIzX1BDX01zayAgICAgICAgICAgICAgICAgICgweEZGRkZVIDw8IFJJX0NNUjNfUENfUG9zKSAgICAgICAgICAgIC8qITwgMHgwMDAwRkZGRiAqLw0KI2RlZmluZSBSSV9DTVIzX1BDICAgICAgICAgICAgICAgICAgICAgIFJJX0NNUjNfUENfTXNrICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgUENbMTU6MF0gUG9ydCBDIHNlbGVjdGlvbiAqLw0KI2RlZmluZSBSSV9DTVIzX1BDXzAgICAgICAgICAgICAgICAgICAgICgweDAwMDFVIDw8IFJJX0NNUjNfUENfUG9zKSAgICAgICAgICAgIC8qITwgMHgwMDAwMDAwMSAqLw0KI2RlZmluZSBSSV9DTVIzX1BDXzEgICAgICAgICAgICAgICAgICAgICgweDAwMDJVIDw8IFJJX0NNUjNfUENfUG9zKSAgICAgICAgICAgIC8qITwgMHgwMDAwMDAwMiAqLw0KI2RlZmluZSBSSV9DTVIzX1BDXzIgICAgICAgICAgICAgICAgICAgICgweDAwMDRVIDw8IFJJX0NNUjNfUENfUG9zKSAgICAgICAgICAgIC8qITwgMHgwMDAwMDAwNCAqLw0KI2RlZmluZSBSSV9DTVIzX1BDXzMgICAgICAgICAgICAgICAgICAgICgweDAwMDhVIDw8IFJJX0NNUjNfUENfUG9zKSAgICAgICAgICAgIC8qITwgMHgwMDAwMDAwOCAqLw0KI2RlZmluZSBSSV9DTVIzX1BDXzQgICAgICAgICAgICAgICAgICAgICgweDAwMTBVIDw8IFJJX0NNUjNfUENfUG9zKSAgICAgICAgICAgIC8qITwgMHgwMDAwMDAxMCAqLw0KI2RlZmluZSBSSV9DTVIzX1BDXzUgICAgICAgICAgICAgICAgICAgICgweDAwMjBVIDw8IFJJX0NNUjNfUENfUG9zKSAgICAgICAgICAgIC8qITwgMHgwMDAwMDAyMCAqLw0KI2RlZmluZSBSSV9DTVIzX1BDXzYgICAgICAgICAgICAgICAgICAgICgweDAwNDBVIDw8IFJJX0NNUjNfUENfUG9zKSAgICAgICAgICAgIC8qITwgMHgwMDAwMDA0MCAqLw0KI2RlZmluZSBSSV9DTVIzX1BDXzcgICAgICAgICAgICAgICAgICAgICgweDAwODBVIDw8IFJJX0NNUjNfUENfUG9zKSAgICAgICAgICAgIC8qITwgMHgwMDAwMDA4MCAqLw0KI2RlZmluZSBSSV9DTVIzX1BDXzggICAgICAgICAgICAgICAgICAgICgweDAxMDBVIDw8IFJJX0NNUjNfUENfUG9zKSAgICAgICAgICAgIC8qITwgMHgwMDAwMDEwMCAqLw0KI2RlZmluZSBSSV9DTVIzX1BDXzkgICAgICAgICAgICAgICAgICAgICgweDAyMDBVIDw8IFJJX0NNUjNfUENfUG9zKSAgICAgICAgICAgIC8qITwgMHgwMDAwMDIwMCAqLw0KI2RlZmluZSBSSV9DTVIzX1BDXzEwICAgICAgICAgICAgICAgICAgICgweDA0MDBVIDw8IFJJX0NNUjNfUENfUG9zKSAgICAgICAgICAgIC8qITwgMHgwMDAwMDQwMCAqLw0KI2RlZmluZSBSSV9DTVIzX1BDXzExICAgICAgICAgICAgICAgICAgICgweDA4MDBVIDw8IFJJX0NNUjNfUENfUG9zKSAgICAgICAgICAgIC8qITwgMHgwMDAwMDgwMCAqLw0KI2RlZmluZSBSSV9DTVIzX1BDXzEyICAgICAgICAgICAgICAgICAgICgweDEwMDBVIDw8IFJJX0NNUjNfUENfUG9zKSAgICAgICAgICAgIC8qITwgMHgwMDAwMTAwMCAqLw0KI2RlZmluZSBSSV9DTVIzX1BDXzEzICAgICAgICAgICAgICAgICAgICgweDIwMDBVIDw8IFJJX0NNUjNfUENfUG9zKSAgICAgICAgICAgIC8qITwgMHgwMDAwMjAwMCAqLw0KI2RlZmluZSBSSV9DTVIzX1BDXzE0ICAgICAgICAgICAgICAgICAgICgweDQwMDBVIDw8IFJJX0NNUjNfUENfUG9zKSAgICAgICAgICAgIC8qITwgMHgwMDAwNDAwMCAqLw0KI2RlZmluZSBSSV9DTVIzX1BDXzE1ICAgICAgICAgICAgICAgICAgICgweDgwMDBVIDw8IFJJX0NNUjNfUENfUG9zKSAgICAgICAgICAgIC8qITwgMHgwMDAwODAwMCAqLw0KDQovKioqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBSSV9DSUNSMyByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIFJJX0NJQ1IzX1BDX1BvcyAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJJX0NJQ1IzX1BDX01zayAgICAgICAgICAgICAgICAgKDB4RkZGRlUgPDwgUklfQ0lDUjNfUENfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDBGRkZGICovDQojZGVmaW5lIFJJX0NJQ1IzX1BDICAgICAgICAgICAgICAgICAgICAgUklfQ0lDUjNfUENfTXNrICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBQQ1sxNTowXSBQb3J0IEMgc2VsZWN0aW9uICovDQojZGVmaW5lIFJJX0NJQ1IzX1BDXzAgICAgICAgICAgICAgICAgICAgKDB4MDAwMVUgPDwgUklfQ0lDUjNfUENfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwMDAxICovDQojZGVmaW5lIFJJX0NJQ1IzX1BDXzEgICAgICAgICAgICAgICAgICAgKDB4MDAwMlUgPDwgUklfQ0lDUjNfUENfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwMDAyICovDQojZGVmaW5lIFJJX0NJQ1IzX1BDXzIgICAgICAgICAgICAgICAgICAgKDB4MDAwNFUgPDwgUklfQ0lDUjNfUENfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwMDA0ICovDQojZGVmaW5lIFJJX0NJQ1IzX1BDXzMgICAgICAgICAgICAgICAgICAgKDB4MDAwOFUgPDwgUklfQ0lDUjNfUENfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwMDA4ICovDQojZGVmaW5lIFJJX0NJQ1IzX1BDXzQgICAgICAgICAgICAgICAgICAgKDB4MDAxMFUgPDwgUklfQ0lDUjNfUENfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwMDEwICovDQojZGVmaW5lIFJJX0NJQ1IzX1BDXzUgICAgICAgICAgICAgICAgICAgKDB4MDAyMFUgPDwgUklfQ0lDUjNfUENfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwMDIwICovDQojZGVmaW5lIFJJX0NJQ1IzX1BDXzYgICAgICAgICAgICAgICAgICAgKDB4MDA0MFUgPDwgUklfQ0lDUjNfUENfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwMDQwICovDQojZGVmaW5lIFJJX0NJQ1IzX1BDXzcgICAgICAgICAgICAgICAgICAgKDB4MDA4MFUgPDwgUklfQ0lDUjNfUENfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwMDgwICovDQojZGVmaW5lIFJJX0NJQ1IzX1BDXzggICAgICAgICAgICAgICAgICAgKDB4MDEwMFUgPDwgUklfQ0lDUjNfUENfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwMTAwICovDQojZGVmaW5lIFJJX0NJQ1IzX1BDXzkgICAgICAgICAgICAgICAgICAgKDB4MDIwMFUgPDwgUklfQ0lDUjNfUENfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwMjAwICovDQojZGVmaW5lIFJJX0NJQ1IzX1BDXzEwICAgICAgICAgICAgICAgICAgKDB4MDQwMFUgPDwgUklfQ0lDUjNfUENfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwNDAwICovDQojZGVmaW5lIFJJX0NJQ1IzX1BDXzExICAgICAgICAgICAgICAgICAgKDB4MDgwMFUgPDwgUklfQ0lDUjNfUENfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwODAwICovDQojZGVmaW5lIFJJX0NJQ1IzX1BDXzEyICAgICAgICAgICAgICAgICAgKDB4MTAwMFUgPDwgUklfQ0lDUjNfUENfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAxMDAwICovDQojZGVmaW5lIFJJX0NJQ1IzX1BDXzEzICAgICAgICAgICAgICAgICAgKDB4MjAwMFUgPDwgUklfQ0lDUjNfUENfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAyMDAwICovDQojZGVmaW5lIFJJX0NJQ1IzX1BDXzE0ICAgICAgICAgICAgICAgICAgKDB4NDAwMFUgPDwgUklfQ0lDUjNfUENfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDA0MDAwICovDQojZGVmaW5lIFJJX0NJQ1IzX1BDXzE1ICAgICAgICAgICAgICAgICAgKDB4ODAwMFUgPDwgUklfQ0lDUjNfUENfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDA4MDAwICovDQoNCi8qKioqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFJJX0FTTVI0IHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgUklfQVNNUjRfUEZfUG9zICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUklfQVNNUjRfUEZfTXNrICAgICAgICAgICAgICAgICAoMHhGRkZGVSA8PCBSSV9BU01SNF9QRl9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMEZGRkYgKi8NCiNkZWZpbmUgUklfQVNNUjRfUEYgICAgICAgICAgICAgICAgICAgICBSSV9BU01SNF9QRl9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBGWzE1OjBdIFBvcnQgRiBzZWxlY3Rpb24gKi8NCiNkZWZpbmUgUklfQVNNUjRfUEZfMCAgICAgICAgICAgICAgICAgICAoMHgwMDAxVSA8PCBSSV9BU01SNF9QRl9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDEgKi8NCiNkZWZpbmUgUklfQVNNUjRfUEZfMSAgICAgICAgICAgICAgICAgICAoMHgwMDAyVSA8PCBSSV9BU01SNF9QRl9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDIgKi8NCiNkZWZpbmUgUklfQVNNUjRfUEZfMiAgICAgICAgICAgICAgICAgICAoMHgwMDA0VSA8PCBSSV9BU01SNF9QRl9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDQgKi8NCiNkZWZpbmUgUklfQVNNUjRfUEZfMyAgICAgICAgICAgICAgICAgICAoMHgwMDA4VSA8PCBSSV9BU01SNF9QRl9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDggKi8NCiNkZWZpbmUgUklfQVNNUjRfUEZfNCAgICAgICAgICAgICAgICAgICAoMHgwMDEwVSA8PCBSSV9BU01SNF9QRl9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDAwMTAgKi8NCiNkZWZpbmUgUklfQVNNUjRfUEZfNSAgICAgICAgICAgICAgICAgICAoMHgwMDIwVSA8PCBSSV9BU01SNF9QRl9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDAwMjAgKi8NCiNkZWZpbmUgUklfQVNNUjRfUEZfNiAgICAgICAgICAgICAgICAgICAoMHgwMDQwVSA8PCBSSV9BU01SNF9QRl9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDAwNDAgKi8NCiNkZWZpbmUgUklfQVNNUjRfUEZfNyAgICAgICAgICAgICAgICAgICAoMHgwMDgwVSA8PCBSSV9BU01SNF9QRl9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDAwODAgKi8NCiNkZWZpbmUgUklfQVNNUjRfUEZfOCAgICAgICAgICAgICAgICAgICAoMHgwMTAwVSA8PCBSSV9BU01SNF9QRl9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDAxMDAgKi8NCiNkZWZpbmUgUklfQVNNUjRfUEZfOSAgICAgICAgICAgICAgICAgICAoMHgwMjAwVSA8PCBSSV9BU01SNF9QRl9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDAyMDAgKi8NCiNkZWZpbmUgUklfQVNNUjRfUEZfMTAgICAgICAgICAgICAgICAgICAoMHgwNDAwVSA8PCBSSV9BU01SNF9QRl9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDA0MDAgKi8NCiNkZWZpbmUgUklfQVNNUjRfUEZfMTEgICAgICAgICAgICAgICAgICAoMHgwODAwVSA8PCBSSV9BU01SNF9QRl9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDA4MDAgKi8NCiNkZWZpbmUgUklfQVNNUjRfUEZfMTIgICAgICAgICAgICAgICAgICAoMHgxMDAwVSA8PCBSSV9BU01SNF9QRl9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDEwMDAgKi8NCiNkZWZpbmUgUklfQVNNUjRfUEZfMTMgICAgICAgICAgICAgICAgICAoMHgyMDAwVSA8PCBSSV9BU01SNF9QRl9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDIwMDAgKi8NCiNkZWZpbmUgUklfQVNNUjRfUEZfMTQgICAgICAgICAgICAgICAgICAoMHg0MDAwVSA8PCBSSV9BU01SNF9QRl9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDQwMDAgKi8NCiNkZWZpbmUgUklfQVNNUjRfUEZfMTUgICAgICAgICAgICAgICAgICAoMHg4MDAwVSA8PCBSSV9BU01SNF9QRl9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDgwMDAgKi8NCg0KLyoqKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgUklfQ01SNCByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIFJJX0NNUjRfUEZfUG9zICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJJX0NNUjRfUEZfTXNrICAgICAgICAgICAgICAgICAgKDB4RkZGRlUgPDwgUklfQ01SNF9QRl9Qb3MpICAgICAgICAgICAgLyohPCAweDAwMDBGRkZGICovDQojZGVmaW5lIFJJX0NNUjRfUEYgICAgICAgICAgICAgICAgICAgICAgUklfQ01SNF9QRl9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBQRlsxNTowXSBQb3J0IEYgc2VsZWN0aW9uICovDQojZGVmaW5lIFJJX0NNUjRfUEZfMCAgICAgICAgICAgICAgICAgICAgKDB4MDAwMVUgPDwgUklfQ01SNF9QRl9Qb3MpICAgICAgICAgICAgLyohPCAweDAwMDAwMDAxICovDQojZGVmaW5lIFJJX0NNUjRfUEZfMSAgICAgICAgICAgICAgICAgICAgKDB4MDAwMlUgPDwgUklfQ01SNF9QRl9Qb3MpICAgICAgICAgICAgLyohPCAweDAwMDAwMDAyICovDQojZGVmaW5lIFJJX0NNUjRfUEZfMiAgICAgICAgICAgICAgICAgICAgKDB4MDAwNFUgPDwgUklfQ01SNF9QRl9Qb3MpICAgICAgICAgICAgLyohPCAweDAwMDAwMDA0ICovDQojZGVmaW5lIFJJX0NNUjRfUEZfMyAgICAgICAgICAgICAgICAgICAgKDB4MDAwOFUgPDwgUklfQ01SNF9QRl9Qb3MpICAgICAgICAgICAgLyohPCAweDAwMDAwMDA4ICovDQojZGVmaW5lIFJJX0NNUjRfUEZfNCAgICAgICAgICAgICAgICAgICAgKDB4MDAxMFUgPDwgUklfQ01SNF9QRl9Qb3MpICAgICAgICAgICAgLyohPCAweDAwMDAwMDEwICovDQojZGVmaW5lIFJJX0NNUjRfUEZfNSAgICAgICAgICAgICAgICAgICAgKDB4MDAyMFUgPDwgUklfQ01SNF9QRl9Qb3MpICAgICAgICAgICAgLyohPCAweDAwMDAwMDIwICovDQojZGVmaW5lIFJJX0NNUjRfUEZfNiAgICAgICAgICAgICAgICAgICAgKDB4MDA0MFUgPDwgUklfQ01SNF9QRl9Qb3MpICAgICAgICAgICAgLyohPCAweDAwMDAwMDQwICovDQojZGVmaW5lIFJJX0NNUjRfUEZfNyAgICAgICAgICAgICAgICAgICAgKDB4MDA4MFUgPDwgUklfQ01SNF9QRl9Qb3MpICAgICAgICAgICAgLyohPCAweDAwMDAwMDgwICovDQojZGVmaW5lIFJJX0NNUjRfUEZfOCAgICAgICAgICAgICAgICAgICAgKDB4MDEwMFUgPDwgUklfQ01SNF9QRl9Qb3MpICAgICAgICAgICAgLyohPCAweDAwMDAwMTAwICovDQojZGVmaW5lIFJJX0NNUjRfUEZfOSAgICAgICAgICAgICAgICAgICAgKDB4MDIwMFUgPDwgUklfQ01SNF9QRl9Qb3MpICAgICAgICAgICAgLyohPCAweDAwMDAwMjAwICovDQojZGVmaW5lIFJJX0NNUjRfUEZfMTAgICAgICAgICAgICAgICAgICAgKDB4MDQwMFUgPDwgUklfQ01SNF9QRl9Qb3MpICAgICAgICAgICAgLyohPCAweDAwMDAwNDAwICovDQojZGVmaW5lIFJJX0NNUjRfUEZfMTEgICAgICAgICAgICAgICAgICAgKDB4MDgwMFUgPDwgUklfQ01SNF9QRl9Qb3MpICAgICAgICAgICAgLyohPCAweDAwMDAwODAwICovDQojZGVmaW5lIFJJX0NNUjRfUEZfMTIgICAgICAgICAgICAgICAgICAgKDB4MTAwMFUgPDwgUklfQ01SNF9QRl9Qb3MpICAgICAgICAgICAgLyohPCAweDAwMDAxMDAwICovDQojZGVmaW5lIFJJX0NNUjRfUEZfMTMgICAgICAgICAgICAgICAgICAgKDB4MjAwMFUgPDwgUklfQ01SNF9QRl9Qb3MpICAgICAgICAgICAgLyohPCAweDAwMDAyMDAwICovDQojZGVmaW5lIFJJX0NNUjRfUEZfMTQgICAgICAgICAgICAgICAgICAgKDB4NDAwMFUgPDwgUklfQ01SNF9QRl9Qb3MpICAgICAgICAgICAgLyohPCAweDAwMDA0MDAwICovDQojZGVmaW5lIFJJX0NNUjRfUEZfMTUgICAgICAgICAgICAgICAgICAgKDB4ODAwMFUgPDwgUklfQ01SNF9QRl9Qb3MpICAgICAgICAgICAgLyohPCAweDAwMDA4MDAwICovDQoNCi8qKioqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFJJX0NJQ1I0IHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgUklfQ0lDUjRfUEZfUG9zICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUklfQ0lDUjRfUEZfTXNrICAgICAgICAgICAgICAgICAoMHhGRkZGVSA8PCBSSV9DSUNSNF9QRl9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMEZGRkYgKi8NCiNkZWZpbmUgUklfQ0lDUjRfUEYgICAgICAgICAgICAgICAgICAgICBSSV9DSUNSNF9QRl9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBGWzE1OjBdIFBvcnQgRiBzZWxlY3Rpb24gKi8NCiNkZWZpbmUgUklfQ0lDUjRfUEZfMCAgICAgICAgICAgICAgICAgICAoMHgwMDAxVSA8PCBSSV9DSUNSNF9QRl9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDEgKi8NCiNkZWZpbmUgUklfQ0lDUjRfUEZfMSAgICAgICAgICAgICAgICAgICAoMHgwMDAyVSA8PCBSSV9DSUNSNF9QRl9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDIgKi8NCiNkZWZpbmUgUklfQ0lDUjRfUEZfMiAgICAgICAgICAgICAgICAgICAoMHgwMDA0VSA8PCBSSV9DSUNSNF9QRl9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDQgKi8NCiNkZWZpbmUgUklfQ0lDUjRfUEZfMyAgICAgICAgICAgICAgICAgICAoMHgwMDA4VSA8PCBSSV9DSUNSNF9QRl9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDggKi8NCiNkZWZpbmUgUklfQ0lDUjRfUEZfNCAgICAgICAgICAgICAgICAgICAoMHgwMDEwVSA8PCBSSV9DSUNSNF9QRl9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDAwMTAgKi8NCiNkZWZpbmUgUklfQ0lDUjRfUEZfNSAgICAgICAgICAgICAgICAgICAoMHgwMDIwVSA8PCBSSV9DSUNSNF9QRl9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDAwMjAgKi8NCiNkZWZpbmUgUklfQ0lDUjRfUEZfNiAgICAgICAgICAgICAgICAgICAoMHgwMDQwVSA8PCBSSV9DSUNSNF9QRl9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDAwNDAgKi8NCiNkZWZpbmUgUklfQ0lDUjRfUEZfNyAgICAgICAgICAgICAgICAgICAoMHgwMDgwVSA8PCBSSV9DSUNSNF9QRl9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDAwODAgKi8NCiNkZWZpbmUgUklfQ0lDUjRfUEZfOCAgICAgICAgICAgICAgICAgICAoMHgwMTAwVSA8PCBSSV9DSUNSNF9QRl9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDAxMDAgKi8NCiNkZWZpbmUgUklfQ0lDUjRfUEZfOSAgICAgICAgICAgICAgICAgICAoMHgwMjAwVSA8PCBSSV9DSUNSNF9QRl9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDAyMDAgKi8NCiNkZWZpbmUgUklfQ0lDUjRfUEZfMTAgICAgICAgICAgICAgICAgICAoMHgwNDAwVSA8PCBSSV9DSUNSNF9QRl9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDA0MDAgKi8NCiNkZWZpbmUgUklfQ0lDUjRfUEZfMTEgICAgICAgICAgICAgICAgICAoMHgwODAwVSA8PCBSSV9DSUNSNF9QRl9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDA4MDAgKi8NCiNkZWZpbmUgUklfQ0lDUjRfUEZfMTIgICAgICAgICAgICAgICAgICAoMHgxMDAwVSA8PCBSSV9DSUNSNF9QRl9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDEwMDAgKi8NCiNkZWZpbmUgUklfQ0lDUjRfUEZfMTMgICAgICAgICAgICAgICAgICAoMHgyMDAwVSA8PCBSSV9DSUNSNF9QRl9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDIwMDAgKi8NCiNkZWZpbmUgUklfQ0lDUjRfUEZfMTQgICAgICAgICAgICAgICAgICAoMHg0MDAwVSA8PCBSSV9DSUNSNF9QRl9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDQwMDAgKi8NCiNkZWZpbmUgUklfQ0lDUjRfUEZfMTUgICAgICAgICAgICAgICAgICAoMHg4MDAwVSA8PCBSSV9DSUNSNF9QRl9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDgwMDAgKi8NCg0KLyoqKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgUklfQVNNUjUgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBSSV9BU01SNV9QR19Qb3MgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSSV9BU01SNV9QR19Nc2sgICAgICAgICAgICAgICAgICgweEZGRkZVIDw8IFJJX0FTTVI1X1BHX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwRkZGRiAqLw0KI2RlZmluZSBSSV9BU01SNV9QRyAgICAgICAgICAgICAgICAgICAgIFJJX0FTTVI1X1BHX01zayAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgUEdbMTU6MF0gUG9ydCBHIHNlbGVjdGlvbiAqLw0KI2RlZmluZSBSSV9BU01SNV9QR18wICAgICAgICAgICAgICAgICAgICgweDAwMDFVIDw8IFJJX0FTTVI1X1BHX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDAwMSAqLw0KI2RlZmluZSBSSV9BU01SNV9QR18xICAgICAgICAgICAgICAgICAgICgweDAwMDJVIDw8IFJJX0FTTVI1X1BHX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDAwMiAqLw0KI2RlZmluZSBSSV9BU01SNV9QR18yICAgICAgICAgICAgICAgICAgICgweDAwMDRVIDw8IFJJX0FTTVI1X1BHX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDAwNCAqLw0KI2RlZmluZSBSSV9BU01SNV9QR18zICAgICAgICAgICAgICAgICAgICgweDAwMDhVIDw8IFJJX0FTTVI1X1BHX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDAwOCAqLw0KI2RlZmluZSBSSV9BU01SNV9QR180ICAgICAgICAgICAgICAgICAgICgweDAwMTBVIDw8IFJJX0FTTVI1X1BHX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDAxMCAqLw0KI2RlZmluZSBSSV9BU01SNV9QR181ICAgICAgICAgICAgICAgICAgICgweDAwMjBVIDw8IFJJX0FTTVI1X1BHX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDAyMCAqLw0KI2RlZmluZSBSSV9BU01SNV9QR182ICAgICAgICAgICAgICAgICAgICgweDAwNDBVIDw8IFJJX0FTTVI1X1BHX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDA0MCAqLw0KI2RlZmluZSBSSV9BU01SNV9QR183ICAgICAgICAgICAgICAgICAgICgweDAwODBVIDw8IFJJX0FTTVI1X1BHX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDA4MCAqLw0KI2RlZmluZSBSSV9BU01SNV9QR184ICAgICAgICAgICAgICAgICAgICgweDAxMDBVIDw8IFJJX0FTTVI1X1BHX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDEwMCAqLw0KI2RlZmluZSBSSV9BU01SNV9QR185ICAgICAgICAgICAgICAgICAgICgweDAyMDBVIDw8IFJJX0FTTVI1X1BHX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDIwMCAqLw0KI2RlZmluZSBSSV9BU01SNV9QR18xMCAgICAgICAgICAgICAgICAgICgweDA0MDBVIDw8IFJJX0FTTVI1X1BHX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDQwMCAqLw0KI2RlZmluZSBSSV9BU01SNV9QR18xMSAgICAgICAgICAgICAgICAgICgweDA4MDBVIDw8IFJJX0FTTVI1X1BHX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDgwMCAqLw0KI2RlZmluZSBSSV9BU01SNV9QR18xMiAgICAgICAgICAgICAgICAgICgweDEwMDBVIDw8IFJJX0FTTVI1X1BHX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMTAwMCAqLw0KI2RlZmluZSBSSV9BU01SNV9QR18xMyAgICAgICAgICAgICAgICAgICgweDIwMDBVIDw8IFJJX0FTTVI1X1BHX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMjAwMCAqLw0KI2RlZmluZSBSSV9BU01SNV9QR18xNCAgICAgICAgICAgICAgICAgICgweDQwMDBVIDw8IFJJX0FTTVI1X1BHX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwNDAwMCAqLw0KI2RlZmluZSBSSV9BU01SNV9QR18xNSAgICAgICAgICAgICAgICAgICgweDgwMDBVIDw8IFJJX0FTTVI1X1BHX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwODAwMCAqLw0KDQovKioqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBSSV9DTVI1IHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgUklfQ01SNV9QR19Qb3MgICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUklfQ01SNV9QR19Nc2sgICAgICAgICAgICAgICAgICAoMHhGRkZGVSA8PCBSSV9DTVI1X1BHX1BvcykgICAgICAgICAgICAvKiE8IDB4MDAwMEZGRkYgKi8NCiNkZWZpbmUgUklfQ01SNV9QRyAgICAgICAgICAgICAgICAgICAgICBSSV9DTVI1X1BHX01zayAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBHWzE1OjBdIFBvcnQgRyBzZWxlY3Rpb24gKi8NCiNkZWZpbmUgUklfQ01SNV9QR18wICAgICAgICAgICAgICAgICAgICAoMHgwMDAxVSA8PCBSSV9DTVI1X1BHX1BvcykgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDEgKi8NCiNkZWZpbmUgUklfQ01SNV9QR18xICAgICAgICAgICAgICAgICAgICAoMHgwMDAyVSA8PCBSSV9DTVI1X1BHX1BvcykgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDIgKi8NCiNkZWZpbmUgUklfQ01SNV9QR18yICAgICAgICAgICAgICAgICAgICAoMHgwMDA0VSA8PCBSSV9DTVI1X1BHX1BvcykgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDQgKi8NCiNkZWZpbmUgUklfQ01SNV9QR18zICAgICAgICAgICAgICAgICAgICAoMHgwMDA4VSA8PCBSSV9DTVI1X1BHX1BvcykgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDggKi8NCiNkZWZpbmUgUklfQ01SNV9QR180ICAgICAgICAgICAgICAgICAgICAoMHgwMDEwVSA8PCBSSV9DTVI1X1BHX1BvcykgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMTAgKi8NCiNkZWZpbmUgUklfQ01SNV9QR181ICAgICAgICAgICAgICAgICAgICAoMHgwMDIwVSA8PCBSSV9DTVI1X1BHX1BvcykgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMjAgKi8NCiNkZWZpbmUgUklfQ01SNV9QR182ICAgICAgICAgICAgICAgICAgICAoMHgwMDQwVSA8PCBSSV9DTVI1X1BHX1BvcykgICAgICAgICAgICAvKiE8IDB4MDAwMDAwNDAgKi8NCiNkZWZpbmUgUklfQ01SNV9QR183ICAgICAgICAgICAgICAgICAgICAoMHgwMDgwVSA8PCBSSV9DTVI1X1BHX1BvcykgICAgICAgICAgICAvKiE8IDB4MDAwMDAwODAgKi8NCiNkZWZpbmUgUklfQ01SNV9QR184ICAgICAgICAgICAgICAgICAgICAoMHgwMTAwVSA8PCBSSV9DTVI1X1BHX1BvcykgICAgICAgICAgICAvKiE8IDB4MDAwMDAxMDAgKi8NCiNkZWZpbmUgUklfQ01SNV9QR185ICAgICAgICAgICAgICAgICAgICAoMHgwMjAwVSA8PCBSSV9DTVI1X1BHX1BvcykgICAgICAgICAgICAvKiE8IDB4MDAwMDAyMDAgKi8NCiNkZWZpbmUgUklfQ01SNV9QR18xMCAgICAgICAgICAgICAgICAgICAoMHgwNDAwVSA8PCBSSV9DTVI1X1BHX1BvcykgICAgICAgICAgICAvKiE8IDB4MDAwMDA0MDAgKi8NCiNkZWZpbmUgUklfQ01SNV9QR18xMSAgICAgICAgICAgICAgICAgICAoMHgwODAwVSA8PCBSSV9DTVI1X1BHX1BvcykgICAgICAgICAgICAvKiE8IDB4MDAwMDA4MDAgKi8NCiNkZWZpbmUgUklfQ01SNV9QR18xMiAgICAgICAgICAgICAgICAgICAoMHgxMDAwVSA8PCBSSV9DTVI1X1BHX1BvcykgICAgICAgICAgICAvKiE8IDB4MDAwMDEwMDAgKi8NCiNkZWZpbmUgUklfQ01SNV9QR18xMyAgICAgICAgICAgICAgICAgICAoMHgyMDAwVSA8PCBSSV9DTVI1X1BHX1BvcykgICAgICAgICAgICAvKiE8IDB4MDAwMDIwMDAgKi8NCiNkZWZpbmUgUklfQ01SNV9QR18xNCAgICAgICAgICAgICAgICAgICAoMHg0MDAwVSA8PCBSSV9DTVI1X1BHX1BvcykgICAgICAgICAgICAvKiE8IDB4MDAwMDQwMDAgKi8NCiNkZWZpbmUgUklfQ01SNV9QR18xNSAgICAgICAgICAgICAgICAgICAoMHg4MDAwVSA8PCBSSV9DTVI1X1BHX1BvcykgICAgICAgICAgICAvKiE8IDB4MDAwMDgwMDAgKi8NCg0KLyoqKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgUklfQ0lDUjUgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBSSV9DSUNSNV9QR19Qb3MgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSSV9DSUNSNV9QR19Nc2sgICAgICAgICAgICAgICAgICgweEZGRkZVIDw8IFJJX0NJQ1I1X1BHX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwRkZGRiAqLw0KI2RlZmluZSBSSV9DSUNSNV9QRyAgICAgICAgICAgICAgICAgICAgIFJJX0NJQ1I1X1BHX01zayAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgUEdbMTU6MF0gUG9ydCBHIHNlbGVjdGlvbiAqLw0KI2RlZmluZSBSSV9DSUNSNV9QR18wICAgICAgICAgICAgICAgICAgICgweDAwMDFVIDw8IFJJX0NJQ1I1X1BHX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDAwMSAqLw0KI2RlZmluZSBSSV9DSUNSNV9QR18xICAgICAgICAgICAgICAgICAgICgweDAwMDJVIDw8IFJJX0NJQ1I1X1BHX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDAwMiAqLw0KI2RlZmluZSBSSV9DSUNSNV9QR18yICAgICAgICAgICAgICAgICAgICgweDAwMDRVIDw8IFJJX0NJQ1I1X1BHX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDAwNCAqLw0KI2RlZmluZSBSSV9DSUNSNV9QR18zICAgICAgICAgICAgICAgICAgICgweDAwMDhVIDw8IFJJX0NJQ1I1X1BHX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDAwOCAqLw0KI2RlZmluZSBSSV9DSUNSNV9QR180ICAgICAgICAgICAgICAgICAgICgweDAwMTBVIDw8IFJJX0NJQ1I1X1BHX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDAxMCAqLw0KI2RlZmluZSBSSV9DSUNSNV9QR181ICAgICAgICAgICAgICAgICAgICgweDAwMjBVIDw8IFJJX0NJQ1I1X1BHX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDAyMCAqLw0KI2RlZmluZSBSSV9DSUNSNV9QR182ICAgICAgICAgICAgICAgICAgICgweDAwNDBVIDw8IFJJX0NJQ1I1X1BHX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDA0MCAqLw0KI2RlZmluZSBSSV9DSUNSNV9QR183ICAgICAgICAgICAgICAgICAgICgweDAwODBVIDw8IFJJX0NJQ1I1X1BHX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDA4MCAqLw0KI2RlZmluZSBSSV9DSUNSNV9QR184ICAgICAgICAgICAgICAgICAgICgweDAxMDBVIDw8IFJJX0NJQ1I1X1BHX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDEwMCAqLw0KI2RlZmluZSBSSV9DSUNSNV9QR185ICAgICAgICAgICAgICAgICAgICgweDAyMDBVIDw8IFJJX0NJQ1I1X1BHX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDIwMCAqLw0KI2RlZmluZSBSSV9DSUNSNV9QR18xMCAgICAgICAgICAgICAgICAgICgweDA0MDBVIDw8IFJJX0NJQ1I1X1BHX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDQwMCAqLw0KI2RlZmluZSBSSV9DSUNSNV9QR18xMSAgICAgICAgICAgICAgICAgICgweDA4MDBVIDw8IFJJX0NJQ1I1X1BHX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDgwMCAqLw0KI2RlZmluZSBSSV9DSUNSNV9QR18xMiAgICAgICAgICAgICAgICAgICgweDEwMDBVIDw8IFJJX0NJQ1I1X1BHX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMTAwMCAqLw0KI2RlZmluZSBSSV9DSUNSNV9QR18xMyAgICAgICAgICAgICAgICAgICgweDIwMDBVIDw8IFJJX0NJQ1I1X1BHX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMjAwMCAqLw0KI2RlZmluZSBSSV9DSUNSNV9QR18xNCAgICAgICAgICAgICAgICAgICgweDQwMDBVIDw8IFJJX0NJQ1I1X1BHX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwNDAwMCAqLw0KI2RlZmluZSBSSV9DSUNSNV9QR18xNSAgICAgICAgICAgICAgICAgICgweDgwMDBVIDw8IFJJX0NJQ1I1X1BHX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwODAwMCAqLw0KDQovKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLw0KLyogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8NCi8qICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFRpbWVycyAoVElNKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovDQovKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLw0KLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8NCg0KLyoqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBUSU1fQ1IxIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgVElNX0NSMV9DRU5fUG9zICAgICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVElNX0NSMV9DRU5fTXNrICAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVElNX0NSMV9DRU5fUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDAwMDEgKi8NCiNkZWZpbmUgVElNX0NSMV9DRU4gICAgICAgICAgICAgICAgICAgICAgICAgVElNX0NSMV9DRU5fTXNrICAgICAgICAgICAgICAgICAgICAvKiE8Q291bnRlciBlbmFibGUgKi8NCiNkZWZpbmUgVElNX0NSMV9VRElTX1BvcyAgICAgICAgICAgICAgICAgICAgKDFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVElNX0NSMV9VRElTX01zayAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVElNX0NSMV9VRElTX1BvcykgICAgICAgICAvKiE8IDB4MDAwMDAwMDIgKi8NCiNkZWZpbmUgVElNX0NSMV9VRElTICAgICAgICAgICAgICAgICAgICAgICAgVElNX0NSMV9VRElTX01zayAgICAgICAgICAgICAgICAgICAvKiE8VXBkYXRlIGRpc2FibGUgKi8NCiNkZWZpbmUgVElNX0NSMV9VUlNfUG9zICAgICAgICAgICAgICAgICAgICAgKDJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVElNX0NSMV9VUlNfTXNrICAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVElNX0NSMV9VUlNfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDAwMDQgKi8NCiNkZWZpbmUgVElNX0NSMV9VUlMgICAgICAgICAgICAgICAgICAgICAgICAgVElNX0NSMV9VUlNfTXNrICAgICAgICAgICAgICAgICAgICAvKiE8VXBkYXRlIHJlcXVlc3Qgc291cmNlICovDQojZGVmaW5lIFRJTV9DUjFfT1BNX1BvcyAgICAgICAgICAgICAgICAgICAgICgzVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFRJTV9DUjFfT1BNX01zayAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFRJTV9DUjFfT1BNX1BvcykgICAgICAgICAgLyohPCAweDAwMDAwMDA4ICovDQojZGVmaW5lIFRJTV9DUjFfT1BNICAgICAgICAgICAgICAgICAgICAgICAgIFRJTV9DUjFfT1BNX01zayAgICAgICAgICAgICAgICAgICAgLyohPE9uZSBwdWxzZSBtb2RlICovDQojZGVmaW5lIFRJTV9DUjFfRElSX1BvcyAgICAgICAgICAgICAgICAgICAgICg0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFRJTV9DUjFfRElSX01zayAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFRJTV9DUjFfRElSX1BvcykgICAgICAgICAgLyohPCAweDAwMDAwMDEwICovDQojZGVmaW5lIFRJTV9DUjFfRElSICAgICAgICAgICAgICAgICAgICAgICAgIFRJTV9DUjFfRElSX01zayAgICAgICAgICAgICAgICAgICAgLyohPERpcmVjdGlvbiAqLw0KDQojZGVmaW5lIFRJTV9DUjFfQ01TX1BvcyAgICAgICAgICAgICAgICAgICAgICg1VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFRJTV9DUjFfQ01TX01zayAgICAgICAgICAgICAgICAgICAgICgweDNVIDw8IFRJTV9DUjFfQ01TX1BvcykgICAgICAgICAgLyohPCAweDAwMDAwMDYwICovDQojZGVmaW5lIFRJTV9DUjFfQ01TICAgICAgICAgICAgICAgICAgICAgICAgIFRJTV9DUjFfQ01TX01zayAgICAgICAgICAgICAgICAgICAgLyohPENNU1sxOjBdIGJpdHMgKENlbnRlci1hbGlnbmVkIG1vZGUgc2VsZWN0aW9uKSAqLw0KI2RlZmluZSBUSU1fQ1IxX0NNU18wICAgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBUSU1fQ1IxX0NNU19Qb3MpICAgICAgICAgIC8qITwgMHgwMDAwMDAyMCAqLw0KI2RlZmluZSBUSU1fQ1IxX0NNU18xICAgICAgICAgICAgICAgICAgICAgICAoMHgyVSA8PCBUSU1fQ1IxX0NNU19Qb3MpICAgICAgICAgIC8qITwgMHgwMDAwMDA0MCAqLw0KDQojZGVmaW5lIFRJTV9DUjFfQVJQRV9Qb3MgICAgICAgICAgICAgICAgICAgICg3VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFRJTV9DUjFfQVJQRV9Nc2sgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFRJTV9DUjFfQVJQRV9Qb3MpICAgICAgICAgLyohPCAweDAwMDAwMDgwICovDQojZGVmaW5lIFRJTV9DUjFfQVJQRSAgICAgICAgICAgICAgICAgICAgICAgIFRJTV9DUjFfQVJQRV9Nc2sgICAgICAgICAgICAgICAgICAgLyohPEF1dG8tcmVsb2FkIHByZWxvYWQgZW5hYmxlICovDQoNCiNkZWZpbmUgVElNX0NSMV9DS0RfUG9zICAgICAgICAgICAgICAgICAgICAgKDhVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVElNX0NSMV9DS0RfTXNrICAgICAgICAgICAgICAgICAgICAgKDB4M1UgPDwgVElNX0NSMV9DS0RfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDAzMDAgKi8NCiNkZWZpbmUgVElNX0NSMV9DS0QgICAgICAgICAgICAgICAgICAgICAgICAgVElNX0NSMV9DS0RfTXNrICAgICAgICAgICAgICAgICAgICAvKiE8Q0tEWzE6MF0gYml0cyAoY2xvY2sgZGl2aXNpb24pICovDQojZGVmaW5lIFRJTV9DUjFfQ0tEXzAgICAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFRJTV9DUjFfQ0tEX1BvcykgICAgICAgICAgLyohPCAweDAwMDAwMTAwICovDQojZGVmaW5lIFRJTV9DUjFfQ0tEXzEgICAgICAgICAgICAgICAgICAgICAgICgweDJVIDw8IFRJTV9DUjFfQ0tEX1BvcykgICAgICAgICAgLyohPCAweDAwMDAwMjAwICovDQoNCi8qKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgVElNX0NSMiByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIFRJTV9DUjJfQ0NEU19Qb3MgICAgICAgICAgICAgICAgICAgICgzVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFRJTV9DUjJfQ0NEU19Nc2sgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFRJTV9DUjJfQ0NEU19Qb3MpICAgICAgICAgLyohPCAweDAwMDAwMDA4ICovDQojZGVmaW5lIFRJTV9DUjJfQ0NEUyAgICAgICAgICAgICAgICAgICAgICAgIFRJTV9DUjJfQ0NEU19Nc2sgICAgICAgICAgICAgICAgICAgLyohPENhcHR1cmUvQ29tcGFyZSBETUEgU2VsZWN0aW9uICovDQoNCiNkZWZpbmUgVElNX0NSMl9NTVNfUG9zICAgICAgICAgICAgICAgICAgICAgKDRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVElNX0NSMl9NTVNfTXNrICAgICAgICAgICAgICAgICAgICAgKDB4N1UgPDwgVElNX0NSMl9NTVNfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDAwNzAgKi8NCiNkZWZpbmUgVElNX0NSMl9NTVMgICAgICAgICAgICAgICAgICAgICAgICAgVElNX0NSMl9NTVNfTXNrICAgICAgICAgICAgICAgICAgICAvKiE8TU1TWzI6MF0gYml0cyAoTWFzdGVyIE1vZGUgU2VsZWN0aW9uKSAqLw0KI2RlZmluZSBUSU1fQ1IyX01NU18wICAgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBUSU1fQ1IyX01NU19Qb3MpICAgICAgICAgIC8qITwgMHgwMDAwMDAxMCAqLw0KI2RlZmluZSBUSU1fQ1IyX01NU18xICAgICAgICAgICAgICAgICAgICAgICAoMHgyVSA8PCBUSU1fQ1IyX01NU19Qb3MpICAgICAgICAgIC8qITwgMHgwMDAwMDAyMCAqLw0KI2RlZmluZSBUSU1fQ1IyX01NU18yICAgICAgICAgICAgICAgICAgICAgICAoMHg0VSA8PCBUSU1fQ1IyX01NU19Qb3MpICAgICAgICAgIC8qITwgMHgwMDAwMDA0MCAqLw0KDQojZGVmaW5lIFRJTV9DUjJfVEkxU19Qb3MgICAgICAgICAgICAgICAgICAgICg3VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFRJTV9DUjJfVEkxU19Nc2sgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFRJTV9DUjJfVEkxU19Qb3MpICAgICAgICAgLyohPCAweDAwMDAwMDgwICovDQojZGVmaW5lIFRJTV9DUjJfVEkxUyAgICAgICAgICAgICAgICAgICAgICAgIFRJTV9DUjJfVEkxU19Nc2sgICAgICAgICAgICAgICAgICAgLyohPFRJMSBTZWxlY3Rpb24gKi8NCg0KLyoqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBUSU1fU01DUiByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgVElNX1NNQ1JfU01TX1BvcyAgICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVElNX1NNQ1JfU01TX01zayAgICAgICAgICAgICAgICAgICAgKDB4N1UgPDwgVElNX1NNQ1JfU01TX1BvcykgICAgICAgICAvKiE8IDB4MDAwMDAwMDcgKi8NCiNkZWZpbmUgVElNX1NNQ1JfU01TICAgICAgICAgICAgICAgICAgICAgICAgVElNX1NNQ1JfU01TX01zayAgICAgICAgICAgICAgICAgICAvKiE8U01TWzI6MF0gYml0cyAoU2xhdmUgbW9kZSBzZWxlY3Rpb24pICovDQojZGVmaW5lIFRJTV9TTUNSX1NNU18wICAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFRJTV9TTUNSX1NNU19Qb3MpICAgICAgICAgLyohPCAweDAwMDAwMDAxICovDQojZGVmaW5lIFRJTV9TTUNSX1NNU18xICAgICAgICAgICAgICAgICAgICAgICgweDJVIDw8IFRJTV9TTUNSX1NNU19Qb3MpICAgICAgICAgLyohPCAweDAwMDAwMDAyICovDQojZGVmaW5lIFRJTV9TTUNSX1NNU18yICAgICAgICAgICAgICAgICAgICAgICgweDRVIDw8IFRJTV9TTUNSX1NNU19Qb3MpICAgICAgICAgLyohPCAweDAwMDAwMDA0ICovDQoNCiNkZWZpbmUgVElNX1NNQ1JfT0NDU19Qb3MgICAgICAgICAgICAgICAgICAgKDNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVElNX1NNQ1JfT0NDU19Nc2sgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVElNX1NNQ1JfT0NDU19Qb3MpICAgICAgICAvKiE8IDB4MDAwMDAwMDggKi8NCiNkZWZpbmUgVElNX1NNQ1JfT0NDUyAgICAgICAgICAgICAgICAgICAgICAgVElNX1NNQ1JfT0NDU19Nc2sgICAgICAgICAgICAgICAgICAvKiE8IE9DUkVGIGNsZWFyIHNlbGVjdGlvbiAqLw0KDQojZGVmaW5lIFRJTV9TTUNSX1RTX1BvcyAgICAgICAgICAgICAgICAgICAgICg0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFRJTV9TTUNSX1RTX01zayAgICAgICAgICAgICAgICAgICAgICgweDdVIDw8IFRJTV9TTUNSX1RTX1BvcykgICAgICAgICAgLyohPCAweDAwMDAwMDcwICovDQojZGVmaW5lIFRJTV9TTUNSX1RTICAgICAgICAgICAgICAgICAgICAgICAgIFRJTV9TTUNSX1RTX01zayAgICAgICAgICAgICAgICAgICAgLyohPFRTWzI6MF0gYml0cyAoVHJpZ2dlciBzZWxlY3Rpb24pICovDQojZGVmaW5lIFRJTV9TTUNSX1RTXzAgICAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFRJTV9TTUNSX1RTX1BvcykgICAgICAgICAgLyohPCAweDAwMDAwMDEwICovDQojZGVmaW5lIFRJTV9TTUNSX1RTXzEgICAgICAgICAgICAgICAgICAgICAgICgweDJVIDw8IFRJTV9TTUNSX1RTX1BvcykgICAgICAgICAgLyohPCAweDAwMDAwMDIwICovDQojZGVmaW5lIFRJTV9TTUNSX1RTXzIgICAgICAgICAgICAgICAgICAgICAgICgweDRVIDw8IFRJTV9TTUNSX1RTX1BvcykgICAgICAgICAgLyohPCAweDAwMDAwMDQwICovDQoNCiNkZWZpbmUgVElNX1NNQ1JfTVNNX1BvcyAgICAgICAgICAgICAgICAgICAgKDdVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVElNX1NNQ1JfTVNNX01zayAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVElNX1NNQ1JfTVNNX1BvcykgICAgICAgICAvKiE8IDB4MDAwMDAwODAgKi8NCiNkZWZpbmUgVElNX1NNQ1JfTVNNICAgICAgICAgICAgICAgICAgICAgICAgVElNX1NNQ1JfTVNNX01zayAgICAgICAgICAgICAgICAgICAvKiE8TWFzdGVyL3NsYXZlIG1vZGUgKi8NCg0KI2RlZmluZSBUSU1fU01DUl9FVEZfUG9zICAgICAgICAgICAgICAgICAgICAoOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBUSU1fU01DUl9FVEZfTXNrICAgICAgICAgICAgICAgICAgICAoMHhGVSA8PCBUSU1fU01DUl9FVEZfUG9zKSAgICAgICAgIC8qITwgMHgwMDAwMEYwMCAqLw0KI2RlZmluZSBUSU1fU01DUl9FVEYgICAgICAgICAgICAgICAgICAgICAgICBUSU1fU01DUl9FVEZfTXNrICAgICAgICAgICAgICAgICAgIC8qITxFVEZbMzowXSBiaXRzIChFeHRlcm5hbCB0cmlnZ2VyIGZpbHRlcikgKi8NCiNkZWZpbmUgVElNX1NNQ1JfRVRGXzAgICAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVElNX1NNQ1JfRVRGX1BvcykgICAgICAgICAvKiE8IDB4MDAwMDAxMDAgKi8NCiNkZWZpbmUgVElNX1NNQ1JfRVRGXzEgICAgICAgICAgICAgICAgICAgICAgKDB4MlUgPDwgVElNX1NNQ1JfRVRGX1BvcykgICAgICAgICAvKiE8IDB4MDAwMDAyMDAgKi8NCiNkZWZpbmUgVElNX1NNQ1JfRVRGXzIgICAgICAgICAgICAgICAgICAgICAgKDB4NFUgPDwgVElNX1NNQ1JfRVRGX1BvcykgICAgICAgICAvKiE8IDB4MDAwMDA0MDAgKi8NCiNkZWZpbmUgVElNX1NNQ1JfRVRGXzMgICAgICAgICAgICAgICAgICAgICAgKDB4OFUgPDwgVElNX1NNQ1JfRVRGX1BvcykgICAgICAgICAvKiE8IDB4MDAwMDA4MDAgKi8NCg0KI2RlZmluZSBUSU1fU01DUl9FVFBTX1BvcyAgICAgICAgICAgICAgICAgICAoMTJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBUSU1fU01DUl9FVFBTX01zayAgICAgICAgICAgICAgICAgICAoMHgzVSA8PCBUSU1fU01DUl9FVFBTX1BvcykgICAgICAgIC8qITwgMHgwMDAwMzAwMCAqLw0KI2RlZmluZSBUSU1fU01DUl9FVFBTICAgICAgICAgICAgICAgICAgICAgICBUSU1fU01DUl9FVFBTX01zayAgICAgICAgICAgICAgICAgIC8qITxFVFBTWzE6MF0gYml0cyAoRXh0ZXJuYWwgdHJpZ2dlciBwcmVzY2FsZXIpICovDQojZGVmaW5lIFRJTV9TTUNSX0VUUFNfMCAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFRJTV9TTUNSX0VUUFNfUG9zKSAgICAgICAgLyohPCAweDAwMDAxMDAwICovDQojZGVmaW5lIFRJTV9TTUNSX0VUUFNfMSAgICAgICAgICAgICAgICAgICAgICgweDJVIDw8IFRJTV9TTUNSX0VUUFNfUG9zKSAgICAgICAgLyohPCAweDAwMDAyMDAwICovDQoNCiNkZWZpbmUgVElNX1NNQ1JfRUNFX1BvcyAgICAgICAgICAgICAgICAgICAgKDE0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVElNX1NNQ1JfRUNFX01zayAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVElNX1NNQ1JfRUNFX1BvcykgICAgICAgICAvKiE8IDB4MDAwMDQwMDAgKi8NCiNkZWZpbmUgVElNX1NNQ1JfRUNFICAgICAgICAgICAgICAgICAgICAgICAgVElNX1NNQ1JfRUNFX01zayAgICAgICAgICAgICAgICAgICAvKiE8RXh0ZXJuYWwgY2xvY2sgZW5hYmxlICovDQojZGVmaW5lIFRJTV9TTUNSX0VUUF9Qb3MgICAgICAgICAgICAgICAgICAgICgxNVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFRJTV9TTUNSX0VUUF9Nc2sgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFRJTV9TTUNSX0VUUF9Qb3MpICAgICAgICAgLyohPCAweDAwMDA4MDAwICovDQojZGVmaW5lIFRJTV9TTUNSX0VUUCAgICAgICAgICAgICAgICAgICAgICAgIFRJTV9TTUNSX0VUUF9Nc2sgICAgICAgICAgICAgICAgICAgLyohPEV4dGVybmFsIHRyaWdnZXIgcG9sYXJpdHkgKi8NCg0KLyoqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBUSU1fRElFUiByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgVElNX0RJRVJfVUlFX1BvcyAgICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVElNX0RJRVJfVUlFX01zayAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVElNX0RJRVJfVUlFX1BvcykgICAgICAgICAvKiE8IDB4MDAwMDAwMDEgKi8NCiNkZWZpbmUgVElNX0RJRVJfVUlFICAgICAgICAgICAgICAgICAgICAgICAgVElNX0RJRVJfVUlFX01zayAgICAgICAgICAgICAgICAgICAvKiE8VXBkYXRlIGludGVycnVwdCBlbmFibGUgKi8NCiNkZWZpbmUgVElNX0RJRVJfQ0MxSUVfUG9zICAgICAgICAgICAgICAgICAgKDFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVElNX0RJRVJfQ0MxSUVfTXNrICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVElNX0RJRVJfQ0MxSUVfUG9zKSAgICAgICAvKiE8IDB4MDAwMDAwMDIgKi8NCiNkZWZpbmUgVElNX0RJRVJfQ0MxSUUgICAgICAgICAgICAgICAgICAgICAgVElNX0RJRVJfQ0MxSUVfTXNrICAgICAgICAgICAgICAgICAvKiE8Q2FwdHVyZS9Db21wYXJlIDEgaW50ZXJydXB0IGVuYWJsZSAqLw0KI2RlZmluZSBUSU1fRElFUl9DQzJJRV9Qb3MgICAgICAgICAgICAgICAgICAoMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBUSU1fRElFUl9DQzJJRV9Nc2sgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBUSU1fRElFUl9DQzJJRV9Qb3MpICAgICAgIC8qITwgMHgwMDAwMDAwNCAqLw0KI2RlZmluZSBUSU1fRElFUl9DQzJJRSAgICAgICAgICAgICAgICAgICAgICBUSU1fRElFUl9DQzJJRV9Nc2sgICAgICAgICAgICAgICAgIC8qITxDYXB0dXJlL0NvbXBhcmUgMiBpbnRlcnJ1cHQgZW5hYmxlICovDQojZGVmaW5lIFRJTV9ESUVSX0NDM0lFX1BvcyAgICAgICAgICAgICAgICAgICgzVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFRJTV9ESUVSX0NDM0lFX01zayAgICAgICAgICAgICAgICAgICgweDFVIDw8IFRJTV9ESUVSX0NDM0lFX1BvcykgICAgICAgLyohPCAweDAwMDAwMDA4ICovDQojZGVmaW5lIFRJTV9ESUVSX0NDM0lFICAgICAgICAgICAgICAgICAgICAgIFRJTV9ESUVSX0NDM0lFX01zayAgICAgICAgICAgICAgICAgLyohPENhcHR1cmUvQ29tcGFyZSAzIGludGVycnVwdCBlbmFibGUgKi8NCiNkZWZpbmUgVElNX0RJRVJfQ0M0SUVfUG9zICAgICAgICAgICAgICAgICAgKDRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVElNX0RJRVJfQ0M0SUVfTXNrICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVElNX0RJRVJfQ0M0SUVfUG9zKSAgICAgICAvKiE8IDB4MDAwMDAwMTAgKi8NCiNkZWZpbmUgVElNX0RJRVJfQ0M0SUUgICAgICAgICAgICAgICAgICAgICAgVElNX0RJRVJfQ0M0SUVfTXNrICAgICAgICAgICAgICAgICAvKiE8Q2FwdHVyZS9Db21wYXJlIDQgaW50ZXJydXB0IGVuYWJsZSAqLw0KI2RlZmluZSBUSU1fRElFUl9USUVfUG9zICAgICAgICAgICAgICAgICAgICAoNlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBUSU1fRElFUl9USUVfTXNrICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBUSU1fRElFUl9USUVfUG9zKSAgICAgICAgIC8qITwgMHgwMDAwMDA0MCAqLw0KI2RlZmluZSBUSU1fRElFUl9USUUgICAgICAgICAgICAgICAgICAgICAgICBUSU1fRElFUl9USUVfTXNrICAgICAgICAgICAgICAgICAgIC8qITxUcmlnZ2VyIGludGVycnVwdCBlbmFibGUgKi8NCiNkZWZpbmUgVElNX0RJRVJfVURFX1BvcyAgICAgICAgICAgICAgICAgICAgKDhVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVElNX0RJRVJfVURFX01zayAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVElNX0RJRVJfVURFX1BvcykgICAgICAgICAvKiE8IDB4MDAwMDAxMDAgKi8NCiNkZWZpbmUgVElNX0RJRVJfVURFICAgICAgICAgICAgICAgICAgICAgICAgVElNX0RJRVJfVURFX01zayAgICAgICAgICAgICAgICAgICAvKiE8VXBkYXRlIERNQSByZXF1ZXN0IGVuYWJsZSAqLw0KI2RlZmluZSBUSU1fRElFUl9DQzFERV9Qb3MgICAgICAgICAgICAgICAgICAoOVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBUSU1fRElFUl9DQzFERV9Nc2sgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBUSU1fRElFUl9DQzFERV9Qb3MpICAgICAgIC8qITwgMHgwMDAwMDIwMCAqLw0KI2RlZmluZSBUSU1fRElFUl9DQzFERSAgICAgICAgICAgICAgICAgICAgICBUSU1fRElFUl9DQzFERV9Nc2sgICAgICAgICAgICAgICAgIC8qITxDYXB0dXJlL0NvbXBhcmUgMSBETUEgcmVxdWVzdCBlbmFibGUgKi8NCiNkZWZpbmUgVElNX0RJRVJfQ0MyREVfUG9zICAgICAgICAgICAgICAgICAgKDEwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVElNX0RJRVJfQ0MyREVfTXNrICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVElNX0RJRVJfQ0MyREVfUG9zKSAgICAgICAvKiE8IDB4MDAwMDA0MDAgKi8NCiNkZWZpbmUgVElNX0RJRVJfQ0MyREUgICAgICAgICAgICAgICAgICAgICAgVElNX0RJRVJfQ0MyREVfTXNrICAgICAgICAgICAgICAgICAvKiE8Q2FwdHVyZS9Db21wYXJlIDIgRE1BIHJlcXVlc3QgZW5hYmxlICovDQojZGVmaW5lIFRJTV9ESUVSX0NDM0RFX1BvcyAgICAgICAgICAgICAgICAgICgxMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFRJTV9ESUVSX0NDM0RFX01zayAgICAgICAgICAgICAgICAgICgweDFVIDw8IFRJTV9ESUVSX0NDM0RFX1BvcykgICAgICAgLyohPCAweDAwMDAwODAwICovDQojZGVmaW5lIFRJTV9ESUVSX0NDM0RFICAgICAgICAgICAgICAgICAgICAgIFRJTV9ESUVSX0NDM0RFX01zayAgICAgICAgICAgICAgICAgLyohPENhcHR1cmUvQ29tcGFyZSAzIERNQSByZXF1ZXN0IGVuYWJsZSAqLw0KI2RlZmluZSBUSU1fRElFUl9DQzRERV9Qb3MgICAgICAgICAgICAgICAgICAoMTJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBUSU1fRElFUl9DQzRERV9Nc2sgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBUSU1fRElFUl9DQzRERV9Qb3MpICAgICAgIC8qITwgMHgwMDAwMTAwMCAqLw0KI2RlZmluZSBUSU1fRElFUl9DQzRERSAgICAgICAgICAgICAgICAgICAgICBUSU1fRElFUl9DQzRERV9Nc2sgICAgICAgICAgICAgICAgIC8qITxDYXB0dXJlL0NvbXBhcmUgNCBETUEgcmVxdWVzdCBlbmFibGUgKi8NCiNkZWZpbmUgVElNX0RJRVJfQ09NREUgICAgICAgICAgICAgICAgICAgICAgKCh1aW50MTZfdCkweDIwMDBVKSAgICAgICAgICAgICAgICAvKiE8Q09NIERNQSByZXF1ZXN0IGVuYWJsZSAqLw0KI2RlZmluZSBUSU1fRElFUl9UREVfUG9zICAgICAgICAgICAgICAgICAgICAoMTRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBUSU1fRElFUl9UREVfTXNrICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBUSU1fRElFUl9UREVfUG9zKSAgICAgICAgIC8qITwgMHgwMDAwNDAwMCAqLw0KI2RlZmluZSBUSU1fRElFUl9UREUgICAgICAgICAgICAgICAgICAgICAgICBUSU1fRElFUl9UREVfTXNrICAgICAgICAgICAgICAgICAgIC8qITxUcmlnZ2VyIERNQSByZXF1ZXN0IGVuYWJsZSAqLw0KDQovKioqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBUSU1fU1IgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBUSU1fU1JfVUlGX1BvcyAgICAgICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBUSU1fU1JfVUlGX01zayAgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBUSU1fU1JfVUlGX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDAwMSAqLw0KI2RlZmluZSBUSU1fU1JfVUlGICAgICAgICAgICAgICAgICAgICAgICAgICBUSU1fU1JfVUlGX01zayAgICAgICAgICAgICAgICAgICAgIC8qITxVcGRhdGUgaW50ZXJydXB0IEZsYWcgKi8NCiNkZWZpbmUgVElNX1NSX0NDMUlGX1BvcyAgICAgICAgICAgICAgICAgICAgKDFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVElNX1NSX0NDMUlGX01zayAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVElNX1NSX0NDMUlGX1BvcykgICAgICAgICAvKiE8IDB4MDAwMDAwMDIgKi8NCiNkZWZpbmUgVElNX1NSX0NDMUlGICAgICAgICAgICAgICAgICAgICAgICAgVElNX1NSX0NDMUlGX01zayAgICAgICAgICAgICAgICAgICAvKiE8Q2FwdHVyZS9Db21wYXJlIDEgaW50ZXJydXB0IEZsYWcgKi8NCiNkZWZpbmUgVElNX1NSX0NDMklGX1BvcyAgICAgICAgICAgICAgICAgICAgKDJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVElNX1NSX0NDMklGX01zayAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVElNX1NSX0NDMklGX1BvcykgICAgICAgICAvKiE8IDB4MDAwMDAwMDQgKi8NCiNkZWZpbmUgVElNX1NSX0NDMklGICAgICAgICAgICAgICAgICAgICAgICAgVElNX1NSX0NDMklGX01zayAgICAgICAgICAgICAgICAgICAvKiE8Q2FwdHVyZS9Db21wYXJlIDIgaW50ZXJydXB0IEZsYWcgKi8NCiNkZWZpbmUgVElNX1NSX0NDM0lGX1BvcyAgICAgICAgICAgICAgICAgICAgKDNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVElNX1NSX0NDM0lGX01zayAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVElNX1NSX0NDM0lGX1BvcykgICAgICAgICAvKiE8IDB4MDAwMDAwMDggKi8NCiNkZWZpbmUgVElNX1NSX0NDM0lGICAgICAgICAgICAgICAgICAgICAgICAgVElNX1NSX0NDM0lGX01zayAgICAgICAgICAgICAgICAgICAvKiE8Q2FwdHVyZS9Db21wYXJlIDMgaW50ZXJydXB0IEZsYWcgKi8NCiNkZWZpbmUgVElNX1NSX0NDNElGX1BvcyAgICAgICAgICAgICAgICAgICAgKDRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVElNX1NSX0NDNElGX01zayAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVElNX1NSX0NDNElGX1BvcykgICAgICAgICAvKiE8IDB4MDAwMDAwMTAgKi8NCiNkZWZpbmUgVElNX1NSX0NDNElGICAgICAgICAgICAgICAgICAgICAgICAgVElNX1NSX0NDNElGX01zayAgICAgICAgICAgICAgICAgICAvKiE8Q2FwdHVyZS9Db21wYXJlIDQgaW50ZXJydXB0IEZsYWcgKi8NCiNkZWZpbmUgVElNX1NSX1RJRl9Qb3MgICAgICAgICAgICAgICAgICAgICAgKDZVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVElNX1NSX1RJRl9Nc2sgICAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVElNX1NSX1RJRl9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDAwNDAgKi8NCiNkZWZpbmUgVElNX1NSX1RJRiAgICAgICAgICAgICAgICAgICAgICAgICAgVElNX1NSX1RJRl9Nc2sgICAgICAgICAgICAgICAgICAgICAvKiE8VHJpZ2dlciBpbnRlcnJ1cHQgRmxhZyAqLw0KI2RlZmluZSBUSU1fU1JfQ0MxT0ZfUG9zICAgICAgICAgICAgICAgICAgICAoOVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBUSU1fU1JfQ0MxT0ZfTXNrICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBUSU1fU1JfQ0MxT0ZfUG9zKSAgICAgICAgIC8qITwgMHgwMDAwMDIwMCAqLw0KI2RlZmluZSBUSU1fU1JfQ0MxT0YgICAgICAgICAgICAgICAgICAgICAgICBUSU1fU1JfQ0MxT0ZfTXNrICAgICAgICAgICAgICAgICAgIC8qITxDYXB0dXJlL0NvbXBhcmUgMSBPdmVyY2FwdHVyZSBGbGFnICovDQojZGVmaW5lIFRJTV9TUl9DQzJPRl9Qb3MgICAgICAgICAgICAgICAgICAgICgxMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFRJTV9TUl9DQzJPRl9Nc2sgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFRJTV9TUl9DQzJPRl9Qb3MpICAgICAgICAgLyohPCAweDAwMDAwNDAwICovDQojZGVmaW5lIFRJTV9TUl9DQzJPRiAgICAgICAgICAgICAgICAgICAgICAgIFRJTV9TUl9DQzJPRl9Nc2sgICAgICAgICAgICAgICAgICAgLyohPENhcHR1cmUvQ29tcGFyZSAyIE92ZXJjYXB0dXJlIEZsYWcgKi8NCiNkZWZpbmUgVElNX1NSX0NDM09GX1BvcyAgICAgICAgICAgICAgICAgICAgKDExVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVElNX1NSX0NDM09GX01zayAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVElNX1NSX0NDM09GX1BvcykgICAgICAgICAvKiE8IDB4MDAwMDA4MDAgKi8NCiNkZWZpbmUgVElNX1NSX0NDM09GICAgICAgICAgICAgICAgICAgICAgICAgVElNX1NSX0NDM09GX01zayAgICAgICAgICAgICAgICAgICAvKiE8Q2FwdHVyZS9Db21wYXJlIDMgT3ZlcmNhcHR1cmUgRmxhZyAqLw0KI2RlZmluZSBUSU1fU1JfQ0M0T0ZfUG9zICAgICAgICAgICAgICAgICAgICAoMTJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBUSU1fU1JfQ0M0T0ZfTXNrICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBUSU1fU1JfQ0M0T0ZfUG9zKSAgICAgICAgIC8qITwgMHgwMDAwMTAwMCAqLw0KI2RlZmluZSBUSU1fU1JfQ0M0T0YgICAgICAgICAgICAgICAgICAgICAgICBUSU1fU1JfQ0M0T0ZfTXNrICAgICAgICAgICAgICAgICAgIC8qITxDYXB0dXJlL0NvbXBhcmUgNCBPdmVyY2FwdHVyZSBGbGFnICovDQoNCi8qKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgVElNX0VHUiByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIFRJTV9FR1JfVUdfUG9zICAgICAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFRJTV9FR1JfVUdfTXNrICAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFRJTV9FR1JfVUdfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwMDAxICovDQojZGVmaW5lIFRJTV9FR1JfVUcgICAgICAgICAgICAgICAgICAgICAgICAgIFRJTV9FR1JfVUdfTXNrICAgICAgICAgICAgICAgICAgICAgLyohPFVwZGF0ZSBHZW5lcmF0aW9uICovDQojZGVmaW5lIFRJTV9FR1JfQ0MxR19Qb3MgICAgICAgICAgICAgICAgICAgICgxVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFRJTV9FR1JfQ0MxR19Nc2sgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFRJTV9FR1JfQ0MxR19Qb3MpICAgICAgICAgLyohPCAweDAwMDAwMDAyICovDQojZGVmaW5lIFRJTV9FR1JfQ0MxRyAgICAgICAgICAgICAgICAgICAgICAgIFRJTV9FR1JfQ0MxR19Nc2sgICAgICAgICAgICAgICAgICAgLyohPENhcHR1cmUvQ29tcGFyZSAxIEdlbmVyYXRpb24gKi8NCiNkZWZpbmUgVElNX0VHUl9DQzJHX1BvcyAgICAgICAgICAgICAgICAgICAgKDJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVElNX0VHUl9DQzJHX01zayAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVElNX0VHUl9DQzJHX1BvcykgICAgICAgICAvKiE8IDB4MDAwMDAwMDQgKi8NCiNkZWZpbmUgVElNX0VHUl9DQzJHICAgICAgICAgICAgICAgICAgICAgICAgVElNX0VHUl9DQzJHX01zayAgICAgICAgICAgICAgICAgICAvKiE8Q2FwdHVyZS9Db21wYXJlIDIgR2VuZXJhdGlvbiAqLw0KI2RlZmluZSBUSU1fRUdSX0NDM0dfUG9zICAgICAgICAgICAgICAgICAgICAoM1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBUSU1fRUdSX0NDM0dfTXNrICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBUSU1fRUdSX0NDM0dfUG9zKSAgICAgICAgIC8qITwgMHgwMDAwMDAwOCAqLw0KI2RlZmluZSBUSU1fRUdSX0NDM0cgICAgICAgICAgICAgICAgICAgICAgICBUSU1fRUdSX0NDM0dfTXNrICAgICAgICAgICAgICAgICAgIC8qITxDYXB0dXJlL0NvbXBhcmUgMyBHZW5lcmF0aW9uICovDQojZGVmaW5lIFRJTV9FR1JfQ0M0R19Qb3MgICAgICAgICAgICAgICAgICAgICg0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFRJTV9FR1JfQ0M0R19Nc2sgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFRJTV9FR1JfQ0M0R19Qb3MpICAgICAgICAgLyohPCAweDAwMDAwMDEwICovDQojZGVmaW5lIFRJTV9FR1JfQ0M0RyAgICAgICAgICAgICAgICAgICAgICAgIFRJTV9FR1JfQ0M0R19Nc2sgICAgICAgICAgICAgICAgICAgLyohPENhcHR1cmUvQ29tcGFyZSA0IEdlbmVyYXRpb24gKi8NCiNkZWZpbmUgVElNX0VHUl9UR19Qb3MgICAgICAgICAgICAgICAgICAgICAgKDZVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVElNX0VHUl9UR19Nc2sgICAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVElNX0VHUl9UR19Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDAwNDAgKi8NCiNkZWZpbmUgVElNX0VHUl9URyAgICAgICAgICAgICAgICAgICAgICAgICAgVElNX0VHUl9UR19Nc2sgICAgICAgICAgICAgICAgICAgICAvKiE8VHJpZ2dlciBHZW5lcmF0aW9uICovDQogICAgICAgICAgICAgICAgICAgDQovKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgVElNX0NDTVIxIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBUSU1fQ0NNUjFfQ0MxU19Qb3MgICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBUSU1fQ0NNUjFfQ0MxU19Nc2sgICAgICAgICAgICAgICAgICAoMHgzVSA8PCBUSU1fQ0NNUjFfQ0MxU19Qb3MpICAgICAgIC8qITwgMHgwMDAwMDAwMyAqLw0KI2RlZmluZSBUSU1fQ0NNUjFfQ0MxUyAgICAgICAgICAgICAgICAgICAgICBUSU1fQ0NNUjFfQ0MxU19Nc2sgICAgICAgICAgICAgICAgIC8qITxDQzFTWzE6MF0gYml0cyAoQ2FwdHVyZS9Db21wYXJlIDEgU2VsZWN0aW9uKSAqLw0KI2RlZmluZSBUSU1fQ0NNUjFfQ0MxU18wICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBUSU1fQ0NNUjFfQ0MxU19Qb3MpICAgICAgIC8qITwgMHgwMDAwMDAwMSAqLw0KI2RlZmluZSBUSU1fQ0NNUjFfQ0MxU18xICAgICAgICAgICAgICAgICAgICAoMHgyVSA8PCBUSU1fQ0NNUjFfQ0MxU19Qb3MpICAgICAgIC8qITwgMHgwMDAwMDAwMiAqLw0KDQojZGVmaW5lIFRJTV9DQ01SMV9PQzFGRV9Qb3MgICAgICAgICAgICAgICAgICgyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFRJTV9DQ01SMV9PQzFGRV9Nc2sgICAgICAgICAgICAgICAgICgweDFVIDw8IFRJTV9DQ01SMV9PQzFGRV9Qb3MpICAgICAgLyohPCAweDAwMDAwMDA0ICovDQojZGVmaW5lIFRJTV9DQ01SMV9PQzFGRSAgICAgICAgICAgICAgICAgICAgIFRJTV9DQ01SMV9PQzFGRV9Nc2sgICAgICAgICAgICAgICAgLyohPE91dHB1dCBDb21wYXJlIDEgRmFzdCBlbmFibGUgKi8NCiNkZWZpbmUgVElNX0NDTVIxX09DMVBFX1BvcyAgICAgICAgICAgICAgICAgKDNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVElNX0NDTVIxX09DMVBFX01zayAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVElNX0NDTVIxX09DMVBFX1BvcykgICAgICAvKiE8IDB4MDAwMDAwMDggKi8NCiNkZWZpbmUgVElNX0NDTVIxX09DMVBFICAgICAgICAgICAgICAgICAgICAgVElNX0NDTVIxX09DMVBFX01zayAgICAgICAgICAgICAgICAvKiE8T3V0cHV0IENvbXBhcmUgMSBQcmVsb2FkIGVuYWJsZSAqLw0KDQojZGVmaW5lIFRJTV9DQ01SMV9PQzFNX1BvcyAgICAgICAgICAgICAgICAgICg0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFRJTV9DQ01SMV9PQzFNX01zayAgICAgICAgICAgICAgICAgICgweDdVIDw8IFRJTV9DQ01SMV9PQzFNX1BvcykgICAgICAgLyohPCAweDAwMDAwMDcwICovDQojZGVmaW5lIFRJTV9DQ01SMV9PQzFNICAgICAgICAgICAgICAgICAgICAgIFRJTV9DQ01SMV9PQzFNX01zayAgICAgICAgICAgICAgICAgLyohPE9DMU1bMjowXSBiaXRzIChPdXRwdXQgQ29tcGFyZSAxIE1vZGUpICovDQojZGVmaW5lIFRJTV9DQ01SMV9PQzFNXzAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFRJTV9DQ01SMV9PQzFNX1BvcykgICAgICAgLyohPCAweDAwMDAwMDEwICovDQojZGVmaW5lIFRJTV9DQ01SMV9PQzFNXzEgICAgICAgICAgICAgICAgICAgICgweDJVIDw8IFRJTV9DQ01SMV9PQzFNX1BvcykgICAgICAgLyohPCAweDAwMDAwMDIwICovDQojZGVmaW5lIFRJTV9DQ01SMV9PQzFNXzIgICAgICAgICAgICAgICAgICAgICgweDRVIDw8IFRJTV9DQ01SMV9PQzFNX1BvcykgICAgICAgLyohPCAweDAwMDAwMDQwICovDQoNCiNkZWZpbmUgVElNX0NDTVIxX09DMUNFX1BvcyAgICAgICAgICAgICAgICAgKDdVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVElNX0NDTVIxX09DMUNFX01zayAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVElNX0NDTVIxX09DMUNFX1BvcykgICAgICAvKiE8IDB4MDAwMDAwODAgKi8NCiNkZWZpbmUgVElNX0NDTVIxX09DMUNFICAgICAgICAgICAgICAgICAgICAgVElNX0NDTVIxX09DMUNFX01zayAgICAgICAgICAgICAgICAvKiE8T3V0cHV0IENvbXBhcmUgMUNsZWFyIEVuYWJsZSAqLw0KDQojZGVmaW5lIFRJTV9DQ01SMV9DQzJTX1BvcyAgICAgICAgICAgICAgICAgICg4VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFRJTV9DQ01SMV9DQzJTX01zayAgICAgICAgICAgICAgICAgICgweDNVIDw8IFRJTV9DQ01SMV9DQzJTX1BvcykgICAgICAgLyohPCAweDAwMDAwMzAwICovDQojZGVmaW5lIFRJTV9DQ01SMV9DQzJTICAgICAgICAgICAgICAgICAgICAgIFRJTV9DQ01SMV9DQzJTX01zayAgICAgICAgICAgICAgICAgLyohPENDMlNbMTowXSBiaXRzIChDYXB0dXJlL0NvbXBhcmUgMiBTZWxlY3Rpb24pICovDQojZGVmaW5lIFRJTV9DQ01SMV9DQzJTXzAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFRJTV9DQ01SMV9DQzJTX1BvcykgICAgICAgLyohPCAweDAwMDAwMTAwICovDQojZGVmaW5lIFRJTV9DQ01SMV9DQzJTXzEgICAgICAgICAgICAgICAgICAgICgweDJVIDw8IFRJTV9DQ01SMV9DQzJTX1BvcykgICAgICAgLyohPCAweDAwMDAwMjAwICovDQoNCiNkZWZpbmUgVElNX0NDTVIxX09DMkZFX1BvcyAgICAgICAgICAgICAgICAgKDEwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVElNX0NDTVIxX09DMkZFX01zayAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVElNX0NDTVIxX09DMkZFX1BvcykgICAgICAvKiE8IDB4MDAwMDA0MDAgKi8NCiNkZWZpbmUgVElNX0NDTVIxX09DMkZFICAgICAgICAgICAgICAgICAgICAgVElNX0NDTVIxX09DMkZFX01zayAgICAgICAgICAgICAgICAvKiE8T3V0cHV0IENvbXBhcmUgMiBGYXN0IGVuYWJsZSAqLw0KI2RlZmluZSBUSU1fQ0NNUjFfT0MyUEVfUG9zICAgICAgICAgICAgICAgICAoMTFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBUSU1fQ0NNUjFfT0MyUEVfTXNrICAgICAgICAgICAgICAgICAoMHgxVSA8PCBUSU1fQ0NNUjFfT0MyUEVfUG9zKSAgICAgIC8qITwgMHgwMDAwMDgwMCAqLw0KI2RlZmluZSBUSU1fQ0NNUjFfT0MyUEUgICAgICAgICAgICAgICAgICAgICBUSU1fQ0NNUjFfT0MyUEVfTXNrICAgICAgICAgICAgICAgIC8qITxPdXRwdXQgQ29tcGFyZSAyIFByZWxvYWQgZW5hYmxlICovDQoNCiNkZWZpbmUgVElNX0NDTVIxX09DMk1fUG9zICAgICAgICAgICAgICAgICAgKDEyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVElNX0NDTVIxX09DMk1fTXNrICAgICAgICAgICAgICAgICAgKDB4N1UgPDwgVElNX0NDTVIxX09DMk1fUG9zKSAgICAgICAvKiE8IDB4MDAwMDcwMDAgKi8NCiNkZWZpbmUgVElNX0NDTVIxX09DMk0gICAgICAgICAgICAgICAgICAgICAgVElNX0NDTVIxX09DMk1fTXNrICAgICAgICAgICAgICAgICAvKiE8T0MyTVsyOjBdIGJpdHMgKE91dHB1dCBDb21wYXJlIDIgTW9kZSkgKi8NCiNkZWZpbmUgVElNX0NDTVIxX09DMk1fMCAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVElNX0NDTVIxX09DMk1fUG9zKSAgICAgICAvKiE8IDB4MDAwMDEwMDAgKi8NCiNkZWZpbmUgVElNX0NDTVIxX09DMk1fMSAgICAgICAgICAgICAgICAgICAgKDB4MlUgPDwgVElNX0NDTVIxX09DMk1fUG9zKSAgICAgICAvKiE8IDB4MDAwMDIwMDAgKi8NCiNkZWZpbmUgVElNX0NDTVIxX09DMk1fMiAgICAgICAgICAgICAgICAgICAgKDB4NFUgPDwgVElNX0NDTVIxX09DMk1fUG9zKSAgICAgICAvKiE8IDB4MDAwMDQwMDAgKi8NCg0KI2RlZmluZSBUSU1fQ0NNUjFfT0MyQ0VfUG9zICAgICAgICAgICAgICAgICAoMTVVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBUSU1fQ0NNUjFfT0MyQ0VfTXNrICAgICAgICAgICAgICAgICAoMHgxVSA8PCBUSU1fQ0NNUjFfT0MyQ0VfUG9zKSAgICAgIC8qITwgMHgwMDAwODAwMCAqLw0KI2RlZmluZSBUSU1fQ0NNUjFfT0MyQ0UgICAgICAgICAgICAgICAgICAgICBUSU1fQ0NNUjFfT0MyQ0VfTXNrICAgICAgICAgICAgICAgIC8qITxPdXRwdXQgQ29tcGFyZSAyIENsZWFyIEVuYWJsZSAqLw0KDQovKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qLw0KDQojZGVmaW5lIFRJTV9DQ01SMV9JQzFQU0NfUG9zICAgICAgICAgICAgICAgICgyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFRJTV9DQ01SMV9JQzFQU0NfTXNrICAgICAgICAgICAgICAgICgweDNVIDw8IFRJTV9DQ01SMV9JQzFQU0NfUG9zKSAgICAgLyohPCAweDAwMDAwMDBDICovDQojZGVmaW5lIFRJTV9DQ01SMV9JQzFQU0MgICAgICAgICAgICAgICAgICAgIFRJTV9DQ01SMV9JQzFQU0NfTXNrICAgICAgICAgICAgICAgLyohPElDMVBTQ1sxOjBdIGJpdHMgKElucHV0IENhcHR1cmUgMSBQcmVzY2FsZXIpICovDQojZGVmaW5lIFRJTV9DQ01SMV9JQzFQU0NfMCAgICAgICAgICAgICAgICAgICgweDFVIDw8IFRJTV9DQ01SMV9JQzFQU0NfUG9zKSAgICAgLyohPCAweDAwMDAwMDA0ICovDQojZGVmaW5lIFRJTV9DQ01SMV9JQzFQU0NfMSAgICAgICAgICAgICAgICAgICgweDJVIDw8IFRJTV9DQ01SMV9JQzFQU0NfUG9zKSAgICAgLyohPCAweDAwMDAwMDA4ICovDQoNCiNkZWZpbmUgVElNX0NDTVIxX0lDMUZfUG9zICAgICAgICAgICAgICAgICAgKDRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVElNX0NDTVIxX0lDMUZfTXNrICAgICAgICAgICAgICAgICAgKDB4RlUgPDwgVElNX0NDTVIxX0lDMUZfUG9zKSAgICAgICAvKiE8IDB4MDAwMDAwRjAgKi8NCiNkZWZpbmUgVElNX0NDTVIxX0lDMUYgICAgICAgICAgICAgICAgICAgICAgVElNX0NDTVIxX0lDMUZfTXNrICAgICAgICAgICAgICAgICAvKiE8SUMxRlszOjBdIGJpdHMgKElucHV0IENhcHR1cmUgMSBGaWx0ZXIpICovDQojZGVmaW5lIFRJTV9DQ01SMV9JQzFGXzAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFRJTV9DQ01SMV9JQzFGX1BvcykgICAgICAgLyohPCAweDAwMDAwMDEwICovDQojZGVmaW5lIFRJTV9DQ01SMV9JQzFGXzEgICAgICAgICAgICAgICAgICAgICgweDJVIDw8IFRJTV9DQ01SMV9JQzFGX1BvcykgICAgICAgLyohPCAweDAwMDAwMDIwICovDQojZGVmaW5lIFRJTV9DQ01SMV9JQzFGXzIgICAgICAgICAgICAgICAgICAgICgweDRVIDw8IFRJTV9DQ01SMV9JQzFGX1BvcykgICAgICAgLyohPCAweDAwMDAwMDQwICovDQojZGVmaW5lIFRJTV9DQ01SMV9JQzFGXzMgICAgICAgICAgICAgICAgICAgICgweDhVIDw8IFRJTV9DQ01SMV9JQzFGX1BvcykgICAgICAgLyohPCAweDAwMDAwMDgwICovDQoNCiNkZWZpbmUgVElNX0NDTVIxX0lDMlBTQ19Qb3MgICAgICAgICAgICAgICAgKDEwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVElNX0NDTVIxX0lDMlBTQ19Nc2sgICAgICAgICAgICAgICAgKDB4M1UgPDwgVElNX0NDTVIxX0lDMlBTQ19Qb3MpICAgICAvKiE8IDB4MDAwMDBDMDAgKi8NCiNkZWZpbmUgVElNX0NDTVIxX0lDMlBTQyAgICAgICAgICAgICAgICAgICAgVElNX0NDTVIxX0lDMlBTQ19Nc2sgICAgICAgICAgICAgICAvKiE8SUMyUFNDWzE6MF0gYml0cyAoSW5wdXQgQ2FwdHVyZSAyIFByZXNjYWxlcikgKi8NCiNkZWZpbmUgVElNX0NDTVIxX0lDMlBTQ18wICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVElNX0NDTVIxX0lDMlBTQ19Qb3MpICAgICAvKiE8IDB4MDAwMDA0MDAgKi8NCiNkZWZpbmUgVElNX0NDTVIxX0lDMlBTQ18xICAgICAgICAgICAgICAgICAgKDB4MlUgPDwgVElNX0NDTVIxX0lDMlBTQ19Qb3MpICAgICAvKiE8IDB4MDAwMDA4MDAgKi8NCg0KI2RlZmluZSBUSU1fQ0NNUjFfSUMyRl9Qb3MgICAgICAgICAgICAgICAgICAoMTJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBUSU1fQ0NNUjFfSUMyRl9Nc2sgICAgICAgICAgICAgICAgICAoMHhGVSA8PCBUSU1fQ0NNUjFfSUMyRl9Qb3MpICAgICAgIC8qITwgMHgwMDAwRjAwMCAqLw0KI2RlZmluZSBUSU1fQ0NNUjFfSUMyRiAgICAgICAgICAgICAgICAgICAgICBUSU1fQ0NNUjFfSUMyRl9Nc2sgICAgICAgICAgICAgICAgIC8qITxJQzJGWzM6MF0gYml0cyAoSW5wdXQgQ2FwdHVyZSAyIEZpbHRlcikgKi8NCiNkZWZpbmUgVElNX0NDTVIxX0lDMkZfMCAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVElNX0NDTVIxX0lDMkZfUG9zKSAgICAgICAvKiE8IDB4MDAwMDEwMDAgKi8NCiNkZWZpbmUgVElNX0NDTVIxX0lDMkZfMSAgICAgICAgICAgICAgICAgICAgKDB4MlUgPDwgVElNX0NDTVIxX0lDMkZfUG9zKSAgICAgICAvKiE8IDB4MDAwMDIwMDAgKi8NCiNkZWZpbmUgVElNX0NDTVIxX0lDMkZfMiAgICAgICAgICAgICAgICAgICAgKDB4NFUgPDwgVElNX0NDTVIxX0lDMkZfUG9zKSAgICAgICAvKiE8IDB4MDAwMDQwMDAgKi8NCiNkZWZpbmUgVElNX0NDTVIxX0lDMkZfMyAgICAgICAgICAgICAgICAgICAgKDB4OFUgPDwgVElNX0NDTVIxX0lDMkZfUG9zKSAgICAgICAvKiE8IDB4MDAwMDgwMDAgKi8NCg0KLyoqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFRJTV9DQ01SMiByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgVElNX0NDTVIyX0NDM1NfUG9zICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVElNX0NDTVIyX0NDM1NfTXNrICAgICAgICAgICAgICAgICAgKDB4M1UgPDwgVElNX0NDTVIyX0NDM1NfUG9zKSAgICAgICAvKiE8IDB4MDAwMDAwMDMgKi8NCiNkZWZpbmUgVElNX0NDTVIyX0NDM1MgICAgICAgICAgICAgICAgICAgICAgVElNX0NDTVIyX0NDM1NfTXNrICAgICAgICAgICAgICAgICAvKiE8Q0MzU1sxOjBdIGJpdHMgKENhcHR1cmUvQ29tcGFyZSAzIFNlbGVjdGlvbikgKi8NCiNkZWZpbmUgVElNX0NDTVIyX0NDM1NfMCAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVElNX0NDTVIyX0NDM1NfUG9zKSAgICAgICAvKiE8IDB4MDAwMDAwMDEgKi8NCiNkZWZpbmUgVElNX0NDTVIyX0NDM1NfMSAgICAgICAgICAgICAgICAgICAgKDB4MlUgPDwgVElNX0NDTVIyX0NDM1NfUG9zKSAgICAgICAvKiE8IDB4MDAwMDAwMDIgKi8NCg0KI2RlZmluZSBUSU1fQ0NNUjJfT0MzRkVfUG9zICAgICAgICAgICAgICAgICAoMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBUSU1fQ0NNUjJfT0MzRkVfTXNrICAgICAgICAgICAgICAgICAoMHgxVSA8PCBUSU1fQ0NNUjJfT0MzRkVfUG9zKSAgICAgIC8qITwgMHgwMDAwMDAwNCAqLw0KI2RlZmluZSBUSU1fQ0NNUjJfT0MzRkUgICAgICAgICAgICAgICAgICAgICBUSU1fQ0NNUjJfT0MzRkVfTXNrICAgICAgICAgICAgICAgIC8qITxPdXRwdXQgQ29tcGFyZSAzIEZhc3QgZW5hYmxlICovDQojZGVmaW5lIFRJTV9DQ01SMl9PQzNQRV9Qb3MgICAgICAgICAgICAgICAgICgzVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFRJTV9DQ01SMl9PQzNQRV9Nc2sgICAgICAgICAgICAgICAgICgweDFVIDw8IFRJTV9DQ01SMl9PQzNQRV9Qb3MpICAgICAgLyohPCAweDAwMDAwMDA4ICovDQojZGVmaW5lIFRJTV9DQ01SMl9PQzNQRSAgICAgICAgICAgICAgICAgICAgIFRJTV9DQ01SMl9PQzNQRV9Nc2sgICAgICAgICAgICAgICAgLyohPE91dHB1dCBDb21wYXJlIDMgUHJlbG9hZCBlbmFibGUgKi8NCg0KI2RlZmluZSBUSU1fQ0NNUjJfT0MzTV9Qb3MgICAgICAgICAgICAgICAgICAoNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBUSU1fQ0NNUjJfT0MzTV9Nc2sgICAgICAgICAgICAgICAgICAoMHg3VSA8PCBUSU1fQ0NNUjJfT0MzTV9Qb3MpICAgICAgIC8qITwgMHgwMDAwMDA3MCAqLw0KI2RlZmluZSBUSU1fQ0NNUjJfT0MzTSAgICAgICAgICAgICAgICAgICAgICBUSU1fQ0NNUjJfT0MzTV9Nc2sgICAgICAgICAgICAgICAgIC8qITxPQzNNWzI6MF0gYml0cyAoT3V0cHV0IENvbXBhcmUgMyBNb2RlKSAqLw0KI2RlZmluZSBUSU1fQ0NNUjJfT0MzTV8wICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBUSU1fQ0NNUjJfT0MzTV9Qb3MpICAgICAgIC8qITwgMHgwMDAwMDAxMCAqLw0KI2RlZmluZSBUSU1fQ0NNUjJfT0MzTV8xICAgICAgICAgICAgICAgICAgICAoMHgyVSA8PCBUSU1fQ0NNUjJfT0MzTV9Qb3MpICAgICAgIC8qITwgMHgwMDAwMDAyMCAqLw0KI2RlZmluZSBUSU1fQ0NNUjJfT0MzTV8yICAgICAgICAgICAgICAgICAgICAoMHg0VSA8PCBUSU1fQ0NNUjJfT0MzTV9Qb3MpICAgICAgIC8qITwgMHgwMDAwMDA0MCAqLw0KDQojZGVmaW5lIFRJTV9DQ01SMl9PQzNDRV9Qb3MgICAgICAgICAgICAgICAgICg3VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFRJTV9DQ01SMl9PQzNDRV9Nc2sgICAgICAgICAgICAgICAgICgweDFVIDw8IFRJTV9DQ01SMl9PQzNDRV9Qb3MpICAgICAgLyohPCAweDAwMDAwMDgwICovDQojZGVmaW5lIFRJTV9DQ01SMl9PQzNDRSAgICAgICAgICAgICAgICAgICAgIFRJTV9DQ01SMl9PQzNDRV9Nc2sgICAgICAgICAgICAgICAgLyohPE91dHB1dCBDb21wYXJlIDMgQ2xlYXIgRW5hYmxlICovDQoNCiNkZWZpbmUgVElNX0NDTVIyX0NDNFNfUG9zICAgICAgICAgICAgICAgICAgKDhVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVElNX0NDTVIyX0NDNFNfTXNrICAgICAgICAgICAgICAgICAgKDB4M1UgPDwgVElNX0NDTVIyX0NDNFNfUG9zKSAgICAgICAvKiE8IDB4MDAwMDAzMDAgKi8NCiNkZWZpbmUgVElNX0NDTVIyX0NDNFMgICAgICAgICAgICAgICAgICAgICAgVElNX0NDTVIyX0NDNFNfTXNrICAgICAgICAgICAgICAgICAvKiE8Q0M0U1sxOjBdIGJpdHMgKENhcHR1cmUvQ29tcGFyZSA0IFNlbGVjdGlvbikgKi8NCiNkZWZpbmUgVElNX0NDTVIyX0NDNFNfMCAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVElNX0NDTVIyX0NDNFNfUG9zKSAgICAgICAvKiE8IDB4MDAwMDAxMDAgKi8NCiNkZWZpbmUgVElNX0NDTVIyX0NDNFNfMSAgICAgICAgICAgICAgICAgICAgKDB4MlUgPDwgVElNX0NDTVIyX0NDNFNfUG9zKSAgICAgICAvKiE8IDB4MDAwMDAyMDAgKi8NCg0KI2RlZmluZSBUSU1fQ0NNUjJfT0M0RkVfUG9zICAgICAgICAgICAgICAgICAoMTBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBUSU1fQ0NNUjJfT0M0RkVfTXNrICAgICAgICAgICAgICAgICAoMHgxVSA8PCBUSU1fQ0NNUjJfT0M0RkVfUG9zKSAgICAgIC8qITwgMHgwMDAwMDQwMCAqLw0KI2RlZmluZSBUSU1fQ0NNUjJfT0M0RkUgICAgICAgICAgICAgICAgICAgICBUSU1fQ0NNUjJfT0M0RkVfTXNrICAgICAgICAgICAgICAgIC8qITxPdXRwdXQgQ29tcGFyZSA0IEZhc3QgZW5hYmxlICovDQojZGVmaW5lIFRJTV9DQ01SMl9PQzRQRV9Qb3MgICAgICAgICAgICAgICAgICgxMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFRJTV9DQ01SMl9PQzRQRV9Nc2sgICAgICAgICAgICAgICAgICgweDFVIDw8IFRJTV9DQ01SMl9PQzRQRV9Qb3MpICAgICAgLyohPCAweDAwMDAwODAwICovDQojZGVmaW5lIFRJTV9DQ01SMl9PQzRQRSAgICAgICAgICAgICAgICAgICAgIFRJTV9DQ01SMl9PQzRQRV9Nc2sgICAgICAgICAgICAgICAgLyohPE91dHB1dCBDb21wYXJlIDQgUHJlbG9hZCBlbmFibGUgKi8NCg0KI2RlZmluZSBUSU1fQ0NNUjJfT0M0TV9Qb3MgICAgICAgICAgICAgICAgICAoMTJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBUSU1fQ0NNUjJfT0M0TV9Nc2sgICAgICAgICAgICAgICAgICAoMHg3VSA8PCBUSU1fQ0NNUjJfT0M0TV9Qb3MpICAgICAgIC8qITwgMHgwMDAwNzAwMCAqLw0KI2RlZmluZSBUSU1fQ0NNUjJfT0M0TSAgICAgICAgICAgICAgICAgICAgICBUSU1fQ0NNUjJfT0M0TV9Nc2sgICAgICAgICAgICAgICAgIC8qITxPQzRNWzI6MF0gYml0cyAoT3V0cHV0IENvbXBhcmUgNCBNb2RlKSAqLw0KI2RlZmluZSBUSU1fQ0NNUjJfT0M0TV8wICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBUSU1fQ0NNUjJfT0M0TV9Qb3MpICAgICAgIC8qITwgMHgwMDAwMTAwMCAqLw0KI2RlZmluZSBUSU1fQ0NNUjJfT0M0TV8xICAgICAgICAgICAgICAgICAgICAoMHgyVSA8PCBUSU1fQ0NNUjJfT0M0TV9Qb3MpICAgICAgIC8qITwgMHgwMDAwMjAwMCAqLw0KI2RlZmluZSBUSU1fQ0NNUjJfT0M0TV8yICAgICAgICAgICAgICAgICAgICAoMHg0VSA8PCBUSU1fQ0NNUjJfT0M0TV9Qb3MpICAgICAgIC8qITwgMHgwMDAwNDAwMCAqLw0KDQojZGVmaW5lIFRJTV9DQ01SMl9PQzRDRV9Qb3MgICAgICAgICAgICAgICAgICgxNVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFRJTV9DQ01SMl9PQzRDRV9Nc2sgICAgICAgICAgICAgICAgICgweDFVIDw8IFRJTV9DQ01SMl9PQzRDRV9Qb3MpICAgICAgLyohPCAweDAwMDA4MDAwICovDQojZGVmaW5lIFRJTV9DQ01SMl9PQzRDRSAgICAgICAgICAgICAgICAgICAgIFRJTV9DQ01SMl9PQzRDRV9Nc2sgICAgICAgICAgICAgICAgLyohPE91dHB1dCBDb21wYXJlIDQgQ2xlYXIgRW5hYmxlICovDQoNCi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovDQoNCiNkZWZpbmUgVElNX0NDTVIyX0lDM1BTQ19Qb3MgICAgICAgICAgICAgICAgKDJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVElNX0NDTVIyX0lDM1BTQ19Nc2sgICAgICAgICAgICAgICAgKDB4M1UgPDwgVElNX0NDTVIyX0lDM1BTQ19Qb3MpICAgICAvKiE8IDB4MDAwMDAwMEMgKi8NCiNkZWZpbmUgVElNX0NDTVIyX0lDM1BTQyAgICAgICAgICAgICAgICAgICAgVElNX0NDTVIyX0lDM1BTQ19Nc2sgICAgICAgICAgICAgICAvKiE8SUMzUFNDWzE6MF0gYml0cyAoSW5wdXQgQ2FwdHVyZSAzIFByZXNjYWxlcikgKi8NCiNkZWZpbmUgVElNX0NDTVIyX0lDM1BTQ18wICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVElNX0NDTVIyX0lDM1BTQ19Qb3MpICAgICAvKiE8IDB4MDAwMDAwMDQgKi8NCiNkZWZpbmUgVElNX0NDTVIyX0lDM1BTQ18xICAgICAgICAgICAgICAgICAgKDB4MlUgPDwgVElNX0NDTVIyX0lDM1BTQ19Qb3MpICAgICAvKiE8IDB4MDAwMDAwMDggKi8NCg0KI2RlZmluZSBUSU1fQ0NNUjJfSUMzRl9Qb3MgICAgICAgICAgICAgICAgICAoNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBUSU1fQ0NNUjJfSUMzRl9Nc2sgICAgICAgICAgICAgICAgICAoMHhGVSA8PCBUSU1fQ0NNUjJfSUMzRl9Qb3MpICAgICAgIC8qITwgMHgwMDAwMDBGMCAqLw0KI2RlZmluZSBUSU1fQ0NNUjJfSUMzRiAgICAgICAgICAgICAgICAgICAgICBUSU1fQ0NNUjJfSUMzRl9Nc2sgICAgICAgICAgICAgICAgIC8qITxJQzNGWzM6MF0gYml0cyAoSW5wdXQgQ2FwdHVyZSAzIEZpbHRlcikgKi8NCiNkZWZpbmUgVElNX0NDTVIyX0lDM0ZfMCAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVElNX0NDTVIyX0lDM0ZfUG9zKSAgICAgICAvKiE8IDB4MDAwMDAwMTAgKi8NCiNkZWZpbmUgVElNX0NDTVIyX0lDM0ZfMSAgICAgICAgICAgICAgICAgICAgKDB4MlUgPDwgVElNX0NDTVIyX0lDM0ZfUG9zKSAgICAgICAvKiE8IDB4MDAwMDAwMjAgKi8NCiNkZWZpbmUgVElNX0NDTVIyX0lDM0ZfMiAgICAgICAgICAgICAgICAgICAgKDB4NFUgPDwgVElNX0NDTVIyX0lDM0ZfUG9zKSAgICAgICAvKiE8IDB4MDAwMDAwNDAgKi8NCiNkZWZpbmUgVElNX0NDTVIyX0lDM0ZfMyAgICAgICAgICAgICAgICAgICAgKDB4OFUgPDwgVElNX0NDTVIyX0lDM0ZfUG9zKSAgICAgICAvKiE8IDB4MDAwMDAwODAgKi8NCg0KI2RlZmluZSBUSU1fQ0NNUjJfSUM0UFNDX1BvcyAgICAgICAgICAgICAgICAoMTBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBUSU1fQ0NNUjJfSUM0UFNDX01zayAgICAgICAgICAgICAgICAoMHgzVSA8PCBUSU1fQ0NNUjJfSUM0UFNDX1BvcykgICAgIC8qITwgMHgwMDAwMEMwMCAqLw0KI2RlZmluZSBUSU1fQ0NNUjJfSUM0UFNDICAgICAgICAgICAgICAgICAgICBUSU1fQ0NNUjJfSUM0UFNDX01zayAgICAgICAgICAgICAgIC8qITxJQzRQU0NbMTowXSBiaXRzIChJbnB1dCBDYXB0dXJlIDQgUHJlc2NhbGVyKSAqLw0KI2RlZmluZSBUSU1fQ0NNUjJfSUM0UFNDXzAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBUSU1fQ0NNUjJfSUM0UFNDX1BvcykgICAgIC8qITwgMHgwMDAwMDQwMCAqLw0KI2RlZmluZSBUSU1fQ0NNUjJfSUM0UFNDXzEgICAgICAgICAgICAgICAgICAoMHgyVSA8PCBUSU1fQ0NNUjJfSUM0UFNDX1BvcykgICAgIC8qITwgMHgwMDAwMDgwMCAqLw0KDQojZGVmaW5lIFRJTV9DQ01SMl9JQzRGX1BvcyAgICAgICAgICAgICAgICAgICgxMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFRJTV9DQ01SMl9JQzRGX01zayAgICAgICAgICAgICAgICAgICgweEZVIDw8IFRJTV9DQ01SMl9JQzRGX1BvcykgICAgICAgLyohPCAweDAwMDBGMDAwICovDQojZGVmaW5lIFRJTV9DQ01SMl9JQzRGICAgICAgICAgICAgICAgICAgICAgIFRJTV9DQ01SMl9JQzRGX01zayAgICAgICAgICAgICAgICAgLyohPElDNEZbMzowXSBiaXRzIChJbnB1dCBDYXB0dXJlIDQgRmlsdGVyKSAqLw0KI2RlZmluZSBUSU1fQ0NNUjJfSUM0Rl8wICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBUSU1fQ0NNUjJfSUM0Rl9Qb3MpICAgICAgIC8qITwgMHgwMDAwMTAwMCAqLw0KI2RlZmluZSBUSU1fQ0NNUjJfSUM0Rl8xICAgICAgICAgICAgICAgICAgICAoMHgyVSA8PCBUSU1fQ0NNUjJfSUM0Rl9Qb3MpICAgICAgIC8qITwgMHgwMDAwMjAwMCAqLw0KI2RlZmluZSBUSU1fQ0NNUjJfSUM0Rl8yICAgICAgICAgICAgICAgICAgICAoMHg0VSA8PCBUSU1fQ0NNUjJfSUM0Rl9Qb3MpICAgICAgIC8qITwgMHgwMDAwNDAwMCAqLw0KI2RlZmluZSBUSU1fQ0NNUjJfSUM0Rl8zICAgICAgICAgICAgICAgICAgICAoMHg4VSA8PCBUSU1fQ0NNUjJfSUM0Rl9Qb3MpICAgICAgIC8qITwgMHgwMDAwODAwMCAqLw0KDQovKioqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFRJTV9DQ0VSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBUSU1fQ0NFUl9DQzFFX1BvcyAgICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBUSU1fQ0NFUl9DQzFFX01zayAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBUSU1fQ0NFUl9DQzFFX1BvcykgICAgICAgIC8qITwgMHgwMDAwMDAwMSAqLw0KI2RlZmluZSBUSU1fQ0NFUl9DQzFFICAgICAgICAgICAgICAgICAgICAgICBUSU1fQ0NFUl9DQzFFX01zayAgICAgICAgICAgICAgICAgIC8qITxDYXB0dXJlL0NvbXBhcmUgMSBvdXRwdXQgZW5hYmxlICovDQojZGVmaW5lIFRJTV9DQ0VSX0NDMVBfUG9zICAgICAgICAgICAgICAgICAgICgxVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFRJTV9DQ0VSX0NDMVBfTXNrICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFRJTV9DQ0VSX0NDMVBfUG9zKSAgICAgICAgLyohPCAweDAwMDAwMDAyICovDQojZGVmaW5lIFRJTV9DQ0VSX0NDMVAgICAgICAgICAgICAgICAgICAgICAgIFRJTV9DQ0VSX0NDMVBfTXNrICAgICAgICAgICAgICAgICAgLyohPENhcHR1cmUvQ29tcGFyZSAxIG91dHB1dCBQb2xhcml0eSAqLw0KI2RlZmluZSBUSU1fQ0NFUl9DQzFOUF9Qb3MgICAgICAgICAgICAgICAgICAoM1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBUSU1fQ0NFUl9DQzFOUF9Nc2sgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBUSU1fQ0NFUl9DQzFOUF9Qb3MpICAgICAgIC8qITwgMHgwMDAwMDAwOCAqLw0KI2RlZmluZSBUSU1fQ0NFUl9DQzFOUCAgICAgICAgICAgICAgICAgICAgICBUSU1fQ0NFUl9DQzFOUF9Nc2sgICAgICAgICAgICAgICAgIC8qITxDYXB0dXJlL0NvbXBhcmUgMSBDb21wbGVtZW50YXJ5IG91dHB1dCBQb2xhcml0eSAqLw0KI2RlZmluZSBUSU1fQ0NFUl9DQzJFX1BvcyAgICAgICAgICAgICAgICAgICAoNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBUSU1fQ0NFUl9DQzJFX01zayAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBUSU1fQ0NFUl9DQzJFX1BvcykgICAgICAgIC8qITwgMHgwMDAwMDAxMCAqLw0KI2RlZmluZSBUSU1fQ0NFUl9DQzJFICAgICAgICAgICAgICAgICAgICAgICBUSU1fQ0NFUl9DQzJFX01zayAgICAgICAgICAgICAgICAgIC8qITxDYXB0dXJlL0NvbXBhcmUgMiBvdXRwdXQgZW5hYmxlICovDQojZGVmaW5lIFRJTV9DQ0VSX0NDMlBfUG9zICAgICAgICAgICAgICAgICAgICg1VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFRJTV9DQ0VSX0NDMlBfTXNrICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFRJTV9DQ0VSX0NDMlBfUG9zKSAgICAgICAgLyohPCAweDAwMDAwMDIwICovDQojZGVmaW5lIFRJTV9DQ0VSX0NDMlAgICAgICAgICAgICAgICAgICAgICAgIFRJTV9DQ0VSX0NDMlBfTXNrICAgICAgICAgICAgICAgICAgLyohPENhcHR1cmUvQ29tcGFyZSAyIG91dHB1dCBQb2xhcml0eSAqLw0KI2RlZmluZSBUSU1fQ0NFUl9DQzJOUF9Qb3MgICAgICAgICAgICAgICAgICAoN1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBUSU1fQ0NFUl9DQzJOUF9Nc2sgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBUSU1fQ0NFUl9DQzJOUF9Qb3MpICAgICAgIC8qITwgMHgwMDAwMDA4MCAqLw0KI2RlZmluZSBUSU1fQ0NFUl9DQzJOUCAgICAgICAgICAgICAgICAgICAgICBUSU1fQ0NFUl9DQzJOUF9Nc2sgICAgICAgICAgICAgICAgIC8qITxDYXB0dXJlL0NvbXBhcmUgMiBDb21wbGVtZW50YXJ5IG91dHB1dCBQb2xhcml0eSAqLw0KI2RlZmluZSBUSU1fQ0NFUl9DQzNFX1BvcyAgICAgICAgICAgICAgICAgICAoOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBUSU1fQ0NFUl9DQzNFX01zayAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBUSU1fQ0NFUl9DQzNFX1BvcykgICAgICAgIC8qITwgMHgwMDAwMDEwMCAqLw0KI2RlZmluZSBUSU1fQ0NFUl9DQzNFICAgICAgICAgICAgICAgICAgICAgICBUSU1fQ0NFUl9DQzNFX01zayAgICAgICAgICAgICAgICAgIC8qITxDYXB0dXJlL0NvbXBhcmUgMyBvdXRwdXQgZW5hYmxlICovDQojZGVmaW5lIFRJTV9DQ0VSX0NDM1BfUG9zICAgICAgICAgICAgICAgICAgICg5VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFRJTV9DQ0VSX0NDM1BfTXNrICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFRJTV9DQ0VSX0NDM1BfUG9zKSAgICAgICAgLyohPCAweDAwMDAwMjAwICovDQojZGVmaW5lIFRJTV9DQ0VSX0NDM1AgICAgICAgICAgICAgICAgICAgICAgIFRJTV9DQ0VSX0NDM1BfTXNrICAgICAgICAgICAgICAgICAgLyohPENhcHR1cmUvQ29tcGFyZSAzIG91dHB1dCBQb2xhcml0eSAqLw0KI2RlZmluZSBUSU1fQ0NFUl9DQzNOUF9Qb3MgICAgICAgICAgICAgICAgICAoMTFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBUSU1fQ0NFUl9DQzNOUF9Nc2sgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBUSU1fQ0NFUl9DQzNOUF9Qb3MpICAgICAgIC8qITwgMHgwMDAwMDgwMCAqLw0KI2RlZmluZSBUSU1fQ0NFUl9DQzNOUCAgICAgICAgICAgICAgICAgICAgICBUSU1fQ0NFUl9DQzNOUF9Nc2sgICAgICAgICAgICAgICAgIC8qITxDYXB0dXJlL0NvbXBhcmUgMyBDb21wbGVtZW50YXJ5IG91dHB1dCBQb2xhcml0eSAqLw0KI2RlZmluZSBUSU1fQ0NFUl9DQzRFX1BvcyAgICAgICAgICAgICAgICAgICAoMTJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBUSU1fQ0NFUl9DQzRFX01zayAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBUSU1fQ0NFUl9DQzRFX1BvcykgICAgICAgIC8qITwgMHgwMDAwMTAwMCAqLw0KI2RlZmluZSBUSU1fQ0NFUl9DQzRFICAgICAgICAgICAgICAgICAgICAgICBUSU1fQ0NFUl9DQzRFX01zayAgICAgICAgICAgICAgICAgIC8qITxDYXB0dXJlL0NvbXBhcmUgNCBvdXRwdXQgZW5hYmxlICovDQojZGVmaW5lIFRJTV9DQ0VSX0NDNFBfUG9zICAgICAgICAgICAgICAgICAgICgxM1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFRJTV9DQ0VSX0NDNFBfTXNrICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFRJTV9DQ0VSX0NDNFBfUG9zKSAgICAgICAgLyohPCAweDAwMDAyMDAwICovDQojZGVmaW5lIFRJTV9DQ0VSX0NDNFAgICAgICAgICAgICAgICAgICAgICAgIFRJTV9DQ0VSX0NDNFBfTXNrICAgICAgICAgICAgICAgICAgLyohPENhcHR1cmUvQ29tcGFyZSA0IG91dHB1dCBQb2xhcml0eSAqLw0KI2RlZmluZSBUSU1fQ0NFUl9DQzROUF9Qb3MgICAgICAgICAgICAgICAgICAoMTVVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBUSU1fQ0NFUl9DQzROUF9Nc2sgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBUSU1fQ0NFUl9DQzROUF9Qb3MpICAgICAgIC8qITwgMHgwMDAwODAwMCAqLw0KI2RlZmluZSBUSU1fQ0NFUl9DQzROUCAgICAgICAgICAgICAgICAgICAgICBUSU1fQ0NFUl9DQzROUF9Nc2sgICAgICAgICAgICAgICAgIC8qITxDYXB0dXJlL0NvbXBhcmUgNCBDb21wbGVtZW50YXJ5IG91dHB1dCBQb2xhcml0eSAqLw0KDQovKioqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFRJTV9DTlQgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBUSU1fQ05UX0NOVF9Qb3MgICAgICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBUSU1fQ05UX0NOVF9Nc2sgICAgICAgICAgICAgICAgICAgICAoMHhGRkZGRkZGRlUgPDwgVElNX0NOVF9DTlRfUG9zKSAgIC8qITwgMHhGRkZGRkZGRiAqLw0KI2RlZmluZSBUSU1fQ05UX0NOVCAgICAgICAgICAgICAgICAgICAgICAgICBUSU1fQ05UX0NOVF9Nc2sgICAgICAgICAgICAgICAgICAgIC8qITxDb3VudGVyIFZhbHVlICovDQoNCi8qKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgVElNX1BTQyByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIFRJTV9QU0NfUFNDX1BvcyAgICAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFRJTV9QU0NfUFNDX01zayAgICAgICAgICAgICAgICAgICAgICgweEZGRkZVIDw8IFRJTV9QU0NfUFNDX1BvcykgICAgICAgLyohPCAweDAwMDBGRkZGICovDQojZGVmaW5lIFRJTV9QU0NfUFNDICAgICAgICAgICAgICAgICAgICAgICAgIFRJTV9QU0NfUFNDX01zayAgICAgICAgICAgICAgICAgICAgLyohPFByZXNjYWxlciBWYWx1ZSAqLw0KDQovKioqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFRJTV9BUlIgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBUSU1fQVJSX0FSUl9Qb3MgICAgICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBUSU1fQVJSX0FSUl9Nc2sgICAgICAgICAgICAgICAgICAgICAoMHhGRkZGRkZGRlUgPDwgVElNX0FSUl9BUlJfUG9zKSAgIC8qITwgMHhGRkZGRkZGRiAqLw0KI2RlZmluZSBUSU1fQVJSX0FSUiAgICAgICAgICAgICAgICAgICAgICAgICBUSU1fQVJSX0FSUl9Nc2sgICAgICAgICAgICAgICAgICAgIC8qITxhY3R1YWwgYXV0by1yZWxvYWQgVmFsdWUgKi8NCiAgICAgICAgICAgDQovKioqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFRJTV9DQ1IxIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBUSU1fQ0NSMV9DQ1IxX1BvcyAgICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBUSU1fQ0NSMV9DQ1IxX01zayAgICAgICAgICAgICAgICAgICAoMHhGRkZGVSA8PCBUSU1fQ0NSMV9DQ1IxX1BvcykgICAgIC8qITwgMHgwMDAwRkZGRiAqLw0KI2RlZmluZSBUSU1fQ0NSMV9DQ1IxICAgICAgICAgICAgICAgICAgICAgICBUSU1fQ0NSMV9DQ1IxX01zayAgICAgICAgICAgICAgICAgIC8qITxDYXB0dXJlL0NvbXBhcmUgMSBWYWx1ZSAqLw0KDQovKioqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFRJTV9DQ1IyIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBUSU1fQ0NSMl9DQ1IyX1BvcyAgICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBUSU1fQ0NSMl9DQ1IyX01zayAgICAgICAgICAgICAgICAgICAoMHhGRkZGVSA8PCBUSU1fQ0NSMl9DQ1IyX1BvcykgICAgIC8qITwgMHgwMDAwRkZGRiAqLw0KI2RlZmluZSBUSU1fQ0NSMl9DQ1IyICAgICAgICAgICAgICAgICAgICAgICBUSU1fQ0NSMl9DQ1IyX01zayAgICAgICAgICAgICAgICAgIC8qITxDYXB0dXJlL0NvbXBhcmUgMiBWYWx1ZSAqLw0KDQovKioqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFRJTV9DQ1IzIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBUSU1fQ0NSM19DQ1IzX1BvcyAgICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBUSU1fQ0NSM19DQ1IzX01zayAgICAgICAgICAgICAgICAgICAoMHhGRkZGVSA8PCBUSU1fQ0NSM19DQ1IzX1BvcykgICAgIC8qITwgMHgwMDAwRkZGRiAqLw0KI2RlZmluZSBUSU1fQ0NSM19DQ1IzICAgICAgICAgICAgICAgICAgICAgICBUSU1fQ0NSM19DQ1IzX01zayAgICAgICAgICAgICAgICAgIC8qITxDYXB0dXJlL0NvbXBhcmUgMyBWYWx1ZSAqLw0KDQovKioqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFRJTV9DQ1I0IHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBUSU1fQ0NSNF9DQ1I0X1BvcyAgICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBUSU1fQ0NSNF9DQ1I0X01zayAgICAgICAgICAgICAgICAgICAoMHhGRkZGVSA8PCBUSU1fQ0NSNF9DQ1I0X1BvcykgICAgIC8qITwgMHgwMDAwRkZGRiAqLw0KI2RlZmluZSBUSU1fQ0NSNF9DQ1I0ICAgICAgICAgICAgICAgICAgICAgICBUSU1fQ0NSNF9DQ1I0X01zayAgICAgICAgICAgICAgICAgIC8qITxDYXB0dXJlL0NvbXBhcmUgNCBWYWx1ZSAqLw0KDQovKioqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFRJTV9EQ1IgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBUSU1fRENSX0RCQV9Qb3MgICAgICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBUSU1fRENSX0RCQV9Nc2sgICAgICAgICAgICAgICAgICAgICAoMHgxRlUgPDwgVElNX0RDUl9EQkFfUG9zKSAgICAgICAgIC8qITwgMHgwMDAwMDAxRiAqLw0KI2RlZmluZSBUSU1fRENSX0RCQSAgICAgICAgICAgICAgICAgICAgICAgICBUSU1fRENSX0RCQV9Nc2sgICAgICAgICAgICAgICAgICAgIC8qITxEQkFbNDowXSBiaXRzIChETUEgQmFzZSBBZGRyZXNzKSAqLw0KI2RlZmluZSBUSU1fRENSX0RCQV8wICAgICAgICAgICAgICAgICAgICAgICAoMHgwMVUgPDwgVElNX0RDUl9EQkFfUG9zKSAgICAgICAgIC8qITwgMHgwMDAwMDAwMSAqLw0KI2RlZmluZSBUSU1fRENSX0RCQV8xICAgICAgICAgICAgICAgICAgICAgICAoMHgwMlUgPDwgVElNX0RDUl9EQkFfUG9zKSAgICAgICAgIC8qITwgMHgwMDAwMDAwMiAqLw0KI2RlZmluZSBUSU1fRENSX0RCQV8yICAgICAgICAgICAgICAgICAgICAgICAoMHgwNFUgPDwgVElNX0RDUl9EQkFfUG9zKSAgICAgICAgIC8qITwgMHgwMDAwMDAwNCAqLw0KI2RlZmluZSBUSU1fRENSX0RCQV8zICAgICAgICAgICAgICAgICAgICAgICAoMHgwOFUgPDwgVElNX0RDUl9EQkFfUG9zKSAgICAgICAgIC8qITwgMHgwMDAwMDAwOCAqLw0KI2RlZmluZSBUSU1fRENSX0RCQV80ICAgICAgICAgICAgICAgICAgICAgICAoMHgxMFUgPDwgVElNX0RDUl9EQkFfUG9zKSAgICAgICAgIC8qITwgMHgwMDAwMDAxMCAqLw0KDQojZGVmaW5lIFRJTV9EQ1JfREJMX1BvcyAgICAgICAgICAgICAgICAgICAgICg4VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFRJTV9EQ1JfREJMX01zayAgICAgICAgICAgICAgICAgICAgICgweDFGVSA8PCBUSU1fRENSX0RCTF9Qb3MpICAgICAgICAgLyohPCAweDAwMDAxRjAwICovDQojZGVmaW5lIFRJTV9EQ1JfREJMICAgICAgICAgICAgICAgICAgICAgICAgIFRJTV9EQ1JfREJMX01zayAgICAgICAgICAgICAgICAgICAgLyohPERCTFs0OjBdIGJpdHMgKERNQSBCdXJzdCBMZW5ndGgpICovDQojZGVmaW5lIFRJTV9EQ1JfREJMXzAgICAgICAgICAgICAgICAgICAgICAgICgweDAxVSA8PCBUSU1fRENSX0RCTF9Qb3MpICAgICAgICAgLyohPCAweDAwMDAwMTAwICovDQojZGVmaW5lIFRJTV9EQ1JfREJMXzEgICAgICAgICAgICAgICAgICAgICAgICgweDAyVSA8PCBUSU1fRENSX0RCTF9Qb3MpICAgICAgICAgLyohPCAweDAwMDAwMjAwICovDQojZGVmaW5lIFRJTV9EQ1JfREJMXzIgICAgICAgICAgICAgICAgICAgICAgICgweDA0VSA8PCBUSU1fRENSX0RCTF9Qb3MpICAgICAgICAgLyohPCAweDAwMDAwNDAwICovDQojZGVmaW5lIFRJTV9EQ1JfREJMXzMgICAgICAgICAgICAgICAgICAgICAgICgweDA4VSA8PCBUSU1fRENSX0RCTF9Qb3MpICAgICAgICAgLyohPCAweDAwMDAwODAwICovDQojZGVmaW5lIFRJTV9EQ1JfREJMXzQgICAgICAgICAgICAgICAgICAgICAgICgweDEwVSA8PCBUSU1fRENSX0RCTF9Qb3MpICAgICAgICAgLyohPCAweDAwMDAxMDAwICovDQoNCi8qKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgVElNX0RNQVIgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIFRJTV9ETUFSX0RNQUJfUG9zICAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFRJTV9ETUFSX0RNQUJfTXNrICAgICAgICAgICAgICAgICAgICgweEZGRkZVIDw8IFRJTV9ETUFSX0RNQUJfUG9zKSAgICAgLyohPCAweDAwMDBGRkZGICovDQojZGVmaW5lIFRJTV9ETUFSX0RNQUIgICAgICAgICAgICAgICAgICAgICAgIFRJTV9ETUFSX0RNQUJfTXNrICAgICAgICAgICAgICAgICAgLyohPERNQSByZWdpc3RlciBmb3IgYnVyc3QgYWNjZXNzZXMgKi8NCg0KLyoqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBUSU1fT1IgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgVElNX09SX1RJMVJNUF9Qb3MgICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVElNX09SX1RJMVJNUF9Nc2sgICAgICAgICAgICAgICAgICAgKDB4M1UgPDwgVElNX09SX1RJMVJNUF9Qb3MpICAgICAgICAvKiE8IDB4MDAwMDAwMDMgKi8NCiNkZWZpbmUgVElNX09SX1RJMVJNUCAgICAgICAgICAgICAgICAgICAgICAgVElNX09SX1RJMVJNUF9Nc2sgICAgICAgICAgICAgICAgICAvKiE8VEkxX1JNUFsxOjBdIGJpdHMgKFRJTSBJbnB1dCAxIHJlbWFwKSAqLw0KI2RlZmluZSBUSU1fT1JfVEkxUk1QXzAgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBUSU1fT1JfVEkxUk1QX1BvcykgICAgICAgIC8qITwgMHgwMDAwMDAwMSAqLw0KI2RlZmluZSBUSU1fT1JfVEkxUk1QXzEgICAgICAgICAgICAgICAgICAgICAoMHgyVSA8PCBUSU1fT1JfVEkxUk1QX1BvcykgICAgICAgIC8qITwgMHgwMDAwMDAwMiAqLw0KDQojZGVmaW5lIFRJTV9PUl9FVFJfUk1QX1BvcyAgICAgICAgICAgICAgICAgICgyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFRJTV9PUl9FVFJfUk1QX01zayAgICAgICAgICAgICAgICAgICgweDFVIDw8IFRJTV9PUl9FVFJfUk1QX1BvcykgICAgICAgLyohPCAweDAwMDAwMDA0ICovDQojZGVmaW5lIFRJTV9PUl9FVFJfUk1QICAgICAgICAgICAgICAgICAgICAgIFRJTV9PUl9FVFJfUk1QX01zayAgICAgICAgICAgICAgICAgLyohPEVUUl9STVAgYml0IChUSU0xMC8xMSBFVFIgcmVtYXApKi8NCiNkZWZpbmUgVElNX09SX1RJMV9STVBfUklfUG9zICAgICAgICAgICAgICAgKDNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVElNX09SX1RJMV9STVBfUklfTXNrICAgICAgICAgICAgICAgKDB4MVUgPDwgVElNX09SX1RJMV9STVBfUklfUG9zKSAgICAvKiE8IDB4MDAwMDAwMDggKi8NCiNkZWZpbmUgVElNX09SX1RJMV9STVBfUkkgICAgICAgICAgICAgICAgICAgVElNX09SX1RJMV9STVBfUklfTXNrICAgICAgICAgICAgICAvKiE8VEkxX1JNUF9SSSBiaXQgKFRJTTEwLzExIElucHV0IDEgcmVtYXAgZm9yIFJvdXRpbmcgaW50ZXJmYWNlKSAqLw0KDQovKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qLw0KI2RlZmluZSBUSU05X09SX0lUUjFfUk1QX1BvcyAgICAgICAgICAgICAgICAoMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBUSU05X09SX0lUUjFfUk1QX01zayAgICAgICAgICAgICAgICAoMHgxVSA8PCBUSU05X09SX0lUUjFfUk1QX1BvcykgICAgIC8qITwgMHgwMDAwMDAwNCAqLw0KI2RlZmluZSBUSU05X09SX0lUUjFfUk1QICAgICAgICAgICAgICAgICAgICBUSU05X09SX0lUUjFfUk1QX01zayAgICAgICAgICAgICAgIC8qITxJVFIxX1JNUCBiaXQgKFRJTTkgSW50ZXJuYWwgdHJpZ2dlciAxIHJlbWFwKSAqLw0KDQovKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qLw0KI2RlZmluZSBUSU0yX09SX0lUUjFfUk1QX1BvcyAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBUSU0yX09SX0lUUjFfUk1QX01zayAgICAgICAgICAgICAgICAoMHgxVSA8PCBUSU0yX09SX0lUUjFfUk1QX1BvcykgICAgIC8qITwgMHgwMDAwMDAwMSAqLw0KI2RlZmluZSBUSU0yX09SX0lUUjFfUk1QICAgICAgICAgICAgICAgICAgICBUSU0yX09SX0lUUjFfUk1QX01zayAgICAgICAgICAgICAgIC8qITxJVFIxX1JNUCBiaXQgKFRJTTIgSW50ZXJuYWwgdHJpZ2dlciAxIHJlbWFwKSAqLw0KDQovKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qLw0KI2RlZmluZSBUSU0zX09SX0lUUjJfUk1QX1BvcyAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBUSU0zX09SX0lUUjJfUk1QX01zayAgICAgICAgICAgICAgICAoMHgxVSA8PCBUSU0zX09SX0lUUjJfUk1QX1BvcykgICAgIC8qITwgMHgwMDAwMDAwMSAqLw0KI2RlZmluZSBUSU0zX09SX0lUUjJfUk1QICAgICAgICAgICAgICAgICAgICBUSU0zX09SX0lUUjJfUk1QX01zayAgICAgICAgICAgICAgIC8qITxJVFIyX1JNUCBiaXQgKFRJTTMgSW50ZXJuYWwgdHJpZ2dlciAyIHJlbWFwKSAqLw0KDQovKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qLw0KDQovKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLw0KLyogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8NCi8qICAgICAgVW5pdmVyc2FsIFN5bmNocm9ub3VzIEFzeW5jaHJvbm91cyBSZWNlaXZlciBUcmFuc21pdHRlciAoVVNBUlQpICAgICAgICovDQovKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLw0KLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8NCg0KLyoqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBVU0FSVF9TUiByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgVVNBUlRfU1JfUEVfUG9zICAgICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNBUlRfU1JfUEVfTXNrICAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVVNBUlRfU1JfUEVfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDAwMDEgKi8NCiNkZWZpbmUgVVNBUlRfU1JfUEUgICAgICAgICAgICAgICAgICAgICAgICAgVVNBUlRfU1JfUEVfTXNrICAgICAgICAgICAgICAgICAgICAvKiE8IFBhcml0eSBFcnJvciAqLw0KI2RlZmluZSBVU0FSVF9TUl9GRV9Qb3MgICAgICAgICAgICAgICAgICAgICAoMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0FSVF9TUl9GRV9Nc2sgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBVU0FSVF9TUl9GRV9Qb3MpICAgICAgICAgIC8qITwgMHgwMDAwMDAwMiAqLw0KI2RlZmluZSBVU0FSVF9TUl9GRSAgICAgICAgICAgICAgICAgICAgICAgICBVU0FSVF9TUl9GRV9Nc2sgICAgICAgICAgICAgICAgICAgIC8qITwgRnJhbWluZyBFcnJvciAqLw0KI2RlZmluZSBVU0FSVF9TUl9ORV9Qb3MgICAgICAgICAgICAgICAgICAgICAoMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0FSVF9TUl9ORV9Nc2sgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBVU0FSVF9TUl9ORV9Qb3MpICAgICAgICAgIC8qITwgMHgwMDAwMDAwNCAqLw0KI2RlZmluZSBVU0FSVF9TUl9ORSAgICAgICAgICAgICAgICAgICAgICAgICBVU0FSVF9TUl9ORV9Nc2sgICAgICAgICAgICAgICAgICAgIC8qITwgTm9pc2UgRXJyb3IgRmxhZyAqLw0KI2RlZmluZSBVU0FSVF9TUl9PUkVfUG9zICAgICAgICAgICAgICAgICAgICAoM1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0FSVF9TUl9PUkVfTXNrICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBVU0FSVF9TUl9PUkVfUG9zKSAgICAgICAgIC8qITwgMHgwMDAwMDAwOCAqLw0KI2RlZmluZSBVU0FSVF9TUl9PUkUgICAgICAgICAgICAgICAgICAgICAgICBVU0FSVF9TUl9PUkVfTXNrICAgICAgICAgICAgICAgICAgIC8qITwgT3ZlclJ1biBFcnJvciAqLw0KI2RlZmluZSBVU0FSVF9TUl9JRExFX1BvcyAgICAgICAgICAgICAgICAgICAoNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0FSVF9TUl9JRExFX01zayAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBVU0FSVF9TUl9JRExFX1BvcykgICAgICAgIC8qITwgMHgwMDAwMDAxMCAqLw0KI2RlZmluZSBVU0FSVF9TUl9JRExFICAgICAgICAgICAgICAgICAgICAgICBVU0FSVF9TUl9JRExFX01zayAgICAgICAgICAgICAgICAgIC8qITwgSURMRSBsaW5lIGRldGVjdGVkICovDQojZGVmaW5lIFVTQVJUX1NSX1JYTkVfUG9zICAgICAgICAgICAgICAgICAgICg1VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQVJUX1NSX1JYTkVfTXNrICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFVTQVJUX1NSX1JYTkVfUG9zKSAgICAgICAgLyohPCAweDAwMDAwMDIwICovDQojZGVmaW5lIFVTQVJUX1NSX1JYTkUgICAgICAgICAgICAgICAgICAgICAgIFVTQVJUX1NSX1JYTkVfTXNrICAgICAgICAgICAgICAgICAgLyohPCBSZWFkIERhdGEgUmVnaXN0ZXIgTm90IEVtcHR5ICovDQojZGVmaW5lIFVTQVJUX1NSX1RDX1BvcyAgICAgICAgICAgICAgICAgICAgICg2VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQVJUX1NSX1RDX01zayAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFVTQVJUX1NSX1RDX1BvcykgICAgICAgICAgLyohPCAweDAwMDAwMDQwICovDQojZGVmaW5lIFVTQVJUX1NSX1RDICAgICAgICAgICAgICAgICAgICAgICAgIFVTQVJUX1NSX1RDX01zayAgICAgICAgICAgICAgICAgICAgLyohPCBUcmFuc21pc3Npb24gQ29tcGxldGUgKi8NCiNkZWZpbmUgVVNBUlRfU1JfVFhFX1BvcyAgICAgICAgICAgICAgICAgICAgKDdVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNBUlRfU1JfVFhFX01zayAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVVNBUlRfU1JfVFhFX1BvcykgICAgICAgICAvKiE8IDB4MDAwMDAwODAgKi8NCiNkZWZpbmUgVVNBUlRfU1JfVFhFICAgICAgICAgICAgICAgICAgICAgICAgVVNBUlRfU1JfVFhFX01zayAgICAgICAgICAgICAgICAgICAvKiE8IFRyYW5zbWl0IERhdGEgUmVnaXN0ZXIgRW1wdHkgKi8NCiNkZWZpbmUgVVNBUlRfU1JfTEJEX1BvcyAgICAgICAgICAgICAgICAgICAgKDhVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNBUlRfU1JfTEJEX01zayAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVVNBUlRfU1JfTEJEX1BvcykgICAgICAgICAvKiE8IDB4MDAwMDAxMDAgKi8NCiNkZWZpbmUgVVNBUlRfU1JfTEJEICAgICAgICAgICAgICAgICAgICAgICAgVVNBUlRfU1JfTEJEX01zayAgICAgICAgICAgICAgICAgICAvKiE8IExJTiBCcmVhayBEZXRlY3Rpb24gRmxhZyAqLw0KI2RlZmluZSBVU0FSVF9TUl9DVFNfUG9zICAgICAgICAgICAgICAgICAgICAoOVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0FSVF9TUl9DVFNfTXNrICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBVU0FSVF9TUl9DVFNfUG9zKSAgICAgICAgIC8qITwgMHgwMDAwMDIwMCAqLw0KI2RlZmluZSBVU0FSVF9TUl9DVFMgICAgICAgICAgICAgICAgICAgICAgICBVU0FSVF9TUl9DVFNfTXNrICAgICAgICAgICAgICAgICAgIC8qITwgQ1RTIEZsYWcgKi8NCg0KLyoqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBVU0FSVF9EUiByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgVVNBUlRfRFJfRFJfUG9zICAgICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNBUlRfRFJfRFJfTXNrICAgICAgICAgICAgICAgICAgICAgKDB4MUZGVSA8PCBVU0FSVF9EUl9EUl9Qb3MpICAgICAgICAvKiE8IDB4MDAwMDAxRkYgKi8NCiNkZWZpbmUgVVNBUlRfRFJfRFIgICAgICAgICAgICAgICAgICAgICAgICAgVVNBUlRfRFJfRFJfTXNrICAgICAgICAgICAgICAgICAgICAvKiE8IERhdGEgdmFsdWUgKi8NCg0KLyoqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFVTQVJUX0JSUiByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgVVNBUlRfQlJSX0RJVl9GUkFDVElPTl9Qb3MgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNBUlRfQlJSX0RJVl9GUkFDVElPTl9Nc2sgICAgICAgICAgKDB4RlUgPDwgVVNBUlRfQlJSX0RJVl9GUkFDVElPTl9Qb3MpIC8qITwgMHgwMDAwMDAwRiAqLw0KI2RlZmluZSBVU0FSVF9CUlJfRElWX0ZSQUNUSU9OICAgICAgICAgICAgICBVU0FSVF9CUlJfRElWX0ZSQUNUSU9OX01zayAgICAgICAgIC8qITwgRnJhY3Rpb24gb2YgVVNBUlRESVYgKi8NCiNkZWZpbmUgVVNBUlRfQlJSX0RJVl9NQU5USVNTQV9Qb3MgICAgICAgICAgKDRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNBUlRfQlJSX0RJVl9NQU5USVNTQV9Nc2sgICAgICAgICAgKDB4RkZGVSA8PCBVU0FSVF9CUlJfRElWX01BTlRJU1NBX1BvcykgLyohPCAweDAwMDBGRkYwICovDQojZGVmaW5lIFVTQVJUX0JSUl9ESVZfTUFOVElTU0EgICAgICAgICAgICAgIFVTQVJUX0JSUl9ESVZfTUFOVElTU0FfTXNrICAgICAgICAgLyohPCBNYW50aXNzYSBvZiBVU0FSVERJViAqLw0KDQovKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgVVNBUlRfQ1IxIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBVU0FSVF9DUjFfU0JLX1BvcyAgICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0FSVF9DUjFfU0JLX01zayAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBVU0FSVF9DUjFfU0JLX1BvcykgICAgICAgIC8qITwgMHgwMDAwMDAwMSAqLw0KI2RlZmluZSBVU0FSVF9DUjFfU0JLICAgICAgICAgICAgICAgICAgICAgICBVU0FSVF9DUjFfU0JLX01zayAgICAgICAgICAgICAgICAgIC8qITwgU2VuZCBCcmVhayAqLw0KI2RlZmluZSBVU0FSVF9DUjFfUldVX1BvcyAgICAgICAgICAgICAgICAgICAoMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0FSVF9DUjFfUldVX01zayAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBVU0FSVF9DUjFfUldVX1BvcykgICAgICAgIC8qITwgMHgwMDAwMDAwMiAqLw0KI2RlZmluZSBVU0FSVF9DUjFfUldVICAgICAgICAgICAgICAgICAgICAgICBVU0FSVF9DUjFfUldVX01zayAgICAgICAgICAgICAgICAgIC8qITwgUmVjZWl2ZXIgd2FrZXVwICovDQojZGVmaW5lIFVTQVJUX0NSMV9SRV9Qb3MgICAgICAgICAgICAgICAgICAgICgyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQVJUX0NSMV9SRV9Nc2sgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFVTQVJUX0NSMV9SRV9Qb3MpICAgICAgICAgLyohPCAweDAwMDAwMDA0ICovDQojZGVmaW5lIFVTQVJUX0NSMV9SRSAgICAgICAgICAgICAgICAgICAgICAgIFVTQVJUX0NSMV9SRV9Nc2sgICAgICAgICAgICAgICAgICAgLyohPCBSZWNlaXZlciBFbmFibGUgKi8NCiNkZWZpbmUgVVNBUlRfQ1IxX1RFX1BvcyAgICAgICAgICAgICAgICAgICAgKDNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNBUlRfQ1IxX1RFX01zayAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVVNBUlRfQ1IxX1RFX1BvcykgICAgICAgICAvKiE8IDB4MDAwMDAwMDggKi8NCiNkZWZpbmUgVVNBUlRfQ1IxX1RFICAgICAgICAgICAgICAgICAgICAgICAgVVNBUlRfQ1IxX1RFX01zayAgICAgICAgICAgICAgICAgICAvKiE8IFRyYW5zbWl0dGVyIEVuYWJsZSAqLw0KI2RlZmluZSBVU0FSVF9DUjFfSURMRUlFX1BvcyAgICAgICAgICAgICAgICAoNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0FSVF9DUjFfSURMRUlFX01zayAgICAgICAgICAgICAgICAoMHgxVSA8PCBVU0FSVF9DUjFfSURMRUlFX1BvcykgICAgIC8qITwgMHgwMDAwMDAxMCAqLw0KI2RlZmluZSBVU0FSVF9DUjFfSURMRUlFICAgICAgICAgICAgICAgICAgICBVU0FSVF9DUjFfSURMRUlFX01zayAgICAgICAgICAgICAgIC8qITwgSURMRSBJbnRlcnJ1cHQgRW5hYmxlICovDQojZGVmaW5lIFVTQVJUX0NSMV9SWE5FSUVfUG9zICAgICAgICAgICAgICAgICg1VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQVJUX0NSMV9SWE5FSUVfTXNrICAgICAgICAgICAgICAgICgweDFVIDw8IFVTQVJUX0NSMV9SWE5FSUVfUG9zKSAgICAgLyohPCAweDAwMDAwMDIwICovDQojZGVmaW5lIFVTQVJUX0NSMV9SWE5FSUUgICAgICAgICAgICAgICAgICAgIFVTQVJUX0NSMV9SWE5FSUVfTXNrICAgICAgICAgICAgICAgLyohPCBSWE5FIEludGVycnVwdCBFbmFibGUgKi8NCiNkZWZpbmUgVVNBUlRfQ1IxX1RDSUVfUG9zICAgICAgICAgICAgICAgICAgKDZVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNBUlRfQ1IxX1RDSUVfTXNrICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVVNBUlRfQ1IxX1RDSUVfUG9zKSAgICAgICAvKiE8IDB4MDAwMDAwNDAgKi8NCiNkZWZpbmUgVVNBUlRfQ1IxX1RDSUUgICAgICAgICAgICAgICAgICAgICAgVVNBUlRfQ1IxX1RDSUVfTXNrICAgICAgICAgICAgICAgICAvKiE8IFRyYW5zbWlzc2lvbiBDb21wbGV0ZSBJbnRlcnJ1cHQgRW5hYmxlICovDQojZGVmaW5lIFVTQVJUX0NSMV9UWEVJRV9Qb3MgICAgICAgICAgICAgICAgICg3VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQVJUX0NSMV9UWEVJRV9Nc2sgICAgICAgICAgICAgICAgICgweDFVIDw8IFVTQVJUX0NSMV9UWEVJRV9Qb3MpICAgICAgLyohPCAweDAwMDAwMDgwICovDQojZGVmaW5lIFVTQVJUX0NSMV9UWEVJRSAgICAgICAgICAgICAgICAgICAgIFVTQVJUX0NSMV9UWEVJRV9Nc2sgICAgICAgICAgICAgICAgLyohPCBQRSBJbnRlcnJ1cHQgRW5hYmxlICovDQojZGVmaW5lIFVTQVJUX0NSMV9QRUlFX1BvcyAgICAgICAgICAgICAgICAgICg4VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQVJUX0NSMV9QRUlFX01zayAgICAgICAgICAgICAgICAgICgweDFVIDw8IFVTQVJUX0NSMV9QRUlFX1BvcykgICAgICAgLyohPCAweDAwMDAwMTAwICovDQojZGVmaW5lIFVTQVJUX0NSMV9QRUlFICAgICAgICAgICAgICAgICAgICAgIFVTQVJUX0NSMV9QRUlFX01zayAgICAgICAgICAgICAgICAgLyohPCBQRSBJbnRlcnJ1cHQgRW5hYmxlICovDQojZGVmaW5lIFVTQVJUX0NSMV9QU19Qb3MgICAgICAgICAgICAgICAgICAgICg5VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQVJUX0NSMV9QU19Nc2sgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFVTQVJUX0NSMV9QU19Qb3MpICAgICAgICAgLyohPCAweDAwMDAwMjAwICovDQojZGVmaW5lIFVTQVJUX0NSMV9QUyAgICAgICAgICAgICAgICAgICAgICAgIFVTQVJUX0NSMV9QU19Nc2sgICAgICAgICAgICAgICAgICAgLyohPCBQYXJpdHkgU2VsZWN0aW9uICovDQojZGVmaW5lIFVTQVJUX0NSMV9QQ0VfUG9zICAgICAgICAgICAgICAgICAgICgxMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQVJUX0NSMV9QQ0VfTXNrICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFVTQVJUX0NSMV9QQ0VfUG9zKSAgICAgICAgLyohPCAweDAwMDAwNDAwICovDQojZGVmaW5lIFVTQVJUX0NSMV9QQ0UgICAgICAgICAgICAgICAgICAgICAgIFVTQVJUX0NSMV9QQ0VfTXNrICAgICAgICAgICAgICAgICAgLyohPCBQYXJpdHkgQ29udHJvbCBFbmFibGUgKi8NCiNkZWZpbmUgVVNBUlRfQ1IxX1dBS0VfUG9zICAgICAgICAgICAgICAgICAgKDExVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNBUlRfQ1IxX1dBS0VfTXNrICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVVNBUlRfQ1IxX1dBS0VfUG9zKSAgICAgICAvKiE8IDB4MDAwMDA4MDAgKi8NCiNkZWZpbmUgVVNBUlRfQ1IxX1dBS0UgICAgICAgICAgICAgICAgICAgICAgVVNBUlRfQ1IxX1dBS0VfTXNrICAgICAgICAgICAgICAgICAvKiE8IFdha2V1cCBtZXRob2QgKi8NCiNkZWZpbmUgVVNBUlRfQ1IxX01fUG9zICAgICAgICAgICAgICAgICAgICAgKDEyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNBUlRfQ1IxX01fTXNrICAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVVNBUlRfQ1IxX01fUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDEwMDAgKi8NCiNkZWZpbmUgVVNBUlRfQ1IxX00gICAgICAgICAgICAgICAgICAgICAgICAgVVNBUlRfQ1IxX01fTXNrICAgICAgICAgICAgICAgICAgICAvKiE8IFdvcmQgbGVuZ3RoICovDQojZGVmaW5lIFVTQVJUX0NSMV9VRV9Qb3MgICAgICAgICAgICAgICAgICAgICgxM1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQVJUX0NSMV9VRV9Nc2sgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFVTQVJUX0NSMV9VRV9Qb3MpICAgICAgICAgLyohPCAweDAwMDAyMDAwICovDQojZGVmaW5lIFVTQVJUX0NSMV9VRSAgICAgICAgICAgICAgICAgICAgICAgIFVTQVJUX0NSMV9VRV9Nc2sgICAgICAgICAgICAgICAgICAgLyohPCBVU0FSVCBFbmFibGUgKi8NCiNkZWZpbmUgVVNBUlRfQ1IxX09WRVI4X1BvcyAgICAgICAgICAgICAgICAgKDE1VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNBUlRfQ1IxX09WRVI4X01zayAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVVNBUlRfQ1IxX09WRVI4X1BvcykgICAgICAvKiE8IDB4MDAwMDgwMDAgKi8NCiNkZWZpbmUgVVNBUlRfQ1IxX09WRVI4ICAgICAgICAgICAgICAgICAgICAgVVNBUlRfQ1IxX09WRVI4X01zayAgICAgICAgICAgICAgICAvKiE8IE92ZXJzYW1wbGluZyBieSA4LWJpdCBtb2RlICovDQoNCi8qKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBVU0FSVF9DUjIgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIFVTQVJUX0NSMl9BRERfUG9zICAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQVJUX0NSMl9BRERfTXNrICAgICAgICAgICAgICAgICAgICgweEZVIDw8IFVTQVJUX0NSMl9BRERfUG9zKSAgICAgICAgLyohPCAweDAwMDAwMDBGICovDQojZGVmaW5lIFVTQVJUX0NSMl9BREQgICAgICAgICAgICAgICAgICAgICAgIFVTQVJUX0NSMl9BRERfTXNrICAgICAgICAgICAgICAgICAgLyohPCBBZGRyZXNzIG9mIHRoZSBVU0FSVCBub2RlICovDQojZGVmaW5lIFVTQVJUX0NSMl9MQkRMX1BvcyAgICAgICAgICAgICAgICAgICg1VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQVJUX0NSMl9MQkRMX01zayAgICAgICAgICAgICAgICAgICgweDFVIDw8IFVTQVJUX0NSMl9MQkRMX1BvcykgICAgICAgLyohPCAweDAwMDAwMDIwICovDQojZGVmaW5lIFVTQVJUX0NSMl9MQkRMICAgICAgICAgICAgICAgICAgICAgIFVTQVJUX0NSMl9MQkRMX01zayAgICAgICAgICAgICAgICAgLyohPCBMSU4gQnJlYWsgRGV0ZWN0aW9uIExlbmd0aCAqLw0KI2RlZmluZSBVU0FSVF9DUjJfTEJESUVfUG9zICAgICAgICAgICAgICAgICAoNlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0FSVF9DUjJfTEJESUVfTXNrICAgICAgICAgICAgICAgICAoMHgxVSA8PCBVU0FSVF9DUjJfTEJESUVfUG9zKSAgICAgIC8qITwgMHgwMDAwMDA0MCAqLw0KI2RlZmluZSBVU0FSVF9DUjJfTEJESUUgICAgICAgICAgICAgICAgICAgICBVU0FSVF9DUjJfTEJESUVfTXNrICAgICAgICAgICAgICAgIC8qITwgTElOIEJyZWFrIERldGVjdGlvbiBJbnRlcnJ1cHQgRW5hYmxlICovDQojZGVmaW5lIFVTQVJUX0NSMl9MQkNMX1BvcyAgICAgICAgICAgICAgICAgICg4VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQVJUX0NSMl9MQkNMX01zayAgICAgICAgICAgICAgICAgICgweDFVIDw8IFVTQVJUX0NSMl9MQkNMX1BvcykgICAgICAgLyohPCAweDAwMDAwMTAwICovDQojZGVmaW5lIFVTQVJUX0NSMl9MQkNMICAgICAgICAgICAgICAgICAgICAgIFVTQVJUX0NSMl9MQkNMX01zayAgICAgICAgICAgICAgICAgLyohPCBMYXN0IEJpdCBDbG9jayBwdWxzZSAqLw0KI2RlZmluZSBVU0FSVF9DUjJfQ1BIQV9Qb3MgICAgICAgICAgICAgICAgICAoOVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0FSVF9DUjJfQ1BIQV9Nc2sgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBVU0FSVF9DUjJfQ1BIQV9Qb3MpICAgICAgIC8qITwgMHgwMDAwMDIwMCAqLw0KI2RlZmluZSBVU0FSVF9DUjJfQ1BIQSAgICAgICAgICAgICAgICAgICAgICBVU0FSVF9DUjJfQ1BIQV9Nc2sgICAgICAgICAgICAgICAgIC8qITwgQ2xvY2sgUGhhc2UgKi8NCiNkZWZpbmUgVVNBUlRfQ1IyX0NQT0xfUG9zICAgICAgICAgICAgICAgICAgKDEwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNBUlRfQ1IyX0NQT0xfTXNrICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVVNBUlRfQ1IyX0NQT0xfUG9zKSAgICAgICAvKiE8IDB4MDAwMDA0MDAgKi8NCiNkZWZpbmUgVVNBUlRfQ1IyX0NQT0wgICAgICAgICAgICAgICAgICAgICAgVVNBUlRfQ1IyX0NQT0xfTXNrICAgICAgICAgICAgICAgICAvKiE8IENsb2NrIFBvbGFyaXR5ICovDQojZGVmaW5lIFVTQVJUX0NSMl9DTEtFTl9Qb3MgICAgICAgICAgICAgICAgICgxMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQVJUX0NSMl9DTEtFTl9Nc2sgICAgICAgICAgICAgICAgICgweDFVIDw8IFVTQVJUX0NSMl9DTEtFTl9Qb3MpICAgICAgLyohPCAweDAwMDAwODAwICovDQojZGVmaW5lIFVTQVJUX0NSMl9DTEtFTiAgICAgICAgICAgICAgICAgICAgIFVTQVJUX0NSMl9DTEtFTl9Nc2sgICAgICAgICAgICAgICAgLyohPCBDbG9jayBFbmFibGUgKi8NCg0KI2RlZmluZSBVU0FSVF9DUjJfU1RPUF9Qb3MgICAgICAgICAgICAgICAgICAoMTJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0FSVF9DUjJfU1RPUF9Nc2sgICAgICAgICAgICAgICAgICAoMHgzVSA8PCBVU0FSVF9DUjJfU1RPUF9Qb3MpICAgICAgIC8qITwgMHgwMDAwMzAwMCAqLw0KI2RlZmluZSBVU0FSVF9DUjJfU1RPUCAgICAgICAgICAgICAgICAgICAgICBVU0FSVF9DUjJfU1RPUF9Nc2sgICAgICAgICAgICAgICAgIC8qITwgU1RPUFsxOjBdIGJpdHMgKFNUT1AgYml0cykgKi8NCiNkZWZpbmUgVVNBUlRfQ1IyX1NUT1BfMCAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVVNBUlRfQ1IyX1NUT1BfUG9zKSAgICAgICAvKiE8IDB4MDAwMDEwMDAgKi8NCiNkZWZpbmUgVVNBUlRfQ1IyX1NUT1BfMSAgICAgICAgICAgICAgICAgICAgKDB4MlUgPDwgVVNBUlRfQ1IyX1NUT1BfUG9zKSAgICAgICAvKiE8IDB4MDAwMDIwMDAgKi8NCg0KI2RlZmluZSBVU0FSVF9DUjJfTElORU5fUG9zICAgICAgICAgICAgICAgICAoMTRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0FSVF9DUjJfTElORU5fTXNrICAgICAgICAgICAgICAgICAoMHgxVSA8PCBVU0FSVF9DUjJfTElORU5fUG9zKSAgICAgIC8qITwgMHgwMDAwNDAwMCAqLw0KI2RlZmluZSBVU0FSVF9DUjJfTElORU4gICAgICAgICAgICAgICAgICAgICBVU0FSVF9DUjJfTElORU5fTXNrICAgICAgICAgICAgICAgIC8qITwgTElOIG1vZGUgZW5hYmxlICovDQoNCi8qKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBVU0FSVF9DUjMgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIFVTQVJUX0NSM19FSUVfUG9zICAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQVJUX0NSM19FSUVfTXNrICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFVTQVJUX0NSM19FSUVfUG9zKSAgICAgICAgLyohPCAweDAwMDAwMDAxICovDQojZGVmaW5lIFVTQVJUX0NSM19FSUUgICAgICAgICAgICAgICAgICAgICAgIFVTQVJUX0NSM19FSUVfTXNrICAgICAgICAgICAgICAgICAgLyohPCBFcnJvciBJbnRlcnJ1cHQgRW5hYmxlICovDQojZGVmaW5lIFVTQVJUX0NSM19JUkVOX1BvcyAgICAgICAgICAgICAgICAgICgxVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQVJUX0NSM19JUkVOX01zayAgICAgICAgICAgICAgICAgICgweDFVIDw8IFVTQVJUX0NSM19JUkVOX1BvcykgICAgICAgLyohPCAweDAwMDAwMDAyICovDQojZGVmaW5lIFVTQVJUX0NSM19JUkVOICAgICAgICAgICAgICAgICAgICAgIFVTQVJUX0NSM19JUkVOX01zayAgICAgICAgICAgICAgICAgLyohPCBJckRBIG1vZGUgRW5hYmxlICovDQojZGVmaW5lIFVTQVJUX0NSM19JUkxQX1BvcyAgICAgICAgICAgICAgICAgICgyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQVJUX0NSM19JUkxQX01zayAgICAgICAgICAgICAgICAgICgweDFVIDw8IFVTQVJUX0NSM19JUkxQX1BvcykgICAgICAgLyohPCAweDAwMDAwMDA0ICovDQojZGVmaW5lIFVTQVJUX0NSM19JUkxQICAgICAgICAgICAgICAgICAgICAgIFVTQVJUX0NSM19JUkxQX01zayAgICAgICAgICAgICAgICAgLyohPCBJckRBIExvdy1Qb3dlciAqLw0KI2RlZmluZSBVU0FSVF9DUjNfSERTRUxfUG9zICAgICAgICAgICAgICAgICAoM1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0FSVF9DUjNfSERTRUxfTXNrICAgICAgICAgICAgICAgICAoMHgxVSA8PCBVU0FSVF9DUjNfSERTRUxfUG9zKSAgICAgIC8qITwgMHgwMDAwMDAwOCAqLw0KI2RlZmluZSBVU0FSVF9DUjNfSERTRUwgICAgICAgICAgICAgICAgICAgICBVU0FSVF9DUjNfSERTRUxfTXNrICAgICAgICAgICAgICAgIC8qITwgSGFsZi1EdXBsZXggU2VsZWN0aW9uICovDQojZGVmaW5lIFVTQVJUX0NSM19OQUNLX1BvcyAgICAgICAgICAgICAgICAgICg0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQVJUX0NSM19OQUNLX01zayAgICAgICAgICAgICAgICAgICgweDFVIDw8IFVTQVJUX0NSM19OQUNLX1BvcykgICAgICAgLyohPCAweDAwMDAwMDEwICovDQojZGVmaW5lIFVTQVJUX0NSM19OQUNLICAgICAgICAgICAgICAgICAgICAgIFVTQVJUX0NSM19OQUNLX01zayAgICAgICAgICAgICAgICAgLyohPCBTbWFydGNhcmQgTkFDSyBlbmFibGUgKi8NCiNkZWZpbmUgVVNBUlRfQ1IzX1NDRU5fUG9zICAgICAgICAgICAgICAgICAgKDVVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNBUlRfQ1IzX1NDRU5fTXNrICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVVNBUlRfQ1IzX1NDRU5fUG9zKSAgICAgICAvKiE8IDB4MDAwMDAwMjAgKi8NCiNkZWZpbmUgVVNBUlRfQ1IzX1NDRU4gICAgICAgICAgICAgICAgICAgICAgVVNBUlRfQ1IzX1NDRU5fTXNrICAgICAgICAgICAgICAgICAvKiE8IFNtYXJ0Y2FyZCBtb2RlIGVuYWJsZSAqLw0KI2RlZmluZSBVU0FSVF9DUjNfRE1BUl9Qb3MgICAgICAgICAgICAgICAgICAoNlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0FSVF9DUjNfRE1BUl9Nc2sgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBVU0FSVF9DUjNfRE1BUl9Qb3MpICAgICAgIC8qITwgMHgwMDAwMDA0MCAqLw0KI2RlZmluZSBVU0FSVF9DUjNfRE1BUiAgICAgICAgICAgICAgICAgICAgICBVU0FSVF9DUjNfRE1BUl9Nc2sgICAgICAgICAgICAgICAgIC8qITwgRE1BIEVuYWJsZSBSZWNlaXZlciAqLw0KI2RlZmluZSBVU0FSVF9DUjNfRE1BVF9Qb3MgICAgICAgICAgICAgICAgICAoN1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0FSVF9DUjNfRE1BVF9Nc2sgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBVU0FSVF9DUjNfRE1BVF9Qb3MpICAgICAgIC8qITwgMHgwMDAwMDA4MCAqLw0KI2RlZmluZSBVU0FSVF9DUjNfRE1BVCAgICAgICAgICAgICAgICAgICAgICBVU0FSVF9DUjNfRE1BVF9Nc2sgICAgICAgICAgICAgICAgIC8qITwgRE1BIEVuYWJsZSBUcmFuc21pdHRlciAqLw0KI2RlZmluZSBVU0FSVF9DUjNfUlRTRV9Qb3MgICAgICAgICAgICAgICAgICAoOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0FSVF9DUjNfUlRTRV9Nc2sgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBVU0FSVF9DUjNfUlRTRV9Qb3MpICAgICAgIC8qITwgMHgwMDAwMDEwMCAqLw0KI2RlZmluZSBVU0FSVF9DUjNfUlRTRSAgICAgICAgICAgICAgICAgICAgICBVU0FSVF9DUjNfUlRTRV9Nc2sgICAgICAgICAgICAgICAgIC8qITwgUlRTIEVuYWJsZSAqLw0KI2RlZmluZSBVU0FSVF9DUjNfQ1RTRV9Qb3MgICAgICAgICAgICAgICAgICAoOVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0FSVF9DUjNfQ1RTRV9Nc2sgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBVU0FSVF9DUjNfQ1RTRV9Qb3MpICAgICAgIC8qITwgMHgwMDAwMDIwMCAqLw0KI2RlZmluZSBVU0FSVF9DUjNfQ1RTRSAgICAgICAgICAgICAgICAgICAgICBVU0FSVF9DUjNfQ1RTRV9Nc2sgICAgICAgICAgICAgICAgIC8qITwgQ1RTIEVuYWJsZSAqLw0KI2RlZmluZSBVU0FSVF9DUjNfQ1RTSUVfUG9zICAgICAgICAgICAgICAgICAoMTBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0FSVF9DUjNfQ1RTSUVfTXNrICAgICAgICAgICAgICAgICAoMHgxVSA8PCBVU0FSVF9DUjNfQ1RTSUVfUG9zKSAgICAgIC8qITwgMHgwMDAwMDQwMCAqLw0KI2RlZmluZSBVU0FSVF9DUjNfQ1RTSUUgICAgICAgICAgICAgICAgICAgICBVU0FSVF9DUjNfQ1RTSUVfTXNrICAgICAgICAgICAgICAgIC8qITwgQ1RTIEludGVycnVwdCBFbmFibGUgKi8NCiNkZWZpbmUgVVNBUlRfQ1IzX09ORUJJVF9Qb3MgICAgICAgICAgICAgICAgKDExVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNBUlRfQ1IzX09ORUJJVF9Nc2sgICAgICAgICAgICAgICAgKDB4MVUgPDwgVVNBUlRfQ1IzX09ORUJJVF9Qb3MpICAgICAvKiE8IDB4MDAwMDA4MDAgKi8NCiNkZWZpbmUgVVNBUlRfQ1IzX09ORUJJVCAgICAgICAgICAgICAgICAgICAgVVNBUlRfQ1IzX09ORUJJVF9Nc2sgICAgICAgICAgICAgICAvKiE8IE9uZSBzYW1wbGUgYml0IG1ldGhvZCBlbmFibGUgKi8NCg0KLyoqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFVTQVJUX0dUUFIgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgVVNBUlRfR1RQUl9QU0NfUG9zICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNBUlRfR1RQUl9QU0NfTXNrICAgICAgICAgICAgICAgICAgKDB4RkZVIDw8IFVTQVJUX0dUUFJfUFNDX1BvcykgICAgICAvKiE8IDB4MDAwMDAwRkYgKi8NCiNkZWZpbmUgVVNBUlRfR1RQUl9QU0MgICAgICAgICAgICAgICAgICAgICAgVVNBUlRfR1RQUl9QU0NfTXNrICAgICAgICAgICAgICAgICAvKiE8IFBTQ1s3OjBdIGJpdHMgKFByZXNjYWxlciB2YWx1ZSkgKi8NCiNkZWZpbmUgVVNBUlRfR1RQUl9QU0NfMCAgICAgICAgICAgICAgICAgICAgKDB4MDFVIDw8IFVTQVJUX0dUUFJfUFNDX1BvcykgICAgICAvKiE8IDB4MDAwMDAwMDEgKi8NCiNkZWZpbmUgVVNBUlRfR1RQUl9QU0NfMSAgICAgICAgICAgICAgICAgICAgKDB4MDJVIDw8IFVTQVJUX0dUUFJfUFNDX1BvcykgICAgICAvKiE8IDB4MDAwMDAwMDIgKi8NCiNkZWZpbmUgVVNBUlRfR1RQUl9QU0NfMiAgICAgICAgICAgICAgICAgICAgKDB4MDRVIDw8IFVTQVJUX0dUUFJfUFNDX1BvcykgICAgICAvKiE8IDB4MDAwMDAwMDQgKi8NCiNkZWZpbmUgVVNBUlRfR1RQUl9QU0NfMyAgICAgICAgICAgICAgICAgICAgKDB4MDhVIDw8IFVTQVJUX0dUUFJfUFNDX1BvcykgICAgICAvKiE8IDB4MDAwMDAwMDggKi8NCiNkZWZpbmUgVVNBUlRfR1RQUl9QU0NfNCAgICAgICAgICAgICAgICAgICAgKDB4MTBVIDw8IFVTQVJUX0dUUFJfUFNDX1BvcykgICAgICAvKiE8IDB4MDAwMDAwMTAgKi8NCiNkZWZpbmUgVVNBUlRfR1RQUl9QU0NfNSAgICAgICAgICAgICAgICAgICAgKDB4MjBVIDw8IFVTQVJUX0dUUFJfUFNDX1BvcykgICAgICAvKiE8IDB4MDAwMDAwMjAgKi8NCiNkZWZpbmUgVVNBUlRfR1RQUl9QU0NfNiAgICAgICAgICAgICAgICAgICAgKDB4NDBVIDw8IFVTQVJUX0dUUFJfUFNDX1BvcykgICAgICAvKiE8IDB4MDAwMDAwNDAgKi8NCiNkZWZpbmUgVVNBUlRfR1RQUl9QU0NfNyAgICAgICAgICAgICAgICAgICAgKDB4ODBVIDw8IFVTQVJUX0dUUFJfUFNDX1BvcykgICAgICAvKiE8IDB4MDAwMDAwODAgKi8NCg0KI2RlZmluZSBVU0FSVF9HVFBSX0dUX1BvcyAgICAgICAgICAgICAgICAgICAoOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0FSVF9HVFBSX0dUX01zayAgICAgICAgICAgICAgICAgICAoMHhGRlUgPDwgVVNBUlRfR1RQUl9HVF9Qb3MpICAgICAgIC8qITwgMHgwMDAwRkYwMCAqLw0KI2RlZmluZSBVU0FSVF9HVFBSX0dUICAgICAgICAgICAgICAgICAgICAgICBVU0FSVF9HVFBSX0dUX01zayAgICAgICAgICAgICAgICAgIC8qITwgR3VhcmQgdGltZSB2YWx1ZSAqLw0KDQovKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLw0KLyogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8NCi8qICAgICAgICAgICAgICAgICAgICAgVW5pdmVyc2FsIFNlcmlhbCBCdXMgKFVTQikgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovDQovKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLw0KLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8NCg0KLyohPEVuZHBvaW50LXNwZWNpZmljIHJlZ2lzdGVycyAqLw0KDQojZGVmaW5lICBVU0JfRVAwUiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFVTQl9CQVNFICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBlbmRwb2ludCAwIHJlZ2lzdGVyIGFkZHJlc3MgKi8NCiNkZWZpbmUgIFVTQl9FUDFSICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoVVNCX0JBU0UgKyAweDAwMDAwMDA0VSkgICAgICAgICAvKiE8IGVuZHBvaW50IDEgcmVnaXN0ZXIgYWRkcmVzcyAqLw0KI2RlZmluZSAgVVNCX0VQMlIgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChVU0JfQkFTRSArIDB4MDAwMDAwMDhVKSAgICAgICAgIC8qITwgZW5kcG9pbnQgMiByZWdpc3RlciBhZGRyZXNzICovDQojZGVmaW5lICBVU0JfRVAzUiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKFVTQl9CQVNFICsgMHgwMDAwMDAwQ1UpICAgICAgICAgLyohPCBlbmRwb2ludCAzIHJlZ2lzdGVyIGFkZHJlc3MgKi8NCiNkZWZpbmUgIFVTQl9FUDRSICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoVVNCX0JBU0UgKyAweDAwMDAwMDEwVSkgICAgICAgICAvKiE8IGVuZHBvaW50IDQgcmVnaXN0ZXIgYWRkcmVzcyAqLw0KI2RlZmluZSAgVVNCX0VQNVIgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChVU0JfQkFTRSArIDB4MDAwMDAwMTRVKSAgICAgICAgIC8qITwgZW5kcG9pbnQgNSByZWdpc3RlciBhZGRyZXNzICovDQojZGVmaW5lICBVU0JfRVA2UiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKFVTQl9CQVNFICsgMHgwMDAwMDAxOFUpICAgICAgICAgLyohPCBlbmRwb2ludCA2IHJlZ2lzdGVyIGFkZHJlc3MgKi8NCiNkZWZpbmUgIFVTQl9FUDdSICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoVVNCX0JBU0UgKyAweDAwMDAwMDFDVSkgICAgICAgICAvKiE8IGVuZHBvaW50IDcgcmVnaXN0ZXIgYWRkcmVzcyAqLw0KDQovKiBiaXQgcG9zaXRpb25zICovIA0KI2RlZmluZSBVU0JfRVBfQ1RSX1JYX1BvcyAgICAgICAgICAgICAgICAgICAgICgxNVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0JfRVBfQ1RSX1JYX01zayAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFVTQl9FUF9DVFJfUlhfUG9zKSAgICAgIC8qITwgMHgwMDAwODAwMCAqLw0KI2RlZmluZSBVU0JfRVBfQ1RSX1JYICAgICAgICAgICAgICAgICAgICAgICAgIFVTQl9FUF9DVFJfUlhfTXNrICAgICAgICAgICAgICAgIC8qITwgIEVuZFBvaW50IENvcnJlY3QgVFJhbnNmZXIgUlggKi8NCiNkZWZpbmUgVVNCX0VQX0RUT0dfUlhfUG9zICAgICAgICAgICAgICAgICAgICAoMTRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNCX0VQX0RUT0dfUlhfTXNrICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBVU0JfRVBfRFRPR19SWF9Qb3MpICAgICAvKiE8IDB4MDAwMDQwMDAgKi8NCiNkZWZpbmUgVVNCX0VQX0RUT0dfUlggICAgICAgICAgICAgICAgICAgICAgICBVU0JfRVBfRFRPR19SWF9Nc2sgICAgICAgICAgICAgICAvKiE8ICBFbmRQb2ludCBEYXRhIFRPR0dMRSBSWCAqLw0KI2RlZmluZSBVU0JfRVBSWF9TVEFUX1BvcyAgICAgICAgICAgICAgICAgICAgICgxMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0JfRVBSWF9TVEFUX01zayAgICAgICAgICAgICAgICAgICAgICgweDNVIDw8IFVTQl9FUFJYX1NUQVRfUG9zKSAgICAgIC8qITwgMHgwMDAwMzAwMCAqLw0KI2RlZmluZSBVU0JfRVBSWF9TVEFUICAgICAgICAgICAgICAgICAgICAgICAgIFVTQl9FUFJYX1NUQVRfTXNrICAgICAgICAgICAgICAgIC8qITwgIEVuZFBvaW50IFJYIFNUQVR1cyBiaXQgZmllbGQgKi8NCiNkZWZpbmUgVVNCX0VQX1NFVFVQX1BvcyAgICAgICAgICAgICAgICAgICAgICAoMTFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNCX0VQX1NFVFVQX01zayAgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBVU0JfRVBfU0VUVVBfUG9zKSAgICAgICAvKiE8IDB4MDAwMDA4MDAgKi8NCiNkZWZpbmUgVVNCX0VQX1NFVFVQICAgICAgICAgICAgICAgICAgICAgICAgICBVU0JfRVBfU0VUVVBfTXNrICAgICAgICAgICAgICAgICAvKiE8ICBFbmRQb2ludCBTRVRVUCAqLw0KI2RlZmluZSBVU0JfRVBfVF9GSUVMRF9Qb3MgICAgICAgICAgICAgICAgICAgICg5VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0JfRVBfVF9GSUVMRF9Nc2sgICAgICAgICAgICAgICAgICAgICgweDNVIDw8IFVTQl9FUF9UX0ZJRUxEX1BvcykgICAgIC8qITwgMHgwMDAwMDYwMCAqLw0KI2RlZmluZSBVU0JfRVBfVF9GSUVMRCAgICAgICAgICAgICAgICAgICAgICAgIFVTQl9FUF9UX0ZJRUxEX01zayAgICAgICAgICAgICAgIC8qITwgIEVuZFBvaW50IFRZUEUgKi8NCiNkZWZpbmUgVVNCX0VQX0tJTkRfUG9zICAgICAgICAgICAgICAgICAgICAgICAoOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNCX0VQX0tJTkRfTXNrICAgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBVU0JfRVBfS0lORF9Qb3MpICAgICAgICAvKiE8IDB4MDAwMDAxMDAgKi8NCiNkZWZpbmUgVVNCX0VQX0tJTkQgICAgICAgICAgICAgICAgICAgICAgICAgICBVU0JfRVBfS0lORF9Nc2sgICAgICAgICAgICAgICAgICAvKiE8ICBFbmRQb2ludCBLSU5EICovDQojZGVmaW5lIFVTQl9FUF9DVFJfVFhfUG9zICAgICAgICAgICAgICAgICAgICAgKDdVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQl9FUF9DVFJfVFhfTXNrICAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVVNCX0VQX0NUUl9UWF9Qb3MpICAgICAgLyohPCAweDAwMDAwMDgwICovDQojZGVmaW5lIFVTQl9FUF9DVFJfVFggICAgICAgICAgICAgICAgICAgICAgICAgVVNCX0VQX0NUUl9UWF9Nc2sgICAgICAgICAgICAgICAgLyohPCAgRW5kUG9pbnQgQ29ycmVjdCBUUmFuc2ZlciBUWCAqLw0KI2RlZmluZSBVU0JfRVBfRFRPR19UWF9Qb3MgICAgICAgICAgICAgICAgICAgICg2VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0JfRVBfRFRPR19UWF9Nc2sgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFVTQl9FUF9EVE9HX1RYX1BvcykgICAgIC8qITwgMHgwMDAwMDA0MCAqLw0KI2RlZmluZSBVU0JfRVBfRFRPR19UWCAgICAgICAgICAgICAgICAgICAgICAgIFVTQl9FUF9EVE9HX1RYX01zayAgICAgICAgICAgICAgIC8qITwgIEVuZFBvaW50IERhdGEgVE9HR0xFIFRYICovDQojZGVmaW5lIFVTQl9FUFRYX1NUQVRfUG9zICAgICAgICAgICAgICAgICAgICAgKDRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQl9FUFRYX1NUQVRfTXNrICAgICAgICAgICAgICAgICAgICAgKDB4M1UgPDwgVVNCX0VQVFhfU1RBVF9Qb3MpICAgICAgLyohPCAweDAwMDAwMDMwICovDQojZGVmaW5lIFVTQl9FUFRYX1NUQVQgICAgICAgICAgICAgICAgICAgICAgICAgVVNCX0VQVFhfU1RBVF9Nc2sgICAgICAgICAgICAgICAgLyohPCAgRW5kUG9pbnQgVFggU1RBVHVzIGJpdCBmaWVsZCAqLw0KI2RlZmluZSBVU0JfRVBBRERSX0ZJRUxEX1BvcyAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0JfRVBBRERSX0ZJRUxEX01zayAgICAgICAgICAgICAgICAgICgweEZVIDw8IFVTQl9FUEFERFJfRklFTERfUG9zKSAgIC8qITwgMHgwMDAwMDAwRiAqLw0KI2RlZmluZSBVU0JfRVBBRERSX0ZJRUxEICAgICAgICAgICAgICAgICAgICAgIFVTQl9FUEFERFJfRklFTERfTXNrICAgICAgICAgICAgIC8qITwgIEVuZFBvaW50IEFERFJlc3MgRklFTEQgKi8NCg0KLyogRW5kUG9pbnQgUkVHaXN0ZXIgTUFTSyAobm8gdG9nZ2xlIGZpZWxkcykgKi8NCiNkZWZpbmUgIFVTQl9FUFJFR19NQVNLICAgICAoVVNCX0VQX0NUUl9SWHxVU0JfRVBfU0VUVVB8VVNCX0VQX1RfRklFTER8VVNCX0VQX0tJTkR8VVNCX0VQX0NUUl9UWHxVU0JfRVBBRERSX0ZJRUxEKQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgRVBfVFlQRVsxOjBdIEVuZFBvaW50IFRZUEUgKi8NCiNkZWZpbmUgVVNCX0VQX1RZUEVfTUFTS19Qb3MgICAgICAgICAgICAgICAgICAoOVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNCX0VQX1RZUEVfTUFTS19Nc2sgICAgICAgICAgICAgICAgICAoMHgzVSA8PCBVU0JfRVBfVFlQRV9NQVNLX1BvcykgICAvKiE8IDB4MDAwMDA2MDAgKi8NCiNkZWZpbmUgVVNCX0VQX1RZUEVfTUFTSyAgICAgICAgICAgICAgICAgICAgICBVU0JfRVBfVFlQRV9NQVNLX01zayAgICAgICAgICAgICAvKiE8IEVuZFBvaW50IFRZUEUgTWFzayAqLw0KI2RlZmluZSBVU0JfRVBfQlVMSyAgICAgICAgICAgICAgICAgICAgICAgICAgICgweDAwMDAwMDAwVSkgICAgICAgICAgICAgICAgICAgIC8qITwgRW5kUG9pbnQgQlVMSyAqLw0KI2RlZmluZSBVU0JfRVBfQ09OVFJPTCAgICAgICAgICAgICAgICAgICAgICAgICgweDAwMDAwMjAwVSkgICAgICAgICAgICAgICAgICAgIC8qITwgRW5kUG9pbnQgQ09OVFJPTCAqLw0KI2RlZmluZSBVU0JfRVBfSVNPQ0hST05PVVMgICAgICAgICAgICAgICAgICAgICgweDAwMDAwNDAwVSkgICAgICAgICAgICAgICAgICAgIC8qITwgRW5kUG9pbnQgSVNPQ0hST05PVVMgKi8NCiNkZWZpbmUgVVNCX0VQX0lOVEVSUlVQVCAgICAgICAgICAgICAgICAgICAgICAoMHgwMDAwMDYwMFUpICAgICAgICAgICAgICAgICAgICAvKiE8IEVuZFBvaW50IElOVEVSUlVQVCAqLw0KI2RlZmluZSAgVVNCX0VQX1RfTUFTSyAgICAgICh+VVNCX0VQX1RfRklFTEQgJiBVU0JfRVBSRUdfTUFTSykNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lICBVU0JfRVBLSU5EX01BU0sgICAgKH5VU0JfRVBfS0lORCAmIFVTQl9FUFJFR19NQVNLKSAgICAgICAgICAgIC8qITwgRVBfS0lORCBFbmRQb2ludCBLSU5EICovDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBTVEFUX1RYWzE6MF0gU1RBVHVzIGZvciBUWCB0cmFuc2ZlciAqLw0KI2RlZmluZSBVU0JfRVBfVFhfRElTICAgICAgICAgICAgICAgICAgICAgICAgICgweDAwMDAwMDAwVSkgICAgICAgICAgICAgICAgICAgIC8qITwgRW5kUG9pbnQgVFggRElTYWJsZWQgKi8NCiNkZWZpbmUgVVNCX0VQX1RYX1NUQUxMICAgICAgICAgICAgICAgICAgICAgICAoMHgwMDAwMDAxMFUpICAgICAgICAgICAgICAgICAgICAvKiE8IEVuZFBvaW50IFRYIFNUQUxMZWQgKi8NCiNkZWZpbmUgVVNCX0VQX1RYX05BSyAgICAgICAgICAgICAgICAgICAgICAgICAoMHgwMDAwMDAyMFUpICAgICAgICAgICAgICAgICAgICAvKiE8IEVuZFBvaW50IFRYIE5BS2VkICovDQojZGVmaW5lIFVTQl9FUF9UWF9WQUxJRCAgICAgICAgICAgICAgICAgICAgICAgKDB4MDAwMDAwMzBVKSAgICAgICAgICAgICAgICAgICAgLyohPCBFbmRQb2ludCBUWCBWQUxJRCAqLw0KI2RlZmluZSBVU0JfRVBUWF9EVE9HMSAgICAgICAgICAgICAgICAgICAgICAgICgweDAwMDAwMDEwVSkgICAgICAgICAgICAgICAgICAgIC8qITwgRW5kUG9pbnQgVFggRGF0YSBUT0dnbGUgYml0MSAqLw0KI2RlZmluZSBVU0JfRVBUWF9EVE9HMiAgICAgICAgICAgICAgICAgICAgICAgICgweDAwMDAwMDIwVSkgICAgICAgICAgICAgICAgICAgIC8qITwgRW5kUG9pbnQgVFggRGF0YSBUT0dnbGUgYml0MiAqLw0KI2RlZmluZSAgVVNCX0VQVFhfRFRPR01BU0sgIChVU0JfRVBUWF9TVEFUfFVTQl9FUFJFR19NQVNLKQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgU1RBVF9SWFsxOjBdIFNUQVR1cyBmb3IgUlggdHJhbnNmZXIgKi8NCiNkZWZpbmUgVVNCX0VQX1JYX0RJUyAgICAgICAgICAgICAgICAgICAgICAgICAoMHgwMDAwMDAwMFUpICAgICAgICAgICAgICAgICAgICAvKiE8IEVuZFBvaW50IFJYIERJU2FibGVkICovDQojZGVmaW5lIFVTQl9FUF9SWF9TVEFMTCAgICAgICAgICAgICAgICAgICAgICAgKDB4MDAwMDEwMDBVKSAgICAgICAgICAgICAgICAgICAgLyohPCBFbmRQb2ludCBSWCBTVEFMTGVkICovDQojZGVmaW5lIFVTQl9FUF9SWF9OQUsgICAgICAgICAgICAgICAgICAgICAgICAgKDB4MDAwMDIwMDBVKSAgICAgICAgICAgICAgICAgICAgLyohPCBFbmRQb2ludCBSWCBOQUtlZCAqLw0KI2RlZmluZSBVU0JfRVBfUlhfVkFMSUQgICAgICAgICAgICAgICAgICAgICAgICgweDAwMDAzMDAwVSkgICAgICAgICAgICAgICAgICAgIC8qITwgRW5kUG9pbnQgUlggVkFMSUQgKi8NCiNkZWZpbmUgVVNCX0VQUlhfRFRPRzEgICAgICAgICAgICAgICAgICAgICAgICAoMHgwMDAwMTAwMFUpICAgICAgICAgICAgICAgICAgICAvKiE8IEVuZFBvaW50IFJYIERhdGEgVE9HZ2xlIGJpdDEgKi8NCiNkZWZpbmUgVVNCX0VQUlhfRFRPRzIgICAgICAgICAgICAgICAgICAgICAgICAoMHgwMDAwMjAwMFUpICAgICAgICAgICAgICAgICAgICAvKiE8IEVuZFBvaW50IFJYIERhdGEgVE9HZ2xlIGJpdDEgKi8NCiNkZWZpbmUgIFVTQl9FUFJYX0RUT0dNQVNLICAoVVNCX0VQUlhfU1RBVHxVU0JfRVBSRUdfTUFTSykNCg0KLyoqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBVU0JfRVAwUiByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgVVNCX0VQMFJfRUFfUG9zICAgICAgICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNCX0VQMFJfRUFfTXNrICAgICAgICAgICAgICAgICAgICAgICAoMHhGVSA8PCBVU0JfRVAwUl9FQV9Qb3MpICAgICAgICAvKiE8IDB4MDAwMDAwMEYgKi8NCiNkZWZpbmUgVVNCX0VQMFJfRUEgICAgICAgICAgICAgICAgICAgICAgICAgICBVU0JfRVAwUl9FQV9Nc2sgICAgICAgICAgICAgICAgICAvKiE8RW5kcG9pbnQgQWRkcmVzcyAqLw0KDQojZGVmaW5lIFVTQl9FUDBSX1NUQVRfVFhfUG9zICAgICAgICAgICAgICAgICAgKDRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQl9FUDBSX1NUQVRfVFhfTXNrICAgICAgICAgICAgICAgICAgKDB4M1UgPDwgVVNCX0VQMFJfU1RBVF9UWF9Qb3MpICAgLyohPCAweDAwMDAwMDMwICovDQojZGVmaW5lIFVTQl9FUDBSX1NUQVRfVFggICAgICAgICAgICAgICAgICAgICAgVVNCX0VQMFJfU1RBVF9UWF9Nc2sgICAgICAgICAgICAgLyohPFNUQVRfVFhbMTowXSBiaXRzIChTdGF0dXMgYml0cywgZm9yIHRyYW5zbWlzc2lvbiB0cmFuc2ZlcnMpICovDQojZGVmaW5lIFVTQl9FUDBSX1NUQVRfVFhfMCAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVVNCX0VQMFJfU1RBVF9UWF9Qb3MpICAgLyohPCAweDAwMDAwMDEwICovDQojZGVmaW5lIFVTQl9FUDBSX1NUQVRfVFhfMSAgICAgICAgICAgICAgICAgICAgKDB4MlUgPDwgVVNCX0VQMFJfU1RBVF9UWF9Qb3MpICAgLyohPCAweDAwMDAwMDIwICovDQoNCiNkZWZpbmUgVVNCX0VQMFJfRFRPR19UWF9Qb3MgICAgICAgICAgICAgICAgICAoNlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNCX0VQMFJfRFRPR19UWF9Nc2sgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBVU0JfRVAwUl9EVE9HX1RYX1BvcykgICAvKiE8IDB4MDAwMDAwNDAgKi8NCiNkZWZpbmUgVVNCX0VQMFJfRFRPR19UWCAgICAgICAgICAgICAgICAgICAgICBVU0JfRVAwUl9EVE9HX1RYX01zayAgICAgICAgICAgICAvKiE8RGF0YSBUb2dnbGUsIGZvciB0cmFuc21pc3Npb24gdHJhbnNmZXJzICovDQojZGVmaW5lIFVTQl9FUDBSX0NUUl9UWF9Qb3MgICAgICAgICAgICAgICAgICAgKDdVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQl9FUDBSX0NUUl9UWF9Nc2sgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVVNCX0VQMFJfQ1RSX1RYX1BvcykgICAgLyohPCAweDAwMDAwMDgwICovDQojZGVmaW5lIFVTQl9FUDBSX0NUUl9UWCAgICAgICAgICAgICAgICAgICAgICAgVVNCX0VQMFJfQ1RSX1RYX01zayAgICAgICAgICAgICAgLyohPENvcnJlY3QgVHJhbnNmZXIgZm9yIHRyYW5zbWlzc2lvbiAqLw0KI2RlZmluZSBVU0JfRVAwUl9FUF9LSU5EX1BvcyAgICAgICAgICAgICAgICAgICg4VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0JfRVAwUl9FUF9LSU5EX01zayAgICAgICAgICAgICAgICAgICgweDFVIDw8IFVTQl9FUDBSX0VQX0tJTkRfUG9zKSAgIC8qITwgMHgwMDAwMDEwMCAqLw0KI2RlZmluZSBVU0JfRVAwUl9FUF9LSU5EICAgICAgICAgICAgICAgICAgICAgIFVTQl9FUDBSX0VQX0tJTkRfTXNrICAgICAgICAgICAgIC8qITxFbmRwb2ludCBLaW5kICovDQoNCiNkZWZpbmUgVVNCX0VQMFJfRVBfVFlQRV9Qb3MgICAgICAgICAgICAgICAgICAoOVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNCX0VQMFJfRVBfVFlQRV9Nc2sgICAgICAgICAgICAgICAgICAoMHgzVSA8PCBVU0JfRVAwUl9FUF9UWVBFX1BvcykgICAvKiE8IDB4MDAwMDA2MDAgKi8NCiNkZWZpbmUgVVNCX0VQMFJfRVBfVFlQRSAgICAgICAgICAgICAgICAgICAgICBVU0JfRVAwUl9FUF9UWVBFX01zayAgICAgICAgICAgICAvKiE8RVBfVFlQRVsxOjBdIGJpdHMgKEVuZHBvaW50IHR5cGUpICovDQojZGVmaW5lIFVTQl9FUDBSX0VQX1RZUEVfMCAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVVNCX0VQMFJfRVBfVFlQRV9Qb3MpICAgLyohPCAweDAwMDAwMjAwICovDQojZGVmaW5lIFVTQl9FUDBSX0VQX1RZUEVfMSAgICAgICAgICAgICAgICAgICAgKDB4MlUgPDwgVVNCX0VQMFJfRVBfVFlQRV9Qb3MpICAgLyohPCAweDAwMDAwNDAwICovDQoNCiNkZWZpbmUgVVNCX0VQMFJfU0VUVVBfUG9zICAgICAgICAgICAgICAgICAgICAoMTFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNCX0VQMFJfU0VUVVBfTXNrICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBVU0JfRVAwUl9TRVRVUF9Qb3MpICAgICAvKiE8IDB4MDAwMDA4MDAgKi8NCiNkZWZpbmUgVVNCX0VQMFJfU0VUVVAgICAgICAgICAgICAgICAgICAgICAgICBVU0JfRVAwUl9TRVRVUF9Nc2sgICAgICAgICAgICAgICAvKiE8U2V0dXAgdHJhbnNhY3Rpb24gY29tcGxldGVkICovDQoNCiNkZWZpbmUgVVNCX0VQMFJfU1RBVF9SWF9Qb3MgICAgICAgICAgICAgICAgICAoMTJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNCX0VQMFJfU1RBVF9SWF9Nc2sgICAgICAgICAgICAgICAgICAoMHgzVSA8PCBVU0JfRVAwUl9TVEFUX1JYX1BvcykgICAvKiE8IDB4MDAwMDMwMDAgKi8NCiNkZWZpbmUgVVNCX0VQMFJfU1RBVF9SWCAgICAgICAgICAgICAgICAgICAgICBVU0JfRVAwUl9TVEFUX1JYX01zayAgICAgICAgICAgICAvKiE8U1RBVF9SWFsxOjBdIGJpdHMgKFN0YXR1cyBiaXRzLCBmb3IgcmVjZXB0aW9uIHRyYW5zZmVycykgKi8NCiNkZWZpbmUgVVNCX0VQMFJfU1RBVF9SWF8wICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBVU0JfRVAwUl9TVEFUX1JYX1BvcykgICAvKiE8IDB4MDAwMDEwMDAgKi8NCiNkZWZpbmUgVVNCX0VQMFJfU1RBVF9SWF8xICAgICAgICAgICAgICAgICAgICAoMHgyVSA8PCBVU0JfRVAwUl9TVEFUX1JYX1BvcykgICAvKiE8IDB4MDAwMDIwMDAgKi8NCg0KI2RlZmluZSBVU0JfRVAwUl9EVE9HX1JYX1BvcyAgICAgICAgICAgICAgICAgICgxNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0JfRVAwUl9EVE9HX1JYX01zayAgICAgICAgICAgICAgICAgICgweDFVIDw8IFVTQl9FUDBSX0RUT0dfUlhfUG9zKSAgIC8qITwgMHgwMDAwNDAwMCAqLw0KI2RlZmluZSBVU0JfRVAwUl9EVE9HX1JYICAgICAgICAgICAgICAgICAgICAgIFVTQl9FUDBSX0RUT0dfUlhfTXNrICAgICAgICAgICAgIC8qITxEYXRhIFRvZ2dsZSwgZm9yIHJlY2VwdGlvbiB0cmFuc2ZlcnMgKi8NCiNkZWZpbmUgVVNCX0VQMFJfQ1RSX1JYX1BvcyAgICAgICAgICAgICAgICAgICAoMTVVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNCX0VQMFJfQ1RSX1JYX01zayAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBVU0JfRVAwUl9DVFJfUlhfUG9zKSAgICAvKiE8IDB4MDAwMDgwMDAgKi8NCiNkZWZpbmUgVVNCX0VQMFJfQ1RSX1JYICAgICAgICAgICAgICAgICAgICAgICBVU0JfRVAwUl9DVFJfUlhfTXNrICAgICAgICAgICAgICAvKiE8Q29ycmVjdCBUcmFuc2ZlciBmb3IgcmVjZXB0aW9uICovDQoNCi8qKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgVVNCX0VQMVIgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIFVTQl9FUDFSX0VBX1BvcyAgICAgICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQl9FUDFSX0VBX01zayAgICAgICAgICAgICAgICAgICAgICAgKDB4RlUgPDwgVVNCX0VQMVJfRUFfUG9zKSAgICAgICAgLyohPCAweDAwMDAwMDBGICovDQojZGVmaW5lIFVTQl9FUDFSX0VBICAgICAgICAgICAgICAgICAgICAgICAgICAgVVNCX0VQMVJfRUFfTXNrICAgICAgICAgICAgICAgICAgLyohPEVuZHBvaW50IEFkZHJlc3MgKi8NCg0KI2RlZmluZSBVU0JfRVAxUl9TVEFUX1RYX1BvcyAgICAgICAgICAgICAgICAgICg0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0JfRVAxUl9TVEFUX1RYX01zayAgICAgICAgICAgICAgICAgICgweDNVIDw8IFVTQl9FUDFSX1NUQVRfVFhfUG9zKSAgIC8qITwgMHgwMDAwMDAzMCAqLw0KI2RlZmluZSBVU0JfRVAxUl9TVEFUX1RYICAgICAgICAgICAgICAgICAgICAgIFVTQl9FUDFSX1NUQVRfVFhfTXNrICAgICAgICAgICAgIC8qITxTVEFUX1RYWzE6MF0gYml0cyAoU3RhdHVzIGJpdHMsIGZvciB0cmFuc21pc3Npb24gdHJhbnNmZXJzKSAqLw0KI2RlZmluZSBVU0JfRVAxUl9TVEFUX1RYXzAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFVTQl9FUDFSX1NUQVRfVFhfUG9zKSAgIC8qITwgMHgwMDAwMDAxMCAqLw0KI2RlZmluZSBVU0JfRVAxUl9TVEFUX1RYXzEgICAgICAgICAgICAgICAgICAgICgweDJVIDw8IFVTQl9FUDFSX1NUQVRfVFhfUG9zKSAgIC8qITwgMHgwMDAwMDAyMCAqLw0KDQojZGVmaW5lIFVTQl9FUDFSX0RUT0dfVFhfUG9zICAgICAgICAgICAgICAgICAgKDZVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQl9FUDFSX0RUT0dfVFhfTXNrICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVVNCX0VQMVJfRFRPR19UWF9Qb3MpICAgLyohPCAweDAwMDAwMDQwICovDQojZGVmaW5lIFVTQl9FUDFSX0RUT0dfVFggICAgICAgICAgICAgICAgICAgICAgVVNCX0VQMVJfRFRPR19UWF9Nc2sgICAgICAgICAgICAgLyohPERhdGEgVG9nZ2xlLCBmb3IgdHJhbnNtaXNzaW9uIHRyYW5zZmVycyAqLw0KI2RlZmluZSBVU0JfRVAxUl9DVFJfVFhfUG9zICAgICAgICAgICAgICAgICAgICg3VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0JfRVAxUl9DVFJfVFhfTXNrICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFVTQl9FUDFSX0NUUl9UWF9Qb3MpICAgIC8qITwgMHgwMDAwMDA4MCAqLw0KI2RlZmluZSBVU0JfRVAxUl9DVFJfVFggICAgICAgICAgICAgICAgICAgICAgIFVTQl9FUDFSX0NUUl9UWF9Nc2sgICAgICAgICAgICAgIC8qITxDb3JyZWN0IFRyYW5zZmVyIGZvciB0cmFuc21pc3Npb24gKi8NCiNkZWZpbmUgVVNCX0VQMVJfRVBfS0lORF9Qb3MgICAgICAgICAgICAgICAgICAoOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNCX0VQMVJfRVBfS0lORF9Nc2sgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBVU0JfRVAxUl9FUF9LSU5EX1BvcykgICAvKiE8IDB4MDAwMDAxMDAgKi8NCiNkZWZpbmUgVVNCX0VQMVJfRVBfS0lORCAgICAgICAgICAgICAgICAgICAgICBVU0JfRVAxUl9FUF9LSU5EX01zayAgICAgICAgICAgICAvKiE8RW5kcG9pbnQgS2luZCAqLw0KDQojZGVmaW5lIFVTQl9FUDFSX0VQX1RZUEVfUG9zICAgICAgICAgICAgICAgICAgKDlVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQl9FUDFSX0VQX1RZUEVfTXNrICAgICAgICAgICAgICAgICAgKDB4M1UgPDwgVVNCX0VQMVJfRVBfVFlQRV9Qb3MpICAgLyohPCAweDAwMDAwNjAwICovDQojZGVmaW5lIFVTQl9FUDFSX0VQX1RZUEUgICAgICAgICAgICAgICAgICAgICAgVVNCX0VQMVJfRVBfVFlQRV9Nc2sgICAgICAgICAgICAgLyohPEVQX1RZUEVbMTowXSBiaXRzIChFbmRwb2ludCB0eXBlKSAqLw0KI2RlZmluZSBVU0JfRVAxUl9FUF9UWVBFXzAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFVTQl9FUDFSX0VQX1RZUEVfUG9zKSAgIC8qITwgMHgwMDAwMDIwMCAqLw0KI2RlZmluZSBVU0JfRVAxUl9FUF9UWVBFXzEgICAgICAgICAgICAgICAgICAgICgweDJVIDw8IFVTQl9FUDFSX0VQX1RZUEVfUG9zKSAgIC8qITwgMHgwMDAwMDQwMCAqLw0KDQojZGVmaW5lIFVTQl9FUDFSX1NFVFVQX1BvcyAgICAgICAgICAgICAgICAgICAgKDExVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQl9FUDFSX1NFVFVQX01zayAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVVNCX0VQMVJfU0VUVVBfUG9zKSAgICAgLyohPCAweDAwMDAwODAwICovDQojZGVmaW5lIFVTQl9FUDFSX1NFVFVQICAgICAgICAgICAgICAgICAgICAgICAgVVNCX0VQMVJfU0VUVVBfTXNrICAgICAgICAgICAgICAgLyohPFNldHVwIHRyYW5zYWN0aW9uIGNvbXBsZXRlZCAqLw0KDQojZGVmaW5lIFVTQl9FUDFSX1NUQVRfUlhfUG9zICAgICAgICAgICAgICAgICAgKDEyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQl9FUDFSX1NUQVRfUlhfTXNrICAgICAgICAgICAgICAgICAgKDB4M1UgPDwgVVNCX0VQMVJfU1RBVF9SWF9Qb3MpICAgLyohPCAweDAwMDAzMDAwICovDQojZGVmaW5lIFVTQl9FUDFSX1NUQVRfUlggICAgICAgICAgICAgICAgICAgICAgVVNCX0VQMVJfU1RBVF9SWF9Nc2sgICAgICAgICAgICAgLyohPFNUQVRfUlhbMTowXSBiaXRzIChTdGF0dXMgYml0cywgZm9yIHJlY2VwdGlvbiB0cmFuc2ZlcnMpICovDQojZGVmaW5lIFVTQl9FUDFSX1NUQVRfUlhfMCAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVVNCX0VQMVJfU1RBVF9SWF9Qb3MpICAgLyohPCAweDAwMDAxMDAwICovDQojZGVmaW5lIFVTQl9FUDFSX1NUQVRfUlhfMSAgICAgICAgICAgICAgICAgICAgKDB4MlUgPDwgVVNCX0VQMVJfU1RBVF9SWF9Qb3MpICAgLyohPCAweDAwMDAyMDAwICovDQoNCiNkZWZpbmUgVVNCX0VQMVJfRFRPR19SWF9Qb3MgICAgICAgICAgICAgICAgICAoMTRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNCX0VQMVJfRFRPR19SWF9Nc2sgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBVU0JfRVAxUl9EVE9HX1JYX1BvcykgICAvKiE8IDB4MDAwMDQwMDAgKi8NCiNkZWZpbmUgVVNCX0VQMVJfRFRPR19SWCAgICAgICAgICAgICAgICAgICAgICBVU0JfRVAxUl9EVE9HX1JYX01zayAgICAgICAgICAgICAvKiE8RGF0YSBUb2dnbGUsIGZvciByZWNlcHRpb24gdHJhbnNmZXJzICovDQojZGVmaW5lIFVTQl9FUDFSX0NUUl9SWF9Qb3MgICAgICAgICAgICAgICAgICAgKDE1VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQl9FUDFSX0NUUl9SWF9Nc2sgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVVNCX0VQMVJfQ1RSX1JYX1BvcykgICAgLyohPCAweDAwMDA4MDAwICovDQojZGVmaW5lIFVTQl9FUDFSX0NUUl9SWCAgICAgICAgICAgICAgICAgICAgICAgVVNCX0VQMVJfQ1RSX1JYX01zayAgICAgICAgICAgICAgLyohPENvcnJlY3QgVHJhbnNmZXIgZm9yIHJlY2VwdGlvbiAqLw0KDQovKioqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFVTQl9FUDJSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBVU0JfRVAyUl9FQV9Qb3MgICAgICAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0JfRVAyUl9FQV9Nc2sgICAgICAgICAgICAgICAgICAgICAgICgweEZVIDw8IFVTQl9FUDJSX0VBX1BvcykgICAgICAgIC8qITwgMHgwMDAwMDAwRiAqLw0KI2RlZmluZSBVU0JfRVAyUl9FQSAgICAgICAgICAgICAgICAgICAgICAgICAgIFVTQl9FUDJSX0VBX01zayAgICAgICAgICAgICAgICAgIC8qITxFbmRwb2ludCBBZGRyZXNzICovDQoNCiNkZWZpbmUgVVNCX0VQMlJfU1RBVF9UWF9Qb3MgICAgICAgICAgICAgICAgICAoNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNCX0VQMlJfU1RBVF9UWF9Nc2sgICAgICAgICAgICAgICAgICAoMHgzVSA8PCBVU0JfRVAyUl9TVEFUX1RYX1BvcykgICAvKiE8IDB4MDAwMDAwMzAgKi8NCiNkZWZpbmUgVVNCX0VQMlJfU1RBVF9UWCAgICAgICAgICAgICAgICAgICAgICBVU0JfRVAyUl9TVEFUX1RYX01zayAgICAgICAgICAgICAvKiE8U1RBVF9UWFsxOjBdIGJpdHMgKFN0YXR1cyBiaXRzLCBmb3IgdHJhbnNtaXNzaW9uIHRyYW5zZmVycykgKi8NCiNkZWZpbmUgVVNCX0VQMlJfU1RBVF9UWF8wICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBVU0JfRVAyUl9TVEFUX1RYX1BvcykgICAvKiE8IDB4MDAwMDAwMTAgKi8NCiNkZWZpbmUgVVNCX0VQMlJfU1RBVF9UWF8xICAgICAgICAgICAgICAgICAgICAoMHgyVSA8PCBVU0JfRVAyUl9TVEFUX1RYX1BvcykgICAvKiE8IDB4MDAwMDAwMjAgKi8NCg0KI2RlZmluZSBVU0JfRVAyUl9EVE9HX1RYX1BvcyAgICAgICAgICAgICAgICAgICg2VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0JfRVAyUl9EVE9HX1RYX01zayAgICAgICAgICAgICAgICAgICgweDFVIDw8IFVTQl9FUDJSX0RUT0dfVFhfUG9zKSAgIC8qITwgMHgwMDAwMDA0MCAqLw0KI2RlZmluZSBVU0JfRVAyUl9EVE9HX1RYICAgICAgICAgICAgICAgICAgICAgIFVTQl9FUDJSX0RUT0dfVFhfTXNrICAgICAgICAgICAgIC8qITxEYXRhIFRvZ2dsZSwgZm9yIHRyYW5zbWlzc2lvbiB0cmFuc2ZlcnMgKi8NCiNkZWZpbmUgVVNCX0VQMlJfQ1RSX1RYX1BvcyAgICAgICAgICAgICAgICAgICAoN1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNCX0VQMlJfQ1RSX1RYX01zayAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBVU0JfRVAyUl9DVFJfVFhfUG9zKSAgICAvKiE8IDB4MDAwMDAwODAgKi8NCiNkZWZpbmUgVVNCX0VQMlJfQ1RSX1RYICAgICAgICAgICAgICAgICAgICAgICBVU0JfRVAyUl9DVFJfVFhfTXNrICAgICAgICAgICAgICAvKiE8Q29ycmVjdCBUcmFuc2ZlciBmb3IgdHJhbnNtaXNzaW9uICovDQojZGVmaW5lIFVTQl9FUDJSX0VQX0tJTkRfUG9zICAgICAgICAgICAgICAgICAgKDhVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQl9FUDJSX0VQX0tJTkRfTXNrICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVVNCX0VQMlJfRVBfS0lORF9Qb3MpICAgLyohPCAweDAwMDAwMTAwICovDQojZGVmaW5lIFVTQl9FUDJSX0VQX0tJTkQgICAgICAgICAgICAgICAgICAgICAgVVNCX0VQMlJfRVBfS0lORF9Nc2sgICAgICAgICAgICAgLyohPEVuZHBvaW50IEtpbmQgKi8NCg0KI2RlZmluZSBVU0JfRVAyUl9FUF9UWVBFX1BvcyAgICAgICAgICAgICAgICAgICg5VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0JfRVAyUl9FUF9UWVBFX01zayAgICAgICAgICAgICAgICAgICgweDNVIDw8IFVTQl9FUDJSX0VQX1RZUEVfUG9zKSAgIC8qITwgMHgwMDAwMDYwMCAqLw0KI2RlZmluZSBVU0JfRVAyUl9FUF9UWVBFICAgICAgICAgICAgICAgICAgICAgIFVTQl9FUDJSX0VQX1RZUEVfTXNrICAgICAgICAgICAgIC8qITxFUF9UWVBFWzE6MF0gYml0cyAoRW5kcG9pbnQgdHlwZSkgKi8NCiNkZWZpbmUgVVNCX0VQMlJfRVBfVFlQRV8wICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBVU0JfRVAyUl9FUF9UWVBFX1BvcykgICAvKiE8IDB4MDAwMDAyMDAgKi8NCiNkZWZpbmUgVVNCX0VQMlJfRVBfVFlQRV8xICAgICAgICAgICAgICAgICAgICAoMHgyVSA8PCBVU0JfRVAyUl9FUF9UWVBFX1BvcykgICAvKiE8IDB4MDAwMDA0MDAgKi8NCg0KI2RlZmluZSBVU0JfRVAyUl9TRVRVUF9Qb3MgICAgICAgICAgICAgICAgICAgICgxMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0JfRVAyUl9TRVRVUF9Nc2sgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFVTQl9FUDJSX1NFVFVQX1BvcykgICAgIC8qITwgMHgwMDAwMDgwMCAqLw0KI2RlZmluZSBVU0JfRVAyUl9TRVRVUCAgICAgICAgICAgICAgICAgICAgICAgIFVTQl9FUDJSX1NFVFVQX01zayAgICAgICAgICAgICAgIC8qITxTZXR1cCB0cmFuc2FjdGlvbiBjb21wbGV0ZWQgKi8NCg0KI2RlZmluZSBVU0JfRVAyUl9TVEFUX1JYX1BvcyAgICAgICAgICAgICAgICAgICgxMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0JfRVAyUl9TVEFUX1JYX01zayAgICAgICAgICAgICAgICAgICgweDNVIDw8IFVTQl9FUDJSX1NUQVRfUlhfUG9zKSAgIC8qITwgMHgwMDAwMzAwMCAqLw0KI2RlZmluZSBVU0JfRVAyUl9TVEFUX1JYICAgICAgICAgICAgICAgICAgICAgIFVTQl9FUDJSX1NUQVRfUlhfTXNrICAgICAgICAgICAgIC8qITxTVEFUX1JYWzE6MF0gYml0cyAoU3RhdHVzIGJpdHMsIGZvciByZWNlcHRpb24gdHJhbnNmZXJzKSAqLw0KI2RlZmluZSBVU0JfRVAyUl9TVEFUX1JYXzAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFVTQl9FUDJSX1NUQVRfUlhfUG9zKSAgIC8qITwgMHgwMDAwMTAwMCAqLw0KI2RlZmluZSBVU0JfRVAyUl9TVEFUX1JYXzEgICAgICAgICAgICAgICAgICAgICgweDJVIDw8IFVTQl9FUDJSX1NUQVRfUlhfUG9zKSAgIC8qITwgMHgwMDAwMjAwMCAqLw0KDQojZGVmaW5lIFVTQl9FUDJSX0RUT0dfUlhfUG9zICAgICAgICAgICAgICAgICAgKDE0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQl9FUDJSX0RUT0dfUlhfTXNrICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVVNCX0VQMlJfRFRPR19SWF9Qb3MpICAgLyohPCAweDAwMDA0MDAwICovDQojZGVmaW5lIFVTQl9FUDJSX0RUT0dfUlggICAgICAgICAgICAgICAgICAgICAgVVNCX0VQMlJfRFRPR19SWF9Nc2sgICAgICAgICAgICAgLyohPERhdGEgVG9nZ2xlLCBmb3IgcmVjZXB0aW9uIHRyYW5zZmVycyAqLw0KI2RlZmluZSBVU0JfRVAyUl9DVFJfUlhfUG9zICAgICAgICAgICAgICAgICAgICgxNVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0JfRVAyUl9DVFJfUlhfTXNrICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFVTQl9FUDJSX0NUUl9SWF9Qb3MpICAgIC8qITwgMHgwMDAwODAwMCAqLw0KI2RlZmluZSBVU0JfRVAyUl9DVFJfUlggICAgICAgICAgICAgICAgICAgICAgIFVTQl9FUDJSX0NUUl9SWF9Nc2sgICAgICAgICAgICAgIC8qITxDb3JyZWN0IFRyYW5zZmVyIGZvciByZWNlcHRpb24gKi8NCg0KLyoqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBVU0JfRVAzUiByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgVVNCX0VQM1JfRUFfUG9zICAgICAgICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNCX0VQM1JfRUFfTXNrICAgICAgICAgICAgICAgICAgICAgICAoMHhGVSA8PCBVU0JfRVAzUl9FQV9Qb3MpICAgICAgICAvKiE8IDB4MDAwMDAwMEYgKi8NCiNkZWZpbmUgVVNCX0VQM1JfRUEgICAgICAgICAgICAgICAgICAgICAgICAgICBVU0JfRVAzUl9FQV9Nc2sgICAgICAgICAgICAgICAgICAvKiE8RW5kcG9pbnQgQWRkcmVzcyAqLw0KDQojZGVmaW5lIFVTQl9FUDNSX1NUQVRfVFhfUG9zICAgICAgICAgICAgICAgICAgKDRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQl9FUDNSX1NUQVRfVFhfTXNrICAgICAgICAgICAgICAgICAgKDB4M1UgPDwgVVNCX0VQM1JfU1RBVF9UWF9Qb3MpICAgLyohPCAweDAwMDAwMDMwICovDQojZGVmaW5lIFVTQl9FUDNSX1NUQVRfVFggICAgICAgICAgICAgICAgICAgICAgVVNCX0VQM1JfU1RBVF9UWF9Nc2sgICAgICAgICAgICAgLyohPFNUQVRfVFhbMTowXSBiaXRzIChTdGF0dXMgYml0cywgZm9yIHRyYW5zbWlzc2lvbiB0cmFuc2ZlcnMpICovDQojZGVmaW5lIFVTQl9FUDNSX1NUQVRfVFhfMCAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVVNCX0VQM1JfU1RBVF9UWF9Qb3MpICAgLyohPCAweDAwMDAwMDEwICovDQojZGVmaW5lIFVTQl9FUDNSX1NUQVRfVFhfMSAgICAgICAgICAgICAgICAgICAgKDB4MlUgPDwgVVNCX0VQM1JfU1RBVF9UWF9Qb3MpICAgLyohPCAweDAwMDAwMDIwICovDQoNCiNkZWZpbmUgVVNCX0VQM1JfRFRPR19UWF9Qb3MgICAgICAgICAgICAgICAgICAoNlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNCX0VQM1JfRFRPR19UWF9Nc2sgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBVU0JfRVAzUl9EVE9HX1RYX1BvcykgICAvKiE8IDB4MDAwMDAwNDAgKi8NCiNkZWZpbmUgVVNCX0VQM1JfRFRPR19UWCAgICAgICAgICAgICAgICAgICAgICBVU0JfRVAzUl9EVE9HX1RYX01zayAgICAgICAgICAgICAvKiE8RGF0YSBUb2dnbGUsIGZvciB0cmFuc21pc3Npb24gdHJhbnNmZXJzICovDQojZGVmaW5lIFVTQl9FUDNSX0NUUl9UWF9Qb3MgICAgICAgICAgICAgICAgICAgKDdVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQl9FUDNSX0NUUl9UWF9Nc2sgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVVNCX0VQM1JfQ1RSX1RYX1BvcykgICAgLyohPCAweDAwMDAwMDgwICovDQojZGVmaW5lIFVTQl9FUDNSX0NUUl9UWCAgICAgICAgICAgICAgICAgICAgICAgVVNCX0VQM1JfQ1RSX1RYX01zayAgICAgICAgICAgICAgLyohPENvcnJlY3QgVHJhbnNmZXIgZm9yIHRyYW5zbWlzc2lvbiAqLw0KI2RlZmluZSBVU0JfRVAzUl9FUF9LSU5EX1BvcyAgICAgICAgICAgICAgICAgICg4VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0JfRVAzUl9FUF9LSU5EX01zayAgICAgICAgICAgICAgICAgICgweDFVIDw8IFVTQl9FUDNSX0VQX0tJTkRfUG9zKSAgIC8qITwgMHgwMDAwMDEwMCAqLw0KI2RlZmluZSBVU0JfRVAzUl9FUF9LSU5EICAgICAgICAgICAgICAgICAgICAgIFVTQl9FUDNSX0VQX0tJTkRfTXNrICAgICAgICAgICAgIC8qITxFbmRwb2ludCBLaW5kICovDQoNCiNkZWZpbmUgVVNCX0VQM1JfRVBfVFlQRV9Qb3MgICAgICAgICAgICAgICAgICAoOVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNCX0VQM1JfRVBfVFlQRV9Nc2sgICAgICAgICAgICAgICAgICAoMHgzVSA8PCBVU0JfRVAzUl9FUF9UWVBFX1BvcykgICAvKiE8IDB4MDAwMDA2MDAgKi8NCiNkZWZpbmUgVVNCX0VQM1JfRVBfVFlQRSAgICAgICAgICAgICAgICAgICAgICBVU0JfRVAzUl9FUF9UWVBFX01zayAgICAgICAgICAgICAvKiE8RVBfVFlQRVsxOjBdIGJpdHMgKEVuZHBvaW50IHR5cGUpICovDQojZGVmaW5lIFVTQl9FUDNSX0VQX1RZUEVfMCAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVVNCX0VQM1JfRVBfVFlQRV9Qb3MpICAgLyohPCAweDAwMDAwMjAwICovDQojZGVmaW5lIFVTQl9FUDNSX0VQX1RZUEVfMSAgICAgICAgICAgICAgICAgICAgKDB4MlUgPDwgVVNCX0VQM1JfRVBfVFlQRV9Qb3MpICAgLyohPCAweDAwMDAwNDAwICovDQoNCiNkZWZpbmUgVVNCX0VQM1JfU0VUVVBfUG9zICAgICAgICAgICAgICAgICAgICAoMTFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNCX0VQM1JfU0VUVVBfTXNrICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBVU0JfRVAzUl9TRVRVUF9Qb3MpICAgICAvKiE8IDB4MDAwMDA4MDAgKi8NCiNkZWZpbmUgVVNCX0VQM1JfU0VUVVAgICAgICAgICAgICAgICAgICAgICAgICBVU0JfRVAzUl9TRVRVUF9Nc2sgICAgICAgICAgICAgICAvKiE8U2V0dXAgdHJhbnNhY3Rpb24gY29tcGxldGVkICovDQoNCiNkZWZpbmUgVVNCX0VQM1JfU1RBVF9SWF9Qb3MgICAgICAgICAgICAgICAgICAoMTJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNCX0VQM1JfU1RBVF9SWF9Nc2sgICAgICAgICAgICAgICAgICAoMHgzVSA8PCBVU0JfRVAzUl9TVEFUX1JYX1BvcykgICAvKiE8IDB4MDAwMDMwMDAgKi8NCiNkZWZpbmUgVVNCX0VQM1JfU1RBVF9SWCAgICAgICAgICAgICAgICAgICAgICBVU0JfRVAzUl9TVEFUX1JYX01zayAgICAgICAgICAgICAvKiE8U1RBVF9SWFsxOjBdIGJpdHMgKFN0YXR1cyBiaXRzLCBmb3IgcmVjZXB0aW9uIHRyYW5zZmVycykgKi8NCiNkZWZpbmUgVVNCX0VQM1JfU1RBVF9SWF8wICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBVU0JfRVAzUl9TVEFUX1JYX1BvcykgICAvKiE8IDB4MDAwMDEwMDAgKi8NCiNkZWZpbmUgVVNCX0VQM1JfU1RBVF9SWF8xICAgICAgICAgICAgICAgICAgICAoMHgyVSA8PCBVU0JfRVAzUl9TVEFUX1JYX1BvcykgICAvKiE8IDB4MDAwMDIwMDAgKi8NCg0KI2RlZmluZSBVU0JfRVAzUl9EVE9HX1JYX1BvcyAgICAgICAgICAgICAgICAgICgxNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0JfRVAzUl9EVE9HX1JYX01zayAgICAgICAgICAgICAgICAgICgweDFVIDw8IFVTQl9FUDNSX0RUT0dfUlhfUG9zKSAgIC8qITwgMHgwMDAwNDAwMCAqLw0KI2RlZmluZSBVU0JfRVAzUl9EVE9HX1JYICAgICAgICAgICAgICAgICAgICAgIFVTQl9FUDNSX0RUT0dfUlhfTXNrICAgICAgICAgICAgIC8qITxEYXRhIFRvZ2dsZSwgZm9yIHJlY2VwdGlvbiB0cmFuc2ZlcnMgKi8NCiNkZWZpbmUgVVNCX0VQM1JfQ1RSX1JYX1BvcyAgICAgICAgICAgICAgICAgICAoMTVVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNCX0VQM1JfQ1RSX1JYX01zayAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBVU0JfRVAzUl9DVFJfUlhfUG9zKSAgICAvKiE8IDB4MDAwMDgwMDAgKi8NCiNkZWZpbmUgVVNCX0VQM1JfQ1RSX1JYICAgICAgICAgICAgICAgICAgICAgICBVU0JfRVAzUl9DVFJfUlhfTXNrICAgICAgICAgICAgICAvKiE8Q29ycmVjdCBUcmFuc2ZlciBmb3IgcmVjZXB0aW9uICovDQoNCi8qKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgVVNCX0VQNFIgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIFVTQl9FUDRSX0VBX1BvcyAgICAgICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQl9FUDRSX0VBX01zayAgICAgICAgICAgICAgICAgICAgICAgKDB4RlUgPDwgVVNCX0VQNFJfRUFfUG9zKSAgICAgICAgLyohPCAweDAwMDAwMDBGICovDQojZGVmaW5lIFVTQl9FUDRSX0VBICAgICAgICAgICAgICAgICAgICAgICAgICAgVVNCX0VQNFJfRUFfTXNrICAgICAgICAgICAgICAgICAgLyohPEVuZHBvaW50IEFkZHJlc3MgKi8NCg0KI2RlZmluZSBVU0JfRVA0Ul9TVEFUX1RYX1BvcyAgICAgICAgICAgICAgICAgICg0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0JfRVA0Ul9TVEFUX1RYX01zayAgICAgICAgICAgICAgICAgICgweDNVIDw8IFVTQl9FUDRSX1NUQVRfVFhfUG9zKSAgIC8qITwgMHgwMDAwMDAzMCAqLw0KI2RlZmluZSBVU0JfRVA0Ul9TVEFUX1RYICAgICAgICAgICAgICAgICAgICAgIFVTQl9FUDRSX1NUQVRfVFhfTXNrICAgICAgICAgICAgIC8qITxTVEFUX1RYWzE6MF0gYml0cyAoU3RhdHVzIGJpdHMsIGZvciB0cmFuc21pc3Npb24gdHJhbnNmZXJzKSAqLw0KI2RlZmluZSBVU0JfRVA0Ul9TVEFUX1RYXzAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFVTQl9FUDRSX1NUQVRfVFhfUG9zKSAgIC8qITwgMHgwMDAwMDAxMCAqLw0KI2RlZmluZSBVU0JfRVA0Ul9TVEFUX1RYXzEgICAgICAgICAgICAgICAgICAgICgweDJVIDw8IFVTQl9FUDRSX1NUQVRfVFhfUG9zKSAgIC8qITwgMHgwMDAwMDAyMCAqLw0KDQojZGVmaW5lIFVTQl9FUDRSX0RUT0dfVFhfUG9zICAgICAgICAgICAgICAgICAgKDZVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQl9FUDRSX0RUT0dfVFhfTXNrICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVVNCX0VQNFJfRFRPR19UWF9Qb3MpICAgLyohPCAweDAwMDAwMDQwICovDQojZGVmaW5lIFVTQl9FUDRSX0RUT0dfVFggICAgICAgICAgICAgICAgICAgICAgVVNCX0VQNFJfRFRPR19UWF9Nc2sgICAgICAgICAgICAgLyohPERhdGEgVG9nZ2xlLCBmb3IgdHJhbnNtaXNzaW9uIHRyYW5zZmVycyAqLw0KI2RlZmluZSBVU0JfRVA0Ul9DVFJfVFhfUG9zICAgICAgICAgICAgICAgICAgICg3VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0JfRVA0Ul9DVFJfVFhfTXNrICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFVTQl9FUDRSX0NUUl9UWF9Qb3MpICAgIC8qITwgMHgwMDAwMDA4MCAqLw0KI2RlZmluZSBVU0JfRVA0Ul9DVFJfVFggICAgICAgICAgICAgICAgICAgICAgIFVTQl9FUDRSX0NUUl9UWF9Nc2sgICAgICAgICAgICAgIC8qITxDb3JyZWN0IFRyYW5zZmVyIGZvciB0cmFuc21pc3Npb24gKi8NCiNkZWZpbmUgVVNCX0VQNFJfRVBfS0lORF9Qb3MgICAgICAgICAgICAgICAgICAoOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNCX0VQNFJfRVBfS0lORF9Nc2sgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBVU0JfRVA0Ul9FUF9LSU5EX1BvcykgICAvKiE8IDB4MDAwMDAxMDAgKi8NCiNkZWZpbmUgVVNCX0VQNFJfRVBfS0lORCAgICAgICAgICAgICAgICAgICAgICBVU0JfRVA0Ul9FUF9LSU5EX01zayAgICAgICAgICAgICAvKiE8RW5kcG9pbnQgS2luZCAqLw0KDQojZGVmaW5lIFVTQl9FUDRSX0VQX1RZUEVfUG9zICAgICAgICAgICAgICAgICAgKDlVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQl9FUDRSX0VQX1RZUEVfTXNrICAgICAgICAgICAgICAgICAgKDB4M1UgPDwgVVNCX0VQNFJfRVBfVFlQRV9Qb3MpICAgLyohPCAweDAwMDAwNjAwICovDQojZGVmaW5lIFVTQl9FUDRSX0VQX1RZUEUgICAgICAgICAgICAgICAgICAgICAgVVNCX0VQNFJfRVBfVFlQRV9Nc2sgICAgICAgICAgICAgLyohPEVQX1RZUEVbMTowXSBiaXRzIChFbmRwb2ludCB0eXBlKSAqLw0KI2RlZmluZSBVU0JfRVA0Ul9FUF9UWVBFXzAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFVTQl9FUDRSX0VQX1RZUEVfUG9zKSAgIC8qITwgMHgwMDAwMDIwMCAqLw0KI2RlZmluZSBVU0JfRVA0Ul9FUF9UWVBFXzEgICAgICAgICAgICAgICAgICAgICgweDJVIDw8IFVTQl9FUDRSX0VQX1RZUEVfUG9zKSAgIC8qITwgMHgwMDAwMDQwMCAqLw0KDQojZGVmaW5lIFVTQl9FUDRSX1NFVFVQX1BvcyAgICAgICAgICAgICAgICAgICAgKDExVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQl9FUDRSX1NFVFVQX01zayAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVVNCX0VQNFJfU0VUVVBfUG9zKSAgICAgLyohPCAweDAwMDAwODAwICovDQojZGVmaW5lIFVTQl9FUDRSX1NFVFVQICAgICAgICAgICAgICAgICAgICAgICAgVVNCX0VQNFJfU0VUVVBfTXNrICAgICAgICAgICAgICAgLyohPFNldHVwIHRyYW5zYWN0aW9uIGNvbXBsZXRlZCAqLw0KDQojZGVmaW5lIFVTQl9FUDRSX1NUQVRfUlhfUG9zICAgICAgICAgICAgICAgICAgKDEyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQl9FUDRSX1NUQVRfUlhfTXNrICAgICAgICAgICAgICAgICAgKDB4M1UgPDwgVVNCX0VQNFJfU1RBVF9SWF9Qb3MpICAgLyohPCAweDAwMDAzMDAwICovDQojZGVmaW5lIFVTQl9FUDRSX1NUQVRfUlggICAgICAgICAgICAgICAgICAgICAgVVNCX0VQNFJfU1RBVF9SWF9Nc2sgICAgICAgICAgICAgLyohPFNUQVRfUlhbMTowXSBiaXRzIChTdGF0dXMgYml0cywgZm9yIHJlY2VwdGlvbiB0cmFuc2ZlcnMpICovDQojZGVmaW5lIFVTQl9FUDRSX1NUQVRfUlhfMCAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVVNCX0VQNFJfU1RBVF9SWF9Qb3MpICAgLyohPCAweDAwMDAxMDAwICovDQojZGVmaW5lIFVTQl9FUDRSX1NUQVRfUlhfMSAgICAgICAgICAgICAgICAgICAgKDB4MlUgPDwgVVNCX0VQNFJfU1RBVF9SWF9Qb3MpICAgLyohPCAweDAwMDAyMDAwICovDQoNCiNkZWZpbmUgVVNCX0VQNFJfRFRPR19SWF9Qb3MgICAgICAgICAgICAgICAgICAoMTRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNCX0VQNFJfRFRPR19SWF9Nc2sgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBVU0JfRVA0Ul9EVE9HX1JYX1BvcykgICAvKiE8IDB4MDAwMDQwMDAgKi8NCiNkZWZpbmUgVVNCX0VQNFJfRFRPR19SWCAgICAgICAgICAgICAgICAgICAgICBVU0JfRVA0Ul9EVE9HX1JYX01zayAgICAgICAgICAgICAvKiE8RGF0YSBUb2dnbGUsIGZvciByZWNlcHRpb24gdHJhbnNmZXJzICovDQojZGVmaW5lIFVTQl9FUDRSX0NUUl9SWF9Qb3MgICAgICAgICAgICAgICAgICAgKDE1VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQl9FUDRSX0NUUl9SWF9Nc2sgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVVNCX0VQNFJfQ1RSX1JYX1BvcykgICAgLyohPCAweDAwMDA4MDAwICovDQojZGVmaW5lIFVTQl9FUDRSX0NUUl9SWCAgICAgICAgICAgICAgICAgICAgICAgVVNCX0VQNFJfQ1RSX1JYX01zayAgICAgICAgICAgICAgLyohPENvcnJlY3QgVHJhbnNmZXIgZm9yIHJlY2VwdGlvbiAqLw0KDQovKioqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFVTQl9FUDVSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBVU0JfRVA1Ul9FQV9Qb3MgICAgICAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0JfRVA1Ul9FQV9Nc2sgICAgICAgICAgICAgICAgICAgICAgICgweEZVIDw8IFVTQl9FUDVSX0VBX1BvcykgICAgICAgIC8qITwgMHgwMDAwMDAwRiAqLw0KI2RlZmluZSBVU0JfRVA1Ul9FQSAgICAgICAgICAgICAgICAgICAgICAgICAgIFVTQl9FUDVSX0VBX01zayAgICAgICAgICAgICAgICAgIC8qITxFbmRwb2ludCBBZGRyZXNzICovDQoNCiNkZWZpbmUgVVNCX0VQNVJfU1RBVF9UWF9Qb3MgICAgICAgICAgICAgICAgICAoNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNCX0VQNVJfU1RBVF9UWF9Nc2sgICAgICAgICAgICAgICAgICAoMHgzVSA8PCBVU0JfRVA1Ul9TVEFUX1RYX1BvcykgICAvKiE8IDB4MDAwMDAwMzAgKi8NCiNkZWZpbmUgVVNCX0VQNVJfU1RBVF9UWCAgICAgICAgICAgICAgICAgICAgICBVU0JfRVA1Ul9TVEFUX1RYX01zayAgICAgICAgICAgICAvKiE8U1RBVF9UWFsxOjBdIGJpdHMgKFN0YXR1cyBiaXRzLCBmb3IgdHJhbnNtaXNzaW9uIHRyYW5zZmVycykgKi8NCiNkZWZpbmUgVVNCX0VQNVJfU1RBVF9UWF8wICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBVU0JfRVA1Ul9TVEFUX1RYX1BvcykgICAvKiE8IDB4MDAwMDAwMTAgKi8NCiNkZWZpbmUgVVNCX0VQNVJfU1RBVF9UWF8xICAgICAgICAgICAgICAgICAgICAoMHgyVSA8PCBVU0JfRVA1Ul9TVEFUX1RYX1BvcykgICAvKiE8IDB4MDAwMDAwMjAgKi8NCg0KI2RlZmluZSBVU0JfRVA1Ul9EVE9HX1RYX1BvcyAgICAgICAgICAgICAgICAgICg2VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0JfRVA1Ul9EVE9HX1RYX01zayAgICAgICAgICAgICAgICAgICgweDFVIDw8IFVTQl9FUDVSX0RUT0dfVFhfUG9zKSAgIC8qITwgMHgwMDAwMDA0MCAqLw0KI2RlZmluZSBVU0JfRVA1Ul9EVE9HX1RYICAgICAgICAgICAgICAgICAgICAgIFVTQl9FUDVSX0RUT0dfVFhfTXNrICAgICAgICAgICAgIC8qITxEYXRhIFRvZ2dsZSwgZm9yIHRyYW5zbWlzc2lvbiB0cmFuc2ZlcnMgKi8NCiNkZWZpbmUgVVNCX0VQNVJfQ1RSX1RYX1BvcyAgICAgICAgICAgICAgICAgICAoN1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNCX0VQNVJfQ1RSX1RYX01zayAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBVU0JfRVA1Ul9DVFJfVFhfUG9zKSAgICAvKiE8IDB4MDAwMDAwODAgKi8NCiNkZWZpbmUgVVNCX0VQNVJfQ1RSX1RYICAgICAgICAgICAgICAgICAgICAgICBVU0JfRVA1Ul9DVFJfVFhfTXNrICAgICAgICAgICAgICAvKiE8Q29ycmVjdCBUcmFuc2ZlciBmb3IgdHJhbnNtaXNzaW9uICovDQojZGVmaW5lIFVTQl9FUDVSX0VQX0tJTkRfUG9zICAgICAgICAgICAgICAgICAgKDhVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQl9FUDVSX0VQX0tJTkRfTXNrICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVVNCX0VQNVJfRVBfS0lORF9Qb3MpICAgLyohPCAweDAwMDAwMTAwICovDQojZGVmaW5lIFVTQl9FUDVSX0VQX0tJTkQgICAgICAgICAgICAgICAgICAgICAgVVNCX0VQNVJfRVBfS0lORF9Nc2sgICAgICAgICAgICAgLyohPEVuZHBvaW50IEtpbmQgKi8NCg0KI2RlZmluZSBVU0JfRVA1Ul9FUF9UWVBFX1BvcyAgICAgICAgICAgICAgICAgICg5VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0JfRVA1Ul9FUF9UWVBFX01zayAgICAgICAgICAgICAgICAgICgweDNVIDw8IFVTQl9FUDVSX0VQX1RZUEVfUG9zKSAgIC8qITwgMHgwMDAwMDYwMCAqLw0KI2RlZmluZSBVU0JfRVA1Ul9FUF9UWVBFICAgICAgICAgICAgICAgICAgICAgIFVTQl9FUDVSX0VQX1RZUEVfTXNrICAgICAgICAgICAgIC8qITxFUF9UWVBFWzE6MF0gYml0cyAoRW5kcG9pbnQgdHlwZSkgKi8NCiNkZWZpbmUgVVNCX0VQNVJfRVBfVFlQRV8wICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBVU0JfRVA1Ul9FUF9UWVBFX1BvcykgICAvKiE8IDB4MDAwMDAyMDAgKi8NCiNkZWZpbmUgVVNCX0VQNVJfRVBfVFlQRV8xICAgICAgICAgICAgICAgICAgICAoMHgyVSA8PCBVU0JfRVA1Ul9FUF9UWVBFX1BvcykgICAvKiE8IDB4MDAwMDA0MDAgKi8NCg0KI2RlZmluZSBVU0JfRVA1Ul9TRVRVUF9Qb3MgICAgICAgICAgICAgICAgICAgICgxMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0JfRVA1Ul9TRVRVUF9Nc2sgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFVTQl9FUDVSX1NFVFVQX1BvcykgICAgIC8qITwgMHgwMDAwMDgwMCAqLw0KI2RlZmluZSBVU0JfRVA1Ul9TRVRVUCAgICAgICAgICAgICAgICAgICAgICAgIFVTQl9FUDVSX1NFVFVQX01zayAgICAgICAgICAgICAgIC8qITxTZXR1cCB0cmFuc2FjdGlvbiBjb21wbGV0ZWQgKi8NCg0KI2RlZmluZSBVU0JfRVA1Ul9TVEFUX1JYX1BvcyAgICAgICAgICAgICAgICAgICgxMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0JfRVA1Ul9TVEFUX1JYX01zayAgICAgICAgICAgICAgICAgICgweDNVIDw8IFVTQl9FUDVSX1NUQVRfUlhfUG9zKSAgIC8qITwgMHgwMDAwMzAwMCAqLw0KI2RlZmluZSBVU0JfRVA1Ul9TVEFUX1JYICAgICAgICAgICAgICAgICAgICAgIFVTQl9FUDVSX1NUQVRfUlhfTXNrICAgICAgICAgICAgIC8qITxTVEFUX1JYWzE6MF0gYml0cyAoU3RhdHVzIGJpdHMsIGZvciByZWNlcHRpb24gdHJhbnNmZXJzKSAqLw0KI2RlZmluZSBVU0JfRVA1Ul9TVEFUX1JYXzAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFVTQl9FUDVSX1NUQVRfUlhfUG9zKSAgIC8qITwgMHgwMDAwMTAwMCAqLw0KI2RlZmluZSBVU0JfRVA1Ul9TVEFUX1JYXzEgICAgICAgICAgICAgICAgICAgICgweDJVIDw8IFVTQl9FUDVSX1NUQVRfUlhfUG9zKSAgIC8qITwgMHgwMDAwMjAwMCAqLw0KDQojZGVmaW5lIFVTQl9FUDVSX0RUT0dfUlhfUG9zICAgICAgICAgICAgICAgICAgKDE0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQl9FUDVSX0RUT0dfUlhfTXNrICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVVNCX0VQNVJfRFRPR19SWF9Qb3MpICAgLyohPCAweDAwMDA0MDAwICovDQojZGVmaW5lIFVTQl9FUDVSX0RUT0dfUlggICAgICAgICAgICAgICAgICAgICAgVVNCX0VQNVJfRFRPR19SWF9Nc2sgICAgICAgICAgICAgLyohPERhdGEgVG9nZ2xlLCBmb3IgcmVjZXB0aW9uIHRyYW5zZmVycyAqLw0KI2RlZmluZSBVU0JfRVA1Ul9DVFJfUlhfUG9zICAgICAgICAgICAgICAgICAgICgxNVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0JfRVA1Ul9DVFJfUlhfTXNrICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFVTQl9FUDVSX0NUUl9SWF9Qb3MpICAgIC8qITwgMHgwMDAwODAwMCAqLw0KI2RlZmluZSBVU0JfRVA1Ul9DVFJfUlggICAgICAgICAgICAgICAgICAgICAgIFVTQl9FUDVSX0NUUl9SWF9Nc2sgICAgICAgICAgICAgIC8qITxDb3JyZWN0IFRyYW5zZmVyIGZvciByZWNlcHRpb24gKi8NCg0KLyoqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBVU0JfRVA2UiByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgVVNCX0VQNlJfRUFfUG9zICAgICAgICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNCX0VQNlJfRUFfTXNrICAgICAgICAgICAgICAgICAgICAgICAoMHhGVSA8PCBVU0JfRVA2Ul9FQV9Qb3MpICAgICAgICAvKiE8IDB4MDAwMDAwMEYgKi8NCiNkZWZpbmUgVVNCX0VQNlJfRUEgICAgICAgICAgICAgICAgICAgICAgICAgICBVU0JfRVA2Ul9FQV9Nc2sgICAgICAgICAgICAgICAgICAvKiE8RW5kcG9pbnQgQWRkcmVzcyAqLw0KDQojZGVmaW5lIFVTQl9FUDZSX1NUQVRfVFhfUG9zICAgICAgICAgICAgICAgICAgKDRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQl9FUDZSX1NUQVRfVFhfTXNrICAgICAgICAgICAgICAgICAgKDB4M1UgPDwgVVNCX0VQNlJfU1RBVF9UWF9Qb3MpICAgLyohPCAweDAwMDAwMDMwICovDQojZGVmaW5lIFVTQl9FUDZSX1NUQVRfVFggICAgICAgICAgICAgICAgICAgICAgVVNCX0VQNlJfU1RBVF9UWF9Nc2sgICAgICAgICAgICAgLyohPFNUQVRfVFhbMTowXSBiaXRzIChTdGF0dXMgYml0cywgZm9yIHRyYW5zbWlzc2lvbiB0cmFuc2ZlcnMpICovDQojZGVmaW5lIFVTQl9FUDZSX1NUQVRfVFhfMCAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVVNCX0VQNlJfU1RBVF9UWF9Qb3MpICAgLyohPCAweDAwMDAwMDEwICovDQojZGVmaW5lIFVTQl9FUDZSX1NUQVRfVFhfMSAgICAgICAgICAgICAgICAgICAgKDB4MlUgPDwgVVNCX0VQNlJfU1RBVF9UWF9Qb3MpICAgLyohPCAweDAwMDAwMDIwICovDQoNCiNkZWZpbmUgVVNCX0VQNlJfRFRPR19UWF9Qb3MgICAgICAgICAgICAgICAgICAoNlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNCX0VQNlJfRFRPR19UWF9Nc2sgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBVU0JfRVA2Ul9EVE9HX1RYX1BvcykgICAvKiE8IDB4MDAwMDAwNDAgKi8NCiNkZWZpbmUgVVNCX0VQNlJfRFRPR19UWCAgICAgICAgICAgICAgICAgICAgICBVU0JfRVA2Ul9EVE9HX1RYX01zayAgICAgICAgICAgICAvKiE8RGF0YSBUb2dnbGUsIGZvciB0cmFuc21pc3Npb24gdHJhbnNmZXJzICovDQojZGVmaW5lIFVTQl9FUDZSX0NUUl9UWF9Qb3MgICAgICAgICAgICAgICAgICAgKDdVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQl9FUDZSX0NUUl9UWF9Nc2sgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVVNCX0VQNlJfQ1RSX1RYX1BvcykgICAgLyohPCAweDAwMDAwMDgwICovDQojZGVmaW5lIFVTQl9FUDZSX0NUUl9UWCAgICAgICAgICAgICAgICAgICAgICAgVVNCX0VQNlJfQ1RSX1RYX01zayAgICAgICAgICAgICAgLyohPENvcnJlY3QgVHJhbnNmZXIgZm9yIHRyYW5zbWlzc2lvbiAqLw0KI2RlZmluZSBVU0JfRVA2Ul9FUF9LSU5EX1BvcyAgICAgICAgICAgICAgICAgICg4VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0JfRVA2Ul9FUF9LSU5EX01zayAgICAgICAgICAgICAgICAgICgweDFVIDw8IFVTQl9FUDZSX0VQX0tJTkRfUG9zKSAgIC8qITwgMHgwMDAwMDEwMCAqLw0KI2RlZmluZSBVU0JfRVA2Ul9FUF9LSU5EICAgICAgICAgICAgICAgICAgICAgIFVTQl9FUDZSX0VQX0tJTkRfTXNrICAgICAgICAgICAgIC8qITxFbmRwb2ludCBLaW5kICovDQoNCiNkZWZpbmUgVVNCX0VQNlJfRVBfVFlQRV9Qb3MgICAgICAgICAgICAgICAgICAoOVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNCX0VQNlJfRVBfVFlQRV9Nc2sgICAgICAgICAgICAgICAgICAoMHgzVSA8PCBVU0JfRVA2Ul9FUF9UWVBFX1BvcykgICAvKiE8IDB4MDAwMDA2MDAgKi8NCiNkZWZpbmUgVVNCX0VQNlJfRVBfVFlQRSAgICAgICAgICAgICAgICAgICAgICBVU0JfRVA2Ul9FUF9UWVBFX01zayAgICAgICAgICAgICAvKiE8RVBfVFlQRVsxOjBdIGJpdHMgKEVuZHBvaW50IHR5cGUpICovDQojZGVmaW5lIFVTQl9FUDZSX0VQX1RZUEVfMCAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVVNCX0VQNlJfRVBfVFlQRV9Qb3MpICAgLyohPCAweDAwMDAwMjAwICovDQojZGVmaW5lIFVTQl9FUDZSX0VQX1RZUEVfMSAgICAgICAgICAgICAgICAgICAgKDB4MlUgPDwgVVNCX0VQNlJfRVBfVFlQRV9Qb3MpICAgLyohPCAweDAwMDAwNDAwICovDQoNCiNkZWZpbmUgVVNCX0VQNlJfU0VUVVBfUG9zICAgICAgICAgICAgICAgICAgICAoMTFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNCX0VQNlJfU0VUVVBfTXNrICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBVU0JfRVA2Ul9TRVRVUF9Qb3MpICAgICAvKiE8IDB4MDAwMDA4MDAgKi8NCiNkZWZpbmUgVVNCX0VQNlJfU0VUVVAgICAgICAgICAgICAgICAgICAgICAgICBVU0JfRVA2Ul9TRVRVUF9Nc2sgICAgICAgICAgICAgICAvKiE8U2V0dXAgdHJhbnNhY3Rpb24gY29tcGxldGVkICovDQoNCiNkZWZpbmUgVVNCX0VQNlJfU1RBVF9SWF9Qb3MgICAgICAgICAgICAgICAgICAoMTJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNCX0VQNlJfU1RBVF9SWF9Nc2sgICAgICAgICAgICAgICAgICAoMHgzVSA8PCBVU0JfRVA2Ul9TVEFUX1JYX1BvcykgICAvKiE8IDB4MDAwMDMwMDAgKi8NCiNkZWZpbmUgVVNCX0VQNlJfU1RBVF9SWCAgICAgICAgICAgICAgICAgICAgICBVU0JfRVA2Ul9TVEFUX1JYX01zayAgICAgICAgICAgICAvKiE8U1RBVF9SWFsxOjBdIGJpdHMgKFN0YXR1cyBiaXRzLCBmb3IgcmVjZXB0aW9uIHRyYW5zZmVycykgKi8NCiNkZWZpbmUgVVNCX0VQNlJfU1RBVF9SWF8wICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBVU0JfRVA2Ul9TVEFUX1JYX1BvcykgICAvKiE8IDB4MDAwMDEwMDAgKi8NCiNkZWZpbmUgVVNCX0VQNlJfU1RBVF9SWF8xICAgICAgICAgICAgICAgICAgICAoMHgyVSA8PCBVU0JfRVA2Ul9TVEFUX1JYX1BvcykgICAvKiE8IDB4MDAwMDIwMDAgKi8NCg0KI2RlZmluZSBVU0JfRVA2Ul9EVE9HX1JYX1BvcyAgICAgICAgICAgICAgICAgICgxNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0JfRVA2Ul9EVE9HX1JYX01zayAgICAgICAgICAgICAgICAgICgweDFVIDw8IFVTQl9FUDZSX0RUT0dfUlhfUG9zKSAgIC8qITwgMHgwMDAwNDAwMCAqLw0KI2RlZmluZSBVU0JfRVA2Ul9EVE9HX1JYICAgICAgICAgICAgICAgICAgICAgIFVTQl9FUDZSX0RUT0dfUlhfTXNrICAgICAgICAgICAgIC8qITxEYXRhIFRvZ2dsZSwgZm9yIHJlY2VwdGlvbiB0cmFuc2ZlcnMgKi8NCiNkZWZpbmUgVVNCX0VQNlJfQ1RSX1JYX1BvcyAgICAgICAgICAgICAgICAgICAoMTVVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNCX0VQNlJfQ1RSX1JYX01zayAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBVU0JfRVA2Ul9DVFJfUlhfUG9zKSAgICAvKiE8IDB4MDAwMDgwMDAgKi8NCiNkZWZpbmUgVVNCX0VQNlJfQ1RSX1JYICAgICAgICAgICAgICAgICAgICAgICBVU0JfRVA2Ul9DVFJfUlhfTXNrICAgICAgICAgICAgICAvKiE8Q29ycmVjdCBUcmFuc2ZlciBmb3IgcmVjZXB0aW9uICovDQoNCi8qKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgVVNCX0VQN1IgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIFVTQl9FUDdSX0VBX1BvcyAgICAgICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQl9FUDdSX0VBX01zayAgICAgICAgICAgICAgICAgICAgICAgKDB4RlUgPDwgVVNCX0VQN1JfRUFfUG9zKSAgICAgICAgLyohPCAweDAwMDAwMDBGICovDQojZGVmaW5lIFVTQl9FUDdSX0VBICAgICAgICAgICAgICAgICAgICAgICAgICAgVVNCX0VQN1JfRUFfTXNrICAgICAgICAgICAgICAgICAgLyohPEVuZHBvaW50IEFkZHJlc3MgKi8NCg0KI2RlZmluZSBVU0JfRVA3Ul9TVEFUX1RYX1BvcyAgICAgICAgICAgICAgICAgICg0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0JfRVA3Ul9TVEFUX1RYX01zayAgICAgICAgICAgICAgICAgICgweDNVIDw8IFVTQl9FUDdSX1NUQVRfVFhfUG9zKSAgIC8qITwgMHgwMDAwMDAzMCAqLw0KI2RlZmluZSBVU0JfRVA3Ul9TVEFUX1RYICAgICAgICAgICAgICAgICAgICAgIFVTQl9FUDdSX1NUQVRfVFhfTXNrICAgICAgICAgICAgIC8qITxTVEFUX1RYWzE6MF0gYml0cyAoU3RhdHVzIGJpdHMsIGZvciB0cmFuc21pc3Npb24gdHJhbnNmZXJzKSAqLw0KI2RlZmluZSBVU0JfRVA3Ul9TVEFUX1RYXzAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFVTQl9FUDdSX1NUQVRfVFhfUG9zKSAgIC8qITwgMHgwMDAwMDAxMCAqLw0KI2RlZmluZSBVU0JfRVA3Ul9TVEFUX1RYXzEgICAgICAgICAgICAgICAgICAgICgweDJVIDw8IFVTQl9FUDdSX1NUQVRfVFhfUG9zKSAgIC8qITwgMHgwMDAwMDAyMCAqLw0KDQojZGVmaW5lIFVTQl9FUDdSX0RUT0dfVFhfUG9zICAgICAgICAgICAgICAgICAgKDZVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQl9FUDdSX0RUT0dfVFhfTXNrICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVVNCX0VQN1JfRFRPR19UWF9Qb3MpICAgLyohPCAweDAwMDAwMDQwICovDQojZGVmaW5lIFVTQl9FUDdSX0RUT0dfVFggICAgICAgICAgICAgICAgICAgICAgVVNCX0VQN1JfRFRPR19UWF9Nc2sgICAgICAgICAgICAgLyohPERhdGEgVG9nZ2xlLCBmb3IgdHJhbnNtaXNzaW9uIHRyYW5zZmVycyAqLw0KI2RlZmluZSBVU0JfRVA3Ul9DVFJfVFhfUG9zICAgICAgICAgICAgICAgICAgICg3VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0JfRVA3Ul9DVFJfVFhfTXNrICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFVTQl9FUDdSX0NUUl9UWF9Qb3MpICAgIC8qITwgMHgwMDAwMDA4MCAqLw0KI2RlZmluZSBVU0JfRVA3Ul9DVFJfVFggICAgICAgICAgICAgICAgICAgICAgIFVTQl9FUDdSX0NUUl9UWF9Nc2sgICAgICAgICAgICAgIC8qITxDb3JyZWN0IFRyYW5zZmVyIGZvciB0cmFuc21pc3Npb24gKi8NCiNkZWZpbmUgVVNCX0VQN1JfRVBfS0lORF9Qb3MgICAgICAgICAgICAgICAgICAoOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNCX0VQN1JfRVBfS0lORF9Nc2sgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBVU0JfRVA3Ul9FUF9LSU5EX1BvcykgICAvKiE8IDB4MDAwMDAxMDAgKi8NCiNkZWZpbmUgVVNCX0VQN1JfRVBfS0lORCAgICAgICAgICAgICAgICAgICAgICBVU0JfRVA3Ul9FUF9LSU5EX01zayAgICAgICAgICAgICAvKiE8RW5kcG9pbnQgS2luZCAqLw0KDQojZGVmaW5lIFVTQl9FUDdSX0VQX1RZUEVfUG9zICAgICAgICAgICAgICAgICAgKDlVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQl9FUDdSX0VQX1RZUEVfTXNrICAgICAgICAgICAgICAgICAgKDB4M1UgPDwgVVNCX0VQN1JfRVBfVFlQRV9Qb3MpICAgLyohPCAweDAwMDAwNjAwICovDQojZGVmaW5lIFVTQl9FUDdSX0VQX1RZUEUgICAgICAgICAgICAgICAgICAgICAgVVNCX0VQN1JfRVBfVFlQRV9Nc2sgICAgICAgICAgICAgLyohPEVQX1RZUEVbMTowXSBiaXRzIChFbmRwb2ludCB0eXBlKSAqLw0KI2RlZmluZSBVU0JfRVA3Ul9FUF9UWVBFXzAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFVTQl9FUDdSX0VQX1RZUEVfUG9zKSAgIC8qITwgMHgwMDAwMDIwMCAqLw0KI2RlZmluZSBVU0JfRVA3Ul9FUF9UWVBFXzEgICAgICAgICAgICAgICAgICAgICgweDJVIDw8IFVTQl9FUDdSX0VQX1RZUEVfUG9zKSAgIC8qITwgMHgwMDAwMDQwMCAqLw0KDQojZGVmaW5lIFVTQl9FUDdSX1NFVFVQX1BvcyAgICAgICAgICAgICAgICAgICAgKDExVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQl9FUDdSX1NFVFVQX01zayAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVVNCX0VQN1JfU0VUVVBfUG9zKSAgICAgLyohPCAweDAwMDAwODAwICovDQojZGVmaW5lIFVTQl9FUDdSX1NFVFVQICAgICAgICAgICAgICAgICAgICAgICAgVVNCX0VQN1JfU0VUVVBfTXNrICAgICAgICAgICAgICAgLyohPFNldHVwIHRyYW5zYWN0aW9uIGNvbXBsZXRlZCAqLw0KDQojZGVmaW5lIFVTQl9FUDdSX1NUQVRfUlhfUG9zICAgICAgICAgICAgICAgICAgKDEyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQl9FUDdSX1NUQVRfUlhfTXNrICAgICAgICAgICAgICAgICAgKDB4M1UgPDwgVVNCX0VQN1JfU1RBVF9SWF9Qb3MpICAgLyohPCAweDAwMDAzMDAwICovDQojZGVmaW5lIFVTQl9FUDdSX1NUQVRfUlggICAgICAgICAgICAgICAgICAgICAgVVNCX0VQN1JfU1RBVF9SWF9Nc2sgICAgICAgICAgICAgLyohPFNUQVRfUlhbMTowXSBiaXRzIChTdGF0dXMgYml0cywgZm9yIHJlY2VwdGlvbiB0cmFuc2ZlcnMpICovDQojZGVmaW5lIFVTQl9FUDdSX1NUQVRfUlhfMCAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVVNCX0VQN1JfU1RBVF9SWF9Qb3MpICAgLyohPCAweDAwMDAxMDAwICovDQojZGVmaW5lIFVTQl9FUDdSX1NUQVRfUlhfMSAgICAgICAgICAgICAgICAgICAgKDB4MlUgPDwgVVNCX0VQN1JfU1RBVF9SWF9Qb3MpICAgLyohPCAweDAwMDAyMDAwICovDQoNCiNkZWZpbmUgVVNCX0VQN1JfRFRPR19SWF9Qb3MgICAgICAgICAgICAgICAgICAoMTRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNCX0VQN1JfRFRPR19SWF9Nc2sgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBVU0JfRVA3Ul9EVE9HX1JYX1BvcykgICAvKiE8IDB4MDAwMDQwMDAgKi8NCiNkZWZpbmUgVVNCX0VQN1JfRFRPR19SWCAgICAgICAgICAgICAgICAgICAgICBVU0JfRVA3Ul9EVE9HX1JYX01zayAgICAgICAgICAgICAvKiE8RGF0YSBUb2dnbGUsIGZvciByZWNlcHRpb24gdHJhbnNmZXJzICovDQojZGVmaW5lIFVTQl9FUDdSX0NUUl9SWF9Qb3MgICAgICAgICAgICAgICAgICAgKDE1VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQl9FUDdSX0NUUl9SWF9Nc2sgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVVNCX0VQN1JfQ1RSX1JYX1BvcykgICAgLyohPCAweDAwMDA4MDAwICovDQojZGVmaW5lIFVTQl9FUDdSX0NUUl9SWCAgICAgICAgICAgICAgICAgICAgICAgVVNCX0VQN1JfQ1RSX1JYX01zayAgICAgICAgICAgICAgLyohPENvcnJlY3QgVHJhbnNmZXIgZm9yIHJlY2VwdGlvbiAqLw0KDQovKiE8Q29tbW9uIHJlZ2lzdGVycyAqLw0KDQojZGVmaW5lICBVU0JfQ05UUiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKFVTQl9CQVNFICsgMHgwMDAwMDA0MFUpICAgICAgICAgIC8qITwgQ29udHJvbCByZWdpc3RlciAqLw0KI2RlZmluZSAgVVNCX0lTVFIgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChVU0JfQkFTRSArIDB4MDAwMDAwNDRVKSAgICAgICAgICAvKiE8IEludGVycnVwdCBzdGF0dXMgcmVnaXN0ZXIgKi8NCiNkZWZpbmUgIFVTQl9GTlIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoVVNCX0JBU0UgKyAweDAwMDAwMDQ4VSkgICAgICAgICAgLyohPCBGcmFtZSBudW1iZXIgcmVnaXN0ZXIgKi8NCiNkZWZpbmUgIFVTQl9EQUREUiAgICAgICAgICAgICAgICAgICAgICAgICAgICAoVVNCX0JBU0UgKyAweDAwMDAwMDRDVSkgICAgICAgICAgLyohPCBEZXZpY2UgYWRkcmVzcyByZWdpc3RlciAqLw0KI2RlZmluZSAgVVNCX0JUQUJMRSAgICAgICAgICAgICAgICAgICAgICAgICAgIChVU0JfQkFTRSArIDB4MDAwMDAwNTBVKSAgICAgICAgICAvKiE8IEJ1ZmZlciBUYWJsZSBhZGRyZXNzIHJlZ2lzdGVyICovDQoNCg0KDQovKioqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFVTQl9DTlRSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBVU0JfQ05UUl9GUkVTX1BvcyAgICAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0JfQ05UUl9GUkVTX01zayAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFVTQl9DTlRSX0ZSRVNfUG9zKSAgICAgIC8qITwgMHgwMDAwMDAwMSAqLw0KI2RlZmluZSBVU0JfQ05UUl9GUkVTICAgICAgICAgICAgICAgICAgICAgICAgIFVTQl9DTlRSX0ZSRVNfTXNrICAgICAgICAgICAgICAgIC8qITxGb3JjZSBVU0IgUmVzZXQgKi8NCiNkZWZpbmUgVVNCX0NOVFJfUERXTl9Qb3MgICAgICAgICAgICAgICAgICAgICAoMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNCX0NOVFJfUERXTl9Nc2sgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBVU0JfQ05UUl9QRFdOX1BvcykgICAgICAvKiE8IDB4MDAwMDAwMDIgKi8NCiNkZWZpbmUgVVNCX0NOVFJfUERXTiAgICAgICAgICAgICAgICAgICAgICAgICBVU0JfQ05UUl9QRFdOX01zayAgICAgICAgICAgICAgICAvKiE8UG93ZXIgZG93biAqLw0KI2RlZmluZSBVU0JfQ05UUl9MUE1PREVfUG9zICAgICAgICAgICAgICAgICAgICgyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0JfQ05UUl9MUE1PREVfTXNrICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFVTQl9DTlRSX0xQTU9ERV9Qb3MpICAgIC8qITwgMHgwMDAwMDAwNCAqLw0KI2RlZmluZSBVU0JfQ05UUl9MUE1PREUgICAgICAgICAgICAgICAgICAgICAgIFVTQl9DTlRSX0xQTU9ERV9Nc2sgICAgICAgICAgICAgIC8qITxMb3ctcG93ZXIgbW9kZSAqLw0KI2RlZmluZSBVU0JfQ05UUl9GU1VTUF9Qb3MgICAgICAgICAgICAgICAgICAgICgzVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0JfQ05UUl9GU1VTUF9Nc2sgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFVTQl9DTlRSX0ZTVVNQX1BvcykgICAgIC8qITwgMHgwMDAwMDAwOCAqLw0KI2RlZmluZSBVU0JfQ05UUl9GU1VTUCAgICAgICAgICAgICAgICAgICAgICAgIFVTQl9DTlRSX0ZTVVNQX01zayAgICAgICAgICAgICAgIC8qITxGb3JjZSBzdXNwZW5kICovDQojZGVmaW5lIFVTQl9DTlRSX1JFU1VNRV9Qb3MgICAgICAgICAgICAgICAgICAgKDRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQl9DTlRSX1JFU1VNRV9Nc2sgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVVNCX0NOVFJfUkVTVU1FX1BvcykgICAgLyohPCAweDAwMDAwMDEwICovDQojZGVmaW5lIFVTQl9DTlRSX1JFU1VNRSAgICAgICAgICAgICAgICAgICAgICAgVVNCX0NOVFJfUkVTVU1FX01zayAgICAgICAgICAgICAgLyohPFJlc3VtZSByZXF1ZXN0ICovDQojZGVmaW5lIFVTQl9DTlRSX0VTT0ZNX1BvcyAgICAgICAgICAgICAgICAgICAgKDhVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQl9DTlRSX0VTT0ZNX01zayAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVVNCX0NOVFJfRVNPRk1fUG9zKSAgICAgLyohPCAweDAwMDAwMTAwICovDQojZGVmaW5lIFVTQl9DTlRSX0VTT0ZNICAgICAgICAgICAgICAgICAgICAgICAgVVNCX0NOVFJfRVNPRk1fTXNrICAgICAgICAgICAgICAgLyohPEV4cGVjdGVkIFN0YXJ0IE9mIEZyYW1lIEludGVycnVwdCBNYXNrICovDQojZGVmaW5lIFVTQl9DTlRSX1NPRk1fUG9zICAgICAgICAgICAgICAgICAgICAgKDlVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQl9DTlRSX1NPRk1fTXNrICAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVVNCX0NOVFJfU09GTV9Qb3MpICAgICAgLyohPCAweDAwMDAwMjAwICovDQojZGVmaW5lIFVTQl9DTlRSX1NPRk0gICAgICAgICAgICAgICAgICAgICAgICAgVVNCX0NOVFJfU09GTV9Nc2sgICAgICAgICAgICAgICAgLyohPFN0YXJ0IE9mIEZyYW1lIEludGVycnVwdCBNYXNrICovDQojZGVmaW5lIFVTQl9DTlRSX1JFU0VUTV9Qb3MgICAgICAgICAgICAgICAgICAgKDEwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQl9DTlRSX1JFU0VUTV9Nc2sgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVVNCX0NOVFJfUkVTRVRNX1BvcykgICAgLyohPCAweDAwMDAwNDAwICovDQojZGVmaW5lIFVTQl9DTlRSX1JFU0VUTSAgICAgICAgICAgICAgICAgICAgICAgVVNCX0NOVFJfUkVTRVRNX01zayAgICAgICAgICAgICAgLyohPFJFU0VUIEludGVycnVwdCBNYXNrICovDQojZGVmaW5lIFVTQl9DTlRSX1NVU1BNX1BvcyAgICAgICAgICAgICAgICAgICAgKDExVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQl9DTlRSX1NVU1BNX01zayAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVVNCX0NOVFJfU1VTUE1fUG9zKSAgICAgLyohPCAweDAwMDAwODAwICovDQojZGVmaW5lIFVTQl9DTlRSX1NVU1BNICAgICAgICAgICAgICAgICAgICAgICAgVVNCX0NOVFJfU1VTUE1fTXNrICAgICAgICAgICAgICAgLyohPFN1c3BlbmQgbW9kZSBJbnRlcnJ1cHQgTWFzayAqLw0KI2RlZmluZSBVU0JfQ05UUl9XS1VQTV9Qb3MgICAgICAgICAgICAgICAgICAgICgxMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0JfQ05UUl9XS1VQTV9Nc2sgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFVTQl9DTlRSX1dLVVBNX1BvcykgICAgIC8qITwgMHgwMDAwMTAwMCAqLw0KI2RlZmluZSBVU0JfQ05UUl9XS1VQTSAgICAgICAgICAgICAgICAgICAgICAgIFVTQl9DTlRSX1dLVVBNX01zayAgICAgICAgICAgICAgIC8qITxXYWtldXAgSW50ZXJydXB0IE1hc2sgKi8NCiNkZWZpbmUgVVNCX0NOVFJfRVJSTV9Qb3MgICAgICAgICAgICAgICAgICAgICAoMTNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNCX0NOVFJfRVJSTV9Nc2sgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBVU0JfQ05UUl9FUlJNX1BvcykgICAgICAvKiE8IDB4MDAwMDIwMDAgKi8NCiNkZWZpbmUgVVNCX0NOVFJfRVJSTSAgICAgICAgICAgICAgICAgICAgICAgICBVU0JfQ05UUl9FUlJNX01zayAgICAgICAgICAgICAgICAvKiE8RXJyb3IgSW50ZXJydXB0IE1hc2sgKi8NCiNkZWZpbmUgVVNCX0NOVFJfUE1BT1ZSTV9Qb3MgICAgICAgICAgICAgICAgICAoMTRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNCX0NOVFJfUE1BT1ZSTV9Nc2sgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBVU0JfQ05UUl9QTUFPVlJNX1BvcykgICAvKiE8IDB4MDAwMDQwMDAgKi8NCiNkZWZpbmUgVVNCX0NOVFJfUE1BT1ZSTSAgICAgICAgICAgICAgICAgICAgICBVU0JfQ05UUl9QTUFPVlJNX01zayAgICAgICAgICAgICAvKiE8UGFja2V0IE1lbW9yeSBBcmVhIE92ZXIgLyBVbmRlcnJ1biBJbnRlcnJ1cHQgTWFzayAqLw0KI2RlZmluZSBVU0JfQ05UUl9DVFJNX1BvcyAgICAgICAgICAgICAgICAgICAgICgxNVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0JfQ05UUl9DVFJNX01zayAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFVTQl9DTlRSX0NUUk1fUG9zKSAgICAgIC8qITwgMHgwMDAwODAwMCAqLw0KI2RlZmluZSBVU0JfQ05UUl9DVFJNICAgICAgICAgICAgICAgICAgICAgICAgIFVTQl9DTlRSX0NUUk1fTXNrICAgICAgICAgICAgICAgIC8qITxDb3JyZWN0IFRyYW5zZmVyIEludGVycnVwdCBNYXNrICovDQoNCi8qKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgVVNCX0lTVFIgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIFVTQl9JU1RSX0VQX0lEX1BvcyAgICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQl9JU1RSX0VQX0lEX01zayAgICAgICAgICAgICAgICAgICAgKDB4RlUgPDwgVVNCX0lTVFJfRVBfSURfUG9zKSAgICAgLyohPCAweDAwMDAwMDBGICovDQojZGVmaW5lIFVTQl9JU1RSX0VQX0lEICAgICAgICAgICAgICAgICAgICAgICAgVVNCX0lTVFJfRVBfSURfTXNrICAgICAgICAgICAgICAgLyohPEVuZHBvaW50IElkZW50aWZpZXIgKi8NCiNkZWZpbmUgVVNCX0lTVFJfRElSX1BvcyAgICAgICAgICAgICAgICAgICAgICAoNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNCX0lTVFJfRElSX01zayAgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBVU0JfSVNUUl9ESVJfUG9zKSAgICAgICAvKiE8IDB4MDAwMDAwMTAgKi8NCiNkZWZpbmUgVVNCX0lTVFJfRElSICAgICAgICAgICAgICAgICAgICAgICAgICBVU0JfSVNUUl9ESVJfTXNrICAgICAgICAgICAgICAgICAvKiE8RGlyZWN0aW9uIG9mIHRyYW5zYWN0aW9uICovDQojZGVmaW5lIFVTQl9JU1RSX0VTT0ZfUG9zICAgICAgICAgICAgICAgICAgICAgKDhVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQl9JU1RSX0VTT0ZfTXNrICAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVVNCX0lTVFJfRVNPRl9Qb3MpICAgICAgLyohPCAweDAwMDAwMTAwICovDQojZGVmaW5lIFVTQl9JU1RSX0VTT0YgICAgICAgICAgICAgICAgICAgICAgICAgVVNCX0lTVFJfRVNPRl9Nc2sgICAgICAgICAgICAgICAgLyohPEV4cGVjdGVkIFN0YXJ0IE9mIEZyYW1lICovDQojZGVmaW5lIFVTQl9JU1RSX1NPRl9Qb3MgICAgICAgICAgICAgICAgICAgICAgKDlVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQl9JU1RSX1NPRl9Nc2sgICAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVVNCX0lTVFJfU09GX1BvcykgICAgICAgLyohPCAweDAwMDAwMjAwICovDQojZGVmaW5lIFVTQl9JU1RSX1NPRiAgICAgICAgICAgICAgICAgICAgICAgICAgVVNCX0lTVFJfU09GX01zayAgICAgICAgICAgICAgICAgLyohPFN0YXJ0IE9mIEZyYW1lICovDQojZGVmaW5lIFVTQl9JU1RSX1JFU0VUX1BvcyAgICAgICAgICAgICAgICAgICAgKDEwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQl9JU1RSX1JFU0VUX01zayAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVVNCX0lTVFJfUkVTRVRfUG9zKSAgICAgLyohPCAweDAwMDAwNDAwICovDQojZGVmaW5lIFVTQl9JU1RSX1JFU0VUICAgICAgICAgICAgICAgICAgICAgICAgVVNCX0lTVFJfUkVTRVRfTXNrICAgICAgICAgICAgICAgLyohPFVTQiBSRVNFVCByZXF1ZXN0ICovDQojZGVmaW5lIFVTQl9JU1RSX1NVU1BfUG9zICAgICAgICAgICAgICAgICAgICAgKDExVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQl9JU1RSX1NVU1BfTXNrICAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVVNCX0lTVFJfU1VTUF9Qb3MpICAgICAgLyohPCAweDAwMDAwODAwICovDQojZGVmaW5lIFVTQl9JU1RSX1NVU1AgICAgICAgICAgICAgICAgICAgICAgICAgVVNCX0lTVFJfU1VTUF9Nc2sgICAgICAgICAgICAgICAgLyohPFN1c3BlbmQgbW9kZSByZXF1ZXN0ICovDQojZGVmaW5lIFVTQl9JU1RSX1dLVVBfUG9zICAgICAgICAgICAgICAgICAgICAgKDEyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQl9JU1RSX1dLVVBfTXNrICAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVVNCX0lTVFJfV0tVUF9Qb3MpICAgICAgLyohPCAweDAwMDAxMDAwICovDQojZGVmaW5lIFVTQl9JU1RSX1dLVVAgICAgICAgICAgICAgICAgICAgICAgICAgVVNCX0lTVFJfV0tVUF9Nc2sgICAgICAgICAgICAgICAgLyohPFdha2UgdXAgKi8NCiNkZWZpbmUgVVNCX0lTVFJfRVJSX1BvcyAgICAgICAgICAgICAgICAgICAgICAoMTNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNCX0lTVFJfRVJSX01zayAgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBVU0JfSVNUUl9FUlJfUG9zKSAgICAgICAvKiE8IDB4MDAwMDIwMDAgKi8NCiNkZWZpbmUgVVNCX0lTVFJfRVJSICAgICAgICAgICAgICAgICAgICAgICAgICBVU0JfSVNUUl9FUlJfTXNrICAgICAgICAgICAgICAgICAvKiE8RXJyb3IgKi8NCiNkZWZpbmUgVVNCX0lTVFJfUE1BT1ZSX1BvcyAgICAgICAgICAgICAgICAgICAoMTRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNCX0lTVFJfUE1BT1ZSX01zayAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBVU0JfSVNUUl9QTUFPVlJfUG9zKSAgICAvKiE8IDB4MDAwMDQwMDAgKi8NCiNkZWZpbmUgVVNCX0lTVFJfUE1BT1ZSICAgICAgICAgICAgICAgICAgICAgICBVU0JfSVNUUl9QTUFPVlJfTXNrICAgICAgICAgICAgICAvKiE8UGFja2V0IE1lbW9yeSBBcmVhIE92ZXIgLyBVbmRlcnJ1biAqLw0KI2RlZmluZSBVU0JfSVNUUl9DVFJfUG9zICAgICAgICAgICAgICAgICAgICAgICgxNVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0JfSVNUUl9DVFJfTXNrICAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFVTQl9JU1RSX0NUUl9Qb3MpICAgICAgIC8qITwgMHgwMDAwODAwMCAqLw0KI2RlZmluZSBVU0JfSVNUUl9DVFIgICAgICAgICAgICAgICAgICAgICAgICAgIFVTQl9JU1RSX0NUUl9Nc2sgICAgICAgICAgICAgICAgIC8qITxDb3JyZWN0IFRyYW5zZmVyICovDQoNCiNkZWZpbmUgIFVTQl9DTFJfQ1RSICAgICAgICAgICAgICAgICAgICAgICAgICAoflVTQl9JU1RSX0NUUikgICAgICAgICAgICAgICAgICAvKiE8IGNsZWFyIENvcnJlY3QgVFJhbnNmZXIgYml0ICovDQojZGVmaW5lICBVU0JfQ0xSX1BNQU9WUk0gICAgICAgICAgICAgICAgICAgICAgKH5VU0JfSVNUUl9QTUFPVlIpICAgICAgICAgICAgICAgLyohPCBjbGVhciBETUEgT1ZlUi91bmRlcnJ1biBiaXQqLw0KI2RlZmluZSAgVVNCX0NMUl9FUlIgICAgICAgICAgICAgICAgICAgICAgICAgICh+VVNCX0lTVFJfRVJSKSAgICAgICAgICAgICAgICAgIC8qITwgY2xlYXIgRVJSb3IgYml0ICovDQojZGVmaW5lICBVU0JfQ0xSX1dLVVAgICAgICAgICAgICAgICAgICAgICAgICAgKH5VU0JfSVNUUl9XS1VQKSAgICAgICAgICAgICAgICAgLyohPCBjbGVhciBXYUtlIFVQIGJpdCAqLw0KI2RlZmluZSAgVVNCX0NMUl9TVVNQICAgICAgICAgICAgICAgICAgICAgICAgICh+VVNCX0lTVFJfU1VTUCkgICAgICAgICAgICAgICAgIC8qITwgY2xlYXIgU1VTUGVuZCBiaXQgKi8NCiNkZWZpbmUgIFVTQl9DTFJfUkVTRVQgICAgICAgICAgICAgICAgICAgICAgICAoflVTQl9JU1RSX1JFU0VUKSAgICAgICAgICAgICAgICAvKiE8IGNsZWFyIFJFU0VUIGJpdCAqLw0KI2RlZmluZSAgVVNCX0NMUl9TT0YgICAgICAgICAgICAgICAgICAgICAgICAgICh+VVNCX0lTVFJfU09GKSAgICAgICAgICAgICAgICAgIC8qITwgY2xlYXIgU3RhcnQgT2YgRnJhbWUgYml0ICovDQojZGVmaW5lICBVU0JfQ0xSX0VTT0YgICAgICAgICAgICAgICAgICAgICAgICAgKH5VU0JfSVNUUl9FU09GKSAgICAgICAgICAgICAgICAgLyohPCBjbGVhciBFeHBlY3RlZCBTdGFydCBPZiBGcmFtZSBiaXQgKi8NCg0KDQovKioqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFVTQl9GTlIgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBVU0JfRk5SX0ZOX1BvcyAgICAgICAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0JfRk5SX0ZOX01zayAgICAgICAgICAgICAgICAgICAgICAgICgweDdGRlUgPDwgVVNCX0ZOUl9GTl9Qb3MpICAgICAgIC8qITwgMHgwMDAwMDdGRiAqLw0KI2RlZmluZSBVU0JfRk5SX0ZOICAgICAgICAgICAgICAgICAgICAgICAgICAgIFVTQl9GTlJfRk5fTXNrICAgICAgICAgICAgICAgICAgIC8qITxGcmFtZSBOdW1iZXIgKi8NCiNkZWZpbmUgVVNCX0ZOUl9MU09GX1BvcyAgICAgICAgICAgICAgICAgICAgICAoMTFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNCX0ZOUl9MU09GX01zayAgICAgICAgICAgICAgICAgICAgICAoMHgzVSA8PCBVU0JfRk5SX0xTT0ZfUG9zKSAgICAgICAvKiE8IDB4MDAwMDE4MDAgKi8NCiNkZWZpbmUgVVNCX0ZOUl9MU09GICAgICAgICAgICAgICAgICAgICAgICAgICBVU0JfRk5SX0xTT0ZfTXNrICAgICAgICAgICAgICAgICAvKiE8TG9zdCBTT0YgKi8NCiNkZWZpbmUgVVNCX0ZOUl9MQ0tfUG9zICAgICAgICAgICAgICAgICAgICAgICAoMTNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNCX0ZOUl9MQ0tfTXNrICAgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBVU0JfRk5SX0xDS19Qb3MpICAgICAgICAvKiE8IDB4MDAwMDIwMDAgKi8NCiNkZWZpbmUgVVNCX0ZOUl9MQ0sgICAgICAgICAgICAgICAgICAgICAgICAgICBVU0JfRk5SX0xDS19Nc2sgICAgICAgICAgICAgICAgICAvKiE8TG9ja2VkICovDQojZGVmaW5lIFVTQl9GTlJfUlhETV9Qb3MgICAgICAgICAgICAgICAgICAgICAgKDE0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQl9GTlJfUlhETV9Nc2sgICAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVVNCX0ZOUl9SWERNX1BvcykgICAgICAgLyohPCAweDAwMDA0MDAwICovDQojZGVmaW5lIFVTQl9GTlJfUlhETSAgICAgICAgICAgICAgICAgICAgICAgICAgVVNCX0ZOUl9SWERNX01zayAgICAgICAgICAgICAgICAgLyohPFJlY2VpdmUgRGF0YSAtIExpbmUgU3RhdHVzICovDQojZGVmaW5lIFVTQl9GTlJfUlhEUF9Qb3MgICAgICAgICAgICAgICAgICAgICAgKDE1VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQl9GTlJfUlhEUF9Nc2sgICAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVVNCX0ZOUl9SWERQX1BvcykgICAgICAgLyohPCAweDAwMDA4MDAwICovDQojZGVmaW5lIFVTQl9GTlJfUlhEUCAgICAgICAgICAgICAgICAgICAgICAgICAgVVNCX0ZOUl9SWERQX01zayAgICAgICAgICAgICAgICAgLyohPFJlY2VpdmUgRGF0YSArIExpbmUgU3RhdHVzICovDQoNCi8qKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBVU0JfREFERFIgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIFVTQl9EQUREUl9BRERfUG9zICAgICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQl9EQUREUl9BRERfTXNrICAgICAgICAgICAgICAgICAgICAgKDB4N0ZVIDw8IFVTQl9EQUREUl9BRERfUG9zKSAgICAgLyohPCAweDAwMDAwMDdGICovDQojZGVmaW5lIFVTQl9EQUREUl9BREQgICAgICAgICAgICAgICAgICAgICAgICAgVVNCX0RBRERSX0FERF9Nc2sgICAgICAgICAgICAgICAgLyohPEFERFs2OjBdIGJpdHMgKERldmljZSBBZGRyZXNzKSAqLw0KI2RlZmluZSBVU0JfREFERFJfQUREMF9Qb3MgICAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0JfREFERFJfQUREMF9Nc2sgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFVTQl9EQUREUl9BREQwX1BvcykgICAgIC8qITwgMHgwMDAwMDAwMSAqLw0KI2RlZmluZSBVU0JfREFERFJfQUREMCAgICAgICAgICAgICAgICAgICAgICAgIFVTQl9EQUREUl9BREQwX01zayAgICAgICAgICAgICAgIC8qITxCaXQgMCAqLw0KI2RlZmluZSBVU0JfREFERFJfQUREMV9Qb3MgICAgICAgICAgICAgICAgICAgICgxVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0JfREFERFJfQUREMV9Nc2sgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFVTQl9EQUREUl9BREQxX1BvcykgICAgIC8qITwgMHgwMDAwMDAwMiAqLw0KI2RlZmluZSBVU0JfREFERFJfQUREMSAgICAgICAgICAgICAgICAgICAgICAgIFVTQl9EQUREUl9BREQxX01zayAgICAgICAgICAgICAgIC8qITxCaXQgMSAqLw0KI2RlZmluZSBVU0JfREFERFJfQUREMl9Qb3MgICAgICAgICAgICAgICAgICAgICgyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0JfREFERFJfQUREMl9Nc2sgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFVTQl9EQUREUl9BREQyX1BvcykgICAgIC8qITwgMHgwMDAwMDAwNCAqLw0KI2RlZmluZSBVU0JfREFERFJfQUREMiAgICAgICAgICAgICAgICAgICAgICAgIFVTQl9EQUREUl9BREQyX01zayAgICAgICAgICAgICAgIC8qITxCaXQgMiAqLw0KI2RlZmluZSBVU0JfREFERFJfQUREM19Qb3MgICAgICAgICAgICAgICAgICAgICgzVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0JfREFERFJfQUREM19Nc2sgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFVTQl9EQUREUl9BREQzX1BvcykgICAgIC8qITwgMHgwMDAwMDAwOCAqLw0KI2RlZmluZSBVU0JfREFERFJfQUREMyAgICAgICAgICAgICAgICAgICAgICAgIFVTQl9EQUREUl9BREQzX01zayAgICAgICAgICAgICAgIC8qITxCaXQgMyAqLw0KI2RlZmluZSBVU0JfREFERFJfQURENF9Qb3MgICAgICAgICAgICAgICAgICAgICg0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0JfREFERFJfQURENF9Nc2sgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFVTQl9EQUREUl9BREQ0X1BvcykgICAgIC8qITwgMHgwMDAwMDAxMCAqLw0KI2RlZmluZSBVU0JfREFERFJfQURENCAgICAgICAgICAgICAgICAgICAgICAgIFVTQl9EQUREUl9BREQ0X01zayAgICAgICAgICAgICAgIC8qITxCaXQgNCAqLw0KI2RlZmluZSBVU0JfREFERFJfQURENV9Qb3MgICAgICAgICAgICAgICAgICAgICg1VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0JfREFERFJfQURENV9Nc2sgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFVTQl9EQUREUl9BREQ1X1BvcykgICAgIC8qITwgMHgwMDAwMDAyMCAqLw0KI2RlZmluZSBVU0JfREFERFJfQURENSAgICAgICAgICAgICAgICAgICAgICAgIFVTQl9EQUREUl9BREQ1X01zayAgICAgICAgICAgICAgIC8qITxCaXQgNSAqLw0KI2RlZmluZSBVU0JfREFERFJfQURENl9Qb3MgICAgICAgICAgICAgICAgICAgICg2VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0JfREFERFJfQURENl9Nc2sgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFVTQl9EQUREUl9BREQ2X1BvcykgICAgIC8qITwgMHgwMDAwMDA0MCAqLw0KI2RlZmluZSBVU0JfREFERFJfQURENiAgICAgICAgICAgICAgICAgICAgICAgIFVTQl9EQUREUl9BREQ2X01zayAgICAgICAgICAgICAgIC8qITxCaXQgNiAqLw0KDQojZGVmaW5lIFVTQl9EQUREUl9FRl9Qb3MgICAgICAgICAgICAgICAgICAgICAgKDdVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQl9EQUREUl9FRl9Nc2sgICAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVVNCX0RBRERSX0VGX1BvcykgICAgICAgLyohPCAweDAwMDAwMDgwICovDQojZGVmaW5lIFVTQl9EQUREUl9FRiAgICAgICAgICAgICAgICAgICAgICAgICAgVVNCX0RBRERSX0VGX01zayAgICAgICAgICAgICAgICAgLyohPEVuYWJsZSBGdW5jdGlvbiAqLw0KDQovKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgVVNCX0JUQUJMRSByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqLyAgICANCiNkZWZpbmUgVVNCX0JUQUJMRV9CVEFCTEVfUG9zICAgICAgICAgICAgICAgICAoM1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNCX0JUQUJMRV9CVEFCTEVfTXNrICAgICAgICAgICAgICAgICAoMHgxRkZGVSA8PCBVU0JfQlRBQkxFX0JUQUJMRV9Qb3MpIC8qITwgMHgwMDAwRkZGOCAqLw0KI2RlZmluZSBVU0JfQlRBQkxFX0JUQUJMRSAgICAgICAgICAgICAgICAgICAgIFVTQl9CVEFCTEVfQlRBQkxFX01zayAgICAgICAgICAgIC8qITxCdWZmZXIgVGFibGUgKi8NCg0KLyohPCBCdWZmZXIgZGVzY3JpcHRvciB0YWJsZSAqLw0KLyoqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgVVNCX0FERFIwX1RYIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgVVNCX0FERFIwX1RYX0FERFIwX1RYX1BvcyAgICAgICAgICAgICAoMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNCX0FERFIwX1RYX0FERFIwX1RYX01zayAgICAgICAgICAgICAoMHg3RkZGVSA8PCBVU0JfQUREUjBfVFhfQUREUjBfVFhfUG9zKSAvKiE8IDB4MDAwMEZGRkUgKi8NCiNkZWZpbmUgVVNCX0FERFIwX1RYX0FERFIwX1RYICAgICAgICAgICAgICAgICBVU0JfQUREUjBfVFhfQUREUjBfVFhfTXNrICAgICAgICAvKiE8IFRyYW5zbWlzc2lvbiBCdWZmZXIgQWRkcmVzcyAwICovDQoNCi8qKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFVTQl9BRERSMV9UWCByZWdpc3RlciAgKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIFVTQl9BRERSMV9UWF9BRERSMV9UWF9Qb3MgICAgICAgICAgICAgKDFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQl9BRERSMV9UWF9BRERSMV9UWF9Nc2sgICAgICAgICAgICAgKDB4N0ZGRlUgPDwgVVNCX0FERFIxX1RYX0FERFIxX1RYX1BvcykgLyohPCAweDAwMDBGRkZFICovDQojZGVmaW5lIFVTQl9BRERSMV9UWF9BRERSMV9UWCAgICAgICAgICAgICAgICAgVVNCX0FERFIxX1RYX0FERFIxX1RYX01zayAgICAgICAgLyohPCBUcmFuc21pc3Npb24gQnVmZmVyIEFkZHJlc3MgMSAqLw0KDQovKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBVU0JfQUREUjJfVFggcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBVU0JfQUREUjJfVFhfQUREUjJfVFhfUG9zICAgICAgICAgICAgICgxVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0JfQUREUjJfVFhfQUREUjJfVFhfTXNrICAgICAgICAgICAgICgweDdGRkZVIDw8IFVTQl9BRERSMl9UWF9BRERSMl9UWF9Qb3MpIC8qITwgMHgwMDAwRkZGRSAqLw0KI2RlZmluZSBVU0JfQUREUjJfVFhfQUREUjJfVFggICAgICAgICAgICAgICAgIFVTQl9BRERSMl9UWF9BRERSMl9UWF9Nc2sgICAgICAgIC8qITwgVHJhbnNtaXNzaW9uIEJ1ZmZlciBBZGRyZXNzIDIgKi8NCg0KLyoqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgVVNCX0FERFIzX1RYIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgVVNCX0FERFIzX1RYX0FERFIzX1RYX1BvcyAgICAgICAgICAgICAoMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNCX0FERFIzX1RYX0FERFIzX1RYX01zayAgICAgICAgICAgICAoMHg3RkZGVSA8PCBVU0JfQUREUjNfVFhfQUREUjNfVFhfUG9zKSAvKiE8IDB4MDAwMEZGRkUgKi8NCiNkZWZpbmUgVVNCX0FERFIzX1RYX0FERFIzX1RYICAgICAgICAgICAgICAgICBVU0JfQUREUjNfVFhfQUREUjNfVFhfTXNrICAgICAgICAvKiE8IFRyYW5zbWlzc2lvbiBCdWZmZXIgQWRkcmVzcyAzICovDQoNCi8qKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFVTQl9BRERSNF9UWCByZWdpc3RlciAgKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIFVTQl9BRERSNF9UWF9BRERSNF9UWF9Qb3MgICAgICAgICAgICAgKDFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQl9BRERSNF9UWF9BRERSNF9UWF9Nc2sgICAgICAgICAgICAgKDB4N0ZGRlUgPDwgVVNCX0FERFI0X1RYX0FERFI0X1RYX1BvcykgLyohPCAweDAwMDBGRkZFICovDQojZGVmaW5lIFVTQl9BRERSNF9UWF9BRERSNF9UWCAgICAgICAgICAgICAgICAgVVNCX0FERFI0X1RYX0FERFI0X1RYX01zayAgICAgICAgLyohPCBUcmFuc21pc3Npb24gQnVmZmVyIEFkZHJlc3MgNCAqLw0KDQovKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBVU0JfQUREUjVfVFggcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBVU0JfQUREUjVfVFhfQUREUjVfVFhfUG9zICAgICAgICAgICAgICgxVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0JfQUREUjVfVFhfQUREUjVfVFhfTXNrICAgICAgICAgICAgICgweDdGRkZVIDw8IFVTQl9BRERSNV9UWF9BRERSNV9UWF9Qb3MpIC8qITwgMHgwMDAwRkZGRSAqLw0KI2RlZmluZSBVU0JfQUREUjVfVFhfQUREUjVfVFggICAgICAgICAgICAgICAgIFVTQl9BRERSNV9UWF9BRERSNV9UWF9Nc2sgICAgICAgIC8qITwgVHJhbnNtaXNzaW9uIEJ1ZmZlciBBZGRyZXNzIDUgKi8NCg0KLyoqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgVVNCX0FERFI2X1RYIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgVVNCX0FERFI2X1RYX0FERFI2X1RYX1BvcyAgICAgICAgICAgICAoMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNCX0FERFI2X1RYX0FERFI2X1RYX01zayAgICAgICAgICAgICAoMHg3RkZGVSA8PCBVU0JfQUREUjZfVFhfQUREUjZfVFhfUG9zKSAvKiE8IDB4MDAwMEZGRkUgKi8NCiNkZWZpbmUgVVNCX0FERFI2X1RYX0FERFI2X1RYICAgICAgICAgICAgICAgICBVU0JfQUREUjZfVFhfQUREUjZfVFhfTXNrICAgICAgICAvKiE8IFRyYW5zbWlzc2lvbiBCdWZmZXIgQWRkcmVzcyA2ICovDQoNCi8qKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFVTQl9BRERSN19UWCByZWdpc3RlciAgKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIFVTQl9BRERSN19UWF9BRERSN19UWF9Qb3MgICAgICAgICAgICAgKDFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQl9BRERSN19UWF9BRERSN19UWF9Nc2sgICAgICAgICAgICAgKDB4N0ZGRlUgPDwgVVNCX0FERFI3X1RYX0FERFI3X1RYX1BvcykgLyohPCAweDAwMDBGRkZFICovDQojZGVmaW5lIFVTQl9BRERSN19UWF9BRERSN19UWCAgICAgICAgICAgICAgICAgVVNCX0FERFI3X1RYX0FERFI3X1RYX01zayAgICAgICAgLyohPCBUcmFuc21pc3Npb24gQnVmZmVyIEFkZHJlc3MgNyAqLw0KDQovKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qLw0KDQovKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBVU0JfQ09VTlQwX1RYIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBVU0JfQ09VTlQwX1RYX0NPVU5UMF9UWF9Qb3MgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0JfQ09VTlQwX1RYX0NPVU5UMF9UWF9Nc2sgICAgICAgICAgICgweDNGRlUgPDwgVVNCX0NPVU5UMF9UWF9DT1VOVDBfVFhfUG9zKSAvKiE8IDB4MDAwMDAzRkYgKi8NCiNkZWZpbmUgVVNCX0NPVU5UMF9UWF9DT1VOVDBfVFggICAgICAgICAgICAgICBVU0JfQ09VTlQwX1RYX0NPVU5UMF9UWF9Nc2sgICAgICAvKiE8IFRyYW5zbWlzc2lvbiBCeXRlIENvdW50IDAgKi8NCg0KLyoqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgVVNCX0NPVU5UMV9UWCByZWdpc3RlciAgKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgVVNCX0NPVU5UMV9UWF9DT1VOVDFfVFhfUG9zICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNCX0NPVU5UMV9UWF9DT1VOVDFfVFhfTXNrICAgICAgICAgICAoMHgzRkZVIDw8IFVTQl9DT1VOVDFfVFhfQ09VTlQxX1RYX1BvcykgLyohPCAweDAwMDAwM0ZGICovDQojZGVmaW5lIFVTQl9DT1VOVDFfVFhfQ09VTlQxX1RYICAgICAgICAgICAgICAgVVNCX0NPVU5UMV9UWF9DT1VOVDFfVFhfTXNrICAgICAgLyohPCBUcmFuc21pc3Npb24gQnl0ZSBDb3VudCAxICovDQoNCi8qKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFVTQl9DT1VOVDJfVFggcmVnaXN0ZXIgICoqKioqKioqKioqKioqKiovDQojZGVmaW5lIFVTQl9DT1VOVDJfVFhfQ09VTlQyX1RYX1BvcyAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQl9DT1VOVDJfVFhfQ09VTlQyX1RYX01zayAgICAgICAgICAgKDB4M0ZGVSA8PCBVU0JfQ09VTlQyX1RYX0NPVU5UMl9UWF9Qb3MpIC8qITwgMHgwMDAwMDNGRiAqLw0KI2RlZmluZSBVU0JfQ09VTlQyX1RYX0NPVU5UMl9UWCAgICAgICAgICAgICAgIFVTQl9DT1VOVDJfVFhfQ09VTlQyX1RYX01zayAgICAgIC8qITwgVHJhbnNtaXNzaW9uIEJ5dGUgQ291bnQgMiAqLw0KDQovKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBVU0JfQ09VTlQzX1RYIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBVU0JfQ09VTlQzX1RYX0NPVU5UM19UWF9Qb3MgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0JfQ09VTlQzX1RYX0NPVU5UM19UWF9Nc2sgICAgICAgICAgICgweDNGRlUgPDwgVVNCX0NPVU5UM19UWF9DT1VOVDNfVFhfUG9zKSAvKiE8IDB4MDAwMDAzRkYgKi8NCiNkZWZpbmUgVVNCX0NPVU5UM19UWF9DT1VOVDNfVFggICAgICAgICAgICAgICBVU0JfQ09VTlQzX1RYX0NPVU5UM19UWF9Nc2sgICAgICAvKiE8IFRyYW5zbWlzc2lvbiBCeXRlIENvdW50IDMgKi8NCg0KLyoqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgVVNCX0NPVU5UNF9UWCByZWdpc3RlciAgKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgVVNCX0NPVU5UNF9UWF9DT1VOVDRfVFhfUG9zICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNCX0NPVU5UNF9UWF9DT1VOVDRfVFhfTXNrICAgICAgICAgICAoMHgzRkZVIDw8IFVTQl9DT1VOVDRfVFhfQ09VTlQ0X1RYX1BvcykgLyohPCAweDAwMDAwM0ZGICovDQojZGVmaW5lIFVTQl9DT1VOVDRfVFhfQ09VTlQ0X1RYICAgICAgICAgICAgICAgVVNCX0NPVU5UNF9UWF9DT1VOVDRfVFhfTXNrICAgICAgLyohPCBUcmFuc21pc3Npb24gQnl0ZSBDb3VudCA0ICovDQoNCi8qKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFVTQl9DT1VOVDVfVFggcmVnaXN0ZXIgICoqKioqKioqKioqKioqKiovDQojZGVmaW5lIFVTQl9DT1VOVDVfVFhfQ09VTlQ1X1RYX1BvcyAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQl9DT1VOVDVfVFhfQ09VTlQ1X1RYX01zayAgICAgICAgICAgKDB4M0ZGVSA8PCBVU0JfQ09VTlQ1X1RYX0NPVU5UNV9UWF9Qb3MpIC8qITwgMHgwMDAwMDNGRiAqLw0KI2RlZmluZSBVU0JfQ09VTlQ1X1RYX0NPVU5UNV9UWCAgICAgICAgICAgICAgIFVTQl9DT1VOVDVfVFhfQ09VTlQ1X1RYX01zayAgICAgIC8qITwgVHJhbnNtaXNzaW9uIEJ5dGUgQ291bnQgNSAqLw0KDQovKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBVU0JfQ09VTlQ2X1RYIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBVU0JfQ09VTlQ2X1RYX0NPVU5UNl9UWF9Qb3MgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0JfQ09VTlQ2X1RYX0NPVU5UNl9UWF9Nc2sgICAgICAgICAgICgweDNGRlUgPDwgVVNCX0NPVU5UNl9UWF9DT1VOVDZfVFhfUG9zKSAvKiE8IDB4MDAwMDAzRkYgKi8NCiNkZWZpbmUgVVNCX0NPVU5UNl9UWF9DT1VOVDZfVFggICAgICAgICAgICAgICBVU0JfQ09VTlQ2X1RYX0NPVU5UNl9UWF9Nc2sgICAgICAvKiE8IFRyYW5zbWlzc2lvbiBCeXRlIENvdW50IDYgKi8NCg0KLyoqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgVVNCX0NPVU5UN19UWCByZWdpc3RlciAgKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgVVNCX0NPVU5UN19UWF9DT1VOVDdfVFhfUG9zICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNCX0NPVU5UN19UWF9DT1VOVDdfVFhfTXNrICAgICAgICAgICAoMHgzRkZVIDw8IFVTQl9DT1VOVDdfVFhfQ09VTlQ3X1RYX1BvcykgLyohPCAweDAwMDAwM0ZGICovDQojZGVmaW5lIFVTQl9DT1VOVDdfVFhfQ09VTlQ3X1RYICAgICAgICAgICAgICAgVVNCX0NPVU5UN19UWF9DT1VOVDdfVFhfTXNrICAgICAgLyohPCBUcmFuc21pc3Npb24gQnl0ZSBDb3VudCA3ICovDQoNCi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovDQoNCi8qKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgVVNCX0NPVU5UMF9UWF8wIHJlZ2lzdGVyICAqKioqKioqKioqKioqKiovDQojZGVmaW5lIFVTQl9DT1VOVDBfVFhfMF9DT1VOVDBfVFhfMCAgICAgICAgICAgKDB4MDAwMDAzRkZVKSAgICAgICAgICAgICAgICAgICAgLyohPCBUcmFuc21pc3Npb24gQnl0ZSBDb3VudCAwIChsb3cpICovDQoNCi8qKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgVVNCX0NPVU5UMF9UWF8xIHJlZ2lzdGVyICAqKioqKioqKioqKioqKiovDQojZGVmaW5lIFVTQl9DT1VOVDBfVFhfMV9DT1VOVDBfVFhfMSAgICAgICAgICAgKDB4MDNGRjAwMDBVKSAgICAgICAgICAgICAgICAgICAgLyohPCBUcmFuc21pc3Npb24gQnl0ZSBDb3VudCAwIChoaWdoKSAqLw0KDQovKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFVTQl9DT1VOVDFfVFhfMCByZWdpc3RlciAgKioqKioqKioqKioqKioqLw0KI2RlZmluZSBVU0JfQ09VTlQxX1RYXzBfQ09VTlQxX1RYXzAgICAgICAgICAgICgweDAwMDAwM0ZGVSkgICAgICAgICAgICAgICAgICAgIC8qITwgVHJhbnNtaXNzaW9uIEJ5dGUgQ291bnQgMSAobG93KSAqLw0KDQovKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFVTQl9DT1VOVDFfVFhfMSByZWdpc3RlciAgKioqKioqKioqKioqKioqLw0KI2RlZmluZSBVU0JfQ09VTlQxX1RYXzFfQ09VTlQxX1RYXzEgICAgICAgICAgICgweDAzRkYwMDAwVSkgICAgICAgICAgICAgICAgICAgIC8qITwgVHJhbnNtaXNzaW9uIEJ5dGUgQ291bnQgMSAoaGlnaCkgKi8NCg0KLyoqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBVU0JfQ09VTlQyX1RYXzAgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKi8NCiNkZWZpbmUgVVNCX0NPVU5UMl9UWF8wX0NPVU5UMl9UWF8wICAgICAgICAgICAoMHgwMDAwMDNGRlUpICAgICAgICAgICAgICAgICAgICAvKiE8IFRyYW5zbWlzc2lvbiBCeXRlIENvdW50IDIgKGxvdykgKi8NCg0KLyoqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBVU0JfQ09VTlQyX1RYXzEgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKi8NCiNkZWZpbmUgVVNCX0NPVU5UMl9UWF8xX0NPVU5UMl9UWF8xICAgICAgICAgICAoMHgwM0ZGMDAwMFUpICAgICAgICAgICAgICAgICAgICAvKiE8IFRyYW5zbWlzc2lvbiBCeXRlIENvdW50IDIgKGhpZ2gpICovDQoNCi8qKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgVVNCX0NPVU5UM19UWF8wIHJlZ2lzdGVyICAqKioqKioqKioqKioqKiovDQojZGVmaW5lICBVU0JfQ09VTlQzX1RYXzBfQ09VTlQzX1RYXzAgICAgICAgICAoKHVpbnQzMl90KTB4MDAwMDAwMDBVMDNGRikgICAgICAgIC8qITwgVHJhbnNtaXNzaW9uIEJ5dGUgQ291bnQgMyAobG93KSAqLw0KDQovKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFVTQl9DT1VOVDNfVFhfMSByZWdpc3RlciAgKioqKioqKioqKioqKioqLw0KI2RlZmluZSAgVVNCX0NPVU5UM19UWF8xX0NPVU5UM19UWF8xICAgICAgICAgKCh1aW50MzJfdCkweDAwMDAwM0ZGVTAwMDApICAgICAgICAvKiE8IFRyYW5zbWlzc2lvbiBCeXRlIENvdW50IDMgKGhpZ2gpICovDQoNCi8qKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgVVNCX0NPVU5UNF9UWF8wIHJlZ2lzdGVyICAqKioqKioqKioqKioqKiovDQojZGVmaW5lIFVTQl9DT1VOVDRfVFhfMF9DT1VOVDRfVFhfMCAgICAgICAgICAgKDB4MDAwMDAzRkZVKSAgICAgICAgICAgICAgICAgICAgLyohPCBUcmFuc21pc3Npb24gQnl0ZSBDb3VudCA0IChsb3cpICovDQoNCi8qKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgVVNCX0NPVU5UNF9UWF8xIHJlZ2lzdGVyICAqKioqKioqKioqKioqKiovDQojZGVmaW5lIFVTQl9DT1VOVDRfVFhfMV9DT1VOVDRfVFhfMSAgICAgICAgICAgKDB4MDNGRjAwMDBVKSAgICAgICAgICAgICAgICAgICAgLyohPCBUcmFuc21pc3Npb24gQnl0ZSBDb3VudCA0IChoaWdoKSAqLw0KDQovKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFVTQl9DT1VOVDVfVFhfMCByZWdpc3RlciAgKioqKioqKioqKioqKioqLw0KI2RlZmluZSBVU0JfQ09VTlQ1X1RYXzBfQ09VTlQ1X1RYXzAgICAgICAgICAgICgweDAwMDAwM0ZGVSkgICAgICAgICAgICAgICAgICAgIC8qITwgVHJhbnNtaXNzaW9uIEJ5dGUgQ291bnQgNSAobG93KSAqLw0KDQovKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFVTQl9DT1VOVDVfVFhfMSByZWdpc3RlciAgKioqKioqKioqKioqKioqLw0KI2RlZmluZSBVU0JfQ09VTlQ1X1RYXzFfQ09VTlQ1X1RYXzEgICAgICAgICAgICgweDAzRkYwMDAwVSkgICAgICAgICAgICAgICAgICAgIC8qITwgVHJhbnNtaXNzaW9uIEJ5dGUgQ291bnQgNSAoaGlnaCkgKi8NCg0KLyoqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBVU0JfQ09VTlQ2X1RYXzAgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKi8NCiNkZWZpbmUgVVNCX0NPVU5UNl9UWF8wX0NPVU5UNl9UWF8wICAgICAgICAgICAoMHgwMDAwMDNGRlUpICAgICAgICAgICAgICAgICAgICAvKiE8IFRyYW5zbWlzc2lvbiBCeXRlIENvdW50IDYgKGxvdykgKi8NCg0KLyoqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBVU0JfQ09VTlQ2X1RYXzEgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKi8NCiNkZWZpbmUgVVNCX0NPVU5UNl9UWF8xX0NPVU5UNl9UWF8xICAgICAgICAgICAoMHgwM0ZGMDAwMFUpICAgICAgICAgICAgICAgICAgICAvKiE8IFRyYW5zbWlzc2lvbiBCeXRlIENvdW50IDYgKGhpZ2gpICovDQoNCi8qKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgVVNCX0NPVU5UN19UWF8wIHJlZ2lzdGVyICAqKioqKioqKioqKioqKiovDQojZGVmaW5lIFVTQl9DT1VOVDdfVFhfMF9DT1VOVDdfVFhfMCAgICAgICAgICAgKDB4MDAwMDAzRkZVKSAgICAgICAgICAgICAgICAgICAgLyohPCBUcmFuc21pc3Npb24gQnl0ZSBDb3VudCA3IChsb3cpICovDQoNCi8qKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgVVNCX0NPVU5UN19UWF8xIHJlZ2lzdGVyICAqKioqKioqKioqKioqKiovDQojZGVmaW5lIFVTQl9DT1VOVDdfVFhfMV9DT1VOVDdfVFhfMSAgICAgICAgICAgKDB4MDNGRjAwMDBVKSAgICAgICAgICAgICAgICAgICAgLyohPCBUcmFuc21pc3Npb24gQnl0ZSBDb3VudCA3IChoaWdoKSAqLw0KDQovKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qLw0KDQovKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBVU0JfQUREUjBfUlggcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBVU0JfQUREUjBfUlhfQUREUjBfUlhfUG9zICAgICAgICAgICAgICgxVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0JfQUREUjBfUlhfQUREUjBfUlhfTXNrICAgICAgICAgICAgICgweDdGRkZVIDw8IFVTQl9BRERSMF9SWF9BRERSMF9SWF9Qb3MpIC8qITwgMHgwMDAwRkZGRSAqLw0KI2RlZmluZSBVU0JfQUREUjBfUlhfQUREUjBfUlggICAgICAgICAgICAgICAgIFVTQl9BRERSMF9SWF9BRERSMF9SWF9Nc2sgICAgICAgIC8qITwgUmVjZXB0aW9uIEJ1ZmZlciBBZGRyZXNzIDAgKi8NCg0KLyoqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgVVNCX0FERFIxX1JYIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgVVNCX0FERFIxX1JYX0FERFIxX1JYX1BvcyAgICAgICAgICAgICAoMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNCX0FERFIxX1JYX0FERFIxX1JYX01zayAgICAgICAgICAgICAoMHg3RkZGVSA8PCBVU0JfQUREUjFfUlhfQUREUjFfUlhfUG9zKSAvKiE8IDB4MDAwMEZGRkUgKi8NCiNkZWZpbmUgVVNCX0FERFIxX1JYX0FERFIxX1JYICAgICAgICAgICAgICAgICBVU0JfQUREUjFfUlhfQUREUjFfUlhfTXNrICAgICAgICAvKiE8IFJlY2VwdGlvbiBCdWZmZXIgQWRkcmVzcyAxICovDQoNCi8qKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFVTQl9BRERSMl9SWCByZWdpc3RlciAgKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIFVTQl9BRERSMl9SWF9BRERSMl9SWF9Qb3MgICAgICAgICAgICAgKDFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQl9BRERSMl9SWF9BRERSMl9SWF9Nc2sgICAgICAgICAgICAgKDB4N0ZGRlUgPDwgVVNCX0FERFIyX1JYX0FERFIyX1JYX1BvcykgLyohPCAweDAwMDBGRkZFICovDQojZGVmaW5lIFVTQl9BRERSMl9SWF9BRERSMl9SWCAgICAgICAgICAgICAgICAgVVNCX0FERFIyX1JYX0FERFIyX1JYX01zayAgICAgICAgLyohPCBSZWNlcHRpb24gQnVmZmVyIEFkZHJlc3MgMiAqLw0KDQovKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBVU0JfQUREUjNfUlggcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBVU0JfQUREUjNfUlhfQUREUjNfUlhfUG9zICAgICAgICAgICAgICgxVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0JfQUREUjNfUlhfQUREUjNfUlhfTXNrICAgICAgICAgICAgICgweDdGRkZVIDw8IFVTQl9BRERSM19SWF9BRERSM19SWF9Qb3MpIC8qITwgMHgwMDAwRkZGRSAqLw0KI2RlZmluZSBVU0JfQUREUjNfUlhfQUREUjNfUlggICAgICAgICAgICAgICAgIFVTQl9BRERSM19SWF9BRERSM19SWF9Nc2sgICAgICAgIC8qITwgUmVjZXB0aW9uIEJ1ZmZlciBBZGRyZXNzIDMgKi8NCg0KLyoqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgVVNCX0FERFI0X1JYIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgVVNCX0FERFI0X1JYX0FERFI0X1JYX1BvcyAgICAgICAgICAgICAoMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNCX0FERFI0X1JYX0FERFI0X1JYX01zayAgICAgICAgICAgICAoMHg3RkZGVSA8PCBVU0JfQUREUjRfUlhfQUREUjRfUlhfUG9zKSAvKiE8IDB4MDAwMEZGRkUgKi8NCiNkZWZpbmUgVVNCX0FERFI0X1JYX0FERFI0X1JYICAgICAgICAgICAgICAgICBVU0JfQUREUjRfUlhfQUREUjRfUlhfTXNrICAgICAgICAvKiE8IFJlY2VwdGlvbiBCdWZmZXIgQWRkcmVzcyA0ICovDQoNCi8qKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFVTQl9BRERSNV9SWCByZWdpc3RlciAgKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIFVTQl9BRERSNV9SWF9BRERSNV9SWF9Qb3MgICAgICAgICAgICAgKDFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQl9BRERSNV9SWF9BRERSNV9SWF9Nc2sgICAgICAgICAgICAgKDB4N0ZGRlUgPDwgVVNCX0FERFI1X1JYX0FERFI1X1JYX1BvcykgLyohPCAweDAwMDBGRkZFICovDQojZGVmaW5lIFVTQl9BRERSNV9SWF9BRERSNV9SWCAgICAgICAgICAgICAgICAgVVNCX0FERFI1X1JYX0FERFI1X1JYX01zayAgICAgICAgLyohPCBSZWNlcHRpb24gQnVmZmVyIEFkZHJlc3MgNSAqLw0KDQovKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBVU0JfQUREUjZfUlggcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBVU0JfQUREUjZfUlhfQUREUjZfUlhfUG9zICAgICAgICAgICAgICgxVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0JfQUREUjZfUlhfQUREUjZfUlhfTXNrICAgICAgICAgICAgICgweDdGRkZVIDw8IFVTQl9BRERSNl9SWF9BRERSNl9SWF9Qb3MpIC8qITwgMHgwMDAwRkZGRSAqLw0KI2RlZmluZSBVU0JfQUREUjZfUlhfQUREUjZfUlggICAgICAgICAgICAgICAgIFVTQl9BRERSNl9SWF9BRERSNl9SWF9Nc2sgICAgICAgIC8qITwgUmVjZXB0aW9uIEJ1ZmZlciBBZGRyZXNzIDYgKi8NCg0KLyoqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgVVNCX0FERFI3X1JYIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgVVNCX0FERFI3X1JYX0FERFI3X1JYX1BvcyAgICAgICAgICAgICAoMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNCX0FERFI3X1JYX0FERFI3X1JYX01zayAgICAgICAgICAgICAoMHg3RkZGVSA8PCBVU0JfQUREUjdfUlhfQUREUjdfUlhfUG9zKSAvKiE8IDB4MDAwMEZGRkUgKi8NCiNkZWZpbmUgVVNCX0FERFI3X1JYX0FERFI3X1JYICAgICAgICAgICAgICAgICBVU0JfQUREUjdfUlhfQUREUjdfUlhfTXNrICAgICAgICAvKiE8IFJlY2VwdGlvbiBCdWZmZXIgQWRkcmVzcyA3ICovDQoNCi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovDQoNCi8qKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFVTQl9DT1VOVDBfUlggcmVnaXN0ZXIgICoqKioqKioqKioqKioqKiovDQojZGVmaW5lIFVTQl9DT1VOVDBfUlhfQ09VTlQwX1JYX1BvcyAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQl9DT1VOVDBfUlhfQ09VTlQwX1JYX01zayAgICAgICAgICAgKDB4M0ZGVSA8PCBVU0JfQ09VTlQwX1JYX0NPVU5UMF9SWF9Qb3MpIC8qITwgMHgwMDAwMDNGRiAqLw0KI2RlZmluZSBVU0JfQ09VTlQwX1JYX0NPVU5UMF9SWCAgICAgICAgICAgICAgIFVTQl9DT1VOVDBfUlhfQ09VTlQwX1JYX01zayAgICAgIC8qITwgUmVjZXB0aW9uIEJ5dGUgQ291bnQgKi8NCg0KI2RlZmluZSBVU0JfQ09VTlQwX1JYX05VTV9CTE9DS19Qb3MgICAgICAgICAgICgxMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0JfQ09VTlQwX1JYX05VTV9CTE9DS19Nc2sgICAgICAgICAgICgweDFGVSA8PCBVU0JfQ09VTlQwX1JYX05VTV9CTE9DS19Qb3MpIC8qITwgMHgwMDAwN0MwMCAqLw0KI2RlZmluZSBVU0JfQ09VTlQwX1JYX05VTV9CTE9DSyAgICAgICAgICAgICAgIFVTQl9DT1VOVDBfUlhfTlVNX0JMT0NLX01zayAgICAgIC8qITwgTlVNX0JMT0NLWzQ6MF0gYml0cyAoTnVtYmVyIG9mIGJsb2NrcykgKi8NCiNkZWZpbmUgVVNCX0NPVU5UMF9SWF9OVU1fQkxPQ0tfMCAgICAgICAgICAgICAoMHgwMVUgPDwgVVNCX0NPVU5UMF9SWF9OVU1fQkxPQ0tfUG9zKSAvKiE8IDB4MDAwMDA0MDAgKi8NCiNkZWZpbmUgVVNCX0NPVU5UMF9SWF9OVU1fQkxPQ0tfMSAgICAgICAgICAgICAoMHgwMlUgPDwgVVNCX0NPVU5UMF9SWF9OVU1fQkxPQ0tfUG9zKSAvKiE8IDB4MDAwMDA4MDAgKi8NCiNkZWZpbmUgVVNCX0NPVU5UMF9SWF9OVU1fQkxPQ0tfMiAgICAgICAgICAgICAoMHgwNFUgPDwgVVNCX0NPVU5UMF9SWF9OVU1fQkxPQ0tfUG9zKSAvKiE8IDB4MDAwMDEwMDAgKi8NCiNkZWZpbmUgVVNCX0NPVU5UMF9SWF9OVU1fQkxPQ0tfMyAgICAgICAgICAgICAoMHgwOFUgPDwgVVNCX0NPVU5UMF9SWF9OVU1fQkxPQ0tfUG9zKSAvKiE8IDB4MDAwMDIwMDAgKi8NCiNkZWZpbmUgVVNCX0NPVU5UMF9SWF9OVU1fQkxPQ0tfNCAgICAgICAgICAgICAoMHgxMFUgPDwgVVNCX0NPVU5UMF9SWF9OVU1fQkxPQ0tfUG9zKSAvKiE8IDB4MDAwMDQwMDAgKi8NCg0KI2RlZmluZSBVU0JfQ09VTlQwX1JYX0JMU0laRV9Qb3MgICAgICAgICAgICAgICgxNVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0JfQ09VTlQwX1JYX0JMU0laRV9Nc2sgICAgICAgICAgICAgICgweDFVIDw8IFVTQl9DT1VOVDBfUlhfQkxTSVpFX1BvcykgLyohPCAweDAwMDA4MDAwICovDQojZGVmaW5lIFVTQl9DT1VOVDBfUlhfQkxTSVpFICAgICAgICAgICAgICAgICAgVVNCX0NPVU5UMF9SWF9CTFNJWkVfTXNrICAgICAgICAgLyohPCBCTG9jayBTSVpFICovDQoNCi8qKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFVTQl9DT1VOVDFfUlggcmVnaXN0ZXIgICoqKioqKioqKioqKioqKiovDQojZGVmaW5lIFVTQl9DT1VOVDFfUlhfQ09VTlQxX1JYX1BvcyAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQl9DT1VOVDFfUlhfQ09VTlQxX1JYX01zayAgICAgICAgICAgKDB4M0ZGVSA8PCBVU0JfQ09VTlQxX1JYX0NPVU5UMV9SWF9Qb3MpIC8qITwgMHgwMDAwMDNGRiAqLw0KI2RlZmluZSBVU0JfQ09VTlQxX1JYX0NPVU5UMV9SWCAgICAgICAgICAgICAgIFVTQl9DT1VOVDFfUlhfQ09VTlQxX1JYX01zayAgICAgIC8qITwgUmVjZXB0aW9uIEJ5dGUgQ291bnQgKi8NCg0KI2RlZmluZSBVU0JfQ09VTlQxX1JYX05VTV9CTE9DS19Qb3MgICAgICAgICAgICgxMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0JfQ09VTlQxX1JYX05VTV9CTE9DS19Nc2sgICAgICAgICAgICgweDFGVSA8PCBVU0JfQ09VTlQxX1JYX05VTV9CTE9DS19Qb3MpIC8qITwgMHgwMDAwN0MwMCAqLw0KI2RlZmluZSBVU0JfQ09VTlQxX1JYX05VTV9CTE9DSyAgICAgICAgICAgICAgIFVTQl9DT1VOVDFfUlhfTlVNX0JMT0NLX01zayAgICAgIC8qITwgTlVNX0JMT0NLWzQ6MF0gYml0cyAoTnVtYmVyIG9mIGJsb2NrcykgKi8NCiNkZWZpbmUgVVNCX0NPVU5UMV9SWF9OVU1fQkxPQ0tfMCAgICAgICAgICAgICAoMHgwMVUgPDwgVVNCX0NPVU5UMV9SWF9OVU1fQkxPQ0tfUG9zKSAvKiE8IDB4MDAwMDA0MDAgKi8NCiNkZWZpbmUgVVNCX0NPVU5UMV9SWF9OVU1fQkxPQ0tfMSAgICAgICAgICAgICAoMHgwMlUgPDwgVVNCX0NPVU5UMV9SWF9OVU1fQkxPQ0tfUG9zKSAvKiE8IDB4MDAwMDA4MDAgKi8NCiNkZWZpbmUgVVNCX0NPVU5UMV9SWF9OVU1fQkxPQ0tfMiAgICAgICAgICAgICAoMHgwNFUgPDwgVVNCX0NPVU5UMV9SWF9OVU1fQkxPQ0tfUG9zKSAvKiE8IDB4MDAwMDEwMDAgKi8NCiNkZWZpbmUgVVNCX0NPVU5UMV9SWF9OVU1fQkxPQ0tfMyAgICAgICAgICAgICAoMHgwOFUgPDwgVVNCX0NPVU5UMV9SWF9OVU1fQkxPQ0tfUG9zKSAvKiE8IDB4MDAwMDIwMDAgKi8NCiNkZWZpbmUgVVNCX0NPVU5UMV9SWF9OVU1fQkxPQ0tfNCAgICAgICAgICAgICAoMHgxMFUgPDwgVVNCX0NPVU5UMV9SWF9OVU1fQkxPQ0tfUG9zKSAvKiE8IDB4MDAwMDQwMDAgKi8NCg0KI2RlZmluZSBVU0JfQ09VTlQxX1JYX0JMU0laRV9Qb3MgICAgICAgICAgICAgICgxNVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0JfQ09VTlQxX1JYX0JMU0laRV9Nc2sgICAgICAgICAgICAgICgweDFVIDw8IFVTQl9DT1VOVDFfUlhfQkxTSVpFX1BvcykgLyohPCAweDAwMDA4MDAwICovDQojZGVmaW5lIFVTQl9DT1VOVDFfUlhfQkxTSVpFICAgICAgICAgICAgICAgICAgVVNCX0NPVU5UMV9SWF9CTFNJWkVfTXNrICAgICAgICAgLyohPCBCTG9jayBTSVpFICovDQoNCi8qKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFVTQl9DT1VOVDJfUlggcmVnaXN0ZXIgICoqKioqKioqKioqKioqKiovDQojZGVmaW5lIFVTQl9DT1VOVDJfUlhfQ09VTlQyX1JYX1BvcyAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQl9DT1VOVDJfUlhfQ09VTlQyX1JYX01zayAgICAgICAgICAgKDB4M0ZGVSA8PCBVU0JfQ09VTlQyX1JYX0NPVU5UMl9SWF9Qb3MpIC8qITwgMHgwMDAwMDNGRiAqLw0KI2RlZmluZSBVU0JfQ09VTlQyX1JYX0NPVU5UMl9SWCAgICAgICAgICAgICAgIFVTQl9DT1VOVDJfUlhfQ09VTlQyX1JYX01zayAgICAgIC8qITwgUmVjZXB0aW9uIEJ5dGUgQ291bnQgKi8NCg0KI2RlZmluZSBVU0JfQ09VTlQyX1JYX05VTV9CTE9DS19Qb3MgICAgICAgICAgICgxMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0JfQ09VTlQyX1JYX05VTV9CTE9DS19Nc2sgICAgICAgICAgICgweDFGVSA8PCBVU0JfQ09VTlQyX1JYX05VTV9CTE9DS19Qb3MpIC8qITwgMHgwMDAwN0MwMCAqLw0KI2RlZmluZSBVU0JfQ09VTlQyX1JYX05VTV9CTE9DSyAgICAgICAgICAgICAgIFVTQl9DT1VOVDJfUlhfTlVNX0JMT0NLX01zayAgICAgIC8qITwgTlVNX0JMT0NLWzQ6MF0gYml0cyAoTnVtYmVyIG9mIGJsb2NrcykgKi8NCiNkZWZpbmUgVVNCX0NPVU5UMl9SWF9OVU1fQkxPQ0tfMCAgICAgICAgICAgICAoMHgwMVUgPDwgVVNCX0NPVU5UMl9SWF9OVU1fQkxPQ0tfUG9zKSAvKiE8IDB4MDAwMDA0MDAgKi8NCiNkZWZpbmUgVVNCX0NPVU5UMl9SWF9OVU1fQkxPQ0tfMSAgICAgICAgICAgICAoMHgwMlUgPDwgVVNCX0NPVU5UMl9SWF9OVU1fQkxPQ0tfUG9zKSAvKiE8IDB4MDAwMDA4MDAgKi8NCiNkZWZpbmUgVVNCX0NPVU5UMl9SWF9OVU1fQkxPQ0tfMiAgICAgICAgICAgICAoMHgwNFUgPDwgVVNCX0NPVU5UMl9SWF9OVU1fQkxPQ0tfUG9zKSAvKiE8IDB4MDAwMDEwMDAgKi8NCiNkZWZpbmUgVVNCX0NPVU5UMl9SWF9OVU1fQkxPQ0tfMyAgICAgICAgICAgICAoMHgwOFUgPDwgVVNCX0NPVU5UMl9SWF9OVU1fQkxPQ0tfUG9zKSAvKiE8IDB4MDAwMDIwMDAgKi8NCiNkZWZpbmUgVVNCX0NPVU5UMl9SWF9OVU1fQkxPQ0tfNCAgICAgICAgICAgICAoMHgxMFUgPDwgVVNCX0NPVU5UMl9SWF9OVU1fQkxPQ0tfUG9zKSAvKiE8IDB4MDAwMDQwMDAgKi8NCg0KI2RlZmluZSBVU0JfQ09VTlQyX1JYX0JMU0laRV9Qb3MgICAgICAgICAgICAgICgxNVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0JfQ09VTlQyX1JYX0JMU0laRV9Nc2sgICAgICAgICAgICAgICgweDFVIDw8IFVTQl9DT1VOVDJfUlhfQkxTSVpFX1BvcykgLyohPCAweDAwMDA4MDAwICovDQojZGVmaW5lIFVTQl9DT1VOVDJfUlhfQkxTSVpFICAgICAgICAgICAgICAgICAgVVNCX0NPVU5UMl9SWF9CTFNJWkVfTXNrICAgICAgICAgLyohPCBCTG9jayBTSVpFICovDQoNCi8qKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFVTQl9DT1VOVDNfUlggcmVnaXN0ZXIgICoqKioqKioqKioqKioqKiovDQojZGVmaW5lIFVTQl9DT1VOVDNfUlhfQ09VTlQzX1JYX1BvcyAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQl9DT1VOVDNfUlhfQ09VTlQzX1JYX01zayAgICAgICAgICAgKDB4M0ZGVSA8PCBVU0JfQ09VTlQzX1JYX0NPVU5UM19SWF9Qb3MpIC8qITwgMHgwMDAwMDNGRiAqLw0KI2RlZmluZSBVU0JfQ09VTlQzX1JYX0NPVU5UM19SWCAgICAgICAgICAgICAgIFVTQl9DT1VOVDNfUlhfQ09VTlQzX1JYX01zayAgICAgIC8qITwgUmVjZXB0aW9uIEJ5dGUgQ291bnQgKi8NCg0KI2RlZmluZSBVU0JfQ09VTlQzX1JYX05VTV9CTE9DS19Qb3MgICAgICAgICAgICgxMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0JfQ09VTlQzX1JYX05VTV9CTE9DS19Nc2sgICAgICAgICAgICgweDFGVSA8PCBVU0JfQ09VTlQzX1JYX05VTV9CTE9DS19Qb3MpIC8qITwgMHgwMDAwN0MwMCAqLw0KI2RlZmluZSBVU0JfQ09VTlQzX1JYX05VTV9CTE9DSyAgICAgICAgICAgICAgIFVTQl9DT1VOVDNfUlhfTlVNX0JMT0NLX01zayAgICAgIC8qITwgTlVNX0JMT0NLWzQ6MF0gYml0cyAoTnVtYmVyIG9mIGJsb2NrcykgKi8NCiNkZWZpbmUgVVNCX0NPVU5UM19SWF9OVU1fQkxPQ0tfMCAgICAgICAgICAgICAoMHgwMVUgPDwgVVNCX0NPVU5UM19SWF9OVU1fQkxPQ0tfUG9zKSAvKiE8IDB4MDAwMDA0MDAgKi8NCiNkZWZpbmUgVVNCX0NPVU5UM19SWF9OVU1fQkxPQ0tfMSAgICAgICAgICAgICAoMHgwMlUgPDwgVVNCX0NPVU5UM19SWF9OVU1fQkxPQ0tfUG9zKSAvKiE8IDB4MDAwMDA4MDAgKi8NCiNkZWZpbmUgVVNCX0NPVU5UM19SWF9OVU1fQkxPQ0tfMiAgICAgICAgICAgICAoMHgwNFUgPDwgVVNCX0NPVU5UM19SWF9OVU1fQkxPQ0tfUG9zKSAvKiE8IDB4MDAwMDEwMDAgKi8NCiNkZWZpbmUgVVNCX0NPVU5UM19SWF9OVU1fQkxPQ0tfMyAgICAgICAgICAgICAoMHgwOFUgPDwgVVNCX0NPVU5UM19SWF9OVU1fQkxPQ0tfUG9zKSAvKiE8IDB4MDAwMDIwMDAgKi8NCiNkZWZpbmUgVVNCX0NPVU5UM19SWF9OVU1fQkxPQ0tfNCAgICAgICAgICAgICAoMHgxMFUgPDwgVVNCX0NPVU5UM19SWF9OVU1fQkxPQ0tfUG9zKSAvKiE8IDB4MDAwMDQwMDAgKi8NCg0KI2RlZmluZSBVU0JfQ09VTlQzX1JYX0JMU0laRV9Qb3MgICAgICAgICAgICAgICgxNVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0JfQ09VTlQzX1JYX0JMU0laRV9Nc2sgICAgICAgICAgICAgICgweDFVIDw8IFVTQl9DT1VOVDNfUlhfQkxTSVpFX1BvcykgLyohPCAweDAwMDA4MDAwICovDQojZGVmaW5lIFVTQl9DT1VOVDNfUlhfQkxTSVpFICAgICAgICAgICAgICAgICAgVVNCX0NPVU5UM19SWF9CTFNJWkVfTXNrICAgICAgICAgLyohPCBCTG9jayBTSVpFICovDQoNCi8qKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFVTQl9DT1VOVDRfUlggcmVnaXN0ZXIgICoqKioqKioqKioqKioqKiovDQojZGVmaW5lIFVTQl9DT1VOVDRfUlhfQ09VTlQ0X1JYX1BvcyAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQl9DT1VOVDRfUlhfQ09VTlQ0X1JYX01zayAgICAgICAgICAgKDB4M0ZGVSA8PCBVU0JfQ09VTlQ0X1JYX0NPVU5UNF9SWF9Qb3MpIC8qITwgMHgwMDAwMDNGRiAqLw0KI2RlZmluZSBVU0JfQ09VTlQ0X1JYX0NPVU5UNF9SWCAgICAgICAgICAgICAgIFVTQl9DT1VOVDRfUlhfQ09VTlQ0X1JYX01zayAgICAgIC8qITwgUmVjZXB0aW9uIEJ5dGUgQ291bnQgKi8NCg0KI2RlZmluZSBVU0JfQ09VTlQ0X1JYX05VTV9CTE9DS19Qb3MgICAgICAgICAgICgxMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0JfQ09VTlQ0X1JYX05VTV9CTE9DS19Nc2sgICAgICAgICAgICgweDFGVSA8PCBVU0JfQ09VTlQ0X1JYX05VTV9CTE9DS19Qb3MpIC8qITwgMHgwMDAwN0MwMCAqLw0KI2RlZmluZSBVU0JfQ09VTlQ0X1JYX05VTV9CTE9DSyAgICAgICAgICAgICAgIFVTQl9DT1VOVDRfUlhfTlVNX0JMT0NLX01zayAgICAgIC8qITwgTlVNX0JMT0NLWzQ6MF0gYml0cyAoTnVtYmVyIG9mIGJsb2NrcykgKi8NCiNkZWZpbmUgVVNCX0NPVU5UNF9SWF9OVU1fQkxPQ0tfMCAgICAgICAgICAgICAoMHgwMVUgPDwgVVNCX0NPVU5UNF9SWF9OVU1fQkxPQ0tfUG9zKSAvKiE8IDB4MDAwMDA0MDAgKi8NCiNkZWZpbmUgVVNCX0NPVU5UNF9SWF9OVU1fQkxPQ0tfMSAgICAgICAgICAgICAoMHgwMlUgPDwgVVNCX0NPVU5UNF9SWF9OVU1fQkxPQ0tfUG9zKSAvKiE8IDB4MDAwMDA4MDAgKi8NCiNkZWZpbmUgVVNCX0NPVU5UNF9SWF9OVU1fQkxPQ0tfMiAgICAgICAgICAgICAoMHgwNFUgPDwgVVNCX0NPVU5UNF9SWF9OVU1fQkxPQ0tfUG9zKSAvKiE8IDB4MDAwMDEwMDAgKi8NCiNkZWZpbmUgVVNCX0NPVU5UNF9SWF9OVU1fQkxPQ0tfMyAgICAgICAgICAgICAoMHgwOFUgPDwgVVNCX0NPVU5UNF9SWF9OVU1fQkxPQ0tfUG9zKSAvKiE8IDB4MDAwMDIwMDAgKi8NCiNkZWZpbmUgVVNCX0NPVU5UNF9SWF9OVU1fQkxPQ0tfNCAgICAgICAgICAgICAoMHgxMFUgPDwgVVNCX0NPVU5UNF9SWF9OVU1fQkxPQ0tfUG9zKSAvKiE8IDB4MDAwMDQwMDAgKi8NCg0KI2RlZmluZSBVU0JfQ09VTlQ0X1JYX0JMU0laRV9Qb3MgICAgICAgICAgICAgICgxNVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0JfQ09VTlQ0X1JYX0JMU0laRV9Nc2sgICAgICAgICAgICAgICgweDFVIDw8IFVTQl9DT1VOVDRfUlhfQkxTSVpFX1BvcykgLyohPCAweDAwMDA4MDAwICovDQojZGVmaW5lIFVTQl9DT1VOVDRfUlhfQkxTSVpFICAgICAgICAgICAgICAgICAgVVNCX0NPVU5UNF9SWF9CTFNJWkVfTXNrICAgICAgICAgLyohPCBCTG9jayBTSVpFICovDQoNCi8qKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFVTQl9DT1VOVDVfUlggcmVnaXN0ZXIgICoqKioqKioqKioqKioqKiovDQojZGVmaW5lIFVTQl9DT1VOVDVfUlhfQ09VTlQ1X1JYX1BvcyAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQl9DT1VOVDVfUlhfQ09VTlQ1X1JYX01zayAgICAgICAgICAgKDB4M0ZGVSA8PCBVU0JfQ09VTlQ1X1JYX0NPVU5UNV9SWF9Qb3MpIC8qITwgMHgwMDAwMDNGRiAqLw0KI2RlZmluZSBVU0JfQ09VTlQ1X1JYX0NPVU5UNV9SWCAgICAgICAgICAgICAgIFVTQl9DT1VOVDVfUlhfQ09VTlQ1X1JYX01zayAgICAgIC8qITwgUmVjZXB0aW9uIEJ5dGUgQ291bnQgKi8NCg0KI2RlZmluZSBVU0JfQ09VTlQ1X1JYX05VTV9CTE9DS19Qb3MgICAgICAgICAgICgxMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0JfQ09VTlQ1X1JYX05VTV9CTE9DS19Nc2sgICAgICAgICAgICgweDFGVSA8PCBVU0JfQ09VTlQ1X1JYX05VTV9CTE9DS19Qb3MpIC8qITwgMHgwMDAwN0MwMCAqLw0KI2RlZmluZSBVU0JfQ09VTlQ1X1JYX05VTV9CTE9DSyAgICAgICAgICAgICAgIFVTQl9DT1VOVDVfUlhfTlVNX0JMT0NLX01zayAgICAgIC8qITwgTlVNX0JMT0NLWzQ6MF0gYml0cyAoTnVtYmVyIG9mIGJsb2NrcykgKi8NCiNkZWZpbmUgVVNCX0NPVU5UNV9SWF9OVU1fQkxPQ0tfMCAgICAgICAgICAgICAoMHgwMVUgPDwgVVNCX0NPVU5UNV9SWF9OVU1fQkxPQ0tfUG9zKSAvKiE8IDB4MDAwMDA0MDAgKi8NCiNkZWZpbmUgVVNCX0NPVU5UNV9SWF9OVU1fQkxPQ0tfMSAgICAgICAgICAgICAoMHgwMlUgPDwgVVNCX0NPVU5UNV9SWF9OVU1fQkxPQ0tfUG9zKSAvKiE8IDB4MDAwMDA4MDAgKi8NCiNkZWZpbmUgVVNCX0NPVU5UNV9SWF9OVU1fQkxPQ0tfMiAgICAgICAgICAgICAoMHgwNFUgPDwgVVNCX0NPVU5UNV9SWF9OVU1fQkxPQ0tfUG9zKSAvKiE8IDB4MDAwMDEwMDAgKi8NCiNkZWZpbmUgVVNCX0NPVU5UNV9SWF9OVU1fQkxPQ0tfMyAgICAgICAgICAgICAoMHgwOFUgPDwgVVNCX0NPVU5UNV9SWF9OVU1fQkxPQ0tfUG9zKSAvKiE8IDB4MDAwMDIwMDAgKi8NCiNkZWZpbmUgVVNCX0NPVU5UNV9SWF9OVU1fQkxPQ0tfNCAgICAgICAgICAgICAoMHgxMFUgPDwgVVNCX0NPVU5UNV9SWF9OVU1fQkxPQ0tfUG9zKSAvKiE8IDB4MDAwMDQwMDAgKi8NCg0KI2RlZmluZSBVU0JfQ09VTlQ1X1JYX0JMU0laRV9Qb3MgICAgICAgICAgICAgICgxNVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0JfQ09VTlQ1X1JYX0JMU0laRV9Nc2sgICAgICAgICAgICAgICgweDFVIDw8IFVTQl9DT1VOVDVfUlhfQkxTSVpFX1BvcykgLyohPCAweDAwMDA4MDAwICovDQojZGVmaW5lIFVTQl9DT1VOVDVfUlhfQkxTSVpFICAgICAgICAgICAgICAgICAgVVNCX0NPVU5UNV9SWF9CTFNJWkVfTXNrICAgICAgICAgLyohPCBCTG9jayBTSVpFICovDQoNCi8qKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFVTQl9DT1VOVDZfUlggcmVnaXN0ZXIgICoqKioqKioqKioqKioqKiovDQojZGVmaW5lIFVTQl9DT1VOVDZfUlhfQ09VTlQ2X1JYX1BvcyAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQl9DT1VOVDZfUlhfQ09VTlQ2X1JYX01zayAgICAgICAgICAgKDB4M0ZGVSA8PCBVU0JfQ09VTlQ2X1JYX0NPVU5UNl9SWF9Qb3MpIC8qITwgMHgwMDAwMDNGRiAqLw0KI2RlZmluZSBVU0JfQ09VTlQ2X1JYX0NPVU5UNl9SWCAgICAgICAgICAgICAgIFVTQl9DT1VOVDZfUlhfQ09VTlQ2X1JYX01zayAgICAgIC8qITwgUmVjZXB0aW9uIEJ5dGUgQ291bnQgKi8NCg0KI2RlZmluZSBVU0JfQ09VTlQ2X1JYX05VTV9CTE9DS19Qb3MgICAgICAgICAgICgxMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0JfQ09VTlQ2X1JYX05VTV9CTE9DS19Nc2sgICAgICAgICAgICgweDFGVSA8PCBVU0JfQ09VTlQ2X1JYX05VTV9CTE9DS19Qb3MpIC8qITwgMHgwMDAwN0MwMCAqLw0KI2RlZmluZSBVU0JfQ09VTlQ2X1JYX05VTV9CTE9DSyAgICAgICAgICAgICAgIFVTQl9DT1VOVDZfUlhfTlVNX0JMT0NLX01zayAgICAgIC8qITwgTlVNX0JMT0NLWzQ6MF0gYml0cyAoTnVtYmVyIG9mIGJsb2NrcykgKi8NCiNkZWZpbmUgVVNCX0NPVU5UNl9SWF9OVU1fQkxPQ0tfMCAgICAgICAgICAgICAoMHgwMVUgPDwgVVNCX0NPVU5UNl9SWF9OVU1fQkxPQ0tfUG9zKSAvKiE8IDB4MDAwMDA0MDAgKi8NCiNkZWZpbmUgVVNCX0NPVU5UNl9SWF9OVU1fQkxPQ0tfMSAgICAgICAgICAgICAoMHgwMlUgPDwgVVNCX0NPVU5UNl9SWF9OVU1fQkxPQ0tfUG9zKSAvKiE8IDB4MDAwMDA4MDAgKi8NCiNkZWZpbmUgVVNCX0NPVU5UNl9SWF9OVU1fQkxPQ0tfMiAgICAgICAgICAgICAoMHgwNFUgPDwgVVNCX0NPVU5UNl9SWF9OVU1fQkxPQ0tfUG9zKSAvKiE8IDB4MDAwMDEwMDAgKi8NCiNkZWZpbmUgVVNCX0NPVU5UNl9SWF9OVU1fQkxPQ0tfMyAgICAgICAgICAgICAoMHgwOFUgPDwgVVNCX0NPVU5UNl9SWF9OVU1fQkxPQ0tfUG9zKSAvKiE8IDB4MDAwMDIwMDAgKi8NCiNkZWZpbmUgVVNCX0NPVU5UNl9SWF9OVU1fQkxPQ0tfNCAgICAgICAgICAgICAoMHgxMFUgPDwgVVNCX0NPVU5UNl9SWF9OVU1fQkxPQ0tfUG9zKSAvKiE8IDB4MDAwMDQwMDAgKi8NCg0KI2RlZmluZSBVU0JfQ09VTlQ2X1JYX0JMU0laRV9Qb3MgICAgICAgICAgICAgICgxNVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0JfQ09VTlQ2X1JYX0JMU0laRV9Nc2sgICAgICAgICAgICAgICgweDFVIDw8IFVTQl9DT1VOVDZfUlhfQkxTSVpFX1BvcykgLyohPCAweDAwMDA4MDAwICovDQojZGVmaW5lIFVTQl9DT1VOVDZfUlhfQkxTSVpFICAgICAgICAgICAgICAgICAgVVNCX0NPVU5UNl9SWF9CTFNJWkVfTXNrICAgICAgICAgLyohPCBCTG9jayBTSVpFICovDQoNCi8qKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFVTQl9DT1VOVDdfUlggcmVnaXN0ZXIgICoqKioqKioqKioqKioqKiovDQojZGVmaW5lIFVTQl9DT1VOVDdfUlhfQ09VTlQ3X1JYX1BvcyAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQl9DT1VOVDdfUlhfQ09VTlQ3X1JYX01zayAgICAgICAgICAgKDB4M0ZGVSA8PCBVU0JfQ09VTlQ3X1JYX0NPVU5UN19SWF9Qb3MpIC8qITwgMHgwMDAwMDNGRiAqLw0KI2RlZmluZSBVU0JfQ09VTlQ3X1JYX0NPVU5UN19SWCAgICAgICAgICAgICAgIFVTQl9DT1VOVDdfUlhfQ09VTlQ3X1JYX01zayAgICAgIC8qITwgUmVjZXB0aW9uIEJ5dGUgQ291bnQgKi8NCg0KI2RlZmluZSBVU0JfQ09VTlQ3X1JYX05VTV9CTE9DS19Qb3MgICAgICAgICAgICgxMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0JfQ09VTlQ3X1JYX05VTV9CTE9DS19Nc2sgICAgICAgICAgICgweDFGVSA8PCBVU0JfQ09VTlQ3X1JYX05VTV9CTE9DS19Qb3MpIC8qITwgMHgwMDAwN0MwMCAqLw0KI2RlZmluZSBVU0JfQ09VTlQ3X1JYX05VTV9CTE9DSyAgICAgICAgICAgICAgIFVTQl9DT1VOVDdfUlhfTlVNX0JMT0NLX01zayAgICAgIC8qITwgTlVNX0JMT0NLWzQ6MF0gYml0cyAoTnVtYmVyIG9mIGJsb2NrcykgKi8NCiNkZWZpbmUgVVNCX0NPVU5UN19SWF9OVU1fQkxPQ0tfMCAgICAgICAgICAgICAoMHgwMVUgPDwgVVNCX0NPVU5UN19SWF9OVU1fQkxPQ0tfUG9zKSAvKiE8IDB4MDAwMDA0MDAgKi8NCiNkZWZpbmUgVVNCX0NPVU5UN19SWF9OVU1fQkxPQ0tfMSAgICAgICAgICAgICAoMHgwMlUgPDwgVVNCX0NPVU5UN19SWF9OVU1fQkxPQ0tfUG9zKSAvKiE8IDB4MDAwMDA4MDAgKi8NCiNkZWZpbmUgVVNCX0NPVU5UN19SWF9OVU1fQkxPQ0tfMiAgICAgICAgICAgICAoMHgwNFUgPDwgVVNCX0NPVU5UN19SWF9OVU1fQkxPQ0tfUG9zKSAvKiE8IDB4MDAwMDEwMDAgKi8NCiNkZWZpbmUgVVNCX0NPVU5UN19SWF9OVU1fQkxPQ0tfMyAgICAgICAgICAgICAoMHgwOFUgPDwgVVNCX0NPVU5UN19SWF9OVU1fQkxPQ0tfUG9zKSAvKiE8IDB4MDAwMDIwMDAgKi8NCiNkZWZpbmUgVVNCX0NPVU5UN19SWF9OVU1fQkxPQ0tfNCAgICAgICAgICAgICAoMHgxMFUgPDwgVVNCX0NPVU5UN19SWF9OVU1fQkxPQ0tfUG9zKSAvKiE8IDB4MDAwMDQwMDAgKi8NCg0KI2RlZmluZSBVU0JfQ09VTlQ3X1JYX0JMU0laRV9Qb3MgICAgICAgICAgICAgICgxNVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0JfQ09VTlQ3X1JYX0JMU0laRV9Nc2sgICAgICAgICAgICAgICgweDFVIDw8IFVTQl9DT1VOVDdfUlhfQkxTSVpFX1BvcykgLyohPCAweDAwMDA4MDAwICovDQojZGVmaW5lIFVTQl9DT1VOVDdfUlhfQkxTSVpFICAgICAgICAgICAgICAgICAgVVNCX0NPVU5UN19SWF9CTFNJWkVfTXNrICAgICAgICAgLyohPCBCTG9jayBTSVpFICovDQoNCi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovDQoNCi8qKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgVVNCX0NPVU5UMF9SWF8wIHJlZ2lzdGVyICAqKioqKioqKioqKioqKiovDQojZGVmaW5lIFVTQl9DT1VOVDBfUlhfMF9DT1VOVDBfUlhfMCAgICAgICAgICAgKDB4MDAwMDAzRkZVKSAgICAgICAgICAgICAgICAgICAgLyohPCBSZWNlcHRpb24gQnl0ZSBDb3VudCAobG93KSAqLw0KDQojZGVmaW5lIFVTQl9DT1VOVDBfUlhfMF9OVU1fQkxPQ0tfMCAgICAgICAgICAgKDB4MDAwMDdDMDBVKSAgICAgICAgICAgICAgICAgICAgLyohPCBOVU1fQkxPQ0tfMFs0OjBdIGJpdHMgKE51bWJlciBvZiBibG9ja3MpIChsb3cpICovDQojZGVmaW5lIFVTQl9DT1VOVDBfUlhfMF9OVU1fQkxPQ0tfMF8wICAgICAgICAgKDB4MDAwMDA0MDBVKSAgICAgICAgICAgICAgICAgICAgLyohPCBCaXQgMCAqLw0KI2RlZmluZSBVU0JfQ09VTlQwX1JYXzBfTlVNX0JMT0NLXzBfMSAgICAgICAgICgweDAwMDAwODAwVSkgICAgICAgICAgICAgICAgICAgIC8qITwgQml0IDEgKi8NCiNkZWZpbmUgVVNCX0NPVU5UMF9SWF8wX05VTV9CTE9DS18wXzIgICAgICAgICAoMHgwMDAwMTAwMFUpICAgICAgICAgICAgICAgICAgICAvKiE8IEJpdCAyICovDQojZGVmaW5lIFVTQl9DT1VOVDBfUlhfMF9OVU1fQkxPQ0tfMF8zICAgICAgICAgKDB4MDAwMDIwMDBVKSAgICAgICAgICAgICAgICAgICAgLyohPCBCaXQgMyAqLw0KI2RlZmluZSBVU0JfQ09VTlQwX1JYXzBfTlVNX0JMT0NLXzBfNCAgICAgICAgICgweDAwMDA0MDAwVSkgICAgICAgICAgICAgICAgICAgIC8qITwgQml0IDQgKi8NCg0KI2RlZmluZSBVU0JfQ09VTlQwX1JYXzBfQkxTSVpFXzAgICAgICAgICAgICAgICgweDAwMDA4MDAwVSkgICAgICAgICAgICAgICAgICAgIC8qITwgQkxvY2sgU0laRSAobG93KSAqLw0KDQovKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFVTQl9DT1VOVDBfUlhfMSByZWdpc3RlciAgKioqKioqKioqKioqKioqLw0KI2RlZmluZSBVU0JfQ09VTlQwX1JYXzFfQ09VTlQwX1JYXzEgICAgICAgICAgICgweDAzRkYwMDAwVSkgICAgICAgICAgICAgICAgICAgIC8qITwgUmVjZXB0aW9uIEJ5dGUgQ291bnQgKGhpZ2gpICovDQoNCiNkZWZpbmUgVVNCX0NPVU5UMF9SWF8xX05VTV9CTE9DS18xICAgICAgICAgICAoMHg3QzAwMDAwMFUpICAgICAgICAgICAgICAgICAgICAvKiE8IE5VTV9CTE9DS18xWzQ6MF0gYml0cyAoTnVtYmVyIG9mIGJsb2NrcykgKGhpZ2gpICovDQojZGVmaW5lIFVTQl9DT1VOVDBfUlhfMV9OVU1fQkxPQ0tfMV8wICAgICAgICAgKDB4MDQwMDAwMDBVKSAgICAgICAgICAgICAgICAgICAgLyohPCBCaXQgMSAqLw0KI2RlZmluZSBVU0JfQ09VTlQwX1JYXzFfTlVNX0JMT0NLXzFfMSAgICAgICAgICgweDA4MDAwMDAwVSkgICAgICAgICAgICAgICAgICAgIC8qITwgQml0IDEgKi8NCiNkZWZpbmUgVVNCX0NPVU5UMF9SWF8xX05VTV9CTE9DS18xXzIgICAgICAgICAoMHgxMDAwMDAwMFUpICAgICAgICAgICAgICAgICAgICAvKiE8IEJpdCAyICovDQojZGVmaW5lIFVTQl9DT1VOVDBfUlhfMV9OVU1fQkxPQ0tfMV8zICAgICAgICAgKDB4MjAwMDAwMDBVKSAgICAgICAgICAgICAgICAgICAgLyohPCBCaXQgMyAqLw0KI2RlZmluZSBVU0JfQ09VTlQwX1JYXzFfTlVNX0JMT0NLXzFfNCAgICAgICAgICgweDQwMDAwMDAwVSkgICAgICAgICAgICAgICAgICAgIC8qITwgQml0IDQgKi8NCg0KI2RlZmluZSBVU0JfQ09VTlQwX1JYXzFfQkxTSVpFXzEgICAgICAgICAgICAgICgweDgwMDAwMDAwVSkgICAgICAgICAgICAgICAgICAgIC8qITwgQkxvY2sgU0laRSAoaGlnaCkgKi8NCg0KLyoqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBVU0JfQ09VTlQxX1JYXzAgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKi8NCiNkZWZpbmUgVVNCX0NPVU5UMV9SWF8wX0NPVU5UMV9SWF8wICAgICAgICAgICAoMHgwMDAwMDNGRlUpICAgICAgICAgICAgICAgICAgICAvKiE8IFJlY2VwdGlvbiBCeXRlIENvdW50IChsb3cpICovDQoNCiNkZWZpbmUgVVNCX0NPVU5UMV9SWF8wX05VTV9CTE9DS18wICAgICAgICAgICAoMHgwMDAwN0MwMFUpICAgICAgICAgICAgICAgICAgICAvKiE8IE5VTV9CTE9DS18wWzQ6MF0gYml0cyAoTnVtYmVyIG9mIGJsb2NrcykgKGxvdykgKi8NCiNkZWZpbmUgVVNCX0NPVU5UMV9SWF8wX05VTV9CTE9DS18wXzAgICAgICAgICAoMHgwMDAwMDQwMFUpICAgICAgICAgICAgICAgICAgICAvKiE8IEJpdCAwICovDQojZGVmaW5lIFVTQl9DT1VOVDFfUlhfMF9OVU1fQkxPQ0tfMF8xICAgICAgICAgKDB4MDAwMDA4MDBVKSAgICAgICAgICAgICAgICAgICAgLyohPCBCaXQgMSAqLw0KI2RlZmluZSBVU0JfQ09VTlQxX1JYXzBfTlVNX0JMT0NLXzBfMiAgICAgICAgICgweDAwMDAxMDAwVSkgICAgICAgICAgICAgICAgICAgIC8qITwgQml0IDIgKi8NCiNkZWZpbmUgVVNCX0NPVU5UMV9SWF8wX05VTV9CTE9DS18wXzMgICAgICAgICAoMHgwMDAwMjAwMFUpICAgICAgICAgICAgICAgICAgICAvKiE8IEJpdCAzICovDQojZGVmaW5lIFVTQl9DT1VOVDFfUlhfMF9OVU1fQkxPQ0tfMF80ICAgICAgICAgKDB4MDAwMDQwMDBVKSAgICAgICAgICAgICAgICAgICAgLyohPCBCaXQgNCAqLw0KDQojZGVmaW5lIFVTQl9DT1VOVDFfUlhfMF9CTFNJWkVfMCAgICAgICAgICAgICAgKDB4MDAwMDgwMDBVKSAgICAgICAgICAgICAgICAgICAgLyohPCBCTG9jayBTSVpFIChsb3cpICovDQoNCi8qKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgVVNCX0NPVU5UMV9SWF8xIHJlZ2lzdGVyICAqKioqKioqKioqKioqKiovDQojZGVmaW5lIFVTQl9DT1VOVDFfUlhfMV9DT1VOVDFfUlhfMSAgICAgICAgICAgKDB4MDNGRjAwMDBVKSAgICAgICAgICAgICAgICAgICAgLyohPCBSZWNlcHRpb24gQnl0ZSBDb3VudCAoaGlnaCkgKi8NCg0KI2RlZmluZSBVU0JfQ09VTlQxX1JYXzFfTlVNX0JMT0NLXzEgICAgICAgICAgICgweDdDMDAwMDAwVSkgICAgICAgICAgICAgICAgICAgIC8qITwgTlVNX0JMT0NLXzFbNDowXSBiaXRzIChOdW1iZXIgb2YgYmxvY2tzKSAoaGlnaCkgKi8NCiNkZWZpbmUgVVNCX0NPVU5UMV9SWF8xX05VTV9CTE9DS18xXzAgICAgICAgICAoMHgwNDAwMDAwMFUpICAgICAgICAgICAgICAgICAgICAvKiE8IEJpdCAwICovDQojZGVmaW5lIFVTQl9DT1VOVDFfUlhfMV9OVU1fQkxPQ0tfMV8xICAgICAgICAgKDB4MDgwMDAwMDBVKSAgICAgICAgICAgICAgICAgICAgLyohPCBCaXQgMSAqLw0KI2RlZmluZSBVU0JfQ09VTlQxX1JYXzFfTlVNX0JMT0NLXzFfMiAgICAgICAgICgweDEwMDAwMDAwVSkgICAgICAgICAgICAgICAgICAgIC8qITwgQml0IDIgKi8NCiNkZWZpbmUgVVNCX0NPVU5UMV9SWF8xX05VTV9CTE9DS18xXzMgICAgICAgICAoMHgyMDAwMDAwMFUpICAgICAgICAgICAgICAgICAgICAvKiE8IEJpdCAzICovDQojZGVmaW5lIFVTQl9DT1VOVDFfUlhfMV9OVU1fQkxPQ0tfMV80ICAgICAgICAgKDB4NDAwMDAwMDBVKSAgICAgICAgICAgICAgICAgICAgLyohPCBCaXQgNCAqLw0KDQojZGVmaW5lIFVTQl9DT1VOVDFfUlhfMV9CTFNJWkVfMSAgICAgICAgICAgICAgKDB4ODAwMDAwMDBVKSAgICAgICAgICAgICAgICAgICAgLyohPCBCTG9jayBTSVpFIChoaWdoKSAqLw0KDQovKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFVTQl9DT1VOVDJfUlhfMCByZWdpc3RlciAgKioqKioqKioqKioqKioqLw0KI2RlZmluZSBVU0JfQ09VTlQyX1JYXzBfQ09VTlQyX1JYXzAgICAgICAgICAgICgweDAwMDAwM0ZGVSkgICAgICAgICAgICAgICAgICAgIC8qITwgUmVjZXB0aW9uIEJ5dGUgQ291bnQgKGxvdykgKi8NCg0KI2RlZmluZSBVU0JfQ09VTlQyX1JYXzBfTlVNX0JMT0NLXzAgICAgICAgICAgICgweDAwMDA3QzAwVSkgICAgICAgICAgICAgICAgICAgIC8qITwgTlVNX0JMT0NLXzBbNDowXSBiaXRzIChOdW1iZXIgb2YgYmxvY2tzKSAobG93KSAqLw0KI2RlZmluZSBVU0JfQ09VTlQyX1JYXzBfTlVNX0JMT0NLXzBfMCAgICAgICAgICgweDAwMDAwNDAwVSkgICAgICAgICAgICAgICAgICAgIC8qITwgQml0IDAgKi8NCiNkZWZpbmUgVVNCX0NPVU5UMl9SWF8wX05VTV9CTE9DS18wXzEgICAgICAgICAoMHgwMDAwMDgwMFUpICAgICAgICAgICAgICAgICAgICAvKiE8IEJpdCAxICovDQojZGVmaW5lIFVTQl9DT1VOVDJfUlhfMF9OVU1fQkxPQ0tfMF8yICAgICAgICAgKDB4MDAwMDEwMDBVKSAgICAgICAgICAgICAgICAgICAgLyohPCBCaXQgMiAqLw0KI2RlZmluZSBVU0JfQ09VTlQyX1JYXzBfTlVNX0JMT0NLXzBfMyAgICAgICAgICgweDAwMDAyMDAwVSkgICAgICAgICAgICAgICAgICAgIC8qITwgQml0IDMgKi8NCiNkZWZpbmUgVVNCX0NPVU5UMl9SWF8wX05VTV9CTE9DS18wXzQgICAgICAgICAoMHgwMDAwNDAwMFUpICAgICAgICAgICAgICAgICAgICAvKiE8IEJpdCA0ICovDQoNCiNkZWZpbmUgVVNCX0NPVU5UMl9SWF8wX0JMU0laRV8wICAgICAgICAgICAgICAoMHgwMDAwODAwMFUpICAgICAgICAgICAgICAgICAgICAvKiE8IEJMb2NrIFNJWkUgKGxvdykgKi8NCg0KLyoqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBVU0JfQ09VTlQyX1JYXzEgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKi8NCiNkZWZpbmUgVVNCX0NPVU5UMl9SWF8xX0NPVU5UMl9SWF8xICAgICAgICAgICAoMHgwM0ZGMDAwMFUpICAgICAgICAgICAgICAgICAgICAvKiE8IFJlY2VwdGlvbiBCeXRlIENvdW50IChoaWdoKSAqLw0KDQojZGVmaW5lIFVTQl9DT1VOVDJfUlhfMV9OVU1fQkxPQ0tfMSAgICAgICAgICAgKDB4N0MwMDAwMDBVKSAgICAgICAgICAgICAgICAgICAgLyohPCBOVU1fQkxPQ0tfMVs0OjBdIGJpdHMgKE51bWJlciBvZiBibG9ja3MpIChoaWdoKSAqLw0KI2RlZmluZSBVU0JfQ09VTlQyX1JYXzFfTlVNX0JMT0NLXzFfMCAgICAgICAgICgweDA0MDAwMDAwVSkgICAgICAgICAgICAgICAgICAgIC8qITwgQml0IDAgKi8NCiNkZWZpbmUgVVNCX0NPVU5UMl9SWF8xX05VTV9CTE9DS18xXzEgICAgICAgICAoMHgwODAwMDAwMFUpICAgICAgICAgICAgICAgICAgICAvKiE8IEJpdCAxICovDQojZGVmaW5lIFVTQl9DT1VOVDJfUlhfMV9OVU1fQkxPQ0tfMV8yICAgICAgICAgKDB4MTAwMDAwMDBVKSAgICAgICAgICAgICAgICAgICAgLyohPCBCaXQgMiAqLw0KI2RlZmluZSBVU0JfQ09VTlQyX1JYXzFfTlVNX0JMT0NLXzFfMyAgICAgICAgICgweDIwMDAwMDAwVSkgICAgICAgICAgICAgICAgICAgIC8qITwgQml0IDMgKi8NCiNkZWZpbmUgVVNCX0NPVU5UMl9SWF8xX05VTV9CTE9DS18xXzQgICAgICAgICAoMHg0MDAwMDAwMFUpICAgICAgICAgICAgICAgICAgICAvKiE8IEJpdCA0ICovDQoNCiNkZWZpbmUgVVNCX0NPVU5UMl9SWF8xX0JMU0laRV8xICAgICAgICAgICAgICAoMHg4MDAwMDAwMFUpICAgICAgICAgICAgICAgICAgICAvKiE8IEJMb2NrIFNJWkUgKGhpZ2gpICovDQoNCi8qKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgVVNCX0NPVU5UM19SWF8wIHJlZ2lzdGVyICAqKioqKioqKioqKioqKiovDQojZGVmaW5lIFVTQl9DT1VOVDNfUlhfMF9DT1VOVDNfUlhfMCAgICAgICAgICAgKDB4MDAwMDAzRkZVKSAgICAgICAgICAgICAgICAgICAgLyohPCBSZWNlcHRpb24gQnl0ZSBDb3VudCAobG93KSAqLw0KDQojZGVmaW5lIFVTQl9DT1VOVDNfUlhfMF9OVU1fQkxPQ0tfMCAgICAgICAgICAgKDB4MDAwMDdDMDBVKSAgICAgICAgICAgICAgICAgICAgLyohPCBOVU1fQkxPQ0tfMFs0OjBdIGJpdHMgKE51bWJlciBvZiBibG9ja3MpIChsb3cpICovDQojZGVmaW5lIFVTQl9DT1VOVDNfUlhfMF9OVU1fQkxPQ0tfMF8wICAgICAgICAgKDB4MDAwMDA0MDBVKSAgICAgICAgICAgICAgICAgICAgLyohPCBCaXQgMCAqLw0KI2RlZmluZSBVU0JfQ09VTlQzX1JYXzBfTlVNX0JMT0NLXzBfMSAgICAgICAgICgweDAwMDAwODAwVSkgICAgICAgICAgICAgICAgICAgIC8qITwgQml0IDEgKi8NCiNkZWZpbmUgVVNCX0NPVU5UM19SWF8wX05VTV9CTE9DS18wXzIgICAgICAgICAoMHgwMDAwMTAwMFUpICAgICAgICAgICAgICAgICAgICAvKiE8IEJpdCAyICovDQojZGVmaW5lIFVTQl9DT1VOVDNfUlhfMF9OVU1fQkxPQ0tfMF8zICAgICAgICAgKDB4MDAwMDIwMDBVKSAgICAgICAgICAgICAgICAgICAgLyohPCBCaXQgMyAqLw0KI2RlZmluZSBVU0JfQ09VTlQzX1JYXzBfTlVNX0JMT0NLXzBfNCAgICAgICAgICgweDAwMDA0MDAwVSkgICAgICAgICAgICAgICAgICAgIC8qITwgQml0IDQgKi8NCg0KI2RlZmluZSBVU0JfQ09VTlQzX1JYXzBfQkxTSVpFXzAgICAgICAgICAgICAgICgweDAwMDA4MDAwVSkgICAgICAgICAgICAgICAgICAgIC8qITwgQkxvY2sgU0laRSAobG93KSAqLw0KDQovKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFVTQl9DT1VOVDNfUlhfMSByZWdpc3RlciAgKioqKioqKioqKioqKioqLw0KI2RlZmluZSBVU0JfQ09VTlQzX1JYXzFfQ09VTlQzX1JYXzEgICAgICAgICAgICgweDAzRkYwMDAwVSkgICAgICAgICAgICAgICAgICAgIC8qITwgUmVjZXB0aW9uIEJ5dGUgQ291bnQgKGhpZ2gpICovDQoNCiNkZWZpbmUgVVNCX0NPVU5UM19SWF8xX05VTV9CTE9DS18xICAgICAgICAgICAoMHg3QzAwMDAwMFUpICAgICAgICAgICAgICAgICAgICAvKiE8IE5VTV9CTE9DS18xWzQ6MF0gYml0cyAoTnVtYmVyIG9mIGJsb2NrcykgKGhpZ2gpICovDQojZGVmaW5lIFVTQl9DT1VOVDNfUlhfMV9OVU1fQkxPQ0tfMV8wICAgICAgICAgKDB4MDQwMDAwMDBVKSAgICAgICAgICAgICAgICAgICAgLyohPCBCaXQgMCAqLw0KI2RlZmluZSBVU0JfQ09VTlQzX1JYXzFfTlVNX0JMT0NLXzFfMSAgICAgICAgICgweDA4MDAwMDAwVSkgICAgICAgICAgICAgICAgICAgIC8qITwgQml0IDEgKi8NCiNkZWZpbmUgVVNCX0NPVU5UM19SWF8xX05VTV9CTE9DS18xXzIgICAgICAgICAoMHgxMDAwMDAwMFUpICAgICAgICAgICAgICAgICAgICAvKiE8IEJpdCAyICovDQojZGVmaW5lIFVTQl9DT1VOVDNfUlhfMV9OVU1fQkxPQ0tfMV8zICAgICAgICAgKDB4MjAwMDAwMDBVKSAgICAgICAgICAgICAgICAgICAgLyohPCBCaXQgMyAqLw0KI2RlZmluZSBVU0JfQ09VTlQzX1JYXzFfTlVNX0JMT0NLXzFfNCAgICAgICAgICgweDQwMDAwMDAwVSkgICAgICAgICAgICAgICAgICAgIC8qITwgQml0IDQgKi8NCg0KI2RlZmluZSBVU0JfQ09VTlQzX1JYXzFfQkxTSVpFXzEgICAgICAgICAgICAgICgweDgwMDAwMDAwVSkgICAgICAgICAgICAgICAgICAgIC8qITwgQkxvY2sgU0laRSAoaGlnaCkgKi8NCg0KLyoqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBVU0JfQ09VTlQ0X1JYXzAgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKi8NCiNkZWZpbmUgVVNCX0NPVU5UNF9SWF8wX0NPVU5UNF9SWF8wICAgICAgICAgICAoMHgwMDAwMDNGRlUpICAgICAgICAgICAgICAgICAgICAvKiE8IFJlY2VwdGlvbiBCeXRlIENvdW50IChsb3cpICovDQoNCiNkZWZpbmUgVVNCX0NPVU5UNF9SWF8wX05VTV9CTE9DS18wICAgICAgICAgICAoMHgwMDAwN0MwMFUpICAgICAgICAgICAgICAgICAgICAvKiE8IE5VTV9CTE9DS18wWzQ6MF0gYml0cyAoTnVtYmVyIG9mIGJsb2NrcykgKGxvdykgKi8NCiNkZWZpbmUgVVNCX0NPVU5UNF9SWF8wX05VTV9CTE9DS18wXzAgICAgICAgICAoMHgwMDAwMDQwMFUpICAgICAgICAgICAgICAgICAgICAvKiE8IEJpdCAwICovDQojZGVmaW5lIFVTQl9DT1VOVDRfUlhfMF9OVU1fQkxPQ0tfMF8xICAgICAgICAgKDB4MDAwMDA4MDBVKSAgICAgICAgICAgICAgICAgICAgLyohPCBCaXQgMSAqLw0KI2RlZmluZSBVU0JfQ09VTlQ0X1JYXzBfTlVNX0JMT0NLXzBfMiAgICAgICAgICgweDAwMDAxMDAwVSkgICAgICAgICAgICAgICAgICAgIC8qITwgQml0IDIgKi8NCiNkZWZpbmUgVVNCX0NPVU5UNF9SWF8wX05VTV9CTE9DS18wXzMgICAgICAgICAoMHgwMDAwMjAwMFUpICAgICAgICAgICAgICAgICAgICAvKiE8IEJpdCAzICovDQojZGVmaW5lIFVTQl9DT1VOVDRfUlhfMF9OVU1fQkxPQ0tfMF80ICAgICAgICAgKDB4MDAwMDQwMDBVKSAgICAgICAgICAgICAgICAgICAgLyohPCBCaXQgNCAqLw0KDQojZGVmaW5lIFVTQl9DT1VOVDRfUlhfMF9CTFNJWkVfMCAgICAgICAgICAgICAgKDB4MDAwMDgwMDBVKSAgICAgICAgICAgICAgICAgICAgLyohPCBCTG9jayBTSVpFIChsb3cpICovDQoNCi8qKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgVVNCX0NPVU5UNF9SWF8xIHJlZ2lzdGVyICAqKioqKioqKioqKioqKiovDQojZGVmaW5lIFVTQl9DT1VOVDRfUlhfMV9DT1VOVDRfUlhfMSAgICAgICAgICAgKDB4MDNGRjAwMDBVKSAgICAgICAgICAgICAgICAgICAgLyohPCBSZWNlcHRpb24gQnl0ZSBDb3VudCAoaGlnaCkgKi8NCg0KI2RlZmluZSBVU0JfQ09VTlQ0X1JYXzFfTlVNX0JMT0NLXzEgICAgICAgICAgICgweDdDMDAwMDAwVSkgICAgICAgICAgICAgICAgICAgIC8qITwgTlVNX0JMT0NLXzFbNDowXSBiaXRzIChOdW1iZXIgb2YgYmxvY2tzKSAoaGlnaCkgKi8NCiNkZWZpbmUgVVNCX0NPVU5UNF9SWF8xX05VTV9CTE9DS18xXzAgICAgICAgICAoMHgwNDAwMDAwMFUpICAgICAgICAgICAgICAgICAgICAvKiE8IEJpdCAwICovDQojZGVmaW5lIFVTQl9DT1VOVDRfUlhfMV9OVU1fQkxPQ0tfMV8xICAgICAgICAgKDB4MDgwMDAwMDBVKSAgICAgICAgICAgICAgICAgICAgLyohPCBCaXQgMSAqLw0KI2RlZmluZSBVU0JfQ09VTlQ0X1JYXzFfTlVNX0JMT0NLXzFfMiAgICAgICAgICgweDEwMDAwMDAwVSkgICAgICAgICAgICAgICAgICAgIC8qITwgQml0IDIgKi8NCiNkZWZpbmUgVVNCX0NPVU5UNF9SWF8xX05VTV9CTE9DS18xXzMgICAgICAgICAoMHgyMDAwMDAwMFUpICAgICAgICAgICAgICAgICAgICAvKiE8IEJpdCAzICovDQojZGVmaW5lIFVTQl9DT1VOVDRfUlhfMV9OVU1fQkxPQ0tfMV80ICAgICAgICAgKDB4NDAwMDAwMDBVKSAgICAgICAgICAgICAgICAgICAgLyohPCBCaXQgNCAqLw0KDQojZGVmaW5lIFVTQl9DT1VOVDRfUlhfMV9CTFNJWkVfMSAgICAgICAgICAgICAgKDB4ODAwMDAwMDBVKSAgICAgICAgICAgICAgICAgICAgLyohPCBCTG9jayBTSVpFIChoaWdoKSAqLw0KDQovKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFVTQl9DT1VOVDVfUlhfMCByZWdpc3RlciAgKioqKioqKioqKioqKioqLw0KI2RlZmluZSBVU0JfQ09VTlQ1X1JYXzBfQ09VTlQ1X1JYXzAgICAgICAgICAgICgweDAwMDAwM0ZGVSkgICAgICAgICAgICAgICAgICAgIC8qITwgUmVjZXB0aW9uIEJ5dGUgQ291bnQgKGxvdykgKi8NCg0KI2RlZmluZSBVU0JfQ09VTlQ1X1JYXzBfTlVNX0JMT0NLXzAgICAgICAgICAgICgweDAwMDA3QzAwVSkgICAgICAgICAgICAgICAgICAgIC8qITwgTlVNX0JMT0NLXzBbNDowXSBiaXRzIChOdW1iZXIgb2YgYmxvY2tzKSAobG93KSAqLw0KI2RlZmluZSBVU0JfQ09VTlQ1X1JYXzBfTlVNX0JMT0NLXzBfMCAgICAgICAgICgweDAwMDAwNDAwVSkgICAgICAgICAgICAgICAgICAgIC8qITwgQml0IDAgKi8NCiNkZWZpbmUgVVNCX0NPVU5UNV9SWF8wX05VTV9CTE9DS18wXzEgICAgICAgICAoMHgwMDAwMDgwMFUpICAgICAgICAgICAgICAgICAgICAvKiE8IEJpdCAxICovDQojZGVmaW5lIFVTQl9DT1VOVDVfUlhfMF9OVU1fQkxPQ0tfMF8yICAgICAgICAgKDB4MDAwMDEwMDBVKSAgICAgICAgICAgICAgICAgICAgLyohPCBCaXQgMiAqLw0KI2RlZmluZSBVU0JfQ09VTlQ1X1JYXzBfTlVNX0JMT0NLXzBfMyAgICAgICAgICgweDAwMDAyMDAwVSkgICAgICAgICAgICAgICAgICAgIC8qITwgQml0IDMgKi8NCiNkZWZpbmUgVVNCX0NPVU5UNV9SWF8wX05VTV9CTE9DS18wXzQgICAgICAgICAoMHgwMDAwNDAwMFUpICAgICAgICAgICAgICAgICAgICAvKiE8IEJpdCA0ICovDQoNCiNkZWZpbmUgVVNCX0NPVU5UNV9SWF8wX0JMU0laRV8wICAgICAgICAgICAgICAoMHgwMDAwODAwMFUpICAgICAgICAgICAgICAgICAgICAvKiE8IEJMb2NrIFNJWkUgKGxvdykgKi8NCg0KLyoqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBVU0JfQ09VTlQ1X1JYXzEgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKi8NCiNkZWZpbmUgVVNCX0NPVU5UNV9SWF8xX0NPVU5UNV9SWF8xICAgICAgICAgICAoMHgwM0ZGMDAwMFUpICAgICAgICAgICAgICAgICAgICAvKiE8IFJlY2VwdGlvbiBCeXRlIENvdW50IChoaWdoKSAqLw0KDQojZGVmaW5lIFVTQl9DT1VOVDVfUlhfMV9OVU1fQkxPQ0tfMSAgICAgICAgICAgKDB4N0MwMDAwMDBVKSAgICAgICAgICAgICAgICAgICAgLyohPCBOVU1fQkxPQ0tfMVs0OjBdIGJpdHMgKE51bWJlciBvZiBibG9ja3MpIChoaWdoKSAqLw0KI2RlZmluZSBVU0JfQ09VTlQ1X1JYXzFfTlVNX0JMT0NLXzFfMCAgICAgICAgICgweDA0MDAwMDAwVSkgICAgICAgICAgICAgICAgICAgIC8qITwgQml0IDAgKi8NCiNkZWZpbmUgVVNCX0NPVU5UNV9SWF8xX05VTV9CTE9DS18xXzEgICAgICAgICAoMHgwODAwMDAwMFUpICAgICAgICAgICAgICAgICAgICAvKiE8IEJpdCAxICovDQojZGVmaW5lIFVTQl9DT1VOVDVfUlhfMV9OVU1fQkxPQ0tfMV8yICAgICAgICAgKDB4MTAwMDAwMDBVKSAgICAgICAgICAgICAgICAgICAgLyohPCBCaXQgMiAqLw0KI2RlZmluZSBVU0JfQ09VTlQ1X1JYXzFfTlVNX0JMT0NLXzFfMyAgICAgICAgICgweDIwMDAwMDAwVSkgICAgICAgICAgICAgICAgICAgIC8qITwgQml0IDMgKi8NCiNkZWZpbmUgVVNCX0NPVU5UNV9SWF8xX05VTV9CTE9DS18xXzQgICAgICAgICAoMHg0MDAwMDAwMFUpICAgICAgICAgICAgICAgICAgICAvKiE8IEJpdCA0ICovDQoNCiNkZWZpbmUgVVNCX0NPVU5UNV9SWF8xX0JMU0laRV8xICAgICAgICAgICAgICAoMHg4MDAwMDAwMFUpICAgICAgICAgICAgICAgICAgICAvKiE8IEJMb2NrIFNJWkUgKGhpZ2gpICovDQoNCi8qKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBVU0JfQ09VTlQ2X1JYXzAgIHJlZ2lzdGVyICAqKioqKioqKioqKioqKiovDQojZGVmaW5lIFVTQl9DT1VOVDZfUlhfMF9DT1VOVDZfUlhfMCAgICAgICAgICAgKDB4MDAwMDAzRkZVKSAgICAgICAgICAgICAgICAgICAgLyohPCBSZWNlcHRpb24gQnl0ZSBDb3VudCAobG93KSAqLw0KDQojZGVmaW5lIFVTQl9DT1VOVDZfUlhfMF9OVU1fQkxPQ0tfMCAgICAgICAgICAgKDB4MDAwMDdDMDBVKSAgICAgICAgICAgICAgICAgICAgLyohPCBOVU1fQkxPQ0tfMFs0OjBdIGJpdHMgKE51bWJlciBvZiBibG9ja3MpIChsb3cpICovDQojZGVmaW5lIFVTQl9DT1VOVDZfUlhfMF9OVU1fQkxPQ0tfMF8wICAgICAgICAgKDB4MDAwMDA0MDBVKSAgICAgICAgICAgICAgICAgICAgLyohPCBCaXQgMCAqLw0KI2RlZmluZSBVU0JfQ09VTlQ2X1JYXzBfTlVNX0JMT0NLXzBfMSAgICAgICAgICgweDAwMDAwODAwVSkgICAgICAgICAgICAgICAgICAgIC8qITwgQml0IDEgKi8NCiNkZWZpbmUgVVNCX0NPVU5UNl9SWF8wX05VTV9CTE9DS18wXzIgICAgICAgICAoMHgwMDAwMTAwMFUpICAgICAgICAgICAgICAgICAgICAvKiE8IEJpdCAyICovDQojZGVmaW5lIFVTQl9DT1VOVDZfUlhfMF9OVU1fQkxPQ0tfMF8zICAgICAgICAgKDB4MDAwMDIwMDBVKSAgICAgICAgICAgICAgICAgICAgLyohPCBCaXQgMyAqLw0KI2RlZmluZSBVU0JfQ09VTlQ2X1JYXzBfTlVNX0JMT0NLXzBfNCAgICAgICAgICgweDAwMDA0MDAwVSkgICAgICAgICAgICAgICAgICAgIC8qITwgQml0IDQgKi8NCg0KI2RlZmluZSBVU0JfQ09VTlQ2X1JYXzBfQkxTSVpFXzAgICAgICAgICAgICAgICgweDAwMDA4MDAwVSkgICAgICAgICAgICAgICAgICAgIC8qITwgQkxvY2sgU0laRSAobG93KSAqLw0KDQovKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFVTQl9DT1VOVDZfUlhfMSByZWdpc3RlciAgKioqKioqKioqKioqKioqLw0KI2RlZmluZSBVU0JfQ09VTlQ2X1JYXzFfQ09VTlQ2X1JYXzEgICAgICAgICAgICgweDAzRkYwMDAwVSkgICAgICAgICAgICAgICAgICAgIC8qITwgUmVjZXB0aW9uIEJ5dGUgQ291bnQgKGhpZ2gpICovDQoNCiNkZWZpbmUgVVNCX0NPVU5UNl9SWF8xX05VTV9CTE9DS18xICAgICAgICAgICAoMHg3QzAwMDAwMFUpICAgICAgICAgICAgICAgICAgICAvKiE8IE5VTV9CTE9DS18xWzQ6MF0gYml0cyAoTnVtYmVyIG9mIGJsb2NrcykgKGhpZ2gpICovDQojZGVmaW5lIFVTQl9DT1VOVDZfUlhfMV9OVU1fQkxPQ0tfMV8wICAgICAgICAgKDB4MDQwMDAwMDBVKSAgICAgICAgICAgICAgICAgICAgLyohPCBCaXQgMCAqLw0KI2RlZmluZSBVU0JfQ09VTlQ2X1JYXzFfTlVNX0JMT0NLXzFfMSAgICAgICAgICgweDA4MDAwMDAwVSkgICAgICAgICAgICAgICAgICAgIC8qITwgQml0IDEgKi8NCiNkZWZpbmUgVVNCX0NPVU5UNl9SWF8xX05VTV9CTE9DS18xXzIgICAgICAgICAoMHgxMDAwMDAwMFUpICAgICAgICAgICAgICAgICAgICAvKiE8IEJpdCAyICovDQojZGVmaW5lIFVTQl9DT1VOVDZfUlhfMV9OVU1fQkxPQ0tfMV8zICAgICAgICAgKDB4MjAwMDAwMDBVKSAgICAgICAgICAgICAgICAgICAgLyohPCBCaXQgMyAqLw0KI2RlZmluZSBVU0JfQ09VTlQ2X1JYXzFfTlVNX0JMT0NLXzFfNCAgICAgICAgICgweDQwMDAwMDAwVSkgICAgICAgICAgICAgICAgICAgIC8qITwgQml0IDQgKi8NCg0KI2RlZmluZSBVU0JfQ09VTlQ2X1JYXzFfQkxTSVpFXzEgICAgICAgICAgICAgICgweDgwMDAwMDAwVSkgICAgICAgICAgICAgICAgICAgIC8qITwgQkxvY2sgU0laRSAoaGlnaCkgKi8NCg0KLyoqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFVTQl9DT1VOVDdfUlhfMCByZWdpc3RlciAgKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgVVNCX0NPVU5UN19SWF8wX0NPVU5UN19SWF8wICAgICAgICAgICAoMHgwMDAwMDNGRlUpICAgICAgICAgICAgICAgICAgICAvKiE8IFJlY2VwdGlvbiBCeXRlIENvdW50IChsb3cpICovDQoNCiNkZWZpbmUgVVNCX0NPVU5UN19SWF8wX05VTV9CTE9DS18wICAgICAgICAgICAoMHgwMDAwN0MwMFUpICAgICAgICAgICAgICAgICAgICAvKiE8IE5VTV9CTE9DS18wWzQ6MF0gYml0cyAoTnVtYmVyIG9mIGJsb2NrcykgKGxvdykgKi8NCiNkZWZpbmUgVVNCX0NPVU5UN19SWF8wX05VTV9CTE9DS18wXzAgICAgICAgICAoMHgwMDAwMDQwMFUpICAgICAgICAgICAgICAgICAgICAvKiE8IEJpdCAwICovDQojZGVmaW5lIFVTQl9DT1VOVDdfUlhfMF9OVU1fQkxPQ0tfMF8xICAgICAgICAgKDB4MDAwMDA4MDBVKSAgICAgICAgICAgICAgICAgICAgLyohPCBCaXQgMSAqLw0KI2RlZmluZSBVU0JfQ09VTlQ3X1JYXzBfTlVNX0JMT0NLXzBfMiAgICAgICAgICgweDAwMDAxMDAwVSkgICAgICAgICAgICAgICAgICAgIC8qITwgQml0IDIgKi8NCiNkZWZpbmUgVVNCX0NPVU5UN19SWF8wX05VTV9CTE9DS18wXzMgICAgICAgICAoMHgwMDAwMjAwMFUpICAgICAgICAgICAgICAgICAgICAvKiE8IEJpdCAzICovDQojZGVmaW5lIFVTQl9DT1VOVDdfUlhfMF9OVU1fQkxPQ0tfMF80ICAgICAgICAgKDB4MDAwMDQwMDBVKSAgICAgICAgICAgICAgICAgICAgLyohPCBCaXQgNCAqLw0KDQojZGVmaW5lIFVTQl9DT1VOVDdfUlhfMF9CTFNJWkVfMCAgICAgICAgICAgICAgKDB4MDAwMDgwMDBVKSAgICAgICAgICAgICAgICAgICAgLyohPCBCTG9jayBTSVpFIChsb3cpICovDQoNCi8qKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBVU0JfQ09VTlQ3X1JYXzEgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKiovDQojZGVmaW5lIFVTQl9DT1VOVDdfUlhfMV9DT1VOVDdfUlhfMSAgICAgICAgICAgKDB4MDNGRjAwMDBVKSAgICAgICAgICAgICAgICAgICAgLyohPCBSZWNlcHRpb24gQnl0ZSBDb3VudCAoaGlnaCkgKi8NCg0KI2RlZmluZSBVU0JfQ09VTlQ3X1JYXzFfTlVNX0JMT0NLXzEgICAgICAgICAgICgweDdDMDAwMDAwVSkgICAgICAgICAgICAgICAgICAgIC8qITwgTlVNX0JMT0NLXzFbNDowXSBiaXRzIChOdW1iZXIgb2YgYmxvY2tzKSAoaGlnaCkgKi8NCiNkZWZpbmUgVVNCX0NPVU5UN19SWF8xX05VTV9CTE9DS18xXzAgICAgICAgICAoMHgwNDAwMDAwMFUpICAgICAgICAgICAgICAgICAgICAvKiE8IEJpdCAwICovDQojZGVmaW5lIFVTQl9DT1VOVDdfUlhfMV9OVU1fQkxPQ0tfMV8xICAgICAgICAgKDB4MDgwMDAwMDBVKSAgICAgICAgICAgICAgICAgICAgLyohPCBCaXQgMSAqLw0KI2RlZmluZSBVU0JfQ09VTlQ3X1JYXzFfTlVNX0JMT0NLXzFfMiAgICAgICAgICgweDEwMDAwMDAwVSkgICAgICAgICAgICAgICAgICAgIC8qITwgQml0IDIgKi8NCiNkZWZpbmUgVVNCX0NPVU5UN19SWF8xX05VTV9CTE9DS18xXzMgICAgICAgICAoMHgyMDAwMDAwMFUpICAgICAgICAgICAgICAgICAgICAvKiE8IEJpdCAzICovDQojZGVmaW5lIFVTQl9DT1VOVDdfUlhfMV9OVU1fQkxPQ0tfMV80ICAgICAgICAgKDB4NDAwMDAwMDBVKSAgICAgICAgICAgICAgICAgICAgLyohPCBCaXQgNCAqLw0KDQojZGVmaW5lIFVTQl9DT1VOVDdfUlhfMV9CTFNJWkVfMSAgICAgICAgICAgICAgKDB4ODAwMDAwMDBVKSAgICAgICAgICAgICAgICAgICAgLyohPCBCTG9jayBTSVpFIChoaWdoKSAqLw0KDQovKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLw0KLyogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8NCi8qICAgICAgICAgICAgICAgICAgICAgICAgIFdpbmRvdyBXQVRDSERPRyAoV1dERykgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovDQovKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLw0KLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8NCg0KLyoqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBXV0RHX0NSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgV1dER19DUl9UX1BvcyAgICAgICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgV1dER19DUl9UX01zayAgICAgICAgICAgICAgICAgICAgICAgKDB4N0ZVIDw8IFdXREdfQ1JfVF9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDAwN0YgKi8NCiNkZWZpbmUgV1dER19DUl9UICAgICAgICAgICAgICAgICAgICAgICAgICAgV1dER19DUl9UX01zayAgICAgICAgICAgICAgICAgICAgICAvKiE8IFRbNjowXSBiaXRzICg3LUJpdCBjb3VudGVyIChNU0IgdG8gTFNCKSkgKi8NCiNkZWZpbmUgV1dER19DUl9UXzAgICAgICAgICAgICAgICAgICAgICAgICAgKDB4MDFVIDw8IFdXREdfQ1JfVF9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDEgKi8NCiNkZWZpbmUgV1dER19DUl9UXzEgICAgICAgICAgICAgICAgICAgICAgICAgKDB4MDJVIDw8IFdXREdfQ1JfVF9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDIgKi8NCiNkZWZpbmUgV1dER19DUl9UXzIgICAgICAgICAgICAgICAgICAgICAgICAgKDB4MDRVIDw8IFdXREdfQ1JfVF9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDQgKi8NCiNkZWZpbmUgV1dER19DUl9UXzMgICAgICAgICAgICAgICAgICAgICAgICAgKDB4MDhVIDw8IFdXREdfQ1JfVF9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDggKi8NCiNkZWZpbmUgV1dER19DUl9UXzQgICAgICAgICAgICAgICAgICAgICAgICAgKDB4MTBVIDw8IFdXREdfQ1JfVF9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDAwMTAgKi8NCiNkZWZpbmUgV1dER19DUl9UXzUgICAgICAgICAgICAgICAgICAgICAgICAgKDB4MjBVIDw8IFdXREdfQ1JfVF9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDAwMjAgKi8NCiNkZWZpbmUgV1dER19DUl9UXzYgICAgICAgICAgICAgICAgICAgICAgICAgKDB4NDBVIDw8IFdXREdfQ1JfVF9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDAwNDAgKi8NCg0KLyogTGVnYWN5IGRlZmluZXMgKi8NCiNkZWZpbmUgIFdXREdfQ1JfVDAgV1dER19DUl9UXzANCiNkZWZpbmUgIFdXREdfQ1JfVDEgV1dER19DUl9UXzENCiNkZWZpbmUgIFdXREdfQ1JfVDIgV1dER19DUl9UXzINCiNkZWZpbmUgIFdXREdfQ1JfVDMgV1dER19DUl9UXzMNCiNkZWZpbmUgIFdXREdfQ1JfVDQgV1dER19DUl9UXzQNCiNkZWZpbmUgIFdXREdfQ1JfVDUgV1dER19DUl9UXzUNCiNkZWZpbmUgIFdXREdfQ1JfVDYgV1dER19DUl9UXzYNCg0KI2RlZmluZSBXV0RHX0NSX1dER0FfUG9zICAgICAgICAgICAgICAgICAgICAoN1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBXV0RHX0NSX1dER0FfTXNrICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBXV0RHX0NSX1dER0FfUG9zKSAgICAgICAgIC8qITwgMHgwMDAwMDA4MCAqLw0KI2RlZmluZSBXV0RHX0NSX1dER0EgICAgICAgICAgICAgICAgICAgICAgICBXV0RHX0NSX1dER0FfTXNrICAgICAgICAgICAgICAgICAgIC8qITwgQWN0aXZhdGlvbiBiaXQgKi8NCg0KLyoqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBXV0RHX0NGUiByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgV1dER19DRlJfV19Qb3MgICAgICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgV1dER19DRlJfV19Nc2sgICAgICAgICAgICAgICAgICAgICAgKDB4N0ZVIDw8IFdXREdfQ0ZSX1dfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDAwN0YgKi8NCiNkZWZpbmUgV1dER19DRlJfVyAgICAgICAgICAgICAgICAgICAgICAgICAgV1dER19DRlJfV19Nc2sgICAgICAgICAgICAgICAgICAgICAvKiE8IFdbNjowXSBiaXRzICg3LWJpdCB3aW5kb3cgdmFsdWUpICovDQojZGVmaW5lIFdXREdfQ0ZSX1dfMCAgICAgICAgICAgICAgICAgICAgICAgICgweDAxVSA8PCBXV0RHX0NGUl9XX1BvcykgICAgICAgICAgLyohPCAweDAwMDAwMDAxICovDQojZGVmaW5lIFdXREdfQ0ZSX1dfMSAgICAgICAgICAgICAgICAgICAgICAgICgweDAyVSA8PCBXV0RHX0NGUl9XX1BvcykgICAgICAgICAgLyohPCAweDAwMDAwMDAyICovDQojZGVmaW5lIFdXREdfQ0ZSX1dfMiAgICAgICAgICAgICAgICAgICAgICAgICgweDA0VSA8PCBXV0RHX0NGUl9XX1BvcykgICAgICAgICAgLyohPCAweDAwMDAwMDA0ICovDQojZGVmaW5lIFdXREdfQ0ZSX1dfMyAgICAgICAgICAgICAgICAgICAgICAgICgweDA4VSA8PCBXV0RHX0NGUl9XX1BvcykgICAgICAgICAgLyohPCAweDAwMDAwMDA4ICovDQojZGVmaW5lIFdXREdfQ0ZSX1dfNCAgICAgICAgICAgICAgICAgICAgICAgICgweDEwVSA8PCBXV0RHX0NGUl9XX1BvcykgICAgICAgICAgLyohPCAweDAwMDAwMDEwICovDQojZGVmaW5lIFdXREdfQ0ZSX1dfNSAgICAgICAgICAgICAgICAgICAgICAgICgweDIwVSA8PCBXV0RHX0NGUl9XX1BvcykgICAgICAgICAgLyohPCAweDAwMDAwMDIwICovDQojZGVmaW5lIFdXREdfQ0ZSX1dfNiAgICAgICAgICAgICAgICAgICAgICAgICgweDQwVSA8PCBXV0RHX0NGUl9XX1BvcykgICAgICAgICAgLyohPCAweDAwMDAwMDQwICovDQoNCi8qIExlZ2FjeSBkZWZpbmVzICovDQojZGVmaW5lICBXV0RHX0NGUl9XMCBXV0RHX0NGUl9XXzANCiNkZWZpbmUgIFdXREdfQ0ZSX1cxIFdXREdfQ0ZSX1dfMQ0KI2RlZmluZSAgV1dER19DRlJfVzIgV1dER19DRlJfV18yDQojZGVmaW5lICBXV0RHX0NGUl9XMyBXV0RHX0NGUl9XXzMNCiNkZWZpbmUgIFdXREdfQ0ZSX1c0IFdXREdfQ0ZSX1dfNA0KI2RlZmluZSAgV1dER19DRlJfVzUgV1dER19DRlJfV181DQojZGVmaW5lICBXV0RHX0NGUl9XNiBXV0RHX0NGUl9XXzYNCg0KI2RlZmluZSBXV0RHX0NGUl9XREdUQl9Qb3MgICAgICAgICAgICAgICAgICAoN1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBXV0RHX0NGUl9XREdUQl9Nc2sgICAgICAgICAgICAgICAgICAoMHgzVSA8PCBXV0RHX0NGUl9XREdUQl9Qb3MpICAgICAgIC8qITwgMHgwMDAwMDE4MCAqLw0KI2RlZmluZSBXV0RHX0NGUl9XREdUQiAgICAgICAgICAgICAgICAgICAgICBXV0RHX0NGUl9XREdUQl9Nc2sgICAgICAgICAgICAgICAgIC8qITwgV0RHVEJbMTowXSBiaXRzIChUaW1lciBCYXNlKSAqLw0KI2RlZmluZSBXV0RHX0NGUl9XREdUQl8wICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBXV0RHX0NGUl9XREdUQl9Qb3MpICAgICAgIC8qITwgMHgwMDAwMDA4MCAqLw0KI2RlZmluZSBXV0RHX0NGUl9XREdUQl8xICAgICAgICAgICAgICAgICAgICAoMHgyVSA8PCBXV0RHX0NGUl9XREdUQl9Qb3MpICAgICAgIC8qITwgMHgwMDAwMDEwMCAqLw0KDQovKiBMZWdhY3kgZGVmaW5lcyAqLw0KI2RlZmluZSAgV1dER19DRlJfV0RHVEIwIFdXREdfQ0ZSX1dER1RCXzANCiNkZWZpbmUgIFdXREdfQ0ZSX1dER1RCMSBXV0RHX0NGUl9XREdUQl8xDQoNCiNkZWZpbmUgV1dER19DRlJfRVdJX1BvcyAgICAgICAgICAgICAgICAgICAgKDlVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgV1dER19DRlJfRVdJX01zayAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgV1dER19DRlJfRVdJX1BvcykgICAgICAgICAvKiE8IDB4MDAwMDAyMDAgKi8NCiNkZWZpbmUgV1dER19DRlJfRVdJICAgICAgICAgICAgICAgICAgICAgICAgV1dER19DRlJfRVdJX01zayAgICAgICAgICAgICAgICAgICAvKiE8IEVhcmx5IFdha2V1cCBJbnRlcnJ1cHQgKi8NCg0KLyoqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBXV0RHX1NSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgV1dER19TUl9FV0lGX1BvcyAgICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgV1dER19TUl9FV0lGX01zayAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgV1dER19TUl9FV0lGX1BvcykgICAgICAgICAvKiE8IDB4MDAwMDAwMDEgKi8NCiNkZWZpbmUgV1dER19TUl9FV0lGICAgICAgICAgICAgICAgICAgICAgICAgV1dER19TUl9FV0lGX01zayAgICAgICAgICAgICAgICAgICAvKiE8IEVhcmx5IFdha2V1cCBJbnRlcnJ1cHQgRmxhZyAqLw0KDQovKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLw0KLyogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8NCi8qICAgICAgICAgICAgICAgICAgICAgICAgU3lzdGVtVGljayAoU3lzVGljaykgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovDQovKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLw0KLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8NCg0KLyoqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgU3lzVGlja19DVFJMIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgU3lzVGlja19DVFJMX0VOQUJMRSAgICAgICAgICAgICAgICAgKDB4MDAwMDAwMDFVKSAgICAgICAgICAgICAgICAgICAgICAvKiE8IENvdW50ZXIgZW5hYmxlICovDQojZGVmaW5lIFN5c1RpY2tfQ1RSTF9USUNLSU5UICAgICAgICAgICAgICAgICgweDAwMDAwMDAyVSkgICAgICAgICAgICAgICAgICAgICAgLyohPCBDb3VudGluZyBkb3duIHRvIDAgcGVuZHMgdGhlIFN5c1RpY2sgaGFuZGxlciAqLw0KI2RlZmluZSBTeXNUaWNrX0NUUkxfQ0xLU09VUkNFICAgICAgICAgICAgICAoMHgwMDAwMDAwNFUpICAgICAgICAgICAgICAgICAgICAgIC8qITwgQ2xvY2sgc291cmNlICovDQojZGVmaW5lIFN5c1RpY2tfQ1RSTF9DT1VOVEZMQUcgICAgICAgICAgICAgICgweDAwMDEwMDAwVSkgICAgICAgICAgICAgICAgICAgICAgLyohPCBDb3VudCBGbGFnICovDQoNCi8qKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFN5c1RpY2tfTE9BRCByZWdpc3RlciAgKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIFN5c1RpY2tfTE9BRF9SRUxPQUQgICAgICAgICAgICAgICAgICgweDAwRkZGRkZGVSkgICAgICAgICAgICAgICAgICAgICAgLyohPCBWYWx1ZSB0byBsb2FkIGludG8gdGhlIFN5c1RpY2sgQ3VycmVudCBWYWx1ZSBSZWdpc3RlciB3aGVuIHRoZSBjb3VudGVyIHJlYWNoZXMgMCAqLw0KDQovKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBTeXNUaWNrX1ZBTCByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBTeXNUaWNrX1ZBTF9DVVJSRU5UICAgICAgICAgICAgICAgICAoMHgwMEZGRkZGRlUpICAgICAgICAgICAgICAgICAgICAgIC8qITwgQ3VycmVudCB2YWx1ZSBhdCB0aGUgdGltZSB0aGUgcmVnaXN0ZXIgaXMgYWNjZXNzZWQgKi8NCg0KLyoqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgU3lzVGlja19DQUxJQiByZWdpc3RlciAgKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgU3lzVGlja19DQUxJQl9URU5NUyAgICAgICAgICAgICAgICAgKDB4MDBGRkZGRkZVKSAgICAgICAgICAgICAgICAgICAgICAvKiE8IFJlbG9hZCB2YWx1ZSB0byB1c2UgZm9yIDEwbXMgdGltaW5nICovDQojZGVmaW5lIFN5c1RpY2tfQ0FMSUJfU0tFVyAgICAgICAgICAgICAgICAgICgweDQwMDAwMDAwVSkgICAgICAgICAgICAgICAgICAgICAgLyohPCBDYWxpYnJhdGlvbiB2YWx1ZSBpcyBub3QgZXhhY3RseSAxMCBtcyAqLw0KI2RlZmluZSBTeXNUaWNrX0NBTElCX05PUkVGICAgICAgICAgICAgICAgICAoMHg4MDAwMDAwMFUpICAgICAgICAgICAgICAgICAgICAgIC8qITwgVGhlIHJlZmVyZW5jZSBjbG9jayBpcyBub3QgcHJvdmlkZWQgKi8NCg0KLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8NCi8qICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovDQovKiAgICAgICAgICAgICAgIE5lc3RlZCBWZWN0b3JlZCBJbnRlcnJ1cHQgQ29udHJvbGxlciAoTlZJQykgICAgICAgICAgICAgICAgICAqLw0KLyogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8NCi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovDQoNCi8qKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBOVklDX0lTRVIgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIE5WSUNfSVNFUl9TRVRFTkFfUG9zICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIE5WSUNfSVNFUl9TRVRFTkFfTXNrICAgICAgICAgICAgICAgICgweEZGRkZGRkZGVSA8PCBOVklDX0lTRVJfU0VURU5BX1BvcykgLyohPCAweEZGRkZGRkZGICovDQojZGVmaW5lIE5WSUNfSVNFUl9TRVRFTkEgICAgICAgICAgICAgICAgICAgIE5WSUNfSVNFUl9TRVRFTkFfTXNrICAgICAgICAgICAgICAgLyohPCBJbnRlcnJ1cHQgc2V0IGVuYWJsZSBiaXRzICovDQojZGVmaW5lIE5WSUNfSVNFUl9TRVRFTkFfMCAgICAgICAgICAgICAgICAgICgweDAwMDAwMDAxVSA8PCBOVklDX0lTRVJfU0VURU5BX1BvcykgLyohPCAweDAwMDAwMDAxICovDQojZGVmaW5lIE5WSUNfSVNFUl9TRVRFTkFfMSAgICAgICAgICAgICAgICAgICgweDAwMDAwMDAyVSA8PCBOVklDX0lTRVJfU0VURU5BX1BvcykgLyohPCAweDAwMDAwMDAyICovDQojZGVmaW5lIE5WSUNfSVNFUl9TRVRFTkFfMiAgICAgICAgICAgICAgICAgICgweDAwMDAwMDA0VSA8PCBOVklDX0lTRVJfU0VURU5BX1BvcykgLyohPCAweDAwMDAwMDA0ICovDQojZGVmaW5lIE5WSUNfSVNFUl9TRVRFTkFfMyAgICAgICAgICAgICAgICAgICgweDAwMDAwMDA4VSA8PCBOVklDX0lTRVJfU0VURU5BX1BvcykgLyohPCAweDAwMDAwMDA4ICovDQojZGVmaW5lIE5WSUNfSVNFUl9TRVRFTkFfNCAgICAgICAgICAgICAgICAgICgweDAwMDAwMDEwVSA8PCBOVklDX0lTRVJfU0VURU5BX1BvcykgLyohPCAweDAwMDAwMDEwICovDQojZGVmaW5lIE5WSUNfSVNFUl9TRVRFTkFfNSAgICAgICAgICAgICAgICAgICgweDAwMDAwMDIwVSA8PCBOVklDX0lTRVJfU0VURU5BX1BvcykgLyohPCAweDAwMDAwMDIwICovDQojZGVmaW5lIE5WSUNfSVNFUl9TRVRFTkFfNiAgICAgICAgICAgICAgICAgICgweDAwMDAwMDQwVSA8PCBOVklDX0lTRVJfU0VURU5BX1BvcykgLyohPCAweDAwMDAwMDQwICovDQojZGVmaW5lIE5WSUNfSVNFUl9TRVRFTkFfNyAgICAgICAgICAgICAgICAgICgweDAwMDAwMDgwVSA8PCBOVklDX0lTRVJfU0VURU5BX1BvcykgLyohPCAweDAwMDAwMDgwICovDQojZGVmaW5lIE5WSUNfSVNFUl9TRVRFTkFfOCAgICAgICAgICAgICAgICAgICgweDAwMDAwMTAwVSA8PCBOVklDX0lTRVJfU0VURU5BX1BvcykgLyohPCAweDAwMDAwMTAwICovDQojZGVmaW5lIE5WSUNfSVNFUl9TRVRFTkFfOSAgICAgICAgICAgICAgICAgICgweDAwMDAwMjAwVSA8PCBOVklDX0lTRVJfU0VURU5BX1BvcykgLyohPCAweDAwMDAwMjAwICovDQojZGVmaW5lIE5WSUNfSVNFUl9TRVRFTkFfMTAgICAgICAgICAgICAgICAgICgweDAwMDAwNDAwVSA8PCBOVklDX0lTRVJfU0VURU5BX1BvcykgLyohPCAweDAwMDAwNDAwICovDQojZGVmaW5lIE5WSUNfSVNFUl9TRVRFTkFfMTEgICAgICAgICAgICAgICAgICgweDAwMDAwODAwVSA8PCBOVklDX0lTRVJfU0VURU5BX1BvcykgLyohPCAweDAwMDAwODAwICovDQojZGVmaW5lIE5WSUNfSVNFUl9TRVRFTkFfMTIgICAgICAgICAgICAgICAgICgweDAwMDAxMDAwVSA8PCBOVklDX0lTRVJfU0VURU5BX1BvcykgLyohPCAweDAwMDAxMDAwICovDQojZGVmaW5lIE5WSUNfSVNFUl9TRVRFTkFfMTMgICAgICAgICAgICAgICAgICgweDAwMDAyMDAwVSA8PCBOVklDX0lTRVJfU0VURU5BX1BvcykgLyohPCAweDAwMDAyMDAwICovDQojZGVmaW5lIE5WSUNfSVNFUl9TRVRFTkFfMTQgICAgICAgICAgICAgICAgICgweDAwMDA0MDAwVSA8PCBOVklDX0lTRVJfU0VURU5BX1BvcykgLyohPCAweDAwMDA0MDAwICovDQojZGVmaW5lIE5WSUNfSVNFUl9TRVRFTkFfMTUgICAgICAgICAgICAgICAgICgweDAwMDA4MDAwVSA8PCBOVklDX0lTRVJfU0VURU5BX1BvcykgLyohPCAweDAwMDA4MDAwICovDQojZGVmaW5lIE5WSUNfSVNFUl9TRVRFTkFfMTYgICAgICAgICAgICAgICAgICgweDAwMDEwMDAwVSA8PCBOVklDX0lTRVJfU0VURU5BX1BvcykgLyohPCAweDAwMDEwMDAwICovDQojZGVmaW5lIE5WSUNfSVNFUl9TRVRFTkFfMTcgICAgICAgICAgICAgICAgICgweDAwMDIwMDAwVSA8PCBOVklDX0lTRVJfU0VURU5BX1BvcykgLyohPCAweDAwMDIwMDAwICovDQojZGVmaW5lIE5WSUNfSVNFUl9TRVRFTkFfMTggICAgICAgICAgICAgICAgICgweDAwMDQwMDAwVSA8PCBOVklDX0lTRVJfU0VURU5BX1BvcykgLyohPCAweDAwMDQwMDAwICovDQojZGVmaW5lIE5WSUNfSVNFUl9TRVRFTkFfMTkgICAgICAgICAgICAgICAgICgweDAwMDgwMDAwVSA8PCBOVklDX0lTRVJfU0VURU5BX1BvcykgLyohPCAweDAwMDgwMDAwICovDQojZGVmaW5lIE5WSUNfSVNFUl9TRVRFTkFfMjAgICAgICAgICAgICAgICAgICgweDAwMTAwMDAwVSA8PCBOVklDX0lTRVJfU0VURU5BX1BvcykgLyohPCAweDAwMTAwMDAwICovDQojZGVmaW5lIE5WSUNfSVNFUl9TRVRFTkFfMjEgICAgICAgICAgICAgICAgICgweDAwMjAwMDAwVSA8PCBOVklDX0lTRVJfU0VURU5BX1BvcykgLyohPCAweDAwMjAwMDAwICovDQojZGVmaW5lIE5WSUNfSVNFUl9TRVRFTkFfMjIgICAgICAgICAgICAgICAgICgweDAwNDAwMDAwVSA8PCBOVklDX0lTRVJfU0VURU5BX1BvcykgLyohPCAweDAwNDAwMDAwICovDQojZGVmaW5lIE5WSUNfSVNFUl9TRVRFTkFfMjMgICAgICAgICAgICAgICAgICgweDAwODAwMDAwVSA8PCBOVklDX0lTRVJfU0VURU5BX1BvcykgLyohPCAweDAwODAwMDAwICovDQojZGVmaW5lIE5WSUNfSVNFUl9TRVRFTkFfMjQgICAgICAgICAgICAgICAgICgweDAxMDAwMDAwVSA8PCBOVklDX0lTRVJfU0VURU5BX1BvcykgLyohPCAweDAxMDAwMDAwICovDQojZGVmaW5lIE5WSUNfSVNFUl9TRVRFTkFfMjUgICAgICAgICAgICAgICAgICgweDAyMDAwMDAwVSA8PCBOVklDX0lTRVJfU0VURU5BX1BvcykgLyohPCAweDAyMDAwMDAwICovDQojZGVmaW5lIE5WSUNfSVNFUl9TRVRFTkFfMjYgICAgICAgICAgICAgICAgICgweDA0MDAwMDAwVSA8PCBOVklDX0lTRVJfU0VURU5BX1BvcykgLyohPCAweDA0MDAwMDAwICovDQojZGVmaW5lIE5WSUNfSVNFUl9TRVRFTkFfMjcgICAgICAgICAgICAgICAgICgweDA4MDAwMDAwVSA8PCBOVklDX0lTRVJfU0VURU5BX1BvcykgLyohPCAweDA4MDAwMDAwICovDQojZGVmaW5lIE5WSUNfSVNFUl9TRVRFTkFfMjggICAgICAgICAgICAgICAgICgweDEwMDAwMDAwVSA8PCBOVklDX0lTRVJfU0VURU5BX1BvcykgLyohPCAweDEwMDAwMDAwICovDQojZGVmaW5lIE5WSUNfSVNFUl9TRVRFTkFfMjkgICAgICAgICAgICAgICAgICgweDIwMDAwMDAwVSA8PCBOVklDX0lTRVJfU0VURU5BX1BvcykgLyohPCAweDIwMDAwMDAwICovDQojZGVmaW5lIE5WSUNfSVNFUl9TRVRFTkFfMzAgICAgICAgICAgICAgICAgICgweDQwMDAwMDAwVSA8PCBOVklDX0lTRVJfU0VURU5BX1BvcykgLyohPCAweDQwMDAwMDAwICovDQojZGVmaW5lIE5WSUNfSVNFUl9TRVRFTkFfMzEgICAgICAgICAgICAgICAgICgweDgwMDAwMDAwVSA8PCBOVklDX0lTRVJfU0VURU5BX1BvcykgLyohPCAweDgwMDAwMDAwICovDQoNCi8qKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBOVklDX0lDRVIgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIE5WSUNfSUNFUl9DTFJFTkFfUG9zICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIE5WSUNfSUNFUl9DTFJFTkFfTXNrICAgICAgICAgICAgICAgICgweEZGRkZGRkZGVSA8PCBOVklDX0lDRVJfQ0xSRU5BX1BvcykgLyohPCAweEZGRkZGRkZGICovDQojZGVmaW5lIE5WSUNfSUNFUl9DTFJFTkEgICAgICAgICAgICAgICAgICAgIE5WSUNfSUNFUl9DTFJFTkFfTXNrICAgICAgICAgICAgICAgLyohPCBJbnRlcnJ1cHQgY2xlYXItZW5hYmxlIGJpdHMgKi8NCiNkZWZpbmUgTlZJQ19JQ0VSX0NMUkVOQV8wICAgICAgICAgICAgICAgICAgKDB4MDAwMDAwMDFVIDw8IE5WSUNfSUNFUl9DTFJFTkFfUG9zKSAvKiE8IDB4MDAwMDAwMDEgKi8NCiNkZWZpbmUgTlZJQ19JQ0VSX0NMUkVOQV8xICAgICAgICAgICAgICAgICAgKDB4MDAwMDAwMDJVIDw8IE5WSUNfSUNFUl9DTFJFTkFfUG9zKSAvKiE8IDB4MDAwMDAwMDIgKi8NCiNkZWZpbmUgTlZJQ19JQ0VSX0NMUkVOQV8yICAgICAgICAgICAgICAgICAgKDB4MDAwMDAwMDRVIDw8IE5WSUNfSUNFUl9DTFJFTkFfUG9zKSAvKiE8IDB4MDAwMDAwMDQgKi8NCiNkZWZpbmUgTlZJQ19JQ0VSX0NMUkVOQV8zICAgICAgICAgICAgICAgICAgKDB4MDAwMDAwMDhVIDw8IE5WSUNfSUNFUl9DTFJFTkFfUG9zKSAvKiE8IDB4MDAwMDAwMDggKi8NCiNkZWZpbmUgTlZJQ19JQ0VSX0NMUkVOQV80ICAgICAgICAgICAgICAgICAgKDB4MDAwMDAwMTBVIDw8IE5WSUNfSUNFUl9DTFJFTkFfUG9zKSAvKiE8IDB4MDAwMDAwMTAgKi8NCiNkZWZpbmUgTlZJQ19JQ0VSX0NMUkVOQV81ICAgICAgICAgICAgICAgICAgKDB4MDAwMDAwMjBVIDw8IE5WSUNfSUNFUl9DTFJFTkFfUG9zKSAvKiE8IDB4MDAwMDAwMjAgKi8NCiNkZWZpbmUgTlZJQ19JQ0VSX0NMUkVOQV82ICAgICAgICAgICAgICAgICAgKDB4MDAwMDAwNDBVIDw8IE5WSUNfSUNFUl9DTFJFTkFfUG9zKSAvKiE8IDB4MDAwMDAwNDAgKi8NCiNkZWZpbmUgTlZJQ19JQ0VSX0NMUkVOQV83ICAgICAgICAgICAgICAgICAgKDB4MDAwMDAwODBVIDw8IE5WSUNfSUNFUl9DTFJFTkFfUG9zKSAvKiE8IDB4MDAwMDAwODAgKi8NCiNkZWZpbmUgTlZJQ19JQ0VSX0NMUkVOQV84ICAgICAgICAgICAgICAgICAgKDB4MDAwMDAxMDBVIDw8IE5WSUNfSUNFUl9DTFJFTkFfUG9zKSAvKiE8IDB4MDAwMDAxMDAgKi8NCiNkZWZpbmUgTlZJQ19JQ0VSX0NMUkVOQV85ICAgICAgICAgICAgICAgICAgKDB4MDAwMDAyMDBVIDw8IE5WSUNfSUNFUl9DTFJFTkFfUG9zKSAvKiE8IDB4MDAwMDAyMDAgKi8NCiNkZWZpbmUgTlZJQ19JQ0VSX0NMUkVOQV8xMCAgICAgICAgICAgICAgICAgKDB4MDAwMDA0MDBVIDw8IE5WSUNfSUNFUl9DTFJFTkFfUG9zKSAvKiE8IDB4MDAwMDA0MDAgKi8NCiNkZWZpbmUgTlZJQ19JQ0VSX0NMUkVOQV8xMSAgICAgICAgICAgICAgICAgKDB4MDAwMDA4MDBVIDw8IE5WSUNfSUNFUl9DTFJFTkFfUG9zKSAvKiE8IDB4MDAwMDA4MDAgKi8NCiNkZWZpbmUgTlZJQ19JQ0VSX0NMUkVOQV8xMiAgICAgICAgICAgICAgICAgKDB4MDAwMDEwMDBVIDw8IE5WSUNfSUNFUl9DTFJFTkFfUG9zKSAvKiE8IDB4MDAwMDEwMDAgKi8NCiNkZWZpbmUgTlZJQ19JQ0VSX0NMUkVOQV8xMyAgICAgICAgICAgICAgICAgKDB4MDAwMDIwMDBVIDw8IE5WSUNfSUNFUl9DTFJFTkFfUG9zKSAvKiE8IDB4MDAwMDIwMDAgKi8NCiNkZWZpbmUgTlZJQ19JQ0VSX0NMUkVOQV8xNCAgICAgICAgICAgICAgICAgKDB4MDAwMDQwMDBVIDw8IE5WSUNfSUNFUl9DTFJFTkFfUG9zKSAvKiE8IDB4MDAwMDQwMDAgKi8NCiNkZWZpbmUgTlZJQ19JQ0VSX0NMUkVOQV8xNSAgICAgICAgICAgICAgICAgKDB4MDAwMDgwMDBVIDw8IE5WSUNfSUNFUl9DTFJFTkFfUG9zKSAvKiE8IDB4MDAwMDgwMDAgKi8NCiNkZWZpbmUgTlZJQ19JQ0VSX0NMUkVOQV8xNiAgICAgICAgICAgICAgICAgKDB4MDAwMTAwMDBVIDw8IE5WSUNfSUNFUl9DTFJFTkFfUG9zKSAvKiE8IDB4MDAwMTAwMDAgKi8NCiNkZWZpbmUgTlZJQ19JQ0VSX0NMUkVOQV8xNyAgICAgICAgICAgICAgICAgKDB4MDAwMjAwMDBVIDw8IE5WSUNfSUNFUl9DTFJFTkFfUG9zKSAvKiE8IDB4MDAwMjAwMDAgKi8NCiNkZWZpbmUgTlZJQ19JQ0VSX0NMUkVOQV8xOCAgICAgICAgICAgICAgICAgKDB4MDAwNDAwMDBVIDw8IE5WSUNfSUNFUl9DTFJFTkFfUG9zKSAvKiE8IDB4MDAwNDAwMDAgKi8NCiNkZWZpbmUgTlZJQ19JQ0VSX0NMUkVOQV8xOSAgICAgICAgICAgICAgICAgKDB4MDAwODAwMDBVIDw8IE5WSUNfSUNFUl9DTFJFTkFfUG9zKSAvKiE8IDB4MDAwODAwMDAgKi8NCiNkZWZpbmUgTlZJQ19JQ0VSX0NMUkVOQV8yMCAgICAgICAgICAgICAgICAgKDB4MDAxMDAwMDBVIDw8IE5WSUNfSUNFUl9DTFJFTkFfUG9zKSAvKiE8IDB4MDAxMDAwMDAgKi8NCiNkZWZpbmUgTlZJQ19JQ0VSX0NMUkVOQV8yMSAgICAgICAgICAgICAgICAgKDB4MDAyMDAwMDBVIDw8IE5WSUNfSUNFUl9DTFJFTkFfUG9zKSAvKiE8IDB4MDAyMDAwMDAgKi8NCiNkZWZpbmUgTlZJQ19JQ0VSX0NMUkVOQV8yMiAgICAgICAgICAgICAgICAgKDB4MDA0MDAwMDBVIDw8IE5WSUNfSUNFUl9DTFJFTkFfUG9zKSAvKiE8IDB4MDA0MDAwMDAgKi8NCiNkZWZpbmUgTlZJQ19JQ0VSX0NMUkVOQV8yMyAgICAgICAgICAgICAgICAgKDB4MDA4MDAwMDBVIDw8IE5WSUNfSUNFUl9DTFJFTkFfUG9zKSAvKiE8IDB4MDA4MDAwMDAgKi8NCiNkZWZpbmUgTlZJQ19JQ0VSX0NMUkVOQV8yNCAgICAgICAgICAgICAgICAgKDB4MDEwMDAwMDBVIDw8IE5WSUNfSUNFUl9DTFJFTkFfUG9zKSAvKiE8IDB4MDEwMDAwMDAgKi8NCiNkZWZpbmUgTlZJQ19JQ0VSX0NMUkVOQV8yNSAgICAgICAgICAgICAgICAgKDB4MDIwMDAwMDBVIDw8IE5WSUNfSUNFUl9DTFJFTkFfUG9zKSAvKiE8IDB4MDIwMDAwMDAgKi8NCiNkZWZpbmUgTlZJQ19JQ0VSX0NMUkVOQV8yNiAgICAgICAgICAgICAgICAgKDB4MDQwMDAwMDBVIDw8IE5WSUNfSUNFUl9DTFJFTkFfUG9zKSAvKiE8IDB4MDQwMDAwMDAgKi8NCiNkZWZpbmUgTlZJQ19JQ0VSX0NMUkVOQV8yNyAgICAgICAgICAgICAgICAgKDB4MDgwMDAwMDBVIDw8IE5WSUNfSUNFUl9DTFJFTkFfUG9zKSAvKiE8IDB4MDgwMDAwMDAgKi8NCiNkZWZpbmUgTlZJQ19JQ0VSX0NMUkVOQV8yOCAgICAgICAgICAgICAgICAgKDB4MTAwMDAwMDBVIDw8IE5WSUNfSUNFUl9DTFJFTkFfUG9zKSAvKiE8IDB4MTAwMDAwMDAgKi8NCiNkZWZpbmUgTlZJQ19JQ0VSX0NMUkVOQV8yOSAgICAgICAgICAgICAgICAgKDB4MjAwMDAwMDBVIDw8IE5WSUNfSUNFUl9DTFJFTkFfUG9zKSAvKiE8IDB4MjAwMDAwMDAgKi8NCiNkZWZpbmUgTlZJQ19JQ0VSX0NMUkVOQV8zMCAgICAgICAgICAgICAgICAgKDB4NDAwMDAwMDBVIDw8IE5WSUNfSUNFUl9DTFJFTkFfUG9zKSAvKiE8IDB4NDAwMDAwMDAgKi8NCiNkZWZpbmUgTlZJQ19JQ0VSX0NMUkVOQV8zMSAgICAgICAgICAgICAgICAgKDB4ODAwMDAwMDBVIDw8IE5WSUNfSUNFUl9DTFJFTkFfUG9zKSAvKiE8IDB4ODAwMDAwMDAgKi8NCg0KLyoqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIE5WSUNfSVNQUiByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgTlZJQ19JU1BSX1NFVFBFTkRfUG9zICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgTlZJQ19JU1BSX1NFVFBFTkRfTXNrICAgICAgICAgICAgICAgKDB4RkZGRkZGRkZVIDw8IE5WSUNfSVNQUl9TRVRQRU5EX1BvcykgLyohPCAweEZGRkZGRkZGICovDQojZGVmaW5lIE5WSUNfSVNQUl9TRVRQRU5EICAgICAgICAgICAgICAgICAgIE5WSUNfSVNQUl9TRVRQRU5EX01zayAgICAgICAgICAgICAgLyohPCBJbnRlcnJ1cHQgc2V0LXBlbmRpbmcgYml0cyAqLw0KI2RlZmluZSBOVklDX0lTUFJfU0VUUEVORF8wICAgICAgICAgICAgICAgICAoMHgwMDAwMDAwMVUgPDwgTlZJQ19JU1BSX1NFVFBFTkRfUG9zKSAvKiE8IDB4MDAwMDAwMDEgKi8NCiNkZWZpbmUgTlZJQ19JU1BSX1NFVFBFTkRfMSAgICAgICAgICAgICAgICAgKDB4MDAwMDAwMDJVIDw8IE5WSUNfSVNQUl9TRVRQRU5EX1BvcykgLyohPCAweDAwMDAwMDAyICovDQojZGVmaW5lIE5WSUNfSVNQUl9TRVRQRU5EXzIgICAgICAgICAgICAgICAgICgweDAwMDAwMDA0VSA8PCBOVklDX0lTUFJfU0VUUEVORF9Qb3MpIC8qITwgMHgwMDAwMDAwNCAqLw0KI2RlZmluZSBOVklDX0lTUFJfU0VUUEVORF8zICAgICAgICAgICAgICAgICAoMHgwMDAwMDAwOFUgPDwgTlZJQ19JU1BSX1NFVFBFTkRfUG9zKSAvKiE8IDB4MDAwMDAwMDggKi8NCiNkZWZpbmUgTlZJQ19JU1BSX1NFVFBFTkRfNCAgICAgICAgICAgICAgICAgKDB4MDAwMDAwMTBVIDw8IE5WSUNfSVNQUl9TRVRQRU5EX1BvcykgLyohPCAweDAwMDAwMDEwICovDQojZGVmaW5lIE5WSUNfSVNQUl9TRVRQRU5EXzUgICAgICAgICAgICAgICAgICgweDAwMDAwMDIwVSA8PCBOVklDX0lTUFJfU0VUUEVORF9Qb3MpIC8qITwgMHgwMDAwMDAyMCAqLw0KI2RlZmluZSBOVklDX0lTUFJfU0VUUEVORF82ICAgICAgICAgICAgICAgICAoMHgwMDAwMDA0MFUgPDwgTlZJQ19JU1BSX1NFVFBFTkRfUG9zKSAvKiE8IDB4MDAwMDAwNDAgKi8NCiNkZWZpbmUgTlZJQ19JU1BSX1NFVFBFTkRfNyAgICAgICAgICAgICAgICAgKDB4MDAwMDAwODBVIDw8IE5WSUNfSVNQUl9TRVRQRU5EX1BvcykgLyohPCAweDAwMDAwMDgwICovDQojZGVmaW5lIE5WSUNfSVNQUl9TRVRQRU5EXzggICAgICAgICAgICAgICAgICgweDAwMDAwMTAwVSA8PCBOVklDX0lTUFJfU0VUUEVORF9Qb3MpIC8qITwgMHgwMDAwMDEwMCAqLw0KI2RlZmluZSBOVklDX0lTUFJfU0VUUEVORF85ICAgICAgICAgICAgICAgICAoMHgwMDAwMDIwMFUgPDwgTlZJQ19JU1BSX1NFVFBFTkRfUG9zKSAvKiE8IDB4MDAwMDAyMDAgKi8NCiNkZWZpbmUgTlZJQ19JU1BSX1NFVFBFTkRfMTAgICAgICAgICAgICAgICAgKDB4MDAwMDA0MDBVIDw8IE5WSUNfSVNQUl9TRVRQRU5EX1BvcykgLyohPCAweDAwMDAwNDAwICovDQojZGVmaW5lIE5WSUNfSVNQUl9TRVRQRU5EXzExICAgICAgICAgICAgICAgICgweDAwMDAwODAwVSA8PCBOVklDX0lTUFJfU0VUUEVORF9Qb3MpIC8qITwgMHgwMDAwMDgwMCAqLw0KI2RlZmluZSBOVklDX0lTUFJfU0VUUEVORF8xMiAgICAgICAgICAgICAgICAoMHgwMDAwMTAwMFUgPDwgTlZJQ19JU1BSX1NFVFBFTkRfUG9zKSAvKiE8IDB4MDAwMDEwMDAgKi8NCiNkZWZpbmUgTlZJQ19JU1BSX1NFVFBFTkRfMTMgICAgICAgICAgICAgICAgKDB4MDAwMDIwMDBVIDw8IE5WSUNfSVNQUl9TRVRQRU5EX1BvcykgLyohPCAweDAwMDAyMDAwICovDQojZGVmaW5lIE5WSUNfSVNQUl9TRVRQRU5EXzE0ICAgICAgICAgICAgICAgICgweDAwMDA0MDAwVSA8PCBOVklDX0lTUFJfU0VUUEVORF9Qb3MpIC8qITwgMHgwMDAwNDAwMCAqLw0KI2RlZmluZSBOVklDX0lTUFJfU0VUUEVORF8xNSAgICAgICAgICAgICAgICAoMHgwMDAwODAwMFUgPDwgTlZJQ19JU1BSX1NFVFBFTkRfUG9zKSAvKiE8IDB4MDAwMDgwMDAgKi8NCiNkZWZpbmUgTlZJQ19JU1BSX1NFVFBFTkRfMTYgICAgICAgICAgICAgICAgKDB4MDAwMTAwMDBVIDw8IE5WSUNfSVNQUl9TRVRQRU5EX1BvcykgLyohPCAweDAwMDEwMDAwICovDQojZGVmaW5lIE5WSUNfSVNQUl9TRVRQRU5EXzE3ICAgICAgICAgICAgICAgICgweDAwMDIwMDAwVSA8PCBOVklDX0lTUFJfU0VUUEVORF9Qb3MpIC8qITwgMHgwMDAyMDAwMCAqLw0KI2RlZmluZSBOVklDX0lTUFJfU0VUUEVORF8xOCAgICAgICAgICAgICAgICAoMHgwMDA0MDAwMFUgPDwgTlZJQ19JU1BSX1NFVFBFTkRfUG9zKSAvKiE8IDB4MDAwNDAwMDAgKi8NCiNkZWZpbmUgTlZJQ19JU1BSX1NFVFBFTkRfMTkgICAgICAgICAgICAgICAgKDB4MDAwODAwMDBVIDw8IE5WSUNfSVNQUl9TRVRQRU5EX1BvcykgLyohPCAweDAwMDgwMDAwICovDQojZGVmaW5lIE5WSUNfSVNQUl9TRVRQRU5EXzIwICAgICAgICAgICAgICAgICgweDAwMTAwMDAwVSA8PCBOVklDX0lTUFJfU0VUUEVORF9Qb3MpIC8qITwgMHgwMDEwMDAwMCAqLw0KI2RlZmluZSBOVklDX0lTUFJfU0VUUEVORF8yMSAgICAgICAgICAgICAgICAoMHgwMDIwMDAwMFUgPDwgTlZJQ19JU1BSX1NFVFBFTkRfUG9zKSAvKiE8IDB4MDAyMDAwMDAgKi8NCiNkZWZpbmUgTlZJQ19JU1BSX1NFVFBFTkRfMjIgICAgICAgICAgICAgICAgKDB4MDA0MDAwMDBVIDw8IE5WSUNfSVNQUl9TRVRQRU5EX1BvcykgLyohPCAweDAwNDAwMDAwICovDQojZGVmaW5lIE5WSUNfSVNQUl9TRVRQRU5EXzIzICAgICAgICAgICAgICAgICgweDAwODAwMDAwVSA8PCBOVklDX0lTUFJfU0VUUEVORF9Qb3MpIC8qITwgMHgwMDgwMDAwMCAqLw0KI2RlZmluZSBOVklDX0lTUFJfU0VUUEVORF8yNCAgICAgICAgICAgICAgICAoMHgwMTAwMDAwMFUgPDwgTlZJQ19JU1BSX1NFVFBFTkRfUG9zKSAvKiE8IDB4MDEwMDAwMDAgKi8NCiNkZWZpbmUgTlZJQ19JU1BSX1NFVFBFTkRfMjUgICAgICAgICAgICAgICAgKDB4MDIwMDAwMDBVIDw8IE5WSUNfSVNQUl9TRVRQRU5EX1BvcykgLyohPCAweDAyMDAwMDAwICovDQojZGVmaW5lIE5WSUNfSVNQUl9TRVRQRU5EXzI2ICAgICAgICAgICAgICAgICgweDA0MDAwMDAwVSA8PCBOVklDX0lTUFJfU0VUUEVORF9Qb3MpIC8qITwgMHgwNDAwMDAwMCAqLw0KI2RlZmluZSBOVklDX0lTUFJfU0VUUEVORF8yNyAgICAgICAgICAgICAgICAoMHgwODAwMDAwMFUgPDwgTlZJQ19JU1BSX1NFVFBFTkRfUG9zKSAvKiE8IDB4MDgwMDAwMDAgKi8NCiNkZWZpbmUgTlZJQ19JU1BSX1NFVFBFTkRfMjggICAgICAgICAgICAgICAgKDB4MTAwMDAwMDBVIDw8IE5WSUNfSVNQUl9TRVRQRU5EX1BvcykgLyohPCAweDEwMDAwMDAwICovDQojZGVmaW5lIE5WSUNfSVNQUl9TRVRQRU5EXzI5ICAgICAgICAgICAgICAgICgweDIwMDAwMDAwVSA8PCBOVklDX0lTUFJfU0VUUEVORF9Qb3MpIC8qITwgMHgyMDAwMDAwMCAqLw0KI2RlZmluZSBOVklDX0lTUFJfU0VUUEVORF8zMCAgICAgICAgICAgICAgICAoMHg0MDAwMDAwMFUgPDwgTlZJQ19JU1BSX1NFVFBFTkRfUG9zKSAvKiE8IDB4NDAwMDAwMDAgKi8NCiNkZWZpbmUgTlZJQ19JU1BSX1NFVFBFTkRfMzEgICAgICAgICAgICAgICAgKDB4ODAwMDAwMDBVIDw8IE5WSUNfSVNQUl9TRVRQRU5EX1BvcykgLyohPCAweDgwMDAwMDAwICovDQoNCi8qKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBOVklDX0lDUFIgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIE5WSUNfSUNQUl9DTFJQRU5EX1BvcyAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIE5WSUNfSUNQUl9DTFJQRU5EX01zayAgICAgICAgICAgICAgICgweEZGRkZGRkZGVSA8PCBOVklDX0lDUFJfQ0xSUEVORF9Qb3MpIC8qITwgMHhGRkZGRkZGRiAqLw0KI2RlZmluZSBOVklDX0lDUFJfQ0xSUEVORCAgICAgICAgICAgICAgICAgICBOVklDX0lDUFJfQ0xSUEVORF9Nc2sgICAgICAgICAgICAgIC8qITwgSW50ZXJydXB0IGNsZWFyLXBlbmRpbmcgYml0cyAqLw0KI2RlZmluZSBOVklDX0lDUFJfQ0xSUEVORF8wICAgICAgICAgICAgICAgICAoMHgwMDAwMDAwMVUgPDwgTlZJQ19JQ1BSX0NMUlBFTkRfUG9zKSAvKiE8IDB4MDAwMDAwMDEgKi8NCiNkZWZpbmUgTlZJQ19JQ1BSX0NMUlBFTkRfMSAgICAgICAgICAgICAgICAgKDB4MDAwMDAwMDJVIDw8IE5WSUNfSUNQUl9DTFJQRU5EX1BvcykgLyohPCAweDAwMDAwMDAyICovDQojZGVmaW5lIE5WSUNfSUNQUl9DTFJQRU5EXzIgICAgICAgICAgICAgICAgICgweDAwMDAwMDA0VSA8PCBOVklDX0lDUFJfQ0xSUEVORF9Qb3MpIC8qITwgMHgwMDAwMDAwNCAqLw0KI2RlZmluZSBOVklDX0lDUFJfQ0xSUEVORF8zICAgICAgICAgICAgICAgICAoMHgwMDAwMDAwOFUgPDwgTlZJQ19JQ1BSX0NMUlBFTkRfUG9zKSAvKiE8IDB4MDAwMDAwMDggKi8NCiNkZWZpbmUgTlZJQ19JQ1BSX0NMUlBFTkRfNCAgICAgICAgICAgICAgICAgKDB4MDAwMDAwMTBVIDw8IE5WSUNfSUNQUl9DTFJQRU5EX1BvcykgLyohPCAweDAwMDAwMDEwICovDQojZGVmaW5lIE5WSUNfSUNQUl9DTFJQRU5EXzUgICAgICAgICAgICAgICAgICgweDAwMDAwMDIwVSA8PCBOVklDX0lDUFJfQ0xSUEVORF9Qb3MpIC8qITwgMHgwMDAwMDAyMCAqLw0KI2RlZmluZSBOVklDX0lDUFJfQ0xSUEVORF82ICAgICAgICAgICAgICAgICAoMHgwMDAwMDA0MFUgPDwgTlZJQ19JQ1BSX0NMUlBFTkRfUG9zKSAvKiE8IDB4MDAwMDAwNDAgKi8NCiNkZWZpbmUgTlZJQ19JQ1BSX0NMUlBFTkRfNyAgICAgICAgICAgICAgICAgKDB4MDAwMDAwODBVIDw8IE5WSUNfSUNQUl9DTFJQRU5EX1BvcykgLyohPCAweDAwMDAwMDgwICovDQojZGVmaW5lIE5WSUNfSUNQUl9DTFJQRU5EXzggICAgICAgICAgICAgICAgICgweDAwMDAwMTAwVSA8PCBOVklDX0lDUFJfQ0xSUEVORF9Qb3MpIC8qITwgMHgwMDAwMDEwMCAqLw0KI2RlZmluZSBOVklDX0lDUFJfQ0xSUEVORF85ICAgICAgICAgICAgICAgICAoMHgwMDAwMDIwMFUgPDwgTlZJQ19JQ1BSX0NMUlBFTkRfUG9zKSAvKiE8IDB4MDAwMDAyMDAgKi8NCiNkZWZpbmUgTlZJQ19JQ1BSX0NMUlBFTkRfMTAgICAgICAgICAgICAgICAgKDB4MDAwMDA0MDBVIDw8IE5WSUNfSUNQUl9DTFJQRU5EX1BvcykgLyohPCAweDAwMDAwNDAwICovDQojZGVmaW5lIE5WSUNfSUNQUl9DTFJQRU5EXzExICAgICAgICAgICAgICAgICgweDAwMDAwODAwVSA8PCBOVklDX0lDUFJfQ0xSUEVORF9Qb3MpIC8qITwgMHgwMDAwMDgwMCAqLw0KI2RlZmluZSBOVklDX0lDUFJfQ0xSUEVORF8xMiAgICAgICAgICAgICAgICAoMHgwMDAwMTAwMFUgPDwgTlZJQ19JQ1BSX0NMUlBFTkRfUG9zKSAvKiE8IDB4MDAwMDEwMDAgKi8NCiNkZWZpbmUgTlZJQ19JQ1BSX0NMUlBFTkRfMTMgICAgICAgICAgICAgICAgKDB4MDAwMDIwMDBVIDw8IE5WSUNfSUNQUl9DTFJQRU5EX1BvcykgLyohPCAweDAwMDAyMDAwICovDQojZGVmaW5lIE5WSUNfSUNQUl9DTFJQRU5EXzE0ICAgICAgICAgICAgICAgICgweDAwMDA0MDAwVSA8PCBOVklDX0lDUFJfQ0xSUEVORF9Qb3MpIC8qITwgMHgwMDAwNDAwMCAqLw0KI2RlZmluZSBOVklDX0lDUFJfQ0xSUEVORF8xNSAgICAgICAgICAgICAgICAoMHgwMDAwODAwMFUgPDwgTlZJQ19JQ1BSX0NMUlBFTkRfUG9zKSAvKiE8IDB4MDAwMDgwMDAgKi8NCiNkZWZpbmUgTlZJQ19JQ1BSX0NMUlBFTkRfMTYgICAgICAgICAgICAgICAgKDB4MDAwMTAwMDBVIDw8IE5WSUNfSUNQUl9DTFJQRU5EX1BvcykgLyohPCAweDAwMDEwMDAwICovDQojZGVmaW5lIE5WSUNfSUNQUl9DTFJQRU5EXzE3ICAgICAgICAgICAgICAgICgweDAwMDIwMDAwVSA8PCBOVklDX0lDUFJfQ0xSUEVORF9Qb3MpIC8qITwgMHgwMDAyMDAwMCAqLw0KI2RlZmluZSBOVklDX0lDUFJfQ0xSUEVORF8xOCAgICAgICAgICAgICAgICAoMHgwMDA0MDAwMFUgPDwgTlZJQ19JQ1BSX0NMUlBFTkRfUG9zKSAvKiE8IDB4MDAwNDAwMDAgKi8NCiNkZWZpbmUgTlZJQ19JQ1BSX0NMUlBFTkRfMTkgICAgICAgICAgICAgICAgKDB4MDAwODAwMDBVIDw8IE5WSUNfSUNQUl9DTFJQRU5EX1BvcykgLyohPCAweDAwMDgwMDAwICovDQojZGVmaW5lIE5WSUNfSUNQUl9DTFJQRU5EXzIwICAgICAgICAgICAgICAgICgweDAwMTAwMDAwVSA8PCBOVklDX0lDUFJfQ0xSUEVORF9Qb3MpIC8qITwgMHgwMDEwMDAwMCAqLw0KI2RlZmluZSBOVklDX0lDUFJfQ0xSUEVORF8yMSAgICAgICAgICAgICAgICAoMHgwMDIwMDAwMFUgPDwgTlZJQ19JQ1BSX0NMUlBFTkRfUG9zKSAvKiE8IDB4MDAyMDAwMDAgKi8NCiNkZWZpbmUgTlZJQ19JQ1BSX0NMUlBFTkRfMjIgICAgICAgICAgICAgICAgKDB4MDA0MDAwMDBVIDw8IE5WSUNfSUNQUl9DTFJQRU5EX1BvcykgLyohPCAweDAwNDAwMDAwICovDQojZGVmaW5lIE5WSUNfSUNQUl9DTFJQRU5EXzIzICAgICAgICAgICAgICAgICgweDAwODAwMDAwVSA8PCBOVklDX0lDUFJfQ0xSUEVORF9Qb3MpIC8qITwgMHgwMDgwMDAwMCAqLw0KI2RlZmluZSBOVklDX0lDUFJfQ0xSUEVORF8yNCAgICAgICAgICAgICAgICAoMHgwMTAwMDAwMFUgPDwgTlZJQ19JQ1BSX0NMUlBFTkRfUG9zKSAvKiE8IDB4MDEwMDAwMDAgKi8NCiNkZWZpbmUgTlZJQ19JQ1BSX0NMUlBFTkRfMjUgICAgICAgICAgICAgICAgKDB4MDIwMDAwMDBVIDw8IE5WSUNfSUNQUl9DTFJQRU5EX1BvcykgLyohPCAweDAyMDAwMDAwICovDQojZGVmaW5lIE5WSUNfSUNQUl9DTFJQRU5EXzI2ICAgICAgICAgICAgICAgICgweDA0MDAwMDAwVSA8PCBOVklDX0lDUFJfQ0xSUEVORF9Qb3MpIC8qITwgMHgwNDAwMDAwMCAqLw0KI2RlZmluZSBOVklDX0lDUFJfQ0xSUEVORF8yNyAgICAgICAgICAgICAgICAoMHgwODAwMDAwMFUgPDwgTlZJQ19JQ1BSX0NMUlBFTkRfUG9zKSAvKiE8IDB4MDgwMDAwMDAgKi8NCiNkZWZpbmUgTlZJQ19JQ1BSX0NMUlBFTkRfMjggICAgICAgICAgICAgICAgKDB4MTAwMDAwMDBVIDw8IE5WSUNfSUNQUl9DTFJQRU5EX1BvcykgLyohPCAweDEwMDAwMDAwICovDQojZGVmaW5lIE5WSUNfSUNQUl9DTFJQRU5EXzI5ICAgICAgICAgICAgICAgICgweDIwMDAwMDAwVSA8PCBOVklDX0lDUFJfQ0xSUEVORF9Qb3MpIC8qITwgMHgyMDAwMDAwMCAqLw0KI2RlZmluZSBOVklDX0lDUFJfQ0xSUEVORF8zMCAgICAgICAgICAgICAgICAoMHg0MDAwMDAwMFUgPDwgTlZJQ19JQ1BSX0NMUlBFTkRfUG9zKSAvKiE8IDB4NDAwMDAwMDAgKi8NCiNkZWZpbmUgTlZJQ19JQ1BSX0NMUlBFTkRfMzEgICAgICAgICAgICAgICAgKDB4ODAwMDAwMDBVIDw8IE5WSUNfSUNQUl9DTFJQRU5EX1BvcykgLyohPCAweDgwMDAwMDAwICovDQoNCi8qKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBOVklDX0lBQlIgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIE5WSUNfSUFCUl9BQ1RJVkVfUG9zICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIE5WSUNfSUFCUl9BQ1RJVkVfTXNrICAgICAgICAgICAgICAgICgweEZGRkZGRkZGVSA8PCBOVklDX0lBQlJfQUNUSVZFX1BvcykgLyohPCAweEZGRkZGRkZGICovDQojZGVmaW5lIE5WSUNfSUFCUl9BQ1RJVkUgICAgICAgICAgICAgICAgICAgIE5WSUNfSUFCUl9BQ1RJVkVfTXNrICAgICAgICAgICAgICAgLyohPCBJbnRlcnJ1cHQgYWN0aXZlIGZsYWdzICovDQojZGVmaW5lIE5WSUNfSUFCUl9BQ1RJVkVfMCAgICAgICAgICAgICAgICAgICgweDAwMDAwMDAxVSA8PCBOVklDX0lBQlJfQUNUSVZFX1BvcykgLyohPCAweDAwMDAwMDAxICovDQojZGVmaW5lIE5WSUNfSUFCUl9BQ1RJVkVfMSAgICAgICAgICAgICAgICAgICgweDAwMDAwMDAyVSA8PCBOVklDX0lBQlJfQUNUSVZFX1BvcykgLyohPCAweDAwMDAwMDAyICovDQojZGVmaW5lIE5WSUNfSUFCUl9BQ1RJVkVfMiAgICAgICAgICAgICAgICAgICgweDAwMDAwMDA0VSA8PCBOVklDX0lBQlJfQUNUSVZFX1BvcykgLyohPCAweDAwMDAwMDA0ICovDQojZGVmaW5lIE5WSUNfSUFCUl9BQ1RJVkVfMyAgICAgICAgICAgICAgICAgICgweDAwMDAwMDA4VSA8PCBOVklDX0lBQlJfQUNUSVZFX1BvcykgLyohPCAweDAwMDAwMDA4ICovDQojZGVmaW5lIE5WSUNfSUFCUl9BQ1RJVkVfNCAgICAgICAgICAgICAgICAgICgweDAwMDAwMDEwVSA8PCBOVklDX0lBQlJfQUNUSVZFX1BvcykgLyohPCAweDAwMDAwMDEwICovDQojZGVmaW5lIE5WSUNfSUFCUl9BQ1RJVkVfNSAgICAgICAgICAgICAgICAgICgweDAwMDAwMDIwVSA8PCBOVklDX0lBQlJfQUNUSVZFX1BvcykgLyohPCAweDAwMDAwMDIwICovDQojZGVmaW5lIE5WSUNfSUFCUl9BQ1RJVkVfNiAgICAgICAgICAgICAgICAgICgweDAwMDAwMDQwVSA8PCBOVklDX0lBQlJfQUNUSVZFX1BvcykgLyohPCAweDAwMDAwMDQwICovDQojZGVmaW5lIE5WSUNfSUFCUl9BQ1RJVkVfNyAgICAgICAgICAgICAgICAgICgweDAwMDAwMDgwVSA8PCBOVklDX0lBQlJfQUNUSVZFX1BvcykgLyohPCAweDAwMDAwMDgwICovDQojZGVmaW5lIE5WSUNfSUFCUl9BQ1RJVkVfOCAgICAgICAgICAgICAgICAgICgweDAwMDAwMTAwVSA8PCBOVklDX0lBQlJfQUNUSVZFX1BvcykgLyohPCAweDAwMDAwMTAwICovDQojZGVmaW5lIE5WSUNfSUFCUl9BQ1RJVkVfOSAgICAgICAgICAgICAgICAgICgweDAwMDAwMjAwVSA8PCBOVklDX0lBQlJfQUNUSVZFX1BvcykgLyohPCAweDAwMDAwMjAwICovDQojZGVmaW5lIE5WSUNfSUFCUl9BQ1RJVkVfMTAgICAgICAgICAgICAgICAgICgweDAwMDAwNDAwVSA8PCBOVklDX0lBQlJfQUNUSVZFX1BvcykgLyohPCAweDAwMDAwNDAwICovDQojZGVmaW5lIE5WSUNfSUFCUl9BQ1RJVkVfMTEgICAgICAgICAgICAgICAgICgweDAwMDAwODAwVSA8PCBOVklDX0lBQlJfQUNUSVZFX1BvcykgLyohPCAweDAwMDAwODAwICovDQojZGVmaW5lIE5WSUNfSUFCUl9BQ1RJVkVfMTIgICAgICAgICAgICAgICAgICgweDAwMDAxMDAwVSA8PCBOVklDX0lBQlJfQUNUSVZFX1BvcykgLyohPCAweDAwMDAxMDAwICovDQojZGVmaW5lIE5WSUNfSUFCUl9BQ1RJVkVfMTMgICAgICAgICAgICAgICAgICgweDAwMDAyMDAwVSA8PCBOVklDX0lBQlJfQUNUSVZFX1BvcykgLyohPCAweDAwMDAyMDAwICovDQojZGVmaW5lIE5WSUNfSUFCUl9BQ1RJVkVfMTQgICAgICAgICAgICAgICAgICgweDAwMDA0MDAwVSA8PCBOVklDX0lBQlJfQUNUSVZFX1BvcykgLyohPCAweDAwMDA0MDAwICovDQojZGVmaW5lIE5WSUNfSUFCUl9BQ1RJVkVfMTUgICAgICAgICAgICAgICAgICgweDAwMDA4MDAwVSA8PCBOVklDX0lBQlJfQUNUSVZFX1BvcykgLyohPCAweDAwMDA4MDAwICovDQojZGVmaW5lIE5WSUNfSUFCUl9BQ1RJVkVfMTYgICAgICAgICAgICAgICAgICgweDAwMDEwMDAwVSA8PCBOVklDX0lBQlJfQUNUSVZFX1BvcykgLyohPCAweDAwMDEwMDAwICovDQojZGVmaW5lIE5WSUNfSUFCUl9BQ1RJVkVfMTcgICAgICAgICAgICAgICAgICgweDAwMDIwMDAwVSA8PCBOVklDX0lBQlJfQUNUSVZFX1BvcykgLyohPCAweDAwMDIwMDAwICovDQojZGVmaW5lIE5WSUNfSUFCUl9BQ1RJVkVfMTggICAgICAgICAgICAgICAgICgweDAwMDQwMDAwVSA8PCBOVklDX0lBQlJfQUNUSVZFX1BvcykgLyohPCAweDAwMDQwMDAwICovDQojZGVmaW5lIE5WSUNfSUFCUl9BQ1RJVkVfMTkgICAgICAgICAgICAgICAgICgweDAwMDgwMDAwVSA8PCBOVklDX0lBQlJfQUNUSVZFX1BvcykgLyohPCAweDAwMDgwMDAwICovDQojZGVmaW5lIE5WSUNfSUFCUl9BQ1RJVkVfMjAgICAgICAgICAgICAgICAgICgweDAwMTAwMDAwVSA8PCBOVklDX0lBQlJfQUNUSVZFX1BvcykgLyohPCAweDAwMTAwMDAwICovDQojZGVmaW5lIE5WSUNfSUFCUl9BQ1RJVkVfMjEgICAgICAgICAgICAgICAgICgweDAwMjAwMDAwVSA8PCBOVklDX0lBQlJfQUNUSVZFX1BvcykgLyohPCAweDAwMjAwMDAwICovDQojZGVmaW5lIE5WSUNfSUFCUl9BQ1RJVkVfMjIgICAgICAgICAgICAgICAgICgweDAwNDAwMDAwVSA8PCBOVklDX0lBQlJfQUNUSVZFX1BvcykgLyohPCAweDAwNDAwMDAwICovDQojZGVmaW5lIE5WSUNfSUFCUl9BQ1RJVkVfMjMgICAgICAgICAgICAgICAgICgweDAwODAwMDAwVSA8PCBOVklDX0lBQlJfQUNUSVZFX1BvcykgLyohPCAweDAwODAwMDAwICovDQojZGVmaW5lIE5WSUNfSUFCUl9BQ1RJVkVfMjQgICAgICAgICAgICAgICAgICgweDAxMDAwMDAwVSA8PCBOVklDX0lBQlJfQUNUSVZFX1BvcykgLyohPCAweDAxMDAwMDAwICovDQojZGVmaW5lIE5WSUNfSUFCUl9BQ1RJVkVfMjUgICAgICAgICAgICAgICAgICgweDAyMDAwMDAwVSA8PCBOVklDX0lBQlJfQUNUSVZFX1BvcykgLyohPCAweDAyMDAwMDAwICovDQojZGVmaW5lIE5WSUNfSUFCUl9BQ1RJVkVfMjYgICAgICAgICAgICAgICAgICgweDA0MDAwMDAwVSA8PCBOVklDX0lBQlJfQUNUSVZFX1BvcykgLyohPCAweDA0MDAwMDAwICovDQojZGVmaW5lIE5WSUNfSUFCUl9BQ1RJVkVfMjcgICAgICAgICAgICAgICAgICgweDA4MDAwMDAwVSA8PCBOVklDX0lBQlJfQUNUSVZFX1BvcykgLyohPCAweDA4MDAwMDAwICovDQojZGVmaW5lIE5WSUNfSUFCUl9BQ1RJVkVfMjggICAgICAgICAgICAgICAgICgweDEwMDAwMDAwVSA8PCBOVklDX0lBQlJfQUNUSVZFX1BvcykgLyohPCAweDEwMDAwMDAwICovDQojZGVmaW5lIE5WSUNfSUFCUl9BQ1RJVkVfMjkgICAgICAgICAgICAgICAgICgweDIwMDAwMDAwVSA8PCBOVklDX0lBQlJfQUNUSVZFX1BvcykgLyohPCAweDIwMDAwMDAwICovDQojZGVmaW5lIE5WSUNfSUFCUl9BQ1RJVkVfMzAgICAgICAgICAgICAgICAgICgweDQwMDAwMDAwVSA8PCBOVklDX0lBQlJfQUNUSVZFX1BvcykgLyohPCAweDQwMDAwMDAwICovDQojZGVmaW5lIE5WSUNfSUFCUl9BQ1RJVkVfMzEgICAgICAgICAgICAgICAgICgweDgwMDAwMDAwVSA8PCBOVklDX0lBQlJfQUNUSVZFX1BvcykgLyohPCAweDgwMDAwMDAwICovDQoNCi8qKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBOVklDX1BSSTAgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIE5WSUNfSVBSMF9QUklfMCAgICAgICAgICAgICAgICAgICAgICgweDAwMDAwMEZGVSkgICAgICAgICAgICAgICAgICAgICAgLyohPCBQcmlvcml0eSBvZiBpbnRlcnJ1cHQgMCAqLw0KI2RlZmluZSBOVklDX0lQUjBfUFJJXzEgICAgICAgICAgICAgICAgICAgICAoMHgwMDAwRkYwMFUpICAgICAgICAgICAgICAgICAgICAgIC8qITwgUHJpb3JpdHkgb2YgaW50ZXJydXB0IDEgKi8NCiNkZWZpbmUgTlZJQ19JUFIwX1BSSV8yICAgICAgICAgICAgICAgICAgICAgKDB4MDBGRjAwMDBVKSAgICAgICAgICAgICAgICAgICAgICAvKiE8IFByaW9yaXR5IG9mIGludGVycnVwdCAyICovDQojZGVmaW5lIE5WSUNfSVBSMF9QUklfMyAgICAgICAgICAgICAgICAgICAgICgweEZGMDAwMDAwVSkgICAgICAgICAgICAgICAgICAgICAgLyohPCBQcmlvcml0eSBvZiBpbnRlcnJ1cHQgMyAqLw0KDQovKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgTlZJQ19QUkkxIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBOVklDX0lQUjFfUFJJXzQgICAgICAgICAgICAgICAgICAgICAoMHgwMDAwMDBGRlUpICAgICAgICAgICAgICAgICAgICAgIC8qITwgUHJpb3JpdHkgb2YgaW50ZXJydXB0IDQgKi8NCiNkZWZpbmUgTlZJQ19JUFIxX1BSSV81ICAgICAgICAgICAgICAgICAgICAgKDB4MDAwMEZGMDBVKSAgICAgICAgICAgICAgICAgICAgICAvKiE8IFByaW9yaXR5IG9mIGludGVycnVwdCA1ICovDQojZGVmaW5lIE5WSUNfSVBSMV9QUklfNiAgICAgICAgICAgICAgICAgICAgICgweDAwRkYwMDAwVSkgICAgICAgICAgICAgICAgICAgICAgLyohPCBQcmlvcml0eSBvZiBpbnRlcnJ1cHQgNiAqLw0KI2RlZmluZSBOVklDX0lQUjFfUFJJXzcgICAgICAgICAgICAgICAgICAgICAoMHhGRjAwMDAwMFUpICAgICAgICAgICAgICAgICAgICAgIC8qITwgUHJpb3JpdHkgb2YgaW50ZXJydXB0IDcgKi8NCg0KLyoqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIE5WSUNfUFJJMiByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgTlZJQ19JUFIyX1BSSV84ICAgICAgICAgICAgICAgICAgICAgKDB4MDAwMDAwRkZVKSAgICAgICAgICAgICAgICAgICAgICAvKiE8IFByaW9yaXR5IG9mIGludGVycnVwdCA4ICovDQojZGVmaW5lIE5WSUNfSVBSMl9QUklfOSAgICAgICAgICAgICAgICAgICAgICgweDAwMDBGRjAwVSkgICAgICAgICAgICAgICAgICAgICAgLyohPCBQcmlvcml0eSBvZiBpbnRlcnJ1cHQgOSAqLw0KI2RlZmluZSBOVklDX0lQUjJfUFJJXzEwICAgICAgICAgICAgICAgICAgICAoMHgwMEZGMDAwMFUpICAgICAgICAgICAgICAgICAgICAgIC8qITwgUHJpb3JpdHkgb2YgaW50ZXJydXB0IDEwICovDQojZGVmaW5lIE5WSUNfSVBSMl9QUklfMTEgICAgICAgICAgICAgICAgICAgICgweEZGMDAwMDAwVSkgICAgICAgICAgICAgICAgICAgICAgLyohPCBQcmlvcml0eSBvZiBpbnRlcnJ1cHQgMTEgKi8NCg0KLyoqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIE5WSUNfUFJJMyByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgTlZJQ19JUFIzX1BSSV8xMiAgICAgICAgICAgICAgICAgICAgKDB4MDAwMDAwRkZVKSAgICAgICAgICAgICAgICAgICAgICAvKiE8IFByaW9yaXR5IG9mIGludGVycnVwdCAxMiAqLw0KI2RlZmluZSBOVklDX0lQUjNfUFJJXzEzICAgICAgICAgICAgICAgICAgICAoMHgwMDAwRkYwMFUpICAgICAgICAgICAgICAgICAgICAgIC8qITwgUHJpb3JpdHkgb2YgaW50ZXJydXB0IDEzICovDQojZGVmaW5lIE5WSUNfSVBSM19QUklfMTQgICAgICAgICAgICAgICAgICAgICgweDAwRkYwMDAwVSkgICAgICAgICAgICAgICAgICAgICAgLyohPCBQcmlvcml0eSBvZiBpbnRlcnJ1cHQgMTQgKi8NCiNkZWZpbmUgTlZJQ19JUFIzX1BSSV8xNSAgICAgICAgICAgICAgICAgICAgKDB4RkYwMDAwMDBVKSAgICAgICAgICAgICAgICAgICAgICAvKiE8IFByaW9yaXR5IG9mIGludGVycnVwdCAxNSAqLw0KDQovKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgTlZJQ19QUkk0IHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBOVklDX0lQUjRfUFJJXzE2ICAgICAgICAgICAgICAgICAgICAoMHgwMDAwMDBGRlUpICAgICAgICAgICAgICAgICAgICAgIC8qITwgUHJpb3JpdHkgb2YgaW50ZXJydXB0IDE2ICovDQojZGVmaW5lIE5WSUNfSVBSNF9QUklfMTcgICAgICAgICAgICAgICAgICAgICgweDAwMDBGRjAwVSkgICAgICAgICAgICAgICAgICAgICAgLyohPCBQcmlvcml0eSBvZiBpbnRlcnJ1cHQgMTcgKi8NCiNkZWZpbmUgTlZJQ19JUFI0X1BSSV8xOCAgICAgICAgICAgICAgICAgICAgKDB4MDBGRjAwMDBVKSAgICAgICAgICAgICAgICAgICAgICAvKiE8IFByaW9yaXR5IG9mIGludGVycnVwdCAxOCAqLw0KI2RlZmluZSBOVklDX0lQUjRfUFJJXzE5ICAgICAgICAgICAgICAgICAgICAoMHhGRjAwMDAwMFUpICAgICAgICAgICAgICAgICAgICAgIC8qITwgUHJpb3JpdHkgb2YgaW50ZXJydXB0IDE5ICovDQoNCi8qKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBOVklDX1BSSTUgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIE5WSUNfSVBSNV9QUklfMjAgICAgICAgICAgICAgICAgICAgICgweDAwMDAwMEZGVSkgICAgICAgICAgICAgICAgICAgICAgLyohPCBQcmlvcml0eSBvZiBpbnRlcnJ1cHQgMjAgKi8NCiNkZWZpbmUgTlZJQ19JUFI1X1BSSV8yMSAgICAgICAgICAgICAgICAgICAgKDB4MDAwMEZGMDBVKSAgICAgICAgICAgICAgICAgICAgICAvKiE8IFByaW9yaXR5IG9mIGludGVycnVwdCAyMSAqLw0KI2RlZmluZSBOVklDX0lQUjVfUFJJXzIyICAgICAgICAgICAgICAgICAgICAoMHgwMEZGMDAwMFUpICAgICAgICAgICAgICAgICAgICAgIC8qITwgUHJpb3JpdHkgb2YgaW50ZXJydXB0IDIyICovDQojZGVmaW5lIE5WSUNfSVBSNV9QUklfMjMgICAgICAgICAgICAgICAgICAgICgweEZGMDAwMDAwVSkgICAgICAgICAgICAgICAgICAgICAgLyohPCBQcmlvcml0eSBvZiBpbnRlcnJ1cHQgMjMgKi8NCg0KLyoqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIE5WSUNfUFJJNiByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgTlZJQ19JUFI2X1BSSV8yNCAgICAgICAgICAgICAgICAgICAgKDB4MDAwMDAwRkZVKSAgICAgICAgICAgICAgICAgICAgICAvKiE8IFByaW9yaXR5IG9mIGludGVycnVwdCAyNCAqLw0KI2RlZmluZSBOVklDX0lQUjZfUFJJXzI1ICAgICAgICAgICAgICAgICAgICAoMHgwMDAwRkYwMFUpICAgICAgICAgICAgICAgICAgICAgIC8qITwgUHJpb3JpdHkgb2YgaW50ZXJydXB0IDI1ICovDQojZGVmaW5lIE5WSUNfSVBSNl9QUklfMjYgICAgICAgICAgICAgICAgICAgICgweDAwRkYwMDAwVSkgICAgICAgICAgICAgICAgICAgICAgLyohPCBQcmlvcml0eSBvZiBpbnRlcnJ1cHQgMjYgKi8NCiNkZWZpbmUgTlZJQ19JUFI2X1BSSV8yNyAgICAgICAgICAgICAgICAgICAgKDB4RkYwMDAwMDBVKSAgICAgICAgICAgICAgICAgICAgICAvKiE8IFByaW9yaXR5IG9mIGludGVycnVwdCAyNyAqLw0KDQovKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgTlZJQ19QUkk3IHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBOVklDX0lQUjdfUFJJXzI4ICAgICAgICAgICAgICAgICAgICAoMHgwMDAwMDBGRlUpICAgICAgICAgICAgICAgICAgICAgIC8qITwgUHJpb3JpdHkgb2YgaW50ZXJydXB0IDI4ICovDQojZGVmaW5lIE5WSUNfSVBSN19QUklfMjkgICAgICAgICAgICAgICAgICAgICgweDAwMDBGRjAwVSkgICAgICAgICAgICAgICAgICAgICAgLyohPCBQcmlvcml0eSBvZiBpbnRlcnJ1cHQgMjkgKi8NCiNkZWZpbmUgTlZJQ19JUFI3X1BSSV8zMCAgICAgICAgICAgICAgICAgICAgKDB4MDBGRjAwMDBVKSAgICAgICAgICAgICAgICAgICAgICAvKiE8IFByaW9yaXR5IG9mIGludGVycnVwdCAzMCAqLw0KI2RlZmluZSBOVklDX0lQUjdfUFJJXzMxICAgICAgICAgICAgICAgICAgICAoMHhGRjAwMDAwMFUpICAgICAgICAgICAgICAgICAgICAgIC8qITwgUHJpb3JpdHkgb2YgaW50ZXJydXB0IDMxICovDQoNCi8qKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBTQ0JfQ1BVSUQgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIFNDQl9DUFVJRF9SRVZJU0lPTiAgICAgICAgICAgICAgICAgICgweDAwMDAwMDBGVSkgICAgICAgICAgICAgICAgICAgICAgLyohPCBJbXBsZW1lbnRhdGlvbiBkZWZpbmVkIHJldmlzaW9uIG51bWJlciAqLw0KI2RlZmluZSBTQ0JfQ1BVSURfUEFSVE5PICAgICAgICAgICAgICAgICAgICAoMHgwMDAwRkZGMFUpICAgICAgICAgICAgICAgICAgICAgIC8qITwgTnVtYmVyIG9mIHByb2Nlc3NvciB3aXRoaW4gc2VyaWUgKi8NCiNkZWZpbmUgU0NCX0NQVUlEX0NvbnN0YW50ICAgICAgICAgICAgICAgICAgKDB4MDAwRjAwMDBVKSAgICAgICAgICAgICAgICAgICAgICAvKiE8IFJlYWRzIGFzIDB4MEYgKi8NCiNkZWZpbmUgU0NCX0NQVUlEX1ZBUklBTlQgICAgICAgICAgICAgICAgICAgKDB4MDBGMDAwMDBVKSAgICAgICAgICAgICAgICAgICAgICAvKiE8IEltcGxlbWVudGF0aW9uIGRlZmluZWQgdmFyaWFudCBudW1iZXIgKi8NCiNkZWZpbmUgU0NCX0NQVUlEX0lNUExFTUVOVEVSICAgICAgICAgICAgICAgKDB4RkYwMDAwMDBVKSAgICAgICAgICAgICAgICAgICAgICAvKiE8IEltcGxlbWVudGVyIGNvZGUuIEFSTSBpcyAweDQxICovDQoNCi8qKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgU0NCX0lDU1IgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIFNDQl9JQ1NSX1ZFQ1RBQ1RJVkUgICAgICAgICAgICAgICAgICgweDAwMDAwMUZGVSkgICAgICAgICAgICAgICAgICAgICAgLyohPCBBY3RpdmUgSVNSIG51bWJlciBmaWVsZCAqLw0KI2RlZmluZSBTQ0JfSUNTUl9SRVRUT0JBU0UgICAgICAgICAgICAgICAgICAoMHgwMDAwMDgwMFUpICAgICAgICAgICAgICAgICAgICAgIC8qITwgQWxsIGFjdGl2ZSBleGNlcHRpb25zIG1pbnVzIHRoZSBJUFNSX2N1cnJlbnRfZXhjZXB0aW9uIHlpZWxkcyB0aGUgZW1wdHkgc2V0ICovDQojZGVmaW5lIFNDQl9JQ1NSX1ZFQ1RQRU5ESU5HICAgICAgICAgICAgICAgICgweDAwM0ZGMDAwVSkgICAgICAgICAgICAgICAgICAgICAgLyohPCBQZW5kaW5nIElTUiBudW1iZXIgZmllbGQgKi8NCiNkZWZpbmUgU0NCX0lDU1JfSVNSUEVORElORyAgICAgICAgICAgICAgICAgKDB4MDA0MDAwMDBVKSAgICAgICAgICAgICAgICAgICAgICAvKiE8IEludGVycnVwdCBwZW5kaW5nIGZsYWcgKi8NCiNkZWZpbmUgU0NCX0lDU1JfSVNSUFJFRU1QVCAgICAgICAgICAgICAgICAgKDB4MDA4MDAwMDBVKSAgICAgICAgICAgICAgICAgICAgICAvKiE8IEl0IGluZGljYXRlcyB0aGF0IGEgcGVuZGluZyBpbnRlcnJ1cHQgYmVjb21lcyBhY3RpdmUgaW4gdGhlIG5leHQgcnVubmluZyBjeWNsZSAqLw0KI2RlZmluZSBTQ0JfSUNTUl9QRU5EU1RDTFIgICAgICAgICAgICAgICAgICAoMHgwMjAwMDAwMFUpICAgICAgICAgICAgICAgICAgICAgIC8qITwgQ2xlYXIgcGVuZGluZyBTeXNUaWNrIGJpdCAqLw0KI2RlZmluZSBTQ0JfSUNTUl9QRU5EU1RTRVQgICAgICAgICAgICAgICAgICAoMHgwNDAwMDAwMFUpICAgICAgICAgICAgICAgICAgICAgIC8qITwgU2V0IHBlbmRpbmcgU3lzVGljayBiaXQgKi8NCiNkZWZpbmUgU0NCX0lDU1JfUEVORFNWQ0xSICAgICAgICAgICAgICAgICAgKDB4MDgwMDAwMDBVKSAgICAgICAgICAgICAgICAgICAgICAvKiE8IENsZWFyIHBlbmRpbmcgcGVuZFNWIGJpdCAqLw0KI2RlZmluZSBTQ0JfSUNTUl9QRU5EU1ZTRVQgICAgICAgICAgICAgICAgICAoMHgxMDAwMDAwMFUpICAgICAgICAgICAgICAgICAgICAgIC8qITwgU2V0IHBlbmRpbmcgcGVuZFNWIGJpdCAqLw0KI2RlZmluZSBTQ0JfSUNTUl9OTUlQRU5EU0VUICAgICAgICAgICAgICAgICAoMHg4MDAwMDAwMFUpICAgICAgICAgICAgICAgICAgICAgIC8qITwgU2V0IHBlbmRpbmcgTk1JIGJpdCAqLw0KDQovKioqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFNDQl9WVE9SIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBTQ0JfVlRPUl9UQkxPRkYgICAgICAgICAgICAgICAgICAgICAoMHgxRkZGRkY4MFUpICAgICAgICAgICAgICAgICAgICAgIC8qITwgVmVjdG9yIHRhYmxlIGJhc2Ugb2Zmc2V0IGZpZWxkICovDQojZGVmaW5lIFNDQl9WVE9SX1RCTEJBU0UgICAgICAgICAgICAgICAgICAgICgweDIwMDAwMDAwVSkgICAgICAgICAgICAgICAgICAgICAgLyohPCBUYWJsZSBiYXNlIGluIGNvZGUoMCkgb3IgUkFNKDEpICovDQoNCi8qITwqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFNDQl9BSVJDUiByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgU0NCX0FJUkNSX1ZFQ1RSRVNFVCAgICAgICAgICAgICAgICAgKDB4MDAwMDAwMDFVKSAgICAgICAgICAgICAgICAgICAgICAvKiE8IFN5c3RlbSBSZXNldCBiaXQgKi8NCiNkZWZpbmUgU0NCX0FJUkNSX1ZFQ1RDTFJBQ1RJVkUgICAgICAgICAgICAgKDB4MDAwMDAwMDJVKSAgICAgICAgICAgICAgICAgICAgICAvKiE8IENsZWFyIGFjdGl2ZSB2ZWN0b3IgYml0ICovDQojZGVmaW5lIFNDQl9BSVJDUl9TWVNSRVNFVFJFUSAgICAgICAgICAgICAgICgweDAwMDAwMDA0VSkgICAgICAgICAgICAgICAgICAgICAgLyohPCBSZXF1ZXN0cyBjaGlwIGNvbnRyb2wgbG9naWMgdG8gZ2VuZXJhdGUgYSByZXNldCAqLw0KDQojZGVmaW5lIFNDQl9BSVJDUl9QUklHUk9VUCAgICAgICAgICAgICAgICAgICgweDAwMDAwNzAwVSkgICAgICAgICAgICAgICAgICAgICAgLyohPCBQUklHUk9VUFsyOjBdIGJpdHMgKFByaW9yaXR5IGdyb3VwKSAqLw0KI2RlZmluZSBTQ0JfQUlSQ1JfUFJJR1JPVVBfMCAgICAgICAgICAgICAgICAoMHgwMDAwMDEwMFUpICAgICAgICAgICAgICAgICAgICAgIC8qITwgQml0IDAgKi8NCiNkZWZpbmUgU0NCX0FJUkNSX1BSSUdST1VQXzEgICAgICAgICAgICAgICAgKDB4MDAwMDAyMDBVKSAgICAgICAgICAgICAgICAgICAgICAvKiE8IEJpdCAxICovDQojZGVmaW5lIFNDQl9BSVJDUl9QUklHUk9VUF8yICAgICAgICAgICAgICAgICgweDAwMDAwNDAwVSkgICAgICAgICAgICAgICAgICAgICAgLyohPCBCaXQgMiAgKi8NCg0KLyogcHJvcml0eSBncm91cCBjb25maWd1cmF0aW9uICovDQojZGVmaW5lIFNDQl9BSVJDUl9QUklHUk9VUDAgICAgICAgICAgICAgICAgICgweDAwMDAwMDAwVSkgICAgICAgICAgICAgICAgICAgICAgLyohPCBQcmlvcml0eSBncm91cD0wICg3IGJpdHMgb2YgcHJlLWVtcHRpb24gcHJpb3JpdHksIDEgYml0IG9mIHN1YnByaW9yaXR5KSAqLw0KI2RlZmluZSBTQ0JfQUlSQ1JfUFJJR1JPVVAxICAgICAgICAgICAgICAgICAoMHgwMDAwMDEwMFUpICAgICAgICAgICAgICAgICAgICAgIC8qITwgUHJpb3JpdHkgZ3JvdXA9MSAoNiBiaXRzIG9mIHByZS1lbXB0aW9uIHByaW9yaXR5LCAyIGJpdHMgb2Ygc3VicHJpb3JpdHkpICovDQojZGVmaW5lIFNDQl9BSVJDUl9QUklHUk9VUDIgICAgICAgICAgICAgICAgICgweDAwMDAwMjAwVSkgICAgICAgICAgICAgICAgICAgICAgLyohPCBQcmlvcml0eSBncm91cD0yICg1IGJpdHMgb2YgcHJlLWVtcHRpb24gcHJpb3JpdHksIDMgYml0cyBvZiBzdWJwcmlvcml0eSkgKi8NCiNkZWZpbmUgU0NCX0FJUkNSX1BSSUdST1VQMyAgICAgICAgICAgICAgICAgKDB4MDAwMDAzMDBVKSAgICAgICAgICAgICAgICAgICAgICAvKiE8IFByaW9yaXR5IGdyb3VwPTMgKDQgYml0cyBvZiBwcmUtZW1wdGlvbiBwcmlvcml0eSwgNCBiaXRzIG9mIHN1YnByaW9yaXR5KSAqLw0KI2RlZmluZSBTQ0JfQUlSQ1JfUFJJR1JPVVA0ICAgICAgICAgICAgICAgICAoMHgwMDAwMDQwMFUpICAgICAgICAgICAgICAgICAgICAgIC8qITwgUHJpb3JpdHkgZ3JvdXA9NCAoMyBiaXRzIG9mIHByZS1lbXB0aW9uIHByaW9yaXR5LCA1IGJpdHMgb2Ygc3VicHJpb3JpdHkpICovDQojZGVmaW5lIFNDQl9BSVJDUl9QUklHUk9VUDUgICAgICAgICAgICAgICAgICgweDAwMDAwNTAwVSkgICAgICAgICAgICAgICAgICAgICAgLyohPCBQcmlvcml0eSBncm91cD01ICgyIGJpdHMgb2YgcHJlLWVtcHRpb24gcHJpb3JpdHksIDYgYml0cyBvZiBzdWJwcmlvcml0eSkgKi8NCiNkZWZpbmUgU0NCX0FJUkNSX1BSSUdST1VQNiAgICAgICAgICAgICAgICAgKDB4MDAwMDA2MDBVKSAgICAgICAgICAgICAgICAgICAgICAvKiE8IFByaW9yaXR5IGdyb3VwPTYgKDEgYml0IG9mIHByZS1lbXB0aW9uIHByaW9yaXR5LCA3IGJpdHMgb2Ygc3VicHJpb3JpdHkpICovDQojZGVmaW5lIFNDQl9BSVJDUl9QUklHUk9VUDcgICAgICAgICAgICAgICAgICgweDAwMDAwNzAwVSkgICAgICAgICAgICAgICAgICAgICAgLyohPCBQcmlvcml0eSBncm91cD03IChubyBwcmUtZW1wdGlvbiBwcmlvcml0eSwgOCBiaXRzIG9mIHN1YnByaW9yaXR5KSAqLw0KDQojZGVmaW5lIFNDQl9BSVJDUl9FTkRJQU5FU1MgICAgICAgICAgICAgICAgICgweDAwMDA4MDAwVSkgICAgICAgICAgICAgICAgICAgICAgLyohPCBEYXRhIGVuZGlhbm5lc3MgYml0ICovDQojZGVmaW5lIFNDQl9BSVJDUl9WRUNUS0VZICAgICAgICAgICAgICAgICAgICgweEZGRkYwMDAwVSkgICAgICAgICAgICAgICAgICAgICAgLyohPCBSZWdpc3RlciBrZXkgKFZFQ1RLRVkpIC0gUmVhZHMgYXMgMHhGQTA1IChWRUNUS0VZU1RBVCkgKi8NCg0KLyoqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBTQ0JfU0NSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgU0NCX1NDUl9TTEVFUE9ORVhJVCAgICAgICAgICAgICAgICAgKDB4MDAwMDAwMDJVKSAgICAgICAgICAgICAgICAgICAgICAvKiE8IFNsZWVwIG9uIGV4aXQgYml0ICovDQojZGVmaW5lIFNDQl9TQ1JfU0xFRVBERUVQICAgICAgICAgICAgICAgICAgICgweDAwMDAwMDA0VSkgICAgICAgICAgICAgICAgICAgICAgLyohPCBTbGVlcCBkZWVwIGJpdCAqLw0KI2RlZmluZSBTQ0JfU0NSX1NFVk9OUEVORCAgICAgICAgICAgICAgICAgICAoMHgwMDAwMDAxMFUpICAgICAgICAgICAgICAgICAgICAgIC8qITwgV2FrZSB1cCBmcm9tIFdGRSAqLw0KDQovKioqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBTQ0JfQ0NSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBTQ0JfQ0NSX05PTkJBU0VUSFJERU5BICAgICAgICAgICAgICAoMHgwMDAwMDAwMVUpICAgICAgICAgICAgICAgICAgICAgIC8qITwgVGhyZWFkIG1vZGUgY2FuIGJlIGVudGVyZWQgZnJvbSBhbnkgbGV2ZWwgaW4gSGFuZGxlciBtb2RlIGJ5IGNvbnRyb2xsZWQgcmV0dXJuIHZhbHVlICovDQojZGVmaW5lIFNDQl9DQ1JfVVNFUlNFVE1QRU5EICAgICAgICAgICAgICAgICgweDAwMDAwMDAyVSkgICAgICAgICAgICAgICAgICAgICAgLyohPCBFbmFibGVzIHVzZXIgY29kZSB0byB3cml0ZSB0aGUgU29mdHdhcmUgVHJpZ2dlciBJbnRlcnJ1cHQgcmVnaXN0ZXIgdG8gdHJpZ2dlciAocGVuZCkgYSBNYWluIGV4Y2VwdGlvbiAqLw0KI2RlZmluZSBTQ0JfQ0NSX1VOQUxJR05fVFJQICAgICAgICAgICAgICAgICAoMHgwMDAwMDAwOFUpICAgICAgICAgICAgICAgICAgICAgIC8qITwgVHJhcCBmb3IgdW5hbGlnbmVkIGFjY2VzcyAqLw0KI2RlZmluZSBTQ0JfQ0NSX0RJVl8wX1RSUCAgICAgICAgICAgICAgICAgICAoMHgwMDAwMDAxMFUpICAgICAgICAgICAgICAgICAgICAgIC8qITwgVHJhcCBvbiBEaXZpZGUgYnkgMCAqLw0KI2RlZmluZSBTQ0JfQ0NSX0JGSEZOTUlHTiAgICAgICAgICAgICAgICAgICAoMHgwMDAwMDEwMFUpICAgICAgICAgICAgICAgICAgICAgIC8qITwgSGFuZGxlcnMgcnVubmluZyBhdCBwcmlvcml0eSAtMSBhbmQgLTIgKi8NCiNkZWZpbmUgU0NCX0NDUl9TVEtBTElHTiAgICAgICAgICAgICAgICAgICAgKDB4MDAwMDAyMDBVKSAgICAgICAgICAgICAgICAgICAgICAvKiE8IE9uIGV4Y2VwdGlvbiBlbnRyeSwgdGhlIFNQIHVzZWQgcHJpb3IgdG8gdGhlIGV4Y2VwdGlvbiBpcyBhZGp1c3RlZCB0byBiZSA4LWJ5dGUgYWxpZ25lZCAqLw0KDQovKioqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFNDQl9TSFBSIHJlZ2lzdGVyICoqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBTQ0JfU0hQUl9QUklfTl9Qb3MgICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBTQ0JfU0hQUl9QUklfTl9Nc2sgICAgICAgICAgICAgICAgICAoMHhGRlUgPDwgU0NCX1NIUFJfUFJJX05fUG9zKSAgICAgIC8qITwgMHgwMDAwMDBGRiAqLw0KI2RlZmluZSBTQ0JfU0hQUl9QUklfTiAgICAgICAgICAgICAgICAgICAgICBTQ0JfU0hQUl9QUklfTl9Nc2sgICAgICAgICAgICAgICAgIC8qITwgUHJpb3JpdHkgb2Ygc3lzdGVtIGhhbmRsZXIgNCw4LCBhbmQgMTIuIE1lbSBNYW5hZ2UsIHJlc2VydmVkIGFuZCBEZWJ1ZyBNb25pdG9yICovDQojZGVmaW5lIFNDQl9TSFBSX1BSSV9OMV9Qb3MgICAgICAgICAgICAgICAgICg4VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFNDQl9TSFBSX1BSSV9OMV9Nc2sgICAgICAgICAgICAgICAgICgweEZGVSA8PCBTQ0JfU0hQUl9QUklfTjFfUG9zKSAgICAgLyohPCAweDAwMDBGRjAwICovDQojZGVmaW5lIFNDQl9TSFBSX1BSSV9OMSAgICAgICAgICAgICAgICAgICAgIFNDQl9TSFBSX1BSSV9OMV9Nc2sgICAgICAgICAgICAgICAgLyohPCBQcmlvcml0eSBvZiBzeXN0ZW0gaGFuZGxlciA1LDksIGFuZCAxMy4gQnVzIEZhdWx0LCByZXNlcnZlZCBhbmQgcmVzZXJ2ZWQgKi8NCiNkZWZpbmUgU0NCX1NIUFJfUFJJX04yX1BvcyAgICAgICAgICAgICAgICAgKDE2VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgU0NCX1NIUFJfUFJJX04yX01zayAgICAgICAgICAgICAgICAgKDB4RkZVIDw8IFNDQl9TSFBSX1BSSV9OMl9Qb3MpICAgICAvKiE8IDB4MDBGRjAwMDAgKi8NCiNkZWZpbmUgU0NCX1NIUFJfUFJJX04yICAgICAgICAgICAgICAgICAgICAgU0NCX1NIUFJfUFJJX04yX01zayAgICAgICAgICAgICAgICAvKiE8IFByaW9yaXR5IG9mIHN5c3RlbSBoYW5kbGVyIDYsMTAsIGFuZCAxNC4gVXNhZ2UgRmF1bHQsIHJlc2VydmVkIGFuZCBQZW5kU1YgKi8NCiNkZWZpbmUgU0NCX1NIUFJfUFJJX04zX1BvcyAgICAgICAgICAgICAgICAgKDI0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgU0NCX1NIUFJfUFJJX04zX01zayAgICAgICAgICAgICAgICAgKDB4RkZVIDw8IFNDQl9TSFBSX1BSSV9OM19Qb3MpICAgICAvKiE8IDB4RkYwMDAwMDAgKi8NCiNkZWZpbmUgU0NCX1NIUFJfUFJJX04zICAgICAgICAgICAgICAgICAgICAgU0NCX1NIUFJfUFJJX04zX01zayAgICAgICAgICAgICAgICAvKiE8IFByaW9yaXR5IG9mIHN5c3RlbSBoYW5kbGVyIDcsMTEsIGFuZCAxNS4gUmVzZXJ2ZWQsIFNWQ2FsbCBhbmQgU3lzVGljayAqLw0KDQovKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgU0NCX1NIQ1NSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBTQ0JfU0hDU1JfTUVNRkFVTFRBQ1QgICAgICAgICAgICAgICAoMHgwMDAwMDAwMVUpICAgICAgICAgICAgICAgICAgICAgIC8qITwgTWVtTWFuYWdlIGlzIGFjdGl2ZSAqLw0KI2RlZmluZSBTQ0JfU0hDU1JfQlVTRkFVTFRBQ1QgICAgICAgICAgICAgICAoMHgwMDAwMDAwMlUpICAgICAgICAgICAgICAgICAgICAgIC8qITwgQnVzRmF1bHQgaXMgYWN0aXZlICovDQojZGVmaW5lIFNDQl9TSENTUl9VU0dGQVVMVEFDVCAgICAgICAgICAgICAgICgweDAwMDAwMDA4VSkgICAgICAgICAgICAgICAgICAgICAgLyohPCBVc2FnZUZhdWx0IGlzIGFjdGl2ZSAqLw0KI2RlZmluZSBTQ0JfU0hDU1JfU1ZDQUxMQUNUICAgICAgICAgICAgICAgICAoMHgwMDAwMDA4MFUpICAgICAgICAgICAgICAgICAgICAgIC8qITwgU1ZDYWxsIGlzIGFjdGl2ZSAqLw0KI2RlZmluZSBTQ0JfU0hDU1JfTU9OSVRPUkFDVCAgICAgICAgICAgICAgICAoMHgwMDAwMDEwMFUpICAgICAgICAgICAgICAgICAgICAgIC8qITwgTW9uaXRvciBpcyBhY3RpdmUgKi8NCiNkZWZpbmUgU0NCX1NIQ1NSX1BFTkRTVkFDVCAgICAgICAgICAgICAgICAgKDB4MDAwMDA0MDBVKSAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBlbmRTViBpcyBhY3RpdmUgKi8NCiNkZWZpbmUgU0NCX1NIQ1NSX1NZU1RJQ0tBQ1QgICAgICAgICAgICAgICAgKDB4MDAwMDA4MDBVKSAgICAgICAgICAgICAgICAgICAgICAvKiE8IFN5c1RpY2sgaXMgYWN0aXZlICovDQojZGVmaW5lIFNDQl9TSENTUl9VU0dGQVVMVFBFTkRFRCAgICAgICAgICAgICgweDAwMDAxMDAwVSkgICAgICAgICAgICAgICAgICAgICAgLyohPCBVc2FnZSBGYXVsdCBpcyBwZW5kZWQgKi8NCiNkZWZpbmUgU0NCX1NIQ1NSX01FTUZBVUxUUEVOREVEICAgICAgICAgICAgKDB4MDAwMDIwMDBVKSAgICAgICAgICAgICAgICAgICAgICAvKiE8IE1lbU1hbmFnZSBpcyBwZW5kZWQgKi8NCiNkZWZpbmUgU0NCX1NIQ1NSX0JVU0ZBVUxUUEVOREVEICAgICAgICAgICAgKDB4MDAwMDQwMDBVKSAgICAgICAgICAgICAgICAgICAgICAvKiE8IEJ1cyBGYXVsdCBpcyBwZW5kZWQgKi8NCiNkZWZpbmUgU0NCX1NIQ1NSX1NWQ0FMTFBFTkRFRCAgICAgICAgICAgICAgKDB4MDAwMDgwMDBVKSAgICAgICAgICAgICAgICAgICAgICAvKiE8IFNWQ2FsbCBpcyBwZW5kZWQgKi8NCiNkZWZpbmUgU0NCX1NIQ1NSX01FTUZBVUxURU5BICAgICAgICAgICAgICAgKDB4MDAwMTAwMDBVKSAgICAgICAgICAgICAgICAgICAgICAvKiE8IE1lbU1hbmFnZSBlbmFibGUgKi8NCiNkZWZpbmUgU0NCX1NIQ1NSX0JVU0ZBVUxURU5BICAgICAgICAgICAgICAgKDB4MDAwMjAwMDBVKSAgICAgICAgICAgICAgICAgICAgICAvKiE8IEJ1cyBGYXVsdCBlbmFibGUgKi8NCiNkZWZpbmUgU0NCX1NIQ1NSX1VTR0ZBVUxURU5BICAgICAgICAgICAgICAgKDB4MDAwNDAwMDBVKSAgICAgICAgICAgICAgICAgICAgICAvKiE8IFVzYWdlRmF1bHQgZW5hYmxlICovDQoNCi8qKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgU0NCX0NGU1IgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKiovDQovKiE8IE1GU1IgKi8NCiNkZWZpbmUgU0NCX0NGU1JfSUFDQ1ZJT0xfUG9zICAgICAgICAgICAgICAoU0NCX1NIQ1NSX01FTUZBVUxUQUNUX1BvcyArIDBVKSAgICAvKiE8IFNDQiBDRlNSIChNTUZTUik6IElBQ0NWSU9MIFBvc2l0aW9uICovDQojZGVmaW5lIFNDQl9DRlNSX0lBQ0NWSU9MX01zayAgICAgICAgICAgICAgKDFVTCAvKjw8IFNDQl9DRlNSX0lBQ0NWSU9MX1BvcyovKSAgLyohPCBTQ0IgQ0ZTUiAoTU1GU1IpOiBJQUNDVklPTCBNYXNrICovDQojZGVmaW5lIFNDQl9DRlNSX0lBQ0NWSU9MICAgICAgICAgICAgICAgICAgIFNDQl9DRlNSX0lBQ0NWSU9MX01zayAgICAgICAgICAgICAgLyohPCBJbnN0cnVjdGlvbiBhY2Nlc3MgdmlvbGF0aW9uICovDQojZGVmaW5lIFNDQl9DRlNSX0RBQ0NWSU9MX1BvcyAgICAgICAgICAgICAgKFNDQl9TSENTUl9NRU1GQVVMVEFDVF9Qb3MgKyAxVSkgICAgLyohPCBTQ0IgQ0ZTUiAoTU1GU1IpOiBEQUNDVklPTCBQb3NpdGlvbiAqLw0KI2RlZmluZSBTQ0JfQ0ZTUl9EQUNDVklPTF9Nc2sgICAgICAgICAgICAgICgxVUwgPDwgU0NCX0NGU1JfREFDQ1ZJT0xfUG9zKSAgICAgIC8qITwgU0NCIENGU1IgKE1NRlNSKTogREFDQ1ZJT0wgTWFzayAqLw0KI2RlZmluZSBTQ0JfQ0ZTUl9EQUNDVklPTCAgICAgICAgICAgICAgICAgICBTQ0JfQ0ZTUl9EQUNDVklPTF9Nc2sgICAgICAgICAgICAgIC8qITwgRGF0YSBhY2Nlc3MgdmlvbGF0aW9uICovDQojZGVmaW5lIFNDQl9DRlNSX01VTlNUS0VSUl9Qb3MgICAgICAgICAgICAgKFNDQl9TSENTUl9NRU1GQVVMVEFDVF9Qb3MgKyAzVSkgICAgLyohPCBTQ0IgQ0ZTUiAoTU1GU1IpOiBNVU5TVEtFUlIgUG9zaXRpb24gKi8NCiNkZWZpbmUgU0NCX0NGU1JfTVVOU1RLRVJSX01zayAgICAgICAgICAgICAoMVVMIDw8IFNDQl9DRlNSX01VTlNUS0VSUl9Qb3MpICAgICAvKiE8IFNDQiBDRlNSIChNTUZTUik6IE1VTlNUS0VSUiBNYXNrICovDQojZGVmaW5lIFNDQl9DRlNSX01VTlNUS0VSUiAgICAgICAgICAgICAgICAgIFNDQl9DRlNSX01VTlNUS0VSUl9Nc2sgICAgICAgICAgICAgLyohPCBVbnN0YWNraW5nIGVycm9yICovDQojZGVmaW5lIFNDQl9DRlNSX01TVEtFUlJfUG9zICAgICAgICAgICAgICAgKFNDQl9TSENTUl9NRU1GQVVMVEFDVF9Qb3MgKyA0VSkgICAgLyohPCBTQ0IgQ0ZTUiAoTU1GU1IpOiBNU1RLRVJSIFBvc2l0aW9uICovDQojZGVmaW5lIFNDQl9DRlNSX01TVEtFUlJfTXNrICAgICAgICAgICAgICAgKDFVTCA8PCBTQ0JfQ0ZTUl9NU1RLRVJSX1BvcykgICAgICAgLyohPCBTQ0IgQ0ZTUiAoTU1GU1IpOiBNU1RLRVJSIE1hc2sgKi8NCiNkZWZpbmUgU0NCX0NGU1JfTVNUS0VSUiAgICAgICAgICAgICAgICAgICAgU0NCX0NGU1JfTVNUS0VSUl9Nc2sgICAgICAgICAgICAgICAvKiE8IFN0YWNraW5nIGVycm9yICovDQojZGVmaW5lIFNDQl9DRlNSX01NQVJWQUxJRF9Qb3MgICAgICAgICAgICAgKFNDQl9TSENTUl9NRU1GQVVMVEFDVF9Qb3MgKyA3VSkgICAgLyohPCBTQ0IgQ0ZTUiAoTU1GU1IpOiBNTUFSVkFMSUQgUG9zaXRpb24gKi8NCiNkZWZpbmUgU0NCX0NGU1JfTU1BUlZBTElEX01zayAgICAgICAgICAgICAoMVVMIDw8IFNDQl9DRlNSX01NQVJWQUxJRF9Qb3MpICAgICAvKiE8IFNDQiBDRlNSIChNTUZTUik6IE1NQVJWQUxJRCBNYXNrICovDQojZGVmaW5lIFNDQl9DRlNSX01NQVJWQUxJRCAgICAgICAgICAgICAgICAgIFNDQl9DRlNSX01NQVJWQUxJRF9Nc2sgICAgICAgICAgICAgLyohPCBNZW1vcnkgTWFuYWdlIEFkZHJlc3MgUmVnaXN0ZXIgYWRkcmVzcyB2YWxpZCBmbGFnICovDQovKiE8IEJGU1IgKi8NCiNkZWZpbmUgU0NCX0NGU1JfSUJVU0VSUl9Qb3MgICAgICAgICAgICAgIChTQ0JfQ0ZTUl9CVVNGQVVMVFNSX1BvcyArIDBVKSAgICAgICAvKiE8IFNDQiBDRlNSIChCRlNSKTogSUJVU0VSUiBQb3NpdGlvbiAqLw0KI2RlZmluZSBTQ0JfQ0ZTUl9JQlVTRVJSX01zayAgICAgICAgICAgICAgKDFVTCA8PCBTQ0JfQ0ZTUl9JQlVTRVJSX1BvcykgICAgICAgIC8qITwgU0NCIENGU1IgKEJGU1IpOiBJQlVTRVJSIE1hc2sgKi8NCiNkZWZpbmUgU0NCX0NGU1JfSUJVU0VSUiAgICAgICAgICAgICAgICAgICAgU0NCX0NGU1JfSUJVU0VSUl9Nc2sgICAgICAgICAgICAgICAvKiE8IEluc3RydWN0aW9uIGJ1cyBlcnJvciBmbGFnICovDQojZGVmaW5lIFNDQl9DRlNSX1BSRUNJU0VSUl9Qb3MgICAgICAgICAgICAoU0NCX0NGU1JfQlVTRkFVTFRTUl9Qb3MgKyAxVSkgICAgICAgLyohPCBTQ0IgQ0ZTUiAoQkZTUik6IFBSRUNJU0VSUiBQb3NpdGlvbiAqLw0KI2RlZmluZSBTQ0JfQ0ZTUl9QUkVDSVNFUlJfTXNrICAgICAgICAgICAgKDFVTCA8PCBTQ0JfQ0ZTUl9QUkVDSVNFUlJfUG9zKSAgICAgIC8qITwgU0NCIENGU1IgKEJGU1IpOiBQUkVDSVNFUlIgTWFzayAqLw0KI2RlZmluZSBTQ0JfQ0ZTUl9QUkVDSVNFUlIgICAgICAgICAgICAgICAgICBTQ0JfQ0ZTUl9QUkVDSVNFUlJfTXNrICAgICAgICAgICAgIC8qITwgUHJlY2lzZSBkYXRhIGJ1cyBlcnJvciAqLw0KI2RlZmluZSBTQ0JfQ0ZTUl9JTVBSRUNJU0VSUl9Qb3MgICAgICAgICAgKFNDQl9DRlNSX0JVU0ZBVUxUU1JfUG9zICsgMlUpICAgICAgIC8qITwgU0NCIENGU1IgKEJGU1IpOiBJTVBSRUNJU0VSUiBQb3NpdGlvbiAqLw0KI2RlZmluZSBTQ0JfQ0ZTUl9JTVBSRUNJU0VSUl9Nc2sgICAgICAgICAgKDFVTCA8PCBTQ0JfQ0ZTUl9JTVBSRUNJU0VSUl9Qb3MpICAgIC8qITwgU0NCIENGU1IgKEJGU1IpOiBJTVBSRUNJU0VSUiBNYXNrICovDQojZGVmaW5lIFNDQl9DRlNSX0lNUFJFQ0lTRVJSICAgICAgICAgICAgICAgIFNDQl9DRlNSX0lNUFJFQ0lTRVJSX01zayAgICAgICAgICAgLyohPCBJbXByZWNpc2UgZGF0YSBidXMgZXJyb3IgKi8NCiNkZWZpbmUgU0NCX0NGU1JfVU5TVEtFUlJfUG9zICAgICAgICAgICAgIChTQ0JfQ0ZTUl9CVVNGQVVMVFNSX1BvcyArIDNVKSAgICAgICAvKiE8IFNDQiBDRlNSIChCRlNSKTogVU5TVEtFUlIgUG9zaXRpb24gKi8NCiNkZWZpbmUgU0NCX0NGU1JfVU5TVEtFUlJfTXNrICAgICAgICAgICAgICgxVUwgPDwgU0NCX0NGU1JfVU5TVEtFUlJfUG9zKSAgICAgICAvKiE8IFNDQiBDRlNSIChCRlNSKTogVU5TVEtFUlIgTWFzayAqLw0KI2RlZmluZSBTQ0JfQ0ZTUl9VTlNUS0VSUiAgICAgICAgICAgICAgICAgICBTQ0JfQ0ZTUl9VTlNUS0VSUl9Nc2sgICAgICAgICAgICAgIC8qITwgVW5zdGFja2luZyBlcnJvciAqLw0KI2RlZmluZSBTQ0JfQ0ZTUl9TVEtFUlJfUG9zICAgICAgICAgICAgICAgKFNDQl9DRlNSX0JVU0ZBVUxUU1JfUG9zICsgNFUpICAgICAgIC8qITwgU0NCIENGU1IgKEJGU1IpOiBTVEtFUlIgUG9zaXRpb24gKi8NCiNkZWZpbmUgU0NCX0NGU1JfU1RLRVJSX01zayAgICAgICAgICAgICAgICgxVUwgPDwgU0NCX0NGU1JfU1RLRVJSX1BvcykgICAgICAgICAvKiE8IFNDQiBDRlNSIChCRlNSKTogU1RLRVJSIE1hc2sgKi8NCiNkZWZpbmUgU0NCX0NGU1JfU1RLRVJSICAgICAgICAgICAgICAgICAgICAgU0NCX0NGU1JfU1RLRVJSX01zayAgICAgICAgICAgICAgICAvKiE8IFN0YWNraW5nIGVycm9yICovDQojZGVmaW5lIFNDQl9DRlNSX0JGQVJWQUxJRF9Qb3MgICAgICAgICAgICAoU0NCX0NGU1JfQlVTRkFVTFRTUl9Qb3MgKyA3VSkgICAgICAgLyohPCBTQ0IgQ0ZTUiAoQkZTUik6IEJGQVJWQUxJRCBQb3NpdGlvbiAqLw0KI2RlZmluZSBTQ0JfQ0ZTUl9CRkFSVkFMSURfTXNrICAgICAgICAgICAgKDFVTCA8PCBTQ0JfQ0ZTUl9CRkFSVkFMSURfUG9zKSAgICAgIC8qITwgU0NCIENGU1IgKEJGU1IpOiBCRkFSVkFMSUQgTWFzayAqLw0KI2RlZmluZSBTQ0JfQ0ZTUl9CRkFSVkFMSUQgICAgICAgICAgICAgICAgICBTQ0JfQ0ZTUl9CRkFSVkFMSURfTXNrICAgICAgICAgICAgIC8qITwgQnVzIEZhdWx0IEFkZHJlc3MgUmVnaXN0ZXIgYWRkcmVzcyB2YWxpZCBmbGFnICovDQovKiE8IFVGU1IgKi8NCiNkZWZpbmUgU0NCX0NGU1JfVU5ERUZJTlNUUl9Qb3MgICAgICAgICAgIChTQ0JfQ0ZTUl9VU0dGQVVMVFNSX1BvcyArIDBVKSAgICAgICAvKiE8IFNDQiBDRlNSIChVRlNSKTogVU5ERUZJTlNUUiBQb3NpdGlvbiAqLw0KI2RlZmluZSBTQ0JfQ0ZTUl9VTkRFRklOU1RSX01zayAgICAgICAgICAgKDFVTCA8PCBTQ0JfQ0ZTUl9VTkRFRklOU1RSX1BvcykgICAgIC8qITwgU0NCIENGU1IgKFVGU1IpOiBVTkRFRklOU1RSIE1hc2sgKi8NCiNkZWZpbmUgU0NCX0NGU1JfVU5ERUZJTlNUUiAgICAgICAgICAgICAgICAgU0NCX0NGU1JfVU5ERUZJTlNUUl9Nc2sgICAgICAgICAgICAvKiE8IFRoZSBwcm9jZXNzb3IgYXR0ZW1wdCB0byBleGNlY3V0ZSBhbiB1bmRlZmluZWQgaW5zdHJ1Y3Rpb24gKi8NCiNkZWZpbmUgU0NCX0NGU1JfSU5WU1RBVEVfUG9zICAgICAgICAgICAgIChTQ0JfQ0ZTUl9VU0dGQVVMVFNSX1BvcyArIDFVKSAgICAgICAvKiE8IFNDQiBDRlNSIChVRlNSKTogSU5WU1RBVEUgUG9zaXRpb24gKi8NCiNkZWZpbmUgU0NCX0NGU1JfSU5WU1RBVEVfTXNrICAgICAgICAgICAgICgxVUwgPDwgU0NCX0NGU1JfSU5WU1RBVEVfUG9zKSAgICAgICAvKiE8IFNDQiBDRlNSIChVRlNSKTogSU5WU1RBVEUgTWFzayAqLw0KI2RlZmluZSBTQ0JfQ0ZTUl9JTlZTVEFURSAgICAgICAgICAgICAgICAgICBTQ0JfQ0ZTUl9JTlZTVEFURV9Nc2sgICAgICAgICAgICAgIC8qITwgSW52YWxpZCBjb21iaW5hdGlvbiBvZiBFUFNSIGFuZCBpbnN0cnVjdGlvbiAqLw0KI2RlZmluZSBTQ0JfQ0ZTUl9JTlZQQ19Qb3MgICAgICAgICAgICAgICAgKFNDQl9DRlNSX1VTR0ZBVUxUU1JfUG9zICsgMlUpICAgICAgIC8qITwgU0NCIENGU1IgKFVGU1IpOiBJTlZQQyBQb3NpdGlvbiAqLw0KI2RlZmluZSBTQ0JfQ0ZTUl9JTlZQQ19Nc2sgICAgICAgICAgICAgICAgKDFVTCA8PCBTQ0JfQ0ZTUl9JTlZQQ19Qb3MpICAgICAgICAgIC8qITwgU0NCIENGU1IgKFVGU1IpOiBJTlZQQyBNYXNrICovDQojZGVmaW5lIFNDQl9DRlNSX0lOVlBDICAgICAgICAgICAgICAgICAgICAgIFNDQl9DRlNSX0lOVlBDX01zayAgICAgICAgICAgICAgICAgLyohPCBBdHRlbXB0IHRvIGxvYWQgRVhDX1JFVFVSTiBpbnRvIHBjIGlsbGVnYWxseSAqLw0KI2RlZmluZSBTQ0JfQ0ZTUl9OT0NQX1BvcyAgICAgICAgICAgICAgICAgKFNDQl9DRlNSX1VTR0ZBVUxUU1JfUG9zICsgM1UpICAgICAgIC8qITwgU0NCIENGU1IgKFVGU1IpOiBOT0NQIFBvc2l0aW9uICovDQojZGVmaW5lIFNDQl9DRlNSX05PQ1BfTXNrICAgICAgICAgICAgICAgICAoMVVMIDw8IFNDQl9DRlNSX05PQ1BfUG9zKSAgICAgICAgICAgLyohPCBTQ0IgQ0ZTUiAoVUZTUik6IE5PQ1AgTWFzayAqLw0KI2RlZmluZSBTQ0JfQ0ZTUl9OT0NQICAgICAgICAgICAgICAgICAgICAgICBTQ0JfQ0ZTUl9OT0NQX01zayAgICAgICAgICAgICAgICAgIC8qITwgQXR0ZW1wdCB0byB1c2UgYSBjb3Byb2Nlc3NvciBpbnN0cnVjdGlvbiAqLw0KI2RlZmluZSBTQ0JfQ0ZTUl9VTkFMSUdORURfUG9zICAgICAgICAgICAgKFNDQl9DRlNSX1VTR0ZBVUxUU1JfUG9zICsgOFUpICAgICAgIC8qITwgU0NCIENGU1IgKFVGU1IpOiBVTkFMSUdORUQgUG9zaXRpb24gKi8NCiNkZWZpbmUgU0NCX0NGU1JfVU5BTElHTkVEX01zayAgICAgICAgICAgICgxVUwgPDwgU0NCX0NGU1JfVU5BTElHTkVEX1BvcykgICAgICAvKiE8IFNDQiBDRlNSIChVRlNSKTogVU5BTElHTkVEIE1hc2sgKi8NCiNkZWZpbmUgU0NCX0NGU1JfVU5BTElHTkVEICAgICAgICAgICAgICAgICAgU0NCX0NGU1JfVU5BTElHTkVEX01zayAgICAgICAgICAgICAvKiE8IEZhdWx0IG9jY3VycyB3aGVuIHRoZXJlIGlzIGFuIGF0dGVtcHQgdG8gbWFrZSBhbiB1bmFsaWduZWQgbWVtb3J5IGFjY2VzcyAqLw0KI2RlZmluZSBTQ0JfQ0ZTUl9ESVZCWVpFUk9fUG9zICAgICAgICAgICAgKFNDQl9DRlNSX1VTR0ZBVUxUU1JfUG9zICsgOVUpICAgICAgIC8qITwgU0NCIENGU1IgKFVGU1IpOiBESVZCWVpFUk8gUG9zaXRpb24gKi8NCiNkZWZpbmUgU0NCX0NGU1JfRElWQllaRVJPX01zayAgICAgICAgICAgICgxVUwgPDwgU0NCX0NGU1JfRElWQllaRVJPX1BvcykgICAgICAvKiE8IFNDQiBDRlNSIChVRlNSKTogRElWQllaRVJPIE1hc2sgKi8NCiNkZWZpbmUgU0NCX0NGU1JfRElWQllaRVJPICAgICAgICAgICAgICAgICAgU0NCX0NGU1JfRElWQllaRVJPX01zayAgICAgICAgICAgICAvKiE8IEZhdWx0IG9jY3VycyB3aGVuIFNESVYgb3IgRElWIGluc3RydWN0aW9uIGlzIHVzZWQgd2l0aCBhIGRpdmlzb3Igb2YgMCAqLw0KDQovKioqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFNDQl9IRlNSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBTQ0JfSEZTUl9WRUNUVEJMICAgICAgICAgICAgICAgICAgICAoMHgwMDAwMDAwMlUpICAgICAgICAgICAgICAgICAgICAgIC8qITwgRmF1bHQgb2NjdXJlcyBiZWNhdXNlIG9mIHZlY3RvciB0YWJsZSByZWFkIG9uIGV4Y2VwdGlvbiBwcm9jZXNzaW5nICovDQojZGVmaW5lIFNDQl9IRlNSX0ZPUkNFRCAgICAgICAgICAgICAgICAgICAgICgweDQwMDAwMDAwVSkgICAgICAgICAgICAgICAgICAgICAgLyohPCBIYXJkIEZhdWx0IGFjdGl2YXRlZCB3aGVuIGEgY29uZmlndXJhYmxlIEZhdWx0IHdhcyByZWNlaXZlZCBhbmQgY2Fubm90IGFjdGl2YXRlICovDQojZGVmaW5lIFNDQl9IRlNSX0RFQlVHRVZUICAgICAgICAgICAgICAgICAgICgweDgwMDAwMDAwVSkgICAgICAgICAgICAgICAgICAgICAgLyohPCBGYXVsdCByZWxhdGVkIHRvIGRlYnVnICovDQoNCi8qKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgU0NCX0RGU1IgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIFNDQl9ERlNSX0hBTFRFRCAgICAgICAgICAgICAgICAgICAgICgweDAwMDAwMDAxVSkgICAgICAgICAgICAgICAgICAgICAgLyohPCBIYWx0IHJlcXVlc3QgZmxhZyAqLw0KI2RlZmluZSBTQ0JfREZTUl9CS1BUICAgICAgICAgICAgICAgICAgICAgICAoMHgwMDAwMDAwMlUpICAgICAgICAgICAgICAgICAgICAgIC8qITwgQktQVCBmbGFnICovDQojZGVmaW5lIFNDQl9ERlNSX0RXVFRSQVAgICAgICAgICAgICAgICAgICAgICgweDAwMDAwMDA0VSkgICAgICAgICAgICAgICAgICAgICAgLyohPCBEYXRhIFdhdGNocG9pbnQgYW5kIFRyYWNlIChEV1QpIGZsYWcgKi8NCiNkZWZpbmUgU0NCX0RGU1JfVkNBVENIICAgICAgICAgICAgICAgICAgICAgKDB4MDAwMDAwMDhVKSAgICAgICAgICAgICAgICAgICAgICAvKiE8IFZlY3RvciBjYXRjaCBmbGFnICovDQojZGVmaW5lIFNDQl9ERlNSX0VYVEVSTkFMICAgICAgICAgICAgICAgICAgICgweDAwMDAwMDEwVSkgICAgICAgICAgICAgICAgICAgICAgLyohPCBFeHRlcm5hbCBkZWJ1ZyByZXF1ZXN0IGZsYWcgKi8NCg0KLyoqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBTQ0JfTU1GQVIgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgU0NCX01NRkFSX0FERFJFU1NfUG9zICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgU0NCX01NRkFSX0FERFJFU1NfTXNrICAgICAgICAgICAgICAgKDB4RkZGRkZGRkZVIDw8IFNDQl9NTUZBUl9BRERSRVNTX1BvcykgLyohPCAweEZGRkZGRkZGICovDQojZGVmaW5lIFNDQl9NTUZBUl9BRERSRVNTICAgICAgICAgICAgICAgICAgIFNDQl9NTUZBUl9BRERSRVNTX01zayAgICAgICAgICAgICAgLyohPCBNZW0gTWFuYWdlIGZhdWx0IGFkZHJlc3MgZmllbGQgKi8NCg0KLyoqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBTQ0JfQkZBUiByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgU0NCX0JGQVJfQUREUkVTU19Qb3MgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgU0NCX0JGQVJfQUREUkVTU19Nc2sgICAgICAgICAgICAgICAgKDB4RkZGRkZGRkZVIDw8IFNDQl9CRkFSX0FERFJFU1NfUG9zKSAvKiE8IDB4RkZGRkZGRkYgKi8NCiNkZWZpbmUgU0NCX0JGQVJfQUREUkVTUyAgICAgICAgICAgICAgICAgICAgU0NCX0JGQVJfQUREUkVTU19Nc2sgICAgICAgICAgICAgICAvKiE8IEJ1cyBmYXVsdCBhZGRyZXNzIGZpZWxkICovDQoNCi8qKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgU0NCX2Fmc3IgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIFNDQl9BRlNSX0lNUERFRl9Qb3MgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFNDQl9BRlNSX0lNUERFRl9Nc2sgICAgICAgICAgICAgICAgICgweEZGRkZGRkZGVSA8PCBTQ0JfQUZTUl9JTVBERUZfUG9zKSAvKiE8IDB4RkZGRkZGRkYgKi8NCiNkZWZpbmUgU0NCX0FGU1JfSU1QREVGICAgICAgICAgICAgICAgICAgICAgU0NCX0FGU1JfSU1QREVGX01zayAgICAgICAgICAgICAgICAvKiE8IEltcGxlbWVudGF0aW9uIGRlZmluZWQgKi8NCi8qKg0KICAqIEB9DQogICovDQoNCiAvKioNCiAgKiBAfQ0KICAqLyANCi8qKiBAYWRkdG9ncm91cCBFeHBvcnRlZF9tYWNybw0KICAqIEB7DQogICovDQogICAgICANCi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKiogQURDIEluc3RhbmNlcyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIElTX0FEQ19BTExfSU5TVEFOQ0UoSU5TVEFOQ0UpICgoSU5TVEFOQ0UpID09IEFEQzEpDQoNCiNkZWZpbmUgSVNfQURDX0NPTU1PTl9JTlNUQU5DRShJTlNUQU5DRSkgKChJTlNUQU5DRSkgPT0gQURDMV9DT01NT04pDQoNCi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiBDT01QIEluc3RhbmNlcyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIElTX0NPTVBfQUxMX0lOU1RBTkNFKElOU1RBTkNFKSAoKChJTlNUQU5DRSkgPT0gQ09NUDEpIHx8IFwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBDT01QMikpDQoNCiNkZWZpbmUgSVNfQ09NUF9DT01NT05fSU5TVEFOQ0UoQ09NTU9OX0lOU1RBTkNFKSAoKENPTU1PTl9JTlNUQU5DRSkgPT0gQ09NUDEyX0NPTU1PTikNCg0KLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiBDUkMgSW5zdGFuY2VzICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgSVNfQ1JDX0FMTF9JTlNUQU5DRShJTlNUQU5DRSkgKChJTlNUQU5DRSkgPT0gQ1JDKQ0KDQovKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqIERBQyBJbnN0YW5jZXMgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBJU19EQUNfQUxMX0lOU1RBTkNFKElOU1RBTkNFKSAoKElOU1RBTkNFKSA9PSBEQUMpDQoNCi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKiogRE1BIEluc3RhbmNlcyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIElTX0RNQV9BTExfSU5TVEFOQ0UoSU5TVEFOQ0UpICgoKElOU1RBTkNFKSA9PSBETUExX0NoYW5uZWwxKSB8fCBcDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBETUExX0NoYW5uZWwyKSB8fCBcDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBETUExX0NoYW5uZWwzKSB8fCBcDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBETUExX0NoYW5uZWw0KSB8fCBcDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBETUExX0NoYW5uZWw1KSB8fCBcDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBETUExX0NoYW5uZWw2KSB8fCBcDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBETUExX0NoYW5uZWw3KSB8fCBcDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBETUEyX0NoYW5uZWwxKSB8fCBcDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBETUEyX0NoYW5uZWwyKSB8fCBcDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBETUEyX0NoYW5uZWwzKSB8fCBcDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBETUEyX0NoYW5uZWw0KSB8fCBcDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBETUEyX0NoYW5uZWw1KSkNCg0KLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiogR1BJTyBJbnN0YW5jZXMgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgSVNfR1BJT19BTExfSU5TVEFOQ0UoSU5TVEFOQ0UpICgoKElOU1RBTkNFKSA9PSBHUElPQSkgfHwgXA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoSU5TVEFOQ0UpID09IEdQSU9CKSB8fCBcDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gR1BJT0MpIHx8IFwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBHUElPRCkgfHwgXA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoSU5TVEFOQ0UpID09IEdQSU9FKSB8fCBcDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gR1BJT0YpIHx8IFwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBHUElPRykgfHwgXA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoSU5TVEFOQ0UpID09IEdQSU9IKSkNCg0KLyoqKioqKioqKioqKioqKioqKioqKioqKioqKiogR1BJTyBBbHRlcm5hdGUgRnVuY3Rpb24gSW5zdGFuY2VzICoqKioqKioqKioqKioqKi8NCiNkZWZpbmUgSVNfR1BJT19BRl9JTlNUQU5DRShJTlNUQU5DRSkgSVNfR1BJT19BTExfSU5TVEFOQ0UoSU5TVEFOQ0UpDQoNCi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqIEdQSU8gTG9jayBJbnN0YW5jZXMgKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovDQovKiBPbiBMMSwgYWxsIEdQSU8gQmFuayBzdXBwb3J0IHRoZSBMb2NrIG1lY2hhbmlzbSAqLw0KI2RlZmluZSBJU19HUElPX0xPQ0tfSU5TVEFOQ0UoSU5TVEFOQ0UpIElTX0dQSU9fQUxMX0lOU1RBTkNFKElOU1RBTkNFKQ0KDQovKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiogSTJDIEluc3RhbmNlcyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBJU19JMkNfQUxMX0lOU1RBTkNFKElOU1RBTkNFKSAoKChJTlNUQU5DRSkgPT0gSTJDMSkgfHwgXA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gSTJDMikpDQoNCi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKiogU01CVVMgSW5zdGFuY2VzICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIElTX1NNQlVTX0FMTF9JTlNUQU5DRShJTlNUQU5DRSkgSVNfSTJDX0FMTF9JTlNUQU5DRShJTlNUQU5DRSkNCg0KLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqIEkyUyBJbnN0YW5jZXMgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgSVNfSTJTX0FMTF9JTlNUQU5DRShJTlNUQU5DRSkgKCgoSU5TVEFOQ0UpID09IFNQSTIpIHx8IFwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoSU5TVEFOQ0UpID09IFNQSTMpKQ0KLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiBJV0RHIEluc3RhbmNlcyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgSVNfSVdER19BTExfSU5TVEFOQ0UoSU5TVEFOQ0UpICAoKElOU1RBTkNFKSA9PSBJV0RHKQ0KDQovKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqIE9QQU1QIEluc3RhbmNlcyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBJU19PUEFNUF9BTExfSU5TVEFOQ0UoSU5TVEFOQ0UpICgoKElOU1RBTkNFKSA9PSBPUEFNUDEpIHx8IFwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gT1BBTVAyKSkNCg0KI2RlZmluZSBJU19PUEFNUF9DT01NT05fSU5TVEFOQ0UoQ09NTU9OX0lOU1RBTkNFKSAoKENPTU1PTl9JTlNUQU5DRSkgPT0gT1BBTVAxMl9DT01NT04pDQoNCi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKiogUlRDIEluc3RhbmNlcyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIElTX1JUQ19BTExfSU5TVEFOQ0UoSU5TVEFOQ0UpICAoKElOU1RBTkNFKSA9PSBSVEMpDQoNCi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiBTUEkgSW5zdGFuY2VzICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIElTX1NQSV9BTExfSU5TVEFOQ0UoSU5TVEFOQ0UpICgoKElOU1RBTkNFKSA9PSBTUEkxKSB8fCBcDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBTUEkyKSB8fCBcDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBTUEkzKSkNCg0KLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiBUSU0gSW5zdGFuY2VzICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8gDQojZGVmaW5lIElTX1RJTV9JTlNUQU5DRShJTlNUQU5DRSkgKCgoSU5TVEFOQ0UpID09IFRJTTIpICAgIHx8IFwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gVElNMykgICAgfHwgXA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBUSU00KSAgICB8fCBcDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoSU5TVEFOQ0UpID09IFRJTTUpICAgIHx8IFwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gVElNNikgICAgfHwgXA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBUSU03KSAgICB8fCBcDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoSU5TVEFOQ0UpID09IFRJTTkpICAgIHx8IFwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gVElNMTApICAgfHwgXA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBUSU0xMSkpDQoNCiNkZWZpbmUgSVNfVElNX0NDMV9JTlNUQU5DRShJTlNUQU5DRSkgKCgoSU5TVEFOQ0UpID09IFRJTTIpICB8fCBcDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBUSU0zKSAgfHwgXA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gVElNNCkgIHx8IFwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoSU5TVEFOQ0UpID09IFRJTTUpICB8fCBcDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBUSU05KSAgfHwgXA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gVElNMTApIHx8IFwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoSU5TVEFOQ0UpID09IFRJTTExKSkNCg0KI2RlZmluZSBJU19USU1fQ0MyX0lOU1RBTkNFKElOU1RBTkNFKSAoKChJTlNUQU5DRSkgPT0gVElNMikgIHx8IFwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoSU5TVEFOQ0UpID09IFRJTTMpICB8fCBcDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBUSU00KSAgfHwgXA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gVElNNSkgIHx8IFwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoSU5TVEFOQ0UpID09IFRJTTkpKQ0KDQojZGVmaW5lIElTX1RJTV9DQzNfSU5TVEFOQ0UoSU5TVEFOQ0UpICgoKElOU1RBTkNFKSA9PSBUSU0yKSAgfHwgXA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gVElNMykgIHx8IFwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoSU5TVEFOQ0UpID09IFRJTTQpICB8fCBcDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBUSU01KSkNCg0KI2RlZmluZSBJU19USU1fQ0M0X0lOU1RBTkNFKElOU1RBTkNFKSAoKChJTlNUQU5DRSkgPT0gVElNMikgIHx8IFwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoSU5TVEFOQ0UpID09IFRJTTMpICB8fCBcDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBUSU00KSAgfHwgXA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gVElNNSkpDQoNCiNkZWZpbmUgSVNfVElNX0NMT0NLU09VUkNFX0VUUk1PREUxX0lOU1RBTkNFKElOU1RBTkNFKSAoKChJTlNUQU5DRSkgPT0gVElNMikgIHx8IFwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gVElNMykgIHx8IFwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gVElNNCkgIHx8IFwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gVElNNSkgIHx8IFwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gVElNOSkpDQoNCiNkZWZpbmUgSVNfVElNX0NMT0NLU09VUkNFX0VUUk1PREUyX0lOU1RBTkNFKElOU1RBTkNFKSAoKChJTlNUQU5DRSkgPT0gVElNMikgIHx8IFwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gVElNMykgIHx8IFwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gVElNNCkgIHx8IFwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gVElNNSkgIHx8IFwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gVElNOSkgIHx8IFwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gVElNMTApIHx8IFwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gVElNMTEpKQ0KDQojZGVmaW5lIElTX1RJTV9DTE9DS1NPVVJDRV9USVhfSU5TVEFOQ0UoSU5TVEFOQ0UpICgoKElOU1RBTkNFKSA9PSBUSU0yKSAgfHwgXA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gVElNMykgIHx8IFwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoSU5TVEFOQ0UpID09IFRJTTQpICB8fCBcDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBUSU01KSAgfHwgXA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gVElNOSkpDQoNCiNkZWZpbmUgSVNfVElNX0NMT0NLU09VUkNFX0lUUlhfSU5TVEFOQ0UoSU5TVEFOQ0UpICgoKElOU1RBTkNFKSA9PSBUSU0yKSAgfHwgXA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoSU5TVEFOQ0UpID09IFRJTTMpICB8fCBcDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gVElNNCkgIHx8IFwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBUSU01KSAgfHwgXA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoSU5TVEFOQ0UpID09IFRJTTkpKQ0KDQojZGVmaW5lIElTX1RJTV9PQ1hSRUZfQ0xFQVJfSU5TVEFOQ0UoSU5TVEFOQ0UpICgoKElOU1RBTkNFKSA9PSBUSU0yKSAgfHwgXA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gVElNMykgIHx8IFwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoSU5TVEFOQ0UpID09IFRJTTQpKQ0KDQojZGVmaW5lIElTX1RJTV9YT1JfSU5TVEFOQ0UoSU5TVEFOQ0UpICgoKElOU1RBTkNFKSA9PSBUSU0yKSAgfHwgXA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gVElNMykgIHx8IFwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoSU5TVEFOQ0UpID09IFRJTTQpICB8fCBcDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBUSU01KSkNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBJU19USU1fRVRSX0lOU1RBTkNFKElOU1RBTkNFKSAoKChJTlNUQU5DRSkgPT0gVElNMikgIHx8IFwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoSU5TVEFOQ0UpID09IFRJTTMpICB8fCBcDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBUSU00KSAgfHwgXA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gVElNNSkpDQoNCg0KI2RlZmluZSBJU19USU1fTUFTVEVSX0lOU1RBTkNFKElOU1RBTkNFKSAoKChJTlNUQU5DRSkgPT0gVElNMikgIHx8IFwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoSU5TVEFOQ0UpID09IFRJTTMpICB8fCBcDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBUSU00KSAgfHwgXA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gVElNNSkgIHx8IFwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoSU5TVEFOQ0UpID09IFRJTTYpICB8fCBcDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBUSU03KSAgfHwgXA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gVElNOSkpDQoNCiNkZWZpbmUgSVNfVElNX1NMQVZFX0lOU1RBTkNFKElOU1RBTkNFKSAoKChJTlNUQU5DRSkgPT0gVElNMikgIHx8IFwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gVElNMykgIHx8IFwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gVElNNCkgIHx8IFwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gVElNNSkgIHx8IFwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gVElNOSkpDQoNCiNkZWZpbmUgSVNfVElNXzMyQl9DT1VOVEVSX0lOU1RBTkNFKElOU1RBTkNFKSAoKElOU1RBTkNFKSA9PSBUSU01KQ0KDQojZGVmaW5lIElTX1RJTV9ETUFCVVJTVF9JTlNUQU5DRShJTlNUQU5DRSkgKCgoSU5TVEFOQ0UpID09IFRJTTIpICB8fCBcDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoSU5TVEFOQ0UpID09IFRJTTMpICB8fCBcDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoSU5TVEFOQ0UpID09IFRJTTQpICB8fCBcDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoSU5TVEFOQ0UpID09IFRJTTUpKQ0KDQojZGVmaW5lIElTX1RJTV9DQ1hfSU5TVEFOQ0UoSU5TVEFOQ0UsIENIQU5ORUwpIFwNCiAgICAoKCgoSU5TVEFOQ0UpID09IFRJTTIpICYmICAgICAgICAgICAgICAgICAgIFwNCiAgICAgKCgoQ0hBTk5FTCkgPT0gVElNX0NIQU5ORUxfMSkgfHwgICAgICAgICAgXA0KICAgICAgKChDSEFOTkVMKSA9PSBUSU1fQ0hBTk5FTF8yKSB8fCAgICAgICAgICBcDQogICAgICAoKENIQU5ORUwpID09IFRJTV9DSEFOTkVMXzMpIHx8ICAgICAgICAgIFwNCiAgICAgICgoQ0hBTk5FTCkgPT0gVElNX0NIQU5ORUxfNCkpKSAgICAgICAgICAgXA0KICAgIHx8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcDQogICAgKCgoSU5TVEFOQ0UpID09IFRJTTMpICYmICAgICAgICAgICAgICAgICAgIFwNCiAgICAgKCgoQ0hBTk5FTCkgPT0gVElNX0NIQU5ORUxfMSkgfHwgICAgICAgICAgXA0KICAgICAgKChDSEFOTkVMKSA9PSBUSU1fQ0hBTk5FTF8yKSB8fCAgICAgICAgICBcDQogICAgICAoKENIQU5ORUwpID09IFRJTV9DSEFOTkVMXzMpIHx8ICAgICAgICAgIFwNCiAgICAgICgoQ0hBTk5FTCkgPT0gVElNX0NIQU5ORUxfNCkpKSAgICAgICAgICAgXA0KICAgIHx8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcDQogICAgKCgoSU5TVEFOQ0UpID09IFRJTTQpICYmICAgICAgICAgICAgICAgICAgIFwNCiAgICAgKCgoQ0hBTk5FTCkgPT0gVElNX0NIQU5ORUxfMSkgfHwgICAgICAgICAgXA0KICAgICAgKChDSEFOTkVMKSA9PSBUSU1fQ0hBTk5FTF8yKSB8fCAgICAgICAgICBcDQogICAgICAoKENIQU5ORUwpID09IFRJTV9DSEFOTkVMXzMpIHx8ICAgICAgICAgIFwNCiAgICAgICgoQ0hBTk5FTCkgPT0gVElNX0NIQU5ORUxfNCkpKSAgICAgICAgICAgXA0KICAgIHx8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcDQogICAgKCgoSU5TVEFOQ0UpID09IFRJTTUpICYmICAgICAgICAgICAgICAgICAgIFwNCiAgICAgKCgoQ0hBTk5FTCkgPT0gVElNX0NIQU5ORUxfMSkgfHwgICAgICAgICAgXA0KICAgICAgKChDSEFOTkVMKSA9PSBUSU1fQ0hBTk5FTF8yKSB8fCAgICAgICAgICBcDQogICAgICAoKENIQU5ORUwpID09IFRJTV9DSEFOTkVMXzMpIHx8ICAgICAgICAgIFwNCiAgICAgICgoQ0hBTk5FTCkgPT0gVElNX0NIQU5ORUxfNCkpKSAgICAgICAgICAgXA0KICAgIHx8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcDQogICAgKCgoSU5TVEFOQ0UpID09IFRJTTkpICYmICAgICAgICAgICAgICAgICAgXA0KICAgICAoKChDSEFOTkVMKSA9PSBUSU1fQ0hBTk5FTF8xKSB8fCAgICAgICAgICBcDQogICAgICAoKENIQU5ORUwpID09IFRJTV9DSEFOTkVMXzIpKSkgICAgICAgICAgIFwNCiAgICB8fCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXA0KICAgICgoKElOU1RBTkNFKSA9PSBUSU0xMCkgJiYgICAgICAgICAgICAgICAgICBcDQogICAgICgoKENIQU5ORUwpID09IFRJTV9DSEFOTkVMXzEpKSkgICAgICAgICAgIFwNCiAgICB8fCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXA0KICAgICgoKElOU1RBTkNFKSA9PSBUSU0xMSkgJiYgICAgICAgICAgICAgICAgICBcDQogICAgICgoKENIQU5ORUwpID09IFRJTV9DSEFOTkVMXzEpKSkpDQoNCiNkZWZpbmUgSVNfVElNX0NMT0NLX0RJVklTSU9OX0lOU1RBTkNFKElOU1RBTkNFKSAoKChJTlNUQU5DRSkgPT0gVElNMikgIHx8IFwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gVElNMykgIHx8IFwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gVElNNCkgIHx8IFwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gVElNNSkgIHx8IFwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gVElNOSkgIHx8IFwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gVElNMTApIHx8IFwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gVElNMTEpKQ0KDQojZGVmaW5lIElTX1RJTV9ETUFfSU5TVEFOQ0UoSU5TVEFOQ0UpICgoKElOU1RBTkNFKSA9PSBUSU0yKSAgICB8fCBcDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBUSU0zKSAgICB8fCBcDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBUSU00KSAgICB8fCBcDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBUSU01KSAgICB8fCBcDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBUSU02KSAgICB8fCBcDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBUSU03KSkNCiAgICANCiNkZWZpbmUgSVNfVElNX0RNQV9DQ19JTlNUQU5DRShJTlNUQU5DRSkgKCgoSU5TVEFOQ0UpID09IFRJTTIpICB8fCBcDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBUSU0zKSAgfHwgXA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gVElNNCkgIHx8IFwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoSU5TVEFOQ0UpID09IFRJTTUpKQ0KDQojZGVmaW5lIElTX1RJTV9DT1VOVEVSX01PREVfU0VMRUNUX0lOU1RBTkNFKElOU1RBTkNFKSAoKChJTlNUQU5DRSkgPT0gVElNMikgICAgfHwgXA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoSU5TVEFOQ0UpID09IFRJTTMpICAgIHx8IFwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBUSU00KSAgICB8fCBcDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gVElNNSkgICAgfHwgXA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoSU5TVEFOQ0UpID09IFRJTTkpKQ0KDQojZGVmaW5lIElTX1RJTV9FTkNPREVSX0lOVEVSRkFDRV9JTlNUQU5DRShJTlNUQU5DRSkgKCgoSU5TVEFOQ0UpID09IFRJTTIpICB8fCBcDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoSU5TVEFOQ0UpID09IFRJTTMpICB8fCBcDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoSU5TVEFOQ0UpID09IFRJTTQpICB8fCBcDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoSU5TVEFOQ0UpID09IFRJTTUpICB8fCBcDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoSU5TVEFOQ0UpID09IFRJTTkpKQ0KDQojZGVmaW5lIElTX1RJTV9SRU1BUF9JTlNUQU5DRShJTlNUQU5DRSkgKCgoSU5TVEFOQ0UpID09IFRJTTIpICAgIHx8IFwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gVElNMykgICAgfHwgXA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBUSU05KSAgICB8fCBcDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoSU5TVEFOQ0UpID09IFRJTTEwKSAgIHx8IFwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gVElNMTEpKQ0KDQovKioqKioqKioqKioqKioqKioqKiogVVNBUlQgSW5zdGFuY2VzIDogU3luY2hyb25vdXMgbW9kZSAqKioqKioqKioqKioqKioqKioqKioqLyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgSVNfVVNBUlRfSU5TVEFOQ0UoSU5TVEFOQ0UpICgoKElOU1RBTkNFKSA9PSBVU0FSVDEpIHx8IFwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBVU0FSVDIpIHx8IFwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBVU0FSVDMpKQ0KDQovKioqKioqKioqKioqKioqKioqKiogVUFSVCBJbnN0YW5jZXMgOiBBc3luY2hyb25vdXMgbW9kZSAqKioqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBJU19VQVJUX0lOU1RBTkNFKElOU1RBTkNFKSAoKChJTlNUQU5DRSkgPT0gVVNBUlQxKSB8fCBcDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBVU0FSVDIpIHx8IFwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoSU5TVEFOQ0UpID09IFVTQVJUMykgfHwgXA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gVUFSVDQpICB8fCBcDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBVQVJUNSkpDQoNCi8qKioqKioqKioqKioqKioqKioqKiBVQVJUIEluc3RhbmNlcyA6IEhhbGYtRHVwbGV4IG1vZGUgKioqKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgSVNfVUFSVF9IQUxGRFVQTEVYX0lOU1RBTkNFKElOU1RBTkNFKSAgICgoKElOU1RBTkNFKSA9PSBVU0FSVDEpIHx8IFwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBVU0FSVDIpIHx8IFwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBVU0FSVDMpIHx8IFwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBVQVJUNCkgIHx8IFwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBVQVJUNSkpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQoNCi8qKioqKioqKioqKioqKioqKioqKiBVQVJUIEluc3RhbmNlcyA6IExJTiBtb2RlICoqKioqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIElTX1VBUlRfTElOX0lOU1RBTkNFKElOU1RBTkNFKSAgICgoKElOU1RBTkNFKSA9PSBVU0FSVDEpIHx8IFwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoSU5TVEFOQ0UpID09IFVTQVJUMikgfHwgXA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gVVNBUlQzKSB8fCBcDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBVQVJUNCkgIHx8IFwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoSU5TVEFOQ0UpID09IFVBUlQ1KSkgDQoNCi8qKioqKioqKioqKioqKioqKiogVUFSVCBJbnN0YW5jZXMgOiBIYXJkd2FyZSBGbG93IGNvbnRyb2wgKioqKioqKioqKioqKioqKioqKiovICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIElTX1VBUlRfSFdGTE9XX0lOU1RBTkNFKElOU1RBTkNFKSAoKChJTlNUQU5DRSkgPT0gVVNBUlQxKSB8fCBcDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gVVNBUlQyKSB8fCBcDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gVVNBUlQzKSkNCg0KLyoqKioqKioqKioqKioqKioqKioqKiBVQVJUIEluc3RhbmNlcyA6IFNtYXJkIGNhcmQgbW9kZSAqKioqKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgSVNfU01BUlRDQVJEX0lOU1RBTkNFKElOU1RBTkNFKSAoKChJTlNUQU5DRSkgPT0gVVNBUlQxKSB8fCBcDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoSU5TVEFOQ0UpID09IFVTQVJUMikgfHwgXA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBVU0FSVDMpKQ0KDQovKioqKioqKioqKioqKioqKioqKioqKiogVUFSVCBJbnN0YW5jZXMgOiBJUkRBIG1vZGUgKioqKioqKioqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBJU19JUkRBX0lOU1RBTkNFKElOU1RBTkNFKSAoKChJTlNUQU5DRSkgPT0gVVNBUlQxKSB8fCBcDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBVU0FSVDIpIHx8IFwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoSU5TVEFOQ0UpID09IFVTQVJUMykgfHwgXA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gVUFSVDQpICB8fCBcDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBVQVJUNSkpDQoNCi8qKioqKioqKioqKioqKioqKiBVQVJUIEluc3RhbmNlcyA6IE11bHRpLVByb2Nlc3NvciBtb2RlICoqKioqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIElTX1VBUlRfTVVMVElQUk9DRVNTT1JfSU5TVEFOQ0UoSU5TVEFOQ0UpICAgKCgoSU5TVEFOQ0UpID09IFVTQVJUMSkgfHwgXA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBVU0FSVDIpIHx8IFwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gVVNBUlQzKSB8fCBcDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoSU5TVEFOQ0UpID09IFVBUlQ0KSAgfHwgXA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBVQVJUNSkpIA0KDQovKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqIFdXREcgSW5zdGFuY2VzICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBJU19XV0RHX0FMTF9JTlNUQU5DRShJTlNUQU5DRSkgICgoSU5TVEFOQ0UpID09IFdXREcpDQoNCi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKiogVVNCIEluc3RhbmNlcyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgSVNfVVNCX0FMTF9JTlNUQU5DRShJTlNUQU5DRSkgKChJTlNUQU5DRSkgPT0gVVNCKQ0KDQovKioNCiAgKiBAfQ0KICAqLw0KDQovKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLw0KLyogIEZvciBhIHBhaW5sZXNzIGNvZGVzIG1pZ3JhdGlvbiBiZXR3ZWVuIHRoZSBTVE0zMkwxeHggZGV2aWNlIHByb2R1Y3QgICAgICAgKi8NCi8qICBsaW5lcywgdGhlIGFsaWFzZXMgZGVmaW5lZCBiZWxvdyBhcmUgcHV0IGluIHBsYWNlIHRvIG92ZXJjb21lIHRoZSAgICAgICAgICovDQovKiAgZGlmZmVyZW5jZXMgaW4gdGhlIGludGVycnVwdCBoYW5kbGVycyBhbmQgSVJRbiBkZWZpbml0aW9ucy4gICAgICAgICAgICAgICAqLw0KLyogIE5vIG5lZWQgdG8gdXBkYXRlIGRldmVsb3BlZCBpbnRlcnJ1cHQgY29kZSB3aGVuIG1vdmluZyBhY3Jvc3MgICAgICAgICAgICAgKi8gDQovKiAgcHJvZHVjdCBsaW5lcyB3aXRoaW4gdGhlIHNhbWUgU1RNMzJMMSBGYW1pbHkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLw0KLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8NCg0KLyogQWxpYXNlcyBmb3IgX19JUlFuICovDQoNCi8qIEFsaWFzZXMgZm9yIF9fSVJRSGFuZGxlciAqLw0KDQovKioNCiAgKiBAfQ0KICAqLw0KDQovKioNCiAgKiBAfQ0KICAqLw0KDQojaWZkZWYgX19jcGx1c3BsdXMNCn0NCiNlbmRpZiAvKiBfX2NwbHVzcGx1cyAqLw0KDQojZW5kaWYgLyogX19TVE0zMkwxNTF4RFhfSCAqLw0KDQoNCg0KLyoqKioqKioqKioqKioqKioqKioqKioqKiAoQykgQ09QWVJJR0hUIFNUTWljcm9lbGVjdHJvbmljcyAqKioqKkVORCBPRiBGSUxFKioqKi8NCg==