LyoqDQogICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKg0KICAqIEBmaWxlICAgIHN0bTMybDE1MnhlLmgNCiAgKiBAYXV0aG9yICBNQ0QgQXBwbGljYXRpb24gVGVhbQ0KICAqIEBicmllZiAgIENNU0lTIENvcnRleC1NMyBEZXZpY2UgUGVyaXBoZXJhbCBBY2Nlc3MgTGF5ZXIgSGVhZGVyIEZpbGUuIA0KICAqICAgICAgICAgIFRoaXMgZmlsZSBjb250YWlucyBhbGwgdGhlIHBlcmlwaGVyYWwgcmVnaXN0ZXIncyBkZWZpbml0aW9ucywgYml0cyANCiAgKiAgICAgICAgICBkZWZpbml0aW9ucyBhbmQgbWVtb3J5IG1hcHBpbmcgZm9yIFNUTTMyTDF4eCBkZXZpY2VzLiAgICAgICAgICAgIA0KICAqICAgICAgICAgICAgDQogICogICAgICAgICAgVGhpcyBmaWxlIGNvbnRhaW5zOg0KICAqICAgICAgICAgICAtIERhdGEgc3RydWN0dXJlcyBhbmQgdGhlIGFkZHJlc3MgbWFwcGluZyBmb3IgYWxsIHBlcmlwaGVyYWxzDQogICogICAgICAgICAgIC0gUGVyaXBoZXJhbCdzIHJlZ2lzdGVycyBkZWNsYXJhdGlvbnMgYW5kIGJpdHMgZGVmaW5pdGlvbg0KICAqICAgICAgICAgICAtIE1hY3JvcyB0byBhY2Nlc3MgcGVyaXBoZXJhbJJzIHJlZ2lzdGVycyBoYXJkd2FyZQ0KICAqICANCiAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqDQogICogQGF0dGVudGlvbg0KICAqDQogICogPGgyPjxjZW50ZXI+JmNvcHk7IENPUFlSSUdIVChjKSAyMDE3IFNUTWljcm9lbGVjdHJvbmljczwvY2VudGVyPjwvaDI+DQogICoNCiAgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQgbW9kaWZpY2F0aW9uLA0KICAqIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMgYXJlIG1ldDoNCiAgKiAgIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSwNCiAgKiAgICAgIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuDQogICogICAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2UsDQogICogICAgICB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZSBkb2N1bWVudGF0aW9uDQogICogICAgICBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4NCiAgKiAgIDMuIE5laXRoZXIgdGhlIG5hbWUgb2YgU1RNaWNyb2VsZWN0cm9uaWNzIG5vciB0aGUgbmFtZXMgb2YgaXRzIGNvbnRyaWJ1dG9ycw0KICAqICAgICAgbWF5IGJlIHVzZWQgdG8gZW5kb3JzZSBvciBwcm9tb3RlIHByb2R1Y3RzIGRlcml2ZWQgZnJvbSB0aGlzIHNvZnR3YXJlDQogICogICAgICB3aXRob3V0IHNwZWNpZmljIHByaW9yIHdyaXR0ZW4gcGVybWlzc2lvbi4NCiAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiAgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQgSE9MREVSUyBBTkQgQ09OVFJJQlVUT1JTICJBUyBJUyINCiAgKiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFDQogICogSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJFDQogICogRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFIENPUFlSSUdIVCBIT0xERVIgT1IgQ09OVFJJQlVUT1JTIEJFIExJQUJMRQ0KICAqIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMDQogICogREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1INCiAgKiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUg0KICAqIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksDQogICogT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UNCiAgKiBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLg0KICAqDQogICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKg0KICAqLw0KDQovKiogQGFkZHRvZ3JvdXAgQ01TSVMNCiAgKiBAew0KICAqLw0KDQovKiogQGFkZHRvZ3JvdXAgc3RtMzJsMTUyeGUNCiAgKiBAew0KICAqLw0KICAgIA0KI2lmbmRlZiBfX1NUTTMyTDE1MnhFX0gNCiNkZWZpbmUgX19TVE0zMkwxNTJ4RV9IDQoNCiNpZmRlZiBfX2NwbHVzcGx1cw0KIGV4dGVybiAiQyIgew0KI2VuZGlmIA0KICANCg0KICAvKiogQGFkZHRvZ3JvdXAgQ29uZmlndXJhdGlvbl9zZWN0aW9uX2Zvcl9DTVNJUw0KICAqIEB7DQogICovDQovKioNCiAgKiBAYnJpZWYgQ29uZmlndXJhdGlvbiBvZiB0aGUgQ29ydGV4LU0zIFByb2Nlc3NvciBhbmQgQ29yZSBQZXJpcGhlcmFscyANCiAqLw0KI2RlZmluZSBfX0NNM19SRVYgICAgICAgICAgICAgICAgIDB4MjAwVSAvKiE8IENvcnRleC1NMyBSZXZpc2lvbiByMnAwICAgICAgICAgICAgICAgICAgKi8NCiNkZWZpbmUgX19NUFVfUFJFU0VOVCAgICAgICAgICAgICAxVSAgICAgLyohPCBTVE0zMkwxeHggcHJvdmlkZXMgTVBVICAgICAgICAgICAgICAgICAgICAgICAgICAqLw0KI2RlZmluZSBfX05WSUNfUFJJT19CSVRTICAgICAgICAgIDRVICAgICAvKiE8IFNUTTMyTDF4eCB1c2VzIDQgQml0cyBmb3IgdGhlIFByaW9yaXR5IExldmVscyAgICAqLw0KI2RlZmluZSBfX1ZlbmRvcl9TeXNUaWNrQ29uZmlnICAgIDBVICAgICAvKiE8IFNldCB0byAxIGlmIGRpZmZlcmVudCBTeXNUaWNrIENvbmZpZyBpcyB1c2VkICovDQogDQovKioNCiAgKiBAfQ0KICAqLw0KICAgDQovKiogQGFkZHRvZ3JvdXAgUGVyaXBoZXJhbF9pbnRlcnJ1cHRfbnVtYmVyX2RlZmluaXRpb24NCiAgKiBAew0KICAqLw0KDQovKioNCiAqIEBicmllZiBTVE0zMkwxeHggSW50ZXJydXB0IE51bWJlciBEZWZpbml0aW9uLCBhY2NvcmRpbmcgdG8gdGhlIHNlbGVjdGVkIGRldmljZSANCiAqICAgICAgICBpbiBAcmVmIExpYnJhcnlfY29uZmlndXJhdGlvbl9zZWN0aW9uIA0KICovDQoNCiAvKiE8IEludGVycnVwdCBOdW1iZXIgRGVmaW5pdGlvbiAqLw0KdHlwZWRlZiBlbnVtDQp7DQovKioqKioqICBDb3J0ZXgtTTMgUHJvY2Vzc29yIEV4Y2VwdGlvbnMgTnVtYmVycyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovDQogIE5vbk1hc2thYmxlSW50X0lSUW4gICAgICAgICA9IC0xNCwgICAgLyohPCAyIE5vbiBNYXNrYWJsZSBJbnRlcnJ1cHQgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovDQogIEhhcmRGYXVsdF9JUlFuICAgICAgICAgICAgICA9IC0xMywgICAgLyohPCAzIENvcnRleC1NMyBIYXJkIEZhdWx0IEludGVycnVwdCAgICAgICAgICAgICAgICAgICAgICAgICovDQogIE1lbW9yeU1hbmFnZW1lbnRfSVJRbiAgICAgICA9IC0xMiwgICAgLyohPCA0IENvcnRleC1NMyBNZW1vcnkgTWFuYWdlbWVudCBJbnRlcnJ1cHQgICAgICAgICAgICAgICAgICovDQogIEJ1c0ZhdWx0X0lSUW4gICAgICAgICAgICAgICA9IC0xMSwgICAgLyohPCA1IENvcnRleC1NMyBCdXMgRmF1bHQgSW50ZXJydXB0ICAgICAgICAgICAgICAgICAgICAgICAgICovDQogIFVzYWdlRmF1bHRfSVJRbiAgICAgICAgICAgICA9IC0xMCwgICAgLyohPCA2IENvcnRleC1NMyBVc2FnZSBGYXVsdCBJbnRlcnJ1cHQgICAgICAgICAgICAgICAgICAgICAgICovDQogIFNWQ19JUlFuICAgICAgICAgICAgICAgICAgICA9IC01LCAgICAgLyohPCAxMSBDb3J0ZXgtTTMgU1YgQ2FsbCBJbnRlcnJ1cHQgICAgICAgICAgICAgICAgICAgICAgICAgICovDQogIERlYnVnTW9uaXRvcl9JUlFuICAgICAgICAgICA9IC00LCAgICAgLyohPCAxMiBDb3J0ZXgtTTMgRGVidWcgTW9uaXRvciBJbnRlcnJ1cHQgICAgICAgICAgICAgICAgICAgICovDQogIFBlbmRTVl9JUlFuICAgICAgICAgICAgICAgICA9IC0yLCAgICAgLyohPCAxNCBDb3J0ZXgtTTMgUGVuZCBTViBJbnRlcnJ1cHQgICAgICAgICAgICAgICAgICAgICAgICAgICovDQogIFN5c1RpY2tfSVJRbiAgICAgICAgICAgICAgICA9IC0xLCAgICAgLyohPCAxNSBDb3J0ZXgtTTMgU3lzdGVtIFRpY2sgSW50ZXJydXB0ICAgICAgICAgICAgICAgICAgICAgICovDQoNCi8qKioqKiogIFNUTTMyTCBzcGVjaWZpYyBJbnRlcnJ1cHQgTnVtYmVycyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8NCiAgV1dER19JUlFuICAgICAgICAgICAgICAgICAgID0gMCwgICAgICAvKiE8IFdpbmRvdyBXYXRjaERvZyBJbnRlcnJ1cHQgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8NCiAgUFZEX0lSUW4gICAgICAgICAgICAgICAgICAgID0gMSwgICAgICAvKiE8IFBWRCB0aHJvdWdoIEVYVEkgTGluZSBkZXRlY3Rpb24gSW50ZXJydXB0ICAgICAgICAgICAgICAgKi8NCiAgVEFNUEVSX1NUQU1QX0lSUW4gICAgICAgICAgID0gMiwgICAgICAvKiE8IFRhbXBlciBhbmQgVGltZVN0YW1wIGludGVycnVwdHMgdGhyb3VnaCB0aGUgRVhUSSBsaW5lICAgKi8NCiAgUlRDX1dLVVBfSVJRbiAgICAgICAgICAgICAgID0gMywgICAgICAvKiE8IFJUQyBXYWtldXAgVGltZXIgdGhyb3VnaCBFWFRJIExpbmUgSW50ZXJydXB0ICAgICAgICAgICAgKi8NCiAgRkxBU0hfSVJRbiAgICAgICAgICAgICAgICAgID0gNCwgICAgICAvKiE8IEZMQVNIIGdsb2JhbCBJbnRlcnJ1cHQgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8NCiAgUkNDX0lSUW4gICAgICAgICAgICAgICAgICAgID0gNSwgICAgICAvKiE8IFJDQyBnbG9iYWwgSW50ZXJydXB0ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8NCiAgRVhUSTBfSVJRbiAgICAgICAgICAgICAgICAgID0gNiwgICAgICAvKiE8IEVYVEkgTGluZTAgSW50ZXJydXB0ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8NCiAgRVhUSTFfSVJRbiAgICAgICAgICAgICAgICAgID0gNywgICAgICAvKiE8IEVYVEkgTGluZTEgSW50ZXJydXB0ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8NCiAgRVhUSTJfSVJRbiAgICAgICAgICAgICAgICAgID0gOCwgICAgICAvKiE8IEVYVEkgTGluZTIgSW50ZXJydXB0ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8NCiAgRVhUSTNfSVJRbiAgICAgICAgICAgICAgICAgID0gOSwgICAgICAvKiE8IEVYVEkgTGluZTMgSW50ZXJydXB0ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8NCiAgRVhUSTRfSVJRbiAgICAgICAgICAgICAgICAgID0gMTAsICAgICAvKiE8IEVYVEkgTGluZTQgSW50ZXJydXB0ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8NCiAgRE1BMV9DaGFubmVsMV9JUlFuICAgICAgICAgID0gMTEsICAgICAvKiE8IERNQTEgQ2hhbm5lbCAxIGdsb2JhbCBJbnRlcnJ1cHQgICAgICAgICAgICAgICAgICAgICAgICAgKi8NCiAgRE1BMV9DaGFubmVsMl9JUlFuICAgICAgICAgID0gMTIsICAgICAvKiE8IERNQTEgQ2hhbm5lbCAyIGdsb2JhbCBJbnRlcnJ1cHQgICAgICAgICAgICAgICAgICAgICAgICAgKi8NCiAgRE1BMV9DaGFubmVsM19JUlFuICAgICAgICAgID0gMTMsICAgICAvKiE8IERNQTEgQ2hhbm5lbCAzIGdsb2JhbCBJbnRlcnJ1cHQgICAgICAgICAgICAgICAgICAgICAgICAgKi8NCiAgRE1BMV9DaGFubmVsNF9JUlFuICAgICAgICAgID0gMTQsICAgICAvKiE8IERNQTEgQ2hhbm5lbCA0IGdsb2JhbCBJbnRlcnJ1cHQgICAgICAgICAgICAgICAgICAgICAgICAgKi8NCiAgRE1BMV9DaGFubmVsNV9JUlFuICAgICAgICAgID0gMTUsICAgICAvKiE8IERNQTEgQ2hhbm5lbCA1IGdsb2JhbCBJbnRlcnJ1cHQgICAgICAgICAgICAgICAgICAgICAgICAgKi8NCiAgRE1BMV9DaGFubmVsNl9JUlFuICAgICAgICAgID0gMTYsICAgICAvKiE8IERNQTEgQ2hhbm5lbCA2IGdsb2JhbCBJbnRlcnJ1cHQgICAgICAgICAgICAgICAgICAgICAgICAgKi8NCiAgRE1BMV9DaGFubmVsN19JUlFuICAgICAgICAgID0gMTcsICAgICAvKiE8IERNQTEgQ2hhbm5lbCA3IGdsb2JhbCBJbnRlcnJ1cHQgICAgICAgICAgICAgICAgICAgICAgICAgKi8NCiAgQURDMV9JUlFuICAgICAgICAgICAgICAgICAgID0gMTgsICAgICAvKiE8IEFEQzEgZ2xvYmFsIEludGVycnVwdCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8NCiAgVVNCX0hQX0lSUW4gICAgICAgICAgICAgICAgID0gMTksICAgICAvKiE8IFVTQiBIaWdoIFByaW9yaXR5IEludGVycnVwdCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8NCiAgVVNCX0xQX0lSUW4gICAgICAgICAgICAgICAgID0gMjAsICAgICAvKiE8IFVTQiBMb3cgUHJpb3JpdHkgSW50ZXJydXB0ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8NCiAgREFDX0lSUW4gICAgICAgICAgICAgICAgICAgID0gMjEsICAgICAvKiE8IERBQyBJbnRlcnJ1cHQgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8NCiAgQ09NUF9JUlFuICAgICAgICAgICAgICAgICAgID0gMjIsICAgICAvKiE8IENvbXBhcmF0b3IgdGhyb3VnaCBFWFRJIExpbmUgSW50ZXJydXB0ICAgICAgICAgICAgICAgICAgKi8NCiAgRVhUSTlfNV9JUlFuICAgICAgICAgICAgICAgID0gMjMsICAgICAvKiE8IEV4dGVybmFsIExpbmVbOTo1XSBJbnRlcnJ1cHRzICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8NCiAgTENEX0lSUW4gICAgICAgICAgICAgICAgICAgID0gMjQsICAgICAvKiE8IExDRCBJbnRlcnJ1cHQgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8NCiAgVElNOV9JUlFuICAgICAgICAgICAgICAgICAgID0gMjUsICAgICAvKiE8IFRJTTkgZ2xvYmFsIEludGVycnVwdCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8NCiAgVElNMTBfSVJRbiAgICAgICAgICAgICAgICAgID0gMjYsICAgICAvKiE8IFRJTTEwIGdsb2JhbCBJbnRlcnJ1cHQgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8NCiAgVElNMTFfSVJRbiAgICAgICAgICAgICAgICAgID0gMjcsICAgICAvKiE8IFRJTTExIGdsb2JhbCBJbnRlcnJ1cHQgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8NCiAgVElNMl9JUlFuICAgICAgICAgICAgICAgICAgID0gMjgsICAgICAvKiE8IFRJTTIgZ2xvYmFsIEludGVycnVwdCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8NCiAgVElNM19JUlFuICAgICAgICAgICAgICAgICAgID0gMjksICAgICAvKiE8IFRJTTMgZ2xvYmFsIEludGVycnVwdCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8NCiAgVElNNF9JUlFuICAgICAgICAgICAgICAgICAgID0gMzAsICAgICAvKiE8IFRJTTQgZ2xvYmFsIEludGVycnVwdCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8NCiAgSTJDMV9FVl9JUlFuICAgICAgICAgICAgICAgID0gMzEsICAgICAvKiE8IEkyQzEgRXZlbnQgSW50ZXJydXB0ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8NCiAgSTJDMV9FUl9JUlFuICAgICAgICAgICAgICAgID0gMzIsICAgICAvKiE8IEkyQzEgRXJyb3IgSW50ZXJydXB0ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8NCiAgSTJDMl9FVl9JUlFuICAgICAgICAgICAgICAgID0gMzMsICAgICAvKiE8IEkyQzIgRXZlbnQgSW50ZXJydXB0ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8NCiAgSTJDMl9FUl9JUlFuICAgICAgICAgICAgICAgID0gMzQsICAgICAvKiE8IEkyQzIgRXJyb3IgSW50ZXJydXB0ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8NCiAgU1BJMV9JUlFuICAgICAgICAgICAgICAgICAgID0gMzUsICAgICAvKiE8IFNQSTEgZ2xvYmFsIEludGVycnVwdCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8NCiAgU1BJMl9JUlFuICAgICAgICAgICAgICAgICAgID0gMzYsICAgICAvKiE8IFNQSTIgZ2xvYmFsIEludGVycnVwdCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8NCiAgVVNBUlQxX0lSUW4gICAgICAgICAgICAgICAgID0gMzcsICAgICAvKiE8IFVTQVJUMSBnbG9iYWwgSW50ZXJydXB0ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8NCiAgVVNBUlQyX0lSUW4gICAgICAgICAgICAgICAgID0gMzgsICAgICAvKiE8IFVTQVJUMiBnbG9iYWwgSW50ZXJydXB0ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8NCiAgVVNBUlQzX0lSUW4gICAgICAgICAgICAgICAgID0gMzksICAgICAvKiE8IFVTQVJUMyBnbG9iYWwgSW50ZXJydXB0ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8NCiAgRVhUSTE1XzEwX0lSUW4gICAgICAgICAgICAgID0gNDAsICAgICAvKiE8IEV4dGVybmFsIExpbmVbMTU6MTBdIEludGVycnVwdHMgICAgICAgICAgICAgICAgICAgICAgICAgKi8NCiAgUlRDX0FsYXJtX0lSUW4gICAgICAgICAgICAgID0gNDEsICAgICAvKiE8IFJUQyBBbGFybSB0aHJvdWdoIEVYVEkgTGluZSBJbnRlcnJ1cHQgICAgICAgICAgICAgICAgICAgKi8NCiAgVVNCX0ZTX1dLVVBfSVJRbiAgICAgICAgICAgID0gNDIsICAgICAvKiE8IFVTQiBGUyBXYWtlVXAgZnJvbSBzdXNwZW5kIHRocm91Z2ggRVhUSSBMaW5lIEludGVycnVwdCAgKi8NCiAgVElNNl9JUlFuICAgICAgICAgICAgICAgICAgID0gNDMsICAgICAvKiE8IFRJTTYgZ2xvYmFsIEludGVycnVwdCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8NCiAgVElNN19JUlFuICAgICAgICAgICAgICAgICAgID0gNDQsICAgICAvKiE8IFRJTTcgZ2xvYmFsIEludGVycnVwdCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8NCiAgVElNNV9JUlFuICAgICAgICAgICAgICAgICAgID0gNDYsICAgICAvKiE8IFRJTTUgZ2xvYmFsIEludGVycnVwdCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8NCiAgU1BJM19JUlFuICAgICAgICAgICAgICAgICAgID0gNDcsICAgICAvKiE8IFNQSTMgZ2xvYmFsIEludGVycnVwdCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8NCiAgVUFSVDRfSVJRbiAgICAgICAgICAgICAgICAgID0gNDgsICAgICAvKiE8IFVBUlQ0IGdsb2JhbCBJbnRlcnJ1cHQgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8NCiAgVUFSVDVfSVJRbiAgICAgICAgICAgICAgICAgID0gNDksICAgICAvKiE8IFVBUlQ1IGdsb2JhbCBJbnRlcnJ1cHQgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8NCiAgRE1BMl9DaGFubmVsMV9JUlFuICAgICAgICAgID0gNTAsICAgICAvKiE8IERNQTIgQ2hhbm5lbCAxIGdsb2JhbCBJbnRlcnJ1cHQgICAgICAgICAgICAgICAgICAgICAgICAgKi8NCiAgRE1BMl9DaGFubmVsMl9JUlFuICAgICAgICAgID0gNTEsICAgICAvKiE8IERNQTIgQ2hhbm5lbCAyIGdsb2JhbCBJbnRlcnJ1cHQgICAgICAgICAgICAgICAgICAgICAgICAgKi8NCiAgRE1BMl9DaGFubmVsM19JUlFuICAgICAgICAgID0gNTIsICAgICAvKiE8IERNQTIgQ2hhbm5lbCAzIGdsb2JhbCBJbnRlcnJ1cHQgICAgICAgICAgICAgICAgICAgICAgICAgKi8NCiAgRE1BMl9DaGFubmVsNF9JUlFuICAgICAgICAgID0gNTMsICAgICAvKiE8IERNQTIgQ2hhbm5lbCA0IGdsb2JhbCBJbnRlcnJ1cHQgICAgICAgICAgICAgICAgICAgICAgICAgKi8NCiAgRE1BMl9DaGFubmVsNV9JUlFuICAgICAgICAgID0gNTQsICAgICAvKiE8IERNQTIgQ2hhbm5lbCA1IGdsb2JhbCBJbnRlcnJ1cHQgICAgICAgICAgICAgICAgICAgICAgICAgKi8NCiAgQ09NUF9BQ1FfSVJRbiAgICAgICAgICAgICAgID0gNTYgICAgICAvKiE8IENvbXBhcmF0b3IgQ2hhbm5lbCBBY3F1aXNpdGlvbiBnbG9iYWwgSW50ZXJydXB0ICAgICAgICAgKi8NCn0gSVJRbl9UeXBlOw0KDQovKioNCiAgKiBAfQ0KICAqLw0KDQojaW5jbHVkZSAiY29yZV9jbTMuaCINCiNpbmNsdWRlICJzeXN0ZW1fc3RtMzJsMXh4LmgiDQojaW5jbHVkZSA8c3RkaW50Lmg+DQoNCi8qKiBAYWRkdG9ncm91cCBQZXJpcGhlcmFsX3JlZ2lzdGVyc19zdHJ1Y3R1cmVzDQogICogQHsNCiAgKi8gICANCg0KLyoqIA0KICAqIEBicmllZiBBbmFsb2cgdG8gRGlnaXRhbCBDb252ZXJ0ZXINCiAgKi8NCg0KdHlwZWRlZiBzdHJ1Y3QNCnsNCiAgX19JTyB1aW50MzJfdCBTUjsgICAgICAgICAgIC8qITwgQURDIHN0YXR1cyByZWdpc3RlciwgICAgICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MDAgKi8NCiAgX19JTyB1aW50MzJfdCBDUjE7ICAgICAgICAgIC8qITwgQURDIGNvbnRyb2wgcmVnaXN0ZXIgMSwgICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MDQgKi8NCiAgX19JTyB1aW50MzJfdCBDUjI7ICAgICAgICAgIC8qITwgQURDIGNvbnRyb2wgcmVnaXN0ZXIgMiwgICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MDggKi8NCiAgX19JTyB1aW50MzJfdCBTTVBSMTsgICAgICAgIC8qITwgQURDIHNhbXBsZSB0aW1lIHJlZ2lzdGVyIDEsICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MEMgKi8NCiAgX19JTyB1aW50MzJfdCBTTVBSMjsgICAgICAgIC8qITwgQURDIHNhbXBsZSB0aW1lIHJlZ2lzdGVyIDIsICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MTAgKi8NCiAgX19JTyB1aW50MzJfdCBTTVBSMzsgICAgICAgIC8qITwgQURDIHNhbXBsZSB0aW1lIHJlZ2lzdGVyIDMsICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MTQgKi8NCiAgX19JTyB1aW50MzJfdCBKT0ZSMTsgICAgICAgIC8qITwgQURDIGluamVjdGVkIGNoYW5uZWwgZGF0YSBvZmZzZXQgcmVnaXN0ZXIgMSwgQWRkcmVzcyBvZmZzZXQ6IDB4MTggKi8NCiAgX19JTyB1aW50MzJfdCBKT0ZSMjsgICAgICAgIC8qITwgQURDIGluamVjdGVkIGNoYW5uZWwgZGF0YSBvZmZzZXQgcmVnaXN0ZXIgMiwgQWRkcmVzcyBvZmZzZXQ6IDB4MUMgKi8NCiAgX19JTyB1aW50MzJfdCBKT0ZSMzsgICAgICAgIC8qITwgQURDIGluamVjdGVkIGNoYW5uZWwgZGF0YSBvZmZzZXQgcmVnaXN0ZXIgMywgQWRkcmVzcyBvZmZzZXQ6IDB4MjAgKi8NCiAgX19JTyB1aW50MzJfdCBKT0ZSNDsgICAgICAgIC8qITwgQURDIGluamVjdGVkIGNoYW5uZWwgZGF0YSBvZmZzZXQgcmVnaXN0ZXIgNCwgQWRkcmVzcyBvZmZzZXQ6IDB4MjQgKi8NCiAgX19JTyB1aW50MzJfdCBIVFI7ICAgICAgICAgIC8qITwgQURDIHdhdGNoZG9nIGhpZ2hlciB0aHJlc2hvbGQgcmVnaXN0ZXIsICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MjggKi8NCiAgX19JTyB1aW50MzJfdCBMVFI7ICAgICAgICAgIC8qITwgQURDIHdhdGNoZG9nIGxvd2VyIHRocmVzaG9sZCByZWdpc3RlciwgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MkMgKi8NCiAgX19JTyB1aW50MzJfdCBTUVIxOyAgICAgICAgIC8qITwgQURDIHJlZ3VsYXIgc2VxdWVuY2UgcmVnaXN0ZXIgMSwgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MzAgKi8NCiAgX19JTyB1aW50MzJfdCBTUVIyOyAgICAgICAgIC8qITwgQURDIHJlZ3VsYXIgc2VxdWVuY2UgcmVnaXN0ZXIgMiwgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MzQgKi8NCiAgX19JTyB1aW50MzJfdCBTUVIzOyAgICAgICAgIC8qITwgQURDIHJlZ3VsYXIgc2VxdWVuY2UgcmVnaXN0ZXIgMywgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MzggKi8NCiAgX19JTyB1aW50MzJfdCBTUVI0OyAgICAgICAgIC8qITwgQURDIHJlZ3VsYXIgc2VxdWVuY2UgcmVnaXN0ZXIgNCwgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4M0MgKi8NCiAgX19JTyB1aW50MzJfdCBTUVI1OyAgICAgICAgIC8qITwgQURDIHJlZ3VsYXIgc2VxdWVuY2UgcmVnaXN0ZXIgNSwgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4NDAgKi8NCiAgX19JTyB1aW50MzJfdCBKU1FSOyAgICAgICAgIC8qITwgQURDIGluamVjdGVkIHNlcXVlbmNlIHJlZ2lzdGVyLCAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4NDQgKi8NCiAgX19JTyB1aW50MzJfdCBKRFIxOyAgICAgICAgIC8qITwgQURDIGluamVjdGVkIGRhdGEgcmVnaXN0ZXIgMSwgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4NDggKi8NCiAgX19JTyB1aW50MzJfdCBKRFIyOyAgICAgICAgIC8qITwgQURDIGluamVjdGVkIGRhdGEgcmVnaXN0ZXIgMiwgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4NEMgKi8NCiAgX19JTyB1aW50MzJfdCBKRFIzOyAgICAgICAgIC8qITwgQURDIGluamVjdGVkIGRhdGEgcmVnaXN0ZXIgMywgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4NTAgKi8NCiAgX19JTyB1aW50MzJfdCBKRFI0OyAgICAgICAgIC8qITwgQURDIGluamVjdGVkIGRhdGEgcmVnaXN0ZXIgNCwgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4NTQgKi8NCiAgX19JTyB1aW50MzJfdCBEUjsgICAgICAgICAgIC8qITwgQURDIHJlZ3VsYXIgZGF0YSByZWdpc3RlciwgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4NTggKi8NCiAgX19JTyB1aW50MzJfdCBTTVBSMDsgICAgICAgIC8qITwgQURDIHNhbXBsZSB0aW1lIHJlZ2lzdGVyIDAsICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4NUMgKi8NCn0gQURDX1R5cGVEZWY7DQoNCnR5cGVkZWYgc3RydWN0DQp7DQogIF9fSU8gdWludDMyX3QgQ1NSOyAgICAgICAgICAvKiE8IEFEQyBjb21tb24gc3RhdHVzIHJlZ2lzdGVyLCAgICAgICAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiBBREMxIGJhc2UgYWRkcmVzcyArIDB4MzAwICovDQogIF9fSU8gdWludDMyX3QgQ0NSOyAgICAgICAgICAvKiE8IEFEQyBjb21tb24gY29udHJvbCByZWdpc3RlciwgICAgICAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiBBREMxIGJhc2UgYWRkcmVzcyArIDB4MzA0ICovDQp9IEFEQ19Db21tb25fVHlwZURlZjsNCg0KLyoqIA0KICAqIEBicmllZiBDb21wYXJhdG9yIA0KICAqLw0KDQp0eXBlZGVmIHN0cnVjdA0Kew0KICBfX0lPIHVpbnQzMl90IENTUjsgICAgICAgICAvKiE8IENPTVAgY29udHJvbCBhbmQgc3RhdHVzIHJlZ2lzdGVyLCBBZGRyZXNzIG9mZnNldDogMHgwMCAqLw0KfSBDT01QX1R5cGVEZWY7DQoNCnR5cGVkZWYgc3RydWN0DQp7DQogIF9fSU8gdWludDMyX3QgQ1NSOyAgICAgICAgIC8qITwgQ09NUCBjb250cm9sIGFuZCBzdGF0dXMgcmVnaXN0ZXIsIHVzZWQgZm9yIGJpdHMgY29tbW9uIHRvIHNldmVyYWwgQ09NUCBpbnN0YW5jZXMsIEFkZHJlc3Mgb2Zmc2V0OiAweDAwICovDQp9IENPTVBfQ29tbW9uX1R5cGVEZWY7DQoNCi8qKiANCiAgKiBAYnJpZWYgQ1JDIGNhbGN1bGF0aW9uIHVuaXQNCiAgKi8NCg0KdHlwZWRlZiBzdHJ1Y3QNCnsNCiAgX19JTyB1aW50MzJfdCBEUjsgICAgICAgICAgIC8qITwgQ1JDIERhdGEgcmVnaXN0ZXIsICAgICAgICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MDAgKi8NCiAgX19JTyB1aW50OF90ICBJRFI7ICAgICAgICAgIC8qITwgQ1JDIEluZGVwZW5kZW50IGRhdGEgcmVnaXN0ZXIsICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MDQgKi8NCiAgdWludDhfdCAgICAgICBSRVNFUlZFRDA7ICAgIC8qITwgUmVzZXJ2ZWQsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MDUgKi8NCiAgdWludDE2X3QgICAgICBSRVNFUlZFRDE7ICAgIC8qITwgUmVzZXJ2ZWQsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MDYgKi8gDQogIF9fSU8gdWludDMyX3QgQ1I7ICAgICAgICAgICAvKiE8IENSQyBDb250cm9sIHJlZ2lzdGVyLCAgICAgICAgICAgICAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDA4ICovIA0KfSBDUkNfVHlwZURlZjsNCg0KLyoqIA0KICAqIEBicmllZiBEaWdpdGFsIHRvIEFuYWxvZyBDb252ZXJ0ZXINCiAgKi8NCg0KdHlwZWRlZiBzdHJ1Y3QNCnsNCiAgX19JTyB1aW50MzJfdCBDUjsgICAgICAgICAgIC8qITwgREFDIGNvbnRyb2wgcmVnaXN0ZXIsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDAwICovDQogIF9fSU8gdWludDMyX3QgU1dUUklHUjsgICAgICAvKiE8IERBQyBzb2Z0d2FyZSB0cmlnZ2VyIHJlZ2lzdGVyLCAgICAgICAgICAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgwNCAqLw0KICBfX0lPIHVpbnQzMl90IERIUjEyUjE7ICAgICAgLyohPCBEQUMgY2hhbm5lbDEgMTItYml0IHJpZ2h0LWFsaWduZWQgZGF0YSBob2xkaW5nIHJlZ2lzdGVyLCAgQWRkcmVzcyBvZmZzZXQ6IDB4MDggKi8NCiAgX19JTyB1aW50MzJfdCBESFIxMkwxOyAgICAgIC8qITwgREFDIGNoYW5uZWwxIDEyLWJpdCBsZWZ0IGFsaWduZWQgZGF0YSBob2xkaW5nIHJlZ2lzdGVyLCAgIEFkZHJlc3Mgb2Zmc2V0OiAweDBDICovDQogIF9fSU8gdWludDMyX3QgREhSOFIxOyAgICAgICAvKiE8IERBQyBjaGFubmVsMSA4LWJpdCByaWdodCBhbGlnbmVkIGRhdGEgaG9sZGluZyByZWdpc3RlciwgICBBZGRyZXNzIG9mZnNldDogMHgxMCAqLw0KICBfX0lPIHVpbnQzMl90IERIUjEyUjI7ICAgICAgLyohPCBEQUMgY2hhbm5lbDIgMTItYml0IHJpZ2h0IGFsaWduZWQgZGF0YSBob2xkaW5nIHJlZ2lzdGVyLCAgQWRkcmVzcyBvZmZzZXQ6IDB4MTQgKi8NCiAgX19JTyB1aW50MzJfdCBESFIxMkwyOyAgICAgIC8qITwgREFDIGNoYW5uZWwyIDEyLWJpdCBsZWZ0IGFsaWduZWQgZGF0YSBob2xkaW5nIHJlZ2lzdGVyLCAgIEFkZHJlc3Mgb2Zmc2V0OiAweDE4ICovDQogIF9fSU8gdWludDMyX3QgREhSOFIyOyAgICAgICAvKiE8IERBQyBjaGFubmVsMiA4LWJpdCByaWdodC1hbGlnbmVkIGRhdGEgaG9sZGluZyByZWdpc3RlciwgICBBZGRyZXNzIG9mZnNldDogMHgxQyAqLw0KICBfX0lPIHVpbnQzMl90IERIUjEyUkQ7ICAgICAgLyohPCBEdWFsIERBQyAxMi1iaXQgcmlnaHQtYWxpZ25lZCBkYXRhIGhvbGRpbmcgcmVnaXN0ZXIsICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MjAgKi8NCiAgX19JTyB1aW50MzJfdCBESFIxMkxEOyAgICAgIC8qITwgRFVBTCBEQUMgMTItYml0IGxlZnQgYWxpZ25lZCBkYXRhIGhvbGRpbmcgcmVnaXN0ZXIsICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDI0ICovDQogIF9fSU8gdWludDMyX3QgREhSOFJEOyAgICAgICAvKiE8IERVQUwgREFDIDgtYml0IHJpZ2h0IGFsaWduZWQgZGF0YSBob2xkaW5nIHJlZ2lzdGVyLCAgICAgICBBZGRyZXNzIG9mZnNldDogMHgyOCAqLw0KICBfX0lPIHVpbnQzMl90IERPUjE7ICAgICAgICAgLyohPCBEQUMgY2hhbm5lbDEgZGF0YSBvdXRwdXQgcmVnaXN0ZXIsICAgICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MkMgKi8NCiAgX19JTyB1aW50MzJfdCBET1IyOyAgICAgICAgIC8qITwgREFDIGNoYW5uZWwyIGRhdGEgb3V0cHV0IHJlZ2lzdGVyLCAgICAgICAgICAgICAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDMwICovDQogIF9fSU8gdWludDMyX3QgU1I7ICAgICAgICAgICAvKiE8IERBQyBzdGF0dXMgcmVnaXN0ZXIsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgzNCAqLw0KfSBEQUNfVHlwZURlZjsNCg0KLyoqIA0KICAqIEBicmllZiBEZWJ1ZyBNQ1UNCiAgKi8NCg0KdHlwZWRlZiBzdHJ1Y3QNCnsNCiAgX19JTyB1aW50MzJfdCBJRENPREU7ICAgICAgIC8qITwgTUNVIGRldmljZSBJRCBjb2RlLCAgICAgICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MDAgKi8NCiAgX19JTyB1aW50MzJfdCBDUjsgICAgICAgICAgIC8qITwgRGVidWcgTUNVIGNvbmZpZ3VyYXRpb24gcmVnaXN0ZXIsICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MDQgKi8NCiAgX19JTyB1aW50MzJfdCBBUEIxRlo7ICAgICAgIC8qITwgRGVidWcgTUNVIEFQQjEgZnJlZXplIHJlZ2lzdGVyLCAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MDggKi8NCiAgX19JTyB1aW50MzJfdCBBUEIyRlo7ICAgICAgIC8qITwgRGVidWcgTUNVIEFQQjIgZnJlZXplIHJlZ2lzdGVyLCAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MEMgKi8NCn1EQkdNQ1VfVHlwZURlZjsNCg0KLyoqIA0KICAqIEBicmllZiBETUEgQ29udHJvbGxlcg0KICAqLw0KDQp0eXBlZGVmIHN0cnVjdA0Kew0KICBfX0lPIHVpbnQzMl90IENDUjsgICAgICAgICAgLyohPCBETUEgY2hhbm5lbCB4IGNvbmZpZ3VyYXRpb24gcmVnaXN0ZXIgICAgICAgICovDQogIF9fSU8gdWludDMyX3QgQ05EVFI7ICAgICAgICAvKiE8IERNQSBjaGFubmVsIHggbnVtYmVyIG9mIGRhdGEgcmVnaXN0ZXIgICAgICAgKi8NCiAgX19JTyB1aW50MzJfdCBDUEFSOyAgICAgICAgIC8qITwgRE1BIGNoYW5uZWwgeCBwZXJpcGhlcmFsIGFkZHJlc3MgcmVnaXN0ZXIgICAqLw0KICBfX0lPIHVpbnQzMl90IENNQVI7ICAgICAgICAgLyohPCBETUEgY2hhbm5lbCB4IG1lbW9yeSBhZGRyZXNzIHJlZ2lzdGVyICAgICAgICovDQp9IERNQV9DaGFubmVsX1R5cGVEZWY7DQoNCnR5cGVkZWYgc3RydWN0DQp7DQogIF9fSU8gdWludDMyX3QgSVNSOyAgICAgICAgICAvKiE8IERNQSBpbnRlcnJ1cHQgc3RhdHVzIHJlZ2lzdGVyLCAgICAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDAwICovDQogIF9fSU8gdWludDMyX3QgSUZDUjsgICAgICAgICAvKiE8IERNQSBpbnRlcnJ1cHQgZmxhZyBjbGVhciByZWdpc3RlciwgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDA0ICovDQp9IERNQV9UeXBlRGVmOw0KDQovKiogDQogICogQGJyaWVmIEV4dGVybmFsIEludGVycnVwdC9FdmVudCBDb250cm9sbGVyDQogICovDQoNCnR5cGVkZWYgc3RydWN0DQp7DQogIF9fSU8gdWludDMyX3QgSU1SOyAgICAgICAgICAvKiE8RVhUSSBJbnRlcnJ1cHQgbWFzayByZWdpc3RlciwgICAgICAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDAwICovDQogIF9fSU8gdWludDMyX3QgRU1SOyAgICAgICAgICAvKiE8RVhUSSBFdmVudCBtYXNrIHJlZ2lzdGVyLCAgICAgICAgICAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDA0ICovDQogIF9fSU8gdWludDMyX3QgUlRTUjsgICAgICAgICAvKiE8RVhUSSBSaXNpbmcgdHJpZ2dlciBzZWxlY3Rpb24gcmVnaXN0ZXIgLCAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDA4ICovDQogIF9fSU8gdWludDMyX3QgRlRTUjsgICAgICAgICAvKiE8RVhUSSBGYWxsaW5nIHRyaWdnZXIgc2VsZWN0aW9uIHJlZ2lzdGVyLCAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDBDICovDQogIF9fSU8gdWludDMyX3QgU1dJRVI7ICAgICAgICAvKiE8RVhUSSBTb2Z0d2FyZSBpbnRlcnJ1cHQgZXZlbnQgcmVnaXN0ZXIsICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDEwICovDQogIF9fSU8gdWludDMyX3QgUFI7ICAgICAgICAgICAvKiE8RVhUSSBQZW5kaW5nIHJlZ2lzdGVyLCAgICAgICAgICAgICAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDE0ICovDQp9IEVYVElfVHlwZURlZjsNCg0KLyoqIA0KICAqIEBicmllZiBGTEFTSCBSZWdpc3RlcnMNCiAgKi8NCnR5cGVkZWYgc3RydWN0DQp7DQogIF9fSU8gdWludDMyX3QgQUNSOyAgICAgICAgICAvKiE8IEFjY2VzcyBjb250cm9sIHJlZ2lzdGVyLCAgICAgICAgICAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDAwICovDQogIF9fSU8gdWludDMyX3QgUEVDUjsgICAgICAgICAvKiE8IFByb2dyYW0vZXJhc2UgY29udHJvbCByZWdpc3RlciwgICAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDA0ICovDQogIF9fSU8gdWludDMyX3QgUERLRVlSOyAgICAgICAvKiE8IFBvd2VyIGRvd24ga2V5IHJlZ2lzdGVyLCAgICAgICAgICAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDA4ICovDQogIF9fSU8gdWludDMyX3QgUEVLRVlSOyAgICAgICAvKiE8IFByb2dyYW0vZXJhc2Uga2V5IHJlZ2lzdGVyLCAgICAgICAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDBjICovDQogIF9fSU8gdWludDMyX3QgUFJHS0VZUjsgICAgICAvKiE8IFByb2dyYW0gbWVtb3J5IGtleSByZWdpc3RlciwgICAgICAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDEwICovDQogIF9fSU8gdWludDMyX3QgT1BUS0VZUjsgICAgICAvKiE8IE9wdGlvbiBieXRlIGtleSByZWdpc3RlciwgICAgICAgICAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDE0ICovDQogIF9fSU8gdWludDMyX3QgU1I7ICAgICAgICAgICAvKiE8IFN0YXR1cyByZWdpc3RlciwgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDE4ICovDQogIF9fSU8gdWludDMyX3QgT0JSOyAgICAgICAgICAvKiE8IE9wdGlvbiBieXRlIHJlZ2lzdGVyLCAgICAgICAgICAgICAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDFjICovDQogIF9fSU8gdWludDMyX3QgV1JQUjE7ICAgICAgICAvKiE8IFdyaXRlIHByb3RlY3Rpb24gcmVnaXN0ZXIgMSwgICAgICAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDIwICovDQogIHVpbnQzMl90ICAgUkVTRVJWRURbMjNdOyAgICAvKiE8IFJlc2VydmVkLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDI0ICovDQogIF9fSU8gdWludDMyX3QgV1JQUjI7ICAgICAgICAvKiE8IFdyaXRlIHByb3RlY3Rpb24gcmVnaXN0ZXIgMiwgICAgICAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDgwICovDQogIF9fSU8gdWludDMyX3QgV1JQUjM7ICAgICAgICAvKiE8IFdyaXRlIHByb3RlY3Rpb24gcmVnaXN0ZXIgMywgICAgICAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDg0ICovDQogIF9fSU8gdWludDMyX3QgV1JQUjQ7ICAgICAgICAvKiE8IFdyaXRlIHByb3RlY3Rpb24gcmVnaXN0ZXIgNCwgICAgICAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDg4ICovDQp9IEZMQVNIX1R5cGVEZWY7DQoNCi8qKiANCiAgKiBAYnJpZWYgT3B0aW9uIEJ5dGVzIFJlZ2lzdGVycw0KICAqLw0KdHlwZWRlZiBzdHJ1Y3QNCnsNCiAgX19JTyB1aW50MzJfdCBSRFA7ICAgICAgICAgICAgICAvKiE8IFJlYWQgcHJvdGVjdGlvbiByZWdpc3RlciwgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgwMCAqLw0KICBfX0lPIHVpbnQzMl90IFVTRVI7ICAgICAgICAgICAgIC8qITwgdXNlciByZWdpc3RlciwgICAgICAgICAgICAgICAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDA0ICovDQogIF9fSU8gdWludDMyX3QgV1JQMDE7ICAgICAgICAgICAgLyohPCB3cml0ZSBwcm90ZWN0aW9uIHJlZ2lzdGVyIDAgMSwgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MDggKi8NCiAgX19JTyB1aW50MzJfdCBXUlAyMzsgICAgICAgICAgICAvKiE8IHdyaXRlIHByb3RlY3Rpb24gcmVnaXN0ZXIgMiAzLCAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgwQyAqLw0KICBfX0lPIHVpbnQzMl90IFdSUDQ1OyAgICAgICAgICAgIC8qITwgd3JpdGUgcHJvdGVjdGlvbiByZWdpc3RlciA0IDUsICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDEwICovDQogIF9fSU8gdWludDMyX3QgV1JQNjc7ICAgICAgICAgICAgLyohPCB3cml0ZSBwcm90ZWN0aW9uIHJlZ2lzdGVyIDYgNywgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MTQgKi8NCiAgX19JTyB1aW50MzJfdCBXUlA4OTsgICAgICAgICAgICAvKiE8IHdyaXRlIHByb3RlY3Rpb24gcmVnaXN0ZXIgOCA5LCAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgxOCAqLw0KICBfX0lPIHVpbnQzMl90IFdSUDEwMTE7ICAgICAgICAgIC8qITwgd3JpdGUgcHJvdGVjdGlvbiByZWdpc3RlciAxMCAxMSwgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDFDICovDQogIHVpbnQzMl90ICAgUkVTRVJWRURbMjRdOyAgICAgICAgLyohPCBSZXNlcnZlZCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAweDIwIC0+IDB4N0MgICAgKi8NCiAgX19JTyB1aW50MzJfdCBXUlAxMjEzOyAgICAgICAgICAvKiE8IHdyaXRlIHByb3RlY3Rpb24gcmVnaXN0ZXIgMTIgMTMsICAgICAgICBBZGRyZXNzIG9mZnNldDogMHg4MCAqLw0KICBfX0lPIHVpbnQzMl90IFdSUDE0MTU7ICAgICAgICAgIC8qITwgd3JpdGUgcHJvdGVjdGlvbiByZWdpc3RlciAxNCAxNSwgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDg0ICovDQp9IE9CX1R5cGVEZWY7DQoNCi8qKiANCiAgKiBAYnJpZWYgT3BlcmF0aW9uYWwgQW1wbGlmaWVyIChPUEFNUCkNCiAgKi8NCnR5cGVkZWYgc3RydWN0DQp7DQogIF9fSU8gdWludDMyX3QgQ1NSOyAgICAgICAgICAvKiE8IE9QQU1QIGNvbnRyb2wgYW5kIHN0YXR1cyByZWdpc3RlciwgICAgICAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDAwICovDQogIF9fSU8gdWludDMyX3QgT1RSOyAgICAgICAgICAvKiE8IE9QQU1QIG9mZnNldCB0cmltbWluZyByZWdpc3RlciBmb3Igbm9ybWFsIG1vZGUsICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDA0ICovIA0KICBfX0lPIHVpbnQzMl90IExQT1RSOyAgICAgICAgLyohPCBPUEFNUCBvZmZzZXQgdHJpbW1pbmcgcmVnaXN0ZXIgZm9yIGxvdyBwb3dlciBtb2RlLCBBZGRyZXNzIG9mZnNldDogMHgwOCAqLw0KfSBPUEFNUF9UeXBlRGVmOw0KDQp0eXBlZGVmIHN0cnVjdA0Kew0KICBfX0lPIHVpbnQzMl90IENTUjsgICAgICAgICAgLyohPCBPUEFNUCBjb250cm9sIGFuZCBzdGF0dXMgcmVnaXN0ZXIsIHVzZWQgZm9yIGJpdHMgY29tbW9uIHRvIHNldmVyYWwgT1BBTVAgaW5zdGFuY2VzLCAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MDAgKi8NCiAgX19JTyB1aW50MzJfdCBPVFI7ICAgICAgICAgIC8qITwgT1BBTVAgb2Zmc2V0IHRyaW1taW5nIHJlZ2lzdGVyIGZvciBub3JtYWwgbW9kZSwgdXNlZCBmb3IgYml0cyBjb21tb24gdG8gc2V2ZXJhbCBPUEFNUCBpbnN0YW5jZXMsIEFkZHJlc3Mgb2Zmc2V0OiAweDA0ICovIA0KfSBPUEFNUF9Db21tb25fVHlwZURlZjsNCg0KLyoqIA0KICAqIEBicmllZiBHZW5lcmFsIFB1cnBvc2UgSU8NCiAgKi8NCg0KdHlwZWRlZiBzdHJ1Y3QNCnsNCiAgX19JTyB1aW50MzJfdCBNT0RFUjsgICAgICAgIC8qITwgR1BJTyBwb3J0IG1vZGUgcmVnaXN0ZXIsICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MDAgICAgICAqLw0KICBfX0lPIHVpbnQzMl90IE9UWVBFUjsgICAgICAgLyohPCBHUElPIHBvcnQgb3V0cHV0IHR5cGUgcmVnaXN0ZXIsICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgwNCAgICAgICovDQogIF9fSU8gdWludDMyX3QgT1NQRUVEUjsgICAgICAvKiE8IEdQSU8gcG9ydCBvdXRwdXQgc3BlZWQgcmVnaXN0ZXIsICAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDA4ICAgICAgKi8NCiAgX19JTyB1aW50MzJfdCBQVVBEUjsgICAgICAgIC8qITwgR1BJTyBwb3J0IHB1bGwtdXAvcHVsbC1kb3duIHJlZ2lzdGVyLCAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MEMgICAgICAqLw0KICBfX0lPIHVpbnQzMl90IElEUjsgICAgICAgICAgLyohPCBHUElPIHBvcnQgaW5wdXQgZGF0YSByZWdpc3RlciwgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgxMCAgICAgICovDQogIF9fSU8gdWludDMyX3QgT0RSOyAgICAgICAgICAvKiE8IEdQSU8gcG9ydCBvdXRwdXQgZGF0YSByZWdpc3RlciwgICAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDE0ICAgICAgKi8NCiAgX19JTyB1aW50MzJfdCBCU1JSOyAgICAgICAgIC8qITwgR1BJTyBwb3J0IGJpdCBzZXQvcmVzZXQgcmVnaXN0ZXJCU1JSLCAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MTggICAgICAqLw0KICBfX0lPIHVpbnQzMl90IExDS1I7ICAgICAgICAgLyohPCBHUElPIHBvcnQgY29uZmlndXJhdGlvbiBsb2NrIHJlZ2lzdGVyLCAgICAgICBBZGRyZXNzIG9mZnNldDogMHgxQyAgICAgICovDQogIF9fSU8gdWludDMyX3QgQUZSWzJdOyAgICAgICAvKiE8IEdQSU8gYWx0ZXJuYXRlIGZ1bmN0aW9uIHJlZ2lzdGVyLCAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDIwLTB4MjQgKi8NCiAgX19JTyB1aW50MzJfdCBCUlI7ICAgICAgICAgIC8qITwgR1BJTyBiaXQgcmVzZXQgcmVnaXN0ZXIsICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MjggICAgICAqLw0KfSBHUElPX1R5cGVEZWY7DQoNCi8qKiANCiAgKiBAYnJpZWYgU3lzVGVtIENvbmZpZ3VyYXRpb24NCiAgKi8NCg0KdHlwZWRlZiBzdHJ1Y3QNCnsNCiAgX19JTyB1aW50MzJfdCBNRU1STVA7ICAgICAgIC8qITwgU1lTQ0ZHIG1lbW9yeSByZW1hcCByZWdpc3RlciwgICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MDAgICAgICAqLw0KICBfX0lPIHVpbnQzMl90IFBNQzsgICAgICAgICAgLyohPCBTWVNDRkcgcGVyaXBoZXJhbCBtb2RlIGNvbmZpZ3VyYXRpb24gcmVnaXN0ZXIsICAgICBBZGRyZXNzIG9mZnNldDogMHgwNCAgICAgICovDQogIF9fSU8gdWludDMyX3QgRVhUSUNSWzRdOyAgICAvKiE8IFNZU0NGRyBleHRlcm5hbCBpbnRlcnJ1cHQgY29uZmlndXJhdGlvbiByZWdpc3RlcnMsIEFkZHJlc3Mgb2Zmc2V0OiAweDA4LTB4MTQgKi8NCn0gU1lTQ0ZHX1R5cGVEZWY7DQoNCi8qKiANCiAgKiBAYnJpZWYgSW50ZXItaW50ZWdyYXRlZCBDaXJjdWl0IEludGVyZmFjZQ0KICAqLw0KDQp0eXBlZGVmIHN0cnVjdA0Kew0KICBfX0lPIHVpbnQzMl90IENSMTsgICAgICAgICAgLyohPCBJMkMgQ29udHJvbCByZWdpc3RlciAxLCAgICAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgwMCAqLw0KICBfX0lPIHVpbnQzMl90IENSMjsgICAgICAgICAgLyohPCBJMkMgQ29udHJvbCByZWdpc3RlciAyLCAgICAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgwNCAqLw0KICBfX0lPIHVpbnQzMl90IE9BUjE7ICAgICAgICAgLyohPCBJMkMgT3duIGFkZHJlc3MgcmVnaXN0ZXIgMSwgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgwOCAqLw0KICBfX0lPIHVpbnQzMl90IE9BUjI7ICAgICAgICAgLyohPCBJMkMgT3duIGFkZHJlc3MgcmVnaXN0ZXIgMiwgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgwQyAqLw0KICBfX0lPIHVpbnQzMl90IERSOyAgICAgICAgICAgLyohPCBJMkMgRGF0YSByZWdpc3RlciwgICAgICAgICAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgxMCAqLw0KICBfX0lPIHVpbnQzMl90IFNSMTsgICAgICAgICAgLyohPCBJMkMgU3RhdHVzIHJlZ2lzdGVyIDEsICAgICAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgxNCAqLw0KICBfX0lPIHVpbnQzMl90IFNSMjsgICAgICAgICAgLyohPCBJMkMgU3RhdHVzIHJlZ2lzdGVyIDIsICAgICAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgxOCAqLw0KICBfX0lPIHVpbnQzMl90IENDUjsgICAgICAgICAgLyohPCBJMkMgQ2xvY2sgY29udHJvbCByZWdpc3RlciwgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgxQyAqLw0KICBfX0lPIHVpbnQzMl90IFRSSVNFOyAgICAgICAgLyohPCBJMkMgVFJJU0UgcmVnaXN0ZXIsICAgICAgICAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgyMCAqLw0KfSBJMkNfVHlwZURlZjsNCg0KLyoqIA0KICAqIEBicmllZiBJbmRlcGVuZGVudCBXQVRDSERPRw0KICAqLw0KDQp0eXBlZGVmIHN0cnVjdA0Kew0KICBfX0lPIHVpbnQzMl90IEtSOyAgICAgICAgICAgLyohPCBLZXkgcmVnaXN0ZXIsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgwMCAqLw0KICBfX0lPIHVpbnQzMl90IFBSOyAgICAgICAgICAgLyohPCBQcmVzY2FsZXIgcmVnaXN0ZXIsICAgICAgICAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgwNCAqLw0KICBfX0lPIHVpbnQzMl90IFJMUjsgICAgICAgICAgLyohPCBSZWxvYWQgcmVnaXN0ZXIsICAgICAgICAgICAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgwOCAqLw0KICBfX0lPIHVpbnQzMl90IFNSOyAgICAgICAgICAgLyohPCBTdGF0dXMgcmVnaXN0ZXIsICAgICAgICAgICAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgwQyAqLw0KfSBJV0RHX1R5cGVEZWY7DQoNCi8qKiANCiAgKiBAYnJpZWYgTENEDQogICovDQoNCnR5cGVkZWYgc3RydWN0DQp7DQogIF9fSU8gdWludDMyX3QgQ1I7ICAgICAgICAvKiE8IExDRCBjb250cm9sIHJlZ2lzdGVyLCAgICAgICAgICAgICAgICAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDAwICovDQogIF9fSU8gdWludDMyX3QgRkNSOyAgICAgICAvKiE8IExDRCBmcmFtZSBjb250cm9sIHJlZ2lzdGVyLCAgICAgICAgICAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDA0ICovDQogIF9fSU8gdWludDMyX3QgU1I7ICAgICAgICAvKiE8IExDRCBzdGF0dXMgcmVnaXN0ZXIsICAgICAgICAgICAgICAgICAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDA4ICovDQogIF9fSU8gdWludDMyX3QgQ0xSOyAgICAgICAvKiE8IExDRCBjbGVhciByZWdpc3RlciwgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDBDICovDQogIHVpbnQzMl90IFJFU0VSVkVEOyAgICAgICAvKiE8IFJlc2VydmVkLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDEwICovDQogIF9fSU8gdWludDMyX3QgUkFNWzE2XTsgICAvKiE8IExDRCBkaXNwbGF5IG1lbW9yeSwgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDE0LTB4NTAgKi8NCn0gTENEX1R5cGVEZWY7DQoNCi8qKiANCiAgKiBAYnJpZWYgUG93ZXIgQ29udHJvbA0KICAqLw0KDQp0eXBlZGVmIHN0cnVjdA0Kew0KICBfX0lPIHVpbnQzMl90IENSOyAgIC8qITwgUFdSIHBvd2VyIGNvbnRyb2wgcmVnaXN0ZXIsICAgICAgICAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgwMCAqLw0KICBfX0lPIHVpbnQzMl90IENTUjsgIC8qITwgUFdSIHBvd2VyIGNvbnRyb2wvc3RhdHVzIHJlZ2lzdGVyLCAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgwNCAqLw0KfSBQV1JfVHlwZURlZjsNCg0KLyoqIA0KICAqIEBicmllZiBSZXNldCBhbmQgQ2xvY2sgQ29udHJvbA0KICAqLw0KDQp0eXBlZGVmIHN0cnVjdA0Kew0KICBfX0lPIHVpbnQzMl90IENSOyAgICAgICAgICAgIC8qITwgUkNDIGNsb2NrIGNvbnRyb2wgcmVnaXN0ZXIsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgwMCAqLw0KICBfX0lPIHVpbnQzMl90IElDU0NSOyAgICAgICAgIC8qITwgUkNDIEludGVybmFsIGNsb2NrIHNvdXJjZXMgY2FsaWJyYXRpb24gcmVnaXN0ZXIsICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgwNCAqLw0KICBfX0lPIHVpbnQzMl90IENGR1I7ICAgICAgICAgIC8qITwgUkNDIENsb2NrIGNvbmZpZ3VyYXRpb24gcmVnaXN0ZXIsICAgICAgICAgICAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgwOCAqLw0KICBfX0lPIHVpbnQzMl90IENJUjsgICAgICAgICAgIC8qITwgUkNDIENsb2NrIGludGVycnVwdCByZWdpc3RlciwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgwQyAqLw0KICBfX0lPIHVpbnQzMl90IEFIQlJTVFI7ICAgICAgIC8qITwgUkNDIEFIQiBwZXJpcGhlcmFsIHJlc2V0IHJlZ2lzdGVyLCAgICAgICAgICAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgxMCAqLw0KICBfX0lPIHVpbnQzMl90IEFQQjJSU1RSOyAgICAgIC8qITwgUkNDIEFQQjIgcGVyaXBoZXJhbCByZXNldCByZWdpc3RlciwgICAgICAgICAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgxNCAqLw0KICBfX0lPIHVpbnQzMl90IEFQQjFSU1RSOyAgICAgIC8qITwgUkNDIEFQQjEgcGVyaXBoZXJhbCByZXNldCByZWdpc3RlciwgICAgICAgICAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgxOCAqLw0KICBfX0lPIHVpbnQzMl90IEFIQkVOUjsgICAgICAgIC8qITwgUkNDIEFIQiBwZXJpcGhlcmFsIGNsb2NrIGVuYWJsZSByZWdpc3RlciwgICAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgxQyAqLw0KICBfX0lPIHVpbnQzMl90IEFQQjJFTlI7ICAgICAgIC8qITwgUkNDIEFQQjIgcGVyaXBoZXJhbCBjbG9jayBlbmFibGUgcmVnaXN0ZXIsICAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgyMCAqLw0KICBfX0lPIHVpbnQzMl90IEFQQjFFTlI7ICAgICAgIC8qITwgUkNDIEFQQjEgcGVyaXBoZXJhbCBjbG9jayBlbmFibGUgcmVnaXN0ZXIsICAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgyNCAqLw0KICBfX0lPIHVpbnQzMl90IEFIQkxQRU5SOyAgICAgIC8qITwgUkNDIEFIQiBwZXJpcGhlcmFsIGNsb2NrIGVuYWJsZSBpbiBsb3cgcG93ZXIgbW9kZSByZWdpc3RlciwgICBBZGRyZXNzIG9mZnNldDogMHgyOCAqLw0KICBfX0lPIHVpbnQzMl90IEFQQjJMUEVOUjsgICAgIC8qITwgUkNDIEFQQjIgcGVyaXBoZXJhbCBjbG9jayBlbmFibGUgaW4gbG93IHBvd2VyIG1vZGUgcmVnaXN0ZXIsICBBZGRyZXNzIG9mZnNldDogMHgyQyAqLw0KICBfX0lPIHVpbnQzMl90IEFQQjFMUEVOUjsgICAgIC8qITwgUkNDIEFQQjEgcGVyaXBoZXJhbCBjbG9jayBlbmFibGUgaW4gbG93IHBvd2VyIG1vZGUgcmVnaXN0ZXIsICBBZGRyZXNzIG9mZnNldDogMHgzMCAqLw0KICBfX0lPIHVpbnQzMl90IENTUjsgICAgICAgICAgIC8qITwgUkNDIENvbnRyb2wvc3RhdHVzIHJlZ2lzdGVyLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgzNCAqLw0KfSBSQ0NfVHlwZURlZjsNCg0KLyoqIA0KICAqIEBicmllZiBSb3V0aW5nIEludGVyZmFjZSANCiAgKi8NCg0KdHlwZWRlZiBzdHJ1Y3QNCnsNCiAgX19JTyB1aW50MzJfdCBJQ1I7ICAgICAgICAvKiE8IFJJIGlucHV0IGNhcHR1cmUgcmVnaXN0ZXIsICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MDAgKi8NCiAgX19JTyB1aW50MzJfdCBBU0NSMTsgICAgICAvKiE8IFJJIGFuYWxvZyBzd2l0Y2hlcyBjb250cm9sIHJlZ2lzdGVyLCAgICAgICBBZGRyZXNzIG9mZnNldDogMHgwNCAqLw0KICBfX0lPIHVpbnQzMl90IEFTQ1IyOyAgICAgIC8qITwgUkkgYW5hbG9nIHN3aXRjaCBjb250cm9sIHJlZ2lzdGVyIDIsICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgwOCAqLw0KICBfX0lPIHVpbnQzMl90IEhZU0NSMTsgICAgIC8qITwgUkkgaHlzdGVyZXNpcyBjb250cm9sIHJlZ2lzdGVyLCAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgwQyAqLw0KICBfX0lPIHVpbnQzMl90IEhZU0NSMjsgICAgIC8qITwgUkkgSHlzdGVyZXNpcyBjb250cm9sIHJlZ2lzdGVyLCAgICAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDEwICovDQogIF9fSU8gdWludDMyX3QgSFlTQ1IzOyAgICAgLyohPCBSSSBIeXN0ZXJlc2lzIGNvbnRyb2wgcmVnaXN0ZXIsICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MTQgKi8NCiAgX19JTyB1aW50MzJfdCBIWVNDUjQ7ICAgICAvKiE8IFJJIEh5c3RlcmVzaXMgY29udHJvbCByZWdpc3RlciwgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgxOCAqLw0KICBfX0lPIHVpbnQzMl90IEFTTVIxOyAgICAgIC8qITwgUkkgQW5hbG9nIHN3aXRjaCBtb2RlIHJlZ2lzdGVyIDEsICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MUMgKi8NCiAgX19JTyB1aW50MzJfdCBDTVIxOyAgICAgICAvKiE8IFJJIENoYW5uZWwgbWFzayByZWdpc3RlciAxLCAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgyMCAqLw0KICBfX0lPIHVpbnQzMl90IENJQ1IxOyAgICAgIC8qITwgUkkgQ2hhbm5lbCBJZGVuIGZvciBjYXB0dXJlIHJlZ2lzdGVyIDEsICBBZGRyZXNzIG9mZnNldDogMHgyNCAqLw0KICBfX0lPIHVpbnQzMl90IEFTTVIyOyAgICAgIC8qITwgUkkgQW5hbG9nIHN3aXRjaCBtb2RlIHJlZ2lzdGVyIDIsICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MjggKi8NCiAgX19JTyB1aW50MzJfdCBDTVIyOyAgICAgICAvKiE8IFJJIENoYW5uZWwgbWFzayByZWdpc3RlciAyLCAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgyQyAqLw0KICBfX0lPIHVpbnQzMl90IENJQ1IyOyAgICAgIC8qITwgUkkgQ2hhbm5lbCBJZGVuIGZvciBjYXB0dXJlIHJlZ2lzdGVyIDIsICBBZGRyZXNzIG9mZnNldDogMHgzMCAqLw0KICBfX0lPIHVpbnQzMl90IEFTTVIzOyAgICAgIC8qITwgUkkgQW5hbG9nIHN3aXRjaCBtb2RlIHJlZ2lzdGVyIDMsICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MzQgKi8NCiAgX19JTyB1aW50MzJfdCBDTVIzOyAgICAgICAvKiE8IFJJIENoYW5uZWwgbWFzayByZWdpc3RlciAzLCAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgzOCAqLw0KICBfX0lPIHVpbnQzMl90IENJQ1IzOyAgICAgIC8qITwgUkkgQ2hhbm5lbCBJZGVuIGZvciBjYXB0dXJlIHJlZ2lzdGVyIDMsICBBZGRyZXNzIG9mZnNldDogMHgzQyAqLw0KICBfX0lPIHVpbnQzMl90IEFTTVI0OyAgICAgIC8qITwgUkkgQW5hbG9nIHN3aXRjaCBtb2RlIHJlZ2lzdGVyIDQsICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4NDAgKi8NCiAgX19JTyB1aW50MzJfdCBDTVI0OyAgICAgICAvKiE8IFJJIENoYW5uZWwgbWFzayByZWdpc3RlciA0LCAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHg0NCAqLw0KICBfX0lPIHVpbnQzMl90IENJQ1I0OyAgICAgIC8qITwgUkkgQ2hhbm5lbCBJZGVuIGZvciBjYXB0dXJlIHJlZ2lzdGVyIDQsICBBZGRyZXNzIG9mZnNldDogMHg0OCAqLw0KICBfX0lPIHVpbnQzMl90IEFTTVI1OyAgICAgIC8qITwgUkkgQW5hbG9nIHN3aXRjaCBtb2RlIHJlZ2lzdGVyIDUsICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4NEMgKi8NCiAgX19JTyB1aW50MzJfdCBDTVI1OyAgICAgICAvKiE8IFJJIENoYW5uZWwgbWFzayByZWdpc3RlciA1LCAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHg1MCAqLw0KICBfX0lPIHVpbnQzMl90IENJQ1I1OyAgICAgIC8qITwgUkkgQ2hhbm5lbCBJZGVuIGZvciBjYXB0dXJlIHJlZ2lzdGVyIDUsICBBZGRyZXNzIG9mZnNldDogMHg1NCAqLw0KfSBSSV9UeXBlRGVmOw0KDQovKiogDQogICogQGJyaWVmIFJlYWwtVGltZSBDbG9jaw0KICAqLw0KdHlwZWRlZiBzdHJ1Y3QNCnsNCiAgX19JTyB1aW50MzJfdCBUUjsgICAgICAgICAvKiE8IFJUQyB0aW1lIHJlZ2lzdGVyLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MDAgKi8NCiAgX19JTyB1aW50MzJfdCBEUjsgICAgICAgICAvKiE8IFJUQyBkYXRlIHJlZ2lzdGVyLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MDQgKi8NCiAgX19JTyB1aW50MzJfdCBDUjsgICAgICAgICAvKiE8IFJUQyBjb250cm9sIHJlZ2lzdGVyLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MDggKi8gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KICBfX0lPIHVpbnQzMl90IElTUjsgICAgICAgIC8qITwgUlRDIGluaXRpYWxpemF0aW9uIGFuZCBzdGF0dXMgcmVnaXN0ZXIsICAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgwQyAqLw0KICBfX0lPIHVpbnQzMl90IFBSRVI7ICAgICAgIC8qITwgUlRDIHByZXNjYWxlciByZWdpc3RlciwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgxMCAqLw0KICBfX0lPIHVpbnQzMl90IFdVVFI7ICAgICAgIC8qITwgUlRDIHdha2V1cCB0aW1lciByZWdpc3RlciwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgxNCAqLw0KICBfX0lPIHVpbnQzMl90IENBTElCUjsgICAgIC8qITwgUlRDIGNhbGlicmF0aW9uIHJlZ2lzdGVyLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgxOCAqLw0KICBfX0lPIHVpbnQzMl90IEFMUk1BUjsgICAgIC8qITwgUlRDIGFsYXJtIEEgcmVnaXN0ZXIsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgxQyAqLw0KICBfX0lPIHVpbnQzMl90IEFMUk1CUjsgICAgIC8qITwgUlRDIGFsYXJtIEIgcmVnaXN0ZXIsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgyMCAqLw0KICBfX0lPIHVpbnQzMl90IFdQUjsgICAgICAgIC8qITwgUlRDIHdyaXRlIHByb3RlY3Rpb24gcmVnaXN0ZXIsICAgICAgICAgICAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgyNCAqLw0KICBfX0lPIHVpbnQzMl90IFNTUjsgICAgICAgIC8qITwgUlRDIHN1YiBzZWNvbmQgcmVnaXN0ZXIsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgyOCAqLw0KICBfX0lPIHVpbnQzMl90IFNISUZUUjsgICAgIC8qITwgUlRDIHNoaWZ0IGNvbnRyb2wgcmVnaXN0ZXIsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgyQyAqLw0KICBfX0lPIHVpbnQzMl90IFRTVFI7ICAgICAgIC8qITwgUlRDIHRpbWUgc3RhbXAgdGltZSByZWdpc3RlciwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgzMCAqLw0KICBfX0lPIHVpbnQzMl90IFRTRFI7ICAgICAgIC8qITwgUlRDIHRpbWUgc3RhbXAgZGF0ZSByZWdpc3RlciwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgzNCAqLw0KICBfX0lPIHVpbnQzMl90IFRTU1NSOyAgICAgIC8qITwgUlRDIHRpbWUtc3RhbXAgc3ViIHNlY29uZCByZWdpc3RlciwgICAgICAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgzOCAqLw0KICBfX0lPIHVpbnQzMl90IENBTFI7ICAgICAgIC8qITwgUlJUQyBjYWxpYnJhdGlvbiByZWdpc3RlciwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgzQyAqLw0KICBfX0lPIHVpbnQzMl90IFRBRkNSOyAgICAgIC8qITwgUlRDIHRhbXBlciBhbmQgYWx0ZXJuYXRlIGZ1bmN0aW9uIGNvbmZpZ3VyYXRpb24gcmVnaXN0ZXIsICBBZGRyZXNzIG9mZnNldDogMHg0MCAqLw0KICBfX0lPIHVpbnQzMl90IEFMUk1BU1NSOyAgIC8qITwgUlRDIGFsYXJtIEEgc3ViIHNlY29uZCByZWdpc3RlciwgICAgICAgICAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHg0NCAqLw0KICBfX0lPIHVpbnQzMl90IEFMUk1CU1NSOyAgIC8qITwgUlRDIGFsYXJtIEIgc3ViIHNlY29uZCByZWdpc3RlciwgICAgICAgICAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHg0OCAqLw0KICB1aW50MzJfdCBSRVNFUlZFRDc7ICAgICAgIC8qITwgUmVzZXJ2ZWQsIDB4NEMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLw0KICBfX0lPIHVpbnQzMl90IEJLUDBSOyAgICAgIC8qITwgUlRDIGJhY2t1cCByZWdpc3RlciAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHg1MCAqLw0KICBfX0lPIHVpbnQzMl90IEJLUDFSOyAgICAgIC8qITwgUlRDIGJhY2t1cCByZWdpc3RlciAxLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHg1NCAqLw0KICBfX0lPIHVpbnQzMl90IEJLUDJSOyAgICAgIC8qITwgUlRDIGJhY2t1cCByZWdpc3RlciAyLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHg1OCAqLw0KICBfX0lPIHVpbnQzMl90IEJLUDNSOyAgICAgIC8qITwgUlRDIGJhY2t1cCByZWdpc3RlciAzLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHg1QyAqLw0KICBfX0lPIHVpbnQzMl90IEJLUDRSOyAgICAgIC8qITwgUlRDIGJhY2t1cCByZWdpc3RlciA0LCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHg2MCAqLw0KICBfX0lPIHVpbnQzMl90IEJLUDVSOyAgICAgIC8qITwgUlRDIGJhY2t1cCByZWdpc3RlciA1LCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHg2NCAqLw0KICBfX0lPIHVpbnQzMl90IEJLUDZSOyAgICAgIC8qITwgUlRDIGJhY2t1cCByZWdpc3RlciA2LCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHg2OCAqLw0KICBfX0lPIHVpbnQzMl90IEJLUDdSOyAgICAgIC8qITwgUlRDIGJhY2t1cCByZWdpc3RlciA3LCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHg2QyAqLw0KICBfX0lPIHVpbnQzMl90IEJLUDhSOyAgICAgIC8qITwgUlRDIGJhY2t1cCByZWdpc3RlciA4LCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHg3MCAqLw0KICBfX0lPIHVpbnQzMl90IEJLUDlSOyAgICAgIC8qITwgUlRDIGJhY2t1cCByZWdpc3RlciA5LCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHg3NCAqLw0KICBfX0lPIHVpbnQzMl90IEJLUDEwUjsgICAgIC8qITwgUlRDIGJhY2t1cCByZWdpc3RlciAxMCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHg3OCAqLw0KICBfX0lPIHVpbnQzMl90IEJLUDExUjsgICAgIC8qITwgUlRDIGJhY2t1cCByZWdpc3RlciAxMSwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHg3QyAqLw0KICBfX0lPIHVpbnQzMl90IEJLUDEyUjsgICAgIC8qITwgUlRDIGJhY2t1cCByZWdpc3RlciAxMiwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHg4MCAqLw0KICBfX0lPIHVpbnQzMl90IEJLUDEzUjsgICAgIC8qITwgUlRDIGJhY2t1cCByZWdpc3RlciAxMywgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHg4NCAqLw0KICBfX0lPIHVpbnQzMl90IEJLUDE0UjsgICAgIC8qITwgUlRDIGJhY2t1cCByZWdpc3RlciAxNCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHg4OCAqLw0KICBfX0lPIHVpbnQzMl90IEJLUDE1UjsgICAgIC8qITwgUlRDIGJhY2t1cCByZWdpc3RlciAxNSwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHg4QyAqLw0KICBfX0lPIHVpbnQzMl90IEJLUDE2UjsgICAgIC8qITwgUlRDIGJhY2t1cCByZWdpc3RlciAxNiwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHg5MCAqLw0KICBfX0lPIHVpbnQzMl90IEJLUDE3UjsgICAgIC8qITwgUlRDIGJhY2t1cCByZWdpc3RlciAxNywgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHg5NCAqLw0KICBfX0lPIHVpbnQzMl90IEJLUDE4UjsgICAgIC8qITwgUlRDIGJhY2t1cCByZWdpc3RlciAxOCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHg5OCAqLw0KICBfX0lPIHVpbnQzMl90IEJLUDE5UjsgICAgIC8qITwgUlRDIGJhY2t1cCByZWdpc3RlciAxOSwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHg5QyAqLw0KICBfX0lPIHVpbnQzMl90IEJLUDIwUjsgICAgIC8qITwgUlRDIGJhY2t1cCByZWdpc3RlciAyMCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHhBMCAqLw0KICBfX0lPIHVpbnQzMl90IEJLUDIxUjsgICAgIC8qITwgUlRDIGJhY2t1cCByZWdpc3RlciAyMSwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHhBNCAqLw0KICBfX0lPIHVpbnQzMl90IEJLUDIyUjsgICAgIC8qITwgUlRDIGJhY2t1cCByZWdpc3RlciAyMiwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHhBOCAqLw0KICBfX0lPIHVpbnQzMl90IEJLUDIzUjsgICAgIC8qITwgUlRDIGJhY2t1cCByZWdpc3RlciAyMywgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHhBQyAqLw0KICBfX0lPIHVpbnQzMl90IEJLUDI0UjsgICAgIC8qITwgUlRDIGJhY2t1cCByZWdpc3RlciAyNCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHhCMCAqLw0KICBfX0lPIHVpbnQzMl90IEJLUDI1UjsgICAgIC8qITwgUlRDIGJhY2t1cCByZWdpc3RlciAyNSwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHhCNCAqLw0KICBfX0lPIHVpbnQzMl90IEJLUDI2UjsgICAgIC8qITwgUlRDIGJhY2t1cCByZWdpc3RlciAyNiwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHhCOCAqLw0KICBfX0lPIHVpbnQzMl90IEJLUDI3UjsgICAgIC8qITwgUlRDIGJhY2t1cCByZWdpc3RlciAyNywgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHhCQyAqLw0KICBfX0lPIHVpbnQzMl90IEJLUDI4UjsgICAgIC8qITwgUlRDIGJhY2t1cCByZWdpc3RlciAyOCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHhDMCAqLw0KICBfX0lPIHVpbnQzMl90IEJLUDI5UjsgICAgIC8qITwgUlRDIGJhY2t1cCByZWdpc3RlciAyOSwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHhDNCAqLw0KICBfX0lPIHVpbnQzMl90IEJLUDMwUjsgICAgIC8qITwgUlRDIGJhY2t1cCByZWdpc3RlciAzMCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHhDOCAqLw0KICBfX0lPIHVpbnQzMl90IEJLUDMxUjsgICAgIC8qITwgUlRDIGJhY2t1cCByZWdpc3RlciAzMSwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHhDQyAqLw0KfSBSVENfVHlwZURlZjsNCg0KLyoqIA0KICAqIEBicmllZiBTZXJpYWwgUGVyaXBoZXJhbCBJbnRlcmZhY2UNCiAgKi8NCg0KdHlwZWRlZiBzdHJ1Y3QNCnsNCiAgX19JTyB1aW50MzJfdCBDUjE7ICAgICAgICAvKiE8IFNQSSBDb250cm9sIHJlZ2lzdGVyIDEgKG5vdCB1c2VkIGluIEkyUyBtb2RlKSwgICAgICBBZGRyZXNzIG9mZnNldDogMHgwMCAqLw0KICBfX0lPIHVpbnQzMl90IENSMjsgICAgICAgIC8qITwgU1BJIENvbnRyb2wgcmVnaXN0ZXIgMiwgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDA0ICovDQogIF9fSU8gdWludDMyX3QgU1I7ICAgICAgICAgLyohPCBTUEkgU3RhdHVzIHJlZ2lzdGVyLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MDggKi8NCiAgX19JTyB1aW50MzJfdCBEUjsgICAgICAgICAvKiE8IFNQSSBkYXRhIHJlZ2lzdGVyLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgwQyAqLw0KICBfX0lPIHVpbnQzMl90IENSQ1BSOyAgICAgIC8qITwgU1BJIENSQyBwb2x5bm9taWFsIHJlZ2lzdGVyIChub3QgdXNlZCBpbiBJMlMgbW9kZSksIEFkZHJlc3Mgb2Zmc2V0OiAweDEwICovDQogIF9fSU8gdWludDMyX3QgUlhDUkNSOyAgICAgLyohPCBTUEkgUnggQ1JDIHJlZ2lzdGVyIChub3QgdXNlZCBpbiBJMlMgbW9kZSksICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MTQgKi8NCiAgX19JTyB1aW50MzJfdCBUWENSQ1I7ICAgICAvKiE8IFNQSSBUeCBDUkMgcmVnaXN0ZXIgKG5vdCB1c2VkIGluIEkyUyBtb2RlKSwgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgxOCAqLw0KICBfX0lPIHVpbnQzMl90IEkyU0NGR1I7ICAgIC8qITwgU1BJX0kyUyBjb25maWd1cmF0aW9uIHJlZ2lzdGVyLCAgICAgICAgICAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDFDICovDQogIF9fSU8gdWludDMyX3QgSTJTUFI7ICAgICAgLyohPCBTUElfSTJTIHByZXNjYWxlciByZWdpc3RlciwgICAgICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MjAgKi8NCn0gU1BJX1R5cGVEZWY7DQoNCi8qKiANCiAgKiBAYnJpZWYgVElNDQogICovDQp0eXBlZGVmIHN0cnVjdA0Kew0KICBfX0lPIHVpbnQzMl90IENSMTsgICAgICAgICAgLyohPCBUSU0gY29udHJvbCByZWdpc3RlciAxLCAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MDAgKi8NCiAgX19JTyB1aW50MzJfdCBDUjI7ICAgICAgICAgIC8qITwgVElNIGNvbnRyb2wgcmVnaXN0ZXIgMiwgICAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDA0ICovDQogIF9fSU8gdWludDMyX3QgU01DUjsgICAgICAgICAvKiE8IFRJTSBzbGF2ZSBNb2RlIENvbnRyb2wgcmVnaXN0ZXIsICAgICBBZGRyZXNzIG9mZnNldDogMHgwOCAqLw0KICBfX0lPIHVpbnQzMl90IERJRVI7ICAgICAgICAgLyohPCBUSU0gRE1BL2ludGVycnVwdCBlbmFibGUgcmVnaXN0ZXIsICAgQWRkcmVzcyBvZmZzZXQ6IDB4MEMgKi8NCiAgX19JTyB1aW50MzJfdCBTUjsgICAgICAgICAgIC8qITwgVElNIHN0YXR1cyByZWdpc3RlciwgICAgICAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDEwICovDQogIF9fSU8gdWludDMyX3QgRUdSOyAgICAgICAgICAvKiE8IFRJTSBldmVudCBnZW5lcmF0aW9uIHJlZ2lzdGVyLCAgICAgICBBZGRyZXNzIG9mZnNldDogMHgxNCAqLw0KICBfX0lPIHVpbnQzMl90IENDTVIxOyAgICAgICAgLyohPCBUSU0gY2FwdHVyZS9jb21wYXJlIG1vZGUgcmVnaXN0ZXIgMSwgQWRkcmVzcyBvZmZzZXQ6IDB4MTggKi8NCiAgX19JTyB1aW50MzJfdCBDQ01SMjsgICAgICAgIC8qITwgVElNIGNhcHR1cmUvY29tcGFyZSBtb2RlIHJlZ2lzdGVyIDIsIEFkZHJlc3Mgb2Zmc2V0OiAweDFDICovDQogIF9fSU8gdWludDMyX3QgQ0NFUjsgICAgICAgICAvKiE8IFRJTSBjYXB0dXJlL2NvbXBhcmUgZW5hYmxlIHJlZ2lzdGVyLCBBZGRyZXNzIG9mZnNldDogMHgyMCAqLw0KICBfX0lPIHVpbnQzMl90IENOVDsgICAgICAgICAgLyohPCBUSU0gY291bnRlciByZWdpc3RlciwgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MjQgKi8NCiAgX19JTyB1aW50MzJfdCBQU0M7ICAgICAgICAgIC8qITwgVElNIHByZXNjYWxlciByZWdpc3RlciwgICAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDI4ICovDQogIF9fSU8gdWludDMyX3QgQVJSOyAgICAgICAgICAvKiE8IFRJTSBhdXRvLXJlbG9hZCByZWdpc3RlciwgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgyQyAqLw0KICB1aW50MzJfdCAgICAgIFJFU0VSVkVEMTI7ICAgLyohPCBSZXNlcnZlZCwgMHgzMCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8gICAgDQogIF9fSU8gdWludDMyX3QgQ0NSMTsgICAgICAgICAvKiE8IFRJTSBjYXB0dXJlL2NvbXBhcmUgcmVnaXN0ZXIgMSwgICAgICBBZGRyZXNzIG9mZnNldDogMHgzNCAqLyAgICANCiAgX19JTyB1aW50MzJfdCBDQ1IyOyAgICAgICAgIC8qITwgVElNIGNhcHR1cmUvY29tcGFyZSByZWdpc3RlciAyLCAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDM4ICovICAgIA0KICBfX0lPIHVpbnQzMl90IENDUjM7ICAgICAgICAgLyohPCBUSU0gY2FwdHVyZS9jb21wYXJlIHJlZ2lzdGVyIDMsICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4M0MgKi8NCiAgX19JTyB1aW50MzJfdCBDQ1I0OyAgICAgICAgIC8qITwgVElNIGNhcHR1cmUvY29tcGFyZSByZWdpc3RlciA0LCAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDQwICovDQogIHVpbnQzMl90ICAgICAgUkVTRVJWRUQxNzsgICAvKiE8IFJlc2VydmVkLCAweDQ0ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLyANCiAgX19JTyB1aW50MzJfdCBEQ1I7ICAgICAgICAgIC8qITwgVElNIERNQSBjb250cm9sIHJlZ2lzdGVyLCAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDQ4ICovDQogIF9fSU8gdWludDMyX3QgRE1BUjsgICAgICAgICAvKiE8IFRJTSBETUEgYWRkcmVzcyBmb3IgZnVsbCB0cmFuc2ZlciwgICBBZGRyZXNzIG9mZnNldDogMHg0QyAqLw0KICBfX0lPIHVpbnQzMl90IE9SOyAgICAgICAgICAgLyohPCBUSU0gb3B0aW9uIHJlZ2lzdGVyLCAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4NTAgKi8NCn0gVElNX1R5cGVEZWY7DQovKiogDQogICogQGJyaWVmIFVuaXZlcnNhbCBTeW5jaHJvbm91cyBBc3luY2hyb25vdXMgUmVjZWl2ZXIgVHJhbnNtaXR0ZXINCiAgKi8NCiANCnR5cGVkZWYgc3RydWN0DQp7DQogIF9fSU8gdWludDMyX3QgU1I7ICAgICAgICAgLyohPCBVU0FSVCBTdGF0dXMgcmVnaXN0ZXIsICAgICAgICAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDAwICovDQogIF9fSU8gdWludDMyX3QgRFI7ICAgICAgICAgLyohPCBVU0FSVCBEYXRhIHJlZ2lzdGVyLCAgICAgICAgICAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDA0ICovDQogIF9fSU8gdWludDMyX3QgQlJSOyAgICAgICAgLyohPCBVU0FSVCBCYXVkIHJhdGUgcmVnaXN0ZXIsICAgICAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDA4ICovDQogIF9fSU8gdWludDMyX3QgQ1IxOyAgICAgICAgLyohPCBVU0FSVCBDb250cm9sIHJlZ2lzdGVyIDEsICAgICAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDBDICovDQogIF9fSU8gdWludDMyX3QgQ1IyOyAgICAgICAgLyohPCBVU0FSVCBDb250cm9sIHJlZ2lzdGVyIDIsICAgICAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDEwICovDQogIF9fSU8gdWludDMyX3QgQ1IzOyAgICAgICAgLyohPCBVU0FSVCBDb250cm9sIHJlZ2lzdGVyIDMsICAgICAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDE0ICovDQogIF9fSU8gdWludDMyX3QgR1RQUjsgICAgICAgLyohPCBVU0FSVCBHdWFyZCB0aW1lIGFuZCBwcmVzY2FsZXIgcmVnaXN0ZXIsIEFkZHJlc3Mgb2Zmc2V0OiAweDE4ICovDQp9IFVTQVJUX1R5cGVEZWY7DQoNCi8qKiANCiAgKiBAYnJpZWYgVW5pdmVyc2FsIFNlcmlhbCBCdXMgRnVsbCBTcGVlZCBEZXZpY2UNCiAgKi8NCiAgDQp0eXBlZGVmIHN0cnVjdA0Kew0KICBfX0lPIHVpbnQxNl90IEVQMFI7ICAgICAgICAgICAgLyohPCBVU0IgRW5kcG9pbnQgMCByZWdpc3RlciwgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MDAgKi8gDQogIF9fSU8gdWludDE2X3QgUkVTRVJWRUQwOyAgICAgICAvKiE8IFJlc2VydmVkICovICAgICANCiAgX19JTyB1aW50MTZfdCBFUDFSOyAgICAgICAgICAgIC8qITwgVVNCIEVuZHBvaW50IDEgcmVnaXN0ZXIsICAgICAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDA0ICovDQogIF9fSU8gdWludDE2X3QgUkVTRVJWRUQxOyAgICAgICAvKiE8IFJlc2VydmVkICovICAgICAgIA0KICBfX0lPIHVpbnQxNl90IEVQMlI7ICAgICAgICAgICAgLyohPCBVU0IgRW5kcG9pbnQgMiByZWdpc3RlciwgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MDggKi8NCiAgX19JTyB1aW50MTZfdCBSRVNFUlZFRDI7ICAgICAgIC8qITwgUmVzZXJ2ZWQgKi8gICAgICAgDQogIF9fSU8gdWludDE2X3QgRVAzUjsgICAgICAgICAgICAvKiE8IFVTQiBFbmRwb2ludCAzIHJlZ2lzdGVyLCAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgwQyAqLyANCiAgX19JTyB1aW50MTZfdCBSRVNFUlZFRDM7ICAgICAgIC8qITwgUmVzZXJ2ZWQgKi8gICAgICAgDQogIF9fSU8gdWludDE2X3QgRVA0UjsgICAgICAgICAgICAvKiE8IFVTQiBFbmRwb2ludCA0IHJlZ2lzdGVyLCAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgxMCAqLw0KICBfX0lPIHVpbnQxNl90IFJFU0VSVkVENDsgICAgICAgLyohPCBSZXNlcnZlZCAqLyAgICAgICANCiAgX19JTyB1aW50MTZfdCBFUDVSOyAgICAgICAgICAgIC8qITwgVVNCIEVuZHBvaW50IDUgcmVnaXN0ZXIsICAgICAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDE0ICovDQogIF9fSU8gdWludDE2X3QgUkVTRVJWRUQ1OyAgICAgICAvKiE8IFJlc2VydmVkICovICAgICAgIA0KICBfX0lPIHVpbnQxNl90IEVQNlI7ICAgICAgICAgICAgLyohPCBVU0IgRW5kcG9pbnQgNiByZWdpc3RlciwgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MTggKi8NCiAgX19JTyB1aW50MTZfdCBSRVNFUlZFRDY7ICAgICAgIC8qITwgUmVzZXJ2ZWQgKi8gICAgICAgDQogIF9fSU8gdWludDE2X3QgRVA3UjsgICAgICAgICAgICAvKiE8IFVTQiBFbmRwb2ludCA3IHJlZ2lzdGVyLCAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgxQyAqLw0KICBfX0lPIHVpbnQxNl90IFJFU0VSVkVEN1sxN107ICAgLyohPCBSZXNlcnZlZCAqLyAgICAgDQogIF9fSU8gdWludDE2X3QgQ05UUjsgICAgICAgICAgICAvKiE8IENvbnRyb2wgcmVnaXN0ZXIsICAgICAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHg0MCAqLw0KICBfX0lPIHVpbnQxNl90IFJFU0VSVkVEODsgICAgICAgLyohPCBSZXNlcnZlZCAqLyAgICAgICANCiAgX19JTyB1aW50MTZfdCBJU1RSOyAgICAgICAgICAgIC8qITwgSW50ZXJydXB0IHN0YXR1cyByZWdpc3RlciwgICAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDQ0ICovDQogIF9fSU8gdWludDE2X3QgUkVTRVJWRUQ5OyAgICAgICAvKiE8IFJlc2VydmVkICovICAgICAgIA0KICBfX0lPIHVpbnQxNl90IEZOUjsgICAgICAgICAgICAgLyohPCBGcmFtZSBudW1iZXIgcmVnaXN0ZXIsICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4NDggKi8NCiAgX19JTyB1aW50MTZfdCBSRVNFUlZFREE7ICAgICAgIC8qITwgUmVzZXJ2ZWQgKi8gICAgICAgDQogIF9fSU8gdWludDE2X3QgREFERFI7ICAgICAgICAgICAvKiE8IERldmljZSBhZGRyZXNzIHJlZ2lzdGVyLCAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHg0QyAqLw0KICBfX0lPIHVpbnQxNl90IFJFU0VSVkVEQjsgICAgICAgLyohPCBSZXNlcnZlZCAqLyAgICAgICANCiAgX19JTyB1aW50MTZfdCBCVEFCTEU7ICAgICAgICAgIC8qITwgQnVmZmVyIFRhYmxlIGFkZHJlc3MgcmVnaXN0ZXIsICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDUwICovDQogIF9fSU8gdWludDE2X3QgUkVTRVJWRURDOyAgICAgICAvKiE8IFJlc2VydmVkICovICAgICAgIA0KfSBVU0JfVHlwZURlZjsNCg0KLyoqIA0KICAqIEBicmllZiBXaW5kb3cgV0FUQ0hET0cNCiAgKi8NCnR5cGVkZWYgc3RydWN0DQp7DQogIF9fSU8gdWludDMyX3QgQ1I7ICAgLyohPCBXV0RHIENvbnRyb2wgcmVnaXN0ZXIsICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDAwICovDQogIF9fSU8gdWludDMyX3QgQ0ZSOyAgLyohPCBXV0RHIENvbmZpZ3VyYXRpb24gcmVnaXN0ZXIsIEFkZHJlc3Mgb2Zmc2V0OiAweDA0ICovDQogIF9fSU8gdWludDMyX3QgU1I7ICAgLyohPCBXV0RHIFN0YXR1cyByZWdpc3RlciwgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDA4ICovDQp9IFdXREdfVHlwZURlZjsNCg0KLyoqIA0KICAqIEBicmllZiBVbml2ZXJzYWwgU2VyaWFsIEJ1cyBGdWxsIFNwZWVkIERldmljZQ0KICAqLw0KLyoqIA0KICAqIEB9DQogICovDQogIA0KLyoqIEBhZGR0b2dyb3VwIFBlcmlwaGVyYWxfbWVtb3J5X21hcA0KICAqIEB7DQogICovDQoNCiNkZWZpbmUgRkxBU0hfQkFTRSAgICAgICAgICAgICgodWludDMyX3QpMHgwODAwMDAwMFUpICAgICAgICAgICAgICAvKiE8IEZMQVNIIGJhc2UgYWRkcmVzcyBpbiB0aGUgYWxpYXMgcmVnaW9uICovDQojZGVmaW5lIEZMQVNIX0VFUFJPTV9CQVNFICAgICAoKHVpbnQzMl90KShGTEFTSF9CQVNFICsgMHg4MDAwMFUpKSAgLyohPCBGTEFTSCBFRVBST00gYmFzZSBhZGRyZXNzIGluIHRoZSBhbGlhcyByZWdpb24gKi8NCiNkZWZpbmUgU1JBTV9CQVNFICAgICAgICAgICAgICgodWludDMyX3QpMHgyMDAwMDAwMFUpICAgICAgICAgICAgICAvKiE8IFNSQU0gYmFzZSBhZGRyZXNzIGluIHRoZSBhbGlhcyByZWdpb24gKi8NCiNkZWZpbmUgUEVSSVBIX0JBU0UgICAgICAgICAgICgodWludDMyX3QpMHg0MDAwMDAwMFUpICAgICAgICAgICAgICAvKiE8IFBlcmlwaGVyYWwgYmFzZSBhZGRyZXNzIGluIHRoZSBhbGlhcyByZWdpb24gKi8NCiNkZWZpbmUgU1JBTV9CQl9CQVNFICAgICAgICAgICgodWludDMyX3QpMHgyMjAwMDAwMFUpICAgICAgICAgICAgICAvKiE8IFNSQU0gYmFzZSBhZGRyZXNzIGluIHRoZSBiaXQtYmFuZCByZWdpb24gKi8NCiNkZWZpbmUgUEVSSVBIX0JCX0JBU0UgICAgICAgICgodWludDMyX3QpMHg0MjAwMDAwMFUpICAgICAgICAgICAgICAvKiE8IFBlcmlwaGVyYWwgYmFzZSBhZGRyZXNzIGluIHRoZSBiaXQtYmFuZCByZWdpb24gKi8NCiNkZWZpbmUgRkxBU0hfQkFOSzJfQkFTRSAgICAgICgodWludDMyX3QpMHgwODA0MDAwMFUpICAgICAgICAgICAgICAvKiE8IEZMQVNIIEJBTksyIGJhc2UgYWRkcmVzcyBpbiB0aGUgYWxpYXMgcmVnaW9uICovDQojZGVmaW5lIEZMQVNIX0JBTksxX0VORCAgICAgICAoKHVpbnQzMl90KTB4MDgwM0ZGRkZVKSAgICAgICAgICAgICAgLyohPCBQcm9ncmFtIGVuZCBGTEFTSCBCQU5LMSBhZGRyZXNzICAqLw0KI2RlZmluZSBGTEFTSF9CQU5LMl9FTkQgICAgICAgKCh1aW50MzJfdCkweDA4MDdGRkZGVSkgICAgICAgICAgICAgIC8qITwgUHJvZ3JhbSBlbmQgRkxBU0ggQkFOSzIgYWRkcmVzcyAgKi8NCiNkZWZpbmUgRkxBU0hfRUVQUk9NX0VORCAgICAgICgodWludDMyX3QpMHgwODA4M0ZGRlUpICAgICAgICAgICAgICAvKiE8IEZMQVNIIEVFUFJPTSBlbmQgYWRkcmVzcyAoMTZLQikgKi8NCg0KLyohPCBQZXJpcGhlcmFsIG1lbW9yeSBtYXAgKi8NCiNkZWZpbmUgQVBCMVBFUklQSF9CQVNFICAgICAgIFBFUklQSF9CQVNFDQojZGVmaW5lIEFQQjJQRVJJUEhfQkFTRSAgICAgICAoUEVSSVBIX0JBU0UgKyAweDAwMDEwMDAwVSkNCiNkZWZpbmUgQUhCUEVSSVBIX0JBU0UgICAgICAgIChQRVJJUEhfQkFTRSArIDB4MDAwMjAwMDBVKQ0KDQovKiE8IEFQQjEgcGVyaXBoZXJhbHMgKi8NCiNkZWZpbmUgVElNMl9CQVNFICAgICAgICAgICAgIChBUEIxUEVSSVBIX0JBU0UgKyAweDAwMDAwMDAwVSkNCiNkZWZpbmUgVElNM19CQVNFICAgICAgICAgICAgIChBUEIxUEVSSVBIX0JBU0UgKyAweDAwMDAwNDAwVSkNCiNkZWZpbmUgVElNNF9CQVNFICAgICAgICAgICAgIChBUEIxUEVSSVBIX0JBU0UgKyAweDAwMDAwODAwVSkNCiNkZWZpbmUgVElNNV9CQVNFICAgICAgICAgICAgIChBUEIxUEVSSVBIX0JBU0UgKyAweDAwMDAwQzAwVSkNCiNkZWZpbmUgVElNNl9CQVNFICAgICAgICAgICAgIChBUEIxUEVSSVBIX0JBU0UgKyAweDAwMDAxMDAwVSkNCiNkZWZpbmUgVElNN19CQVNFICAgICAgICAgICAgIChBUEIxUEVSSVBIX0JBU0UgKyAweDAwMDAxNDAwVSkNCiNkZWZpbmUgTENEX0JBU0UgICAgICAgICAgICAgIChBUEIxUEVSSVBIX0JBU0UgKyAweDAwMDAyNDAwVSkNCiNkZWZpbmUgUlRDX0JBU0UgICAgICAgICAgICAgIChBUEIxUEVSSVBIX0JBU0UgKyAweDAwMDAyODAwVSkNCiNkZWZpbmUgV1dER19CQVNFICAgICAgICAgICAgIChBUEIxUEVSSVBIX0JBU0UgKyAweDAwMDAyQzAwVSkNCiNkZWZpbmUgSVdER19CQVNFICAgICAgICAgICAgIChBUEIxUEVSSVBIX0JBU0UgKyAweDAwMDAzMDAwVSkNCiNkZWZpbmUgU1BJMl9CQVNFICAgICAgICAgICAgIChBUEIxUEVSSVBIX0JBU0UgKyAweDAwMDAzODAwVSkNCiNkZWZpbmUgU1BJM19CQVNFICAgICAgICAgICAgIChBUEIxUEVSSVBIX0JBU0UgKyAweDAwMDAzQzAwVSkNCiNkZWZpbmUgVVNBUlQyX0JBU0UgICAgICAgICAgIChBUEIxUEVSSVBIX0JBU0UgKyAweDAwMDA0NDAwVSkNCiNkZWZpbmUgVVNBUlQzX0JBU0UgICAgICAgICAgIChBUEIxUEVSSVBIX0JBU0UgKyAweDAwMDA0ODAwVSkNCiNkZWZpbmUgVUFSVDRfQkFTRSAgICAgICAgICAgIChBUEIxUEVSSVBIX0JBU0UgKyAweDAwMDA0QzAwVSkNCiNkZWZpbmUgVUFSVDVfQkFTRSAgICAgICAgICAgIChBUEIxUEVSSVBIX0JBU0UgKyAweDAwMDA1MDAwVSkNCiNkZWZpbmUgSTJDMV9CQVNFICAgICAgICAgICAgIChBUEIxUEVSSVBIX0JBU0UgKyAweDAwMDA1NDAwVSkNCiNkZWZpbmUgSTJDMl9CQVNFICAgICAgICAgICAgIChBUEIxUEVSSVBIX0JBU0UgKyAweDAwMDA1ODAwVSkNCg0KLyogVVNCIGRldmljZSBGUyAqLw0KI2RlZmluZSBVU0JfQkFTRSAgICAgICAgICAgICAgKEFQQjFQRVJJUEhfQkFTRSArIDB4MDAwMDVDMDBVKSAvKiE8IFVTQl9JUCBQZXJpcGhlcmFsIFJlZ2lzdGVycyBiYXNlIGFkZHJlc3MgKi8NCiNkZWZpbmUgVVNCX1BNQUFERFIgICAgICAgICAgIChBUEIxUEVSSVBIX0JBU0UgKyAweDAwMDA2MDAwVSkgLyohPCBVU0JfSVAgUGFja2V0IE1lbW9yeSBBcmVhIGJhc2UgYWRkcmVzcyAqLw0KDQovKiBVU0IgZGV2aWNlIEZTIFNSQU0gKi8NCiNkZWZpbmUgUFdSX0JBU0UgICAgICAgICAgICAgIChBUEIxUEVSSVBIX0JBU0UgKyAweDAwMDA3MDAwVSkNCiNkZWZpbmUgREFDX0JBU0UgICAgICAgICAgICAgIChBUEIxUEVSSVBIX0JBU0UgKyAweDAwMDA3NDAwVSkNCiNkZWZpbmUgQ09NUF9CQVNFICAgICAgICAgICAgIChBUEIxUEVSSVBIX0JBU0UgKyAweDAwMDA3QzAwVSkNCiNkZWZpbmUgUklfQkFTRSAgICAgICAgICAgICAgIChBUEIxUEVSSVBIX0JBU0UgKyAweDAwMDA3QzA0VSkNCiNkZWZpbmUgT1BBTVBfQkFTRSAgICAgICAgICAgIChBUEIxUEVSSVBIX0JBU0UgKyAweDAwMDA3QzVDVSkNCg0KLyohPCBBUEIyIHBlcmlwaGVyYWxzICovDQojZGVmaW5lIFNZU0NGR19CQVNFICAgICAgICAgICAoQVBCMlBFUklQSF9CQVNFICsgMHgwMDAwMDAwMFUpDQojZGVmaW5lIEVYVElfQkFTRSAgICAgICAgICAgICAoQVBCMlBFUklQSF9CQVNFICsgMHgwMDAwMDQwMFUpDQojZGVmaW5lIFRJTTlfQkFTRSAgICAgICAgICAgICAoQVBCMlBFUklQSF9CQVNFICsgMHgwMDAwMDgwMFUpDQojZGVmaW5lIFRJTTEwX0JBU0UgICAgICAgICAgICAoQVBCMlBFUklQSF9CQVNFICsgMHgwMDAwMEMwMFUpDQojZGVmaW5lIFRJTTExX0JBU0UgICAgICAgICAgICAoQVBCMlBFUklQSF9CQVNFICsgMHgwMDAwMTAwMFUpDQojZGVmaW5lIEFEQzFfQkFTRSAgICAgICAgICAgICAoQVBCMlBFUklQSF9CQVNFICsgMHgwMDAwMjQwMFUpDQojZGVmaW5lIEFEQ19CQVNFICAgICAgICAgICAgICAoQVBCMlBFUklQSF9CQVNFICsgMHgwMDAwMjcwMFUpDQojZGVmaW5lIFNQSTFfQkFTRSAgICAgICAgICAgICAoQVBCMlBFUklQSF9CQVNFICsgMHgwMDAwMzAwMFUpDQojZGVmaW5lIFVTQVJUMV9CQVNFICAgICAgICAgICAoQVBCMlBFUklQSF9CQVNFICsgMHgwMDAwMzgwMFUpDQoNCi8qITwgQUhCIHBlcmlwaGVyYWxzICovDQojZGVmaW5lIEdQSU9BX0JBU0UgICAgICAgICAgICAoQUhCUEVSSVBIX0JBU0UgKyAweDAwMDAwMDAwVSkNCiNkZWZpbmUgR1BJT0JfQkFTRSAgICAgICAgICAgIChBSEJQRVJJUEhfQkFTRSArIDB4MDAwMDA0MDBVKQ0KI2RlZmluZSBHUElPQ19CQVNFICAgICAgICAgICAgKEFIQlBFUklQSF9CQVNFICsgMHgwMDAwMDgwMFUpDQojZGVmaW5lIEdQSU9EX0JBU0UgICAgICAgICAgICAoQUhCUEVSSVBIX0JBU0UgKyAweDAwMDAwQzAwVSkNCiNkZWZpbmUgR1BJT0VfQkFTRSAgICAgICAgICAgIChBSEJQRVJJUEhfQkFTRSArIDB4MDAwMDEwMDBVKQ0KI2RlZmluZSBHUElPSF9CQVNFICAgICAgICAgICAgKEFIQlBFUklQSF9CQVNFICsgMHgwMDAwMTQwMFUpDQojZGVmaW5lIEdQSU9GX0JBU0UgICAgICAgICAgICAoQUhCUEVSSVBIX0JBU0UgKyAweDAwMDAxODAwVSkNCiNkZWZpbmUgR1BJT0dfQkFTRSAgICAgICAgICAgIChBSEJQRVJJUEhfQkFTRSArIDB4MDAwMDFDMDBVKQ0KI2RlZmluZSBDUkNfQkFTRSAgICAgICAgICAgICAgKEFIQlBFUklQSF9CQVNFICsgMHgwMDAwMzAwMFUpDQojZGVmaW5lIFJDQ19CQVNFICAgICAgICAgICAgICAoQUhCUEVSSVBIX0JBU0UgKyAweDAwMDAzODAwVSkNCiNkZWZpbmUgRkxBU0hfUl9CQVNFICAgICAgICAgIChBSEJQRVJJUEhfQkFTRSArIDB4MDAwMDNDMDBVKSAvKiE8IEZMQVNIIHJlZ2lzdGVycyBiYXNlIGFkZHJlc3MgKi8NCiNkZWZpbmUgT0JfQkFTRSAgICAgICAgICAgICAgICgodWludDMyX3QpMHgxRkY4MDAwMFUpICAgICAgICAvKiE8IEZMQVNIIE9wdGlvbiBCeXRlcyBiYXNlIGFkZHJlc3MgKi8NCiNkZWZpbmUgRkxBU0hTSVpFX0JBU0UgICAgICAgICgodWludDMyX3QpMHgxRkY4MDBDQ1UpICAgICAgICAvKiE8IEZMQVNIIFNpemUgcmVnaXN0ZXIgYmFzZSBhZGRyZXNzIGZvciBDYXQuMywgQ2F0LjQsIENhdC41IGFuZCBDYXQuNiBkZXZpY2VzICovDQojZGVmaW5lIFVJRF9CQVNFICAgICAgICAgICAgICAoKHVpbnQzMl90KTB4MUZGODAwRDBVKSAgICAgICAgLyohPCBVbmlxdWUgZGV2aWNlIElEIHJlZ2lzdGVyIGJhc2UgYWRkcmVzcyBmb3IgQ2F0LjMsIENhdC40LCBDYXQuNSBhbmQgQ2F0LjYgZGV2aWNlcyAqLw0KI2RlZmluZSBETUExX0JBU0UgICAgICAgICAgICAgKEFIQlBFUklQSF9CQVNFICsgMHgwMDAwNjAwMFUpDQojZGVmaW5lIERNQTFfQ2hhbm5lbDFfQkFTRSAgICAoRE1BMV9CQVNFICsgMHgwMDAwMDAwOFUpDQojZGVmaW5lIERNQTFfQ2hhbm5lbDJfQkFTRSAgICAoRE1BMV9CQVNFICsgMHgwMDAwMDAxQ1UpDQojZGVmaW5lIERNQTFfQ2hhbm5lbDNfQkFTRSAgICAoRE1BMV9CQVNFICsgMHgwMDAwMDAzMFUpDQojZGVmaW5lIERNQTFfQ2hhbm5lbDRfQkFTRSAgICAoRE1BMV9CQVNFICsgMHgwMDAwMDA0NFUpDQojZGVmaW5lIERNQTFfQ2hhbm5lbDVfQkFTRSAgICAoRE1BMV9CQVNFICsgMHgwMDAwMDA1OFUpDQojZGVmaW5lIERNQTFfQ2hhbm5lbDZfQkFTRSAgICAoRE1BMV9CQVNFICsgMHgwMDAwMDA2Q1UpDQojZGVmaW5lIERNQTFfQ2hhbm5lbDdfQkFTRSAgICAoRE1BMV9CQVNFICsgMHgwMDAwMDA4MFUpDQojZGVmaW5lIERNQTJfQkFTRSAgICAgICAgICAgICAoQUhCUEVSSVBIX0JBU0UgKyAweDAwMDA2NDAwVSkNCiNkZWZpbmUgRE1BMl9DaGFubmVsMV9CQVNFICAgIChETUEyX0JBU0UgKyAweDAwMDAwMDA4VSkNCiNkZWZpbmUgRE1BMl9DaGFubmVsMl9CQVNFICAgIChETUEyX0JBU0UgKyAweDAwMDAwMDFDVSkNCiNkZWZpbmUgRE1BMl9DaGFubmVsM19CQVNFICAgIChETUEyX0JBU0UgKyAweDAwMDAwMDMwVSkNCiNkZWZpbmUgRE1BMl9DaGFubmVsNF9CQVNFICAgIChETUEyX0JBU0UgKyAweDAwMDAwMDQ0VSkNCiNkZWZpbmUgRE1BMl9DaGFubmVsNV9CQVNFICAgIChETUEyX0JBU0UgKyAweDAwMDAwMDU4VSkNCiNkZWZpbmUgREJHTUNVX0JBU0UgICAgICAgICAgICgodWludDMyX3QpMHhFMDA0MjAwMFUpICAgICAvKiE8IERlYnVnIE1DVSByZWdpc3RlcnMgYmFzZSBhZGRyZXNzICovDQoNCi8qKg0KICAqIEB9DQogICovDQogIA0KLyoqIEBhZGR0b2dyb3VwIFBlcmlwaGVyYWxfZGVjbGFyYXRpb24NCiAgKiBAew0KICAqLyAgDQoNCiNkZWZpbmUgVElNMiAgICAgICAgICAgICAgICAoKFRJTV9UeXBlRGVmICopIFRJTTJfQkFTRSkNCiNkZWZpbmUgVElNMyAgICAgICAgICAgICAgICAoKFRJTV9UeXBlRGVmICopIFRJTTNfQkFTRSkNCiNkZWZpbmUgVElNNCAgICAgICAgICAgICAgICAoKFRJTV9UeXBlRGVmICopIFRJTTRfQkFTRSkNCiNkZWZpbmUgVElNNSAgICAgICAgICAgICAgICAoKFRJTV9UeXBlRGVmICopIFRJTTVfQkFTRSkNCiNkZWZpbmUgVElNNiAgICAgICAgICAgICAgICAoKFRJTV9UeXBlRGVmICopIFRJTTZfQkFTRSkNCiNkZWZpbmUgVElNNyAgICAgICAgICAgICAgICAoKFRJTV9UeXBlRGVmICopIFRJTTdfQkFTRSkNCiNkZWZpbmUgTENEICAgICAgICAgICAgICAgICAoKExDRF9UeXBlRGVmICopIExDRF9CQVNFKQ0KI2RlZmluZSBSVEMgICAgICAgICAgICAgICAgICgoUlRDX1R5cGVEZWYgKikgUlRDX0JBU0UpDQojZGVmaW5lIFdXREcgICAgICAgICAgICAgICAgKChXV0RHX1R5cGVEZWYgKikgV1dER19CQVNFKQ0KI2RlZmluZSBJV0RHICAgICAgICAgICAgICAgICgoSVdER19UeXBlRGVmICopIElXREdfQkFTRSkNCiNkZWZpbmUgU1BJMiAgICAgICAgICAgICAgICAoKFNQSV9UeXBlRGVmICopIFNQSTJfQkFTRSkNCiNkZWZpbmUgU1BJMyAgICAgICAgICAgICAgICAoKFNQSV9UeXBlRGVmICopIFNQSTNfQkFTRSkNCiNkZWZpbmUgVVNBUlQyICAgICAgICAgICAgICAoKFVTQVJUX1R5cGVEZWYgKikgVVNBUlQyX0JBU0UpDQojZGVmaW5lIFVTQVJUMyAgICAgICAgICAgICAgKChVU0FSVF9UeXBlRGVmICopIFVTQVJUM19CQVNFKQ0KI2RlZmluZSBVQVJUNCAgICAgICAgICAgICAgICgoVVNBUlRfVHlwZURlZiAqKSBVQVJUNF9CQVNFKQ0KI2RlZmluZSBVQVJUNSAgICAgICAgICAgICAgICgoVVNBUlRfVHlwZURlZiAqKSBVQVJUNV9CQVNFKQ0KI2RlZmluZSBJMkMxICAgICAgICAgICAgICAgICgoSTJDX1R5cGVEZWYgKikgSTJDMV9CQVNFKQ0KI2RlZmluZSBJMkMyICAgICAgICAgICAgICAgICgoSTJDX1R5cGVEZWYgKikgSTJDMl9CQVNFKQ0KLyogVVNCIGRldmljZSBGUyAqLw0KI2RlZmluZSBVU0IgICAgICAgICAgICAgICAgICAgKChVU0JfVHlwZURlZiAqKSBVU0JfQkFTRSkNCi8qIFVTQiBkZXZpY2UgRlMgU1JBTSAqLw0KI2RlZmluZSBQV1IgICAgICAgICAgICAgICAgICgoUFdSX1R5cGVEZWYgKikgUFdSX0JBU0UpDQoNCiNkZWZpbmUgREFDMSAgICAgICAgICAgICAgICAoKERBQ19UeXBlRGVmICopIERBQ19CQVNFKQ0KLyogTGVnYWN5IGRlZmluZSAqLw0KI2RlZmluZSBEQUMgICAgICAgICAgICAgICAgIERBQzENCg0KI2RlZmluZSBDT01QICAgICAgICAgICAgICAgICgoQ09NUF9UeXBlRGVmICopIENPTVBfQkFTRSkgICAgICAgICAgICAgICAgIC8qIENPTVAgZ2VuZXJpYyBpbnN0YW5jZSBpbmNsdWRlIGJpdHMgb2YgQ09NUDEgYW5kIENPTVAyIG1peGVkIGluIHRoZSBzYW1lIHJlZ2lzdGVyICovDQojZGVmaW5lIENPTVAxICAgICAgICAgICAgICAgKChDT01QX1R5cGVEZWYgKikgQ09NUF9CQVNFKSAgICAgICAgICAgICAgICAgLyogQ09NUDEgaW5zdGFuY2UgZGVmaW5pdGlvbiB0byBkaWZmZXJlbnRpYXRlIENPTVAxIGFuZCBDT01QMiwgbm90IHRvIGJlIHVzZWQgdG8gYWNjZXNzIGNvbXBhcmF0b3IgcmVnaXN0ZXIgKi8NCiNkZWZpbmUgQ09NUDIgICAgICAgICAgICAgICAoKENPTVBfVHlwZURlZiAqKSAoQ09NUF9CQVNFICsgMHgwMDAwMDAwMVUpKSAvKiBDT01QMiBpbnN0YW5jZSBkZWZpbml0aW9uIHRvIGRpZmZlcmVudGlhdGUgQ09NUDEgYW5kIENPTVAyLCBub3QgdG8gYmUgdXNlZCB0byBhY2Nlc3MgY29tcGFyYXRvciByZWdpc3RlciAqLw0KI2RlZmluZSBDT01QMTJfQ09NTU9OICAgICAgICgoQ09NUF9Db21tb25fVHlwZURlZiAqKSBDT01QX0JBU0UpICAgICAgICAgIC8qIENPTVAgY29tbW9uIGluc3RhbmNlIGRlZmluaXRpb24gdG8gYWNjZXNzIGNvbXBhcmF0b3IgcmVnaXN0ZXIgYml0cyB1c2VkIGJ5IGJvdGggY29tcGFyYXRvciBpbnN0YW5jZXMgKHdpbmRvdyBtb2RlKSAqLw0KDQojZGVmaW5lIFJJICAgICAgICAgICAgICAgICAgKChSSV9UeXBlRGVmICopIFJJX0JBU0UpDQoNCiNkZWZpbmUgT1BBTVAgICAgICAgICAgICAgICAoKE9QQU1QX1R5cGVEZWYgKikgT1BBTVBfQkFTRSkNCiNkZWZpbmUgT1BBTVAxICAgICAgICAgICAgICAoKE9QQU1QX1R5cGVEZWYgKikgT1BBTVBfQkFTRSkNCiNkZWZpbmUgT1BBTVAyICAgICAgICAgICAgICAoKE9QQU1QX1R5cGVEZWYgKikgKE9QQU1QX0JBU0UgKyAweDAwMDAwMDAxVSkpDQojZGVmaW5lIE9QQU1QMTJfQ09NTU9OICAgICAgKChPUEFNUF9Db21tb25fVHlwZURlZiAqKSBPUEFNUF9CQVNFKQ0KI2RlZmluZSBTWVNDRkcgICAgICAgICAgICAgICgoU1lTQ0ZHX1R5cGVEZWYgKikgU1lTQ0ZHX0JBU0UpDQojZGVmaW5lIEVYVEkgICAgICAgICAgICAgICAgKChFWFRJX1R5cGVEZWYgKikgRVhUSV9CQVNFKQ0KI2RlZmluZSBUSU05ICAgICAgICAgICAgICAgICgoVElNX1R5cGVEZWYgKikgVElNOV9CQVNFKQ0KI2RlZmluZSBUSU0xMCAgICAgICAgICAgICAgICgoVElNX1R5cGVEZWYgKikgVElNMTBfQkFTRSkNCiNkZWZpbmUgVElNMTEgICAgICAgICAgICAgICAoKFRJTV9UeXBlRGVmICopIFRJTTExX0JBU0UpDQoNCiNkZWZpbmUgQURDMSAgICAgICAgICAgICAgICAoKEFEQ19UeXBlRGVmICopIEFEQzFfQkFTRSkNCiNkZWZpbmUgQURDMV9DT01NT04gICAgICAgICAoKEFEQ19Db21tb25fVHlwZURlZiAqKSBBRENfQkFTRSkNCi8qIExlZ2FjeSBkZWZpbmVzICovDQojZGVmaW5lIEFEQyAgICAgICAgICAgICAgICAgQURDMV9DT01NT04NCg0KI2RlZmluZSBTUEkxICAgICAgICAgICAgICAgICgoU1BJX1R5cGVEZWYgKikgU1BJMV9CQVNFKQ0KI2RlZmluZSBVU0FSVDEgICAgICAgICAgICAgICgoVVNBUlRfVHlwZURlZiAqKSBVU0FSVDFfQkFTRSkNCiNkZWZpbmUgR1BJT0EgICAgICAgICAgICAgICAoKEdQSU9fVHlwZURlZiAqKSBHUElPQV9CQVNFKQ0KI2RlZmluZSBHUElPQiAgICAgICAgICAgICAgICgoR1BJT19UeXBlRGVmICopIEdQSU9CX0JBU0UpDQojZGVmaW5lIEdQSU9DICAgICAgICAgICAgICAgKChHUElPX1R5cGVEZWYgKikgR1BJT0NfQkFTRSkNCiNkZWZpbmUgR1BJT0QgICAgICAgICAgICAgICAoKEdQSU9fVHlwZURlZiAqKSBHUElPRF9CQVNFKQ0KI2RlZmluZSBHUElPRSAgICAgICAgICAgICAgICgoR1BJT19UeXBlRGVmICopIEdQSU9FX0JBU0UpDQojZGVmaW5lIEdQSU9IICAgICAgICAgICAgICAgKChHUElPX1R5cGVEZWYgKikgR1BJT0hfQkFTRSkNCiNkZWZpbmUgR1BJT0YgICAgICAgICAgICAgICAoKEdQSU9fVHlwZURlZiAqKSBHUElPRl9CQVNFKQ0KI2RlZmluZSBHUElPRyAgICAgICAgICAgICAgICgoR1BJT19UeXBlRGVmICopIEdQSU9HX0JBU0UpDQojZGVmaW5lIENSQyAgICAgICAgICAgICAgICAgKChDUkNfVHlwZURlZiAqKSBDUkNfQkFTRSkNCiNkZWZpbmUgUkNDICAgICAgICAgICAgICAgICAoKFJDQ19UeXBlRGVmICopIFJDQ19CQVNFKQ0KI2RlZmluZSBGTEFTSCAgICAgICAgICAgICAgICgoRkxBU0hfVHlwZURlZiAqKSBGTEFTSF9SX0JBU0UpDQojZGVmaW5lIE9CICAgICAgICAgICAgICAgICAgKChPQl9UeXBlRGVmICopIE9CX0JBU0UpIA0KI2RlZmluZSBETUExICAgICAgICAgICAgICAgICgoRE1BX1R5cGVEZWYgKikgRE1BMV9CQVNFKQ0KI2RlZmluZSBETUExX0NoYW5uZWwxICAgICAgICgoRE1BX0NoYW5uZWxfVHlwZURlZiAqKSBETUExX0NoYW5uZWwxX0JBU0UpDQojZGVmaW5lIERNQTFfQ2hhbm5lbDIgICAgICAgKChETUFfQ2hhbm5lbF9UeXBlRGVmICopIERNQTFfQ2hhbm5lbDJfQkFTRSkNCiNkZWZpbmUgRE1BMV9DaGFubmVsMyAgICAgICAoKERNQV9DaGFubmVsX1R5cGVEZWYgKikgRE1BMV9DaGFubmVsM19CQVNFKQ0KI2RlZmluZSBETUExX0NoYW5uZWw0ICAgICAgICgoRE1BX0NoYW5uZWxfVHlwZURlZiAqKSBETUExX0NoYW5uZWw0X0JBU0UpDQojZGVmaW5lIERNQTFfQ2hhbm5lbDUgICAgICAgKChETUFfQ2hhbm5lbF9UeXBlRGVmICopIERNQTFfQ2hhbm5lbDVfQkFTRSkNCiNkZWZpbmUgRE1BMV9DaGFubmVsNiAgICAgICAoKERNQV9DaGFubmVsX1R5cGVEZWYgKikgRE1BMV9DaGFubmVsNl9CQVNFKQ0KI2RlZmluZSBETUExX0NoYW5uZWw3ICAgICAgICgoRE1BX0NoYW5uZWxfVHlwZURlZiAqKSBETUExX0NoYW5uZWw3X0JBU0UpDQojZGVmaW5lIERNQTIgICAgICAgICAgICAgICAgKChETUFfVHlwZURlZiAqKSBETUEyX0JBU0UpDQojZGVmaW5lIERNQTJfQ2hhbm5lbDEgICAgICAgKChETUFfQ2hhbm5lbF9UeXBlRGVmICopIERNQTJfQ2hhbm5lbDFfQkFTRSkNCiNkZWZpbmUgRE1BMl9DaGFubmVsMiAgICAgICAoKERNQV9DaGFubmVsX1R5cGVEZWYgKikgRE1BMl9DaGFubmVsMl9CQVNFKQ0KI2RlZmluZSBETUEyX0NoYW5uZWwzICAgICAgICgoRE1BX0NoYW5uZWxfVHlwZURlZiAqKSBETUEyX0NoYW5uZWwzX0JBU0UpDQojZGVmaW5lIERNQTJfQ2hhbm5lbDQgICAgICAgKChETUFfQ2hhbm5lbF9UeXBlRGVmICopIERNQTJfQ2hhbm5lbDRfQkFTRSkNCiNkZWZpbmUgRE1BMl9DaGFubmVsNSAgICAgICAoKERNQV9DaGFubmVsX1R5cGVEZWYgKikgRE1BMl9DaGFubmVsNV9CQVNFKQ0KI2RlZmluZSBEQkdNQ1UgICAgICAgICAgICAgICgoREJHTUNVX1R5cGVEZWYgKikgREJHTUNVX0JBU0UpDQoNCiAvKioNCiAgKiBAfQ0KICAqLw0KDQovKiogQGFkZHRvZ3JvdXAgRXhwb3J0ZWRfY29uc3RhbnRzDQogICogQHsNCiAgKi8NCg0KLyoqIEBhZGR0b2dyb3VwIFBlcmlwaGVyYWxfUmVnaXN0ZXJzX0JpdHNfRGVmaW5pdGlvbg0KICAqIEB7DQogICovDQogICAgDQovKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLw0KLyogICAgICAgICAgICAgICAgICAgICAgICAgUGVyaXBoZXJhbCBSZWdpc3RlcnMgQml0cyBEZWZpbml0aW9uICAgICAgICAgICAgICAgKi8NCi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovDQovKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLw0KLyogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8NCi8qICAgICAgICAgICAgICAgICAgICAgIEFuYWxvZyB0byBEaWdpdGFsIENvbnZlcnRlciAoQURDKSAgICAgICAgICAgICAgICAgICAgICovDQovKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLw0KLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8NCg0KLyoqKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgQURDX1NSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgQURDX1NSX0FXRF9Qb3MgICAgICAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgQURDX1NSX0FXRF9Nc2sgICAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IEFEQ19TUl9BV0RfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDAwMDEgKi8NCiNkZWZpbmUgQURDX1NSX0FXRCAgICAgICAgICAgICAgICAgICAgICAgICAgIEFEQ19TUl9BV0RfTXNrICAgICAgICAgICAgICAgICAgICAvKiE8IEFEQyBhbmFsb2cgd2F0Y2hkb2cgMSBmbGFnICovDQojZGVmaW5lIEFEQ19TUl9FT0NTX1BvcyAgICAgICAgICAgICAgICAgICAgICAoMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEFEQ19TUl9FT0NTX01zayAgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBBRENfU1JfRU9DU19Qb3MpICAgICAgICAgLyohPCAweDAwMDAwMDAyICovDQojZGVmaW5lIEFEQ19TUl9FT0NTICAgICAgICAgICAgICAgICAgICAgICAgICBBRENfU1JfRU9DU19Nc2sgICAgICAgICAgICAgICAgICAgLyohPCBBREMgZ3JvdXAgcmVndWxhciBlbmQgb2YgdW5pdGFyeSBjb252ZXJzaW9uIG9yIGVuZCBvZiBzZXF1ZW5jZSBjb252ZXJzaW9ucyBmbGFnICovDQojZGVmaW5lIEFEQ19TUl9KRU9TX1BvcyAgICAgICAgICAgICAgICAgICAgICAoMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEFEQ19TUl9KRU9TX01zayAgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBBRENfU1JfSkVPU19Qb3MpICAgICAgICAgLyohPCAweDAwMDAwMDA0ICovDQojZGVmaW5lIEFEQ19TUl9KRU9TICAgICAgICAgICAgICAgICAgICAgICAgICBBRENfU1JfSkVPU19Nc2sgICAgICAgICAgICAgICAgICAgLyohPCBBREMgZ3JvdXAgaW5qZWN0ZWQgZW5kIG9mIHNlcXVlbmNlIGNvbnZlcnNpb25zIGZsYWcgKi8NCiNkZWZpbmUgQURDX1NSX0pTVFJUX1BvcyAgICAgICAgICAgICAgICAgICAgICgzVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgQURDX1NSX0pTVFJUX01zayAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IEFEQ19TUl9KU1RSVF9Qb3MpICAgICAgICAvKiE8IDB4MDAwMDAwMDggKi8NCiNkZWZpbmUgQURDX1NSX0pTVFJUICAgICAgICAgICAgICAgICAgICAgICAgIEFEQ19TUl9KU1RSVF9Nc2sgICAgICAgICAgICAgICAgICAvKiE8IEFEQyBncm91cCBpbmplY3RlZCBjb252ZXJzaW9uIHN0YXJ0IGZsYWcgKi8NCiNkZWZpbmUgQURDX1NSX1NUUlRfUG9zICAgICAgICAgICAgICAgICAgICAgICg0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgQURDX1NSX1NUUlRfTXNrICAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IEFEQ19TUl9TVFJUX1BvcykgICAgICAgICAvKiE8IDB4MDAwMDAwMTAgKi8NCiNkZWZpbmUgQURDX1NSX1NUUlQgICAgICAgICAgICAgICAgICAgICAgICAgIEFEQ19TUl9TVFJUX01zayAgICAgICAgICAgICAgICAgICAvKiE8IEFEQyBncm91cCByZWd1bGFyIGNvbnZlcnNpb24gc3RhcnQgZmxhZyAqLw0KI2RlZmluZSBBRENfU1JfT1ZSX1BvcyAgICAgICAgICAgICAgICAgICAgICAgKDVVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBBRENfU1JfT1ZSX01zayAgICAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgQURDX1NSX09WUl9Qb3MpICAgICAgICAgIC8qITwgMHgwMDAwMDAyMCAqLw0KI2RlZmluZSBBRENfU1JfT1ZSICAgICAgICAgICAgICAgICAgICAgICAgICAgQURDX1NSX09WUl9Nc2sgICAgICAgICAgICAgICAgICAgIC8qITwgQURDIGdyb3VwIHJlZ3VsYXIgb3ZlcnJ1biBmbGFnICovDQojZGVmaW5lIEFEQ19TUl9BRE9OU19Qb3MgICAgICAgICAgICAgICAgICAgICAoNlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEFEQ19TUl9BRE9OU19Nc2sgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBBRENfU1JfQURPTlNfUG9zKSAgICAgICAgLyohPCAweDAwMDAwMDQwICovDQojZGVmaW5lIEFEQ19TUl9BRE9OUyAgICAgICAgICAgICAgICAgICAgICAgICBBRENfU1JfQURPTlNfTXNrICAgICAgICAgICAgICAgICAgLyohPCBBREMgcmVhZHkgZmxhZyAqLw0KI2RlZmluZSBBRENfU1JfUkNOUl9Qb3MgICAgICAgICAgICAgICAgICAgICAgKDhVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBBRENfU1JfUkNOUl9Nc2sgICAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgQURDX1NSX1JDTlJfUG9zKSAgICAgICAgIC8qITwgMHgwMDAwMDEwMCAqLw0KI2RlZmluZSBBRENfU1JfUkNOUiAgICAgICAgICAgICAgICAgICAgICAgICAgQURDX1NSX1JDTlJfTXNrICAgICAgICAgICAgICAgICAgIC8qITwgQURDIGdyb3VwIHJlZ3VsYXIgbm90IHJlYWR5IGZsYWcgKi8NCiNkZWZpbmUgQURDX1NSX0pDTlJfUG9zICAgICAgICAgICAgICAgICAgICAgICg5VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgQURDX1NSX0pDTlJfTXNrICAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IEFEQ19TUl9KQ05SX1BvcykgICAgICAgICAvKiE8IDB4MDAwMDAyMDAgKi8NCiNkZWZpbmUgQURDX1NSX0pDTlIgICAgICAgICAgICAgICAgICAgICAgICAgIEFEQ19TUl9KQ05SX01zayAgICAgICAgICAgICAgICAgICAvKiE8IEFEQyBncm91cCBpbmplY3RlZCBub3QgcmVhZHkgZmxhZyAqLw0KDQovKiBMZWdhY3kgZGVmaW5lcyAqLw0KI2RlZmluZSAgQURDX1NSX0VPQyAgICAgICAgICAgICAgICAgICAgICAgICAgKEFEQ19TUl9FT0NTKQ0KI2RlZmluZSAgQURDX1NSX0pFT0MgICAgICAgICAgICAgICAgICAgICAgICAgKEFEQ19TUl9KRU9TKQ0KDQovKioqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIEFEQ19DUjEgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBBRENfQ1IxX0FXRENIX1BvcyAgICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBBRENfQ1IxX0FXRENIX01zayAgICAgICAgICAgICAgICAgICAgKDB4MUZVIDw8IEFEQ19DUjFfQVdEQ0hfUG9zKSAgICAgIC8qITwgMHgwMDAwMDAxRiAqLw0KI2RlZmluZSBBRENfQ1IxX0FXRENIICAgICAgICAgICAgICAgICAgICAgICAgQURDX0NSMV9BV0RDSF9Nc2sgICAgICAgICAgICAgICAgIC8qITwgQURDIGFuYWxvZyB3YXRjaGRvZyAxIG1vbml0b3JlZCBjaGFubmVsIHNlbGVjdGlvbiAqLw0KI2RlZmluZSBBRENfQ1IxX0FXRENIXzAgICAgICAgICAgICAgICAgICAgICAgKDB4MDFVIDw8IEFEQ19DUjFfQVdEQ0hfUG9zKSAgICAgIC8qITwgMHgwMDAwMDAwMSAqLw0KI2RlZmluZSBBRENfQ1IxX0FXRENIXzEgICAgICAgICAgICAgICAgICAgICAgKDB4MDJVIDw8IEFEQ19DUjFfQVdEQ0hfUG9zKSAgICAgIC8qITwgMHgwMDAwMDAwMiAqLw0KI2RlZmluZSBBRENfQ1IxX0FXRENIXzIgICAgICAgICAgICAgICAgICAgICAgKDB4MDRVIDw8IEFEQ19DUjFfQVdEQ0hfUG9zKSAgICAgIC8qITwgMHgwMDAwMDAwNCAqLw0KI2RlZmluZSBBRENfQ1IxX0FXRENIXzMgICAgICAgICAgICAgICAgICAgICAgKDB4MDhVIDw8IEFEQ19DUjFfQVdEQ0hfUG9zKSAgICAgIC8qITwgMHgwMDAwMDAwOCAqLw0KI2RlZmluZSBBRENfQ1IxX0FXRENIXzQgICAgICAgICAgICAgICAgICAgICAgKDB4MTBVIDw8IEFEQ19DUjFfQVdEQ0hfUG9zKSAgICAgIC8qITwgMHgwMDAwMDAxMCAqLw0KDQojZGVmaW5lIEFEQ19DUjFfRU9DU0lFX1BvcyAgICAgICAgICAgICAgICAgICAoNVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEFEQ19DUjFfRU9DU0lFX01zayAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBBRENfQ1IxX0VPQ1NJRV9Qb3MpICAgICAgLyohPCAweDAwMDAwMDIwICovDQojZGVmaW5lIEFEQ19DUjFfRU9DU0lFICAgICAgICAgICAgICAgICAgICAgICBBRENfQ1IxX0VPQ1NJRV9Nc2sgICAgICAgICAgICAgICAgLyohPCBBREMgZ3JvdXAgcmVndWxhciBlbmQgb2YgdW5pdGFyeSBjb252ZXJzaW9uIG9yIGVuZCBvZiBzZXF1ZW5jZSBjb252ZXJzaW9ucyBpbnRlcnJ1cHQgKi8NCiNkZWZpbmUgQURDX0NSMV9BV0RJRV9Qb3MgICAgICAgICAgICAgICAgICAgICg2VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgQURDX0NSMV9BV0RJRV9Nc2sgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IEFEQ19DUjFfQVdESUVfUG9zKSAgICAgICAvKiE8IDB4MDAwMDAwNDAgKi8NCiNkZWZpbmUgQURDX0NSMV9BV0RJRSAgICAgICAgICAgICAgICAgICAgICAgIEFEQ19DUjFfQVdESUVfTXNrICAgICAgICAgICAgICAgICAvKiE8IEFEQyBhbmFsb2cgd2F0Y2hkb2cgMSBpbnRlcnJ1cHQgKi8NCiNkZWZpbmUgQURDX0NSMV9KRU9TSUVfUG9zICAgICAgICAgICAgICAgICAgICg3VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgQURDX0NSMV9KRU9TSUVfTXNrICAgICAgICAgICAgICAgICAgICgweDFVIDw8IEFEQ19DUjFfSkVPU0lFX1BvcykgICAgICAvKiE8IDB4MDAwMDAwODAgKi8NCiNkZWZpbmUgQURDX0NSMV9KRU9TSUUgICAgICAgICAgICAgICAgICAgICAgIEFEQ19DUjFfSkVPU0lFX01zayAgICAgICAgICAgICAgICAvKiE8IEFEQyBncm91cCBpbmplY3RlZCBlbmQgb2Ygc2VxdWVuY2UgY29udmVyc2lvbnMgaW50ZXJydXB0ICovDQojZGVmaW5lIEFEQ19DUjFfU0NBTl9Qb3MgICAgICAgICAgICAgICAgICAgICAoOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEFEQ19DUjFfU0NBTl9Nc2sgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBBRENfQ1IxX1NDQU5fUG9zKSAgICAgICAgLyohPCAweDAwMDAwMTAwICovDQojZGVmaW5lIEFEQ19DUjFfU0NBTiAgICAgICAgICAgICAgICAgICAgICAgICBBRENfQ1IxX1NDQU5fTXNrICAgICAgICAgICAgICAgICAgLyohPCBBREMgc2NhbiBtb2RlICovDQojZGVmaW5lIEFEQ19DUjFfQVdEU0dMX1BvcyAgICAgICAgICAgICAgICAgICAoOVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEFEQ19DUjFfQVdEU0dMX01zayAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBBRENfQ1IxX0FXRFNHTF9Qb3MpICAgICAgLyohPCAweDAwMDAwMjAwICovDQojZGVmaW5lIEFEQ19DUjFfQVdEU0dMICAgICAgICAgICAgICAgICAgICAgICBBRENfQ1IxX0FXRFNHTF9Nc2sgICAgICAgICAgICAgICAgLyohPCBBREMgYW5hbG9nIHdhdGNoZG9nIDEgbW9uaXRvcmluZyBhIHNpbmdsZSBjaGFubmVsIG9yIGFsbCBjaGFubmVscyAqLw0KI2RlZmluZSBBRENfQ1IxX0pBVVRPX1BvcyAgICAgICAgICAgICAgICAgICAgKDEwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBBRENfQ1IxX0pBVVRPX01zayAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgQURDX0NSMV9KQVVUT19Qb3MpICAgICAgIC8qITwgMHgwMDAwMDQwMCAqLw0KI2RlZmluZSBBRENfQ1IxX0pBVVRPICAgICAgICAgICAgICAgICAgICAgICAgQURDX0NSMV9KQVVUT19Nc2sgICAgICAgICAgICAgICAgIC8qITwgQURDIGdyb3VwIGluamVjdGVkIGF1dG9tYXRpYyB0cmlnZ2VyIG1vZGUgKi8NCiNkZWZpbmUgQURDX0NSMV9ESVNDRU5fUG9zICAgICAgICAgICAgICAgICAgICgxMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgQURDX0NSMV9ESVNDRU5fTXNrICAgICAgICAgICAgICAgICAgICgweDFVIDw8IEFEQ19DUjFfRElTQ0VOX1BvcykgICAgICAvKiE8IDB4MDAwMDA4MDAgKi8NCiNkZWZpbmUgQURDX0NSMV9ESVNDRU4gICAgICAgICAgICAgICAgICAgICAgIEFEQ19DUjFfRElTQ0VOX01zayAgICAgICAgICAgICAgICAvKiE8IEFEQyBncm91cCByZWd1bGFyIHNlcXVlbmNlciBkaXNjb250aW51b3VzIG1vZGUgKi8NCiNkZWZpbmUgQURDX0NSMV9KRElTQ0VOX1BvcyAgICAgICAgICAgICAgICAgICgxMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgQURDX0NSMV9KRElTQ0VOX01zayAgICAgICAgICAgICAgICAgICgweDFVIDw8IEFEQ19DUjFfSkRJU0NFTl9Qb3MpICAgICAvKiE8IDB4MDAwMDEwMDAgKi8NCiNkZWZpbmUgQURDX0NSMV9KRElTQ0VOICAgICAgICAgICAgICAgICAgICAgIEFEQ19DUjFfSkRJU0NFTl9Nc2sgICAgICAgICAgICAgICAvKiE8IEFEQyBncm91cCBpbmplY3RlZCBzZXF1ZW5jZXIgZGlzY29udGludW91cyBtb2RlICovDQoNCiNkZWZpbmUgQURDX0NSMV9ESVNDTlVNX1BvcyAgICAgICAgICAgICAgICAgICgxM1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgQURDX0NSMV9ESVNDTlVNX01zayAgICAgICAgICAgICAgICAgICgweDdVIDw8IEFEQ19DUjFfRElTQ05VTV9Qb3MpICAgICAvKiE8IDB4MDAwMEUwMDAgKi8NCiNkZWZpbmUgQURDX0NSMV9ESVNDTlVNICAgICAgICAgICAgICAgICAgICAgIEFEQ19DUjFfRElTQ05VTV9Nc2sgICAgICAgICAgICAgICAvKiE8IEFEQyBncm91cCByZWd1bGFyIHNlcXVlbmNlciBkaXNjb250aW51b3VzIG51bWJlciBvZiByYW5rcyAqLw0KI2RlZmluZSBBRENfQ1IxX0RJU0NOVU1fMCAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgQURDX0NSMV9ESVNDTlVNX1BvcykgICAgIC8qITwgMHgwMDAwMjAwMCAqLw0KI2RlZmluZSBBRENfQ1IxX0RJU0NOVU1fMSAgICAgICAgICAgICAgICAgICAgKDB4MlUgPDwgQURDX0NSMV9ESVNDTlVNX1BvcykgICAgIC8qITwgMHgwMDAwNDAwMCAqLw0KI2RlZmluZSBBRENfQ1IxX0RJU0NOVU1fMiAgICAgICAgICAgICAgICAgICAgKDB4NFUgPDwgQURDX0NSMV9ESVNDTlVNX1BvcykgICAgIC8qITwgMHgwMDAwODAwMCAqLw0KDQojZGVmaW5lIEFEQ19DUjFfUEREX1BvcyAgICAgICAgICAgICAgICAgICAgICAoMTZVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEFEQ19DUjFfUEREX01zayAgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBBRENfQ1IxX1BERF9Qb3MpICAgICAgICAgLyohPCAweDAwMDEwMDAwICovDQojZGVmaW5lIEFEQ19DUjFfUEREICAgICAgICAgICAgICAgICAgICAgICAgICBBRENfQ1IxX1BERF9Nc2sgICAgICAgICAgICAgICAgICAgLyohPCBBREMgcG93ZXIgZG93biBkdXJpbmcgYXV0byBkZWxheSBwaGFzZSAqLw0KI2RlZmluZSBBRENfQ1IxX1BESV9Qb3MgICAgICAgICAgICAgICAgICAgICAgKDE3VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBBRENfQ1IxX1BESV9Nc2sgICAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgQURDX0NSMV9QRElfUG9zKSAgICAgICAgIC8qITwgMHgwMDAyMDAwMCAqLw0KI2RlZmluZSBBRENfQ1IxX1BESSAgICAgICAgICAgICAgICAgICAgICAgICAgQURDX0NSMV9QRElfTXNrICAgICAgICAgICAgICAgICAgIC8qITwgQURDIHBvd2VyIGRvd24gZHVyaW5nIGlkbGUgcGhhc2UgKi8NCg0KI2RlZmluZSBBRENfQ1IxX0pBV0RFTl9Qb3MgICAgICAgICAgICAgICAgICAgKDIyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBBRENfQ1IxX0pBV0RFTl9Nc2sgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgQURDX0NSMV9KQVdERU5fUG9zKSAgICAgIC8qITwgMHgwMDQwMDAwMCAqLw0KI2RlZmluZSBBRENfQ1IxX0pBV0RFTiAgICAgICAgICAgICAgICAgICAgICAgQURDX0NSMV9KQVdERU5fTXNrICAgICAgICAgICAgICAgIC8qITwgQURDIGFuYWxvZyB3YXRjaGRvZyAxIGVuYWJsZSBvbiBzY29wZSBBREMgZ3JvdXAgaW5qZWN0ZWQgKi8NCiNkZWZpbmUgQURDX0NSMV9BV0RFTl9Qb3MgICAgICAgICAgICAgICAgICAgICgyM1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgQURDX0NSMV9BV0RFTl9Nc2sgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IEFEQ19DUjFfQVdERU5fUG9zKSAgICAgICAvKiE8IDB4MDA4MDAwMDAgKi8NCiNkZWZpbmUgQURDX0NSMV9BV0RFTiAgICAgICAgICAgICAgICAgICAgICAgIEFEQ19DUjFfQVdERU5fTXNrICAgICAgICAgICAgICAgICAvKiE8IEFEQyBhbmFsb2cgd2F0Y2hkb2cgMSBlbmFibGUgb24gc2NvcGUgQURDIGdyb3VwIHJlZ3VsYXIgKi8NCg0KI2RlZmluZSBBRENfQ1IxX1JFU19Qb3MgICAgICAgICAgICAgICAgICAgICAgKDI0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBBRENfQ1IxX1JFU19Nc2sgICAgICAgICAgICAgICAgICAgICAgKDB4M1UgPDwgQURDX0NSMV9SRVNfUG9zKSAgICAgICAgIC8qITwgMHgwMzAwMDAwMCAqLw0KI2RlZmluZSBBRENfQ1IxX1JFUyAgICAgICAgICAgICAgICAgICAgICAgICAgQURDX0NSMV9SRVNfTXNrICAgICAgICAgICAgICAgICAgIC8qITwgQURDIHJlc29sdXRpb24gKi8NCiNkZWZpbmUgQURDX0NSMV9SRVNfMCAgICAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IEFEQ19DUjFfUkVTX1BvcykgICAgICAgICAvKiE8IDB4MDEwMDAwMDAgKi8NCiNkZWZpbmUgQURDX0NSMV9SRVNfMSAgICAgICAgICAgICAgICAgICAgICAgICgweDJVIDw8IEFEQ19DUjFfUkVTX1BvcykgICAgICAgICAvKiE8IDB4MDIwMDAwMDAgKi8NCg0KI2RlZmluZSBBRENfQ1IxX09WUklFX1BvcyAgICAgICAgICAgICAgICAgICAgKDI2VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBBRENfQ1IxX09WUklFX01zayAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgQURDX0NSMV9PVlJJRV9Qb3MpICAgICAgIC8qITwgMHgwNDAwMDAwMCAqLw0KI2RlZmluZSBBRENfQ1IxX09WUklFICAgICAgICAgICAgICAgICAgICAgICAgQURDX0NSMV9PVlJJRV9Nc2sgICAgICAgICAgICAgICAgIC8qITwgQURDIGdyb3VwIHJlZ3VsYXIgb3ZlcnJ1biBpbnRlcnJ1cHQgKi8NCg0KLyogTGVnYWN5IGRlZmluZXMgKi8NCiNkZWZpbmUgIEFEQ19DUjFfRU9DSUUgICAgICAgICAgICAgICAgICAgICAgIChBRENfQ1IxX0VPQ1NJRSkNCiNkZWZpbmUgIEFEQ19DUjFfSkVPQ0lFICAgICAgICAgICAgICAgICAgICAgIChBRENfQ1IxX0pFT1NJRSkNCg0KLyoqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBBRENfQ1IyIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgQURDX0NSMl9BRE9OX1BvcyAgICAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgQURDX0NSMl9BRE9OX01zayAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IEFEQ19DUjJfQURPTl9Qb3MpICAgICAgICAvKiE8IDB4MDAwMDAwMDEgKi8NCiNkZWZpbmUgQURDX0NSMl9BRE9OICAgICAgICAgICAgICAgICAgICAgICAgIEFEQ19DUjJfQURPTl9Nc2sgICAgICAgICAgICAgICAgICAvKiE8IEFEQyBlbmFibGUgKi8NCiNkZWZpbmUgQURDX0NSMl9DT05UX1BvcyAgICAgICAgICAgICAgICAgICAgICgxVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgQURDX0NSMl9DT05UX01zayAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IEFEQ19DUjJfQ09OVF9Qb3MpICAgICAgICAvKiE8IDB4MDAwMDAwMDIgKi8NCiNkZWZpbmUgQURDX0NSMl9DT05UICAgICAgICAgICAgICAgICAgICAgICAgIEFEQ19DUjJfQ09OVF9Nc2sgICAgICAgICAgICAgICAgICAvKiE8IEFEQyBncm91cCByZWd1bGFyIGNvbnRpbnVvdXMgY29udmVyc2lvbiBtb2RlICovDQojZGVmaW5lIEFEQ19DUjJfQ0ZHX1BvcyAgICAgICAgICAgICAgICAgICAgICAoMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEFEQ19DUjJfQ0ZHX01zayAgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBBRENfQ1IyX0NGR19Qb3MpICAgICAgICAgLyohPCAweDAwMDAwMDA0ICovDQojZGVmaW5lIEFEQ19DUjJfQ0ZHICAgICAgICAgICAgICAgICAgICAgICAgICBBRENfQ1IyX0NGR19Nc2sgICAgICAgICAgICAgICAgICAgLyohPCBBREMgY2hhbm5lbHMgYmFuayBzZWxlY3Rpb24gKi8NCg0KI2RlZmluZSBBRENfQ1IyX0RFTFNfUG9zICAgICAgICAgICAgICAgICAgICAgKDRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBBRENfQ1IyX0RFTFNfTXNrICAgICAgICAgICAgICAgICAgICAgKDB4N1UgPDwgQURDX0NSMl9ERUxTX1BvcykgICAgICAgIC8qITwgMHgwMDAwMDA3MCAqLw0KI2RlZmluZSBBRENfQ1IyX0RFTFMgICAgICAgICAgICAgICAgICAgICAgICAgQURDX0NSMl9ERUxTX01zayAgICAgICAgICAgICAgICAgIC8qITwgQURDIGF1dG8gZGVsYXkgc2VsZWN0aW9uICovDQojZGVmaW5lIEFEQ19DUjJfREVMU18wICAgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBBRENfQ1IyX0RFTFNfUG9zKSAgICAgICAgLyohPCAweDAwMDAwMDEwICovDQojZGVmaW5lIEFEQ19DUjJfREVMU18xICAgICAgICAgICAgICAgICAgICAgICAoMHgyVSA8PCBBRENfQ1IyX0RFTFNfUG9zKSAgICAgICAgLyohPCAweDAwMDAwMDIwICovDQojZGVmaW5lIEFEQ19DUjJfREVMU18yICAgICAgICAgICAgICAgICAgICAgICAoMHg0VSA8PCBBRENfQ1IyX0RFTFNfUG9zKSAgICAgICAgLyohPCAweDAwMDAwMDQwICovDQoNCiNkZWZpbmUgQURDX0NSMl9ETUFfUG9zICAgICAgICAgICAgICAgICAgICAgICg4VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgQURDX0NSMl9ETUFfTXNrICAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IEFEQ19DUjJfRE1BX1BvcykgICAgICAgICAvKiE8IDB4MDAwMDAxMDAgKi8NCiNkZWZpbmUgQURDX0NSMl9ETUEgICAgICAgICAgICAgICAgICAgICAgICAgIEFEQ19DUjJfRE1BX01zayAgICAgICAgICAgICAgICAgICAvKiE8IEFEQyBETUEgdHJhbnNmZXIgZW5hYmxlICovDQojZGVmaW5lIEFEQ19DUjJfRERTX1BvcyAgICAgICAgICAgICAgICAgICAgICAoOVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEFEQ19DUjJfRERTX01zayAgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBBRENfQ1IyX0REU19Qb3MpICAgICAgICAgLyohPCAweDAwMDAwMjAwICovDQojZGVmaW5lIEFEQ19DUjJfRERTICAgICAgICAgICAgICAgICAgICAgICAgICBBRENfQ1IyX0REU19Nc2sgICAgICAgICAgICAgICAgICAgLyohPCBBREMgRE1BIHRyYW5zZmVyIGNvbmZpZ3VyYXRpb24gKi8NCiNkZWZpbmUgQURDX0NSMl9FT0NTX1BvcyAgICAgICAgICAgICAgICAgICAgICgxMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgQURDX0NSMl9FT0NTX01zayAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IEFEQ19DUjJfRU9DU19Qb3MpICAgICAgICAvKiE8IDB4MDAwMDA0MDAgKi8NCiNkZWZpbmUgQURDX0NSMl9FT0NTICAgICAgICAgICAgICAgICAgICAgICAgIEFEQ19DUjJfRU9DU19Nc2sgICAgICAgICAgICAgICAgICAvKiE8IEFEQyBlbmQgb2YgdW5pdGFyeSBvciBlbmQgb2Ygc2VxdWVuY2UgY29udmVyc2lvbnMgc2VsZWN0aW9uICovDQojZGVmaW5lIEFEQ19DUjJfQUxJR05fUG9zICAgICAgICAgICAgICAgICAgICAoMTFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEFEQ19DUjJfQUxJR05fTXNrICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBBRENfQ1IyX0FMSUdOX1BvcykgICAgICAgLyohPCAweDAwMDAwODAwICovDQojZGVmaW5lIEFEQ19DUjJfQUxJR04gICAgICAgICAgICAgICAgICAgICAgICBBRENfQ1IyX0FMSUdOX01zayAgICAgICAgICAgICAgICAgLyohPCBBREMgZGF0YSBhbGlnbmVtZW50ICovDQoNCiNkZWZpbmUgQURDX0NSMl9KRVhUU0VMX1BvcyAgICAgICAgICAgICAgICAgICgxNlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgQURDX0NSMl9KRVhUU0VMX01zayAgICAgICAgICAgICAgICAgICgweEZVIDw8IEFEQ19DUjJfSkVYVFNFTF9Qb3MpICAgICAvKiE8IDB4MDAwRjAwMDAgKi8NCiNkZWZpbmUgQURDX0NSMl9KRVhUU0VMICAgICAgICAgICAgICAgICAgICAgIEFEQ19DUjJfSkVYVFNFTF9Nc2sgICAgICAgICAgICAgICAvKiE8IEFEQyBncm91cCBpbmplY3RlZCBleHRlcm5hbCB0cmlnZ2VyIHNvdXJjZSAqLw0KI2RlZmluZSBBRENfQ1IyX0pFWFRTRUxfMCAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgQURDX0NSMl9KRVhUU0VMX1BvcykgICAgIC8qITwgMHgwMDAxMDAwMCAqLw0KI2RlZmluZSBBRENfQ1IyX0pFWFRTRUxfMSAgICAgICAgICAgICAgICAgICAgKDB4MlUgPDwgQURDX0NSMl9KRVhUU0VMX1BvcykgICAgIC8qITwgMHgwMDAyMDAwMCAqLw0KI2RlZmluZSBBRENfQ1IyX0pFWFRTRUxfMiAgICAgICAgICAgICAgICAgICAgKDB4NFUgPDwgQURDX0NSMl9KRVhUU0VMX1BvcykgICAgIC8qITwgMHgwMDA0MDAwMCAqLw0KI2RlZmluZSBBRENfQ1IyX0pFWFRTRUxfMyAgICAgICAgICAgICAgICAgICAgKDB4OFUgPDwgQURDX0NSMl9KRVhUU0VMX1BvcykgICAgIC8qITwgMHgwMDA4MDAwMCAqLw0KDQojZGVmaW5lIEFEQ19DUjJfSkVYVEVOX1BvcyAgICAgICAgICAgICAgICAgICAoMjBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEFEQ19DUjJfSkVYVEVOX01zayAgICAgICAgICAgICAgICAgICAoMHgzVSA8PCBBRENfQ1IyX0pFWFRFTl9Qb3MpICAgICAgLyohPCAweDAwMzAwMDAwICovDQojZGVmaW5lIEFEQ19DUjJfSkVYVEVOICAgICAgICAgICAgICAgICAgICAgICBBRENfQ1IyX0pFWFRFTl9Nc2sgICAgICAgICAgICAgICAgLyohPCBBREMgZ3JvdXAgaW5qZWN0ZWQgZXh0ZXJuYWwgdHJpZ2dlciBwb2xhcml0eSAqLw0KI2RlZmluZSBBRENfQ1IyX0pFWFRFTl8wICAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgQURDX0NSMl9KRVhURU5fUG9zKSAgICAgIC8qITwgMHgwMDEwMDAwMCAqLw0KI2RlZmluZSBBRENfQ1IyX0pFWFRFTl8xICAgICAgICAgICAgICAgICAgICAgKDB4MlUgPDwgQURDX0NSMl9KRVhURU5fUG9zKSAgICAgIC8qITwgMHgwMDIwMDAwMCAqLw0KDQojZGVmaW5lIEFEQ19DUjJfSlNXU1RBUlRfUG9zICAgICAgICAgICAgICAgICAoMjJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEFEQ19DUjJfSlNXU1RBUlRfTXNrICAgICAgICAgICAgICAgICAoMHgxVSA8PCBBRENfQ1IyX0pTV1NUQVJUX1BvcykgICAgLyohPCAweDAwNDAwMDAwICovDQojZGVmaW5lIEFEQ19DUjJfSlNXU1RBUlQgICAgICAgICAgICAgICAgICAgICBBRENfQ1IyX0pTV1NUQVJUX01zayAgICAgICAgICAgICAgLyohPCBBREMgZ3JvdXAgaW5qZWN0ZWQgY29udmVyc2lvbiBzdGFydCAqLw0KDQojZGVmaW5lIEFEQ19DUjJfRVhUU0VMX1BvcyAgICAgICAgICAgICAgICAgICAoMjRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEFEQ19DUjJfRVhUU0VMX01zayAgICAgICAgICAgICAgICAgICAoMHhGVSA8PCBBRENfQ1IyX0VYVFNFTF9Qb3MpICAgICAgLyohPCAweDBGMDAwMDAwICovDQojZGVmaW5lIEFEQ19DUjJfRVhUU0VMICAgICAgICAgICAgICAgICAgICAgICBBRENfQ1IyX0VYVFNFTF9Nc2sgICAgICAgICAgICAgICAgLyohPCBBREMgZ3JvdXAgcmVndWxhciBleHRlcm5hbCB0cmlnZ2VyIHNvdXJjZSAqLw0KI2RlZmluZSBBRENfQ1IyX0VYVFNFTF8wICAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgQURDX0NSMl9FWFRTRUxfUG9zKSAgICAgIC8qITwgMHgwMTAwMDAwMCAqLw0KI2RlZmluZSBBRENfQ1IyX0VYVFNFTF8xICAgICAgICAgICAgICAgICAgICAgKDB4MlUgPDwgQURDX0NSMl9FWFRTRUxfUG9zKSAgICAgIC8qITwgMHgwMjAwMDAwMCAqLw0KI2RlZmluZSBBRENfQ1IyX0VYVFNFTF8yICAgICAgICAgICAgICAgICAgICAgKDB4NFUgPDwgQURDX0NSMl9FWFRTRUxfUG9zKSAgICAgIC8qITwgMHgwNDAwMDAwMCAqLw0KI2RlZmluZSBBRENfQ1IyX0VYVFNFTF8zICAgICAgICAgICAgICAgICAgICAgKDB4OFUgPDwgQURDX0NSMl9FWFRTRUxfUG9zKSAgICAgIC8qITwgMHgwODAwMDAwMCAqLw0KDQojZGVmaW5lIEFEQ19DUjJfRVhURU5fUG9zICAgICAgICAgICAgICAgICAgICAoMjhVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEFEQ19DUjJfRVhURU5fTXNrICAgICAgICAgICAgICAgICAgICAoMHgzVSA8PCBBRENfQ1IyX0VYVEVOX1BvcykgICAgICAgLyohPCAweDMwMDAwMDAwICovDQojZGVmaW5lIEFEQ19DUjJfRVhURU4gICAgICAgICAgICAgICAgICAgICAgICBBRENfQ1IyX0VYVEVOX01zayAgICAgICAgICAgICAgICAgLyohPCBBREMgZ3JvdXAgcmVndWxhciBleHRlcm5hbCB0cmlnZ2VyIHBvbGFyaXR5ICovDQojZGVmaW5lIEFEQ19DUjJfRVhURU5fMCAgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBBRENfQ1IyX0VYVEVOX1BvcykgICAgICAgLyohPCAweDEwMDAwMDAwICovDQojZGVmaW5lIEFEQ19DUjJfRVhURU5fMSAgICAgICAgICAgICAgICAgICAgICAoMHgyVSA8PCBBRENfQ1IyX0VYVEVOX1BvcykgICAgICAgLyohPCAweDIwMDAwMDAwICovDQoNCiNkZWZpbmUgQURDX0NSMl9TV1NUQVJUX1BvcyAgICAgICAgICAgICAgICAgICgzMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgQURDX0NSMl9TV1NUQVJUX01zayAgICAgICAgICAgICAgICAgICgweDFVIDw8IEFEQ19DUjJfU1dTVEFSVF9Qb3MpICAgICAvKiE8IDB4NDAwMDAwMDAgKi8NCiNkZWZpbmUgQURDX0NSMl9TV1NUQVJUICAgICAgICAgICAgICAgICAgICAgIEFEQ19DUjJfU1dTVEFSVF9Nc2sgICAgICAgICAgICAgICAvKiE8IEFEQyBncm91cCByZWd1bGFyIGNvbnZlcnNpb24gc3RhcnQgKi8NCg0KLyoqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIEFEQ19TTVBSMSByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgQURDX1NNUFIxX1NNUDIwX1BvcyAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgQURDX1NNUFIxX1NNUDIwX01zayAgICAgICAgICAgICAgICAgICgweDdVIDw8IEFEQ19TTVBSMV9TTVAyMF9Qb3MpICAgICAvKiE8IDB4MDAwMDAwMDcgKi8NCiNkZWZpbmUgQURDX1NNUFIxX1NNUDIwICAgICAgICAgICAgICAgICAgICAgIEFEQ19TTVBSMV9TTVAyMF9Nc2sgICAgICAgICAgICAgICAvKiE8IEFEQyBjaGFubmVsIDIwIHNhbXBsaW5nIHRpbWUgc2VsZWN0aW9uICovDQojZGVmaW5lIEFEQ19TTVBSMV9TTVAyMF8wICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBBRENfU01QUjFfU01QMjBfUG9zKSAgICAgLyohPCAweDAwMDAwMDAxICovDQojZGVmaW5lIEFEQ19TTVBSMV9TTVAyMF8xICAgICAgICAgICAgICAgICAgICAoMHgyVSA8PCBBRENfU01QUjFfU01QMjBfUG9zKSAgICAgLyohPCAweDAwMDAwMDAyICovDQojZGVmaW5lIEFEQ19TTVBSMV9TTVAyMF8yICAgICAgICAgICAgICAgICAgICAoMHg0VSA8PCBBRENfU01QUjFfU01QMjBfUG9zKSAgICAgLyohPCAweDAwMDAwMDA0ICovDQoNCiNkZWZpbmUgQURDX1NNUFIxX1NNUDIxX1BvcyAgICAgICAgICAgICAgICAgICgzVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgQURDX1NNUFIxX1NNUDIxX01zayAgICAgICAgICAgICAgICAgICgweDdVIDw8IEFEQ19TTVBSMV9TTVAyMV9Qb3MpICAgICAvKiE8IDB4MDAwMDAwMzggKi8NCiNkZWZpbmUgQURDX1NNUFIxX1NNUDIxICAgICAgICAgICAgICAgICAgICAgIEFEQ19TTVBSMV9TTVAyMV9Nc2sgICAgICAgICAgICAgICAvKiE8IEFEQyBjaGFubmVsIDIxIHNhbXBsaW5nIHRpbWUgc2VsZWN0aW9uICovDQojZGVmaW5lIEFEQ19TTVBSMV9TTVAyMV8wICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBBRENfU01QUjFfU01QMjFfUG9zKSAgICAgLyohPCAweDAwMDAwMDA4ICovDQojZGVmaW5lIEFEQ19TTVBSMV9TTVAyMV8xICAgICAgICAgICAgICAgICAgICAoMHgyVSA8PCBBRENfU01QUjFfU01QMjFfUG9zKSAgICAgLyohPCAweDAwMDAwMDEwICovDQojZGVmaW5lIEFEQ19TTVBSMV9TTVAyMV8yICAgICAgICAgICAgICAgICAgICAoMHg0VSA8PCBBRENfU01QUjFfU01QMjFfUG9zKSAgICAgLyohPCAweDAwMDAwMDIwICovDQoNCiNkZWZpbmUgQURDX1NNUFIxX1NNUDIyX1BvcyAgICAgICAgICAgICAgICAgICg2VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgQURDX1NNUFIxX1NNUDIyX01zayAgICAgICAgICAgICAgICAgICgweDdVIDw8IEFEQ19TTVBSMV9TTVAyMl9Qb3MpICAgICAvKiE8IDB4MDAwMDAxQzAgKi8NCiNkZWZpbmUgQURDX1NNUFIxX1NNUDIyICAgICAgICAgICAgICAgICAgICAgIEFEQ19TTVBSMV9TTVAyMl9Nc2sgICAgICAgICAgICAgICAvKiE8IEFEQyBjaGFubmVsIDIyIHNhbXBsaW5nIHRpbWUgc2VsZWN0aW9uICovDQojZGVmaW5lIEFEQ19TTVBSMV9TTVAyMl8wICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBBRENfU01QUjFfU01QMjJfUG9zKSAgICAgLyohPCAweDAwMDAwMDQwICovDQojZGVmaW5lIEFEQ19TTVBSMV9TTVAyMl8xICAgICAgICAgICAgICAgICAgICAoMHgyVSA8PCBBRENfU01QUjFfU01QMjJfUG9zKSAgICAgLyohPCAweDAwMDAwMDgwICovDQojZGVmaW5lIEFEQ19TTVBSMV9TTVAyMl8yICAgICAgICAgICAgICAgICAgICAoMHg0VSA8PCBBRENfU01QUjFfU01QMjJfUG9zKSAgICAgLyohPCAweDAwMDAwMTAwICovDQoNCiNkZWZpbmUgQURDX1NNUFIxX1NNUDIzX1BvcyAgICAgICAgICAgICAgICAgICg5VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgQURDX1NNUFIxX1NNUDIzX01zayAgICAgICAgICAgICAgICAgICgweDdVIDw8IEFEQ19TTVBSMV9TTVAyM19Qb3MpICAgICAvKiE8IDB4MDAwMDBFMDAgKi8NCiNkZWZpbmUgQURDX1NNUFIxX1NNUDIzICAgICAgICAgICAgICAgICAgICAgIEFEQ19TTVBSMV9TTVAyM19Nc2sgICAgICAgICAgICAgICAvKiE8IEFEQyBjaGFubmVsIDIzIHNhbXBsaW5nIHRpbWUgc2VsZWN0aW9uICovDQojZGVmaW5lIEFEQ19TTVBSMV9TTVAyM18wICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBBRENfU01QUjFfU01QMjNfUG9zKSAgICAgLyohPCAweDAwMDAwMjAwICovDQojZGVmaW5lIEFEQ19TTVBSMV9TTVAyM18xICAgICAgICAgICAgICAgICAgICAoMHgyVSA8PCBBRENfU01QUjFfU01QMjNfUG9zKSAgICAgLyohPCAweDAwMDAwNDAwICovDQojZGVmaW5lIEFEQ19TTVBSMV9TTVAyM18yICAgICAgICAgICAgICAgICAgICAoMHg0VSA8PCBBRENfU01QUjFfU01QMjNfUG9zKSAgICAgLyohPCAweDAwMDAwODAwICovDQoNCiNkZWZpbmUgQURDX1NNUFIxX1NNUDI0X1BvcyAgICAgICAgICAgICAgICAgICgxMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgQURDX1NNUFIxX1NNUDI0X01zayAgICAgICAgICAgICAgICAgICgweDdVIDw8IEFEQ19TTVBSMV9TTVAyNF9Qb3MpICAgICAvKiE8IDB4MDAwMDcwMDAgKi8NCiNkZWZpbmUgQURDX1NNUFIxX1NNUDI0ICAgICAgICAgICAgICAgICAgICAgIEFEQ19TTVBSMV9TTVAyNF9Nc2sgICAgICAgICAgICAgICAvKiE8IEFEQyBjaGFubmVsIDI0IHNhbXBsaW5nIHRpbWUgc2VsZWN0aW9uICovDQojZGVmaW5lIEFEQ19TTVBSMV9TTVAyNF8wICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBBRENfU01QUjFfU01QMjRfUG9zKSAgICAgLyohPCAweDAwMDAxMDAwICovDQojZGVmaW5lIEFEQ19TTVBSMV9TTVAyNF8xICAgICAgICAgICAgICAgICAgICAoMHgyVSA8PCBBRENfU01QUjFfU01QMjRfUG9zKSAgICAgLyohPCAweDAwMDAyMDAwICovDQojZGVmaW5lIEFEQ19TTVBSMV9TTVAyNF8yICAgICAgICAgICAgICAgICAgICAoMHg0VSA8PCBBRENfU01QUjFfU01QMjRfUG9zKSAgICAgLyohPCAweDAwMDA0MDAwICovDQoNCiNkZWZpbmUgQURDX1NNUFIxX1NNUDI1X1BvcyAgICAgICAgICAgICAgICAgICgxNVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgQURDX1NNUFIxX1NNUDI1X01zayAgICAgICAgICAgICAgICAgICgweDdVIDw8IEFEQ19TTVBSMV9TTVAyNV9Qb3MpICAgICAvKiE8IDB4MDAwMzgwMDAgKi8NCiNkZWZpbmUgQURDX1NNUFIxX1NNUDI1ICAgICAgICAgICAgICAgICAgICAgIEFEQ19TTVBSMV9TTVAyNV9Nc2sgICAgICAgICAgICAgICAvKiE8IEFEQyBjaGFubmVsIDI1IHNhbXBsaW5nIHRpbWUgc2VsZWN0aW9uICovDQojZGVmaW5lIEFEQ19TTVBSMV9TTVAyNV8wICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBBRENfU01QUjFfU01QMjVfUG9zKSAgICAgLyohPCAweDAwMDA4MDAwICovDQojZGVmaW5lIEFEQ19TTVBSMV9TTVAyNV8xICAgICAgICAgICAgICAgICAgICAoMHgyVSA8PCBBRENfU01QUjFfU01QMjVfUG9zKSAgICAgLyohPCAweDAwMDEwMDAwICovDQojZGVmaW5lIEFEQ19TTVBSMV9TTVAyNV8yICAgICAgICAgICAgICAgICAgICAoMHg0VSA8PCBBRENfU01QUjFfU01QMjVfUG9zKSAgICAgLyohPCAweDAwMDIwMDAwICovDQoNCiNkZWZpbmUgQURDX1NNUFIxX1NNUDI2X1BvcyAgICAgICAgICAgICAgICAgICgxOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgQURDX1NNUFIxX1NNUDI2X01zayAgICAgICAgICAgICAgICAgICgweDdVIDw8IEFEQ19TTVBSMV9TTVAyNl9Qb3MpICAgICAvKiE8IDB4MDAxQzAwMDAgKi8NCiNkZWZpbmUgQURDX1NNUFIxX1NNUDI2ICAgICAgICAgICAgICAgICAgICAgIEFEQ19TTVBSMV9TTVAyNl9Nc2sgICAgICAgICAgICAgICAvKiE8IEFEQyBjaGFubmVsIDI2IHNhbXBsaW5nIHRpbWUgc2VsZWN0aW9uICovDQojZGVmaW5lIEFEQ19TTVBSMV9TTVAyNl8wICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBBRENfU01QUjFfU01QMjZfUG9zKSAgICAgLyohPCAweDAwMDQwMDAwICovDQojZGVmaW5lIEFEQ19TTVBSMV9TTVAyNl8xICAgICAgICAgICAgICAgICAgICAoMHgyVSA8PCBBRENfU01QUjFfU01QMjZfUG9zKSAgICAgLyohPCAweDAwMDgwMDAwICovDQojZGVmaW5lIEFEQ19TTVBSMV9TTVAyNl8yICAgICAgICAgICAgICAgICAgICAoMHg0VSA8PCBBRENfU01QUjFfU01QMjZfUG9zKSAgICAgLyohPCAweDAwMTAwMDAwICovDQoNCiNkZWZpbmUgQURDX1NNUFIxX1NNUDI3X1BvcyAgICAgICAgICAgICAgICAgICgyMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgQURDX1NNUFIxX1NNUDI3X01zayAgICAgICAgICAgICAgICAgICgweDdVIDw8IEFEQ19TTVBSMV9TTVAyN19Qb3MpICAgICAvKiE8IDB4MDBFMDAwMDAgKi8NCiNkZWZpbmUgQURDX1NNUFIxX1NNUDI3ICAgICAgICAgICAgICAgICAgICAgIEFEQ19TTVBSMV9TTVAyN19Nc2sgICAgICAgICAgICAgICAvKiE8IEFEQyBjaGFubmVsIDI3IHNhbXBsaW5nIHRpbWUgc2VsZWN0aW9uICovDQojZGVmaW5lIEFEQ19TTVBSMV9TTVAyN18wICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBBRENfU01QUjFfU01QMjdfUG9zKSAgICAgLyohPCAweDAwMjAwMDAwICovDQojZGVmaW5lIEFEQ19TTVBSMV9TTVAyN18xICAgICAgICAgICAgICAgICAgICAoMHgyVSA8PCBBRENfU01QUjFfU01QMjdfUG9zKSAgICAgLyohPCAweDAwNDAwMDAwICovDQojZGVmaW5lIEFEQ19TTVBSMV9TTVAyN18yICAgICAgICAgICAgICAgICAgICAoMHg0VSA8PCBBRENfU01QUjFfU01QMjdfUG9zKSAgICAgLyohPCAweDAwODAwMDAwICovDQoNCiNkZWZpbmUgQURDX1NNUFIxX1NNUDI4X1BvcyAgICAgICAgICAgICAgICAgICgyNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgQURDX1NNUFIxX1NNUDI4X01zayAgICAgICAgICAgICAgICAgICgweDdVIDw8IEFEQ19TTVBSMV9TTVAyOF9Qb3MpICAgICAvKiE8IDB4MDcwMDAwMDAgKi8NCiNkZWZpbmUgQURDX1NNUFIxX1NNUDI4ICAgICAgICAgICAgICAgICAgICAgIEFEQ19TTVBSMV9TTVAyOF9Nc2sgICAgICAgICAgICAgICAvKiE8IEFEQyBjaGFubmVsIDI4IHNhbXBsaW5nIHRpbWUgc2VsZWN0aW9uICovDQojZGVmaW5lIEFEQ19TTVBSMV9TTVAyOF8wICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBBRENfU01QUjFfU01QMjhfUG9zKSAgICAgLyohPCAweDAxMDAwMDAwICovDQojZGVmaW5lIEFEQ19TTVBSMV9TTVAyOF8xICAgICAgICAgICAgICAgICAgICAoMHgyVSA8PCBBRENfU01QUjFfU01QMjhfUG9zKSAgICAgLyohPCAweDAyMDAwMDAwICovDQojZGVmaW5lIEFEQ19TTVBSMV9TTVAyOF8yICAgICAgICAgICAgICAgICAgICAoMHg0VSA8PCBBRENfU01QUjFfU01QMjhfUG9zKSAgICAgLyohPCAweDA0MDAwMDAwICovDQoNCiNkZWZpbmUgQURDX1NNUFIxX1NNUDI5X1BvcyAgICAgICAgICAgICAgICAgICgyN1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgQURDX1NNUFIxX1NNUDI5X01zayAgICAgICAgICAgICAgICAgICgweDdVIDw8IEFEQ19TTVBSMV9TTVAyOV9Qb3MpICAgICAvKiE8IDB4MzgwMDAwMDAgKi8NCiNkZWZpbmUgQURDX1NNUFIxX1NNUDI5ICAgICAgICAgICAgICAgICAgICAgIEFEQ19TTVBSMV9TTVAyOV9Nc2sgICAgICAgICAgICAgICAvKiE8IEFEQyBjaGFubmVsIDI5IHNhbXBsaW5nIHRpbWUgc2VsZWN0aW9uICovDQojZGVmaW5lIEFEQ19TTVBSMV9TTVAyOV8wICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBBRENfU01QUjFfU01QMjlfUG9zKSAgICAgLyohPCAweDA4MDAwMDAwICovDQojZGVmaW5lIEFEQ19TTVBSMV9TTVAyOV8xICAgICAgICAgICAgICAgICAgICAoMHgyVSA8PCBBRENfU01QUjFfU01QMjlfUG9zKSAgICAgLyohPCAweDEwMDAwMDAwICovDQojZGVmaW5lIEFEQ19TTVBSMV9TTVAyOV8yICAgICAgICAgICAgICAgICAgICAoMHg0VSA8PCBBRENfU01QUjFfU01QMjlfUG9zKSAgICAgLyohPCAweDIwMDAwMDAwICovDQoNCi8qKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBBRENfU01QUjIgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIEFEQ19TTVBSMl9TTVAxMF9Qb3MgICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEFEQ19TTVBSMl9TTVAxMF9Nc2sgICAgICAgICAgICAgICAgICAoMHg3VSA8PCBBRENfU01QUjJfU01QMTBfUG9zKSAgICAgLyohPCAweDAwMDAwMDA3ICovDQojZGVmaW5lIEFEQ19TTVBSMl9TTVAxMCAgICAgICAgICAgICAgICAgICAgICBBRENfU01QUjJfU01QMTBfTXNrICAgICAgICAgICAgICAgLyohPCBBREMgY2hhbm5lbCAxMCBzYW1wbGluZyB0aW1lIHNlbGVjdGlvbiAqLw0KI2RlZmluZSBBRENfU01QUjJfU01QMTBfMCAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgQURDX1NNUFIyX1NNUDEwX1BvcykgICAgIC8qITwgMHgwMDAwMDAwMSAqLw0KI2RlZmluZSBBRENfU01QUjJfU01QMTBfMSAgICAgICAgICAgICAgICAgICAgKDB4MlUgPDwgQURDX1NNUFIyX1NNUDEwX1BvcykgICAgIC8qITwgMHgwMDAwMDAwMiAqLw0KI2RlZmluZSBBRENfU01QUjJfU01QMTBfMiAgICAgICAgICAgICAgICAgICAgKDB4NFUgPDwgQURDX1NNUFIyX1NNUDEwX1BvcykgICAgIC8qITwgMHgwMDAwMDAwNCAqLw0KDQojZGVmaW5lIEFEQ19TTVBSMl9TTVAxMV9Qb3MgICAgICAgICAgICAgICAgICAoM1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEFEQ19TTVBSMl9TTVAxMV9Nc2sgICAgICAgICAgICAgICAgICAoMHg3VSA8PCBBRENfU01QUjJfU01QMTFfUG9zKSAgICAgLyohPCAweDAwMDAwMDM4ICovDQojZGVmaW5lIEFEQ19TTVBSMl9TTVAxMSAgICAgICAgICAgICAgICAgICAgICBBRENfU01QUjJfU01QMTFfTXNrICAgICAgICAgICAgICAgLyohPCBBREMgY2hhbm5lbCAxMSBzYW1wbGluZyB0aW1lIHNlbGVjdGlvbiAqLw0KI2RlZmluZSBBRENfU01QUjJfU01QMTFfMCAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgQURDX1NNUFIyX1NNUDExX1BvcykgICAgIC8qITwgMHgwMDAwMDAwOCAqLw0KI2RlZmluZSBBRENfU01QUjJfU01QMTFfMSAgICAgICAgICAgICAgICAgICAgKDB4MlUgPDwgQURDX1NNUFIyX1NNUDExX1BvcykgICAgIC8qITwgMHgwMDAwMDAxMCAqLw0KI2RlZmluZSBBRENfU01QUjJfU01QMTFfMiAgICAgICAgICAgICAgICAgICAgKDB4NFUgPDwgQURDX1NNUFIyX1NNUDExX1BvcykgICAgIC8qITwgMHgwMDAwMDAyMCAqLw0KDQojZGVmaW5lIEFEQ19TTVBSMl9TTVAxMl9Qb3MgICAgICAgICAgICAgICAgICAoNlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEFEQ19TTVBSMl9TTVAxMl9Nc2sgICAgICAgICAgICAgICAgICAoMHg3VSA8PCBBRENfU01QUjJfU01QMTJfUG9zKSAgICAgLyohPCAweDAwMDAwMUMwICovDQojZGVmaW5lIEFEQ19TTVBSMl9TTVAxMiAgICAgICAgICAgICAgICAgICAgICBBRENfU01QUjJfU01QMTJfTXNrICAgICAgICAgICAgICAgLyohPCBBREMgY2hhbm5lbCAxMiBzYW1wbGluZyB0aW1lIHNlbGVjdGlvbiAqLw0KI2RlZmluZSBBRENfU01QUjJfU01QMTJfMCAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgQURDX1NNUFIyX1NNUDEyX1BvcykgICAgIC8qITwgMHgwMDAwMDA0MCAqLw0KI2RlZmluZSBBRENfU01QUjJfU01QMTJfMSAgICAgICAgICAgICAgICAgICAgKDB4MlUgPDwgQURDX1NNUFIyX1NNUDEyX1BvcykgICAgIC8qITwgMHgwMDAwMDA4MCAqLw0KI2RlZmluZSBBRENfU01QUjJfU01QMTJfMiAgICAgICAgICAgICAgICAgICAgKDB4NFUgPDwgQURDX1NNUFIyX1NNUDEyX1BvcykgICAgIC8qITwgMHgwMDAwMDEwMCAqLw0KDQojZGVmaW5lIEFEQ19TTVBSMl9TTVAxM19Qb3MgICAgICAgICAgICAgICAgICAoOVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEFEQ19TTVBSMl9TTVAxM19Nc2sgICAgICAgICAgICAgICAgICAoMHg3VSA8PCBBRENfU01QUjJfU01QMTNfUG9zKSAgICAgLyohPCAweDAwMDAwRTAwICovDQojZGVmaW5lIEFEQ19TTVBSMl9TTVAxMyAgICAgICAgICAgICAgICAgICAgICBBRENfU01QUjJfU01QMTNfTXNrICAgICAgICAgICAgICAgLyohPCBBREMgY2hhbm5lbCAxMyBzYW1wbGluZyB0aW1lIHNlbGVjdGlvbiAqLw0KI2RlZmluZSBBRENfU01QUjJfU01QMTNfMCAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgQURDX1NNUFIyX1NNUDEzX1BvcykgICAgIC8qITwgMHgwMDAwMDIwMCAqLw0KI2RlZmluZSBBRENfU01QUjJfU01QMTNfMSAgICAgICAgICAgICAgICAgICAgKDB4MlUgPDwgQURDX1NNUFIyX1NNUDEzX1BvcykgICAgIC8qITwgMHgwMDAwMDQwMCAqLw0KI2RlZmluZSBBRENfU01QUjJfU01QMTNfMiAgICAgICAgICAgICAgICAgICAgKDB4NFUgPDwgQURDX1NNUFIyX1NNUDEzX1BvcykgICAgIC8qITwgMHgwMDAwMDgwMCAqLw0KDQojZGVmaW5lIEFEQ19TTVBSMl9TTVAxNF9Qb3MgICAgICAgICAgICAgICAgICAoMTJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEFEQ19TTVBSMl9TTVAxNF9Nc2sgICAgICAgICAgICAgICAgICAoMHg3VSA8PCBBRENfU01QUjJfU01QMTRfUG9zKSAgICAgLyohPCAweDAwMDA3MDAwICovDQojZGVmaW5lIEFEQ19TTVBSMl9TTVAxNCAgICAgICAgICAgICAgICAgICAgICBBRENfU01QUjJfU01QMTRfTXNrICAgICAgICAgICAgICAgLyohPCBBREMgY2hhbm5lbCAxNCBzYW1wbGluZyB0aW1lIHNlbGVjdGlvbiAqLw0KI2RlZmluZSBBRENfU01QUjJfU01QMTRfMCAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgQURDX1NNUFIyX1NNUDE0X1BvcykgICAgIC8qITwgMHgwMDAwMTAwMCAqLw0KI2RlZmluZSBBRENfU01QUjJfU01QMTRfMSAgICAgICAgICAgICAgICAgICAgKDB4MlUgPDwgQURDX1NNUFIyX1NNUDE0X1BvcykgICAgIC8qITwgMHgwMDAwMjAwMCAqLw0KI2RlZmluZSBBRENfU01QUjJfU01QMTRfMiAgICAgICAgICAgICAgICAgICAgKDB4NFUgPDwgQURDX1NNUFIyX1NNUDE0X1BvcykgICAgIC8qITwgMHgwMDAwNDAwMCAqLw0KDQojZGVmaW5lIEFEQ19TTVBSMl9TTVAxNV9Qb3MgICAgICAgICAgICAgICAgICAoMTVVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEFEQ19TTVBSMl9TTVAxNV9Nc2sgICAgICAgICAgICAgICAgICAoMHg3VSA8PCBBRENfU01QUjJfU01QMTVfUG9zKSAgICAgLyohPCAweDAwMDM4MDAwICovDQojZGVmaW5lIEFEQ19TTVBSMl9TTVAxNSAgICAgICAgICAgICAgICAgICAgICBBRENfU01QUjJfU01QMTVfTXNrICAgICAgICAgICAgICAgLyohPCBBREMgY2hhbm5lbCA1IHNhbXBsaW5nIHRpbWUgc2VsZWN0aW9uICovDQojZGVmaW5lIEFEQ19TTVBSMl9TTVAxNV8wICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBBRENfU01QUjJfU01QMTVfUG9zKSAgICAgLyohPCAweDAwMDA4MDAwICovDQojZGVmaW5lIEFEQ19TTVBSMl9TTVAxNV8xICAgICAgICAgICAgICAgICAgICAoMHgyVSA8PCBBRENfU01QUjJfU01QMTVfUG9zKSAgICAgLyohPCAweDAwMDEwMDAwICovDQojZGVmaW5lIEFEQ19TTVBSMl9TTVAxNV8yICAgICAgICAgICAgICAgICAgICAoMHg0VSA8PCBBRENfU01QUjJfU01QMTVfUG9zKSAgICAgLyohPCAweDAwMDIwMDAwICovDQoNCiNkZWZpbmUgQURDX1NNUFIyX1NNUDE2X1BvcyAgICAgICAgICAgICAgICAgICgxOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgQURDX1NNUFIyX1NNUDE2X01zayAgICAgICAgICAgICAgICAgICgweDdVIDw8IEFEQ19TTVBSMl9TTVAxNl9Qb3MpICAgICAvKiE8IDB4MDAxQzAwMDAgKi8NCiNkZWZpbmUgQURDX1NNUFIyX1NNUDE2ICAgICAgICAgICAgICAgICAgICAgIEFEQ19TTVBSMl9TTVAxNl9Nc2sgICAgICAgICAgICAgICAvKiE8IEFEQyBjaGFubmVsIDE2IHNhbXBsaW5nIHRpbWUgc2VsZWN0aW9uICovDQojZGVmaW5lIEFEQ19TTVBSMl9TTVAxNl8wICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBBRENfU01QUjJfU01QMTZfUG9zKSAgICAgLyohPCAweDAwMDQwMDAwICovDQojZGVmaW5lIEFEQ19TTVBSMl9TTVAxNl8xICAgICAgICAgICAgICAgICAgICAoMHgyVSA8PCBBRENfU01QUjJfU01QMTZfUG9zKSAgICAgLyohPCAweDAwMDgwMDAwICovDQojZGVmaW5lIEFEQ19TTVBSMl9TTVAxNl8yICAgICAgICAgICAgICAgICAgICAoMHg0VSA8PCBBRENfU01QUjJfU01QMTZfUG9zKSAgICAgLyohPCAweDAwMTAwMDAwICovDQoNCiNkZWZpbmUgQURDX1NNUFIyX1NNUDE3X1BvcyAgICAgICAgICAgICAgICAgICgyMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgQURDX1NNUFIyX1NNUDE3X01zayAgICAgICAgICAgICAgICAgICgweDdVIDw8IEFEQ19TTVBSMl9TTVAxN19Qb3MpICAgICAvKiE8IDB4MDBFMDAwMDAgKi8NCiNkZWZpbmUgQURDX1NNUFIyX1NNUDE3ICAgICAgICAgICAgICAgICAgICAgIEFEQ19TTVBSMl9TTVAxN19Nc2sgICAgICAgICAgICAgICAvKiE8IEFEQyBjaGFubmVsIDE3IHNhbXBsaW5nIHRpbWUgc2VsZWN0aW9uICovDQojZGVmaW5lIEFEQ19TTVBSMl9TTVAxN18wICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBBRENfU01QUjJfU01QMTdfUG9zKSAgICAgLyohPCAweDAwMjAwMDAwICovDQojZGVmaW5lIEFEQ19TTVBSMl9TTVAxN18xICAgICAgICAgICAgICAgICAgICAoMHgyVSA8PCBBRENfU01QUjJfU01QMTdfUG9zKSAgICAgLyohPCAweDAwNDAwMDAwICovDQojZGVmaW5lIEFEQ19TTVBSMl9TTVAxN18yICAgICAgICAgICAgICAgICAgICAoMHg0VSA8PCBBRENfU01QUjJfU01QMTdfUG9zKSAgICAgLyohPCAweDAwODAwMDAwICovDQoNCiNkZWZpbmUgQURDX1NNUFIyX1NNUDE4X1BvcyAgICAgICAgICAgICAgICAgICgyNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgQURDX1NNUFIyX1NNUDE4X01zayAgICAgICAgICAgICAgICAgICgweDdVIDw8IEFEQ19TTVBSMl9TTVAxOF9Qb3MpICAgICAvKiE8IDB4MDcwMDAwMDAgKi8NCiNkZWZpbmUgQURDX1NNUFIyX1NNUDE4ICAgICAgICAgICAgICAgICAgICAgIEFEQ19TTVBSMl9TTVAxOF9Nc2sgICAgICAgICAgICAgICAvKiE8IEFEQyBjaGFubmVsIDE4IHNhbXBsaW5nIHRpbWUgc2VsZWN0aW9uICovDQojZGVmaW5lIEFEQ19TTVBSMl9TTVAxOF8wICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBBRENfU01QUjJfU01QMThfUG9zKSAgICAgLyohPCAweDAxMDAwMDAwICovDQojZGVmaW5lIEFEQ19TTVBSMl9TTVAxOF8xICAgICAgICAgICAgICAgICAgICAoMHgyVSA8PCBBRENfU01QUjJfU01QMThfUG9zKSAgICAgLyohPCAweDAyMDAwMDAwICovDQojZGVmaW5lIEFEQ19TTVBSMl9TTVAxOF8yICAgICAgICAgICAgICAgICAgICAoMHg0VSA8PCBBRENfU01QUjJfU01QMThfUG9zKSAgICAgLyohPCAweDA0MDAwMDAwICovDQoNCiNkZWZpbmUgQURDX1NNUFIyX1NNUDE5X1BvcyAgICAgICAgICAgICAgICAgICgyN1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgQURDX1NNUFIyX1NNUDE5X01zayAgICAgICAgICAgICAgICAgICgweDdVIDw8IEFEQ19TTVBSMl9TTVAxOV9Qb3MpICAgICAvKiE8IDB4MzgwMDAwMDAgKi8NCiNkZWZpbmUgQURDX1NNUFIyX1NNUDE5ICAgICAgICAgICAgICAgICAgICAgIEFEQ19TTVBSMl9TTVAxOV9Nc2sgICAgICAgICAgICAgICAvKiE8IEFEQyBjaGFubmVsIDE5IHNhbXBsaW5nIHRpbWUgc2VsZWN0aW9uICovDQojZGVmaW5lIEFEQ19TTVBSMl9TTVAxOV8wICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBBRENfU01QUjJfU01QMTlfUG9zKSAgICAgLyohPCAweDA4MDAwMDAwICovDQojZGVmaW5lIEFEQ19TTVBSMl9TTVAxOV8xICAgICAgICAgICAgICAgICAgICAoMHgyVSA8PCBBRENfU01QUjJfU01QMTlfUG9zKSAgICAgLyohPCAweDEwMDAwMDAwICovDQojZGVmaW5lIEFEQ19TTVBSMl9TTVAxOV8yICAgICAgICAgICAgICAgICAgICAoMHg0VSA8PCBBRENfU01QUjJfU01QMTlfUG9zKSAgICAgLyohPCAweDIwMDAwMDAwICovDQoNCi8qKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBBRENfU01QUjMgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIEFEQ19TTVBSM19TTVAwX1BvcyAgICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEFEQ19TTVBSM19TTVAwX01zayAgICAgICAgICAgICAgICAgICAoMHg3VSA8PCBBRENfU01QUjNfU01QMF9Qb3MpICAgICAgLyohPCAweDAwMDAwMDA3ICovDQojZGVmaW5lIEFEQ19TTVBSM19TTVAwICAgICAgICAgICAgICAgICAgICAgICBBRENfU01QUjNfU01QMF9Nc2sgICAgICAgICAgICAgICAgLyohPCBBREMgY2hhbm5lbCAwIHNhbXBsaW5nIHRpbWUgc2VsZWN0aW9uICovDQojZGVmaW5lIEFEQ19TTVBSM19TTVAwXzAgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBBRENfU01QUjNfU01QMF9Qb3MpICAgICAgLyohPCAweDAwMDAwMDAxICovDQojZGVmaW5lIEFEQ19TTVBSM19TTVAwXzEgICAgICAgICAgICAgICAgICAgICAoMHgyVSA8PCBBRENfU01QUjNfU01QMF9Qb3MpICAgICAgLyohPCAweDAwMDAwMDAyICovDQojZGVmaW5lIEFEQ19TTVBSM19TTVAwXzIgICAgICAgICAgICAgICAgICAgICAoMHg0VSA8PCBBRENfU01QUjNfU01QMF9Qb3MpICAgICAgLyohPCAweDAwMDAwMDA0ICovDQogDQojZGVmaW5lIEFEQ19TTVBSM19TTVAxX1BvcyAgICAgICAgICAgICAgICAgICAoM1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEFEQ19TTVBSM19TTVAxX01zayAgICAgICAgICAgICAgICAgICAoMHg3VSA8PCBBRENfU01QUjNfU01QMV9Qb3MpICAgICAgLyohPCAweDAwMDAwMDM4ICovDQojZGVmaW5lIEFEQ19TTVBSM19TTVAxICAgICAgICAgICAgICAgICAgICAgICBBRENfU01QUjNfU01QMV9Nc2sgICAgICAgICAgICAgICAgLyohPCBBREMgY2hhbm5lbCAxIHNhbXBsaW5nIHRpbWUgc2VsZWN0aW9uICovDQojZGVmaW5lIEFEQ19TTVBSM19TTVAxXzAgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBBRENfU01QUjNfU01QMV9Qb3MpICAgICAgLyohPCAweDAwMDAwMDA4ICovDQojZGVmaW5lIEFEQ19TTVBSM19TTVAxXzEgICAgICAgICAgICAgICAgICAgICAoMHgyVSA8PCBBRENfU01QUjNfU01QMV9Qb3MpICAgICAgLyohPCAweDAwMDAwMDEwICovDQojZGVmaW5lIEFEQ19TTVBSM19TTVAxXzIgICAgICAgICAgICAgICAgICAgICAoMHg0VSA8PCBBRENfU01QUjNfU01QMV9Qb3MpICAgICAgLyohPCAweDAwMDAwMDIwICovDQoNCiNkZWZpbmUgQURDX1NNUFIzX1NNUDJfUG9zICAgICAgICAgICAgICAgICAgICg2VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgQURDX1NNUFIzX1NNUDJfTXNrICAgICAgICAgICAgICAgICAgICgweDdVIDw8IEFEQ19TTVBSM19TTVAyX1BvcykgICAgICAvKiE8IDB4MDAwMDAxQzAgKi8NCiNkZWZpbmUgQURDX1NNUFIzX1NNUDIgICAgICAgICAgICAgICAgICAgICAgIEFEQ19TTVBSM19TTVAyX01zayAgICAgICAgICAgICAgICAvKiE8IEFEQyBjaGFubmVsIDIgc2FtcGxpbmcgdGltZSBzZWxlY3Rpb24gKi8NCiNkZWZpbmUgQURDX1NNUFIzX1NNUDJfMCAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IEFEQ19TTVBSM19TTVAyX1BvcykgICAgICAvKiE8IDB4MDAwMDAwNDAgKi8NCiNkZWZpbmUgQURDX1NNUFIzX1NNUDJfMSAgICAgICAgICAgICAgICAgICAgICgweDJVIDw8IEFEQ19TTVBSM19TTVAyX1BvcykgICAgICAvKiE8IDB4MDAwMDAwODAgKi8NCiNkZWZpbmUgQURDX1NNUFIzX1NNUDJfMiAgICAgICAgICAgICAgICAgICAgICgweDRVIDw8IEFEQ19TTVBSM19TTVAyX1BvcykgICAgICAvKiE8IDB4MDAwMDAxMDAgKi8NCg0KI2RlZmluZSBBRENfU01QUjNfU01QM19Qb3MgICAgICAgICAgICAgICAgICAgKDlVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBBRENfU01QUjNfU01QM19Nc2sgICAgICAgICAgICAgICAgICAgKDB4N1UgPDwgQURDX1NNUFIzX1NNUDNfUG9zKSAgICAgIC8qITwgMHgwMDAwMEUwMCAqLw0KI2RlZmluZSBBRENfU01QUjNfU01QMyAgICAgICAgICAgICAgICAgICAgICAgQURDX1NNUFIzX1NNUDNfTXNrICAgICAgICAgICAgICAgIC8qITwgQURDIGNoYW5uZWwgMyBzYW1wbGluZyB0aW1lIHNlbGVjdGlvbiAqLw0KI2RlZmluZSBBRENfU01QUjNfU01QM18wICAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgQURDX1NNUFIzX1NNUDNfUG9zKSAgICAgIC8qITwgMHgwMDAwMDIwMCAqLw0KI2RlZmluZSBBRENfU01QUjNfU01QM18xICAgICAgICAgICAgICAgICAgICAgKDB4MlUgPDwgQURDX1NNUFIzX1NNUDNfUG9zKSAgICAgIC8qITwgMHgwMDAwMDQwMCAqLw0KI2RlZmluZSBBRENfU01QUjNfU01QM18yICAgICAgICAgICAgICAgICAgICAgKDB4NFUgPDwgQURDX1NNUFIzX1NNUDNfUG9zKSAgICAgIC8qITwgMHgwMDAwMDgwMCAqLw0KDQojZGVmaW5lIEFEQ19TTVBSM19TTVA0X1BvcyAgICAgICAgICAgICAgICAgICAoMTJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEFEQ19TTVBSM19TTVA0X01zayAgICAgICAgICAgICAgICAgICAoMHg3VSA8PCBBRENfU01QUjNfU01QNF9Qb3MpICAgICAgLyohPCAweDAwMDA3MDAwICovDQojZGVmaW5lIEFEQ19TTVBSM19TTVA0ICAgICAgICAgICAgICAgICAgICAgICBBRENfU01QUjNfU01QNF9Nc2sgICAgICAgICAgICAgICAgLyohPCBBREMgY2hhbm5lbCA0IHNhbXBsaW5nIHRpbWUgc2VsZWN0aW9uICovDQojZGVmaW5lIEFEQ19TTVBSM19TTVA0XzAgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBBRENfU01QUjNfU01QNF9Qb3MpICAgICAgLyohPCAweDAwMDAxMDAwICovDQojZGVmaW5lIEFEQ19TTVBSM19TTVA0XzEgICAgICAgICAgICAgICAgICAgICAoMHgyVSA8PCBBRENfU01QUjNfU01QNF9Qb3MpICAgICAgLyohPCAweDAwMDAyMDAwICovDQojZGVmaW5lIEFEQ19TTVBSM19TTVA0XzIgICAgICAgICAgICAgICAgICAgICAoMHg0VSA8PCBBRENfU01QUjNfU01QNF9Qb3MpICAgICAgLyohPCAweDAwMDA0MDAwICovDQoNCiNkZWZpbmUgQURDX1NNUFIzX1NNUDVfUG9zICAgICAgICAgICAgICAgICAgICgxNVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgQURDX1NNUFIzX1NNUDVfTXNrICAgICAgICAgICAgICAgICAgICgweDdVIDw8IEFEQ19TTVBSM19TTVA1X1BvcykgICAgICAvKiE8IDB4MDAwMzgwMDAgKi8NCiNkZWZpbmUgQURDX1NNUFIzX1NNUDUgICAgICAgICAgICAgICAgICAgICAgIEFEQ19TTVBSM19TTVA1X01zayAgICAgICAgICAgICAgICAvKiE8IEFEQyBjaGFubmVsIDUgc2FtcGxpbmcgdGltZSBzZWxlY3Rpb24gKi8NCiNkZWZpbmUgQURDX1NNUFIzX1NNUDVfMCAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IEFEQ19TTVBSM19TTVA1X1BvcykgICAgICAvKiE8IDB4MDAwMDgwMDAgKi8NCiNkZWZpbmUgQURDX1NNUFIzX1NNUDVfMSAgICAgICAgICAgICAgICAgICAgICgweDJVIDw8IEFEQ19TTVBSM19TTVA1X1BvcykgICAgICAvKiE8IDB4MDAwMTAwMDAgKi8NCiNkZWZpbmUgQURDX1NNUFIzX1NNUDVfMiAgICAgICAgICAgICAgICAgICAgICgweDRVIDw8IEFEQ19TTVBSM19TTVA1X1BvcykgICAgICAvKiE8IDB4MDAwMjAwMDAgKi8NCg0KI2RlZmluZSBBRENfU01QUjNfU01QNl9Qb3MgICAgICAgICAgICAgICAgICAgKDE4VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBBRENfU01QUjNfU01QNl9Nc2sgICAgICAgICAgICAgICAgICAgKDB4N1UgPDwgQURDX1NNUFIzX1NNUDZfUG9zKSAgICAgIC8qITwgMHgwMDFDMDAwMCAqLw0KI2RlZmluZSBBRENfU01QUjNfU01QNiAgICAgICAgICAgICAgICAgICAgICAgQURDX1NNUFIzX1NNUDZfTXNrICAgICAgICAgICAgICAgIC8qITwgQURDIGNoYW5uZWwgNiBzYW1wbGluZyB0aW1lIHNlbGVjdGlvbiAqLw0KI2RlZmluZSBBRENfU01QUjNfU01QNl8wICAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgQURDX1NNUFIzX1NNUDZfUG9zKSAgICAgIC8qITwgMHgwMDA0MDAwMCAqLw0KI2RlZmluZSBBRENfU01QUjNfU01QNl8xICAgICAgICAgICAgICAgICAgICAgKDB4MlUgPDwgQURDX1NNUFIzX1NNUDZfUG9zKSAgICAgIC8qITwgMHgwMDA4MDAwMCAqLw0KI2RlZmluZSBBRENfU01QUjNfU01QNl8yICAgICAgICAgICAgICAgICAgICAgKDB4NFUgPDwgQURDX1NNUFIzX1NNUDZfUG9zKSAgICAgIC8qITwgMHgwMDEwMDAwMCAqLw0KDQojZGVmaW5lIEFEQ19TTVBSM19TTVA3X1BvcyAgICAgICAgICAgICAgICAgICAoMjFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEFEQ19TTVBSM19TTVA3X01zayAgICAgICAgICAgICAgICAgICAoMHg3VSA8PCBBRENfU01QUjNfU01QN19Qb3MpICAgICAgLyohPCAweDAwRTAwMDAwICovDQojZGVmaW5lIEFEQ19TTVBSM19TTVA3ICAgICAgICAgICAgICAgICAgICAgICBBRENfU01QUjNfU01QN19Nc2sgICAgICAgICAgICAgICAgLyohPCBBREMgY2hhbm5lbCA3IHNhbXBsaW5nIHRpbWUgc2VsZWN0aW9uICovDQojZGVmaW5lIEFEQ19TTVBSM19TTVA3XzAgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBBRENfU01QUjNfU01QN19Qb3MpICAgICAgLyohPCAweDAwMjAwMDAwICovDQojZGVmaW5lIEFEQ19TTVBSM19TTVA3XzEgICAgICAgICAgICAgICAgICAgICAoMHgyVSA8PCBBRENfU01QUjNfU01QN19Qb3MpICAgICAgLyohPCAweDAwNDAwMDAwICovDQojZGVmaW5lIEFEQ19TTVBSM19TTVA3XzIgICAgICAgICAgICAgICAgICAgICAoMHg0VSA8PCBBRENfU01QUjNfU01QN19Qb3MpICAgICAgLyohPCAweDAwODAwMDAwICovDQoNCiNkZWZpbmUgQURDX1NNUFIzX1NNUDhfUG9zICAgICAgICAgICAgICAgICAgICgyNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgQURDX1NNUFIzX1NNUDhfTXNrICAgICAgICAgICAgICAgICAgICgweDdVIDw8IEFEQ19TTVBSM19TTVA4X1BvcykgICAgICAvKiE8IDB4MDcwMDAwMDAgKi8NCiNkZWZpbmUgQURDX1NNUFIzX1NNUDggICAgICAgICAgICAgICAgICAgICAgIEFEQ19TTVBSM19TTVA4X01zayAgICAgICAgICAgICAgICAvKiE8IEFEQyBjaGFubmVsIDggc2FtcGxpbmcgdGltZSBzZWxlY3Rpb24gKi8NCiNkZWZpbmUgQURDX1NNUFIzX1NNUDhfMCAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IEFEQ19TTVBSM19TTVA4X1BvcykgICAgICAvKiE8IDB4MDEwMDAwMDAgKi8NCiNkZWZpbmUgQURDX1NNUFIzX1NNUDhfMSAgICAgICAgICAgICAgICAgICAgICgweDJVIDw8IEFEQ19TTVBSM19TTVA4X1BvcykgICAgICAvKiE8IDB4MDIwMDAwMDAgKi8NCiNkZWZpbmUgQURDX1NNUFIzX1NNUDhfMiAgICAgICAgICAgICAgICAgICAgICgweDRVIDw8IEFEQ19TTVBSM19TTVA4X1BvcykgICAgICAvKiE8IDB4MDQwMDAwMDAgKi8NCg0KI2RlZmluZSBBRENfU01QUjNfU01QOV9Qb3MgICAgICAgICAgICAgICAgICAgKDI3VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBBRENfU01QUjNfU01QOV9Nc2sgICAgICAgICAgICAgICAgICAgKDB4N1UgPDwgQURDX1NNUFIzX1NNUDlfUG9zKSAgICAgIC8qITwgMHgzODAwMDAwMCAqLw0KI2RlZmluZSBBRENfU01QUjNfU01QOSAgICAgICAgICAgICAgICAgICAgICAgQURDX1NNUFIzX1NNUDlfTXNrICAgICAgICAgICAgICAgIC8qITwgQURDIGNoYW5uZWwgOSBzYW1wbGluZyB0aW1lIHNlbGVjdGlvbiAqLw0KI2RlZmluZSBBRENfU01QUjNfU01QOV8wICAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgQURDX1NNUFIzX1NNUDlfUG9zKSAgICAgIC8qITwgMHgwODAwMDAwMCAqLw0KI2RlZmluZSBBRENfU01QUjNfU01QOV8xICAgICAgICAgICAgICAgICAgICAgKDB4MlUgPDwgQURDX1NNUFIzX1NNUDlfUG9zKSAgICAgIC8qITwgMHgxMDAwMDAwMCAqLw0KI2RlZmluZSBBRENfU01QUjNfU01QOV8yICAgICAgICAgICAgICAgICAgICAgKDB4NFUgPDwgQURDX1NNUFIzX1NNUDlfUG9zKSAgICAgIC8qITwgMHgyMDAwMDAwMCAqLw0KDQovKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgQURDX0pPRlIxIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBBRENfSk9GUjFfSk9GRlNFVDFfUG9zICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBBRENfSk9GUjFfSk9GRlNFVDFfTXNrICAgICAgICAgICAgICAgKDB4RkZGVSA8PCBBRENfSk9GUjFfSk9GRlNFVDFfUG9zKSAvKiE8IDB4MDAwMDBGRkYgKi8NCiNkZWZpbmUgQURDX0pPRlIxX0pPRkZTRVQxICAgICAgICAgICAgICAgICAgIEFEQ19KT0ZSMV9KT0ZGU0VUMV9Nc2sgICAgICAgICAgICAvKiE8IEFEQyBncm91cCBpbmplY3RlZCBzZXF1ZW5jZXIgcmFuayAxIG9mZnNldCB2YWx1ZSAqLw0KDQovKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgQURDX0pPRlIyIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBBRENfSk9GUjJfSk9GRlNFVDJfUG9zICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBBRENfSk9GUjJfSk9GRlNFVDJfTXNrICAgICAgICAgICAgICAgKDB4RkZGVSA8PCBBRENfSk9GUjJfSk9GRlNFVDJfUG9zKSAvKiE8IDB4MDAwMDBGRkYgKi8NCiNkZWZpbmUgQURDX0pPRlIyX0pPRkZTRVQyICAgICAgICAgICAgICAgICAgIEFEQ19KT0ZSMl9KT0ZGU0VUMl9Nc2sgICAgICAgICAgICAvKiE8IEFEQyBncm91cCBpbmplY3RlZCBzZXF1ZW5jZXIgcmFuayAyIG9mZnNldCB2YWx1ZSAqLw0KDQovKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgQURDX0pPRlIzIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBBRENfSk9GUjNfSk9GRlNFVDNfUG9zICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBBRENfSk9GUjNfSk9GRlNFVDNfTXNrICAgICAgICAgICAgICAgKDB4RkZGVSA8PCBBRENfSk9GUjNfSk9GRlNFVDNfUG9zKSAvKiE8IDB4MDAwMDBGRkYgKi8NCiNkZWZpbmUgQURDX0pPRlIzX0pPRkZTRVQzICAgICAgICAgICAgICAgICAgIEFEQ19KT0ZSM19KT0ZGU0VUM19Nc2sgICAgICAgICAgICAvKiE8IEFEQyBncm91cCBpbmplY3RlZCBzZXF1ZW5jZXIgcmFuayAzIG9mZnNldCB2YWx1ZSAqLw0KDQovKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgQURDX0pPRlI0IHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBBRENfSk9GUjRfSk9GRlNFVDRfUG9zICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBBRENfSk9GUjRfSk9GRlNFVDRfTXNrICAgICAgICAgICAgICAgKDB4RkZGVSA8PCBBRENfSk9GUjRfSk9GRlNFVDRfUG9zKSAvKiE8IDB4MDAwMDBGRkYgKi8NCiNkZWZpbmUgQURDX0pPRlI0X0pPRkZTRVQ0ICAgICAgICAgICAgICAgICAgIEFEQ19KT0ZSNF9KT0ZGU0VUNF9Nc2sgICAgICAgICAgICAvKiE8IEFEQyBncm91cCBpbmplY3RlZCBzZXF1ZW5jZXIgcmFuayA0IG9mZnNldCB2YWx1ZSAqLw0KDQovKioqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIEFEQ19IVFIgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBBRENfSFRSX0hUX1BvcyAgICAgICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBBRENfSFRSX0hUX01zayAgICAgICAgICAgICAgICAgICAgICAgKDB4RkZGVSA8PCBBRENfSFRSX0hUX1BvcykgICAgICAgIC8qITwgMHgwMDAwMEZGRiAqLw0KI2RlZmluZSBBRENfSFRSX0hUICAgICAgICAgICAgICAgICAgICAgICAgICAgQURDX0hUUl9IVF9Nc2sgICAgICAgICAgICAgICAgICAgIC8qITwgQURDIGFuYWxvZyB3YXRjaGRvZyAxIHRocmVzaG9sZCBoaWdoICovDQoNCi8qKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgQURDX0xUUiByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIEFEQ19MVFJfTFRfUG9zICAgICAgICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEFEQ19MVFJfTFRfTXNrICAgICAgICAgICAgICAgICAgICAgICAoMHhGRkZVIDw8IEFEQ19MVFJfTFRfUG9zKSAgICAgICAgLyohPCAweDAwMDAwRkZGICovDQojZGVmaW5lIEFEQ19MVFJfTFQgICAgICAgICAgICAgICAgICAgICAgICAgICBBRENfTFRSX0xUX01zayAgICAgICAgICAgICAgICAgICAgLyohPCBBREMgYW5hbG9nIHdhdGNoZG9nIDEgdGhyZXNob2xkIGxvdyAqLw0KDQovKioqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIEFEQ19TUVIxIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBBRENfU1FSMV9MX1BvcyAgICAgICAgICAgICAgICAgICAgICAgKDIwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBBRENfU1FSMV9MX01zayAgICAgICAgICAgICAgICAgICAgICAgKDB4MUZVIDw8IEFEQ19TUVIxX0xfUG9zKSAgICAgICAgIC8qITwgMHgwMUYwMDAwMCAqLw0KI2RlZmluZSBBRENfU1FSMV9MICAgICAgICAgICAgICAgICAgICAgICAgICAgQURDX1NRUjFfTF9Nc2sgICAgICAgICAgICAgICAgICAgIC8qITwgQURDIGdyb3VwIHJlZ3VsYXIgc2VxdWVuY2VyIHNjYW4gbGVuZ3RoICovDQojZGVmaW5lIEFEQ19TUVIxX0xfMCAgICAgICAgICAgICAgICAgICAgICAgICAoMHgwMVUgPDwgQURDX1NRUjFfTF9Qb3MpICAgICAgICAgLyohPCAweDAwMTAwMDAwICovDQojZGVmaW5lIEFEQ19TUVIxX0xfMSAgICAgICAgICAgICAgICAgICAgICAgICAoMHgwMlUgPDwgQURDX1NRUjFfTF9Qb3MpICAgICAgICAgLyohPCAweDAwMjAwMDAwICovDQojZGVmaW5lIEFEQ19TUVIxX0xfMiAgICAgICAgICAgICAgICAgICAgICAgICAoMHgwNFUgPDwgQURDX1NRUjFfTF9Qb3MpICAgICAgICAgLyohPCAweDAwNDAwMDAwICovDQojZGVmaW5lIEFEQ19TUVIxX0xfMyAgICAgICAgICAgICAgICAgICAgICAgICAoMHgwOFUgPDwgQURDX1NRUjFfTF9Qb3MpICAgICAgICAgLyohPCAweDAwODAwMDAwICovDQojZGVmaW5lIEFEQ19TUVIxX0xfNCAgICAgICAgICAgICAgICAgICAgICAgICAoMHgxMFUgPDwgQURDX1NRUjFfTF9Qb3MpICAgICAgICAgLyohPCAweDAxMDAwMDAwICovDQoNCiNkZWZpbmUgQURDX1NRUjFfU1EyOF9Qb3MgICAgICAgICAgICAgICAgICAgICgxNVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgQURDX1NRUjFfU1EyOF9Nc2sgICAgICAgICAgICAgICAgICAgICgweDFGVSA8PCBBRENfU1FSMV9TUTI4X1BvcykgICAgICAvKiE8IDB4MDAwRjgwMDAgKi8NCiNkZWZpbmUgQURDX1NRUjFfU1EyOCAgICAgICAgICAgICAgICAgICAgICAgIEFEQ19TUVIxX1NRMjhfTXNrICAgICAgICAgICAgICAgICAvKiE8IEFEQyBncm91cCByZWd1bGFyIHNlcXVlbmNlciByYW5rIDI4ICovDQojZGVmaW5lIEFEQ19TUVIxX1NRMjhfMCAgICAgICAgICAgICAgICAgICAgICAoMHgwMVUgPDwgQURDX1NRUjFfU1EyOF9Qb3MpICAgICAgLyohPCAweDAwMDA4MDAwICovDQojZGVmaW5lIEFEQ19TUVIxX1NRMjhfMSAgICAgICAgICAgICAgICAgICAgICAoMHgwMlUgPDwgQURDX1NRUjFfU1EyOF9Qb3MpICAgICAgLyohPCAweDAwMDEwMDAwICovDQojZGVmaW5lIEFEQ19TUVIxX1NRMjhfMiAgICAgICAgICAgICAgICAgICAgICAoMHgwNFUgPDwgQURDX1NRUjFfU1EyOF9Qb3MpICAgICAgLyohPCAweDAwMDIwMDAwICovDQojZGVmaW5lIEFEQ19TUVIxX1NRMjhfMyAgICAgICAgICAgICAgICAgICAgICAoMHgwOFUgPDwgQURDX1NRUjFfU1EyOF9Qb3MpICAgICAgLyohPCAweDAwMDQwMDAwICovDQojZGVmaW5lIEFEQ19TUVIxX1NRMjhfNCAgICAgICAgICAgICAgICAgICAgICAoMHgxMFUgPDwgQURDX1NRUjFfU1EyOF9Qb3MpICAgICAgLyohPCAweDAwMDgwMDAwICovDQoNCiNkZWZpbmUgQURDX1NRUjFfU1EyN19Qb3MgICAgICAgICAgICAgICAgICAgICgxMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgQURDX1NRUjFfU1EyN19Nc2sgICAgICAgICAgICAgICAgICAgICgweDFGVSA8PCBBRENfU1FSMV9TUTI3X1BvcykgICAgICAvKiE8IDB4MDAwMDdDMDAgKi8NCiNkZWZpbmUgQURDX1NRUjFfU1EyNyAgICAgICAgICAgICAgICAgICAgICAgIEFEQ19TUVIxX1NRMjdfTXNrICAgICAgICAgICAgICAgICAvKiE8IEFEQyBncm91cCByZWd1bGFyIHNlcXVlbmNlciByYW5rIDI3ICovDQojZGVmaW5lIEFEQ19TUVIxX1NRMjdfMCAgICAgICAgICAgICAgICAgICAgICAoMHgwMVUgPDwgQURDX1NRUjFfU1EyN19Qb3MpICAgICAgLyohPCAweDAwMDAwNDAwICovDQojZGVmaW5lIEFEQ19TUVIxX1NRMjdfMSAgICAgICAgICAgICAgICAgICAgICAoMHgwMlUgPDwgQURDX1NRUjFfU1EyN19Qb3MpICAgICAgLyohPCAweDAwMDAwODAwICovDQojZGVmaW5lIEFEQ19TUVIxX1NRMjdfMiAgICAgICAgICAgICAgICAgICAgICAoMHgwNFUgPDwgQURDX1NRUjFfU1EyN19Qb3MpICAgICAgLyohPCAweDAwMDAxMDAwICovDQojZGVmaW5lIEFEQ19TUVIxX1NRMjdfMyAgICAgICAgICAgICAgICAgICAgICAoMHgwOFUgPDwgQURDX1NRUjFfU1EyN19Qb3MpICAgICAgLyohPCAweDAwMDAyMDAwICovDQojZGVmaW5lIEFEQ19TUVIxX1NRMjdfNCAgICAgICAgICAgICAgICAgICAgICAoMHgxMFUgPDwgQURDX1NRUjFfU1EyN19Qb3MpICAgICAgLyohPCAweDAwMDA0MDAwICovDQoNCiNkZWZpbmUgQURDX1NRUjFfU1EyNl9Qb3MgICAgICAgICAgICAgICAgICAgICg1VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgQURDX1NRUjFfU1EyNl9Nc2sgICAgICAgICAgICAgICAgICAgICgweDFGVSA8PCBBRENfU1FSMV9TUTI2X1BvcykgICAgICAvKiE8IDB4MDAwMDAzRTAgKi8NCiNkZWZpbmUgQURDX1NRUjFfU1EyNiAgICAgICAgICAgICAgICAgICAgICAgIEFEQ19TUVIxX1NRMjZfTXNrICAgICAgICAgICAgICAgICAvKiE8IEFEQyBncm91cCByZWd1bGFyIHNlcXVlbmNlciByYW5rIDI2ICovDQojZGVmaW5lIEFEQ19TUVIxX1NRMjZfMCAgICAgICAgICAgICAgICAgICAgICAoMHgwMVUgPDwgQURDX1NRUjFfU1EyNl9Qb3MpICAgICAgLyohPCAweDAwMDAwMDIwICovDQojZGVmaW5lIEFEQ19TUVIxX1NRMjZfMSAgICAgICAgICAgICAgICAgICAgICAoMHgwMlUgPDwgQURDX1NRUjFfU1EyNl9Qb3MpICAgICAgLyohPCAweDAwMDAwMDQwICovDQojZGVmaW5lIEFEQ19TUVIxX1NRMjZfMiAgICAgICAgICAgICAgICAgICAgICAoMHgwNFUgPDwgQURDX1NRUjFfU1EyNl9Qb3MpICAgICAgLyohPCAweDAwMDAwMDgwICovDQojZGVmaW5lIEFEQ19TUVIxX1NRMjZfMyAgICAgICAgICAgICAgICAgICAgICAoMHgwOFUgPDwgQURDX1NRUjFfU1EyNl9Qb3MpICAgICAgLyohPCAweDAwMDAwMTAwICovDQojZGVmaW5lIEFEQ19TUVIxX1NRMjZfNCAgICAgICAgICAgICAgICAgICAgICAoMHgxMFUgPDwgQURDX1NRUjFfU1EyNl9Qb3MpICAgICAgLyohPCAweDAwMDAwMjAwICovDQoNCiNkZWZpbmUgQURDX1NRUjFfU1EyNV9Qb3MgICAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgQURDX1NRUjFfU1EyNV9Nc2sgICAgICAgICAgICAgICAgICAgICgweDFGVSA8PCBBRENfU1FSMV9TUTI1X1BvcykgICAgICAvKiE8IDB4MDAwMDAwMUYgKi8NCiNkZWZpbmUgQURDX1NRUjFfU1EyNSAgICAgICAgICAgICAgICAgICAgICAgIEFEQ19TUVIxX1NRMjVfTXNrICAgICAgICAgICAgICAgICAvKiE8IEFEQyBncm91cCByZWd1bGFyIHNlcXVlbmNlciByYW5rIDI1ICovDQojZGVmaW5lIEFEQ19TUVIxX1NRMjVfMCAgICAgICAgICAgICAgICAgICAgICAoMHgwMVUgPDwgQURDX1NRUjFfU1EyNV9Qb3MpICAgICAgLyohPCAweDAwMDAwMDAxICovDQojZGVmaW5lIEFEQ19TUVIxX1NRMjVfMSAgICAgICAgICAgICAgICAgICAgICAoMHgwMlUgPDwgQURDX1NRUjFfU1EyNV9Qb3MpICAgICAgLyohPCAweDAwMDAwMDAyICovDQojZGVmaW5lIEFEQ19TUVIxX1NRMjVfMiAgICAgICAgICAgICAgICAgICAgICAoMHgwNFUgPDwgQURDX1NRUjFfU1EyNV9Qb3MpICAgICAgLyohPCAweDAwMDAwMDA0ICovDQojZGVmaW5lIEFEQ19TUVIxX1NRMjVfMyAgICAgICAgICAgICAgICAgICAgICAoMHgwOFUgPDwgQURDX1NRUjFfU1EyNV9Qb3MpICAgICAgLyohPCAweDAwMDAwMDA4ICovDQojZGVmaW5lIEFEQ19TUVIxX1NRMjVfNCAgICAgICAgICAgICAgICAgICAgICAoMHgxMFUgPDwgQURDX1NRUjFfU1EyNV9Qb3MpICAgICAgLyohPCAweDAwMDAwMDEwICovDQoNCi8qKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgQURDX1NRUjIgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIEFEQ19TUVIyX1NRMTlfUG9zICAgICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEFEQ19TUVIyX1NRMTlfTXNrICAgICAgICAgICAgICAgICAgICAoMHgxRlUgPDwgQURDX1NRUjJfU1ExOV9Qb3MpICAgICAgLyohPCAweDAwMDAwMDFGICovDQojZGVmaW5lIEFEQ19TUVIyX1NRMTkgICAgICAgICAgICAgICAgICAgICAgICBBRENfU1FSMl9TUTE5X01zayAgICAgICAgICAgICAgICAgLyohPCBBREMgZ3JvdXAgcmVndWxhciBzZXF1ZW5jZXIgcmFuayAxOSAqLw0KI2RlZmluZSBBRENfU1FSMl9TUTE5XzAgICAgICAgICAgICAgICAgICAgICAgKDB4MDFVIDw8IEFEQ19TUVIyX1NRMTlfUG9zKSAgICAgIC8qITwgMHgwMDAwMDAwMSAqLw0KI2RlZmluZSBBRENfU1FSMl9TUTE5XzEgICAgICAgICAgICAgICAgICAgICAgKDB4MDJVIDw8IEFEQ19TUVIyX1NRMTlfUG9zKSAgICAgIC8qITwgMHgwMDAwMDAwMiAqLw0KI2RlZmluZSBBRENfU1FSMl9TUTE5XzIgICAgICAgICAgICAgICAgICAgICAgKDB4MDRVIDw8IEFEQ19TUVIyX1NRMTlfUG9zKSAgICAgIC8qITwgMHgwMDAwMDAwNCAqLw0KI2RlZmluZSBBRENfU1FSMl9TUTE5XzMgICAgICAgICAgICAgICAgICAgICAgKDB4MDhVIDw8IEFEQ19TUVIyX1NRMTlfUG9zKSAgICAgIC8qITwgMHgwMDAwMDAwOCAqLw0KI2RlZmluZSBBRENfU1FSMl9TUTE5XzQgICAgICAgICAgICAgICAgICAgICAgKDB4MTBVIDw8IEFEQ19TUVIyX1NRMTlfUG9zKSAgICAgIC8qITwgMHgwMDAwMDAxMCAqLw0KDQojZGVmaW5lIEFEQ19TUVIyX1NRMjBfUG9zICAgICAgICAgICAgICAgICAgICAoNVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEFEQ19TUVIyX1NRMjBfTXNrICAgICAgICAgICAgICAgICAgICAoMHgxRlUgPDwgQURDX1NRUjJfU1EyMF9Qb3MpICAgICAgLyohPCAweDAwMDAwM0UwICovDQojZGVmaW5lIEFEQ19TUVIyX1NRMjAgICAgICAgICAgICAgICAgICAgICAgICBBRENfU1FSMl9TUTIwX01zayAgICAgICAgICAgICAgICAgLyohPCBBREMgZ3JvdXAgcmVndWxhciBzZXF1ZW5jZXIgcmFuayAyMCAqLw0KI2RlZmluZSBBRENfU1FSMl9TUTIwXzAgICAgICAgICAgICAgICAgICAgICAgKDB4MDFVIDw8IEFEQ19TUVIyX1NRMjBfUG9zKSAgICAgIC8qITwgMHgwMDAwMDAyMCAqLw0KI2RlZmluZSBBRENfU1FSMl9TUTIwXzEgICAgICAgICAgICAgICAgICAgICAgKDB4MDJVIDw8IEFEQ19TUVIyX1NRMjBfUG9zKSAgICAgIC8qITwgMHgwMDAwMDA0MCAqLw0KI2RlZmluZSBBRENfU1FSMl9TUTIwXzIgICAgICAgICAgICAgICAgICAgICAgKDB4MDRVIDw8IEFEQ19TUVIyX1NRMjBfUG9zKSAgICAgIC8qITwgMHgwMDAwMDA4MCAqLw0KI2RlZmluZSBBRENfU1FSMl9TUTIwXzMgICAgICAgICAgICAgICAgICAgICAgKDB4MDhVIDw8IEFEQ19TUVIyX1NRMjBfUG9zKSAgICAgIC8qITwgMHgwMDAwMDEwMCAqLw0KI2RlZmluZSBBRENfU1FSMl9TUTIwXzQgICAgICAgICAgICAgICAgICAgICAgKDB4MTBVIDw8IEFEQ19TUVIyX1NRMjBfUG9zKSAgICAgIC8qITwgMHgwMDAwMDIwMCAqLw0KDQojZGVmaW5lIEFEQ19TUVIyX1NRMjFfUG9zICAgICAgICAgICAgICAgICAgICAoMTBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEFEQ19TUVIyX1NRMjFfTXNrICAgICAgICAgICAgICAgICAgICAoMHgxRlUgPDwgQURDX1NRUjJfU1EyMV9Qb3MpICAgICAgLyohPCAweDAwMDA3QzAwICovDQojZGVmaW5lIEFEQ19TUVIyX1NRMjEgICAgICAgICAgICAgICAgICAgICAgICBBRENfU1FSMl9TUTIxX01zayAgICAgICAgICAgICAgICAgLyohPCBBREMgZ3JvdXAgcmVndWxhciBzZXF1ZW5jZXIgcmFuayAyMSAqLw0KI2RlZmluZSBBRENfU1FSMl9TUTIxXzAgICAgICAgICAgICAgICAgICAgICAgKDB4MDFVIDw8IEFEQ19TUVIyX1NRMjFfUG9zKSAgICAgIC8qITwgMHgwMDAwMDQwMCAqLw0KI2RlZmluZSBBRENfU1FSMl9TUTIxXzEgICAgICAgICAgICAgICAgICAgICAgKDB4MDJVIDw8IEFEQ19TUVIyX1NRMjFfUG9zKSAgICAgIC8qITwgMHgwMDAwMDgwMCAqLw0KI2RlZmluZSBBRENfU1FSMl9TUTIxXzIgICAgICAgICAgICAgICAgICAgICAgKDB4MDRVIDw8IEFEQ19TUVIyX1NRMjFfUG9zKSAgICAgIC8qITwgMHgwMDAwMTAwMCAqLw0KI2RlZmluZSBBRENfU1FSMl9TUTIxXzMgICAgICAgICAgICAgICAgICAgICAgKDB4MDhVIDw8IEFEQ19TUVIyX1NRMjFfUG9zKSAgICAgIC8qITwgMHgwMDAwMjAwMCAqLw0KI2RlZmluZSBBRENfU1FSMl9TUTIxXzQgICAgICAgICAgICAgICAgICAgICAgKDB4MTBVIDw8IEFEQ19TUVIyX1NRMjFfUG9zKSAgICAgIC8qITwgMHgwMDAwNDAwMCAqLw0KDQojZGVmaW5lIEFEQ19TUVIyX1NRMjJfUG9zICAgICAgICAgICAgICAgICAgICAoMTVVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEFEQ19TUVIyX1NRMjJfTXNrICAgICAgICAgICAgICAgICAgICAoMHgxRlUgPDwgQURDX1NRUjJfU1EyMl9Qb3MpICAgICAgLyohPCAweDAwMEY4MDAwICovDQojZGVmaW5lIEFEQ19TUVIyX1NRMjIgICAgICAgICAgICAgICAgICAgICAgICBBRENfU1FSMl9TUTIyX01zayAgICAgICAgICAgICAgICAgLyohPCBBREMgZ3JvdXAgcmVndWxhciBzZXF1ZW5jZXIgcmFuayAyMiAqLw0KI2RlZmluZSBBRENfU1FSMl9TUTIyXzAgICAgICAgICAgICAgICAgICAgICAgKDB4MDFVIDw8IEFEQ19TUVIyX1NRMjJfUG9zKSAgICAgIC8qITwgMHgwMDAwODAwMCAqLw0KI2RlZmluZSBBRENfU1FSMl9TUTIyXzEgICAgICAgICAgICAgICAgICAgICAgKDB4MDJVIDw8IEFEQ19TUVIyX1NRMjJfUG9zKSAgICAgIC8qITwgMHgwMDAxMDAwMCAqLw0KI2RlZmluZSBBRENfU1FSMl9TUTIyXzIgICAgICAgICAgICAgICAgICAgICAgKDB4MDRVIDw8IEFEQ19TUVIyX1NRMjJfUG9zKSAgICAgIC8qITwgMHgwMDAyMDAwMCAqLw0KI2RlZmluZSBBRENfU1FSMl9TUTIyXzMgICAgICAgICAgICAgICAgICAgICAgKDB4MDhVIDw8IEFEQ19TUVIyX1NRMjJfUG9zKSAgICAgIC8qITwgMHgwMDA0MDAwMCAqLw0KI2RlZmluZSBBRENfU1FSMl9TUTIyXzQgICAgICAgICAgICAgICAgICAgICAgKDB4MTBVIDw8IEFEQ19TUVIyX1NRMjJfUG9zKSAgICAgIC8qITwgMHgwMDA4MDAwMCAqLw0KDQojZGVmaW5lIEFEQ19TUVIyX1NRMjNfUG9zICAgICAgICAgICAgICAgICAgICAoMjBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEFEQ19TUVIyX1NRMjNfTXNrICAgICAgICAgICAgICAgICAgICAoMHgxRlUgPDwgQURDX1NRUjJfU1EyM19Qb3MpICAgICAgLyohPCAweDAxRjAwMDAwICovDQojZGVmaW5lIEFEQ19TUVIyX1NRMjMgICAgICAgICAgICAgICAgICAgICAgICBBRENfU1FSMl9TUTIzX01zayAgICAgICAgICAgICAgICAgLyohPCBBREMgZ3JvdXAgcmVndWxhciBzZXF1ZW5jZXIgcmFuayAyMyAqLw0KI2RlZmluZSBBRENfU1FSMl9TUTIzXzAgICAgICAgICAgICAgICAgICAgICAgKDB4MDFVIDw8IEFEQ19TUVIyX1NRMjNfUG9zKSAgICAgIC8qITwgMHgwMDEwMDAwMCAqLw0KI2RlZmluZSBBRENfU1FSMl9TUTIzXzEgICAgICAgICAgICAgICAgICAgICAgKDB4MDJVIDw8IEFEQ19TUVIyX1NRMjNfUG9zKSAgICAgIC8qITwgMHgwMDIwMDAwMCAqLw0KI2RlZmluZSBBRENfU1FSMl9TUTIzXzIgICAgICAgICAgICAgICAgICAgICAgKDB4MDRVIDw8IEFEQ19TUVIyX1NRMjNfUG9zKSAgICAgIC8qITwgMHgwMDQwMDAwMCAqLw0KI2RlZmluZSBBRENfU1FSMl9TUTIzXzMgICAgICAgICAgICAgICAgICAgICAgKDB4MDhVIDw8IEFEQ19TUVIyX1NRMjNfUG9zKSAgICAgIC8qITwgMHgwMDgwMDAwMCAqLw0KI2RlZmluZSBBRENfU1FSMl9TUTIzXzQgICAgICAgICAgICAgICAgICAgICAgKDB4MTBVIDw8IEFEQ19TUVIyX1NRMjNfUG9zKSAgICAgIC8qITwgMHgwMTAwMDAwMCAqLw0KDQojZGVmaW5lIEFEQ19TUVIyX1NRMjRfUG9zICAgICAgICAgICAgICAgICAgICAoMjVVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEFEQ19TUVIyX1NRMjRfTXNrICAgICAgICAgICAgICAgICAgICAoMHgxRlUgPDwgQURDX1NRUjJfU1EyNF9Qb3MpICAgICAgLyohPCAweDNFMDAwMDAwICovDQojZGVmaW5lIEFEQ19TUVIyX1NRMjQgICAgICAgICAgICAgICAgICAgICAgICBBRENfU1FSMl9TUTI0X01zayAgICAgICAgICAgICAgICAgLyohPCBBREMgZ3JvdXAgcmVndWxhciBzZXF1ZW5jZXIgcmFuayAyNCAqLw0KI2RlZmluZSBBRENfU1FSMl9TUTI0XzAgICAgICAgICAgICAgICAgICAgICAgKDB4MDFVIDw8IEFEQ19TUVIyX1NRMjRfUG9zKSAgICAgIC8qITwgMHgwMjAwMDAwMCAqLw0KI2RlZmluZSBBRENfU1FSMl9TUTI0XzEgICAgICAgICAgICAgICAgICAgICAgKDB4MDJVIDw8IEFEQ19TUVIyX1NRMjRfUG9zKSAgICAgIC8qITwgMHgwNDAwMDAwMCAqLw0KI2RlZmluZSBBRENfU1FSMl9TUTI0XzIgICAgICAgICAgICAgICAgICAgICAgKDB4MDRVIDw8IEFEQ19TUVIyX1NRMjRfUG9zKSAgICAgIC8qITwgMHgwODAwMDAwMCAqLw0KI2RlZmluZSBBRENfU1FSMl9TUTI0XzMgICAgICAgICAgICAgICAgICAgICAgKDB4MDhVIDw8IEFEQ19TUVIyX1NRMjRfUG9zKSAgICAgIC8qITwgMHgxMDAwMDAwMCAqLw0KI2RlZmluZSBBRENfU1FSMl9TUTI0XzQgICAgICAgICAgICAgICAgICAgICAgKDB4MTBVIDw8IEFEQ19TUVIyX1NRMjRfUG9zKSAgICAgIC8qITwgMHgyMDAwMDAwMCAqLw0KDQovKioqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIEFEQ19TUVIzIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBBRENfU1FSM19TUTEzX1BvcyAgICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBBRENfU1FSM19TUTEzX01zayAgICAgICAgICAgICAgICAgICAgKDB4MUZVIDw8IEFEQ19TUVIzX1NRMTNfUG9zKSAgICAgIC8qITwgMHgwMDAwMDAxRiAqLw0KI2RlZmluZSBBRENfU1FSM19TUTEzICAgICAgICAgICAgICAgICAgICAgICAgQURDX1NRUjNfU1ExM19Nc2sgICAgICAgICAgICAgICAgIC8qITwgQURDIGdyb3VwIHJlZ3VsYXIgc2VxdWVuY2VyIHJhbmsgMTMgKi8NCiNkZWZpbmUgQURDX1NRUjNfU1ExM18wICAgICAgICAgICAgICAgICAgICAgICgweDAxVSA8PCBBRENfU1FSM19TUTEzX1BvcykgICAgICAvKiE8IDB4MDAwMDAwMDEgKi8NCiNkZWZpbmUgQURDX1NRUjNfU1ExM18xICAgICAgICAgICAgICAgICAgICAgICgweDAyVSA8PCBBRENfU1FSM19TUTEzX1BvcykgICAgICAvKiE8IDB4MDAwMDAwMDIgKi8NCiNkZWZpbmUgQURDX1NRUjNfU1ExM18yICAgICAgICAgICAgICAgICAgICAgICgweDA0VSA8PCBBRENfU1FSM19TUTEzX1BvcykgICAgICAvKiE8IDB4MDAwMDAwMDQgKi8NCiNkZWZpbmUgQURDX1NRUjNfU1ExM18zICAgICAgICAgICAgICAgICAgICAgICgweDA4VSA8PCBBRENfU1FSM19TUTEzX1BvcykgICAgICAvKiE8IDB4MDAwMDAwMDggKi8NCiNkZWZpbmUgQURDX1NRUjNfU1ExM180ICAgICAgICAgICAgICAgICAgICAgICgweDEwVSA8PCBBRENfU1FSM19TUTEzX1BvcykgICAgICAvKiE8IDB4MDAwMDAwMTAgKi8NCg0KI2RlZmluZSBBRENfU1FSM19TUTE0X1BvcyAgICAgICAgICAgICAgICAgICAgKDVVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBBRENfU1FSM19TUTE0X01zayAgICAgICAgICAgICAgICAgICAgKDB4MUZVIDw8IEFEQ19TUVIzX1NRMTRfUG9zKSAgICAgIC8qITwgMHgwMDAwMDNFMCAqLw0KI2RlZmluZSBBRENfU1FSM19TUTE0ICAgICAgICAgICAgICAgICAgICAgICAgQURDX1NRUjNfU1ExNF9Nc2sgICAgICAgICAgICAgICAgIC8qITwgQURDIGdyb3VwIHJlZ3VsYXIgc2VxdWVuY2VyIHJhbmsgMTQgKi8NCiNkZWZpbmUgQURDX1NRUjNfU1ExNF8wICAgICAgICAgICAgICAgICAgICAgICgweDAxVSA8PCBBRENfU1FSM19TUTE0X1BvcykgICAgICAvKiE8IDB4MDAwMDAwMjAgKi8NCiNkZWZpbmUgQURDX1NRUjNfU1ExNF8xICAgICAgICAgICAgICAgICAgICAgICgweDAyVSA8PCBBRENfU1FSM19TUTE0X1BvcykgICAgICAvKiE8IDB4MDAwMDAwNDAgKi8NCiNkZWZpbmUgQURDX1NRUjNfU1ExNF8yICAgICAgICAgICAgICAgICAgICAgICgweDA0VSA8PCBBRENfU1FSM19TUTE0X1BvcykgICAgICAvKiE8IDB4MDAwMDAwODAgKi8NCiNkZWZpbmUgQURDX1NRUjNfU1ExNF8zICAgICAgICAgICAgICAgICAgICAgICgweDA4VSA8PCBBRENfU1FSM19TUTE0X1BvcykgICAgICAvKiE8IDB4MDAwMDAxMDAgKi8NCiNkZWZpbmUgQURDX1NRUjNfU1ExNF80ICAgICAgICAgICAgICAgICAgICAgICgweDEwVSA8PCBBRENfU1FSM19TUTE0X1BvcykgICAgICAvKiE8IDB4MDAwMDAyMDAgKi8NCg0KI2RlZmluZSBBRENfU1FSM19TUTE1X1BvcyAgICAgICAgICAgICAgICAgICAgKDEwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBBRENfU1FSM19TUTE1X01zayAgICAgICAgICAgICAgICAgICAgKDB4MUZVIDw8IEFEQ19TUVIzX1NRMTVfUG9zKSAgICAgIC8qITwgMHgwMDAwN0MwMCAqLw0KI2RlZmluZSBBRENfU1FSM19TUTE1ICAgICAgICAgICAgICAgICAgICAgICAgQURDX1NRUjNfU1ExNV9Nc2sgICAgICAgICAgICAgICAgIC8qITwgQURDIGdyb3VwIHJlZ3VsYXIgc2VxdWVuY2VyIHJhbmsgMTUgKi8NCiNkZWZpbmUgQURDX1NRUjNfU1ExNV8wICAgICAgICAgICAgICAgICAgICAgICgweDAxVSA8PCBBRENfU1FSM19TUTE1X1BvcykgICAgICAvKiE8IDB4MDAwMDA0MDAgKi8NCiNkZWZpbmUgQURDX1NRUjNfU1ExNV8xICAgICAgICAgICAgICAgICAgICAgICgweDAyVSA8PCBBRENfU1FSM19TUTE1X1BvcykgICAgICAvKiE8IDB4MDAwMDA4MDAgKi8NCiNkZWZpbmUgQURDX1NRUjNfU1ExNV8yICAgICAgICAgICAgICAgICAgICAgICgweDA0VSA8PCBBRENfU1FSM19TUTE1X1BvcykgICAgICAvKiE8IDB4MDAwMDEwMDAgKi8NCiNkZWZpbmUgQURDX1NRUjNfU1ExNV8zICAgICAgICAgICAgICAgICAgICAgICgweDA4VSA8PCBBRENfU1FSM19TUTE1X1BvcykgICAgICAvKiE8IDB4MDAwMDIwMDAgKi8NCiNkZWZpbmUgQURDX1NRUjNfU1ExNV80ICAgICAgICAgICAgICAgICAgICAgICgweDEwVSA8PCBBRENfU1FSM19TUTE1X1BvcykgICAgICAvKiE8IDB4MDAwMDQwMDAgKi8NCg0KI2RlZmluZSBBRENfU1FSM19TUTE2X1BvcyAgICAgICAgICAgICAgICAgICAgKDE1VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBBRENfU1FSM19TUTE2X01zayAgICAgICAgICAgICAgICAgICAgKDB4MUZVIDw8IEFEQ19TUVIzX1NRMTZfUG9zKSAgICAgIC8qITwgMHgwMDBGODAwMCAqLw0KI2RlZmluZSBBRENfU1FSM19TUTE2ICAgICAgICAgICAgICAgICAgICAgICAgQURDX1NRUjNfU1ExNl9Nc2sgICAgICAgICAgICAgICAgIC8qITwgQURDIGdyb3VwIHJlZ3VsYXIgc2VxdWVuY2VyIHJhbmsgMTYgKi8NCiNkZWZpbmUgQURDX1NRUjNfU1ExNl8wICAgICAgICAgICAgICAgICAgICAgICgweDAxVSA8PCBBRENfU1FSM19TUTE2X1BvcykgICAgICAvKiE8IDB4MDAwMDgwMDAgKi8NCiNkZWZpbmUgQURDX1NRUjNfU1ExNl8xICAgICAgICAgICAgICAgICAgICAgICgweDAyVSA8PCBBRENfU1FSM19TUTE2X1BvcykgICAgICAvKiE8IDB4MDAwMTAwMDAgKi8NCiNkZWZpbmUgQURDX1NRUjNfU1ExNl8yICAgICAgICAgICAgICAgICAgICAgICgweDA0VSA8PCBBRENfU1FSM19TUTE2X1BvcykgICAgICAvKiE8IDB4MDAwMjAwMDAgKi8NCiNkZWZpbmUgQURDX1NRUjNfU1ExNl8zICAgICAgICAgICAgICAgICAgICAgICgweDA4VSA8PCBBRENfU1FSM19TUTE2X1BvcykgICAgICAvKiE8IDB4MDAwNDAwMDAgKi8NCiNkZWZpbmUgQURDX1NRUjNfU1ExNl80ICAgICAgICAgICAgICAgICAgICAgICgweDEwVSA8PCBBRENfU1FSM19TUTE2X1BvcykgICAgICAvKiE8IDB4MDAwODAwMDAgKi8NCg0KI2RlZmluZSBBRENfU1FSM19TUTE3X1BvcyAgICAgICAgICAgICAgICAgICAgKDIwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBBRENfU1FSM19TUTE3X01zayAgICAgICAgICAgICAgICAgICAgKDB4MUZVIDw8IEFEQ19TUVIzX1NRMTdfUG9zKSAgICAgIC8qITwgMHgwMUYwMDAwMCAqLw0KI2RlZmluZSBBRENfU1FSM19TUTE3ICAgICAgICAgICAgICAgICAgICAgICAgQURDX1NRUjNfU1ExN19Nc2sgICAgICAgICAgICAgICAgIC8qITwgQURDIGdyb3VwIHJlZ3VsYXIgc2VxdWVuY2VyIHJhbmsgMTcgKi8NCiNkZWZpbmUgQURDX1NRUjNfU1ExN18wICAgICAgICAgICAgICAgICAgICAgICgweDAxVSA8PCBBRENfU1FSM19TUTE3X1BvcykgICAgICAvKiE8IDB4MDAxMDAwMDAgKi8NCiNkZWZpbmUgQURDX1NRUjNfU1ExN18xICAgICAgICAgICAgICAgICAgICAgICgweDAyVSA8PCBBRENfU1FSM19TUTE3X1BvcykgICAgICAvKiE8IDB4MDAyMDAwMDAgKi8NCiNkZWZpbmUgQURDX1NRUjNfU1ExN18yICAgICAgICAgICAgICAgICAgICAgICgweDA0VSA8PCBBRENfU1FSM19TUTE3X1BvcykgICAgICAvKiE8IDB4MDA0MDAwMDAgKi8NCiNkZWZpbmUgQURDX1NRUjNfU1ExN18zICAgICAgICAgICAgICAgICAgICAgICgweDA4VSA8PCBBRENfU1FSM19TUTE3X1BvcykgICAgICAvKiE8IDB4MDA4MDAwMDAgKi8NCiNkZWZpbmUgQURDX1NRUjNfU1ExN180ICAgICAgICAgICAgICAgICAgICAgICgweDEwVSA8PCBBRENfU1FSM19TUTE3X1BvcykgICAgICAvKiE8IDB4MDEwMDAwMDAgKi8NCg0KI2RlZmluZSBBRENfU1FSM19TUTE4X1BvcyAgICAgICAgICAgICAgICAgICAgKDI1VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBBRENfU1FSM19TUTE4X01zayAgICAgICAgICAgICAgICAgICAgKDB4MUZVIDw8IEFEQ19TUVIzX1NRMThfUG9zKSAgICAgIC8qITwgMHgzRTAwMDAwMCAqLw0KI2RlZmluZSBBRENfU1FSM19TUTE4ICAgICAgICAgICAgICAgICAgICAgICAgQURDX1NRUjNfU1ExOF9Nc2sgICAgICAgICAgICAgICAgIC8qITwgQURDIGdyb3VwIHJlZ3VsYXIgc2VxdWVuY2VyIHJhbmsgMTggKi8NCiNkZWZpbmUgQURDX1NRUjNfU1ExOF8wICAgICAgICAgICAgICAgICAgICAgICgweDAxVSA8PCBBRENfU1FSM19TUTE4X1BvcykgICAgICAvKiE8IDB4MDIwMDAwMDAgKi8NCiNkZWZpbmUgQURDX1NRUjNfU1ExOF8xICAgICAgICAgICAgICAgICAgICAgICgweDAyVSA8PCBBRENfU1FSM19TUTE4X1BvcykgICAgICAvKiE8IDB4MDQwMDAwMDAgKi8NCiNkZWZpbmUgQURDX1NRUjNfU1ExOF8yICAgICAgICAgICAgICAgICAgICAgICgweDA0VSA8PCBBRENfU1FSM19TUTE4X1BvcykgICAgICAvKiE8IDB4MDgwMDAwMDAgKi8NCiNkZWZpbmUgQURDX1NRUjNfU1ExOF8zICAgICAgICAgICAgICAgICAgICAgICgweDA4VSA8PCBBRENfU1FSM19TUTE4X1BvcykgICAgICAvKiE8IDB4MTAwMDAwMDAgKi8NCiNkZWZpbmUgQURDX1NRUjNfU1ExOF80ICAgICAgICAgICAgICAgICAgICAgICgweDEwVSA8PCBBRENfU1FSM19TUTE4X1BvcykgICAgICAvKiE8IDB4MjAwMDAwMDAgKi8NCg0KLyoqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBBRENfU1FSNCByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgQURDX1NRUjRfU1E3X1BvcyAgICAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgQURDX1NRUjRfU1E3X01zayAgICAgICAgICAgICAgICAgICAgICgweDFGVSA8PCBBRENfU1FSNF9TUTdfUG9zKSAgICAgICAvKiE8IDB4MDAwMDAwMUYgKi8NCiNkZWZpbmUgQURDX1NRUjRfU1E3ICAgICAgICAgICAgICAgICAgICAgICAgIEFEQ19TUVI0X1NRN19Nc2sgICAgICAgICAgICAgICAgICAvKiE8IEFEQyBncm91cCByZWd1bGFyIHNlcXVlbmNlciByYW5rIDcgKi8NCiNkZWZpbmUgQURDX1NRUjRfU1E3XzAgICAgICAgICAgICAgICAgICAgICAgICgweDAxVSA8PCBBRENfU1FSNF9TUTdfUG9zKSAgICAgICAvKiE8IDB4MDAwMDAwMDEgKi8NCiNkZWZpbmUgQURDX1NRUjRfU1E3XzEgICAgICAgICAgICAgICAgICAgICAgICgweDAyVSA8PCBBRENfU1FSNF9TUTdfUG9zKSAgICAgICAvKiE8IDB4MDAwMDAwMDIgKi8NCiNkZWZpbmUgQURDX1NRUjRfU1E3XzIgICAgICAgICAgICAgICAgICAgICAgICgweDA0VSA8PCBBRENfU1FSNF9TUTdfUG9zKSAgICAgICAvKiE8IDB4MDAwMDAwMDQgKi8NCiNkZWZpbmUgQURDX1NRUjRfU1E3XzMgICAgICAgICAgICAgICAgICAgICAgICgweDA4VSA8PCBBRENfU1FSNF9TUTdfUG9zKSAgICAgICAvKiE8IDB4MDAwMDAwMDggKi8NCiNkZWZpbmUgQURDX1NRUjRfU1E3XzQgICAgICAgICAgICAgICAgICAgICAgICgweDEwVSA8PCBBRENfU1FSNF9TUTdfUG9zKSAgICAgICAvKiE8IDB4MDAwMDAwMTAgKi8NCg0KI2RlZmluZSBBRENfU1FSNF9TUThfUG9zICAgICAgICAgICAgICAgICAgICAgKDVVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBBRENfU1FSNF9TUThfTXNrICAgICAgICAgICAgICAgICAgICAgKDB4MUZVIDw8IEFEQ19TUVI0X1NROF9Qb3MpICAgICAgIC8qITwgMHgwMDAwMDNFMCAqLw0KI2RlZmluZSBBRENfU1FSNF9TUTggICAgICAgICAgICAgICAgICAgICAgICAgQURDX1NRUjRfU1E4X01zayAgICAgICAgICAgICAgICAgIC8qITwgQURDIGdyb3VwIHJlZ3VsYXIgc2VxdWVuY2VyIHJhbmsgOCAqLw0KI2RlZmluZSBBRENfU1FSNF9TUThfMCAgICAgICAgICAgICAgICAgICAgICAgKDB4MDFVIDw8IEFEQ19TUVI0X1NROF9Qb3MpICAgICAgIC8qITwgMHgwMDAwMDAyMCAqLw0KI2RlZmluZSBBRENfU1FSNF9TUThfMSAgICAgICAgICAgICAgICAgICAgICAgKDB4MDJVIDw8IEFEQ19TUVI0X1NROF9Qb3MpICAgICAgIC8qITwgMHgwMDAwMDA0MCAqLw0KI2RlZmluZSBBRENfU1FSNF9TUThfMiAgICAgICAgICAgICAgICAgICAgICAgKDB4MDRVIDw8IEFEQ19TUVI0X1NROF9Qb3MpICAgICAgIC8qITwgMHgwMDAwMDA4MCAqLw0KI2RlZmluZSBBRENfU1FSNF9TUThfMyAgICAgICAgICAgICAgICAgICAgICAgKDB4MDhVIDw8IEFEQ19TUVI0X1NROF9Qb3MpICAgICAgIC8qITwgMHgwMDAwMDEwMCAqLw0KI2RlZmluZSBBRENfU1FSNF9TUThfNCAgICAgICAgICAgICAgICAgICAgICAgKDB4MTBVIDw8IEFEQ19TUVI0X1NROF9Qb3MpICAgICAgIC8qITwgMHgwMDAwMDIwMCAqLw0KDQojZGVmaW5lIEFEQ19TUVI0X1NROV9Qb3MgICAgICAgICAgICAgICAgICAgICAoMTBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEFEQ19TUVI0X1NROV9Nc2sgICAgICAgICAgICAgICAgICAgICAoMHgxRlUgPDwgQURDX1NRUjRfU1E5X1BvcykgICAgICAgLyohPCAweDAwMDA3QzAwICovDQojZGVmaW5lIEFEQ19TUVI0X1NROSAgICAgICAgICAgICAgICAgICAgICAgICBBRENfU1FSNF9TUTlfTXNrICAgICAgICAgICAgICAgICAgLyohPCBBREMgZ3JvdXAgcmVndWxhciBzZXF1ZW5jZXIgcmFuayA5ICovDQojZGVmaW5lIEFEQ19TUVI0X1NROV8wICAgICAgICAgICAgICAgICAgICAgICAoMHgwMVUgPDwgQURDX1NRUjRfU1E5X1BvcykgICAgICAgLyohPCAweDAwMDAwNDAwICovDQojZGVmaW5lIEFEQ19TUVI0X1NROV8xICAgICAgICAgICAgICAgICAgICAgICAoMHgwMlUgPDwgQURDX1NRUjRfU1E5X1BvcykgICAgICAgLyohPCAweDAwMDAwODAwICovDQojZGVmaW5lIEFEQ19TUVI0X1NROV8yICAgICAgICAgICAgICAgICAgICAgICAoMHgwNFUgPDwgQURDX1NRUjRfU1E5X1BvcykgICAgICAgLyohPCAweDAwMDAxMDAwICovDQojZGVmaW5lIEFEQ19TUVI0X1NROV8zICAgICAgICAgICAgICAgICAgICAgICAoMHgwOFUgPDwgQURDX1NRUjRfU1E5X1BvcykgICAgICAgLyohPCAweDAwMDAyMDAwICovDQojZGVmaW5lIEFEQ19TUVI0X1NROV80ICAgICAgICAgICAgICAgICAgICAgICAoMHgxMFUgPDwgQURDX1NRUjRfU1E5X1BvcykgICAgICAgLyohPCAweDAwMDA0MDAwICovDQoNCiNkZWZpbmUgQURDX1NRUjRfU1ExMF9Qb3MgICAgICAgICAgICAgICAgICAgICgxNVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgQURDX1NRUjRfU1ExMF9Nc2sgICAgICAgICAgICAgICAgICAgICgweDFGVSA8PCBBRENfU1FSNF9TUTEwX1BvcykgICAgICAvKiE8IDB4MDAwRjgwMDAgKi8NCiNkZWZpbmUgQURDX1NRUjRfU1ExMCAgICAgICAgICAgICAgICAgICAgICAgIEFEQ19TUVI0X1NRMTBfTXNrICAgICAgICAgICAgICAgICAvKiE8IEFEQyBncm91cCByZWd1bGFyIHNlcXVlbmNlciByYW5rIDEwICovDQojZGVmaW5lIEFEQ19TUVI0X1NRMTBfMCAgICAgICAgICAgICAgICAgICAgICAoMHgwMVUgPDwgQURDX1NRUjRfU1ExMF9Qb3MpICAgICAgLyohPCAweDAwMDA4MDAwICovDQojZGVmaW5lIEFEQ19TUVI0X1NRMTBfMSAgICAgICAgICAgICAgICAgICAgICAoMHgwMlUgPDwgQURDX1NRUjRfU1ExMF9Qb3MpICAgICAgLyohPCAweDAwMDEwMDAwICovDQojZGVmaW5lIEFEQ19TUVI0X1NRMTBfMiAgICAgICAgICAgICAgICAgICAgICAoMHgwNFUgPDwgQURDX1NRUjRfU1ExMF9Qb3MpICAgICAgLyohPCAweDAwMDIwMDAwICovDQojZGVmaW5lIEFEQ19TUVI0X1NRMTBfMyAgICAgICAgICAgICAgICAgICAgICAoMHgwOFUgPDwgQURDX1NRUjRfU1ExMF9Qb3MpICAgICAgLyohPCAweDAwMDQwMDAwICovDQojZGVmaW5lIEFEQ19TUVI0X1NRMTBfNCAgICAgICAgICAgICAgICAgICAgICAoMHgxMFUgPDwgQURDX1NRUjRfU1ExMF9Qb3MpICAgICAgLyohPCAweDAwMDgwMDAwICovDQoNCiNkZWZpbmUgQURDX1NRUjRfU1ExMV9Qb3MgICAgICAgICAgICAgICAgICAgICgyMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgQURDX1NRUjRfU1ExMV9Nc2sgICAgICAgICAgICAgICAgICAgICgweDFGVSA8PCBBRENfU1FSNF9TUTExX1BvcykgICAgICAvKiE8IDB4MDFGMDAwMDAgKi8NCiNkZWZpbmUgQURDX1NRUjRfU1ExMSAgICAgICAgICAgICAgICAgICAgICAgIEFEQ19TUVI0X1NRMTFfTXNrICAgICAgICAgICAgICAgICAvKiE8IEFEQyBncm91cCByZWd1bGFyIHNlcXVlbmNlciByYW5rIDExICovDQojZGVmaW5lIEFEQ19TUVI0X1NRMTFfMCAgICAgICAgICAgICAgICAgICAgICAoMHgwMVUgPDwgQURDX1NRUjRfU1ExMV9Qb3MpICAgICAgLyohPCAweDAwMTAwMDAwICovDQojZGVmaW5lIEFEQ19TUVI0X1NRMTFfMSAgICAgICAgICAgICAgICAgICAgICAoMHgwMlUgPDwgQURDX1NRUjRfU1ExMV9Qb3MpICAgICAgLyohPCAweDAwMjAwMDAwICovDQojZGVmaW5lIEFEQ19TUVI0X1NRMTFfMiAgICAgICAgICAgICAgICAgICAgICAoMHgwNFUgPDwgQURDX1NRUjRfU1ExMV9Qb3MpICAgICAgLyohPCAweDAwNDAwMDAwICovDQojZGVmaW5lIEFEQ19TUVI0X1NRMTFfMyAgICAgICAgICAgICAgICAgICAgICAoMHgwOFUgPDwgQURDX1NRUjRfU1ExMV9Qb3MpICAgICAgLyohPCAweDAwODAwMDAwICovDQojZGVmaW5lIEFEQ19TUVI0X1NRMTFfNCAgICAgICAgICAgICAgICAgICAgICAoMHgxMFUgPDwgQURDX1NRUjRfU1ExMV9Qb3MpICAgICAgLyohPCAweDAxMDAwMDAwICovDQoNCiNkZWZpbmUgQURDX1NRUjRfU1ExMl9Qb3MgICAgICAgICAgICAgICAgICAgICgyNVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgQURDX1NRUjRfU1ExMl9Nc2sgICAgICAgICAgICAgICAgICAgICgweDFGVSA8PCBBRENfU1FSNF9TUTEyX1BvcykgICAgICAvKiE8IDB4M0UwMDAwMDAgKi8NCiNkZWZpbmUgQURDX1NRUjRfU1ExMiAgICAgICAgICAgICAgICAgICAgICAgIEFEQ19TUVI0X1NRMTJfTXNrICAgICAgICAgICAgICAgICAvKiE8IEFEQyBncm91cCByZWd1bGFyIHNlcXVlbmNlciByYW5rIDEyICovDQojZGVmaW5lIEFEQ19TUVI0X1NRMTJfMCAgICAgICAgICAgICAgICAgICAgICAoMHgwMVUgPDwgQURDX1NRUjRfU1ExMl9Qb3MpICAgICAgLyohPCAweDAyMDAwMDAwICovDQojZGVmaW5lIEFEQ19TUVI0X1NRMTJfMSAgICAgICAgICAgICAgICAgICAgICAoMHgwMlUgPDwgQURDX1NRUjRfU1ExMl9Qb3MpICAgICAgLyohPCAweDA0MDAwMDAwICovDQojZGVmaW5lIEFEQ19TUVI0X1NRMTJfMiAgICAgICAgICAgICAgICAgICAgICAoMHgwNFUgPDwgQURDX1NRUjRfU1ExMl9Qb3MpICAgICAgLyohPCAweDA4MDAwMDAwICovDQojZGVmaW5lIEFEQ19TUVI0X1NRMTJfMyAgICAgICAgICAgICAgICAgICAgICAoMHgwOFUgPDwgQURDX1NRUjRfU1ExMl9Qb3MpICAgICAgLyohPCAweDEwMDAwMDAwICovDQojZGVmaW5lIEFEQ19TUVI0X1NRMTJfNCAgICAgICAgICAgICAgICAgICAgICAoMHgxMFUgPDwgQURDX1NRUjRfU1ExMl9Qb3MpICAgICAgLyohPCAweDIwMDAwMDAwICovDQoNCi8qKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgQURDX1NRUjUgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIEFEQ19TUVI1X1NRMV9Qb3MgICAgICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEFEQ19TUVI1X1NRMV9Nc2sgICAgICAgICAgICAgICAgICAgICAoMHgxRlUgPDwgQURDX1NRUjVfU1ExX1BvcykgICAgICAgLyohPCAweDAwMDAwMDFGICovDQojZGVmaW5lIEFEQ19TUVI1X1NRMSAgICAgICAgICAgICAgICAgICAgICAgICBBRENfU1FSNV9TUTFfTXNrICAgICAgICAgICAgICAgICAgLyohPCBBREMgZ3JvdXAgcmVndWxhciBzZXF1ZW5jZXIgcmFuayAxICovDQojZGVmaW5lIEFEQ19TUVI1X1NRMV8wICAgICAgICAgICAgICAgICAgICAgICAoMHgwMVUgPDwgQURDX1NRUjVfU1ExX1BvcykgICAgICAgLyohPCAweDAwMDAwMDAxICovDQojZGVmaW5lIEFEQ19TUVI1X1NRMV8xICAgICAgICAgICAgICAgICAgICAgICAoMHgwMlUgPDwgQURDX1NRUjVfU1ExX1BvcykgICAgICAgLyohPCAweDAwMDAwMDAyICovDQojZGVmaW5lIEFEQ19TUVI1X1NRMV8yICAgICAgICAgICAgICAgICAgICAgICAoMHgwNFUgPDwgQURDX1NRUjVfU1ExX1BvcykgICAgICAgLyohPCAweDAwMDAwMDA0ICovDQojZGVmaW5lIEFEQ19TUVI1X1NRMV8zICAgICAgICAgICAgICAgICAgICAgICAoMHgwOFUgPDwgQURDX1NRUjVfU1ExX1BvcykgICAgICAgLyohPCAweDAwMDAwMDA4ICovDQojZGVmaW5lIEFEQ19TUVI1X1NRMV80ICAgICAgICAgICAgICAgICAgICAgICAoMHgxMFUgPDwgQURDX1NRUjVfU1ExX1BvcykgICAgICAgLyohPCAweDAwMDAwMDEwICovDQoNCiNkZWZpbmUgQURDX1NRUjVfU1EyX1BvcyAgICAgICAgICAgICAgICAgICAgICg1VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgQURDX1NRUjVfU1EyX01zayAgICAgICAgICAgICAgICAgICAgICgweDFGVSA8PCBBRENfU1FSNV9TUTJfUG9zKSAgICAgICAvKiE8IDB4MDAwMDAzRTAgKi8NCiNkZWZpbmUgQURDX1NRUjVfU1EyICAgICAgICAgICAgICAgICAgICAgICAgIEFEQ19TUVI1X1NRMl9Nc2sgICAgICAgICAgICAgICAgICAvKiE8IEFEQyBncm91cCByZWd1bGFyIHNlcXVlbmNlciByYW5rIDIgKi8NCiNkZWZpbmUgQURDX1NRUjVfU1EyXzAgICAgICAgICAgICAgICAgICAgICAgICgweDAxVSA8PCBBRENfU1FSNV9TUTJfUG9zKSAgICAgICAvKiE8IDB4MDAwMDAwMjAgKi8NCiNkZWZpbmUgQURDX1NRUjVfU1EyXzEgICAgICAgICAgICAgICAgICAgICAgICgweDAyVSA8PCBBRENfU1FSNV9TUTJfUG9zKSAgICAgICAvKiE8IDB4MDAwMDAwNDAgKi8NCiNkZWZpbmUgQURDX1NRUjVfU1EyXzIgICAgICAgICAgICAgICAgICAgICAgICgweDA0VSA8PCBBRENfU1FSNV9TUTJfUG9zKSAgICAgICAvKiE8IDB4MDAwMDAwODAgKi8NCiNkZWZpbmUgQURDX1NRUjVfU1EyXzMgICAgICAgICAgICAgICAgICAgICAgICgweDA4VSA8PCBBRENfU1FSNV9TUTJfUG9zKSAgICAgICAvKiE8IDB4MDAwMDAxMDAgKi8NCiNkZWZpbmUgQURDX1NRUjVfU1EyXzQgICAgICAgICAgICAgICAgICAgICAgICgweDEwVSA8PCBBRENfU1FSNV9TUTJfUG9zKSAgICAgICAvKiE8IDB4MDAwMDAyMDAgKi8NCg0KI2RlZmluZSBBRENfU1FSNV9TUTNfUG9zICAgICAgICAgICAgICAgICAgICAgKDEwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBBRENfU1FSNV9TUTNfTXNrICAgICAgICAgICAgICAgICAgICAgKDB4MUZVIDw8IEFEQ19TUVI1X1NRM19Qb3MpICAgICAgIC8qITwgMHgwMDAwN0MwMCAqLw0KI2RlZmluZSBBRENfU1FSNV9TUTMgICAgICAgICAgICAgICAgICAgICAgICAgQURDX1NRUjVfU1EzX01zayAgICAgICAgICAgICAgICAgIC8qITwgQURDIGdyb3VwIHJlZ3VsYXIgc2VxdWVuY2VyIHJhbmsgMyAqLw0KI2RlZmluZSBBRENfU1FSNV9TUTNfMCAgICAgICAgICAgICAgICAgICAgICAgKDB4MDFVIDw8IEFEQ19TUVI1X1NRM19Qb3MpICAgICAgIC8qITwgMHgwMDAwMDQwMCAqLw0KI2RlZmluZSBBRENfU1FSNV9TUTNfMSAgICAgICAgICAgICAgICAgICAgICAgKDB4MDJVIDw8IEFEQ19TUVI1X1NRM19Qb3MpICAgICAgIC8qITwgMHgwMDAwMDgwMCAqLw0KI2RlZmluZSBBRENfU1FSNV9TUTNfMiAgICAgICAgICAgICAgICAgICAgICAgKDB4MDRVIDw8IEFEQ19TUVI1X1NRM19Qb3MpICAgICAgIC8qITwgMHgwMDAwMTAwMCAqLw0KI2RlZmluZSBBRENfU1FSNV9TUTNfMyAgICAgICAgICAgICAgICAgICAgICAgKDB4MDhVIDw8IEFEQ19TUVI1X1NRM19Qb3MpICAgICAgIC8qITwgMHgwMDAwMjAwMCAqLw0KI2RlZmluZSBBRENfU1FSNV9TUTNfNCAgICAgICAgICAgICAgICAgICAgICAgKDB4MTBVIDw8IEFEQ19TUVI1X1NRM19Qb3MpICAgICAgIC8qITwgMHgwMDAwNDAwMCAqLw0KDQojZGVmaW5lIEFEQ19TUVI1X1NRNF9Qb3MgICAgICAgICAgICAgICAgICAgICAoMTVVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEFEQ19TUVI1X1NRNF9Nc2sgICAgICAgICAgICAgICAgICAgICAoMHgxRlUgPDwgQURDX1NRUjVfU1E0X1BvcykgICAgICAgLyohPCAweDAwMEY4MDAwICovDQojZGVmaW5lIEFEQ19TUVI1X1NRNCAgICAgICAgICAgICAgICAgICAgICAgICBBRENfU1FSNV9TUTRfTXNrICAgICAgICAgICAgICAgICAgLyohPCBBREMgZ3JvdXAgcmVndWxhciBzZXF1ZW5jZXIgcmFuayA0ICovDQojZGVmaW5lIEFEQ19TUVI1X1NRNF8wICAgICAgICAgICAgICAgICAgICAgICAoMHgwMVUgPDwgQURDX1NRUjVfU1E0X1BvcykgICAgICAgLyohPCAweDAwMDA4MDAwICovDQojZGVmaW5lIEFEQ19TUVI1X1NRNF8xICAgICAgICAgICAgICAgICAgICAgICAoMHgwMlUgPDwgQURDX1NRUjVfU1E0X1BvcykgICAgICAgLyohPCAweDAwMDEwMDAwICovDQojZGVmaW5lIEFEQ19TUVI1X1NRNF8yICAgICAgICAgICAgICAgICAgICAgICAoMHgwNFUgPDwgQURDX1NRUjVfU1E0X1BvcykgICAgICAgLyohPCAweDAwMDIwMDAwICovDQojZGVmaW5lIEFEQ19TUVI1X1NRNF8zICAgICAgICAgICAgICAgICAgICAgICAoMHgwOFUgPDwgQURDX1NRUjVfU1E0X1BvcykgICAgICAgLyohPCAweDAwMDQwMDAwICovDQojZGVmaW5lIEFEQ19TUVI1X1NRNF80ICAgICAgICAgICAgICAgICAgICAgICAoMHgxMFUgPDwgQURDX1NRUjVfU1E0X1BvcykgICAgICAgLyohPCAweDAwMDgwMDAwICovDQoNCiNkZWZpbmUgQURDX1NRUjVfU1E1X1BvcyAgICAgICAgICAgICAgICAgICAgICgyMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgQURDX1NRUjVfU1E1X01zayAgICAgICAgICAgICAgICAgICAgICgweDFGVSA8PCBBRENfU1FSNV9TUTVfUG9zKSAgICAgICAvKiE8IDB4MDFGMDAwMDAgKi8NCiNkZWZpbmUgQURDX1NRUjVfU1E1ICAgICAgICAgICAgICAgICAgICAgICAgIEFEQ19TUVI1X1NRNV9Nc2sgICAgICAgICAgICAgICAgICAvKiE8IEFEQyBncm91cCByZWd1bGFyIHNlcXVlbmNlciByYW5rIDUgKi8NCiNkZWZpbmUgQURDX1NRUjVfU1E1XzAgICAgICAgICAgICAgICAgICAgICAgICgweDAxVSA8PCBBRENfU1FSNV9TUTVfUG9zKSAgICAgICAvKiE8IDB4MDAxMDAwMDAgKi8NCiNkZWZpbmUgQURDX1NRUjVfU1E1XzEgICAgICAgICAgICAgICAgICAgICAgICgweDAyVSA8PCBBRENfU1FSNV9TUTVfUG9zKSAgICAgICAvKiE8IDB4MDAyMDAwMDAgKi8NCiNkZWZpbmUgQURDX1NRUjVfU1E1XzIgICAgICAgICAgICAgICAgICAgICAgICgweDA0VSA8PCBBRENfU1FSNV9TUTVfUG9zKSAgICAgICAvKiE8IDB4MDA0MDAwMDAgKi8NCiNkZWZpbmUgQURDX1NRUjVfU1E1XzMgICAgICAgICAgICAgICAgICAgICAgICgweDA4VSA8PCBBRENfU1FSNV9TUTVfUG9zKSAgICAgICAvKiE8IDB4MDA4MDAwMDAgKi8NCiNkZWZpbmUgQURDX1NRUjVfU1E1XzQgICAgICAgICAgICAgICAgICAgICAgICgweDEwVSA8PCBBRENfU1FSNV9TUTVfUG9zKSAgICAgICAvKiE8IDB4MDEwMDAwMDAgKi8NCg0KI2RlZmluZSBBRENfU1FSNV9TUTZfUG9zICAgICAgICAgICAgICAgICAgICAgKDI1VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBBRENfU1FSNV9TUTZfTXNrICAgICAgICAgICAgICAgICAgICAgKDB4MUZVIDw8IEFEQ19TUVI1X1NRNl9Qb3MpICAgICAgIC8qITwgMHgzRTAwMDAwMCAqLw0KI2RlZmluZSBBRENfU1FSNV9TUTYgICAgICAgICAgICAgICAgICAgICAgICAgQURDX1NRUjVfU1E2X01zayAgICAgICAgICAgICAgICAgIC8qITwgQURDIGdyb3VwIHJlZ3VsYXIgc2VxdWVuY2VyIHJhbmsgNiAqLw0KI2RlZmluZSBBRENfU1FSNV9TUTZfMCAgICAgICAgICAgICAgICAgICAgICAgKDB4MDFVIDw8IEFEQ19TUVI1X1NRNl9Qb3MpICAgICAgIC8qITwgMHgwMjAwMDAwMCAqLw0KI2RlZmluZSBBRENfU1FSNV9TUTZfMSAgICAgICAgICAgICAgICAgICAgICAgKDB4MDJVIDw8IEFEQ19TUVI1X1NRNl9Qb3MpICAgICAgIC8qITwgMHgwNDAwMDAwMCAqLw0KI2RlZmluZSBBRENfU1FSNV9TUTZfMiAgICAgICAgICAgICAgICAgICAgICAgKDB4MDRVIDw8IEFEQ19TUVI1X1NRNl9Qb3MpICAgICAgIC8qITwgMHgwODAwMDAwMCAqLw0KI2RlZmluZSBBRENfU1FSNV9TUTZfMyAgICAgICAgICAgICAgICAgICAgICAgKDB4MDhVIDw8IEFEQ19TUVI1X1NRNl9Qb3MpICAgICAgIC8qITwgMHgxMDAwMDAwMCAqLw0KI2RlZmluZSBBRENfU1FSNV9TUTZfNCAgICAgICAgICAgICAgICAgICAgICAgKDB4MTBVIDw8IEFEQ19TUVI1X1NRNl9Qb3MpICAgICAgIC8qITwgMHgyMDAwMDAwMCAqLw0KDQoNCi8qKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgQURDX0pTUVIgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIEFEQ19KU1FSX0pTUTFfUG9zICAgICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEFEQ19KU1FSX0pTUTFfTXNrICAgICAgICAgICAgICAgICAgICAoMHgxRlUgPDwgQURDX0pTUVJfSlNRMV9Qb3MpICAgICAgLyohPCAweDAwMDAwMDFGICovDQojZGVmaW5lIEFEQ19KU1FSX0pTUTEgICAgICAgICAgICAgICAgICAgICAgICBBRENfSlNRUl9KU1ExX01zayAgICAgICAgICAgICAgICAgLyohPCBBREMgZ3JvdXAgaW5qZWN0ZWQgc2VxdWVuY2VyIHJhbmsgMSAqLw0KI2RlZmluZSBBRENfSlNRUl9KU1ExXzAgICAgICAgICAgICAgICAgICAgICAgKDB4MDFVIDw8IEFEQ19KU1FSX0pTUTFfUG9zKSAgICAgIC8qITwgMHgwMDAwMDAwMSAqLw0KI2RlZmluZSBBRENfSlNRUl9KU1ExXzEgICAgICAgICAgICAgICAgICAgICAgKDB4MDJVIDw8IEFEQ19KU1FSX0pTUTFfUG9zKSAgICAgIC8qITwgMHgwMDAwMDAwMiAqLw0KI2RlZmluZSBBRENfSlNRUl9KU1ExXzIgICAgICAgICAgICAgICAgICAgICAgKDB4MDRVIDw8IEFEQ19KU1FSX0pTUTFfUG9zKSAgICAgIC8qITwgMHgwMDAwMDAwNCAqLw0KI2RlZmluZSBBRENfSlNRUl9KU1ExXzMgICAgICAgICAgICAgICAgICAgICAgKDB4MDhVIDw8IEFEQ19KU1FSX0pTUTFfUG9zKSAgICAgIC8qITwgMHgwMDAwMDAwOCAqLw0KI2RlZmluZSBBRENfSlNRUl9KU1ExXzQgICAgICAgICAgICAgICAgICAgICAgKDB4MTBVIDw8IEFEQ19KU1FSX0pTUTFfUG9zKSAgICAgIC8qITwgMHgwMDAwMDAxMCAqLw0KDQojZGVmaW5lIEFEQ19KU1FSX0pTUTJfUG9zICAgICAgICAgICAgICAgICAgICAoNVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEFEQ19KU1FSX0pTUTJfTXNrICAgICAgICAgICAgICAgICAgICAoMHgxRlUgPDwgQURDX0pTUVJfSlNRMl9Qb3MpICAgICAgLyohPCAweDAwMDAwM0UwICovDQojZGVmaW5lIEFEQ19KU1FSX0pTUTIgICAgICAgICAgICAgICAgICAgICAgICBBRENfSlNRUl9KU1EyX01zayAgICAgICAgICAgICAgICAgLyohPCBBREMgZ3JvdXAgaW5qZWN0ZWQgc2VxdWVuY2VyIHJhbmsgMiAqLw0KI2RlZmluZSBBRENfSlNRUl9KU1EyXzAgICAgICAgICAgICAgICAgICAgICAgKDB4MDFVIDw8IEFEQ19KU1FSX0pTUTJfUG9zKSAgICAgIC8qITwgMHgwMDAwMDAyMCAqLw0KI2RlZmluZSBBRENfSlNRUl9KU1EyXzEgICAgICAgICAgICAgICAgICAgICAgKDB4MDJVIDw8IEFEQ19KU1FSX0pTUTJfUG9zKSAgICAgIC8qITwgMHgwMDAwMDA0MCAqLw0KI2RlZmluZSBBRENfSlNRUl9KU1EyXzIgICAgICAgICAgICAgICAgICAgICAgKDB4MDRVIDw8IEFEQ19KU1FSX0pTUTJfUG9zKSAgICAgIC8qITwgMHgwMDAwMDA4MCAqLw0KI2RlZmluZSBBRENfSlNRUl9KU1EyXzMgICAgICAgICAgICAgICAgICAgICAgKDB4MDhVIDw8IEFEQ19KU1FSX0pTUTJfUG9zKSAgICAgIC8qITwgMHgwMDAwMDEwMCAqLw0KI2RlZmluZSBBRENfSlNRUl9KU1EyXzQgICAgICAgICAgICAgICAgICAgICAgKDB4MTBVIDw8IEFEQ19KU1FSX0pTUTJfUG9zKSAgICAgIC8qITwgMHgwMDAwMDIwMCAqLw0KDQojZGVmaW5lIEFEQ19KU1FSX0pTUTNfUG9zICAgICAgICAgICAgICAgICAgICAoMTBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEFEQ19KU1FSX0pTUTNfTXNrICAgICAgICAgICAgICAgICAgICAoMHgxRlUgPDwgQURDX0pTUVJfSlNRM19Qb3MpICAgICAgLyohPCAweDAwMDA3QzAwICovDQojZGVmaW5lIEFEQ19KU1FSX0pTUTMgICAgICAgICAgICAgICAgICAgICAgICBBRENfSlNRUl9KU1EzX01zayAgICAgICAgICAgICAgICAgLyohPCBBREMgZ3JvdXAgaW5qZWN0ZWQgc2VxdWVuY2VyIHJhbmsgMyAqLw0KI2RlZmluZSBBRENfSlNRUl9KU1EzXzAgICAgICAgICAgICAgICAgICAgICAgKDB4MDFVIDw8IEFEQ19KU1FSX0pTUTNfUG9zKSAgICAgIC8qITwgMHgwMDAwMDQwMCAqLw0KI2RlZmluZSBBRENfSlNRUl9KU1EzXzEgICAgICAgICAgICAgICAgICAgICAgKDB4MDJVIDw8IEFEQ19KU1FSX0pTUTNfUG9zKSAgICAgIC8qITwgMHgwMDAwMDgwMCAqLw0KI2RlZmluZSBBRENfSlNRUl9KU1EzXzIgICAgICAgICAgICAgICAgICAgICAgKDB4MDRVIDw8IEFEQ19KU1FSX0pTUTNfUG9zKSAgICAgIC8qITwgMHgwMDAwMTAwMCAqLw0KI2RlZmluZSBBRENfSlNRUl9KU1EzXzMgICAgICAgICAgICAgICAgICAgICAgKDB4MDhVIDw8IEFEQ19KU1FSX0pTUTNfUG9zKSAgICAgIC8qITwgMHgwMDAwMjAwMCAqLw0KI2RlZmluZSBBRENfSlNRUl9KU1EzXzQgICAgICAgICAgICAgICAgICAgICAgKDB4MTBVIDw8IEFEQ19KU1FSX0pTUTNfUG9zKSAgICAgIC8qITwgMHgwMDAwNDAwMCAqLw0KDQojZGVmaW5lIEFEQ19KU1FSX0pTUTRfUG9zICAgICAgICAgICAgICAgICAgICAoMTVVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEFEQ19KU1FSX0pTUTRfTXNrICAgICAgICAgICAgICAgICAgICAoMHgxRlUgPDwgQURDX0pTUVJfSlNRNF9Qb3MpICAgICAgLyohPCAweDAwMEY4MDAwICovDQojZGVmaW5lIEFEQ19KU1FSX0pTUTQgICAgICAgICAgICAgICAgICAgICAgICBBRENfSlNRUl9KU1E0X01zayAgICAgICAgICAgICAgICAgLyohPCBBREMgZ3JvdXAgaW5qZWN0ZWQgc2VxdWVuY2VyIHJhbmsgNCAqLw0KI2RlZmluZSBBRENfSlNRUl9KU1E0XzAgICAgICAgICAgICAgICAgICAgICAgKDB4MDFVIDw8IEFEQ19KU1FSX0pTUTRfUG9zKSAgICAgIC8qITwgMHgwMDAwODAwMCAqLw0KI2RlZmluZSBBRENfSlNRUl9KU1E0XzEgICAgICAgICAgICAgICAgICAgICAgKDB4MDJVIDw8IEFEQ19KU1FSX0pTUTRfUG9zKSAgICAgIC8qITwgMHgwMDAxMDAwMCAqLw0KI2RlZmluZSBBRENfSlNRUl9KU1E0XzIgICAgICAgICAgICAgICAgICAgICAgKDB4MDRVIDw8IEFEQ19KU1FSX0pTUTRfUG9zKSAgICAgIC8qITwgMHgwMDAyMDAwMCAqLw0KI2RlZmluZSBBRENfSlNRUl9KU1E0XzMgICAgICAgICAgICAgICAgICAgICAgKDB4MDhVIDw8IEFEQ19KU1FSX0pTUTRfUG9zKSAgICAgIC8qITwgMHgwMDA0MDAwMCAqLw0KI2RlZmluZSBBRENfSlNRUl9KU1E0XzQgICAgICAgICAgICAgICAgICAgICAgKDB4MTBVIDw8IEFEQ19KU1FSX0pTUTRfUG9zKSAgICAgIC8qITwgMHgwMDA4MDAwMCAqLw0KDQojZGVmaW5lIEFEQ19KU1FSX0pMX1BvcyAgICAgICAgICAgICAgICAgICAgICAoMjBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEFEQ19KU1FSX0pMX01zayAgICAgICAgICAgICAgICAgICAgICAoMHgzVSA8PCBBRENfSlNRUl9KTF9Qb3MpICAgICAgICAgLyohPCAweDAwMzAwMDAwICovDQojZGVmaW5lIEFEQ19KU1FSX0pMICAgICAgICAgICAgICAgICAgICAgICAgICBBRENfSlNRUl9KTF9Nc2sgICAgICAgICAgICAgICAgICAgLyohPCBBREMgZ3JvdXAgaW5qZWN0ZWQgc2VxdWVuY2VyIHNjYW4gbGVuZ3RoICovDQojZGVmaW5lIEFEQ19KU1FSX0pMXzAgICAgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBBRENfSlNRUl9KTF9Qb3MpICAgICAgICAgLyohPCAweDAwMTAwMDAwICovDQojZGVmaW5lIEFEQ19KU1FSX0pMXzEgICAgICAgICAgICAgICAgICAgICAgICAoMHgyVSA8PCBBRENfSlNRUl9KTF9Qb3MpICAgICAgICAgLyohPCAweDAwMjAwMDAwICovDQoNCi8qKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgQURDX0pEUjEgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIEFEQ19KRFIxX0pEQVRBX1BvcyAgICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEFEQ19KRFIxX0pEQVRBX01zayAgICAgICAgICAgICAgICAgICAoMHhGRkZGVSA8PCBBRENfSkRSMV9KREFUQV9Qb3MpICAgLyohPCAweDAwMDBGRkZGICovDQojZGVmaW5lIEFEQ19KRFIxX0pEQVRBICAgICAgICAgICAgICAgICAgICAgICBBRENfSkRSMV9KREFUQV9Nc2sgICAgICAgICAgICAgICAgLyohPCBBREMgZ3JvdXAgaW5qZWN0ZWQgc2VxdWVuY2VyIHJhbmsgMSBjb252ZXJzaW9uIGRhdGEgKi8NCg0KLyoqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBBRENfSkRSMiByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgQURDX0pEUjJfSkRBVEFfUG9zICAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgQURDX0pEUjJfSkRBVEFfTXNrICAgICAgICAgICAgICAgICAgICgweEZGRkZVIDw8IEFEQ19KRFIyX0pEQVRBX1BvcykgICAvKiE8IDB4MDAwMEZGRkYgKi8NCiNkZWZpbmUgQURDX0pEUjJfSkRBVEEgICAgICAgICAgICAgICAgICAgICAgIEFEQ19KRFIyX0pEQVRBX01zayAgICAgICAgICAgICAgICAvKiE8IEFEQyBncm91cCBpbmplY3RlZCBzZXF1ZW5jZXIgcmFuayAyIGNvbnZlcnNpb24gZGF0YSAqLw0KDQovKioqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIEFEQ19KRFIzIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBBRENfSkRSM19KREFUQV9Qb3MgICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBBRENfSkRSM19KREFUQV9Nc2sgICAgICAgICAgICAgICAgICAgKDB4RkZGRlUgPDwgQURDX0pEUjNfSkRBVEFfUG9zKSAgIC8qITwgMHgwMDAwRkZGRiAqLw0KI2RlZmluZSBBRENfSkRSM19KREFUQSAgICAgICAgICAgICAgICAgICAgICAgQURDX0pEUjNfSkRBVEFfTXNrICAgICAgICAgICAgICAgIC8qITwgQURDIGdyb3VwIGluamVjdGVkIHNlcXVlbmNlciByYW5rIDMgY29udmVyc2lvbiBkYXRhICovDQoNCi8qKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgQURDX0pEUjQgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIEFEQ19KRFI0X0pEQVRBX1BvcyAgICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEFEQ19KRFI0X0pEQVRBX01zayAgICAgICAgICAgICAgICAgICAoMHhGRkZGVSA8PCBBRENfSkRSNF9KREFUQV9Qb3MpICAgLyohPCAweDAwMDBGRkZGICovDQojZGVmaW5lIEFEQ19KRFI0X0pEQVRBICAgICAgICAgICAgICAgICAgICAgICBBRENfSkRSNF9KREFUQV9Nc2sgICAgICAgICAgICAgICAgLyohPCBBREMgZ3JvdXAgaW5qZWN0ZWQgc2VxdWVuY2VyIHJhbmsgNCBjb252ZXJzaW9uIGRhdGEgKi8NCg0KLyoqKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgQURDX0RSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgQURDX0RSX0RBVEFfUG9zICAgICAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgQURDX0RSX0RBVEFfTXNrICAgICAgICAgICAgICAgICAgICAgICgweEZGRkZVIDw8IEFEQ19EUl9EQVRBX1BvcykgICAgICAvKiE8IDB4MDAwMEZGRkYgKi8NCiNkZWZpbmUgQURDX0RSX0RBVEEgICAgICAgICAgICAgICAgICAgICAgICAgIEFEQ19EUl9EQVRBX01zayAgICAgICAgICAgICAgICAgICAvKiE8IEFEQyBncm91cCByZWd1bGFyIGNvbnZlcnNpb24gZGF0YSAqLw0KDQovKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgQURDX1NNUFIwIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBBRENfU01QUjBfU01QMzBfUG9zICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBBRENfU01QUjBfU01QMzBfTXNrICAgICAgICAgICAgICAgICAgKDB4N1UgPDwgQURDX1NNUFIwX1NNUDMwX1BvcykgICAgIC8qITwgMHgwMDAwMDAwNyAqLw0KI2RlZmluZSBBRENfU01QUjBfU01QMzAgICAgICAgICAgICAgICAgICAgICAgQURDX1NNUFIwX1NNUDMwX01zayAgICAgICAgICAgICAgIC8qITwgQURDIGNoYW5uZWwgMzAgc2FtcGxpbmcgdGltZSBzZWxlY3Rpb24gKi8NCiNkZWZpbmUgQURDX1NNUFIwX1NNUDMwXzAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IEFEQ19TTVBSMF9TTVAzMF9Qb3MpICAgICAvKiE8IDB4MDAwMDAwMDEgKi8NCiNkZWZpbmUgQURDX1NNUFIwX1NNUDMwXzEgICAgICAgICAgICAgICAgICAgICgweDJVIDw8IEFEQ19TTVBSMF9TTVAzMF9Qb3MpICAgICAvKiE8IDB4MDAwMDAwMDIgKi8NCiNkZWZpbmUgQURDX1NNUFIwX1NNUDMwXzIgICAgICAgICAgICAgICAgICAgICgweDRVIDw8IEFEQ19TTVBSMF9TTVAzMF9Qb3MpICAgICAvKiE8IDB4MDAwMDAwMDQgKi8NCiANCiNkZWZpbmUgQURDX1NNUFIwX1NNUDMxX1BvcyAgICAgICAgICAgICAgICAgICgzVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgQURDX1NNUFIwX1NNUDMxX01zayAgICAgICAgICAgICAgICAgICgweDdVIDw8IEFEQ19TTVBSMF9TTVAzMV9Qb3MpICAgICAvKiE8IDB4MDAwMDAwMzggKi8NCiNkZWZpbmUgQURDX1NNUFIwX1NNUDMxICAgICAgICAgICAgICAgICAgICAgIEFEQ19TTVBSMF9TTVAzMV9Nc2sgICAgICAgICAgICAgICAvKiE8IEFEQyBjaGFubmVsIDMxIHNhbXBsaW5nIHRpbWUgc2VsZWN0aW9uICovDQojZGVmaW5lIEFEQ19TTVBSMF9TTVAzMV8wICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBBRENfU01QUjBfU01QMzFfUG9zKSAgICAgLyohPCAweDAwMDAwMDA4ICovDQojZGVmaW5lIEFEQ19TTVBSMF9TTVAzMV8xICAgICAgICAgICAgICAgICAgICAoMHgyVSA8PCBBRENfU01QUjBfU01QMzFfUG9zKSAgICAgLyohPCAweDAwMDAwMDEwICovDQojZGVmaW5lIEFEQ19TTVBSMF9TTVAzMV8yICAgICAgICAgICAgICAgICAgICAoMHg0VSA8PCBBRENfU01QUjBfU01QMzFfUG9zKSAgICAgLyohPCAweDAwMDAwMDIwICovDQoNCi8qKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgQURDX0NTUiByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIEFEQ19DU1JfQVdEMV9Qb3MgICAgICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEFEQ19DU1JfQVdEMV9Nc2sgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBBRENfQ1NSX0FXRDFfUG9zKSAgICAgICAgLyohPCAweDAwMDAwMDAxICovDQojZGVmaW5lIEFEQ19DU1JfQVdEMSAgICAgICAgICAgICAgICAgICAgICAgICBBRENfQ1NSX0FXRDFfTXNrICAgICAgICAgICAgICAgICAgLyohPCBBREMgbXVsdGltb2RlIG1hc3RlciBhbmFsb2cgd2F0Y2hkb2cgMSBmbGFnICovDQojZGVmaW5lIEFEQ19DU1JfRU9DUzFfUG9zICAgICAgICAgICAgICAgICAgICAoMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEFEQ19DU1JfRU9DUzFfTXNrICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBBRENfQ1NSX0VPQ1MxX1BvcykgICAgICAgLyohPCAweDAwMDAwMDAyICovDQojZGVmaW5lIEFEQ19DU1JfRU9DUzEgICAgICAgICAgICAgICAgICAgICAgICBBRENfQ1NSX0VPQ1MxX01zayAgICAgICAgICAgICAgICAgLyohPCBBREMgbXVsdGltb2RlIG1hc3RlciBncm91cCByZWd1bGFyIGVuZCBvZiB1bml0YXJ5IGNvbnZlcnNpb24gb3IgZW5kIG9mIHNlcXVlbmNlIGNvbnZlcnNpb25zIGZsYWcgKi8NCiNkZWZpbmUgQURDX0NTUl9KRU9TMV9Qb3MgICAgICAgICAgICAgICAgICAgICgyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgQURDX0NTUl9KRU9TMV9Nc2sgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IEFEQ19DU1JfSkVPUzFfUG9zKSAgICAgICAvKiE8IDB4MDAwMDAwMDQgKi8NCiNkZWZpbmUgQURDX0NTUl9KRU9TMSAgICAgICAgICAgICAgICAgICAgICAgIEFEQ19DU1JfSkVPUzFfTXNrICAgICAgICAgICAgICAgICAvKiE8IEFEQyBtdWx0aW1vZGUgbWFzdGVyIGdyb3VwIGluamVjdGVkIGVuZCBvZiBzZXF1ZW5jZSBjb252ZXJzaW9ucyBmbGFnICovDQojZGVmaW5lIEFEQ19DU1JfSlNUUlQxX1BvcyAgICAgICAgICAgICAgICAgICAoM1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEFEQ19DU1JfSlNUUlQxX01zayAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBBRENfQ1NSX0pTVFJUMV9Qb3MpICAgICAgLyohPCAweDAwMDAwMDA4ICovDQojZGVmaW5lIEFEQ19DU1JfSlNUUlQxICAgICAgICAgICAgICAgICAgICAgICBBRENfQ1NSX0pTVFJUMV9Nc2sgICAgICAgICAgICAgICAgLyohPCBBREMgbXVsdGltb2RlIG1hc3RlciBncm91cCBpbmplY3RlZCBjb252ZXJzaW9uIHN0YXJ0IGZsYWcgKi8NCiNkZWZpbmUgQURDX0NTUl9TVFJUMV9Qb3MgICAgICAgICAgICAgICAgICAgICg0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgQURDX0NTUl9TVFJUMV9Nc2sgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IEFEQ19DU1JfU1RSVDFfUG9zKSAgICAgICAvKiE8IDB4MDAwMDAwMTAgKi8NCiNkZWZpbmUgQURDX0NTUl9TVFJUMSAgICAgICAgICAgICAgICAgICAgICAgIEFEQ19DU1JfU1RSVDFfTXNrICAgICAgICAgICAgICAgICAvKiE8IEFEQyBtdWx0aW1vZGUgbWFzdGVyIGdyb3VwIHJlZ3VsYXIgY29udmVyc2lvbiBzdGFydCBmbGFnICovDQojZGVmaW5lIEFEQ19DU1JfT1ZSMV9Qb3MgICAgICAgICAgICAgICAgICAgICAoNVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEFEQ19DU1JfT1ZSMV9Nc2sgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBBRENfQ1NSX09WUjFfUG9zKSAgICAgICAgLyohPCAweDAwMDAwMDIwICovDQojZGVmaW5lIEFEQ19DU1JfT1ZSMSAgICAgICAgICAgICAgICAgICAgICAgICBBRENfQ1NSX09WUjFfTXNrICAgICAgICAgICAgICAgICAgLyohPCBBREMgbXVsdGltb2RlIG1hc3RlciBncm91cCByZWd1bGFyIG92ZXJydW4gZmxhZyAqLw0KI2RlZmluZSBBRENfQ1NSX0FET05TMV9Qb3MgICAgICAgICAgICAgICAgICAgKDZVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBBRENfQ1NSX0FET05TMV9Nc2sgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgQURDX0NTUl9BRE9OUzFfUG9zKSAgICAgIC8qITwgMHgwMDAwMDA0MCAqLw0KI2RlZmluZSBBRENfQ1NSX0FET05TMSAgICAgICAgICAgICAgICAgICAgICAgQURDX0NTUl9BRE9OUzFfTXNrICAgICAgICAgICAgICAgIC8qITwgQURDIG11bHRpbW9kZSBtYXN0ZXIgcmVhZHkgZmxhZyAqLw0KDQovKiBMZWdhY3kgZGVmaW5lcyAqLw0KI2RlZmluZSAgQURDX0NTUl9FT0MxICAgICAgICAgICAgICAgICAgICAgICAgKEFEQ19DU1JfRU9DUzEpDQojZGVmaW5lICBBRENfQ1NSX0pFT0MxICAgICAgICAgICAgICAgICAgICAgICAoQURDX0NTUl9KRU9TMSkNCg0KLyoqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBBRENfQ0NSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgQURDX0NDUl9BRENQUkVfUG9zICAgICAgICAgICAgICAgICAgICgxNlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgQURDX0NDUl9BRENQUkVfTXNrICAgICAgICAgICAgICAgICAgICgweDNVIDw8IEFEQ19DQ1JfQURDUFJFX1BvcykgICAgICAvKiE8IDB4MDAwMzAwMDAgKi8NCiNkZWZpbmUgQURDX0NDUl9BRENQUkUgICAgICAgICAgICAgICAgICAgICAgIEFEQ19DQ1JfQURDUFJFX01zayAgICAgICAgICAgICAgICAvKiE8IEFEQyBjbG9jayBzb3VyY2UgYXN5bmNocm9ub3VzIHByZXNjYWxlciAqLw0KI2RlZmluZSBBRENfQ0NSX0FEQ1BSRV8wICAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgQURDX0NDUl9BRENQUkVfUG9zKSAgICAgIC8qITwgMHgwMDAxMDAwMCAqLw0KI2RlZmluZSBBRENfQ0NSX0FEQ1BSRV8xICAgICAgICAgICAgICAgICAgICAgKDB4MlUgPDwgQURDX0NDUl9BRENQUkVfUG9zKSAgICAgIC8qITwgMHgwMDAyMDAwMCAqLw0KI2RlZmluZSBBRENfQ0NSX1RTVlJFRkVfUG9zICAgICAgICAgICAgICAgICAgKDIzVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBBRENfQ0NSX1RTVlJFRkVfTXNrICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgQURDX0NDUl9UU1ZSRUZFX1BvcykgICAgIC8qITwgMHgwMDgwMDAwMCAqLw0KI2RlZmluZSBBRENfQ0NSX1RTVlJFRkUgICAgICAgICAgICAgICAgICAgICAgQURDX0NDUl9UU1ZSRUZFX01zayAgICAgICAgICAgICAgIC8qITwgQURDIGludGVybmFsIHBhdGggdG8gVnJlZkludCBhbmQgdGVtcGVyYXR1cmUgc2Vuc29yIGVuYWJsZSAqLw0KDQovKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLw0KLyogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8NCi8qICAgICAgICAgICAgICAgICAgICAgIEFuYWxvZyBDb21wYXJhdG9ycyAoQ09NUCkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovDQovKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLw0KLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8NCg0KLyoqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIENPTVBfQ1NSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgQ09NUF9DU1JfMTBLUFUgICAgICAgICAgICAgICAgICAgICAgKDB4MDAwMDAwMDFVKSAgICAgICAgICAgICAgICAgICAgICAvKiE8IENvbXBhcmF0b3IgMSBpbnB1dCBwbHVzIDEwSyBwdWxsLXVwIHJlc2lzdG9yICovDQojZGVmaW5lIENPTVBfQ1NSXzQwMEtQVSAgICAgICAgICAgICAgICAgICAgICgweDAwMDAwMDAyVSkgICAgICAgICAgICAgICAgICAgICAgLyohPCBDb21wYXJhdG9yIDEgaW5wdXQgcGx1cyA0MDBLIHB1bGwtdXAgcmVzaXN0b3IgKi8NCiNkZWZpbmUgQ09NUF9DU1JfMTBLUEQgICAgICAgICAgICAgICAgICAgICAgKDB4MDAwMDAwMDRVKSAgICAgICAgICAgICAgICAgICAgICAvKiE8IENvbXBhcmF0b3IgMSBpbnB1dCBwbHVzIDEwSyBwdWxsLWRvd24gcmVzaXN0b3IgKi8NCiNkZWZpbmUgQ09NUF9DU1JfNDAwS1BEICAgICAgICAgICAgICAgICAgICAgKDB4MDAwMDAwMDhVKSAgICAgICAgICAgICAgICAgICAgICAvKiE8IENvbXBhcmF0b3IgMSBpbnB1dCBwbHVzIDQwMEsgcHVsbC1kb3duIHJlc2lzdG9yICovDQojZGVmaW5lIENPTVBfQ1NSX0NNUDFFTl9Qb3MgICAgICAgICAgICAgICAgICg0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIENPTVBfQ1NSX0NNUDFFTl9Nc2sgICAgICAgICAgICAgICAgICgweDFVIDw8IENPTVBfQ1NSX0NNUDFFTl9Qb3MpICAgICAgLyohPCAweDAwMDAwMDEwICovDQojZGVmaW5lIENPTVBfQ1NSX0NNUDFFTiAgICAgICAgICAgICAgICAgICAgIENPTVBfQ1NSX0NNUDFFTl9Nc2sgICAgICAgICAgICAgICAgLyohPCBDb21wYXJhdG9yIDEgZW5hYmxlICovDQojZGVmaW5lIENPTVBfQ1NSX0NNUDFPVVRfUG9zICAgICAgICAgICAgICAgICg3VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIENPTVBfQ1NSX0NNUDFPVVRfTXNrICAgICAgICAgICAgICAgICgweDFVIDw8IENPTVBfQ1NSX0NNUDFPVVRfUG9zKSAgICAgLyohPCAweDAwMDAwMDgwICovDQojZGVmaW5lIENPTVBfQ1NSX0NNUDFPVVQgICAgICAgICAgICAgICAgICAgIENPTVBfQ1NSX0NNUDFPVVRfTXNrICAgICAgICAgICAgICAgLyohPCBDb21wYXJhdG9yIDEgb3V0cHV0IGxldmVsICovDQojZGVmaW5lIENPTVBfQ1NSX1NQRUVEX1BvcyAgICAgICAgICAgICAgICAgICgxMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIENPTVBfQ1NSX1NQRUVEX01zayAgICAgICAgICAgICAgICAgICgweDFVIDw8IENPTVBfQ1NSX1NQRUVEX1BvcykgICAgICAgLyohPCAweDAwMDAxMDAwICovDQojZGVmaW5lIENPTVBfQ1NSX1NQRUVEICAgICAgICAgICAgICAgICAgICAgIENPTVBfQ1NSX1NQRUVEX01zayAgICAgICAgICAgICAgICAgLyohPCBDb21wYXJhdG9yIDIgcG93ZXIgbW9kZSAqLw0KI2RlZmluZSBDT01QX0NTUl9DTVAyT1VUX1BvcyAgICAgICAgICAgICAgICAoMTNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBDT01QX0NTUl9DTVAyT1VUX01zayAgICAgICAgICAgICAgICAoMHgxVSA8PCBDT01QX0NTUl9DTVAyT1VUX1BvcykgICAgIC8qITwgMHgwMDAwMjAwMCAqLw0KI2RlZmluZSBDT01QX0NTUl9DTVAyT1VUICAgICAgICAgICAgICAgICAgICBDT01QX0NTUl9DTVAyT1VUX01zayAgICAgICAgICAgICAgIC8qITwgQ29tcGFyYXRvciAyIG91dHB1dCBsZXZlbCAqLw0KDQojZGVmaW5lIENPTVBfQ1NSX1dORFdFX1BvcyAgICAgICAgICAgICAgICAgICgxN1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIENPTVBfQ1NSX1dORFdFX01zayAgICAgICAgICAgICAgICAgICgweDFVIDw8IENPTVBfQ1NSX1dORFdFX1BvcykgICAgICAgLyohPCAweDAwMDIwMDAwICovDQojZGVmaW5lIENPTVBfQ1NSX1dORFdFICAgICAgICAgICAgICAgICAgICAgIENPTVBfQ1NSX1dORFdFX01zayAgICAgICAgICAgICAgICAgLyohPCBQYWlyIG9mIGNvbXBhcmF0b3JzIHdpbmRvdyBtb2RlLiBCaXQgaW50ZW5kZWQgdG8gYmUgdXNlZCB3aXRoIENPTVAgY29tbW9uIGluc3RhbmNlIChDT01QX0NvbW1vbl9UeXBlRGVmKSAgKi8NCg0KI2RlZmluZSBDT01QX0NTUl9JTlNFTF9Qb3MgICAgICAgICAgICAgICAgICAoMThVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBDT01QX0NTUl9JTlNFTF9Nc2sgICAgICAgICAgICAgICAgICAoMHg3VSA8PCBDT01QX0NTUl9JTlNFTF9Qb3MpICAgICAgIC8qITwgMHgwMDFDMDAwMCAqLw0KI2RlZmluZSBDT01QX0NTUl9JTlNFTCAgICAgICAgICAgICAgICAgICAgICBDT01QX0NTUl9JTlNFTF9Nc2sgICAgICAgICAgICAgICAgIC8qITwgQ29tcGFyYXRvciAyIGlucHV0IG1pbnVzIHNlbGVjdGlvbiAqLw0KI2RlZmluZSBDT01QX0NTUl9JTlNFTF8wICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBDT01QX0NTUl9JTlNFTF9Qb3MpICAgICAgIC8qITwgMHgwMDA0MDAwMCAqLw0KI2RlZmluZSBDT01QX0NTUl9JTlNFTF8xICAgICAgICAgICAgICAgICAgICAoMHgyVSA8PCBDT01QX0NTUl9JTlNFTF9Qb3MpICAgICAgIC8qITwgMHgwMDA4MDAwMCAqLw0KI2RlZmluZSBDT01QX0NTUl9JTlNFTF8yICAgICAgICAgICAgICAgICAgICAoMHg0VSA8PCBDT01QX0NTUl9JTlNFTF9Qb3MpICAgICAgIC8qITwgMHgwMDEwMDAwMCAqLw0KI2RlZmluZSBDT01QX0NTUl9PVVRTRUxfUG9zICAgICAgICAgICAgICAgICAoMjFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBDT01QX0NTUl9PVVRTRUxfTXNrICAgICAgICAgICAgICAgICAoMHg3VSA8PCBDT01QX0NTUl9PVVRTRUxfUG9zKSAgICAgIC8qITwgMHgwMEUwMDAwMCAqLw0KI2RlZmluZSBDT01QX0NTUl9PVVRTRUwgICAgICAgICAgICAgICAgICAgICBDT01QX0NTUl9PVVRTRUxfTXNrICAgICAgICAgICAgICAgIC8qITwgQ29tcGFyYXRvciAyIG91dHB1dCByZWRpcmVjdGlvbiAqLw0KI2RlZmluZSBDT01QX0NTUl9PVVRTRUxfMCAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBDT01QX0NTUl9PVVRTRUxfUG9zKSAgICAgIC8qITwgMHgwMDIwMDAwMCAqLw0KI2RlZmluZSBDT01QX0NTUl9PVVRTRUxfMSAgICAgICAgICAgICAgICAgICAoMHgyVSA8PCBDT01QX0NTUl9PVVRTRUxfUG9zKSAgICAgIC8qITwgMHgwMDQwMDAwMCAqLw0KI2RlZmluZSBDT01QX0NTUl9PVVRTRUxfMiAgICAgICAgICAgICAgICAgICAoMHg0VSA8PCBDT01QX0NTUl9PVVRTRUxfUG9zKSAgICAgIC8qITwgMHgwMDgwMDAwMCAqLw0KDQovKiBCaXRzIHByZXNlbnQgaW4gQ09NUCByZWdpc3RlciBidXQgbm90IHJlbGF0ZWQgdG8gY29tcGFyYXRvciAqLw0KLyogKG9yIHBhcnRpYWxseSByZWxhdGVkIHRvIGNvbXBhcmF0b3IsIGluIGFkZGl0aW9uIHRvIG90aGVyIHBlcmlwaGVyYWxzKSAqLw0KI2RlZmluZSBDT01QX0NTUl9TVzFfUG9zICAgICAgICAgICAgICAgICAgICAoNVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBDT01QX0NTUl9TVzFfTXNrICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBDT01QX0NTUl9TVzFfUG9zKSAgICAgICAgIC8qITwgMHgwMDAwMDAyMCAqLw0KI2RlZmluZSBDT01QX0NTUl9TVzEgICAgICAgICAgICAgICAgICAgICAgICBDT01QX0NTUl9TVzFfTXNrICAgICAgICAgICAgICAgICAgIC8qITwgU1cxIGFuYWxvZyBzd2l0Y2ggZW5hYmxlICovDQojZGVmaW5lIENPTVBfQ1NSX1ZSRUZPVVRFTl9Qb3MgICAgICAgICAgICAgICgxNlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIENPTVBfQ1NSX1ZSRUZPVVRFTl9Nc2sgICAgICAgICAgICAgICgweDFVIDw8IENPTVBfQ1NSX1ZSRUZPVVRFTl9Qb3MpICAgLyohPCAweDAwMDEwMDAwICovDQojZGVmaW5lIENPTVBfQ1NSX1ZSRUZPVVRFTiAgICAgICAgICAgICAgICAgIENPTVBfQ1NSX1ZSRUZPVVRFTl9Nc2sgICAgICAgICAgICAgLyohPCBWcmVmSW50IG91dHB1dCBlbmFibGUgb24gR1BJTyBncm91cCAzICovDQoNCiNkZWZpbmUgQ09NUF9DU1JfRkNIM19Qb3MgICAgICAgICAgICAgICAgICAgKDI2VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgQ09NUF9DU1JfRkNIM19Nc2sgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgQ09NUF9DU1JfRkNIM19Qb3MpICAgICAgICAvKiE8IDB4MDQwMDAwMDAgKi8NCiNkZWZpbmUgQ09NUF9DU1JfRkNIMyAgICAgICAgICAgICAgICAgICAgICAgQ09NUF9DU1JfRkNIM19Nc2sgICAgICAgICAgICAgICAgICAvKiE8IEJpdCAyNiAqLw0KI2RlZmluZSBDT01QX0NTUl9GQ0g4X1BvcyAgICAgICAgICAgICAgICAgICAoMjdVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBDT01QX0NTUl9GQ0g4X01zayAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBDT01QX0NTUl9GQ0g4X1BvcykgICAgICAgIC8qITwgMHgwODAwMDAwMCAqLw0KI2RlZmluZSBDT01QX0NTUl9GQ0g4ICAgICAgICAgICAgICAgICAgICAgICBDT01QX0NTUl9GQ0g4X01zayAgICAgICAgICAgICAgICAgIC8qITwgQml0IDI3ICovDQojZGVmaW5lIENPTVBfQ1NSX1JDSDEzX1BvcyAgICAgICAgICAgICAgICAgICgyOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIENPTVBfQ1NSX1JDSDEzX01zayAgICAgICAgICAgICAgICAgICgweDFVIDw8IENPTVBfQ1NSX1JDSDEzX1BvcykgICAgICAgLyohPCAweDEwMDAwMDAwICovDQojZGVmaW5lIENPTVBfQ1NSX1JDSDEzICAgICAgICAgICAgICAgICAgICAgIENPTVBfQ1NSX1JDSDEzX01zayAgICAgICAgICAgICAgICAgLyohPCBCaXQgMjggKi8NCg0KI2RlZmluZSBDT01QX0NTUl9DQUlFX1BvcyAgICAgICAgICAgICAgICAgICAoMjlVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBDT01QX0NTUl9DQUlFX01zayAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBDT01QX0NTUl9DQUlFX1BvcykgICAgICAgIC8qITwgMHgyMDAwMDAwMCAqLw0KI2RlZmluZSBDT01QX0NTUl9DQUlFICAgICAgICAgICAgICAgICAgICAgICBDT01QX0NTUl9DQUlFX01zayAgICAgICAgICAgICAgICAgIC8qITwgQml0IDI5ICovDQojZGVmaW5lIENPTVBfQ1NSX0NBSUZfUG9zICAgICAgICAgICAgICAgICAgICgzMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIENPTVBfQ1NSX0NBSUZfTXNrICAgICAgICAgICAgICAgICAgICgweDFVIDw8IENPTVBfQ1NSX0NBSUZfUG9zKSAgICAgICAgLyohPCAweDQwMDAwMDAwICovDQojZGVmaW5lIENPTVBfQ1NSX0NBSUYgICAgICAgICAgICAgICAgICAgICAgIENPTVBfQ1NSX0NBSUZfTXNrICAgICAgICAgICAgICAgICAgLyohPCBCaXQgMzAgKi8NCiNkZWZpbmUgQ09NUF9DU1JfVFNVU1BfUG9zICAgICAgICAgICAgICAgICAgKDMxVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgQ09NUF9DU1JfVFNVU1BfTXNrICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgQ09NUF9DU1JfVFNVU1BfUG9zKSAgICAgICAvKiE8IDB4ODAwMDAwMDAgKi8NCiNkZWZpbmUgQ09NUF9DU1JfVFNVU1AgICAgICAgICAgICAgICAgICAgICAgQ09NUF9DU1JfVFNVU1BfTXNrICAgICAgICAgICAgICAgICAvKiE8IEJpdCAzMSAqLw0KDQovKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLw0KLyogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8NCi8qICAgICAgICAgICAgICAgICAgICAgICAgIE9wZXJhdGlvbmFsIEFtcGxpZmllciAoT1BBTVApICAgICAgICAgICAgICAgICAgICAgICovDQovKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLw0KLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8NCi8qKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgT1BBTVBfQ1NSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIE9QQU1QX0NTUl9PUEExUERfUG9zICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIE9QQU1QX0NTUl9PUEExUERfTXNrICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgT1BBTVBfQ1NSX09QQTFQRF9Qb3MpICAgLyohPCAweDAwMDAwMDAxICovDQojZGVmaW5lIE9QQU1QX0NTUl9PUEExUEQgICAgICAgICAgICAgICAgICAgICAgT1BBTVBfQ1NSX09QQTFQRF9Nc2sgICAgICAgICAgICAgLyohPCBPUEFNUDEgZGlzYWJsZSAqLw0KI2RlZmluZSBPUEFNUF9DU1JfUzNTRUwxX1BvcyAgICAgICAgICAgICAgICAgICgxVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBPUEFNUF9DU1JfUzNTRUwxX01zayAgICAgICAgICAgICAgICAgICgweDFVIDw8IE9QQU1QX0NTUl9TM1NFTDFfUG9zKSAgIC8qITwgMHgwMDAwMDAwMiAqLw0KI2RlZmluZSBPUEFNUF9DU1JfUzNTRUwxICAgICAgICAgICAgICAgICAgICAgIE9QQU1QX0NTUl9TM1NFTDFfTXNrICAgICAgICAgICAgIC8qITwgU3dpdGNoIDMgZm9yIE9QQU1QMSBFbmFibGUgKi8NCiNkZWZpbmUgT1BBTVBfQ1NSX1M0U0VMMV9Qb3MgICAgICAgICAgICAgICAgICAoMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgT1BBTVBfQ1NSX1M0U0VMMV9Nc2sgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBPUEFNUF9DU1JfUzRTRUwxX1BvcykgICAvKiE8IDB4MDAwMDAwMDQgKi8NCiNkZWZpbmUgT1BBTVBfQ1NSX1M0U0VMMSAgICAgICAgICAgICAgICAgICAgICBPUEFNUF9DU1JfUzRTRUwxX01zayAgICAgICAgICAgICAvKiE8IFN3aXRjaCA0IGZvciBPUEFNUDEgRW5hYmxlICovDQojZGVmaW5lIE9QQU1QX0NTUl9TNVNFTDFfUG9zICAgICAgICAgICAgICAgICAgKDNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIE9QQU1QX0NTUl9TNVNFTDFfTXNrICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgT1BBTVBfQ1NSX1M1U0VMMV9Qb3MpICAgLyohPCAweDAwMDAwMDA4ICovDQojZGVmaW5lIE9QQU1QX0NTUl9TNVNFTDEgICAgICAgICAgICAgICAgICAgICAgT1BBTVBfQ1NSX1M1U0VMMV9Nc2sgICAgICAgICAgICAgLyohPCBTd2l0Y2ggNSBmb3IgT1BBTVAxIEVuYWJsZSAqLw0KI2RlZmluZSBPUEFNUF9DU1JfUzZTRUwxX1BvcyAgICAgICAgICAgICAgICAgICg0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBPUEFNUF9DU1JfUzZTRUwxX01zayAgICAgICAgICAgICAgICAgICgweDFVIDw8IE9QQU1QX0NTUl9TNlNFTDFfUG9zKSAgIC8qITwgMHgwMDAwMDAxMCAqLw0KI2RlZmluZSBPUEFNUF9DU1JfUzZTRUwxICAgICAgICAgICAgICAgICAgICAgIE9QQU1QX0NTUl9TNlNFTDFfTXNrICAgICAgICAgICAgIC8qITwgU3dpdGNoIDYgZm9yIE9QQU1QMSBFbmFibGUgKi8NCiNkZWZpbmUgT1BBTVBfQ1NSX09QQTFDQUxfTF9Qb3MgICAgICAgICAgICAgICAoNVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgT1BBTVBfQ1NSX09QQTFDQUxfTF9Nc2sgICAgICAgICAgICAgICAoMHgxVSA8PCBPUEFNUF9DU1JfT1BBMUNBTF9MX1BvcykgLyohPCAweDAwMDAwMDIwICovDQojZGVmaW5lIE9QQU1QX0NTUl9PUEExQ0FMX0wgICAgICAgICAgICAgICAgICAgT1BBTVBfQ1NSX09QQTFDQUxfTF9Nc2sgICAgICAgICAgLyohPCBPUEFNUDEgT2Zmc2V0IGNhbGlicmF0aW9uIGZvciBQIGRpZmZlcmVudGlhbCBwYWlyICovDQojZGVmaW5lIE9QQU1QX0NTUl9PUEExQ0FMX0hfUG9zICAgICAgICAgICAgICAgKDZVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIE9QQU1QX0NTUl9PUEExQ0FMX0hfTXNrICAgICAgICAgICAgICAgKDB4MVUgPDwgT1BBTVBfQ1NSX09QQTFDQUxfSF9Qb3MpIC8qITwgMHgwMDAwMDA0MCAqLw0KI2RlZmluZSBPUEFNUF9DU1JfT1BBMUNBTF9IICAgICAgICAgICAgICAgICAgIE9QQU1QX0NTUl9PUEExQ0FMX0hfTXNrICAgICAgICAgIC8qITwgT1BBTVAxIE9mZnNldCBjYWxpYnJhdGlvbiBmb3IgTiBkaWZmZXJlbnRpYWwgcGFpciAqLw0KI2RlZmluZSBPUEFNUF9DU1JfT1BBMUxQTV9Qb3MgICAgICAgICAgICAgICAgICg3VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBPUEFNUF9DU1JfT1BBMUxQTV9Nc2sgICAgICAgICAgICAgICAgICgweDFVIDw8IE9QQU1QX0NTUl9PUEExTFBNX1BvcykgIC8qITwgMHgwMDAwMDA4MCAqLw0KI2RlZmluZSBPUEFNUF9DU1JfT1BBMUxQTSAgICAgICAgICAgICAgICAgICAgIE9QQU1QX0NTUl9PUEExTFBNX01zayAgICAgICAgICAgIC8qITwgT1BBTVAxIExvdyBwb3dlciBlbmFibGUgKi8NCiNkZWZpbmUgT1BBTVBfQ1NSX09QQTJQRF9Qb3MgICAgICAgICAgICAgICAgICAoOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgT1BBTVBfQ1NSX09QQTJQRF9Nc2sgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBPUEFNUF9DU1JfT1BBMlBEX1BvcykgICAvKiE8IDB4MDAwMDAxMDAgKi8NCiNkZWZpbmUgT1BBTVBfQ1NSX09QQTJQRCAgICAgICAgICAgICAgICAgICAgICBPUEFNUF9DU1JfT1BBMlBEX01zayAgICAgICAgICAgICAvKiE8IE9QQU1QMiBkaXNhYmxlICovDQojZGVmaW5lIE9QQU1QX0NTUl9TM1NFTDJfUG9zICAgICAgICAgICAgICAgICAgKDlVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIE9QQU1QX0NTUl9TM1NFTDJfTXNrICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgT1BBTVBfQ1NSX1MzU0VMMl9Qb3MpICAgLyohPCAweDAwMDAwMjAwICovDQojZGVmaW5lIE9QQU1QX0NTUl9TM1NFTDIgICAgICAgICAgICAgICAgICAgICAgT1BBTVBfQ1NSX1MzU0VMMl9Nc2sgICAgICAgICAgICAgLyohPCBTd2l0Y2ggMyBmb3IgT1BBTVAyIEVuYWJsZSAqLw0KI2RlZmluZSBPUEFNUF9DU1JfUzRTRUwyX1BvcyAgICAgICAgICAgICAgICAgICgxMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBPUEFNUF9DU1JfUzRTRUwyX01zayAgICAgICAgICAgICAgICAgICgweDFVIDw8IE9QQU1QX0NTUl9TNFNFTDJfUG9zKSAgIC8qITwgMHgwMDAwMDQwMCAqLw0KI2RlZmluZSBPUEFNUF9DU1JfUzRTRUwyICAgICAgICAgICAgICAgICAgICAgIE9QQU1QX0NTUl9TNFNFTDJfTXNrICAgICAgICAgICAgIC8qITwgU3dpdGNoIDQgZm9yIE9QQU1QMiBFbmFibGUgKi8NCiNkZWZpbmUgT1BBTVBfQ1NSX1M1U0VMMl9Qb3MgICAgICAgICAgICAgICAgICAoMTFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgT1BBTVBfQ1NSX1M1U0VMMl9Nc2sgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBPUEFNUF9DU1JfUzVTRUwyX1BvcykgICAvKiE8IDB4MDAwMDA4MDAgKi8NCiNkZWZpbmUgT1BBTVBfQ1NSX1M1U0VMMiAgICAgICAgICAgICAgICAgICAgICBPUEFNUF9DU1JfUzVTRUwyX01zayAgICAgICAgICAgICAvKiE8IFN3aXRjaCA1IGZvciBPUEFNUDIgRW5hYmxlICovDQojZGVmaW5lIE9QQU1QX0NTUl9TNlNFTDJfUG9zICAgICAgICAgICAgICAgICAgKDEyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIE9QQU1QX0NTUl9TNlNFTDJfTXNrICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgT1BBTVBfQ1NSX1M2U0VMMl9Qb3MpICAgLyohPCAweDAwMDAxMDAwICovDQojZGVmaW5lIE9QQU1QX0NTUl9TNlNFTDIgICAgICAgICAgICAgICAgICAgICAgT1BBTVBfQ1NSX1M2U0VMMl9Nc2sgICAgICAgICAgICAgLyohPCBTd2l0Y2ggNiBmb3IgT1BBTVAyIEVuYWJsZSAqLw0KI2RlZmluZSBPUEFNUF9DU1JfT1BBMkNBTF9MX1BvcyAgICAgICAgICAgICAgICgxM1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBPUEFNUF9DU1JfT1BBMkNBTF9MX01zayAgICAgICAgICAgICAgICgweDFVIDw8IE9QQU1QX0NTUl9PUEEyQ0FMX0xfUG9zKSAvKiE8IDB4MDAwMDIwMDAgKi8NCiNkZWZpbmUgT1BBTVBfQ1NSX09QQTJDQUxfTCAgICAgICAgICAgICAgICAgICBPUEFNUF9DU1JfT1BBMkNBTF9MX01zayAgICAgICAgICAvKiE8IE9QQU1QMiBPZmZzZXQgY2FsaWJyYXRpb24gZm9yIFAgZGlmZmVyZW50aWFsIHBhaXIgKi8NCiNkZWZpbmUgT1BBTVBfQ1NSX09QQTJDQUxfSF9Qb3MgICAgICAgICAgICAgICAoMTRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgT1BBTVBfQ1NSX09QQTJDQUxfSF9Nc2sgICAgICAgICAgICAgICAoMHgxVSA8PCBPUEFNUF9DU1JfT1BBMkNBTF9IX1BvcykgLyohPCAweDAwMDA0MDAwICovDQojZGVmaW5lIE9QQU1QX0NTUl9PUEEyQ0FMX0ggICAgICAgICAgICAgICAgICAgT1BBTVBfQ1NSX09QQTJDQUxfSF9Nc2sgICAgICAgICAgLyohPCBPUEFNUDIgT2Zmc2V0IGNhbGlicmF0aW9uIGZvciBOIGRpZmZlcmVudGlhbCBwYWlyICovDQojZGVmaW5lIE9QQU1QX0NTUl9PUEEyTFBNX1BvcyAgICAgICAgICAgICAgICAgKDE1VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIE9QQU1QX0NTUl9PUEEyTFBNX01zayAgICAgICAgICAgICAgICAgKDB4MVUgPDwgT1BBTVBfQ1NSX09QQTJMUE1fUG9zKSAgLyohPCAweDAwMDA4MDAwICovDQojZGVmaW5lIE9QQU1QX0NTUl9PUEEyTFBNICAgICAgICAgICAgICAgICAgICAgT1BBTVBfQ1NSX09QQTJMUE1fTXNrICAgICAgICAgICAgLyohPCBPUEFNUDIgTG93IHBvd2VyIGVuYWJsZSAqLw0KI2RlZmluZSBPUEFNUF9DU1JfQU5BV1NFTDFfUG9zICAgICAgICAgICAgICAgICgyNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBPUEFNUF9DU1JfQU5BV1NFTDFfTXNrICAgICAgICAgICAgICAgICgweDFVIDw8IE9QQU1QX0NTUl9BTkFXU0VMMV9Qb3MpIC8qITwgMHgwMTAwMDAwMCAqLw0KI2RlZmluZSBPUEFNUF9DU1JfQU5BV1NFTDEgICAgICAgICAgICAgICAgICAgIE9QQU1QX0NTUl9BTkFXU0VMMV9Nc2sgICAgICAgICAgIC8qITwgU3dpdGNoIEFOQSBFbmFibGUgZm9yIE9QQU1QMSAqLyANCiNkZWZpbmUgT1BBTVBfQ1NSX0FOQVdTRUwyX1BvcyAgICAgICAgICAgICAgICAoMjVVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgT1BBTVBfQ1NSX0FOQVdTRUwyX01zayAgICAgICAgICAgICAgICAoMHgxVSA8PCBPUEFNUF9DU1JfQU5BV1NFTDJfUG9zKSAvKiE8IDB4MDIwMDAwMDAgKi8NCiNkZWZpbmUgT1BBTVBfQ1NSX0FOQVdTRUwyICAgICAgICAgICAgICAgICAgICBPUEFNUF9DU1JfQU5BV1NFTDJfTXNrICAgICAgICAgICAvKiE8IFN3aXRjaCBBTkEgRW5hYmxlIGZvciBPUEFNUDIgKi8NCiNkZWZpbmUgT1BBTVBfQ1NSX1M3U0VMMl9Qb3MgICAgICAgICAgICAgICAgICAoMjdVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgT1BBTVBfQ1NSX1M3U0VMMl9Nc2sgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBPUEFNUF9DU1JfUzdTRUwyX1BvcykgICAvKiE8IDB4MDgwMDAwMDAgKi8NCiNkZWZpbmUgT1BBTVBfQ1NSX1M3U0VMMiAgICAgICAgICAgICAgICAgICAgICBPUEFNUF9DU1JfUzdTRUwyX01zayAgICAgICAgICAgICAvKiE8IFN3aXRjaCA3IGZvciBPUEFNUDIgRW5hYmxlICovDQojZGVmaW5lIE9QQU1QX0NTUl9BT1BfUkFOR0VfUG9zICAgICAgICAgICAgICAgKDI4VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIE9QQU1QX0NTUl9BT1BfUkFOR0VfTXNrICAgICAgICAgICAgICAgKDB4MVUgPDwgT1BBTVBfQ1NSX0FPUF9SQU5HRV9Qb3MpIC8qITwgMHgxMDAwMDAwMCAqLw0KI2RlZmluZSBPUEFNUF9DU1JfQU9QX1JBTkdFICAgICAgICAgICAgICAgICAgIE9QQU1QX0NTUl9BT1BfUkFOR0VfTXNrICAgICAgICAgIC8qITwgQ29tbW9uIHRvIHNldmVyYWwgT1BBTVAgaW5zdGFuY2VzOiBPcGVyYXRpb25hbCBhbXBsaWZpZXIgdm9sdGFnZSBzdXBwbHkgcmFuZ2UuIEJpdCBpbnRlbmRlZCB0byBiZSB1c2VkIHdpdGggT1BBTVAgY29tbW9uIGluc3RhbmNlIChPUEFNUF9Db21tb25fVHlwZURlZikgKi8NCiNkZWZpbmUgT1BBTVBfQ1NSX09QQTFDQUxPVVRfUG9zICAgICAgICAgICAgICAoMjlVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgT1BBTVBfQ1NSX09QQTFDQUxPVVRfTXNrICAgICAgICAgICAgICAoMHgxVSA8PCBPUEFNUF9DU1JfT1BBMUNBTE9VVF9Qb3MpIC8qITwgMHgyMDAwMDAwMCAqLw0KI2RlZmluZSBPUEFNUF9DU1JfT1BBMUNBTE9VVCAgICAgICAgICAgICAgICAgIE9QQU1QX0NTUl9PUEExQ0FMT1VUX01zayAgICAgICAgIC8qITwgT1BBTVAxIGNhbGlicmF0aW9uIG91dHB1dCAqLw0KI2RlZmluZSBPUEFNUF9DU1JfT1BBMkNBTE9VVF9Qb3MgICAgICAgICAgICAgICgzMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBPUEFNUF9DU1JfT1BBMkNBTE9VVF9Nc2sgICAgICAgICAgICAgICgweDFVIDw8IE9QQU1QX0NTUl9PUEEyQ0FMT1VUX1BvcykgLyohPCAweDQwMDAwMDAwICovDQojZGVmaW5lIE9QQU1QX0NTUl9PUEEyQ0FMT1VUICAgICAgICAgICAgICAgICAgT1BBTVBfQ1NSX09QQTJDQUxPVVRfTXNrICAgICAgICAgLyohPCBPUEFNUDIgY2FsaWJyYXRpb24gb3V0cHV0ICovDQoNCi8qKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgT1BBTVBfT1RSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIE9QQU1QX09UUl9BTzFfT1BUX09GRlNFVF9UUklNX0xPV19Qb3MgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIE9QQU1QX09UUl9BTzFfT1BUX09GRlNFVF9UUklNX0xPV19Nc2sgKDB4MUZVIDw8IE9QQU1QX09UUl9BTzFfT1BUX09GRlNFVF9UUklNX0xPV19Qb3MpIC8qITwgMHgwMDAwMDAxRiAqLw0KI2RlZmluZSBPUEFNUF9PVFJfQU8xX09QVF9PRkZTRVRfVFJJTV9MT1cgICAgIE9QQU1QX09UUl9BTzFfT1BUX09GRlNFVF9UUklNX0xPV19Nc2sgLyohPCBPZmZzZXQgdHJpbSBmb3IgdHJhbnNpc3RvcnMgZGlmZmVyZW50aWFsIHBhaXIgUE1PUyBvZiBPUEFNUDEgKi8NCiNkZWZpbmUgT1BBTVBfT1RSX0FPMV9PUFRfT0ZGU0VUX1RSSU1fSElHSF9Qb3MgKDVVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgT1BBTVBfT1RSX0FPMV9PUFRfT0ZGU0VUX1RSSU1fSElHSF9Nc2sgKDB4MUZVIDw8IE9QQU1QX09UUl9BTzFfT1BUX09GRlNFVF9UUklNX0hJR0hfUG9zKSAvKiE8IDB4MDAwMDAzRTAgKi8NCiNkZWZpbmUgT1BBTVBfT1RSX0FPMV9PUFRfT0ZGU0VUX1RSSU1fSElHSCAgICBPUEFNUF9PVFJfQU8xX09QVF9PRkZTRVRfVFJJTV9ISUdIX01zayAvKiE8IE9mZnNldCB0cmltIGZvciB0cmFuc2lzdG9ycyBkaWZmZXJlbnRpYWwgcGFpciBOTU9TIG9mIE9QQU1QMSAqLw0KI2RlZmluZSBPUEFNUF9PVFJfQU8yX09QVF9PRkZTRVRfVFJJTV9MT1dfUG9zICgxMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBPUEFNUF9PVFJfQU8yX09QVF9PRkZTRVRfVFJJTV9MT1dfTXNrICgweDFGVSA8PCBPUEFNUF9PVFJfQU8yX09QVF9PRkZTRVRfVFJJTV9MT1dfUG9zKSAvKiE8IDB4MDAwMDdDMDAgKi8NCiNkZWZpbmUgT1BBTVBfT1RSX0FPMl9PUFRfT0ZGU0VUX1RSSU1fTE9XICAgICBPUEFNUF9PVFJfQU8yX09QVF9PRkZTRVRfVFJJTV9MT1dfTXNrIC8qITwgT2Zmc2V0IHRyaW0gZm9yIHRyYW5zaXN0b3JzIGRpZmZlcmVudGlhbCBwYWlyIFBNT1Mgb2YgT1BBTVAyICovDQojZGVmaW5lIE9QQU1QX09UUl9BTzJfT1BUX09GRlNFVF9UUklNX0hJR0hfUG9zICgxNVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIE9QQU1QX09UUl9BTzJfT1BUX09GRlNFVF9UUklNX0hJR0hfTXNrICgweDFGVSA8PCBPUEFNUF9PVFJfQU8yX09QVF9PRkZTRVRfVFJJTV9ISUdIX1BvcykgLyohPCAweDAwMEY4MDAwICovDQojZGVmaW5lIE9QQU1QX09UUl9BTzJfT1BUX09GRlNFVF9UUklNX0hJR0ggICAgT1BBTVBfT1RSX0FPMl9PUFRfT0ZGU0VUX1RSSU1fSElHSF9Nc2sgLyohPCBPZmZzZXQgdHJpbSBmb3IgdHJhbnNpc3RvcnMgZGlmZmVyZW50aWFsIHBhaXIgTk1PUyBvZiBPUEFNUDIgKi8NCiNkZWZpbmUgT1BBTVBfT1RSX09UX1VTRVJfUG9zICAgICAgICAgICAgICAgICAoMzFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgT1BBTVBfT1RSX09UX1VTRVJfTXNrICAgICAgICAgICAgICAgICAoMHgxVSA8PCBPUEFNUF9PVFJfT1RfVVNFUl9Qb3MpICAvKiE8IDB4ODAwMDAwMDAgKi8NCiNkZWZpbmUgT1BBTVBfT1RSX09UX1VTRVIgICAgICAgICAgICAgICAgICAgICBPUEFNUF9PVFJfT1RfVVNFUl9Nc2sgICAgICAgICAgICAvKiE8IFN3aXRjaCB0byBPUEFNUCBvZmZzZXQgdXNlciB0cmltbWVkIHZhbHVlcyAqLw0KDQovKioqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIE9QQU1QX0xQT1RSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBPUEFNUF9PVFJfQU8xX09QVF9PRkZTRVRfVFJJTV9MUF9MT1dfUG9zICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBPUEFNUF9PVFJfQU8xX09QVF9PRkZTRVRfVFJJTV9MUF9MT1dfTXNrICgweDFGVSA8PCBPUEFNUF9PVFJfQU8xX09QVF9PRkZTRVRfVFJJTV9MUF9MT1dfUG9zKSAvKiE8IDB4MDAwMDAwMUYgKi8NCiNkZWZpbmUgT1BBTVBfT1RSX0FPMV9PUFRfT0ZGU0VUX1RSSU1fTFBfTE9XICBPUEFNUF9PVFJfQU8xX09QVF9PRkZTRVRfVFJJTV9MUF9MT1dfTXNrIC8qITwgT2Zmc2V0IHRyaW0gZm9yIHRyYW5zaXN0b3JzIGRpZmZlcmVudGlhbCBwYWlyIFBNT1Mgb2YgT1BBTVAxICovDQojZGVmaW5lIE9QQU1QX09UUl9BTzFfT1BUX09GRlNFVF9UUklNX0xQX0hJR0hfUG9zICg1VSkgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIE9QQU1QX09UUl9BTzFfT1BUX09GRlNFVF9UUklNX0xQX0hJR0hfTXNrICgweDFGVSA8PCBPUEFNUF9PVFJfQU8xX09QVF9PRkZTRVRfVFJJTV9MUF9ISUdIX1BvcykgLyohPCAweDAwMDAwM0UwICovDQojZGVmaW5lIE9QQU1QX09UUl9BTzFfT1BUX09GRlNFVF9UUklNX0xQX0hJR0ggT1BBTVBfT1RSX0FPMV9PUFRfT0ZGU0VUX1RSSU1fTFBfSElHSF9Nc2sgLyohPCBPZmZzZXQgdHJpbSBmb3IgdHJhbnNpc3RvcnMgZGlmZmVyZW50aWFsIHBhaXIgTk1PUyBvZiBPUEFNUDEgKi8NCiNkZWZpbmUgT1BBTVBfT1RSX0FPMl9PUFRfT0ZGU0VUX1RSSU1fTFBfTE9XX1BvcyAoMTBVKSAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgT1BBTVBfT1RSX0FPMl9PUFRfT0ZGU0VUX1RSSU1fTFBfTE9XX01zayAoMHgxRlUgPDwgT1BBTVBfT1RSX0FPMl9PUFRfT0ZGU0VUX1RSSU1fTFBfTE9XX1BvcykgLyohPCAweDAwMDA3QzAwICovDQojZGVmaW5lIE9QQU1QX09UUl9BTzJfT1BUX09GRlNFVF9UUklNX0xQX0xPVyAgT1BBTVBfT1RSX0FPMl9PUFRfT0ZGU0VUX1RSSU1fTFBfTE9XX01zayAvKiE8IE9mZnNldCB0cmltIGZvciB0cmFuc2lzdG9ycyBkaWZmZXJlbnRpYWwgcGFpciBQTU9TIG9mIE9QQU1QMiAqLw0KI2RlZmluZSBPUEFNUF9PVFJfQU8yX09QVF9PRkZTRVRfVFJJTV9MUF9ISUdIX1BvcyAoMTVVKSAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBPUEFNUF9PVFJfQU8yX09QVF9PRkZTRVRfVFJJTV9MUF9ISUdIX01zayAoMHgxRlUgPDwgT1BBTVBfT1RSX0FPMl9PUFRfT0ZGU0VUX1RSSU1fTFBfSElHSF9Qb3MpIC8qITwgMHgwMDBGODAwMCAqLw0KI2RlZmluZSBPUEFNUF9PVFJfQU8yX09QVF9PRkZTRVRfVFJJTV9MUF9ISUdIIE9QQU1QX09UUl9BTzJfT1BUX09GRlNFVF9UUklNX0xQX0hJR0hfTXNrIC8qITwgT2Zmc2V0IHRyaW0gZm9yIHRyYW5zaXN0b3JzIGRpZmZlcmVudGlhbCBwYWlyIE5NT1Mgb2YgT1BBTVAyICovDQoNCi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovDQovKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLw0KLyogICAgICAgICAgICAgICAgICAgICAgIENSQyBjYWxjdWxhdGlvbiB1bml0IChDUkMpICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8NCi8qICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovDQovKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLw0KDQovKioqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIENSQ19EUiByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBDUkNfRFJfRFJfUG9zICAgICAgICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBDUkNfRFJfRFJfTXNrICAgICAgICAgICAgICAgICAgICAgICAoMHhGRkZGRkZGRlUgPDwgQ1JDX0RSX0RSX1BvcykgICAgIC8qITwgMHhGRkZGRkZGRiAqLw0KI2RlZmluZSBDUkNfRFJfRFIgICAgICAgICAgICAgICAgICAgICAgICAgICBDUkNfRFJfRFJfTXNrICAgICAgICAgICAgICAgICAgICAgIC8qITwgRGF0YSByZWdpc3RlciBiaXRzICovDQoNCi8qKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgQ1JDX0lEUiByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIENSQ19JRFJfSURSX1BvcyAgICAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIENSQ19JRFJfSURSX01zayAgICAgICAgICAgICAgICAgICAgICgweEZGVSA8PCBDUkNfSURSX0lEUl9Qb3MpICAgICAgICAgLyohPCAweDAwMDAwMEZGICovDQojZGVmaW5lIENSQ19JRFJfSURSICAgICAgICAgICAgICAgICAgICAgICAgIENSQ19JRFJfSURSX01zayAgICAgICAgICAgICAgICAgICAgLyohPCBHZW5lcmFsLXB1cnBvc2UgOC1iaXQgZGF0YSByZWdpc3RlciBiaXRzICovDQoNCi8qKioqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIENSQ19DUiByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIENSQ19DUl9SRVNFVF9Qb3MgICAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIENSQ19DUl9SRVNFVF9Nc2sgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IENSQ19DUl9SRVNFVF9Qb3MpICAgICAgICAgLyohPCAweDAwMDAwMDAxICovDQojZGVmaW5lIENSQ19DUl9SRVNFVCAgICAgICAgICAgICAgICAgICAgICAgIENSQ19DUl9SRVNFVF9Nc2sgICAgICAgICAgICAgICAgICAgLyohPCBSRVNFVCBiaXQgKi8NCg0KLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8NCi8qICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovDQovKiAgICAgICAgICAgICAgICAgICAgRGlnaXRhbCB0byBBbmFsb2cgQ29udmVydGVyIChEQUMpICAgICAgICAgICAgICAgICAgICAgICAqLw0KLyogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8NCi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovDQoNCi8qKioqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIERBQ19DUiByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIERBQ19DUl9FTjFfUG9zICAgICAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIERBQ19DUl9FTjFfTXNrICAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IERBQ19DUl9FTjFfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwMDAxICovDQojZGVmaW5lIERBQ19DUl9FTjEgICAgICAgICAgICAgICAgICAgICAgICAgIERBQ19DUl9FTjFfTXNrICAgICAgICAgICAgICAgICAgICAgLyohPERBQyBjaGFubmVsMSBlbmFibGUgKi8NCiNkZWZpbmUgREFDX0NSX0JPRkYxX1BvcyAgICAgICAgICAgICAgICAgICAgKDFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgREFDX0NSX0JPRkYxX01zayAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgREFDX0NSX0JPRkYxX1BvcykgICAgICAgICAvKiE8IDB4MDAwMDAwMDIgKi8NCiNkZWZpbmUgREFDX0NSX0JPRkYxICAgICAgICAgICAgICAgICAgICAgICAgREFDX0NSX0JPRkYxX01zayAgICAgICAgICAgICAgICAgICAvKiE8REFDIGNoYW5uZWwxIG91dHB1dCBidWZmZXIgZGlzYWJsZSAqLw0KI2RlZmluZSBEQUNfQ1JfVEVOMV9Qb3MgICAgICAgICAgICAgICAgICAgICAoMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBEQUNfQ1JfVEVOMV9Nc2sgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBEQUNfQ1JfVEVOMV9Qb3MpICAgICAgICAgIC8qITwgMHgwMDAwMDAwNCAqLw0KI2RlZmluZSBEQUNfQ1JfVEVOMSAgICAgICAgICAgICAgICAgICAgICAgICBEQUNfQ1JfVEVOMV9Nc2sgICAgICAgICAgICAgICAgICAgIC8qITxEQUMgY2hhbm5lbDEgVHJpZ2dlciBlbmFibGUgKi8NCg0KI2RlZmluZSBEQUNfQ1JfVFNFTDFfUG9zICAgICAgICAgICAgICAgICAgICAoM1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBEQUNfQ1JfVFNFTDFfTXNrICAgICAgICAgICAgICAgICAgICAoMHg3VSA8PCBEQUNfQ1JfVFNFTDFfUG9zKSAgICAgICAgIC8qITwgMHgwMDAwMDAzOCAqLw0KI2RlZmluZSBEQUNfQ1JfVFNFTDEgICAgICAgICAgICAgICAgICAgICAgICBEQUNfQ1JfVFNFTDFfTXNrICAgICAgICAgICAgICAgICAgIC8qITxUU0VMMVsyOjBdIChEQUMgY2hhbm5lbDEgVHJpZ2dlciBzZWxlY3Rpb24pICovDQojZGVmaW5lIERBQ19DUl9UU0VMMV8wICAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IERBQ19DUl9UU0VMMV9Qb3MpICAgICAgICAgLyohPCAweDAwMDAwMDA4ICovDQojZGVmaW5lIERBQ19DUl9UU0VMMV8xICAgICAgICAgICAgICAgICAgICAgICgweDJVIDw8IERBQ19DUl9UU0VMMV9Qb3MpICAgICAgICAgLyohPCAweDAwMDAwMDEwICovDQojZGVmaW5lIERBQ19DUl9UU0VMMV8yICAgICAgICAgICAgICAgICAgICAgICgweDRVIDw8IERBQ19DUl9UU0VMMV9Qb3MpICAgICAgICAgLyohPCAweDAwMDAwMDIwICovDQoNCiNkZWZpbmUgREFDX0NSX1dBVkUxX1BvcyAgICAgICAgICAgICAgICAgICAgKDZVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgREFDX0NSX1dBVkUxX01zayAgICAgICAgICAgICAgICAgICAgKDB4M1UgPDwgREFDX0NSX1dBVkUxX1BvcykgICAgICAgICAvKiE8IDB4MDAwMDAwQzAgKi8NCiNkZWZpbmUgREFDX0NSX1dBVkUxICAgICAgICAgICAgICAgICAgICAgICAgREFDX0NSX1dBVkUxX01zayAgICAgICAgICAgICAgICAgICAvKiE8V0FWRTFbMTowXSAoREFDIGNoYW5uZWwxIG5vaXNlL3RyaWFuZ2xlIHdhdmUgZ2VuZXJhdGlvbiBlbmFibGUpICovDQojZGVmaW5lIERBQ19DUl9XQVZFMV8wICAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IERBQ19DUl9XQVZFMV9Qb3MpICAgICAgICAgLyohPCAweDAwMDAwMDQwICovDQojZGVmaW5lIERBQ19DUl9XQVZFMV8xICAgICAgICAgICAgICAgICAgICAgICgweDJVIDw8IERBQ19DUl9XQVZFMV9Qb3MpICAgICAgICAgLyohPCAweDAwMDAwMDgwICovDQoNCiNkZWZpbmUgREFDX0NSX01BTVAxX1BvcyAgICAgICAgICAgICAgICAgICAgKDhVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgREFDX0NSX01BTVAxX01zayAgICAgICAgICAgICAgICAgICAgKDB4RlUgPDwgREFDX0NSX01BTVAxX1BvcykgICAgICAgICAvKiE8IDB4MDAwMDBGMDAgKi8NCiNkZWZpbmUgREFDX0NSX01BTVAxICAgICAgICAgICAgICAgICAgICAgICAgREFDX0NSX01BTVAxX01zayAgICAgICAgICAgICAgICAgICAvKiE8TUFNUDFbMzowXSAoREFDIGNoYW5uZWwxIE1hc2svQW1wbGl0dWRlIHNlbGVjdG9yKSAqLw0KI2RlZmluZSBEQUNfQ1JfTUFNUDFfMCAgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBEQUNfQ1JfTUFNUDFfUG9zKSAgICAgICAgIC8qITwgMHgwMDAwMDEwMCAqLw0KI2RlZmluZSBEQUNfQ1JfTUFNUDFfMSAgICAgICAgICAgICAgICAgICAgICAoMHgyVSA8PCBEQUNfQ1JfTUFNUDFfUG9zKSAgICAgICAgIC8qITwgMHgwMDAwMDIwMCAqLw0KI2RlZmluZSBEQUNfQ1JfTUFNUDFfMiAgICAgICAgICAgICAgICAgICAgICAoMHg0VSA8PCBEQUNfQ1JfTUFNUDFfUG9zKSAgICAgICAgIC8qITwgMHgwMDAwMDQwMCAqLw0KI2RlZmluZSBEQUNfQ1JfTUFNUDFfMyAgICAgICAgICAgICAgICAgICAgICAoMHg4VSA8PCBEQUNfQ1JfTUFNUDFfUG9zKSAgICAgICAgIC8qITwgMHgwMDAwMDgwMCAqLw0KDQojZGVmaW5lIERBQ19DUl9ETUFFTjFfUG9zICAgICAgICAgICAgICAgICAgICgxMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIERBQ19DUl9ETUFFTjFfTXNrICAgICAgICAgICAgICAgICAgICgweDFVIDw8IERBQ19DUl9ETUFFTjFfUG9zKSAgICAgICAgLyohPCAweDAwMDAxMDAwICovDQojZGVmaW5lIERBQ19DUl9ETUFFTjEgICAgICAgICAgICAgICAgICAgICAgIERBQ19DUl9ETUFFTjFfTXNrICAgICAgICAgICAgICAgICAgLyohPERBQyBjaGFubmVsMSBETUEgZW5hYmxlICovDQojZGVmaW5lIERBQ19DUl9ETUFVRFJJRTFfUG9zICAgICAgICAgICAgICAgICgxM1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIERBQ19DUl9ETUFVRFJJRTFfTXNrICAgICAgICAgICAgICAgICgweDFVIDw8IERBQ19DUl9ETUFVRFJJRTFfUG9zKSAgICAgLyohPCAweDAwMDAyMDAwICovDQojZGVmaW5lIERBQ19DUl9ETUFVRFJJRTEgICAgICAgICAgICAgICAgICAgIERBQ19DUl9ETUFVRFJJRTFfTXNrICAgICAgICAgICAgICAgLyohPERBQyBjaGFubmVsMSBETUEgSW50ZXJydXB0IGVuYWJsZSAqLw0KI2RlZmluZSBEQUNfQ1JfRU4yX1BvcyAgICAgICAgICAgICAgICAgICAgICAoMTZVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBEQUNfQ1JfRU4yX01zayAgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBEQUNfQ1JfRU4yX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAxMDAwMCAqLw0KI2RlZmluZSBEQUNfQ1JfRU4yICAgICAgICAgICAgICAgICAgICAgICAgICBEQUNfQ1JfRU4yX01zayAgICAgICAgICAgICAgICAgICAgIC8qITxEQUMgY2hhbm5lbDIgZW5hYmxlICovDQojZGVmaW5lIERBQ19DUl9CT0ZGMl9Qb3MgICAgICAgICAgICAgICAgICAgICgxN1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIERBQ19DUl9CT0ZGMl9Nc2sgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IERBQ19DUl9CT0ZGMl9Qb3MpICAgICAgICAgLyohPCAweDAwMDIwMDAwICovDQojZGVmaW5lIERBQ19DUl9CT0ZGMiAgICAgICAgICAgICAgICAgICAgICAgIERBQ19DUl9CT0ZGMl9Nc2sgICAgICAgICAgICAgICAgICAgLyohPERBQyBjaGFubmVsMiBvdXRwdXQgYnVmZmVyIGRpc2FibGUgKi8NCiNkZWZpbmUgREFDX0NSX1RFTjJfUG9zICAgICAgICAgICAgICAgICAgICAgKDE4VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgREFDX0NSX1RFTjJfTXNrICAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgREFDX0NSX1RFTjJfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwNDAwMDAgKi8NCiNkZWZpbmUgREFDX0NSX1RFTjIgICAgICAgICAgICAgICAgICAgICAgICAgREFDX0NSX1RFTjJfTXNrICAgICAgICAgICAgICAgICAgICAvKiE8REFDIGNoYW5uZWwyIFRyaWdnZXIgZW5hYmxlICovDQoNCiNkZWZpbmUgREFDX0NSX1RTRUwyX1BvcyAgICAgICAgICAgICAgICAgICAgKDE5VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgREFDX0NSX1RTRUwyX01zayAgICAgICAgICAgICAgICAgICAgKDB4N1UgPDwgREFDX0NSX1RTRUwyX1BvcykgICAgICAgICAvKiE8IDB4MDAzODAwMDAgKi8NCiNkZWZpbmUgREFDX0NSX1RTRUwyICAgICAgICAgICAgICAgICAgICAgICAgREFDX0NSX1RTRUwyX01zayAgICAgICAgICAgICAgICAgICAvKiE8VFNFTDJbMjowXSAoREFDIGNoYW5uZWwyIFRyaWdnZXIgc2VsZWN0aW9uKSAqLw0KI2RlZmluZSBEQUNfQ1JfVFNFTDJfMCAgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBEQUNfQ1JfVFNFTDJfUG9zKSAgICAgICAgIC8qITwgMHgwMDA4MDAwMCAqLw0KI2RlZmluZSBEQUNfQ1JfVFNFTDJfMSAgICAgICAgICAgICAgICAgICAgICAoMHgyVSA8PCBEQUNfQ1JfVFNFTDJfUG9zKSAgICAgICAgIC8qITwgMHgwMDEwMDAwMCAqLw0KI2RlZmluZSBEQUNfQ1JfVFNFTDJfMiAgICAgICAgICAgICAgICAgICAgICAoMHg0VSA8PCBEQUNfQ1JfVFNFTDJfUG9zKSAgICAgICAgIC8qITwgMHgwMDIwMDAwMCAqLw0KDQojZGVmaW5lIERBQ19DUl9XQVZFMl9Qb3MgICAgICAgICAgICAgICAgICAgICgyMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIERBQ19DUl9XQVZFMl9Nc2sgICAgICAgICAgICAgICAgICAgICgweDNVIDw8IERBQ19DUl9XQVZFMl9Qb3MpICAgICAgICAgLyohPCAweDAwQzAwMDAwICovDQojZGVmaW5lIERBQ19DUl9XQVZFMiAgICAgICAgICAgICAgICAgICAgICAgIERBQ19DUl9XQVZFMl9Nc2sgICAgICAgICAgICAgICAgICAgLyohPFdBVkUyWzE6MF0gKERBQyBjaGFubmVsMiBub2lzZS90cmlhbmdsZSB3YXZlIGdlbmVyYXRpb24gZW5hYmxlKSAqLw0KI2RlZmluZSBEQUNfQ1JfV0FWRTJfMCAgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBEQUNfQ1JfV0FWRTJfUG9zKSAgICAgICAgIC8qITwgMHgwMDQwMDAwMCAqLw0KI2RlZmluZSBEQUNfQ1JfV0FWRTJfMSAgICAgICAgICAgICAgICAgICAgICAoMHgyVSA8PCBEQUNfQ1JfV0FWRTJfUG9zKSAgICAgICAgIC8qITwgMHgwMDgwMDAwMCAqLw0KDQojZGVmaW5lIERBQ19DUl9NQU1QMl9Qb3MgICAgICAgICAgICAgICAgICAgICgyNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIERBQ19DUl9NQU1QMl9Nc2sgICAgICAgICAgICAgICAgICAgICgweEZVIDw8IERBQ19DUl9NQU1QMl9Qb3MpICAgICAgICAgLyohPCAweDBGMDAwMDAwICovDQojZGVmaW5lIERBQ19DUl9NQU1QMiAgICAgICAgICAgICAgICAgICAgICAgIERBQ19DUl9NQU1QMl9Nc2sgICAgICAgICAgICAgICAgICAgLyohPE1BTVAyWzM6MF0gKERBQyBjaGFubmVsMiBNYXNrL0FtcGxpdHVkZSBzZWxlY3RvcikgKi8NCiNkZWZpbmUgREFDX0NSX01BTVAyXzAgICAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgREFDX0NSX01BTVAyX1BvcykgICAgICAgICAvKiE8IDB4MDEwMDAwMDAgKi8NCiNkZWZpbmUgREFDX0NSX01BTVAyXzEgICAgICAgICAgICAgICAgICAgICAgKDB4MlUgPDwgREFDX0NSX01BTVAyX1BvcykgICAgICAgICAvKiE8IDB4MDIwMDAwMDAgKi8NCiNkZWZpbmUgREFDX0NSX01BTVAyXzIgICAgICAgICAgICAgICAgICAgICAgKDB4NFUgPDwgREFDX0NSX01BTVAyX1BvcykgICAgICAgICAvKiE8IDB4MDQwMDAwMDAgKi8NCiNkZWZpbmUgREFDX0NSX01BTVAyXzMgICAgICAgICAgICAgICAgICAgICAgKDB4OFUgPDwgREFDX0NSX01BTVAyX1BvcykgICAgICAgICAvKiE8IDB4MDgwMDAwMDAgKi8NCg0KI2RlZmluZSBEQUNfQ1JfRE1BRU4yX1BvcyAgICAgICAgICAgICAgICAgICAoMjhVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBEQUNfQ1JfRE1BRU4yX01zayAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBEQUNfQ1JfRE1BRU4yX1BvcykgICAgICAgIC8qITwgMHgxMDAwMDAwMCAqLw0KI2RlZmluZSBEQUNfQ1JfRE1BRU4yICAgICAgICAgICAgICAgICAgICAgICBEQUNfQ1JfRE1BRU4yX01zayAgICAgICAgICAgICAgICAgIC8qITxEQUMgY2hhbm5lbDIgRE1BIGVuYWJsZWQgKi8NCiNkZWZpbmUgREFDX0NSX0RNQVVEUklFMl9Qb3MgICAgICAgICAgICAgICAgKDI5VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgREFDX0NSX0RNQVVEUklFMl9Nc2sgICAgICAgICAgICAgICAgKDB4MVUgPDwgREFDX0NSX0RNQVVEUklFMl9Qb3MpICAgICAvKiE8IDB4MjAwMDAwMDAgKi8NCiNkZWZpbmUgREFDX0NSX0RNQVVEUklFMiAgICAgICAgICAgICAgICAgICAgREFDX0NSX0RNQVVEUklFMl9Nc2sgICAgICAgICAgICAgICAvKiE8REFDIGNoYW5uZWwyIERNQSB1bmRlcnJ1biBpbnRlcnJ1cHQgZW5hYmxlICovDQovKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBEQUNfU1dUUklHUiByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBEQUNfU1dUUklHUl9TV1RSSUcxX1BvcyAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBEQUNfU1dUUklHUl9TV1RSSUcxX01zayAgICAgICAgICAgICAoMHgxVSA8PCBEQUNfU1dUUklHUl9TV1RSSUcxX1BvcykgIC8qITwgMHgwMDAwMDAwMSAqLw0KI2RlZmluZSBEQUNfU1dUUklHUl9TV1RSSUcxICAgICAgICAgICAgICAgICBEQUNfU1dUUklHUl9TV1RSSUcxX01zayAgICAgICAgICAgIC8qITxEQUMgY2hhbm5lbDEgc29mdHdhcmUgdHJpZ2dlciAqLw0KI2RlZmluZSBEQUNfU1dUUklHUl9TV1RSSUcyX1BvcyAgICAgICAgICAgICAoMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBEQUNfU1dUUklHUl9TV1RSSUcyX01zayAgICAgICAgICAgICAoMHgxVSA8PCBEQUNfU1dUUklHUl9TV1RSSUcyX1BvcykgIC8qITwgMHgwMDAwMDAwMiAqLw0KI2RlZmluZSBEQUNfU1dUUklHUl9TV1RSSUcyICAgICAgICAgICAgICAgICBEQUNfU1dUUklHUl9TV1RSSUcyX01zayAgICAgICAgICAgIC8qITxEQUMgY2hhbm5lbDIgc29mdHdhcmUgdHJpZ2dlciAqLw0KDQovKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBEQUNfREhSMTJSMSByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBEQUNfREhSMTJSMV9EQUNDMURIUl9Qb3MgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBEQUNfREhSMTJSMV9EQUNDMURIUl9Nc2sgICAgICAgICAgICAoMHhGRkZVIDw8IERBQ19ESFIxMlIxX0RBQ0MxREhSX1BvcykgLyohPCAweDAwMDAwRkZGICovDQojZGVmaW5lIERBQ19ESFIxMlIxX0RBQ0MxREhSICAgICAgICAgICAgICAgIERBQ19ESFIxMlIxX0RBQ0MxREhSX01zayAgICAgICAgICAgLyohPERBQyBjaGFubmVsMSAxMi1iaXQgUmlnaHQgYWxpZ25lZCBkYXRhICovDQoNCi8qKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIERBQ19ESFIxMkwxIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIERBQ19ESFIxMkwxX0RBQ0MxREhSX1BvcyAgICAgICAgICAgICg0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIERBQ19ESFIxMkwxX0RBQ0MxREhSX01zayAgICAgICAgICAgICgweEZGRlUgPDwgREFDX0RIUjEyTDFfREFDQzFESFJfUG9zKSAvKiE8IDB4MDAwMEZGRjAgKi8NCiNkZWZpbmUgREFDX0RIUjEyTDFfREFDQzFESFIgICAgICAgICAgICAgICAgREFDX0RIUjEyTDFfREFDQzFESFJfTXNrICAgICAgICAgICAvKiE8REFDIGNoYW5uZWwxIDEyLWJpdCBMZWZ0IGFsaWduZWQgZGF0YSAqLw0KDQovKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgREFDX0RIUjhSMSByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBEQUNfREhSOFIxX0RBQ0MxREhSX1BvcyAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBEQUNfREhSOFIxX0RBQ0MxREhSX01zayAgICAgICAgICAgICAoMHhGRlUgPDwgREFDX0RIUjhSMV9EQUNDMURIUl9Qb3MpIC8qITwgMHgwMDAwMDBGRiAqLw0KI2RlZmluZSBEQUNfREhSOFIxX0RBQ0MxREhSICAgICAgICAgICAgICAgICBEQUNfREhSOFIxX0RBQ0MxREhSX01zayAgICAgICAgICAgIC8qITxEQUMgY2hhbm5lbDEgOC1iaXQgUmlnaHQgYWxpZ25lZCBkYXRhICovDQoNCi8qKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIERBQ19ESFIxMlIyIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIERBQ19ESFIxMlIyX0RBQ0MyREhSX1BvcyAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIERBQ19ESFIxMlIyX0RBQ0MyREhSX01zayAgICAgICAgICAgICgweEZGRlUgPDwgREFDX0RIUjEyUjJfREFDQzJESFJfUG9zKSAvKiE8IDB4MDAwMDBGRkYgKi8NCiNkZWZpbmUgREFDX0RIUjEyUjJfREFDQzJESFIgICAgICAgICAgICAgICAgREFDX0RIUjEyUjJfREFDQzJESFJfTXNrICAgICAgICAgICAvKiE8REFDIGNoYW5uZWwyIDEyLWJpdCBSaWdodCBhbGlnbmVkIGRhdGEgKi8NCg0KLyoqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgREFDX0RIUjEyTDIgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgREFDX0RIUjEyTDJfREFDQzJESFJfUG9zICAgICAgICAgICAgKDRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgREFDX0RIUjEyTDJfREFDQzJESFJfTXNrICAgICAgICAgICAgKDB4RkZGVSA8PCBEQUNfREhSMTJMMl9EQUNDMkRIUl9Qb3MpIC8qITwgMHgwMDAwRkZGMCAqLw0KI2RlZmluZSBEQUNfREhSMTJMMl9EQUNDMkRIUiAgICAgICAgICAgICAgICBEQUNfREhSMTJMMl9EQUNDMkRIUl9Nc2sgICAgICAgICAgIC8qITxEQUMgY2hhbm5lbDIgMTItYml0IExlZnQgYWxpZ25lZCBkYXRhICovDQoNCi8qKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBEQUNfREhSOFIyIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIERBQ19ESFI4UjJfREFDQzJESFJfUG9zICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIERBQ19ESFI4UjJfREFDQzJESFJfTXNrICAgICAgICAgICAgICgweEZGVSA8PCBEQUNfREhSOFIyX0RBQ0MyREhSX1BvcykgLyohPCAweDAwMDAwMEZGICovDQojZGVmaW5lIERBQ19ESFI4UjJfREFDQzJESFIgICAgICAgICAgICAgICAgIERBQ19ESFI4UjJfREFDQzJESFJfTXNrICAgICAgICAgICAgLyohPERBQyBjaGFubmVsMiA4LWJpdCBSaWdodCBhbGlnbmVkIGRhdGEgKi8NCg0KLyoqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgREFDX0RIUjEyUkQgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgREFDX0RIUjEyUkRfREFDQzFESFJfUG9zICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgREFDX0RIUjEyUkRfREFDQzFESFJfTXNrICAgICAgICAgICAgKDB4RkZGVSA8PCBEQUNfREhSMTJSRF9EQUNDMURIUl9Qb3MpIC8qITwgMHgwMDAwMEZGRiAqLw0KI2RlZmluZSBEQUNfREhSMTJSRF9EQUNDMURIUiAgICAgICAgICAgICAgICBEQUNfREhSMTJSRF9EQUNDMURIUl9Nc2sgICAgICAgICAgIC8qITxEQUMgY2hhbm5lbDEgMTItYml0IFJpZ2h0IGFsaWduZWQgZGF0YSAqLw0KI2RlZmluZSBEQUNfREhSMTJSRF9EQUNDMkRIUl9Qb3MgICAgICAgICAgICAoMTZVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBEQUNfREhSMTJSRF9EQUNDMkRIUl9Nc2sgICAgICAgICAgICAoMHhGRkZVIDw8IERBQ19ESFIxMlJEX0RBQ0MyREhSX1BvcykgLyohPCAweDBGRkYwMDAwICovDQojZGVmaW5lIERBQ19ESFIxMlJEX0RBQ0MyREhSICAgICAgICAgICAgICAgIERBQ19ESFIxMlJEX0RBQ0MyREhSX01zayAgICAgICAgICAgLyohPERBQyBjaGFubmVsMiAxMi1iaXQgUmlnaHQgYWxpZ25lZCBkYXRhICovDQoNCi8qKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIERBQ19ESFIxMkxEIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIERBQ19ESFIxMkxEX0RBQ0MxREhSX1BvcyAgICAgICAgICAgICg0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIERBQ19ESFIxMkxEX0RBQ0MxREhSX01zayAgICAgICAgICAgICgweEZGRlUgPDwgREFDX0RIUjEyTERfREFDQzFESFJfUG9zKSAvKiE8IDB4MDAwMEZGRjAgKi8NCiNkZWZpbmUgREFDX0RIUjEyTERfREFDQzFESFIgICAgICAgICAgICAgICAgREFDX0RIUjEyTERfREFDQzFESFJfTXNrICAgICAgICAgICAvKiE8REFDIGNoYW5uZWwxIDEyLWJpdCBMZWZ0IGFsaWduZWQgZGF0YSAqLw0KI2RlZmluZSBEQUNfREhSMTJMRF9EQUNDMkRIUl9Qb3MgICAgICAgICAgICAoMjBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBEQUNfREhSMTJMRF9EQUNDMkRIUl9Nc2sgICAgICAgICAgICAoMHhGRkZVIDw8IERBQ19ESFIxMkxEX0RBQ0MyREhSX1BvcykgLyohPCAweEZGRjAwMDAwICovDQojZGVmaW5lIERBQ19ESFIxMkxEX0RBQ0MyREhSICAgICAgICAgICAgICAgIERBQ19ESFIxMkxEX0RBQ0MyREhSX01zayAgICAgICAgICAgLyohPERBQyBjaGFubmVsMiAxMi1iaXQgTGVmdCBhbGlnbmVkIGRhdGEgKi8NCg0KLyoqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIERBQ19ESFI4UkQgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgREFDX0RIUjhSRF9EQUNDMURIUl9Qb3MgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgREFDX0RIUjhSRF9EQUNDMURIUl9Nc2sgICAgICAgICAgICAgKDB4RkZVIDw8IERBQ19ESFI4UkRfREFDQzFESFJfUG9zKSAvKiE8IDB4MDAwMDAwRkYgKi8NCiNkZWZpbmUgREFDX0RIUjhSRF9EQUNDMURIUiAgICAgICAgICAgICAgICAgREFDX0RIUjhSRF9EQUNDMURIUl9Nc2sgICAgICAgICAgICAvKiE8REFDIGNoYW5uZWwxIDgtYml0IFJpZ2h0IGFsaWduZWQgZGF0YSAqLw0KI2RlZmluZSBEQUNfREhSOFJEX0RBQ0MyREhSX1BvcyAgICAgICAgICAgICAoOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBEQUNfREhSOFJEX0RBQ0MyREhSX01zayAgICAgICAgICAgICAoMHhGRlUgPDwgREFDX0RIUjhSRF9EQUNDMkRIUl9Qb3MpIC8qITwgMHgwMDAwRkYwMCAqLw0KI2RlZmluZSBEQUNfREhSOFJEX0RBQ0MyREhSICAgICAgICAgICAgICAgICBEQUNfREhSOFJEX0RBQ0MyREhSX01zayAgICAgICAgICAgIC8qITxEQUMgY2hhbm5lbDIgOC1iaXQgUmlnaHQgYWxpZ25lZCBkYXRhICovDQoNCi8qKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgREFDX0RPUjEgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIERBQ19ET1IxX0RBQ0MxRE9SX1BvcyAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIERBQ19ET1IxX0RBQ0MxRE9SX01zayAgICAgICAgICAgICAgICgweEZGRlUgPDwgREFDX0RPUjFfREFDQzFET1JfUG9zKSAgLyohPCAweDAwMDAwRkZGICovDQojZGVmaW5lIERBQ19ET1IxX0RBQ0MxRE9SICAgICAgICAgICAgICAgICAgIERBQ19ET1IxX0RBQ0MxRE9SX01zayAgICAgICAgICAgICAgLyohPERBQyBjaGFubmVsMSBkYXRhIG91dHB1dCAqLw0KDQovKioqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIERBQ19ET1IyIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBEQUNfRE9SMl9EQUNDMkRPUl9Qb3MgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBEQUNfRE9SMl9EQUNDMkRPUl9Nc2sgICAgICAgICAgICAgICAoMHhGRkZVIDw8IERBQ19ET1IyX0RBQ0MyRE9SX1BvcykgIC8qITwgMHgwMDAwMEZGRiAqLw0KI2RlZmluZSBEQUNfRE9SMl9EQUNDMkRPUiAgICAgICAgICAgICAgICAgICBEQUNfRE9SMl9EQUNDMkRPUl9Nc2sgICAgICAgICAgICAgIC8qITxEQUMgY2hhbm5lbDIgZGF0YSBvdXRwdXQgKi8NCg0KLyoqKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgREFDX1NSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgREFDX1NSX0RNQVVEUjFfUG9zICAgICAgICAgICAgICAgICAgKDEzVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgREFDX1NSX0RNQVVEUjFfTXNrICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgREFDX1NSX0RNQVVEUjFfUG9zKSAgICAgICAvKiE8IDB4MDAwMDIwMDAgKi8NCiNkZWZpbmUgREFDX1NSX0RNQVVEUjEgICAgICAgICAgICAgICAgICAgICAgREFDX1NSX0RNQVVEUjFfTXNrICAgICAgICAgICAgICAgICAvKiE8REFDIGNoYW5uZWwxIERNQSB1bmRlcnJ1biBmbGFnICovDQojZGVmaW5lIERBQ19TUl9ETUFVRFIyX1BvcyAgICAgICAgICAgICAgICAgICgyOVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIERBQ19TUl9ETUFVRFIyX01zayAgICAgICAgICAgICAgICAgICgweDFVIDw8IERBQ19TUl9ETUFVRFIyX1BvcykgICAgICAgLyohPCAweDIwMDAwMDAwICovDQojZGVmaW5lIERBQ19TUl9ETUFVRFIyICAgICAgICAgICAgICAgICAgICAgIERBQ19TUl9ETUFVRFIyX01zayAgICAgICAgICAgICAgICAgLyohPERBQyBjaGFubmVsMiBETUEgdW5kZXJydW4gZmxhZyAqLw0KDQovKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLw0KLyogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8NCi8qICAgICAgICAgICAgICAgICAgICAgICAgICAgRGVidWcgTUNVIChEQkdNQ1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovDQovKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLw0KLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8NCg0KLyoqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBEQkdNQ1VfSURDT0RFIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgREJHTUNVX0lEQ09ERV9ERVZfSURfUG9zICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgREJHTUNVX0lEQ09ERV9ERVZfSURfTXNrICAgICAgICAgICAgICAgICAoMHhGRkZVIDw8IERCR01DVV9JRENPREVfREVWX0lEX1BvcykgLyohPCAweDAwMDAwRkZGICovDQojZGVmaW5lIERCR01DVV9JRENPREVfREVWX0lEICAgICAgICAgICAgICAgICAgICAgREJHTUNVX0lEQ09ERV9ERVZfSURfTXNrICAgICAgLyohPCBEZXZpY2UgSWRlbnRpZmllciAqLw0KDQojZGVmaW5lIERCR01DVV9JRENPREVfUkVWX0lEX1BvcyAgICAgICAgICAgICAgICAgKDE2VSkgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIERCR01DVV9JRENPREVfUkVWX0lEX01zayAgICAgICAgICAgICAgICAgKDB4RkZGRlUgPDwgREJHTUNVX0lEQ09ERV9SRVZfSURfUG9zKSAvKiE8IDB4RkZGRjAwMDAgKi8NCiNkZWZpbmUgREJHTUNVX0lEQ09ERV9SRVZfSUQgICAgICAgICAgICAgICAgICAgICBEQkdNQ1VfSURDT0RFX1JFVl9JRF9Nc2sgICAgICAvKiE8IFJFVl9JRFsxNTowXSBiaXRzIChSZXZpc2lvbiBJZGVudGlmaWVyKSAqLw0KI2RlZmluZSBEQkdNQ1VfSURDT0RFX1JFVl9JRF8wICAgICAgICAgICAgICAgICAgICgweDAwMDFVIDw8IERCR01DVV9JRENPREVfUkVWX0lEX1BvcykgLyohPCAweDAwMDEwMDAwICovDQojZGVmaW5lIERCR01DVV9JRENPREVfUkVWX0lEXzEgICAgICAgICAgICAgICAgICAgKDB4MDAwMlUgPDwgREJHTUNVX0lEQ09ERV9SRVZfSURfUG9zKSAvKiE8IDB4MDAwMjAwMDAgKi8NCiNkZWZpbmUgREJHTUNVX0lEQ09ERV9SRVZfSURfMiAgICAgICAgICAgICAgICAgICAoMHgwMDA0VSA8PCBEQkdNQ1VfSURDT0RFX1JFVl9JRF9Qb3MpIC8qITwgMHgwMDA0MDAwMCAqLw0KI2RlZmluZSBEQkdNQ1VfSURDT0RFX1JFVl9JRF8zICAgICAgICAgICAgICAgICAgICgweDAwMDhVIDw8IERCR01DVV9JRENPREVfUkVWX0lEX1BvcykgLyohPCAweDAwMDgwMDAwICovDQojZGVmaW5lIERCR01DVV9JRENPREVfUkVWX0lEXzQgICAgICAgICAgICAgICAgICAgKDB4MDAxMFUgPDwgREJHTUNVX0lEQ09ERV9SRVZfSURfUG9zKSAvKiE8IDB4MDAxMDAwMDAgKi8NCiNkZWZpbmUgREJHTUNVX0lEQ09ERV9SRVZfSURfNSAgICAgICAgICAgICAgICAgICAoMHgwMDIwVSA8PCBEQkdNQ1VfSURDT0RFX1JFVl9JRF9Qb3MpIC8qITwgMHgwMDIwMDAwMCAqLw0KI2RlZmluZSBEQkdNQ1VfSURDT0RFX1JFVl9JRF82ICAgICAgICAgICAgICAgICAgICgweDAwNDBVIDw8IERCR01DVV9JRENPREVfUkVWX0lEX1BvcykgLyohPCAweDAwNDAwMDAwICovDQojZGVmaW5lIERCR01DVV9JRENPREVfUkVWX0lEXzcgICAgICAgICAgICAgICAgICAgKDB4MDA4MFUgPDwgREJHTUNVX0lEQ09ERV9SRVZfSURfUG9zKSAvKiE8IDB4MDA4MDAwMDAgKi8NCiNkZWZpbmUgREJHTUNVX0lEQ09ERV9SRVZfSURfOCAgICAgICAgICAgICAgICAgICAoMHgwMTAwVSA8PCBEQkdNQ1VfSURDT0RFX1JFVl9JRF9Qb3MpIC8qITwgMHgwMTAwMDAwMCAqLw0KI2RlZmluZSBEQkdNQ1VfSURDT0RFX1JFVl9JRF85ICAgICAgICAgICAgICAgICAgICgweDAyMDBVIDw8IERCR01DVV9JRENPREVfUkVWX0lEX1BvcykgLyohPCAweDAyMDAwMDAwICovDQojZGVmaW5lIERCR01DVV9JRENPREVfUkVWX0lEXzEwICAgICAgICAgICAgICAgICAgKDB4MDQwMFUgPDwgREJHTUNVX0lEQ09ERV9SRVZfSURfUG9zKSAvKiE8IDB4MDQwMDAwMDAgKi8NCiNkZWZpbmUgREJHTUNVX0lEQ09ERV9SRVZfSURfMTEgICAgICAgICAgICAgICAgICAoMHgwODAwVSA8PCBEQkdNQ1VfSURDT0RFX1JFVl9JRF9Qb3MpIC8qITwgMHgwODAwMDAwMCAqLw0KI2RlZmluZSBEQkdNQ1VfSURDT0RFX1JFVl9JRF8xMiAgICAgICAgICAgICAgICAgICgweDEwMDBVIDw8IERCR01DVV9JRENPREVfUkVWX0lEX1BvcykgLyohPCAweDEwMDAwMDAwICovDQojZGVmaW5lIERCR01DVV9JRENPREVfUkVWX0lEXzEzICAgICAgICAgICAgICAgICAgKDB4MjAwMFUgPDwgREJHTUNVX0lEQ09ERV9SRVZfSURfUG9zKSAvKiE8IDB4MjAwMDAwMDAgKi8NCiNkZWZpbmUgREJHTUNVX0lEQ09ERV9SRVZfSURfMTQgICAgICAgICAgICAgICAgICAoMHg0MDAwVSA8PCBEQkdNQ1VfSURDT0RFX1JFVl9JRF9Qb3MpIC8qITwgMHg0MDAwMDAwMCAqLw0KI2RlZmluZSBEQkdNQ1VfSURDT0RFX1JFVl9JRF8xNSAgICAgICAgICAgICAgICAgICgweDgwMDBVIDw8IERCR01DVV9JRENPREVfUkVWX0lEX1BvcykgLyohPCAweDgwMDAwMDAwICovDQoNCi8qKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBEQkdNQ1VfQ1IgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIERCR01DVV9DUl9EQkdfU0xFRVBfUG9zICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIERCR01DVV9DUl9EQkdfU0xFRVBfTXNrICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgREJHTUNVX0NSX0RCR19TTEVFUF9Qb3MpIC8qITwgMHgwMDAwMDAwMSAqLw0KI2RlZmluZSBEQkdNQ1VfQ1JfREJHX1NMRUVQICAgICAgICAgICAgICAgICAgICAgIERCR01DVV9DUl9EQkdfU0xFRVBfTXNrICAgICAgIC8qITwgRGVidWcgU2xlZXAgTW9kZSAqLw0KI2RlZmluZSBEQkdNQ1VfQ1JfREJHX1NUT1BfUG9zICAgICAgICAgICAgICAgICAgICgxVSkgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBEQkdNQ1VfQ1JfREJHX1NUT1BfTXNrICAgICAgICAgICAgICAgICAgICgweDFVIDw8IERCR01DVV9DUl9EQkdfU1RPUF9Qb3MpIC8qITwgMHgwMDAwMDAwMiAqLw0KI2RlZmluZSBEQkdNQ1VfQ1JfREJHX1NUT1AgICAgICAgICAgICAgICAgICAgICAgIERCR01DVV9DUl9EQkdfU1RPUF9Nc2sgICAgICAgIC8qITwgRGVidWcgU3RvcCBNb2RlICovDQojZGVmaW5lIERCR01DVV9DUl9EQkdfU1RBTkRCWV9Qb3MgICAgICAgICAgICAgICAgKDJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIERCR01DVV9DUl9EQkdfU1RBTkRCWV9Nc2sgICAgICAgICAgICAgICAgKDB4MVUgPDwgREJHTUNVX0NSX0RCR19TVEFOREJZX1BvcykgLyohPCAweDAwMDAwMDA0ICovDQojZGVmaW5lIERCR01DVV9DUl9EQkdfU1RBTkRCWSAgICAgICAgICAgICAgICAgICAgREJHTUNVX0NSX0RCR19TVEFOREJZX01zayAgICAgLyohPCBEZWJ1ZyBTdGFuZGJ5IG1vZGUgKi8NCiNkZWZpbmUgREJHTUNVX0NSX1RSQUNFX0lPRU5fUG9zICAgICAgICAgICAgICAgICAoNVUpICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgREJHTUNVX0NSX1RSQUNFX0lPRU5fTXNrICAgICAgICAgICAgICAgICAoMHgxVSA8PCBEQkdNQ1VfQ1JfVFJBQ0VfSU9FTl9Qb3MpIC8qITwgMHgwMDAwMDAyMCAqLw0KI2RlZmluZSBEQkdNQ1VfQ1JfVFJBQ0VfSU9FTiAgICAgICAgICAgICAgICAgICAgIERCR01DVV9DUl9UUkFDRV9JT0VOX01zayAgICAgIC8qITwgVHJhY2UgUGluIEFzc2lnbm1lbnQgQ29udHJvbCAqLw0KDQojZGVmaW5lIERCR01DVV9DUl9UUkFDRV9NT0RFX1BvcyAgICAgICAgICAgICAgICAgKDZVKSAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIERCR01DVV9DUl9UUkFDRV9NT0RFX01zayAgICAgICAgICAgICAgICAgKDB4M1UgPDwgREJHTUNVX0NSX1RSQUNFX01PREVfUG9zKSAvKiE8IDB4MDAwMDAwQzAgKi8NCiNkZWZpbmUgREJHTUNVX0NSX1RSQUNFX01PREUgICAgICAgICAgICAgICAgICAgICBEQkdNQ1VfQ1JfVFJBQ0VfTU9ERV9Nc2sgICAgICAvKiE8IFRSQUNFX01PREVbMTowXSBiaXRzIChUcmFjZSBQaW4gQXNzaWdubWVudCBDb250cm9sKSAqLw0KI2RlZmluZSBEQkdNQ1VfQ1JfVFJBQ0VfTU9ERV8wICAgICAgICAgICAgICAgICAgICgweDFVIDw8IERCR01DVV9DUl9UUkFDRV9NT0RFX1BvcykgLyohPCAweDAwMDAwMDQwICovDQojZGVmaW5lIERCR01DVV9DUl9UUkFDRV9NT0RFXzEgICAgICAgICAgICAgICAgICAgKDB4MlUgPDwgREJHTUNVX0NSX1RSQUNFX01PREVfUG9zKSAvKiE8IDB4MDAwMDAwODAgKi8NCg0KLyoqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIERCR01DVV9BUEIxX0ZaIHJlZ2lzdGVyICAqKioqKioqKioqKioqKi8NCg0KI2RlZmluZSBEQkdNQ1VfQVBCMV9GWl9EQkdfVElNMl9TVE9QX1BvcyAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBEQkdNQ1VfQVBCMV9GWl9EQkdfVElNMl9TVE9QX01zayAgICAgICAgICgweDFVIDw8IERCR01DVV9BUEIxX0ZaX0RCR19USU0yX1NUT1BfUG9zKSAvKiE8IDB4MDAwMDAwMDEgKi8NCiNkZWZpbmUgREJHTUNVX0FQQjFfRlpfREJHX1RJTTJfU1RPUCAgICAgICAgICAgICBEQkdNQ1VfQVBCMV9GWl9EQkdfVElNMl9TVE9QX01zayAvKiE8IFRJTTIgY291bnRlciBzdG9wcGVkIHdoZW4gY29yZSBpcyBoYWx0ZWQgKi8NCiNkZWZpbmUgREJHTUNVX0FQQjFfRlpfREJHX1RJTTNfU1RPUF9Qb3MgICAgICAgICAoMVUpICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgREJHTUNVX0FQQjFfRlpfREJHX1RJTTNfU1RPUF9Nc2sgICAgICAgICAoMHgxVSA8PCBEQkdNQ1VfQVBCMV9GWl9EQkdfVElNM19TVE9QX1BvcykgLyohPCAweDAwMDAwMDAyICovDQojZGVmaW5lIERCR01DVV9BUEIxX0ZaX0RCR19USU0zX1NUT1AgICAgICAgICAgICAgREJHTUNVX0FQQjFfRlpfREJHX1RJTTNfU1RPUF9Nc2sgLyohPCBUSU0zIGNvdW50ZXIgc3RvcHBlZCB3aGVuIGNvcmUgaXMgaGFsdGVkICovDQojZGVmaW5lIERCR01DVV9BUEIxX0ZaX0RCR19USU00X1NUT1BfUG9zICAgICAgICAgKDJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIERCR01DVV9BUEIxX0ZaX0RCR19USU00X1NUT1BfTXNrICAgICAgICAgKDB4MVUgPDwgREJHTUNVX0FQQjFfRlpfREJHX1RJTTRfU1RPUF9Qb3MpIC8qITwgMHgwMDAwMDAwNCAqLw0KI2RlZmluZSBEQkdNQ1VfQVBCMV9GWl9EQkdfVElNNF9TVE9QICAgICAgICAgICAgIERCR01DVV9BUEIxX0ZaX0RCR19USU00X1NUT1BfTXNrIC8qITwgVElNNCBjb3VudGVyIHN0b3BwZWQgd2hlbiBjb3JlIGlzIGhhbHRlZCAqLw0KI2RlZmluZSBEQkdNQ1VfQVBCMV9GWl9EQkdfVElNNV9TVE9QX1BvcyAgICAgICAgICgzVSkgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBEQkdNQ1VfQVBCMV9GWl9EQkdfVElNNV9TVE9QX01zayAgICAgICAgICgweDFVIDw8IERCR01DVV9BUEIxX0ZaX0RCR19USU01X1NUT1BfUG9zKSAvKiE8IDB4MDAwMDAwMDggKi8NCiNkZWZpbmUgREJHTUNVX0FQQjFfRlpfREJHX1RJTTVfU1RPUCAgICAgICAgICAgICBEQkdNQ1VfQVBCMV9GWl9EQkdfVElNNV9TVE9QX01zayAvKiE8IFRJTTUgY291bnRlciBzdG9wcGVkIHdoZW4gY29yZSBpcyBoYWx0ZWQgKi8NCiNkZWZpbmUgREJHTUNVX0FQQjFfRlpfREJHX1RJTTZfU1RPUF9Qb3MgICAgICAgICAoNFUpICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgREJHTUNVX0FQQjFfRlpfREJHX1RJTTZfU1RPUF9Nc2sgICAgICAgICAoMHgxVSA8PCBEQkdNQ1VfQVBCMV9GWl9EQkdfVElNNl9TVE9QX1BvcykgLyohPCAweDAwMDAwMDEwICovDQojZGVmaW5lIERCR01DVV9BUEIxX0ZaX0RCR19USU02X1NUT1AgICAgICAgICAgICAgREJHTUNVX0FQQjFfRlpfREJHX1RJTTZfU1RPUF9Nc2sgLyohPCBUSU02IGNvdW50ZXIgc3RvcHBlZCB3aGVuIGNvcmUgaXMgaGFsdGVkICovDQojZGVmaW5lIERCR01DVV9BUEIxX0ZaX0RCR19USU03X1NUT1BfUG9zICAgICAgICAgKDVVKSAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIERCR01DVV9BUEIxX0ZaX0RCR19USU03X1NUT1BfTXNrICAgICAgICAgKDB4MVUgPDwgREJHTUNVX0FQQjFfRlpfREJHX1RJTTdfU1RPUF9Qb3MpIC8qITwgMHgwMDAwMDAyMCAqLw0KI2RlZmluZSBEQkdNQ1VfQVBCMV9GWl9EQkdfVElNN19TVE9QICAgICAgICAgICAgIERCR01DVV9BUEIxX0ZaX0RCR19USU03X1NUT1BfTXNrIC8qITwgVElNNyBjb3VudGVyIHN0b3BwZWQgd2hlbiBjb3JlIGlzIGhhbHRlZCAqLw0KI2RlZmluZSBEQkdNQ1VfQVBCMV9GWl9EQkdfUlRDX1NUT1BfUG9zICAgICAgICAgICgxMFUpICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBEQkdNQ1VfQVBCMV9GWl9EQkdfUlRDX1NUT1BfTXNrICAgICAgICAgICgweDFVIDw8IERCR01DVV9BUEIxX0ZaX0RCR19SVENfU1RPUF9Qb3MpIC8qITwgMHgwMDAwMDQwMCAqLw0KI2RlZmluZSBEQkdNQ1VfQVBCMV9GWl9EQkdfUlRDX1NUT1AgICAgICAgICAgICAgIERCR01DVV9BUEIxX0ZaX0RCR19SVENfU1RPUF9Nc2sgLyohPCBSVEMgQ291bnRlciBzdG9wcGVkIHdoZW4gQ29yZSBpcyBoYWx0ZWQgKi8NCiNkZWZpbmUgREJHTUNVX0FQQjFfRlpfREJHX1dXREdfU1RPUF9Qb3MgICAgICAgICAoMTFVKSAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgREJHTUNVX0FQQjFfRlpfREJHX1dXREdfU1RPUF9Nc2sgICAgICAgICAoMHgxVSA8PCBEQkdNQ1VfQVBCMV9GWl9EQkdfV1dER19TVE9QX1BvcykgLyohPCAweDAwMDAwODAwICovDQojZGVmaW5lIERCR01DVV9BUEIxX0ZaX0RCR19XV0RHX1NUT1AgICAgICAgICAgICAgREJHTUNVX0FQQjFfRlpfREJHX1dXREdfU1RPUF9Nc2sgLyohPCBEZWJ1ZyBXaW5kb3cgV2F0Y2hkb2cgc3RvcHBlZCB3aGVuIENvcmUgaXMgaGFsdGVkICovDQojZGVmaW5lIERCR01DVV9BUEIxX0ZaX0RCR19JV0RHX1NUT1BfUG9zICAgICAgICAgKDEyVSkgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIERCR01DVV9BUEIxX0ZaX0RCR19JV0RHX1NUT1BfTXNrICAgICAgICAgKDB4MVUgPDwgREJHTUNVX0FQQjFfRlpfREJHX0lXREdfU1RPUF9Qb3MpIC8qITwgMHgwMDAwMTAwMCAqLw0KI2RlZmluZSBEQkdNQ1VfQVBCMV9GWl9EQkdfSVdER19TVE9QICAgICAgICAgICAgIERCR01DVV9BUEIxX0ZaX0RCR19JV0RHX1NUT1BfTXNrIC8qITwgRGVidWcgSW5kZXBlbmRlbnQgV2F0Y2hkb2cgc3RvcHBlZCB3aGVuIENvcmUgaXMgaGFsdGVkICovDQojZGVmaW5lIERCR01DVV9BUEIxX0ZaX0RCR19JMkMxX1NNQlVTX1RJTUVPVVRfUG9zICgyMVUpICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIERCR01DVV9BUEIxX0ZaX0RCR19JMkMxX1NNQlVTX1RJTUVPVVRfTXNrICgweDFVIDw8IERCR01DVV9BUEIxX0ZaX0RCR19JMkMxX1NNQlVTX1RJTUVPVVRfUG9zKSAvKiE8IDB4MDAyMDAwMDAgKi8NCiNkZWZpbmUgREJHTUNVX0FQQjFfRlpfREJHX0kyQzFfU01CVVNfVElNRU9VVCAgICBEQkdNQ1VfQVBCMV9GWl9EQkdfSTJDMV9TTUJVU19USU1FT1VUX01zayAvKiE8IFNNQlVTIHRpbWVvdXQgbW9kZSBzdG9wcGVkIHdoZW4gQ29yZSBpcyBoYWx0ZWQgKi8NCiNkZWZpbmUgREJHTUNVX0FQQjFfRlpfREJHX0kyQzJfU01CVVNfVElNRU9VVF9Qb3MgKDIyVSkgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgREJHTUNVX0FQQjFfRlpfREJHX0kyQzJfU01CVVNfVElNRU9VVF9Nc2sgKDB4MVUgPDwgREJHTUNVX0FQQjFfRlpfREJHX0kyQzJfU01CVVNfVElNRU9VVF9Qb3MpIC8qITwgMHgwMDQwMDAwMCAqLw0KI2RlZmluZSBEQkdNQ1VfQVBCMV9GWl9EQkdfSTJDMl9TTUJVU19USU1FT1VUICAgIERCR01DVV9BUEIxX0ZaX0RCR19JMkMyX1NNQlVTX1RJTUVPVVRfTXNrIC8qITwgU01CVVMgdGltZW91dCBtb2RlIHN0b3BwZWQgd2hlbiBDb3JlIGlzIGhhbHRlZCAqLw0KDQovKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgREJHTUNVX0FQQjJfRlogcmVnaXN0ZXIgICoqKioqKioqKioqKioqLw0KDQojZGVmaW5lIERCR01DVV9BUEIyX0ZaX0RCR19USU05X1NUT1BfUG9zICAgICAgICAgKDJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIERCR01DVV9BUEIyX0ZaX0RCR19USU05X1NUT1BfTXNrICAgICAgICAgKDB4MVUgPDwgREJHTUNVX0FQQjJfRlpfREJHX1RJTTlfU1RPUF9Qb3MpIC8qITwgMHgwMDAwMDAwNCAqLw0KI2RlZmluZSBEQkdNQ1VfQVBCMl9GWl9EQkdfVElNOV9TVE9QICAgICAgICAgICAgIERCR01DVV9BUEIyX0ZaX0RCR19USU05X1NUT1BfTXNrIC8qITwgVElNOSBjb3VudGVyIHN0b3BwZWQgd2hlbiBjb3JlIGlzIGhhbHRlZCAqLw0KI2RlZmluZSBEQkdNQ1VfQVBCMl9GWl9EQkdfVElNMTBfU1RPUF9Qb3MgICAgICAgICgzVSkgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBEQkdNQ1VfQVBCMl9GWl9EQkdfVElNMTBfU1RPUF9Nc2sgICAgICAgICgweDFVIDw8IERCR01DVV9BUEIyX0ZaX0RCR19USU0xMF9TVE9QX1BvcykgLyohPCAweDAwMDAwMDA4ICovDQojZGVmaW5lIERCR01DVV9BUEIyX0ZaX0RCR19USU0xMF9TVE9QICAgICAgICAgICAgREJHTUNVX0FQQjJfRlpfREJHX1RJTTEwX1NUT1BfTXNrIC8qITwgVElNMTAgY291bnRlciBzdG9wcGVkIHdoZW4gY29yZSBpcyBoYWx0ZWQgKi8NCiNkZWZpbmUgREJHTUNVX0FQQjJfRlpfREJHX1RJTTExX1NUT1BfUG9zICAgICAgICAoNFUpICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgREJHTUNVX0FQQjJfRlpfREJHX1RJTTExX1NUT1BfTXNrICAgICAgICAoMHgxVSA8PCBEQkdNQ1VfQVBCMl9GWl9EQkdfVElNMTFfU1RPUF9Qb3MpIC8qITwgMHgwMDAwMDAxMCAqLw0KI2RlZmluZSBEQkdNQ1VfQVBCMl9GWl9EQkdfVElNMTFfU1RPUCAgICAgICAgICAgIERCR01DVV9BUEIyX0ZaX0RCR19USU0xMV9TVE9QX01zayAvKiE8IFRJTTExIGNvdW50ZXIgc3RvcHBlZCB3aGVuIGNvcmUgaXMgaGFsdGVkICovDQoNCi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovDQovKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLw0KLyogICAgICAgICAgICAgICAgICAgICAgICAgICBETUEgQ29udHJvbGxlciAoRE1BKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8NCi8qICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovDQovKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLw0KDQovKioqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIERNQV9JU1IgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBETUFfSVNSX0dJRjFfUG9zICAgICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBETUFfSVNSX0dJRjFfTXNrICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBETUFfSVNSX0dJRjFfUG9zKSAgICAgICAgIC8qITwgMHgwMDAwMDAwMSAqLw0KI2RlZmluZSBETUFfSVNSX0dJRjEgICAgICAgICAgICAgICAgICAgICAgICBETUFfSVNSX0dJRjFfTXNrICAgICAgICAgICAgICAgICAgIC8qITwgQ2hhbm5lbCAxIEdsb2JhbCBpbnRlcnJ1cHQgZmxhZyAqLw0KI2RlZmluZSBETUFfSVNSX1RDSUYxX1BvcyAgICAgICAgICAgICAgICAgICAoMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBETUFfSVNSX1RDSUYxX01zayAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBETUFfSVNSX1RDSUYxX1BvcykgICAgICAgIC8qITwgMHgwMDAwMDAwMiAqLw0KI2RlZmluZSBETUFfSVNSX1RDSUYxICAgICAgICAgICAgICAgICAgICAgICBETUFfSVNSX1RDSUYxX01zayAgICAgICAgICAgICAgICAgIC8qITwgQ2hhbm5lbCAxIFRyYW5zZmVyIENvbXBsZXRlIGZsYWcgKi8NCiNkZWZpbmUgRE1BX0lTUl9IVElGMV9Qb3MgICAgICAgICAgICAgICAgICAgKDJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRE1BX0lTUl9IVElGMV9Nc2sgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgRE1BX0lTUl9IVElGMV9Qb3MpICAgICAgICAvKiE8IDB4MDAwMDAwMDQgKi8NCiNkZWZpbmUgRE1BX0lTUl9IVElGMSAgICAgICAgICAgICAgICAgICAgICAgRE1BX0lTUl9IVElGMV9Nc2sgICAgICAgICAgICAgICAgICAvKiE8IENoYW5uZWwgMSBIYWxmIFRyYW5zZmVyIGZsYWcgKi8NCiNkZWZpbmUgRE1BX0lTUl9URUlGMV9Qb3MgICAgICAgICAgICAgICAgICAgKDNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRE1BX0lTUl9URUlGMV9Nc2sgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgRE1BX0lTUl9URUlGMV9Qb3MpICAgICAgICAvKiE8IDB4MDAwMDAwMDggKi8NCiNkZWZpbmUgRE1BX0lTUl9URUlGMSAgICAgICAgICAgICAgICAgICAgICAgRE1BX0lTUl9URUlGMV9Nc2sgICAgICAgICAgICAgICAgICAvKiE8IENoYW5uZWwgMSBUcmFuc2ZlciBFcnJvciBmbGFnICovDQojZGVmaW5lIERNQV9JU1JfR0lGMl9Qb3MgICAgICAgICAgICAgICAgICAgICg0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIERNQV9JU1JfR0lGMl9Nc2sgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IERNQV9JU1JfR0lGMl9Qb3MpICAgICAgICAgLyohPCAweDAwMDAwMDEwICovDQojZGVmaW5lIERNQV9JU1JfR0lGMiAgICAgICAgICAgICAgICAgICAgICAgIERNQV9JU1JfR0lGMl9Nc2sgICAgICAgICAgICAgICAgICAgLyohPCBDaGFubmVsIDIgR2xvYmFsIGludGVycnVwdCBmbGFnICovDQojZGVmaW5lIERNQV9JU1JfVENJRjJfUG9zICAgICAgICAgICAgICAgICAgICg1VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIERNQV9JU1JfVENJRjJfTXNrICAgICAgICAgICAgICAgICAgICgweDFVIDw8IERNQV9JU1JfVENJRjJfUG9zKSAgICAgICAgLyohPCAweDAwMDAwMDIwICovDQojZGVmaW5lIERNQV9JU1JfVENJRjIgICAgICAgICAgICAgICAgICAgICAgIERNQV9JU1JfVENJRjJfTXNrICAgICAgICAgICAgICAgICAgLyohPCBDaGFubmVsIDIgVHJhbnNmZXIgQ29tcGxldGUgZmxhZyAqLw0KI2RlZmluZSBETUFfSVNSX0hUSUYyX1BvcyAgICAgICAgICAgICAgICAgICAoNlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBETUFfSVNSX0hUSUYyX01zayAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBETUFfSVNSX0hUSUYyX1BvcykgICAgICAgIC8qITwgMHgwMDAwMDA0MCAqLw0KI2RlZmluZSBETUFfSVNSX0hUSUYyICAgICAgICAgICAgICAgICAgICAgICBETUFfSVNSX0hUSUYyX01zayAgICAgICAgICAgICAgICAgIC8qITwgQ2hhbm5lbCAyIEhhbGYgVHJhbnNmZXIgZmxhZyAqLw0KI2RlZmluZSBETUFfSVNSX1RFSUYyX1BvcyAgICAgICAgICAgICAgICAgICAoN1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBETUFfSVNSX1RFSUYyX01zayAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBETUFfSVNSX1RFSUYyX1BvcykgICAgICAgIC8qITwgMHgwMDAwMDA4MCAqLw0KI2RlZmluZSBETUFfSVNSX1RFSUYyICAgICAgICAgICAgICAgICAgICAgICBETUFfSVNSX1RFSUYyX01zayAgICAgICAgICAgICAgICAgIC8qITwgQ2hhbm5lbCAyIFRyYW5zZmVyIEVycm9yIGZsYWcgKi8NCiNkZWZpbmUgRE1BX0lTUl9HSUYzX1BvcyAgICAgICAgICAgICAgICAgICAgKDhVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRE1BX0lTUl9HSUYzX01zayAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgRE1BX0lTUl9HSUYzX1BvcykgICAgICAgICAvKiE8IDB4MDAwMDAxMDAgKi8NCiNkZWZpbmUgRE1BX0lTUl9HSUYzICAgICAgICAgICAgICAgICAgICAgICAgRE1BX0lTUl9HSUYzX01zayAgICAgICAgICAgICAgICAgICAvKiE8IENoYW5uZWwgMyBHbG9iYWwgaW50ZXJydXB0IGZsYWcgKi8NCiNkZWZpbmUgRE1BX0lTUl9UQ0lGM19Qb3MgICAgICAgICAgICAgICAgICAgKDlVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRE1BX0lTUl9UQ0lGM19Nc2sgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgRE1BX0lTUl9UQ0lGM19Qb3MpICAgICAgICAvKiE8IDB4MDAwMDAyMDAgKi8NCiNkZWZpbmUgRE1BX0lTUl9UQ0lGMyAgICAgICAgICAgICAgICAgICAgICAgRE1BX0lTUl9UQ0lGM19Nc2sgICAgICAgICAgICAgICAgICAvKiE8IENoYW5uZWwgMyBUcmFuc2ZlciBDb21wbGV0ZSBmbGFnICovDQojZGVmaW5lIERNQV9JU1JfSFRJRjNfUG9zICAgICAgICAgICAgICAgICAgICgxMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIERNQV9JU1JfSFRJRjNfTXNrICAgICAgICAgICAgICAgICAgICgweDFVIDw8IERNQV9JU1JfSFRJRjNfUG9zKSAgICAgICAgLyohPCAweDAwMDAwNDAwICovDQojZGVmaW5lIERNQV9JU1JfSFRJRjMgICAgICAgICAgICAgICAgICAgICAgIERNQV9JU1JfSFRJRjNfTXNrICAgICAgICAgICAgICAgICAgLyohPCBDaGFubmVsIDMgSGFsZiBUcmFuc2ZlciBmbGFnICovDQojZGVmaW5lIERNQV9JU1JfVEVJRjNfUG9zICAgICAgICAgICAgICAgICAgICgxMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIERNQV9JU1JfVEVJRjNfTXNrICAgICAgICAgICAgICAgICAgICgweDFVIDw8IERNQV9JU1JfVEVJRjNfUG9zKSAgICAgICAgLyohPCAweDAwMDAwODAwICovDQojZGVmaW5lIERNQV9JU1JfVEVJRjMgICAgICAgICAgICAgICAgICAgICAgIERNQV9JU1JfVEVJRjNfTXNrICAgICAgICAgICAgICAgICAgLyohPCBDaGFubmVsIDMgVHJhbnNmZXIgRXJyb3IgZmxhZyAqLw0KI2RlZmluZSBETUFfSVNSX0dJRjRfUG9zICAgICAgICAgICAgICAgICAgICAoMTJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBETUFfSVNSX0dJRjRfTXNrICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBETUFfSVNSX0dJRjRfUG9zKSAgICAgICAgIC8qITwgMHgwMDAwMTAwMCAqLw0KI2RlZmluZSBETUFfSVNSX0dJRjQgICAgICAgICAgICAgICAgICAgICAgICBETUFfSVNSX0dJRjRfTXNrICAgICAgICAgICAgICAgICAgIC8qITwgQ2hhbm5lbCA0IEdsb2JhbCBpbnRlcnJ1cHQgZmxhZyAqLw0KI2RlZmluZSBETUFfSVNSX1RDSUY0X1BvcyAgICAgICAgICAgICAgICAgICAoMTNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBETUFfSVNSX1RDSUY0X01zayAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBETUFfSVNSX1RDSUY0X1BvcykgICAgICAgIC8qITwgMHgwMDAwMjAwMCAqLw0KI2RlZmluZSBETUFfSVNSX1RDSUY0ICAgICAgICAgICAgICAgICAgICAgICBETUFfSVNSX1RDSUY0X01zayAgICAgICAgICAgICAgICAgIC8qITwgQ2hhbm5lbCA0IFRyYW5zZmVyIENvbXBsZXRlIGZsYWcgKi8NCiNkZWZpbmUgRE1BX0lTUl9IVElGNF9Qb3MgICAgICAgICAgICAgICAgICAgKDE0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRE1BX0lTUl9IVElGNF9Nc2sgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgRE1BX0lTUl9IVElGNF9Qb3MpICAgICAgICAvKiE8IDB4MDAwMDQwMDAgKi8NCiNkZWZpbmUgRE1BX0lTUl9IVElGNCAgICAgICAgICAgICAgICAgICAgICAgRE1BX0lTUl9IVElGNF9Nc2sgICAgICAgICAgICAgICAgICAvKiE8IENoYW5uZWwgNCBIYWxmIFRyYW5zZmVyIGZsYWcgKi8NCiNkZWZpbmUgRE1BX0lTUl9URUlGNF9Qb3MgICAgICAgICAgICAgICAgICAgKDE1VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRE1BX0lTUl9URUlGNF9Nc2sgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgRE1BX0lTUl9URUlGNF9Qb3MpICAgICAgICAvKiE8IDB4MDAwMDgwMDAgKi8NCiNkZWZpbmUgRE1BX0lTUl9URUlGNCAgICAgICAgICAgICAgICAgICAgICAgRE1BX0lTUl9URUlGNF9Nc2sgICAgICAgICAgICAgICAgICAvKiE8IENoYW5uZWwgNCBUcmFuc2ZlciBFcnJvciBmbGFnICovDQojZGVmaW5lIERNQV9JU1JfR0lGNV9Qb3MgICAgICAgICAgICAgICAgICAgICgxNlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIERNQV9JU1JfR0lGNV9Nc2sgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IERNQV9JU1JfR0lGNV9Qb3MpICAgICAgICAgLyohPCAweDAwMDEwMDAwICovDQojZGVmaW5lIERNQV9JU1JfR0lGNSAgICAgICAgICAgICAgICAgICAgICAgIERNQV9JU1JfR0lGNV9Nc2sgICAgICAgICAgICAgICAgICAgLyohPCBDaGFubmVsIDUgR2xvYmFsIGludGVycnVwdCBmbGFnICovDQojZGVmaW5lIERNQV9JU1JfVENJRjVfUG9zICAgICAgICAgICAgICAgICAgICgxN1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIERNQV9JU1JfVENJRjVfTXNrICAgICAgICAgICAgICAgICAgICgweDFVIDw8IERNQV9JU1JfVENJRjVfUG9zKSAgICAgICAgLyohPCAweDAwMDIwMDAwICovDQojZGVmaW5lIERNQV9JU1JfVENJRjUgICAgICAgICAgICAgICAgICAgICAgIERNQV9JU1JfVENJRjVfTXNrICAgICAgICAgICAgICAgICAgLyohPCBDaGFubmVsIDUgVHJhbnNmZXIgQ29tcGxldGUgZmxhZyAqLw0KI2RlZmluZSBETUFfSVNSX0hUSUY1X1BvcyAgICAgICAgICAgICAgICAgICAoMThVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBETUFfSVNSX0hUSUY1X01zayAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBETUFfSVNSX0hUSUY1X1BvcykgICAgICAgIC8qITwgMHgwMDA0MDAwMCAqLw0KI2RlZmluZSBETUFfSVNSX0hUSUY1ICAgICAgICAgICAgICAgICAgICAgICBETUFfSVNSX0hUSUY1X01zayAgICAgICAgICAgICAgICAgIC8qITwgQ2hhbm5lbCA1IEhhbGYgVHJhbnNmZXIgZmxhZyAqLw0KI2RlZmluZSBETUFfSVNSX1RFSUY1X1BvcyAgICAgICAgICAgICAgICAgICAoMTlVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBETUFfSVNSX1RFSUY1X01zayAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBETUFfSVNSX1RFSUY1X1BvcykgICAgICAgIC8qITwgMHgwMDA4MDAwMCAqLw0KI2RlZmluZSBETUFfSVNSX1RFSUY1ICAgICAgICAgICAgICAgICAgICAgICBETUFfSVNSX1RFSUY1X01zayAgICAgICAgICAgICAgICAgIC8qITwgQ2hhbm5lbCA1IFRyYW5zZmVyIEVycm9yIGZsYWcgKi8NCiNkZWZpbmUgRE1BX0lTUl9HSUY2X1BvcyAgICAgICAgICAgICAgICAgICAgKDIwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRE1BX0lTUl9HSUY2X01zayAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgRE1BX0lTUl9HSUY2X1BvcykgICAgICAgICAvKiE8IDB4MDAxMDAwMDAgKi8NCiNkZWZpbmUgRE1BX0lTUl9HSUY2ICAgICAgICAgICAgICAgICAgICAgICAgRE1BX0lTUl9HSUY2X01zayAgICAgICAgICAgICAgICAgICAvKiE8IENoYW5uZWwgNiBHbG9iYWwgaW50ZXJydXB0IGZsYWcgKi8NCiNkZWZpbmUgRE1BX0lTUl9UQ0lGNl9Qb3MgICAgICAgICAgICAgICAgICAgKDIxVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRE1BX0lTUl9UQ0lGNl9Nc2sgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgRE1BX0lTUl9UQ0lGNl9Qb3MpICAgICAgICAvKiE8IDB4MDAyMDAwMDAgKi8NCiNkZWZpbmUgRE1BX0lTUl9UQ0lGNiAgICAgICAgICAgICAgICAgICAgICAgRE1BX0lTUl9UQ0lGNl9Nc2sgICAgICAgICAgICAgICAgICAvKiE8IENoYW5uZWwgNiBUcmFuc2ZlciBDb21wbGV0ZSBmbGFnICovDQojZGVmaW5lIERNQV9JU1JfSFRJRjZfUG9zICAgICAgICAgICAgICAgICAgICgyMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIERNQV9JU1JfSFRJRjZfTXNrICAgICAgICAgICAgICAgICAgICgweDFVIDw8IERNQV9JU1JfSFRJRjZfUG9zKSAgICAgICAgLyohPCAweDAwNDAwMDAwICovDQojZGVmaW5lIERNQV9JU1JfSFRJRjYgICAgICAgICAgICAgICAgICAgICAgIERNQV9JU1JfSFRJRjZfTXNrICAgICAgICAgICAgICAgICAgLyohPCBDaGFubmVsIDYgSGFsZiBUcmFuc2ZlciBmbGFnICovDQojZGVmaW5lIERNQV9JU1JfVEVJRjZfUG9zICAgICAgICAgICAgICAgICAgICgyM1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIERNQV9JU1JfVEVJRjZfTXNrICAgICAgICAgICAgICAgICAgICgweDFVIDw8IERNQV9JU1JfVEVJRjZfUG9zKSAgICAgICAgLyohPCAweDAwODAwMDAwICovDQojZGVmaW5lIERNQV9JU1JfVEVJRjYgICAgICAgICAgICAgICAgICAgICAgIERNQV9JU1JfVEVJRjZfTXNrICAgICAgICAgICAgICAgICAgLyohPCBDaGFubmVsIDYgVHJhbnNmZXIgRXJyb3IgZmxhZyAqLw0KI2RlZmluZSBETUFfSVNSX0dJRjdfUG9zICAgICAgICAgICAgICAgICAgICAoMjRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBETUFfSVNSX0dJRjdfTXNrICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBETUFfSVNSX0dJRjdfUG9zKSAgICAgICAgIC8qITwgMHgwMTAwMDAwMCAqLw0KI2RlZmluZSBETUFfSVNSX0dJRjcgICAgICAgICAgICAgICAgICAgICAgICBETUFfSVNSX0dJRjdfTXNrICAgICAgICAgICAgICAgICAgIC8qITwgQ2hhbm5lbCA3IEdsb2JhbCBpbnRlcnJ1cHQgZmxhZyAqLw0KI2RlZmluZSBETUFfSVNSX1RDSUY3X1BvcyAgICAgICAgICAgICAgICAgICAoMjVVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBETUFfSVNSX1RDSUY3X01zayAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBETUFfSVNSX1RDSUY3X1BvcykgICAgICAgIC8qITwgMHgwMjAwMDAwMCAqLw0KI2RlZmluZSBETUFfSVNSX1RDSUY3ICAgICAgICAgICAgICAgICAgICAgICBETUFfSVNSX1RDSUY3X01zayAgICAgICAgICAgICAgICAgIC8qITwgQ2hhbm5lbCA3IFRyYW5zZmVyIENvbXBsZXRlIGZsYWcgKi8NCiNkZWZpbmUgRE1BX0lTUl9IVElGN19Qb3MgICAgICAgICAgICAgICAgICAgKDI2VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRE1BX0lTUl9IVElGN19Nc2sgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgRE1BX0lTUl9IVElGN19Qb3MpICAgICAgICAvKiE8IDB4MDQwMDAwMDAgKi8NCiNkZWZpbmUgRE1BX0lTUl9IVElGNyAgICAgICAgICAgICAgICAgICAgICAgRE1BX0lTUl9IVElGN19Nc2sgICAgICAgICAgICAgICAgICAvKiE8IENoYW5uZWwgNyBIYWxmIFRyYW5zZmVyIGZsYWcgKi8NCiNkZWZpbmUgRE1BX0lTUl9URUlGN19Qb3MgICAgICAgICAgICAgICAgICAgKDI3VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRE1BX0lTUl9URUlGN19Nc2sgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgRE1BX0lTUl9URUlGN19Qb3MpICAgICAgICAvKiE8IDB4MDgwMDAwMDAgKi8NCiNkZWZpbmUgRE1BX0lTUl9URUlGNyAgICAgICAgICAgICAgICAgICAgICAgRE1BX0lTUl9URUlGN19Nc2sgICAgICAgICAgICAgICAgICAvKiE8IENoYW5uZWwgNyBUcmFuc2ZlciBFcnJvciBmbGFnICovDQoNCi8qKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgRE1BX0lGQ1IgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIERNQV9JRkNSX0NHSUYxX1BvcyAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIERNQV9JRkNSX0NHSUYxX01zayAgICAgICAgICAgICAgICAgICgweDFVIDw8IERNQV9JRkNSX0NHSUYxX1BvcykgICAgICAgLyohPCAweDAwMDAwMDAxICovDQojZGVmaW5lIERNQV9JRkNSX0NHSUYxICAgICAgICAgICAgICAgICAgICAgIERNQV9JRkNSX0NHSUYxX01zayAgICAgICAgICAgICAgICAgLyohPCBDaGFubmVsIDEgR2xvYmFsIGludGVycnVwdCBjbGVhciAqLw0KI2RlZmluZSBETUFfSUZDUl9DVENJRjFfUG9zICAgICAgICAgICAgICAgICAoMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBETUFfSUZDUl9DVENJRjFfTXNrICAgICAgICAgICAgICAgICAoMHgxVSA8PCBETUFfSUZDUl9DVENJRjFfUG9zKSAgICAgIC8qITwgMHgwMDAwMDAwMiAqLw0KI2RlZmluZSBETUFfSUZDUl9DVENJRjEgICAgICAgICAgICAgICAgICAgICBETUFfSUZDUl9DVENJRjFfTXNrICAgICAgICAgICAgICAgIC8qITwgQ2hhbm5lbCAxIFRyYW5zZmVyIENvbXBsZXRlIGNsZWFyICovDQojZGVmaW5lIERNQV9JRkNSX0NIVElGMV9Qb3MgICAgICAgICAgICAgICAgICgyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIERNQV9JRkNSX0NIVElGMV9Nc2sgICAgICAgICAgICAgICAgICgweDFVIDw8IERNQV9JRkNSX0NIVElGMV9Qb3MpICAgICAgLyohPCAweDAwMDAwMDA0ICovDQojZGVmaW5lIERNQV9JRkNSX0NIVElGMSAgICAgICAgICAgICAgICAgICAgIERNQV9JRkNSX0NIVElGMV9Nc2sgICAgICAgICAgICAgICAgLyohPCBDaGFubmVsIDEgSGFsZiBUcmFuc2ZlciBjbGVhciAqLw0KI2RlZmluZSBETUFfSUZDUl9DVEVJRjFfUG9zICAgICAgICAgICAgICAgICAoM1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBETUFfSUZDUl9DVEVJRjFfTXNrICAgICAgICAgICAgICAgICAoMHgxVSA8PCBETUFfSUZDUl9DVEVJRjFfUG9zKSAgICAgIC8qITwgMHgwMDAwMDAwOCAqLw0KI2RlZmluZSBETUFfSUZDUl9DVEVJRjEgICAgICAgICAgICAgICAgICAgICBETUFfSUZDUl9DVEVJRjFfTXNrICAgICAgICAgICAgICAgIC8qITwgQ2hhbm5lbCAxIFRyYW5zZmVyIEVycm9yIGNsZWFyICovDQojZGVmaW5lIERNQV9JRkNSX0NHSUYyX1BvcyAgICAgICAgICAgICAgICAgICg0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIERNQV9JRkNSX0NHSUYyX01zayAgICAgICAgICAgICAgICAgICgweDFVIDw8IERNQV9JRkNSX0NHSUYyX1BvcykgICAgICAgLyohPCAweDAwMDAwMDEwICovDQojZGVmaW5lIERNQV9JRkNSX0NHSUYyICAgICAgICAgICAgICAgICAgICAgIERNQV9JRkNSX0NHSUYyX01zayAgICAgICAgICAgICAgICAgLyohPCBDaGFubmVsIDIgR2xvYmFsIGludGVycnVwdCBjbGVhciAqLw0KI2RlZmluZSBETUFfSUZDUl9DVENJRjJfUG9zICAgICAgICAgICAgICAgICAoNVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBETUFfSUZDUl9DVENJRjJfTXNrICAgICAgICAgICAgICAgICAoMHgxVSA8PCBETUFfSUZDUl9DVENJRjJfUG9zKSAgICAgIC8qITwgMHgwMDAwMDAyMCAqLw0KI2RlZmluZSBETUFfSUZDUl9DVENJRjIgICAgICAgICAgICAgICAgICAgICBETUFfSUZDUl9DVENJRjJfTXNrICAgICAgICAgICAgICAgIC8qITwgQ2hhbm5lbCAyIFRyYW5zZmVyIENvbXBsZXRlIGNsZWFyICovDQojZGVmaW5lIERNQV9JRkNSX0NIVElGMl9Qb3MgICAgICAgICAgICAgICAgICg2VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIERNQV9JRkNSX0NIVElGMl9Nc2sgICAgICAgICAgICAgICAgICgweDFVIDw8IERNQV9JRkNSX0NIVElGMl9Qb3MpICAgICAgLyohPCAweDAwMDAwMDQwICovDQojZGVmaW5lIERNQV9JRkNSX0NIVElGMiAgICAgICAgICAgICAgICAgICAgIERNQV9JRkNSX0NIVElGMl9Nc2sgICAgICAgICAgICAgICAgLyohPCBDaGFubmVsIDIgSGFsZiBUcmFuc2ZlciBjbGVhciAqLw0KI2RlZmluZSBETUFfSUZDUl9DVEVJRjJfUG9zICAgICAgICAgICAgICAgICAoN1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBETUFfSUZDUl9DVEVJRjJfTXNrICAgICAgICAgICAgICAgICAoMHgxVSA8PCBETUFfSUZDUl9DVEVJRjJfUG9zKSAgICAgIC8qITwgMHgwMDAwMDA4MCAqLw0KI2RlZmluZSBETUFfSUZDUl9DVEVJRjIgICAgICAgICAgICAgICAgICAgICBETUFfSUZDUl9DVEVJRjJfTXNrICAgICAgICAgICAgICAgIC8qITwgQ2hhbm5lbCAyIFRyYW5zZmVyIEVycm9yIGNsZWFyICovDQojZGVmaW5lIERNQV9JRkNSX0NHSUYzX1BvcyAgICAgICAgICAgICAgICAgICg4VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIERNQV9JRkNSX0NHSUYzX01zayAgICAgICAgICAgICAgICAgICgweDFVIDw8IERNQV9JRkNSX0NHSUYzX1BvcykgICAgICAgLyohPCAweDAwMDAwMTAwICovDQojZGVmaW5lIERNQV9JRkNSX0NHSUYzICAgICAgICAgICAgICAgICAgICAgIERNQV9JRkNSX0NHSUYzX01zayAgICAgICAgICAgICAgICAgLyohPCBDaGFubmVsIDMgR2xvYmFsIGludGVycnVwdCBjbGVhciAqLw0KI2RlZmluZSBETUFfSUZDUl9DVENJRjNfUG9zICAgICAgICAgICAgICAgICAoOVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBETUFfSUZDUl9DVENJRjNfTXNrICAgICAgICAgICAgICAgICAoMHgxVSA8PCBETUFfSUZDUl9DVENJRjNfUG9zKSAgICAgIC8qITwgMHgwMDAwMDIwMCAqLw0KI2RlZmluZSBETUFfSUZDUl9DVENJRjMgICAgICAgICAgICAgICAgICAgICBETUFfSUZDUl9DVENJRjNfTXNrICAgICAgICAgICAgICAgIC8qITwgQ2hhbm5lbCAzIFRyYW5zZmVyIENvbXBsZXRlIGNsZWFyICovDQojZGVmaW5lIERNQV9JRkNSX0NIVElGM19Qb3MgICAgICAgICAgICAgICAgICgxMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIERNQV9JRkNSX0NIVElGM19Nc2sgICAgICAgICAgICAgICAgICgweDFVIDw8IERNQV9JRkNSX0NIVElGM19Qb3MpICAgICAgLyohPCAweDAwMDAwNDAwICovDQojZGVmaW5lIERNQV9JRkNSX0NIVElGMyAgICAgICAgICAgICAgICAgICAgIERNQV9JRkNSX0NIVElGM19Nc2sgICAgICAgICAgICAgICAgLyohPCBDaGFubmVsIDMgSGFsZiBUcmFuc2ZlciBjbGVhciAqLw0KI2RlZmluZSBETUFfSUZDUl9DVEVJRjNfUG9zICAgICAgICAgICAgICAgICAoMTFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBETUFfSUZDUl9DVEVJRjNfTXNrICAgICAgICAgICAgICAgICAoMHgxVSA8PCBETUFfSUZDUl9DVEVJRjNfUG9zKSAgICAgIC8qITwgMHgwMDAwMDgwMCAqLw0KI2RlZmluZSBETUFfSUZDUl9DVEVJRjMgICAgICAgICAgICAgICAgICAgICBETUFfSUZDUl9DVEVJRjNfTXNrICAgICAgICAgICAgICAgIC8qITwgQ2hhbm5lbCAzIFRyYW5zZmVyIEVycm9yIGNsZWFyICovDQojZGVmaW5lIERNQV9JRkNSX0NHSUY0X1BvcyAgICAgICAgICAgICAgICAgICgxMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIERNQV9JRkNSX0NHSUY0X01zayAgICAgICAgICAgICAgICAgICgweDFVIDw8IERNQV9JRkNSX0NHSUY0X1BvcykgICAgICAgLyohPCAweDAwMDAxMDAwICovDQojZGVmaW5lIERNQV9JRkNSX0NHSUY0ICAgICAgICAgICAgICAgICAgICAgIERNQV9JRkNSX0NHSUY0X01zayAgICAgICAgICAgICAgICAgLyohPCBDaGFubmVsIDQgR2xvYmFsIGludGVycnVwdCBjbGVhciAqLw0KI2RlZmluZSBETUFfSUZDUl9DVENJRjRfUG9zICAgICAgICAgICAgICAgICAoMTNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBETUFfSUZDUl9DVENJRjRfTXNrICAgICAgICAgICAgICAgICAoMHgxVSA8PCBETUFfSUZDUl9DVENJRjRfUG9zKSAgICAgIC8qITwgMHgwMDAwMjAwMCAqLw0KI2RlZmluZSBETUFfSUZDUl9DVENJRjQgICAgICAgICAgICAgICAgICAgICBETUFfSUZDUl9DVENJRjRfTXNrICAgICAgICAgICAgICAgIC8qITwgQ2hhbm5lbCA0IFRyYW5zZmVyIENvbXBsZXRlIGNsZWFyICovDQojZGVmaW5lIERNQV9JRkNSX0NIVElGNF9Qb3MgICAgICAgICAgICAgICAgICgxNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIERNQV9JRkNSX0NIVElGNF9Nc2sgICAgICAgICAgICAgICAgICgweDFVIDw8IERNQV9JRkNSX0NIVElGNF9Qb3MpICAgICAgLyohPCAweDAwMDA0MDAwICovDQojZGVmaW5lIERNQV9JRkNSX0NIVElGNCAgICAgICAgICAgICAgICAgICAgIERNQV9JRkNSX0NIVElGNF9Nc2sgICAgICAgICAgICAgICAgLyohPCBDaGFubmVsIDQgSGFsZiBUcmFuc2ZlciBjbGVhciAqLw0KI2RlZmluZSBETUFfSUZDUl9DVEVJRjRfUG9zICAgICAgICAgICAgICAgICAoMTVVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBETUFfSUZDUl9DVEVJRjRfTXNrICAgICAgICAgICAgICAgICAoMHgxVSA8PCBETUFfSUZDUl9DVEVJRjRfUG9zKSAgICAgIC8qITwgMHgwMDAwODAwMCAqLw0KI2RlZmluZSBETUFfSUZDUl9DVEVJRjQgICAgICAgICAgICAgICAgICAgICBETUFfSUZDUl9DVEVJRjRfTXNrICAgICAgICAgICAgICAgIC8qITwgQ2hhbm5lbCA0IFRyYW5zZmVyIEVycm9yIGNsZWFyICovDQojZGVmaW5lIERNQV9JRkNSX0NHSUY1X1BvcyAgICAgICAgICAgICAgICAgICgxNlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIERNQV9JRkNSX0NHSUY1X01zayAgICAgICAgICAgICAgICAgICgweDFVIDw8IERNQV9JRkNSX0NHSUY1X1BvcykgICAgICAgLyohPCAweDAwMDEwMDAwICovDQojZGVmaW5lIERNQV9JRkNSX0NHSUY1ICAgICAgICAgICAgICAgICAgICAgIERNQV9JRkNSX0NHSUY1X01zayAgICAgICAgICAgICAgICAgLyohPCBDaGFubmVsIDUgR2xvYmFsIGludGVycnVwdCBjbGVhciAqLw0KI2RlZmluZSBETUFfSUZDUl9DVENJRjVfUG9zICAgICAgICAgICAgICAgICAoMTdVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBETUFfSUZDUl9DVENJRjVfTXNrICAgICAgICAgICAgICAgICAoMHgxVSA8PCBETUFfSUZDUl9DVENJRjVfUG9zKSAgICAgIC8qITwgMHgwMDAyMDAwMCAqLw0KI2RlZmluZSBETUFfSUZDUl9DVENJRjUgICAgICAgICAgICAgICAgICAgICBETUFfSUZDUl9DVENJRjVfTXNrICAgICAgICAgICAgICAgIC8qITwgQ2hhbm5lbCA1IFRyYW5zZmVyIENvbXBsZXRlIGNsZWFyICovDQojZGVmaW5lIERNQV9JRkNSX0NIVElGNV9Qb3MgICAgICAgICAgICAgICAgICgxOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIERNQV9JRkNSX0NIVElGNV9Nc2sgICAgICAgICAgICAgICAgICgweDFVIDw8IERNQV9JRkNSX0NIVElGNV9Qb3MpICAgICAgLyohPCAweDAwMDQwMDAwICovDQojZGVmaW5lIERNQV9JRkNSX0NIVElGNSAgICAgICAgICAgICAgICAgICAgIERNQV9JRkNSX0NIVElGNV9Nc2sgICAgICAgICAgICAgICAgLyohPCBDaGFubmVsIDUgSGFsZiBUcmFuc2ZlciBjbGVhciAqLw0KI2RlZmluZSBETUFfSUZDUl9DVEVJRjVfUG9zICAgICAgICAgICAgICAgICAoMTlVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBETUFfSUZDUl9DVEVJRjVfTXNrICAgICAgICAgICAgICAgICAoMHgxVSA8PCBETUFfSUZDUl9DVEVJRjVfUG9zKSAgICAgIC8qITwgMHgwMDA4MDAwMCAqLw0KI2RlZmluZSBETUFfSUZDUl9DVEVJRjUgICAgICAgICAgICAgICAgICAgICBETUFfSUZDUl9DVEVJRjVfTXNrICAgICAgICAgICAgICAgIC8qITwgQ2hhbm5lbCA1IFRyYW5zZmVyIEVycm9yIGNsZWFyICovDQojZGVmaW5lIERNQV9JRkNSX0NHSUY2X1BvcyAgICAgICAgICAgICAgICAgICgyMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIERNQV9JRkNSX0NHSUY2X01zayAgICAgICAgICAgICAgICAgICgweDFVIDw8IERNQV9JRkNSX0NHSUY2X1BvcykgICAgICAgLyohPCAweDAwMTAwMDAwICovDQojZGVmaW5lIERNQV9JRkNSX0NHSUY2ICAgICAgICAgICAgICAgICAgICAgIERNQV9JRkNSX0NHSUY2X01zayAgICAgICAgICAgICAgICAgLyohPCBDaGFubmVsIDYgR2xvYmFsIGludGVycnVwdCBjbGVhciAqLw0KI2RlZmluZSBETUFfSUZDUl9DVENJRjZfUG9zICAgICAgICAgICAgICAgICAoMjFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBETUFfSUZDUl9DVENJRjZfTXNrICAgICAgICAgICAgICAgICAoMHgxVSA8PCBETUFfSUZDUl9DVENJRjZfUG9zKSAgICAgIC8qITwgMHgwMDIwMDAwMCAqLw0KI2RlZmluZSBETUFfSUZDUl9DVENJRjYgICAgICAgICAgICAgICAgICAgICBETUFfSUZDUl9DVENJRjZfTXNrICAgICAgICAgICAgICAgIC8qITwgQ2hhbm5lbCA2IFRyYW5zZmVyIENvbXBsZXRlIGNsZWFyICovDQojZGVmaW5lIERNQV9JRkNSX0NIVElGNl9Qb3MgICAgICAgICAgICAgICAgICgyMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIERNQV9JRkNSX0NIVElGNl9Nc2sgICAgICAgICAgICAgICAgICgweDFVIDw8IERNQV9JRkNSX0NIVElGNl9Qb3MpICAgICAgLyohPCAweDAwNDAwMDAwICovDQojZGVmaW5lIERNQV9JRkNSX0NIVElGNiAgICAgICAgICAgICAgICAgICAgIERNQV9JRkNSX0NIVElGNl9Nc2sgICAgICAgICAgICAgICAgLyohPCBDaGFubmVsIDYgSGFsZiBUcmFuc2ZlciBjbGVhciAqLw0KI2RlZmluZSBETUFfSUZDUl9DVEVJRjZfUG9zICAgICAgICAgICAgICAgICAoMjNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBETUFfSUZDUl9DVEVJRjZfTXNrICAgICAgICAgICAgICAgICAoMHgxVSA8PCBETUFfSUZDUl9DVEVJRjZfUG9zKSAgICAgIC8qITwgMHgwMDgwMDAwMCAqLw0KI2RlZmluZSBETUFfSUZDUl9DVEVJRjYgICAgICAgICAgICAgICAgICAgICBETUFfSUZDUl9DVEVJRjZfTXNrICAgICAgICAgICAgICAgIC8qITwgQ2hhbm5lbCA2IFRyYW5zZmVyIEVycm9yIGNsZWFyICovDQojZGVmaW5lIERNQV9JRkNSX0NHSUY3X1BvcyAgICAgICAgICAgICAgICAgICgyNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIERNQV9JRkNSX0NHSUY3X01zayAgICAgICAgICAgICAgICAgICgweDFVIDw8IERNQV9JRkNSX0NHSUY3X1BvcykgICAgICAgLyohPCAweDAxMDAwMDAwICovDQojZGVmaW5lIERNQV9JRkNSX0NHSUY3ICAgICAgICAgICAgICAgICAgICAgIERNQV9JRkNSX0NHSUY3X01zayAgICAgICAgICAgICAgICAgLyohPCBDaGFubmVsIDcgR2xvYmFsIGludGVycnVwdCBjbGVhciAqLw0KI2RlZmluZSBETUFfSUZDUl9DVENJRjdfUG9zICAgICAgICAgICAgICAgICAoMjVVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBETUFfSUZDUl9DVENJRjdfTXNrICAgICAgICAgICAgICAgICAoMHgxVSA8PCBETUFfSUZDUl9DVENJRjdfUG9zKSAgICAgIC8qITwgMHgwMjAwMDAwMCAqLw0KI2RlZmluZSBETUFfSUZDUl9DVENJRjcgICAgICAgICAgICAgICAgICAgICBETUFfSUZDUl9DVENJRjdfTXNrICAgICAgICAgICAgICAgIC8qITwgQ2hhbm5lbCA3IFRyYW5zZmVyIENvbXBsZXRlIGNsZWFyICovDQojZGVmaW5lIERNQV9JRkNSX0NIVElGN19Qb3MgICAgICAgICAgICAgICAgICgyNlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIERNQV9JRkNSX0NIVElGN19Nc2sgICAgICAgICAgICAgICAgICgweDFVIDw8IERNQV9JRkNSX0NIVElGN19Qb3MpICAgICAgLyohPCAweDA0MDAwMDAwICovDQojZGVmaW5lIERNQV9JRkNSX0NIVElGNyAgICAgICAgICAgICAgICAgICAgIERNQV9JRkNSX0NIVElGN19Nc2sgICAgICAgICAgICAgICAgLyohPCBDaGFubmVsIDcgSGFsZiBUcmFuc2ZlciBjbGVhciAqLw0KI2RlZmluZSBETUFfSUZDUl9DVEVJRjdfUG9zICAgICAgICAgICAgICAgICAoMjdVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBETUFfSUZDUl9DVEVJRjdfTXNrICAgICAgICAgICAgICAgICAoMHgxVSA8PCBETUFfSUZDUl9DVEVJRjdfUG9zKSAgICAgIC8qITwgMHgwODAwMDAwMCAqLw0KI2RlZmluZSBETUFfSUZDUl9DVEVJRjcgICAgICAgICAgICAgICAgICAgICBETUFfSUZDUl9DVEVJRjdfTXNrICAgICAgICAgICAgICAgIC8qITwgQ2hhbm5lbCA3IFRyYW5zZmVyIEVycm9yIGNsZWFyICovDQoNCi8qKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgRE1BX0NDUiByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgRE1BX0NDUl9FTl9Qb3MgICAgICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRE1BX0NDUl9FTl9Nc2sgICAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgRE1BX0NDUl9FTl9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDEgKi8NCiNkZWZpbmUgRE1BX0NDUl9FTiAgICAgICAgICAgICAgICAgICAgICAgICAgRE1BX0NDUl9FTl9Nc2sgICAgICAgICAgICAgICAgICAgICAvKiE8IENoYW5uZWwgZW5hYmxlKi8NCiNkZWZpbmUgRE1BX0NDUl9UQ0lFX1BvcyAgICAgICAgICAgICAgICAgICAgKDFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRE1BX0NDUl9UQ0lFX01zayAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgRE1BX0NDUl9UQ0lFX1BvcykgICAgICAgICAvKiE8IDB4MDAwMDAwMDIgKi8NCiNkZWZpbmUgRE1BX0NDUl9UQ0lFICAgICAgICAgICAgICAgICAgICAgICAgRE1BX0NDUl9UQ0lFX01zayAgICAgICAgICAgICAgICAgICAvKiE8IFRyYW5zZmVyIGNvbXBsZXRlIGludGVycnVwdCBlbmFibGUgKi8NCiNkZWZpbmUgRE1BX0NDUl9IVElFX1BvcyAgICAgICAgICAgICAgICAgICAgKDJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRE1BX0NDUl9IVElFX01zayAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgRE1BX0NDUl9IVElFX1BvcykgICAgICAgICAvKiE8IDB4MDAwMDAwMDQgKi8NCiNkZWZpbmUgRE1BX0NDUl9IVElFICAgICAgICAgICAgICAgICAgICAgICAgRE1BX0NDUl9IVElFX01zayAgICAgICAgICAgICAgICAgICAvKiE8IEhhbGYgVHJhbnNmZXIgaW50ZXJydXB0IGVuYWJsZSAqLw0KI2RlZmluZSBETUFfQ0NSX1RFSUVfUG9zICAgICAgICAgICAgICAgICAgICAoM1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBETUFfQ0NSX1RFSUVfTXNrICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBETUFfQ0NSX1RFSUVfUG9zKSAgICAgICAgIC8qITwgMHgwMDAwMDAwOCAqLw0KI2RlZmluZSBETUFfQ0NSX1RFSUUgICAgICAgICAgICAgICAgICAgICAgICBETUFfQ0NSX1RFSUVfTXNrICAgICAgICAgICAgICAgICAgIC8qITwgVHJhbnNmZXIgZXJyb3IgaW50ZXJydXB0IGVuYWJsZSAqLw0KI2RlZmluZSBETUFfQ0NSX0RJUl9Qb3MgICAgICAgICAgICAgICAgICAgICAoNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBETUFfQ0NSX0RJUl9Nc2sgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBETUFfQ0NSX0RJUl9Qb3MpICAgICAgICAgIC8qITwgMHgwMDAwMDAxMCAqLw0KI2RlZmluZSBETUFfQ0NSX0RJUiAgICAgICAgICAgICAgICAgICAgICAgICBETUFfQ0NSX0RJUl9Nc2sgICAgICAgICAgICAgICAgICAgIC8qITwgRGF0YSB0cmFuc2ZlciBkaXJlY3Rpb24gKi8NCiNkZWZpbmUgRE1BX0NDUl9DSVJDX1BvcyAgICAgICAgICAgICAgICAgICAgKDVVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRE1BX0NDUl9DSVJDX01zayAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgRE1BX0NDUl9DSVJDX1BvcykgICAgICAgICAvKiE8IDB4MDAwMDAwMjAgKi8NCiNkZWZpbmUgRE1BX0NDUl9DSVJDICAgICAgICAgICAgICAgICAgICAgICAgRE1BX0NDUl9DSVJDX01zayAgICAgICAgICAgICAgICAgICAvKiE8IENpcmN1bGFyIG1vZGUgKi8NCiNkZWZpbmUgRE1BX0NDUl9QSU5DX1BvcyAgICAgICAgICAgICAgICAgICAgKDZVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRE1BX0NDUl9QSU5DX01zayAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgRE1BX0NDUl9QSU5DX1BvcykgICAgICAgICAvKiE8IDB4MDAwMDAwNDAgKi8NCiNkZWZpbmUgRE1BX0NDUl9QSU5DICAgICAgICAgICAgICAgICAgICAgICAgRE1BX0NDUl9QSU5DX01zayAgICAgICAgICAgICAgICAgICAvKiE8IFBlcmlwaGVyYWwgaW5jcmVtZW50IG1vZGUgKi8NCiNkZWZpbmUgRE1BX0NDUl9NSU5DX1BvcyAgICAgICAgICAgICAgICAgICAgKDdVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRE1BX0NDUl9NSU5DX01zayAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgRE1BX0NDUl9NSU5DX1BvcykgICAgICAgICAvKiE8IDB4MDAwMDAwODAgKi8NCiNkZWZpbmUgRE1BX0NDUl9NSU5DICAgICAgICAgICAgICAgICAgICAgICAgRE1BX0NDUl9NSU5DX01zayAgICAgICAgICAgICAgICAgICAvKiE8IE1lbW9yeSBpbmNyZW1lbnQgbW9kZSAqLw0KDQojZGVmaW5lIERNQV9DQ1JfUFNJWkVfUG9zICAgICAgICAgICAgICAgICAgICg4VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIERNQV9DQ1JfUFNJWkVfTXNrICAgICAgICAgICAgICAgICAgICgweDNVIDw8IERNQV9DQ1JfUFNJWkVfUG9zKSAgICAgICAgLyohPCAweDAwMDAwMzAwICovDQojZGVmaW5lIERNQV9DQ1JfUFNJWkUgICAgICAgICAgICAgICAgICAgICAgIERNQV9DQ1JfUFNJWkVfTXNrICAgICAgICAgICAgICAgICAgLyohPCBQU0laRVsxOjBdIGJpdHMgKFBlcmlwaGVyYWwgc2l6ZSkgKi8NCiNkZWZpbmUgRE1BX0NDUl9QU0laRV8wICAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgRE1BX0NDUl9QU0laRV9Qb3MpICAgICAgICAvKiE8IDB4MDAwMDAxMDAgKi8NCiNkZWZpbmUgRE1BX0NDUl9QU0laRV8xICAgICAgICAgICAgICAgICAgICAgKDB4MlUgPDwgRE1BX0NDUl9QU0laRV9Qb3MpICAgICAgICAvKiE8IDB4MDAwMDAyMDAgKi8NCg0KI2RlZmluZSBETUFfQ0NSX01TSVpFX1BvcyAgICAgICAgICAgICAgICAgICAoMTBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBETUFfQ0NSX01TSVpFX01zayAgICAgICAgICAgICAgICAgICAoMHgzVSA8PCBETUFfQ0NSX01TSVpFX1BvcykgICAgICAgIC8qITwgMHgwMDAwMEMwMCAqLw0KI2RlZmluZSBETUFfQ0NSX01TSVpFICAgICAgICAgICAgICAgICAgICAgICBETUFfQ0NSX01TSVpFX01zayAgICAgICAgICAgICAgICAgIC8qITwgTVNJWkVbMTowXSBiaXRzIChNZW1vcnkgc2l6ZSkgKi8NCiNkZWZpbmUgRE1BX0NDUl9NU0laRV8wICAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgRE1BX0NDUl9NU0laRV9Qb3MpICAgICAgICAvKiE8IDB4MDAwMDA0MDAgKi8NCiNkZWZpbmUgRE1BX0NDUl9NU0laRV8xICAgICAgICAgICAgICAgICAgICAgKDB4MlUgPDwgRE1BX0NDUl9NU0laRV9Qb3MpICAgICAgICAvKiE8IDB4MDAwMDA4MDAgKi8NCg0KI2RlZmluZSBETUFfQ0NSX1BMX1BvcyAgICAgICAgICAgICAgICAgICAgICAoMTJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBETUFfQ0NSX1BMX01zayAgICAgICAgICAgICAgICAgICAgICAoMHgzVSA8PCBETUFfQ0NSX1BMX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMzAwMCAqLw0KI2RlZmluZSBETUFfQ0NSX1BMICAgICAgICAgICAgICAgICAgICAgICAgICBETUFfQ0NSX1BMX01zayAgICAgICAgICAgICAgICAgICAgIC8qITwgUExbMTowXSBiaXRzKENoYW5uZWwgUHJpb3JpdHkgbGV2ZWwpICovDQojZGVmaW5lIERNQV9DQ1JfUExfMCAgICAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IERNQV9DQ1JfUExfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAxMDAwICovDQojZGVmaW5lIERNQV9DQ1JfUExfMSAgICAgICAgICAgICAgICAgICAgICAgICgweDJVIDw8IERNQV9DQ1JfUExfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAyMDAwICovDQoNCiNkZWZpbmUgRE1BX0NDUl9NRU0yTUVNX1BvcyAgICAgICAgICAgICAgICAgKDE0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRE1BX0NDUl9NRU0yTUVNX01zayAgICAgICAgICAgICAgICAgKDB4MVUgPDwgRE1BX0NDUl9NRU0yTUVNX1BvcykgICAgICAvKiE8IDB4MDAwMDQwMDAgKi8NCiNkZWZpbmUgRE1BX0NDUl9NRU0yTUVNICAgICAgICAgICAgICAgICAgICAgRE1BX0NDUl9NRU0yTUVNX01zayAgICAgICAgICAgICAgICAvKiE8IE1lbW9yeSB0byBtZW1vcnkgbW9kZSAqLw0KDQovKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBnZW5lcmljIGZvciBETUFfQ05EVFIgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIERNQV9DTkRUUl9ORFRfUG9zICAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIERNQV9DTkRUUl9ORFRfTXNrICAgICAgICAgICAgICAgICAgICgweEZGRkZVIDw8IERNQV9DTkRUUl9ORFRfUG9zKSAgICAgLyohPCAweDAwMDBGRkZGICovDQojZGVmaW5lIERNQV9DTkRUUl9ORFQgICAgICAgICAgICAgICAgICAgICAgIERNQV9DTkRUUl9ORFRfTXNrICAgICAgICAgICAgICAgICAgLyohPCBOdW1iZXIgb2YgZGF0YSB0byBUcmFuc2ZlciAqLw0KDQovKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgRE1BX0NORFRSMSByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBETUFfQ05EVFIxX05EVF9Qb3MgICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBETUFfQ05EVFIxX05EVF9Nc2sgICAgICAgICAgICAgICAgICAoMHhGRkZGVSA8PCBETUFfQ05EVFIxX05EVF9Qb3MpICAgIC8qITwgMHgwMDAwRkZGRiAqLw0KI2RlZmluZSBETUFfQ05EVFIxX05EVCAgICAgICAgICAgICAgICAgICAgICBETUFfQ05EVFIxX05EVF9Nc2sgICAgICAgICAgICAgICAgIC8qITwgTnVtYmVyIG9mIGRhdGEgdG8gVHJhbnNmZXIgKi8NCg0KLyoqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIERNQV9DTkRUUjIgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgRE1BX0NORFRSMl9ORFRfUG9zICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRE1BX0NORFRSMl9ORFRfTXNrICAgICAgICAgICAgICAgICAgKDB4RkZGRlUgPDwgRE1BX0NORFRSMl9ORFRfUG9zKSAgICAvKiE8IDB4MDAwMEZGRkYgKi8NCiNkZWZpbmUgRE1BX0NORFRSMl9ORFQgICAgICAgICAgICAgICAgICAgICAgRE1BX0NORFRSMl9ORFRfTXNrICAgICAgICAgICAgICAgICAvKiE8IE51bWJlciBvZiBkYXRhIHRvIFRyYW5zZmVyICovDQoNCi8qKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBETUFfQ05EVFIzIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIERNQV9DTkRUUjNfTkRUX1BvcyAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIERNQV9DTkRUUjNfTkRUX01zayAgICAgICAgICAgICAgICAgICgweEZGRkZVIDw8IERNQV9DTkRUUjNfTkRUX1BvcykgICAgLyohPCAweDAwMDBGRkZGICovDQojZGVmaW5lIERNQV9DTkRUUjNfTkRUICAgICAgICAgICAgICAgICAgICAgIERNQV9DTkRUUjNfTkRUX01zayAgICAgICAgICAgICAgICAgLyohPCBOdW1iZXIgb2YgZGF0YSB0byBUcmFuc2ZlciAqLw0KDQovKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgRE1BX0NORFRSNCByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBETUFfQ05EVFI0X05EVF9Qb3MgICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBETUFfQ05EVFI0X05EVF9Nc2sgICAgICAgICAgICAgICAgICAoMHhGRkZGVSA8PCBETUFfQ05EVFI0X05EVF9Qb3MpICAgIC8qITwgMHgwMDAwRkZGRiAqLw0KI2RlZmluZSBETUFfQ05EVFI0X05EVCAgICAgICAgICAgICAgICAgICAgICBETUFfQ05EVFI0X05EVF9Nc2sgICAgICAgICAgICAgICAgIC8qITwgTnVtYmVyIG9mIGRhdGEgdG8gVHJhbnNmZXIgKi8NCg0KLyoqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIERNQV9DTkRUUjUgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgRE1BX0NORFRSNV9ORFRfUG9zICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRE1BX0NORFRSNV9ORFRfTXNrICAgICAgICAgICAgICAgICAgKDB4RkZGRlUgPDwgRE1BX0NORFRSNV9ORFRfUG9zKSAgICAvKiE8IDB4MDAwMEZGRkYgKi8NCiNkZWZpbmUgRE1BX0NORFRSNV9ORFQgICAgICAgICAgICAgICAgICAgICAgRE1BX0NORFRSNV9ORFRfTXNrICAgICAgICAgICAgICAgICAvKiE8IE51bWJlciBvZiBkYXRhIHRvIFRyYW5zZmVyICovDQoNCi8qKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBETUFfQ05EVFI2IHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIERNQV9DTkRUUjZfTkRUX1BvcyAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIERNQV9DTkRUUjZfTkRUX01zayAgICAgICAgICAgICAgICAgICgweEZGRkZVIDw8IERNQV9DTkRUUjZfTkRUX1BvcykgICAgLyohPCAweDAwMDBGRkZGICovDQojZGVmaW5lIERNQV9DTkRUUjZfTkRUICAgICAgICAgICAgICAgICAgICAgIERNQV9DTkRUUjZfTkRUX01zayAgICAgICAgICAgICAgICAgLyohPCBOdW1iZXIgb2YgZGF0YSB0byBUcmFuc2ZlciAqLw0KDQovKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgRE1BX0NORFRSNyByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBETUFfQ05EVFI3X05EVF9Qb3MgICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBETUFfQ05EVFI3X05EVF9Nc2sgICAgICAgICAgICAgICAgICAoMHhGRkZGVSA8PCBETUFfQ05EVFI3X05EVF9Qb3MpICAgIC8qITwgMHgwMDAwRkZGRiAqLw0KI2RlZmluZSBETUFfQ05EVFI3X05EVCAgICAgICAgICAgICAgICAgICAgICBETUFfQ05EVFI3X05EVF9Nc2sgICAgICAgICAgICAgICAgIC8qITwgTnVtYmVyIG9mIGRhdGEgdG8gVHJhbnNmZXIgKi8NCg0KLyoqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZ2VuZXJpYyBmb3IgRE1BX0NQQVIgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBETUFfQ1BBUl9QQV9Qb3MgICAgICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBETUFfQ1BBUl9QQV9Nc2sgICAgICAgICAgICAgICAgICAgICAoMHhGRkZGRkZGRlUgPDwgRE1BX0NQQVJfUEFfUG9zKSAgIC8qITwgMHhGRkZGRkZGRiAqLw0KI2RlZmluZSBETUFfQ1BBUl9QQSAgICAgICAgICAgICAgICAgICAgICAgICBETUFfQ1BBUl9QQV9Nc2sgICAgICAgICAgICAgICAgICAgIC8qITwgUGVyaXBoZXJhbCBBZGRyZXNzICovDQoNCi8qKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBETUFfQ1BBUjEgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIERNQV9DUEFSMV9QQV9Qb3MgICAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIERNQV9DUEFSMV9QQV9Nc2sgICAgICAgICAgICAgICAgICAgICgweEZGRkZGRkZGVSA8PCBETUFfQ1BBUjFfUEFfUG9zKSAgLyohPCAweEZGRkZGRkZGICovDQojZGVmaW5lIERNQV9DUEFSMV9QQSAgICAgICAgICAgICAgICAgICAgICAgIERNQV9DUEFSMV9QQV9Nc2sgICAgICAgICAgICAgICAgICAgLyohPCBQZXJpcGhlcmFsIEFkZHJlc3MgKi8NCg0KLyoqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIERNQV9DUEFSMiByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgRE1BX0NQQVIyX1BBX1BvcyAgICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRE1BX0NQQVIyX1BBX01zayAgICAgICAgICAgICAgICAgICAgKDB4RkZGRkZGRkZVIDw8IERNQV9DUEFSMl9QQV9Qb3MpICAvKiE8IDB4RkZGRkZGRkYgKi8NCiNkZWZpbmUgRE1BX0NQQVIyX1BBICAgICAgICAgICAgICAgICAgICAgICAgRE1BX0NQQVIyX1BBX01zayAgICAgICAgICAgICAgICAgICAvKiE8IFBlcmlwaGVyYWwgQWRkcmVzcyAqLw0KDQovKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgRE1BX0NQQVIzIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBETUFfQ1BBUjNfUEFfUG9zICAgICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBETUFfQ1BBUjNfUEFfTXNrICAgICAgICAgICAgICAgICAgICAoMHhGRkZGRkZGRlUgPDwgRE1BX0NQQVIzX1BBX1BvcykgIC8qITwgMHhGRkZGRkZGRiAqLw0KI2RlZmluZSBETUFfQ1BBUjNfUEEgICAgICAgICAgICAgICAgICAgICAgICBETUFfQ1BBUjNfUEFfTXNrICAgICAgICAgICAgICAgICAgIC8qITwgUGVyaXBoZXJhbCBBZGRyZXNzICovDQoNCg0KLyoqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIERNQV9DUEFSNCByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgRE1BX0NQQVI0X1BBX1BvcyAgICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRE1BX0NQQVI0X1BBX01zayAgICAgICAgICAgICAgICAgICAgKDB4RkZGRkZGRkZVIDw8IERNQV9DUEFSNF9QQV9Qb3MpICAvKiE8IDB4RkZGRkZGRkYgKi8NCiNkZWZpbmUgRE1BX0NQQVI0X1BBICAgICAgICAgICAgICAgICAgICAgICAgRE1BX0NQQVI0X1BBX01zayAgICAgICAgICAgICAgICAgICAvKiE8IFBlcmlwaGVyYWwgQWRkcmVzcyAqLw0KDQovKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgRE1BX0NQQVI1IHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBETUFfQ1BBUjVfUEFfUG9zICAgICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBETUFfQ1BBUjVfUEFfTXNrICAgICAgICAgICAgICAgICAgICAoMHhGRkZGRkZGRlUgPDwgRE1BX0NQQVI1X1BBX1BvcykgIC8qITwgMHhGRkZGRkZGRiAqLw0KI2RlZmluZSBETUFfQ1BBUjVfUEEgICAgICAgICAgICAgICAgICAgICAgICBETUFfQ1BBUjVfUEFfTXNrICAgICAgICAgICAgICAgICAgIC8qITwgUGVyaXBoZXJhbCBBZGRyZXNzICovDQoNCi8qKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBETUFfQ1BBUjYgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIERNQV9DUEFSNl9QQV9Qb3MgICAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIERNQV9DUEFSNl9QQV9Nc2sgICAgICAgICAgICAgICAgICAgICgweEZGRkZGRkZGVSA8PCBETUFfQ1BBUjZfUEFfUG9zKSAgLyohPCAweEZGRkZGRkZGICovDQojZGVmaW5lIERNQV9DUEFSNl9QQSAgICAgICAgICAgICAgICAgICAgICAgIERNQV9DUEFSNl9QQV9Nc2sgICAgICAgICAgICAgICAgICAgLyohPCBQZXJpcGhlcmFsIEFkZHJlc3MgKi8NCg0KDQovKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgRE1BX0NQQVI3IHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBETUFfQ1BBUjdfUEFfUG9zICAgICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBETUFfQ1BBUjdfUEFfTXNrICAgICAgICAgICAgICAgICAgICAoMHhGRkZGRkZGRlUgPDwgRE1BX0NQQVI3X1BBX1BvcykgIC8qITwgMHhGRkZGRkZGRiAqLw0KI2RlZmluZSBETUFfQ1BBUjdfUEEgICAgICAgICAgICAgICAgICAgICAgICBETUFfQ1BBUjdfUEFfTXNrICAgICAgICAgICAgICAgICAgIC8qITwgUGVyaXBoZXJhbCBBZGRyZXNzICovDQoNCi8qKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGdlbmVyaWMgZm9yIERNQV9DTUFSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgRE1BX0NNQVJfTUFfUG9zICAgICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRE1BX0NNQVJfTUFfTXNrICAgICAgICAgICAgICAgICAgICAgKDB4RkZGRkZGRkZVIDw8IERNQV9DTUFSX01BX1BvcykgICAvKiE8IDB4RkZGRkZGRkYgKi8NCiNkZWZpbmUgRE1BX0NNQVJfTUEgICAgICAgICAgICAgICAgICAgICAgICAgRE1BX0NNQVJfTUFfTXNrICAgICAgICAgICAgICAgICAgICAvKiE8IE1lbW9yeSBBZGRyZXNzICovDQoNCi8qKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBETUFfQ01BUjEgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIERNQV9DTUFSMV9NQV9Qb3MgICAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIERNQV9DTUFSMV9NQV9Nc2sgICAgICAgICAgICAgICAgICAgICgweEZGRkZGRkZGVSA8PCBETUFfQ01BUjFfTUFfUG9zKSAgLyohPCAweEZGRkZGRkZGICovDQojZGVmaW5lIERNQV9DTUFSMV9NQSAgICAgICAgICAgICAgICAgICAgICAgIERNQV9DTUFSMV9NQV9Nc2sgICAgICAgICAgICAgICAgICAgLyohPCBNZW1vcnkgQWRkcmVzcyAqLw0KDQovKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgRE1BX0NNQVIyIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBETUFfQ01BUjJfTUFfUG9zICAgICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBETUFfQ01BUjJfTUFfTXNrICAgICAgICAgICAgICAgICAgICAoMHhGRkZGRkZGRlUgPDwgRE1BX0NNQVIyX01BX1BvcykgIC8qITwgMHhGRkZGRkZGRiAqLw0KI2RlZmluZSBETUFfQ01BUjJfTUEgICAgICAgICAgICAgICAgICAgICAgICBETUFfQ01BUjJfTUFfTXNrICAgICAgICAgICAgICAgICAgIC8qITwgTWVtb3J5IEFkZHJlc3MgKi8NCg0KLyoqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIERNQV9DTUFSMyByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgRE1BX0NNQVIzX01BX1BvcyAgICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRE1BX0NNQVIzX01BX01zayAgICAgICAgICAgICAgICAgICAgKDB4RkZGRkZGRkZVIDw8IERNQV9DTUFSM19NQV9Qb3MpICAvKiE8IDB4RkZGRkZGRkYgKi8NCiNkZWZpbmUgRE1BX0NNQVIzX01BICAgICAgICAgICAgICAgICAgICAgICAgRE1BX0NNQVIzX01BX01zayAgICAgICAgICAgICAgICAgICAvKiE8IE1lbW9yeSBBZGRyZXNzICovDQoNCg0KLyoqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIERNQV9DTUFSNCByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgRE1BX0NNQVI0X01BX1BvcyAgICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRE1BX0NNQVI0X01BX01zayAgICAgICAgICAgICAgICAgICAgKDB4RkZGRkZGRkZVIDw8IERNQV9DTUFSNF9NQV9Qb3MpICAvKiE8IDB4RkZGRkZGRkYgKi8NCiNkZWZpbmUgRE1BX0NNQVI0X01BICAgICAgICAgICAgICAgICAgICAgICAgRE1BX0NNQVI0X01BX01zayAgICAgICAgICAgICAgICAgICAvKiE8IE1lbW9yeSBBZGRyZXNzICovDQoNCi8qKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBETUFfQ01BUjUgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIERNQV9DTUFSNV9NQV9Qb3MgICAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIERNQV9DTUFSNV9NQV9Nc2sgICAgICAgICAgICAgICAgICAgICgweEZGRkZGRkZGVSA8PCBETUFfQ01BUjVfTUFfUG9zKSAgLyohPCAweEZGRkZGRkZGICovDQojZGVmaW5lIERNQV9DTUFSNV9NQSAgICAgICAgICAgICAgICAgICAgICAgIERNQV9DTUFSNV9NQV9Nc2sgICAgICAgICAgICAgICAgICAgLyohPCBNZW1vcnkgQWRkcmVzcyAqLw0KDQovKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgRE1BX0NNQVI2IHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBETUFfQ01BUjZfTUFfUG9zICAgICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBETUFfQ01BUjZfTUFfTXNrICAgICAgICAgICAgICAgICAgICAoMHhGRkZGRkZGRlUgPDwgRE1BX0NNQVI2X01BX1BvcykgIC8qITwgMHhGRkZGRkZGRiAqLw0KI2RlZmluZSBETUFfQ01BUjZfTUEgICAgICAgICAgICAgICAgICAgICAgICBETUFfQ01BUjZfTUFfTXNrICAgICAgICAgICAgICAgICAgIC8qITwgTWVtb3J5IEFkZHJlc3MgKi8NCg0KLyoqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIERNQV9DTUFSNyByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgRE1BX0NNQVI3X01BX1BvcyAgICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRE1BX0NNQVI3X01BX01zayAgICAgICAgICAgICAgICAgICAgKDB4RkZGRkZGRkZVIDw8IERNQV9DTUFSN19NQV9Qb3MpICAvKiE8IDB4RkZGRkZGRkYgKi8NCiNkZWZpbmUgRE1BX0NNQVI3X01BICAgICAgICAgICAgICAgICAgICAgICAgRE1BX0NNQVI3X01BX01zayAgICAgICAgICAgICAgICAgICAvKiE8IE1lbW9yeSBBZGRyZXNzICovDQoNCi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovDQovKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLw0KLyogICAgICAgICAgICAgICAgICBFeHRlcm5hbCBJbnRlcnJ1cHQvRXZlbnQgQ29udHJvbGxlciAoRVhUSSkgICAgICAgICAgICAgICAgKi8NCi8qICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovDQovKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLw0KDQovKioqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIEVYVElfSU1SIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBFWFRJX0lNUl9NUjBfUG9zICAgICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBFWFRJX0lNUl9NUjBfTXNrICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBFWFRJX0lNUl9NUjBfUG9zKSAgICAgICAgIC8qITwgMHgwMDAwMDAwMSAqLw0KI2RlZmluZSBFWFRJX0lNUl9NUjAgICAgICAgICAgICAgICAgICAgICAgICBFWFRJX0lNUl9NUjBfTXNrICAgICAgICAgICAgICAgICAgIC8qITwgSW50ZXJydXB0IE1hc2sgb24gbGluZSAwICovDQojZGVmaW5lIEVYVElfSU1SX01SMV9Qb3MgICAgICAgICAgICAgICAgICAgICgxVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEVYVElfSU1SX01SMV9Nc2sgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IEVYVElfSU1SX01SMV9Qb3MpICAgICAgICAgLyohPCAweDAwMDAwMDAyICovDQojZGVmaW5lIEVYVElfSU1SX01SMSAgICAgICAgICAgICAgICAgICAgICAgIEVYVElfSU1SX01SMV9Nc2sgICAgICAgICAgICAgICAgICAgLyohPCBJbnRlcnJ1cHQgTWFzayBvbiBsaW5lIDEgKi8NCiNkZWZpbmUgRVhUSV9JTVJfTVIyX1BvcyAgICAgICAgICAgICAgICAgICAgKDJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRVhUSV9JTVJfTVIyX01zayAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgRVhUSV9JTVJfTVIyX1BvcykgICAgICAgICAvKiE8IDB4MDAwMDAwMDQgKi8NCiNkZWZpbmUgRVhUSV9JTVJfTVIyICAgICAgICAgICAgICAgICAgICAgICAgRVhUSV9JTVJfTVIyX01zayAgICAgICAgICAgICAgICAgICAvKiE8IEludGVycnVwdCBNYXNrIG9uIGxpbmUgMiAqLw0KI2RlZmluZSBFWFRJX0lNUl9NUjNfUG9zICAgICAgICAgICAgICAgICAgICAoM1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBFWFRJX0lNUl9NUjNfTXNrICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBFWFRJX0lNUl9NUjNfUG9zKSAgICAgICAgIC8qITwgMHgwMDAwMDAwOCAqLw0KI2RlZmluZSBFWFRJX0lNUl9NUjMgICAgICAgICAgICAgICAgICAgICAgICBFWFRJX0lNUl9NUjNfTXNrICAgICAgICAgICAgICAgICAgIC8qITwgSW50ZXJydXB0IE1hc2sgb24gbGluZSAzICovDQojZGVmaW5lIEVYVElfSU1SX01SNF9Qb3MgICAgICAgICAgICAgICAgICAgICg0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEVYVElfSU1SX01SNF9Nc2sgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IEVYVElfSU1SX01SNF9Qb3MpICAgICAgICAgLyohPCAweDAwMDAwMDEwICovDQojZGVmaW5lIEVYVElfSU1SX01SNCAgICAgICAgICAgICAgICAgICAgICAgIEVYVElfSU1SX01SNF9Nc2sgICAgICAgICAgICAgICAgICAgLyohPCBJbnRlcnJ1cHQgTWFzayBvbiBsaW5lIDQgKi8NCiNkZWZpbmUgRVhUSV9JTVJfTVI1X1BvcyAgICAgICAgICAgICAgICAgICAgKDVVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRVhUSV9JTVJfTVI1X01zayAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgRVhUSV9JTVJfTVI1X1BvcykgICAgICAgICAvKiE8IDB4MDAwMDAwMjAgKi8NCiNkZWZpbmUgRVhUSV9JTVJfTVI1ICAgICAgICAgICAgICAgICAgICAgICAgRVhUSV9JTVJfTVI1X01zayAgICAgICAgICAgICAgICAgICAvKiE8IEludGVycnVwdCBNYXNrIG9uIGxpbmUgNSAqLw0KI2RlZmluZSBFWFRJX0lNUl9NUjZfUG9zICAgICAgICAgICAgICAgICAgICAoNlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBFWFRJX0lNUl9NUjZfTXNrICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBFWFRJX0lNUl9NUjZfUG9zKSAgICAgICAgIC8qITwgMHgwMDAwMDA0MCAqLw0KI2RlZmluZSBFWFRJX0lNUl9NUjYgICAgICAgICAgICAgICAgICAgICAgICBFWFRJX0lNUl9NUjZfTXNrICAgICAgICAgICAgICAgICAgIC8qITwgSW50ZXJydXB0IE1hc2sgb24gbGluZSA2ICovDQojZGVmaW5lIEVYVElfSU1SX01SN19Qb3MgICAgICAgICAgICAgICAgICAgICg3VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEVYVElfSU1SX01SN19Nc2sgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IEVYVElfSU1SX01SN19Qb3MpICAgICAgICAgLyohPCAweDAwMDAwMDgwICovDQojZGVmaW5lIEVYVElfSU1SX01SNyAgICAgICAgICAgICAgICAgICAgICAgIEVYVElfSU1SX01SN19Nc2sgICAgICAgICAgICAgICAgICAgLyohPCBJbnRlcnJ1cHQgTWFzayBvbiBsaW5lIDcgKi8NCiNkZWZpbmUgRVhUSV9JTVJfTVI4X1BvcyAgICAgICAgICAgICAgICAgICAgKDhVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRVhUSV9JTVJfTVI4X01zayAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgRVhUSV9JTVJfTVI4X1BvcykgICAgICAgICAvKiE8IDB4MDAwMDAxMDAgKi8NCiNkZWZpbmUgRVhUSV9JTVJfTVI4ICAgICAgICAgICAgICAgICAgICAgICAgRVhUSV9JTVJfTVI4X01zayAgICAgICAgICAgICAgICAgICAvKiE8IEludGVycnVwdCBNYXNrIG9uIGxpbmUgOCAqLw0KI2RlZmluZSBFWFRJX0lNUl9NUjlfUG9zICAgICAgICAgICAgICAgICAgICAoOVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBFWFRJX0lNUl9NUjlfTXNrICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBFWFRJX0lNUl9NUjlfUG9zKSAgICAgICAgIC8qITwgMHgwMDAwMDIwMCAqLw0KI2RlZmluZSBFWFRJX0lNUl9NUjkgICAgICAgICAgICAgICAgICAgICAgICBFWFRJX0lNUl9NUjlfTXNrICAgICAgICAgICAgICAgICAgIC8qITwgSW50ZXJydXB0IE1hc2sgb24gbGluZSA5ICovDQojZGVmaW5lIEVYVElfSU1SX01SMTBfUG9zICAgICAgICAgICAgICAgICAgICgxMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEVYVElfSU1SX01SMTBfTXNrICAgICAgICAgICAgICAgICAgICgweDFVIDw8IEVYVElfSU1SX01SMTBfUG9zKSAgICAgICAgLyohPCAweDAwMDAwNDAwICovDQojZGVmaW5lIEVYVElfSU1SX01SMTAgICAgICAgICAgICAgICAgICAgICAgIEVYVElfSU1SX01SMTBfTXNrICAgICAgICAgICAgICAgICAgLyohPCBJbnRlcnJ1cHQgTWFzayBvbiBsaW5lIDEwICovDQojZGVmaW5lIEVYVElfSU1SX01SMTFfUG9zICAgICAgICAgICAgICAgICAgICgxMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEVYVElfSU1SX01SMTFfTXNrICAgICAgICAgICAgICAgICAgICgweDFVIDw8IEVYVElfSU1SX01SMTFfUG9zKSAgICAgICAgLyohPCAweDAwMDAwODAwICovDQojZGVmaW5lIEVYVElfSU1SX01SMTEgICAgICAgICAgICAgICAgICAgICAgIEVYVElfSU1SX01SMTFfTXNrICAgICAgICAgICAgICAgICAgLyohPCBJbnRlcnJ1cHQgTWFzayBvbiBsaW5lIDExICovDQojZGVmaW5lIEVYVElfSU1SX01SMTJfUG9zICAgICAgICAgICAgICAgICAgICgxMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEVYVElfSU1SX01SMTJfTXNrICAgICAgICAgICAgICAgICAgICgweDFVIDw8IEVYVElfSU1SX01SMTJfUG9zKSAgICAgICAgLyohPCAweDAwMDAxMDAwICovDQojZGVmaW5lIEVYVElfSU1SX01SMTIgICAgICAgICAgICAgICAgICAgICAgIEVYVElfSU1SX01SMTJfTXNrICAgICAgICAgICAgICAgICAgLyohPCBJbnRlcnJ1cHQgTWFzayBvbiBsaW5lIDEyICovDQojZGVmaW5lIEVYVElfSU1SX01SMTNfUG9zICAgICAgICAgICAgICAgICAgICgxM1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEVYVElfSU1SX01SMTNfTXNrICAgICAgICAgICAgICAgICAgICgweDFVIDw8IEVYVElfSU1SX01SMTNfUG9zKSAgICAgICAgLyohPCAweDAwMDAyMDAwICovDQojZGVmaW5lIEVYVElfSU1SX01SMTMgICAgICAgICAgICAgICAgICAgICAgIEVYVElfSU1SX01SMTNfTXNrICAgICAgICAgICAgICAgICAgLyohPCBJbnRlcnJ1cHQgTWFzayBvbiBsaW5lIDEzICovDQojZGVmaW5lIEVYVElfSU1SX01SMTRfUG9zICAgICAgICAgICAgICAgICAgICgxNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEVYVElfSU1SX01SMTRfTXNrICAgICAgICAgICAgICAgICAgICgweDFVIDw8IEVYVElfSU1SX01SMTRfUG9zKSAgICAgICAgLyohPCAweDAwMDA0MDAwICovDQojZGVmaW5lIEVYVElfSU1SX01SMTQgICAgICAgICAgICAgICAgICAgICAgIEVYVElfSU1SX01SMTRfTXNrICAgICAgICAgICAgICAgICAgLyohPCBJbnRlcnJ1cHQgTWFzayBvbiBsaW5lIDE0ICovDQojZGVmaW5lIEVYVElfSU1SX01SMTVfUG9zICAgICAgICAgICAgICAgICAgICgxNVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEVYVElfSU1SX01SMTVfTXNrICAgICAgICAgICAgICAgICAgICgweDFVIDw8IEVYVElfSU1SX01SMTVfUG9zKSAgICAgICAgLyohPCAweDAwMDA4MDAwICovDQojZGVmaW5lIEVYVElfSU1SX01SMTUgICAgICAgICAgICAgICAgICAgICAgIEVYVElfSU1SX01SMTVfTXNrICAgICAgICAgICAgICAgICAgLyohPCBJbnRlcnJ1cHQgTWFzayBvbiBsaW5lIDE1ICovDQojZGVmaW5lIEVYVElfSU1SX01SMTZfUG9zICAgICAgICAgICAgICAgICAgICgxNlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEVYVElfSU1SX01SMTZfTXNrICAgICAgICAgICAgICAgICAgICgweDFVIDw8IEVYVElfSU1SX01SMTZfUG9zKSAgICAgICAgLyohPCAweDAwMDEwMDAwICovDQojZGVmaW5lIEVYVElfSU1SX01SMTYgICAgICAgICAgICAgICAgICAgICAgIEVYVElfSU1SX01SMTZfTXNrICAgICAgICAgICAgICAgICAgLyohPCBJbnRlcnJ1cHQgTWFzayBvbiBsaW5lIDE2ICovDQojZGVmaW5lIEVYVElfSU1SX01SMTdfUG9zICAgICAgICAgICAgICAgICAgICgxN1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEVYVElfSU1SX01SMTdfTXNrICAgICAgICAgICAgICAgICAgICgweDFVIDw8IEVYVElfSU1SX01SMTdfUG9zKSAgICAgICAgLyohPCAweDAwMDIwMDAwICovDQojZGVmaW5lIEVYVElfSU1SX01SMTcgICAgICAgICAgICAgICAgICAgICAgIEVYVElfSU1SX01SMTdfTXNrICAgICAgICAgICAgICAgICAgLyohPCBJbnRlcnJ1cHQgTWFzayBvbiBsaW5lIDE3ICovDQojZGVmaW5lIEVYVElfSU1SX01SMThfUG9zICAgICAgICAgICAgICAgICAgICgxOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEVYVElfSU1SX01SMThfTXNrICAgICAgICAgICAgICAgICAgICgweDFVIDw8IEVYVElfSU1SX01SMThfUG9zKSAgICAgICAgLyohPCAweDAwMDQwMDAwICovDQojZGVmaW5lIEVYVElfSU1SX01SMTggICAgICAgICAgICAgICAgICAgICAgIEVYVElfSU1SX01SMThfTXNrICAgICAgICAgICAgICAgICAgLyohPCBJbnRlcnJ1cHQgTWFzayBvbiBsaW5lIDE4ICovDQojZGVmaW5lIEVYVElfSU1SX01SMTlfUG9zICAgICAgICAgICAgICAgICAgICgxOVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEVYVElfSU1SX01SMTlfTXNrICAgICAgICAgICAgICAgICAgICgweDFVIDw8IEVYVElfSU1SX01SMTlfUG9zKSAgICAgICAgLyohPCAweDAwMDgwMDAwICovDQojZGVmaW5lIEVYVElfSU1SX01SMTkgICAgICAgICAgICAgICAgICAgICAgIEVYVElfSU1SX01SMTlfTXNrICAgICAgICAgICAgICAgICAgLyohPCBJbnRlcnJ1cHQgTWFzayBvbiBsaW5lIDE5ICovDQojZGVmaW5lIEVYVElfSU1SX01SMjBfUG9zICAgICAgICAgICAgICAgICAgICgyMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEVYVElfSU1SX01SMjBfTXNrICAgICAgICAgICAgICAgICAgICgweDFVIDw8IEVYVElfSU1SX01SMjBfUG9zKSAgICAgICAgLyohPCAweDAwMTAwMDAwICovDQojZGVmaW5lIEVYVElfSU1SX01SMjAgICAgICAgICAgICAgICAgICAgICAgIEVYVElfSU1SX01SMjBfTXNrICAgICAgICAgICAgICAgICAgLyohPCBJbnRlcnJ1cHQgTWFzayBvbiBsaW5lIDIwICovDQojZGVmaW5lIEVYVElfSU1SX01SMjFfUG9zICAgICAgICAgICAgICAgICAgICgyMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEVYVElfSU1SX01SMjFfTXNrICAgICAgICAgICAgICAgICAgICgweDFVIDw8IEVYVElfSU1SX01SMjFfUG9zKSAgICAgICAgLyohPCAweDAwMjAwMDAwICovDQojZGVmaW5lIEVYVElfSU1SX01SMjEgICAgICAgICAgICAgICAgICAgICAgIEVYVElfSU1SX01SMjFfTXNrICAgICAgICAgICAgICAgICAgLyohPCBJbnRlcnJ1cHQgTWFzayBvbiBsaW5lIDIxICovDQojZGVmaW5lIEVYVElfSU1SX01SMjJfUG9zICAgICAgICAgICAgICAgICAgICgyMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEVYVElfSU1SX01SMjJfTXNrICAgICAgICAgICAgICAgICAgICgweDFVIDw8IEVYVElfSU1SX01SMjJfUG9zKSAgICAgICAgLyohPCAweDAwNDAwMDAwICovDQojZGVmaW5lIEVYVElfSU1SX01SMjIgICAgICAgICAgICAgICAgICAgICAgIEVYVElfSU1SX01SMjJfTXNrICAgICAgICAgICAgICAgICAgLyohPCBJbnRlcnJ1cHQgTWFzayBvbiBsaW5lIDIyICovDQojZGVmaW5lIEVYVElfSU1SX01SMjNfUG9zICAgICAgICAgICAgICAgICAgICgyM1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEVYVElfSU1SX01SMjNfTXNrICAgICAgICAgICAgICAgICAgICgweDFVIDw8IEVYVElfSU1SX01SMjNfUG9zKSAgICAgICAgLyohPCAweDAwODAwMDAwICovDQojZGVmaW5lIEVYVElfSU1SX01SMjMgICAgICAgICAgICAgICAgICAgICAgIEVYVElfSU1SX01SMjNfTXNrICAgICAgICAgICAgICAgICAgLyohPCBJbnRlcnJ1cHQgTWFzayBvbiBsaW5lIDIzICovDQoNCi8qIFJlZmVyZW5jZXMgRGVmaW5lcyAqLw0KI2RlZmluZSAgRVhUSV9JTVJfSU0wIEVYVElfSU1SX01SMA0KI2RlZmluZSAgRVhUSV9JTVJfSU0xIEVYVElfSU1SX01SMQ0KI2RlZmluZSAgRVhUSV9JTVJfSU0yIEVYVElfSU1SX01SMg0KI2RlZmluZSAgRVhUSV9JTVJfSU0zIEVYVElfSU1SX01SMw0KI2RlZmluZSAgRVhUSV9JTVJfSU00IEVYVElfSU1SX01SNA0KI2RlZmluZSAgRVhUSV9JTVJfSU01IEVYVElfSU1SX01SNQ0KI2RlZmluZSAgRVhUSV9JTVJfSU02IEVYVElfSU1SX01SNg0KI2RlZmluZSAgRVhUSV9JTVJfSU03IEVYVElfSU1SX01SNw0KI2RlZmluZSAgRVhUSV9JTVJfSU04IEVYVElfSU1SX01SOA0KI2RlZmluZSAgRVhUSV9JTVJfSU05IEVYVElfSU1SX01SOQ0KI2RlZmluZSAgRVhUSV9JTVJfSU0xMCBFWFRJX0lNUl9NUjEwDQojZGVmaW5lICBFWFRJX0lNUl9JTTExIEVYVElfSU1SX01SMTENCiNkZWZpbmUgIEVYVElfSU1SX0lNMTIgRVhUSV9JTVJfTVIxMg0KI2RlZmluZSAgRVhUSV9JTVJfSU0xMyBFWFRJX0lNUl9NUjEzDQojZGVmaW5lICBFWFRJX0lNUl9JTTE0IEVYVElfSU1SX01SMTQNCiNkZWZpbmUgIEVYVElfSU1SX0lNMTUgRVhUSV9JTVJfTVIxNQ0KI2RlZmluZSAgRVhUSV9JTVJfSU0xNiBFWFRJX0lNUl9NUjE2DQojZGVmaW5lICBFWFRJX0lNUl9JTTE3IEVYVElfSU1SX01SMTcNCiNkZWZpbmUgIEVYVElfSU1SX0lNMTggRVhUSV9JTVJfTVIxOA0KI2RlZmluZSAgRVhUSV9JTVJfSU0xOSBFWFRJX0lNUl9NUjE5DQojZGVmaW5lICBFWFRJX0lNUl9JTTIwIEVYVElfSU1SX01SMjANCiNkZWZpbmUgIEVYVElfSU1SX0lNMjEgRVhUSV9JTVJfTVIyMQ0KI2RlZmluZSAgRVhUSV9JTVJfSU0yMiBFWFRJX0lNUl9NUjIyDQovKiBDYXRlZ29yeSAzLCA0ICYgNSAqLw0KI2RlZmluZSAgRVhUSV9JTVJfSU0yMyBFWFRJX0lNUl9NUjIzDQojZGVmaW5lIEVYVElfSU1SX0lNX1BvcyAgICAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEVYVElfSU1SX0lNX01zayAgICAgICAgICAgICAgICAgICAgICgweEZGRkZGRlUgPDwgRVhUSV9JTVJfSU1fUG9zKSAgICAgLyohPCAweDAwRkZGRkZGICovDQojZGVmaW5lIEVYVElfSU1SX0lNICAgICAgICAgICAgICAgICAgICAgICAgIEVYVElfSU1SX0lNX01zayAgICAgICAgICAgICAgICAgICAgLyohPCBJbnRlcnJ1cHQgTWFzayBBbGwgKi8NCg0KLyoqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBFWFRJX0VNUiByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgRVhUSV9FTVJfTVIwX1BvcyAgICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRVhUSV9FTVJfTVIwX01zayAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgRVhUSV9FTVJfTVIwX1BvcykgICAgICAgICAvKiE8IDB4MDAwMDAwMDEgKi8NCiNkZWZpbmUgRVhUSV9FTVJfTVIwICAgICAgICAgICAgICAgICAgICAgICAgRVhUSV9FTVJfTVIwX01zayAgICAgICAgICAgICAgICAgICAvKiE8IEV2ZW50IE1hc2sgb24gbGluZSAwICovDQojZGVmaW5lIEVYVElfRU1SX01SMV9Qb3MgICAgICAgICAgICAgICAgICAgICgxVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEVYVElfRU1SX01SMV9Nc2sgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IEVYVElfRU1SX01SMV9Qb3MpICAgICAgICAgLyohPCAweDAwMDAwMDAyICovDQojZGVmaW5lIEVYVElfRU1SX01SMSAgICAgICAgICAgICAgICAgICAgICAgIEVYVElfRU1SX01SMV9Nc2sgICAgICAgICAgICAgICAgICAgLyohPCBFdmVudCBNYXNrIG9uIGxpbmUgMSAqLw0KI2RlZmluZSBFWFRJX0VNUl9NUjJfUG9zICAgICAgICAgICAgICAgICAgICAoMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBFWFRJX0VNUl9NUjJfTXNrICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBFWFRJX0VNUl9NUjJfUG9zKSAgICAgICAgIC8qITwgMHgwMDAwMDAwNCAqLw0KI2RlZmluZSBFWFRJX0VNUl9NUjIgICAgICAgICAgICAgICAgICAgICAgICBFWFRJX0VNUl9NUjJfTXNrICAgICAgICAgICAgICAgICAgIC8qITwgRXZlbnQgTWFzayBvbiBsaW5lIDIgKi8NCiNkZWZpbmUgRVhUSV9FTVJfTVIzX1BvcyAgICAgICAgICAgICAgICAgICAgKDNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRVhUSV9FTVJfTVIzX01zayAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgRVhUSV9FTVJfTVIzX1BvcykgICAgICAgICAvKiE8IDB4MDAwMDAwMDggKi8NCiNkZWZpbmUgRVhUSV9FTVJfTVIzICAgICAgICAgICAgICAgICAgICAgICAgRVhUSV9FTVJfTVIzX01zayAgICAgICAgICAgICAgICAgICAvKiE8IEV2ZW50IE1hc2sgb24gbGluZSAzICovDQojZGVmaW5lIEVYVElfRU1SX01SNF9Qb3MgICAgICAgICAgICAgICAgICAgICg0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEVYVElfRU1SX01SNF9Nc2sgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IEVYVElfRU1SX01SNF9Qb3MpICAgICAgICAgLyohPCAweDAwMDAwMDEwICovDQojZGVmaW5lIEVYVElfRU1SX01SNCAgICAgICAgICAgICAgICAgICAgICAgIEVYVElfRU1SX01SNF9Nc2sgICAgICAgICAgICAgICAgICAgLyohPCBFdmVudCBNYXNrIG9uIGxpbmUgNCAqLw0KI2RlZmluZSBFWFRJX0VNUl9NUjVfUG9zICAgICAgICAgICAgICAgICAgICAoNVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBFWFRJX0VNUl9NUjVfTXNrICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBFWFRJX0VNUl9NUjVfUG9zKSAgICAgICAgIC8qITwgMHgwMDAwMDAyMCAqLw0KI2RlZmluZSBFWFRJX0VNUl9NUjUgICAgICAgICAgICAgICAgICAgICAgICBFWFRJX0VNUl9NUjVfTXNrICAgICAgICAgICAgICAgICAgIC8qITwgRXZlbnQgTWFzayBvbiBsaW5lIDUgKi8NCiNkZWZpbmUgRVhUSV9FTVJfTVI2X1BvcyAgICAgICAgICAgICAgICAgICAgKDZVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRVhUSV9FTVJfTVI2X01zayAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgRVhUSV9FTVJfTVI2X1BvcykgICAgICAgICAvKiE8IDB4MDAwMDAwNDAgKi8NCiNkZWZpbmUgRVhUSV9FTVJfTVI2ICAgICAgICAgICAgICAgICAgICAgICAgRVhUSV9FTVJfTVI2X01zayAgICAgICAgICAgICAgICAgICAvKiE8IEV2ZW50IE1hc2sgb24gbGluZSA2ICovDQojZGVmaW5lIEVYVElfRU1SX01SN19Qb3MgICAgICAgICAgICAgICAgICAgICg3VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEVYVElfRU1SX01SN19Nc2sgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IEVYVElfRU1SX01SN19Qb3MpICAgICAgICAgLyohPCAweDAwMDAwMDgwICovDQojZGVmaW5lIEVYVElfRU1SX01SNyAgICAgICAgICAgICAgICAgICAgICAgIEVYVElfRU1SX01SN19Nc2sgICAgICAgICAgICAgICAgICAgLyohPCBFdmVudCBNYXNrIG9uIGxpbmUgNyAqLw0KI2RlZmluZSBFWFRJX0VNUl9NUjhfUG9zICAgICAgICAgICAgICAgICAgICAoOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBFWFRJX0VNUl9NUjhfTXNrICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBFWFRJX0VNUl9NUjhfUG9zKSAgICAgICAgIC8qITwgMHgwMDAwMDEwMCAqLw0KI2RlZmluZSBFWFRJX0VNUl9NUjggICAgICAgICAgICAgICAgICAgICAgICBFWFRJX0VNUl9NUjhfTXNrICAgICAgICAgICAgICAgICAgIC8qITwgRXZlbnQgTWFzayBvbiBsaW5lIDggKi8NCiNkZWZpbmUgRVhUSV9FTVJfTVI5X1BvcyAgICAgICAgICAgICAgICAgICAgKDlVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRVhUSV9FTVJfTVI5X01zayAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgRVhUSV9FTVJfTVI5X1BvcykgICAgICAgICAvKiE8IDB4MDAwMDAyMDAgKi8NCiNkZWZpbmUgRVhUSV9FTVJfTVI5ICAgICAgICAgICAgICAgICAgICAgICAgRVhUSV9FTVJfTVI5X01zayAgICAgICAgICAgICAgICAgICAvKiE8IEV2ZW50IE1hc2sgb24gbGluZSA5ICovDQojZGVmaW5lIEVYVElfRU1SX01SMTBfUG9zICAgICAgICAgICAgICAgICAgICgxMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEVYVElfRU1SX01SMTBfTXNrICAgICAgICAgICAgICAgICAgICgweDFVIDw8IEVYVElfRU1SX01SMTBfUG9zKSAgICAgICAgLyohPCAweDAwMDAwNDAwICovDQojZGVmaW5lIEVYVElfRU1SX01SMTAgICAgICAgICAgICAgICAgICAgICAgIEVYVElfRU1SX01SMTBfTXNrICAgICAgICAgICAgICAgICAgLyohPCBFdmVudCBNYXNrIG9uIGxpbmUgMTAgKi8NCiNkZWZpbmUgRVhUSV9FTVJfTVIxMV9Qb3MgICAgICAgICAgICAgICAgICAgKDExVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRVhUSV9FTVJfTVIxMV9Nc2sgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgRVhUSV9FTVJfTVIxMV9Qb3MpICAgICAgICAvKiE8IDB4MDAwMDA4MDAgKi8NCiNkZWZpbmUgRVhUSV9FTVJfTVIxMSAgICAgICAgICAgICAgICAgICAgICAgRVhUSV9FTVJfTVIxMV9Nc2sgICAgICAgICAgICAgICAgICAvKiE8IEV2ZW50IE1hc2sgb24gbGluZSAxMSAqLw0KI2RlZmluZSBFWFRJX0VNUl9NUjEyX1BvcyAgICAgICAgICAgICAgICAgICAoMTJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBFWFRJX0VNUl9NUjEyX01zayAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBFWFRJX0VNUl9NUjEyX1BvcykgICAgICAgIC8qITwgMHgwMDAwMTAwMCAqLw0KI2RlZmluZSBFWFRJX0VNUl9NUjEyICAgICAgICAgICAgICAgICAgICAgICBFWFRJX0VNUl9NUjEyX01zayAgICAgICAgICAgICAgICAgIC8qITwgRXZlbnQgTWFzayBvbiBsaW5lIDEyICovDQojZGVmaW5lIEVYVElfRU1SX01SMTNfUG9zICAgICAgICAgICAgICAgICAgICgxM1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEVYVElfRU1SX01SMTNfTXNrICAgICAgICAgICAgICAgICAgICgweDFVIDw8IEVYVElfRU1SX01SMTNfUG9zKSAgICAgICAgLyohPCAweDAwMDAyMDAwICovDQojZGVmaW5lIEVYVElfRU1SX01SMTMgICAgICAgICAgICAgICAgICAgICAgIEVYVElfRU1SX01SMTNfTXNrICAgICAgICAgICAgICAgICAgLyohPCBFdmVudCBNYXNrIG9uIGxpbmUgMTMgKi8NCiNkZWZpbmUgRVhUSV9FTVJfTVIxNF9Qb3MgICAgICAgICAgICAgICAgICAgKDE0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRVhUSV9FTVJfTVIxNF9Nc2sgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgRVhUSV9FTVJfTVIxNF9Qb3MpICAgICAgICAvKiE8IDB4MDAwMDQwMDAgKi8NCiNkZWZpbmUgRVhUSV9FTVJfTVIxNCAgICAgICAgICAgICAgICAgICAgICAgRVhUSV9FTVJfTVIxNF9Nc2sgICAgICAgICAgICAgICAgICAvKiE8IEV2ZW50IE1hc2sgb24gbGluZSAxNCAqLw0KI2RlZmluZSBFWFRJX0VNUl9NUjE1X1BvcyAgICAgICAgICAgICAgICAgICAoMTVVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBFWFRJX0VNUl9NUjE1X01zayAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBFWFRJX0VNUl9NUjE1X1BvcykgICAgICAgIC8qITwgMHgwMDAwODAwMCAqLw0KI2RlZmluZSBFWFRJX0VNUl9NUjE1ICAgICAgICAgICAgICAgICAgICAgICBFWFRJX0VNUl9NUjE1X01zayAgICAgICAgICAgICAgICAgIC8qITwgRXZlbnQgTWFzayBvbiBsaW5lIDE1ICovDQojZGVmaW5lIEVYVElfRU1SX01SMTZfUG9zICAgICAgICAgICAgICAgICAgICgxNlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEVYVElfRU1SX01SMTZfTXNrICAgICAgICAgICAgICAgICAgICgweDFVIDw8IEVYVElfRU1SX01SMTZfUG9zKSAgICAgICAgLyohPCAweDAwMDEwMDAwICovDQojZGVmaW5lIEVYVElfRU1SX01SMTYgICAgICAgICAgICAgICAgICAgICAgIEVYVElfRU1SX01SMTZfTXNrICAgICAgICAgICAgICAgICAgLyohPCBFdmVudCBNYXNrIG9uIGxpbmUgMTYgKi8NCiNkZWZpbmUgRVhUSV9FTVJfTVIxN19Qb3MgICAgICAgICAgICAgICAgICAgKDE3VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRVhUSV9FTVJfTVIxN19Nc2sgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgRVhUSV9FTVJfTVIxN19Qb3MpICAgICAgICAvKiE8IDB4MDAwMjAwMDAgKi8NCiNkZWZpbmUgRVhUSV9FTVJfTVIxNyAgICAgICAgICAgICAgICAgICAgICAgRVhUSV9FTVJfTVIxN19Nc2sgICAgICAgICAgICAgICAgICAvKiE8IEV2ZW50IE1hc2sgb24gbGluZSAxNyAqLw0KI2RlZmluZSBFWFRJX0VNUl9NUjE4X1BvcyAgICAgICAgICAgICAgICAgICAoMThVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBFWFRJX0VNUl9NUjE4X01zayAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBFWFRJX0VNUl9NUjE4X1BvcykgICAgICAgIC8qITwgMHgwMDA0MDAwMCAqLw0KI2RlZmluZSBFWFRJX0VNUl9NUjE4ICAgICAgICAgICAgICAgICAgICAgICBFWFRJX0VNUl9NUjE4X01zayAgICAgICAgICAgICAgICAgIC8qITwgRXZlbnQgTWFzayBvbiBsaW5lIDE4ICovDQojZGVmaW5lIEVYVElfRU1SX01SMTlfUG9zICAgICAgICAgICAgICAgICAgICgxOVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEVYVElfRU1SX01SMTlfTXNrICAgICAgICAgICAgICAgICAgICgweDFVIDw8IEVYVElfRU1SX01SMTlfUG9zKSAgICAgICAgLyohPCAweDAwMDgwMDAwICovDQojZGVmaW5lIEVYVElfRU1SX01SMTkgICAgICAgICAgICAgICAgICAgICAgIEVYVElfRU1SX01SMTlfTXNrICAgICAgICAgICAgICAgICAgLyohPCBFdmVudCBNYXNrIG9uIGxpbmUgMTkgKi8NCiNkZWZpbmUgRVhUSV9FTVJfTVIyMF9Qb3MgICAgICAgICAgICAgICAgICAgKDIwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRVhUSV9FTVJfTVIyMF9Nc2sgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgRVhUSV9FTVJfTVIyMF9Qb3MpICAgICAgICAvKiE8IDB4MDAxMDAwMDAgKi8NCiNkZWZpbmUgRVhUSV9FTVJfTVIyMCAgICAgICAgICAgICAgICAgICAgICAgRVhUSV9FTVJfTVIyMF9Nc2sgICAgICAgICAgICAgICAgICAvKiE8IEV2ZW50IE1hc2sgb24gbGluZSAyMCAqLw0KI2RlZmluZSBFWFRJX0VNUl9NUjIxX1BvcyAgICAgICAgICAgICAgICAgICAoMjFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBFWFRJX0VNUl9NUjIxX01zayAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBFWFRJX0VNUl9NUjIxX1BvcykgICAgICAgIC8qITwgMHgwMDIwMDAwMCAqLw0KI2RlZmluZSBFWFRJX0VNUl9NUjIxICAgICAgICAgICAgICAgICAgICAgICBFWFRJX0VNUl9NUjIxX01zayAgICAgICAgICAgICAgICAgIC8qITwgRXZlbnQgTWFzayBvbiBsaW5lIDIxICovDQojZGVmaW5lIEVYVElfRU1SX01SMjJfUG9zICAgICAgICAgICAgICAgICAgICgyMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEVYVElfRU1SX01SMjJfTXNrICAgICAgICAgICAgICAgICAgICgweDFVIDw8IEVYVElfRU1SX01SMjJfUG9zKSAgICAgICAgLyohPCAweDAwNDAwMDAwICovDQojZGVmaW5lIEVYVElfRU1SX01SMjIgICAgICAgICAgICAgICAgICAgICAgIEVYVElfRU1SX01SMjJfTXNrICAgICAgICAgICAgICAgICAgLyohPCBFdmVudCBNYXNrIG9uIGxpbmUgMjIgKi8NCiNkZWZpbmUgRVhUSV9FTVJfTVIyM19Qb3MgICAgICAgICAgICAgICAgICAgKDIzVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRVhUSV9FTVJfTVIyM19Nc2sgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgRVhUSV9FTVJfTVIyM19Qb3MpICAgICAgICAvKiE8IDB4MDA4MDAwMDAgKi8NCiNkZWZpbmUgRVhUSV9FTVJfTVIyMyAgICAgICAgICAgICAgICAgICAgICAgRVhUSV9FTVJfTVIyM19Nc2sgICAgICAgICAgICAgICAgICAvKiE8IEV2ZW50IE1hc2sgb24gbGluZSAyMyAqLw0KDQovKiBSZWZlcmVuY2VzIERlZmluZXMgKi8NCiNkZWZpbmUgIEVYVElfRU1SX0VNMCBFWFRJX0VNUl9NUjANCiNkZWZpbmUgIEVYVElfRU1SX0VNMSBFWFRJX0VNUl9NUjENCiNkZWZpbmUgIEVYVElfRU1SX0VNMiBFWFRJX0VNUl9NUjINCiNkZWZpbmUgIEVYVElfRU1SX0VNMyBFWFRJX0VNUl9NUjMNCiNkZWZpbmUgIEVYVElfRU1SX0VNNCBFWFRJX0VNUl9NUjQNCiNkZWZpbmUgIEVYVElfRU1SX0VNNSBFWFRJX0VNUl9NUjUNCiNkZWZpbmUgIEVYVElfRU1SX0VNNiBFWFRJX0VNUl9NUjYNCiNkZWZpbmUgIEVYVElfRU1SX0VNNyBFWFRJX0VNUl9NUjcNCiNkZWZpbmUgIEVYVElfRU1SX0VNOCBFWFRJX0VNUl9NUjgNCiNkZWZpbmUgIEVYVElfRU1SX0VNOSBFWFRJX0VNUl9NUjkNCiNkZWZpbmUgIEVYVElfRU1SX0VNMTAgRVhUSV9FTVJfTVIxMA0KI2RlZmluZSAgRVhUSV9FTVJfRU0xMSBFWFRJX0VNUl9NUjExDQojZGVmaW5lICBFWFRJX0VNUl9FTTEyIEVYVElfRU1SX01SMTINCiNkZWZpbmUgIEVYVElfRU1SX0VNMTMgRVhUSV9FTVJfTVIxMw0KI2RlZmluZSAgRVhUSV9FTVJfRU0xNCBFWFRJX0VNUl9NUjE0DQojZGVmaW5lICBFWFRJX0VNUl9FTTE1IEVYVElfRU1SX01SMTUNCiNkZWZpbmUgIEVYVElfRU1SX0VNMTYgRVhUSV9FTVJfTVIxNg0KI2RlZmluZSAgRVhUSV9FTVJfRU0xNyBFWFRJX0VNUl9NUjE3DQojZGVmaW5lICBFWFRJX0VNUl9FTTE4IEVYVElfRU1SX01SMTgNCiNkZWZpbmUgIEVYVElfRU1SX0VNMTkgRVhUSV9FTVJfTVIxOQ0KI2RlZmluZSAgRVhUSV9FTVJfRU0yMCBFWFRJX0VNUl9NUjIwDQojZGVmaW5lICBFWFRJX0VNUl9FTTIxIEVYVElfRU1SX01SMjENCiNkZWZpbmUgIEVYVElfRU1SX0VNMjIgRVhUSV9FTVJfTVIyMg0KI2RlZmluZSAgRVhUSV9FTVJfRU0yMyBFWFRJX0VNUl9NUjIzDQoNCi8qKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBFWFRJX1JUU1IgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIEVYVElfUlRTUl9UUjBfUG9zICAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEVYVElfUlRTUl9UUjBfTXNrICAgICAgICAgICAgICAgICAgICgweDFVIDw8IEVYVElfUlRTUl9UUjBfUG9zKSAgICAgICAgLyohPCAweDAwMDAwMDAxICovDQojZGVmaW5lIEVYVElfUlRTUl9UUjAgICAgICAgICAgICAgICAgICAgICAgIEVYVElfUlRTUl9UUjBfTXNrICAgICAgICAgICAgICAgICAgLyohPCBSaXNpbmcgdHJpZ2dlciBldmVudCBjb25maWd1cmF0aW9uIGJpdCBvZiBsaW5lIDAgKi8NCiNkZWZpbmUgRVhUSV9SVFNSX1RSMV9Qb3MgICAgICAgICAgICAgICAgICAgKDFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRVhUSV9SVFNSX1RSMV9Nc2sgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgRVhUSV9SVFNSX1RSMV9Qb3MpICAgICAgICAvKiE8IDB4MDAwMDAwMDIgKi8NCiNkZWZpbmUgRVhUSV9SVFNSX1RSMSAgICAgICAgICAgICAgICAgICAgICAgRVhUSV9SVFNSX1RSMV9Nc2sgICAgICAgICAgICAgICAgICAvKiE8IFJpc2luZyB0cmlnZ2VyIGV2ZW50IGNvbmZpZ3VyYXRpb24gYml0IG9mIGxpbmUgMSAqLw0KI2RlZmluZSBFWFRJX1JUU1JfVFIyX1BvcyAgICAgICAgICAgICAgICAgICAoMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBFWFRJX1JUU1JfVFIyX01zayAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBFWFRJX1JUU1JfVFIyX1BvcykgICAgICAgIC8qITwgMHgwMDAwMDAwNCAqLw0KI2RlZmluZSBFWFRJX1JUU1JfVFIyICAgICAgICAgICAgICAgICAgICAgICBFWFRJX1JUU1JfVFIyX01zayAgICAgICAgICAgICAgICAgIC8qITwgUmlzaW5nIHRyaWdnZXIgZXZlbnQgY29uZmlndXJhdGlvbiBiaXQgb2YgbGluZSAyICovDQojZGVmaW5lIEVYVElfUlRTUl9UUjNfUG9zICAgICAgICAgICAgICAgICAgICgzVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEVYVElfUlRTUl9UUjNfTXNrICAgICAgICAgICAgICAgICAgICgweDFVIDw8IEVYVElfUlRTUl9UUjNfUG9zKSAgICAgICAgLyohPCAweDAwMDAwMDA4ICovDQojZGVmaW5lIEVYVElfUlRTUl9UUjMgICAgICAgICAgICAgICAgICAgICAgIEVYVElfUlRTUl9UUjNfTXNrICAgICAgICAgICAgICAgICAgLyohPCBSaXNpbmcgdHJpZ2dlciBldmVudCBjb25maWd1cmF0aW9uIGJpdCBvZiBsaW5lIDMgKi8NCiNkZWZpbmUgRVhUSV9SVFNSX1RSNF9Qb3MgICAgICAgICAgICAgICAgICAgKDRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRVhUSV9SVFNSX1RSNF9Nc2sgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgRVhUSV9SVFNSX1RSNF9Qb3MpICAgICAgICAvKiE8IDB4MDAwMDAwMTAgKi8NCiNkZWZpbmUgRVhUSV9SVFNSX1RSNCAgICAgICAgICAgICAgICAgICAgICAgRVhUSV9SVFNSX1RSNF9Nc2sgICAgICAgICAgICAgICAgICAvKiE8IFJpc2luZyB0cmlnZ2VyIGV2ZW50IGNvbmZpZ3VyYXRpb24gYml0IG9mIGxpbmUgNCAqLw0KI2RlZmluZSBFWFRJX1JUU1JfVFI1X1BvcyAgICAgICAgICAgICAgICAgICAoNVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBFWFRJX1JUU1JfVFI1X01zayAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBFWFRJX1JUU1JfVFI1X1BvcykgICAgICAgIC8qITwgMHgwMDAwMDAyMCAqLw0KI2RlZmluZSBFWFRJX1JUU1JfVFI1ICAgICAgICAgICAgICAgICAgICAgICBFWFRJX1JUU1JfVFI1X01zayAgICAgICAgICAgICAgICAgIC8qITwgUmlzaW5nIHRyaWdnZXIgZXZlbnQgY29uZmlndXJhdGlvbiBiaXQgb2YgbGluZSA1ICovDQojZGVmaW5lIEVYVElfUlRTUl9UUjZfUG9zICAgICAgICAgICAgICAgICAgICg2VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEVYVElfUlRTUl9UUjZfTXNrICAgICAgICAgICAgICAgICAgICgweDFVIDw8IEVYVElfUlRTUl9UUjZfUG9zKSAgICAgICAgLyohPCAweDAwMDAwMDQwICovDQojZGVmaW5lIEVYVElfUlRTUl9UUjYgICAgICAgICAgICAgICAgICAgICAgIEVYVElfUlRTUl9UUjZfTXNrICAgICAgICAgICAgICAgICAgLyohPCBSaXNpbmcgdHJpZ2dlciBldmVudCBjb25maWd1cmF0aW9uIGJpdCBvZiBsaW5lIDYgKi8NCiNkZWZpbmUgRVhUSV9SVFNSX1RSN19Qb3MgICAgICAgICAgICAgICAgICAgKDdVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRVhUSV9SVFNSX1RSN19Nc2sgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgRVhUSV9SVFNSX1RSN19Qb3MpICAgICAgICAvKiE8IDB4MDAwMDAwODAgKi8NCiNkZWZpbmUgRVhUSV9SVFNSX1RSNyAgICAgICAgICAgICAgICAgICAgICAgRVhUSV9SVFNSX1RSN19Nc2sgICAgICAgICAgICAgICAgICAvKiE8IFJpc2luZyB0cmlnZ2VyIGV2ZW50IGNvbmZpZ3VyYXRpb24gYml0IG9mIGxpbmUgNyAqLw0KI2RlZmluZSBFWFRJX1JUU1JfVFI4X1BvcyAgICAgICAgICAgICAgICAgICAoOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBFWFRJX1JUU1JfVFI4X01zayAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBFWFRJX1JUU1JfVFI4X1BvcykgICAgICAgIC8qITwgMHgwMDAwMDEwMCAqLw0KI2RlZmluZSBFWFRJX1JUU1JfVFI4ICAgICAgICAgICAgICAgICAgICAgICBFWFRJX1JUU1JfVFI4X01zayAgICAgICAgICAgICAgICAgIC8qITwgUmlzaW5nIHRyaWdnZXIgZXZlbnQgY29uZmlndXJhdGlvbiBiaXQgb2YgbGluZSA4ICovDQojZGVmaW5lIEVYVElfUlRTUl9UUjlfUG9zICAgICAgICAgICAgICAgICAgICg5VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEVYVElfUlRTUl9UUjlfTXNrICAgICAgICAgICAgICAgICAgICgweDFVIDw8IEVYVElfUlRTUl9UUjlfUG9zKSAgICAgICAgLyohPCAweDAwMDAwMjAwICovDQojZGVmaW5lIEVYVElfUlRTUl9UUjkgICAgICAgICAgICAgICAgICAgICAgIEVYVElfUlRTUl9UUjlfTXNrICAgICAgICAgICAgICAgICAgLyohPCBSaXNpbmcgdHJpZ2dlciBldmVudCBjb25maWd1cmF0aW9uIGJpdCBvZiBsaW5lIDkgKi8NCiNkZWZpbmUgRVhUSV9SVFNSX1RSMTBfUG9zICAgICAgICAgICAgICAgICAgKDEwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRVhUSV9SVFNSX1RSMTBfTXNrICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgRVhUSV9SVFNSX1RSMTBfUG9zKSAgICAgICAvKiE8IDB4MDAwMDA0MDAgKi8NCiNkZWZpbmUgRVhUSV9SVFNSX1RSMTAgICAgICAgICAgICAgICAgICAgICAgRVhUSV9SVFNSX1RSMTBfTXNrICAgICAgICAgICAgICAgICAvKiE8IFJpc2luZyB0cmlnZ2VyIGV2ZW50IGNvbmZpZ3VyYXRpb24gYml0IG9mIGxpbmUgMTAgKi8NCiNkZWZpbmUgRVhUSV9SVFNSX1RSMTFfUG9zICAgICAgICAgICAgICAgICAgKDExVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRVhUSV9SVFNSX1RSMTFfTXNrICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgRVhUSV9SVFNSX1RSMTFfUG9zKSAgICAgICAvKiE8IDB4MDAwMDA4MDAgKi8NCiNkZWZpbmUgRVhUSV9SVFNSX1RSMTEgICAgICAgICAgICAgICAgICAgICAgRVhUSV9SVFNSX1RSMTFfTXNrICAgICAgICAgICAgICAgICAvKiE8IFJpc2luZyB0cmlnZ2VyIGV2ZW50IGNvbmZpZ3VyYXRpb24gYml0IG9mIGxpbmUgMTEgKi8NCiNkZWZpbmUgRVhUSV9SVFNSX1RSMTJfUG9zICAgICAgICAgICAgICAgICAgKDEyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRVhUSV9SVFNSX1RSMTJfTXNrICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgRVhUSV9SVFNSX1RSMTJfUG9zKSAgICAgICAvKiE8IDB4MDAwMDEwMDAgKi8NCiNkZWZpbmUgRVhUSV9SVFNSX1RSMTIgICAgICAgICAgICAgICAgICAgICAgRVhUSV9SVFNSX1RSMTJfTXNrICAgICAgICAgICAgICAgICAvKiE8IFJpc2luZyB0cmlnZ2VyIGV2ZW50IGNvbmZpZ3VyYXRpb24gYml0IG9mIGxpbmUgMTIgKi8NCiNkZWZpbmUgRVhUSV9SVFNSX1RSMTNfUG9zICAgICAgICAgICAgICAgICAgKDEzVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRVhUSV9SVFNSX1RSMTNfTXNrICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgRVhUSV9SVFNSX1RSMTNfUG9zKSAgICAgICAvKiE8IDB4MDAwMDIwMDAgKi8NCiNkZWZpbmUgRVhUSV9SVFNSX1RSMTMgICAgICAgICAgICAgICAgICAgICAgRVhUSV9SVFNSX1RSMTNfTXNrICAgICAgICAgICAgICAgICAvKiE8IFJpc2luZyB0cmlnZ2VyIGV2ZW50IGNvbmZpZ3VyYXRpb24gYml0IG9mIGxpbmUgMTMgKi8NCiNkZWZpbmUgRVhUSV9SVFNSX1RSMTRfUG9zICAgICAgICAgICAgICAgICAgKDE0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRVhUSV9SVFNSX1RSMTRfTXNrICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgRVhUSV9SVFNSX1RSMTRfUG9zKSAgICAgICAvKiE8IDB4MDAwMDQwMDAgKi8NCiNkZWZpbmUgRVhUSV9SVFNSX1RSMTQgICAgICAgICAgICAgICAgICAgICAgRVhUSV9SVFNSX1RSMTRfTXNrICAgICAgICAgICAgICAgICAvKiE8IFJpc2luZyB0cmlnZ2VyIGV2ZW50IGNvbmZpZ3VyYXRpb24gYml0IG9mIGxpbmUgMTQgKi8NCiNkZWZpbmUgRVhUSV9SVFNSX1RSMTVfUG9zICAgICAgICAgICAgICAgICAgKDE1VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRVhUSV9SVFNSX1RSMTVfTXNrICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgRVhUSV9SVFNSX1RSMTVfUG9zKSAgICAgICAvKiE8IDB4MDAwMDgwMDAgKi8NCiNkZWZpbmUgRVhUSV9SVFNSX1RSMTUgICAgICAgICAgICAgICAgICAgICAgRVhUSV9SVFNSX1RSMTVfTXNrICAgICAgICAgICAgICAgICAvKiE8IFJpc2luZyB0cmlnZ2VyIGV2ZW50IGNvbmZpZ3VyYXRpb24gYml0IG9mIGxpbmUgMTUgKi8NCiNkZWZpbmUgRVhUSV9SVFNSX1RSMTZfUG9zICAgICAgICAgICAgICAgICAgKDE2VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRVhUSV9SVFNSX1RSMTZfTXNrICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgRVhUSV9SVFNSX1RSMTZfUG9zKSAgICAgICAvKiE8IDB4MDAwMTAwMDAgKi8NCiNkZWZpbmUgRVhUSV9SVFNSX1RSMTYgICAgICAgICAgICAgICAgICAgICAgRVhUSV9SVFNSX1RSMTZfTXNrICAgICAgICAgICAgICAgICAvKiE8IFJpc2luZyB0cmlnZ2VyIGV2ZW50IGNvbmZpZ3VyYXRpb24gYml0IG9mIGxpbmUgMTYgKi8NCiNkZWZpbmUgRVhUSV9SVFNSX1RSMTdfUG9zICAgICAgICAgICAgICAgICAgKDE3VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRVhUSV9SVFNSX1RSMTdfTXNrICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgRVhUSV9SVFNSX1RSMTdfUG9zKSAgICAgICAvKiE8IDB4MDAwMjAwMDAgKi8NCiNkZWZpbmUgRVhUSV9SVFNSX1RSMTcgICAgICAgICAgICAgICAgICAgICAgRVhUSV9SVFNSX1RSMTdfTXNrICAgICAgICAgICAgICAgICAvKiE8IFJpc2luZyB0cmlnZ2VyIGV2ZW50IGNvbmZpZ3VyYXRpb24gYml0IG9mIGxpbmUgMTcgKi8NCiNkZWZpbmUgRVhUSV9SVFNSX1RSMThfUG9zICAgICAgICAgICAgICAgICAgKDE4VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRVhUSV9SVFNSX1RSMThfTXNrICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgRVhUSV9SVFNSX1RSMThfUG9zKSAgICAgICAvKiE8IDB4MDAwNDAwMDAgKi8NCiNkZWZpbmUgRVhUSV9SVFNSX1RSMTggICAgICAgICAgICAgICAgICAgICAgRVhUSV9SVFNSX1RSMThfTXNrICAgICAgICAgICAgICAgICAvKiE8IFJpc2luZyB0cmlnZ2VyIGV2ZW50IGNvbmZpZ3VyYXRpb24gYml0IG9mIGxpbmUgMTggKi8NCiNkZWZpbmUgRVhUSV9SVFNSX1RSMTlfUG9zICAgICAgICAgICAgICAgICAgKDE5VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRVhUSV9SVFNSX1RSMTlfTXNrICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgRVhUSV9SVFNSX1RSMTlfUG9zKSAgICAgICAvKiE8IDB4MDAwODAwMDAgKi8NCiNkZWZpbmUgRVhUSV9SVFNSX1RSMTkgICAgICAgICAgICAgICAgICAgICAgRVhUSV9SVFNSX1RSMTlfTXNrICAgICAgICAgICAgICAgICAvKiE8IFJpc2luZyB0cmlnZ2VyIGV2ZW50IGNvbmZpZ3VyYXRpb24gYml0IG9mIGxpbmUgMTkgKi8NCiNkZWZpbmUgRVhUSV9SVFNSX1RSMjBfUG9zICAgICAgICAgICAgICAgICAgKDIwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRVhUSV9SVFNSX1RSMjBfTXNrICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgRVhUSV9SVFNSX1RSMjBfUG9zKSAgICAgICAvKiE8IDB4MDAxMDAwMDAgKi8NCiNkZWZpbmUgRVhUSV9SVFNSX1RSMjAgICAgICAgICAgICAgICAgICAgICAgRVhUSV9SVFNSX1RSMjBfTXNrICAgICAgICAgICAgICAgICAvKiE8IFJpc2luZyB0cmlnZ2VyIGV2ZW50IGNvbmZpZ3VyYXRpb24gYml0IG9mIGxpbmUgMjAgKi8NCiNkZWZpbmUgRVhUSV9SVFNSX1RSMjFfUG9zICAgICAgICAgICAgICAgICAgKDIxVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRVhUSV9SVFNSX1RSMjFfTXNrICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgRVhUSV9SVFNSX1RSMjFfUG9zKSAgICAgICAvKiE8IDB4MDAyMDAwMDAgKi8NCiNkZWZpbmUgRVhUSV9SVFNSX1RSMjEgICAgICAgICAgICAgICAgICAgICAgRVhUSV9SVFNSX1RSMjFfTXNrICAgICAgICAgICAgICAgICAvKiE8IFJpc2luZyB0cmlnZ2VyIGV2ZW50IGNvbmZpZ3VyYXRpb24gYml0IG9mIGxpbmUgMjEgKi8NCiNkZWZpbmUgRVhUSV9SVFNSX1RSMjJfUG9zICAgICAgICAgICAgICAgICAgKDIyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRVhUSV9SVFNSX1RSMjJfTXNrICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgRVhUSV9SVFNSX1RSMjJfUG9zKSAgICAgICAvKiE8IDB4MDA0MDAwMDAgKi8NCiNkZWZpbmUgRVhUSV9SVFNSX1RSMjIgICAgICAgICAgICAgICAgICAgICAgRVhUSV9SVFNSX1RSMjJfTXNrICAgICAgICAgICAgICAgICAvKiE8IFJpc2luZyB0cmlnZ2VyIGV2ZW50IGNvbmZpZ3VyYXRpb24gYml0IG9mIGxpbmUgMjIgKi8NCiNkZWZpbmUgRVhUSV9SVFNSX1RSMjNfUG9zICAgICAgICAgICAgICAgICAgKDIzVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRVhUSV9SVFNSX1RSMjNfTXNrICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgRVhUSV9SVFNSX1RSMjNfUG9zKSAgICAgICAvKiE8IDB4MDA4MDAwMDAgKi8NCiNkZWZpbmUgRVhUSV9SVFNSX1RSMjMgICAgICAgICAgICAgICAgICAgICAgRVhUSV9SVFNSX1RSMjNfTXNrICAgICAgICAgICAgICAgICAvKiE8IFJpc2luZyB0cmlnZ2VyIGV2ZW50IGNvbmZpZ3VyYXRpb24gYml0IG9mIGxpbmUgMjMgKi8NCg0KLyogUmVmZXJlbmNlcyBEZWZpbmVzICovDQojZGVmaW5lICBFWFRJX1JUU1JfUlQwIEVYVElfUlRTUl9UUjANCiNkZWZpbmUgIEVYVElfUlRTUl9SVDEgRVhUSV9SVFNSX1RSMQ0KI2RlZmluZSAgRVhUSV9SVFNSX1JUMiBFWFRJX1JUU1JfVFIyDQojZGVmaW5lICBFWFRJX1JUU1JfUlQzIEVYVElfUlRTUl9UUjMNCiNkZWZpbmUgIEVYVElfUlRTUl9SVDQgRVhUSV9SVFNSX1RSNA0KI2RlZmluZSAgRVhUSV9SVFNSX1JUNSBFWFRJX1JUU1JfVFI1DQojZGVmaW5lICBFWFRJX1JUU1JfUlQ2IEVYVElfUlRTUl9UUjYNCiNkZWZpbmUgIEVYVElfUlRTUl9SVDcgRVhUSV9SVFNSX1RSNw0KI2RlZmluZSAgRVhUSV9SVFNSX1JUOCBFWFRJX1JUU1JfVFI4DQojZGVmaW5lICBFWFRJX1JUU1JfUlQ5IEVYVElfUlRTUl9UUjkNCiNkZWZpbmUgIEVYVElfUlRTUl9SVDEwIEVYVElfUlRTUl9UUjEwDQojZGVmaW5lICBFWFRJX1JUU1JfUlQxMSBFWFRJX1JUU1JfVFIxMQ0KI2RlZmluZSAgRVhUSV9SVFNSX1JUMTIgRVhUSV9SVFNSX1RSMTINCiNkZWZpbmUgIEVYVElfUlRTUl9SVDEzIEVYVElfUlRTUl9UUjEzDQojZGVmaW5lICBFWFRJX1JUU1JfUlQxNCBFWFRJX1JUU1JfVFIxNA0KI2RlZmluZSAgRVhUSV9SVFNSX1JUMTUgRVhUSV9SVFNSX1RSMTUNCiNkZWZpbmUgIEVYVElfUlRTUl9SVDE2IEVYVElfUlRTUl9UUjE2DQojZGVmaW5lICBFWFRJX1JUU1JfUlQxNyBFWFRJX1JUU1JfVFIxNw0KI2RlZmluZSAgRVhUSV9SVFNSX1JUMTggRVhUSV9SVFNSX1RSMTgNCiNkZWZpbmUgIEVYVElfUlRTUl9SVDE5IEVYVElfUlRTUl9UUjE5DQojZGVmaW5lICBFWFRJX1JUU1JfUlQyMCBFWFRJX1JUU1JfVFIyMA0KI2RlZmluZSAgRVhUSV9SVFNSX1JUMjEgRVhUSV9SVFNSX1RSMjENCiNkZWZpbmUgIEVYVElfUlRTUl9SVDIyIEVYVElfUlRTUl9UUjIyDQojZGVmaW5lICBFWFRJX1JUU1JfUlQyMyBFWFRJX1JUU1JfVFIyMw0KDQovKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgRVhUSV9GVFNSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBFWFRJX0ZUU1JfVFIwX1BvcyAgICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBFWFRJX0ZUU1JfVFIwX01zayAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBFWFRJX0ZUU1JfVFIwX1BvcykgICAgICAgIC8qITwgMHgwMDAwMDAwMSAqLw0KI2RlZmluZSBFWFRJX0ZUU1JfVFIwICAgICAgICAgICAgICAgICAgICAgICBFWFRJX0ZUU1JfVFIwX01zayAgICAgICAgICAgICAgICAgIC8qITwgRmFsbGluZyB0cmlnZ2VyIGV2ZW50IGNvbmZpZ3VyYXRpb24gYml0IG9mIGxpbmUgMCAqLw0KI2RlZmluZSBFWFRJX0ZUU1JfVFIxX1BvcyAgICAgICAgICAgICAgICAgICAoMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBFWFRJX0ZUU1JfVFIxX01zayAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBFWFRJX0ZUU1JfVFIxX1BvcykgICAgICAgIC8qITwgMHgwMDAwMDAwMiAqLw0KI2RlZmluZSBFWFRJX0ZUU1JfVFIxICAgICAgICAgICAgICAgICAgICAgICBFWFRJX0ZUU1JfVFIxX01zayAgICAgICAgICAgICAgICAgIC8qITwgRmFsbGluZyB0cmlnZ2VyIGV2ZW50IGNvbmZpZ3VyYXRpb24gYml0IG9mIGxpbmUgMSAqLw0KI2RlZmluZSBFWFRJX0ZUU1JfVFIyX1BvcyAgICAgICAgICAgICAgICAgICAoMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBFWFRJX0ZUU1JfVFIyX01zayAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBFWFRJX0ZUU1JfVFIyX1BvcykgICAgICAgIC8qITwgMHgwMDAwMDAwNCAqLw0KI2RlZmluZSBFWFRJX0ZUU1JfVFIyICAgICAgICAgICAgICAgICAgICAgICBFWFRJX0ZUU1JfVFIyX01zayAgICAgICAgICAgICAgICAgIC8qITwgRmFsbGluZyB0cmlnZ2VyIGV2ZW50IGNvbmZpZ3VyYXRpb24gYml0IG9mIGxpbmUgMiAqLw0KI2RlZmluZSBFWFRJX0ZUU1JfVFIzX1BvcyAgICAgICAgICAgICAgICAgICAoM1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBFWFRJX0ZUU1JfVFIzX01zayAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBFWFRJX0ZUU1JfVFIzX1BvcykgICAgICAgIC8qITwgMHgwMDAwMDAwOCAqLw0KI2RlZmluZSBFWFRJX0ZUU1JfVFIzICAgICAgICAgICAgICAgICAgICAgICBFWFRJX0ZUU1JfVFIzX01zayAgICAgICAgICAgICAgICAgIC8qITwgRmFsbGluZyB0cmlnZ2VyIGV2ZW50IGNvbmZpZ3VyYXRpb24gYml0IG9mIGxpbmUgMyAqLw0KI2RlZmluZSBFWFRJX0ZUU1JfVFI0X1BvcyAgICAgICAgICAgICAgICAgICAoNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBFWFRJX0ZUU1JfVFI0X01zayAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBFWFRJX0ZUU1JfVFI0X1BvcykgICAgICAgIC8qITwgMHgwMDAwMDAxMCAqLw0KI2RlZmluZSBFWFRJX0ZUU1JfVFI0ICAgICAgICAgICAgICAgICAgICAgICBFWFRJX0ZUU1JfVFI0X01zayAgICAgICAgICAgICAgICAgIC8qITwgRmFsbGluZyB0cmlnZ2VyIGV2ZW50IGNvbmZpZ3VyYXRpb24gYml0IG9mIGxpbmUgNCAqLw0KI2RlZmluZSBFWFRJX0ZUU1JfVFI1X1BvcyAgICAgICAgICAgICAgICAgICAoNVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBFWFRJX0ZUU1JfVFI1X01zayAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBFWFRJX0ZUU1JfVFI1X1BvcykgICAgICAgIC8qITwgMHgwMDAwMDAyMCAqLw0KI2RlZmluZSBFWFRJX0ZUU1JfVFI1ICAgICAgICAgICAgICAgICAgICAgICBFWFRJX0ZUU1JfVFI1X01zayAgICAgICAgICAgICAgICAgIC8qITwgRmFsbGluZyB0cmlnZ2VyIGV2ZW50IGNvbmZpZ3VyYXRpb24gYml0IG9mIGxpbmUgNSAqLw0KI2RlZmluZSBFWFRJX0ZUU1JfVFI2X1BvcyAgICAgICAgICAgICAgICAgICAoNlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBFWFRJX0ZUU1JfVFI2X01zayAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBFWFRJX0ZUU1JfVFI2X1BvcykgICAgICAgIC8qITwgMHgwMDAwMDA0MCAqLw0KI2RlZmluZSBFWFRJX0ZUU1JfVFI2ICAgICAgICAgICAgICAgICAgICAgICBFWFRJX0ZUU1JfVFI2X01zayAgICAgICAgICAgICAgICAgIC8qITwgRmFsbGluZyB0cmlnZ2VyIGV2ZW50IGNvbmZpZ3VyYXRpb24gYml0IG9mIGxpbmUgNiAqLw0KI2RlZmluZSBFWFRJX0ZUU1JfVFI3X1BvcyAgICAgICAgICAgICAgICAgICAoN1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBFWFRJX0ZUU1JfVFI3X01zayAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBFWFRJX0ZUU1JfVFI3X1BvcykgICAgICAgIC8qITwgMHgwMDAwMDA4MCAqLw0KI2RlZmluZSBFWFRJX0ZUU1JfVFI3ICAgICAgICAgICAgICAgICAgICAgICBFWFRJX0ZUU1JfVFI3X01zayAgICAgICAgICAgICAgICAgIC8qITwgRmFsbGluZyB0cmlnZ2VyIGV2ZW50IGNvbmZpZ3VyYXRpb24gYml0IG9mIGxpbmUgNyAqLw0KI2RlZmluZSBFWFRJX0ZUU1JfVFI4X1BvcyAgICAgICAgICAgICAgICAgICAoOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBFWFRJX0ZUU1JfVFI4X01zayAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBFWFRJX0ZUU1JfVFI4X1BvcykgICAgICAgIC8qITwgMHgwMDAwMDEwMCAqLw0KI2RlZmluZSBFWFRJX0ZUU1JfVFI4ICAgICAgICAgICAgICAgICAgICAgICBFWFRJX0ZUU1JfVFI4X01zayAgICAgICAgICAgICAgICAgIC8qITwgRmFsbGluZyB0cmlnZ2VyIGV2ZW50IGNvbmZpZ3VyYXRpb24gYml0IG9mIGxpbmUgOCAqLw0KI2RlZmluZSBFWFRJX0ZUU1JfVFI5X1BvcyAgICAgICAgICAgICAgICAgICAoOVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBFWFRJX0ZUU1JfVFI5X01zayAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBFWFRJX0ZUU1JfVFI5X1BvcykgICAgICAgIC8qITwgMHgwMDAwMDIwMCAqLw0KI2RlZmluZSBFWFRJX0ZUU1JfVFI5ICAgICAgICAgICAgICAgICAgICAgICBFWFRJX0ZUU1JfVFI5X01zayAgICAgICAgICAgICAgICAgIC8qITwgRmFsbGluZyB0cmlnZ2VyIGV2ZW50IGNvbmZpZ3VyYXRpb24gYml0IG9mIGxpbmUgOSAqLw0KI2RlZmluZSBFWFRJX0ZUU1JfVFIxMF9Qb3MgICAgICAgICAgICAgICAgICAoMTBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBFWFRJX0ZUU1JfVFIxMF9Nc2sgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBFWFRJX0ZUU1JfVFIxMF9Qb3MpICAgICAgIC8qITwgMHgwMDAwMDQwMCAqLw0KI2RlZmluZSBFWFRJX0ZUU1JfVFIxMCAgICAgICAgICAgICAgICAgICAgICBFWFRJX0ZUU1JfVFIxMF9Nc2sgICAgICAgICAgICAgICAgIC8qITwgRmFsbGluZyB0cmlnZ2VyIGV2ZW50IGNvbmZpZ3VyYXRpb24gYml0IG9mIGxpbmUgMTAgKi8NCiNkZWZpbmUgRVhUSV9GVFNSX1RSMTFfUG9zICAgICAgICAgICAgICAgICAgKDExVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRVhUSV9GVFNSX1RSMTFfTXNrICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgRVhUSV9GVFNSX1RSMTFfUG9zKSAgICAgICAvKiE8IDB4MDAwMDA4MDAgKi8NCiNkZWZpbmUgRVhUSV9GVFNSX1RSMTEgICAgICAgICAgICAgICAgICAgICAgRVhUSV9GVFNSX1RSMTFfTXNrICAgICAgICAgICAgICAgICAvKiE8IEZhbGxpbmcgdHJpZ2dlciBldmVudCBjb25maWd1cmF0aW9uIGJpdCBvZiBsaW5lIDExICovDQojZGVmaW5lIEVYVElfRlRTUl9UUjEyX1BvcyAgICAgICAgICAgICAgICAgICgxMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEVYVElfRlRTUl9UUjEyX01zayAgICAgICAgICAgICAgICAgICgweDFVIDw8IEVYVElfRlRTUl9UUjEyX1BvcykgICAgICAgLyohPCAweDAwMDAxMDAwICovDQojZGVmaW5lIEVYVElfRlRTUl9UUjEyICAgICAgICAgICAgICAgICAgICAgIEVYVElfRlRTUl9UUjEyX01zayAgICAgICAgICAgICAgICAgLyohPCBGYWxsaW5nIHRyaWdnZXIgZXZlbnQgY29uZmlndXJhdGlvbiBiaXQgb2YgbGluZSAxMiAqLw0KI2RlZmluZSBFWFRJX0ZUU1JfVFIxM19Qb3MgICAgICAgICAgICAgICAgICAoMTNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBFWFRJX0ZUU1JfVFIxM19Nc2sgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBFWFRJX0ZUU1JfVFIxM19Qb3MpICAgICAgIC8qITwgMHgwMDAwMjAwMCAqLw0KI2RlZmluZSBFWFRJX0ZUU1JfVFIxMyAgICAgICAgICAgICAgICAgICAgICBFWFRJX0ZUU1JfVFIxM19Nc2sgICAgICAgICAgICAgICAgIC8qITwgRmFsbGluZyB0cmlnZ2VyIGV2ZW50IGNvbmZpZ3VyYXRpb24gYml0IG9mIGxpbmUgMTMgKi8NCiNkZWZpbmUgRVhUSV9GVFNSX1RSMTRfUG9zICAgICAgICAgICAgICAgICAgKDE0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRVhUSV9GVFNSX1RSMTRfTXNrICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgRVhUSV9GVFNSX1RSMTRfUG9zKSAgICAgICAvKiE8IDB4MDAwMDQwMDAgKi8NCiNkZWZpbmUgRVhUSV9GVFNSX1RSMTQgICAgICAgICAgICAgICAgICAgICAgRVhUSV9GVFNSX1RSMTRfTXNrICAgICAgICAgICAgICAgICAvKiE8IEZhbGxpbmcgdHJpZ2dlciBldmVudCBjb25maWd1cmF0aW9uIGJpdCBvZiBsaW5lIDE0ICovDQojZGVmaW5lIEVYVElfRlRTUl9UUjE1X1BvcyAgICAgICAgICAgICAgICAgICgxNVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEVYVElfRlRTUl9UUjE1X01zayAgICAgICAgICAgICAgICAgICgweDFVIDw8IEVYVElfRlRTUl9UUjE1X1BvcykgICAgICAgLyohPCAweDAwMDA4MDAwICovDQojZGVmaW5lIEVYVElfRlRTUl9UUjE1ICAgICAgICAgICAgICAgICAgICAgIEVYVElfRlRTUl9UUjE1X01zayAgICAgICAgICAgICAgICAgLyohPCBGYWxsaW5nIHRyaWdnZXIgZXZlbnQgY29uZmlndXJhdGlvbiBiaXQgb2YgbGluZSAxNSAqLw0KI2RlZmluZSBFWFRJX0ZUU1JfVFIxNl9Qb3MgICAgICAgICAgICAgICAgICAoMTZVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBFWFRJX0ZUU1JfVFIxNl9Nc2sgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBFWFRJX0ZUU1JfVFIxNl9Qb3MpICAgICAgIC8qITwgMHgwMDAxMDAwMCAqLw0KI2RlZmluZSBFWFRJX0ZUU1JfVFIxNiAgICAgICAgICAgICAgICAgICAgICBFWFRJX0ZUU1JfVFIxNl9Nc2sgICAgICAgICAgICAgICAgIC8qITwgRmFsbGluZyB0cmlnZ2VyIGV2ZW50IGNvbmZpZ3VyYXRpb24gYml0IG9mIGxpbmUgMTYgKi8NCiNkZWZpbmUgRVhUSV9GVFNSX1RSMTdfUG9zICAgICAgICAgICAgICAgICAgKDE3VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRVhUSV9GVFNSX1RSMTdfTXNrICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgRVhUSV9GVFNSX1RSMTdfUG9zKSAgICAgICAvKiE8IDB4MDAwMjAwMDAgKi8NCiNkZWZpbmUgRVhUSV9GVFNSX1RSMTcgICAgICAgICAgICAgICAgICAgICAgRVhUSV9GVFNSX1RSMTdfTXNrICAgICAgICAgICAgICAgICAvKiE8IEZhbGxpbmcgdHJpZ2dlciBldmVudCBjb25maWd1cmF0aW9uIGJpdCBvZiBsaW5lIDE3ICovDQojZGVmaW5lIEVYVElfRlRTUl9UUjE4X1BvcyAgICAgICAgICAgICAgICAgICgxOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEVYVElfRlRTUl9UUjE4X01zayAgICAgICAgICAgICAgICAgICgweDFVIDw8IEVYVElfRlRTUl9UUjE4X1BvcykgICAgICAgLyohPCAweDAwMDQwMDAwICovDQojZGVmaW5lIEVYVElfRlRTUl9UUjE4ICAgICAgICAgICAgICAgICAgICAgIEVYVElfRlRTUl9UUjE4X01zayAgICAgICAgICAgICAgICAgLyohPCBGYWxsaW5nIHRyaWdnZXIgZXZlbnQgY29uZmlndXJhdGlvbiBiaXQgb2YgbGluZSAxOCAqLw0KI2RlZmluZSBFWFRJX0ZUU1JfVFIxOV9Qb3MgICAgICAgICAgICAgICAgICAoMTlVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBFWFRJX0ZUU1JfVFIxOV9Nc2sgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBFWFRJX0ZUU1JfVFIxOV9Qb3MpICAgICAgIC8qITwgMHgwMDA4MDAwMCAqLw0KI2RlZmluZSBFWFRJX0ZUU1JfVFIxOSAgICAgICAgICAgICAgICAgICAgICBFWFRJX0ZUU1JfVFIxOV9Nc2sgICAgICAgICAgICAgICAgIC8qITwgRmFsbGluZyB0cmlnZ2VyIGV2ZW50IGNvbmZpZ3VyYXRpb24gYml0IG9mIGxpbmUgMTkgKi8NCiNkZWZpbmUgRVhUSV9GVFNSX1RSMjBfUG9zICAgICAgICAgICAgICAgICAgKDIwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRVhUSV9GVFNSX1RSMjBfTXNrICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgRVhUSV9GVFNSX1RSMjBfUG9zKSAgICAgICAvKiE8IDB4MDAxMDAwMDAgKi8NCiNkZWZpbmUgRVhUSV9GVFNSX1RSMjAgICAgICAgICAgICAgICAgICAgICAgRVhUSV9GVFNSX1RSMjBfTXNrICAgICAgICAgICAgICAgICAvKiE8IEZhbGxpbmcgdHJpZ2dlciBldmVudCBjb25maWd1cmF0aW9uIGJpdCBvZiBsaW5lIDIwICovDQojZGVmaW5lIEVYVElfRlRTUl9UUjIxX1BvcyAgICAgICAgICAgICAgICAgICgyMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEVYVElfRlRTUl9UUjIxX01zayAgICAgICAgICAgICAgICAgICgweDFVIDw8IEVYVElfRlRTUl9UUjIxX1BvcykgICAgICAgLyohPCAweDAwMjAwMDAwICovDQojZGVmaW5lIEVYVElfRlRTUl9UUjIxICAgICAgICAgICAgICAgICAgICAgIEVYVElfRlRTUl9UUjIxX01zayAgICAgICAgICAgICAgICAgLyohPCBGYWxsaW5nIHRyaWdnZXIgZXZlbnQgY29uZmlndXJhdGlvbiBiaXQgb2YgbGluZSAyMSAqLw0KI2RlZmluZSBFWFRJX0ZUU1JfVFIyMl9Qb3MgICAgICAgICAgICAgICAgICAoMjJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBFWFRJX0ZUU1JfVFIyMl9Nc2sgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBFWFRJX0ZUU1JfVFIyMl9Qb3MpICAgICAgIC8qITwgMHgwMDQwMDAwMCAqLw0KI2RlZmluZSBFWFRJX0ZUU1JfVFIyMiAgICAgICAgICAgICAgICAgICAgICBFWFRJX0ZUU1JfVFIyMl9Nc2sgICAgICAgICAgICAgICAgIC8qITwgRmFsbGluZyB0cmlnZ2VyIGV2ZW50IGNvbmZpZ3VyYXRpb24gYml0IG9mIGxpbmUgMjIgKi8NCiNkZWZpbmUgRVhUSV9GVFNSX1RSMjNfUG9zICAgICAgICAgICAgICAgICAgKDIzVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRVhUSV9GVFNSX1RSMjNfTXNrICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgRVhUSV9GVFNSX1RSMjNfUG9zKSAgICAgICAvKiE8IDB4MDA4MDAwMDAgKi8NCiNkZWZpbmUgRVhUSV9GVFNSX1RSMjMgICAgICAgICAgICAgICAgICAgICAgRVhUSV9GVFNSX1RSMjNfTXNrICAgICAgICAgICAgICAgICAvKiE8IEZhbGxpbmcgdHJpZ2dlciBldmVudCBjb25maWd1cmF0aW9uIGJpdCBvZiBsaW5lIDIzICovDQoNCi8qIFJlZmVyZW5jZXMgRGVmaW5lcyAqLw0KI2RlZmluZSAgRVhUSV9GVFNSX0ZUMCBFWFRJX0ZUU1JfVFIwDQojZGVmaW5lICBFWFRJX0ZUU1JfRlQxIEVYVElfRlRTUl9UUjENCiNkZWZpbmUgIEVYVElfRlRTUl9GVDIgRVhUSV9GVFNSX1RSMg0KI2RlZmluZSAgRVhUSV9GVFNSX0ZUMyBFWFRJX0ZUU1JfVFIzDQojZGVmaW5lICBFWFRJX0ZUU1JfRlQ0IEVYVElfRlRTUl9UUjQNCiNkZWZpbmUgIEVYVElfRlRTUl9GVDUgRVhUSV9GVFNSX1RSNQ0KI2RlZmluZSAgRVhUSV9GVFNSX0ZUNiBFWFRJX0ZUU1JfVFI2DQojZGVmaW5lICBFWFRJX0ZUU1JfRlQ3IEVYVElfRlRTUl9UUjcNCiNkZWZpbmUgIEVYVElfRlRTUl9GVDggRVhUSV9GVFNSX1RSOA0KI2RlZmluZSAgRVhUSV9GVFNSX0ZUOSBFWFRJX0ZUU1JfVFI5DQojZGVmaW5lICBFWFRJX0ZUU1JfRlQxMCBFWFRJX0ZUU1JfVFIxMA0KI2RlZmluZSAgRVhUSV9GVFNSX0ZUMTEgRVhUSV9GVFNSX1RSMTENCiNkZWZpbmUgIEVYVElfRlRTUl9GVDEyIEVYVElfRlRTUl9UUjEyDQojZGVmaW5lICBFWFRJX0ZUU1JfRlQxMyBFWFRJX0ZUU1JfVFIxMw0KI2RlZmluZSAgRVhUSV9GVFNSX0ZUMTQgRVhUSV9GVFNSX1RSMTQNCiNkZWZpbmUgIEVYVElfRlRTUl9GVDE1IEVYVElfRlRTUl9UUjE1DQojZGVmaW5lICBFWFRJX0ZUU1JfRlQxNiBFWFRJX0ZUU1JfVFIxNg0KI2RlZmluZSAgRVhUSV9GVFNSX0ZUMTcgRVhUSV9GVFNSX1RSMTcNCiNkZWZpbmUgIEVYVElfRlRTUl9GVDE4IEVYVElfRlRTUl9UUjE4DQojZGVmaW5lICBFWFRJX0ZUU1JfRlQxOSBFWFRJX0ZUU1JfVFIxOQ0KI2RlZmluZSAgRVhUSV9GVFNSX0ZUMjAgRVhUSV9GVFNSX1RSMjANCiNkZWZpbmUgIEVYVElfRlRTUl9GVDIxIEVYVElfRlRTUl9UUjIxDQojZGVmaW5lICBFWFRJX0ZUU1JfRlQyMiBFWFRJX0ZUU1JfVFIyMg0KI2RlZmluZSAgRVhUSV9GVFNSX0ZUMjMgRVhUSV9GVFNSX1RSMjMNCg0KLyoqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIEVYVElfU1dJRVIgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgRVhUSV9TV0lFUl9TV0lFUjBfUG9zICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRVhUSV9TV0lFUl9TV0lFUjBfTXNrICAgICAgICAgICAgICAgKDB4MVUgPDwgRVhUSV9TV0lFUl9TV0lFUjBfUG9zKSAgICAvKiE8IDB4MDAwMDAwMDEgKi8NCiNkZWZpbmUgRVhUSV9TV0lFUl9TV0lFUjAgICAgICAgICAgICAgICAgICAgRVhUSV9TV0lFUl9TV0lFUjBfTXNrICAgICAgICAgICAgICAvKiE8IFNvZnR3YXJlIEludGVycnVwdCBvbiBsaW5lIDAgKi8NCiNkZWZpbmUgRVhUSV9TV0lFUl9TV0lFUjFfUG9zICAgICAgICAgICAgICAgKDFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRVhUSV9TV0lFUl9TV0lFUjFfTXNrICAgICAgICAgICAgICAgKDB4MVUgPDwgRVhUSV9TV0lFUl9TV0lFUjFfUG9zKSAgICAvKiE8IDB4MDAwMDAwMDIgKi8NCiNkZWZpbmUgRVhUSV9TV0lFUl9TV0lFUjEgICAgICAgICAgICAgICAgICAgRVhUSV9TV0lFUl9TV0lFUjFfTXNrICAgICAgICAgICAgICAvKiE8IFNvZnR3YXJlIEludGVycnVwdCBvbiBsaW5lIDEgKi8NCiNkZWZpbmUgRVhUSV9TV0lFUl9TV0lFUjJfUG9zICAgICAgICAgICAgICAgKDJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRVhUSV9TV0lFUl9TV0lFUjJfTXNrICAgICAgICAgICAgICAgKDB4MVUgPDwgRVhUSV9TV0lFUl9TV0lFUjJfUG9zKSAgICAvKiE8IDB4MDAwMDAwMDQgKi8NCiNkZWZpbmUgRVhUSV9TV0lFUl9TV0lFUjIgICAgICAgICAgICAgICAgICAgRVhUSV9TV0lFUl9TV0lFUjJfTXNrICAgICAgICAgICAgICAvKiE8IFNvZnR3YXJlIEludGVycnVwdCBvbiBsaW5lIDIgKi8NCiNkZWZpbmUgRVhUSV9TV0lFUl9TV0lFUjNfUG9zICAgICAgICAgICAgICAgKDNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRVhUSV9TV0lFUl9TV0lFUjNfTXNrICAgICAgICAgICAgICAgKDB4MVUgPDwgRVhUSV9TV0lFUl9TV0lFUjNfUG9zKSAgICAvKiE8IDB4MDAwMDAwMDggKi8NCiNkZWZpbmUgRVhUSV9TV0lFUl9TV0lFUjMgICAgICAgICAgICAgICAgICAgRVhUSV9TV0lFUl9TV0lFUjNfTXNrICAgICAgICAgICAgICAvKiE8IFNvZnR3YXJlIEludGVycnVwdCBvbiBsaW5lIDMgKi8NCiNkZWZpbmUgRVhUSV9TV0lFUl9TV0lFUjRfUG9zICAgICAgICAgICAgICAgKDRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRVhUSV9TV0lFUl9TV0lFUjRfTXNrICAgICAgICAgICAgICAgKDB4MVUgPDwgRVhUSV9TV0lFUl9TV0lFUjRfUG9zKSAgICAvKiE8IDB4MDAwMDAwMTAgKi8NCiNkZWZpbmUgRVhUSV9TV0lFUl9TV0lFUjQgICAgICAgICAgICAgICAgICAgRVhUSV9TV0lFUl9TV0lFUjRfTXNrICAgICAgICAgICAgICAvKiE8IFNvZnR3YXJlIEludGVycnVwdCBvbiBsaW5lIDQgKi8NCiNkZWZpbmUgRVhUSV9TV0lFUl9TV0lFUjVfUG9zICAgICAgICAgICAgICAgKDVVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRVhUSV9TV0lFUl9TV0lFUjVfTXNrICAgICAgICAgICAgICAgKDB4MVUgPDwgRVhUSV9TV0lFUl9TV0lFUjVfUG9zKSAgICAvKiE8IDB4MDAwMDAwMjAgKi8NCiNkZWZpbmUgRVhUSV9TV0lFUl9TV0lFUjUgICAgICAgICAgICAgICAgICAgRVhUSV9TV0lFUl9TV0lFUjVfTXNrICAgICAgICAgICAgICAvKiE8IFNvZnR3YXJlIEludGVycnVwdCBvbiBsaW5lIDUgKi8NCiNkZWZpbmUgRVhUSV9TV0lFUl9TV0lFUjZfUG9zICAgICAgICAgICAgICAgKDZVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRVhUSV9TV0lFUl9TV0lFUjZfTXNrICAgICAgICAgICAgICAgKDB4MVUgPDwgRVhUSV9TV0lFUl9TV0lFUjZfUG9zKSAgICAvKiE8IDB4MDAwMDAwNDAgKi8NCiNkZWZpbmUgRVhUSV9TV0lFUl9TV0lFUjYgICAgICAgICAgICAgICAgICAgRVhUSV9TV0lFUl9TV0lFUjZfTXNrICAgICAgICAgICAgICAvKiE8IFNvZnR3YXJlIEludGVycnVwdCBvbiBsaW5lIDYgKi8NCiNkZWZpbmUgRVhUSV9TV0lFUl9TV0lFUjdfUG9zICAgICAgICAgICAgICAgKDdVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRVhUSV9TV0lFUl9TV0lFUjdfTXNrICAgICAgICAgICAgICAgKDB4MVUgPDwgRVhUSV9TV0lFUl9TV0lFUjdfUG9zKSAgICAvKiE8IDB4MDAwMDAwODAgKi8NCiNkZWZpbmUgRVhUSV9TV0lFUl9TV0lFUjcgICAgICAgICAgICAgICAgICAgRVhUSV9TV0lFUl9TV0lFUjdfTXNrICAgICAgICAgICAgICAvKiE8IFNvZnR3YXJlIEludGVycnVwdCBvbiBsaW5lIDcgKi8NCiNkZWZpbmUgRVhUSV9TV0lFUl9TV0lFUjhfUG9zICAgICAgICAgICAgICAgKDhVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRVhUSV9TV0lFUl9TV0lFUjhfTXNrICAgICAgICAgICAgICAgKDB4MVUgPDwgRVhUSV9TV0lFUl9TV0lFUjhfUG9zKSAgICAvKiE8IDB4MDAwMDAxMDAgKi8NCiNkZWZpbmUgRVhUSV9TV0lFUl9TV0lFUjggICAgICAgICAgICAgICAgICAgRVhUSV9TV0lFUl9TV0lFUjhfTXNrICAgICAgICAgICAgICAvKiE8IFNvZnR3YXJlIEludGVycnVwdCBvbiBsaW5lIDggKi8NCiNkZWZpbmUgRVhUSV9TV0lFUl9TV0lFUjlfUG9zICAgICAgICAgICAgICAgKDlVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRVhUSV9TV0lFUl9TV0lFUjlfTXNrICAgICAgICAgICAgICAgKDB4MVUgPDwgRVhUSV9TV0lFUl9TV0lFUjlfUG9zKSAgICAvKiE8IDB4MDAwMDAyMDAgKi8NCiNkZWZpbmUgRVhUSV9TV0lFUl9TV0lFUjkgICAgICAgICAgICAgICAgICAgRVhUSV9TV0lFUl9TV0lFUjlfTXNrICAgICAgICAgICAgICAvKiE8IFNvZnR3YXJlIEludGVycnVwdCBvbiBsaW5lIDkgKi8NCiNkZWZpbmUgRVhUSV9TV0lFUl9TV0lFUjEwX1BvcyAgICAgICAgICAgICAgKDEwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRVhUSV9TV0lFUl9TV0lFUjEwX01zayAgICAgICAgICAgICAgKDB4MVUgPDwgRVhUSV9TV0lFUl9TV0lFUjEwX1BvcykgICAvKiE8IDB4MDAwMDA0MDAgKi8NCiNkZWZpbmUgRVhUSV9TV0lFUl9TV0lFUjEwICAgICAgICAgICAgICAgICAgRVhUSV9TV0lFUl9TV0lFUjEwX01zayAgICAgICAgICAgICAvKiE8IFNvZnR3YXJlIEludGVycnVwdCBvbiBsaW5lIDEwICovDQojZGVmaW5lIEVYVElfU1dJRVJfU1dJRVIxMV9Qb3MgICAgICAgICAgICAgICgxMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEVYVElfU1dJRVJfU1dJRVIxMV9Nc2sgICAgICAgICAgICAgICgweDFVIDw8IEVYVElfU1dJRVJfU1dJRVIxMV9Qb3MpICAgLyohPCAweDAwMDAwODAwICovDQojZGVmaW5lIEVYVElfU1dJRVJfU1dJRVIxMSAgICAgICAgICAgICAgICAgIEVYVElfU1dJRVJfU1dJRVIxMV9Nc2sgICAgICAgICAgICAgLyohPCBTb2Z0d2FyZSBJbnRlcnJ1cHQgb24gbGluZSAxMSAqLw0KI2RlZmluZSBFWFRJX1NXSUVSX1NXSUVSMTJfUG9zICAgICAgICAgICAgICAoMTJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBFWFRJX1NXSUVSX1NXSUVSMTJfTXNrICAgICAgICAgICAgICAoMHgxVSA8PCBFWFRJX1NXSUVSX1NXSUVSMTJfUG9zKSAgIC8qITwgMHgwMDAwMTAwMCAqLw0KI2RlZmluZSBFWFRJX1NXSUVSX1NXSUVSMTIgICAgICAgICAgICAgICAgICBFWFRJX1NXSUVSX1NXSUVSMTJfTXNrICAgICAgICAgICAgIC8qITwgU29mdHdhcmUgSW50ZXJydXB0IG9uIGxpbmUgMTIgKi8NCiNkZWZpbmUgRVhUSV9TV0lFUl9TV0lFUjEzX1BvcyAgICAgICAgICAgICAgKDEzVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRVhUSV9TV0lFUl9TV0lFUjEzX01zayAgICAgICAgICAgICAgKDB4MVUgPDwgRVhUSV9TV0lFUl9TV0lFUjEzX1BvcykgICAvKiE8IDB4MDAwMDIwMDAgKi8NCiNkZWZpbmUgRVhUSV9TV0lFUl9TV0lFUjEzICAgICAgICAgICAgICAgICAgRVhUSV9TV0lFUl9TV0lFUjEzX01zayAgICAgICAgICAgICAvKiE8IFNvZnR3YXJlIEludGVycnVwdCBvbiBsaW5lIDEzICovDQojZGVmaW5lIEVYVElfU1dJRVJfU1dJRVIxNF9Qb3MgICAgICAgICAgICAgICgxNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEVYVElfU1dJRVJfU1dJRVIxNF9Nc2sgICAgICAgICAgICAgICgweDFVIDw8IEVYVElfU1dJRVJfU1dJRVIxNF9Qb3MpICAgLyohPCAweDAwMDA0MDAwICovDQojZGVmaW5lIEVYVElfU1dJRVJfU1dJRVIxNCAgICAgICAgICAgICAgICAgIEVYVElfU1dJRVJfU1dJRVIxNF9Nc2sgICAgICAgICAgICAgLyohPCBTb2Z0d2FyZSBJbnRlcnJ1cHQgb24gbGluZSAxNCAqLw0KI2RlZmluZSBFWFRJX1NXSUVSX1NXSUVSMTVfUG9zICAgICAgICAgICAgICAoMTVVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBFWFRJX1NXSUVSX1NXSUVSMTVfTXNrICAgICAgICAgICAgICAoMHgxVSA8PCBFWFRJX1NXSUVSX1NXSUVSMTVfUG9zKSAgIC8qITwgMHgwMDAwODAwMCAqLw0KI2RlZmluZSBFWFRJX1NXSUVSX1NXSUVSMTUgICAgICAgICAgICAgICAgICBFWFRJX1NXSUVSX1NXSUVSMTVfTXNrICAgICAgICAgICAgIC8qITwgU29mdHdhcmUgSW50ZXJydXB0IG9uIGxpbmUgMTUgKi8NCiNkZWZpbmUgRVhUSV9TV0lFUl9TV0lFUjE2X1BvcyAgICAgICAgICAgICAgKDE2VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRVhUSV9TV0lFUl9TV0lFUjE2X01zayAgICAgICAgICAgICAgKDB4MVUgPDwgRVhUSV9TV0lFUl9TV0lFUjE2X1BvcykgICAvKiE8IDB4MDAwMTAwMDAgKi8NCiNkZWZpbmUgRVhUSV9TV0lFUl9TV0lFUjE2ICAgICAgICAgICAgICAgICAgRVhUSV9TV0lFUl9TV0lFUjE2X01zayAgICAgICAgICAgICAvKiE8IFNvZnR3YXJlIEludGVycnVwdCBvbiBsaW5lIDE2ICovDQojZGVmaW5lIEVYVElfU1dJRVJfU1dJRVIxN19Qb3MgICAgICAgICAgICAgICgxN1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEVYVElfU1dJRVJfU1dJRVIxN19Nc2sgICAgICAgICAgICAgICgweDFVIDw8IEVYVElfU1dJRVJfU1dJRVIxN19Qb3MpICAgLyohPCAweDAwMDIwMDAwICovDQojZGVmaW5lIEVYVElfU1dJRVJfU1dJRVIxNyAgICAgICAgICAgICAgICAgIEVYVElfU1dJRVJfU1dJRVIxN19Nc2sgICAgICAgICAgICAgLyohPCBTb2Z0d2FyZSBJbnRlcnJ1cHQgb24gbGluZSAxNyAqLw0KI2RlZmluZSBFWFRJX1NXSUVSX1NXSUVSMThfUG9zICAgICAgICAgICAgICAoMThVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBFWFRJX1NXSUVSX1NXSUVSMThfTXNrICAgICAgICAgICAgICAoMHgxVSA8PCBFWFRJX1NXSUVSX1NXSUVSMThfUG9zKSAgIC8qITwgMHgwMDA0MDAwMCAqLw0KI2RlZmluZSBFWFRJX1NXSUVSX1NXSUVSMTggICAgICAgICAgICAgICAgICBFWFRJX1NXSUVSX1NXSUVSMThfTXNrICAgICAgICAgICAgIC8qITwgU29mdHdhcmUgSW50ZXJydXB0IG9uIGxpbmUgMTggKi8NCiNkZWZpbmUgRVhUSV9TV0lFUl9TV0lFUjE5X1BvcyAgICAgICAgICAgICAgKDE5VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRVhUSV9TV0lFUl9TV0lFUjE5X01zayAgICAgICAgICAgICAgKDB4MVUgPDwgRVhUSV9TV0lFUl9TV0lFUjE5X1BvcykgICAvKiE8IDB4MDAwODAwMDAgKi8NCiNkZWZpbmUgRVhUSV9TV0lFUl9TV0lFUjE5ICAgICAgICAgICAgICAgICAgRVhUSV9TV0lFUl9TV0lFUjE5X01zayAgICAgICAgICAgICAvKiE8IFNvZnR3YXJlIEludGVycnVwdCBvbiBsaW5lIDE5ICovDQojZGVmaW5lIEVYVElfU1dJRVJfU1dJRVIyMF9Qb3MgICAgICAgICAgICAgICgyMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEVYVElfU1dJRVJfU1dJRVIyMF9Nc2sgICAgICAgICAgICAgICgweDFVIDw8IEVYVElfU1dJRVJfU1dJRVIyMF9Qb3MpICAgLyohPCAweDAwMTAwMDAwICovDQojZGVmaW5lIEVYVElfU1dJRVJfU1dJRVIyMCAgICAgICAgICAgICAgICAgIEVYVElfU1dJRVJfU1dJRVIyMF9Nc2sgICAgICAgICAgICAgLyohPCBTb2Z0d2FyZSBJbnRlcnJ1cHQgb24gbGluZSAyMCAqLw0KI2RlZmluZSBFWFRJX1NXSUVSX1NXSUVSMjFfUG9zICAgICAgICAgICAgICAoMjFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBFWFRJX1NXSUVSX1NXSUVSMjFfTXNrICAgICAgICAgICAgICAoMHgxVSA8PCBFWFRJX1NXSUVSX1NXSUVSMjFfUG9zKSAgIC8qITwgMHgwMDIwMDAwMCAqLw0KI2RlZmluZSBFWFRJX1NXSUVSX1NXSUVSMjEgICAgICAgICAgICAgICAgICBFWFRJX1NXSUVSX1NXSUVSMjFfTXNrICAgICAgICAgICAgIC8qITwgU29mdHdhcmUgSW50ZXJydXB0IG9uIGxpbmUgMjEgKi8NCiNkZWZpbmUgRVhUSV9TV0lFUl9TV0lFUjIyX1BvcyAgICAgICAgICAgICAgKDIyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRVhUSV9TV0lFUl9TV0lFUjIyX01zayAgICAgICAgICAgICAgKDB4MVUgPDwgRVhUSV9TV0lFUl9TV0lFUjIyX1BvcykgICAvKiE8IDB4MDA0MDAwMDAgKi8NCiNkZWZpbmUgRVhUSV9TV0lFUl9TV0lFUjIyICAgICAgICAgICAgICAgICAgRVhUSV9TV0lFUl9TV0lFUjIyX01zayAgICAgICAgICAgICAvKiE8IFNvZnR3YXJlIEludGVycnVwdCBvbiBsaW5lIDIyICovDQojZGVmaW5lIEVYVElfU1dJRVJfU1dJRVIyM19Qb3MgICAgICAgICAgICAgICgyM1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEVYVElfU1dJRVJfU1dJRVIyM19Nc2sgICAgICAgICAgICAgICgweDFVIDw8IEVYVElfU1dJRVJfU1dJRVIyM19Qb3MpICAgLyohPCAweDAwODAwMDAwICovDQojZGVmaW5lIEVYVElfU1dJRVJfU1dJRVIyMyAgICAgICAgICAgICAgICAgIEVYVElfU1dJRVJfU1dJRVIyM19Nc2sgICAgICAgICAgICAgLyohPCBTb2Z0d2FyZSBJbnRlcnJ1cHQgb24gbGluZSAyMyAqLw0KDQovKiBSZWZlcmVuY2VzIERlZmluZXMgKi8NCiNkZWZpbmUgIEVYVElfU1dJRVJfU1dJMCBFWFRJX1NXSUVSX1NXSUVSMA0KI2RlZmluZSAgRVhUSV9TV0lFUl9TV0kxIEVYVElfU1dJRVJfU1dJRVIxDQojZGVmaW5lICBFWFRJX1NXSUVSX1NXSTIgRVhUSV9TV0lFUl9TV0lFUjINCiNkZWZpbmUgIEVYVElfU1dJRVJfU1dJMyBFWFRJX1NXSUVSX1NXSUVSMw0KI2RlZmluZSAgRVhUSV9TV0lFUl9TV0k0IEVYVElfU1dJRVJfU1dJRVI0DQojZGVmaW5lICBFWFRJX1NXSUVSX1NXSTUgRVhUSV9TV0lFUl9TV0lFUjUNCiNkZWZpbmUgIEVYVElfU1dJRVJfU1dJNiBFWFRJX1NXSUVSX1NXSUVSNg0KI2RlZmluZSAgRVhUSV9TV0lFUl9TV0k3IEVYVElfU1dJRVJfU1dJRVI3DQojZGVmaW5lICBFWFRJX1NXSUVSX1NXSTggRVhUSV9TV0lFUl9TV0lFUjgNCiNkZWZpbmUgIEVYVElfU1dJRVJfU1dJOSBFWFRJX1NXSUVSX1NXSUVSOQ0KI2RlZmluZSAgRVhUSV9TV0lFUl9TV0kxMCBFWFRJX1NXSUVSX1NXSUVSMTANCiNkZWZpbmUgIEVYVElfU1dJRVJfU1dJMTEgRVhUSV9TV0lFUl9TV0lFUjExDQojZGVmaW5lICBFWFRJX1NXSUVSX1NXSTEyIEVYVElfU1dJRVJfU1dJRVIxMg0KI2RlZmluZSAgRVhUSV9TV0lFUl9TV0kxMyBFWFRJX1NXSUVSX1NXSUVSMTMNCiNkZWZpbmUgIEVYVElfU1dJRVJfU1dJMTQgRVhUSV9TV0lFUl9TV0lFUjE0DQojZGVmaW5lICBFWFRJX1NXSUVSX1NXSTE1IEVYVElfU1dJRVJfU1dJRVIxNQ0KI2RlZmluZSAgRVhUSV9TV0lFUl9TV0kxNiBFWFRJX1NXSUVSX1NXSUVSMTYNCiNkZWZpbmUgIEVYVElfU1dJRVJfU1dJMTcgRVhUSV9TV0lFUl9TV0lFUjE3DQojZGVmaW5lICBFWFRJX1NXSUVSX1NXSTE4IEVYVElfU1dJRVJfU1dJRVIxOA0KI2RlZmluZSAgRVhUSV9TV0lFUl9TV0kxOSBFWFRJX1NXSUVSX1NXSUVSMTkNCiNkZWZpbmUgIEVYVElfU1dJRVJfU1dJMjAgRVhUSV9TV0lFUl9TV0lFUjIwDQojZGVmaW5lICBFWFRJX1NXSUVSX1NXSTIxIEVYVElfU1dJRVJfU1dJRVIyMQ0KI2RlZmluZSAgRVhUSV9TV0lFUl9TV0kyMiBFWFRJX1NXSUVSX1NXSUVSMjINCiNkZWZpbmUgIEVYVElfU1dJRVJfU1dJMjMgRVhUSV9TV0lFUl9TV0lFUjIzDQoNCi8qKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgRVhUSV9QUiByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIEVYVElfUFJfUFIwX1BvcyAgICAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEVYVElfUFJfUFIwX01zayAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IEVYVElfUFJfUFIwX1BvcykgICAgICAgICAgLyohPCAweDAwMDAwMDAxICovDQojZGVmaW5lIEVYVElfUFJfUFIwICAgICAgICAgICAgICAgICAgICAgICAgIEVYVElfUFJfUFIwX01zayAgICAgICAgICAgICAgICAgICAgLyohPCBQZW5kaW5nIGJpdCBmb3IgbGluZSAwICovDQojZGVmaW5lIEVYVElfUFJfUFIxX1BvcyAgICAgICAgICAgICAgICAgICAgICgxVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEVYVElfUFJfUFIxX01zayAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IEVYVElfUFJfUFIxX1BvcykgICAgICAgICAgLyohPCAweDAwMDAwMDAyICovDQojZGVmaW5lIEVYVElfUFJfUFIxICAgICAgICAgICAgICAgICAgICAgICAgIEVYVElfUFJfUFIxX01zayAgICAgICAgICAgICAgICAgICAgLyohPCBQZW5kaW5nIGJpdCBmb3IgbGluZSAxICovDQojZGVmaW5lIEVYVElfUFJfUFIyX1BvcyAgICAgICAgICAgICAgICAgICAgICgyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEVYVElfUFJfUFIyX01zayAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IEVYVElfUFJfUFIyX1BvcykgICAgICAgICAgLyohPCAweDAwMDAwMDA0ICovDQojZGVmaW5lIEVYVElfUFJfUFIyICAgICAgICAgICAgICAgICAgICAgICAgIEVYVElfUFJfUFIyX01zayAgICAgICAgICAgICAgICAgICAgLyohPCBQZW5kaW5nIGJpdCBmb3IgbGluZSAyICovDQojZGVmaW5lIEVYVElfUFJfUFIzX1BvcyAgICAgICAgICAgICAgICAgICAgICgzVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEVYVElfUFJfUFIzX01zayAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IEVYVElfUFJfUFIzX1BvcykgICAgICAgICAgLyohPCAweDAwMDAwMDA4ICovDQojZGVmaW5lIEVYVElfUFJfUFIzICAgICAgICAgICAgICAgICAgICAgICAgIEVYVElfUFJfUFIzX01zayAgICAgICAgICAgICAgICAgICAgLyohPCBQZW5kaW5nIGJpdCBmb3IgbGluZSAzICovDQojZGVmaW5lIEVYVElfUFJfUFI0X1BvcyAgICAgICAgICAgICAgICAgICAgICg0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEVYVElfUFJfUFI0X01zayAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IEVYVElfUFJfUFI0X1BvcykgICAgICAgICAgLyohPCAweDAwMDAwMDEwICovDQojZGVmaW5lIEVYVElfUFJfUFI0ICAgICAgICAgICAgICAgICAgICAgICAgIEVYVElfUFJfUFI0X01zayAgICAgICAgICAgICAgICAgICAgLyohPCBQZW5kaW5nIGJpdCBmb3IgbGluZSA0ICovDQojZGVmaW5lIEVYVElfUFJfUFI1X1BvcyAgICAgICAgICAgICAgICAgICAgICg1VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEVYVElfUFJfUFI1X01zayAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IEVYVElfUFJfUFI1X1BvcykgICAgICAgICAgLyohPCAweDAwMDAwMDIwICovDQojZGVmaW5lIEVYVElfUFJfUFI1ICAgICAgICAgICAgICAgICAgICAgICAgIEVYVElfUFJfUFI1X01zayAgICAgICAgICAgICAgICAgICAgLyohPCBQZW5kaW5nIGJpdCBmb3IgbGluZSA1ICovDQojZGVmaW5lIEVYVElfUFJfUFI2X1BvcyAgICAgICAgICAgICAgICAgICAgICg2VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEVYVElfUFJfUFI2X01zayAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IEVYVElfUFJfUFI2X1BvcykgICAgICAgICAgLyohPCAweDAwMDAwMDQwICovDQojZGVmaW5lIEVYVElfUFJfUFI2ICAgICAgICAgICAgICAgICAgICAgICAgIEVYVElfUFJfUFI2X01zayAgICAgICAgICAgICAgICAgICAgLyohPCBQZW5kaW5nIGJpdCBmb3IgbGluZSA2ICovDQojZGVmaW5lIEVYVElfUFJfUFI3X1BvcyAgICAgICAgICAgICAgICAgICAgICg3VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEVYVElfUFJfUFI3X01zayAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IEVYVElfUFJfUFI3X1BvcykgICAgICAgICAgLyohPCAweDAwMDAwMDgwICovDQojZGVmaW5lIEVYVElfUFJfUFI3ICAgICAgICAgICAgICAgICAgICAgICAgIEVYVElfUFJfUFI3X01zayAgICAgICAgICAgICAgICAgICAgLyohPCBQZW5kaW5nIGJpdCBmb3IgbGluZSA3ICovDQojZGVmaW5lIEVYVElfUFJfUFI4X1BvcyAgICAgICAgICAgICAgICAgICAgICg4VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEVYVElfUFJfUFI4X01zayAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IEVYVElfUFJfUFI4X1BvcykgICAgICAgICAgLyohPCAweDAwMDAwMTAwICovDQojZGVmaW5lIEVYVElfUFJfUFI4ICAgICAgICAgICAgICAgICAgICAgICAgIEVYVElfUFJfUFI4X01zayAgICAgICAgICAgICAgICAgICAgLyohPCBQZW5kaW5nIGJpdCBmb3IgbGluZSA4ICovDQojZGVmaW5lIEVYVElfUFJfUFI5X1BvcyAgICAgICAgICAgICAgICAgICAgICg5VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEVYVElfUFJfUFI5X01zayAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IEVYVElfUFJfUFI5X1BvcykgICAgICAgICAgLyohPCAweDAwMDAwMjAwICovDQojZGVmaW5lIEVYVElfUFJfUFI5ICAgICAgICAgICAgICAgICAgICAgICAgIEVYVElfUFJfUFI5X01zayAgICAgICAgICAgICAgICAgICAgLyohPCBQZW5kaW5nIGJpdCBmb3IgbGluZSA5ICovDQojZGVmaW5lIEVYVElfUFJfUFIxMF9Qb3MgICAgICAgICAgICAgICAgICAgICgxMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEVYVElfUFJfUFIxMF9Nc2sgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IEVYVElfUFJfUFIxMF9Qb3MpICAgICAgICAgLyohPCAweDAwMDAwNDAwICovDQojZGVmaW5lIEVYVElfUFJfUFIxMCAgICAgICAgICAgICAgICAgICAgICAgIEVYVElfUFJfUFIxMF9Nc2sgICAgICAgICAgICAgICAgICAgLyohPCBQZW5kaW5nIGJpdCBmb3IgbGluZSAxMCAqLw0KI2RlZmluZSBFWFRJX1BSX1BSMTFfUG9zICAgICAgICAgICAgICAgICAgICAoMTFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBFWFRJX1BSX1BSMTFfTXNrICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBFWFRJX1BSX1BSMTFfUG9zKSAgICAgICAgIC8qITwgMHgwMDAwMDgwMCAqLw0KI2RlZmluZSBFWFRJX1BSX1BSMTEgICAgICAgICAgICAgICAgICAgICAgICBFWFRJX1BSX1BSMTFfTXNrICAgICAgICAgICAgICAgICAgIC8qITwgUGVuZGluZyBiaXQgZm9yIGxpbmUgMTEgKi8NCiNkZWZpbmUgRVhUSV9QUl9QUjEyX1BvcyAgICAgICAgICAgICAgICAgICAgKDEyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRVhUSV9QUl9QUjEyX01zayAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgRVhUSV9QUl9QUjEyX1BvcykgICAgICAgICAvKiE8IDB4MDAwMDEwMDAgKi8NCiNkZWZpbmUgRVhUSV9QUl9QUjEyICAgICAgICAgICAgICAgICAgICAgICAgRVhUSV9QUl9QUjEyX01zayAgICAgICAgICAgICAgICAgICAvKiE8IFBlbmRpbmcgYml0IGZvciBsaW5lIDEyICovDQojZGVmaW5lIEVYVElfUFJfUFIxM19Qb3MgICAgICAgICAgICAgICAgICAgICgxM1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEVYVElfUFJfUFIxM19Nc2sgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IEVYVElfUFJfUFIxM19Qb3MpICAgICAgICAgLyohPCAweDAwMDAyMDAwICovDQojZGVmaW5lIEVYVElfUFJfUFIxMyAgICAgICAgICAgICAgICAgICAgICAgIEVYVElfUFJfUFIxM19Nc2sgICAgICAgICAgICAgICAgICAgLyohPCBQZW5kaW5nIGJpdCBmb3IgbGluZSAxMyAqLw0KI2RlZmluZSBFWFRJX1BSX1BSMTRfUG9zICAgICAgICAgICAgICAgICAgICAoMTRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBFWFRJX1BSX1BSMTRfTXNrICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBFWFRJX1BSX1BSMTRfUG9zKSAgICAgICAgIC8qITwgMHgwMDAwNDAwMCAqLw0KI2RlZmluZSBFWFRJX1BSX1BSMTQgICAgICAgICAgICAgICAgICAgICAgICBFWFRJX1BSX1BSMTRfTXNrICAgICAgICAgICAgICAgICAgIC8qITwgUGVuZGluZyBiaXQgZm9yIGxpbmUgMTQgKi8NCiNkZWZpbmUgRVhUSV9QUl9QUjE1X1BvcyAgICAgICAgICAgICAgICAgICAgKDE1VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRVhUSV9QUl9QUjE1X01zayAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgRVhUSV9QUl9QUjE1X1BvcykgICAgICAgICAvKiE8IDB4MDAwMDgwMDAgKi8NCiNkZWZpbmUgRVhUSV9QUl9QUjE1ICAgICAgICAgICAgICAgICAgICAgICAgRVhUSV9QUl9QUjE1X01zayAgICAgICAgICAgICAgICAgICAvKiE8IFBlbmRpbmcgYml0IGZvciBsaW5lIDE1ICovDQojZGVmaW5lIEVYVElfUFJfUFIxNl9Qb3MgICAgICAgICAgICAgICAgICAgICgxNlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEVYVElfUFJfUFIxNl9Nc2sgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IEVYVElfUFJfUFIxNl9Qb3MpICAgICAgICAgLyohPCAweDAwMDEwMDAwICovDQojZGVmaW5lIEVYVElfUFJfUFIxNiAgICAgICAgICAgICAgICAgICAgICAgIEVYVElfUFJfUFIxNl9Nc2sgICAgICAgICAgICAgICAgICAgLyohPCBQZW5kaW5nIGJpdCBmb3IgbGluZSAxNiAqLw0KI2RlZmluZSBFWFRJX1BSX1BSMTdfUG9zICAgICAgICAgICAgICAgICAgICAoMTdVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBFWFRJX1BSX1BSMTdfTXNrICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBFWFRJX1BSX1BSMTdfUG9zKSAgICAgICAgIC8qITwgMHgwMDAyMDAwMCAqLw0KI2RlZmluZSBFWFRJX1BSX1BSMTcgICAgICAgICAgICAgICAgICAgICAgICBFWFRJX1BSX1BSMTdfTXNrICAgICAgICAgICAgICAgICAgIC8qITwgUGVuZGluZyBiaXQgZm9yIGxpbmUgMTcgKi8NCiNkZWZpbmUgRVhUSV9QUl9QUjE4X1BvcyAgICAgICAgICAgICAgICAgICAgKDE4VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRVhUSV9QUl9QUjE4X01zayAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgRVhUSV9QUl9QUjE4X1BvcykgICAgICAgICAvKiE8IDB4MDAwNDAwMDAgKi8NCiNkZWZpbmUgRVhUSV9QUl9QUjE4ICAgICAgICAgICAgICAgICAgICAgICAgRVhUSV9QUl9QUjE4X01zayAgICAgICAgICAgICAgICAgICAvKiE8IFBlbmRpbmcgYml0IGZvciBsaW5lIDE4ICovDQojZGVmaW5lIEVYVElfUFJfUFIxOV9Qb3MgICAgICAgICAgICAgICAgICAgICgxOVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEVYVElfUFJfUFIxOV9Nc2sgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IEVYVElfUFJfUFIxOV9Qb3MpICAgICAgICAgLyohPCAweDAwMDgwMDAwICovDQojZGVmaW5lIEVYVElfUFJfUFIxOSAgICAgICAgICAgICAgICAgICAgICAgIEVYVElfUFJfUFIxOV9Nc2sgICAgICAgICAgICAgICAgICAgLyohPCBQZW5kaW5nIGJpdCBmb3IgbGluZSAxOSAqLw0KI2RlZmluZSBFWFRJX1BSX1BSMjBfUG9zICAgICAgICAgICAgICAgICAgICAoMjBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBFWFRJX1BSX1BSMjBfTXNrICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBFWFRJX1BSX1BSMjBfUG9zKSAgICAgICAgIC8qITwgMHgwMDEwMDAwMCAqLw0KI2RlZmluZSBFWFRJX1BSX1BSMjAgICAgICAgICAgICAgICAgICAgICAgICBFWFRJX1BSX1BSMjBfTXNrICAgICAgICAgICAgICAgICAgIC8qITwgUGVuZGluZyBiaXQgZm9yIGxpbmUgMjAgKi8NCiNkZWZpbmUgRVhUSV9QUl9QUjIxX1BvcyAgICAgICAgICAgICAgICAgICAgKDIxVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRVhUSV9QUl9QUjIxX01zayAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgRVhUSV9QUl9QUjIxX1BvcykgICAgICAgICAvKiE8IDB4MDAyMDAwMDAgKi8NCiNkZWZpbmUgRVhUSV9QUl9QUjIxICAgICAgICAgICAgICAgICAgICAgICAgRVhUSV9QUl9QUjIxX01zayAgICAgICAgICAgICAgICAgICAvKiE8IFBlbmRpbmcgYml0IGZvciBsaW5lIDIxICovDQojZGVmaW5lIEVYVElfUFJfUFIyMl9Qb3MgICAgICAgICAgICAgICAgICAgICgyMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEVYVElfUFJfUFIyMl9Nc2sgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IEVYVElfUFJfUFIyMl9Qb3MpICAgICAgICAgLyohPCAweDAwNDAwMDAwICovDQojZGVmaW5lIEVYVElfUFJfUFIyMiAgICAgICAgICAgICAgICAgICAgICAgIEVYVElfUFJfUFIyMl9Nc2sgICAgICAgICAgICAgICAgICAgLyohPCBQZW5kaW5nIGJpdCBmb3IgbGluZSAyMiAqLw0KI2RlZmluZSBFWFRJX1BSX1BSMjNfUG9zICAgICAgICAgICAgICAgICAgICAoMjNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBFWFRJX1BSX1BSMjNfTXNrICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBFWFRJX1BSX1BSMjNfUG9zKSAgICAgICAgIC8qITwgMHgwMDgwMDAwMCAqLw0KI2RlZmluZSBFWFRJX1BSX1BSMjMgICAgICAgICAgICAgICAgICAgICAgICBFWFRJX1BSX1BSMjNfTXNrICAgICAgICAgICAgICAgICAgIC8qITwgUGVuZGluZyBiaXQgZm9yIGxpbmUgMjMgKi8NCg0KLyogUmVmZXJlbmNlcyBEZWZpbmVzICovDQojZGVmaW5lICBFWFRJX1BSX1BJRjAgRVhUSV9QUl9QUjANCiNkZWZpbmUgIEVYVElfUFJfUElGMSBFWFRJX1BSX1BSMQ0KI2RlZmluZSAgRVhUSV9QUl9QSUYyIEVYVElfUFJfUFIyDQojZGVmaW5lICBFWFRJX1BSX1BJRjMgRVhUSV9QUl9QUjMNCiNkZWZpbmUgIEVYVElfUFJfUElGNCBFWFRJX1BSX1BSNA0KI2RlZmluZSAgRVhUSV9QUl9QSUY1IEVYVElfUFJfUFI1DQojZGVmaW5lICBFWFRJX1BSX1BJRjYgRVhUSV9QUl9QUjYNCiNkZWZpbmUgIEVYVElfUFJfUElGNyBFWFRJX1BSX1BSNw0KI2RlZmluZSAgRVhUSV9QUl9QSUY4IEVYVElfUFJfUFI4DQojZGVmaW5lICBFWFRJX1BSX1BJRjkgRVhUSV9QUl9QUjkNCiNkZWZpbmUgIEVYVElfUFJfUElGMTAgRVhUSV9QUl9QUjEwDQojZGVmaW5lICBFWFRJX1BSX1BJRjExIEVYVElfUFJfUFIxMQ0KI2RlZmluZSAgRVhUSV9QUl9QSUYxMiBFWFRJX1BSX1BSMTINCiNkZWZpbmUgIEVYVElfUFJfUElGMTMgRVhUSV9QUl9QUjEzDQojZGVmaW5lICBFWFRJX1BSX1BJRjE0IEVYVElfUFJfUFIxNA0KI2RlZmluZSAgRVhUSV9QUl9QSUYxNSBFWFRJX1BSX1BSMTUNCiNkZWZpbmUgIEVYVElfUFJfUElGMTYgRVhUSV9QUl9QUjE2DQojZGVmaW5lICBFWFRJX1BSX1BJRjE3IEVYVElfUFJfUFIxNw0KI2RlZmluZSAgRVhUSV9QUl9QSUYxOCBFWFRJX1BSX1BSMTgNCiNkZWZpbmUgIEVYVElfUFJfUElGMTkgRVhUSV9QUl9QUjE5DQojZGVmaW5lICBFWFRJX1BSX1BJRjIwIEVYVElfUFJfUFIyMA0KI2RlZmluZSAgRVhUSV9QUl9QSUYyMSBFWFRJX1BSX1BSMjENCiNkZWZpbmUgIEVYVElfUFJfUElGMjIgRVhUSV9QUl9QUjIyDQojZGVmaW5lICBFWFRJX1BSX1BJRjIzIEVYVElfUFJfUFIyMw0KDQovKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLw0KLyogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8NCi8qICAgICAgICAgICAgICAgIEZMQVNILCBEQVRBIEVFUFJPTSBhbmQgT3B0aW9uIEJ5dGVzIFJlZ2lzdGVycyAgICAgICAgICAgICAgICovDQovKiAgICAgICAgICAgICAgICAgICAgICAgIChGTEFTSCwgREFUQV9FRVBST00sIE9CKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLw0KLyogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8NCi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovDQoNCi8qKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgRkxBU0hfQUNSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIEZMQVNIX0FDUl9MQVRFTkNZX1BvcyAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEZMQVNIX0FDUl9MQVRFTkNZX01zayAgICAgICAgICAgICAgICAoMHgxVSA8PCBGTEFTSF9BQ1JfTEFURU5DWV9Qb3MpICAgLyohPCAweDAwMDAwMDAxICovDQojZGVmaW5lIEZMQVNIX0FDUl9MQVRFTkNZICAgICAgICAgICAgICAgICAgICBGTEFTSF9BQ1JfTEFURU5DWV9Nc2sgICAgICAgICAgICAgLyohPCBMYXRlbmN5ICovDQojZGVmaW5lIEZMQVNIX0FDUl9QUkZURU5fUG9zICAgICAgICAgICAgICAgICAoMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEZMQVNIX0FDUl9QUkZURU5fTXNrICAgICAgICAgICAgICAgICAoMHgxVSA8PCBGTEFTSF9BQ1JfUFJGVEVOX1BvcykgICAgLyohPCAweDAwMDAwMDAyICovDQojZGVmaW5lIEZMQVNIX0FDUl9QUkZURU4gICAgICAgICAgICAgICAgICAgICBGTEFTSF9BQ1JfUFJGVEVOX01zayAgICAgICAgICAgICAgLyohPCBQcmVmZXRjaCBCdWZmZXIgRW5hYmxlICovDQojZGVmaW5lIEZMQVNIX0FDUl9BQ0M2NF9Qb3MgICAgICAgICAgICAgICAgICAoMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEZMQVNIX0FDUl9BQ0M2NF9Nc2sgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBGTEFTSF9BQ1JfQUNDNjRfUG9zKSAgICAgLyohPCAweDAwMDAwMDA0ICovDQojZGVmaW5lIEZMQVNIX0FDUl9BQ0M2NCAgICAgICAgICAgICAgICAgICAgICBGTEFTSF9BQ1JfQUNDNjRfTXNrICAgICAgICAgICAgICAgLyohPCBBY2Nlc3MgNjQgYml0cyAqLw0KI2RlZmluZSBGTEFTSF9BQ1JfU0xFRVBfUERfUG9zICAgICAgICAgICAgICAgKDNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBGTEFTSF9BQ1JfU0xFRVBfUERfTXNrICAgICAgICAgICAgICAgKDB4MVUgPDwgRkxBU0hfQUNSX1NMRUVQX1BEX1BvcykgIC8qITwgMHgwMDAwMDAwOCAqLw0KI2RlZmluZSBGTEFTSF9BQ1JfU0xFRVBfUEQgICAgICAgICAgICAgICAgICAgRkxBU0hfQUNSX1NMRUVQX1BEX01zayAgICAgICAgICAgIC8qITwgRmxhc2ggbW9kZSBkdXJpbmcgc2xlZXAgbW9kZSAqLw0KI2RlZmluZSBGTEFTSF9BQ1JfUlVOX1BEX1BvcyAgICAgICAgICAgICAgICAgKDRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBGTEFTSF9BQ1JfUlVOX1BEX01zayAgICAgICAgICAgICAgICAgKDB4MVUgPDwgRkxBU0hfQUNSX1JVTl9QRF9Qb3MpICAgIC8qITwgMHgwMDAwMDAxMCAqLw0KI2RlZmluZSBGTEFTSF9BQ1JfUlVOX1BEICAgICAgICAgICAgICAgICAgICAgRkxBU0hfQUNSX1JVTl9QRF9Nc2sgICAgICAgICAgICAgIC8qITwgRmxhc2ggbW9kZSBkdXJpbmcgUlVOIG1vZGUgKi8NCg0KLyoqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBGTEFTSF9QRUNSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIEZMQVNIX1BFQ1JfUEVMT0NLX1BvcyAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEZMQVNIX1BFQ1JfUEVMT0NLX01zayAgICAgICAgICAgICAgICAoMHgxVSA8PCBGTEFTSF9QRUNSX1BFTE9DS19Qb3MpICAgLyohPCAweDAwMDAwMDAxICovDQojZGVmaW5lIEZMQVNIX1BFQ1JfUEVMT0NLICAgICAgICAgICAgICAgICAgICBGTEFTSF9QRUNSX1BFTE9DS19Nc2sgICAgICAgICAgICAgLyohPCBGTEFTSF9QRUNSIGFuZCBGbGFzaCBkYXRhIExvY2sgKi8NCiNkZWZpbmUgRkxBU0hfUEVDUl9QUkdMT0NLX1BvcyAgICAgICAgICAgICAgICgxVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRkxBU0hfUEVDUl9QUkdMT0NLX01zayAgICAgICAgICAgICAgICgweDFVIDw8IEZMQVNIX1BFQ1JfUFJHTE9DS19Qb3MpICAvKiE8IDB4MDAwMDAwMDIgKi8NCiNkZWZpbmUgRkxBU0hfUEVDUl9QUkdMT0NLICAgICAgICAgICAgICAgICAgIEZMQVNIX1BFQ1JfUFJHTE9DS19Nc2sgICAgICAgICAgICAvKiE8IFByb2dyYW0gbWF0cml4IExvY2sgKi8NCiNkZWZpbmUgRkxBU0hfUEVDUl9PUFRMT0NLX1BvcyAgICAgICAgICAgICAgICgyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRkxBU0hfUEVDUl9PUFRMT0NLX01zayAgICAgICAgICAgICAgICgweDFVIDw8IEZMQVNIX1BFQ1JfT1BUTE9DS19Qb3MpICAvKiE8IDB4MDAwMDAwMDQgKi8NCiNkZWZpbmUgRkxBU0hfUEVDUl9PUFRMT0NLICAgICAgICAgICAgICAgICAgIEZMQVNIX1BFQ1JfT1BUTE9DS19Nc2sgICAgICAgICAgICAvKiE8IE9wdGlvbiBieXRlIG1hdHJpeCBMb2NrICovDQojZGVmaW5lIEZMQVNIX1BFQ1JfUFJPR19Qb3MgICAgICAgICAgICAgICAgICAoM1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEZMQVNIX1BFQ1JfUFJPR19Nc2sgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBGTEFTSF9QRUNSX1BST0dfUG9zKSAgICAgLyohPCAweDAwMDAwMDA4ICovDQojZGVmaW5lIEZMQVNIX1BFQ1JfUFJPRyAgICAgICAgICAgICAgICAgICAgICBGTEFTSF9QRUNSX1BST0dfTXNrICAgICAgICAgICAgICAgLyohPCBQcm9ncmFtIG1hdHJpeCBzZWxlY3Rpb24gKi8NCiNkZWZpbmUgRkxBU0hfUEVDUl9EQVRBX1BvcyAgICAgICAgICAgICAgICAgICg0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRkxBU0hfUEVDUl9EQVRBX01zayAgICAgICAgICAgICAgICAgICgweDFVIDw8IEZMQVNIX1BFQ1JfREFUQV9Qb3MpICAgICAvKiE8IDB4MDAwMDAwMTAgKi8NCiNkZWZpbmUgRkxBU0hfUEVDUl9EQVRBICAgICAgICAgICAgICAgICAgICAgIEZMQVNIX1BFQ1JfREFUQV9Nc2sgICAgICAgICAgICAgICAvKiE8IERhdGEgbWF0cml4IHNlbGVjdGlvbiAqLw0KI2RlZmluZSBGTEFTSF9QRUNSX0ZURFdfUG9zICAgICAgICAgICAgICAgICAgKDhVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBGTEFTSF9QRUNSX0ZURFdfTXNrICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgRkxBU0hfUEVDUl9GVERXX1BvcykgICAgIC8qITwgMHgwMDAwMDEwMCAqLw0KI2RlZmluZSBGTEFTSF9QRUNSX0ZURFcgICAgICAgICAgICAgICAgICAgICAgRkxBU0hfUEVDUl9GVERXX01zayAgICAgICAgICAgICAgIC8qITwgRml4ZWQgVGltZSBEYXRhIHdyaXRlIGZvciBXb3JkL0hhbGYgV29yZC9CeXRlIHByb2dyYW1taW5nICovDQojZGVmaW5lIEZMQVNIX1BFQ1JfRVJBU0VfUG9zICAgICAgICAgICAgICAgICAoOVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEZMQVNIX1BFQ1JfRVJBU0VfTXNrICAgICAgICAgICAgICAgICAoMHgxVSA8PCBGTEFTSF9QRUNSX0VSQVNFX1BvcykgICAgLyohPCAweDAwMDAwMjAwICovDQojZGVmaW5lIEZMQVNIX1BFQ1JfRVJBU0UgICAgICAgICAgICAgICAgICAgICBGTEFTSF9QRUNSX0VSQVNFX01zayAgICAgICAgICAgICAgLyohPCBQYWdlIGVyYXNpbmcgbW9kZSAqLw0KI2RlZmluZSBGTEFTSF9QRUNSX0ZQUkdfUG9zICAgICAgICAgICAgICAgICAgKDEwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBGTEFTSF9QRUNSX0ZQUkdfTXNrICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgRkxBU0hfUEVDUl9GUFJHX1BvcykgICAgIC8qITwgMHgwMDAwMDQwMCAqLw0KI2RlZmluZSBGTEFTSF9QRUNSX0ZQUkcgICAgICAgICAgICAgICAgICAgICAgRkxBU0hfUEVDUl9GUFJHX01zayAgICAgICAgICAgICAgIC8qITwgRmFzdCBQYWdlL0hhbGYgUGFnZSBwcm9ncmFtbWluZyBtb2RlICovDQojZGVmaW5lIEZMQVNIX1BFQ1JfUEFSQUxMQkFOS19Qb3MgICAgICAgICAgICAoMTVVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEZMQVNIX1BFQ1JfUEFSQUxMQkFOS19Nc2sgICAgICAgICAgICAoMHgxVSA8PCBGTEFTSF9QRUNSX1BBUkFMTEJBTktfUG9zKSAvKiE8IDB4MDAwMDgwMDAgKi8NCiNkZWZpbmUgRkxBU0hfUEVDUl9QQVJBTExCQU5LICAgICAgICAgICAgICAgIEZMQVNIX1BFQ1JfUEFSQUxMQkFOS19Nc2sgICAgICAgICAvKiE8IFBhcmFsbGVsIEJhbmsgbW9kZSAqLw0KI2RlZmluZSBGTEFTSF9QRUNSX0VPUElFX1BvcyAgICAgICAgICAgICAgICAgKDE2VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBGTEFTSF9QRUNSX0VPUElFX01zayAgICAgICAgICAgICAgICAgKDB4MVUgPDwgRkxBU0hfUEVDUl9FT1BJRV9Qb3MpICAgIC8qITwgMHgwMDAxMDAwMCAqLw0KI2RlZmluZSBGTEFTSF9QRUNSX0VPUElFICAgICAgICAgICAgICAgICAgICAgRkxBU0hfUEVDUl9FT1BJRV9Nc2sgICAgICAgICAgICAgIC8qITwgRW5kIG9mIHByb2dyYW1taW5nIGludGVycnVwdCAqLyANCiNkZWZpbmUgRkxBU0hfUEVDUl9FUlJJRV9Qb3MgICAgICAgICAgICAgICAgICgxN1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRkxBU0hfUEVDUl9FUlJJRV9Nc2sgICAgICAgICAgICAgICAgICgweDFVIDw8IEZMQVNIX1BFQ1JfRVJSSUVfUG9zKSAgICAvKiE8IDB4MDAwMjAwMDAgKi8NCiNkZWZpbmUgRkxBU0hfUEVDUl9FUlJJRSAgICAgICAgICAgICAgICAgICAgIEZMQVNIX1BFQ1JfRVJSSUVfTXNrICAgICAgICAgICAgICAvKiE8IEVycm9yIGludGVycnVwdCAqLyANCiNkZWZpbmUgRkxBU0hfUEVDUl9PQkxfTEFVTkNIX1BvcyAgICAgICAgICAgICgxOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRkxBU0hfUEVDUl9PQkxfTEFVTkNIX01zayAgICAgICAgICAgICgweDFVIDw8IEZMQVNIX1BFQ1JfT0JMX0xBVU5DSF9Qb3MpIC8qITwgMHgwMDA0MDAwMCAqLw0KI2RlZmluZSBGTEFTSF9QRUNSX09CTF9MQVVOQ0ggICAgICAgICAgICAgICAgRkxBU0hfUEVDUl9PQkxfTEFVTkNIX01zayAgICAgICAgIC8qITwgTGF1bmNoIHRoZSBvcHRpb24gYnl0ZSBsb2FkaW5nICovIA0KDQovKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgRkxBU0hfUERLRVlSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIEZMQVNIX1BES0VZUl9QREtFWVJfUG9zICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEZMQVNIX1BES0VZUl9QREtFWVJfTXNrICAgICAgICAgICAgICAoMHhGRkZGRkZGRlUgPDwgRkxBU0hfUERLRVlSX1BES0VZUl9Qb3MpIC8qITwgMHhGRkZGRkZGRiAqLw0KI2RlZmluZSBGTEFTSF9QREtFWVJfUERLRVlSICAgICAgICAgICAgICAgICAgRkxBU0hfUERLRVlSX1BES0VZUl9Nc2sgICAgICAgICAgIC8qITwgRkxBU0hfUEVDIGFuZCBkYXRhIG1hdHJpeCBLZXkgKi8NCg0KLyoqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIEZMQVNIX1BFS0VZUiByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBGTEFTSF9QRUtFWVJfUEVLRVlSX1BvcyAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBGTEFTSF9QRUtFWVJfUEVLRVlSX01zayAgICAgICAgICAgICAgKDB4RkZGRkZGRkZVIDw8IEZMQVNIX1BFS0VZUl9QRUtFWVJfUG9zKSAvKiE8IDB4RkZGRkZGRkYgKi8NCiNkZWZpbmUgRkxBU0hfUEVLRVlSX1BFS0VZUiAgICAgICAgICAgICAgICAgIEZMQVNIX1BFS0VZUl9QRUtFWVJfTXNrICAgICAgICAgICAvKiE8IEZMQVNIX1BFQyBhbmQgZGF0YSBtYXRyaXggS2V5ICovDQoNCi8qKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBGTEFTSF9QUkdLRVlSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIEZMQVNIX1BSR0tFWVJfUFJHS0VZUl9Qb3MgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEZMQVNIX1BSR0tFWVJfUFJHS0VZUl9Nc2sgICAgICAgICAgICAoMHhGRkZGRkZGRlUgPDwgRkxBU0hfUFJHS0VZUl9QUkdLRVlSX1BvcykgLyohPCAweEZGRkZGRkZGICovDQojZGVmaW5lIEZMQVNIX1BSR0tFWVJfUFJHS0VZUiAgICAgICAgICAgICAgICBGTEFTSF9QUkdLRVlSX1BSR0tFWVJfTXNrICAgICAgICAgLyohPCBQcm9ncmFtIG1hdHJpeCBLZXkgKi8NCg0KLyoqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIEZMQVNIX09QVEtFWVIgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgRkxBU0hfT1BUS0VZUl9PUFRLRVlSX1BvcyAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRkxBU0hfT1BUS0VZUl9PUFRLRVlSX01zayAgICAgICAgICAgICgweEZGRkZGRkZGVSA8PCBGTEFTSF9PUFRLRVlSX09QVEtFWVJfUG9zKSAvKiE8IDB4RkZGRkZGRkYgKi8NCiNkZWZpbmUgRkxBU0hfT1BUS0VZUl9PUFRLRVlSICAgICAgICAgICAgICAgIEZMQVNIX09QVEtFWVJfT1BUS0VZUl9Nc2sgICAgICAgICAvKiE8IE9wdGlvbiBieXRlcyBtYXRyaXggS2V5ICovDQoNCi8qKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBGTEFTSF9TUiByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgRkxBU0hfU1JfQlNZX1BvcyAgICAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRkxBU0hfU1JfQlNZX01zayAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IEZMQVNIX1NSX0JTWV9Qb3MpICAgICAgICAvKiE8IDB4MDAwMDAwMDEgKi8NCiNkZWZpbmUgRkxBU0hfU1JfQlNZICAgICAgICAgICAgICAgICAgICAgICAgIEZMQVNIX1NSX0JTWV9Nc2sgICAgICAgICAgICAgICAgICAvKiE8IEJ1c3kgKi8NCiNkZWZpbmUgRkxBU0hfU1JfRU9QX1BvcyAgICAgICAgICAgICAgICAgICAgICgxVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRkxBU0hfU1JfRU9QX01zayAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IEZMQVNIX1NSX0VPUF9Qb3MpICAgICAgICAvKiE8IDB4MDAwMDAwMDIgKi8NCiNkZWZpbmUgRkxBU0hfU1JfRU9QICAgICAgICAgICAgICAgICAgICAgICAgIEZMQVNIX1NSX0VPUF9Nc2sgICAgICAgICAgICAgICAgICAvKiE8IEVuZCBPZiBQcm9ncmFtbWluZyovDQojZGVmaW5lIEZMQVNIX1NSX0VOREhWX1BvcyAgICAgICAgICAgICAgICAgICAoMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEZMQVNIX1NSX0VOREhWX01zayAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBGTEFTSF9TUl9FTkRIVl9Qb3MpICAgICAgLyohPCAweDAwMDAwMDA0ICovDQojZGVmaW5lIEZMQVNIX1NSX0VOREhWICAgICAgICAgICAgICAgICAgICAgICBGTEFTSF9TUl9FTkRIVl9Nc2sgICAgICAgICAgICAgICAgLyohPCBFbmQgb2YgaGlnaCB2b2x0YWdlICovDQojZGVmaW5lIEZMQVNIX1NSX1JFQURZX1BvcyAgICAgICAgICAgICAgICAgICAoM1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEZMQVNIX1NSX1JFQURZX01zayAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBGTEFTSF9TUl9SRUFEWV9Qb3MpICAgICAgLyohPCAweDAwMDAwMDA4ICovDQojZGVmaW5lIEZMQVNIX1NSX1JFQURZICAgICAgICAgICAgICAgICAgICAgICBGTEFTSF9TUl9SRUFEWV9Nc2sgICAgICAgICAgICAgICAgLyohPCBGbGFzaCByZWFkeSBhZnRlciBsb3cgcG93ZXIgbW9kZSAqLw0KDQojZGVmaW5lIEZMQVNIX1NSX1dSUEVSUl9Qb3MgICAgICAgICAgICAgICAgICAoOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEZMQVNIX1NSX1dSUEVSUl9Nc2sgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBGTEFTSF9TUl9XUlBFUlJfUG9zKSAgICAgLyohPCAweDAwMDAwMTAwICovDQojZGVmaW5lIEZMQVNIX1NSX1dSUEVSUiAgICAgICAgICAgICAgICAgICAgICBGTEFTSF9TUl9XUlBFUlJfTXNrICAgICAgICAgICAgICAgLyohPCBXcml0ZSBwcm90ZWN0ZWQgZXJyb3IgKi8NCiNkZWZpbmUgRkxBU0hfU1JfUEdBRVJSX1BvcyAgICAgICAgICAgICAgICAgICg5VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRkxBU0hfU1JfUEdBRVJSX01zayAgICAgICAgICAgICAgICAgICgweDFVIDw8IEZMQVNIX1NSX1BHQUVSUl9Qb3MpICAgICAvKiE8IDB4MDAwMDAyMDAgKi8NCiNkZWZpbmUgRkxBU0hfU1JfUEdBRVJSICAgICAgICAgICAgICAgICAgICAgIEZMQVNIX1NSX1BHQUVSUl9Nc2sgICAgICAgICAgICAgICAvKiE8IFByb2dyYW1taW5nIEFsaWdubWVudCBFcnJvciAqLw0KI2RlZmluZSBGTEFTSF9TUl9TSVpFUlJfUG9zICAgICAgICAgICAgICAgICAgKDEwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBGTEFTSF9TUl9TSVpFUlJfTXNrICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgRkxBU0hfU1JfU0laRVJSX1BvcykgICAgIC8qITwgMHgwMDAwMDQwMCAqLw0KI2RlZmluZSBGTEFTSF9TUl9TSVpFUlIgICAgICAgICAgICAgICAgICAgICAgRkxBU0hfU1JfU0laRVJSX01zayAgICAgICAgICAgICAgIC8qITwgU2l6ZSBlcnJvciAqLw0KI2RlZmluZSBGTEFTSF9TUl9PUFRWRVJSX1BvcyAgICAgICAgICAgICAgICAgKDExVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBGTEFTSF9TUl9PUFRWRVJSX01zayAgICAgICAgICAgICAgICAgKDB4MVUgPDwgRkxBU0hfU1JfT1BUVkVSUl9Qb3MpICAgIC8qITwgMHgwMDAwMDgwMCAqLw0KI2RlZmluZSBGTEFTSF9TUl9PUFRWRVJSICAgICAgICAgICAgICAgICAgICAgRkxBU0hfU1JfT1BUVkVSUl9Nc2sgICAgICAgICAgICAgIC8qITwgT3B0aW9uIHZhbGlkaXR5IGVycm9yICovDQojZGVmaW5lIEZMQVNIX1NSX09QVFZFUlJVU1JfUG9zICAgICAgICAgICAgICAoMTJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEZMQVNIX1NSX09QVFZFUlJVU1JfTXNrICAgICAgICAgICAgICAoMHgxVSA8PCBGTEFTSF9TUl9PUFRWRVJSVVNSX1BvcykgLyohPCAweDAwMDAxMDAwICovDQojZGVmaW5lIEZMQVNIX1NSX09QVFZFUlJVU1IgICAgICAgICAgICAgICAgICBGTEFTSF9TUl9PUFRWRVJSVVNSX01zayAgICAgICAgICAgLyohPCBPcHRpb24gVXNlciB2YWxpZGl0eSBlcnJvciAqLw0KDQovKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgRkxBU0hfT0JSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBGTEFTSF9PQlJfUkRQUlRfUG9zICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBGTEFTSF9PQlJfUkRQUlRfTXNrICAgICAgICAgICAgICAgICAgKDB4RkZVIDw8IEZMQVNIX09CUl9SRFBSVF9Qb3MpICAgIC8qITwgMHgwMDAwMDBGRiAqLw0KI2RlZmluZSBGTEFTSF9PQlJfUkRQUlQgICAgICAgICAgICAgICAgICAgICAgRkxBU0hfT0JSX1JEUFJUX01zayAgICAgICAgICAgICAgIC8qITwgUmVhZCBQcm90ZWN0aW9uICovDQojZGVmaW5lIEZMQVNIX09CUl9CT1JfTEVWX1BvcyAgICAgICAgICAgICAgICAoMTZVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEZMQVNIX09CUl9CT1JfTEVWX01zayAgICAgICAgICAgICAgICAoMHhGVSA8PCBGTEFTSF9PQlJfQk9SX0xFVl9Qb3MpICAgLyohPCAweDAwMEYwMDAwICovDQojZGVmaW5lIEZMQVNIX09CUl9CT1JfTEVWICAgICAgICAgICAgICAgICAgICBGTEFTSF9PQlJfQk9SX0xFVl9Nc2sgICAgICAgICAgICAgLyohPCBCT1JfTEVWWzM6MF0gQnJvd24gT3V0IFJlc2V0IFRocmVzaG9sZCBMZXZlbCovDQojZGVmaW5lIEZMQVNIX09CUl9VU0VSX1BvcyAgICAgICAgICAgICAgICAgICAoMjBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEZMQVNIX09CUl9VU0VSX01zayAgICAgICAgICAgICAgICAgICAoMHhGVSA8PCBGTEFTSF9PQlJfVVNFUl9Qb3MpICAgICAgLyohPCAweDAwRjAwMDAwICovDQojZGVmaW5lIEZMQVNIX09CUl9VU0VSICAgICAgICAgICAgICAgICAgICAgICBGTEFTSF9PQlJfVVNFUl9Nc2sgICAgICAgICAgICAgICAgLyohPCBVc2VyIE9wdGlvbiBCeXRlcyAqLw0KI2RlZmluZSBGTEFTSF9PQlJfSVdER19TV19Qb3MgICAgICAgICAgICAgICAgKDIwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBGTEFTSF9PQlJfSVdER19TV19Nc2sgICAgICAgICAgICAgICAgKDB4MVUgPDwgRkxBU0hfT0JSX0lXREdfU1dfUG9zKSAgIC8qITwgMHgwMDEwMDAwMCAqLw0KI2RlZmluZSBGTEFTSF9PQlJfSVdER19TVyAgICAgICAgICAgICAgICAgICAgRkxBU0hfT0JSX0lXREdfU1dfTXNrICAgICAgICAgICAgIC8qITwgSVdER19TVyAqLw0KI2RlZmluZSBGTEFTSF9PQlJfblJTVF9TVE9QX1BvcyAgICAgICAgICAgICAgKDIxVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBGTEFTSF9PQlJfblJTVF9TVE9QX01zayAgICAgICAgICAgICAgKDB4MVUgPDwgRkxBU0hfT0JSX25SU1RfU1RPUF9Qb3MpIC8qITwgMHgwMDIwMDAwMCAqLw0KI2RlZmluZSBGTEFTSF9PQlJfblJTVF9TVE9QICAgICAgICAgICAgICAgICAgRkxBU0hfT0JSX25SU1RfU1RPUF9Nc2sgICAgICAgICAgIC8qITwgblJTVF9TVE9QICovDQojZGVmaW5lIEZMQVNIX09CUl9uUlNUX1NUREJZX1BvcyAgICAgICAgICAgICAoMjJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEZMQVNIX09CUl9uUlNUX1NUREJZX01zayAgICAgICAgICAgICAoMHgxVSA8PCBGTEFTSF9PQlJfblJTVF9TVERCWV9Qb3MpIC8qITwgMHgwMDQwMDAwMCAqLw0KI2RlZmluZSBGTEFTSF9PQlJfblJTVF9TVERCWSAgICAgICAgICAgICAgICAgRkxBU0hfT0JSX25SU1RfU1REQllfTXNrICAgICAgICAgIC8qITwgblJTVF9TVERCWSAqLw0KI2RlZmluZSBGTEFTSF9PQlJfblJTVF9CRkIyX1BvcyAgICAgICAgICAgICAgKDIzVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBGTEFTSF9PQlJfblJTVF9CRkIyX01zayAgICAgICAgICAgICAgKDB4MVUgPDwgRkxBU0hfT0JSX25SU1RfQkZCMl9Qb3MpIC8qITwgMHgwMDgwMDAwMCAqLw0KI2RlZmluZSBGTEFTSF9PQlJfblJTVF9CRkIyICAgICAgICAgICAgICAgICAgRkxBU0hfT0JSX25SU1RfQkZCMl9Nc2sgICAgICAgICAgIC8qITwgQkZCMiAqLw0KDQovKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgRkxBU0hfV1JQUiByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBGTEFTSF9XUlBSMV9XUlBfUG9zICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBGTEFTSF9XUlBSMV9XUlBfTXNrICAgICAgICAgICAgICAgICAgKDB4RkZGRkZGRkZVIDw8IEZMQVNIX1dSUFIxX1dSUF9Qb3MpIC8qITwgMHhGRkZGRkZGRiAqLw0KI2RlZmluZSBGTEFTSF9XUlBSMV9XUlAgICAgICAgICAgICAgICAgICAgICAgRkxBU0hfV1JQUjFfV1JQX01zayAgICAgICAgICAgICAgIC8qITwgV3JpdGUgUHJvdGVjdCBzZWN0b3JzIDAgIHRvIDMxICAqLw0KI2RlZmluZSBGTEFTSF9XUlBSMl9XUlBfUG9zICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBGTEFTSF9XUlBSMl9XUlBfTXNrICAgICAgICAgICAgICAgICAgKDB4RkZGRkZGRkZVIDw8IEZMQVNIX1dSUFIyX1dSUF9Qb3MpIC8qITwgMHhGRkZGRkZGRiAqLw0KI2RlZmluZSBGTEFTSF9XUlBSMl9XUlAgICAgICAgICAgICAgICAgICAgICAgRkxBU0hfV1JQUjJfV1JQX01zayAgICAgICAgICAgICAgIC8qITwgV3JpdGUgUHJvdGVjdCBzZWN0b3JzIDMyIHRvIDYzICAqLyAgICAgICAgICAgICANCiNkZWZpbmUgRkxBU0hfV1JQUjNfV1JQX1BvcyAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRkxBU0hfV1JQUjNfV1JQX01zayAgICAgICAgICAgICAgICAgICgweEZGRkZGRkZGVSA8PCBGTEFTSF9XUlBSM19XUlBfUG9zKSAvKiE8IDB4RkZGRkZGRkYgKi8NCiNkZWZpbmUgRkxBU0hfV1JQUjNfV1JQICAgICAgICAgICAgICAgICAgICAgIEZMQVNIX1dSUFIzX1dSUF9Nc2sgICAgICAgICAgICAgICAvKiE8IFdyaXRlIFByb3RlY3Qgc2VjdG9ycyA2NCB0byA5NSAgKi8gDQojZGVmaW5lIEZMQVNIX1dSUFI0X1dSUF9Qb3MgICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEZMQVNIX1dSUFI0X1dSUF9Nc2sgICAgICAgICAgICAgICAgICAoMHhGRkZGRkZGRlUgPDwgRkxBU0hfV1JQUjRfV1JQX1BvcykgLyohPCAweEZGRkZGRkZGICovDQojZGVmaW5lIEZMQVNIX1dSUFI0X1dSUCAgICAgICAgICAgICAgICAgICAgICBGTEFTSF9XUlBSNF9XUlBfTXNrICAgICAgICAgICAgICAgLyohPCBXcml0ZSBQcm90ZWN0IHNlY3RvcnMgOTYgdG8gMTI3ICovIA0KDQovKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLw0KLyogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8NCi8qICAgICAgICAgICAgICAgICAgICAgICAgICAgIEdlbmVyYWwgUHVycG9zZSBJL08gICAgICAgICAgICAgICAgICAgICAgICAgICAgICovDQovKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLw0KLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8NCi8qKioqKioqKioqKioqKioqKiogIEJpdHMgZGVmaW5pdGlvbiBmb3IgR1BJT19NT0RFUiByZWdpc3RlciAgKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIEdQSU9fTU9ERVJfTU9ERVIwX1BvcyAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fTU9ERVJfTU9ERVIwX01zayAgICAgICAgICAgICAgICAoMHgzVSA8PCBHUElPX01PREVSX01PREVSMF9Qb3MpICAgLyohPCAweDAwMDAwMDAzICovDQojZGVmaW5lIEdQSU9fTU9ERVJfTU9ERVIwICAgICAgICAgICAgICAgICAgICBHUElPX01PREVSX01PREVSMF9Nc2sgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fTU9ERVJfTU9ERVIwXzAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBHUElPX01PREVSX01PREVSMF9Qb3MpICAgLyohPCAweDAwMDAwMDAxICovDQojZGVmaW5lIEdQSU9fTU9ERVJfTU9ERVIwXzEgICAgICAgICAgICAgICAgICAoMHgyVSA8PCBHUElPX01PREVSX01PREVSMF9Qb3MpICAgLyohPCAweDAwMDAwMDAyICovDQoNCiNkZWZpbmUgR1BJT19NT0RFUl9NT0RFUjFfUG9zICAgICAgICAgICAgICAgICgyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19NT0RFUl9NT0RFUjFfTXNrICAgICAgICAgICAgICAgICgweDNVIDw8IEdQSU9fTU9ERVJfTU9ERVIxX1BvcykgICAvKiE8IDB4MDAwMDAwMEMgKi8NCiNkZWZpbmUgR1BJT19NT0RFUl9NT0RFUjEgICAgICAgICAgICAgICAgICAgIEdQSU9fTU9ERVJfTU9ERVIxX01zayAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19NT0RFUl9NT0RFUjFfMCAgICAgICAgICAgICAgICAgICgweDFVIDw8IEdQSU9fTU9ERVJfTU9ERVIxX1BvcykgICAvKiE8IDB4MDAwMDAwMDQgKi8NCiNkZWZpbmUgR1BJT19NT0RFUl9NT0RFUjFfMSAgICAgICAgICAgICAgICAgICgweDJVIDw8IEdQSU9fTU9ERVJfTU9ERVIxX1BvcykgICAvKiE8IDB4MDAwMDAwMDggKi8NCg0KI2RlZmluZSBHUElPX01PREVSX01PREVSMl9Qb3MgICAgICAgICAgICAgICAgKDRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX01PREVSX01PREVSMl9Nc2sgICAgICAgICAgICAgICAgKDB4M1UgPDwgR1BJT19NT0RFUl9NT0RFUjJfUG9zKSAgIC8qITwgMHgwMDAwMDAzMCAqLw0KI2RlZmluZSBHUElPX01PREVSX01PREVSMiAgICAgICAgICAgICAgICAgICAgR1BJT19NT0RFUl9NT0RFUjJfTXNrICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX01PREVSX01PREVSMl8wICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgR1BJT19NT0RFUl9NT0RFUjJfUG9zKSAgIC8qITwgMHgwMDAwMDAxMCAqLw0KI2RlZmluZSBHUElPX01PREVSX01PREVSMl8xICAgICAgICAgICAgICAgICAgKDB4MlUgPDwgR1BJT19NT0RFUl9NT0RFUjJfUG9zKSAgIC8qITwgMHgwMDAwMDAyMCAqLw0KDQojZGVmaW5lIEdQSU9fTU9ERVJfTU9ERVIzX1BvcyAgICAgICAgICAgICAgICAoNlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fTU9ERVJfTU9ERVIzX01zayAgICAgICAgICAgICAgICAoMHgzVSA8PCBHUElPX01PREVSX01PREVSM19Qb3MpICAgLyohPCAweDAwMDAwMEMwICovDQojZGVmaW5lIEdQSU9fTU9ERVJfTU9ERVIzICAgICAgICAgICAgICAgICAgICBHUElPX01PREVSX01PREVSM19Nc2sgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fTU9ERVJfTU9ERVIzXzAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBHUElPX01PREVSX01PREVSM19Qb3MpICAgLyohPCAweDAwMDAwMDQwICovDQojZGVmaW5lIEdQSU9fTU9ERVJfTU9ERVIzXzEgICAgICAgICAgICAgICAgICAoMHgyVSA8PCBHUElPX01PREVSX01PREVSM19Qb3MpICAgLyohPCAweDAwMDAwMDgwICovDQoNCiNkZWZpbmUgR1BJT19NT0RFUl9NT0RFUjRfUG9zICAgICAgICAgICAgICAgICg4VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19NT0RFUl9NT0RFUjRfTXNrICAgICAgICAgICAgICAgICgweDNVIDw8IEdQSU9fTU9ERVJfTU9ERVI0X1BvcykgICAvKiE8IDB4MDAwMDAzMDAgKi8NCiNkZWZpbmUgR1BJT19NT0RFUl9NT0RFUjQgICAgICAgICAgICAgICAgICAgIEdQSU9fTU9ERVJfTU9ERVI0X01zayAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19NT0RFUl9NT0RFUjRfMCAgICAgICAgICAgICAgICAgICgweDFVIDw8IEdQSU9fTU9ERVJfTU9ERVI0X1BvcykgICAvKiE8IDB4MDAwMDAxMDAgKi8NCiNkZWZpbmUgR1BJT19NT0RFUl9NT0RFUjRfMSAgICAgICAgICAgICAgICAgICgweDJVIDw8IEdQSU9fTU9ERVJfTU9ERVI0X1BvcykgICAvKiE8IDB4MDAwMDAyMDAgKi8NCg0KI2RlZmluZSBHUElPX01PREVSX01PREVSNV9Qb3MgICAgICAgICAgICAgICAgKDEwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX01PREVSX01PREVSNV9Nc2sgICAgICAgICAgICAgICAgKDB4M1UgPDwgR1BJT19NT0RFUl9NT0RFUjVfUG9zKSAgIC8qITwgMHgwMDAwMEMwMCAqLw0KI2RlZmluZSBHUElPX01PREVSX01PREVSNSAgICAgICAgICAgICAgICAgICAgR1BJT19NT0RFUl9NT0RFUjVfTXNrICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX01PREVSX01PREVSNV8wICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgR1BJT19NT0RFUl9NT0RFUjVfUG9zKSAgIC8qITwgMHgwMDAwMDQwMCAqLw0KI2RlZmluZSBHUElPX01PREVSX01PREVSNV8xICAgICAgICAgICAgICAgICAgKDB4MlUgPDwgR1BJT19NT0RFUl9NT0RFUjVfUG9zKSAgIC8qITwgMHgwMDAwMDgwMCAqLw0KDQojZGVmaW5lIEdQSU9fTU9ERVJfTU9ERVI2X1BvcyAgICAgICAgICAgICAgICAoMTJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fTU9ERVJfTU9ERVI2X01zayAgICAgICAgICAgICAgICAoMHgzVSA8PCBHUElPX01PREVSX01PREVSNl9Qb3MpICAgLyohPCAweDAwMDAzMDAwICovDQojZGVmaW5lIEdQSU9fTU9ERVJfTU9ERVI2ICAgICAgICAgICAgICAgICAgICBHUElPX01PREVSX01PREVSNl9Nc2sgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fTU9ERVJfTU9ERVI2XzAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBHUElPX01PREVSX01PREVSNl9Qb3MpICAgLyohPCAweDAwMDAxMDAwICovDQojZGVmaW5lIEdQSU9fTU9ERVJfTU9ERVI2XzEgICAgICAgICAgICAgICAgICAoMHgyVSA8PCBHUElPX01PREVSX01PREVSNl9Qb3MpICAgLyohPCAweDAwMDAyMDAwICovDQoNCiNkZWZpbmUgR1BJT19NT0RFUl9NT0RFUjdfUG9zICAgICAgICAgICAgICAgICgxNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19NT0RFUl9NT0RFUjdfTXNrICAgICAgICAgICAgICAgICgweDNVIDw8IEdQSU9fTU9ERVJfTU9ERVI3X1BvcykgICAvKiE8IDB4MDAwMEMwMDAgKi8NCiNkZWZpbmUgR1BJT19NT0RFUl9NT0RFUjcgICAgICAgICAgICAgICAgICAgIEdQSU9fTU9ERVJfTU9ERVI3X01zayAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19NT0RFUl9NT0RFUjdfMCAgICAgICAgICAgICAgICAgICgweDFVIDw8IEdQSU9fTU9ERVJfTU9ERVI3X1BvcykgICAvKiE8IDB4MDAwMDQwMDAgKi8NCiNkZWZpbmUgR1BJT19NT0RFUl9NT0RFUjdfMSAgICAgICAgICAgICAgICAgICgweDJVIDw8IEdQSU9fTU9ERVJfTU9ERVI3X1BvcykgICAvKiE8IDB4MDAwMDgwMDAgKi8NCg0KI2RlZmluZSBHUElPX01PREVSX01PREVSOF9Qb3MgICAgICAgICAgICAgICAgKDE2VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX01PREVSX01PREVSOF9Nc2sgICAgICAgICAgICAgICAgKDB4M1UgPDwgR1BJT19NT0RFUl9NT0RFUjhfUG9zKSAgIC8qITwgMHgwMDAzMDAwMCAqLw0KI2RlZmluZSBHUElPX01PREVSX01PREVSOCAgICAgICAgICAgICAgICAgICAgR1BJT19NT0RFUl9NT0RFUjhfTXNrICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX01PREVSX01PREVSOF8wICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgR1BJT19NT0RFUl9NT0RFUjhfUG9zKSAgIC8qITwgMHgwMDAxMDAwMCAqLw0KI2RlZmluZSBHUElPX01PREVSX01PREVSOF8xICAgICAgICAgICAgICAgICAgKDB4MlUgPDwgR1BJT19NT0RFUl9NT0RFUjhfUG9zKSAgIC8qITwgMHgwMDAyMDAwMCAqLw0KDQojZGVmaW5lIEdQSU9fTU9ERVJfTU9ERVI5X1BvcyAgICAgICAgICAgICAgICAoMThVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fTU9ERVJfTU9ERVI5X01zayAgICAgICAgICAgICAgICAoMHgzVSA8PCBHUElPX01PREVSX01PREVSOV9Qb3MpICAgLyohPCAweDAwMEMwMDAwICovDQojZGVmaW5lIEdQSU9fTU9ERVJfTU9ERVI5ICAgICAgICAgICAgICAgICAgICBHUElPX01PREVSX01PREVSOV9Nc2sgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fTU9ERVJfTU9ERVI5XzAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBHUElPX01PREVSX01PREVSOV9Qb3MpICAgLyohPCAweDAwMDQwMDAwICovDQojZGVmaW5lIEdQSU9fTU9ERVJfTU9ERVI5XzEgICAgICAgICAgICAgICAgICAoMHgyVSA8PCBHUElPX01PREVSX01PREVSOV9Qb3MpICAgLyohPCAweDAwMDgwMDAwICovDQoNCiNkZWZpbmUgR1BJT19NT0RFUl9NT0RFUjEwX1BvcyAgICAgICAgICAgICAgICgyMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19NT0RFUl9NT0RFUjEwX01zayAgICAgICAgICAgICAgICgweDNVIDw8IEdQSU9fTU9ERVJfTU9ERVIxMF9Qb3MpICAvKiE8IDB4MDAzMDAwMDAgKi8NCiNkZWZpbmUgR1BJT19NT0RFUl9NT0RFUjEwICAgICAgICAgICAgICAgICAgIEdQSU9fTU9ERVJfTU9ERVIxMF9Nc2sgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19NT0RFUl9NT0RFUjEwXzAgICAgICAgICAgICAgICAgICgweDFVIDw8IEdQSU9fTU9ERVJfTU9ERVIxMF9Qb3MpICAvKiE8IDB4MDAxMDAwMDAgKi8NCiNkZWZpbmUgR1BJT19NT0RFUl9NT0RFUjEwXzEgICAgICAgICAgICAgICAgICgweDJVIDw8IEdQSU9fTU9ERVJfTU9ERVIxMF9Qb3MpICAvKiE8IDB4MDAyMDAwMDAgKi8NCg0KI2RlZmluZSBHUElPX01PREVSX01PREVSMTFfUG9zICAgICAgICAgICAgICAgKDIyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX01PREVSX01PREVSMTFfTXNrICAgICAgICAgICAgICAgKDB4M1UgPDwgR1BJT19NT0RFUl9NT0RFUjExX1BvcykgIC8qITwgMHgwMEMwMDAwMCAqLw0KI2RlZmluZSBHUElPX01PREVSX01PREVSMTEgICAgICAgICAgICAgICAgICAgR1BJT19NT0RFUl9NT0RFUjExX01zayAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX01PREVSX01PREVSMTFfMCAgICAgICAgICAgICAgICAgKDB4MVUgPDwgR1BJT19NT0RFUl9NT0RFUjExX1BvcykgIC8qITwgMHgwMDQwMDAwMCAqLw0KI2RlZmluZSBHUElPX01PREVSX01PREVSMTFfMSAgICAgICAgICAgICAgICAgKDB4MlUgPDwgR1BJT19NT0RFUl9NT0RFUjExX1BvcykgIC8qITwgMHgwMDgwMDAwMCAqLw0KDQojZGVmaW5lIEdQSU9fTU9ERVJfTU9ERVIxMl9Qb3MgICAgICAgICAgICAgICAoMjRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fTU9ERVJfTU9ERVIxMl9Nc2sgICAgICAgICAgICAgICAoMHgzVSA8PCBHUElPX01PREVSX01PREVSMTJfUG9zKSAgLyohPCAweDAzMDAwMDAwICovDQojZGVmaW5lIEdQSU9fTU9ERVJfTU9ERVIxMiAgICAgICAgICAgICAgICAgICBHUElPX01PREVSX01PREVSMTJfTXNrICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fTU9ERVJfTU9ERVIxMl8wICAgICAgICAgICAgICAgICAoMHgxVSA8PCBHUElPX01PREVSX01PREVSMTJfUG9zKSAgLyohPCAweDAxMDAwMDAwICovDQojZGVmaW5lIEdQSU9fTU9ERVJfTU9ERVIxMl8xICAgICAgICAgICAgICAgICAoMHgyVSA8PCBHUElPX01PREVSX01PREVSMTJfUG9zKSAgLyohPCAweDAyMDAwMDAwICovDQoNCiNkZWZpbmUgR1BJT19NT0RFUl9NT0RFUjEzX1BvcyAgICAgICAgICAgICAgICgyNlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19NT0RFUl9NT0RFUjEzX01zayAgICAgICAgICAgICAgICgweDNVIDw8IEdQSU9fTU9ERVJfTU9ERVIxM19Qb3MpICAvKiE8IDB4MEMwMDAwMDAgKi8NCiNkZWZpbmUgR1BJT19NT0RFUl9NT0RFUjEzICAgICAgICAgICAgICAgICAgIEdQSU9fTU9ERVJfTU9ERVIxM19Nc2sgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19NT0RFUl9NT0RFUjEzXzAgICAgICAgICAgICAgICAgICgweDFVIDw8IEdQSU9fTU9ERVJfTU9ERVIxM19Qb3MpICAvKiE8IDB4MDQwMDAwMDAgKi8NCiNkZWZpbmUgR1BJT19NT0RFUl9NT0RFUjEzXzEgICAgICAgICAgICAgICAgICgweDJVIDw8IEdQSU9fTU9ERVJfTU9ERVIxM19Qb3MpICAvKiE8IDB4MDgwMDAwMDAgKi8NCg0KI2RlZmluZSBHUElPX01PREVSX01PREVSMTRfUG9zICAgICAgICAgICAgICAgKDI4VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX01PREVSX01PREVSMTRfTXNrICAgICAgICAgICAgICAgKDB4M1UgPDwgR1BJT19NT0RFUl9NT0RFUjE0X1BvcykgIC8qITwgMHgzMDAwMDAwMCAqLw0KI2RlZmluZSBHUElPX01PREVSX01PREVSMTQgICAgICAgICAgICAgICAgICAgR1BJT19NT0RFUl9NT0RFUjE0X01zayAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX01PREVSX01PREVSMTRfMCAgICAgICAgICAgICAgICAgKDB4MVUgPDwgR1BJT19NT0RFUl9NT0RFUjE0X1BvcykgIC8qITwgMHgxMDAwMDAwMCAqLw0KI2RlZmluZSBHUElPX01PREVSX01PREVSMTRfMSAgICAgICAgICAgICAgICAgKDB4MlUgPDwgR1BJT19NT0RFUl9NT0RFUjE0X1BvcykgIC8qITwgMHgyMDAwMDAwMCAqLw0KDQojZGVmaW5lIEdQSU9fTU9ERVJfTU9ERVIxNV9Qb3MgICAgICAgICAgICAgICAoMzBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fTU9ERVJfTU9ERVIxNV9Nc2sgICAgICAgICAgICAgICAoMHgzVSA8PCBHUElPX01PREVSX01PREVSMTVfUG9zKSAgLyohPCAweEMwMDAwMDAwICovDQojZGVmaW5lIEdQSU9fTU9ERVJfTU9ERVIxNSAgICAgICAgICAgICAgICAgICBHUElPX01PREVSX01PREVSMTVfTXNrICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fTU9ERVJfTU9ERVIxNV8wICAgICAgICAgICAgICAgICAoMHgxVSA8PCBHUElPX01PREVSX01PREVSMTVfUG9zKSAgLyohPCAweDQwMDAwMDAwICovDQojZGVmaW5lIEdQSU9fTU9ERVJfTU9ERVIxNV8xICAgICAgICAgICAgICAgICAoMHgyVSA8PCBHUElPX01PREVSX01PREVSMTVfUG9zKSAgLyohPCAweDgwMDAwMDAwICovDQoNCi8qKioqKioqKioqKioqKioqKiogIEJpdHMgZGVmaW5pdGlvbiBmb3IgR1BJT19PVFlQRVIgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKiovDQojZGVmaW5lIEdQSU9fT1RZUEVSX09UXzAgICAgICAgICAgICAgICAgICAgICAoMHgwMDAwMDAwMVUpICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fT1RZUEVSX09UXzEgICAgICAgICAgICAgICAgICAgICAoMHgwMDAwMDAwMlUpICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fT1RZUEVSX09UXzIgICAgICAgICAgICAgICAgICAgICAoMHgwMDAwMDAwNFUpICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fT1RZUEVSX09UXzMgICAgICAgICAgICAgICAgICAgICAoMHgwMDAwMDAwOFUpICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fT1RZUEVSX09UXzQgICAgICAgICAgICAgICAgICAgICAoMHgwMDAwMDAxMFUpICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fT1RZUEVSX09UXzUgICAgICAgICAgICAgICAgICAgICAoMHgwMDAwMDAyMFUpICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fT1RZUEVSX09UXzYgICAgICAgICAgICAgICAgICAgICAoMHgwMDAwMDA0MFUpICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fT1RZUEVSX09UXzcgICAgICAgICAgICAgICAgICAgICAoMHgwMDAwMDA4MFUpICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fT1RZUEVSX09UXzggICAgICAgICAgICAgICAgICAgICAoMHgwMDAwMDEwMFUpICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fT1RZUEVSX09UXzkgICAgICAgICAgICAgICAgICAgICAoMHgwMDAwMDIwMFUpICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fT1RZUEVSX09UXzEwICAgICAgICAgICAgICAgICAgICAoMHgwMDAwMDQwMFUpICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fT1RZUEVSX09UXzExICAgICAgICAgICAgICAgICAgICAoMHgwMDAwMDgwMFUpICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fT1RZUEVSX09UXzEyICAgICAgICAgICAgICAgICAgICAoMHgwMDAwMTAwMFUpICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fT1RZUEVSX09UXzEzICAgICAgICAgICAgICAgICAgICAoMHgwMDAwMjAwMFUpICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fT1RZUEVSX09UXzE0ICAgICAgICAgICAgICAgICAgICAoMHgwMDAwNDAwMFUpICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fT1RZUEVSX09UXzE1ICAgICAgICAgICAgICAgICAgICAoMHgwMDAwODAwMFUpICAgICAgICAgICAgICAgICAgICAgDQoNCi8qKioqKioqKioqKioqKioqKiogIEJpdHMgZGVmaW5pdGlvbiBmb3IgR1BJT19PU1BFRURSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKiovDQojZGVmaW5lIEdQSU9fT1NQRUVERVJfT1NQRUVEUjBfUG9zICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fT1NQRUVERVJfT1NQRUVEUjBfTXNrICAgICAgICAgICAoMHgzVSA8PCBHUElPX09TUEVFREVSX09TUEVFRFIwX1BvcykgLyohPCAweDAwMDAwMDAzICovDQojZGVmaW5lIEdQSU9fT1NQRUVERVJfT1NQRUVEUjAgICAgICAgICAgICAgICBHUElPX09TUEVFREVSX09TUEVFRFIwX01zayAgICAgICAgDQojZGVmaW5lIEdQSU9fT1NQRUVERVJfT1NQRUVEUjBfMCAgICAgICAgICAgICAoMHgxVSA8PCBHUElPX09TUEVFREVSX09TUEVFRFIwX1BvcykgLyohPCAweDAwMDAwMDAxICovDQojZGVmaW5lIEdQSU9fT1NQRUVERVJfT1NQRUVEUjBfMSAgICAgICAgICAgICAoMHgyVSA8PCBHUElPX09TUEVFREVSX09TUEVFRFIwX1BvcykgLyohPCAweDAwMDAwMDAyICovDQoNCiNkZWZpbmUgR1BJT19PU1BFRURFUl9PU1BFRURSMV9Qb3MgICAgICAgICAgICgyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19PU1BFRURFUl9PU1BFRURSMV9Nc2sgICAgICAgICAgICgweDNVIDw8IEdQSU9fT1NQRUVERVJfT1NQRUVEUjFfUG9zKSAvKiE8IDB4MDAwMDAwMEMgKi8NCiNkZWZpbmUgR1BJT19PU1BFRURFUl9PU1BFRURSMSAgICAgICAgICAgICAgIEdQSU9fT1NQRUVERVJfT1NQRUVEUjFfTXNrICAgICAgICANCiNkZWZpbmUgR1BJT19PU1BFRURFUl9PU1BFRURSMV8wICAgICAgICAgICAgICgweDFVIDw8IEdQSU9fT1NQRUVERVJfT1NQRUVEUjFfUG9zKSAvKiE8IDB4MDAwMDAwMDQgKi8NCiNkZWZpbmUgR1BJT19PU1BFRURFUl9PU1BFRURSMV8xICAgICAgICAgICAgICgweDJVIDw8IEdQSU9fT1NQRUVERVJfT1NQRUVEUjFfUG9zKSAvKiE8IDB4MDAwMDAwMDggKi8NCg0KI2RlZmluZSBHUElPX09TUEVFREVSX09TUEVFRFIyX1BvcyAgICAgICAgICAgKDRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX09TUEVFREVSX09TUEVFRFIyX01zayAgICAgICAgICAgKDB4M1UgPDwgR1BJT19PU1BFRURFUl9PU1BFRURSMl9Qb3MpIC8qITwgMHgwMDAwMDAzMCAqLw0KI2RlZmluZSBHUElPX09TUEVFREVSX09TUEVFRFIyICAgICAgICAgICAgICAgR1BJT19PU1BFRURFUl9PU1BFRURSMl9Nc2sgICAgICAgIA0KI2RlZmluZSBHUElPX09TUEVFREVSX09TUEVFRFIyXzAgICAgICAgICAgICAgKDB4MVUgPDwgR1BJT19PU1BFRURFUl9PU1BFRURSMl9Qb3MpIC8qITwgMHgwMDAwMDAxMCAqLw0KI2RlZmluZSBHUElPX09TUEVFREVSX09TUEVFRFIyXzEgICAgICAgICAgICAgKDB4MlUgPDwgR1BJT19PU1BFRURFUl9PU1BFRURSMl9Qb3MpIC8qITwgMHgwMDAwMDAyMCAqLw0KDQojZGVmaW5lIEdQSU9fT1NQRUVERVJfT1NQRUVEUjNfUG9zICAgICAgICAgICAoNlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fT1NQRUVERVJfT1NQRUVEUjNfTXNrICAgICAgICAgICAoMHgzVSA8PCBHUElPX09TUEVFREVSX09TUEVFRFIzX1BvcykgLyohPCAweDAwMDAwMEMwICovDQojZGVmaW5lIEdQSU9fT1NQRUVERVJfT1NQRUVEUjMgICAgICAgICAgICAgICBHUElPX09TUEVFREVSX09TUEVFRFIzX01zayAgICAgICAgDQojZGVmaW5lIEdQSU9fT1NQRUVERVJfT1NQRUVEUjNfMCAgICAgICAgICAgICAoMHgxVSA8PCBHUElPX09TUEVFREVSX09TUEVFRFIzX1BvcykgLyohPCAweDAwMDAwMDQwICovDQojZGVmaW5lIEdQSU9fT1NQRUVERVJfT1NQRUVEUjNfMSAgICAgICAgICAgICAoMHgyVSA8PCBHUElPX09TUEVFREVSX09TUEVFRFIzX1BvcykgLyohPCAweDAwMDAwMDgwICovDQoNCiNkZWZpbmUgR1BJT19PU1BFRURFUl9PU1BFRURSNF9Qb3MgICAgICAgICAgICg4VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19PU1BFRURFUl9PU1BFRURSNF9Nc2sgICAgICAgICAgICgweDNVIDw8IEdQSU9fT1NQRUVERVJfT1NQRUVEUjRfUG9zKSAvKiE8IDB4MDAwMDAzMDAgKi8NCiNkZWZpbmUgR1BJT19PU1BFRURFUl9PU1BFRURSNCAgICAgICAgICAgICAgIEdQSU9fT1NQRUVERVJfT1NQRUVEUjRfTXNrICAgICAgICANCiNkZWZpbmUgR1BJT19PU1BFRURFUl9PU1BFRURSNF8wICAgICAgICAgICAgICgweDFVIDw8IEdQSU9fT1NQRUVERVJfT1NQRUVEUjRfUG9zKSAvKiE8IDB4MDAwMDAxMDAgKi8NCiNkZWZpbmUgR1BJT19PU1BFRURFUl9PU1BFRURSNF8xICAgICAgICAgICAgICgweDJVIDw8IEdQSU9fT1NQRUVERVJfT1NQRUVEUjRfUG9zKSAvKiE8IDB4MDAwMDAyMDAgKi8NCg0KI2RlZmluZSBHUElPX09TUEVFREVSX09TUEVFRFI1X1BvcyAgICAgICAgICAgKDEwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX09TUEVFREVSX09TUEVFRFI1X01zayAgICAgICAgICAgKDB4M1UgPDwgR1BJT19PU1BFRURFUl9PU1BFRURSNV9Qb3MpIC8qITwgMHgwMDAwMEMwMCAqLw0KI2RlZmluZSBHUElPX09TUEVFREVSX09TUEVFRFI1ICAgICAgICAgICAgICAgR1BJT19PU1BFRURFUl9PU1BFRURSNV9Nc2sgICAgICAgIA0KI2RlZmluZSBHUElPX09TUEVFREVSX09TUEVFRFI1XzAgICAgICAgICAgICAgKDB4MVUgPDwgR1BJT19PU1BFRURFUl9PU1BFRURSNV9Qb3MpIC8qITwgMHgwMDAwMDQwMCAqLw0KI2RlZmluZSBHUElPX09TUEVFREVSX09TUEVFRFI1XzEgICAgICAgICAgICAgKDB4MlUgPDwgR1BJT19PU1BFRURFUl9PU1BFRURSNV9Qb3MpIC8qITwgMHgwMDAwMDgwMCAqLw0KDQojZGVmaW5lIEdQSU9fT1NQRUVERVJfT1NQRUVEUjZfUG9zICAgICAgICAgICAoMTJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fT1NQRUVERVJfT1NQRUVEUjZfTXNrICAgICAgICAgICAoMHgzVSA8PCBHUElPX09TUEVFREVSX09TUEVFRFI2X1BvcykgLyohPCAweDAwMDAzMDAwICovDQojZGVmaW5lIEdQSU9fT1NQRUVERVJfT1NQRUVEUjYgICAgICAgICAgICAgICBHUElPX09TUEVFREVSX09TUEVFRFI2X01zayAgICAgICAgDQojZGVmaW5lIEdQSU9fT1NQRUVERVJfT1NQRUVEUjZfMCAgICAgICAgICAgICAoMHgxVSA8PCBHUElPX09TUEVFREVSX09TUEVFRFI2X1BvcykgLyohPCAweDAwMDAxMDAwICovDQojZGVmaW5lIEdQSU9fT1NQRUVERVJfT1NQRUVEUjZfMSAgICAgICAgICAgICAoMHgyVSA8PCBHUElPX09TUEVFREVSX09TUEVFRFI2X1BvcykgLyohPCAweDAwMDAyMDAwICovDQoNCiNkZWZpbmUgR1BJT19PU1BFRURFUl9PU1BFRURSN19Qb3MgICAgICAgICAgICgxNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19PU1BFRURFUl9PU1BFRURSN19Nc2sgICAgICAgICAgICgweDNVIDw8IEdQSU9fT1NQRUVERVJfT1NQRUVEUjdfUG9zKSAvKiE8IDB4MDAwMEMwMDAgKi8NCiNkZWZpbmUgR1BJT19PU1BFRURFUl9PU1BFRURSNyAgICAgICAgICAgICAgIEdQSU9fT1NQRUVERVJfT1NQRUVEUjdfTXNrICAgICAgICANCiNkZWZpbmUgR1BJT19PU1BFRURFUl9PU1BFRURSN18wICAgICAgICAgICAgICgweDFVIDw8IEdQSU9fT1NQRUVERVJfT1NQRUVEUjdfUG9zKSAvKiE8IDB4MDAwMDQwMDAgKi8NCiNkZWZpbmUgR1BJT19PU1BFRURFUl9PU1BFRURSN18xICAgICAgICAgICAgICgweDJVIDw8IEdQSU9fT1NQRUVERVJfT1NQRUVEUjdfUG9zKSAvKiE8IDB4MDAwMDgwMDAgKi8NCg0KI2RlZmluZSBHUElPX09TUEVFREVSX09TUEVFRFI4X1BvcyAgICAgICAgICAgKDE2VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX09TUEVFREVSX09TUEVFRFI4X01zayAgICAgICAgICAgKDB4M1UgPDwgR1BJT19PU1BFRURFUl9PU1BFRURSOF9Qb3MpIC8qITwgMHgwMDAzMDAwMCAqLw0KI2RlZmluZSBHUElPX09TUEVFREVSX09TUEVFRFI4ICAgICAgICAgICAgICAgR1BJT19PU1BFRURFUl9PU1BFRURSOF9Nc2sgICAgICAgIA0KI2RlZmluZSBHUElPX09TUEVFREVSX09TUEVFRFI4XzAgICAgICAgICAgICAgKDB4MVUgPDwgR1BJT19PU1BFRURFUl9PU1BFRURSOF9Qb3MpIC8qITwgMHgwMDAxMDAwMCAqLw0KI2RlZmluZSBHUElPX09TUEVFREVSX09TUEVFRFI4XzEgICAgICAgICAgICAgKDB4MlUgPDwgR1BJT19PU1BFRURFUl9PU1BFRURSOF9Qb3MpIC8qITwgMHgwMDAyMDAwMCAqLw0KDQojZGVmaW5lIEdQSU9fT1NQRUVERVJfT1NQRUVEUjlfUG9zICAgICAgICAgICAoMThVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fT1NQRUVERVJfT1NQRUVEUjlfTXNrICAgICAgICAgICAoMHgzVSA8PCBHUElPX09TUEVFREVSX09TUEVFRFI5X1BvcykgLyohPCAweDAwMEMwMDAwICovDQojZGVmaW5lIEdQSU9fT1NQRUVERVJfT1NQRUVEUjkgICAgICAgICAgICAgICBHUElPX09TUEVFREVSX09TUEVFRFI5X01zayAgICAgICAgDQojZGVmaW5lIEdQSU9fT1NQRUVERVJfT1NQRUVEUjlfMCAgICAgICAgICAgICAoMHgxVSA8PCBHUElPX09TUEVFREVSX09TUEVFRFI5X1BvcykgLyohPCAweDAwMDQwMDAwICovDQojZGVmaW5lIEdQSU9fT1NQRUVERVJfT1NQRUVEUjlfMSAgICAgICAgICAgICAoMHgyVSA8PCBHUElPX09TUEVFREVSX09TUEVFRFI5X1BvcykgLyohPCAweDAwMDgwMDAwICovDQoNCiNkZWZpbmUgR1BJT19PU1BFRURFUl9PU1BFRURSMTBfUG9zICAgICAgICAgICgyMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19PU1BFRURFUl9PU1BFRURSMTBfTXNrICAgICAgICAgICgweDNVIDw8IEdQSU9fT1NQRUVERVJfT1NQRUVEUjEwX1BvcykgLyohPCAweDAwMzAwMDAwICovDQojZGVmaW5lIEdQSU9fT1NQRUVERVJfT1NQRUVEUjEwICAgICAgICAgICAgICBHUElPX09TUEVFREVSX09TUEVFRFIxMF9Nc2sgICAgICAgDQojZGVmaW5lIEdQSU9fT1NQRUVERVJfT1NQRUVEUjEwXzAgICAgICAgICAgICAoMHgxVSA8PCBHUElPX09TUEVFREVSX09TUEVFRFIxMF9Qb3MpIC8qITwgMHgwMDEwMDAwMCAqLw0KI2RlZmluZSBHUElPX09TUEVFREVSX09TUEVFRFIxMF8xICAgICAgICAgICAgKDB4MlUgPDwgR1BJT19PU1BFRURFUl9PU1BFRURSMTBfUG9zKSAvKiE8IDB4MDAyMDAwMDAgKi8NCg0KI2RlZmluZSBHUElPX09TUEVFREVSX09TUEVFRFIxMV9Qb3MgICAgICAgICAgKDIyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX09TUEVFREVSX09TUEVFRFIxMV9Nc2sgICAgICAgICAgKDB4M1UgPDwgR1BJT19PU1BFRURFUl9PU1BFRURSMTFfUG9zKSAvKiE8IDB4MDBDMDAwMDAgKi8NCiNkZWZpbmUgR1BJT19PU1BFRURFUl9PU1BFRURSMTEgICAgICAgICAgICAgIEdQSU9fT1NQRUVERVJfT1NQRUVEUjExX01zayAgICAgICANCiNkZWZpbmUgR1BJT19PU1BFRURFUl9PU1BFRURSMTFfMCAgICAgICAgICAgICgweDFVIDw8IEdQSU9fT1NQRUVERVJfT1NQRUVEUjExX1BvcykgLyohPCAweDAwNDAwMDAwICovDQojZGVmaW5lIEdQSU9fT1NQRUVERVJfT1NQRUVEUjExXzEgICAgICAgICAgICAoMHgyVSA8PCBHUElPX09TUEVFREVSX09TUEVFRFIxMV9Qb3MpIC8qITwgMHgwMDgwMDAwMCAqLw0KDQojZGVmaW5lIEdQSU9fT1NQRUVERVJfT1NQRUVEUjEyX1BvcyAgICAgICAgICAoMjRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fT1NQRUVERVJfT1NQRUVEUjEyX01zayAgICAgICAgICAoMHgzVSA8PCBHUElPX09TUEVFREVSX09TUEVFRFIxMl9Qb3MpIC8qITwgMHgwMzAwMDAwMCAqLw0KI2RlZmluZSBHUElPX09TUEVFREVSX09TUEVFRFIxMiAgICAgICAgICAgICAgR1BJT19PU1BFRURFUl9PU1BFRURSMTJfTXNrICAgICAgIA0KI2RlZmluZSBHUElPX09TUEVFREVSX09TUEVFRFIxMl8wICAgICAgICAgICAgKDB4MVUgPDwgR1BJT19PU1BFRURFUl9PU1BFRURSMTJfUG9zKSAvKiE8IDB4MDEwMDAwMDAgKi8NCiNkZWZpbmUgR1BJT19PU1BFRURFUl9PU1BFRURSMTJfMSAgICAgICAgICAgICgweDJVIDw8IEdQSU9fT1NQRUVERVJfT1NQRUVEUjEyX1BvcykgLyohPCAweDAyMDAwMDAwICovDQoNCiNkZWZpbmUgR1BJT19PU1BFRURFUl9PU1BFRURSMTNfUG9zICAgICAgICAgICgyNlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19PU1BFRURFUl9PU1BFRURSMTNfTXNrICAgICAgICAgICgweDNVIDw8IEdQSU9fT1NQRUVERVJfT1NQRUVEUjEzX1BvcykgLyohPCAweDBDMDAwMDAwICovDQojZGVmaW5lIEdQSU9fT1NQRUVERVJfT1NQRUVEUjEzICAgICAgICAgICAgICBHUElPX09TUEVFREVSX09TUEVFRFIxM19Nc2sgICAgICAgDQojZGVmaW5lIEdQSU9fT1NQRUVERVJfT1NQRUVEUjEzXzAgICAgICAgICAgICAoMHgxVSA8PCBHUElPX09TUEVFREVSX09TUEVFRFIxM19Qb3MpIC8qITwgMHgwNDAwMDAwMCAqLw0KI2RlZmluZSBHUElPX09TUEVFREVSX09TUEVFRFIxM18xICAgICAgICAgICAgKDB4MlUgPDwgR1BJT19PU1BFRURFUl9PU1BFRURSMTNfUG9zKSAvKiE8IDB4MDgwMDAwMDAgKi8NCg0KI2RlZmluZSBHUElPX09TUEVFREVSX09TUEVFRFIxNF9Qb3MgICAgICAgICAgKDI4VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX09TUEVFREVSX09TUEVFRFIxNF9Nc2sgICAgICAgICAgKDB4M1UgPDwgR1BJT19PU1BFRURFUl9PU1BFRURSMTRfUG9zKSAvKiE8IDB4MzAwMDAwMDAgKi8NCiNkZWZpbmUgR1BJT19PU1BFRURFUl9PU1BFRURSMTQgICAgICAgICAgICAgIEdQSU9fT1NQRUVERVJfT1NQRUVEUjE0X01zayAgICAgICANCiNkZWZpbmUgR1BJT19PU1BFRURFUl9PU1BFRURSMTRfMCAgICAgICAgICAgICgweDFVIDw8IEdQSU9fT1NQRUVERVJfT1NQRUVEUjE0X1BvcykgLyohPCAweDEwMDAwMDAwICovDQojZGVmaW5lIEdQSU9fT1NQRUVERVJfT1NQRUVEUjE0XzEgICAgICAgICAgICAoMHgyVSA8PCBHUElPX09TUEVFREVSX09TUEVFRFIxNF9Qb3MpIC8qITwgMHgyMDAwMDAwMCAqLw0KDQojZGVmaW5lIEdQSU9fT1NQRUVERVJfT1NQRUVEUjE1X1BvcyAgICAgICAgICAoMzBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fT1NQRUVERVJfT1NQRUVEUjE1X01zayAgICAgICAgICAoMHgzVSA8PCBHUElPX09TUEVFREVSX09TUEVFRFIxNV9Qb3MpIC8qITwgMHhDMDAwMDAwMCAqLw0KI2RlZmluZSBHUElPX09TUEVFREVSX09TUEVFRFIxNSAgICAgICAgICAgICAgR1BJT19PU1BFRURFUl9PU1BFRURSMTVfTXNrICAgICAgIA0KI2RlZmluZSBHUElPX09TUEVFREVSX09TUEVFRFIxNV8wICAgICAgICAgICAgKDB4MVUgPDwgR1BJT19PU1BFRURFUl9PU1BFRURSMTVfUG9zKSAvKiE8IDB4NDAwMDAwMDAgKi8NCiNkZWZpbmUgR1BJT19PU1BFRURFUl9PU1BFRURSMTVfMSAgICAgICAgICAgICgweDJVIDw8IEdQSU9fT1NQRUVERVJfT1NQRUVEUjE1X1BvcykgLyohPCAweDgwMDAwMDAwICovDQoNCi8qKioqKioqKioqKioqKioqKiogIEJpdHMgZGVmaW5pdGlvbiBmb3IgR1BJT19QVVBEUiByZWdpc3RlciAgKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIEdQSU9fUFVQRFJfUFVQRFIwX1BvcyAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fUFVQRFJfUFVQRFIwX01zayAgICAgICAgICAgICAgICAoMHgzVSA8PCBHUElPX1BVUERSX1BVUERSMF9Qb3MpICAgLyohPCAweDAwMDAwMDAzICovDQojZGVmaW5lIEdQSU9fUFVQRFJfUFVQRFIwICAgICAgICAgICAgICAgICAgICBHUElPX1BVUERSX1BVUERSMF9Nc2sgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fUFVQRFJfUFVQRFIwXzAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBHUElPX1BVUERSX1BVUERSMF9Qb3MpICAgLyohPCAweDAwMDAwMDAxICovDQojZGVmaW5lIEdQSU9fUFVQRFJfUFVQRFIwXzEgICAgICAgICAgICAgICAgICAoMHgyVSA8PCBHUElPX1BVUERSX1BVUERSMF9Qb3MpICAgLyohPCAweDAwMDAwMDAyICovDQoNCiNkZWZpbmUgR1BJT19QVVBEUl9QVVBEUjFfUG9zICAgICAgICAgICAgICAgICgyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19QVVBEUl9QVVBEUjFfTXNrICAgICAgICAgICAgICAgICgweDNVIDw8IEdQSU9fUFVQRFJfUFVQRFIxX1BvcykgICAvKiE8IDB4MDAwMDAwMEMgKi8NCiNkZWZpbmUgR1BJT19QVVBEUl9QVVBEUjEgICAgICAgICAgICAgICAgICAgIEdQSU9fUFVQRFJfUFVQRFIxX01zayAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19QVVBEUl9QVVBEUjFfMCAgICAgICAgICAgICAgICAgICgweDFVIDw8IEdQSU9fUFVQRFJfUFVQRFIxX1BvcykgICAvKiE8IDB4MDAwMDAwMDQgKi8NCiNkZWZpbmUgR1BJT19QVVBEUl9QVVBEUjFfMSAgICAgICAgICAgICAgICAgICgweDJVIDw8IEdQSU9fUFVQRFJfUFVQRFIxX1BvcykgICAvKiE8IDB4MDAwMDAwMDggKi8NCg0KI2RlZmluZSBHUElPX1BVUERSX1BVUERSMl9Qb3MgICAgICAgICAgICAgICAgKDRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX1BVUERSX1BVUERSMl9Nc2sgICAgICAgICAgICAgICAgKDB4M1UgPDwgR1BJT19QVVBEUl9QVVBEUjJfUG9zKSAgIC8qITwgMHgwMDAwMDAzMCAqLw0KI2RlZmluZSBHUElPX1BVUERSX1BVUERSMiAgICAgICAgICAgICAgICAgICAgR1BJT19QVVBEUl9QVVBEUjJfTXNrICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX1BVUERSX1BVUERSMl8wICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgR1BJT19QVVBEUl9QVVBEUjJfUG9zKSAgIC8qITwgMHgwMDAwMDAxMCAqLw0KI2RlZmluZSBHUElPX1BVUERSX1BVUERSMl8xICAgICAgICAgICAgICAgICAgKDB4MlUgPDwgR1BJT19QVVBEUl9QVVBEUjJfUG9zKSAgIC8qITwgMHgwMDAwMDAyMCAqLw0KDQojZGVmaW5lIEdQSU9fUFVQRFJfUFVQRFIzX1BvcyAgICAgICAgICAgICAgICAoNlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fUFVQRFJfUFVQRFIzX01zayAgICAgICAgICAgICAgICAoMHgzVSA8PCBHUElPX1BVUERSX1BVUERSM19Qb3MpICAgLyohPCAweDAwMDAwMEMwICovDQojZGVmaW5lIEdQSU9fUFVQRFJfUFVQRFIzICAgICAgICAgICAgICAgICAgICBHUElPX1BVUERSX1BVUERSM19Nc2sgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fUFVQRFJfUFVQRFIzXzAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBHUElPX1BVUERSX1BVUERSM19Qb3MpICAgLyohPCAweDAwMDAwMDQwICovDQojZGVmaW5lIEdQSU9fUFVQRFJfUFVQRFIzXzEgICAgICAgICAgICAgICAgICAoMHgyVSA8PCBHUElPX1BVUERSX1BVUERSM19Qb3MpICAgLyohPCAweDAwMDAwMDgwICovDQoNCiNkZWZpbmUgR1BJT19QVVBEUl9QVVBEUjRfUG9zICAgICAgICAgICAgICAgICg4VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19QVVBEUl9QVVBEUjRfTXNrICAgICAgICAgICAgICAgICgweDNVIDw8IEdQSU9fUFVQRFJfUFVQRFI0X1BvcykgICAvKiE8IDB4MDAwMDAzMDAgKi8NCiNkZWZpbmUgR1BJT19QVVBEUl9QVVBEUjQgICAgICAgICAgICAgICAgICAgIEdQSU9fUFVQRFJfUFVQRFI0X01zayAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19QVVBEUl9QVVBEUjRfMCAgICAgICAgICAgICAgICAgICgweDFVIDw8IEdQSU9fUFVQRFJfUFVQRFI0X1BvcykgICAvKiE8IDB4MDAwMDAxMDAgKi8NCiNkZWZpbmUgR1BJT19QVVBEUl9QVVBEUjRfMSAgICAgICAgICAgICAgICAgICgweDJVIDw8IEdQSU9fUFVQRFJfUFVQRFI0X1BvcykgICAvKiE8IDB4MDAwMDAyMDAgKi8NCg0KI2RlZmluZSBHUElPX1BVUERSX1BVUERSNV9Qb3MgICAgICAgICAgICAgICAgKDEwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX1BVUERSX1BVUERSNV9Nc2sgICAgICAgICAgICAgICAgKDB4M1UgPDwgR1BJT19QVVBEUl9QVVBEUjVfUG9zKSAgIC8qITwgMHgwMDAwMEMwMCAqLw0KI2RlZmluZSBHUElPX1BVUERSX1BVUERSNSAgICAgICAgICAgICAgICAgICAgR1BJT19QVVBEUl9QVVBEUjVfTXNrICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX1BVUERSX1BVUERSNV8wICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgR1BJT19QVVBEUl9QVVBEUjVfUG9zKSAgIC8qITwgMHgwMDAwMDQwMCAqLw0KI2RlZmluZSBHUElPX1BVUERSX1BVUERSNV8xICAgICAgICAgICAgICAgICAgKDB4MlUgPDwgR1BJT19QVVBEUl9QVVBEUjVfUG9zKSAgIC8qITwgMHgwMDAwMDgwMCAqLw0KDQojZGVmaW5lIEdQSU9fUFVQRFJfUFVQRFI2X1BvcyAgICAgICAgICAgICAgICAoMTJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fUFVQRFJfUFVQRFI2X01zayAgICAgICAgICAgICAgICAoMHgzVSA8PCBHUElPX1BVUERSX1BVUERSNl9Qb3MpICAgLyohPCAweDAwMDAzMDAwICovDQojZGVmaW5lIEdQSU9fUFVQRFJfUFVQRFI2ICAgICAgICAgICAgICAgICAgICBHUElPX1BVUERSX1BVUERSNl9Nc2sgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fUFVQRFJfUFVQRFI2XzAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBHUElPX1BVUERSX1BVUERSNl9Qb3MpICAgLyohPCAweDAwMDAxMDAwICovDQojZGVmaW5lIEdQSU9fUFVQRFJfUFVQRFI2XzEgICAgICAgICAgICAgICAgICAoMHgyVSA8PCBHUElPX1BVUERSX1BVUERSNl9Qb3MpICAgLyohPCAweDAwMDAyMDAwICovDQoNCiNkZWZpbmUgR1BJT19QVVBEUl9QVVBEUjdfUG9zICAgICAgICAgICAgICAgICgxNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19QVVBEUl9QVVBEUjdfTXNrICAgICAgICAgICAgICAgICgweDNVIDw8IEdQSU9fUFVQRFJfUFVQRFI3X1BvcykgICAvKiE8IDB4MDAwMEMwMDAgKi8NCiNkZWZpbmUgR1BJT19QVVBEUl9QVVBEUjcgICAgICAgICAgICAgICAgICAgIEdQSU9fUFVQRFJfUFVQRFI3X01zayAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19QVVBEUl9QVVBEUjdfMCAgICAgICAgICAgICAgICAgICgweDFVIDw8IEdQSU9fUFVQRFJfUFVQRFI3X1BvcykgICAvKiE8IDB4MDAwMDQwMDAgKi8NCiNkZWZpbmUgR1BJT19QVVBEUl9QVVBEUjdfMSAgICAgICAgICAgICAgICAgICgweDJVIDw8IEdQSU9fUFVQRFJfUFVQRFI3X1BvcykgICAvKiE8IDB4MDAwMDgwMDAgKi8NCg0KI2RlZmluZSBHUElPX1BVUERSX1BVUERSOF9Qb3MgICAgICAgICAgICAgICAgKDE2VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX1BVUERSX1BVUERSOF9Nc2sgICAgICAgICAgICAgICAgKDB4M1UgPDwgR1BJT19QVVBEUl9QVVBEUjhfUG9zKSAgIC8qITwgMHgwMDAzMDAwMCAqLw0KI2RlZmluZSBHUElPX1BVUERSX1BVUERSOCAgICAgICAgICAgICAgICAgICAgR1BJT19QVVBEUl9QVVBEUjhfTXNrICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX1BVUERSX1BVUERSOF8wICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgR1BJT19QVVBEUl9QVVBEUjhfUG9zKSAgIC8qITwgMHgwMDAxMDAwMCAqLw0KI2RlZmluZSBHUElPX1BVUERSX1BVUERSOF8xICAgICAgICAgICAgICAgICAgKDB4MlUgPDwgR1BJT19QVVBEUl9QVVBEUjhfUG9zKSAgIC8qITwgMHgwMDAyMDAwMCAqLw0KDQojZGVmaW5lIEdQSU9fUFVQRFJfUFVQRFI5X1BvcyAgICAgICAgICAgICAgICAoMThVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fUFVQRFJfUFVQRFI5X01zayAgICAgICAgICAgICAgICAoMHgzVSA8PCBHUElPX1BVUERSX1BVUERSOV9Qb3MpICAgLyohPCAweDAwMEMwMDAwICovDQojZGVmaW5lIEdQSU9fUFVQRFJfUFVQRFI5ICAgICAgICAgICAgICAgICAgICBHUElPX1BVUERSX1BVUERSOV9Nc2sgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fUFVQRFJfUFVQRFI5XzAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBHUElPX1BVUERSX1BVUERSOV9Qb3MpICAgLyohPCAweDAwMDQwMDAwICovDQojZGVmaW5lIEdQSU9fUFVQRFJfUFVQRFI5XzEgICAgICAgICAgICAgICAgICAoMHgyVSA8PCBHUElPX1BVUERSX1BVUERSOV9Qb3MpICAgLyohPCAweDAwMDgwMDAwICovDQoNCiNkZWZpbmUgR1BJT19QVVBEUl9QVVBEUjEwX1BvcyAgICAgICAgICAgICAgICgyMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19QVVBEUl9QVVBEUjEwX01zayAgICAgICAgICAgICAgICgweDNVIDw8IEdQSU9fUFVQRFJfUFVQRFIxMF9Qb3MpICAvKiE8IDB4MDAzMDAwMDAgKi8NCiNkZWZpbmUgR1BJT19QVVBEUl9QVVBEUjEwICAgICAgICAgICAgICAgICAgIEdQSU9fUFVQRFJfUFVQRFIxMF9Nc2sgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19QVVBEUl9QVVBEUjEwXzAgICAgICAgICAgICAgICAgICgweDFVIDw8IEdQSU9fUFVQRFJfUFVQRFIxMF9Qb3MpICAvKiE8IDB4MDAxMDAwMDAgKi8NCiNkZWZpbmUgR1BJT19QVVBEUl9QVVBEUjEwXzEgICAgICAgICAgICAgICAgICgweDJVIDw8IEdQSU9fUFVQRFJfUFVQRFIxMF9Qb3MpICAvKiE8IDB4MDAyMDAwMDAgKi8NCg0KI2RlZmluZSBHUElPX1BVUERSX1BVUERSMTFfUG9zICAgICAgICAgICAgICAgKDIyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX1BVUERSX1BVUERSMTFfTXNrICAgICAgICAgICAgICAgKDB4M1UgPDwgR1BJT19QVVBEUl9QVVBEUjExX1BvcykgIC8qITwgMHgwMEMwMDAwMCAqLw0KI2RlZmluZSBHUElPX1BVUERSX1BVUERSMTEgICAgICAgICAgICAgICAgICAgR1BJT19QVVBEUl9QVVBEUjExX01zayAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX1BVUERSX1BVUERSMTFfMCAgICAgICAgICAgICAgICAgKDB4MVUgPDwgR1BJT19QVVBEUl9QVVBEUjExX1BvcykgIC8qITwgMHgwMDQwMDAwMCAqLw0KI2RlZmluZSBHUElPX1BVUERSX1BVUERSMTFfMSAgICAgICAgICAgICAgICAgKDB4MlUgPDwgR1BJT19QVVBEUl9QVVBEUjExX1BvcykgIC8qITwgMHgwMDgwMDAwMCAqLw0KDQojZGVmaW5lIEdQSU9fUFVQRFJfUFVQRFIxMl9Qb3MgICAgICAgICAgICAgICAoMjRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fUFVQRFJfUFVQRFIxMl9Nc2sgICAgICAgICAgICAgICAoMHgzVSA8PCBHUElPX1BVUERSX1BVUERSMTJfUG9zKSAgLyohPCAweDAzMDAwMDAwICovDQojZGVmaW5lIEdQSU9fUFVQRFJfUFVQRFIxMiAgICAgICAgICAgICAgICAgICBHUElPX1BVUERSX1BVUERSMTJfTXNrICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fUFVQRFJfUFVQRFIxMl8wICAgICAgICAgICAgICAgICAoMHgxVSA8PCBHUElPX1BVUERSX1BVUERSMTJfUG9zKSAgLyohPCAweDAxMDAwMDAwICovDQojZGVmaW5lIEdQSU9fUFVQRFJfUFVQRFIxMl8xICAgICAgICAgICAgICAgICAoMHgyVSA8PCBHUElPX1BVUERSX1BVUERSMTJfUG9zKSAgLyohPCAweDAyMDAwMDAwICovDQoNCiNkZWZpbmUgR1BJT19QVVBEUl9QVVBEUjEzX1BvcyAgICAgICAgICAgICAgICgyNlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19QVVBEUl9QVVBEUjEzX01zayAgICAgICAgICAgICAgICgweDNVIDw8IEdQSU9fUFVQRFJfUFVQRFIxM19Qb3MpICAvKiE8IDB4MEMwMDAwMDAgKi8NCiNkZWZpbmUgR1BJT19QVVBEUl9QVVBEUjEzICAgICAgICAgICAgICAgICAgIEdQSU9fUFVQRFJfUFVQRFIxM19Nc2sgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19QVVBEUl9QVVBEUjEzXzAgICAgICAgICAgICAgICAgICgweDFVIDw8IEdQSU9fUFVQRFJfUFVQRFIxM19Qb3MpICAvKiE8IDB4MDQwMDAwMDAgKi8NCiNkZWZpbmUgR1BJT19QVVBEUl9QVVBEUjEzXzEgICAgICAgICAgICAgICAgICgweDJVIDw8IEdQSU9fUFVQRFJfUFVQRFIxM19Qb3MpICAvKiE8IDB4MDgwMDAwMDAgKi8NCg0KI2RlZmluZSBHUElPX1BVUERSX1BVUERSMTRfUG9zICAgICAgICAgICAgICAgKDI4VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX1BVUERSX1BVUERSMTRfTXNrICAgICAgICAgICAgICAgKDB4M1UgPDwgR1BJT19QVVBEUl9QVVBEUjE0X1BvcykgIC8qITwgMHgzMDAwMDAwMCAqLw0KI2RlZmluZSBHUElPX1BVUERSX1BVUERSMTQgICAgICAgICAgICAgICAgICAgR1BJT19QVVBEUl9QVVBEUjE0X01zayAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX1BVUERSX1BVUERSMTRfMCAgICAgICAgICAgICAgICAgKDB4MVUgPDwgR1BJT19QVVBEUl9QVVBEUjE0X1BvcykgIC8qITwgMHgxMDAwMDAwMCAqLw0KI2RlZmluZSBHUElPX1BVUERSX1BVUERSMTRfMSAgICAgICAgICAgICAgICAgKDB4MlUgPDwgR1BJT19QVVBEUl9QVVBEUjE0X1BvcykgIC8qITwgMHgyMDAwMDAwMCAqLw0KI2RlZmluZSBHUElPX1BVUERSX1BVUERSMTVfUG9zICAgICAgICAgICAgICAgKDMwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX1BVUERSX1BVUERSMTVfTXNrICAgICAgICAgICAgICAgKDB4M1UgPDwgR1BJT19QVVBEUl9QVVBEUjE1X1BvcykgIC8qITwgMHhDMDAwMDAwMCAqLw0KI2RlZmluZSBHUElPX1BVUERSX1BVUERSMTUgICAgICAgICAgICAgICAgICAgR1BJT19QVVBEUl9QVVBEUjE1X01zayAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX1BVUERSX1BVUERSMTVfMCAgICAgICAgICAgICAgICAgKDB4MVUgPDwgR1BJT19QVVBEUl9QVVBEUjE1X1BvcykgIC8qITwgMHg0MDAwMDAwMCAqLw0KI2RlZmluZSBHUElPX1BVUERSX1BVUERSMTVfMSAgICAgICAgICAgICAgICAgKDB4MlUgPDwgR1BJT19QVVBEUl9QVVBEUjE1X1BvcykgIC8qITwgMHg4MDAwMDAwMCAqLw0KDQovKioqKioqKioqKioqKioqKioqICBCaXRzIGRlZmluaXRpb24gZm9yIEdQSU9fSURSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBHUElPX0lEUl9JRFJfMCAgICAgICAgICAgICAgICAgICAgICAgKDB4MDAwMDAwMDFVKSAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX0lEUl9JRFJfMSAgICAgICAgICAgICAgICAgICAgICAgKDB4MDAwMDAwMDJVKSAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX0lEUl9JRFJfMiAgICAgICAgICAgICAgICAgICAgICAgKDB4MDAwMDAwMDRVKSAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX0lEUl9JRFJfMyAgICAgICAgICAgICAgICAgICAgICAgKDB4MDAwMDAwMDhVKSAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX0lEUl9JRFJfNCAgICAgICAgICAgICAgICAgICAgICAgKDB4MDAwMDAwMTBVKSAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX0lEUl9JRFJfNSAgICAgICAgICAgICAgICAgICAgICAgKDB4MDAwMDAwMjBVKSAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX0lEUl9JRFJfNiAgICAgICAgICAgICAgICAgICAgICAgKDB4MDAwMDAwNDBVKSAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX0lEUl9JRFJfNyAgICAgICAgICAgICAgICAgICAgICAgKDB4MDAwMDAwODBVKSAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX0lEUl9JRFJfOCAgICAgICAgICAgICAgICAgICAgICAgKDB4MDAwMDAxMDBVKSAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX0lEUl9JRFJfOSAgICAgICAgICAgICAgICAgICAgICAgKDB4MDAwMDAyMDBVKSAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX0lEUl9JRFJfMTAgICAgICAgICAgICAgICAgICAgICAgKDB4MDAwMDA0MDBVKSAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX0lEUl9JRFJfMTEgICAgICAgICAgICAgICAgICAgICAgKDB4MDAwMDA4MDBVKSAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX0lEUl9JRFJfMTIgICAgICAgICAgICAgICAgICAgICAgKDB4MDAwMDEwMDBVKSAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX0lEUl9JRFJfMTMgICAgICAgICAgICAgICAgICAgICAgKDB4MDAwMDIwMDBVKSAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX0lEUl9JRFJfMTQgICAgICAgICAgICAgICAgICAgICAgKDB4MDAwMDQwMDBVKSAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX0lEUl9JRFJfMTUgICAgICAgICAgICAgICAgICAgICAgKDB4MDAwMDgwMDBVKSAgICAgICAgICAgICAgICAgICAgIA0KDQovKioqKioqKioqKioqKioqKioqICBCaXRzIGRlZmluaXRpb24gZm9yIEdQSU9fT0RSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBHUElPX09EUl9PRFJfMCAgICAgICAgICAgICAgICAgICAgICAgKDB4MDAwMDAwMDFVKSAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX09EUl9PRFJfMSAgICAgICAgICAgICAgICAgICAgICAgKDB4MDAwMDAwMDJVKSAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX09EUl9PRFJfMiAgICAgICAgICAgICAgICAgICAgICAgKDB4MDAwMDAwMDRVKSAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX09EUl9PRFJfMyAgICAgICAgICAgICAgICAgICAgICAgKDB4MDAwMDAwMDhVKSAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX09EUl9PRFJfNCAgICAgICAgICAgICAgICAgICAgICAgKDB4MDAwMDAwMTBVKSAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX09EUl9PRFJfNSAgICAgICAgICAgICAgICAgICAgICAgKDB4MDAwMDAwMjBVKSAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX09EUl9PRFJfNiAgICAgICAgICAgICAgICAgICAgICAgKDB4MDAwMDAwNDBVKSAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX09EUl9PRFJfNyAgICAgICAgICAgICAgICAgICAgICAgKDB4MDAwMDAwODBVKSAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX09EUl9PRFJfOCAgICAgICAgICAgICAgICAgICAgICAgKDB4MDAwMDAxMDBVKSAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX09EUl9PRFJfOSAgICAgICAgICAgICAgICAgICAgICAgKDB4MDAwMDAyMDBVKSAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX09EUl9PRFJfMTAgICAgICAgICAgICAgICAgICAgICAgKDB4MDAwMDA0MDBVKSAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX09EUl9PRFJfMTEgICAgICAgICAgICAgICAgICAgICAgKDB4MDAwMDA4MDBVKSAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX09EUl9PRFJfMTIgICAgICAgICAgICAgICAgICAgICAgKDB4MDAwMDEwMDBVKSAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX09EUl9PRFJfMTMgICAgICAgICAgICAgICAgICAgICAgKDB4MDAwMDIwMDBVKSAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX09EUl9PRFJfMTQgICAgICAgICAgICAgICAgICAgICAgKDB4MDAwMDQwMDBVKSAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX09EUl9PRFJfMTUgICAgICAgICAgICAgICAgICAgICAgKDB4MDAwMDgwMDBVKSAgICAgICAgICAgICAgICAgICAgIA0KDQovKioqKioqKioqKioqKioqKioqICBCaXRzIGRlZmluaXRpb24gZm9yIEdQSU9fQlNSUiByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBHUElPX0JTUlJfQlNfMCAgICAgICAgICAgICAgICAgICAgICAgKDB4MDAwMDAwMDFVKSAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX0JTUlJfQlNfMSAgICAgICAgICAgICAgICAgICAgICAgKDB4MDAwMDAwMDJVKSAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX0JTUlJfQlNfMiAgICAgICAgICAgICAgICAgICAgICAgKDB4MDAwMDAwMDRVKSAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX0JTUlJfQlNfMyAgICAgICAgICAgICAgICAgICAgICAgKDB4MDAwMDAwMDhVKSAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX0JTUlJfQlNfNCAgICAgICAgICAgICAgICAgICAgICAgKDB4MDAwMDAwMTBVKSAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX0JTUlJfQlNfNSAgICAgICAgICAgICAgICAgICAgICAgKDB4MDAwMDAwMjBVKSAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX0JTUlJfQlNfNiAgICAgICAgICAgICAgICAgICAgICAgKDB4MDAwMDAwNDBVKSAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX0JTUlJfQlNfNyAgICAgICAgICAgICAgICAgICAgICAgKDB4MDAwMDAwODBVKSAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX0JTUlJfQlNfOCAgICAgICAgICAgICAgICAgICAgICAgKDB4MDAwMDAxMDBVKSAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX0JTUlJfQlNfOSAgICAgICAgICAgICAgICAgICAgICAgKDB4MDAwMDAyMDBVKSAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX0JTUlJfQlNfMTAgICAgICAgICAgICAgICAgICAgICAgKDB4MDAwMDA0MDBVKSAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX0JTUlJfQlNfMTEgICAgICAgICAgICAgICAgICAgICAgKDB4MDAwMDA4MDBVKSAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX0JTUlJfQlNfMTIgICAgICAgICAgICAgICAgICAgICAgKDB4MDAwMDEwMDBVKSAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX0JTUlJfQlNfMTMgICAgICAgICAgICAgICAgICAgICAgKDB4MDAwMDIwMDBVKSAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX0JTUlJfQlNfMTQgICAgICAgICAgICAgICAgICAgICAgKDB4MDAwMDQwMDBVKSAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX0JTUlJfQlNfMTUgICAgICAgICAgICAgICAgICAgICAgKDB4MDAwMDgwMDBVKSAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX0JTUlJfQlJfMCAgICAgICAgICAgICAgICAgICAgICAgKDB4MDAwMTAwMDBVKSAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX0JTUlJfQlJfMSAgICAgICAgICAgICAgICAgICAgICAgKDB4MDAwMjAwMDBVKSAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX0JTUlJfQlJfMiAgICAgICAgICAgICAgICAgICAgICAgKDB4MDAwNDAwMDBVKSAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX0JTUlJfQlJfMyAgICAgICAgICAgICAgICAgICAgICAgKDB4MDAwODAwMDBVKSAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX0JTUlJfQlJfNCAgICAgICAgICAgICAgICAgICAgICAgKDB4MDAxMDAwMDBVKSAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX0JTUlJfQlJfNSAgICAgICAgICAgICAgICAgICAgICAgKDB4MDAyMDAwMDBVKSAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX0JTUlJfQlJfNiAgICAgICAgICAgICAgICAgICAgICAgKDB4MDA0MDAwMDBVKSAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX0JTUlJfQlJfNyAgICAgICAgICAgICAgICAgICAgICAgKDB4MDA4MDAwMDBVKSAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX0JTUlJfQlJfOCAgICAgICAgICAgICAgICAgICAgICAgKDB4MDEwMDAwMDBVKSAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX0JTUlJfQlJfOSAgICAgICAgICAgICAgICAgICAgICAgKDB4MDIwMDAwMDBVKSAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX0JTUlJfQlJfMTAgICAgICAgICAgICAgICAgICAgICAgKDB4MDQwMDAwMDBVKSAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX0JTUlJfQlJfMTEgICAgICAgICAgICAgICAgICAgICAgKDB4MDgwMDAwMDBVKSAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX0JTUlJfQlJfMTIgICAgICAgICAgICAgICAgICAgICAgKDB4MTAwMDAwMDBVKSAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX0JTUlJfQlJfMTMgICAgICAgICAgICAgICAgICAgICAgKDB4MjAwMDAwMDBVKSAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX0JTUlJfQlJfMTQgICAgICAgICAgICAgICAgICAgICAgKDB4NDAwMDAwMDBVKSAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX0JTUlJfQlJfMTUgICAgICAgICAgICAgICAgICAgICAgKDB4ODAwMDAwMDBVKSAgICAgICAgICAgICAgICAgICAgIA0KDQovKioqKioqKioqKioqKioqKioqIEJpdCBkZWZpbml0aW9uIGZvciBHUElPX0xDS1IgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBHUElPX0xDS1JfTENLMF9Qb3MgICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX0xDS1JfTENLMF9Nc2sgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgR1BJT19MQ0tSX0xDSzBfUG9zKSAgICAgIC8qITwgMHgwMDAwMDAwMSAqLw0KI2RlZmluZSBHUElPX0xDS1JfTENLMCAgICAgICAgICAgICAgICAgICAgICAgR1BJT19MQ0tSX0xDSzBfTXNrICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX0xDS1JfTENLMV9Qb3MgICAgICAgICAgICAgICAgICAgKDFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX0xDS1JfTENLMV9Nc2sgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgR1BJT19MQ0tSX0xDSzFfUG9zKSAgICAgIC8qITwgMHgwMDAwMDAwMiAqLw0KI2RlZmluZSBHUElPX0xDS1JfTENLMSAgICAgICAgICAgICAgICAgICAgICAgR1BJT19MQ0tSX0xDSzFfTXNrICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX0xDS1JfTENLMl9Qb3MgICAgICAgICAgICAgICAgICAgKDJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX0xDS1JfTENLMl9Nc2sgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgR1BJT19MQ0tSX0xDSzJfUG9zKSAgICAgIC8qITwgMHgwMDAwMDAwNCAqLw0KI2RlZmluZSBHUElPX0xDS1JfTENLMiAgICAgICAgICAgICAgICAgICAgICAgR1BJT19MQ0tSX0xDSzJfTXNrICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX0xDS1JfTENLM19Qb3MgICAgICAgICAgICAgICAgICAgKDNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX0xDS1JfTENLM19Nc2sgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgR1BJT19MQ0tSX0xDSzNfUG9zKSAgICAgIC8qITwgMHgwMDAwMDAwOCAqLw0KI2RlZmluZSBHUElPX0xDS1JfTENLMyAgICAgICAgICAgICAgICAgICAgICAgR1BJT19MQ0tSX0xDSzNfTXNrICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX0xDS1JfTENLNF9Qb3MgICAgICAgICAgICAgICAgICAgKDRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX0xDS1JfTENLNF9Nc2sgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgR1BJT19MQ0tSX0xDSzRfUG9zKSAgICAgIC8qITwgMHgwMDAwMDAxMCAqLw0KI2RlZmluZSBHUElPX0xDS1JfTENLNCAgICAgICAgICAgICAgICAgICAgICAgR1BJT19MQ0tSX0xDSzRfTXNrICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX0xDS1JfTENLNV9Qb3MgICAgICAgICAgICAgICAgICAgKDVVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX0xDS1JfTENLNV9Nc2sgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgR1BJT19MQ0tSX0xDSzVfUG9zKSAgICAgIC8qITwgMHgwMDAwMDAyMCAqLw0KI2RlZmluZSBHUElPX0xDS1JfTENLNSAgICAgICAgICAgICAgICAgICAgICAgR1BJT19MQ0tSX0xDSzVfTXNrICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX0xDS1JfTENLNl9Qb3MgICAgICAgICAgICAgICAgICAgKDZVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX0xDS1JfTENLNl9Nc2sgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgR1BJT19MQ0tSX0xDSzZfUG9zKSAgICAgIC8qITwgMHgwMDAwMDA0MCAqLw0KI2RlZmluZSBHUElPX0xDS1JfTENLNiAgICAgICAgICAgICAgICAgICAgICAgR1BJT19MQ0tSX0xDSzZfTXNrICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX0xDS1JfTENLN19Qb3MgICAgICAgICAgICAgICAgICAgKDdVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX0xDS1JfTENLN19Nc2sgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgR1BJT19MQ0tSX0xDSzdfUG9zKSAgICAgIC8qITwgMHgwMDAwMDA4MCAqLw0KI2RlZmluZSBHUElPX0xDS1JfTENLNyAgICAgICAgICAgICAgICAgICAgICAgR1BJT19MQ0tSX0xDSzdfTXNrICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX0xDS1JfTENLOF9Qb3MgICAgICAgICAgICAgICAgICAgKDhVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX0xDS1JfTENLOF9Nc2sgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgR1BJT19MQ0tSX0xDSzhfUG9zKSAgICAgIC8qITwgMHgwMDAwMDEwMCAqLw0KI2RlZmluZSBHUElPX0xDS1JfTENLOCAgICAgICAgICAgICAgICAgICAgICAgR1BJT19MQ0tSX0xDSzhfTXNrICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX0xDS1JfTENLOV9Qb3MgICAgICAgICAgICAgICAgICAgKDlVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX0xDS1JfTENLOV9Nc2sgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgR1BJT19MQ0tSX0xDSzlfUG9zKSAgICAgIC8qITwgMHgwMDAwMDIwMCAqLw0KI2RlZmluZSBHUElPX0xDS1JfTENLOSAgICAgICAgICAgICAgICAgICAgICAgR1BJT19MQ0tSX0xDSzlfTXNrICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX0xDS1JfTENLMTBfUG9zICAgICAgICAgICAgICAgICAgKDEwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX0xDS1JfTENLMTBfTXNrICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgR1BJT19MQ0tSX0xDSzEwX1BvcykgICAgIC8qITwgMHgwMDAwMDQwMCAqLw0KI2RlZmluZSBHUElPX0xDS1JfTENLMTAgICAgICAgICAgICAgICAgICAgICAgR1BJT19MQ0tSX0xDSzEwX01zayAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX0xDS1JfTENLMTFfUG9zICAgICAgICAgICAgICAgICAgKDExVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX0xDS1JfTENLMTFfTXNrICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgR1BJT19MQ0tSX0xDSzExX1BvcykgICAgIC8qITwgMHgwMDAwMDgwMCAqLw0KI2RlZmluZSBHUElPX0xDS1JfTENLMTEgICAgICAgICAgICAgICAgICAgICAgR1BJT19MQ0tSX0xDSzExX01zayAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX0xDS1JfTENLMTJfUG9zICAgICAgICAgICAgICAgICAgKDEyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX0xDS1JfTENLMTJfTXNrICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgR1BJT19MQ0tSX0xDSzEyX1BvcykgICAgIC8qITwgMHgwMDAwMTAwMCAqLw0KI2RlZmluZSBHUElPX0xDS1JfTENLMTIgICAgICAgICAgICAgICAgICAgICAgR1BJT19MQ0tSX0xDSzEyX01zayAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX0xDS1JfTENLMTNfUG9zICAgICAgICAgICAgICAgICAgKDEzVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX0xDS1JfTENLMTNfTXNrICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgR1BJT19MQ0tSX0xDSzEzX1BvcykgICAgIC8qITwgMHgwMDAwMjAwMCAqLw0KI2RlZmluZSBHUElPX0xDS1JfTENLMTMgICAgICAgICAgICAgICAgICAgICAgR1BJT19MQ0tSX0xDSzEzX01zayAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX0xDS1JfTENLMTRfUG9zICAgICAgICAgICAgICAgICAgKDE0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX0xDS1JfTENLMTRfTXNrICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgR1BJT19MQ0tSX0xDSzE0X1BvcykgICAgIC8qITwgMHgwMDAwNDAwMCAqLw0KI2RlZmluZSBHUElPX0xDS1JfTENLMTQgICAgICAgICAgICAgICAgICAgICAgR1BJT19MQ0tSX0xDSzE0X01zayAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX0xDS1JfTENLMTVfUG9zICAgICAgICAgICAgICAgICAgKDE1VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX0xDS1JfTENLMTVfTXNrICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgR1BJT19MQ0tSX0xDSzE1X1BvcykgICAgIC8qITwgMHgwMDAwODAwMCAqLw0KI2RlZmluZSBHUElPX0xDS1JfTENLMTUgICAgICAgICAgICAgICAgICAgICAgR1BJT19MQ0tSX0xDSzE1X01zayAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX0xDS1JfTENLS19Qb3MgICAgICAgICAgICAgICAgICAgKDE2VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX0xDS1JfTENLS19Nc2sgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgR1BJT19MQ0tSX0xDS0tfUG9zKSAgICAgIC8qITwgMHgwMDAxMDAwMCAqLw0KI2RlZmluZSBHUElPX0xDS1JfTENLSyAgICAgICAgICAgICAgICAgICAgICAgR1BJT19MQ0tSX0xDS0tfTXNrICAgICAgICAgICAgICAgIA0KDQovKioqKioqKioqKioqKioqKioqIEJpdCBkZWZpbml0aW9uIGZvciBHUElPX0FGUkwgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBHUElPX0FGUkxfQUZTRUwwX1BvcyAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19BRlJMX0FGU0VMMF9Nc2sgICAgICAgICAgICAgICAgICAoMHhGVSA8PCBHUElPX0FGUkxfQUZTRUwwX1BvcykgICAgIC8qITwgMHgwMDAwMDAwRiAqLw0KI2RlZmluZSBHUElPX0FGUkxfQUZTRUwwICAgICAgICAgICAgICAgICAgICAgIEdQSU9fQUZSTF9BRlNFTDBfTXNrICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fQUZSTF9BRlNFTDFfUG9zICAgICAgICAgICAgICAgICAgKDRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX0FGUkxfQUZTRUwxX01zayAgICAgICAgICAgICAgICAgICgweEZVIDw8IEdQSU9fQUZSTF9BRlNFTDFfUG9zKSAgICAgLyohPCAweDAwMDAwMEYwICovDQojZGVmaW5lIEdQSU9fQUZSTF9BRlNFTDEgICAgICAgICAgICAgICAgICAgICAgR1BJT19BRlJMX0FGU0VMMV9Nc2sgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19BRlJMX0FGU0VMMl9Qb3MgICAgICAgICAgICAgICAgICAoOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fQUZSTF9BRlNFTDJfTXNrICAgICAgICAgICAgICAgICAgKDB4RlUgPDwgR1BJT19BRlJMX0FGU0VMMl9Qb3MpICAgICAvKiE8IDB4MDAwMDBGMDAgKi8NCiNkZWZpbmUgR1BJT19BRlJMX0FGU0VMMiAgICAgICAgICAgICAgICAgICAgICBHUElPX0FGUkxfQUZTRUwyX01zayAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX0FGUkxfQUZTRUwzX1BvcyAgICAgICAgICAgICAgICAgICgxMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19BRlJMX0FGU0VMM19Nc2sgICAgICAgICAgICAgICAgICAoMHhGVSA8PCBHUElPX0FGUkxfQUZTRUwzX1BvcykgICAgIC8qITwgMHgwMDAwRjAwMCAqLw0KI2RlZmluZSBHUElPX0FGUkxfQUZTRUwzICAgICAgICAgICAgICAgICAgICAgIEdQSU9fQUZSTF9BRlNFTDNfTXNrICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fQUZSTF9BRlNFTDRfUG9zICAgICAgICAgICAgICAgICAgKDE2VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX0FGUkxfQUZTRUw0X01zayAgICAgICAgICAgICAgICAgICgweEZVIDw8IEdQSU9fQUZSTF9BRlNFTDRfUG9zKSAgICAgLyohPCAweDAwMEYwMDAwICovDQojZGVmaW5lIEdQSU9fQUZSTF9BRlNFTDQgICAgICAgICAgICAgICAgICAgICAgR1BJT19BRlJMX0FGU0VMNF9Nc2sgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19BRlJMX0FGU0VMNV9Qb3MgICAgICAgICAgICAgICAgICAoMjBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fQUZSTF9BRlNFTDVfTXNrICAgICAgICAgICAgICAgICAgKDB4RlUgPDwgR1BJT19BRlJMX0FGU0VMNV9Qb3MpICAgICAvKiE8IDB4MDBGMDAwMDAgKi8NCiNkZWZpbmUgR1BJT19BRlJMX0FGU0VMNSAgICAgICAgICAgICAgICAgICAgICBHUElPX0FGUkxfQUZTRUw1X01zayAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX0FGUkxfQUZTRUw2X1BvcyAgICAgICAgICAgICAgICAgICgyNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19BRlJMX0FGU0VMNl9Nc2sgICAgICAgICAgICAgICAgICAoMHhGVSA8PCBHUElPX0FGUkxfQUZTRUw2X1BvcykgICAgIC8qITwgMHgwRjAwMDAwMCAqLw0KI2RlZmluZSBHUElPX0FGUkxfQUZTRUw2ICAgICAgICAgICAgICAgICAgICAgIEdQSU9fQUZSTF9BRlNFTDZfTXNrICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fQUZSTF9BRlNFTDdfUG9zICAgICAgICAgICAgICAgICAgKDI4VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX0FGUkxfQUZTRUw3X01zayAgICAgICAgICAgICAgICAgICgweEZVIDw8IEdQSU9fQUZSTF9BRlNFTDdfUG9zKSAgICAgLyohPCAweEYwMDAwMDAwICovDQojZGVmaW5lIEdQSU9fQUZSTF9BRlNFTDcgICAgICAgICAgICAgICAgICAgICAgR1BJT19BRlJMX0FGU0VMN19Nc2sgICAgICAgICAgICAgICANCg0KLyoqKioqKioqKioqKioqKioqKiBCaXQgZGVmaW5pdGlvbiBmb3IgR1BJT19BRlJIIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgR1BJT19BRlJIX0FGU0VMOF9Qb3MgICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fQUZSSF9BRlNFTDhfTXNrICAgICAgICAgICAgICAgICAgKDB4RlUgPDwgR1BJT19BRlJIX0FGU0VMOF9Qb3MpICAgICAvKiE8IDB4MDAwMDAwMEYgKi8NCiNkZWZpbmUgR1BJT19BRlJIX0FGU0VMOCAgICAgICAgICAgICAgICAgICAgICBHUElPX0FGUkhfQUZTRUw4X01zayAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX0FGUkhfQUZTRUw5X1BvcyAgICAgICAgICAgICAgICAgICg0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19BRlJIX0FGU0VMOV9Nc2sgICAgICAgICAgICAgICAgICAoMHhGVSA8PCBHUElPX0FGUkhfQUZTRUw5X1BvcykgICAgIC8qITwgMHgwMDAwMDBGMCAqLw0KI2RlZmluZSBHUElPX0FGUkhfQUZTRUw5ICAgICAgICAgICAgICAgICAgICAgIEdQSU9fQUZSSF9BRlNFTDlfTXNrICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fQUZSSF9BRlNFTDEwX1BvcyAgICAgICAgICAgICAgICAgICg4VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19BRlJIX0FGU0VMMTBfTXNrICAgICAgICAgICAgICAgICAgKDB4RlUgPDwgR1BJT19BRlJIX0FGU0VMMTBfUG9zKSAgICAgLyohPCAweDAwMDAwRjAwICovDQojZGVmaW5lIEdQSU9fQUZSSF9BRlNFTDEwICAgICAgICAgICAgICAgICAgICAgIEdQSU9fQUZSSF9BRlNFTDEwX01zayAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX0FGUkhfQUZTRUwxMV9Qb3MgICAgICAgICAgICAgICAgICAoMTJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fQUZSSF9BRlNFTDExX01zayAgICAgICAgICAgICAgICAgICgweEZVIDw8IEdQSU9fQUZSSF9BRlNFTDExX1BvcykgICAgIC8qITwgMHgwMDAwRjAwMCAqLw0KI2RlZmluZSBHUElPX0FGUkhfQUZTRUwxMSAgICAgICAgICAgICAgICAgICAgICBHUElPX0FGUkhfQUZTRUwxMV9Nc2sgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19BRlJIX0FGU0VMMTJfUG9zICAgICAgICAgICAgICAgICAgKDE2VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX0FGUkhfQUZTRUwxMl9Nc2sgICAgICAgICAgICAgICAgICAoMHhGVSA8PCBHUElPX0FGUkhfQUZTRUwxMl9Qb3MpICAgICAvKiE8IDB4MDAwRjAwMDAgKi8NCiNkZWZpbmUgR1BJT19BRlJIX0FGU0VMMTIgICAgICAgICAgICAgICAgICAgICAgR1BJT19BRlJIX0FGU0VMMTJfTXNrICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fQUZSSF9BRlNFTDEzX1BvcyAgICAgICAgICAgICAgICAgICgyMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19BRlJIX0FGU0VMMTNfTXNrICAgICAgICAgICAgICAgICAgKDB4RlUgPDwgR1BJT19BRlJIX0FGU0VMMTNfUG9zKSAgICAgLyohPCAweDAwRjAwMDAwICovDQojZGVmaW5lIEdQSU9fQUZSSF9BRlNFTDEzICAgICAgICAgICAgICAgICAgICAgIEdQSU9fQUZSSF9BRlNFTDEzX01zayAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX0FGUkhfQUZTRUwxNF9Qb3MgICAgICAgICAgICAgICAgICAoMjRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fQUZSSF9BRlNFTDE0X01zayAgICAgICAgICAgICAgICAgICgweEZVIDw8IEdQSU9fQUZSSF9BRlNFTDE0X1BvcykgICAgIC8qITwgMHgwRjAwMDAwMCAqLw0KI2RlZmluZSBHUElPX0FGUkhfQUZTRUwxNCAgICAgICAgICAgICAgICAgICAgICBHUElPX0FGUkhfQUZTRUwxNF9Nc2sgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19BRlJIX0FGU0VMMTVfUG9zICAgICAgICAgICAgICAgICAgKDI4VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX0FGUkhfQUZTRUwxNV9Nc2sgICAgICAgICAgICAgICAgICAoMHhGVSA8PCBHUElPX0FGUkhfQUZTRUwxNV9Qb3MpICAgICAvKiE8IDB4RjAwMDAwMDAgKi8NCiNkZWZpbmUgR1BJT19BRlJIX0FGU0VMMTUgICAgICAgICAgICAgICAgICAgICAgR1BJT19BRlJIX0FGU0VMMTVfTXNrICAgICAgICAgICAgICAgDQoNCi8qKioqKioqKioqKioqKioqKiogQml0IGRlZmluaXRpb24gZm9yIEdQSU9fQlJSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIEdQSU9fQlJSX0JSXzAgICAgICAgICAgICAgICAgICAgICAgICAoMHgwMDAwMDAwMVUpICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fQlJSX0JSXzEgICAgICAgICAgICAgICAgICAgICAgICAoMHgwMDAwMDAwMlUpICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fQlJSX0JSXzIgICAgICAgICAgICAgICAgICAgICAgICAoMHgwMDAwMDAwNFUpICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fQlJSX0JSXzMgICAgICAgICAgICAgICAgICAgICAgICAoMHgwMDAwMDAwOFUpICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fQlJSX0JSXzQgICAgICAgICAgICAgICAgICAgICAgICAoMHgwMDAwMDAxMFUpICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fQlJSX0JSXzUgICAgICAgICAgICAgICAgICAgICAgICAoMHgwMDAwMDAyMFUpICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fQlJSX0JSXzYgICAgICAgICAgICAgICAgICAgICAgICAoMHgwMDAwMDA0MFUpICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fQlJSX0JSXzcgICAgICAgICAgICAgICAgICAgICAgICAoMHgwMDAwMDA4MFUpICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fQlJSX0JSXzggICAgICAgICAgICAgICAgICAgICAgICAoMHgwMDAwMDEwMFUpICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fQlJSX0JSXzkgICAgICAgICAgICAgICAgICAgICAgICAoMHgwMDAwMDIwMFUpICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fQlJSX0JSXzEwICAgICAgICAgICAgICAgICAgICAgICAoMHgwMDAwMDQwMFUpICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fQlJSX0JSXzExICAgICAgICAgICAgICAgICAgICAgICAoMHgwMDAwMDgwMFUpICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fQlJSX0JSXzEyICAgICAgICAgICAgICAgICAgICAgICAoMHgwMDAwMTAwMFUpICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fQlJSX0JSXzEzICAgICAgICAgICAgICAgICAgICAgICAoMHgwMDAwMjAwMFUpICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fQlJSX0JSXzE0ICAgICAgICAgICAgICAgICAgICAgICAoMHgwMDAwNDAwMFUpICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fQlJSX0JSXzE1ICAgICAgICAgICAgICAgICAgICAgICAoMHgwMDAwODAwMFUpICAgICAgICAgICAgICAgICAgICAgDQoNCi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovDQovKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLw0KLyogICAgICAgICAgICAgICAgICAgSW50ZXItaW50ZWdyYXRlZCBDaXJjdWl0IEludGVyZmFjZSAoSTJDKSAgICAgICAgICAgICAgICAgKi8NCi8qICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovDQovKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLw0KDQovKioqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIEkyQ19DUjEgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBJMkNfQ1IxX1BFX1BvcyAgICAgICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBJMkNfQ1IxX1BFX01zayAgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBJMkNfQ1IxX1BFX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDAwMSAqLw0KI2RlZmluZSBJMkNfQ1IxX1BFICAgICAgICAgICAgICAgICAgICAgICAgICBJMkNfQ1IxX1BFX01zayAgICAgICAgICAgICAgICAgICAgIC8qITwgUGVyaXBoZXJhbCBFbmFibGUgKi8NCiNkZWZpbmUgSTJDX0NSMV9TTUJVU19Qb3MgICAgICAgICAgICAgICAgICAgKDFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgSTJDX0NSMV9TTUJVU19Nc2sgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgSTJDX0NSMV9TTUJVU19Qb3MpICAgICAgICAvKiE8IDB4MDAwMDAwMDIgKi8NCiNkZWZpbmUgSTJDX0NSMV9TTUJVUyAgICAgICAgICAgICAgICAgICAgICAgSTJDX0NSMV9TTUJVU19Nc2sgICAgICAgICAgICAgICAgICAvKiE8IFNNQnVzIE1vZGUgKi8NCiNkZWZpbmUgSTJDX0NSMV9TTUJUWVBFX1BvcyAgICAgICAgICAgICAgICAgKDNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgSTJDX0NSMV9TTUJUWVBFX01zayAgICAgICAgICAgICAgICAgKDB4MVUgPDwgSTJDX0NSMV9TTUJUWVBFX1BvcykgICAgICAvKiE8IDB4MDAwMDAwMDggKi8NCiNkZWZpbmUgSTJDX0NSMV9TTUJUWVBFICAgICAgICAgICAgICAgICAgICAgSTJDX0NSMV9TTUJUWVBFX01zayAgICAgICAgICAgICAgICAvKiE8IFNNQnVzIFR5cGUgKi8NCiNkZWZpbmUgSTJDX0NSMV9FTkFSUF9Qb3MgICAgICAgICAgICAgICAgICAgKDRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgSTJDX0NSMV9FTkFSUF9Nc2sgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgSTJDX0NSMV9FTkFSUF9Qb3MpICAgICAgICAvKiE8IDB4MDAwMDAwMTAgKi8NCiNkZWZpbmUgSTJDX0NSMV9FTkFSUCAgICAgICAgICAgICAgICAgICAgICAgSTJDX0NSMV9FTkFSUF9Nc2sgICAgICAgICAgICAgICAgICAvKiE8IEFSUCBFbmFibGUgKi8NCiNkZWZpbmUgSTJDX0NSMV9FTlBFQ19Qb3MgICAgICAgICAgICAgICAgICAgKDVVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgSTJDX0NSMV9FTlBFQ19Nc2sgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgSTJDX0NSMV9FTlBFQ19Qb3MpICAgICAgICAvKiE8IDB4MDAwMDAwMjAgKi8NCiNkZWZpbmUgSTJDX0NSMV9FTlBFQyAgICAgICAgICAgICAgICAgICAgICAgSTJDX0NSMV9FTlBFQ19Nc2sgICAgICAgICAgICAgICAgICAvKiE8IFBFQyBFbmFibGUgKi8NCiNkZWZpbmUgSTJDX0NSMV9FTkdDX1BvcyAgICAgICAgICAgICAgICAgICAgKDZVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgSTJDX0NSMV9FTkdDX01zayAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgSTJDX0NSMV9FTkdDX1BvcykgICAgICAgICAvKiE8IDB4MDAwMDAwNDAgKi8NCiNkZWZpbmUgSTJDX0NSMV9FTkdDICAgICAgICAgICAgICAgICAgICAgICAgSTJDX0NSMV9FTkdDX01zayAgICAgICAgICAgICAgICAgICAvKiE8IEdlbmVyYWwgQ2FsbCBFbmFibGUgKi8NCiNkZWZpbmUgSTJDX0NSMV9OT1NUUkVUQ0hfUG9zICAgICAgICAgICAgICAgKDdVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgSTJDX0NSMV9OT1NUUkVUQ0hfTXNrICAgICAgICAgICAgICAgKDB4MVUgPDwgSTJDX0NSMV9OT1NUUkVUQ0hfUG9zKSAgICAvKiE8IDB4MDAwMDAwODAgKi8NCiNkZWZpbmUgSTJDX0NSMV9OT1NUUkVUQ0ggICAgICAgICAgICAgICAgICAgSTJDX0NSMV9OT1NUUkVUQ0hfTXNrICAgICAgICAgICAgICAvKiE8IENsb2NrIFN0cmV0Y2hpbmcgRGlzYWJsZSAoU2xhdmUgbW9kZSkgKi8NCiNkZWZpbmUgSTJDX0NSMV9TVEFSVF9Qb3MgICAgICAgICAgICAgICAgICAgKDhVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgSTJDX0NSMV9TVEFSVF9Nc2sgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgSTJDX0NSMV9TVEFSVF9Qb3MpICAgICAgICAvKiE8IDB4MDAwMDAxMDAgKi8NCiNkZWZpbmUgSTJDX0NSMV9TVEFSVCAgICAgICAgICAgICAgICAgICAgICAgSTJDX0NSMV9TVEFSVF9Nc2sgICAgICAgICAgICAgICAgICAvKiE8IFN0YXJ0IEdlbmVyYXRpb24gKi8NCiNkZWZpbmUgSTJDX0NSMV9TVE9QX1BvcyAgICAgICAgICAgICAgICAgICAgKDlVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgSTJDX0NSMV9TVE9QX01zayAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgSTJDX0NSMV9TVE9QX1BvcykgICAgICAgICAvKiE8IDB4MDAwMDAyMDAgKi8NCiNkZWZpbmUgSTJDX0NSMV9TVE9QICAgICAgICAgICAgICAgICAgICAgICAgSTJDX0NSMV9TVE9QX01zayAgICAgICAgICAgICAgICAgICAvKiE8IFN0b3AgR2VuZXJhdGlvbiAqLw0KI2RlZmluZSBJMkNfQ1IxX0FDS19Qb3MgICAgICAgICAgICAgICAgICAgICAoMTBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBJMkNfQ1IxX0FDS19Nc2sgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBJMkNfQ1IxX0FDS19Qb3MpICAgICAgICAgIC8qITwgMHgwMDAwMDQwMCAqLw0KI2RlZmluZSBJMkNfQ1IxX0FDSyAgICAgICAgICAgICAgICAgICAgICAgICBJMkNfQ1IxX0FDS19Nc2sgICAgICAgICAgICAgICAgICAgIC8qITwgQWNrbm93bGVkZ2UgRW5hYmxlICovDQojZGVmaW5lIEkyQ19DUjFfUE9TX1BvcyAgICAgICAgICAgICAgICAgICAgICgxMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEkyQ19DUjFfUE9TX01zayAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IEkyQ19DUjFfUE9TX1BvcykgICAgICAgICAgLyohPCAweDAwMDAwODAwICovDQojZGVmaW5lIEkyQ19DUjFfUE9TICAgICAgICAgICAgICAgICAgICAgICAgIEkyQ19DUjFfUE9TX01zayAgICAgICAgICAgICAgICAgICAgLyohPCBBY2tub3dsZWRnZS9QRUMgUG9zaXRpb24gKGZvciBkYXRhIHJlY2VwdGlvbikgKi8NCiNkZWZpbmUgSTJDX0NSMV9QRUNfUG9zICAgICAgICAgICAgICAgICAgICAgKDEyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgSTJDX0NSMV9QRUNfTXNrICAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgSTJDX0NSMV9QRUNfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDEwMDAgKi8NCiNkZWZpbmUgSTJDX0NSMV9QRUMgICAgICAgICAgICAgICAgICAgICAgICAgSTJDX0NSMV9QRUNfTXNrICAgICAgICAgICAgICAgICAgICAvKiE8IFBhY2tldCBFcnJvciBDaGVja2luZyAqLw0KI2RlZmluZSBJMkNfQ1IxX0FMRVJUX1BvcyAgICAgICAgICAgICAgICAgICAoMTNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBJMkNfQ1IxX0FMRVJUX01zayAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBJMkNfQ1IxX0FMRVJUX1BvcykgICAgICAgIC8qITwgMHgwMDAwMjAwMCAqLw0KI2RlZmluZSBJMkNfQ1IxX0FMRVJUICAgICAgICAgICAgICAgICAgICAgICBJMkNfQ1IxX0FMRVJUX01zayAgICAgICAgICAgICAgICAgIC8qITwgU01CdXMgQWxlcnQgKi8NCiNkZWZpbmUgSTJDX0NSMV9TV1JTVF9Qb3MgICAgICAgICAgICAgICAgICAgKDE1VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgSTJDX0NSMV9TV1JTVF9Nc2sgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgSTJDX0NSMV9TV1JTVF9Qb3MpICAgICAgICAvKiE8IDB4MDAwMDgwMDAgKi8NCiNkZWZpbmUgSTJDX0NSMV9TV1JTVCAgICAgICAgICAgICAgICAgICAgICAgSTJDX0NSMV9TV1JTVF9Nc2sgICAgICAgICAgICAgICAgICAvKiE8IFNvZnR3YXJlIFJlc2V0ICovDQoNCi8qKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgSTJDX0NSMiByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIEkyQ19DUjJfRlJFUV9Qb3MgICAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEkyQ19DUjJfRlJFUV9Nc2sgICAgICAgICAgICAgICAgICAgICgweDNGVSA8PCBJMkNfQ1IyX0ZSRVFfUG9zKSAgICAgICAgLyohPCAweDAwMDAwMDNGICovDQojZGVmaW5lIEkyQ19DUjJfRlJFUSAgICAgICAgICAgICAgICAgICAgICAgIEkyQ19DUjJfRlJFUV9Nc2sgICAgICAgICAgICAgICAgICAgLyohPCBGUkVRWzU6MF0gYml0cyAoUGVyaXBoZXJhbCBDbG9jayBGcmVxdWVuY3kpICovDQojZGVmaW5lIEkyQ19DUjJfRlJFUV8wICAgICAgICAgICAgICAgICAgICAgICgweDAxVSA8PCBJMkNfQ1IyX0ZSRVFfUG9zKSAgICAgICAgLyohPCAweDAwMDAwMDAxICovDQojZGVmaW5lIEkyQ19DUjJfRlJFUV8xICAgICAgICAgICAgICAgICAgICAgICgweDAyVSA8PCBJMkNfQ1IyX0ZSRVFfUG9zKSAgICAgICAgLyohPCAweDAwMDAwMDAyICovDQojZGVmaW5lIEkyQ19DUjJfRlJFUV8yICAgICAgICAgICAgICAgICAgICAgICgweDA0VSA8PCBJMkNfQ1IyX0ZSRVFfUG9zKSAgICAgICAgLyohPCAweDAwMDAwMDA0ICovDQojZGVmaW5lIEkyQ19DUjJfRlJFUV8zICAgICAgICAgICAgICAgICAgICAgICgweDA4VSA8PCBJMkNfQ1IyX0ZSRVFfUG9zKSAgICAgICAgLyohPCAweDAwMDAwMDA4ICovDQojZGVmaW5lIEkyQ19DUjJfRlJFUV80ICAgICAgICAgICAgICAgICAgICAgICgweDEwVSA8PCBJMkNfQ1IyX0ZSRVFfUG9zKSAgICAgICAgLyohPCAweDAwMDAwMDEwICovDQojZGVmaW5lIEkyQ19DUjJfRlJFUV81ICAgICAgICAgICAgICAgICAgICAgICgweDIwVSA8PCBJMkNfQ1IyX0ZSRVFfUG9zKSAgICAgICAgLyohPCAweDAwMDAwMDIwICovDQoNCiNkZWZpbmUgSTJDX0NSMl9JVEVSUkVOX1BvcyAgICAgICAgICAgICAgICAgKDhVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgSTJDX0NSMl9JVEVSUkVOX01zayAgICAgICAgICAgICAgICAgKDB4MVUgPDwgSTJDX0NSMl9JVEVSUkVOX1BvcykgICAgICAvKiE8IDB4MDAwMDAxMDAgKi8NCiNkZWZpbmUgSTJDX0NSMl9JVEVSUkVOICAgICAgICAgICAgICAgICAgICAgSTJDX0NSMl9JVEVSUkVOX01zayAgICAgICAgICAgICAgICAvKiE8IEVycm9yIEludGVycnVwdCBFbmFibGUgKi8NCiNkZWZpbmUgSTJDX0NSMl9JVEVWVEVOX1BvcyAgICAgICAgICAgICAgICAgKDlVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgSTJDX0NSMl9JVEVWVEVOX01zayAgICAgICAgICAgICAgICAgKDB4MVUgPDwgSTJDX0NSMl9JVEVWVEVOX1BvcykgICAgICAvKiE8IDB4MDAwMDAyMDAgKi8NCiNkZWZpbmUgSTJDX0NSMl9JVEVWVEVOICAgICAgICAgICAgICAgICAgICAgSTJDX0NSMl9JVEVWVEVOX01zayAgICAgICAgICAgICAgICAvKiE8IEV2ZW50IEludGVycnVwdCBFbmFibGUgKi8NCiNkZWZpbmUgSTJDX0NSMl9JVEJVRkVOX1BvcyAgICAgICAgICAgICAgICAgKDEwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgSTJDX0NSMl9JVEJVRkVOX01zayAgICAgICAgICAgICAgICAgKDB4MVUgPDwgSTJDX0NSMl9JVEJVRkVOX1BvcykgICAgICAvKiE8IDB4MDAwMDA0MDAgKi8NCiNkZWZpbmUgSTJDX0NSMl9JVEJVRkVOICAgICAgICAgICAgICAgICAgICAgSTJDX0NSMl9JVEJVRkVOX01zayAgICAgICAgICAgICAgICAvKiE8IEJ1ZmZlciBJbnRlcnJ1cHQgRW5hYmxlICovDQojZGVmaW5lIEkyQ19DUjJfRE1BRU5fUG9zICAgICAgICAgICAgICAgICAgICgxMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEkyQ19DUjJfRE1BRU5fTXNrICAgICAgICAgICAgICAgICAgICgweDFVIDw8IEkyQ19DUjJfRE1BRU5fUG9zKSAgICAgICAgLyohPCAweDAwMDAwODAwICovDQojZGVmaW5lIEkyQ19DUjJfRE1BRU4gICAgICAgICAgICAgICAgICAgICAgIEkyQ19DUjJfRE1BRU5fTXNrICAgICAgICAgICAgICAgICAgLyohPCBETUEgUmVxdWVzdHMgRW5hYmxlICovDQojZGVmaW5lIEkyQ19DUjJfTEFTVF9Qb3MgICAgICAgICAgICAgICAgICAgICgxMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEkyQ19DUjJfTEFTVF9Nc2sgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IEkyQ19DUjJfTEFTVF9Qb3MpICAgICAgICAgLyohPCAweDAwMDAxMDAwICovDQojZGVmaW5lIEkyQ19DUjJfTEFTVCAgICAgICAgICAgICAgICAgICAgICAgIEkyQ19DUjJfTEFTVF9Nc2sgICAgICAgICAgICAgICAgICAgLyohPCBETUEgTGFzdCBUcmFuc2ZlciAqLw0KDQovKioqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIEkyQ19PQVIxIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBJMkNfT0FSMV9BREQxXzcgICAgICAgICAgICAgICAgICAgICAoMHgwMDAwMDBGRVUpICAgICAgICAgICAgICAgICAgICAgIC8qITwgSW50ZXJmYWNlIEFkZHJlc3MgKi8NCiNkZWZpbmUgSTJDX09BUjFfQUREOF85ICAgICAgICAgICAgICAgICAgICAgKDB4MDAwMDAzMDBVKSAgICAgICAgICAgICAgICAgICAgICAvKiE8IEludGVyZmFjZSBBZGRyZXNzICovDQoNCiNkZWZpbmUgSTJDX09BUjFfQUREMF9Qb3MgICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgSTJDX09BUjFfQUREMF9Nc2sgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgSTJDX09BUjFfQUREMF9Qb3MpICAgICAgICAvKiE8IDB4MDAwMDAwMDEgKi8NCiNkZWZpbmUgSTJDX09BUjFfQUREMCAgICAgICAgICAgICAgICAgICAgICAgSTJDX09BUjFfQUREMF9Nc2sgICAgICAgICAgICAgICAgICAvKiE8IEJpdCAwICovDQojZGVmaW5lIEkyQ19PQVIxX0FERDFfUG9zICAgICAgICAgICAgICAgICAgICgxVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEkyQ19PQVIxX0FERDFfTXNrICAgICAgICAgICAgICAgICAgICgweDFVIDw8IEkyQ19PQVIxX0FERDFfUG9zKSAgICAgICAgLyohPCAweDAwMDAwMDAyICovDQojZGVmaW5lIEkyQ19PQVIxX0FERDEgICAgICAgICAgICAgICAgICAgICAgIEkyQ19PQVIxX0FERDFfTXNrICAgICAgICAgICAgICAgICAgLyohPCBCaXQgMSAqLw0KI2RlZmluZSBJMkNfT0FSMV9BREQyX1BvcyAgICAgICAgICAgICAgICAgICAoMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBJMkNfT0FSMV9BREQyX01zayAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBJMkNfT0FSMV9BREQyX1BvcykgICAgICAgIC8qITwgMHgwMDAwMDAwNCAqLw0KI2RlZmluZSBJMkNfT0FSMV9BREQyICAgICAgICAgICAgICAgICAgICAgICBJMkNfT0FSMV9BREQyX01zayAgICAgICAgICAgICAgICAgIC8qITwgQml0IDIgKi8NCiNkZWZpbmUgSTJDX09BUjFfQUREM19Qb3MgICAgICAgICAgICAgICAgICAgKDNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgSTJDX09BUjFfQUREM19Nc2sgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgSTJDX09BUjFfQUREM19Qb3MpICAgICAgICAvKiE8IDB4MDAwMDAwMDggKi8NCiNkZWZpbmUgSTJDX09BUjFfQUREMyAgICAgICAgICAgICAgICAgICAgICAgSTJDX09BUjFfQUREM19Nc2sgICAgICAgICAgICAgICAgICAvKiE8IEJpdCAzICovDQojZGVmaW5lIEkyQ19PQVIxX0FERDRfUG9zICAgICAgICAgICAgICAgICAgICg0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEkyQ19PQVIxX0FERDRfTXNrICAgICAgICAgICAgICAgICAgICgweDFVIDw8IEkyQ19PQVIxX0FERDRfUG9zKSAgICAgICAgLyohPCAweDAwMDAwMDEwICovDQojZGVmaW5lIEkyQ19PQVIxX0FERDQgICAgICAgICAgICAgICAgICAgICAgIEkyQ19PQVIxX0FERDRfTXNrICAgICAgICAgICAgICAgICAgLyohPCBCaXQgNCAqLw0KI2RlZmluZSBJMkNfT0FSMV9BREQ1X1BvcyAgICAgICAgICAgICAgICAgICAoNVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBJMkNfT0FSMV9BREQ1X01zayAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBJMkNfT0FSMV9BREQ1X1BvcykgICAgICAgIC8qITwgMHgwMDAwMDAyMCAqLw0KI2RlZmluZSBJMkNfT0FSMV9BREQ1ICAgICAgICAgICAgICAgICAgICAgICBJMkNfT0FSMV9BREQ1X01zayAgICAgICAgICAgICAgICAgIC8qITwgQml0IDUgKi8NCiNkZWZpbmUgSTJDX09BUjFfQURENl9Qb3MgICAgICAgICAgICAgICAgICAgKDZVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgSTJDX09BUjFfQURENl9Nc2sgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgSTJDX09BUjFfQURENl9Qb3MpICAgICAgICAvKiE8IDB4MDAwMDAwNDAgKi8NCiNkZWZpbmUgSTJDX09BUjFfQURENiAgICAgICAgICAgICAgICAgICAgICAgSTJDX09BUjFfQURENl9Nc2sgICAgICAgICAgICAgICAgICAvKiE8IEJpdCA2ICovDQojZGVmaW5lIEkyQ19PQVIxX0FERDdfUG9zICAgICAgICAgICAgICAgICAgICg3VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEkyQ19PQVIxX0FERDdfTXNrICAgICAgICAgICAgICAgICAgICgweDFVIDw8IEkyQ19PQVIxX0FERDdfUG9zKSAgICAgICAgLyohPCAweDAwMDAwMDgwICovDQojZGVmaW5lIEkyQ19PQVIxX0FERDcgICAgICAgICAgICAgICAgICAgICAgIEkyQ19PQVIxX0FERDdfTXNrICAgICAgICAgICAgICAgICAgLyohPCBCaXQgNyAqLw0KI2RlZmluZSBJMkNfT0FSMV9BREQ4X1BvcyAgICAgICAgICAgICAgICAgICAoOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBJMkNfT0FSMV9BREQ4X01zayAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBJMkNfT0FSMV9BREQ4X1BvcykgICAgICAgIC8qITwgMHgwMDAwMDEwMCAqLw0KI2RlZmluZSBJMkNfT0FSMV9BREQ4ICAgICAgICAgICAgICAgICAgICAgICBJMkNfT0FSMV9BREQ4X01zayAgICAgICAgICAgICAgICAgIC8qITwgQml0IDggKi8NCiNkZWZpbmUgSTJDX09BUjFfQUREOV9Qb3MgICAgICAgICAgICAgICAgICAgKDlVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgSTJDX09BUjFfQUREOV9Nc2sgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgSTJDX09BUjFfQUREOV9Qb3MpICAgICAgICAvKiE8IDB4MDAwMDAyMDAgKi8NCiNkZWZpbmUgSTJDX09BUjFfQUREOSAgICAgICAgICAgICAgICAgICAgICAgSTJDX09BUjFfQUREOV9Nc2sgICAgICAgICAgICAgICAgICAvKiE8IEJpdCA5ICovDQoNCiNkZWZpbmUgSTJDX09BUjFfQURETU9ERV9Qb3MgICAgICAgICAgICAgICAgKDE1VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgSTJDX09BUjFfQURETU9ERV9Nc2sgICAgICAgICAgICAgICAgKDB4MVUgPDwgSTJDX09BUjFfQURETU9ERV9Qb3MpICAgICAvKiE8IDB4MDAwMDgwMDAgKi8NCiNkZWZpbmUgSTJDX09BUjFfQURETU9ERSAgICAgICAgICAgICAgICAgICAgSTJDX09BUjFfQURETU9ERV9Nc2sgICAgICAgICAgICAgICAvKiE8IEFkZHJlc3NpbmcgTW9kZSAoU2xhdmUgbW9kZSkgKi8NCg0KLyoqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBJMkNfT0FSMiByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgSTJDX09BUjJfRU5EVUFMX1BvcyAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgSTJDX09BUjJfRU5EVUFMX01zayAgICAgICAgICAgICAgICAgKDB4MVUgPDwgSTJDX09BUjJfRU5EVUFMX1BvcykgICAgICAvKiE8IDB4MDAwMDAwMDEgKi8NCiNkZWZpbmUgSTJDX09BUjJfRU5EVUFMICAgICAgICAgICAgICAgICAgICAgSTJDX09BUjJfRU5EVUFMX01zayAgICAgICAgICAgICAgICAvKiE8IER1YWwgYWRkcmVzc2luZyBtb2RlIGVuYWJsZSAqLw0KI2RlZmluZSBJMkNfT0FSMl9BREQyX1BvcyAgICAgICAgICAgICAgICAgICAoMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBJMkNfT0FSMl9BREQyX01zayAgICAgICAgICAgICAgICAgICAoMHg3RlUgPDwgSTJDX09BUjJfQUREMl9Qb3MpICAgICAgIC8qITwgMHgwMDAwMDBGRSAqLw0KI2RlZmluZSBJMkNfT0FSMl9BREQyICAgICAgICAgICAgICAgICAgICAgICBJMkNfT0FSMl9BREQyX01zayAgICAgICAgICAgICAgICAgIC8qITwgSW50ZXJmYWNlIGFkZHJlc3MgKi8NCg0KLyoqKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgSTJDX0RSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgSTJDX0RSX0RSX1BvcyAgICAgICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgSTJDX0RSX0RSX01zayAgICAgICAgICAgICAgICAgICAgICAgKDB4RkZVIDw8IEkyQ19EUl9EUl9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDAwRkYgKi8NCiNkZWZpbmUgSTJDX0RSX0RSICAgICAgICAgICAgICAgICAgICAgICAgICAgSTJDX0RSX0RSX01zayAgICAgICAgICAgICAgICAgICAgICAvKiE8IDgtYml0IERhdGEgUmVnaXN0ZXIgKi8NCg0KLyoqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBJMkNfU1IxIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgSTJDX1NSMV9TQl9Qb3MgICAgICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgSTJDX1NSMV9TQl9Nc2sgICAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgSTJDX1NSMV9TQl9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDEgKi8NCiNkZWZpbmUgSTJDX1NSMV9TQiAgICAgICAgICAgICAgICAgICAgICAgICAgSTJDX1NSMV9TQl9Nc2sgICAgICAgICAgICAgICAgICAgICAvKiE8IFN0YXJ0IEJpdCAoTWFzdGVyIG1vZGUpICovDQojZGVmaW5lIEkyQ19TUjFfQUREUl9Qb3MgICAgICAgICAgICAgICAgICAgICgxVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEkyQ19TUjFfQUREUl9Nc2sgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IEkyQ19TUjFfQUREUl9Qb3MpICAgICAgICAgLyohPCAweDAwMDAwMDAyICovDQojZGVmaW5lIEkyQ19TUjFfQUREUiAgICAgICAgICAgICAgICAgICAgICAgIEkyQ19TUjFfQUREUl9Nc2sgICAgICAgICAgICAgICAgICAgLyohPCBBZGRyZXNzIHNlbnQgKG1hc3RlciBtb2RlKS9tYXRjaGVkIChzbGF2ZSBtb2RlKSAqLw0KI2RlZmluZSBJMkNfU1IxX0JURl9Qb3MgICAgICAgICAgICAgICAgICAgICAoMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBJMkNfU1IxX0JURl9Nc2sgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBJMkNfU1IxX0JURl9Qb3MpICAgICAgICAgIC8qITwgMHgwMDAwMDAwNCAqLw0KI2RlZmluZSBJMkNfU1IxX0JURiAgICAgICAgICAgICAgICAgICAgICAgICBJMkNfU1IxX0JURl9Nc2sgICAgICAgICAgICAgICAgICAgIC8qITwgQnl0ZSBUcmFuc2ZlciBGaW5pc2hlZCAqLw0KI2RlZmluZSBJMkNfU1IxX0FERDEwX1BvcyAgICAgICAgICAgICAgICAgICAoM1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBJMkNfU1IxX0FERDEwX01zayAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBJMkNfU1IxX0FERDEwX1BvcykgICAgICAgIC8qITwgMHgwMDAwMDAwOCAqLw0KI2RlZmluZSBJMkNfU1IxX0FERDEwICAgICAgICAgICAgICAgICAgICAgICBJMkNfU1IxX0FERDEwX01zayAgICAgICAgICAgICAgICAgIC8qITwgMTAtYml0IGhlYWRlciBzZW50IChNYXN0ZXIgbW9kZSkgKi8NCiNkZWZpbmUgSTJDX1NSMV9TVE9QRl9Qb3MgICAgICAgICAgICAgICAgICAgKDRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgSTJDX1NSMV9TVE9QRl9Nc2sgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgSTJDX1NSMV9TVE9QRl9Qb3MpICAgICAgICAvKiE8IDB4MDAwMDAwMTAgKi8NCiNkZWZpbmUgSTJDX1NSMV9TVE9QRiAgICAgICAgICAgICAgICAgICAgICAgSTJDX1NSMV9TVE9QRl9Nc2sgICAgICAgICAgICAgICAgICAvKiE8IFN0b3AgZGV0ZWN0aW9uIChTbGF2ZSBtb2RlKSAqLw0KI2RlZmluZSBJMkNfU1IxX1JYTkVfUG9zICAgICAgICAgICAgICAgICAgICAoNlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBJMkNfU1IxX1JYTkVfTXNrICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBJMkNfU1IxX1JYTkVfUG9zKSAgICAgICAgIC8qITwgMHgwMDAwMDA0MCAqLw0KI2RlZmluZSBJMkNfU1IxX1JYTkUgICAgICAgICAgICAgICAgICAgICAgICBJMkNfU1IxX1JYTkVfTXNrICAgICAgICAgICAgICAgICAgIC8qITwgRGF0YSBSZWdpc3RlciBub3QgRW1wdHkgKHJlY2VpdmVycykgKi8NCiNkZWZpbmUgSTJDX1NSMV9UWEVfUG9zICAgICAgICAgICAgICAgICAgICAgKDdVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgSTJDX1NSMV9UWEVfTXNrICAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgSTJDX1NSMV9UWEVfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDAwODAgKi8NCiNkZWZpbmUgSTJDX1NSMV9UWEUgICAgICAgICAgICAgICAgICAgICAgICAgSTJDX1NSMV9UWEVfTXNrICAgICAgICAgICAgICAgICAgICAvKiE8IERhdGEgUmVnaXN0ZXIgRW1wdHkgKHRyYW5zbWl0dGVycykgKi8NCiNkZWZpbmUgSTJDX1NSMV9CRVJSX1BvcyAgICAgICAgICAgICAgICAgICAgKDhVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgSTJDX1NSMV9CRVJSX01zayAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgSTJDX1NSMV9CRVJSX1BvcykgICAgICAgICAvKiE8IDB4MDAwMDAxMDAgKi8NCiNkZWZpbmUgSTJDX1NSMV9CRVJSICAgICAgICAgICAgICAgICAgICAgICAgSTJDX1NSMV9CRVJSX01zayAgICAgICAgICAgICAgICAgICAvKiE8IEJ1cyBFcnJvciAqLw0KI2RlZmluZSBJMkNfU1IxX0FSTE9fUG9zICAgICAgICAgICAgICAgICAgICAoOVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBJMkNfU1IxX0FSTE9fTXNrICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBJMkNfU1IxX0FSTE9fUG9zKSAgICAgICAgIC8qITwgMHgwMDAwMDIwMCAqLw0KI2RlZmluZSBJMkNfU1IxX0FSTE8gICAgICAgICAgICAgICAgICAgICAgICBJMkNfU1IxX0FSTE9fTXNrICAgICAgICAgICAgICAgICAgIC8qITwgQXJiaXRyYXRpb24gTG9zdCAobWFzdGVyIG1vZGUpICovDQojZGVmaW5lIEkyQ19TUjFfQUZfUG9zICAgICAgICAgICAgICAgICAgICAgICgxMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEkyQ19TUjFfQUZfTXNrICAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IEkyQ19TUjFfQUZfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwNDAwICovDQojZGVmaW5lIEkyQ19TUjFfQUYgICAgICAgICAgICAgICAgICAgICAgICAgIEkyQ19TUjFfQUZfTXNrICAgICAgICAgICAgICAgICAgICAgLyohPCBBY2tub3dsZWRnZSBGYWlsdXJlICovDQojZGVmaW5lIEkyQ19TUjFfT1ZSX1BvcyAgICAgICAgICAgICAgICAgICAgICgxMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEkyQ19TUjFfT1ZSX01zayAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IEkyQ19TUjFfT1ZSX1BvcykgICAgICAgICAgLyohPCAweDAwMDAwODAwICovDQojZGVmaW5lIEkyQ19TUjFfT1ZSICAgICAgICAgICAgICAgICAgICAgICAgIEkyQ19TUjFfT1ZSX01zayAgICAgICAgICAgICAgICAgICAgLyohPCBPdmVycnVuL1VuZGVycnVuICovDQojZGVmaW5lIEkyQ19TUjFfUEVDRVJSX1BvcyAgICAgICAgICAgICAgICAgICgxMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEkyQ19TUjFfUEVDRVJSX01zayAgICAgICAgICAgICAgICAgICgweDFVIDw8IEkyQ19TUjFfUEVDRVJSX1BvcykgICAgICAgLyohPCAweDAwMDAxMDAwICovDQojZGVmaW5lIEkyQ19TUjFfUEVDRVJSICAgICAgICAgICAgICAgICAgICAgIEkyQ19TUjFfUEVDRVJSX01zayAgICAgICAgICAgICAgICAgLyohPCBQRUMgRXJyb3IgaW4gcmVjZXB0aW9uICovDQojZGVmaW5lIEkyQ19TUjFfVElNRU9VVF9Qb3MgICAgICAgICAgICAgICAgICgxNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEkyQ19TUjFfVElNRU9VVF9Nc2sgICAgICAgICAgICAgICAgICgweDFVIDw8IEkyQ19TUjFfVElNRU9VVF9Qb3MpICAgICAgLyohPCAweDAwMDA0MDAwICovDQojZGVmaW5lIEkyQ19TUjFfVElNRU9VVCAgICAgICAgICAgICAgICAgICAgIEkyQ19TUjFfVElNRU9VVF9Nc2sgICAgICAgICAgICAgICAgLyohPCBUaW1lb3V0IG9yIFRsb3cgRXJyb3IgKi8NCiNkZWZpbmUgSTJDX1NSMV9TTUJBTEVSVF9Qb3MgICAgICAgICAgICAgICAgKDE1VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgSTJDX1NSMV9TTUJBTEVSVF9Nc2sgICAgICAgICAgICAgICAgKDB4MVUgPDwgSTJDX1NSMV9TTUJBTEVSVF9Qb3MpICAgICAvKiE8IDB4MDAwMDgwMDAgKi8NCiNkZWZpbmUgSTJDX1NSMV9TTUJBTEVSVCAgICAgICAgICAgICAgICAgICAgSTJDX1NSMV9TTUJBTEVSVF9Nc2sgICAgICAgICAgICAgICAvKiE8IFNNQnVzIEFsZXJ0ICovDQoNCi8qKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgSTJDX1NSMiByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIEkyQ19TUjJfTVNMX1BvcyAgICAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEkyQ19TUjJfTVNMX01zayAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IEkyQ19TUjJfTVNMX1BvcykgICAgICAgICAgLyohPCAweDAwMDAwMDAxICovDQojZGVmaW5lIEkyQ19TUjJfTVNMICAgICAgICAgICAgICAgICAgICAgICAgIEkyQ19TUjJfTVNMX01zayAgICAgICAgICAgICAgICAgICAgLyohPCBNYXN0ZXIvU2xhdmUgKi8NCiNkZWZpbmUgSTJDX1NSMl9CVVNZX1BvcyAgICAgICAgICAgICAgICAgICAgKDFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgSTJDX1NSMl9CVVNZX01zayAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgSTJDX1NSMl9CVVNZX1BvcykgICAgICAgICAvKiE8IDB4MDAwMDAwMDIgKi8NCiNkZWZpbmUgSTJDX1NSMl9CVVNZICAgICAgICAgICAgICAgICAgICAgICAgSTJDX1NSMl9CVVNZX01zayAgICAgICAgICAgICAgICAgICAvKiE8IEJ1cyBCdXN5ICovDQojZGVmaW5lIEkyQ19TUjJfVFJBX1BvcyAgICAgICAgICAgICAgICAgICAgICgyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEkyQ19TUjJfVFJBX01zayAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IEkyQ19TUjJfVFJBX1BvcykgICAgICAgICAgLyohPCAweDAwMDAwMDA0ICovDQojZGVmaW5lIEkyQ19TUjJfVFJBICAgICAgICAgICAgICAgICAgICAgICAgIEkyQ19TUjJfVFJBX01zayAgICAgICAgICAgICAgICAgICAgLyohPCBUcmFuc21pdHRlci9SZWNlaXZlciAqLw0KI2RlZmluZSBJMkNfU1IyX0dFTkNBTExfUG9zICAgICAgICAgICAgICAgICAoNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBJMkNfU1IyX0dFTkNBTExfTXNrICAgICAgICAgICAgICAgICAoMHgxVSA8PCBJMkNfU1IyX0dFTkNBTExfUG9zKSAgICAgIC8qITwgMHgwMDAwMDAxMCAqLw0KI2RlZmluZSBJMkNfU1IyX0dFTkNBTEwgICAgICAgICAgICAgICAgICAgICBJMkNfU1IyX0dFTkNBTExfTXNrICAgICAgICAgICAgICAgIC8qITwgR2VuZXJhbCBDYWxsIEFkZHJlc3MgKFNsYXZlIG1vZGUpICovDQojZGVmaW5lIEkyQ19TUjJfU01CREVGQVVMVF9Qb3MgICAgICAgICAgICAgICg1VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEkyQ19TUjJfU01CREVGQVVMVF9Nc2sgICAgICAgICAgICAgICgweDFVIDw8IEkyQ19TUjJfU01CREVGQVVMVF9Qb3MpICAgLyohPCAweDAwMDAwMDIwICovDQojZGVmaW5lIEkyQ19TUjJfU01CREVGQVVMVCAgICAgICAgICAgICAgICAgIEkyQ19TUjJfU01CREVGQVVMVF9Nc2sgICAgICAgICAgICAgLyohPCBTTUJ1cyBEZXZpY2UgRGVmYXVsdCBBZGRyZXNzIChTbGF2ZSBtb2RlKSAqLw0KI2RlZmluZSBJMkNfU1IyX1NNQkhPU1RfUG9zICAgICAgICAgICAgICAgICAoNlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBJMkNfU1IyX1NNQkhPU1RfTXNrICAgICAgICAgICAgICAgICAoMHgxVSA8PCBJMkNfU1IyX1NNQkhPU1RfUG9zKSAgICAgIC8qITwgMHgwMDAwMDA0MCAqLw0KI2RlZmluZSBJMkNfU1IyX1NNQkhPU1QgICAgICAgICAgICAgICAgICAgICBJMkNfU1IyX1NNQkhPU1RfTXNrICAgICAgICAgICAgICAgIC8qITwgU01CdXMgSG9zdCBIZWFkZXIgKFNsYXZlIG1vZGUpICovDQojZGVmaW5lIEkyQ19TUjJfRFVBTEZfUG9zICAgICAgICAgICAgICAgICAgICg3VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEkyQ19TUjJfRFVBTEZfTXNrICAgICAgICAgICAgICAgICAgICgweDFVIDw8IEkyQ19TUjJfRFVBTEZfUG9zKSAgICAgICAgLyohPCAweDAwMDAwMDgwICovDQojZGVmaW5lIEkyQ19TUjJfRFVBTEYgICAgICAgICAgICAgICAgICAgICAgIEkyQ19TUjJfRFVBTEZfTXNrICAgICAgICAgICAgICAgICAgLyohPCBEdWFsIEZsYWcgKFNsYXZlIG1vZGUpICovDQojZGVmaW5lIEkyQ19TUjJfUEVDX1BvcyAgICAgICAgICAgICAgICAgICAgICg4VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEkyQ19TUjJfUEVDX01zayAgICAgICAgICAgICAgICAgICAgICgweEZGVSA8PCBJMkNfU1IyX1BFQ19Qb3MpICAgICAgICAgLyohPCAweDAwMDBGRjAwICovDQojZGVmaW5lIEkyQ19TUjJfUEVDICAgICAgICAgICAgICAgICAgICAgICAgIEkyQ19TUjJfUEVDX01zayAgICAgICAgICAgICAgICAgICAgLyohPCBQYWNrZXQgRXJyb3IgQ2hlY2tpbmcgUmVnaXN0ZXIgKi8NCg0KLyoqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBJMkNfQ0NSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgSTJDX0NDUl9DQ1JfUG9zICAgICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgSTJDX0NDUl9DQ1JfTXNrICAgICAgICAgICAgICAgICAgICAgKDB4RkZGVSA8PCBJMkNfQ0NSX0NDUl9Qb3MpICAgICAgICAvKiE8IDB4MDAwMDBGRkYgKi8NCiNkZWZpbmUgSTJDX0NDUl9DQ1IgICAgICAgICAgICAgICAgICAgICAgICAgSTJDX0NDUl9DQ1JfTXNrICAgICAgICAgICAgICAgICAgICAvKiE8IENsb2NrIENvbnRyb2wgUmVnaXN0ZXIgaW4gRmFzdC9TdGFuZGFyZCBtb2RlIChNYXN0ZXIgbW9kZSkgKi8NCiNkZWZpbmUgSTJDX0NDUl9EVVRZX1BvcyAgICAgICAgICAgICAgICAgICAgKDE0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgSTJDX0NDUl9EVVRZX01zayAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgSTJDX0NDUl9EVVRZX1BvcykgICAgICAgICAvKiE8IDB4MDAwMDQwMDAgKi8NCiNkZWZpbmUgSTJDX0NDUl9EVVRZICAgICAgICAgICAgICAgICAgICAgICAgSTJDX0NDUl9EVVRZX01zayAgICAgICAgICAgICAgICAgICAvKiE8IEZhc3QgTW9kZSBEdXR5IEN5Y2xlICovDQojZGVmaW5lIEkyQ19DQ1JfRlNfUG9zICAgICAgICAgICAgICAgICAgICAgICgxNVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEkyQ19DQ1JfRlNfTXNrICAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IEkyQ19DQ1JfRlNfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDA4MDAwICovDQojZGVmaW5lIEkyQ19DQ1JfRlMgICAgICAgICAgICAgICAgICAgICAgICAgIEkyQ19DQ1JfRlNfTXNrICAgICAgICAgICAgICAgICAgICAgLyohPCBJMkMgTWFzdGVyIE1vZGUgU2VsZWN0aW9uICovDQoNCi8qKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBJMkNfVFJJU0UgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIEkyQ19UUklTRV9UUklTRV9Qb3MgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEkyQ19UUklTRV9UUklTRV9Nc2sgICAgICAgICAgICAgICAgICgweDNGVSA8PCBJMkNfVFJJU0VfVFJJU0VfUG9zKSAgICAgLyohPCAweDAwMDAwMDNGICovDQojZGVmaW5lIEkyQ19UUklTRV9UUklTRSAgICAgICAgICAgICAgICAgICAgIEkyQ19UUklTRV9UUklTRV9Nc2sgICAgICAgICAgICAgICAgLyohPCBNYXhpbXVtIFJpc2UgVGltZSBpbiBGYXN0L1N0YW5kYXJkIG1vZGUgKE1hc3RlciBtb2RlKSAqLw0KDQovKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLw0KLyogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8NCi8qICAgICAgICAgICAgICAgICAgICAgICAgSW5kZXBlbmRlbnQgV0FUQ0hET0cgKElXREcpICAgICAgICAgICAgICAgICAgICAgICAgICovDQovKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLw0KLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8NCg0KLyoqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBJV0RHX0tSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgSVdER19LUl9LRVlfUG9zICAgICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgSVdER19LUl9LRVlfTXNrICAgICAgICAgICAgICAgICAgICAgKDB4RkZGRlUgPDwgSVdER19LUl9LRVlfUG9zKSAgICAgICAvKiE8IDB4MDAwMEZGRkYgKi8NCiNkZWZpbmUgSVdER19LUl9LRVkgICAgICAgICAgICAgICAgICAgICAgICAgSVdER19LUl9LRVlfTXNrICAgICAgICAgICAgICAgICAgICAvKiE8IEtleSB2YWx1ZSAod3JpdGUgb25seSwgcmVhZCAwMDAwaCkgKi8NCg0KLyoqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBJV0RHX1BSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgSVdER19QUl9QUl9Qb3MgICAgICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgSVdER19QUl9QUl9Nc2sgICAgICAgICAgICAgICAgICAgICAgKDB4N1UgPDwgSVdER19QUl9QUl9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDcgKi8NCiNkZWZpbmUgSVdER19QUl9QUiAgICAgICAgICAgICAgICAgICAgICAgICAgSVdER19QUl9QUl9Nc2sgICAgICAgICAgICAgICAgICAgICAvKiE8IFBSWzI6MF0gKFByZXNjYWxlciBkaXZpZGVyKSAqLw0KI2RlZmluZSBJV0RHX1BSX1BSXzAgICAgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBJV0RHX1BSX1BSX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDAwMSAqLw0KI2RlZmluZSBJV0RHX1BSX1BSXzEgICAgICAgICAgICAgICAgICAgICAgICAoMHgyVSA8PCBJV0RHX1BSX1BSX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDAwMiAqLw0KI2RlZmluZSBJV0RHX1BSX1BSXzIgICAgICAgICAgICAgICAgICAgICAgICAoMHg0VSA8PCBJV0RHX1BSX1BSX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDAwNCAqLw0KDQovKioqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIElXREdfUkxSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBJV0RHX1JMUl9STF9Qb3MgICAgICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBJV0RHX1JMUl9STF9Nc2sgICAgICAgICAgICAgICAgICAgICAoMHhGRkZVIDw8IElXREdfUkxSX1JMX1BvcykgICAgICAgIC8qITwgMHgwMDAwMEZGRiAqLw0KI2RlZmluZSBJV0RHX1JMUl9STCAgICAgICAgICAgICAgICAgICAgICAgICBJV0RHX1JMUl9STF9Nc2sgICAgICAgICAgICAgICAgICAgIC8qITwgV2F0Y2hkb2cgY291bnRlciByZWxvYWQgdmFsdWUgKi8NCg0KLyoqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBJV0RHX1NSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgSVdER19TUl9QVlVfUG9zICAgICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgSVdER19TUl9QVlVfTXNrICAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgSVdER19TUl9QVlVfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDAwMDEgKi8NCiNkZWZpbmUgSVdER19TUl9QVlUgICAgICAgICAgICAgICAgICAgICAgICAgSVdER19TUl9QVlVfTXNrICAgICAgICAgICAgICAgICAgICAvKiE8IFdhdGNoZG9nIHByZXNjYWxlciB2YWx1ZSB1cGRhdGUgKi8NCiNkZWZpbmUgSVdER19TUl9SVlVfUG9zICAgICAgICAgICAgICAgICAgICAgKDFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgSVdER19TUl9SVlVfTXNrICAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgSVdER19TUl9SVlVfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDAwMDIgKi8NCiNkZWZpbmUgSVdER19TUl9SVlUgICAgICAgICAgICAgICAgICAgICAgICAgSVdER19TUl9SVlVfTXNrICAgICAgICAgICAgICAgICAgICAvKiE8IFdhdGNoZG9nIGNvdW50ZXIgcmVsb2FkIHZhbHVlIHVwZGF0ZSAqLw0KDQovKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLw0KLyogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8NCi8qICAgICAgICAgICAgICAgICAgICAgICAgICBMQ0QgQ29udHJvbGxlciAoTENEKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovDQovKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLw0KLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8NCg0KLyoqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBMQ0RfQ1IgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgTENEX0NSX0xDREVOX1BvcyAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgTENEX0NSX0xDREVOX01zayAgICAgICAgICAgKDB4MVUgPDwgTENEX0NSX0xDREVOX1BvcykgICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDEgKi8NCiNkZWZpbmUgTENEX0NSX0xDREVOICAgICAgICAgICAgICAgTENEX0NSX0xDREVOX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IExDRCBFbmFibGUgQml0ICovDQojZGVmaW5lIExDRF9DUl9WU0VMX1BvcyAgICAgICAgICAgICgxVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIExDRF9DUl9WU0VMX01zayAgICAgICAgICAgICgweDFVIDw8IExDRF9DUl9WU0VMX1BvcykgICAgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDAyICovDQojZGVmaW5lIExDRF9DUl9WU0VMICAgICAgICAgICAgICAgIExDRF9DUl9WU0VMX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBWb2x0YWdlIHNvdXJjZSBzZWxlY3RvciBCaXQgKi8NCg0KI2RlZmluZSBMQ0RfQ1JfRFVUWV9Qb3MgICAgICAgICAgICAoMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBMQ0RfQ1JfRFVUWV9Nc2sgICAgICAgICAgICAoMHg3VSA8PCBMQ0RfQ1JfRFVUWV9Qb3MpICAgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDAxQyAqLw0KI2RlZmluZSBMQ0RfQ1JfRFVUWSAgICAgICAgICAgICAgICBMQ0RfQ1JfRFVUWV9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgRFVUWVsyOjBdIGJpdHMgKER1dHkgc2VsZWN0b3IpICovDQojZGVmaW5lIExDRF9DUl9EVVRZXzAgICAgICAgICAgICAgICgweDFVIDw8IExDRF9DUl9EVVRZX1BvcykgICAgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDA0ICovDQojZGVmaW5lIExDRF9DUl9EVVRZXzEgICAgICAgICAgICAgICgweDJVIDw8IExDRF9DUl9EVVRZX1BvcykgICAgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDA4ICovDQojZGVmaW5lIExDRF9DUl9EVVRZXzIgICAgICAgICAgICAgICgweDRVIDw8IExDRF9DUl9EVVRZX1BvcykgICAgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDEwICovDQoNCiNkZWZpbmUgTENEX0NSX0JJQVNfUG9zICAgICAgICAgICAgKDVVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgTENEX0NSX0JJQVNfTXNrICAgICAgICAgICAgKDB4M1UgPDwgTENEX0NSX0JJQVNfUG9zKSAgICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwNjAgKi8NCiNkZWZpbmUgTENEX0NSX0JJQVMgICAgICAgICAgICAgICAgTENEX0NSX0JJQVNfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IEJJQVNbMTowXSBiaXRzIChCaWFzIHNlbGVjdG9yKSAqLw0KI2RlZmluZSBMQ0RfQ1JfQklBU18wICAgICAgICAgICAgICAoMHgxVSA8PCBMQ0RfQ1JfQklBU19Qb3MpICAgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDAyMCAqLw0KI2RlZmluZSBMQ0RfQ1JfQklBU18xICAgICAgICAgICAgICAoMHgyVSA8PCBMQ0RfQ1JfQklBU19Qb3MpICAgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDA0MCAqLw0KDQojZGVmaW5lIExDRF9DUl9NVVhfU0VHX1BvcyAgICAgICAgICg3VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIExDRF9DUl9NVVhfU0VHX01zayAgICAgICAgICgweDFVIDw8IExDRF9DUl9NVVhfU0VHX1BvcykgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDgwICovDQojZGVmaW5lIExDRF9DUl9NVVhfU0VHICAgICAgICAgICAgIExDRF9DUl9NVVhfU0VHX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBNdXggU2VnbWVudCBFbmFibGUgQml0ICovDQoNCi8qKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgTENEX0ZDUiByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIExDRF9GQ1JfSERfUG9zICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIExDRF9GQ1JfSERfTXNrICAgICAgICAgICAgICgweDFVIDw8IExDRF9GQ1JfSERfUG9zKSAgICAgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDAxICovDQojZGVmaW5lIExDRF9GQ1JfSEQgICAgICAgICAgICAgICAgIExDRF9GQ1JfSERfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBIaWdoIERyaXZlIEVuYWJsZSBCaXQgKi8NCiNkZWZpbmUgTENEX0ZDUl9TT0ZJRV9Qb3MgICAgICAgICAgKDFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgTENEX0ZDUl9TT0ZJRV9Nc2sgICAgICAgICAgKDB4MVUgPDwgTENEX0ZDUl9TT0ZJRV9Qb3MpICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDIgKi8NCiNkZWZpbmUgTENEX0ZDUl9TT0ZJRSAgICAgICAgICAgICAgTENEX0ZDUl9TT0ZJRV9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFN0YXJ0IG9mIEZyYW1lIEludGVycnVwdCBFbmFibGUgQml0ICovDQojZGVmaW5lIExDRF9GQ1JfVURESUVfUG9zICAgICAgICAgICgzVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIExDRF9GQ1JfVURESUVfTXNrICAgICAgICAgICgweDFVIDw8IExDRF9GQ1JfVURESUVfUG9zKSAgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDA4ICovDQojZGVmaW5lIExDRF9GQ1JfVURESUUgICAgICAgICAgICAgIExDRF9GQ1JfVURESUVfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBVcGRhdGUgRGlzcGxheSBEb25lIEludGVycnVwdCBFbmFibGUgQml0ICovDQoNCiNkZWZpbmUgTENEX0ZDUl9QT05fUG9zICAgICAgICAgICAgKDRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgTENEX0ZDUl9QT05fTXNrICAgICAgICAgICAgKDB4N1UgPDwgTENEX0ZDUl9QT05fUG9zKSAgICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwNzAgKi8NCiNkZWZpbmUgTENEX0ZDUl9QT04gICAgICAgICAgICAgICAgTENEX0ZDUl9QT05fTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBPTlsyOjBdIGJpdHMgKFB1bHMgT04gRHVyYXRpb24pICovDQojZGVmaW5lIExDRF9GQ1JfUE9OXzAgICAgICAgICAgICAgICgweDFVIDw8IExDRF9GQ1JfUE9OX1BvcykgICAgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDEwICovDQojZGVmaW5lIExDRF9GQ1JfUE9OXzEgICAgICAgICAgICAgICgweDJVIDw8IExDRF9GQ1JfUE9OX1BvcykgICAgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDIwICovDQojZGVmaW5lIExDRF9GQ1JfUE9OXzIgICAgICAgICAgICAgICgweDRVIDw8IExDRF9GQ1JfUE9OX1BvcykgICAgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDQwICovDQoNCiNkZWZpbmUgTENEX0ZDUl9ERUFEX1BvcyAgICAgICAgICAgKDdVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgTENEX0ZDUl9ERUFEX01zayAgICAgICAgICAgKDB4N1UgPDwgTENEX0ZDUl9ERUFEX1BvcykgICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAzODAgKi8NCiNkZWZpbmUgTENEX0ZDUl9ERUFEICAgICAgICAgICAgICAgTENEX0ZDUl9ERUFEX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IERFQURbMjowXSBiaXRzIChERUFEIFRpbWUpICovDQojZGVmaW5lIExDRF9GQ1JfREVBRF8wICAgICAgICAgICAgICgweDFVIDw8IExDRF9GQ1JfREVBRF9Qb3MpICAgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDgwICovDQojZGVmaW5lIExDRF9GQ1JfREVBRF8xICAgICAgICAgICAgICgweDJVIDw8IExDRF9GQ1JfREVBRF9Qb3MpICAgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMTAwICovDQojZGVmaW5lIExDRF9GQ1JfREVBRF8yICAgICAgICAgICAgICgweDRVIDw8IExDRF9GQ1JfREVBRF9Qb3MpICAgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMjAwICovDQoNCiNkZWZpbmUgTENEX0ZDUl9DQ19Qb3MgICAgICAgICAgICAgKDEwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgTENEX0ZDUl9DQ19Nc2sgICAgICAgICAgICAgKDB4N1UgPDwgTENEX0ZDUl9DQ19Qb3MpICAgICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDFDMDAgKi8NCiNkZWZpbmUgTENEX0ZDUl9DQyAgICAgICAgICAgICAgICAgTENEX0ZDUl9DQ19Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IENDWzI6MF0gYml0cyAoQ29udHJhc3QgQ29udHJvbCkgKi8NCiNkZWZpbmUgTENEX0ZDUl9DQ18wICAgICAgICAgICAgICAgKDB4MVUgPDwgTENEX0ZDUl9DQ19Qb3MpICAgICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDA0MDAgKi8NCiNkZWZpbmUgTENEX0ZDUl9DQ18xICAgICAgICAgICAgICAgKDB4MlUgPDwgTENEX0ZDUl9DQ19Qb3MpICAgICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDA4MDAgKi8NCiNkZWZpbmUgTENEX0ZDUl9DQ18yICAgICAgICAgICAgICAgKDB4NFUgPDwgTENEX0ZDUl9DQ19Qb3MpICAgICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDEwMDAgKi8NCg0KI2RlZmluZSBMQ0RfRkNSX0JMSU5LRl9Qb3MgICAgICAgICAoMTNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBMQ0RfRkNSX0JMSU5LRl9Nc2sgICAgICAgICAoMHg3VSA8PCBMQ0RfRkNSX0JMSU5LRl9Qb3MpICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwRTAwMCAqLw0KI2RlZmluZSBMQ0RfRkNSX0JMSU5LRiAgICAgICAgICAgICBMQ0RfRkNSX0JMSU5LRl9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgQkxJTktGWzI6MF0gYml0cyAoQmxpbmsgRnJlcXVlbmN5KSAqLw0KI2RlZmluZSBMQ0RfRkNSX0JMSU5LRl8wICAgICAgICAgICAoMHgxVSA8PCBMQ0RfRkNSX0JMSU5LRl9Qb3MpICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMjAwMCAqLw0KI2RlZmluZSBMQ0RfRkNSX0JMSU5LRl8xICAgICAgICAgICAoMHgyVSA8PCBMQ0RfRkNSX0JMSU5LRl9Qb3MpICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwNDAwMCAqLw0KI2RlZmluZSBMQ0RfRkNSX0JMSU5LRl8yICAgICAgICAgICAoMHg0VSA8PCBMQ0RfRkNSX0JMSU5LRl9Qb3MpICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwODAwMCAqLw0KDQojZGVmaW5lIExDRF9GQ1JfQkxJTktfUG9zICAgICAgICAgICgxNlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIExDRF9GQ1JfQkxJTktfTXNrICAgICAgICAgICgweDNVIDw8IExDRF9GQ1JfQkxJTktfUG9zKSAgICAgICAgICAgICAgICAgLyohPCAweDAwMDMwMDAwICovDQojZGVmaW5lIExDRF9GQ1JfQkxJTksgICAgICAgICAgICAgIExDRF9GQ1JfQkxJTktfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBCTElOS1sxOjBdIGJpdHMgKEJsaW5rIEVuYWJsZSkgKi8NCiNkZWZpbmUgTENEX0ZDUl9CTElOS18wICAgICAgICAgICAgKDB4MVUgPDwgTENEX0ZDUl9CTElOS19Qb3MpICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMTAwMDAgKi8NCiNkZWZpbmUgTENEX0ZDUl9CTElOS18xICAgICAgICAgICAgKDB4MlUgPDwgTENEX0ZDUl9CTElOS19Qb3MpICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMjAwMDAgKi8NCg0KI2RlZmluZSBMQ0RfRkNSX0RJVl9Qb3MgICAgICAgICAgICAoMThVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBMQ0RfRkNSX0RJVl9Nc2sgICAgICAgICAgICAoMHhGVSA8PCBMQ0RfRkNSX0RJVl9Qb3MpICAgICAgICAgICAgICAgICAgIC8qITwgMHgwMDNDMDAwMCAqLw0KI2RlZmluZSBMQ0RfRkNSX0RJViAgICAgICAgICAgICAgICBMQ0RfRkNSX0RJVl9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgRElWWzM6MF0gYml0cyAoRGl2aWRlcikgKi8NCiNkZWZpbmUgTENEX0ZDUl9QU19Qb3MgICAgICAgICAgICAgKDIyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgTENEX0ZDUl9QU19Nc2sgICAgICAgICAgICAgKDB4RlUgPDwgTENEX0ZDUl9QU19Qb3MpICAgICAgICAgICAgICAgICAgICAvKiE8IDB4MDNDMDAwMDAgKi8NCiNkZWZpbmUgTENEX0ZDUl9QUyAgICAgICAgICAgICAgICAgTENEX0ZDUl9QU19Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBTWzM6MF0gYml0cyAoUHJlc2NhbGVyKSAqLw0KDQovKioqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIExDRF9TUiByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBMQ0RfU1JfRU5TX1BvcyAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBMQ0RfU1JfRU5TX01zayAgICAgICAgICAgICAoMHgxVSA8PCBMQ0RfU1JfRU5TX1BvcykgICAgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDAwMSAqLw0KI2RlZmluZSBMQ0RfU1JfRU5TICAgICAgICAgICAgICAgICBMQ0RfU1JfRU5TX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgTENEIEVuYWJsZWQgQml0ICovDQojZGVmaW5lIExDRF9TUl9TT0ZfUG9zICAgICAgICAgICAgICgxVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIExDRF9TUl9TT0ZfTXNrICAgICAgICAgICAgICgweDFVIDw8IExDRF9TUl9TT0ZfUG9zKSAgICAgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDAyICovDQojZGVmaW5lIExDRF9TUl9TT0YgICAgICAgICAgICAgICAgIExDRF9TUl9TT0ZfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBTdGFydCBPZiBGcmFtZSBGbGFnIEJpdCAqLw0KI2RlZmluZSBMQ0RfU1JfVURSX1BvcyAgICAgICAgICAgICAoMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBMQ0RfU1JfVURSX01zayAgICAgICAgICAgICAoMHgxVSA8PCBMQ0RfU1JfVURSX1BvcykgICAgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDAwNCAqLw0KI2RlZmluZSBMQ0RfU1JfVURSICAgICAgICAgICAgICAgICBMQ0RfU1JfVURSX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgVXBkYXRlIERpc3BsYXkgUmVxdWVzdCBCaXQgKi8NCiNkZWZpbmUgTENEX1NSX1VERF9Qb3MgICAgICAgICAgICAgKDNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgTENEX1NSX1VERF9Nc2sgICAgICAgICAgICAgKDB4MVUgPDwgTENEX1NSX1VERF9Qb3MpICAgICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDggKi8NCiNkZWZpbmUgTENEX1NSX1VERCAgICAgICAgICAgICAgICAgTENEX1NSX1VERF9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFVwZGF0ZSBEaXNwbGF5IERvbmUgRmxhZyBCaXQgKi8NCiNkZWZpbmUgTENEX1NSX1JEWV9Qb3MgICAgICAgICAgICAgKDRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgTENEX1NSX1JEWV9Nc2sgICAgICAgICAgICAgKDB4MVUgPDwgTENEX1NSX1JEWV9Qb3MpICAgICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMTAgKi8NCiNkZWZpbmUgTENEX1NSX1JEWSAgICAgICAgICAgICAgICAgTENEX1NSX1JEWV9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFJlYWR5IEZsYWcgQml0ICovDQojZGVmaW5lIExDRF9TUl9GQ1JTUl9Qb3MgICAgICAgICAgICg1VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIExDRF9TUl9GQ1JTUl9Nc2sgICAgICAgICAgICgweDFVIDw8IExDRF9TUl9GQ1JTUl9Qb3MpICAgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDIwICovDQojZGVmaW5lIExDRF9TUl9GQ1JTUiAgICAgICAgICAgICAgIExDRF9TUl9GQ1JTUl9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBMQ0QgRkNSIFJlZ2lzdGVyIFN5bmNocm9uaXphdGlvbiBGbGFnIEJpdCAqLw0KDQovKioqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIExDRF9DTFIgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBMQ0RfQ0xSX1NPRkNfUG9zICAgICAgICAgICAoMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBMQ0RfQ0xSX1NPRkNfTXNrICAgICAgICAgICAoMHgxVSA8PCBMQ0RfQ0xSX1NPRkNfUG9zKSAgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDAwMiAqLw0KI2RlZmluZSBMQ0RfQ0xSX1NPRkMgICAgICAgICAgICAgICBMQ0RfQ0xSX1NPRkNfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgU3RhcnQgT2YgRnJhbWUgRmxhZyBDbGVhciBCaXQgKi8NCiNkZWZpbmUgTENEX0NMUl9VRERDX1BvcyAgICAgICAgICAgKDNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgTENEX0NMUl9VRERDX01zayAgICAgICAgICAgKDB4MVUgPDwgTENEX0NMUl9VRERDX1BvcykgICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDggKi8NCiNkZWZpbmUgTENEX0NMUl9VRERDICAgICAgICAgICAgICAgTENEX0NMUl9VRERDX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFVwZGF0ZSBEaXNwbGF5IERvbmUgRmxhZyBDbGVhciBCaXQgKi8NCg0KLyoqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBMQ0RfUkFNIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgTENEX1JBTV9TRUdNRU5UX0RBVEFfUG9zICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgTENEX1JBTV9TRUdNRU5UX0RBVEFfTXNrICAgKDB4RkZGRkZGRkZVIDw8IExDRF9SQU1fU0VHTUVOVF9EQVRBX1BvcykgICAvKiE8IDB4RkZGRkZGRkYgKi8NCiNkZWZpbmUgTENEX1JBTV9TRUdNRU5UX0RBVEEgICAgICAgTENEX1JBTV9TRUdNRU5UX0RBVEFfTXNrICAgICAgICAgICAgICAgICAgICAvKiE8IFNlZ21lbnQgRGF0YSBCaXRzICovDQoNCi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovDQovKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLw0KLyogICAgICAgICAgICAgICAgICAgICAgICAgIFBvd2VyIENvbnRyb2wgKFBXUikgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8NCi8qICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovDQovKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLw0KDQojZGVmaW5lIFBXUl9QVkRfU1VQUE9SVCAgICAgICAgICAgICAgICAgICAgICAgLyohPCBQV1IgZmVhdHVyZSBhdmFpbGFibGUgb25seSBvbiBzcGVjaWZpYyBkZXZpY2VzOiBQb3dlciBWb2x0YWdlIERldGVjdGlvbiBmZWF0dXJlICovDQoNCi8qKioqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFBXUl9DUiByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIFBXUl9DUl9MUFNEU1JfUG9zICAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFBXUl9DUl9MUFNEU1JfTXNrICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFBXUl9DUl9MUFNEU1JfUG9zKSAgICAgICAgLyohPCAweDAwMDAwMDAxICovDQojZGVmaW5lIFBXUl9DUl9MUFNEU1IgICAgICAgICAgICAgICAgICAgICAgIFBXUl9DUl9MUFNEU1JfTXNrICAgICAgICAgICAgICAgICAgLyohPCBMb3ctcG93ZXIgZGVlcHNsZWVwL3NsZWVwL2xvdyBwb3dlciBydW4gKi8NCiNkZWZpbmUgUFdSX0NSX1BERFNfUG9zICAgICAgICAgICAgICAgICAgICAgKDFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUFdSX0NSX1BERFNfTXNrICAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgUFdSX0NSX1BERFNfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDAwMDIgKi8NCiNkZWZpbmUgUFdSX0NSX1BERFMgICAgICAgICAgICAgICAgICAgICAgICAgUFdSX0NSX1BERFNfTXNrICAgICAgICAgICAgICAgICAgICAvKiE8IFBvd2VyIERvd24gRGVlcHNsZWVwICovDQojZGVmaW5lIFBXUl9DUl9DV1VGX1BvcyAgICAgICAgICAgICAgICAgICAgICgyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFBXUl9DUl9DV1VGX01zayAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFBXUl9DUl9DV1VGX1BvcykgICAgICAgICAgLyohPCAweDAwMDAwMDA0ICovDQojZGVmaW5lIFBXUl9DUl9DV1VGICAgICAgICAgICAgICAgICAgICAgICAgIFBXUl9DUl9DV1VGX01zayAgICAgICAgICAgICAgICAgICAgLyohPCBDbGVhciBXYWtldXAgRmxhZyAqLw0KI2RlZmluZSBQV1JfQ1JfQ1NCRl9Qb3MgICAgICAgICAgICAgICAgICAgICAoM1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBQV1JfQ1JfQ1NCRl9Nc2sgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBQV1JfQ1JfQ1NCRl9Qb3MpICAgICAgICAgIC8qITwgMHgwMDAwMDAwOCAqLw0KI2RlZmluZSBQV1JfQ1JfQ1NCRiAgICAgICAgICAgICAgICAgICAgICAgICBQV1JfQ1JfQ1NCRl9Nc2sgICAgICAgICAgICAgICAgICAgIC8qITwgQ2xlYXIgU3RhbmRieSBGbGFnICovDQojZGVmaW5lIFBXUl9DUl9QVkRFX1BvcyAgICAgICAgICAgICAgICAgICAgICg0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFBXUl9DUl9QVkRFX01zayAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFBXUl9DUl9QVkRFX1BvcykgICAgICAgICAgLyohPCAweDAwMDAwMDEwICovDQojZGVmaW5lIFBXUl9DUl9QVkRFICAgICAgICAgICAgICAgICAgICAgICAgIFBXUl9DUl9QVkRFX01zayAgICAgICAgICAgICAgICAgICAgLyohPCBQb3dlciBWb2x0YWdlIERldGVjdG9yIEVuYWJsZSAqLw0KDQojZGVmaW5lIFBXUl9DUl9QTFNfUG9zICAgICAgICAgICAgICAgICAgICAgICg1VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFBXUl9DUl9QTFNfTXNrICAgICAgICAgICAgICAgICAgICAgICgweDdVIDw8IFBXUl9DUl9QTFNfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwMEUwICovDQojZGVmaW5lIFBXUl9DUl9QTFMgICAgICAgICAgICAgICAgICAgICAgICAgIFBXUl9DUl9QTFNfTXNrICAgICAgICAgICAgICAgICAgICAgLyohPCBQTFNbMjowXSBiaXRzIChQVkQgTGV2ZWwgU2VsZWN0aW9uKSAqLw0KI2RlZmluZSBQV1JfQ1JfUExTXzAgICAgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBQV1JfQ1JfUExTX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDAyMCAqLw0KI2RlZmluZSBQV1JfQ1JfUExTXzEgICAgICAgICAgICAgICAgICAgICAgICAoMHgyVSA8PCBQV1JfQ1JfUExTX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDA0MCAqLw0KI2RlZmluZSBQV1JfQ1JfUExTXzIgICAgICAgICAgICAgICAgICAgICAgICAoMHg0VSA8PCBQV1JfQ1JfUExTX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDA4MCAqLw0KDQovKiE8IFBWRCBsZXZlbCBjb25maWd1cmF0aW9uICovDQojZGVmaW5lIFBXUl9DUl9QTFNfTEVWMCAgICAgICAgICAgICAgICAgICAgICgweDAwMDAwMDAwVSkgICAgICAgICAgICAgICAgICAgICAgLyohPCBQVkQgbGV2ZWwgMCAqLw0KI2RlZmluZSBQV1JfQ1JfUExTX0xFVjEgICAgICAgICAgICAgICAgICAgICAoMHgwMDAwMDAyMFUpICAgICAgICAgICAgICAgICAgICAgIC8qITwgUFZEIGxldmVsIDEgKi8NCiNkZWZpbmUgUFdSX0NSX1BMU19MRVYyICAgICAgICAgICAgICAgICAgICAgKDB4MDAwMDAwNDBVKSAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBWRCBsZXZlbCAyICovDQojZGVmaW5lIFBXUl9DUl9QTFNfTEVWMyAgICAgICAgICAgICAgICAgICAgICgweDAwMDAwMDYwVSkgICAgICAgICAgICAgICAgICAgICAgLyohPCBQVkQgbGV2ZWwgMyAqLw0KI2RlZmluZSBQV1JfQ1JfUExTX0xFVjQgICAgICAgICAgICAgICAgICAgICAoMHgwMDAwMDA4MFUpICAgICAgICAgICAgICAgICAgICAgIC8qITwgUFZEIGxldmVsIDQgKi8NCiNkZWZpbmUgUFdSX0NSX1BMU19MRVY1ICAgICAgICAgICAgICAgICAgICAgKDB4MDAwMDAwQTBVKSAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBWRCBsZXZlbCA1ICovDQojZGVmaW5lIFBXUl9DUl9QTFNfTEVWNiAgICAgICAgICAgICAgICAgICAgICgweDAwMDAwMEMwVSkgICAgICAgICAgICAgICAgICAgICAgLyohPCBQVkQgbGV2ZWwgNiAqLw0KI2RlZmluZSBQV1JfQ1JfUExTX0xFVjcgICAgICAgICAgICAgICAgICAgICAoMHgwMDAwMDBFMFUpICAgICAgICAgICAgICAgICAgICAgIC8qITwgUFZEIGxldmVsIDcgKi8NCg0KI2RlZmluZSBQV1JfQ1JfREJQX1BvcyAgICAgICAgICAgICAgICAgICAgICAoOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBQV1JfQ1JfREJQX01zayAgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBQV1JfQ1JfREJQX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDEwMCAqLw0KI2RlZmluZSBQV1JfQ1JfREJQICAgICAgICAgICAgICAgICAgICAgICAgICBQV1JfQ1JfREJQX01zayAgICAgICAgICAgICAgICAgICAgIC8qITwgRGlzYWJsZSBCYWNrdXAgRG9tYWluIHdyaXRlIHByb3RlY3Rpb24gKi8NCiNkZWZpbmUgUFdSX0NSX1VMUF9Qb3MgICAgICAgICAgICAgICAgICAgICAgKDlVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUFdSX0NSX1VMUF9Nc2sgICAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgUFdSX0NSX1VMUF9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDAyMDAgKi8NCiNkZWZpbmUgUFdSX0NSX1VMUCAgICAgICAgICAgICAgICAgICAgICAgICAgUFdSX0NSX1VMUF9Nc2sgICAgICAgICAgICAgICAgICAgICAvKiE8IFVsdHJhIExvdyBQb3dlciBtb2RlICovDQojZGVmaW5lIFBXUl9DUl9GV1VfUG9zICAgICAgICAgICAgICAgICAgICAgICgxMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFBXUl9DUl9GV1VfTXNrICAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFBXUl9DUl9GV1VfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwNDAwICovDQojZGVmaW5lIFBXUl9DUl9GV1UgICAgICAgICAgICAgICAgICAgICAgICAgIFBXUl9DUl9GV1VfTXNrICAgICAgICAgICAgICAgICAgICAgLyohPCBGYXN0IHdha2V1cCAqLw0KDQojZGVmaW5lIFBXUl9DUl9WT1NfUG9zICAgICAgICAgICAgICAgICAgICAgICgxMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFBXUl9DUl9WT1NfTXNrICAgICAgICAgICAgICAgICAgICAgICgweDNVIDw8IFBXUl9DUl9WT1NfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAxODAwICovDQojZGVmaW5lIFBXUl9DUl9WT1MgICAgICAgICAgICAgICAgICAgICAgICAgIFBXUl9DUl9WT1NfTXNrICAgICAgICAgICAgICAgICAgICAgLyohPCBWT1NbMTowXSBiaXRzIChWb2x0YWdlIHNjYWxpbmcgcmFuZ2Ugc2VsZWN0aW9uKSAqLw0KI2RlZmluZSBQV1JfQ1JfVk9TXzAgICAgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBQV1JfQ1JfVk9TX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDgwMCAqLw0KI2RlZmluZSBQV1JfQ1JfVk9TXzEgICAgICAgICAgICAgICAgICAgICAgICAoMHgyVSA8PCBQV1JfQ1JfVk9TX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMTAwMCAqLw0KI2RlZmluZSBQV1JfQ1JfTFBSVU5fUG9zICAgICAgICAgICAgICAgICAgICAoMTRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBQV1JfQ1JfTFBSVU5fTXNrICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBQV1JfQ1JfTFBSVU5fUG9zKSAgICAgICAgIC8qITwgMHgwMDAwNDAwMCAqLw0KI2RlZmluZSBQV1JfQ1JfTFBSVU4gICAgICAgICAgICAgICAgICAgICAgICBQV1JfQ1JfTFBSVU5fTXNrICAgICAgICAgICAgICAgICAgIC8qITwgTG93IHBvd2VyIHJ1biBtb2RlICovDQoNCi8qKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgUFdSX0NTUiByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIFBXUl9DU1JfV1VGX1BvcyAgICAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFBXUl9DU1JfV1VGX01zayAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFBXUl9DU1JfV1VGX1BvcykgICAgICAgICAgLyohPCAweDAwMDAwMDAxICovDQojZGVmaW5lIFBXUl9DU1JfV1VGICAgICAgICAgICAgICAgICAgICAgICAgIFBXUl9DU1JfV1VGX01zayAgICAgICAgICAgICAgICAgICAgLyohPCBXYWtldXAgRmxhZyAqLw0KI2RlZmluZSBQV1JfQ1NSX1NCRl9Qb3MgICAgICAgICAgICAgICAgICAgICAoMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBQV1JfQ1NSX1NCRl9Nc2sgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBQV1JfQ1NSX1NCRl9Qb3MpICAgICAgICAgIC8qITwgMHgwMDAwMDAwMiAqLw0KI2RlZmluZSBQV1JfQ1NSX1NCRiAgICAgICAgICAgICAgICAgICAgICAgICBQV1JfQ1NSX1NCRl9Nc2sgICAgICAgICAgICAgICAgICAgIC8qITwgU3RhbmRieSBGbGFnICovDQojZGVmaW5lIFBXUl9DU1JfUFZET19Qb3MgICAgICAgICAgICAgICAgICAgICgyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFBXUl9DU1JfUFZET19Nc2sgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFBXUl9DU1JfUFZET19Qb3MpICAgICAgICAgLyohPCAweDAwMDAwMDA0ICovDQojZGVmaW5lIFBXUl9DU1JfUFZETyAgICAgICAgICAgICAgICAgICAgICAgIFBXUl9DU1JfUFZET19Nc2sgICAgICAgICAgICAgICAgICAgLyohPCBQVkQgT3V0cHV0ICovDQojZGVmaW5lIFBXUl9DU1JfVlJFRklOVFJEWUZfUG9zICAgICAgICAgICAgICgzVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFBXUl9DU1JfVlJFRklOVFJEWUZfTXNrICAgICAgICAgICAgICgweDFVIDw8IFBXUl9DU1JfVlJFRklOVFJEWUZfUG9zKSAgLyohPCAweDAwMDAwMDA4ICovDQojZGVmaW5lIFBXUl9DU1JfVlJFRklOVFJEWUYgICAgICAgICAgICAgICAgIFBXUl9DU1JfVlJFRklOVFJEWUZfTXNrICAgICAgICAgICAgLyohPCBJbnRlcm5hbCB2b2x0YWdlIHJlZmVyZW5jZSAoVlJFRklOVCkgcmVhZHkgZmxhZyAqLw0KI2RlZmluZSBQV1JfQ1NSX1ZPU0ZfUG9zICAgICAgICAgICAgICAgICAgICAoNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBQV1JfQ1NSX1ZPU0ZfTXNrICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBQV1JfQ1NSX1ZPU0ZfUG9zKSAgICAgICAgIC8qITwgMHgwMDAwMDAxMCAqLw0KI2RlZmluZSBQV1JfQ1NSX1ZPU0YgICAgICAgICAgICAgICAgICAgICAgICBQV1JfQ1NSX1ZPU0ZfTXNrICAgICAgICAgICAgICAgICAgIC8qITwgVm9sdGFnZSBTY2FsaW5nIHNlbGVjdCBmbGFnICovDQojZGVmaW5lIFBXUl9DU1JfUkVHTFBGX1BvcyAgICAgICAgICAgICAgICAgICg1VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFBXUl9DU1JfUkVHTFBGX01zayAgICAgICAgICAgICAgICAgICgweDFVIDw8IFBXUl9DU1JfUkVHTFBGX1BvcykgICAgICAgLyohPCAweDAwMDAwMDIwICovDQojZGVmaW5lIFBXUl9DU1JfUkVHTFBGICAgICAgICAgICAgICAgICAgICAgIFBXUl9DU1JfUkVHTFBGX01zayAgICAgICAgICAgICAgICAgLyohPCBSZWd1bGF0b3IgTFAgZmxhZyAqLw0KDQojZGVmaW5lIFBXUl9DU1JfRVdVUDFfUG9zICAgICAgICAgICAgICAgICAgICg4VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFBXUl9DU1JfRVdVUDFfTXNrICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFBXUl9DU1JfRVdVUDFfUG9zKSAgICAgICAgLyohPCAweDAwMDAwMTAwICovDQojZGVmaW5lIFBXUl9DU1JfRVdVUDEgICAgICAgICAgICAgICAgICAgICAgIFBXUl9DU1JfRVdVUDFfTXNrICAgICAgICAgICAgICAgICAgLyohPCBFbmFibGUgV0tVUCBwaW4gMSAqLw0KI2RlZmluZSBQV1JfQ1NSX0VXVVAyX1BvcyAgICAgICAgICAgICAgICAgICAoOVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBQV1JfQ1NSX0VXVVAyX01zayAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBQV1JfQ1NSX0VXVVAyX1BvcykgICAgICAgIC8qITwgMHgwMDAwMDIwMCAqLw0KI2RlZmluZSBQV1JfQ1NSX0VXVVAyICAgICAgICAgICAgICAgICAgICAgICBQV1JfQ1NSX0VXVVAyX01zayAgICAgICAgICAgICAgICAgIC8qITwgRW5hYmxlIFdLVVAgcGluIDIgKi8NCiNkZWZpbmUgUFdSX0NTUl9FV1VQM19Qb3MgICAgICAgICAgICAgICAgICAgKDEwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUFdSX0NTUl9FV1VQM19Nc2sgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgUFdSX0NTUl9FV1VQM19Qb3MpICAgICAgICAvKiE8IDB4MDAwMDA0MDAgKi8NCiNkZWZpbmUgUFdSX0NTUl9FV1VQMyAgICAgICAgICAgICAgICAgICAgICAgUFdSX0NTUl9FV1VQM19Nc2sgICAgICAgICAgICAgICAgICAvKiE8IEVuYWJsZSBXS1VQIHBpbiAzICovDQoNCi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovDQovKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLw0KLyogICAgICAgICAgICAgICAgICAgICAgUmVzZXQgYW5kIENsb2NrIENvbnRyb2wgKFJDQykgICAgICAgICAgICAgICAgICAgICAgICAgKi8NCi8qICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovDQovKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLw0KLyoNCiogQGJyaWVmIFNwZWNpZmljIGRldmljZSBmZWF0dXJlIGRlZmluaXRpb25zICAobm90IHByZXNlbnQgb24gYWxsIGRldmljZXMgaW4gdGhlIFNUTTMyRjAgc2VyaWUpDQoqLw0KI2RlZmluZSBSQ0NfTFNFQ1NTX1NVUFBPUlQgICAgICAgICAgLyohPCBMU0UgQ1NTIGZlYXR1cmUgc3VwcG9ydCAqLw0KDQovKioqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBSQ0NfQ1IgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBSQ0NfQ1JfSFNJT05fUG9zICAgICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQ1JfSFNJT05fTXNrICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBSQ0NfQ1JfSFNJT05fUG9zKSAgICAgICAgIC8qITwgMHgwMDAwMDAwMSAqLw0KI2RlZmluZSBSQ0NfQ1JfSFNJT04gICAgICAgICAgICAgICAgICAgICAgICBSQ0NfQ1JfSFNJT05fTXNrICAgICAgICAgICAgICAgICAgIC8qITwgSW50ZXJuYWwgSGlnaCBTcGVlZCBjbG9jayBlbmFibGUgKi8NCiNkZWZpbmUgUkNDX0NSX0hTSVJEWV9Qb3MgICAgICAgICAgICAgICAgICAgKDFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0NSX0hTSVJEWV9Nc2sgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgUkNDX0NSX0hTSVJEWV9Qb3MpICAgICAgICAvKiE8IDB4MDAwMDAwMDIgKi8NCiNkZWZpbmUgUkNDX0NSX0hTSVJEWSAgICAgICAgICAgICAgICAgICAgICAgUkNDX0NSX0hTSVJEWV9Nc2sgICAgICAgICAgICAgICAgICAvKiE8IEludGVybmFsIEhpZ2ggU3BlZWQgY2xvY2sgcmVhZHkgZmxhZyAqLw0KDQojZGVmaW5lIFJDQ19DUl9NU0lPTl9Qb3MgICAgICAgICAgICAgICAgICAgICg4VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19DUl9NU0lPTl9Nc2sgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFJDQ19DUl9NU0lPTl9Qb3MpICAgICAgICAgLyohPCAweDAwMDAwMTAwICovDQojZGVmaW5lIFJDQ19DUl9NU0lPTiAgICAgICAgICAgICAgICAgICAgICAgIFJDQ19DUl9NU0lPTl9Nc2sgICAgICAgICAgICAgICAgICAgLyohPCBJbnRlcm5hbCBNdWx0aSBTcGVlZCBjbG9jayBlbmFibGUgKi8NCiNkZWZpbmUgUkNDX0NSX01TSVJEWV9Qb3MgICAgICAgICAgICAgICAgICAgKDlVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0NSX01TSVJEWV9Nc2sgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgUkNDX0NSX01TSVJEWV9Qb3MpICAgICAgICAvKiE8IDB4MDAwMDAyMDAgKi8NCiNkZWZpbmUgUkNDX0NSX01TSVJEWSAgICAgICAgICAgICAgICAgICAgICAgUkNDX0NSX01TSVJEWV9Nc2sgICAgICAgICAgICAgICAgICAvKiE8IEludGVybmFsIE11bHRpIFNwZWVkIGNsb2NrIHJlYWR5IGZsYWcgKi8NCg0KI2RlZmluZSBSQ0NfQ1JfSFNFT05fUG9zICAgICAgICAgICAgICAgICAgICAoMTZVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQ1JfSFNFT05fTXNrICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBSQ0NfQ1JfSFNFT05fUG9zKSAgICAgICAgIC8qITwgMHgwMDAxMDAwMCAqLw0KI2RlZmluZSBSQ0NfQ1JfSFNFT04gICAgICAgICAgICAgICAgICAgICAgICBSQ0NfQ1JfSFNFT05fTXNrICAgICAgICAgICAgICAgICAgIC8qITwgRXh0ZXJuYWwgSGlnaCBTcGVlZCBjbG9jayBlbmFibGUgKi8NCiNkZWZpbmUgUkNDX0NSX0hTRVJEWV9Qb3MgICAgICAgICAgICAgICAgICAgKDE3VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0NSX0hTRVJEWV9Nc2sgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgUkNDX0NSX0hTRVJEWV9Qb3MpICAgICAgICAvKiE8IDB4MDAwMjAwMDAgKi8NCiNkZWZpbmUgUkNDX0NSX0hTRVJEWSAgICAgICAgICAgICAgICAgICAgICAgUkNDX0NSX0hTRVJEWV9Nc2sgICAgICAgICAgICAgICAgICAvKiE8IEV4dGVybmFsIEhpZ2ggU3BlZWQgY2xvY2sgcmVhZHkgZmxhZyAqLw0KI2RlZmluZSBSQ0NfQ1JfSFNFQllQX1BvcyAgICAgICAgICAgICAgICAgICAoMThVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQ1JfSFNFQllQX01zayAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBSQ0NfQ1JfSFNFQllQX1BvcykgICAgICAgIC8qITwgMHgwMDA0MDAwMCAqLw0KI2RlZmluZSBSQ0NfQ1JfSFNFQllQICAgICAgICAgICAgICAgICAgICAgICBSQ0NfQ1JfSFNFQllQX01zayAgICAgICAgICAgICAgICAgIC8qITwgRXh0ZXJuYWwgSGlnaCBTcGVlZCBjbG9jayBCeXBhc3MgKi8NCg0KI2RlZmluZSBSQ0NfQ1JfUExMT05fUG9zICAgICAgICAgICAgICAgICAgICAoMjRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQ1JfUExMT05fTXNrICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBSQ0NfQ1JfUExMT05fUG9zKSAgICAgICAgIC8qITwgMHgwMTAwMDAwMCAqLw0KI2RlZmluZSBSQ0NfQ1JfUExMT04gICAgICAgICAgICAgICAgICAgICAgICBSQ0NfQ1JfUExMT05fTXNrICAgICAgICAgICAgICAgICAgIC8qITwgUExMIGVuYWJsZSAqLw0KI2RlZmluZSBSQ0NfQ1JfUExMUkRZX1BvcyAgICAgICAgICAgICAgICAgICAoMjVVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQ1JfUExMUkRZX01zayAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBSQ0NfQ1JfUExMUkRZX1BvcykgICAgICAgIC8qITwgMHgwMjAwMDAwMCAqLw0KI2RlZmluZSBSQ0NfQ1JfUExMUkRZICAgICAgICAgICAgICAgICAgICAgICBSQ0NfQ1JfUExMUkRZX01zayAgICAgICAgICAgICAgICAgIC8qITwgUExMIGNsb2NrIHJlYWR5IGZsYWcgKi8NCiNkZWZpbmUgUkNDX0NSX0NTU09OX1BvcyAgICAgICAgICAgICAgICAgICAgKDI4VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0NSX0NTU09OX01zayAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgUkNDX0NSX0NTU09OX1BvcykgICAgICAgICAvKiE8IDB4MTAwMDAwMDAgKi8NCiNkZWZpbmUgUkNDX0NSX0NTU09OICAgICAgICAgICAgICAgICAgICAgICAgUkNDX0NSX0NTU09OX01zayAgICAgICAgICAgICAgICAgICAvKiE8IENsb2NrIFNlY3VyaXR5IFN5c3RlbSBlbmFibGUgKi8NCg0KI2RlZmluZSBSQ0NfQ1JfUlRDUFJFX1BvcyAgICAgICAgICAgICAgICAgICAoMjlVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQ1JfUlRDUFJFX01zayAgICAgICAgICAgICAgICAgICAoMHgzVSA8PCBSQ0NfQ1JfUlRDUFJFX1BvcykgICAgICAgIC8qITwgMHg2MDAwMDAwMCAqLw0KI2RlZmluZSBSQ0NfQ1JfUlRDUFJFICAgICAgICAgICAgICAgICAgICAgICBSQ0NfQ1JfUlRDUFJFX01zayAgICAgICAgICAgICAgICAgIC8qITwgUlRDL0xDRCBQcmVzY2FsZXIgKi8NCiNkZWZpbmUgUkNDX0NSX1JUQ1BSRV8wICAgICAgICAgICAgICAgICAgICAgKDB4MjAwMDAwMDBVKSAgICAgICAgICAgICAgICAgICAgICAvKiE8IEJpdDAgKi8NCiNkZWZpbmUgUkNDX0NSX1JUQ1BSRV8xICAgICAgICAgICAgICAgICAgICAgKDB4NDAwMDAwMDBVKSAgICAgICAgICAgICAgICAgICAgICAvKiE8IEJpdDEgKi8NCg0KLyoqKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgUkNDX0lDU0NSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgUkNDX0lDU0NSX0hTSUNBTF9Qb3MgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0lDU0NSX0hTSUNBTF9Nc2sgICAgICAgICAgICAgICAgKDB4RkZVIDw8IFJDQ19JQ1NDUl9IU0lDQUxfUG9zKSAgICAvKiE8IDB4MDAwMDAwRkYgKi8NCiNkZWZpbmUgUkNDX0lDU0NSX0hTSUNBTCAgICAgICAgICAgICAgICAgICAgUkNDX0lDU0NSX0hTSUNBTF9Nc2sgICAgICAgICAgICAgICAvKiE8IEludGVybmFsIEhpZ2ggU3BlZWQgY2xvY2sgQ2FsaWJyYXRpb24gKi8NCiNkZWZpbmUgUkNDX0lDU0NSX0hTSVRSSU1fUG9zICAgICAgICAgICAgICAgKDhVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0lDU0NSX0hTSVRSSU1fTXNrICAgICAgICAgICAgICAgKDB4MUZVIDw8IFJDQ19JQ1NDUl9IU0lUUklNX1BvcykgICAvKiE8IDB4MDAwMDFGMDAgKi8NCiNkZWZpbmUgUkNDX0lDU0NSX0hTSVRSSU0gICAgICAgICAgICAgICAgICAgUkNDX0lDU0NSX0hTSVRSSU1fTXNrICAgICAgICAgICAgICAvKiE8IEludGVybmFsIEhpZ2ggU3BlZWQgY2xvY2sgdHJpbW1pbmcgKi8NCg0KI2RlZmluZSBSQ0NfSUNTQ1JfTVNJUkFOR0VfUG9zICAgICAgICAgICAgICAoMTNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfSUNTQ1JfTVNJUkFOR0VfTXNrICAgICAgICAgICAgICAoMHg3VSA8PCBSQ0NfSUNTQ1JfTVNJUkFOR0VfUG9zKSAgIC8qITwgMHgwMDAwRTAwMCAqLw0KI2RlZmluZSBSQ0NfSUNTQ1JfTVNJUkFOR0UgICAgICAgICAgICAgICAgICBSQ0NfSUNTQ1JfTVNJUkFOR0VfTXNrICAgICAgICAgICAgIC8qITwgSW50ZXJuYWwgTXVsdGkgU3BlZWQgY2xvY2sgUmFuZ2UgKi8NCiNkZWZpbmUgUkNDX0lDU0NSX01TSVJBTkdFXzAgICAgICAgICAgICAgICAgKDB4MFUgPDwgUkNDX0lDU0NSX01TSVJBTkdFX1BvcykgICAvKiE8IDB4MDAwMDAwMDAgKi8NCiNkZWZpbmUgUkNDX0lDU0NSX01TSVJBTkdFXzEgICAgICAgICAgICAgICAgKDB4MVUgPDwgUkNDX0lDU0NSX01TSVJBTkdFX1BvcykgICAvKiE8IDB4MDAwMDIwMDAgKi8NCiNkZWZpbmUgUkNDX0lDU0NSX01TSVJBTkdFXzIgICAgICAgICAgICAgICAgKDB4MlUgPDwgUkNDX0lDU0NSX01TSVJBTkdFX1BvcykgICAvKiE8IDB4MDAwMDQwMDAgKi8NCiNkZWZpbmUgUkNDX0lDU0NSX01TSVJBTkdFXzMgICAgICAgICAgICAgICAgKDB4M1UgPDwgUkNDX0lDU0NSX01TSVJBTkdFX1BvcykgICAvKiE8IDB4MDAwMDYwMDAgKi8NCiNkZWZpbmUgUkNDX0lDU0NSX01TSVJBTkdFXzQgICAgICAgICAgICAgICAgKDB4NFUgPDwgUkNDX0lDU0NSX01TSVJBTkdFX1BvcykgICAvKiE8IDB4MDAwMDgwMDAgKi8NCiNkZWZpbmUgUkNDX0lDU0NSX01TSVJBTkdFXzUgICAgICAgICAgICAgICAgKDB4NVUgPDwgUkNDX0lDU0NSX01TSVJBTkdFX1BvcykgICAvKiE8IDB4MDAwMEEwMDAgKi8NCiNkZWZpbmUgUkNDX0lDU0NSX01TSVJBTkdFXzYgICAgICAgICAgICAgICAgKDB4NlUgPDwgUkNDX0lDU0NSX01TSVJBTkdFX1BvcykgICAvKiE8IDB4MDAwMEMwMDAgKi8NCiNkZWZpbmUgUkNDX0lDU0NSX01TSUNBTF9Qb3MgICAgICAgICAgICAgICAgKDE2VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0lDU0NSX01TSUNBTF9Nc2sgICAgICAgICAgICAgICAgKDB4RkZVIDw8IFJDQ19JQ1NDUl9NU0lDQUxfUG9zKSAgICAvKiE8IDB4MDBGRjAwMDAgKi8NCiNkZWZpbmUgUkNDX0lDU0NSX01TSUNBTCAgICAgICAgICAgICAgICAgICAgUkNDX0lDU0NSX01TSUNBTF9Nc2sgICAgICAgICAgICAgICAvKiE8IEludGVybmFsIE11bHRpIFNwZWVkIGNsb2NrIENhbGlicmF0aW9uICovDQojZGVmaW5lIFJDQ19JQ1NDUl9NU0lUUklNX1BvcyAgICAgICAgICAgICAgICgyNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19JQ1NDUl9NU0lUUklNX01zayAgICAgICAgICAgICAgICgweEZGVSA8PCBSQ0NfSUNTQ1JfTVNJVFJJTV9Qb3MpICAgLyohPCAweEZGMDAwMDAwICovDQojZGVmaW5lIFJDQ19JQ1NDUl9NU0lUUklNICAgICAgICAgICAgICAgICAgIFJDQ19JQ1NDUl9NU0lUUklNX01zayAgICAgICAgICAgICAgLyohPCBJbnRlcm5hbCBNdWx0aSBTcGVlZCBjbG9jayB0cmltbWluZyAqLw0KDQovKioqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBSQ0NfQ0ZHUiByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBSQ0NfQ0ZHUl9TV19Qb3MgICAgICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQ0ZHUl9TV19Nc2sgICAgICAgICAgICAgICAgICAgICAoMHgzVSA8PCBSQ0NfQ0ZHUl9TV19Qb3MpICAgICAgICAgIC8qITwgMHgwMDAwMDAwMyAqLw0KI2RlZmluZSBSQ0NfQ0ZHUl9TVyAgICAgICAgICAgICAgICAgICAgICAgICBSQ0NfQ0ZHUl9TV19Nc2sgICAgICAgICAgICAgICAgICAgIC8qITwgU1dbMTowXSBiaXRzIChTeXN0ZW0gY2xvY2sgU3dpdGNoKSAqLw0KI2RlZmluZSBSQ0NfQ0ZHUl9TV18wICAgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBSQ0NfQ0ZHUl9TV19Qb3MpICAgICAgICAgIC8qITwgMHgwMDAwMDAwMSAqLw0KI2RlZmluZSBSQ0NfQ0ZHUl9TV18xICAgICAgICAgICAgICAgICAgICAgICAoMHgyVSA8PCBSQ0NfQ0ZHUl9TV19Qb3MpICAgICAgICAgIC8qITwgMHgwMDAwMDAwMiAqLw0KDQovKiE8IFNXIGNvbmZpZ3VyYXRpb24gKi8NCiNkZWZpbmUgUkNDX0NGR1JfU1dfTVNJICAgICAgICAgICAgICAgICAgICAgKDB4MDAwMDAwMDBVKSAgICAgICAgICAgICAgICAgICAgICAvKiE8IE1TSSBzZWxlY3RlZCBhcyBzeXN0ZW0gY2xvY2sgKi8NCiNkZWZpbmUgUkNDX0NGR1JfU1dfSFNJICAgICAgICAgICAgICAgICAgICAgKDB4MDAwMDAwMDFVKSAgICAgICAgICAgICAgICAgICAgICAvKiE8IEhTSSBzZWxlY3RlZCBhcyBzeXN0ZW0gY2xvY2sgKi8NCiNkZWZpbmUgUkNDX0NGR1JfU1dfSFNFICAgICAgICAgICAgICAgICAgICAgKDB4MDAwMDAwMDJVKSAgICAgICAgICAgICAgICAgICAgICAvKiE8IEhTRSBzZWxlY3RlZCBhcyBzeXN0ZW0gY2xvY2sgKi8NCiNkZWZpbmUgUkNDX0NGR1JfU1dfUExMICAgICAgICAgICAgICAgICAgICAgKDB4MDAwMDAwMDNVKSAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBMTCBzZWxlY3RlZCBhcyBzeXN0ZW0gY2xvY2sgKi8NCg0KI2RlZmluZSBSQ0NfQ0ZHUl9TV1NfUG9zICAgICAgICAgICAgICAgICAgICAoMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQ0ZHUl9TV1NfTXNrICAgICAgICAgICAgICAgICAgICAoMHgzVSA8PCBSQ0NfQ0ZHUl9TV1NfUG9zKSAgICAgICAgIC8qITwgMHgwMDAwMDAwQyAqLw0KI2RlZmluZSBSQ0NfQ0ZHUl9TV1MgICAgICAgICAgICAgICAgICAgICAgICBSQ0NfQ0ZHUl9TV1NfTXNrICAgICAgICAgICAgICAgICAgIC8qITwgU1dTWzE6MF0gYml0cyAoU3lzdGVtIENsb2NrIFN3aXRjaCBTdGF0dXMpICovDQojZGVmaW5lIFJDQ19DRkdSX1NXU18wICAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFJDQ19DRkdSX1NXU19Qb3MpICAgICAgICAgLyohPCAweDAwMDAwMDA0ICovDQojZGVmaW5lIFJDQ19DRkdSX1NXU18xICAgICAgICAgICAgICAgICAgICAgICgweDJVIDw8IFJDQ19DRkdSX1NXU19Qb3MpICAgICAgICAgLyohPCAweDAwMDAwMDA4ICovDQoNCi8qITwgU1dTIGNvbmZpZ3VyYXRpb24gKi8NCiNkZWZpbmUgUkNDX0NGR1JfU1dTX01TSSAgICAgICAgICAgICAgICAgICAgKDB4MDAwMDAwMDBVKSAgICAgICAgICAgICAgICAgICAgICAvKiE8IE1TSSBvc2NpbGxhdG9yIHVzZWQgYXMgc3lzdGVtIGNsb2NrICovDQojZGVmaW5lIFJDQ19DRkdSX1NXU19IU0kgICAgICAgICAgICAgICAgICAgICgweDAwMDAwMDA0VSkgICAgICAgICAgICAgICAgICAgICAgLyohPCBIU0kgb3NjaWxsYXRvciB1c2VkIGFzIHN5c3RlbSBjbG9jayAqLw0KI2RlZmluZSBSQ0NfQ0ZHUl9TV1NfSFNFICAgICAgICAgICAgICAgICAgICAoMHgwMDAwMDAwOFUpICAgICAgICAgICAgICAgICAgICAgIC8qITwgSFNFIG9zY2lsbGF0b3IgdXNlZCBhcyBzeXN0ZW0gY2xvY2sgKi8NCiNkZWZpbmUgUkNDX0NGR1JfU1dTX1BMTCAgICAgICAgICAgICAgICAgICAgKDB4MDAwMDAwMENVKSAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBMTCB1c2VkIGFzIHN5c3RlbSBjbG9jayAqLw0KDQojZGVmaW5lIFJDQ19DRkdSX0hQUkVfUG9zICAgICAgICAgICAgICAgICAgICg0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19DRkdSX0hQUkVfTXNrICAgICAgICAgICAgICAgICAgICgweEZVIDw8IFJDQ19DRkdSX0hQUkVfUG9zKSAgICAgICAgLyohPCAweDAwMDAwMEYwICovDQojZGVmaW5lIFJDQ19DRkdSX0hQUkUgICAgICAgICAgICAgICAgICAgICAgIFJDQ19DRkdSX0hQUkVfTXNrICAgICAgICAgICAgICAgICAgLyohPCBIUFJFWzM6MF0gYml0cyAoQUhCIHByZXNjYWxlcikgKi8NCiNkZWZpbmUgUkNDX0NGR1JfSFBSRV8wICAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgUkNDX0NGR1JfSFBSRV9Qb3MpICAgICAgICAvKiE8IDB4MDAwMDAwMTAgKi8NCiNkZWZpbmUgUkNDX0NGR1JfSFBSRV8xICAgICAgICAgICAgICAgICAgICAgKDB4MlUgPDwgUkNDX0NGR1JfSFBSRV9Qb3MpICAgICAgICAvKiE8IDB4MDAwMDAwMjAgKi8NCiNkZWZpbmUgUkNDX0NGR1JfSFBSRV8yICAgICAgICAgICAgICAgICAgICAgKDB4NFUgPDwgUkNDX0NGR1JfSFBSRV9Qb3MpICAgICAgICAvKiE8IDB4MDAwMDAwNDAgKi8NCiNkZWZpbmUgUkNDX0NGR1JfSFBSRV8zICAgICAgICAgICAgICAgICAgICAgKDB4OFUgPDwgUkNDX0NGR1JfSFBSRV9Qb3MpICAgICAgICAvKiE8IDB4MDAwMDAwODAgKi8NCg0KLyohPCBIUFJFIGNvbmZpZ3VyYXRpb24gKi8NCiNkZWZpbmUgUkNDX0NGR1JfSFBSRV9ESVYxICAgICAgICAgICAgICAgICAgKDB4MDAwMDAwMDBVKSAgICAgICAgICAgICAgICAgICAgICAvKiE8IFNZU0NMSyBub3QgZGl2aWRlZCAqLw0KI2RlZmluZSBSQ0NfQ0ZHUl9IUFJFX0RJVjIgICAgICAgICAgICAgICAgICAoMHgwMDAwMDA4MFUpICAgICAgICAgICAgICAgICAgICAgIC8qITwgU1lTQ0xLIGRpdmlkZWQgYnkgMiAqLw0KI2RlZmluZSBSQ0NfQ0ZHUl9IUFJFX0RJVjQgICAgICAgICAgICAgICAgICAoMHgwMDAwMDA5MFUpICAgICAgICAgICAgICAgICAgICAgIC8qITwgU1lTQ0xLIGRpdmlkZWQgYnkgNCAqLw0KI2RlZmluZSBSQ0NfQ0ZHUl9IUFJFX0RJVjggICAgICAgICAgICAgICAgICAoMHgwMDAwMDBBMFUpICAgICAgICAgICAgICAgICAgICAgIC8qITwgU1lTQ0xLIGRpdmlkZWQgYnkgOCAqLw0KI2RlZmluZSBSQ0NfQ0ZHUl9IUFJFX0RJVjE2ICAgICAgICAgICAgICAgICAoMHgwMDAwMDBCMFUpICAgICAgICAgICAgICAgICAgICAgIC8qITwgU1lTQ0xLIGRpdmlkZWQgYnkgMTYgKi8NCiNkZWZpbmUgUkNDX0NGR1JfSFBSRV9ESVY2NCAgICAgICAgICAgICAgICAgKDB4MDAwMDAwQzBVKSAgICAgICAgICAgICAgICAgICAgICAvKiE8IFNZU0NMSyBkaXZpZGVkIGJ5IDY0ICovDQojZGVmaW5lIFJDQ19DRkdSX0hQUkVfRElWMTI4ICAgICAgICAgICAgICAgICgweDAwMDAwMEQwVSkgICAgICAgICAgICAgICAgICAgICAgLyohPCBTWVNDTEsgZGl2aWRlZCBieSAxMjggKi8NCiNkZWZpbmUgUkNDX0NGR1JfSFBSRV9ESVYyNTYgICAgICAgICAgICAgICAgKDB4MDAwMDAwRTBVKSAgICAgICAgICAgICAgICAgICAgICAvKiE8IFNZU0NMSyBkaXZpZGVkIGJ5IDI1NiAqLw0KI2RlZmluZSBSQ0NfQ0ZHUl9IUFJFX0RJVjUxMiAgICAgICAgICAgICAgICAoMHgwMDAwMDBGMFUpICAgICAgICAgICAgICAgICAgICAgIC8qITwgU1lTQ0xLIGRpdmlkZWQgYnkgNTEyICovDQoNCiNkZWZpbmUgUkNDX0NGR1JfUFBSRTFfUG9zICAgICAgICAgICAgICAgICAgKDhVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0NGR1JfUFBSRTFfTXNrICAgICAgICAgICAgICAgICAgKDB4N1UgPDwgUkNDX0NGR1JfUFBSRTFfUG9zKSAgICAgICAvKiE8IDB4MDAwMDA3MDAgKi8NCiNkZWZpbmUgUkNDX0NGR1JfUFBSRTEgICAgICAgICAgICAgICAgICAgICAgUkNDX0NGR1JfUFBSRTFfTXNrICAgICAgICAgICAgICAgICAvKiE8IFBSRTFbMjowXSBiaXRzIChBUEIxIHByZXNjYWxlcikgKi8NCiNkZWZpbmUgUkNDX0NGR1JfUFBSRTFfMCAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgUkNDX0NGR1JfUFBSRTFfUG9zKSAgICAgICAvKiE8IDB4MDAwMDAxMDAgKi8NCiNkZWZpbmUgUkNDX0NGR1JfUFBSRTFfMSAgICAgICAgICAgICAgICAgICAgKDB4MlUgPDwgUkNDX0NGR1JfUFBSRTFfUG9zKSAgICAgICAvKiE8IDB4MDAwMDAyMDAgKi8NCiNkZWZpbmUgUkNDX0NGR1JfUFBSRTFfMiAgICAgICAgICAgICAgICAgICAgKDB4NFUgPDwgUkNDX0NGR1JfUFBSRTFfUG9zKSAgICAgICAvKiE8IDB4MDAwMDA0MDAgKi8NCg0KLyohPCBQUFJFMSBjb25maWd1cmF0aW9uICovDQojZGVmaW5lIFJDQ19DRkdSX1BQUkUxX0RJVjEgICAgICAgICAgICAgICAgICgweDAwMDAwMDAwVSkgICAgICAgICAgICAgICAgICAgICAgLyohPCBIQ0xLIG5vdCBkaXZpZGVkICovDQojZGVmaW5lIFJDQ19DRkdSX1BQUkUxX0RJVjIgICAgICAgICAgICAgICAgICgweDAwMDAwNDAwVSkgICAgICAgICAgICAgICAgICAgICAgLyohPCBIQ0xLIGRpdmlkZWQgYnkgMiAqLw0KI2RlZmluZSBSQ0NfQ0ZHUl9QUFJFMV9ESVY0ICAgICAgICAgICAgICAgICAoMHgwMDAwMDUwMFUpICAgICAgICAgICAgICAgICAgICAgIC8qITwgSENMSyBkaXZpZGVkIGJ5IDQgKi8NCiNkZWZpbmUgUkNDX0NGR1JfUFBSRTFfRElWOCAgICAgICAgICAgICAgICAgKDB4MDAwMDA2MDBVKSAgICAgICAgICAgICAgICAgICAgICAvKiE8IEhDTEsgZGl2aWRlZCBieSA4ICovDQojZGVmaW5lIFJDQ19DRkdSX1BQUkUxX0RJVjE2ICAgICAgICAgICAgICAgICgweDAwMDAwNzAwVSkgICAgICAgICAgICAgICAgICAgICAgLyohPCBIQ0xLIGRpdmlkZWQgYnkgMTYgKi8NCg0KI2RlZmluZSBSQ0NfQ0ZHUl9QUFJFMl9Qb3MgICAgICAgICAgICAgICAgICAoMTFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQ0ZHUl9QUFJFMl9Nc2sgICAgICAgICAgICAgICAgICAoMHg3VSA8PCBSQ0NfQ0ZHUl9QUFJFMl9Qb3MpICAgICAgIC8qITwgMHgwMDAwMzgwMCAqLw0KI2RlZmluZSBSQ0NfQ0ZHUl9QUFJFMiAgICAgICAgICAgICAgICAgICAgICBSQ0NfQ0ZHUl9QUFJFMl9Nc2sgICAgICAgICAgICAgICAgIC8qITwgUFJFMlsyOjBdIGJpdHMgKEFQQjIgcHJlc2NhbGVyKSAqLw0KI2RlZmluZSBSQ0NfQ0ZHUl9QUFJFMl8wICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBSQ0NfQ0ZHUl9QUFJFMl9Qb3MpICAgICAgIC8qITwgMHgwMDAwMDgwMCAqLw0KI2RlZmluZSBSQ0NfQ0ZHUl9QUFJFMl8xICAgICAgICAgICAgICAgICAgICAoMHgyVSA8PCBSQ0NfQ0ZHUl9QUFJFMl9Qb3MpICAgICAgIC8qITwgMHgwMDAwMTAwMCAqLw0KI2RlZmluZSBSQ0NfQ0ZHUl9QUFJFMl8yICAgICAgICAgICAgICAgICAgICAoMHg0VSA8PCBSQ0NfQ0ZHUl9QUFJFMl9Qb3MpICAgICAgIC8qITwgMHgwMDAwMjAwMCAqLw0KDQovKiE8IFBQUkUyIGNvbmZpZ3VyYXRpb24gKi8NCiNkZWZpbmUgUkNDX0NGR1JfUFBSRTJfRElWMSAgICAgICAgICAgICAgICAgKDB4MDAwMDAwMDBVKSAgICAgICAgICAgICAgICAgICAgICAvKiE8IEhDTEsgbm90IGRpdmlkZWQgKi8NCiNkZWZpbmUgUkNDX0NGR1JfUFBSRTJfRElWMiAgICAgICAgICAgICAgICAgKDB4MDAwMDIwMDBVKSAgICAgICAgICAgICAgICAgICAgICAvKiE8IEhDTEsgZGl2aWRlZCBieSAyICovDQojZGVmaW5lIFJDQ19DRkdSX1BQUkUyX0RJVjQgICAgICAgICAgICAgICAgICgweDAwMDAyODAwVSkgICAgICAgICAgICAgICAgICAgICAgLyohPCBIQ0xLIGRpdmlkZWQgYnkgNCAqLw0KI2RlZmluZSBSQ0NfQ0ZHUl9QUFJFMl9ESVY4ICAgICAgICAgICAgICAgICAoMHgwMDAwMzAwMFUpICAgICAgICAgICAgICAgICAgICAgIC8qITwgSENMSyBkaXZpZGVkIGJ5IDggKi8NCiNkZWZpbmUgUkNDX0NGR1JfUFBSRTJfRElWMTYgICAgICAgICAgICAgICAgKDB4MDAwMDM4MDBVKSAgICAgICAgICAgICAgICAgICAgICAvKiE8IEhDTEsgZGl2aWRlZCBieSAxNiAqLw0KDQovKiE8IFBMTCBlbnRyeSBjbG9jayBzb3VyY2UqLw0KI2RlZmluZSBSQ0NfQ0ZHUl9QTExTUkNfUG9zICAgICAgICAgICAgICAgICAoMTZVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQ0ZHUl9QTExTUkNfTXNrICAgICAgICAgICAgICAgICAoMHgxVSA8PCBSQ0NfQ0ZHUl9QTExTUkNfUG9zKSAgICAgIC8qITwgMHgwMDAxMDAwMCAqLw0KI2RlZmluZSBSQ0NfQ0ZHUl9QTExTUkMgICAgICAgICAgICAgICAgICAgICBSQ0NfQ0ZHUl9QTExTUkNfTXNrICAgICAgICAgICAgICAgIC8qITwgUExMIGVudHJ5IGNsb2NrIHNvdXJjZSAqLw0KDQojZGVmaW5lIFJDQ19DRkdSX1BMTFNSQ19IU0kgICAgICAgICAgICAgICAgICgweDAwMDAwMDAwVSkgICAgICAgICAgICAgICAgICAgICAgLyohPCBIU0kgYXMgUExMIGVudHJ5IGNsb2NrIHNvdXJjZSAqLw0KI2RlZmluZSBSQ0NfQ0ZHUl9QTExTUkNfSFNFICAgICAgICAgICAgICAgICAoMHgwMDAxMDAwMFUpICAgICAgICAgICAgICAgICAgICAgIC8qITwgSFNFIGFzIFBMTCBlbnRyeSBjbG9jayBzb3VyY2UgKi8NCg0KDQovKiE8IFBMTE1VTCBjb25maWd1cmF0aW9uICovDQojZGVmaW5lIFJDQ19DRkdSX1BMTE1VTF9Qb3MgICAgICAgICAgICAgICAgICgxOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19DRkdSX1BMTE1VTF9Nc2sgICAgICAgICAgICAgICAgICgweEZVIDw8IFJDQ19DRkdSX1BMTE1VTF9Qb3MpICAgICAgLyohPCAweDAwM0MwMDAwICovDQojZGVmaW5lIFJDQ19DRkdSX1BMTE1VTCAgICAgICAgICAgICAgICAgICAgIFJDQ19DRkdSX1BMTE1VTF9Nc2sgICAgICAgICAgICAgICAgLyohPCBQTExNVUxbMzowXSBiaXRzIChQTEwgbXVsdGlwbGljYXRpb24gZmFjdG9yKSAqLw0KI2RlZmluZSBSQ0NfQ0ZHUl9QTExNVUxfMCAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBSQ0NfQ0ZHUl9QTExNVUxfUG9zKSAgICAgIC8qITwgMHgwMDA0MDAwMCAqLw0KI2RlZmluZSBSQ0NfQ0ZHUl9QTExNVUxfMSAgICAgICAgICAgICAgICAgICAoMHgyVSA8PCBSQ0NfQ0ZHUl9QTExNVUxfUG9zKSAgICAgIC8qITwgMHgwMDA4MDAwMCAqLw0KI2RlZmluZSBSQ0NfQ0ZHUl9QTExNVUxfMiAgICAgICAgICAgICAgICAgICAoMHg0VSA8PCBSQ0NfQ0ZHUl9QTExNVUxfUG9zKSAgICAgIC8qITwgMHgwMDEwMDAwMCAqLw0KI2RlZmluZSBSQ0NfQ0ZHUl9QTExNVUxfMyAgICAgICAgICAgICAgICAgICAoMHg4VSA8PCBSQ0NfQ0ZHUl9QTExNVUxfUG9zKSAgICAgIC8qITwgMHgwMDIwMDAwMCAqLw0KDQovKiE8IFBMTE1VTCBjb25maWd1cmF0aW9uICovDQojZGVmaW5lIFJDQ19DRkdSX1BMTE1VTDMgICAgICAgICAgICAgICAgICAgICgweDAwMDAwMDAwVSkgICAgICAgICAgICAgICAgICAgICAgLyohPCBQTEwgaW5wdXQgY2xvY2sgKiAzICovDQojZGVmaW5lIFJDQ19DRkdSX1BMTE1VTDQgICAgICAgICAgICAgICAgICAgICgweDAwMDQwMDAwVSkgICAgICAgICAgICAgICAgICAgICAgLyohPCBQTEwgaW5wdXQgY2xvY2sgKiA0ICovDQojZGVmaW5lIFJDQ19DRkdSX1BMTE1VTDYgICAgICAgICAgICAgICAgICAgICgweDAwMDgwMDAwVSkgICAgICAgICAgICAgICAgICAgICAgLyohPCBQTEwgaW5wdXQgY2xvY2sgKiA2ICovDQojZGVmaW5lIFJDQ19DRkdSX1BMTE1VTDggICAgICAgICAgICAgICAgICAgICgweDAwMEMwMDAwVSkgICAgICAgICAgICAgICAgICAgICAgLyohPCBQTEwgaW5wdXQgY2xvY2sgKiA4ICovDQojZGVmaW5lIFJDQ19DRkdSX1BMTE1VTDEyICAgICAgICAgICAgICAgICAgICgweDAwMTAwMDAwVSkgICAgICAgICAgICAgICAgICAgICAgLyohPCBQTEwgaW5wdXQgY2xvY2sgKiAxMiAqLw0KI2RlZmluZSBSQ0NfQ0ZHUl9QTExNVUwxNiAgICAgICAgICAgICAgICAgICAoMHgwMDE0MDAwMFUpICAgICAgICAgICAgICAgICAgICAgIC8qITwgUExMIGlucHV0IGNsb2NrICogMTYgKi8NCiNkZWZpbmUgUkNDX0NGR1JfUExMTVVMMjQgICAgICAgICAgICAgICAgICAgKDB4MDAxODAwMDBVKSAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBMTCBpbnB1dCBjbG9jayAqIDI0ICovDQojZGVmaW5lIFJDQ19DRkdSX1BMTE1VTDMyICAgICAgICAgICAgICAgICAgICgweDAwMUMwMDAwVSkgICAgICAgICAgICAgICAgICAgICAgLyohPCBQTEwgaW5wdXQgY2xvY2sgKiAzMiAqLw0KI2RlZmluZSBSQ0NfQ0ZHUl9QTExNVUw0OCAgICAgICAgICAgICAgICAgICAoMHgwMDIwMDAwMFUpICAgICAgICAgICAgICAgICAgICAgIC8qITwgUExMIGlucHV0IGNsb2NrICogNDggKi8NCg0KLyohPCBQTExESVYgY29uZmlndXJhdGlvbiAqLw0KI2RlZmluZSBSQ0NfQ0ZHUl9QTExESVZfUG9zICAgICAgICAgICAgICAgICAoMjJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQ0ZHUl9QTExESVZfTXNrICAgICAgICAgICAgICAgICAoMHgzVSA8PCBSQ0NfQ0ZHUl9QTExESVZfUG9zKSAgICAgIC8qITwgMHgwMEMwMDAwMCAqLw0KI2RlZmluZSBSQ0NfQ0ZHUl9QTExESVYgICAgICAgICAgICAgICAgICAgICBSQ0NfQ0ZHUl9QTExESVZfTXNrICAgICAgICAgICAgICAgIC8qITwgUExMRElWWzE6MF0gYml0cyAoUExMIE91dHB1dCBEaXZpc2lvbikgKi8NCiNkZWZpbmUgUkNDX0NGR1JfUExMRElWXzAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgUkNDX0NGR1JfUExMRElWX1BvcykgICAgICAvKiE8IDB4MDA0MDAwMDAgKi8NCiNkZWZpbmUgUkNDX0NGR1JfUExMRElWXzEgICAgICAgICAgICAgICAgICAgKDB4MlUgPDwgUkNDX0NGR1JfUExMRElWX1BvcykgICAgICAvKiE8IDB4MDA4MDAwMDAgKi8NCg0KDQovKiE8IFBMTERJViBjb25maWd1cmF0aW9uICovDQojZGVmaW5lIFJDQ19DRkdSX1BMTERJVjEgICAgICAgICAgICAgICAgICAgICgweDAwMDAwMDAwVSkgICAgICAgICAgICAgICAgICAgICAgLyohPCBQTEwgY2xvY2sgb3V0cHV0ID0gQ0tWQ08gLyAxICovDQojZGVmaW5lIFJDQ19DRkdSX1BMTERJVjJfUG9zICAgICAgICAgICAgICAgICgyMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19DRkdSX1BMTERJVjJfTXNrICAgICAgICAgICAgICAgICgweDFVIDw8IFJDQ19DRkdSX1BMTERJVjJfUG9zKSAgICAgLyohPCAweDAwNDAwMDAwICovDQojZGVmaW5lIFJDQ19DRkdSX1BMTERJVjIgICAgICAgICAgICAgICAgICAgIFJDQ19DRkdSX1BMTERJVjJfTXNrICAgICAgICAgICAgICAgLyohPCBQTEwgY2xvY2sgb3V0cHV0ID0gQ0tWQ08gLyAyICovDQojZGVmaW5lIFJDQ19DRkdSX1BMTERJVjNfUG9zICAgICAgICAgICAgICAgICgyM1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19DRkdSX1BMTERJVjNfTXNrICAgICAgICAgICAgICAgICgweDFVIDw8IFJDQ19DRkdSX1BMTERJVjNfUG9zKSAgICAgLyohPCAweDAwODAwMDAwICovDQojZGVmaW5lIFJDQ19DRkdSX1BMTERJVjMgICAgICAgICAgICAgICAgICAgIFJDQ19DRkdSX1BMTERJVjNfTXNrICAgICAgICAgICAgICAgLyohPCBQTEwgY2xvY2sgb3V0cHV0ID0gQ0tWQ08gLyAzICovDQojZGVmaW5lIFJDQ19DRkdSX1BMTERJVjRfUG9zICAgICAgICAgICAgICAgICgyMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19DRkdSX1BMTERJVjRfTXNrICAgICAgICAgICAgICAgICgweDNVIDw8IFJDQ19DRkdSX1BMTERJVjRfUG9zKSAgICAgLyohPCAweDAwQzAwMDAwICovDQojZGVmaW5lIFJDQ19DRkdSX1BMTERJVjQgICAgICAgICAgICAgICAgICAgIFJDQ19DRkdSX1BMTERJVjRfTXNrICAgICAgICAgICAgICAgLyohPCBQTEwgY2xvY2sgb3V0cHV0ID0gQ0tWQ08gLyA0ICovDQoNCg0KI2RlZmluZSBSQ0NfQ0ZHUl9NQ09TRUxfUG9zICAgICAgICAgICAgICAgICAoMjRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQ0ZHUl9NQ09TRUxfTXNrICAgICAgICAgICAgICAgICAoMHg3VSA8PCBSQ0NfQ0ZHUl9NQ09TRUxfUG9zKSAgICAgIC8qITwgMHgwNzAwMDAwMCAqLw0KI2RlZmluZSBSQ0NfQ0ZHUl9NQ09TRUwgICAgICAgICAgICAgICAgICAgICBSQ0NfQ0ZHUl9NQ09TRUxfTXNrICAgICAgICAgICAgICAgIC8qITwgTUNPWzI6MF0gYml0cyAoTWljcm9jb250cm9sbGVyIENsb2NrIE91dHB1dCkgKi8NCiNkZWZpbmUgUkNDX0NGR1JfTUNPU0VMXzAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgUkNDX0NGR1JfTUNPU0VMX1BvcykgICAgICAvKiE8IDB4MDEwMDAwMDAgKi8NCiNkZWZpbmUgUkNDX0NGR1JfTUNPU0VMXzEgICAgICAgICAgICAgICAgICAgKDB4MlUgPDwgUkNDX0NGR1JfTUNPU0VMX1BvcykgICAgICAvKiE8IDB4MDIwMDAwMDAgKi8NCiNkZWZpbmUgUkNDX0NGR1JfTUNPU0VMXzIgICAgICAgICAgICAgICAgICAgKDB4NFUgPDwgUkNDX0NGR1JfTUNPU0VMX1BvcykgICAgICAvKiE8IDB4MDQwMDAwMDAgKi8NCg0KLyohPCBNQ08gY29uZmlndXJhdGlvbiAqLw0KI2RlZmluZSBSQ0NfQ0ZHUl9NQ09TRUxfTk9DTE9DSyAgICAgICAgICAgICAoMHgwMDAwMDAwMFUpICAgICAgICAgICAgICAgICAgICAgIC8qITwgTm8gY2xvY2sgKi8NCiNkZWZpbmUgUkNDX0NGR1JfTUNPU0VMX1NZU0NMS19Qb3MgICAgICAgICAgKDI0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0NGR1JfTUNPU0VMX1NZU0NMS19Nc2sgICAgICAgICAgKDB4MVUgPDwgUkNDX0NGR1JfTUNPU0VMX1NZU0NMS19Qb3MpIC8qITwgMHgwMTAwMDAwMCAqLw0KI2RlZmluZSBSQ0NfQ0ZHUl9NQ09TRUxfU1lTQ0xLICAgICAgICAgICAgICBSQ0NfQ0ZHUl9NQ09TRUxfU1lTQ0xLX01zayAgICAgICAgIC8qITwgU3lzdGVtIGNsb2NrIHNlbGVjdGVkICovDQojZGVmaW5lIFJDQ19DRkdSX01DT1NFTF9IU0lfUG9zICAgICAgICAgICAgICgyNVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19DRkdSX01DT1NFTF9IU0lfTXNrICAgICAgICAgICAgICgweDFVIDw8IFJDQ19DRkdSX01DT1NFTF9IU0lfUG9zKSAgLyohPCAweDAyMDAwMDAwICovDQojZGVmaW5lIFJDQ19DRkdSX01DT1NFTF9IU0kgICAgICAgICAgICAgICAgIFJDQ19DRkdSX01DT1NFTF9IU0lfTXNrICAgICAgICAgICAgLyohPCBJbnRlcm5hbCAxNiBNSHogUkMgb3NjaWxsYXRvciBjbG9jayBzZWxlY3RlZCAqLw0KI2RlZmluZSBSQ0NfQ0ZHUl9NQ09TRUxfTVNJX1BvcyAgICAgICAgICAgICAoMjRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQ0ZHUl9NQ09TRUxfTVNJX01zayAgICAgICAgICAgICAoMHgzVSA8PCBSQ0NfQ0ZHUl9NQ09TRUxfTVNJX1BvcykgIC8qITwgMHgwMzAwMDAwMCAqLw0KI2RlZmluZSBSQ0NfQ0ZHUl9NQ09TRUxfTVNJICAgICAgICAgICAgICAgICBSQ0NfQ0ZHUl9NQ09TRUxfTVNJX01zayAgICAgICAgICAgIC8qITwgSW50ZXJuYWwgTWVkaXVtIFNwZWVkIFJDIG9zY2lsbGF0b3IgY2xvY2sgc2VsZWN0ZWQgKi8NCiNkZWZpbmUgUkNDX0NGR1JfTUNPU0VMX0hTRV9Qb3MgICAgICAgICAgICAgKDI2VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0NGR1JfTUNPU0VMX0hTRV9Nc2sgICAgICAgICAgICAgKDB4MVUgPDwgUkNDX0NGR1JfTUNPU0VMX0hTRV9Qb3MpICAvKiE8IDB4MDQwMDAwMDAgKi8NCiNkZWZpbmUgUkNDX0NGR1JfTUNPU0VMX0hTRSAgICAgICAgICAgICAgICAgUkNDX0NGR1JfTUNPU0VMX0hTRV9Nc2sgICAgICAgICAgICAvKiE8IEV4dGVybmFsIDEtMjUgTUh6IG9zY2lsbGF0b3IgY2xvY2sgc2VsZWN0ZWQgKi8NCiNkZWZpbmUgUkNDX0NGR1JfTUNPU0VMX1BMTF9Qb3MgICAgICAgICAgICAgKDI0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0NGR1JfTUNPU0VMX1BMTF9Nc2sgICAgICAgICAgICAgKDB4NVUgPDwgUkNDX0NGR1JfTUNPU0VMX1BMTF9Qb3MpICAvKiE8IDB4MDUwMDAwMDAgKi8NCiNkZWZpbmUgUkNDX0NGR1JfTUNPU0VMX1BMTCAgICAgICAgICAgICAgICAgUkNDX0NGR1JfTUNPU0VMX1BMTF9Nc2sgICAgICAgICAgICAvKiE8IFBMTCBjbG9jayBkaXZpZGVkICovDQojZGVmaW5lIFJDQ19DRkdSX01DT1NFTF9MU0lfUG9zICAgICAgICAgICAgICgyNVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19DRkdSX01DT1NFTF9MU0lfTXNrICAgICAgICAgICAgICgweDNVIDw8IFJDQ19DRkdSX01DT1NFTF9MU0lfUG9zKSAgLyohPCAweDA2MDAwMDAwICovDQojZGVmaW5lIFJDQ19DRkdSX01DT1NFTF9MU0kgICAgICAgICAgICAgICAgIFJDQ19DRkdSX01DT1NFTF9MU0lfTXNrICAgICAgICAgICAgLyohPCBMU0kgc2VsZWN0ZWQgKi8NCiNkZWZpbmUgUkNDX0NGR1JfTUNPU0VMX0xTRV9Qb3MgICAgICAgICAgICAgKDI0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0NGR1JfTUNPU0VMX0xTRV9Nc2sgICAgICAgICAgICAgKDB4N1UgPDwgUkNDX0NGR1JfTUNPU0VMX0xTRV9Qb3MpICAvKiE8IDB4MDcwMDAwMDAgKi8NCiNkZWZpbmUgUkNDX0NGR1JfTUNPU0VMX0xTRSAgICAgICAgICAgICAgICAgUkNDX0NGR1JfTUNPU0VMX0xTRV9Nc2sgICAgICAgICAgICAvKiE8IExTRSBzZWxlY3RlZCAqLw0KDQojZGVmaW5lIFJDQ19DRkdSX01DT1BSRV9Qb3MgICAgICAgICAgICAgICAgICgyOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19DRkdSX01DT1BSRV9Nc2sgICAgICAgICAgICAgICAgICgweDdVIDw8IFJDQ19DRkdSX01DT1BSRV9Qb3MpICAgICAgLyohPCAweDcwMDAwMDAwICovDQojZGVmaW5lIFJDQ19DRkdSX01DT1BSRSAgICAgICAgICAgICAgICAgICAgIFJDQ19DRkdSX01DT1BSRV9Nc2sgICAgICAgICAgICAgICAgLyohPCBNQ09QUkVbMjowXSBiaXRzIChNaWNyb2NvbnRyb2xsZXIgQ2xvY2sgT3V0cHV0IFByZXNjYWxlcikgKi8NCiNkZWZpbmUgUkNDX0NGR1JfTUNPUFJFXzAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgUkNDX0NGR1JfTUNPUFJFX1BvcykgICAgICAvKiE8IDB4MTAwMDAwMDAgKi8NCiNkZWZpbmUgUkNDX0NGR1JfTUNPUFJFXzEgICAgICAgICAgICAgICAgICAgKDB4MlUgPDwgUkNDX0NGR1JfTUNPUFJFX1BvcykgICAgICAvKiE8IDB4MjAwMDAwMDAgKi8NCiNkZWZpbmUgUkNDX0NGR1JfTUNPUFJFXzIgICAgICAgICAgICAgICAgICAgKDB4NFUgPDwgUkNDX0NGR1JfTUNPUFJFX1BvcykgICAgICAvKiE8IDB4NDAwMDAwMDAgKi8NCg0KLyohPCBNQ08gUHJlc2NhbGVyIGNvbmZpZ3VyYXRpb24gKi8gDQojZGVmaW5lIFJDQ19DRkdSX01DT1BSRV9ESVYxICAgICAgICAgICAgICAgICgweDAwMDAwMDAwVSkgICAgICAgICAgICAgICAgICAgICAgLyohPCBNQ08gaXMgZGl2aWRlZCBieSAxICovDQojZGVmaW5lIFJDQ19DRkdSX01DT1BSRV9ESVYyICAgICAgICAgICAgICAgICgweDEwMDAwMDAwVSkgICAgICAgICAgICAgICAgICAgICAgLyohPCBNQ08gaXMgZGl2aWRlZCBieSAyICovDQojZGVmaW5lIFJDQ19DRkdSX01DT1BSRV9ESVY0ICAgICAgICAgICAgICAgICgweDIwMDAwMDAwVSkgICAgICAgICAgICAgICAgICAgICAgLyohPCBNQ08gaXMgZGl2aWRlZCBieSA0ICovDQojZGVmaW5lIFJDQ19DRkdSX01DT1BSRV9ESVY4ICAgICAgICAgICAgICAgICgweDMwMDAwMDAwVSkgICAgICAgICAgICAgICAgICAgICAgLyohPCBNQ08gaXMgZGl2aWRlZCBieSA4ICovDQojZGVmaW5lIFJDQ19DRkdSX01DT1BSRV9ESVYxNiAgICAgICAgICAgICAgICgweDQwMDAwMDAwVSkgICAgICAgICAgICAgICAgICAgICAgLyohPCBNQ08gaXMgZGl2aWRlZCBieSAxNiAqLw0KIA0KLyogTGVnYWN5IGFsaWFzZXMgKi8NCiNkZWZpbmUgIFJDQ19DRkdSX01DT19ESVYxICAgICAgICAgICAgICAgICAgUkNDX0NGR1JfTUNPUFJFX0RJVjENCiNkZWZpbmUgIFJDQ19DRkdSX01DT19ESVYyICAgICAgICAgICAgICAgICAgUkNDX0NGR1JfTUNPUFJFX0RJVjINCiNkZWZpbmUgIFJDQ19DRkdSX01DT19ESVY0ICAgICAgICAgICAgICAgICAgUkNDX0NGR1JfTUNPUFJFX0RJVjQNCiNkZWZpbmUgIFJDQ19DRkdSX01DT19ESVY4ICAgICAgICAgICAgICAgICAgUkNDX0NGR1JfTUNPUFJFX0RJVjgNCiNkZWZpbmUgIFJDQ19DRkdSX01DT19ESVYxNiAgICAgICAgICAgICAgICAgUkNDX0NGR1JfTUNPUFJFX0RJVjE2DQojZGVmaW5lICBSQ0NfQ0ZHUl9NQ09fTk9DTE9DSyAgICAgICAgICAgICAgIFJDQ19DRkdSX01DT1NFTF9OT0NMT0NLDQojZGVmaW5lICBSQ0NfQ0ZHUl9NQ09fU1lTQ0xLICAgICAgICAgICAgICAgIFJDQ19DRkdSX01DT1NFTF9TWVNDTEsNCiNkZWZpbmUgIFJDQ19DRkdSX01DT19IU0kgICAgICAgICAgICAgICAgICAgUkNDX0NGR1JfTUNPU0VMX0hTSQ0KI2RlZmluZSAgUkNDX0NGR1JfTUNPX01TSSAgICAgICAgICAgICAgICAgICBSQ0NfQ0ZHUl9NQ09TRUxfTVNJDQojZGVmaW5lICBSQ0NfQ0ZHUl9NQ09fSFNFICAgICAgICAgICAgICAgICAgIFJDQ19DRkdSX01DT1NFTF9IU0UNCiNkZWZpbmUgIFJDQ19DRkdSX01DT19QTEwgICAgICAgICAgICAgICAgICAgUkNDX0NGR1JfTUNPU0VMX1BMTA0KI2RlZmluZSAgUkNDX0NGR1JfTUNPX0xTSSAgICAgICAgICAgICAgICAgICBSQ0NfQ0ZHUl9NQ09TRUxfTFNJDQojZGVmaW5lICBSQ0NfQ0ZHUl9NQ09fTFNFICAgICAgICAgICAgICAgICAgIFJDQ19DRkdSX01DT1NFTF9MU0UNCg0KLyohPCoqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFJDQ19DSVIgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBSQ0NfQ0lSX0xTSVJEWUZfUG9zICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQ0lSX0xTSVJEWUZfTXNrICAgICAgICAgICAgICAgICAoMHgxVSA8PCBSQ0NfQ0lSX0xTSVJEWUZfUG9zKSAgICAgIC8qITwgMHgwMDAwMDAwMSAqLw0KI2RlZmluZSBSQ0NfQ0lSX0xTSVJEWUYgICAgICAgICAgICAgICAgICAgICBSQ0NfQ0lSX0xTSVJEWUZfTXNrICAgICAgICAgICAgICAgIC8qITwgTFNJIFJlYWR5IEludGVycnVwdCBmbGFnICovDQojZGVmaW5lIFJDQ19DSVJfTFNFUkRZRl9Qb3MgICAgICAgICAgICAgICAgICgxVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19DSVJfTFNFUkRZRl9Nc2sgICAgICAgICAgICAgICAgICgweDFVIDw8IFJDQ19DSVJfTFNFUkRZRl9Qb3MpICAgICAgLyohPCAweDAwMDAwMDAyICovDQojZGVmaW5lIFJDQ19DSVJfTFNFUkRZRiAgICAgICAgICAgICAgICAgICAgIFJDQ19DSVJfTFNFUkRZRl9Nc2sgICAgICAgICAgICAgICAgLyohPCBMU0UgUmVhZHkgSW50ZXJydXB0IGZsYWcgKi8NCiNkZWZpbmUgUkNDX0NJUl9IU0lSRFlGX1BvcyAgICAgICAgICAgICAgICAgKDJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0NJUl9IU0lSRFlGX01zayAgICAgICAgICAgICAgICAgKDB4MVUgPDwgUkNDX0NJUl9IU0lSRFlGX1BvcykgICAgICAvKiE8IDB4MDAwMDAwMDQgKi8NCiNkZWZpbmUgUkNDX0NJUl9IU0lSRFlGICAgICAgICAgICAgICAgICAgICAgUkNDX0NJUl9IU0lSRFlGX01zayAgICAgICAgICAgICAgICAvKiE8IEhTSSBSZWFkeSBJbnRlcnJ1cHQgZmxhZyAqLw0KI2RlZmluZSBSQ0NfQ0lSX0hTRVJEWUZfUG9zICAgICAgICAgICAgICAgICAoM1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQ0lSX0hTRVJEWUZfTXNrICAgICAgICAgICAgICAgICAoMHgxVSA8PCBSQ0NfQ0lSX0hTRVJEWUZfUG9zKSAgICAgIC8qITwgMHgwMDAwMDAwOCAqLw0KI2RlZmluZSBSQ0NfQ0lSX0hTRVJEWUYgICAgICAgICAgICAgICAgICAgICBSQ0NfQ0lSX0hTRVJEWUZfTXNrICAgICAgICAgICAgICAgIC8qITwgSFNFIFJlYWR5IEludGVycnVwdCBmbGFnICovDQojZGVmaW5lIFJDQ19DSVJfUExMUkRZRl9Qb3MgICAgICAgICAgICAgICAgICg0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19DSVJfUExMUkRZRl9Nc2sgICAgICAgICAgICAgICAgICgweDFVIDw8IFJDQ19DSVJfUExMUkRZRl9Qb3MpICAgICAgLyohPCAweDAwMDAwMDEwICovDQojZGVmaW5lIFJDQ19DSVJfUExMUkRZRiAgICAgICAgICAgICAgICAgICAgIFJDQ19DSVJfUExMUkRZRl9Nc2sgICAgICAgICAgICAgICAgLyohPCBQTEwgUmVhZHkgSW50ZXJydXB0IGZsYWcgKi8NCiNkZWZpbmUgUkNDX0NJUl9NU0lSRFlGX1BvcyAgICAgICAgICAgICAgICAgKDVVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0NJUl9NU0lSRFlGX01zayAgICAgICAgICAgICAgICAgKDB4MVUgPDwgUkNDX0NJUl9NU0lSRFlGX1BvcykgICAgICAvKiE8IDB4MDAwMDAwMjAgKi8NCiNkZWZpbmUgUkNDX0NJUl9NU0lSRFlGICAgICAgICAgICAgICAgICAgICAgUkNDX0NJUl9NU0lSRFlGX01zayAgICAgICAgICAgICAgICAvKiE8IE1TSSBSZWFkeSBJbnRlcnJ1cHQgZmxhZyAqLw0KI2RlZmluZSBSQ0NfQ0lSX0xTRUNTU0ZfUG9zICAgICAgICAgICAgICAgICAoNlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQ0lSX0xTRUNTU0ZfTXNrICAgICAgICAgICAgICAgICAoMHgxVSA8PCBSQ0NfQ0lSX0xTRUNTU0ZfUG9zKSAgICAgIC8qITwgMHgwMDAwMDA0MCAqLw0KI2RlZmluZSBSQ0NfQ0lSX0xTRUNTU0YgICAgICAgICAgICAgICAgICAgICBSQ0NfQ0lSX0xTRUNTU0ZfTXNrICAgICAgICAgICAgICAgIC8qITwgTFNFIENTUyBJbnRlcnJ1cHQgZmxhZyAqLw0KI2RlZmluZSBSQ0NfQ0lSX0NTU0ZfUG9zICAgICAgICAgICAgICAgICAgICAoN1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQ0lSX0NTU0ZfTXNrICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBSQ0NfQ0lSX0NTU0ZfUG9zKSAgICAgICAgIC8qITwgMHgwMDAwMDA4MCAqLw0KI2RlZmluZSBSQ0NfQ0lSX0NTU0YgICAgICAgICAgICAgICAgICAgICAgICBSQ0NfQ0lSX0NTU0ZfTXNrICAgICAgICAgICAgICAgICAgIC8qITwgQ2xvY2sgU2VjdXJpdHkgU3lzdGVtIEludGVycnVwdCBmbGFnICovDQoNCiNkZWZpbmUgUkNDX0NJUl9MU0lSRFlJRV9Qb3MgICAgICAgICAgICAgICAgKDhVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0NJUl9MU0lSRFlJRV9Nc2sgICAgICAgICAgICAgICAgKDB4MVUgPDwgUkNDX0NJUl9MU0lSRFlJRV9Qb3MpICAgICAvKiE8IDB4MDAwMDAxMDAgKi8NCiNkZWZpbmUgUkNDX0NJUl9MU0lSRFlJRSAgICAgICAgICAgICAgICAgICAgUkNDX0NJUl9MU0lSRFlJRV9Nc2sgICAgICAgICAgICAgICAvKiE8IExTSSBSZWFkeSBJbnRlcnJ1cHQgRW5hYmxlICovDQojZGVmaW5lIFJDQ19DSVJfTFNFUkRZSUVfUG9zICAgICAgICAgICAgICAgICg5VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19DSVJfTFNFUkRZSUVfTXNrICAgICAgICAgICAgICAgICgweDFVIDw8IFJDQ19DSVJfTFNFUkRZSUVfUG9zKSAgICAgLyohPCAweDAwMDAwMjAwICovDQojZGVmaW5lIFJDQ19DSVJfTFNFUkRZSUUgICAgICAgICAgICAgICAgICAgIFJDQ19DSVJfTFNFUkRZSUVfTXNrICAgICAgICAgICAgICAgLyohPCBMU0UgUmVhZHkgSW50ZXJydXB0IEVuYWJsZSAqLw0KI2RlZmluZSBSQ0NfQ0lSX0hTSVJEWUlFX1BvcyAgICAgICAgICAgICAgICAoMTBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQ0lSX0hTSVJEWUlFX01zayAgICAgICAgICAgICAgICAoMHgxVSA8PCBSQ0NfQ0lSX0hTSVJEWUlFX1BvcykgICAgIC8qITwgMHgwMDAwMDQwMCAqLw0KI2RlZmluZSBSQ0NfQ0lSX0hTSVJEWUlFICAgICAgICAgICAgICAgICAgICBSQ0NfQ0lSX0hTSVJEWUlFX01zayAgICAgICAgICAgICAgIC8qITwgSFNJIFJlYWR5IEludGVycnVwdCBFbmFibGUgKi8NCiNkZWZpbmUgUkNDX0NJUl9IU0VSRFlJRV9Qb3MgICAgICAgICAgICAgICAgKDExVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0NJUl9IU0VSRFlJRV9Nc2sgICAgICAgICAgICAgICAgKDB4MVUgPDwgUkNDX0NJUl9IU0VSRFlJRV9Qb3MpICAgICAvKiE8IDB4MDAwMDA4MDAgKi8NCiNkZWZpbmUgUkNDX0NJUl9IU0VSRFlJRSAgICAgICAgICAgICAgICAgICAgUkNDX0NJUl9IU0VSRFlJRV9Nc2sgICAgICAgICAgICAgICAvKiE8IEhTRSBSZWFkeSBJbnRlcnJ1cHQgRW5hYmxlICovDQojZGVmaW5lIFJDQ19DSVJfUExMUkRZSUVfUG9zICAgICAgICAgICAgICAgICgxMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19DSVJfUExMUkRZSUVfTXNrICAgICAgICAgICAgICAgICgweDFVIDw8IFJDQ19DSVJfUExMUkRZSUVfUG9zKSAgICAgLyohPCAweDAwMDAxMDAwICovDQojZGVmaW5lIFJDQ19DSVJfUExMUkRZSUUgICAgICAgICAgICAgICAgICAgIFJDQ19DSVJfUExMUkRZSUVfTXNrICAgICAgICAgICAgICAgLyohPCBQTEwgUmVhZHkgSW50ZXJydXB0IEVuYWJsZSAqLw0KI2RlZmluZSBSQ0NfQ0lSX01TSVJEWUlFX1BvcyAgICAgICAgICAgICAgICAoMTNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQ0lSX01TSVJEWUlFX01zayAgICAgICAgICAgICAgICAoMHgxVSA8PCBSQ0NfQ0lSX01TSVJEWUlFX1BvcykgICAgIC8qITwgMHgwMDAwMjAwMCAqLw0KI2RlZmluZSBSQ0NfQ0lSX01TSVJEWUlFICAgICAgICAgICAgICAgICAgICBSQ0NfQ0lSX01TSVJEWUlFX01zayAgICAgICAgICAgICAgIC8qITwgTVNJIFJlYWR5IEludGVycnVwdCBFbmFibGUgKi8NCiNkZWZpbmUgUkNDX0NJUl9MU0VDU1NJRV9Qb3MgICAgICAgICAgICAgICAgKDE0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0NJUl9MU0VDU1NJRV9Nc2sgICAgICAgICAgICAgICAgKDB4MVUgPDwgUkNDX0NJUl9MU0VDU1NJRV9Qb3MpICAgICAvKiE8IDB4MDAwMDQwMDAgKi8NCiNkZWZpbmUgUkNDX0NJUl9MU0VDU1NJRSAgICAgICAgICAgICAgICAgICAgUkNDX0NJUl9MU0VDU1NJRV9Nc2sgICAgICAgICAgICAgICAvKiE8IExTRSBDU1MgSW50ZXJydXB0IEVuYWJsZSAqLw0KDQojZGVmaW5lIFJDQ19DSVJfTFNJUkRZQ19Qb3MgICAgICAgICAgICAgICAgICgxNlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19DSVJfTFNJUkRZQ19Nc2sgICAgICAgICAgICAgICAgICgweDFVIDw8IFJDQ19DSVJfTFNJUkRZQ19Qb3MpICAgICAgLyohPCAweDAwMDEwMDAwICovDQojZGVmaW5lIFJDQ19DSVJfTFNJUkRZQyAgICAgICAgICAgICAgICAgICAgIFJDQ19DSVJfTFNJUkRZQ19Nc2sgICAgICAgICAgICAgICAgLyohPCBMU0kgUmVhZHkgSW50ZXJydXB0IENsZWFyICovDQojZGVmaW5lIFJDQ19DSVJfTFNFUkRZQ19Qb3MgICAgICAgICAgICAgICAgICgxN1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19DSVJfTFNFUkRZQ19Nc2sgICAgICAgICAgICAgICAgICgweDFVIDw8IFJDQ19DSVJfTFNFUkRZQ19Qb3MpICAgICAgLyohPCAweDAwMDIwMDAwICovDQojZGVmaW5lIFJDQ19DSVJfTFNFUkRZQyAgICAgICAgICAgICAgICAgICAgIFJDQ19DSVJfTFNFUkRZQ19Nc2sgICAgICAgICAgICAgICAgLyohPCBMU0UgUmVhZHkgSW50ZXJydXB0IENsZWFyICovDQojZGVmaW5lIFJDQ19DSVJfSFNJUkRZQ19Qb3MgICAgICAgICAgICAgICAgICgxOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19DSVJfSFNJUkRZQ19Nc2sgICAgICAgICAgICAgICAgICgweDFVIDw8IFJDQ19DSVJfSFNJUkRZQ19Qb3MpICAgICAgLyohPCAweDAwMDQwMDAwICovDQojZGVmaW5lIFJDQ19DSVJfSFNJUkRZQyAgICAgICAgICAgICAgICAgICAgIFJDQ19DSVJfSFNJUkRZQ19Nc2sgICAgICAgICAgICAgICAgLyohPCBIU0kgUmVhZHkgSW50ZXJydXB0IENsZWFyICovDQojZGVmaW5lIFJDQ19DSVJfSFNFUkRZQ19Qb3MgICAgICAgICAgICAgICAgICgxOVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19DSVJfSFNFUkRZQ19Nc2sgICAgICAgICAgICAgICAgICgweDFVIDw8IFJDQ19DSVJfSFNFUkRZQ19Qb3MpICAgICAgLyohPCAweDAwMDgwMDAwICovDQojZGVmaW5lIFJDQ19DSVJfSFNFUkRZQyAgICAgICAgICAgICAgICAgICAgIFJDQ19DSVJfSFNFUkRZQ19Nc2sgICAgICAgICAgICAgICAgLyohPCBIU0UgUmVhZHkgSW50ZXJydXB0IENsZWFyICovDQojZGVmaW5lIFJDQ19DSVJfUExMUkRZQ19Qb3MgICAgICAgICAgICAgICAgICgyMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19DSVJfUExMUkRZQ19Nc2sgICAgICAgICAgICAgICAgICgweDFVIDw8IFJDQ19DSVJfUExMUkRZQ19Qb3MpICAgICAgLyohPCAweDAwMTAwMDAwICovDQojZGVmaW5lIFJDQ19DSVJfUExMUkRZQyAgICAgICAgICAgICAgICAgICAgIFJDQ19DSVJfUExMUkRZQ19Nc2sgICAgICAgICAgICAgICAgLyohPCBQTEwgUmVhZHkgSW50ZXJydXB0IENsZWFyICovDQojZGVmaW5lIFJDQ19DSVJfTVNJUkRZQ19Qb3MgICAgICAgICAgICAgICAgICgyMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19DSVJfTVNJUkRZQ19Nc2sgICAgICAgICAgICAgICAgICgweDFVIDw8IFJDQ19DSVJfTVNJUkRZQ19Qb3MpICAgICAgLyohPCAweDAwMjAwMDAwICovDQojZGVmaW5lIFJDQ19DSVJfTVNJUkRZQyAgICAgICAgICAgICAgICAgICAgIFJDQ19DSVJfTVNJUkRZQ19Nc2sgICAgICAgICAgICAgICAgLyohPCBNU0kgUmVhZHkgSW50ZXJydXB0IENsZWFyICovDQojZGVmaW5lIFJDQ19DSVJfTFNFQ1NTQ19Qb3MgICAgICAgICAgICAgICAgICgyMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19DSVJfTFNFQ1NTQ19Nc2sgICAgICAgICAgICAgICAgICgweDFVIDw8IFJDQ19DSVJfTFNFQ1NTQ19Qb3MpICAgICAgLyohPCAweDAwNDAwMDAwICovDQojZGVmaW5lIFJDQ19DSVJfTFNFQ1NTQyAgICAgICAgICAgICAgICAgICAgIFJDQ19DSVJfTFNFQ1NTQ19Nc2sgICAgICAgICAgICAgICAgLyohPCBMU0UgQ1NTIEludGVycnVwdCBDbGVhciAqLw0KI2RlZmluZSBSQ0NfQ0lSX0NTU0NfUG9zICAgICAgICAgICAgICAgICAgICAoMjNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQ0lSX0NTU0NfTXNrICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBSQ0NfQ0lSX0NTU0NfUG9zKSAgICAgICAgIC8qITwgMHgwMDgwMDAwMCAqLw0KI2RlZmluZSBSQ0NfQ0lSX0NTU0MgICAgICAgICAgICAgICAgICAgICAgICBSQ0NfQ0lSX0NTU0NfTXNrICAgICAgICAgICAgICAgICAgIC8qITwgQ2xvY2sgU2VjdXJpdHkgU3lzdGVtIEludGVycnVwdCBDbGVhciAqLw0KDQovKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBSQ0NfQUhCUlNUUiByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBSQ0NfQUhCUlNUUl9HUElPQVJTVF9Qb3MgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQUhCUlNUUl9HUElPQVJTVF9Nc2sgICAgICAgICAgICAoMHgxVSA8PCBSQ0NfQUhCUlNUUl9HUElPQVJTVF9Qb3MpIC8qITwgMHgwMDAwMDAwMSAqLw0KI2RlZmluZSBSQ0NfQUhCUlNUUl9HUElPQVJTVCAgICAgICAgICAgICAgICBSQ0NfQUhCUlNUUl9HUElPQVJTVF9Nc2sgICAgICAgICAgIC8qITwgR1BJTyBwb3J0IEEgcmVzZXQgKi8NCiNkZWZpbmUgUkNDX0FIQlJTVFJfR1BJT0JSU1RfUG9zICAgICAgICAgICAgKDFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0FIQlJTVFJfR1BJT0JSU1RfTXNrICAgICAgICAgICAgKDB4MVUgPDwgUkNDX0FIQlJTVFJfR1BJT0JSU1RfUG9zKSAvKiE8IDB4MDAwMDAwMDIgKi8NCiNkZWZpbmUgUkNDX0FIQlJTVFJfR1BJT0JSU1QgICAgICAgICAgICAgICAgUkNDX0FIQlJTVFJfR1BJT0JSU1RfTXNrICAgICAgICAgICAvKiE8IEdQSU8gcG9ydCBCIHJlc2V0ICovDQojZGVmaW5lIFJDQ19BSEJSU1RSX0dQSU9DUlNUX1BvcyAgICAgICAgICAgICgyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19BSEJSU1RSX0dQSU9DUlNUX01zayAgICAgICAgICAgICgweDFVIDw8IFJDQ19BSEJSU1RSX0dQSU9DUlNUX1BvcykgLyohPCAweDAwMDAwMDA0ICovDQojZGVmaW5lIFJDQ19BSEJSU1RSX0dQSU9DUlNUICAgICAgICAgICAgICAgIFJDQ19BSEJSU1RSX0dQSU9DUlNUX01zayAgICAgICAgICAgLyohPCBHUElPIHBvcnQgQyByZXNldCAqLw0KI2RlZmluZSBSQ0NfQUhCUlNUUl9HUElPRFJTVF9Qb3MgICAgICAgICAgICAoM1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQUhCUlNUUl9HUElPRFJTVF9Nc2sgICAgICAgICAgICAoMHgxVSA8PCBSQ0NfQUhCUlNUUl9HUElPRFJTVF9Qb3MpIC8qITwgMHgwMDAwMDAwOCAqLw0KI2RlZmluZSBSQ0NfQUhCUlNUUl9HUElPRFJTVCAgICAgICAgICAgICAgICBSQ0NfQUhCUlNUUl9HUElPRFJTVF9Nc2sgICAgICAgICAgIC8qITwgR1BJTyBwb3J0IEQgcmVzZXQgKi8NCiNkZWZpbmUgUkNDX0FIQlJTVFJfR1BJT0VSU1RfUG9zICAgICAgICAgICAgKDRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0FIQlJTVFJfR1BJT0VSU1RfTXNrICAgICAgICAgICAgKDB4MVUgPDwgUkNDX0FIQlJTVFJfR1BJT0VSU1RfUG9zKSAvKiE8IDB4MDAwMDAwMTAgKi8NCiNkZWZpbmUgUkNDX0FIQlJTVFJfR1BJT0VSU1QgICAgICAgICAgICAgICAgUkNDX0FIQlJTVFJfR1BJT0VSU1RfTXNrICAgICAgICAgICAvKiE8IEdQSU8gcG9ydCBFIHJlc2V0ICovDQojZGVmaW5lIFJDQ19BSEJSU1RSX0dQSU9IUlNUX1BvcyAgICAgICAgICAgICg1VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19BSEJSU1RSX0dQSU9IUlNUX01zayAgICAgICAgICAgICgweDFVIDw8IFJDQ19BSEJSU1RSX0dQSU9IUlNUX1BvcykgLyohPCAweDAwMDAwMDIwICovDQojZGVmaW5lIFJDQ19BSEJSU1RSX0dQSU9IUlNUICAgICAgICAgICAgICAgIFJDQ19BSEJSU1RSX0dQSU9IUlNUX01zayAgICAgICAgICAgLyohPCBHUElPIHBvcnQgSCByZXNldCAqLw0KI2RlZmluZSBSQ0NfQUhCUlNUUl9HUElPRlJTVF9Qb3MgICAgICAgICAgICAoNlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQUhCUlNUUl9HUElPRlJTVF9Nc2sgICAgICAgICAgICAoMHgxVSA8PCBSQ0NfQUhCUlNUUl9HUElPRlJTVF9Qb3MpIC8qITwgMHgwMDAwMDA0MCAqLw0KI2RlZmluZSBSQ0NfQUhCUlNUUl9HUElPRlJTVCAgICAgICAgICAgICAgICBSQ0NfQUhCUlNUUl9HUElPRlJTVF9Nc2sgICAgICAgICAgIC8qITwgR1BJTyBwb3J0IEYgcmVzZXQgKi8NCiNkZWZpbmUgUkNDX0FIQlJTVFJfR1BJT0dSU1RfUG9zICAgICAgICAgICAgKDdVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0FIQlJTVFJfR1BJT0dSU1RfTXNrICAgICAgICAgICAgKDB4MVUgPDwgUkNDX0FIQlJTVFJfR1BJT0dSU1RfUG9zKSAvKiE8IDB4MDAwMDAwODAgKi8NCiNkZWZpbmUgUkNDX0FIQlJTVFJfR1BJT0dSU1QgICAgICAgICAgICAgICAgUkNDX0FIQlJTVFJfR1BJT0dSU1RfTXNrICAgICAgICAgICAvKiE8IEdQSU8gcG9ydCBHIHJlc2V0ICovDQojZGVmaW5lIFJDQ19BSEJSU1RSX0NSQ1JTVF9Qb3MgICAgICAgICAgICAgICgxMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19BSEJSU1RSX0NSQ1JTVF9Nc2sgICAgICAgICAgICAgICgweDFVIDw8IFJDQ19BSEJSU1RSX0NSQ1JTVF9Qb3MpICAgLyohPCAweDAwMDAxMDAwICovDQojZGVmaW5lIFJDQ19BSEJSU1RSX0NSQ1JTVCAgICAgICAgICAgICAgICAgIFJDQ19BSEJSU1RSX0NSQ1JTVF9Nc2sgICAgICAgICAgICAgLyohPCBDUkMgcmVzZXQgKi8NCiNkZWZpbmUgUkNDX0FIQlJTVFJfRkxJVEZSU1RfUG9zICAgICAgICAgICAgKDE1VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0FIQlJTVFJfRkxJVEZSU1RfTXNrICAgICAgICAgICAgKDB4MVUgPDwgUkNDX0FIQlJTVFJfRkxJVEZSU1RfUG9zKSAvKiE8IDB4MDAwMDgwMDAgKi8NCiNkZWZpbmUgUkNDX0FIQlJTVFJfRkxJVEZSU1QgICAgICAgICAgICAgICAgUkNDX0FIQlJTVFJfRkxJVEZSU1RfTXNrICAgICAgICAgICAvKiE8IEZMSVRGIHJlc2V0ICovDQojZGVmaW5lIFJDQ19BSEJSU1RSX0RNQTFSU1RfUG9zICAgICAgICAgICAgICgyNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19BSEJSU1RSX0RNQTFSU1RfTXNrICAgICAgICAgICAgICgweDFVIDw8IFJDQ19BSEJSU1RSX0RNQTFSU1RfUG9zKSAgLyohPCAweDAxMDAwMDAwICovDQojZGVmaW5lIFJDQ19BSEJSU1RSX0RNQTFSU1QgICAgICAgICAgICAgICAgIFJDQ19BSEJSU1RSX0RNQTFSU1RfTXNrICAgICAgICAgICAgLyohPCBETUExIHJlc2V0ICovDQojZGVmaW5lIFJDQ19BSEJSU1RSX0RNQTJSU1RfUG9zICAgICAgICAgICAgICgyNVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19BSEJSU1RSX0RNQTJSU1RfTXNrICAgICAgICAgICAgICgweDFVIDw8IFJDQ19BSEJSU1RSX0RNQTJSU1RfUG9zKSAgLyohPCAweDAyMDAwMDAwICovDQojZGVmaW5lIFJDQ19BSEJSU1RSX0RNQTJSU1QgICAgICAgICAgICAgICAgIFJDQ19BSEJSU1RSX0RNQTJSU1RfTXNrICAgICAgICAgICAgLyohPCBETUEyIHJlc2V0ICovDQogDQovKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBSQ0NfQVBCMlJTVFIgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBSQ0NfQVBCMlJTVFJfU1lTQ0ZHUlNUX1BvcyAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQVBCMlJTVFJfU1lTQ0ZHUlNUX01zayAgICAgICAgICAoMHgxVSA8PCBSQ0NfQVBCMlJTVFJfU1lTQ0ZHUlNUX1BvcykgLyohPCAweDAwMDAwMDAxICovDQojZGVmaW5lIFJDQ19BUEIyUlNUUl9TWVNDRkdSU1QgICAgICAgICAgICAgIFJDQ19BUEIyUlNUUl9TWVNDRkdSU1RfTXNrICAgICAgICAgLyohPCBTeXN0ZW0gQ29uZmlndXJhdGlvbiBTWVNDRkcgcmVzZXQgKi8NCiNkZWZpbmUgUkNDX0FQQjJSU1RSX1RJTTlSU1RfUG9zICAgICAgICAgICAgKDJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0FQQjJSU1RSX1RJTTlSU1RfTXNrICAgICAgICAgICAgKDB4MVUgPDwgUkNDX0FQQjJSU1RSX1RJTTlSU1RfUG9zKSAvKiE8IDB4MDAwMDAwMDQgKi8NCiNkZWZpbmUgUkNDX0FQQjJSU1RSX1RJTTlSU1QgICAgICAgICAgICAgICAgUkNDX0FQQjJSU1RSX1RJTTlSU1RfTXNrICAgICAgICAgICAvKiE8IFRJTTkgcmVzZXQgKi8NCiNkZWZpbmUgUkNDX0FQQjJSU1RSX1RJTTEwUlNUX1BvcyAgICAgICAgICAgKDNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0FQQjJSU1RSX1RJTTEwUlNUX01zayAgICAgICAgICAgKDB4MVUgPDwgUkNDX0FQQjJSU1RSX1RJTTEwUlNUX1BvcykgLyohPCAweDAwMDAwMDA4ICovDQojZGVmaW5lIFJDQ19BUEIyUlNUUl9USU0xMFJTVCAgICAgICAgICAgICAgIFJDQ19BUEIyUlNUUl9USU0xMFJTVF9Nc2sgICAgICAgICAgLyohPCBUSU0xMCByZXNldCAqLw0KI2RlZmluZSBSQ0NfQVBCMlJTVFJfVElNMTFSU1RfUG9zICAgICAgICAgICAoNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQVBCMlJTVFJfVElNMTFSU1RfTXNrICAgICAgICAgICAoMHgxVSA8PCBSQ0NfQVBCMlJTVFJfVElNMTFSU1RfUG9zKSAvKiE8IDB4MDAwMDAwMTAgKi8NCiNkZWZpbmUgUkNDX0FQQjJSU1RSX1RJTTExUlNUICAgICAgICAgICAgICAgUkNDX0FQQjJSU1RSX1RJTTExUlNUX01zayAgICAgICAgICAvKiE8IFRJTTExIHJlc2V0ICovDQojZGVmaW5lIFJDQ19BUEIyUlNUUl9BREMxUlNUX1BvcyAgICAgICAgICAgICg5VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19BUEIyUlNUUl9BREMxUlNUX01zayAgICAgICAgICAgICgweDFVIDw8IFJDQ19BUEIyUlNUUl9BREMxUlNUX1BvcykgLyohPCAweDAwMDAwMjAwICovDQojZGVmaW5lIFJDQ19BUEIyUlNUUl9BREMxUlNUICAgICAgICAgICAgICAgIFJDQ19BUEIyUlNUUl9BREMxUlNUX01zayAgICAgICAgICAgLyohPCBBREMxIHJlc2V0ICovDQojZGVmaW5lIFJDQ19BUEIyUlNUUl9TUEkxUlNUX1BvcyAgICAgICAgICAgICgxMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19BUEIyUlNUUl9TUEkxUlNUX01zayAgICAgICAgICAgICgweDFVIDw8IFJDQ19BUEIyUlNUUl9TUEkxUlNUX1BvcykgLyohPCAweDAwMDAxMDAwICovDQojZGVmaW5lIFJDQ19BUEIyUlNUUl9TUEkxUlNUICAgICAgICAgICAgICAgIFJDQ19BUEIyUlNUUl9TUEkxUlNUX01zayAgICAgICAgICAgLyohPCBTUEkxIHJlc2V0ICovDQojZGVmaW5lIFJDQ19BUEIyUlNUUl9VU0FSVDFSU1RfUG9zICAgICAgICAgICgxNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19BUEIyUlNUUl9VU0FSVDFSU1RfTXNrICAgICAgICAgICgweDFVIDw8IFJDQ19BUEIyUlNUUl9VU0FSVDFSU1RfUG9zKSAvKiE8IDB4MDAwMDQwMDAgKi8NCiNkZWZpbmUgUkNDX0FQQjJSU1RSX1VTQVJUMVJTVCAgICAgICAgICAgICAgUkNDX0FQQjJSU1RSX1VTQVJUMVJTVF9Nc2sgICAgICAgICAvKiE8IFVTQVJUMSByZXNldCAqLw0KDQovKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBSQ0NfQVBCMVJTVFIgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBSQ0NfQVBCMVJTVFJfVElNMlJTVF9Qb3MgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQVBCMVJTVFJfVElNMlJTVF9Nc2sgICAgICAgICAgICAoMHgxVSA8PCBSQ0NfQVBCMVJTVFJfVElNMlJTVF9Qb3MpIC8qITwgMHgwMDAwMDAwMSAqLw0KI2RlZmluZSBSQ0NfQVBCMVJTVFJfVElNMlJTVCAgICAgICAgICAgICAgICBSQ0NfQVBCMVJTVFJfVElNMlJTVF9Nc2sgICAgICAgICAgIC8qITwgVGltZXIgMiByZXNldCAqLw0KI2RlZmluZSBSQ0NfQVBCMVJTVFJfVElNM1JTVF9Qb3MgICAgICAgICAgICAoMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQVBCMVJTVFJfVElNM1JTVF9Nc2sgICAgICAgICAgICAoMHgxVSA8PCBSQ0NfQVBCMVJTVFJfVElNM1JTVF9Qb3MpIC8qITwgMHgwMDAwMDAwMiAqLw0KI2RlZmluZSBSQ0NfQVBCMVJTVFJfVElNM1JTVCAgICAgICAgICAgICAgICBSQ0NfQVBCMVJTVFJfVElNM1JTVF9Nc2sgICAgICAgICAgIC8qITwgVGltZXIgMyByZXNldCAqLw0KI2RlZmluZSBSQ0NfQVBCMVJTVFJfVElNNFJTVF9Qb3MgICAgICAgICAgICAoMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQVBCMVJTVFJfVElNNFJTVF9Nc2sgICAgICAgICAgICAoMHgxVSA8PCBSQ0NfQVBCMVJTVFJfVElNNFJTVF9Qb3MpIC8qITwgMHgwMDAwMDAwNCAqLw0KI2RlZmluZSBSQ0NfQVBCMVJTVFJfVElNNFJTVCAgICAgICAgICAgICAgICBSQ0NfQVBCMVJTVFJfVElNNFJTVF9Nc2sgICAgICAgICAgIC8qITwgVGltZXIgNCByZXNldCAqLw0KI2RlZmluZSBSQ0NfQVBCMVJTVFJfVElNNVJTVF9Qb3MgICAgICAgICAgICAoM1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQVBCMVJTVFJfVElNNVJTVF9Nc2sgICAgICAgICAgICAoMHgxVSA8PCBSQ0NfQVBCMVJTVFJfVElNNVJTVF9Qb3MpIC8qITwgMHgwMDAwMDAwOCAqLw0KI2RlZmluZSBSQ0NfQVBCMVJTVFJfVElNNVJTVCAgICAgICAgICAgICAgICBSQ0NfQVBCMVJTVFJfVElNNVJTVF9Nc2sgICAgICAgICAgIC8qITwgVGltZXIgNSByZXNldCAqLw0KI2RlZmluZSBSQ0NfQVBCMVJTVFJfVElNNlJTVF9Qb3MgICAgICAgICAgICAoNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQVBCMVJTVFJfVElNNlJTVF9Nc2sgICAgICAgICAgICAoMHgxVSA8PCBSQ0NfQVBCMVJTVFJfVElNNlJTVF9Qb3MpIC8qITwgMHgwMDAwMDAxMCAqLw0KI2RlZmluZSBSQ0NfQVBCMVJTVFJfVElNNlJTVCAgICAgICAgICAgICAgICBSQ0NfQVBCMVJTVFJfVElNNlJTVF9Nc2sgICAgICAgICAgIC8qITwgVGltZXIgNiByZXNldCAqLw0KI2RlZmluZSBSQ0NfQVBCMVJTVFJfVElNN1JTVF9Qb3MgICAgICAgICAgICAoNVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQVBCMVJTVFJfVElNN1JTVF9Nc2sgICAgICAgICAgICAoMHgxVSA8PCBSQ0NfQVBCMVJTVFJfVElNN1JTVF9Qb3MpIC8qITwgMHgwMDAwMDAyMCAqLw0KI2RlZmluZSBSQ0NfQVBCMVJTVFJfVElNN1JTVCAgICAgICAgICAgICAgICBSQ0NfQVBCMVJTVFJfVElNN1JTVF9Nc2sgICAgICAgICAgIC8qITwgVGltZXIgNyByZXNldCAqLw0KI2RlZmluZSBSQ0NfQVBCMVJTVFJfTENEUlNUX1BvcyAgICAgICAgICAgICAoOVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQVBCMVJTVFJfTENEUlNUX01zayAgICAgICAgICAgICAoMHgxVSA8PCBSQ0NfQVBCMVJTVFJfTENEUlNUX1BvcykgIC8qITwgMHgwMDAwMDIwMCAqLw0KI2RlZmluZSBSQ0NfQVBCMVJTVFJfTENEUlNUICAgICAgICAgICAgICAgICBSQ0NfQVBCMVJTVFJfTENEUlNUX01zayAgICAgICAgICAgIC8qITwgTENEIHJlc2V0ICovDQojZGVmaW5lIFJDQ19BUEIxUlNUUl9XV0RHUlNUX1BvcyAgICAgICAgICAgICgxMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19BUEIxUlNUUl9XV0RHUlNUX01zayAgICAgICAgICAgICgweDFVIDw8IFJDQ19BUEIxUlNUUl9XV0RHUlNUX1BvcykgLyohPCAweDAwMDAwODAwICovDQojZGVmaW5lIFJDQ19BUEIxUlNUUl9XV0RHUlNUICAgICAgICAgICAgICAgIFJDQ19BUEIxUlNUUl9XV0RHUlNUX01zayAgICAgICAgICAgLyohPCBXaW5kb3cgV2F0Y2hkb2cgcmVzZXQgKi8NCiNkZWZpbmUgUkNDX0FQQjFSU1RSX1NQSTJSU1RfUG9zICAgICAgICAgICAgKDE0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0FQQjFSU1RSX1NQSTJSU1RfTXNrICAgICAgICAgICAgKDB4MVUgPDwgUkNDX0FQQjFSU1RSX1NQSTJSU1RfUG9zKSAvKiE8IDB4MDAwMDQwMDAgKi8NCiNkZWZpbmUgUkNDX0FQQjFSU1RSX1NQSTJSU1QgICAgICAgICAgICAgICAgUkNDX0FQQjFSU1RSX1NQSTJSU1RfTXNrICAgICAgICAgICAvKiE8IFNQSSAyIHJlc2V0ICovDQojZGVmaW5lIFJDQ19BUEIxUlNUUl9TUEkzUlNUX1BvcyAgICAgICAgICAgICgxNVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19BUEIxUlNUUl9TUEkzUlNUX01zayAgICAgICAgICAgICgweDFVIDw8IFJDQ19BUEIxUlNUUl9TUEkzUlNUX1BvcykgLyohPCAweDAwMDA4MDAwICovDQojZGVmaW5lIFJDQ19BUEIxUlNUUl9TUEkzUlNUICAgICAgICAgICAgICAgIFJDQ19BUEIxUlNUUl9TUEkzUlNUX01zayAgICAgICAgICAgLyohPCBTUEkgMyByZXNldCAqLw0KI2RlZmluZSBSQ0NfQVBCMVJTVFJfVVNBUlQyUlNUX1BvcyAgICAgICAgICAoMTdVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQVBCMVJTVFJfVVNBUlQyUlNUX01zayAgICAgICAgICAoMHgxVSA8PCBSQ0NfQVBCMVJTVFJfVVNBUlQyUlNUX1BvcykgLyohPCAweDAwMDIwMDAwICovDQojZGVmaW5lIFJDQ19BUEIxUlNUUl9VU0FSVDJSU1QgICAgICAgICAgICAgIFJDQ19BUEIxUlNUUl9VU0FSVDJSU1RfTXNrICAgICAgICAgLyohPCBVU0FSVCAyIHJlc2V0ICovDQojZGVmaW5lIFJDQ19BUEIxUlNUUl9VU0FSVDNSU1RfUG9zICAgICAgICAgICgxOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19BUEIxUlNUUl9VU0FSVDNSU1RfTXNrICAgICAgICAgICgweDFVIDw8IFJDQ19BUEIxUlNUUl9VU0FSVDNSU1RfUG9zKSAvKiE8IDB4MDAwNDAwMDAgKi8NCiNkZWZpbmUgUkNDX0FQQjFSU1RSX1VTQVJUM1JTVCAgICAgICAgICAgICAgUkNDX0FQQjFSU1RSX1VTQVJUM1JTVF9Nc2sgICAgICAgICAvKiE8IFVTQVJUIDMgcmVzZXQgKi8NCiNkZWZpbmUgUkNDX0FQQjFSU1RSX1VBUlQ0UlNUX1BvcyAgICAgICAgICAgKDE5VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0FQQjFSU1RSX1VBUlQ0UlNUX01zayAgICAgICAgICAgKDB4MVUgPDwgUkNDX0FQQjFSU1RSX1VBUlQ0UlNUX1BvcykgLyohPCAweDAwMDgwMDAwICovDQojZGVmaW5lIFJDQ19BUEIxUlNUUl9VQVJUNFJTVCAgICAgICAgICAgICAgIFJDQ19BUEIxUlNUUl9VQVJUNFJTVF9Nc2sgICAgICAgICAgLyohPCBVQVJUIDQgcmVzZXQgKi8NCiNkZWZpbmUgUkNDX0FQQjFSU1RSX1VBUlQ1UlNUX1BvcyAgICAgICAgICAgKDIwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0FQQjFSU1RSX1VBUlQ1UlNUX01zayAgICAgICAgICAgKDB4MVUgPDwgUkNDX0FQQjFSU1RSX1VBUlQ1UlNUX1BvcykgLyohPCAweDAwMTAwMDAwICovDQojZGVmaW5lIFJDQ19BUEIxUlNUUl9VQVJUNVJTVCAgICAgICAgICAgICAgIFJDQ19BUEIxUlNUUl9VQVJUNVJTVF9Nc2sgICAgICAgICAgLyohPCBVQVJUIDUgcmVzZXQgKi8NCiNkZWZpbmUgUkNDX0FQQjFSU1RSX0kyQzFSU1RfUG9zICAgICAgICAgICAgKDIxVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0FQQjFSU1RSX0kyQzFSU1RfTXNrICAgICAgICAgICAgKDB4MVUgPDwgUkNDX0FQQjFSU1RSX0kyQzFSU1RfUG9zKSAvKiE8IDB4MDAyMDAwMDAgKi8NCiNkZWZpbmUgUkNDX0FQQjFSU1RSX0kyQzFSU1QgICAgICAgICAgICAgICAgUkNDX0FQQjFSU1RSX0kyQzFSU1RfTXNrICAgICAgICAgICAvKiE8IEkyQyAxIHJlc2V0ICovDQojZGVmaW5lIFJDQ19BUEIxUlNUUl9JMkMyUlNUX1BvcyAgICAgICAgICAgICgyMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19BUEIxUlNUUl9JMkMyUlNUX01zayAgICAgICAgICAgICgweDFVIDw8IFJDQ19BUEIxUlNUUl9JMkMyUlNUX1BvcykgLyohPCAweDAwNDAwMDAwICovDQojZGVmaW5lIFJDQ19BUEIxUlNUUl9JMkMyUlNUICAgICAgICAgICAgICAgIFJDQ19BUEIxUlNUUl9JMkMyUlNUX01zayAgICAgICAgICAgLyohPCBJMkMgMiByZXNldCAqLw0KI2RlZmluZSBSQ0NfQVBCMVJTVFJfVVNCUlNUX1BvcyAgICAgICAgICAgICAoMjNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQVBCMVJTVFJfVVNCUlNUX01zayAgICAgICAgICAgICAoMHgxVSA8PCBSQ0NfQVBCMVJTVFJfVVNCUlNUX1BvcykgIC8qITwgMHgwMDgwMDAwMCAqLw0KI2RlZmluZSBSQ0NfQVBCMVJTVFJfVVNCUlNUICAgICAgICAgICAgICAgICBSQ0NfQVBCMVJTVFJfVVNCUlNUX01zayAgICAgICAgICAgIC8qITwgVVNCIHJlc2V0ICovDQojZGVmaW5lIFJDQ19BUEIxUlNUUl9QV1JSU1RfUG9zICAgICAgICAgICAgICgyOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19BUEIxUlNUUl9QV1JSU1RfTXNrICAgICAgICAgICAgICgweDFVIDw8IFJDQ19BUEIxUlNUUl9QV1JSU1RfUG9zKSAgLyohPCAweDEwMDAwMDAwICovDQojZGVmaW5lIFJDQ19BUEIxUlNUUl9QV1JSU1QgICAgICAgICAgICAgICAgIFJDQ19BUEIxUlNUUl9QV1JSU1RfTXNrICAgICAgICAgICAgLyohPCBQb3dlciBpbnRlcmZhY2UgcmVzZXQgKi8NCiNkZWZpbmUgUkNDX0FQQjFSU1RSX0RBQ1JTVF9Qb3MgICAgICAgICAgICAgKDI5VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0FQQjFSU1RSX0RBQ1JTVF9Nc2sgICAgICAgICAgICAgKDB4MVUgPDwgUkNDX0FQQjFSU1RSX0RBQ1JTVF9Qb3MpICAvKiE8IDB4MjAwMDAwMDAgKi8NCiNkZWZpbmUgUkNDX0FQQjFSU1RSX0RBQ1JTVCAgICAgICAgICAgICAgICAgUkNDX0FQQjFSU1RSX0RBQ1JTVF9Nc2sgICAgICAgICAgICAvKiE8IERBQyBpbnRlcmZhY2UgcmVzZXQgKi8NCiNkZWZpbmUgUkNDX0FQQjFSU1RSX0NPTVBSU1RfUG9zICAgICAgICAgICAgKDMxVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0FQQjFSU1RSX0NPTVBSU1RfTXNrICAgICAgICAgICAgKDB4MVUgPDwgUkNDX0FQQjFSU1RSX0NPTVBSU1RfUG9zKSAvKiE8IDB4ODAwMDAwMDAgKi8NCiNkZWZpbmUgUkNDX0FQQjFSU1RSX0NPTVBSU1QgICAgICAgICAgICAgICAgUkNDX0FQQjFSU1RSX0NPTVBSU1RfTXNrICAgICAgICAgICAvKiE8IENvbXBhcmF0b3IgaW50ZXJmYWNlIHJlc2V0ICovDQoNCi8qKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBSQ0NfQUhCRU5SIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIFJDQ19BSEJFTlJfR1BJT0FFTl9Qb3MgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19BSEJFTlJfR1BJT0FFTl9Nc2sgICAgICAgICAgICAgICgweDFVIDw8IFJDQ19BSEJFTlJfR1BJT0FFTl9Qb3MpICAgLyohPCAweDAwMDAwMDAxICovDQojZGVmaW5lIFJDQ19BSEJFTlJfR1BJT0FFTiAgICAgICAgICAgICAgICAgIFJDQ19BSEJFTlJfR1BJT0FFTl9Nc2sgICAgICAgICAgICAgLyohPCBHUElPIHBvcnQgQSBjbG9jayBlbmFibGUgKi8NCiNkZWZpbmUgUkNDX0FIQkVOUl9HUElPQkVOX1BvcyAgICAgICAgICAgICAgKDFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0FIQkVOUl9HUElPQkVOX01zayAgICAgICAgICAgICAgKDB4MVUgPDwgUkNDX0FIQkVOUl9HUElPQkVOX1BvcykgICAvKiE8IDB4MDAwMDAwMDIgKi8NCiNkZWZpbmUgUkNDX0FIQkVOUl9HUElPQkVOICAgICAgICAgICAgICAgICAgUkNDX0FIQkVOUl9HUElPQkVOX01zayAgICAgICAgICAgICAvKiE8IEdQSU8gcG9ydCBCIGNsb2NrIGVuYWJsZSAqLw0KI2RlZmluZSBSQ0NfQUhCRU5SX0dQSU9DRU5fUG9zICAgICAgICAgICAgICAoMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQUhCRU5SX0dQSU9DRU5fTXNrICAgICAgICAgICAgICAoMHgxVSA8PCBSQ0NfQUhCRU5SX0dQSU9DRU5fUG9zKSAgIC8qITwgMHgwMDAwMDAwNCAqLw0KI2RlZmluZSBSQ0NfQUhCRU5SX0dQSU9DRU4gICAgICAgICAgICAgICAgICBSQ0NfQUhCRU5SX0dQSU9DRU5fTXNrICAgICAgICAgICAgIC8qITwgR1BJTyBwb3J0IEMgY2xvY2sgZW5hYmxlICovDQojZGVmaW5lIFJDQ19BSEJFTlJfR1BJT0RFTl9Qb3MgICAgICAgICAgICAgICgzVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19BSEJFTlJfR1BJT0RFTl9Nc2sgICAgICAgICAgICAgICgweDFVIDw8IFJDQ19BSEJFTlJfR1BJT0RFTl9Qb3MpICAgLyohPCAweDAwMDAwMDA4ICovDQojZGVmaW5lIFJDQ19BSEJFTlJfR1BJT0RFTiAgICAgICAgICAgICAgICAgIFJDQ19BSEJFTlJfR1BJT0RFTl9Nc2sgICAgICAgICAgICAgLyohPCBHUElPIHBvcnQgRCBjbG9jayBlbmFibGUgKi8NCiNkZWZpbmUgUkNDX0FIQkVOUl9HUElPRUVOX1BvcyAgICAgICAgICAgICAgKDRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0FIQkVOUl9HUElPRUVOX01zayAgICAgICAgICAgICAgKDB4MVUgPDwgUkNDX0FIQkVOUl9HUElPRUVOX1BvcykgICAvKiE8IDB4MDAwMDAwMTAgKi8NCiNkZWZpbmUgUkNDX0FIQkVOUl9HUElPRUVOICAgICAgICAgICAgICAgICAgUkNDX0FIQkVOUl9HUElPRUVOX01zayAgICAgICAgICAgICAvKiE8IEdQSU8gcG9ydCBFIGNsb2NrIGVuYWJsZSAqLw0KI2RlZmluZSBSQ0NfQUhCRU5SX0dQSU9IRU5fUG9zICAgICAgICAgICAgICAoNVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQUhCRU5SX0dQSU9IRU5fTXNrICAgICAgICAgICAgICAoMHgxVSA8PCBSQ0NfQUhCRU5SX0dQSU9IRU5fUG9zKSAgIC8qITwgMHgwMDAwMDAyMCAqLw0KI2RlZmluZSBSQ0NfQUhCRU5SX0dQSU9IRU4gICAgICAgICAgICAgICAgICBSQ0NfQUhCRU5SX0dQSU9IRU5fTXNrICAgICAgICAgICAgIC8qITwgR1BJTyBwb3J0IEggY2xvY2sgZW5hYmxlICovDQojZGVmaW5lIFJDQ19BSEJFTlJfR1BJT0ZFTl9Qb3MgICAgICAgICAgICAgICg2VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19BSEJFTlJfR1BJT0ZFTl9Nc2sgICAgICAgICAgICAgICgweDFVIDw8IFJDQ19BSEJFTlJfR1BJT0ZFTl9Qb3MpICAgLyohPCAweDAwMDAwMDQwICovDQojZGVmaW5lIFJDQ19BSEJFTlJfR1BJT0ZFTiAgICAgICAgICAgICAgICAgIFJDQ19BSEJFTlJfR1BJT0ZFTl9Nc2sgICAgICAgICAgICAgLyohPCBHUElPIHBvcnQgRiBjbG9jayBlbmFibGUgKi8NCiNkZWZpbmUgUkNDX0FIQkVOUl9HUElPR0VOX1BvcyAgICAgICAgICAgICAgKDdVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0FIQkVOUl9HUElPR0VOX01zayAgICAgICAgICAgICAgKDB4MVUgPDwgUkNDX0FIQkVOUl9HUElPR0VOX1BvcykgICAvKiE8IDB4MDAwMDAwODAgKi8NCiNkZWZpbmUgUkNDX0FIQkVOUl9HUElPR0VOICAgICAgICAgICAgICAgICAgUkNDX0FIQkVOUl9HUElPR0VOX01zayAgICAgICAgICAgICAvKiE8IEdQSU8gcG9ydCBHIGNsb2NrIGVuYWJsZSAqLw0KI2RlZmluZSBSQ0NfQUhCRU5SX0NSQ0VOX1BvcyAgICAgICAgICAgICAgICAoMTJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQUhCRU5SX0NSQ0VOX01zayAgICAgICAgICAgICAgICAoMHgxVSA8PCBSQ0NfQUhCRU5SX0NSQ0VOX1BvcykgICAgIC8qITwgMHgwMDAwMTAwMCAqLw0KI2RlZmluZSBSQ0NfQUhCRU5SX0NSQ0VOICAgICAgICAgICAgICAgICAgICBSQ0NfQUhCRU5SX0NSQ0VOX01zayAgICAgICAgICAgICAgIC8qITwgQ1JDIGNsb2NrIGVuYWJsZSAqLw0KI2RlZmluZSBSQ0NfQUhCRU5SX0ZMSVRGRU5fUG9zICAgICAgICAgICAgICAoMTVVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQUhCRU5SX0ZMSVRGRU5fTXNrICAgICAgICAgICAgICAoMHgxVSA8PCBSQ0NfQUhCRU5SX0ZMSVRGRU5fUG9zKSAgIC8qITwgMHgwMDAwODAwMCAqLw0KI2RlZmluZSBSQ0NfQUhCRU5SX0ZMSVRGRU4gICAgICAgICAgICAgICAgICBSQ0NfQUhCRU5SX0ZMSVRGRU5fTXNrICAgICAgICAgICAgIC8qITwgRkxJVEYgY2xvY2sgZW5hYmxlIChoYXMgZWZmZWN0IG9ubHkgd2hlbg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aGUgRmxhc2ggbWVtb3J5IGlzIGluIHBvd2VyIGRvd24gbW9kZSkgKi8NCiNkZWZpbmUgUkNDX0FIQkVOUl9ETUExRU5fUG9zICAgICAgICAgICAgICAgKDI0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0FIQkVOUl9ETUExRU5fTXNrICAgICAgICAgICAgICAgKDB4MVUgPDwgUkNDX0FIQkVOUl9ETUExRU5fUG9zKSAgICAvKiE8IDB4MDEwMDAwMDAgKi8NCiNkZWZpbmUgUkNDX0FIQkVOUl9ETUExRU4gICAgICAgICAgICAgICAgICAgUkNDX0FIQkVOUl9ETUExRU5fTXNrICAgICAgICAgICAgICAvKiE8IERNQTEgY2xvY2sgZW5hYmxlICovDQojZGVmaW5lIFJDQ19BSEJFTlJfRE1BMkVOX1BvcyAgICAgICAgICAgICAgICgyNVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19BSEJFTlJfRE1BMkVOX01zayAgICAgICAgICAgICAgICgweDFVIDw8IFJDQ19BSEJFTlJfRE1BMkVOX1BvcykgICAgLyohPCAweDAyMDAwMDAwICovDQojZGVmaW5lIFJDQ19BSEJFTlJfRE1BMkVOICAgICAgICAgICAgICAgICAgIFJDQ19BSEJFTlJfRE1BMkVOX01zayAgICAgICAgICAgICAgLyohPCBETUEyIGNsb2NrIGVuYWJsZSAqLw0KDQovKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgUkNDX0FQQjJFTlIgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBSQ0NfQVBCMkVOUl9TWVNDRkdFTl9Qb3MgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQVBCMkVOUl9TWVNDRkdFTl9Nc2sgICAgICAgICAgICAoMHgxVSA8PCBSQ0NfQVBCMkVOUl9TWVNDRkdFTl9Qb3MpIC8qITwgMHgwMDAwMDAwMSAqLw0KI2RlZmluZSBSQ0NfQVBCMkVOUl9TWVNDRkdFTiAgICAgICAgICAgICAgICBSQ0NfQVBCMkVOUl9TWVNDRkdFTl9Nc2sgICAgICAgICAgIC8qITwgU3lzdGVtIENvbmZpZ3VyYXRpb24gU1lTQ0ZHIGNsb2NrIGVuYWJsZSAqLw0KI2RlZmluZSBSQ0NfQVBCMkVOUl9USU05RU5fUG9zICAgICAgICAgICAgICAoMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQVBCMkVOUl9USU05RU5fTXNrICAgICAgICAgICAgICAoMHgxVSA8PCBSQ0NfQVBCMkVOUl9USU05RU5fUG9zKSAgIC8qITwgMHgwMDAwMDAwNCAqLw0KI2RlZmluZSBSQ0NfQVBCMkVOUl9USU05RU4gICAgICAgICAgICAgICAgICBSQ0NfQVBCMkVOUl9USU05RU5fTXNrICAgICAgICAgICAgIC8qITwgVElNOSBpbnRlcmZhY2UgY2xvY2sgZW5hYmxlICovDQojZGVmaW5lIFJDQ19BUEIyRU5SX1RJTTEwRU5fUG9zICAgICAgICAgICAgICgzVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19BUEIyRU5SX1RJTTEwRU5fTXNrICAgICAgICAgICAgICgweDFVIDw8IFJDQ19BUEIyRU5SX1RJTTEwRU5fUG9zKSAgLyohPCAweDAwMDAwMDA4ICovDQojZGVmaW5lIFJDQ19BUEIyRU5SX1RJTTEwRU4gICAgICAgICAgICAgICAgIFJDQ19BUEIyRU5SX1RJTTEwRU5fTXNrICAgICAgICAgICAgLyohPCBUSU0xMCBpbnRlcmZhY2UgY2xvY2sgZW5hYmxlICovDQojZGVmaW5lIFJDQ19BUEIyRU5SX1RJTTExRU5fUG9zICAgICAgICAgICAgICg0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19BUEIyRU5SX1RJTTExRU5fTXNrICAgICAgICAgICAgICgweDFVIDw8IFJDQ19BUEIyRU5SX1RJTTExRU5fUG9zKSAgLyohPCAweDAwMDAwMDEwICovDQojZGVmaW5lIFJDQ19BUEIyRU5SX1RJTTExRU4gICAgICAgICAgICAgICAgIFJDQ19BUEIyRU5SX1RJTTExRU5fTXNrICAgICAgICAgICAgLyohPCBUSU0xMSBUaW1lciBjbG9jayBlbmFibGUgKi8NCiNkZWZpbmUgUkNDX0FQQjJFTlJfQURDMUVOX1BvcyAgICAgICAgICAgICAgKDlVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0FQQjJFTlJfQURDMUVOX01zayAgICAgICAgICAgICAgKDB4MVUgPDwgUkNDX0FQQjJFTlJfQURDMUVOX1BvcykgICAvKiE8IDB4MDAwMDAyMDAgKi8NCiNkZWZpbmUgUkNDX0FQQjJFTlJfQURDMUVOICAgICAgICAgICAgICAgICAgUkNDX0FQQjJFTlJfQURDMUVOX01zayAgICAgICAgICAgICAvKiE8IEFEQzEgY2xvY2sgZW5hYmxlICovDQojZGVmaW5lIFJDQ19BUEIyRU5SX1NQSTFFTl9Qb3MgICAgICAgICAgICAgICgxMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19BUEIyRU5SX1NQSTFFTl9Nc2sgICAgICAgICAgICAgICgweDFVIDw8IFJDQ19BUEIyRU5SX1NQSTFFTl9Qb3MpICAgLyohPCAweDAwMDAxMDAwICovDQojZGVmaW5lIFJDQ19BUEIyRU5SX1NQSTFFTiAgICAgICAgICAgICAgICAgIFJDQ19BUEIyRU5SX1NQSTFFTl9Nc2sgICAgICAgICAgICAgLyohPCBTUEkxIGNsb2NrIGVuYWJsZSAqLw0KI2RlZmluZSBSQ0NfQVBCMkVOUl9VU0FSVDFFTl9Qb3MgICAgICAgICAgICAoMTRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQVBCMkVOUl9VU0FSVDFFTl9Nc2sgICAgICAgICAgICAoMHgxVSA8PCBSQ0NfQVBCMkVOUl9VU0FSVDFFTl9Qb3MpIC8qITwgMHgwMDAwNDAwMCAqLw0KI2RlZmluZSBSQ0NfQVBCMkVOUl9VU0FSVDFFTiAgICAgICAgICAgICAgICBSQ0NfQVBCMkVOUl9VU0FSVDFFTl9Nc2sgICAgICAgICAgIC8qITwgVVNBUlQxIGNsb2NrIGVuYWJsZSAqLw0KDQovKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBSQ0NfQVBCMUVOUiByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBSQ0NfQVBCMUVOUl9USU0yRU5fUG9zICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQVBCMUVOUl9USU0yRU5fTXNrICAgICAgICAgICAgICAoMHgxVSA8PCBSQ0NfQVBCMUVOUl9USU0yRU5fUG9zKSAgIC8qITwgMHgwMDAwMDAwMSAqLw0KI2RlZmluZSBSQ0NfQVBCMUVOUl9USU0yRU4gICAgICAgICAgICAgICAgICBSQ0NfQVBCMUVOUl9USU0yRU5fTXNrICAgICAgICAgICAgIC8qITwgVGltZXIgMiBjbG9jayBlbmFibGVkKi8NCiNkZWZpbmUgUkNDX0FQQjFFTlJfVElNM0VOX1BvcyAgICAgICAgICAgICAgKDFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0FQQjFFTlJfVElNM0VOX01zayAgICAgICAgICAgICAgKDB4MVUgPDwgUkNDX0FQQjFFTlJfVElNM0VOX1BvcykgICAvKiE8IDB4MDAwMDAwMDIgKi8NCiNkZWZpbmUgUkNDX0FQQjFFTlJfVElNM0VOICAgICAgICAgICAgICAgICAgUkNDX0FQQjFFTlJfVElNM0VOX01zayAgICAgICAgICAgICAvKiE8IFRpbWVyIDMgY2xvY2sgZW5hYmxlICovDQojZGVmaW5lIFJDQ19BUEIxRU5SX1RJTTRFTl9Qb3MgICAgICAgICAgICAgICgyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19BUEIxRU5SX1RJTTRFTl9Nc2sgICAgICAgICAgICAgICgweDFVIDw8IFJDQ19BUEIxRU5SX1RJTTRFTl9Qb3MpICAgLyohPCAweDAwMDAwMDA0ICovDQojZGVmaW5lIFJDQ19BUEIxRU5SX1RJTTRFTiAgICAgICAgICAgICAgICAgIFJDQ19BUEIxRU5SX1RJTTRFTl9Nc2sgICAgICAgICAgICAgLyohPCBUaW1lciA0IGNsb2NrIGVuYWJsZSAqLw0KI2RlZmluZSBSQ0NfQVBCMUVOUl9USU01RU5fUG9zICAgICAgICAgICAgICAoM1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQVBCMUVOUl9USU01RU5fTXNrICAgICAgICAgICAgICAoMHgxVSA8PCBSQ0NfQVBCMUVOUl9USU01RU5fUG9zKSAgIC8qITwgMHgwMDAwMDAwOCAqLw0KI2RlZmluZSBSQ0NfQVBCMUVOUl9USU01RU4gICAgICAgICAgICAgICAgICBSQ0NfQVBCMUVOUl9USU01RU5fTXNrICAgICAgICAgICAgIC8qITwgVGltZXIgNSBjbG9jayBlbmFibGUgKi8NCiNkZWZpbmUgUkNDX0FQQjFFTlJfVElNNkVOX1BvcyAgICAgICAgICAgICAgKDRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0FQQjFFTlJfVElNNkVOX01zayAgICAgICAgICAgICAgKDB4MVUgPDwgUkNDX0FQQjFFTlJfVElNNkVOX1BvcykgICAvKiE8IDB4MDAwMDAwMTAgKi8NCiNkZWZpbmUgUkNDX0FQQjFFTlJfVElNNkVOICAgICAgICAgICAgICAgICAgUkNDX0FQQjFFTlJfVElNNkVOX01zayAgICAgICAgICAgICAvKiE8IFRpbWVyIDYgY2xvY2sgZW5hYmxlICovDQojZGVmaW5lIFJDQ19BUEIxRU5SX1RJTTdFTl9Qb3MgICAgICAgICAgICAgICg1VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19BUEIxRU5SX1RJTTdFTl9Nc2sgICAgICAgICAgICAgICgweDFVIDw8IFJDQ19BUEIxRU5SX1RJTTdFTl9Qb3MpICAgLyohPCAweDAwMDAwMDIwICovDQojZGVmaW5lIFJDQ19BUEIxRU5SX1RJTTdFTiAgICAgICAgICAgICAgICAgIFJDQ19BUEIxRU5SX1RJTTdFTl9Nc2sgICAgICAgICAgICAgLyohPCBUaW1lciA3IGNsb2NrIGVuYWJsZSAqLw0KI2RlZmluZSBSQ0NfQVBCMUVOUl9MQ0RFTl9Qb3MgICAgICAgICAgICAgICAoOVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQVBCMUVOUl9MQ0RFTl9Nc2sgICAgICAgICAgICAgICAoMHgxVSA8PCBSQ0NfQVBCMUVOUl9MQ0RFTl9Qb3MpICAgIC8qITwgMHgwMDAwMDIwMCAqLw0KI2RlZmluZSBSQ0NfQVBCMUVOUl9MQ0RFTiAgICAgICAgICAgICAgICAgICBSQ0NfQVBCMUVOUl9MQ0RFTl9Nc2sgICAgICAgICAgICAgIC8qITwgTENEIGNsb2NrIGVuYWJsZSAqLw0KI2RlZmluZSBSQ0NfQVBCMUVOUl9XV0RHRU5fUG9zICAgICAgICAgICAgICAoMTFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQVBCMUVOUl9XV0RHRU5fTXNrICAgICAgICAgICAgICAoMHgxVSA8PCBSQ0NfQVBCMUVOUl9XV0RHRU5fUG9zKSAgIC8qITwgMHgwMDAwMDgwMCAqLw0KI2RlZmluZSBSQ0NfQVBCMUVOUl9XV0RHRU4gICAgICAgICAgICAgICAgICBSQ0NfQVBCMUVOUl9XV0RHRU5fTXNrICAgICAgICAgICAgIC8qITwgV2luZG93IFdhdGNoZG9nIGNsb2NrIGVuYWJsZSAqLw0KI2RlZmluZSBSQ0NfQVBCMUVOUl9TUEkyRU5fUG9zICAgICAgICAgICAgICAoMTRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQVBCMUVOUl9TUEkyRU5fTXNrICAgICAgICAgICAgICAoMHgxVSA8PCBSQ0NfQVBCMUVOUl9TUEkyRU5fUG9zKSAgIC8qITwgMHgwMDAwNDAwMCAqLw0KI2RlZmluZSBSQ0NfQVBCMUVOUl9TUEkyRU4gICAgICAgICAgICAgICAgICBSQ0NfQVBCMUVOUl9TUEkyRU5fTXNrICAgICAgICAgICAgIC8qITwgU1BJIDIgY2xvY2sgZW5hYmxlICovDQojZGVmaW5lIFJDQ19BUEIxRU5SX1NQSTNFTl9Qb3MgICAgICAgICAgICAgICgxNVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19BUEIxRU5SX1NQSTNFTl9Nc2sgICAgICAgICAgICAgICgweDFVIDw8IFJDQ19BUEIxRU5SX1NQSTNFTl9Qb3MpICAgLyohPCAweDAwMDA4MDAwICovDQojZGVmaW5lIFJDQ19BUEIxRU5SX1NQSTNFTiAgICAgICAgICAgICAgICAgIFJDQ19BUEIxRU5SX1NQSTNFTl9Nc2sgICAgICAgICAgICAgLyohPCBTUEkgMyBjbG9jayBlbmFibGUgKi8NCiNkZWZpbmUgUkNDX0FQQjFFTlJfVVNBUlQyRU5fUG9zICAgICAgICAgICAgKDE3VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0FQQjFFTlJfVVNBUlQyRU5fTXNrICAgICAgICAgICAgKDB4MVUgPDwgUkNDX0FQQjFFTlJfVVNBUlQyRU5fUG9zKSAvKiE8IDB4MDAwMjAwMDAgKi8NCiNkZWZpbmUgUkNDX0FQQjFFTlJfVVNBUlQyRU4gICAgICAgICAgICAgICAgUkNDX0FQQjFFTlJfVVNBUlQyRU5fTXNrICAgICAgICAgICAvKiE8IFVTQVJUIDIgY2xvY2sgZW5hYmxlICovDQojZGVmaW5lIFJDQ19BUEIxRU5SX1VTQVJUM0VOX1BvcyAgICAgICAgICAgICgxOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19BUEIxRU5SX1VTQVJUM0VOX01zayAgICAgICAgICAgICgweDFVIDw8IFJDQ19BUEIxRU5SX1VTQVJUM0VOX1BvcykgLyohPCAweDAwMDQwMDAwICovDQojZGVmaW5lIFJDQ19BUEIxRU5SX1VTQVJUM0VOICAgICAgICAgICAgICAgIFJDQ19BUEIxRU5SX1VTQVJUM0VOX01zayAgICAgICAgICAgLyohPCBVU0FSVCAzIGNsb2NrIGVuYWJsZSAqLw0KI2RlZmluZSBSQ0NfQVBCMUVOUl9VQVJUNEVOX1BvcyAgICAgICAgICAgICAoMTlVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQVBCMUVOUl9VQVJUNEVOX01zayAgICAgICAgICAgICAoMHgxVSA8PCBSQ0NfQVBCMUVOUl9VQVJUNEVOX1BvcykgIC8qITwgMHgwMDA4MDAwMCAqLw0KI2RlZmluZSBSQ0NfQVBCMUVOUl9VQVJUNEVOICAgICAgICAgICAgICAgICBSQ0NfQVBCMUVOUl9VQVJUNEVOX01zayAgICAgICAgICAgIC8qITwgVUFSVCA0IGNsb2NrIGVuYWJsZSAqLw0KI2RlZmluZSBSQ0NfQVBCMUVOUl9VQVJUNUVOX1BvcyAgICAgICAgICAgICAoMjBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQVBCMUVOUl9VQVJUNUVOX01zayAgICAgICAgICAgICAoMHgxVSA8PCBSQ0NfQVBCMUVOUl9VQVJUNUVOX1BvcykgIC8qITwgMHgwMDEwMDAwMCAqLw0KI2RlZmluZSBSQ0NfQVBCMUVOUl9VQVJUNUVOICAgICAgICAgICAgICAgICBSQ0NfQVBCMUVOUl9VQVJUNUVOX01zayAgICAgICAgICAgIC8qITwgVUFSVCA1IGNsb2NrIGVuYWJsZSAqLw0KI2RlZmluZSBSQ0NfQVBCMUVOUl9JMkMxRU5fUG9zICAgICAgICAgICAgICAoMjFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQVBCMUVOUl9JMkMxRU5fTXNrICAgICAgICAgICAgICAoMHgxVSA8PCBSQ0NfQVBCMUVOUl9JMkMxRU5fUG9zKSAgIC8qITwgMHgwMDIwMDAwMCAqLw0KI2RlZmluZSBSQ0NfQVBCMUVOUl9JMkMxRU4gICAgICAgICAgICAgICAgICBSQ0NfQVBCMUVOUl9JMkMxRU5fTXNrICAgICAgICAgICAgIC8qITwgSTJDIDEgY2xvY2sgZW5hYmxlICovDQojZGVmaW5lIFJDQ19BUEIxRU5SX0kyQzJFTl9Qb3MgICAgICAgICAgICAgICgyMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19BUEIxRU5SX0kyQzJFTl9Nc2sgICAgICAgICAgICAgICgweDFVIDw8IFJDQ19BUEIxRU5SX0kyQzJFTl9Qb3MpICAgLyohPCAweDAwNDAwMDAwICovDQojZGVmaW5lIFJDQ19BUEIxRU5SX0kyQzJFTiAgICAgICAgICAgICAgICAgIFJDQ19BUEIxRU5SX0kyQzJFTl9Nc2sgICAgICAgICAgICAgLyohPCBJMkMgMiBjbG9jayBlbmFibGUgKi8NCiNkZWZpbmUgUkNDX0FQQjFFTlJfVVNCRU5fUG9zICAgICAgICAgICAgICAgKDIzVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0FQQjFFTlJfVVNCRU5fTXNrICAgICAgICAgICAgICAgKDB4MVUgPDwgUkNDX0FQQjFFTlJfVVNCRU5fUG9zKSAgICAvKiE8IDB4MDA4MDAwMDAgKi8NCiNkZWZpbmUgUkNDX0FQQjFFTlJfVVNCRU4gICAgICAgICAgICAgICAgICAgUkNDX0FQQjFFTlJfVVNCRU5fTXNrICAgICAgICAgICAgICAvKiE8IFVTQiBjbG9jayBlbmFibGUgKi8NCiNkZWZpbmUgUkNDX0FQQjFFTlJfUFdSRU5fUG9zICAgICAgICAgICAgICAgKDI4VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0FQQjFFTlJfUFdSRU5fTXNrICAgICAgICAgICAgICAgKDB4MVUgPDwgUkNDX0FQQjFFTlJfUFdSRU5fUG9zKSAgICAvKiE8IDB4MTAwMDAwMDAgKi8NCiNkZWZpbmUgUkNDX0FQQjFFTlJfUFdSRU4gICAgICAgICAgICAgICAgICAgUkNDX0FQQjFFTlJfUFdSRU5fTXNrICAgICAgICAgICAgICAvKiE8IFBvd2VyIGludGVyZmFjZSBjbG9jayBlbmFibGUgKi8NCiNkZWZpbmUgUkNDX0FQQjFFTlJfREFDRU5fUG9zICAgICAgICAgICAgICAgKDI5VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0FQQjFFTlJfREFDRU5fTXNrICAgICAgICAgICAgICAgKDB4MVUgPDwgUkNDX0FQQjFFTlJfREFDRU5fUG9zKSAgICAvKiE8IDB4MjAwMDAwMDAgKi8NCiNkZWZpbmUgUkNDX0FQQjFFTlJfREFDRU4gICAgICAgICAgICAgICAgICAgUkNDX0FQQjFFTlJfREFDRU5fTXNrICAgICAgICAgICAgICAvKiE8IERBQyBpbnRlcmZhY2UgY2xvY2sgZW5hYmxlICovDQojZGVmaW5lIFJDQ19BUEIxRU5SX0NPTVBFTl9Qb3MgICAgICAgICAgICAgICgzMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19BUEIxRU5SX0NPTVBFTl9Nc2sgICAgICAgICAgICAgICgweDFVIDw8IFJDQ19BUEIxRU5SX0NPTVBFTl9Qb3MpICAgLyohPCAweDgwMDAwMDAwICovDQojZGVmaW5lIFJDQ19BUEIxRU5SX0NPTVBFTiAgICAgICAgICAgICAgICAgIFJDQ19BUEIxRU5SX0NPTVBFTl9Nc2sgICAgICAgICAgICAgLyohPCBDb21wYXJhdG9yIGludGVyZmFjZSBjbG9jayBlbmFibGUgKi8NCg0KLyoqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFJDQ19BSEJMUEVOUiByZWdpc3RlciAgKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgUkNDX0FIQkxQRU5SX0dQSU9BTFBFTl9Qb3MgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0FIQkxQRU5SX0dQSU9BTFBFTl9Nc2sgICAgICAgICAgKDB4MVUgPDwgUkNDX0FIQkxQRU5SX0dQSU9BTFBFTl9Qb3MpIC8qITwgMHgwMDAwMDAwMSAqLw0KI2RlZmluZSBSQ0NfQUhCTFBFTlJfR1BJT0FMUEVOICAgICAgICAgICAgICBSQ0NfQUhCTFBFTlJfR1BJT0FMUEVOX01zayAgICAgICAgIC8qITwgR1BJTyBwb3J0IEEgY2xvY2sgZW5hYmxlZCBpbiBzbGVlcCBtb2RlICovDQojZGVmaW5lIFJDQ19BSEJMUEVOUl9HUElPQkxQRU5fUG9zICAgICAgICAgICgxVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19BSEJMUEVOUl9HUElPQkxQRU5fTXNrICAgICAgICAgICgweDFVIDw8IFJDQ19BSEJMUEVOUl9HUElPQkxQRU5fUG9zKSAvKiE8IDB4MDAwMDAwMDIgKi8NCiNkZWZpbmUgUkNDX0FIQkxQRU5SX0dQSU9CTFBFTiAgICAgICAgICAgICAgUkNDX0FIQkxQRU5SX0dQSU9CTFBFTl9Nc2sgICAgICAgICAvKiE8IEdQSU8gcG9ydCBCIGNsb2NrIGVuYWJsZWQgaW4gc2xlZXAgbW9kZSAqLw0KI2RlZmluZSBSQ0NfQUhCTFBFTlJfR1BJT0NMUEVOX1BvcyAgICAgICAgICAoMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQUhCTFBFTlJfR1BJT0NMUEVOX01zayAgICAgICAgICAoMHgxVSA8PCBSQ0NfQUhCTFBFTlJfR1BJT0NMUEVOX1BvcykgLyohPCAweDAwMDAwMDA0ICovDQojZGVmaW5lIFJDQ19BSEJMUEVOUl9HUElPQ0xQRU4gICAgICAgICAgICAgIFJDQ19BSEJMUEVOUl9HUElPQ0xQRU5fTXNrICAgICAgICAgLyohPCBHUElPIHBvcnQgQyBjbG9jayBlbmFibGVkIGluIHNsZWVwIG1vZGUgKi8NCiNkZWZpbmUgUkNDX0FIQkxQRU5SX0dQSU9ETFBFTl9Qb3MgICAgICAgICAgKDNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0FIQkxQRU5SX0dQSU9ETFBFTl9Nc2sgICAgICAgICAgKDB4MVUgPDwgUkNDX0FIQkxQRU5SX0dQSU9ETFBFTl9Qb3MpIC8qITwgMHgwMDAwMDAwOCAqLw0KI2RlZmluZSBSQ0NfQUhCTFBFTlJfR1BJT0RMUEVOICAgICAgICAgICAgICBSQ0NfQUhCTFBFTlJfR1BJT0RMUEVOX01zayAgICAgICAgIC8qITwgR1BJTyBwb3J0IEQgY2xvY2sgZW5hYmxlZCBpbiBzbGVlcCBtb2RlICovDQojZGVmaW5lIFJDQ19BSEJMUEVOUl9HUElPRUxQRU5fUG9zICAgICAgICAgICg0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19BSEJMUEVOUl9HUElPRUxQRU5fTXNrICAgICAgICAgICgweDFVIDw8IFJDQ19BSEJMUEVOUl9HUElPRUxQRU5fUG9zKSAvKiE8IDB4MDAwMDAwMTAgKi8NCiNkZWZpbmUgUkNDX0FIQkxQRU5SX0dQSU9FTFBFTiAgICAgICAgICAgICAgUkNDX0FIQkxQRU5SX0dQSU9FTFBFTl9Nc2sgICAgICAgICAvKiE8IEdQSU8gcG9ydCBFIGNsb2NrIGVuYWJsZWQgaW4gc2xlZXAgbW9kZSAqLw0KI2RlZmluZSBSQ0NfQUhCTFBFTlJfR1BJT0hMUEVOX1BvcyAgICAgICAgICAoNVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQUhCTFBFTlJfR1BJT0hMUEVOX01zayAgICAgICAgICAoMHgxVSA8PCBSQ0NfQUhCTFBFTlJfR1BJT0hMUEVOX1BvcykgLyohPCAweDAwMDAwMDIwICovDQojZGVmaW5lIFJDQ19BSEJMUEVOUl9HUElPSExQRU4gICAgICAgICAgICAgIFJDQ19BSEJMUEVOUl9HUElPSExQRU5fTXNrICAgICAgICAgLyohPCBHUElPIHBvcnQgSCBjbG9jayBlbmFibGVkIGluIHNsZWVwIG1vZGUgKi8NCiNkZWZpbmUgUkNDX0FIQkxQRU5SX0dQSU9GTFBFTl9Qb3MgICAgICAgICAgKDZVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0FIQkxQRU5SX0dQSU9GTFBFTl9Nc2sgICAgICAgICAgKDB4MVUgPDwgUkNDX0FIQkxQRU5SX0dQSU9GTFBFTl9Qb3MpIC8qITwgMHgwMDAwMDA0MCAqLw0KI2RlZmluZSBSQ0NfQUhCTFBFTlJfR1BJT0ZMUEVOICAgICAgICAgICAgICBSQ0NfQUhCTFBFTlJfR1BJT0ZMUEVOX01zayAgICAgICAgIC8qITwgR1BJTyBwb3J0IEYgY2xvY2sgZW5hYmxlZCBpbiBzbGVlcCBtb2RlICovDQojZGVmaW5lIFJDQ19BSEJMUEVOUl9HUElPR0xQRU5fUG9zICAgICAgICAgICg3VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19BSEJMUEVOUl9HUElPR0xQRU5fTXNrICAgICAgICAgICgweDFVIDw8IFJDQ19BSEJMUEVOUl9HUElPR0xQRU5fUG9zKSAvKiE8IDB4MDAwMDAwODAgKi8NCiNkZWZpbmUgUkNDX0FIQkxQRU5SX0dQSU9HTFBFTiAgICAgICAgICAgICAgUkNDX0FIQkxQRU5SX0dQSU9HTFBFTl9Nc2sgICAgICAgICAvKiE8IEdQSU8gcG9ydCBHIGNsb2NrIGVuYWJsZWQgaW4gc2xlZXAgbW9kZSAqLw0KI2RlZmluZSBSQ0NfQUhCTFBFTlJfQ1JDTFBFTl9Qb3MgICAgICAgICAgICAoMTJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQUhCTFBFTlJfQ1JDTFBFTl9Nc2sgICAgICAgICAgICAoMHgxVSA8PCBSQ0NfQUhCTFBFTlJfQ1JDTFBFTl9Qb3MpIC8qITwgMHgwMDAwMTAwMCAqLw0KI2RlZmluZSBSQ0NfQUhCTFBFTlJfQ1JDTFBFTiAgICAgICAgICAgICAgICBSQ0NfQUhCTFBFTlJfQ1JDTFBFTl9Nc2sgICAgICAgICAgIC8qITwgQ1JDIGNsb2NrIGVuYWJsZWQgaW4gc2xlZXAgbW9kZSAqLw0KI2RlZmluZSBSQ0NfQUhCTFBFTlJfRkxJVEZMUEVOX1BvcyAgICAgICAgICAoMTVVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQUhCTFBFTlJfRkxJVEZMUEVOX01zayAgICAgICAgICAoMHgxVSA8PCBSQ0NfQUhCTFBFTlJfRkxJVEZMUEVOX1BvcykgLyohPCAweDAwMDA4MDAwICovDQojZGVmaW5lIFJDQ19BSEJMUEVOUl9GTElURkxQRU4gICAgICAgICAgICAgIFJDQ19BSEJMUEVOUl9GTElURkxQRU5fTXNrICAgICAgICAgLyohPCBGbGFzaCBJbnRlcmZhY2UgY2xvY2sgZW5hYmxlZCBpbiBzbGVlcCBtb2RlDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChoYXMgZWZmZWN0IG9ubHkgd2hlbiB0aGUgRmxhc2ggbWVtb3J5IGlzDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbiBwb3dlciBkb3duIG1vZGUpICovDQojZGVmaW5lIFJDQ19BSEJMUEVOUl9TUkFNTFBFTl9Qb3MgICAgICAgICAgICgxNlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19BSEJMUEVOUl9TUkFNTFBFTl9Nc2sgICAgICAgICAgICgweDFVIDw8IFJDQ19BSEJMUEVOUl9TUkFNTFBFTl9Qb3MpIC8qITwgMHgwMDAxMDAwMCAqLw0KI2RlZmluZSBSQ0NfQUhCTFBFTlJfU1JBTUxQRU4gICAgICAgICAgICAgICBSQ0NfQUhCTFBFTlJfU1JBTUxQRU5fTXNrICAgICAgICAgIC8qITwgU1JBTSBjbG9jayBlbmFibGVkIGluIHNsZWVwIG1vZGUgKi8NCiNkZWZpbmUgUkNDX0FIQkxQRU5SX0RNQTFMUEVOX1BvcyAgICAgICAgICAgKDI0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0FIQkxQRU5SX0RNQTFMUEVOX01zayAgICAgICAgICAgKDB4MVUgPDwgUkNDX0FIQkxQRU5SX0RNQTFMUEVOX1BvcykgLyohPCAweDAxMDAwMDAwICovDQojZGVmaW5lIFJDQ19BSEJMUEVOUl9ETUExTFBFTiAgICAgICAgICAgICAgIFJDQ19BSEJMUEVOUl9ETUExTFBFTl9Nc2sgICAgICAgICAgLyohPCBETUExIGNsb2NrIGVuYWJsZWQgaW4gc2xlZXAgbW9kZSAqLw0KI2RlZmluZSBSQ0NfQUhCTFBFTlJfRE1BMkxQRU5fUG9zICAgICAgICAgICAoMjVVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQUhCTFBFTlJfRE1BMkxQRU5fTXNrICAgICAgICAgICAoMHgxVSA8PCBSQ0NfQUhCTFBFTlJfRE1BMkxQRU5fUG9zKSAvKiE8IDB4MDIwMDAwMDAgKi8NCiNkZWZpbmUgUkNDX0FIQkxQRU5SX0RNQTJMUEVOICAgICAgICAgICAgICAgUkNDX0FIQkxQRU5SX0RNQTJMUEVOX01zayAgICAgICAgICAvKiE8IERNQTIgY2xvY2sgZW5hYmxlZCBpbiBzbGVlcCBtb2RlICovDQoNCi8qKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBSQ0NfQVBCMkxQRU5SIHJlZ2lzdGVyICAqKioqKioqKioqKioqKiovDQojZGVmaW5lIFJDQ19BUEIyTFBFTlJfU1lTQ0ZHTFBFTl9Qb3MgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19BUEIyTFBFTlJfU1lTQ0ZHTFBFTl9Nc2sgICAgICAgICgweDFVIDw8IFJDQ19BUEIyTFBFTlJfU1lTQ0ZHTFBFTl9Qb3MpIC8qITwgMHgwMDAwMDAwMSAqLw0KI2RlZmluZSBSQ0NfQVBCMkxQRU5SX1NZU0NGR0xQRU4gICAgICAgICAgICBSQ0NfQVBCMkxQRU5SX1NZU0NGR0xQRU5fTXNrICAgICAgIC8qITwgU3lzdGVtIENvbmZpZ3VyYXRpb24gU1lTQ0ZHIGNsb2NrIGVuYWJsZWQgaW4gc2xlZXAgbW9kZSAqLw0KI2RlZmluZSBSQ0NfQVBCMkxQRU5SX1RJTTlMUEVOX1BvcyAgICAgICAgICAoMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQVBCMkxQRU5SX1RJTTlMUEVOX01zayAgICAgICAgICAoMHgxVSA8PCBSQ0NfQVBCMkxQRU5SX1RJTTlMUEVOX1BvcykgLyohPCAweDAwMDAwMDA0ICovDQojZGVmaW5lIFJDQ19BUEIyTFBFTlJfVElNOUxQRU4gICAgICAgICAgICAgIFJDQ19BUEIyTFBFTlJfVElNOUxQRU5fTXNrICAgICAgICAgLyohPCBUSU05IGludGVyZmFjZSBjbG9jayBlbmFibGVkIGluIHNsZWVwIG1vZGUgKi8NCiNkZWZpbmUgUkNDX0FQQjJMUEVOUl9USU0xMExQRU5fUG9zICAgICAgICAgKDNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0FQQjJMUEVOUl9USU0xMExQRU5fTXNrICAgICAgICAgKDB4MVUgPDwgUkNDX0FQQjJMUEVOUl9USU0xMExQRU5fUG9zKSAvKiE8IDB4MDAwMDAwMDggKi8NCiNkZWZpbmUgUkNDX0FQQjJMUEVOUl9USU0xMExQRU4gICAgICAgICAgICAgUkNDX0FQQjJMUEVOUl9USU0xMExQRU5fTXNrICAgICAgICAvKiE8IFRJTTEwIGludGVyZmFjZSBjbG9jayBlbmFibGVkIGluIHNsZWVwIG1vZGUgKi8NCiNkZWZpbmUgUkNDX0FQQjJMUEVOUl9USU0xMUxQRU5fUG9zICAgICAgICAgKDRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0FQQjJMUEVOUl9USU0xMUxQRU5fTXNrICAgICAgICAgKDB4MVUgPDwgUkNDX0FQQjJMUEVOUl9USU0xMUxQRU5fUG9zKSAvKiE8IDB4MDAwMDAwMTAgKi8NCiNkZWZpbmUgUkNDX0FQQjJMUEVOUl9USU0xMUxQRU4gICAgICAgICAgICAgUkNDX0FQQjJMUEVOUl9USU0xMUxQRU5fTXNrICAgICAgICAvKiE8IFRJTTExIFRpbWVyIGNsb2NrIGVuYWJsZWQgaW4gc2xlZXAgbW9kZSAqLw0KI2RlZmluZSBSQ0NfQVBCMkxQRU5SX0FEQzFMUEVOX1BvcyAgICAgICAgICAoOVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQVBCMkxQRU5SX0FEQzFMUEVOX01zayAgICAgICAgICAoMHgxVSA8PCBSQ0NfQVBCMkxQRU5SX0FEQzFMUEVOX1BvcykgLyohPCAweDAwMDAwMjAwICovDQojZGVmaW5lIFJDQ19BUEIyTFBFTlJfQURDMUxQRU4gICAgICAgICAgICAgIFJDQ19BUEIyTFBFTlJfQURDMUxQRU5fTXNrICAgICAgICAgLyohPCBBREMxIGNsb2NrIGVuYWJsZWQgaW4gc2xlZXAgbW9kZSAqLw0KI2RlZmluZSBSQ0NfQVBCMkxQRU5SX1NQSTFMUEVOX1BvcyAgICAgICAgICAoMTJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQVBCMkxQRU5SX1NQSTFMUEVOX01zayAgICAgICAgICAoMHgxVSA8PCBSQ0NfQVBCMkxQRU5SX1NQSTFMUEVOX1BvcykgLyohPCAweDAwMDAxMDAwICovDQojZGVmaW5lIFJDQ19BUEIyTFBFTlJfU1BJMUxQRU4gICAgICAgICAgICAgIFJDQ19BUEIyTFBFTlJfU1BJMUxQRU5fTXNrICAgICAgICAgLyohPCBTUEkxIGNsb2NrIGVuYWJsZWQgaW4gc2xlZXAgbW9kZSAqLw0KI2RlZmluZSBSQ0NfQVBCMkxQRU5SX1VTQVJUMUxQRU5fUG9zICAgICAgICAoMTRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQVBCMkxQRU5SX1VTQVJUMUxQRU5fTXNrICAgICAgICAoMHgxVSA8PCBSQ0NfQVBCMkxQRU5SX1VTQVJUMUxQRU5fUG9zKSAvKiE8IDB4MDAwMDQwMDAgKi8NCiNkZWZpbmUgUkNDX0FQQjJMUEVOUl9VU0FSVDFMUEVOICAgICAgICAgICAgUkNDX0FQQjJMUEVOUl9VU0FSVDFMUEVOX01zayAgICAgICAvKiE8IFVTQVJUMSBjbG9jayBlbmFibGVkIGluIHNsZWVwIG1vZGUgKi8NCg0KLyoqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgUkNDX0FQQjFMUEVOUiByZWdpc3RlciAgKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgUkNDX0FQQjFMUEVOUl9USU0yTFBFTl9Qb3MgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0FQQjFMUEVOUl9USU0yTFBFTl9Nc2sgICAgICAgICAgKDB4MVUgPDwgUkNDX0FQQjFMUEVOUl9USU0yTFBFTl9Qb3MpIC8qITwgMHgwMDAwMDAwMSAqLw0KI2RlZmluZSBSQ0NfQVBCMUxQRU5SX1RJTTJMUEVOICAgICAgICAgICAgICBSQ0NfQVBCMUxQRU5SX1RJTTJMUEVOX01zayAgICAgICAgIC8qITwgVGltZXIgMiBjbG9jayBlbmFibGVkIGluIHNsZWVwIG1vZGUgKi8NCiNkZWZpbmUgUkNDX0FQQjFMUEVOUl9USU0zTFBFTl9Qb3MgICAgICAgICAgKDFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0FQQjFMUEVOUl9USU0zTFBFTl9Nc2sgICAgICAgICAgKDB4MVUgPDwgUkNDX0FQQjFMUEVOUl9USU0zTFBFTl9Qb3MpIC8qITwgMHgwMDAwMDAwMiAqLw0KI2RlZmluZSBSQ0NfQVBCMUxQRU5SX1RJTTNMUEVOICAgICAgICAgICAgICBSQ0NfQVBCMUxQRU5SX1RJTTNMUEVOX01zayAgICAgICAgIC8qITwgVGltZXIgMyBjbG9jayBlbmFibGVkIGluIHNsZWVwIG1vZGUgKi8NCiNkZWZpbmUgUkNDX0FQQjFMUEVOUl9USU00TFBFTl9Qb3MgICAgICAgICAgKDJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0FQQjFMUEVOUl9USU00TFBFTl9Nc2sgICAgICAgICAgKDB4MVUgPDwgUkNDX0FQQjFMUEVOUl9USU00TFBFTl9Qb3MpIC8qITwgMHgwMDAwMDAwNCAqLw0KI2RlZmluZSBSQ0NfQVBCMUxQRU5SX1RJTTRMUEVOICAgICAgICAgICAgICBSQ0NfQVBCMUxQRU5SX1RJTTRMUEVOX01zayAgICAgICAgIC8qITwgVGltZXIgNCBjbG9jayBlbmFibGVkIGluIHNsZWVwIG1vZGUgKi8NCiNkZWZpbmUgUkNDX0FQQjFMUEVOUl9USU01TFBFTl9Qb3MgICAgICAgICAgKDNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0FQQjFMUEVOUl9USU01TFBFTl9Nc2sgICAgICAgICAgKDB4MVUgPDwgUkNDX0FQQjFMUEVOUl9USU01TFBFTl9Qb3MpIC8qITwgMHgwMDAwMDAwOCAqLw0KI2RlZmluZSBSQ0NfQVBCMUxQRU5SX1RJTTVMUEVOICAgICAgICAgICAgICBSQ0NfQVBCMUxQRU5SX1RJTTVMUEVOX01zayAgICAgICAgIC8qITwgVGltZXIgNSBjbG9jayBlbmFibGVkIGluIHNsZWVwIG1vZGUgKi8NCiNkZWZpbmUgUkNDX0FQQjFMUEVOUl9USU02TFBFTl9Qb3MgICAgICAgICAgKDRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0FQQjFMUEVOUl9USU02TFBFTl9Nc2sgICAgICAgICAgKDB4MVUgPDwgUkNDX0FQQjFMUEVOUl9USU02TFBFTl9Qb3MpIC8qITwgMHgwMDAwMDAxMCAqLw0KI2RlZmluZSBSQ0NfQVBCMUxQRU5SX1RJTTZMUEVOICAgICAgICAgICAgICBSQ0NfQVBCMUxQRU5SX1RJTTZMUEVOX01zayAgICAgICAgIC8qITwgVGltZXIgNiBjbG9jayBlbmFibGVkIGluIHNsZWVwIG1vZGUgKi8NCiNkZWZpbmUgUkNDX0FQQjFMUEVOUl9USU03TFBFTl9Qb3MgICAgICAgICAgKDVVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0FQQjFMUEVOUl9USU03TFBFTl9Nc2sgICAgICAgICAgKDB4MVUgPDwgUkNDX0FQQjFMUEVOUl9USU03TFBFTl9Qb3MpIC8qITwgMHgwMDAwMDAyMCAqLw0KI2RlZmluZSBSQ0NfQVBCMUxQRU5SX1RJTTdMUEVOICAgICAgICAgICAgICBSQ0NfQVBCMUxQRU5SX1RJTTdMUEVOX01zayAgICAgICAgIC8qITwgVGltZXIgNyBjbG9jayBlbmFibGVkIGluIHNsZWVwIG1vZGUgKi8NCiNkZWZpbmUgUkNDX0FQQjFMUEVOUl9MQ0RMUEVOX1BvcyAgICAgICAgICAgKDlVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0FQQjFMUEVOUl9MQ0RMUEVOX01zayAgICAgICAgICAgKDB4MVUgPDwgUkNDX0FQQjFMUEVOUl9MQ0RMUEVOX1BvcykgLyohPCAweDAwMDAwMjAwICovDQojZGVmaW5lIFJDQ19BUEIxTFBFTlJfTENETFBFTiAgICAgICAgICAgICAgIFJDQ19BUEIxTFBFTlJfTENETFBFTl9Nc2sgICAgICAgICAgLyohPCBMQ0QgY2xvY2sgZW5hYmxlZCBpbiBzbGVlcCBtb2RlICovDQojZGVmaW5lIFJDQ19BUEIxTFBFTlJfV1dER0xQRU5fUG9zICAgICAgICAgICgxMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19BUEIxTFBFTlJfV1dER0xQRU5fTXNrICAgICAgICAgICgweDFVIDw8IFJDQ19BUEIxTFBFTlJfV1dER0xQRU5fUG9zKSAvKiE8IDB4MDAwMDA4MDAgKi8NCiNkZWZpbmUgUkNDX0FQQjFMUEVOUl9XV0RHTFBFTiAgICAgICAgICAgICAgUkNDX0FQQjFMUEVOUl9XV0RHTFBFTl9Nc2sgICAgICAgICAvKiE8IFdpbmRvdyBXYXRjaGRvZyBjbG9jayBlbmFibGVkIGluIHNsZWVwIG1vZGUgKi8NCiNkZWZpbmUgUkNDX0FQQjFMUEVOUl9TUEkyTFBFTl9Qb3MgICAgICAgICAgKDE0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0FQQjFMUEVOUl9TUEkyTFBFTl9Nc2sgICAgICAgICAgKDB4MVUgPDwgUkNDX0FQQjFMUEVOUl9TUEkyTFBFTl9Qb3MpIC8qITwgMHgwMDAwNDAwMCAqLw0KI2RlZmluZSBSQ0NfQVBCMUxQRU5SX1NQSTJMUEVOICAgICAgICAgICAgICBSQ0NfQVBCMUxQRU5SX1NQSTJMUEVOX01zayAgICAgICAgIC8qITwgU1BJIDIgY2xvY2sgZW5hYmxlZCBpbiBzbGVlcCBtb2RlICovDQojZGVmaW5lIFJDQ19BUEIxTFBFTlJfU1BJM0xQRU5fUG9zICAgICAgICAgICgxNVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19BUEIxTFBFTlJfU1BJM0xQRU5fTXNrICAgICAgICAgICgweDFVIDw8IFJDQ19BUEIxTFBFTlJfU1BJM0xQRU5fUG9zKSAvKiE8IDB4MDAwMDgwMDAgKi8NCiNkZWZpbmUgUkNDX0FQQjFMUEVOUl9TUEkzTFBFTiAgICAgICAgICAgICAgUkNDX0FQQjFMUEVOUl9TUEkzTFBFTl9Nc2sgICAgICAgICAvKiE8IFNQSSAzIGNsb2NrIGVuYWJsZWQgaW4gc2xlZXAgbW9kZSAqLw0KI2RlZmluZSBSQ0NfQVBCMUxQRU5SX1VTQVJUMkxQRU5fUG9zICAgICAgICAoMTdVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQVBCMUxQRU5SX1VTQVJUMkxQRU5fTXNrICAgICAgICAoMHgxVSA8PCBSQ0NfQVBCMUxQRU5SX1VTQVJUMkxQRU5fUG9zKSAvKiE8IDB4MDAwMjAwMDAgKi8NCiNkZWZpbmUgUkNDX0FQQjFMUEVOUl9VU0FSVDJMUEVOICAgICAgICAgICAgUkNDX0FQQjFMUEVOUl9VU0FSVDJMUEVOX01zayAgICAgICAvKiE8IFVTQVJUIDIgY2xvY2sgZW5hYmxlZCBpbiBzbGVlcCBtb2RlICovDQojZGVmaW5lIFJDQ19BUEIxTFBFTlJfVVNBUlQzTFBFTl9Qb3MgICAgICAgICgxOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19BUEIxTFBFTlJfVVNBUlQzTFBFTl9Nc2sgICAgICAgICgweDFVIDw8IFJDQ19BUEIxTFBFTlJfVVNBUlQzTFBFTl9Qb3MpIC8qITwgMHgwMDA0MDAwMCAqLw0KI2RlZmluZSBSQ0NfQVBCMUxQRU5SX1VTQVJUM0xQRU4gICAgICAgICAgICBSQ0NfQVBCMUxQRU5SX1VTQVJUM0xQRU5fTXNrICAgICAgIC8qITwgVVNBUlQgMyBjbG9jayBlbmFibGVkIGluIHNsZWVwIG1vZGUgKi8NCiNkZWZpbmUgUkNDX0FQQjFMUEVOUl9VQVJUNExQRU5fUG9zICAgICAgICAgKDE5VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0FQQjFMUEVOUl9VQVJUNExQRU5fTXNrICAgICAgICAgKDB4MVUgPDwgUkNDX0FQQjFMUEVOUl9VQVJUNExQRU5fUG9zKSAvKiE8IDB4MDAwODAwMDAgKi8NCiNkZWZpbmUgUkNDX0FQQjFMUEVOUl9VQVJUNExQRU4gICAgICAgICAgICAgUkNDX0FQQjFMUEVOUl9VQVJUNExQRU5fTXNrICAgICAgICAvKiE8IFVBUlQgNCBjbG9jayBlbmFibGVkIGluIHNsZWVwIG1vZGUgKi8NCiNkZWZpbmUgUkNDX0FQQjFMUEVOUl9VQVJUNUxQRU5fUG9zICAgICAgICAgKDIwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0FQQjFMUEVOUl9VQVJUNUxQRU5fTXNrICAgICAgICAgKDB4MVUgPDwgUkNDX0FQQjFMUEVOUl9VQVJUNUxQRU5fUG9zKSAvKiE8IDB4MDAxMDAwMDAgKi8NCiNkZWZpbmUgUkNDX0FQQjFMUEVOUl9VQVJUNUxQRU4gICAgICAgICAgICAgUkNDX0FQQjFMUEVOUl9VQVJUNUxQRU5fTXNrICAgICAgICAvKiE8IFVBUlQgNSBjbG9jayBlbmFibGVkIGluIHNsZWVwIG1vZGUgKi8NCiNkZWZpbmUgUkNDX0FQQjFMUEVOUl9JMkMxTFBFTl9Qb3MgICAgICAgICAgKDIxVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0FQQjFMUEVOUl9JMkMxTFBFTl9Nc2sgICAgICAgICAgKDB4MVUgPDwgUkNDX0FQQjFMUEVOUl9JMkMxTFBFTl9Qb3MpIC8qITwgMHgwMDIwMDAwMCAqLw0KI2RlZmluZSBSQ0NfQVBCMUxQRU5SX0kyQzFMUEVOICAgICAgICAgICAgICBSQ0NfQVBCMUxQRU5SX0kyQzFMUEVOX01zayAgICAgICAgIC8qITwgSTJDIDEgY2xvY2sgZW5hYmxlZCBpbiBzbGVlcCBtb2RlICovDQojZGVmaW5lIFJDQ19BUEIxTFBFTlJfSTJDMkxQRU5fUG9zICAgICAgICAgICgyMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19BUEIxTFBFTlJfSTJDMkxQRU5fTXNrICAgICAgICAgICgweDFVIDw8IFJDQ19BUEIxTFBFTlJfSTJDMkxQRU5fUG9zKSAvKiE8IDB4MDA0MDAwMDAgKi8NCiNkZWZpbmUgUkNDX0FQQjFMUEVOUl9JMkMyTFBFTiAgICAgICAgICAgICAgUkNDX0FQQjFMUEVOUl9JMkMyTFBFTl9Nc2sgICAgICAgICAvKiE8IEkyQyAyIGNsb2NrIGVuYWJsZWQgaW4gc2xlZXAgbW9kZSAqLw0KI2RlZmluZSBSQ0NfQVBCMUxQRU5SX1VTQkxQRU5fUG9zICAgICAgICAgICAoMjNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQVBCMUxQRU5SX1VTQkxQRU5fTXNrICAgICAgICAgICAoMHgxVSA8PCBSQ0NfQVBCMUxQRU5SX1VTQkxQRU5fUG9zKSAvKiE8IDB4MDA4MDAwMDAgKi8NCiNkZWZpbmUgUkNDX0FQQjFMUEVOUl9VU0JMUEVOICAgICAgICAgICAgICAgUkNDX0FQQjFMUEVOUl9VU0JMUEVOX01zayAgICAgICAgICAvKiE8IFVTQiBjbG9jayBlbmFibGVkIGluIHNsZWVwIG1vZGUgKi8NCiNkZWZpbmUgUkNDX0FQQjFMUEVOUl9QV1JMUEVOX1BvcyAgICAgICAgICAgKDI4VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0FQQjFMUEVOUl9QV1JMUEVOX01zayAgICAgICAgICAgKDB4MVUgPDwgUkNDX0FQQjFMUEVOUl9QV1JMUEVOX1BvcykgLyohPCAweDEwMDAwMDAwICovDQojZGVmaW5lIFJDQ19BUEIxTFBFTlJfUFdSTFBFTiAgICAgICAgICAgICAgIFJDQ19BUEIxTFBFTlJfUFdSTFBFTl9Nc2sgICAgICAgICAgLyohPCBQb3dlciBpbnRlcmZhY2UgY2xvY2sgZW5hYmxlZCBpbiBzbGVlcCBtb2RlICovDQojZGVmaW5lIFJDQ19BUEIxTFBFTlJfREFDTFBFTl9Qb3MgICAgICAgICAgICgyOVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19BUEIxTFBFTlJfREFDTFBFTl9Nc2sgICAgICAgICAgICgweDFVIDw8IFJDQ19BUEIxTFBFTlJfREFDTFBFTl9Qb3MpIC8qITwgMHgyMDAwMDAwMCAqLw0KI2RlZmluZSBSQ0NfQVBCMUxQRU5SX0RBQ0xQRU4gICAgICAgICAgICAgICBSQ0NfQVBCMUxQRU5SX0RBQ0xQRU5fTXNrICAgICAgICAgIC8qITwgREFDIGludGVyZmFjZSBjbG9jayBlbmFibGVkIGluIHNsZWVwIG1vZGUgKi8NCiNkZWZpbmUgUkNDX0FQQjFMUEVOUl9DT01QTFBFTl9Qb3MgICAgICAgICAgKDMxVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0FQQjFMUEVOUl9DT01QTFBFTl9Nc2sgICAgICAgICAgKDB4MVUgPDwgUkNDX0FQQjFMUEVOUl9DT01QTFBFTl9Qb3MpIC8qITwgMHg4MDAwMDAwMCAqLw0KI2RlZmluZSBSQ0NfQVBCMUxQRU5SX0NPTVBMUEVOICAgICAgICAgICAgICBSQ0NfQVBCMUxQRU5SX0NPTVBMUEVOX01zayAgICAgICAgIC8qITwgQ29tcGFyYXRvciBpbnRlcmZhY2UgY2xvY2sgZW5hYmxlZCBpbiBzbGVlcCBtb2RlKi8NCg0KLyoqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBSQ0NfQ1NSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgUkNDX0NTUl9MU0lPTl9Qb3MgICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0NTUl9MU0lPTl9Nc2sgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgUkNDX0NTUl9MU0lPTl9Qb3MpICAgICAgICAvKiE8IDB4MDAwMDAwMDEgKi8NCiNkZWZpbmUgUkNDX0NTUl9MU0lPTiAgICAgICAgICAgICAgICAgICAgICAgUkNDX0NTUl9MU0lPTl9Nc2sgICAgICAgICAgICAgICAgICAvKiE8IEludGVybmFsIExvdyBTcGVlZCBvc2NpbGxhdG9yIGVuYWJsZSAqLw0KI2RlZmluZSBSQ0NfQ1NSX0xTSVJEWV9Qb3MgICAgICAgICAgICAgICAgICAoMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQ1NSX0xTSVJEWV9Nc2sgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBSQ0NfQ1NSX0xTSVJEWV9Qb3MpICAgICAgIC8qITwgMHgwMDAwMDAwMiAqLw0KI2RlZmluZSBSQ0NfQ1NSX0xTSVJEWSAgICAgICAgICAgICAgICAgICAgICBSQ0NfQ1NSX0xTSVJEWV9Nc2sgICAgICAgICAgICAgICAgIC8qITwgSW50ZXJuYWwgTG93IFNwZWVkIG9zY2lsbGF0b3IgUmVhZHkgKi8NCg0KI2RlZmluZSBSQ0NfQ1NSX0xTRU9OX1BvcyAgICAgICAgICAgICAgICAgICAoOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQ1NSX0xTRU9OX01zayAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBSQ0NfQ1NSX0xTRU9OX1BvcykgICAgICAgIC8qITwgMHgwMDAwMDEwMCAqLw0KI2RlZmluZSBSQ0NfQ1NSX0xTRU9OICAgICAgICAgICAgICAgICAgICAgICBSQ0NfQ1NSX0xTRU9OX01zayAgICAgICAgICAgICAgICAgIC8qITwgRXh0ZXJuYWwgTG93IFNwZWVkIG9zY2lsbGF0b3IgZW5hYmxlICovDQojZGVmaW5lIFJDQ19DU1JfTFNFUkRZX1BvcyAgICAgICAgICAgICAgICAgICg5VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19DU1JfTFNFUkRZX01zayAgICAgICAgICAgICAgICAgICgweDFVIDw8IFJDQ19DU1JfTFNFUkRZX1BvcykgICAgICAgLyohPCAweDAwMDAwMjAwICovDQojZGVmaW5lIFJDQ19DU1JfTFNFUkRZICAgICAgICAgICAgICAgICAgICAgIFJDQ19DU1JfTFNFUkRZX01zayAgICAgICAgICAgICAgICAgLyohPCBFeHRlcm5hbCBMb3cgU3BlZWQgb3NjaWxsYXRvciBSZWFkeSAqLw0KI2RlZmluZSBSQ0NfQ1NSX0xTRUJZUF9Qb3MgICAgICAgICAgICAgICAgICAoMTBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQ1NSX0xTRUJZUF9Nc2sgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBSQ0NfQ1NSX0xTRUJZUF9Qb3MpICAgICAgIC8qITwgMHgwMDAwMDQwMCAqLw0KI2RlZmluZSBSQ0NfQ1NSX0xTRUJZUCAgICAgICAgICAgICAgICAgICAgICBSQ0NfQ1NSX0xTRUJZUF9Nc2sgICAgICAgICAgICAgICAgIC8qITwgRXh0ZXJuYWwgTG93IFNwZWVkIG9zY2lsbGF0b3IgQnlwYXNzICovDQoNCiNkZWZpbmUgUkNDX0NTUl9MU0VDU1NPTl9Qb3MgICAgICAgICAgICAgICAgKDExVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0NTUl9MU0VDU1NPTl9Nc2sgICAgICAgICAgICAgICAgKDB4MVUgPDwgUkNDX0NTUl9MU0VDU1NPTl9Qb3MpICAgICAvKiE8IDB4MDAwMDA4MDAgKi8NCiNkZWZpbmUgUkNDX0NTUl9MU0VDU1NPTiAgICAgICAgICAgICAgICAgICAgUkNDX0NTUl9MU0VDU1NPTl9Nc2sgICAgICAgICAgICAgICAvKiE8IEV4dGVybmFsIExvdyBTcGVlZCBvc2NpbGxhdG9yIENTUyBFbmFibGUgKi8NCiNkZWZpbmUgUkNDX0NTUl9MU0VDU1NEX1BvcyAgICAgICAgICAgICAgICAgKDEyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0NTUl9MU0VDU1NEX01zayAgICAgICAgICAgICAgICAgKDB4MVUgPDwgUkNDX0NTUl9MU0VDU1NEX1BvcykgICAgICAvKiE8IDB4MDAwMDEwMDAgKi8NCiNkZWZpbmUgUkNDX0NTUl9MU0VDU1NEICAgICAgICAgICAgICAgICAgICAgUkNDX0NTUl9MU0VDU1NEX01zayAgICAgICAgICAgICAgICAvKiE8IEV4dGVybmFsIExvdyBTcGVlZCBvc2NpbGxhdG9yIENTUyBEZXRlY3RlZCAqLw0KDQojZGVmaW5lIFJDQ19DU1JfUlRDU0VMX1BvcyAgICAgICAgICAgICAgICAgICgxNlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19DU1JfUlRDU0VMX01zayAgICAgICAgICAgICAgICAgICgweDNVIDw8IFJDQ19DU1JfUlRDU0VMX1BvcykgICAgICAgLyohPCAweDAwMDMwMDAwICovDQojZGVmaW5lIFJDQ19DU1JfUlRDU0VMICAgICAgICAgICAgICAgICAgICAgIFJDQ19DU1JfUlRDU0VMX01zayAgICAgICAgICAgICAgICAgLyohPCBSVENTRUxbMTowXSBiaXRzIChSVEMgY2xvY2sgc291cmNlIHNlbGVjdGlvbikgKi8NCiNkZWZpbmUgUkNDX0NTUl9SVENTRUxfMCAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgUkNDX0NTUl9SVENTRUxfUG9zKSAgICAgICAvKiE8IDB4MDAwMTAwMDAgKi8NCiNkZWZpbmUgUkNDX0NTUl9SVENTRUxfMSAgICAgICAgICAgICAgICAgICAgKDB4MlUgPDwgUkNDX0NTUl9SVENTRUxfUG9zKSAgICAgICAvKiE8IDB4MDAwMjAwMDAgKi8NCg0KLyohPCBSVEMgY29uZ2lndXJhdGlvbiAqLw0KI2RlZmluZSBSQ0NfQ1NSX1JUQ1NFTF9OT0NMT0NLICAgICAgICAgICAgICAoMHgwMDAwMDAwMFUpICAgICAgICAgICAgICAgICAgICAgIC8qITwgTm8gY2xvY2sgKi8NCiNkZWZpbmUgUkNDX0NTUl9SVENTRUxfTFNFX1BvcyAgICAgICAgICAgICAgKDE2VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0NTUl9SVENTRUxfTFNFX01zayAgICAgICAgICAgICAgKDB4MVUgPDwgUkNDX0NTUl9SVENTRUxfTFNFX1BvcykgICAvKiE8IDB4MDAwMTAwMDAgKi8NCiNkZWZpbmUgUkNDX0NTUl9SVENTRUxfTFNFICAgICAgICAgICAgICAgICAgUkNDX0NTUl9SVENTRUxfTFNFX01zayAgICAgICAgICAgICAvKiE8IExTRSBvc2NpbGxhdG9yIGNsb2NrIHVzZWQgYXMgUlRDIGNsb2NrICovDQojZGVmaW5lIFJDQ19DU1JfUlRDU0VMX0xTSV9Qb3MgICAgICAgICAgICAgICgxN1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19DU1JfUlRDU0VMX0xTSV9Nc2sgICAgICAgICAgICAgICgweDFVIDw8IFJDQ19DU1JfUlRDU0VMX0xTSV9Qb3MpICAgLyohPCAweDAwMDIwMDAwICovDQojZGVmaW5lIFJDQ19DU1JfUlRDU0VMX0xTSSAgICAgICAgICAgICAgICAgIFJDQ19DU1JfUlRDU0VMX0xTSV9Nc2sgICAgICAgICAgICAgLyohPCBMU0kgb3NjaWxsYXRvciBjbG9jayB1c2VkIGFzIFJUQyBjbG9jayAqLw0KI2RlZmluZSBSQ0NfQ1NSX1JUQ1NFTF9IU0VfUG9zICAgICAgICAgICAgICAoMTZVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQ1NSX1JUQ1NFTF9IU0VfTXNrICAgICAgICAgICAgICAoMHgzVSA8PCBSQ0NfQ1NSX1JUQ1NFTF9IU0VfUG9zKSAgIC8qITwgMHgwMDAzMDAwMCAqLw0KI2RlZmluZSBSQ0NfQ1NSX1JUQ1NFTF9IU0UgICAgICAgICAgICAgICAgICBSQ0NfQ1NSX1JUQ1NFTF9IU0VfTXNrICAgICAgICAgICAgIC8qITwgSFNFIG9zY2lsbGF0b3IgY2xvY2sgZGl2aWRlZCBieSAyLCA0LCA4IG9yIDE2IGJ5IFJUQ1BSRSB1c2VkIGFzIFJUQyBjbG9jayAqLw0KDQojZGVmaW5lIFJDQ19DU1JfUlRDRU5fUG9zICAgICAgICAgICAgICAgICAgICgyMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19DU1JfUlRDRU5fTXNrICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFJDQ19DU1JfUlRDRU5fUG9zKSAgICAgICAgLyohPCAweDAwNDAwMDAwICovDQojZGVmaW5lIFJDQ19DU1JfUlRDRU4gICAgICAgICAgICAgICAgICAgICAgIFJDQ19DU1JfUlRDRU5fTXNrICAgICAgICAgICAgICAgICAgLyohPCBSVEMgY2xvY2sgZW5hYmxlICovDQojZGVmaW5lIFJDQ19DU1JfUlRDUlNUX1BvcyAgICAgICAgICAgICAgICAgICgyM1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19DU1JfUlRDUlNUX01zayAgICAgICAgICAgICAgICAgICgweDFVIDw8IFJDQ19DU1JfUlRDUlNUX1BvcykgICAgICAgLyohPCAweDAwODAwMDAwICovDQojZGVmaW5lIFJDQ19DU1JfUlRDUlNUICAgICAgICAgICAgICAgICAgICAgIFJDQ19DU1JfUlRDUlNUX01zayAgICAgICAgICAgICAgICAgLyohPCBSVEMgcmVzZXQgICovDQogDQojZGVmaW5lIFJDQ19DU1JfUk1WRl9Qb3MgICAgICAgICAgICAgICAgICAgICgyNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19DU1JfUk1WRl9Nc2sgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFJDQ19DU1JfUk1WRl9Qb3MpICAgICAgICAgLyohPCAweDAxMDAwMDAwICovDQojZGVmaW5lIFJDQ19DU1JfUk1WRiAgICAgICAgICAgICAgICAgICAgICAgIFJDQ19DU1JfUk1WRl9Nc2sgICAgICAgICAgICAgICAgICAgLyohPCBSZW1vdmUgcmVzZXQgZmxhZyAqLw0KI2RlZmluZSBSQ0NfQ1NSX09CTFJTVEZfUG9zICAgICAgICAgICAgICAgICAoMjVVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQ1NSX09CTFJTVEZfTXNrICAgICAgICAgICAgICAgICAoMHgxVSA8PCBSQ0NfQ1NSX09CTFJTVEZfUG9zKSAgICAgIC8qITwgMHgwMjAwMDAwMCAqLw0KI2RlZmluZSBSQ0NfQ1NSX09CTFJTVEYgICAgICAgICAgICAgICAgICAgICBSQ0NfQ1NSX09CTFJTVEZfTXNrICAgICAgICAgICAgICAgIC8qITwgT3B0aW9uIEJ5dGVzIExvYWRlciByZXNldCBmbGFnICovDQojZGVmaW5lIFJDQ19DU1JfUElOUlNURl9Qb3MgICAgICAgICAgICAgICAgICgyNlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19DU1JfUElOUlNURl9Nc2sgICAgICAgICAgICAgICAgICgweDFVIDw8IFJDQ19DU1JfUElOUlNURl9Qb3MpICAgICAgLyohPCAweDA0MDAwMDAwICovDQojZGVmaW5lIFJDQ19DU1JfUElOUlNURiAgICAgICAgICAgICAgICAgICAgIFJDQ19DU1JfUElOUlNURl9Nc2sgICAgICAgICAgICAgICAgLyohPCBQSU4gcmVzZXQgZmxhZyAqLw0KI2RlZmluZSBSQ0NfQ1NSX1BPUlJTVEZfUG9zICAgICAgICAgICAgICAgICAoMjdVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQ1NSX1BPUlJTVEZfTXNrICAgICAgICAgICAgICAgICAoMHgxVSA8PCBSQ0NfQ1NSX1BPUlJTVEZfUG9zKSAgICAgIC8qITwgMHgwODAwMDAwMCAqLw0KI2RlZmluZSBSQ0NfQ1NSX1BPUlJTVEYgICAgICAgICAgICAgICAgICAgICBSQ0NfQ1NSX1BPUlJTVEZfTXNrICAgICAgICAgICAgICAgIC8qITwgUE9SL1BEUiByZXNldCBmbGFnICovDQojZGVmaW5lIFJDQ19DU1JfU0ZUUlNURl9Qb3MgICAgICAgICAgICAgICAgICgyOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19DU1JfU0ZUUlNURl9Nc2sgICAgICAgICAgICAgICAgICgweDFVIDw8IFJDQ19DU1JfU0ZUUlNURl9Qb3MpICAgICAgLyohPCAweDEwMDAwMDAwICovDQojZGVmaW5lIFJDQ19DU1JfU0ZUUlNURiAgICAgICAgICAgICAgICAgICAgIFJDQ19DU1JfU0ZUUlNURl9Nc2sgICAgICAgICAgICAgICAgLyohPCBTb2Z0d2FyZSBSZXNldCBmbGFnICovDQojZGVmaW5lIFJDQ19DU1JfSVdER1JTVEZfUG9zICAgICAgICAgICAgICAgICgyOVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19DU1JfSVdER1JTVEZfTXNrICAgICAgICAgICAgICAgICgweDFVIDw8IFJDQ19DU1JfSVdER1JTVEZfUG9zKSAgICAgLyohPCAweDIwMDAwMDAwICovDQojZGVmaW5lIFJDQ19DU1JfSVdER1JTVEYgICAgICAgICAgICAgICAgICAgIFJDQ19DU1JfSVdER1JTVEZfTXNrICAgICAgICAgICAgICAgLyohPCBJbmRlcGVuZGVudCBXYXRjaGRvZyByZXNldCBmbGFnICovDQojZGVmaW5lIFJDQ19DU1JfV1dER1JTVEZfUG9zICAgICAgICAgICAgICAgICgzMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19DU1JfV1dER1JTVEZfTXNrICAgICAgICAgICAgICAgICgweDFVIDw8IFJDQ19DU1JfV1dER1JTVEZfUG9zKSAgICAgLyohPCAweDQwMDAwMDAwICovDQojZGVmaW5lIFJDQ19DU1JfV1dER1JTVEYgICAgICAgICAgICAgICAgICAgIFJDQ19DU1JfV1dER1JTVEZfTXNrICAgICAgICAgICAgICAgLyohPCBXaW5kb3cgd2F0Y2hkb2cgcmVzZXQgZmxhZyAqLw0KI2RlZmluZSBSQ0NfQ1NSX0xQV1JSU1RGX1BvcyAgICAgICAgICAgICAgICAoMzFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQ1NSX0xQV1JSU1RGX01zayAgICAgICAgICAgICAgICAoMHgxVSA8PCBSQ0NfQ1NSX0xQV1JSU1RGX1BvcykgICAgIC8qITwgMHg4MDAwMDAwMCAqLw0KI2RlZmluZSBSQ0NfQ1NSX0xQV1JSU1RGICAgICAgICAgICAgICAgICAgICBSQ0NfQ1NSX0xQV1JSU1RGX01zayAgICAgICAgICAgICAgIC8qITwgTG93LVBvd2VyIHJlc2V0IGZsYWcgKi8NCg0KLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8NCi8qICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovDQovKiAgICAgICAgICAgICAgICAgICAgICAgICAgIFJlYWwtVGltZSBDbG9jayAoUlRDKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLw0KLyogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8NCi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovDQovKg0KKiBAYnJpZWYgU3BlY2lmaWMgZGV2aWNlIGZlYXR1cmUgZGVmaW5pdGlvbnMgIChub3QgcHJlc2VudCBvbiBhbGwgZGV2aWNlcyBpbiB0aGUgU1RNMzJGMCBzZXJpZSkNCiovDQojZGVmaW5lIFJUQ19UQU1QRVIxX1NVUFBPUlQgICAgICAgLyohPCBUQU1QRVIgMSBmZWF0dXJlIHN1cHBvcnQgKi8NCiNkZWZpbmUgUlRDX1RBTVBFUjJfU1VQUE9SVCAgICAgICAvKiE8IFRBTVBFUiAyIGZlYXR1cmUgc3VwcG9ydCAqLw0KI2RlZmluZSBSVENfVEFNUEVSM19TVVBQT1JUICAgICAgIC8qITwgVEFNUEVSIDMgZmVhdHVyZSBzdXBwb3J0ICovDQojZGVmaW5lIFJUQ19CQUNLVVBfU1VQUE9SVCAgICAgICAgLyohPCBCQUNLVVAgcmVnaXN0ZXIgZmVhdHVyZSBzdXBwb3J0ICovDQojZGVmaW5lIFJUQ19XQUtFVVBfU1VQUE9SVCAgICAgICAgLyohPCBXQUtFVVAgZmVhdHVyZSBzdXBwb3J0ICovDQojZGVmaW5lIFJUQ19TTU9PVEhDQUxJQl9TVVBQT1JUICAgLyohPCBTbW9vdGggZGlnaXRhbCBjYWxpYnJhdGlvbiBmZWF0dXJlIHN1cHBvcnQgKi8NCiNkZWZpbmUgUlRDX1NVQlNFQ09ORF9TVVBQT1JUICAgICAvKiE8IFN1Yi1zZWNvbmQgZmVhdHVyZSBzdXBwb3J0ICovDQoNCi8qKioqKioqKioqKioqKioqKioqKiAgQml0cyBkZWZpbml0aW9uIGZvciBSVENfVFIgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIFJUQ19UUl9QTV9Qb3MgICAgICAgICAgICAgICAgICAgICAgICAoMjJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19UUl9QTV9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBSVENfVFJfUE1fUG9zKSAgICAgICAgICAgLyohPCAweDAwNDAwMDAwICovDQojZGVmaW5lIFJUQ19UUl9QTSAgICAgICAgICAgICAgICAgICAgICAgICAgICBSVENfVFJfUE1fTXNrICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19UUl9IVF9Qb3MgICAgICAgICAgICAgICAgICAgICAgICAoMjBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19UUl9IVF9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAoMHgzVSA8PCBSVENfVFJfSFRfUG9zKSAgICAgICAgICAgLyohPCAweDAwMzAwMDAwICovDQojZGVmaW5lIFJUQ19UUl9IVCAgICAgICAgICAgICAgICAgICAgICAgICAgICBSVENfVFJfSFRfTXNrICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19UUl9IVF8wICAgICAgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBSVENfVFJfSFRfUG9zKSAgICAgICAgICAgLyohPCAweDAwMTAwMDAwICovDQojZGVmaW5lIFJUQ19UUl9IVF8xICAgICAgICAgICAgICAgICAgICAgICAgICAoMHgyVSA8PCBSVENfVFJfSFRfUG9zKSAgICAgICAgICAgLyohPCAweDAwMjAwMDAwICovDQojZGVmaW5lIFJUQ19UUl9IVV9Qb3MgICAgICAgICAgICAgICAgICAgICAgICAoMTZVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19UUl9IVV9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAoMHhGVSA8PCBSVENfVFJfSFVfUG9zKSAgICAgICAgICAgLyohPCAweDAwMEYwMDAwICovDQojZGVmaW5lIFJUQ19UUl9IVSAgICAgICAgICAgICAgICAgICAgICAgICAgICBSVENfVFJfSFVfTXNrICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19UUl9IVV8wICAgICAgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBSVENfVFJfSFVfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDEwMDAwICovDQojZGVmaW5lIFJUQ19UUl9IVV8xICAgICAgICAgICAgICAgICAgICAgICAgICAoMHgyVSA8PCBSVENfVFJfSFVfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDIwMDAwICovDQojZGVmaW5lIFJUQ19UUl9IVV8yICAgICAgICAgICAgICAgICAgICAgICAgICAoMHg0VSA8PCBSVENfVFJfSFVfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDQwMDAwICovDQojZGVmaW5lIFJUQ19UUl9IVV8zICAgICAgICAgICAgICAgICAgICAgICAgICAoMHg4VSA8PCBSVENfVFJfSFVfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDgwMDAwICovDQojZGVmaW5lIFJUQ19UUl9NTlRfUG9zICAgICAgICAgICAgICAgICAgICAgICAoMTJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19UUl9NTlRfTXNrICAgICAgICAgICAgICAgICAgICAgICAoMHg3VSA8PCBSVENfVFJfTU5UX1BvcykgICAgICAgICAgLyohPCAweDAwMDA3MDAwICovDQojZGVmaW5lIFJUQ19UUl9NTlQgICAgICAgICAgICAgICAgICAgICAgICAgICBSVENfVFJfTU5UX01zayAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19UUl9NTlRfMCAgICAgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBSVENfVFJfTU5UX1BvcykgICAgICAgICAgLyohPCAweDAwMDAxMDAwICovDQojZGVmaW5lIFJUQ19UUl9NTlRfMSAgICAgICAgICAgICAgICAgICAgICAgICAoMHgyVSA8PCBSVENfVFJfTU5UX1BvcykgICAgICAgICAgLyohPCAweDAwMDAyMDAwICovDQojZGVmaW5lIFJUQ19UUl9NTlRfMiAgICAgICAgICAgICAgICAgICAgICAgICAoMHg0VSA8PCBSVENfVFJfTU5UX1BvcykgICAgICAgICAgLyohPCAweDAwMDA0MDAwICovDQojZGVmaW5lIFJUQ19UUl9NTlVfUG9zICAgICAgICAgICAgICAgICAgICAgICAoOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19UUl9NTlVfTXNrICAgICAgICAgICAgICAgICAgICAgICAoMHhGVSA8PCBSVENfVFJfTU5VX1BvcykgICAgICAgICAgLyohPCAweDAwMDAwRjAwICovDQojZGVmaW5lIFJUQ19UUl9NTlUgICAgICAgICAgICAgICAgICAgICAgICAgICBSVENfVFJfTU5VX01zayAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19UUl9NTlVfMCAgICAgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBSVENfVFJfTU5VX1BvcykgICAgICAgICAgLyohPCAweDAwMDAwMTAwICovDQojZGVmaW5lIFJUQ19UUl9NTlVfMSAgICAgICAgICAgICAgICAgICAgICAgICAoMHgyVSA8PCBSVENfVFJfTU5VX1BvcykgICAgICAgICAgLyohPCAweDAwMDAwMjAwICovDQojZGVmaW5lIFJUQ19UUl9NTlVfMiAgICAgICAgICAgICAgICAgICAgICAgICAoMHg0VSA8PCBSVENfVFJfTU5VX1BvcykgICAgICAgICAgLyohPCAweDAwMDAwNDAwICovDQojZGVmaW5lIFJUQ19UUl9NTlVfMyAgICAgICAgICAgICAgICAgICAgICAgICAoMHg4VSA8PCBSVENfVFJfTU5VX1BvcykgICAgICAgICAgLyohPCAweDAwMDAwODAwICovDQojZGVmaW5lIFJUQ19UUl9TVF9Qb3MgICAgICAgICAgICAgICAgICAgICAgICAoNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19UUl9TVF9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAoMHg3VSA8PCBSVENfVFJfU1RfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwMDcwICovDQojZGVmaW5lIFJUQ19UUl9TVCAgICAgICAgICAgICAgICAgICAgICAgICAgICBSVENfVFJfU1RfTXNrICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19UUl9TVF8wICAgICAgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBSVENfVFJfU1RfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwMDEwICovDQojZGVmaW5lIFJUQ19UUl9TVF8xICAgICAgICAgICAgICAgICAgICAgICAgICAoMHgyVSA8PCBSVENfVFJfU1RfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwMDIwICovDQojZGVmaW5lIFJUQ19UUl9TVF8yICAgICAgICAgICAgICAgICAgICAgICAgICAoMHg0VSA8PCBSVENfVFJfU1RfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwMDQwICovDQojZGVmaW5lIFJUQ19UUl9TVV9Qb3MgICAgICAgICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19UUl9TVV9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAoMHhGVSA8PCBSVENfVFJfU1VfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwMDBGICovDQojZGVmaW5lIFJUQ19UUl9TVSAgICAgICAgICAgICAgICAgICAgICAgICAgICBSVENfVFJfU1VfTXNrICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19UUl9TVV8wICAgICAgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBSVENfVFJfU1VfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwMDAxICovDQojZGVmaW5lIFJUQ19UUl9TVV8xICAgICAgICAgICAgICAgICAgICAgICAgICAoMHgyVSA8PCBSVENfVFJfU1VfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwMDAyICovDQojZGVmaW5lIFJUQ19UUl9TVV8yICAgICAgICAgICAgICAgICAgICAgICAgICAoMHg0VSA8PCBSVENfVFJfU1VfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwMDA0ICovDQojZGVmaW5lIFJUQ19UUl9TVV8zICAgICAgICAgICAgICAgICAgICAgICAgICAoMHg4VSA8PCBSVENfVFJfU1VfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwMDA4ICovDQoNCi8qKioqKioqKioqKioqKioqKioqKiAgQml0cyBkZWZpbml0aW9uIGZvciBSVENfRFIgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIFJUQ19EUl9ZVF9Qb3MgICAgICAgICAgICAgICAgICAgICAgICAoMjBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19EUl9ZVF9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAoMHhGVSA8PCBSVENfRFJfWVRfUG9zKSAgICAgICAgICAgLyohPCAweDAwRjAwMDAwICovDQojZGVmaW5lIFJUQ19EUl9ZVCAgICAgICAgICAgICAgICAgICAgICAgICAgICBSVENfRFJfWVRfTXNrICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19EUl9ZVF8wICAgICAgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBSVENfRFJfWVRfUG9zKSAgICAgICAgICAgLyohPCAweDAwMTAwMDAwICovDQojZGVmaW5lIFJUQ19EUl9ZVF8xICAgICAgICAgICAgICAgICAgICAgICAgICAoMHgyVSA8PCBSVENfRFJfWVRfUG9zKSAgICAgICAgICAgLyohPCAweDAwMjAwMDAwICovDQojZGVmaW5lIFJUQ19EUl9ZVF8yICAgICAgICAgICAgICAgICAgICAgICAgICAoMHg0VSA8PCBSVENfRFJfWVRfUG9zKSAgICAgICAgICAgLyohPCAweDAwNDAwMDAwICovDQojZGVmaW5lIFJUQ19EUl9ZVF8zICAgICAgICAgICAgICAgICAgICAgICAgICAoMHg4VSA8PCBSVENfRFJfWVRfUG9zKSAgICAgICAgICAgLyohPCAweDAwODAwMDAwICovDQojZGVmaW5lIFJUQ19EUl9ZVV9Qb3MgICAgICAgICAgICAgICAgICAgICAgICAoMTZVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19EUl9ZVV9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAoMHhGVSA8PCBSVENfRFJfWVVfUG9zKSAgICAgICAgICAgLyohPCAweDAwMEYwMDAwICovDQojZGVmaW5lIFJUQ19EUl9ZVSAgICAgICAgICAgICAgICAgICAgICAgICAgICBSVENfRFJfWVVfTXNrICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19EUl9ZVV8wICAgICAgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBSVENfRFJfWVVfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDEwMDAwICovDQojZGVmaW5lIFJUQ19EUl9ZVV8xICAgICAgICAgICAgICAgICAgICAgICAgICAoMHgyVSA8PCBSVENfRFJfWVVfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDIwMDAwICovDQojZGVmaW5lIFJUQ19EUl9ZVV8yICAgICAgICAgICAgICAgICAgICAgICAgICAoMHg0VSA8PCBSVENfRFJfWVVfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDQwMDAwICovDQojZGVmaW5lIFJUQ19EUl9ZVV8zICAgICAgICAgICAgICAgICAgICAgICAgICAoMHg4VSA8PCBSVENfRFJfWVVfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDgwMDAwICovDQojZGVmaW5lIFJUQ19EUl9XRFVfUG9zICAgICAgICAgICAgICAgICAgICAgICAoMTNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19EUl9XRFVfTXNrICAgICAgICAgICAgICAgICAgICAgICAoMHg3VSA8PCBSVENfRFJfV0RVX1BvcykgICAgICAgICAgLyohPCAweDAwMDBFMDAwICovDQojZGVmaW5lIFJUQ19EUl9XRFUgICAgICAgICAgICAgICAgICAgICAgICAgICBSVENfRFJfV0RVX01zayAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19EUl9XRFVfMCAgICAgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBSVENfRFJfV0RVX1BvcykgICAgICAgICAgLyohPCAweDAwMDAyMDAwICovDQojZGVmaW5lIFJUQ19EUl9XRFVfMSAgICAgICAgICAgICAgICAgICAgICAgICAoMHgyVSA8PCBSVENfRFJfV0RVX1BvcykgICAgICAgICAgLyohPCAweDAwMDA0MDAwICovDQojZGVmaW5lIFJUQ19EUl9XRFVfMiAgICAgICAgICAgICAgICAgICAgICAgICAoMHg0VSA8PCBSVENfRFJfV0RVX1BvcykgICAgICAgICAgLyohPCAweDAwMDA4MDAwICovDQojZGVmaW5lIFJUQ19EUl9NVF9Qb3MgICAgICAgICAgICAgICAgICAgICAgICAoMTJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19EUl9NVF9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBSVENfRFJfTVRfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAxMDAwICovDQojZGVmaW5lIFJUQ19EUl9NVCAgICAgICAgICAgICAgICAgICAgICAgICAgICBSVENfRFJfTVRfTXNrICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19EUl9NVV9Qb3MgICAgICAgICAgICAgICAgICAgICAgICAoOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19EUl9NVV9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAoMHhGVSA8PCBSVENfRFJfTVVfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwRjAwICovDQojZGVmaW5lIFJUQ19EUl9NVSAgICAgICAgICAgICAgICAgICAgICAgICAgICBSVENfRFJfTVVfTXNrICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19EUl9NVV8wICAgICAgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBSVENfRFJfTVVfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwMTAwICovDQojZGVmaW5lIFJUQ19EUl9NVV8xICAgICAgICAgICAgICAgICAgICAgICAgICAoMHgyVSA8PCBSVENfRFJfTVVfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwMjAwICovDQojZGVmaW5lIFJUQ19EUl9NVV8yICAgICAgICAgICAgICAgICAgICAgICAgICAoMHg0VSA8PCBSVENfRFJfTVVfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwNDAwICovDQojZGVmaW5lIFJUQ19EUl9NVV8zICAgICAgICAgICAgICAgICAgICAgICAgICAoMHg4VSA8PCBSVENfRFJfTVVfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwODAwICovDQojZGVmaW5lIFJUQ19EUl9EVF9Qb3MgICAgICAgICAgICAgICAgICAgICAgICAoNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19EUl9EVF9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAoMHgzVSA8PCBSVENfRFJfRFRfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwMDMwICovDQojZGVmaW5lIFJUQ19EUl9EVCAgICAgICAgICAgICAgICAgICAgICAgICAgICBSVENfRFJfRFRfTXNrICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19EUl9EVF8wICAgICAgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBSVENfRFJfRFRfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwMDEwICovDQojZGVmaW5lIFJUQ19EUl9EVF8xICAgICAgICAgICAgICAgICAgICAgICAgICAoMHgyVSA8PCBSVENfRFJfRFRfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwMDIwICovDQojZGVmaW5lIFJUQ19EUl9EVV9Qb3MgICAgICAgICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19EUl9EVV9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAoMHhGVSA8PCBSVENfRFJfRFVfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwMDBGICovDQojZGVmaW5lIFJUQ19EUl9EVSAgICAgICAgICAgICAgICAgICAgICAgICAgICBSVENfRFJfRFVfTXNrICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19EUl9EVV8wICAgICAgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBSVENfRFJfRFVfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwMDAxICovDQojZGVmaW5lIFJUQ19EUl9EVV8xICAgICAgICAgICAgICAgICAgICAgICAgICAoMHgyVSA8PCBSVENfRFJfRFVfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwMDAyICovDQojZGVmaW5lIFJUQ19EUl9EVV8yICAgICAgICAgICAgICAgICAgICAgICAgICAoMHg0VSA8PCBSVENfRFJfRFVfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwMDA0ICovDQojZGVmaW5lIFJUQ19EUl9EVV8zICAgICAgICAgICAgICAgICAgICAgICAgICAoMHg4VSA8PCBSVENfRFJfRFVfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwMDA4ICovDQoNCi8qKioqKioqKioqKioqKioqKioqKiAgQml0cyBkZWZpbml0aW9uIGZvciBSVENfQ1IgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIFJUQ19DUl9DT0VfUG9zICAgICAgICAgICAgICAgICAgICAgICAoMjNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19DUl9DT0VfTXNrICAgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBSVENfQ1JfQ09FX1BvcykgICAgICAgICAgLyohPCAweDAwODAwMDAwICovDQojZGVmaW5lIFJUQ19DUl9DT0UgICAgICAgICAgICAgICAgICAgICAgICAgICBSVENfQ1JfQ09FX01zayAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19DUl9PU0VMX1BvcyAgICAgICAgICAgICAgICAgICAgICAoMjFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19DUl9PU0VMX01zayAgICAgICAgICAgICAgICAgICAgICAoMHgzVSA8PCBSVENfQ1JfT1NFTF9Qb3MpICAgICAgICAgLyohPCAweDAwNjAwMDAwICovDQojZGVmaW5lIFJUQ19DUl9PU0VMICAgICAgICAgICAgICAgICAgICAgICAgICBSVENfQ1JfT1NFTF9Nc2sgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19DUl9PU0VMXzAgICAgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBSVENfQ1JfT1NFTF9Qb3MpICAgICAgICAgLyohPCAweDAwMjAwMDAwICovDQojZGVmaW5lIFJUQ19DUl9PU0VMXzEgICAgICAgICAgICAgICAgICAgICAgICAoMHgyVSA8PCBSVENfQ1JfT1NFTF9Qb3MpICAgICAgICAgLyohPCAweDAwNDAwMDAwICovDQojZGVmaW5lIFJUQ19DUl9QT0xfUG9zICAgICAgICAgICAgICAgICAgICAgICAoMjBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19DUl9QT0xfTXNrICAgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBSVENfQ1JfUE9MX1BvcykgICAgICAgICAgLyohPCAweDAwMTAwMDAwICovDQojZGVmaW5lIFJUQ19DUl9QT0wgICAgICAgICAgICAgICAgICAgICAgICAgICBSVENfQ1JfUE9MX01zayAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19DUl9DT1NFTF9Qb3MgICAgICAgICAgICAgICAgICAgICAoMTlVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19DUl9DT1NFTF9Nc2sgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBSVENfQ1JfQ09TRUxfUG9zKSAgICAgICAgLyohPCAweDAwMDgwMDAwICovDQojZGVmaW5lIFJUQ19DUl9DT1NFTCAgICAgICAgICAgICAgICAgICAgICAgICBSVENfQ1JfQ09TRUxfTXNrICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19DUl9CS1BfUG9zICAgICAgICAgICAgICAgICAgICAgICAoMThVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19DUl9CS1BfTXNrICAgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBSVENfQ1JfQktQX1BvcykgICAgICAgICAgLyohPCAweDAwMDQwMDAwICovDQojZGVmaW5lIFJUQ19DUl9CS1AgICAgICAgICAgICAgICAgICAgICAgICAgICBSVENfQ1JfQktQX01zayAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19DUl9TVUIxSF9Qb3MgICAgICAgICAgICAgICAgICAgICAoMTdVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19DUl9TVUIxSF9Nc2sgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBSVENfQ1JfU1VCMUhfUG9zKSAgICAgICAgLyohPCAweDAwMDIwMDAwICovDQojZGVmaW5lIFJUQ19DUl9TVUIxSCAgICAgICAgICAgICAgICAgICAgICAgICBSVENfQ1JfU1VCMUhfTXNrICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19DUl9BREQxSF9Qb3MgICAgICAgICAgICAgICAgICAgICAoMTZVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19DUl9BREQxSF9Nc2sgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBSVENfQ1JfQUREMUhfUG9zKSAgICAgICAgLyohPCAweDAwMDEwMDAwICovDQojZGVmaW5lIFJUQ19DUl9BREQxSCAgICAgICAgICAgICAgICAgICAgICAgICBSVENfQ1JfQUREMUhfTXNrICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19DUl9UU0lFX1BvcyAgICAgICAgICAgICAgICAgICAgICAoMTVVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19DUl9UU0lFX01zayAgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBSVENfQ1JfVFNJRV9Qb3MpICAgICAgICAgLyohPCAweDAwMDA4MDAwICovDQojZGVmaW5lIFJUQ19DUl9UU0lFICAgICAgICAgICAgICAgICAgICAgICAgICBSVENfQ1JfVFNJRV9Nc2sgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19DUl9XVVRJRV9Qb3MgICAgICAgICAgICAgICAgICAgICAoMTRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19DUl9XVVRJRV9Nc2sgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBSVENfQ1JfV1VUSUVfUG9zKSAgICAgICAgLyohPCAweDAwMDA0MDAwICovDQojZGVmaW5lIFJUQ19DUl9XVVRJRSAgICAgICAgICAgICAgICAgICAgICAgICBSVENfQ1JfV1VUSUVfTXNrICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19DUl9BTFJCSUVfUG9zICAgICAgICAgICAgICAgICAgICAoMTNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19DUl9BTFJCSUVfTXNrICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBSVENfQ1JfQUxSQklFX1BvcykgICAgICAgLyohPCAweDAwMDAyMDAwICovDQojZGVmaW5lIFJUQ19DUl9BTFJCSUUgICAgICAgICAgICAgICAgICAgICAgICBSVENfQ1JfQUxSQklFX01zayAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19DUl9BTFJBSUVfUG9zICAgICAgICAgICAgICAgICAgICAoMTJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19DUl9BTFJBSUVfTXNrICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBSVENfQ1JfQUxSQUlFX1BvcykgICAgICAgLyohPCAweDAwMDAxMDAwICovDQojZGVmaW5lIFJUQ19DUl9BTFJBSUUgICAgICAgICAgICAgICAgICAgICAgICBSVENfQ1JfQUxSQUlFX01zayAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19DUl9UU0VfUG9zICAgICAgICAgICAgICAgICAgICAgICAoMTFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19DUl9UU0VfTXNrICAgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBSVENfQ1JfVFNFX1BvcykgICAgICAgICAgLyohPCAweDAwMDAwODAwICovDQojZGVmaW5lIFJUQ19DUl9UU0UgICAgICAgICAgICAgICAgICAgICAgICAgICBSVENfQ1JfVFNFX01zayAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19DUl9XVVRFX1BvcyAgICAgICAgICAgICAgICAgICAgICAoMTBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19DUl9XVVRFX01zayAgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBSVENfQ1JfV1VURV9Qb3MpICAgICAgICAgLyohPCAweDAwMDAwNDAwICovDQojZGVmaW5lIFJUQ19DUl9XVVRFICAgICAgICAgICAgICAgICAgICAgICAgICBSVENfQ1JfV1VURV9Nc2sgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19DUl9BTFJCRV9Qb3MgICAgICAgICAgICAgICAgICAgICAoOVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19DUl9BTFJCRV9Nc2sgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBSVENfQ1JfQUxSQkVfUG9zKSAgICAgICAgLyohPCAweDAwMDAwMjAwICovDQojZGVmaW5lIFJUQ19DUl9BTFJCRSAgICAgICAgICAgICAgICAgICAgICAgICBSVENfQ1JfQUxSQkVfTXNrICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19DUl9BTFJBRV9Qb3MgICAgICAgICAgICAgICAgICAgICAoOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19DUl9BTFJBRV9Nc2sgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBSVENfQ1JfQUxSQUVfUG9zKSAgICAgICAgLyohPCAweDAwMDAwMTAwICovDQojZGVmaW5lIFJUQ19DUl9BTFJBRSAgICAgICAgICAgICAgICAgICAgICAgICBSVENfQ1JfQUxSQUVfTXNrICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19DUl9EQ0VfUG9zICAgICAgICAgICAgICAgICAgICAgICAoN1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19DUl9EQ0VfTXNrICAgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBSVENfQ1JfRENFX1BvcykgICAgICAgICAgLyohPCAweDAwMDAwMDgwICovDQojZGVmaW5lIFJUQ19DUl9EQ0UgICAgICAgICAgICAgICAgICAgICAgICAgICBSVENfQ1JfRENFX01zayAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19DUl9GTVRfUG9zICAgICAgICAgICAgICAgICAgICAgICAoNlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19DUl9GTVRfTXNrICAgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBSVENfQ1JfRk1UX1BvcykgICAgICAgICAgLyohPCAweDAwMDAwMDQwICovDQojZGVmaW5lIFJUQ19DUl9GTVQgICAgICAgICAgICAgICAgICAgICAgICAgICBSVENfQ1JfRk1UX01zayAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19DUl9CWVBTSEFEX1BvcyAgICAgICAgICAgICAgICAgICAoNVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19DUl9CWVBTSEFEX01zayAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBSVENfQ1JfQllQU0hBRF9Qb3MpICAgICAgLyohPCAweDAwMDAwMDIwICovDQojZGVmaW5lIFJUQ19DUl9CWVBTSEFEICAgICAgICAgICAgICAgICAgICAgICBSVENfQ1JfQllQU0hBRF9Nc2sgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19DUl9SRUZDS09OX1BvcyAgICAgICAgICAgICAgICAgICAoNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19DUl9SRUZDS09OX01zayAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBSVENfQ1JfUkVGQ0tPTl9Qb3MpICAgICAgLyohPCAweDAwMDAwMDEwICovDQojZGVmaW5lIFJUQ19DUl9SRUZDS09OICAgICAgICAgICAgICAgICAgICAgICBSVENfQ1JfUkVGQ0tPTl9Nc2sgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19DUl9UU0VER0VfUG9zICAgICAgICAgICAgICAgICAgICAoM1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19DUl9UU0VER0VfTXNrICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBSVENfQ1JfVFNFREdFX1BvcykgICAgICAgLyohPCAweDAwMDAwMDA4ICovDQojZGVmaW5lIFJUQ19DUl9UU0VER0UgICAgICAgICAgICAgICAgICAgICAgICBSVENfQ1JfVFNFREdFX01zayAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19DUl9XVUNLU0VMX1BvcyAgICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19DUl9XVUNLU0VMX01zayAgICAgICAgICAgICAgICAgICAoMHg3VSA8PCBSVENfQ1JfV1VDS1NFTF9Qb3MpICAgICAgLyohPCAweDAwMDAwMDA3ICovDQojZGVmaW5lIFJUQ19DUl9XVUNLU0VMICAgICAgICAgICAgICAgICAgICAgICBSVENfQ1JfV1VDS1NFTF9Nc2sgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19DUl9XVUNLU0VMXzAgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBSVENfQ1JfV1VDS1NFTF9Qb3MpICAgICAgLyohPCAweDAwMDAwMDAxICovDQojZGVmaW5lIFJUQ19DUl9XVUNLU0VMXzEgICAgICAgICAgICAgICAgICAgICAoMHgyVSA8PCBSVENfQ1JfV1VDS1NFTF9Qb3MpICAgICAgLyohPCAweDAwMDAwMDAyICovDQojZGVmaW5lIFJUQ19DUl9XVUNLU0VMXzIgICAgICAgICAgICAgICAgICAgICAoMHg0VSA8PCBSVENfQ1JfV1VDS1NFTF9Qb3MpICAgICAgLyohPCAweDAwMDAwMDA0ICovDQoNCi8qIExlZ2FjeSBkZWZpbmVzICovDQojZGVmaW5lICBSVENfQ1JfQkNLX1BvcyBSVENfQ1JfQktQX1Bvcw0KI2RlZmluZSAgUlRDX0NSX0JDS19Nc2sgUlRDX0NSX0JLUF9Nc2sNCiNkZWZpbmUgIFJUQ19DUl9CQ0sgICAgIFJUQ19DUl9CS1ANCg0KLyoqKioqKioqKioqKioqKioqKioqICBCaXRzIGRlZmluaXRpb24gZm9yIFJUQ19JU1IgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgUlRDX0lTUl9SRUNBTFBGX1BvcyAgICAgICAgICAgICAgICAgICgxNlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0lTUl9SRUNBTFBGX01zayAgICAgICAgICAgICAgICAgICgweDFVIDw8IFJUQ19JU1JfUkVDQUxQRl9Qb3MpICAgICAvKiE8IDB4MDAwMTAwMDAgKi8NCiNkZWZpbmUgUlRDX0lTUl9SRUNBTFBGICAgICAgICAgICAgICAgICAgICAgIFJUQ19JU1JfUkVDQUxQRl9Nc2sgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0lTUl9UQU1QM0ZfUG9zICAgICAgICAgICAgICAgICAgICgxNVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0lTUl9UQU1QM0ZfTXNrICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFJUQ19JU1JfVEFNUDNGX1BvcykgICAgICAvKiE8IDB4MDAwMDgwMDAgKi8NCiNkZWZpbmUgUlRDX0lTUl9UQU1QM0YgICAgICAgICAgICAgICAgICAgICAgIFJUQ19JU1JfVEFNUDNGX01zayAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0lTUl9UQU1QMkZfUG9zICAgICAgICAgICAgICAgICAgICgxNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0lTUl9UQU1QMkZfTXNrICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFJUQ19JU1JfVEFNUDJGX1BvcykgICAgICAvKiE8IDB4MDAwMDQwMDAgKi8NCiNkZWZpbmUgUlRDX0lTUl9UQU1QMkYgICAgICAgICAgICAgICAgICAgICAgIFJUQ19JU1JfVEFNUDJGX01zayAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0lTUl9UQU1QMUZfUG9zICAgICAgICAgICAgICAgICAgICgxM1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0lTUl9UQU1QMUZfTXNrICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFJUQ19JU1JfVEFNUDFGX1BvcykgICAgICAvKiE8IDB4MDAwMDIwMDAgKi8NCiNkZWZpbmUgUlRDX0lTUl9UQU1QMUYgICAgICAgICAgICAgICAgICAgICAgIFJUQ19JU1JfVEFNUDFGX01zayAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0lTUl9UU09WRl9Qb3MgICAgICAgICAgICAgICAgICAgICgxMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0lTUl9UU09WRl9Nc2sgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFJUQ19JU1JfVFNPVkZfUG9zKSAgICAgICAvKiE8IDB4MDAwMDEwMDAgKi8NCiNkZWZpbmUgUlRDX0lTUl9UU09WRiAgICAgICAgICAgICAgICAgICAgICAgIFJUQ19JU1JfVFNPVkZfTXNrICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0lTUl9UU0ZfUG9zICAgICAgICAgICAgICAgICAgICAgICgxMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0lTUl9UU0ZfTXNrICAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFJUQ19JU1JfVFNGX1BvcykgICAgICAgICAvKiE8IDB4MDAwMDA4MDAgKi8NCiNkZWZpbmUgUlRDX0lTUl9UU0YgICAgICAgICAgICAgICAgICAgICAgICAgIFJUQ19JU1JfVFNGX01zayAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0lTUl9XVVRGX1BvcyAgICAgICAgICAgICAgICAgICAgICgxMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0lTUl9XVVRGX01zayAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFJUQ19JU1JfV1VURl9Qb3MpICAgICAgICAvKiE8IDB4MDAwMDA0MDAgKi8NCiNkZWZpbmUgUlRDX0lTUl9XVVRGICAgICAgICAgICAgICAgICAgICAgICAgIFJUQ19JU1JfV1VURl9Nc2sgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0lTUl9BTFJCRl9Qb3MgICAgICAgICAgICAgICAgICAgICg5VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0lTUl9BTFJCRl9Nc2sgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFJUQ19JU1JfQUxSQkZfUG9zKSAgICAgICAvKiE8IDB4MDAwMDAyMDAgKi8NCiNkZWZpbmUgUlRDX0lTUl9BTFJCRiAgICAgICAgICAgICAgICAgICAgICAgIFJUQ19JU1JfQUxSQkZfTXNrICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0lTUl9BTFJBRl9Qb3MgICAgICAgICAgICAgICAgICAgICg4VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0lTUl9BTFJBRl9Nc2sgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFJUQ19JU1JfQUxSQUZfUG9zKSAgICAgICAvKiE8IDB4MDAwMDAxMDAgKi8NCiNkZWZpbmUgUlRDX0lTUl9BTFJBRiAgICAgICAgICAgICAgICAgICAgICAgIFJUQ19JU1JfQUxSQUZfTXNrICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0lTUl9JTklUX1BvcyAgICAgICAgICAgICAgICAgICAgICg3VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0lTUl9JTklUX01zayAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFJUQ19JU1JfSU5JVF9Qb3MpICAgICAgICAvKiE8IDB4MDAwMDAwODAgKi8NCiNkZWZpbmUgUlRDX0lTUl9JTklUICAgICAgICAgICAgICAgICAgICAgICAgIFJUQ19JU1JfSU5JVF9Nc2sgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0lTUl9JTklURl9Qb3MgICAgICAgICAgICAgICAgICAgICg2VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0lTUl9JTklURl9Nc2sgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFJUQ19JU1JfSU5JVEZfUG9zKSAgICAgICAvKiE8IDB4MDAwMDAwNDAgKi8NCiNkZWZpbmUgUlRDX0lTUl9JTklURiAgICAgICAgICAgICAgICAgICAgICAgIFJUQ19JU1JfSU5JVEZfTXNrICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0lTUl9SU0ZfUG9zICAgICAgICAgICAgICAgICAgICAgICg1VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0lTUl9SU0ZfTXNrICAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFJUQ19JU1JfUlNGX1BvcykgICAgICAgICAvKiE8IDB4MDAwMDAwMjAgKi8NCiNkZWZpbmUgUlRDX0lTUl9SU0YgICAgICAgICAgICAgICAgICAgICAgICAgIFJUQ19JU1JfUlNGX01zayAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0lTUl9JTklUU19Qb3MgICAgICAgICAgICAgICAgICAgICg0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0lTUl9JTklUU19Nc2sgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFJUQ19JU1JfSU5JVFNfUG9zKSAgICAgICAvKiE8IDB4MDAwMDAwMTAgKi8NCiNkZWZpbmUgUlRDX0lTUl9JTklUUyAgICAgICAgICAgICAgICAgICAgICAgIFJUQ19JU1JfSU5JVFNfTXNrICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0lTUl9TSFBGX1BvcyAgICAgICAgICAgICAgICAgICAgICgzVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0lTUl9TSFBGX01zayAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFJUQ19JU1JfU0hQRl9Qb3MpICAgICAgICAvKiE8IDB4MDAwMDAwMDggKi8NCiNkZWZpbmUgUlRDX0lTUl9TSFBGICAgICAgICAgICAgICAgICAgICAgICAgIFJUQ19JU1JfU0hQRl9Nc2sgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0lTUl9XVVRXRl9Qb3MgICAgICAgICAgICAgICAgICAgICgyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0lTUl9XVVRXRl9Nc2sgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFJUQ19JU1JfV1VUV0ZfUG9zKSAgICAgICAvKiE8IDB4MDAwMDAwMDQgKi8NCiNkZWZpbmUgUlRDX0lTUl9XVVRXRiAgICAgICAgICAgICAgICAgICAgICAgIFJUQ19JU1JfV1VUV0ZfTXNrICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0lTUl9BTFJCV0ZfUG9zICAgICAgICAgICAgICAgICAgICgxVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0lTUl9BTFJCV0ZfTXNrICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFJUQ19JU1JfQUxSQldGX1BvcykgICAgICAvKiE8IDB4MDAwMDAwMDIgKi8NCiNkZWZpbmUgUlRDX0lTUl9BTFJCV0YgICAgICAgICAgICAgICAgICAgICAgIFJUQ19JU1JfQUxSQldGX01zayAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0lTUl9BTFJBV0ZfUG9zICAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0lTUl9BTFJBV0ZfTXNrICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFJUQ19JU1JfQUxSQVdGX1BvcykgICAgICAvKiE8IDB4MDAwMDAwMDEgKi8NCiNkZWZpbmUgUlRDX0lTUl9BTFJBV0YgICAgICAgICAgICAgICAgICAgICAgIFJUQ19JU1JfQUxSQVdGX01zayAgICAgICAgICAgICAgICANCg0KLyoqKioqKioqKioqKioqKioqKioqICBCaXRzIGRlZmluaXRpb24gZm9yIFJUQ19QUkVSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgUlRDX1BSRVJfUFJFRElWX0FfUG9zICAgICAgICAgICAgICAgICgxNlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX1BSRVJfUFJFRElWX0FfTXNrICAgICAgICAgICAgICAgICgweDdGVSA8PCBSVENfUFJFUl9QUkVESVZfQV9Qb3MpICAvKiE8IDB4MDA3RjAwMDAgKi8NCiNkZWZpbmUgUlRDX1BSRVJfUFJFRElWX0EgICAgICAgICAgICAgICAgICAgIFJUQ19QUkVSX1BSRURJVl9BX01zayAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX1BSRVJfUFJFRElWX1NfUG9zICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX1BSRVJfUFJFRElWX1NfTXNrICAgICAgICAgICAgICAgICgweDdGRkZVIDw8IFJUQ19QUkVSX1BSRURJVl9TX1BvcykgLyohPCAweDAwMDA3RkZGICovDQojZGVmaW5lIFJUQ19QUkVSX1BSRURJVl9TICAgICAgICAgICAgICAgICAgICBSVENfUFJFUl9QUkVESVZfU19Nc2sgICAgICAgICAgICAgDQoNCi8qKioqKioqKioqKioqKioqKioqKiAgQml0cyBkZWZpbml0aW9uIGZvciBSVENfV1VUUiByZWdpc3RlciAgKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIFJUQ19XVVRSX1dVVF9Qb3MgICAgICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19XVVRSX1dVVF9Nc2sgICAgICAgICAgICAgICAgICAgICAoMHhGRkZGVSA8PCBSVENfV1VUUl9XVVRfUG9zKSAgICAgLyohPCAweDAwMDBGRkZGICovDQojZGVmaW5lIFJUQ19XVVRSX1dVVCAgICAgICAgICAgICAgICAgICAgICAgICBSVENfV1VUUl9XVVRfTXNrICAgICAgICAgICAgICAgICAgDQoNCi8qKioqKioqKioqKioqKioqKioqKiAgQml0cyBkZWZpbml0aW9uIGZvciBSVENfQ0FMSUJSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKiovDQojZGVmaW5lIFJUQ19DQUxJQlJfRENTX1BvcyAgICAgICAgICAgICAgICAgICAoN1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19DQUxJQlJfRENTX01zayAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBSVENfQ0FMSUJSX0RDU19Qb3MpICAgICAgLyohPCAweDAwMDAwMDgwICovDQojZGVmaW5lIFJUQ19DQUxJQlJfRENTICAgICAgICAgICAgICAgICAgICAgICBSVENfQ0FMSUJSX0RDU19Nc2sgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19DQUxJQlJfRENfUG9zICAgICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19DQUxJQlJfRENfTXNrICAgICAgICAgICAgICAgICAgICAoMHgxRlUgPDwgUlRDX0NBTElCUl9EQ19Qb3MpICAgICAgLyohPCAweDAwMDAwMDFGICovDQojZGVmaW5lIFJUQ19DQUxJQlJfREMgICAgICAgICAgICAgICAgICAgICAgICBSVENfQ0FMSUJSX0RDX01zayAgICAgICAgICAgICAgICAgDQoNCi8qKioqKioqKioqKioqKioqKioqKiAgQml0cyBkZWZpbml0aW9uIGZvciBSVENfQUxSTUFSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKiovDQojZGVmaW5lIFJUQ19BTFJNQVJfTVNLNF9Qb3MgICAgICAgICAgICAgICAgICAoMzFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19BTFJNQVJfTVNLNF9Nc2sgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBSVENfQUxSTUFSX01TSzRfUG9zKSAgICAgLyohPCAweDgwMDAwMDAwICovDQojZGVmaW5lIFJUQ19BTFJNQVJfTVNLNCAgICAgICAgICAgICAgICAgICAgICBSVENfQUxSTUFSX01TSzRfTXNrICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19BTFJNQVJfV0RTRUxfUG9zICAgICAgICAgICAgICAgICAoMzBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19BTFJNQVJfV0RTRUxfTXNrICAgICAgICAgICAgICAgICAoMHgxVSA8PCBSVENfQUxSTUFSX1dEU0VMX1BvcykgICAgLyohPCAweDQwMDAwMDAwICovDQojZGVmaW5lIFJUQ19BTFJNQVJfV0RTRUwgICAgICAgICAgICAgICAgICAgICBSVENfQUxSTUFSX1dEU0VMX01zayAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19BTFJNQVJfRFRfUG9zICAgICAgICAgICAgICAgICAgICAoMjhVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19BTFJNQVJfRFRfTXNrICAgICAgICAgICAgICAgICAgICAoMHgzVSA8PCBSVENfQUxSTUFSX0RUX1BvcykgICAgICAgLyohPCAweDMwMDAwMDAwICovDQojZGVmaW5lIFJUQ19BTFJNQVJfRFQgICAgICAgICAgICAgICAgICAgICAgICBSVENfQUxSTUFSX0RUX01zayAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19BTFJNQVJfRFRfMCAgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBSVENfQUxSTUFSX0RUX1BvcykgICAgICAgLyohPCAweDEwMDAwMDAwICovDQojZGVmaW5lIFJUQ19BTFJNQVJfRFRfMSAgICAgICAgICAgICAgICAgICAgICAoMHgyVSA8PCBSVENfQUxSTUFSX0RUX1BvcykgICAgICAgLyohPCAweDIwMDAwMDAwICovDQojZGVmaW5lIFJUQ19BTFJNQVJfRFVfUG9zICAgICAgICAgICAgICAgICAgICAoMjRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19BTFJNQVJfRFVfTXNrICAgICAgICAgICAgICAgICAgICAoMHhGVSA8PCBSVENfQUxSTUFSX0RVX1BvcykgICAgICAgLyohPCAweDBGMDAwMDAwICovDQojZGVmaW5lIFJUQ19BTFJNQVJfRFUgICAgICAgICAgICAgICAgICAgICAgICBSVENfQUxSTUFSX0RVX01zayAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19BTFJNQVJfRFVfMCAgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBSVENfQUxSTUFSX0RVX1BvcykgICAgICAgLyohPCAweDAxMDAwMDAwICovDQojZGVmaW5lIFJUQ19BTFJNQVJfRFVfMSAgICAgICAgICAgICAgICAgICAgICAoMHgyVSA8PCBSVENfQUxSTUFSX0RVX1BvcykgICAgICAgLyohPCAweDAyMDAwMDAwICovDQojZGVmaW5lIFJUQ19BTFJNQVJfRFVfMiAgICAgICAgICAgICAgICAgICAgICAoMHg0VSA8PCBSVENfQUxSTUFSX0RVX1BvcykgICAgICAgLyohPCAweDA0MDAwMDAwICovDQojZGVmaW5lIFJUQ19BTFJNQVJfRFVfMyAgICAgICAgICAgICAgICAgICAgICAoMHg4VSA8PCBSVENfQUxSTUFSX0RVX1BvcykgICAgICAgLyohPCAweDA4MDAwMDAwICovDQojZGVmaW5lIFJUQ19BTFJNQVJfTVNLM19Qb3MgICAgICAgICAgICAgICAgICAoMjNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19BTFJNQVJfTVNLM19Nc2sgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBSVENfQUxSTUFSX01TSzNfUG9zKSAgICAgLyohPCAweDAwODAwMDAwICovDQojZGVmaW5lIFJUQ19BTFJNQVJfTVNLMyAgICAgICAgICAgICAgICAgICAgICBSVENfQUxSTUFSX01TSzNfTXNrICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19BTFJNQVJfUE1fUG9zICAgICAgICAgICAgICAgICAgICAoMjJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19BTFJNQVJfUE1fTXNrICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBSVENfQUxSTUFSX1BNX1BvcykgICAgICAgLyohPCAweDAwNDAwMDAwICovDQojZGVmaW5lIFJUQ19BTFJNQVJfUE0gICAgICAgICAgICAgICAgICAgICAgICBSVENfQUxSTUFSX1BNX01zayAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19BTFJNQVJfSFRfUG9zICAgICAgICAgICAgICAgICAgICAoMjBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19BTFJNQVJfSFRfTXNrICAgICAgICAgICAgICAgICAgICAoMHgzVSA8PCBSVENfQUxSTUFSX0hUX1BvcykgICAgICAgLyohPCAweDAwMzAwMDAwICovDQojZGVmaW5lIFJUQ19BTFJNQVJfSFQgICAgICAgICAgICAgICAgICAgICAgICBSVENfQUxSTUFSX0hUX01zayAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19BTFJNQVJfSFRfMCAgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBSVENfQUxSTUFSX0hUX1BvcykgICAgICAgLyohPCAweDAwMTAwMDAwICovDQojZGVmaW5lIFJUQ19BTFJNQVJfSFRfMSAgICAgICAgICAgICAgICAgICAgICAoMHgyVSA8PCBSVENfQUxSTUFSX0hUX1BvcykgICAgICAgLyohPCAweDAwMjAwMDAwICovDQojZGVmaW5lIFJUQ19BTFJNQVJfSFVfUG9zICAgICAgICAgICAgICAgICAgICAoMTZVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19BTFJNQVJfSFVfTXNrICAgICAgICAgICAgICAgICAgICAoMHhGVSA8PCBSVENfQUxSTUFSX0hVX1BvcykgICAgICAgLyohPCAweDAwMEYwMDAwICovDQojZGVmaW5lIFJUQ19BTFJNQVJfSFUgICAgICAgICAgICAgICAgICAgICAgICBSVENfQUxSTUFSX0hVX01zayAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19BTFJNQVJfSFVfMCAgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBSVENfQUxSTUFSX0hVX1BvcykgICAgICAgLyohPCAweDAwMDEwMDAwICovDQojZGVmaW5lIFJUQ19BTFJNQVJfSFVfMSAgICAgICAgICAgICAgICAgICAgICAoMHgyVSA8PCBSVENfQUxSTUFSX0hVX1BvcykgICAgICAgLyohPCAweDAwMDIwMDAwICovDQojZGVmaW5lIFJUQ19BTFJNQVJfSFVfMiAgICAgICAgICAgICAgICAgICAgICAoMHg0VSA8PCBSVENfQUxSTUFSX0hVX1BvcykgICAgICAgLyohPCAweDAwMDQwMDAwICovDQojZGVmaW5lIFJUQ19BTFJNQVJfSFVfMyAgICAgICAgICAgICAgICAgICAgICAoMHg4VSA8PCBSVENfQUxSTUFSX0hVX1BvcykgICAgICAgLyohPCAweDAwMDgwMDAwICovDQojZGVmaW5lIFJUQ19BTFJNQVJfTVNLMl9Qb3MgICAgICAgICAgICAgICAgICAoMTVVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19BTFJNQVJfTVNLMl9Nc2sgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBSVENfQUxSTUFSX01TSzJfUG9zKSAgICAgLyohPCAweDAwMDA4MDAwICovDQojZGVmaW5lIFJUQ19BTFJNQVJfTVNLMiAgICAgICAgICAgICAgICAgICAgICBSVENfQUxSTUFSX01TSzJfTXNrICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19BTFJNQVJfTU5UX1BvcyAgICAgICAgICAgICAgICAgICAoMTJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19BTFJNQVJfTU5UX01zayAgICAgICAgICAgICAgICAgICAoMHg3VSA8PCBSVENfQUxSTUFSX01OVF9Qb3MpICAgICAgLyohPCAweDAwMDA3MDAwICovDQojZGVmaW5lIFJUQ19BTFJNQVJfTU5UICAgICAgICAgICAgICAgICAgICAgICBSVENfQUxSTUFSX01OVF9Nc2sgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19BTFJNQVJfTU5UXzAgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBSVENfQUxSTUFSX01OVF9Qb3MpICAgICAgLyohPCAweDAwMDAxMDAwICovDQojZGVmaW5lIFJUQ19BTFJNQVJfTU5UXzEgICAgICAgICAgICAgICAgICAgICAoMHgyVSA8PCBSVENfQUxSTUFSX01OVF9Qb3MpICAgICAgLyohPCAweDAwMDAyMDAwICovDQojZGVmaW5lIFJUQ19BTFJNQVJfTU5UXzIgICAgICAgICAgICAgICAgICAgICAoMHg0VSA8PCBSVENfQUxSTUFSX01OVF9Qb3MpICAgICAgLyohPCAweDAwMDA0MDAwICovDQojZGVmaW5lIFJUQ19BTFJNQVJfTU5VX1BvcyAgICAgICAgICAgICAgICAgICAoOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19BTFJNQVJfTU5VX01zayAgICAgICAgICAgICAgICAgICAoMHhGVSA8PCBSVENfQUxSTUFSX01OVV9Qb3MpICAgICAgLyohPCAweDAwMDAwRjAwICovDQojZGVmaW5lIFJUQ19BTFJNQVJfTU5VICAgICAgICAgICAgICAgICAgICAgICBSVENfQUxSTUFSX01OVV9Nc2sgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19BTFJNQVJfTU5VXzAgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBSVENfQUxSTUFSX01OVV9Qb3MpICAgICAgLyohPCAweDAwMDAwMTAwICovDQojZGVmaW5lIFJUQ19BTFJNQVJfTU5VXzEgICAgICAgICAgICAgICAgICAgICAoMHgyVSA8PCBSVENfQUxSTUFSX01OVV9Qb3MpICAgICAgLyohPCAweDAwMDAwMjAwICovDQojZGVmaW5lIFJUQ19BTFJNQVJfTU5VXzIgICAgICAgICAgICAgICAgICAgICAoMHg0VSA8PCBSVENfQUxSTUFSX01OVV9Qb3MpICAgICAgLyohPCAweDAwMDAwNDAwICovDQojZGVmaW5lIFJUQ19BTFJNQVJfTU5VXzMgICAgICAgICAgICAgICAgICAgICAoMHg4VSA8PCBSVENfQUxSTUFSX01OVV9Qb3MpICAgICAgLyohPCAweDAwMDAwODAwICovDQojZGVmaW5lIFJUQ19BTFJNQVJfTVNLMV9Qb3MgICAgICAgICAgICAgICAgICAoN1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19BTFJNQVJfTVNLMV9Nc2sgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBSVENfQUxSTUFSX01TSzFfUG9zKSAgICAgLyohPCAweDAwMDAwMDgwICovDQojZGVmaW5lIFJUQ19BTFJNQVJfTVNLMSAgICAgICAgICAgICAgICAgICAgICBSVENfQUxSTUFSX01TSzFfTXNrICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19BTFJNQVJfU1RfUG9zICAgICAgICAgICAgICAgICAgICAoNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19BTFJNQVJfU1RfTXNrICAgICAgICAgICAgICAgICAgICAoMHg3VSA8PCBSVENfQUxSTUFSX1NUX1BvcykgICAgICAgLyohPCAweDAwMDAwMDcwICovDQojZGVmaW5lIFJUQ19BTFJNQVJfU1QgICAgICAgICAgICAgICAgICAgICAgICBSVENfQUxSTUFSX1NUX01zayAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19BTFJNQVJfU1RfMCAgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBSVENfQUxSTUFSX1NUX1BvcykgICAgICAgLyohPCAweDAwMDAwMDEwICovDQojZGVmaW5lIFJUQ19BTFJNQVJfU1RfMSAgICAgICAgICAgICAgICAgICAgICAoMHgyVSA8PCBSVENfQUxSTUFSX1NUX1BvcykgICAgICAgLyohPCAweDAwMDAwMDIwICovDQojZGVmaW5lIFJUQ19BTFJNQVJfU1RfMiAgICAgICAgICAgICAgICAgICAgICAoMHg0VSA8PCBSVENfQUxSTUFSX1NUX1BvcykgICAgICAgLyohPCAweDAwMDAwMDQwICovDQojZGVmaW5lIFJUQ19BTFJNQVJfU1VfUG9zICAgICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19BTFJNQVJfU1VfTXNrICAgICAgICAgICAgICAgICAgICAoMHhGVSA8PCBSVENfQUxSTUFSX1NVX1BvcykgICAgICAgLyohPCAweDAwMDAwMDBGICovDQojZGVmaW5lIFJUQ19BTFJNQVJfU1UgICAgICAgICAgICAgICAgICAgICAgICBSVENfQUxSTUFSX1NVX01zayAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19BTFJNQVJfU1VfMCAgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBSVENfQUxSTUFSX1NVX1BvcykgICAgICAgLyohPCAweDAwMDAwMDAxICovDQojZGVmaW5lIFJUQ19BTFJNQVJfU1VfMSAgICAgICAgICAgICAgICAgICAgICAoMHgyVSA8PCBSVENfQUxSTUFSX1NVX1BvcykgICAgICAgLyohPCAweDAwMDAwMDAyICovDQojZGVmaW5lIFJUQ19BTFJNQVJfU1VfMiAgICAgICAgICAgICAgICAgICAgICAoMHg0VSA8PCBSVENfQUxSTUFSX1NVX1BvcykgICAgICAgLyohPCAweDAwMDAwMDA0ICovDQojZGVmaW5lIFJUQ19BTFJNQVJfU1VfMyAgICAgICAgICAgICAgICAgICAgICAoMHg4VSA8PCBSVENfQUxSTUFSX1NVX1BvcykgICAgICAgLyohPCAweDAwMDAwMDA4ICovDQoNCi8qKioqKioqKioqKioqKioqKioqKiAgQml0cyBkZWZpbml0aW9uIGZvciBSVENfQUxSTUJSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKiovDQojZGVmaW5lIFJUQ19BTFJNQlJfTVNLNF9Qb3MgICAgICAgICAgICAgICAgICAoMzFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19BTFJNQlJfTVNLNF9Nc2sgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBSVENfQUxSTUJSX01TSzRfUG9zKSAgICAgLyohPCAweDgwMDAwMDAwICovDQojZGVmaW5lIFJUQ19BTFJNQlJfTVNLNCAgICAgICAgICAgICAgICAgICAgICBSVENfQUxSTUJSX01TSzRfTXNrICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19BTFJNQlJfV0RTRUxfUG9zICAgICAgICAgICAgICAgICAoMzBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19BTFJNQlJfV0RTRUxfTXNrICAgICAgICAgICAgICAgICAoMHgxVSA8PCBSVENfQUxSTUJSX1dEU0VMX1BvcykgICAgLyohPCAweDQwMDAwMDAwICovDQojZGVmaW5lIFJUQ19BTFJNQlJfV0RTRUwgICAgICAgICAgICAgICAgICAgICBSVENfQUxSTUJSX1dEU0VMX01zayAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19BTFJNQlJfRFRfUG9zICAgICAgICAgICAgICAgICAgICAoMjhVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19BTFJNQlJfRFRfTXNrICAgICAgICAgICAgICAgICAgICAoMHgzVSA8PCBSVENfQUxSTUJSX0RUX1BvcykgICAgICAgLyohPCAweDMwMDAwMDAwICovDQojZGVmaW5lIFJUQ19BTFJNQlJfRFQgICAgICAgICAgICAgICAgICAgICAgICBSVENfQUxSTUJSX0RUX01zayAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19BTFJNQlJfRFRfMCAgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBSVENfQUxSTUJSX0RUX1BvcykgICAgICAgLyohPCAweDEwMDAwMDAwICovDQojZGVmaW5lIFJUQ19BTFJNQlJfRFRfMSAgICAgICAgICAgICAgICAgICAgICAoMHgyVSA8PCBSVENfQUxSTUJSX0RUX1BvcykgICAgICAgLyohPCAweDIwMDAwMDAwICovDQojZGVmaW5lIFJUQ19BTFJNQlJfRFVfUG9zICAgICAgICAgICAgICAgICAgICAoMjRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19BTFJNQlJfRFVfTXNrICAgICAgICAgICAgICAgICAgICAoMHhGVSA8PCBSVENfQUxSTUJSX0RVX1BvcykgICAgICAgLyohPCAweDBGMDAwMDAwICovDQojZGVmaW5lIFJUQ19BTFJNQlJfRFUgICAgICAgICAgICAgICAgICAgICAgICBSVENfQUxSTUJSX0RVX01zayAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19BTFJNQlJfRFVfMCAgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBSVENfQUxSTUJSX0RVX1BvcykgICAgICAgLyohPCAweDAxMDAwMDAwICovDQojZGVmaW5lIFJUQ19BTFJNQlJfRFVfMSAgICAgICAgICAgICAgICAgICAgICAoMHgyVSA8PCBSVENfQUxSTUJSX0RVX1BvcykgICAgICAgLyohPCAweDAyMDAwMDAwICovDQojZGVmaW5lIFJUQ19BTFJNQlJfRFVfMiAgICAgICAgICAgICAgICAgICAgICAoMHg0VSA8PCBSVENfQUxSTUJSX0RVX1BvcykgICAgICAgLyohPCAweDA0MDAwMDAwICovDQojZGVmaW5lIFJUQ19BTFJNQlJfRFVfMyAgICAgICAgICAgICAgICAgICAgICAoMHg4VSA8PCBSVENfQUxSTUJSX0RVX1BvcykgICAgICAgLyohPCAweDA4MDAwMDAwICovDQojZGVmaW5lIFJUQ19BTFJNQlJfTVNLM19Qb3MgICAgICAgICAgICAgICAgICAoMjNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19BTFJNQlJfTVNLM19Nc2sgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBSVENfQUxSTUJSX01TSzNfUG9zKSAgICAgLyohPCAweDAwODAwMDAwICovDQojZGVmaW5lIFJUQ19BTFJNQlJfTVNLMyAgICAgICAgICAgICAgICAgICAgICBSVENfQUxSTUJSX01TSzNfTXNrICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19BTFJNQlJfUE1fUG9zICAgICAgICAgICAgICAgICAgICAoMjJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19BTFJNQlJfUE1fTXNrICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBSVENfQUxSTUJSX1BNX1BvcykgICAgICAgLyohPCAweDAwNDAwMDAwICovDQojZGVmaW5lIFJUQ19BTFJNQlJfUE0gICAgICAgICAgICAgICAgICAgICAgICBSVENfQUxSTUJSX1BNX01zayAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19BTFJNQlJfSFRfUG9zICAgICAgICAgICAgICAgICAgICAoMjBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19BTFJNQlJfSFRfTXNrICAgICAgICAgICAgICAgICAgICAoMHgzVSA8PCBSVENfQUxSTUJSX0hUX1BvcykgICAgICAgLyohPCAweDAwMzAwMDAwICovDQojZGVmaW5lIFJUQ19BTFJNQlJfSFQgICAgICAgICAgICAgICAgICAgICAgICBSVENfQUxSTUJSX0hUX01zayAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19BTFJNQlJfSFRfMCAgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBSVENfQUxSTUJSX0hUX1BvcykgICAgICAgLyohPCAweDAwMTAwMDAwICovDQojZGVmaW5lIFJUQ19BTFJNQlJfSFRfMSAgICAgICAgICAgICAgICAgICAgICAoMHgyVSA8PCBSVENfQUxSTUJSX0hUX1BvcykgICAgICAgLyohPCAweDAwMjAwMDAwICovDQojZGVmaW5lIFJUQ19BTFJNQlJfSFVfUG9zICAgICAgICAgICAgICAgICAgICAoMTZVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19BTFJNQlJfSFVfTXNrICAgICAgICAgICAgICAgICAgICAoMHhGVSA8PCBSVENfQUxSTUJSX0hVX1BvcykgICAgICAgLyohPCAweDAwMEYwMDAwICovDQojZGVmaW5lIFJUQ19BTFJNQlJfSFUgICAgICAgICAgICAgICAgICAgICAgICBSVENfQUxSTUJSX0hVX01zayAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19BTFJNQlJfSFVfMCAgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBSVENfQUxSTUJSX0hVX1BvcykgICAgICAgLyohPCAweDAwMDEwMDAwICovDQojZGVmaW5lIFJUQ19BTFJNQlJfSFVfMSAgICAgICAgICAgICAgICAgICAgICAoMHgyVSA8PCBSVENfQUxSTUJSX0hVX1BvcykgICAgICAgLyohPCAweDAwMDIwMDAwICovDQojZGVmaW5lIFJUQ19BTFJNQlJfSFVfMiAgICAgICAgICAgICAgICAgICAgICAoMHg0VSA8PCBSVENfQUxSTUJSX0hVX1BvcykgICAgICAgLyohPCAweDAwMDQwMDAwICovDQojZGVmaW5lIFJUQ19BTFJNQlJfSFVfMyAgICAgICAgICAgICAgICAgICAgICAoMHg4VSA8PCBSVENfQUxSTUJSX0hVX1BvcykgICAgICAgLyohPCAweDAwMDgwMDAwICovDQojZGVmaW5lIFJUQ19BTFJNQlJfTVNLMl9Qb3MgICAgICAgICAgICAgICAgICAoMTVVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19BTFJNQlJfTVNLMl9Nc2sgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBSVENfQUxSTUJSX01TSzJfUG9zKSAgICAgLyohPCAweDAwMDA4MDAwICovDQojZGVmaW5lIFJUQ19BTFJNQlJfTVNLMiAgICAgICAgICAgICAgICAgICAgICBSVENfQUxSTUJSX01TSzJfTXNrICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19BTFJNQlJfTU5UX1BvcyAgICAgICAgICAgICAgICAgICAoMTJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19BTFJNQlJfTU5UX01zayAgICAgICAgICAgICAgICAgICAoMHg3VSA8PCBSVENfQUxSTUJSX01OVF9Qb3MpICAgICAgLyohPCAweDAwMDA3MDAwICovDQojZGVmaW5lIFJUQ19BTFJNQlJfTU5UICAgICAgICAgICAgICAgICAgICAgICBSVENfQUxSTUJSX01OVF9Nc2sgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19BTFJNQlJfTU5UXzAgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBSVENfQUxSTUJSX01OVF9Qb3MpICAgICAgLyohPCAweDAwMDAxMDAwICovDQojZGVmaW5lIFJUQ19BTFJNQlJfTU5UXzEgICAgICAgICAgICAgICAgICAgICAoMHgyVSA8PCBSVENfQUxSTUJSX01OVF9Qb3MpICAgICAgLyohPCAweDAwMDAyMDAwICovDQojZGVmaW5lIFJUQ19BTFJNQlJfTU5UXzIgICAgICAgICAgICAgICAgICAgICAoMHg0VSA8PCBSVENfQUxSTUJSX01OVF9Qb3MpICAgICAgLyohPCAweDAwMDA0MDAwICovDQojZGVmaW5lIFJUQ19BTFJNQlJfTU5VX1BvcyAgICAgICAgICAgICAgICAgICAoOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19BTFJNQlJfTU5VX01zayAgICAgICAgICAgICAgICAgICAoMHhGVSA8PCBSVENfQUxSTUJSX01OVV9Qb3MpICAgICAgLyohPCAweDAwMDAwRjAwICovDQojZGVmaW5lIFJUQ19BTFJNQlJfTU5VICAgICAgICAgICAgICAgICAgICAgICBSVENfQUxSTUJSX01OVV9Nc2sgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19BTFJNQlJfTU5VXzAgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBSVENfQUxSTUJSX01OVV9Qb3MpICAgICAgLyohPCAweDAwMDAwMTAwICovDQojZGVmaW5lIFJUQ19BTFJNQlJfTU5VXzEgICAgICAgICAgICAgICAgICAgICAoMHgyVSA8PCBSVENfQUxSTUJSX01OVV9Qb3MpICAgICAgLyohPCAweDAwMDAwMjAwICovDQojZGVmaW5lIFJUQ19BTFJNQlJfTU5VXzIgICAgICAgICAgICAgICAgICAgICAoMHg0VSA8PCBSVENfQUxSTUJSX01OVV9Qb3MpICAgICAgLyohPCAweDAwMDAwNDAwICovDQojZGVmaW5lIFJUQ19BTFJNQlJfTU5VXzMgICAgICAgICAgICAgICAgICAgICAoMHg4VSA8PCBSVENfQUxSTUJSX01OVV9Qb3MpICAgICAgLyohPCAweDAwMDAwODAwICovDQojZGVmaW5lIFJUQ19BTFJNQlJfTVNLMV9Qb3MgICAgICAgICAgICAgICAgICAoN1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19BTFJNQlJfTVNLMV9Nc2sgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBSVENfQUxSTUJSX01TSzFfUG9zKSAgICAgLyohPCAweDAwMDAwMDgwICovDQojZGVmaW5lIFJUQ19BTFJNQlJfTVNLMSAgICAgICAgICAgICAgICAgICAgICBSVENfQUxSTUJSX01TSzFfTXNrICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19BTFJNQlJfU1RfUG9zICAgICAgICAgICAgICAgICAgICAoNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19BTFJNQlJfU1RfTXNrICAgICAgICAgICAgICAgICAgICAoMHg3VSA8PCBSVENfQUxSTUJSX1NUX1BvcykgICAgICAgLyohPCAweDAwMDAwMDcwICovDQojZGVmaW5lIFJUQ19BTFJNQlJfU1QgICAgICAgICAgICAgICAgICAgICAgICBSVENfQUxSTUJSX1NUX01zayAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19BTFJNQlJfU1RfMCAgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBSVENfQUxSTUJSX1NUX1BvcykgICAgICAgLyohPCAweDAwMDAwMDEwICovDQojZGVmaW5lIFJUQ19BTFJNQlJfU1RfMSAgICAgICAgICAgICAgICAgICAgICAoMHgyVSA8PCBSVENfQUxSTUJSX1NUX1BvcykgICAgICAgLyohPCAweDAwMDAwMDIwICovDQojZGVmaW5lIFJUQ19BTFJNQlJfU1RfMiAgICAgICAgICAgICAgICAgICAgICAoMHg0VSA8PCBSVENfQUxSTUJSX1NUX1BvcykgICAgICAgLyohPCAweDAwMDAwMDQwICovDQojZGVmaW5lIFJUQ19BTFJNQlJfU1VfUG9zICAgICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19BTFJNQlJfU1VfTXNrICAgICAgICAgICAgICAgICAgICAoMHhGVSA8PCBSVENfQUxSTUJSX1NVX1BvcykgICAgICAgLyohPCAweDAwMDAwMDBGICovDQojZGVmaW5lIFJUQ19BTFJNQlJfU1UgICAgICAgICAgICAgICAgICAgICAgICBSVENfQUxSTUJSX1NVX01zayAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19BTFJNQlJfU1VfMCAgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBSVENfQUxSTUJSX1NVX1BvcykgICAgICAgLyohPCAweDAwMDAwMDAxICovDQojZGVmaW5lIFJUQ19BTFJNQlJfU1VfMSAgICAgICAgICAgICAgICAgICAgICAoMHgyVSA8PCBSVENfQUxSTUJSX1NVX1BvcykgICAgICAgLyohPCAweDAwMDAwMDAyICovDQojZGVmaW5lIFJUQ19BTFJNQlJfU1VfMiAgICAgICAgICAgICAgICAgICAgICAoMHg0VSA8PCBSVENfQUxSTUJSX1NVX1BvcykgICAgICAgLyohPCAweDAwMDAwMDA0ICovDQojZGVmaW5lIFJUQ19BTFJNQlJfU1VfMyAgICAgICAgICAgICAgICAgICAgICAoMHg4VSA8PCBSVENfQUxSTUJSX1NVX1BvcykgICAgICAgLyohPCAweDAwMDAwMDA4ICovDQoNCi8qKioqKioqKioqKioqKioqKioqKiAgQml0cyBkZWZpbml0aW9uIGZvciBSVENfV1BSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIFJUQ19XUFJfS0VZX1BvcyAgICAgICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19XUFJfS0VZX01zayAgICAgICAgICAgICAgICAgICAgICAoMHhGRlUgPDwgUlRDX1dQUl9LRVlfUG9zKSAgICAgICAgLyohPCAweDAwMDAwMEZGICovDQojZGVmaW5lIFJUQ19XUFJfS0VZICAgICAgICAgICAgICAgICAgICAgICAgICBSVENfV1BSX0tFWV9Nc2sgICAgICAgICAgICAgICAgICAgDQoNCi8qKioqKioqKioqKioqKioqKioqKiAgQml0cyBkZWZpbml0aW9uIGZvciBSVENfU1NSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIFJUQ19TU1JfU1NfUG9zICAgICAgICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19TU1JfU1NfTXNrICAgICAgICAgICAgICAgICAgICAgICAoMHhGRkZGVSA8PCBSVENfU1NSX1NTX1BvcykgICAgICAgLyohPCAweDAwMDBGRkZGICovDQojZGVmaW5lIFJUQ19TU1JfU1MgICAgICAgICAgICAgICAgICAgICAgICAgICBSVENfU1NSX1NTX01zayAgICAgICAgICAgICAgICAgICAgDQoNCi8qKioqKioqKioqKioqKioqKioqKiAgQml0cyBkZWZpbml0aW9uIGZvciBSVENfU0hJRlRSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKiovDQojZGVmaW5lIFJUQ19TSElGVFJfU1VCRlNfUG9zICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19TSElGVFJfU1VCRlNfTXNrICAgICAgICAgICAgICAgICAoMHg3RkZGVSA8PCBSVENfU0hJRlRSX1NVQkZTX1BvcykgLyohPCAweDAwMDA3RkZGICovDQojZGVmaW5lIFJUQ19TSElGVFJfU1VCRlMgICAgICAgICAgICAgICAgICAgICBSVENfU0hJRlRSX1NVQkZTX01zayAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19TSElGVFJfQUREMVNfUG9zICAgICAgICAgICAgICAgICAoMzFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19TSElGVFJfQUREMVNfTXNrICAgICAgICAgICAgICAgICAoMHgxVSA8PCBSVENfU0hJRlRSX0FERDFTX1BvcykgICAgLyohPCAweDgwMDAwMDAwICovDQojZGVmaW5lIFJUQ19TSElGVFJfQUREMVMgICAgICAgICAgICAgICAgICAgICBSVENfU0hJRlRSX0FERDFTX01zayAgICAgICAgICAgICAgDQoNCi8qKioqKioqKioqKioqKioqKioqKiAgQml0cyBkZWZpbml0aW9uIGZvciBSVENfVFNUUiByZWdpc3RlciAgKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIFJUQ19UU1RSX1BNX1BvcyAgICAgICAgICAgICAgICAgICAgICAoMjJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19UU1RSX1BNX01zayAgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBSVENfVFNUUl9QTV9Qb3MpICAgICAgICAgLyohPCAweDAwNDAwMDAwICovDQojZGVmaW5lIFJUQ19UU1RSX1BNICAgICAgICAgICAgICAgICAgICAgICAgICBSVENfVFNUUl9QTV9Nc2sgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19UU1RSX0hUX1BvcyAgICAgICAgICAgICAgICAgICAgICAoMjBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19UU1RSX0hUX01zayAgICAgICAgICAgICAgICAgICAgICAoMHgzVSA8PCBSVENfVFNUUl9IVF9Qb3MpICAgICAgICAgLyohPCAweDAwMzAwMDAwICovDQojZGVmaW5lIFJUQ19UU1RSX0hUICAgICAgICAgICAgICAgICAgICAgICAgICBSVENfVFNUUl9IVF9Nc2sgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19UU1RSX0hUXzAgICAgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBSVENfVFNUUl9IVF9Qb3MpICAgICAgICAgLyohPCAweDAwMTAwMDAwICovDQojZGVmaW5lIFJUQ19UU1RSX0hUXzEgICAgICAgICAgICAgICAgICAgICAgICAoMHgyVSA8PCBSVENfVFNUUl9IVF9Qb3MpICAgICAgICAgLyohPCAweDAwMjAwMDAwICovDQojZGVmaW5lIFJUQ19UU1RSX0hVX1BvcyAgICAgICAgICAgICAgICAgICAgICAoMTZVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19UU1RSX0hVX01zayAgICAgICAgICAgICAgICAgICAgICAoMHhGVSA8PCBSVENfVFNUUl9IVV9Qb3MpICAgICAgICAgLyohPCAweDAwMEYwMDAwICovDQojZGVmaW5lIFJUQ19UU1RSX0hVICAgICAgICAgICAgICAgICAgICAgICAgICBSVENfVFNUUl9IVV9Nc2sgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19UU1RSX0hVXzAgICAgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBSVENfVFNUUl9IVV9Qb3MpICAgICAgICAgLyohPCAweDAwMDEwMDAwICovDQojZGVmaW5lIFJUQ19UU1RSX0hVXzEgICAgICAgICAgICAgICAgICAgICAgICAoMHgyVSA8PCBSVENfVFNUUl9IVV9Qb3MpICAgICAgICAgLyohPCAweDAwMDIwMDAwICovDQojZGVmaW5lIFJUQ19UU1RSX0hVXzIgICAgICAgICAgICAgICAgICAgICAgICAoMHg0VSA8PCBSVENfVFNUUl9IVV9Qb3MpICAgICAgICAgLyohPCAweDAwMDQwMDAwICovDQojZGVmaW5lIFJUQ19UU1RSX0hVXzMgICAgICAgICAgICAgICAgICAgICAgICAoMHg4VSA8PCBSVENfVFNUUl9IVV9Qb3MpICAgICAgICAgLyohPCAweDAwMDgwMDAwICovDQojZGVmaW5lIFJUQ19UU1RSX01OVF9Qb3MgICAgICAgICAgICAgICAgICAgICAoMTJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19UU1RSX01OVF9Nc2sgICAgICAgICAgICAgICAgICAgICAoMHg3VSA8PCBSVENfVFNUUl9NTlRfUG9zKSAgICAgICAgLyohPCAweDAwMDA3MDAwICovDQojZGVmaW5lIFJUQ19UU1RSX01OVCAgICAgICAgICAgICAgICAgICAgICAgICBSVENfVFNUUl9NTlRfTXNrICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19UU1RSX01OVF8wICAgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBSVENfVFNUUl9NTlRfUG9zKSAgICAgICAgLyohPCAweDAwMDAxMDAwICovDQojZGVmaW5lIFJUQ19UU1RSX01OVF8xICAgICAgICAgICAgICAgICAgICAgICAoMHgyVSA8PCBSVENfVFNUUl9NTlRfUG9zKSAgICAgICAgLyohPCAweDAwMDAyMDAwICovDQojZGVmaW5lIFJUQ19UU1RSX01OVF8yICAgICAgICAgICAgICAgICAgICAgICAoMHg0VSA8PCBSVENfVFNUUl9NTlRfUG9zKSAgICAgICAgLyohPCAweDAwMDA0MDAwICovDQojZGVmaW5lIFJUQ19UU1RSX01OVV9Qb3MgICAgICAgICAgICAgICAgICAgICAoOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19UU1RSX01OVV9Nc2sgICAgICAgICAgICAgICAgICAgICAoMHhGVSA8PCBSVENfVFNUUl9NTlVfUG9zKSAgICAgICAgLyohPCAweDAwMDAwRjAwICovDQojZGVmaW5lIFJUQ19UU1RSX01OVSAgICAgICAgICAgICAgICAgICAgICAgICBSVENfVFNUUl9NTlVfTXNrICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19UU1RSX01OVV8wICAgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBSVENfVFNUUl9NTlVfUG9zKSAgICAgICAgLyohPCAweDAwMDAwMTAwICovDQojZGVmaW5lIFJUQ19UU1RSX01OVV8xICAgICAgICAgICAgICAgICAgICAgICAoMHgyVSA8PCBSVENfVFNUUl9NTlVfUG9zKSAgICAgICAgLyohPCAweDAwMDAwMjAwICovDQojZGVmaW5lIFJUQ19UU1RSX01OVV8yICAgICAgICAgICAgICAgICAgICAgICAoMHg0VSA8PCBSVENfVFNUUl9NTlVfUG9zKSAgICAgICAgLyohPCAweDAwMDAwNDAwICovDQojZGVmaW5lIFJUQ19UU1RSX01OVV8zICAgICAgICAgICAgICAgICAgICAgICAoMHg4VSA8PCBSVENfVFNUUl9NTlVfUG9zKSAgICAgICAgLyohPCAweDAwMDAwODAwICovDQojZGVmaW5lIFJUQ19UU1RSX1NUX1BvcyAgICAgICAgICAgICAgICAgICAgICAoNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19UU1RSX1NUX01zayAgICAgICAgICAgICAgICAgICAgICAoMHg3VSA8PCBSVENfVFNUUl9TVF9Qb3MpICAgICAgICAgLyohPCAweDAwMDAwMDcwICovDQojZGVmaW5lIFJUQ19UU1RSX1NUICAgICAgICAgICAgICAgICAgICAgICAgICBSVENfVFNUUl9TVF9Nc2sgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19UU1RSX1NUXzAgICAgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBSVENfVFNUUl9TVF9Qb3MpICAgICAgICAgLyohPCAweDAwMDAwMDEwICovDQojZGVmaW5lIFJUQ19UU1RSX1NUXzEgICAgICAgICAgICAgICAgICAgICAgICAoMHgyVSA8PCBSVENfVFNUUl9TVF9Qb3MpICAgICAgICAgLyohPCAweDAwMDAwMDIwICovDQojZGVmaW5lIFJUQ19UU1RSX1NUXzIgICAgICAgICAgICAgICAgICAgICAgICAoMHg0VSA8PCBSVENfVFNUUl9TVF9Qb3MpICAgICAgICAgLyohPCAweDAwMDAwMDQwICovDQojZGVmaW5lIFJUQ19UU1RSX1NVX1BvcyAgICAgICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19UU1RSX1NVX01zayAgICAgICAgICAgICAgICAgICAgICAoMHhGVSA8PCBSVENfVFNUUl9TVV9Qb3MpICAgICAgICAgLyohPCAweDAwMDAwMDBGICovDQojZGVmaW5lIFJUQ19UU1RSX1NVICAgICAgICAgICAgICAgICAgICAgICAgICBSVENfVFNUUl9TVV9Nc2sgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19UU1RSX1NVXzAgICAgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBSVENfVFNUUl9TVV9Qb3MpICAgICAgICAgLyohPCAweDAwMDAwMDAxICovDQojZGVmaW5lIFJUQ19UU1RSX1NVXzEgICAgICAgICAgICAgICAgICAgICAgICAoMHgyVSA8PCBSVENfVFNUUl9TVV9Qb3MpICAgICAgICAgLyohPCAweDAwMDAwMDAyICovDQojZGVmaW5lIFJUQ19UU1RSX1NVXzIgICAgICAgICAgICAgICAgICAgICAgICAoMHg0VSA8PCBSVENfVFNUUl9TVV9Qb3MpICAgICAgICAgLyohPCAweDAwMDAwMDA0ICovDQojZGVmaW5lIFJUQ19UU1RSX1NVXzMgICAgICAgICAgICAgICAgICAgICAgICAoMHg4VSA8PCBSVENfVFNUUl9TVV9Qb3MpICAgICAgICAgLyohPCAweDAwMDAwMDA4ICovDQoNCi8qKioqKioqKioqKioqKioqKioqKiAgQml0cyBkZWZpbml0aW9uIGZvciBSVENfVFNEUiByZWdpc3RlciAgKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIFJUQ19UU0RSX1dEVV9Qb3MgICAgICAgICAgICAgICAgICAgICAoMTNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19UU0RSX1dEVV9Nc2sgICAgICAgICAgICAgICAgICAgICAoMHg3VSA8PCBSVENfVFNEUl9XRFVfUG9zKSAgICAgICAgLyohPCAweDAwMDBFMDAwICovDQojZGVmaW5lIFJUQ19UU0RSX1dEVSAgICAgICAgICAgICAgICAgICAgICAgICBSVENfVFNEUl9XRFVfTXNrICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19UU0RSX1dEVV8wICAgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBSVENfVFNEUl9XRFVfUG9zKSAgICAgICAgLyohPCAweDAwMDAyMDAwICovDQojZGVmaW5lIFJUQ19UU0RSX1dEVV8xICAgICAgICAgICAgICAgICAgICAgICAoMHgyVSA8PCBSVENfVFNEUl9XRFVfUG9zKSAgICAgICAgLyohPCAweDAwMDA0MDAwICovDQojZGVmaW5lIFJUQ19UU0RSX1dEVV8yICAgICAgICAgICAgICAgICAgICAgICAoMHg0VSA8PCBSVENfVFNEUl9XRFVfUG9zKSAgICAgICAgLyohPCAweDAwMDA4MDAwICovDQojZGVmaW5lIFJUQ19UU0RSX01UX1BvcyAgICAgICAgICAgICAgICAgICAgICAoMTJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19UU0RSX01UX01zayAgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBSVENfVFNEUl9NVF9Qb3MpICAgICAgICAgLyohPCAweDAwMDAxMDAwICovDQojZGVmaW5lIFJUQ19UU0RSX01UICAgICAgICAgICAgICAgICAgICAgICAgICBSVENfVFNEUl9NVF9Nc2sgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19UU0RSX01VX1BvcyAgICAgICAgICAgICAgICAgICAgICAoOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19UU0RSX01VX01zayAgICAgICAgICAgICAgICAgICAgICAoMHhGVSA8PCBSVENfVFNEUl9NVV9Qb3MpICAgICAgICAgLyohPCAweDAwMDAwRjAwICovDQojZGVmaW5lIFJUQ19UU0RSX01VICAgICAgICAgICAgICAgICAgICAgICAgICBSVENfVFNEUl9NVV9Nc2sgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19UU0RSX01VXzAgICAgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBSVENfVFNEUl9NVV9Qb3MpICAgICAgICAgLyohPCAweDAwMDAwMTAwICovDQojZGVmaW5lIFJUQ19UU0RSX01VXzEgICAgICAgICAgICAgICAgICAgICAgICAoMHgyVSA8PCBSVENfVFNEUl9NVV9Qb3MpICAgICAgICAgLyohPCAweDAwMDAwMjAwICovDQojZGVmaW5lIFJUQ19UU0RSX01VXzIgICAgICAgICAgICAgICAgICAgICAgICAoMHg0VSA8PCBSVENfVFNEUl9NVV9Qb3MpICAgICAgICAgLyohPCAweDAwMDAwNDAwICovDQojZGVmaW5lIFJUQ19UU0RSX01VXzMgICAgICAgICAgICAgICAgICAgICAgICAoMHg4VSA8PCBSVENfVFNEUl9NVV9Qb3MpICAgICAgICAgLyohPCAweDAwMDAwODAwICovDQojZGVmaW5lIFJUQ19UU0RSX0RUX1BvcyAgICAgICAgICAgICAgICAgICAgICAoNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19UU0RSX0RUX01zayAgICAgICAgICAgICAgICAgICAgICAoMHgzVSA8PCBSVENfVFNEUl9EVF9Qb3MpICAgICAgICAgLyohPCAweDAwMDAwMDMwICovDQojZGVmaW5lIFJUQ19UU0RSX0RUICAgICAgICAgICAgICAgICAgICAgICAgICBSVENfVFNEUl9EVF9Nc2sgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19UU0RSX0RUXzAgICAgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBSVENfVFNEUl9EVF9Qb3MpICAgICAgICAgLyohPCAweDAwMDAwMDEwICovDQojZGVmaW5lIFJUQ19UU0RSX0RUXzEgICAgICAgICAgICAgICAgICAgICAgICAoMHgyVSA8PCBSVENfVFNEUl9EVF9Qb3MpICAgICAgICAgLyohPCAweDAwMDAwMDIwICovDQojZGVmaW5lIFJUQ19UU0RSX0RVX1BvcyAgICAgICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19UU0RSX0RVX01zayAgICAgICAgICAgICAgICAgICAgICAoMHhGVSA8PCBSVENfVFNEUl9EVV9Qb3MpICAgICAgICAgLyohPCAweDAwMDAwMDBGICovDQojZGVmaW5lIFJUQ19UU0RSX0RVICAgICAgICAgICAgICAgICAgICAgICAgICBSVENfVFNEUl9EVV9Nc2sgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19UU0RSX0RVXzAgICAgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBSVENfVFNEUl9EVV9Qb3MpICAgICAgICAgLyohPCAweDAwMDAwMDAxICovDQojZGVmaW5lIFJUQ19UU0RSX0RVXzEgICAgICAgICAgICAgICAgICAgICAgICAoMHgyVSA8PCBSVENfVFNEUl9EVV9Qb3MpICAgICAgICAgLyohPCAweDAwMDAwMDAyICovDQojZGVmaW5lIFJUQ19UU0RSX0RVXzIgICAgICAgICAgICAgICAgICAgICAgICAoMHg0VSA8PCBSVENfVFNEUl9EVV9Qb3MpICAgICAgICAgLyohPCAweDAwMDAwMDA0ICovDQojZGVmaW5lIFJUQ19UU0RSX0RVXzMgICAgICAgICAgICAgICAgICAgICAgICAoMHg4VSA8PCBSVENfVFNEUl9EVV9Qb3MpICAgICAgICAgLyohPCAweDAwMDAwMDA4ICovDQoNCi8qKioqKioqKioqKioqKioqKioqKiAgQml0cyBkZWZpbml0aW9uIGZvciBSVENfVFNTU1IgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKiovDQojZGVmaW5lIFJUQ19UU1NTUl9TU19Qb3MgICAgICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19UU1NTUl9TU19Nc2sgICAgICAgICAgICAgICAgICAgICAoMHhGRkZGVSA8PCBSVENfVFNTU1JfU1NfUG9zKSAgICAgLyohPCAweDAwMDBGRkZGICovDQojZGVmaW5lIFJUQ19UU1NTUl9TUyAgICAgICAgICAgICAgICAgICAgICAgICBSVENfVFNTU1JfU1NfTXNrICAgICAgICAgICAgICAgICAgDQoNCi8qKioqKioqKioqKioqKioqKioqKiAgQml0cyBkZWZpbml0aW9uIGZvciBSVENfQ0FMIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgUlRDX0NBTFJfQ0FMUF9Qb3MgICAgICAgICAgICAgICAgICAgICgxNVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0NBTFJfQ0FMUF9Nc2sgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFJUQ19DQUxSX0NBTFBfUG9zKSAgICAgICAvKiE8IDB4MDAwMDgwMDAgKi8NCiNkZWZpbmUgUlRDX0NBTFJfQ0FMUCAgICAgICAgICAgICAgICAgICAgICAgIFJUQ19DQUxSX0NBTFBfTXNrICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0NBTFJfQ0FMVzhfUG9zICAgICAgICAgICAgICAgICAgICgxNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0NBTFJfQ0FMVzhfTXNrICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFJUQ19DQUxSX0NBTFc4X1BvcykgICAgICAvKiE8IDB4MDAwMDQwMDAgKi8NCiNkZWZpbmUgUlRDX0NBTFJfQ0FMVzggICAgICAgICAgICAgICAgICAgICAgIFJUQ19DQUxSX0NBTFc4X01zayAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0NBTFJfQ0FMVzE2X1BvcyAgICAgICAgICAgICAgICAgICgxM1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0NBTFJfQ0FMVzE2X01zayAgICAgICAgICAgICAgICAgICgweDFVIDw8IFJUQ19DQUxSX0NBTFcxNl9Qb3MpICAgICAvKiE8IDB4MDAwMDIwMDAgKi8NCiNkZWZpbmUgUlRDX0NBTFJfQ0FMVzE2ICAgICAgICAgICAgICAgICAgICAgIFJUQ19DQUxSX0NBTFcxNl9Nc2sgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0NBTFJfQ0FMTV9Qb3MgICAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0NBTFJfQ0FMTV9Nc2sgICAgICAgICAgICAgICAgICAgICgweDFGRlUgPDwgUlRDX0NBTFJfQ0FMTV9Qb3MpICAgICAvKiE8IDB4MDAwMDAxRkYgKi8NCiNkZWZpbmUgUlRDX0NBTFJfQ0FMTSAgICAgICAgICAgICAgICAgICAgICAgIFJUQ19DQUxSX0NBTE1fTXNrICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0NBTFJfQ0FMTV8wICAgICAgICAgICAgICAgICAgICAgICgweDAwMVUgPDwgUlRDX0NBTFJfQ0FMTV9Qb3MpICAgICAvKiE8IDB4MDAwMDAwMDEgKi8NCiNkZWZpbmUgUlRDX0NBTFJfQ0FMTV8xICAgICAgICAgICAgICAgICAgICAgICgweDAwMlUgPDwgUlRDX0NBTFJfQ0FMTV9Qb3MpICAgICAvKiE8IDB4MDAwMDAwMDIgKi8NCiNkZWZpbmUgUlRDX0NBTFJfQ0FMTV8yICAgICAgICAgICAgICAgICAgICAgICgweDAwNFUgPDwgUlRDX0NBTFJfQ0FMTV9Qb3MpICAgICAvKiE8IDB4MDAwMDAwMDQgKi8NCiNkZWZpbmUgUlRDX0NBTFJfQ0FMTV8zICAgICAgICAgICAgICAgICAgICAgICgweDAwOFUgPDwgUlRDX0NBTFJfQ0FMTV9Qb3MpICAgICAvKiE8IDB4MDAwMDAwMDggKi8NCiNkZWZpbmUgUlRDX0NBTFJfQ0FMTV80ICAgICAgICAgICAgICAgICAgICAgICgweDAxMFUgPDwgUlRDX0NBTFJfQ0FMTV9Qb3MpICAgICAvKiE8IDB4MDAwMDAwMTAgKi8NCiNkZWZpbmUgUlRDX0NBTFJfQ0FMTV81ICAgICAgICAgICAgICAgICAgICAgICgweDAyMFUgPDwgUlRDX0NBTFJfQ0FMTV9Qb3MpICAgICAvKiE8IDB4MDAwMDAwMjAgKi8NCiNkZWZpbmUgUlRDX0NBTFJfQ0FMTV82ICAgICAgICAgICAgICAgICAgICAgICgweDA0MFUgPDwgUlRDX0NBTFJfQ0FMTV9Qb3MpICAgICAvKiE8IDB4MDAwMDAwNDAgKi8NCiNkZWZpbmUgUlRDX0NBTFJfQ0FMTV83ICAgICAgICAgICAgICAgICAgICAgICgweDA4MFUgPDwgUlRDX0NBTFJfQ0FMTV9Qb3MpICAgICAvKiE8IDB4MDAwMDAwODAgKi8NCiNkZWZpbmUgUlRDX0NBTFJfQ0FMTV84ICAgICAgICAgICAgICAgICAgICAgICgweDEwMFUgPDwgUlRDX0NBTFJfQ0FMTV9Qb3MpICAgICAvKiE8IDB4MDAwMDAxMDAgKi8NCg0KLyoqKioqKioqKioqKioqKioqKioqICBCaXRzIGRlZmluaXRpb24gZm9yIFJUQ19UQUZDUiByZWdpc3RlciAgKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgUlRDX1RBRkNSX0FMQVJNT1VUVFlQRV9Qb3MgICAgICAgICAgICgxOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX1RBRkNSX0FMQVJNT1VUVFlQRV9Nc2sgICAgICAgICAgICgweDFVIDw8IFJUQ19UQUZDUl9BTEFSTU9VVFRZUEVfUG9zKSAvKiE8IDB4MDAwNDAwMDAgKi8NCiNkZWZpbmUgUlRDX1RBRkNSX0FMQVJNT1VUVFlQRSAgICAgICAgICAgICAgIFJUQ19UQUZDUl9BTEFSTU9VVFRZUEVfTXNrICAgICAgICANCiNkZWZpbmUgUlRDX1RBRkNSX1RBTVBQVURJU19Qb3MgICAgICAgICAgICAgICgxNVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX1RBRkNSX1RBTVBQVURJU19Nc2sgICAgICAgICAgICAgICgweDFVIDw8IFJUQ19UQUZDUl9UQU1QUFVESVNfUG9zKSAvKiE8IDB4MDAwMDgwMDAgKi8NCiNkZWZpbmUgUlRDX1RBRkNSX1RBTVBQVURJUyAgICAgICAgICAgICAgICAgIFJUQ19UQUZDUl9UQU1QUFVESVNfTXNrICAgICAgICAgICANCiNkZWZpbmUgUlRDX1RBRkNSX1RBTVBQUkNIX1BvcyAgICAgICAgICAgICAgICgxM1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX1RBRkNSX1RBTVBQUkNIX01zayAgICAgICAgICAgICAgICgweDNVIDw8IFJUQ19UQUZDUl9UQU1QUFJDSF9Qb3MpICAvKiE8IDB4MDAwMDYwMDAgKi8NCiNkZWZpbmUgUlRDX1RBRkNSX1RBTVBQUkNIICAgICAgICAgICAgICAgICAgIFJUQ19UQUZDUl9UQU1QUFJDSF9Nc2sgICAgICAgICAgICANCiNkZWZpbmUgUlRDX1RBRkNSX1RBTVBQUkNIXzAgICAgICAgICAgICAgICAgICgweDFVIDw8IFJUQ19UQUZDUl9UQU1QUFJDSF9Qb3MpICAvKiE8IDB4MDAwMDIwMDAgKi8NCiNkZWZpbmUgUlRDX1RBRkNSX1RBTVBQUkNIXzEgICAgICAgICAgICAgICAgICgweDJVIDw8IFJUQ19UQUZDUl9UQU1QUFJDSF9Qb3MpICAvKiE8IDB4MDAwMDQwMDAgKi8NCiNkZWZpbmUgUlRDX1RBRkNSX1RBTVBGTFRfUG9zICAgICAgICAgICAgICAgICgxMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX1RBRkNSX1RBTVBGTFRfTXNrICAgICAgICAgICAgICAgICgweDNVIDw8IFJUQ19UQUZDUl9UQU1QRkxUX1BvcykgICAvKiE8IDB4MDAwMDE4MDAgKi8NCiNkZWZpbmUgUlRDX1RBRkNSX1RBTVBGTFQgICAgICAgICAgICAgICAgICAgIFJUQ19UQUZDUl9UQU1QRkxUX01zayAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX1RBRkNSX1RBTVBGTFRfMCAgICAgICAgICAgICAgICAgICgweDFVIDw8IFJUQ19UQUZDUl9UQU1QRkxUX1BvcykgICAvKiE8IDB4MDAwMDA4MDAgKi8NCiNkZWZpbmUgUlRDX1RBRkNSX1RBTVBGTFRfMSAgICAgICAgICAgICAgICAgICgweDJVIDw8IFJUQ19UQUZDUl9UQU1QRkxUX1BvcykgICAvKiE8IDB4MDAwMDEwMDAgKi8NCiNkZWZpbmUgUlRDX1RBRkNSX1RBTVBGUkVRX1BvcyAgICAgICAgICAgICAgICg4VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX1RBRkNSX1RBTVBGUkVRX01zayAgICAgICAgICAgICAgICgweDdVIDw8IFJUQ19UQUZDUl9UQU1QRlJFUV9Qb3MpICAvKiE8IDB4MDAwMDA3MDAgKi8NCiNkZWZpbmUgUlRDX1RBRkNSX1RBTVBGUkVRICAgICAgICAgICAgICAgICAgIFJUQ19UQUZDUl9UQU1QRlJFUV9Nc2sgICAgICAgICAgICANCiNkZWZpbmUgUlRDX1RBRkNSX1RBTVBGUkVRXzAgICAgICAgICAgICAgICAgICgweDFVIDw8IFJUQ19UQUZDUl9UQU1QRlJFUV9Qb3MpICAvKiE8IDB4MDAwMDAxMDAgKi8NCiNkZWZpbmUgUlRDX1RBRkNSX1RBTVBGUkVRXzEgICAgICAgICAgICAgICAgICgweDJVIDw8IFJUQ19UQUZDUl9UQU1QRlJFUV9Qb3MpICAvKiE8IDB4MDAwMDAyMDAgKi8NCiNkZWZpbmUgUlRDX1RBRkNSX1RBTVBGUkVRXzIgICAgICAgICAgICAgICAgICgweDRVIDw8IFJUQ19UQUZDUl9UQU1QRlJFUV9Qb3MpICAvKiE8IDB4MDAwMDA0MDAgKi8NCiNkZWZpbmUgUlRDX1RBRkNSX1RBTVBUU19Qb3MgICAgICAgICAgICAgICAgICg3VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX1RBRkNSX1RBTVBUU19Nc2sgICAgICAgICAgICAgICAgICgweDFVIDw8IFJUQ19UQUZDUl9UQU1QVFNfUG9zKSAgICAvKiE8IDB4MDAwMDAwODAgKi8NCiNkZWZpbmUgUlRDX1RBRkNSX1RBTVBUUyAgICAgICAgICAgICAgICAgICAgIFJUQ19UQUZDUl9UQU1QVFNfTXNrICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX1RBRkNSX1RBTVAzVFJHX1BvcyAgICAgICAgICAgICAgICg2VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX1RBRkNSX1RBTVAzVFJHX01zayAgICAgICAgICAgICAgICgweDFVIDw8IFJUQ19UQUZDUl9UQU1QM1RSR19Qb3MpICAvKiE8IDB4MDAwMDAwNDAgKi8NCiNkZWZpbmUgUlRDX1RBRkNSX1RBTVAzVFJHICAgICAgICAgICAgICAgICAgIFJUQ19UQUZDUl9UQU1QM1RSR19Nc2sgICAgICAgICAgICANCiNkZWZpbmUgUlRDX1RBRkNSX1RBTVAzRV9Qb3MgICAgICAgICAgICAgICAgICg1VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX1RBRkNSX1RBTVAzRV9Nc2sgICAgICAgICAgICAgICAgICgweDFVIDw8IFJUQ19UQUZDUl9UQU1QM0VfUG9zKSAgICAvKiE8IDB4MDAwMDAwMjAgKi8NCiNkZWZpbmUgUlRDX1RBRkNSX1RBTVAzRSAgICAgICAgICAgICAgICAgICAgIFJUQ19UQUZDUl9UQU1QM0VfTXNrICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX1RBRkNSX1RBTVAyVFJHX1BvcyAgICAgICAgICAgICAgICg0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX1RBRkNSX1RBTVAyVFJHX01zayAgICAgICAgICAgICAgICgweDFVIDw8IFJUQ19UQUZDUl9UQU1QMlRSR19Qb3MpICAvKiE8IDB4MDAwMDAwMTAgKi8NCiNkZWZpbmUgUlRDX1RBRkNSX1RBTVAyVFJHICAgICAgICAgICAgICAgICAgIFJUQ19UQUZDUl9UQU1QMlRSR19Nc2sgICAgICAgICAgICANCiNkZWZpbmUgUlRDX1RBRkNSX1RBTVAyRV9Qb3MgICAgICAgICAgICAgICAgICgzVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX1RBRkNSX1RBTVAyRV9Nc2sgICAgICAgICAgICAgICAgICgweDFVIDw8IFJUQ19UQUZDUl9UQU1QMkVfUG9zKSAgICAvKiE8IDB4MDAwMDAwMDggKi8NCiNkZWZpbmUgUlRDX1RBRkNSX1RBTVAyRSAgICAgICAgICAgICAgICAgICAgIFJUQ19UQUZDUl9UQU1QMkVfTXNrICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX1RBRkNSX1RBTVBJRV9Qb3MgICAgICAgICAgICAgICAgICgyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX1RBRkNSX1RBTVBJRV9Nc2sgICAgICAgICAgICAgICAgICgweDFVIDw8IFJUQ19UQUZDUl9UQU1QSUVfUG9zKSAgICAvKiE8IDB4MDAwMDAwMDQgKi8NCiNkZWZpbmUgUlRDX1RBRkNSX1RBTVBJRSAgICAgICAgICAgICAgICAgICAgIFJUQ19UQUZDUl9UQU1QSUVfTXNrICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX1RBRkNSX1RBTVAxVFJHX1BvcyAgICAgICAgICAgICAgICgxVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX1RBRkNSX1RBTVAxVFJHX01zayAgICAgICAgICAgICAgICgweDFVIDw8IFJUQ19UQUZDUl9UQU1QMVRSR19Qb3MpICAvKiE8IDB4MDAwMDAwMDIgKi8NCiNkZWZpbmUgUlRDX1RBRkNSX1RBTVAxVFJHICAgICAgICAgICAgICAgICAgIFJUQ19UQUZDUl9UQU1QMVRSR19Nc2sgICAgICAgICAgICANCiNkZWZpbmUgUlRDX1RBRkNSX1RBTVAxRV9Qb3MgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX1RBRkNSX1RBTVAxRV9Nc2sgICAgICAgICAgICAgICAgICgweDFVIDw8IFJUQ19UQUZDUl9UQU1QMUVfUG9zKSAgICAvKiE8IDB4MDAwMDAwMDEgKi8NCiNkZWZpbmUgUlRDX1RBRkNSX1RBTVAxRSAgICAgICAgICAgICAgICAgICAgIFJUQ19UQUZDUl9UQU1QMUVfTXNrICAgICAgICAgICAgICANCg0KLyoqKioqKioqKioqKioqKioqKioqICBCaXRzIGRlZmluaXRpb24gZm9yIFJUQ19BTFJNQVNTUiByZWdpc3RlciAgKioqKioqKioqKioqKi8NCiNkZWZpbmUgUlRDX0FMUk1BU1NSX01BU0tTU19Qb3MgICAgICAgICAgICAgICgyNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0FMUk1BU1NSX01BU0tTU19Nc2sgICAgICAgICAgICAgICgweEZVIDw8IFJUQ19BTFJNQVNTUl9NQVNLU1NfUG9zKSAvKiE8IDB4MEYwMDAwMDAgKi8NCiNkZWZpbmUgUlRDX0FMUk1BU1NSX01BU0tTUyAgICAgICAgICAgICAgICAgIFJUQ19BTFJNQVNTUl9NQVNLU1NfTXNrICAgICAgICAgICANCiNkZWZpbmUgUlRDX0FMUk1BU1NSX01BU0tTU18wICAgICAgICAgICAgICAgICgweDFVIDw8IFJUQ19BTFJNQVNTUl9NQVNLU1NfUG9zKSAvKiE8IDB4MDEwMDAwMDAgKi8NCiNkZWZpbmUgUlRDX0FMUk1BU1NSX01BU0tTU18xICAgICAgICAgICAgICAgICgweDJVIDw8IFJUQ19BTFJNQVNTUl9NQVNLU1NfUG9zKSAvKiE8IDB4MDIwMDAwMDAgKi8NCiNkZWZpbmUgUlRDX0FMUk1BU1NSX01BU0tTU18yICAgICAgICAgICAgICAgICgweDRVIDw8IFJUQ19BTFJNQVNTUl9NQVNLU1NfUG9zKSAvKiE8IDB4MDQwMDAwMDAgKi8NCiNkZWZpbmUgUlRDX0FMUk1BU1NSX01BU0tTU18zICAgICAgICAgICAgICAgICgweDhVIDw8IFJUQ19BTFJNQVNTUl9NQVNLU1NfUG9zKSAvKiE8IDB4MDgwMDAwMDAgKi8NCiNkZWZpbmUgUlRDX0FMUk1BU1NSX1NTX1BvcyAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0FMUk1BU1NSX1NTX01zayAgICAgICAgICAgICAgICAgICgweDdGRkZVIDw8IFJUQ19BTFJNQVNTUl9TU19Qb3MpICAvKiE8IDB4MDAwMDdGRkYgKi8NCiNkZWZpbmUgUlRDX0FMUk1BU1NSX1NTICAgICAgICAgICAgICAgICAgICAgIFJUQ19BTFJNQVNTUl9TU19Nc2sgICAgICAgICAgICAgICANCg0KLyoqKioqKioqKioqKioqKioqKioqICBCaXRzIGRlZmluaXRpb24gZm9yIFJUQ19BTFJNQlNTUiByZWdpc3RlciAgKioqKioqKioqKioqKi8NCiNkZWZpbmUgUlRDX0FMUk1CU1NSX01BU0tTU19Qb3MgICAgICAgICAgICAgICgyNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0FMUk1CU1NSX01BU0tTU19Nc2sgICAgICAgICAgICAgICgweEZVIDw8IFJUQ19BTFJNQlNTUl9NQVNLU1NfUG9zKSAvKiE8IDB4MEYwMDAwMDAgKi8NCiNkZWZpbmUgUlRDX0FMUk1CU1NSX01BU0tTUyAgICAgICAgICAgICAgICAgIFJUQ19BTFJNQlNTUl9NQVNLU1NfTXNrICAgICAgICAgICANCiNkZWZpbmUgUlRDX0FMUk1CU1NSX01BU0tTU18wICAgICAgICAgICAgICAgICgweDFVIDw8IFJUQ19BTFJNQlNTUl9NQVNLU1NfUG9zKSAvKiE8IDB4MDEwMDAwMDAgKi8NCiNkZWZpbmUgUlRDX0FMUk1CU1NSX01BU0tTU18xICAgICAgICAgICAgICAgICgweDJVIDw8IFJUQ19BTFJNQlNTUl9NQVNLU1NfUG9zKSAvKiE8IDB4MDIwMDAwMDAgKi8NCiNkZWZpbmUgUlRDX0FMUk1CU1NSX01BU0tTU18yICAgICAgICAgICAgICAgICgweDRVIDw8IFJUQ19BTFJNQlNTUl9NQVNLU1NfUG9zKSAvKiE8IDB4MDQwMDAwMDAgKi8NCiNkZWZpbmUgUlRDX0FMUk1CU1NSX01BU0tTU18zICAgICAgICAgICAgICAgICgweDhVIDw8IFJUQ19BTFJNQlNTUl9NQVNLU1NfUG9zKSAvKiE8IDB4MDgwMDAwMDAgKi8NCiNkZWZpbmUgUlRDX0FMUk1CU1NSX1NTX1BvcyAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0FMUk1CU1NSX1NTX01zayAgICAgICAgICAgICAgICAgICgweDdGRkZVIDw8IFJUQ19BTFJNQlNTUl9TU19Qb3MpICAvKiE8IDB4MDAwMDdGRkYgKi8NCiNkZWZpbmUgUlRDX0FMUk1CU1NSX1NTICAgICAgICAgICAgICAgICAgICAgIFJUQ19BTFJNQlNTUl9TU19Nc2sgICAgICAgICAgICAgICANCg0KLyoqKioqKioqKioqKioqKioqKioqICBCaXRzIGRlZmluaXRpb24gZm9yIFJUQ19CS1AwUiByZWdpc3RlciAgKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgUlRDX0JLUDBSX1BvcyAgICAgICAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0JLUDBSX01zayAgICAgICAgICAgICAgICAgICAgICAgICgweEZGRkZGRkZGVSA8PCBSVENfQktQMFJfUG9zKSAgICAvKiE8IDB4RkZGRkZGRkYgKi8NCiNkZWZpbmUgUlRDX0JLUDBSICAgICAgICAgICAgICAgICAgICAgICAgICAgIFJUQ19CS1AwUl9Nc2sgICAgICAgICAgICAgICAgICAgICANCg0KLyoqKioqKioqKioqKioqKioqKioqICBCaXRzIGRlZmluaXRpb24gZm9yIFJUQ19CS1AxUiByZWdpc3RlciAgKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgUlRDX0JLUDFSX1BvcyAgICAgICAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0JLUDFSX01zayAgICAgICAgICAgICAgICAgICAgICAgICgweEZGRkZGRkZGVSA8PCBSVENfQktQMVJfUG9zKSAgICAvKiE8IDB4RkZGRkZGRkYgKi8NCiNkZWZpbmUgUlRDX0JLUDFSICAgICAgICAgICAgICAgICAgICAgICAgICAgIFJUQ19CS1AxUl9Nc2sgICAgICAgICAgICAgICAgICAgICANCg0KLyoqKioqKioqKioqKioqKioqKioqICBCaXRzIGRlZmluaXRpb24gZm9yIFJUQ19CS1AyUiByZWdpc3RlciAgKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgUlRDX0JLUDJSX1BvcyAgICAgICAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0JLUDJSX01zayAgICAgICAgICAgICAgICAgICAgICAgICgweEZGRkZGRkZGVSA8PCBSVENfQktQMlJfUG9zKSAgICAvKiE8IDB4RkZGRkZGRkYgKi8NCiNkZWZpbmUgUlRDX0JLUDJSICAgICAgICAgICAgICAgICAgICAgICAgICAgIFJUQ19CS1AyUl9Nc2sgICAgICAgICAgICAgICAgICAgICANCg0KLyoqKioqKioqKioqKioqKioqKioqICBCaXRzIGRlZmluaXRpb24gZm9yIFJUQ19CS1AzUiByZWdpc3RlciAgKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgUlRDX0JLUDNSX1BvcyAgICAgICAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0JLUDNSX01zayAgICAgICAgICAgICAgICAgICAgICAgICgweEZGRkZGRkZGVSA8PCBSVENfQktQM1JfUG9zKSAgICAvKiE8IDB4RkZGRkZGRkYgKi8NCiNkZWZpbmUgUlRDX0JLUDNSICAgICAgICAgICAgICAgICAgICAgICAgICAgIFJUQ19CS1AzUl9Nc2sgICAgICAgICAgICAgICAgICAgICANCg0KLyoqKioqKioqKioqKioqKioqKioqICBCaXRzIGRlZmluaXRpb24gZm9yIFJUQ19CS1A0UiByZWdpc3RlciAgKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgUlRDX0JLUDRSX1BvcyAgICAgICAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0JLUDRSX01zayAgICAgICAgICAgICAgICAgICAgICAgICgweEZGRkZGRkZGVSA8PCBSVENfQktQNFJfUG9zKSAgICAvKiE8IDB4RkZGRkZGRkYgKi8NCiNkZWZpbmUgUlRDX0JLUDRSICAgICAgICAgICAgICAgICAgICAgICAgICAgIFJUQ19CS1A0Ul9Nc2sgICAgICAgICAgICAgICAgICAgICANCg0KLyoqKioqKioqKioqKioqKioqKioqICBCaXRzIGRlZmluaXRpb24gZm9yIFJUQ19CS1A1UiByZWdpc3RlciAgKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgUlRDX0JLUDVSX1BvcyAgICAgICAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0JLUDVSX01zayAgICAgICAgICAgICAgICAgICAgICAgICgweEZGRkZGRkZGVSA8PCBSVENfQktQNVJfUG9zKSAgICAvKiE8IDB4RkZGRkZGRkYgKi8NCiNkZWZpbmUgUlRDX0JLUDVSICAgICAgICAgICAgICAgICAgICAgICAgICAgIFJUQ19CS1A1Ul9Nc2sgICAgICAgICAgICAgICAgICAgICANCg0KLyoqKioqKioqKioqKioqKioqKioqICBCaXRzIGRlZmluaXRpb24gZm9yIFJUQ19CS1A2UiByZWdpc3RlciAgKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgUlRDX0JLUDZSX1BvcyAgICAgICAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0JLUDZSX01zayAgICAgICAgICAgICAgICAgICAgICAgICgweEZGRkZGRkZGVSA8PCBSVENfQktQNlJfUG9zKSAgICAvKiE8IDB4RkZGRkZGRkYgKi8NCiNkZWZpbmUgUlRDX0JLUDZSICAgICAgICAgICAgICAgICAgICAgICAgICAgIFJUQ19CS1A2Ul9Nc2sgICAgICAgICAgICAgICAgICAgICANCg0KLyoqKioqKioqKioqKioqKioqKioqICBCaXRzIGRlZmluaXRpb24gZm9yIFJUQ19CS1A3UiByZWdpc3RlciAgKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgUlRDX0JLUDdSX1BvcyAgICAgICAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0JLUDdSX01zayAgICAgICAgICAgICAgICAgICAgICAgICgweEZGRkZGRkZGVSA8PCBSVENfQktQN1JfUG9zKSAgICAvKiE8IDB4RkZGRkZGRkYgKi8NCiNkZWZpbmUgUlRDX0JLUDdSICAgICAgICAgICAgICAgICAgICAgICAgICAgIFJUQ19CS1A3Ul9Nc2sgICAgICAgICAgICAgICAgICAgICANCg0KLyoqKioqKioqKioqKioqKioqKioqICBCaXRzIGRlZmluaXRpb24gZm9yIFJUQ19CS1A4UiByZWdpc3RlciAgKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgUlRDX0JLUDhSX1BvcyAgICAgICAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0JLUDhSX01zayAgICAgICAgICAgICAgICAgICAgICAgICgweEZGRkZGRkZGVSA8PCBSVENfQktQOFJfUG9zKSAgICAvKiE8IDB4RkZGRkZGRkYgKi8NCiNkZWZpbmUgUlRDX0JLUDhSICAgICAgICAgICAgICAgICAgICAgICAgICAgIFJUQ19CS1A4Ul9Nc2sgICAgICAgICAgICAgICAgICAgICANCg0KLyoqKioqKioqKioqKioqKioqKioqICBCaXRzIGRlZmluaXRpb24gZm9yIFJUQ19CS1A5UiByZWdpc3RlciAgKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgUlRDX0JLUDlSX1BvcyAgICAgICAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0JLUDlSX01zayAgICAgICAgICAgICAgICAgICAgICAgICgweEZGRkZGRkZGVSA8PCBSVENfQktQOVJfUG9zKSAgICAvKiE8IDB4RkZGRkZGRkYgKi8NCiNkZWZpbmUgUlRDX0JLUDlSICAgICAgICAgICAgICAgICAgICAgICAgICAgIFJUQ19CS1A5Ul9Nc2sgICAgICAgICAgICAgICAgICAgICANCg0KLyoqKioqKioqKioqKioqKioqKioqICBCaXRzIGRlZmluaXRpb24gZm9yIFJUQ19CS1AxMFIgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKi8NCiNkZWZpbmUgUlRDX0JLUDEwUl9Qb3MgICAgICAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0JLUDEwUl9Nc2sgICAgICAgICAgICAgICAgICAgICAgICgweEZGRkZGRkZGVSA8PCBSVENfQktQMTBSX1BvcykgICAvKiE8IDB4RkZGRkZGRkYgKi8NCiNkZWZpbmUgUlRDX0JLUDEwUiAgICAgICAgICAgICAgICAgICAgICAgICAgIFJUQ19CS1AxMFJfTXNrICAgICAgICAgICAgICAgICAgICANCg0KLyoqKioqKioqKioqKioqKioqKioqICBCaXRzIGRlZmluaXRpb24gZm9yIFJUQ19CS1AxMVIgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKi8NCiNkZWZpbmUgUlRDX0JLUDExUl9Qb3MgICAgICAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0JLUDExUl9Nc2sgICAgICAgICAgICAgICAgICAgICAgICgweEZGRkZGRkZGVSA8PCBSVENfQktQMTFSX1BvcykgICAvKiE8IDB4RkZGRkZGRkYgKi8NCiNkZWZpbmUgUlRDX0JLUDExUiAgICAgICAgICAgICAgICAgICAgICAgICAgIFJUQ19CS1AxMVJfTXNrICAgICAgICAgICAgICAgICAgICANCg0KLyoqKioqKioqKioqKioqKioqKioqICBCaXRzIGRlZmluaXRpb24gZm9yIFJUQ19CS1AxMlIgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKi8NCiNkZWZpbmUgUlRDX0JLUDEyUl9Qb3MgICAgICAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0JLUDEyUl9Nc2sgICAgICAgICAgICAgICAgICAgICAgICgweEZGRkZGRkZGVSA8PCBSVENfQktQMTJSX1BvcykgICAvKiE8IDB4RkZGRkZGRkYgKi8NCiNkZWZpbmUgUlRDX0JLUDEyUiAgICAgICAgICAgICAgICAgICAgICAgICAgIFJUQ19CS1AxMlJfTXNrICAgICAgICAgICAgICAgICAgICANCg0KLyoqKioqKioqKioqKioqKioqKioqICBCaXRzIGRlZmluaXRpb24gZm9yIFJUQ19CS1AxM1IgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKi8NCiNkZWZpbmUgUlRDX0JLUDEzUl9Qb3MgICAgICAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0JLUDEzUl9Nc2sgICAgICAgICAgICAgICAgICAgICAgICgweEZGRkZGRkZGVSA8PCBSVENfQktQMTNSX1BvcykgICAvKiE8IDB4RkZGRkZGRkYgKi8NCiNkZWZpbmUgUlRDX0JLUDEzUiAgICAgICAgICAgICAgICAgICAgICAgICAgIFJUQ19CS1AxM1JfTXNrICAgICAgICAgICAgICAgICAgICANCg0KLyoqKioqKioqKioqKioqKioqKioqICBCaXRzIGRlZmluaXRpb24gZm9yIFJUQ19CS1AxNFIgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKi8NCiNkZWZpbmUgUlRDX0JLUDE0Ul9Qb3MgICAgICAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0JLUDE0Ul9Nc2sgICAgICAgICAgICAgICAgICAgICAgICgweEZGRkZGRkZGVSA8PCBSVENfQktQMTRSX1BvcykgICAvKiE8IDB4RkZGRkZGRkYgKi8NCiNkZWZpbmUgUlRDX0JLUDE0UiAgICAgICAgICAgICAgICAgICAgICAgICAgIFJUQ19CS1AxNFJfTXNrICAgICAgICAgICAgICAgICAgICANCg0KLyoqKioqKioqKioqKioqKioqKioqICBCaXRzIGRlZmluaXRpb24gZm9yIFJUQ19CS1AxNVIgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKi8NCiNkZWZpbmUgUlRDX0JLUDE1Ul9Qb3MgICAgICAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0JLUDE1Ul9Nc2sgICAgICAgICAgICAgICAgICAgICAgICgweEZGRkZGRkZGVSA8PCBSVENfQktQMTVSX1BvcykgICAvKiE8IDB4RkZGRkZGRkYgKi8NCiNkZWZpbmUgUlRDX0JLUDE1UiAgICAgICAgICAgICAgICAgICAgICAgICAgIFJUQ19CS1AxNVJfTXNrICAgICAgICAgICAgICAgICAgICANCg0KLyoqKioqKioqKioqKioqKioqKioqICBCaXRzIGRlZmluaXRpb24gZm9yIFJUQ19CS1AxNlIgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKi8NCiNkZWZpbmUgUlRDX0JLUDE2Ul9Qb3MgICAgICAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0JLUDE2Ul9Nc2sgICAgICAgICAgICAgICAgICAgICAgICgweEZGRkZGRkZGVSA8PCBSVENfQktQMTZSX1BvcykgICAvKiE8IDB4RkZGRkZGRkYgKi8NCiNkZWZpbmUgUlRDX0JLUDE2UiAgICAgICAgICAgICAgICAgICAgICAgICAgIFJUQ19CS1AxNlJfTXNrICAgICAgICAgICAgICAgICAgICANCg0KLyoqKioqKioqKioqKioqKioqKioqICBCaXRzIGRlZmluaXRpb24gZm9yIFJUQ19CS1AxN1IgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKi8NCiNkZWZpbmUgUlRDX0JLUDE3Ul9Qb3MgICAgICAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0JLUDE3Ul9Nc2sgICAgICAgICAgICAgICAgICAgICAgICgweEZGRkZGRkZGVSA8PCBSVENfQktQMTdSX1BvcykgICAvKiE8IDB4RkZGRkZGRkYgKi8NCiNkZWZpbmUgUlRDX0JLUDE3UiAgICAgICAgICAgICAgICAgICAgICAgICAgIFJUQ19CS1AxN1JfTXNrICAgICAgICAgICAgICAgICAgICANCg0KLyoqKioqKioqKioqKioqKioqKioqICBCaXRzIGRlZmluaXRpb24gZm9yIFJUQ19CS1AxOFIgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKi8NCiNkZWZpbmUgUlRDX0JLUDE4Ul9Qb3MgICAgICAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0JLUDE4Ul9Nc2sgICAgICAgICAgICAgICAgICAgICAgICgweEZGRkZGRkZGVSA8PCBSVENfQktQMThSX1BvcykgICAvKiE8IDB4RkZGRkZGRkYgKi8NCiNkZWZpbmUgUlRDX0JLUDE4UiAgICAgICAgICAgICAgICAgICAgICAgICAgIFJUQ19CS1AxOFJfTXNrICAgICAgICAgICAgICAgICAgICANCg0KLyoqKioqKioqKioqKioqKioqKioqICBCaXRzIGRlZmluaXRpb24gZm9yIFJUQ19CS1AxOVIgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKi8NCiNkZWZpbmUgUlRDX0JLUDE5Ul9Qb3MgICAgICAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0JLUDE5Ul9Nc2sgICAgICAgICAgICAgICAgICAgICAgICgweEZGRkZGRkZGVSA8PCBSVENfQktQMTlSX1BvcykgICAvKiE8IDB4RkZGRkZGRkYgKi8NCiNkZWZpbmUgUlRDX0JLUDE5UiAgICAgICAgICAgICAgICAgICAgICAgICAgIFJUQ19CS1AxOVJfTXNrICAgICAgICAgICAgICAgICAgICANCg0KLyoqKioqKioqKioqKioqKioqKioqICBCaXRzIGRlZmluaXRpb24gZm9yIFJUQ19CS1AyMFIgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKi8NCiNkZWZpbmUgUlRDX0JLUDIwUl9Qb3MgICAgICAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0JLUDIwUl9Nc2sgICAgICAgICAgICAgICAgICAgICAgICgweEZGRkZGRkZGVSA8PCBSVENfQktQMjBSX1BvcykgICAvKiE8IDB4RkZGRkZGRkYgKi8NCiNkZWZpbmUgUlRDX0JLUDIwUiAgICAgICAgICAgICAgICAgICAgICAgICAgIFJUQ19CS1AyMFJfTXNrICAgICAgICAgICAgICAgICAgICANCg0KLyoqKioqKioqKioqKioqKioqKioqICBCaXRzIGRlZmluaXRpb24gZm9yIFJUQ19CS1AyMVIgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKi8NCiNkZWZpbmUgUlRDX0JLUDIxUl9Qb3MgICAgICAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0JLUDIxUl9Nc2sgICAgICAgICAgICAgICAgICAgICAgICgweEZGRkZGRkZGVSA8PCBSVENfQktQMjFSX1BvcykgICAvKiE8IDB4RkZGRkZGRkYgKi8NCiNkZWZpbmUgUlRDX0JLUDIxUiAgICAgICAgICAgICAgICAgICAgICAgICAgIFJUQ19CS1AyMVJfTXNrICAgICAgICAgICAgICAgICAgICANCg0KLyoqKioqKioqKioqKioqKioqKioqICBCaXRzIGRlZmluaXRpb24gZm9yIFJUQ19CS1AyMlIgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKi8NCiNkZWZpbmUgUlRDX0JLUDIyUl9Qb3MgICAgICAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0JLUDIyUl9Nc2sgICAgICAgICAgICAgICAgICAgICAgICgweEZGRkZGRkZGVSA8PCBSVENfQktQMjJSX1BvcykgICAvKiE8IDB4RkZGRkZGRkYgKi8NCiNkZWZpbmUgUlRDX0JLUDIyUiAgICAgICAgICAgICAgICAgICAgICAgICAgIFJUQ19CS1AyMlJfTXNrICAgICAgICAgICAgICAgICAgICANCg0KLyoqKioqKioqKioqKioqKioqKioqICBCaXRzIGRlZmluaXRpb24gZm9yIFJUQ19CS1AyM1IgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKi8NCiNkZWZpbmUgUlRDX0JLUDIzUl9Qb3MgICAgICAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0JLUDIzUl9Nc2sgICAgICAgICAgICAgICAgICAgICAgICgweEZGRkZGRkZGVSA8PCBSVENfQktQMjNSX1BvcykgICAvKiE8IDB4RkZGRkZGRkYgKi8NCiNkZWZpbmUgUlRDX0JLUDIzUiAgICAgICAgICAgICAgICAgICAgICAgICAgIFJUQ19CS1AyM1JfTXNrICAgICAgICAgICAgICAgICAgICANCg0KLyoqKioqKioqKioqKioqKioqKioqICBCaXRzIGRlZmluaXRpb24gZm9yIFJUQ19CS1AyNFIgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKi8NCiNkZWZpbmUgUlRDX0JLUDI0Ul9Qb3MgICAgICAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0JLUDI0Ul9Nc2sgICAgICAgICAgICAgICAgICAgICAgICgweEZGRkZGRkZGVSA8PCBSVENfQktQMjRSX1BvcykgICAvKiE8IDB4RkZGRkZGRkYgKi8NCiNkZWZpbmUgUlRDX0JLUDI0UiAgICAgICAgICAgICAgICAgICAgICAgICAgIFJUQ19CS1AyNFJfTXNrICAgICAgICAgICAgICAgICAgICANCg0KLyoqKioqKioqKioqKioqKioqKioqICBCaXRzIGRlZmluaXRpb24gZm9yIFJUQ19CS1AyNVIgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKi8NCiNkZWZpbmUgUlRDX0JLUDI1Ul9Qb3MgICAgICAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0JLUDI1Ul9Nc2sgICAgICAgICAgICAgICAgICAgICAgICgweEZGRkZGRkZGVSA8PCBSVENfQktQMjVSX1BvcykgICAvKiE8IDB4RkZGRkZGRkYgKi8NCiNkZWZpbmUgUlRDX0JLUDI1UiAgICAgICAgICAgICAgICAgICAgICAgICAgIFJUQ19CS1AyNVJfTXNrICAgICAgICAgICAgICAgICAgICANCg0KLyoqKioqKioqKioqKioqKioqKioqICBCaXRzIGRlZmluaXRpb24gZm9yIFJUQ19CS1AyNlIgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKi8NCiNkZWZpbmUgUlRDX0JLUDI2Ul9Qb3MgICAgICAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0JLUDI2Ul9Nc2sgICAgICAgICAgICAgICAgICAgICAgICgweEZGRkZGRkZGVSA8PCBSVENfQktQMjZSX1BvcykgICAvKiE8IDB4RkZGRkZGRkYgKi8NCiNkZWZpbmUgUlRDX0JLUDI2UiAgICAgICAgICAgICAgICAgICAgICAgICAgIFJUQ19CS1AyNlJfTXNrICAgICAgICAgICAgICAgICAgICANCg0KLyoqKioqKioqKioqKioqKioqKioqICBCaXRzIGRlZmluaXRpb24gZm9yIFJUQ19CS1AyN1IgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKi8NCiNkZWZpbmUgUlRDX0JLUDI3Ul9Qb3MgICAgICAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0JLUDI3Ul9Nc2sgICAgICAgICAgICAgICAgICAgICAgICgweEZGRkZGRkZGVSA8PCBSVENfQktQMjdSX1BvcykgICAvKiE8IDB4RkZGRkZGRkYgKi8NCiNkZWZpbmUgUlRDX0JLUDI3UiAgICAgICAgICAgICAgICAgICAgICAgICAgIFJUQ19CS1AyN1JfTXNrICAgICAgICAgICAgICAgICAgICANCg0KLyoqKioqKioqKioqKioqKioqKioqICBCaXRzIGRlZmluaXRpb24gZm9yIFJUQ19CS1AyOFIgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKi8NCiNkZWZpbmUgUlRDX0JLUDI4Ul9Qb3MgICAgICAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0JLUDI4Ul9Nc2sgICAgICAgICAgICAgICAgICAgICAgICgweEZGRkZGRkZGVSA8PCBSVENfQktQMjhSX1BvcykgICAvKiE8IDB4RkZGRkZGRkYgKi8NCiNkZWZpbmUgUlRDX0JLUDI4UiAgICAgICAgICAgICAgICAgICAgICAgICAgIFJUQ19CS1AyOFJfTXNrICAgICAgICAgICAgICAgICAgICANCg0KLyoqKioqKioqKioqKioqKioqKioqICBCaXRzIGRlZmluaXRpb24gZm9yIFJUQ19CS1AyOVIgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKi8NCiNkZWZpbmUgUlRDX0JLUDI5Ul9Qb3MgICAgICAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0JLUDI5Ul9Nc2sgICAgICAgICAgICAgICAgICAgICAgICgweEZGRkZGRkZGVSA8PCBSVENfQktQMjlSX1BvcykgICAvKiE8IDB4RkZGRkZGRkYgKi8NCiNkZWZpbmUgUlRDX0JLUDI5UiAgICAgICAgICAgICAgICAgICAgICAgICAgIFJUQ19CS1AyOVJfTXNrICAgICAgICAgICAgICAgICAgICANCg0KLyoqKioqKioqKioqKioqKioqKioqICBCaXRzIGRlZmluaXRpb24gZm9yIFJUQ19CS1AzMFIgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKi8NCiNkZWZpbmUgUlRDX0JLUDMwUl9Qb3MgICAgICAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0JLUDMwUl9Nc2sgICAgICAgICAgICAgICAgICAgICAgICgweEZGRkZGRkZGVSA8PCBSVENfQktQMzBSX1BvcykgICAvKiE8IDB4RkZGRkZGRkYgKi8NCiNkZWZpbmUgUlRDX0JLUDMwUiAgICAgICAgICAgICAgICAgICAgICAgICAgIFJUQ19CS1AzMFJfTXNrICAgICAgICAgICAgICAgICAgICANCg0KLyoqKioqKioqKioqKioqKioqKioqICBCaXRzIGRlZmluaXRpb24gZm9yIFJUQ19CS1AzMVIgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKi8NCiNkZWZpbmUgUlRDX0JLUDMxUl9Qb3MgICAgICAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0JLUDMxUl9Nc2sgICAgICAgICAgICAgICAgICAgICAgICgweEZGRkZGRkZGVSA8PCBSVENfQktQMzFSX1BvcykgICAvKiE8IDB4RkZGRkZGRkYgKi8NCiNkZWZpbmUgUlRDX0JLUDMxUiAgICAgICAgICAgICAgICAgICAgICAgICAgIFJUQ19CS1AzMVJfTXNrICAgICAgICAgICAgICAgICAgICANCg0KLyoqKioqKioqKioqKioqKioqKioqIE51bWJlciBvZiBiYWNrdXAgcmVnaXN0ZXJzICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgUlRDX0JLUF9OVU1CRVIgMzINCg0KLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8NCi8qICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovDQovKiAgICAgICAgICAgICAgICAgICAgIFNlcmlhbCBQZXJpcGhlcmFsIEludGVyZmFjZSAoU1BJKSAgICAgICAgICAgICAgICAgICAgICAqLw0KLyogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8NCi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovDQoNCi8qDQogKiBAYnJpZWYgU3BlY2lmaWMgZGV2aWNlIGZlYXR1cmUgZGVmaW5pdGlvbnMgKG5vdCBwcmVzZW50IG9uIGFsbCBkZXZpY2VzIGluIHRoZSBTVE0zMkYzIHNlcmllKQ0KICovDQojZGVmaW5lIFNQSV9JMlNfU1VQUE9SVCAgICANCg0KLyoqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBTUElfQ1IxIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgU1BJX0NSMV9DUEhBX1BvcyAgICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgU1BJX0NSMV9DUEhBX01zayAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgU1BJX0NSMV9DUEhBX1BvcykgICAgICAgICAvKiE8IDB4MDAwMDAwMDEgKi8NCiNkZWZpbmUgU1BJX0NSMV9DUEhBICAgICAgICAgICAgICAgICAgICAgICAgU1BJX0NSMV9DUEhBX01zayAgICAgICAgICAgICAgICAgICAvKiE8IENsb2NrIFBoYXNlICovDQojZGVmaW5lIFNQSV9DUjFfQ1BPTF9Qb3MgICAgICAgICAgICAgICAgICAgICgxVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFNQSV9DUjFfQ1BPTF9Nc2sgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFNQSV9DUjFfQ1BPTF9Qb3MpICAgICAgICAgLyohPCAweDAwMDAwMDAyICovDQojZGVmaW5lIFNQSV9DUjFfQ1BPTCAgICAgICAgICAgICAgICAgICAgICAgIFNQSV9DUjFfQ1BPTF9Nc2sgICAgICAgICAgICAgICAgICAgLyohPCBDbG9jayBQb2xhcml0eSAqLw0KI2RlZmluZSBTUElfQ1IxX01TVFJfUG9zICAgICAgICAgICAgICAgICAgICAoMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBTUElfQ1IxX01TVFJfTXNrICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBTUElfQ1IxX01TVFJfUG9zKSAgICAgICAgIC8qITwgMHgwMDAwMDAwNCAqLw0KI2RlZmluZSBTUElfQ1IxX01TVFIgICAgICAgICAgICAgICAgICAgICAgICBTUElfQ1IxX01TVFJfTXNrICAgICAgICAgICAgICAgICAgIC8qITwgTWFzdGVyIFNlbGVjdGlvbiAqLw0KDQojZGVmaW5lIFNQSV9DUjFfQlJfUG9zICAgICAgICAgICAgICAgICAgICAgICgzVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFNQSV9DUjFfQlJfTXNrICAgICAgICAgICAgICAgICAgICAgICgweDdVIDw8IFNQSV9DUjFfQlJfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwMDM4ICovDQojZGVmaW5lIFNQSV9DUjFfQlIgICAgICAgICAgICAgICAgICAgICAgICAgIFNQSV9DUjFfQlJfTXNrICAgICAgICAgICAgICAgICAgICAgLyohPCBCUlsyOjBdIGJpdHMgKEJhdWQgUmF0ZSBDb250cm9sKSAqLw0KI2RlZmluZSBTUElfQ1IxX0JSXzAgICAgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBTUElfQ1IxX0JSX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDAwOCAqLw0KI2RlZmluZSBTUElfQ1IxX0JSXzEgICAgICAgICAgICAgICAgICAgICAgICAoMHgyVSA8PCBTUElfQ1IxX0JSX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDAxMCAqLw0KI2RlZmluZSBTUElfQ1IxX0JSXzIgICAgICAgICAgICAgICAgICAgICAgICAoMHg0VSA8PCBTUElfQ1IxX0JSX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDAyMCAqLw0KDQojZGVmaW5lIFNQSV9DUjFfU1BFX1BvcyAgICAgICAgICAgICAgICAgICAgICg2VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFNQSV9DUjFfU1BFX01zayAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFNQSV9DUjFfU1BFX1BvcykgICAgICAgICAgLyohPCAweDAwMDAwMDQwICovDQojZGVmaW5lIFNQSV9DUjFfU1BFICAgICAgICAgICAgICAgICAgICAgICAgIFNQSV9DUjFfU1BFX01zayAgICAgICAgICAgICAgICAgICAgLyohPCBTUEkgRW5hYmxlICovDQojZGVmaW5lIFNQSV9DUjFfTFNCRklSU1RfUG9zICAgICAgICAgICAgICAgICg3VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFNQSV9DUjFfTFNCRklSU1RfTXNrICAgICAgICAgICAgICAgICgweDFVIDw8IFNQSV9DUjFfTFNCRklSU1RfUG9zKSAgICAgLyohPCAweDAwMDAwMDgwICovDQojZGVmaW5lIFNQSV9DUjFfTFNCRklSU1QgICAgICAgICAgICAgICAgICAgIFNQSV9DUjFfTFNCRklSU1RfTXNrICAgICAgICAgICAgICAgLyohPCBGcmFtZSBGb3JtYXQgKi8NCiNkZWZpbmUgU1BJX0NSMV9TU0lfUG9zICAgICAgICAgICAgICAgICAgICAgKDhVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgU1BJX0NSMV9TU0lfTXNrICAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgU1BJX0NSMV9TU0lfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDAxMDAgKi8NCiNkZWZpbmUgU1BJX0NSMV9TU0kgICAgICAgICAgICAgICAgICAgICAgICAgU1BJX0NSMV9TU0lfTXNrICAgICAgICAgICAgICAgICAgICAvKiE8IEludGVybmFsIHNsYXZlIHNlbGVjdCAqLw0KI2RlZmluZSBTUElfQ1IxX1NTTV9Qb3MgICAgICAgICAgICAgICAgICAgICAoOVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBTUElfQ1IxX1NTTV9Nc2sgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBTUElfQ1IxX1NTTV9Qb3MpICAgICAgICAgIC8qITwgMHgwMDAwMDIwMCAqLw0KI2RlZmluZSBTUElfQ1IxX1NTTSAgICAgICAgICAgICAgICAgICAgICAgICBTUElfQ1IxX1NTTV9Nc2sgICAgICAgICAgICAgICAgICAgIC8qITwgU29mdHdhcmUgc2xhdmUgbWFuYWdlbWVudCAqLw0KI2RlZmluZSBTUElfQ1IxX1JYT05MWV9Qb3MgICAgICAgICAgICAgICAgICAoMTBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBTUElfQ1IxX1JYT05MWV9Nc2sgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBTUElfQ1IxX1JYT05MWV9Qb3MpICAgICAgIC8qITwgMHgwMDAwMDQwMCAqLw0KI2RlZmluZSBTUElfQ1IxX1JYT05MWSAgICAgICAgICAgICAgICAgICAgICBTUElfQ1IxX1JYT05MWV9Nc2sgICAgICAgICAgICAgICAgIC8qITwgUmVjZWl2ZSBvbmx5ICovDQojZGVmaW5lIFNQSV9DUjFfREZGX1BvcyAgICAgICAgICAgICAgICAgICAgICgxMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFNQSV9DUjFfREZGX01zayAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFNQSV9DUjFfREZGX1BvcykgICAgICAgICAgLyohPCAweDAwMDAwODAwICovDQojZGVmaW5lIFNQSV9DUjFfREZGICAgICAgICAgICAgICAgICAgICAgICAgIFNQSV9DUjFfREZGX01zayAgICAgICAgICAgICAgICAgICAgLyohPCBEYXRhIEZyYW1lIEZvcm1hdCAqLw0KI2RlZmluZSBTUElfQ1IxX0NSQ05FWFRfUG9zICAgICAgICAgICAgICAgICAoMTJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBTUElfQ1IxX0NSQ05FWFRfTXNrICAgICAgICAgICAgICAgICAoMHgxVSA8PCBTUElfQ1IxX0NSQ05FWFRfUG9zKSAgICAgIC8qITwgMHgwMDAwMTAwMCAqLw0KI2RlZmluZSBTUElfQ1IxX0NSQ05FWFQgICAgICAgICAgICAgICAgICAgICBTUElfQ1IxX0NSQ05FWFRfTXNrICAgICAgICAgICAgICAgIC8qITwgVHJhbnNtaXQgQ1JDIG5leHQgKi8NCiNkZWZpbmUgU1BJX0NSMV9DUkNFTl9Qb3MgICAgICAgICAgICAgICAgICAgKDEzVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgU1BJX0NSMV9DUkNFTl9Nc2sgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgU1BJX0NSMV9DUkNFTl9Qb3MpICAgICAgICAvKiE8IDB4MDAwMDIwMDAgKi8NCiNkZWZpbmUgU1BJX0NSMV9DUkNFTiAgICAgICAgICAgICAgICAgICAgICAgU1BJX0NSMV9DUkNFTl9Nc2sgICAgICAgICAgICAgICAgICAvKiE8IEhhcmR3YXJlIENSQyBjYWxjdWxhdGlvbiBlbmFibGUgKi8NCiNkZWZpbmUgU1BJX0NSMV9CSURJT0VfUG9zICAgICAgICAgICAgICAgICAgKDE0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgU1BJX0NSMV9CSURJT0VfTXNrICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgU1BJX0NSMV9CSURJT0VfUG9zKSAgICAgICAvKiE8IDB4MDAwMDQwMDAgKi8NCiNkZWZpbmUgU1BJX0NSMV9CSURJT0UgICAgICAgICAgICAgICAgICAgICAgU1BJX0NSMV9CSURJT0VfTXNrICAgICAgICAgICAgICAgICAvKiE8IE91dHB1dCBlbmFibGUgaW4gYmlkaXJlY3Rpb25hbCBtb2RlICovDQojZGVmaW5lIFNQSV9DUjFfQklESU1PREVfUG9zICAgICAgICAgICAgICAgICgxNVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFNQSV9DUjFfQklESU1PREVfTXNrICAgICAgICAgICAgICAgICgweDFVIDw8IFNQSV9DUjFfQklESU1PREVfUG9zKSAgICAgLyohPCAweDAwMDA4MDAwICovDQojZGVmaW5lIFNQSV9DUjFfQklESU1PREUgICAgICAgICAgICAgICAgICAgIFNQSV9DUjFfQklESU1PREVfTXNrICAgICAgICAgICAgICAgLyohPCBCaWRpcmVjdGlvbmFsIGRhdGEgbW9kZSBlbmFibGUgKi8NCg0KLyoqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBTUElfQ1IyIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgU1BJX0NSMl9SWERNQUVOX1BvcyAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgU1BJX0NSMl9SWERNQUVOX01zayAgICAgICAgICAgICAgICAgKDB4MVUgPDwgU1BJX0NSMl9SWERNQUVOX1BvcykgICAgICAvKiE8IDB4MDAwMDAwMDEgKi8NCiNkZWZpbmUgU1BJX0NSMl9SWERNQUVOICAgICAgICAgICAgICAgICAgICAgU1BJX0NSMl9SWERNQUVOX01zayAgICAgICAgICAgICAgICAvKiE8IFJ4IEJ1ZmZlciBETUEgRW5hYmxlICovDQojZGVmaW5lIFNQSV9DUjJfVFhETUFFTl9Qb3MgICAgICAgICAgICAgICAgICgxVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFNQSV9DUjJfVFhETUFFTl9Nc2sgICAgICAgICAgICAgICAgICgweDFVIDw8IFNQSV9DUjJfVFhETUFFTl9Qb3MpICAgICAgLyohPCAweDAwMDAwMDAyICovDQojZGVmaW5lIFNQSV9DUjJfVFhETUFFTiAgICAgICAgICAgICAgICAgICAgIFNQSV9DUjJfVFhETUFFTl9Nc2sgICAgICAgICAgICAgICAgLyohPCBUeCBCdWZmZXIgRE1BIEVuYWJsZSAqLw0KI2RlZmluZSBTUElfQ1IyX1NTT0VfUG9zICAgICAgICAgICAgICAgICAgICAoMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBTUElfQ1IyX1NTT0VfTXNrICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBTUElfQ1IyX1NTT0VfUG9zKSAgICAgICAgIC8qITwgMHgwMDAwMDAwNCAqLw0KI2RlZmluZSBTUElfQ1IyX1NTT0UgICAgICAgICAgICAgICAgICAgICAgICBTUElfQ1IyX1NTT0VfTXNrICAgICAgICAgICAgICAgICAgIC8qITwgU1MgT3V0cHV0IEVuYWJsZSAqLw0KI2RlZmluZSBTUElfQ1IyX0ZSRl9Qb3MgICAgICAgICAgICAgICAgICAgICAoNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBTUElfQ1IyX0ZSRl9Nc2sgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBTUElfQ1IyX0ZSRl9Qb3MpICAgICAgICAgIC8qITwgMHgwMDAwMDAxMCAqLw0KI2RlZmluZSBTUElfQ1IyX0ZSRiAgICAgICAgICAgICAgICAgICAgICAgICBTUElfQ1IyX0ZSRl9Nc2sgICAgICAgICAgICAgICAgICAgIC8qITwgRnJhbWUgZm9ybWF0ICovDQojZGVmaW5lIFNQSV9DUjJfRVJSSUVfUG9zICAgICAgICAgICAgICAgICAgICg1VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFNQSV9DUjJfRVJSSUVfTXNrICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFNQSV9DUjJfRVJSSUVfUG9zKSAgICAgICAgLyohPCAweDAwMDAwMDIwICovDQojZGVmaW5lIFNQSV9DUjJfRVJSSUUgICAgICAgICAgICAgICAgICAgICAgIFNQSV9DUjJfRVJSSUVfTXNrICAgICAgICAgICAgICAgICAgLyohPCBFcnJvciBJbnRlcnJ1cHQgRW5hYmxlICovDQojZGVmaW5lIFNQSV9DUjJfUlhORUlFX1BvcyAgICAgICAgICAgICAgICAgICg2VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFNQSV9DUjJfUlhORUlFX01zayAgICAgICAgICAgICAgICAgICgweDFVIDw8IFNQSV9DUjJfUlhORUlFX1BvcykgICAgICAgLyohPCAweDAwMDAwMDQwICovDQojZGVmaW5lIFNQSV9DUjJfUlhORUlFICAgICAgICAgICAgICAgICAgICAgIFNQSV9DUjJfUlhORUlFX01zayAgICAgICAgICAgICAgICAgLyohPCBSWCBidWZmZXIgTm90IEVtcHR5IEludGVycnVwdCBFbmFibGUgKi8NCiNkZWZpbmUgU1BJX0NSMl9UWEVJRV9Qb3MgICAgICAgICAgICAgICAgICAgKDdVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgU1BJX0NSMl9UWEVJRV9Nc2sgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgU1BJX0NSMl9UWEVJRV9Qb3MpICAgICAgICAvKiE8IDB4MDAwMDAwODAgKi8NCiNkZWZpbmUgU1BJX0NSMl9UWEVJRSAgICAgICAgICAgICAgICAgICAgICAgU1BJX0NSMl9UWEVJRV9Nc2sgICAgICAgICAgICAgICAgICAvKiE8IFR4IGJ1ZmZlciBFbXB0eSBJbnRlcnJ1cHQgRW5hYmxlICovDQoNCi8qKioqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFNQSV9TUiByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIFNQSV9TUl9SWE5FX1BvcyAgICAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFNQSV9TUl9SWE5FX01zayAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFNQSV9TUl9SWE5FX1BvcykgICAgICAgICAgLyohPCAweDAwMDAwMDAxICovDQojZGVmaW5lIFNQSV9TUl9SWE5FICAgICAgICAgICAgICAgICAgICAgICAgIFNQSV9TUl9SWE5FX01zayAgICAgICAgICAgICAgICAgICAgLyohPCBSZWNlaXZlIGJ1ZmZlciBOb3QgRW1wdHkgKi8NCiNkZWZpbmUgU1BJX1NSX1RYRV9Qb3MgICAgICAgICAgICAgICAgICAgICAgKDFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgU1BJX1NSX1RYRV9Nc2sgICAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgU1BJX1NSX1RYRV9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDIgKi8NCiNkZWZpbmUgU1BJX1NSX1RYRSAgICAgICAgICAgICAgICAgICAgICAgICAgU1BJX1NSX1RYRV9Nc2sgICAgICAgICAgICAgICAgICAgICAvKiE8IFRyYW5zbWl0IGJ1ZmZlciBFbXB0eSAqLw0KI2RlZmluZSBTUElfU1JfQ0hTSURFX1BvcyAgICAgICAgICAgICAgICAgICAoMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBTUElfU1JfQ0hTSURFX01zayAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBTUElfU1JfQ0hTSURFX1BvcykgICAgICAgIC8qITwgMHgwMDAwMDAwNCAqLw0KI2RlZmluZSBTUElfU1JfQ0hTSURFICAgICAgICAgICAgICAgICAgICAgICBTUElfU1JfQ0hTSURFX01zayAgICAgICAgICAgICAgICAgIC8qITwgQ2hhbm5lbCBzaWRlICovDQojZGVmaW5lIFNQSV9TUl9VRFJfUG9zICAgICAgICAgICAgICAgICAgICAgICgzVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFNQSV9TUl9VRFJfTXNrICAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFNQSV9TUl9VRFJfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwMDA4ICovDQojZGVmaW5lIFNQSV9TUl9VRFIgICAgICAgICAgICAgICAgICAgICAgICAgIFNQSV9TUl9VRFJfTXNrICAgICAgICAgICAgICAgICAgICAgLyohPCBVbmRlcnJ1biBmbGFnICovDQojZGVmaW5lIFNQSV9TUl9DUkNFUlJfUG9zICAgICAgICAgICAgICAgICAgICg0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFNQSV9TUl9DUkNFUlJfTXNrICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFNQSV9TUl9DUkNFUlJfUG9zKSAgICAgICAgLyohPCAweDAwMDAwMDEwICovDQojZGVmaW5lIFNQSV9TUl9DUkNFUlIgICAgICAgICAgICAgICAgICAgICAgIFNQSV9TUl9DUkNFUlJfTXNrICAgICAgICAgICAgICAgICAgLyohPCBDUkMgRXJyb3IgZmxhZyAqLw0KI2RlZmluZSBTUElfU1JfTU9ERl9Qb3MgICAgICAgICAgICAgICAgICAgICAoNVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBTUElfU1JfTU9ERl9Nc2sgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBTUElfU1JfTU9ERl9Qb3MpICAgICAgICAgIC8qITwgMHgwMDAwMDAyMCAqLw0KI2RlZmluZSBTUElfU1JfTU9ERiAgICAgICAgICAgICAgICAgICAgICAgICBTUElfU1JfTU9ERl9Nc2sgICAgICAgICAgICAgICAgICAgIC8qITwgTW9kZSBmYXVsdCAqLw0KI2RlZmluZSBTUElfU1JfT1ZSX1BvcyAgICAgICAgICAgICAgICAgICAgICAoNlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBTUElfU1JfT1ZSX01zayAgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBTUElfU1JfT1ZSX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDA0MCAqLw0KI2RlZmluZSBTUElfU1JfT1ZSICAgICAgICAgICAgICAgICAgICAgICAgICBTUElfU1JfT1ZSX01zayAgICAgICAgICAgICAgICAgICAgIC8qITwgT3ZlcnJ1biBmbGFnICovDQojZGVmaW5lIFNQSV9TUl9CU1lfUG9zICAgICAgICAgICAgICAgICAgICAgICg3VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFNQSV9TUl9CU1lfTXNrICAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFNQSV9TUl9CU1lfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwMDgwICovDQojZGVmaW5lIFNQSV9TUl9CU1kgICAgICAgICAgICAgICAgICAgICAgICAgIFNQSV9TUl9CU1lfTXNrICAgICAgICAgICAgICAgICAgICAgLyohPCBCdXN5IGZsYWcgKi8NCiNkZWZpbmUgU1BJX1NSX0ZSRV9Qb3MgICAgICAgICAgICAgICAgICAgICAgKDhVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgU1BJX1NSX0ZSRV9Nc2sgICAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgU1BJX1NSX0ZSRV9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDAxMDAgKi8NCiNkZWZpbmUgU1BJX1NSX0ZSRSAgICAgICAgICAgICAgICAgICAgICAgICAgU1BJX1NSX0ZSRV9Nc2sgICAgICAgICAgICAgICAgICAgICAvKiE8RnJhbWUgZm9ybWF0IGVycm9yIGZsYWcgICovDQoNCi8qKioqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFNQSV9EUiByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIFNQSV9EUl9EUl9Qb3MgICAgICAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFNQSV9EUl9EUl9Nc2sgICAgICAgICAgICAgICAgICAgICAgICgweEZGRkZVIDw8IFNQSV9EUl9EUl9Qb3MpICAgICAgICAgLyohPCAweDAwMDBGRkZGICovDQojZGVmaW5lIFNQSV9EUl9EUiAgICAgICAgICAgICAgICAgICAgICAgICAgIFNQSV9EUl9EUl9Nc2sgICAgICAgICAgICAgICAgICAgICAgLyohPCBEYXRhIFJlZ2lzdGVyICovDQoNCi8qKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgU1BJX0NSQ1BSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIFNQSV9DUkNQUl9DUkNQT0xZX1BvcyAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFNQSV9DUkNQUl9DUkNQT0xZX01zayAgICAgICAgICAgICAgICgweEZGRkZVIDw8IFNQSV9DUkNQUl9DUkNQT0xZX1BvcykgLyohPCAweDAwMDBGRkZGICovDQojZGVmaW5lIFNQSV9DUkNQUl9DUkNQT0xZICAgICAgICAgICAgICAgICAgIFNQSV9DUkNQUl9DUkNQT0xZX01zayAgICAgICAgICAgICAgLyohPCBDUkMgcG9seW5vbWlhbCByZWdpc3RlciAqLw0KDQovKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgU1BJX1JYQ1JDUiByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBTUElfUlhDUkNSX1JYQ1JDX1BvcyAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBTUElfUlhDUkNSX1JYQ1JDX01zayAgICAgICAgICAgICAgICAoMHhGRkZGVSA8PCBTUElfUlhDUkNSX1JYQ1JDX1BvcykgIC8qITwgMHgwMDAwRkZGRiAqLw0KI2RlZmluZSBTUElfUlhDUkNSX1JYQ1JDICAgICAgICAgICAgICAgICAgICBTUElfUlhDUkNSX1JYQ1JDX01zayAgICAgICAgICAgICAgIC8qITwgUnggQ1JDIFJlZ2lzdGVyICovDQoNCi8qKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBTUElfVFhDUkNSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIFNQSV9UWENSQ1JfVFhDUkNfUG9zICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFNQSV9UWENSQ1JfVFhDUkNfTXNrICAgICAgICAgICAgICAgICgweEZGRkZVIDw8IFNQSV9UWENSQ1JfVFhDUkNfUG9zKSAgLyohPCAweDAwMDBGRkZGICovDQojZGVmaW5lIFNQSV9UWENSQ1JfVFhDUkMgICAgICAgICAgICAgICAgICAgIFNQSV9UWENSQ1JfVFhDUkNfTXNrICAgICAgICAgICAgICAgLyohPCBUeCBDUkMgUmVnaXN0ZXIgKi8NCg0KLyoqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFNQSV9JMlNDRkdSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgU1BJX0kyU0NGR1JfQ0hMRU5fUG9zICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgU1BJX0kyU0NGR1JfQ0hMRU5fTXNrICAgICAgICAgICAgICAgKDB4MVUgPDwgU1BJX0kyU0NGR1JfQ0hMRU5fUG9zKSAgICAvKiE8IDB4MDAwMDAwMDEgKi8NCiNkZWZpbmUgU1BJX0kyU0NGR1JfQ0hMRU4gICAgICAgICAgICAgICAgICAgU1BJX0kyU0NGR1JfQ0hMRU5fTXNrICAgICAgICAgICAgICAvKiE8Q2hhbm5lbCBsZW5ndGggKG51bWJlciBvZiBiaXRzIHBlciBhdWRpbyBjaGFubmVsKSAqLw0KDQojZGVmaW5lIFNQSV9JMlNDRkdSX0RBVExFTl9Qb3MgICAgICAgICAgICAgICgxVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFNQSV9JMlNDRkdSX0RBVExFTl9Nc2sgICAgICAgICAgICAgICgweDNVIDw8IFNQSV9JMlNDRkdSX0RBVExFTl9Qb3MpICAgLyohPCAweDAwMDAwMDA2ICovDQojZGVmaW5lIFNQSV9JMlNDRkdSX0RBVExFTiAgICAgICAgICAgICAgICAgIFNQSV9JMlNDRkdSX0RBVExFTl9Nc2sgICAgICAgICAgICAgLyohPERBVExFTlsxOjBdIGJpdHMgKERhdGEgbGVuZ3RoIHRvIGJlIHRyYW5zZmVycmVkKSAqLw0KI2RlZmluZSBTUElfSTJTQ0ZHUl9EQVRMRU5fMCAgICAgICAgICAgICAgICAoMHgxVSA8PCBTUElfSTJTQ0ZHUl9EQVRMRU5fUG9zKSAgIC8qITwgMHgwMDAwMDAwMiAqLw0KI2RlZmluZSBTUElfSTJTQ0ZHUl9EQVRMRU5fMSAgICAgICAgICAgICAgICAoMHgyVSA8PCBTUElfSTJTQ0ZHUl9EQVRMRU5fUG9zKSAgIC8qITwgMHgwMDAwMDAwNCAqLw0KDQojZGVmaW5lIFNQSV9JMlNDRkdSX0NLUE9MX1BvcyAgICAgICAgICAgICAgICgzVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFNQSV9JMlNDRkdSX0NLUE9MX01zayAgICAgICAgICAgICAgICgweDFVIDw8IFNQSV9JMlNDRkdSX0NLUE9MX1BvcykgICAgLyohPCAweDAwMDAwMDA4ICovDQojZGVmaW5lIFNQSV9JMlNDRkdSX0NLUE9MICAgICAgICAgICAgICAgICAgIFNQSV9JMlNDRkdSX0NLUE9MX01zayAgICAgICAgICAgICAgLyohPHN0ZWFkeSBzdGF0ZSBjbG9jayBwb2xhcml0eSAqLw0KDQojZGVmaW5lIFNQSV9JMlNDRkdSX0kyU1NURF9Qb3MgICAgICAgICAgICAgICg0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFNQSV9JMlNDRkdSX0kyU1NURF9Nc2sgICAgICAgICAgICAgICgweDNVIDw8IFNQSV9JMlNDRkdSX0kyU1NURF9Qb3MpICAgLyohPCAweDAwMDAwMDMwICovDQojZGVmaW5lIFNQSV9JMlNDRkdSX0kyU1NURCAgICAgICAgICAgICAgICAgIFNQSV9JMlNDRkdSX0kyU1NURF9Nc2sgICAgICAgICAgICAgLyohPEkyU1NURFsxOjBdIGJpdHMgKEkyUyBzdGFuZGFyZCBzZWxlY3Rpb24pICovDQojZGVmaW5lIFNQSV9JMlNDRkdSX0kyU1NURF8wICAgICAgICAgICAgICAgICgweDFVIDw8IFNQSV9JMlNDRkdSX0kyU1NURF9Qb3MpICAgLyohPCAweDAwMDAwMDEwICovDQojZGVmaW5lIFNQSV9JMlNDRkdSX0kyU1NURF8xICAgICAgICAgICAgICAgICgweDJVIDw8IFNQSV9JMlNDRkdSX0kyU1NURF9Qb3MpICAgLyohPCAweDAwMDAwMDIwICovDQoNCiNkZWZpbmUgU1BJX0kyU0NGR1JfUENNU1lOQ19Qb3MgICAgICAgICAgICAgKDdVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgU1BJX0kyU0NGR1JfUENNU1lOQ19Nc2sgICAgICAgICAgICAgKDB4MVUgPDwgU1BJX0kyU0NGR1JfUENNU1lOQ19Qb3MpICAvKiE8IDB4MDAwMDAwODAgKi8NCiNkZWZpbmUgU1BJX0kyU0NGR1JfUENNU1lOQyAgICAgICAgICAgICAgICAgU1BJX0kyU0NGR1JfUENNU1lOQ19Nc2sgICAgICAgICAgICAvKiE8UENNIGZyYW1lIHN5bmNocm9uaXphdGlvbiAqLw0KDQojZGVmaW5lIFNQSV9JMlNDRkdSX0kyU0NGR19Qb3MgICAgICAgICAgICAgICg4VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFNQSV9JMlNDRkdSX0kyU0NGR19Nc2sgICAgICAgICAgICAgICgweDNVIDw8IFNQSV9JMlNDRkdSX0kyU0NGR19Qb3MpICAgLyohPCAweDAwMDAwMzAwICovDQojZGVmaW5lIFNQSV9JMlNDRkdSX0kyU0NGRyAgICAgICAgICAgICAgICAgIFNQSV9JMlNDRkdSX0kyU0NGR19Nc2sgICAgICAgICAgICAgLyohPEkyU0NGR1sxOjBdIGJpdHMgKEkyUyBjb25maWd1cmF0aW9uIG1vZGUpICovDQojZGVmaW5lIFNQSV9JMlNDRkdSX0kyU0NGR18wICAgICAgICAgICAgICAgICgweDFVIDw8IFNQSV9JMlNDRkdSX0kyU0NGR19Qb3MpICAgLyohPCAweDAwMDAwMTAwICovDQojZGVmaW5lIFNQSV9JMlNDRkdSX0kyU0NGR18xICAgICAgICAgICAgICAgICgweDJVIDw8IFNQSV9JMlNDRkdSX0kyU0NGR19Qb3MpICAgLyohPCAweDAwMDAwMjAwICovDQoNCiNkZWZpbmUgU1BJX0kyU0NGR1JfSTJTRV9Qb3MgICAgICAgICAgICAgICAgKDEwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgU1BJX0kyU0NGR1JfSTJTRV9Nc2sgICAgICAgICAgICAgICAgKDB4MVUgPDwgU1BJX0kyU0NGR1JfSTJTRV9Qb3MpICAgICAvKiE8IDB4MDAwMDA0MDAgKi8NCiNkZWZpbmUgU1BJX0kyU0NGR1JfSTJTRSAgICAgICAgICAgICAgICAgICAgU1BJX0kyU0NGR1JfSTJTRV9Nc2sgICAgICAgICAgICAgICAvKiE8STJTIEVuYWJsZSAqLw0KI2RlZmluZSBTUElfSTJTQ0ZHUl9JMlNNT0RfUG9zICAgICAgICAgICAgICAoMTFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBTUElfSTJTQ0ZHUl9JMlNNT0RfTXNrICAgICAgICAgICAgICAoMHgxVSA8PCBTUElfSTJTQ0ZHUl9JMlNNT0RfUG9zKSAgIC8qITwgMHgwMDAwMDgwMCAqLw0KI2RlZmluZSBTUElfSTJTQ0ZHUl9JMlNNT0QgICAgICAgICAgICAgICAgICBTUElfSTJTQ0ZHUl9JMlNNT0RfTXNrICAgICAgICAgICAgIC8qITxJMlMgbW9kZSBzZWxlY3Rpb24gKi8NCg0KLyoqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFNQSV9JMlNQUiByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgU1BJX0kyU1BSX0kyU0RJVl9Qb3MgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgU1BJX0kyU1BSX0kyU0RJVl9Nc2sgICAgICAgICAgICAgICAgKDB4RkZVIDw8IFNQSV9JMlNQUl9JMlNESVZfUG9zKSAgICAvKiE8IDB4MDAwMDAwRkYgKi8NCiNkZWZpbmUgU1BJX0kyU1BSX0kyU0RJViAgICAgICAgICAgICAgICAgICAgU1BJX0kyU1BSX0kyU0RJVl9Nc2sgICAgICAgICAgICAgICAvKiE8STJTIExpbmVhciBwcmVzY2FsZXIgKi8NCiNkZWZpbmUgU1BJX0kyU1BSX09ERF9Qb3MgICAgICAgICAgICAgICAgICAgKDhVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgU1BJX0kyU1BSX09ERF9Nc2sgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgU1BJX0kyU1BSX09ERF9Qb3MpICAgICAgICAvKiE8IDB4MDAwMDAxMDAgKi8NCiNkZWZpbmUgU1BJX0kyU1BSX09ERCAgICAgICAgICAgICAgICAgICAgICAgU1BJX0kyU1BSX09ERF9Nc2sgICAgICAgICAgICAgICAgICAvKiE8T2RkIGZhY3RvciBmb3IgdGhlIHByZXNjYWxlciAqLw0KI2RlZmluZSBTUElfSTJTUFJfTUNLT0VfUG9zICAgICAgICAgICAgICAgICAoOVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBTUElfSTJTUFJfTUNLT0VfTXNrICAgICAgICAgICAgICAgICAoMHgxVSA8PCBTUElfSTJTUFJfTUNLT0VfUG9zKSAgICAgIC8qITwgMHgwMDAwMDIwMCAqLw0KI2RlZmluZSBTUElfSTJTUFJfTUNLT0UgICAgICAgICAgICAgICAgICAgICBTUElfSTJTUFJfTUNLT0VfTXNrICAgICAgICAgICAgICAgIC8qITxNYXN0ZXIgQ2xvY2sgT3V0cHV0IEVuYWJsZSAqLw0KDQovKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLw0KLyogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8NCi8qICAgICAgICAgICAgICAgICAgICAgICBTeXN0ZW0gQ29uZmlndXJhdGlvbiAoU1lTQ0ZHKSAgICAgICAgICAgICAgICAgICAgICAgICovDQovKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLw0KLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8NCi8qKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFNZU0NGR19NRU1STVAgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKiovDQojZGVmaW5lIFNZU0NGR19NRU1STVBfTUVNX01PREVfUG9zICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFNZU0NGR19NRU1STVBfTUVNX01PREVfTXNrICAgICAgKDB4M1UgPDwgU1lTQ0ZHX01FTVJNUF9NRU1fTU9ERV9Qb3MpICAgLyohPCAweDAwMDAwMDAzICovDQojZGVmaW5lIFNZU0NGR19NRU1STVBfTUVNX01PREUgICAgICAgICAgU1lTQ0ZHX01FTVJNUF9NRU1fTU9ERV9Nc2sgICAgICAgICAgICAgLyohPCBTWVNDRkdfTWVtb3J5IFJlbWFwIENvbmZpZyAqLw0KI2RlZmluZSBTWVNDRkdfTUVNUk1QX01FTV9NT0RFXzAgICAgICAgICgweDFVIDw8IFNZU0NGR19NRU1STVBfTUVNX01PREVfUG9zKSAgIC8qITwgMHgwMDAwMDAwMSAqLw0KI2RlZmluZSBTWVNDRkdfTUVNUk1QX01FTV9NT0RFXzEgICAgICAgICgweDJVIDw8IFNZU0NGR19NRU1STVBfTUVNX01PREVfUG9zKSAgIC8qITwgMHgwMDAwMDAwMiAqLw0KI2RlZmluZSBTWVNDRkdfTUVNUk1QX0JPT1RfTU9ERV9Qb3MgICAgICg4VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBTWVNDRkdfTUVNUk1QX0JPT1RfTU9ERV9Nc2sgICAgICgweDNVIDw8IFNZU0NGR19NRU1STVBfQk9PVF9NT0RFX1BvcykgIC8qITwgMHgwMDAwMDMwMCAqLw0KI2RlZmluZSBTWVNDRkdfTUVNUk1QX0JPT1RfTU9ERSAgICAgICAgIFNZU0NGR19NRU1STVBfQk9PVF9NT0RFX01zayAgICAgICAgICAgIC8qITwgQm9vdCBtb2RlIENvbmZpZyAqLw0KI2RlZmluZSBTWVNDRkdfTUVNUk1QX0JPT1RfTU9ERV8wICAgICAgICgweDFVIDw8IFNZU0NGR19NRU1STVBfQk9PVF9NT0RFX1BvcykgIC8qITwgMHgwMDAwMDEwMCAqLw0KI2RlZmluZSBTWVNDRkdfTUVNUk1QX0JPT1RfTU9ERV8xICAgICAgICgweDJVIDw8IFNZU0NGR19NRU1STVBfQk9PVF9NT0RFX1BvcykgIC8qITwgMHgwMDAwMDIwMCAqLw0KDQovKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBTWVNDRkdfUE1DIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBTWVNDRkdfUE1DX1VTQl9QVV9Qb3MgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBTWVNDRkdfUE1DX1VTQl9QVV9Nc2sgICAgICAgICAgICgweDFVIDw8IFNZU0NGR19QTUNfVVNCX1BVX1BvcykgICAgICAgIC8qITwgMHgwMDAwMDAwMSAqLw0KI2RlZmluZSBTWVNDRkdfUE1DX1VTQl9QVSAgICAgICAgICAgICAgIFNZU0NGR19QTUNfVVNCX1BVX01zayAgICAgICAgICAgICAgICAgIC8qITwgU1lTQ0ZHIFBNQyAqLw0KI2RlZmluZSBTWVNDRkdfUE1DX0xDRF9DQVBBX1BvcyAgICAgICAgICgxVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBTWVNDRkdfUE1DX0xDRF9DQVBBX01zayAgICAgICAgICgweDFGVSA8PCBTWVNDRkdfUE1DX0xDRF9DQVBBX1BvcykgICAgIC8qITwgMHgwMDAwMDAzRSAqLw0KI2RlZmluZSBTWVNDRkdfUE1DX0xDRF9DQVBBICAgICAgICAgICAgIFNZU0NGR19QTUNfTENEX0NBUEFfTXNrICAgICAgICAgICAgICAgIC8qITwgTENEX0NBUEEgZGVjb3VwbGluZyBjYXBhY2l0YW5jZSBjb25uZWN0aW9uICovDQojZGVmaW5lIFNZU0NGR19QTUNfTENEX0NBUEFfMCAgICAgICAgICAgKDB4MDFVIDw8IFNZU0NGR19QTUNfTENEX0NBUEFfUG9zKSAgICAgLyohPCAweDAwMDAwMDAyICovDQojZGVmaW5lIFNZU0NGR19QTUNfTENEX0NBUEFfMSAgICAgICAgICAgKDB4MDJVIDw8IFNZU0NGR19QTUNfTENEX0NBUEFfUG9zKSAgICAgLyohPCAweDAwMDAwMDA0ICovDQojZGVmaW5lIFNZU0NGR19QTUNfTENEX0NBUEFfMiAgICAgICAgICAgKDB4MDRVIDw8IFNZU0NGR19QTUNfTENEX0NBUEFfUG9zKSAgICAgLyohPCAweDAwMDAwMDA4ICovDQojZGVmaW5lIFNZU0NGR19QTUNfTENEX0NBUEFfMyAgICAgICAgICAgKDB4MDhVIDw8IFNZU0NGR19QTUNfTENEX0NBUEFfUG9zKSAgICAgLyohPCAweDAwMDAwMDEwICovDQojZGVmaW5lIFNZU0NGR19QTUNfTENEX0NBUEFfNCAgICAgICAgICAgKDB4MTBVIDw8IFNZU0NGR19QTUNfTENEX0NBUEFfUG9zKSAgICAgLyohPCAweDAwMDAwMDIwICovDQoNCi8qKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFNZU0NGR19FWFRJQ1IxIHJlZ2lzdGVyICAqKioqKioqKioqKioqKiovDQojZGVmaW5lIFNZU0NGR19FWFRJQ1IxX0VYVEkwX1BvcyAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFNZU0NGR19FWFRJQ1IxX0VYVEkwX01zayAgICAgICAgKDB4RlUgPDwgU1lTQ0ZHX0VYVElDUjFfRVhUSTBfUG9zKSAgICAgLyohPCAweDAwMDAwMDBGICovDQojZGVmaW5lIFNZU0NGR19FWFRJQ1IxX0VYVEkwICAgICAgICAgICAgU1lTQ0ZHX0VYVElDUjFfRVhUSTBfTXNrICAgICAgICAgICAgICAgLyohPCBFWFRJIDAgY29uZmlndXJhdGlvbiAqLw0KI2RlZmluZSBTWVNDRkdfRVhUSUNSMV9FWFRJMV9Qb3MgICAgICAgICg0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBTWVNDRkdfRVhUSUNSMV9FWFRJMV9Nc2sgICAgICAgICgweEZVIDw8IFNZU0NGR19FWFRJQ1IxX0VYVEkxX1BvcykgICAgIC8qITwgMHgwMDAwMDBGMCAqLw0KI2RlZmluZSBTWVNDRkdfRVhUSUNSMV9FWFRJMSAgICAgICAgICAgIFNZU0NGR19FWFRJQ1IxX0VYVEkxX01zayAgICAgICAgICAgICAgIC8qITwgRVhUSSAxIGNvbmZpZ3VyYXRpb24gKi8NCiNkZWZpbmUgU1lTQ0ZHX0VYVElDUjFfRVhUSTJfUG9zICAgICAgICAoOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgU1lTQ0ZHX0VYVElDUjFfRVhUSTJfTXNrICAgICAgICAoMHhGVSA8PCBTWVNDRkdfRVhUSUNSMV9FWFRJMl9Qb3MpICAgICAvKiE8IDB4MDAwMDBGMDAgKi8NCiNkZWZpbmUgU1lTQ0ZHX0VYVElDUjFfRVhUSTIgICAgICAgICAgICBTWVNDRkdfRVhUSUNSMV9FWFRJMl9Nc2sgICAgICAgICAgICAgICAvKiE8IEVYVEkgMiBjb25maWd1cmF0aW9uICovDQojZGVmaW5lIFNZU0NGR19FWFRJQ1IxX0VYVEkzX1BvcyAgICAgICAgKDEyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFNZU0NGR19FWFRJQ1IxX0VYVEkzX01zayAgICAgICAgKDB4RlUgPDwgU1lTQ0ZHX0VYVElDUjFfRVhUSTNfUG9zKSAgICAgLyohPCAweDAwMDBGMDAwICovDQojZGVmaW5lIFNZU0NGR19FWFRJQ1IxX0VYVEkzICAgICAgICAgICAgU1lTQ0ZHX0VYVElDUjFfRVhUSTNfTXNrICAgICAgICAgICAgICAgLyohPCBFWFRJIDMgY29uZmlndXJhdGlvbiAqLw0KDQovKiogDQogICogQGJyaWVmICBFWFRJMCBjb25maWd1cmF0aW9uICANCiAgKi8gDQojZGVmaW5lIFNZU0NGR19FWFRJQ1IxX0VYVEkwX1BBICAgICAgICAgKDB4MDAwMDAwMDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBQQVswXSBwaW4gKi8NCiNkZWZpbmUgU1lTQ0ZHX0VYVElDUjFfRVhUSTBfUEIgICAgICAgICAoMHgwMDAwMDAwMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBCWzBdIHBpbiAqLw0KI2RlZmluZSBTWVNDRkdfRVhUSUNSMV9FWFRJMF9QQyAgICAgICAgICgweDAwMDAwMDAyVSkgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgUENbMF0gcGluICovDQojZGVmaW5lIFNZU0NGR19FWFRJQ1IxX0VYVEkwX1BEICAgICAgICAgKDB4MDAwMDAwMDNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBQRFswXSBwaW4gKi8NCiNkZWZpbmUgU1lTQ0ZHX0VYVElDUjFfRVhUSTBfUEUgICAgICAgICAoMHgwMDAwMDAwNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBFWzBdIHBpbiAqLw0KI2RlZmluZSBTWVNDRkdfRVhUSUNSMV9FWFRJMF9QSCAgICAgICAgICgweDAwMDAwMDA1VSkgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgUEhbMF0gcGluICovDQojZGVmaW5lIFNZU0NGR19FWFRJQ1IxX0VYVEkwX1BGICAgICAgICAgKDB4MDAwMDAwMDZVKSAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBQRlswXSBwaW4gKi8NCiNkZWZpbmUgU1lTQ0ZHX0VYVElDUjFfRVhUSTBfUEcgICAgICAgICAoMHgwMDAwMDAwN1UpICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBHWzBdIHBpbiAqLw0KDQovKiogDQogICogQGJyaWVmICBFWFRJMSBjb25maWd1cmF0aW9uICANCiAgKi8gDQojZGVmaW5lIFNZU0NGR19FWFRJQ1IxX0VYVEkxX1BBICAgICAgICAgKDB4MDAwMDAwMDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBQQVsxXSBwaW4gKi8NCiNkZWZpbmUgU1lTQ0ZHX0VYVElDUjFfRVhUSTFfUEIgICAgICAgICAoMHgwMDAwMDAxMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBCWzFdIHBpbiAqLw0KI2RlZmluZSBTWVNDRkdfRVhUSUNSMV9FWFRJMV9QQyAgICAgICAgICgweDAwMDAwMDIwVSkgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgUENbMV0gcGluICovDQojZGVmaW5lIFNZU0NGR19FWFRJQ1IxX0VYVEkxX1BEICAgICAgICAgKDB4MDAwMDAwMzBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBQRFsxXSBwaW4gKi8NCiNkZWZpbmUgU1lTQ0ZHX0VYVElDUjFfRVhUSTFfUEUgICAgICAgICAoMHgwMDAwMDA0MFUpICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBFWzFdIHBpbiAqLw0KI2RlZmluZSBTWVNDRkdfRVhUSUNSMV9FWFRJMV9QSCAgICAgICAgICgweDAwMDAwMDUwVSkgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgUEhbMV0gcGluICovDQojZGVmaW5lIFNZU0NGR19FWFRJQ1IxX0VYVEkxX1BGICAgICAgICAgKDB4MDAwMDAwNjBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBQRlsxXSBwaW4gKi8NCiNkZWZpbmUgU1lTQ0ZHX0VYVElDUjFfRVhUSTFfUEcgICAgICAgICAoMHgwMDAwMDA3MFUpICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBHWzFdIHBpbiAqLw0KDQovKiogDQogICogQGJyaWVmICBFWFRJMiBjb25maWd1cmF0aW9uICANCiAgKi8gDQojZGVmaW5lIFNZU0NGR19FWFRJQ1IxX0VYVEkyX1BBICAgICAgICAgKDB4MDAwMDAwMDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBQQVsyXSBwaW4gKi8NCiNkZWZpbmUgU1lTQ0ZHX0VYVElDUjFfRVhUSTJfUEIgICAgICAgICAoMHgwMDAwMDEwMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBCWzJdIHBpbiAqLw0KI2RlZmluZSBTWVNDRkdfRVhUSUNSMV9FWFRJMl9QQyAgICAgICAgICgweDAwMDAwMjAwVSkgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgUENbMl0gcGluICovDQojZGVmaW5lIFNZU0NGR19FWFRJQ1IxX0VYVEkyX1BEICAgICAgICAgKDB4MDAwMDAzMDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBQRFsyXSBwaW4gKi8NCiNkZWZpbmUgU1lTQ0ZHX0VYVElDUjFfRVhUSTJfUEUgICAgICAgICAoMHgwMDAwMDQwMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBFWzJdIHBpbiAqLw0KI2RlZmluZSBTWVNDRkdfRVhUSUNSMV9FWFRJMl9QSCAgICAgICAgICgweDAwMDAwNTAwVSkgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgUEhbMl0gcGluICovDQojZGVmaW5lIFNZU0NGR19FWFRJQ1IxX0VYVEkyX1BGICAgICAgICAgKDB4MDAwMDA2MDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBQRlsyXSBwaW4gKi8NCiNkZWZpbmUgU1lTQ0ZHX0VYVElDUjFfRVhUSTJfUEcgICAgICAgICAoMHgwMDAwMDcwMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBHWzJdIHBpbiAqLw0KDQovKiogDQogICogQGJyaWVmICBFWFRJMyBjb25maWd1cmF0aW9uICANCiAgKi8gDQojZGVmaW5lIFNZU0NGR19FWFRJQ1IxX0VYVEkzX1BBICAgICAgICAgKDB4MDAwMDAwMDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBQQVszXSBwaW4gKi8NCiNkZWZpbmUgU1lTQ0ZHX0VYVElDUjFfRVhUSTNfUEIgICAgICAgICAoMHgwMDAwMTAwMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBCWzNdIHBpbiAqLw0KI2RlZmluZSBTWVNDRkdfRVhUSUNSMV9FWFRJM19QQyAgICAgICAgICgweDAwMDAyMDAwVSkgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgUENbM10gcGluICovDQojZGVmaW5lIFNZU0NGR19FWFRJQ1IxX0VYVEkzX1BEICAgICAgICAgKDB4MDAwMDMwMDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBQRFszXSBwaW4gKi8NCiNkZWZpbmUgU1lTQ0ZHX0VYVElDUjFfRVhUSTNfUEUgICAgICAgICAoMHgwMDAwNDAwMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBFWzNdIHBpbiAqLw0KI2RlZmluZSBTWVNDRkdfRVhUSUNSMV9FWFRJM19QRiAgICAgICAgICgweDAwMDAzMDAwVSkgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgUEZbM10gcGluICovDQojZGVmaW5lIFNZU0NGR19FWFRJQ1IxX0VYVEkzX1BHICAgICAgICAgKDB4MDAwMDQwMDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBQR1szXSBwaW4gKi8NCg0KLyoqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgU1lTQ0ZHX0VYVElDUjIgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBTWVNDRkdfRVhUSUNSMl9FWFRJNF9Qb3MgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBTWVNDRkdfRVhUSUNSMl9FWFRJNF9Nc2sgICAgICAgICgweEZVIDw8IFNZU0NGR19FWFRJQ1IyX0VYVEk0X1BvcykgICAgIC8qITwgMHgwMDAwMDAwRiAqLw0KI2RlZmluZSBTWVNDRkdfRVhUSUNSMl9FWFRJNCAgICAgICAgICAgIFNZU0NGR19FWFRJQ1IyX0VYVEk0X01zayAgICAgICAgICAgICAgIC8qITwgRVhUSSA0IGNvbmZpZ3VyYXRpb24gKi8NCiNkZWZpbmUgU1lTQ0ZHX0VYVElDUjJfRVhUSTVfUG9zICAgICAgICAoNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgU1lTQ0ZHX0VYVElDUjJfRVhUSTVfTXNrICAgICAgICAoMHhGVSA8PCBTWVNDRkdfRVhUSUNSMl9FWFRJNV9Qb3MpICAgICAvKiE8IDB4MDAwMDAwRjAgKi8NCiNkZWZpbmUgU1lTQ0ZHX0VYVElDUjJfRVhUSTUgICAgICAgICAgICBTWVNDRkdfRVhUSUNSMl9FWFRJNV9Nc2sgICAgICAgICAgICAgICAvKiE8IEVYVEkgNSBjb25maWd1cmF0aW9uICovDQojZGVmaW5lIFNZU0NGR19FWFRJQ1IyX0VYVEk2X1BvcyAgICAgICAgKDhVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFNZU0NGR19FWFRJQ1IyX0VYVEk2X01zayAgICAgICAgKDB4RlUgPDwgU1lTQ0ZHX0VYVElDUjJfRVhUSTZfUG9zKSAgICAgLyohPCAweDAwMDAwRjAwICovDQojZGVmaW5lIFNZU0NGR19FWFRJQ1IyX0VYVEk2ICAgICAgICAgICAgU1lTQ0ZHX0VYVElDUjJfRVhUSTZfTXNrICAgICAgICAgICAgICAgLyohPCBFWFRJIDYgY29uZmlndXJhdGlvbiAqLw0KI2RlZmluZSBTWVNDRkdfRVhUSUNSMl9FWFRJN19Qb3MgICAgICAgICgxMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBTWVNDRkdfRVhUSUNSMl9FWFRJN19Nc2sgICAgICAgICgweEZVIDw8IFNZU0NGR19FWFRJQ1IyX0VYVEk3X1BvcykgICAgIC8qITwgMHgwMDAwRjAwMCAqLw0KI2RlZmluZSBTWVNDRkdfRVhUSUNSMl9FWFRJNyAgICAgICAgICAgIFNZU0NGR19FWFRJQ1IyX0VYVEk3X01zayAgICAgICAgICAgICAgIC8qITwgRVhUSSA3IGNvbmZpZ3VyYXRpb24gKi8NCg0KLyoqIA0KICAqIEBicmllZiAgRVhUSTQgY29uZmlndXJhdGlvbiAgDQogICovIA0KI2RlZmluZSBTWVNDRkdfRVhUSUNSMl9FWFRJNF9QQSAgICAgICAgICgweDAwMDAwMDAwVSkgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgUEFbNF0gcGluICovDQojZGVmaW5lIFNZU0NGR19FWFRJQ1IyX0VYVEk0X1BCICAgICAgICAgKDB4MDAwMDAwMDFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBQQls0XSBwaW4gKi8NCiNkZWZpbmUgU1lTQ0ZHX0VYVElDUjJfRVhUSTRfUEMgICAgICAgICAoMHgwMDAwMDAwMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBDWzRdIHBpbiAqLw0KI2RlZmluZSBTWVNDRkdfRVhUSUNSMl9FWFRJNF9QRCAgICAgICAgICgweDAwMDAwMDAzVSkgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgUERbNF0gcGluICovDQojZGVmaW5lIFNZU0NGR19FWFRJQ1IyX0VYVEk0X1BFICAgICAgICAgKDB4MDAwMDAwMDRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBQRVs0XSBwaW4gKi8NCiNkZWZpbmUgU1lTQ0ZHX0VYVElDUjJfRVhUSTRfUEYgICAgICAgICAoMHgwMDAwMDAwNlUpICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBGWzRdIHBpbiAqLw0KI2RlZmluZSBTWVNDRkdfRVhUSUNSMl9FWFRJNF9QRyAgICAgICAgICgweDAwMDAwMDA3VSkgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgUEdbNF0gcGluICovDQoNCi8qKiANCiAgKiBAYnJpZWYgIEVYVEk1IGNvbmZpZ3VyYXRpb24gIA0KICAqLyANCiNkZWZpbmUgU1lTQ0ZHX0VYVElDUjJfRVhUSTVfUEEgICAgICAgICAoMHgwMDAwMDAwMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBBWzVdIHBpbiAqLw0KI2RlZmluZSBTWVNDRkdfRVhUSUNSMl9FWFRJNV9QQiAgICAgICAgICgweDAwMDAwMDEwVSkgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgUEJbNV0gcGluICovDQojZGVmaW5lIFNZU0NGR19FWFRJQ1IyX0VYVEk1X1BDICAgICAgICAgKDB4MDAwMDAwMjBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBQQ1s1XSBwaW4gKi8NCiNkZWZpbmUgU1lTQ0ZHX0VYVElDUjJfRVhUSTVfUEQgICAgICAgICAoMHgwMDAwMDAzMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBEWzVdIHBpbiAqLw0KI2RlZmluZSBTWVNDRkdfRVhUSUNSMl9FWFRJNV9QRSAgICAgICAgICgweDAwMDAwMDQwVSkgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgUEVbNV0gcGluICovDQojZGVmaW5lIFNZU0NGR19FWFRJQ1IyX0VYVEk1X1BGICAgICAgICAgKDB4MDAwMDAwNjBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBQRls1XSBwaW4gKi8NCiNkZWZpbmUgU1lTQ0ZHX0VYVElDUjJfRVhUSTVfUEcgICAgICAgICAoMHgwMDAwMDA3MFUpICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBHWzVdIHBpbiAqLw0KDQovKiogDQogICogQGJyaWVmICBFWFRJNiBjb25maWd1cmF0aW9uICANCiAgKi8gDQojZGVmaW5lIFNZU0NGR19FWFRJQ1IyX0VYVEk2X1BBICAgICAgICAgKDB4MDAwMDAwMDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBQQVs2XSBwaW4gKi8NCiNkZWZpbmUgU1lTQ0ZHX0VYVElDUjJfRVhUSTZfUEIgICAgICAgICAoMHgwMDAwMDEwMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBCWzZdIHBpbiAqLw0KI2RlZmluZSBTWVNDRkdfRVhUSUNSMl9FWFRJNl9QQyAgICAgICAgICgweDAwMDAwMjAwVSkgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgUENbNl0gcGluICovDQojZGVmaW5lIFNZU0NGR19FWFRJQ1IyX0VYVEk2X1BEICAgICAgICAgKDB4MDAwMDAzMDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBQRFs2XSBwaW4gKi8NCiNkZWZpbmUgU1lTQ0ZHX0VYVElDUjJfRVhUSTZfUEUgICAgICAgICAoMHgwMDAwMDQwMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBFWzZdIHBpbiAqLw0KI2RlZmluZSBTWVNDRkdfRVhUSUNSMl9FWFRJNl9QRiAgICAgICAgICgweDAwMDAwNjAwVSkgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgUEZbNl0gcGluICovDQojZGVmaW5lIFNZU0NGR19FWFRJQ1IyX0VYVEk2X1BHICAgICAgICAgKDB4MDAwMDA3MDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBQR1s2XSBwaW4gKi8NCg0KLyoqIA0KICAqIEBicmllZiAgRVhUSTcgY29uZmlndXJhdGlvbiAgDQogICovIA0KI2RlZmluZSBTWVNDRkdfRVhUSUNSMl9FWFRJN19QQSAgICAgICAgICgweDAwMDAwMDAwVSkgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgUEFbN10gcGluICovDQojZGVmaW5lIFNZU0NGR19FWFRJQ1IyX0VYVEk3X1BCICAgICAgICAgKDB4MDAwMDEwMDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBQQls3XSBwaW4gKi8NCiNkZWZpbmUgU1lTQ0ZHX0VYVElDUjJfRVhUSTdfUEMgICAgICAgICAoMHgwMDAwMjAwMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBDWzddIHBpbiAqLw0KI2RlZmluZSBTWVNDRkdfRVhUSUNSMl9FWFRJN19QRCAgICAgICAgICgweDAwMDAzMDAwVSkgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgUERbN10gcGluICovDQojZGVmaW5lIFNZU0NGR19FWFRJQ1IyX0VYVEk3X1BFICAgICAgICAgKDB4MDAwMDQwMDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBQRVs3XSBwaW4gKi8NCiNkZWZpbmUgU1lTQ0ZHX0VYVElDUjJfRVhUSTdfUEYgICAgICAgICAoMHgwMDAwNjAwMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBGWzddIHBpbiAqLw0KI2RlZmluZSBTWVNDRkdfRVhUSUNSMl9FWFRJN19QRyAgICAgICAgICgweDAwMDA3MDAwVSkgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgUEdbN10gcGluICovDQoNCi8qKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFNZU0NGR19FWFRJQ1IzIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgU1lTQ0ZHX0VYVElDUjNfRVhUSThfUG9zICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgU1lTQ0ZHX0VYVElDUjNfRVhUSThfTXNrICAgICAgICAoMHhGVSA8PCBTWVNDRkdfRVhUSUNSM19FWFRJOF9Qb3MpICAgICAvKiE8IDB4MDAwMDAwMEYgKi8NCiNkZWZpbmUgU1lTQ0ZHX0VYVElDUjNfRVhUSTggICAgICAgICAgICBTWVNDRkdfRVhUSUNSM19FWFRJOF9Nc2sgICAgICAgICAgICAgICAvKiE8IEVYVEkgOCBjb25maWd1cmF0aW9uICovDQojZGVmaW5lIFNZU0NGR19FWFRJQ1IzX0VYVEk5X1BvcyAgICAgICAgKDRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFNZU0NGR19FWFRJQ1IzX0VYVEk5X01zayAgICAgICAgKDB4RlUgPDwgU1lTQ0ZHX0VYVElDUjNfRVhUSTlfUG9zKSAgICAgLyohPCAweDAwMDAwMEYwICovDQojZGVmaW5lIFNZU0NGR19FWFRJQ1IzX0VYVEk5ICAgICAgICAgICAgU1lTQ0ZHX0VYVElDUjNfRVhUSTlfTXNrICAgICAgICAgICAgICAgLyohPCBFWFRJIDkgY29uZmlndXJhdGlvbiAqLw0KI2RlZmluZSBTWVNDRkdfRVhUSUNSM19FWFRJMTBfUG9zICAgICAgICg4VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBTWVNDRkdfRVhUSUNSM19FWFRJMTBfTXNrICAgICAgICgweEZVIDw8IFNZU0NGR19FWFRJQ1IzX0VYVEkxMF9Qb3MpICAgIC8qITwgMHgwMDAwMEYwMCAqLw0KI2RlZmluZSBTWVNDRkdfRVhUSUNSM19FWFRJMTAgICAgICAgICAgIFNZU0NGR19FWFRJQ1IzX0VYVEkxMF9Nc2sgICAgICAgICAgICAgIC8qITwgRVhUSSAxMCBjb25maWd1cmF0aW9uICovDQojZGVmaW5lIFNZU0NGR19FWFRJQ1IzX0VYVEkxMV9Qb3MgICAgICAgKDEyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFNZU0NGR19FWFRJQ1IzX0VYVEkxMV9Nc2sgICAgICAgKDB4RlUgPDwgU1lTQ0ZHX0VYVElDUjNfRVhUSTExX1BvcykgICAgLyohPCAweDAwMDBGMDAwICovDQojZGVmaW5lIFNZU0NGR19FWFRJQ1IzX0VYVEkxMSAgICAgICAgICAgU1lTQ0ZHX0VYVElDUjNfRVhUSTExX01zayAgICAgICAgICAgICAgLyohPCBFWFRJIDExIGNvbmZpZ3VyYXRpb24gKi8NCg0KLyoqIA0KICAqIEBicmllZiAgRVhUSTggY29uZmlndXJhdGlvbiAgDQogICovIA0KI2RlZmluZSBTWVNDRkdfRVhUSUNSM19FWFRJOF9QQSAgICAgICAgICgweDAwMDAwMDAwVSkgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgUEFbOF0gcGluICovDQojZGVmaW5lIFNZU0NGR19FWFRJQ1IzX0VYVEk4X1BCICAgICAgICAgKDB4MDAwMDAwMDFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBQQls4XSBwaW4gKi8NCiNkZWZpbmUgU1lTQ0ZHX0VYVElDUjNfRVhUSThfUEMgICAgICAgICAoMHgwMDAwMDAwMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBDWzhdIHBpbiAqLw0KI2RlZmluZSBTWVNDRkdfRVhUSUNSM19FWFRJOF9QRCAgICAgICAgICgweDAwMDAwMDAzVSkgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgUERbOF0gcGluICovDQojZGVmaW5lIFNZU0NGR19FWFRJQ1IzX0VYVEk4X1BFICAgICAgICAgKDB4MDAwMDAwMDRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBQRVs4XSBwaW4gKi8NCiNkZWZpbmUgU1lTQ0ZHX0VYVElDUjNfRVhUSThfUEYgICAgICAgICAoMHgwMDAwMDAwNlUpICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBGWzhdIHBpbiAqLw0KI2RlZmluZSBTWVNDRkdfRVhUSUNSM19FWFRJOF9QRyAgICAgICAgICgweDAwMDAwMDA3VSkgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgUEdbOF0gcGluICovDQoNCi8qKiANCiAgKiBAYnJpZWYgIEVYVEk5IGNvbmZpZ3VyYXRpb24gIA0KICAqLyANCiNkZWZpbmUgU1lTQ0ZHX0VYVElDUjNfRVhUSTlfUEEgICAgICAgICAoMHgwMDAwMDAwMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBBWzldIHBpbiAqLw0KI2RlZmluZSBTWVNDRkdfRVhUSUNSM19FWFRJOV9QQiAgICAgICAgICgweDAwMDAwMDEwVSkgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgUEJbOV0gcGluICovDQojZGVmaW5lIFNZU0NGR19FWFRJQ1IzX0VYVEk5X1BDICAgICAgICAgKDB4MDAwMDAwMjBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBQQ1s5XSBwaW4gKi8NCiNkZWZpbmUgU1lTQ0ZHX0VYVElDUjNfRVhUSTlfUEQgICAgICAgICAoMHgwMDAwMDAzMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBEWzldIHBpbiAqLw0KI2RlZmluZSBTWVNDRkdfRVhUSUNSM19FWFRJOV9QRSAgICAgICAgICgweDAwMDAwMDQwVSkgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgUEVbOV0gcGluICovDQojZGVmaW5lIFNZU0NGR19FWFRJQ1IzX0VYVEk5X1BGICAgICAgICAgKDB4MDAwMDAwNjBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBQRls5XSBwaW4gKi8NCiNkZWZpbmUgU1lTQ0ZHX0VYVElDUjNfRVhUSTlfUEcgICAgICAgICAoMHgwMDAwMDA3MFUpICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBHWzldIHBpbiAqLw0KDQovKiogDQogICogQGJyaWVmICBFWFRJMTAgY29uZmlndXJhdGlvbiAgDQogICovIA0KI2RlZmluZSBTWVNDRkdfRVhUSUNSM19FWFRJMTBfUEEgICAgICAgICgweDAwMDAwMDAwVSkgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgUEFbMTBdIHBpbiAqLw0KI2RlZmluZSBTWVNDRkdfRVhUSUNSM19FWFRJMTBfUEIgICAgICAgICgweDAwMDAwMTAwVSkgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgUEJbMTBdIHBpbiAqLw0KI2RlZmluZSBTWVNDRkdfRVhUSUNSM19FWFRJMTBfUEMgICAgICAgICgweDAwMDAwMjAwVSkgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgUENbMTBdIHBpbiAqLw0KI2RlZmluZSBTWVNDRkdfRVhUSUNSM19FWFRJMTBfUEQgICAgICAgICgweDAwMDAwMzAwVSkgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgUERbMTBdIHBpbiAqLw0KI2RlZmluZSBTWVNDRkdfRVhUSUNSM19FWFRJMTBfUEUgICAgICAgICgweDAwMDAwNDAwVSkgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgUEVbMTBdIHBpbiAqLw0KI2RlZmluZSBTWVNDRkdfRVhUSUNSM19FWFRJMTBfUEYgICAgICAgICgweDAwMDAwNjAwVSkgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgUEZbMTBdIHBpbiAqLw0KI2RlZmluZSBTWVNDRkdfRVhUSUNSM19FWFRJMTBfUEcgICAgICAgICgweDAwMDAwNzAwVSkgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgUEdbMTBdIHBpbiAqLw0KDQovKiogDQogICogQGJyaWVmICBFWFRJMTEgY29uZmlndXJhdGlvbiAgDQogICovIA0KI2RlZmluZSBTWVNDRkdfRVhUSUNSM19FWFRJMTFfUEEgICAgICAgICgweDAwMDAwMDAwVSkgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgUEFbMTFdIHBpbiAqLw0KI2RlZmluZSBTWVNDRkdfRVhUSUNSM19FWFRJMTFfUEIgICAgICAgICgweDAwMDAxMDAwVSkgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgUEJbMTFdIHBpbiAqLw0KI2RlZmluZSBTWVNDRkdfRVhUSUNSM19FWFRJMTFfUEMgICAgICAgICgweDAwMDAyMDAwVSkgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgUENbMTFdIHBpbiAqLw0KI2RlZmluZSBTWVNDRkdfRVhUSUNSM19FWFRJMTFfUEQgICAgICAgICgweDAwMDAzMDAwVSkgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgUERbMTFdIHBpbiAqLw0KI2RlZmluZSBTWVNDRkdfRVhUSUNSM19FWFRJMTFfUEUgICAgICAgICgweDAwMDA0MDAwVSkgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgUEVbMTFdIHBpbiAqLw0KI2RlZmluZSBTWVNDRkdfRVhUSUNSM19FWFRJMTFfUEYgICAgICAgICgweDAwMDA2MDAwVSkgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgUEZbMTFdIHBpbiAqLw0KI2RlZmluZSBTWVNDRkdfRVhUSUNSM19FWFRJMTFfUEcgICAgICAgICgweDAwMDA3MDAwVSkgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgUEdbMTFdIHBpbiAqLw0KDQovKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBTWVNDRkdfRVhUSUNSNCByZWdpc3RlciAgKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIFNZU0NGR19FWFRJQ1I0X0VYVEkxMl9Qb3MgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFNZU0NGR19FWFRJQ1I0X0VYVEkxMl9Nc2sgICAgICAgKDB4RlUgPDwgU1lTQ0ZHX0VYVElDUjRfRVhUSTEyX1BvcykgICAgLyohPCAweDAwMDAwMDBGICovDQojZGVmaW5lIFNZU0NGR19FWFRJQ1I0X0VYVEkxMiAgICAgICAgICAgU1lTQ0ZHX0VYVElDUjRfRVhUSTEyX01zayAgICAgICAgICAgICAgLyohPCBFWFRJIDEyIGNvbmZpZ3VyYXRpb24gKi8NCiNkZWZpbmUgU1lTQ0ZHX0VYVElDUjRfRVhUSTEzX1BvcyAgICAgICAoNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgU1lTQ0ZHX0VYVElDUjRfRVhUSTEzX01zayAgICAgICAoMHhGVSA8PCBTWVNDRkdfRVhUSUNSNF9FWFRJMTNfUG9zKSAgICAvKiE8IDB4MDAwMDAwRjAgKi8NCiNkZWZpbmUgU1lTQ0ZHX0VYVElDUjRfRVhUSTEzICAgICAgICAgICBTWVNDRkdfRVhUSUNSNF9FWFRJMTNfTXNrICAgICAgICAgICAgICAvKiE8IEVYVEkgMTMgY29uZmlndXJhdGlvbiAqLw0KI2RlZmluZSBTWVNDRkdfRVhUSUNSNF9FWFRJMTRfUG9zICAgICAgICg4VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBTWVNDRkdfRVhUSUNSNF9FWFRJMTRfTXNrICAgICAgICgweEZVIDw8IFNZU0NGR19FWFRJQ1I0X0VYVEkxNF9Qb3MpICAgIC8qITwgMHgwMDAwMEYwMCAqLw0KI2RlZmluZSBTWVNDRkdfRVhUSUNSNF9FWFRJMTQgICAgICAgICAgIFNZU0NGR19FWFRJQ1I0X0VYVEkxNF9Nc2sgICAgICAgICAgICAgIC8qITwgRVhUSSAxNCBjb25maWd1cmF0aW9uICovDQojZGVmaW5lIFNZU0NGR19FWFRJQ1I0X0VYVEkxNV9Qb3MgICAgICAgKDEyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFNZU0NGR19FWFRJQ1I0X0VYVEkxNV9Nc2sgICAgICAgKDB4RlUgPDwgU1lTQ0ZHX0VYVElDUjRfRVhUSTE1X1BvcykgICAgLyohPCAweDAwMDBGMDAwICovDQojZGVmaW5lIFNZU0NGR19FWFRJQ1I0X0VYVEkxNSAgICAgICAgICAgU1lTQ0ZHX0VYVElDUjRfRVhUSTE1X01zayAgICAgICAgICAgICAgLyohPCBFWFRJIDE1IGNvbmZpZ3VyYXRpb24gKi8NCg0KLyoqIA0KICAqIEBicmllZiAgRVhUSTEyIGNvbmZpZ3VyYXRpb24gIA0KICAqLyANCiNkZWZpbmUgU1lTQ0ZHX0VYVElDUjRfRVhUSTEyX1BBICAgICAgICAoMHgwMDAwMDAwMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBBWzEyXSBwaW4gKi8NCiNkZWZpbmUgU1lTQ0ZHX0VYVElDUjRfRVhUSTEyX1BCICAgICAgICAoMHgwMDAwMDAwMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBCWzEyXSBwaW4gKi8NCiNkZWZpbmUgU1lTQ0ZHX0VYVElDUjRfRVhUSTEyX1BDICAgICAgICAoMHgwMDAwMDAwMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBDWzEyXSBwaW4gKi8NCiNkZWZpbmUgU1lTQ0ZHX0VYVElDUjRfRVhUSTEyX1BEICAgICAgICAoMHgwMDAwMDAwM1UpICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBEWzEyXSBwaW4gKi8NCiNkZWZpbmUgU1lTQ0ZHX0VYVElDUjRfRVhUSTEyX1BFICAgICAgICAoMHgwMDAwMDAwNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBFWzEyXSBwaW4gKi8NCiNkZWZpbmUgU1lTQ0ZHX0VYVElDUjRfRVhUSTEyX1BGICAgICAgICAoMHgwMDAwMDAwNlUpICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBGWzEyXSBwaW4gKi8NCiNkZWZpbmUgU1lTQ0ZHX0VYVElDUjRfRVhUSTEyX1BHICAgICAgICAoMHgwMDAwMDAwN1UpICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBHWzEyXSBwaW4gKi8NCg0KLyoqIA0KICAqIEBicmllZiAgRVhUSTEzIGNvbmZpZ3VyYXRpb24gIA0KICAqLyANCiNkZWZpbmUgU1lTQ0ZHX0VYVElDUjRfRVhUSTEzX1BBICAgICAgICAoMHgwMDAwMDAwMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBBWzEzXSBwaW4gKi8NCiNkZWZpbmUgU1lTQ0ZHX0VYVElDUjRfRVhUSTEzX1BCICAgICAgICAoMHgwMDAwMDAxMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBCWzEzXSBwaW4gKi8NCiNkZWZpbmUgU1lTQ0ZHX0VYVElDUjRfRVhUSTEzX1BDICAgICAgICAoMHgwMDAwMDAyMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBDWzEzXSBwaW4gKi8NCiNkZWZpbmUgU1lTQ0ZHX0VYVElDUjRfRVhUSTEzX1BEICAgICAgICAoMHgwMDAwMDAzMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBEWzEzXSBwaW4gKi8NCiNkZWZpbmUgU1lTQ0ZHX0VYVElDUjRfRVhUSTEzX1BFICAgICAgICAoMHgwMDAwMDA0MFUpICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBFWzEzXSBwaW4gKi8NCiNkZWZpbmUgU1lTQ0ZHX0VYVElDUjRfRVhUSTEzX1BGICAgICAgICAoMHgwMDAwMDA2MFUpICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBGWzEzXSBwaW4gKi8NCiNkZWZpbmUgU1lTQ0ZHX0VYVElDUjRfRVhUSTEzX1BHICAgICAgICAoMHgwMDAwMDA3MFUpICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBHWzEzXSBwaW4gKi8NCg0KLyoqIA0KICAqIEBicmllZiAgRVhUSTE0IGNvbmZpZ3VyYXRpb24gIA0KICAqLyANCiNkZWZpbmUgU1lTQ0ZHX0VYVElDUjRfRVhUSTE0X1BBICAgICAgICAoMHgwMDAwMDAwMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBBWzE0XSBwaW4gKi8NCiNkZWZpbmUgU1lTQ0ZHX0VYVElDUjRfRVhUSTE0X1BCICAgICAgICAoMHgwMDAwMDEwMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBCWzE0XSBwaW4gKi8NCiNkZWZpbmUgU1lTQ0ZHX0VYVElDUjRfRVhUSTE0X1BDICAgICAgICAoMHgwMDAwMDIwMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBDWzE0XSBwaW4gKi8NCiNkZWZpbmUgU1lTQ0ZHX0VYVElDUjRfRVhUSTE0X1BEICAgICAgICAoMHgwMDAwMDMwMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBEWzE0XSBwaW4gKi8NCiNkZWZpbmUgU1lTQ0ZHX0VYVElDUjRfRVhUSTE0X1BFICAgICAgICAoMHgwMDAwMDQwMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBFWzE0XSBwaW4gKi8NCiNkZWZpbmUgU1lTQ0ZHX0VYVElDUjRfRVhUSTE0X1BGICAgICAgICAoMHgwMDAwMDYwMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBGWzE0XSBwaW4gKi8NCiNkZWZpbmUgU1lTQ0ZHX0VYVElDUjRfRVhUSTE0X1BHICAgICAgICAoMHgwMDAwMDcwMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBHWzE0XSBwaW4gKi8NCg0KLyoqIA0KICAqIEBicmllZiAgRVhUSTE1IGNvbmZpZ3VyYXRpb24gIA0KICAqLyANCiNkZWZpbmUgU1lTQ0ZHX0VYVElDUjRfRVhUSTE1X1BBICAgICAgICAoMHgwMDAwMDAwMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBBWzE1XSBwaW4gKi8NCiNkZWZpbmUgU1lTQ0ZHX0VYVElDUjRfRVhUSTE1X1BCICAgICAgICAoMHgwMDAwMTAwMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBCWzE1XSBwaW4gKi8NCiNkZWZpbmUgU1lTQ0ZHX0VYVElDUjRfRVhUSTE1X1BDICAgICAgICAoMHgwMDAwMjAwMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBDWzE1XSBwaW4gKi8NCiNkZWZpbmUgU1lTQ0ZHX0VYVElDUjRfRVhUSTE1X1BEICAgICAgICAoMHgwMDAwMzAwMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBEWzE1XSBwaW4gKi8NCiNkZWZpbmUgU1lTQ0ZHX0VYVElDUjRfRVhUSTE1X1BFICAgICAgICAoMHgwMDAwNDAwMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBFWzE1XSBwaW4gKi8NCiNkZWZpbmUgU1lTQ0ZHX0VYVElDUjRfRVhUSTE1X1BGICAgICAgICAoMHgwMDAwNjAwMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBGWzE1XSBwaW4gKi8NCiNkZWZpbmUgU1lTQ0ZHX0VYVElDUjRfRVhUSTE1X1BHICAgICAgICAoMHgwMDAwNzAwMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBHWzE1XSBwaW4gKi8NCiANCi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovDQovKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLw0KLyogICAgICAgICAgICAgICAgICAgICAgIFJvdXRpbmcgSW50ZXJmYWNlIChSSSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8NCi8qICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovDQovKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLw0KDQovKioqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBSSV9JQ1IgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBSSV9JQ1JfSUMxT1NfUG9zICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSSV9JQ1JfSUMxT1NfTXNrICAgICAgICAgICAgICAgICgweEZVIDw8IFJJX0lDUl9JQzFPU19Qb3MpICAgICAgICAgICAgIC8qITwgMHgwMDAwMDAwRiAqLw0KI2RlZmluZSBSSV9JQ1JfSUMxT1MgICAgICAgICAgICAgICAgICAgIFJJX0lDUl9JQzFPU19Nc2sgICAgICAgICAgICAgICAgICAgICAgIC8qITwgSUMxT1NbMzowXSBiaXRzIChJbnB1dCBDYXB0dXJlIDEgc2VsZWN0IGJpdHMpICovDQojZGVmaW5lIFJJX0lDUl9JQzFPU18wICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgUklfSUNSX0lDMU9TX1BvcykgICAgICAgICAgICAgLyohPCAweDAwMDAwMDAxICovDQojZGVmaW5lIFJJX0lDUl9JQzFPU18xICAgICAgICAgICAgICAgICAgKDB4MlUgPDwgUklfSUNSX0lDMU9TX1BvcykgICAgICAgICAgICAgLyohPCAweDAwMDAwMDAyICovDQojZGVmaW5lIFJJX0lDUl9JQzFPU18yICAgICAgICAgICAgICAgICAgKDB4NFUgPDwgUklfSUNSX0lDMU9TX1BvcykgICAgICAgICAgICAgLyohPCAweDAwMDAwMDA0ICovDQojZGVmaW5lIFJJX0lDUl9JQzFPU18zICAgICAgICAgICAgICAgICAgKDB4OFUgPDwgUklfSUNSX0lDMU9TX1BvcykgICAgICAgICAgICAgLyohPCAweDAwMDAwMDA4ICovDQoNCiNkZWZpbmUgUklfSUNSX0lDMk9TX1BvcyAgICAgICAgICAgICAgICAoNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUklfSUNSX0lDMk9TX01zayAgICAgICAgICAgICAgICAoMHhGVSA8PCBSSV9JQ1JfSUMyT1NfUG9zKSAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwRjAgKi8NCiNkZWZpbmUgUklfSUNSX0lDMk9TICAgICAgICAgICAgICAgICAgICBSSV9JQ1JfSUMyT1NfTXNrICAgICAgICAgICAgICAgICAgICAgICAvKiE8IElDMk9TWzM6MF0gYml0cyAoSW5wdXQgQ2FwdHVyZSAyIHNlbGVjdCBiaXRzKSAqLw0KI2RlZmluZSBSSV9JQ1JfSUMyT1NfMCAgICAgICAgICAgICAgICAgICgweDFVIDw8IFJJX0lDUl9JQzJPU19Qb3MpICAgICAgICAgICAgIC8qITwgMHgwMDAwMDAxMCAqLw0KI2RlZmluZSBSSV9JQ1JfSUMyT1NfMSAgICAgICAgICAgICAgICAgICgweDJVIDw8IFJJX0lDUl9JQzJPU19Qb3MpICAgICAgICAgICAgIC8qITwgMHgwMDAwMDAyMCAqLw0KI2RlZmluZSBSSV9JQ1JfSUMyT1NfMiAgICAgICAgICAgICAgICAgICgweDRVIDw8IFJJX0lDUl9JQzJPU19Qb3MpICAgICAgICAgICAgIC8qITwgMHgwMDAwMDA0MCAqLw0KI2RlZmluZSBSSV9JQ1JfSUMyT1NfMyAgICAgICAgICAgICAgICAgICgweDhVIDw8IFJJX0lDUl9JQzJPU19Qb3MpICAgICAgICAgICAgIC8qITwgMHgwMDAwMDA4MCAqLw0KDQojZGVmaW5lIFJJX0lDUl9JQzNPU19Qb3MgICAgICAgICAgICAgICAgKDhVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJJX0lDUl9JQzNPU19Nc2sgICAgICAgICAgICAgICAgKDB4RlUgPDwgUklfSUNSX0lDM09TX1BvcykgICAgICAgICAgICAgLyohPCAweDAwMDAwRjAwICovDQojZGVmaW5lIFJJX0lDUl9JQzNPUyAgICAgICAgICAgICAgICAgICAgUklfSUNSX0lDM09TX01zayAgICAgICAgICAgICAgICAgICAgICAgLyohPCBJQzNPU1szOjBdIGJpdHMgKElucHV0IENhcHR1cmUgMyBzZWxlY3QgYml0cykgKi8NCiNkZWZpbmUgUklfSUNSX0lDM09TXzAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBSSV9JQ1JfSUMzT1NfUG9zKSAgICAgICAgICAgICAvKiE8IDB4MDAwMDAxMDAgKi8NCiNkZWZpbmUgUklfSUNSX0lDM09TXzEgICAgICAgICAgICAgICAgICAoMHgyVSA8PCBSSV9JQ1JfSUMzT1NfUG9zKSAgICAgICAgICAgICAvKiE8IDB4MDAwMDAyMDAgKi8NCiNkZWZpbmUgUklfSUNSX0lDM09TXzIgICAgICAgICAgICAgICAgICAoMHg0VSA8PCBSSV9JQ1JfSUMzT1NfUG9zKSAgICAgICAgICAgICAvKiE8IDB4MDAwMDA0MDAgKi8NCiNkZWZpbmUgUklfSUNSX0lDM09TXzMgICAgICAgICAgICAgICAgICAoMHg4VSA8PCBSSV9JQ1JfSUMzT1NfUG9zKSAgICAgICAgICAgICAvKiE8IDB4MDAwMDA4MDAgKi8NCg0KI2RlZmluZSBSSV9JQ1JfSUM0T1NfUG9zICAgICAgICAgICAgICAgICgxMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSSV9JQ1JfSUM0T1NfTXNrICAgICAgICAgICAgICAgICgweEZVIDw8IFJJX0lDUl9JQzRPU19Qb3MpICAgICAgICAgICAgIC8qITwgMHgwMDAwRjAwMCAqLw0KI2RlZmluZSBSSV9JQ1JfSUM0T1MgICAgICAgICAgICAgICAgICAgIFJJX0lDUl9JQzRPU19Nc2sgICAgICAgICAgICAgICAgICAgICAgIC8qITwgSUM0T1NbMzowXSBiaXRzIChJbnB1dCBDYXB0dXJlIDQgc2VsZWN0IGJpdHMpICovDQojZGVmaW5lIFJJX0lDUl9JQzRPU18wICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgUklfSUNSX0lDNE9TX1BvcykgICAgICAgICAgICAgLyohPCAweDAwMDAxMDAwICovDQojZGVmaW5lIFJJX0lDUl9JQzRPU18xICAgICAgICAgICAgICAgICAgKDB4MlUgPDwgUklfSUNSX0lDNE9TX1BvcykgICAgICAgICAgICAgLyohPCAweDAwMDAyMDAwICovDQojZGVmaW5lIFJJX0lDUl9JQzRPU18yICAgICAgICAgICAgICAgICAgKDB4NFUgPDwgUklfSUNSX0lDNE9TX1BvcykgICAgICAgICAgICAgLyohPCAweDAwMDA0MDAwICovDQojZGVmaW5lIFJJX0lDUl9JQzRPU18zICAgICAgICAgICAgICAgICAgKDB4OFUgPDwgUklfSUNSX0lDNE9TX1BvcykgICAgICAgICAgICAgLyohPCAweDAwMDA4MDAwICovDQoNCiNkZWZpbmUgUklfSUNSX1RJTV9Qb3MgICAgICAgICAgICAgICAgICAoMTZVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUklfSUNSX1RJTV9Nc2sgICAgICAgICAgICAgICAgICAoMHgzVSA8PCBSSV9JQ1JfVElNX1BvcykgICAgICAgICAgICAgICAvKiE8IDB4MDAwMzAwMDAgKi8NCiNkZWZpbmUgUklfSUNSX1RJTSAgICAgICAgICAgICAgICAgICAgICBSSV9JQ1JfVElNX01zayAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFRJTVszOjBdIGJpdHMgKFRpbWVycyBzZWxlY3QgYml0cykgKi8NCiNkZWZpbmUgUklfSUNSX1RJTV8wICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBSSV9JQ1JfVElNX1BvcykgICAgICAgICAgICAgICAvKiE8IDB4MDAwMTAwMDAgKi8NCiNkZWZpbmUgUklfSUNSX1RJTV8xICAgICAgICAgICAgICAgICAgICAoMHgyVSA8PCBSSV9JQ1JfVElNX1BvcykgICAgICAgICAgICAgICAvKiE8IDB4MDAwMjAwMDAgKi8NCg0KI2RlZmluZSBSSV9JQ1JfSUMxX1BvcyAgICAgICAgICAgICAgICAgICgxOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSSV9JQ1JfSUMxX01zayAgICAgICAgICAgICAgICAgICgweDFVIDw8IFJJX0lDUl9JQzFfUG9zKSAgICAgICAgICAgICAgIC8qITwgMHgwMDA0MDAwMCAqLw0KI2RlZmluZSBSSV9JQ1JfSUMxICAgICAgICAgICAgICAgICAgICAgIFJJX0lDUl9JQzFfTXNrICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgSW5wdXQgY2FwdHVyZSAxICovDQojZGVmaW5lIFJJX0lDUl9JQzJfUG9zICAgICAgICAgICAgICAgICAgKDE5VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJJX0lDUl9JQzJfTXNrICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgUklfSUNSX0lDMl9Qb3MpICAgICAgICAgICAgICAgLyohPCAweDAwMDgwMDAwICovDQojZGVmaW5lIFJJX0lDUl9JQzIgICAgICAgICAgICAgICAgICAgICAgUklfSUNSX0lDMl9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBJbnB1dCBjYXB0dXJlIDIgKi8NCiNkZWZpbmUgUklfSUNSX0lDM19Qb3MgICAgICAgICAgICAgICAgICAoMjBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUklfSUNSX0lDM19Nc2sgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBSSV9JQ1JfSUMzX1BvcykgICAgICAgICAgICAgICAvKiE8IDB4MDAxMDAwMDAgKi8NCiNkZWZpbmUgUklfSUNSX0lDMyAgICAgICAgICAgICAgICAgICAgICBSSV9JQ1JfSUMzX01zayAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IElucHV0IGNhcHR1cmUgMyAqLw0KI2RlZmluZSBSSV9JQ1JfSUM0X1BvcyAgICAgICAgICAgICAgICAgICgyMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSSV9JQ1JfSUM0X01zayAgICAgICAgICAgICAgICAgICgweDFVIDw8IFJJX0lDUl9JQzRfUG9zKSAgICAgICAgICAgICAgIC8qITwgMHgwMDIwMDAwMCAqLw0KI2RlZmluZSBSSV9JQ1JfSUM0ICAgICAgICAgICAgICAgICAgICAgIFJJX0lDUl9JQzRfTXNrICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgSW5wdXQgY2FwdHVyZSA0ICovDQoNCi8qKioqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFJJX0FTQ1IxIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgUklfQVNDUjFfQ0hfUG9zICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUklfQVNDUjFfQ0hfTXNrICAgICAgICAgICAgICAgICAoMHg3QkZERkZGRlUgPDwgUklfQVNDUjFfQ0hfUG9zKSAgICAgICAvKiE8IDB4N0JGREZGRkYgKi8NCiNkZWZpbmUgUklfQVNDUjFfQ0ggICAgICAgICAgICAgICAgICAgICBSSV9BU0NSMV9DSF9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IEFTX0NIWzI1OjE4XSAmIEFTX0NIWzE1OjBdIGJpdHMgKCBBbmFsb2cgc3dpdGNoZXMgc2VsZWN0aW9uIGJpdHMpICovDQojZGVmaW5lIFJJX0FTQ1IxX0NIXzAgICAgICAgICAgICAgICAgICAgKDB4MDAwMDAwMDFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBCaXQgMCAqLw0KI2RlZmluZSBSSV9BU0NSMV9DSF8xICAgICAgICAgICAgICAgICAgICgweDAwMDAwMDAyVSkgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgQml0IDEgKi8NCiNkZWZpbmUgUklfQVNDUjFfQ0hfMiAgICAgICAgICAgICAgICAgICAoMHgwMDAwMDAwNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IEJpdCAyICovDQojZGVmaW5lIFJJX0FTQ1IxX0NIXzMgICAgICAgICAgICAgICAgICAgKDB4MDAwMDAwMDhVKSAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBCaXQgMyAqLw0KI2RlZmluZSBSSV9BU0NSMV9DSF80ICAgICAgICAgICAgICAgICAgICgweDAwMDAwMDEwVSkgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgQml0IDQgKi8NCiNkZWZpbmUgUklfQVNDUjFfQ0hfNSAgICAgICAgICAgICAgICAgICAoMHgwMDAwMDAyMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IEJpdCA1ICovDQojZGVmaW5lIFJJX0FTQ1IxX0NIXzYgICAgICAgICAgICAgICAgICAgKDB4MDAwMDAwNDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBCaXQgNiAqLw0KI2RlZmluZSBSSV9BU0NSMV9DSF83ICAgICAgICAgICAgICAgICAgICgweDAwMDAwMDgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgQml0IDcgKi8NCiNkZWZpbmUgUklfQVNDUjFfQ0hfOCAgICAgICAgICAgICAgICAgICAoMHgwMDAwMDEwMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IEJpdCA4ICovDQojZGVmaW5lIFJJX0FTQ1IxX0NIXzkgICAgICAgICAgICAgICAgICAgKDB4MDAwMDAyMDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBCaXQgOSAqLw0KI2RlZmluZSBSSV9BU0NSMV9DSF8xMCAgICAgICAgICAgICAgICAgICgweDAwMDAwNDAwVSkgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgQml0IDEwICovDQojZGVmaW5lIFJJX0FTQ1IxX0NIXzExICAgICAgICAgICAgICAgICAgKDB4MDAwMDA4MDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBCaXQgMTEgKi8NCiNkZWZpbmUgUklfQVNDUjFfQ0hfMTIgICAgICAgICAgICAgICAgICAoMHgwMDAwMTAwMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IEJpdCAxMiAqLw0KI2RlZmluZSBSSV9BU0NSMV9DSF8xMyAgICAgICAgICAgICAgICAgICgweDAwMDAyMDAwVSkgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgQml0IDEzICovDQojZGVmaW5lIFJJX0FTQ1IxX0NIXzE0ICAgICAgICAgICAgICAgICAgKDB4MDAwMDQwMDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBCaXQgMTQgKi8NCiNkZWZpbmUgUklfQVNDUjFfQ0hfMTUgICAgICAgICAgICAgICAgICAoMHgwMDAwODAwMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IEJpdCAxNSAqLw0KI2RlZmluZSBSSV9BU0NSMV9DSF8zMSAgICAgICAgICAgICAgICAgICgweDAwMDEwMDAwVSkgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgQml0IDE2ICovDQojZGVmaW5lIFJJX0FTQ1IxX0NIXzE4ICAgICAgICAgICAgICAgICAgKDB4MDAwNDAwMDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBCaXQgMTggKi8NCiNkZWZpbmUgUklfQVNDUjFfQ0hfMTkgICAgICAgICAgICAgICAgICAoMHgwMDA4MDAwMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IEJpdCAxOSAqLw0KI2RlZmluZSBSSV9BU0NSMV9DSF8yMCAgICAgICAgICAgICAgICAgICgweDAwMTAwMDAwVSkgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgQml0IDIwICovDQojZGVmaW5lIFJJX0FTQ1IxX0NIXzIxICAgICAgICAgICAgICAgICAgKDB4MDAyMDAwMDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBCaXQgMjEgKi8NCiNkZWZpbmUgUklfQVNDUjFfQ0hfMjIgICAgICAgICAgICAgICAgICAoMHgwMDQwMDAwMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IEJpdCAyMiAqLw0KI2RlZmluZSBSSV9BU0NSMV9DSF8yMyAgICAgICAgICAgICAgICAgICgweDAwODAwMDAwVSkgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgQml0IDIzICovDQojZGVmaW5lIFJJX0FTQ1IxX0NIXzI0ICAgICAgICAgICAgICAgICAgKDB4MDEwMDAwMDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBCaXQgMjQgKi8NCiNkZWZpbmUgUklfQVNDUjFfQ0hfMjUgICAgICAgICAgICAgICAgICAoMHgwMjAwMDAwMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IEJpdCAyNSAqLw0KI2RlZmluZSBSSV9BU0NSMV9WQ09NUF9Qb3MgICAgICAgICAgICAgICgyNlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSSV9BU0NSMV9WQ09NUF9Nc2sgICAgICAgICAgICAgICgweDFVIDw8IFJJX0FTQ1IxX1ZDT01QX1BvcykgICAgICAgICAgIC8qITwgMHgwNDAwMDAwMCAqLw0KI2RlZmluZSBSSV9BU0NSMV9WQ09NUCAgICAgICAgICAgICAgICAgIFJJX0FTQ1IxX1ZDT01QX01zayAgICAgICAgICAgICAgICAgICAgIC8qITwgQURDIGFuYWxvZyBzd2l0Y2ggc2VsZWN0aW9uIGZvciBpbnRlcm5hbCBub2RlIHRvIENPTVAxICovDQojZGVmaW5lIFJJX0FTQ1IxX0NIXzI3ICAgICAgICAgICAgICAgICAgKDB4MDgwMDAwMDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBCaXQgMjcgKi8NCiNkZWZpbmUgUklfQVNDUjFfQ0hfMjggICAgICAgICAgICAgICAgICAoMHgxMDAwMDAwMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IEJpdCAyOCAqLw0KI2RlZmluZSBSSV9BU0NSMV9DSF8yOSAgICAgICAgICAgICAgICAgICgweDIwMDAwMDAwVSkgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgQml0IDI5ICovDQojZGVmaW5lIFJJX0FTQ1IxX0NIXzMwICAgICAgICAgICAgICAgICAgKDB4NDAwMDAwMDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBCaXQgMzAgKi8NCiNkZWZpbmUgUklfQVNDUjFfU0NNX1BvcyAgICAgICAgICAgICAgICAoMzFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUklfQVNDUjFfU0NNX01zayAgICAgICAgICAgICAgICAoMHgxVSA8PCBSSV9BU0NSMV9TQ01fUG9zKSAgICAgICAgICAgICAvKiE8IDB4ODAwMDAwMDAgKi8NCiNkZWZpbmUgUklfQVNDUjFfU0NNICAgICAgICAgICAgICAgICAgICBSSV9BU0NSMV9TQ01fTXNrICAgICAgICAgICAgICAgICAgICAgICAvKiE8IEkvTyBTd2l0Y2ggY29udHJvbCBtb2RlICovDQoNCi8qKioqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFJJX0FTQ1IyIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgUklfQVNDUjJfR1IxMF8xICAgICAgICAgICAgICAgICAoMHgwMDAwMDAwMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IEdSMTAtMSBzZWxlY3Rpb24gYml0ICovDQojZGVmaW5lIFJJX0FTQ1IyX0dSMTBfMiAgICAgICAgICAgICAgICAgKDB4MDAwMDAwMDJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBHUjEwLTIgc2VsZWN0aW9uIGJpdCAqLw0KI2RlZmluZSBSSV9BU0NSMl9HUjEwXzMgICAgICAgICAgICAgICAgICgweDAwMDAwMDA0VSkgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgR1IxMC0zIHNlbGVjdGlvbiBiaXQgKi8NCiNkZWZpbmUgUklfQVNDUjJfR1IxMF80ICAgICAgICAgICAgICAgICAoMHgwMDAwMDAwOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IEdSMTAtNCBzZWxlY3Rpb24gYml0ICovDQojZGVmaW5lIFJJX0FTQ1IyX0dSNl9Qb3MgICAgICAgICAgICAgICAgKDRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJJX0FTQ1IyX0dSNl9Nc2sgICAgICAgICAgICAgICAgKDB4MTgwMDAwM1UgPDwgUklfQVNDUjJfR1I2X1BvcykgICAgICAgLyohPCAweDE4MDAwMDMwICovDQojZGVmaW5lIFJJX0FTQ1IyX0dSNiAgICAgICAgICAgICAgICAgICAgUklfQVNDUjJfR1I2X01zayAgICAgICAgICAgICAgICAgICAgICAgLyohPCBHUjYgc2VsZWN0aW9uIGJpdHMgKi8NCiNkZWZpbmUgUklfQVNDUjJfR1I2XzEgICAgICAgICAgICAgICAgICAoMHgwMDAwMDAxVSA8PCBSSV9BU0NSMl9HUjZfUG9zKSAgICAgICAvKiE8IDB4MDAwMDAwMTAgKi8NCiNkZWZpbmUgUklfQVNDUjJfR1I2XzIgICAgICAgICAgICAgICAgICAoMHgwMDAwMDAyVSA8PCBSSV9BU0NSMl9HUjZfUG9zKSAgICAgICAvKiE8IDB4MDAwMDAwMjAgKi8NCiNkZWZpbmUgUklfQVNDUjJfR1I2XzMgICAgICAgICAgICAgICAgICAoMHgwODAwMDAwVSA8PCBSSV9BU0NSMl9HUjZfUG9zKSAgICAgICAvKiE8IDB4MDgwMDAwMDAgKi8NCiNkZWZpbmUgUklfQVNDUjJfR1I2XzQgICAgICAgICAgICAgICAgICAoMHgxMDAwMDAwVSA8PCBSSV9BU0NSMl9HUjZfUG9zKSAgICAgICAvKiE8IDB4MTAwMDAwMDAgKi8NCiNkZWZpbmUgUklfQVNDUjJfR1I1XzEgICAgICAgICAgICAgICAgICAoMHgwMDAwMDA0MFUpICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IEdSNS0xIHNlbGVjdGlvbiBiaXQgKi8NCiNkZWZpbmUgUklfQVNDUjJfR1I1XzIgICAgICAgICAgICAgICAgICAoMHgwMDAwMDA4MFUpICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IEdSNS0yIHNlbGVjdGlvbiBiaXQgKi8NCiNkZWZpbmUgUklfQVNDUjJfR1I1XzMgICAgICAgICAgICAgICAgICAoMHgwMDAwMDEwMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IEdSNS0zIHNlbGVjdGlvbiBiaXQgKi8NCiNkZWZpbmUgUklfQVNDUjJfR1I0XzEgICAgICAgICAgICAgICAgICAoMHgwMDAwMDIwMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IEdSNC0xIHNlbGVjdGlvbiBiaXQgKi8NCiNkZWZpbmUgUklfQVNDUjJfR1I0XzIgICAgICAgICAgICAgICAgICAoMHgwMDAwMDQwMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IEdSNC0yIHNlbGVjdGlvbiBiaXQgKi8NCiNkZWZpbmUgUklfQVNDUjJfR1I0XzMgICAgICAgICAgICAgICAgICAoMHgwMDAwMDgwMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IEdSNC0zIHNlbGVjdGlvbiBiaXQgKi8NCiNkZWZpbmUgUklfQVNDUjJfR1I0XzQgICAgICAgICAgICAgICAgICAoMHgwMDAwODAwMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IEdSNC00IHNlbGVjdGlvbiBiaXQgKi8NCiNkZWZpbmUgUklfQVNDUjJfQ0gwYl9Qb3MgICAgICAgICAgICAgICAoMTZVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUklfQVNDUjJfQ0gwYl9Nc2sgICAgICAgICAgICAgICAoMHgxVSA8PCBSSV9BU0NSMl9DSDBiX1BvcykgICAgICAgICAgICAvKiE8IDB4MDAwMTAwMDAgKi8NCiNkZWZpbmUgUklfQVNDUjJfQ0gwYiAgICAgICAgICAgICAgICAgICBSSV9BU0NSMl9DSDBiX01zayAgICAgICAgICAgICAgICAgICAgICAvKiE8IENIMGIgc2VsZWN0aW9uIGJpdCAqLw0KI2RlZmluZSBSSV9BU0NSMl9DSDFiX1BvcyAgICAgICAgICAgICAgICgxN1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSSV9BU0NSMl9DSDFiX01zayAgICAgICAgICAgICAgICgweDFVIDw8IFJJX0FTQ1IyX0NIMWJfUG9zKSAgICAgICAgICAgIC8qITwgMHgwMDAyMDAwMCAqLw0KI2RlZmluZSBSSV9BU0NSMl9DSDFiICAgICAgICAgICAgICAgICAgIFJJX0FTQ1IyX0NIMWJfTXNrICAgICAgICAgICAgICAgICAgICAgIC8qITwgQ0gxYiBzZWxlY3Rpb24gYml0ICovDQojZGVmaW5lIFJJX0FTQ1IyX0NIMmJfUG9zICAgICAgICAgICAgICAgKDE4VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJJX0FTQ1IyX0NIMmJfTXNrICAgICAgICAgICAgICAgKDB4MVUgPDwgUklfQVNDUjJfQ0gyYl9Qb3MpICAgICAgICAgICAgLyohPCAweDAwMDQwMDAwICovDQojZGVmaW5lIFJJX0FTQ1IyX0NIMmIgICAgICAgICAgICAgICAgICAgUklfQVNDUjJfQ0gyYl9Nc2sgICAgICAgICAgICAgICAgICAgICAgLyohPCBDSDJiIHNlbGVjdGlvbiBiaXQgKi8NCiNkZWZpbmUgUklfQVNDUjJfQ0gzYl9Qb3MgICAgICAgICAgICAgICAoMTlVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUklfQVNDUjJfQ0gzYl9Nc2sgICAgICAgICAgICAgICAoMHgxVSA8PCBSSV9BU0NSMl9DSDNiX1BvcykgICAgICAgICAgICAvKiE8IDB4MDAwODAwMDAgKi8NCiNkZWZpbmUgUklfQVNDUjJfQ0gzYiAgICAgICAgICAgICAgICAgICBSSV9BU0NSMl9DSDNiX01zayAgICAgICAgICAgICAgICAgICAgICAvKiE8IENIM2Igc2VsZWN0aW9uIGJpdCAqLw0KI2RlZmluZSBSSV9BU0NSMl9DSDZiX1BvcyAgICAgICAgICAgICAgICgyMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSSV9BU0NSMl9DSDZiX01zayAgICAgICAgICAgICAgICgweDFVIDw8IFJJX0FTQ1IyX0NINmJfUG9zKSAgICAgICAgICAgIC8qITwgMHgwMDEwMDAwMCAqLw0KI2RlZmluZSBSSV9BU0NSMl9DSDZiICAgICAgICAgICAgICAgICAgIFJJX0FTQ1IyX0NINmJfTXNrICAgICAgICAgICAgICAgICAgICAgIC8qITwgQ0g2YiBzZWxlY3Rpb24gYml0ICovDQojZGVmaW5lIFJJX0FTQ1IyX0NIN2JfUG9zICAgICAgICAgICAgICAgKDIxVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJJX0FTQ1IyX0NIN2JfTXNrICAgICAgICAgICAgICAgKDB4MVUgPDwgUklfQVNDUjJfQ0g3Yl9Qb3MpICAgICAgICAgICAgLyohPCAweDAwMjAwMDAwICovDQojZGVmaW5lIFJJX0FTQ1IyX0NIN2IgICAgICAgICAgICAgICAgICAgUklfQVNDUjJfQ0g3Yl9Nc2sgICAgICAgICAgICAgICAgICAgICAgLyohPCBDSDdiIHNlbGVjdGlvbiBiaXQgKi8NCiNkZWZpbmUgUklfQVNDUjJfQ0g4Yl9Qb3MgICAgICAgICAgICAgICAoMjJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUklfQVNDUjJfQ0g4Yl9Nc2sgICAgICAgICAgICAgICAoMHgxVSA8PCBSSV9BU0NSMl9DSDhiX1BvcykgICAgICAgICAgICAvKiE8IDB4MDA0MDAwMDAgKi8NCiNkZWZpbmUgUklfQVNDUjJfQ0g4YiAgICAgICAgICAgICAgICAgICBSSV9BU0NSMl9DSDhiX01zayAgICAgICAgICAgICAgICAgICAgICAvKiE8IENIOGIgc2VsZWN0aW9uIGJpdCAqLw0KI2RlZmluZSBSSV9BU0NSMl9DSDliX1BvcyAgICAgICAgICAgICAgICgyM1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSSV9BU0NSMl9DSDliX01zayAgICAgICAgICAgICAgICgweDFVIDw8IFJJX0FTQ1IyX0NIOWJfUG9zKSAgICAgICAgICAgIC8qITwgMHgwMDgwMDAwMCAqLw0KI2RlZmluZSBSSV9BU0NSMl9DSDliICAgICAgICAgICAgICAgICAgIFJJX0FTQ1IyX0NIOWJfTXNrICAgICAgICAgICAgICAgICAgICAgIC8qITwgQ0g5YiBzZWxlY3Rpb24gYml0ICovDQojZGVmaW5lIFJJX0FTQ1IyX0NIMTBiX1BvcyAgICAgICAgICAgICAgKDI0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJJX0FTQ1IyX0NIMTBiX01zayAgICAgICAgICAgICAgKDB4MVUgPDwgUklfQVNDUjJfQ0gxMGJfUG9zKSAgICAgICAgICAgLyohPCAweDAxMDAwMDAwICovDQojZGVmaW5lIFJJX0FTQ1IyX0NIMTBiICAgICAgICAgICAgICAgICAgUklfQVNDUjJfQ0gxMGJfTXNrICAgICAgICAgICAgICAgICAgICAgLyohPCBDSDEwYiBzZWxlY3Rpb24gYml0ICovDQojZGVmaW5lIFJJX0FTQ1IyX0NIMTFiX1BvcyAgICAgICAgICAgICAgKDI1VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJJX0FTQ1IyX0NIMTFiX01zayAgICAgICAgICAgICAgKDB4MVUgPDwgUklfQVNDUjJfQ0gxMWJfUG9zKSAgICAgICAgICAgLyohPCAweDAyMDAwMDAwICovDQojZGVmaW5lIFJJX0FTQ1IyX0NIMTFiICAgICAgICAgICAgICAgICAgUklfQVNDUjJfQ0gxMWJfTXNrICAgICAgICAgICAgICAgICAgICAgLyohPCBDSDExYiBzZWxlY3Rpb24gYml0ICovDQojZGVmaW5lIFJJX0FTQ1IyX0NIMTJiX1BvcyAgICAgICAgICAgICAgKDI2VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJJX0FTQ1IyX0NIMTJiX01zayAgICAgICAgICAgICAgKDB4MVUgPDwgUklfQVNDUjJfQ0gxMmJfUG9zKSAgICAgICAgICAgLyohPCAweDA0MDAwMDAwICovDQojZGVmaW5lIFJJX0FTQ1IyX0NIMTJiICAgICAgICAgICAgICAgICAgUklfQVNDUjJfQ0gxMmJfTXNrICAgICAgICAgICAgICAgICAgICAgLyohPCBDSDEyYiBzZWxlY3Rpb24gYml0ICovDQoNCi8qKioqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFJJX0hZU0NSMSByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIFJJX0hZU0NSMV9QQV9Qb3MgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJJX0hZU0NSMV9QQV9Nc2sgICAgICAgICAgICAgICAgKDB4RkZGRlUgPDwgUklfSFlTQ1IxX1BBX1BvcykgICAgICAgICAgLyohPCAweDAwMDBGRkZGICovDQojZGVmaW5lIFJJX0hZU0NSMV9QQSAgICAgICAgICAgICAgICAgICAgUklfSFlTQ1IxX1BBX01zayAgICAgICAgICAgICAgICAgICAgICAgLyohPCBQQVsxNTowXSBQb3J0IEEgSHlzdGVyZXNpcyBzZWxlY3Rpb24gKi8NCiNkZWZpbmUgUklfSFlTQ1IxX1BBXzAgICAgICAgICAgICAgICAgICAoMHgwMDAxVSA8PCBSSV9IWVNDUjFfUEFfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDAwMDEgKi8NCiNkZWZpbmUgUklfSFlTQ1IxX1BBXzEgICAgICAgICAgICAgICAgICAoMHgwMDAyVSA8PCBSSV9IWVNDUjFfUEFfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDAwMDIgKi8NCiNkZWZpbmUgUklfSFlTQ1IxX1BBXzIgICAgICAgICAgICAgICAgICAoMHgwMDA0VSA8PCBSSV9IWVNDUjFfUEFfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDAwMDQgKi8NCiNkZWZpbmUgUklfSFlTQ1IxX1BBXzMgICAgICAgICAgICAgICAgICAoMHgwMDA4VSA8PCBSSV9IWVNDUjFfUEFfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDAwMDggKi8NCiNkZWZpbmUgUklfSFlTQ1IxX1BBXzQgICAgICAgICAgICAgICAgICAoMHgwMDEwVSA8PCBSSV9IWVNDUjFfUEFfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDAwMTAgKi8NCiNkZWZpbmUgUklfSFlTQ1IxX1BBXzUgICAgICAgICAgICAgICAgICAoMHgwMDIwVSA8PCBSSV9IWVNDUjFfUEFfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDAwMjAgKi8NCiNkZWZpbmUgUklfSFlTQ1IxX1BBXzYgICAgICAgICAgICAgICAgICAoMHgwMDQwVSA8PCBSSV9IWVNDUjFfUEFfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDAwNDAgKi8NCiNkZWZpbmUgUklfSFlTQ1IxX1BBXzcgICAgICAgICAgICAgICAgICAoMHgwMDgwVSA8PCBSSV9IWVNDUjFfUEFfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDAwODAgKi8NCiNkZWZpbmUgUklfSFlTQ1IxX1BBXzggICAgICAgICAgICAgICAgICAoMHgwMTAwVSA8PCBSSV9IWVNDUjFfUEFfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDAxMDAgKi8NCiNkZWZpbmUgUklfSFlTQ1IxX1BBXzkgICAgICAgICAgICAgICAgICAoMHgwMjAwVSA8PCBSSV9IWVNDUjFfUEFfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDAyMDAgKi8NCiNkZWZpbmUgUklfSFlTQ1IxX1BBXzEwICAgICAgICAgICAgICAgICAoMHgwNDAwVSA8PCBSSV9IWVNDUjFfUEFfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDA0MDAgKi8NCiNkZWZpbmUgUklfSFlTQ1IxX1BBXzExICAgICAgICAgICAgICAgICAoMHgwODAwVSA8PCBSSV9IWVNDUjFfUEFfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDA4MDAgKi8NCiNkZWZpbmUgUklfSFlTQ1IxX1BBXzEyICAgICAgICAgICAgICAgICAoMHgxMDAwVSA8PCBSSV9IWVNDUjFfUEFfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDEwMDAgKi8NCiNkZWZpbmUgUklfSFlTQ1IxX1BBXzEzICAgICAgICAgICAgICAgICAoMHgyMDAwVSA8PCBSSV9IWVNDUjFfUEFfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDIwMDAgKi8NCiNkZWZpbmUgUklfSFlTQ1IxX1BBXzE0ICAgICAgICAgICAgICAgICAoMHg0MDAwVSA8PCBSSV9IWVNDUjFfUEFfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDQwMDAgKi8NCiNkZWZpbmUgUklfSFlTQ1IxX1BBXzE1ICAgICAgICAgICAgICAgICAoMHg4MDAwVSA8PCBSSV9IWVNDUjFfUEFfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDgwMDAgKi8NCg0KI2RlZmluZSBSSV9IWVNDUjFfUEJfUG9zICAgICAgICAgICAgICAgICgxNlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSSV9IWVNDUjFfUEJfTXNrICAgICAgICAgICAgICAgICgweEZGRkZVIDw8IFJJX0hZU0NSMV9QQl9Qb3MpICAgICAgICAgIC8qITwgMHhGRkZGMDAwMCAqLw0KI2RlZmluZSBSSV9IWVNDUjFfUEIgICAgICAgICAgICAgICAgICAgIFJJX0hZU0NSMV9QQl9Nc2sgICAgICAgICAgICAgICAgICAgICAgIC8qITwgUEJbMTU6MF0gUG9ydCBCIEh5c3RlcmVzaXMgc2VsZWN0aW9uICovDQojZGVmaW5lIFJJX0hZU0NSMV9QQl8wICAgICAgICAgICAgICAgICAgKDB4MDAwMVUgPDwgUklfSFlTQ1IxX1BCX1BvcykgICAgICAgICAgLyohPCAweDAwMDEwMDAwICovDQojZGVmaW5lIFJJX0hZU0NSMV9QQl8xICAgICAgICAgICAgICAgICAgKDB4MDAwMlUgPDwgUklfSFlTQ1IxX1BCX1BvcykgICAgICAgICAgLyohPCAweDAwMDIwMDAwICovDQojZGVmaW5lIFJJX0hZU0NSMV9QQl8yICAgICAgICAgICAgICAgICAgKDB4MDAwNFUgPDwgUklfSFlTQ1IxX1BCX1BvcykgICAgICAgICAgLyohPCAweDAwMDQwMDAwICovDQojZGVmaW5lIFJJX0hZU0NSMV9QQl8zICAgICAgICAgICAgICAgICAgKDB4MDAwOFUgPDwgUklfSFlTQ1IxX1BCX1BvcykgICAgICAgICAgLyohPCAweDAwMDgwMDAwICovDQojZGVmaW5lIFJJX0hZU0NSMV9QQl80ICAgICAgICAgICAgICAgICAgKDB4MDAxMFUgPDwgUklfSFlTQ1IxX1BCX1BvcykgICAgICAgICAgLyohPCAweDAwMTAwMDAwICovDQojZGVmaW5lIFJJX0hZU0NSMV9QQl81ICAgICAgICAgICAgICAgICAgKDB4MDAyMFUgPDwgUklfSFlTQ1IxX1BCX1BvcykgICAgICAgICAgLyohPCAweDAwMjAwMDAwICovDQojZGVmaW5lIFJJX0hZU0NSMV9QQl82ICAgICAgICAgICAgICAgICAgKDB4MDA0MFUgPDwgUklfSFlTQ1IxX1BCX1BvcykgICAgICAgICAgLyohPCAweDAwNDAwMDAwICovDQojZGVmaW5lIFJJX0hZU0NSMV9QQl83ICAgICAgICAgICAgICAgICAgKDB4MDA4MFUgPDwgUklfSFlTQ1IxX1BCX1BvcykgICAgICAgICAgLyohPCAweDAwODAwMDAwICovDQojZGVmaW5lIFJJX0hZU0NSMV9QQl84ICAgICAgICAgICAgICAgICAgKDB4MDEwMFUgPDwgUklfSFlTQ1IxX1BCX1BvcykgICAgICAgICAgLyohPCAweDAxMDAwMDAwICovDQojZGVmaW5lIFJJX0hZU0NSMV9QQl85ICAgICAgICAgICAgICAgICAgKDB4MDIwMFUgPDwgUklfSFlTQ1IxX1BCX1BvcykgICAgICAgICAgLyohPCAweDAyMDAwMDAwICovDQojZGVmaW5lIFJJX0hZU0NSMV9QQl8xMCAgICAgICAgICAgICAgICAgKDB4MDQwMFUgPDwgUklfSFlTQ1IxX1BCX1BvcykgICAgICAgICAgLyohPCAweDA0MDAwMDAwICovDQojZGVmaW5lIFJJX0hZU0NSMV9QQl8xMSAgICAgICAgICAgICAgICAgKDB4MDgwMFUgPDwgUklfSFlTQ1IxX1BCX1BvcykgICAgICAgICAgLyohPCAweDA4MDAwMDAwICovDQojZGVmaW5lIFJJX0hZU0NSMV9QQl8xMiAgICAgICAgICAgICAgICAgKDB4MTAwMFUgPDwgUklfSFlTQ1IxX1BCX1BvcykgICAgICAgICAgLyohPCAweDEwMDAwMDAwICovDQojZGVmaW5lIFJJX0hZU0NSMV9QQl8xMyAgICAgICAgICAgICAgICAgKDB4MjAwMFUgPDwgUklfSFlTQ1IxX1BCX1BvcykgICAgICAgICAgLyohPCAweDIwMDAwMDAwICovDQojZGVmaW5lIFJJX0hZU0NSMV9QQl8xNCAgICAgICAgICAgICAgICAgKDB4NDAwMFUgPDwgUklfSFlTQ1IxX1BCX1BvcykgICAgICAgICAgLyohPCAweDQwMDAwMDAwICovDQojZGVmaW5lIFJJX0hZU0NSMV9QQl8xNSAgICAgICAgICAgICAgICAgKDB4ODAwMFUgPDwgUklfSFlTQ1IxX1BCX1BvcykgICAgICAgICAgLyohPCAweDgwMDAwMDAwICovDQoNCi8qKioqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFJJX0hZU0NSMiByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIFJJX0hZU0NSMl9QQ19Qb3MgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJJX0hZU0NSMl9QQ19Nc2sgICAgICAgICAgICAgICAgKDB4RkZGRlUgPDwgUklfSFlTQ1IyX1BDX1BvcykgICAgICAgICAgLyohPCAweDAwMDBGRkZGICovDQojZGVmaW5lIFJJX0hZU0NSMl9QQyAgICAgICAgICAgICAgICAgICAgUklfSFlTQ1IyX1BDX01zayAgICAgICAgICAgICAgICAgICAgICAgLyohPCBQQ1sxNTowXSBQb3J0IEMgSHlzdGVyZXNpcyBzZWxlY3Rpb24gKi8NCiNkZWZpbmUgUklfSFlTQ1IyX1BDXzAgICAgICAgICAgICAgICAgICAoMHgwMDAxVSA8PCBSSV9IWVNDUjJfUENfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDAwMDEgKi8NCiNkZWZpbmUgUklfSFlTQ1IyX1BDXzEgICAgICAgICAgICAgICAgICAoMHgwMDAyVSA8PCBSSV9IWVNDUjJfUENfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDAwMDIgKi8NCiNkZWZpbmUgUklfSFlTQ1IyX1BDXzIgICAgICAgICAgICAgICAgICAoMHgwMDA0VSA8PCBSSV9IWVNDUjJfUENfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDAwMDQgKi8NCiNkZWZpbmUgUklfSFlTQ1IyX1BDXzMgICAgICAgICAgICAgICAgICAoMHgwMDA4VSA8PCBSSV9IWVNDUjJfUENfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDAwMDggKi8NCiNkZWZpbmUgUklfSFlTQ1IyX1BDXzQgICAgICAgICAgICAgICAgICAoMHgwMDEwVSA8PCBSSV9IWVNDUjJfUENfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDAwMTAgKi8NCiNkZWZpbmUgUklfSFlTQ1IyX1BDXzUgICAgICAgICAgICAgICAgICAoMHgwMDIwVSA8PCBSSV9IWVNDUjJfUENfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDAwMjAgKi8NCiNkZWZpbmUgUklfSFlTQ1IyX1BDXzYgICAgICAgICAgICAgICAgICAoMHgwMDQwVSA8PCBSSV9IWVNDUjJfUENfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDAwNDAgKi8NCiNkZWZpbmUgUklfSFlTQ1IyX1BDXzcgICAgICAgICAgICAgICAgICAoMHgwMDgwVSA8PCBSSV9IWVNDUjJfUENfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDAwODAgKi8NCiNkZWZpbmUgUklfSFlTQ1IyX1BDXzggICAgICAgICAgICAgICAgICAoMHgwMTAwVSA8PCBSSV9IWVNDUjJfUENfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDAxMDAgKi8NCiNkZWZpbmUgUklfSFlTQ1IyX1BDXzkgICAgICAgICAgICAgICAgICAoMHgwMjAwVSA8PCBSSV9IWVNDUjJfUENfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDAyMDAgKi8NCiNkZWZpbmUgUklfSFlTQ1IyX1BDXzEwICAgICAgICAgICAgICAgICAoMHgwNDAwVSA8PCBSSV9IWVNDUjJfUENfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDA0MDAgKi8NCiNkZWZpbmUgUklfSFlTQ1IyX1BDXzExICAgICAgICAgICAgICAgICAoMHgwODAwVSA8PCBSSV9IWVNDUjJfUENfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDA4MDAgKi8NCiNkZWZpbmUgUklfSFlTQ1IyX1BDXzEyICAgICAgICAgICAgICAgICAoMHgxMDAwVSA8PCBSSV9IWVNDUjJfUENfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDEwMDAgKi8NCiNkZWZpbmUgUklfSFlTQ1IyX1BDXzEzICAgICAgICAgICAgICAgICAoMHgyMDAwVSA8PCBSSV9IWVNDUjJfUENfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDIwMDAgKi8NCiNkZWZpbmUgUklfSFlTQ1IyX1BDXzE0ICAgICAgICAgICAgICAgICAoMHg0MDAwVSA8PCBSSV9IWVNDUjJfUENfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDQwMDAgKi8NCiNkZWZpbmUgUklfSFlTQ1IyX1BDXzE1ICAgICAgICAgICAgICAgICAoMHg4MDAwVSA8PCBSSV9IWVNDUjJfUENfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDgwMDAgKi8NCg0KI2RlZmluZSBSSV9IWVNDUjJfUERfUG9zICAgICAgICAgICAgICAgICgxNlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSSV9IWVNDUjJfUERfTXNrICAgICAgICAgICAgICAgICgweEZGRkZVIDw8IFJJX0hZU0NSMl9QRF9Qb3MpICAgICAgICAgIC8qITwgMHhGRkZGMDAwMCAqLw0KI2RlZmluZSBSSV9IWVNDUjJfUEQgICAgICAgICAgICAgICAgICAgIFJJX0hZU0NSMl9QRF9Nc2sgICAgICAgICAgICAgICAgICAgICAgIC8qITwgUERbMTU6MF0gUG9ydCBEIEh5c3RlcmVzaXMgc2VsZWN0aW9uICovDQojZGVmaW5lIFJJX0hZU0NSMl9QRF8wICAgICAgICAgICAgICAgICAgKDB4MDAwMVUgPDwgUklfSFlTQ1IyX1BEX1BvcykgICAgICAgICAgLyohPCAweDAwMDEwMDAwICovDQojZGVmaW5lIFJJX0hZU0NSMl9QRF8xICAgICAgICAgICAgICAgICAgKDB4MDAwMlUgPDwgUklfSFlTQ1IyX1BEX1BvcykgICAgICAgICAgLyohPCAweDAwMDIwMDAwICovDQojZGVmaW5lIFJJX0hZU0NSMl9QRF8yICAgICAgICAgICAgICAgICAgKDB4MDAwNFUgPDwgUklfSFlTQ1IyX1BEX1BvcykgICAgICAgICAgLyohPCAweDAwMDQwMDAwICovDQojZGVmaW5lIFJJX0hZU0NSMl9QRF8zICAgICAgICAgICAgICAgICAgKDB4MDAwOFUgPDwgUklfSFlTQ1IyX1BEX1BvcykgICAgICAgICAgLyohPCAweDAwMDgwMDAwICovDQojZGVmaW5lIFJJX0hZU0NSMl9QRF80ICAgICAgICAgICAgICAgICAgKDB4MDAxMFUgPDwgUklfSFlTQ1IyX1BEX1BvcykgICAgICAgICAgLyohPCAweDAwMTAwMDAwICovDQojZGVmaW5lIFJJX0hZU0NSMl9QRF81ICAgICAgICAgICAgICAgICAgKDB4MDAyMFUgPDwgUklfSFlTQ1IyX1BEX1BvcykgICAgICAgICAgLyohPCAweDAwMjAwMDAwICovDQojZGVmaW5lIFJJX0hZU0NSMl9QRF82ICAgICAgICAgICAgICAgICAgKDB4MDA0MFUgPDwgUklfSFlTQ1IyX1BEX1BvcykgICAgICAgICAgLyohPCAweDAwNDAwMDAwICovDQojZGVmaW5lIFJJX0hZU0NSMl9QRF83ICAgICAgICAgICAgICAgICAgKDB4MDA4MFUgPDwgUklfSFlTQ1IyX1BEX1BvcykgICAgICAgICAgLyohPCAweDAwODAwMDAwICovDQojZGVmaW5lIFJJX0hZU0NSMl9QRF84ICAgICAgICAgICAgICAgICAgKDB4MDEwMFUgPDwgUklfSFlTQ1IyX1BEX1BvcykgICAgICAgICAgLyohPCAweDAxMDAwMDAwICovDQojZGVmaW5lIFJJX0hZU0NSMl9QRF85ICAgICAgICAgICAgICAgICAgKDB4MDIwMFUgPDwgUklfSFlTQ1IyX1BEX1BvcykgICAgICAgICAgLyohPCAweDAyMDAwMDAwICovDQojZGVmaW5lIFJJX0hZU0NSMl9QRF8xMCAgICAgICAgICAgICAgICAgKDB4MDQwMFUgPDwgUklfSFlTQ1IyX1BEX1BvcykgICAgICAgICAgLyohPCAweDA0MDAwMDAwICovDQojZGVmaW5lIFJJX0hZU0NSMl9QRF8xMSAgICAgICAgICAgICAgICAgKDB4MDgwMFUgPDwgUklfSFlTQ1IyX1BEX1BvcykgICAgICAgICAgLyohPCAweDA4MDAwMDAwICovDQojZGVmaW5lIFJJX0hZU0NSMl9QRF8xMiAgICAgICAgICAgICAgICAgKDB4MTAwMFUgPDwgUklfSFlTQ1IyX1BEX1BvcykgICAgICAgICAgLyohPCAweDEwMDAwMDAwICovDQojZGVmaW5lIFJJX0hZU0NSMl9QRF8xMyAgICAgICAgICAgICAgICAgKDB4MjAwMFUgPDwgUklfSFlTQ1IyX1BEX1BvcykgICAgICAgICAgLyohPCAweDIwMDAwMDAwICovDQojZGVmaW5lIFJJX0hZU0NSMl9QRF8xNCAgICAgICAgICAgICAgICAgKDB4NDAwMFUgPDwgUklfSFlTQ1IyX1BEX1BvcykgICAgICAgICAgLyohPCAweDQwMDAwMDAwICovDQojZGVmaW5lIFJJX0hZU0NSMl9QRF8xNSAgICAgICAgICAgICAgICAgKDB4ODAwMFUgPDwgUklfSFlTQ1IyX1BEX1BvcykgICAgICAgICAgLyohPCAweDgwMDAwMDAwICovDQoNCi8qKioqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFJJX0hZU0NSMyByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIFJJX0hZU0NSM19QRV9Qb3MgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJJX0hZU0NSM19QRV9Nc2sgICAgICAgICAgICAgICAgKDB4RkZGRlUgPDwgUklfSFlTQ1IzX1BFX1BvcykgICAgICAgICAgLyohPCAweDAwMDBGRkZGICovDQojZGVmaW5lIFJJX0hZU0NSM19QRSAgICAgICAgICAgICAgICAgICAgUklfSFlTQ1IzX1BFX01zayAgICAgICAgICAgICAgICAgICAgICAgLyohPCBQRVsxNTowXSBQb3J0IEUgSHlzdGVyZXNpcyBzZWxlY3Rpb24gKi8NCiNkZWZpbmUgUklfSFlTQ1IzX1BFXzAgICAgICAgICAgICAgICAgICAoMHgwMDAxVSA8PCBSSV9IWVNDUjNfUEVfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDAwMDEgKi8NCiNkZWZpbmUgUklfSFlTQ1IzX1BFXzEgICAgICAgICAgICAgICAgICAoMHgwMDAyVSA8PCBSSV9IWVNDUjNfUEVfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDAwMDIgKi8NCiNkZWZpbmUgUklfSFlTQ1IzX1BFXzIgICAgICAgICAgICAgICAgICAoMHgwMDA0VSA8PCBSSV9IWVNDUjNfUEVfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDAwMDQgKi8NCiNkZWZpbmUgUklfSFlTQ1IzX1BFXzMgICAgICAgICAgICAgICAgICAoMHgwMDA4VSA8PCBSSV9IWVNDUjNfUEVfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDAwMDggKi8NCiNkZWZpbmUgUklfSFlTQ1IzX1BFXzQgICAgICAgICAgICAgICAgICAoMHgwMDEwVSA8PCBSSV9IWVNDUjNfUEVfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDAwMTAgKi8NCiNkZWZpbmUgUklfSFlTQ1IzX1BFXzUgICAgICAgICAgICAgICAgICAoMHgwMDIwVSA8PCBSSV9IWVNDUjNfUEVfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDAwMjAgKi8NCiNkZWZpbmUgUklfSFlTQ1IzX1BFXzYgICAgICAgICAgICAgICAgICAoMHgwMDQwVSA8PCBSSV9IWVNDUjNfUEVfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDAwNDAgKi8NCiNkZWZpbmUgUklfSFlTQ1IzX1BFXzcgICAgICAgICAgICAgICAgICAoMHgwMDgwVSA8PCBSSV9IWVNDUjNfUEVfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDAwODAgKi8NCiNkZWZpbmUgUklfSFlTQ1IzX1BFXzggICAgICAgICAgICAgICAgICAoMHgwMTAwVSA8PCBSSV9IWVNDUjNfUEVfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDAxMDAgKi8NCiNkZWZpbmUgUklfSFlTQ1IzX1BFXzkgICAgICAgICAgICAgICAgICAoMHgwMjAwVSA8PCBSSV9IWVNDUjNfUEVfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDAyMDAgKi8NCiNkZWZpbmUgUklfSFlTQ1IzX1BFXzEwICAgICAgICAgICAgICAgICAoMHgwNDAwVSA8PCBSSV9IWVNDUjNfUEVfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDA0MDAgKi8NCiNkZWZpbmUgUklfSFlTQ1IzX1BFXzExICAgICAgICAgICAgICAgICAoMHgwODAwVSA8PCBSSV9IWVNDUjNfUEVfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDA4MDAgKi8NCiNkZWZpbmUgUklfSFlTQ1IzX1BFXzEyICAgICAgICAgICAgICAgICAoMHgxMDAwVSA8PCBSSV9IWVNDUjNfUEVfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDEwMDAgKi8NCiNkZWZpbmUgUklfSFlTQ1IzX1BFXzEzICAgICAgICAgICAgICAgICAoMHgyMDAwVSA8PCBSSV9IWVNDUjNfUEVfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDIwMDAgKi8NCiNkZWZpbmUgUklfSFlTQ1IzX1BFXzE0ICAgICAgICAgICAgICAgICAoMHg0MDAwVSA8PCBSSV9IWVNDUjNfUEVfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDQwMDAgKi8NCiNkZWZpbmUgUklfSFlTQ1IzX1BFXzE1ICAgICAgICAgICAgICAgICAoMHg4MDAwVSA8PCBSSV9IWVNDUjNfUEVfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDgwMDAgKi8NCiNkZWZpbmUgUklfSFlTQ1IzX1BGX1BvcyAgICAgICAgICAgICAgICAoMTZVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUklfSFlTQ1IzX1BGX01zayAgICAgICAgICAgICAgICAoMHhGRkZGVSA8PCBSSV9IWVNDUjNfUEZfUG9zKSAgICAgICAgICAvKiE8IDB4RkZGRjAwMDAgKi8NCiNkZWZpbmUgUklfSFlTQ1IzX1BGICAgICAgICAgICAgICAgICAgICBSSV9IWVNDUjNfUEZfTXNrICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBGWzE1OjBdIFBvcnQgRiBIeXN0ZXJlc2lzIHNlbGVjdGlvbiAqLw0KI2RlZmluZSBSSV9IWVNDUjNfUEZfMCAgICAgICAgICAgICAgICAgICgweDAwMDFVIDw8IFJJX0hZU0NSM19QRl9Qb3MpICAgICAgICAgIC8qITwgMHgwMDAxMDAwMCAqLw0KI2RlZmluZSBSSV9IWVNDUjNfUEZfMSAgICAgICAgICAgICAgICAgICgweDAwMDJVIDw8IFJJX0hZU0NSM19QRl9Qb3MpICAgICAgICAgIC8qITwgMHgwMDAyMDAwMCAqLw0KI2RlZmluZSBSSV9IWVNDUjNfUEZfMiAgICAgICAgICAgICAgICAgICgweDAwMDRVIDw8IFJJX0hZU0NSM19QRl9Qb3MpICAgICAgICAgIC8qITwgMHgwMDA0MDAwMCAqLw0KI2RlZmluZSBSSV9IWVNDUjNfUEZfMyAgICAgICAgICAgICAgICAgICgweDAwMDhVIDw8IFJJX0hZU0NSM19QRl9Qb3MpICAgICAgICAgIC8qITwgMHgwMDA4MDAwMCAqLw0KI2RlZmluZSBSSV9IWVNDUjNfUEZfNCAgICAgICAgICAgICAgICAgICgweDAwMTBVIDw8IFJJX0hZU0NSM19QRl9Qb3MpICAgICAgICAgIC8qITwgMHgwMDEwMDAwMCAqLw0KI2RlZmluZSBSSV9IWVNDUjNfUEZfNSAgICAgICAgICAgICAgICAgICgweDAwMjBVIDw8IFJJX0hZU0NSM19QRl9Qb3MpICAgICAgICAgIC8qITwgMHgwMDIwMDAwMCAqLw0KI2RlZmluZSBSSV9IWVNDUjNfUEZfNiAgICAgICAgICAgICAgICAgICgweDAwNDBVIDw8IFJJX0hZU0NSM19QRl9Qb3MpICAgICAgICAgIC8qITwgMHgwMDQwMDAwMCAqLw0KI2RlZmluZSBSSV9IWVNDUjNfUEZfNyAgICAgICAgICAgICAgICAgICgweDAwODBVIDw8IFJJX0hZU0NSM19QRl9Qb3MpICAgICAgICAgIC8qITwgMHgwMDgwMDAwMCAqLw0KI2RlZmluZSBSSV9IWVNDUjNfUEZfOCAgICAgICAgICAgICAgICAgICgweDAxMDBVIDw8IFJJX0hZU0NSM19QRl9Qb3MpICAgICAgICAgIC8qITwgMHgwMTAwMDAwMCAqLw0KI2RlZmluZSBSSV9IWVNDUjNfUEZfOSAgICAgICAgICAgICAgICAgICgweDAyMDBVIDw8IFJJX0hZU0NSM19QRl9Qb3MpICAgICAgICAgIC8qITwgMHgwMjAwMDAwMCAqLw0KI2RlZmluZSBSSV9IWVNDUjNfUEZfMTAgICAgICAgICAgICAgICAgICgweDA0MDBVIDw8IFJJX0hZU0NSM19QRl9Qb3MpICAgICAgICAgIC8qITwgMHgwNDAwMDAwMCAqLw0KI2RlZmluZSBSSV9IWVNDUjNfUEZfMTEgICAgICAgICAgICAgICAgICgweDA4MDBVIDw8IFJJX0hZU0NSM19QRl9Qb3MpICAgICAgICAgIC8qITwgMHgwODAwMDAwMCAqLw0KI2RlZmluZSBSSV9IWVNDUjNfUEZfMTIgICAgICAgICAgICAgICAgICgweDEwMDBVIDw8IFJJX0hZU0NSM19QRl9Qb3MpICAgICAgICAgIC8qITwgMHgxMDAwMDAwMCAqLw0KI2RlZmluZSBSSV9IWVNDUjNfUEZfMTMgICAgICAgICAgICAgICAgICgweDIwMDBVIDw8IFJJX0hZU0NSM19QRl9Qb3MpICAgICAgICAgIC8qITwgMHgyMDAwMDAwMCAqLw0KI2RlZmluZSBSSV9IWVNDUjNfUEZfMTQgICAgICAgICAgICAgICAgICgweDQwMDBVIDw8IFJJX0hZU0NSM19QRl9Qb3MpICAgICAgICAgIC8qITwgMHg0MDAwMDAwMCAqLw0KI2RlZmluZSBSSV9IWVNDUjNfUEZfMTUgICAgICAgICAgICAgICAgICgweDgwMDBVIDw8IFJJX0hZU0NSM19QRl9Qb3MpICAgICAgICAgIC8qITwgMHg4MDAwMDAwMCAqLw0KDQovKioqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBSSV9IWVNDUjQgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBSSV9IWVNDUjRfUEdfUG9zICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSSV9IWVNDUjRfUEdfTXNrICAgICAgICAgICAgICAgICgweEZGRkZVIDw8IFJJX0hZU0NSNF9QR19Qb3MpICAgICAgICAgIC8qITwgMHgwMDAwRkZGRiAqLw0KI2RlZmluZSBSSV9IWVNDUjRfUEcgICAgICAgICAgICAgICAgICAgIFJJX0hZU0NSNF9QR19Nc2sgICAgICAgICAgICAgICAgICAgICAgIC8qITwgUEdbMTU6MF0gUG9ydCBHIEh5c3RlcmVzaXMgc2VsZWN0aW9uICovDQojZGVmaW5lIFJJX0hZU0NSNF9QR18wICAgICAgICAgICAgICAgICAgKDB4MDAwMVUgPDwgUklfSFlTQ1I0X1BHX1BvcykgICAgICAgICAgLyohPCAweDAwMDAwMDAxICovDQojZGVmaW5lIFJJX0hZU0NSNF9QR18xICAgICAgICAgICAgICAgICAgKDB4MDAwMlUgPDwgUklfSFlTQ1I0X1BHX1BvcykgICAgICAgICAgLyohPCAweDAwMDAwMDAyICovDQojZGVmaW5lIFJJX0hZU0NSNF9QR18yICAgICAgICAgICAgICAgICAgKDB4MDAwNFUgPDwgUklfSFlTQ1I0X1BHX1BvcykgICAgICAgICAgLyohPCAweDAwMDAwMDA0ICovDQojZGVmaW5lIFJJX0hZU0NSNF9QR18zICAgICAgICAgICAgICAgICAgKDB4MDAwOFUgPDwgUklfSFlTQ1I0X1BHX1BvcykgICAgICAgICAgLyohPCAweDAwMDAwMDA4ICovDQojZGVmaW5lIFJJX0hZU0NSNF9QR180ICAgICAgICAgICAgICAgICAgKDB4MDAxMFUgPDwgUklfSFlTQ1I0X1BHX1BvcykgICAgICAgICAgLyohPCAweDAwMDAwMDEwICovDQojZGVmaW5lIFJJX0hZU0NSNF9QR181ICAgICAgICAgICAgICAgICAgKDB4MDAyMFUgPDwgUklfSFlTQ1I0X1BHX1BvcykgICAgICAgICAgLyohPCAweDAwMDAwMDIwICovDQojZGVmaW5lIFJJX0hZU0NSNF9QR182ICAgICAgICAgICAgICAgICAgKDB4MDA0MFUgPDwgUklfSFlTQ1I0X1BHX1BvcykgICAgICAgICAgLyohPCAweDAwMDAwMDQwICovDQojZGVmaW5lIFJJX0hZU0NSNF9QR183ICAgICAgICAgICAgICAgICAgKDB4MDA4MFUgPDwgUklfSFlTQ1I0X1BHX1BvcykgICAgICAgICAgLyohPCAweDAwMDAwMDgwICovDQojZGVmaW5lIFJJX0hZU0NSNF9QR184ICAgICAgICAgICAgICAgICAgKDB4MDEwMFUgPDwgUklfSFlTQ1I0X1BHX1BvcykgICAgICAgICAgLyohPCAweDAwMDAwMTAwICovDQojZGVmaW5lIFJJX0hZU0NSNF9QR185ICAgICAgICAgICAgICAgICAgKDB4MDIwMFUgPDwgUklfSFlTQ1I0X1BHX1BvcykgICAgICAgICAgLyohPCAweDAwMDAwMjAwICovDQojZGVmaW5lIFJJX0hZU0NSNF9QR18xMCAgICAgICAgICAgICAgICAgKDB4MDQwMFUgPDwgUklfSFlTQ1I0X1BHX1BvcykgICAgICAgICAgLyohPCAweDAwMDAwNDAwICovDQojZGVmaW5lIFJJX0hZU0NSNF9QR18xMSAgICAgICAgICAgICAgICAgKDB4MDgwMFUgPDwgUklfSFlTQ1I0X1BHX1BvcykgICAgICAgICAgLyohPCAweDAwMDAwODAwICovDQojZGVmaW5lIFJJX0hZU0NSNF9QR18xMiAgICAgICAgICAgICAgICAgKDB4MTAwMFUgPDwgUklfSFlTQ1I0X1BHX1BvcykgICAgICAgICAgLyohPCAweDAwMDAxMDAwICovDQojZGVmaW5lIFJJX0hZU0NSNF9QR18xMyAgICAgICAgICAgICAgICAgKDB4MjAwMFUgPDwgUklfSFlTQ1I0X1BHX1BvcykgICAgICAgICAgLyohPCAweDAwMDAyMDAwICovDQojZGVmaW5lIFJJX0hZU0NSNF9QR18xNCAgICAgICAgICAgICAgICAgKDB4NDAwMFUgPDwgUklfSFlTQ1I0X1BHX1BvcykgICAgICAgICAgLyohPCAweDAwMDA0MDAwICovDQojZGVmaW5lIFJJX0hZU0NSNF9QR18xNSAgICAgICAgICAgICAgICAgKDB4ODAwMFUgPDwgUklfSFlTQ1I0X1BHX1BvcykgICAgICAgICAgLyohPCAweDAwMDA4MDAwICovDQoNCi8qKioqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFJJX0FTTVIxIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgUklfQVNNUjFfUEFfUG9zICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUklfQVNNUjFfUEFfTXNrICAgICAgICAgICAgICAgICAoMHhGRkZGVSA8PCBSSV9BU01SMV9QQV9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMEZGRkYgKi8NCiNkZWZpbmUgUklfQVNNUjFfUEEgICAgICAgICAgICAgICAgICAgICBSSV9BU01SMV9QQV9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBBWzE1OjBdIFBvcnQgQSBzZWxlY3Rpb24qLw0KI2RlZmluZSBSSV9BU01SMV9QQV8wICAgICAgICAgICAgICAgICAgICgweDAwMDFVIDw8IFJJX0FTTVIxX1BBX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDAwMSAqLw0KI2RlZmluZSBSSV9BU01SMV9QQV8xICAgICAgICAgICAgICAgICAgICgweDAwMDJVIDw8IFJJX0FTTVIxX1BBX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDAwMiAqLw0KI2RlZmluZSBSSV9BU01SMV9QQV8yICAgICAgICAgICAgICAgICAgICgweDAwMDRVIDw8IFJJX0FTTVIxX1BBX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDAwNCAqLw0KI2RlZmluZSBSSV9BU01SMV9QQV8zICAgICAgICAgICAgICAgICAgICgweDAwMDhVIDw8IFJJX0FTTVIxX1BBX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDAwOCAqLw0KI2RlZmluZSBSSV9BU01SMV9QQV80ICAgICAgICAgICAgICAgICAgICgweDAwMTBVIDw8IFJJX0FTTVIxX1BBX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDAxMCAqLw0KI2RlZmluZSBSSV9BU01SMV9QQV81ICAgICAgICAgICAgICAgICAgICgweDAwMjBVIDw8IFJJX0FTTVIxX1BBX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDAyMCAqLw0KI2RlZmluZSBSSV9BU01SMV9QQV82ICAgICAgICAgICAgICAgICAgICgweDAwNDBVIDw8IFJJX0FTTVIxX1BBX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDA0MCAqLw0KI2RlZmluZSBSSV9BU01SMV9QQV83ICAgICAgICAgICAgICAgICAgICgweDAwODBVIDw8IFJJX0FTTVIxX1BBX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDA4MCAqLw0KI2RlZmluZSBSSV9BU01SMV9QQV84ICAgICAgICAgICAgICAgICAgICgweDAxMDBVIDw8IFJJX0FTTVIxX1BBX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDEwMCAqLw0KI2RlZmluZSBSSV9BU01SMV9QQV85ICAgICAgICAgICAgICAgICAgICgweDAyMDBVIDw8IFJJX0FTTVIxX1BBX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDIwMCAqLw0KI2RlZmluZSBSSV9BU01SMV9QQV8xMCAgICAgICAgICAgICAgICAgICgweDA0MDBVIDw8IFJJX0FTTVIxX1BBX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDQwMCAqLw0KI2RlZmluZSBSSV9BU01SMV9QQV8xMSAgICAgICAgICAgICAgICAgICgweDA4MDBVIDw8IFJJX0FTTVIxX1BBX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDgwMCAqLw0KI2RlZmluZSBSSV9BU01SMV9QQV8xMiAgICAgICAgICAgICAgICAgICgweDEwMDBVIDw8IFJJX0FTTVIxX1BBX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMTAwMCAqLw0KI2RlZmluZSBSSV9BU01SMV9QQV8xMyAgICAgICAgICAgICAgICAgICgweDIwMDBVIDw8IFJJX0FTTVIxX1BBX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMjAwMCAqLw0KI2RlZmluZSBSSV9BU01SMV9QQV8xNCAgICAgICAgICAgICAgICAgICgweDQwMDBVIDw8IFJJX0FTTVIxX1BBX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwNDAwMCAqLw0KI2RlZmluZSBSSV9BU01SMV9QQV8xNSAgICAgICAgICAgICAgICAgICgweDgwMDBVIDw8IFJJX0FTTVIxX1BBX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwODAwMCAqLw0KDQovKioqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBSSV9DTVIxIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgUklfQ01SMV9QQV9Qb3MgICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUklfQ01SMV9QQV9Nc2sgICAgICAgICAgICAgICAgICAoMHhGRkZGVSA8PCBSSV9DTVIxX1BBX1BvcykgICAgICAgICAgICAvKiE8IDB4MDAwMEZGRkYgKi8NCiNkZWZpbmUgUklfQ01SMV9QQSAgICAgICAgICAgICAgICAgICAgICBSSV9DTVIxX1BBX01zayAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBBWzE1OjBdIFBvcnQgQSBzZWxlY3Rpb24qLw0KI2RlZmluZSBSSV9DTVIxX1BBXzAgICAgICAgICAgICAgICAgICAgICgweDAwMDFVIDw8IFJJX0NNUjFfUEFfUG9zKSAgICAgICAgICAgIC8qITwgMHgwMDAwMDAwMSAqLw0KI2RlZmluZSBSSV9DTVIxX1BBXzEgICAgICAgICAgICAgICAgICAgICgweDAwMDJVIDw8IFJJX0NNUjFfUEFfUG9zKSAgICAgICAgICAgIC8qITwgMHgwMDAwMDAwMiAqLw0KI2RlZmluZSBSSV9DTVIxX1BBXzIgICAgICAgICAgICAgICAgICAgICgweDAwMDRVIDw8IFJJX0NNUjFfUEFfUG9zKSAgICAgICAgICAgIC8qITwgMHgwMDAwMDAwNCAqLw0KI2RlZmluZSBSSV9DTVIxX1BBXzMgICAgICAgICAgICAgICAgICAgICgweDAwMDhVIDw8IFJJX0NNUjFfUEFfUG9zKSAgICAgICAgICAgIC8qITwgMHgwMDAwMDAwOCAqLw0KI2RlZmluZSBSSV9DTVIxX1BBXzQgICAgICAgICAgICAgICAgICAgICgweDAwMTBVIDw8IFJJX0NNUjFfUEFfUG9zKSAgICAgICAgICAgIC8qITwgMHgwMDAwMDAxMCAqLw0KI2RlZmluZSBSSV9DTVIxX1BBXzUgICAgICAgICAgICAgICAgICAgICgweDAwMjBVIDw8IFJJX0NNUjFfUEFfUG9zKSAgICAgICAgICAgIC8qITwgMHgwMDAwMDAyMCAqLw0KI2RlZmluZSBSSV9DTVIxX1BBXzYgICAgICAgICAgICAgICAgICAgICgweDAwNDBVIDw8IFJJX0NNUjFfUEFfUG9zKSAgICAgICAgICAgIC8qITwgMHgwMDAwMDA0MCAqLw0KI2RlZmluZSBSSV9DTVIxX1BBXzcgICAgICAgICAgICAgICAgICAgICgweDAwODBVIDw8IFJJX0NNUjFfUEFfUG9zKSAgICAgICAgICAgIC8qITwgMHgwMDAwMDA4MCAqLw0KI2RlZmluZSBSSV9DTVIxX1BBXzggICAgICAgICAgICAgICAgICAgICgweDAxMDBVIDw8IFJJX0NNUjFfUEFfUG9zKSAgICAgICAgICAgIC8qITwgMHgwMDAwMDEwMCAqLw0KI2RlZmluZSBSSV9DTVIxX1BBXzkgICAgICAgICAgICAgICAgICAgICgweDAyMDBVIDw8IFJJX0NNUjFfUEFfUG9zKSAgICAgICAgICAgIC8qITwgMHgwMDAwMDIwMCAqLw0KI2RlZmluZSBSSV9DTVIxX1BBXzEwICAgICAgICAgICAgICAgICAgICgweDA0MDBVIDw8IFJJX0NNUjFfUEFfUG9zKSAgICAgICAgICAgIC8qITwgMHgwMDAwMDQwMCAqLw0KI2RlZmluZSBSSV9DTVIxX1BBXzExICAgICAgICAgICAgICAgICAgICgweDA4MDBVIDw8IFJJX0NNUjFfUEFfUG9zKSAgICAgICAgICAgIC8qITwgMHgwMDAwMDgwMCAqLw0KI2RlZmluZSBSSV9DTVIxX1BBXzEyICAgICAgICAgICAgICAgICAgICgweDEwMDBVIDw8IFJJX0NNUjFfUEFfUG9zKSAgICAgICAgICAgIC8qITwgMHgwMDAwMTAwMCAqLw0KI2RlZmluZSBSSV9DTVIxX1BBXzEzICAgICAgICAgICAgICAgICAgICgweDIwMDBVIDw8IFJJX0NNUjFfUEFfUG9zKSAgICAgICAgICAgIC8qITwgMHgwMDAwMjAwMCAqLw0KI2RlZmluZSBSSV9DTVIxX1BBXzE0ICAgICAgICAgICAgICAgICAgICgweDQwMDBVIDw8IFJJX0NNUjFfUEFfUG9zKSAgICAgICAgICAgIC8qITwgMHgwMDAwNDAwMCAqLw0KI2RlZmluZSBSSV9DTVIxX1BBXzE1ICAgICAgICAgICAgICAgICAgICgweDgwMDBVIDw8IFJJX0NNUjFfUEFfUG9zKSAgICAgICAgICAgIC8qITwgMHgwMDAwODAwMCAqLw0KDQovKioqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBSSV9DSUNSMSByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIFJJX0NJQ1IxX1BBX1BvcyAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJJX0NJQ1IxX1BBX01zayAgICAgICAgICAgICAgICAgKDB4RkZGRlUgPDwgUklfQ0lDUjFfUEFfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDBGRkZGICovDQojZGVmaW5lIFJJX0NJQ1IxX1BBICAgICAgICAgICAgICAgICAgICAgUklfQ0lDUjFfUEFfTXNrICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBQQVsxNTowXSBQb3J0IEEgc2VsZWN0aW9uKi8NCiNkZWZpbmUgUklfQ0lDUjFfUEFfMCAgICAgICAgICAgICAgICAgICAoMHgwMDAxVSA8PCBSSV9DSUNSMV9QQV9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDEgKi8NCiNkZWZpbmUgUklfQ0lDUjFfUEFfMSAgICAgICAgICAgICAgICAgICAoMHgwMDAyVSA8PCBSSV9DSUNSMV9QQV9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDIgKi8NCiNkZWZpbmUgUklfQ0lDUjFfUEFfMiAgICAgICAgICAgICAgICAgICAoMHgwMDA0VSA8PCBSSV9DSUNSMV9QQV9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDQgKi8NCiNkZWZpbmUgUklfQ0lDUjFfUEFfMyAgICAgICAgICAgICAgICAgICAoMHgwMDA4VSA8PCBSSV9DSUNSMV9QQV9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDggKi8NCiNkZWZpbmUgUklfQ0lDUjFfUEFfNCAgICAgICAgICAgICAgICAgICAoMHgwMDEwVSA8PCBSSV9DSUNSMV9QQV9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDAwMTAgKi8NCiNkZWZpbmUgUklfQ0lDUjFfUEFfNSAgICAgICAgICAgICAgICAgICAoMHgwMDIwVSA8PCBSSV9DSUNSMV9QQV9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDAwMjAgKi8NCiNkZWZpbmUgUklfQ0lDUjFfUEFfNiAgICAgICAgICAgICAgICAgICAoMHgwMDQwVSA8PCBSSV9DSUNSMV9QQV9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDAwNDAgKi8NCiNkZWZpbmUgUklfQ0lDUjFfUEFfNyAgICAgICAgICAgICAgICAgICAoMHgwMDgwVSA8PCBSSV9DSUNSMV9QQV9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDAwODAgKi8NCiNkZWZpbmUgUklfQ0lDUjFfUEFfOCAgICAgICAgICAgICAgICAgICAoMHgwMTAwVSA8PCBSSV9DSUNSMV9QQV9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDAxMDAgKi8NCiNkZWZpbmUgUklfQ0lDUjFfUEFfOSAgICAgICAgICAgICAgICAgICAoMHgwMjAwVSA8PCBSSV9DSUNSMV9QQV9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDAyMDAgKi8NCiNkZWZpbmUgUklfQ0lDUjFfUEFfMTAgICAgICAgICAgICAgICAgICAoMHgwNDAwVSA8PCBSSV9DSUNSMV9QQV9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDA0MDAgKi8NCiNkZWZpbmUgUklfQ0lDUjFfUEFfMTEgICAgICAgICAgICAgICAgICAoMHgwODAwVSA8PCBSSV9DSUNSMV9QQV9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDA4MDAgKi8NCiNkZWZpbmUgUklfQ0lDUjFfUEFfMTIgICAgICAgICAgICAgICAgICAoMHgxMDAwVSA8PCBSSV9DSUNSMV9QQV9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDEwMDAgKi8NCiNkZWZpbmUgUklfQ0lDUjFfUEFfMTMgICAgICAgICAgICAgICAgICAoMHgyMDAwVSA8PCBSSV9DSUNSMV9QQV9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDIwMDAgKi8NCiNkZWZpbmUgUklfQ0lDUjFfUEFfMTQgICAgICAgICAgICAgICAgICAoMHg0MDAwVSA8PCBSSV9DSUNSMV9QQV9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDQwMDAgKi8NCiNkZWZpbmUgUklfQ0lDUjFfUEFfMTUgICAgICAgICAgICAgICAgICAoMHg4MDAwVSA8PCBSSV9DSUNSMV9QQV9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDgwMDAgKi8NCg0KLyoqKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgUklfQVNNUjIgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBSSV9BU01SMl9QQl9Qb3MgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSSV9BU01SMl9QQl9Nc2sgICAgICAgICAgICAgICAgICgweEZGRkZVIDw8IFJJX0FTTVIyX1BCX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwRkZGRiAqLw0KI2RlZmluZSBSSV9BU01SMl9QQiAgICAgICAgICAgICAgICAgICAgIFJJX0FTTVIyX1BCX01zayAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgUEJbMTU6MF0gUG9ydCBCIHNlbGVjdGlvbiAqLw0KI2RlZmluZSBSSV9BU01SMl9QQl8wICAgICAgICAgICAgICAgICAgICgweDAwMDFVIDw8IFJJX0FTTVIyX1BCX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDAwMSAqLw0KI2RlZmluZSBSSV9BU01SMl9QQl8xICAgICAgICAgICAgICAgICAgICgweDAwMDJVIDw8IFJJX0FTTVIyX1BCX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDAwMiAqLw0KI2RlZmluZSBSSV9BU01SMl9QQl8yICAgICAgICAgICAgICAgICAgICgweDAwMDRVIDw8IFJJX0FTTVIyX1BCX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDAwNCAqLw0KI2RlZmluZSBSSV9BU01SMl9QQl8zICAgICAgICAgICAgICAgICAgICgweDAwMDhVIDw8IFJJX0FTTVIyX1BCX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDAwOCAqLw0KI2RlZmluZSBSSV9BU01SMl9QQl80ICAgICAgICAgICAgICAgICAgICgweDAwMTBVIDw8IFJJX0FTTVIyX1BCX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDAxMCAqLw0KI2RlZmluZSBSSV9BU01SMl9QQl81ICAgICAgICAgICAgICAgICAgICgweDAwMjBVIDw8IFJJX0FTTVIyX1BCX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDAyMCAqLw0KI2RlZmluZSBSSV9BU01SMl9QQl82ICAgICAgICAgICAgICAgICAgICgweDAwNDBVIDw8IFJJX0FTTVIyX1BCX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDA0MCAqLw0KI2RlZmluZSBSSV9BU01SMl9QQl83ICAgICAgICAgICAgICAgICAgICgweDAwODBVIDw8IFJJX0FTTVIyX1BCX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDA4MCAqLw0KI2RlZmluZSBSSV9BU01SMl9QQl84ICAgICAgICAgICAgICAgICAgICgweDAxMDBVIDw8IFJJX0FTTVIyX1BCX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDEwMCAqLw0KI2RlZmluZSBSSV9BU01SMl9QQl85ICAgICAgICAgICAgICAgICAgICgweDAyMDBVIDw8IFJJX0FTTVIyX1BCX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDIwMCAqLw0KI2RlZmluZSBSSV9BU01SMl9QQl8xMCAgICAgICAgICAgICAgICAgICgweDA0MDBVIDw8IFJJX0FTTVIyX1BCX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDQwMCAqLw0KI2RlZmluZSBSSV9BU01SMl9QQl8xMSAgICAgICAgICAgICAgICAgICgweDA4MDBVIDw8IFJJX0FTTVIyX1BCX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDgwMCAqLw0KI2RlZmluZSBSSV9BU01SMl9QQl8xMiAgICAgICAgICAgICAgICAgICgweDEwMDBVIDw8IFJJX0FTTVIyX1BCX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMTAwMCAqLw0KI2RlZmluZSBSSV9BU01SMl9QQl8xMyAgICAgICAgICAgICAgICAgICgweDIwMDBVIDw8IFJJX0FTTVIyX1BCX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMjAwMCAqLw0KI2RlZmluZSBSSV9BU01SMl9QQl8xNCAgICAgICAgICAgICAgICAgICgweDQwMDBVIDw8IFJJX0FTTVIyX1BCX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwNDAwMCAqLw0KI2RlZmluZSBSSV9BU01SMl9QQl8xNSAgICAgICAgICAgICAgICAgICgweDgwMDBVIDw8IFJJX0FTTVIyX1BCX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwODAwMCAqLw0KDQovKioqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBSSV9DTVIyIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgUklfQ01SMl9QQl9Qb3MgICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUklfQ01SMl9QQl9Nc2sgICAgICAgICAgICAgICAgICAoMHhGRkZGVSA8PCBSSV9DTVIyX1BCX1BvcykgICAgICAgICAgICAvKiE8IDB4MDAwMEZGRkYgKi8NCiNkZWZpbmUgUklfQ01SMl9QQiAgICAgICAgICAgICAgICAgICAgICBSSV9DTVIyX1BCX01zayAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBCWzE1OjBdIFBvcnQgQiBzZWxlY3Rpb24gKi8NCiNkZWZpbmUgUklfQ01SMl9QQl8wICAgICAgICAgICAgICAgICAgICAoMHgwMDAxVSA8PCBSSV9DTVIyX1BCX1BvcykgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDEgKi8NCiNkZWZpbmUgUklfQ01SMl9QQl8xICAgICAgICAgICAgICAgICAgICAoMHgwMDAyVSA8PCBSSV9DTVIyX1BCX1BvcykgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDIgKi8NCiNkZWZpbmUgUklfQ01SMl9QQl8yICAgICAgICAgICAgICAgICAgICAoMHgwMDA0VSA8PCBSSV9DTVIyX1BCX1BvcykgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDQgKi8NCiNkZWZpbmUgUklfQ01SMl9QQl8zICAgICAgICAgICAgICAgICAgICAoMHgwMDA4VSA8PCBSSV9DTVIyX1BCX1BvcykgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDggKi8NCiNkZWZpbmUgUklfQ01SMl9QQl80ICAgICAgICAgICAgICAgICAgICAoMHgwMDEwVSA8PCBSSV9DTVIyX1BCX1BvcykgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMTAgKi8NCiNkZWZpbmUgUklfQ01SMl9QQl81ICAgICAgICAgICAgICAgICAgICAoMHgwMDIwVSA8PCBSSV9DTVIyX1BCX1BvcykgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMjAgKi8NCiNkZWZpbmUgUklfQ01SMl9QQl82ICAgICAgICAgICAgICAgICAgICAoMHgwMDQwVSA8PCBSSV9DTVIyX1BCX1BvcykgICAgICAgICAgICAvKiE8IDB4MDAwMDAwNDAgKi8NCiNkZWZpbmUgUklfQ01SMl9QQl83ICAgICAgICAgICAgICAgICAgICAoMHgwMDgwVSA8PCBSSV9DTVIyX1BCX1BvcykgICAgICAgICAgICAvKiE8IDB4MDAwMDAwODAgKi8NCiNkZWZpbmUgUklfQ01SMl9QQl84ICAgICAgICAgICAgICAgICAgICAoMHgwMTAwVSA8PCBSSV9DTVIyX1BCX1BvcykgICAgICAgICAgICAvKiE8IDB4MDAwMDAxMDAgKi8NCiNkZWZpbmUgUklfQ01SMl9QQl85ICAgICAgICAgICAgICAgICAgICAoMHgwMjAwVSA8PCBSSV9DTVIyX1BCX1BvcykgICAgICAgICAgICAvKiE8IDB4MDAwMDAyMDAgKi8NCiNkZWZpbmUgUklfQ01SMl9QQl8xMCAgICAgICAgICAgICAgICAgICAoMHgwNDAwVSA8PCBSSV9DTVIyX1BCX1BvcykgICAgICAgICAgICAvKiE8IDB4MDAwMDA0MDAgKi8NCiNkZWZpbmUgUklfQ01SMl9QQl8xMSAgICAgICAgICAgICAgICAgICAoMHgwODAwVSA8PCBSSV9DTVIyX1BCX1BvcykgICAgICAgICAgICAvKiE8IDB4MDAwMDA4MDAgKi8NCiNkZWZpbmUgUklfQ01SMl9QQl8xMiAgICAgICAgICAgICAgICAgICAoMHgxMDAwVSA8PCBSSV9DTVIyX1BCX1BvcykgICAgICAgICAgICAvKiE8IDB4MDAwMDEwMDAgKi8NCiNkZWZpbmUgUklfQ01SMl9QQl8xMyAgICAgICAgICAgICAgICAgICAoMHgyMDAwVSA8PCBSSV9DTVIyX1BCX1BvcykgICAgICAgICAgICAvKiE8IDB4MDAwMDIwMDAgKi8NCiNkZWZpbmUgUklfQ01SMl9QQl8xNCAgICAgICAgICAgICAgICAgICAoMHg0MDAwVSA8PCBSSV9DTVIyX1BCX1BvcykgICAgICAgICAgICAvKiE8IDB4MDAwMDQwMDAgKi8NCiNkZWZpbmUgUklfQ01SMl9QQl8xNSAgICAgICAgICAgICAgICAgICAoMHg4MDAwVSA8PCBSSV9DTVIyX1BCX1BvcykgICAgICAgICAgICAvKiE8IDB4MDAwMDgwMDAgKi8NCg0KLyoqKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgUklfQ0lDUjIgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBSSV9DSUNSMl9QQl9Qb3MgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSSV9DSUNSMl9QQl9Nc2sgICAgICAgICAgICAgICAgICgweEZGRkZVIDw8IFJJX0NJQ1IyX1BCX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwRkZGRiAqLw0KI2RlZmluZSBSSV9DSUNSMl9QQiAgICAgICAgICAgICAgICAgICAgIFJJX0NJQ1IyX1BCX01zayAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgUEJbMTU6MF0gUG9ydCBCIHNlbGVjdGlvbiAqLw0KI2RlZmluZSBSSV9DSUNSMl9QQl8wICAgICAgICAgICAgICAgICAgICgweDAwMDFVIDw8IFJJX0NJQ1IyX1BCX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDAwMSAqLw0KI2RlZmluZSBSSV9DSUNSMl9QQl8xICAgICAgICAgICAgICAgICAgICgweDAwMDJVIDw8IFJJX0NJQ1IyX1BCX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDAwMiAqLw0KI2RlZmluZSBSSV9DSUNSMl9QQl8yICAgICAgICAgICAgICAgICAgICgweDAwMDRVIDw8IFJJX0NJQ1IyX1BCX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDAwNCAqLw0KI2RlZmluZSBSSV9DSUNSMl9QQl8zICAgICAgICAgICAgICAgICAgICgweDAwMDhVIDw8IFJJX0NJQ1IyX1BCX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDAwOCAqLw0KI2RlZmluZSBSSV9DSUNSMl9QQl80ICAgICAgICAgICAgICAgICAgICgweDAwMTBVIDw8IFJJX0NJQ1IyX1BCX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDAxMCAqLw0KI2RlZmluZSBSSV9DSUNSMl9QQl81ICAgICAgICAgICAgICAgICAgICgweDAwMjBVIDw8IFJJX0NJQ1IyX1BCX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDAyMCAqLw0KI2RlZmluZSBSSV9DSUNSMl9QQl82ICAgICAgICAgICAgICAgICAgICgweDAwNDBVIDw8IFJJX0NJQ1IyX1BCX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDA0MCAqLw0KI2RlZmluZSBSSV9DSUNSMl9QQl83ICAgICAgICAgICAgICAgICAgICgweDAwODBVIDw8IFJJX0NJQ1IyX1BCX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDA4MCAqLw0KI2RlZmluZSBSSV9DSUNSMl9QQl84ICAgICAgICAgICAgICAgICAgICgweDAxMDBVIDw8IFJJX0NJQ1IyX1BCX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDEwMCAqLw0KI2RlZmluZSBSSV9DSUNSMl9QQl85ICAgICAgICAgICAgICAgICAgICgweDAyMDBVIDw8IFJJX0NJQ1IyX1BCX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDIwMCAqLw0KI2RlZmluZSBSSV9DSUNSMl9QQl8xMCAgICAgICAgICAgICAgICAgICgweDA0MDBVIDw8IFJJX0NJQ1IyX1BCX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDQwMCAqLw0KI2RlZmluZSBSSV9DSUNSMl9QQl8xMSAgICAgICAgICAgICAgICAgICgweDA4MDBVIDw8IFJJX0NJQ1IyX1BCX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDgwMCAqLw0KI2RlZmluZSBSSV9DSUNSMl9QQl8xMiAgICAgICAgICAgICAgICAgICgweDEwMDBVIDw8IFJJX0NJQ1IyX1BCX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMTAwMCAqLw0KI2RlZmluZSBSSV9DSUNSMl9QQl8xMyAgICAgICAgICAgICAgICAgICgweDIwMDBVIDw8IFJJX0NJQ1IyX1BCX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMjAwMCAqLw0KI2RlZmluZSBSSV9DSUNSMl9QQl8xNCAgICAgICAgICAgICAgICAgICgweDQwMDBVIDw8IFJJX0NJQ1IyX1BCX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwNDAwMCAqLw0KI2RlZmluZSBSSV9DSUNSMl9QQl8xNSAgICAgICAgICAgICAgICAgICgweDgwMDBVIDw8IFJJX0NJQ1IyX1BCX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwODAwMCAqLw0KDQovKioqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBSSV9BU01SMyByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIFJJX0FTTVIzX1BDX1BvcyAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJJX0FTTVIzX1BDX01zayAgICAgICAgICAgICAgICAgKDB4RkZGRlUgPDwgUklfQVNNUjNfUENfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDBGRkZGICovDQojZGVmaW5lIFJJX0FTTVIzX1BDICAgICAgICAgICAgICAgICAgICAgUklfQVNNUjNfUENfTXNrICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBQQ1sxNTowXSBQb3J0IEMgc2VsZWN0aW9uICovDQojZGVmaW5lIFJJX0FTTVIzX1BDXzAgICAgICAgICAgICAgICAgICAgKDB4MDAwMVUgPDwgUklfQVNNUjNfUENfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwMDAxICovDQojZGVmaW5lIFJJX0FTTVIzX1BDXzEgICAgICAgICAgICAgICAgICAgKDB4MDAwMlUgPDwgUklfQVNNUjNfUENfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwMDAyICovDQojZGVmaW5lIFJJX0FTTVIzX1BDXzIgICAgICAgICAgICAgICAgICAgKDB4MDAwNFUgPDwgUklfQVNNUjNfUENfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwMDA0ICovDQojZGVmaW5lIFJJX0FTTVIzX1BDXzMgICAgICAgICAgICAgICAgICAgKDB4MDAwOFUgPDwgUklfQVNNUjNfUENfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwMDA4ICovDQojZGVmaW5lIFJJX0FTTVIzX1BDXzQgICAgICAgICAgICAgICAgICAgKDB4MDAxMFUgPDwgUklfQVNNUjNfUENfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwMDEwICovDQojZGVmaW5lIFJJX0FTTVIzX1BDXzUgICAgICAgICAgICAgICAgICAgKDB4MDAyMFUgPDwgUklfQVNNUjNfUENfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwMDIwICovDQojZGVmaW5lIFJJX0FTTVIzX1BDXzYgICAgICAgICAgICAgICAgICAgKDB4MDA0MFUgPDwgUklfQVNNUjNfUENfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwMDQwICovDQojZGVmaW5lIFJJX0FTTVIzX1BDXzcgICAgICAgICAgICAgICAgICAgKDB4MDA4MFUgPDwgUklfQVNNUjNfUENfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwMDgwICovDQojZGVmaW5lIFJJX0FTTVIzX1BDXzggICAgICAgICAgICAgICAgICAgKDB4MDEwMFUgPDwgUklfQVNNUjNfUENfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwMTAwICovDQojZGVmaW5lIFJJX0FTTVIzX1BDXzkgICAgICAgICAgICAgICAgICAgKDB4MDIwMFUgPDwgUklfQVNNUjNfUENfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwMjAwICovDQojZGVmaW5lIFJJX0FTTVIzX1BDXzEwICAgICAgICAgICAgICAgICAgKDB4MDQwMFUgPDwgUklfQVNNUjNfUENfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwNDAwICovDQojZGVmaW5lIFJJX0FTTVIzX1BDXzExICAgICAgICAgICAgICAgICAgKDB4MDgwMFUgPDwgUklfQVNNUjNfUENfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwODAwICovDQojZGVmaW5lIFJJX0FTTVIzX1BDXzEyICAgICAgICAgICAgICAgICAgKDB4MTAwMFUgPDwgUklfQVNNUjNfUENfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAxMDAwICovDQojZGVmaW5lIFJJX0FTTVIzX1BDXzEzICAgICAgICAgICAgICAgICAgKDB4MjAwMFUgPDwgUklfQVNNUjNfUENfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAyMDAwICovDQojZGVmaW5lIFJJX0FTTVIzX1BDXzE0ICAgICAgICAgICAgICAgICAgKDB4NDAwMFUgPDwgUklfQVNNUjNfUENfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDA0MDAwICovDQojZGVmaW5lIFJJX0FTTVIzX1BDXzE1ICAgICAgICAgICAgICAgICAgKDB4ODAwMFUgPDwgUklfQVNNUjNfUENfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDA4MDAwICovDQoNCi8qKioqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFJJX0NNUjMgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBSSV9DTVIzX1BDX1BvcyAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSSV9DTVIzX1BDX01zayAgICAgICAgICAgICAgICAgICgweEZGRkZVIDw8IFJJX0NNUjNfUENfUG9zKSAgICAgICAgICAgIC8qITwgMHgwMDAwRkZGRiAqLw0KI2RlZmluZSBSSV9DTVIzX1BDICAgICAgICAgICAgICAgICAgICAgIFJJX0NNUjNfUENfTXNrICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgUENbMTU6MF0gUG9ydCBDIHNlbGVjdGlvbiAqLw0KI2RlZmluZSBSSV9DTVIzX1BDXzAgICAgICAgICAgICAgICAgICAgICgweDAwMDFVIDw8IFJJX0NNUjNfUENfUG9zKSAgICAgICAgICAgIC8qITwgMHgwMDAwMDAwMSAqLw0KI2RlZmluZSBSSV9DTVIzX1BDXzEgICAgICAgICAgICAgICAgICAgICgweDAwMDJVIDw8IFJJX0NNUjNfUENfUG9zKSAgICAgICAgICAgIC8qITwgMHgwMDAwMDAwMiAqLw0KI2RlZmluZSBSSV9DTVIzX1BDXzIgICAgICAgICAgICAgICAgICAgICgweDAwMDRVIDw8IFJJX0NNUjNfUENfUG9zKSAgICAgICAgICAgIC8qITwgMHgwMDAwMDAwNCAqLw0KI2RlZmluZSBSSV9DTVIzX1BDXzMgICAgICAgICAgICAgICAgICAgICgweDAwMDhVIDw8IFJJX0NNUjNfUENfUG9zKSAgICAgICAgICAgIC8qITwgMHgwMDAwMDAwOCAqLw0KI2RlZmluZSBSSV9DTVIzX1BDXzQgICAgICAgICAgICAgICAgICAgICgweDAwMTBVIDw8IFJJX0NNUjNfUENfUG9zKSAgICAgICAgICAgIC8qITwgMHgwMDAwMDAxMCAqLw0KI2RlZmluZSBSSV9DTVIzX1BDXzUgICAgICAgICAgICAgICAgICAgICgweDAwMjBVIDw8IFJJX0NNUjNfUENfUG9zKSAgICAgICAgICAgIC8qITwgMHgwMDAwMDAyMCAqLw0KI2RlZmluZSBSSV9DTVIzX1BDXzYgICAgICAgICAgICAgICAgICAgICgweDAwNDBVIDw8IFJJX0NNUjNfUENfUG9zKSAgICAgICAgICAgIC8qITwgMHgwMDAwMDA0MCAqLw0KI2RlZmluZSBSSV9DTVIzX1BDXzcgICAgICAgICAgICAgICAgICAgICgweDAwODBVIDw8IFJJX0NNUjNfUENfUG9zKSAgICAgICAgICAgIC8qITwgMHgwMDAwMDA4MCAqLw0KI2RlZmluZSBSSV9DTVIzX1BDXzggICAgICAgICAgICAgICAgICAgICgweDAxMDBVIDw8IFJJX0NNUjNfUENfUG9zKSAgICAgICAgICAgIC8qITwgMHgwMDAwMDEwMCAqLw0KI2RlZmluZSBSSV9DTVIzX1BDXzkgICAgICAgICAgICAgICAgICAgICgweDAyMDBVIDw8IFJJX0NNUjNfUENfUG9zKSAgICAgICAgICAgIC8qITwgMHgwMDAwMDIwMCAqLw0KI2RlZmluZSBSSV9DTVIzX1BDXzEwICAgICAgICAgICAgICAgICAgICgweDA0MDBVIDw8IFJJX0NNUjNfUENfUG9zKSAgICAgICAgICAgIC8qITwgMHgwMDAwMDQwMCAqLw0KI2RlZmluZSBSSV9DTVIzX1BDXzExICAgICAgICAgICAgICAgICAgICgweDA4MDBVIDw8IFJJX0NNUjNfUENfUG9zKSAgICAgICAgICAgIC8qITwgMHgwMDAwMDgwMCAqLw0KI2RlZmluZSBSSV9DTVIzX1BDXzEyICAgICAgICAgICAgICAgICAgICgweDEwMDBVIDw8IFJJX0NNUjNfUENfUG9zKSAgICAgICAgICAgIC8qITwgMHgwMDAwMTAwMCAqLw0KI2RlZmluZSBSSV9DTVIzX1BDXzEzICAgICAgICAgICAgICAgICAgICgweDIwMDBVIDw8IFJJX0NNUjNfUENfUG9zKSAgICAgICAgICAgIC8qITwgMHgwMDAwMjAwMCAqLw0KI2RlZmluZSBSSV9DTVIzX1BDXzE0ICAgICAgICAgICAgICAgICAgICgweDQwMDBVIDw8IFJJX0NNUjNfUENfUG9zKSAgICAgICAgICAgIC8qITwgMHgwMDAwNDAwMCAqLw0KI2RlZmluZSBSSV9DTVIzX1BDXzE1ICAgICAgICAgICAgICAgICAgICgweDgwMDBVIDw8IFJJX0NNUjNfUENfUG9zKSAgICAgICAgICAgIC8qITwgMHgwMDAwODAwMCAqLw0KDQovKioqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBSSV9DSUNSMyByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIFJJX0NJQ1IzX1BDX1BvcyAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJJX0NJQ1IzX1BDX01zayAgICAgICAgICAgICAgICAgKDB4RkZGRlUgPDwgUklfQ0lDUjNfUENfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDBGRkZGICovDQojZGVmaW5lIFJJX0NJQ1IzX1BDICAgICAgICAgICAgICAgICAgICAgUklfQ0lDUjNfUENfTXNrICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBQQ1sxNTowXSBQb3J0IEMgc2VsZWN0aW9uICovDQojZGVmaW5lIFJJX0NJQ1IzX1BDXzAgICAgICAgICAgICAgICAgICAgKDB4MDAwMVUgPDwgUklfQ0lDUjNfUENfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwMDAxICovDQojZGVmaW5lIFJJX0NJQ1IzX1BDXzEgICAgICAgICAgICAgICAgICAgKDB4MDAwMlUgPDwgUklfQ0lDUjNfUENfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwMDAyICovDQojZGVmaW5lIFJJX0NJQ1IzX1BDXzIgICAgICAgICAgICAgICAgICAgKDB4MDAwNFUgPDwgUklfQ0lDUjNfUENfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwMDA0ICovDQojZGVmaW5lIFJJX0NJQ1IzX1BDXzMgICAgICAgICAgICAgICAgICAgKDB4MDAwOFUgPDwgUklfQ0lDUjNfUENfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwMDA4ICovDQojZGVmaW5lIFJJX0NJQ1IzX1BDXzQgICAgICAgICAgICAgICAgICAgKDB4MDAxMFUgPDwgUklfQ0lDUjNfUENfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwMDEwICovDQojZGVmaW5lIFJJX0NJQ1IzX1BDXzUgICAgICAgICAgICAgICAgICAgKDB4MDAyMFUgPDwgUklfQ0lDUjNfUENfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwMDIwICovDQojZGVmaW5lIFJJX0NJQ1IzX1BDXzYgICAgICAgICAgICAgICAgICAgKDB4MDA0MFUgPDwgUklfQ0lDUjNfUENfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwMDQwICovDQojZGVmaW5lIFJJX0NJQ1IzX1BDXzcgICAgICAgICAgICAgICAgICAgKDB4MDA4MFUgPDwgUklfQ0lDUjNfUENfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwMDgwICovDQojZGVmaW5lIFJJX0NJQ1IzX1BDXzggICAgICAgICAgICAgICAgICAgKDB4MDEwMFUgPDwgUklfQ0lDUjNfUENfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwMTAwICovDQojZGVmaW5lIFJJX0NJQ1IzX1BDXzkgICAgICAgICAgICAgICAgICAgKDB4MDIwMFUgPDwgUklfQ0lDUjNfUENfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwMjAwICovDQojZGVmaW5lIFJJX0NJQ1IzX1BDXzEwICAgICAgICAgICAgICAgICAgKDB4MDQwMFUgPDwgUklfQ0lDUjNfUENfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwNDAwICovDQojZGVmaW5lIFJJX0NJQ1IzX1BDXzExICAgICAgICAgICAgICAgICAgKDB4MDgwMFUgPDwgUklfQ0lDUjNfUENfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwODAwICovDQojZGVmaW5lIFJJX0NJQ1IzX1BDXzEyICAgICAgICAgICAgICAgICAgKDB4MTAwMFUgPDwgUklfQ0lDUjNfUENfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAxMDAwICovDQojZGVmaW5lIFJJX0NJQ1IzX1BDXzEzICAgICAgICAgICAgICAgICAgKDB4MjAwMFUgPDwgUklfQ0lDUjNfUENfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAyMDAwICovDQojZGVmaW5lIFJJX0NJQ1IzX1BDXzE0ICAgICAgICAgICAgICAgICAgKDB4NDAwMFUgPDwgUklfQ0lDUjNfUENfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDA0MDAwICovDQojZGVmaW5lIFJJX0NJQ1IzX1BDXzE1ICAgICAgICAgICAgICAgICAgKDB4ODAwMFUgPDwgUklfQ0lDUjNfUENfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDA4MDAwICovDQoNCi8qKioqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFJJX0FTTVI0IHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgUklfQVNNUjRfUEZfUG9zICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUklfQVNNUjRfUEZfTXNrICAgICAgICAgICAgICAgICAoMHhGRkZGVSA8PCBSSV9BU01SNF9QRl9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMEZGRkYgKi8NCiNkZWZpbmUgUklfQVNNUjRfUEYgICAgICAgICAgICAgICAgICAgICBSSV9BU01SNF9QRl9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBGWzE1OjBdIFBvcnQgRiBzZWxlY3Rpb24gKi8NCiNkZWZpbmUgUklfQVNNUjRfUEZfMCAgICAgICAgICAgICAgICAgICAoMHgwMDAxVSA8PCBSSV9BU01SNF9QRl9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDEgKi8NCiNkZWZpbmUgUklfQVNNUjRfUEZfMSAgICAgICAgICAgICAgICAgICAoMHgwMDAyVSA8PCBSSV9BU01SNF9QRl9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDIgKi8NCiNkZWZpbmUgUklfQVNNUjRfUEZfMiAgICAgICAgICAgICAgICAgICAoMHgwMDA0VSA8PCBSSV9BU01SNF9QRl9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDQgKi8NCiNkZWZpbmUgUklfQVNNUjRfUEZfMyAgICAgICAgICAgICAgICAgICAoMHgwMDA4VSA8PCBSSV9BU01SNF9QRl9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDggKi8NCiNkZWZpbmUgUklfQVNNUjRfUEZfNCAgICAgICAgICAgICAgICAgICAoMHgwMDEwVSA8PCBSSV9BU01SNF9QRl9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDAwMTAgKi8NCiNkZWZpbmUgUklfQVNNUjRfUEZfNSAgICAgICAgICAgICAgICAgICAoMHgwMDIwVSA8PCBSSV9BU01SNF9QRl9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDAwMjAgKi8NCiNkZWZpbmUgUklfQVNNUjRfUEZfNiAgICAgICAgICAgICAgICAgICAoMHgwMDQwVSA8PCBSSV9BU01SNF9QRl9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDAwNDAgKi8NCiNkZWZpbmUgUklfQVNNUjRfUEZfNyAgICAgICAgICAgICAgICAgICAoMHgwMDgwVSA8PCBSSV9BU01SNF9QRl9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDAwODAgKi8NCiNkZWZpbmUgUklfQVNNUjRfUEZfOCAgICAgICAgICAgICAgICAgICAoMHgwMTAwVSA8PCBSSV9BU01SNF9QRl9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDAxMDAgKi8NCiNkZWZpbmUgUklfQVNNUjRfUEZfOSAgICAgICAgICAgICAgICAgICAoMHgwMjAwVSA8PCBSSV9BU01SNF9QRl9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDAyMDAgKi8NCiNkZWZpbmUgUklfQVNNUjRfUEZfMTAgICAgICAgICAgICAgICAgICAoMHgwNDAwVSA8PCBSSV9BU01SNF9QRl9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDA0MDAgKi8NCiNkZWZpbmUgUklfQVNNUjRfUEZfMTEgICAgICAgICAgICAgICAgICAoMHgwODAwVSA8PCBSSV9BU01SNF9QRl9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDA4MDAgKi8NCiNkZWZpbmUgUklfQVNNUjRfUEZfMTIgICAgICAgICAgICAgICAgICAoMHgxMDAwVSA8PCBSSV9BU01SNF9QRl9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDEwMDAgKi8NCiNkZWZpbmUgUklfQVNNUjRfUEZfMTMgICAgICAgICAgICAgICAgICAoMHgyMDAwVSA8PCBSSV9BU01SNF9QRl9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDIwMDAgKi8NCiNkZWZpbmUgUklfQVNNUjRfUEZfMTQgICAgICAgICAgICAgICAgICAoMHg0MDAwVSA8PCBSSV9BU01SNF9QRl9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDQwMDAgKi8NCiNkZWZpbmUgUklfQVNNUjRfUEZfMTUgICAgICAgICAgICAgICAgICAoMHg4MDAwVSA8PCBSSV9BU01SNF9QRl9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDgwMDAgKi8NCg0KLyoqKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgUklfQ01SNCByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIFJJX0NNUjRfUEZfUG9zICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJJX0NNUjRfUEZfTXNrICAgICAgICAgICAgICAgICAgKDB4RkZGRlUgPDwgUklfQ01SNF9QRl9Qb3MpICAgICAgICAgICAgLyohPCAweDAwMDBGRkZGICovDQojZGVmaW5lIFJJX0NNUjRfUEYgICAgICAgICAgICAgICAgICAgICAgUklfQ01SNF9QRl9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBQRlsxNTowXSBQb3J0IEYgc2VsZWN0aW9uICovDQojZGVmaW5lIFJJX0NNUjRfUEZfMCAgICAgICAgICAgICAgICAgICAgKDB4MDAwMVUgPDwgUklfQ01SNF9QRl9Qb3MpICAgICAgICAgICAgLyohPCAweDAwMDAwMDAxICovDQojZGVmaW5lIFJJX0NNUjRfUEZfMSAgICAgICAgICAgICAgICAgICAgKDB4MDAwMlUgPDwgUklfQ01SNF9QRl9Qb3MpICAgICAgICAgICAgLyohPCAweDAwMDAwMDAyICovDQojZGVmaW5lIFJJX0NNUjRfUEZfMiAgICAgICAgICAgICAgICAgICAgKDB4MDAwNFUgPDwgUklfQ01SNF9QRl9Qb3MpICAgICAgICAgICAgLyohPCAweDAwMDAwMDA0ICovDQojZGVmaW5lIFJJX0NNUjRfUEZfMyAgICAgICAgICAgICAgICAgICAgKDB4MDAwOFUgPDwgUklfQ01SNF9QRl9Qb3MpICAgICAgICAgICAgLyohPCAweDAwMDAwMDA4ICovDQojZGVmaW5lIFJJX0NNUjRfUEZfNCAgICAgICAgICAgICAgICAgICAgKDB4MDAxMFUgPDwgUklfQ01SNF9QRl9Qb3MpICAgICAgICAgICAgLyohPCAweDAwMDAwMDEwICovDQojZGVmaW5lIFJJX0NNUjRfUEZfNSAgICAgICAgICAgICAgICAgICAgKDB4MDAyMFUgPDwgUklfQ01SNF9QRl9Qb3MpICAgICAgICAgICAgLyohPCAweDAwMDAwMDIwICovDQojZGVmaW5lIFJJX0NNUjRfUEZfNiAgICAgICAgICAgICAgICAgICAgKDB4MDA0MFUgPDwgUklfQ01SNF9QRl9Qb3MpICAgICAgICAgICAgLyohPCAweDAwMDAwMDQwICovDQojZGVmaW5lIFJJX0NNUjRfUEZfNyAgICAgICAgICAgICAgICAgICAgKDB4MDA4MFUgPDwgUklfQ01SNF9QRl9Qb3MpICAgICAgICAgICAgLyohPCAweDAwMDAwMDgwICovDQojZGVmaW5lIFJJX0NNUjRfUEZfOCAgICAgICAgICAgICAgICAgICAgKDB4MDEwMFUgPDwgUklfQ01SNF9QRl9Qb3MpICAgICAgICAgICAgLyohPCAweDAwMDAwMTAwICovDQojZGVmaW5lIFJJX0NNUjRfUEZfOSAgICAgICAgICAgICAgICAgICAgKDB4MDIwMFUgPDwgUklfQ01SNF9QRl9Qb3MpICAgICAgICAgICAgLyohPCAweDAwMDAwMjAwICovDQojZGVmaW5lIFJJX0NNUjRfUEZfMTAgICAgICAgICAgICAgICAgICAgKDB4MDQwMFUgPDwgUklfQ01SNF9QRl9Qb3MpICAgICAgICAgICAgLyohPCAweDAwMDAwNDAwICovDQojZGVmaW5lIFJJX0NNUjRfUEZfMTEgICAgICAgICAgICAgICAgICAgKDB4MDgwMFUgPDwgUklfQ01SNF9QRl9Qb3MpICAgICAgICAgICAgLyohPCAweDAwMDAwODAwICovDQojZGVmaW5lIFJJX0NNUjRfUEZfMTIgICAgICAgICAgICAgICAgICAgKDB4MTAwMFUgPDwgUklfQ01SNF9QRl9Qb3MpICAgICAgICAgICAgLyohPCAweDAwMDAxMDAwICovDQojZGVmaW5lIFJJX0NNUjRfUEZfMTMgICAgICAgICAgICAgICAgICAgKDB4MjAwMFUgPDwgUklfQ01SNF9QRl9Qb3MpICAgICAgICAgICAgLyohPCAweDAwMDAyMDAwICovDQojZGVmaW5lIFJJX0NNUjRfUEZfMTQgICAgICAgICAgICAgICAgICAgKDB4NDAwMFUgPDwgUklfQ01SNF9QRl9Qb3MpICAgICAgICAgICAgLyohPCAweDAwMDA0MDAwICovDQojZGVmaW5lIFJJX0NNUjRfUEZfMTUgICAgICAgICAgICAgICAgICAgKDB4ODAwMFUgPDwgUklfQ01SNF9QRl9Qb3MpICAgICAgICAgICAgLyohPCAweDAwMDA4MDAwICovDQoNCi8qKioqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFJJX0NJQ1I0IHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgUklfQ0lDUjRfUEZfUG9zICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUklfQ0lDUjRfUEZfTXNrICAgICAgICAgICAgICAgICAoMHhGRkZGVSA8PCBSSV9DSUNSNF9QRl9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMEZGRkYgKi8NCiNkZWZpbmUgUklfQ0lDUjRfUEYgICAgICAgICAgICAgICAgICAgICBSSV9DSUNSNF9QRl9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBGWzE1OjBdIFBvcnQgRiBzZWxlY3Rpb24gKi8NCiNkZWZpbmUgUklfQ0lDUjRfUEZfMCAgICAgICAgICAgICAgICAgICAoMHgwMDAxVSA8PCBSSV9DSUNSNF9QRl9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDEgKi8NCiNkZWZpbmUgUklfQ0lDUjRfUEZfMSAgICAgICAgICAgICAgICAgICAoMHgwMDAyVSA8PCBSSV9DSUNSNF9QRl9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDIgKi8NCiNkZWZpbmUgUklfQ0lDUjRfUEZfMiAgICAgICAgICAgICAgICAgICAoMHgwMDA0VSA8PCBSSV9DSUNSNF9QRl9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDQgKi8NCiNkZWZpbmUgUklfQ0lDUjRfUEZfMyAgICAgICAgICAgICAgICAgICAoMHgwMDA4VSA8PCBSSV9DSUNSNF9QRl9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDggKi8NCiNkZWZpbmUgUklfQ0lDUjRfUEZfNCAgICAgICAgICAgICAgICAgICAoMHgwMDEwVSA8PCBSSV9DSUNSNF9QRl9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDAwMTAgKi8NCiNkZWZpbmUgUklfQ0lDUjRfUEZfNSAgICAgICAgICAgICAgICAgICAoMHgwMDIwVSA8PCBSSV9DSUNSNF9QRl9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDAwMjAgKi8NCiNkZWZpbmUgUklfQ0lDUjRfUEZfNiAgICAgICAgICAgICAgICAgICAoMHgwMDQwVSA8PCBSSV9DSUNSNF9QRl9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDAwNDAgKi8NCiNkZWZpbmUgUklfQ0lDUjRfUEZfNyAgICAgICAgICAgICAgICAgICAoMHgwMDgwVSA8PCBSSV9DSUNSNF9QRl9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDAwODAgKi8NCiNkZWZpbmUgUklfQ0lDUjRfUEZfOCAgICAgICAgICAgICAgICAgICAoMHgwMTAwVSA8PCBSSV9DSUNSNF9QRl9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDAxMDAgKi8NCiNkZWZpbmUgUklfQ0lDUjRfUEZfOSAgICAgICAgICAgICAgICAgICAoMHgwMjAwVSA8PCBSSV9DSUNSNF9QRl9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDAyMDAgKi8NCiNkZWZpbmUgUklfQ0lDUjRfUEZfMTAgICAgICAgICAgICAgICAgICAoMHgwNDAwVSA8PCBSSV9DSUNSNF9QRl9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDA0MDAgKi8NCiNkZWZpbmUgUklfQ0lDUjRfUEZfMTEgICAgICAgICAgICAgICAgICAoMHgwODAwVSA8PCBSSV9DSUNSNF9QRl9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDA4MDAgKi8NCiNkZWZpbmUgUklfQ0lDUjRfUEZfMTIgICAgICAgICAgICAgICAgICAoMHgxMDAwVSA8PCBSSV9DSUNSNF9QRl9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDEwMDAgKi8NCiNkZWZpbmUgUklfQ0lDUjRfUEZfMTMgICAgICAgICAgICAgICAgICAoMHgyMDAwVSA8PCBSSV9DSUNSNF9QRl9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDIwMDAgKi8NCiNkZWZpbmUgUklfQ0lDUjRfUEZfMTQgICAgICAgICAgICAgICAgICAoMHg0MDAwVSA8PCBSSV9DSUNSNF9QRl9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDQwMDAgKi8NCiNkZWZpbmUgUklfQ0lDUjRfUEZfMTUgICAgICAgICAgICAgICAgICAoMHg4MDAwVSA8PCBSSV9DSUNSNF9QRl9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDgwMDAgKi8NCg0KLyoqKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgUklfQVNNUjUgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBSSV9BU01SNV9QR19Qb3MgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSSV9BU01SNV9QR19Nc2sgICAgICAgICAgICAgICAgICgweEZGRkZVIDw8IFJJX0FTTVI1X1BHX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwRkZGRiAqLw0KI2RlZmluZSBSSV9BU01SNV9QRyAgICAgICAgICAgICAgICAgICAgIFJJX0FTTVI1X1BHX01zayAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgUEdbMTU6MF0gUG9ydCBHIHNlbGVjdGlvbiAqLw0KI2RlZmluZSBSSV9BU01SNV9QR18wICAgICAgICAgICAgICAgICAgICgweDAwMDFVIDw8IFJJX0FTTVI1X1BHX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDAwMSAqLw0KI2RlZmluZSBSSV9BU01SNV9QR18xICAgICAgICAgICAgICAgICAgICgweDAwMDJVIDw8IFJJX0FTTVI1X1BHX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDAwMiAqLw0KI2RlZmluZSBSSV9BU01SNV9QR18yICAgICAgICAgICAgICAgICAgICgweDAwMDRVIDw8IFJJX0FTTVI1X1BHX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDAwNCAqLw0KI2RlZmluZSBSSV9BU01SNV9QR18zICAgICAgICAgICAgICAgICAgICgweDAwMDhVIDw8IFJJX0FTTVI1X1BHX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDAwOCAqLw0KI2RlZmluZSBSSV9BU01SNV9QR180ICAgICAgICAgICAgICAgICAgICgweDAwMTBVIDw8IFJJX0FTTVI1X1BHX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDAxMCAqLw0KI2RlZmluZSBSSV9BU01SNV9QR181ICAgICAgICAgICAgICAgICAgICgweDAwMjBVIDw8IFJJX0FTTVI1X1BHX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDAyMCAqLw0KI2RlZmluZSBSSV9BU01SNV9QR182ICAgICAgICAgICAgICAgICAgICgweDAwNDBVIDw8IFJJX0FTTVI1X1BHX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDA0MCAqLw0KI2RlZmluZSBSSV9BU01SNV9QR183ICAgICAgICAgICAgICAgICAgICgweDAwODBVIDw8IFJJX0FTTVI1X1BHX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDA4MCAqLw0KI2RlZmluZSBSSV9BU01SNV9QR184ICAgICAgICAgICAgICAgICAgICgweDAxMDBVIDw8IFJJX0FTTVI1X1BHX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDEwMCAqLw0KI2RlZmluZSBSSV9BU01SNV9QR185ICAgICAgICAgICAgICAgICAgICgweDAyMDBVIDw8IFJJX0FTTVI1X1BHX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDIwMCAqLw0KI2RlZmluZSBSSV9BU01SNV9QR18xMCAgICAgICAgICAgICAgICAgICgweDA0MDBVIDw8IFJJX0FTTVI1X1BHX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDQwMCAqLw0KI2RlZmluZSBSSV9BU01SNV9QR18xMSAgICAgICAgICAgICAgICAgICgweDA4MDBVIDw8IFJJX0FTTVI1X1BHX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDgwMCAqLw0KI2RlZmluZSBSSV9BU01SNV9QR18xMiAgICAgICAgICAgICAgICAgICgweDEwMDBVIDw8IFJJX0FTTVI1X1BHX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMTAwMCAqLw0KI2RlZmluZSBSSV9BU01SNV9QR18xMyAgICAgICAgICAgICAgICAgICgweDIwMDBVIDw8IFJJX0FTTVI1X1BHX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMjAwMCAqLw0KI2RlZmluZSBSSV9BU01SNV9QR18xNCAgICAgICAgICAgICAgICAgICgweDQwMDBVIDw8IFJJX0FTTVI1X1BHX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwNDAwMCAqLw0KI2RlZmluZSBSSV9BU01SNV9QR18xNSAgICAgICAgICAgICAgICAgICgweDgwMDBVIDw8IFJJX0FTTVI1X1BHX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwODAwMCAqLw0KDQovKioqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBSSV9DTVI1IHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgUklfQ01SNV9QR19Qb3MgICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUklfQ01SNV9QR19Nc2sgICAgICAgICAgICAgICAgICAoMHhGRkZGVSA8PCBSSV9DTVI1X1BHX1BvcykgICAgICAgICAgICAvKiE8IDB4MDAwMEZGRkYgKi8NCiNkZWZpbmUgUklfQ01SNV9QRyAgICAgICAgICAgICAgICAgICAgICBSSV9DTVI1X1BHX01zayAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBHWzE1OjBdIFBvcnQgRyBzZWxlY3Rpb24gKi8NCiNkZWZpbmUgUklfQ01SNV9QR18wICAgICAgICAgICAgICAgICAgICAoMHgwMDAxVSA8PCBSSV9DTVI1X1BHX1BvcykgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDEgKi8NCiNkZWZpbmUgUklfQ01SNV9QR18xICAgICAgICAgICAgICAgICAgICAoMHgwMDAyVSA8PCBSSV9DTVI1X1BHX1BvcykgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDIgKi8NCiNkZWZpbmUgUklfQ01SNV9QR18yICAgICAgICAgICAgICAgICAgICAoMHgwMDA0VSA8PCBSSV9DTVI1X1BHX1BvcykgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDQgKi8NCiNkZWZpbmUgUklfQ01SNV9QR18zICAgICAgICAgICAgICAgICAgICAoMHgwMDA4VSA8PCBSSV9DTVI1X1BHX1BvcykgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDggKi8NCiNkZWZpbmUgUklfQ01SNV9QR180ICAgICAgICAgICAgICAgICAgICAoMHgwMDEwVSA8PCBSSV9DTVI1X1BHX1BvcykgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMTAgKi8NCiNkZWZpbmUgUklfQ01SNV9QR181ICAgICAgICAgICAgICAgICAgICAoMHgwMDIwVSA8PCBSSV9DTVI1X1BHX1BvcykgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMjAgKi8NCiNkZWZpbmUgUklfQ01SNV9QR182ICAgICAgICAgICAgICAgICAgICAoMHgwMDQwVSA8PCBSSV9DTVI1X1BHX1BvcykgICAgICAgICAgICAvKiE8IDB4MDAwMDAwNDAgKi8NCiNkZWZpbmUgUklfQ01SNV9QR183ICAgICAgICAgICAgICAgICAgICAoMHgwMDgwVSA8PCBSSV9DTVI1X1BHX1BvcykgICAgICAgICAgICAvKiE8IDB4MDAwMDAwODAgKi8NCiNkZWZpbmUgUklfQ01SNV9QR184ICAgICAgICAgICAgICAgICAgICAoMHgwMTAwVSA8PCBSSV9DTVI1X1BHX1BvcykgICAgICAgICAgICAvKiE8IDB4MDAwMDAxMDAgKi8NCiNkZWZpbmUgUklfQ01SNV9QR185ICAgICAgICAgICAgICAgICAgICAoMHgwMjAwVSA8PCBSSV9DTVI1X1BHX1BvcykgICAgICAgICAgICAvKiE8IDB4MDAwMDAyMDAgKi8NCiNkZWZpbmUgUklfQ01SNV9QR18xMCAgICAgICAgICAgICAgICAgICAoMHgwNDAwVSA8PCBSSV9DTVI1X1BHX1BvcykgICAgICAgICAgICAvKiE8IDB4MDAwMDA0MDAgKi8NCiNkZWZpbmUgUklfQ01SNV9QR18xMSAgICAgICAgICAgICAgICAgICAoMHgwODAwVSA8PCBSSV9DTVI1X1BHX1BvcykgICAgICAgICAgICAvKiE8IDB4MDAwMDA4MDAgKi8NCiNkZWZpbmUgUklfQ01SNV9QR18xMiAgICAgICAgICAgICAgICAgICAoMHgxMDAwVSA8PCBSSV9DTVI1X1BHX1BvcykgICAgICAgICAgICAvKiE8IDB4MDAwMDEwMDAgKi8NCiNkZWZpbmUgUklfQ01SNV9QR18xMyAgICAgICAgICAgICAgICAgICAoMHgyMDAwVSA8PCBSSV9DTVI1X1BHX1BvcykgICAgICAgICAgICAvKiE8IDB4MDAwMDIwMDAgKi8NCiNkZWZpbmUgUklfQ01SNV9QR18xNCAgICAgICAgICAgICAgICAgICAoMHg0MDAwVSA8PCBSSV9DTVI1X1BHX1BvcykgICAgICAgICAgICAvKiE8IDB4MDAwMDQwMDAgKi8NCiNkZWZpbmUgUklfQ01SNV9QR18xNSAgICAgICAgICAgICAgICAgICAoMHg4MDAwVSA8PCBSSV9DTVI1X1BHX1BvcykgICAgICAgICAgICAvKiE8IDB4MDAwMDgwMDAgKi8NCg0KLyoqKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgUklfQ0lDUjUgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBSSV9DSUNSNV9QR19Qb3MgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSSV9DSUNSNV9QR19Nc2sgICAgICAgICAgICAgICAgICgweEZGRkZVIDw8IFJJX0NJQ1I1X1BHX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwRkZGRiAqLw0KI2RlZmluZSBSSV9DSUNSNV9QRyAgICAgICAgICAgICAgICAgICAgIFJJX0NJQ1I1X1BHX01zayAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgUEdbMTU6MF0gUG9ydCBHIHNlbGVjdGlvbiAqLw0KI2RlZmluZSBSSV9DSUNSNV9QR18wICAgICAgICAgICAgICAgICAgICgweDAwMDFVIDw8IFJJX0NJQ1I1X1BHX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDAwMSAqLw0KI2RlZmluZSBSSV9DSUNSNV9QR18xICAgICAgICAgICAgICAgICAgICgweDAwMDJVIDw8IFJJX0NJQ1I1X1BHX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDAwMiAqLw0KI2RlZmluZSBSSV9DSUNSNV9QR18yICAgICAgICAgICAgICAgICAgICgweDAwMDRVIDw8IFJJX0NJQ1I1X1BHX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDAwNCAqLw0KI2RlZmluZSBSSV9DSUNSNV9QR18zICAgICAgICAgICAgICAgICAgICgweDAwMDhVIDw8IFJJX0NJQ1I1X1BHX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDAwOCAqLw0KI2RlZmluZSBSSV9DSUNSNV9QR180ICAgICAgICAgICAgICAgICAgICgweDAwMTBVIDw8IFJJX0NJQ1I1X1BHX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDAxMCAqLw0KI2RlZmluZSBSSV9DSUNSNV9QR181ICAgICAgICAgICAgICAgICAgICgweDAwMjBVIDw8IFJJX0NJQ1I1X1BHX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDAyMCAqLw0KI2RlZmluZSBSSV9DSUNSNV9QR182ICAgICAgICAgICAgICAgICAgICgweDAwNDBVIDw8IFJJX0NJQ1I1X1BHX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDA0MCAqLw0KI2RlZmluZSBSSV9DSUNSNV9QR183ICAgICAgICAgICAgICAgICAgICgweDAwODBVIDw8IFJJX0NJQ1I1X1BHX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDA4MCAqLw0KI2RlZmluZSBSSV9DSUNSNV9QR184ICAgICAgICAgICAgICAgICAgICgweDAxMDBVIDw8IFJJX0NJQ1I1X1BHX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDEwMCAqLw0KI2RlZmluZSBSSV9DSUNSNV9QR185ICAgICAgICAgICAgICAgICAgICgweDAyMDBVIDw8IFJJX0NJQ1I1X1BHX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDIwMCAqLw0KI2RlZmluZSBSSV9DSUNSNV9QR18xMCAgICAgICAgICAgICAgICAgICgweDA0MDBVIDw8IFJJX0NJQ1I1X1BHX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDQwMCAqLw0KI2RlZmluZSBSSV9DSUNSNV9QR18xMSAgICAgICAgICAgICAgICAgICgweDA4MDBVIDw8IFJJX0NJQ1I1X1BHX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDgwMCAqLw0KI2RlZmluZSBSSV9DSUNSNV9QR18xMiAgICAgICAgICAgICAgICAgICgweDEwMDBVIDw8IFJJX0NJQ1I1X1BHX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMTAwMCAqLw0KI2RlZmluZSBSSV9DSUNSNV9QR18xMyAgICAgICAgICAgICAgICAgICgweDIwMDBVIDw8IFJJX0NJQ1I1X1BHX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMjAwMCAqLw0KI2RlZmluZSBSSV9DSUNSNV9QR18xNCAgICAgICAgICAgICAgICAgICgweDQwMDBVIDw8IFJJX0NJQ1I1X1BHX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwNDAwMCAqLw0KI2RlZmluZSBSSV9DSUNSNV9QR18xNSAgICAgICAgICAgICAgICAgICgweDgwMDBVIDw8IFJJX0NJQ1I1X1BHX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwODAwMCAqLw0KDQovKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLw0KLyogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8NCi8qICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFRpbWVycyAoVElNKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovDQovKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLw0KLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8NCg0KLyoqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBUSU1fQ1IxIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgVElNX0NSMV9DRU5fUG9zICAgICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVElNX0NSMV9DRU5fTXNrICAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVElNX0NSMV9DRU5fUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDAwMDEgKi8NCiNkZWZpbmUgVElNX0NSMV9DRU4gICAgICAgICAgICAgICAgICAgICAgICAgVElNX0NSMV9DRU5fTXNrICAgICAgICAgICAgICAgICAgICAvKiE8Q291bnRlciBlbmFibGUgKi8NCiNkZWZpbmUgVElNX0NSMV9VRElTX1BvcyAgICAgICAgICAgICAgICAgICAgKDFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVElNX0NSMV9VRElTX01zayAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVElNX0NSMV9VRElTX1BvcykgICAgICAgICAvKiE8IDB4MDAwMDAwMDIgKi8NCiNkZWZpbmUgVElNX0NSMV9VRElTICAgICAgICAgICAgICAgICAgICAgICAgVElNX0NSMV9VRElTX01zayAgICAgICAgICAgICAgICAgICAvKiE8VXBkYXRlIGRpc2FibGUgKi8NCiNkZWZpbmUgVElNX0NSMV9VUlNfUG9zICAgICAgICAgICAgICAgICAgICAgKDJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVElNX0NSMV9VUlNfTXNrICAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVElNX0NSMV9VUlNfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDAwMDQgKi8NCiNkZWZpbmUgVElNX0NSMV9VUlMgICAgICAgICAgICAgICAgICAgICAgICAgVElNX0NSMV9VUlNfTXNrICAgICAgICAgICAgICAgICAgICAvKiE8VXBkYXRlIHJlcXVlc3Qgc291cmNlICovDQojZGVmaW5lIFRJTV9DUjFfT1BNX1BvcyAgICAgICAgICAgICAgICAgICAgICgzVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFRJTV9DUjFfT1BNX01zayAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFRJTV9DUjFfT1BNX1BvcykgICAgICAgICAgLyohPCAweDAwMDAwMDA4ICovDQojZGVmaW5lIFRJTV9DUjFfT1BNICAgICAgICAgICAgICAgICAgICAgICAgIFRJTV9DUjFfT1BNX01zayAgICAgICAgICAgICAgICAgICAgLyohPE9uZSBwdWxzZSBtb2RlICovDQojZGVmaW5lIFRJTV9DUjFfRElSX1BvcyAgICAgICAgICAgICAgICAgICAgICg0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFRJTV9DUjFfRElSX01zayAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFRJTV9DUjFfRElSX1BvcykgICAgICAgICAgLyohPCAweDAwMDAwMDEwICovDQojZGVmaW5lIFRJTV9DUjFfRElSICAgICAgICAgICAgICAgICAgICAgICAgIFRJTV9DUjFfRElSX01zayAgICAgICAgICAgICAgICAgICAgLyohPERpcmVjdGlvbiAqLw0KDQojZGVmaW5lIFRJTV9DUjFfQ01TX1BvcyAgICAgICAgICAgICAgICAgICAgICg1VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFRJTV9DUjFfQ01TX01zayAgICAgICAgICAgICAgICAgICAgICgweDNVIDw8IFRJTV9DUjFfQ01TX1BvcykgICAgICAgICAgLyohPCAweDAwMDAwMDYwICovDQojZGVmaW5lIFRJTV9DUjFfQ01TICAgICAgICAgICAgICAgICAgICAgICAgIFRJTV9DUjFfQ01TX01zayAgICAgICAgICAgICAgICAgICAgLyohPENNU1sxOjBdIGJpdHMgKENlbnRlci1hbGlnbmVkIG1vZGUgc2VsZWN0aW9uKSAqLw0KI2RlZmluZSBUSU1fQ1IxX0NNU18wICAgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBUSU1fQ1IxX0NNU19Qb3MpICAgICAgICAgIC8qITwgMHgwMDAwMDAyMCAqLw0KI2RlZmluZSBUSU1fQ1IxX0NNU18xICAgICAgICAgICAgICAgICAgICAgICAoMHgyVSA8PCBUSU1fQ1IxX0NNU19Qb3MpICAgICAgICAgIC8qITwgMHgwMDAwMDA0MCAqLw0KDQojZGVmaW5lIFRJTV9DUjFfQVJQRV9Qb3MgICAgICAgICAgICAgICAgICAgICg3VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFRJTV9DUjFfQVJQRV9Nc2sgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFRJTV9DUjFfQVJQRV9Qb3MpICAgICAgICAgLyohPCAweDAwMDAwMDgwICovDQojZGVmaW5lIFRJTV9DUjFfQVJQRSAgICAgICAgICAgICAgICAgICAgICAgIFRJTV9DUjFfQVJQRV9Nc2sgICAgICAgICAgICAgICAgICAgLyohPEF1dG8tcmVsb2FkIHByZWxvYWQgZW5hYmxlICovDQoNCiNkZWZpbmUgVElNX0NSMV9DS0RfUG9zICAgICAgICAgICAgICAgICAgICAgKDhVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVElNX0NSMV9DS0RfTXNrICAgICAgICAgICAgICAgICAgICAgKDB4M1UgPDwgVElNX0NSMV9DS0RfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDAzMDAgKi8NCiNkZWZpbmUgVElNX0NSMV9DS0QgICAgICAgICAgICAgICAgICAgICAgICAgVElNX0NSMV9DS0RfTXNrICAgICAgICAgICAgICAgICAgICAvKiE8Q0tEWzE6MF0gYml0cyAoY2xvY2sgZGl2aXNpb24pICovDQojZGVmaW5lIFRJTV9DUjFfQ0tEXzAgICAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFRJTV9DUjFfQ0tEX1BvcykgICAgICAgICAgLyohPCAweDAwMDAwMTAwICovDQojZGVmaW5lIFRJTV9DUjFfQ0tEXzEgICAgICAgICAgICAgICAgICAgICAgICgweDJVIDw8IFRJTV9DUjFfQ0tEX1BvcykgICAgICAgICAgLyohPCAweDAwMDAwMjAwICovDQoNCi8qKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgVElNX0NSMiByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIFRJTV9DUjJfQ0NEU19Qb3MgICAgICAgICAgICAgICAgICAgICgzVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFRJTV9DUjJfQ0NEU19Nc2sgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFRJTV9DUjJfQ0NEU19Qb3MpICAgICAgICAgLyohPCAweDAwMDAwMDA4ICovDQojZGVmaW5lIFRJTV9DUjJfQ0NEUyAgICAgICAgICAgICAgICAgICAgICAgIFRJTV9DUjJfQ0NEU19Nc2sgICAgICAgICAgICAgICAgICAgLyohPENhcHR1cmUvQ29tcGFyZSBETUEgU2VsZWN0aW9uICovDQoNCiNkZWZpbmUgVElNX0NSMl9NTVNfUG9zICAgICAgICAgICAgICAgICAgICAgKDRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVElNX0NSMl9NTVNfTXNrICAgICAgICAgICAgICAgICAgICAgKDB4N1UgPDwgVElNX0NSMl9NTVNfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDAwNzAgKi8NCiNkZWZpbmUgVElNX0NSMl9NTVMgICAgICAgICAgICAgICAgICAgICAgICAgVElNX0NSMl9NTVNfTXNrICAgICAgICAgICAgICAgICAgICAvKiE8TU1TWzI6MF0gYml0cyAoTWFzdGVyIE1vZGUgU2VsZWN0aW9uKSAqLw0KI2RlZmluZSBUSU1fQ1IyX01NU18wICAgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBUSU1fQ1IyX01NU19Qb3MpICAgICAgICAgIC8qITwgMHgwMDAwMDAxMCAqLw0KI2RlZmluZSBUSU1fQ1IyX01NU18xICAgICAgICAgICAgICAgICAgICAgICAoMHgyVSA8PCBUSU1fQ1IyX01NU19Qb3MpICAgICAgICAgIC8qITwgMHgwMDAwMDAyMCAqLw0KI2RlZmluZSBUSU1fQ1IyX01NU18yICAgICAgICAgICAgICAgICAgICAgICAoMHg0VSA8PCBUSU1fQ1IyX01NU19Qb3MpICAgICAgICAgIC8qITwgMHgwMDAwMDA0MCAqLw0KDQojZGVmaW5lIFRJTV9DUjJfVEkxU19Qb3MgICAgICAgICAgICAgICAgICAgICg3VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFRJTV9DUjJfVEkxU19Nc2sgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFRJTV9DUjJfVEkxU19Qb3MpICAgICAgICAgLyohPCAweDAwMDAwMDgwICovDQojZGVmaW5lIFRJTV9DUjJfVEkxUyAgICAgICAgICAgICAgICAgICAgICAgIFRJTV9DUjJfVEkxU19Nc2sgICAgICAgICAgICAgICAgICAgLyohPFRJMSBTZWxlY3Rpb24gKi8NCg0KLyoqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBUSU1fU01DUiByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgVElNX1NNQ1JfU01TX1BvcyAgICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVElNX1NNQ1JfU01TX01zayAgICAgICAgICAgICAgICAgICAgKDB4N1UgPDwgVElNX1NNQ1JfU01TX1BvcykgICAgICAgICAvKiE8IDB4MDAwMDAwMDcgKi8NCiNkZWZpbmUgVElNX1NNQ1JfU01TICAgICAgICAgICAgICAgICAgICAgICAgVElNX1NNQ1JfU01TX01zayAgICAgICAgICAgICAgICAgICAvKiE8U01TWzI6MF0gYml0cyAoU2xhdmUgbW9kZSBzZWxlY3Rpb24pICovDQojZGVmaW5lIFRJTV9TTUNSX1NNU18wICAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFRJTV9TTUNSX1NNU19Qb3MpICAgICAgICAgLyohPCAweDAwMDAwMDAxICovDQojZGVmaW5lIFRJTV9TTUNSX1NNU18xICAgICAgICAgICAgICAgICAgICAgICgweDJVIDw8IFRJTV9TTUNSX1NNU19Qb3MpICAgICAgICAgLyohPCAweDAwMDAwMDAyICovDQojZGVmaW5lIFRJTV9TTUNSX1NNU18yICAgICAgICAgICAgICAgICAgICAgICgweDRVIDw8IFRJTV9TTUNSX1NNU19Qb3MpICAgICAgICAgLyohPCAweDAwMDAwMDA0ICovDQoNCiNkZWZpbmUgVElNX1NNQ1JfT0NDU19Qb3MgICAgICAgICAgICAgICAgICAgKDNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVElNX1NNQ1JfT0NDU19Nc2sgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVElNX1NNQ1JfT0NDU19Qb3MpICAgICAgICAvKiE8IDB4MDAwMDAwMDggKi8NCiNkZWZpbmUgVElNX1NNQ1JfT0NDUyAgICAgICAgICAgICAgICAgICAgICAgVElNX1NNQ1JfT0NDU19Nc2sgICAgICAgICAgICAgICAgICAvKiE8IE9DUkVGIGNsZWFyIHNlbGVjdGlvbiAqLw0KDQojZGVmaW5lIFRJTV9TTUNSX1RTX1BvcyAgICAgICAgICAgICAgICAgICAgICg0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFRJTV9TTUNSX1RTX01zayAgICAgICAgICAgICAgICAgICAgICgweDdVIDw8IFRJTV9TTUNSX1RTX1BvcykgICAgICAgICAgLyohPCAweDAwMDAwMDcwICovDQojZGVmaW5lIFRJTV9TTUNSX1RTICAgICAgICAgICAgICAgICAgICAgICAgIFRJTV9TTUNSX1RTX01zayAgICAgICAgICAgICAgICAgICAgLyohPFRTWzI6MF0gYml0cyAoVHJpZ2dlciBzZWxlY3Rpb24pICovDQojZGVmaW5lIFRJTV9TTUNSX1RTXzAgICAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFRJTV9TTUNSX1RTX1BvcykgICAgICAgICAgLyohPCAweDAwMDAwMDEwICovDQojZGVmaW5lIFRJTV9TTUNSX1RTXzEgICAgICAgICAgICAgICAgICAgICAgICgweDJVIDw8IFRJTV9TTUNSX1RTX1BvcykgICAgICAgICAgLyohPCAweDAwMDAwMDIwICovDQojZGVmaW5lIFRJTV9TTUNSX1RTXzIgICAgICAgICAgICAgICAgICAgICAgICgweDRVIDw8IFRJTV9TTUNSX1RTX1BvcykgICAgICAgICAgLyohPCAweDAwMDAwMDQwICovDQoNCiNkZWZpbmUgVElNX1NNQ1JfTVNNX1BvcyAgICAgICAgICAgICAgICAgICAgKDdVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVElNX1NNQ1JfTVNNX01zayAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVElNX1NNQ1JfTVNNX1BvcykgICAgICAgICAvKiE8IDB4MDAwMDAwODAgKi8NCiNkZWZpbmUgVElNX1NNQ1JfTVNNICAgICAgICAgICAgICAgICAgICAgICAgVElNX1NNQ1JfTVNNX01zayAgICAgICAgICAgICAgICAgICAvKiE8TWFzdGVyL3NsYXZlIG1vZGUgKi8NCg0KI2RlZmluZSBUSU1fU01DUl9FVEZfUG9zICAgICAgICAgICAgICAgICAgICAoOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBUSU1fU01DUl9FVEZfTXNrICAgICAgICAgICAgICAgICAgICAoMHhGVSA8PCBUSU1fU01DUl9FVEZfUG9zKSAgICAgICAgIC8qITwgMHgwMDAwMEYwMCAqLw0KI2RlZmluZSBUSU1fU01DUl9FVEYgICAgICAgICAgICAgICAgICAgICAgICBUSU1fU01DUl9FVEZfTXNrICAgICAgICAgICAgICAgICAgIC8qITxFVEZbMzowXSBiaXRzIChFeHRlcm5hbCB0cmlnZ2VyIGZpbHRlcikgKi8NCiNkZWZpbmUgVElNX1NNQ1JfRVRGXzAgICAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVElNX1NNQ1JfRVRGX1BvcykgICAgICAgICAvKiE8IDB4MDAwMDAxMDAgKi8NCiNkZWZpbmUgVElNX1NNQ1JfRVRGXzEgICAgICAgICAgICAgICAgICAgICAgKDB4MlUgPDwgVElNX1NNQ1JfRVRGX1BvcykgICAgICAgICAvKiE8IDB4MDAwMDAyMDAgKi8NCiNkZWZpbmUgVElNX1NNQ1JfRVRGXzIgICAgICAgICAgICAgICAgICAgICAgKDB4NFUgPDwgVElNX1NNQ1JfRVRGX1BvcykgICAgICAgICAvKiE8IDB4MDAwMDA0MDAgKi8NCiNkZWZpbmUgVElNX1NNQ1JfRVRGXzMgICAgICAgICAgICAgICAgICAgICAgKDB4OFUgPDwgVElNX1NNQ1JfRVRGX1BvcykgICAgICAgICAvKiE8IDB4MDAwMDA4MDAgKi8NCg0KI2RlZmluZSBUSU1fU01DUl9FVFBTX1BvcyAgICAgICAgICAgICAgICAgICAoMTJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBUSU1fU01DUl9FVFBTX01zayAgICAgICAgICAgICAgICAgICAoMHgzVSA8PCBUSU1fU01DUl9FVFBTX1BvcykgICAgICAgIC8qITwgMHgwMDAwMzAwMCAqLw0KI2RlZmluZSBUSU1fU01DUl9FVFBTICAgICAgICAgICAgICAgICAgICAgICBUSU1fU01DUl9FVFBTX01zayAgICAgICAgICAgICAgICAgIC8qITxFVFBTWzE6MF0gYml0cyAoRXh0ZXJuYWwgdHJpZ2dlciBwcmVzY2FsZXIpICovDQojZGVmaW5lIFRJTV9TTUNSX0VUUFNfMCAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFRJTV9TTUNSX0VUUFNfUG9zKSAgICAgICAgLyohPCAweDAwMDAxMDAwICovDQojZGVmaW5lIFRJTV9TTUNSX0VUUFNfMSAgICAgICAgICAgICAgICAgICAgICgweDJVIDw8IFRJTV9TTUNSX0VUUFNfUG9zKSAgICAgICAgLyohPCAweDAwMDAyMDAwICovDQoNCiNkZWZpbmUgVElNX1NNQ1JfRUNFX1BvcyAgICAgICAgICAgICAgICAgICAgKDE0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVElNX1NNQ1JfRUNFX01zayAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVElNX1NNQ1JfRUNFX1BvcykgICAgICAgICAvKiE8IDB4MDAwMDQwMDAgKi8NCiNkZWZpbmUgVElNX1NNQ1JfRUNFICAgICAgICAgICAgICAgICAgICAgICAgVElNX1NNQ1JfRUNFX01zayAgICAgICAgICAgICAgICAgICAvKiE8RXh0ZXJuYWwgY2xvY2sgZW5hYmxlICovDQojZGVmaW5lIFRJTV9TTUNSX0VUUF9Qb3MgICAgICAgICAgICAgICAgICAgICgxNVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFRJTV9TTUNSX0VUUF9Nc2sgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFRJTV9TTUNSX0VUUF9Qb3MpICAgICAgICAgLyohPCAweDAwMDA4MDAwICovDQojZGVmaW5lIFRJTV9TTUNSX0VUUCAgICAgICAgICAgICAgICAgICAgICAgIFRJTV9TTUNSX0VUUF9Nc2sgICAgICAgICAgICAgICAgICAgLyohPEV4dGVybmFsIHRyaWdnZXIgcG9sYXJpdHkgKi8NCg0KLyoqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBUSU1fRElFUiByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgVElNX0RJRVJfVUlFX1BvcyAgICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVElNX0RJRVJfVUlFX01zayAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVElNX0RJRVJfVUlFX1BvcykgICAgICAgICAvKiE8IDB4MDAwMDAwMDEgKi8NCiNkZWZpbmUgVElNX0RJRVJfVUlFICAgICAgICAgICAgICAgICAgICAgICAgVElNX0RJRVJfVUlFX01zayAgICAgICAgICAgICAgICAgICAvKiE8VXBkYXRlIGludGVycnVwdCBlbmFibGUgKi8NCiNkZWZpbmUgVElNX0RJRVJfQ0MxSUVfUG9zICAgICAgICAgICAgICAgICAgKDFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVElNX0RJRVJfQ0MxSUVfTXNrICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVElNX0RJRVJfQ0MxSUVfUG9zKSAgICAgICAvKiE8IDB4MDAwMDAwMDIgKi8NCiNkZWZpbmUgVElNX0RJRVJfQ0MxSUUgICAgICAgICAgICAgICAgICAgICAgVElNX0RJRVJfQ0MxSUVfTXNrICAgICAgICAgICAgICAgICAvKiE8Q2FwdHVyZS9Db21wYXJlIDEgaW50ZXJydXB0IGVuYWJsZSAqLw0KI2RlZmluZSBUSU1fRElFUl9DQzJJRV9Qb3MgICAgICAgICAgICAgICAgICAoMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBUSU1fRElFUl9DQzJJRV9Nc2sgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBUSU1fRElFUl9DQzJJRV9Qb3MpICAgICAgIC8qITwgMHgwMDAwMDAwNCAqLw0KI2RlZmluZSBUSU1fRElFUl9DQzJJRSAgICAgICAgICAgICAgICAgICAgICBUSU1fRElFUl9DQzJJRV9Nc2sgICAgICAgICAgICAgICAgIC8qITxDYXB0dXJlL0NvbXBhcmUgMiBpbnRlcnJ1cHQgZW5hYmxlICovDQojZGVmaW5lIFRJTV9ESUVSX0NDM0lFX1BvcyAgICAgICAgICAgICAgICAgICgzVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFRJTV9ESUVSX0NDM0lFX01zayAgICAgICAgICAgICAgICAgICgweDFVIDw8IFRJTV9ESUVSX0NDM0lFX1BvcykgICAgICAgLyohPCAweDAwMDAwMDA4ICovDQojZGVmaW5lIFRJTV9ESUVSX0NDM0lFICAgICAgICAgICAgICAgICAgICAgIFRJTV9ESUVSX0NDM0lFX01zayAgICAgICAgICAgICAgICAgLyohPENhcHR1cmUvQ29tcGFyZSAzIGludGVycnVwdCBlbmFibGUgKi8NCiNkZWZpbmUgVElNX0RJRVJfQ0M0SUVfUG9zICAgICAgICAgICAgICAgICAgKDRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVElNX0RJRVJfQ0M0SUVfTXNrICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVElNX0RJRVJfQ0M0SUVfUG9zKSAgICAgICAvKiE8IDB4MDAwMDAwMTAgKi8NCiNkZWZpbmUgVElNX0RJRVJfQ0M0SUUgICAgICAgICAgICAgICAgICAgICAgVElNX0RJRVJfQ0M0SUVfTXNrICAgICAgICAgICAgICAgICAvKiE8Q2FwdHVyZS9Db21wYXJlIDQgaW50ZXJydXB0IGVuYWJsZSAqLw0KI2RlZmluZSBUSU1fRElFUl9USUVfUG9zICAgICAgICAgICAgICAgICAgICAoNlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBUSU1fRElFUl9USUVfTXNrICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBUSU1fRElFUl9USUVfUG9zKSAgICAgICAgIC8qITwgMHgwMDAwMDA0MCAqLw0KI2RlZmluZSBUSU1fRElFUl9USUUgICAgICAgICAgICAgICAgICAgICAgICBUSU1fRElFUl9USUVfTXNrICAgICAgICAgICAgICAgICAgIC8qITxUcmlnZ2VyIGludGVycnVwdCBlbmFibGUgKi8NCiNkZWZpbmUgVElNX0RJRVJfVURFX1BvcyAgICAgICAgICAgICAgICAgICAgKDhVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVElNX0RJRVJfVURFX01zayAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVElNX0RJRVJfVURFX1BvcykgICAgICAgICAvKiE8IDB4MDAwMDAxMDAgKi8NCiNkZWZpbmUgVElNX0RJRVJfVURFICAgICAgICAgICAgICAgICAgICAgICAgVElNX0RJRVJfVURFX01zayAgICAgICAgICAgICAgICAgICAvKiE8VXBkYXRlIERNQSByZXF1ZXN0IGVuYWJsZSAqLw0KI2RlZmluZSBUSU1fRElFUl9DQzFERV9Qb3MgICAgICAgICAgICAgICAgICAoOVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBUSU1fRElFUl9DQzFERV9Nc2sgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBUSU1fRElFUl9DQzFERV9Qb3MpICAgICAgIC8qITwgMHgwMDAwMDIwMCAqLw0KI2RlZmluZSBUSU1fRElFUl9DQzFERSAgICAgICAgICAgICAgICAgICAgICBUSU1fRElFUl9DQzFERV9Nc2sgICAgICAgICAgICAgICAgIC8qITxDYXB0dXJlL0NvbXBhcmUgMSBETUEgcmVxdWVzdCBlbmFibGUgKi8NCiNkZWZpbmUgVElNX0RJRVJfQ0MyREVfUG9zICAgICAgICAgICAgICAgICAgKDEwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVElNX0RJRVJfQ0MyREVfTXNrICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVElNX0RJRVJfQ0MyREVfUG9zKSAgICAgICAvKiE8IDB4MDAwMDA0MDAgKi8NCiNkZWZpbmUgVElNX0RJRVJfQ0MyREUgICAgICAgICAgICAgICAgICAgICAgVElNX0RJRVJfQ0MyREVfTXNrICAgICAgICAgICAgICAgICAvKiE8Q2FwdHVyZS9Db21wYXJlIDIgRE1BIHJlcXVlc3QgZW5hYmxlICovDQojZGVmaW5lIFRJTV9ESUVSX0NDM0RFX1BvcyAgICAgICAgICAgICAgICAgICgxMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFRJTV9ESUVSX0NDM0RFX01zayAgICAgICAgICAgICAgICAgICgweDFVIDw8IFRJTV9ESUVSX0NDM0RFX1BvcykgICAgICAgLyohPCAweDAwMDAwODAwICovDQojZGVmaW5lIFRJTV9ESUVSX0NDM0RFICAgICAgICAgICAgICAgICAgICAgIFRJTV9ESUVSX0NDM0RFX01zayAgICAgICAgICAgICAgICAgLyohPENhcHR1cmUvQ29tcGFyZSAzIERNQSByZXF1ZXN0IGVuYWJsZSAqLw0KI2RlZmluZSBUSU1fRElFUl9DQzRERV9Qb3MgICAgICAgICAgICAgICAgICAoMTJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBUSU1fRElFUl9DQzRERV9Nc2sgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBUSU1fRElFUl9DQzRERV9Qb3MpICAgICAgIC8qITwgMHgwMDAwMTAwMCAqLw0KI2RlZmluZSBUSU1fRElFUl9DQzRERSAgICAgICAgICAgICAgICAgICAgICBUSU1fRElFUl9DQzRERV9Nc2sgICAgICAgICAgICAgICAgIC8qITxDYXB0dXJlL0NvbXBhcmUgNCBETUEgcmVxdWVzdCBlbmFibGUgKi8NCiNkZWZpbmUgVElNX0RJRVJfQ09NREUgICAgICAgICAgICAgICAgICAgICAgKCh1aW50MTZfdCkweDIwMDBVKSAgICAgICAgICAgICAgICAvKiE8Q09NIERNQSByZXF1ZXN0IGVuYWJsZSAqLw0KI2RlZmluZSBUSU1fRElFUl9UREVfUG9zICAgICAgICAgICAgICAgICAgICAoMTRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBUSU1fRElFUl9UREVfTXNrICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBUSU1fRElFUl9UREVfUG9zKSAgICAgICAgIC8qITwgMHgwMDAwNDAwMCAqLw0KI2RlZmluZSBUSU1fRElFUl9UREUgICAgICAgICAgICAgICAgICAgICAgICBUSU1fRElFUl9UREVfTXNrICAgICAgICAgICAgICAgICAgIC8qITxUcmlnZ2VyIERNQSByZXF1ZXN0IGVuYWJsZSAqLw0KDQovKioqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBUSU1fU1IgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBUSU1fU1JfVUlGX1BvcyAgICAgICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBUSU1fU1JfVUlGX01zayAgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBUSU1fU1JfVUlGX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDAwMSAqLw0KI2RlZmluZSBUSU1fU1JfVUlGICAgICAgICAgICAgICAgICAgICAgICAgICBUSU1fU1JfVUlGX01zayAgICAgICAgICAgICAgICAgICAgIC8qITxVcGRhdGUgaW50ZXJydXB0IEZsYWcgKi8NCiNkZWZpbmUgVElNX1NSX0NDMUlGX1BvcyAgICAgICAgICAgICAgICAgICAgKDFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVElNX1NSX0NDMUlGX01zayAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVElNX1NSX0NDMUlGX1BvcykgICAgICAgICAvKiE8IDB4MDAwMDAwMDIgKi8NCiNkZWZpbmUgVElNX1NSX0NDMUlGICAgICAgICAgICAgICAgICAgICAgICAgVElNX1NSX0NDMUlGX01zayAgICAgICAgICAgICAgICAgICAvKiE8Q2FwdHVyZS9Db21wYXJlIDEgaW50ZXJydXB0IEZsYWcgKi8NCiNkZWZpbmUgVElNX1NSX0NDMklGX1BvcyAgICAgICAgICAgICAgICAgICAgKDJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVElNX1NSX0NDMklGX01zayAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVElNX1NSX0NDMklGX1BvcykgICAgICAgICAvKiE8IDB4MDAwMDAwMDQgKi8NCiNkZWZpbmUgVElNX1NSX0NDMklGICAgICAgICAgICAgICAgICAgICAgICAgVElNX1NSX0NDMklGX01zayAgICAgICAgICAgICAgICAgICAvKiE8Q2FwdHVyZS9Db21wYXJlIDIgaW50ZXJydXB0IEZsYWcgKi8NCiNkZWZpbmUgVElNX1NSX0NDM0lGX1BvcyAgICAgICAgICAgICAgICAgICAgKDNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVElNX1NSX0NDM0lGX01zayAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVElNX1NSX0NDM0lGX1BvcykgICAgICAgICAvKiE8IDB4MDAwMDAwMDggKi8NCiNkZWZpbmUgVElNX1NSX0NDM0lGICAgICAgICAgICAgICAgICAgICAgICAgVElNX1NSX0NDM0lGX01zayAgICAgICAgICAgICAgICAgICAvKiE8Q2FwdHVyZS9Db21wYXJlIDMgaW50ZXJydXB0IEZsYWcgKi8NCiNkZWZpbmUgVElNX1NSX0NDNElGX1BvcyAgICAgICAgICAgICAgICAgICAgKDRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVElNX1NSX0NDNElGX01zayAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVElNX1NSX0NDNElGX1BvcykgICAgICAgICAvKiE8IDB4MDAwMDAwMTAgKi8NCiNkZWZpbmUgVElNX1NSX0NDNElGICAgICAgICAgICAgICAgICAgICAgICAgVElNX1NSX0NDNElGX01zayAgICAgICAgICAgICAgICAgICAvKiE8Q2FwdHVyZS9Db21wYXJlIDQgaW50ZXJydXB0IEZsYWcgKi8NCiNkZWZpbmUgVElNX1NSX1RJRl9Qb3MgICAgICAgICAgICAgICAgICAgICAgKDZVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVElNX1NSX1RJRl9Nc2sgICAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVElNX1NSX1RJRl9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDAwNDAgKi8NCiNkZWZpbmUgVElNX1NSX1RJRiAgICAgICAgICAgICAgICAgICAgICAgICAgVElNX1NSX1RJRl9Nc2sgICAgICAgICAgICAgICAgICAgICAvKiE8VHJpZ2dlciBpbnRlcnJ1cHQgRmxhZyAqLw0KI2RlZmluZSBUSU1fU1JfQ0MxT0ZfUG9zICAgICAgICAgICAgICAgICAgICAoOVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBUSU1fU1JfQ0MxT0ZfTXNrICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBUSU1fU1JfQ0MxT0ZfUG9zKSAgICAgICAgIC8qITwgMHgwMDAwMDIwMCAqLw0KI2RlZmluZSBUSU1fU1JfQ0MxT0YgICAgICAgICAgICAgICAgICAgICAgICBUSU1fU1JfQ0MxT0ZfTXNrICAgICAgICAgICAgICAgICAgIC8qITxDYXB0dXJlL0NvbXBhcmUgMSBPdmVyY2FwdHVyZSBGbGFnICovDQojZGVmaW5lIFRJTV9TUl9DQzJPRl9Qb3MgICAgICAgICAgICAgICAgICAgICgxMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFRJTV9TUl9DQzJPRl9Nc2sgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFRJTV9TUl9DQzJPRl9Qb3MpICAgICAgICAgLyohPCAweDAwMDAwNDAwICovDQojZGVmaW5lIFRJTV9TUl9DQzJPRiAgICAgICAgICAgICAgICAgICAgICAgIFRJTV9TUl9DQzJPRl9Nc2sgICAgICAgICAgICAgICAgICAgLyohPENhcHR1cmUvQ29tcGFyZSAyIE92ZXJjYXB0dXJlIEZsYWcgKi8NCiNkZWZpbmUgVElNX1NSX0NDM09GX1BvcyAgICAgICAgICAgICAgICAgICAgKDExVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVElNX1NSX0NDM09GX01zayAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVElNX1NSX0NDM09GX1BvcykgICAgICAgICAvKiE8IDB4MDAwMDA4MDAgKi8NCiNkZWZpbmUgVElNX1NSX0NDM09GICAgICAgICAgICAgICAgICAgICAgICAgVElNX1NSX0NDM09GX01zayAgICAgICAgICAgICAgICAgICAvKiE8Q2FwdHVyZS9Db21wYXJlIDMgT3ZlcmNhcHR1cmUgRmxhZyAqLw0KI2RlZmluZSBUSU1fU1JfQ0M0T0ZfUG9zICAgICAgICAgICAgICAgICAgICAoMTJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBUSU1fU1JfQ0M0T0ZfTXNrICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBUSU1fU1JfQ0M0T0ZfUG9zKSAgICAgICAgIC8qITwgMHgwMDAwMTAwMCAqLw0KI2RlZmluZSBUSU1fU1JfQ0M0T0YgICAgICAgICAgICAgICAgICAgICAgICBUSU1fU1JfQ0M0T0ZfTXNrICAgICAgICAgICAgICAgICAgIC8qITxDYXB0dXJlL0NvbXBhcmUgNCBPdmVyY2FwdHVyZSBGbGFnICovDQoNCi8qKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgVElNX0VHUiByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIFRJTV9FR1JfVUdfUG9zICAgICAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFRJTV9FR1JfVUdfTXNrICAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFRJTV9FR1JfVUdfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwMDAxICovDQojZGVmaW5lIFRJTV9FR1JfVUcgICAgICAgICAgICAgICAgICAgICAgICAgIFRJTV9FR1JfVUdfTXNrICAgICAgICAgICAgICAgICAgICAgLyohPFVwZGF0ZSBHZW5lcmF0aW9uICovDQojZGVmaW5lIFRJTV9FR1JfQ0MxR19Qb3MgICAgICAgICAgICAgICAgICAgICgxVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFRJTV9FR1JfQ0MxR19Nc2sgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFRJTV9FR1JfQ0MxR19Qb3MpICAgICAgICAgLyohPCAweDAwMDAwMDAyICovDQojZGVmaW5lIFRJTV9FR1JfQ0MxRyAgICAgICAgICAgICAgICAgICAgICAgIFRJTV9FR1JfQ0MxR19Nc2sgICAgICAgICAgICAgICAgICAgLyohPENhcHR1cmUvQ29tcGFyZSAxIEdlbmVyYXRpb24gKi8NCiNkZWZpbmUgVElNX0VHUl9DQzJHX1BvcyAgICAgICAgICAgICAgICAgICAgKDJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVElNX0VHUl9DQzJHX01zayAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVElNX0VHUl9DQzJHX1BvcykgICAgICAgICAvKiE8IDB4MDAwMDAwMDQgKi8NCiNkZWZpbmUgVElNX0VHUl9DQzJHICAgICAgICAgICAgICAgICAgICAgICAgVElNX0VHUl9DQzJHX01zayAgICAgICAgICAgICAgICAgICAvKiE8Q2FwdHVyZS9Db21wYXJlIDIgR2VuZXJhdGlvbiAqLw0KI2RlZmluZSBUSU1fRUdSX0NDM0dfUG9zICAgICAgICAgICAgICAgICAgICAoM1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBUSU1fRUdSX0NDM0dfTXNrICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBUSU1fRUdSX0NDM0dfUG9zKSAgICAgICAgIC8qITwgMHgwMDAwMDAwOCAqLw0KI2RlZmluZSBUSU1fRUdSX0NDM0cgICAgICAgICAgICAgICAgICAgICAgICBUSU1fRUdSX0NDM0dfTXNrICAgICAgICAgICAgICAgICAgIC8qITxDYXB0dXJlL0NvbXBhcmUgMyBHZW5lcmF0aW9uICovDQojZGVmaW5lIFRJTV9FR1JfQ0M0R19Qb3MgICAgICAgICAgICAgICAgICAgICg0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFRJTV9FR1JfQ0M0R19Nc2sgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFRJTV9FR1JfQ0M0R19Qb3MpICAgICAgICAgLyohPCAweDAwMDAwMDEwICovDQojZGVmaW5lIFRJTV9FR1JfQ0M0RyAgICAgICAgICAgICAgICAgICAgICAgIFRJTV9FR1JfQ0M0R19Nc2sgICAgICAgICAgICAgICAgICAgLyohPENhcHR1cmUvQ29tcGFyZSA0IEdlbmVyYXRpb24gKi8NCiNkZWZpbmUgVElNX0VHUl9UR19Qb3MgICAgICAgICAgICAgICAgICAgICAgKDZVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVElNX0VHUl9UR19Nc2sgICAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVElNX0VHUl9UR19Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDAwNDAgKi8NCiNkZWZpbmUgVElNX0VHUl9URyAgICAgICAgICAgICAgICAgICAgICAgICAgVElNX0VHUl9UR19Nc2sgICAgICAgICAgICAgICAgICAgICAvKiE8VHJpZ2dlciBHZW5lcmF0aW9uICovDQogICAgICAgICAgICAgICAgICAgDQovKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgVElNX0NDTVIxIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBUSU1fQ0NNUjFfQ0MxU19Qb3MgICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBUSU1fQ0NNUjFfQ0MxU19Nc2sgICAgICAgICAgICAgICAgICAoMHgzVSA8PCBUSU1fQ0NNUjFfQ0MxU19Qb3MpICAgICAgIC8qITwgMHgwMDAwMDAwMyAqLw0KI2RlZmluZSBUSU1fQ0NNUjFfQ0MxUyAgICAgICAgICAgICAgICAgICAgICBUSU1fQ0NNUjFfQ0MxU19Nc2sgICAgICAgICAgICAgICAgIC8qITxDQzFTWzE6MF0gYml0cyAoQ2FwdHVyZS9Db21wYXJlIDEgU2VsZWN0aW9uKSAqLw0KI2RlZmluZSBUSU1fQ0NNUjFfQ0MxU18wICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBUSU1fQ0NNUjFfQ0MxU19Qb3MpICAgICAgIC8qITwgMHgwMDAwMDAwMSAqLw0KI2RlZmluZSBUSU1fQ0NNUjFfQ0MxU18xICAgICAgICAgICAgICAgICAgICAoMHgyVSA8PCBUSU1fQ0NNUjFfQ0MxU19Qb3MpICAgICAgIC8qITwgMHgwMDAwMDAwMiAqLw0KDQojZGVmaW5lIFRJTV9DQ01SMV9PQzFGRV9Qb3MgICAgICAgICAgICAgICAgICgyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFRJTV9DQ01SMV9PQzFGRV9Nc2sgICAgICAgICAgICAgICAgICgweDFVIDw8IFRJTV9DQ01SMV9PQzFGRV9Qb3MpICAgICAgLyohPCAweDAwMDAwMDA0ICovDQojZGVmaW5lIFRJTV9DQ01SMV9PQzFGRSAgICAgICAgICAgICAgICAgICAgIFRJTV9DQ01SMV9PQzFGRV9Nc2sgICAgICAgICAgICAgICAgLyohPE91dHB1dCBDb21wYXJlIDEgRmFzdCBlbmFibGUgKi8NCiNkZWZpbmUgVElNX0NDTVIxX09DMVBFX1BvcyAgICAgICAgICAgICAgICAgKDNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVElNX0NDTVIxX09DMVBFX01zayAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVElNX0NDTVIxX09DMVBFX1BvcykgICAgICAvKiE8IDB4MDAwMDAwMDggKi8NCiNkZWZpbmUgVElNX0NDTVIxX09DMVBFICAgICAgICAgICAgICAgICAgICAgVElNX0NDTVIxX09DMVBFX01zayAgICAgICAgICAgICAgICAvKiE8T3V0cHV0IENvbXBhcmUgMSBQcmVsb2FkIGVuYWJsZSAqLw0KDQojZGVmaW5lIFRJTV9DQ01SMV9PQzFNX1BvcyAgICAgICAgICAgICAgICAgICg0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFRJTV9DQ01SMV9PQzFNX01zayAgICAgICAgICAgICAgICAgICgweDdVIDw8IFRJTV9DQ01SMV9PQzFNX1BvcykgICAgICAgLyohPCAweDAwMDAwMDcwICovDQojZGVmaW5lIFRJTV9DQ01SMV9PQzFNICAgICAgICAgICAgICAgICAgICAgIFRJTV9DQ01SMV9PQzFNX01zayAgICAgICAgICAgICAgICAgLyohPE9DMU1bMjowXSBiaXRzIChPdXRwdXQgQ29tcGFyZSAxIE1vZGUpICovDQojZGVmaW5lIFRJTV9DQ01SMV9PQzFNXzAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFRJTV9DQ01SMV9PQzFNX1BvcykgICAgICAgLyohPCAweDAwMDAwMDEwICovDQojZGVmaW5lIFRJTV9DQ01SMV9PQzFNXzEgICAgICAgICAgICAgICAgICAgICgweDJVIDw8IFRJTV9DQ01SMV9PQzFNX1BvcykgICAgICAgLyohPCAweDAwMDAwMDIwICovDQojZGVmaW5lIFRJTV9DQ01SMV9PQzFNXzIgICAgICAgICAgICAgICAgICAgICgweDRVIDw8IFRJTV9DQ01SMV9PQzFNX1BvcykgICAgICAgLyohPCAweDAwMDAwMDQwICovDQoNCiNkZWZpbmUgVElNX0NDTVIxX09DMUNFX1BvcyAgICAgICAgICAgICAgICAgKDdVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVElNX0NDTVIxX09DMUNFX01zayAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVElNX0NDTVIxX09DMUNFX1BvcykgICAgICAvKiE8IDB4MDAwMDAwODAgKi8NCiNkZWZpbmUgVElNX0NDTVIxX09DMUNFICAgICAgICAgICAgICAgICAgICAgVElNX0NDTVIxX09DMUNFX01zayAgICAgICAgICAgICAgICAvKiE8T3V0cHV0IENvbXBhcmUgMUNsZWFyIEVuYWJsZSAqLw0KDQojZGVmaW5lIFRJTV9DQ01SMV9DQzJTX1BvcyAgICAgICAgICAgICAgICAgICg4VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFRJTV9DQ01SMV9DQzJTX01zayAgICAgICAgICAgICAgICAgICgweDNVIDw8IFRJTV9DQ01SMV9DQzJTX1BvcykgICAgICAgLyohPCAweDAwMDAwMzAwICovDQojZGVmaW5lIFRJTV9DQ01SMV9DQzJTICAgICAgICAgICAgICAgICAgICAgIFRJTV9DQ01SMV9DQzJTX01zayAgICAgICAgICAgICAgICAgLyohPENDMlNbMTowXSBiaXRzIChDYXB0dXJlL0NvbXBhcmUgMiBTZWxlY3Rpb24pICovDQojZGVmaW5lIFRJTV9DQ01SMV9DQzJTXzAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFRJTV9DQ01SMV9DQzJTX1BvcykgICAgICAgLyohPCAweDAwMDAwMTAwICovDQojZGVmaW5lIFRJTV9DQ01SMV9DQzJTXzEgICAgICAgICAgICAgICAgICAgICgweDJVIDw8IFRJTV9DQ01SMV9DQzJTX1BvcykgICAgICAgLyohPCAweDAwMDAwMjAwICovDQoNCiNkZWZpbmUgVElNX0NDTVIxX09DMkZFX1BvcyAgICAgICAgICAgICAgICAgKDEwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVElNX0NDTVIxX09DMkZFX01zayAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVElNX0NDTVIxX09DMkZFX1BvcykgICAgICAvKiE8IDB4MDAwMDA0MDAgKi8NCiNkZWZpbmUgVElNX0NDTVIxX09DMkZFICAgICAgICAgICAgICAgICAgICAgVElNX0NDTVIxX09DMkZFX01zayAgICAgICAgICAgICAgICAvKiE8T3V0cHV0IENvbXBhcmUgMiBGYXN0IGVuYWJsZSAqLw0KI2RlZmluZSBUSU1fQ0NNUjFfT0MyUEVfUG9zICAgICAgICAgICAgICAgICAoMTFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBUSU1fQ0NNUjFfT0MyUEVfTXNrICAgICAgICAgICAgICAgICAoMHgxVSA8PCBUSU1fQ0NNUjFfT0MyUEVfUG9zKSAgICAgIC8qITwgMHgwMDAwMDgwMCAqLw0KI2RlZmluZSBUSU1fQ0NNUjFfT0MyUEUgICAgICAgICAgICAgICAgICAgICBUSU1fQ0NNUjFfT0MyUEVfTXNrICAgICAgICAgICAgICAgIC8qITxPdXRwdXQgQ29tcGFyZSAyIFByZWxvYWQgZW5hYmxlICovDQoNCiNkZWZpbmUgVElNX0NDTVIxX09DMk1fUG9zICAgICAgICAgICAgICAgICAgKDEyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVElNX0NDTVIxX09DMk1fTXNrICAgICAgICAgICAgICAgICAgKDB4N1UgPDwgVElNX0NDTVIxX09DMk1fUG9zKSAgICAgICAvKiE8IDB4MDAwMDcwMDAgKi8NCiNkZWZpbmUgVElNX0NDTVIxX09DMk0gICAgICAgICAgICAgICAgICAgICAgVElNX0NDTVIxX09DMk1fTXNrICAgICAgICAgICAgICAgICAvKiE8T0MyTVsyOjBdIGJpdHMgKE91dHB1dCBDb21wYXJlIDIgTW9kZSkgKi8NCiNkZWZpbmUgVElNX0NDTVIxX09DMk1fMCAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVElNX0NDTVIxX09DMk1fUG9zKSAgICAgICAvKiE8IDB4MDAwMDEwMDAgKi8NCiNkZWZpbmUgVElNX0NDTVIxX09DMk1fMSAgICAgICAgICAgICAgICAgICAgKDB4MlUgPDwgVElNX0NDTVIxX09DMk1fUG9zKSAgICAgICAvKiE8IDB4MDAwMDIwMDAgKi8NCiNkZWZpbmUgVElNX0NDTVIxX09DMk1fMiAgICAgICAgICAgICAgICAgICAgKDB4NFUgPDwgVElNX0NDTVIxX09DMk1fUG9zKSAgICAgICAvKiE8IDB4MDAwMDQwMDAgKi8NCg0KI2RlZmluZSBUSU1fQ0NNUjFfT0MyQ0VfUG9zICAgICAgICAgICAgICAgICAoMTVVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBUSU1fQ0NNUjFfT0MyQ0VfTXNrICAgICAgICAgICAgICAgICAoMHgxVSA8PCBUSU1fQ0NNUjFfT0MyQ0VfUG9zKSAgICAgIC8qITwgMHgwMDAwODAwMCAqLw0KI2RlZmluZSBUSU1fQ0NNUjFfT0MyQ0UgICAgICAgICAgICAgICAgICAgICBUSU1fQ0NNUjFfT0MyQ0VfTXNrICAgICAgICAgICAgICAgIC8qITxPdXRwdXQgQ29tcGFyZSAyIENsZWFyIEVuYWJsZSAqLw0KDQovKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qLw0KDQojZGVmaW5lIFRJTV9DQ01SMV9JQzFQU0NfUG9zICAgICAgICAgICAgICAgICgyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFRJTV9DQ01SMV9JQzFQU0NfTXNrICAgICAgICAgICAgICAgICgweDNVIDw8IFRJTV9DQ01SMV9JQzFQU0NfUG9zKSAgICAgLyohPCAweDAwMDAwMDBDICovDQojZGVmaW5lIFRJTV9DQ01SMV9JQzFQU0MgICAgICAgICAgICAgICAgICAgIFRJTV9DQ01SMV9JQzFQU0NfTXNrICAgICAgICAgICAgICAgLyohPElDMVBTQ1sxOjBdIGJpdHMgKElucHV0IENhcHR1cmUgMSBQcmVzY2FsZXIpICovDQojZGVmaW5lIFRJTV9DQ01SMV9JQzFQU0NfMCAgICAgICAgICAgICAgICAgICgweDFVIDw8IFRJTV9DQ01SMV9JQzFQU0NfUG9zKSAgICAgLyohPCAweDAwMDAwMDA0ICovDQojZGVmaW5lIFRJTV9DQ01SMV9JQzFQU0NfMSAgICAgICAgICAgICAgICAgICgweDJVIDw8IFRJTV9DQ01SMV9JQzFQU0NfUG9zKSAgICAgLyohPCAweDAwMDAwMDA4ICovDQoNCiNkZWZpbmUgVElNX0NDTVIxX0lDMUZfUG9zICAgICAgICAgICAgICAgICAgKDRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVElNX0NDTVIxX0lDMUZfTXNrICAgICAgICAgICAgICAgICAgKDB4RlUgPDwgVElNX0NDTVIxX0lDMUZfUG9zKSAgICAgICAvKiE8IDB4MDAwMDAwRjAgKi8NCiNkZWZpbmUgVElNX0NDTVIxX0lDMUYgICAgICAgICAgICAgICAgICAgICAgVElNX0NDTVIxX0lDMUZfTXNrICAgICAgICAgICAgICAgICAvKiE8SUMxRlszOjBdIGJpdHMgKElucHV0IENhcHR1cmUgMSBGaWx0ZXIpICovDQojZGVmaW5lIFRJTV9DQ01SMV9JQzFGXzAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFRJTV9DQ01SMV9JQzFGX1BvcykgICAgICAgLyohPCAweDAwMDAwMDEwICovDQojZGVmaW5lIFRJTV9DQ01SMV9JQzFGXzEgICAgICAgICAgICAgICAgICAgICgweDJVIDw8IFRJTV9DQ01SMV9JQzFGX1BvcykgICAgICAgLyohPCAweDAwMDAwMDIwICovDQojZGVmaW5lIFRJTV9DQ01SMV9JQzFGXzIgICAgICAgICAgICAgICAgICAgICgweDRVIDw8IFRJTV9DQ01SMV9JQzFGX1BvcykgICAgICAgLyohPCAweDAwMDAwMDQwICovDQojZGVmaW5lIFRJTV9DQ01SMV9JQzFGXzMgICAgICAgICAgICAgICAgICAgICgweDhVIDw8IFRJTV9DQ01SMV9JQzFGX1BvcykgICAgICAgLyohPCAweDAwMDAwMDgwICovDQoNCiNkZWZpbmUgVElNX0NDTVIxX0lDMlBTQ19Qb3MgICAgICAgICAgICAgICAgKDEwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVElNX0NDTVIxX0lDMlBTQ19Nc2sgICAgICAgICAgICAgICAgKDB4M1UgPDwgVElNX0NDTVIxX0lDMlBTQ19Qb3MpICAgICAvKiE8IDB4MDAwMDBDMDAgKi8NCiNkZWZpbmUgVElNX0NDTVIxX0lDMlBTQyAgICAgICAgICAgICAgICAgICAgVElNX0NDTVIxX0lDMlBTQ19Nc2sgICAgICAgICAgICAgICAvKiE8SUMyUFNDWzE6MF0gYml0cyAoSW5wdXQgQ2FwdHVyZSAyIFByZXNjYWxlcikgKi8NCiNkZWZpbmUgVElNX0NDTVIxX0lDMlBTQ18wICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVElNX0NDTVIxX0lDMlBTQ19Qb3MpICAgICAvKiE8IDB4MDAwMDA0MDAgKi8NCiNkZWZpbmUgVElNX0NDTVIxX0lDMlBTQ18xICAgICAgICAgICAgICAgICAgKDB4MlUgPDwgVElNX0NDTVIxX0lDMlBTQ19Qb3MpICAgICAvKiE8IDB4MDAwMDA4MDAgKi8NCg0KI2RlZmluZSBUSU1fQ0NNUjFfSUMyRl9Qb3MgICAgICAgICAgICAgICAgICAoMTJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBUSU1fQ0NNUjFfSUMyRl9Nc2sgICAgICAgICAgICAgICAgICAoMHhGVSA8PCBUSU1fQ0NNUjFfSUMyRl9Qb3MpICAgICAgIC8qITwgMHgwMDAwRjAwMCAqLw0KI2RlZmluZSBUSU1fQ0NNUjFfSUMyRiAgICAgICAgICAgICAgICAgICAgICBUSU1fQ0NNUjFfSUMyRl9Nc2sgICAgICAgICAgICAgICAgIC8qITxJQzJGWzM6MF0gYml0cyAoSW5wdXQgQ2FwdHVyZSAyIEZpbHRlcikgKi8NCiNkZWZpbmUgVElNX0NDTVIxX0lDMkZfMCAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVElNX0NDTVIxX0lDMkZfUG9zKSAgICAgICAvKiE8IDB4MDAwMDEwMDAgKi8NCiNkZWZpbmUgVElNX0NDTVIxX0lDMkZfMSAgICAgICAgICAgICAgICAgICAgKDB4MlUgPDwgVElNX0NDTVIxX0lDMkZfUG9zKSAgICAgICAvKiE8IDB4MDAwMDIwMDAgKi8NCiNkZWZpbmUgVElNX0NDTVIxX0lDMkZfMiAgICAgICAgICAgICAgICAgICAgKDB4NFUgPDwgVElNX0NDTVIxX0lDMkZfUG9zKSAgICAgICAvKiE8IDB4MDAwMDQwMDAgKi8NCiNkZWZpbmUgVElNX0NDTVIxX0lDMkZfMyAgICAgICAgICAgICAgICAgICAgKDB4OFUgPDwgVElNX0NDTVIxX0lDMkZfUG9zKSAgICAgICAvKiE8IDB4MDAwMDgwMDAgKi8NCg0KLyoqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFRJTV9DQ01SMiByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgVElNX0NDTVIyX0NDM1NfUG9zICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVElNX0NDTVIyX0NDM1NfTXNrICAgICAgICAgICAgICAgICAgKDB4M1UgPDwgVElNX0NDTVIyX0NDM1NfUG9zKSAgICAgICAvKiE8IDB4MDAwMDAwMDMgKi8NCiNkZWZpbmUgVElNX0NDTVIyX0NDM1MgICAgICAgICAgICAgICAgICAgICAgVElNX0NDTVIyX0NDM1NfTXNrICAgICAgICAgICAgICAgICAvKiE8Q0MzU1sxOjBdIGJpdHMgKENhcHR1cmUvQ29tcGFyZSAzIFNlbGVjdGlvbikgKi8NCiNkZWZpbmUgVElNX0NDTVIyX0NDM1NfMCAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVElNX0NDTVIyX0NDM1NfUG9zKSAgICAgICAvKiE8IDB4MDAwMDAwMDEgKi8NCiNkZWZpbmUgVElNX0NDTVIyX0NDM1NfMSAgICAgICAgICAgICAgICAgICAgKDB4MlUgPDwgVElNX0NDTVIyX0NDM1NfUG9zKSAgICAgICAvKiE8IDB4MDAwMDAwMDIgKi8NCg0KI2RlZmluZSBUSU1fQ0NNUjJfT0MzRkVfUG9zICAgICAgICAgICAgICAgICAoMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBUSU1fQ0NNUjJfT0MzRkVfTXNrICAgICAgICAgICAgICAgICAoMHgxVSA8PCBUSU1fQ0NNUjJfT0MzRkVfUG9zKSAgICAgIC8qITwgMHgwMDAwMDAwNCAqLw0KI2RlZmluZSBUSU1fQ0NNUjJfT0MzRkUgICAgICAgICAgICAgICAgICAgICBUSU1fQ0NNUjJfT0MzRkVfTXNrICAgICAgICAgICAgICAgIC8qITxPdXRwdXQgQ29tcGFyZSAzIEZhc3QgZW5hYmxlICovDQojZGVmaW5lIFRJTV9DQ01SMl9PQzNQRV9Qb3MgICAgICAgICAgICAgICAgICgzVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFRJTV9DQ01SMl9PQzNQRV9Nc2sgICAgICAgICAgICAgICAgICgweDFVIDw8IFRJTV9DQ01SMl9PQzNQRV9Qb3MpICAgICAgLyohPCAweDAwMDAwMDA4ICovDQojZGVmaW5lIFRJTV9DQ01SMl9PQzNQRSAgICAgICAgICAgICAgICAgICAgIFRJTV9DQ01SMl9PQzNQRV9Nc2sgICAgICAgICAgICAgICAgLyohPE91dHB1dCBDb21wYXJlIDMgUHJlbG9hZCBlbmFibGUgKi8NCg0KI2RlZmluZSBUSU1fQ0NNUjJfT0MzTV9Qb3MgICAgICAgICAgICAgICAgICAoNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBUSU1fQ0NNUjJfT0MzTV9Nc2sgICAgICAgICAgICAgICAgICAoMHg3VSA8PCBUSU1fQ0NNUjJfT0MzTV9Qb3MpICAgICAgIC8qITwgMHgwMDAwMDA3MCAqLw0KI2RlZmluZSBUSU1fQ0NNUjJfT0MzTSAgICAgICAgICAgICAgICAgICAgICBUSU1fQ0NNUjJfT0MzTV9Nc2sgICAgICAgICAgICAgICAgIC8qITxPQzNNWzI6MF0gYml0cyAoT3V0cHV0IENvbXBhcmUgMyBNb2RlKSAqLw0KI2RlZmluZSBUSU1fQ0NNUjJfT0MzTV8wICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBUSU1fQ0NNUjJfT0MzTV9Qb3MpICAgICAgIC8qITwgMHgwMDAwMDAxMCAqLw0KI2RlZmluZSBUSU1fQ0NNUjJfT0MzTV8xICAgICAgICAgICAgICAgICAgICAoMHgyVSA8PCBUSU1fQ0NNUjJfT0MzTV9Qb3MpICAgICAgIC8qITwgMHgwMDAwMDAyMCAqLw0KI2RlZmluZSBUSU1fQ0NNUjJfT0MzTV8yICAgICAgICAgICAgICAgICAgICAoMHg0VSA8PCBUSU1fQ0NNUjJfT0MzTV9Qb3MpICAgICAgIC8qITwgMHgwMDAwMDA0MCAqLw0KDQojZGVmaW5lIFRJTV9DQ01SMl9PQzNDRV9Qb3MgICAgICAgICAgICAgICAgICg3VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFRJTV9DQ01SMl9PQzNDRV9Nc2sgICAgICAgICAgICAgICAgICgweDFVIDw8IFRJTV9DQ01SMl9PQzNDRV9Qb3MpICAgICAgLyohPCAweDAwMDAwMDgwICovDQojZGVmaW5lIFRJTV9DQ01SMl9PQzNDRSAgICAgICAgICAgICAgICAgICAgIFRJTV9DQ01SMl9PQzNDRV9Nc2sgICAgICAgICAgICAgICAgLyohPE91dHB1dCBDb21wYXJlIDMgQ2xlYXIgRW5hYmxlICovDQoNCiNkZWZpbmUgVElNX0NDTVIyX0NDNFNfUG9zICAgICAgICAgICAgICAgICAgKDhVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVElNX0NDTVIyX0NDNFNfTXNrICAgICAgICAgICAgICAgICAgKDB4M1UgPDwgVElNX0NDTVIyX0NDNFNfUG9zKSAgICAgICAvKiE8IDB4MDAwMDAzMDAgKi8NCiNkZWZpbmUgVElNX0NDTVIyX0NDNFMgICAgICAgICAgICAgICAgICAgICAgVElNX0NDTVIyX0NDNFNfTXNrICAgICAgICAgICAgICAgICAvKiE8Q0M0U1sxOjBdIGJpdHMgKENhcHR1cmUvQ29tcGFyZSA0IFNlbGVjdGlvbikgKi8NCiNkZWZpbmUgVElNX0NDTVIyX0NDNFNfMCAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVElNX0NDTVIyX0NDNFNfUG9zKSAgICAgICAvKiE8IDB4MDAwMDAxMDAgKi8NCiNkZWZpbmUgVElNX0NDTVIyX0NDNFNfMSAgICAgICAgICAgICAgICAgICAgKDB4MlUgPDwgVElNX0NDTVIyX0NDNFNfUG9zKSAgICAgICAvKiE8IDB4MDAwMDAyMDAgKi8NCg0KI2RlZmluZSBUSU1fQ0NNUjJfT0M0RkVfUG9zICAgICAgICAgICAgICAgICAoMTBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBUSU1fQ0NNUjJfT0M0RkVfTXNrICAgICAgICAgICAgICAgICAoMHgxVSA8PCBUSU1fQ0NNUjJfT0M0RkVfUG9zKSAgICAgIC8qITwgMHgwMDAwMDQwMCAqLw0KI2RlZmluZSBUSU1fQ0NNUjJfT0M0RkUgICAgICAgICAgICAgICAgICAgICBUSU1fQ0NNUjJfT0M0RkVfTXNrICAgICAgICAgICAgICAgIC8qITxPdXRwdXQgQ29tcGFyZSA0IEZhc3QgZW5hYmxlICovDQojZGVmaW5lIFRJTV9DQ01SMl9PQzRQRV9Qb3MgICAgICAgICAgICAgICAgICgxMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFRJTV9DQ01SMl9PQzRQRV9Nc2sgICAgICAgICAgICAgICAgICgweDFVIDw8IFRJTV9DQ01SMl9PQzRQRV9Qb3MpICAgICAgLyohPCAweDAwMDAwODAwICovDQojZGVmaW5lIFRJTV9DQ01SMl9PQzRQRSAgICAgICAgICAgICAgICAgICAgIFRJTV9DQ01SMl9PQzRQRV9Nc2sgICAgICAgICAgICAgICAgLyohPE91dHB1dCBDb21wYXJlIDQgUHJlbG9hZCBlbmFibGUgKi8NCg0KI2RlZmluZSBUSU1fQ0NNUjJfT0M0TV9Qb3MgICAgICAgICAgICAgICAgICAoMTJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBUSU1fQ0NNUjJfT0M0TV9Nc2sgICAgICAgICAgICAgICAgICAoMHg3VSA8PCBUSU1fQ0NNUjJfT0M0TV9Qb3MpICAgICAgIC8qITwgMHgwMDAwNzAwMCAqLw0KI2RlZmluZSBUSU1fQ0NNUjJfT0M0TSAgICAgICAgICAgICAgICAgICAgICBUSU1fQ0NNUjJfT0M0TV9Nc2sgICAgICAgICAgICAgICAgIC8qITxPQzRNWzI6MF0gYml0cyAoT3V0cHV0IENvbXBhcmUgNCBNb2RlKSAqLw0KI2RlZmluZSBUSU1fQ0NNUjJfT0M0TV8wICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBUSU1fQ0NNUjJfT0M0TV9Qb3MpICAgICAgIC8qITwgMHgwMDAwMTAwMCAqLw0KI2RlZmluZSBUSU1fQ0NNUjJfT0M0TV8xICAgICAgICAgICAgICAgICAgICAoMHgyVSA8PCBUSU1fQ0NNUjJfT0M0TV9Qb3MpICAgICAgIC8qITwgMHgwMDAwMjAwMCAqLw0KI2RlZmluZSBUSU1fQ0NNUjJfT0M0TV8yICAgICAgICAgICAgICAgICAgICAoMHg0VSA8PCBUSU1fQ0NNUjJfT0M0TV9Qb3MpICAgICAgIC8qITwgMHgwMDAwNDAwMCAqLw0KDQojZGVmaW5lIFRJTV9DQ01SMl9PQzRDRV9Qb3MgICAgICAgICAgICAgICAgICgxNVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFRJTV9DQ01SMl9PQzRDRV9Nc2sgICAgICAgICAgICAgICAgICgweDFVIDw8IFRJTV9DQ01SMl9PQzRDRV9Qb3MpICAgICAgLyohPCAweDAwMDA4MDAwICovDQojZGVmaW5lIFRJTV9DQ01SMl9PQzRDRSAgICAgICAgICAgICAgICAgICAgIFRJTV9DQ01SMl9PQzRDRV9Nc2sgICAgICAgICAgICAgICAgLyohPE91dHB1dCBDb21wYXJlIDQgQ2xlYXIgRW5hYmxlICovDQoNCi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovDQoNCiNkZWZpbmUgVElNX0NDTVIyX0lDM1BTQ19Qb3MgICAgICAgICAgICAgICAgKDJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVElNX0NDTVIyX0lDM1BTQ19Nc2sgICAgICAgICAgICAgICAgKDB4M1UgPDwgVElNX0NDTVIyX0lDM1BTQ19Qb3MpICAgICAvKiE8IDB4MDAwMDAwMEMgKi8NCiNkZWZpbmUgVElNX0NDTVIyX0lDM1BTQyAgICAgICAgICAgICAgICAgICAgVElNX0NDTVIyX0lDM1BTQ19Nc2sgICAgICAgICAgICAgICAvKiE8SUMzUFNDWzE6MF0gYml0cyAoSW5wdXQgQ2FwdHVyZSAzIFByZXNjYWxlcikgKi8NCiNkZWZpbmUgVElNX0NDTVIyX0lDM1BTQ18wICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVElNX0NDTVIyX0lDM1BTQ19Qb3MpICAgICAvKiE8IDB4MDAwMDAwMDQgKi8NCiNkZWZpbmUgVElNX0NDTVIyX0lDM1BTQ18xICAgICAgICAgICAgICAgICAgKDB4MlUgPDwgVElNX0NDTVIyX0lDM1BTQ19Qb3MpICAgICAvKiE8IDB4MDAwMDAwMDggKi8NCg0KI2RlZmluZSBUSU1fQ0NNUjJfSUMzRl9Qb3MgICAgICAgICAgICAgICAgICAoNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBUSU1fQ0NNUjJfSUMzRl9Nc2sgICAgICAgICAgICAgICAgICAoMHhGVSA8PCBUSU1fQ0NNUjJfSUMzRl9Qb3MpICAgICAgIC8qITwgMHgwMDAwMDBGMCAqLw0KI2RlZmluZSBUSU1fQ0NNUjJfSUMzRiAgICAgICAgICAgICAgICAgICAgICBUSU1fQ0NNUjJfSUMzRl9Nc2sgICAgICAgICAgICAgICAgIC8qITxJQzNGWzM6MF0gYml0cyAoSW5wdXQgQ2FwdHVyZSAzIEZpbHRlcikgKi8NCiNkZWZpbmUgVElNX0NDTVIyX0lDM0ZfMCAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVElNX0NDTVIyX0lDM0ZfUG9zKSAgICAgICAvKiE8IDB4MDAwMDAwMTAgKi8NCiNkZWZpbmUgVElNX0NDTVIyX0lDM0ZfMSAgICAgICAgICAgICAgICAgICAgKDB4MlUgPDwgVElNX0NDTVIyX0lDM0ZfUG9zKSAgICAgICAvKiE8IDB4MDAwMDAwMjAgKi8NCiNkZWZpbmUgVElNX0NDTVIyX0lDM0ZfMiAgICAgICAgICAgICAgICAgICAgKDB4NFUgPDwgVElNX0NDTVIyX0lDM0ZfUG9zKSAgICAgICAvKiE8IDB4MDAwMDAwNDAgKi8NCiNkZWZpbmUgVElNX0NDTVIyX0lDM0ZfMyAgICAgICAgICAgICAgICAgICAgKDB4OFUgPDwgVElNX0NDTVIyX0lDM0ZfUG9zKSAgICAgICAvKiE8IDB4MDAwMDAwODAgKi8NCg0KI2RlZmluZSBUSU1fQ0NNUjJfSUM0UFNDX1BvcyAgICAgICAgICAgICAgICAoMTBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBUSU1fQ0NNUjJfSUM0UFNDX01zayAgICAgICAgICAgICAgICAoMHgzVSA8PCBUSU1fQ0NNUjJfSUM0UFNDX1BvcykgICAgIC8qITwgMHgwMDAwMEMwMCAqLw0KI2RlZmluZSBUSU1fQ0NNUjJfSUM0UFNDICAgICAgICAgICAgICAgICAgICBUSU1fQ0NNUjJfSUM0UFNDX01zayAgICAgICAgICAgICAgIC8qITxJQzRQU0NbMTowXSBiaXRzIChJbnB1dCBDYXB0dXJlIDQgUHJlc2NhbGVyKSAqLw0KI2RlZmluZSBUSU1fQ0NNUjJfSUM0UFNDXzAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBUSU1fQ0NNUjJfSUM0UFNDX1BvcykgICAgIC8qITwgMHgwMDAwMDQwMCAqLw0KI2RlZmluZSBUSU1fQ0NNUjJfSUM0UFNDXzEgICAgICAgICAgICAgICAgICAoMHgyVSA8PCBUSU1fQ0NNUjJfSUM0UFNDX1BvcykgICAgIC8qITwgMHgwMDAwMDgwMCAqLw0KDQojZGVmaW5lIFRJTV9DQ01SMl9JQzRGX1BvcyAgICAgICAgICAgICAgICAgICgxMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFRJTV9DQ01SMl9JQzRGX01zayAgICAgICAgICAgICAgICAgICgweEZVIDw8IFRJTV9DQ01SMl9JQzRGX1BvcykgICAgICAgLyohPCAweDAwMDBGMDAwICovDQojZGVmaW5lIFRJTV9DQ01SMl9JQzRGICAgICAgICAgICAgICAgICAgICAgIFRJTV9DQ01SMl9JQzRGX01zayAgICAgICAgICAgICAgICAgLyohPElDNEZbMzowXSBiaXRzIChJbnB1dCBDYXB0dXJlIDQgRmlsdGVyKSAqLw0KI2RlZmluZSBUSU1fQ0NNUjJfSUM0Rl8wICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBUSU1fQ0NNUjJfSUM0Rl9Qb3MpICAgICAgIC8qITwgMHgwMDAwMTAwMCAqLw0KI2RlZmluZSBUSU1fQ0NNUjJfSUM0Rl8xICAgICAgICAgICAgICAgICAgICAoMHgyVSA8PCBUSU1fQ0NNUjJfSUM0Rl9Qb3MpICAgICAgIC8qITwgMHgwMDAwMjAwMCAqLw0KI2RlZmluZSBUSU1fQ0NNUjJfSUM0Rl8yICAgICAgICAgICAgICAgICAgICAoMHg0VSA8PCBUSU1fQ0NNUjJfSUM0Rl9Qb3MpICAgICAgIC8qITwgMHgwMDAwNDAwMCAqLw0KI2RlZmluZSBUSU1fQ0NNUjJfSUM0Rl8zICAgICAgICAgICAgICAgICAgICAoMHg4VSA8PCBUSU1fQ0NNUjJfSUM0Rl9Qb3MpICAgICAgIC8qITwgMHgwMDAwODAwMCAqLw0KDQovKioqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFRJTV9DQ0VSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBUSU1fQ0NFUl9DQzFFX1BvcyAgICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBUSU1fQ0NFUl9DQzFFX01zayAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBUSU1fQ0NFUl9DQzFFX1BvcykgICAgICAgIC8qITwgMHgwMDAwMDAwMSAqLw0KI2RlZmluZSBUSU1fQ0NFUl9DQzFFICAgICAgICAgICAgICAgICAgICAgICBUSU1fQ0NFUl9DQzFFX01zayAgICAgICAgICAgICAgICAgIC8qITxDYXB0dXJlL0NvbXBhcmUgMSBvdXRwdXQgZW5hYmxlICovDQojZGVmaW5lIFRJTV9DQ0VSX0NDMVBfUG9zICAgICAgICAgICAgICAgICAgICgxVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFRJTV9DQ0VSX0NDMVBfTXNrICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFRJTV9DQ0VSX0NDMVBfUG9zKSAgICAgICAgLyohPCAweDAwMDAwMDAyICovDQojZGVmaW5lIFRJTV9DQ0VSX0NDMVAgICAgICAgICAgICAgICAgICAgICAgIFRJTV9DQ0VSX0NDMVBfTXNrICAgICAgICAgICAgICAgICAgLyohPENhcHR1cmUvQ29tcGFyZSAxIG91dHB1dCBQb2xhcml0eSAqLw0KI2RlZmluZSBUSU1fQ0NFUl9DQzFOUF9Qb3MgICAgICAgICAgICAgICAgICAoM1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBUSU1fQ0NFUl9DQzFOUF9Nc2sgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBUSU1fQ0NFUl9DQzFOUF9Qb3MpICAgICAgIC8qITwgMHgwMDAwMDAwOCAqLw0KI2RlZmluZSBUSU1fQ0NFUl9DQzFOUCAgICAgICAgICAgICAgICAgICAgICBUSU1fQ0NFUl9DQzFOUF9Nc2sgICAgICAgICAgICAgICAgIC8qITxDYXB0dXJlL0NvbXBhcmUgMSBDb21wbGVtZW50YXJ5IG91dHB1dCBQb2xhcml0eSAqLw0KI2RlZmluZSBUSU1fQ0NFUl9DQzJFX1BvcyAgICAgICAgICAgICAgICAgICAoNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBUSU1fQ0NFUl9DQzJFX01zayAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBUSU1fQ0NFUl9DQzJFX1BvcykgICAgICAgIC8qITwgMHgwMDAwMDAxMCAqLw0KI2RlZmluZSBUSU1fQ0NFUl9DQzJFICAgICAgICAgICAgICAgICAgICAgICBUSU1fQ0NFUl9DQzJFX01zayAgICAgICAgICAgICAgICAgIC8qITxDYXB0dXJlL0NvbXBhcmUgMiBvdXRwdXQgZW5hYmxlICovDQojZGVmaW5lIFRJTV9DQ0VSX0NDMlBfUG9zICAgICAgICAgICAgICAgICAgICg1VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFRJTV9DQ0VSX0NDMlBfTXNrICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFRJTV9DQ0VSX0NDMlBfUG9zKSAgICAgICAgLyohPCAweDAwMDAwMDIwICovDQojZGVmaW5lIFRJTV9DQ0VSX0NDMlAgICAgICAgICAgICAgICAgICAgICAgIFRJTV9DQ0VSX0NDMlBfTXNrICAgICAgICAgICAgICAgICAgLyohPENhcHR1cmUvQ29tcGFyZSAyIG91dHB1dCBQb2xhcml0eSAqLw0KI2RlZmluZSBUSU1fQ0NFUl9DQzJOUF9Qb3MgICAgICAgICAgICAgICAgICAoN1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBUSU1fQ0NFUl9DQzJOUF9Nc2sgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBUSU1fQ0NFUl9DQzJOUF9Qb3MpICAgICAgIC8qITwgMHgwMDAwMDA4MCAqLw0KI2RlZmluZSBUSU1fQ0NFUl9DQzJOUCAgICAgICAgICAgICAgICAgICAgICBUSU1fQ0NFUl9DQzJOUF9Nc2sgICAgICAgICAgICAgICAgIC8qITxDYXB0dXJlL0NvbXBhcmUgMiBDb21wbGVtZW50YXJ5IG91dHB1dCBQb2xhcml0eSAqLw0KI2RlZmluZSBUSU1fQ0NFUl9DQzNFX1BvcyAgICAgICAgICAgICAgICAgICAoOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBUSU1fQ0NFUl9DQzNFX01zayAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBUSU1fQ0NFUl9DQzNFX1BvcykgICAgICAgIC8qITwgMHgwMDAwMDEwMCAqLw0KI2RlZmluZSBUSU1fQ0NFUl9DQzNFICAgICAgICAgICAgICAgICAgICAgICBUSU1fQ0NFUl9DQzNFX01zayAgICAgICAgICAgICAgICAgIC8qITxDYXB0dXJlL0NvbXBhcmUgMyBvdXRwdXQgZW5hYmxlICovDQojZGVmaW5lIFRJTV9DQ0VSX0NDM1BfUG9zICAgICAgICAgICAgICAgICAgICg5VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFRJTV9DQ0VSX0NDM1BfTXNrICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFRJTV9DQ0VSX0NDM1BfUG9zKSAgICAgICAgLyohPCAweDAwMDAwMjAwICovDQojZGVmaW5lIFRJTV9DQ0VSX0NDM1AgICAgICAgICAgICAgICAgICAgICAgIFRJTV9DQ0VSX0NDM1BfTXNrICAgICAgICAgICAgICAgICAgLyohPENhcHR1cmUvQ29tcGFyZSAzIG91dHB1dCBQb2xhcml0eSAqLw0KI2RlZmluZSBUSU1fQ0NFUl9DQzNOUF9Qb3MgICAgICAgICAgICAgICAgICAoMTFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBUSU1fQ0NFUl9DQzNOUF9Nc2sgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBUSU1fQ0NFUl9DQzNOUF9Qb3MpICAgICAgIC8qITwgMHgwMDAwMDgwMCAqLw0KI2RlZmluZSBUSU1fQ0NFUl9DQzNOUCAgICAgICAgICAgICAgICAgICAgICBUSU1fQ0NFUl9DQzNOUF9Nc2sgICAgICAgICAgICAgICAgIC8qITxDYXB0dXJlL0NvbXBhcmUgMyBDb21wbGVtZW50YXJ5IG91dHB1dCBQb2xhcml0eSAqLw0KI2RlZmluZSBUSU1fQ0NFUl9DQzRFX1BvcyAgICAgICAgICAgICAgICAgICAoMTJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBUSU1fQ0NFUl9DQzRFX01zayAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBUSU1fQ0NFUl9DQzRFX1BvcykgICAgICAgIC8qITwgMHgwMDAwMTAwMCAqLw0KI2RlZmluZSBUSU1fQ0NFUl9DQzRFICAgICAgICAgICAgICAgICAgICAgICBUSU1fQ0NFUl9DQzRFX01zayAgICAgICAgICAgICAgICAgIC8qITxDYXB0dXJlL0NvbXBhcmUgNCBvdXRwdXQgZW5hYmxlICovDQojZGVmaW5lIFRJTV9DQ0VSX0NDNFBfUG9zICAgICAgICAgICAgICAgICAgICgxM1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFRJTV9DQ0VSX0NDNFBfTXNrICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFRJTV9DQ0VSX0NDNFBfUG9zKSAgICAgICAgLyohPCAweDAwMDAyMDAwICovDQojZGVmaW5lIFRJTV9DQ0VSX0NDNFAgICAgICAgICAgICAgICAgICAgICAgIFRJTV9DQ0VSX0NDNFBfTXNrICAgICAgICAgICAgICAgICAgLyohPENhcHR1cmUvQ29tcGFyZSA0IG91dHB1dCBQb2xhcml0eSAqLw0KI2RlZmluZSBUSU1fQ0NFUl9DQzROUF9Qb3MgICAgICAgICAgICAgICAgICAoMTVVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBUSU1fQ0NFUl9DQzROUF9Nc2sgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBUSU1fQ0NFUl9DQzROUF9Qb3MpICAgICAgIC8qITwgMHgwMDAwODAwMCAqLw0KI2RlZmluZSBUSU1fQ0NFUl9DQzROUCAgICAgICAgICAgICAgICAgICAgICBUSU1fQ0NFUl9DQzROUF9Nc2sgICAgICAgICAgICAgICAgIC8qITxDYXB0dXJlL0NvbXBhcmUgNCBDb21wbGVtZW50YXJ5IG91dHB1dCBQb2xhcml0eSAqLw0KDQovKioqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFRJTV9DTlQgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBUSU1fQ05UX0NOVF9Qb3MgICAgICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBUSU1fQ05UX0NOVF9Nc2sgICAgICAgICAgICAgICAgICAgICAoMHhGRkZGRkZGRlUgPDwgVElNX0NOVF9DTlRfUG9zKSAgIC8qITwgMHhGRkZGRkZGRiAqLw0KI2RlZmluZSBUSU1fQ05UX0NOVCAgICAgICAgICAgICAgICAgICAgICAgICBUSU1fQ05UX0NOVF9Nc2sgICAgICAgICAgICAgICAgICAgIC8qITxDb3VudGVyIFZhbHVlICovDQoNCi8qKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgVElNX1BTQyByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIFRJTV9QU0NfUFNDX1BvcyAgICAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFRJTV9QU0NfUFNDX01zayAgICAgICAgICAgICAgICAgICAgICgweEZGRkZVIDw8IFRJTV9QU0NfUFNDX1BvcykgICAgICAgLyohPCAweDAwMDBGRkZGICovDQojZGVmaW5lIFRJTV9QU0NfUFNDICAgICAgICAgICAgICAgICAgICAgICAgIFRJTV9QU0NfUFNDX01zayAgICAgICAgICAgICAgICAgICAgLyohPFByZXNjYWxlciBWYWx1ZSAqLw0KDQovKioqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFRJTV9BUlIgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBUSU1fQVJSX0FSUl9Qb3MgICAgICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBUSU1fQVJSX0FSUl9Nc2sgICAgICAgICAgICAgICAgICAgICAoMHhGRkZGRkZGRlUgPDwgVElNX0FSUl9BUlJfUG9zKSAgIC8qITwgMHhGRkZGRkZGRiAqLw0KI2RlZmluZSBUSU1fQVJSX0FSUiAgICAgICAgICAgICAgICAgICAgICAgICBUSU1fQVJSX0FSUl9Nc2sgICAgICAgICAgICAgICAgICAgIC8qITxhY3R1YWwgYXV0by1yZWxvYWQgVmFsdWUgKi8NCiAgICAgICAgICAgDQovKioqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFRJTV9DQ1IxIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBUSU1fQ0NSMV9DQ1IxX1BvcyAgICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBUSU1fQ0NSMV9DQ1IxX01zayAgICAgICAgICAgICAgICAgICAoMHhGRkZGVSA8PCBUSU1fQ0NSMV9DQ1IxX1BvcykgICAgIC8qITwgMHgwMDAwRkZGRiAqLw0KI2RlZmluZSBUSU1fQ0NSMV9DQ1IxICAgICAgICAgICAgICAgICAgICAgICBUSU1fQ0NSMV9DQ1IxX01zayAgICAgICAgICAgICAgICAgIC8qITxDYXB0dXJlL0NvbXBhcmUgMSBWYWx1ZSAqLw0KDQovKioqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFRJTV9DQ1IyIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBUSU1fQ0NSMl9DQ1IyX1BvcyAgICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBUSU1fQ0NSMl9DQ1IyX01zayAgICAgICAgICAgICAgICAgICAoMHhGRkZGVSA8PCBUSU1fQ0NSMl9DQ1IyX1BvcykgICAgIC8qITwgMHgwMDAwRkZGRiAqLw0KI2RlZmluZSBUSU1fQ0NSMl9DQ1IyICAgICAgICAgICAgICAgICAgICAgICBUSU1fQ0NSMl9DQ1IyX01zayAgICAgICAgICAgICAgICAgIC8qITxDYXB0dXJlL0NvbXBhcmUgMiBWYWx1ZSAqLw0KDQovKioqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFRJTV9DQ1IzIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBUSU1fQ0NSM19DQ1IzX1BvcyAgICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBUSU1fQ0NSM19DQ1IzX01zayAgICAgICAgICAgICAgICAgICAoMHhGRkZGVSA8PCBUSU1fQ0NSM19DQ1IzX1BvcykgICAgIC8qITwgMHgwMDAwRkZGRiAqLw0KI2RlZmluZSBUSU1fQ0NSM19DQ1IzICAgICAgICAgICAgICAgICAgICAgICBUSU1fQ0NSM19DQ1IzX01zayAgICAgICAgICAgICAgICAgIC8qITxDYXB0dXJlL0NvbXBhcmUgMyBWYWx1ZSAqLw0KDQovKioqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFRJTV9DQ1I0IHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBUSU1fQ0NSNF9DQ1I0X1BvcyAgICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBUSU1fQ0NSNF9DQ1I0X01zayAgICAgICAgICAgICAgICAgICAoMHhGRkZGVSA8PCBUSU1fQ0NSNF9DQ1I0X1BvcykgICAgIC8qITwgMHgwMDAwRkZGRiAqLw0KI2RlZmluZSBUSU1fQ0NSNF9DQ1I0ICAgICAgICAgICAgICAgICAgICAgICBUSU1fQ0NSNF9DQ1I0X01zayAgICAgICAgICAgICAgICAgIC8qITxDYXB0dXJlL0NvbXBhcmUgNCBWYWx1ZSAqLw0KDQovKioqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFRJTV9EQ1IgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBUSU1fRENSX0RCQV9Qb3MgICAgICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBUSU1fRENSX0RCQV9Nc2sgICAgICAgICAgICAgICAgICAgICAoMHgxRlUgPDwgVElNX0RDUl9EQkFfUG9zKSAgICAgICAgIC8qITwgMHgwMDAwMDAxRiAqLw0KI2RlZmluZSBUSU1fRENSX0RCQSAgICAgICAgICAgICAgICAgICAgICAgICBUSU1fRENSX0RCQV9Nc2sgICAgICAgICAgICAgICAgICAgIC8qITxEQkFbNDowXSBiaXRzIChETUEgQmFzZSBBZGRyZXNzKSAqLw0KI2RlZmluZSBUSU1fRENSX0RCQV8wICAgICAgICAgICAgICAgICAgICAgICAoMHgwMVUgPDwgVElNX0RDUl9EQkFfUG9zKSAgICAgICAgIC8qITwgMHgwMDAwMDAwMSAqLw0KI2RlZmluZSBUSU1fRENSX0RCQV8xICAgICAgICAgICAgICAgICAgICAgICAoMHgwMlUgPDwgVElNX0RDUl9EQkFfUG9zKSAgICAgICAgIC8qITwgMHgwMDAwMDAwMiAqLw0KI2RlZmluZSBUSU1fRENSX0RCQV8yICAgICAgICAgICAgICAgICAgICAgICAoMHgwNFUgPDwgVElNX0RDUl9EQkFfUG9zKSAgICAgICAgIC8qITwgMHgwMDAwMDAwNCAqLw0KI2RlZmluZSBUSU1fRENSX0RCQV8zICAgICAgICAgICAgICAgICAgICAgICAoMHgwOFUgPDwgVElNX0RDUl9EQkFfUG9zKSAgICAgICAgIC8qITwgMHgwMDAwMDAwOCAqLw0KI2RlZmluZSBUSU1fRENSX0RCQV80ICAgICAgICAgICAgICAgICAgICAgICAoMHgxMFUgPDwgVElNX0RDUl9EQkFfUG9zKSAgICAgICAgIC8qITwgMHgwMDAwMDAxMCAqLw0KDQojZGVmaW5lIFRJTV9EQ1JfREJMX1BvcyAgICAgICAgICAgICAgICAgICAgICg4VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFRJTV9EQ1JfREJMX01zayAgICAgICAgICAgICAgICAgICAgICgweDFGVSA8PCBUSU1fRENSX0RCTF9Qb3MpICAgICAgICAgLyohPCAweDAwMDAxRjAwICovDQojZGVmaW5lIFRJTV9EQ1JfREJMICAgICAgICAgICAgICAgICAgICAgICAgIFRJTV9EQ1JfREJMX01zayAgICAgICAgICAgICAgICAgICAgLyohPERCTFs0OjBdIGJpdHMgKERNQSBCdXJzdCBMZW5ndGgpICovDQojZGVmaW5lIFRJTV9EQ1JfREJMXzAgICAgICAgICAgICAgICAgICAgICAgICgweDAxVSA8PCBUSU1fRENSX0RCTF9Qb3MpICAgICAgICAgLyohPCAweDAwMDAwMTAwICovDQojZGVmaW5lIFRJTV9EQ1JfREJMXzEgICAgICAgICAgICAgICAgICAgICAgICgweDAyVSA8PCBUSU1fRENSX0RCTF9Qb3MpICAgICAgICAgLyohPCAweDAwMDAwMjAwICovDQojZGVmaW5lIFRJTV9EQ1JfREJMXzIgICAgICAgICAgICAgICAgICAgICAgICgweDA0VSA8PCBUSU1fRENSX0RCTF9Qb3MpICAgICAgICAgLyohPCAweDAwMDAwNDAwICovDQojZGVmaW5lIFRJTV9EQ1JfREJMXzMgICAgICAgICAgICAgICAgICAgICAgICgweDA4VSA8PCBUSU1fRENSX0RCTF9Qb3MpICAgICAgICAgLyohPCAweDAwMDAwODAwICovDQojZGVmaW5lIFRJTV9EQ1JfREJMXzQgICAgICAgICAgICAgICAgICAgICAgICgweDEwVSA8PCBUSU1fRENSX0RCTF9Qb3MpICAgICAgICAgLyohPCAweDAwMDAxMDAwICovDQoNCi8qKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgVElNX0RNQVIgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIFRJTV9ETUFSX0RNQUJfUG9zICAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFRJTV9ETUFSX0RNQUJfTXNrICAgICAgICAgICAgICAgICAgICgweEZGRkZVIDw8IFRJTV9ETUFSX0RNQUJfUG9zKSAgICAgLyohPCAweDAwMDBGRkZGICovDQojZGVmaW5lIFRJTV9ETUFSX0RNQUIgICAgICAgICAgICAgICAgICAgICAgIFRJTV9ETUFSX0RNQUJfTXNrICAgICAgICAgICAgICAgICAgLyohPERNQSByZWdpc3RlciBmb3IgYnVyc3QgYWNjZXNzZXMgKi8NCg0KLyoqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBUSU1fT1IgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgVElNX09SX1RJMVJNUF9Qb3MgICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVElNX09SX1RJMVJNUF9Nc2sgICAgICAgICAgICAgICAgICAgKDB4M1UgPDwgVElNX09SX1RJMVJNUF9Qb3MpICAgICAgICAvKiE8IDB4MDAwMDAwMDMgKi8NCiNkZWZpbmUgVElNX09SX1RJMVJNUCAgICAgICAgICAgICAgICAgICAgICAgVElNX09SX1RJMVJNUF9Nc2sgICAgICAgICAgICAgICAgICAvKiE8VEkxX1JNUFsxOjBdIGJpdHMgKFRJTSBJbnB1dCAxIHJlbWFwKSAqLw0KI2RlZmluZSBUSU1fT1JfVEkxUk1QXzAgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBUSU1fT1JfVEkxUk1QX1BvcykgICAgICAgIC8qITwgMHgwMDAwMDAwMSAqLw0KI2RlZmluZSBUSU1fT1JfVEkxUk1QXzEgICAgICAgICAgICAgICAgICAgICAoMHgyVSA8PCBUSU1fT1JfVEkxUk1QX1BvcykgICAgICAgIC8qITwgMHgwMDAwMDAwMiAqLw0KDQojZGVmaW5lIFRJTV9PUl9FVFJfUk1QX1BvcyAgICAgICAgICAgICAgICAgICgyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFRJTV9PUl9FVFJfUk1QX01zayAgICAgICAgICAgICAgICAgICgweDFVIDw8IFRJTV9PUl9FVFJfUk1QX1BvcykgICAgICAgLyohPCAweDAwMDAwMDA0ICovDQojZGVmaW5lIFRJTV9PUl9FVFJfUk1QICAgICAgICAgICAgICAgICAgICAgIFRJTV9PUl9FVFJfUk1QX01zayAgICAgICAgICAgICAgICAgLyohPEVUUl9STVAgYml0IChUSU0xMC8xMSBFVFIgcmVtYXApKi8NCiNkZWZpbmUgVElNX09SX1RJMV9STVBfUklfUG9zICAgICAgICAgICAgICAgKDNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVElNX09SX1RJMV9STVBfUklfTXNrICAgICAgICAgICAgICAgKDB4MVUgPDwgVElNX09SX1RJMV9STVBfUklfUG9zKSAgICAvKiE8IDB4MDAwMDAwMDggKi8NCiNkZWZpbmUgVElNX09SX1RJMV9STVBfUkkgICAgICAgICAgICAgICAgICAgVElNX09SX1RJMV9STVBfUklfTXNrICAgICAgICAgICAgICAvKiE8VEkxX1JNUF9SSSBiaXQgKFRJTTEwLzExIElucHV0IDEgcmVtYXAgZm9yIFJvdXRpbmcgaW50ZXJmYWNlKSAqLw0KDQovKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qLw0KI2RlZmluZSBUSU05X09SX0lUUjFfUk1QX1BvcyAgICAgICAgICAgICAgICAoMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBUSU05X09SX0lUUjFfUk1QX01zayAgICAgICAgICAgICAgICAoMHgxVSA8PCBUSU05X09SX0lUUjFfUk1QX1BvcykgICAgIC8qITwgMHgwMDAwMDAwNCAqLw0KI2RlZmluZSBUSU05X09SX0lUUjFfUk1QICAgICAgICAgICAgICAgICAgICBUSU05X09SX0lUUjFfUk1QX01zayAgICAgICAgICAgICAgIC8qITxJVFIxX1JNUCBiaXQgKFRJTTkgSW50ZXJuYWwgdHJpZ2dlciAxIHJlbWFwKSAqLw0KDQovKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qLw0KI2RlZmluZSBUSU0yX09SX0lUUjFfUk1QX1BvcyAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBUSU0yX09SX0lUUjFfUk1QX01zayAgICAgICAgICAgICAgICAoMHgxVSA8PCBUSU0yX09SX0lUUjFfUk1QX1BvcykgICAgIC8qITwgMHgwMDAwMDAwMSAqLw0KI2RlZmluZSBUSU0yX09SX0lUUjFfUk1QICAgICAgICAgICAgICAgICAgICBUSU0yX09SX0lUUjFfUk1QX01zayAgICAgICAgICAgICAgIC8qITxJVFIxX1JNUCBiaXQgKFRJTTIgSW50ZXJuYWwgdHJpZ2dlciAxIHJlbWFwKSAqLw0KDQovKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qLw0KI2RlZmluZSBUSU0zX09SX0lUUjJfUk1QX1BvcyAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBUSU0zX09SX0lUUjJfUk1QX01zayAgICAgICAgICAgICAgICAoMHgxVSA8PCBUSU0zX09SX0lUUjJfUk1QX1BvcykgICAgIC8qITwgMHgwMDAwMDAwMSAqLw0KI2RlZmluZSBUSU0zX09SX0lUUjJfUk1QICAgICAgICAgICAgICAgICAgICBUSU0zX09SX0lUUjJfUk1QX01zayAgICAgICAgICAgICAgIC8qITxJVFIyX1JNUCBiaXQgKFRJTTMgSW50ZXJuYWwgdHJpZ2dlciAyIHJlbWFwKSAqLw0KDQovKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qLw0KDQovKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLw0KLyogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8NCi8qICAgICAgVW5pdmVyc2FsIFN5bmNocm9ub3VzIEFzeW5jaHJvbm91cyBSZWNlaXZlciBUcmFuc21pdHRlciAoVVNBUlQpICAgICAgICovDQovKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLw0KLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8NCg0KLyoqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBVU0FSVF9TUiByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgVVNBUlRfU1JfUEVfUG9zICAgICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNBUlRfU1JfUEVfTXNrICAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVVNBUlRfU1JfUEVfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDAwMDEgKi8NCiNkZWZpbmUgVVNBUlRfU1JfUEUgICAgICAgICAgICAgICAgICAgICAgICAgVVNBUlRfU1JfUEVfTXNrICAgICAgICAgICAgICAgICAgICAvKiE8IFBhcml0eSBFcnJvciAqLw0KI2RlZmluZSBVU0FSVF9TUl9GRV9Qb3MgICAgICAgICAgICAgICAgICAgICAoMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0FSVF9TUl9GRV9Nc2sgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBVU0FSVF9TUl9GRV9Qb3MpICAgICAgICAgIC8qITwgMHgwMDAwMDAwMiAqLw0KI2RlZmluZSBVU0FSVF9TUl9GRSAgICAgICAgICAgICAgICAgICAgICAgICBVU0FSVF9TUl9GRV9Nc2sgICAgICAgICAgICAgICAgICAgIC8qITwgRnJhbWluZyBFcnJvciAqLw0KI2RlZmluZSBVU0FSVF9TUl9ORV9Qb3MgICAgICAgICAgICAgICAgICAgICAoMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0FSVF9TUl9ORV9Nc2sgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBVU0FSVF9TUl9ORV9Qb3MpICAgICAgICAgIC8qITwgMHgwMDAwMDAwNCAqLw0KI2RlZmluZSBVU0FSVF9TUl9ORSAgICAgICAgICAgICAgICAgICAgICAgICBVU0FSVF9TUl9ORV9Nc2sgICAgICAgICAgICAgICAgICAgIC8qITwgTm9pc2UgRXJyb3IgRmxhZyAqLw0KI2RlZmluZSBVU0FSVF9TUl9PUkVfUG9zICAgICAgICAgICAgICAgICAgICAoM1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0FSVF9TUl9PUkVfTXNrICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBVU0FSVF9TUl9PUkVfUG9zKSAgICAgICAgIC8qITwgMHgwMDAwMDAwOCAqLw0KI2RlZmluZSBVU0FSVF9TUl9PUkUgICAgICAgICAgICAgICAgICAgICAgICBVU0FSVF9TUl9PUkVfTXNrICAgICAgICAgICAgICAgICAgIC8qITwgT3ZlclJ1biBFcnJvciAqLw0KI2RlZmluZSBVU0FSVF9TUl9JRExFX1BvcyAgICAgICAgICAgICAgICAgICAoNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0FSVF9TUl9JRExFX01zayAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBVU0FSVF9TUl9JRExFX1BvcykgICAgICAgIC8qITwgMHgwMDAwMDAxMCAqLw0KI2RlZmluZSBVU0FSVF9TUl9JRExFICAgICAgICAgICAgICAgICAgICAgICBVU0FSVF9TUl9JRExFX01zayAgICAgICAgICAgICAgICAgIC8qITwgSURMRSBsaW5lIGRldGVjdGVkICovDQojZGVmaW5lIFVTQVJUX1NSX1JYTkVfUG9zICAgICAgICAgICAgICAgICAgICg1VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQVJUX1NSX1JYTkVfTXNrICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFVTQVJUX1NSX1JYTkVfUG9zKSAgICAgICAgLyohPCAweDAwMDAwMDIwICovDQojZGVmaW5lIFVTQVJUX1NSX1JYTkUgICAgICAgICAgICAgICAgICAgICAgIFVTQVJUX1NSX1JYTkVfTXNrICAgICAgICAgICAgICAgICAgLyohPCBSZWFkIERhdGEgUmVnaXN0ZXIgTm90IEVtcHR5ICovDQojZGVmaW5lIFVTQVJUX1NSX1RDX1BvcyAgICAgICAgICAgICAgICAgICAgICg2VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQVJUX1NSX1RDX01zayAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFVTQVJUX1NSX1RDX1BvcykgICAgICAgICAgLyohPCAweDAwMDAwMDQwICovDQojZGVmaW5lIFVTQVJUX1NSX1RDICAgICAgICAgICAgICAgICAgICAgICAgIFVTQVJUX1NSX1RDX01zayAgICAgICAgICAgICAgICAgICAgLyohPCBUcmFuc21pc3Npb24gQ29tcGxldGUgKi8NCiNkZWZpbmUgVVNBUlRfU1JfVFhFX1BvcyAgICAgICAgICAgICAgICAgICAgKDdVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNBUlRfU1JfVFhFX01zayAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVVNBUlRfU1JfVFhFX1BvcykgICAgICAgICAvKiE8IDB4MDAwMDAwODAgKi8NCiNkZWZpbmUgVVNBUlRfU1JfVFhFICAgICAgICAgICAgICAgICAgICAgICAgVVNBUlRfU1JfVFhFX01zayAgICAgICAgICAgICAgICAgICAvKiE8IFRyYW5zbWl0IERhdGEgUmVnaXN0ZXIgRW1wdHkgKi8NCiNkZWZpbmUgVVNBUlRfU1JfTEJEX1BvcyAgICAgICAgICAgICAgICAgICAgKDhVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNBUlRfU1JfTEJEX01zayAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVVNBUlRfU1JfTEJEX1BvcykgICAgICAgICAvKiE8IDB4MDAwMDAxMDAgKi8NCiNkZWZpbmUgVVNBUlRfU1JfTEJEICAgICAgICAgICAgICAgICAgICAgICAgVVNBUlRfU1JfTEJEX01zayAgICAgICAgICAgICAgICAgICAvKiE8IExJTiBCcmVhayBEZXRlY3Rpb24gRmxhZyAqLw0KI2RlZmluZSBVU0FSVF9TUl9DVFNfUG9zICAgICAgICAgICAgICAgICAgICAoOVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0FSVF9TUl9DVFNfTXNrICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBVU0FSVF9TUl9DVFNfUG9zKSAgICAgICAgIC8qITwgMHgwMDAwMDIwMCAqLw0KI2RlZmluZSBVU0FSVF9TUl9DVFMgICAgICAgICAgICAgICAgICAgICAgICBVU0FSVF9TUl9DVFNfTXNrICAgICAgICAgICAgICAgICAgIC8qITwgQ1RTIEZsYWcgKi8NCg0KLyoqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBVU0FSVF9EUiByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgVVNBUlRfRFJfRFJfUG9zICAgICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNBUlRfRFJfRFJfTXNrICAgICAgICAgICAgICAgICAgICAgKDB4MUZGVSA8PCBVU0FSVF9EUl9EUl9Qb3MpICAgICAgICAvKiE8IDB4MDAwMDAxRkYgKi8NCiNkZWZpbmUgVVNBUlRfRFJfRFIgICAgICAgICAgICAgICAgICAgICAgICAgVVNBUlRfRFJfRFJfTXNrICAgICAgICAgICAgICAgICAgICAvKiE8IERhdGEgdmFsdWUgKi8NCg0KLyoqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFVTQVJUX0JSUiByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgVVNBUlRfQlJSX0RJVl9GUkFDVElPTl9Qb3MgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNBUlRfQlJSX0RJVl9GUkFDVElPTl9Nc2sgICAgICAgICAgKDB4RlUgPDwgVVNBUlRfQlJSX0RJVl9GUkFDVElPTl9Qb3MpIC8qITwgMHgwMDAwMDAwRiAqLw0KI2RlZmluZSBVU0FSVF9CUlJfRElWX0ZSQUNUSU9OICAgICAgICAgICAgICBVU0FSVF9CUlJfRElWX0ZSQUNUSU9OX01zayAgICAgICAgIC8qITwgRnJhY3Rpb24gb2YgVVNBUlRESVYgKi8NCiNkZWZpbmUgVVNBUlRfQlJSX0RJVl9NQU5USVNTQV9Qb3MgICAgICAgICAgKDRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNBUlRfQlJSX0RJVl9NQU5USVNTQV9Nc2sgICAgICAgICAgKDB4RkZGVSA8PCBVU0FSVF9CUlJfRElWX01BTlRJU1NBX1BvcykgLyohPCAweDAwMDBGRkYwICovDQojZGVmaW5lIFVTQVJUX0JSUl9ESVZfTUFOVElTU0EgICAgICAgICAgICAgIFVTQVJUX0JSUl9ESVZfTUFOVElTU0FfTXNrICAgICAgICAgLyohPCBNYW50aXNzYSBvZiBVU0FSVERJViAqLw0KDQovKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgVVNBUlRfQ1IxIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBVU0FSVF9DUjFfU0JLX1BvcyAgICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0FSVF9DUjFfU0JLX01zayAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBVU0FSVF9DUjFfU0JLX1BvcykgICAgICAgIC8qITwgMHgwMDAwMDAwMSAqLw0KI2RlZmluZSBVU0FSVF9DUjFfU0JLICAgICAgICAgICAgICAgICAgICAgICBVU0FSVF9DUjFfU0JLX01zayAgICAgICAgICAgICAgICAgIC8qITwgU2VuZCBCcmVhayAqLw0KI2RlZmluZSBVU0FSVF9DUjFfUldVX1BvcyAgICAgICAgICAgICAgICAgICAoMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0FSVF9DUjFfUldVX01zayAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBVU0FSVF9DUjFfUldVX1BvcykgICAgICAgIC8qITwgMHgwMDAwMDAwMiAqLw0KI2RlZmluZSBVU0FSVF9DUjFfUldVICAgICAgICAgICAgICAgICAgICAgICBVU0FSVF9DUjFfUldVX01zayAgICAgICAgICAgICAgICAgIC8qITwgUmVjZWl2ZXIgd2FrZXVwICovDQojZGVmaW5lIFVTQVJUX0NSMV9SRV9Qb3MgICAgICAgICAgICAgICAgICAgICgyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQVJUX0NSMV9SRV9Nc2sgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFVTQVJUX0NSMV9SRV9Qb3MpICAgICAgICAgLyohPCAweDAwMDAwMDA0ICovDQojZGVmaW5lIFVTQVJUX0NSMV9SRSAgICAgICAgICAgICAgICAgICAgICAgIFVTQVJUX0NSMV9SRV9Nc2sgICAgICAgICAgICAgICAgICAgLyohPCBSZWNlaXZlciBFbmFibGUgKi8NCiNkZWZpbmUgVVNBUlRfQ1IxX1RFX1BvcyAgICAgICAgICAgICAgICAgICAgKDNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNBUlRfQ1IxX1RFX01zayAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVVNBUlRfQ1IxX1RFX1BvcykgICAgICAgICAvKiE8IDB4MDAwMDAwMDggKi8NCiNkZWZpbmUgVVNBUlRfQ1IxX1RFICAgICAgICAgICAgICAgICAgICAgICAgVVNBUlRfQ1IxX1RFX01zayAgICAgICAgICAgICAgICAgICAvKiE8IFRyYW5zbWl0dGVyIEVuYWJsZSAqLw0KI2RlZmluZSBVU0FSVF9DUjFfSURMRUlFX1BvcyAgICAgICAgICAgICAgICAoNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0FSVF9DUjFfSURMRUlFX01zayAgICAgICAgICAgICAgICAoMHgxVSA8PCBVU0FSVF9DUjFfSURMRUlFX1BvcykgICAgIC8qITwgMHgwMDAwMDAxMCAqLw0KI2RlZmluZSBVU0FSVF9DUjFfSURMRUlFICAgICAgICAgICAgICAgICAgICBVU0FSVF9DUjFfSURMRUlFX01zayAgICAgICAgICAgICAgIC8qITwgSURMRSBJbnRlcnJ1cHQgRW5hYmxlICovDQojZGVmaW5lIFVTQVJUX0NSMV9SWE5FSUVfUG9zICAgICAgICAgICAgICAgICg1VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQVJUX0NSMV9SWE5FSUVfTXNrICAgICAgICAgICAgICAgICgweDFVIDw8IFVTQVJUX0NSMV9SWE5FSUVfUG9zKSAgICAgLyohPCAweDAwMDAwMDIwICovDQojZGVmaW5lIFVTQVJUX0NSMV9SWE5FSUUgICAgICAgICAgICAgICAgICAgIFVTQVJUX0NSMV9SWE5FSUVfTXNrICAgICAgICAgICAgICAgLyohPCBSWE5FIEludGVycnVwdCBFbmFibGUgKi8NCiNkZWZpbmUgVVNBUlRfQ1IxX1RDSUVfUG9zICAgICAgICAgICAgICAgICAgKDZVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNBUlRfQ1IxX1RDSUVfTXNrICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVVNBUlRfQ1IxX1RDSUVfUG9zKSAgICAgICAvKiE8IDB4MDAwMDAwNDAgKi8NCiNkZWZpbmUgVVNBUlRfQ1IxX1RDSUUgICAgICAgICAgICAgICAgICAgICAgVVNBUlRfQ1IxX1RDSUVfTXNrICAgICAgICAgICAgICAgICAvKiE8IFRyYW5zbWlzc2lvbiBDb21wbGV0ZSBJbnRlcnJ1cHQgRW5hYmxlICovDQojZGVmaW5lIFVTQVJUX0NSMV9UWEVJRV9Qb3MgICAgICAgICAgICAgICAgICg3VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQVJUX0NSMV9UWEVJRV9Nc2sgICAgICAgICAgICAgICAgICgweDFVIDw8IFVTQVJUX0NSMV9UWEVJRV9Qb3MpICAgICAgLyohPCAweDAwMDAwMDgwICovDQojZGVmaW5lIFVTQVJUX0NSMV9UWEVJRSAgICAgICAgICAgICAgICAgICAgIFVTQVJUX0NSMV9UWEVJRV9Nc2sgICAgICAgICAgICAgICAgLyohPCBQRSBJbnRlcnJ1cHQgRW5hYmxlICovDQojZGVmaW5lIFVTQVJUX0NSMV9QRUlFX1BvcyAgICAgICAgICAgICAgICAgICg4VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQVJUX0NSMV9QRUlFX01zayAgICAgICAgICAgICAgICAgICgweDFVIDw8IFVTQVJUX0NSMV9QRUlFX1BvcykgICAgICAgLyohPCAweDAwMDAwMTAwICovDQojZGVmaW5lIFVTQVJUX0NSMV9QRUlFICAgICAgICAgICAgICAgICAgICAgIFVTQVJUX0NSMV9QRUlFX01zayAgICAgICAgICAgICAgICAgLyohPCBQRSBJbnRlcnJ1cHQgRW5hYmxlICovDQojZGVmaW5lIFVTQVJUX0NSMV9QU19Qb3MgICAgICAgICAgICAgICAgICAgICg5VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQVJUX0NSMV9QU19Nc2sgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFVTQVJUX0NSMV9QU19Qb3MpICAgICAgICAgLyohPCAweDAwMDAwMjAwICovDQojZGVmaW5lIFVTQVJUX0NSMV9QUyAgICAgICAgICAgICAgICAgICAgICAgIFVTQVJUX0NSMV9QU19Nc2sgICAgICAgICAgICAgICAgICAgLyohPCBQYXJpdHkgU2VsZWN0aW9uICovDQojZGVmaW5lIFVTQVJUX0NSMV9QQ0VfUG9zICAgICAgICAgICAgICAgICAgICgxMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQVJUX0NSMV9QQ0VfTXNrICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFVTQVJUX0NSMV9QQ0VfUG9zKSAgICAgICAgLyohPCAweDAwMDAwNDAwICovDQojZGVmaW5lIFVTQVJUX0NSMV9QQ0UgICAgICAgICAgICAgICAgICAgICAgIFVTQVJUX0NSMV9QQ0VfTXNrICAgICAgICAgICAgICAgICAgLyohPCBQYXJpdHkgQ29udHJvbCBFbmFibGUgKi8NCiNkZWZpbmUgVVNBUlRfQ1IxX1dBS0VfUG9zICAgICAgICAgICAgICAgICAgKDExVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNBUlRfQ1IxX1dBS0VfTXNrICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVVNBUlRfQ1IxX1dBS0VfUG9zKSAgICAgICAvKiE8IDB4MDAwMDA4MDAgKi8NCiNkZWZpbmUgVVNBUlRfQ1IxX1dBS0UgICAgICAgICAgICAgICAgICAgICAgVVNBUlRfQ1IxX1dBS0VfTXNrICAgICAgICAgICAgICAgICAvKiE8IFdha2V1cCBtZXRob2QgKi8NCiNkZWZpbmUgVVNBUlRfQ1IxX01fUG9zICAgICAgICAgICAgICAgICAgICAgKDEyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNBUlRfQ1IxX01fTXNrICAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVVNBUlRfQ1IxX01fUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDEwMDAgKi8NCiNkZWZpbmUgVVNBUlRfQ1IxX00gICAgICAgICAgICAgICAgICAgICAgICAgVVNBUlRfQ1IxX01fTXNrICAgICAgICAgICAgICAgICAgICAvKiE8IFdvcmQgbGVuZ3RoICovDQojZGVmaW5lIFVTQVJUX0NSMV9VRV9Qb3MgICAgICAgICAgICAgICAgICAgICgxM1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQVJUX0NSMV9VRV9Nc2sgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFVTQVJUX0NSMV9VRV9Qb3MpICAgICAgICAgLyohPCAweDAwMDAyMDAwICovDQojZGVmaW5lIFVTQVJUX0NSMV9VRSAgICAgICAgICAgICAgICAgICAgICAgIFVTQVJUX0NSMV9VRV9Nc2sgICAgICAgICAgICAgICAgICAgLyohPCBVU0FSVCBFbmFibGUgKi8NCiNkZWZpbmUgVVNBUlRfQ1IxX09WRVI4X1BvcyAgICAgICAgICAgICAgICAgKDE1VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNBUlRfQ1IxX09WRVI4X01zayAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVVNBUlRfQ1IxX09WRVI4X1BvcykgICAgICAvKiE8IDB4MDAwMDgwMDAgKi8NCiNkZWZpbmUgVVNBUlRfQ1IxX09WRVI4ICAgICAgICAgICAgICAgICAgICAgVVNBUlRfQ1IxX09WRVI4X01zayAgICAgICAgICAgICAgICAvKiE8IE92ZXJzYW1wbGluZyBieSA4LWJpdCBtb2RlICovDQoNCi8qKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBVU0FSVF9DUjIgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIFVTQVJUX0NSMl9BRERfUG9zICAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQVJUX0NSMl9BRERfTXNrICAgICAgICAgICAgICAgICAgICgweEZVIDw8IFVTQVJUX0NSMl9BRERfUG9zKSAgICAgICAgLyohPCAweDAwMDAwMDBGICovDQojZGVmaW5lIFVTQVJUX0NSMl9BREQgICAgICAgICAgICAgICAgICAgICAgIFVTQVJUX0NSMl9BRERfTXNrICAgICAgICAgICAgICAgICAgLyohPCBBZGRyZXNzIG9mIHRoZSBVU0FSVCBub2RlICovDQojZGVmaW5lIFVTQVJUX0NSMl9MQkRMX1BvcyAgICAgICAgICAgICAgICAgICg1VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQVJUX0NSMl9MQkRMX01zayAgICAgICAgICAgICAgICAgICgweDFVIDw8IFVTQVJUX0NSMl9MQkRMX1BvcykgICAgICAgLyohPCAweDAwMDAwMDIwICovDQojZGVmaW5lIFVTQVJUX0NSMl9MQkRMICAgICAgICAgICAgICAgICAgICAgIFVTQVJUX0NSMl9MQkRMX01zayAgICAgICAgICAgICAgICAgLyohPCBMSU4gQnJlYWsgRGV0ZWN0aW9uIExlbmd0aCAqLw0KI2RlZmluZSBVU0FSVF9DUjJfTEJESUVfUG9zICAgICAgICAgICAgICAgICAoNlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0FSVF9DUjJfTEJESUVfTXNrICAgICAgICAgICAgICAgICAoMHgxVSA8PCBVU0FSVF9DUjJfTEJESUVfUG9zKSAgICAgIC8qITwgMHgwMDAwMDA0MCAqLw0KI2RlZmluZSBVU0FSVF9DUjJfTEJESUUgICAgICAgICAgICAgICAgICAgICBVU0FSVF9DUjJfTEJESUVfTXNrICAgICAgICAgICAgICAgIC8qITwgTElOIEJyZWFrIERldGVjdGlvbiBJbnRlcnJ1cHQgRW5hYmxlICovDQojZGVmaW5lIFVTQVJUX0NSMl9MQkNMX1BvcyAgICAgICAgICAgICAgICAgICg4VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQVJUX0NSMl9MQkNMX01zayAgICAgICAgICAgICAgICAgICgweDFVIDw8IFVTQVJUX0NSMl9MQkNMX1BvcykgICAgICAgLyohPCAweDAwMDAwMTAwICovDQojZGVmaW5lIFVTQVJUX0NSMl9MQkNMICAgICAgICAgICAgICAgICAgICAgIFVTQVJUX0NSMl9MQkNMX01zayAgICAgICAgICAgICAgICAgLyohPCBMYXN0IEJpdCBDbG9jayBwdWxzZSAqLw0KI2RlZmluZSBVU0FSVF9DUjJfQ1BIQV9Qb3MgICAgICAgICAgICAgICAgICAoOVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0FSVF9DUjJfQ1BIQV9Nc2sgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBVU0FSVF9DUjJfQ1BIQV9Qb3MpICAgICAgIC8qITwgMHgwMDAwMDIwMCAqLw0KI2RlZmluZSBVU0FSVF9DUjJfQ1BIQSAgICAgICAgICAgICAgICAgICAgICBVU0FSVF9DUjJfQ1BIQV9Nc2sgICAgICAgICAgICAgICAgIC8qITwgQ2xvY2sgUGhhc2UgKi8NCiNkZWZpbmUgVVNBUlRfQ1IyX0NQT0xfUG9zICAgICAgICAgICAgICAgICAgKDEwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNBUlRfQ1IyX0NQT0xfTXNrICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVVNBUlRfQ1IyX0NQT0xfUG9zKSAgICAgICAvKiE8IDB4MDAwMDA0MDAgKi8NCiNkZWZpbmUgVVNBUlRfQ1IyX0NQT0wgICAgICAgICAgICAgICAgICAgICAgVVNBUlRfQ1IyX0NQT0xfTXNrICAgICAgICAgICAgICAgICAvKiE8IENsb2NrIFBvbGFyaXR5ICovDQojZGVmaW5lIFVTQVJUX0NSMl9DTEtFTl9Qb3MgICAgICAgICAgICAgICAgICgxMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQVJUX0NSMl9DTEtFTl9Nc2sgICAgICAgICAgICAgICAgICgweDFVIDw8IFVTQVJUX0NSMl9DTEtFTl9Qb3MpICAgICAgLyohPCAweDAwMDAwODAwICovDQojZGVmaW5lIFVTQVJUX0NSMl9DTEtFTiAgICAgICAgICAgICAgICAgICAgIFVTQVJUX0NSMl9DTEtFTl9Nc2sgICAgICAgICAgICAgICAgLyohPCBDbG9jayBFbmFibGUgKi8NCg0KI2RlZmluZSBVU0FSVF9DUjJfU1RPUF9Qb3MgICAgICAgICAgICAgICAgICAoMTJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0FSVF9DUjJfU1RPUF9Nc2sgICAgICAgICAgICAgICAgICAoMHgzVSA8PCBVU0FSVF9DUjJfU1RPUF9Qb3MpICAgICAgIC8qITwgMHgwMDAwMzAwMCAqLw0KI2RlZmluZSBVU0FSVF9DUjJfU1RPUCAgICAgICAgICAgICAgICAgICAgICBVU0FSVF9DUjJfU1RPUF9Nc2sgICAgICAgICAgICAgICAgIC8qITwgU1RPUFsxOjBdIGJpdHMgKFNUT1AgYml0cykgKi8NCiNkZWZpbmUgVVNBUlRfQ1IyX1NUT1BfMCAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVVNBUlRfQ1IyX1NUT1BfUG9zKSAgICAgICAvKiE8IDB4MDAwMDEwMDAgKi8NCiNkZWZpbmUgVVNBUlRfQ1IyX1NUT1BfMSAgICAgICAgICAgICAgICAgICAgKDB4MlUgPDwgVVNBUlRfQ1IyX1NUT1BfUG9zKSAgICAgICAvKiE8IDB4MDAwMDIwMDAgKi8NCg0KI2RlZmluZSBVU0FSVF9DUjJfTElORU5fUG9zICAgICAgICAgICAgICAgICAoMTRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0FSVF9DUjJfTElORU5fTXNrICAgICAgICAgICAgICAgICAoMHgxVSA8PCBVU0FSVF9DUjJfTElORU5fUG9zKSAgICAgIC8qITwgMHgwMDAwNDAwMCAqLw0KI2RlZmluZSBVU0FSVF9DUjJfTElORU4gICAgICAgICAgICAgICAgICAgICBVU0FSVF9DUjJfTElORU5fTXNrICAgICAgICAgICAgICAgIC8qITwgTElOIG1vZGUgZW5hYmxlICovDQoNCi8qKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBVU0FSVF9DUjMgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIFVTQVJUX0NSM19FSUVfUG9zICAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQVJUX0NSM19FSUVfTXNrICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFVTQVJUX0NSM19FSUVfUG9zKSAgICAgICAgLyohPCAweDAwMDAwMDAxICovDQojZGVmaW5lIFVTQVJUX0NSM19FSUUgICAgICAgICAgICAgICAgICAgICAgIFVTQVJUX0NSM19FSUVfTXNrICAgICAgICAgICAgICAgICAgLyohPCBFcnJvciBJbnRlcnJ1cHQgRW5hYmxlICovDQojZGVmaW5lIFVTQVJUX0NSM19JUkVOX1BvcyAgICAgICAgICAgICAgICAgICgxVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQVJUX0NSM19JUkVOX01zayAgICAgICAgICAgICAgICAgICgweDFVIDw8IFVTQVJUX0NSM19JUkVOX1BvcykgICAgICAgLyohPCAweDAwMDAwMDAyICovDQojZGVmaW5lIFVTQVJUX0NSM19JUkVOICAgICAgICAgICAgICAgICAgICAgIFVTQVJUX0NSM19JUkVOX01zayAgICAgICAgICAgICAgICAgLyohPCBJckRBIG1vZGUgRW5hYmxlICovDQojZGVmaW5lIFVTQVJUX0NSM19JUkxQX1BvcyAgICAgICAgICAgICAgICAgICgyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQVJUX0NSM19JUkxQX01zayAgICAgICAgICAgICAgICAgICgweDFVIDw8IFVTQVJUX0NSM19JUkxQX1BvcykgICAgICAgLyohPCAweDAwMDAwMDA0ICovDQojZGVmaW5lIFVTQVJUX0NSM19JUkxQICAgICAgICAgICAgICAgICAgICAgIFVTQVJUX0NSM19JUkxQX01zayAgICAgICAgICAgICAgICAgLyohPCBJckRBIExvdy1Qb3dlciAqLw0KI2RlZmluZSBVU0FSVF9DUjNfSERTRUxfUG9zICAgICAgICAgICAgICAgICAoM1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0FSVF9DUjNfSERTRUxfTXNrICAgICAgICAgICAgICAgICAoMHgxVSA8PCBVU0FSVF9DUjNfSERTRUxfUG9zKSAgICAgIC8qITwgMHgwMDAwMDAwOCAqLw0KI2RlZmluZSBVU0FSVF9DUjNfSERTRUwgICAgICAgICAgICAgICAgICAgICBVU0FSVF9DUjNfSERTRUxfTXNrICAgICAgICAgICAgICAgIC8qITwgSGFsZi1EdXBsZXggU2VsZWN0aW9uICovDQojZGVmaW5lIFVTQVJUX0NSM19OQUNLX1BvcyAgICAgICAgICAgICAgICAgICg0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQVJUX0NSM19OQUNLX01zayAgICAgICAgICAgICAgICAgICgweDFVIDw8IFVTQVJUX0NSM19OQUNLX1BvcykgICAgICAgLyohPCAweDAwMDAwMDEwICovDQojZGVmaW5lIFVTQVJUX0NSM19OQUNLICAgICAgICAgICAgICAgICAgICAgIFVTQVJUX0NSM19OQUNLX01zayAgICAgICAgICAgICAgICAgLyohPCBTbWFydGNhcmQgTkFDSyBlbmFibGUgKi8NCiNkZWZpbmUgVVNBUlRfQ1IzX1NDRU5fUG9zICAgICAgICAgICAgICAgICAgKDVVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNBUlRfQ1IzX1NDRU5fTXNrICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVVNBUlRfQ1IzX1NDRU5fUG9zKSAgICAgICAvKiE8IDB4MDAwMDAwMjAgKi8NCiNkZWZpbmUgVVNBUlRfQ1IzX1NDRU4gICAgICAgICAgICAgICAgICAgICAgVVNBUlRfQ1IzX1NDRU5fTXNrICAgICAgICAgICAgICAgICAvKiE8IFNtYXJ0Y2FyZCBtb2RlIGVuYWJsZSAqLw0KI2RlZmluZSBVU0FSVF9DUjNfRE1BUl9Qb3MgICAgICAgICAgICAgICAgICAoNlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0FSVF9DUjNfRE1BUl9Nc2sgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBVU0FSVF9DUjNfRE1BUl9Qb3MpICAgICAgIC8qITwgMHgwMDAwMDA0MCAqLw0KI2RlZmluZSBVU0FSVF9DUjNfRE1BUiAgICAgICAgICAgICAgICAgICAgICBVU0FSVF9DUjNfRE1BUl9Nc2sgICAgICAgICAgICAgICAgIC8qITwgRE1BIEVuYWJsZSBSZWNlaXZlciAqLw0KI2RlZmluZSBVU0FSVF9DUjNfRE1BVF9Qb3MgICAgICAgICAgICAgICAgICAoN1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0FSVF9DUjNfRE1BVF9Nc2sgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBVU0FSVF9DUjNfRE1BVF9Qb3MpICAgICAgIC8qITwgMHgwMDAwMDA4MCAqLw0KI2RlZmluZSBVU0FSVF9DUjNfRE1BVCAgICAgICAgICAgICAgICAgICAgICBVU0FSVF9DUjNfRE1BVF9Nc2sgICAgICAgICAgICAgICAgIC8qITwgRE1BIEVuYWJsZSBUcmFuc21pdHRlciAqLw0KI2RlZmluZSBVU0FSVF9DUjNfUlRTRV9Qb3MgICAgICAgICAgICAgICAgICAoOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0FSVF9DUjNfUlRTRV9Nc2sgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBVU0FSVF9DUjNfUlRTRV9Qb3MpICAgICAgIC8qITwgMHgwMDAwMDEwMCAqLw0KI2RlZmluZSBVU0FSVF9DUjNfUlRTRSAgICAgICAgICAgICAgICAgICAgICBVU0FSVF9DUjNfUlRTRV9Nc2sgICAgICAgICAgICAgICAgIC8qITwgUlRTIEVuYWJsZSAqLw0KI2RlZmluZSBVU0FSVF9DUjNfQ1RTRV9Qb3MgICAgICAgICAgICAgICAgICAoOVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0FSVF9DUjNfQ1RTRV9Nc2sgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBVU0FSVF9DUjNfQ1RTRV9Qb3MpICAgICAgIC8qITwgMHgwMDAwMDIwMCAqLw0KI2RlZmluZSBVU0FSVF9DUjNfQ1RTRSAgICAgICAgICAgICAgICAgICAgICBVU0FSVF9DUjNfQ1RTRV9Nc2sgICAgICAgICAgICAgICAgIC8qITwgQ1RTIEVuYWJsZSAqLw0KI2RlZmluZSBVU0FSVF9DUjNfQ1RTSUVfUG9zICAgICAgICAgICAgICAgICAoMTBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0FSVF9DUjNfQ1RTSUVfTXNrICAgICAgICAgICAgICAgICAoMHgxVSA8PCBVU0FSVF9DUjNfQ1RTSUVfUG9zKSAgICAgIC8qITwgMHgwMDAwMDQwMCAqLw0KI2RlZmluZSBVU0FSVF9DUjNfQ1RTSUUgICAgICAgICAgICAgICAgICAgICBVU0FSVF9DUjNfQ1RTSUVfTXNrICAgICAgICAgICAgICAgIC8qITwgQ1RTIEludGVycnVwdCBFbmFibGUgKi8NCiNkZWZpbmUgVVNBUlRfQ1IzX09ORUJJVF9Qb3MgICAgICAgICAgICAgICAgKDExVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNBUlRfQ1IzX09ORUJJVF9Nc2sgICAgICAgICAgICAgICAgKDB4MVUgPDwgVVNBUlRfQ1IzX09ORUJJVF9Qb3MpICAgICAvKiE8IDB4MDAwMDA4MDAgKi8NCiNkZWZpbmUgVVNBUlRfQ1IzX09ORUJJVCAgICAgICAgICAgICAgICAgICAgVVNBUlRfQ1IzX09ORUJJVF9Nc2sgICAgICAgICAgICAgICAvKiE8IE9uZSBzYW1wbGUgYml0IG1ldGhvZCBlbmFibGUgKi8NCg0KLyoqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFVTQVJUX0dUUFIgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgVVNBUlRfR1RQUl9QU0NfUG9zICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNBUlRfR1RQUl9QU0NfTXNrICAgICAgICAgICAgICAgICAgKDB4RkZVIDw8IFVTQVJUX0dUUFJfUFNDX1BvcykgICAgICAvKiE8IDB4MDAwMDAwRkYgKi8NCiNkZWZpbmUgVVNBUlRfR1RQUl9QU0MgICAgICAgICAgICAgICAgICAgICAgVVNBUlRfR1RQUl9QU0NfTXNrICAgICAgICAgICAgICAgICAvKiE8IFBTQ1s3OjBdIGJpdHMgKFByZXNjYWxlciB2YWx1ZSkgKi8NCiNkZWZpbmUgVVNBUlRfR1RQUl9QU0NfMCAgICAgICAgICAgICAgICAgICAgKDB4MDFVIDw8IFVTQVJUX0dUUFJfUFNDX1BvcykgICAgICAvKiE8IDB4MDAwMDAwMDEgKi8NCiNkZWZpbmUgVVNBUlRfR1RQUl9QU0NfMSAgICAgICAgICAgICAgICAgICAgKDB4MDJVIDw8IFVTQVJUX0dUUFJfUFNDX1BvcykgICAgICAvKiE8IDB4MDAwMDAwMDIgKi8NCiNkZWZpbmUgVVNBUlRfR1RQUl9QU0NfMiAgICAgICAgICAgICAgICAgICAgKDB4MDRVIDw8IFVTQVJUX0dUUFJfUFNDX1BvcykgICAgICAvKiE8IDB4MDAwMDAwMDQgKi8NCiNkZWZpbmUgVVNBUlRfR1RQUl9QU0NfMyAgICAgICAgICAgICAgICAgICAgKDB4MDhVIDw8IFVTQVJUX0dUUFJfUFNDX1BvcykgICAgICAvKiE8IDB4MDAwMDAwMDggKi8NCiNkZWZpbmUgVVNBUlRfR1RQUl9QU0NfNCAgICAgICAgICAgICAgICAgICAgKDB4MTBVIDw8IFVTQVJUX0dUUFJfUFNDX1BvcykgICAgICAvKiE8IDB4MDAwMDAwMTAgKi8NCiNkZWZpbmUgVVNBUlRfR1RQUl9QU0NfNSAgICAgICAgICAgICAgICAgICAgKDB4MjBVIDw8IFVTQVJUX0dUUFJfUFNDX1BvcykgICAgICAvKiE8IDB4MDAwMDAwMjAgKi8NCiNkZWZpbmUgVVNBUlRfR1RQUl9QU0NfNiAgICAgICAgICAgICAgICAgICAgKDB4NDBVIDw8IFVTQVJUX0dUUFJfUFNDX1BvcykgICAgICAvKiE8IDB4MDAwMDAwNDAgKi8NCiNkZWZpbmUgVVNBUlRfR1RQUl9QU0NfNyAgICAgICAgICAgICAgICAgICAgKDB4ODBVIDw8IFVTQVJUX0dUUFJfUFNDX1BvcykgICAgICAvKiE8IDB4MDAwMDAwODAgKi8NCg0KI2RlZmluZSBVU0FSVF9HVFBSX0dUX1BvcyAgICAgICAgICAgICAgICAgICAoOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0FSVF9HVFBSX0dUX01zayAgICAgICAgICAgICAgICAgICAoMHhGRlUgPDwgVVNBUlRfR1RQUl9HVF9Qb3MpICAgICAgIC8qITwgMHgwMDAwRkYwMCAqLw0KI2RlZmluZSBVU0FSVF9HVFBSX0dUICAgICAgICAgICAgICAgICAgICAgICBVU0FSVF9HVFBSX0dUX01zayAgICAgICAgICAgICAgICAgIC8qITwgR3VhcmQgdGltZSB2YWx1ZSAqLw0KDQovKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLw0KLyogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8NCi8qICAgICAgICAgICAgICAgICAgICAgVW5pdmVyc2FsIFNlcmlhbCBCdXMgKFVTQikgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovDQovKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLw0KLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8NCg0KLyohPEVuZHBvaW50LXNwZWNpZmljIHJlZ2lzdGVycyAqLw0KDQojZGVmaW5lICBVU0JfRVAwUiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFVTQl9CQVNFICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBlbmRwb2ludCAwIHJlZ2lzdGVyIGFkZHJlc3MgKi8NCiNkZWZpbmUgIFVTQl9FUDFSICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoVVNCX0JBU0UgKyAweDAwMDAwMDA0VSkgICAgICAgICAvKiE8IGVuZHBvaW50IDEgcmVnaXN0ZXIgYWRkcmVzcyAqLw0KI2RlZmluZSAgVVNCX0VQMlIgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChVU0JfQkFTRSArIDB4MDAwMDAwMDhVKSAgICAgICAgIC8qITwgZW5kcG9pbnQgMiByZWdpc3RlciBhZGRyZXNzICovDQojZGVmaW5lICBVU0JfRVAzUiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKFVTQl9CQVNFICsgMHgwMDAwMDAwQ1UpICAgICAgICAgLyohPCBlbmRwb2ludCAzIHJlZ2lzdGVyIGFkZHJlc3MgKi8NCiNkZWZpbmUgIFVTQl9FUDRSICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoVVNCX0JBU0UgKyAweDAwMDAwMDEwVSkgICAgICAgICAvKiE8IGVuZHBvaW50IDQgcmVnaXN0ZXIgYWRkcmVzcyAqLw0KI2RlZmluZSAgVVNCX0VQNVIgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChVU0JfQkFTRSArIDB4MDAwMDAwMTRVKSAgICAgICAgIC8qITwgZW5kcG9pbnQgNSByZWdpc3RlciBhZGRyZXNzICovDQojZGVmaW5lICBVU0JfRVA2UiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKFVTQl9CQVNFICsgMHgwMDAwMDAxOFUpICAgICAgICAgLyohPCBlbmRwb2ludCA2IHJlZ2lzdGVyIGFkZHJlc3MgKi8NCiNkZWZpbmUgIFVTQl9FUDdSICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoVVNCX0JBU0UgKyAweDAwMDAwMDFDVSkgICAgICAgICAvKiE8IGVuZHBvaW50IDcgcmVnaXN0ZXIgYWRkcmVzcyAqLw0KDQovKiBiaXQgcG9zaXRpb25zICovIA0KI2RlZmluZSBVU0JfRVBfQ1RSX1JYX1BvcyAgICAgICAgICAgICAgICAgICAgICgxNVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0JfRVBfQ1RSX1JYX01zayAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFVTQl9FUF9DVFJfUlhfUG9zKSAgICAgIC8qITwgMHgwMDAwODAwMCAqLw0KI2RlZmluZSBVU0JfRVBfQ1RSX1JYICAgICAgICAgICAgICAgICAgICAgICAgIFVTQl9FUF9DVFJfUlhfTXNrICAgICAgICAgICAgICAgIC8qITwgIEVuZFBvaW50IENvcnJlY3QgVFJhbnNmZXIgUlggKi8NCiNkZWZpbmUgVVNCX0VQX0RUT0dfUlhfUG9zICAgICAgICAgICAgICAgICAgICAoMTRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNCX0VQX0RUT0dfUlhfTXNrICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBVU0JfRVBfRFRPR19SWF9Qb3MpICAgICAvKiE8IDB4MDAwMDQwMDAgKi8NCiNkZWZpbmUgVVNCX0VQX0RUT0dfUlggICAgICAgICAgICAgICAgICAgICAgICBVU0JfRVBfRFRPR19SWF9Nc2sgICAgICAgICAgICAgICAvKiE8ICBFbmRQb2ludCBEYXRhIFRPR0dMRSBSWCAqLw0KI2RlZmluZSBVU0JfRVBSWF9TVEFUX1BvcyAgICAgICAgICAgICAgICAgICAgICgxMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0JfRVBSWF9TVEFUX01zayAgICAgICAgICAgICAgICAgICAgICgweDNVIDw8IFVTQl9FUFJYX1NUQVRfUG9zKSAgICAgIC8qITwgMHgwMDAwMzAwMCAqLw0KI2RlZmluZSBVU0JfRVBSWF9TVEFUICAgICAgICAgICAgICAgICAgICAgICAgIFVTQl9FUFJYX1NUQVRfTXNrICAgICAgICAgICAgICAgIC8qITwgIEVuZFBvaW50IFJYIFNUQVR1cyBiaXQgZmllbGQgKi8NCiNkZWZpbmUgVVNCX0VQX1NFVFVQX1BvcyAgICAgICAgICAgICAgICAgICAgICAoMTFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNCX0VQX1NFVFVQX01zayAgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBVU0JfRVBfU0VUVVBfUG9zKSAgICAgICAvKiE8IDB4MDAwMDA4MDAgKi8NCiNkZWZpbmUgVVNCX0VQX1NFVFVQICAgICAgICAgICAgICAgICAgICAgICAgICBVU0JfRVBfU0VUVVBfTXNrICAgICAgICAgICAgICAgICAvKiE8ICBFbmRQb2ludCBTRVRVUCAqLw0KI2RlZmluZSBVU0JfRVBfVF9GSUVMRF9Qb3MgICAgICAgICAgICAgICAgICAgICg5VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0JfRVBfVF9GSUVMRF9Nc2sgICAgICAgICAgICAgICAgICAgICgweDNVIDw8IFVTQl9FUF9UX0ZJRUxEX1BvcykgICAgIC8qITwgMHgwMDAwMDYwMCAqLw0KI2RlZmluZSBVU0JfRVBfVF9GSUVMRCAgICAgICAgICAgICAgICAgICAgICAgIFVTQl9FUF9UX0ZJRUxEX01zayAgICAgICAgICAgICAgIC8qITwgIEVuZFBvaW50IFRZUEUgKi8NCiNkZWZpbmUgVVNCX0VQX0tJTkRfUG9zICAgICAgICAgICAgICAgICAgICAgICAoOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNCX0VQX0tJTkRfTXNrICAgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBVU0JfRVBfS0lORF9Qb3MpICAgICAgICAvKiE8IDB4MDAwMDAxMDAgKi8NCiNkZWZpbmUgVVNCX0VQX0tJTkQgICAgICAgICAgICAgICAgICAgICAgICAgICBVU0JfRVBfS0lORF9Nc2sgICAgICAgICAgICAgICAgICAvKiE8ICBFbmRQb2ludCBLSU5EICovDQojZGVmaW5lIFVTQl9FUF9DVFJfVFhfUG9zICAgICAgICAgICAgICAgICAgICAgKDdVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQl9FUF9DVFJfVFhfTXNrICAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVVNCX0VQX0NUUl9UWF9Qb3MpICAgICAgLyohPCAweDAwMDAwMDgwICovDQojZGVmaW5lIFVTQl9FUF9DVFJfVFggICAgICAgICAgICAgICAgICAgICAgICAgVVNCX0VQX0NUUl9UWF9Nc2sgICAgICAgICAgICAgICAgLyohPCAgRW5kUG9pbnQgQ29ycmVjdCBUUmFuc2ZlciBUWCAqLw0KI2RlZmluZSBVU0JfRVBfRFRPR19UWF9Qb3MgICAgICAgICAgICAgICAgICAgICg2VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0JfRVBfRFRPR19UWF9Nc2sgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFVTQl9FUF9EVE9HX1RYX1BvcykgICAgIC8qITwgMHgwMDAwMDA0MCAqLw0KI2RlZmluZSBVU0JfRVBfRFRPR19UWCAgICAgICAgICAgICAgICAgICAgICAgIFVTQl9FUF9EVE9HX1RYX01zayAgICAgICAgICAgICAgIC8qITwgIEVuZFBvaW50IERhdGEgVE9HR0xFIFRYICovDQojZGVmaW5lIFVTQl9FUFRYX1NUQVRfUG9zICAgICAgICAgICAgICAgICAgICAgKDRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQl9FUFRYX1NUQVRfTXNrICAgICAgICAgICAgICAgICAgICAgKDB4M1UgPDwgVVNCX0VQVFhfU1RBVF9Qb3MpICAgICAgLyohPCAweDAwMDAwMDMwICovDQojZGVmaW5lIFVTQl9FUFRYX1NUQVQgICAgICAgICAgICAgICAgICAgICAgICAgVVNCX0VQVFhfU1RBVF9Nc2sgICAgICAgICAgICAgICAgLyohPCAgRW5kUG9pbnQgVFggU1RBVHVzIGJpdCBmaWVsZCAqLw0KI2RlZmluZSBVU0JfRVBBRERSX0ZJRUxEX1BvcyAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0JfRVBBRERSX0ZJRUxEX01zayAgICAgICAgICAgICAgICAgICgweEZVIDw8IFVTQl9FUEFERFJfRklFTERfUG9zKSAgIC8qITwgMHgwMDAwMDAwRiAqLw0KI2RlZmluZSBVU0JfRVBBRERSX0ZJRUxEICAgICAgICAgICAgICAgICAgICAgIFVTQl9FUEFERFJfRklFTERfTXNrICAgICAgICAgICAgIC8qITwgIEVuZFBvaW50IEFERFJlc3MgRklFTEQgKi8NCg0KLyogRW5kUG9pbnQgUkVHaXN0ZXIgTUFTSyAobm8gdG9nZ2xlIGZpZWxkcykgKi8NCiNkZWZpbmUgIFVTQl9FUFJFR19NQVNLICAgICAoVVNCX0VQX0NUUl9SWHxVU0JfRVBfU0VUVVB8VVNCX0VQX1RfRklFTER8VVNCX0VQX0tJTkR8VVNCX0VQX0NUUl9UWHxVU0JfRVBBRERSX0ZJRUxEKQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgRVBfVFlQRVsxOjBdIEVuZFBvaW50IFRZUEUgKi8NCiNkZWZpbmUgVVNCX0VQX1RZUEVfTUFTS19Qb3MgICAgICAgICAgICAgICAgICAoOVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNCX0VQX1RZUEVfTUFTS19Nc2sgICAgICAgICAgICAgICAgICAoMHgzVSA8PCBVU0JfRVBfVFlQRV9NQVNLX1BvcykgICAvKiE8IDB4MDAwMDA2MDAgKi8NCiNkZWZpbmUgVVNCX0VQX1RZUEVfTUFTSyAgICAgICAgICAgICAgICAgICAgICBVU0JfRVBfVFlQRV9NQVNLX01zayAgICAgICAgICAgICAvKiE8IEVuZFBvaW50IFRZUEUgTWFzayAqLw0KI2RlZmluZSBVU0JfRVBfQlVMSyAgICAgICAgICAgICAgICAgICAgICAgICAgICgweDAwMDAwMDAwVSkgICAgICAgICAgICAgICAgICAgIC8qITwgRW5kUG9pbnQgQlVMSyAqLw0KI2RlZmluZSBVU0JfRVBfQ09OVFJPTCAgICAgICAgICAgICAgICAgICAgICAgICgweDAwMDAwMjAwVSkgICAgICAgICAgICAgICAgICAgIC8qITwgRW5kUG9pbnQgQ09OVFJPTCAqLw0KI2RlZmluZSBVU0JfRVBfSVNPQ0hST05PVVMgICAgICAgICAgICAgICAgICAgICgweDAwMDAwNDAwVSkgICAgICAgICAgICAgICAgICAgIC8qITwgRW5kUG9pbnQgSVNPQ0hST05PVVMgKi8NCiNkZWZpbmUgVVNCX0VQX0lOVEVSUlVQVCAgICAgICAgICAgICAgICAgICAgICAoMHgwMDAwMDYwMFUpICAgICAgICAgICAgICAgICAgICAvKiE8IEVuZFBvaW50IElOVEVSUlVQVCAqLw0KI2RlZmluZSAgVVNCX0VQX1RfTUFTSyAgICAgICh+VVNCX0VQX1RfRklFTEQgJiBVU0JfRVBSRUdfTUFTSykNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lICBVU0JfRVBLSU5EX01BU0sgICAgKH5VU0JfRVBfS0lORCAmIFVTQl9FUFJFR19NQVNLKSAgICAgICAgICAgIC8qITwgRVBfS0lORCBFbmRQb2ludCBLSU5EICovDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBTVEFUX1RYWzE6MF0gU1RBVHVzIGZvciBUWCB0cmFuc2ZlciAqLw0KI2RlZmluZSBVU0JfRVBfVFhfRElTICAgICAgICAgICAgICAgICAgICAgICAgICgweDAwMDAwMDAwVSkgICAgICAgICAgICAgICAgICAgIC8qITwgRW5kUG9pbnQgVFggRElTYWJsZWQgKi8NCiNkZWZpbmUgVVNCX0VQX1RYX1NUQUxMICAgICAgICAgICAgICAgICAgICAgICAoMHgwMDAwMDAxMFUpICAgICAgICAgICAgICAgICAgICAvKiE8IEVuZFBvaW50IFRYIFNUQUxMZWQgKi8NCiNkZWZpbmUgVVNCX0VQX1RYX05BSyAgICAgICAgICAgICAgICAgICAgICAgICAoMHgwMDAwMDAyMFUpICAgICAgICAgICAgICAgICAgICAvKiE8IEVuZFBvaW50IFRYIE5BS2VkICovDQojZGVmaW5lIFVTQl9FUF9UWF9WQUxJRCAgICAgICAgICAgICAgICAgICAgICAgKDB4MDAwMDAwMzBVKSAgICAgICAgICAgICAgICAgICAgLyohPCBFbmRQb2ludCBUWCBWQUxJRCAqLw0KI2RlZmluZSBVU0JfRVBUWF9EVE9HMSAgICAgICAgICAgICAgICAgICAgICAgICgweDAwMDAwMDEwVSkgICAgICAgICAgICAgICAgICAgIC8qITwgRW5kUG9pbnQgVFggRGF0YSBUT0dnbGUgYml0MSAqLw0KI2RlZmluZSBVU0JfRVBUWF9EVE9HMiAgICAgICAgICAgICAgICAgICAgICAgICgweDAwMDAwMDIwVSkgICAgICAgICAgICAgICAgICAgIC8qITwgRW5kUG9pbnQgVFggRGF0YSBUT0dnbGUgYml0MiAqLw0KI2RlZmluZSAgVVNCX0VQVFhfRFRPR01BU0sgIChVU0JfRVBUWF9TVEFUfFVTQl9FUFJFR19NQVNLKQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgU1RBVF9SWFsxOjBdIFNUQVR1cyBmb3IgUlggdHJhbnNmZXIgKi8NCiNkZWZpbmUgVVNCX0VQX1JYX0RJUyAgICAgICAgICAgICAgICAgICAgICAgICAoMHgwMDAwMDAwMFUpICAgICAgICAgICAgICAgICAgICAvKiE8IEVuZFBvaW50IFJYIERJU2FibGVkICovDQojZGVmaW5lIFVTQl9FUF9SWF9TVEFMTCAgICAgICAgICAgICAgICAgICAgICAgKDB4MDAwMDEwMDBVKSAgICAgICAgICAgICAgICAgICAgLyohPCBFbmRQb2ludCBSWCBTVEFMTGVkICovDQojZGVmaW5lIFVTQl9FUF9SWF9OQUsgICAgICAgICAgICAgICAgICAgICAgICAgKDB4MDAwMDIwMDBVKSAgICAgICAgICAgICAgICAgICAgLyohPCBFbmRQb2ludCBSWCBOQUtlZCAqLw0KI2RlZmluZSBVU0JfRVBfUlhfVkFMSUQgICAgICAgICAgICAgICAgICAgICAgICgweDAwMDAzMDAwVSkgICAgICAgICAgICAgICAgICAgIC8qITwgRW5kUG9pbnQgUlggVkFMSUQgKi8NCiNkZWZpbmUgVVNCX0VQUlhfRFRPRzEgICAgICAgICAgICAgICAgICAgICAgICAoMHgwMDAwMTAwMFUpICAgICAgICAgICAgICAgICAgICAvKiE8IEVuZFBvaW50IFJYIERhdGEgVE9HZ2xlIGJpdDEgKi8NCiNkZWZpbmUgVVNCX0VQUlhfRFRPRzIgICAgICAgICAgICAgICAgICAgICAgICAoMHgwMDAwMjAwMFUpICAgICAgICAgICAgICAgICAgICAvKiE8IEVuZFBvaW50IFJYIERhdGEgVE9HZ2xlIGJpdDEgKi8NCiNkZWZpbmUgIFVTQl9FUFJYX0RUT0dNQVNLICAoVVNCX0VQUlhfU1RBVHxVU0JfRVBSRUdfTUFTSykNCg0KLyoqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBVU0JfRVAwUiByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgVVNCX0VQMFJfRUFfUG9zICAgICAgICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNCX0VQMFJfRUFfTXNrICAgICAgICAgICAgICAgICAgICAgICAoMHhGVSA8PCBVU0JfRVAwUl9FQV9Qb3MpICAgICAgICAvKiE8IDB4MDAwMDAwMEYgKi8NCiNkZWZpbmUgVVNCX0VQMFJfRUEgICAgICAgICAgICAgICAgICAgICAgICAgICBVU0JfRVAwUl9FQV9Nc2sgICAgICAgICAgICAgICAgICAvKiE8RW5kcG9pbnQgQWRkcmVzcyAqLw0KDQojZGVmaW5lIFVTQl9FUDBSX1NUQVRfVFhfUG9zICAgICAgICAgICAgICAgICAgKDRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQl9FUDBSX1NUQVRfVFhfTXNrICAgICAgICAgICAgICAgICAgKDB4M1UgPDwgVVNCX0VQMFJfU1RBVF9UWF9Qb3MpICAgLyohPCAweDAwMDAwMDMwICovDQojZGVmaW5lIFVTQl9FUDBSX1NUQVRfVFggICAgICAgICAgICAgICAgICAgICAgVVNCX0VQMFJfU1RBVF9UWF9Nc2sgICAgICAgICAgICAgLyohPFNUQVRfVFhbMTowXSBiaXRzIChTdGF0dXMgYml0cywgZm9yIHRyYW5zbWlzc2lvbiB0cmFuc2ZlcnMpICovDQojZGVmaW5lIFVTQl9FUDBSX1NUQVRfVFhfMCAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVVNCX0VQMFJfU1RBVF9UWF9Qb3MpICAgLyohPCAweDAwMDAwMDEwICovDQojZGVmaW5lIFVTQl9FUDBSX1NUQVRfVFhfMSAgICAgICAgICAgICAgICAgICAgKDB4MlUgPDwgVVNCX0VQMFJfU1RBVF9UWF9Qb3MpICAgLyohPCAweDAwMDAwMDIwICovDQoNCiNkZWZpbmUgVVNCX0VQMFJfRFRPR19UWF9Qb3MgICAgICAgICAgICAgICAgICAoNlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNCX0VQMFJfRFRPR19UWF9Nc2sgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBVU0JfRVAwUl9EVE9HX1RYX1BvcykgICAvKiE8IDB4MDAwMDAwNDAgKi8NCiNkZWZpbmUgVVNCX0VQMFJfRFRPR19UWCAgICAgICAgICAgICAgICAgICAgICBVU0JfRVAwUl9EVE9HX1RYX01zayAgICAgICAgICAgICAvKiE8RGF0YSBUb2dnbGUsIGZvciB0cmFuc21pc3Npb24gdHJhbnNmZXJzICovDQojZGVmaW5lIFVTQl9FUDBSX0NUUl9UWF9Qb3MgICAgICAgICAgICAgICAgICAgKDdVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQl9FUDBSX0NUUl9UWF9Nc2sgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVVNCX0VQMFJfQ1RSX1RYX1BvcykgICAgLyohPCAweDAwMDAwMDgwICovDQojZGVmaW5lIFVTQl9FUDBSX0NUUl9UWCAgICAgICAgICAgICAgICAgICAgICAgVVNCX0VQMFJfQ1RSX1RYX01zayAgICAgICAgICAgICAgLyohPENvcnJlY3QgVHJhbnNmZXIgZm9yIHRyYW5zbWlzc2lvbiAqLw0KI2RlZmluZSBVU0JfRVAwUl9FUF9LSU5EX1BvcyAgICAgICAgICAgICAgICAgICg4VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0JfRVAwUl9FUF9LSU5EX01zayAgICAgICAgICAgICAgICAgICgweDFVIDw8IFVTQl9FUDBSX0VQX0tJTkRfUG9zKSAgIC8qITwgMHgwMDAwMDEwMCAqLw0KI2RlZmluZSBVU0JfRVAwUl9FUF9LSU5EICAgICAgICAgICAgICAgICAgICAgIFVTQl9FUDBSX0VQX0tJTkRfTXNrICAgICAgICAgICAgIC8qITxFbmRwb2ludCBLaW5kICovDQoNCiNkZWZpbmUgVVNCX0VQMFJfRVBfVFlQRV9Qb3MgICAgICAgICAgICAgICAgICAoOVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNCX0VQMFJfRVBfVFlQRV9Nc2sgICAgICAgICAgICAgICAgICAoMHgzVSA8PCBVU0JfRVAwUl9FUF9UWVBFX1BvcykgICAvKiE8IDB4MDAwMDA2MDAgKi8NCiNkZWZpbmUgVVNCX0VQMFJfRVBfVFlQRSAgICAgICAgICAgICAgICAgICAgICBVU0JfRVAwUl9FUF9UWVBFX01zayAgICAgICAgICAgICAvKiE8RVBfVFlQRVsxOjBdIGJpdHMgKEVuZHBvaW50IHR5cGUpICovDQojZGVmaW5lIFVTQl9FUDBSX0VQX1RZUEVfMCAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVVNCX0VQMFJfRVBfVFlQRV9Qb3MpICAgLyohPCAweDAwMDAwMjAwICovDQojZGVmaW5lIFVTQl9FUDBSX0VQX1RZUEVfMSAgICAgICAgICAgICAgICAgICAgKDB4MlUgPDwgVVNCX0VQMFJfRVBfVFlQRV9Qb3MpICAgLyohPCAweDAwMDAwNDAwICovDQoNCiNkZWZpbmUgVVNCX0VQMFJfU0VUVVBfUG9zICAgICAgICAgICAgICAgICAgICAoMTFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNCX0VQMFJfU0VUVVBfTXNrICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBVU0JfRVAwUl9TRVRVUF9Qb3MpICAgICAvKiE8IDB4MDAwMDA4MDAgKi8NCiNkZWZpbmUgVVNCX0VQMFJfU0VUVVAgICAgICAgICAgICAgICAgICAgICAgICBVU0JfRVAwUl9TRVRVUF9Nc2sgICAgICAgICAgICAgICAvKiE8U2V0dXAgdHJhbnNhY3Rpb24gY29tcGxldGVkICovDQoNCiNkZWZpbmUgVVNCX0VQMFJfU1RBVF9SWF9Qb3MgICAgICAgICAgICAgICAgICAoMTJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNCX0VQMFJfU1RBVF9SWF9Nc2sgICAgICAgICAgICAgICAgICAoMHgzVSA8PCBVU0JfRVAwUl9TVEFUX1JYX1BvcykgICAvKiE8IDB4MDAwMDMwMDAgKi8NCiNkZWZpbmUgVVNCX0VQMFJfU1RBVF9SWCAgICAgICAgICAgICAgICAgICAgICBVU0JfRVAwUl9TVEFUX1JYX01zayAgICAgICAgICAgICAvKiE8U1RBVF9SWFsxOjBdIGJpdHMgKFN0YXR1cyBiaXRzLCBmb3IgcmVjZXB0aW9uIHRyYW5zZmVycykgKi8NCiNkZWZpbmUgVVNCX0VQMFJfU1RBVF9SWF8wICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBVU0JfRVAwUl9TVEFUX1JYX1BvcykgICAvKiE8IDB4MDAwMDEwMDAgKi8NCiNkZWZpbmUgVVNCX0VQMFJfU1RBVF9SWF8xICAgICAgICAgICAgICAgICAgICAoMHgyVSA8PCBVU0JfRVAwUl9TVEFUX1JYX1BvcykgICAvKiE8IDB4MDAwMDIwMDAgKi8NCg0KI2RlZmluZSBVU0JfRVAwUl9EVE9HX1JYX1BvcyAgICAgICAgICAgICAgICAgICgxNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0JfRVAwUl9EVE9HX1JYX01zayAgICAgICAgICAgICAgICAgICgweDFVIDw8IFVTQl9FUDBSX0RUT0dfUlhfUG9zKSAgIC8qITwgMHgwMDAwNDAwMCAqLw0KI2RlZmluZSBVU0JfRVAwUl9EVE9HX1JYICAgICAgICAgICAgICAgICAgICAgIFVTQl9FUDBSX0RUT0dfUlhfTXNrICAgICAgICAgICAgIC8qITxEYXRhIFRvZ2dsZSwgZm9yIHJlY2VwdGlvbiB0cmFuc2ZlcnMgKi8NCiNkZWZpbmUgVVNCX0VQMFJfQ1RSX1JYX1BvcyAgICAgICAgICAgICAgICAgICAoMTVVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNCX0VQMFJfQ1RSX1JYX01zayAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBVU0JfRVAwUl9DVFJfUlhfUG9zKSAgICAvKiE8IDB4MDAwMDgwMDAgKi8NCiNkZWZpbmUgVVNCX0VQMFJfQ1RSX1JYICAgICAgICAgICAgICAgICAgICAgICBVU0JfRVAwUl9DVFJfUlhfTXNrICAgICAgICAgICAgICAvKiE8Q29ycmVjdCBUcmFuc2ZlciBmb3IgcmVjZXB0aW9uICovDQoNCi8qKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgVVNCX0VQMVIgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIFVTQl9FUDFSX0VBX1BvcyAgICAgICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQl9FUDFSX0VBX01zayAgICAgICAgICAgICAgICAgICAgICAgKDB4RlUgPDwgVVNCX0VQMVJfRUFfUG9zKSAgICAgICAgLyohPCAweDAwMDAwMDBGICovDQojZGVmaW5lIFVTQl9FUDFSX0VBICAgICAgICAgICAgICAgICAgICAgICAgICAgVVNCX0VQMVJfRUFfTXNrICAgICAgICAgICAgICAgICAgLyohPEVuZHBvaW50IEFkZHJlc3MgKi8NCg0KI2RlZmluZSBVU0JfRVAxUl9TVEFUX1RYX1BvcyAgICAgICAgICAgICAgICAgICg0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0JfRVAxUl9TVEFUX1RYX01zayAgICAgICAgICAgICAgICAgICgweDNVIDw8IFVTQl9FUDFSX1NUQVRfVFhfUG9zKSAgIC8qITwgMHgwMDAwMDAzMCAqLw0KI2RlZmluZSBVU0JfRVAxUl9TVEFUX1RYICAgICAgICAgICAgICAgICAgICAgIFVTQl9FUDFSX1NUQVRfVFhfTXNrICAgICAgICAgICAgIC8qITxTVEFUX1RYWzE6MF0gYml0cyAoU3RhdHVzIGJpdHMsIGZvciB0cmFuc21pc3Npb24gdHJhbnNmZXJzKSAqLw0KI2RlZmluZSBVU0JfRVAxUl9TVEFUX1RYXzAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFVTQl9FUDFSX1NUQVRfVFhfUG9zKSAgIC8qITwgMHgwMDAwMDAxMCAqLw0KI2RlZmluZSBVU0JfRVAxUl9TVEFUX1RYXzEgICAgICAgICAgICAgICAgICAgICgweDJVIDw8IFVTQl9FUDFSX1NUQVRfVFhfUG9zKSAgIC8qITwgMHgwMDAwMDAyMCAqLw0KDQojZGVmaW5lIFVTQl9FUDFSX0RUT0dfVFhfUG9zICAgICAgICAgICAgICAgICAgKDZVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQl9FUDFSX0RUT0dfVFhfTXNrICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVVNCX0VQMVJfRFRPR19UWF9Qb3MpICAgLyohPCAweDAwMDAwMDQwICovDQojZGVmaW5lIFVTQl9FUDFSX0RUT0dfVFggICAgICAgICAgICAgICAgICAgICAgVVNCX0VQMVJfRFRPR19UWF9Nc2sgICAgICAgICAgICAgLyohPERhdGEgVG9nZ2xlLCBmb3IgdHJhbnNtaXNzaW9uIHRyYW5zZmVycyAqLw0KI2RlZmluZSBVU0JfRVAxUl9DVFJfVFhfUG9zICAgICAgICAgICAgICAgICAgICg3VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0JfRVAxUl9DVFJfVFhfTXNrICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFVTQl9FUDFSX0NUUl9UWF9Qb3MpICAgIC8qITwgMHgwMDAwMDA4MCAqLw0KI2RlZmluZSBVU0JfRVAxUl9DVFJfVFggICAgICAgICAgICAgICAgICAgICAgIFVTQl9FUDFSX0NUUl9UWF9Nc2sgICAgICAgICAgICAgIC8qITxDb3JyZWN0IFRyYW5zZmVyIGZvciB0cmFuc21pc3Npb24gKi8NCiNkZWZpbmUgVVNCX0VQMVJfRVBfS0lORF9Qb3MgICAgICAgICAgICAgICAgICAoOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNCX0VQMVJfRVBfS0lORF9Nc2sgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBVU0JfRVAxUl9FUF9LSU5EX1BvcykgICAvKiE8IDB4MDAwMDAxMDAgKi8NCiNkZWZpbmUgVVNCX0VQMVJfRVBfS0lORCAgICAgICAgICAgICAgICAgICAgICBVU0JfRVAxUl9FUF9LSU5EX01zayAgICAgICAgICAgICAvKiE8RW5kcG9pbnQgS2luZCAqLw0KDQojZGVmaW5lIFVTQl9FUDFSX0VQX1RZUEVfUG9zICAgICAgICAgICAgICAgICAgKDlVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQl9FUDFSX0VQX1RZUEVfTXNrICAgICAgICAgICAgICAgICAgKDB4M1UgPDwgVVNCX0VQMVJfRVBfVFlQRV9Qb3MpICAgLyohPCAweDAwMDAwNjAwICovDQojZGVmaW5lIFVTQl9FUDFSX0VQX1RZUEUgICAgICAgICAgICAgICAgICAgICAgVVNCX0VQMVJfRVBfVFlQRV9Nc2sgICAgICAgICAgICAgLyohPEVQX1RZUEVbMTowXSBiaXRzIChFbmRwb2ludCB0eXBlKSAqLw0KI2RlZmluZSBVU0JfRVAxUl9FUF9UWVBFXzAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFVTQl9FUDFSX0VQX1RZUEVfUG9zKSAgIC8qITwgMHgwMDAwMDIwMCAqLw0KI2RlZmluZSBVU0JfRVAxUl9FUF9UWVBFXzEgICAgICAgICAgICAgICAgICAgICgweDJVIDw8IFVTQl9FUDFSX0VQX1RZUEVfUG9zKSAgIC8qITwgMHgwMDAwMDQwMCAqLw0KDQojZGVmaW5lIFVTQl9FUDFSX1NFVFVQX1BvcyAgICAgICAgICAgICAgICAgICAgKDExVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQl9FUDFSX1NFVFVQX01zayAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVVNCX0VQMVJfU0VUVVBfUG9zKSAgICAgLyohPCAweDAwMDAwODAwICovDQojZGVmaW5lIFVTQl9FUDFSX1NFVFVQICAgICAgICAgICAgICAgICAgICAgICAgVVNCX0VQMVJfU0VUVVBfTXNrICAgICAgICAgICAgICAgLyohPFNldHVwIHRyYW5zYWN0aW9uIGNvbXBsZXRlZCAqLw0KDQojZGVmaW5lIFVTQl9FUDFSX1NUQVRfUlhfUG9zICAgICAgICAgICAgICAgICAgKDEyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQl9FUDFSX1NUQVRfUlhfTXNrICAgICAgICAgICAgICAgICAgKDB4M1UgPDwgVVNCX0VQMVJfU1RBVF9SWF9Qb3MpICAgLyohPCAweDAwMDAzMDAwICovDQojZGVmaW5lIFVTQl9FUDFSX1NUQVRfUlggICAgICAgICAgICAgICAgICAgICAgVVNCX0VQMVJfU1RBVF9SWF9Nc2sgICAgICAgICAgICAgLyohPFNUQVRfUlhbMTowXSBiaXRzIChTdGF0dXMgYml0cywgZm9yIHJlY2VwdGlvbiB0cmFuc2ZlcnMpICovDQojZGVmaW5lIFVTQl9FUDFSX1NUQVRfUlhfMCAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVVNCX0VQMVJfU1RBVF9SWF9Qb3MpICAgLyohPCAweDAwMDAxMDAwICovDQojZGVmaW5lIFVTQl9FUDFSX1NUQVRfUlhfMSAgICAgICAgICAgICAgICAgICAgKDB4MlUgPDwgVVNCX0VQMVJfU1RBVF9SWF9Qb3MpICAgLyohPCAweDAwMDAyMDAwICovDQoNCiNkZWZpbmUgVVNCX0VQMVJfRFRPR19SWF9Qb3MgICAgICAgICAgICAgICAgICAoMTRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNCX0VQMVJfRFRPR19SWF9Nc2sgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBVU0JfRVAxUl9EVE9HX1JYX1BvcykgICAvKiE8IDB4MDAwMDQwMDAgKi8NCiNkZWZpbmUgVVNCX0VQMVJfRFRPR19SWCAgICAgICAgICAgICAgICAgICAgICBVU0JfRVAxUl9EVE9HX1JYX01zayAgICAgICAgICAgICAvKiE8RGF0YSBUb2dnbGUsIGZvciByZWNlcHRpb24gdHJhbnNmZXJzICovDQojZGVmaW5lIFVTQl9FUDFSX0NUUl9SWF9Qb3MgICAgICAgICAgICAgICAgICAgKDE1VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQl9FUDFSX0NUUl9SWF9Nc2sgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVVNCX0VQMVJfQ1RSX1JYX1BvcykgICAgLyohPCAweDAwMDA4MDAwICovDQojZGVmaW5lIFVTQl9FUDFSX0NUUl9SWCAgICAgICAgICAgICAgICAgICAgICAgVVNCX0VQMVJfQ1RSX1JYX01zayAgICAgICAgICAgICAgLyohPENvcnJlY3QgVHJhbnNmZXIgZm9yIHJlY2VwdGlvbiAqLw0KDQovKioqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFVTQl9FUDJSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBVU0JfRVAyUl9FQV9Qb3MgICAgICAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0JfRVAyUl9FQV9Nc2sgICAgICAgICAgICAgICAgICAgICAgICgweEZVIDw8IFVTQl9FUDJSX0VBX1BvcykgICAgICAgIC8qITwgMHgwMDAwMDAwRiAqLw0KI2RlZmluZSBVU0JfRVAyUl9FQSAgICAgICAgICAgICAgICAgICAgICAgICAgIFVTQl9FUDJSX0VBX01zayAgICAgICAgICAgICAgICAgIC8qITxFbmRwb2ludCBBZGRyZXNzICovDQoNCiNkZWZpbmUgVVNCX0VQMlJfU1RBVF9UWF9Qb3MgICAgICAgICAgICAgICAgICAoNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNCX0VQMlJfU1RBVF9UWF9Nc2sgICAgICAgICAgICAgICAgICAoMHgzVSA8PCBVU0JfRVAyUl9TVEFUX1RYX1BvcykgICAvKiE8IDB4MDAwMDAwMzAgKi8NCiNkZWZpbmUgVVNCX0VQMlJfU1RBVF9UWCAgICAgICAgICAgICAgICAgICAgICBVU0JfRVAyUl9TVEFUX1RYX01zayAgICAgICAgICAgICAvKiE8U1RBVF9UWFsxOjBdIGJpdHMgKFN0YXR1cyBiaXRzLCBmb3IgdHJhbnNtaXNzaW9uIHRyYW5zZmVycykgKi8NCiNkZWZpbmUgVVNCX0VQMlJfU1RBVF9UWF8wICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBVU0JfRVAyUl9TVEFUX1RYX1BvcykgICAvKiE8IDB4MDAwMDAwMTAgKi8NCiNkZWZpbmUgVVNCX0VQMlJfU1RBVF9UWF8xICAgICAgICAgICAgICAgICAgICAoMHgyVSA8PCBVU0JfRVAyUl9TVEFUX1RYX1BvcykgICAvKiE8IDB4MDAwMDAwMjAgKi8NCg0KI2RlZmluZSBVU0JfRVAyUl9EVE9HX1RYX1BvcyAgICAgICAgICAgICAgICAgICg2VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0JfRVAyUl9EVE9HX1RYX01zayAgICAgICAgICAgICAgICAgICgweDFVIDw8IFVTQl9FUDJSX0RUT0dfVFhfUG9zKSAgIC8qITwgMHgwMDAwMDA0MCAqLw0KI2RlZmluZSBVU0JfRVAyUl9EVE9HX1RYICAgICAgICAgICAgICAgICAgICAgIFVTQl9FUDJSX0RUT0dfVFhfTXNrICAgICAgICAgICAgIC8qITxEYXRhIFRvZ2dsZSwgZm9yIHRyYW5zbWlzc2lvbiB0cmFuc2ZlcnMgKi8NCiNkZWZpbmUgVVNCX0VQMlJfQ1RSX1RYX1BvcyAgICAgICAgICAgICAgICAgICAoN1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNCX0VQMlJfQ1RSX1RYX01zayAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBVU0JfRVAyUl9DVFJfVFhfUG9zKSAgICAvKiE8IDB4MDAwMDAwODAgKi8NCiNkZWZpbmUgVVNCX0VQMlJfQ1RSX1RYICAgICAgICAgICAgICAgICAgICAgICBVU0JfRVAyUl9DVFJfVFhfTXNrICAgICAgICAgICAgICAvKiE8Q29ycmVjdCBUcmFuc2ZlciBmb3IgdHJhbnNtaXNzaW9uICovDQojZGVmaW5lIFVTQl9FUDJSX0VQX0tJTkRfUG9zICAgICAgICAgICAgICAgICAgKDhVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQl9FUDJSX0VQX0tJTkRfTXNrICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVVNCX0VQMlJfRVBfS0lORF9Qb3MpICAgLyohPCAweDAwMDAwMTAwICovDQojZGVmaW5lIFVTQl9FUDJSX0VQX0tJTkQgICAgICAgICAgICAgICAgICAgICAgVVNCX0VQMlJfRVBfS0lORF9Nc2sgICAgICAgICAgICAgLyohPEVuZHBvaW50IEtpbmQgKi8NCg0KI2RlZmluZSBVU0JfRVAyUl9FUF9UWVBFX1BvcyAgICAgICAgICAgICAgICAgICg5VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0JfRVAyUl9FUF9UWVBFX01zayAgICAgICAgICAgICAgICAgICgweDNVIDw8IFVTQl9FUDJSX0VQX1RZUEVfUG9zKSAgIC8qITwgMHgwMDAwMDYwMCAqLw0KI2RlZmluZSBVU0JfRVAyUl9FUF9UWVBFICAgICAgICAgICAgICAgICAgICAgIFVTQl9FUDJSX0VQX1RZUEVfTXNrICAgICAgICAgICAgIC8qITxFUF9UWVBFWzE6MF0gYml0cyAoRW5kcG9pbnQgdHlwZSkgKi8NCiNkZWZpbmUgVVNCX0VQMlJfRVBfVFlQRV8wICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBVU0JfRVAyUl9FUF9UWVBFX1BvcykgICAvKiE8IDB4MDAwMDAyMDAgKi8NCiNkZWZpbmUgVVNCX0VQMlJfRVBfVFlQRV8xICAgICAgICAgICAgICAgICAgICAoMHgyVSA8PCBVU0JfRVAyUl9FUF9UWVBFX1BvcykgICAvKiE8IDB4MDAwMDA0MDAgKi8NCg0KI2RlZmluZSBVU0JfRVAyUl9TRVRVUF9Qb3MgICAgICAgICAgICAgICAgICAgICgxMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0JfRVAyUl9TRVRVUF9Nc2sgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFVTQl9FUDJSX1NFVFVQX1BvcykgICAgIC8qITwgMHgwMDAwMDgwMCAqLw0KI2RlZmluZSBVU0JfRVAyUl9TRVRVUCAgICAgICAgICAgICAgICAgICAgICAgIFVTQl9FUDJSX1NFVFVQX01zayAgICAgICAgICAgICAgIC8qITxTZXR1cCB0cmFuc2FjdGlvbiBjb21wbGV0ZWQgKi8NCg0KI2RlZmluZSBVU0JfRVAyUl9TVEFUX1JYX1BvcyAgICAgICAgICAgICAgICAgICgxMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0JfRVAyUl9TVEFUX1JYX01zayAgICAgICAgICAgICAgICAgICgweDNVIDw8IFVTQl9FUDJSX1NUQVRfUlhfUG9zKSAgIC8qITwgMHgwMDAwMzAwMCAqLw0KI2RlZmluZSBVU0JfRVAyUl9TVEFUX1JYICAgICAgICAgICAgICAgICAgICAgIFVTQl9FUDJSX1NUQVRfUlhfTXNrICAgICAgICAgICAgIC8qITxTVEFUX1JYWzE6MF0gYml0cyAoU3RhdHVzIGJpdHMsIGZvciByZWNlcHRpb24gdHJhbnNmZXJzKSAqLw0KI2RlZmluZSBVU0JfRVAyUl9TVEFUX1JYXzAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFVTQl9FUDJSX1NUQVRfUlhfUG9zKSAgIC8qITwgMHgwMDAwMTAwMCAqLw0KI2RlZmluZSBVU0JfRVAyUl9TVEFUX1JYXzEgICAgICAgICAgICAgICAgICAgICgweDJVIDw8IFVTQl9FUDJSX1NUQVRfUlhfUG9zKSAgIC8qITwgMHgwMDAwMjAwMCAqLw0KDQojZGVmaW5lIFVTQl9FUDJSX0RUT0dfUlhfUG9zICAgICAgICAgICAgICAgICAgKDE0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQl9FUDJSX0RUT0dfUlhfTXNrICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVVNCX0VQMlJfRFRPR19SWF9Qb3MpICAgLyohPCAweDAwMDA0MDAwICovDQojZGVmaW5lIFVTQl9FUDJSX0RUT0dfUlggICAgICAgICAgICAgICAgICAgICAgVVNCX0VQMlJfRFRPR19SWF9Nc2sgICAgICAgICAgICAgLyohPERhdGEgVG9nZ2xlLCBmb3IgcmVjZXB0aW9uIHRyYW5zZmVycyAqLw0KI2RlZmluZSBVU0JfRVAyUl9DVFJfUlhfUG9zICAgICAgICAgICAgICAgICAgICgxNVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0JfRVAyUl9DVFJfUlhfTXNrICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFVTQl9FUDJSX0NUUl9SWF9Qb3MpICAgIC8qITwgMHgwMDAwODAwMCAqLw0KI2RlZmluZSBVU0JfRVAyUl9DVFJfUlggICAgICAgICAgICAgICAgICAgICAgIFVTQl9FUDJSX0NUUl9SWF9Nc2sgICAgICAgICAgICAgIC8qITxDb3JyZWN0IFRyYW5zZmVyIGZvciByZWNlcHRpb24gKi8NCg0KLyoqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBVU0JfRVAzUiByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgVVNCX0VQM1JfRUFfUG9zICAgICAgICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNCX0VQM1JfRUFfTXNrICAgICAgICAgICAgICAgICAgICAgICAoMHhGVSA8PCBVU0JfRVAzUl9FQV9Qb3MpICAgICAgICAvKiE8IDB4MDAwMDAwMEYgKi8NCiNkZWZpbmUgVVNCX0VQM1JfRUEgICAgICAgICAgICAgICAgICAgICAgICAgICBVU0JfRVAzUl9FQV9Nc2sgICAgICAgICAgICAgICAgICAvKiE8RW5kcG9pbnQgQWRkcmVzcyAqLw0KDQojZGVmaW5lIFVTQl9FUDNSX1NUQVRfVFhfUG9zICAgICAgICAgICAgICAgICAgKDRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQl9FUDNSX1NUQVRfVFhfTXNrICAgICAgICAgICAgICAgICAgKDB4M1UgPDwgVVNCX0VQM1JfU1RBVF9UWF9Qb3MpICAgLyohPCAweDAwMDAwMDMwICovDQojZGVmaW5lIFVTQl9FUDNSX1NUQVRfVFggICAgICAgICAgICAgICAgICAgICAgVVNCX0VQM1JfU1RBVF9UWF9Nc2sgICAgICAgICAgICAgLyohPFNUQVRfVFhbMTowXSBiaXRzIChTdGF0dXMgYml0cywgZm9yIHRyYW5zbWlzc2lvbiB0cmFuc2ZlcnMpICovDQojZGVmaW5lIFVTQl9FUDNSX1NUQVRfVFhfMCAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVVNCX0VQM1JfU1RBVF9UWF9Qb3MpICAgLyohPCAweDAwMDAwMDEwICovDQojZGVmaW5lIFVTQl9FUDNSX1NUQVRfVFhfMSAgICAgICAgICAgICAgICAgICAgKDB4MlUgPDwgVVNCX0VQM1JfU1RBVF9UWF9Qb3MpICAgLyohPCAweDAwMDAwMDIwICovDQoNCiNkZWZpbmUgVVNCX0VQM1JfRFRPR19UWF9Qb3MgICAgICAgICAgICAgICAgICAoNlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNCX0VQM1JfRFRPR19UWF9Nc2sgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBVU0JfRVAzUl9EVE9HX1RYX1BvcykgICAvKiE8IDB4MDAwMDAwNDAgKi8NCiNkZWZpbmUgVVNCX0VQM1JfRFRPR19UWCAgICAgICAgICAgICAgICAgICAgICBVU0JfRVAzUl9EVE9HX1RYX01zayAgICAgICAgICAgICAvKiE8RGF0YSBUb2dnbGUsIGZvciB0cmFuc21pc3Npb24gdHJhbnNmZXJzICovDQojZGVmaW5lIFVTQl9FUDNSX0NUUl9UWF9Qb3MgICAgICAgICAgICAgICAgICAgKDdVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQl9FUDNSX0NUUl9UWF9Nc2sgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVVNCX0VQM1JfQ1RSX1RYX1BvcykgICAgLyohPCAweDAwMDAwMDgwICovDQojZGVmaW5lIFVTQl9FUDNSX0NUUl9UWCAgICAgICAgICAgICAgICAgICAgICAgVVNCX0VQM1JfQ1RSX1RYX01zayAgICAgICAgICAgICAgLyohPENvcnJlY3QgVHJhbnNmZXIgZm9yIHRyYW5zbWlzc2lvbiAqLw0KI2RlZmluZSBVU0JfRVAzUl9FUF9LSU5EX1BvcyAgICAgICAgICAgICAgICAgICg4VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0JfRVAzUl9FUF9LSU5EX01zayAgICAgICAgICAgICAgICAgICgweDFVIDw8IFVTQl9FUDNSX0VQX0tJTkRfUG9zKSAgIC8qITwgMHgwMDAwMDEwMCAqLw0KI2RlZmluZSBVU0JfRVAzUl9FUF9LSU5EICAgICAgICAgICAgICAgICAgICAgIFVTQl9FUDNSX0VQX0tJTkRfTXNrICAgICAgICAgICAgIC8qITxFbmRwb2ludCBLaW5kICovDQoNCiNkZWZpbmUgVVNCX0VQM1JfRVBfVFlQRV9Qb3MgICAgICAgICAgICAgICAgICAoOVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNCX0VQM1JfRVBfVFlQRV9Nc2sgICAgICAgICAgICAgICAgICAoMHgzVSA8PCBVU0JfRVAzUl9FUF9UWVBFX1BvcykgICAvKiE8IDB4MDAwMDA2MDAgKi8NCiNkZWZpbmUgVVNCX0VQM1JfRVBfVFlQRSAgICAgICAgICAgICAgICAgICAgICBVU0JfRVAzUl9FUF9UWVBFX01zayAgICAgICAgICAgICAvKiE8RVBfVFlQRVsxOjBdIGJpdHMgKEVuZHBvaW50IHR5cGUpICovDQojZGVmaW5lIFVTQl9FUDNSX0VQX1RZUEVfMCAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVVNCX0VQM1JfRVBfVFlQRV9Qb3MpICAgLyohPCAweDAwMDAwMjAwICovDQojZGVmaW5lIFVTQl9FUDNSX0VQX1RZUEVfMSAgICAgICAgICAgICAgICAgICAgKDB4MlUgPDwgVVNCX0VQM1JfRVBfVFlQRV9Qb3MpICAgLyohPCAweDAwMDAwNDAwICovDQoNCiNkZWZpbmUgVVNCX0VQM1JfU0VUVVBfUG9zICAgICAgICAgICAgICAgICAgICAoMTFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNCX0VQM1JfU0VUVVBfTXNrICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBVU0JfRVAzUl9TRVRVUF9Qb3MpICAgICAvKiE8IDB4MDAwMDA4MDAgKi8NCiNkZWZpbmUgVVNCX0VQM1JfU0VUVVAgICAgICAgICAgICAgICAgICAgICAgICBVU0JfRVAzUl9TRVRVUF9Nc2sgICAgICAgICAgICAgICAvKiE8U2V0dXAgdHJhbnNhY3Rpb24gY29tcGxldGVkICovDQoNCiNkZWZpbmUgVVNCX0VQM1JfU1RBVF9SWF9Qb3MgICAgICAgICAgICAgICAgICAoMTJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNCX0VQM1JfU1RBVF9SWF9Nc2sgICAgICAgICAgICAgICAgICAoMHgzVSA8PCBVU0JfRVAzUl9TVEFUX1JYX1BvcykgICAvKiE8IDB4MDAwMDMwMDAgKi8NCiNkZWZpbmUgVVNCX0VQM1JfU1RBVF9SWCAgICAgICAgICAgICAgICAgICAgICBVU0JfRVAzUl9TVEFUX1JYX01zayAgICAgICAgICAgICAvKiE8U1RBVF9SWFsxOjBdIGJpdHMgKFN0YXR1cyBiaXRzLCBmb3IgcmVjZXB0aW9uIHRyYW5zZmVycykgKi8NCiNkZWZpbmUgVVNCX0VQM1JfU1RBVF9SWF8wICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBVU0JfRVAzUl9TVEFUX1JYX1BvcykgICAvKiE8IDB4MDAwMDEwMDAgKi8NCiNkZWZpbmUgVVNCX0VQM1JfU1RBVF9SWF8xICAgICAgICAgICAgICAgICAgICAoMHgyVSA8PCBVU0JfRVAzUl9TVEFUX1JYX1BvcykgICAvKiE8IDB4MDAwMDIwMDAgKi8NCg0KI2RlZmluZSBVU0JfRVAzUl9EVE9HX1JYX1BvcyAgICAgICAgICAgICAgICAgICgxNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0JfRVAzUl9EVE9HX1JYX01zayAgICAgICAgICAgICAgICAgICgweDFVIDw8IFVTQl9FUDNSX0RUT0dfUlhfUG9zKSAgIC8qITwgMHgwMDAwNDAwMCAqLw0KI2RlZmluZSBVU0JfRVAzUl9EVE9HX1JYICAgICAgICAgICAgICAgICAgICAgIFVTQl9FUDNSX0RUT0dfUlhfTXNrICAgICAgICAgICAgIC8qITxEYXRhIFRvZ2dsZSwgZm9yIHJlY2VwdGlvbiB0cmFuc2ZlcnMgKi8NCiNkZWZpbmUgVVNCX0VQM1JfQ1RSX1JYX1BvcyAgICAgICAgICAgICAgICAgICAoMTVVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNCX0VQM1JfQ1RSX1JYX01zayAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBVU0JfRVAzUl9DVFJfUlhfUG9zKSAgICAvKiE8IDB4MDAwMDgwMDAgKi8NCiNkZWZpbmUgVVNCX0VQM1JfQ1RSX1JYICAgICAgICAgICAgICAgICAgICAgICBVU0JfRVAzUl9DVFJfUlhfTXNrICAgICAgICAgICAgICAvKiE8Q29ycmVjdCBUcmFuc2ZlciBmb3IgcmVjZXB0aW9uICovDQoNCi8qKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgVVNCX0VQNFIgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIFVTQl9FUDRSX0VBX1BvcyAgICAgICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQl9FUDRSX0VBX01zayAgICAgICAgICAgICAgICAgICAgICAgKDB4RlUgPDwgVVNCX0VQNFJfRUFfUG9zKSAgICAgICAgLyohPCAweDAwMDAwMDBGICovDQojZGVmaW5lIFVTQl9FUDRSX0VBICAgICAgICAgICAgICAgICAgICAgICAgICAgVVNCX0VQNFJfRUFfTXNrICAgICAgICAgICAgICAgICAgLyohPEVuZHBvaW50IEFkZHJlc3MgKi8NCg0KI2RlZmluZSBVU0JfRVA0Ul9TVEFUX1RYX1BvcyAgICAgICAgICAgICAgICAgICg0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0JfRVA0Ul9TVEFUX1RYX01zayAgICAgICAgICAgICAgICAgICgweDNVIDw8IFVTQl9FUDRSX1NUQVRfVFhfUG9zKSAgIC8qITwgMHgwMDAwMDAzMCAqLw0KI2RlZmluZSBVU0JfRVA0Ul9TVEFUX1RYICAgICAgICAgICAgICAgICAgICAgIFVTQl9FUDRSX1NUQVRfVFhfTXNrICAgICAgICAgICAgIC8qITxTVEFUX1RYWzE6MF0gYml0cyAoU3RhdHVzIGJpdHMsIGZvciB0cmFuc21pc3Npb24gdHJhbnNmZXJzKSAqLw0KI2RlZmluZSBVU0JfRVA0Ul9TVEFUX1RYXzAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFVTQl9FUDRSX1NUQVRfVFhfUG9zKSAgIC8qITwgMHgwMDAwMDAxMCAqLw0KI2RlZmluZSBVU0JfRVA0Ul9TVEFUX1RYXzEgICAgICAgICAgICAgICAgICAgICgweDJVIDw8IFVTQl9FUDRSX1NUQVRfVFhfUG9zKSAgIC8qITwgMHgwMDAwMDAyMCAqLw0KDQojZGVmaW5lIFVTQl9FUDRSX0RUT0dfVFhfUG9zICAgICAgICAgICAgICAgICAgKDZVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQl9FUDRSX0RUT0dfVFhfTXNrICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVVNCX0VQNFJfRFRPR19UWF9Qb3MpICAgLyohPCAweDAwMDAwMDQwICovDQojZGVmaW5lIFVTQl9FUDRSX0RUT0dfVFggICAgICAgICAgICAgICAgICAgICAgVVNCX0VQNFJfRFRPR19UWF9Nc2sgICAgICAgICAgICAgLyohPERhdGEgVG9nZ2xlLCBmb3IgdHJhbnNtaXNzaW9uIHRyYW5zZmVycyAqLw0KI2RlZmluZSBVU0JfRVA0Ul9DVFJfVFhfUG9zICAgICAgICAgICAgICAgICAgICg3VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0JfRVA0Ul9DVFJfVFhfTXNrICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFVTQl9FUDRSX0NUUl9UWF9Qb3MpICAgIC8qITwgMHgwMDAwMDA4MCAqLw0KI2RlZmluZSBVU0JfRVA0Ul9DVFJfVFggICAgICAgICAgICAgICAgICAgICAgIFVTQl9FUDRSX0NUUl9UWF9Nc2sgICAgICAgICAgICAgIC8qITxDb3JyZWN0IFRyYW5zZmVyIGZvciB0cmFuc21pc3Npb24gKi8NCiNkZWZpbmUgVVNCX0VQNFJfRVBfS0lORF9Qb3MgICAgICAgICAgICAgICAgICAoOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNCX0VQNFJfRVBfS0lORF9Nc2sgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBVU0JfRVA0Ul9FUF9LSU5EX1BvcykgICAvKiE8IDB4MDAwMDAxMDAgKi8NCiNkZWZpbmUgVVNCX0VQNFJfRVBfS0lORCAgICAgICAgICAgICAgICAgICAgICBVU0JfRVA0Ul9FUF9LSU5EX01zayAgICAgICAgICAgICAvKiE8RW5kcG9pbnQgS2luZCAqLw0KDQojZGVmaW5lIFVTQl9FUDRSX0VQX1RZUEVfUG9zICAgICAgICAgICAgICAgICAgKDlVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQl9FUDRSX0VQX1RZUEVfTXNrICAgICAgICAgICAgICAgICAgKDB4M1UgPDwgVVNCX0VQNFJfRVBfVFlQRV9Qb3MpICAgLyohPCAweDAwMDAwNjAwICovDQojZGVmaW5lIFVTQl9FUDRSX0VQX1RZUEUgICAgICAgICAgICAgICAgICAgICAgVVNCX0VQNFJfRVBfVFlQRV9Nc2sgICAgICAgICAgICAgLyohPEVQX1RZUEVbMTowXSBiaXRzIChFbmRwb2ludCB0eXBlKSAqLw0KI2RlZmluZSBVU0JfRVA0Ul9FUF9UWVBFXzAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFVTQl9FUDRSX0VQX1RZUEVfUG9zKSAgIC8qITwgMHgwMDAwMDIwMCAqLw0KI2RlZmluZSBVU0JfRVA0Ul9FUF9UWVBFXzEgICAgICAgICAgICAgICAgICAgICgweDJVIDw8IFVTQl9FUDRSX0VQX1RZUEVfUG9zKSAgIC8qITwgMHgwMDAwMDQwMCAqLw0KDQojZGVmaW5lIFVTQl9FUDRSX1NFVFVQX1BvcyAgICAgICAgICAgICAgICAgICAgKDExVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQl9FUDRSX1NFVFVQX01zayAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVVNCX0VQNFJfU0VUVVBfUG9zKSAgICAgLyohPCAweDAwMDAwODAwICovDQojZGVmaW5lIFVTQl9FUDRSX1NFVFVQICAgICAgICAgICAgICAgICAgICAgICAgVVNCX0VQNFJfU0VUVVBfTXNrICAgICAgICAgICAgICAgLyohPFNldHVwIHRyYW5zYWN0aW9uIGNvbXBsZXRlZCAqLw0KDQojZGVmaW5lIFVTQl9FUDRSX1NUQVRfUlhfUG9zICAgICAgICAgICAgICAgICAgKDEyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQl9FUDRSX1NUQVRfUlhfTXNrICAgICAgICAgICAgICAgICAgKDB4M1UgPDwgVVNCX0VQNFJfU1RBVF9SWF9Qb3MpICAgLyohPCAweDAwMDAzMDAwICovDQojZGVmaW5lIFVTQl9FUDRSX1NUQVRfUlggICAgICAgICAgICAgICAgICAgICAgVVNCX0VQNFJfU1RBVF9SWF9Nc2sgICAgICAgICAgICAgLyohPFNUQVRfUlhbMTowXSBiaXRzIChTdGF0dXMgYml0cywgZm9yIHJlY2VwdGlvbiB0cmFuc2ZlcnMpICovDQojZGVmaW5lIFVTQl9FUDRSX1NUQVRfUlhfMCAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVVNCX0VQNFJfU1RBVF9SWF9Qb3MpICAgLyohPCAweDAwMDAxMDAwICovDQojZGVmaW5lIFVTQl9FUDRSX1NUQVRfUlhfMSAgICAgICAgICAgICAgICAgICAgKDB4MlUgPDwgVVNCX0VQNFJfU1RBVF9SWF9Qb3MpICAgLyohPCAweDAwMDAyMDAwICovDQoNCiNkZWZpbmUgVVNCX0VQNFJfRFRPR19SWF9Qb3MgICAgICAgICAgICAgICAgICAoMTRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNCX0VQNFJfRFRPR19SWF9Nc2sgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBVU0JfRVA0Ul9EVE9HX1JYX1BvcykgICAvKiE8IDB4MDAwMDQwMDAgKi8NCiNkZWZpbmUgVVNCX0VQNFJfRFRPR19SWCAgICAgICAgICAgICAgICAgICAgICBVU0JfRVA0Ul9EVE9HX1JYX01zayAgICAgICAgICAgICAvKiE8RGF0YSBUb2dnbGUsIGZvciByZWNlcHRpb24gdHJhbnNmZXJzICovDQojZGVmaW5lIFVTQl9FUDRSX0NUUl9SWF9Qb3MgICAgICAgICAgICAgICAgICAgKDE1VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQl9FUDRSX0NUUl9SWF9Nc2sgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVVNCX0VQNFJfQ1RSX1JYX1BvcykgICAgLyohPCAweDAwMDA4MDAwICovDQojZGVmaW5lIFVTQl9FUDRSX0NUUl9SWCAgICAgICAgICAgICAgICAgICAgICAgVVNCX0VQNFJfQ1RSX1JYX01zayAgICAgICAgICAgICAgLyohPENvcnJlY3QgVHJhbnNmZXIgZm9yIHJlY2VwdGlvbiAqLw0KDQovKioqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFVTQl9FUDVSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBVU0JfRVA1Ul9FQV9Qb3MgICAgICAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0JfRVA1Ul9FQV9Nc2sgICAgICAgICAgICAgICAgICAgICAgICgweEZVIDw8IFVTQl9FUDVSX0VBX1BvcykgICAgICAgIC8qITwgMHgwMDAwMDAwRiAqLw0KI2RlZmluZSBVU0JfRVA1Ul9FQSAgICAgICAgICAgICAgICAgICAgICAgICAgIFVTQl9FUDVSX0VBX01zayAgICAgICAgICAgICAgICAgIC8qITxFbmRwb2ludCBBZGRyZXNzICovDQoNCiNkZWZpbmUgVVNCX0VQNVJfU1RBVF9UWF9Qb3MgICAgICAgICAgICAgICAgICAoNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNCX0VQNVJfU1RBVF9UWF9Nc2sgICAgICAgICAgICAgICAgICAoMHgzVSA8PCBVU0JfRVA1Ul9TVEFUX1RYX1BvcykgICAvKiE8IDB4MDAwMDAwMzAgKi8NCiNkZWZpbmUgVVNCX0VQNVJfU1RBVF9UWCAgICAgICAgICAgICAgICAgICAgICBVU0JfRVA1Ul9TVEFUX1RYX01zayAgICAgICAgICAgICAvKiE8U1RBVF9UWFsxOjBdIGJpdHMgKFN0YXR1cyBiaXRzLCBmb3IgdHJhbnNtaXNzaW9uIHRyYW5zZmVycykgKi8NCiNkZWZpbmUgVVNCX0VQNVJfU1RBVF9UWF8wICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBVU0JfRVA1Ul9TVEFUX1RYX1BvcykgICAvKiE8IDB4MDAwMDAwMTAgKi8NCiNkZWZpbmUgVVNCX0VQNVJfU1RBVF9UWF8xICAgICAgICAgICAgICAgICAgICAoMHgyVSA8PCBVU0JfRVA1Ul9TVEFUX1RYX1BvcykgICAvKiE8IDB4MDAwMDAwMjAgKi8NCg0KI2RlZmluZSBVU0JfRVA1Ul9EVE9HX1RYX1BvcyAgICAgICAgICAgICAgICAgICg2VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0JfRVA1Ul9EVE9HX1RYX01zayAgICAgICAgICAgICAgICAgICgweDFVIDw8IFVTQl9FUDVSX0RUT0dfVFhfUG9zKSAgIC8qITwgMHgwMDAwMDA0MCAqLw0KI2RlZmluZSBVU0JfRVA1Ul9EVE9HX1RYICAgICAgICAgICAgICAgICAgICAgIFVTQl9FUDVSX0RUT0dfVFhfTXNrICAgICAgICAgICAgIC8qITxEYXRhIFRvZ2dsZSwgZm9yIHRyYW5zbWlzc2lvbiB0cmFuc2ZlcnMgKi8NCiNkZWZpbmUgVVNCX0VQNVJfQ1RSX1RYX1BvcyAgICAgICAgICAgICAgICAgICAoN1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNCX0VQNVJfQ1RSX1RYX01zayAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBVU0JfRVA1Ul9DVFJfVFhfUG9zKSAgICAvKiE8IDB4MDAwMDAwODAgKi8NCiNkZWZpbmUgVVNCX0VQNVJfQ1RSX1RYICAgICAgICAgICAgICAgICAgICAgICBVU0JfRVA1Ul9DVFJfVFhfTXNrICAgICAgICAgICAgICAvKiE8Q29ycmVjdCBUcmFuc2ZlciBmb3IgdHJhbnNtaXNzaW9uICovDQojZGVmaW5lIFVTQl9FUDVSX0VQX0tJTkRfUG9zICAgICAgICAgICAgICAgICAgKDhVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQl9FUDVSX0VQX0tJTkRfTXNrICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVVNCX0VQNVJfRVBfS0lORF9Qb3MpICAgLyohPCAweDAwMDAwMTAwICovDQojZGVmaW5lIFVTQl9FUDVSX0VQX0tJTkQgICAgICAgICAgICAgICAgICAgICAgVVNCX0VQNVJfRVBfS0lORF9Nc2sgICAgICAgICAgICAgLyohPEVuZHBvaW50IEtpbmQgKi8NCg0KI2RlZmluZSBVU0JfRVA1Ul9FUF9UWVBFX1BvcyAgICAgICAgICAgICAgICAgICg5VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0JfRVA1Ul9FUF9UWVBFX01zayAgICAgICAgICAgICAgICAgICgweDNVIDw8IFVTQl9FUDVSX0VQX1RZUEVfUG9zKSAgIC8qITwgMHgwMDAwMDYwMCAqLw0KI2RlZmluZSBVU0JfRVA1Ul9FUF9UWVBFICAgICAgICAgICAgICAgICAgICAgIFVTQl9FUDVSX0VQX1RZUEVfTXNrICAgICAgICAgICAgIC8qITxFUF9UWVBFWzE6MF0gYml0cyAoRW5kcG9pbnQgdHlwZSkgKi8NCiNkZWZpbmUgVVNCX0VQNVJfRVBfVFlQRV8wICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBVU0JfRVA1Ul9FUF9UWVBFX1BvcykgICAvKiE8IDB4MDAwMDAyMDAgKi8NCiNkZWZpbmUgVVNCX0VQNVJfRVBfVFlQRV8xICAgICAgICAgICAgICAgICAgICAoMHgyVSA8PCBVU0JfRVA1Ul9FUF9UWVBFX1BvcykgICAvKiE8IDB4MDAwMDA0MDAgKi8NCg0KI2RlZmluZSBVU0JfRVA1Ul9TRVRVUF9Qb3MgICAgICAgICAgICAgICAgICAgICgxMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0JfRVA1Ul9TRVRVUF9Nc2sgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFVTQl9FUDVSX1NFVFVQX1BvcykgICAgIC8qITwgMHgwMDAwMDgwMCAqLw0KI2RlZmluZSBVU0JfRVA1Ul9TRVRVUCAgICAgICAgICAgICAgICAgICAgICAgIFVTQl9FUDVSX1NFVFVQX01zayAgICAgICAgICAgICAgIC8qITxTZXR1cCB0cmFuc2FjdGlvbiBjb21wbGV0ZWQgKi8NCg0KI2RlZmluZSBVU0JfRVA1Ul9TVEFUX1JYX1BvcyAgICAgICAgICAgICAgICAgICgxMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0JfRVA1Ul9TVEFUX1JYX01zayAgICAgICAgICAgICAgICAgICgweDNVIDw8IFVTQl9FUDVSX1NUQVRfUlhfUG9zKSAgIC8qITwgMHgwMDAwMzAwMCAqLw0KI2RlZmluZSBVU0JfRVA1Ul9TVEFUX1JYICAgICAgICAgICAgICAgICAgICAgIFVTQl9FUDVSX1NUQVRfUlhfTXNrICAgICAgICAgICAgIC8qITxTVEFUX1JYWzE6MF0gYml0cyAoU3RhdHVzIGJpdHMsIGZvciByZWNlcHRpb24gdHJhbnNmZXJzKSAqLw0KI2RlZmluZSBVU0JfRVA1Ul9TVEFUX1JYXzAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFVTQl9FUDVSX1NUQVRfUlhfUG9zKSAgIC8qITwgMHgwMDAwMTAwMCAqLw0KI2RlZmluZSBVU0JfRVA1Ul9TVEFUX1JYXzEgICAgICAgICAgICAgICAgICAgICgweDJVIDw8IFVTQl9FUDVSX1NUQVRfUlhfUG9zKSAgIC8qITwgMHgwMDAwMjAwMCAqLw0KDQojZGVmaW5lIFVTQl9FUDVSX0RUT0dfUlhfUG9zICAgICAgICAgICAgICAgICAgKDE0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQl9FUDVSX0RUT0dfUlhfTXNrICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVVNCX0VQNVJfRFRPR19SWF9Qb3MpICAgLyohPCAweDAwMDA0MDAwICovDQojZGVmaW5lIFVTQl9FUDVSX0RUT0dfUlggICAgICAgICAgICAgICAgICAgICAgVVNCX0VQNVJfRFRPR19SWF9Nc2sgICAgICAgICAgICAgLyohPERhdGEgVG9nZ2xlLCBmb3IgcmVjZXB0aW9uIHRyYW5zZmVycyAqLw0KI2RlZmluZSBVU0JfRVA1Ul9DVFJfUlhfUG9zICAgICAgICAgICAgICAgICAgICgxNVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0JfRVA1Ul9DVFJfUlhfTXNrICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFVTQl9FUDVSX0NUUl9SWF9Qb3MpICAgIC8qITwgMHgwMDAwODAwMCAqLw0KI2RlZmluZSBVU0JfRVA1Ul9DVFJfUlggICAgICAgICAgICAgICAgICAgICAgIFVTQl9FUDVSX0NUUl9SWF9Nc2sgICAgICAgICAgICAgIC8qITxDb3JyZWN0IFRyYW5zZmVyIGZvciByZWNlcHRpb24gKi8NCg0KLyoqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBVU0JfRVA2UiByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgVVNCX0VQNlJfRUFfUG9zICAgICAgICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNCX0VQNlJfRUFfTXNrICAgICAgICAgICAgICAgICAgICAgICAoMHhGVSA8PCBVU0JfRVA2Ul9FQV9Qb3MpICAgICAgICAvKiE8IDB4MDAwMDAwMEYgKi8NCiNkZWZpbmUgVVNCX0VQNlJfRUEgICAgICAgICAgICAgICAgICAgICAgICAgICBVU0JfRVA2Ul9FQV9Nc2sgICAgICAgICAgICAgICAgICAvKiE8RW5kcG9pbnQgQWRkcmVzcyAqLw0KDQojZGVmaW5lIFVTQl9FUDZSX1NUQVRfVFhfUG9zICAgICAgICAgICAgICAgICAgKDRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQl9FUDZSX1NUQVRfVFhfTXNrICAgICAgICAgICAgICAgICAgKDB4M1UgPDwgVVNCX0VQNlJfU1RBVF9UWF9Qb3MpICAgLyohPCAweDAwMDAwMDMwICovDQojZGVmaW5lIFVTQl9FUDZSX1NUQVRfVFggICAgICAgICAgICAgICAgICAgICAgVVNCX0VQNlJfU1RBVF9UWF9Nc2sgICAgICAgICAgICAgLyohPFNUQVRfVFhbMTowXSBiaXRzIChTdGF0dXMgYml0cywgZm9yIHRyYW5zbWlzc2lvbiB0cmFuc2ZlcnMpICovDQojZGVmaW5lIFVTQl9FUDZSX1NUQVRfVFhfMCAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVVNCX0VQNlJfU1RBVF9UWF9Qb3MpICAgLyohPCAweDAwMDAwMDEwICovDQojZGVmaW5lIFVTQl9FUDZSX1NUQVRfVFhfMSAgICAgICAgICAgICAgICAgICAgKDB4MlUgPDwgVVNCX0VQNlJfU1RBVF9UWF9Qb3MpICAgLyohPCAweDAwMDAwMDIwICovDQoNCiNkZWZpbmUgVVNCX0VQNlJfRFRPR19UWF9Qb3MgICAgICAgICAgICAgICAgICAoNlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNCX0VQNlJfRFRPR19UWF9Nc2sgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBVU0JfRVA2Ul9EVE9HX1RYX1BvcykgICAvKiE8IDB4MDAwMDAwNDAgKi8NCiNkZWZpbmUgVVNCX0VQNlJfRFRPR19UWCAgICAgICAgICAgICAgICAgICAgICBVU0JfRVA2Ul9EVE9HX1RYX01zayAgICAgICAgICAgICAvKiE8RGF0YSBUb2dnbGUsIGZvciB0cmFuc21pc3Npb24gdHJhbnNmZXJzICovDQojZGVmaW5lIFVTQl9FUDZSX0NUUl9UWF9Qb3MgICAgICAgICAgICAgICAgICAgKDdVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQl9FUDZSX0NUUl9UWF9Nc2sgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVVNCX0VQNlJfQ1RSX1RYX1BvcykgICAgLyohPCAweDAwMDAwMDgwICovDQojZGVmaW5lIFVTQl9FUDZSX0NUUl9UWCAgICAgICAgICAgICAgICAgICAgICAgVVNCX0VQNlJfQ1RSX1RYX01zayAgICAgICAgICAgICAgLyohPENvcnJlY3QgVHJhbnNmZXIgZm9yIHRyYW5zbWlzc2lvbiAqLw0KI2RlZmluZSBVU0JfRVA2Ul9FUF9LSU5EX1BvcyAgICAgICAgICAgICAgICAgICg4VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0JfRVA2Ul9FUF9LSU5EX01zayAgICAgICAgICAgICAgICAgICgweDFVIDw8IFVTQl9FUDZSX0VQX0tJTkRfUG9zKSAgIC8qITwgMHgwMDAwMDEwMCAqLw0KI2RlZmluZSBVU0JfRVA2Ul9FUF9LSU5EICAgICAgICAgICAgICAgICAgICAgIFVTQl9FUDZSX0VQX0tJTkRfTXNrICAgICAgICAgICAgIC8qITxFbmRwb2ludCBLaW5kICovDQoNCiNkZWZpbmUgVVNCX0VQNlJfRVBfVFlQRV9Qb3MgICAgICAgICAgICAgICAgICAoOVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNCX0VQNlJfRVBfVFlQRV9Nc2sgICAgICAgICAgICAgICAgICAoMHgzVSA8PCBVU0JfRVA2Ul9FUF9UWVBFX1BvcykgICAvKiE8IDB4MDAwMDA2MDAgKi8NCiNkZWZpbmUgVVNCX0VQNlJfRVBfVFlQRSAgICAgICAgICAgICAgICAgICAgICBVU0JfRVA2Ul9FUF9UWVBFX01zayAgICAgICAgICAgICAvKiE8RVBfVFlQRVsxOjBdIGJpdHMgKEVuZHBvaW50IHR5cGUpICovDQojZGVmaW5lIFVTQl9FUDZSX0VQX1RZUEVfMCAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVVNCX0VQNlJfRVBfVFlQRV9Qb3MpICAgLyohPCAweDAwMDAwMjAwICovDQojZGVmaW5lIFVTQl9FUDZSX0VQX1RZUEVfMSAgICAgICAgICAgICAgICAgICAgKDB4MlUgPDwgVVNCX0VQNlJfRVBfVFlQRV9Qb3MpICAgLyohPCAweDAwMDAwNDAwICovDQoNCiNkZWZpbmUgVVNCX0VQNlJfU0VUVVBfUG9zICAgICAgICAgICAgICAgICAgICAoMTFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNCX0VQNlJfU0VUVVBfTXNrICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBVU0JfRVA2Ul9TRVRVUF9Qb3MpICAgICAvKiE8IDB4MDAwMDA4MDAgKi8NCiNkZWZpbmUgVVNCX0VQNlJfU0VUVVAgICAgICAgICAgICAgICAgICAgICAgICBVU0JfRVA2Ul9TRVRVUF9Nc2sgICAgICAgICAgICAgICAvKiE8U2V0dXAgdHJhbnNhY3Rpb24gY29tcGxldGVkICovDQoNCiNkZWZpbmUgVVNCX0VQNlJfU1RBVF9SWF9Qb3MgICAgICAgICAgICAgICAgICAoMTJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNCX0VQNlJfU1RBVF9SWF9Nc2sgICAgICAgICAgICAgICAgICAoMHgzVSA8PCBVU0JfRVA2Ul9TVEFUX1JYX1BvcykgICAvKiE8IDB4MDAwMDMwMDAgKi8NCiNkZWZpbmUgVVNCX0VQNlJfU1RBVF9SWCAgICAgICAgICAgICAgICAgICAgICBVU0JfRVA2Ul9TVEFUX1JYX01zayAgICAgICAgICAgICAvKiE8U1RBVF9SWFsxOjBdIGJpdHMgKFN0YXR1cyBiaXRzLCBmb3IgcmVjZXB0aW9uIHRyYW5zZmVycykgKi8NCiNkZWZpbmUgVVNCX0VQNlJfU1RBVF9SWF8wICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBVU0JfRVA2Ul9TVEFUX1JYX1BvcykgICAvKiE8IDB4MDAwMDEwMDAgKi8NCiNkZWZpbmUgVVNCX0VQNlJfU1RBVF9SWF8xICAgICAgICAgICAgICAgICAgICAoMHgyVSA8PCBVU0JfRVA2Ul9TVEFUX1JYX1BvcykgICAvKiE8IDB4MDAwMDIwMDAgKi8NCg0KI2RlZmluZSBVU0JfRVA2Ul9EVE9HX1JYX1BvcyAgICAgICAgICAgICAgICAgICgxNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0JfRVA2Ul9EVE9HX1JYX01zayAgICAgICAgICAgICAgICAgICgweDFVIDw8IFVTQl9FUDZSX0RUT0dfUlhfUG9zKSAgIC8qITwgMHgwMDAwNDAwMCAqLw0KI2RlZmluZSBVU0JfRVA2Ul9EVE9HX1JYICAgICAgICAgICAgICAgICAgICAgIFVTQl9FUDZSX0RUT0dfUlhfTXNrICAgICAgICAgICAgIC8qITxEYXRhIFRvZ2dsZSwgZm9yIHJlY2VwdGlvbiB0cmFuc2ZlcnMgKi8NCiNkZWZpbmUgVVNCX0VQNlJfQ1RSX1JYX1BvcyAgICAgICAgICAgICAgICAgICAoMTVVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNCX0VQNlJfQ1RSX1JYX01zayAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBVU0JfRVA2Ul9DVFJfUlhfUG9zKSAgICAvKiE8IDB4MDAwMDgwMDAgKi8NCiNkZWZpbmUgVVNCX0VQNlJfQ1RSX1JYICAgICAgICAgICAgICAgICAgICAgICBVU0JfRVA2Ul9DVFJfUlhfTXNrICAgICAgICAgICAgICAvKiE8Q29ycmVjdCBUcmFuc2ZlciBmb3IgcmVjZXB0aW9uICovDQoNCi8qKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgVVNCX0VQN1IgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIFVTQl9FUDdSX0VBX1BvcyAgICAgICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQl9FUDdSX0VBX01zayAgICAgICAgICAgICAgICAgICAgICAgKDB4RlUgPDwgVVNCX0VQN1JfRUFfUG9zKSAgICAgICAgLyohPCAweDAwMDAwMDBGICovDQojZGVmaW5lIFVTQl9FUDdSX0VBICAgICAgICAgICAgICAgICAgICAgICAgICAgVVNCX0VQN1JfRUFfTXNrICAgICAgICAgICAgICAgICAgLyohPEVuZHBvaW50IEFkZHJlc3MgKi8NCg0KI2RlZmluZSBVU0JfRVA3Ul9TVEFUX1RYX1BvcyAgICAgICAgICAgICAgICAgICg0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0JfRVA3Ul9TVEFUX1RYX01zayAgICAgICAgICAgICAgICAgICgweDNVIDw8IFVTQl9FUDdSX1NUQVRfVFhfUG9zKSAgIC8qITwgMHgwMDAwMDAzMCAqLw0KI2RlZmluZSBVU0JfRVA3Ul9TVEFUX1RYICAgICAgICAgICAgICAgICAgICAgIFVTQl9FUDdSX1NUQVRfVFhfTXNrICAgICAgICAgICAgIC8qITxTVEFUX1RYWzE6MF0gYml0cyAoU3RhdHVzIGJpdHMsIGZvciB0cmFuc21pc3Npb24gdHJhbnNmZXJzKSAqLw0KI2RlZmluZSBVU0JfRVA3Ul9TVEFUX1RYXzAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFVTQl9FUDdSX1NUQVRfVFhfUG9zKSAgIC8qITwgMHgwMDAwMDAxMCAqLw0KI2RlZmluZSBVU0JfRVA3Ul9TVEFUX1RYXzEgICAgICAgICAgICAgICAgICAgICgweDJVIDw8IFVTQl9FUDdSX1NUQVRfVFhfUG9zKSAgIC8qITwgMHgwMDAwMDAyMCAqLw0KDQojZGVmaW5lIFVTQl9FUDdSX0RUT0dfVFhfUG9zICAgICAgICAgICAgICAgICAgKDZVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQl9FUDdSX0RUT0dfVFhfTXNrICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVVNCX0VQN1JfRFRPR19UWF9Qb3MpICAgLyohPCAweDAwMDAwMDQwICovDQojZGVmaW5lIFVTQl9FUDdSX0RUT0dfVFggICAgICAgICAgICAgICAgICAgICAgVVNCX0VQN1JfRFRPR19UWF9Nc2sgICAgICAgICAgICAgLyohPERhdGEgVG9nZ2xlLCBmb3IgdHJhbnNtaXNzaW9uIHRyYW5zZmVycyAqLw0KI2RlZmluZSBVU0JfRVA3Ul9DVFJfVFhfUG9zICAgICAgICAgICAgICAgICAgICg3VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0JfRVA3Ul9DVFJfVFhfTXNrICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFVTQl9FUDdSX0NUUl9UWF9Qb3MpICAgIC8qITwgMHgwMDAwMDA4MCAqLw0KI2RlZmluZSBVU0JfRVA3Ul9DVFJfVFggICAgICAgICAgICAgICAgICAgICAgIFVTQl9FUDdSX0NUUl9UWF9Nc2sgICAgICAgICAgICAgIC8qITxDb3JyZWN0IFRyYW5zZmVyIGZvciB0cmFuc21pc3Npb24gKi8NCiNkZWZpbmUgVVNCX0VQN1JfRVBfS0lORF9Qb3MgICAgICAgICAgICAgICAgICAoOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNCX0VQN1JfRVBfS0lORF9Nc2sgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBVU0JfRVA3Ul9FUF9LSU5EX1BvcykgICAvKiE8IDB4MDAwMDAxMDAgKi8NCiNkZWZpbmUgVVNCX0VQN1JfRVBfS0lORCAgICAgICAgICAgICAgICAgICAgICBVU0JfRVA3Ul9FUF9LSU5EX01zayAgICAgICAgICAgICAvKiE8RW5kcG9pbnQgS2luZCAqLw0KDQojZGVmaW5lIFVTQl9FUDdSX0VQX1RZUEVfUG9zICAgICAgICAgICAgICAgICAgKDlVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQl9FUDdSX0VQX1RZUEVfTXNrICAgICAgICAgICAgICAgICAgKDB4M1UgPDwgVVNCX0VQN1JfRVBfVFlQRV9Qb3MpICAgLyohPCAweDAwMDAwNjAwICovDQojZGVmaW5lIFVTQl9FUDdSX0VQX1RZUEUgICAgICAgICAgICAgICAgICAgICAgVVNCX0VQN1JfRVBfVFlQRV9Nc2sgICAgICAgICAgICAgLyohPEVQX1RZUEVbMTowXSBiaXRzIChFbmRwb2ludCB0eXBlKSAqLw0KI2RlZmluZSBVU0JfRVA3Ul9FUF9UWVBFXzAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFVTQl9FUDdSX0VQX1RZUEVfUG9zKSAgIC8qITwgMHgwMDAwMDIwMCAqLw0KI2RlZmluZSBVU0JfRVA3Ul9FUF9UWVBFXzEgICAgICAgICAgICAgICAgICAgICgweDJVIDw8IFVTQl9FUDdSX0VQX1RZUEVfUG9zKSAgIC8qITwgMHgwMDAwMDQwMCAqLw0KDQojZGVmaW5lIFVTQl9FUDdSX1NFVFVQX1BvcyAgICAgICAgICAgICAgICAgICAgKDExVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQl9FUDdSX1NFVFVQX01zayAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVVNCX0VQN1JfU0VUVVBfUG9zKSAgICAgLyohPCAweDAwMDAwODAwICovDQojZGVmaW5lIFVTQl9FUDdSX1NFVFVQICAgICAgICAgICAgICAgICAgICAgICAgVVNCX0VQN1JfU0VUVVBfTXNrICAgICAgICAgICAgICAgLyohPFNldHVwIHRyYW5zYWN0aW9uIGNvbXBsZXRlZCAqLw0KDQojZGVmaW5lIFVTQl9FUDdSX1NUQVRfUlhfUG9zICAgICAgICAgICAgICAgICAgKDEyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQl9FUDdSX1NUQVRfUlhfTXNrICAgICAgICAgICAgICAgICAgKDB4M1UgPDwgVVNCX0VQN1JfU1RBVF9SWF9Qb3MpICAgLyohPCAweDAwMDAzMDAwICovDQojZGVmaW5lIFVTQl9FUDdSX1NUQVRfUlggICAgICAgICAgICAgICAgICAgICAgVVNCX0VQN1JfU1RBVF9SWF9Nc2sgICAgICAgICAgICAgLyohPFNUQVRfUlhbMTowXSBiaXRzIChTdGF0dXMgYml0cywgZm9yIHJlY2VwdGlvbiB0cmFuc2ZlcnMpICovDQojZGVmaW5lIFVTQl9FUDdSX1NUQVRfUlhfMCAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVVNCX0VQN1JfU1RBVF9SWF9Qb3MpICAgLyohPCAweDAwMDAxMDAwICovDQojZGVmaW5lIFVTQl9FUDdSX1NUQVRfUlhfMSAgICAgICAgICAgICAgICAgICAgKDB4MlUgPDwgVVNCX0VQN1JfU1RBVF9SWF9Qb3MpICAgLyohPCAweDAwMDAyMDAwICovDQoNCiNkZWZpbmUgVVNCX0VQN1JfRFRPR19SWF9Qb3MgICAgICAgICAgICAgICAgICAoMTRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNCX0VQN1JfRFRPR19SWF9Nc2sgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBVU0JfRVA3Ul9EVE9HX1JYX1BvcykgICAvKiE8IDB4MDAwMDQwMDAgKi8NCiNkZWZpbmUgVVNCX0VQN1JfRFRPR19SWCAgICAgICAgICAgICAgICAgICAgICBVU0JfRVA3Ul9EVE9HX1JYX01zayAgICAgICAgICAgICAvKiE8RGF0YSBUb2dnbGUsIGZvciByZWNlcHRpb24gdHJhbnNmZXJzICovDQojZGVmaW5lIFVTQl9FUDdSX0NUUl9SWF9Qb3MgICAgICAgICAgICAgICAgICAgKDE1VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQl9FUDdSX0NUUl9SWF9Nc2sgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVVNCX0VQN1JfQ1RSX1JYX1BvcykgICAgLyohPCAweDAwMDA4MDAwICovDQojZGVmaW5lIFVTQl9FUDdSX0NUUl9SWCAgICAgICAgICAgICAgICAgICAgICAgVVNCX0VQN1JfQ1RSX1JYX01zayAgICAgICAgICAgICAgLyohPENvcnJlY3QgVHJhbnNmZXIgZm9yIHJlY2VwdGlvbiAqLw0KDQovKiE8Q29tbW9uIHJlZ2lzdGVycyAqLw0KDQojZGVmaW5lICBVU0JfQ05UUiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKFVTQl9CQVNFICsgMHgwMDAwMDA0MFUpICAgICAgICAgIC8qITwgQ29udHJvbCByZWdpc3RlciAqLw0KI2RlZmluZSAgVVNCX0lTVFIgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChVU0JfQkFTRSArIDB4MDAwMDAwNDRVKSAgICAgICAgICAvKiE8IEludGVycnVwdCBzdGF0dXMgcmVnaXN0ZXIgKi8NCiNkZWZpbmUgIFVTQl9GTlIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoVVNCX0JBU0UgKyAweDAwMDAwMDQ4VSkgICAgICAgICAgLyohPCBGcmFtZSBudW1iZXIgcmVnaXN0ZXIgKi8NCiNkZWZpbmUgIFVTQl9EQUREUiAgICAgICAgICAgICAgICAgICAgICAgICAgICAoVVNCX0JBU0UgKyAweDAwMDAwMDRDVSkgICAgICAgICAgLyohPCBEZXZpY2UgYWRkcmVzcyByZWdpc3RlciAqLw0KI2RlZmluZSAgVVNCX0JUQUJMRSAgICAgICAgICAgICAgICAgICAgICAgICAgIChVU0JfQkFTRSArIDB4MDAwMDAwNTBVKSAgICAgICAgICAvKiE8IEJ1ZmZlciBUYWJsZSBhZGRyZXNzIHJlZ2lzdGVyICovDQoNCg0KDQovKioqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFVTQl9DTlRSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBVU0JfQ05UUl9GUkVTX1BvcyAgICAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0JfQ05UUl9GUkVTX01zayAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFVTQl9DTlRSX0ZSRVNfUG9zKSAgICAgIC8qITwgMHgwMDAwMDAwMSAqLw0KI2RlZmluZSBVU0JfQ05UUl9GUkVTICAgICAgICAgICAgICAgICAgICAgICAgIFVTQl9DTlRSX0ZSRVNfTXNrICAgICAgICAgICAgICAgIC8qITxGb3JjZSBVU0IgUmVzZXQgKi8NCiNkZWZpbmUgVVNCX0NOVFJfUERXTl9Qb3MgICAgICAgICAgICAgICAgICAgICAoMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNCX0NOVFJfUERXTl9Nc2sgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBVU0JfQ05UUl9QRFdOX1BvcykgICAgICAvKiE8IDB4MDAwMDAwMDIgKi8NCiNkZWZpbmUgVVNCX0NOVFJfUERXTiAgICAgICAgICAgICAgICAgICAgICAgICBVU0JfQ05UUl9QRFdOX01zayAgICAgICAgICAgICAgICAvKiE8UG93ZXIgZG93biAqLw0KI2RlZmluZSBVU0JfQ05UUl9MUE1PREVfUG9zICAgICAgICAgICAgICAgICAgICgyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0JfQ05UUl9MUE1PREVfTXNrICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFVTQl9DTlRSX0xQTU9ERV9Qb3MpICAgIC8qITwgMHgwMDAwMDAwNCAqLw0KI2RlZmluZSBVU0JfQ05UUl9MUE1PREUgICAgICAgICAgICAgICAgICAgICAgIFVTQl9DTlRSX0xQTU9ERV9Nc2sgICAgICAgICAgICAgIC8qITxMb3ctcG93ZXIgbW9kZSAqLw0KI2RlZmluZSBVU0JfQ05UUl9GU1VTUF9Qb3MgICAgICAgICAgICAgICAgICAgICgzVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0JfQ05UUl9GU1VTUF9Nc2sgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFVTQl9DTlRSX0ZTVVNQX1BvcykgICAgIC8qITwgMHgwMDAwMDAwOCAqLw0KI2RlZmluZSBVU0JfQ05UUl9GU1VTUCAgICAgICAgICAgICAgICAgICAgICAgIFVTQl9DTlRSX0ZTVVNQX01zayAgICAgICAgICAgICAgIC8qITxGb3JjZSBzdXNwZW5kICovDQojZGVmaW5lIFVTQl9DTlRSX1JFU1VNRV9Qb3MgICAgICAgICAgICAgICAgICAgKDRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQl9DTlRSX1JFU1VNRV9Nc2sgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVVNCX0NOVFJfUkVTVU1FX1BvcykgICAgLyohPCAweDAwMDAwMDEwICovDQojZGVmaW5lIFVTQl9DTlRSX1JFU1VNRSAgICAgICAgICAgICAgICAgICAgICAgVVNCX0NOVFJfUkVTVU1FX01zayAgICAgICAgICAgICAgLyohPFJlc3VtZSByZXF1ZXN0ICovDQojZGVmaW5lIFVTQl9DTlRSX0VTT0ZNX1BvcyAgICAgICAgICAgICAgICAgICAgKDhVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQl9DTlRSX0VTT0ZNX01zayAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVVNCX0NOVFJfRVNPRk1fUG9zKSAgICAgLyohPCAweDAwMDAwMTAwICovDQojZGVmaW5lIFVTQl9DTlRSX0VTT0ZNICAgICAgICAgICAgICAgICAgICAgICAgVVNCX0NOVFJfRVNPRk1fTXNrICAgICAgICAgICAgICAgLyohPEV4cGVjdGVkIFN0YXJ0IE9mIEZyYW1lIEludGVycnVwdCBNYXNrICovDQojZGVmaW5lIFVTQl9DTlRSX1NPRk1fUG9zICAgICAgICAgICAgICAgICAgICAgKDlVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQl9DTlRSX1NPRk1fTXNrICAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVVNCX0NOVFJfU09GTV9Qb3MpICAgICAgLyohPCAweDAwMDAwMjAwICovDQojZGVmaW5lIFVTQl9DTlRSX1NPRk0gICAgICAgICAgICAgICAgICAgICAgICAgVVNCX0NOVFJfU09GTV9Nc2sgICAgICAgICAgICAgICAgLyohPFN0YXJ0IE9mIEZyYW1lIEludGVycnVwdCBNYXNrICovDQojZGVmaW5lIFVTQl9DTlRSX1JFU0VUTV9Qb3MgICAgICAgICAgICAgICAgICAgKDEwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQl9DTlRSX1JFU0VUTV9Nc2sgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVVNCX0NOVFJfUkVTRVRNX1BvcykgICAgLyohPCAweDAwMDAwNDAwICovDQojZGVmaW5lIFVTQl9DTlRSX1JFU0VUTSAgICAgICAgICAgICAgICAgICAgICAgVVNCX0NOVFJfUkVTRVRNX01zayAgICAgICAgICAgICAgLyohPFJFU0VUIEludGVycnVwdCBNYXNrICovDQojZGVmaW5lIFVTQl9DTlRSX1NVU1BNX1BvcyAgICAgICAgICAgICAgICAgICAgKDExVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQl9DTlRSX1NVU1BNX01zayAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVVNCX0NOVFJfU1VTUE1fUG9zKSAgICAgLyohPCAweDAwMDAwODAwICovDQojZGVmaW5lIFVTQl9DTlRSX1NVU1BNICAgICAgICAgICAgICAgICAgICAgICAgVVNCX0NOVFJfU1VTUE1fTXNrICAgICAgICAgICAgICAgLyohPFN1c3BlbmQgbW9kZSBJbnRlcnJ1cHQgTWFzayAqLw0KI2RlZmluZSBVU0JfQ05UUl9XS1VQTV9Qb3MgICAgICAgICAgICAgICAgICAgICgxMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0JfQ05UUl9XS1VQTV9Nc2sgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFVTQl9DTlRSX1dLVVBNX1BvcykgICAgIC8qITwgMHgwMDAwMTAwMCAqLw0KI2RlZmluZSBVU0JfQ05UUl9XS1VQTSAgICAgICAgICAgICAgICAgICAgICAgIFVTQl9DTlRSX1dLVVBNX01zayAgICAgICAgICAgICAgIC8qITxXYWtldXAgSW50ZXJydXB0IE1hc2sgKi8NCiNkZWZpbmUgVVNCX0NOVFJfRVJSTV9Qb3MgICAgICAgICAgICAgICAgICAgICAoMTNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNCX0NOVFJfRVJSTV9Nc2sgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBVU0JfQ05UUl9FUlJNX1BvcykgICAgICAvKiE8IDB4MDAwMDIwMDAgKi8NCiNkZWZpbmUgVVNCX0NOVFJfRVJSTSAgICAgICAgICAgICAgICAgICAgICAgICBVU0JfQ05UUl9FUlJNX01zayAgICAgICAgICAgICAgICAvKiE8RXJyb3IgSW50ZXJydXB0IE1hc2sgKi8NCiNkZWZpbmUgVVNCX0NOVFJfUE1BT1ZSTV9Qb3MgICAgICAgICAgICAgICAgICAoMTRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNCX0NOVFJfUE1BT1ZSTV9Nc2sgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBVU0JfQ05UUl9QTUFPVlJNX1BvcykgICAvKiE8IDB4MDAwMDQwMDAgKi8NCiNkZWZpbmUgVVNCX0NOVFJfUE1BT1ZSTSAgICAgICAgICAgICAgICAgICAgICBVU0JfQ05UUl9QTUFPVlJNX01zayAgICAgICAgICAgICAvKiE8UGFja2V0IE1lbW9yeSBBcmVhIE92ZXIgLyBVbmRlcnJ1biBJbnRlcnJ1cHQgTWFzayAqLw0KI2RlZmluZSBVU0JfQ05UUl9DVFJNX1BvcyAgICAgICAgICAgICAgICAgICAgICgxNVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0JfQ05UUl9DVFJNX01zayAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFVTQl9DTlRSX0NUUk1fUG9zKSAgICAgIC8qITwgMHgwMDAwODAwMCAqLw0KI2RlZmluZSBVU0JfQ05UUl9DVFJNICAgICAgICAgICAgICAgICAgICAgICAgIFVTQl9DTlRSX0NUUk1fTXNrICAgICAgICAgICAgICAgIC8qITxDb3JyZWN0IFRyYW5zZmVyIEludGVycnVwdCBNYXNrICovDQoNCi8qKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgVVNCX0lTVFIgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIFVTQl9JU1RSX0VQX0lEX1BvcyAgICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQl9JU1RSX0VQX0lEX01zayAgICAgICAgICAgICAgICAgICAgKDB4RlUgPDwgVVNCX0lTVFJfRVBfSURfUG9zKSAgICAgLyohPCAweDAwMDAwMDBGICovDQojZGVmaW5lIFVTQl9JU1RSX0VQX0lEICAgICAgICAgICAgICAgICAgICAgICAgVVNCX0lTVFJfRVBfSURfTXNrICAgICAgICAgICAgICAgLyohPEVuZHBvaW50IElkZW50aWZpZXIgKi8NCiNkZWZpbmUgVVNCX0lTVFJfRElSX1BvcyAgICAgICAgICAgICAgICAgICAgICAoNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNCX0lTVFJfRElSX01zayAgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBVU0JfSVNUUl9ESVJfUG9zKSAgICAgICAvKiE8IDB4MDAwMDAwMTAgKi8NCiNkZWZpbmUgVVNCX0lTVFJfRElSICAgICAgICAgICAgICAgICAgICAgICAgICBVU0JfSVNUUl9ESVJfTXNrICAgICAgICAgICAgICAgICAvKiE8RGlyZWN0aW9uIG9mIHRyYW5zYWN0aW9uICovDQojZGVmaW5lIFVTQl9JU1RSX0VTT0ZfUG9zICAgICAgICAgICAgICAgICAgICAgKDhVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQl9JU1RSX0VTT0ZfTXNrICAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVVNCX0lTVFJfRVNPRl9Qb3MpICAgICAgLyohPCAweDAwMDAwMTAwICovDQojZGVmaW5lIFVTQl9JU1RSX0VTT0YgICAgICAgICAgICAgICAgICAgICAgICAgVVNCX0lTVFJfRVNPRl9Nc2sgICAgICAgICAgICAgICAgLyohPEV4cGVjdGVkIFN0YXJ0IE9mIEZyYW1lICovDQojZGVmaW5lIFVTQl9JU1RSX1NPRl9Qb3MgICAgICAgICAgICAgICAgICAgICAgKDlVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQl9JU1RSX1NPRl9Nc2sgICAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVVNCX0lTVFJfU09GX1BvcykgICAgICAgLyohPCAweDAwMDAwMjAwICovDQojZGVmaW5lIFVTQl9JU1RSX1NPRiAgICAgICAgICAgICAgICAgICAgICAgICAgVVNCX0lTVFJfU09GX01zayAgICAgICAgICAgICAgICAgLyohPFN0YXJ0IE9mIEZyYW1lICovDQojZGVmaW5lIFVTQl9JU1RSX1JFU0VUX1BvcyAgICAgICAgICAgICAgICAgICAgKDEwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQl9JU1RSX1JFU0VUX01zayAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVVNCX0lTVFJfUkVTRVRfUG9zKSAgICAgLyohPCAweDAwMDAwNDAwICovDQojZGVmaW5lIFVTQl9JU1RSX1JFU0VUICAgICAgICAgICAgICAgICAgICAgICAgVVNCX0lTVFJfUkVTRVRfTXNrICAgICAgICAgICAgICAgLyohPFVTQiBSRVNFVCByZXF1ZXN0ICovDQojZGVmaW5lIFVTQl9JU1RSX1NVU1BfUG9zICAgICAgICAgICAgICAgICAgICAgKDExVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQl9JU1RSX1NVU1BfTXNrICAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVVNCX0lTVFJfU1VTUF9Qb3MpICAgICAgLyohPCAweDAwMDAwODAwICovDQojZGVmaW5lIFVTQl9JU1RSX1NVU1AgICAgICAgICAgICAgICAgICAgICAgICAgVVNCX0lTVFJfU1VTUF9Nc2sgICAgICAgICAgICAgICAgLyohPFN1c3BlbmQgbW9kZSByZXF1ZXN0ICovDQojZGVmaW5lIFVTQl9JU1RSX1dLVVBfUG9zICAgICAgICAgICAgICAgICAgICAgKDEyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQl9JU1RSX1dLVVBfTXNrICAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVVNCX0lTVFJfV0tVUF9Qb3MpICAgICAgLyohPCAweDAwMDAxMDAwICovDQojZGVmaW5lIFVTQl9JU1RSX1dLVVAgICAgICAgICAgICAgICAgICAgICAgICAgVVNCX0lTVFJfV0tVUF9Nc2sgICAgICAgICAgICAgICAgLyohPFdha2UgdXAgKi8NCiNkZWZpbmUgVVNCX0lTVFJfRVJSX1BvcyAgICAgICAgICAgICAgICAgICAgICAoMTNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNCX0lTVFJfRVJSX01zayAgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBVU0JfSVNUUl9FUlJfUG9zKSAgICAgICAvKiE8IDB4MDAwMDIwMDAgKi8NCiNkZWZpbmUgVVNCX0lTVFJfRVJSICAgICAgICAgICAgICAgICAgICAgICAgICBVU0JfSVNUUl9FUlJfTXNrICAgICAgICAgICAgICAgICAvKiE8RXJyb3IgKi8NCiNkZWZpbmUgVVNCX0lTVFJfUE1BT1ZSX1BvcyAgICAgICAgICAgICAgICAgICAoMTRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNCX0lTVFJfUE1BT1ZSX01zayAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBVU0JfSVNUUl9QTUFPVlJfUG9zKSAgICAvKiE8IDB4MDAwMDQwMDAgKi8NCiNkZWZpbmUgVVNCX0lTVFJfUE1BT1ZSICAgICAgICAgICAgICAgICAgICAgICBVU0JfSVNUUl9QTUFPVlJfTXNrICAgICAgICAgICAgICAvKiE8UGFja2V0IE1lbW9yeSBBcmVhIE92ZXIgLyBVbmRlcnJ1biAqLw0KI2RlZmluZSBVU0JfSVNUUl9DVFJfUG9zICAgICAgICAgICAgICAgICAgICAgICgxNVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0JfSVNUUl9DVFJfTXNrICAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFVTQl9JU1RSX0NUUl9Qb3MpICAgICAgIC8qITwgMHgwMDAwODAwMCAqLw0KI2RlZmluZSBVU0JfSVNUUl9DVFIgICAgICAgICAgICAgICAgICAgICAgICAgIFVTQl9JU1RSX0NUUl9Nc2sgICAgICAgICAgICAgICAgIC8qITxDb3JyZWN0IFRyYW5zZmVyICovDQoNCiNkZWZpbmUgIFVTQl9DTFJfQ1RSICAgICAgICAgICAgICAgICAgICAgICAgICAoflVTQl9JU1RSX0NUUikgICAgICAgICAgICAgICAgICAvKiE8IGNsZWFyIENvcnJlY3QgVFJhbnNmZXIgYml0ICovDQojZGVmaW5lICBVU0JfQ0xSX1BNQU9WUk0gICAgICAgICAgICAgICAgICAgICAgKH5VU0JfSVNUUl9QTUFPVlIpICAgICAgICAgICAgICAgLyohPCBjbGVhciBETUEgT1ZlUi91bmRlcnJ1biBiaXQqLw0KI2RlZmluZSAgVVNCX0NMUl9FUlIgICAgICAgICAgICAgICAgICAgICAgICAgICh+VVNCX0lTVFJfRVJSKSAgICAgICAgICAgICAgICAgIC8qITwgY2xlYXIgRVJSb3IgYml0ICovDQojZGVmaW5lICBVU0JfQ0xSX1dLVVAgICAgICAgICAgICAgICAgICAgICAgICAgKH5VU0JfSVNUUl9XS1VQKSAgICAgICAgICAgICAgICAgLyohPCBjbGVhciBXYUtlIFVQIGJpdCAqLw0KI2RlZmluZSAgVVNCX0NMUl9TVVNQICAgICAgICAgICAgICAgICAgICAgICAgICh+VVNCX0lTVFJfU1VTUCkgICAgICAgICAgICAgICAgIC8qITwgY2xlYXIgU1VTUGVuZCBiaXQgKi8NCiNkZWZpbmUgIFVTQl9DTFJfUkVTRVQgICAgICAgICAgICAgICAgICAgICAgICAoflVTQl9JU1RSX1JFU0VUKSAgICAgICAgICAgICAgICAvKiE8IGNsZWFyIFJFU0VUIGJpdCAqLw0KI2RlZmluZSAgVVNCX0NMUl9TT0YgICAgICAgICAgICAgICAgICAgICAgICAgICh+VVNCX0lTVFJfU09GKSAgICAgICAgICAgICAgICAgIC8qITwgY2xlYXIgU3RhcnQgT2YgRnJhbWUgYml0ICovDQojZGVmaW5lICBVU0JfQ0xSX0VTT0YgICAgICAgICAgICAgICAgICAgICAgICAgKH5VU0JfSVNUUl9FU09GKSAgICAgICAgICAgICAgICAgLyohPCBjbGVhciBFeHBlY3RlZCBTdGFydCBPZiBGcmFtZSBiaXQgKi8NCg0KDQovKioqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFVTQl9GTlIgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBVU0JfRk5SX0ZOX1BvcyAgICAgICAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0JfRk5SX0ZOX01zayAgICAgICAgICAgICAgICAgICAgICAgICgweDdGRlUgPDwgVVNCX0ZOUl9GTl9Qb3MpICAgICAgIC8qITwgMHgwMDAwMDdGRiAqLw0KI2RlZmluZSBVU0JfRk5SX0ZOICAgICAgICAgICAgICAgICAgICAgICAgICAgIFVTQl9GTlJfRk5fTXNrICAgICAgICAgICAgICAgICAgIC8qITxGcmFtZSBOdW1iZXIgKi8NCiNkZWZpbmUgVVNCX0ZOUl9MU09GX1BvcyAgICAgICAgICAgICAgICAgICAgICAoMTFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNCX0ZOUl9MU09GX01zayAgICAgICAgICAgICAgICAgICAgICAoMHgzVSA8PCBVU0JfRk5SX0xTT0ZfUG9zKSAgICAgICAvKiE8IDB4MDAwMDE4MDAgKi8NCiNkZWZpbmUgVVNCX0ZOUl9MU09GICAgICAgICAgICAgICAgICAgICAgICAgICBVU0JfRk5SX0xTT0ZfTXNrICAgICAgICAgICAgICAgICAvKiE8TG9zdCBTT0YgKi8NCiNkZWZpbmUgVVNCX0ZOUl9MQ0tfUG9zICAgICAgICAgICAgICAgICAgICAgICAoMTNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNCX0ZOUl9MQ0tfTXNrICAgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBVU0JfRk5SX0xDS19Qb3MpICAgICAgICAvKiE8IDB4MDAwMDIwMDAgKi8NCiNkZWZpbmUgVVNCX0ZOUl9MQ0sgICAgICAgICAgICAgICAgICAgICAgICAgICBVU0JfRk5SX0xDS19Nc2sgICAgICAgICAgICAgICAgICAvKiE8TG9ja2VkICovDQojZGVmaW5lIFVTQl9GTlJfUlhETV9Qb3MgICAgICAgICAgICAgICAgICAgICAgKDE0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQl9GTlJfUlhETV9Nc2sgICAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVVNCX0ZOUl9SWERNX1BvcykgICAgICAgLyohPCAweDAwMDA0MDAwICovDQojZGVmaW5lIFVTQl9GTlJfUlhETSAgICAgICAgICAgICAgICAgICAgICAgICAgVVNCX0ZOUl9SWERNX01zayAgICAgICAgICAgICAgICAgLyohPFJlY2VpdmUgRGF0YSAtIExpbmUgU3RhdHVzICovDQojZGVmaW5lIFVTQl9GTlJfUlhEUF9Qb3MgICAgICAgICAgICAgICAgICAgICAgKDE1VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQl9GTlJfUlhEUF9Nc2sgICAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVVNCX0ZOUl9SWERQX1BvcykgICAgICAgLyohPCAweDAwMDA4MDAwICovDQojZGVmaW5lIFVTQl9GTlJfUlhEUCAgICAgICAgICAgICAgICAgICAgICAgICAgVVNCX0ZOUl9SWERQX01zayAgICAgICAgICAgICAgICAgLyohPFJlY2VpdmUgRGF0YSArIExpbmUgU3RhdHVzICovDQoNCi8qKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBVU0JfREFERFIgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIFVTQl9EQUREUl9BRERfUG9zICAgICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQl9EQUREUl9BRERfTXNrICAgICAgICAgICAgICAgICAgICAgKDB4N0ZVIDw8IFVTQl9EQUREUl9BRERfUG9zKSAgICAgLyohPCAweDAwMDAwMDdGICovDQojZGVmaW5lIFVTQl9EQUREUl9BREQgICAgICAgICAgICAgICAgICAgICAgICAgVVNCX0RBRERSX0FERF9Nc2sgICAgICAgICAgICAgICAgLyohPEFERFs2OjBdIGJpdHMgKERldmljZSBBZGRyZXNzKSAqLw0KI2RlZmluZSBVU0JfREFERFJfQUREMF9Qb3MgICAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0JfREFERFJfQUREMF9Nc2sgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFVTQl9EQUREUl9BREQwX1BvcykgICAgIC8qITwgMHgwMDAwMDAwMSAqLw0KI2RlZmluZSBVU0JfREFERFJfQUREMCAgICAgICAgICAgICAgICAgICAgICAgIFVTQl9EQUREUl9BREQwX01zayAgICAgICAgICAgICAgIC8qITxCaXQgMCAqLw0KI2RlZmluZSBVU0JfREFERFJfQUREMV9Qb3MgICAgICAgICAgICAgICAgICAgICgxVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0JfREFERFJfQUREMV9Nc2sgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFVTQl9EQUREUl9BREQxX1BvcykgICAgIC8qITwgMHgwMDAwMDAwMiAqLw0KI2RlZmluZSBVU0JfREFERFJfQUREMSAgICAgICAgICAgICAgICAgICAgICAgIFVTQl9EQUREUl9BREQxX01zayAgICAgICAgICAgICAgIC8qITxCaXQgMSAqLw0KI2RlZmluZSBVU0JfREFERFJfQUREMl9Qb3MgICAgICAgICAgICAgICAgICAgICgyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0JfREFERFJfQUREMl9Nc2sgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFVTQl9EQUREUl9BREQyX1BvcykgICAgIC8qITwgMHgwMDAwMDAwNCAqLw0KI2RlZmluZSBVU0JfREFERFJfQUREMiAgICAgICAgICAgICAgICAgICAgICAgIFVTQl9EQUREUl9BREQyX01zayAgICAgICAgICAgICAgIC8qITxCaXQgMiAqLw0KI2RlZmluZSBVU0JfREFERFJfQUREM19Qb3MgICAgICAgICAgICAgICAgICAgICgzVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0JfREFERFJfQUREM19Nc2sgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFVTQl9EQUREUl9BREQzX1BvcykgICAgIC8qITwgMHgwMDAwMDAwOCAqLw0KI2RlZmluZSBVU0JfREFERFJfQUREMyAgICAgICAgICAgICAgICAgICAgICAgIFVTQl9EQUREUl9BREQzX01zayAgICAgICAgICAgICAgIC8qITxCaXQgMyAqLw0KI2RlZmluZSBVU0JfREFERFJfQURENF9Qb3MgICAgICAgICAgICAgICAgICAgICg0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0JfREFERFJfQURENF9Nc2sgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFVTQl9EQUREUl9BREQ0X1BvcykgICAgIC8qITwgMHgwMDAwMDAxMCAqLw0KI2RlZmluZSBVU0JfREFERFJfQURENCAgICAgICAgICAgICAgICAgICAgICAgIFVTQl9EQUREUl9BREQ0X01zayAgICAgICAgICAgICAgIC8qITxCaXQgNCAqLw0KI2RlZmluZSBVU0JfREFERFJfQURENV9Qb3MgICAgICAgICAgICAgICAgICAgICg1VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0JfREFERFJfQURENV9Nc2sgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFVTQl9EQUREUl9BREQ1X1BvcykgICAgIC8qITwgMHgwMDAwMDAyMCAqLw0KI2RlZmluZSBVU0JfREFERFJfQURENSAgICAgICAgICAgICAgICAgICAgICAgIFVTQl9EQUREUl9BREQ1X01zayAgICAgICAgICAgICAgIC8qITxCaXQgNSAqLw0KI2RlZmluZSBVU0JfREFERFJfQURENl9Qb3MgICAgICAgICAgICAgICAgICAgICg2VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0JfREFERFJfQURENl9Nc2sgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFVTQl9EQUREUl9BREQ2X1BvcykgICAgIC8qITwgMHgwMDAwMDA0MCAqLw0KI2RlZmluZSBVU0JfREFERFJfQURENiAgICAgICAgICAgICAgICAgICAgICAgIFVTQl9EQUREUl9BREQ2X01zayAgICAgICAgICAgICAgIC8qITxCaXQgNiAqLw0KDQojZGVmaW5lIFVTQl9EQUREUl9FRl9Qb3MgICAgICAgICAgICAgICAgICAgICAgKDdVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQl9EQUREUl9FRl9Nc2sgICAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVVNCX0RBRERSX0VGX1BvcykgICAgICAgLyohPCAweDAwMDAwMDgwICovDQojZGVmaW5lIFVTQl9EQUREUl9FRiAgICAgICAgICAgICAgICAgICAgICAgICAgVVNCX0RBRERSX0VGX01zayAgICAgICAgICAgICAgICAgLyohPEVuYWJsZSBGdW5jdGlvbiAqLw0KDQovKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgVVNCX0JUQUJMRSByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqLyAgICANCiNkZWZpbmUgVVNCX0JUQUJMRV9CVEFCTEVfUG9zICAgICAgICAgICAgICAgICAoM1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNCX0JUQUJMRV9CVEFCTEVfTXNrICAgICAgICAgICAgICAgICAoMHgxRkZGVSA8PCBVU0JfQlRBQkxFX0JUQUJMRV9Qb3MpIC8qITwgMHgwMDAwRkZGOCAqLw0KI2RlZmluZSBVU0JfQlRBQkxFX0JUQUJMRSAgICAgICAgICAgICAgICAgICAgIFVTQl9CVEFCTEVfQlRBQkxFX01zayAgICAgICAgICAgIC8qITxCdWZmZXIgVGFibGUgKi8NCg0KLyohPCBCdWZmZXIgZGVzY3JpcHRvciB0YWJsZSAqLw0KLyoqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgVVNCX0FERFIwX1RYIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgVVNCX0FERFIwX1RYX0FERFIwX1RYX1BvcyAgICAgICAgICAgICAoMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNCX0FERFIwX1RYX0FERFIwX1RYX01zayAgICAgICAgICAgICAoMHg3RkZGVSA8PCBVU0JfQUREUjBfVFhfQUREUjBfVFhfUG9zKSAvKiE8IDB4MDAwMEZGRkUgKi8NCiNkZWZpbmUgVVNCX0FERFIwX1RYX0FERFIwX1RYICAgICAgICAgICAgICAgICBVU0JfQUREUjBfVFhfQUREUjBfVFhfTXNrICAgICAgICAvKiE8IFRyYW5zbWlzc2lvbiBCdWZmZXIgQWRkcmVzcyAwICovDQoNCi8qKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFVTQl9BRERSMV9UWCByZWdpc3RlciAgKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIFVTQl9BRERSMV9UWF9BRERSMV9UWF9Qb3MgICAgICAgICAgICAgKDFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQl9BRERSMV9UWF9BRERSMV9UWF9Nc2sgICAgICAgICAgICAgKDB4N0ZGRlUgPDwgVVNCX0FERFIxX1RYX0FERFIxX1RYX1BvcykgLyohPCAweDAwMDBGRkZFICovDQojZGVmaW5lIFVTQl9BRERSMV9UWF9BRERSMV9UWCAgICAgICAgICAgICAgICAgVVNCX0FERFIxX1RYX0FERFIxX1RYX01zayAgICAgICAgLyohPCBUcmFuc21pc3Npb24gQnVmZmVyIEFkZHJlc3MgMSAqLw0KDQovKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBVU0JfQUREUjJfVFggcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBVU0JfQUREUjJfVFhfQUREUjJfVFhfUG9zICAgICAgICAgICAgICgxVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0JfQUREUjJfVFhfQUREUjJfVFhfTXNrICAgICAgICAgICAgICgweDdGRkZVIDw8IFVTQl9BRERSMl9UWF9BRERSMl9UWF9Qb3MpIC8qITwgMHgwMDAwRkZGRSAqLw0KI2RlZmluZSBVU0JfQUREUjJfVFhfQUREUjJfVFggICAgICAgICAgICAgICAgIFVTQl9BRERSMl9UWF9BRERSMl9UWF9Nc2sgICAgICAgIC8qITwgVHJhbnNtaXNzaW9uIEJ1ZmZlciBBZGRyZXNzIDIgKi8NCg0KLyoqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgVVNCX0FERFIzX1RYIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgVVNCX0FERFIzX1RYX0FERFIzX1RYX1BvcyAgICAgICAgICAgICAoMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNCX0FERFIzX1RYX0FERFIzX1RYX01zayAgICAgICAgICAgICAoMHg3RkZGVSA8PCBVU0JfQUREUjNfVFhfQUREUjNfVFhfUG9zKSAvKiE8IDB4MDAwMEZGRkUgKi8NCiNkZWZpbmUgVVNCX0FERFIzX1RYX0FERFIzX1RYICAgICAgICAgICAgICAgICBVU0JfQUREUjNfVFhfQUREUjNfVFhfTXNrICAgICAgICAvKiE8IFRyYW5zbWlzc2lvbiBCdWZmZXIgQWRkcmVzcyAzICovDQoNCi8qKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFVTQl9BRERSNF9UWCByZWdpc3RlciAgKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIFVTQl9BRERSNF9UWF9BRERSNF9UWF9Qb3MgICAgICAgICAgICAgKDFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQl9BRERSNF9UWF9BRERSNF9UWF9Nc2sgICAgICAgICAgICAgKDB4N0ZGRlUgPDwgVVNCX0FERFI0X1RYX0FERFI0X1RYX1BvcykgLyohPCAweDAwMDBGRkZFICovDQojZGVmaW5lIFVTQl9BRERSNF9UWF9BRERSNF9UWCAgICAgICAgICAgICAgICAgVVNCX0FERFI0X1RYX0FERFI0X1RYX01zayAgICAgICAgLyohPCBUcmFuc21pc3Npb24gQnVmZmVyIEFkZHJlc3MgNCAqLw0KDQovKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBVU0JfQUREUjVfVFggcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBVU0JfQUREUjVfVFhfQUREUjVfVFhfUG9zICAgICAgICAgICAgICgxVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0JfQUREUjVfVFhfQUREUjVfVFhfTXNrICAgICAgICAgICAgICgweDdGRkZVIDw8IFVTQl9BRERSNV9UWF9BRERSNV9UWF9Qb3MpIC8qITwgMHgwMDAwRkZGRSAqLw0KI2RlZmluZSBVU0JfQUREUjVfVFhfQUREUjVfVFggICAgICAgICAgICAgICAgIFVTQl9BRERSNV9UWF9BRERSNV9UWF9Nc2sgICAgICAgIC8qITwgVHJhbnNtaXNzaW9uIEJ1ZmZlciBBZGRyZXNzIDUgKi8NCg0KLyoqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgVVNCX0FERFI2X1RYIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgVVNCX0FERFI2X1RYX0FERFI2X1RYX1BvcyAgICAgICAgICAgICAoMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNCX0FERFI2X1RYX0FERFI2X1RYX01zayAgICAgICAgICAgICAoMHg3RkZGVSA8PCBVU0JfQUREUjZfVFhfQUREUjZfVFhfUG9zKSAvKiE8IDB4MDAwMEZGRkUgKi8NCiNkZWZpbmUgVVNCX0FERFI2X1RYX0FERFI2X1RYICAgICAgICAgICAgICAgICBVU0JfQUREUjZfVFhfQUREUjZfVFhfTXNrICAgICAgICAvKiE8IFRyYW5zbWlzc2lvbiBCdWZmZXIgQWRkcmVzcyA2ICovDQoNCi8qKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFVTQl9BRERSN19UWCByZWdpc3RlciAgKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIFVTQl9BRERSN19UWF9BRERSN19UWF9Qb3MgICAgICAgICAgICAgKDFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQl9BRERSN19UWF9BRERSN19UWF9Nc2sgICAgICAgICAgICAgKDB4N0ZGRlUgPDwgVVNCX0FERFI3X1RYX0FERFI3X1RYX1BvcykgLyohPCAweDAwMDBGRkZFICovDQojZGVmaW5lIFVTQl9BRERSN19UWF9BRERSN19UWCAgICAgICAgICAgICAgICAgVVNCX0FERFI3X1RYX0FERFI3X1RYX01zayAgICAgICAgLyohPCBUcmFuc21pc3Npb24gQnVmZmVyIEFkZHJlc3MgNyAqLw0KDQovKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qLw0KDQovKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBVU0JfQ09VTlQwX1RYIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBVU0JfQ09VTlQwX1RYX0NPVU5UMF9UWF9Qb3MgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0JfQ09VTlQwX1RYX0NPVU5UMF9UWF9Nc2sgICAgICAgICAgICgweDNGRlUgPDwgVVNCX0NPVU5UMF9UWF9DT1VOVDBfVFhfUG9zKSAvKiE8IDB4MDAwMDAzRkYgKi8NCiNkZWZpbmUgVVNCX0NPVU5UMF9UWF9DT1VOVDBfVFggICAgICAgICAgICAgICBVU0JfQ09VTlQwX1RYX0NPVU5UMF9UWF9Nc2sgICAgICAvKiE8IFRyYW5zbWlzc2lvbiBCeXRlIENvdW50IDAgKi8NCg0KLyoqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgVVNCX0NPVU5UMV9UWCByZWdpc3RlciAgKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgVVNCX0NPVU5UMV9UWF9DT1VOVDFfVFhfUG9zICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNCX0NPVU5UMV9UWF9DT1VOVDFfVFhfTXNrICAgICAgICAgICAoMHgzRkZVIDw8IFVTQl9DT1VOVDFfVFhfQ09VTlQxX1RYX1BvcykgLyohPCAweDAwMDAwM0ZGICovDQojZGVmaW5lIFVTQl9DT1VOVDFfVFhfQ09VTlQxX1RYICAgICAgICAgICAgICAgVVNCX0NPVU5UMV9UWF9DT1VOVDFfVFhfTXNrICAgICAgLyohPCBUcmFuc21pc3Npb24gQnl0ZSBDb3VudCAxICovDQoNCi8qKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFVTQl9DT1VOVDJfVFggcmVnaXN0ZXIgICoqKioqKioqKioqKioqKiovDQojZGVmaW5lIFVTQl9DT1VOVDJfVFhfQ09VTlQyX1RYX1BvcyAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQl9DT1VOVDJfVFhfQ09VTlQyX1RYX01zayAgICAgICAgICAgKDB4M0ZGVSA8PCBVU0JfQ09VTlQyX1RYX0NPVU5UMl9UWF9Qb3MpIC8qITwgMHgwMDAwMDNGRiAqLw0KI2RlZmluZSBVU0JfQ09VTlQyX1RYX0NPVU5UMl9UWCAgICAgICAgICAgICAgIFVTQl9DT1VOVDJfVFhfQ09VTlQyX1RYX01zayAgICAgIC8qITwgVHJhbnNtaXNzaW9uIEJ5dGUgQ291bnQgMiAqLw0KDQovKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBVU0JfQ09VTlQzX1RYIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBVU0JfQ09VTlQzX1RYX0NPVU5UM19UWF9Qb3MgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0JfQ09VTlQzX1RYX0NPVU5UM19UWF9Nc2sgICAgICAgICAgICgweDNGRlUgPDwgVVNCX0NPVU5UM19UWF9DT1VOVDNfVFhfUG9zKSAvKiE8IDB4MDAwMDAzRkYgKi8NCiNkZWZpbmUgVVNCX0NPVU5UM19UWF9DT1VOVDNfVFggICAgICAgICAgICAgICBVU0JfQ09VTlQzX1RYX0NPVU5UM19UWF9Nc2sgICAgICAvKiE8IFRyYW5zbWlzc2lvbiBCeXRlIENvdW50IDMgKi8NCg0KLyoqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgVVNCX0NPVU5UNF9UWCByZWdpc3RlciAgKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgVVNCX0NPVU5UNF9UWF9DT1VOVDRfVFhfUG9zICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNCX0NPVU5UNF9UWF9DT1VOVDRfVFhfTXNrICAgICAgICAgICAoMHgzRkZVIDw8IFVTQl9DT1VOVDRfVFhfQ09VTlQ0X1RYX1BvcykgLyohPCAweDAwMDAwM0ZGICovDQojZGVmaW5lIFVTQl9DT1VOVDRfVFhfQ09VTlQ0X1RYICAgICAgICAgICAgICAgVVNCX0NPVU5UNF9UWF9DT1VOVDRfVFhfTXNrICAgICAgLyohPCBUcmFuc21pc3Npb24gQnl0ZSBDb3VudCA0ICovDQoNCi8qKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFVTQl9DT1VOVDVfVFggcmVnaXN0ZXIgICoqKioqKioqKioqKioqKiovDQojZGVmaW5lIFVTQl9DT1VOVDVfVFhfQ09VTlQ1X1RYX1BvcyAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQl9DT1VOVDVfVFhfQ09VTlQ1X1RYX01zayAgICAgICAgICAgKDB4M0ZGVSA8PCBVU0JfQ09VTlQ1X1RYX0NPVU5UNV9UWF9Qb3MpIC8qITwgMHgwMDAwMDNGRiAqLw0KI2RlZmluZSBVU0JfQ09VTlQ1X1RYX0NPVU5UNV9UWCAgICAgICAgICAgICAgIFVTQl9DT1VOVDVfVFhfQ09VTlQ1X1RYX01zayAgICAgIC8qITwgVHJhbnNtaXNzaW9uIEJ5dGUgQ291bnQgNSAqLw0KDQovKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBVU0JfQ09VTlQ2X1RYIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBVU0JfQ09VTlQ2X1RYX0NPVU5UNl9UWF9Qb3MgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0JfQ09VTlQ2X1RYX0NPVU5UNl9UWF9Nc2sgICAgICAgICAgICgweDNGRlUgPDwgVVNCX0NPVU5UNl9UWF9DT1VOVDZfVFhfUG9zKSAvKiE8IDB4MDAwMDAzRkYgKi8NCiNkZWZpbmUgVVNCX0NPVU5UNl9UWF9DT1VOVDZfVFggICAgICAgICAgICAgICBVU0JfQ09VTlQ2X1RYX0NPVU5UNl9UWF9Nc2sgICAgICAvKiE8IFRyYW5zbWlzc2lvbiBCeXRlIENvdW50IDYgKi8NCg0KLyoqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgVVNCX0NPVU5UN19UWCByZWdpc3RlciAgKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgVVNCX0NPVU5UN19UWF9DT1VOVDdfVFhfUG9zICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNCX0NPVU5UN19UWF9DT1VOVDdfVFhfTXNrICAgICAgICAgICAoMHgzRkZVIDw8IFVTQl9DT1VOVDdfVFhfQ09VTlQ3X1RYX1BvcykgLyohPCAweDAwMDAwM0ZGICovDQojZGVmaW5lIFVTQl9DT1VOVDdfVFhfQ09VTlQ3X1RYICAgICAgICAgICAgICAgVVNCX0NPVU5UN19UWF9DT1VOVDdfVFhfTXNrICAgICAgLyohPCBUcmFuc21pc3Npb24gQnl0ZSBDb3VudCA3ICovDQoNCi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovDQoNCi8qKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgVVNCX0NPVU5UMF9UWF8wIHJlZ2lzdGVyICAqKioqKioqKioqKioqKiovDQojZGVmaW5lIFVTQl9DT1VOVDBfVFhfMF9DT1VOVDBfVFhfMCAgICAgICAgICAgKDB4MDAwMDAzRkZVKSAgICAgICAgICAgICAgICAgICAgLyohPCBUcmFuc21pc3Npb24gQnl0ZSBDb3VudCAwIChsb3cpICovDQoNCi8qKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgVVNCX0NPVU5UMF9UWF8xIHJlZ2lzdGVyICAqKioqKioqKioqKioqKiovDQojZGVmaW5lIFVTQl9DT1VOVDBfVFhfMV9DT1VOVDBfVFhfMSAgICAgICAgICAgKDB4MDNGRjAwMDBVKSAgICAgICAgICAgICAgICAgICAgLyohPCBUcmFuc21pc3Npb24gQnl0ZSBDb3VudCAwIChoaWdoKSAqLw0KDQovKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFVTQl9DT1VOVDFfVFhfMCByZWdpc3RlciAgKioqKioqKioqKioqKioqLw0KI2RlZmluZSBVU0JfQ09VTlQxX1RYXzBfQ09VTlQxX1RYXzAgICAgICAgICAgICgweDAwMDAwM0ZGVSkgICAgICAgICAgICAgICAgICAgIC8qITwgVHJhbnNtaXNzaW9uIEJ5dGUgQ291bnQgMSAobG93KSAqLw0KDQovKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFVTQl9DT1VOVDFfVFhfMSByZWdpc3RlciAgKioqKioqKioqKioqKioqLw0KI2RlZmluZSBVU0JfQ09VTlQxX1RYXzFfQ09VTlQxX1RYXzEgICAgICAgICAgICgweDAzRkYwMDAwVSkgICAgICAgICAgICAgICAgICAgIC8qITwgVHJhbnNtaXNzaW9uIEJ5dGUgQ291bnQgMSAoaGlnaCkgKi8NCg0KLyoqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBVU0JfQ09VTlQyX1RYXzAgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKi8NCiNkZWZpbmUgVVNCX0NPVU5UMl9UWF8wX0NPVU5UMl9UWF8wICAgICAgICAgICAoMHgwMDAwMDNGRlUpICAgICAgICAgICAgICAgICAgICAvKiE8IFRyYW5zbWlzc2lvbiBCeXRlIENvdW50IDIgKGxvdykgKi8NCg0KLyoqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBVU0JfQ09VTlQyX1RYXzEgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKi8NCiNkZWZpbmUgVVNCX0NPVU5UMl9UWF8xX0NPVU5UMl9UWF8xICAgICAgICAgICAoMHgwM0ZGMDAwMFUpICAgICAgICAgICAgICAgICAgICAvKiE8IFRyYW5zbWlzc2lvbiBCeXRlIENvdW50IDIgKGhpZ2gpICovDQoNCi8qKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgVVNCX0NPVU5UM19UWF8wIHJlZ2lzdGVyICAqKioqKioqKioqKioqKiovDQojZGVmaW5lICBVU0JfQ09VTlQzX1RYXzBfQ09VTlQzX1RYXzAgICAgICAgICAoKHVpbnQzMl90KTB4MDAwMDAwMDBVMDNGRikgICAgICAgIC8qITwgVHJhbnNtaXNzaW9uIEJ5dGUgQ291bnQgMyAobG93KSAqLw0KDQovKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFVTQl9DT1VOVDNfVFhfMSByZWdpc3RlciAgKioqKioqKioqKioqKioqLw0KI2RlZmluZSAgVVNCX0NPVU5UM19UWF8xX0NPVU5UM19UWF8xICAgICAgICAgKCh1aW50MzJfdCkweDAwMDAwM0ZGVTAwMDApICAgICAgICAvKiE8IFRyYW5zbWlzc2lvbiBCeXRlIENvdW50IDMgKGhpZ2gpICovDQoNCi8qKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgVVNCX0NPVU5UNF9UWF8wIHJlZ2lzdGVyICAqKioqKioqKioqKioqKiovDQojZGVmaW5lIFVTQl9DT1VOVDRfVFhfMF9DT1VOVDRfVFhfMCAgICAgICAgICAgKDB4MDAwMDAzRkZVKSAgICAgICAgICAgICAgICAgICAgLyohPCBUcmFuc21pc3Npb24gQnl0ZSBDb3VudCA0IChsb3cpICovDQoNCi8qKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgVVNCX0NPVU5UNF9UWF8xIHJlZ2lzdGVyICAqKioqKioqKioqKioqKiovDQojZGVmaW5lIFVTQl9DT1VOVDRfVFhfMV9DT1VOVDRfVFhfMSAgICAgICAgICAgKDB4MDNGRjAwMDBVKSAgICAgICAgICAgICAgICAgICAgLyohPCBUcmFuc21pc3Npb24gQnl0ZSBDb3VudCA0IChoaWdoKSAqLw0KDQovKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFVTQl9DT1VOVDVfVFhfMCByZWdpc3RlciAgKioqKioqKioqKioqKioqLw0KI2RlZmluZSBVU0JfQ09VTlQ1X1RYXzBfQ09VTlQ1X1RYXzAgICAgICAgICAgICgweDAwMDAwM0ZGVSkgICAgICAgICAgICAgICAgICAgIC8qITwgVHJhbnNtaXNzaW9uIEJ5dGUgQ291bnQgNSAobG93KSAqLw0KDQovKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFVTQl9DT1VOVDVfVFhfMSByZWdpc3RlciAgKioqKioqKioqKioqKioqLw0KI2RlZmluZSBVU0JfQ09VTlQ1X1RYXzFfQ09VTlQ1X1RYXzEgICAgICAgICAgICgweDAzRkYwMDAwVSkgICAgICAgICAgICAgICAgICAgIC8qITwgVHJhbnNtaXNzaW9uIEJ5dGUgQ291bnQgNSAoaGlnaCkgKi8NCg0KLyoqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBVU0JfQ09VTlQ2X1RYXzAgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKi8NCiNkZWZpbmUgVVNCX0NPVU5UNl9UWF8wX0NPVU5UNl9UWF8wICAgICAgICAgICAoMHgwMDAwMDNGRlUpICAgICAgICAgICAgICAgICAgICAvKiE8IFRyYW5zbWlzc2lvbiBCeXRlIENvdW50IDYgKGxvdykgKi8NCg0KLyoqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBVU0JfQ09VTlQ2X1RYXzEgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKi8NCiNkZWZpbmUgVVNCX0NPVU5UNl9UWF8xX0NPVU5UNl9UWF8xICAgICAgICAgICAoMHgwM0ZGMDAwMFUpICAgICAgICAgICAgICAgICAgICAvKiE8IFRyYW5zbWlzc2lvbiBCeXRlIENvdW50IDYgKGhpZ2gpICovDQoNCi8qKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgVVNCX0NPVU5UN19UWF8wIHJlZ2lzdGVyICAqKioqKioqKioqKioqKiovDQojZGVmaW5lIFVTQl9DT1VOVDdfVFhfMF9DT1VOVDdfVFhfMCAgICAgICAgICAgKDB4MDAwMDAzRkZVKSAgICAgICAgICAgICAgICAgICAgLyohPCBUcmFuc21pc3Npb24gQnl0ZSBDb3VudCA3IChsb3cpICovDQoNCi8qKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgVVNCX0NPVU5UN19UWF8xIHJlZ2lzdGVyICAqKioqKioqKioqKioqKiovDQojZGVmaW5lIFVTQl9DT1VOVDdfVFhfMV9DT1VOVDdfVFhfMSAgICAgICAgICAgKDB4MDNGRjAwMDBVKSAgICAgICAgICAgICAgICAgICAgLyohPCBUcmFuc21pc3Npb24gQnl0ZSBDb3VudCA3IChoaWdoKSAqLw0KDQovKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qLw0KDQovKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBVU0JfQUREUjBfUlggcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBVU0JfQUREUjBfUlhfQUREUjBfUlhfUG9zICAgICAgICAgICAgICgxVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0JfQUREUjBfUlhfQUREUjBfUlhfTXNrICAgICAgICAgICAgICgweDdGRkZVIDw8IFVTQl9BRERSMF9SWF9BRERSMF9SWF9Qb3MpIC8qITwgMHgwMDAwRkZGRSAqLw0KI2RlZmluZSBVU0JfQUREUjBfUlhfQUREUjBfUlggICAgICAgICAgICAgICAgIFVTQl9BRERSMF9SWF9BRERSMF9SWF9Nc2sgICAgICAgIC8qITwgUmVjZXB0aW9uIEJ1ZmZlciBBZGRyZXNzIDAgKi8NCg0KLyoqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgVVNCX0FERFIxX1JYIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgVVNCX0FERFIxX1JYX0FERFIxX1JYX1BvcyAgICAgICAgICAgICAoMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNCX0FERFIxX1JYX0FERFIxX1JYX01zayAgICAgICAgICAgICAoMHg3RkZGVSA8PCBVU0JfQUREUjFfUlhfQUREUjFfUlhfUG9zKSAvKiE8IDB4MDAwMEZGRkUgKi8NCiNkZWZpbmUgVVNCX0FERFIxX1JYX0FERFIxX1JYICAgICAgICAgICAgICAgICBVU0JfQUREUjFfUlhfQUREUjFfUlhfTXNrICAgICAgICAvKiE8IFJlY2VwdGlvbiBCdWZmZXIgQWRkcmVzcyAxICovDQoNCi8qKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFVTQl9BRERSMl9SWCByZWdpc3RlciAgKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIFVTQl9BRERSMl9SWF9BRERSMl9SWF9Qb3MgICAgICAgICAgICAgKDFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQl9BRERSMl9SWF9BRERSMl9SWF9Nc2sgICAgICAgICAgICAgKDB4N0ZGRlUgPDwgVVNCX0FERFIyX1JYX0FERFIyX1JYX1BvcykgLyohPCAweDAwMDBGRkZFICovDQojZGVmaW5lIFVTQl9BRERSMl9SWF9BRERSMl9SWCAgICAgICAgICAgICAgICAgVVNCX0FERFIyX1JYX0FERFIyX1JYX01zayAgICAgICAgLyohPCBSZWNlcHRpb24gQnVmZmVyIEFkZHJlc3MgMiAqLw0KDQovKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBVU0JfQUREUjNfUlggcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBVU0JfQUREUjNfUlhfQUREUjNfUlhfUG9zICAgICAgICAgICAgICgxVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0JfQUREUjNfUlhfQUREUjNfUlhfTXNrICAgICAgICAgICAgICgweDdGRkZVIDw8IFVTQl9BRERSM19SWF9BRERSM19SWF9Qb3MpIC8qITwgMHgwMDAwRkZGRSAqLw0KI2RlZmluZSBVU0JfQUREUjNfUlhfQUREUjNfUlggICAgICAgICAgICAgICAgIFVTQl9BRERSM19SWF9BRERSM19SWF9Nc2sgICAgICAgIC8qITwgUmVjZXB0aW9uIEJ1ZmZlciBBZGRyZXNzIDMgKi8NCg0KLyoqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgVVNCX0FERFI0X1JYIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgVVNCX0FERFI0X1JYX0FERFI0X1JYX1BvcyAgICAgICAgICAgICAoMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNCX0FERFI0X1JYX0FERFI0X1JYX01zayAgICAgICAgICAgICAoMHg3RkZGVSA8PCBVU0JfQUREUjRfUlhfQUREUjRfUlhfUG9zKSAvKiE8IDB4MDAwMEZGRkUgKi8NCiNkZWZpbmUgVVNCX0FERFI0X1JYX0FERFI0X1JYICAgICAgICAgICAgICAgICBVU0JfQUREUjRfUlhfQUREUjRfUlhfTXNrICAgICAgICAvKiE8IFJlY2VwdGlvbiBCdWZmZXIgQWRkcmVzcyA0ICovDQoNCi8qKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFVTQl9BRERSNV9SWCByZWdpc3RlciAgKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIFVTQl9BRERSNV9SWF9BRERSNV9SWF9Qb3MgICAgICAgICAgICAgKDFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQl9BRERSNV9SWF9BRERSNV9SWF9Nc2sgICAgICAgICAgICAgKDB4N0ZGRlUgPDwgVVNCX0FERFI1X1JYX0FERFI1X1JYX1BvcykgLyohPCAweDAwMDBGRkZFICovDQojZGVmaW5lIFVTQl9BRERSNV9SWF9BRERSNV9SWCAgICAgICAgICAgICAgICAgVVNCX0FERFI1X1JYX0FERFI1X1JYX01zayAgICAgICAgLyohPCBSZWNlcHRpb24gQnVmZmVyIEFkZHJlc3MgNSAqLw0KDQovKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBVU0JfQUREUjZfUlggcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBVU0JfQUREUjZfUlhfQUREUjZfUlhfUG9zICAgICAgICAgICAgICgxVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0JfQUREUjZfUlhfQUREUjZfUlhfTXNrICAgICAgICAgICAgICgweDdGRkZVIDw8IFVTQl9BRERSNl9SWF9BRERSNl9SWF9Qb3MpIC8qITwgMHgwMDAwRkZGRSAqLw0KI2RlZmluZSBVU0JfQUREUjZfUlhfQUREUjZfUlggICAgICAgICAgICAgICAgIFVTQl9BRERSNl9SWF9BRERSNl9SWF9Nc2sgICAgICAgIC8qITwgUmVjZXB0aW9uIEJ1ZmZlciBBZGRyZXNzIDYgKi8NCg0KLyoqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgVVNCX0FERFI3X1JYIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgVVNCX0FERFI3X1JYX0FERFI3X1JYX1BvcyAgICAgICAgICAgICAoMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNCX0FERFI3X1JYX0FERFI3X1JYX01zayAgICAgICAgICAgICAoMHg3RkZGVSA8PCBVU0JfQUREUjdfUlhfQUREUjdfUlhfUG9zKSAvKiE8IDB4MDAwMEZGRkUgKi8NCiNkZWZpbmUgVVNCX0FERFI3X1JYX0FERFI3X1JYICAgICAgICAgICAgICAgICBVU0JfQUREUjdfUlhfQUREUjdfUlhfTXNrICAgICAgICAvKiE8IFJlY2VwdGlvbiBCdWZmZXIgQWRkcmVzcyA3ICovDQoNCi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovDQoNCi8qKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFVTQl9DT1VOVDBfUlggcmVnaXN0ZXIgICoqKioqKioqKioqKioqKiovDQojZGVmaW5lIFVTQl9DT1VOVDBfUlhfQ09VTlQwX1JYX1BvcyAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQl9DT1VOVDBfUlhfQ09VTlQwX1JYX01zayAgICAgICAgICAgKDB4M0ZGVSA8PCBVU0JfQ09VTlQwX1JYX0NPVU5UMF9SWF9Qb3MpIC8qITwgMHgwMDAwMDNGRiAqLw0KI2RlZmluZSBVU0JfQ09VTlQwX1JYX0NPVU5UMF9SWCAgICAgICAgICAgICAgIFVTQl9DT1VOVDBfUlhfQ09VTlQwX1JYX01zayAgICAgIC8qITwgUmVjZXB0aW9uIEJ5dGUgQ291bnQgKi8NCg0KI2RlZmluZSBVU0JfQ09VTlQwX1JYX05VTV9CTE9DS19Qb3MgICAgICAgICAgICgxMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0JfQ09VTlQwX1JYX05VTV9CTE9DS19Nc2sgICAgICAgICAgICgweDFGVSA8PCBVU0JfQ09VTlQwX1JYX05VTV9CTE9DS19Qb3MpIC8qITwgMHgwMDAwN0MwMCAqLw0KI2RlZmluZSBVU0JfQ09VTlQwX1JYX05VTV9CTE9DSyAgICAgICAgICAgICAgIFVTQl9DT1VOVDBfUlhfTlVNX0JMT0NLX01zayAgICAgIC8qITwgTlVNX0JMT0NLWzQ6MF0gYml0cyAoTnVtYmVyIG9mIGJsb2NrcykgKi8NCiNkZWZpbmUgVVNCX0NPVU5UMF9SWF9OVU1fQkxPQ0tfMCAgICAgICAgICAgICAoMHgwMVUgPDwgVVNCX0NPVU5UMF9SWF9OVU1fQkxPQ0tfUG9zKSAvKiE8IDB4MDAwMDA0MDAgKi8NCiNkZWZpbmUgVVNCX0NPVU5UMF9SWF9OVU1fQkxPQ0tfMSAgICAgICAgICAgICAoMHgwMlUgPDwgVVNCX0NPVU5UMF9SWF9OVU1fQkxPQ0tfUG9zKSAvKiE8IDB4MDAwMDA4MDAgKi8NCiNkZWZpbmUgVVNCX0NPVU5UMF9SWF9OVU1fQkxPQ0tfMiAgICAgICAgICAgICAoMHgwNFUgPDwgVVNCX0NPVU5UMF9SWF9OVU1fQkxPQ0tfUG9zKSAvKiE8IDB4MDAwMDEwMDAgKi8NCiNkZWZpbmUgVVNCX0NPVU5UMF9SWF9OVU1fQkxPQ0tfMyAgICAgICAgICAgICAoMHgwOFUgPDwgVVNCX0NPVU5UMF9SWF9OVU1fQkxPQ0tfUG9zKSAvKiE8IDB4MDAwMDIwMDAgKi8NCiNkZWZpbmUgVVNCX0NPVU5UMF9SWF9OVU1fQkxPQ0tfNCAgICAgICAgICAgICAoMHgxMFUgPDwgVVNCX0NPVU5UMF9SWF9OVU1fQkxPQ0tfUG9zKSAvKiE8IDB4MDAwMDQwMDAgKi8NCg0KI2RlZmluZSBVU0JfQ09VTlQwX1JYX0JMU0laRV9Qb3MgICAgICAgICAgICAgICgxNVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0JfQ09VTlQwX1JYX0JMU0laRV9Nc2sgICAgICAgICAgICAgICgweDFVIDw8IFVTQl9DT1VOVDBfUlhfQkxTSVpFX1BvcykgLyohPCAweDAwMDA4MDAwICovDQojZGVmaW5lIFVTQl9DT1VOVDBfUlhfQkxTSVpFICAgICAgICAgICAgICAgICAgVVNCX0NPVU5UMF9SWF9CTFNJWkVfTXNrICAgICAgICAgLyohPCBCTG9jayBTSVpFICovDQoNCi8qKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFVTQl9DT1VOVDFfUlggcmVnaXN0ZXIgICoqKioqKioqKioqKioqKiovDQojZGVmaW5lIFVTQl9DT1VOVDFfUlhfQ09VTlQxX1JYX1BvcyAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQl9DT1VOVDFfUlhfQ09VTlQxX1JYX01zayAgICAgICAgICAgKDB4M0ZGVSA8PCBVU0JfQ09VTlQxX1JYX0NPVU5UMV9SWF9Qb3MpIC8qITwgMHgwMDAwMDNGRiAqLw0KI2RlZmluZSBVU0JfQ09VTlQxX1JYX0NPVU5UMV9SWCAgICAgICAgICAgICAgIFVTQl9DT1VOVDFfUlhfQ09VTlQxX1JYX01zayAgICAgIC8qITwgUmVjZXB0aW9uIEJ5dGUgQ291bnQgKi8NCg0KI2RlZmluZSBVU0JfQ09VTlQxX1JYX05VTV9CTE9DS19Qb3MgICAgICAgICAgICgxMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0JfQ09VTlQxX1JYX05VTV9CTE9DS19Nc2sgICAgICAgICAgICgweDFGVSA8PCBVU0JfQ09VTlQxX1JYX05VTV9CTE9DS19Qb3MpIC8qITwgMHgwMDAwN0MwMCAqLw0KI2RlZmluZSBVU0JfQ09VTlQxX1JYX05VTV9CTE9DSyAgICAgICAgICAgICAgIFVTQl9DT1VOVDFfUlhfTlVNX0JMT0NLX01zayAgICAgIC8qITwgTlVNX0JMT0NLWzQ6MF0gYml0cyAoTnVtYmVyIG9mIGJsb2NrcykgKi8NCiNkZWZpbmUgVVNCX0NPVU5UMV9SWF9OVU1fQkxPQ0tfMCAgICAgICAgICAgICAoMHgwMVUgPDwgVVNCX0NPVU5UMV9SWF9OVU1fQkxPQ0tfUG9zKSAvKiE8IDB4MDAwMDA0MDAgKi8NCiNkZWZpbmUgVVNCX0NPVU5UMV9SWF9OVU1fQkxPQ0tfMSAgICAgICAgICAgICAoMHgwMlUgPDwgVVNCX0NPVU5UMV9SWF9OVU1fQkxPQ0tfUG9zKSAvKiE8IDB4MDAwMDA4MDAgKi8NCiNkZWZpbmUgVVNCX0NPVU5UMV9SWF9OVU1fQkxPQ0tfMiAgICAgICAgICAgICAoMHgwNFUgPDwgVVNCX0NPVU5UMV9SWF9OVU1fQkxPQ0tfUG9zKSAvKiE8IDB4MDAwMDEwMDAgKi8NCiNkZWZpbmUgVVNCX0NPVU5UMV9SWF9OVU1fQkxPQ0tfMyAgICAgICAgICAgICAoMHgwOFUgPDwgVVNCX0NPVU5UMV9SWF9OVU1fQkxPQ0tfUG9zKSAvKiE8IDB4MDAwMDIwMDAgKi8NCiNkZWZpbmUgVVNCX0NPVU5UMV9SWF9OVU1fQkxPQ0tfNCAgICAgICAgICAgICAoMHgxMFUgPDwgVVNCX0NPVU5UMV9SWF9OVU1fQkxPQ0tfUG9zKSAvKiE8IDB4MDAwMDQwMDAgKi8NCg0KI2RlZmluZSBVU0JfQ09VTlQxX1JYX0JMU0laRV9Qb3MgICAgICAgICAgICAgICgxNVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0JfQ09VTlQxX1JYX0JMU0laRV9Nc2sgICAgICAgICAgICAgICgweDFVIDw8IFVTQl9DT1VOVDFfUlhfQkxTSVpFX1BvcykgLyohPCAweDAwMDA4MDAwICovDQojZGVmaW5lIFVTQl9DT1VOVDFfUlhfQkxTSVpFICAgICAgICAgICAgICAgICAgVVNCX0NPVU5UMV9SWF9CTFNJWkVfTXNrICAgICAgICAgLyohPCBCTG9jayBTSVpFICovDQoNCi8qKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFVTQl9DT1VOVDJfUlggcmVnaXN0ZXIgICoqKioqKioqKioqKioqKiovDQojZGVmaW5lIFVTQl9DT1VOVDJfUlhfQ09VTlQyX1JYX1BvcyAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQl9DT1VOVDJfUlhfQ09VTlQyX1JYX01zayAgICAgICAgICAgKDB4M0ZGVSA8PCBVU0JfQ09VTlQyX1JYX0NPVU5UMl9SWF9Qb3MpIC8qITwgMHgwMDAwMDNGRiAqLw0KI2RlZmluZSBVU0JfQ09VTlQyX1JYX0NPVU5UMl9SWCAgICAgICAgICAgICAgIFVTQl9DT1VOVDJfUlhfQ09VTlQyX1JYX01zayAgICAgIC8qITwgUmVjZXB0aW9uIEJ5dGUgQ291bnQgKi8NCg0KI2RlZmluZSBVU0JfQ09VTlQyX1JYX05VTV9CTE9DS19Qb3MgICAgICAgICAgICgxMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0JfQ09VTlQyX1JYX05VTV9CTE9DS19Nc2sgICAgICAgICAgICgweDFGVSA8PCBVU0JfQ09VTlQyX1JYX05VTV9CTE9DS19Qb3MpIC8qITwgMHgwMDAwN0MwMCAqLw0KI2RlZmluZSBVU0JfQ09VTlQyX1JYX05VTV9CTE9DSyAgICAgICAgICAgICAgIFVTQl9DT1VOVDJfUlhfTlVNX0JMT0NLX01zayAgICAgIC8qITwgTlVNX0JMT0NLWzQ6MF0gYml0cyAoTnVtYmVyIG9mIGJsb2NrcykgKi8NCiNkZWZpbmUgVVNCX0NPVU5UMl9SWF9OVU1fQkxPQ0tfMCAgICAgICAgICAgICAoMHgwMVUgPDwgVVNCX0NPVU5UMl9SWF9OVU1fQkxPQ0tfUG9zKSAvKiE8IDB4MDAwMDA0MDAgKi8NCiNkZWZpbmUgVVNCX0NPVU5UMl9SWF9OVU1fQkxPQ0tfMSAgICAgICAgICAgICAoMHgwMlUgPDwgVVNCX0NPVU5UMl9SWF9OVU1fQkxPQ0tfUG9zKSAvKiE8IDB4MDAwMDA4MDAgKi8NCiNkZWZpbmUgVVNCX0NPVU5UMl9SWF9OVU1fQkxPQ0tfMiAgICAgICAgICAgICAoMHgwNFUgPDwgVVNCX0NPVU5UMl9SWF9OVU1fQkxPQ0tfUG9zKSAvKiE8IDB4MDAwMDEwMDAgKi8NCiNkZWZpbmUgVVNCX0NPVU5UMl9SWF9OVU1fQkxPQ0tfMyAgICAgICAgICAgICAoMHgwOFUgPDwgVVNCX0NPVU5UMl9SWF9OVU1fQkxPQ0tfUG9zKSAvKiE8IDB4MDAwMDIwMDAgKi8NCiNkZWZpbmUgVVNCX0NPVU5UMl9SWF9OVU1fQkxPQ0tfNCAgICAgICAgICAgICAoMHgxMFUgPDwgVVNCX0NPVU5UMl9SWF9OVU1fQkxPQ0tfUG9zKSAvKiE8IDB4MDAwMDQwMDAgKi8NCg0KI2RlZmluZSBVU0JfQ09VTlQyX1JYX0JMU0laRV9Qb3MgICAgICAgICAgICAgICgxNVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0JfQ09VTlQyX1JYX0JMU0laRV9Nc2sgICAgICAgICAgICAgICgweDFVIDw8IFVTQl9DT1VOVDJfUlhfQkxTSVpFX1BvcykgLyohPCAweDAwMDA4MDAwICovDQojZGVmaW5lIFVTQl9DT1VOVDJfUlhfQkxTSVpFICAgICAgICAgICAgICAgICAgVVNCX0NPVU5UMl9SWF9CTFNJWkVfTXNrICAgICAgICAgLyohPCBCTG9jayBTSVpFICovDQoNCi8qKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFVTQl9DT1VOVDNfUlggcmVnaXN0ZXIgICoqKioqKioqKioqKioqKiovDQojZGVmaW5lIFVTQl9DT1VOVDNfUlhfQ09VTlQzX1JYX1BvcyAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQl9DT1VOVDNfUlhfQ09VTlQzX1JYX01zayAgICAgICAgICAgKDB4M0ZGVSA8PCBVU0JfQ09VTlQzX1JYX0NPVU5UM19SWF9Qb3MpIC8qITwgMHgwMDAwMDNGRiAqLw0KI2RlZmluZSBVU0JfQ09VTlQzX1JYX0NPVU5UM19SWCAgICAgICAgICAgICAgIFVTQl9DT1VOVDNfUlhfQ09VTlQzX1JYX01zayAgICAgIC8qITwgUmVjZXB0aW9uIEJ5dGUgQ291bnQgKi8NCg0KI2RlZmluZSBVU0JfQ09VTlQzX1JYX05VTV9CTE9DS19Qb3MgICAgICAgICAgICgxMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0JfQ09VTlQzX1JYX05VTV9CTE9DS19Nc2sgICAgICAgICAgICgweDFGVSA8PCBVU0JfQ09VTlQzX1JYX05VTV9CTE9DS19Qb3MpIC8qITwgMHgwMDAwN0MwMCAqLw0KI2RlZmluZSBVU0JfQ09VTlQzX1JYX05VTV9CTE9DSyAgICAgICAgICAgICAgIFVTQl9DT1VOVDNfUlhfTlVNX0JMT0NLX01zayAgICAgIC8qITwgTlVNX0JMT0NLWzQ6MF0gYml0cyAoTnVtYmVyIG9mIGJsb2NrcykgKi8NCiNkZWZpbmUgVVNCX0NPVU5UM19SWF9OVU1fQkxPQ0tfMCAgICAgICAgICAgICAoMHgwMVUgPDwgVVNCX0NPVU5UM19SWF9OVU1fQkxPQ0tfUG9zKSAvKiE8IDB4MDAwMDA0MDAgKi8NCiNkZWZpbmUgVVNCX0NPVU5UM19SWF9OVU1fQkxPQ0tfMSAgICAgICAgICAgICAoMHgwMlUgPDwgVVNCX0NPVU5UM19SWF9OVU1fQkxPQ0tfUG9zKSAvKiE8IDB4MDAwMDA4MDAgKi8NCiNkZWZpbmUgVVNCX0NPVU5UM19SWF9OVU1fQkxPQ0tfMiAgICAgICAgICAgICAoMHgwNFUgPDwgVVNCX0NPVU5UM19SWF9OVU1fQkxPQ0tfUG9zKSAvKiE8IDB4MDAwMDEwMDAgKi8NCiNkZWZpbmUgVVNCX0NPVU5UM19SWF9OVU1fQkxPQ0tfMyAgICAgICAgICAgICAoMHgwOFUgPDwgVVNCX0NPVU5UM19SWF9OVU1fQkxPQ0tfUG9zKSAvKiE8IDB4MDAwMDIwMDAgKi8NCiNkZWZpbmUgVVNCX0NPVU5UM19SWF9OVU1fQkxPQ0tfNCAgICAgICAgICAgICAoMHgxMFUgPDwgVVNCX0NPVU5UM19SWF9OVU1fQkxPQ0tfUG9zKSAvKiE8IDB4MDAwMDQwMDAgKi8NCg0KI2RlZmluZSBVU0JfQ09VTlQzX1JYX0JMU0laRV9Qb3MgICAgICAgICAgICAgICgxNVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0JfQ09VTlQzX1JYX0JMU0laRV9Nc2sgICAgICAgICAgICAgICgweDFVIDw8IFVTQl9DT1VOVDNfUlhfQkxTSVpFX1BvcykgLyohPCAweDAwMDA4MDAwICovDQojZGVmaW5lIFVTQl9DT1VOVDNfUlhfQkxTSVpFICAgICAgICAgICAgICAgICAgVVNCX0NPVU5UM19SWF9CTFNJWkVfTXNrICAgICAgICAgLyohPCBCTG9jayBTSVpFICovDQoNCi8qKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFVTQl9DT1VOVDRfUlggcmVnaXN0ZXIgICoqKioqKioqKioqKioqKiovDQojZGVmaW5lIFVTQl9DT1VOVDRfUlhfQ09VTlQ0X1JYX1BvcyAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQl9DT1VOVDRfUlhfQ09VTlQ0X1JYX01zayAgICAgICAgICAgKDB4M0ZGVSA8PCBVU0JfQ09VTlQ0X1JYX0NPVU5UNF9SWF9Qb3MpIC8qITwgMHgwMDAwMDNGRiAqLw0KI2RlZmluZSBVU0JfQ09VTlQ0X1JYX0NPVU5UNF9SWCAgICAgICAgICAgICAgIFVTQl9DT1VOVDRfUlhfQ09VTlQ0X1JYX01zayAgICAgIC8qITwgUmVjZXB0aW9uIEJ5dGUgQ291bnQgKi8NCg0KI2RlZmluZSBVU0JfQ09VTlQ0X1JYX05VTV9CTE9DS19Qb3MgICAgICAgICAgICgxMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0JfQ09VTlQ0X1JYX05VTV9CTE9DS19Nc2sgICAgICAgICAgICgweDFGVSA8PCBVU0JfQ09VTlQ0X1JYX05VTV9CTE9DS19Qb3MpIC8qITwgMHgwMDAwN0MwMCAqLw0KI2RlZmluZSBVU0JfQ09VTlQ0X1JYX05VTV9CTE9DSyAgICAgICAgICAgICAgIFVTQl9DT1VOVDRfUlhfTlVNX0JMT0NLX01zayAgICAgIC8qITwgTlVNX0JMT0NLWzQ6MF0gYml0cyAoTnVtYmVyIG9mIGJsb2NrcykgKi8NCiNkZWZpbmUgVVNCX0NPVU5UNF9SWF9OVU1fQkxPQ0tfMCAgICAgICAgICAgICAoMHgwMVUgPDwgVVNCX0NPVU5UNF9SWF9OVU1fQkxPQ0tfUG9zKSAvKiE8IDB4MDAwMDA0MDAgKi8NCiNkZWZpbmUgVVNCX0NPVU5UNF9SWF9OVU1fQkxPQ0tfMSAgICAgICAgICAgICAoMHgwMlUgPDwgVVNCX0NPVU5UNF9SWF9OVU1fQkxPQ0tfUG9zKSAvKiE8IDB4MDAwMDA4MDAgKi8NCiNkZWZpbmUgVVNCX0NPVU5UNF9SWF9OVU1fQkxPQ0tfMiAgICAgICAgICAgICAoMHgwNFUgPDwgVVNCX0NPVU5UNF9SWF9OVU1fQkxPQ0tfUG9zKSAvKiE8IDB4MDAwMDEwMDAgKi8NCiNkZWZpbmUgVVNCX0NPVU5UNF9SWF9OVU1fQkxPQ0tfMyAgICAgICAgICAgICAoMHgwOFUgPDwgVVNCX0NPVU5UNF9SWF9OVU1fQkxPQ0tfUG9zKSAvKiE8IDB4MDAwMDIwMDAgKi8NCiNkZWZpbmUgVVNCX0NPVU5UNF9SWF9OVU1fQkxPQ0tfNCAgICAgICAgICAgICAoMHgxMFUgPDwgVVNCX0NPVU5UNF9SWF9OVU1fQkxPQ0tfUG9zKSAvKiE8IDB4MDAwMDQwMDAgKi8NCg0KI2RlZmluZSBVU0JfQ09VTlQ0X1JYX0JMU0laRV9Qb3MgICAgICAgICAgICAgICgxNVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0JfQ09VTlQ0X1JYX0JMU0laRV9Nc2sgICAgICAgICAgICAgICgweDFVIDw8IFVTQl9DT1VOVDRfUlhfQkxTSVpFX1BvcykgLyohPCAweDAwMDA4MDAwICovDQojZGVmaW5lIFVTQl9DT1VOVDRfUlhfQkxTSVpFICAgICAgICAgICAgICAgICAgVVNCX0NPVU5UNF9SWF9CTFNJWkVfTXNrICAgICAgICAgLyohPCBCTG9jayBTSVpFICovDQoNCi8qKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFVTQl9DT1VOVDVfUlggcmVnaXN0ZXIgICoqKioqKioqKioqKioqKiovDQojZGVmaW5lIFVTQl9DT1VOVDVfUlhfQ09VTlQ1X1JYX1BvcyAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQl9DT1VOVDVfUlhfQ09VTlQ1X1JYX01zayAgICAgICAgICAgKDB4M0ZGVSA8PCBVU0JfQ09VTlQ1X1JYX0NPVU5UNV9SWF9Qb3MpIC8qITwgMHgwMDAwMDNGRiAqLw0KI2RlZmluZSBVU0JfQ09VTlQ1X1JYX0NPVU5UNV9SWCAgICAgICAgICAgICAgIFVTQl9DT1VOVDVfUlhfQ09VTlQ1X1JYX01zayAgICAgIC8qITwgUmVjZXB0aW9uIEJ5dGUgQ291bnQgKi8NCg0KI2RlZmluZSBVU0JfQ09VTlQ1X1JYX05VTV9CTE9DS19Qb3MgICAgICAgICAgICgxMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0JfQ09VTlQ1X1JYX05VTV9CTE9DS19Nc2sgICAgICAgICAgICgweDFGVSA8PCBVU0JfQ09VTlQ1X1JYX05VTV9CTE9DS19Qb3MpIC8qITwgMHgwMDAwN0MwMCAqLw0KI2RlZmluZSBVU0JfQ09VTlQ1X1JYX05VTV9CTE9DSyAgICAgICAgICAgICAgIFVTQl9DT1VOVDVfUlhfTlVNX0JMT0NLX01zayAgICAgIC8qITwgTlVNX0JMT0NLWzQ6MF0gYml0cyAoTnVtYmVyIG9mIGJsb2NrcykgKi8NCiNkZWZpbmUgVVNCX0NPVU5UNV9SWF9OVU1fQkxPQ0tfMCAgICAgICAgICAgICAoMHgwMVUgPDwgVVNCX0NPVU5UNV9SWF9OVU1fQkxPQ0tfUG9zKSAvKiE8IDB4MDAwMDA0MDAgKi8NCiNkZWZpbmUgVVNCX0NPVU5UNV9SWF9OVU1fQkxPQ0tfMSAgICAgICAgICAgICAoMHgwMlUgPDwgVVNCX0NPVU5UNV9SWF9OVU1fQkxPQ0tfUG9zKSAvKiE8IDB4MDAwMDA4MDAgKi8NCiNkZWZpbmUgVVNCX0NPVU5UNV9SWF9OVU1fQkxPQ0tfMiAgICAgICAgICAgICAoMHgwNFUgPDwgVVNCX0NPVU5UNV9SWF9OVU1fQkxPQ0tfUG9zKSAvKiE8IDB4MDAwMDEwMDAgKi8NCiNkZWZpbmUgVVNCX0NPVU5UNV9SWF9OVU1fQkxPQ0tfMyAgICAgICAgICAgICAoMHgwOFUgPDwgVVNCX0NPVU5UNV9SWF9OVU1fQkxPQ0tfUG9zKSAvKiE8IDB4MDAwMDIwMDAgKi8NCiNkZWZpbmUgVVNCX0NPVU5UNV9SWF9OVU1fQkxPQ0tfNCAgICAgICAgICAgICAoMHgxMFUgPDwgVVNCX0NPVU5UNV9SWF9OVU1fQkxPQ0tfUG9zKSAvKiE8IDB4MDAwMDQwMDAgKi8NCg0KI2RlZmluZSBVU0JfQ09VTlQ1X1JYX0JMU0laRV9Qb3MgICAgICAgICAgICAgICgxNVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0JfQ09VTlQ1X1JYX0JMU0laRV9Nc2sgICAgICAgICAgICAgICgweDFVIDw8IFVTQl9DT1VOVDVfUlhfQkxTSVpFX1BvcykgLyohPCAweDAwMDA4MDAwICovDQojZGVmaW5lIFVTQl9DT1VOVDVfUlhfQkxTSVpFICAgICAgICAgICAgICAgICAgVVNCX0NPVU5UNV9SWF9CTFNJWkVfTXNrICAgICAgICAgLyohPCBCTG9jayBTSVpFICovDQoNCi8qKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFVTQl9DT1VOVDZfUlggcmVnaXN0ZXIgICoqKioqKioqKioqKioqKiovDQojZGVmaW5lIFVTQl9DT1VOVDZfUlhfQ09VTlQ2X1JYX1BvcyAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQl9DT1VOVDZfUlhfQ09VTlQ2X1JYX01zayAgICAgICAgICAgKDB4M0ZGVSA8PCBVU0JfQ09VTlQ2X1JYX0NPVU5UNl9SWF9Qb3MpIC8qITwgMHgwMDAwMDNGRiAqLw0KI2RlZmluZSBVU0JfQ09VTlQ2X1JYX0NPVU5UNl9SWCAgICAgICAgICAgICAgIFVTQl9DT1VOVDZfUlhfQ09VTlQ2X1JYX01zayAgICAgIC8qITwgUmVjZXB0aW9uIEJ5dGUgQ291bnQgKi8NCg0KI2RlZmluZSBVU0JfQ09VTlQ2X1JYX05VTV9CTE9DS19Qb3MgICAgICAgICAgICgxMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0JfQ09VTlQ2X1JYX05VTV9CTE9DS19Nc2sgICAgICAgICAgICgweDFGVSA8PCBVU0JfQ09VTlQ2X1JYX05VTV9CTE9DS19Qb3MpIC8qITwgMHgwMDAwN0MwMCAqLw0KI2RlZmluZSBVU0JfQ09VTlQ2X1JYX05VTV9CTE9DSyAgICAgICAgICAgICAgIFVTQl9DT1VOVDZfUlhfTlVNX0JMT0NLX01zayAgICAgIC8qITwgTlVNX0JMT0NLWzQ6MF0gYml0cyAoTnVtYmVyIG9mIGJsb2NrcykgKi8NCiNkZWZpbmUgVVNCX0NPVU5UNl9SWF9OVU1fQkxPQ0tfMCAgICAgICAgICAgICAoMHgwMVUgPDwgVVNCX0NPVU5UNl9SWF9OVU1fQkxPQ0tfUG9zKSAvKiE8IDB4MDAwMDA0MDAgKi8NCiNkZWZpbmUgVVNCX0NPVU5UNl9SWF9OVU1fQkxPQ0tfMSAgICAgICAgICAgICAoMHgwMlUgPDwgVVNCX0NPVU5UNl9SWF9OVU1fQkxPQ0tfUG9zKSAvKiE8IDB4MDAwMDA4MDAgKi8NCiNkZWZpbmUgVVNCX0NPVU5UNl9SWF9OVU1fQkxPQ0tfMiAgICAgICAgICAgICAoMHgwNFUgPDwgVVNCX0NPVU5UNl9SWF9OVU1fQkxPQ0tfUG9zKSAvKiE8IDB4MDAwMDEwMDAgKi8NCiNkZWZpbmUgVVNCX0NPVU5UNl9SWF9OVU1fQkxPQ0tfMyAgICAgICAgICAgICAoMHgwOFUgPDwgVVNCX0NPVU5UNl9SWF9OVU1fQkxPQ0tfUG9zKSAvKiE8IDB4MDAwMDIwMDAgKi8NCiNkZWZpbmUgVVNCX0NPVU5UNl9SWF9OVU1fQkxPQ0tfNCAgICAgICAgICAgICAoMHgxMFUgPDwgVVNCX0NPVU5UNl9SWF9OVU1fQkxPQ0tfUG9zKSAvKiE8IDB4MDAwMDQwMDAgKi8NCg0KI2RlZmluZSBVU0JfQ09VTlQ2X1JYX0JMU0laRV9Qb3MgICAgICAgICAgICAgICgxNVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0JfQ09VTlQ2X1JYX0JMU0laRV9Nc2sgICAgICAgICAgICAgICgweDFVIDw8IFVTQl9DT1VOVDZfUlhfQkxTSVpFX1BvcykgLyohPCAweDAwMDA4MDAwICovDQojZGVmaW5lIFVTQl9DT1VOVDZfUlhfQkxTSVpFICAgICAgICAgICAgICAgICAgVVNCX0NPVU5UNl9SWF9CTFNJWkVfTXNrICAgICAgICAgLyohPCBCTG9jayBTSVpFICovDQoNCi8qKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFVTQl9DT1VOVDdfUlggcmVnaXN0ZXIgICoqKioqKioqKioqKioqKiovDQojZGVmaW5lIFVTQl9DT1VOVDdfUlhfQ09VTlQ3X1JYX1BvcyAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQl9DT1VOVDdfUlhfQ09VTlQ3X1JYX01zayAgICAgICAgICAgKDB4M0ZGVSA8PCBVU0JfQ09VTlQ3X1JYX0NPVU5UN19SWF9Qb3MpIC8qITwgMHgwMDAwMDNGRiAqLw0KI2RlZmluZSBVU0JfQ09VTlQ3X1JYX0NPVU5UN19SWCAgICAgICAgICAgICAgIFVTQl9DT1VOVDdfUlhfQ09VTlQ3X1JYX01zayAgICAgIC8qITwgUmVjZXB0aW9uIEJ5dGUgQ291bnQgKi8NCg0KI2RlZmluZSBVU0JfQ09VTlQ3X1JYX05VTV9CTE9DS19Qb3MgICAgICAgICAgICgxMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0JfQ09VTlQ3X1JYX05VTV9CTE9DS19Nc2sgICAgICAgICAgICgweDFGVSA8PCBVU0JfQ09VTlQ3X1JYX05VTV9CTE9DS19Qb3MpIC8qITwgMHgwMDAwN0MwMCAqLw0KI2RlZmluZSBVU0JfQ09VTlQ3X1JYX05VTV9CTE9DSyAgICAgICAgICAgICAgIFVTQl9DT1VOVDdfUlhfTlVNX0JMT0NLX01zayAgICAgIC8qITwgTlVNX0JMT0NLWzQ6MF0gYml0cyAoTnVtYmVyIG9mIGJsb2NrcykgKi8NCiNkZWZpbmUgVVNCX0NPVU5UN19SWF9OVU1fQkxPQ0tfMCAgICAgICAgICAgICAoMHgwMVUgPDwgVVNCX0NPVU5UN19SWF9OVU1fQkxPQ0tfUG9zKSAvKiE8IDB4MDAwMDA0MDAgKi8NCiNkZWZpbmUgVVNCX0NPVU5UN19SWF9OVU1fQkxPQ0tfMSAgICAgICAgICAgICAoMHgwMlUgPDwgVVNCX0NPVU5UN19SWF9OVU1fQkxPQ0tfUG9zKSAvKiE8IDB4MDAwMDA4MDAgKi8NCiNkZWZpbmUgVVNCX0NPVU5UN19SWF9OVU1fQkxPQ0tfMiAgICAgICAgICAgICAoMHgwNFUgPDwgVVNCX0NPVU5UN19SWF9OVU1fQkxPQ0tfUG9zKSAvKiE8IDB4MDAwMDEwMDAgKi8NCiNkZWZpbmUgVVNCX0NPVU5UN19SWF9OVU1fQkxPQ0tfMyAgICAgICAgICAgICAoMHgwOFUgPDwgVVNCX0NPVU5UN19SWF9OVU1fQkxPQ0tfUG9zKSAvKiE8IDB4MDAwMDIwMDAgKi8NCiNkZWZpbmUgVVNCX0NPVU5UN19SWF9OVU1fQkxPQ0tfNCAgICAgICAgICAgICAoMHgxMFUgPDwgVVNCX0NPVU5UN19SWF9OVU1fQkxPQ0tfUG9zKSAvKiE8IDB4MDAwMDQwMDAgKi8NCg0KI2RlZmluZSBVU0JfQ09VTlQ3X1JYX0JMU0laRV9Qb3MgICAgICAgICAgICAgICgxNVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0JfQ09VTlQ3X1JYX0JMU0laRV9Nc2sgICAgICAgICAgICAgICgweDFVIDw8IFVTQl9DT1VOVDdfUlhfQkxTSVpFX1BvcykgLyohPCAweDAwMDA4MDAwICovDQojZGVmaW5lIFVTQl9DT1VOVDdfUlhfQkxTSVpFICAgICAgICAgICAgICAgICAgVVNCX0NPVU5UN19SWF9CTFNJWkVfTXNrICAgICAgICAgLyohPCBCTG9jayBTSVpFICovDQoNCi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovDQoNCi8qKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgVVNCX0NPVU5UMF9SWF8wIHJlZ2lzdGVyICAqKioqKioqKioqKioqKiovDQojZGVmaW5lIFVTQl9DT1VOVDBfUlhfMF9DT1VOVDBfUlhfMCAgICAgICAgICAgKDB4MDAwMDAzRkZVKSAgICAgICAgICAgICAgICAgICAgLyohPCBSZWNlcHRpb24gQnl0ZSBDb3VudCAobG93KSAqLw0KDQojZGVmaW5lIFVTQl9DT1VOVDBfUlhfMF9OVU1fQkxPQ0tfMCAgICAgICAgICAgKDB4MDAwMDdDMDBVKSAgICAgICAgICAgICAgICAgICAgLyohPCBOVU1fQkxPQ0tfMFs0OjBdIGJpdHMgKE51bWJlciBvZiBibG9ja3MpIChsb3cpICovDQojZGVmaW5lIFVTQl9DT1VOVDBfUlhfMF9OVU1fQkxPQ0tfMF8wICAgICAgICAgKDB4MDAwMDA0MDBVKSAgICAgICAgICAgICAgICAgICAgLyohPCBCaXQgMCAqLw0KI2RlZmluZSBVU0JfQ09VTlQwX1JYXzBfTlVNX0JMT0NLXzBfMSAgICAgICAgICgweDAwMDAwODAwVSkgICAgICAgICAgICAgICAgICAgIC8qITwgQml0IDEgKi8NCiNkZWZpbmUgVVNCX0NPVU5UMF9SWF8wX05VTV9CTE9DS18wXzIgICAgICAgICAoMHgwMDAwMTAwMFUpICAgICAgICAgICAgICAgICAgICAvKiE8IEJpdCAyICovDQojZGVmaW5lIFVTQl9DT1VOVDBfUlhfMF9OVU1fQkxPQ0tfMF8zICAgICAgICAgKDB4MDAwMDIwMDBVKSAgICAgICAgICAgICAgICAgICAgLyohPCBCaXQgMyAqLw0KI2RlZmluZSBVU0JfQ09VTlQwX1JYXzBfTlVNX0JMT0NLXzBfNCAgICAgICAgICgweDAwMDA0MDAwVSkgICAgICAgICAgICAgICAgICAgIC8qITwgQml0IDQgKi8NCg0KI2RlZmluZSBVU0JfQ09VTlQwX1JYXzBfQkxTSVpFXzAgICAgICAgICAgICAgICgweDAwMDA4MDAwVSkgICAgICAgICAgICAgICAgICAgIC8qITwgQkxvY2sgU0laRSAobG93KSAqLw0KDQovKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFVTQl9DT1VOVDBfUlhfMSByZWdpc3RlciAgKioqKioqKioqKioqKioqLw0KI2RlZmluZSBVU0JfQ09VTlQwX1JYXzFfQ09VTlQwX1JYXzEgICAgICAgICAgICgweDAzRkYwMDAwVSkgICAgICAgICAgICAgICAgICAgIC8qITwgUmVjZXB0aW9uIEJ5dGUgQ291bnQgKGhpZ2gpICovDQoNCiNkZWZpbmUgVVNCX0NPVU5UMF9SWF8xX05VTV9CTE9DS18xICAgICAgICAgICAoMHg3QzAwMDAwMFUpICAgICAgICAgICAgICAgICAgICAvKiE8IE5VTV9CTE9DS18xWzQ6MF0gYml0cyAoTnVtYmVyIG9mIGJsb2NrcykgKGhpZ2gpICovDQojZGVmaW5lIFVTQl9DT1VOVDBfUlhfMV9OVU1fQkxPQ0tfMV8wICAgICAgICAgKDB4MDQwMDAwMDBVKSAgICAgICAgICAgICAgICAgICAgLyohPCBCaXQgMSAqLw0KI2RlZmluZSBVU0JfQ09VTlQwX1JYXzFfTlVNX0JMT0NLXzFfMSAgICAgICAgICgweDA4MDAwMDAwVSkgICAgICAgICAgICAgICAgICAgIC8qITwgQml0IDEgKi8NCiNkZWZpbmUgVVNCX0NPVU5UMF9SWF8xX05VTV9CTE9DS18xXzIgICAgICAgICAoMHgxMDAwMDAwMFUpICAgICAgICAgICAgICAgICAgICAvKiE8IEJpdCAyICovDQojZGVmaW5lIFVTQl9DT1VOVDBfUlhfMV9OVU1fQkxPQ0tfMV8zICAgICAgICAgKDB4MjAwMDAwMDBVKSAgICAgICAgICAgICAgICAgICAgLyohPCBCaXQgMyAqLw0KI2RlZmluZSBVU0JfQ09VTlQwX1JYXzFfTlVNX0JMT0NLXzFfNCAgICAgICAgICgweDQwMDAwMDAwVSkgICAgICAgICAgICAgICAgICAgIC8qITwgQml0IDQgKi8NCg0KI2RlZmluZSBVU0JfQ09VTlQwX1JYXzFfQkxTSVpFXzEgICAgICAgICAgICAgICgweDgwMDAwMDAwVSkgICAgICAgICAgICAgICAgICAgIC8qITwgQkxvY2sgU0laRSAoaGlnaCkgKi8NCg0KLyoqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBVU0JfQ09VTlQxX1JYXzAgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKi8NCiNkZWZpbmUgVVNCX0NPVU5UMV9SWF8wX0NPVU5UMV9SWF8wICAgICAgICAgICAoMHgwMDAwMDNGRlUpICAgICAgICAgICAgICAgICAgICAvKiE8IFJlY2VwdGlvbiBCeXRlIENvdW50IChsb3cpICovDQoNCiNkZWZpbmUgVVNCX0NPVU5UMV9SWF8wX05VTV9CTE9DS18wICAgICAgICAgICAoMHgwMDAwN0MwMFUpICAgICAgICAgICAgICAgICAgICAvKiE8IE5VTV9CTE9DS18wWzQ6MF0gYml0cyAoTnVtYmVyIG9mIGJsb2NrcykgKGxvdykgKi8NCiNkZWZpbmUgVVNCX0NPVU5UMV9SWF8wX05VTV9CTE9DS18wXzAgICAgICAgICAoMHgwMDAwMDQwMFUpICAgICAgICAgICAgICAgICAgICAvKiE8IEJpdCAwICovDQojZGVmaW5lIFVTQl9DT1VOVDFfUlhfMF9OVU1fQkxPQ0tfMF8xICAgICAgICAgKDB4MDAwMDA4MDBVKSAgICAgICAgICAgICAgICAgICAgLyohPCBCaXQgMSAqLw0KI2RlZmluZSBVU0JfQ09VTlQxX1JYXzBfTlVNX0JMT0NLXzBfMiAgICAgICAgICgweDAwMDAxMDAwVSkgICAgICAgICAgICAgICAgICAgIC8qITwgQml0IDIgKi8NCiNkZWZpbmUgVVNCX0NPVU5UMV9SWF8wX05VTV9CTE9DS18wXzMgICAgICAgICAoMHgwMDAwMjAwMFUpICAgICAgICAgICAgICAgICAgICAvKiE8IEJpdCAzICovDQojZGVmaW5lIFVTQl9DT1VOVDFfUlhfMF9OVU1fQkxPQ0tfMF80ICAgICAgICAgKDB4MDAwMDQwMDBVKSAgICAgICAgICAgICAgICAgICAgLyohPCBCaXQgNCAqLw0KDQojZGVmaW5lIFVTQl9DT1VOVDFfUlhfMF9CTFNJWkVfMCAgICAgICAgICAgICAgKDB4MDAwMDgwMDBVKSAgICAgICAgICAgICAgICAgICAgLyohPCBCTG9jayBTSVpFIChsb3cpICovDQoNCi8qKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgVVNCX0NPVU5UMV9SWF8xIHJlZ2lzdGVyICAqKioqKioqKioqKioqKiovDQojZGVmaW5lIFVTQl9DT1VOVDFfUlhfMV9DT1VOVDFfUlhfMSAgICAgICAgICAgKDB4MDNGRjAwMDBVKSAgICAgICAgICAgICAgICAgICAgLyohPCBSZWNlcHRpb24gQnl0ZSBDb3VudCAoaGlnaCkgKi8NCg0KI2RlZmluZSBVU0JfQ09VTlQxX1JYXzFfTlVNX0JMT0NLXzEgICAgICAgICAgICgweDdDMDAwMDAwVSkgICAgICAgICAgICAgICAgICAgIC8qITwgTlVNX0JMT0NLXzFbNDowXSBiaXRzIChOdW1iZXIgb2YgYmxvY2tzKSAoaGlnaCkgKi8NCiNkZWZpbmUgVVNCX0NPVU5UMV9SWF8xX05VTV9CTE9DS18xXzAgICAgICAgICAoMHgwNDAwMDAwMFUpICAgICAgICAgICAgICAgICAgICAvKiE8IEJpdCAwICovDQojZGVmaW5lIFVTQl9DT1VOVDFfUlhfMV9OVU1fQkxPQ0tfMV8xICAgICAgICAgKDB4MDgwMDAwMDBVKSAgICAgICAgICAgICAgICAgICAgLyohPCBCaXQgMSAqLw0KI2RlZmluZSBVU0JfQ09VTlQxX1JYXzFfTlVNX0JMT0NLXzFfMiAgICAgICAgICgweDEwMDAwMDAwVSkgICAgICAgICAgICAgICAgICAgIC8qITwgQml0IDIgKi8NCiNkZWZpbmUgVVNCX0NPVU5UMV9SWF8xX05VTV9CTE9DS18xXzMgICAgICAgICAoMHgyMDAwMDAwMFUpICAgICAgICAgICAgICAgICAgICAvKiE8IEJpdCAzICovDQojZGVmaW5lIFVTQl9DT1VOVDFfUlhfMV9OVU1fQkxPQ0tfMV80ICAgICAgICAgKDB4NDAwMDAwMDBVKSAgICAgICAgICAgICAgICAgICAgLyohPCBCaXQgNCAqLw0KDQojZGVmaW5lIFVTQl9DT1VOVDFfUlhfMV9CTFNJWkVfMSAgICAgICAgICAgICAgKDB4ODAwMDAwMDBVKSAgICAgICAgICAgICAgICAgICAgLyohPCBCTG9jayBTSVpFIChoaWdoKSAqLw0KDQovKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFVTQl9DT1VOVDJfUlhfMCByZWdpc3RlciAgKioqKioqKioqKioqKioqLw0KI2RlZmluZSBVU0JfQ09VTlQyX1JYXzBfQ09VTlQyX1JYXzAgICAgICAgICAgICgweDAwMDAwM0ZGVSkgICAgICAgICAgICAgICAgICAgIC8qITwgUmVjZXB0aW9uIEJ5dGUgQ291bnQgKGxvdykgKi8NCg0KI2RlZmluZSBVU0JfQ09VTlQyX1JYXzBfTlVNX0JMT0NLXzAgICAgICAgICAgICgweDAwMDA3QzAwVSkgICAgICAgICAgICAgICAgICAgIC8qITwgTlVNX0JMT0NLXzBbNDowXSBiaXRzIChOdW1iZXIgb2YgYmxvY2tzKSAobG93KSAqLw0KI2RlZmluZSBVU0JfQ09VTlQyX1JYXzBfTlVNX0JMT0NLXzBfMCAgICAgICAgICgweDAwMDAwNDAwVSkgICAgICAgICAgICAgICAgICAgIC8qITwgQml0IDAgKi8NCiNkZWZpbmUgVVNCX0NPVU5UMl9SWF8wX05VTV9CTE9DS18wXzEgICAgICAgICAoMHgwMDAwMDgwMFUpICAgICAgICAgICAgICAgICAgICAvKiE8IEJpdCAxICovDQojZGVmaW5lIFVTQl9DT1VOVDJfUlhfMF9OVU1fQkxPQ0tfMF8yICAgICAgICAgKDB4MDAwMDEwMDBVKSAgICAgICAgICAgICAgICAgICAgLyohPCBCaXQgMiAqLw0KI2RlZmluZSBVU0JfQ09VTlQyX1JYXzBfTlVNX0JMT0NLXzBfMyAgICAgICAgICgweDAwMDAyMDAwVSkgICAgICAgICAgICAgICAgICAgIC8qITwgQml0IDMgKi8NCiNkZWZpbmUgVVNCX0NPVU5UMl9SWF8wX05VTV9CTE9DS18wXzQgICAgICAgICAoMHgwMDAwNDAwMFUpICAgICAgICAgICAgICAgICAgICAvKiE8IEJpdCA0ICovDQoNCiNkZWZpbmUgVVNCX0NPVU5UMl9SWF8wX0JMU0laRV8wICAgICAgICAgICAgICAoMHgwMDAwODAwMFUpICAgICAgICAgICAgICAgICAgICAvKiE8IEJMb2NrIFNJWkUgKGxvdykgKi8NCg0KLyoqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBVU0JfQ09VTlQyX1JYXzEgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKi8NCiNkZWZpbmUgVVNCX0NPVU5UMl9SWF8xX0NPVU5UMl9SWF8xICAgICAgICAgICAoMHgwM0ZGMDAwMFUpICAgICAgICAgICAgICAgICAgICAvKiE8IFJlY2VwdGlvbiBCeXRlIENvdW50IChoaWdoKSAqLw0KDQojZGVmaW5lIFVTQl9DT1VOVDJfUlhfMV9OVU1fQkxPQ0tfMSAgICAgICAgICAgKDB4N0MwMDAwMDBVKSAgICAgICAgICAgICAgICAgICAgLyohPCBOVU1fQkxPQ0tfMVs0OjBdIGJpdHMgKE51bWJlciBvZiBibG9ja3MpIChoaWdoKSAqLw0KI2RlZmluZSBVU0JfQ09VTlQyX1JYXzFfTlVNX0JMT0NLXzFfMCAgICAgICAgICgweDA0MDAwMDAwVSkgICAgICAgICAgICAgICAgICAgIC8qITwgQml0IDAgKi8NCiNkZWZpbmUgVVNCX0NPVU5UMl9SWF8xX05VTV9CTE9DS18xXzEgICAgICAgICAoMHgwODAwMDAwMFUpICAgICAgICAgICAgICAgICAgICAvKiE8IEJpdCAxICovDQojZGVmaW5lIFVTQl9DT1VOVDJfUlhfMV9OVU1fQkxPQ0tfMV8yICAgICAgICAgKDB4MTAwMDAwMDBVKSAgICAgICAgICAgICAgICAgICAgLyohPCBCaXQgMiAqLw0KI2RlZmluZSBVU0JfQ09VTlQyX1JYXzFfTlVNX0JMT0NLXzFfMyAgICAgICAgICgweDIwMDAwMDAwVSkgICAgICAgICAgICAgICAgICAgIC8qITwgQml0IDMgKi8NCiNkZWZpbmUgVVNCX0NPVU5UMl9SWF8xX05VTV9CTE9DS18xXzQgICAgICAgICAoMHg0MDAwMDAwMFUpICAgICAgICAgICAgICAgICAgICAvKiE8IEJpdCA0ICovDQoNCiNkZWZpbmUgVVNCX0NPVU5UMl9SWF8xX0JMU0laRV8xICAgICAgICAgICAgICAoMHg4MDAwMDAwMFUpICAgICAgICAgICAgICAgICAgICAvKiE8IEJMb2NrIFNJWkUgKGhpZ2gpICovDQoNCi8qKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgVVNCX0NPVU5UM19SWF8wIHJlZ2lzdGVyICAqKioqKioqKioqKioqKiovDQojZGVmaW5lIFVTQl9DT1VOVDNfUlhfMF9DT1VOVDNfUlhfMCAgICAgICAgICAgKDB4MDAwMDAzRkZVKSAgICAgICAgICAgICAgICAgICAgLyohPCBSZWNlcHRpb24gQnl0ZSBDb3VudCAobG93KSAqLw0KDQojZGVmaW5lIFVTQl9DT1VOVDNfUlhfMF9OVU1fQkxPQ0tfMCAgICAgICAgICAgKDB4MDAwMDdDMDBVKSAgICAgICAgICAgICAgICAgICAgLyohPCBOVU1fQkxPQ0tfMFs0OjBdIGJpdHMgKE51bWJlciBvZiBibG9ja3MpIChsb3cpICovDQojZGVmaW5lIFVTQl9DT1VOVDNfUlhfMF9OVU1fQkxPQ0tfMF8wICAgICAgICAgKDB4MDAwMDA0MDBVKSAgICAgICAgICAgICAgICAgICAgLyohPCBCaXQgMCAqLw0KI2RlZmluZSBVU0JfQ09VTlQzX1JYXzBfTlVNX0JMT0NLXzBfMSAgICAgICAgICgweDAwMDAwODAwVSkgICAgICAgICAgICAgICAgICAgIC8qITwgQml0IDEgKi8NCiNkZWZpbmUgVVNCX0NPVU5UM19SWF8wX05VTV9CTE9DS18wXzIgICAgICAgICAoMHgwMDAwMTAwMFUpICAgICAgICAgICAgICAgICAgICAvKiE8IEJpdCAyICovDQojZGVmaW5lIFVTQl9DT1VOVDNfUlhfMF9OVU1fQkxPQ0tfMF8zICAgICAgICAgKDB4MDAwMDIwMDBVKSAgICAgICAgICAgICAgICAgICAgLyohPCBCaXQgMyAqLw0KI2RlZmluZSBVU0JfQ09VTlQzX1JYXzBfTlVNX0JMT0NLXzBfNCAgICAgICAgICgweDAwMDA0MDAwVSkgICAgICAgICAgICAgICAgICAgIC8qITwgQml0IDQgKi8NCg0KI2RlZmluZSBVU0JfQ09VTlQzX1JYXzBfQkxTSVpFXzAgICAgICAgICAgICAgICgweDAwMDA4MDAwVSkgICAgICAgICAgICAgICAgICAgIC8qITwgQkxvY2sgU0laRSAobG93KSAqLw0KDQovKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFVTQl9DT1VOVDNfUlhfMSByZWdpc3RlciAgKioqKioqKioqKioqKioqLw0KI2RlZmluZSBVU0JfQ09VTlQzX1JYXzFfQ09VTlQzX1JYXzEgICAgICAgICAgICgweDAzRkYwMDAwVSkgICAgICAgICAgICAgICAgICAgIC8qITwgUmVjZXB0aW9uIEJ5dGUgQ291bnQgKGhpZ2gpICovDQoNCiNkZWZpbmUgVVNCX0NPVU5UM19SWF8xX05VTV9CTE9DS18xICAgICAgICAgICAoMHg3QzAwMDAwMFUpICAgICAgICAgICAgICAgICAgICAvKiE8IE5VTV9CTE9DS18xWzQ6MF0gYml0cyAoTnVtYmVyIG9mIGJsb2NrcykgKGhpZ2gpICovDQojZGVmaW5lIFVTQl9DT1VOVDNfUlhfMV9OVU1fQkxPQ0tfMV8wICAgICAgICAgKDB4MDQwMDAwMDBVKSAgICAgICAgICAgICAgICAgICAgLyohPCBCaXQgMCAqLw0KI2RlZmluZSBVU0JfQ09VTlQzX1JYXzFfTlVNX0JMT0NLXzFfMSAgICAgICAgICgweDA4MDAwMDAwVSkgICAgICAgICAgICAgICAgICAgIC8qITwgQml0IDEgKi8NCiNkZWZpbmUgVVNCX0NPVU5UM19SWF8xX05VTV9CTE9DS18xXzIgICAgICAgICAoMHgxMDAwMDAwMFUpICAgICAgICAgICAgICAgICAgICAvKiE8IEJpdCAyICovDQojZGVmaW5lIFVTQl9DT1VOVDNfUlhfMV9OVU1fQkxPQ0tfMV8zICAgICAgICAgKDB4MjAwMDAwMDBVKSAgICAgICAgICAgICAgICAgICAgLyohPCBCaXQgMyAqLw0KI2RlZmluZSBVU0JfQ09VTlQzX1JYXzFfTlVNX0JMT0NLXzFfNCAgICAgICAgICgweDQwMDAwMDAwVSkgICAgICAgICAgICAgICAgICAgIC8qITwgQml0IDQgKi8NCg0KI2RlZmluZSBVU0JfQ09VTlQzX1JYXzFfQkxTSVpFXzEgICAgICAgICAgICAgICgweDgwMDAwMDAwVSkgICAgICAgICAgICAgICAgICAgIC8qITwgQkxvY2sgU0laRSAoaGlnaCkgKi8NCg0KLyoqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBVU0JfQ09VTlQ0X1JYXzAgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKi8NCiNkZWZpbmUgVVNCX0NPVU5UNF9SWF8wX0NPVU5UNF9SWF8wICAgICAgICAgICAoMHgwMDAwMDNGRlUpICAgICAgICAgICAgICAgICAgICAvKiE8IFJlY2VwdGlvbiBCeXRlIENvdW50IChsb3cpICovDQoNCiNkZWZpbmUgVVNCX0NPVU5UNF9SWF8wX05VTV9CTE9DS18wICAgICAgICAgICAoMHgwMDAwN0MwMFUpICAgICAgICAgICAgICAgICAgICAvKiE8IE5VTV9CTE9DS18wWzQ6MF0gYml0cyAoTnVtYmVyIG9mIGJsb2NrcykgKGxvdykgKi8NCiNkZWZpbmUgVVNCX0NPVU5UNF9SWF8wX05VTV9CTE9DS18wXzAgICAgICAgICAoMHgwMDAwMDQwMFUpICAgICAgICAgICAgICAgICAgICAvKiE8IEJpdCAwICovDQojZGVmaW5lIFVTQl9DT1VOVDRfUlhfMF9OVU1fQkxPQ0tfMF8xICAgICAgICAgKDB4MDAwMDA4MDBVKSAgICAgICAgICAgICAgICAgICAgLyohPCBCaXQgMSAqLw0KI2RlZmluZSBVU0JfQ09VTlQ0X1JYXzBfTlVNX0JMT0NLXzBfMiAgICAgICAgICgweDAwMDAxMDAwVSkgICAgICAgICAgICAgICAgICAgIC8qITwgQml0IDIgKi8NCiNkZWZpbmUgVVNCX0NPVU5UNF9SWF8wX05VTV9CTE9DS18wXzMgICAgICAgICAoMHgwMDAwMjAwMFUpICAgICAgICAgICAgICAgICAgICAvKiE8IEJpdCAzICovDQojZGVmaW5lIFVTQl9DT1VOVDRfUlhfMF9OVU1fQkxPQ0tfMF80ICAgICAgICAgKDB4MDAwMDQwMDBVKSAgICAgICAgICAgICAgICAgICAgLyohPCBCaXQgNCAqLw0KDQojZGVmaW5lIFVTQl9DT1VOVDRfUlhfMF9CTFNJWkVfMCAgICAgICAgICAgICAgKDB4MDAwMDgwMDBVKSAgICAgICAgICAgICAgICAgICAgLyohPCBCTG9jayBTSVpFIChsb3cpICovDQoNCi8qKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgVVNCX0NPVU5UNF9SWF8xIHJlZ2lzdGVyICAqKioqKioqKioqKioqKiovDQojZGVmaW5lIFVTQl9DT1VOVDRfUlhfMV9DT1VOVDRfUlhfMSAgICAgICAgICAgKDB4MDNGRjAwMDBVKSAgICAgICAgICAgICAgICAgICAgLyohPCBSZWNlcHRpb24gQnl0ZSBDb3VudCAoaGlnaCkgKi8NCg0KI2RlZmluZSBVU0JfQ09VTlQ0X1JYXzFfTlVNX0JMT0NLXzEgICAgICAgICAgICgweDdDMDAwMDAwVSkgICAgICAgICAgICAgICAgICAgIC8qITwgTlVNX0JMT0NLXzFbNDowXSBiaXRzIChOdW1iZXIgb2YgYmxvY2tzKSAoaGlnaCkgKi8NCiNkZWZpbmUgVVNCX0NPVU5UNF9SWF8xX05VTV9CTE9DS18xXzAgICAgICAgICAoMHgwNDAwMDAwMFUpICAgICAgICAgICAgICAgICAgICAvKiE8IEJpdCAwICovDQojZGVmaW5lIFVTQl9DT1VOVDRfUlhfMV9OVU1fQkxPQ0tfMV8xICAgICAgICAgKDB4MDgwMDAwMDBVKSAgICAgICAgICAgICAgICAgICAgLyohPCBCaXQgMSAqLw0KI2RlZmluZSBVU0JfQ09VTlQ0X1JYXzFfTlVNX0JMT0NLXzFfMiAgICAgICAgICgweDEwMDAwMDAwVSkgICAgICAgICAgICAgICAgICAgIC8qITwgQml0IDIgKi8NCiNkZWZpbmUgVVNCX0NPVU5UNF9SWF8xX05VTV9CTE9DS18xXzMgICAgICAgICAoMHgyMDAwMDAwMFUpICAgICAgICAgICAgICAgICAgICAvKiE8IEJpdCAzICovDQojZGVmaW5lIFVTQl9DT1VOVDRfUlhfMV9OVU1fQkxPQ0tfMV80ICAgICAgICAgKDB4NDAwMDAwMDBVKSAgICAgICAgICAgICAgICAgICAgLyohPCBCaXQgNCAqLw0KDQojZGVmaW5lIFVTQl9DT1VOVDRfUlhfMV9CTFNJWkVfMSAgICAgICAgICAgICAgKDB4ODAwMDAwMDBVKSAgICAgICAgICAgICAgICAgICAgLyohPCBCTG9jayBTSVpFIChoaWdoKSAqLw0KDQovKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFVTQl9DT1VOVDVfUlhfMCByZWdpc3RlciAgKioqKioqKioqKioqKioqLw0KI2RlZmluZSBVU0JfQ09VTlQ1X1JYXzBfQ09VTlQ1X1JYXzAgICAgICAgICAgICgweDAwMDAwM0ZGVSkgICAgICAgICAgICAgICAgICAgIC8qITwgUmVjZXB0aW9uIEJ5dGUgQ291bnQgKGxvdykgKi8NCg0KI2RlZmluZSBVU0JfQ09VTlQ1X1JYXzBfTlVNX0JMT0NLXzAgICAgICAgICAgICgweDAwMDA3QzAwVSkgICAgICAgICAgICAgICAgICAgIC8qITwgTlVNX0JMT0NLXzBbNDowXSBiaXRzIChOdW1iZXIgb2YgYmxvY2tzKSAobG93KSAqLw0KI2RlZmluZSBVU0JfQ09VTlQ1X1JYXzBfTlVNX0JMT0NLXzBfMCAgICAgICAgICgweDAwMDAwNDAwVSkgICAgICAgICAgICAgICAgICAgIC8qITwgQml0IDAgKi8NCiNkZWZpbmUgVVNCX0NPVU5UNV9SWF8wX05VTV9CTE9DS18wXzEgICAgICAgICAoMHgwMDAwMDgwMFUpICAgICAgICAgICAgICAgICAgICAvKiE8IEJpdCAxICovDQojZGVmaW5lIFVTQl9DT1VOVDVfUlhfMF9OVU1fQkxPQ0tfMF8yICAgICAgICAgKDB4MDAwMDEwMDBVKSAgICAgICAgICAgICAgICAgICAgLyohPCBCaXQgMiAqLw0KI2RlZmluZSBVU0JfQ09VTlQ1X1JYXzBfTlVNX0JMT0NLXzBfMyAgICAgICAgICgweDAwMDAyMDAwVSkgICAgICAgICAgICAgICAgICAgIC8qITwgQml0IDMgKi8NCiNkZWZpbmUgVVNCX0NPVU5UNV9SWF8wX05VTV9CTE9DS18wXzQgICAgICAgICAoMHgwMDAwNDAwMFUpICAgICAgICAgICAgICAgICAgICAvKiE8IEJpdCA0ICovDQoNCiNkZWZpbmUgVVNCX0NPVU5UNV9SWF8wX0JMU0laRV8wICAgICAgICAgICAgICAoMHgwMDAwODAwMFUpICAgICAgICAgICAgICAgICAgICAvKiE8IEJMb2NrIFNJWkUgKGxvdykgKi8NCg0KLyoqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBVU0JfQ09VTlQ1X1JYXzEgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKi8NCiNkZWZpbmUgVVNCX0NPVU5UNV9SWF8xX0NPVU5UNV9SWF8xICAgICAgICAgICAoMHgwM0ZGMDAwMFUpICAgICAgICAgICAgICAgICAgICAvKiE8IFJlY2VwdGlvbiBCeXRlIENvdW50IChoaWdoKSAqLw0KDQojZGVmaW5lIFVTQl9DT1VOVDVfUlhfMV9OVU1fQkxPQ0tfMSAgICAgICAgICAgKDB4N0MwMDAwMDBVKSAgICAgICAgICAgICAgICAgICAgLyohPCBOVU1fQkxPQ0tfMVs0OjBdIGJpdHMgKE51bWJlciBvZiBibG9ja3MpIChoaWdoKSAqLw0KI2RlZmluZSBVU0JfQ09VTlQ1X1JYXzFfTlVNX0JMT0NLXzFfMCAgICAgICAgICgweDA0MDAwMDAwVSkgICAgICAgICAgICAgICAgICAgIC8qITwgQml0IDAgKi8NCiNkZWZpbmUgVVNCX0NPVU5UNV9SWF8xX05VTV9CTE9DS18xXzEgICAgICAgICAoMHgwODAwMDAwMFUpICAgICAgICAgICAgICAgICAgICAvKiE8IEJpdCAxICovDQojZGVmaW5lIFVTQl9DT1VOVDVfUlhfMV9OVU1fQkxPQ0tfMV8yICAgICAgICAgKDB4MTAwMDAwMDBVKSAgICAgICAgICAgICAgICAgICAgLyohPCBCaXQgMiAqLw0KI2RlZmluZSBVU0JfQ09VTlQ1X1JYXzFfTlVNX0JMT0NLXzFfMyAgICAgICAgICgweDIwMDAwMDAwVSkgICAgICAgICAgICAgICAgICAgIC8qITwgQml0IDMgKi8NCiNkZWZpbmUgVVNCX0NPVU5UNV9SWF8xX05VTV9CTE9DS18xXzQgICAgICAgICAoMHg0MDAwMDAwMFUpICAgICAgICAgICAgICAgICAgICAvKiE8IEJpdCA0ICovDQoNCiNkZWZpbmUgVVNCX0NPVU5UNV9SWF8xX0JMU0laRV8xICAgICAgICAgICAgICAoMHg4MDAwMDAwMFUpICAgICAgICAgICAgICAgICAgICAvKiE8IEJMb2NrIFNJWkUgKGhpZ2gpICovDQoNCi8qKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBVU0JfQ09VTlQ2X1JYXzAgIHJlZ2lzdGVyICAqKioqKioqKioqKioqKiovDQojZGVmaW5lIFVTQl9DT1VOVDZfUlhfMF9DT1VOVDZfUlhfMCAgICAgICAgICAgKDB4MDAwMDAzRkZVKSAgICAgICAgICAgICAgICAgICAgLyohPCBSZWNlcHRpb24gQnl0ZSBDb3VudCAobG93KSAqLw0KDQojZGVmaW5lIFVTQl9DT1VOVDZfUlhfMF9OVU1fQkxPQ0tfMCAgICAgICAgICAgKDB4MDAwMDdDMDBVKSAgICAgICAgICAgICAgICAgICAgLyohPCBOVU1fQkxPQ0tfMFs0OjBdIGJpdHMgKE51bWJlciBvZiBibG9ja3MpIChsb3cpICovDQojZGVmaW5lIFVTQl9DT1VOVDZfUlhfMF9OVU1fQkxPQ0tfMF8wICAgICAgICAgKDB4MDAwMDA0MDBVKSAgICAgICAgICAgICAgICAgICAgLyohPCBCaXQgMCAqLw0KI2RlZmluZSBVU0JfQ09VTlQ2X1JYXzBfTlVNX0JMT0NLXzBfMSAgICAgICAgICgweDAwMDAwODAwVSkgICAgICAgICAgICAgICAgICAgIC8qITwgQml0IDEgKi8NCiNkZWZpbmUgVVNCX0NPVU5UNl9SWF8wX05VTV9CTE9DS18wXzIgICAgICAgICAoMHgwMDAwMTAwMFUpICAgICAgICAgICAgICAgICAgICAvKiE8IEJpdCAyICovDQojZGVmaW5lIFVTQl9DT1VOVDZfUlhfMF9OVU1fQkxPQ0tfMF8zICAgICAgICAgKDB4MDAwMDIwMDBVKSAgICAgICAgICAgICAgICAgICAgLyohPCBCaXQgMyAqLw0KI2RlZmluZSBVU0JfQ09VTlQ2X1JYXzBfTlVNX0JMT0NLXzBfNCAgICAgICAgICgweDAwMDA0MDAwVSkgICAgICAgICAgICAgICAgICAgIC8qITwgQml0IDQgKi8NCg0KI2RlZmluZSBVU0JfQ09VTlQ2X1JYXzBfQkxTSVpFXzAgICAgICAgICAgICAgICgweDAwMDA4MDAwVSkgICAgICAgICAgICAgICAgICAgIC8qITwgQkxvY2sgU0laRSAobG93KSAqLw0KDQovKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFVTQl9DT1VOVDZfUlhfMSByZWdpc3RlciAgKioqKioqKioqKioqKioqLw0KI2RlZmluZSBVU0JfQ09VTlQ2X1JYXzFfQ09VTlQ2X1JYXzEgICAgICAgICAgICgweDAzRkYwMDAwVSkgICAgICAgICAgICAgICAgICAgIC8qITwgUmVjZXB0aW9uIEJ5dGUgQ291bnQgKGhpZ2gpICovDQoNCiNkZWZpbmUgVVNCX0NPVU5UNl9SWF8xX05VTV9CTE9DS18xICAgICAgICAgICAoMHg3QzAwMDAwMFUpICAgICAgICAgICAgICAgICAgICAvKiE8IE5VTV9CTE9DS18xWzQ6MF0gYml0cyAoTnVtYmVyIG9mIGJsb2NrcykgKGhpZ2gpICovDQojZGVmaW5lIFVTQl9DT1VOVDZfUlhfMV9OVU1fQkxPQ0tfMV8wICAgICAgICAgKDB4MDQwMDAwMDBVKSAgICAgICAgICAgICAgICAgICAgLyohPCBCaXQgMCAqLw0KI2RlZmluZSBVU0JfQ09VTlQ2X1JYXzFfTlVNX0JMT0NLXzFfMSAgICAgICAgICgweDA4MDAwMDAwVSkgICAgICAgICAgICAgICAgICAgIC8qITwgQml0IDEgKi8NCiNkZWZpbmUgVVNCX0NPVU5UNl9SWF8xX05VTV9CTE9DS18xXzIgICAgICAgICAoMHgxMDAwMDAwMFUpICAgICAgICAgICAgICAgICAgICAvKiE8IEJpdCAyICovDQojZGVmaW5lIFVTQl9DT1VOVDZfUlhfMV9OVU1fQkxPQ0tfMV8zICAgICAgICAgKDB4MjAwMDAwMDBVKSAgICAgICAgICAgICAgICAgICAgLyohPCBCaXQgMyAqLw0KI2RlZmluZSBVU0JfQ09VTlQ2X1JYXzFfTlVNX0JMT0NLXzFfNCAgICAgICAgICgweDQwMDAwMDAwVSkgICAgICAgICAgICAgICAgICAgIC8qITwgQml0IDQgKi8NCg0KI2RlZmluZSBVU0JfQ09VTlQ2X1JYXzFfQkxTSVpFXzEgICAgICAgICAgICAgICgweDgwMDAwMDAwVSkgICAgICAgICAgICAgICAgICAgIC8qITwgQkxvY2sgU0laRSAoaGlnaCkgKi8NCg0KLyoqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFVTQl9DT1VOVDdfUlhfMCByZWdpc3RlciAgKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgVVNCX0NPVU5UN19SWF8wX0NPVU5UN19SWF8wICAgICAgICAgICAoMHgwMDAwMDNGRlUpICAgICAgICAgICAgICAgICAgICAvKiE8IFJlY2VwdGlvbiBCeXRlIENvdW50IChsb3cpICovDQoNCiNkZWZpbmUgVVNCX0NPVU5UN19SWF8wX05VTV9CTE9DS18wICAgICAgICAgICAoMHgwMDAwN0MwMFUpICAgICAgICAgICAgICAgICAgICAvKiE8IE5VTV9CTE9DS18wWzQ6MF0gYml0cyAoTnVtYmVyIG9mIGJsb2NrcykgKGxvdykgKi8NCiNkZWZpbmUgVVNCX0NPVU5UN19SWF8wX05VTV9CTE9DS18wXzAgICAgICAgICAoMHgwMDAwMDQwMFUpICAgICAgICAgICAgICAgICAgICAvKiE8IEJpdCAwICovDQojZGVmaW5lIFVTQl9DT1VOVDdfUlhfMF9OVU1fQkxPQ0tfMF8xICAgICAgICAgKDB4MDAwMDA4MDBVKSAgICAgICAgICAgICAgICAgICAgLyohPCBCaXQgMSAqLw0KI2RlZmluZSBVU0JfQ09VTlQ3X1JYXzBfTlVNX0JMT0NLXzBfMiAgICAgICAgICgweDAwMDAxMDAwVSkgICAgICAgICAgICAgICAgICAgIC8qITwgQml0IDIgKi8NCiNkZWZpbmUgVVNCX0NPVU5UN19SWF8wX05VTV9CTE9DS18wXzMgICAgICAgICAoMHgwMDAwMjAwMFUpICAgICAgICAgICAgICAgICAgICAvKiE8IEJpdCAzICovDQojZGVmaW5lIFVTQl9DT1VOVDdfUlhfMF9OVU1fQkxPQ0tfMF80ICAgICAgICAgKDB4MDAwMDQwMDBVKSAgICAgICAgICAgICAgICAgICAgLyohPCBCaXQgNCAqLw0KDQojZGVmaW5lIFVTQl9DT1VOVDdfUlhfMF9CTFNJWkVfMCAgICAgICAgICAgICAgKDB4MDAwMDgwMDBVKSAgICAgICAgICAgICAgICAgICAgLyohPCBCTG9jayBTSVpFIChsb3cpICovDQoNCi8qKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBVU0JfQ09VTlQ3X1JYXzEgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKiovDQojZGVmaW5lIFVTQl9DT1VOVDdfUlhfMV9DT1VOVDdfUlhfMSAgICAgICAgICAgKDB4MDNGRjAwMDBVKSAgICAgICAgICAgICAgICAgICAgLyohPCBSZWNlcHRpb24gQnl0ZSBDb3VudCAoaGlnaCkgKi8NCg0KI2RlZmluZSBVU0JfQ09VTlQ3X1JYXzFfTlVNX0JMT0NLXzEgICAgICAgICAgICgweDdDMDAwMDAwVSkgICAgICAgICAgICAgICAgICAgIC8qITwgTlVNX0JMT0NLXzFbNDowXSBiaXRzIChOdW1iZXIgb2YgYmxvY2tzKSAoaGlnaCkgKi8NCiNkZWZpbmUgVVNCX0NPVU5UN19SWF8xX05VTV9CTE9DS18xXzAgICAgICAgICAoMHgwNDAwMDAwMFUpICAgICAgICAgICAgICAgICAgICAvKiE8IEJpdCAwICovDQojZGVmaW5lIFVTQl9DT1VOVDdfUlhfMV9OVU1fQkxPQ0tfMV8xICAgICAgICAgKDB4MDgwMDAwMDBVKSAgICAgICAgICAgICAgICAgICAgLyohPCBCaXQgMSAqLw0KI2RlZmluZSBVU0JfQ09VTlQ3X1JYXzFfTlVNX0JMT0NLXzFfMiAgICAgICAgICgweDEwMDAwMDAwVSkgICAgICAgICAgICAgICAgICAgIC8qITwgQml0IDIgKi8NCiNkZWZpbmUgVVNCX0NPVU5UN19SWF8xX05VTV9CTE9DS18xXzMgICAgICAgICAoMHgyMDAwMDAwMFUpICAgICAgICAgICAgICAgICAgICAvKiE8IEJpdCAzICovDQojZGVmaW5lIFVTQl9DT1VOVDdfUlhfMV9OVU1fQkxPQ0tfMV80ICAgICAgICAgKDB4NDAwMDAwMDBVKSAgICAgICAgICAgICAgICAgICAgLyohPCBCaXQgNCAqLw0KDQojZGVmaW5lIFVTQl9DT1VOVDdfUlhfMV9CTFNJWkVfMSAgICAgICAgICAgICAgKDB4ODAwMDAwMDBVKSAgICAgICAgICAgICAgICAgICAgLyohPCBCTG9jayBTSVpFIChoaWdoKSAqLw0KDQovKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLw0KLyogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8NCi8qICAgICAgICAgICAgICAgICAgICAgICAgIFdpbmRvdyBXQVRDSERPRyAoV1dERykgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovDQovKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLw0KLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8NCg0KLyoqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBXV0RHX0NSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgV1dER19DUl9UX1BvcyAgICAgICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgV1dER19DUl9UX01zayAgICAgICAgICAgICAgICAgICAgICAgKDB4N0ZVIDw8IFdXREdfQ1JfVF9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDAwN0YgKi8NCiNkZWZpbmUgV1dER19DUl9UICAgICAgICAgICAgICAgICAgICAgICAgICAgV1dER19DUl9UX01zayAgICAgICAgICAgICAgICAgICAgICAvKiE8IFRbNjowXSBiaXRzICg3LUJpdCBjb3VudGVyIChNU0IgdG8gTFNCKSkgKi8NCiNkZWZpbmUgV1dER19DUl9UXzAgICAgICAgICAgICAgICAgICAgICAgICAgKDB4MDFVIDw8IFdXREdfQ1JfVF9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDEgKi8NCiNkZWZpbmUgV1dER19DUl9UXzEgICAgICAgICAgICAgICAgICAgICAgICAgKDB4MDJVIDw8IFdXREdfQ1JfVF9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDIgKi8NCiNkZWZpbmUgV1dER19DUl9UXzIgICAgICAgICAgICAgICAgICAgICAgICAgKDB4MDRVIDw8IFdXREdfQ1JfVF9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDQgKi8NCiNkZWZpbmUgV1dER19DUl9UXzMgICAgICAgICAgICAgICAgICAgICAgICAgKDB4MDhVIDw8IFdXREdfQ1JfVF9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDggKi8NCiNkZWZpbmUgV1dER19DUl9UXzQgICAgICAgICAgICAgICAgICAgICAgICAgKDB4MTBVIDw8IFdXREdfQ1JfVF9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDAwMTAgKi8NCiNkZWZpbmUgV1dER19DUl9UXzUgICAgICAgICAgICAgICAgICAgICAgICAgKDB4MjBVIDw8IFdXREdfQ1JfVF9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDAwMjAgKi8NCiNkZWZpbmUgV1dER19DUl9UXzYgICAgICAgICAgICAgICAgICAgICAgICAgKDB4NDBVIDw8IFdXREdfQ1JfVF9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDAwNDAgKi8NCg0KLyogTGVnYWN5IGRlZmluZXMgKi8NCiNkZWZpbmUgIFdXREdfQ1JfVDAgV1dER19DUl9UXzANCiNkZWZpbmUgIFdXREdfQ1JfVDEgV1dER19DUl9UXzENCiNkZWZpbmUgIFdXREdfQ1JfVDIgV1dER19DUl9UXzINCiNkZWZpbmUgIFdXREdfQ1JfVDMgV1dER19DUl9UXzMNCiNkZWZpbmUgIFdXREdfQ1JfVDQgV1dER19DUl9UXzQNCiNkZWZpbmUgIFdXREdfQ1JfVDUgV1dER19DUl9UXzUNCiNkZWZpbmUgIFdXREdfQ1JfVDYgV1dER19DUl9UXzYNCg0KI2RlZmluZSBXV0RHX0NSX1dER0FfUG9zICAgICAgICAgICAgICAgICAgICAoN1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBXV0RHX0NSX1dER0FfTXNrICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBXV0RHX0NSX1dER0FfUG9zKSAgICAgICAgIC8qITwgMHgwMDAwMDA4MCAqLw0KI2RlZmluZSBXV0RHX0NSX1dER0EgICAgICAgICAgICAgICAgICAgICAgICBXV0RHX0NSX1dER0FfTXNrICAgICAgICAgICAgICAgICAgIC8qITwgQWN0aXZhdGlvbiBiaXQgKi8NCg0KLyoqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBXV0RHX0NGUiByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgV1dER19DRlJfV19Qb3MgICAgICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgV1dER19DRlJfV19Nc2sgICAgICAgICAgICAgICAgICAgICAgKDB4N0ZVIDw8IFdXREdfQ0ZSX1dfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDAwN0YgKi8NCiNkZWZpbmUgV1dER19DRlJfVyAgICAgICAgICAgICAgICAgICAgICAgICAgV1dER19DRlJfV19Nc2sgICAgICAgICAgICAgICAgICAgICAvKiE8IFdbNjowXSBiaXRzICg3LWJpdCB3aW5kb3cgdmFsdWUpICovDQojZGVmaW5lIFdXREdfQ0ZSX1dfMCAgICAgICAgICAgICAgICAgICAgICAgICgweDAxVSA8PCBXV0RHX0NGUl9XX1BvcykgICAgICAgICAgLyohPCAweDAwMDAwMDAxICovDQojZGVmaW5lIFdXREdfQ0ZSX1dfMSAgICAgICAgICAgICAgICAgICAgICAgICgweDAyVSA8PCBXV0RHX0NGUl9XX1BvcykgICAgICAgICAgLyohPCAweDAwMDAwMDAyICovDQojZGVmaW5lIFdXREdfQ0ZSX1dfMiAgICAgICAgICAgICAgICAgICAgICAgICgweDA0VSA8PCBXV0RHX0NGUl9XX1BvcykgICAgICAgICAgLyohPCAweDAwMDAwMDA0ICovDQojZGVmaW5lIFdXREdfQ0ZSX1dfMyAgICAgICAgICAgICAgICAgICAgICAgICgweDA4VSA8PCBXV0RHX0NGUl9XX1BvcykgICAgICAgICAgLyohPCAweDAwMDAwMDA4ICovDQojZGVmaW5lIFdXREdfQ0ZSX1dfNCAgICAgICAgICAgICAgICAgICAgICAgICgweDEwVSA8PCBXV0RHX0NGUl9XX1BvcykgICAgICAgICAgLyohPCAweDAwMDAwMDEwICovDQojZGVmaW5lIFdXREdfQ0ZSX1dfNSAgICAgICAgICAgICAgICAgICAgICAgICgweDIwVSA8PCBXV0RHX0NGUl9XX1BvcykgICAgICAgICAgLyohPCAweDAwMDAwMDIwICovDQojZGVmaW5lIFdXREdfQ0ZSX1dfNiAgICAgICAgICAgICAgICAgICAgICAgICgweDQwVSA8PCBXV0RHX0NGUl9XX1BvcykgICAgICAgICAgLyohPCAweDAwMDAwMDQwICovDQoNCi8qIExlZ2FjeSBkZWZpbmVzICovDQojZGVmaW5lICBXV0RHX0NGUl9XMCBXV0RHX0NGUl9XXzANCiNkZWZpbmUgIFdXREdfQ0ZSX1cxIFdXREdfQ0ZSX1dfMQ0KI2RlZmluZSAgV1dER19DRlJfVzIgV1dER19DRlJfV18yDQojZGVmaW5lICBXV0RHX0NGUl9XMyBXV0RHX0NGUl9XXzMNCiNkZWZpbmUgIFdXREdfQ0ZSX1c0IFdXREdfQ0ZSX1dfNA0KI2RlZmluZSAgV1dER19DRlJfVzUgV1dER19DRlJfV181DQojZGVmaW5lICBXV0RHX0NGUl9XNiBXV0RHX0NGUl9XXzYNCg0KI2RlZmluZSBXV0RHX0NGUl9XREdUQl9Qb3MgICAgICAgICAgICAgICAgICAoN1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBXV0RHX0NGUl9XREdUQl9Nc2sgICAgICAgICAgICAgICAgICAoMHgzVSA8PCBXV0RHX0NGUl9XREdUQl9Qb3MpICAgICAgIC8qITwgMHgwMDAwMDE4MCAqLw0KI2RlZmluZSBXV0RHX0NGUl9XREdUQiAgICAgICAgICAgICAgICAgICAgICBXV0RHX0NGUl9XREdUQl9Nc2sgICAgICAgICAgICAgICAgIC8qITwgV0RHVEJbMTowXSBiaXRzIChUaW1lciBCYXNlKSAqLw0KI2RlZmluZSBXV0RHX0NGUl9XREdUQl8wICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBXV0RHX0NGUl9XREdUQl9Qb3MpICAgICAgIC8qITwgMHgwMDAwMDA4MCAqLw0KI2RlZmluZSBXV0RHX0NGUl9XREdUQl8xICAgICAgICAgICAgICAgICAgICAoMHgyVSA8PCBXV0RHX0NGUl9XREdUQl9Qb3MpICAgICAgIC8qITwgMHgwMDAwMDEwMCAqLw0KDQovKiBMZWdhY3kgZGVmaW5lcyAqLw0KI2RlZmluZSAgV1dER19DRlJfV0RHVEIwIFdXREdfQ0ZSX1dER1RCXzANCiNkZWZpbmUgIFdXREdfQ0ZSX1dER1RCMSBXV0RHX0NGUl9XREdUQl8xDQoNCiNkZWZpbmUgV1dER19DRlJfRVdJX1BvcyAgICAgICAgICAgICAgICAgICAgKDlVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgV1dER19DRlJfRVdJX01zayAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgV1dER19DRlJfRVdJX1BvcykgICAgICAgICAvKiE8IDB4MDAwMDAyMDAgKi8NCiNkZWZpbmUgV1dER19DRlJfRVdJICAgICAgICAgICAgICAgICAgICAgICAgV1dER19DRlJfRVdJX01zayAgICAgICAgICAgICAgICAgICAvKiE8IEVhcmx5IFdha2V1cCBJbnRlcnJ1cHQgKi8NCg0KLyoqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBXV0RHX1NSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgV1dER19TUl9FV0lGX1BvcyAgICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgV1dER19TUl9FV0lGX01zayAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgV1dER19TUl9FV0lGX1BvcykgICAgICAgICAvKiE8IDB4MDAwMDAwMDEgKi8NCiNkZWZpbmUgV1dER19TUl9FV0lGICAgICAgICAgICAgICAgICAgICAgICAgV1dER19TUl9FV0lGX01zayAgICAgICAgICAgICAgICAgICAvKiE8IEVhcmx5IFdha2V1cCBJbnRlcnJ1cHQgRmxhZyAqLw0KDQovKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLw0KLyogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8NCi8qICAgICAgICAgICAgICAgICAgICAgICAgU3lzdGVtVGljayAoU3lzVGljaykgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovDQovKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLw0KLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8NCg0KLyoqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgU3lzVGlja19DVFJMIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgU3lzVGlja19DVFJMX0VOQUJMRSAgICAgICAgICAgICAgICAgKDB4MDAwMDAwMDFVKSAgICAgICAgICAgICAgICAgICAgICAvKiE8IENvdW50ZXIgZW5hYmxlICovDQojZGVmaW5lIFN5c1RpY2tfQ1RSTF9USUNLSU5UICAgICAgICAgICAgICAgICgweDAwMDAwMDAyVSkgICAgICAgICAgICAgICAgICAgICAgLyohPCBDb3VudGluZyBkb3duIHRvIDAgcGVuZHMgdGhlIFN5c1RpY2sgaGFuZGxlciAqLw0KI2RlZmluZSBTeXNUaWNrX0NUUkxfQ0xLU09VUkNFICAgICAgICAgICAgICAoMHgwMDAwMDAwNFUpICAgICAgICAgICAgICAgICAgICAgIC8qITwgQ2xvY2sgc291cmNlICovDQojZGVmaW5lIFN5c1RpY2tfQ1RSTF9DT1VOVEZMQUcgICAgICAgICAgICAgICgweDAwMDEwMDAwVSkgICAgICAgICAgICAgICAgICAgICAgLyohPCBDb3VudCBGbGFnICovDQoNCi8qKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFN5c1RpY2tfTE9BRCByZWdpc3RlciAgKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIFN5c1RpY2tfTE9BRF9SRUxPQUQgICAgICAgICAgICAgICAgICgweDAwRkZGRkZGVSkgICAgICAgICAgICAgICAgICAgICAgLyohPCBWYWx1ZSB0byBsb2FkIGludG8gdGhlIFN5c1RpY2sgQ3VycmVudCBWYWx1ZSBSZWdpc3RlciB3aGVuIHRoZSBjb3VudGVyIHJlYWNoZXMgMCAqLw0KDQovKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBTeXNUaWNrX1ZBTCByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBTeXNUaWNrX1ZBTF9DVVJSRU5UICAgICAgICAgICAgICAgICAoMHgwMEZGRkZGRlUpICAgICAgICAgICAgICAgICAgICAgIC8qITwgQ3VycmVudCB2YWx1ZSBhdCB0aGUgdGltZSB0aGUgcmVnaXN0ZXIgaXMgYWNjZXNzZWQgKi8NCg0KLyoqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgU3lzVGlja19DQUxJQiByZWdpc3RlciAgKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgU3lzVGlja19DQUxJQl9URU5NUyAgICAgICAgICAgICAgICAgKDB4MDBGRkZGRkZVKSAgICAgICAgICAgICAgICAgICAgICAvKiE8IFJlbG9hZCB2YWx1ZSB0byB1c2UgZm9yIDEwbXMgdGltaW5nICovDQojZGVmaW5lIFN5c1RpY2tfQ0FMSUJfU0tFVyAgICAgICAgICAgICAgICAgICgweDQwMDAwMDAwVSkgICAgICAgICAgICAgICAgICAgICAgLyohPCBDYWxpYnJhdGlvbiB2YWx1ZSBpcyBub3QgZXhhY3RseSAxMCBtcyAqLw0KI2RlZmluZSBTeXNUaWNrX0NBTElCX05PUkVGICAgICAgICAgICAgICAgICAoMHg4MDAwMDAwMFUpICAgICAgICAgICAgICAgICAgICAgIC8qITwgVGhlIHJlZmVyZW5jZSBjbG9jayBpcyBub3QgcHJvdmlkZWQgKi8NCg0KLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8NCi8qICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovDQovKiAgICAgICAgICAgICAgIE5lc3RlZCBWZWN0b3JlZCBJbnRlcnJ1cHQgQ29udHJvbGxlciAoTlZJQykgICAgICAgICAgICAgICAgICAqLw0KLyogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8NCi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovDQoNCi8qKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBOVklDX0lTRVIgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIE5WSUNfSVNFUl9TRVRFTkFfUG9zICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIE5WSUNfSVNFUl9TRVRFTkFfTXNrICAgICAgICAgICAgICAgICgweEZGRkZGRkZGVSA8PCBOVklDX0lTRVJfU0VURU5BX1BvcykgLyohPCAweEZGRkZGRkZGICovDQojZGVmaW5lIE5WSUNfSVNFUl9TRVRFTkEgICAgICAgICAgICAgICAgICAgIE5WSUNfSVNFUl9TRVRFTkFfTXNrICAgICAgICAgICAgICAgLyohPCBJbnRlcnJ1cHQgc2V0IGVuYWJsZSBiaXRzICovDQojZGVmaW5lIE5WSUNfSVNFUl9TRVRFTkFfMCAgICAgICAgICAgICAgICAgICgweDAwMDAwMDAxVSA8PCBOVklDX0lTRVJfU0VURU5BX1BvcykgLyohPCAweDAwMDAwMDAxICovDQojZGVmaW5lIE5WSUNfSVNFUl9TRVRFTkFfMSAgICAgICAgICAgICAgICAgICgweDAwMDAwMDAyVSA8PCBOVklDX0lTRVJfU0VURU5BX1BvcykgLyohPCAweDAwMDAwMDAyICovDQojZGVmaW5lIE5WSUNfSVNFUl9TRVRFTkFfMiAgICAgICAgICAgICAgICAgICgweDAwMDAwMDA0VSA8PCBOVklDX0lTRVJfU0VURU5BX1BvcykgLyohPCAweDAwMDAwMDA0ICovDQojZGVmaW5lIE5WSUNfSVNFUl9TRVRFTkFfMyAgICAgICAgICAgICAgICAgICgweDAwMDAwMDA4VSA8PCBOVklDX0lTRVJfU0VURU5BX1BvcykgLyohPCAweDAwMDAwMDA4ICovDQojZGVmaW5lIE5WSUNfSVNFUl9TRVRFTkFfNCAgICAgICAgICAgICAgICAgICgweDAwMDAwMDEwVSA8PCBOVklDX0lTRVJfU0VURU5BX1BvcykgLyohPCAweDAwMDAwMDEwICovDQojZGVmaW5lIE5WSUNfSVNFUl9TRVRFTkFfNSAgICAgICAgICAgICAgICAgICgweDAwMDAwMDIwVSA8PCBOVklDX0lTRVJfU0VURU5BX1BvcykgLyohPCAweDAwMDAwMDIwICovDQojZGVmaW5lIE5WSUNfSVNFUl9TRVRFTkFfNiAgICAgICAgICAgICAgICAgICgweDAwMDAwMDQwVSA8PCBOVklDX0lTRVJfU0VURU5BX1BvcykgLyohPCAweDAwMDAwMDQwICovDQojZGVmaW5lIE5WSUNfSVNFUl9TRVRFTkFfNyAgICAgICAgICAgICAgICAgICgweDAwMDAwMDgwVSA8PCBOVklDX0lTRVJfU0VURU5BX1BvcykgLyohPCAweDAwMDAwMDgwICovDQojZGVmaW5lIE5WSUNfSVNFUl9TRVRFTkFfOCAgICAgICAgICAgICAgICAgICgweDAwMDAwMTAwVSA8PCBOVklDX0lTRVJfU0VURU5BX1BvcykgLyohPCAweDAwMDAwMTAwICovDQojZGVmaW5lIE5WSUNfSVNFUl9TRVRFTkFfOSAgICAgICAgICAgICAgICAgICgweDAwMDAwMjAwVSA8PCBOVklDX0lTRVJfU0VURU5BX1BvcykgLyohPCAweDAwMDAwMjAwICovDQojZGVmaW5lIE5WSUNfSVNFUl9TRVRFTkFfMTAgICAgICAgICAgICAgICAgICgweDAwMDAwNDAwVSA8PCBOVklDX0lTRVJfU0VURU5BX1BvcykgLyohPCAweDAwMDAwNDAwICovDQojZGVmaW5lIE5WSUNfSVNFUl9TRVRFTkFfMTEgICAgICAgICAgICAgICAgICgweDAwMDAwODAwVSA8PCBOVklDX0lTRVJfU0VURU5BX1BvcykgLyohPCAweDAwMDAwODAwICovDQojZGVmaW5lIE5WSUNfSVNFUl9TRVRFTkFfMTIgICAgICAgICAgICAgICAgICgweDAwMDAxMDAwVSA8PCBOVklDX0lTRVJfU0VURU5BX1BvcykgLyohPCAweDAwMDAxMDAwICovDQojZGVmaW5lIE5WSUNfSVNFUl9TRVRFTkFfMTMgICAgICAgICAgICAgICAgICgweDAwMDAyMDAwVSA8PCBOVklDX0lTRVJfU0VURU5BX1BvcykgLyohPCAweDAwMDAyMDAwICovDQojZGVmaW5lIE5WSUNfSVNFUl9TRVRFTkFfMTQgICAgICAgICAgICAgICAgICgweDAwMDA0MDAwVSA8PCBOVklDX0lTRVJfU0VURU5BX1BvcykgLyohPCAweDAwMDA0MDAwICovDQojZGVmaW5lIE5WSUNfSVNFUl9TRVRFTkFfMTUgICAgICAgICAgICAgICAgICgweDAwMDA4MDAwVSA8PCBOVklDX0lTRVJfU0VURU5BX1BvcykgLyohPCAweDAwMDA4MDAwICovDQojZGVmaW5lIE5WSUNfSVNFUl9TRVRFTkFfMTYgICAgICAgICAgICAgICAgICgweDAwMDEwMDAwVSA8PCBOVklDX0lTRVJfU0VURU5BX1BvcykgLyohPCAweDAwMDEwMDAwICovDQojZGVmaW5lIE5WSUNfSVNFUl9TRVRFTkFfMTcgICAgICAgICAgICAgICAgICgweDAwMDIwMDAwVSA8PCBOVklDX0lTRVJfU0VURU5BX1BvcykgLyohPCAweDAwMDIwMDAwICovDQojZGVmaW5lIE5WSUNfSVNFUl9TRVRFTkFfMTggICAgICAgICAgICAgICAgICgweDAwMDQwMDAwVSA8PCBOVklDX0lTRVJfU0VURU5BX1BvcykgLyohPCAweDAwMDQwMDAwICovDQojZGVmaW5lIE5WSUNfSVNFUl9TRVRFTkFfMTkgICAgICAgICAgICAgICAgICgweDAwMDgwMDAwVSA8PCBOVklDX0lTRVJfU0VURU5BX1BvcykgLyohPCAweDAwMDgwMDAwICovDQojZGVmaW5lIE5WSUNfSVNFUl9TRVRFTkFfMjAgICAgICAgICAgICAgICAgICgweDAwMTAwMDAwVSA8PCBOVklDX0lTRVJfU0VURU5BX1BvcykgLyohPCAweDAwMTAwMDAwICovDQojZGVmaW5lIE5WSUNfSVNFUl9TRVRFTkFfMjEgICAgICAgICAgICAgICAgICgweDAwMjAwMDAwVSA8PCBOVklDX0lTRVJfU0VURU5BX1BvcykgLyohPCAweDAwMjAwMDAwICovDQojZGVmaW5lIE5WSUNfSVNFUl9TRVRFTkFfMjIgICAgICAgICAgICAgICAgICgweDAwNDAwMDAwVSA8PCBOVklDX0lTRVJfU0VURU5BX1BvcykgLyohPCAweDAwNDAwMDAwICovDQojZGVmaW5lIE5WSUNfSVNFUl9TRVRFTkFfMjMgICAgICAgICAgICAgICAgICgweDAwODAwMDAwVSA8PCBOVklDX0lTRVJfU0VURU5BX1BvcykgLyohPCAweDAwODAwMDAwICovDQojZGVmaW5lIE5WSUNfSVNFUl9TRVRFTkFfMjQgICAgICAgICAgICAgICAgICgweDAxMDAwMDAwVSA8PCBOVklDX0lTRVJfU0VURU5BX1BvcykgLyohPCAweDAxMDAwMDAwICovDQojZGVmaW5lIE5WSUNfSVNFUl9TRVRFTkFfMjUgICAgICAgICAgICAgICAgICgweDAyMDAwMDAwVSA8PCBOVklDX0lTRVJfU0VURU5BX1BvcykgLyohPCAweDAyMDAwMDAwICovDQojZGVmaW5lIE5WSUNfSVNFUl9TRVRFTkFfMjYgICAgICAgICAgICAgICAgICgweDA0MDAwMDAwVSA8PCBOVklDX0lTRVJfU0VURU5BX1BvcykgLyohPCAweDA0MDAwMDAwICovDQojZGVmaW5lIE5WSUNfSVNFUl9TRVRFTkFfMjcgICAgICAgICAgICAgICAgICgweDA4MDAwMDAwVSA8PCBOVklDX0lTRVJfU0VURU5BX1BvcykgLyohPCAweDA4MDAwMDAwICovDQojZGVmaW5lIE5WSUNfSVNFUl9TRVRFTkFfMjggICAgICAgICAgICAgICAgICgweDEwMDAwMDAwVSA8PCBOVklDX0lTRVJfU0VURU5BX1BvcykgLyohPCAweDEwMDAwMDAwICovDQojZGVmaW5lIE5WSUNfSVNFUl9TRVRFTkFfMjkgICAgICAgICAgICAgICAgICgweDIwMDAwMDAwVSA8PCBOVklDX0lTRVJfU0VURU5BX1BvcykgLyohPCAweDIwMDAwMDAwICovDQojZGVmaW5lIE5WSUNfSVNFUl9TRVRFTkFfMzAgICAgICAgICAgICAgICAgICgweDQwMDAwMDAwVSA8PCBOVklDX0lTRVJfU0VURU5BX1BvcykgLyohPCAweDQwMDAwMDAwICovDQojZGVmaW5lIE5WSUNfSVNFUl9TRVRFTkFfMzEgICAgICAgICAgICAgICAgICgweDgwMDAwMDAwVSA8PCBOVklDX0lTRVJfU0VURU5BX1BvcykgLyohPCAweDgwMDAwMDAwICovDQoNCi8qKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBOVklDX0lDRVIgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIE5WSUNfSUNFUl9DTFJFTkFfUG9zICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIE5WSUNfSUNFUl9DTFJFTkFfTXNrICAgICAgICAgICAgICAgICgweEZGRkZGRkZGVSA8PCBOVklDX0lDRVJfQ0xSRU5BX1BvcykgLyohPCAweEZGRkZGRkZGICovDQojZGVmaW5lIE5WSUNfSUNFUl9DTFJFTkEgICAgICAgICAgICAgICAgICAgIE5WSUNfSUNFUl9DTFJFTkFfTXNrICAgICAgICAgICAgICAgLyohPCBJbnRlcnJ1cHQgY2xlYXItZW5hYmxlIGJpdHMgKi8NCiNkZWZpbmUgTlZJQ19JQ0VSX0NMUkVOQV8wICAgICAgICAgICAgICAgICAgKDB4MDAwMDAwMDFVIDw8IE5WSUNfSUNFUl9DTFJFTkFfUG9zKSAvKiE8IDB4MDAwMDAwMDEgKi8NCiNkZWZpbmUgTlZJQ19JQ0VSX0NMUkVOQV8xICAgICAgICAgICAgICAgICAgKDB4MDAwMDAwMDJVIDw8IE5WSUNfSUNFUl9DTFJFTkFfUG9zKSAvKiE8IDB4MDAwMDAwMDIgKi8NCiNkZWZpbmUgTlZJQ19JQ0VSX0NMUkVOQV8yICAgICAgICAgICAgICAgICAgKDB4MDAwMDAwMDRVIDw8IE5WSUNfSUNFUl9DTFJFTkFfUG9zKSAvKiE8IDB4MDAwMDAwMDQgKi8NCiNkZWZpbmUgTlZJQ19JQ0VSX0NMUkVOQV8zICAgICAgICAgICAgICAgICAgKDB4MDAwMDAwMDhVIDw8IE5WSUNfSUNFUl9DTFJFTkFfUG9zKSAvKiE8IDB4MDAwMDAwMDggKi8NCiNkZWZpbmUgTlZJQ19JQ0VSX0NMUkVOQV80ICAgICAgICAgICAgICAgICAgKDB4MDAwMDAwMTBVIDw8IE5WSUNfSUNFUl9DTFJFTkFfUG9zKSAvKiE8IDB4MDAwMDAwMTAgKi8NCiNkZWZpbmUgTlZJQ19JQ0VSX0NMUkVOQV81ICAgICAgICAgICAgICAgICAgKDB4MDAwMDAwMjBVIDw8IE5WSUNfSUNFUl9DTFJFTkFfUG9zKSAvKiE8IDB4MDAwMDAwMjAgKi8NCiNkZWZpbmUgTlZJQ19JQ0VSX0NMUkVOQV82ICAgICAgICAgICAgICAgICAgKDB4MDAwMDAwNDBVIDw8IE5WSUNfSUNFUl9DTFJFTkFfUG9zKSAvKiE8IDB4MDAwMDAwNDAgKi8NCiNkZWZpbmUgTlZJQ19JQ0VSX0NMUkVOQV83ICAgICAgICAgICAgICAgICAgKDB4MDAwMDAwODBVIDw8IE5WSUNfSUNFUl9DTFJFTkFfUG9zKSAvKiE8IDB4MDAwMDAwODAgKi8NCiNkZWZpbmUgTlZJQ19JQ0VSX0NMUkVOQV84ICAgICAgICAgICAgICAgICAgKDB4MDAwMDAxMDBVIDw8IE5WSUNfSUNFUl9DTFJFTkFfUG9zKSAvKiE8IDB4MDAwMDAxMDAgKi8NCiNkZWZpbmUgTlZJQ19JQ0VSX0NMUkVOQV85ICAgICAgICAgICAgICAgICAgKDB4MDAwMDAyMDBVIDw8IE5WSUNfSUNFUl9DTFJFTkFfUG9zKSAvKiE8IDB4MDAwMDAyMDAgKi8NCiNkZWZpbmUgTlZJQ19JQ0VSX0NMUkVOQV8xMCAgICAgICAgICAgICAgICAgKDB4MDAwMDA0MDBVIDw8IE5WSUNfSUNFUl9DTFJFTkFfUG9zKSAvKiE8IDB4MDAwMDA0MDAgKi8NCiNkZWZpbmUgTlZJQ19JQ0VSX0NMUkVOQV8xMSAgICAgICAgICAgICAgICAgKDB4MDAwMDA4MDBVIDw8IE5WSUNfSUNFUl9DTFJFTkFfUG9zKSAvKiE8IDB4MDAwMDA4MDAgKi8NCiNkZWZpbmUgTlZJQ19JQ0VSX0NMUkVOQV8xMiAgICAgICAgICAgICAgICAgKDB4MDAwMDEwMDBVIDw8IE5WSUNfSUNFUl9DTFJFTkFfUG9zKSAvKiE8IDB4MDAwMDEwMDAgKi8NCiNkZWZpbmUgTlZJQ19JQ0VSX0NMUkVOQV8xMyAgICAgICAgICAgICAgICAgKDB4MDAwMDIwMDBVIDw8IE5WSUNfSUNFUl9DTFJFTkFfUG9zKSAvKiE8IDB4MDAwMDIwMDAgKi8NCiNkZWZpbmUgTlZJQ19JQ0VSX0NMUkVOQV8xNCAgICAgICAgICAgICAgICAgKDB4MDAwMDQwMDBVIDw8IE5WSUNfSUNFUl9DTFJFTkFfUG9zKSAvKiE8IDB4MDAwMDQwMDAgKi8NCiNkZWZpbmUgTlZJQ19JQ0VSX0NMUkVOQV8xNSAgICAgICAgICAgICAgICAgKDB4MDAwMDgwMDBVIDw8IE5WSUNfSUNFUl9DTFJFTkFfUG9zKSAvKiE8IDB4MDAwMDgwMDAgKi8NCiNkZWZpbmUgTlZJQ19JQ0VSX0NMUkVOQV8xNiAgICAgICAgICAgICAgICAgKDB4MDAwMTAwMDBVIDw8IE5WSUNfSUNFUl9DTFJFTkFfUG9zKSAvKiE8IDB4MDAwMTAwMDAgKi8NCiNkZWZpbmUgTlZJQ19JQ0VSX0NMUkVOQV8xNyAgICAgICAgICAgICAgICAgKDB4MDAwMjAwMDBVIDw8IE5WSUNfSUNFUl9DTFJFTkFfUG9zKSAvKiE8IDB4MDAwMjAwMDAgKi8NCiNkZWZpbmUgTlZJQ19JQ0VSX0NMUkVOQV8xOCAgICAgICAgICAgICAgICAgKDB4MDAwNDAwMDBVIDw8IE5WSUNfSUNFUl9DTFJFTkFfUG9zKSAvKiE8IDB4MDAwNDAwMDAgKi8NCiNkZWZpbmUgTlZJQ19JQ0VSX0NMUkVOQV8xOSAgICAgICAgICAgICAgICAgKDB4MDAwODAwMDBVIDw8IE5WSUNfSUNFUl9DTFJFTkFfUG9zKSAvKiE8IDB4MDAwODAwMDAgKi8NCiNkZWZpbmUgTlZJQ19JQ0VSX0NMUkVOQV8yMCAgICAgICAgICAgICAgICAgKDB4MDAxMDAwMDBVIDw8IE5WSUNfSUNFUl9DTFJFTkFfUG9zKSAvKiE8IDB4MDAxMDAwMDAgKi8NCiNkZWZpbmUgTlZJQ19JQ0VSX0NMUkVOQV8yMSAgICAgICAgICAgICAgICAgKDB4MDAyMDAwMDBVIDw8IE5WSUNfSUNFUl9DTFJFTkFfUG9zKSAvKiE8IDB4MDAyMDAwMDAgKi8NCiNkZWZpbmUgTlZJQ19JQ0VSX0NMUkVOQV8yMiAgICAgICAgICAgICAgICAgKDB4MDA0MDAwMDBVIDw8IE5WSUNfSUNFUl9DTFJFTkFfUG9zKSAvKiE8IDB4MDA0MDAwMDAgKi8NCiNkZWZpbmUgTlZJQ19JQ0VSX0NMUkVOQV8yMyAgICAgICAgICAgICAgICAgKDB4MDA4MDAwMDBVIDw8IE5WSUNfSUNFUl9DTFJFTkFfUG9zKSAvKiE8IDB4MDA4MDAwMDAgKi8NCiNkZWZpbmUgTlZJQ19JQ0VSX0NMUkVOQV8yNCAgICAgICAgICAgICAgICAgKDB4MDEwMDAwMDBVIDw8IE5WSUNfSUNFUl9DTFJFTkFfUG9zKSAvKiE8IDB4MDEwMDAwMDAgKi8NCiNkZWZpbmUgTlZJQ19JQ0VSX0NMUkVOQV8yNSAgICAgICAgICAgICAgICAgKDB4MDIwMDAwMDBVIDw8IE5WSUNfSUNFUl9DTFJFTkFfUG9zKSAvKiE8IDB4MDIwMDAwMDAgKi8NCiNkZWZpbmUgTlZJQ19JQ0VSX0NMUkVOQV8yNiAgICAgICAgICAgICAgICAgKDB4MDQwMDAwMDBVIDw8IE5WSUNfSUNFUl9DTFJFTkFfUG9zKSAvKiE8IDB4MDQwMDAwMDAgKi8NCiNkZWZpbmUgTlZJQ19JQ0VSX0NMUkVOQV8yNyAgICAgICAgICAgICAgICAgKDB4MDgwMDAwMDBVIDw8IE5WSUNfSUNFUl9DTFJFTkFfUG9zKSAvKiE8IDB4MDgwMDAwMDAgKi8NCiNkZWZpbmUgTlZJQ19JQ0VSX0NMUkVOQV8yOCAgICAgICAgICAgICAgICAgKDB4MTAwMDAwMDBVIDw8IE5WSUNfSUNFUl9DTFJFTkFfUG9zKSAvKiE8IDB4MTAwMDAwMDAgKi8NCiNkZWZpbmUgTlZJQ19JQ0VSX0NMUkVOQV8yOSAgICAgICAgICAgICAgICAgKDB4MjAwMDAwMDBVIDw8IE5WSUNfSUNFUl9DTFJFTkFfUG9zKSAvKiE8IDB4MjAwMDAwMDAgKi8NCiNkZWZpbmUgTlZJQ19JQ0VSX0NMUkVOQV8zMCAgICAgICAgICAgICAgICAgKDB4NDAwMDAwMDBVIDw8IE5WSUNfSUNFUl9DTFJFTkFfUG9zKSAvKiE8IDB4NDAwMDAwMDAgKi8NCiNkZWZpbmUgTlZJQ19JQ0VSX0NMUkVOQV8zMSAgICAgICAgICAgICAgICAgKDB4ODAwMDAwMDBVIDw8IE5WSUNfSUNFUl9DTFJFTkFfUG9zKSAvKiE8IDB4ODAwMDAwMDAgKi8NCg0KLyoqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIE5WSUNfSVNQUiByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgTlZJQ19JU1BSX1NFVFBFTkRfUG9zICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgTlZJQ19JU1BSX1NFVFBFTkRfTXNrICAgICAgICAgICAgICAgKDB4RkZGRkZGRkZVIDw8IE5WSUNfSVNQUl9TRVRQRU5EX1BvcykgLyohPCAweEZGRkZGRkZGICovDQojZGVmaW5lIE5WSUNfSVNQUl9TRVRQRU5EICAgICAgICAgICAgICAgICAgIE5WSUNfSVNQUl9TRVRQRU5EX01zayAgICAgICAgICAgICAgLyohPCBJbnRlcnJ1cHQgc2V0LXBlbmRpbmcgYml0cyAqLw0KI2RlZmluZSBOVklDX0lTUFJfU0VUUEVORF8wICAgICAgICAgICAgICAgICAoMHgwMDAwMDAwMVUgPDwgTlZJQ19JU1BSX1NFVFBFTkRfUG9zKSAvKiE8IDB4MDAwMDAwMDEgKi8NCiNkZWZpbmUgTlZJQ19JU1BSX1NFVFBFTkRfMSAgICAgICAgICAgICAgICAgKDB4MDAwMDAwMDJVIDw8IE5WSUNfSVNQUl9TRVRQRU5EX1BvcykgLyohPCAweDAwMDAwMDAyICovDQojZGVmaW5lIE5WSUNfSVNQUl9TRVRQRU5EXzIgICAgICAgICAgICAgICAgICgweDAwMDAwMDA0VSA8PCBOVklDX0lTUFJfU0VUUEVORF9Qb3MpIC8qITwgMHgwMDAwMDAwNCAqLw0KI2RlZmluZSBOVklDX0lTUFJfU0VUUEVORF8zICAgICAgICAgICAgICAgICAoMHgwMDAwMDAwOFUgPDwgTlZJQ19JU1BSX1NFVFBFTkRfUG9zKSAvKiE8IDB4MDAwMDAwMDggKi8NCiNkZWZpbmUgTlZJQ19JU1BSX1NFVFBFTkRfNCAgICAgICAgICAgICAgICAgKDB4MDAwMDAwMTBVIDw8IE5WSUNfSVNQUl9TRVRQRU5EX1BvcykgLyohPCAweDAwMDAwMDEwICovDQojZGVmaW5lIE5WSUNfSVNQUl9TRVRQRU5EXzUgICAgICAgICAgICAgICAgICgweDAwMDAwMDIwVSA8PCBOVklDX0lTUFJfU0VUUEVORF9Qb3MpIC8qITwgMHgwMDAwMDAyMCAqLw0KI2RlZmluZSBOVklDX0lTUFJfU0VUUEVORF82ICAgICAgICAgICAgICAgICAoMHgwMDAwMDA0MFUgPDwgTlZJQ19JU1BSX1NFVFBFTkRfUG9zKSAvKiE8IDB4MDAwMDAwNDAgKi8NCiNkZWZpbmUgTlZJQ19JU1BSX1NFVFBFTkRfNyAgICAgICAgICAgICAgICAgKDB4MDAwMDAwODBVIDw8IE5WSUNfSVNQUl9TRVRQRU5EX1BvcykgLyohPCAweDAwMDAwMDgwICovDQojZGVmaW5lIE5WSUNfSVNQUl9TRVRQRU5EXzggICAgICAgICAgICAgICAgICgweDAwMDAwMTAwVSA8PCBOVklDX0lTUFJfU0VUUEVORF9Qb3MpIC8qITwgMHgwMDAwMDEwMCAqLw0KI2RlZmluZSBOVklDX0lTUFJfU0VUUEVORF85ICAgICAgICAgICAgICAgICAoMHgwMDAwMDIwMFUgPDwgTlZJQ19JU1BSX1NFVFBFTkRfUG9zKSAvKiE8IDB4MDAwMDAyMDAgKi8NCiNkZWZpbmUgTlZJQ19JU1BSX1NFVFBFTkRfMTAgICAgICAgICAgICAgICAgKDB4MDAwMDA0MDBVIDw8IE5WSUNfSVNQUl9TRVRQRU5EX1BvcykgLyohPCAweDAwMDAwNDAwICovDQojZGVmaW5lIE5WSUNfSVNQUl9TRVRQRU5EXzExICAgICAgICAgICAgICAgICgweDAwMDAwODAwVSA8PCBOVklDX0lTUFJfU0VUUEVORF9Qb3MpIC8qITwgMHgwMDAwMDgwMCAqLw0KI2RlZmluZSBOVklDX0lTUFJfU0VUUEVORF8xMiAgICAgICAgICAgICAgICAoMHgwMDAwMTAwMFUgPDwgTlZJQ19JU1BSX1NFVFBFTkRfUG9zKSAvKiE8IDB4MDAwMDEwMDAgKi8NCiNkZWZpbmUgTlZJQ19JU1BSX1NFVFBFTkRfMTMgICAgICAgICAgICAgICAgKDB4MDAwMDIwMDBVIDw8IE5WSUNfSVNQUl9TRVRQRU5EX1BvcykgLyohPCAweDAwMDAyMDAwICovDQojZGVmaW5lIE5WSUNfSVNQUl9TRVRQRU5EXzE0ICAgICAgICAgICAgICAgICgweDAwMDA0MDAwVSA8PCBOVklDX0lTUFJfU0VUUEVORF9Qb3MpIC8qITwgMHgwMDAwNDAwMCAqLw0KI2RlZmluZSBOVklDX0lTUFJfU0VUUEVORF8xNSAgICAgICAgICAgICAgICAoMHgwMDAwODAwMFUgPDwgTlZJQ19JU1BSX1NFVFBFTkRfUG9zKSAvKiE8IDB4MDAwMDgwMDAgKi8NCiNkZWZpbmUgTlZJQ19JU1BSX1NFVFBFTkRfMTYgICAgICAgICAgICAgICAgKDB4MDAwMTAwMDBVIDw8IE5WSUNfSVNQUl9TRVRQRU5EX1BvcykgLyohPCAweDAwMDEwMDAwICovDQojZGVmaW5lIE5WSUNfSVNQUl9TRVRQRU5EXzE3ICAgICAgICAgICAgICAgICgweDAwMDIwMDAwVSA8PCBOVklDX0lTUFJfU0VUUEVORF9Qb3MpIC8qITwgMHgwMDAyMDAwMCAqLw0KI2RlZmluZSBOVklDX0lTUFJfU0VUUEVORF8xOCAgICAgICAgICAgICAgICAoMHgwMDA0MDAwMFUgPDwgTlZJQ19JU1BSX1NFVFBFTkRfUG9zKSAvKiE8IDB4MDAwNDAwMDAgKi8NCiNkZWZpbmUgTlZJQ19JU1BSX1NFVFBFTkRfMTkgICAgICAgICAgICAgICAgKDB4MDAwODAwMDBVIDw8IE5WSUNfSVNQUl9TRVRQRU5EX1BvcykgLyohPCAweDAwMDgwMDAwICovDQojZGVmaW5lIE5WSUNfSVNQUl9TRVRQRU5EXzIwICAgICAgICAgICAgICAgICgweDAwMTAwMDAwVSA8PCBOVklDX0lTUFJfU0VUUEVORF9Qb3MpIC8qITwgMHgwMDEwMDAwMCAqLw0KI2RlZmluZSBOVklDX0lTUFJfU0VUUEVORF8yMSAgICAgICAgICAgICAgICAoMHgwMDIwMDAwMFUgPDwgTlZJQ19JU1BSX1NFVFBFTkRfUG9zKSAvKiE8IDB4MDAyMDAwMDAgKi8NCiNkZWZpbmUgTlZJQ19JU1BSX1NFVFBFTkRfMjIgICAgICAgICAgICAgICAgKDB4MDA0MDAwMDBVIDw8IE5WSUNfSVNQUl9TRVRQRU5EX1BvcykgLyohPCAweDAwNDAwMDAwICovDQojZGVmaW5lIE5WSUNfSVNQUl9TRVRQRU5EXzIzICAgICAgICAgICAgICAgICgweDAwODAwMDAwVSA8PCBOVklDX0lTUFJfU0VUUEVORF9Qb3MpIC8qITwgMHgwMDgwMDAwMCAqLw0KI2RlZmluZSBOVklDX0lTUFJfU0VUUEVORF8yNCAgICAgICAgICAgICAgICAoMHgwMTAwMDAwMFUgPDwgTlZJQ19JU1BSX1NFVFBFTkRfUG9zKSAvKiE8IDB4MDEwMDAwMDAgKi8NCiNkZWZpbmUgTlZJQ19JU1BSX1NFVFBFTkRfMjUgICAgICAgICAgICAgICAgKDB4MDIwMDAwMDBVIDw8IE5WSUNfSVNQUl9TRVRQRU5EX1BvcykgLyohPCAweDAyMDAwMDAwICovDQojZGVmaW5lIE5WSUNfSVNQUl9TRVRQRU5EXzI2ICAgICAgICAgICAgICAgICgweDA0MDAwMDAwVSA8PCBOVklDX0lTUFJfU0VUUEVORF9Qb3MpIC8qITwgMHgwNDAwMDAwMCAqLw0KI2RlZmluZSBOVklDX0lTUFJfU0VUUEVORF8yNyAgICAgICAgICAgICAgICAoMHgwODAwMDAwMFUgPDwgTlZJQ19JU1BSX1NFVFBFTkRfUG9zKSAvKiE8IDB4MDgwMDAwMDAgKi8NCiNkZWZpbmUgTlZJQ19JU1BSX1NFVFBFTkRfMjggICAgICAgICAgICAgICAgKDB4MTAwMDAwMDBVIDw8IE5WSUNfSVNQUl9TRVRQRU5EX1BvcykgLyohPCAweDEwMDAwMDAwICovDQojZGVmaW5lIE5WSUNfSVNQUl9TRVRQRU5EXzI5ICAgICAgICAgICAgICAgICgweDIwMDAwMDAwVSA8PCBOVklDX0lTUFJfU0VUUEVORF9Qb3MpIC8qITwgMHgyMDAwMDAwMCAqLw0KI2RlZmluZSBOVklDX0lTUFJfU0VUUEVORF8zMCAgICAgICAgICAgICAgICAoMHg0MDAwMDAwMFUgPDwgTlZJQ19JU1BSX1NFVFBFTkRfUG9zKSAvKiE8IDB4NDAwMDAwMDAgKi8NCiNkZWZpbmUgTlZJQ19JU1BSX1NFVFBFTkRfMzEgICAgICAgICAgICAgICAgKDB4ODAwMDAwMDBVIDw8IE5WSUNfSVNQUl9TRVRQRU5EX1BvcykgLyohPCAweDgwMDAwMDAwICovDQoNCi8qKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBOVklDX0lDUFIgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIE5WSUNfSUNQUl9DTFJQRU5EX1BvcyAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIE5WSUNfSUNQUl9DTFJQRU5EX01zayAgICAgICAgICAgICAgICgweEZGRkZGRkZGVSA8PCBOVklDX0lDUFJfQ0xSUEVORF9Qb3MpIC8qITwgMHhGRkZGRkZGRiAqLw0KI2RlZmluZSBOVklDX0lDUFJfQ0xSUEVORCAgICAgICAgICAgICAgICAgICBOVklDX0lDUFJfQ0xSUEVORF9Nc2sgICAgICAgICAgICAgIC8qITwgSW50ZXJydXB0IGNsZWFyLXBlbmRpbmcgYml0cyAqLw0KI2RlZmluZSBOVklDX0lDUFJfQ0xSUEVORF8wICAgICAgICAgICAgICAgICAoMHgwMDAwMDAwMVUgPDwgTlZJQ19JQ1BSX0NMUlBFTkRfUG9zKSAvKiE8IDB4MDAwMDAwMDEgKi8NCiNkZWZpbmUgTlZJQ19JQ1BSX0NMUlBFTkRfMSAgICAgICAgICAgICAgICAgKDB4MDAwMDAwMDJVIDw8IE5WSUNfSUNQUl9DTFJQRU5EX1BvcykgLyohPCAweDAwMDAwMDAyICovDQojZGVmaW5lIE5WSUNfSUNQUl9DTFJQRU5EXzIgICAgICAgICAgICAgICAgICgweDAwMDAwMDA0VSA8PCBOVklDX0lDUFJfQ0xSUEVORF9Qb3MpIC8qITwgMHgwMDAwMDAwNCAqLw0KI2RlZmluZSBOVklDX0lDUFJfQ0xSUEVORF8zICAgICAgICAgICAgICAgICAoMHgwMDAwMDAwOFUgPDwgTlZJQ19JQ1BSX0NMUlBFTkRfUG9zKSAvKiE8IDB4MDAwMDAwMDggKi8NCiNkZWZpbmUgTlZJQ19JQ1BSX0NMUlBFTkRfNCAgICAgICAgICAgICAgICAgKDB4MDAwMDAwMTBVIDw8IE5WSUNfSUNQUl9DTFJQRU5EX1BvcykgLyohPCAweDAwMDAwMDEwICovDQojZGVmaW5lIE5WSUNfSUNQUl9DTFJQRU5EXzUgICAgICAgICAgICAgICAgICgweDAwMDAwMDIwVSA8PCBOVklDX0lDUFJfQ0xSUEVORF9Qb3MpIC8qITwgMHgwMDAwMDAyMCAqLw0KI2RlZmluZSBOVklDX0lDUFJfQ0xSUEVORF82ICAgICAgICAgICAgICAgICAoMHgwMDAwMDA0MFUgPDwgTlZJQ19JQ1BSX0NMUlBFTkRfUG9zKSAvKiE8IDB4MDAwMDAwNDAgKi8NCiNkZWZpbmUgTlZJQ19JQ1BSX0NMUlBFTkRfNyAgICAgICAgICAgICAgICAgKDB4MDAwMDAwODBVIDw8IE5WSUNfSUNQUl9DTFJQRU5EX1BvcykgLyohPCAweDAwMDAwMDgwICovDQojZGVmaW5lIE5WSUNfSUNQUl9DTFJQRU5EXzggICAgICAgICAgICAgICAgICgweDAwMDAwMTAwVSA8PCBOVklDX0lDUFJfQ0xSUEVORF9Qb3MpIC8qITwgMHgwMDAwMDEwMCAqLw0KI2RlZmluZSBOVklDX0lDUFJfQ0xSUEVORF85ICAgICAgICAgICAgICAgICAoMHgwMDAwMDIwMFUgPDwgTlZJQ19JQ1BSX0NMUlBFTkRfUG9zKSAvKiE8IDB4MDAwMDAyMDAgKi8NCiNkZWZpbmUgTlZJQ19JQ1BSX0NMUlBFTkRfMTAgICAgICAgICAgICAgICAgKDB4MDAwMDA0MDBVIDw8IE5WSUNfSUNQUl9DTFJQRU5EX1BvcykgLyohPCAweDAwMDAwNDAwICovDQojZGVmaW5lIE5WSUNfSUNQUl9DTFJQRU5EXzExICAgICAgICAgICAgICAgICgweDAwMDAwODAwVSA8PCBOVklDX0lDUFJfQ0xSUEVORF9Qb3MpIC8qITwgMHgwMDAwMDgwMCAqLw0KI2RlZmluZSBOVklDX0lDUFJfQ0xSUEVORF8xMiAgICAgICAgICAgICAgICAoMHgwMDAwMTAwMFUgPDwgTlZJQ19JQ1BSX0NMUlBFTkRfUG9zKSAvKiE8IDB4MDAwMDEwMDAgKi8NCiNkZWZpbmUgTlZJQ19JQ1BSX0NMUlBFTkRfMTMgICAgICAgICAgICAgICAgKDB4MDAwMDIwMDBVIDw8IE5WSUNfSUNQUl9DTFJQRU5EX1BvcykgLyohPCAweDAwMDAyMDAwICovDQojZGVmaW5lIE5WSUNfSUNQUl9DTFJQRU5EXzE0ICAgICAgICAgICAgICAgICgweDAwMDA0MDAwVSA8PCBOVklDX0lDUFJfQ0xSUEVORF9Qb3MpIC8qITwgMHgwMDAwNDAwMCAqLw0KI2RlZmluZSBOVklDX0lDUFJfQ0xSUEVORF8xNSAgICAgICAgICAgICAgICAoMHgwMDAwODAwMFUgPDwgTlZJQ19JQ1BSX0NMUlBFTkRfUG9zKSAvKiE8IDB4MDAwMDgwMDAgKi8NCiNkZWZpbmUgTlZJQ19JQ1BSX0NMUlBFTkRfMTYgICAgICAgICAgICAgICAgKDB4MDAwMTAwMDBVIDw8IE5WSUNfSUNQUl9DTFJQRU5EX1BvcykgLyohPCAweDAwMDEwMDAwICovDQojZGVmaW5lIE5WSUNfSUNQUl9DTFJQRU5EXzE3ICAgICAgICAgICAgICAgICgweDAwMDIwMDAwVSA8PCBOVklDX0lDUFJfQ0xSUEVORF9Qb3MpIC8qITwgMHgwMDAyMDAwMCAqLw0KI2RlZmluZSBOVklDX0lDUFJfQ0xSUEVORF8xOCAgICAgICAgICAgICAgICAoMHgwMDA0MDAwMFUgPDwgTlZJQ19JQ1BSX0NMUlBFTkRfUG9zKSAvKiE8IDB4MDAwNDAwMDAgKi8NCiNkZWZpbmUgTlZJQ19JQ1BSX0NMUlBFTkRfMTkgICAgICAgICAgICAgICAgKDB4MDAwODAwMDBVIDw8IE5WSUNfSUNQUl9DTFJQRU5EX1BvcykgLyohPCAweDAwMDgwMDAwICovDQojZGVmaW5lIE5WSUNfSUNQUl9DTFJQRU5EXzIwICAgICAgICAgICAgICAgICgweDAwMTAwMDAwVSA8PCBOVklDX0lDUFJfQ0xSUEVORF9Qb3MpIC8qITwgMHgwMDEwMDAwMCAqLw0KI2RlZmluZSBOVklDX0lDUFJfQ0xSUEVORF8yMSAgICAgICAgICAgICAgICAoMHgwMDIwMDAwMFUgPDwgTlZJQ19JQ1BSX0NMUlBFTkRfUG9zKSAvKiE8IDB4MDAyMDAwMDAgKi8NCiNkZWZpbmUgTlZJQ19JQ1BSX0NMUlBFTkRfMjIgICAgICAgICAgICAgICAgKDB4MDA0MDAwMDBVIDw8IE5WSUNfSUNQUl9DTFJQRU5EX1BvcykgLyohPCAweDAwNDAwMDAwICovDQojZGVmaW5lIE5WSUNfSUNQUl9DTFJQRU5EXzIzICAgICAgICAgICAgICAgICgweDAwODAwMDAwVSA8PCBOVklDX0lDUFJfQ0xSUEVORF9Qb3MpIC8qITwgMHgwMDgwMDAwMCAqLw0KI2RlZmluZSBOVklDX0lDUFJfQ0xSUEVORF8yNCAgICAgICAgICAgICAgICAoMHgwMTAwMDAwMFUgPDwgTlZJQ19JQ1BSX0NMUlBFTkRfUG9zKSAvKiE8IDB4MDEwMDAwMDAgKi8NCiNkZWZpbmUgTlZJQ19JQ1BSX0NMUlBFTkRfMjUgICAgICAgICAgICAgICAgKDB4MDIwMDAwMDBVIDw8IE5WSUNfSUNQUl9DTFJQRU5EX1BvcykgLyohPCAweDAyMDAwMDAwICovDQojZGVmaW5lIE5WSUNfSUNQUl9DTFJQRU5EXzI2ICAgICAgICAgICAgICAgICgweDA0MDAwMDAwVSA8PCBOVklDX0lDUFJfQ0xSUEVORF9Qb3MpIC8qITwgMHgwNDAwMDAwMCAqLw0KI2RlZmluZSBOVklDX0lDUFJfQ0xSUEVORF8yNyAgICAgICAgICAgICAgICAoMHgwODAwMDAwMFUgPDwgTlZJQ19JQ1BSX0NMUlBFTkRfUG9zKSAvKiE8IDB4MDgwMDAwMDAgKi8NCiNkZWZpbmUgTlZJQ19JQ1BSX0NMUlBFTkRfMjggICAgICAgICAgICAgICAgKDB4MTAwMDAwMDBVIDw8IE5WSUNfSUNQUl9DTFJQRU5EX1BvcykgLyohPCAweDEwMDAwMDAwICovDQojZGVmaW5lIE5WSUNfSUNQUl9DTFJQRU5EXzI5ICAgICAgICAgICAgICAgICgweDIwMDAwMDAwVSA8PCBOVklDX0lDUFJfQ0xSUEVORF9Qb3MpIC8qITwgMHgyMDAwMDAwMCAqLw0KI2RlZmluZSBOVklDX0lDUFJfQ0xSUEVORF8zMCAgICAgICAgICAgICAgICAoMHg0MDAwMDAwMFUgPDwgTlZJQ19JQ1BSX0NMUlBFTkRfUG9zKSAvKiE8IDB4NDAwMDAwMDAgKi8NCiNkZWZpbmUgTlZJQ19JQ1BSX0NMUlBFTkRfMzEgICAgICAgICAgICAgICAgKDB4ODAwMDAwMDBVIDw8IE5WSUNfSUNQUl9DTFJQRU5EX1BvcykgLyohPCAweDgwMDAwMDAwICovDQoNCi8qKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBOVklDX0lBQlIgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIE5WSUNfSUFCUl9BQ1RJVkVfUG9zICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIE5WSUNfSUFCUl9BQ1RJVkVfTXNrICAgICAgICAgICAgICAgICgweEZGRkZGRkZGVSA8PCBOVklDX0lBQlJfQUNUSVZFX1BvcykgLyohPCAweEZGRkZGRkZGICovDQojZGVmaW5lIE5WSUNfSUFCUl9BQ1RJVkUgICAgICAgICAgICAgICAgICAgIE5WSUNfSUFCUl9BQ1RJVkVfTXNrICAgICAgICAgICAgICAgLyohPCBJbnRlcnJ1cHQgYWN0aXZlIGZsYWdzICovDQojZGVmaW5lIE5WSUNfSUFCUl9BQ1RJVkVfMCAgICAgICAgICAgICAgICAgICgweDAwMDAwMDAxVSA8PCBOVklDX0lBQlJfQUNUSVZFX1BvcykgLyohPCAweDAwMDAwMDAxICovDQojZGVmaW5lIE5WSUNfSUFCUl9BQ1RJVkVfMSAgICAgICAgICAgICAgICAgICgweDAwMDAwMDAyVSA8PCBOVklDX0lBQlJfQUNUSVZFX1BvcykgLyohPCAweDAwMDAwMDAyICovDQojZGVmaW5lIE5WSUNfSUFCUl9BQ1RJVkVfMiAgICAgICAgICAgICAgICAgICgweDAwMDAwMDA0VSA8PCBOVklDX0lBQlJfQUNUSVZFX1BvcykgLyohPCAweDAwMDAwMDA0ICovDQojZGVmaW5lIE5WSUNfSUFCUl9BQ1RJVkVfMyAgICAgICAgICAgICAgICAgICgweDAwMDAwMDA4VSA8PCBOVklDX0lBQlJfQUNUSVZFX1BvcykgLyohPCAweDAwMDAwMDA4ICovDQojZGVmaW5lIE5WSUNfSUFCUl9BQ1RJVkVfNCAgICAgICAgICAgICAgICAgICgweDAwMDAwMDEwVSA8PCBOVklDX0lBQlJfQUNUSVZFX1BvcykgLyohPCAweDAwMDAwMDEwICovDQojZGVmaW5lIE5WSUNfSUFCUl9BQ1RJVkVfNSAgICAgICAgICAgICAgICAgICgweDAwMDAwMDIwVSA8PCBOVklDX0lBQlJfQUNUSVZFX1BvcykgLyohPCAweDAwMDAwMDIwICovDQojZGVmaW5lIE5WSUNfSUFCUl9BQ1RJVkVfNiAgICAgICAgICAgICAgICAgICgweDAwMDAwMDQwVSA8PCBOVklDX0lBQlJfQUNUSVZFX1BvcykgLyohPCAweDAwMDAwMDQwICovDQojZGVmaW5lIE5WSUNfSUFCUl9BQ1RJVkVfNyAgICAgICAgICAgICAgICAgICgweDAwMDAwMDgwVSA8PCBOVklDX0lBQlJfQUNUSVZFX1BvcykgLyohPCAweDAwMDAwMDgwICovDQojZGVmaW5lIE5WSUNfSUFCUl9BQ1RJVkVfOCAgICAgICAgICAgICAgICAgICgweDAwMDAwMTAwVSA8PCBOVklDX0lBQlJfQUNUSVZFX1BvcykgLyohPCAweDAwMDAwMTAwICovDQojZGVmaW5lIE5WSUNfSUFCUl9BQ1RJVkVfOSAgICAgICAgICAgICAgICAgICgweDAwMDAwMjAwVSA8PCBOVklDX0lBQlJfQUNUSVZFX1BvcykgLyohPCAweDAwMDAwMjAwICovDQojZGVmaW5lIE5WSUNfSUFCUl9BQ1RJVkVfMTAgICAgICAgICAgICAgICAgICgweDAwMDAwNDAwVSA8PCBOVklDX0lBQlJfQUNUSVZFX1BvcykgLyohPCAweDAwMDAwNDAwICovDQojZGVmaW5lIE5WSUNfSUFCUl9BQ1RJVkVfMTEgICAgICAgICAgICAgICAgICgweDAwMDAwODAwVSA8PCBOVklDX0lBQlJfQUNUSVZFX1BvcykgLyohPCAweDAwMDAwODAwICovDQojZGVmaW5lIE5WSUNfSUFCUl9BQ1RJVkVfMTIgICAgICAgICAgICAgICAgICgweDAwMDAxMDAwVSA8PCBOVklDX0lBQlJfQUNUSVZFX1BvcykgLyohPCAweDAwMDAxMDAwICovDQojZGVmaW5lIE5WSUNfSUFCUl9BQ1RJVkVfMTMgICAgICAgICAgICAgICAgICgweDAwMDAyMDAwVSA8PCBOVklDX0lBQlJfQUNUSVZFX1BvcykgLyohPCAweDAwMDAyMDAwICovDQojZGVmaW5lIE5WSUNfSUFCUl9BQ1RJVkVfMTQgICAgICAgICAgICAgICAgICgweDAwMDA0MDAwVSA8PCBOVklDX0lBQlJfQUNUSVZFX1BvcykgLyohPCAweDAwMDA0MDAwICovDQojZGVmaW5lIE5WSUNfSUFCUl9BQ1RJVkVfMTUgICAgICAgICAgICAgICAgICgweDAwMDA4MDAwVSA8PCBOVklDX0lBQlJfQUNUSVZFX1BvcykgLyohPCAweDAwMDA4MDAwICovDQojZGVmaW5lIE5WSUNfSUFCUl9BQ1RJVkVfMTYgICAgICAgICAgICAgICAgICgweDAwMDEwMDAwVSA8PCBOVklDX0lBQlJfQUNUSVZFX1BvcykgLyohPCAweDAwMDEwMDAwICovDQojZGVmaW5lIE5WSUNfSUFCUl9BQ1RJVkVfMTcgICAgICAgICAgICAgICAgICgweDAwMDIwMDAwVSA8PCBOVklDX0lBQlJfQUNUSVZFX1BvcykgLyohPCAweDAwMDIwMDAwICovDQojZGVmaW5lIE5WSUNfSUFCUl9BQ1RJVkVfMTggICAgICAgICAgICAgICAgICgweDAwMDQwMDAwVSA8PCBOVklDX0lBQlJfQUNUSVZFX1BvcykgLyohPCAweDAwMDQwMDAwICovDQojZGVmaW5lIE5WSUNfSUFCUl9BQ1RJVkVfMTkgICAgICAgICAgICAgICAgICgweDAwMDgwMDAwVSA8PCBOVklDX0lBQlJfQUNUSVZFX1BvcykgLyohPCAweDAwMDgwMDAwICovDQojZGVmaW5lIE5WSUNfSUFCUl9BQ1RJVkVfMjAgICAgICAgICAgICAgICAgICgweDAwMTAwMDAwVSA8PCBOVklDX0lBQlJfQUNUSVZFX1BvcykgLyohPCAweDAwMTAwMDAwICovDQojZGVmaW5lIE5WSUNfSUFCUl9BQ1RJVkVfMjEgICAgICAgICAgICAgICAgICgweDAwMjAwMDAwVSA8PCBOVklDX0lBQlJfQUNUSVZFX1BvcykgLyohPCAweDAwMjAwMDAwICovDQojZGVmaW5lIE5WSUNfSUFCUl9BQ1RJVkVfMjIgICAgICAgICAgICAgICAgICgweDAwNDAwMDAwVSA8PCBOVklDX0lBQlJfQUNUSVZFX1BvcykgLyohPCAweDAwNDAwMDAwICovDQojZGVmaW5lIE5WSUNfSUFCUl9BQ1RJVkVfMjMgICAgICAgICAgICAgICAgICgweDAwODAwMDAwVSA8PCBOVklDX0lBQlJfQUNUSVZFX1BvcykgLyohPCAweDAwODAwMDAwICovDQojZGVmaW5lIE5WSUNfSUFCUl9BQ1RJVkVfMjQgICAgICAgICAgICAgICAgICgweDAxMDAwMDAwVSA8PCBOVklDX0lBQlJfQUNUSVZFX1BvcykgLyohPCAweDAxMDAwMDAwICovDQojZGVmaW5lIE5WSUNfSUFCUl9BQ1RJVkVfMjUgICAgICAgICAgICAgICAgICgweDAyMDAwMDAwVSA8PCBOVklDX0lBQlJfQUNUSVZFX1BvcykgLyohPCAweDAyMDAwMDAwICovDQojZGVmaW5lIE5WSUNfSUFCUl9BQ1RJVkVfMjYgICAgICAgICAgICAgICAgICgweDA0MDAwMDAwVSA8PCBOVklDX0lBQlJfQUNUSVZFX1BvcykgLyohPCAweDA0MDAwMDAwICovDQojZGVmaW5lIE5WSUNfSUFCUl9BQ1RJVkVfMjcgICAgICAgICAgICAgICAgICgweDA4MDAwMDAwVSA8PCBOVklDX0lBQlJfQUNUSVZFX1BvcykgLyohPCAweDA4MDAwMDAwICovDQojZGVmaW5lIE5WSUNfSUFCUl9BQ1RJVkVfMjggICAgICAgICAgICAgICAgICgweDEwMDAwMDAwVSA8PCBOVklDX0lBQlJfQUNUSVZFX1BvcykgLyohPCAweDEwMDAwMDAwICovDQojZGVmaW5lIE5WSUNfSUFCUl9BQ1RJVkVfMjkgICAgICAgICAgICAgICAgICgweDIwMDAwMDAwVSA8PCBOVklDX0lBQlJfQUNUSVZFX1BvcykgLyohPCAweDIwMDAwMDAwICovDQojZGVmaW5lIE5WSUNfSUFCUl9BQ1RJVkVfMzAgICAgICAgICAgICAgICAgICgweDQwMDAwMDAwVSA8PCBOVklDX0lBQlJfQUNUSVZFX1BvcykgLyohPCAweDQwMDAwMDAwICovDQojZGVmaW5lIE5WSUNfSUFCUl9BQ1RJVkVfMzEgICAgICAgICAgICAgICAgICgweDgwMDAwMDAwVSA8PCBOVklDX0lBQlJfQUNUSVZFX1BvcykgLyohPCAweDgwMDAwMDAwICovDQoNCi8qKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBOVklDX1BSSTAgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIE5WSUNfSVBSMF9QUklfMCAgICAgICAgICAgICAgICAgICAgICgweDAwMDAwMEZGVSkgICAgICAgICAgICAgICAgICAgICAgLyohPCBQcmlvcml0eSBvZiBpbnRlcnJ1cHQgMCAqLw0KI2RlZmluZSBOVklDX0lQUjBfUFJJXzEgICAgICAgICAgICAgICAgICAgICAoMHgwMDAwRkYwMFUpICAgICAgICAgICAgICAgICAgICAgIC8qITwgUHJpb3JpdHkgb2YgaW50ZXJydXB0IDEgKi8NCiNkZWZpbmUgTlZJQ19JUFIwX1BSSV8yICAgICAgICAgICAgICAgICAgICAgKDB4MDBGRjAwMDBVKSAgICAgICAgICAgICAgICAgICAgICAvKiE8IFByaW9yaXR5IG9mIGludGVycnVwdCAyICovDQojZGVmaW5lIE5WSUNfSVBSMF9QUklfMyAgICAgICAgICAgICAgICAgICAgICgweEZGMDAwMDAwVSkgICAgICAgICAgICAgICAgICAgICAgLyohPCBQcmlvcml0eSBvZiBpbnRlcnJ1cHQgMyAqLw0KDQovKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgTlZJQ19QUkkxIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBOVklDX0lQUjFfUFJJXzQgICAgICAgICAgICAgICAgICAgICAoMHgwMDAwMDBGRlUpICAgICAgICAgICAgICAgICAgICAgIC8qITwgUHJpb3JpdHkgb2YgaW50ZXJydXB0IDQgKi8NCiNkZWZpbmUgTlZJQ19JUFIxX1BSSV81ICAgICAgICAgICAgICAgICAgICAgKDB4MDAwMEZGMDBVKSAgICAgICAgICAgICAgICAgICAgICAvKiE8IFByaW9yaXR5IG9mIGludGVycnVwdCA1ICovDQojZGVmaW5lIE5WSUNfSVBSMV9QUklfNiAgICAgICAgICAgICAgICAgICAgICgweDAwRkYwMDAwVSkgICAgICAgICAgICAgICAgICAgICAgLyohPCBQcmlvcml0eSBvZiBpbnRlcnJ1cHQgNiAqLw0KI2RlZmluZSBOVklDX0lQUjFfUFJJXzcgICAgICAgICAgICAgICAgICAgICAoMHhGRjAwMDAwMFUpICAgICAgICAgICAgICAgICAgICAgIC8qITwgUHJpb3JpdHkgb2YgaW50ZXJydXB0IDcgKi8NCg0KLyoqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIE5WSUNfUFJJMiByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgTlZJQ19JUFIyX1BSSV84ICAgICAgICAgICAgICAgICAgICAgKDB4MDAwMDAwRkZVKSAgICAgICAgICAgICAgICAgICAgICAvKiE8IFByaW9yaXR5IG9mIGludGVycnVwdCA4ICovDQojZGVmaW5lIE5WSUNfSVBSMl9QUklfOSAgICAgICAgICAgICAgICAgICAgICgweDAwMDBGRjAwVSkgICAgICAgICAgICAgICAgICAgICAgLyohPCBQcmlvcml0eSBvZiBpbnRlcnJ1cHQgOSAqLw0KI2RlZmluZSBOVklDX0lQUjJfUFJJXzEwICAgICAgICAgICAgICAgICAgICAoMHgwMEZGMDAwMFUpICAgICAgICAgICAgICAgICAgICAgIC8qITwgUHJpb3JpdHkgb2YgaW50ZXJydXB0IDEwICovDQojZGVmaW5lIE5WSUNfSVBSMl9QUklfMTEgICAgICAgICAgICAgICAgICAgICgweEZGMDAwMDAwVSkgICAgICAgICAgICAgICAgICAgICAgLyohPCBQcmlvcml0eSBvZiBpbnRlcnJ1cHQgMTEgKi8NCg0KLyoqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIE5WSUNfUFJJMyByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgTlZJQ19JUFIzX1BSSV8xMiAgICAgICAgICAgICAgICAgICAgKDB4MDAwMDAwRkZVKSAgICAgICAgICAgICAgICAgICAgICAvKiE8IFByaW9yaXR5IG9mIGludGVycnVwdCAxMiAqLw0KI2RlZmluZSBOVklDX0lQUjNfUFJJXzEzICAgICAgICAgICAgICAgICAgICAoMHgwMDAwRkYwMFUpICAgICAgICAgICAgICAgICAgICAgIC8qITwgUHJpb3JpdHkgb2YgaW50ZXJydXB0IDEzICovDQojZGVmaW5lIE5WSUNfSVBSM19QUklfMTQgICAgICAgICAgICAgICAgICAgICgweDAwRkYwMDAwVSkgICAgICAgICAgICAgICAgICAgICAgLyohPCBQcmlvcml0eSBvZiBpbnRlcnJ1cHQgMTQgKi8NCiNkZWZpbmUgTlZJQ19JUFIzX1BSSV8xNSAgICAgICAgICAgICAgICAgICAgKDB4RkYwMDAwMDBVKSAgICAgICAgICAgICAgICAgICAgICAvKiE8IFByaW9yaXR5IG9mIGludGVycnVwdCAxNSAqLw0KDQovKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgTlZJQ19QUkk0IHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBOVklDX0lQUjRfUFJJXzE2ICAgICAgICAgICAgICAgICAgICAoMHgwMDAwMDBGRlUpICAgICAgICAgICAgICAgICAgICAgIC8qITwgUHJpb3JpdHkgb2YgaW50ZXJydXB0IDE2ICovDQojZGVmaW5lIE5WSUNfSVBSNF9QUklfMTcgICAgICAgICAgICAgICAgICAgICgweDAwMDBGRjAwVSkgICAgICAgICAgICAgICAgICAgICAgLyohPCBQcmlvcml0eSBvZiBpbnRlcnJ1cHQgMTcgKi8NCiNkZWZpbmUgTlZJQ19JUFI0X1BSSV8xOCAgICAgICAgICAgICAgICAgICAgKDB4MDBGRjAwMDBVKSAgICAgICAgICAgICAgICAgICAgICAvKiE8IFByaW9yaXR5IG9mIGludGVycnVwdCAxOCAqLw0KI2RlZmluZSBOVklDX0lQUjRfUFJJXzE5ICAgICAgICAgICAgICAgICAgICAoMHhGRjAwMDAwMFUpICAgICAgICAgICAgICAgICAgICAgIC8qITwgUHJpb3JpdHkgb2YgaW50ZXJydXB0IDE5ICovDQoNCi8qKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBOVklDX1BSSTUgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIE5WSUNfSVBSNV9QUklfMjAgICAgICAgICAgICAgICAgICAgICgweDAwMDAwMEZGVSkgICAgICAgICAgICAgICAgICAgICAgLyohPCBQcmlvcml0eSBvZiBpbnRlcnJ1cHQgMjAgKi8NCiNkZWZpbmUgTlZJQ19JUFI1X1BSSV8yMSAgICAgICAgICAgICAgICAgICAgKDB4MDAwMEZGMDBVKSAgICAgICAgICAgICAgICAgICAgICAvKiE8IFByaW9yaXR5IG9mIGludGVycnVwdCAyMSAqLw0KI2RlZmluZSBOVklDX0lQUjVfUFJJXzIyICAgICAgICAgICAgICAgICAgICAoMHgwMEZGMDAwMFUpICAgICAgICAgICAgICAgICAgICAgIC8qITwgUHJpb3JpdHkgb2YgaW50ZXJydXB0IDIyICovDQojZGVmaW5lIE5WSUNfSVBSNV9QUklfMjMgICAgICAgICAgICAgICAgICAgICgweEZGMDAwMDAwVSkgICAgICAgICAgICAgICAgICAgICAgLyohPCBQcmlvcml0eSBvZiBpbnRlcnJ1cHQgMjMgKi8NCg0KLyoqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIE5WSUNfUFJJNiByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgTlZJQ19JUFI2X1BSSV8yNCAgICAgICAgICAgICAgICAgICAgKDB4MDAwMDAwRkZVKSAgICAgICAgICAgICAgICAgICAgICAvKiE8IFByaW9yaXR5IG9mIGludGVycnVwdCAyNCAqLw0KI2RlZmluZSBOVklDX0lQUjZfUFJJXzI1ICAgICAgICAgICAgICAgICAgICAoMHgwMDAwRkYwMFUpICAgICAgICAgICAgICAgICAgICAgIC8qITwgUHJpb3JpdHkgb2YgaW50ZXJydXB0IDI1ICovDQojZGVmaW5lIE5WSUNfSVBSNl9QUklfMjYgICAgICAgICAgICAgICAgICAgICgweDAwRkYwMDAwVSkgICAgICAgICAgICAgICAgICAgICAgLyohPCBQcmlvcml0eSBvZiBpbnRlcnJ1cHQgMjYgKi8NCiNkZWZpbmUgTlZJQ19JUFI2X1BSSV8yNyAgICAgICAgICAgICAgICAgICAgKDB4RkYwMDAwMDBVKSAgICAgICAgICAgICAgICAgICAgICAvKiE8IFByaW9yaXR5IG9mIGludGVycnVwdCAyNyAqLw0KDQovKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgTlZJQ19QUkk3IHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBOVklDX0lQUjdfUFJJXzI4ICAgICAgICAgICAgICAgICAgICAoMHgwMDAwMDBGRlUpICAgICAgICAgICAgICAgICAgICAgIC8qITwgUHJpb3JpdHkgb2YgaW50ZXJydXB0IDI4ICovDQojZGVmaW5lIE5WSUNfSVBSN19QUklfMjkgICAgICAgICAgICAgICAgICAgICgweDAwMDBGRjAwVSkgICAgICAgICAgICAgICAgICAgICAgLyohPCBQcmlvcml0eSBvZiBpbnRlcnJ1cHQgMjkgKi8NCiNkZWZpbmUgTlZJQ19JUFI3X1BSSV8zMCAgICAgICAgICAgICAgICAgICAgKDB4MDBGRjAwMDBVKSAgICAgICAgICAgICAgICAgICAgICAvKiE8IFByaW9yaXR5IG9mIGludGVycnVwdCAzMCAqLw0KI2RlZmluZSBOVklDX0lQUjdfUFJJXzMxICAgICAgICAgICAgICAgICAgICAoMHhGRjAwMDAwMFUpICAgICAgICAgICAgICAgICAgICAgIC8qITwgUHJpb3JpdHkgb2YgaW50ZXJydXB0IDMxICovDQoNCi8qKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBTQ0JfQ1BVSUQgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIFNDQl9DUFVJRF9SRVZJU0lPTiAgICAgICAgICAgICAgICAgICgweDAwMDAwMDBGVSkgICAgICAgICAgICAgICAgICAgICAgLyohPCBJbXBsZW1lbnRhdGlvbiBkZWZpbmVkIHJldmlzaW9uIG51bWJlciAqLw0KI2RlZmluZSBTQ0JfQ1BVSURfUEFSVE5PICAgICAgICAgICAgICAgICAgICAoMHgwMDAwRkZGMFUpICAgICAgICAgICAgICAgICAgICAgIC8qITwgTnVtYmVyIG9mIHByb2Nlc3NvciB3aXRoaW4gc2VyaWUgKi8NCiNkZWZpbmUgU0NCX0NQVUlEX0NvbnN0YW50ICAgICAgICAgICAgICAgICAgKDB4MDAwRjAwMDBVKSAgICAgICAgICAgICAgICAgICAgICAvKiE8IFJlYWRzIGFzIDB4MEYgKi8NCiNkZWZpbmUgU0NCX0NQVUlEX1ZBUklBTlQgICAgICAgICAgICAgICAgICAgKDB4MDBGMDAwMDBVKSAgICAgICAgICAgICAgICAgICAgICAvKiE8IEltcGxlbWVudGF0aW9uIGRlZmluZWQgdmFyaWFudCBudW1iZXIgKi8NCiNkZWZpbmUgU0NCX0NQVUlEX0lNUExFTUVOVEVSICAgICAgICAgICAgICAgKDB4RkYwMDAwMDBVKSAgICAgICAgICAgICAgICAgICAgICAvKiE8IEltcGxlbWVudGVyIGNvZGUuIEFSTSBpcyAweDQxICovDQoNCi8qKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgU0NCX0lDU1IgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIFNDQl9JQ1NSX1ZFQ1RBQ1RJVkUgICAgICAgICAgICAgICAgICgweDAwMDAwMUZGVSkgICAgICAgICAgICAgICAgICAgICAgLyohPCBBY3RpdmUgSVNSIG51bWJlciBmaWVsZCAqLw0KI2RlZmluZSBTQ0JfSUNTUl9SRVRUT0JBU0UgICAgICAgICAgICAgICAgICAoMHgwMDAwMDgwMFUpICAgICAgICAgICAgICAgICAgICAgIC8qITwgQWxsIGFjdGl2ZSBleGNlcHRpb25zIG1pbnVzIHRoZSBJUFNSX2N1cnJlbnRfZXhjZXB0aW9uIHlpZWxkcyB0aGUgZW1wdHkgc2V0ICovDQojZGVmaW5lIFNDQl9JQ1NSX1ZFQ1RQRU5ESU5HICAgICAgICAgICAgICAgICgweDAwM0ZGMDAwVSkgICAgICAgICAgICAgICAgICAgICAgLyohPCBQZW5kaW5nIElTUiBudW1iZXIgZmllbGQgKi8NCiNkZWZpbmUgU0NCX0lDU1JfSVNSUEVORElORyAgICAgICAgICAgICAgICAgKDB4MDA0MDAwMDBVKSAgICAgICAgICAgICAgICAgICAgICAvKiE8IEludGVycnVwdCBwZW5kaW5nIGZsYWcgKi8NCiNkZWZpbmUgU0NCX0lDU1JfSVNSUFJFRU1QVCAgICAgICAgICAgICAgICAgKDB4MDA4MDAwMDBVKSAgICAgICAgICAgICAgICAgICAgICAvKiE8IEl0IGluZGljYXRlcyB0aGF0IGEgcGVuZGluZyBpbnRlcnJ1cHQgYmVjb21lcyBhY3RpdmUgaW4gdGhlIG5leHQgcnVubmluZyBjeWNsZSAqLw0KI2RlZmluZSBTQ0JfSUNTUl9QRU5EU1RDTFIgICAgICAgICAgICAgICAgICAoMHgwMjAwMDAwMFUpICAgICAgICAgICAgICAgICAgICAgIC8qITwgQ2xlYXIgcGVuZGluZyBTeXNUaWNrIGJpdCAqLw0KI2RlZmluZSBTQ0JfSUNTUl9QRU5EU1RTRVQgICAgICAgICAgICAgICAgICAoMHgwNDAwMDAwMFUpICAgICAgICAgICAgICAgICAgICAgIC8qITwgU2V0IHBlbmRpbmcgU3lzVGljayBiaXQgKi8NCiNkZWZpbmUgU0NCX0lDU1JfUEVORFNWQ0xSICAgICAgICAgICAgICAgICAgKDB4MDgwMDAwMDBVKSAgICAgICAgICAgICAgICAgICAgICAvKiE8IENsZWFyIHBlbmRpbmcgcGVuZFNWIGJpdCAqLw0KI2RlZmluZSBTQ0JfSUNTUl9QRU5EU1ZTRVQgICAgICAgICAgICAgICAgICAoMHgxMDAwMDAwMFUpICAgICAgICAgICAgICAgICAgICAgIC8qITwgU2V0IHBlbmRpbmcgcGVuZFNWIGJpdCAqLw0KI2RlZmluZSBTQ0JfSUNTUl9OTUlQRU5EU0VUICAgICAgICAgICAgICAgICAoMHg4MDAwMDAwMFUpICAgICAgICAgICAgICAgICAgICAgIC8qITwgU2V0IHBlbmRpbmcgTk1JIGJpdCAqLw0KDQovKioqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFNDQl9WVE9SIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBTQ0JfVlRPUl9UQkxPRkYgICAgICAgICAgICAgICAgICAgICAoMHgxRkZGRkY4MFUpICAgICAgICAgICAgICAgICAgICAgIC8qITwgVmVjdG9yIHRhYmxlIGJhc2Ugb2Zmc2V0IGZpZWxkICovDQojZGVmaW5lIFNDQl9WVE9SX1RCTEJBU0UgICAgICAgICAgICAgICAgICAgICgweDIwMDAwMDAwVSkgICAgICAgICAgICAgICAgICAgICAgLyohPCBUYWJsZSBiYXNlIGluIGNvZGUoMCkgb3IgUkFNKDEpICovDQoNCi8qITwqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFNDQl9BSVJDUiByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgU0NCX0FJUkNSX1ZFQ1RSRVNFVCAgICAgICAgICAgICAgICAgKDB4MDAwMDAwMDFVKSAgICAgICAgICAgICAgICAgICAgICAvKiE8IFN5c3RlbSBSZXNldCBiaXQgKi8NCiNkZWZpbmUgU0NCX0FJUkNSX1ZFQ1RDTFJBQ1RJVkUgICAgICAgICAgICAgKDB4MDAwMDAwMDJVKSAgICAgICAgICAgICAgICAgICAgICAvKiE8IENsZWFyIGFjdGl2ZSB2ZWN0b3IgYml0ICovDQojZGVmaW5lIFNDQl9BSVJDUl9TWVNSRVNFVFJFUSAgICAgICAgICAgICAgICgweDAwMDAwMDA0VSkgICAgICAgICAgICAgICAgICAgICAgLyohPCBSZXF1ZXN0cyBjaGlwIGNvbnRyb2wgbG9naWMgdG8gZ2VuZXJhdGUgYSByZXNldCAqLw0KDQojZGVmaW5lIFNDQl9BSVJDUl9QUklHUk9VUCAgICAgICAgICAgICAgICAgICgweDAwMDAwNzAwVSkgICAgICAgICAgICAgICAgICAgICAgLyohPCBQUklHUk9VUFsyOjBdIGJpdHMgKFByaW9yaXR5IGdyb3VwKSAqLw0KI2RlZmluZSBTQ0JfQUlSQ1JfUFJJR1JPVVBfMCAgICAgICAgICAgICAgICAoMHgwMDAwMDEwMFUpICAgICAgICAgICAgICAgICAgICAgIC8qITwgQml0IDAgKi8NCiNkZWZpbmUgU0NCX0FJUkNSX1BSSUdST1VQXzEgICAgICAgICAgICAgICAgKDB4MDAwMDAyMDBVKSAgICAgICAgICAgICAgICAgICAgICAvKiE8IEJpdCAxICovDQojZGVmaW5lIFNDQl9BSVJDUl9QUklHUk9VUF8yICAgICAgICAgICAgICAgICgweDAwMDAwNDAwVSkgICAgICAgICAgICAgICAgICAgICAgLyohPCBCaXQgMiAgKi8NCg0KLyogcHJvcml0eSBncm91cCBjb25maWd1cmF0aW9uICovDQojZGVmaW5lIFNDQl9BSVJDUl9QUklHUk9VUDAgICAgICAgICAgICAgICAgICgweDAwMDAwMDAwVSkgICAgICAgICAgICAgICAgICAgICAgLyohPCBQcmlvcml0eSBncm91cD0wICg3IGJpdHMgb2YgcHJlLWVtcHRpb24gcHJpb3JpdHksIDEgYml0IG9mIHN1YnByaW9yaXR5KSAqLw0KI2RlZmluZSBTQ0JfQUlSQ1JfUFJJR1JPVVAxICAgICAgICAgICAgICAgICAoMHgwMDAwMDEwMFUpICAgICAgICAgICAgICAgICAgICAgIC8qITwgUHJpb3JpdHkgZ3JvdXA9MSAoNiBiaXRzIG9mIHByZS1lbXB0aW9uIHByaW9yaXR5LCAyIGJpdHMgb2Ygc3VicHJpb3JpdHkpICovDQojZGVmaW5lIFNDQl9BSVJDUl9QUklHUk9VUDIgICAgICAgICAgICAgICAgICgweDAwMDAwMjAwVSkgICAgICAgICAgICAgICAgICAgICAgLyohPCBQcmlvcml0eSBncm91cD0yICg1IGJpdHMgb2YgcHJlLWVtcHRpb24gcHJpb3JpdHksIDMgYml0cyBvZiBzdWJwcmlvcml0eSkgKi8NCiNkZWZpbmUgU0NCX0FJUkNSX1BSSUdST1VQMyAgICAgICAgICAgICAgICAgKDB4MDAwMDAzMDBVKSAgICAgICAgICAgICAgICAgICAgICAvKiE8IFByaW9yaXR5IGdyb3VwPTMgKDQgYml0cyBvZiBwcmUtZW1wdGlvbiBwcmlvcml0eSwgNCBiaXRzIG9mIHN1YnByaW9yaXR5KSAqLw0KI2RlZmluZSBTQ0JfQUlSQ1JfUFJJR1JPVVA0ICAgICAgICAgICAgICAgICAoMHgwMDAwMDQwMFUpICAgICAgICAgICAgICAgICAgICAgIC8qITwgUHJpb3JpdHkgZ3JvdXA9NCAoMyBiaXRzIG9mIHByZS1lbXB0aW9uIHByaW9yaXR5LCA1IGJpdHMgb2Ygc3VicHJpb3JpdHkpICovDQojZGVmaW5lIFNDQl9BSVJDUl9QUklHUk9VUDUgICAgICAgICAgICAgICAgICgweDAwMDAwNTAwVSkgICAgICAgICAgICAgICAgICAgICAgLyohPCBQcmlvcml0eSBncm91cD01ICgyIGJpdHMgb2YgcHJlLWVtcHRpb24gcHJpb3JpdHksIDYgYml0cyBvZiBzdWJwcmlvcml0eSkgKi8NCiNkZWZpbmUgU0NCX0FJUkNSX1BSSUdST1VQNiAgICAgICAgICAgICAgICAgKDB4MDAwMDA2MDBVKSAgICAgICAgICAgICAgICAgICAgICAvKiE8IFByaW9yaXR5IGdyb3VwPTYgKDEgYml0IG9mIHByZS1lbXB0aW9uIHByaW9yaXR5LCA3IGJpdHMgb2Ygc3VicHJpb3JpdHkpICovDQojZGVmaW5lIFNDQl9BSVJDUl9QUklHUk9VUDcgICAgICAgICAgICAgICAgICgweDAwMDAwNzAwVSkgICAgICAgICAgICAgICAgICAgICAgLyohPCBQcmlvcml0eSBncm91cD03IChubyBwcmUtZW1wdGlvbiBwcmlvcml0eSwgOCBiaXRzIG9mIHN1YnByaW9yaXR5KSAqLw0KDQojZGVmaW5lIFNDQl9BSVJDUl9FTkRJQU5FU1MgICAgICAgICAgICAgICAgICgweDAwMDA4MDAwVSkgICAgICAgICAgICAgICAgICAgICAgLyohPCBEYXRhIGVuZGlhbm5lc3MgYml0ICovDQojZGVmaW5lIFNDQl9BSVJDUl9WRUNUS0VZICAgICAgICAgICAgICAgICAgICgweEZGRkYwMDAwVSkgICAgICAgICAgICAgICAgICAgICAgLyohPCBSZWdpc3RlciBrZXkgKFZFQ1RLRVkpIC0gUmVhZHMgYXMgMHhGQTA1IChWRUNUS0VZU1RBVCkgKi8NCg0KLyoqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBTQ0JfU0NSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgU0NCX1NDUl9TTEVFUE9ORVhJVCAgICAgICAgICAgICAgICAgKDB4MDAwMDAwMDJVKSAgICAgICAgICAgICAgICAgICAgICAvKiE8IFNsZWVwIG9uIGV4aXQgYml0ICovDQojZGVmaW5lIFNDQl9TQ1JfU0xFRVBERUVQICAgICAgICAgICAgICAgICAgICgweDAwMDAwMDA0VSkgICAgICAgICAgICAgICAgICAgICAgLyohPCBTbGVlcCBkZWVwIGJpdCAqLw0KI2RlZmluZSBTQ0JfU0NSX1NFVk9OUEVORCAgICAgICAgICAgICAgICAgICAoMHgwMDAwMDAxMFUpICAgICAgICAgICAgICAgICAgICAgIC8qITwgV2FrZSB1cCBmcm9tIFdGRSAqLw0KDQovKioqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBTQ0JfQ0NSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBTQ0JfQ0NSX05PTkJBU0VUSFJERU5BICAgICAgICAgICAgICAoMHgwMDAwMDAwMVUpICAgICAgICAgICAgICAgICAgICAgIC8qITwgVGhyZWFkIG1vZGUgY2FuIGJlIGVudGVyZWQgZnJvbSBhbnkgbGV2ZWwgaW4gSGFuZGxlciBtb2RlIGJ5IGNvbnRyb2xsZWQgcmV0dXJuIHZhbHVlICovDQojZGVmaW5lIFNDQl9DQ1JfVVNFUlNFVE1QRU5EICAgICAgICAgICAgICAgICgweDAwMDAwMDAyVSkgICAgICAgICAgICAgICAgICAgICAgLyohPCBFbmFibGVzIHVzZXIgY29kZSB0byB3cml0ZSB0aGUgU29mdHdhcmUgVHJpZ2dlciBJbnRlcnJ1cHQgcmVnaXN0ZXIgdG8gdHJpZ2dlciAocGVuZCkgYSBNYWluIGV4Y2VwdGlvbiAqLw0KI2RlZmluZSBTQ0JfQ0NSX1VOQUxJR05fVFJQICAgICAgICAgICAgICAgICAoMHgwMDAwMDAwOFUpICAgICAgICAgICAgICAgICAgICAgIC8qITwgVHJhcCBmb3IgdW5hbGlnbmVkIGFjY2VzcyAqLw0KI2RlZmluZSBTQ0JfQ0NSX0RJVl8wX1RSUCAgICAgICAgICAgICAgICAgICAoMHgwMDAwMDAxMFUpICAgICAgICAgICAgICAgICAgICAgIC8qITwgVHJhcCBvbiBEaXZpZGUgYnkgMCAqLw0KI2RlZmluZSBTQ0JfQ0NSX0JGSEZOTUlHTiAgICAgICAgICAgICAgICAgICAoMHgwMDAwMDEwMFUpICAgICAgICAgICAgICAgICAgICAgIC8qITwgSGFuZGxlcnMgcnVubmluZyBhdCBwcmlvcml0eSAtMSBhbmQgLTIgKi8NCiNkZWZpbmUgU0NCX0NDUl9TVEtBTElHTiAgICAgICAgICAgICAgICAgICAgKDB4MDAwMDAyMDBVKSAgICAgICAgICAgICAgICAgICAgICAvKiE8IE9uIGV4Y2VwdGlvbiBlbnRyeSwgdGhlIFNQIHVzZWQgcHJpb3IgdG8gdGhlIGV4Y2VwdGlvbiBpcyBhZGp1c3RlZCB0byBiZSA4LWJ5dGUgYWxpZ25lZCAqLw0KDQovKioqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFNDQl9TSFBSIHJlZ2lzdGVyICoqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBTQ0JfU0hQUl9QUklfTl9Qb3MgICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBTQ0JfU0hQUl9QUklfTl9Nc2sgICAgICAgICAgICAgICAgICAoMHhGRlUgPDwgU0NCX1NIUFJfUFJJX05fUG9zKSAgICAgIC8qITwgMHgwMDAwMDBGRiAqLw0KI2RlZmluZSBTQ0JfU0hQUl9QUklfTiAgICAgICAgICAgICAgICAgICAgICBTQ0JfU0hQUl9QUklfTl9Nc2sgICAgICAgICAgICAgICAgIC8qITwgUHJpb3JpdHkgb2Ygc3lzdGVtIGhhbmRsZXIgNCw4LCBhbmQgMTIuIE1lbSBNYW5hZ2UsIHJlc2VydmVkIGFuZCBEZWJ1ZyBNb25pdG9yICovDQojZGVmaW5lIFNDQl9TSFBSX1BSSV9OMV9Qb3MgICAgICAgICAgICAgICAgICg4VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFNDQl9TSFBSX1BSSV9OMV9Nc2sgICAgICAgICAgICAgICAgICgweEZGVSA8PCBTQ0JfU0hQUl9QUklfTjFfUG9zKSAgICAgLyohPCAweDAwMDBGRjAwICovDQojZGVmaW5lIFNDQl9TSFBSX1BSSV9OMSAgICAgICAgICAgICAgICAgICAgIFNDQl9TSFBSX1BSSV9OMV9Nc2sgICAgICAgICAgICAgICAgLyohPCBQcmlvcml0eSBvZiBzeXN0ZW0gaGFuZGxlciA1LDksIGFuZCAxMy4gQnVzIEZhdWx0LCByZXNlcnZlZCBhbmQgcmVzZXJ2ZWQgKi8NCiNkZWZpbmUgU0NCX1NIUFJfUFJJX04yX1BvcyAgICAgICAgICAgICAgICAgKDE2VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgU0NCX1NIUFJfUFJJX04yX01zayAgICAgICAgICAgICAgICAgKDB4RkZVIDw8IFNDQl9TSFBSX1BSSV9OMl9Qb3MpICAgICAvKiE8IDB4MDBGRjAwMDAgKi8NCiNkZWZpbmUgU0NCX1NIUFJfUFJJX04yICAgICAgICAgICAgICAgICAgICAgU0NCX1NIUFJfUFJJX04yX01zayAgICAgICAgICAgICAgICAvKiE8IFByaW9yaXR5IG9mIHN5c3RlbSBoYW5kbGVyIDYsMTAsIGFuZCAxNC4gVXNhZ2UgRmF1bHQsIHJlc2VydmVkIGFuZCBQZW5kU1YgKi8NCiNkZWZpbmUgU0NCX1NIUFJfUFJJX04zX1BvcyAgICAgICAgICAgICAgICAgKDI0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgU0NCX1NIUFJfUFJJX04zX01zayAgICAgICAgICAgICAgICAgKDB4RkZVIDw8IFNDQl9TSFBSX1BSSV9OM19Qb3MpICAgICAvKiE8IDB4RkYwMDAwMDAgKi8NCiNkZWZpbmUgU0NCX1NIUFJfUFJJX04zICAgICAgICAgICAgICAgICAgICAgU0NCX1NIUFJfUFJJX04zX01zayAgICAgICAgICAgICAgICAvKiE8IFByaW9yaXR5IG9mIHN5c3RlbSBoYW5kbGVyIDcsMTEsIGFuZCAxNS4gUmVzZXJ2ZWQsIFNWQ2FsbCBhbmQgU3lzVGljayAqLw0KDQovKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgU0NCX1NIQ1NSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBTQ0JfU0hDU1JfTUVNRkFVTFRBQ1QgICAgICAgICAgICAgICAoMHgwMDAwMDAwMVUpICAgICAgICAgICAgICAgICAgICAgIC8qITwgTWVtTWFuYWdlIGlzIGFjdGl2ZSAqLw0KI2RlZmluZSBTQ0JfU0hDU1JfQlVTRkFVTFRBQ1QgICAgICAgICAgICAgICAoMHgwMDAwMDAwMlUpICAgICAgICAgICAgICAgICAgICAgIC8qITwgQnVzRmF1bHQgaXMgYWN0aXZlICovDQojZGVmaW5lIFNDQl9TSENTUl9VU0dGQVVMVEFDVCAgICAgICAgICAgICAgICgweDAwMDAwMDA4VSkgICAgICAgICAgICAgICAgICAgICAgLyohPCBVc2FnZUZhdWx0IGlzIGFjdGl2ZSAqLw0KI2RlZmluZSBTQ0JfU0hDU1JfU1ZDQUxMQUNUICAgICAgICAgICAgICAgICAoMHgwMDAwMDA4MFUpICAgICAgICAgICAgICAgICAgICAgIC8qITwgU1ZDYWxsIGlzIGFjdGl2ZSAqLw0KI2RlZmluZSBTQ0JfU0hDU1JfTU9OSVRPUkFDVCAgICAgICAgICAgICAgICAoMHgwMDAwMDEwMFUpICAgICAgICAgICAgICAgICAgICAgIC8qITwgTW9uaXRvciBpcyBhY3RpdmUgKi8NCiNkZWZpbmUgU0NCX1NIQ1NSX1BFTkRTVkFDVCAgICAgICAgICAgICAgICAgKDB4MDAwMDA0MDBVKSAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBlbmRTViBpcyBhY3RpdmUgKi8NCiNkZWZpbmUgU0NCX1NIQ1NSX1NZU1RJQ0tBQ1QgICAgICAgICAgICAgICAgKDB4MDAwMDA4MDBVKSAgICAgICAgICAgICAgICAgICAgICAvKiE8IFN5c1RpY2sgaXMgYWN0aXZlICovDQojZGVmaW5lIFNDQl9TSENTUl9VU0dGQVVMVFBFTkRFRCAgICAgICAgICAgICgweDAwMDAxMDAwVSkgICAgICAgICAgICAgICAgICAgICAgLyohPCBVc2FnZSBGYXVsdCBpcyBwZW5kZWQgKi8NCiNkZWZpbmUgU0NCX1NIQ1NSX01FTUZBVUxUUEVOREVEICAgICAgICAgICAgKDB4MDAwMDIwMDBVKSAgICAgICAgICAgICAgICAgICAgICAvKiE8IE1lbU1hbmFnZSBpcyBwZW5kZWQgKi8NCiNkZWZpbmUgU0NCX1NIQ1NSX0JVU0ZBVUxUUEVOREVEICAgICAgICAgICAgKDB4MDAwMDQwMDBVKSAgICAgICAgICAgICAgICAgICAgICAvKiE8IEJ1cyBGYXVsdCBpcyBwZW5kZWQgKi8NCiNkZWZpbmUgU0NCX1NIQ1NSX1NWQ0FMTFBFTkRFRCAgICAgICAgICAgICAgKDB4MDAwMDgwMDBVKSAgICAgICAgICAgICAgICAgICAgICAvKiE8IFNWQ2FsbCBpcyBwZW5kZWQgKi8NCiNkZWZpbmUgU0NCX1NIQ1NSX01FTUZBVUxURU5BICAgICAgICAgICAgICAgKDB4MDAwMTAwMDBVKSAgICAgICAgICAgICAgICAgICAgICAvKiE8IE1lbU1hbmFnZSBlbmFibGUgKi8NCiNkZWZpbmUgU0NCX1NIQ1NSX0JVU0ZBVUxURU5BICAgICAgICAgICAgICAgKDB4MDAwMjAwMDBVKSAgICAgICAgICAgICAgICAgICAgICAvKiE8IEJ1cyBGYXVsdCBlbmFibGUgKi8NCiNkZWZpbmUgU0NCX1NIQ1NSX1VTR0ZBVUxURU5BICAgICAgICAgICAgICAgKDB4MDAwNDAwMDBVKSAgICAgICAgICAgICAgICAgICAgICAvKiE8IFVzYWdlRmF1bHQgZW5hYmxlICovDQoNCi8qKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgU0NCX0NGU1IgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKiovDQovKiE8IE1GU1IgKi8NCiNkZWZpbmUgU0NCX0NGU1JfSUFDQ1ZJT0xfUG9zICAgICAgICAgICAgICAoU0NCX1NIQ1NSX01FTUZBVUxUQUNUX1BvcyArIDBVKSAgICAvKiE8IFNDQiBDRlNSIChNTUZTUik6IElBQ0NWSU9MIFBvc2l0aW9uICovDQojZGVmaW5lIFNDQl9DRlNSX0lBQ0NWSU9MX01zayAgICAgICAgICAgICAgKDFVTCAvKjw8IFNDQl9DRlNSX0lBQ0NWSU9MX1BvcyovKSAgLyohPCBTQ0IgQ0ZTUiAoTU1GU1IpOiBJQUNDVklPTCBNYXNrICovDQojZGVmaW5lIFNDQl9DRlNSX0lBQ0NWSU9MICAgICAgICAgICAgICAgICAgIFNDQl9DRlNSX0lBQ0NWSU9MX01zayAgICAgICAgICAgICAgLyohPCBJbnN0cnVjdGlvbiBhY2Nlc3MgdmlvbGF0aW9uICovDQojZGVmaW5lIFNDQl9DRlNSX0RBQ0NWSU9MX1BvcyAgICAgICAgICAgICAgKFNDQl9TSENTUl9NRU1GQVVMVEFDVF9Qb3MgKyAxVSkgICAgLyohPCBTQ0IgQ0ZTUiAoTU1GU1IpOiBEQUNDVklPTCBQb3NpdGlvbiAqLw0KI2RlZmluZSBTQ0JfQ0ZTUl9EQUNDVklPTF9Nc2sgICAgICAgICAgICAgICgxVUwgPDwgU0NCX0NGU1JfREFDQ1ZJT0xfUG9zKSAgICAgIC8qITwgU0NCIENGU1IgKE1NRlNSKTogREFDQ1ZJT0wgTWFzayAqLw0KI2RlZmluZSBTQ0JfQ0ZTUl9EQUNDVklPTCAgICAgICAgICAgICAgICAgICBTQ0JfQ0ZTUl9EQUNDVklPTF9Nc2sgICAgICAgICAgICAgIC8qITwgRGF0YSBhY2Nlc3MgdmlvbGF0aW9uICovDQojZGVmaW5lIFNDQl9DRlNSX01VTlNUS0VSUl9Qb3MgICAgICAgICAgICAgKFNDQl9TSENTUl9NRU1GQVVMVEFDVF9Qb3MgKyAzVSkgICAgLyohPCBTQ0IgQ0ZTUiAoTU1GU1IpOiBNVU5TVEtFUlIgUG9zaXRpb24gKi8NCiNkZWZpbmUgU0NCX0NGU1JfTVVOU1RLRVJSX01zayAgICAgICAgICAgICAoMVVMIDw8IFNDQl9DRlNSX01VTlNUS0VSUl9Qb3MpICAgICAvKiE8IFNDQiBDRlNSIChNTUZTUik6IE1VTlNUS0VSUiBNYXNrICovDQojZGVmaW5lIFNDQl9DRlNSX01VTlNUS0VSUiAgICAgICAgICAgICAgICAgIFNDQl9DRlNSX01VTlNUS0VSUl9Nc2sgICAgICAgICAgICAgLyohPCBVbnN0YWNraW5nIGVycm9yICovDQojZGVmaW5lIFNDQl9DRlNSX01TVEtFUlJfUG9zICAgICAgICAgICAgICAgKFNDQl9TSENTUl9NRU1GQVVMVEFDVF9Qb3MgKyA0VSkgICAgLyohPCBTQ0IgQ0ZTUiAoTU1GU1IpOiBNU1RLRVJSIFBvc2l0aW9uICovDQojZGVmaW5lIFNDQl9DRlNSX01TVEtFUlJfTXNrICAgICAgICAgICAgICAgKDFVTCA8PCBTQ0JfQ0ZTUl9NU1RLRVJSX1BvcykgICAgICAgLyohPCBTQ0IgQ0ZTUiAoTU1GU1IpOiBNU1RLRVJSIE1hc2sgKi8NCiNkZWZpbmUgU0NCX0NGU1JfTVNUS0VSUiAgICAgICAgICAgICAgICAgICAgU0NCX0NGU1JfTVNUS0VSUl9Nc2sgICAgICAgICAgICAgICAvKiE8IFN0YWNraW5nIGVycm9yICovDQojZGVmaW5lIFNDQl9DRlNSX01NQVJWQUxJRF9Qb3MgICAgICAgICAgICAgKFNDQl9TSENTUl9NRU1GQVVMVEFDVF9Qb3MgKyA3VSkgICAgLyohPCBTQ0IgQ0ZTUiAoTU1GU1IpOiBNTUFSVkFMSUQgUG9zaXRpb24gKi8NCiNkZWZpbmUgU0NCX0NGU1JfTU1BUlZBTElEX01zayAgICAgICAgICAgICAoMVVMIDw8IFNDQl9DRlNSX01NQVJWQUxJRF9Qb3MpICAgICAvKiE8IFNDQiBDRlNSIChNTUZTUik6IE1NQVJWQUxJRCBNYXNrICovDQojZGVmaW5lIFNDQl9DRlNSX01NQVJWQUxJRCAgICAgICAgICAgICAgICAgIFNDQl9DRlNSX01NQVJWQUxJRF9Nc2sgICAgICAgICAgICAgLyohPCBNZW1vcnkgTWFuYWdlIEFkZHJlc3MgUmVnaXN0ZXIgYWRkcmVzcyB2YWxpZCBmbGFnICovDQovKiE8IEJGU1IgKi8NCiNkZWZpbmUgU0NCX0NGU1JfSUJVU0VSUl9Qb3MgICAgICAgICAgICAgIChTQ0JfQ0ZTUl9CVVNGQVVMVFNSX1BvcyArIDBVKSAgICAgICAvKiE8IFNDQiBDRlNSIChCRlNSKTogSUJVU0VSUiBQb3NpdGlvbiAqLw0KI2RlZmluZSBTQ0JfQ0ZTUl9JQlVTRVJSX01zayAgICAgICAgICAgICAgKDFVTCA8PCBTQ0JfQ0ZTUl9JQlVTRVJSX1BvcykgICAgICAgIC8qITwgU0NCIENGU1IgKEJGU1IpOiBJQlVTRVJSIE1hc2sgKi8NCiNkZWZpbmUgU0NCX0NGU1JfSUJVU0VSUiAgICAgICAgICAgICAgICAgICAgU0NCX0NGU1JfSUJVU0VSUl9Nc2sgICAgICAgICAgICAgICAvKiE8IEluc3RydWN0aW9uIGJ1cyBlcnJvciBmbGFnICovDQojZGVmaW5lIFNDQl9DRlNSX1BSRUNJU0VSUl9Qb3MgICAgICAgICAgICAoU0NCX0NGU1JfQlVTRkFVTFRTUl9Qb3MgKyAxVSkgICAgICAgLyohPCBTQ0IgQ0ZTUiAoQkZTUik6IFBSRUNJU0VSUiBQb3NpdGlvbiAqLw0KI2RlZmluZSBTQ0JfQ0ZTUl9QUkVDSVNFUlJfTXNrICAgICAgICAgICAgKDFVTCA8PCBTQ0JfQ0ZTUl9QUkVDSVNFUlJfUG9zKSAgICAgIC8qITwgU0NCIENGU1IgKEJGU1IpOiBQUkVDSVNFUlIgTWFzayAqLw0KI2RlZmluZSBTQ0JfQ0ZTUl9QUkVDSVNFUlIgICAgICAgICAgICAgICAgICBTQ0JfQ0ZTUl9QUkVDSVNFUlJfTXNrICAgICAgICAgICAgIC8qITwgUHJlY2lzZSBkYXRhIGJ1cyBlcnJvciAqLw0KI2RlZmluZSBTQ0JfQ0ZTUl9JTVBSRUNJU0VSUl9Qb3MgICAgICAgICAgKFNDQl9DRlNSX0JVU0ZBVUxUU1JfUG9zICsgMlUpICAgICAgIC8qITwgU0NCIENGU1IgKEJGU1IpOiBJTVBSRUNJU0VSUiBQb3NpdGlvbiAqLw0KI2RlZmluZSBTQ0JfQ0ZTUl9JTVBSRUNJU0VSUl9Nc2sgICAgICAgICAgKDFVTCA8PCBTQ0JfQ0ZTUl9JTVBSRUNJU0VSUl9Qb3MpICAgIC8qITwgU0NCIENGU1IgKEJGU1IpOiBJTVBSRUNJU0VSUiBNYXNrICovDQojZGVmaW5lIFNDQl9DRlNSX0lNUFJFQ0lTRVJSICAgICAgICAgICAgICAgIFNDQl9DRlNSX0lNUFJFQ0lTRVJSX01zayAgICAgICAgICAgLyohPCBJbXByZWNpc2UgZGF0YSBidXMgZXJyb3IgKi8NCiNkZWZpbmUgU0NCX0NGU1JfVU5TVEtFUlJfUG9zICAgICAgICAgICAgIChTQ0JfQ0ZTUl9CVVNGQVVMVFNSX1BvcyArIDNVKSAgICAgICAvKiE8IFNDQiBDRlNSIChCRlNSKTogVU5TVEtFUlIgUG9zaXRpb24gKi8NCiNkZWZpbmUgU0NCX0NGU1JfVU5TVEtFUlJfTXNrICAgICAgICAgICAgICgxVUwgPDwgU0NCX0NGU1JfVU5TVEtFUlJfUG9zKSAgICAgICAvKiE8IFNDQiBDRlNSIChCRlNSKTogVU5TVEtFUlIgTWFzayAqLw0KI2RlZmluZSBTQ0JfQ0ZTUl9VTlNUS0VSUiAgICAgICAgICAgICAgICAgICBTQ0JfQ0ZTUl9VTlNUS0VSUl9Nc2sgICAgICAgICAgICAgIC8qITwgVW5zdGFja2luZyBlcnJvciAqLw0KI2RlZmluZSBTQ0JfQ0ZTUl9TVEtFUlJfUG9zICAgICAgICAgICAgICAgKFNDQl9DRlNSX0JVU0ZBVUxUU1JfUG9zICsgNFUpICAgICAgIC8qITwgU0NCIENGU1IgKEJGU1IpOiBTVEtFUlIgUG9zaXRpb24gKi8NCiNkZWZpbmUgU0NCX0NGU1JfU1RLRVJSX01zayAgICAgICAgICAgICAgICgxVUwgPDwgU0NCX0NGU1JfU1RLRVJSX1BvcykgICAgICAgICAvKiE8IFNDQiBDRlNSIChCRlNSKTogU1RLRVJSIE1hc2sgKi8NCiNkZWZpbmUgU0NCX0NGU1JfU1RLRVJSICAgICAgICAgICAgICAgICAgICAgU0NCX0NGU1JfU1RLRVJSX01zayAgICAgICAgICAgICAgICAvKiE8IFN0YWNraW5nIGVycm9yICovDQojZGVmaW5lIFNDQl9DRlNSX0JGQVJWQUxJRF9Qb3MgICAgICAgICAgICAoU0NCX0NGU1JfQlVTRkFVTFRTUl9Qb3MgKyA3VSkgICAgICAgLyohPCBTQ0IgQ0ZTUiAoQkZTUik6IEJGQVJWQUxJRCBQb3NpdGlvbiAqLw0KI2RlZmluZSBTQ0JfQ0ZTUl9CRkFSVkFMSURfTXNrICAgICAgICAgICAgKDFVTCA8PCBTQ0JfQ0ZTUl9CRkFSVkFMSURfUG9zKSAgICAgIC8qITwgU0NCIENGU1IgKEJGU1IpOiBCRkFSVkFMSUQgTWFzayAqLw0KI2RlZmluZSBTQ0JfQ0ZTUl9CRkFSVkFMSUQgICAgICAgICAgICAgICAgICBTQ0JfQ0ZTUl9CRkFSVkFMSURfTXNrICAgICAgICAgICAgIC8qITwgQnVzIEZhdWx0IEFkZHJlc3MgUmVnaXN0ZXIgYWRkcmVzcyB2YWxpZCBmbGFnICovDQovKiE8IFVGU1IgKi8NCiNkZWZpbmUgU0NCX0NGU1JfVU5ERUZJTlNUUl9Qb3MgICAgICAgICAgIChTQ0JfQ0ZTUl9VU0dGQVVMVFNSX1BvcyArIDBVKSAgICAgICAvKiE8IFNDQiBDRlNSIChVRlNSKTogVU5ERUZJTlNUUiBQb3NpdGlvbiAqLw0KI2RlZmluZSBTQ0JfQ0ZTUl9VTkRFRklOU1RSX01zayAgICAgICAgICAgKDFVTCA8PCBTQ0JfQ0ZTUl9VTkRFRklOU1RSX1BvcykgICAgIC8qITwgU0NCIENGU1IgKFVGU1IpOiBVTkRFRklOU1RSIE1hc2sgKi8NCiNkZWZpbmUgU0NCX0NGU1JfVU5ERUZJTlNUUiAgICAgICAgICAgICAgICAgU0NCX0NGU1JfVU5ERUZJTlNUUl9Nc2sgICAgICAgICAgICAvKiE8IFRoZSBwcm9jZXNzb3IgYXR0ZW1wdCB0byBleGNlY3V0ZSBhbiB1bmRlZmluZWQgaW5zdHJ1Y3Rpb24gKi8NCiNkZWZpbmUgU0NCX0NGU1JfSU5WU1RBVEVfUG9zICAgICAgICAgICAgIChTQ0JfQ0ZTUl9VU0dGQVVMVFNSX1BvcyArIDFVKSAgICAgICAvKiE8IFNDQiBDRlNSIChVRlNSKTogSU5WU1RBVEUgUG9zaXRpb24gKi8NCiNkZWZpbmUgU0NCX0NGU1JfSU5WU1RBVEVfTXNrICAgICAgICAgICAgICgxVUwgPDwgU0NCX0NGU1JfSU5WU1RBVEVfUG9zKSAgICAgICAvKiE8IFNDQiBDRlNSIChVRlNSKTogSU5WU1RBVEUgTWFzayAqLw0KI2RlZmluZSBTQ0JfQ0ZTUl9JTlZTVEFURSAgICAgICAgICAgICAgICAgICBTQ0JfQ0ZTUl9JTlZTVEFURV9Nc2sgICAgICAgICAgICAgIC8qITwgSW52YWxpZCBjb21iaW5hdGlvbiBvZiBFUFNSIGFuZCBpbnN0cnVjdGlvbiAqLw0KI2RlZmluZSBTQ0JfQ0ZTUl9JTlZQQ19Qb3MgICAgICAgICAgICAgICAgKFNDQl9DRlNSX1VTR0ZBVUxUU1JfUG9zICsgMlUpICAgICAgIC8qITwgU0NCIENGU1IgKFVGU1IpOiBJTlZQQyBQb3NpdGlvbiAqLw0KI2RlZmluZSBTQ0JfQ0ZTUl9JTlZQQ19Nc2sgICAgICAgICAgICAgICAgKDFVTCA8PCBTQ0JfQ0ZTUl9JTlZQQ19Qb3MpICAgICAgICAgIC8qITwgU0NCIENGU1IgKFVGU1IpOiBJTlZQQyBNYXNrICovDQojZGVmaW5lIFNDQl9DRlNSX0lOVlBDICAgICAgICAgICAgICAgICAgICAgIFNDQl9DRlNSX0lOVlBDX01zayAgICAgICAgICAgICAgICAgLyohPCBBdHRlbXB0IHRvIGxvYWQgRVhDX1JFVFVSTiBpbnRvIHBjIGlsbGVnYWxseSAqLw0KI2RlZmluZSBTQ0JfQ0ZTUl9OT0NQX1BvcyAgICAgICAgICAgICAgICAgKFNDQl9DRlNSX1VTR0ZBVUxUU1JfUG9zICsgM1UpICAgICAgIC8qITwgU0NCIENGU1IgKFVGU1IpOiBOT0NQIFBvc2l0aW9uICovDQojZGVmaW5lIFNDQl9DRlNSX05PQ1BfTXNrICAgICAgICAgICAgICAgICAoMVVMIDw8IFNDQl9DRlNSX05PQ1BfUG9zKSAgICAgICAgICAgLyohPCBTQ0IgQ0ZTUiAoVUZTUik6IE5PQ1AgTWFzayAqLw0KI2RlZmluZSBTQ0JfQ0ZTUl9OT0NQICAgICAgICAgICAgICAgICAgICAgICBTQ0JfQ0ZTUl9OT0NQX01zayAgICAgICAgICAgICAgICAgIC8qITwgQXR0ZW1wdCB0byB1c2UgYSBjb3Byb2Nlc3NvciBpbnN0cnVjdGlvbiAqLw0KI2RlZmluZSBTQ0JfQ0ZTUl9VTkFMSUdORURfUG9zICAgICAgICAgICAgKFNDQl9DRlNSX1VTR0ZBVUxUU1JfUG9zICsgOFUpICAgICAgIC8qITwgU0NCIENGU1IgKFVGU1IpOiBVTkFMSUdORUQgUG9zaXRpb24gKi8NCiNkZWZpbmUgU0NCX0NGU1JfVU5BTElHTkVEX01zayAgICAgICAgICAgICgxVUwgPDwgU0NCX0NGU1JfVU5BTElHTkVEX1BvcykgICAgICAvKiE8IFNDQiBDRlNSIChVRlNSKTogVU5BTElHTkVEIE1hc2sgKi8NCiNkZWZpbmUgU0NCX0NGU1JfVU5BTElHTkVEICAgICAgICAgICAgICAgICAgU0NCX0NGU1JfVU5BTElHTkVEX01zayAgICAgICAgICAgICAvKiE8IEZhdWx0IG9jY3VycyB3aGVuIHRoZXJlIGlzIGFuIGF0dGVtcHQgdG8gbWFrZSBhbiB1bmFsaWduZWQgbWVtb3J5IGFjY2VzcyAqLw0KI2RlZmluZSBTQ0JfQ0ZTUl9ESVZCWVpFUk9fUG9zICAgICAgICAgICAgKFNDQl9DRlNSX1VTR0ZBVUxUU1JfUG9zICsgOVUpICAgICAgIC8qITwgU0NCIENGU1IgKFVGU1IpOiBESVZCWVpFUk8gUG9zaXRpb24gKi8NCiNkZWZpbmUgU0NCX0NGU1JfRElWQllaRVJPX01zayAgICAgICAgICAgICgxVUwgPDwgU0NCX0NGU1JfRElWQllaRVJPX1BvcykgICAgICAvKiE8IFNDQiBDRlNSIChVRlNSKTogRElWQllaRVJPIE1hc2sgKi8NCiNkZWZpbmUgU0NCX0NGU1JfRElWQllaRVJPICAgICAgICAgICAgICAgICAgU0NCX0NGU1JfRElWQllaRVJPX01zayAgICAgICAgICAgICAvKiE8IEZhdWx0IG9jY3VycyB3aGVuIFNESVYgb3IgRElWIGluc3RydWN0aW9uIGlzIHVzZWQgd2l0aCBhIGRpdmlzb3Igb2YgMCAqLw0KDQovKioqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFNDQl9IRlNSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBTQ0JfSEZTUl9WRUNUVEJMICAgICAgICAgICAgICAgICAgICAoMHgwMDAwMDAwMlUpICAgICAgICAgICAgICAgICAgICAgIC8qITwgRmF1bHQgb2NjdXJlcyBiZWNhdXNlIG9mIHZlY3RvciB0YWJsZSByZWFkIG9uIGV4Y2VwdGlvbiBwcm9jZXNzaW5nICovDQojZGVmaW5lIFNDQl9IRlNSX0ZPUkNFRCAgICAgICAgICAgICAgICAgICAgICgweDQwMDAwMDAwVSkgICAgICAgICAgICAgICAgICAgICAgLyohPCBIYXJkIEZhdWx0IGFjdGl2YXRlZCB3aGVuIGEgY29uZmlndXJhYmxlIEZhdWx0IHdhcyByZWNlaXZlZCBhbmQgY2Fubm90IGFjdGl2YXRlICovDQojZGVmaW5lIFNDQl9IRlNSX0RFQlVHRVZUICAgICAgICAgICAgICAgICAgICgweDgwMDAwMDAwVSkgICAgICAgICAgICAgICAgICAgICAgLyohPCBGYXVsdCByZWxhdGVkIHRvIGRlYnVnICovDQoNCi8qKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgU0NCX0RGU1IgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIFNDQl9ERlNSX0hBTFRFRCAgICAgICAgICAgICAgICAgICAgICgweDAwMDAwMDAxVSkgICAgICAgICAgICAgICAgICAgICAgLyohPCBIYWx0IHJlcXVlc3QgZmxhZyAqLw0KI2RlZmluZSBTQ0JfREZTUl9CS1BUICAgICAgICAgICAgICAgICAgICAgICAoMHgwMDAwMDAwMlUpICAgICAgICAgICAgICAgICAgICAgIC8qITwgQktQVCBmbGFnICovDQojZGVmaW5lIFNDQl9ERlNSX0RXVFRSQVAgICAgICAgICAgICAgICAgICAgICgweDAwMDAwMDA0VSkgICAgICAgICAgICAgICAgICAgICAgLyohPCBEYXRhIFdhdGNocG9pbnQgYW5kIFRyYWNlIChEV1QpIGZsYWcgKi8NCiNkZWZpbmUgU0NCX0RGU1JfVkNBVENIICAgICAgICAgICAgICAgICAgICAgKDB4MDAwMDAwMDhVKSAgICAgICAgICAgICAgICAgICAgICAvKiE8IFZlY3RvciBjYXRjaCBmbGFnICovDQojZGVmaW5lIFNDQl9ERlNSX0VYVEVSTkFMICAgICAgICAgICAgICAgICAgICgweDAwMDAwMDEwVSkgICAgICAgICAgICAgICAgICAgICAgLyohPCBFeHRlcm5hbCBkZWJ1ZyByZXF1ZXN0IGZsYWcgKi8NCg0KLyoqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBTQ0JfTU1GQVIgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgU0NCX01NRkFSX0FERFJFU1NfUG9zICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgU0NCX01NRkFSX0FERFJFU1NfTXNrICAgICAgICAgICAgICAgKDB4RkZGRkZGRkZVIDw8IFNDQl9NTUZBUl9BRERSRVNTX1BvcykgLyohPCAweEZGRkZGRkZGICovDQojZGVmaW5lIFNDQl9NTUZBUl9BRERSRVNTICAgICAgICAgICAgICAgICAgIFNDQl9NTUZBUl9BRERSRVNTX01zayAgICAgICAgICAgICAgLyohPCBNZW0gTWFuYWdlIGZhdWx0IGFkZHJlc3MgZmllbGQgKi8NCg0KLyoqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBTQ0JfQkZBUiByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgU0NCX0JGQVJfQUREUkVTU19Qb3MgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgU0NCX0JGQVJfQUREUkVTU19Nc2sgICAgICAgICAgICAgICAgKDB4RkZGRkZGRkZVIDw8IFNDQl9CRkFSX0FERFJFU1NfUG9zKSAvKiE8IDB4RkZGRkZGRkYgKi8NCiNkZWZpbmUgU0NCX0JGQVJfQUREUkVTUyAgICAgICAgICAgICAgICAgICAgU0NCX0JGQVJfQUREUkVTU19Nc2sgICAgICAgICAgICAgICAvKiE8IEJ1cyBmYXVsdCBhZGRyZXNzIGZpZWxkICovDQoNCi8qKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgU0NCX2Fmc3IgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIFNDQl9BRlNSX0lNUERFRl9Qb3MgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFNDQl9BRlNSX0lNUERFRl9Nc2sgICAgICAgICAgICAgICAgICgweEZGRkZGRkZGVSA8PCBTQ0JfQUZTUl9JTVBERUZfUG9zKSAvKiE8IDB4RkZGRkZGRkYgKi8NCiNkZWZpbmUgU0NCX0FGU1JfSU1QREVGICAgICAgICAgICAgICAgICAgICAgU0NCX0FGU1JfSU1QREVGX01zayAgICAgICAgICAgICAgICAvKiE8IEltcGxlbWVudGF0aW9uIGRlZmluZWQgKi8NCi8qKg0KICAqIEB9DQogICovDQoNCiAvKioNCiAgKiBAfQ0KICAqLyANCi8qKiBAYWRkdG9ncm91cCBFeHBvcnRlZF9tYWNybw0KICAqIEB7DQogICovDQogICAgICANCi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKiogQURDIEluc3RhbmNlcyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIElTX0FEQ19BTExfSU5TVEFOQ0UoSU5TVEFOQ0UpICgoSU5TVEFOQ0UpID09IEFEQzEpDQoNCiNkZWZpbmUgSVNfQURDX0NPTU1PTl9JTlNUQU5DRShJTlNUQU5DRSkgKChJTlNUQU5DRSkgPT0gQURDMV9DT01NT04pDQoNCi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiBDT01QIEluc3RhbmNlcyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIElTX0NPTVBfQUxMX0lOU1RBTkNFKElOU1RBTkNFKSAoKChJTlNUQU5DRSkgPT0gQ09NUDEpIHx8IFwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBDT01QMikpDQoNCiNkZWZpbmUgSVNfQ09NUF9DT01NT05fSU5TVEFOQ0UoQ09NTU9OX0lOU1RBTkNFKSAoKENPTU1PTl9JTlNUQU5DRSkgPT0gQ09NUDEyX0NPTU1PTikNCg0KLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiBDUkMgSW5zdGFuY2VzICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgSVNfQ1JDX0FMTF9JTlNUQU5DRShJTlNUQU5DRSkgKChJTlNUQU5DRSkgPT0gQ1JDKQ0KDQovKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqIERBQyBJbnN0YW5jZXMgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBJU19EQUNfQUxMX0lOU1RBTkNFKElOU1RBTkNFKSAoKElOU1RBTkNFKSA9PSBEQUMpDQoNCi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKiogRE1BIEluc3RhbmNlcyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIElTX0RNQV9BTExfSU5TVEFOQ0UoSU5TVEFOQ0UpICgoKElOU1RBTkNFKSA9PSBETUExX0NoYW5uZWwxKSB8fCBcDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBETUExX0NoYW5uZWwyKSB8fCBcDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBETUExX0NoYW5uZWwzKSB8fCBcDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBETUExX0NoYW5uZWw0KSB8fCBcDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBETUExX0NoYW5uZWw1KSB8fCBcDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBETUExX0NoYW5uZWw2KSB8fCBcDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBETUExX0NoYW5uZWw3KSB8fCBcDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBETUEyX0NoYW5uZWwxKSB8fCBcDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBETUEyX0NoYW5uZWwyKSB8fCBcDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBETUEyX0NoYW5uZWwzKSB8fCBcDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBETUEyX0NoYW5uZWw0KSB8fCBcDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBETUEyX0NoYW5uZWw1KSkNCg0KLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiogR1BJTyBJbnN0YW5jZXMgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgSVNfR1BJT19BTExfSU5TVEFOQ0UoSU5TVEFOQ0UpICgoKElOU1RBTkNFKSA9PSBHUElPQSkgfHwgXA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoSU5TVEFOQ0UpID09IEdQSU9CKSB8fCBcDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gR1BJT0MpIHx8IFwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBHUElPRCkgfHwgXA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoSU5TVEFOQ0UpID09IEdQSU9FKSB8fCBcDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gR1BJT0YpIHx8IFwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBHUElPRykgfHwgXA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoSU5TVEFOQ0UpID09IEdQSU9IKSkNCg0KLyoqKioqKioqKioqKioqKioqKioqKioqKioqKiogR1BJTyBBbHRlcm5hdGUgRnVuY3Rpb24gSW5zdGFuY2VzICoqKioqKioqKioqKioqKi8NCiNkZWZpbmUgSVNfR1BJT19BRl9JTlNUQU5DRShJTlNUQU5DRSkgSVNfR1BJT19BTExfSU5TVEFOQ0UoSU5TVEFOQ0UpDQoNCi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqIEdQSU8gTG9jayBJbnN0YW5jZXMgKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovDQovKiBPbiBMMSwgYWxsIEdQSU8gQmFuayBzdXBwb3J0IHRoZSBMb2NrIG1lY2hhbmlzbSAqLw0KI2RlZmluZSBJU19HUElPX0xPQ0tfSU5TVEFOQ0UoSU5TVEFOQ0UpIElTX0dQSU9fQUxMX0lOU1RBTkNFKElOU1RBTkNFKQ0KDQovKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiogSTJDIEluc3RhbmNlcyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBJU19JMkNfQUxMX0lOU1RBTkNFKElOU1RBTkNFKSAoKChJTlNUQU5DRSkgPT0gSTJDMSkgfHwgXA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gSTJDMikpDQoNCi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKiogU01CVVMgSW5zdGFuY2VzICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIElTX1NNQlVTX0FMTF9JTlNUQU5DRShJTlNUQU5DRSkgSVNfSTJDX0FMTF9JTlNUQU5DRShJTlNUQU5DRSkNCg0KLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqIEkyUyBJbnN0YW5jZXMgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgSVNfSTJTX0FMTF9JTlNUQU5DRShJTlNUQU5DRSkgKCgoSU5TVEFOQ0UpID09IFNQSTIpIHx8IFwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoSU5TVEFOQ0UpID09IFNQSTMpKQ0KLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiBJV0RHIEluc3RhbmNlcyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgSVNfSVdER19BTExfSU5TVEFOQ0UoSU5TVEFOQ0UpICAoKElOU1RBTkNFKSA9PSBJV0RHKQ0KDQovKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqIE9QQU1QIEluc3RhbmNlcyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBJU19PUEFNUF9BTExfSU5TVEFOQ0UoSU5TVEFOQ0UpICgoKElOU1RBTkNFKSA9PSBPUEFNUDEpIHx8IFwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gT1BBTVAyKSkNCg0KI2RlZmluZSBJU19PUEFNUF9DT01NT05fSU5TVEFOQ0UoQ09NTU9OX0lOU1RBTkNFKSAoKENPTU1PTl9JTlNUQU5DRSkgPT0gT1BBTVAxMl9DT01NT04pDQoNCi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKiogUlRDIEluc3RhbmNlcyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIElTX1JUQ19BTExfSU5TVEFOQ0UoSU5TVEFOQ0UpICAoKElOU1RBTkNFKSA9PSBSVEMpDQoNCi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiBTUEkgSW5zdGFuY2VzICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIElTX1NQSV9BTExfSU5TVEFOQ0UoSU5TVEFOQ0UpICgoKElOU1RBTkNFKSA9PSBTUEkxKSB8fCBcDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBTUEkyKSB8fCBcDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBTUEkzKSkNCg0KLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiBUSU0gSW5zdGFuY2VzICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8gDQojZGVmaW5lIElTX1RJTV9JTlNUQU5DRShJTlNUQU5DRSkgKCgoSU5TVEFOQ0UpID09IFRJTTIpICAgIHx8IFwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gVElNMykgICAgfHwgXA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBUSU00KSAgICB8fCBcDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoSU5TVEFOQ0UpID09IFRJTTUpICAgIHx8IFwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gVElNNikgICAgfHwgXA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBUSU03KSAgICB8fCBcDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoSU5TVEFOQ0UpID09IFRJTTkpICAgIHx8IFwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gVElNMTApICAgfHwgXA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBUSU0xMSkpDQoNCiNkZWZpbmUgSVNfVElNX0NDMV9JTlNUQU5DRShJTlNUQU5DRSkgKCgoSU5TVEFOQ0UpID09IFRJTTIpICB8fCBcDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBUSU0zKSAgfHwgXA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gVElNNCkgIHx8IFwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoSU5TVEFOQ0UpID09IFRJTTUpICB8fCBcDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBUSU05KSAgfHwgXA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gVElNMTApIHx8IFwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoSU5TVEFOQ0UpID09IFRJTTExKSkNCg0KI2RlZmluZSBJU19USU1fQ0MyX0lOU1RBTkNFKElOU1RBTkNFKSAoKChJTlNUQU5DRSkgPT0gVElNMikgIHx8IFwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoSU5TVEFOQ0UpID09IFRJTTMpICB8fCBcDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBUSU00KSAgfHwgXA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gVElNNSkgIHx8IFwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoSU5TVEFOQ0UpID09IFRJTTkpKQ0KDQojZGVmaW5lIElTX1RJTV9DQzNfSU5TVEFOQ0UoSU5TVEFOQ0UpICgoKElOU1RBTkNFKSA9PSBUSU0yKSAgfHwgXA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gVElNMykgIHx8IFwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoSU5TVEFOQ0UpID09IFRJTTQpICB8fCBcDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBUSU01KSkNCg0KI2RlZmluZSBJU19USU1fQ0M0X0lOU1RBTkNFKElOU1RBTkNFKSAoKChJTlNUQU5DRSkgPT0gVElNMikgIHx8IFwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoSU5TVEFOQ0UpID09IFRJTTMpICB8fCBcDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBUSU00KSAgfHwgXA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gVElNNSkpDQoNCiNkZWZpbmUgSVNfVElNX0NMT0NLU09VUkNFX0VUUk1PREUxX0lOU1RBTkNFKElOU1RBTkNFKSAoKChJTlNUQU5DRSkgPT0gVElNMikgIHx8IFwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gVElNMykgIHx8IFwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gVElNNCkgIHx8IFwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gVElNNSkgIHx8IFwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gVElNOSkpDQoNCiNkZWZpbmUgSVNfVElNX0NMT0NLU09VUkNFX0VUUk1PREUyX0lOU1RBTkNFKElOU1RBTkNFKSAoKChJTlNUQU5DRSkgPT0gVElNMikgIHx8IFwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gVElNMykgIHx8IFwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gVElNNCkgIHx8IFwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gVElNNSkgIHx8IFwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gVElNOSkgIHx8IFwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gVElNMTApIHx8IFwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gVElNMTEpKQ0KDQojZGVmaW5lIElTX1RJTV9DTE9DS1NPVVJDRV9USVhfSU5TVEFOQ0UoSU5TVEFOQ0UpICgoKElOU1RBTkNFKSA9PSBUSU0yKSAgfHwgXA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gVElNMykgIHx8IFwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoSU5TVEFOQ0UpID09IFRJTTQpICB8fCBcDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBUSU01KSAgfHwgXA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gVElNOSkpDQoNCiNkZWZpbmUgSVNfVElNX0NMT0NLU09VUkNFX0lUUlhfSU5TVEFOQ0UoSU5TVEFOQ0UpICgoKElOU1RBTkNFKSA9PSBUSU0yKSAgfHwgXA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoSU5TVEFOQ0UpID09IFRJTTMpICB8fCBcDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gVElNNCkgIHx8IFwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBUSU01KSAgfHwgXA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoSU5TVEFOQ0UpID09IFRJTTkpKQ0KDQojZGVmaW5lIElTX1RJTV9PQ1hSRUZfQ0xFQVJfSU5TVEFOQ0UoSU5TVEFOQ0UpICgoKElOU1RBTkNFKSA9PSBUSU0yKSAgfHwgXA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gVElNMykgIHx8IFwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoSU5TVEFOQ0UpID09IFRJTTQpKQ0KDQojZGVmaW5lIElTX1RJTV9YT1JfSU5TVEFOQ0UoSU5TVEFOQ0UpICgoKElOU1RBTkNFKSA9PSBUSU0yKSAgfHwgXA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gVElNMykgIHx8IFwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoSU5TVEFOQ0UpID09IFRJTTQpICB8fCBcDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBUSU01KSkNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBJU19USU1fRVRSX0lOU1RBTkNFKElOU1RBTkNFKSAoKChJTlNUQU5DRSkgPT0gVElNMikgIHx8IFwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoSU5TVEFOQ0UpID09IFRJTTMpICB8fCBcDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBUSU00KSAgfHwgXA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gVElNNSkpDQoNCg0KI2RlZmluZSBJU19USU1fTUFTVEVSX0lOU1RBTkNFKElOU1RBTkNFKSAoKChJTlNUQU5DRSkgPT0gVElNMikgIHx8IFwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoSU5TVEFOQ0UpID09IFRJTTMpICB8fCBcDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBUSU00KSAgfHwgXA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gVElNNSkgIHx8IFwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoSU5TVEFOQ0UpID09IFRJTTYpICB8fCBcDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBUSU03KSAgfHwgXA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gVElNOSkpDQoNCiNkZWZpbmUgSVNfVElNX1NMQVZFX0lOU1RBTkNFKElOU1RBTkNFKSAoKChJTlNUQU5DRSkgPT0gVElNMikgIHx8IFwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gVElNMykgIHx8IFwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gVElNNCkgIHx8IFwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gVElNNSkgIHx8IFwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gVElNOSkpDQoNCiNkZWZpbmUgSVNfVElNXzMyQl9DT1VOVEVSX0lOU1RBTkNFKElOU1RBTkNFKSAoKElOU1RBTkNFKSA9PSBUSU01KQ0KDQojZGVmaW5lIElTX1RJTV9ETUFCVVJTVF9JTlNUQU5DRShJTlNUQU5DRSkgKCgoSU5TVEFOQ0UpID09IFRJTTIpICB8fCBcDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoSU5TVEFOQ0UpID09IFRJTTMpICB8fCBcDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoSU5TVEFOQ0UpID09IFRJTTQpICB8fCBcDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoSU5TVEFOQ0UpID09IFRJTTUpKQ0KDQojZGVmaW5lIElTX1RJTV9DQ1hfSU5TVEFOQ0UoSU5TVEFOQ0UsIENIQU5ORUwpIFwNCiAgICAoKCgoSU5TVEFOQ0UpID09IFRJTTIpICYmICAgICAgICAgICAgICAgICAgIFwNCiAgICAgKCgoQ0hBTk5FTCkgPT0gVElNX0NIQU5ORUxfMSkgfHwgICAgICAgICAgXA0KICAgICAgKChDSEFOTkVMKSA9PSBUSU1fQ0hBTk5FTF8yKSB8fCAgICAgICAgICBcDQogICAgICAoKENIQU5ORUwpID09IFRJTV9DSEFOTkVMXzMpIHx8ICAgICAgICAgIFwNCiAgICAgICgoQ0hBTk5FTCkgPT0gVElNX0NIQU5ORUxfNCkpKSAgICAgICAgICAgXA0KICAgIHx8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcDQogICAgKCgoSU5TVEFOQ0UpID09IFRJTTMpICYmICAgICAgICAgICAgICAgICAgIFwNCiAgICAgKCgoQ0hBTk5FTCkgPT0gVElNX0NIQU5ORUxfMSkgfHwgICAgICAgICAgXA0KICAgICAgKChDSEFOTkVMKSA9PSBUSU1fQ0hBTk5FTF8yKSB8fCAgICAgICAgICBcDQogICAgICAoKENIQU5ORUwpID09IFRJTV9DSEFOTkVMXzMpIHx8ICAgICAgICAgIFwNCiAgICAgICgoQ0hBTk5FTCkgPT0gVElNX0NIQU5ORUxfNCkpKSAgICAgICAgICAgXA0KICAgIHx8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcDQogICAgKCgoSU5TVEFOQ0UpID09IFRJTTQpICYmICAgICAgICAgICAgICAgICAgIFwNCiAgICAgKCgoQ0hBTk5FTCkgPT0gVElNX0NIQU5ORUxfMSkgfHwgICAgICAgICAgXA0KICAgICAgKChDSEFOTkVMKSA9PSBUSU1fQ0hBTk5FTF8yKSB8fCAgICAgICAgICBcDQogICAgICAoKENIQU5ORUwpID09IFRJTV9DSEFOTkVMXzMpIHx8ICAgICAgICAgIFwNCiAgICAgICgoQ0hBTk5FTCkgPT0gVElNX0NIQU5ORUxfNCkpKSAgICAgICAgICAgXA0KICAgIHx8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcDQogICAgKCgoSU5TVEFOQ0UpID09IFRJTTUpICYmICAgICAgICAgICAgICAgICAgIFwNCiAgICAgKCgoQ0hBTk5FTCkgPT0gVElNX0NIQU5ORUxfMSkgfHwgICAgICAgICAgXA0KICAgICAgKChDSEFOTkVMKSA9PSBUSU1fQ0hBTk5FTF8yKSB8fCAgICAgICAgICBcDQogICAgICAoKENIQU5ORUwpID09IFRJTV9DSEFOTkVMXzMpIHx8ICAgICAgICAgIFwNCiAgICAgICgoQ0hBTk5FTCkgPT0gVElNX0NIQU5ORUxfNCkpKSAgICAgICAgICAgXA0KICAgIHx8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcDQogICAgKCgoSU5TVEFOQ0UpID09IFRJTTkpICYmICAgICAgICAgICAgICAgICAgXA0KICAgICAoKChDSEFOTkVMKSA9PSBUSU1fQ0hBTk5FTF8xKSB8fCAgICAgICAgICBcDQogICAgICAoKENIQU5ORUwpID09IFRJTV9DSEFOTkVMXzIpKSkgICAgICAgICAgIFwNCiAgICB8fCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXA0KICAgICgoKElOU1RBTkNFKSA9PSBUSU0xMCkgJiYgICAgICAgICAgICAgICAgICBcDQogICAgICgoKENIQU5ORUwpID09IFRJTV9DSEFOTkVMXzEpKSkgICAgICAgICAgIFwNCiAgICB8fCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXA0KICAgICgoKElOU1RBTkNFKSA9PSBUSU0xMSkgJiYgICAgICAgICAgICAgICAgICBcDQogICAgICgoKENIQU5ORUwpID09IFRJTV9DSEFOTkVMXzEpKSkpDQoNCiNkZWZpbmUgSVNfVElNX0NMT0NLX0RJVklTSU9OX0lOU1RBTkNFKElOU1RBTkNFKSAoKChJTlNUQU5DRSkgPT0gVElNMikgIHx8IFwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gVElNMykgIHx8IFwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gVElNNCkgIHx8IFwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gVElNNSkgIHx8IFwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gVElNOSkgIHx8IFwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gVElNMTApIHx8IFwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gVElNMTEpKQ0KDQojZGVmaW5lIElTX1RJTV9ETUFfSU5TVEFOQ0UoSU5TVEFOQ0UpICgoKElOU1RBTkNFKSA9PSBUSU0yKSAgICB8fCBcDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBUSU0zKSAgICB8fCBcDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBUSU00KSAgICB8fCBcDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBUSU01KSAgICB8fCBcDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBUSU02KSAgICB8fCBcDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBUSU03KSkNCiAgICANCiNkZWZpbmUgSVNfVElNX0RNQV9DQ19JTlNUQU5DRShJTlNUQU5DRSkgKCgoSU5TVEFOQ0UpID09IFRJTTIpICB8fCBcDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBUSU0zKSAgfHwgXA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gVElNNCkgIHx8IFwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoSU5TVEFOQ0UpID09IFRJTTUpKQ0KDQojZGVmaW5lIElTX1RJTV9DT1VOVEVSX01PREVfU0VMRUNUX0lOU1RBTkNFKElOU1RBTkNFKSAoKChJTlNUQU5DRSkgPT0gVElNMikgICAgfHwgXA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoSU5TVEFOQ0UpID09IFRJTTMpICAgIHx8IFwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBUSU00KSAgICB8fCBcDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gVElNNSkgICAgfHwgXA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoSU5TVEFOQ0UpID09IFRJTTkpKQ0KDQojZGVmaW5lIElTX1RJTV9FTkNPREVSX0lOVEVSRkFDRV9JTlNUQU5DRShJTlNUQU5DRSkgKCgoSU5TVEFOQ0UpID09IFRJTTIpICB8fCBcDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoSU5TVEFOQ0UpID09IFRJTTMpICB8fCBcDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoSU5TVEFOQ0UpID09IFRJTTQpICB8fCBcDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoSU5TVEFOQ0UpID09IFRJTTUpICB8fCBcDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoSU5TVEFOQ0UpID09IFRJTTkpKQ0KDQojZGVmaW5lIElTX1RJTV9SRU1BUF9JTlNUQU5DRShJTlNUQU5DRSkgKCgoSU5TVEFOQ0UpID09IFRJTTIpICAgIHx8IFwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gVElNMykgICAgfHwgXA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBUSU05KSAgICB8fCBcDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoSU5TVEFOQ0UpID09IFRJTTEwKSAgIHx8IFwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gVElNMTEpKQ0KDQovKioqKioqKioqKioqKioqKioqKiogVVNBUlQgSW5zdGFuY2VzIDogU3luY2hyb25vdXMgbW9kZSAqKioqKioqKioqKioqKioqKioqKioqLyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgSVNfVVNBUlRfSU5TVEFOQ0UoSU5TVEFOQ0UpICgoKElOU1RBTkNFKSA9PSBVU0FSVDEpIHx8IFwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBVU0FSVDIpIHx8IFwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBVU0FSVDMpKQ0KDQovKioqKioqKioqKioqKioqKioqKiogVUFSVCBJbnN0YW5jZXMgOiBBc3luY2hyb25vdXMgbW9kZSAqKioqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBJU19VQVJUX0lOU1RBTkNFKElOU1RBTkNFKSAoKChJTlNUQU5DRSkgPT0gVVNBUlQxKSB8fCBcDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBVU0FSVDIpIHx8IFwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoSU5TVEFOQ0UpID09IFVTQVJUMykgfHwgXA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gVUFSVDQpICB8fCBcDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBVQVJUNSkpDQoNCi8qKioqKioqKioqKioqKioqKioqKiBVQVJUIEluc3RhbmNlcyA6IEhhbGYtRHVwbGV4IG1vZGUgKioqKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgSVNfVUFSVF9IQUxGRFVQTEVYX0lOU1RBTkNFKElOU1RBTkNFKSAgICgoKElOU1RBTkNFKSA9PSBVU0FSVDEpIHx8IFwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBVU0FSVDIpIHx8IFwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBVU0FSVDMpIHx8IFwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBVQVJUNCkgIHx8IFwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBVQVJUNSkpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQoNCi8qKioqKioqKioqKioqKioqKioqKiBVQVJUIEluc3RhbmNlcyA6IExJTiBtb2RlICoqKioqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIElTX1VBUlRfTElOX0lOU1RBTkNFKElOU1RBTkNFKSAgICgoKElOU1RBTkNFKSA9PSBVU0FSVDEpIHx8IFwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoSU5TVEFOQ0UpID09IFVTQVJUMikgfHwgXA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gVVNBUlQzKSB8fCBcDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBVQVJUNCkgIHx8IFwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoSU5TVEFOQ0UpID09IFVBUlQ1KSkgDQoNCi8qKioqKioqKioqKioqKioqKiogVUFSVCBJbnN0YW5jZXMgOiBIYXJkd2FyZSBGbG93IGNvbnRyb2wgKioqKioqKioqKioqKioqKioqKiovICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIElTX1VBUlRfSFdGTE9XX0lOU1RBTkNFKElOU1RBTkNFKSAoKChJTlNUQU5DRSkgPT0gVVNBUlQxKSB8fCBcDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gVVNBUlQyKSB8fCBcDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gVVNBUlQzKSkNCg0KLyoqKioqKioqKioqKioqKioqKioqKiBVQVJUIEluc3RhbmNlcyA6IFNtYXJkIGNhcmQgbW9kZSAqKioqKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgSVNfU01BUlRDQVJEX0lOU1RBTkNFKElOU1RBTkNFKSAoKChJTlNUQU5DRSkgPT0gVVNBUlQxKSB8fCBcDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoSU5TVEFOQ0UpID09IFVTQVJUMikgfHwgXA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBVU0FSVDMpKQ0KDQovKioqKioqKioqKioqKioqKioqKioqKiogVUFSVCBJbnN0YW5jZXMgOiBJUkRBIG1vZGUgKioqKioqKioqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBJU19JUkRBX0lOU1RBTkNFKElOU1RBTkNFKSAoKChJTlNUQU5DRSkgPT0gVVNBUlQxKSB8fCBcDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBVU0FSVDIpIHx8IFwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoSU5TVEFOQ0UpID09IFVTQVJUMykgfHwgXA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gVUFSVDQpICB8fCBcDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBVQVJUNSkpDQoNCi8qKioqKioqKioqKioqKioqKiBVQVJUIEluc3RhbmNlcyA6IE11bHRpLVByb2Nlc3NvciBtb2RlICoqKioqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIElTX1VBUlRfTVVMVElQUk9DRVNTT1JfSU5TVEFOQ0UoSU5TVEFOQ0UpICAgKCgoSU5TVEFOQ0UpID09IFVTQVJUMSkgfHwgXA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBVU0FSVDIpIHx8IFwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gVVNBUlQzKSB8fCBcDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoSU5TVEFOQ0UpID09IFVBUlQ0KSAgfHwgXA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBVQVJUNSkpIA0KDQovKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqIFdXREcgSW5zdGFuY2VzICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBJU19XV0RHX0FMTF9JTlNUQU5DRShJTlNUQU5DRSkgICgoSU5TVEFOQ0UpID09IFdXREcpDQoNCg0KLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiBMQ0QgSW5zdGFuY2VzICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBJU19MQ0RfQUxMX0lOU1RBTkNFKElOU1RBTkNFKSAoKElOU1RBTkNFKSA9PSBMQ0QpDQoNCi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKiogVVNCIEluc3RhbmNlcyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgSVNfVVNCX0FMTF9JTlNUQU5DRShJTlNUQU5DRSkgKChJTlNUQU5DRSkgPT0gVVNCKQ0KDQovKioNCiAgKiBAfQ0KICAqLw0KDQovKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLw0KLyogIEZvciBhIHBhaW5sZXNzIGNvZGVzIG1pZ3JhdGlvbiBiZXR3ZWVuIHRoZSBTVE0zMkwxeHggZGV2aWNlIHByb2R1Y3QgICAgICAgKi8NCi8qICBsaW5lcywgdGhlIGFsaWFzZXMgZGVmaW5lZCBiZWxvdyBhcmUgcHV0IGluIHBsYWNlIHRvIG92ZXJjb21lIHRoZSAgICAgICAgICovDQovKiAgZGlmZmVyZW5jZXMgaW4gdGhlIGludGVycnVwdCBoYW5kbGVycyBhbmQgSVJRbiBkZWZpbml0aW9ucy4gICAgICAgICAgICAgICAqLw0KLyogIE5vIG5lZWQgdG8gdXBkYXRlIGRldmVsb3BlZCBpbnRlcnJ1cHQgY29kZSB3aGVuIG1vdmluZyBhY3Jvc3MgICAgICAgICAgICAgKi8gDQovKiAgcHJvZHVjdCBsaW5lcyB3aXRoaW4gdGhlIHNhbWUgU1RNMzJMMSBGYW1pbHkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLw0KLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8NCg0KLyogQWxpYXNlcyBmb3IgX19JUlFuICovDQoNCi8qIEFsaWFzZXMgZm9yIF9fSVJRSGFuZGxlciAqLw0KDQovKioNCiAgKiBAfQ0KICAqLw0KDQovKioNCiAgKiBAfQ0KICAqLw0KDQojaWZkZWYgX19jcGx1c3BsdXMNCn0NCiNlbmRpZiAvKiBfX2NwbHVzcGx1cyAqLw0KDQojZW5kaWYgLyogX19TVE0zMkwxNTJ4RV9IICovDQoNCg0KDQovKioqKioqKioqKioqKioqKioqKioqKioqIChDKSBDT1BZUklHSFQgU1RNaWNyb2VsZWN0cm9uaWNzICoqKioqRU5EIE9GIEZJTEUqKioqLw0K