LyoqDQogICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKg0KICAqIEBmaWxlICAgIHN0bTMybDE2MnhjLmgNCiAgKiBAYXV0aG9yICBNQ0QgQXBwbGljYXRpb24gVGVhbQ0KICAqIEBicmllZiAgIENNU0lTIENvcnRleC1NMyBEZXZpY2UgUGVyaXBoZXJhbCBBY2Nlc3MgTGF5ZXIgSGVhZGVyIEZpbGUuIA0KICAqICAgICAgICAgIFRoaXMgZmlsZSBjb250YWlucyBhbGwgdGhlIHBlcmlwaGVyYWwgcmVnaXN0ZXIncyBkZWZpbml0aW9ucywgYml0cyANCiAgKiAgICAgICAgICBkZWZpbml0aW9ucyBhbmQgbWVtb3J5IG1hcHBpbmcgZm9yIFNUTTMyTDF4eCBkZXZpY2VzLiAgICAgICAgICAgIA0KICAqICAgICAgICAgICAgDQogICogICAgICAgICAgVGhpcyBmaWxlIGNvbnRhaW5zOg0KICAqICAgICAgICAgICAtIERhdGEgc3RydWN0dXJlcyBhbmQgdGhlIGFkZHJlc3MgbWFwcGluZyBmb3IgYWxsIHBlcmlwaGVyYWxzDQogICogICAgICAgICAgIC0gUGVyaXBoZXJhbCdzIHJlZ2lzdGVycyBkZWNsYXJhdGlvbnMgYW5kIGJpdHMgZGVmaW5pdGlvbg0KICAqICAgICAgICAgICAtIE1hY3JvcyB0byBhY2Nlc3MgcGVyaXBoZXJhbJJzIHJlZ2lzdGVycyBoYXJkd2FyZQ0KICAqICANCiAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqDQogICogQGF0dGVudGlvbg0KICAqDQogICogPGgyPjxjZW50ZXI+JmNvcHk7IENPUFlSSUdIVChjKSAyMDE3IFNUTWljcm9lbGVjdHJvbmljczwvY2VudGVyPjwvaDI+DQogICoNCiAgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQgbW9kaWZpY2F0aW9uLA0KICAqIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMgYXJlIG1ldDoNCiAgKiAgIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSwNCiAgKiAgICAgIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuDQogICogICAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2UsDQogICogICAgICB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZSBkb2N1bWVudGF0aW9uDQogICogICAgICBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4NCiAgKiAgIDMuIE5laXRoZXIgdGhlIG5hbWUgb2YgU1RNaWNyb2VsZWN0cm9uaWNzIG5vciB0aGUgbmFtZXMgb2YgaXRzIGNvbnRyaWJ1dG9ycw0KICAqICAgICAgbWF5IGJlIHVzZWQgdG8gZW5kb3JzZSBvciBwcm9tb3RlIHByb2R1Y3RzIGRlcml2ZWQgZnJvbSB0aGlzIHNvZnR3YXJlDQogICogICAgICB3aXRob3V0IHNwZWNpZmljIHByaW9yIHdyaXR0ZW4gcGVybWlzc2lvbi4NCiAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiAgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQgSE9MREVSUyBBTkQgQ09OVFJJQlVUT1JTICJBUyBJUyINCiAgKiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFDQogICogSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJFDQogICogRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFIENPUFlSSUdIVCBIT0xERVIgT1IgQ09OVFJJQlVUT1JTIEJFIExJQUJMRQ0KICAqIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMDQogICogREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1INCiAgKiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUg0KICAqIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksDQogICogT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UNCiAgKiBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLg0KICAqDQogICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKg0KICAqLw0KDQovKiogQGFkZHRvZ3JvdXAgQ01TSVMNCiAgKiBAew0KICAqLw0KDQovKiogQGFkZHRvZ3JvdXAgc3RtMzJsMTYyeGMNCiAgKiBAew0KICAqLw0KICAgIA0KI2lmbmRlZiBfX1NUTTMyTDE2MnhDX0gNCiNkZWZpbmUgX19TVE0zMkwxNjJ4Q19IDQoNCiNpZmRlZiBfX2NwbHVzcGx1cw0KIGV4dGVybiAiQyIgew0KI2VuZGlmIA0KICANCg0KICAvKiogQGFkZHRvZ3JvdXAgQ29uZmlndXJhdGlvbl9zZWN0aW9uX2Zvcl9DTVNJUw0KICAqIEB7DQogICovDQovKioNCiAgKiBAYnJpZWYgQ29uZmlndXJhdGlvbiBvZiB0aGUgQ29ydGV4LU0zIFByb2Nlc3NvciBhbmQgQ29yZSBQZXJpcGhlcmFscyANCiAqLw0KI2RlZmluZSBfX0NNM19SRVYgICAgICAgICAgICAgICAgIDB4MjAwVSAvKiE8IENvcnRleC1NMyBSZXZpc2lvbiByMnAwICAgICAgICAgICAgICAgICAgKi8NCiNkZWZpbmUgX19NUFVfUFJFU0VOVCAgICAgICAgICAgICAxVSAgICAgLyohPCBTVE0zMkwxeHggcHJvdmlkZXMgTVBVICAgICAgICAgICAgICAgICAgICAgICAgICAqLw0KI2RlZmluZSBfX05WSUNfUFJJT19CSVRTICAgICAgICAgIDRVICAgICAvKiE8IFNUTTMyTDF4eCB1c2VzIDQgQml0cyBmb3IgdGhlIFByaW9yaXR5IExldmVscyAgICAqLw0KI2RlZmluZSBfX1ZlbmRvcl9TeXNUaWNrQ29uZmlnICAgIDBVICAgICAvKiE8IFNldCB0byAxIGlmIGRpZmZlcmVudCBTeXNUaWNrIENvbmZpZyBpcyB1c2VkICovDQogDQovKioNCiAgKiBAfQ0KICAqLw0KICAgDQovKiogQGFkZHRvZ3JvdXAgUGVyaXBoZXJhbF9pbnRlcnJ1cHRfbnVtYmVyX2RlZmluaXRpb24NCiAgKiBAew0KICAqLw0KDQovKioNCiAqIEBicmllZiBTVE0zMkwxeHggSW50ZXJydXB0IE51bWJlciBEZWZpbml0aW9uLCBhY2NvcmRpbmcgdG8gdGhlIHNlbGVjdGVkIGRldmljZSANCiAqICAgICAgICBpbiBAcmVmIExpYnJhcnlfY29uZmlndXJhdGlvbl9zZWN0aW9uIA0KICovDQoNCiAvKiE8IEludGVycnVwdCBOdW1iZXIgRGVmaW5pdGlvbiAqLw0KdHlwZWRlZiBlbnVtDQp7DQovKioqKioqICBDb3J0ZXgtTTMgUHJvY2Vzc29yIEV4Y2VwdGlvbnMgTnVtYmVycyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovDQogIE5vbk1hc2thYmxlSW50X0lSUW4gICAgICAgICA9IC0xNCwgICAgLyohPCAyIE5vbiBNYXNrYWJsZSBJbnRlcnJ1cHQgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovDQogIEhhcmRGYXVsdF9JUlFuICAgICAgICAgICAgICA9IC0xMywgICAgLyohPCAzIENvcnRleC1NMyBIYXJkIEZhdWx0IEludGVycnVwdCAgICAgICAgICAgICAgICAgICAgICAgICovDQogIE1lbW9yeU1hbmFnZW1lbnRfSVJRbiAgICAgICA9IC0xMiwgICAgLyohPCA0IENvcnRleC1NMyBNZW1vcnkgTWFuYWdlbWVudCBJbnRlcnJ1cHQgICAgICAgICAgICAgICAgICovDQogIEJ1c0ZhdWx0X0lSUW4gICAgICAgICAgICAgICA9IC0xMSwgICAgLyohPCA1IENvcnRleC1NMyBCdXMgRmF1bHQgSW50ZXJydXB0ICAgICAgICAgICAgICAgICAgICAgICAgICovDQogIFVzYWdlRmF1bHRfSVJRbiAgICAgICAgICAgICA9IC0xMCwgICAgLyohPCA2IENvcnRleC1NMyBVc2FnZSBGYXVsdCBJbnRlcnJ1cHQgICAgICAgICAgICAgICAgICAgICAgICovDQogIFNWQ19JUlFuICAgICAgICAgICAgICAgICAgICA9IC01LCAgICAgLyohPCAxMSBDb3J0ZXgtTTMgU1YgQ2FsbCBJbnRlcnJ1cHQgICAgICAgICAgICAgICAgICAgICAgICAgICovDQogIERlYnVnTW9uaXRvcl9JUlFuICAgICAgICAgICA9IC00LCAgICAgLyohPCAxMiBDb3J0ZXgtTTMgRGVidWcgTW9uaXRvciBJbnRlcnJ1cHQgICAgICAgICAgICAgICAgICAgICovDQogIFBlbmRTVl9JUlFuICAgICAgICAgICAgICAgICA9IC0yLCAgICAgLyohPCAxNCBDb3J0ZXgtTTMgUGVuZCBTViBJbnRlcnJ1cHQgICAgICAgICAgICAgICAgICAgICAgICAgICovDQogIFN5c1RpY2tfSVJRbiAgICAgICAgICAgICAgICA9IC0xLCAgICAgLyohPCAxNSBDb3J0ZXgtTTMgU3lzdGVtIFRpY2sgSW50ZXJydXB0ICAgICAgICAgICAgICAgICAgICAgICovDQoNCi8qKioqKiogIFNUTTMyTCBzcGVjaWZpYyBJbnRlcnJ1cHQgTnVtYmVycyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8NCiAgV1dER19JUlFuICAgICAgICAgICAgICAgICAgID0gMCwgICAgICAvKiE8IFdpbmRvdyBXYXRjaERvZyBJbnRlcnJ1cHQgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8NCiAgUFZEX0lSUW4gICAgICAgICAgICAgICAgICAgID0gMSwgICAgICAvKiE8IFBWRCB0aHJvdWdoIEVYVEkgTGluZSBkZXRlY3Rpb24gSW50ZXJydXB0ICAgICAgICAgICAgICAgKi8NCiAgVEFNUEVSX1NUQU1QX0lSUW4gICAgICAgICAgID0gMiwgICAgICAvKiE8IFRhbXBlciBhbmQgVGltZVN0YW1wIGludGVycnVwdHMgdGhyb3VnaCB0aGUgRVhUSSBsaW5lICAgKi8NCiAgUlRDX1dLVVBfSVJRbiAgICAgICAgICAgICAgID0gMywgICAgICAvKiE8IFJUQyBXYWtldXAgVGltZXIgdGhyb3VnaCBFWFRJIExpbmUgSW50ZXJydXB0ICAgICAgICAgICAgKi8NCiAgRkxBU0hfSVJRbiAgICAgICAgICAgICAgICAgID0gNCwgICAgICAvKiE8IEZMQVNIIGdsb2JhbCBJbnRlcnJ1cHQgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8NCiAgUkNDX0lSUW4gICAgICAgICAgICAgICAgICAgID0gNSwgICAgICAvKiE8IFJDQyBnbG9iYWwgSW50ZXJydXB0ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8NCiAgRVhUSTBfSVJRbiAgICAgICAgICAgICAgICAgID0gNiwgICAgICAvKiE8IEVYVEkgTGluZTAgSW50ZXJydXB0ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8NCiAgRVhUSTFfSVJRbiAgICAgICAgICAgICAgICAgID0gNywgICAgICAvKiE8IEVYVEkgTGluZTEgSW50ZXJydXB0ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8NCiAgRVhUSTJfSVJRbiAgICAgICAgICAgICAgICAgID0gOCwgICAgICAvKiE8IEVYVEkgTGluZTIgSW50ZXJydXB0ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8NCiAgRVhUSTNfSVJRbiAgICAgICAgICAgICAgICAgID0gOSwgICAgICAvKiE8IEVYVEkgTGluZTMgSW50ZXJydXB0ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8NCiAgRVhUSTRfSVJRbiAgICAgICAgICAgICAgICAgID0gMTAsICAgICAvKiE8IEVYVEkgTGluZTQgSW50ZXJydXB0ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8NCiAgRE1BMV9DaGFubmVsMV9JUlFuICAgICAgICAgID0gMTEsICAgICAvKiE8IERNQTEgQ2hhbm5lbCAxIGdsb2JhbCBJbnRlcnJ1cHQgICAgICAgICAgICAgICAgICAgICAgICAgKi8NCiAgRE1BMV9DaGFubmVsMl9JUlFuICAgICAgICAgID0gMTIsICAgICAvKiE8IERNQTEgQ2hhbm5lbCAyIGdsb2JhbCBJbnRlcnJ1cHQgICAgICAgICAgICAgICAgICAgICAgICAgKi8NCiAgRE1BMV9DaGFubmVsM19JUlFuICAgICAgICAgID0gMTMsICAgICAvKiE8IERNQTEgQ2hhbm5lbCAzIGdsb2JhbCBJbnRlcnJ1cHQgICAgICAgICAgICAgICAgICAgICAgICAgKi8NCiAgRE1BMV9DaGFubmVsNF9JUlFuICAgICAgICAgID0gMTQsICAgICAvKiE8IERNQTEgQ2hhbm5lbCA0IGdsb2JhbCBJbnRlcnJ1cHQgICAgICAgICAgICAgICAgICAgICAgICAgKi8NCiAgRE1BMV9DaGFubmVsNV9JUlFuICAgICAgICAgID0gMTUsICAgICAvKiE8IERNQTEgQ2hhbm5lbCA1IGdsb2JhbCBJbnRlcnJ1cHQgICAgICAgICAgICAgICAgICAgICAgICAgKi8NCiAgRE1BMV9DaGFubmVsNl9JUlFuICAgICAgICAgID0gMTYsICAgICAvKiE8IERNQTEgQ2hhbm5lbCA2IGdsb2JhbCBJbnRlcnJ1cHQgICAgICAgICAgICAgICAgICAgICAgICAgKi8NCiAgRE1BMV9DaGFubmVsN19JUlFuICAgICAgICAgID0gMTcsICAgICAvKiE8IERNQTEgQ2hhbm5lbCA3IGdsb2JhbCBJbnRlcnJ1cHQgICAgICAgICAgICAgICAgICAgICAgICAgKi8NCiAgQURDMV9JUlFuICAgICAgICAgICAgICAgICAgID0gMTgsICAgICAvKiE8IEFEQzEgZ2xvYmFsIEludGVycnVwdCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8NCiAgVVNCX0hQX0lSUW4gICAgICAgICAgICAgICAgID0gMTksICAgICAvKiE8IFVTQiBIaWdoIFByaW9yaXR5IEludGVycnVwdCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8NCiAgVVNCX0xQX0lSUW4gICAgICAgICAgICAgICAgID0gMjAsICAgICAvKiE8IFVTQiBMb3cgUHJpb3JpdHkgSW50ZXJydXB0ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8NCiAgREFDX0lSUW4gICAgICAgICAgICAgICAgICAgID0gMjEsICAgICAvKiE8IERBQyBJbnRlcnJ1cHQgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8NCiAgQ09NUF9JUlFuICAgICAgICAgICAgICAgICAgID0gMjIsICAgICAvKiE8IENvbXBhcmF0b3IgdGhyb3VnaCBFWFRJIExpbmUgSW50ZXJydXB0ICAgICAgICAgICAgICAgICAgKi8NCiAgRVhUSTlfNV9JUlFuICAgICAgICAgICAgICAgID0gMjMsICAgICAvKiE8IEV4dGVybmFsIExpbmVbOTo1XSBJbnRlcnJ1cHRzICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8NCiAgTENEX0lSUW4gICAgICAgICAgICAgICAgICAgID0gMjQsICAgICAvKiE8IExDRCBJbnRlcnJ1cHQgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8NCiAgVElNOV9JUlFuICAgICAgICAgICAgICAgICAgID0gMjUsICAgICAvKiE8IFRJTTkgZ2xvYmFsIEludGVycnVwdCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8NCiAgVElNMTBfSVJRbiAgICAgICAgICAgICAgICAgID0gMjYsICAgICAvKiE8IFRJTTEwIGdsb2JhbCBJbnRlcnJ1cHQgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8NCiAgVElNMTFfSVJRbiAgICAgICAgICAgICAgICAgID0gMjcsICAgICAvKiE8IFRJTTExIGdsb2JhbCBJbnRlcnJ1cHQgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8NCiAgVElNMl9JUlFuICAgICAgICAgICAgICAgICAgID0gMjgsICAgICAvKiE8IFRJTTIgZ2xvYmFsIEludGVycnVwdCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8NCiAgVElNM19JUlFuICAgICAgICAgICAgICAgICAgID0gMjksICAgICAvKiE8IFRJTTMgZ2xvYmFsIEludGVycnVwdCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8NCiAgVElNNF9JUlFuICAgICAgICAgICAgICAgICAgID0gMzAsICAgICAvKiE8IFRJTTQgZ2xvYmFsIEludGVycnVwdCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8NCiAgSTJDMV9FVl9JUlFuICAgICAgICAgICAgICAgID0gMzEsICAgICAvKiE8IEkyQzEgRXZlbnQgSW50ZXJydXB0ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8NCiAgSTJDMV9FUl9JUlFuICAgICAgICAgICAgICAgID0gMzIsICAgICAvKiE8IEkyQzEgRXJyb3IgSW50ZXJydXB0ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8NCiAgSTJDMl9FVl9JUlFuICAgICAgICAgICAgICAgID0gMzMsICAgICAvKiE8IEkyQzIgRXZlbnQgSW50ZXJydXB0ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8NCiAgSTJDMl9FUl9JUlFuICAgICAgICAgICAgICAgID0gMzQsICAgICAvKiE8IEkyQzIgRXJyb3IgSW50ZXJydXB0ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8NCiAgU1BJMV9JUlFuICAgICAgICAgICAgICAgICAgID0gMzUsICAgICAvKiE8IFNQSTEgZ2xvYmFsIEludGVycnVwdCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8NCiAgU1BJMl9JUlFuICAgICAgICAgICAgICAgICAgID0gMzYsICAgICAvKiE8IFNQSTIgZ2xvYmFsIEludGVycnVwdCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8NCiAgVVNBUlQxX0lSUW4gICAgICAgICAgICAgICAgID0gMzcsICAgICAvKiE8IFVTQVJUMSBnbG9iYWwgSW50ZXJydXB0ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8NCiAgVVNBUlQyX0lSUW4gICAgICAgICAgICAgICAgID0gMzgsICAgICAvKiE8IFVTQVJUMiBnbG9iYWwgSW50ZXJydXB0ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8NCiAgVVNBUlQzX0lSUW4gICAgICAgICAgICAgICAgID0gMzksICAgICAvKiE8IFVTQVJUMyBnbG9iYWwgSW50ZXJydXB0ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8NCiAgRVhUSTE1XzEwX0lSUW4gICAgICAgICAgICAgID0gNDAsICAgICAvKiE8IEV4dGVybmFsIExpbmVbMTU6MTBdIEludGVycnVwdHMgICAgICAgICAgICAgICAgICAgICAgICAgKi8NCiAgUlRDX0FsYXJtX0lSUW4gICAgICAgICAgICAgID0gNDEsICAgICAvKiE8IFJUQyBBbGFybSB0aHJvdWdoIEVYVEkgTGluZSBJbnRlcnJ1cHQgICAgICAgICAgICAgICAgICAgKi8NCiAgVVNCX0ZTX1dLVVBfSVJRbiAgICAgICAgICAgID0gNDIsICAgICAvKiE8IFVTQiBGUyBXYWtlVXAgZnJvbSBzdXNwZW5kIHRocm91Z2ggRVhUSSBMaW5lIEludGVycnVwdCAgKi8NCiAgVElNNl9JUlFuICAgICAgICAgICAgICAgICAgID0gNDMsICAgICAvKiE8IFRJTTYgZ2xvYmFsIEludGVycnVwdCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8NCiAgVElNN19JUlFuICAgICAgICAgICAgICAgICAgID0gNDQsICAgICAvKiE8IFRJTTcgZ2xvYmFsIEludGVycnVwdCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8NCiAgVElNNV9JUlFuICAgICAgICAgICAgICAgICAgID0gNDYsICAgICAvKiE8IFRJTTUgZ2xvYmFsIEludGVycnVwdCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8NCiAgU1BJM19JUlFuICAgICAgICAgICAgICAgICAgID0gNDcsICAgICAvKiE8IFNQSTMgZ2xvYmFsIEludGVycnVwdCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8NCiAgRE1BMl9DaGFubmVsMV9JUlFuICAgICAgICAgID0gNTAsICAgICAvKiE8IERNQTIgQ2hhbm5lbCAxIGdsb2JhbCBJbnRlcnJ1cHQgICAgICAgICAgICAgICAgICAgICAgICAgKi8NCiAgRE1BMl9DaGFubmVsMl9JUlFuICAgICAgICAgID0gNTEsICAgICAvKiE8IERNQTIgQ2hhbm5lbCAyIGdsb2JhbCBJbnRlcnJ1cHQgICAgICAgICAgICAgICAgICAgICAgICAgKi8NCiAgRE1BMl9DaGFubmVsM19JUlFuICAgICAgICAgID0gNTIsICAgICAvKiE8IERNQTIgQ2hhbm5lbCAzIGdsb2JhbCBJbnRlcnJ1cHQgICAgICAgICAgICAgICAgICAgICAgICAgKi8NCiAgRE1BMl9DaGFubmVsNF9JUlFuICAgICAgICAgID0gNTMsICAgICAvKiE8IERNQTIgQ2hhbm5lbCA0IGdsb2JhbCBJbnRlcnJ1cHQgICAgICAgICAgICAgICAgICAgICAgICAgKi8NCiAgRE1BMl9DaGFubmVsNV9JUlFuICAgICAgICAgID0gNTQsICAgICAvKiE8IERNQTIgQ2hhbm5lbCA1IGdsb2JhbCBJbnRlcnJ1cHQgICAgICAgICAgICAgICAgICAgICAgICAgKi8NCiAgQUVTX0lSUW4gICAgICAgICAgICAgICAgICAgID0gNTUsICAgICAvKiE8IEFFUyBnbG9iYWwgSW50ZXJydXB0ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8NCiAgQ09NUF9BQ1FfSVJRbiAgICAgICAgICAgICAgID0gNTYgICAgICAvKiE8IENvbXBhcmF0b3IgQ2hhbm5lbCBBY3F1aXNpdGlvbiBnbG9iYWwgSW50ZXJydXB0ICAgICAgICAgKi8NCn0gSVJRbl9UeXBlOw0KDQovKioNCiAgKiBAfQ0KICAqLw0KDQojaW5jbHVkZSAiY29yZV9jbTMuaCINCiNpbmNsdWRlICJzeXN0ZW1fc3RtMzJsMXh4LmgiDQojaW5jbHVkZSA8c3RkaW50Lmg+DQoNCi8qKiBAYWRkdG9ncm91cCBQZXJpcGhlcmFsX3JlZ2lzdGVyc19zdHJ1Y3R1cmVzDQogICogQHsNCiAgKi8gICANCg0KLyoqIA0KICAqIEBicmllZiBBbmFsb2cgdG8gRGlnaXRhbCBDb252ZXJ0ZXINCiAgKi8NCg0KdHlwZWRlZiBzdHJ1Y3QNCnsNCiAgX19JTyB1aW50MzJfdCBTUjsgICAgICAgICAgIC8qITwgQURDIHN0YXR1cyByZWdpc3RlciwgICAgICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MDAgKi8NCiAgX19JTyB1aW50MzJfdCBDUjE7ICAgICAgICAgIC8qITwgQURDIGNvbnRyb2wgcmVnaXN0ZXIgMSwgICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MDQgKi8NCiAgX19JTyB1aW50MzJfdCBDUjI7ICAgICAgICAgIC8qITwgQURDIGNvbnRyb2wgcmVnaXN0ZXIgMiwgICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MDggKi8NCiAgX19JTyB1aW50MzJfdCBTTVBSMTsgICAgICAgIC8qITwgQURDIHNhbXBsZSB0aW1lIHJlZ2lzdGVyIDEsICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MEMgKi8NCiAgX19JTyB1aW50MzJfdCBTTVBSMjsgICAgICAgIC8qITwgQURDIHNhbXBsZSB0aW1lIHJlZ2lzdGVyIDIsICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MTAgKi8NCiAgX19JTyB1aW50MzJfdCBTTVBSMzsgICAgICAgIC8qITwgQURDIHNhbXBsZSB0aW1lIHJlZ2lzdGVyIDMsICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MTQgKi8NCiAgX19JTyB1aW50MzJfdCBKT0ZSMTsgICAgICAgIC8qITwgQURDIGluamVjdGVkIGNoYW5uZWwgZGF0YSBvZmZzZXQgcmVnaXN0ZXIgMSwgQWRkcmVzcyBvZmZzZXQ6IDB4MTggKi8NCiAgX19JTyB1aW50MzJfdCBKT0ZSMjsgICAgICAgIC8qITwgQURDIGluamVjdGVkIGNoYW5uZWwgZGF0YSBvZmZzZXQgcmVnaXN0ZXIgMiwgQWRkcmVzcyBvZmZzZXQ6IDB4MUMgKi8NCiAgX19JTyB1aW50MzJfdCBKT0ZSMzsgICAgICAgIC8qITwgQURDIGluamVjdGVkIGNoYW5uZWwgZGF0YSBvZmZzZXQgcmVnaXN0ZXIgMywgQWRkcmVzcyBvZmZzZXQ6IDB4MjAgKi8NCiAgX19JTyB1aW50MzJfdCBKT0ZSNDsgICAgICAgIC8qITwgQURDIGluamVjdGVkIGNoYW5uZWwgZGF0YSBvZmZzZXQgcmVnaXN0ZXIgNCwgQWRkcmVzcyBvZmZzZXQ6IDB4MjQgKi8NCiAgX19JTyB1aW50MzJfdCBIVFI7ICAgICAgICAgIC8qITwgQURDIHdhdGNoZG9nIGhpZ2hlciB0aHJlc2hvbGQgcmVnaXN0ZXIsICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MjggKi8NCiAgX19JTyB1aW50MzJfdCBMVFI7ICAgICAgICAgIC8qITwgQURDIHdhdGNoZG9nIGxvd2VyIHRocmVzaG9sZCByZWdpc3RlciwgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MkMgKi8NCiAgX19JTyB1aW50MzJfdCBTUVIxOyAgICAgICAgIC8qITwgQURDIHJlZ3VsYXIgc2VxdWVuY2UgcmVnaXN0ZXIgMSwgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MzAgKi8NCiAgX19JTyB1aW50MzJfdCBTUVIyOyAgICAgICAgIC8qITwgQURDIHJlZ3VsYXIgc2VxdWVuY2UgcmVnaXN0ZXIgMiwgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MzQgKi8NCiAgX19JTyB1aW50MzJfdCBTUVIzOyAgICAgICAgIC8qITwgQURDIHJlZ3VsYXIgc2VxdWVuY2UgcmVnaXN0ZXIgMywgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MzggKi8NCiAgX19JTyB1aW50MzJfdCBTUVI0OyAgICAgICAgIC8qITwgQURDIHJlZ3VsYXIgc2VxdWVuY2UgcmVnaXN0ZXIgNCwgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4M0MgKi8NCiAgX19JTyB1aW50MzJfdCBTUVI1OyAgICAgICAgIC8qITwgQURDIHJlZ3VsYXIgc2VxdWVuY2UgcmVnaXN0ZXIgNSwgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4NDAgKi8NCiAgX19JTyB1aW50MzJfdCBKU1FSOyAgICAgICAgIC8qITwgQURDIGluamVjdGVkIHNlcXVlbmNlIHJlZ2lzdGVyLCAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4NDQgKi8NCiAgX19JTyB1aW50MzJfdCBKRFIxOyAgICAgICAgIC8qITwgQURDIGluamVjdGVkIGRhdGEgcmVnaXN0ZXIgMSwgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4NDggKi8NCiAgX19JTyB1aW50MzJfdCBKRFIyOyAgICAgICAgIC8qITwgQURDIGluamVjdGVkIGRhdGEgcmVnaXN0ZXIgMiwgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4NEMgKi8NCiAgX19JTyB1aW50MzJfdCBKRFIzOyAgICAgICAgIC8qITwgQURDIGluamVjdGVkIGRhdGEgcmVnaXN0ZXIgMywgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4NTAgKi8NCiAgX19JTyB1aW50MzJfdCBKRFI0OyAgICAgICAgIC8qITwgQURDIGluamVjdGVkIGRhdGEgcmVnaXN0ZXIgNCwgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4NTQgKi8NCiAgX19JTyB1aW50MzJfdCBEUjsgICAgICAgICAgIC8qITwgQURDIHJlZ3VsYXIgZGF0YSByZWdpc3RlciwgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4NTggKi8NCiAgdWludDMyX3QgUkVTRVJWRUQ7ICAgICAgICAgIC8qITwgUmVzZXJ2ZWQsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4NUMgKi8NCn0gQURDX1R5cGVEZWY7DQoNCnR5cGVkZWYgc3RydWN0DQp7DQogIF9fSU8gdWludDMyX3QgQ1NSOyAgICAgICAgICAvKiE8IEFEQyBjb21tb24gc3RhdHVzIHJlZ2lzdGVyLCAgICAgICAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiBBREMxIGJhc2UgYWRkcmVzcyArIDB4MzAwICovDQogIF9fSU8gdWludDMyX3QgQ0NSOyAgICAgICAgICAvKiE8IEFEQyBjb21tb24gY29udHJvbCByZWdpc3RlciwgICAgICAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiBBREMxIGJhc2UgYWRkcmVzcyArIDB4MzA0ICovDQp9IEFEQ19Db21tb25fVHlwZURlZjsNCg0KLyoqIA0KICAqIEBicmllZiBBRVMgaGFyZHdhcmUgYWNjZWxlcmF0b3INCiAgKi8NCg0KdHlwZWRlZiBzdHJ1Y3QNCnsNCiAgX19JTyB1aW50MzJfdCBDUjsgICAgICAgICAgIC8qITwgQUVTIGNvbnRyb2wgcmVnaXN0ZXIsICAgICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MDAgKi8NCiAgX19JTyB1aW50MzJfdCBTUjsgICAgICAgICAgIC8qITwgQUVTIHN0YXR1cyByZWdpc3RlciwgICAgICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MDQgKi8NCiAgX19JTyB1aW50MzJfdCBESU5SOyAgICAgICAgIC8qITwgQUVTIGRhdGEgaW5wdXQgcmVnaXN0ZXIsICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MDggKi8NCiAgX19JTyB1aW50MzJfdCBET1VUUjsgICAgICAgIC8qITwgQUVTIGRhdGEgb3V0cHV0IHJlZ2lzdGVyLCAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MEMgKi8NCiAgX19JTyB1aW50MzJfdCBLRVlSMDsgICAgICAgIC8qITwgQUVTIGtleSByZWdpc3RlciAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MTAgKi8NCiAgX19JTyB1aW50MzJfdCBLRVlSMTsgICAgICAgIC8qITwgQUVTIGtleSByZWdpc3RlciAxLCAgICAgICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MTQgKi8NCiAgX19JTyB1aW50MzJfdCBLRVlSMjsgICAgICAgIC8qITwgQUVTIGtleSByZWdpc3RlciAyLCAgICAgICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MTggKi8NCiAgX19JTyB1aW50MzJfdCBLRVlSMzsgICAgICAgIC8qITwgQUVTIGtleSByZWdpc3RlciAzLCAgICAgICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MUMgKi8NCiAgX19JTyB1aW50MzJfdCBJVlIwOyAgICAgICAgIC8qITwgQUVTIGluaXRpYWxpemF0aW9uIHZlY3RvciByZWdpc3RlciAwLCAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MjAgKi8NCiAgX19JTyB1aW50MzJfdCBJVlIxOyAgICAgICAgIC8qITwgQUVTIGluaXRpYWxpemF0aW9uIHZlY3RvciByZWdpc3RlciAxLCAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MjQgKi8NCiAgX19JTyB1aW50MzJfdCBJVlIyOyAgICAgICAgIC8qITwgQUVTIGluaXRpYWxpemF0aW9uIHZlY3RvciByZWdpc3RlciAyLCAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MjggKi8NCiAgX19JTyB1aW50MzJfdCBJVlIzOyAgICAgICAgIC8qITwgQUVTIGluaXRpYWxpemF0aW9uIHZlY3RvciByZWdpc3RlciAzLCAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MkMgKi8NCn0gQUVTX1R5cGVEZWY7DQoNCi8qKiANCiAgKiBAYnJpZWYgQ29tcGFyYXRvciANCiAgKi8NCg0KdHlwZWRlZiBzdHJ1Y3QNCnsNCiAgX19JTyB1aW50MzJfdCBDU1I7ICAgICAgICAgLyohPCBDT01QIGNvbnRyb2wgYW5kIHN0YXR1cyByZWdpc3RlciwgQWRkcmVzcyBvZmZzZXQ6IDB4MDAgKi8NCn0gQ09NUF9UeXBlRGVmOw0KDQp0eXBlZGVmIHN0cnVjdA0Kew0KICBfX0lPIHVpbnQzMl90IENTUjsgICAgICAgICAvKiE8IENPTVAgY29udHJvbCBhbmQgc3RhdHVzIHJlZ2lzdGVyLCB1c2VkIGZvciBiaXRzIGNvbW1vbiB0byBzZXZlcmFsIENPTVAgaW5zdGFuY2VzLCBBZGRyZXNzIG9mZnNldDogMHgwMCAqLw0KfSBDT01QX0NvbW1vbl9UeXBlRGVmOw0KDQovKiogDQogICogQGJyaWVmIENSQyBjYWxjdWxhdGlvbiB1bml0DQogICovDQoNCnR5cGVkZWYgc3RydWN0DQp7DQogIF9fSU8gdWludDMyX3QgRFI7ICAgICAgICAgICAvKiE8IENSQyBEYXRhIHJlZ2lzdGVyLCAgICAgICAgICAgICAgICAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDAwICovDQogIF9fSU8gdWludDhfdCAgSURSOyAgICAgICAgICAvKiE8IENSQyBJbmRlcGVuZGVudCBkYXRhIHJlZ2lzdGVyLCAgICAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDA0ICovDQogIHVpbnQ4X3QgICAgICAgUkVTRVJWRUQwOyAgICAvKiE8IFJlc2VydmVkLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDA1ICovDQogIHVpbnQxNl90ICAgICAgUkVTRVJWRUQxOyAgICAvKiE8IFJlc2VydmVkLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDA2ICovIA0KICBfX0lPIHVpbnQzMl90IENSOyAgICAgICAgICAgLyohPCBDUkMgQ29udHJvbCByZWdpc3RlciwgICAgICAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgwOCAqLyANCn0gQ1JDX1R5cGVEZWY7DQoNCi8qKiANCiAgKiBAYnJpZWYgRGlnaXRhbCB0byBBbmFsb2cgQ29udmVydGVyDQogICovDQoNCnR5cGVkZWYgc3RydWN0DQp7DQogIF9fSU8gdWludDMyX3QgQ1I7ICAgICAgICAgICAvKiE8IERBQyBjb250cm9sIHJlZ2lzdGVyLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgwMCAqLw0KICBfX0lPIHVpbnQzMl90IFNXVFJJR1I7ICAgICAgLyohPCBEQUMgc29mdHdhcmUgdHJpZ2dlciByZWdpc3RlciwgICAgICAgICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MDQgKi8NCiAgX19JTyB1aW50MzJfdCBESFIxMlIxOyAgICAgIC8qITwgREFDIGNoYW5uZWwxIDEyLWJpdCByaWdodC1hbGlnbmVkIGRhdGEgaG9sZGluZyByZWdpc3RlciwgIEFkZHJlc3Mgb2Zmc2V0OiAweDA4ICovDQogIF9fSU8gdWludDMyX3QgREhSMTJMMTsgICAgICAvKiE8IERBQyBjaGFubmVsMSAxMi1iaXQgbGVmdCBhbGlnbmVkIGRhdGEgaG9sZGluZyByZWdpc3RlciwgICBBZGRyZXNzIG9mZnNldDogMHgwQyAqLw0KICBfX0lPIHVpbnQzMl90IERIUjhSMTsgICAgICAgLyohPCBEQUMgY2hhbm5lbDEgOC1iaXQgcmlnaHQgYWxpZ25lZCBkYXRhIGhvbGRpbmcgcmVnaXN0ZXIsICAgQWRkcmVzcyBvZmZzZXQ6IDB4MTAgKi8NCiAgX19JTyB1aW50MzJfdCBESFIxMlIyOyAgICAgIC8qITwgREFDIGNoYW5uZWwyIDEyLWJpdCByaWdodCBhbGlnbmVkIGRhdGEgaG9sZGluZyByZWdpc3RlciwgIEFkZHJlc3Mgb2Zmc2V0OiAweDE0ICovDQogIF9fSU8gdWludDMyX3QgREhSMTJMMjsgICAgICAvKiE8IERBQyBjaGFubmVsMiAxMi1iaXQgbGVmdCBhbGlnbmVkIGRhdGEgaG9sZGluZyByZWdpc3RlciwgICBBZGRyZXNzIG9mZnNldDogMHgxOCAqLw0KICBfX0lPIHVpbnQzMl90IERIUjhSMjsgICAgICAgLyohPCBEQUMgY2hhbm5lbDIgOC1iaXQgcmlnaHQtYWxpZ25lZCBkYXRhIGhvbGRpbmcgcmVnaXN0ZXIsICAgQWRkcmVzcyBvZmZzZXQ6IDB4MUMgKi8NCiAgX19JTyB1aW50MzJfdCBESFIxMlJEOyAgICAgIC8qITwgRHVhbCBEQUMgMTItYml0IHJpZ2h0LWFsaWduZWQgZGF0YSBob2xkaW5nIHJlZ2lzdGVyLCAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDIwICovDQogIF9fSU8gdWludDMyX3QgREhSMTJMRDsgICAgICAvKiE8IERVQUwgREFDIDEyLWJpdCBsZWZ0IGFsaWduZWQgZGF0YSBob2xkaW5nIHJlZ2lzdGVyLCAgICAgICBBZGRyZXNzIG9mZnNldDogMHgyNCAqLw0KICBfX0lPIHVpbnQzMl90IERIUjhSRDsgICAgICAgLyohPCBEVUFMIERBQyA4LWJpdCByaWdodCBhbGlnbmVkIGRhdGEgaG9sZGluZyByZWdpc3RlciwgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MjggKi8NCiAgX19JTyB1aW50MzJfdCBET1IxOyAgICAgICAgIC8qITwgREFDIGNoYW5uZWwxIGRhdGEgb3V0cHV0IHJlZ2lzdGVyLCAgICAgICAgICAgICAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDJDICovDQogIF9fSU8gdWludDMyX3QgRE9SMjsgICAgICAgICAvKiE8IERBQyBjaGFubmVsMiBkYXRhIG91dHB1dCByZWdpc3RlciwgICAgICAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgzMCAqLw0KICBfX0lPIHVpbnQzMl90IFNSOyAgICAgICAgICAgLyohPCBEQUMgc3RhdHVzIHJlZ2lzdGVyLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MzQgKi8NCn0gREFDX1R5cGVEZWY7DQoNCi8qKiANCiAgKiBAYnJpZWYgRGVidWcgTUNVDQogICovDQoNCnR5cGVkZWYgc3RydWN0DQp7DQogIF9fSU8gdWludDMyX3QgSURDT0RFOyAgICAgICAvKiE8IE1DVSBkZXZpY2UgSUQgY29kZSwgICAgICAgICAgICAgICAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDAwICovDQogIF9fSU8gdWludDMyX3QgQ1I7ICAgICAgICAgICAvKiE8IERlYnVnIE1DVSBjb25maWd1cmF0aW9uIHJlZ2lzdGVyLCAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDA0ICovDQogIF9fSU8gdWludDMyX3QgQVBCMUZaOyAgICAgICAvKiE8IERlYnVnIE1DVSBBUEIxIGZyZWV6ZSByZWdpc3RlciwgICAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDA4ICovDQogIF9fSU8gdWludDMyX3QgQVBCMkZaOyAgICAgICAvKiE8IERlYnVnIE1DVSBBUEIyIGZyZWV6ZSByZWdpc3RlciwgICAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDBDICovDQp9REJHTUNVX1R5cGVEZWY7DQoNCi8qKiANCiAgKiBAYnJpZWYgRE1BIENvbnRyb2xsZXINCiAgKi8NCg0KdHlwZWRlZiBzdHJ1Y3QNCnsNCiAgX19JTyB1aW50MzJfdCBDQ1I7ICAgICAgICAgIC8qITwgRE1BIGNoYW5uZWwgeCBjb25maWd1cmF0aW9uIHJlZ2lzdGVyICAgICAgICAqLw0KICBfX0lPIHVpbnQzMl90IENORFRSOyAgICAgICAgLyohPCBETUEgY2hhbm5lbCB4IG51bWJlciBvZiBkYXRhIHJlZ2lzdGVyICAgICAgICovDQogIF9fSU8gdWludDMyX3QgQ1BBUjsgICAgICAgICAvKiE8IERNQSBjaGFubmVsIHggcGVyaXBoZXJhbCBhZGRyZXNzIHJlZ2lzdGVyICAgKi8NCiAgX19JTyB1aW50MzJfdCBDTUFSOyAgICAgICAgIC8qITwgRE1BIGNoYW5uZWwgeCBtZW1vcnkgYWRkcmVzcyByZWdpc3RlciAgICAgICAqLw0KfSBETUFfQ2hhbm5lbF9UeXBlRGVmOw0KDQp0eXBlZGVmIHN0cnVjdA0Kew0KICBfX0lPIHVpbnQzMl90IElTUjsgICAgICAgICAgLyohPCBETUEgaW50ZXJydXB0IHN0YXR1cyByZWdpc3RlciwgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgwMCAqLw0KICBfX0lPIHVpbnQzMl90IElGQ1I7ICAgICAgICAgLyohPCBETUEgaW50ZXJydXB0IGZsYWcgY2xlYXIgcmVnaXN0ZXIsICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgwNCAqLw0KfSBETUFfVHlwZURlZjsNCg0KLyoqIA0KICAqIEBicmllZiBFeHRlcm5hbCBJbnRlcnJ1cHQvRXZlbnQgQ29udHJvbGxlcg0KICAqLw0KDQp0eXBlZGVmIHN0cnVjdA0Kew0KICBfX0lPIHVpbnQzMl90IElNUjsgICAgICAgICAgLyohPEVYVEkgSW50ZXJydXB0IG1hc2sgcmVnaXN0ZXIsICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgwMCAqLw0KICBfX0lPIHVpbnQzMl90IEVNUjsgICAgICAgICAgLyohPEVYVEkgRXZlbnQgbWFzayByZWdpc3RlciwgICAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgwNCAqLw0KICBfX0lPIHVpbnQzMl90IFJUU1I7ICAgICAgICAgLyohPEVYVEkgUmlzaW5nIHRyaWdnZXIgc2VsZWN0aW9uIHJlZ2lzdGVyICwgICAgICBBZGRyZXNzIG9mZnNldDogMHgwOCAqLw0KICBfX0lPIHVpbnQzMl90IEZUU1I7ICAgICAgICAgLyohPEVYVEkgRmFsbGluZyB0cmlnZ2VyIHNlbGVjdGlvbiByZWdpc3RlciwgICAgICBBZGRyZXNzIG9mZnNldDogMHgwQyAqLw0KICBfX0lPIHVpbnQzMl90IFNXSUVSOyAgICAgICAgLyohPEVYVEkgU29mdHdhcmUgaW50ZXJydXB0IGV2ZW50IHJlZ2lzdGVyLCAgICAgICBBZGRyZXNzIG9mZnNldDogMHgxMCAqLw0KICBfX0lPIHVpbnQzMl90IFBSOyAgICAgICAgICAgLyohPEVYVEkgUGVuZGluZyByZWdpc3RlciwgICAgICAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgxNCAqLw0KfSBFWFRJX1R5cGVEZWY7DQoNCi8qKiANCiAgKiBAYnJpZWYgRkxBU0ggUmVnaXN0ZXJzDQogICovDQp0eXBlZGVmIHN0cnVjdA0Kew0KICBfX0lPIHVpbnQzMl90IEFDUjsgICAgICAgICAgLyohPCBBY2Nlc3MgY29udHJvbCByZWdpc3RlciwgICAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgwMCAqLw0KICBfX0lPIHVpbnQzMl90IFBFQ1I7ICAgICAgICAgLyohPCBQcm9ncmFtL2VyYXNlIGNvbnRyb2wgcmVnaXN0ZXIsICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgwNCAqLw0KICBfX0lPIHVpbnQzMl90IFBES0VZUjsgICAgICAgLyohPCBQb3dlciBkb3duIGtleSByZWdpc3RlciwgICAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgwOCAqLw0KICBfX0lPIHVpbnQzMl90IFBFS0VZUjsgICAgICAgLyohPCBQcm9ncmFtL2VyYXNlIGtleSByZWdpc3RlciwgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgwYyAqLw0KICBfX0lPIHVpbnQzMl90IFBSR0tFWVI7ICAgICAgLyohPCBQcm9ncmFtIG1lbW9yeSBrZXkgcmVnaXN0ZXIsICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgxMCAqLw0KICBfX0lPIHVpbnQzMl90IE9QVEtFWVI7ICAgICAgLyohPCBPcHRpb24gYnl0ZSBrZXkgcmVnaXN0ZXIsICAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgxNCAqLw0KICBfX0lPIHVpbnQzMl90IFNSOyAgICAgICAgICAgLyohPCBTdGF0dXMgcmVnaXN0ZXIsICAgICAgICAgICAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgxOCAqLw0KICBfX0lPIHVpbnQzMl90IE9CUjsgICAgICAgICAgLyohPCBPcHRpb24gYnl0ZSByZWdpc3RlciwgICAgICAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgxYyAqLw0KICBfX0lPIHVpbnQzMl90IFdSUFIxOyAgICAgICAgLyohPCBXcml0ZSBwcm90ZWN0aW9uIHJlZ2lzdGVyIDEsICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgyMCAqLw0KICB1aW50MzJfdCAgIFJFU0VSVkVEWzIzXTsgICAgLyohPCBSZXNlcnZlZCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgyNCAqLw0KICBfX0lPIHVpbnQzMl90IFdSUFIyOyAgICAgICAgLyohPCBXcml0ZSBwcm90ZWN0aW9uIHJlZ2lzdGVyIDIsICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHg4MCAqLw0KfSBGTEFTSF9UeXBlRGVmOw0KDQovKiogDQogICogQGJyaWVmIE9wdGlvbiBCeXRlcyBSZWdpc3RlcnMNCiAgKi8NCnR5cGVkZWYgc3RydWN0DQp7DQogIF9fSU8gdWludDMyX3QgUkRQOyAgICAgICAgICAgICAgLyohPCBSZWFkIHByb3RlY3Rpb24gcmVnaXN0ZXIsICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MDAgKi8NCiAgX19JTyB1aW50MzJfdCBVU0VSOyAgICAgICAgICAgICAvKiE8IHVzZXIgcmVnaXN0ZXIsICAgICAgICAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgwNCAqLw0KICBfX0lPIHVpbnQzMl90IFdSUDAxOyAgICAgICAgICAgIC8qITwgd3JpdGUgcHJvdGVjdGlvbiByZWdpc3RlciAwIDEsICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDA4ICovDQogIF9fSU8gdWludDMyX3QgV1JQMjM7ICAgICAgICAgICAgLyohPCB3cml0ZSBwcm90ZWN0aW9uIHJlZ2lzdGVyIDIgMywgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MEMgKi8NCiAgX19JTyB1aW50MzJfdCBXUlA0NTsgICAgICAgICAgICAvKiE8IHdyaXRlIHByb3RlY3Rpb24gcmVnaXN0ZXIgNCA1LCAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgxMCAqLw0KICBfX0lPIHVpbnQzMl90IFdSUDY3OyAgICAgICAgICAgIC8qITwgd3JpdGUgcHJvdGVjdGlvbiByZWdpc3RlciA2IDcsICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDE0ICovDQp9IE9CX1R5cGVEZWY7DQoNCi8qKiANCiAgKiBAYnJpZWYgT3BlcmF0aW9uYWwgQW1wbGlmaWVyIChPUEFNUCkNCiAgKi8NCnR5cGVkZWYgc3RydWN0DQp7DQogIF9fSU8gdWludDMyX3QgQ1NSOyAgICAgICAgICAvKiE8IE9QQU1QIGNvbnRyb2wgYW5kIHN0YXR1cyByZWdpc3RlciwgICAgICAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDAwICovDQogIF9fSU8gdWludDMyX3QgT1RSOyAgICAgICAgICAvKiE8IE9QQU1QIG9mZnNldCB0cmltbWluZyByZWdpc3RlciBmb3Igbm9ybWFsIG1vZGUsICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDA0ICovIA0KICBfX0lPIHVpbnQzMl90IExQT1RSOyAgICAgICAgLyohPCBPUEFNUCBvZmZzZXQgdHJpbW1pbmcgcmVnaXN0ZXIgZm9yIGxvdyBwb3dlciBtb2RlLCBBZGRyZXNzIG9mZnNldDogMHgwOCAqLw0KfSBPUEFNUF9UeXBlRGVmOw0KDQp0eXBlZGVmIHN0cnVjdA0Kew0KICBfX0lPIHVpbnQzMl90IENTUjsgICAgICAgICAgLyohPCBPUEFNUCBjb250cm9sIGFuZCBzdGF0dXMgcmVnaXN0ZXIsIHVzZWQgZm9yIGJpdHMgY29tbW9uIHRvIHNldmVyYWwgT1BBTVAgaW5zdGFuY2VzLCAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MDAgKi8NCiAgX19JTyB1aW50MzJfdCBPVFI7ICAgICAgICAgIC8qITwgT1BBTVAgb2Zmc2V0IHRyaW1taW5nIHJlZ2lzdGVyIGZvciBub3JtYWwgbW9kZSwgdXNlZCBmb3IgYml0cyBjb21tb24gdG8gc2V2ZXJhbCBPUEFNUCBpbnN0YW5jZXMsIEFkZHJlc3Mgb2Zmc2V0OiAweDA0ICovIA0KfSBPUEFNUF9Db21tb25fVHlwZURlZjsNCg0KLyoqIA0KICAqIEBicmllZiBHZW5lcmFsIFB1cnBvc2UgSU8NCiAgKi8NCg0KdHlwZWRlZiBzdHJ1Y3QNCnsNCiAgX19JTyB1aW50MzJfdCBNT0RFUjsgICAgICAgIC8qITwgR1BJTyBwb3J0IG1vZGUgcmVnaXN0ZXIsICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MDAgICAgICAqLw0KICBfX0lPIHVpbnQzMl90IE9UWVBFUjsgICAgICAgLyohPCBHUElPIHBvcnQgb3V0cHV0IHR5cGUgcmVnaXN0ZXIsICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgwNCAgICAgICovDQogIF9fSU8gdWludDMyX3QgT1NQRUVEUjsgICAgICAvKiE8IEdQSU8gcG9ydCBvdXRwdXQgc3BlZWQgcmVnaXN0ZXIsICAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDA4ICAgICAgKi8NCiAgX19JTyB1aW50MzJfdCBQVVBEUjsgICAgICAgIC8qITwgR1BJTyBwb3J0IHB1bGwtdXAvcHVsbC1kb3duIHJlZ2lzdGVyLCAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MEMgICAgICAqLw0KICBfX0lPIHVpbnQzMl90IElEUjsgICAgICAgICAgLyohPCBHUElPIHBvcnQgaW5wdXQgZGF0YSByZWdpc3RlciwgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgxMCAgICAgICovDQogIF9fSU8gdWludDMyX3QgT0RSOyAgICAgICAgICAvKiE8IEdQSU8gcG9ydCBvdXRwdXQgZGF0YSByZWdpc3RlciwgICAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDE0ICAgICAgKi8NCiAgX19JTyB1aW50MzJfdCBCU1JSOyAgICAgICAgIC8qITwgR1BJTyBwb3J0IGJpdCBzZXQvcmVzZXQgcmVnaXN0ZXJCU1JSLCAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MTggICAgICAqLw0KICBfX0lPIHVpbnQzMl90IExDS1I7ICAgICAgICAgLyohPCBHUElPIHBvcnQgY29uZmlndXJhdGlvbiBsb2NrIHJlZ2lzdGVyLCAgICAgICBBZGRyZXNzIG9mZnNldDogMHgxQyAgICAgICovDQogIF9fSU8gdWludDMyX3QgQUZSWzJdOyAgICAgICAvKiE8IEdQSU8gYWx0ZXJuYXRlIGZ1bmN0aW9uIHJlZ2lzdGVyLCAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDIwLTB4MjQgKi8NCiAgX19JTyB1aW50MzJfdCBCUlI7ICAgICAgICAgIC8qITwgR1BJTyBiaXQgcmVzZXQgcmVnaXN0ZXIsICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MjggICAgICAqLw0KfSBHUElPX1R5cGVEZWY7DQoNCi8qKiANCiAgKiBAYnJpZWYgU3lzVGVtIENvbmZpZ3VyYXRpb24NCiAgKi8NCg0KdHlwZWRlZiBzdHJ1Y3QNCnsNCiAgX19JTyB1aW50MzJfdCBNRU1STVA7ICAgICAgIC8qITwgU1lTQ0ZHIG1lbW9yeSByZW1hcCByZWdpc3RlciwgICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MDAgICAgICAqLw0KICBfX0lPIHVpbnQzMl90IFBNQzsgICAgICAgICAgLyohPCBTWVNDRkcgcGVyaXBoZXJhbCBtb2RlIGNvbmZpZ3VyYXRpb24gcmVnaXN0ZXIsICAgICBBZGRyZXNzIG9mZnNldDogMHgwNCAgICAgICovDQogIF9fSU8gdWludDMyX3QgRVhUSUNSWzRdOyAgICAvKiE8IFNZU0NGRyBleHRlcm5hbCBpbnRlcnJ1cHQgY29uZmlndXJhdGlvbiByZWdpc3RlcnMsIEFkZHJlc3Mgb2Zmc2V0OiAweDA4LTB4MTQgKi8NCn0gU1lTQ0ZHX1R5cGVEZWY7DQoNCi8qKiANCiAgKiBAYnJpZWYgSW50ZXItaW50ZWdyYXRlZCBDaXJjdWl0IEludGVyZmFjZQ0KICAqLw0KDQp0eXBlZGVmIHN0cnVjdA0Kew0KICBfX0lPIHVpbnQzMl90IENSMTsgICAgICAgICAgLyohPCBJMkMgQ29udHJvbCByZWdpc3RlciAxLCAgICAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgwMCAqLw0KICBfX0lPIHVpbnQzMl90IENSMjsgICAgICAgICAgLyohPCBJMkMgQ29udHJvbCByZWdpc3RlciAyLCAgICAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgwNCAqLw0KICBfX0lPIHVpbnQzMl90IE9BUjE7ICAgICAgICAgLyohPCBJMkMgT3duIGFkZHJlc3MgcmVnaXN0ZXIgMSwgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgwOCAqLw0KICBfX0lPIHVpbnQzMl90IE9BUjI7ICAgICAgICAgLyohPCBJMkMgT3duIGFkZHJlc3MgcmVnaXN0ZXIgMiwgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgwQyAqLw0KICBfX0lPIHVpbnQzMl90IERSOyAgICAgICAgICAgLyohPCBJMkMgRGF0YSByZWdpc3RlciwgICAgICAgICAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgxMCAqLw0KICBfX0lPIHVpbnQzMl90IFNSMTsgICAgICAgICAgLyohPCBJMkMgU3RhdHVzIHJlZ2lzdGVyIDEsICAgICAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgxNCAqLw0KICBfX0lPIHVpbnQzMl90IFNSMjsgICAgICAgICAgLyohPCBJMkMgU3RhdHVzIHJlZ2lzdGVyIDIsICAgICAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgxOCAqLw0KICBfX0lPIHVpbnQzMl90IENDUjsgICAgICAgICAgLyohPCBJMkMgQ2xvY2sgY29udHJvbCByZWdpc3RlciwgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgxQyAqLw0KICBfX0lPIHVpbnQzMl90IFRSSVNFOyAgICAgICAgLyohPCBJMkMgVFJJU0UgcmVnaXN0ZXIsICAgICAgICAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgyMCAqLw0KfSBJMkNfVHlwZURlZjsNCg0KLyoqIA0KICAqIEBicmllZiBJbmRlcGVuZGVudCBXQVRDSERPRw0KICAqLw0KDQp0eXBlZGVmIHN0cnVjdA0Kew0KICBfX0lPIHVpbnQzMl90IEtSOyAgICAgICAgICAgLyohPCBLZXkgcmVnaXN0ZXIsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgwMCAqLw0KICBfX0lPIHVpbnQzMl90IFBSOyAgICAgICAgICAgLyohPCBQcmVzY2FsZXIgcmVnaXN0ZXIsICAgICAgICAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgwNCAqLw0KICBfX0lPIHVpbnQzMl90IFJMUjsgICAgICAgICAgLyohPCBSZWxvYWQgcmVnaXN0ZXIsICAgICAgICAgICAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgwOCAqLw0KICBfX0lPIHVpbnQzMl90IFNSOyAgICAgICAgICAgLyohPCBTdGF0dXMgcmVnaXN0ZXIsICAgICAgICAgICAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgwQyAqLw0KfSBJV0RHX1R5cGVEZWY7DQoNCi8qKiANCiAgKiBAYnJpZWYgTENEDQogICovDQoNCnR5cGVkZWYgc3RydWN0DQp7DQogIF9fSU8gdWludDMyX3QgQ1I7ICAgICAgICAvKiE8IExDRCBjb250cm9sIHJlZ2lzdGVyLCAgICAgICAgICAgICAgICAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDAwICovDQogIF9fSU8gdWludDMyX3QgRkNSOyAgICAgICAvKiE8IExDRCBmcmFtZSBjb250cm9sIHJlZ2lzdGVyLCAgICAgICAgICAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDA0ICovDQogIF9fSU8gdWludDMyX3QgU1I7ICAgICAgICAvKiE8IExDRCBzdGF0dXMgcmVnaXN0ZXIsICAgICAgICAgICAgICAgICAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDA4ICovDQogIF9fSU8gdWludDMyX3QgQ0xSOyAgICAgICAvKiE8IExDRCBjbGVhciByZWdpc3RlciwgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDBDICovDQogIHVpbnQzMl90IFJFU0VSVkVEOyAgICAgICAvKiE8IFJlc2VydmVkLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDEwICovDQogIF9fSU8gdWludDMyX3QgUkFNWzE2XTsgICAvKiE8IExDRCBkaXNwbGF5IG1lbW9yeSwgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDE0LTB4NTAgKi8NCn0gTENEX1R5cGVEZWY7DQoNCi8qKiANCiAgKiBAYnJpZWYgUG93ZXIgQ29udHJvbA0KICAqLw0KDQp0eXBlZGVmIHN0cnVjdA0Kew0KICBfX0lPIHVpbnQzMl90IENSOyAgIC8qITwgUFdSIHBvd2VyIGNvbnRyb2wgcmVnaXN0ZXIsICAgICAgICAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgwMCAqLw0KICBfX0lPIHVpbnQzMl90IENTUjsgIC8qITwgUFdSIHBvd2VyIGNvbnRyb2wvc3RhdHVzIHJlZ2lzdGVyLCAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgwNCAqLw0KfSBQV1JfVHlwZURlZjsNCg0KLyoqIA0KICAqIEBicmllZiBSZXNldCBhbmQgQ2xvY2sgQ29udHJvbA0KICAqLw0KDQp0eXBlZGVmIHN0cnVjdA0Kew0KICBfX0lPIHVpbnQzMl90IENSOyAgICAgICAgICAgIC8qITwgUkNDIGNsb2NrIGNvbnRyb2wgcmVnaXN0ZXIsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgwMCAqLw0KICBfX0lPIHVpbnQzMl90IElDU0NSOyAgICAgICAgIC8qITwgUkNDIEludGVybmFsIGNsb2NrIHNvdXJjZXMgY2FsaWJyYXRpb24gcmVnaXN0ZXIsICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgwNCAqLw0KICBfX0lPIHVpbnQzMl90IENGR1I7ICAgICAgICAgIC8qITwgUkNDIENsb2NrIGNvbmZpZ3VyYXRpb24gcmVnaXN0ZXIsICAgICAgICAgICAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgwOCAqLw0KICBfX0lPIHVpbnQzMl90IENJUjsgICAgICAgICAgIC8qITwgUkNDIENsb2NrIGludGVycnVwdCByZWdpc3RlciwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgwQyAqLw0KICBfX0lPIHVpbnQzMl90IEFIQlJTVFI7ICAgICAgIC8qITwgUkNDIEFIQiBwZXJpcGhlcmFsIHJlc2V0IHJlZ2lzdGVyLCAgICAgICAgICAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgxMCAqLw0KICBfX0lPIHVpbnQzMl90IEFQQjJSU1RSOyAgICAgIC8qITwgUkNDIEFQQjIgcGVyaXBoZXJhbCByZXNldCByZWdpc3RlciwgICAgICAgICAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgxNCAqLw0KICBfX0lPIHVpbnQzMl90IEFQQjFSU1RSOyAgICAgIC8qITwgUkNDIEFQQjEgcGVyaXBoZXJhbCByZXNldCByZWdpc3RlciwgICAgICAgICAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgxOCAqLw0KICBfX0lPIHVpbnQzMl90IEFIQkVOUjsgICAgICAgIC8qITwgUkNDIEFIQiBwZXJpcGhlcmFsIGNsb2NrIGVuYWJsZSByZWdpc3RlciwgICAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgxQyAqLw0KICBfX0lPIHVpbnQzMl90IEFQQjJFTlI7ICAgICAgIC8qITwgUkNDIEFQQjIgcGVyaXBoZXJhbCBjbG9jayBlbmFibGUgcmVnaXN0ZXIsICAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgyMCAqLw0KICBfX0lPIHVpbnQzMl90IEFQQjFFTlI7ICAgICAgIC8qITwgUkNDIEFQQjEgcGVyaXBoZXJhbCBjbG9jayBlbmFibGUgcmVnaXN0ZXIsICAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgyNCAqLw0KICBfX0lPIHVpbnQzMl90IEFIQkxQRU5SOyAgICAgIC8qITwgUkNDIEFIQiBwZXJpcGhlcmFsIGNsb2NrIGVuYWJsZSBpbiBsb3cgcG93ZXIgbW9kZSByZWdpc3RlciwgICBBZGRyZXNzIG9mZnNldDogMHgyOCAqLw0KICBfX0lPIHVpbnQzMl90IEFQQjJMUEVOUjsgICAgIC8qITwgUkNDIEFQQjIgcGVyaXBoZXJhbCBjbG9jayBlbmFibGUgaW4gbG93IHBvd2VyIG1vZGUgcmVnaXN0ZXIsICBBZGRyZXNzIG9mZnNldDogMHgyQyAqLw0KICBfX0lPIHVpbnQzMl90IEFQQjFMUEVOUjsgICAgIC8qITwgUkNDIEFQQjEgcGVyaXBoZXJhbCBjbG9jayBlbmFibGUgaW4gbG93IHBvd2VyIG1vZGUgcmVnaXN0ZXIsICBBZGRyZXNzIG9mZnNldDogMHgzMCAqLw0KICBfX0lPIHVpbnQzMl90IENTUjsgICAgICAgICAgIC8qITwgUkNDIENvbnRyb2wvc3RhdHVzIHJlZ2lzdGVyLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgzNCAqLw0KfSBSQ0NfVHlwZURlZjsNCg0KLyoqIA0KICAqIEBicmllZiBSb3V0aW5nIEludGVyZmFjZSANCiAgKi8NCg0KdHlwZWRlZiBzdHJ1Y3QNCnsNCiAgX19JTyB1aW50MzJfdCBJQ1I7ICAgICAgICAvKiE8IFJJIGlucHV0IGNhcHR1cmUgcmVnaXN0ZXIsICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MDAgKi8NCiAgX19JTyB1aW50MzJfdCBBU0NSMTsgICAgICAvKiE8IFJJIGFuYWxvZyBzd2l0Y2hlcyBjb250cm9sIHJlZ2lzdGVyLCAgICAgICBBZGRyZXNzIG9mZnNldDogMHgwNCAqLw0KICBfX0lPIHVpbnQzMl90IEFTQ1IyOyAgICAgIC8qITwgUkkgYW5hbG9nIHN3aXRjaCBjb250cm9sIHJlZ2lzdGVyIDIsICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgwOCAqLw0KICBfX0lPIHVpbnQzMl90IEhZU0NSMTsgICAgIC8qITwgUkkgaHlzdGVyZXNpcyBjb250cm9sIHJlZ2lzdGVyLCAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgwQyAqLw0KICBfX0lPIHVpbnQzMl90IEhZU0NSMjsgICAgIC8qITwgUkkgSHlzdGVyZXNpcyBjb250cm9sIHJlZ2lzdGVyLCAgICAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDEwICovDQogIF9fSU8gdWludDMyX3QgSFlTQ1IzOyAgICAgLyohPCBSSSBIeXN0ZXJlc2lzIGNvbnRyb2wgcmVnaXN0ZXIsICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MTQgKi8NCiAgdWludDMyX3QgUkVTRVJWRUQxOyAgICAgICAvKiE8IFJlc2VydmVkLCAweDE4ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8NCiAgX19JTyB1aW50MzJfdCBBU01SMTsgICAgICAvKiE8IFJJIEFuYWxvZyBzd2l0Y2ggbW9kZSByZWdpc3RlciAxLCAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDFDICovDQogIF9fSU8gdWludDMyX3QgQ01SMTsgICAgICAgLyohPCBSSSBDaGFubmVsIG1hc2sgcmVnaXN0ZXIgMSwgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MjAgKi8NCiAgX19JTyB1aW50MzJfdCBDSUNSMTsgICAgICAvKiE8IFJJIENoYW5uZWwgSWRlbiBmb3IgY2FwdHVyZSByZWdpc3RlciAxLCAgQWRkcmVzcyBvZmZzZXQ6IDB4MjQgKi8NCiAgX19JTyB1aW50MzJfdCBBU01SMjsgICAgICAvKiE8IFJJIEFuYWxvZyBzd2l0Y2ggbW9kZSByZWdpc3RlciAyLCAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDI4ICovDQogIF9fSU8gdWludDMyX3QgQ01SMjsgICAgICAgLyohPCBSSSBDaGFubmVsIG1hc2sgcmVnaXN0ZXIgMiwgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MkMgKi8NCiAgX19JTyB1aW50MzJfdCBDSUNSMjsgICAgICAvKiE8IFJJIENoYW5uZWwgSWRlbiBmb3IgY2FwdHVyZSByZWdpc3RlciAyLCAgQWRkcmVzcyBvZmZzZXQ6IDB4MzAgKi8NCiAgX19JTyB1aW50MzJfdCBBU01SMzsgICAgICAvKiE8IFJJIEFuYWxvZyBzd2l0Y2ggbW9kZSByZWdpc3RlciAzLCAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDM0ICovDQogIF9fSU8gdWludDMyX3QgQ01SMzsgICAgICAgLyohPCBSSSBDaGFubmVsIG1hc2sgcmVnaXN0ZXIgMywgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MzggKi8NCiAgX19JTyB1aW50MzJfdCBDSUNSMzsgICAgICAvKiE8IFJJIENoYW5uZWwgSWRlbiBmb3IgY2FwdHVyZSByZWdpc3RlciAzLCAgQWRkcmVzcyBvZmZzZXQ6IDB4M0MgKi8NCn0gUklfVHlwZURlZjsNCg0KLyoqIA0KICAqIEBicmllZiBSZWFsLVRpbWUgQ2xvY2sNCiAgKi8NCnR5cGVkZWYgc3RydWN0DQp7DQogIF9fSU8gdWludDMyX3QgVFI7ICAgICAgICAgLyohPCBSVEMgdGltZSByZWdpc3RlciwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDAwICovDQogIF9fSU8gdWludDMyX3QgRFI7ICAgICAgICAgLyohPCBSVEMgZGF0ZSByZWdpc3RlciwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDA0ICovDQogIF9fSU8gdWludDMyX3QgQ1I7ICAgICAgICAgLyohPCBSVEMgY29udHJvbCByZWdpc3RlciwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDA4ICovICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiAgX19JTyB1aW50MzJfdCBJU1I7ICAgICAgICAvKiE8IFJUQyBpbml0aWFsaXphdGlvbiBhbmQgc3RhdHVzIHJlZ2lzdGVyLCAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MEMgKi8NCiAgX19JTyB1aW50MzJfdCBQUkVSOyAgICAgICAvKiE8IFJUQyBwcmVzY2FsZXIgcmVnaXN0ZXIsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MTAgKi8NCiAgX19JTyB1aW50MzJfdCBXVVRSOyAgICAgICAvKiE8IFJUQyB3YWtldXAgdGltZXIgcmVnaXN0ZXIsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MTQgKi8NCiAgX19JTyB1aW50MzJfdCBDQUxJQlI7ICAgICAvKiE8IFJUQyBjYWxpYnJhdGlvbiByZWdpc3RlciwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MTggKi8NCiAgX19JTyB1aW50MzJfdCBBTFJNQVI7ICAgICAvKiE8IFJUQyBhbGFybSBBIHJlZ2lzdGVyLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MUMgKi8NCiAgX19JTyB1aW50MzJfdCBBTFJNQlI7ICAgICAvKiE8IFJUQyBhbGFybSBCIHJlZ2lzdGVyLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MjAgKi8NCiAgX19JTyB1aW50MzJfdCBXUFI7ICAgICAgICAvKiE8IFJUQyB3cml0ZSBwcm90ZWN0aW9uIHJlZ2lzdGVyLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MjQgKi8NCiAgX19JTyB1aW50MzJfdCBTU1I7ICAgICAgICAvKiE8IFJUQyBzdWIgc2Vjb25kIHJlZ2lzdGVyLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MjggKi8NCiAgX19JTyB1aW50MzJfdCBTSElGVFI7ICAgICAvKiE8IFJUQyBzaGlmdCBjb250cm9sIHJlZ2lzdGVyLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MkMgKi8NCiAgX19JTyB1aW50MzJfdCBUU1RSOyAgICAgICAvKiE8IFJUQyB0aW1lIHN0YW1wIHRpbWUgcmVnaXN0ZXIsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MzAgKi8NCiAgX19JTyB1aW50MzJfdCBUU0RSOyAgICAgICAvKiE8IFJUQyB0aW1lIHN0YW1wIGRhdGUgcmVnaXN0ZXIsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MzQgKi8NCiAgX19JTyB1aW50MzJfdCBUU1NTUjsgICAgICAvKiE8IFJUQyB0aW1lLXN0YW1wIHN1YiBzZWNvbmQgcmVnaXN0ZXIsICAgICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MzggKi8NCiAgX19JTyB1aW50MzJfdCBDQUxSOyAgICAgICAvKiE8IFJSVEMgY2FsaWJyYXRpb24gcmVnaXN0ZXIsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4M0MgKi8NCiAgX19JTyB1aW50MzJfdCBUQUZDUjsgICAgICAvKiE8IFJUQyB0YW1wZXIgYW5kIGFsdGVybmF0ZSBmdW5jdGlvbiBjb25maWd1cmF0aW9uIHJlZ2lzdGVyLCAgQWRkcmVzcyBvZmZzZXQ6IDB4NDAgKi8NCiAgX19JTyB1aW50MzJfdCBBTFJNQVNTUjsgICAvKiE8IFJUQyBhbGFybSBBIHN1YiBzZWNvbmQgcmVnaXN0ZXIsICAgICAgICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4NDQgKi8NCiAgX19JTyB1aW50MzJfdCBBTFJNQlNTUjsgICAvKiE8IFJUQyBhbGFybSBCIHN1YiBzZWNvbmQgcmVnaXN0ZXIsICAgICAgICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4NDggKi8NCiAgdWludDMyX3QgUkVTRVJWRUQ3OyAgICAgICAvKiE8IFJlc2VydmVkLCAweDRDICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8NCiAgX19JTyB1aW50MzJfdCBCS1AwUjsgICAgICAvKiE8IFJUQyBiYWNrdXAgcmVnaXN0ZXIgMCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4NTAgKi8NCiAgX19JTyB1aW50MzJfdCBCS1AxUjsgICAgICAvKiE8IFJUQyBiYWNrdXAgcmVnaXN0ZXIgMSwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4NTQgKi8NCiAgX19JTyB1aW50MzJfdCBCS1AyUjsgICAgICAvKiE8IFJUQyBiYWNrdXAgcmVnaXN0ZXIgMiwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4NTggKi8NCiAgX19JTyB1aW50MzJfdCBCS1AzUjsgICAgICAvKiE8IFJUQyBiYWNrdXAgcmVnaXN0ZXIgMywgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4NUMgKi8NCiAgX19JTyB1aW50MzJfdCBCS1A0UjsgICAgICAvKiE8IFJUQyBiYWNrdXAgcmVnaXN0ZXIgNCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4NjAgKi8NCiAgX19JTyB1aW50MzJfdCBCS1A1UjsgICAgICAvKiE8IFJUQyBiYWNrdXAgcmVnaXN0ZXIgNSwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4NjQgKi8NCiAgX19JTyB1aW50MzJfdCBCS1A2UjsgICAgICAvKiE8IFJUQyBiYWNrdXAgcmVnaXN0ZXIgNiwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4NjggKi8NCiAgX19JTyB1aW50MzJfdCBCS1A3UjsgICAgICAvKiE8IFJUQyBiYWNrdXAgcmVnaXN0ZXIgNywgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4NkMgKi8NCiAgX19JTyB1aW50MzJfdCBCS1A4UjsgICAgICAvKiE8IFJUQyBiYWNrdXAgcmVnaXN0ZXIgOCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4NzAgKi8NCiAgX19JTyB1aW50MzJfdCBCS1A5UjsgICAgICAvKiE8IFJUQyBiYWNrdXAgcmVnaXN0ZXIgOSwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4NzQgKi8NCiAgX19JTyB1aW50MzJfdCBCS1AxMFI7ICAgICAvKiE8IFJUQyBiYWNrdXAgcmVnaXN0ZXIgMTAsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4NzggKi8NCiAgX19JTyB1aW50MzJfdCBCS1AxMVI7ICAgICAvKiE8IFJUQyBiYWNrdXAgcmVnaXN0ZXIgMTEsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4N0MgKi8NCiAgX19JTyB1aW50MzJfdCBCS1AxMlI7ICAgICAvKiE8IFJUQyBiYWNrdXAgcmVnaXN0ZXIgMTIsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4ODAgKi8NCiAgX19JTyB1aW50MzJfdCBCS1AxM1I7ICAgICAvKiE8IFJUQyBiYWNrdXAgcmVnaXN0ZXIgMTMsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4ODQgKi8NCiAgX19JTyB1aW50MzJfdCBCS1AxNFI7ICAgICAvKiE8IFJUQyBiYWNrdXAgcmVnaXN0ZXIgMTQsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4ODggKi8NCiAgX19JTyB1aW50MzJfdCBCS1AxNVI7ICAgICAvKiE8IFJUQyBiYWNrdXAgcmVnaXN0ZXIgMTUsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4OEMgKi8NCiAgX19JTyB1aW50MzJfdCBCS1AxNlI7ICAgICAvKiE8IFJUQyBiYWNrdXAgcmVnaXN0ZXIgMTYsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4OTAgKi8NCiAgX19JTyB1aW50MzJfdCBCS1AxN1I7ICAgICAvKiE8IFJUQyBiYWNrdXAgcmVnaXN0ZXIgMTcsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4OTQgKi8NCiAgX19JTyB1aW50MzJfdCBCS1AxOFI7ICAgICAvKiE8IFJUQyBiYWNrdXAgcmVnaXN0ZXIgMTgsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4OTggKi8NCiAgX19JTyB1aW50MzJfdCBCS1AxOVI7ICAgICAvKiE8IFJUQyBiYWNrdXAgcmVnaXN0ZXIgMTksICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4OUMgKi8NCiAgX19JTyB1aW50MzJfdCBCS1AyMFI7ICAgICAvKiE8IFJUQyBiYWNrdXAgcmVnaXN0ZXIgMjAsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4QTAgKi8NCiAgX19JTyB1aW50MzJfdCBCS1AyMVI7ICAgICAvKiE8IFJUQyBiYWNrdXAgcmVnaXN0ZXIgMjEsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4QTQgKi8NCiAgX19JTyB1aW50MzJfdCBCS1AyMlI7ICAgICAvKiE8IFJUQyBiYWNrdXAgcmVnaXN0ZXIgMjIsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4QTggKi8NCiAgX19JTyB1aW50MzJfdCBCS1AyM1I7ICAgICAvKiE8IFJUQyBiYWNrdXAgcmVnaXN0ZXIgMjMsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4QUMgKi8NCiAgX19JTyB1aW50MzJfdCBCS1AyNFI7ICAgICAvKiE8IFJUQyBiYWNrdXAgcmVnaXN0ZXIgMjQsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4QjAgKi8NCiAgX19JTyB1aW50MzJfdCBCS1AyNVI7ICAgICAvKiE8IFJUQyBiYWNrdXAgcmVnaXN0ZXIgMjUsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4QjQgKi8NCiAgX19JTyB1aW50MzJfdCBCS1AyNlI7ICAgICAvKiE8IFJUQyBiYWNrdXAgcmVnaXN0ZXIgMjYsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4QjggKi8NCiAgX19JTyB1aW50MzJfdCBCS1AyN1I7ICAgICAvKiE8IFJUQyBiYWNrdXAgcmVnaXN0ZXIgMjcsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4QkMgKi8NCiAgX19JTyB1aW50MzJfdCBCS1AyOFI7ICAgICAvKiE8IFJUQyBiYWNrdXAgcmVnaXN0ZXIgMjgsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4QzAgKi8NCiAgX19JTyB1aW50MzJfdCBCS1AyOVI7ICAgICAvKiE8IFJUQyBiYWNrdXAgcmVnaXN0ZXIgMjksICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4QzQgKi8NCiAgX19JTyB1aW50MzJfdCBCS1AzMFI7ICAgICAvKiE8IFJUQyBiYWNrdXAgcmVnaXN0ZXIgMzAsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4QzggKi8NCiAgX19JTyB1aW50MzJfdCBCS1AzMVI7ICAgICAvKiE8IFJUQyBiYWNrdXAgcmVnaXN0ZXIgMzEsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4Q0MgKi8NCn0gUlRDX1R5cGVEZWY7DQoNCi8qKiANCiAgKiBAYnJpZWYgU2VyaWFsIFBlcmlwaGVyYWwgSW50ZXJmYWNlDQogICovDQoNCnR5cGVkZWYgc3RydWN0DQp7DQogIF9fSU8gdWludDMyX3QgQ1IxOyAgICAgICAgLyohPCBTUEkgQ29udHJvbCByZWdpc3RlciAxIChub3QgdXNlZCBpbiBJMlMgbW9kZSksICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MDAgKi8NCiAgX19JTyB1aW50MzJfdCBDUjI7ICAgICAgICAvKiE8IFNQSSBDb250cm9sIHJlZ2lzdGVyIDIsICAgICAgICAgICAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgwNCAqLw0KICBfX0lPIHVpbnQzMl90IFNSOyAgICAgICAgIC8qITwgU1BJIFN0YXR1cyByZWdpc3RlciwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDA4ICovDQogIF9fSU8gdWludDMyX3QgRFI7ICAgICAgICAgLyohPCBTUEkgZGF0YSByZWdpc3RlciwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MEMgKi8NCiAgX19JTyB1aW50MzJfdCBDUkNQUjsgICAgICAvKiE8IFNQSSBDUkMgcG9seW5vbWlhbCByZWdpc3RlciAobm90IHVzZWQgaW4gSTJTIG1vZGUpLCBBZGRyZXNzIG9mZnNldDogMHgxMCAqLw0KICBfX0lPIHVpbnQzMl90IFJYQ1JDUjsgICAgIC8qITwgU1BJIFJ4IENSQyByZWdpc3RlciAobm90IHVzZWQgaW4gSTJTIG1vZGUpLCAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDE0ICovDQogIF9fSU8gdWludDMyX3QgVFhDUkNSOyAgICAgLyohPCBTUEkgVHggQ1JDIHJlZ2lzdGVyIChub3QgdXNlZCBpbiBJMlMgbW9kZSksICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MTggKi8NCiAgX19JTyB1aW50MzJfdCBJMlNDRkdSOyAgICAvKiE8IFNQSV9JMlMgY29uZmlndXJhdGlvbiByZWdpc3RlciwgICAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgxQyAqLw0KICBfX0lPIHVpbnQzMl90IEkyU1BSOyAgICAgIC8qITwgU1BJX0kyUyBwcmVzY2FsZXIgcmVnaXN0ZXIsICAgICAgICAgICAgICAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDIwICovDQp9IFNQSV9UeXBlRGVmOw0KDQovKiogDQogICogQGJyaWVmIFRJTQ0KICAqLw0KdHlwZWRlZiBzdHJ1Y3QNCnsNCiAgX19JTyB1aW50MzJfdCBDUjE7ICAgICAgICAgIC8qITwgVElNIGNvbnRyb2wgcmVnaXN0ZXIgMSwgICAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDAwICovDQogIF9fSU8gdWludDMyX3QgQ1IyOyAgICAgICAgICAvKiE8IFRJTSBjb250cm9sIHJlZ2lzdGVyIDIsICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgwNCAqLw0KICBfX0lPIHVpbnQzMl90IFNNQ1I7ICAgICAgICAgLyohPCBUSU0gc2xhdmUgTW9kZSBDb250cm9sIHJlZ2lzdGVyLCAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MDggKi8NCiAgX19JTyB1aW50MzJfdCBESUVSOyAgICAgICAgIC8qITwgVElNIERNQS9pbnRlcnJ1cHQgZW5hYmxlIHJlZ2lzdGVyLCAgIEFkZHJlc3Mgb2Zmc2V0OiAweDBDICovDQogIF9fSU8gdWludDMyX3QgU1I7ICAgICAgICAgICAvKiE8IFRJTSBzdGF0dXMgcmVnaXN0ZXIsICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgxMCAqLw0KICBfX0lPIHVpbnQzMl90IEVHUjsgICAgICAgICAgLyohPCBUSU0gZXZlbnQgZ2VuZXJhdGlvbiByZWdpc3RlciwgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MTQgKi8NCiAgX19JTyB1aW50MzJfdCBDQ01SMTsgICAgICAgIC8qITwgVElNIGNhcHR1cmUvY29tcGFyZSBtb2RlIHJlZ2lzdGVyIDEsIEFkZHJlc3Mgb2Zmc2V0OiAweDE4ICovDQogIF9fSU8gdWludDMyX3QgQ0NNUjI7ICAgICAgICAvKiE8IFRJTSBjYXB0dXJlL2NvbXBhcmUgbW9kZSByZWdpc3RlciAyLCBBZGRyZXNzIG9mZnNldDogMHgxQyAqLw0KICBfX0lPIHVpbnQzMl90IENDRVI7ICAgICAgICAgLyohPCBUSU0gY2FwdHVyZS9jb21wYXJlIGVuYWJsZSByZWdpc3RlciwgQWRkcmVzcyBvZmZzZXQ6IDB4MjAgKi8NCiAgX19JTyB1aW50MzJfdCBDTlQ7ICAgICAgICAgIC8qITwgVElNIGNvdW50ZXIgcmVnaXN0ZXIsICAgICAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDI0ICovDQogIF9fSU8gdWludDMyX3QgUFNDOyAgICAgICAgICAvKiE8IFRJTSBwcmVzY2FsZXIgcmVnaXN0ZXIsICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgyOCAqLw0KICBfX0lPIHVpbnQzMl90IEFSUjsgICAgICAgICAgLyohPCBUSU0gYXV0by1yZWxvYWQgcmVnaXN0ZXIsICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MkMgKi8NCiAgdWludDMyX3QgICAgICBSRVNFUlZFRDEyOyAgIC8qITwgUmVzZXJ2ZWQsIDB4MzAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovICAgIA0KICBfX0lPIHVpbnQzMl90IENDUjE7ICAgICAgICAgLyohPCBUSU0gY2FwdHVyZS9jb21wYXJlIHJlZ2lzdGVyIDEsICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MzQgKi8gICAgDQogIF9fSU8gdWludDMyX3QgQ0NSMjsgICAgICAgICAvKiE8IFRJTSBjYXB0dXJlL2NvbXBhcmUgcmVnaXN0ZXIgMiwgICAgICBBZGRyZXNzIG9mZnNldDogMHgzOCAqLyAgICANCiAgX19JTyB1aW50MzJfdCBDQ1IzOyAgICAgICAgIC8qITwgVElNIGNhcHR1cmUvY29tcGFyZSByZWdpc3RlciAzLCAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDNDICovDQogIF9fSU8gdWludDMyX3QgQ0NSNDsgICAgICAgICAvKiE8IFRJTSBjYXB0dXJlL2NvbXBhcmUgcmVnaXN0ZXIgNCwgICAgICBBZGRyZXNzIG9mZnNldDogMHg0MCAqLw0KICB1aW50MzJfdCAgICAgIFJFU0VSVkVEMTc7ICAgLyohPCBSZXNlcnZlZCwgMHg0NCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8gDQogIF9fSU8gdWludDMyX3QgRENSOyAgICAgICAgICAvKiE8IFRJTSBETUEgY29udHJvbCByZWdpc3RlciwgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHg0OCAqLw0KICBfX0lPIHVpbnQzMl90IERNQVI7ICAgICAgICAgLyohPCBUSU0gRE1BIGFkZHJlc3MgZm9yIGZ1bGwgdHJhbnNmZXIsICAgQWRkcmVzcyBvZmZzZXQ6IDB4NEMgKi8NCiAgX19JTyB1aW50MzJfdCBPUjsgICAgICAgICAgIC8qITwgVElNIG9wdGlvbiByZWdpc3RlciwgICAgICAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDUwICovDQp9IFRJTV9UeXBlRGVmOw0KLyoqIA0KICAqIEBicmllZiBVbml2ZXJzYWwgU3luY2hyb25vdXMgQXN5bmNocm9ub3VzIFJlY2VpdmVyIFRyYW5zbWl0dGVyDQogICovDQogDQp0eXBlZGVmIHN0cnVjdA0Kew0KICBfX0lPIHVpbnQzMl90IFNSOyAgICAgICAgIC8qITwgVVNBUlQgU3RhdHVzIHJlZ2lzdGVyLCAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgwMCAqLw0KICBfX0lPIHVpbnQzMl90IERSOyAgICAgICAgIC8qITwgVVNBUlQgRGF0YSByZWdpc3RlciwgICAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgwNCAqLw0KICBfX0lPIHVpbnQzMl90IEJSUjsgICAgICAgIC8qITwgVVNBUlQgQmF1ZCByYXRlIHJlZ2lzdGVyLCAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgwOCAqLw0KICBfX0lPIHVpbnQzMl90IENSMTsgICAgICAgIC8qITwgVVNBUlQgQ29udHJvbCByZWdpc3RlciAxLCAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgwQyAqLw0KICBfX0lPIHVpbnQzMl90IENSMjsgICAgICAgIC8qITwgVVNBUlQgQ29udHJvbCByZWdpc3RlciAyLCAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgxMCAqLw0KICBfX0lPIHVpbnQzMl90IENSMzsgICAgICAgIC8qITwgVVNBUlQgQ29udHJvbCByZWdpc3RlciAzLCAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgxNCAqLw0KICBfX0lPIHVpbnQzMl90IEdUUFI7ICAgICAgIC8qITwgVVNBUlQgR3VhcmQgdGltZSBhbmQgcHJlc2NhbGVyIHJlZ2lzdGVyLCBBZGRyZXNzIG9mZnNldDogMHgxOCAqLw0KfSBVU0FSVF9UeXBlRGVmOw0KDQovKiogDQogICogQGJyaWVmIFVuaXZlcnNhbCBTZXJpYWwgQnVzIEZ1bGwgU3BlZWQgRGV2aWNlDQogICovDQogIA0KdHlwZWRlZiBzdHJ1Y3QNCnsNCiAgX19JTyB1aW50MTZfdCBFUDBSOyAgICAgICAgICAgIC8qITwgVVNCIEVuZHBvaW50IDAgcmVnaXN0ZXIsICAgICAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDAwICovIA0KICBfX0lPIHVpbnQxNl90IFJFU0VSVkVEMDsgICAgICAgLyohPCBSZXNlcnZlZCAqLyAgICAgDQogIF9fSU8gdWludDE2X3QgRVAxUjsgICAgICAgICAgICAvKiE8IFVTQiBFbmRwb2ludCAxIHJlZ2lzdGVyLCAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgwNCAqLw0KICBfX0lPIHVpbnQxNl90IFJFU0VSVkVEMTsgICAgICAgLyohPCBSZXNlcnZlZCAqLyAgICAgICANCiAgX19JTyB1aW50MTZfdCBFUDJSOyAgICAgICAgICAgIC8qITwgVVNCIEVuZHBvaW50IDIgcmVnaXN0ZXIsICAgICAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDA4ICovDQogIF9fSU8gdWludDE2X3QgUkVTRVJWRUQyOyAgICAgICAvKiE8IFJlc2VydmVkICovICAgICAgIA0KICBfX0lPIHVpbnQxNl90IEVQM1I7ICAgICAgICAgICAgLyohPCBVU0IgRW5kcG9pbnQgMyByZWdpc3RlciwgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MEMgKi8gDQogIF9fSU8gdWludDE2X3QgUkVTRVJWRUQzOyAgICAgICAvKiE8IFJlc2VydmVkICovICAgICAgIA0KICBfX0lPIHVpbnQxNl90IEVQNFI7ICAgICAgICAgICAgLyohPCBVU0IgRW5kcG9pbnQgNCByZWdpc3RlciwgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MTAgKi8NCiAgX19JTyB1aW50MTZfdCBSRVNFUlZFRDQ7ICAgICAgIC8qITwgUmVzZXJ2ZWQgKi8gICAgICAgDQogIF9fSU8gdWludDE2X3QgRVA1UjsgICAgICAgICAgICAvKiE8IFVTQiBFbmRwb2ludCA1IHJlZ2lzdGVyLCAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgxNCAqLw0KICBfX0lPIHVpbnQxNl90IFJFU0VSVkVENTsgICAgICAgLyohPCBSZXNlcnZlZCAqLyAgICAgICANCiAgX19JTyB1aW50MTZfdCBFUDZSOyAgICAgICAgICAgIC8qITwgVVNCIEVuZHBvaW50IDYgcmVnaXN0ZXIsICAgICAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDE4ICovDQogIF9fSU8gdWludDE2X3QgUkVTRVJWRUQ2OyAgICAgICAvKiE8IFJlc2VydmVkICovICAgICAgIA0KICBfX0lPIHVpbnQxNl90IEVQN1I7ICAgICAgICAgICAgLyohPCBVU0IgRW5kcG9pbnQgNyByZWdpc3RlciwgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MUMgKi8NCiAgX19JTyB1aW50MTZfdCBSRVNFUlZFRDdbMTddOyAgIC8qITwgUmVzZXJ2ZWQgKi8gICAgIA0KICBfX0lPIHVpbnQxNl90IENOVFI7ICAgICAgICAgICAgLyohPCBDb250cm9sIHJlZ2lzdGVyLCAgICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4NDAgKi8NCiAgX19JTyB1aW50MTZfdCBSRVNFUlZFRDg7ICAgICAgIC8qITwgUmVzZXJ2ZWQgKi8gICAgICAgDQogIF9fSU8gdWludDE2X3QgSVNUUjsgICAgICAgICAgICAvKiE8IEludGVycnVwdCBzdGF0dXMgcmVnaXN0ZXIsICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHg0NCAqLw0KICBfX0lPIHVpbnQxNl90IFJFU0VSVkVEOTsgICAgICAgLyohPCBSZXNlcnZlZCAqLyAgICAgICANCiAgX19JTyB1aW50MTZfdCBGTlI7ICAgICAgICAgICAgIC8qITwgRnJhbWUgbnVtYmVyIHJlZ2lzdGVyLCAgICAgICAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDQ4ICovDQogIF9fSU8gdWludDE2X3QgUkVTRVJWRURBOyAgICAgICAvKiE8IFJlc2VydmVkICovICAgICAgIA0KICBfX0lPIHVpbnQxNl90IERBRERSOyAgICAgICAgICAgLyohPCBEZXZpY2UgYWRkcmVzcyByZWdpc3RlciwgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4NEMgKi8NCiAgX19JTyB1aW50MTZfdCBSRVNFUlZFREI7ICAgICAgIC8qITwgUmVzZXJ2ZWQgKi8gICAgICAgDQogIF9fSU8gdWludDE2X3QgQlRBQkxFOyAgICAgICAgICAvKiE8IEJ1ZmZlciBUYWJsZSBhZGRyZXNzIHJlZ2lzdGVyLCAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHg1MCAqLw0KICBfX0lPIHVpbnQxNl90IFJFU0VSVkVEQzsgICAgICAgLyohPCBSZXNlcnZlZCAqLyAgICAgICANCn0gVVNCX1R5cGVEZWY7DQoNCi8qKiANCiAgKiBAYnJpZWYgV2luZG93IFdBVENIRE9HDQogICovDQp0eXBlZGVmIHN0cnVjdA0Kew0KICBfX0lPIHVpbnQzMl90IENSOyAgIC8qITwgV1dERyBDb250cm9sIHJlZ2lzdGVyLCAgICAgICBBZGRyZXNzIG9mZnNldDogMHgwMCAqLw0KICBfX0lPIHVpbnQzMl90IENGUjsgIC8qITwgV1dERyBDb25maWd1cmF0aW9uIHJlZ2lzdGVyLCBBZGRyZXNzIG9mZnNldDogMHgwNCAqLw0KICBfX0lPIHVpbnQzMl90IFNSOyAgIC8qITwgV1dERyBTdGF0dXMgcmVnaXN0ZXIsICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgwOCAqLw0KfSBXV0RHX1R5cGVEZWY7DQoNCi8qKiANCiAgKiBAYnJpZWYgVW5pdmVyc2FsIFNlcmlhbCBCdXMgRnVsbCBTcGVlZCBEZXZpY2UNCiAgKi8NCi8qKiANCiAgKiBAfQ0KICAqLw0KICANCi8qKiBAYWRkdG9ncm91cCBQZXJpcGhlcmFsX21lbW9yeV9tYXANCiAgKiBAew0KICAqLw0KDQojZGVmaW5lIEZMQVNIX0JBU0UgICAgICAgICAgICAoKHVpbnQzMl90KTB4MDgwMDAwMDBVKSAgICAgICAgICAgICAgLyohPCBGTEFTSCBiYXNlIGFkZHJlc3MgaW4gdGhlIGFsaWFzIHJlZ2lvbiAqLw0KI2RlZmluZSBGTEFTSF9FRVBST01fQkFTRSAgICAgKCh1aW50MzJfdCkoRkxBU0hfQkFTRSArIDB4ODAwMDBVKSkgIC8qITwgRkxBU0ggRUVQUk9NIGJhc2UgYWRkcmVzcyBpbiB0aGUgYWxpYXMgcmVnaW9uICovDQojZGVmaW5lIFNSQU1fQkFTRSAgICAgICAgICAgICAoKHVpbnQzMl90KTB4MjAwMDAwMDBVKSAgICAgICAgICAgICAgLyohPCBTUkFNIGJhc2UgYWRkcmVzcyBpbiB0aGUgYWxpYXMgcmVnaW9uICovDQojZGVmaW5lIFBFUklQSF9CQVNFICAgICAgICAgICAoKHVpbnQzMl90KTB4NDAwMDAwMDBVKSAgICAgICAgICAgICAgLyohPCBQZXJpcGhlcmFsIGJhc2UgYWRkcmVzcyBpbiB0aGUgYWxpYXMgcmVnaW9uICovDQojZGVmaW5lIFNSQU1fQkJfQkFTRSAgICAgICAgICAoKHVpbnQzMl90KTB4MjIwMDAwMDBVKSAgICAgICAgICAgICAgLyohPCBTUkFNIGJhc2UgYWRkcmVzcyBpbiB0aGUgYml0LWJhbmQgcmVnaW9uICovDQojZGVmaW5lIFBFUklQSF9CQl9CQVNFICAgICAgICAoKHVpbnQzMl90KTB4NDIwMDAwMDBVKSAgICAgICAgICAgICAgLyohPCBQZXJpcGhlcmFsIGJhc2UgYWRkcmVzcyBpbiB0aGUgYml0LWJhbmQgcmVnaW9uICovDQojZGVmaW5lIEZMQVNIX0VORCAgICAgICAgICAgICAoKHVpbnQzMl90KTB4MDgwM0ZGRkZVKSAgICAgICAgICAgICAgLyohPCBQcm9ncmFtIGVuZCBGTEFTSCBhZGRyZXNzIGZvciBDYXQzICovDQojZGVmaW5lIEZMQVNIX0VFUFJPTV9FTkQgICAgICAoKHVpbnQzMl90KTB4MDgwODFGRkZVKSAgICAgICAgICAgICAgLyohPCBGTEFTSCBFRVBST00gZW5kIGFkZHJlc3MgKDhLQikgKi8NCg0KLyohPCBQZXJpcGhlcmFsIG1lbW9yeSBtYXAgKi8NCiNkZWZpbmUgQVBCMVBFUklQSF9CQVNFICAgICAgIFBFUklQSF9CQVNFDQojZGVmaW5lIEFQQjJQRVJJUEhfQkFTRSAgICAgICAoUEVSSVBIX0JBU0UgKyAweDAwMDEwMDAwVSkNCiNkZWZpbmUgQUhCUEVSSVBIX0JBU0UgICAgICAgIChQRVJJUEhfQkFTRSArIDB4MDAwMjAwMDBVKQ0KDQovKiE8IEFQQjEgcGVyaXBoZXJhbHMgKi8NCiNkZWZpbmUgVElNMl9CQVNFICAgICAgICAgICAgIChBUEIxUEVSSVBIX0JBU0UgKyAweDAwMDAwMDAwVSkNCiNkZWZpbmUgVElNM19CQVNFICAgICAgICAgICAgIChBUEIxUEVSSVBIX0JBU0UgKyAweDAwMDAwNDAwVSkNCiNkZWZpbmUgVElNNF9CQVNFICAgICAgICAgICAgIChBUEIxUEVSSVBIX0JBU0UgKyAweDAwMDAwODAwVSkNCiNkZWZpbmUgVElNNV9CQVNFICAgICAgICAgICAgIChBUEIxUEVSSVBIX0JBU0UgKyAweDAwMDAwQzAwVSkNCiNkZWZpbmUgVElNNl9CQVNFICAgICAgICAgICAgIChBUEIxUEVSSVBIX0JBU0UgKyAweDAwMDAxMDAwVSkNCiNkZWZpbmUgVElNN19CQVNFICAgICAgICAgICAgIChBUEIxUEVSSVBIX0JBU0UgKyAweDAwMDAxNDAwVSkNCiNkZWZpbmUgTENEX0JBU0UgICAgICAgICAgICAgIChBUEIxUEVSSVBIX0JBU0UgKyAweDAwMDAyNDAwVSkNCiNkZWZpbmUgUlRDX0JBU0UgICAgICAgICAgICAgIChBUEIxUEVSSVBIX0JBU0UgKyAweDAwMDAyODAwVSkNCiNkZWZpbmUgV1dER19CQVNFICAgICAgICAgICAgIChBUEIxUEVSSVBIX0JBU0UgKyAweDAwMDAyQzAwVSkNCiNkZWZpbmUgSVdER19CQVNFICAgICAgICAgICAgIChBUEIxUEVSSVBIX0JBU0UgKyAweDAwMDAzMDAwVSkNCiNkZWZpbmUgU1BJMl9CQVNFICAgICAgICAgICAgIChBUEIxUEVSSVBIX0JBU0UgKyAweDAwMDAzODAwVSkNCiNkZWZpbmUgU1BJM19CQVNFICAgICAgICAgICAgIChBUEIxUEVSSVBIX0JBU0UgKyAweDAwMDAzQzAwVSkNCiNkZWZpbmUgVVNBUlQyX0JBU0UgICAgICAgICAgIChBUEIxUEVSSVBIX0JBU0UgKyAweDAwMDA0NDAwVSkNCiNkZWZpbmUgVVNBUlQzX0JBU0UgICAgICAgICAgIChBUEIxUEVSSVBIX0JBU0UgKyAweDAwMDA0ODAwVSkNCiNkZWZpbmUgSTJDMV9CQVNFICAgICAgICAgICAgIChBUEIxUEVSSVBIX0JBU0UgKyAweDAwMDA1NDAwVSkNCiNkZWZpbmUgSTJDMl9CQVNFICAgICAgICAgICAgIChBUEIxUEVSSVBIX0JBU0UgKyAweDAwMDA1ODAwVSkNCg0KLyogVVNCIGRldmljZSBGUyAqLw0KI2RlZmluZSBVU0JfQkFTRSAgICAgICAgICAgICAgKEFQQjFQRVJJUEhfQkFTRSArIDB4MDAwMDVDMDBVKSAvKiE8IFVTQl9JUCBQZXJpcGhlcmFsIFJlZ2lzdGVycyBiYXNlIGFkZHJlc3MgKi8NCiNkZWZpbmUgVVNCX1BNQUFERFIgICAgICAgICAgIChBUEIxUEVSSVBIX0JBU0UgKyAweDAwMDA2MDAwVSkgLyohPCBVU0JfSVAgUGFja2V0IE1lbW9yeSBBcmVhIGJhc2UgYWRkcmVzcyAqLw0KDQovKiBVU0IgZGV2aWNlIEZTIFNSQU0gKi8NCiNkZWZpbmUgUFdSX0JBU0UgICAgICAgICAgICAgIChBUEIxUEVSSVBIX0JBU0UgKyAweDAwMDA3MDAwVSkNCiNkZWZpbmUgREFDX0JBU0UgICAgICAgICAgICAgIChBUEIxUEVSSVBIX0JBU0UgKyAweDAwMDA3NDAwVSkNCiNkZWZpbmUgQ09NUF9CQVNFICAgICAgICAgICAgIChBUEIxUEVSSVBIX0JBU0UgKyAweDAwMDA3QzAwVSkNCiNkZWZpbmUgUklfQkFTRSAgICAgICAgICAgICAgIChBUEIxUEVSSVBIX0JBU0UgKyAweDAwMDA3QzA0VSkNCiNkZWZpbmUgT1BBTVBfQkFTRSAgICAgICAgICAgIChBUEIxUEVSSVBIX0JBU0UgKyAweDAwMDA3QzVDVSkNCg0KLyohPCBBUEIyIHBlcmlwaGVyYWxzICovDQojZGVmaW5lIFNZU0NGR19CQVNFICAgICAgICAgICAoQVBCMlBFUklQSF9CQVNFICsgMHgwMDAwMDAwMFUpDQojZGVmaW5lIEVYVElfQkFTRSAgICAgICAgICAgICAoQVBCMlBFUklQSF9CQVNFICsgMHgwMDAwMDQwMFUpDQojZGVmaW5lIFRJTTlfQkFTRSAgICAgICAgICAgICAoQVBCMlBFUklQSF9CQVNFICsgMHgwMDAwMDgwMFUpDQojZGVmaW5lIFRJTTEwX0JBU0UgICAgICAgICAgICAoQVBCMlBFUklQSF9CQVNFICsgMHgwMDAwMEMwMFUpDQojZGVmaW5lIFRJTTExX0JBU0UgICAgICAgICAgICAoQVBCMlBFUklQSF9CQVNFICsgMHgwMDAwMTAwMFUpDQojZGVmaW5lIEFEQzFfQkFTRSAgICAgICAgICAgICAoQVBCMlBFUklQSF9CQVNFICsgMHgwMDAwMjQwMFUpDQojZGVmaW5lIEFEQ19CQVNFICAgICAgICAgICAgICAoQVBCMlBFUklQSF9CQVNFICsgMHgwMDAwMjcwMFUpDQojZGVmaW5lIFNQSTFfQkFTRSAgICAgICAgICAgICAoQVBCMlBFUklQSF9CQVNFICsgMHgwMDAwMzAwMFUpDQojZGVmaW5lIFVTQVJUMV9CQVNFICAgICAgICAgICAoQVBCMlBFUklQSF9CQVNFICsgMHgwMDAwMzgwMFUpDQoNCi8qITwgQUhCIHBlcmlwaGVyYWxzICovDQojZGVmaW5lIEdQSU9BX0JBU0UgICAgICAgICAgICAoQUhCUEVSSVBIX0JBU0UgKyAweDAwMDAwMDAwVSkNCiNkZWZpbmUgR1BJT0JfQkFTRSAgICAgICAgICAgIChBSEJQRVJJUEhfQkFTRSArIDB4MDAwMDA0MDBVKQ0KI2RlZmluZSBHUElPQ19CQVNFICAgICAgICAgICAgKEFIQlBFUklQSF9CQVNFICsgMHgwMDAwMDgwMFUpDQojZGVmaW5lIEdQSU9EX0JBU0UgICAgICAgICAgICAoQUhCUEVSSVBIX0JBU0UgKyAweDAwMDAwQzAwVSkNCiNkZWZpbmUgR1BJT0VfQkFTRSAgICAgICAgICAgIChBSEJQRVJJUEhfQkFTRSArIDB4MDAwMDEwMDBVKQ0KI2RlZmluZSBHUElPSF9CQVNFICAgICAgICAgICAgKEFIQlBFUklQSF9CQVNFICsgMHgwMDAwMTQwMFUpDQojZGVmaW5lIENSQ19CQVNFICAgICAgICAgICAgICAoQUhCUEVSSVBIX0JBU0UgKyAweDAwMDAzMDAwVSkNCiNkZWZpbmUgUkNDX0JBU0UgICAgICAgICAgICAgIChBSEJQRVJJUEhfQkFTRSArIDB4MDAwMDM4MDBVKQ0KI2RlZmluZSBGTEFTSF9SX0JBU0UgICAgICAgICAgKEFIQlBFUklQSF9CQVNFICsgMHgwMDAwM0MwMFUpIC8qITwgRkxBU0ggcmVnaXN0ZXJzIGJhc2UgYWRkcmVzcyAqLw0KI2RlZmluZSBPQl9CQVNFICAgICAgICAgICAgICAgKCh1aW50MzJfdCkweDFGRjgwMDAwVSkgICAgICAgIC8qITwgRkxBU0ggT3B0aW9uIEJ5dGVzIGJhc2UgYWRkcmVzcyAqLw0KI2RlZmluZSBGTEFTSFNJWkVfQkFTRSAgICAgICAgKCh1aW50MzJfdCkweDFGRjgwMENDVSkgICAgICAgIC8qITwgRkxBU0ggU2l6ZSByZWdpc3RlciBiYXNlIGFkZHJlc3MgZm9yIENhdC4zLCBDYXQuNCwgQ2F0LjUgYW5kIENhdC42IGRldmljZXMgKi8NCiNkZWZpbmUgVUlEX0JBU0UgICAgICAgICAgICAgICgodWludDMyX3QpMHgxRkY4MDBEMFUpICAgICAgICAvKiE8IFVuaXF1ZSBkZXZpY2UgSUQgcmVnaXN0ZXIgYmFzZSBhZGRyZXNzIGZvciBDYXQuMywgQ2F0LjQsIENhdC41IGFuZCBDYXQuNiBkZXZpY2VzICovDQojZGVmaW5lIERNQTFfQkFTRSAgICAgICAgICAgICAoQUhCUEVSSVBIX0JBU0UgKyAweDAwMDA2MDAwVSkNCiNkZWZpbmUgRE1BMV9DaGFubmVsMV9CQVNFICAgIChETUExX0JBU0UgKyAweDAwMDAwMDA4VSkNCiNkZWZpbmUgRE1BMV9DaGFubmVsMl9CQVNFICAgIChETUExX0JBU0UgKyAweDAwMDAwMDFDVSkNCiNkZWZpbmUgRE1BMV9DaGFubmVsM19CQVNFICAgIChETUExX0JBU0UgKyAweDAwMDAwMDMwVSkNCiNkZWZpbmUgRE1BMV9DaGFubmVsNF9CQVNFICAgIChETUExX0JBU0UgKyAweDAwMDAwMDQ0VSkNCiNkZWZpbmUgRE1BMV9DaGFubmVsNV9CQVNFICAgIChETUExX0JBU0UgKyAweDAwMDAwMDU4VSkNCiNkZWZpbmUgRE1BMV9DaGFubmVsNl9CQVNFICAgIChETUExX0JBU0UgKyAweDAwMDAwMDZDVSkNCiNkZWZpbmUgRE1BMV9DaGFubmVsN19CQVNFICAgIChETUExX0JBU0UgKyAweDAwMDAwMDgwVSkNCiNkZWZpbmUgRE1BMl9CQVNFICAgICAgICAgICAgIChBSEJQRVJJUEhfQkFTRSArIDB4MDAwMDY0MDBVKQ0KI2RlZmluZSBETUEyX0NoYW5uZWwxX0JBU0UgICAgKERNQTJfQkFTRSArIDB4MDAwMDAwMDhVKQ0KI2RlZmluZSBETUEyX0NoYW5uZWwyX0JBU0UgICAgKERNQTJfQkFTRSArIDB4MDAwMDAwMUNVKQ0KI2RlZmluZSBETUEyX0NoYW5uZWwzX0JBU0UgICAgKERNQTJfQkFTRSArIDB4MDAwMDAwMzBVKQ0KI2RlZmluZSBETUEyX0NoYW5uZWw0X0JBU0UgICAgKERNQTJfQkFTRSArIDB4MDAwMDAwNDRVKQ0KI2RlZmluZSBETUEyX0NoYW5uZWw1X0JBU0UgICAgKERNQTJfQkFTRSArIDB4MDAwMDAwNThVKQ0KI2RlZmluZSBBRVNfQkFTRSAgICAgICAgICAgICAgKCh1aW50MzJfdCkweDUwMDYwMDAwVSkNCiNkZWZpbmUgREJHTUNVX0JBU0UgICAgICAgICAgICgodWludDMyX3QpMHhFMDA0MjAwMFUpICAgICAvKiE8IERlYnVnIE1DVSByZWdpc3RlcnMgYmFzZSBhZGRyZXNzICovDQoNCi8qKg0KICAqIEB9DQogICovDQogIA0KLyoqIEBhZGR0b2dyb3VwIFBlcmlwaGVyYWxfZGVjbGFyYXRpb24NCiAgKiBAew0KICAqLyAgDQoNCiNkZWZpbmUgVElNMiAgICAgICAgICAgICAgICAoKFRJTV9UeXBlRGVmICopIFRJTTJfQkFTRSkNCiNkZWZpbmUgVElNMyAgICAgICAgICAgICAgICAoKFRJTV9UeXBlRGVmICopIFRJTTNfQkFTRSkNCiNkZWZpbmUgVElNNCAgICAgICAgICAgICAgICAoKFRJTV9UeXBlRGVmICopIFRJTTRfQkFTRSkNCiNkZWZpbmUgVElNNSAgICAgICAgICAgICAgICAoKFRJTV9UeXBlRGVmICopIFRJTTVfQkFTRSkNCiNkZWZpbmUgVElNNiAgICAgICAgICAgICAgICAoKFRJTV9UeXBlRGVmICopIFRJTTZfQkFTRSkNCiNkZWZpbmUgVElNNyAgICAgICAgICAgICAgICAoKFRJTV9UeXBlRGVmICopIFRJTTdfQkFTRSkNCiNkZWZpbmUgTENEICAgICAgICAgICAgICAgICAoKExDRF9UeXBlRGVmICopIExDRF9CQVNFKQ0KI2RlZmluZSBSVEMgICAgICAgICAgICAgICAgICgoUlRDX1R5cGVEZWYgKikgUlRDX0JBU0UpDQojZGVmaW5lIFdXREcgICAgICAgICAgICAgICAgKChXV0RHX1R5cGVEZWYgKikgV1dER19CQVNFKQ0KI2RlZmluZSBJV0RHICAgICAgICAgICAgICAgICgoSVdER19UeXBlRGVmICopIElXREdfQkFTRSkNCiNkZWZpbmUgU1BJMiAgICAgICAgICAgICAgICAoKFNQSV9UeXBlRGVmICopIFNQSTJfQkFTRSkNCiNkZWZpbmUgU1BJMyAgICAgICAgICAgICAgICAoKFNQSV9UeXBlRGVmICopIFNQSTNfQkFTRSkNCiNkZWZpbmUgVVNBUlQyICAgICAgICAgICAgICAoKFVTQVJUX1R5cGVEZWYgKikgVVNBUlQyX0JBU0UpDQojZGVmaW5lIFVTQVJUMyAgICAgICAgICAgICAgKChVU0FSVF9UeXBlRGVmICopIFVTQVJUM19CQVNFKQ0KI2RlZmluZSBJMkMxICAgICAgICAgICAgICAgICgoSTJDX1R5cGVEZWYgKikgSTJDMV9CQVNFKQ0KI2RlZmluZSBJMkMyICAgICAgICAgICAgICAgICgoSTJDX1R5cGVEZWYgKikgSTJDMl9CQVNFKQ0KLyogVVNCIGRldmljZSBGUyAqLw0KI2RlZmluZSBVU0IgICAgICAgICAgICAgICAgICAgKChVU0JfVHlwZURlZiAqKSBVU0JfQkFTRSkNCi8qIFVTQiBkZXZpY2UgRlMgU1JBTSAqLw0KI2RlZmluZSBQV1IgICAgICAgICAgICAgICAgICgoUFdSX1R5cGVEZWYgKikgUFdSX0JBU0UpDQoNCiNkZWZpbmUgREFDMSAgICAgICAgICAgICAgICAoKERBQ19UeXBlRGVmICopIERBQ19CQVNFKQ0KLyogTGVnYWN5IGRlZmluZSAqLw0KI2RlZmluZSBEQUMgICAgICAgICAgICAgICAgIERBQzENCg0KI2RlZmluZSBDT01QICAgICAgICAgICAgICAgICgoQ09NUF9UeXBlRGVmICopIENPTVBfQkFTRSkgICAgICAgICAgICAgICAgIC8qIENPTVAgZ2VuZXJpYyBpbnN0YW5jZSBpbmNsdWRlIGJpdHMgb2YgQ09NUDEgYW5kIENPTVAyIG1peGVkIGluIHRoZSBzYW1lIHJlZ2lzdGVyICovDQojZGVmaW5lIENPTVAxICAgICAgICAgICAgICAgKChDT01QX1R5cGVEZWYgKikgQ09NUF9CQVNFKSAgICAgICAgICAgICAgICAgLyogQ09NUDEgaW5zdGFuY2UgZGVmaW5pdGlvbiB0byBkaWZmZXJlbnRpYXRlIENPTVAxIGFuZCBDT01QMiwgbm90IHRvIGJlIHVzZWQgdG8gYWNjZXNzIGNvbXBhcmF0b3IgcmVnaXN0ZXIgKi8NCiNkZWZpbmUgQ09NUDIgICAgICAgICAgICAgICAoKENPTVBfVHlwZURlZiAqKSAoQ09NUF9CQVNFICsgMHgwMDAwMDAwMVUpKSAvKiBDT01QMiBpbnN0YW5jZSBkZWZpbml0aW9uIHRvIGRpZmZlcmVudGlhdGUgQ09NUDEgYW5kIENPTVAyLCBub3QgdG8gYmUgdXNlZCB0byBhY2Nlc3MgY29tcGFyYXRvciByZWdpc3RlciAqLw0KI2RlZmluZSBDT01QMTJfQ09NTU9OICAgICAgICgoQ09NUF9Db21tb25fVHlwZURlZiAqKSBDT01QX0JBU0UpICAgICAgICAgIC8qIENPTVAgY29tbW9uIGluc3RhbmNlIGRlZmluaXRpb24gdG8gYWNjZXNzIGNvbXBhcmF0b3IgcmVnaXN0ZXIgYml0cyB1c2VkIGJ5IGJvdGggY29tcGFyYXRvciBpbnN0YW5jZXMgKHdpbmRvdyBtb2RlKSAqLw0KDQojZGVmaW5lIFJJICAgICAgICAgICAgICAgICAgKChSSV9UeXBlRGVmICopIFJJX0JBU0UpDQoNCiNkZWZpbmUgT1BBTVAgICAgICAgICAgICAgICAoKE9QQU1QX1R5cGVEZWYgKikgT1BBTVBfQkFTRSkNCiNkZWZpbmUgT1BBTVAxICAgICAgICAgICAgICAoKE9QQU1QX1R5cGVEZWYgKikgT1BBTVBfQkFTRSkNCiNkZWZpbmUgT1BBTVAyICAgICAgICAgICAgICAoKE9QQU1QX1R5cGVEZWYgKikgKE9QQU1QX0JBU0UgKyAweDAwMDAwMDAxVSkpDQojZGVmaW5lIE9QQU1QMTJfQ09NTU9OICAgICAgKChPUEFNUF9Db21tb25fVHlwZURlZiAqKSBPUEFNUF9CQVNFKQ0KI2RlZmluZSBTWVNDRkcgICAgICAgICAgICAgICgoU1lTQ0ZHX1R5cGVEZWYgKikgU1lTQ0ZHX0JBU0UpDQojZGVmaW5lIEVYVEkgICAgICAgICAgICAgICAgKChFWFRJX1R5cGVEZWYgKikgRVhUSV9CQVNFKQ0KI2RlZmluZSBUSU05ICAgICAgICAgICAgICAgICgoVElNX1R5cGVEZWYgKikgVElNOV9CQVNFKQ0KI2RlZmluZSBUSU0xMCAgICAgICAgICAgICAgICgoVElNX1R5cGVEZWYgKikgVElNMTBfQkFTRSkNCiNkZWZpbmUgVElNMTEgICAgICAgICAgICAgICAoKFRJTV9UeXBlRGVmICopIFRJTTExX0JBU0UpDQoNCiNkZWZpbmUgQURDMSAgICAgICAgICAgICAgICAoKEFEQ19UeXBlRGVmICopIEFEQzFfQkFTRSkNCiNkZWZpbmUgQURDMV9DT01NT04gICAgICAgICAoKEFEQ19Db21tb25fVHlwZURlZiAqKSBBRENfQkFTRSkNCi8qIExlZ2FjeSBkZWZpbmVzICovDQojZGVmaW5lIEFEQyAgICAgICAgICAgICAgICAgQURDMV9DT01NT04NCg0KI2RlZmluZSBTUEkxICAgICAgICAgICAgICAgICgoU1BJX1R5cGVEZWYgKikgU1BJMV9CQVNFKQ0KI2RlZmluZSBVU0FSVDEgICAgICAgICAgICAgICgoVVNBUlRfVHlwZURlZiAqKSBVU0FSVDFfQkFTRSkNCiNkZWZpbmUgR1BJT0EgICAgICAgICAgICAgICAoKEdQSU9fVHlwZURlZiAqKSBHUElPQV9CQVNFKQ0KI2RlZmluZSBHUElPQiAgICAgICAgICAgICAgICgoR1BJT19UeXBlRGVmICopIEdQSU9CX0JBU0UpDQojZGVmaW5lIEdQSU9DICAgICAgICAgICAgICAgKChHUElPX1R5cGVEZWYgKikgR1BJT0NfQkFTRSkNCiNkZWZpbmUgR1BJT0QgICAgICAgICAgICAgICAoKEdQSU9fVHlwZURlZiAqKSBHUElPRF9CQVNFKQ0KI2RlZmluZSBHUElPRSAgICAgICAgICAgICAgICgoR1BJT19UeXBlRGVmICopIEdQSU9FX0JBU0UpDQojZGVmaW5lIEdQSU9IICAgICAgICAgICAgICAgKChHUElPX1R5cGVEZWYgKikgR1BJT0hfQkFTRSkNCiNkZWZpbmUgQ1JDICAgICAgICAgICAgICAgICAoKENSQ19UeXBlRGVmICopIENSQ19CQVNFKQ0KI2RlZmluZSBSQ0MgICAgICAgICAgICAgICAgICgoUkNDX1R5cGVEZWYgKikgUkNDX0JBU0UpDQojZGVmaW5lIEZMQVNIICAgICAgICAgICAgICAgKChGTEFTSF9UeXBlRGVmICopIEZMQVNIX1JfQkFTRSkNCiNkZWZpbmUgT0IgICAgICAgICAgICAgICAgICAoKE9CX1R5cGVEZWYgKikgT0JfQkFTRSkgDQojZGVmaW5lIERNQTEgICAgICAgICAgICAgICAgKChETUFfVHlwZURlZiAqKSBETUExX0JBU0UpDQojZGVmaW5lIERNQTFfQ2hhbm5lbDEgICAgICAgKChETUFfQ2hhbm5lbF9UeXBlRGVmICopIERNQTFfQ2hhbm5lbDFfQkFTRSkNCiNkZWZpbmUgRE1BMV9DaGFubmVsMiAgICAgICAoKERNQV9DaGFubmVsX1R5cGVEZWYgKikgRE1BMV9DaGFubmVsMl9CQVNFKQ0KI2RlZmluZSBETUExX0NoYW5uZWwzICAgICAgICgoRE1BX0NoYW5uZWxfVHlwZURlZiAqKSBETUExX0NoYW5uZWwzX0JBU0UpDQojZGVmaW5lIERNQTFfQ2hhbm5lbDQgICAgICAgKChETUFfQ2hhbm5lbF9UeXBlRGVmICopIERNQTFfQ2hhbm5lbDRfQkFTRSkNCiNkZWZpbmUgRE1BMV9DaGFubmVsNSAgICAgICAoKERNQV9DaGFubmVsX1R5cGVEZWYgKikgRE1BMV9DaGFubmVsNV9CQVNFKQ0KI2RlZmluZSBETUExX0NoYW5uZWw2ICAgICAgICgoRE1BX0NoYW5uZWxfVHlwZURlZiAqKSBETUExX0NoYW5uZWw2X0JBU0UpDQojZGVmaW5lIERNQTFfQ2hhbm5lbDcgICAgICAgKChETUFfQ2hhbm5lbF9UeXBlRGVmICopIERNQTFfQ2hhbm5lbDdfQkFTRSkNCiNkZWZpbmUgRE1BMiAgICAgICAgICAgICAgICAoKERNQV9UeXBlRGVmICopIERNQTJfQkFTRSkNCiNkZWZpbmUgRE1BMl9DaGFubmVsMSAgICAgICAoKERNQV9DaGFubmVsX1R5cGVEZWYgKikgRE1BMl9DaGFubmVsMV9CQVNFKQ0KI2RlZmluZSBETUEyX0NoYW5uZWwyICAgICAgICgoRE1BX0NoYW5uZWxfVHlwZURlZiAqKSBETUEyX0NoYW5uZWwyX0JBU0UpDQojZGVmaW5lIERNQTJfQ2hhbm5lbDMgICAgICAgKChETUFfQ2hhbm5lbF9UeXBlRGVmICopIERNQTJfQ2hhbm5lbDNfQkFTRSkNCiNkZWZpbmUgRE1BMl9DaGFubmVsNCAgICAgICAoKERNQV9DaGFubmVsX1R5cGVEZWYgKikgRE1BMl9DaGFubmVsNF9CQVNFKQ0KI2RlZmluZSBETUEyX0NoYW5uZWw1ICAgICAgICgoRE1BX0NoYW5uZWxfVHlwZURlZiAqKSBETUEyX0NoYW5uZWw1X0JBU0UpDQojZGVmaW5lIEFFUyAgICAgICAgICAgICAgICAgKChBRVNfVHlwZURlZiAqKSBBRVNfQkFTRSkNCiNkZWZpbmUgREJHTUNVICAgICAgICAgICAgICAoKERCR01DVV9UeXBlRGVmICopIERCR01DVV9CQVNFKQ0KDQogLyoqDQogICogQH0NCiAgKi8NCg0KLyoqIEBhZGR0b2dyb3VwIEV4cG9ydGVkX2NvbnN0YW50cw0KICAqIEB7DQogICovDQoNCi8qKiBAYWRkdG9ncm91cCBQZXJpcGhlcmFsX1JlZ2lzdGVyc19CaXRzX0RlZmluaXRpb24NCiAgKiBAew0KICAqLw0KICAgIA0KLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8NCi8qICAgICAgICAgICAgICAgICAgICAgICAgIFBlcmlwaGVyYWwgUmVnaXN0ZXJzIEJpdHMgRGVmaW5pdGlvbiAgICAgICAgICAgICAgICovDQovKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLw0KLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8NCi8qICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovDQovKiAgICAgICAgICAgICAgICAgICAgICBBbmFsb2cgdG8gRGlnaXRhbCBDb252ZXJ0ZXIgKEFEQykgICAgICAgICAgICAgICAgICAgICAqLw0KLyogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8NCi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovDQoNCi8qKioqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIEFEQ19TUiByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIEFEQ19TUl9BV0RfUG9zICAgICAgICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEFEQ19TUl9BV0RfTXNrICAgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBBRENfU1JfQVdEX1BvcykgICAgICAgICAgLyohPCAweDAwMDAwMDAxICovDQojZGVmaW5lIEFEQ19TUl9BV0QgICAgICAgICAgICAgICAgICAgICAgICAgICBBRENfU1JfQVdEX01zayAgICAgICAgICAgICAgICAgICAgLyohPCBBREMgYW5hbG9nIHdhdGNoZG9nIDEgZmxhZyAqLw0KI2RlZmluZSBBRENfU1JfRU9DU19Qb3MgICAgICAgICAgICAgICAgICAgICAgKDFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBBRENfU1JfRU9DU19Nc2sgICAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgQURDX1NSX0VPQ1NfUG9zKSAgICAgICAgIC8qITwgMHgwMDAwMDAwMiAqLw0KI2RlZmluZSBBRENfU1JfRU9DUyAgICAgICAgICAgICAgICAgICAgICAgICAgQURDX1NSX0VPQ1NfTXNrICAgICAgICAgICAgICAgICAgIC8qITwgQURDIGdyb3VwIHJlZ3VsYXIgZW5kIG9mIHVuaXRhcnkgY29udmVyc2lvbiBvciBlbmQgb2Ygc2VxdWVuY2UgY29udmVyc2lvbnMgZmxhZyAqLw0KI2RlZmluZSBBRENfU1JfSkVPU19Qb3MgICAgICAgICAgICAgICAgICAgICAgKDJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBBRENfU1JfSkVPU19Nc2sgICAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgQURDX1NSX0pFT1NfUG9zKSAgICAgICAgIC8qITwgMHgwMDAwMDAwNCAqLw0KI2RlZmluZSBBRENfU1JfSkVPUyAgICAgICAgICAgICAgICAgICAgICAgICAgQURDX1NSX0pFT1NfTXNrICAgICAgICAgICAgICAgICAgIC8qITwgQURDIGdyb3VwIGluamVjdGVkIGVuZCBvZiBzZXF1ZW5jZSBjb252ZXJzaW9ucyBmbGFnICovDQojZGVmaW5lIEFEQ19TUl9KU1RSVF9Qb3MgICAgICAgICAgICAgICAgICAgICAoM1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEFEQ19TUl9KU1RSVF9Nc2sgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBBRENfU1JfSlNUUlRfUG9zKSAgICAgICAgLyohPCAweDAwMDAwMDA4ICovDQojZGVmaW5lIEFEQ19TUl9KU1RSVCAgICAgICAgICAgICAgICAgICAgICAgICBBRENfU1JfSlNUUlRfTXNrICAgICAgICAgICAgICAgICAgLyohPCBBREMgZ3JvdXAgaW5qZWN0ZWQgY29udmVyc2lvbiBzdGFydCBmbGFnICovDQojZGVmaW5lIEFEQ19TUl9TVFJUX1BvcyAgICAgICAgICAgICAgICAgICAgICAoNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEFEQ19TUl9TVFJUX01zayAgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBBRENfU1JfU1RSVF9Qb3MpICAgICAgICAgLyohPCAweDAwMDAwMDEwICovDQojZGVmaW5lIEFEQ19TUl9TVFJUICAgICAgICAgICAgICAgICAgICAgICAgICBBRENfU1JfU1RSVF9Nc2sgICAgICAgICAgICAgICAgICAgLyohPCBBREMgZ3JvdXAgcmVndWxhciBjb252ZXJzaW9uIHN0YXJ0IGZsYWcgKi8NCiNkZWZpbmUgQURDX1NSX09WUl9Qb3MgICAgICAgICAgICAgICAgICAgICAgICg1VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgQURDX1NSX09WUl9Nc2sgICAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IEFEQ19TUl9PVlJfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDAwMjAgKi8NCiNkZWZpbmUgQURDX1NSX09WUiAgICAgICAgICAgICAgICAgICAgICAgICAgIEFEQ19TUl9PVlJfTXNrICAgICAgICAgICAgICAgICAgICAvKiE8IEFEQyBncm91cCByZWd1bGFyIG92ZXJydW4gZmxhZyAqLw0KI2RlZmluZSBBRENfU1JfQURPTlNfUG9zICAgICAgICAgICAgICAgICAgICAgKDZVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBBRENfU1JfQURPTlNfTXNrICAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgQURDX1NSX0FET05TX1BvcykgICAgICAgIC8qITwgMHgwMDAwMDA0MCAqLw0KI2RlZmluZSBBRENfU1JfQURPTlMgICAgICAgICAgICAgICAgICAgICAgICAgQURDX1NSX0FET05TX01zayAgICAgICAgICAgICAgICAgIC8qITwgQURDIHJlYWR5IGZsYWcgKi8NCiNkZWZpbmUgQURDX1NSX1JDTlJfUG9zICAgICAgICAgICAgICAgICAgICAgICg4VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgQURDX1NSX1JDTlJfTXNrICAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IEFEQ19TUl9SQ05SX1BvcykgICAgICAgICAvKiE8IDB4MDAwMDAxMDAgKi8NCiNkZWZpbmUgQURDX1NSX1JDTlIgICAgICAgICAgICAgICAgICAgICAgICAgIEFEQ19TUl9SQ05SX01zayAgICAgICAgICAgICAgICAgICAvKiE8IEFEQyBncm91cCByZWd1bGFyIG5vdCByZWFkeSBmbGFnICovDQojZGVmaW5lIEFEQ19TUl9KQ05SX1BvcyAgICAgICAgICAgICAgICAgICAgICAoOVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEFEQ19TUl9KQ05SX01zayAgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBBRENfU1JfSkNOUl9Qb3MpICAgICAgICAgLyohPCAweDAwMDAwMjAwICovDQojZGVmaW5lIEFEQ19TUl9KQ05SICAgICAgICAgICAgICAgICAgICAgICAgICBBRENfU1JfSkNOUl9Nc2sgICAgICAgICAgICAgICAgICAgLyohPCBBREMgZ3JvdXAgaW5qZWN0ZWQgbm90IHJlYWR5IGZsYWcgKi8NCg0KLyogTGVnYWN5IGRlZmluZXMgKi8NCiNkZWZpbmUgIEFEQ19TUl9FT0MgICAgICAgICAgICAgICAgICAgICAgICAgIChBRENfU1JfRU9DUykNCiNkZWZpbmUgIEFEQ19TUl9KRU9DICAgICAgICAgICAgICAgICAgICAgICAgIChBRENfU1JfSkVPUykNCg0KLyoqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBBRENfQ1IxIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgQURDX0NSMV9BV0RDSF9Qb3MgICAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgQURDX0NSMV9BV0RDSF9Nc2sgICAgICAgICAgICAgICAgICAgICgweDFGVSA8PCBBRENfQ1IxX0FXRENIX1BvcykgICAgICAvKiE8IDB4MDAwMDAwMUYgKi8NCiNkZWZpbmUgQURDX0NSMV9BV0RDSCAgICAgICAgICAgICAgICAgICAgICAgIEFEQ19DUjFfQVdEQ0hfTXNrICAgICAgICAgICAgICAgICAvKiE8IEFEQyBhbmFsb2cgd2F0Y2hkb2cgMSBtb25pdG9yZWQgY2hhbm5lbCBzZWxlY3Rpb24gKi8NCiNkZWZpbmUgQURDX0NSMV9BV0RDSF8wICAgICAgICAgICAgICAgICAgICAgICgweDAxVSA8PCBBRENfQ1IxX0FXRENIX1BvcykgICAgICAvKiE8IDB4MDAwMDAwMDEgKi8NCiNkZWZpbmUgQURDX0NSMV9BV0RDSF8xICAgICAgICAgICAgICAgICAgICAgICgweDAyVSA8PCBBRENfQ1IxX0FXRENIX1BvcykgICAgICAvKiE8IDB4MDAwMDAwMDIgKi8NCiNkZWZpbmUgQURDX0NSMV9BV0RDSF8yICAgICAgICAgICAgICAgICAgICAgICgweDA0VSA8PCBBRENfQ1IxX0FXRENIX1BvcykgICAgICAvKiE8IDB4MDAwMDAwMDQgKi8NCiNkZWZpbmUgQURDX0NSMV9BV0RDSF8zICAgICAgICAgICAgICAgICAgICAgICgweDA4VSA8PCBBRENfQ1IxX0FXRENIX1BvcykgICAgICAvKiE8IDB4MDAwMDAwMDggKi8NCiNkZWZpbmUgQURDX0NSMV9BV0RDSF80ICAgICAgICAgICAgICAgICAgICAgICgweDEwVSA8PCBBRENfQ1IxX0FXRENIX1BvcykgICAgICAvKiE8IDB4MDAwMDAwMTAgKi8NCg0KI2RlZmluZSBBRENfQ1IxX0VPQ1NJRV9Qb3MgICAgICAgICAgICAgICAgICAgKDVVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBBRENfQ1IxX0VPQ1NJRV9Nc2sgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgQURDX0NSMV9FT0NTSUVfUG9zKSAgICAgIC8qITwgMHgwMDAwMDAyMCAqLw0KI2RlZmluZSBBRENfQ1IxX0VPQ1NJRSAgICAgICAgICAgICAgICAgICAgICAgQURDX0NSMV9FT0NTSUVfTXNrICAgICAgICAgICAgICAgIC8qITwgQURDIGdyb3VwIHJlZ3VsYXIgZW5kIG9mIHVuaXRhcnkgY29udmVyc2lvbiBvciBlbmQgb2Ygc2VxdWVuY2UgY29udmVyc2lvbnMgaW50ZXJydXB0ICovDQojZGVmaW5lIEFEQ19DUjFfQVdESUVfUG9zICAgICAgICAgICAgICAgICAgICAoNlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEFEQ19DUjFfQVdESUVfTXNrICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBBRENfQ1IxX0FXRElFX1BvcykgICAgICAgLyohPCAweDAwMDAwMDQwICovDQojZGVmaW5lIEFEQ19DUjFfQVdESUUgICAgICAgICAgICAgICAgICAgICAgICBBRENfQ1IxX0FXRElFX01zayAgICAgICAgICAgICAgICAgLyohPCBBREMgYW5hbG9nIHdhdGNoZG9nIDEgaW50ZXJydXB0ICovDQojZGVmaW5lIEFEQ19DUjFfSkVPU0lFX1BvcyAgICAgICAgICAgICAgICAgICAoN1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEFEQ19DUjFfSkVPU0lFX01zayAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBBRENfQ1IxX0pFT1NJRV9Qb3MpICAgICAgLyohPCAweDAwMDAwMDgwICovDQojZGVmaW5lIEFEQ19DUjFfSkVPU0lFICAgICAgICAgICAgICAgICAgICAgICBBRENfQ1IxX0pFT1NJRV9Nc2sgICAgICAgICAgICAgICAgLyohPCBBREMgZ3JvdXAgaW5qZWN0ZWQgZW5kIG9mIHNlcXVlbmNlIGNvbnZlcnNpb25zIGludGVycnVwdCAqLw0KI2RlZmluZSBBRENfQ1IxX1NDQU5fUG9zICAgICAgICAgICAgICAgICAgICAgKDhVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBBRENfQ1IxX1NDQU5fTXNrICAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgQURDX0NSMV9TQ0FOX1BvcykgICAgICAgIC8qITwgMHgwMDAwMDEwMCAqLw0KI2RlZmluZSBBRENfQ1IxX1NDQU4gICAgICAgICAgICAgICAgICAgICAgICAgQURDX0NSMV9TQ0FOX01zayAgICAgICAgICAgICAgICAgIC8qITwgQURDIHNjYW4gbW9kZSAqLw0KI2RlZmluZSBBRENfQ1IxX0FXRFNHTF9Qb3MgICAgICAgICAgICAgICAgICAgKDlVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBBRENfQ1IxX0FXRFNHTF9Nc2sgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgQURDX0NSMV9BV0RTR0xfUG9zKSAgICAgIC8qITwgMHgwMDAwMDIwMCAqLw0KI2RlZmluZSBBRENfQ1IxX0FXRFNHTCAgICAgICAgICAgICAgICAgICAgICAgQURDX0NSMV9BV0RTR0xfTXNrICAgICAgICAgICAgICAgIC8qITwgQURDIGFuYWxvZyB3YXRjaGRvZyAxIG1vbml0b3JpbmcgYSBzaW5nbGUgY2hhbm5lbCBvciBhbGwgY2hhbm5lbHMgKi8NCiNkZWZpbmUgQURDX0NSMV9KQVVUT19Qb3MgICAgICAgICAgICAgICAgICAgICgxMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgQURDX0NSMV9KQVVUT19Nc2sgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IEFEQ19DUjFfSkFVVE9fUG9zKSAgICAgICAvKiE8IDB4MDAwMDA0MDAgKi8NCiNkZWZpbmUgQURDX0NSMV9KQVVUTyAgICAgICAgICAgICAgICAgICAgICAgIEFEQ19DUjFfSkFVVE9fTXNrICAgICAgICAgICAgICAgICAvKiE8IEFEQyBncm91cCBpbmplY3RlZCBhdXRvbWF0aWMgdHJpZ2dlciBtb2RlICovDQojZGVmaW5lIEFEQ19DUjFfRElTQ0VOX1BvcyAgICAgICAgICAgICAgICAgICAoMTFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEFEQ19DUjFfRElTQ0VOX01zayAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBBRENfQ1IxX0RJU0NFTl9Qb3MpICAgICAgLyohPCAweDAwMDAwODAwICovDQojZGVmaW5lIEFEQ19DUjFfRElTQ0VOICAgICAgICAgICAgICAgICAgICAgICBBRENfQ1IxX0RJU0NFTl9Nc2sgICAgICAgICAgICAgICAgLyohPCBBREMgZ3JvdXAgcmVndWxhciBzZXF1ZW5jZXIgZGlzY29udGludW91cyBtb2RlICovDQojZGVmaW5lIEFEQ19DUjFfSkRJU0NFTl9Qb3MgICAgICAgICAgICAgICAgICAoMTJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEFEQ19DUjFfSkRJU0NFTl9Nc2sgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBBRENfQ1IxX0pESVNDRU5fUG9zKSAgICAgLyohPCAweDAwMDAxMDAwICovDQojZGVmaW5lIEFEQ19DUjFfSkRJU0NFTiAgICAgICAgICAgICAgICAgICAgICBBRENfQ1IxX0pESVNDRU5fTXNrICAgICAgICAgICAgICAgLyohPCBBREMgZ3JvdXAgaW5qZWN0ZWQgc2VxdWVuY2VyIGRpc2NvbnRpbnVvdXMgbW9kZSAqLw0KDQojZGVmaW5lIEFEQ19DUjFfRElTQ05VTV9Qb3MgICAgICAgICAgICAgICAgICAoMTNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEFEQ19DUjFfRElTQ05VTV9Nc2sgICAgICAgICAgICAgICAgICAoMHg3VSA8PCBBRENfQ1IxX0RJU0NOVU1fUG9zKSAgICAgLyohPCAweDAwMDBFMDAwICovDQojZGVmaW5lIEFEQ19DUjFfRElTQ05VTSAgICAgICAgICAgICAgICAgICAgICBBRENfQ1IxX0RJU0NOVU1fTXNrICAgICAgICAgICAgICAgLyohPCBBREMgZ3JvdXAgcmVndWxhciBzZXF1ZW5jZXIgZGlzY29udGludW91cyBudW1iZXIgb2YgcmFua3MgKi8NCiNkZWZpbmUgQURDX0NSMV9ESVNDTlVNXzAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IEFEQ19DUjFfRElTQ05VTV9Qb3MpICAgICAvKiE8IDB4MDAwMDIwMDAgKi8NCiNkZWZpbmUgQURDX0NSMV9ESVNDTlVNXzEgICAgICAgICAgICAgICAgICAgICgweDJVIDw8IEFEQ19DUjFfRElTQ05VTV9Qb3MpICAgICAvKiE8IDB4MDAwMDQwMDAgKi8NCiNkZWZpbmUgQURDX0NSMV9ESVNDTlVNXzIgICAgICAgICAgICAgICAgICAgICgweDRVIDw8IEFEQ19DUjFfRElTQ05VTV9Qb3MpICAgICAvKiE8IDB4MDAwMDgwMDAgKi8NCg0KI2RlZmluZSBBRENfQ1IxX1BERF9Qb3MgICAgICAgICAgICAgICAgICAgICAgKDE2VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBBRENfQ1IxX1BERF9Nc2sgICAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgQURDX0NSMV9QRERfUG9zKSAgICAgICAgIC8qITwgMHgwMDAxMDAwMCAqLw0KI2RlZmluZSBBRENfQ1IxX1BERCAgICAgICAgICAgICAgICAgICAgICAgICAgQURDX0NSMV9QRERfTXNrICAgICAgICAgICAgICAgICAgIC8qITwgQURDIHBvd2VyIGRvd24gZHVyaW5nIGF1dG8gZGVsYXkgcGhhc2UgKi8NCiNkZWZpbmUgQURDX0NSMV9QRElfUG9zICAgICAgICAgICAgICAgICAgICAgICgxN1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgQURDX0NSMV9QRElfTXNrICAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IEFEQ19DUjFfUERJX1BvcykgICAgICAgICAvKiE8IDB4MDAwMjAwMDAgKi8NCiNkZWZpbmUgQURDX0NSMV9QREkgICAgICAgICAgICAgICAgICAgICAgICAgIEFEQ19DUjFfUERJX01zayAgICAgICAgICAgICAgICAgICAvKiE8IEFEQyBwb3dlciBkb3duIGR1cmluZyBpZGxlIHBoYXNlICovDQoNCiNkZWZpbmUgQURDX0NSMV9KQVdERU5fUG9zICAgICAgICAgICAgICAgICAgICgyMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgQURDX0NSMV9KQVdERU5fTXNrICAgICAgICAgICAgICAgICAgICgweDFVIDw8IEFEQ19DUjFfSkFXREVOX1BvcykgICAgICAvKiE8IDB4MDA0MDAwMDAgKi8NCiNkZWZpbmUgQURDX0NSMV9KQVdERU4gICAgICAgICAgICAgICAgICAgICAgIEFEQ19DUjFfSkFXREVOX01zayAgICAgICAgICAgICAgICAvKiE8IEFEQyBhbmFsb2cgd2F0Y2hkb2cgMSBlbmFibGUgb24gc2NvcGUgQURDIGdyb3VwIGluamVjdGVkICovDQojZGVmaW5lIEFEQ19DUjFfQVdERU5fUG9zICAgICAgICAgICAgICAgICAgICAoMjNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEFEQ19DUjFfQVdERU5fTXNrICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBBRENfQ1IxX0FXREVOX1BvcykgICAgICAgLyohPCAweDAwODAwMDAwICovDQojZGVmaW5lIEFEQ19DUjFfQVdERU4gICAgICAgICAgICAgICAgICAgICAgICBBRENfQ1IxX0FXREVOX01zayAgICAgICAgICAgICAgICAgLyohPCBBREMgYW5hbG9nIHdhdGNoZG9nIDEgZW5hYmxlIG9uIHNjb3BlIEFEQyBncm91cCByZWd1bGFyICovDQoNCiNkZWZpbmUgQURDX0NSMV9SRVNfUG9zICAgICAgICAgICAgICAgICAgICAgICgyNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgQURDX0NSMV9SRVNfTXNrICAgICAgICAgICAgICAgICAgICAgICgweDNVIDw8IEFEQ19DUjFfUkVTX1BvcykgICAgICAgICAvKiE8IDB4MDMwMDAwMDAgKi8NCiNkZWZpbmUgQURDX0NSMV9SRVMgICAgICAgICAgICAgICAgICAgICAgICAgIEFEQ19DUjFfUkVTX01zayAgICAgICAgICAgICAgICAgICAvKiE8IEFEQyByZXNvbHV0aW9uICovDQojZGVmaW5lIEFEQ19DUjFfUkVTXzAgICAgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBBRENfQ1IxX1JFU19Qb3MpICAgICAgICAgLyohPCAweDAxMDAwMDAwICovDQojZGVmaW5lIEFEQ19DUjFfUkVTXzEgICAgICAgICAgICAgICAgICAgICAgICAoMHgyVSA8PCBBRENfQ1IxX1JFU19Qb3MpICAgICAgICAgLyohPCAweDAyMDAwMDAwICovDQoNCiNkZWZpbmUgQURDX0NSMV9PVlJJRV9Qb3MgICAgICAgICAgICAgICAgICAgICgyNlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgQURDX0NSMV9PVlJJRV9Nc2sgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IEFEQ19DUjFfT1ZSSUVfUG9zKSAgICAgICAvKiE8IDB4MDQwMDAwMDAgKi8NCiNkZWZpbmUgQURDX0NSMV9PVlJJRSAgICAgICAgICAgICAgICAgICAgICAgIEFEQ19DUjFfT1ZSSUVfTXNrICAgICAgICAgICAgICAgICAvKiE8IEFEQyBncm91cCByZWd1bGFyIG92ZXJydW4gaW50ZXJydXB0ICovDQoNCi8qIExlZ2FjeSBkZWZpbmVzICovDQojZGVmaW5lICBBRENfQ1IxX0VPQ0lFICAgICAgICAgICAgICAgICAgICAgICAoQURDX0NSMV9FT0NTSUUpDQojZGVmaW5lICBBRENfQ1IxX0pFT0NJRSAgICAgICAgICAgICAgICAgICAgICAoQURDX0NSMV9KRU9TSUUpDQoNCi8qKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgQURDX0NSMiByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIEFEQ19DUjJfQURPTl9Qb3MgICAgICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEFEQ19DUjJfQURPTl9Nc2sgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBBRENfQ1IyX0FET05fUG9zKSAgICAgICAgLyohPCAweDAwMDAwMDAxICovDQojZGVmaW5lIEFEQ19DUjJfQURPTiAgICAgICAgICAgICAgICAgICAgICAgICBBRENfQ1IyX0FET05fTXNrICAgICAgICAgICAgICAgICAgLyohPCBBREMgZW5hYmxlICovDQojZGVmaW5lIEFEQ19DUjJfQ09OVF9Qb3MgICAgICAgICAgICAgICAgICAgICAoMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEFEQ19DUjJfQ09OVF9Nc2sgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBBRENfQ1IyX0NPTlRfUG9zKSAgICAgICAgLyohPCAweDAwMDAwMDAyICovDQojZGVmaW5lIEFEQ19DUjJfQ09OVCAgICAgICAgICAgICAgICAgICAgICAgICBBRENfQ1IyX0NPTlRfTXNrICAgICAgICAgICAgICAgICAgLyohPCBBREMgZ3JvdXAgcmVndWxhciBjb250aW51b3VzIGNvbnZlcnNpb24gbW9kZSAqLw0KI2RlZmluZSBBRENfQ1IyX0NGR19Qb3MgICAgICAgICAgICAgICAgICAgICAgKDJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBBRENfQ1IyX0NGR19Nc2sgICAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgQURDX0NSMl9DRkdfUG9zKSAgICAgICAgIC8qITwgMHgwMDAwMDAwNCAqLw0KI2RlZmluZSBBRENfQ1IyX0NGRyAgICAgICAgICAgICAgICAgICAgICAgICAgQURDX0NSMl9DRkdfTXNrICAgICAgICAgICAgICAgICAgIC8qITwgQURDIGNoYW5uZWxzIGJhbmsgc2VsZWN0aW9uICovDQoNCiNkZWZpbmUgQURDX0NSMl9ERUxTX1BvcyAgICAgICAgICAgICAgICAgICAgICg0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgQURDX0NSMl9ERUxTX01zayAgICAgICAgICAgICAgICAgICAgICgweDdVIDw8IEFEQ19DUjJfREVMU19Qb3MpICAgICAgICAvKiE8IDB4MDAwMDAwNzAgKi8NCiNkZWZpbmUgQURDX0NSMl9ERUxTICAgICAgICAgICAgICAgICAgICAgICAgIEFEQ19DUjJfREVMU19Nc2sgICAgICAgICAgICAgICAgICAvKiE8IEFEQyBhdXRvIGRlbGF5IHNlbGVjdGlvbiAqLw0KI2RlZmluZSBBRENfQ1IyX0RFTFNfMCAgICAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgQURDX0NSMl9ERUxTX1BvcykgICAgICAgIC8qITwgMHgwMDAwMDAxMCAqLw0KI2RlZmluZSBBRENfQ1IyX0RFTFNfMSAgICAgICAgICAgICAgICAgICAgICAgKDB4MlUgPDwgQURDX0NSMl9ERUxTX1BvcykgICAgICAgIC8qITwgMHgwMDAwMDAyMCAqLw0KI2RlZmluZSBBRENfQ1IyX0RFTFNfMiAgICAgICAgICAgICAgICAgICAgICAgKDB4NFUgPDwgQURDX0NSMl9ERUxTX1BvcykgICAgICAgIC8qITwgMHgwMDAwMDA0MCAqLw0KDQojZGVmaW5lIEFEQ19DUjJfRE1BX1BvcyAgICAgICAgICAgICAgICAgICAgICAoOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEFEQ19DUjJfRE1BX01zayAgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBBRENfQ1IyX0RNQV9Qb3MpICAgICAgICAgLyohPCAweDAwMDAwMTAwICovDQojZGVmaW5lIEFEQ19DUjJfRE1BICAgICAgICAgICAgICAgICAgICAgICAgICBBRENfQ1IyX0RNQV9Nc2sgICAgICAgICAgICAgICAgICAgLyohPCBBREMgRE1BIHRyYW5zZmVyIGVuYWJsZSAqLw0KI2RlZmluZSBBRENfQ1IyX0REU19Qb3MgICAgICAgICAgICAgICAgICAgICAgKDlVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBBRENfQ1IyX0REU19Nc2sgICAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgQURDX0NSMl9ERFNfUG9zKSAgICAgICAgIC8qITwgMHgwMDAwMDIwMCAqLw0KI2RlZmluZSBBRENfQ1IyX0REUyAgICAgICAgICAgICAgICAgICAgICAgICAgQURDX0NSMl9ERFNfTXNrICAgICAgICAgICAgICAgICAgIC8qITwgQURDIERNQSB0cmFuc2ZlciBjb25maWd1cmF0aW9uICovDQojZGVmaW5lIEFEQ19DUjJfRU9DU19Qb3MgICAgICAgICAgICAgICAgICAgICAoMTBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEFEQ19DUjJfRU9DU19Nc2sgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBBRENfQ1IyX0VPQ1NfUG9zKSAgICAgICAgLyohPCAweDAwMDAwNDAwICovDQojZGVmaW5lIEFEQ19DUjJfRU9DUyAgICAgICAgICAgICAgICAgICAgICAgICBBRENfQ1IyX0VPQ1NfTXNrICAgICAgICAgICAgICAgICAgLyohPCBBREMgZW5kIG9mIHVuaXRhcnkgb3IgZW5kIG9mIHNlcXVlbmNlIGNvbnZlcnNpb25zIHNlbGVjdGlvbiAqLw0KI2RlZmluZSBBRENfQ1IyX0FMSUdOX1BvcyAgICAgICAgICAgICAgICAgICAgKDExVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBBRENfQ1IyX0FMSUdOX01zayAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgQURDX0NSMl9BTElHTl9Qb3MpICAgICAgIC8qITwgMHgwMDAwMDgwMCAqLw0KI2RlZmluZSBBRENfQ1IyX0FMSUdOICAgICAgICAgICAgICAgICAgICAgICAgQURDX0NSMl9BTElHTl9Nc2sgICAgICAgICAgICAgICAgIC8qITwgQURDIGRhdGEgYWxpZ25lbWVudCAqLw0KDQojZGVmaW5lIEFEQ19DUjJfSkVYVFNFTF9Qb3MgICAgICAgICAgICAgICAgICAoMTZVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEFEQ19DUjJfSkVYVFNFTF9Nc2sgICAgICAgICAgICAgICAgICAoMHhGVSA8PCBBRENfQ1IyX0pFWFRTRUxfUG9zKSAgICAgLyohPCAweDAwMEYwMDAwICovDQojZGVmaW5lIEFEQ19DUjJfSkVYVFNFTCAgICAgICAgICAgICAgICAgICAgICBBRENfQ1IyX0pFWFRTRUxfTXNrICAgICAgICAgICAgICAgLyohPCBBREMgZ3JvdXAgaW5qZWN0ZWQgZXh0ZXJuYWwgdHJpZ2dlciBzb3VyY2UgKi8NCiNkZWZpbmUgQURDX0NSMl9KRVhUU0VMXzAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IEFEQ19DUjJfSkVYVFNFTF9Qb3MpICAgICAvKiE8IDB4MDAwMTAwMDAgKi8NCiNkZWZpbmUgQURDX0NSMl9KRVhUU0VMXzEgICAgICAgICAgICAgICAgICAgICgweDJVIDw8IEFEQ19DUjJfSkVYVFNFTF9Qb3MpICAgICAvKiE8IDB4MDAwMjAwMDAgKi8NCiNkZWZpbmUgQURDX0NSMl9KRVhUU0VMXzIgICAgICAgICAgICAgICAgICAgICgweDRVIDw8IEFEQ19DUjJfSkVYVFNFTF9Qb3MpICAgICAvKiE8IDB4MDAwNDAwMDAgKi8NCiNkZWZpbmUgQURDX0NSMl9KRVhUU0VMXzMgICAgICAgICAgICAgICAgICAgICgweDhVIDw8IEFEQ19DUjJfSkVYVFNFTF9Qb3MpICAgICAvKiE8IDB4MDAwODAwMDAgKi8NCg0KI2RlZmluZSBBRENfQ1IyX0pFWFRFTl9Qb3MgICAgICAgICAgICAgICAgICAgKDIwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBBRENfQ1IyX0pFWFRFTl9Nc2sgICAgICAgICAgICAgICAgICAgKDB4M1UgPDwgQURDX0NSMl9KRVhURU5fUG9zKSAgICAgIC8qITwgMHgwMDMwMDAwMCAqLw0KI2RlZmluZSBBRENfQ1IyX0pFWFRFTiAgICAgICAgICAgICAgICAgICAgICAgQURDX0NSMl9KRVhURU5fTXNrICAgICAgICAgICAgICAgIC8qITwgQURDIGdyb3VwIGluamVjdGVkIGV4dGVybmFsIHRyaWdnZXIgcG9sYXJpdHkgKi8NCiNkZWZpbmUgQURDX0NSMl9KRVhURU5fMCAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IEFEQ19DUjJfSkVYVEVOX1BvcykgICAgICAvKiE8IDB4MDAxMDAwMDAgKi8NCiNkZWZpbmUgQURDX0NSMl9KRVhURU5fMSAgICAgICAgICAgICAgICAgICAgICgweDJVIDw8IEFEQ19DUjJfSkVYVEVOX1BvcykgICAgICAvKiE8IDB4MDAyMDAwMDAgKi8NCg0KI2RlZmluZSBBRENfQ1IyX0pTV1NUQVJUX1BvcyAgICAgICAgICAgICAgICAgKDIyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBBRENfQ1IyX0pTV1NUQVJUX01zayAgICAgICAgICAgICAgICAgKDB4MVUgPDwgQURDX0NSMl9KU1dTVEFSVF9Qb3MpICAgIC8qITwgMHgwMDQwMDAwMCAqLw0KI2RlZmluZSBBRENfQ1IyX0pTV1NUQVJUICAgICAgICAgICAgICAgICAgICAgQURDX0NSMl9KU1dTVEFSVF9Nc2sgICAgICAgICAgICAgIC8qITwgQURDIGdyb3VwIGluamVjdGVkIGNvbnZlcnNpb24gc3RhcnQgKi8NCg0KI2RlZmluZSBBRENfQ1IyX0VYVFNFTF9Qb3MgICAgICAgICAgICAgICAgICAgKDI0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBBRENfQ1IyX0VYVFNFTF9Nc2sgICAgICAgICAgICAgICAgICAgKDB4RlUgPDwgQURDX0NSMl9FWFRTRUxfUG9zKSAgICAgIC8qITwgMHgwRjAwMDAwMCAqLw0KI2RlZmluZSBBRENfQ1IyX0VYVFNFTCAgICAgICAgICAgICAgICAgICAgICAgQURDX0NSMl9FWFRTRUxfTXNrICAgICAgICAgICAgICAgIC8qITwgQURDIGdyb3VwIHJlZ3VsYXIgZXh0ZXJuYWwgdHJpZ2dlciBzb3VyY2UgKi8NCiNkZWZpbmUgQURDX0NSMl9FWFRTRUxfMCAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IEFEQ19DUjJfRVhUU0VMX1BvcykgICAgICAvKiE8IDB4MDEwMDAwMDAgKi8NCiNkZWZpbmUgQURDX0NSMl9FWFRTRUxfMSAgICAgICAgICAgICAgICAgICAgICgweDJVIDw8IEFEQ19DUjJfRVhUU0VMX1BvcykgICAgICAvKiE8IDB4MDIwMDAwMDAgKi8NCiNkZWZpbmUgQURDX0NSMl9FWFRTRUxfMiAgICAgICAgICAgICAgICAgICAgICgweDRVIDw8IEFEQ19DUjJfRVhUU0VMX1BvcykgICAgICAvKiE8IDB4MDQwMDAwMDAgKi8NCiNkZWZpbmUgQURDX0NSMl9FWFRTRUxfMyAgICAgICAgICAgICAgICAgICAgICgweDhVIDw8IEFEQ19DUjJfRVhUU0VMX1BvcykgICAgICAvKiE8IDB4MDgwMDAwMDAgKi8NCg0KI2RlZmluZSBBRENfQ1IyX0VYVEVOX1BvcyAgICAgICAgICAgICAgICAgICAgKDI4VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBBRENfQ1IyX0VYVEVOX01zayAgICAgICAgICAgICAgICAgICAgKDB4M1UgPDwgQURDX0NSMl9FWFRFTl9Qb3MpICAgICAgIC8qITwgMHgzMDAwMDAwMCAqLw0KI2RlZmluZSBBRENfQ1IyX0VYVEVOICAgICAgICAgICAgICAgICAgICAgICAgQURDX0NSMl9FWFRFTl9Nc2sgICAgICAgICAgICAgICAgIC8qITwgQURDIGdyb3VwIHJlZ3VsYXIgZXh0ZXJuYWwgdHJpZ2dlciBwb2xhcml0eSAqLw0KI2RlZmluZSBBRENfQ1IyX0VYVEVOXzAgICAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgQURDX0NSMl9FWFRFTl9Qb3MpICAgICAgIC8qITwgMHgxMDAwMDAwMCAqLw0KI2RlZmluZSBBRENfQ1IyX0VYVEVOXzEgICAgICAgICAgICAgICAgICAgICAgKDB4MlUgPDwgQURDX0NSMl9FWFRFTl9Qb3MpICAgICAgIC8qITwgMHgyMDAwMDAwMCAqLw0KDQojZGVmaW5lIEFEQ19DUjJfU1dTVEFSVF9Qb3MgICAgICAgICAgICAgICAgICAoMzBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEFEQ19DUjJfU1dTVEFSVF9Nc2sgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBBRENfQ1IyX1NXU1RBUlRfUG9zKSAgICAgLyohPCAweDQwMDAwMDAwICovDQojZGVmaW5lIEFEQ19DUjJfU1dTVEFSVCAgICAgICAgICAgICAgICAgICAgICBBRENfQ1IyX1NXU1RBUlRfTXNrICAgICAgICAgICAgICAgLyohPCBBREMgZ3JvdXAgcmVndWxhciBjb252ZXJzaW9uIHN0YXJ0ICovDQoNCi8qKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBBRENfU01QUjEgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIEFEQ19TTVBSMV9TTVAyMF9Qb3MgICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEFEQ19TTVBSMV9TTVAyMF9Nc2sgICAgICAgICAgICAgICAgICAoMHg3VSA8PCBBRENfU01QUjFfU01QMjBfUG9zKSAgICAgLyohPCAweDAwMDAwMDA3ICovDQojZGVmaW5lIEFEQ19TTVBSMV9TTVAyMCAgICAgICAgICAgICAgICAgICAgICBBRENfU01QUjFfU01QMjBfTXNrICAgICAgICAgICAgICAgLyohPCBBREMgY2hhbm5lbCAyMCBzYW1wbGluZyB0aW1lIHNlbGVjdGlvbiAqLw0KI2RlZmluZSBBRENfU01QUjFfU01QMjBfMCAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgQURDX1NNUFIxX1NNUDIwX1BvcykgICAgIC8qITwgMHgwMDAwMDAwMSAqLw0KI2RlZmluZSBBRENfU01QUjFfU01QMjBfMSAgICAgICAgICAgICAgICAgICAgKDB4MlUgPDwgQURDX1NNUFIxX1NNUDIwX1BvcykgICAgIC8qITwgMHgwMDAwMDAwMiAqLw0KI2RlZmluZSBBRENfU01QUjFfU01QMjBfMiAgICAgICAgICAgICAgICAgICAgKDB4NFUgPDwgQURDX1NNUFIxX1NNUDIwX1BvcykgICAgIC8qITwgMHgwMDAwMDAwNCAqLw0KDQojZGVmaW5lIEFEQ19TTVBSMV9TTVAyMV9Qb3MgICAgICAgICAgICAgICAgICAoM1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEFEQ19TTVBSMV9TTVAyMV9Nc2sgICAgICAgICAgICAgICAgICAoMHg3VSA8PCBBRENfU01QUjFfU01QMjFfUG9zKSAgICAgLyohPCAweDAwMDAwMDM4ICovDQojZGVmaW5lIEFEQ19TTVBSMV9TTVAyMSAgICAgICAgICAgICAgICAgICAgICBBRENfU01QUjFfU01QMjFfTXNrICAgICAgICAgICAgICAgLyohPCBBREMgY2hhbm5lbCAyMSBzYW1wbGluZyB0aW1lIHNlbGVjdGlvbiAqLw0KI2RlZmluZSBBRENfU01QUjFfU01QMjFfMCAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgQURDX1NNUFIxX1NNUDIxX1BvcykgICAgIC8qITwgMHgwMDAwMDAwOCAqLw0KI2RlZmluZSBBRENfU01QUjFfU01QMjFfMSAgICAgICAgICAgICAgICAgICAgKDB4MlUgPDwgQURDX1NNUFIxX1NNUDIxX1BvcykgICAgIC8qITwgMHgwMDAwMDAxMCAqLw0KI2RlZmluZSBBRENfU01QUjFfU01QMjFfMiAgICAgICAgICAgICAgICAgICAgKDB4NFUgPDwgQURDX1NNUFIxX1NNUDIxX1BvcykgICAgIC8qITwgMHgwMDAwMDAyMCAqLw0KDQojZGVmaW5lIEFEQ19TTVBSMV9TTVAyMl9Qb3MgICAgICAgICAgICAgICAgICAoNlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEFEQ19TTVBSMV9TTVAyMl9Nc2sgICAgICAgICAgICAgICAgICAoMHg3VSA8PCBBRENfU01QUjFfU01QMjJfUG9zKSAgICAgLyohPCAweDAwMDAwMUMwICovDQojZGVmaW5lIEFEQ19TTVBSMV9TTVAyMiAgICAgICAgICAgICAgICAgICAgICBBRENfU01QUjFfU01QMjJfTXNrICAgICAgICAgICAgICAgLyohPCBBREMgY2hhbm5lbCAyMiBzYW1wbGluZyB0aW1lIHNlbGVjdGlvbiAqLw0KI2RlZmluZSBBRENfU01QUjFfU01QMjJfMCAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgQURDX1NNUFIxX1NNUDIyX1BvcykgICAgIC8qITwgMHgwMDAwMDA0MCAqLw0KI2RlZmluZSBBRENfU01QUjFfU01QMjJfMSAgICAgICAgICAgICAgICAgICAgKDB4MlUgPDwgQURDX1NNUFIxX1NNUDIyX1BvcykgICAgIC8qITwgMHgwMDAwMDA4MCAqLw0KI2RlZmluZSBBRENfU01QUjFfU01QMjJfMiAgICAgICAgICAgICAgICAgICAgKDB4NFUgPDwgQURDX1NNUFIxX1NNUDIyX1BvcykgICAgIC8qITwgMHgwMDAwMDEwMCAqLw0KDQojZGVmaW5lIEFEQ19TTVBSMV9TTVAyM19Qb3MgICAgICAgICAgICAgICAgICAoOVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEFEQ19TTVBSMV9TTVAyM19Nc2sgICAgICAgICAgICAgICAgICAoMHg3VSA8PCBBRENfU01QUjFfU01QMjNfUG9zKSAgICAgLyohPCAweDAwMDAwRTAwICovDQojZGVmaW5lIEFEQ19TTVBSMV9TTVAyMyAgICAgICAgICAgICAgICAgICAgICBBRENfU01QUjFfU01QMjNfTXNrICAgICAgICAgICAgICAgLyohPCBBREMgY2hhbm5lbCAyMyBzYW1wbGluZyB0aW1lIHNlbGVjdGlvbiAqLw0KI2RlZmluZSBBRENfU01QUjFfU01QMjNfMCAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgQURDX1NNUFIxX1NNUDIzX1BvcykgICAgIC8qITwgMHgwMDAwMDIwMCAqLw0KI2RlZmluZSBBRENfU01QUjFfU01QMjNfMSAgICAgICAgICAgICAgICAgICAgKDB4MlUgPDwgQURDX1NNUFIxX1NNUDIzX1BvcykgICAgIC8qITwgMHgwMDAwMDQwMCAqLw0KI2RlZmluZSBBRENfU01QUjFfU01QMjNfMiAgICAgICAgICAgICAgICAgICAgKDB4NFUgPDwgQURDX1NNUFIxX1NNUDIzX1BvcykgICAgIC8qITwgMHgwMDAwMDgwMCAqLw0KDQojZGVmaW5lIEFEQ19TTVBSMV9TTVAyNF9Qb3MgICAgICAgICAgICAgICAgICAoMTJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEFEQ19TTVBSMV9TTVAyNF9Nc2sgICAgICAgICAgICAgICAgICAoMHg3VSA8PCBBRENfU01QUjFfU01QMjRfUG9zKSAgICAgLyohPCAweDAwMDA3MDAwICovDQojZGVmaW5lIEFEQ19TTVBSMV9TTVAyNCAgICAgICAgICAgICAgICAgICAgICBBRENfU01QUjFfU01QMjRfTXNrICAgICAgICAgICAgICAgLyohPCBBREMgY2hhbm5lbCAyNCBzYW1wbGluZyB0aW1lIHNlbGVjdGlvbiAqLw0KI2RlZmluZSBBRENfU01QUjFfU01QMjRfMCAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgQURDX1NNUFIxX1NNUDI0X1BvcykgICAgIC8qITwgMHgwMDAwMTAwMCAqLw0KI2RlZmluZSBBRENfU01QUjFfU01QMjRfMSAgICAgICAgICAgICAgICAgICAgKDB4MlUgPDwgQURDX1NNUFIxX1NNUDI0X1BvcykgICAgIC8qITwgMHgwMDAwMjAwMCAqLw0KI2RlZmluZSBBRENfU01QUjFfU01QMjRfMiAgICAgICAgICAgICAgICAgICAgKDB4NFUgPDwgQURDX1NNUFIxX1NNUDI0X1BvcykgICAgIC8qITwgMHgwMDAwNDAwMCAqLw0KDQojZGVmaW5lIEFEQ19TTVBSMV9TTVAyNV9Qb3MgICAgICAgICAgICAgICAgICAoMTVVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEFEQ19TTVBSMV9TTVAyNV9Nc2sgICAgICAgICAgICAgICAgICAoMHg3VSA8PCBBRENfU01QUjFfU01QMjVfUG9zKSAgICAgLyohPCAweDAwMDM4MDAwICovDQojZGVmaW5lIEFEQ19TTVBSMV9TTVAyNSAgICAgICAgICAgICAgICAgICAgICBBRENfU01QUjFfU01QMjVfTXNrICAgICAgICAgICAgICAgLyohPCBBREMgY2hhbm5lbCAyNSBzYW1wbGluZyB0aW1lIHNlbGVjdGlvbiAqLw0KI2RlZmluZSBBRENfU01QUjFfU01QMjVfMCAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgQURDX1NNUFIxX1NNUDI1X1BvcykgICAgIC8qITwgMHgwMDAwODAwMCAqLw0KI2RlZmluZSBBRENfU01QUjFfU01QMjVfMSAgICAgICAgICAgICAgICAgICAgKDB4MlUgPDwgQURDX1NNUFIxX1NNUDI1X1BvcykgICAgIC8qITwgMHgwMDAxMDAwMCAqLw0KI2RlZmluZSBBRENfU01QUjFfU01QMjVfMiAgICAgICAgICAgICAgICAgICAgKDB4NFUgPDwgQURDX1NNUFIxX1NNUDI1X1BvcykgICAgIC8qITwgMHgwMDAyMDAwMCAqLw0KDQojZGVmaW5lIEFEQ19TTVBSMV9TTVAyNl9Qb3MgICAgICAgICAgICAgICAgICAoMThVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEFEQ19TTVBSMV9TTVAyNl9Nc2sgICAgICAgICAgICAgICAgICAoMHg3VSA8PCBBRENfU01QUjFfU01QMjZfUG9zKSAgICAgLyohPCAweDAwMUMwMDAwICovDQojZGVmaW5lIEFEQ19TTVBSMV9TTVAyNiAgICAgICAgICAgICAgICAgICAgICBBRENfU01QUjFfU01QMjZfTXNrICAgICAgICAgICAgICAgLyohPCBBREMgY2hhbm5lbCAyNiBzYW1wbGluZyB0aW1lIHNlbGVjdGlvbiAqLw0KI2RlZmluZSBBRENfU01QUjFfU01QMjZfMCAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgQURDX1NNUFIxX1NNUDI2X1BvcykgICAgIC8qITwgMHgwMDA0MDAwMCAqLw0KI2RlZmluZSBBRENfU01QUjFfU01QMjZfMSAgICAgICAgICAgICAgICAgICAgKDB4MlUgPDwgQURDX1NNUFIxX1NNUDI2X1BvcykgICAgIC8qITwgMHgwMDA4MDAwMCAqLw0KI2RlZmluZSBBRENfU01QUjFfU01QMjZfMiAgICAgICAgICAgICAgICAgICAgKDB4NFUgPDwgQURDX1NNUFIxX1NNUDI2X1BvcykgICAgIC8qITwgMHgwMDEwMDAwMCAqLw0KDQovKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgQURDX1NNUFIyIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBBRENfU01QUjJfU01QMTBfUG9zICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBBRENfU01QUjJfU01QMTBfTXNrICAgICAgICAgICAgICAgICAgKDB4N1UgPDwgQURDX1NNUFIyX1NNUDEwX1BvcykgICAgIC8qITwgMHgwMDAwMDAwNyAqLw0KI2RlZmluZSBBRENfU01QUjJfU01QMTAgICAgICAgICAgICAgICAgICAgICAgQURDX1NNUFIyX1NNUDEwX01zayAgICAgICAgICAgICAgIC8qITwgQURDIGNoYW5uZWwgMTAgc2FtcGxpbmcgdGltZSBzZWxlY3Rpb24gKi8NCiNkZWZpbmUgQURDX1NNUFIyX1NNUDEwXzAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IEFEQ19TTVBSMl9TTVAxMF9Qb3MpICAgICAvKiE8IDB4MDAwMDAwMDEgKi8NCiNkZWZpbmUgQURDX1NNUFIyX1NNUDEwXzEgICAgICAgICAgICAgICAgICAgICgweDJVIDw8IEFEQ19TTVBSMl9TTVAxMF9Qb3MpICAgICAvKiE8IDB4MDAwMDAwMDIgKi8NCiNkZWZpbmUgQURDX1NNUFIyX1NNUDEwXzIgICAgICAgICAgICAgICAgICAgICgweDRVIDw8IEFEQ19TTVBSMl9TTVAxMF9Qb3MpICAgICAvKiE8IDB4MDAwMDAwMDQgKi8NCg0KI2RlZmluZSBBRENfU01QUjJfU01QMTFfUG9zICAgICAgICAgICAgICAgICAgKDNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBBRENfU01QUjJfU01QMTFfTXNrICAgICAgICAgICAgICAgICAgKDB4N1UgPDwgQURDX1NNUFIyX1NNUDExX1BvcykgICAgIC8qITwgMHgwMDAwMDAzOCAqLw0KI2RlZmluZSBBRENfU01QUjJfU01QMTEgICAgICAgICAgICAgICAgICAgICAgQURDX1NNUFIyX1NNUDExX01zayAgICAgICAgICAgICAgIC8qITwgQURDIGNoYW5uZWwgMTEgc2FtcGxpbmcgdGltZSBzZWxlY3Rpb24gKi8NCiNkZWZpbmUgQURDX1NNUFIyX1NNUDExXzAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IEFEQ19TTVBSMl9TTVAxMV9Qb3MpICAgICAvKiE8IDB4MDAwMDAwMDggKi8NCiNkZWZpbmUgQURDX1NNUFIyX1NNUDExXzEgICAgICAgICAgICAgICAgICAgICgweDJVIDw8IEFEQ19TTVBSMl9TTVAxMV9Qb3MpICAgICAvKiE8IDB4MDAwMDAwMTAgKi8NCiNkZWZpbmUgQURDX1NNUFIyX1NNUDExXzIgICAgICAgICAgICAgICAgICAgICgweDRVIDw8IEFEQ19TTVBSMl9TTVAxMV9Qb3MpICAgICAvKiE8IDB4MDAwMDAwMjAgKi8NCg0KI2RlZmluZSBBRENfU01QUjJfU01QMTJfUG9zICAgICAgICAgICAgICAgICAgKDZVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBBRENfU01QUjJfU01QMTJfTXNrICAgICAgICAgICAgICAgICAgKDB4N1UgPDwgQURDX1NNUFIyX1NNUDEyX1BvcykgICAgIC8qITwgMHgwMDAwMDFDMCAqLw0KI2RlZmluZSBBRENfU01QUjJfU01QMTIgICAgICAgICAgICAgICAgICAgICAgQURDX1NNUFIyX1NNUDEyX01zayAgICAgICAgICAgICAgIC8qITwgQURDIGNoYW5uZWwgMTIgc2FtcGxpbmcgdGltZSBzZWxlY3Rpb24gKi8NCiNkZWZpbmUgQURDX1NNUFIyX1NNUDEyXzAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IEFEQ19TTVBSMl9TTVAxMl9Qb3MpICAgICAvKiE8IDB4MDAwMDAwNDAgKi8NCiNkZWZpbmUgQURDX1NNUFIyX1NNUDEyXzEgICAgICAgICAgICAgICAgICAgICgweDJVIDw8IEFEQ19TTVBSMl9TTVAxMl9Qb3MpICAgICAvKiE8IDB4MDAwMDAwODAgKi8NCiNkZWZpbmUgQURDX1NNUFIyX1NNUDEyXzIgICAgICAgICAgICAgICAgICAgICgweDRVIDw8IEFEQ19TTVBSMl9TTVAxMl9Qb3MpICAgICAvKiE8IDB4MDAwMDAxMDAgKi8NCg0KI2RlZmluZSBBRENfU01QUjJfU01QMTNfUG9zICAgICAgICAgICAgICAgICAgKDlVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBBRENfU01QUjJfU01QMTNfTXNrICAgICAgICAgICAgICAgICAgKDB4N1UgPDwgQURDX1NNUFIyX1NNUDEzX1BvcykgICAgIC8qITwgMHgwMDAwMEUwMCAqLw0KI2RlZmluZSBBRENfU01QUjJfU01QMTMgICAgICAgICAgICAgICAgICAgICAgQURDX1NNUFIyX1NNUDEzX01zayAgICAgICAgICAgICAgIC8qITwgQURDIGNoYW5uZWwgMTMgc2FtcGxpbmcgdGltZSBzZWxlY3Rpb24gKi8NCiNkZWZpbmUgQURDX1NNUFIyX1NNUDEzXzAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IEFEQ19TTVBSMl9TTVAxM19Qb3MpICAgICAvKiE8IDB4MDAwMDAyMDAgKi8NCiNkZWZpbmUgQURDX1NNUFIyX1NNUDEzXzEgICAgICAgICAgICAgICAgICAgICgweDJVIDw8IEFEQ19TTVBSMl9TTVAxM19Qb3MpICAgICAvKiE8IDB4MDAwMDA0MDAgKi8NCiNkZWZpbmUgQURDX1NNUFIyX1NNUDEzXzIgICAgICAgICAgICAgICAgICAgICgweDRVIDw8IEFEQ19TTVBSMl9TTVAxM19Qb3MpICAgICAvKiE8IDB4MDAwMDA4MDAgKi8NCg0KI2RlZmluZSBBRENfU01QUjJfU01QMTRfUG9zICAgICAgICAgICAgICAgICAgKDEyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBBRENfU01QUjJfU01QMTRfTXNrICAgICAgICAgICAgICAgICAgKDB4N1UgPDwgQURDX1NNUFIyX1NNUDE0X1BvcykgICAgIC8qITwgMHgwMDAwNzAwMCAqLw0KI2RlZmluZSBBRENfU01QUjJfU01QMTQgICAgICAgICAgICAgICAgICAgICAgQURDX1NNUFIyX1NNUDE0X01zayAgICAgICAgICAgICAgIC8qITwgQURDIGNoYW5uZWwgMTQgc2FtcGxpbmcgdGltZSBzZWxlY3Rpb24gKi8NCiNkZWZpbmUgQURDX1NNUFIyX1NNUDE0XzAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IEFEQ19TTVBSMl9TTVAxNF9Qb3MpICAgICAvKiE8IDB4MDAwMDEwMDAgKi8NCiNkZWZpbmUgQURDX1NNUFIyX1NNUDE0XzEgICAgICAgICAgICAgICAgICAgICgweDJVIDw8IEFEQ19TTVBSMl9TTVAxNF9Qb3MpICAgICAvKiE8IDB4MDAwMDIwMDAgKi8NCiNkZWZpbmUgQURDX1NNUFIyX1NNUDE0XzIgICAgICAgICAgICAgICAgICAgICgweDRVIDw8IEFEQ19TTVBSMl9TTVAxNF9Qb3MpICAgICAvKiE8IDB4MDAwMDQwMDAgKi8NCg0KI2RlZmluZSBBRENfU01QUjJfU01QMTVfUG9zICAgICAgICAgICAgICAgICAgKDE1VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBBRENfU01QUjJfU01QMTVfTXNrICAgICAgICAgICAgICAgICAgKDB4N1UgPDwgQURDX1NNUFIyX1NNUDE1X1BvcykgICAgIC8qITwgMHgwMDAzODAwMCAqLw0KI2RlZmluZSBBRENfU01QUjJfU01QMTUgICAgICAgICAgICAgICAgICAgICAgQURDX1NNUFIyX1NNUDE1X01zayAgICAgICAgICAgICAgIC8qITwgQURDIGNoYW5uZWwgNSBzYW1wbGluZyB0aW1lIHNlbGVjdGlvbiAqLw0KI2RlZmluZSBBRENfU01QUjJfU01QMTVfMCAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgQURDX1NNUFIyX1NNUDE1X1BvcykgICAgIC8qITwgMHgwMDAwODAwMCAqLw0KI2RlZmluZSBBRENfU01QUjJfU01QMTVfMSAgICAgICAgICAgICAgICAgICAgKDB4MlUgPDwgQURDX1NNUFIyX1NNUDE1X1BvcykgICAgIC8qITwgMHgwMDAxMDAwMCAqLw0KI2RlZmluZSBBRENfU01QUjJfU01QMTVfMiAgICAgICAgICAgICAgICAgICAgKDB4NFUgPDwgQURDX1NNUFIyX1NNUDE1X1BvcykgICAgIC8qITwgMHgwMDAyMDAwMCAqLw0KDQojZGVmaW5lIEFEQ19TTVBSMl9TTVAxNl9Qb3MgICAgICAgICAgICAgICAgICAoMThVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEFEQ19TTVBSMl9TTVAxNl9Nc2sgICAgICAgICAgICAgICAgICAoMHg3VSA8PCBBRENfU01QUjJfU01QMTZfUG9zKSAgICAgLyohPCAweDAwMUMwMDAwICovDQojZGVmaW5lIEFEQ19TTVBSMl9TTVAxNiAgICAgICAgICAgICAgICAgICAgICBBRENfU01QUjJfU01QMTZfTXNrICAgICAgICAgICAgICAgLyohPCBBREMgY2hhbm5lbCAxNiBzYW1wbGluZyB0aW1lIHNlbGVjdGlvbiAqLw0KI2RlZmluZSBBRENfU01QUjJfU01QMTZfMCAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgQURDX1NNUFIyX1NNUDE2X1BvcykgICAgIC8qITwgMHgwMDA0MDAwMCAqLw0KI2RlZmluZSBBRENfU01QUjJfU01QMTZfMSAgICAgICAgICAgICAgICAgICAgKDB4MlUgPDwgQURDX1NNUFIyX1NNUDE2X1BvcykgICAgIC8qITwgMHgwMDA4MDAwMCAqLw0KI2RlZmluZSBBRENfU01QUjJfU01QMTZfMiAgICAgICAgICAgICAgICAgICAgKDB4NFUgPDwgQURDX1NNUFIyX1NNUDE2X1BvcykgICAgIC8qITwgMHgwMDEwMDAwMCAqLw0KDQojZGVmaW5lIEFEQ19TTVBSMl9TTVAxN19Qb3MgICAgICAgICAgICAgICAgICAoMjFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEFEQ19TTVBSMl9TTVAxN19Nc2sgICAgICAgICAgICAgICAgICAoMHg3VSA8PCBBRENfU01QUjJfU01QMTdfUG9zKSAgICAgLyohPCAweDAwRTAwMDAwICovDQojZGVmaW5lIEFEQ19TTVBSMl9TTVAxNyAgICAgICAgICAgICAgICAgICAgICBBRENfU01QUjJfU01QMTdfTXNrICAgICAgICAgICAgICAgLyohPCBBREMgY2hhbm5lbCAxNyBzYW1wbGluZyB0aW1lIHNlbGVjdGlvbiAqLw0KI2RlZmluZSBBRENfU01QUjJfU01QMTdfMCAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgQURDX1NNUFIyX1NNUDE3X1BvcykgICAgIC8qITwgMHgwMDIwMDAwMCAqLw0KI2RlZmluZSBBRENfU01QUjJfU01QMTdfMSAgICAgICAgICAgICAgICAgICAgKDB4MlUgPDwgQURDX1NNUFIyX1NNUDE3X1BvcykgICAgIC8qITwgMHgwMDQwMDAwMCAqLw0KI2RlZmluZSBBRENfU01QUjJfU01QMTdfMiAgICAgICAgICAgICAgICAgICAgKDB4NFUgPDwgQURDX1NNUFIyX1NNUDE3X1BvcykgICAgIC8qITwgMHgwMDgwMDAwMCAqLw0KDQojZGVmaW5lIEFEQ19TTVBSMl9TTVAxOF9Qb3MgICAgICAgICAgICAgICAgICAoMjRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEFEQ19TTVBSMl9TTVAxOF9Nc2sgICAgICAgICAgICAgICAgICAoMHg3VSA8PCBBRENfU01QUjJfU01QMThfUG9zKSAgICAgLyohPCAweDA3MDAwMDAwICovDQojZGVmaW5lIEFEQ19TTVBSMl9TTVAxOCAgICAgICAgICAgICAgICAgICAgICBBRENfU01QUjJfU01QMThfTXNrICAgICAgICAgICAgICAgLyohPCBBREMgY2hhbm5lbCAxOCBzYW1wbGluZyB0aW1lIHNlbGVjdGlvbiAqLw0KI2RlZmluZSBBRENfU01QUjJfU01QMThfMCAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgQURDX1NNUFIyX1NNUDE4X1BvcykgICAgIC8qITwgMHgwMTAwMDAwMCAqLw0KI2RlZmluZSBBRENfU01QUjJfU01QMThfMSAgICAgICAgICAgICAgICAgICAgKDB4MlUgPDwgQURDX1NNUFIyX1NNUDE4X1BvcykgICAgIC8qITwgMHgwMjAwMDAwMCAqLw0KI2RlZmluZSBBRENfU01QUjJfU01QMThfMiAgICAgICAgICAgICAgICAgICAgKDB4NFUgPDwgQURDX1NNUFIyX1NNUDE4X1BvcykgICAgIC8qITwgMHgwNDAwMDAwMCAqLw0KDQojZGVmaW5lIEFEQ19TTVBSMl9TTVAxOV9Qb3MgICAgICAgICAgICAgICAgICAoMjdVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEFEQ19TTVBSMl9TTVAxOV9Nc2sgICAgICAgICAgICAgICAgICAoMHg3VSA8PCBBRENfU01QUjJfU01QMTlfUG9zKSAgICAgLyohPCAweDM4MDAwMDAwICovDQojZGVmaW5lIEFEQ19TTVBSMl9TTVAxOSAgICAgICAgICAgICAgICAgICAgICBBRENfU01QUjJfU01QMTlfTXNrICAgICAgICAgICAgICAgLyohPCBBREMgY2hhbm5lbCAxOSBzYW1wbGluZyB0aW1lIHNlbGVjdGlvbiAqLw0KI2RlZmluZSBBRENfU01QUjJfU01QMTlfMCAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgQURDX1NNUFIyX1NNUDE5X1BvcykgICAgIC8qITwgMHgwODAwMDAwMCAqLw0KI2RlZmluZSBBRENfU01QUjJfU01QMTlfMSAgICAgICAgICAgICAgICAgICAgKDB4MlUgPDwgQURDX1NNUFIyX1NNUDE5X1BvcykgICAgIC8qITwgMHgxMDAwMDAwMCAqLw0KI2RlZmluZSBBRENfU01QUjJfU01QMTlfMiAgICAgICAgICAgICAgICAgICAgKDB4NFUgPDwgQURDX1NNUFIyX1NNUDE5X1BvcykgICAgIC8qITwgMHgyMDAwMDAwMCAqLw0KDQovKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgQURDX1NNUFIzIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBBRENfU01QUjNfU01QMF9Qb3MgICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBBRENfU01QUjNfU01QMF9Nc2sgICAgICAgICAgICAgICAgICAgKDB4N1UgPDwgQURDX1NNUFIzX1NNUDBfUG9zKSAgICAgIC8qITwgMHgwMDAwMDAwNyAqLw0KI2RlZmluZSBBRENfU01QUjNfU01QMCAgICAgICAgICAgICAgICAgICAgICAgQURDX1NNUFIzX1NNUDBfTXNrICAgICAgICAgICAgICAgIC8qITwgQURDIGNoYW5uZWwgMCBzYW1wbGluZyB0aW1lIHNlbGVjdGlvbiAqLw0KI2RlZmluZSBBRENfU01QUjNfU01QMF8wICAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgQURDX1NNUFIzX1NNUDBfUG9zKSAgICAgIC8qITwgMHgwMDAwMDAwMSAqLw0KI2RlZmluZSBBRENfU01QUjNfU01QMF8xICAgICAgICAgICAgICAgICAgICAgKDB4MlUgPDwgQURDX1NNUFIzX1NNUDBfUG9zKSAgICAgIC8qITwgMHgwMDAwMDAwMiAqLw0KI2RlZmluZSBBRENfU01QUjNfU01QMF8yICAgICAgICAgICAgICAgICAgICAgKDB4NFUgPDwgQURDX1NNUFIzX1NNUDBfUG9zKSAgICAgIC8qITwgMHgwMDAwMDAwNCAqLw0KIA0KI2RlZmluZSBBRENfU01QUjNfU01QMV9Qb3MgICAgICAgICAgICAgICAgICAgKDNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBBRENfU01QUjNfU01QMV9Nc2sgICAgICAgICAgICAgICAgICAgKDB4N1UgPDwgQURDX1NNUFIzX1NNUDFfUG9zKSAgICAgIC8qITwgMHgwMDAwMDAzOCAqLw0KI2RlZmluZSBBRENfU01QUjNfU01QMSAgICAgICAgICAgICAgICAgICAgICAgQURDX1NNUFIzX1NNUDFfTXNrICAgICAgICAgICAgICAgIC8qITwgQURDIGNoYW5uZWwgMSBzYW1wbGluZyB0aW1lIHNlbGVjdGlvbiAqLw0KI2RlZmluZSBBRENfU01QUjNfU01QMV8wICAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgQURDX1NNUFIzX1NNUDFfUG9zKSAgICAgIC8qITwgMHgwMDAwMDAwOCAqLw0KI2RlZmluZSBBRENfU01QUjNfU01QMV8xICAgICAgICAgICAgICAgICAgICAgKDB4MlUgPDwgQURDX1NNUFIzX1NNUDFfUG9zKSAgICAgIC8qITwgMHgwMDAwMDAxMCAqLw0KI2RlZmluZSBBRENfU01QUjNfU01QMV8yICAgICAgICAgICAgICAgICAgICAgKDB4NFUgPDwgQURDX1NNUFIzX1NNUDFfUG9zKSAgICAgIC8qITwgMHgwMDAwMDAyMCAqLw0KDQojZGVmaW5lIEFEQ19TTVBSM19TTVAyX1BvcyAgICAgICAgICAgICAgICAgICAoNlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEFEQ19TTVBSM19TTVAyX01zayAgICAgICAgICAgICAgICAgICAoMHg3VSA8PCBBRENfU01QUjNfU01QMl9Qb3MpICAgICAgLyohPCAweDAwMDAwMUMwICovDQojZGVmaW5lIEFEQ19TTVBSM19TTVAyICAgICAgICAgICAgICAgICAgICAgICBBRENfU01QUjNfU01QMl9Nc2sgICAgICAgICAgICAgICAgLyohPCBBREMgY2hhbm5lbCAyIHNhbXBsaW5nIHRpbWUgc2VsZWN0aW9uICovDQojZGVmaW5lIEFEQ19TTVBSM19TTVAyXzAgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBBRENfU01QUjNfU01QMl9Qb3MpICAgICAgLyohPCAweDAwMDAwMDQwICovDQojZGVmaW5lIEFEQ19TTVBSM19TTVAyXzEgICAgICAgICAgICAgICAgICAgICAoMHgyVSA8PCBBRENfU01QUjNfU01QMl9Qb3MpICAgICAgLyohPCAweDAwMDAwMDgwICovDQojZGVmaW5lIEFEQ19TTVBSM19TTVAyXzIgICAgICAgICAgICAgICAgICAgICAoMHg0VSA8PCBBRENfU01QUjNfU01QMl9Qb3MpICAgICAgLyohPCAweDAwMDAwMTAwICovDQoNCiNkZWZpbmUgQURDX1NNUFIzX1NNUDNfUG9zICAgICAgICAgICAgICAgICAgICg5VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgQURDX1NNUFIzX1NNUDNfTXNrICAgICAgICAgICAgICAgICAgICgweDdVIDw8IEFEQ19TTVBSM19TTVAzX1BvcykgICAgICAvKiE8IDB4MDAwMDBFMDAgKi8NCiNkZWZpbmUgQURDX1NNUFIzX1NNUDMgICAgICAgICAgICAgICAgICAgICAgIEFEQ19TTVBSM19TTVAzX01zayAgICAgICAgICAgICAgICAvKiE8IEFEQyBjaGFubmVsIDMgc2FtcGxpbmcgdGltZSBzZWxlY3Rpb24gKi8NCiNkZWZpbmUgQURDX1NNUFIzX1NNUDNfMCAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IEFEQ19TTVBSM19TTVAzX1BvcykgICAgICAvKiE8IDB4MDAwMDAyMDAgKi8NCiNkZWZpbmUgQURDX1NNUFIzX1NNUDNfMSAgICAgICAgICAgICAgICAgICAgICgweDJVIDw8IEFEQ19TTVBSM19TTVAzX1BvcykgICAgICAvKiE8IDB4MDAwMDA0MDAgKi8NCiNkZWZpbmUgQURDX1NNUFIzX1NNUDNfMiAgICAgICAgICAgICAgICAgICAgICgweDRVIDw8IEFEQ19TTVBSM19TTVAzX1BvcykgICAgICAvKiE8IDB4MDAwMDA4MDAgKi8NCg0KI2RlZmluZSBBRENfU01QUjNfU01QNF9Qb3MgICAgICAgICAgICAgICAgICAgKDEyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBBRENfU01QUjNfU01QNF9Nc2sgICAgICAgICAgICAgICAgICAgKDB4N1UgPDwgQURDX1NNUFIzX1NNUDRfUG9zKSAgICAgIC8qITwgMHgwMDAwNzAwMCAqLw0KI2RlZmluZSBBRENfU01QUjNfU01QNCAgICAgICAgICAgICAgICAgICAgICAgQURDX1NNUFIzX1NNUDRfTXNrICAgICAgICAgICAgICAgIC8qITwgQURDIGNoYW5uZWwgNCBzYW1wbGluZyB0aW1lIHNlbGVjdGlvbiAqLw0KI2RlZmluZSBBRENfU01QUjNfU01QNF8wICAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgQURDX1NNUFIzX1NNUDRfUG9zKSAgICAgIC8qITwgMHgwMDAwMTAwMCAqLw0KI2RlZmluZSBBRENfU01QUjNfU01QNF8xICAgICAgICAgICAgICAgICAgICAgKDB4MlUgPDwgQURDX1NNUFIzX1NNUDRfUG9zKSAgICAgIC8qITwgMHgwMDAwMjAwMCAqLw0KI2RlZmluZSBBRENfU01QUjNfU01QNF8yICAgICAgICAgICAgICAgICAgICAgKDB4NFUgPDwgQURDX1NNUFIzX1NNUDRfUG9zKSAgICAgIC8qITwgMHgwMDAwNDAwMCAqLw0KDQojZGVmaW5lIEFEQ19TTVBSM19TTVA1X1BvcyAgICAgICAgICAgICAgICAgICAoMTVVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEFEQ19TTVBSM19TTVA1X01zayAgICAgICAgICAgICAgICAgICAoMHg3VSA8PCBBRENfU01QUjNfU01QNV9Qb3MpICAgICAgLyohPCAweDAwMDM4MDAwICovDQojZGVmaW5lIEFEQ19TTVBSM19TTVA1ICAgICAgICAgICAgICAgICAgICAgICBBRENfU01QUjNfU01QNV9Nc2sgICAgICAgICAgICAgICAgLyohPCBBREMgY2hhbm5lbCA1IHNhbXBsaW5nIHRpbWUgc2VsZWN0aW9uICovDQojZGVmaW5lIEFEQ19TTVBSM19TTVA1XzAgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBBRENfU01QUjNfU01QNV9Qb3MpICAgICAgLyohPCAweDAwMDA4MDAwICovDQojZGVmaW5lIEFEQ19TTVBSM19TTVA1XzEgICAgICAgICAgICAgICAgICAgICAoMHgyVSA8PCBBRENfU01QUjNfU01QNV9Qb3MpICAgICAgLyohPCAweDAwMDEwMDAwICovDQojZGVmaW5lIEFEQ19TTVBSM19TTVA1XzIgICAgICAgICAgICAgICAgICAgICAoMHg0VSA8PCBBRENfU01QUjNfU01QNV9Qb3MpICAgICAgLyohPCAweDAwMDIwMDAwICovDQoNCiNkZWZpbmUgQURDX1NNUFIzX1NNUDZfUG9zICAgICAgICAgICAgICAgICAgICgxOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgQURDX1NNUFIzX1NNUDZfTXNrICAgICAgICAgICAgICAgICAgICgweDdVIDw8IEFEQ19TTVBSM19TTVA2X1BvcykgICAgICAvKiE8IDB4MDAxQzAwMDAgKi8NCiNkZWZpbmUgQURDX1NNUFIzX1NNUDYgICAgICAgICAgICAgICAgICAgICAgIEFEQ19TTVBSM19TTVA2X01zayAgICAgICAgICAgICAgICAvKiE8IEFEQyBjaGFubmVsIDYgc2FtcGxpbmcgdGltZSBzZWxlY3Rpb24gKi8NCiNkZWZpbmUgQURDX1NNUFIzX1NNUDZfMCAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IEFEQ19TTVBSM19TTVA2X1BvcykgICAgICAvKiE8IDB4MDAwNDAwMDAgKi8NCiNkZWZpbmUgQURDX1NNUFIzX1NNUDZfMSAgICAgICAgICAgICAgICAgICAgICgweDJVIDw8IEFEQ19TTVBSM19TTVA2X1BvcykgICAgICAvKiE8IDB4MDAwODAwMDAgKi8NCiNkZWZpbmUgQURDX1NNUFIzX1NNUDZfMiAgICAgICAgICAgICAgICAgICAgICgweDRVIDw8IEFEQ19TTVBSM19TTVA2X1BvcykgICAgICAvKiE8IDB4MDAxMDAwMDAgKi8NCg0KI2RlZmluZSBBRENfU01QUjNfU01QN19Qb3MgICAgICAgICAgICAgICAgICAgKDIxVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBBRENfU01QUjNfU01QN19Nc2sgICAgICAgICAgICAgICAgICAgKDB4N1UgPDwgQURDX1NNUFIzX1NNUDdfUG9zKSAgICAgIC8qITwgMHgwMEUwMDAwMCAqLw0KI2RlZmluZSBBRENfU01QUjNfU01QNyAgICAgICAgICAgICAgICAgICAgICAgQURDX1NNUFIzX1NNUDdfTXNrICAgICAgICAgICAgICAgIC8qITwgQURDIGNoYW5uZWwgNyBzYW1wbGluZyB0aW1lIHNlbGVjdGlvbiAqLw0KI2RlZmluZSBBRENfU01QUjNfU01QN18wICAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgQURDX1NNUFIzX1NNUDdfUG9zKSAgICAgIC8qITwgMHgwMDIwMDAwMCAqLw0KI2RlZmluZSBBRENfU01QUjNfU01QN18xICAgICAgICAgICAgICAgICAgICAgKDB4MlUgPDwgQURDX1NNUFIzX1NNUDdfUG9zKSAgICAgIC8qITwgMHgwMDQwMDAwMCAqLw0KI2RlZmluZSBBRENfU01QUjNfU01QN18yICAgICAgICAgICAgICAgICAgICAgKDB4NFUgPDwgQURDX1NNUFIzX1NNUDdfUG9zKSAgICAgIC8qITwgMHgwMDgwMDAwMCAqLw0KDQojZGVmaW5lIEFEQ19TTVBSM19TTVA4X1BvcyAgICAgICAgICAgICAgICAgICAoMjRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEFEQ19TTVBSM19TTVA4X01zayAgICAgICAgICAgICAgICAgICAoMHg3VSA8PCBBRENfU01QUjNfU01QOF9Qb3MpICAgICAgLyohPCAweDA3MDAwMDAwICovDQojZGVmaW5lIEFEQ19TTVBSM19TTVA4ICAgICAgICAgICAgICAgICAgICAgICBBRENfU01QUjNfU01QOF9Nc2sgICAgICAgICAgICAgICAgLyohPCBBREMgY2hhbm5lbCA4IHNhbXBsaW5nIHRpbWUgc2VsZWN0aW9uICovDQojZGVmaW5lIEFEQ19TTVBSM19TTVA4XzAgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBBRENfU01QUjNfU01QOF9Qb3MpICAgICAgLyohPCAweDAxMDAwMDAwICovDQojZGVmaW5lIEFEQ19TTVBSM19TTVA4XzEgICAgICAgICAgICAgICAgICAgICAoMHgyVSA8PCBBRENfU01QUjNfU01QOF9Qb3MpICAgICAgLyohPCAweDAyMDAwMDAwICovDQojZGVmaW5lIEFEQ19TTVBSM19TTVA4XzIgICAgICAgICAgICAgICAgICAgICAoMHg0VSA8PCBBRENfU01QUjNfU01QOF9Qb3MpICAgICAgLyohPCAweDA0MDAwMDAwICovDQoNCiNkZWZpbmUgQURDX1NNUFIzX1NNUDlfUG9zICAgICAgICAgICAgICAgICAgICgyN1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgQURDX1NNUFIzX1NNUDlfTXNrICAgICAgICAgICAgICAgICAgICgweDdVIDw8IEFEQ19TTVBSM19TTVA5X1BvcykgICAgICAvKiE8IDB4MzgwMDAwMDAgKi8NCiNkZWZpbmUgQURDX1NNUFIzX1NNUDkgICAgICAgICAgICAgICAgICAgICAgIEFEQ19TTVBSM19TTVA5X01zayAgICAgICAgICAgICAgICAvKiE8IEFEQyBjaGFubmVsIDkgc2FtcGxpbmcgdGltZSBzZWxlY3Rpb24gKi8NCiNkZWZpbmUgQURDX1NNUFIzX1NNUDlfMCAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IEFEQ19TTVBSM19TTVA5X1BvcykgICAgICAvKiE8IDB4MDgwMDAwMDAgKi8NCiNkZWZpbmUgQURDX1NNUFIzX1NNUDlfMSAgICAgICAgICAgICAgICAgICAgICgweDJVIDw8IEFEQ19TTVBSM19TTVA5X1BvcykgICAgICAvKiE8IDB4MTAwMDAwMDAgKi8NCiNkZWZpbmUgQURDX1NNUFIzX1NNUDlfMiAgICAgICAgICAgICAgICAgICAgICgweDRVIDw8IEFEQ19TTVBSM19TTVA5X1BvcykgICAgICAvKiE8IDB4MjAwMDAwMDAgKi8NCg0KLyoqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIEFEQ19KT0ZSMSByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgQURDX0pPRlIxX0pPRkZTRVQxX1BvcyAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgQURDX0pPRlIxX0pPRkZTRVQxX01zayAgICAgICAgICAgICAgICgweEZGRlUgPDwgQURDX0pPRlIxX0pPRkZTRVQxX1BvcykgLyohPCAweDAwMDAwRkZGICovDQojZGVmaW5lIEFEQ19KT0ZSMV9KT0ZGU0VUMSAgICAgICAgICAgICAgICAgICBBRENfSk9GUjFfSk9GRlNFVDFfTXNrICAgICAgICAgICAgLyohPCBBREMgZ3JvdXAgaW5qZWN0ZWQgc2VxdWVuY2VyIHJhbmsgMSBvZmZzZXQgdmFsdWUgKi8NCg0KLyoqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIEFEQ19KT0ZSMiByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgQURDX0pPRlIyX0pPRkZTRVQyX1BvcyAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgQURDX0pPRlIyX0pPRkZTRVQyX01zayAgICAgICAgICAgICAgICgweEZGRlUgPDwgQURDX0pPRlIyX0pPRkZTRVQyX1BvcykgLyohPCAweDAwMDAwRkZGICovDQojZGVmaW5lIEFEQ19KT0ZSMl9KT0ZGU0VUMiAgICAgICAgICAgICAgICAgICBBRENfSk9GUjJfSk9GRlNFVDJfTXNrICAgICAgICAgICAgLyohPCBBREMgZ3JvdXAgaW5qZWN0ZWQgc2VxdWVuY2VyIHJhbmsgMiBvZmZzZXQgdmFsdWUgKi8NCg0KLyoqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIEFEQ19KT0ZSMyByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgQURDX0pPRlIzX0pPRkZTRVQzX1BvcyAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgQURDX0pPRlIzX0pPRkZTRVQzX01zayAgICAgICAgICAgICAgICgweEZGRlUgPDwgQURDX0pPRlIzX0pPRkZTRVQzX1BvcykgLyohPCAweDAwMDAwRkZGICovDQojZGVmaW5lIEFEQ19KT0ZSM19KT0ZGU0VUMyAgICAgICAgICAgICAgICAgICBBRENfSk9GUjNfSk9GRlNFVDNfTXNrICAgICAgICAgICAgLyohPCBBREMgZ3JvdXAgaW5qZWN0ZWQgc2VxdWVuY2VyIHJhbmsgMyBvZmZzZXQgdmFsdWUgKi8NCg0KLyoqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIEFEQ19KT0ZSNCByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgQURDX0pPRlI0X0pPRkZTRVQ0X1BvcyAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgQURDX0pPRlI0X0pPRkZTRVQ0X01zayAgICAgICAgICAgICAgICgweEZGRlUgPDwgQURDX0pPRlI0X0pPRkZTRVQ0X1BvcykgLyohPCAweDAwMDAwRkZGICovDQojZGVmaW5lIEFEQ19KT0ZSNF9KT0ZGU0VUNCAgICAgICAgICAgICAgICAgICBBRENfSk9GUjRfSk9GRlNFVDRfTXNrICAgICAgICAgICAgLyohPCBBREMgZ3JvdXAgaW5qZWN0ZWQgc2VxdWVuY2VyIHJhbmsgNCBvZmZzZXQgdmFsdWUgKi8NCg0KLyoqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBBRENfSFRSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgQURDX0hUUl9IVF9Qb3MgICAgICAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgQURDX0hUUl9IVF9Nc2sgICAgICAgICAgICAgICAgICAgICAgICgweEZGRlUgPDwgQURDX0hUUl9IVF9Qb3MpICAgICAgICAvKiE8IDB4MDAwMDBGRkYgKi8NCiNkZWZpbmUgQURDX0hUUl9IVCAgICAgICAgICAgICAgICAgICAgICAgICAgIEFEQ19IVFJfSFRfTXNrICAgICAgICAgICAgICAgICAgICAvKiE8IEFEQyBhbmFsb2cgd2F0Y2hkb2cgMSB0aHJlc2hvbGQgaGlnaCAqLw0KDQovKioqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIEFEQ19MVFIgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBBRENfTFRSX0xUX1BvcyAgICAgICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBBRENfTFRSX0xUX01zayAgICAgICAgICAgICAgICAgICAgICAgKDB4RkZGVSA8PCBBRENfTFRSX0xUX1BvcykgICAgICAgIC8qITwgMHgwMDAwMEZGRiAqLw0KI2RlZmluZSBBRENfTFRSX0xUICAgICAgICAgICAgICAgICAgICAgICAgICAgQURDX0xUUl9MVF9Nc2sgICAgICAgICAgICAgICAgICAgIC8qITwgQURDIGFuYWxvZyB3YXRjaGRvZyAxIHRocmVzaG9sZCBsb3cgKi8NCg0KLyoqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBBRENfU1FSMSByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgQURDX1NRUjFfTF9Qb3MgICAgICAgICAgICAgICAgICAgICAgICgyMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgQURDX1NRUjFfTF9Nc2sgICAgICAgICAgICAgICAgICAgICAgICgweDFGVSA8PCBBRENfU1FSMV9MX1BvcykgICAgICAgICAvKiE8IDB4MDFGMDAwMDAgKi8NCiNkZWZpbmUgQURDX1NRUjFfTCAgICAgICAgICAgICAgICAgICAgICAgICAgIEFEQ19TUVIxX0xfTXNrICAgICAgICAgICAgICAgICAgICAvKiE8IEFEQyBncm91cCByZWd1bGFyIHNlcXVlbmNlciBzY2FuIGxlbmd0aCAqLw0KI2RlZmluZSBBRENfU1FSMV9MXzAgICAgICAgICAgICAgICAgICAgICAgICAgKDB4MDFVIDw8IEFEQ19TUVIxX0xfUG9zKSAgICAgICAgIC8qITwgMHgwMDEwMDAwMCAqLw0KI2RlZmluZSBBRENfU1FSMV9MXzEgICAgICAgICAgICAgICAgICAgICAgICAgKDB4MDJVIDw8IEFEQ19TUVIxX0xfUG9zKSAgICAgICAgIC8qITwgMHgwMDIwMDAwMCAqLw0KI2RlZmluZSBBRENfU1FSMV9MXzIgICAgICAgICAgICAgICAgICAgICAgICAgKDB4MDRVIDw8IEFEQ19TUVIxX0xfUG9zKSAgICAgICAgIC8qITwgMHgwMDQwMDAwMCAqLw0KI2RlZmluZSBBRENfU1FSMV9MXzMgICAgICAgICAgICAgICAgICAgICAgICAgKDB4MDhVIDw8IEFEQ19TUVIxX0xfUG9zKSAgICAgICAgIC8qITwgMHgwMDgwMDAwMCAqLw0KI2RlZmluZSBBRENfU1FSMV9MXzQgICAgICAgICAgICAgICAgICAgICAgICAgKDB4MTBVIDw8IEFEQ19TUVIxX0xfUG9zKSAgICAgICAgIC8qITwgMHgwMTAwMDAwMCAqLw0KDQojZGVmaW5lIEFEQ19TUVIxX1NRMjhfUG9zICAgICAgICAgICAgICAgICAgICAoMTVVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEFEQ19TUVIxX1NRMjhfTXNrICAgICAgICAgICAgICAgICAgICAoMHgxRlUgPDwgQURDX1NRUjFfU1EyOF9Qb3MpICAgICAgLyohPCAweDAwMEY4MDAwICovDQojZGVmaW5lIEFEQ19TUVIxX1NRMjggICAgICAgICAgICAgICAgICAgICAgICBBRENfU1FSMV9TUTI4X01zayAgICAgICAgICAgICAgICAgLyohPCBBREMgZ3JvdXAgcmVndWxhciBzZXF1ZW5jZXIgcmFuayAyOCAqLw0KI2RlZmluZSBBRENfU1FSMV9TUTI4XzAgICAgICAgICAgICAgICAgICAgICAgKDB4MDFVIDw8IEFEQ19TUVIxX1NRMjhfUG9zKSAgICAgIC8qITwgMHgwMDAwODAwMCAqLw0KI2RlZmluZSBBRENfU1FSMV9TUTI4XzEgICAgICAgICAgICAgICAgICAgICAgKDB4MDJVIDw8IEFEQ19TUVIxX1NRMjhfUG9zKSAgICAgIC8qITwgMHgwMDAxMDAwMCAqLw0KI2RlZmluZSBBRENfU1FSMV9TUTI4XzIgICAgICAgICAgICAgICAgICAgICAgKDB4MDRVIDw8IEFEQ19TUVIxX1NRMjhfUG9zKSAgICAgIC8qITwgMHgwMDAyMDAwMCAqLw0KI2RlZmluZSBBRENfU1FSMV9TUTI4XzMgICAgICAgICAgICAgICAgICAgICAgKDB4MDhVIDw8IEFEQ19TUVIxX1NRMjhfUG9zKSAgICAgIC8qITwgMHgwMDA0MDAwMCAqLw0KI2RlZmluZSBBRENfU1FSMV9TUTI4XzQgICAgICAgICAgICAgICAgICAgICAgKDB4MTBVIDw8IEFEQ19TUVIxX1NRMjhfUG9zKSAgICAgIC8qITwgMHgwMDA4MDAwMCAqLw0KDQojZGVmaW5lIEFEQ19TUVIxX1NRMjdfUG9zICAgICAgICAgICAgICAgICAgICAoMTBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEFEQ19TUVIxX1NRMjdfTXNrICAgICAgICAgICAgICAgICAgICAoMHgxRlUgPDwgQURDX1NRUjFfU1EyN19Qb3MpICAgICAgLyohPCAweDAwMDA3QzAwICovDQojZGVmaW5lIEFEQ19TUVIxX1NRMjcgICAgICAgICAgICAgICAgICAgICAgICBBRENfU1FSMV9TUTI3X01zayAgICAgICAgICAgICAgICAgLyohPCBBREMgZ3JvdXAgcmVndWxhciBzZXF1ZW5jZXIgcmFuayAyNyAqLw0KI2RlZmluZSBBRENfU1FSMV9TUTI3XzAgICAgICAgICAgICAgICAgICAgICAgKDB4MDFVIDw8IEFEQ19TUVIxX1NRMjdfUG9zKSAgICAgIC8qITwgMHgwMDAwMDQwMCAqLw0KI2RlZmluZSBBRENfU1FSMV9TUTI3XzEgICAgICAgICAgICAgICAgICAgICAgKDB4MDJVIDw8IEFEQ19TUVIxX1NRMjdfUG9zKSAgICAgIC8qITwgMHgwMDAwMDgwMCAqLw0KI2RlZmluZSBBRENfU1FSMV9TUTI3XzIgICAgICAgICAgICAgICAgICAgICAgKDB4MDRVIDw8IEFEQ19TUVIxX1NRMjdfUG9zKSAgICAgIC8qITwgMHgwMDAwMTAwMCAqLw0KI2RlZmluZSBBRENfU1FSMV9TUTI3XzMgICAgICAgICAgICAgICAgICAgICAgKDB4MDhVIDw8IEFEQ19TUVIxX1NRMjdfUG9zKSAgICAgIC8qITwgMHgwMDAwMjAwMCAqLw0KI2RlZmluZSBBRENfU1FSMV9TUTI3XzQgICAgICAgICAgICAgICAgICAgICAgKDB4MTBVIDw8IEFEQ19TUVIxX1NRMjdfUG9zKSAgICAgIC8qITwgMHgwMDAwNDAwMCAqLw0KDQojZGVmaW5lIEFEQ19TUVIxX1NRMjZfUG9zICAgICAgICAgICAgICAgICAgICAoNVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEFEQ19TUVIxX1NRMjZfTXNrICAgICAgICAgICAgICAgICAgICAoMHgxRlUgPDwgQURDX1NRUjFfU1EyNl9Qb3MpICAgICAgLyohPCAweDAwMDAwM0UwICovDQojZGVmaW5lIEFEQ19TUVIxX1NRMjYgICAgICAgICAgICAgICAgICAgICAgICBBRENfU1FSMV9TUTI2X01zayAgICAgICAgICAgICAgICAgLyohPCBBREMgZ3JvdXAgcmVndWxhciBzZXF1ZW5jZXIgcmFuayAyNiAqLw0KI2RlZmluZSBBRENfU1FSMV9TUTI2XzAgICAgICAgICAgICAgICAgICAgICAgKDB4MDFVIDw8IEFEQ19TUVIxX1NRMjZfUG9zKSAgICAgIC8qITwgMHgwMDAwMDAyMCAqLw0KI2RlZmluZSBBRENfU1FSMV9TUTI2XzEgICAgICAgICAgICAgICAgICAgICAgKDB4MDJVIDw8IEFEQ19TUVIxX1NRMjZfUG9zKSAgICAgIC8qITwgMHgwMDAwMDA0MCAqLw0KI2RlZmluZSBBRENfU1FSMV9TUTI2XzIgICAgICAgICAgICAgICAgICAgICAgKDB4MDRVIDw8IEFEQ19TUVIxX1NRMjZfUG9zKSAgICAgIC8qITwgMHgwMDAwMDA4MCAqLw0KI2RlZmluZSBBRENfU1FSMV9TUTI2XzMgICAgICAgICAgICAgICAgICAgICAgKDB4MDhVIDw8IEFEQ19TUVIxX1NRMjZfUG9zKSAgICAgIC8qITwgMHgwMDAwMDEwMCAqLw0KI2RlZmluZSBBRENfU1FSMV9TUTI2XzQgICAgICAgICAgICAgICAgICAgICAgKDB4MTBVIDw8IEFEQ19TUVIxX1NRMjZfUG9zKSAgICAgIC8qITwgMHgwMDAwMDIwMCAqLw0KDQojZGVmaW5lIEFEQ19TUVIxX1NRMjVfUG9zICAgICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEFEQ19TUVIxX1NRMjVfTXNrICAgICAgICAgICAgICAgICAgICAoMHgxRlUgPDwgQURDX1NRUjFfU1EyNV9Qb3MpICAgICAgLyohPCAweDAwMDAwMDFGICovDQojZGVmaW5lIEFEQ19TUVIxX1NRMjUgICAgICAgICAgICAgICAgICAgICAgICBBRENfU1FSMV9TUTI1X01zayAgICAgICAgICAgICAgICAgLyohPCBBREMgZ3JvdXAgcmVndWxhciBzZXF1ZW5jZXIgcmFuayAyNSAqLw0KI2RlZmluZSBBRENfU1FSMV9TUTI1XzAgICAgICAgICAgICAgICAgICAgICAgKDB4MDFVIDw8IEFEQ19TUVIxX1NRMjVfUG9zKSAgICAgIC8qITwgMHgwMDAwMDAwMSAqLw0KI2RlZmluZSBBRENfU1FSMV9TUTI1XzEgICAgICAgICAgICAgICAgICAgICAgKDB4MDJVIDw8IEFEQ19TUVIxX1NRMjVfUG9zKSAgICAgIC8qITwgMHgwMDAwMDAwMiAqLw0KI2RlZmluZSBBRENfU1FSMV9TUTI1XzIgICAgICAgICAgICAgICAgICAgICAgKDB4MDRVIDw8IEFEQ19TUVIxX1NRMjVfUG9zKSAgICAgIC8qITwgMHgwMDAwMDAwNCAqLw0KI2RlZmluZSBBRENfU1FSMV9TUTI1XzMgICAgICAgICAgICAgICAgICAgICAgKDB4MDhVIDw8IEFEQ19TUVIxX1NRMjVfUG9zKSAgICAgIC8qITwgMHgwMDAwMDAwOCAqLw0KI2RlZmluZSBBRENfU1FSMV9TUTI1XzQgICAgICAgICAgICAgICAgICAgICAgKDB4MTBVIDw8IEFEQ19TUVIxX1NRMjVfUG9zKSAgICAgIC8qITwgMHgwMDAwMDAxMCAqLw0KDQovKioqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIEFEQ19TUVIyIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBBRENfU1FSMl9TUTE5X1BvcyAgICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBBRENfU1FSMl9TUTE5X01zayAgICAgICAgICAgICAgICAgICAgKDB4MUZVIDw8IEFEQ19TUVIyX1NRMTlfUG9zKSAgICAgIC8qITwgMHgwMDAwMDAxRiAqLw0KI2RlZmluZSBBRENfU1FSMl9TUTE5ICAgICAgICAgICAgICAgICAgICAgICAgQURDX1NRUjJfU1ExOV9Nc2sgICAgICAgICAgICAgICAgIC8qITwgQURDIGdyb3VwIHJlZ3VsYXIgc2VxdWVuY2VyIHJhbmsgMTkgKi8NCiNkZWZpbmUgQURDX1NRUjJfU1ExOV8wICAgICAgICAgICAgICAgICAgICAgICgweDAxVSA8PCBBRENfU1FSMl9TUTE5X1BvcykgICAgICAvKiE8IDB4MDAwMDAwMDEgKi8NCiNkZWZpbmUgQURDX1NRUjJfU1ExOV8xICAgICAgICAgICAgICAgICAgICAgICgweDAyVSA8PCBBRENfU1FSMl9TUTE5X1BvcykgICAgICAvKiE8IDB4MDAwMDAwMDIgKi8NCiNkZWZpbmUgQURDX1NRUjJfU1ExOV8yICAgICAgICAgICAgICAgICAgICAgICgweDA0VSA8PCBBRENfU1FSMl9TUTE5X1BvcykgICAgICAvKiE8IDB4MDAwMDAwMDQgKi8NCiNkZWZpbmUgQURDX1NRUjJfU1ExOV8zICAgICAgICAgICAgICAgICAgICAgICgweDA4VSA8PCBBRENfU1FSMl9TUTE5X1BvcykgICAgICAvKiE8IDB4MDAwMDAwMDggKi8NCiNkZWZpbmUgQURDX1NRUjJfU1ExOV80ICAgICAgICAgICAgICAgICAgICAgICgweDEwVSA8PCBBRENfU1FSMl9TUTE5X1BvcykgICAgICAvKiE8IDB4MDAwMDAwMTAgKi8NCg0KI2RlZmluZSBBRENfU1FSMl9TUTIwX1BvcyAgICAgICAgICAgICAgICAgICAgKDVVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBBRENfU1FSMl9TUTIwX01zayAgICAgICAgICAgICAgICAgICAgKDB4MUZVIDw8IEFEQ19TUVIyX1NRMjBfUG9zKSAgICAgIC8qITwgMHgwMDAwMDNFMCAqLw0KI2RlZmluZSBBRENfU1FSMl9TUTIwICAgICAgICAgICAgICAgICAgICAgICAgQURDX1NRUjJfU1EyMF9Nc2sgICAgICAgICAgICAgICAgIC8qITwgQURDIGdyb3VwIHJlZ3VsYXIgc2VxdWVuY2VyIHJhbmsgMjAgKi8NCiNkZWZpbmUgQURDX1NRUjJfU1EyMF8wICAgICAgICAgICAgICAgICAgICAgICgweDAxVSA8PCBBRENfU1FSMl9TUTIwX1BvcykgICAgICAvKiE8IDB4MDAwMDAwMjAgKi8NCiNkZWZpbmUgQURDX1NRUjJfU1EyMF8xICAgICAgICAgICAgICAgICAgICAgICgweDAyVSA8PCBBRENfU1FSMl9TUTIwX1BvcykgICAgICAvKiE8IDB4MDAwMDAwNDAgKi8NCiNkZWZpbmUgQURDX1NRUjJfU1EyMF8yICAgICAgICAgICAgICAgICAgICAgICgweDA0VSA8PCBBRENfU1FSMl9TUTIwX1BvcykgICAgICAvKiE8IDB4MDAwMDAwODAgKi8NCiNkZWZpbmUgQURDX1NRUjJfU1EyMF8zICAgICAgICAgICAgICAgICAgICAgICgweDA4VSA8PCBBRENfU1FSMl9TUTIwX1BvcykgICAgICAvKiE8IDB4MDAwMDAxMDAgKi8NCiNkZWZpbmUgQURDX1NRUjJfU1EyMF80ICAgICAgICAgICAgICAgICAgICAgICgweDEwVSA8PCBBRENfU1FSMl9TUTIwX1BvcykgICAgICAvKiE8IDB4MDAwMDAyMDAgKi8NCg0KI2RlZmluZSBBRENfU1FSMl9TUTIxX1BvcyAgICAgICAgICAgICAgICAgICAgKDEwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBBRENfU1FSMl9TUTIxX01zayAgICAgICAgICAgICAgICAgICAgKDB4MUZVIDw8IEFEQ19TUVIyX1NRMjFfUG9zKSAgICAgIC8qITwgMHgwMDAwN0MwMCAqLw0KI2RlZmluZSBBRENfU1FSMl9TUTIxICAgICAgICAgICAgICAgICAgICAgICAgQURDX1NRUjJfU1EyMV9Nc2sgICAgICAgICAgICAgICAgIC8qITwgQURDIGdyb3VwIHJlZ3VsYXIgc2VxdWVuY2VyIHJhbmsgMjEgKi8NCiNkZWZpbmUgQURDX1NRUjJfU1EyMV8wICAgICAgICAgICAgICAgICAgICAgICgweDAxVSA8PCBBRENfU1FSMl9TUTIxX1BvcykgICAgICAvKiE8IDB4MDAwMDA0MDAgKi8NCiNkZWZpbmUgQURDX1NRUjJfU1EyMV8xICAgICAgICAgICAgICAgICAgICAgICgweDAyVSA8PCBBRENfU1FSMl9TUTIxX1BvcykgICAgICAvKiE8IDB4MDAwMDA4MDAgKi8NCiNkZWZpbmUgQURDX1NRUjJfU1EyMV8yICAgICAgICAgICAgICAgICAgICAgICgweDA0VSA8PCBBRENfU1FSMl9TUTIxX1BvcykgICAgICAvKiE8IDB4MDAwMDEwMDAgKi8NCiNkZWZpbmUgQURDX1NRUjJfU1EyMV8zICAgICAgICAgICAgICAgICAgICAgICgweDA4VSA8PCBBRENfU1FSMl9TUTIxX1BvcykgICAgICAvKiE8IDB4MDAwMDIwMDAgKi8NCiNkZWZpbmUgQURDX1NRUjJfU1EyMV80ICAgICAgICAgICAgICAgICAgICAgICgweDEwVSA8PCBBRENfU1FSMl9TUTIxX1BvcykgICAgICAvKiE8IDB4MDAwMDQwMDAgKi8NCg0KI2RlZmluZSBBRENfU1FSMl9TUTIyX1BvcyAgICAgICAgICAgICAgICAgICAgKDE1VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBBRENfU1FSMl9TUTIyX01zayAgICAgICAgICAgICAgICAgICAgKDB4MUZVIDw8IEFEQ19TUVIyX1NRMjJfUG9zKSAgICAgIC8qITwgMHgwMDBGODAwMCAqLw0KI2RlZmluZSBBRENfU1FSMl9TUTIyICAgICAgICAgICAgICAgICAgICAgICAgQURDX1NRUjJfU1EyMl9Nc2sgICAgICAgICAgICAgICAgIC8qITwgQURDIGdyb3VwIHJlZ3VsYXIgc2VxdWVuY2VyIHJhbmsgMjIgKi8NCiNkZWZpbmUgQURDX1NRUjJfU1EyMl8wICAgICAgICAgICAgICAgICAgICAgICgweDAxVSA8PCBBRENfU1FSMl9TUTIyX1BvcykgICAgICAvKiE8IDB4MDAwMDgwMDAgKi8NCiNkZWZpbmUgQURDX1NRUjJfU1EyMl8xICAgICAgICAgICAgICAgICAgICAgICgweDAyVSA8PCBBRENfU1FSMl9TUTIyX1BvcykgICAgICAvKiE8IDB4MDAwMTAwMDAgKi8NCiNkZWZpbmUgQURDX1NRUjJfU1EyMl8yICAgICAgICAgICAgICAgICAgICAgICgweDA0VSA8PCBBRENfU1FSMl9TUTIyX1BvcykgICAgICAvKiE8IDB4MDAwMjAwMDAgKi8NCiNkZWZpbmUgQURDX1NRUjJfU1EyMl8zICAgICAgICAgICAgICAgICAgICAgICgweDA4VSA8PCBBRENfU1FSMl9TUTIyX1BvcykgICAgICAvKiE8IDB4MDAwNDAwMDAgKi8NCiNkZWZpbmUgQURDX1NRUjJfU1EyMl80ICAgICAgICAgICAgICAgICAgICAgICgweDEwVSA8PCBBRENfU1FSMl9TUTIyX1BvcykgICAgICAvKiE8IDB4MDAwODAwMDAgKi8NCg0KI2RlZmluZSBBRENfU1FSMl9TUTIzX1BvcyAgICAgICAgICAgICAgICAgICAgKDIwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBBRENfU1FSMl9TUTIzX01zayAgICAgICAgICAgICAgICAgICAgKDB4MUZVIDw8IEFEQ19TUVIyX1NRMjNfUG9zKSAgICAgIC8qITwgMHgwMUYwMDAwMCAqLw0KI2RlZmluZSBBRENfU1FSMl9TUTIzICAgICAgICAgICAgICAgICAgICAgICAgQURDX1NRUjJfU1EyM19Nc2sgICAgICAgICAgICAgICAgIC8qITwgQURDIGdyb3VwIHJlZ3VsYXIgc2VxdWVuY2VyIHJhbmsgMjMgKi8NCiNkZWZpbmUgQURDX1NRUjJfU1EyM18wICAgICAgICAgICAgICAgICAgICAgICgweDAxVSA8PCBBRENfU1FSMl9TUTIzX1BvcykgICAgICAvKiE8IDB4MDAxMDAwMDAgKi8NCiNkZWZpbmUgQURDX1NRUjJfU1EyM18xICAgICAgICAgICAgICAgICAgICAgICgweDAyVSA8PCBBRENfU1FSMl9TUTIzX1BvcykgICAgICAvKiE8IDB4MDAyMDAwMDAgKi8NCiNkZWZpbmUgQURDX1NRUjJfU1EyM18yICAgICAgICAgICAgICAgICAgICAgICgweDA0VSA8PCBBRENfU1FSMl9TUTIzX1BvcykgICAgICAvKiE8IDB4MDA0MDAwMDAgKi8NCiNkZWZpbmUgQURDX1NRUjJfU1EyM18zICAgICAgICAgICAgICAgICAgICAgICgweDA4VSA8PCBBRENfU1FSMl9TUTIzX1BvcykgICAgICAvKiE8IDB4MDA4MDAwMDAgKi8NCiNkZWZpbmUgQURDX1NRUjJfU1EyM180ICAgICAgICAgICAgICAgICAgICAgICgweDEwVSA8PCBBRENfU1FSMl9TUTIzX1BvcykgICAgICAvKiE8IDB4MDEwMDAwMDAgKi8NCg0KI2RlZmluZSBBRENfU1FSMl9TUTI0X1BvcyAgICAgICAgICAgICAgICAgICAgKDI1VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBBRENfU1FSMl9TUTI0X01zayAgICAgICAgICAgICAgICAgICAgKDB4MUZVIDw8IEFEQ19TUVIyX1NRMjRfUG9zKSAgICAgIC8qITwgMHgzRTAwMDAwMCAqLw0KI2RlZmluZSBBRENfU1FSMl9TUTI0ICAgICAgICAgICAgICAgICAgICAgICAgQURDX1NRUjJfU1EyNF9Nc2sgICAgICAgICAgICAgICAgIC8qITwgQURDIGdyb3VwIHJlZ3VsYXIgc2VxdWVuY2VyIHJhbmsgMjQgKi8NCiNkZWZpbmUgQURDX1NRUjJfU1EyNF8wICAgICAgICAgICAgICAgICAgICAgICgweDAxVSA8PCBBRENfU1FSMl9TUTI0X1BvcykgICAgICAvKiE8IDB4MDIwMDAwMDAgKi8NCiNkZWZpbmUgQURDX1NRUjJfU1EyNF8xICAgICAgICAgICAgICAgICAgICAgICgweDAyVSA8PCBBRENfU1FSMl9TUTI0X1BvcykgICAgICAvKiE8IDB4MDQwMDAwMDAgKi8NCiNkZWZpbmUgQURDX1NRUjJfU1EyNF8yICAgICAgICAgICAgICAgICAgICAgICgweDA0VSA8PCBBRENfU1FSMl9TUTI0X1BvcykgICAgICAvKiE8IDB4MDgwMDAwMDAgKi8NCiNkZWZpbmUgQURDX1NRUjJfU1EyNF8zICAgICAgICAgICAgICAgICAgICAgICgweDA4VSA8PCBBRENfU1FSMl9TUTI0X1BvcykgICAgICAvKiE8IDB4MTAwMDAwMDAgKi8NCiNkZWZpbmUgQURDX1NRUjJfU1EyNF80ICAgICAgICAgICAgICAgICAgICAgICgweDEwVSA8PCBBRENfU1FSMl9TUTI0X1BvcykgICAgICAvKiE8IDB4MjAwMDAwMDAgKi8NCg0KLyoqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBBRENfU1FSMyByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgQURDX1NRUjNfU1ExM19Qb3MgICAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgQURDX1NRUjNfU1ExM19Nc2sgICAgICAgICAgICAgICAgICAgICgweDFGVSA8PCBBRENfU1FSM19TUTEzX1BvcykgICAgICAvKiE8IDB4MDAwMDAwMUYgKi8NCiNkZWZpbmUgQURDX1NRUjNfU1ExMyAgICAgICAgICAgICAgICAgICAgICAgIEFEQ19TUVIzX1NRMTNfTXNrICAgICAgICAgICAgICAgICAvKiE8IEFEQyBncm91cCByZWd1bGFyIHNlcXVlbmNlciByYW5rIDEzICovDQojZGVmaW5lIEFEQ19TUVIzX1NRMTNfMCAgICAgICAgICAgICAgICAgICAgICAoMHgwMVUgPDwgQURDX1NRUjNfU1ExM19Qb3MpICAgICAgLyohPCAweDAwMDAwMDAxICovDQojZGVmaW5lIEFEQ19TUVIzX1NRMTNfMSAgICAgICAgICAgICAgICAgICAgICAoMHgwMlUgPDwgQURDX1NRUjNfU1ExM19Qb3MpICAgICAgLyohPCAweDAwMDAwMDAyICovDQojZGVmaW5lIEFEQ19TUVIzX1NRMTNfMiAgICAgICAgICAgICAgICAgICAgICAoMHgwNFUgPDwgQURDX1NRUjNfU1ExM19Qb3MpICAgICAgLyohPCAweDAwMDAwMDA0ICovDQojZGVmaW5lIEFEQ19TUVIzX1NRMTNfMyAgICAgICAgICAgICAgICAgICAgICAoMHgwOFUgPDwgQURDX1NRUjNfU1ExM19Qb3MpICAgICAgLyohPCAweDAwMDAwMDA4ICovDQojZGVmaW5lIEFEQ19TUVIzX1NRMTNfNCAgICAgICAgICAgICAgICAgICAgICAoMHgxMFUgPDwgQURDX1NRUjNfU1ExM19Qb3MpICAgICAgLyohPCAweDAwMDAwMDEwICovDQoNCiNkZWZpbmUgQURDX1NRUjNfU1ExNF9Qb3MgICAgICAgICAgICAgICAgICAgICg1VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgQURDX1NRUjNfU1ExNF9Nc2sgICAgICAgICAgICAgICAgICAgICgweDFGVSA8PCBBRENfU1FSM19TUTE0X1BvcykgICAgICAvKiE8IDB4MDAwMDAzRTAgKi8NCiNkZWZpbmUgQURDX1NRUjNfU1ExNCAgICAgICAgICAgICAgICAgICAgICAgIEFEQ19TUVIzX1NRMTRfTXNrICAgICAgICAgICAgICAgICAvKiE8IEFEQyBncm91cCByZWd1bGFyIHNlcXVlbmNlciByYW5rIDE0ICovDQojZGVmaW5lIEFEQ19TUVIzX1NRMTRfMCAgICAgICAgICAgICAgICAgICAgICAoMHgwMVUgPDwgQURDX1NRUjNfU1ExNF9Qb3MpICAgICAgLyohPCAweDAwMDAwMDIwICovDQojZGVmaW5lIEFEQ19TUVIzX1NRMTRfMSAgICAgICAgICAgICAgICAgICAgICAoMHgwMlUgPDwgQURDX1NRUjNfU1ExNF9Qb3MpICAgICAgLyohPCAweDAwMDAwMDQwICovDQojZGVmaW5lIEFEQ19TUVIzX1NRMTRfMiAgICAgICAgICAgICAgICAgICAgICAoMHgwNFUgPDwgQURDX1NRUjNfU1ExNF9Qb3MpICAgICAgLyohPCAweDAwMDAwMDgwICovDQojZGVmaW5lIEFEQ19TUVIzX1NRMTRfMyAgICAgICAgICAgICAgICAgICAgICAoMHgwOFUgPDwgQURDX1NRUjNfU1ExNF9Qb3MpICAgICAgLyohPCAweDAwMDAwMTAwICovDQojZGVmaW5lIEFEQ19TUVIzX1NRMTRfNCAgICAgICAgICAgICAgICAgICAgICAoMHgxMFUgPDwgQURDX1NRUjNfU1ExNF9Qb3MpICAgICAgLyohPCAweDAwMDAwMjAwICovDQoNCiNkZWZpbmUgQURDX1NRUjNfU1ExNV9Qb3MgICAgICAgICAgICAgICAgICAgICgxMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgQURDX1NRUjNfU1ExNV9Nc2sgICAgICAgICAgICAgICAgICAgICgweDFGVSA8PCBBRENfU1FSM19TUTE1X1BvcykgICAgICAvKiE8IDB4MDAwMDdDMDAgKi8NCiNkZWZpbmUgQURDX1NRUjNfU1ExNSAgICAgICAgICAgICAgICAgICAgICAgIEFEQ19TUVIzX1NRMTVfTXNrICAgICAgICAgICAgICAgICAvKiE8IEFEQyBncm91cCByZWd1bGFyIHNlcXVlbmNlciByYW5rIDE1ICovDQojZGVmaW5lIEFEQ19TUVIzX1NRMTVfMCAgICAgICAgICAgICAgICAgICAgICAoMHgwMVUgPDwgQURDX1NRUjNfU1ExNV9Qb3MpICAgICAgLyohPCAweDAwMDAwNDAwICovDQojZGVmaW5lIEFEQ19TUVIzX1NRMTVfMSAgICAgICAgICAgICAgICAgICAgICAoMHgwMlUgPDwgQURDX1NRUjNfU1ExNV9Qb3MpICAgICAgLyohPCAweDAwMDAwODAwICovDQojZGVmaW5lIEFEQ19TUVIzX1NRMTVfMiAgICAgICAgICAgICAgICAgICAgICAoMHgwNFUgPDwgQURDX1NRUjNfU1ExNV9Qb3MpICAgICAgLyohPCAweDAwMDAxMDAwICovDQojZGVmaW5lIEFEQ19TUVIzX1NRMTVfMyAgICAgICAgICAgICAgICAgICAgICAoMHgwOFUgPDwgQURDX1NRUjNfU1ExNV9Qb3MpICAgICAgLyohPCAweDAwMDAyMDAwICovDQojZGVmaW5lIEFEQ19TUVIzX1NRMTVfNCAgICAgICAgICAgICAgICAgICAgICAoMHgxMFUgPDwgQURDX1NRUjNfU1ExNV9Qb3MpICAgICAgLyohPCAweDAwMDA0MDAwICovDQoNCiNkZWZpbmUgQURDX1NRUjNfU1ExNl9Qb3MgICAgICAgICAgICAgICAgICAgICgxNVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgQURDX1NRUjNfU1ExNl9Nc2sgICAgICAgICAgICAgICAgICAgICgweDFGVSA8PCBBRENfU1FSM19TUTE2X1BvcykgICAgICAvKiE8IDB4MDAwRjgwMDAgKi8NCiNkZWZpbmUgQURDX1NRUjNfU1ExNiAgICAgICAgICAgICAgICAgICAgICAgIEFEQ19TUVIzX1NRMTZfTXNrICAgICAgICAgICAgICAgICAvKiE8IEFEQyBncm91cCByZWd1bGFyIHNlcXVlbmNlciByYW5rIDE2ICovDQojZGVmaW5lIEFEQ19TUVIzX1NRMTZfMCAgICAgICAgICAgICAgICAgICAgICAoMHgwMVUgPDwgQURDX1NRUjNfU1ExNl9Qb3MpICAgICAgLyohPCAweDAwMDA4MDAwICovDQojZGVmaW5lIEFEQ19TUVIzX1NRMTZfMSAgICAgICAgICAgICAgICAgICAgICAoMHgwMlUgPDwgQURDX1NRUjNfU1ExNl9Qb3MpICAgICAgLyohPCAweDAwMDEwMDAwICovDQojZGVmaW5lIEFEQ19TUVIzX1NRMTZfMiAgICAgICAgICAgICAgICAgICAgICAoMHgwNFUgPDwgQURDX1NRUjNfU1ExNl9Qb3MpICAgICAgLyohPCAweDAwMDIwMDAwICovDQojZGVmaW5lIEFEQ19TUVIzX1NRMTZfMyAgICAgICAgICAgICAgICAgICAgICAoMHgwOFUgPDwgQURDX1NRUjNfU1ExNl9Qb3MpICAgICAgLyohPCAweDAwMDQwMDAwICovDQojZGVmaW5lIEFEQ19TUVIzX1NRMTZfNCAgICAgICAgICAgICAgICAgICAgICAoMHgxMFUgPDwgQURDX1NRUjNfU1ExNl9Qb3MpICAgICAgLyohPCAweDAwMDgwMDAwICovDQoNCiNkZWZpbmUgQURDX1NRUjNfU1ExN19Qb3MgICAgICAgICAgICAgICAgICAgICgyMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgQURDX1NRUjNfU1ExN19Nc2sgICAgICAgICAgICAgICAgICAgICgweDFGVSA8PCBBRENfU1FSM19TUTE3X1BvcykgICAgICAvKiE8IDB4MDFGMDAwMDAgKi8NCiNkZWZpbmUgQURDX1NRUjNfU1ExNyAgICAgICAgICAgICAgICAgICAgICAgIEFEQ19TUVIzX1NRMTdfTXNrICAgICAgICAgICAgICAgICAvKiE8IEFEQyBncm91cCByZWd1bGFyIHNlcXVlbmNlciByYW5rIDE3ICovDQojZGVmaW5lIEFEQ19TUVIzX1NRMTdfMCAgICAgICAgICAgICAgICAgICAgICAoMHgwMVUgPDwgQURDX1NRUjNfU1ExN19Qb3MpICAgICAgLyohPCAweDAwMTAwMDAwICovDQojZGVmaW5lIEFEQ19TUVIzX1NRMTdfMSAgICAgICAgICAgICAgICAgICAgICAoMHgwMlUgPDwgQURDX1NRUjNfU1ExN19Qb3MpICAgICAgLyohPCAweDAwMjAwMDAwICovDQojZGVmaW5lIEFEQ19TUVIzX1NRMTdfMiAgICAgICAgICAgICAgICAgICAgICAoMHgwNFUgPDwgQURDX1NRUjNfU1ExN19Qb3MpICAgICAgLyohPCAweDAwNDAwMDAwICovDQojZGVmaW5lIEFEQ19TUVIzX1NRMTdfMyAgICAgICAgICAgICAgICAgICAgICAoMHgwOFUgPDwgQURDX1NRUjNfU1ExN19Qb3MpICAgICAgLyohPCAweDAwODAwMDAwICovDQojZGVmaW5lIEFEQ19TUVIzX1NRMTdfNCAgICAgICAgICAgICAgICAgICAgICAoMHgxMFUgPDwgQURDX1NRUjNfU1ExN19Qb3MpICAgICAgLyohPCAweDAxMDAwMDAwICovDQoNCiNkZWZpbmUgQURDX1NRUjNfU1ExOF9Qb3MgICAgICAgICAgICAgICAgICAgICgyNVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgQURDX1NRUjNfU1ExOF9Nc2sgICAgICAgICAgICAgICAgICAgICgweDFGVSA8PCBBRENfU1FSM19TUTE4X1BvcykgICAgICAvKiE8IDB4M0UwMDAwMDAgKi8NCiNkZWZpbmUgQURDX1NRUjNfU1ExOCAgICAgICAgICAgICAgICAgICAgICAgIEFEQ19TUVIzX1NRMThfTXNrICAgICAgICAgICAgICAgICAvKiE8IEFEQyBncm91cCByZWd1bGFyIHNlcXVlbmNlciByYW5rIDE4ICovDQojZGVmaW5lIEFEQ19TUVIzX1NRMThfMCAgICAgICAgICAgICAgICAgICAgICAoMHgwMVUgPDwgQURDX1NRUjNfU1ExOF9Qb3MpICAgICAgLyohPCAweDAyMDAwMDAwICovDQojZGVmaW5lIEFEQ19TUVIzX1NRMThfMSAgICAgICAgICAgICAgICAgICAgICAoMHgwMlUgPDwgQURDX1NRUjNfU1ExOF9Qb3MpICAgICAgLyohPCAweDA0MDAwMDAwICovDQojZGVmaW5lIEFEQ19TUVIzX1NRMThfMiAgICAgICAgICAgICAgICAgICAgICAoMHgwNFUgPDwgQURDX1NRUjNfU1ExOF9Qb3MpICAgICAgLyohPCAweDA4MDAwMDAwICovDQojZGVmaW5lIEFEQ19TUVIzX1NRMThfMyAgICAgICAgICAgICAgICAgICAgICAoMHgwOFUgPDwgQURDX1NRUjNfU1ExOF9Qb3MpICAgICAgLyohPCAweDEwMDAwMDAwICovDQojZGVmaW5lIEFEQ19TUVIzX1NRMThfNCAgICAgICAgICAgICAgICAgICAgICAoMHgxMFUgPDwgQURDX1NRUjNfU1ExOF9Qb3MpICAgICAgLyohPCAweDIwMDAwMDAwICovDQoNCi8qKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgQURDX1NRUjQgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIEFEQ19TUVI0X1NRN19Qb3MgICAgICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEFEQ19TUVI0X1NRN19Nc2sgICAgICAgICAgICAgICAgICAgICAoMHgxRlUgPDwgQURDX1NRUjRfU1E3X1BvcykgICAgICAgLyohPCAweDAwMDAwMDFGICovDQojZGVmaW5lIEFEQ19TUVI0X1NRNyAgICAgICAgICAgICAgICAgICAgICAgICBBRENfU1FSNF9TUTdfTXNrICAgICAgICAgICAgICAgICAgLyohPCBBREMgZ3JvdXAgcmVndWxhciBzZXF1ZW5jZXIgcmFuayA3ICovDQojZGVmaW5lIEFEQ19TUVI0X1NRN18wICAgICAgICAgICAgICAgICAgICAgICAoMHgwMVUgPDwgQURDX1NRUjRfU1E3X1BvcykgICAgICAgLyohPCAweDAwMDAwMDAxICovDQojZGVmaW5lIEFEQ19TUVI0X1NRN18xICAgICAgICAgICAgICAgICAgICAgICAoMHgwMlUgPDwgQURDX1NRUjRfU1E3X1BvcykgICAgICAgLyohPCAweDAwMDAwMDAyICovDQojZGVmaW5lIEFEQ19TUVI0X1NRN18yICAgICAgICAgICAgICAgICAgICAgICAoMHgwNFUgPDwgQURDX1NRUjRfU1E3X1BvcykgICAgICAgLyohPCAweDAwMDAwMDA0ICovDQojZGVmaW5lIEFEQ19TUVI0X1NRN18zICAgICAgICAgICAgICAgICAgICAgICAoMHgwOFUgPDwgQURDX1NRUjRfU1E3X1BvcykgICAgICAgLyohPCAweDAwMDAwMDA4ICovDQojZGVmaW5lIEFEQ19TUVI0X1NRN180ICAgICAgICAgICAgICAgICAgICAgICAoMHgxMFUgPDwgQURDX1NRUjRfU1E3X1BvcykgICAgICAgLyohPCAweDAwMDAwMDEwICovDQoNCiNkZWZpbmUgQURDX1NRUjRfU1E4X1BvcyAgICAgICAgICAgICAgICAgICAgICg1VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgQURDX1NRUjRfU1E4X01zayAgICAgICAgICAgICAgICAgICAgICgweDFGVSA8PCBBRENfU1FSNF9TUThfUG9zKSAgICAgICAvKiE8IDB4MDAwMDAzRTAgKi8NCiNkZWZpbmUgQURDX1NRUjRfU1E4ICAgICAgICAgICAgICAgICAgICAgICAgIEFEQ19TUVI0X1NROF9Nc2sgICAgICAgICAgICAgICAgICAvKiE8IEFEQyBncm91cCByZWd1bGFyIHNlcXVlbmNlciByYW5rIDggKi8NCiNkZWZpbmUgQURDX1NRUjRfU1E4XzAgICAgICAgICAgICAgICAgICAgICAgICgweDAxVSA8PCBBRENfU1FSNF9TUThfUG9zKSAgICAgICAvKiE8IDB4MDAwMDAwMjAgKi8NCiNkZWZpbmUgQURDX1NRUjRfU1E4XzEgICAgICAgICAgICAgICAgICAgICAgICgweDAyVSA8PCBBRENfU1FSNF9TUThfUG9zKSAgICAgICAvKiE8IDB4MDAwMDAwNDAgKi8NCiNkZWZpbmUgQURDX1NRUjRfU1E4XzIgICAgICAgICAgICAgICAgICAgICAgICgweDA0VSA8PCBBRENfU1FSNF9TUThfUG9zKSAgICAgICAvKiE8IDB4MDAwMDAwODAgKi8NCiNkZWZpbmUgQURDX1NRUjRfU1E4XzMgICAgICAgICAgICAgICAgICAgICAgICgweDA4VSA8PCBBRENfU1FSNF9TUThfUG9zKSAgICAgICAvKiE8IDB4MDAwMDAxMDAgKi8NCiNkZWZpbmUgQURDX1NRUjRfU1E4XzQgICAgICAgICAgICAgICAgICAgICAgICgweDEwVSA8PCBBRENfU1FSNF9TUThfUG9zKSAgICAgICAvKiE8IDB4MDAwMDAyMDAgKi8NCg0KI2RlZmluZSBBRENfU1FSNF9TUTlfUG9zICAgICAgICAgICAgICAgICAgICAgKDEwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBBRENfU1FSNF9TUTlfTXNrICAgICAgICAgICAgICAgICAgICAgKDB4MUZVIDw8IEFEQ19TUVI0X1NROV9Qb3MpICAgICAgIC8qITwgMHgwMDAwN0MwMCAqLw0KI2RlZmluZSBBRENfU1FSNF9TUTkgICAgICAgICAgICAgICAgICAgICAgICAgQURDX1NRUjRfU1E5X01zayAgICAgICAgICAgICAgICAgIC8qITwgQURDIGdyb3VwIHJlZ3VsYXIgc2VxdWVuY2VyIHJhbmsgOSAqLw0KI2RlZmluZSBBRENfU1FSNF9TUTlfMCAgICAgICAgICAgICAgICAgICAgICAgKDB4MDFVIDw8IEFEQ19TUVI0X1NROV9Qb3MpICAgICAgIC8qITwgMHgwMDAwMDQwMCAqLw0KI2RlZmluZSBBRENfU1FSNF9TUTlfMSAgICAgICAgICAgICAgICAgICAgICAgKDB4MDJVIDw8IEFEQ19TUVI0X1NROV9Qb3MpICAgICAgIC8qITwgMHgwMDAwMDgwMCAqLw0KI2RlZmluZSBBRENfU1FSNF9TUTlfMiAgICAgICAgICAgICAgICAgICAgICAgKDB4MDRVIDw8IEFEQ19TUVI0X1NROV9Qb3MpICAgICAgIC8qITwgMHgwMDAwMTAwMCAqLw0KI2RlZmluZSBBRENfU1FSNF9TUTlfMyAgICAgICAgICAgICAgICAgICAgICAgKDB4MDhVIDw8IEFEQ19TUVI0X1NROV9Qb3MpICAgICAgIC8qITwgMHgwMDAwMjAwMCAqLw0KI2RlZmluZSBBRENfU1FSNF9TUTlfNCAgICAgICAgICAgICAgICAgICAgICAgKDB4MTBVIDw8IEFEQ19TUVI0X1NROV9Qb3MpICAgICAgIC8qITwgMHgwMDAwNDAwMCAqLw0KDQojZGVmaW5lIEFEQ19TUVI0X1NRMTBfUG9zICAgICAgICAgICAgICAgICAgICAoMTVVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEFEQ19TUVI0X1NRMTBfTXNrICAgICAgICAgICAgICAgICAgICAoMHgxRlUgPDwgQURDX1NRUjRfU1ExMF9Qb3MpICAgICAgLyohPCAweDAwMEY4MDAwICovDQojZGVmaW5lIEFEQ19TUVI0X1NRMTAgICAgICAgICAgICAgICAgICAgICAgICBBRENfU1FSNF9TUTEwX01zayAgICAgICAgICAgICAgICAgLyohPCBBREMgZ3JvdXAgcmVndWxhciBzZXF1ZW5jZXIgcmFuayAxMCAqLw0KI2RlZmluZSBBRENfU1FSNF9TUTEwXzAgICAgICAgICAgICAgICAgICAgICAgKDB4MDFVIDw8IEFEQ19TUVI0X1NRMTBfUG9zKSAgICAgIC8qITwgMHgwMDAwODAwMCAqLw0KI2RlZmluZSBBRENfU1FSNF9TUTEwXzEgICAgICAgICAgICAgICAgICAgICAgKDB4MDJVIDw8IEFEQ19TUVI0X1NRMTBfUG9zKSAgICAgIC8qITwgMHgwMDAxMDAwMCAqLw0KI2RlZmluZSBBRENfU1FSNF9TUTEwXzIgICAgICAgICAgICAgICAgICAgICAgKDB4MDRVIDw8IEFEQ19TUVI0X1NRMTBfUG9zKSAgICAgIC8qITwgMHgwMDAyMDAwMCAqLw0KI2RlZmluZSBBRENfU1FSNF9TUTEwXzMgICAgICAgICAgICAgICAgICAgICAgKDB4MDhVIDw8IEFEQ19TUVI0X1NRMTBfUG9zKSAgICAgIC8qITwgMHgwMDA0MDAwMCAqLw0KI2RlZmluZSBBRENfU1FSNF9TUTEwXzQgICAgICAgICAgICAgICAgICAgICAgKDB4MTBVIDw8IEFEQ19TUVI0X1NRMTBfUG9zKSAgICAgIC8qITwgMHgwMDA4MDAwMCAqLw0KDQojZGVmaW5lIEFEQ19TUVI0X1NRMTFfUG9zICAgICAgICAgICAgICAgICAgICAoMjBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEFEQ19TUVI0X1NRMTFfTXNrICAgICAgICAgICAgICAgICAgICAoMHgxRlUgPDwgQURDX1NRUjRfU1ExMV9Qb3MpICAgICAgLyohPCAweDAxRjAwMDAwICovDQojZGVmaW5lIEFEQ19TUVI0X1NRMTEgICAgICAgICAgICAgICAgICAgICAgICBBRENfU1FSNF9TUTExX01zayAgICAgICAgICAgICAgICAgLyohPCBBREMgZ3JvdXAgcmVndWxhciBzZXF1ZW5jZXIgcmFuayAxMSAqLw0KI2RlZmluZSBBRENfU1FSNF9TUTExXzAgICAgICAgICAgICAgICAgICAgICAgKDB4MDFVIDw8IEFEQ19TUVI0X1NRMTFfUG9zKSAgICAgIC8qITwgMHgwMDEwMDAwMCAqLw0KI2RlZmluZSBBRENfU1FSNF9TUTExXzEgICAgICAgICAgICAgICAgICAgICAgKDB4MDJVIDw8IEFEQ19TUVI0X1NRMTFfUG9zKSAgICAgIC8qITwgMHgwMDIwMDAwMCAqLw0KI2RlZmluZSBBRENfU1FSNF9TUTExXzIgICAgICAgICAgICAgICAgICAgICAgKDB4MDRVIDw8IEFEQ19TUVI0X1NRMTFfUG9zKSAgICAgIC8qITwgMHgwMDQwMDAwMCAqLw0KI2RlZmluZSBBRENfU1FSNF9TUTExXzMgICAgICAgICAgICAgICAgICAgICAgKDB4MDhVIDw8IEFEQ19TUVI0X1NRMTFfUG9zKSAgICAgIC8qITwgMHgwMDgwMDAwMCAqLw0KI2RlZmluZSBBRENfU1FSNF9TUTExXzQgICAgICAgICAgICAgICAgICAgICAgKDB4MTBVIDw8IEFEQ19TUVI0X1NRMTFfUG9zKSAgICAgIC8qITwgMHgwMTAwMDAwMCAqLw0KDQojZGVmaW5lIEFEQ19TUVI0X1NRMTJfUG9zICAgICAgICAgICAgICAgICAgICAoMjVVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEFEQ19TUVI0X1NRMTJfTXNrICAgICAgICAgICAgICAgICAgICAoMHgxRlUgPDwgQURDX1NRUjRfU1ExMl9Qb3MpICAgICAgLyohPCAweDNFMDAwMDAwICovDQojZGVmaW5lIEFEQ19TUVI0X1NRMTIgICAgICAgICAgICAgICAgICAgICAgICBBRENfU1FSNF9TUTEyX01zayAgICAgICAgICAgICAgICAgLyohPCBBREMgZ3JvdXAgcmVndWxhciBzZXF1ZW5jZXIgcmFuayAxMiAqLw0KI2RlZmluZSBBRENfU1FSNF9TUTEyXzAgICAgICAgICAgICAgICAgICAgICAgKDB4MDFVIDw8IEFEQ19TUVI0X1NRMTJfUG9zKSAgICAgIC8qITwgMHgwMjAwMDAwMCAqLw0KI2RlZmluZSBBRENfU1FSNF9TUTEyXzEgICAgICAgICAgICAgICAgICAgICAgKDB4MDJVIDw8IEFEQ19TUVI0X1NRMTJfUG9zKSAgICAgIC8qITwgMHgwNDAwMDAwMCAqLw0KI2RlZmluZSBBRENfU1FSNF9TUTEyXzIgICAgICAgICAgICAgICAgICAgICAgKDB4MDRVIDw8IEFEQ19TUVI0X1NRMTJfUG9zKSAgICAgIC8qITwgMHgwODAwMDAwMCAqLw0KI2RlZmluZSBBRENfU1FSNF9TUTEyXzMgICAgICAgICAgICAgICAgICAgICAgKDB4MDhVIDw8IEFEQ19TUVI0X1NRMTJfUG9zKSAgICAgIC8qITwgMHgxMDAwMDAwMCAqLw0KI2RlZmluZSBBRENfU1FSNF9TUTEyXzQgICAgICAgICAgICAgICAgICAgICAgKDB4MTBVIDw8IEFEQ19TUVI0X1NRMTJfUG9zKSAgICAgIC8qITwgMHgyMDAwMDAwMCAqLw0KDQovKioqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIEFEQ19TUVI1IHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBBRENfU1FSNV9TUTFfUG9zICAgICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBBRENfU1FSNV9TUTFfTXNrICAgICAgICAgICAgICAgICAgICAgKDB4MUZVIDw8IEFEQ19TUVI1X1NRMV9Qb3MpICAgICAgIC8qITwgMHgwMDAwMDAxRiAqLw0KI2RlZmluZSBBRENfU1FSNV9TUTEgICAgICAgICAgICAgICAgICAgICAgICAgQURDX1NRUjVfU1ExX01zayAgICAgICAgICAgICAgICAgIC8qITwgQURDIGdyb3VwIHJlZ3VsYXIgc2VxdWVuY2VyIHJhbmsgMSAqLw0KI2RlZmluZSBBRENfU1FSNV9TUTFfMCAgICAgICAgICAgICAgICAgICAgICAgKDB4MDFVIDw8IEFEQ19TUVI1X1NRMV9Qb3MpICAgICAgIC8qITwgMHgwMDAwMDAwMSAqLw0KI2RlZmluZSBBRENfU1FSNV9TUTFfMSAgICAgICAgICAgICAgICAgICAgICAgKDB4MDJVIDw8IEFEQ19TUVI1X1NRMV9Qb3MpICAgICAgIC8qITwgMHgwMDAwMDAwMiAqLw0KI2RlZmluZSBBRENfU1FSNV9TUTFfMiAgICAgICAgICAgICAgICAgICAgICAgKDB4MDRVIDw8IEFEQ19TUVI1X1NRMV9Qb3MpICAgICAgIC8qITwgMHgwMDAwMDAwNCAqLw0KI2RlZmluZSBBRENfU1FSNV9TUTFfMyAgICAgICAgICAgICAgICAgICAgICAgKDB4MDhVIDw8IEFEQ19TUVI1X1NRMV9Qb3MpICAgICAgIC8qITwgMHgwMDAwMDAwOCAqLw0KI2RlZmluZSBBRENfU1FSNV9TUTFfNCAgICAgICAgICAgICAgICAgICAgICAgKDB4MTBVIDw8IEFEQ19TUVI1X1NRMV9Qb3MpICAgICAgIC8qITwgMHgwMDAwMDAxMCAqLw0KDQojZGVmaW5lIEFEQ19TUVI1X1NRMl9Qb3MgICAgICAgICAgICAgICAgICAgICAoNVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEFEQ19TUVI1X1NRMl9Nc2sgICAgICAgICAgICAgICAgICAgICAoMHgxRlUgPDwgQURDX1NRUjVfU1EyX1BvcykgICAgICAgLyohPCAweDAwMDAwM0UwICovDQojZGVmaW5lIEFEQ19TUVI1X1NRMiAgICAgICAgICAgICAgICAgICAgICAgICBBRENfU1FSNV9TUTJfTXNrICAgICAgICAgICAgICAgICAgLyohPCBBREMgZ3JvdXAgcmVndWxhciBzZXF1ZW5jZXIgcmFuayAyICovDQojZGVmaW5lIEFEQ19TUVI1X1NRMl8wICAgICAgICAgICAgICAgICAgICAgICAoMHgwMVUgPDwgQURDX1NRUjVfU1EyX1BvcykgICAgICAgLyohPCAweDAwMDAwMDIwICovDQojZGVmaW5lIEFEQ19TUVI1X1NRMl8xICAgICAgICAgICAgICAgICAgICAgICAoMHgwMlUgPDwgQURDX1NRUjVfU1EyX1BvcykgICAgICAgLyohPCAweDAwMDAwMDQwICovDQojZGVmaW5lIEFEQ19TUVI1X1NRMl8yICAgICAgICAgICAgICAgICAgICAgICAoMHgwNFUgPDwgQURDX1NRUjVfU1EyX1BvcykgICAgICAgLyohPCAweDAwMDAwMDgwICovDQojZGVmaW5lIEFEQ19TUVI1X1NRMl8zICAgICAgICAgICAgICAgICAgICAgICAoMHgwOFUgPDwgQURDX1NRUjVfU1EyX1BvcykgICAgICAgLyohPCAweDAwMDAwMTAwICovDQojZGVmaW5lIEFEQ19TUVI1X1NRMl80ICAgICAgICAgICAgICAgICAgICAgICAoMHgxMFUgPDwgQURDX1NRUjVfU1EyX1BvcykgICAgICAgLyohPCAweDAwMDAwMjAwICovDQoNCiNkZWZpbmUgQURDX1NRUjVfU1EzX1BvcyAgICAgICAgICAgICAgICAgICAgICgxMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgQURDX1NRUjVfU1EzX01zayAgICAgICAgICAgICAgICAgICAgICgweDFGVSA8PCBBRENfU1FSNV9TUTNfUG9zKSAgICAgICAvKiE8IDB4MDAwMDdDMDAgKi8NCiNkZWZpbmUgQURDX1NRUjVfU1EzICAgICAgICAgICAgICAgICAgICAgICAgIEFEQ19TUVI1X1NRM19Nc2sgICAgICAgICAgICAgICAgICAvKiE8IEFEQyBncm91cCByZWd1bGFyIHNlcXVlbmNlciByYW5rIDMgKi8NCiNkZWZpbmUgQURDX1NRUjVfU1EzXzAgICAgICAgICAgICAgICAgICAgICAgICgweDAxVSA8PCBBRENfU1FSNV9TUTNfUG9zKSAgICAgICAvKiE8IDB4MDAwMDA0MDAgKi8NCiNkZWZpbmUgQURDX1NRUjVfU1EzXzEgICAgICAgICAgICAgICAgICAgICAgICgweDAyVSA8PCBBRENfU1FSNV9TUTNfUG9zKSAgICAgICAvKiE8IDB4MDAwMDA4MDAgKi8NCiNkZWZpbmUgQURDX1NRUjVfU1EzXzIgICAgICAgICAgICAgICAgICAgICAgICgweDA0VSA8PCBBRENfU1FSNV9TUTNfUG9zKSAgICAgICAvKiE8IDB4MDAwMDEwMDAgKi8NCiNkZWZpbmUgQURDX1NRUjVfU1EzXzMgICAgICAgICAgICAgICAgICAgICAgICgweDA4VSA8PCBBRENfU1FSNV9TUTNfUG9zKSAgICAgICAvKiE8IDB4MDAwMDIwMDAgKi8NCiNkZWZpbmUgQURDX1NRUjVfU1EzXzQgICAgICAgICAgICAgICAgICAgICAgICgweDEwVSA8PCBBRENfU1FSNV9TUTNfUG9zKSAgICAgICAvKiE8IDB4MDAwMDQwMDAgKi8NCg0KI2RlZmluZSBBRENfU1FSNV9TUTRfUG9zICAgICAgICAgICAgICAgICAgICAgKDE1VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBBRENfU1FSNV9TUTRfTXNrICAgICAgICAgICAgICAgICAgICAgKDB4MUZVIDw8IEFEQ19TUVI1X1NRNF9Qb3MpICAgICAgIC8qITwgMHgwMDBGODAwMCAqLw0KI2RlZmluZSBBRENfU1FSNV9TUTQgICAgICAgICAgICAgICAgICAgICAgICAgQURDX1NRUjVfU1E0X01zayAgICAgICAgICAgICAgICAgIC8qITwgQURDIGdyb3VwIHJlZ3VsYXIgc2VxdWVuY2VyIHJhbmsgNCAqLw0KI2RlZmluZSBBRENfU1FSNV9TUTRfMCAgICAgICAgICAgICAgICAgICAgICAgKDB4MDFVIDw8IEFEQ19TUVI1X1NRNF9Qb3MpICAgICAgIC8qITwgMHgwMDAwODAwMCAqLw0KI2RlZmluZSBBRENfU1FSNV9TUTRfMSAgICAgICAgICAgICAgICAgICAgICAgKDB4MDJVIDw8IEFEQ19TUVI1X1NRNF9Qb3MpICAgICAgIC8qITwgMHgwMDAxMDAwMCAqLw0KI2RlZmluZSBBRENfU1FSNV9TUTRfMiAgICAgICAgICAgICAgICAgICAgICAgKDB4MDRVIDw8IEFEQ19TUVI1X1NRNF9Qb3MpICAgICAgIC8qITwgMHgwMDAyMDAwMCAqLw0KI2RlZmluZSBBRENfU1FSNV9TUTRfMyAgICAgICAgICAgICAgICAgICAgICAgKDB4MDhVIDw8IEFEQ19TUVI1X1NRNF9Qb3MpICAgICAgIC8qITwgMHgwMDA0MDAwMCAqLw0KI2RlZmluZSBBRENfU1FSNV9TUTRfNCAgICAgICAgICAgICAgICAgICAgICAgKDB4MTBVIDw8IEFEQ19TUVI1X1NRNF9Qb3MpICAgICAgIC8qITwgMHgwMDA4MDAwMCAqLw0KDQojZGVmaW5lIEFEQ19TUVI1X1NRNV9Qb3MgICAgICAgICAgICAgICAgICAgICAoMjBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEFEQ19TUVI1X1NRNV9Nc2sgICAgICAgICAgICAgICAgICAgICAoMHgxRlUgPDwgQURDX1NRUjVfU1E1X1BvcykgICAgICAgLyohPCAweDAxRjAwMDAwICovDQojZGVmaW5lIEFEQ19TUVI1X1NRNSAgICAgICAgICAgICAgICAgICAgICAgICBBRENfU1FSNV9TUTVfTXNrICAgICAgICAgICAgICAgICAgLyohPCBBREMgZ3JvdXAgcmVndWxhciBzZXF1ZW5jZXIgcmFuayA1ICovDQojZGVmaW5lIEFEQ19TUVI1X1NRNV8wICAgICAgICAgICAgICAgICAgICAgICAoMHgwMVUgPDwgQURDX1NRUjVfU1E1X1BvcykgICAgICAgLyohPCAweDAwMTAwMDAwICovDQojZGVmaW5lIEFEQ19TUVI1X1NRNV8xICAgICAgICAgICAgICAgICAgICAgICAoMHgwMlUgPDwgQURDX1NRUjVfU1E1X1BvcykgICAgICAgLyohPCAweDAwMjAwMDAwICovDQojZGVmaW5lIEFEQ19TUVI1X1NRNV8yICAgICAgICAgICAgICAgICAgICAgICAoMHgwNFUgPDwgQURDX1NRUjVfU1E1X1BvcykgICAgICAgLyohPCAweDAwNDAwMDAwICovDQojZGVmaW5lIEFEQ19TUVI1X1NRNV8zICAgICAgICAgICAgICAgICAgICAgICAoMHgwOFUgPDwgQURDX1NRUjVfU1E1X1BvcykgICAgICAgLyohPCAweDAwODAwMDAwICovDQojZGVmaW5lIEFEQ19TUVI1X1NRNV80ICAgICAgICAgICAgICAgICAgICAgICAoMHgxMFUgPDwgQURDX1NRUjVfU1E1X1BvcykgICAgICAgLyohPCAweDAxMDAwMDAwICovDQoNCiNkZWZpbmUgQURDX1NRUjVfU1E2X1BvcyAgICAgICAgICAgICAgICAgICAgICgyNVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgQURDX1NRUjVfU1E2X01zayAgICAgICAgICAgICAgICAgICAgICgweDFGVSA8PCBBRENfU1FSNV9TUTZfUG9zKSAgICAgICAvKiE8IDB4M0UwMDAwMDAgKi8NCiNkZWZpbmUgQURDX1NRUjVfU1E2ICAgICAgICAgICAgICAgICAgICAgICAgIEFEQ19TUVI1X1NRNl9Nc2sgICAgICAgICAgICAgICAgICAvKiE8IEFEQyBncm91cCByZWd1bGFyIHNlcXVlbmNlciByYW5rIDYgKi8NCiNkZWZpbmUgQURDX1NRUjVfU1E2XzAgICAgICAgICAgICAgICAgICAgICAgICgweDAxVSA8PCBBRENfU1FSNV9TUTZfUG9zKSAgICAgICAvKiE8IDB4MDIwMDAwMDAgKi8NCiNkZWZpbmUgQURDX1NRUjVfU1E2XzEgICAgICAgICAgICAgICAgICAgICAgICgweDAyVSA8PCBBRENfU1FSNV9TUTZfUG9zKSAgICAgICAvKiE8IDB4MDQwMDAwMDAgKi8NCiNkZWZpbmUgQURDX1NRUjVfU1E2XzIgICAgICAgICAgICAgICAgICAgICAgICgweDA0VSA8PCBBRENfU1FSNV9TUTZfUG9zKSAgICAgICAvKiE8IDB4MDgwMDAwMDAgKi8NCiNkZWZpbmUgQURDX1NRUjVfU1E2XzMgICAgICAgICAgICAgICAgICAgICAgICgweDA4VSA8PCBBRENfU1FSNV9TUTZfUG9zKSAgICAgICAvKiE8IDB4MTAwMDAwMDAgKi8NCiNkZWZpbmUgQURDX1NRUjVfU1E2XzQgICAgICAgICAgICAgICAgICAgICAgICgweDEwVSA8PCBBRENfU1FSNV9TUTZfUG9zKSAgICAgICAvKiE8IDB4MjAwMDAwMDAgKi8NCg0KDQovKioqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIEFEQ19KU1FSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBBRENfSlNRUl9KU1ExX1BvcyAgICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBBRENfSlNRUl9KU1ExX01zayAgICAgICAgICAgICAgICAgICAgKDB4MUZVIDw8IEFEQ19KU1FSX0pTUTFfUG9zKSAgICAgIC8qITwgMHgwMDAwMDAxRiAqLw0KI2RlZmluZSBBRENfSlNRUl9KU1ExICAgICAgICAgICAgICAgICAgICAgICAgQURDX0pTUVJfSlNRMV9Nc2sgICAgICAgICAgICAgICAgIC8qITwgQURDIGdyb3VwIGluamVjdGVkIHNlcXVlbmNlciByYW5rIDEgKi8NCiNkZWZpbmUgQURDX0pTUVJfSlNRMV8wICAgICAgICAgICAgICAgICAgICAgICgweDAxVSA8PCBBRENfSlNRUl9KU1ExX1BvcykgICAgICAvKiE8IDB4MDAwMDAwMDEgKi8NCiNkZWZpbmUgQURDX0pTUVJfSlNRMV8xICAgICAgICAgICAgICAgICAgICAgICgweDAyVSA8PCBBRENfSlNRUl9KU1ExX1BvcykgICAgICAvKiE8IDB4MDAwMDAwMDIgKi8NCiNkZWZpbmUgQURDX0pTUVJfSlNRMV8yICAgICAgICAgICAgICAgICAgICAgICgweDA0VSA8PCBBRENfSlNRUl9KU1ExX1BvcykgICAgICAvKiE8IDB4MDAwMDAwMDQgKi8NCiNkZWZpbmUgQURDX0pTUVJfSlNRMV8zICAgICAgICAgICAgICAgICAgICAgICgweDA4VSA8PCBBRENfSlNRUl9KU1ExX1BvcykgICAgICAvKiE8IDB4MDAwMDAwMDggKi8NCiNkZWZpbmUgQURDX0pTUVJfSlNRMV80ICAgICAgICAgICAgICAgICAgICAgICgweDEwVSA8PCBBRENfSlNRUl9KU1ExX1BvcykgICAgICAvKiE8IDB4MDAwMDAwMTAgKi8NCg0KI2RlZmluZSBBRENfSlNRUl9KU1EyX1BvcyAgICAgICAgICAgICAgICAgICAgKDVVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBBRENfSlNRUl9KU1EyX01zayAgICAgICAgICAgICAgICAgICAgKDB4MUZVIDw8IEFEQ19KU1FSX0pTUTJfUG9zKSAgICAgIC8qITwgMHgwMDAwMDNFMCAqLw0KI2RlZmluZSBBRENfSlNRUl9KU1EyICAgICAgICAgICAgICAgICAgICAgICAgQURDX0pTUVJfSlNRMl9Nc2sgICAgICAgICAgICAgICAgIC8qITwgQURDIGdyb3VwIGluamVjdGVkIHNlcXVlbmNlciByYW5rIDIgKi8NCiNkZWZpbmUgQURDX0pTUVJfSlNRMl8wICAgICAgICAgICAgICAgICAgICAgICgweDAxVSA8PCBBRENfSlNRUl9KU1EyX1BvcykgICAgICAvKiE8IDB4MDAwMDAwMjAgKi8NCiNkZWZpbmUgQURDX0pTUVJfSlNRMl8xICAgICAgICAgICAgICAgICAgICAgICgweDAyVSA8PCBBRENfSlNRUl9KU1EyX1BvcykgICAgICAvKiE8IDB4MDAwMDAwNDAgKi8NCiNkZWZpbmUgQURDX0pTUVJfSlNRMl8yICAgICAgICAgICAgICAgICAgICAgICgweDA0VSA8PCBBRENfSlNRUl9KU1EyX1BvcykgICAgICAvKiE8IDB4MDAwMDAwODAgKi8NCiNkZWZpbmUgQURDX0pTUVJfSlNRMl8zICAgICAgICAgICAgICAgICAgICAgICgweDA4VSA8PCBBRENfSlNRUl9KU1EyX1BvcykgICAgICAvKiE8IDB4MDAwMDAxMDAgKi8NCiNkZWZpbmUgQURDX0pTUVJfSlNRMl80ICAgICAgICAgICAgICAgICAgICAgICgweDEwVSA8PCBBRENfSlNRUl9KU1EyX1BvcykgICAgICAvKiE8IDB4MDAwMDAyMDAgKi8NCg0KI2RlZmluZSBBRENfSlNRUl9KU1EzX1BvcyAgICAgICAgICAgICAgICAgICAgKDEwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBBRENfSlNRUl9KU1EzX01zayAgICAgICAgICAgICAgICAgICAgKDB4MUZVIDw8IEFEQ19KU1FSX0pTUTNfUG9zKSAgICAgIC8qITwgMHgwMDAwN0MwMCAqLw0KI2RlZmluZSBBRENfSlNRUl9KU1EzICAgICAgICAgICAgICAgICAgICAgICAgQURDX0pTUVJfSlNRM19Nc2sgICAgICAgICAgICAgICAgIC8qITwgQURDIGdyb3VwIGluamVjdGVkIHNlcXVlbmNlciByYW5rIDMgKi8NCiNkZWZpbmUgQURDX0pTUVJfSlNRM18wICAgICAgICAgICAgICAgICAgICAgICgweDAxVSA8PCBBRENfSlNRUl9KU1EzX1BvcykgICAgICAvKiE8IDB4MDAwMDA0MDAgKi8NCiNkZWZpbmUgQURDX0pTUVJfSlNRM18xICAgICAgICAgICAgICAgICAgICAgICgweDAyVSA8PCBBRENfSlNRUl9KU1EzX1BvcykgICAgICAvKiE8IDB4MDAwMDA4MDAgKi8NCiNkZWZpbmUgQURDX0pTUVJfSlNRM18yICAgICAgICAgICAgICAgICAgICAgICgweDA0VSA8PCBBRENfSlNRUl9KU1EzX1BvcykgICAgICAvKiE8IDB4MDAwMDEwMDAgKi8NCiNkZWZpbmUgQURDX0pTUVJfSlNRM18zICAgICAgICAgICAgICAgICAgICAgICgweDA4VSA8PCBBRENfSlNRUl9KU1EzX1BvcykgICAgICAvKiE8IDB4MDAwMDIwMDAgKi8NCiNkZWZpbmUgQURDX0pTUVJfSlNRM180ICAgICAgICAgICAgICAgICAgICAgICgweDEwVSA8PCBBRENfSlNRUl9KU1EzX1BvcykgICAgICAvKiE8IDB4MDAwMDQwMDAgKi8NCg0KI2RlZmluZSBBRENfSlNRUl9KU1E0X1BvcyAgICAgICAgICAgICAgICAgICAgKDE1VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBBRENfSlNRUl9KU1E0X01zayAgICAgICAgICAgICAgICAgICAgKDB4MUZVIDw8IEFEQ19KU1FSX0pTUTRfUG9zKSAgICAgIC8qITwgMHgwMDBGODAwMCAqLw0KI2RlZmluZSBBRENfSlNRUl9KU1E0ICAgICAgICAgICAgICAgICAgICAgICAgQURDX0pTUVJfSlNRNF9Nc2sgICAgICAgICAgICAgICAgIC8qITwgQURDIGdyb3VwIGluamVjdGVkIHNlcXVlbmNlciByYW5rIDQgKi8NCiNkZWZpbmUgQURDX0pTUVJfSlNRNF8wICAgICAgICAgICAgICAgICAgICAgICgweDAxVSA8PCBBRENfSlNRUl9KU1E0X1BvcykgICAgICAvKiE8IDB4MDAwMDgwMDAgKi8NCiNkZWZpbmUgQURDX0pTUVJfSlNRNF8xICAgICAgICAgICAgICAgICAgICAgICgweDAyVSA8PCBBRENfSlNRUl9KU1E0X1BvcykgICAgICAvKiE8IDB4MDAwMTAwMDAgKi8NCiNkZWZpbmUgQURDX0pTUVJfSlNRNF8yICAgICAgICAgICAgICAgICAgICAgICgweDA0VSA8PCBBRENfSlNRUl9KU1E0X1BvcykgICAgICAvKiE8IDB4MDAwMjAwMDAgKi8NCiNkZWZpbmUgQURDX0pTUVJfSlNRNF8zICAgICAgICAgICAgICAgICAgICAgICgweDA4VSA8PCBBRENfSlNRUl9KU1E0X1BvcykgICAgICAvKiE8IDB4MDAwNDAwMDAgKi8NCiNkZWZpbmUgQURDX0pTUVJfSlNRNF80ICAgICAgICAgICAgICAgICAgICAgICgweDEwVSA8PCBBRENfSlNRUl9KU1E0X1BvcykgICAgICAvKiE8IDB4MDAwODAwMDAgKi8NCg0KI2RlZmluZSBBRENfSlNRUl9KTF9Qb3MgICAgICAgICAgICAgICAgICAgICAgKDIwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBBRENfSlNRUl9KTF9Nc2sgICAgICAgICAgICAgICAgICAgICAgKDB4M1UgPDwgQURDX0pTUVJfSkxfUG9zKSAgICAgICAgIC8qITwgMHgwMDMwMDAwMCAqLw0KI2RlZmluZSBBRENfSlNRUl9KTCAgICAgICAgICAgICAgICAgICAgICAgICAgQURDX0pTUVJfSkxfTXNrICAgICAgICAgICAgICAgICAgIC8qITwgQURDIGdyb3VwIGluamVjdGVkIHNlcXVlbmNlciBzY2FuIGxlbmd0aCAqLw0KI2RlZmluZSBBRENfSlNRUl9KTF8wICAgICAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgQURDX0pTUVJfSkxfUG9zKSAgICAgICAgIC8qITwgMHgwMDEwMDAwMCAqLw0KI2RlZmluZSBBRENfSlNRUl9KTF8xICAgICAgICAgICAgICAgICAgICAgICAgKDB4MlUgPDwgQURDX0pTUVJfSkxfUG9zKSAgICAgICAgIC8qITwgMHgwMDIwMDAwMCAqLw0KDQovKioqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIEFEQ19KRFIxIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBBRENfSkRSMV9KREFUQV9Qb3MgICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBBRENfSkRSMV9KREFUQV9Nc2sgICAgICAgICAgICAgICAgICAgKDB4RkZGRlUgPDwgQURDX0pEUjFfSkRBVEFfUG9zKSAgIC8qITwgMHgwMDAwRkZGRiAqLw0KI2RlZmluZSBBRENfSkRSMV9KREFUQSAgICAgICAgICAgICAgICAgICAgICAgQURDX0pEUjFfSkRBVEFfTXNrICAgICAgICAgICAgICAgIC8qITwgQURDIGdyb3VwIGluamVjdGVkIHNlcXVlbmNlciByYW5rIDEgY29udmVyc2lvbiBkYXRhICovDQoNCi8qKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgQURDX0pEUjIgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIEFEQ19KRFIyX0pEQVRBX1BvcyAgICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEFEQ19KRFIyX0pEQVRBX01zayAgICAgICAgICAgICAgICAgICAoMHhGRkZGVSA8PCBBRENfSkRSMl9KREFUQV9Qb3MpICAgLyohPCAweDAwMDBGRkZGICovDQojZGVmaW5lIEFEQ19KRFIyX0pEQVRBICAgICAgICAgICAgICAgICAgICAgICBBRENfSkRSMl9KREFUQV9Nc2sgICAgICAgICAgICAgICAgLyohPCBBREMgZ3JvdXAgaW5qZWN0ZWQgc2VxdWVuY2VyIHJhbmsgMiBjb252ZXJzaW9uIGRhdGEgKi8NCg0KLyoqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBBRENfSkRSMyByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgQURDX0pEUjNfSkRBVEFfUG9zICAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgQURDX0pEUjNfSkRBVEFfTXNrICAgICAgICAgICAgICAgICAgICgweEZGRkZVIDw8IEFEQ19KRFIzX0pEQVRBX1BvcykgICAvKiE8IDB4MDAwMEZGRkYgKi8NCiNkZWZpbmUgQURDX0pEUjNfSkRBVEEgICAgICAgICAgICAgICAgICAgICAgIEFEQ19KRFIzX0pEQVRBX01zayAgICAgICAgICAgICAgICAvKiE8IEFEQyBncm91cCBpbmplY3RlZCBzZXF1ZW5jZXIgcmFuayAzIGNvbnZlcnNpb24gZGF0YSAqLw0KDQovKioqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIEFEQ19KRFI0IHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBBRENfSkRSNF9KREFUQV9Qb3MgICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBBRENfSkRSNF9KREFUQV9Nc2sgICAgICAgICAgICAgICAgICAgKDB4RkZGRlUgPDwgQURDX0pEUjRfSkRBVEFfUG9zKSAgIC8qITwgMHgwMDAwRkZGRiAqLw0KI2RlZmluZSBBRENfSkRSNF9KREFUQSAgICAgICAgICAgICAgICAgICAgICAgQURDX0pEUjRfSkRBVEFfTXNrICAgICAgICAgICAgICAgIC8qITwgQURDIGdyb3VwIGluamVjdGVkIHNlcXVlbmNlciByYW5rIDQgY29udmVyc2lvbiBkYXRhICovDQoNCi8qKioqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIEFEQ19EUiByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIEFEQ19EUl9EQVRBX1BvcyAgICAgICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEFEQ19EUl9EQVRBX01zayAgICAgICAgICAgICAgICAgICAgICAoMHhGRkZGVSA8PCBBRENfRFJfREFUQV9Qb3MpICAgICAgLyohPCAweDAwMDBGRkZGICovDQojZGVmaW5lIEFEQ19EUl9EQVRBICAgICAgICAgICAgICAgICAgICAgICAgICBBRENfRFJfREFUQV9Nc2sgICAgICAgICAgICAgICAgICAgLyohPCBBREMgZ3JvdXAgcmVndWxhciBjb252ZXJzaW9uIGRhdGEgKi8NCg0KLyoqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBBRENfQ1NSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgQURDX0NTUl9BV0QxX1BvcyAgICAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgQURDX0NTUl9BV0QxX01zayAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IEFEQ19DU1JfQVdEMV9Qb3MpICAgICAgICAvKiE8IDB4MDAwMDAwMDEgKi8NCiNkZWZpbmUgQURDX0NTUl9BV0QxICAgICAgICAgICAgICAgICAgICAgICAgIEFEQ19DU1JfQVdEMV9Nc2sgICAgICAgICAgICAgICAgICAvKiE8IEFEQyBtdWx0aW1vZGUgbWFzdGVyIGFuYWxvZyB3YXRjaGRvZyAxIGZsYWcgKi8NCiNkZWZpbmUgQURDX0NTUl9FT0NTMV9Qb3MgICAgICAgICAgICAgICAgICAgICgxVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgQURDX0NTUl9FT0NTMV9Nc2sgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IEFEQ19DU1JfRU9DUzFfUG9zKSAgICAgICAvKiE8IDB4MDAwMDAwMDIgKi8NCiNkZWZpbmUgQURDX0NTUl9FT0NTMSAgICAgICAgICAgICAgICAgICAgICAgIEFEQ19DU1JfRU9DUzFfTXNrICAgICAgICAgICAgICAgICAvKiE8IEFEQyBtdWx0aW1vZGUgbWFzdGVyIGdyb3VwIHJlZ3VsYXIgZW5kIG9mIHVuaXRhcnkgY29udmVyc2lvbiBvciBlbmQgb2Ygc2VxdWVuY2UgY29udmVyc2lvbnMgZmxhZyAqLw0KI2RlZmluZSBBRENfQ1NSX0pFT1MxX1BvcyAgICAgICAgICAgICAgICAgICAgKDJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBBRENfQ1NSX0pFT1MxX01zayAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgQURDX0NTUl9KRU9TMV9Qb3MpICAgICAgIC8qITwgMHgwMDAwMDAwNCAqLw0KI2RlZmluZSBBRENfQ1NSX0pFT1MxICAgICAgICAgICAgICAgICAgICAgICAgQURDX0NTUl9KRU9TMV9Nc2sgICAgICAgICAgICAgICAgIC8qITwgQURDIG11bHRpbW9kZSBtYXN0ZXIgZ3JvdXAgaW5qZWN0ZWQgZW5kIG9mIHNlcXVlbmNlIGNvbnZlcnNpb25zIGZsYWcgKi8NCiNkZWZpbmUgQURDX0NTUl9KU1RSVDFfUG9zICAgICAgICAgICAgICAgICAgICgzVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgQURDX0NTUl9KU1RSVDFfTXNrICAgICAgICAgICAgICAgICAgICgweDFVIDw8IEFEQ19DU1JfSlNUUlQxX1BvcykgICAgICAvKiE8IDB4MDAwMDAwMDggKi8NCiNkZWZpbmUgQURDX0NTUl9KU1RSVDEgICAgICAgICAgICAgICAgICAgICAgIEFEQ19DU1JfSlNUUlQxX01zayAgICAgICAgICAgICAgICAvKiE8IEFEQyBtdWx0aW1vZGUgbWFzdGVyIGdyb3VwIGluamVjdGVkIGNvbnZlcnNpb24gc3RhcnQgZmxhZyAqLw0KI2RlZmluZSBBRENfQ1NSX1NUUlQxX1BvcyAgICAgICAgICAgICAgICAgICAgKDRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBBRENfQ1NSX1NUUlQxX01zayAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgQURDX0NTUl9TVFJUMV9Qb3MpICAgICAgIC8qITwgMHgwMDAwMDAxMCAqLw0KI2RlZmluZSBBRENfQ1NSX1NUUlQxICAgICAgICAgICAgICAgICAgICAgICAgQURDX0NTUl9TVFJUMV9Nc2sgICAgICAgICAgICAgICAgIC8qITwgQURDIG11bHRpbW9kZSBtYXN0ZXIgZ3JvdXAgcmVndWxhciBjb252ZXJzaW9uIHN0YXJ0IGZsYWcgKi8NCiNkZWZpbmUgQURDX0NTUl9PVlIxX1BvcyAgICAgICAgICAgICAgICAgICAgICg1VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgQURDX0NTUl9PVlIxX01zayAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IEFEQ19DU1JfT1ZSMV9Qb3MpICAgICAgICAvKiE8IDB4MDAwMDAwMjAgKi8NCiNkZWZpbmUgQURDX0NTUl9PVlIxICAgICAgICAgICAgICAgICAgICAgICAgIEFEQ19DU1JfT1ZSMV9Nc2sgICAgICAgICAgICAgICAgICAvKiE8IEFEQyBtdWx0aW1vZGUgbWFzdGVyIGdyb3VwIHJlZ3VsYXIgb3ZlcnJ1biBmbGFnICovDQojZGVmaW5lIEFEQ19DU1JfQURPTlMxX1BvcyAgICAgICAgICAgICAgICAgICAoNlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEFEQ19DU1JfQURPTlMxX01zayAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBBRENfQ1NSX0FET05TMV9Qb3MpICAgICAgLyohPCAweDAwMDAwMDQwICovDQojZGVmaW5lIEFEQ19DU1JfQURPTlMxICAgICAgICAgICAgICAgICAgICAgICBBRENfQ1NSX0FET05TMV9Nc2sgICAgICAgICAgICAgICAgLyohPCBBREMgbXVsdGltb2RlIG1hc3RlciByZWFkeSBmbGFnICovDQoNCi8qIExlZ2FjeSBkZWZpbmVzICovDQojZGVmaW5lICBBRENfQ1NSX0VPQzEgICAgICAgICAgICAgICAgICAgICAgICAoQURDX0NTUl9FT0NTMSkNCiNkZWZpbmUgIEFEQ19DU1JfSkVPQzEgICAgICAgICAgICAgICAgICAgICAgIChBRENfQ1NSX0pFT1MxKQ0KDQovKioqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIEFEQ19DQ1IgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBBRENfQ0NSX0FEQ1BSRV9Qb3MgICAgICAgICAgICAgICAgICAgKDE2VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBBRENfQ0NSX0FEQ1BSRV9Nc2sgICAgICAgICAgICAgICAgICAgKDB4M1UgPDwgQURDX0NDUl9BRENQUkVfUG9zKSAgICAgIC8qITwgMHgwMDAzMDAwMCAqLw0KI2RlZmluZSBBRENfQ0NSX0FEQ1BSRSAgICAgICAgICAgICAgICAgICAgICAgQURDX0NDUl9BRENQUkVfTXNrICAgICAgICAgICAgICAgIC8qITwgQURDIGNsb2NrIHNvdXJjZSBhc3luY2hyb25vdXMgcHJlc2NhbGVyICovDQojZGVmaW5lIEFEQ19DQ1JfQURDUFJFXzAgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBBRENfQ0NSX0FEQ1BSRV9Qb3MpICAgICAgLyohPCAweDAwMDEwMDAwICovDQojZGVmaW5lIEFEQ19DQ1JfQURDUFJFXzEgICAgICAgICAgICAgICAgICAgICAoMHgyVSA8PCBBRENfQ0NSX0FEQ1BSRV9Qb3MpICAgICAgLyohPCAweDAwMDIwMDAwICovDQojZGVmaW5lIEFEQ19DQ1JfVFNWUkVGRV9Qb3MgICAgICAgICAgICAgICAgICAoMjNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEFEQ19DQ1JfVFNWUkVGRV9Nc2sgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBBRENfQ0NSX1RTVlJFRkVfUG9zKSAgICAgLyohPCAweDAwODAwMDAwICovDQojZGVmaW5lIEFEQ19DQ1JfVFNWUkVGRSAgICAgICAgICAgICAgICAgICAgICBBRENfQ0NSX1RTVlJFRkVfTXNrICAgICAgICAgICAgICAgLyohPCBBREMgaW50ZXJuYWwgcGF0aCB0byBWcmVmSW50IGFuZCB0ZW1wZXJhdHVyZSBzZW5zb3IgZW5hYmxlICovDQoNCi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovDQovKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLw0KLyogICAgICAgICAgICAgICAgICAgICAgIEFkdmFuY2VkIEVuY3J5cHRpb24gU3RhbmRhcmQgKEFFUykgICAgICAgICAgICAgICAgICAgKi8NCi8qICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovDQovKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLw0KLyoqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBBRVNfQ1IgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgQUVTX0NSX0VOX1BvcyAgICAgICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgQUVTX0NSX0VOX01zayAgICAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgQUVTX0NSX0VOX1BvcykgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDEgKi8NCiNkZWZpbmUgQUVTX0NSX0VOICAgICAgICAgICAgICAgICAgICAgICAgICAgQUVTX0NSX0VOX01zayAgICAgICAgICAgICAgICAgICAgICAvKiE8IEFFUyBFbmFibGUgKi8NCiNkZWZpbmUgQUVTX0NSX0RBVEFUWVBFX1BvcyAgICAgICAgICAgICAgICAgKDFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgQUVTX0NSX0RBVEFUWVBFX01zayAgICAgICAgICAgICAgICAgKDB4M1UgPDwgQUVTX0NSX0RBVEFUWVBFX1BvcykgICAgICAvKiE8IDB4MDAwMDAwMDYgKi8NCiNkZWZpbmUgQUVTX0NSX0RBVEFUWVBFICAgICAgICAgICAgICAgICAgICAgQUVTX0NSX0RBVEFUWVBFX01zayAgICAgICAgICAgICAgICAvKiE8IERhdGEgdHlwZSBzZWxlY3Rpb24gKi8NCiNkZWZpbmUgQUVTX0NSX0RBVEFUWVBFXzAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgQUVTX0NSX0RBVEFUWVBFX1BvcykgICAgICAvKiE8IDB4MDAwMDAwMDIgKi8NCiNkZWZpbmUgQUVTX0NSX0RBVEFUWVBFXzEgICAgICAgICAgICAgICAgICAgKDB4MlUgPDwgQUVTX0NSX0RBVEFUWVBFX1BvcykgICAgICAvKiE8IDB4MDAwMDAwMDQgKi8NCg0KI2RlZmluZSBBRVNfQ1JfTU9ERV9Qb3MgICAgICAgICAgICAgICAgICAgICAoM1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBBRVNfQ1JfTU9ERV9Nc2sgICAgICAgICAgICAgICAgICAgICAoMHgzVSA8PCBBRVNfQ1JfTU9ERV9Qb3MpICAgICAgICAgIC8qITwgMHgwMDAwMDAxOCAqLw0KI2RlZmluZSBBRVNfQ1JfTU9ERSAgICAgICAgICAgICAgICAgICAgICAgICBBRVNfQ1JfTU9ERV9Nc2sgICAgICAgICAgICAgICAgICAgIC8qITwgQUVTIE1vZGUgT2YgT3BlcmF0aW9uICovDQojZGVmaW5lIEFFU19DUl9NT0RFXzAgICAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IEFFU19DUl9NT0RFX1BvcykgICAgICAgICAgLyohPCAweDAwMDAwMDA4ICovDQojZGVmaW5lIEFFU19DUl9NT0RFXzEgICAgICAgICAgICAgICAgICAgICAgICgweDJVIDw8IEFFU19DUl9NT0RFX1BvcykgICAgICAgICAgLyohPCAweDAwMDAwMDEwICovDQoNCiNkZWZpbmUgQUVTX0NSX0NITU9EX1BvcyAgICAgICAgICAgICAgICAgICAgKDVVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgQUVTX0NSX0NITU9EX01zayAgICAgICAgICAgICAgICAgICAgKDB4M1UgPDwgQUVTX0NSX0NITU9EX1BvcykgICAgICAgICAvKiE8IDB4MDAwMDAwNjAgKi8NCiNkZWZpbmUgQUVTX0NSX0NITU9EICAgICAgICAgICAgICAgICAgICAgICAgQUVTX0NSX0NITU9EX01zayAgICAgICAgICAgICAgICAgICAvKiE8IEFFUyBDaGFpbmluZyBNb2RlICovDQojZGVmaW5lIEFFU19DUl9DSE1PRF8wICAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IEFFU19DUl9DSE1PRF9Qb3MpICAgICAgICAgLyohPCAweDAwMDAwMDIwICovDQojZGVmaW5lIEFFU19DUl9DSE1PRF8xICAgICAgICAgICAgICAgICAgICAgICgweDJVIDw8IEFFU19DUl9DSE1PRF9Qb3MpICAgICAgICAgLyohPCAweDAwMDAwMDQwICovDQoNCiNkZWZpbmUgQUVTX0NSX0NDRkNfUG9zICAgICAgICAgICAgICAgICAgICAgKDdVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgQUVTX0NSX0NDRkNfTXNrICAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgQUVTX0NSX0NDRkNfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDAwODAgKi8NCiNkZWZpbmUgQUVTX0NSX0NDRkMgICAgICAgICAgICAgICAgICAgICAgICAgQUVTX0NSX0NDRkNfTXNrICAgICAgICAgICAgICAgICAgICAvKiE8IENvbXB1dGF0aW9uIENvbXBsZXRlIEZsYWcgQ2xlYXIgKi8NCiNkZWZpbmUgQUVTX0NSX0VSUkNfUG9zICAgICAgICAgICAgICAgICAgICAgKDhVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgQUVTX0NSX0VSUkNfTXNrICAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgQUVTX0NSX0VSUkNfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDAxMDAgKi8NCiNkZWZpbmUgQUVTX0NSX0VSUkMgICAgICAgICAgICAgICAgICAgICAgICAgQUVTX0NSX0VSUkNfTXNrICAgICAgICAgICAgICAgICAgICAvKiE8IEVycm9yIENsZWFyICovDQojZGVmaW5lIEFFU19DUl9DQ0lFX1BvcyAgICAgICAgICAgICAgICAgICAgICg5VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEFFU19DUl9DQ0lFX01zayAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IEFFU19DUl9DQ0lFX1BvcykgICAgICAgICAgLyohPCAweDAwMDAwMjAwICovDQojZGVmaW5lIEFFU19DUl9DQ0lFICAgICAgICAgICAgICAgICAgICAgICAgIEFFU19DUl9DQ0lFX01zayAgICAgICAgICAgICAgICAgICAgLyohPCBDb21wdXRhdGlvbiBDb21wbGV0ZSBJbnRlcnJ1cHQgRW5hYmxlICovDQojZGVmaW5lIEFFU19DUl9FUlJJRV9Qb3MgICAgICAgICAgICAgICAgICAgICgxMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEFFU19DUl9FUlJJRV9Nc2sgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IEFFU19DUl9FUlJJRV9Qb3MpICAgICAgICAgLyohPCAweDAwMDAwNDAwICovDQojZGVmaW5lIEFFU19DUl9FUlJJRSAgICAgICAgICAgICAgICAgICAgICAgIEFFU19DUl9FUlJJRV9Nc2sgICAgICAgICAgICAgICAgICAgLyohPCBFcnJvciBJbnRlcnJ1cHQgRW5hYmxlICovDQojZGVmaW5lIEFFU19DUl9ETUFJTkVOX1BvcyAgICAgICAgICAgICAgICAgICgxMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEFFU19DUl9ETUFJTkVOX01zayAgICAgICAgICAgICAgICAgICgweDFVIDw8IEFFU19DUl9ETUFJTkVOX1BvcykgICAgICAgLyohPCAweDAwMDAwODAwICovDQojZGVmaW5lIEFFU19DUl9ETUFJTkVOICAgICAgICAgICAgICAgICAgICAgIEFFU19DUl9ETUFJTkVOX01zayAgICAgICAgICAgICAgICAgLyohPCBETUEgRU5hYmxlIG1hbmFnaW5nIHRoZSBkYXRhIGlucHV0IHBoYXNlICovDQojZGVmaW5lIEFFU19DUl9ETUFPVVRFTl9Qb3MgICAgICAgICAgICAgICAgICgxMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEFFU19DUl9ETUFPVVRFTl9Nc2sgICAgICAgICAgICAgICAgICgweDFVIDw8IEFFU19DUl9ETUFPVVRFTl9Qb3MpICAgICAgLyohPCAweDAwMDAxMDAwICovDQojZGVmaW5lIEFFU19DUl9ETUFPVVRFTiAgICAgICAgICAgICAgICAgICAgIEFFU19DUl9ETUFPVVRFTl9Nc2sgICAgICAgICAgICAgICAgLyohPCBETUEgRW5hYmxlIG1hbmFnaW5nIHRoZSBkYXRhIG91dHB1dCBwaGFzZSAqLw0KDQovKioqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIEFFU19TUiByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBBRVNfU1JfQ0NGX1BvcyAgICAgICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBBRVNfU1JfQ0NGX01zayAgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBBRVNfU1JfQ0NGX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDAwMSAqLw0KI2RlZmluZSBBRVNfU1JfQ0NGICAgICAgICAgICAgICAgICAgICAgICAgICBBRVNfU1JfQ0NGX01zayAgICAgICAgICAgICAgICAgICAgIC8qITwgQ29tcHV0YXRpb24gQ29tcGxldGUgRmxhZyAqLw0KI2RlZmluZSBBRVNfU1JfUkRFUlJfUG9zICAgICAgICAgICAgICAgICAgICAoMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBBRVNfU1JfUkRFUlJfTXNrICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBBRVNfU1JfUkRFUlJfUG9zKSAgICAgICAgIC8qITwgMHgwMDAwMDAwMiAqLw0KI2RlZmluZSBBRVNfU1JfUkRFUlIgICAgICAgICAgICAgICAgICAgICAgICBBRVNfU1JfUkRFUlJfTXNrICAgICAgICAgICAgICAgICAgIC8qITwgUmVhZCBFcnJvciBGbGFnICovDQojZGVmaW5lIEFFU19TUl9XUkVSUl9Qb3MgICAgICAgICAgICAgICAgICAgICgyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEFFU19TUl9XUkVSUl9Nc2sgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IEFFU19TUl9XUkVSUl9Qb3MpICAgICAgICAgLyohPCAweDAwMDAwMDA0ICovDQojZGVmaW5lIEFFU19TUl9XUkVSUiAgICAgICAgICAgICAgICAgICAgICAgIEFFU19TUl9XUkVSUl9Nc2sgICAgICAgICAgICAgICAgICAgLyohPCBXcml0ZSBFcnJvciBGbGFnICovDQoNCi8qKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgQUVTX0RJTlIgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIEFFU19ESU5SX1BvcyAgICAgICAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEFFU19ESU5SX01zayAgICAgICAgICAgICAgICAgICAgICAgICgweEZGRkZVIDw8IEFFU19ESU5SX1BvcykgICAgICAgICAgLyohPCAweDAwMDBGRkZGICovDQojZGVmaW5lIEFFU19ESU5SICAgICAgICAgICAgICAgICAgICAgICAgICAgIEFFU19ESU5SX01zayAgICAgICAgICAgICAgICAgICAgICAgLyohPCBBRVMgRGF0YSBJbnB1dCBSZWdpc3RlciAqLw0KDQovKioqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIEFFU19ET1VUUiByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBBRVNfRE9VVFJfUG9zICAgICAgICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBBRVNfRE9VVFJfTXNrICAgICAgICAgICAgICAgICAgICAgICAoMHhGRkZGVSA8PCBBRVNfRE9VVFJfUG9zKSAgICAgICAgIC8qITwgMHgwMDAwRkZGRiAqLw0KI2RlZmluZSBBRVNfRE9VVFIgICAgICAgICAgICAgICAgICAgICAgICAgICBBRVNfRE9VVFJfTXNrICAgICAgICAgICAgICAgICAgICAgIC8qITwgQUVTIERhdGEgT3V0cHV0IFJlZ2lzdGVyICovDQoNCi8qKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgQUVTX0tFWVIwIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIEFFU19LRVlSMF9Qb3MgICAgICAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEFFU19LRVlSMF9Nc2sgICAgICAgICAgICAgICAgICAgICAgICgweEZGRkZVIDw8IEFFU19LRVlSMF9Qb3MpICAgICAgICAgLyohPCAweDAwMDBGRkZGICovDQojZGVmaW5lIEFFU19LRVlSMCAgICAgICAgICAgICAgICAgICAgICAgICAgIEFFU19LRVlSMF9Nc2sgICAgICAgICAgICAgICAgICAgICAgLyohPCBBRVMgS2V5IFJlZ2lzdGVyIDAgKi8NCg0KLyoqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBBRVNfS0VZUjEgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgQUVTX0tFWVIxX1BvcyAgICAgICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgQUVTX0tFWVIxX01zayAgICAgICAgICAgICAgICAgICAgICAgKDB4RkZGRlUgPDwgQUVTX0tFWVIxX1BvcykgICAgICAgICAvKiE8IDB4MDAwMEZGRkYgKi8NCiNkZWZpbmUgQUVTX0tFWVIxICAgICAgICAgICAgICAgICAgICAgICAgICAgQUVTX0tFWVIxX01zayAgICAgICAgICAgICAgICAgICAgICAvKiE8IEFFUyBLZXkgUmVnaXN0ZXIgMSAqLw0KDQovKioqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIEFFU19LRVlSMiByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBBRVNfS0VZUjJfUG9zICAgICAgICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBBRVNfS0VZUjJfTXNrICAgICAgICAgICAgICAgICAgICAgICAoMHhGRkZGVSA8PCBBRVNfS0VZUjJfUG9zKSAgICAgICAgIC8qITwgMHgwMDAwRkZGRiAqLw0KI2RlZmluZSBBRVNfS0VZUjIgICAgICAgICAgICAgICAgICAgICAgICAgICBBRVNfS0VZUjJfTXNrICAgICAgICAgICAgICAgICAgICAgIC8qITwgQUVTIEtleSBSZWdpc3RlciAyICovDQoNCi8qKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgQUVTX0tFWVIzIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIEFFU19LRVlSM19Qb3MgICAgICAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEFFU19LRVlSM19Nc2sgICAgICAgICAgICAgICAgICAgICAgICgweEZGRkZVIDw8IEFFU19LRVlSM19Qb3MpICAgICAgICAgLyohPCAweDAwMDBGRkZGICovDQojZGVmaW5lIEFFU19LRVlSMyAgICAgICAgICAgICAgICAgICAgICAgICAgIEFFU19LRVlSM19Nc2sgICAgICAgICAgICAgICAgICAgICAgLyohPCBBRVMgS2V5IFJlZ2lzdGVyIDMgKi8NCg0KLyoqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBBRVNfSVZSMCByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgQUVTX0lWUjBfUG9zICAgICAgICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgQUVTX0lWUjBfTXNrICAgICAgICAgICAgICAgICAgICAgICAgKDB4RkZGRlUgPDwgQUVTX0lWUjBfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMEZGRkYgKi8NCiNkZWZpbmUgQUVTX0lWUjAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQUVTX0lWUjBfTXNrICAgICAgICAgICAgICAgICAgICAgICAvKiE8IEFFUyBJbml0aWFsaXphdGlvbiBWZWN0b3IgUmVnaXN0ZXIgMCAqLw0KDQovKioqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIEFFU19JVlIxIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBBRVNfSVZSMV9Qb3MgICAgICAgICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBBRVNfSVZSMV9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAoMHhGRkZGVSA8PCBBRVNfSVZSMV9Qb3MpICAgICAgICAgIC8qITwgMHgwMDAwRkZGRiAqLw0KI2RlZmluZSBBRVNfSVZSMSAgICAgICAgICAgICAgICAgICAgICAgICAgICBBRVNfSVZSMV9Nc2sgICAgICAgICAgICAgICAgICAgICAgIC8qITwgQUVTIEluaXRpYWxpemF0aW9uIFZlY3RvciBSZWdpc3RlciAxICovDQoNCi8qKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgQUVTX0lWUjIgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIEFFU19JVlIyX1BvcyAgICAgICAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEFFU19JVlIyX01zayAgICAgICAgICAgICAgICAgICAgICAgICgweEZGRkZVIDw8IEFFU19JVlIyX1BvcykgICAgICAgICAgLyohPCAweDAwMDBGRkZGICovDQojZGVmaW5lIEFFU19JVlIyICAgICAgICAgICAgICAgICAgICAgICAgICAgIEFFU19JVlIyX01zayAgICAgICAgICAgICAgICAgICAgICAgLyohPCBBRVMgSW5pdGlhbGl6YXRpb24gVmVjdG9yIFJlZ2lzdGVyIDIgKi8NCg0KLyoqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBBRVNfSVZSMyByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgQUVTX0lWUjNfUG9zICAgICAgICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgQUVTX0lWUjNfTXNrICAgICAgICAgICAgICAgICAgICAgICAgKDB4RkZGRlUgPDwgQUVTX0lWUjNfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMEZGRkYgKi8NCiNkZWZpbmUgQUVTX0lWUjMgICAgICAgICAgICAgICAgICAgICAgICAgICAgQUVTX0lWUjNfTXNrICAgICAgICAgICAgICAgICAgICAgICAvKiE8IEFFUyBJbml0aWFsaXphdGlvbiBWZWN0b3IgUmVnaXN0ZXIgMyAqLw0KDQovKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLw0KLyogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8NCi8qICAgICAgICAgICAgICAgICAgICAgIEFuYWxvZyBDb21wYXJhdG9ycyAoQ09NUCkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovDQovKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLw0KLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8NCg0KLyoqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIENPTVBfQ1NSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgQ09NUF9DU1JfMTBLUFUgICAgICAgICAgICAgICAgICAgICAgKDB4MDAwMDAwMDFVKSAgICAgICAgICAgICAgICAgICAgICAvKiE8IENvbXBhcmF0b3IgMSBpbnB1dCBwbHVzIDEwSyBwdWxsLXVwIHJlc2lzdG9yICovDQojZGVmaW5lIENPTVBfQ1NSXzQwMEtQVSAgICAgICAgICAgICAgICAgICAgICgweDAwMDAwMDAyVSkgICAgICAgICAgICAgICAgICAgICAgLyohPCBDb21wYXJhdG9yIDEgaW5wdXQgcGx1cyA0MDBLIHB1bGwtdXAgcmVzaXN0b3IgKi8NCiNkZWZpbmUgQ09NUF9DU1JfMTBLUEQgICAgICAgICAgICAgICAgICAgICAgKDB4MDAwMDAwMDRVKSAgICAgICAgICAgICAgICAgICAgICAvKiE8IENvbXBhcmF0b3IgMSBpbnB1dCBwbHVzIDEwSyBwdWxsLWRvd24gcmVzaXN0b3IgKi8NCiNkZWZpbmUgQ09NUF9DU1JfNDAwS1BEICAgICAgICAgICAgICAgICAgICAgKDB4MDAwMDAwMDhVKSAgICAgICAgICAgICAgICAgICAgICAvKiE8IENvbXBhcmF0b3IgMSBpbnB1dCBwbHVzIDQwMEsgcHVsbC1kb3duIHJlc2lzdG9yICovDQojZGVmaW5lIENPTVBfQ1NSX0NNUDFFTl9Qb3MgICAgICAgICAgICAgICAgICg0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIENPTVBfQ1NSX0NNUDFFTl9Nc2sgICAgICAgICAgICAgICAgICgweDFVIDw8IENPTVBfQ1NSX0NNUDFFTl9Qb3MpICAgICAgLyohPCAweDAwMDAwMDEwICovDQojZGVmaW5lIENPTVBfQ1NSX0NNUDFFTiAgICAgICAgICAgICAgICAgICAgIENPTVBfQ1NSX0NNUDFFTl9Nc2sgICAgICAgICAgICAgICAgLyohPCBDb21wYXJhdG9yIDEgZW5hYmxlICovDQojZGVmaW5lIENPTVBfQ1NSX0NNUDFPVVRfUG9zICAgICAgICAgICAgICAgICg3VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIENPTVBfQ1NSX0NNUDFPVVRfTXNrICAgICAgICAgICAgICAgICgweDFVIDw8IENPTVBfQ1NSX0NNUDFPVVRfUG9zKSAgICAgLyohPCAweDAwMDAwMDgwICovDQojZGVmaW5lIENPTVBfQ1NSX0NNUDFPVVQgICAgICAgICAgICAgICAgICAgIENPTVBfQ1NSX0NNUDFPVVRfTXNrICAgICAgICAgICAgICAgLyohPCBDb21wYXJhdG9yIDEgb3V0cHV0IGxldmVsICovDQojZGVmaW5lIENPTVBfQ1NSX1NQRUVEX1BvcyAgICAgICAgICAgICAgICAgICgxMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIENPTVBfQ1NSX1NQRUVEX01zayAgICAgICAgICAgICAgICAgICgweDFVIDw8IENPTVBfQ1NSX1NQRUVEX1BvcykgICAgICAgLyohPCAweDAwMDAxMDAwICovDQojZGVmaW5lIENPTVBfQ1NSX1NQRUVEICAgICAgICAgICAgICAgICAgICAgIENPTVBfQ1NSX1NQRUVEX01zayAgICAgICAgICAgICAgICAgLyohPCBDb21wYXJhdG9yIDIgcG93ZXIgbW9kZSAqLw0KI2RlZmluZSBDT01QX0NTUl9DTVAyT1VUX1BvcyAgICAgICAgICAgICAgICAoMTNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBDT01QX0NTUl9DTVAyT1VUX01zayAgICAgICAgICAgICAgICAoMHgxVSA8PCBDT01QX0NTUl9DTVAyT1VUX1BvcykgICAgIC8qITwgMHgwMDAwMjAwMCAqLw0KI2RlZmluZSBDT01QX0NTUl9DTVAyT1VUICAgICAgICAgICAgICAgICAgICBDT01QX0NTUl9DTVAyT1VUX01zayAgICAgICAgICAgICAgIC8qITwgQ29tcGFyYXRvciAyIG91dHB1dCBsZXZlbCAqLw0KDQojZGVmaW5lIENPTVBfQ1NSX1dORFdFX1BvcyAgICAgICAgICAgICAgICAgICgxN1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIENPTVBfQ1NSX1dORFdFX01zayAgICAgICAgICAgICAgICAgICgweDFVIDw8IENPTVBfQ1NSX1dORFdFX1BvcykgICAgICAgLyohPCAweDAwMDIwMDAwICovDQojZGVmaW5lIENPTVBfQ1NSX1dORFdFICAgICAgICAgICAgICAgICAgICAgIENPTVBfQ1NSX1dORFdFX01zayAgICAgICAgICAgICAgICAgLyohPCBQYWlyIG9mIGNvbXBhcmF0b3JzIHdpbmRvdyBtb2RlLiBCaXQgaW50ZW5kZWQgdG8gYmUgdXNlZCB3aXRoIENPTVAgY29tbW9uIGluc3RhbmNlIChDT01QX0NvbW1vbl9UeXBlRGVmKSAgKi8NCg0KI2RlZmluZSBDT01QX0NTUl9JTlNFTF9Qb3MgICAgICAgICAgICAgICAgICAoMThVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBDT01QX0NTUl9JTlNFTF9Nc2sgICAgICAgICAgICAgICAgICAoMHg3VSA8PCBDT01QX0NTUl9JTlNFTF9Qb3MpICAgICAgIC8qITwgMHgwMDFDMDAwMCAqLw0KI2RlZmluZSBDT01QX0NTUl9JTlNFTCAgICAgICAgICAgICAgICAgICAgICBDT01QX0NTUl9JTlNFTF9Nc2sgICAgICAgICAgICAgICAgIC8qITwgQ29tcGFyYXRvciAyIGlucHV0IG1pbnVzIHNlbGVjdGlvbiAqLw0KI2RlZmluZSBDT01QX0NTUl9JTlNFTF8wICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBDT01QX0NTUl9JTlNFTF9Qb3MpICAgICAgIC8qITwgMHgwMDA0MDAwMCAqLw0KI2RlZmluZSBDT01QX0NTUl9JTlNFTF8xICAgICAgICAgICAgICAgICAgICAoMHgyVSA8PCBDT01QX0NTUl9JTlNFTF9Qb3MpICAgICAgIC8qITwgMHgwMDA4MDAwMCAqLw0KI2RlZmluZSBDT01QX0NTUl9JTlNFTF8yICAgICAgICAgICAgICAgICAgICAoMHg0VSA8PCBDT01QX0NTUl9JTlNFTF9Qb3MpICAgICAgIC8qITwgMHgwMDEwMDAwMCAqLw0KI2RlZmluZSBDT01QX0NTUl9PVVRTRUxfUG9zICAgICAgICAgICAgICAgICAoMjFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBDT01QX0NTUl9PVVRTRUxfTXNrICAgICAgICAgICAgICAgICAoMHg3VSA8PCBDT01QX0NTUl9PVVRTRUxfUG9zKSAgICAgIC8qITwgMHgwMEUwMDAwMCAqLw0KI2RlZmluZSBDT01QX0NTUl9PVVRTRUwgICAgICAgICAgICAgICAgICAgICBDT01QX0NTUl9PVVRTRUxfTXNrICAgICAgICAgICAgICAgIC8qITwgQ29tcGFyYXRvciAyIG91dHB1dCByZWRpcmVjdGlvbiAqLw0KI2RlZmluZSBDT01QX0NTUl9PVVRTRUxfMCAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBDT01QX0NTUl9PVVRTRUxfUG9zKSAgICAgIC8qITwgMHgwMDIwMDAwMCAqLw0KI2RlZmluZSBDT01QX0NTUl9PVVRTRUxfMSAgICAgICAgICAgICAgICAgICAoMHgyVSA8PCBDT01QX0NTUl9PVVRTRUxfUG9zKSAgICAgIC8qITwgMHgwMDQwMDAwMCAqLw0KI2RlZmluZSBDT01QX0NTUl9PVVRTRUxfMiAgICAgICAgICAgICAgICAgICAoMHg0VSA8PCBDT01QX0NTUl9PVVRTRUxfUG9zKSAgICAgIC8qITwgMHgwMDgwMDAwMCAqLw0KDQovKiBCaXRzIHByZXNlbnQgaW4gQ09NUCByZWdpc3RlciBidXQgbm90IHJlbGF0ZWQgdG8gY29tcGFyYXRvciAqLw0KLyogKG9yIHBhcnRpYWxseSByZWxhdGVkIHRvIGNvbXBhcmF0b3IsIGluIGFkZGl0aW9uIHRvIG90aGVyIHBlcmlwaGVyYWxzKSAqLw0KI2RlZmluZSBDT01QX0NTUl9WUkVGT1VURU5fUG9zICAgICAgICAgICAgICAoMTZVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBDT01QX0NTUl9WUkVGT1VURU5fTXNrICAgICAgICAgICAgICAoMHgxVSA8PCBDT01QX0NTUl9WUkVGT1VURU5fUG9zKSAgIC8qITwgMHgwMDAxMDAwMCAqLw0KI2RlZmluZSBDT01QX0NTUl9WUkVGT1VURU4gICAgICAgICAgICAgICAgICBDT01QX0NTUl9WUkVGT1VURU5fTXNrICAgICAgICAgICAgIC8qITwgVnJlZkludCBvdXRwdXQgZW5hYmxlIG9uIEdQSU8gZ3JvdXAgMyAqLw0KDQojZGVmaW5lIENPTVBfQ1NSX0ZDSDNfUG9zICAgICAgICAgICAgICAgICAgICgyNlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIENPTVBfQ1NSX0ZDSDNfTXNrICAgICAgICAgICAgICAgICAgICgweDFVIDw8IENPTVBfQ1NSX0ZDSDNfUG9zKSAgICAgICAgLyohPCAweDA0MDAwMDAwICovDQojZGVmaW5lIENPTVBfQ1NSX0ZDSDMgICAgICAgICAgICAgICAgICAgICAgIENPTVBfQ1NSX0ZDSDNfTXNrICAgICAgICAgICAgICAgICAgLyohPCBCaXQgMjYgKi8NCiNkZWZpbmUgQ09NUF9DU1JfRkNIOF9Qb3MgICAgICAgICAgICAgICAgICAgKDI3VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgQ09NUF9DU1JfRkNIOF9Nc2sgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgQ09NUF9DU1JfRkNIOF9Qb3MpICAgICAgICAvKiE8IDB4MDgwMDAwMDAgKi8NCiNkZWZpbmUgQ09NUF9DU1JfRkNIOCAgICAgICAgICAgICAgICAgICAgICAgQ09NUF9DU1JfRkNIOF9Nc2sgICAgICAgICAgICAgICAgICAvKiE8IEJpdCAyNyAqLw0KI2RlZmluZSBDT01QX0NTUl9SQ0gxM19Qb3MgICAgICAgICAgICAgICAgICAoMjhVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBDT01QX0NTUl9SQ0gxM19Nc2sgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBDT01QX0NTUl9SQ0gxM19Qb3MpICAgICAgIC8qITwgMHgxMDAwMDAwMCAqLw0KI2RlZmluZSBDT01QX0NTUl9SQ0gxMyAgICAgICAgICAgICAgICAgICAgICBDT01QX0NTUl9SQ0gxM19Nc2sgICAgICAgICAgICAgICAgIC8qITwgQml0IDI4ICovDQoNCiNkZWZpbmUgQ09NUF9DU1JfQ0FJRV9Qb3MgICAgICAgICAgICAgICAgICAgKDI5VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgQ09NUF9DU1JfQ0FJRV9Nc2sgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgQ09NUF9DU1JfQ0FJRV9Qb3MpICAgICAgICAvKiE8IDB4MjAwMDAwMDAgKi8NCiNkZWZpbmUgQ09NUF9DU1JfQ0FJRSAgICAgICAgICAgICAgICAgICAgICAgQ09NUF9DU1JfQ0FJRV9Nc2sgICAgICAgICAgICAgICAgICAvKiE8IEJpdCAyOSAqLw0KI2RlZmluZSBDT01QX0NTUl9DQUlGX1BvcyAgICAgICAgICAgICAgICAgICAoMzBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBDT01QX0NTUl9DQUlGX01zayAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBDT01QX0NTUl9DQUlGX1BvcykgICAgICAgIC8qITwgMHg0MDAwMDAwMCAqLw0KI2RlZmluZSBDT01QX0NTUl9DQUlGICAgICAgICAgICAgICAgICAgICAgICBDT01QX0NTUl9DQUlGX01zayAgICAgICAgICAgICAgICAgIC8qITwgQml0IDMwICovDQojZGVmaW5lIENPTVBfQ1NSX1RTVVNQX1BvcyAgICAgICAgICAgICAgICAgICgzMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIENPTVBfQ1NSX1RTVVNQX01zayAgICAgICAgICAgICAgICAgICgweDFVIDw8IENPTVBfQ1NSX1RTVVNQX1BvcykgICAgICAgLyohPCAweDgwMDAwMDAwICovDQojZGVmaW5lIENPTVBfQ1NSX1RTVVNQICAgICAgICAgICAgICAgICAgICAgIENPTVBfQ1NSX1RTVVNQX01zayAgICAgICAgICAgICAgICAgLyohPCBCaXQgMzEgKi8NCg0KLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8NCi8qICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovDQovKiAgICAgICAgICAgICAgICAgICAgICAgICBPcGVyYXRpb25hbCBBbXBsaWZpZXIgKE9QQU1QKSAgICAgICAgICAgICAgICAgICAgICAqLw0KLyogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8NCi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovDQovKioqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIE9QQU1QX0NTUiByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBPUEFNUF9DU1JfT1BBMVBEX1BvcyAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBPUEFNUF9DU1JfT1BBMVBEX01zayAgICAgICAgICAgICAgICAgICgweDFVIDw8IE9QQU1QX0NTUl9PUEExUERfUG9zKSAgIC8qITwgMHgwMDAwMDAwMSAqLw0KI2RlZmluZSBPUEFNUF9DU1JfT1BBMVBEICAgICAgICAgICAgICAgICAgICAgIE9QQU1QX0NTUl9PUEExUERfTXNrICAgICAgICAgICAgIC8qITwgT1BBTVAxIGRpc2FibGUgKi8NCiNkZWZpbmUgT1BBTVBfQ1NSX1MzU0VMMV9Qb3MgICAgICAgICAgICAgICAgICAoMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgT1BBTVBfQ1NSX1MzU0VMMV9Nc2sgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBPUEFNUF9DU1JfUzNTRUwxX1BvcykgICAvKiE8IDB4MDAwMDAwMDIgKi8NCiNkZWZpbmUgT1BBTVBfQ1NSX1MzU0VMMSAgICAgICAgICAgICAgICAgICAgICBPUEFNUF9DU1JfUzNTRUwxX01zayAgICAgICAgICAgICAvKiE8IFN3aXRjaCAzIGZvciBPUEFNUDEgRW5hYmxlICovDQojZGVmaW5lIE9QQU1QX0NTUl9TNFNFTDFfUG9zICAgICAgICAgICAgICAgICAgKDJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIE9QQU1QX0NTUl9TNFNFTDFfTXNrICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgT1BBTVBfQ1NSX1M0U0VMMV9Qb3MpICAgLyohPCAweDAwMDAwMDA0ICovDQojZGVmaW5lIE9QQU1QX0NTUl9TNFNFTDEgICAgICAgICAgICAgICAgICAgICAgT1BBTVBfQ1NSX1M0U0VMMV9Nc2sgICAgICAgICAgICAgLyohPCBTd2l0Y2ggNCBmb3IgT1BBTVAxIEVuYWJsZSAqLw0KI2RlZmluZSBPUEFNUF9DU1JfUzVTRUwxX1BvcyAgICAgICAgICAgICAgICAgICgzVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBPUEFNUF9DU1JfUzVTRUwxX01zayAgICAgICAgICAgICAgICAgICgweDFVIDw8IE9QQU1QX0NTUl9TNVNFTDFfUG9zKSAgIC8qITwgMHgwMDAwMDAwOCAqLw0KI2RlZmluZSBPUEFNUF9DU1JfUzVTRUwxICAgICAgICAgICAgICAgICAgICAgIE9QQU1QX0NTUl9TNVNFTDFfTXNrICAgICAgICAgICAgIC8qITwgU3dpdGNoIDUgZm9yIE9QQU1QMSBFbmFibGUgKi8NCiNkZWZpbmUgT1BBTVBfQ1NSX1M2U0VMMV9Qb3MgICAgICAgICAgICAgICAgICAoNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgT1BBTVBfQ1NSX1M2U0VMMV9Nc2sgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBPUEFNUF9DU1JfUzZTRUwxX1BvcykgICAvKiE8IDB4MDAwMDAwMTAgKi8NCiNkZWZpbmUgT1BBTVBfQ1NSX1M2U0VMMSAgICAgICAgICAgICAgICAgICAgICBPUEFNUF9DU1JfUzZTRUwxX01zayAgICAgICAgICAgICAvKiE8IFN3aXRjaCA2IGZvciBPUEFNUDEgRW5hYmxlICovDQojZGVmaW5lIE9QQU1QX0NTUl9PUEExQ0FMX0xfUG9zICAgICAgICAgICAgICAgKDVVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIE9QQU1QX0NTUl9PUEExQ0FMX0xfTXNrICAgICAgICAgICAgICAgKDB4MVUgPDwgT1BBTVBfQ1NSX09QQTFDQUxfTF9Qb3MpIC8qITwgMHgwMDAwMDAyMCAqLw0KI2RlZmluZSBPUEFNUF9DU1JfT1BBMUNBTF9MICAgICAgICAgICAgICAgICAgIE9QQU1QX0NTUl9PUEExQ0FMX0xfTXNrICAgICAgICAgIC8qITwgT1BBTVAxIE9mZnNldCBjYWxpYnJhdGlvbiBmb3IgUCBkaWZmZXJlbnRpYWwgcGFpciAqLw0KI2RlZmluZSBPUEFNUF9DU1JfT1BBMUNBTF9IX1BvcyAgICAgICAgICAgICAgICg2VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBPUEFNUF9DU1JfT1BBMUNBTF9IX01zayAgICAgICAgICAgICAgICgweDFVIDw8IE9QQU1QX0NTUl9PUEExQ0FMX0hfUG9zKSAvKiE8IDB4MDAwMDAwNDAgKi8NCiNkZWZpbmUgT1BBTVBfQ1NSX09QQTFDQUxfSCAgICAgICAgICAgICAgICAgICBPUEFNUF9DU1JfT1BBMUNBTF9IX01zayAgICAgICAgICAvKiE8IE9QQU1QMSBPZmZzZXQgY2FsaWJyYXRpb24gZm9yIE4gZGlmZmVyZW50aWFsIHBhaXIgKi8NCiNkZWZpbmUgT1BBTVBfQ1NSX09QQTFMUE1fUG9zICAgICAgICAgICAgICAgICAoN1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgT1BBTVBfQ1NSX09QQTFMUE1fTXNrICAgICAgICAgICAgICAgICAoMHgxVSA8PCBPUEFNUF9DU1JfT1BBMUxQTV9Qb3MpICAvKiE8IDB4MDAwMDAwODAgKi8NCiNkZWZpbmUgT1BBTVBfQ1NSX09QQTFMUE0gICAgICAgICAgICAgICAgICAgICBPUEFNUF9DU1JfT1BBMUxQTV9Nc2sgICAgICAgICAgICAvKiE8IE9QQU1QMSBMb3cgcG93ZXIgZW5hYmxlICovDQojZGVmaW5lIE9QQU1QX0NTUl9PUEEyUERfUG9zICAgICAgICAgICAgICAgICAgKDhVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIE9QQU1QX0NTUl9PUEEyUERfTXNrICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgT1BBTVBfQ1NSX09QQTJQRF9Qb3MpICAgLyohPCAweDAwMDAwMTAwICovDQojZGVmaW5lIE9QQU1QX0NTUl9PUEEyUEQgICAgICAgICAgICAgICAgICAgICAgT1BBTVBfQ1NSX09QQTJQRF9Nc2sgICAgICAgICAgICAgLyohPCBPUEFNUDIgZGlzYWJsZSAqLw0KI2RlZmluZSBPUEFNUF9DU1JfUzNTRUwyX1BvcyAgICAgICAgICAgICAgICAgICg5VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBPUEFNUF9DU1JfUzNTRUwyX01zayAgICAgICAgICAgICAgICAgICgweDFVIDw8IE9QQU1QX0NTUl9TM1NFTDJfUG9zKSAgIC8qITwgMHgwMDAwMDIwMCAqLw0KI2RlZmluZSBPUEFNUF9DU1JfUzNTRUwyICAgICAgICAgICAgICAgICAgICAgIE9QQU1QX0NTUl9TM1NFTDJfTXNrICAgICAgICAgICAgIC8qITwgU3dpdGNoIDMgZm9yIE9QQU1QMiBFbmFibGUgKi8NCiNkZWZpbmUgT1BBTVBfQ1NSX1M0U0VMMl9Qb3MgICAgICAgICAgICAgICAgICAoMTBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgT1BBTVBfQ1NSX1M0U0VMMl9Nc2sgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBPUEFNUF9DU1JfUzRTRUwyX1BvcykgICAvKiE8IDB4MDAwMDA0MDAgKi8NCiNkZWZpbmUgT1BBTVBfQ1NSX1M0U0VMMiAgICAgICAgICAgICAgICAgICAgICBPUEFNUF9DU1JfUzRTRUwyX01zayAgICAgICAgICAgICAvKiE8IFN3aXRjaCA0IGZvciBPUEFNUDIgRW5hYmxlICovDQojZGVmaW5lIE9QQU1QX0NTUl9TNVNFTDJfUG9zICAgICAgICAgICAgICAgICAgKDExVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIE9QQU1QX0NTUl9TNVNFTDJfTXNrICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgT1BBTVBfQ1NSX1M1U0VMMl9Qb3MpICAgLyohPCAweDAwMDAwODAwICovDQojZGVmaW5lIE9QQU1QX0NTUl9TNVNFTDIgICAgICAgICAgICAgICAgICAgICAgT1BBTVBfQ1NSX1M1U0VMMl9Nc2sgICAgICAgICAgICAgLyohPCBTd2l0Y2ggNSBmb3IgT1BBTVAyIEVuYWJsZSAqLw0KI2RlZmluZSBPUEFNUF9DU1JfUzZTRUwyX1BvcyAgICAgICAgICAgICAgICAgICgxMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBPUEFNUF9DU1JfUzZTRUwyX01zayAgICAgICAgICAgICAgICAgICgweDFVIDw8IE9QQU1QX0NTUl9TNlNFTDJfUG9zKSAgIC8qITwgMHgwMDAwMTAwMCAqLw0KI2RlZmluZSBPUEFNUF9DU1JfUzZTRUwyICAgICAgICAgICAgICAgICAgICAgIE9QQU1QX0NTUl9TNlNFTDJfTXNrICAgICAgICAgICAgIC8qITwgU3dpdGNoIDYgZm9yIE9QQU1QMiBFbmFibGUgKi8NCiNkZWZpbmUgT1BBTVBfQ1NSX09QQTJDQUxfTF9Qb3MgICAgICAgICAgICAgICAoMTNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgT1BBTVBfQ1NSX09QQTJDQUxfTF9Nc2sgICAgICAgICAgICAgICAoMHgxVSA8PCBPUEFNUF9DU1JfT1BBMkNBTF9MX1BvcykgLyohPCAweDAwMDAyMDAwICovDQojZGVmaW5lIE9QQU1QX0NTUl9PUEEyQ0FMX0wgICAgICAgICAgICAgICAgICAgT1BBTVBfQ1NSX09QQTJDQUxfTF9Nc2sgICAgICAgICAgLyohPCBPUEFNUDIgT2Zmc2V0IGNhbGlicmF0aW9uIGZvciBQIGRpZmZlcmVudGlhbCBwYWlyICovDQojZGVmaW5lIE9QQU1QX0NTUl9PUEEyQ0FMX0hfUG9zICAgICAgICAgICAgICAgKDE0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIE9QQU1QX0NTUl9PUEEyQ0FMX0hfTXNrICAgICAgICAgICAgICAgKDB4MVUgPDwgT1BBTVBfQ1NSX09QQTJDQUxfSF9Qb3MpIC8qITwgMHgwMDAwNDAwMCAqLw0KI2RlZmluZSBPUEFNUF9DU1JfT1BBMkNBTF9IICAgICAgICAgICAgICAgICAgIE9QQU1QX0NTUl9PUEEyQ0FMX0hfTXNrICAgICAgICAgIC8qITwgT1BBTVAyIE9mZnNldCBjYWxpYnJhdGlvbiBmb3IgTiBkaWZmZXJlbnRpYWwgcGFpciAqLw0KI2RlZmluZSBPUEFNUF9DU1JfT1BBMkxQTV9Qb3MgICAgICAgICAgICAgICAgICgxNVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBPUEFNUF9DU1JfT1BBMkxQTV9Nc2sgICAgICAgICAgICAgICAgICgweDFVIDw8IE9QQU1QX0NTUl9PUEEyTFBNX1BvcykgIC8qITwgMHgwMDAwODAwMCAqLw0KI2RlZmluZSBPUEFNUF9DU1JfT1BBMkxQTSAgICAgICAgICAgICAgICAgICAgIE9QQU1QX0NTUl9PUEEyTFBNX01zayAgICAgICAgICAgIC8qITwgT1BBTVAyIExvdyBwb3dlciBlbmFibGUgKi8NCiNkZWZpbmUgT1BBTVBfQ1NSX0FOQVdTRUwxX1BvcyAgICAgICAgICAgICAgICAoMjRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgT1BBTVBfQ1NSX0FOQVdTRUwxX01zayAgICAgICAgICAgICAgICAoMHgxVSA8PCBPUEFNUF9DU1JfQU5BV1NFTDFfUG9zKSAvKiE8IDB4MDEwMDAwMDAgKi8NCiNkZWZpbmUgT1BBTVBfQ1NSX0FOQVdTRUwxICAgICAgICAgICAgICAgICAgICBPUEFNUF9DU1JfQU5BV1NFTDFfTXNrICAgICAgICAgICAvKiE8IFN3aXRjaCBBTkEgRW5hYmxlIGZvciBPUEFNUDEgKi8gDQojZGVmaW5lIE9QQU1QX0NTUl9BTkFXU0VMMl9Qb3MgICAgICAgICAgICAgICAgKDI1VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIE9QQU1QX0NTUl9BTkFXU0VMMl9Nc2sgICAgICAgICAgICAgICAgKDB4MVUgPDwgT1BBTVBfQ1NSX0FOQVdTRUwyX1BvcykgLyohPCAweDAyMDAwMDAwICovDQojZGVmaW5lIE9QQU1QX0NTUl9BTkFXU0VMMiAgICAgICAgICAgICAgICAgICAgT1BBTVBfQ1NSX0FOQVdTRUwyX01zayAgICAgICAgICAgLyohPCBTd2l0Y2ggQU5BIEVuYWJsZSBmb3IgT1BBTVAyICovDQojZGVmaW5lIE9QQU1QX0NTUl9TN1NFTDJfUG9zICAgICAgICAgICAgICAgICAgKDI3VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIE9QQU1QX0NTUl9TN1NFTDJfTXNrICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgT1BBTVBfQ1NSX1M3U0VMMl9Qb3MpICAgLyohPCAweDA4MDAwMDAwICovDQojZGVmaW5lIE9QQU1QX0NTUl9TN1NFTDIgICAgICAgICAgICAgICAgICAgICAgT1BBTVBfQ1NSX1M3U0VMMl9Nc2sgICAgICAgICAgICAgLyohPCBTd2l0Y2ggNyBmb3IgT1BBTVAyIEVuYWJsZSAqLw0KI2RlZmluZSBPUEFNUF9DU1JfQU9QX1JBTkdFX1BvcyAgICAgICAgICAgICAgICgyOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBPUEFNUF9DU1JfQU9QX1JBTkdFX01zayAgICAgICAgICAgICAgICgweDFVIDw8IE9QQU1QX0NTUl9BT1BfUkFOR0VfUG9zKSAvKiE8IDB4MTAwMDAwMDAgKi8NCiNkZWZpbmUgT1BBTVBfQ1NSX0FPUF9SQU5HRSAgICAgICAgICAgICAgICAgICBPUEFNUF9DU1JfQU9QX1JBTkdFX01zayAgICAgICAgICAvKiE8IENvbW1vbiB0byBzZXZlcmFsIE9QQU1QIGluc3RhbmNlczogT3BlcmF0aW9uYWwgYW1wbGlmaWVyIHZvbHRhZ2Ugc3VwcGx5IHJhbmdlLiBCaXQgaW50ZW5kZWQgdG8gYmUgdXNlZCB3aXRoIE9QQU1QIGNvbW1vbiBpbnN0YW5jZSAoT1BBTVBfQ29tbW9uX1R5cGVEZWYpICovDQojZGVmaW5lIE9QQU1QX0NTUl9PUEExQ0FMT1VUX1BvcyAgICAgICAgICAgICAgKDI5VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIE9QQU1QX0NTUl9PUEExQ0FMT1VUX01zayAgICAgICAgICAgICAgKDB4MVUgPDwgT1BBTVBfQ1NSX09QQTFDQUxPVVRfUG9zKSAvKiE8IDB4MjAwMDAwMDAgKi8NCiNkZWZpbmUgT1BBTVBfQ1NSX09QQTFDQUxPVVQgICAgICAgICAgICAgICAgICBPUEFNUF9DU1JfT1BBMUNBTE9VVF9Nc2sgICAgICAgICAvKiE8IE9QQU1QMSBjYWxpYnJhdGlvbiBvdXRwdXQgKi8NCiNkZWZpbmUgT1BBTVBfQ1NSX09QQTJDQUxPVVRfUG9zICAgICAgICAgICAgICAoMzBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgT1BBTVBfQ1NSX09QQTJDQUxPVVRfTXNrICAgICAgICAgICAgICAoMHgxVSA8PCBPUEFNUF9DU1JfT1BBMkNBTE9VVF9Qb3MpIC8qITwgMHg0MDAwMDAwMCAqLw0KI2RlZmluZSBPUEFNUF9DU1JfT1BBMkNBTE9VVCAgICAgICAgICAgICAgICAgIE9QQU1QX0NTUl9PUEEyQ0FMT1VUX01zayAgICAgICAgIC8qITwgT1BBTVAyIGNhbGlicmF0aW9uIG91dHB1dCAqLw0KDQovKioqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIE9QQU1QX09UUiByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBPUEFNUF9PVFJfQU8xX09QVF9PRkZTRVRfVFJJTV9MT1dfUG9zICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBPUEFNUF9PVFJfQU8xX09QVF9PRkZTRVRfVFJJTV9MT1dfTXNrICgweDFGVSA8PCBPUEFNUF9PVFJfQU8xX09QVF9PRkZTRVRfVFJJTV9MT1dfUG9zKSAvKiE8IDB4MDAwMDAwMUYgKi8NCiNkZWZpbmUgT1BBTVBfT1RSX0FPMV9PUFRfT0ZGU0VUX1RSSU1fTE9XICAgICBPUEFNUF9PVFJfQU8xX09QVF9PRkZTRVRfVFJJTV9MT1dfTXNrIC8qITwgT2Zmc2V0IHRyaW0gZm9yIHRyYW5zaXN0b3JzIGRpZmZlcmVudGlhbCBwYWlyIFBNT1Mgb2YgT1BBTVAxICovDQojZGVmaW5lIE9QQU1QX09UUl9BTzFfT1BUX09GRlNFVF9UUklNX0hJR0hfUG9zICg1VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIE9QQU1QX09UUl9BTzFfT1BUX09GRlNFVF9UUklNX0hJR0hfTXNrICgweDFGVSA8PCBPUEFNUF9PVFJfQU8xX09QVF9PRkZTRVRfVFJJTV9ISUdIX1BvcykgLyohPCAweDAwMDAwM0UwICovDQojZGVmaW5lIE9QQU1QX09UUl9BTzFfT1BUX09GRlNFVF9UUklNX0hJR0ggICAgT1BBTVBfT1RSX0FPMV9PUFRfT0ZGU0VUX1RSSU1fSElHSF9Nc2sgLyohPCBPZmZzZXQgdHJpbSBmb3IgdHJhbnNpc3RvcnMgZGlmZmVyZW50aWFsIHBhaXIgTk1PUyBvZiBPUEFNUDEgKi8NCiNkZWZpbmUgT1BBTVBfT1RSX0FPMl9PUFRfT0ZGU0VUX1RSSU1fTE9XX1BvcyAoMTBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgT1BBTVBfT1RSX0FPMl9PUFRfT0ZGU0VUX1RSSU1fTE9XX01zayAoMHgxRlUgPDwgT1BBTVBfT1RSX0FPMl9PUFRfT0ZGU0VUX1RSSU1fTE9XX1BvcykgLyohPCAweDAwMDA3QzAwICovDQojZGVmaW5lIE9QQU1QX09UUl9BTzJfT1BUX09GRlNFVF9UUklNX0xPVyAgICAgT1BBTVBfT1RSX0FPMl9PUFRfT0ZGU0VUX1RSSU1fTE9XX01zayAvKiE8IE9mZnNldCB0cmltIGZvciB0cmFuc2lzdG9ycyBkaWZmZXJlbnRpYWwgcGFpciBQTU9TIG9mIE9QQU1QMiAqLw0KI2RlZmluZSBPUEFNUF9PVFJfQU8yX09QVF9PRkZTRVRfVFJJTV9ISUdIX1BvcyAoMTVVKSAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBPUEFNUF9PVFJfQU8yX09QVF9PRkZTRVRfVFJJTV9ISUdIX01zayAoMHgxRlUgPDwgT1BBTVBfT1RSX0FPMl9PUFRfT0ZGU0VUX1RSSU1fSElHSF9Qb3MpIC8qITwgMHgwMDBGODAwMCAqLw0KI2RlZmluZSBPUEFNUF9PVFJfQU8yX09QVF9PRkZTRVRfVFJJTV9ISUdIICAgIE9QQU1QX09UUl9BTzJfT1BUX09GRlNFVF9UUklNX0hJR0hfTXNrIC8qITwgT2Zmc2V0IHRyaW0gZm9yIHRyYW5zaXN0b3JzIGRpZmZlcmVudGlhbCBwYWlyIE5NT1Mgb2YgT1BBTVAyICovDQojZGVmaW5lIE9QQU1QX09UUl9PVF9VU0VSX1BvcyAgICAgICAgICAgICAgICAgKDMxVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIE9QQU1QX09UUl9PVF9VU0VSX01zayAgICAgICAgICAgICAgICAgKDB4MVUgPDwgT1BBTVBfT1RSX09UX1VTRVJfUG9zKSAgLyohPCAweDgwMDAwMDAwICovDQojZGVmaW5lIE9QQU1QX09UUl9PVF9VU0VSICAgICAgICAgICAgICAgICAgICAgT1BBTVBfT1RSX09UX1VTRVJfTXNrICAgICAgICAgICAgLyohPCBTd2l0Y2ggdG8gT1BBTVAgb2Zmc2V0IHVzZXIgdHJpbW1lZCB2YWx1ZXMgKi8NCg0KLyoqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBPUEFNUF9MUE9UUiByZWdpc3RlciAgKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgT1BBTVBfT1RSX0FPMV9PUFRfT0ZGU0VUX1RSSU1fTFBfTE9XX1BvcyAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgT1BBTVBfT1RSX0FPMV9PUFRfT0ZGU0VUX1RSSU1fTFBfTE9XX01zayAoMHgxRlUgPDwgT1BBTVBfT1RSX0FPMV9PUFRfT0ZGU0VUX1RSSU1fTFBfTE9XX1BvcykgLyohPCAweDAwMDAwMDFGICovDQojZGVmaW5lIE9QQU1QX09UUl9BTzFfT1BUX09GRlNFVF9UUklNX0xQX0xPVyAgT1BBTVBfT1RSX0FPMV9PUFRfT0ZGU0VUX1RSSU1fTFBfTE9XX01zayAvKiE8IE9mZnNldCB0cmltIGZvciB0cmFuc2lzdG9ycyBkaWZmZXJlbnRpYWwgcGFpciBQTU9TIG9mIE9QQU1QMSAqLw0KI2RlZmluZSBPUEFNUF9PVFJfQU8xX09QVF9PRkZTRVRfVFJJTV9MUF9ISUdIX1BvcyAoNVUpICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBPUEFNUF9PVFJfQU8xX09QVF9PRkZTRVRfVFJJTV9MUF9ISUdIX01zayAoMHgxRlUgPDwgT1BBTVBfT1RSX0FPMV9PUFRfT0ZGU0VUX1RSSU1fTFBfSElHSF9Qb3MpIC8qITwgMHgwMDAwMDNFMCAqLw0KI2RlZmluZSBPUEFNUF9PVFJfQU8xX09QVF9PRkZTRVRfVFJJTV9MUF9ISUdIIE9QQU1QX09UUl9BTzFfT1BUX09GRlNFVF9UUklNX0xQX0hJR0hfTXNrIC8qITwgT2Zmc2V0IHRyaW0gZm9yIHRyYW5zaXN0b3JzIGRpZmZlcmVudGlhbCBwYWlyIE5NT1Mgb2YgT1BBTVAxICovDQojZGVmaW5lIE9QQU1QX09UUl9BTzJfT1BUX09GRlNFVF9UUklNX0xQX0xPV19Qb3MgKDEwVSkgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIE9QQU1QX09UUl9BTzJfT1BUX09GRlNFVF9UUklNX0xQX0xPV19Nc2sgKDB4MUZVIDw8IE9QQU1QX09UUl9BTzJfT1BUX09GRlNFVF9UUklNX0xQX0xPV19Qb3MpIC8qITwgMHgwMDAwN0MwMCAqLw0KI2RlZmluZSBPUEFNUF9PVFJfQU8yX09QVF9PRkZTRVRfVFJJTV9MUF9MT1cgIE9QQU1QX09UUl9BTzJfT1BUX09GRlNFVF9UUklNX0xQX0xPV19Nc2sgLyohPCBPZmZzZXQgdHJpbSBmb3IgdHJhbnNpc3RvcnMgZGlmZmVyZW50aWFsIHBhaXIgUE1PUyBvZiBPUEFNUDIgKi8NCiNkZWZpbmUgT1BBTVBfT1RSX0FPMl9PUFRfT0ZGU0VUX1RSSU1fTFBfSElHSF9Qb3MgKDE1VSkgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgT1BBTVBfT1RSX0FPMl9PUFRfT0ZGU0VUX1RSSU1fTFBfSElHSF9Nc2sgKDB4MUZVIDw8IE9QQU1QX09UUl9BTzJfT1BUX09GRlNFVF9UUklNX0xQX0hJR0hfUG9zKSAvKiE8IDB4MDAwRjgwMDAgKi8NCiNkZWZpbmUgT1BBTVBfT1RSX0FPMl9PUFRfT0ZGU0VUX1RSSU1fTFBfSElHSCBPUEFNUF9PVFJfQU8yX09QVF9PRkZTRVRfVFJJTV9MUF9ISUdIX01zayAvKiE8IE9mZnNldCB0cmltIGZvciB0cmFuc2lzdG9ycyBkaWZmZXJlbnRpYWwgcGFpciBOTU9TIG9mIE9QQU1QMiAqLw0KDQovKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLw0KLyogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8NCi8qICAgICAgICAgICAgICAgICAgICAgICBDUkMgY2FsY3VsYXRpb24gdW5pdCAoQ1JDKSAgICAgICAgICAgICAgICAgICAgICAgICAgICovDQovKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLw0KLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8NCg0KLyoqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBDUkNfRFIgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgQ1JDX0RSX0RSX1BvcyAgICAgICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgQ1JDX0RSX0RSX01zayAgICAgICAgICAgICAgICAgICAgICAgKDB4RkZGRkZGRkZVIDw8IENSQ19EUl9EUl9Qb3MpICAgICAvKiE8IDB4RkZGRkZGRkYgKi8NCiNkZWZpbmUgQ1JDX0RSX0RSICAgICAgICAgICAgICAgICAgICAgICAgICAgQ1JDX0RSX0RSX01zayAgICAgICAgICAgICAgICAgICAgICAvKiE8IERhdGEgcmVnaXN0ZXIgYml0cyAqLw0KDQovKioqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIENSQ19JRFIgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBDUkNfSURSX0lEUl9Qb3MgICAgICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBDUkNfSURSX0lEUl9Nc2sgICAgICAgICAgICAgICAgICAgICAoMHhGRlUgPDwgQ1JDX0lEUl9JRFJfUG9zKSAgICAgICAgIC8qITwgMHgwMDAwMDBGRiAqLw0KI2RlZmluZSBDUkNfSURSX0lEUiAgICAgICAgICAgICAgICAgICAgICAgICBDUkNfSURSX0lEUl9Nc2sgICAgICAgICAgICAgICAgICAgIC8qITwgR2VuZXJhbC1wdXJwb3NlIDgtYml0IGRhdGEgcmVnaXN0ZXIgYml0cyAqLw0KDQovKioqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBDUkNfQ1IgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBDUkNfQ1JfUkVTRVRfUG9zICAgICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBDUkNfQ1JfUkVTRVRfTXNrICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBDUkNfQ1JfUkVTRVRfUG9zKSAgICAgICAgIC8qITwgMHgwMDAwMDAwMSAqLw0KI2RlZmluZSBDUkNfQ1JfUkVTRVQgICAgICAgICAgICAgICAgICAgICAgICBDUkNfQ1JfUkVTRVRfTXNrICAgICAgICAgICAgICAgICAgIC8qITwgUkVTRVQgYml0ICovDQoNCi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovDQovKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLw0KLyogICAgICAgICAgICAgICAgICAgIERpZ2l0YWwgdG8gQW5hbG9nIENvbnZlcnRlciAoREFDKSAgICAgICAgICAgICAgICAgICAgICAgKi8NCi8qICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovDQovKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLw0KDQovKioqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBEQUNfQ1IgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBEQUNfQ1JfRU4xX1BvcyAgICAgICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBEQUNfQ1JfRU4xX01zayAgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBEQUNfQ1JfRU4xX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDAwMSAqLw0KI2RlZmluZSBEQUNfQ1JfRU4xICAgICAgICAgICAgICAgICAgICAgICAgICBEQUNfQ1JfRU4xX01zayAgICAgICAgICAgICAgICAgICAgIC8qITxEQUMgY2hhbm5lbDEgZW5hYmxlICovDQojZGVmaW5lIERBQ19DUl9CT0ZGMV9Qb3MgICAgICAgICAgICAgICAgICAgICgxVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIERBQ19DUl9CT0ZGMV9Nc2sgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IERBQ19DUl9CT0ZGMV9Qb3MpICAgICAgICAgLyohPCAweDAwMDAwMDAyICovDQojZGVmaW5lIERBQ19DUl9CT0ZGMSAgICAgICAgICAgICAgICAgICAgICAgIERBQ19DUl9CT0ZGMV9Nc2sgICAgICAgICAgICAgICAgICAgLyohPERBQyBjaGFubmVsMSBvdXRwdXQgYnVmZmVyIGRpc2FibGUgKi8NCiNkZWZpbmUgREFDX0NSX1RFTjFfUG9zICAgICAgICAgICAgICAgICAgICAgKDJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgREFDX0NSX1RFTjFfTXNrICAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgREFDX0NSX1RFTjFfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDAwMDQgKi8NCiNkZWZpbmUgREFDX0NSX1RFTjEgICAgICAgICAgICAgICAgICAgICAgICAgREFDX0NSX1RFTjFfTXNrICAgICAgICAgICAgICAgICAgICAvKiE8REFDIGNoYW5uZWwxIFRyaWdnZXIgZW5hYmxlICovDQoNCiNkZWZpbmUgREFDX0NSX1RTRUwxX1BvcyAgICAgICAgICAgICAgICAgICAgKDNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgREFDX0NSX1RTRUwxX01zayAgICAgICAgICAgICAgICAgICAgKDB4N1UgPDwgREFDX0NSX1RTRUwxX1BvcykgICAgICAgICAvKiE8IDB4MDAwMDAwMzggKi8NCiNkZWZpbmUgREFDX0NSX1RTRUwxICAgICAgICAgICAgICAgICAgICAgICAgREFDX0NSX1RTRUwxX01zayAgICAgICAgICAgICAgICAgICAvKiE8VFNFTDFbMjowXSAoREFDIGNoYW5uZWwxIFRyaWdnZXIgc2VsZWN0aW9uKSAqLw0KI2RlZmluZSBEQUNfQ1JfVFNFTDFfMCAgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBEQUNfQ1JfVFNFTDFfUG9zKSAgICAgICAgIC8qITwgMHgwMDAwMDAwOCAqLw0KI2RlZmluZSBEQUNfQ1JfVFNFTDFfMSAgICAgICAgICAgICAgICAgICAgICAoMHgyVSA8PCBEQUNfQ1JfVFNFTDFfUG9zKSAgICAgICAgIC8qITwgMHgwMDAwMDAxMCAqLw0KI2RlZmluZSBEQUNfQ1JfVFNFTDFfMiAgICAgICAgICAgICAgICAgICAgICAoMHg0VSA8PCBEQUNfQ1JfVFNFTDFfUG9zKSAgICAgICAgIC8qITwgMHgwMDAwMDAyMCAqLw0KDQojZGVmaW5lIERBQ19DUl9XQVZFMV9Qb3MgICAgICAgICAgICAgICAgICAgICg2VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIERBQ19DUl9XQVZFMV9Nc2sgICAgICAgICAgICAgICAgICAgICgweDNVIDw8IERBQ19DUl9XQVZFMV9Qb3MpICAgICAgICAgLyohPCAweDAwMDAwMEMwICovDQojZGVmaW5lIERBQ19DUl9XQVZFMSAgICAgICAgICAgICAgICAgICAgICAgIERBQ19DUl9XQVZFMV9Nc2sgICAgICAgICAgICAgICAgICAgLyohPFdBVkUxWzE6MF0gKERBQyBjaGFubmVsMSBub2lzZS90cmlhbmdsZSB3YXZlIGdlbmVyYXRpb24gZW5hYmxlKSAqLw0KI2RlZmluZSBEQUNfQ1JfV0FWRTFfMCAgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBEQUNfQ1JfV0FWRTFfUG9zKSAgICAgICAgIC8qITwgMHgwMDAwMDA0MCAqLw0KI2RlZmluZSBEQUNfQ1JfV0FWRTFfMSAgICAgICAgICAgICAgICAgICAgICAoMHgyVSA8PCBEQUNfQ1JfV0FWRTFfUG9zKSAgICAgICAgIC8qITwgMHgwMDAwMDA4MCAqLw0KDQojZGVmaW5lIERBQ19DUl9NQU1QMV9Qb3MgICAgICAgICAgICAgICAgICAgICg4VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIERBQ19DUl9NQU1QMV9Nc2sgICAgICAgICAgICAgICAgICAgICgweEZVIDw8IERBQ19DUl9NQU1QMV9Qb3MpICAgICAgICAgLyohPCAweDAwMDAwRjAwICovDQojZGVmaW5lIERBQ19DUl9NQU1QMSAgICAgICAgICAgICAgICAgICAgICAgIERBQ19DUl9NQU1QMV9Nc2sgICAgICAgICAgICAgICAgICAgLyohPE1BTVAxWzM6MF0gKERBQyBjaGFubmVsMSBNYXNrL0FtcGxpdHVkZSBzZWxlY3RvcikgKi8NCiNkZWZpbmUgREFDX0NSX01BTVAxXzAgICAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgREFDX0NSX01BTVAxX1BvcykgICAgICAgICAvKiE8IDB4MDAwMDAxMDAgKi8NCiNkZWZpbmUgREFDX0NSX01BTVAxXzEgICAgICAgICAgICAgICAgICAgICAgKDB4MlUgPDwgREFDX0NSX01BTVAxX1BvcykgICAgICAgICAvKiE8IDB4MDAwMDAyMDAgKi8NCiNkZWZpbmUgREFDX0NSX01BTVAxXzIgICAgICAgICAgICAgICAgICAgICAgKDB4NFUgPDwgREFDX0NSX01BTVAxX1BvcykgICAgICAgICAvKiE8IDB4MDAwMDA0MDAgKi8NCiNkZWZpbmUgREFDX0NSX01BTVAxXzMgICAgICAgICAgICAgICAgICAgICAgKDB4OFUgPDwgREFDX0NSX01BTVAxX1BvcykgICAgICAgICAvKiE8IDB4MDAwMDA4MDAgKi8NCg0KI2RlZmluZSBEQUNfQ1JfRE1BRU4xX1BvcyAgICAgICAgICAgICAgICAgICAoMTJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBEQUNfQ1JfRE1BRU4xX01zayAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBEQUNfQ1JfRE1BRU4xX1BvcykgICAgICAgIC8qITwgMHgwMDAwMTAwMCAqLw0KI2RlZmluZSBEQUNfQ1JfRE1BRU4xICAgICAgICAgICAgICAgICAgICAgICBEQUNfQ1JfRE1BRU4xX01zayAgICAgICAgICAgICAgICAgIC8qITxEQUMgY2hhbm5lbDEgRE1BIGVuYWJsZSAqLw0KI2RlZmluZSBEQUNfQ1JfRE1BVURSSUUxX1BvcyAgICAgICAgICAgICAgICAoMTNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBEQUNfQ1JfRE1BVURSSUUxX01zayAgICAgICAgICAgICAgICAoMHgxVSA8PCBEQUNfQ1JfRE1BVURSSUUxX1BvcykgICAgIC8qITwgMHgwMDAwMjAwMCAqLw0KI2RlZmluZSBEQUNfQ1JfRE1BVURSSUUxICAgICAgICAgICAgICAgICAgICBEQUNfQ1JfRE1BVURSSUUxX01zayAgICAgICAgICAgICAgIC8qITxEQUMgY2hhbm5lbDEgRE1BIEludGVycnVwdCBlbmFibGUgKi8NCiNkZWZpbmUgREFDX0NSX0VOMl9Qb3MgICAgICAgICAgICAgICAgICAgICAgKDE2VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgREFDX0NSX0VOMl9Nc2sgICAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgREFDX0NSX0VOMl9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMTAwMDAgKi8NCiNkZWZpbmUgREFDX0NSX0VOMiAgICAgICAgICAgICAgICAgICAgICAgICAgREFDX0NSX0VOMl9Nc2sgICAgICAgICAgICAgICAgICAgICAvKiE8REFDIGNoYW5uZWwyIGVuYWJsZSAqLw0KI2RlZmluZSBEQUNfQ1JfQk9GRjJfUG9zICAgICAgICAgICAgICAgICAgICAoMTdVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBEQUNfQ1JfQk9GRjJfTXNrICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBEQUNfQ1JfQk9GRjJfUG9zKSAgICAgICAgIC8qITwgMHgwMDAyMDAwMCAqLw0KI2RlZmluZSBEQUNfQ1JfQk9GRjIgICAgICAgICAgICAgICAgICAgICAgICBEQUNfQ1JfQk9GRjJfTXNrICAgICAgICAgICAgICAgICAgIC8qITxEQUMgY2hhbm5lbDIgb3V0cHV0IGJ1ZmZlciBkaXNhYmxlICovDQojZGVmaW5lIERBQ19DUl9URU4yX1BvcyAgICAgICAgICAgICAgICAgICAgICgxOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIERBQ19DUl9URU4yX01zayAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IERBQ19DUl9URU4yX1BvcykgICAgICAgICAgLyohPCAweDAwMDQwMDAwICovDQojZGVmaW5lIERBQ19DUl9URU4yICAgICAgICAgICAgICAgICAgICAgICAgIERBQ19DUl9URU4yX01zayAgICAgICAgICAgICAgICAgICAgLyohPERBQyBjaGFubmVsMiBUcmlnZ2VyIGVuYWJsZSAqLw0KDQojZGVmaW5lIERBQ19DUl9UU0VMMl9Qb3MgICAgICAgICAgICAgICAgICAgICgxOVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIERBQ19DUl9UU0VMMl9Nc2sgICAgICAgICAgICAgICAgICAgICgweDdVIDw8IERBQ19DUl9UU0VMMl9Qb3MpICAgICAgICAgLyohPCAweDAwMzgwMDAwICovDQojZGVmaW5lIERBQ19DUl9UU0VMMiAgICAgICAgICAgICAgICAgICAgICAgIERBQ19DUl9UU0VMMl9Nc2sgICAgICAgICAgICAgICAgICAgLyohPFRTRUwyWzI6MF0gKERBQyBjaGFubmVsMiBUcmlnZ2VyIHNlbGVjdGlvbikgKi8NCiNkZWZpbmUgREFDX0NSX1RTRUwyXzAgICAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgREFDX0NSX1RTRUwyX1BvcykgICAgICAgICAvKiE8IDB4MDAwODAwMDAgKi8NCiNkZWZpbmUgREFDX0NSX1RTRUwyXzEgICAgICAgICAgICAgICAgICAgICAgKDB4MlUgPDwgREFDX0NSX1RTRUwyX1BvcykgICAgICAgICAvKiE8IDB4MDAxMDAwMDAgKi8NCiNkZWZpbmUgREFDX0NSX1RTRUwyXzIgICAgICAgICAgICAgICAgICAgICAgKDB4NFUgPDwgREFDX0NSX1RTRUwyX1BvcykgICAgICAgICAvKiE8IDB4MDAyMDAwMDAgKi8NCg0KI2RlZmluZSBEQUNfQ1JfV0FWRTJfUG9zICAgICAgICAgICAgICAgICAgICAoMjJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBEQUNfQ1JfV0FWRTJfTXNrICAgICAgICAgICAgICAgICAgICAoMHgzVSA8PCBEQUNfQ1JfV0FWRTJfUG9zKSAgICAgICAgIC8qITwgMHgwMEMwMDAwMCAqLw0KI2RlZmluZSBEQUNfQ1JfV0FWRTIgICAgICAgICAgICAgICAgICAgICAgICBEQUNfQ1JfV0FWRTJfTXNrICAgICAgICAgICAgICAgICAgIC8qITxXQVZFMlsxOjBdIChEQUMgY2hhbm5lbDIgbm9pc2UvdHJpYW5nbGUgd2F2ZSBnZW5lcmF0aW9uIGVuYWJsZSkgKi8NCiNkZWZpbmUgREFDX0NSX1dBVkUyXzAgICAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgREFDX0NSX1dBVkUyX1BvcykgICAgICAgICAvKiE8IDB4MDA0MDAwMDAgKi8NCiNkZWZpbmUgREFDX0NSX1dBVkUyXzEgICAgICAgICAgICAgICAgICAgICAgKDB4MlUgPDwgREFDX0NSX1dBVkUyX1BvcykgICAgICAgICAvKiE8IDB4MDA4MDAwMDAgKi8NCg0KI2RlZmluZSBEQUNfQ1JfTUFNUDJfUG9zICAgICAgICAgICAgICAgICAgICAoMjRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBEQUNfQ1JfTUFNUDJfTXNrICAgICAgICAgICAgICAgICAgICAoMHhGVSA8PCBEQUNfQ1JfTUFNUDJfUG9zKSAgICAgICAgIC8qITwgMHgwRjAwMDAwMCAqLw0KI2RlZmluZSBEQUNfQ1JfTUFNUDIgICAgICAgICAgICAgICAgICAgICAgICBEQUNfQ1JfTUFNUDJfTXNrICAgICAgICAgICAgICAgICAgIC8qITxNQU1QMlszOjBdIChEQUMgY2hhbm5lbDIgTWFzay9BbXBsaXR1ZGUgc2VsZWN0b3IpICovDQojZGVmaW5lIERBQ19DUl9NQU1QMl8wICAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IERBQ19DUl9NQU1QMl9Qb3MpICAgICAgICAgLyohPCAweDAxMDAwMDAwICovDQojZGVmaW5lIERBQ19DUl9NQU1QMl8xICAgICAgICAgICAgICAgICAgICAgICgweDJVIDw8IERBQ19DUl9NQU1QMl9Qb3MpICAgICAgICAgLyohPCAweDAyMDAwMDAwICovDQojZGVmaW5lIERBQ19DUl9NQU1QMl8yICAgICAgICAgICAgICAgICAgICAgICgweDRVIDw8IERBQ19DUl9NQU1QMl9Qb3MpICAgICAgICAgLyohPCAweDA0MDAwMDAwICovDQojZGVmaW5lIERBQ19DUl9NQU1QMl8zICAgICAgICAgICAgICAgICAgICAgICgweDhVIDw8IERBQ19DUl9NQU1QMl9Qb3MpICAgICAgICAgLyohPCAweDA4MDAwMDAwICovDQoNCiNkZWZpbmUgREFDX0NSX0RNQUVOMl9Qb3MgICAgICAgICAgICAgICAgICAgKDI4VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgREFDX0NSX0RNQUVOMl9Nc2sgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgREFDX0NSX0RNQUVOMl9Qb3MpICAgICAgICAvKiE8IDB4MTAwMDAwMDAgKi8NCiNkZWZpbmUgREFDX0NSX0RNQUVOMiAgICAgICAgICAgICAgICAgICAgICAgREFDX0NSX0RNQUVOMl9Nc2sgICAgICAgICAgICAgICAgICAvKiE8REFDIGNoYW5uZWwyIERNQSBlbmFibGVkICovDQojZGVmaW5lIERBQ19DUl9ETUFVRFJJRTJfUG9zICAgICAgICAgICAgICAgICgyOVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIERBQ19DUl9ETUFVRFJJRTJfTXNrICAgICAgICAgICAgICAgICgweDFVIDw8IERBQ19DUl9ETUFVRFJJRTJfUG9zKSAgICAgLyohPCAweDIwMDAwMDAwICovDQojZGVmaW5lIERBQ19DUl9ETUFVRFJJRTIgICAgICAgICAgICAgICAgICAgIERBQ19DUl9ETUFVRFJJRTJfTXNrICAgICAgICAgICAgICAgLyohPERBQyBjaGFubmVsMiBETUEgdW5kZXJydW4gaW50ZXJydXB0IGVuYWJsZSAqLw0KLyoqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgREFDX1NXVFJJR1IgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgREFDX1NXVFJJR1JfU1dUUklHMV9Qb3MgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgREFDX1NXVFJJR1JfU1dUUklHMV9Nc2sgICAgICAgICAgICAgKDB4MVUgPDwgREFDX1NXVFJJR1JfU1dUUklHMV9Qb3MpICAvKiE8IDB4MDAwMDAwMDEgKi8NCiNkZWZpbmUgREFDX1NXVFJJR1JfU1dUUklHMSAgICAgICAgICAgICAgICAgREFDX1NXVFJJR1JfU1dUUklHMV9Nc2sgICAgICAgICAgICAvKiE8REFDIGNoYW5uZWwxIHNvZnR3YXJlIHRyaWdnZXIgKi8NCiNkZWZpbmUgREFDX1NXVFJJR1JfU1dUUklHMl9Qb3MgICAgICAgICAgICAgKDFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgREFDX1NXVFJJR1JfU1dUUklHMl9Nc2sgICAgICAgICAgICAgKDB4MVUgPDwgREFDX1NXVFJJR1JfU1dUUklHMl9Qb3MpICAvKiE8IDB4MDAwMDAwMDIgKi8NCiNkZWZpbmUgREFDX1NXVFJJR1JfU1dUUklHMiAgICAgICAgICAgICAgICAgREFDX1NXVFJJR1JfU1dUUklHMl9Nc2sgICAgICAgICAgICAvKiE8REFDIGNoYW5uZWwyIHNvZnR3YXJlIHRyaWdnZXIgKi8NCg0KLyoqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgREFDX0RIUjEyUjEgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgREFDX0RIUjEyUjFfREFDQzFESFJfUG9zICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgREFDX0RIUjEyUjFfREFDQzFESFJfTXNrICAgICAgICAgICAgKDB4RkZGVSA8PCBEQUNfREhSMTJSMV9EQUNDMURIUl9Qb3MpIC8qITwgMHgwMDAwMEZGRiAqLw0KI2RlZmluZSBEQUNfREhSMTJSMV9EQUNDMURIUiAgICAgICAgICAgICAgICBEQUNfREhSMTJSMV9EQUNDMURIUl9Nc2sgICAgICAgICAgIC8qITxEQUMgY2hhbm5lbDEgMTItYml0IFJpZ2h0IGFsaWduZWQgZGF0YSAqLw0KDQovKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBEQUNfREhSMTJMMSByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBEQUNfREhSMTJMMV9EQUNDMURIUl9Qb3MgICAgICAgICAgICAoNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBEQUNfREhSMTJMMV9EQUNDMURIUl9Nc2sgICAgICAgICAgICAoMHhGRkZVIDw8IERBQ19ESFIxMkwxX0RBQ0MxREhSX1BvcykgLyohPCAweDAwMDBGRkYwICovDQojZGVmaW5lIERBQ19ESFIxMkwxX0RBQ0MxREhSICAgICAgICAgICAgICAgIERBQ19ESFIxMkwxX0RBQ0MxREhSX01zayAgICAgICAgICAgLyohPERBQyBjaGFubmVsMSAxMi1iaXQgTGVmdCBhbGlnbmVkIGRhdGEgKi8NCg0KLyoqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIERBQ19ESFI4UjEgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgREFDX0RIUjhSMV9EQUNDMURIUl9Qb3MgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgREFDX0RIUjhSMV9EQUNDMURIUl9Nc2sgICAgICAgICAgICAgKDB4RkZVIDw8IERBQ19ESFI4UjFfREFDQzFESFJfUG9zKSAvKiE8IDB4MDAwMDAwRkYgKi8NCiNkZWZpbmUgREFDX0RIUjhSMV9EQUNDMURIUiAgICAgICAgICAgICAgICAgREFDX0RIUjhSMV9EQUNDMURIUl9Nc2sgICAgICAgICAgICAvKiE8REFDIGNoYW5uZWwxIDgtYml0IFJpZ2h0IGFsaWduZWQgZGF0YSAqLw0KDQovKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBEQUNfREhSMTJSMiByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBEQUNfREhSMTJSMl9EQUNDMkRIUl9Qb3MgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBEQUNfREhSMTJSMl9EQUNDMkRIUl9Nc2sgICAgICAgICAgICAoMHhGRkZVIDw8IERBQ19ESFIxMlIyX0RBQ0MyREhSX1BvcykgLyohPCAweDAwMDAwRkZGICovDQojZGVmaW5lIERBQ19ESFIxMlIyX0RBQ0MyREhSICAgICAgICAgICAgICAgIERBQ19ESFIxMlIyX0RBQ0MyREhSX01zayAgICAgICAgICAgLyohPERBQyBjaGFubmVsMiAxMi1iaXQgUmlnaHQgYWxpZ25lZCBkYXRhICovDQoNCi8qKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIERBQ19ESFIxMkwyIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIERBQ19ESFIxMkwyX0RBQ0MyREhSX1BvcyAgICAgICAgICAgICg0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIERBQ19ESFIxMkwyX0RBQ0MyREhSX01zayAgICAgICAgICAgICgweEZGRlUgPDwgREFDX0RIUjEyTDJfREFDQzJESFJfUG9zKSAvKiE8IDB4MDAwMEZGRjAgKi8NCiNkZWZpbmUgREFDX0RIUjEyTDJfREFDQzJESFIgICAgICAgICAgICAgICAgREFDX0RIUjEyTDJfREFDQzJESFJfTXNrICAgICAgICAgICAvKiE8REFDIGNoYW5uZWwyIDEyLWJpdCBMZWZ0IGFsaWduZWQgZGF0YSAqLw0KDQovKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgREFDX0RIUjhSMiByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBEQUNfREhSOFIyX0RBQ0MyREhSX1BvcyAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBEQUNfREhSOFIyX0RBQ0MyREhSX01zayAgICAgICAgICAgICAoMHhGRlUgPDwgREFDX0RIUjhSMl9EQUNDMkRIUl9Qb3MpIC8qITwgMHgwMDAwMDBGRiAqLw0KI2RlZmluZSBEQUNfREhSOFIyX0RBQ0MyREhSICAgICAgICAgICAgICAgICBEQUNfREhSOFIyX0RBQ0MyREhSX01zayAgICAgICAgICAgIC8qITxEQUMgY2hhbm5lbDIgOC1iaXQgUmlnaHQgYWxpZ25lZCBkYXRhICovDQoNCi8qKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIERBQ19ESFIxMlJEIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIERBQ19ESFIxMlJEX0RBQ0MxREhSX1BvcyAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIERBQ19ESFIxMlJEX0RBQ0MxREhSX01zayAgICAgICAgICAgICgweEZGRlUgPDwgREFDX0RIUjEyUkRfREFDQzFESFJfUG9zKSAvKiE8IDB4MDAwMDBGRkYgKi8NCiNkZWZpbmUgREFDX0RIUjEyUkRfREFDQzFESFIgICAgICAgICAgICAgICAgREFDX0RIUjEyUkRfREFDQzFESFJfTXNrICAgICAgICAgICAvKiE8REFDIGNoYW5uZWwxIDEyLWJpdCBSaWdodCBhbGlnbmVkIGRhdGEgKi8NCiNkZWZpbmUgREFDX0RIUjEyUkRfREFDQzJESFJfUG9zICAgICAgICAgICAgKDE2VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgREFDX0RIUjEyUkRfREFDQzJESFJfTXNrICAgICAgICAgICAgKDB4RkZGVSA8PCBEQUNfREhSMTJSRF9EQUNDMkRIUl9Qb3MpIC8qITwgMHgwRkZGMDAwMCAqLw0KI2RlZmluZSBEQUNfREhSMTJSRF9EQUNDMkRIUiAgICAgICAgICAgICAgICBEQUNfREhSMTJSRF9EQUNDMkRIUl9Nc2sgICAgICAgICAgIC8qITxEQUMgY2hhbm5lbDIgMTItYml0IFJpZ2h0IGFsaWduZWQgZGF0YSAqLw0KDQovKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBEQUNfREhSMTJMRCByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBEQUNfREhSMTJMRF9EQUNDMURIUl9Qb3MgICAgICAgICAgICAoNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBEQUNfREhSMTJMRF9EQUNDMURIUl9Nc2sgICAgICAgICAgICAoMHhGRkZVIDw8IERBQ19ESFIxMkxEX0RBQ0MxREhSX1BvcykgLyohPCAweDAwMDBGRkYwICovDQojZGVmaW5lIERBQ19ESFIxMkxEX0RBQ0MxREhSICAgICAgICAgICAgICAgIERBQ19ESFIxMkxEX0RBQ0MxREhSX01zayAgICAgICAgICAgLyohPERBQyBjaGFubmVsMSAxMi1iaXQgTGVmdCBhbGlnbmVkIGRhdGEgKi8NCiNkZWZpbmUgREFDX0RIUjEyTERfREFDQzJESFJfUG9zICAgICAgICAgICAgKDIwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgREFDX0RIUjEyTERfREFDQzJESFJfTXNrICAgICAgICAgICAgKDB4RkZGVSA8PCBEQUNfREhSMTJMRF9EQUNDMkRIUl9Qb3MpIC8qITwgMHhGRkYwMDAwMCAqLw0KI2RlZmluZSBEQUNfREhSMTJMRF9EQUNDMkRIUiAgICAgICAgICAgICAgICBEQUNfREhSMTJMRF9EQUNDMkRIUl9Nc2sgICAgICAgICAgIC8qITxEQUMgY2hhbm5lbDIgMTItYml0IExlZnQgYWxpZ25lZCBkYXRhICovDQoNCi8qKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBEQUNfREhSOFJEIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIERBQ19ESFI4UkRfREFDQzFESFJfUG9zICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIERBQ19ESFI4UkRfREFDQzFESFJfTXNrICAgICAgICAgICAgICgweEZGVSA8PCBEQUNfREhSOFJEX0RBQ0MxREhSX1BvcykgLyohPCAweDAwMDAwMEZGICovDQojZGVmaW5lIERBQ19ESFI4UkRfREFDQzFESFIgICAgICAgICAgICAgICAgIERBQ19ESFI4UkRfREFDQzFESFJfTXNrICAgICAgICAgICAgLyohPERBQyBjaGFubmVsMSA4LWJpdCBSaWdodCBhbGlnbmVkIGRhdGEgKi8NCiNkZWZpbmUgREFDX0RIUjhSRF9EQUNDMkRIUl9Qb3MgICAgICAgICAgICAgKDhVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgREFDX0RIUjhSRF9EQUNDMkRIUl9Nc2sgICAgICAgICAgICAgKDB4RkZVIDw8IERBQ19ESFI4UkRfREFDQzJESFJfUG9zKSAvKiE8IDB4MDAwMEZGMDAgKi8NCiNkZWZpbmUgREFDX0RIUjhSRF9EQUNDMkRIUiAgICAgICAgICAgICAgICAgREFDX0RIUjhSRF9EQUNDMkRIUl9Nc2sgICAgICAgICAgICAvKiE8REFDIGNoYW5uZWwyIDgtYml0IFJpZ2h0IGFsaWduZWQgZGF0YSAqLw0KDQovKioqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIERBQ19ET1IxIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBEQUNfRE9SMV9EQUNDMURPUl9Qb3MgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBEQUNfRE9SMV9EQUNDMURPUl9Nc2sgICAgICAgICAgICAgICAoMHhGRkZVIDw8IERBQ19ET1IxX0RBQ0MxRE9SX1BvcykgIC8qITwgMHgwMDAwMEZGRiAqLw0KI2RlZmluZSBEQUNfRE9SMV9EQUNDMURPUiAgICAgICAgICAgICAgICAgICBEQUNfRE9SMV9EQUNDMURPUl9Nc2sgICAgICAgICAgICAgIC8qITxEQUMgY2hhbm5lbDEgZGF0YSBvdXRwdXQgKi8NCg0KLyoqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBEQUNfRE9SMiByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgREFDX0RPUjJfREFDQzJET1JfUG9zICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgREFDX0RPUjJfREFDQzJET1JfTXNrICAgICAgICAgICAgICAgKDB4RkZGVSA8PCBEQUNfRE9SMl9EQUNDMkRPUl9Qb3MpICAvKiE8IDB4MDAwMDBGRkYgKi8NCiNkZWZpbmUgREFDX0RPUjJfREFDQzJET1IgICAgICAgICAgICAgICAgICAgREFDX0RPUjJfREFDQzJET1JfTXNrICAgICAgICAgICAgICAvKiE8REFDIGNoYW5uZWwyIGRhdGEgb3V0cHV0ICovDQoNCi8qKioqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIERBQ19TUiByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIERBQ19TUl9ETUFVRFIxX1BvcyAgICAgICAgICAgICAgICAgICgxM1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIERBQ19TUl9ETUFVRFIxX01zayAgICAgICAgICAgICAgICAgICgweDFVIDw8IERBQ19TUl9ETUFVRFIxX1BvcykgICAgICAgLyohPCAweDAwMDAyMDAwICovDQojZGVmaW5lIERBQ19TUl9ETUFVRFIxICAgICAgICAgICAgICAgICAgICAgIERBQ19TUl9ETUFVRFIxX01zayAgICAgICAgICAgICAgICAgLyohPERBQyBjaGFubmVsMSBETUEgdW5kZXJydW4gZmxhZyAqLw0KI2RlZmluZSBEQUNfU1JfRE1BVURSMl9Qb3MgICAgICAgICAgICAgICAgICAoMjlVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBEQUNfU1JfRE1BVURSMl9Nc2sgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBEQUNfU1JfRE1BVURSMl9Qb3MpICAgICAgIC8qITwgMHgyMDAwMDAwMCAqLw0KI2RlZmluZSBEQUNfU1JfRE1BVURSMiAgICAgICAgICAgICAgICAgICAgICBEQUNfU1JfRE1BVURSMl9Nc2sgICAgICAgICAgICAgICAgIC8qITxEQUMgY2hhbm5lbDIgRE1BIHVuZGVycnVuIGZsYWcgKi8NCg0KLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8NCi8qICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovDQovKiAgICAgICAgICAgICAgICAgICAgICAgICAgIERlYnVnIE1DVSAoREJHTUNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLw0KLyogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8NCi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovDQoNCi8qKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgREJHTUNVX0lEQ09ERSByZWdpc3RlciAgKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIERCR01DVV9JRENPREVfREVWX0lEX1BvcyAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIERCR01DVV9JRENPREVfREVWX0lEX01zayAgICAgICAgICAgICAgICAgKDB4RkZGVSA8PCBEQkdNQ1VfSURDT0RFX0RFVl9JRF9Qb3MpIC8qITwgMHgwMDAwMEZGRiAqLw0KI2RlZmluZSBEQkdNQ1VfSURDT0RFX0RFVl9JRCAgICAgICAgICAgICAgICAgICAgIERCR01DVV9JRENPREVfREVWX0lEX01zayAgICAgIC8qITwgRGV2aWNlIElkZW50aWZpZXIgKi8NCg0KI2RlZmluZSBEQkdNQ1VfSURDT0RFX1JFVl9JRF9Qb3MgICAgICAgICAgICAgICAgICgxNlUpICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBEQkdNQ1VfSURDT0RFX1JFVl9JRF9Nc2sgICAgICAgICAgICAgICAgICgweEZGRkZVIDw8IERCR01DVV9JRENPREVfUkVWX0lEX1BvcykgLyohPCAweEZGRkYwMDAwICovDQojZGVmaW5lIERCR01DVV9JRENPREVfUkVWX0lEICAgICAgICAgICAgICAgICAgICAgREJHTUNVX0lEQ09ERV9SRVZfSURfTXNrICAgICAgLyohPCBSRVZfSURbMTU6MF0gYml0cyAoUmV2aXNpb24gSWRlbnRpZmllcikgKi8NCiNkZWZpbmUgREJHTUNVX0lEQ09ERV9SRVZfSURfMCAgICAgICAgICAgICAgICAgICAoMHgwMDAxVSA8PCBEQkdNQ1VfSURDT0RFX1JFVl9JRF9Qb3MpIC8qITwgMHgwMDAxMDAwMCAqLw0KI2RlZmluZSBEQkdNQ1VfSURDT0RFX1JFVl9JRF8xICAgICAgICAgICAgICAgICAgICgweDAwMDJVIDw8IERCR01DVV9JRENPREVfUkVWX0lEX1BvcykgLyohPCAweDAwMDIwMDAwICovDQojZGVmaW5lIERCR01DVV9JRENPREVfUkVWX0lEXzIgICAgICAgICAgICAgICAgICAgKDB4MDAwNFUgPDwgREJHTUNVX0lEQ09ERV9SRVZfSURfUG9zKSAvKiE8IDB4MDAwNDAwMDAgKi8NCiNkZWZpbmUgREJHTUNVX0lEQ09ERV9SRVZfSURfMyAgICAgICAgICAgICAgICAgICAoMHgwMDA4VSA8PCBEQkdNQ1VfSURDT0RFX1JFVl9JRF9Qb3MpIC8qITwgMHgwMDA4MDAwMCAqLw0KI2RlZmluZSBEQkdNQ1VfSURDT0RFX1JFVl9JRF80ICAgICAgICAgICAgICAgICAgICgweDAwMTBVIDw8IERCR01DVV9JRENPREVfUkVWX0lEX1BvcykgLyohPCAweDAwMTAwMDAwICovDQojZGVmaW5lIERCR01DVV9JRENPREVfUkVWX0lEXzUgICAgICAgICAgICAgICAgICAgKDB4MDAyMFUgPDwgREJHTUNVX0lEQ09ERV9SRVZfSURfUG9zKSAvKiE8IDB4MDAyMDAwMDAgKi8NCiNkZWZpbmUgREJHTUNVX0lEQ09ERV9SRVZfSURfNiAgICAgICAgICAgICAgICAgICAoMHgwMDQwVSA8PCBEQkdNQ1VfSURDT0RFX1JFVl9JRF9Qb3MpIC8qITwgMHgwMDQwMDAwMCAqLw0KI2RlZmluZSBEQkdNQ1VfSURDT0RFX1JFVl9JRF83ICAgICAgICAgICAgICAgICAgICgweDAwODBVIDw8IERCR01DVV9JRENPREVfUkVWX0lEX1BvcykgLyohPCAweDAwODAwMDAwICovDQojZGVmaW5lIERCR01DVV9JRENPREVfUkVWX0lEXzggICAgICAgICAgICAgICAgICAgKDB4MDEwMFUgPDwgREJHTUNVX0lEQ09ERV9SRVZfSURfUG9zKSAvKiE8IDB4MDEwMDAwMDAgKi8NCiNkZWZpbmUgREJHTUNVX0lEQ09ERV9SRVZfSURfOSAgICAgICAgICAgICAgICAgICAoMHgwMjAwVSA8PCBEQkdNQ1VfSURDT0RFX1JFVl9JRF9Qb3MpIC8qITwgMHgwMjAwMDAwMCAqLw0KI2RlZmluZSBEQkdNQ1VfSURDT0RFX1JFVl9JRF8xMCAgICAgICAgICAgICAgICAgICgweDA0MDBVIDw8IERCR01DVV9JRENPREVfUkVWX0lEX1BvcykgLyohPCAweDA0MDAwMDAwICovDQojZGVmaW5lIERCR01DVV9JRENPREVfUkVWX0lEXzExICAgICAgICAgICAgICAgICAgKDB4MDgwMFUgPDwgREJHTUNVX0lEQ09ERV9SRVZfSURfUG9zKSAvKiE8IDB4MDgwMDAwMDAgKi8NCiNkZWZpbmUgREJHTUNVX0lEQ09ERV9SRVZfSURfMTIgICAgICAgICAgICAgICAgICAoMHgxMDAwVSA8PCBEQkdNQ1VfSURDT0RFX1JFVl9JRF9Qb3MpIC8qITwgMHgxMDAwMDAwMCAqLw0KI2RlZmluZSBEQkdNQ1VfSURDT0RFX1JFVl9JRF8xMyAgICAgICAgICAgICAgICAgICgweDIwMDBVIDw8IERCR01DVV9JRENPREVfUkVWX0lEX1BvcykgLyohPCAweDIwMDAwMDAwICovDQojZGVmaW5lIERCR01DVV9JRENPREVfUkVWX0lEXzE0ICAgICAgICAgICAgICAgICAgKDB4NDAwMFUgPDwgREJHTUNVX0lEQ09ERV9SRVZfSURfUG9zKSAvKiE8IDB4NDAwMDAwMDAgKi8NCiNkZWZpbmUgREJHTUNVX0lEQ09ERV9SRVZfSURfMTUgICAgICAgICAgICAgICAgICAoMHg4MDAwVSA8PCBEQkdNQ1VfSURDT0RFX1JFVl9JRF9Qb3MpIC8qITwgMHg4MDAwMDAwMCAqLw0KDQovKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgREJHTUNVX0NSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBEQkdNQ1VfQ1JfREJHX1NMRUVQX1BvcyAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBEQkdNQ1VfQ1JfREJHX1NMRUVQX01zayAgICAgICAgICAgICAgICAgICgweDFVIDw8IERCR01DVV9DUl9EQkdfU0xFRVBfUG9zKSAvKiE8IDB4MDAwMDAwMDEgKi8NCiNkZWZpbmUgREJHTUNVX0NSX0RCR19TTEVFUCAgICAgICAgICAgICAgICAgICAgICBEQkdNQ1VfQ1JfREJHX1NMRUVQX01zayAgICAgICAvKiE8IERlYnVnIFNsZWVwIE1vZGUgKi8NCiNkZWZpbmUgREJHTUNVX0NSX0RCR19TVE9QX1BvcyAgICAgICAgICAgICAgICAgICAoMVUpICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgREJHTUNVX0NSX0RCR19TVE9QX01zayAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBEQkdNQ1VfQ1JfREJHX1NUT1BfUG9zKSAvKiE8IDB4MDAwMDAwMDIgKi8NCiNkZWZpbmUgREJHTUNVX0NSX0RCR19TVE9QICAgICAgICAgICAgICAgICAgICAgICBEQkdNQ1VfQ1JfREJHX1NUT1BfTXNrICAgICAgICAvKiE8IERlYnVnIFN0b3AgTW9kZSAqLw0KI2RlZmluZSBEQkdNQ1VfQ1JfREJHX1NUQU5EQllfUG9zICAgICAgICAgICAgICAgICgyVSkgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBEQkdNQ1VfQ1JfREJHX1NUQU5EQllfTXNrICAgICAgICAgICAgICAgICgweDFVIDw8IERCR01DVV9DUl9EQkdfU1RBTkRCWV9Qb3MpIC8qITwgMHgwMDAwMDAwNCAqLw0KI2RlZmluZSBEQkdNQ1VfQ1JfREJHX1NUQU5EQlkgICAgICAgICAgICAgICAgICAgIERCR01DVV9DUl9EQkdfU1RBTkRCWV9Nc2sgICAgIC8qITwgRGVidWcgU3RhbmRieSBtb2RlICovDQojZGVmaW5lIERCR01DVV9DUl9UUkFDRV9JT0VOX1BvcyAgICAgICAgICAgICAgICAgKDVVKSAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIERCR01DVV9DUl9UUkFDRV9JT0VOX01zayAgICAgICAgICAgICAgICAgKDB4MVUgPDwgREJHTUNVX0NSX1RSQUNFX0lPRU5fUG9zKSAvKiE8IDB4MDAwMDAwMjAgKi8NCiNkZWZpbmUgREJHTUNVX0NSX1RSQUNFX0lPRU4gICAgICAgICAgICAgICAgICAgICBEQkdNQ1VfQ1JfVFJBQ0VfSU9FTl9Nc2sgICAgICAvKiE8IFRyYWNlIFBpbiBBc3NpZ25tZW50IENvbnRyb2wgKi8NCg0KI2RlZmluZSBEQkdNQ1VfQ1JfVFJBQ0VfTU9ERV9Qb3MgICAgICAgICAgICAgICAgICg2VSkgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBEQkdNQ1VfQ1JfVFJBQ0VfTU9ERV9Nc2sgICAgICAgICAgICAgICAgICgweDNVIDw8IERCR01DVV9DUl9UUkFDRV9NT0RFX1BvcykgLyohPCAweDAwMDAwMEMwICovDQojZGVmaW5lIERCR01DVV9DUl9UUkFDRV9NT0RFICAgICAgICAgICAgICAgICAgICAgREJHTUNVX0NSX1RSQUNFX01PREVfTXNrICAgICAgLyohPCBUUkFDRV9NT0RFWzE6MF0gYml0cyAoVHJhY2UgUGluIEFzc2lnbm1lbnQgQ29udHJvbCkgKi8NCiNkZWZpbmUgREJHTUNVX0NSX1RSQUNFX01PREVfMCAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBEQkdNQ1VfQ1JfVFJBQ0VfTU9ERV9Qb3MpIC8qITwgMHgwMDAwMDA0MCAqLw0KI2RlZmluZSBEQkdNQ1VfQ1JfVFJBQ0VfTU9ERV8xICAgICAgICAgICAgICAgICAgICgweDJVIDw8IERCR01DVV9DUl9UUkFDRV9NT0RFX1BvcykgLyohPCAweDAwMDAwMDgwICovDQoNCi8qKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBEQkdNQ1VfQVBCMV9GWiByZWdpc3RlciAgKioqKioqKioqKioqKiovDQoNCiNkZWZpbmUgREJHTUNVX0FQQjFfRlpfREJHX1RJTTJfU1RPUF9Qb3MgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgREJHTUNVX0FQQjFfRlpfREJHX1RJTTJfU1RPUF9Nc2sgICAgICAgICAoMHgxVSA8PCBEQkdNQ1VfQVBCMV9GWl9EQkdfVElNMl9TVE9QX1BvcykgLyohPCAweDAwMDAwMDAxICovDQojZGVmaW5lIERCR01DVV9BUEIxX0ZaX0RCR19USU0yX1NUT1AgICAgICAgICAgICAgREJHTUNVX0FQQjFfRlpfREJHX1RJTTJfU1RPUF9Nc2sgLyohPCBUSU0yIGNvdW50ZXIgc3RvcHBlZCB3aGVuIGNvcmUgaXMgaGFsdGVkICovDQojZGVmaW5lIERCR01DVV9BUEIxX0ZaX0RCR19USU0zX1NUT1BfUG9zICAgICAgICAgKDFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIERCR01DVV9BUEIxX0ZaX0RCR19USU0zX1NUT1BfTXNrICAgICAgICAgKDB4MVUgPDwgREJHTUNVX0FQQjFfRlpfREJHX1RJTTNfU1RPUF9Qb3MpIC8qITwgMHgwMDAwMDAwMiAqLw0KI2RlZmluZSBEQkdNQ1VfQVBCMV9GWl9EQkdfVElNM19TVE9QICAgICAgICAgICAgIERCR01DVV9BUEIxX0ZaX0RCR19USU0zX1NUT1BfTXNrIC8qITwgVElNMyBjb3VudGVyIHN0b3BwZWQgd2hlbiBjb3JlIGlzIGhhbHRlZCAqLw0KI2RlZmluZSBEQkdNQ1VfQVBCMV9GWl9EQkdfVElNNF9TVE9QX1BvcyAgICAgICAgICgyVSkgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBEQkdNQ1VfQVBCMV9GWl9EQkdfVElNNF9TVE9QX01zayAgICAgICAgICgweDFVIDw8IERCR01DVV9BUEIxX0ZaX0RCR19USU00X1NUT1BfUG9zKSAvKiE8IDB4MDAwMDAwMDQgKi8NCiNkZWZpbmUgREJHTUNVX0FQQjFfRlpfREJHX1RJTTRfU1RPUCAgICAgICAgICAgICBEQkdNQ1VfQVBCMV9GWl9EQkdfVElNNF9TVE9QX01zayAvKiE8IFRJTTQgY291bnRlciBzdG9wcGVkIHdoZW4gY29yZSBpcyBoYWx0ZWQgKi8NCiNkZWZpbmUgREJHTUNVX0FQQjFfRlpfREJHX1RJTTVfU1RPUF9Qb3MgICAgICAgICAoM1UpICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgREJHTUNVX0FQQjFfRlpfREJHX1RJTTVfU1RPUF9Nc2sgICAgICAgICAoMHgxVSA8PCBEQkdNQ1VfQVBCMV9GWl9EQkdfVElNNV9TVE9QX1BvcykgLyohPCAweDAwMDAwMDA4ICovDQojZGVmaW5lIERCR01DVV9BUEIxX0ZaX0RCR19USU01X1NUT1AgICAgICAgICAgICAgREJHTUNVX0FQQjFfRlpfREJHX1RJTTVfU1RPUF9Nc2sgLyohPCBUSU01IGNvdW50ZXIgc3RvcHBlZCB3aGVuIGNvcmUgaXMgaGFsdGVkICovDQojZGVmaW5lIERCR01DVV9BUEIxX0ZaX0RCR19USU02X1NUT1BfUG9zICAgICAgICAgKDRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIERCR01DVV9BUEIxX0ZaX0RCR19USU02X1NUT1BfTXNrICAgICAgICAgKDB4MVUgPDwgREJHTUNVX0FQQjFfRlpfREJHX1RJTTZfU1RPUF9Qb3MpIC8qITwgMHgwMDAwMDAxMCAqLw0KI2RlZmluZSBEQkdNQ1VfQVBCMV9GWl9EQkdfVElNNl9TVE9QICAgICAgICAgICAgIERCR01DVV9BUEIxX0ZaX0RCR19USU02X1NUT1BfTXNrIC8qITwgVElNNiBjb3VudGVyIHN0b3BwZWQgd2hlbiBjb3JlIGlzIGhhbHRlZCAqLw0KI2RlZmluZSBEQkdNQ1VfQVBCMV9GWl9EQkdfVElNN19TVE9QX1BvcyAgICAgICAgICg1VSkgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBEQkdNQ1VfQVBCMV9GWl9EQkdfVElNN19TVE9QX01zayAgICAgICAgICgweDFVIDw8IERCR01DVV9BUEIxX0ZaX0RCR19USU03X1NUT1BfUG9zKSAvKiE8IDB4MDAwMDAwMjAgKi8NCiNkZWZpbmUgREJHTUNVX0FQQjFfRlpfREJHX1RJTTdfU1RPUCAgICAgICAgICAgICBEQkdNQ1VfQVBCMV9GWl9EQkdfVElNN19TVE9QX01zayAvKiE8IFRJTTcgY291bnRlciBzdG9wcGVkIHdoZW4gY29yZSBpcyBoYWx0ZWQgKi8NCiNkZWZpbmUgREJHTUNVX0FQQjFfRlpfREJHX1JUQ19TVE9QX1BvcyAgICAgICAgICAoMTBVKSAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgREJHTUNVX0FQQjFfRlpfREJHX1JUQ19TVE9QX01zayAgICAgICAgICAoMHgxVSA8PCBEQkdNQ1VfQVBCMV9GWl9EQkdfUlRDX1NUT1BfUG9zKSAvKiE8IDB4MDAwMDA0MDAgKi8NCiNkZWZpbmUgREJHTUNVX0FQQjFfRlpfREJHX1JUQ19TVE9QICAgICAgICAgICAgICBEQkdNQ1VfQVBCMV9GWl9EQkdfUlRDX1NUT1BfTXNrIC8qITwgUlRDIENvdW50ZXIgc3RvcHBlZCB3aGVuIENvcmUgaXMgaGFsdGVkICovDQojZGVmaW5lIERCR01DVV9BUEIxX0ZaX0RCR19XV0RHX1NUT1BfUG9zICAgICAgICAgKDExVSkgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIERCR01DVV9BUEIxX0ZaX0RCR19XV0RHX1NUT1BfTXNrICAgICAgICAgKDB4MVUgPDwgREJHTUNVX0FQQjFfRlpfREJHX1dXREdfU1RPUF9Qb3MpIC8qITwgMHgwMDAwMDgwMCAqLw0KI2RlZmluZSBEQkdNQ1VfQVBCMV9GWl9EQkdfV1dER19TVE9QICAgICAgICAgICAgIERCR01DVV9BUEIxX0ZaX0RCR19XV0RHX1NUT1BfTXNrIC8qITwgRGVidWcgV2luZG93IFdhdGNoZG9nIHN0b3BwZWQgd2hlbiBDb3JlIGlzIGhhbHRlZCAqLw0KI2RlZmluZSBEQkdNQ1VfQVBCMV9GWl9EQkdfSVdER19TVE9QX1BvcyAgICAgICAgICgxMlUpICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBEQkdNQ1VfQVBCMV9GWl9EQkdfSVdER19TVE9QX01zayAgICAgICAgICgweDFVIDw8IERCR01DVV9BUEIxX0ZaX0RCR19JV0RHX1NUT1BfUG9zKSAvKiE8IDB4MDAwMDEwMDAgKi8NCiNkZWZpbmUgREJHTUNVX0FQQjFfRlpfREJHX0lXREdfU1RPUCAgICAgICAgICAgICBEQkdNQ1VfQVBCMV9GWl9EQkdfSVdER19TVE9QX01zayAvKiE8IERlYnVnIEluZGVwZW5kZW50IFdhdGNoZG9nIHN0b3BwZWQgd2hlbiBDb3JlIGlzIGhhbHRlZCAqLw0KI2RlZmluZSBEQkdNQ1VfQVBCMV9GWl9EQkdfSTJDMV9TTUJVU19USU1FT1VUX1BvcyAoMjFVKSAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBEQkdNQ1VfQVBCMV9GWl9EQkdfSTJDMV9TTUJVU19USU1FT1VUX01zayAoMHgxVSA8PCBEQkdNQ1VfQVBCMV9GWl9EQkdfSTJDMV9TTUJVU19USU1FT1VUX1BvcykgLyohPCAweDAwMjAwMDAwICovDQojZGVmaW5lIERCR01DVV9BUEIxX0ZaX0RCR19JMkMxX1NNQlVTX1RJTUVPVVQgICAgREJHTUNVX0FQQjFfRlpfREJHX0kyQzFfU01CVVNfVElNRU9VVF9Nc2sgLyohPCBTTUJVUyB0aW1lb3V0IG1vZGUgc3RvcHBlZCB3aGVuIENvcmUgaXMgaGFsdGVkICovDQojZGVmaW5lIERCR01DVV9BUEIxX0ZaX0RCR19JMkMyX1NNQlVTX1RJTUVPVVRfUG9zICgyMlUpICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIERCR01DVV9BUEIxX0ZaX0RCR19JMkMyX1NNQlVTX1RJTUVPVVRfTXNrICgweDFVIDw8IERCR01DVV9BUEIxX0ZaX0RCR19JMkMyX1NNQlVTX1RJTUVPVVRfUG9zKSAvKiE8IDB4MDA0MDAwMDAgKi8NCiNkZWZpbmUgREJHTUNVX0FQQjFfRlpfREJHX0kyQzJfU01CVVNfVElNRU9VVCAgICBEQkdNQ1VfQVBCMV9GWl9EQkdfSTJDMl9TTUJVU19USU1FT1VUX01zayAvKiE8IFNNQlVTIHRpbWVvdXQgbW9kZSBzdG9wcGVkIHdoZW4gQ29yZSBpcyBoYWx0ZWQgKi8NCg0KLyoqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIERCR01DVV9BUEIyX0ZaIHJlZ2lzdGVyICAqKioqKioqKioqKioqKi8NCg0KI2RlZmluZSBEQkdNQ1VfQVBCMl9GWl9EQkdfVElNOV9TVE9QX1BvcyAgICAgICAgICgyVSkgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBEQkdNQ1VfQVBCMl9GWl9EQkdfVElNOV9TVE9QX01zayAgICAgICAgICgweDFVIDw8IERCR01DVV9BUEIyX0ZaX0RCR19USU05X1NUT1BfUG9zKSAvKiE8IDB4MDAwMDAwMDQgKi8NCiNkZWZpbmUgREJHTUNVX0FQQjJfRlpfREJHX1RJTTlfU1RPUCAgICAgICAgICAgICBEQkdNQ1VfQVBCMl9GWl9EQkdfVElNOV9TVE9QX01zayAvKiE8IFRJTTkgY291bnRlciBzdG9wcGVkIHdoZW4gY29yZSBpcyBoYWx0ZWQgKi8NCiNkZWZpbmUgREJHTUNVX0FQQjJfRlpfREJHX1RJTTEwX1NUT1BfUG9zICAgICAgICAoM1UpICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgREJHTUNVX0FQQjJfRlpfREJHX1RJTTEwX1NUT1BfTXNrICAgICAgICAoMHgxVSA8PCBEQkdNQ1VfQVBCMl9GWl9EQkdfVElNMTBfU1RPUF9Qb3MpIC8qITwgMHgwMDAwMDAwOCAqLw0KI2RlZmluZSBEQkdNQ1VfQVBCMl9GWl9EQkdfVElNMTBfU1RPUCAgICAgICAgICAgIERCR01DVV9BUEIyX0ZaX0RCR19USU0xMF9TVE9QX01zayAvKiE8IFRJTTEwIGNvdW50ZXIgc3RvcHBlZCB3aGVuIGNvcmUgaXMgaGFsdGVkICovDQojZGVmaW5lIERCR01DVV9BUEIyX0ZaX0RCR19USU0xMV9TVE9QX1BvcyAgICAgICAgKDRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIERCR01DVV9BUEIyX0ZaX0RCR19USU0xMV9TVE9QX01zayAgICAgICAgKDB4MVUgPDwgREJHTUNVX0FQQjJfRlpfREJHX1RJTTExX1NUT1BfUG9zKSAvKiE8IDB4MDAwMDAwMTAgKi8NCiNkZWZpbmUgREJHTUNVX0FQQjJfRlpfREJHX1RJTTExX1NUT1AgICAgICAgICAgICBEQkdNQ1VfQVBCMl9GWl9EQkdfVElNMTFfU1RPUF9Nc2sgLyohPCBUSU0xMSBjb3VudGVyIHN0b3BwZWQgd2hlbiBjb3JlIGlzIGhhbHRlZCAqLw0KDQovKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLw0KLyogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8NCi8qICAgICAgICAgICAgICAgICAgICAgICAgICAgRE1BIENvbnRyb2xsZXIgKERNQSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovDQovKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLw0KLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8NCg0KLyoqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBETUFfSVNSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgRE1BX0lTUl9HSUYxX1BvcyAgICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRE1BX0lTUl9HSUYxX01zayAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgRE1BX0lTUl9HSUYxX1BvcykgICAgICAgICAvKiE8IDB4MDAwMDAwMDEgKi8NCiNkZWZpbmUgRE1BX0lTUl9HSUYxICAgICAgICAgICAgICAgICAgICAgICAgRE1BX0lTUl9HSUYxX01zayAgICAgICAgICAgICAgICAgICAvKiE8IENoYW5uZWwgMSBHbG9iYWwgaW50ZXJydXB0IGZsYWcgKi8NCiNkZWZpbmUgRE1BX0lTUl9UQ0lGMV9Qb3MgICAgICAgICAgICAgICAgICAgKDFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRE1BX0lTUl9UQ0lGMV9Nc2sgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgRE1BX0lTUl9UQ0lGMV9Qb3MpICAgICAgICAvKiE8IDB4MDAwMDAwMDIgKi8NCiNkZWZpbmUgRE1BX0lTUl9UQ0lGMSAgICAgICAgICAgICAgICAgICAgICAgRE1BX0lTUl9UQ0lGMV9Nc2sgICAgICAgICAgICAgICAgICAvKiE8IENoYW5uZWwgMSBUcmFuc2ZlciBDb21wbGV0ZSBmbGFnICovDQojZGVmaW5lIERNQV9JU1JfSFRJRjFfUG9zICAgICAgICAgICAgICAgICAgICgyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIERNQV9JU1JfSFRJRjFfTXNrICAgICAgICAgICAgICAgICAgICgweDFVIDw8IERNQV9JU1JfSFRJRjFfUG9zKSAgICAgICAgLyohPCAweDAwMDAwMDA0ICovDQojZGVmaW5lIERNQV9JU1JfSFRJRjEgICAgICAgICAgICAgICAgICAgICAgIERNQV9JU1JfSFRJRjFfTXNrICAgICAgICAgICAgICAgICAgLyohPCBDaGFubmVsIDEgSGFsZiBUcmFuc2ZlciBmbGFnICovDQojZGVmaW5lIERNQV9JU1JfVEVJRjFfUG9zICAgICAgICAgICAgICAgICAgICgzVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIERNQV9JU1JfVEVJRjFfTXNrICAgICAgICAgICAgICAgICAgICgweDFVIDw8IERNQV9JU1JfVEVJRjFfUG9zKSAgICAgICAgLyohPCAweDAwMDAwMDA4ICovDQojZGVmaW5lIERNQV9JU1JfVEVJRjEgICAgICAgICAgICAgICAgICAgICAgIERNQV9JU1JfVEVJRjFfTXNrICAgICAgICAgICAgICAgICAgLyohPCBDaGFubmVsIDEgVHJhbnNmZXIgRXJyb3IgZmxhZyAqLw0KI2RlZmluZSBETUFfSVNSX0dJRjJfUG9zICAgICAgICAgICAgICAgICAgICAoNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBETUFfSVNSX0dJRjJfTXNrICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBETUFfSVNSX0dJRjJfUG9zKSAgICAgICAgIC8qITwgMHgwMDAwMDAxMCAqLw0KI2RlZmluZSBETUFfSVNSX0dJRjIgICAgICAgICAgICAgICAgICAgICAgICBETUFfSVNSX0dJRjJfTXNrICAgICAgICAgICAgICAgICAgIC8qITwgQ2hhbm5lbCAyIEdsb2JhbCBpbnRlcnJ1cHQgZmxhZyAqLw0KI2RlZmluZSBETUFfSVNSX1RDSUYyX1BvcyAgICAgICAgICAgICAgICAgICAoNVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBETUFfSVNSX1RDSUYyX01zayAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBETUFfSVNSX1RDSUYyX1BvcykgICAgICAgIC8qITwgMHgwMDAwMDAyMCAqLw0KI2RlZmluZSBETUFfSVNSX1RDSUYyICAgICAgICAgICAgICAgICAgICAgICBETUFfSVNSX1RDSUYyX01zayAgICAgICAgICAgICAgICAgIC8qITwgQ2hhbm5lbCAyIFRyYW5zZmVyIENvbXBsZXRlIGZsYWcgKi8NCiNkZWZpbmUgRE1BX0lTUl9IVElGMl9Qb3MgICAgICAgICAgICAgICAgICAgKDZVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRE1BX0lTUl9IVElGMl9Nc2sgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgRE1BX0lTUl9IVElGMl9Qb3MpICAgICAgICAvKiE8IDB4MDAwMDAwNDAgKi8NCiNkZWZpbmUgRE1BX0lTUl9IVElGMiAgICAgICAgICAgICAgICAgICAgICAgRE1BX0lTUl9IVElGMl9Nc2sgICAgICAgICAgICAgICAgICAvKiE8IENoYW5uZWwgMiBIYWxmIFRyYW5zZmVyIGZsYWcgKi8NCiNkZWZpbmUgRE1BX0lTUl9URUlGMl9Qb3MgICAgICAgICAgICAgICAgICAgKDdVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRE1BX0lTUl9URUlGMl9Nc2sgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgRE1BX0lTUl9URUlGMl9Qb3MpICAgICAgICAvKiE8IDB4MDAwMDAwODAgKi8NCiNkZWZpbmUgRE1BX0lTUl9URUlGMiAgICAgICAgICAgICAgICAgICAgICAgRE1BX0lTUl9URUlGMl9Nc2sgICAgICAgICAgICAgICAgICAvKiE8IENoYW5uZWwgMiBUcmFuc2ZlciBFcnJvciBmbGFnICovDQojZGVmaW5lIERNQV9JU1JfR0lGM19Qb3MgICAgICAgICAgICAgICAgICAgICg4VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIERNQV9JU1JfR0lGM19Nc2sgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IERNQV9JU1JfR0lGM19Qb3MpICAgICAgICAgLyohPCAweDAwMDAwMTAwICovDQojZGVmaW5lIERNQV9JU1JfR0lGMyAgICAgICAgICAgICAgICAgICAgICAgIERNQV9JU1JfR0lGM19Nc2sgICAgICAgICAgICAgICAgICAgLyohPCBDaGFubmVsIDMgR2xvYmFsIGludGVycnVwdCBmbGFnICovDQojZGVmaW5lIERNQV9JU1JfVENJRjNfUG9zICAgICAgICAgICAgICAgICAgICg5VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIERNQV9JU1JfVENJRjNfTXNrICAgICAgICAgICAgICAgICAgICgweDFVIDw8IERNQV9JU1JfVENJRjNfUG9zKSAgICAgICAgLyohPCAweDAwMDAwMjAwICovDQojZGVmaW5lIERNQV9JU1JfVENJRjMgICAgICAgICAgICAgICAgICAgICAgIERNQV9JU1JfVENJRjNfTXNrICAgICAgICAgICAgICAgICAgLyohPCBDaGFubmVsIDMgVHJhbnNmZXIgQ29tcGxldGUgZmxhZyAqLw0KI2RlZmluZSBETUFfSVNSX0hUSUYzX1BvcyAgICAgICAgICAgICAgICAgICAoMTBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBETUFfSVNSX0hUSUYzX01zayAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBETUFfSVNSX0hUSUYzX1BvcykgICAgICAgIC8qITwgMHgwMDAwMDQwMCAqLw0KI2RlZmluZSBETUFfSVNSX0hUSUYzICAgICAgICAgICAgICAgICAgICAgICBETUFfSVNSX0hUSUYzX01zayAgICAgICAgICAgICAgICAgIC8qITwgQ2hhbm5lbCAzIEhhbGYgVHJhbnNmZXIgZmxhZyAqLw0KI2RlZmluZSBETUFfSVNSX1RFSUYzX1BvcyAgICAgICAgICAgICAgICAgICAoMTFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBETUFfSVNSX1RFSUYzX01zayAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBETUFfSVNSX1RFSUYzX1BvcykgICAgICAgIC8qITwgMHgwMDAwMDgwMCAqLw0KI2RlZmluZSBETUFfSVNSX1RFSUYzICAgICAgICAgICAgICAgICAgICAgICBETUFfSVNSX1RFSUYzX01zayAgICAgICAgICAgICAgICAgIC8qITwgQ2hhbm5lbCAzIFRyYW5zZmVyIEVycm9yIGZsYWcgKi8NCiNkZWZpbmUgRE1BX0lTUl9HSUY0X1BvcyAgICAgICAgICAgICAgICAgICAgKDEyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRE1BX0lTUl9HSUY0X01zayAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgRE1BX0lTUl9HSUY0X1BvcykgICAgICAgICAvKiE8IDB4MDAwMDEwMDAgKi8NCiNkZWZpbmUgRE1BX0lTUl9HSUY0ICAgICAgICAgICAgICAgICAgICAgICAgRE1BX0lTUl9HSUY0X01zayAgICAgICAgICAgICAgICAgICAvKiE8IENoYW5uZWwgNCBHbG9iYWwgaW50ZXJydXB0IGZsYWcgKi8NCiNkZWZpbmUgRE1BX0lTUl9UQ0lGNF9Qb3MgICAgICAgICAgICAgICAgICAgKDEzVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRE1BX0lTUl9UQ0lGNF9Nc2sgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgRE1BX0lTUl9UQ0lGNF9Qb3MpICAgICAgICAvKiE8IDB4MDAwMDIwMDAgKi8NCiNkZWZpbmUgRE1BX0lTUl9UQ0lGNCAgICAgICAgICAgICAgICAgICAgICAgRE1BX0lTUl9UQ0lGNF9Nc2sgICAgICAgICAgICAgICAgICAvKiE8IENoYW5uZWwgNCBUcmFuc2ZlciBDb21wbGV0ZSBmbGFnICovDQojZGVmaW5lIERNQV9JU1JfSFRJRjRfUG9zICAgICAgICAgICAgICAgICAgICgxNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIERNQV9JU1JfSFRJRjRfTXNrICAgICAgICAgICAgICAgICAgICgweDFVIDw8IERNQV9JU1JfSFRJRjRfUG9zKSAgICAgICAgLyohPCAweDAwMDA0MDAwICovDQojZGVmaW5lIERNQV9JU1JfSFRJRjQgICAgICAgICAgICAgICAgICAgICAgIERNQV9JU1JfSFRJRjRfTXNrICAgICAgICAgICAgICAgICAgLyohPCBDaGFubmVsIDQgSGFsZiBUcmFuc2ZlciBmbGFnICovDQojZGVmaW5lIERNQV9JU1JfVEVJRjRfUG9zICAgICAgICAgICAgICAgICAgICgxNVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIERNQV9JU1JfVEVJRjRfTXNrICAgICAgICAgICAgICAgICAgICgweDFVIDw8IERNQV9JU1JfVEVJRjRfUG9zKSAgICAgICAgLyohPCAweDAwMDA4MDAwICovDQojZGVmaW5lIERNQV9JU1JfVEVJRjQgICAgICAgICAgICAgICAgICAgICAgIERNQV9JU1JfVEVJRjRfTXNrICAgICAgICAgICAgICAgICAgLyohPCBDaGFubmVsIDQgVHJhbnNmZXIgRXJyb3IgZmxhZyAqLw0KI2RlZmluZSBETUFfSVNSX0dJRjVfUG9zICAgICAgICAgICAgICAgICAgICAoMTZVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBETUFfSVNSX0dJRjVfTXNrICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBETUFfSVNSX0dJRjVfUG9zKSAgICAgICAgIC8qITwgMHgwMDAxMDAwMCAqLw0KI2RlZmluZSBETUFfSVNSX0dJRjUgICAgICAgICAgICAgICAgICAgICAgICBETUFfSVNSX0dJRjVfTXNrICAgICAgICAgICAgICAgICAgIC8qITwgQ2hhbm5lbCA1IEdsb2JhbCBpbnRlcnJ1cHQgZmxhZyAqLw0KI2RlZmluZSBETUFfSVNSX1RDSUY1X1BvcyAgICAgICAgICAgICAgICAgICAoMTdVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBETUFfSVNSX1RDSUY1X01zayAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBETUFfSVNSX1RDSUY1X1BvcykgICAgICAgIC8qITwgMHgwMDAyMDAwMCAqLw0KI2RlZmluZSBETUFfSVNSX1RDSUY1ICAgICAgICAgICAgICAgICAgICAgICBETUFfSVNSX1RDSUY1X01zayAgICAgICAgICAgICAgICAgIC8qITwgQ2hhbm5lbCA1IFRyYW5zZmVyIENvbXBsZXRlIGZsYWcgKi8NCiNkZWZpbmUgRE1BX0lTUl9IVElGNV9Qb3MgICAgICAgICAgICAgICAgICAgKDE4VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRE1BX0lTUl9IVElGNV9Nc2sgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgRE1BX0lTUl9IVElGNV9Qb3MpICAgICAgICAvKiE8IDB4MDAwNDAwMDAgKi8NCiNkZWZpbmUgRE1BX0lTUl9IVElGNSAgICAgICAgICAgICAgICAgICAgICAgRE1BX0lTUl9IVElGNV9Nc2sgICAgICAgICAgICAgICAgICAvKiE8IENoYW5uZWwgNSBIYWxmIFRyYW5zZmVyIGZsYWcgKi8NCiNkZWZpbmUgRE1BX0lTUl9URUlGNV9Qb3MgICAgICAgICAgICAgICAgICAgKDE5VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRE1BX0lTUl9URUlGNV9Nc2sgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgRE1BX0lTUl9URUlGNV9Qb3MpICAgICAgICAvKiE8IDB4MDAwODAwMDAgKi8NCiNkZWZpbmUgRE1BX0lTUl9URUlGNSAgICAgICAgICAgICAgICAgICAgICAgRE1BX0lTUl9URUlGNV9Nc2sgICAgICAgICAgICAgICAgICAvKiE8IENoYW5uZWwgNSBUcmFuc2ZlciBFcnJvciBmbGFnICovDQojZGVmaW5lIERNQV9JU1JfR0lGNl9Qb3MgICAgICAgICAgICAgICAgICAgICgyMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIERNQV9JU1JfR0lGNl9Nc2sgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IERNQV9JU1JfR0lGNl9Qb3MpICAgICAgICAgLyohPCAweDAwMTAwMDAwICovDQojZGVmaW5lIERNQV9JU1JfR0lGNiAgICAgICAgICAgICAgICAgICAgICAgIERNQV9JU1JfR0lGNl9Nc2sgICAgICAgICAgICAgICAgICAgLyohPCBDaGFubmVsIDYgR2xvYmFsIGludGVycnVwdCBmbGFnICovDQojZGVmaW5lIERNQV9JU1JfVENJRjZfUG9zICAgICAgICAgICAgICAgICAgICgyMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIERNQV9JU1JfVENJRjZfTXNrICAgICAgICAgICAgICAgICAgICgweDFVIDw8IERNQV9JU1JfVENJRjZfUG9zKSAgICAgICAgLyohPCAweDAwMjAwMDAwICovDQojZGVmaW5lIERNQV9JU1JfVENJRjYgICAgICAgICAgICAgICAgICAgICAgIERNQV9JU1JfVENJRjZfTXNrICAgICAgICAgICAgICAgICAgLyohPCBDaGFubmVsIDYgVHJhbnNmZXIgQ29tcGxldGUgZmxhZyAqLw0KI2RlZmluZSBETUFfSVNSX0hUSUY2X1BvcyAgICAgICAgICAgICAgICAgICAoMjJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBETUFfSVNSX0hUSUY2X01zayAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBETUFfSVNSX0hUSUY2X1BvcykgICAgICAgIC8qITwgMHgwMDQwMDAwMCAqLw0KI2RlZmluZSBETUFfSVNSX0hUSUY2ICAgICAgICAgICAgICAgICAgICAgICBETUFfSVNSX0hUSUY2X01zayAgICAgICAgICAgICAgICAgIC8qITwgQ2hhbm5lbCA2IEhhbGYgVHJhbnNmZXIgZmxhZyAqLw0KI2RlZmluZSBETUFfSVNSX1RFSUY2X1BvcyAgICAgICAgICAgICAgICAgICAoMjNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBETUFfSVNSX1RFSUY2X01zayAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBETUFfSVNSX1RFSUY2X1BvcykgICAgICAgIC8qITwgMHgwMDgwMDAwMCAqLw0KI2RlZmluZSBETUFfSVNSX1RFSUY2ICAgICAgICAgICAgICAgICAgICAgICBETUFfSVNSX1RFSUY2X01zayAgICAgICAgICAgICAgICAgIC8qITwgQ2hhbm5lbCA2IFRyYW5zZmVyIEVycm9yIGZsYWcgKi8NCiNkZWZpbmUgRE1BX0lTUl9HSUY3X1BvcyAgICAgICAgICAgICAgICAgICAgKDI0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRE1BX0lTUl9HSUY3X01zayAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgRE1BX0lTUl9HSUY3X1BvcykgICAgICAgICAvKiE8IDB4MDEwMDAwMDAgKi8NCiNkZWZpbmUgRE1BX0lTUl9HSUY3ICAgICAgICAgICAgICAgICAgICAgICAgRE1BX0lTUl9HSUY3X01zayAgICAgICAgICAgICAgICAgICAvKiE8IENoYW5uZWwgNyBHbG9iYWwgaW50ZXJydXB0IGZsYWcgKi8NCiNkZWZpbmUgRE1BX0lTUl9UQ0lGN19Qb3MgICAgICAgICAgICAgICAgICAgKDI1VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRE1BX0lTUl9UQ0lGN19Nc2sgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgRE1BX0lTUl9UQ0lGN19Qb3MpICAgICAgICAvKiE8IDB4MDIwMDAwMDAgKi8NCiNkZWZpbmUgRE1BX0lTUl9UQ0lGNyAgICAgICAgICAgICAgICAgICAgICAgRE1BX0lTUl9UQ0lGN19Nc2sgICAgICAgICAgICAgICAgICAvKiE8IENoYW5uZWwgNyBUcmFuc2ZlciBDb21wbGV0ZSBmbGFnICovDQojZGVmaW5lIERNQV9JU1JfSFRJRjdfUG9zICAgICAgICAgICAgICAgICAgICgyNlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIERNQV9JU1JfSFRJRjdfTXNrICAgICAgICAgICAgICAgICAgICgweDFVIDw8IERNQV9JU1JfSFRJRjdfUG9zKSAgICAgICAgLyohPCAweDA0MDAwMDAwICovDQojZGVmaW5lIERNQV9JU1JfSFRJRjcgICAgICAgICAgICAgICAgICAgICAgIERNQV9JU1JfSFRJRjdfTXNrICAgICAgICAgICAgICAgICAgLyohPCBDaGFubmVsIDcgSGFsZiBUcmFuc2ZlciBmbGFnICovDQojZGVmaW5lIERNQV9JU1JfVEVJRjdfUG9zICAgICAgICAgICAgICAgICAgICgyN1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIERNQV9JU1JfVEVJRjdfTXNrICAgICAgICAgICAgICAgICAgICgweDFVIDw8IERNQV9JU1JfVEVJRjdfUG9zKSAgICAgICAgLyohPCAweDA4MDAwMDAwICovDQojZGVmaW5lIERNQV9JU1JfVEVJRjcgICAgICAgICAgICAgICAgICAgICAgIERNQV9JU1JfVEVJRjdfTXNrICAgICAgICAgICAgICAgICAgLyohPCBDaGFubmVsIDcgVHJhbnNmZXIgRXJyb3IgZmxhZyAqLw0KDQovKioqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIERNQV9JRkNSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBETUFfSUZDUl9DR0lGMV9Qb3MgICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBETUFfSUZDUl9DR0lGMV9Nc2sgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBETUFfSUZDUl9DR0lGMV9Qb3MpICAgICAgIC8qITwgMHgwMDAwMDAwMSAqLw0KI2RlZmluZSBETUFfSUZDUl9DR0lGMSAgICAgICAgICAgICAgICAgICAgICBETUFfSUZDUl9DR0lGMV9Nc2sgICAgICAgICAgICAgICAgIC8qITwgQ2hhbm5lbCAxIEdsb2JhbCBpbnRlcnJ1cHQgY2xlYXIgKi8NCiNkZWZpbmUgRE1BX0lGQ1JfQ1RDSUYxX1BvcyAgICAgICAgICAgICAgICAgKDFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRE1BX0lGQ1JfQ1RDSUYxX01zayAgICAgICAgICAgICAgICAgKDB4MVUgPDwgRE1BX0lGQ1JfQ1RDSUYxX1BvcykgICAgICAvKiE8IDB4MDAwMDAwMDIgKi8NCiNkZWZpbmUgRE1BX0lGQ1JfQ1RDSUYxICAgICAgICAgICAgICAgICAgICAgRE1BX0lGQ1JfQ1RDSUYxX01zayAgICAgICAgICAgICAgICAvKiE8IENoYW5uZWwgMSBUcmFuc2ZlciBDb21wbGV0ZSBjbGVhciAqLw0KI2RlZmluZSBETUFfSUZDUl9DSFRJRjFfUG9zICAgICAgICAgICAgICAgICAoMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBETUFfSUZDUl9DSFRJRjFfTXNrICAgICAgICAgICAgICAgICAoMHgxVSA8PCBETUFfSUZDUl9DSFRJRjFfUG9zKSAgICAgIC8qITwgMHgwMDAwMDAwNCAqLw0KI2RlZmluZSBETUFfSUZDUl9DSFRJRjEgICAgICAgICAgICAgICAgICAgICBETUFfSUZDUl9DSFRJRjFfTXNrICAgICAgICAgICAgICAgIC8qITwgQ2hhbm5lbCAxIEhhbGYgVHJhbnNmZXIgY2xlYXIgKi8NCiNkZWZpbmUgRE1BX0lGQ1JfQ1RFSUYxX1BvcyAgICAgICAgICAgICAgICAgKDNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRE1BX0lGQ1JfQ1RFSUYxX01zayAgICAgICAgICAgICAgICAgKDB4MVUgPDwgRE1BX0lGQ1JfQ1RFSUYxX1BvcykgICAgICAvKiE8IDB4MDAwMDAwMDggKi8NCiNkZWZpbmUgRE1BX0lGQ1JfQ1RFSUYxICAgICAgICAgICAgICAgICAgICAgRE1BX0lGQ1JfQ1RFSUYxX01zayAgICAgICAgICAgICAgICAvKiE8IENoYW5uZWwgMSBUcmFuc2ZlciBFcnJvciBjbGVhciAqLw0KI2RlZmluZSBETUFfSUZDUl9DR0lGMl9Qb3MgICAgICAgICAgICAgICAgICAoNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBETUFfSUZDUl9DR0lGMl9Nc2sgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBETUFfSUZDUl9DR0lGMl9Qb3MpICAgICAgIC8qITwgMHgwMDAwMDAxMCAqLw0KI2RlZmluZSBETUFfSUZDUl9DR0lGMiAgICAgICAgICAgICAgICAgICAgICBETUFfSUZDUl9DR0lGMl9Nc2sgICAgICAgICAgICAgICAgIC8qITwgQ2hhbm5lbCAyIEdsb2JhbCBpbnRlcnJ1cHQgY2xlYXIgKi8NCiNkZWZpbmUgRE1BX0lGQ1JfQ1RDSUYyX1BvcyAgICAgICAgICAgICAgICAgKDVVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRE1BX0lGQ1JfQ1RDSUYyX01zayAgICAgICAgICAgICAgICAgKDB4MVUgPDwgRE1BX0lGQ1JfQ1RDSUYyX1BvcykgICAgICAvKiE8IDB4MDAwMDAwMjAgKi8NCiNkZWZpbmUgRE1BX0lGQ1JfQ1RDSUYyICAgICAgICAgICAgICAgICAgICAgRE1BX0lGQ1JfQ1RDSUYyX01zayAgICAgICAgICAgICAgICAvKiE8IENoYW5uZWwgMiBUcmFuc2ZlciBDb21wbGV0ZSBjbGVhciAqLw0KI2RlZmluZSBETUFfSUZDUl9DSFRJRjJfUG9zICAgICAgICAgICAgICAgICAoNlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBETUFfSUZDUl9DSFRJRjJfTXNrICAgICAgICAgICAgICAgICAoMHgxVSA8PCBETUFfSUZDUl9DSFRJRjJfUG9zKSAgICAgIC8qITwgMHgwMDAwMDA0MCAqLw0KI2RlZmluZSBETUFfSUZDUl9DSFRJRjIgICAgICAgICAgICAgICAgICAgICBETUFfSUZDUl9DSFRJRjJfTXNrICAgICAgICAgICAgICAgIC8qITwgQ2hhbm5lbCAyIEhhbGYgVHJhbnNmZXIgY2xlYXIgKi8NCiNkZWZpbmUgRE1BX0lGQ1JfQ1RFSUYyX1BvcyAgICAgICAgICAgICAgICAgKDdVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRE1BX0lGQ1JfQ1RFSUYyX01zayAgICAgICAgICAgICAgICAgKDB4MVUgPDwgRE1BX0lGQ1JfQ1RFSUYyX1BvcykgICAgICAvKiE8IDB4MDAwMDAwODAgKi8NCiNkZWZpbmUgRE1BX0lGQ1JfQ1RFSUYyICAgICAgICAgICAgICAgICAgICAgRE1BX0lGQ1JfQ1RFSUYyX01zayAgICAgICAgICAgICAgICAvKiE8IENoYW5uZWwgMiBUcmFuc2ZlciBFcnJvciBjbGVhciAqLw0KI2RlZmluZSBETUFfSUZDUl9DR0lGM19Qb3MgICAgICAgICAgICAgICAgICAoOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBETUFfSUZDUl9DR0lGM19Nc2sgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBETUFfSUZDUl9DR0lGM19Qb3MpICAgICAgIC8qITwgMHgwMDAwMDEwMCAqLw0KI2RlZmluZSBETUFfSUZDUl9DR0lGMyAgICAgICAgICAgICAgICAgICAgICBETUFfSUZDUl9DR0lGM19Nc2sgICAgICAgICAgICAgICAgIC8qITwgQ2hhbm5lbCAzIEdsb2JhbCBpbnRlcnJ1cHQgY2xlYXIgKi8NCiNkZWZpbmUgRE1BX0lGQ1JfQ1RDSUYzX1BvcyAgICAgICAgICAgICAgICAgKDlVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRE1BX0lGQ1JfQ1RDSUYzX01zayAgICAgICAgICAgICAgICAgKDB4MVUgPDwgRE1BX0lGQ1JfQ1RDSUYzX1BvcykgICAgICAvKiE8IDB4MDAwMDAyMDAgKi8NCiNkZWZpbmUgRE1BX0lGQ1JfQ1RDSUYzICAgICAgICAgICAgICAgICAgICAgRE1BX0lGQ1JfQ1RDSUYzX01zayAgICAgICAgICAgICAgICAvKiE8IENoYW5uZWwgMyBUcmFuc2ZlciBDb21wbGV0ZSBjbGVhciAqLw0KI2RlZmluZSBETUFfSUZDUl9DSFRJRjNfUG9zICAgICAgICAgICAgICAgICAoMTBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBETUFfSUZDUl9DSFRJRjNfTXNrICAgICAgICAgICAgICAgICAoMHgxVSA8PCBETUFfSUZDUl9DSFRJRjNfUG9zKSAgICAgIC8qITwgMHgwMDAwMDQwMCAqLw0KI2RlZmluZSBETUFfSUZDUl9DSFRJRjMgICAgICAgICAgICAgICAgICAgICBETUFfSUZDUl9DSFRJRjNfTXNrICAgICAgICAgICAgICAgIC8qITwgQ2hhbm5lbCAzIEhhbGYgVHJhbnNmZXIgY2xlYXIgKi8NCiNkZWZpbmUgRE1BX0lGQ1JfQ1RFSUYzX1BvcyAgICAgICAgICAgICAgICAgKDExVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRE1BX0lGQ1JfQ1RFSUYzX01zayAgICAgICAgICAgICAgICAgKDB4MVUgPDwgRE1BX0lGQ1JfQ1RFSUYzX1BvcykgICAgICAvKiE8IDB4MDAwMDA4MDAgKi8NCiNkZWZpbmUgRE1BX0lGQ1JfQ1RFSUYzICAgICAgICAgICAgICAgICAgICAgRE1BX0lGQ1JfQ1RFSUYzX01zayAgICAgICAgICAgICAgICAvKiE8IENoYW5uZWwgMyBUcmFuc2ZlciBFcnJvciBjbGVhciAqLw0KI2RlZmluZSBETUFfSUZDUl9DR0lGNF9Qb3MgICAgICAgICAgICAgICAgICAoMTJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBETUFfSUZDUl9DR0lGNF9Nc2sgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBETUFfSUZDUl9DR0lGNF9Qb3MpICAgICAgIC8qITwgMHgwMDAwMTAwMCAqLw0KI2RlZmluZSBETUFfSUZDUl9DR0lGNCAgICAgICAgICAgICAgICAgICAgICBETUFfSUZDUl9DR0lGNF9Nc2sgICAgICAgICAgICAgICAgIC8qITwgQ2hhbm5lbCA0IEdsb2JhbCBpbnRlcnJ1cHQgY2xlYXIgKi8NCiNkZWZpbmUgRE1BX0lGQ1JfQ1RDSUY0X1BvcyAgICAgICAgICAgICAgICAgKDEzVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRE1BX0lGQ1JfQ1RDSUY0X01zayAgICAgICAgICAgICAgICAgKDB4MVUgPDwgRE1BX0lGQ1JfQ1RDSUY0X1BvcykgICAgICAvKiE8IDB4MDAwMDIwMDAgKi8NCiNkZWZpbmUgRE1BX0lGQ1JfQ1RDSUY0ICAgICAgICAgICAgICAgICAgICAgRE1BX0lGQ1JfQ1RDSUY0X01zayAgICAgICAgICAgICAgICAvKiE8IENoYW5uZWwgNCBUcmFuc2ZlciBDb21wbGV0ZSBjbGVhciAqLw0KI2RlZmluZSBETUFfSUZDUl9DSFRJRjRfUG9zICAgICAgICAgICAgICAgICAoMTRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBETUFfSUZDUl9DSFRJRjRfTXNrICAgICAgICAgICAgICAgICAoMHgxVSA8PCBETUFfSUZDUl9DSFRJRjRfUG9zKSAgICAgIC8qITwgMHgwMDAwNDAwMCAqLw0KI2RlZmluZSBETUFfSUZDUl9DSFRJRjQgICAgICAgICAgICAgICAgICAgICBETUFfSUZDUl9DSFRJRjRfTXNrICAgICAgICAgICAgICAgIC8qITwgQ2hhbm5lbCA0IEhhbGYgVHJhbnNmZXIgY2xlYXIgKi8NCiNkZWZpbmUgRE1BX0lGQ1JfQ1RFSUY0X1BvcyAgICAgICAgICAgICAgICAgKDE1VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRE1BX0lGQ1JfQ1RFSUY0X01zayAgICAgICAgICAgICAgICAgKDB4MVUgPDwgRE1BX0lGQ1JfQ1RFSUY0X1BvcykgICAgICAvKiE8IDB4MDAwMDgwMDAgKi8NCiNkZWZpbmUgRE1BX0lGQ1JfQ1RFSUY0ICAgICAgICAgICAgICAgICAgICAgRE1BX0lGQ1JfQ1RFSUY0X01zayAgICAgICAgICAgICAgICAvKiE8IENoYW5uZWwgNCBUcmFuc2ZlciBFcnJvciBjbGVhciAqLw0KI2RlZmluZSBETUFfSUZDUl9DR0lGNV9Qb3MgICAgICAgICAgICAgICAgICAoMTZVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBETUFfSUZDUl9DR0lGNV9Nc2sgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBETUFfSUZDUl9DR0lGNV9Qb3MpICAgICAgIC8qITwgMHgwMDAxMDAwMCAqLw0KI2RlZmluZSBETUFfSUZDUl9DR0lGNSAgICAgICAgICAgICAgICAgICAgICBETUFfSUZDUl9DR0lGNV9Nc2sgICAgICAgICAgICAgICAgIC8qITwgQ2hhbm5lbCA1IEdsb2JhbCBpbnRlcnJ1cHQgY2xlYXIgKi8NCiNkZWZpbmUgRE1BX0lGQ1JfQ1RDSUY1X1BvcyAgICAgICAgICAgICAgICAgKDE3VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRE1BX0lGQ1JfQ1RDSUY1X01zayAgICAgICAgICAgICAgICAgKDB4MVUgPDwgRE1BX0lGQ1JfQ1RDSUY1X1BvcykgICAgICAvKiE8IDB4MDAwMjAwMDAgKi8NCiNkZWZpbmUgRE1BX0lGQ1JfQ1RDSUY1ICAgICAgICAgICAgICAgICAgICAgRE1BX0lGQ1JfQ1RDSUY1X01zayAgICAgICAgICAgICAgICAvKiE8IENoYW5uZWwgNSBUcmFuc2ZlciBDb21wbGV0ZSBjbGVhciAqLw0KI2RlZmluZSBETUFfSUZDUl9DSFRJRjVfUG9zICAgICAgICAgICAgICAgICAoMThVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBETUFfSUZDUl9DSFRJRjVfTXNrICAgICAgICAgICAgICAgICAoMHgxVSA8PCBETUFfSUZDUl9DSFRJRjVfUG9zKSAgICAgIC8qITwgMHgwMDA0MDAwMCAqLw0KI2RlZmluZSBETUFfSUZDUl9DSFRJRjUgICAgICAgICAgICAgICAgICAgICBETUFfSUZDUl9DSFRJRjVfTXNrICAgICAgICAgICAgICAgIC8qITwgQ2hhbm5lbCA1IEhhbGYgVHJhbnNmZXIgY2xlYXIgKi8NCiNkZWZpbmUgRE1BX0lGQ1JfQ1RFSUY1X1BvcyAgICAgICAgICAgICAgICAgKDE5VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRE1BX0lGQ1JfQ1RFSUY1X01zayAgICAgICAgICAgICAgICAgKDB4MVUgPDwgRE1BX0lGQ1JfQ1RFSUY1X1BvcykgICAgICAvKiE8IDB4MDAwODAwMDAgKi8NCiNkZWZpbmUgRE1BX0lGQ1JfQ1RFSUY1ICAgICAgICAgICAgICAgICAgICAgRE1BX0lGQ1JfQ1RFSUY1X01zayAgICAgICAgICAgICAgICAvKiE8IENoYW5uZWwgNSBUcmFuc2ZlciBFcnJvciBjbGVhciAqLw0KI2RlZmluZSBETUFfSUZDUl9DR0lGNl9Qb3MgICAgICAgICAgICAgICAgICAoMjBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBETUFfSUZDUl9DR0lGNl9Nc2sgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBETUFfSUZDUl9DR0lGNl9Qb3MpICAgICAgIC8qITwgMHgwMDEwMDAwMCAqLw0KI2RlZmluZSBETUFfSUZDUl9DR0lGNiAgICAgICAgICAgICAgICAgICAgICBETUFfSUZDUl9DR0lGNl9Nc2sgICAgICAgICAgICAgICAgIC8qITwgQ2hhbm5lbCA2IEdsb2JhbCBpbnRlcnJ1cHQgY2xlYXIgKi8NCiNkZWZpbmUgRE1BX0lGQ1JfQ1RDSUY2X1BvcyAgICAgICAgICAgICAgICAgKDIxVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRE1BX0lGQ1JfQ1RDSUY2X01zayAgICAgICAgICAgICAgICAgKDB4MVUgPDwgRE1BX0lGQ1JfQ1RDSUY2X1BvcykgICAgICAvKiE8IDB4MDAyMDAwMDAgKi8NCiNkZWZpbmUgRE1BX0lGQ1JfQ1RDSUY2ICAgICAgICAgICAgICAgICAgICAgRE1BX0lGQ1JfQ1RDSUY2X01zayAgICAgICAgICAgICAgICAvKiE8IENoYW5uZWwgNiBUcmFuc2ZlciBDb21wbGV0ZSBjbGVhciAqLw0KI2RlZmluZSBETUFfSUZDUl9DSFRJRjZfUG9zICAgICAgICAgICAgICAgICAoMjJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBETUFfSUZDUl9DSFRJRjZfTXNrICAgICAgICAgICAgICAgICAoMHgxVSA8PCBETUFfSUZDUl9DSFRJRjZfUG9zKSAgICAgIC8qITwgMHgwMDQwMDAwMCAqLw0KI2RlZmluZSBETUFfSUZDUl9DSFRJRjYgICAgICAgICAgICAgICAgICAgICBETUFfSUZDUl9DSFRJRjZfTXNrICAgICAgICAgICAgICAgIC8qITwgQ2hhbm5lbCA2IEhhbGYgVHJhbnNmZXIgY2xlYXIgKi8NCiNkZWZpbmUgRE1BX0lGQ1JfQ1RFSUY2X1BvcyAgICAgICAgICAgICAgICAgKDIzVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRE1BX0lGQ1JfQ1RFSUY2X01zayAgICAgICAgICAgICAgICAgKDB4MVUgPDwgRE1BX0lGQ1JfQ1RFSUY2X1BvcykgICAgICAvKiE8IDB4MDA4MDAwMDAgKi8NCiNkZWZpbmUgRE1BX0lGQ1JfQ1RFSUY2ICAgICAgICAgICAgICAgICAgICAgRE1BX0lGQ1JfQ1RFSUY2X01zayAgICAgICAgICAgICAgICAvKiE8IENoYW5uZWwgNiBUcmFuc2ZlciBFcnJvciBjbGVhciAqLw0KI2RlZmluZSBETUFfSUZDUl9DR0lGN19Qb3MgICAgICAgICAgICAgICAgICAoMjRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBETUFfSUZDUl9DR0lGN19Nc2sgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBETUFfSUZDUl9DR0lGN19Qb3MpICAgICAgIC8qITwgMHgwMTAwMDAwMCAqLw0KI2RlZmluZSBETUFfSUZDUl9DR0lGNyAgICAgICAgICAgICAgICAgICAgICBETUFfSUZDUl9DR0lGN19Nc2sgICAgICAgICAgICAgICAgIC8qITwgQ2hhbm5lbCA3IEdsb2JhbCBpbnRlcnJ1cHQgY2xlYXIgKi8NCiNkZWZpbmUgRE1BX0lGQ1JfQ1RDSUY3X1BvcyAgICAgICAgICAgICAgICAgKDI1VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRE1BX0lGQ1JfQ1RDSUY3X01zayAgICAgICAgICAgICAgICAgKDB4MVUgPDwgRE1BX0lGQ1JfQ1RDSUY3X1BvcykgICAgICAvKiE8IDB4MDIwMDAwMDAgKi8NCiNkZWZpbmUgRE1BX0lGQ1JfQ1RDSUY3ICAgICAgICAgICAgICAgICAgICAgRE1BX0lGQ1JfQ1RDSUY3X01zayAgICAgICAgICAgICAgICAvKiE8IENoYW5uZWwgNyBUcmFuc2ZlciBDb21wbGV0ZSBjbGVhciAqLw0KI2RlZmluZSBETUFfSUZDUl9DSFRJRjdfUG9zICAgICAgICAgICAgICAgICAoMjZVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBETUFfSUZDUl9DSFRJRjdfTXNrICAgICAgICAgICAgICAgICAoMHgxVSA8PCBETUFfSUZDUl9DSFRJRjdfUG9zKSAgICAgIC8qITwgMHgwNDAwMDAwMCAqLw0KI2RlZmluZSBETUFfSUZDUl9DSFRJRjcgICAgICAgICAgICAgICAgICAgICBETUFfSUZDUl9DSFRJRjdfTXNrICAgICAgICAgICAgICAgIC8qITwgQ2hhbm5lbCA3IEhhbGYgVHJhbnNmZXIgY2xlYXIgKi8NCiNkZWZpbmUgRE1BX0lGQ1JfQ1RFSUY3X1BvcyAgICAgICAgICAgICAgICAgKDI3VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRE1BX0lGQ1JfQ1RFSUY3X01zayAgICAgICAgICAgICAgICAgKDB4MVUgPDwgRE1BX0lGQ1JfQ1RFSUY3X1BvcykgICAgICAvKiE8IDB4MDgwMDAwMDAgKi8NCiNkZWZpbmUgRE1BX0lGQ1JfQ1RFSUY3ICAgICAgICAgICAgICAgICAgICAgRE1BX0lGQ1JfQ1RFSUY3X01zayAgICAgICAgICAgICAgICAvKiE8IENoYW5uZWwgNyBUcmFuc2ZlciBFcnJvciBjbGVhciAqLw0KDQovKioqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIERNQV9DQ1IgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIERNQV9DQ1JfRU5fUG9zICAgICAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIERNQV9DQ1JfRU5fTXNrICAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IERNQV9DQ1JfRU5fUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwMDAxICovDQojZGVmaW5lIERNQV9DQ1JfRU4gICAgICAgICAgICAgICAgICAgICAgICAgIERNQV9DQ1JfRU5fTXNrICAgICAgICAgICAgICAgICAgICAgLyohPCBDaGFubmVsIGVuYWJsZSovDQojZGVmaW5lIERNQV9DQ1JfVENJRV9Qb3MgICAgICAgICAgICAgICAgICAgICgxVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIERNQV9DQ1JfVENJRV9Nc2sgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IERNQV9DQ1JfVENJRV9Qb3MpICAgICAgICAgLyohPCAweDAwMDAwMDAyICovDQojZGVmaW5lIERNQV9DQ1JfVENJRSAgICAgICAgICAgICAgICAgICAgICAgIERNQV9DQ1JfVENJRV9Nc2sgICAgICAgICAgICAgICAgICAgLyohPCBUcmFuc2ZlciBjb21wbGV0ZSBpbnRlcnJ1cHQgZW5hYmxlICovDQojZGVmaW5lIERNQV9DQ1JfSFRJRV9Qb3MgICAgICAgICAgICAgICAgICAgICgyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIERNQV9DQ1JfSFRJRV9Nc2sgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IERNQV9DQ1JfSFRJRV9Qb3MpICAgICAgICAgLyohPCAweDAwMDAwMDA0ICovDQojZGVmaW5lIERNQV9DQ1JfSFRJRSAgICAgICAgICAgICAgICAgICAgICAgIERNQV9DQ1JfSFRJRV9Nc2sgICAgICAgICAgICAgICAgICAgLyohPCBIYWxmIFRyYW5zZmVyIGludGVycnVwdCBlbmFibGUgKi8NCiNkZWZpbmUgRE1BX0NDUl9URUlFX1BvcyAgICAgICAgICAgICAgICAgICAgKDNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRE1BX0NDUl9URUlFX01zayAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgRE1BX0NDUl9URUlFX1BvcykgICAgICAgICAvKiE8IDB4MDAwMDAwMDggKi8NCiNkZWZpbmUgRE1BX0NDUl9URUlFICAgICAgICAgICAgICAgICAgICAgICAgRE1BX0NDUl9URUlFX01zayAgICAgICAgICAgICAgICAgICAvKiE8IFRyYW5zZmVyIGVycm9yIGludGVycnVwdCBlbmFibGUgKi8NCiNkZWZpbmUgRE1BX0NDUl9ESVJfUG9zICAgICAgICAgICAgICAgICAgICAgKDRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRE1BX0NDUl9ESVJfTXNrICAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgRE1BX0NDUl9ESVJfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDAwMTAgKi8NCiNkZWZpbmUgRE1BX0NDUl9ESVIgICAgICAgICAgICAgICAgICAgICAgICAgRE1BX0NDUl9ESVJfTXNrICAgICAgICAgICAgICAgICAgICAvKiE8IERhdGEgdHJhbnNmZXIgZGlyZWN0aW9uICovDQojZGVmaW5lIERNQV9DQ1JfQ0lSQ19Qb3MgICAgICAgICAgICAgICAgICAgICg1VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIERNQV9DQ1JfQ0lSQ19Nc2sgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IERNQV9DQ1JfQ0lSQ19Qb3MpICAgICAgICAgLyohPCAweDAwMDAwMDIwICovDQojZGVmaW5lIERNQV9DQ1JfQ0lSQyAgICAgICAgICAgICAgICAgICAgICAgIERNQV9DQ1JfQ0lSQ19Nc2sgICAgICAgICAgICAgICAgICAgLyohPCBDaXJjdWxhciBtb2RlICovDQojZGVmaW5lIERNQV9DQ1JfUElOQ19Qb3MgICAgICAgICAgICAgICAgICAgICg2VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIERNQV9DQ1JfUElOQ19Nc2sgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IERNQV9DQ1JfUElOQ19Qb3MpICAgICAgICAgLyohPCAweDAwMDAwMDQwICovDQojZGVmaW5lIERNQV9DQ1JfUElOQyAgICAgICAgICAgICAgICAgICAgICAgIERNQV9DQ1JfUElOQ19Nc2sgICAgICAgICAgICAgICAgICAgLyohPCBQZXJpcGhlcmFsIGluY3JlbWVudCBtb2RlICovDQojZGVmaW5lIERNQV9DQ1JfTUlOQ19Qb3MgICAgICAgICAgICAgICAgICAgICg3VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIERNQV9DQ1JfTUlOQ19Nc2sgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IERNQV9DQ1JfTUlOQ19Qb3MpICAgICAgICAgLyohPCAweDAwMDAwMDgwICovDQojZGVmaW5lIERNQV9DQ1JfTUlOQyAgICAgICAgICAgICAgICAgICAgICAgIERNQV9DQ1JfTUlOQ19Nc2sgICAgICAgICAgICAgICAgICAgLyohPCBNZW1vcnkgaW5jcmVtZW50IG1vZGUgKi8NCg0KI2RlZmluZSBETUFfQ0NSX1BTSVpFX1BvcyAgICAgICAgICAgICAgICAgICAoOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBETUFfQ0NSX1BTSVpFX01zayAgICAgICAgICAgICAgICAgICAoMHgzVSA8PCBETUFfQ0NSX1BTSVpFX1BvcykgICAgICAgIC8qITwgMHgwMDAwMDMwMCAqLw0KI2RlZmluZSBETUFfQ0NSX1BTSVpFICAgICAgICAgICAgICAgICAgICAgICBETUFfQ0NSX1BTSVpFX01zayAgICAgICAgICAgICAgICAgIC8qITwgUFNJWkVbMTowXSBiaXRzIChQZXJpcGhlcmFsIHNpemUpICovDQojZGVmaW5lIERNQV9DQ1JfUFNJWkVfMCAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IERNQV9DQ1JfUFNJWkVfUG9zKSAgICAgICAgLyohPCAweDAwMDAwMTAwICovDQojZGVmaW5lIERNQV9DQ1JfUFNJWkVfMSAgICAgICAgICAgICAgICAgICAgICgweDJVIDw8IERNQV9DQ1JfUFNJWkVfUG9zKSAgICAgICAgLyohPCAweDAwMDAwMjAwICovDQoNCiNkZWZpbmUgRE1BX0NDUl9NU0laRV9Qb3MgICAgICAgICAgICAgICAgICAgKDEwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRE1BX0NDUl9NU0laRV9Nc2sgICAgICAgICAgICAgICAgICAgKDB4M1UgPDwgRE1BX0NDUl9NU0laRV9Qb3MpICAgICAgICAvKiE8IDB4MDAwMDBDMDAgKi8NCiNkZWZpbmUgRE1BX0NDUl9NU0laRSAgICAgICAgICAgICAgICAgICAgICAgRE1BX0NDUl9NU0laRV9Nc2sgICAgICAgICAgICAgICAgICAvKiE8IE1TSVpFWzE6MF0gYml0cyAoTWVtb3J5IHNpemUpICovDQojZGVmaW5lIERNQV9DQ1JfTVNJWkVfMCAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IERNQV9DQ1JfTVNJWkVfUG9zKSAgICAgICAgLyohPCAweDAwMDAwNDAwICovDQojZGVmaW5lIERNQV9DQ1JfTVNJWkVfMSAgICAgICAgICAgICAgICAgICAgICgweDJVIDw8IERNQV9DQ1JfTVNJWkVfUG9zKSAgICAgICAgLyohPCAweDAwMDAwODAwICovDQoNCiNkZWZpbmUgRE1BX0NDUl9QTF9Qb3MgICAgICAgICAgICAgICAgICAgICAgKDEyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRE1BX0NDUl9QTF9Nc2sgICAgICAgICAgICAgICAgICAgICAgKDB4M1UgPDwgRE1BX0NDUl9QTF9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDMwMDAgKi8NCiNkZWZpbmUgRE1BX0NDUl9QTCAgICAgICAgICAgICAgICAgICAgICAgICAgRE1BX0NDUl9QTF9Nc2sgICAgICAgICAgICAgICAgICAgICAvKiE8IFBMWzE6MF0gYml0cyhDaGFubmVsIFByaW9yaXR5IGxldmVsKSAqLw0KI2RlZmluZSBETUFfQ0NSX1BMXzAgICAgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBETUFfQ0NSX1BMX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMTAwMCAqLw0KI2RlZmluZSBETUFfQ0NSX1BMXzEgICAgICAgICAgICAgICAgICAgICAgICAoMHgyVSA8PCBETUFfQ0NSX1BMX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMjAwMCAqLw0KDQojZGVmaW5lIERNQV9DQ1JfTUVNMk1FTV9Qb3MgICAgICAgICAgICAgICAgICgxNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIERNQV9DQ1JfTUVNMk1FTV9Nc2sgICAgICAgICAgICAgICAgICgweDFVIDw8IERNQV9DQ1JfTUVNMk1FTV9Qb3MpICAgICAgLyohPCAweDAwMDA0MDAwICovDQojZGVmaW5lIERNQV9DQ1JfTUVNMk1FTSAgICAgICAgICAgICAgICAgICAgIERNQV9DQ1JfTUVNMk1FTV9Nc2sgICAgICAgICAgICAgICAgLyohPCBNZW1vcnkgdG8gbWVtb3J5IG1vZGUgKi8NCg0KLyoqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZ2VuZXJpYyBmb3IgRE1BX0NORFRSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBETUFfQ05EVFJfTkRUX1BvcyAgICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBETUFfQ05EVFJfTkRUX01zayAgICAgICAgICAgICAgICAgICAoMHhGRkZGVSA8PCBETUFfQ05EVFJfTkRUX1BvcykgICAgIC8qITwgMHgwMDAwRkZGRiAqLw0KI2RlZmluZSBETUFfQ05EVFJfTkRUICAgICAgICAgICAgICAgICAgICAgICBETUFfQ05EVFJfTkRUX01zayAgICAgICAgICAgICAgICAgIC8qITwgTnVtYmVyIG9mIGRhdGEgdG8gVHJhbnNmZXIgKi8NCg0KLyoqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIERNQV9DTkRUUjEgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgRE1BX0NORFRSMV9ORFRfUG9zICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRE1BX0NORFRSMV9ORFRfTXNrICAgICAgICAgICAgICAgICAgKDB4RkZGRlUgPDwgRE1BX0NORFRSMV9ORFRfUG9zKSAgICAvKiE8IDB4MDAwMEZGRkYgKi8NCiNkZWZpbmUgRE1BX0NORFRSMV9ORFQgICAgICAgICAgICAgICAgICAgICAgRE1BX0NORFRSMV9ORFRfTXNrICAgICAgICAgICAgICAgICAvKiE8IE51bWJlciBvZiBkYXRhIHRvIFRyYW5zZmVyICovDQoNCi8qKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBETUFfQ05EVFIyIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIERNQV9DTkRUUjJfTkRUX1BvcyAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIERNQV9DTkRUUjJfTkRUX01zayAgICAgICAgICAgICAgICAgICgweEZGRkZVIDw8IERNQV9DTkRUUjJfTkRUX1BvcykgICAgLyohPCAweDAwMDBGRkZGICovDQojZGVmaW5lIERNQV9DTkRUUjJfTkRUICAgICAgICAgICAgICAgICAgICAgIERNQV9DTkRUUjJfTkRUX01zayAgICAgICAgICAgICAgICAgLyohPCBOdW1iZXIgb2YgZGF0YSB0byBUcmFuc2ZlciAqLw0KDQovKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgRE1BX0NORFRSMyByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBETUFfQ05EVFIzX05EVF9Qb3MgICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBETUFfQ05EVFIzX05EVF9Nc2sgICAgICAgICAgICAgICAgICAoMHhGRkZGVSA8PCBETUFfQ05EVFIzX05EVF9Qb3MpICAgIC8qITwgMHgwMDAwRkZGRiAqLw0KI2RlZmluZSBETUFfQ05EVFIzX05EVCAgICAgICAgICAgICAgICAgICAgICBETUFfQ05EVFIzX05EVF9Nc2sgICAgICAgICAgICAgICAgIC8qITwgTnVtYmVyIG9mIGRhdGEgdG8gVHJhbnNmZXIgKi8NCg0KLyoqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIERNQV9DTkRUUjQgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgRE1BX0NORFRSNF9ORFRfUG9zICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRE1BX0NORFRSNF9ORFRfTXNrICAgICAgICAgICAgICAgICAgKDB4RkZGRlUgPDwgRE1BX0NORFRSNF9ORFRfUG9zKSAgICAvKiE8IDB4MDAwMEZGRkYgKi8NCiNkZWZpbmUgRE1BX0NORFRSNF9ORFQgICAgICAgICAgICAgICAgICAgICAgRE1BX0NORFRSNF9ORFRfTXNrICAgICAgICAgICAgICAgICAvKiE8IE51bWJlciBvZiBkYXRhIHRvIFRyYW5zZmVyICovDQoNCi8qKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBETUFfQ05EVFI1IHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIERNQV9DTkRUUjVfTkRUX1BvcyAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIERNQV9DTkRUUjVfTkRUX01zayAgICAgICAgICAgICAgICAgICgweEZGRkZVIDw8IERNQV9DTkRUUjVfTkRUX1BvcykgICAgLyohPCAweDAwMDBGRkZGICovDQojZGVmaW5lIERNQV9DTkRUUjVfTkRUICAgICAgICAgICAgICAgICAgICAgIERNQV9DTkRUUjVfTkRUX01zayAgICAgICAgICAgICAgICAgLyohPCBOdW1iZXIgb2YgZGF0YSB0byBUcmFuc2ZlciAqLw0KDQovKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgRE1BX0NORFRSNiByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBETUFfQ05EVFI2X05EVF9Qb3MgICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBETUFfQ05EVFI2X05EVF9Nc2sgICAgICAgICAgICAgICAgICAoMHhGRkZGVSA8PCBETUFfQ05EVFI2X05EVF9Qb3MpICAgIC8qITwgMHgwMDAwRkZGRiAqLw0KI2RlZmluZSBETUFfQ05EVFI2X05EVCAgICAgICAgICAgICAgICAgICAgICBETUFfQ05EVFI2X05EVF9Nc2sgICAgICAgICAgICAgICAgIC8qITwgTnVtYmVyIG9mIGRhdGEgdG8gVHJhbnNmZXIgKi8NCg0KLyoqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIERNQV9DTkRUUjcgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgRE1BX0NORFRSN19ORFRfUG9zICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRE1BX0NORFRSN19ORFRfTXNrICAgICAgICAgICAgICAgICAgKDB4RkZGRlUgPDwgRE1BX0NORFRSN19ORFRfUG9zKSAgICAvKiE8IDB4MDAwMEZGRkYgKi8NCiNkZWZpbmUgRE1BX0NORFRSN19ORFQgICAgICAgICAgICAgICAgICAgICAgRE1BX0NORFRSN19ORFRfTXNrICAgICAgICAgICAgICAgICAvKiE8IE51bWJlciBvZiBkYXRhIHRvIFRyYW5zZmVyICovDQoNCi8qKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGdlbmVyaWMgZm9yIERNQV9DUEFSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgRE1BX0NQQVJfUEFfUG9zICAgICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRE1BX0NQQVJfUEFfTXNrICAgICAgICAgICAgICAgICAgICAgKDB4RkZGRkZGRkZVIDw8IERNQV9DUEFSX1BBX1BvcykgICAvKiE8IDB4RkZGRkZGRkYgKi8NCiNkZWZpbmUgRE1BX0NQQVJfUEEgICAgICAgICAgICAgICAgICAgICAgICAgRE1BX0NQQVJfUEFfTXNrICAgICAgICAgICAgICAgICAgICAvKiE8IFBlcmlwaGVyYWwgQWRkcmVzcyAqLw0KDQovKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgRE1BX0NQQVIxIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBETUFfQ1BBUjFfUEFfUG9zICAgICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBETUFfQ1BBUjFfUEFfTXNrICAgICAgICAgICAgICAgICAgICAoMHhGRkZGRkZGRlUgPDwgRE1BX0NQQVIxX1BBX1BvcykgIC8qITwgMHhGRkZGRkZGRiAqLw0KI2RlZmluZSBETUFfQ1BBUjFfUEEgICAgICAgICAgICAgICAgICAgICAgICBETUFfQ1BBUjFfUEFfTXNrICAgICAgICAgICAgICAgICAgIC8qITwgUGVyaXBoZXJhbCBBZGRyZXNzICovDQoNCi8qKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBETUFfQ1BBUjIgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIERNQV9DUEFSMl9QQV9Qb3MgICAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIERNQV9DUEFSMl9QQV9Nc2sgICAgICAgICAgICAgICAgICAgICgweEZGRkZGRkZGVSA8PCBETUFfQ1BBUjJfUEFfUG9zKSAgLyohPCAweEZGRkZGRkZGICovDQojZGVmaW5lIERNQV9DUEFSMl9QQSAgICAgICAgICAgICAgICAgICAgICAgIERNQV9DUEFSMl9QQV9Nc2sgICAgICAgICAgICAgICAgICAgLyohPCBQZXJpcGhlcmFsIEFkZHJlc3MgKi8NCg0KLyoqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIERNQV9DUEFSMyByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgRE1BX0NQQVIzX1BBX1BvcyAgICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRE1BX0NQQVIzX1BBX01zayAgICAgICAgICAgICAgICAgICAgKDB4RkZGRkZGRkZVIDw8IERNQV9DUEFSM19QQV9Qb3MpICAvKiE8IDB4RkZGRkZGRkYgKi8NCiNkZWZpbmUgRE1BX0NQQVIzX1BBICAgICAgICAgICAgICAgICAgICAgICAgRE1BX0NQQVIzX1BBX01zayAgICAgICAgICAgICAgICAgICAvKiE8IFBlcmlwaGVyYWwgQWRkcmVzcyAqLw0KDQoNCi8qKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBETUFfQ1BBUjQgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIERNQV9DUEFSNF9QQV9Qb3MgICAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIERNQV9DUEFSNF9QQV9Nc2sgICAgICAgICAgICAgICAgICAgICgweEZGRkZGRkZGVSA8PCBETUFfQ1BBUjRfUEFfUG9zKSAgLyohPCAweEZGRkZGRkZGICovDQojZGVmaW5lIERNQV9DUEFSNF9QQSAgICAgICAgICAgICAgICAgICAgICAgIERNQV9DUEFSNF9QQV9Nc2sgICAgICAgICAgICAgICAgICAgLyohPCBQZXJpcGhlcmFsIEFkZHJlc3MgKi8NCg0KLyoqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIERNQV9DUEFSNSByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgRE1BX0NQQVI1X1BBX1BvcyAgICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRE1BX0NQQVI1X1BBX01zayAgICAgICAgICAgICAgICAgICAgKDB4RkZGRkZGRkZVIDw8IERNQV9DUEFSNV9QQV9Qb3MpICAvKiE8IDB4RkZGRkZGRkYgKi8NCiNkZWZpbmUgRE1BX0NQQVI1X1BBICAgICAgICAgICAgICAgICAgICAgICAgRE1BX0NQQVI1X1BBX01zayAgICAgICAgICAgICAgICAgICAvKiE8IFBlcmlwaGVyYWwgQWRkcmVzcyAqLw0KDQovKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgRE1BX0NQQVI2IHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBETUFfQ1BBUjZfUEFfUG9zICAgICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBETUFfQ1BBUjZfUEFfTXNrICAgICAgICAgICAgICAgICAgICAoMHhGRkZGRkZGRlUgPDwgRE1BX0NQQVI2X1BBX1BvcykgIC8qITwgMHhGRkZGRkZGRiAqLw0KI2RlZmluZSBETUFfQ1BBUjZfUEEgICAgICAgICAgICAgICAgICAgICAgICBETUFfQ1BBUjZfUEFfTXNrICAgICAgICAgICAgICAgICAgIC8qITwgUGVyaXBoZXJhbCBBZGRyZXNzICovDQoNCg0KLyoqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIERNQV9DUEFSNyByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgRE1BX0NQQVI3X1BBX1BvcyAgICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRE1BX0NQQVI3X1BBX01zayAgICAgICAgICAgICAgICAgICAgKDB4RkZGRkZGRkZVIDw8IERNQV9DUEFSN19QQV9Qb3MpICAvKiE8IDB4RkZGRkZGRkYgKi8NCiNkZWZpbmUgRE1BX0NQQVI3X1BBICAgICAgICAgICAgICAgICAgICAgICAgRE1BX0NQQVI3X1BBX01zayAgICAgICAgICAgICAgICAgICAvKiE8IFBlcmlwaGVyYWwgQWRkcmVzcyAqLw0KDQovKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBnZW5lcmljIGZvciBETUFfQ01BUiByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIERNQV9DTUFSX01BX1BvcyAgICAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIERNQV9DTUFSX01BX01zayAgICAgICAgICAgICAgICAgICAgICgweEZGRkZGRkZGVSA8PCBETUFfQ01BUl9NQV9Qb3MpICAgLyohPCAweEZGRkZGRkZGICovDQojZGVmaW5lIERNQV9DTUFSX01BICAgICAgICAgICAgICAgICAgICAgICAgIERNQV9DTUFSX01BX01zayAgICAgICAgICAgICAgICAgICAgLyohPCBNZW1vcnkgQWRkcmVzcyAqLw0KDQovKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgRE1BX0NNQVIxIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBETUFfQ01BUjFfTUFfUG9zICAgICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBETUFfQ01BUjFfTUFfTXNrICAgICAgICAgICAgICAgICAgICAoMHhGRkZGRkZGRlUgPDwgRE1BX0NNQVIxX01BX1BvcykgIC8qITwgMHhGRkZGRkZGRiAqLw0KI2RlZmluZSBETUFfQ01BUjFfTUEgICAgICAgICAgICAgICAgICAgICAgICBETUFfQ01BUjFfTUFfTXNrICAgICAgICAgICAgICAgICAgIC8qITwgTWVtb3J5IEFkZHJlc3MgKi8NCg0KLyoqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIERNQV9DTUFSMiByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgRE1BX0NNQVIyX01BX1BvcyAgICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRE1BX0NNQVIyX01BX01zayAgICAgICAgICAgICAgICAgICAgKDB4RkZGRkZGRkZVIDw8IERNQV9DTUFSMl9NQV9Qb3MpICAvKiE8IDB4RkZGRkZGRkYgKi8NCiNkZWZpbmUgRE1BX0NNQVIyX01BICAgICAgICAgICAgICAgICAgICAgICAgRE1BX0NNQVIyX01BX01zayAgICAgICAgICAgICAgICAgICAvKiE8IE1lbW9yeSBBZGRyZXNzICovDQoNCi8qKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBETUFfQ01BUjMgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIERNQV9DTUFSM19NQV9Qb3MgICAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIERNQV9DTUFSM19NQV9Nc2sgICAgICAgICAgICAgICAgICAgICgweEZGRkZGRkZGVSA8PCBETUFfQ01BUjNfTUFfUG9zKSAgLyohPCAweEZGRkZGRkZGICovDQojZGVmaW5lIERNQV9DTUFSM19NQSAgICAgICAgICAgICAgICAgICAgICAgIERNQV9DTUFSM19NQV9Nc2sgICAgICAgICAgICAgICAgICAgLyohPCBNZW1vcnkgQWRkcmVzcyAqLw0KDQoNCi8qKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBETUFfQ01BUjQgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIERNQV9DTUFSNF9NQV9Qb3MgICAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIERNQV9DTUFSNF9NQV9Nc2sgICAgICAgICAgICAgICAgICAgICgweEZGRkZGRkZGVSA8PCBETUFfQ01BUjRfTUFfUG9zKSAgLyohPCAweEZGRkZGRkZGICovDQojZGVmaW5lIERNQV9DTUFSNF9NQSAgICAgICAgICAgICAgICAgICAgICAgIERNQV9DTUFSNF9NQV9Nc2sgICAgICAgICAgICAgICAgICAgLyohPCBNZW1vcnkgQWRkcmVzcyAqLw0KDQovKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgRE1BX0NNQVI1IHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBETUFfQ01BUjVfTUFfUG9zICAgICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBETUFfQ01BUjVfTUFfTXNrICAgICAgICAgICAgICAgICAgICAoMHhGRkZGRkZGRlUgPDwgRE1BX0NNQVI1X01BX1BvcykgIC8qITwgMHhGRkZGRkZGRiAqLw0KI2RlZmluZSBETUFfQ01BUjVfTUEgICAgICAgICAgICAgICAgICAgICAgICBETUFfQ01BUjVfTUFfTXNrICAgICAgICAgICAgICAgICAgIC8qITwgTWVtb3J5IEFkZHJlc3MgKi8NCg0KLyoqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIERNQV9DTUFSNiByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgRE1BX0NNQVI2X01BX1BvcyAgICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRE1BX0NNQVI2X01BX01zayAgICAgICAgICAgICAgICAgICAgKDB4RkZGRkZGRkZVIDw8IERNQV9DTUFSNl9NQV9Qb3MpICAvKiE8IDB4RkZGRkZGRkYgKi8NCiNkZWZpbmUgRE1BX0NNQVI2X01BICAgICAgICAgICAgICAgICAgICAgICAgRE1BX0NNQVI2X01BX01zayAgICAgICAgICAgICAgICAgICAvKiE8IE1lbW9yeSBBZGRyZXNzICovDQoNCi8qKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBETUFfQ01BUjcgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIERNQV9DTUFSN19NQV9Qb3MgICAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIERNQV9DTUFSN19NQV9Nc2sgICAgICAgICAgICAgICAgICAgICgweEZGRkZGRkZGVSA8PCBETUFfQ01BUjdfTUFfUG9zKSAgLyohPCAweEZGRkZGRkZGICovDQojZGVmaW5lIERNQV9DTUFSN19NQSAgICAgICAgICAgICAgICAgICAgICAgIERNQV9DTUFSN19NQV9Nc2sgICAgICAgICAgICAgICAgICAgLyohPCBNZW1vcnkgQWRkcmVzcyAqLw0KDQovKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLw0KLyogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8NCi8qICAgICAgICAgICAgICAgICAgRXh0ZXJuYWwgSW50ZXJydXB0L0V2ZW50IENvbnRyb2xsZXIgKEVYVEkpICAgICAgICAgICAgICAgICovDQovKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLw0KLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8NCg0KLyoqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBFWFRJX0lNUiByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgRVhUSV9JTVJfTVIwX1BvcyAgICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRVhUSV9JTVJfTVIwX01zayAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgRVhUSV9JTVJfTVIwX1BvcykgICAgICAgICAvKiE8IDB4MDAwMDAwMDEgKi8NCiNkZWZpbmUgRVhUSV9JTVJfTVIwICAgICAgICAgICAgICAgICAgICAgICAgRVhUSV9JTVJfTVIwX01zayAgICAgICAgICAgICAgICAgICAvKiE8IEludGVycnVwdCBNYXNrIG9uIGxpbmUgMCAqLw0KI2RlZmluZSBFWFRJX0lNUl9NUjFfUG9zICAgICAgICAgICAgICAgICAgICAoMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBFWFRJX0lNUl9NUjFfTXNrICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBFWFRJX0lNUl9NUjFfUG9zKSAgICAgICAgIC8qITwgMHgwMDAwMDAwMiAqLw0KI2RlZmluZSBFWFRJX0lNUl9NUjEgICAgICAgICAgICAgICAgICAgICAgICBFWFRJX0lNUl9NUjFfTXNrICAgICAgICAgICAgICAgICAgIC8qITwgSW50ZXJydXB0IE1hc2sgb24gbGluZSAxICovDQojZGVmaW5lIEVYVElfSU1SX01SMl9Qb3MgICAgICAgICAgICAgICAgICAgICgyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEVYVElfSU1SX01SMl9Nc2sgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IEVYVElfSU1SX01SMl9Qb3MpICAgICAgICAgLyohPCAweDAwMDAwMDA0ICovDQojZGVmaW5lIEVYVElfSU1SX01SMiAgICAgICAgICAgICAgICAgICAgICAgIEVYVElfSU1SX01SMl9Nc2sgICAgICAgICAgICAgICAgICAgLyohPCBJbnRlcnJ1cHQgTWFzayBvbiBsaW5lIDIgKi8NCiNkZWZpbmUgRVhUSV9JTVJfTVIzX1BvcyAgICAgICAgICAgICAgICAgICAgKDNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRVhUSV9JTVJfTVIzX01zayAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgRVhUSV9JTVJfTVIzX1BvcykgICAgICAgICAvKiE8IDB4MDAwMDAwMDggKi8NCiNkZWZpbmUgRVhUSV9JTVJfTVIzICAgICAgICAgICAgICAgICAgICAgICAgRVhUSV9JTVJfTVIzX01zayAgICAgICAgICAgICAgICAgICAvKiE8IEludGVycnVwdCBNYXNrIG9uIGxpbmUgMyAqLw0KI2RlZmluZSBFWFRJX0lNUl9NUjRfUG9zICAgICAgICAgICAgICAgICAgICAoNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBFWFRJX0lNUl9NUjRfTXNrICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBFWFRJX0lNUl9NUjRfUG9zKSAgICAgICAgIC8qITwgMHgwMDAwMDAxMCAqLw0KI2RlZmluZSBFWFRJX0lNUl9NUjQgICAgICAgICAgICAgICAgICAgICAgICBFWFRJX0lNUl9NUjRfTXNrICAgICAgICAgICAgICAgICAgIC8qITwgSW50ZXJydXB0IE1hc2sgb24gbGluZSA0ICovDQojZGVmaW5lIEVYVElfSU1SX01SNV9Qb3MgICAgICAgICAgICAgICAgICAgICg1VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEVYVElfSU1SX01SNV9Nc2sgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IEVYVElfSU1SX01SNV9Qb3MpICAgICAgICAgLyohPCAweDAwMDAwMDIwICovDQojZGVmaW5lIEVYVElfSU1SX01SNSAgICAgICAgICAgICAgICAgICAgICAgIEVYVElfSU1SX01SNV9Nc2sgICAgICAgICAgICAgICAgICAgLyohPCBJbnRlcnJ1cHQgTWFzayBvbiBsaW5lIDUgKi8NCiNkZWZpbmUgRVhUSV9JTVJfTVI2X1BvcyAgICAgICAgICAgICAgICAgICAgKDZVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRVhUSV9JTVJfTVI2X01zayAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgRVhUSV9JTVJfTVI2X1BvcykgICAgICAgICAvKiE8IDB4MDAwMDAwNDAgKi8NCiNkZWZpbmUgRVhUSV9JTVJfTVI2ICAgICAgICAgICAgICAgICAgICAgICAgRVhUSV9JTVJfTVI2X01zayAgICAgICAgICAgICAgICAgICAvKiE8IEludGVycnVwdCBNYXNrIG9uIGxpbmUgNiAqLw0KI2RlZmluZSBFWFRJX0lNUl9NUjdfUG9zICAgICAgICAgICAgICAgICAgICAoN1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBFWFRJX0lNUl9NUjdfTXNrICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBFWFRJX0lNUl9NUjdfUG9zKSAgICAgICAgIC8qITwgMHgwMDAwMDA4MCAqLw0KI2RlZmluZSBFWFRJX0lNUl9NUjcgICAgICAgICAgICAgICAgICAgICAgICBFWFRJX0lNUl9NUjdfTXNrICAgICAgICAgICAgICAgICAgIC8qITwgSW50ZXJydXB0IE1hc2sgb24gbGluZSA3ICovDQojZGVmaW5lIEVYVElfSU1SX01SOF9Qb3MgICAgICAgICAgICAgICAgICAgICg4VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEVYVElfSU1SX01SOF9Nc2sgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IEVYVElfSU1SX01SOF9Qb3MpICAgICAgICAgLyohPCAweDAwMDAwMTAwICovDQojZGVmaW5lIEVYVElfSU1SX01SOCAgICAgICAgICAgICAgICAgICAgICAgIEVYVElfSU1SX01SOF9Nc2sgICAgICAgICAgICAgICAgICAgLyohPCBJbnRlcnJ1cHQgTWFzayBvbiBsaW5lIDggKi8NCiNkZWZpbmUgRVhUSV9JTVJfTVI5X1BvcyAgICAgICAgICAgICAgICAgICAgKDlVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRVhUSV9JTVJfTVI5X01zayAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgRVhUSV9JTVJfTVI5X1BvcykgICAgICAgICAvKiE8IDB4MDAwMDAyMDAgKi8NCiNkZWZpbmUgRVhUSV9JTVJfTVI5ICAgICAgICAgICAgICAgICAgICAgICAgRVhUSV9JTVJfTVI5X01zayAgICAgICAgICAgICAgICAgICAvKiE8IEludGVycnVwdCBNYXNrIG9uIGxpbmUgOSAqLw0KI2RlZmluZSBFWFRJX0lNUl9NUjEwX1BvcyAgICAgICAgICAgICAgICAgICAoMTBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBFWFRJX0lNUl9NUjEwX01zayAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBFWFRJX0lNUl9NUjEwX1BvcykgICAgICAgIC8qITwgMHgwMDAwMDQwMCAqLw0KI2RlZmluZSBFWFRJX0lNUl9NUjEwICAgICAgICAgICAgICAgICAgICAgICBFWFRJX0lNUl9NUjEwX01zayAgICAgICAgICAgICAgICAgIC8qITwgSW50ZXJydXB0IE1hc2sgb24gbGluZSAxMCAqLw0KI2RlZmluZSBFWFRJX0lNUl9NUjExX1BvcyAgICAgICAgICAgICAgICAgICAoMTFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBFWFRJX0lNUl9NUjExX01zayAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBFWFRJX0lNUl9NUjExX1BvcykgICAgICAgIC8qITwgMHgwMDAwMDgwMCAqLw0KI2RlZmluZSBFWFRJX0lNUl9NUjExICAgICAgICAgICAgICAgICAgICAgICBFWFRJX0lNUl9NUjExX01zayAgICAgICAgICAgICAgICAgIC8qITwgSW50ZXJydXB0IE1hc2sgb24gbGluZSAxMSAqLw0KI2RlZmluZSBFWFRJX0lNUl9NUjEyX1BvcyAgICAgICAgICAgICAgICAgICAoMTJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBFWFRJX0lNUl9NUjEyX01zayAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBFWFRJX0lNUl9NUjEyX1BvcykgICAgICAgIC8qITwgMHgwMDAwMTAwMCAqLw0KI2RlZmluZSBFWFRJX0lNUl9NUjEyICAgICAgICAgICAgICAgICAgICAgICBFWFRJX0lNUl9NUjEyX01zayAgICAgICAgICAgICAgICAgIC8qITwgSW50ZXJydXB0IE1hc2sgb24gbGluZSAxMiAqLw0KI2RlZmluZSBFWFRJX0lNUl9NUjEzX1BvcyAgICAgICAgICAgICAgICAgICAoMTNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBFWFRJX0lNUl9NUjEzX01zayAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBFWFRJX0lNUl9NUjEzX1BvcykgICAgICAgIC8qITwgMHgwMDAwMjAwMCAqLw0KI2RlZmluZSBFWFRJX0lNUl9NUjEzICAgICAgICAgICAgICAgICAgICAgICBFWFRJX0lNUl9NUjEzX01zayAgICAgICAgICAgICAgICAgIC8qITwgSW50ZXJydXB0IE1hc2sgb24gbGluZSAxMyAqLw0KI2RlZmluZSBFWFRJX0lNUl9NUjE0X1BvcyAgICAgICAgICAgICAgICAgICAoMTRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBFWFRJX0lNUl9NUjE0X01zayAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBFWFRJX0lNUl9NUjE0X1BvcykgICAgICAgIC8qITwgMHgwMDAwNDAwMCAqLw0KI2RlZmluZSBFWFRJX0lNUl9NUjE0ICAgICAgICAgICAgICAgICAgICAgICBFWFRJX0lNUl9NUjE0X01zayAgICAgICAgICAgICAgICAgIC8qITwgSW50ZXJydXB0IE1hc2sgb24gbGluZSAxNCAqLw0KI2RlZmluZSBFWFRJX0lNUl9NUjE1X1BvcyAgICAgICAgICAgICAgICAgICAoMTVVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBFWFRJX0lNUl9NUjE1X01zayAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBFWFRJX0lNUl9NUjE1X1BvcykgICAgICAgIC8qITwgMHgwMDAwODAwMCAqLw0KI2RlZmluZSBFWFRJX0lNUl9NUjE1ICAgICAgICAgICAgICAgICAgICAgICBFWFRJX0lNUl9NUjE1X01zayAgICAgICAgICAgICAgICAgIC8qITwgSW50ZXJydXB0IE1hc2sgb24gbGluZSAxNSAqLw0KI2RlZmluZSBFWFRJX0lNUl9NUjE2X1BvcyAgICAgICAgICAgICAgICAgICAoMTZVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBFWFRJX0lNUl9NUjE2X01zayAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBFWFRJX0lNUl9NUjE2X1BvcykgICAgICAgIC8qITwgMHgwMDAxMDAwMCAqLw0KI2RlZmluZSBFWFRJX0lNUl9NUjE2ICAgICAgICAgICAgICAgICAgICAgICBFWFRJX0lNUl9NUjE2X01zayAgICAgICAgICAgICAgICAgIC8qITwgSW50ZXJydXB0IE1hc2sgb24gbGluZSAxNiAqLw0KI2RlZmluZSBFWFRJX0lNUl9NUjE3X1BvcyAgICAgICAgICAgICAgICAgICAoMTdVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBFWFRJX0lNUl9NUjE3X01zayAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBFWFRJX0lNUl9NUjE3X1BvcykgICAgICAgIC8qITwgMHgwMDAyMDAwMCAqLw0KI2RlZmluZSBFWFRJX0lNUl9NUjE3ICAgICAgICAgICAgICAgICAgICAgICBFWFRJX0lNUl9NUjE3X01zayAgICAgICAgICAgICAgICAgIC8qITwgSW50ZXJydXB0IE1hc2sgb24gbGluZSAxNyAqLw0KI2RlZmluZSBFWFRJX0lNUl9NUjE4X1BvcyAgICAgICAgICAgICAgICAgICAoMThVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBFWFRJX0lNUl9NUjE4X01zayAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBFWFRJX0lNUl9NUjE4X1BvcykgICAgICAgIC8qITwgMHgwMDA0MDAwMCAqLw0KI2RlZmluZSBFWFRJX0lNUl9NUjE4ICAgICAgICAgICAgICAgICAgICAgICBFWFRJX0lNUl9NUjE4X01zayAgICAgICAgICAgICAgICAgIC8qITwgSW50ZXJydXB0IE1hc2sgb24gbGluZSAxOCAqLw0KI2RlZmluZSBFWFRJX0lNUl9NUjE5X1BvcyAgICAgICAgICAgICAgICAgICAoMTlVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBFWFRJX0lNUl9NUjE5X01zayAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBFWFRJX0lNUl9NUjE5X1BvcykgICAgICAgIC8qITwgMHgwMDA4MDAwMCAqLw0KI2RlZmluZSBFWFRJX0lNUl9NUjE5ICAgICAgICAgICAgICAgICAgICAgICBFWFRJX0lNUl9NUjE5X01zayAgICAgICAgICAgICAgICAgIC8qITwgSW50ZXJydXB0IE1hc2sgb24gbGluZSAxOSAqLw0KI2RlZmluZSBFWFRJX0lNUl9NUjIwX1BvcyAgICAgICAgICAgICAgICAgICAoMjBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBFWFRJX0lNUl9NUjIwX01zayAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBFWFRJX0lNUl9NUjIwX1BvcykgICAgICAgIC8qITwgMHgwMDEwMDAwMCAqLw0KI2RlZmluZSBFWFRJX0lNUl9NUjIwICAgICAgICAgICAgICAgICAgICAgICBFWFRJX0lNUl9NUjIwX01zayAgICAgICAgICAgICAgICAgIC8qITwgSW50ZXJydXB0IE1hc2sgb24gbGluZSAyMCAqLw0KI2RlZmluZSBFWFRJX0lNUl9NUjIxX1BvcyAgICAgICAgICAgICAgICAgICAoMjFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBFWFRJX0lNUl9NUjIxX01zayAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBFWFRJX0lNUl9NUjIxX1BvcykgICAgICAgIC8qITwgMHgwMDIwMDAwMCAqLw0KI2RlZmluZSBFWFRJX0lNUl9NUjIxICAgICAgICAgICAgICAgICAgICAgICBFWFRJX0lNUl9NUjIxX01zayAgICAgICAgICAgICAgICAgIC8qITwgSW50ZXJydXB0IE1hc2sgb24gbGluZSAyMSAqLw0KI2RlZmluZSBFWFRJX0lNUl9NUjIyX1BvcyAgICAgICAgICAgICAgICAgICAoMjJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBFWFRJX0lNUl9NUjIyX01zayAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBFWFRJX0lNUl9NUjIyX1BvcykgICAgICAgIC8qITwgMHgwMDQwMDAwMCAqLw0KI2RlZmluZSBFWFRJX0lNUl9NUjIyICAgICAgICAgICAgICAgICAgICAgICBFWFRJX0lNUl9NUjIyX01zayAgICAgICAgICAgICAgICAgIC8qITwgSW50ZXJydXB0IE1hc2sgb24gbGluZSAyMiAqLw0KI2RlZmluZSBFWFRJX0lNUl9NUjIzX1BvcyAgICAgICAgICAgICAgICAgICAoMjNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBFWFRJX0lNUl9NUjIzX01zayAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBFWFRJX0lNUl9NUjIzX1BvcykgICAgICAgIC8qITwgMHgwMDgwMDAwMCAqLw0KI2RlZmluZSBFWFRJX0lNUl9NUjIzICAgICAgICAgICAgICAgICAgICAgICBFWFRJX0lNUl9NUjIzX01zayAgICAgICAgICAgICAgICAgIC8qITwgSW50ZXJydXB0IE1hc2sgb24gbGluZSAyMyAqLw0KDQovKiBSZWZlcmVuY2VzIERlZmluZXMgKi8NCiNkZWZpbmUgIEVYVElfSU1SX0lNMCBFWFRJX0lNUl9NUjANCiNkZWZpbmUgIEVYVElfSU1SX0lNMSBFWFRJX0lNUl9NUjENCiNkZWZpbmUgIEVYVElfSU1SX0lNMiBFWFRJX0lNUl9NUjINCiNkZWZpbmUgIEVYVElfSU1SX0lNMyBFWFRJX0lNUl9NUjMNCiNkZWZpbmUgIEVYVElfSU1SX0lNNCBFWFRJX0lNUl9NUjQNCiNkZWZpbmUgIEVYVElfSU1SX0lNNSBFWFRJX0lNUl9NUjUNCiNkZWZpbmUgIEVYVElfSU1SX0lNNiBFWFRJX0lNUl9NUjYNCiNkZWZpbmUgIEVYVElfSU1SX0lNNyBFWFRJX0lNUl9NUjcNCiNkZWZpbmUgIEVYVElfSU1SX0lNOCBFWFRJX0lNUl9NUjgNCiNkZWZpbmUgIEVYVElfSU1SX0lNOSBFWFRJX0lNUl9NUjkNCiNkZWZpbmUgIEVYVElfSU1SX0lNMTAgRVhUSV9JTVJfTVIxMA0KI2RlZmluZSAgRVhUSV9JTVJfSU0xMSBFWFRJX0lNUl9NUjExDQojZGVmaW5lICBFWFRJX0lNUl9JTTEyIEVYVElfSU1SX01SMTINCiNkZWZpbmUgIEVYVElfSU1SX0lNMTMgRVhUSV9JTVJfTVIxMw0KI2RlZmluZSAgRVhUSV9JTVJfSU0xNCBFWFRJX0lNUl9NUjE0DQojZGVmaW5lICBFWFRJX0lNUl9JTTE1IEVYVElfSU1SX01SMTUNCiNkZWZpbmUgIEVYVElfSU1SX0lNMTYgRVhUSV9JTVJfTVIxNg0KI2RlZmluZSAgRVhUSV9JTVJfSU0xNyBFWFRJX0lNUl9NUjE3DQojZGVmaW5lICBFWFRJX0lNUl9JTTE4IEVYVElfSU1SX01SMTgNCiNkZWZpbmUgIEVYVElfSU1SX0lNMTkgRVhUSV9JTVJfTVIxOQ0KI2RlZmluZSAgRVhUSV9JTVJfSU0yMCBFWFRJX0lNUl9NUjIwDQojZGVmaW5lICBFWFRJX0lNUl9JTTIxIEVYVElfSU1SX01SMjENCiNkZWZpbmUgIEVYVElfSU1SX0lNMjIgRVhUSV9JTVJfTVIyMg0KLyogQ2F0ZWdvcnkgMywgNCAmIDUgKi8NCiNkZWZpbmUgIEVYVElfSU1SX0lNMjMgRVhUSV9JTVJfTVIyMw0KI2RlZmluZSBFWFRJX0lNUl9JTV9Qb3MgICAgICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBFWFRJX0lNUl9JTV9Nc2sgICAgICAgICAgICAgICAgICAgICAoMHhGRkZGRkZVIDw8IEVYVElfSU1SX0lNX1BvcykgICAgIC8qITwgMHgwMEZGRkZGRiAqLw0KI2RlZmluZSBFWFRJX0lNUl9JTSAgICAgICAgICAgICAgICAgICAgICAgICBFWFRJX0lNUl9JTV9Nc2sgICAgICAgICAgICAgICAgICAgIC8qITwgSW50ZXJydXB0IE1hc2sgQWxsICovDQoNCi8qKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgRVhUSV9FTVIgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIEVYVElfRU1SX01SMF9Qb3MgICAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEVYVElfRU1SX01SMF9Nc2sgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IEVYVElfRU1SX01SMF9Qb3MpICAgICAgICAgLyohPCAweDAwMDAwMDAxICovDQojZGVmaW5lIEVYVElfRU1SX01SMCAgICAgICAgICAgICAgICAgICAgICAgIEVYVElfRU1SX01SMF9Nc2sgICAgICAgICAgICAgICAgICAgLyohPCBFdmVudCBNYXNrIG9uIGxpbmUgMCAqLw0KI2RlZmluZSBFWFRJX0VNUl9NUjFfUG9zICAgICAgICAgICAgICAgICAgICAoMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBFWFRJX0VNUl9NUjFfTXNrICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBFWFRJX0VNUl9NUjFfUG9zKSAgICAgICAgIC8qITwgMHgwMDAwMDAwMiAqLw0KI2RlZmluZSBFWFRJX0VNUl9NUjEgICAgICAgICAgICAgICAgICAgICAgICBFWFRJX0VNUl9NUjFfTXNrICAgICAgICAgICAgICAgICAgIC8qITwgRXZlbnQgTWFzayBvbiBsaW5lIDEgKi8NCiNkZWZpbmUgRVhUSV9FTVJfTVIyX1BvcyAgICAgICAgICAgICAgICAgICAgKDJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRVhUSV9FTVJfTVIyX01zayAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgRVhUSV9FTVJfTVIyX1BvcykgICAgICAgICAvKiE8IDB4MDAwMDAwMDQgKi8NCiNkZWZpbmUgRVhUSV9FTVJfTVIyICAgICAgICAgICAgICAgICAgICAgICAgRVhUSV9FTVJfTVIyX01zayAgICAgICAgICAgICAgICAgICAvKiE8IEV2ZW50IE1hc2sgb24gbGluZSAyICovDQojZGVmaW5lIEVYVElfRU1SX01SM19Qb3MgICAgICAgICAgICAgICAgICAgICgzVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEVYVElfRU1SX01SM19Nc2sgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IEVYVElfRU1SX01SM19Qb3MpICAgICAgICAgLyohPCAweDAwMDAwMDA4ICovDQojZGVmaW5lIEVYVElfRU1SX01SMyAgICAgICAgICAgICAgICAgICAgICAgIEVYVElfRU1SX01SM19Nc2sgICAgICAgICAgICAgICAgICAgLyohPCBFdmVudCBNYXNrIG9uIGxpbmUgMyAqLw0KI2RlZmluZSBFWFRJX0VNUl9NUjRfUG9zICAgICAgICAgICAgICAgICAgICAoNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBFWFRJX0VNUl9NUjRfTXNrICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBFWFRJX0VNUl9NUjRfUG9zKSAgICAgICAgIC8qITwgMHgwMDAwMDAxMCAqLw0KI2RlZmluZSBFWFRJX0VNUl9NUjQgICAgICAgICAgICAgICAgICAgICAgICBFWFRJX0VNUl9NUjRfTXNrICAgICAgICAgICAgICAgICAgIC8qITwgRXZlbnQgTWFzayBvbiBsaW5lIDQgKi8NCiNkZWZpbmUgRVhUSV9FTVJfTVI1X1BvcyAgICAgICAgICAgICAgICAgICAgKDVVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRVhUSV9FTVJfTVI1X01zayAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgRVhUSV9FTVJfTVI1X1BvcykgICAgICAgICAvKiE8IDB4MDAwMDAwMjAgKi8NCiNkZWZpbmUgRVhUSV9FTVJfTVI1ICAgICAgICAgICAgICAgICAgICAgICAgRVhUSV9FTVJfTVI1X01zayAgICAgICAgICAgICAgICAgICAvKiE8IEV2ZW50IE1hc2sgb24gbGluZSA1ICovDQojZGVmaW5lIEVYVElfRU1SX01SNl9Qb3MgICAgICAgICAgICAgICAgICAgICg2VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEVYVElfRU1SX01SNl9Nc2sgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IEVYVElfRU1SX01SNl9Qb3MpICAgICAgICAgLyohPCAweDAwMDAwMDQwICovDQojZGVmaW5lIEVYVElfRU1SX01SNiAgICAgICAgICAgICAgICAgICAgICAgIEVYVElfRU1SX01SNl9Nc2sgICAgICAgICAgICAgICAgICAgLyohPCBFdmVudCBNYXNrIG9uIGxpbmUgNiAqLw0KI2RlZmluZSBFWFRJX0VNUl9NUjdfUG9zICAgICAgICAgICAgICAgICAgICAoN1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBFWFRJX0VNUl9NUjdfTXNrICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBFWFRJX0VNUl9NUjdfUG9zKSAgICAgICAgIC8qITwgMHgwMDAwMDA4MCAqLw0KI2RlZmluZSBFWFRJX0VNUl9NUjcgICAgICAgICAgICAgICAgICAgICAgICBFWFRJX0VNUl9NUjdfTXNrICAgICAgICAgICAgICAgICAgIC8qITwgRXZlbnQgTWFzayBvbiBsaW5lIDcgKi8NCiNkZWZpbmUgRVhUSV9FTVJfTVI4X1BvcyAgICAgICAgICAgICAgICAgICAgKDhVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRVhUSV9FTVJfTVI4X01zayAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgRVhUSV9FTVJfTVI4X1BvcykgICAgICAgICAvKiE8IDB4MDAwMDAxMDAgKi8NCiNkZWZpbmUgRVhUSV9FTVJfTVI4ICAgICAgICAgICAgICAgICAgICAgICAgRVhUSV9FTVJfTVI4X01zayAgICAgICAgICAgICAgICAgICAvKiE8IEV2ZW50IE1hc2sgb24gbGluZSA4ICovDQojZGVmaW5lIEVYVElfRU1SX01SOV9Qb3MgICAgICAgICAgICAgICAgICAgICg5VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEVYVElfRU1SX01SOV9Nc2sgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IEVYVElfRU1SX01SOV9Qb3MpICAgICAgICAgLyohPCAweDAwMDAwMjAwICovDQojZGVmaW5lIEVYVElfRU1SX01SOSAgICAgICAgICAgICAgICAgICAgICAgIEVYVElfRU1SX01SOV9Nc2sgICAgICAgICAgICAgICAgICAgLyohPCBFdmVudCBNYXNrIG9uIGxpbmUgOSAqLw0KI2RlZmluZSBFWFRJX0VNUl9NUjEwX1BvcyAgICAgICAgICAgICAgICAgICAoMTBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBFWFRJX0VNUl9NUjEwX01zayAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBFWFRJX0VNUl9NUjEwX1BvcykgICAgICAgIC8qITwgMHgwMDAwMDQwMCAqLw0KI2RlZmluZSBFWFRJX0VNUl9NUjEwICAgICAgICAgICAgICAgICAgICAgICBFWFRJX0VNUl9NUjEwX01zayAgICAgICAgICAgICAgICAgIC8qITwgRXZlbnQgTWFzayBvbiBsaW5lIDEwICovDQojZGVmaW5lIEVYVElfRU1SX01SMTFfUG9zICAgICAgICAgICAgICAgICAgICgxMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEVYVElfRU1SX01SMTFfTXNrICAgICAgICAgICAgICAgICAgICgweDFVIDw8IEVYVElfRU1SX01SMTFfUG9zKSAgICAgICAgLyohPCAweDAwMDAwODAwICovDQojZGVmaW5lIEVYVElfRU1SX01SMTEgICAgICAgICAgICAgICAgICAgICAgIEVYVElfRU1SX01SMTFfTXNrICAgICAgICAgICAgICAgICAgLyohPCBFdmVudCBNYXNrIG9uIGxpbmUgMTEgKi8NCiNkZWZpbmUgRVhUSV9FTVJfTVIxMl9Qb3MgICAgICAgICAgICAgICAgICAgKDEyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRVhUSV9FTVJfTVIxMl9Nc2sgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgRVhUSV9FTVJfTVIxMl9Qb3MpICAgICAgICAvKiE8IDB4MDAwMDEwMDAgKi8NCiNkZWZpbmUgRVhUSV9FTVJfTVIxMiAgICAgICAgICAgICAgICAgICAgICAgRVhUSV9FTVJfTVIxMl9Nc2sgICAgICAgICAgICAgICAgICAvKiE8IEV2ZW50IE1hc2sgb24gbGluZSAxMiAqLw0KI2RlZmluZSBFWFRJX0VNUl9NUjEzX1BvcyAgICAgICAgICAgICAgICAgICAoMTNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBFWFRJX0VNUl9NUjEzX01zayAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBFWFRJX0VNUl9NUjEzX1BvcykgICAgICAgIC8qITwgMHgwMDAwMjAwMCAqLw0KI2RlZmluZSBFWFRJX0VNUl9NUjEzICAgICAgICAgICAgICAgICAgICAgICBFWFRJX0VNUl9NUjEzX01zayAgICAgICAgICAgICAgICAgIC8qITwgRXZlbnQgTWFzayBvbiBsaW5lIDEzICovDQojZGVmaW5lIEVYVElfRU1SX01SMTRfUG9zICAgICAgICAgICAgICAgICAgICgxNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEVYVElfRU1SX01SMTRfTXNrICAgICAgICAgICAgICAgICAgICgweDFVIDw8IEVYVElfRU1SX01SMTRfUG9zKSAgICAgICAgLyohPCAweDAwMDA0MDAwICovDQojZGVmaW5lIEVYVElfRU1SX01SMTQgICAgICAgICAgICAgICAgICAgICAgIEVYVElfRU1SX01SMTRfTXNrICAgICAgICAgICAgICAgICAgLyohPCBFdmVudCBNYXNrIG9uIGxpbmUgMTQgKi8NCiNkZWZpbmUgRVhUSV9FTVJfTVIxNV9Qb3MgICAgICAgICAgICAgICAgICAgKDE1VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRVhUSV9FTVJfTVIxNV9Nc2sgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgRVhUSV9FTVJfTVIxNV9Qb3MpICAgICAgICAvKiE8IDB4MDAwMDgwMDAgKi8NCiNkZWZpbmUgRVhUSV9FTVJfTVIxNSAgICAgICAgICAgICAgICAgICAgICAgRVhUSV9FTVJfTVIxNV9Nc2sgICAgICAgICAgICAgICAgICAvKiE8IEV2ZW50IE1hc2sgb24gbGluZSAxNSAqLw0KI2RlZmluZSBFWFRJX0VNUl9NUjE2X1BvcyAgICAgICAgICAgICAgICAgICAoMTZVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBFWFRJX0VNUl9NUjE2X01zayAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBFWFRJX0VNUl9NUjE2X1BvcykgICAgICAgIC8qITwgMHgwMDAxMDAwMCAqLw0KI2RlZmluZSBFWFRJX0VNUl9NUjE2ICAgICAgICAgICAgICAgICAgICAgICBFWFRJX0VNUl9NUjE2X01zayAgICAgICAgICAgICAgICAgIC8qITwgRXZlbnQgTWFzayBvbiBsaW5lIDE2ICovDQojZGVmaW5lIEVYVElfRU1SX01SMTdfUG9zICAgICAgICAgICAgICAgICAgICgxN1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEVYVElfRU1SX01SMTdfTXNrICAgICAgICAgICAgICAgICAgICgweDFVIDw8IEVYVElfRU1SX01SMTdfUG9zKSAgICAgICAgLyohPCAweDAwMDIwMDAwICovDQojZGVmaW5lIEVYVElfRU1SX01SMTcgICAgICAgICAgICAgICAgICAgICAgIEVYVElfRU1SX01SMTdfTXNrICAgICAgICAgICAgICAgICAgLyohPCBFdmVudCBNYXNrIG9uIGxpbmUgMTcgKi8NCiNkZWZpbmUgRVhUSV9FTVJfTVIxOF9Qb3MgICAgICAgICAgICAgICAgICAgKDE4VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRVhUSV9FTVJfTVIxOF9Nc2sgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgRVhUSV9FTVJfTVIxOF9Qb3MpICAgICAgICAvKiE8IDB4MDAwNDAwMDAgKi8NCiNkZWZpbmUgRVhUSV9FTVJfTVIxOCAgICAgICAgICAgICAgICAgICAgICAgRVhUSV9FTVJfTVIxOF9Nc2sgICAgICAgICAgICAgICAgICAvKiE8IEV2ZW50IE1hc2sgb24gbGluZSAxOCAqLw0KI2RlZmluZSBFWFRJX0VNUl9NUjE5X1BvcyAgICAgICAgICAgICAgICAgICAoMTlVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBFWFRJX0VNUl9NUjE5X01zayAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBFWFRJX0VNUl9NUjE5X1BvcykgICAgICAgIC8qITwgMHgwMDA4MDAwMCAqLw0KI2RlZmluZSBFWFRJX0VNUl9NUjE5ICAgICAgICAgICAgICAgICAgICAgICBFWFRJX0VNUl9NUjE5X01zayAgICAgICAgICAgICAgICAgIC8qITwgRXZlbnQgTWFzayBvbiBsaW5lIDE5ICovDQojZGVmaW5lIEVYVElfRU1SX01SMjBfUG9zICAgICAgICAgICAgICAgICAgICgyMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEVYVElfRU1SX01SMjBfTXNrICAgICAgICAgICAgICAgICAgICgweDFVIDw8IEVYVElfRU1SX01SMjBfUG9zKSAgICAgICAgLyohPCAweDAwMTAwMDAwICovDQojZGVmaW5lIEVYVElfRU1SX01SMjAgICAgICAgICAgICAgICAgICAgICAgIEVYVElfRU1SX01SMjBfTXNrICAgICAgICAgICAgICAgICAgLyohPCBFdmVudCBNYXNrIG9uIGxpbmUgMjAgKi8NCiNkZWZpbmUgRVhUSV9FTVJfTVIyMV9Qb3MgICAgICAgICAgICAgICAgICAgKDIxVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRVhUSV9FTVJfTVIyMV9Nc2sgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgRVhUSV9FTVJfTVIyMV9Qb3MpICAgICAgICAvKiE8IDB4MDAyMDAwMDAgKi8NCiNkZWZpbmUgRVhUSV9FTVJfTVIyMSAgICAgICAgICAgICAgICAgICAgICAgRVhUSV9FTVJfTVIyMV9Nc2sgICAgICAgICAgICAgICAgICAvKiE8IEV2ZW50IE1hc2sgb24gbGluZSAyMSAqLw0KI2RlZmluZSBFWFRJX0VNUl9NUjIyX1BvcyAgICAgICAgICAgICAgICAgICAoMjJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBFWFRJX0VNUl9NUjIyX01zayAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBFWFRJX0VNUl9NUjIyX1BvcykgICAgICAgIC8qITwgMHgwMDQwMDAwMCAqLw0KI2RlZmluZSBFWFRJX0VNUl9NUjIyICAgICAgICAgICAgICAgICAgICAgICBFWFRJX0VNUl9NUjIyX01zayAgICAgICAgICAgICAgICAgIC8qITwgRXZlbnQgTWFzayBvbiBsaW5lIDIyICovDQojZGVmaW5lIEVYVElfRU1SX01SMjNfUG9zICAgICAgICAgICAgICAgICAgICgyM1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEVYVElfRU1SX01SMjNfTXNrICAgICAgICAgICAgICAgICAgICgweDFVIDw8IEVYVElfRU1SX01SMjNfUG9zKSAgICAgICAgLyohPCAweDAwODAwMDAwICovDQojZGVmaW5lIEVYVElfRU1SX01SMjMgICAgICAgICAgICAgICAgICAgICAgIEVYVElfRU1SX01SMjNfTXNrICAgICAgICAgICAgICAgICAgLyohPCBFdmVudCBNYXNrIG9uIGxpbmUgMjMgKi8NCg0KLyogUmVmZXJlbmNlcyBEZWZpbmVzICovDQojZGVmaW5lICBFWFRJX0VNUl9FTTAgRVhUSV9FTVJfTVIwDQojZGVmaW5lICBFWFRJX0VNUl9FTTEgRVhUSV9FTVJfTVIxDQojZGVmaW5lICBFWFRJX0VNUl9FTTIgRVhUSV9FTVJfTVIyDQojZGVmaW5lICBFWFRJX0VNUl9FTTMgRVhUSV9FTVJfTVIzDQojZGVmaW5lICBFWFRJX0VNUl9FTTQgRVhUSV9FTVJfTVI0DQojZGVmaW5lICBFWFRJX0VNUl9FTTUgRVhUSV9FTVJfTVI1DQojZGVmaW5lICBFWFRJX0VNUl9FTTYgRVhUSV9FTVJfTVI2DQojZGVmaW5lICBFWFRJX0VNUl9FTTcgRVhUSV9FTVJfTVI3DQojZGVmaW5lICBFWFRJX0VNUl9FTTggRVhUSV9FTVJfTVI4DQojZGVmaW5lICBFWFRJX0VNUl9FTTkgRVhUSV9FTVJfTVI5DQojZGVmaW5lICBFWFRJX0VNUl9FTTEwIEVYVElfRU1SX01SMTANCiNkZWZpbmUgIEVYVElfRU1SX0VNMTEgRVhUSV9FTVJfTVIxMQ0KI2RlZmluZSAgRVhUSV9FTVJfRU0xMiBFWFRJX0VNUl9NUjEyDQojZGVmaW5lICBFWFRJX0VNUl9FTTEzIEVYVElfRU1SX01SMTMNCiNkZWZpbmUgIEVYVElfRU1SX0VNMTQgRVhUSV9FTVJfTVIxNA0KI2RlZmluZSAgRVhUSV9FTVJfRU0xNSBFWFRJX0VNUl9NUjE1DQojZGVmaW5lICBFWFRJX0VNUl9FTTE2IEVYVElfRU1SX01SMTYNCiNkZWZpbmUgIEVYVElfRU1SX0VNMTcgRVhUSV9FTVJfTVIxNw0KI2RlZmluZSAgRVhUSV9FTVJfRU0xOCBFWFRJX0VNUl9NUjE4DQojZGVmaW5lICBFWFRJX0VNUl9FTTE5IEVYVElfRU1SX01SMTkNCiNkZWZpbmUgIEVYVElfRU1SX0VNMjAgRVhUSV9FTVJfTVIyMA0KI2RlZmluZSAgRVhUSV9FTVJfRU0yMSBFWFRJX0VNUl9NUjIxDQojZGVmaW5lICBFWFRJX0VNUl9FTTIyIEVYVElfRU1SX01SMjINCiNkZWZpbmUgIEVYVElfRU1SX0VNMjMgRVhUSV9FTVJfTVIyMw0KDQovKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgRVhUSV9SVFNSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBFWFRJX1JUU1JfVFIwX1BvcyAgICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBFWFRJX1JUU1JfVFIwX01zayAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBFWFRJX1JUU1JfVFIwX1BvcykgICAgICAgIC8qITwgMHgwMDAwMDAwMSAqLw0KI2RlZmluZSBFWFRJX1JUU1JfVFIwICAgICAgICAgICAgICAgICAgICAgICBFWFRJX1JUU1JfVFIwX01zayAgICAgICAgICAgICAgICAgIC8qITwgUmlzaW5nIHRyaWdnZXIgZXZlbnQgY29uZmlndXJhdGlvbiBiaXQgb2YgbGluZSAwICovDQojZGVmaW5lIEVYVElfUlRTUl9UUjFfUG9zICAgICAgICAgICAgICAgICAgICgxVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEVYVElfUlRTUl9UUjFfTXNrICAgICAgICAgICAgICAgICAgICgweDFVIDw8IEVYVElfUlRTUl9UUjFfUG9zKSAgICAgICAgLyohPCAweDAwMDAwMDAyICovDQojZGVmaW5lIEVYVElfUlRTUl9UUjEgICAgICAgICAgICAgICAgICAgICAgIEVYVElfUlRTUl9UUjFfTXNrICAgICAgICAgICAgICAgICAgLyohPCBSaXNpbmcgdHJpZ2dlciBldmVudCBjb25maWd1cmF0aW9uIGJpdCBvZiBsaW5lIDEgKi8NCiNkZWZpbmUgRVhUSV9SVFNSX1RSMl9Qb3MgICAgICAgICAgICAgICAgICAgKDJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRVhUSV9SVFNSX1RSMl9Nc2sgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgRVhUSV9SVFNSX1RSMl9Qb3MpICAgICAgICAvKiE8IDB4MDAwMDAwMDQgKi8NCiNkZWZpbmUgRVhUSV9SVFNSX1RSMiAgICAgICAgICAgICAgICAgICAgICAgRVhUSV9SVFNSX1RSMl9Nc2sgICAgICAgICAgICAgICAgICAvKiE8IFJpc2luZyB0cmlnZ2VyIGV2ZW50IGNvbmZpZ3VyYXRpb24gYml0IG9mIGxpbmUgMiAqLw0KI2RlZmluZSBFWFRJX1JUU1JfVFIzX1BvcyAgICAgICAgICAgICAgICAgICAoM1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBFWFRJX1JUU1JfVFIzX01zayAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBFWFRJX1JUU1JfVFIzX1BvcykgICAgICAgIC8qITwgMHgwMDAwMDAwOCAqLw0KI2RlZmluZSBFWFRJX1JUU1JfVFIzICAgICAgICAgICAgICAgICAgICAgICBFWFRJX1JUU1JfVFIzX01zayAgICAgICAgICAgICAgICAgIC8qITwgUmlzaW5nIHRyaWdnZXIgZXZlbnQgY29uZmlndXJhdGlvbiBiaXQgb2YgbGluZSAzICovDQojZGVmaW5lIEVYVElfUlRTUl9UUjRfUG9zICAgICAgICAgICAgICAgICAgICg0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEVYVElfUlRTUl9UUjRfTXNrICAgICAgICAgICAgICAgICAgICgweDFVIDw8IEVYVElfUlRTUl9UUjRfUG9zKSAgICAgICAgLyohPCAweDAwMDAwMDEwICovDQojZGVmaW5lIEVYVElfUlRTUl9UUjQgICAgICAgICAgICAgICAgICAgICAgIEVYVElfUlRTUl9UUjRfTXNrICAgICAgICAgICAgICAgICAgLyohPCBSaXNpbmcgdHJpZ2dlciBldmVudCBjb25maWd1cmF0aW9uIGJpdCBvZiBsaW5lIDQgKi8NCiNkZWZpbmUgRVhUSV9SVFNSX1RSNV9Qb3MgICAgICAgICAgICAgICAgICAgKDVVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRVhUSV9SVFNSX1RSNV9Nc2sgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgRVhUSV9SVFNSX1RSNV9Qb3MpICAgICAgICAvKiE8IDB4MDAwMDAwMjAgKi8NCiNkZWZpbmUgRVhUSV9SVFNSX1RSNSAgICAgICAgICAgICAgICAgICAgICAgRVhUSV9SVFNSX1RSNV9Nc2sgICAgICAgICAgICAgICAgICAvKiE8IFJpc2luZyB0cmlnZ2VyIGV2ZW50IGNvbmZpZ3VyYXRpb24gYml0IG9mIGxpbmUgNSAqLw0KI2RlZmluZSBFWFRJX1JUU1JfVFI2X1BvcyAgICAgICAgICAgICAgICAgICAoNlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBFWFRJX1JUU1JfVFI2X01zayAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBFWFRJX1JUU1JfVFI2X1BvcykgICAgICAgIC8qITwgMHgwMDAwMDA0MCAqLw0KI2RlZmluZSBFWFRJX1JUU1JfVFI2ICAgICAgICAgICAgICAgICAgICAgICBFWFRJX1JUU1JfVFI2X01zayAgICAgICAgICAgICAgICAgIC8qITwgUmlzaW5nIHRyaWdnZXIgZXZlbnQgY29uZmlndXJhdGlvbiBiaXQgb2YgbGluZSA2ICovDQojZGVmaW5lIEVYVElfUlRTUl9UUjdfUG9zICAgICAgICAgICAgICAgICAgICg3VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEVYVElfUlRTUl9UUjdfTXNrICAgICAgICAgICAgICAgICAgICgweDFVIDw8IEVYVElfUlRTUl9UUjdfUG9zKSAgICAgICAgLyohPCAweDAwMDAwMDgwICovDQojZGVmaW5lIEVYVElfUlRTUl9UUjcgICAgICAgICAgICAgICAgICAgICAgIEVYVElfUlRTUl9UUjdfTXNrICAgICAgICAgICAgICAgICAgLyohPCBSaXNpbmcgdHJpZ2dlciBldmVudCBjb25maWd1cmF0aW9uIGJpdCBvZiBsaW5lIDcgKi8NCiNkZWZpbmUgRVhUSV9SVFNSX1RSOF9Qb3MgICAgICAgICAgICAgICAgICAgKDhVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRVhUSV9SVFNSX1RSOF9Nc2sgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgRVhUSV9SVFNSX1RSOF9Qb3MpICAgICAgICAvKiE8IDB4MDAwMDAxMDAgKi8NCiNkZWZpbmUgRVhUSV9SVFNSX1RSOCAgICAgICAgICAgICAgICAgICAgICAgRVhUSV9SVFNSX1RSOF9Nc2sgICAgICAgICAgICAgICAgICAvKiE8IFJpc2luZyB0cmlnZ2VyIGV2ZW50IGNvbmZpZ3VyYXRpb24gYml0IG9mIGxpbmUgOCAqLw0KI2RlZmluZSBFWFRJX1JUU1JfVFI5X1BvcyAgICAgICAgICAgICAgICAgICAoOVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBFWFRJX1JUU1JfVFI5X01zayAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBFWFRJX1JUU1JfVFI5X1BvcykgICAgICAgIC8qITwgMHgwMDAwMDIwMCAqLw0KI2RlZmluZSBFWFRJX1JUU1JfVFI5ICAgICAgICAgICAgICAgICAgICAgICBFWFRJX1JUU1JfVFI5X01zayAgICAgICAgICAgICAgICAgIC8qITwgUmlzaW5nIHRyaWdnZXIgZXZlbnQgY29uZmlndXJhdGlvbiBiaXQgb2YgbGluZSA5ICovDQojZGVmaW5lIEVYVElfUlRTUl9UUjEwX1BvcyAgICAgICAgICAgICAgICAgICgxMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEVYVElfUlRTUl9UUjEwX01zayAgICAgICAgICAgICAgICAgICgweDFVIDw8IEVYVElfUlRTUl9UUjEwX1BvcykgICAgICAgLyohPCAweDAwMDAwNDAwICovDQojZGVmaW5lIEVYVElfUlRTUl9UUjEwICAgICAgICAgICAgICAgICAgICAgIEVYVElfUlRTUl9UUjEwX01zayAgICAgICAgICAgICAgICAgLyohPCBSaXNpbmcgdHJpZ2dlciBldmVudCBjb25maWd1cmF0aW9uIGJpdCBvZiBsaW5lIDEwICovDQojZGVmaW5lIEVYVElfUlRTUl9UUjExX1BvcyAgICAgICAgICAgICAgICAgICgxMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEVYVElfUlRTUl9UUjExX01zayAgICAgICAgICAgICAgICAgICgweDFVIDw8IEVYVElfUlRTUl9UUjExX1BvcykgICAgICAgLyohPCAweDAwMDAwODAwICovDQojZGVmaW5lIEVYVElfUlRTUl9UUjExICAgICAgICAgICAgICAgICAgICAgIEVYVElfUlRTUl9UUjExX01zayAgICAgICAgICAgICAgICAgLyohPCBSaXNpbmcgdHJpZ2dlciBldmVudCBjb25maWd1cmF0aW9uIGJpdCBvZiBsaW5lIDExICovDQojZGVmaW5lIEVYVElfUlRTUl9UUjEyX1BvcyAgICAgICAgICAgICAgICAgICgxMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEVYVElfUlRTUl9UUjEyX01zayAgICAgICAgICAgICAgICAgICgweDFVIDw8IEVYVElfUlRTUl9UUjEyX1BvcykgICAgICAgLyohPCAweDAwMDAxMDAwICovDQojZGVmaW5lIEVYVElfUlRTUl9UUjEyICAgICAgICAgICAgICAgICAgICAgIEVYVElfUlRTUl9UUjEyX01zayAgICAgICAgICAgICAgICAgLyohPCBSaXNpbmcgdHJpZ2dlciBldmVudCBjb25maWd1cmF0aW9uIGJpdCBvZiBsaW5lIDEyICovDQojZGVmaW5lIEVYVElfUlRTUl9UUjEzX1BvcyAgICAgICAgICAgICAgICAgICgxM1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEVYVElfUlRTUl9UUjEzX01zayAgICAgICAgICAgICAgICAgICgweDFVIDw8IEVYVElfUlRTUl9UUjEzX1BvcykgICAgICAgLyohPCAweDAwMDAyMDAwICovDQojZGVmaW5lIEVYVElfUlRTUl9UUjEzICAgICAgICAgICAgICAgICAgICAgIEVYVElfUlRTUl9UUjEzX01zayAgICAgICAgICAgICAgICAgLyohPCBSaXNpbmcgdHJpZ2dlciBldmVudCBjb25maWd1cmF0aW9uIGJpdCBvZiBsaW5lIDEzICovDQojZGVmaW5lIEVYVElfUlRTUl9UUjE0X1BvcyAgICAgICAgICAgICAgICAgICgxNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEVYVElfUlRTUl9UUjE0X01zayAgICAgICAgICAgICAgICAgICgweDFVIDw8IEVYVElfUlRTUl9UUjE0X1BvcykgICAgICAgLyohPCAweDAwMDA0MDAwICovDQojZGVmaW5lIEVYVElfUlRTUl9UUjE0ICAgICAgICAgICAgICAgICAgICAgIEVYVElfUlRTUl9UUjE0X01zayAgICAgICAgICAgICAgICAgLyohPCBSaXNpbmcgdHJpZ2dlciBldmVudCBjb25maWd1cmF0aW9uIGJpdCBvZiBsaW5lIDE0ICovDQojZGVmaW5lIEVYVElfUlRTUl9UUjE1X1BvcyAgICAgICAgICAgICAgICAgICgxNVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEVYVElfUlRTUl9UUjE1X01zayAgICAgICAgICAgICAgICAgICgweDFVIDw8IEVYVElfUlRTUl9UUjE1X1BvcykgICAgICAgLyohPCAweDAwMDA4MDAwICovDQojZGVmaW5lIEVYVElfUlRTUl9UUjE1ICAgICAgICAgICAgICAgICAgICAgIEVYVElfUlRTUl9UUjE1X01zayAgICAgICAgICAgICAgICAgLyohPCBSaXNpbmcgdHJpZ2dlciBldmVudCBjb25maWd1cmF0aW9uIGJpdCBvZiBsaW5lIDE1ICovDQojZGVmaW5lIEVYVElfUlRTUl9UUjE2X1BvcyAgICAgICAgICAgICAgICAgICgxNlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEVYVElfUlRTUl9UUjE2X01zayAgICAgICAgICAgICAgICAgICgweDFVIDw8IEVYVElfUlRTUl9UUjE2X1BvcykgICAgICAgLyohPCAweDAwMDEwMDAwICovDQojZGVmaW5lIEVYVElfUlRTUl9UUjE2ICAgICAgICAgICAgICAgICAgICAgIEVYVElfUlRTUl9UUjE2X01zayAgICAgICAgICAgICAgICAgLyohPCBSaXNpbmcgdHJpZ2dlciBldmVudCBjb25maWd1cmF0aW9uIGJpdCBvZiBsaW5lIDE2ICovDQojZGVmaW5lIEVYVElfUlRTUl9UUjE3X1BvcyAgICAgICAgICAgICAgICAgICgxN1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEVYVElfUlRTUl9UUjE3X01zayAgICAgICAgICAgICAgICAgICgweDFVIDw8IEVYVElfUlRTUl9UUjE3X1BvcykgICAgICAgLyohPCAweDAwMDIwMDAwICovDQojZGVmaW5lIEVYVElfUlRTUl9UUjE3ICAgICAgICAgICAgICAgICAgICAgIEVYVElfUlRTUl9UUjE3X01zayAgICAgICAgICAgICAgICAgLyohPCBSaXNpbmcgdHJpZ2dlciBldmVudCBjb25maWd1cmF0aW9uIGJpdCBvZiBsaW5lIDE3ICovDQojZGVmaW5lIEVYVElfUlRTUl9UUjE4X1BvcyAgICAgICAgICAgICAgICAgICgxOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEVYVElfUlRTUl9UUjE4X01zayAgICAgICAgICAgICAgICAgICgweDFVIDw8IEVYVElfUlRTUl9UUjE4X1BvcykgICAgICAgLyohPCAweDAwMDQwMDAwICovDQojZGVmaW5lIEVYVElfUlRTUl9UUjE4ICAgICAgICAgICAgICAgICAgICAgIEVYVElfUlRTUl9UUjE4X01zayAgICAgICAgICAgICAgICAgLyohPCBSaXNpbmcgdHJpZ2dlciBldmVudCBjb25maWd1cmF0aW9uIGJpdCBvZiBsaW5lIDE4ICovDQojZGVmaW5lIEVYVElfUlRTUl9UUjE5X1BvcyAgICAgICAgICAgICAgICAgICgxOVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEVYVElfUlRTUl9UUjE5X01zayAgICAgICAgICAgICAgICAgICgweDFVIDw8IEVYVElfUlRTUl9UUjE5X1BvcykgICAgICAgLyohPCAweDAwMDgwMDAwICovDQojZGVmaW5lIEVYVElfUlRTUl9UUjE5ICAgICAgICAgICAgICAgICAgICAgIEVYVElfUlRTUl9UUjE5X01zayAgICAgICAgICAgICAgICAgLyohPCBSaXNpbmcgdHJpZ2dlciBldmVudCBjb25maWd1cmF0aW9uIGJpdCBvZiBsaW5lIDE5ICovDQojZGVmaW5lIEVYVElfUlRTUl9UUjIwX1BvcyAgICAgICAgICAgICAgICAgICgyMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEVYVElfUlRTUl9UUjIwX01zayAgICAgICAgICAgICAgICAgICgweDFVIDw8IEVYVElfUlRTUl9UUjIwX1BvcykgICAgICAgLyohPCAweDAwMTAwMDAwICovDQojZGVmaW5lIEVYVElfUlRTUl9UUjIwICAgICAgICAgICAgICAgICAgICAgIEVYVElfUlRTUl9UUjIwX01zayAgICAgICAgICAgICAgICAgLyohPCBSaXNpbmcgdHJpZ2dlciBldmVudCBjb25maWd1cmF0aW9uIGJpdCBvZiBsaW5lIDIwICovDQojZGVmaW5lIEVYVElfUlRTUl9UUjIxX1BvcyAgICAgICAgICAgICAgICAgICgyMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEVYVElfUlRTUl9UUjIxX01zayAgICAgICAgICAgICAgICAgICgweDFVIDw8IEVYVElfUlRTUl9UUjIxX1BvcykgICAgICAgLyohPCAweDAwMjAwMDAwICovDQojZGVmaW5lIEVYVElfUlRTUl9UUjIxICAgICAgICAgICAgICAgICAgICAgIEVYVElfUlRTUl9UUjIxX01zayAgICAgICAgICAgICAgICAgLyohPCBSaXNpbmcgdHJpZ2dlciBldmVudCBjb25maWd1cmF0aW9uIGJpdCBvZiBsaW5lIDIxICovDQojZGVmaW5lIEVYVElfUlRTUl9UUjIyX1BvcyAgICAgICAgICAgICAgICAgICgyMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEVYVElfUlRTUl9UUjIyX01zayAgICAgICAgICAgICAgICAgICgweDFVIDw8IEVYVElfUlRTUl9UUjIyX1BvcykgICAgICAgLyohPCAweDAwNDAwMDAwICovDQojZGVmaW5lIEVYVElfUlRTUl9UUjIyICAgICAgICAgICAgICAgICAgICAgIEVYVElfUlRTUl9UUjIyX01zayAgICAgICAgICAgICAgICAgLyohPCBSaXNpbmcgdHJpZ2dlciBldmVudCBjb25maWd1cmF0aW9uIGJpdCBvZiBsaW5lIDIyICovDQojZGVmaW5lIEVYVElfUlRTUl9UUjIzX1BvcyAgICAgICAgICAgICAgICAgICgyM1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEVYVElfUlRTUl9UUjIzX01zayAgICAgICAgICAgICAgICAgICgweDFVIDw8IEVYVElfUlRTUl9UUjIzX1BvcykgICAgICAgLyohPCAweDAwODAwMDAwICovDQojZGVmaW5lIEVYVElfUlRTUl9UUjIzICAgICAgICAgICAgICAgICAgICAgIEVYVElfUlRTUl9UUjIzX01zayAgICAgICAgICAgICAgICAgLyohPCBSaXNpbmcgdHJpZ2dlciBldmVudCBjb25maWd1cmF0aW9uIGJpdCBvZiBsaW5lIDIzICovDQoNCi8qIFJlZmVyZW5jZXMgRGVmaW5lcyAqLw0KI2RlZmluZSAgRVhUSV9SVFNSX1JUMCBFWFRJX1JUU1JfVFIwDQojZGVmaW5lICBFWFRJX1JUU1JfUlQxIEVYVElfUlRTUl9UUjENCiNkZWZpbmUgIEVYVElfUlRTUl9SVDIgRVhUSV9SVFNSX1RSMg0KI2RlZmluZSAgRVhUSV9SVFNSX1JUMyBFWFRJX1JUU1JfVFIzDQojZGVmaW5lICBFWFRJX1JUU1JfUlQ0IEVYVElfUlRTUl9UUjQNCiNkZWZpbmUgIEVYVElfUlRTUl9SVDUgRVhUSV9SVFNSX1RSNQ0KI2RlZmluZSAgRVhUSV9SVFNSX1JUNiBFWFRJX1JUU1JfVFI2DQojZGVmaW5lICBFWFRJX1JUU1JfUlQ3IEVYVElfUlRTUl9UUjcNCiNkZWZpbmUgIEVYVElfUlRTUl9SVDggRVhUSV9SVFNSX1RSOA0KI2RlZmluZSAgRVhUSV9SVFNSX1JUOSBFWFRJX1JUU1JfVFI5DQojZGVmaW5lICBFWFRJX1JUU1JfUlQxMCBFWFRJX1JUU1JfVFIxMA0KI2RlZmluZSAgRVhUSV9SVFNSX1JUMTEgRVhUSV9SVFNSX1RSMTENCiNkZWZpbmUgIEVYVElfUlRTUl9SVDEyIEVYVElfUlRTUl9UUjEyDQojZGVmaW5lICBFWFRJX1JUU1JfUlQxMyBFWFRJX1JUU1JfVFIxMw0KI2RlZmluZSAgRVhUSV9SVFNSX1JUMTQgRVhUSV9SVFNSX1RSMTQNCiNkZWZpbmUgIEVYVElfUlRTUl9SVDE1IEVYVElfUlRTUl9UUjE1DQojZGVmaW5lICBFWFRJX1JUU1JfUlQxNiBFWFRJX1JUU1JfVFIxNg0KI2RlZmluZSAgRVhUSV9SVFNSX1JUMTcgRVhUSV9SVFNSX1RSMTcNCiNkZWZpbmUgIEVYVElfUlRTUl9SVDE4IEVYVElfUlRTUl9UUjE4DQojZGVmaW5lICBFWFRJX1JUU1JfUlQxOSBFWFRJX1JUU1JfVFIxOQ0KI2RlZmluZSAgRVhUSV9SVFNSX1JUMjAgRVhUSV9SVFNSX1RSMjANCiNkZWZpbmUgIEVYVElfUlRTUl9SVDIxIEVYVElfUlRTUl9UUjIxDQojZGVmaW5lICBFWFRJX1JUU1JfUlQyMiBFWFRJX1JUU1JfVFIyMg0KI2RlZmluZSAgRVhUSV9SVFNSX1JUMjMgRVhUSV9SVFNSX1RSMjMNCg0KLyoqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIEVYVElfRlRTUiByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgRVhUSV9GVFNSX1RSMF9Qb3MgICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRVhUSV9GVFNSX1RSMF9Nc2sgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgRVhUSV9GVFNSX1RSMF9Qb3MpICAgICAgICAvKiE8IDB4MDAwMDAwMDEgKi8NCiNkZWZpbmUgRVhUSV9GVFNSX1RSMCAgICAgICAgICAgICAgICAgICAgICAgRVhUSV9GVFNSX1RSMF9Nc2sgICAgICAgICAgICAgICAgICAvKiE8IEZhbGxpbmcgdHJpZ2dlciBldmVudCBjb25maWd1cmF0aW9uIGJpdCBvZiBsaW5lIDAgKi8NCiNkZWZpbmUgRVhUSV9GVFNSX1RSMV9Qb3MgICAgICAgICAgICAgICAgICAgKDFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRVhUSV9GVFNSX1RSMV9Nc2sgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgRVhUSV9GVFNSX1RSMV9Qb3MpICAgICAgICAvKiE8IDB4MDAwMDAwMDIgKi8NCiNkZWZpbmUgRVhUSV9GVFNSX1RSMSAgICAgICAgICAgICAgICAgICAgICAgRVhUSV9GVFNSX1RSMV9Nc2sgICAgICAgICAgICAgICAgICAvKiE8IEZhbGxpbmcgdHJpZ2dlciBldmVudCBjb25maWd1cmF0aW9uIGJpdCBvZiBsaW5lIDEgKi8NCiNkZWZpbmUgRVhUSV9GVFNSX1RSMl9Qb3MgICAgICAgICAgICAgICAgICAgKDJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRVhUSV9GVFNSX1RSMl9Nc2sgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgRVhUSV9GVFNSX1RSMl9Qb3MpICAgICAgICAvKiE8IDB4MDAwMDAwMDQgKi8NCiNkZWZpbmUgRVhUSV9GVFNSX1RSMiAgICAgICAgICAgICAgICAgICAgICAgRVhUSV9GVFNSX1RSMl9Nc2sgICAgICAgICAgICAgICAgICAvKiE8IEZhbGxpbmcgdHJpZ2dlciBldmVudCBjb25maWd1cmF0aW9uIGJpdCBvZiBsaW5lIDIgKi8NCiNkZWZpbmUgRVhUSV9GVFNSX1RSM19Qb3MgICAgICAgICAgICAgICAgICAgKDNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRVhUSV9GVFNSX1RSM19Nc2sgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgRVhUSV9GVFNSX1RSM19Qb3MpICAgICAgICAvKiE8IDB4MDAwMDAwMDggKi8NCiNkZWZpbmUgRVhUSV9GVFNSX1RSMyAgICAgICAgICAgICAgICAgICAgICAgRVhUSV9GVFNSX1RSM19Nc2sgICAgICAgICAgICAgICAgICAvKiE8IEZhbGxpbmcgdHJpZ2dlciBldmVudCBjb25maWd1cmF0aW9uIGJpdCBvZiBsaW5lIDMgKi8NCiNkZWZpbmUgRVhUSV9GVFNSX1RSNF9Qb3MgICAgICAgICAgICAgICAgICAgKDRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRVhUSV9GVFNSX1RSNF9Nc2sgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgRVhUSV9GVFNSX1RSNF9Qb3MpICAgICAgICAvKiE8IDB4MDAwMDAwMTAgKi8NCiNkZWZpbmUgRVhUSV9GVFNSX1RSNCAgICAgICAgICAgICAgICAgICAgICAgRVhUSV9GVFNSX1RSNF9Nc2sgICAgICAgICAgICAgICAgICAvKiE8IEZhbGxpbmcgdHJpZ2dlciBldmVudCBjb25maWd1cmF0aW9uIGJpdCBvZiBsaW5lIDQgKi8NCiNkZWZpbmUgRVhUSV9GVFNSX1RSNV9Qb3MgICAgICAgICAgICAgICAgICAgKDVVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRVhUSV9GVFNSX1RSNV9Nc2sgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgRVhUSV9GVFNSX1RSNV9Qb3MpICAgICAgICAvKiE8IDB4MDAwMDAwMjAgKi8NCiNkZWZpbmUgRVhUSV9GVFNSX1RSNSAgICAgICAgICAgICAgICAgICAgICAgRVhUSV9GVFNSX1RSNV9Nc2sgICAgICAgICAgICAgICAgICAvKiE8IEZhbGxpbmcgdHJpZ2dlciBldmVudCBjb25maWd1cmF0aW9uIGJpdCBvZiBsaW5lIDUgKi8NCiNkZWZpbmUgRVhUSV9GVFNSX1RSNl9Qb3MgICAgICAgICAgICAgICAgICAgKDZVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRVhUSV9GVFNSX1RSNl9Nc2sgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgRVhUSV9GVFNSX1RSNl9Qb3MpICAgICAgICAvKiE8IDB4MDAwMDAwNDAgKi8NCiNkZWZpbmUgRVhUSV9GVFNSX1RSNiAgICAgICAgICAgICAgICAgICAgICAgRVhUSV9GVFNSX1RSNl9Nc2sgICAgICAgICAgICAgICAgICAvKiE8IEZhbGxpbmcgdHJpZ2dlciBldmVudCBjb25maWd1cmF0aW9uIGJpdCBvZiBsaW5lIDYgKi8NCiNkZWZpbmUgRVhUSV9GVFNSX1RSN19Qb3MgICAgICAgICAgICAgICAgICAgKDdVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRVhUSV9GVFNSX1RSN19Nc2sgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgRVhUSV9GVFNSX1RSN19Qb3MpICAgICAgICAvKiE8IDB4MDAwMDAwODAgKi8NCiNkZWZpbmUgRVhUSV9GVFNSX1RSNyAgICAgICAgICAgICAgICAgICAgICAgRVhUSV9GVFNSX1RSN19Nc2sgICAgICAgICAgICAgICAgICAvKiE8IEZhbGxpbmcgdHJpZ2dlciBldmVudCBjb25maWd1cmF0aW9uIGJpdCBvZiBsaW5lIDcgKi8NCiNkZWZpbmUgRVhUSV9GVFNSX1RSOF9Qb3MgICAgICAgICAgICAgICAgICAgKDhVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRVhUSV9GVFNSX1RSOF9Nc2sgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgRVhUSV9GVFNSX1RSOF9Qb3MpICAgICAgICAvKiE8IDB4MDAwMDAxMDAgKi8NCiNkZWZpbmUgRVhUSV9GVFNSX1RSOCAgICAgICAgICAgICAgICAgICAgICAgRVhUSV9GVFNSX1RSOF9Nc2sgICAgICAgICAgICAgICAgICAvKiE8IEZhbGxpbmcgdHJpZ2dlciBldmVudCBjb25maWd1cmF0aW9uIGJpdCBvZiBsaW5lIDggKi8NCiNkZWZpbmUgRVhUSV9GVFNSX1RSOV9Qb3MgICAgICAgICAgICAgICAgICAgKDlVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRVhUSV9GVFNSX1RSOV9Nc2sgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgRVhUSV9GVFNSX1RSOV9Qb3MpICAgICAgICAvKiE8IDB4MDAwMDAyMDAgKi8NCiNkZWZpbmUgRVhUSV9GVFNSX1RSOSAgICAgICAgICAgICAgICAgICAgICAgRVhUSV9GVFNSX1RSOV9Nc2sgICAgICAgICAgICAgICAgICAvKiE8IEZhbGxpbmcgdHJpZ2dlciBldmVudCBjb25maWd1cmF0aW9uIGJpdCBvZiBsaW5lIDkgKi8NCiNkZWZpbmUgRVhUSV9GVFNSX1RSMTBfUG9zICAgICAgICAgICAgICAgICAgKDEwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRVhUSV9GVFNSX1RSMTBfTXNrICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgRVhUSV9GVFNSX1RSMTBfUG9zKSAgICAgICAvKiE8IDB4MDAwMDA0MDAgKi8NCiNkZWZpbmUgRVhUSV9GVFNSX1RSMTAgICAgICAgICAgICAgICAgICAgICAgRVhUSV9GVFNSX1RSMTBfTXNrICAgICAgICAgICAgICAgICAvKiE8IEZhbGxpbmcgdHJpZ2dlciBldmVudCBjb25maWd1cmF0aW9uIGJpdCBvZiBsaW5lIDEwICovDQojZGVmaW5lIEVYVElfRlRTUl9UUjExX1BvcyAgICAgICAgICAgICAgICAgICgxMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEVYVElfRlRTUl9UUjExX01zayAgICAgICAgICAgICAgICAgICgweDFVIDw8IEVYVElfRlRTUl9UUjExX1BvcykgICAgICAgLyohPCAweDAwMDAwODAwICovDQojZGVmaW5lIEVYVElfRlRTUl9UUjExICAgICAgICAgICAgICAgICAgICAgIEVYVElfRlRTUl9UUjExX01zayAgICAgICAgICAgICAgICAgLyohPCBGYWxsaW5nIHRyaWdnZXIgZXZlbnQgY29uZmlndXJhdGlvbiBiaXQgb2YgbGluZSAxMSAqLw0KI2RlZmluZSBFWFRJX0ZUU1JfVFIxMl9Qb3MgICAgICAgICAgICAgICAgICAoMTJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBFWFRJX0ZUU1JfVFIxMl9Nc2sgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBFWFRJX0ZUU1JfVFIxMl9Qb3MpICAgICAgIC8qITwgMHgwMDAwMTAwMCAqLw0KI2RlZmluZSBFWFRJX0ZUU1JfVFIxMiAgICAgICAgICAgICAgICAgICAgICBFWFRJX0ZUU1JfVFIxMl9Nc2sgICAgICAgICAgICAgICAgIC8qITwgRmFsbGluZyB0cmlnZ2VyIGV2ZW50IGNvbmZpZ3VyYXRpb24gYml0IG9mIGxpbmUgMTIgKi8NCiNkZWZpbmUgRVhUSV9GVFNSX1RSMTNfUG9zICAgICAgICAgICAgICAgICAgKDEzVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRVhUSV9GVFNSX1RSMTNfTXNrICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgRVhUSV9GVFNSX1RSMTNfUG9zKSAgICAgICAvKiE8IDB4MDAwMDIwMDAgKi8NCiNkZWZpbmUgRVhUSV9GVFNSX1RSMTMgICAgICAgICAgICAgICAgICAgICAgRVhUSV9GVFNSX1RSMTNfTXNrICAgICAgICAgICAgICAgICAvKiE8IEZhbGxpbmcgdHJpZ2dlciBldmVudCBjb25maWd1cmF0aW9uIGJpdCBvZiBsaW5lIDEzICovDQojZGVmaW5lIEVYVElfRlRTUl9UUjE0X1BvcyAgICAgICAgICAgICAgICAgICgxNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEVYVElfRlRTUl9UUjE0X01zayAgICAgICAgICAgICAgICAgICgweDFVIDw8IEVYVElfRlRTUl9UUjE0X1BvcykgICAgICAgLyohPCAweDAwMDA0MDAwICovDQojZGVmaW5lIEVYVElfRlRTUl9UUjE0ICAgICAgICAgICAgICAgICAgICAgIEVYVElfRlRTUl9UUjE0X01zayAgICAgICAgICAgICAgICAgLyohPCBGYWxsaW5nIHRyaWdnZXIgZXZlbnQgY29uZmlndXJhdGlvbiBiaXQgb2YgbGluZSAxNCAqLw0KI2RlZmluZSBFWFRJX0ZUU1JfVFIxNV9Qb3MgICAgICAgICAgICAgICAgICAoMTVVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBFWFRJX0ZUU1JfVFIxNV9Nc2sgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBFWFRJX0ZUU1JfVFIxNV9Qb3MpICAgICAgIC8qITwgMHgwMDAwODAwMCAqLw0KI2RlZmluZSBFWFRJX0ZUU1JfVFIxNSAgICAgICAgICAgICAgICAgICAgICBFWFRJX0ZUU1JfVFIxNV9Nc2sgICAgICAgICAgICAgICAgIC8qITwgRmFsbGluZyB0cmlnZ2VyIGV2ZW50IGNvbmZpZ3VyYXRpb24gYml0IG9mIGxpbmUgMTUgKi8NCiNkZWZpbmUgRVhUSV9GVFNSX1RSMTZfUG9zICAgICAgICAgICAgICAgICAgKDE2VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRVhUSV9GVFNSX1RSMTZfTXNrICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgRVhUSV9GVFNSX1RSMTZfUG9zKSAgICAgICAvKiE8IDB4MDAwMTAwMDAgKi8NCiNkZWZpbmUgRVhUSV9GVFNSX1RSMTYgICAgICAgICAgICAgICAgICAgICAgRVhUSV9GVFNSX1RSMTZfTXNrICAgICAgICAgICAgICAgICAvKiE8IEZhbGxpbmcgdHJpZ2dlciBldmVudCBjb25maWd1cmF0aW9uIGJpdCBvZiBsaW5lIDE2ICovDQojZGVmaW5lIEVYVElfRlRTUl9UUjE3X1BvcyAgICAgICAgICAgICAgICAgICgxN1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEVYVElfRlRTUl9UUjE3X01zayAgICAgICAgICAgICAgICAgICgweDFVIDw8IEVYVElfRlRTUl9UUjE3X1BvcykgICAgICAgLyohPCAweDAwMDIwMDAwICovDQojZGVmaW5lIEVYVElfRlRTUl9UUjE3ICAgICAgICAgICAgICAgICAgICAgIEVYVElfRlRTUl9UUjE3X01zayAgICAgICAgICAgICAgICAgLyohPCBGYWxsaW5nIHRyaWdnZXIgZXZlbnQgY29uZmlndXJhdGlvbiBiaXQgb2YgbGluZSAxNyAqLw0KI2RlZmluZSBFWFRJX0ZUU1JfVFIxOF9Qb3MgICAgICAgICAgICAgICAgICAoMThVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBFWFRJX0ZUU1JfVFIxOF9Nc2sgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBFWFRJX0ZUU1JfVFIxOF9Qb3MpICAgICAgIC8qITwgMHgwMDA0MDAwMCAqLw0KI2RlZmluZSBFWFRJX0ZUU1JfVFIxOCAgICAgICAgICAgICAgICAgICAgICBFWFRJX0ZUU1JfVFIxOF9Nc2sgICAgICAgICAgICAgICAgIC8qITwgRmFsbGluZyB0cmlnZ2VyIGV2ZW50IGNvbmZpZ3VyYXRpb24gYml0IG9mIGxpbmUgMTggKi8NCiNkZWZpbmUgRVhUSV9GVFNSX1RSMTlfUG9zICAgICAgICAgICAgICAgICAgKDE5VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRVhUSV9GVFNSX1RSMTlfTXNrICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgRVhUSV9GVFNSX1RSMTlfUG9zKSAgICAgICAvKiE8IDB4MDAwODAwMDAgKi8NCiNkZWZpbmUgRVhUSV9GVFNSX1RSMTkgICAgICAgICAgICAgICAgICAgICAgRVhUSV9GVFNSX1RSMTlfTXNrICAgICAgICAgICAgICAgICAvKiE8IEZhbGxpbmcgdHJpZ2dlciBldmVudCBjb25maWd1cmF0aW9uIGJpdCBvZiBsaW5lIDE5ICovDQojZGVmaW5lIEVYVElfRlRTUl9UUjIwX1BvcyAgICAgICAgICAgICAgICAgICgyMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEVYVElfRlRTUl9UUjIwX01zayAgICAgICAgICAgICAgICAgICgweDFVIDw8IEVYVElfRlRTUl9UUjIwX1BvcykgICAgICAgLyohPCAweDAwMTAwMDAwICovDQojZGVmaW5lIEVYVElfRlRTUl9UUjIwICAgICAgICAgICAgICAgICAgICAgIEVYVElfRlRTUl9UUjIwX01zayAgICAgICAgICAgICAgICAgLyohPCBGYWxsaW5nIHRyaWdnZXIgZXZlbnQgY29uZmlndXJhdGlvbiBiaXQgb2YgbGluZSAyMCAqLw0KI2RlZmluZSBFWFRJX0ZUU1JfVFIyMV9Qb3MgICAgICAgICAgICAgICAgICAoMjFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBFWFRJX0ZUU1JfVFIyMV9Nc2sgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBFWFRJX0ZUU1JfVFIyMV9Qb3MpICAgICAgIC8qITwgMHgwMDIwMDAwMCAqLw0KI2RlZmluZSBFWFRJX0ZUU1JfVFIyMSAgICAgICAgICAgICAgICAgICAgICBFWFRJX0ZUU1JfVFIyMV9Nc2sgICAgICAgICAgICAgICAgIC8qITwgRmFsbGluZyB0cmlnZ2VyIGV2ZW50IGNvbmZpZ3VyYXRpb24gYml0IG9mIGxpbmUgMjEgKi8NCiNkZWZpbmUgRVhUSV9GVFNSX1RSMjJfUG9zICAgICAgICAgICAgICAgICAgKDIyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRVhUSV9GVFNSX1RSMjJfTXNrICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgRVhUSV9GVFNSX1RSMjJfUG9zKSAgICAgICAvKiE8IDB4MDA0MDAwMDAgKi8NCiNkZWZpbmUgRVhUSV9GVFNSX1RSMjIgICAgICAgICAgICAgICAgICAgICAgRVhUSV9GVFNSX1RSMjJfTXNrICAgICAgICAgICAgICAgICAvKiE8IEZhbGxpbmcgdHJpZ2dlciBldmVudCBjb25maWd1cmF0aW9uIGJpdCBvZiBsaW5lIDIyICovDQojZGVmaW5lIEVYVElfRlRTUl9UUjIzX1BvcyAgICAgICAgICAgICAgICAgICgyM1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEVYVElfRlRTUl9UUjIzX01zayAgICAgICAgICAgICAgICAgICgweDFVIDw8IEVYVElfRlRTUl9UUjIzX1BvcykgICAgICAgLyohPCAweDAwODAwMDAwICovDQojZGVmaW5lIEVYVElfRlRTUl9UUjIzICAgICAgICAgICAgICAgICAgICAgIEVYVElfRlRTUl9UUjIzX01zayAgICAgICAgICAgICAgICAgLyohPCBGYWxsaW5nIHRyaWdnZXIgZXZlbnQgY29uZmlndXJhdGlvbiBiaXQgb2YgbGluZSAyMyAqLw0KDQovKiBSZWZlcmVuY2VzIERlZmluZXMgKi8NCiNkZWZpbmUgIEVYVElfRlRTUl9GVDAgRVhUSV9GVFNSX1RSMA0KI2RlZmluZSAgRVhUSV9GVFNSX0ZUMSBFWFRJX0ZUU1JfVFIxDQojZGVmaW5lICBFWFRJX0ZUU1JfRlQyIEVYVElfRlRTUl9UUjINCiNkZWZpbmUgIEVYVElfRlRTUl9GVDMgRVhUSV9GVFNSX1RSMw0KI2RlZmluZSAgRVhUSV9GVFNSX0ZUNCBFWFRJX0ZUU1JfVFI0DQojZGVmaW5lICBFWFRJX0ZUU1JfRlQ1IEVYVElfRlRTUl9UUjUNCiNkZWZpbmUgIEVYVElfRlRTUl9GVDYgRVhUSV9GVFNSX1RSNg0KI2RlZmluZSAgRVhUSV9GVFNSX0ZUNyBFWFRJX0ZUU1JfVFI3DQojZGVmaW5lICBFWFRJX0ZUU1JfRlQ4IEVYVElfRlRTUl9UUjgNCiNkZWZpbmUgIEVYVElfRlRTUl9GVDkgRVhUSV9GVFNSX1RSOQ0KI2RlZmluZSAgRVhUSV9GVFNSX0ZUMTAgRVhUSV9GVFNSX1RSMTANCiNkZWZpbmUgIEVYVElfRlRTUl9GVDExIEVYVElfRlRTUl9UUjExDQojZGVmaW5lICBFWFRJX0ZUU1JfRlQxMiBFWFRJX0ZUU1JfVFIxMg0KI2RlZmluZSAgRVhUSV9GVFNSX0ZUMTMgRVhUSV9GVFNSX1RSMTMNCiNkZWZpbmUgIEVYVElfRlRTUl9GVDE0IEVYVElfRlRTUl9UUjE0DQojZGVmaW5lICBFWFRJX0ZUU1JfRlQxNSBFWFRJX0ZUU1JfVFIxNQ0KI2RlZmluZSAgRVhUSV9GVFNSX0ZUMTYgRVhUSV9GVFNSX1RSMTYNCiNkZWZpbmUgIEVYVElfRlRTUl9GVDE3IEVYVElfRlRTUl9UUjE3DQojZGVmaW5lICBFWFRJX0ZUU1JfRlQxOCBFWFRJX0ZUU1JfVFIxOA0KI2RlZmluZSAgRVhUSV9GVFNSX0ZUMTkgRVhUSV9GVFNSX1RSMTkNCiNkZWZpbmUgIEVYVElfRlRTUl9GVDIwIEVYVElfRlRTUl9UUjIwDQojZGVmaW5lICBFWFRJX0ZUU1JfRlQyMSBFWFRJX0ZUU1JfVFIyMQ0KI2RlZmluZSAgRVhUSV9GVFNSX0ZUMjIgRVhUSV9GVFNSX1RSMjINCiNkZWZpbmUgIEVYVElfRlRTUl9GVDIzIEVYVElfRlRTUl9UUjIzDQoNCi8qKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBFWFRJX1NXSUVSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIEVYVElfU1dJRVJfU1dJRVIwX1BvcyAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEVYVElfU1dJRVJfU1dJRVIwX01zayAgICAgICAgICAgICAgICgweDFVIDw8IEVYVElfU1dJRVJfU1dJRVIwX1BvcykgICAgLyohPCAweDAwMDAwMDAxICovDQojZGVmaW5lIEVYVElfU1dJRVJfU1dJRVIwICAgICAgICAgICAgICAgICAgIEVYVElfU1dJRVJfU1dJRVIwX01zayAgICAgICAgICAgICAgLyohPCBTb2Z0d2FyZSBJbnRlcnJ1cHQgb24gbGluZSAwICovDQojZGVmaW5lIEVYVElfU1dJRVJfU1dJRVIxX1BvcyAgICAgICAgICAgICAgICgxVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEVYVElfU1dJRVJfU1dJRVIxX01zayAgICAgICAgICAgICAgICgweDFVIDw8IEVYVElfU1dJRVJfU1dJRVIxX1BvcykgICAgLyohPCAweDAwMDAwMDAyICovDQojZGVmaW5lIEVYVElfU1dJRVJfU1dJRVIxICAgICAgICAgICAgICAgICAgIEVYVElfU1dJRVJfU1dJRVIxX01zayAgICAgICAgICAgICAgLyohPCBTb2Z0d2FyZSBJbnRlcnJ1cHQgb24gbGluZSAxICovDQojZGVmaW5lIEVYVElfU1dJRVJfU1dJRVIyX1BvcyAgICAgICAgICAgICAgICgyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEVYVElfU1dJRVJfU1dJRVIyX01zayAgICAgICAgICAgICAgICgweDFVIDw8IEVYVElfU1dJRVJfU1dJRVIyX1BvcykgICAgLyohPCAweDAwMDAwMDA0ICovDQojZGVmaW5lIEVYVElfU1dJRVJfU1dJRVIyICAgICAgICAgICAgICAgICAgIEVYVElfU1dJRVJfU1dJRVIyX01zayAgICAgICAgICAgICAgLyohPCBTb2Z0d2FyZSBJbnRlcnJ1cHQgb24gbGluZSAyICovDQojZGVmaW5lIEVYVElfU1dJRVJfU1dJRVIzX1BvcyAgICAgICAgICAgICAgICgzVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEVYVElfU1dJRVJfU1dJRVIzX01zayAgICAgICAgICAgICAgICgweDFVIDw8IEVYVElfU1dJRVJfU1dJRVIzX1BvcykgICAgLyohPCAweDAwMDAwMDA4ICovDQojZGVmaW5lIEVYVElfU1dJRVJfU1dJRVIzICAgICAgICAgICAgICAgICAgIEVYVElfU1dJRVJfU1dJRVIzX01zayAgICAgICAgICAgICAgLyohPCBTb2Z0d2FyZSBJbnRlcnJ1cHQgb24gbGluZSAzICovDQojZGVmaW5lIEVYVElfU1dJRVJfU1dJRVI0X1BvcyAgICAgICAgICAgICAgICg0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEVYVElfU1dJRVJfU1dJRVI0X01zayAgICAgICAgICAgICAgICgweDFVIDw8IEVYVElfU1dJRVJfU1dJRVI0X1BvcykgICAgLyohPCAweDAwMDAwMDEwICovDQojZGVmaW5lIEVYVElfU1dJRVJfU1dJRVI0ICAgICAgICAgICAgICAgICAgIEVYVElfU1dJRVJfU1dJRVI0X01zayAgICAgICAgICAgICAgLyohPCBTb2Z0d2FyZSBJbnRlcnJ1cHQgb24gbGluZSA0ICovDQojZGVmaW5lIEVYVElfU1dJRVJfU1dJRVI1X1BvcyAgICAgICAgICAgICAgICg1VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEVYVElfU1dJRVJfU1dJRVI1X01zayAgICAgICAgICAgICAgICgweDFVIDw8IEVYVElfU1dJRVJfU1dJRVI1X1BvcykgICAgLyohPCAweDAwMDAwMDIwICovDQojZGVmaW5lIEVYVElfU1dJRVJfU1dJRVI1ICAgICAgICAgICAgICAgICAgIEVYVElfU1dJRVJfU1dJRVI1X01zayAgICAgICAgICAgICAgLyohPCBTb2Z0d2FyZSBJbnRlcnJ1cHQgb24gbGluZSA1ICovDQojZGVmaW5lIEVYVElfU1dJRVJfU1dJRVI2X1BvcyAgICAgICAgICAgICAgICg2VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEVYVElfU1dJRVJfU1dJRVI2X01zayAgICAgICAgICAgICAgICgweDFVIDw8IEVYVElfU1dJRVJfU1dJRVI2X1BvcykgICAgLyohPCAweDAwMDAwMDQwICovDQojZGVmaW5lIEVYVElfU1dJRVJfU1dJRVI2ICAgICAgICAgICAgICAgICAgIEVYVElfU1dJRVJfU1dJRVI2X01zayAgICAgICAgICAgICAgLyohPCBTb2Z0d2FyZSBJbnRlcnJ1cHQgb24gbGluZSA2ICovDQojZGVmaW5lIEVYVElfU1dJRVJfU1dJRVI3X1BvcyAgICAgICAgICAgICAgICg3VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEVYVElfU1dJRVJfU1dJRVI3X01zayAgICAgICAgICAgICAgICgweDFVIDw8IEVYVElfU1dJRVJfU1dJRVI3X1BvcykgICAgLyohPCAweDAwMDAwMDgwICovDQojZGVmaW5lIEVYVElfU1dJRVJfU1dJRVI3ICAgICAgICAgICAgICAgICAgIEVYVElfU1dJRVJfU1dJRVI3X01zayAgICAgICAgICAgICAgLyohPCBTb2Z0d2FyZSBJbnRlcnJ1cHQgb24gbGluZSA3ICovDQojZGVmaW5lIEVYVElfU1dJRVJfU1dJRVI4X1BvcyAgICAgICAgICAgICAgICg4VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEVYVElfU1dJRVJfU1dJRVI4X01zayAgICAgICAgICAgICAgICgweDFVIDw8IEVYVElfU1dJRVJfU1dJRVI4X1BvcykgICAgLyohPCAweDAwMDAwMTAwICovDQojZGVmaW5lIEVYVElfU1dJRVJfU1dJRVI4ICAgICAgICAgICAgICAgICAgIEVYVElfU1dJRVJfU1dJRVI4X01zayAgICAgICAgICAgICAgLyohPCBTb2Z0d2FyZSBJbnRlcnJ1cHQgb24gbGluZSA4ICovDQojZGVmaW5lIEVYVElfU1dJRVJfU1dJRVI5X1BvcyAgICAgICAgICAgICAgICg5VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEVYVElfU1dJRVJfU1dJRVI5X01zayAgICAgICAgICAgICAgICgweDFVIDw8IEVYVElfU1dJRVJfU1dJRVI5X1BvcykgICAgLyohPCAweDAwMDAwMjAwICovDQojZGVmaW5lIEVYVElfU1dJRVJfU1dJRVI5ICAgICAgICAgICAgICAgICAgIEVYVElfU1dJRVJfU1dJRVI5X01zayAgICAgICAgICAgICAgLyohPCBTb2Z0d2FyZSBJbnRlcnJ1cHQgb24gbGluZSA5ICovDQojZGVmaW5lIEVYVElfU1dJRVJfU1dJRVIxMF9Qb3MgICAgICAgICAgICAgICgxMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEVYVElfU1dJRVJfU1dJRVIxMF9Nc2sgICAgICAgICAgICAgICgweDFVIDw8IEVYVElfU1dJRVJfU1dJRVIxMF9Qb3MpICAgLyohPCAweDAwMDAwNDAwICovDQojZGVmaW5lIEVYVElfU1dJRVJfU1dJRVIxMCAgICAgICAgICAgICAgICAgIEVYVElfU1dJRVJfU1dJRVIxMF9Nc2sgICAgICAgICAgICAgLyohPCBTb2Z0d2FyZSBJbnRlcnJ1cHQgb24gbGluZSAxMCAqLw0KI2RlZmluZSBFWFRJX1NXSUVSX1NXSUVSMTFfUG9zICAgICAgICAgICAgICAoMTFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBFWFRJX1NXSUVSX1NXSUVSMTFfTXNrICAgICAgICAgICAgICAoMHgxVSA8PCBFWFRJX1NXSUVSX1NXSUVSMTFfUG9zKSAgIC8qITwgMHgwMDAwMDgwMCAqLw0KI2RlZmluZSBFWFRJX1NXSUVSX1NXSUVSMTEgICAgICAgICAgICAgICAgICBFWFRJX1NXSUVSX1NXSUVSMTFfTXNrICAgICAgICAgICAgIC8qITwgU29mdHdhcmUgSW50ZXJydXB0IG9uIGxpbmUgMTEgKi8NCiNkZWZpbmUgRVhUSV9TV0lFUl9TV0lFUjEyX1BvcyAgICAgICAgICAgICAgKDEyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRVhUSV9TV0lFUl9TV0lFUjEyX01zayAgICAgICAgICAgICAgKDB4MVUgPDwgRVhUSV9TV0lFUl9TV0lFUjEyX1BvcykgICAvKiE8IDB4MDAwMDEwMDAgKi8NCiNkZWZpbmUgRVhUSV9TV0lFUl9TV0lFUjEyICAgICAgICAgICAgICAgICAgRVhUSV9TV0lFUl9TV0lFUjEyX01zayAgICAgICAgICAgICAvKiE8IFNvZnR3YXJlIEludGVycnVwdCBvbiBsaW5lIDEyICovDQojZGVmaW5lIEVYVElfU1dJRVJfU1dJRVIxM19Qb3MgICAgICAgICAgICAgICgxM1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEVYVElfU1dJRVJfU1dJRVIxM19Nc2sgICAgICAgICAgICAgICgweDFVIDw8IEVYVElfU1dJRVJfU1dJRVIxM19Qb3MpICAgLyohPCAweDAwMDAyMDAwICovDQojZGVmaW5lIEVYVElfU1dJRVJfU1dJRVIxMyAgICAgICAgICAgICAgICAgIEVYVElfU1dJRVJfU1dJRVIxM19Nc2sgICAgICAgICAgICAgLyohPCBTb2Z0d2FyZSBJbnRlcnJ1cHQgb24gbGluZSAxMyAqLw0KI2RlZmluZSBFWFRJX1NXSUVSX1NXSUVSMTRfUG9zICAgICAgICAgICAgICAoMTRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBFWFRJX1NXSUVSX1NXSUVSMTRfTXNrICAgICAgICAgICAgICAoMHgxVSA8PCBFWFRJX1NXSUVSX1NXSUVSMTRfUG9zKSAgIC8qITwgMHgwMDAwNDAwMCAqLw0KI2RlZmluZSBFWFRJX1NXSUVSX1NXSUVSMTQgICAgICAgICAgICAgICAgICBFWFRJX1NXSUVSX1NXSUVSMTRfTXNrICAgICAgICAgICAgIC8qITwgU29mdHdhcmUgSW50ZXJydXB0IG9uIGxpbmUgMTQgKi8NCiNkZWZpbmUgRVhUSV9TV0lFUl9TV0lFUjE1X1BvcyAgICAgICAgICAgICAgKDE1VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRVhUSV9TV0lFUl9TV0lFUjE1X01zayAgICAgICAgICAgICAgKDB4MVUgPDwgRVhUSV9TV0lFUl9TV0lFUjE1X1BvcykgICAvKiE8IDB4MDAwMDgwMDAgKi8NCiNkZWZpbmUgRVhUSV9TV0lFUl9TV0lFUjE1ICAgICAgICAgICAgICAgICAgRVhUSV9TV0lFUl9TV0lFUjE1X01zayAgICAgICAgICAgICAvKiE8IFNvZnR3YXJlIEludGVycnVwdCBvbiBsaW5lIDE1ICovDQojZGVmaW5lIEVYVElfU1dJRVJfU1dJRVIxNl9Qb3MgICAgICAgICAgICAgICgxNlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEVYVElfU1dJRVJfU1dJRVIxNl9Nc2sgICAgICAgICAgICAgICgweDFVIDw8IEVYVElfU1dJRVJfU1dJRVIxNl9Qb3MpICAgLyohPCAweDAwMDEwMDAwICovDQojZGVmaW5lIEVYVElfU1dJRVJfU1dJRVIxNiAgICAgICAgICAgICAgICAgIEVYVElfU1dJRVJfU1dJRVIxNl9Nc2sgICAgICAgICAgICAgLyohPCBTb2Z0d2FyZSBJbnRlcnJ1cHQgb24gbGluZSAxNiAqLw0KI2RlZmluZSBFWFRJX1NXSUVSX1NXSUVSMTdfUG9zICAgICAgICAgICAgICAoMTdVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBFWFRJX1NXSUVSX1NXSUVSMTdfTXNrICAgICAgICAgICAgICAoMHgxVSA8PCBFWFRJX1NXSUVSX1NXSUVSMTdfUG9zKSAgIC8qITwgMHgwMDAyMDAwMCAqLw0KI2RlZmluZSBFWFRJX1NXSUVSX1NXSUVSMTcgICAgICAgICAgICAgICAgICBFWFRJX1NXSUVSX1NXSUVSMTdfTXNrICAgICAgICAgICAgIC8qITwgU29mdHdhcmUgSW50ZXJydXB0IG9uIGxpbmUgMTcgKi8NCiNkZWZpbmUgRVhUSV9TV0lFUl9TV0lFUjE4X1BvcyAgICAgICAgICAgICAgKDE4VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRVhUSV9TV0lFUl9TV0lFUjE4X01zayAgICAgICAgICAgICAgKDB4MVUgPDwgRVhUSV9TV0lFUl9TV0lFUjE4X1BvcykgICAvKiE8IDB4MDAwNDAwMDAgKi8NCiNkZWZpbmUgRVhUSV9TV0lFUl9TV0lFUjE4ICAgICAgICAgICAgICAgICAgRVhUSV9TV0lFUl9TV0lFUjE4X01zayAgICAgICAgICAgICAvKiE8IFNvZnR3YXJlIEludGVycnVwdCBvbiBsaW5lIDE4ICovDQojZGVmaW5lIEVYVElfU1dJRVJfU1dJRVIxOV9Qb3MgICAgICAgICAgICAgICgxOVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEVYVElfU1dJRVJfU1dJRVIxOV9Nc2sgICAgICAgICAgICAgICgweDFVIDw8IEVYVElfU1dJRVJfU1dJRVIxOV9Qb3MpICAgLyohPCAweDAwMDgwMDAwICovDQojZGVmaW5lIEVYVElfU1dJRVJfU1dJRVIxOSAgICAgICAgICAgICAgICAgIEVYVElfU1dJRVJfU1dJRVIxOV9Nc2sgICAgICAgICAgICAgLyohPCBTb2Z0d2FyZSBJbnRlcnJ1cHQgb24gbGluZSAxOSAqLw0KI2RlZmluZSBFWFRJX1NXSUVSX1NXSUVSMjBfUG9zICAgICAgICAgICAgICAoMjBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBFWFRJX1NXSUVSX1NXSUVSMjBfTXNrICAgICAgICAgICAgICAoMHgxVSA8PCBFWFRJX1NXSUVSX1NXSUVSMjBfUG9zKSAgIC8qITwgMHgwMDEwMDAwMCAqLw0KI2RlZmluZSBFWFRJX1NXSUVSX1NXSUVSMjAgICAgICAgICAgICAgICAgICBFWFRJX1NXSUVSX1NXSUVSMjBfTXNrICAgICAgICAgICAgIC8qITwgU29mdHdhcmUgSW50ZXJydXB0IG9uIGxpbmUgMjAgKi8NCiNkZWZpbmUgRVhUSV9TV0lFUl9TV0lFUjIxX1BvcyAgICAgICAgICAgICAgKDIxVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRVhUSV9TV0lFUl9TV0lFUjIxX01zayAgICAgICAgICAgICAgKDB4MVUgPDwgRVhUSV9TV0lFUl9TV0lFUjIxX1BvcykgICAvKiE8IDB4MDAyMDAwMDAgKi8NCiNkZWZpbmUgRVhUSV9TV0lFUl9TV0lFUjIxICAgICAgICAgICAgICAgICAgRVhUSV9TV0lFUl9TV0lFUjIxX01zayAgICAgICAgICAgICAvKiE8IFNvZnR3YXJlIEludGVycnVwdCBvbiBsaW5lIDIxICovDQojZGVmaW5lIEVYVElfU1dJRVJfU1dJRVIyMl9Qb3MgICAgICAgICAgICAgICgyMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEVYVElfU1dJRVJfU1dJRVIyMl9Nc2sgICAgICAgICAgICAgICgweDFVIDw8IEVYVElfU1dJRVJfU1dJRVIyMl9Qb3MpICAgLyohPCAweDAwNDAwMDAwICovDQojZGVmaW5lIEVYVElfU1dJRVJfU1dJRVIyMiAgICAgICAgICAgICAgICAgIEVYVElfU1dJRVJfU1dJRVIyMl9Nc2sgICAgICAgICAgICAgLyohPCBTb2Z0d2FyZSBJbnRlcnJ1cHQgb24gbGluZSAyMiAqLw0KI2RlZmluZSBFWFRJX1NXSUVSX1NXSUVSMjNfUG9zICAgICAgICAgICAgICAoMjNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBFWFRJX1NXSUVSX1NXSUVSMjNfTXNrICAgICAgICAgICAgICAoMHgxVSA8PCBFWFRJX1NXSUVSX1NXSUVSMjNfUG9zKSAgIC8qITwgMHgwMDgwMDAwMCAqLw0KI2RlZmluZSBFWFRJX1NXSUVSX1NXSUVSMjMgICAgICAgICAgICAgICAgICBFWFRJX1NXSUVSX1NXSUVSMjNfTXNrICAgICAgICAgICAgIC8qITwgU29mdHdhcmUgSW50ZXJydXB0IG9uIGxpbmUgMjMgKi8NCg0KLyogUmVmZXJlbmNlcyBEZWZpbmVzICovDQojZGVmaW5lICBFWFRJX1NXSUVSX1NXSTAgRVhUSV9TV0lFUl9TV0lFUjANCiNkZWZpbmUgIEVYVElfU1dJRVJfU1dJMSBFWFRJX1NXSUVSX1NXSUVSMQ0KI2RlZmluZSAgRVhUSV9TV0lFUl9TV0kyIEVYVElfU1dJRVJfU1dJRVIyDQojZGVmaW5lICBFWFRJX1NXSUVSX1NXSTMgRVhUSV9TV0lFUl9TV0lFUjMNCiNkZWZpbmUgIEVYVElfU1dJRVJfU1dJNCBFWFRJX1NXSUVSX1NXSUVSNA0KI2RlZmluZSAgRVhUSV9TV0lFUl9TV0k1IEVYVElfU1dJRVJfU1dJRVI1DQojZGVmaW5lICBFWFRJX1NXSUVSX1NXSTYgRVhUSV9TV0lFUl9TV0lFUjYNCiNkZWZpbmUgIEVYVElfU1dJRVJfU1dJNyBFWFRJX1NXSUVSX1NXSUVSNw0KI2RlZmluZSAgRVhUSV9TV0lFUl9TV0k4IEVYVElfU1dJRVJfU1dJRVI4DQojZGVmaW5lICBFWFRJX1NXSUVSX1NXSTkgRVhUSV9TV0lFUl9TV0lFUjkNCiNkZWZpbmUgIEVYVElfU1dJRVJfU1dJMTAgRVhUSV9TV0lFUl9TV0lFUjEwDQojZGVmaW5lICBFWFRJX1NXSUVSX1NXSTExIEVYVElfU1dJRVJfU1dJRVIxMQ0KI2RlZmluZSAgRVhUSV9TV0lFUl9TV0kxMiBFWFRJX1NXSUVSX1NXSUVSMTINCiNkZWZpbmUgIEVYVElfU1dJRVJfU1dJMTMgRVhUSV9TV0lFUl9TV0lFUjEzDQojZGVmaW5lICBFWFRJX1NXSUVSX1NXSTE0IEVYVElfU1dJRVJfU1dJRVIxNA0KI2RlZmluZSAgRVhUSV9TV0lFUl9TV0kxNSBFWFRJX1NXSUVSX1NXSUVSMTUNCiNkZWZpbmUgIEVYVElfU1dJRVJfU1dJMTYgRVhUSV9TV0lFUl9TV0lFUjE2DQojZGVmaW5lICBFWFRJX1NXSUVSX1NXSTE3IEVYVElfU1dJRVJfU1dJRVIxNw0KI2RlZmluZSAgRVhUSV9TV0lFUl9TV0kxOCBFWFRJX1NXSUVSX1NXSUVSMTgNCiNkZWZpbmUgIEVYVElfU1dJRVJfU1dJMTkgRVhUSV9TV0lFUl9TV0lFUjE5DQojZGVmaW5lICBFWFRJX1NXSUVSX1NXSTIwIEVYVElfU1dJRVJfU1dJRVIyMA0KI2RlZmluZSAgRVhUSV9TV0lFUl9TV0kyMSBFWFRJX1NXSUVSX1NXSUVSMjENCiNkZWZpbmUgIEVYVElfU1dJRVJfU1dJMjIgRVhUSV9TV0lFUl9TV0lFUjIyDQojZGVmaW5lICBFWFRJX1NXSUVSX1NXSTIzIEVYVElfU1dJRVJfU1dJRVIyMw0KDQovKioqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIEVYVElfUFIgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBFWFRJX1BSX1BSMF9Qb3MgICAgICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBFWFRJX1BSX1BSMF9Nc2sgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBFWFRJX1BSX1BSMF9Qb3MpICAgICAgICAgIC8qITwgMHgwMDAwMDAwMSAqLw0KI2RlZmluZSBFWFRJX1BSX1BSMCAgICAgICAgICAgICAgICAgICAgICAgICBFWFRJX1BSX1BSMF9Nc2sgICAgICAgICAgICAgICAgICAgIC8qITwgUGVuZGluZyBiaXQgZm9yIGxpbmUgMCAqLw0KI2RlZmluZSBFWFRJX1BSX1BSMV9Qb3MgICAgICAgICAgICAgICAgICAgICAoMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBFWFRJX1BSX1BSMV9Nc2sgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBFWFRJX1BSX1BSMV9Qb3MpICAgICAgICAgIC8qITwgMHgwMDAwMDAwMiAqLw0KI2RlZmluZSBFWFRJX1BSX1BSMSAgICAgICAgICAgICAgICAgICAgICAgICBFWFRJX1BSX1BSMV9Nc2sgICAgICAgICAgICAgICAgICAgIC8qITwgUGVuZGluZyBiaXQgZm9yIGxpbmUgMSAqLw0KI2RlZmluZSBFWFRJX1BSX1BSMl9Qb3MgICAgICAgICAgICAgICAgICAgICAoMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBFWFRJX1BSX1BSMl9Nc2sgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBFWFRJX1BSX1BSMl9Qb3MpICAgICAgICAgIC8qITwgMHgwMDAwMDAwNCAqLw0KI2RlZmluZSBFWFRJX1BSX1BSMiAgICAgICAgICAgICAgICAgICAgICAgICBFWFRJX1BSX1BSMl9Nc2sgICAgICAgICAgICAgICAgICAgIC8qITwgUGVuZGluZyBiaXQgZm9yIGxpbmUgMiAqLw0KI2RlZmluZSBFWFRJX1BSX1BSM19Qb3MgICAgICAgICAgICAgICAgICAgICAoM1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBFWFRJX1BSX1BSM19Nc2sgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBFWFRJX1BSX1BSM19Qb3MpICAgICAgICAgIC8qITwgMHgwMDAwMDAwOCAqLw0KI2RlZmluZSBFWFRJX1BSX1BSMyAgICAgICAgICAgICAgICAgICAgICAgICBFWFRJX1BSX1BSM19Nc2sgICAgICAgICAgICAgICAgICAgIC8qITwgUGVuZGluZyBiaXQgZm9yIGxpbmUgMyAqLw0KI2RlZmluZSBFWFRJX1BSX1BSNF9Qb3MgICAgICAgICAgICAgICAgICAgICAoNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBFWFRJX1BSX1BSNF9Nc2sgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBFWFRJX1BSX1BSNF9Qb3MpICAgICAgICAgIC8qITwgMHgwMDAwMDAxMCAqLw0KI2RlZmluZSBFWFRJX1BSX1BSNCAgICAgICAgICAgICAgICAgICAgICAgICBFWFRJX1BSX1BSNF9Nc2sgICAgICAgICAgICAgICAgICAgIC8qITwgUGVuZGluZyBiaXQgZm9yIGxpbmUgNCAqLw0KI2RlZmluZSBFWFRJX1BSX1BSNV9Qb3MgICAgICAgICAgICAgICAgICAgICAoNVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBFWFRJX1BSX1BSNV9Nc2sgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBFWFRJX1BSX1BSNV9Qb3MpICAgICAgICAgIC8qITwgMHgwMDAwMDAyMCAqLw0KI2RlZmluZSBFWFRJX1BSX1BSNSAgICAgICAgICAgICAgICAgICAgICAgICBFWFRJX1BSX1BSNV9Nc2sgICAgICAgICAgICAgICAgICAgIC8qITwgUGVuZGluZyBiaXQgZm9yIGxpbmUgNSAqLw0KI2RlZmluZSBFWFRJX1BSX1BSNl9Qb3MgICAgICAgICAgICAgICAgICAgICAoNlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBFWFRJX1BSX1BSNl9Nc2sgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBFWFRJX1BSX1BSNl9Qb3MpICAgICAgICAgIC8qITwgMHgwMDAwMDA0MCAqLw0KI2RlZmluZSBFWFRJX1BSX1BSNiAgICAgICAgICAgICAgICAgICAgICAgICBFWFRJX1BSX1BSNl9Nc2sgICAgICAgICAgICAgICAgICAgIC8qITwgUGVuZGluZyBiaXQgZm9yIGxpbmUgNiAqLw0KI2RlZmluZSBFWFRJX1BSX1BSN19Qb3MgICAgICAgICAgICAgICAgICAgICAoN1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBFWFRJX1BSX1BSN19Nc2sgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBFWFRJX1BSX1BSN19Qb3MpICAgICAgICAgIC8qITwgMHgwMDAwMDA4MCAqLw0KI2RlZmluZSBFWFRJX1BSX1BSNyAgICAgICAgICAgICAgICAgICAgICAgICBFWFRJX1BSX1BSN19Nc2sgICAgICAgICAgICAgICAgICAgIC8qITwgUGVuZGluZyBiaXQgZm9yIGxpbmUgNyAqLw0KI2RlZmluZSBFWFRJX1BSX1BSOF9Qb3MgICAgICAgICAgICAgICAgICAgICAoOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBFWFRJX1BSX1BSOF9Nc2sgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBFWFRJX1BSX1BSOF9Qb3MpICAgICAgICAgIC8qITwgMHgwMDAwMDEwMCAqLw0KI2RlZmluZSBFWFRJX1BSX1BSOCAgICAgICAgICAgICAgICAgICAgICAgICBFWFRJX1BSX1BSOF9Nc2sgICAgICAgICAgICAgICAgICAgIC8qITwgUGVuZGluZyBiaXQgZm9yIGxpbmUgOCAqLw0KI2RlZmluZSBFWFRJX1BSX1BSOV9Qb3MgICAgICAgICAgICAgICAgICAgICAoOVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBFWFRJX1BSX1BSOV9Nc2sgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBFWFRJX1BSX1BSOV9Qb3MpICAgICAgICAgIC8qITwgMHgwMDAwMDIwMCAqLw0KI2RlZmluZSBFWFRJX1BSX1BSOSAgICAgICAgICAgICAgICAgICAgICAgICBFWFRJX1BSX1BSOV9Nc2sgICAgICAgICAgICAgICAgICAgIC8qITwgUGVuZGluZyBiaXQgZm9yIGxpbmUgOSAqLw0KI2RlZmluZSBFWFRJX1BSX1BSMTBfUG9zICAgICAgICAgICAgICAgICAgICAoMTBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBFWFRJX1BSX1BSMTBfTXNrICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBFWFRJX1BSX1BSMTBfUG9zKSAgICAgICAgIC8qITwgMHgwMDAwMDQwMCAqLw0KI2RlZmluZSBFWFRJX1BSX1BSMTAgICAgICAgICAgICAgICAgICAgICAgICBFWFRJX1BSX1BSMTBfTXNrICAgICAgICAgICAgICAgICAgIC8qITwgUGVuZGluZyBiaXQgZm9yIGxpbmUgMTAgKi8NCiNkZWZpbmUgRVhUSV9QUl9QUjExX1BvcyAgICAgICAgICAgICAgICAgICAgKDExVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRVhUSV9QUl9QUjExX01zayAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgRVhUSV9QUl9QUjExX1BvcykgICAgICAgICAvKiE8IDB4MDAwMDA4MDAgKi8NCiNkZWZpbmUgRVhUSV9QUl9QUjExICAgICAgICAgICAgICAgICAgICAgICAgRVhUSV9QUl9QUjExX01zayAgICAgICAgICAgICAgICAgICAvKiE8IFBlbmRpbmcgYml0IGZvciBsaW5lIDExICovDQojZGVmaW5lIEVYVElfUFJfUFIxMl9Qb3MgICAgICAgICAgICAgICAgICAgICgxMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEVYVElfUFJfUFIxMl9Nc2sgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IEVYVElfUFJfUFIxMl9Qb3MpICAgICAgICAgLyohPCAweDAwMDAxMDAwICovDQojZGVmaW5lIEVYVElfUFJfUFIxMiAgICAgICAgICAgICAgICAgICAgICAgIEVYVElfUFJfUFIxMl9Nc2sgICAgICAgICAgICAgICAgICAgLyohPCBQZW5kaW5nIGJpdCBmb3IgbGluZSAxMiAqLw0KI2RlZmluZSBFWFRJX1BSX1BSMTNfUG9zICAgICAgICAgICAgICAgICAgICAoMTNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBFWFRJX1BSX1BSMTNfTXNrICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBFWFRJX1BSX1BSMTNfUG9zKSAgICAgICAgIC8qITwgMHgwMDAwMjAwMCAqLw0KI2RlZmluZSBFWFRJX1BSX1BSMTMgICAgICAgICAgICAgICAgICAgICAgICBFWFRJX1BSX1BSMTNfTXNrICAgICAgICAgICAgICAgICAgIC8qITwgUGVuZGluZyBiaXQgZm9yIGxpbmUgMTMgKi8NCiNkZWZpbmUgRVhUSV9QUl9QUjE0X1BvcyAgICAgICAgICAgICAgICAgICAgKDE0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRVhUSV9QUl9QUjE0X01zayAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgRVhUSV9QUl9QUjE0X1BvcykgICAgICAgICAvKiE8IDB4MDAwMDQwMDAgKi8NCiNkZWZpbmUgRVhUSV9QUl9QUjE0ICAgICAgICAgICAgICAgICAgICAgICAgRVhUSV9QUl9QUjE0X01zayAgICAgICAgICAgICAgICAgICAvKiE8IFBlbmRpbmcgYml0IGZvciBsaW5lIDE0ICovDQojZGVmaW5lIEVYVElfUFJfUFIxNV9Qb3MgICAgICAgICAgICAgICAgICAgICgxNVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEVYVElfUFJfUFIxNV9Nc2sgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IEVYVElfUFJfUFIxNV9Qb3MpICAgICAgICAgLyohPCAweDAwMDA4MDAwICovDQojZGVmaW5lIEVYVElfUFJfUFIxNSAgICAgICAgICAgICAgICAgICAgICAgIEVYVElfUFJfUFIxNV9Nc2sgICAgICAgICAgICAgICAgICAgLyohPCBQZW5kaW5nIGJpdCBmb3IgbGluZSAxNSAqLw0KI2RlZmluZSBFWFRJX1BSX1BSMTZfUG9zICAgICAgICAgICAgICAgICAgICAoMTZVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBFWFRJX1BSX1BSMTZfTXNrICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBFWFRJX1BSX1BSMTZfUG9zKSAgICAgICAgIC8qITwgMHgwMDAxMDAwMCAqLw0KI2RlZmluZSBFWFRJX1BSX1BSMTYgICAgICAgICAgICAgICAgICAgICAgICBFWFRJX1BSX1BSMTZfTXNrICAgICAgICAgICAgICAgICAgIC8qITwgUGVuZGluZyBiaXQgZm9yIGxpbmUgMTYgKi8NCiNkZWZpbmUgRVhUSV9QUl9QUjE3X1BvcyAgICAgICAgICAgICAgICAgICAgKDE3VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRVhUSV9QUl9QUjE3X01zayAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgRVhUSV9QUl9QUjE3X1BvcykgICAgICAgICAvKiE8IDB4MDAwMjAwMDAgKi8NCiNkZWZpbmUgRVhUSV9QUl9QUjE3ICAgICAgICAgICAgICAgICAgICAgICAgRVhUSV9QUl9QUjE3X01zayAgICAgICAgICAgICAgICAgICAvKiE8IFBlbmRpbmcgYml0IGZvciBsaW5lIDE3ICovDQojZGVmaW5lIEVYVElfUFJfUFIxOF9Qb3MgICAgICAgICAgICAgICAgICAgICgxOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEVYVElfUFJfUFIxOF9Nc2sgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IEVYVElfUFJfUFIxOF9Qb3MpICAgICAgICAgLyohPCAweDAwMDQwMDAwICovDQojZGVmaW5lIEVYVElfUFJfUFIxOCAgICAgICAgICAgICAgICAgICAgICAgIEVYVElfUFJfUFIxOF9Nc2sgICAgICAgICAgICAgICAgICAgLyohPCBQZW5kaW5nIGJpdCBmb3IgbGluZSAxOCAqLw0KI2RlZmluZSBFWFRJX1BSX1BSMTlfUG9zICAgICAgICAgICAgICAgICAgICAoMTlVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBFWFRJX1BSX1BSMTlfTXNrICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBFWFRJX1BSX1BSMTlfUG9zKSAgICAgICAgIC8qITwgMHgwMDA4MDAwMCAqLw0KI2RlZmluZSBFWFRJX1BSX1BSMTkgICAgICAgICAgICAgICAgICAgICAgICBFWFRJX1BSX1BSMTlfTXNrICAgICAgICAgICAgICAgICAgIC8qITwgUGVuZGluZyBiaXQgZm9yIGxpbmUgMTkgKi8NCiNkZWZpbmUgRVhUSV9QUl9QUjIwX1BvcyAgICAgICAgICAgICAgICAgICAgKDIwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRVhUSV9QUl9QUjIwX01zayAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgRVhUSV9QUl9QUjIwX1BvcykgICAgICAgICAvKiE8IDB4MDAxMDAwMDAgKi8NCiNkZWZpbmUgRVhUSV9QUl9QUjIwICAgICAgICAgICAgICAgICAgICAgICAgRVhUSV9QUl9QUjIwX01zayAgICAgICAgICAgICAgICAgICAvKiE8IFBlbmRpbmcgYml0IGZvciBsaW5lIDIwICovDQojZGVmaW5lIEVYVElfUFJfUFIyMV9Qb3MgICAgICAgICAgICAgICAgICAgICgyMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEVYVElfUFJfUFIyMV9Nc2sgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IEVYVElfUFJfUFIyMV9Qb3MpICAgICAgICAgLyohPCAweDAwMjAwMDAwICovDQojZGVmaW5lIEVYVElfUFJfUFIyMSAgICAgICAgICAgICAgICAgICAgICAgIEVYVElfUFJfUFIyMV9Nc2sgICAgICAgICAgICAgICAgICAgLyohPCBQZW5kaW5nIGJpdCBmb3IgbGluZSAyMSAqLw0KI2RlZmluZSBFWFRJX1BSX1BSMjJfUG9zICAgICAgICAgICAgICAgICAgICAoMjJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBFWFRJX1BSX1BSMjJfTXNrICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBFWFRJX1BSX1BSMjJfUG9zKSAgICAgICAgIC8qITwgMHgwMDQwMDAwMCAqLw0KI2RlZmluZSBFWFRJX1BSX1BSMjIgICAgICAgICAgICAgICAgICAgICAgICBFWFRJX1BSX1BSMjJfTXNrICAgICAgICAgICAgICAgICAgIC8qITwgUGVuZGluZyBiaXQgZm9yIGxpbmUgMjIgKi8NCiNkZWZpbmUgRVhUSV9QUl9QUjIzX1BvcyAgICAgICAgICAgICAgICAgICAgKDIzVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRVhUSV9QUl9QUjIzX01zayAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgRVhUSV9QUl9QUjIzX1BvcykgICAgICAgICAvKiE8IDB4MDA4MDAwMDAgKi8NCiNkZWZpbmUgRVhUSV9QUl9QUjIzICAgICAgICAgICAgICAgICAgICAgICAgRVhUSV9QUl9QUjIzX01zayAgICAgICAgICAgICAgICAgICAvKiE8IFBlbmRpbmcgYml0IGZvciBsaW5lIDIzICovDQoNCi8qIFJlZmVyZW5jZXMgRGVmaW5lcyAqLw0KI2RlZmluZSAgRVhUSV9QUl9QSUYwIEVYVElfUFJfUFIwDQojZGVmaW5lICBFWFRJX1BSX1BJRjEgRVhUSV9QUl9QUjENCiNkZWZpbmUgIEVYVElfUFJfUElGMiBFWFRJX1BSX1BSMg0KI2RlZmluZSAgRVhUSV9QUl9QSUYzIEVYVElfUFJfUFIzDQojZGVmaW5lICBFWFRJX1BSX1BJRjQgRVhUSV9QUl9QUjQNCiNkZWZpbmUgIEVYVElfUFJfUElGNSBFWFRJX1BSX1BSNQ0KI2RlZmluZSAgRVhUSV9QUl9QSUY2IEVYVElfUFJfUFI2DQojZGVmaW5lICBFWFRJX1BSX1BJRjcgRVhUSV9QUl9QUjcNCiNkZWZpbmUgIEVYVElfUFJfUElGOCBFWFRJX1BSX1BSOA0KI2RlZmluZSAgRVhUSV9QUl9QSUY5IEVYVElfUFJfUFI5DQojZGVmaW5lICBFWFRJX1BSX1BJRjEwIEVYVElfUFJfUFIxMA0KI2RlZmluZSAgRVhUSV9QUl9QSUYxMSBFWFRJX1BSX1BSMTENCiNkZWZpbmUgIEVYVElfUFJfUElGMTIgRVhUSV9QUl9QUjEyDQojZGVmaW5lICBFWFRJX1BSX1BJRjEzIEVYVElfUFJfUFIxMw0KI2RlZmluZSAgRVhUSV9QUl9QSUYxNCBFWFRJX1BSX1BSMTQNCiNkZWZpbmUgIEVYVElfUFJfUElGMTUgRVhUSV9QUl9QUjE1DQojZGVmaW5lICBFWFRJX1BSX1BJRjE2IEVYVElfUFJfUFIxNg0KI2RlZmluZSAgRVhUSV9QUl9QSUYxNyBFWFRJX1BSX1BSMTcNCiNkZWZpbmUgIEVYVElfUFJfUElGMTggRVhUSV9QUl9QUjE4DQojZGVmaW5lICBFWFRJX1BSX1BJRjE5IEVYVElfUFJfUFIxOQ0KI2RlZmluZSAgRVhUSV9QUl9QSUYyMCBFWFRJX1BSX1BSMjANCiNkZWZpbmUgIEVYVElfUFJfUElGMjEgRVhUSV9QUl9QUjIxDQojZGVmaW5lICBFWFRJX1BSX1BJRjIyIEVYVElfUFJfUFIyMg0KI2RlZmluZSAgRVhUSV9QUl9QSUYyMyBFWFRJX1BSX1BSMjMNCg0KLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8NCi8qICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovDQovKiAgICAgICAgICAgICAgICBGTEFTSCwgREFUQSBFRVBST00gYW5kIE9wdGlvbiBCeXRlcyBSZWdpc3RlcnMgICAgICAgICAgICAgICAqLw0KLyogICAgICAgICAgICAgICAgICAgICAgICAoRkxBU0gsIERBVEFfRUVQUk9NLCBPQikgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8NCi8qICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovDQovKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLw0KDQovKioqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIEZMQVNIX0FDUiByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBGTEFTSF9BQ1JfTEFURU5DWV9Qb3MgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBGTEFTSF9BQ1JfTEFURU5DWV9Nc2sgICAgICAgICAgICAgICAgKDB4MVUgPDwgRkxBU0hfQUNSX0xBVEVOQ1lfUG9zKSAgIC8qITwgMHgwMDAwMDAwMSAqLw0KI2RlZmluZSBGTEFTSF9BQ1JfTEFURU5DWSAgICAgICAgICAgICAgICAgICAgRkxBU0hfQUNSX0xBVEVOQ1lfTXNrICAgICAgICAgICAgIC8qITwgTGF0ZW5jeSAqLw0KI2RlZmluZSBGTEFTSF9BQ1JfUFJGVEVOX1BvcyAgICAgICAgICAgICAgICAgKDFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBGTEFTSF9BQ1JfUFJGVEVOX01zayAgICAgICAgICAgICAgICAgKDB4MVUgPDwgRkxBU0hfQUNSX1BSRlRFTl9Qb3MpICAgIC8qITwgMHgwMDAwMDAwMiAqLw0KI2RlZmluZSBGTEFTSF9BQ1JfUFJGVEVOICAgICAgICAgICAgICAgICAgICAgRkxBU0hfQUNSX1BSRlRFTl9Nc2sgICAgICAgICAgICAgIC8qITwgUHJlZmV0Y2ggQnVmZmVyIEVuYWJsZSAqLw0KI2RlZmluZSBGTEFTSF9BQ1JfQUNDNjRfUG9zICAgICAgICAgICAgICAgICAgKDJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBGTEFTSF9BQ1JfQUNDNjRfTXNrICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgRkxBU0hfQUNSX0FDQzY0X1BvcykgICAgIC8qITwgMHgwMDAwMDAwNCAqLw0KI2RlZmluZSBGTEFTSF9BQ1JfQUNDNjQgICAgICAgICAgICAgICAgICAgICAgRkxBU0hfQUNSX0FDQzY0X01zayAgICAgICAgICAgICAgIC8qITwgQWNjZXNzIDY0IGJpdHMgKi8NCiNkZWZpbmUgRkxBU0hfQUNSX1NMRUVQX1BEX1BvcyAgICAgICAgICAgICAgICgzVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRkxBU0hfQUNSX1NMRUVQX1BEX01zayAgICAgICAgICAgICAgICgweDFVIDw8IEZMQVNIX0FDUl9TTEVFUF9QRF9Qb3MpICAvKiE8IDB4MDAwMDAwMDggKi8NCiNkZWZpbmUgRkxBU0hfQUNSX1NMRUVQX1BEICAgICAgICAgICAgICAgICAgIEZMQVNIX0FDUl9TTEVFUF9QRF9Nc2sgICAgICAgICAgICAvKiE8IEZsYXNoIG1vZGUgZHVyaW5nIHNsZWVwIG1vZGUgKi8NCiNkZWZpbmUgRkxBU0hfQUNSX1JVTl9QRF9Qb3MgICAgICAgICAgICAgICAgICg0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRkxBU0hfQUNSX1JVTl9QRF9Nc2sgICAgICAgICAgICAgICAgICgweDFVIDw8IEZMQVNIX0FDUl9SVU5fUERfUG9zKSAgICAvKiE8IDB4MDAwMDAwMTAgKi8NCiNkZWZpbmUgRkxBU0hfQUNSX1JVTl9QRCAgICAgICAgICAgICAgICAgICAgIEZMQVNIX0FDUl9SVU5fUERfTXNrICAgICAgICAgICAgICAvKiE8IEZsYXNoIG1vZGUgZHVyaW5nIFJVTiBtb2RlICovDQoNCi8qKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgRkxBU0hfUEVDUiByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBGTEFTSF9QRUNSX1BFTE9DS19Qb3MgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBGTEFTSF9QRUNSX1BFTE9DS19Nc2sgICAgICAgICAgICAgICAgKDB4MVUgPDwgRkxBU0hfUEVDUl9QRUxPQ0tfUG9zKSAgIC8qITwgMHgwMDAwMDAwMSAqLw0KI2RlZmluZSBGTEFTSF9QRUNSX1BFTE9DSyAgICAgICAgICAgICAgICAgICAgRkxBU0hfUEVDUl9QRUxPQ0tfTXNrICAgICAgICAgICAgIC8qITwgRkxBU0hfUEVDUiBhbmQgRmxhc2ggZGF0YSBMb2NrICovDQojZGVmaW5lIEZMQVNIX1BFQ1JfUFJHTE9DS19Qb3MgICAgICAgICAgICAgICAoMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEZMQVNIX1BFQ1JfUFJHTE9DS19Nc2sgICAgICAgICAgICAgICAoMHgxVSA8PCBGTEFTSF9QRUNSX1BSR0xPQ0tfUG9zKSAgLyohPCAweDAwMDAwMDAyICovDQojZGVmaW5lIEZMQVNIX1BFQ1JfUFJHTE9DSyAgICAgICAgICAgICAgICAgICBGTEFTSF9QRUNSX1BSR0xPQ0tfTXNrICAgICAgICAgICAgLyohPCBQcm9ncmFtIG1hdHJpeCBMb2NrICovDQojZGVmaW5lIEZMQVNIX1BFQ1JfT1BUTE9DS19Qb3MgICAgICAgICAgICAgICAoMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEZMQVNIX1BFQ1JfT1BUTE9DS19Nc2sgICAgICAgICAgICAgICAoMHgxVSA8PCBGTEFTSF9QRUNSX09QVExPQ0tfUG9zKSAgLyohPCAweDAwMDAwMDA0ICovDQojZGVmaW5lIEZMQVNIX1BFQ1JfT1BUTE9DSyAgICAgICAgICAgICAgICAgICBGTEFTSF9QRUNSX09QVExPQ0tfTXNrICAgICAgICAgICAgLyohPCBPcHRpb24gYnl0ZSBtYXRyaXggTG9jayAqLw0KI2RlZmluZSBGTEFTSF9QRUNSX1BST0dfUG9zICAgICAgICAgICAgICAgICAgKDNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBGTEFTSF9QRUNSX1BST0dfTXNrICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgRkxBU0hfUEVDUl9QUk9HX1BvcykgICAgIC8qITwgMHgwMDAwMDAwOCAqLw0KI2RlZmluZSBGTEFTSF9QRUNSX1BST0cgICAgICAgICAgICAgICAgICAgICAgRkxBU0hfUEVDUl9QUk9HX01zayAgICAgICAgICAgICAgIC8qITwgUHJvZ3JhbSBtYXRyaXggc2VsZWN0aW9uICovDQojZGVmaW5lIEZMQVNIX1BFQ1JfREFUQV9Qb3MgICAgICAgICAgICAgICAgICAoNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEZMQVNIX1BFQ1JfREFUQV9Nc2sgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBGTEFTSF9QRUNSX0RBVEFfUG9zKSAgICAgLyohPCAweDAwMDAwMDEwICovDQojZGVmaW5lIEZMQVNIX1BFQ1JfREFUQSAgICAgICAgICAgICAgICAgICAgICBGTEFTSF9QRUNSX0RBVEFfTXNrICAgICAgICAgICAgICAgLyohPCBEYXRhIG1hdHJpeCBzZWxlY3Rpb24gKi8NCiNkZWZpbmUgRkxBU0hfUEVDUl9GVERXX1BvcyAgICAgICAgICAgICAgICAgICg4VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRkxBU0hfUEVDUl9GVERXX01zayAgICAgICAgICAgICAgICAgICgweDFVIDw8IEZMQVNIX1BFQ1JfRlREV19Qb3MpICAgICAvKiE8IDB4MDAwMDAxMDAgKi8NCiNkZWZpbmUgRkxBU0hfUEVDUl9GVERXICAgICAgICAgICAgICAgICAgICAgIEZMQVNIX1BFQ1JfRlREV19Nc2sgICAgICAgICAgICAgICAvKiE8IEZpeGVkIFRpbWUgRGF0YSB3cml0ZSBmb3IgV29yZC9IYWxmIFdvcmQvQnl0ZSBwcm9ncmFtbWluZyAqLw0KI2RlZmluZSBGTEFTSF9QRUNSX0VSQVNFX1BvcyAgICAgICAgICAgICAgICAgKDlVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBGTEFTSF9QRUNSX0VSQVNFX01zayAgICAgICAgICAgICAgICAgKDB4MVUgPDwgRkxBU0hfUEVDUl9FUkFTRV9Qb3MpICAgIC8qITwgMHgwMDAwMDIwMCAqLw0KI2RlZmluZSBGTEFTSF9QRUNSX0VSQVNFICAgICAgICAgICAgICAgICAgICAgRkxBU0hfUEVDUl9FUkFTRV9Nc2sgICAgICAgICAgICAgIC8qITwgUGFnZSBlcmFzaW5nIG1vZGUgKi8NCiNkZWZpbmUgRkxBU0hfUEVDUl9GUFJHX1BvcyAgICAgICAgICAgICAgICAgICgxMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRkxBU0hfUEVDUl9GUFJHX01zayAgICAgICAgICAgICAgICAgICgweDFVIDw8IEZMQVNIX1BFQ1JfRlBSR19Qb3MpICAgICAvKiE8IDB4MDAwMDA0MDAgKi8NCiNkZWZpbmUgRkxBU0hfUEVDUl9GUFJHICAgICAgICAgICAgICAgICAgICAgIEZMQVNIX1BFQ1JfRlBSR19Nc2sgICAgICAgICAgICAgICAvKiE8IEZhc3QgUGFnZS9IYWxmIFBhZ2UgcHJvZ3JhbW1pbmcgbW9kZSAqLw0KI2RlZmluZSBGTEFTSF9QRUNSX0VPUElFX1BvcyAgICAgICAgICAgICAgICAgKDE2VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBGTEFTSF9QRUNSX0VPUElFX01zayAgICAgICAgICAgICAgICAgKDB4MVUgPDwgRkxBU0hfUEVDUl9FT1BJRV9Qb3MpICAgIC8qITwgMHgwMDAxMDAwMCAqLw0KI2RlZmluZSBGTEFTSF9QRUNSX0VPUElFICAgICAgICAgICAgICAgICAgICAgRkxBU0hfUEVDUl9FT1BJRV9Nc2sgICAgICAgICAgICAgIC8qITwgRW5kIG9mIHByb2dyYW1taW5nIGludGVycnVwdCAqLyANCiNkZWZpbmUgRkxBU0hfUEVDUl9FUlJJRV9Qb3MgICAgICAgICAgICAgICAgICgxN1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRkxBU0hfUEVDUl9FUlJJRV9Nc2sgICAgICAgICAgICAgICAgICgweDFVIDw8IEZMQVNIX1BFQ1JfRVJSSUVfUG9zKSAgICAvKiE8IDB4MDAwMjAwMDAgKi8NCiNkZWZpbmUgRkxBU0hfUEVDUl9FUlJJRSAgICAgICAgICAgICAgICAgICAgIEZMQVNIX1BFQ1JfRVJSSUVfTXNrICAgICAgICAgICAgICAvKiE8IEVycm9yIGludGVycnVwdCAqLyANCiNkZWZpbmUgRkxBU0hfUEVDUl9PQkxfTEFVTkNIX1BvcyAgICAgICAgICAgICgxOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRkxBU0hfUEVDUl9PQkxfTEFVTkNIX01zayAgICAgICAgICAgICgweDFVIDw8IEZMQVNIX1BFQ1JfT0JMX0xBVU5DSF9Qb3MpIC8qITwgMHgwMDA0MDAwMCAqLw0KI2RlZmluZSBGTEFTSF9QRUNSX09CTF9MQVVOQ0ggICAgICAgICAgICAgICAgRkxBU0hfUEVDUl9PQkxfTEFVTkNIX01zayAgICAgICAgIC8qITwgTGF1bmNoIHRoZSBvcHRpb24gYnl0ZSBsb2FkaW5nICovIA0KDQovKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgRkxBU0hfUERLRVlSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIEZMQVNIX1BES0VZUl9QREtFWVJfUG9zICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEZMQVNIX1BES0VZUl9QREtFWVJfTXNrICAgICAgICAgICAgICAoMHhGRkZGRkZGRlUgPDwgRkxBU0hfUERLRVlSX1BES0VZUl9Qb3MpIC8qITwgMHhGRkZGRkZGRiAqLw0KI2RlZmluZSBGTEFTSF9QREtFWVJfUERLRVlSICAgICAgICAgICAgICAgICAgRkxBU0hfUERLRVlSX1BES0VZUl9Nc2sgICAgICAgICAgIC8qITwgRkxBU0hfUEVDIGFuZCBkYXRhIG1hdHJpeCBLZXkgKi8NCg0KLyoqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIEZMQVNIX1BFS0VZUiByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBGTEFTSF9QRUtFWVJfUEVLRVlSX1BvcyAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBGTEFTSF9QRUtFWVJfUEVLRVlSX01zayAgICAgICAgICAgICAgKDB4RkZGRkZGRkZVIDw8IEZMQVNIX1BFS0VZUl9QRUtFWVJfUG9zKSAvKiE8IDB4RkZGRkZGRkYgKi8NCiNkZWZpbmUgRkxBU0hfUEVLRVlSX1BFS0VZUiAgICAgICAgICAgICAgICAgIEZMQVNIX1BFS0VZUl9QRUtFWVJfTXNrICAgICAgICAgICAvKiE8IEZMQVNIX1BFQyBhbmQgZGF0YSBtYXRyaXggS2V5ICovDQoNCi8qKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBGTEFTSF9QUkdLRVlSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIEZMQVNIX1BSR0tFWVJfUFJHS0VZUl9Qb3MgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEZMQVNIX1BSR0tFWVJfUFJHS0VZUl9Nc2sgICAgICAgICAgICAoMHhGRkZGRkZGRlUgPDwgRkxBU0hfUFJHS0VZUl9QUkdLRVlSX1BvcykgLyohPCAweEZGRkZGRkZGICovDQojZGVmaW5lIEZMQVNIX1BSR0tFWVJfUFJHS0VZUiAgICAgICAgICAgICAgICBGTEFTSF9QUkdLRVlSX1BSR0tFWVJfTXNrICAgICAgICAgLyohPCBQcm9ncmFtIG1hdHJpeCBLZXkgKi8NCg0KLyoqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIEZMQVNIX09QVEtFWVIgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgRkxBU0hfT1BUS0VZUl9PUFRLRVlSX1BvcyAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRkxBU0hfT1BUS0VZUl9PUFRLRVlSX01zayAgICAgICAgICAgICgweEZGRkZGRkZGVSA8PCBGTEFTSF9PUFRLRVlSX09QVEtFWVJfUG9zKSAvKiE8IDB4RkZGRkZGRkYgKi8NCiNkZWZpbmUgRkxBU0hfT1BUS0VZUl9PUFRLRVlSICAgICAgICAgICAgICAgIEZMQVNIX09QVEtFWVJfT1BUS0VZUl9Nc2sgICAgICAgICAvKiE8IE9wdGlvbiBieXRlcyBtYXRyaXggS2V5ICovDQoNCi8qKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBGTEFTSF9TUiByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgRkxBU0hfU1JfQlNZX1BvcyAgICAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRkxBU0hfU1JfQlNZX01zayAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IEZMQVNIX1NSX0JTWV9Qb3MpICAgICAgICAvKiE8IDB4MDAwMDAwMDEgKi8NCiNkZWZpbmUgRkxBU0hfU1JfQlNZICAgICAgICAgICAgICAgICAgICAgICAgIEZMQVNIX1NSX0JTWV9Nc2sgICAgICAgICAgICAgICAgICAvKiE8IEJ1c3kgKi8NCiNkZWZpbmUgRkxBU0hfU1JfRU9QX1BvcyAgICAgICAgICAgICAgICAgICAgICgxVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRkxBU0hfU1JfRU9QX01zayAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IEZMQVNIX1NSX0VPUF9Qb3MpICAgICAgICAvKiE8IDB4MDAwMDAwMDIgKi8NCiNkZWZpbmUgRkxBU0hfU1JfRU9QICAgICAgICAgICAgICAgICAgICAgICAgIEZMQVNIX1NSX0VPUF9Nc2sgICAgICAgICAgICAgICAgICAvKiE8IEVuZCBPZiBQcm9ncmFtbWluZyovDQojZGVmaW5lIEZMQVNIX1NSX0VOREhWX1BvcyAgICAgICAgICAgICAgICAgICAoMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEZMQVNIX1NSX0VOREhWX01zayAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBGTEFTSF9TUl9FTkRIVl9Qb3MpICAgICAgLyohPCAweDAwMDAwMDA0ICovDQojZGVmaW5lIEZMQVNIX1NSX0VOREhWICAgICAgICAgICAgICAgICAgICAgICBGTEFTSF9TUl9FTkRIVl9Nc2sgICAgICAgICAgICAgICAgLyohPCBFbmQgb2YgaGlnaCB2b2x0YWdlICovDQojZGVmaW5lIEZMQVNIX1NSX1JFQURZX1BvcyAgICAgICAgICAgICAgICAgICAoM1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEZMQVNIX1NSX1JFQURZX01zayAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBGTEFTSF9TUl9SRUFEWV9Qb3MpICAgICAgLyohPCAweDAwMDAwMDA4ICovDQojZGVmaW5lIEZMQVNIX1NSX1JFQURZICAgICAgICAgICAgICAgICAgICAgICBGTEFTSF9TUl9SRUFEWV9Nc2sgICAgICAgICAgICAgICAgLyohPCBGbGFzaCByZWFkeSBhZnRlciBsb3cgcG93ZXIgbW9kZSAqLw0KDQojZGVmaW5lIEZMQVNIX1NSX1dSUEVSUl9Qb3MgICAgICAgICAgICAgICAgICAoOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEZMQVNIX1NSX1dSUEVSUl9Nc2sgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBGTEFTSF9TUl9XUlBFUlJfUG9zKSAgICAgLyohPCAweDAwMDAwMTAwICovDQojZGVmaW5lIEZMQVNIX1NSX1dSUEVSUiAgICAgICAgICAgICAgICAgICAgICBGTEFTSF9TUl9XUlBFUlJfTXNrICAgICAgICAgICAgICAgLyohPCBXcml0ZSBwcm90ZWN0ZWQgZXJyb3IgKi8NCiNkZWZpbmUgRkxBU0hfU1JfUEdBRVJSX1BvcyAgICAgICAgICAgICAgICAgICg5VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRkxBU0hfU1JfUEdBRVJSX01zayAgICAgICAgICAgICAgICAgICgweDFVIDw8IEZMQVNIX1NSX1BHQUVSUl9Qb3MpICAgICAvKiE8IDB4MDAwMDAyMDAgKi8NCiNkZWZpbmUgRkxBU0hfU1JfUEdBRVJSICAgICAgICAgICAgICAgICAgICAgIEZMQVNIX1NSX1BHQUVSUl9Nc2sgICAgICAgICAgICAgICAvKiE8IFByb2dyYW1taW5nIEFsaWdubWVudCBFcnJvciAqLw0KI2RlZmluZSBGTEFTSF9TUl9TSVpFUlJfUG9zICAgICAgICAgICAgICAgICAgKDEwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBGTEFTSF9TUl9TSVpFUlJfTXNrICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgRkxBU0hfU1JfU0laRVJSX1BvcykgICAgIC8qITwgMHgwMDAwMDQwMCAqLw0KI2RlZmluZSBGTEFTSF9TUl9TSVpFUlIgICAgICAgICAgICAgICAgICAgICAgRkxBU0hfU1JfU0laRVJSX01zayAgICAgICAgICAgICAgIC8qITwgU2l6ZSBlcnJvciAqLw0KI2RlZmluZSBGTEFTSF9TUl9PUFRWRVJSX1BvcyAgICAgICAgICAgICAgICAgKDExVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBGTEFTSF9TUl9PUFRWRVJSX01zayAgICAgICAgICAgICAgICAgKDB4MVUgPDwgRkxBU0hfU1JfT1BUVkVSUl9Qb3MpICAgIC8qITwgMHgwMDAwMDgwMCAqLw0KI2RlZmluZSBGTEFTSF9TUl9PUFRWRVJSICAgICAgICAgICAgICAgICAgICAgRkxBU0hfU1JfT1BUVkVSUl9Nc2sgICAgICAgICAgICAgIC8qITwgT3B0aW9uIHZhbGlkaXR5IGVycm9yICovDQojZGVmaW5lIEZMQVNIX1NSX09QVFZFUlJVU1JfUG9zICAgICAgICAgICAgICAoMTJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEZMQVNIX1NSX09QVFZFUlJVU1JfTXNrICAgICAgICAgICAgICAoMHgxVSA8PCBGTEFTSF9TUl9PUFRWRVJSVVNSX1BvcykgLyohPCAweDAwMDAxMDAwICovDQojZGVmaW5lIEZMQVNIX1NSX09QVFZFUlJVU1IgICAgICAgICAgICAgICAgICBGTEFTSF9TUl9PUFRWRVJSVVNSX01zayAgICAgICAgICAgLyohPCBPcHRpb24gVXNlciB2YWxpZGl0eSBlcnJvciAqLw0KI2RlZmluZSBGTEFTSF9TUl9SREVSUl9Qb3MgICAgICAgICAgICAgICAgICAgKDEzVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBGTEFTSF9TUl9SREVSUl9Nc2sgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgRkxBU0hfU1JfUkRFUlJfUG9zKSAgICAgIC8qITwgMHgwMDAwMjAwMCAqLw0KI2RlZmluZSBGTEFTSF9TUl9SREVSUiAgICAgICAgICAgICAgICAgICAgICAgRkxBU0hfU1JfUkRFUlJfTXNrICAgICAgICAgICAgICAgIC8qITwgUmVhZCBwcm90ZWN0ZWQgZXJyb3IgKi8NCg0KLyoqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIEZMQVNIX09CUiByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgRkxBU0hfT0JSX1JEUFJUX1BvcyAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRkxBU0hfT0JSX1JEUFJUX01zayAgICAgICAgICAgICAgICAgICgweEZGVSA8PCBGTEFTSF9PQlJfUkRQUlRfUG9zKSAgICAvKiE8IDB4MDAwMDAwRkYgKi8NCiNkZWZpbmUgRkxBU0hfT0JSX1JEUFJUICAgICAgICAgICAgICAgICAgICAgIEZMQVNIX09CUl9SRFBSVF9Nc2sgICAgICAgICAgICAgICAvKiE8IFJlYWQgUHJvdGVjdGlvbiAqLw0KI2RlZmluZSBGTEFTSF9PQlJfU1BSTU9EX1BvcyAgICAgICAgICAgICAgICAgKDhVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBGTEFTSF9PQlJfU1BSTU9EX01zayAgICAgICAgICAgICAgICAgKDB4MVUgPDwgRkxBU0hfT0JSX1NQUk1PRF9Qb3MpICAgIC8qITwgMHgwMDAwMDEwMCAqLw0KI2RlZmluZSBGTEFTSF9PQlJfU1BSTU9EICAgICAgICAgICAgICAgICAgICAgRkxBU0hfT0JSX1NQUk1PRF9Nc2sgICAgICAgICAgICAgIC8qITwgU2VsZWN0aW9uIG9mIHByb3RlY3Rpb24gbW9kZSBvZiBXUFJpIGJpdHMgKi8NCiNkZWZpbmUgRkxBU0hfT0JSX0JPUl9MRVZfUG9zICAgICAgICAgICAgICAgICgxNlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRkxBU0hfT0JSX0JPUl9MRVZfTXNrICAgICAgICAgICAgICAgICgweEZVIDw8IEZMQVNIX09CUl9CT1JfTEVWX1BvcykgICAvKiE8IDB4MDAwRjAwMDAgKi8NCiNkZWZpbmUgRkxBU0hfT0JSX0JPUl9MRVYgICAgICAgICAgICAgICAgICAgIEZMQVNIX09CUl9CT1JfTEVWX01zayAgICAgICAgICAgICAvKiE8IEJPUl9MRVZbMzowXSBCcm93biBPdXQgUmVzZXQgVGhyZXNob2xkIExldmVsKi8NCiNkZWZpbmUgRkxBU0hfT0JSX1VTRVJfUG9zICAgICAgICAgICAgICAgICAgICgyMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRkxBU0hfT0JSX1VTRVJfTXNrICAgICAgICAgICAgICAgICAgICgweDdVIDw8IEZMQVNIX09CUl9VU0VSX1BvcykgICAgICAvKiE8IDB4MDA3MDAwMDAgKi8NCiNkZWZpbmUgRkxBU0hfT0JSX1VTRVIgICAgICAgICAgICAgICAgICAgICAgIEZMQVNIX09CUl9VU0VSX01zayAgICAgICAgICAgICAgICAvKiE8IFVzZXIgT3B0aW9uIEJ5dGVzICovDQojZGVmaW5lIEZMQVNIX09CUl9JV0RHX1NXX1BvcyAgICAgICAgICAgICAgICAoMjBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEZMQVNIX09CUl9JV0RHX1NXX01zayAgICAgICAgICAgICAgICAoMHgxVSA8PCBGTEFTSF9PQlJfSVdER19TV19Qb3MpICAgLyohPCAweDAwMTAwMDAwICovDQojZGVmaW5lIEZMQVNIX09CUl9JV0RHX1NXICAgICAgICAgICAgICAgICAgICBGTEFTSF9PQlJfSVdER19TV19Nc2sgICAgICAgICAgICAgLyohPCBJV0RHX1NXICovDQojZGVmaW5lIEZMQVNIX09CUl9uUlNUX1NUT1BfUG9zICAgICAgICAgICAgICAoMjFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEZMQVNIX09CUl9uUlNUX1NUT1BfTXNrICAgICAgICAgICAgICAoMHgxVSA8PCBGTEFTSF9PQlJfblJTVF9TVE9QX1BvcykgLyohPCAweDAwMjAwMDAwICovDQojZGVmaW5lIEZMQVNIX09CUl9uUlNUX1NUT1AgICAgICAgICAgICAgICAgICBGTEFTSF9PQlJfblJTVF9TVE9QX01zayAgICAgICAgICAgLyohPCBuUlNUX1NUT1AgKi8NCiNkZWZpbmUgRkxBU0hfT0JSX25SU1RfU1REQllfUG9zICAgICAgICAgICAgICgyMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRkxBU0hfT0JSX25SU1RfU1REQllfTXNrICAgICAgICAgICAgICgweDFVIDw8IEZMQVNIX09CUl9uUlNUX1NUREJZX1BvcykgLyohPCAweDAwNDAwMDAwICovDQojZGVmaW5lIEZMQVNIX09CUl9uUlNUX1NUREJZICAgICAgICAgICAgICAgICBGTEFTSF9PQlJfblJTVF9TVERCWV9Nc2sgICAgICAgICAgLyohPCBuUlNUX1NUREJZICovDQoNCi8qKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBGTEFTSF9XUlBSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIEZMQVNIX1dSUFIxX1dSUF9Qb3MgICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEZMQVNIX1dSUFIxX1dSUF9Nc2sgICAgICAgICAgICAgICAgICAoMHhGRkZGRkZGRlUgPDwgRkxBU0hfV1JQUjFfV1JQX1BvcykgLyohPCAweEZGRkZGRkZGICovDQojZGVmaW5lIEZMQVNIX1dSUFIxX1dSUCAgICAgICAgICAgICAgICAgICAgICBGTEFTSF9XUlBSMV9XUlBfTXNrICAgICAgICAgICAgICAgLyohPCBXcml0ZSBQcm90ZWN0IHNlY3RvcnMgMCAgdG8gMzEgICovDQojZGVmaW5lIEZMQVNIX1dSUFIyX1dSUF9Qb3MgICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEZMQVNIX1dSUFIyX1dSUF9Nc2sgICAgICAgICAgICAgICAgICAoMHhGRkZGRkZGRlUgPDwgRkxBU0hfV1JQUjJfV1JQX1BvcykgLyohPCAweEZGRkZGRkZGICovDQojZGVmaW5lIEZMQVNIX1dSUFIyX1dSUCAgICAgICAgICAgICAgICAgICAgICBGTEFTSF9XUlBSMl9XUlBfTXNrICAgICAgICAgICAgICAgLyohPCBXcml0ZSBQcm90ZWN0IHNlY3RvcnMgMzIgdG8gNjMgICovICAgICAgICAgICAgIA0KDQovKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLw0KLyogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8NCi8qICAgICAgICAgICAgICAgICAgICAgICAgICAgIEdlbmVyYWwgUHVycG9zZSBJL08gICAgICAgICAgICAgICAgICAgICAgICAgICAgICovDQovKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLw0KLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8NCi8qKioqKioqKioqKioqKioqKiogIEJpdHMgZGVmaW5pdGlvbiBmb3IgR1BJT19NT0RFUiByZWdpc3RlciAgKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIEdQSU9fTU9ERVJfTU9ERVIwX1BvcyAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fTU9ERVJfTU9ERVIwX01zayAgICAgICAgICAgICAgICAoMHgzVSA8PCBHUElPX01PREVSX01PREVSMF9Qb3MpICAgLyohPCAweDAwMDAwMDAzICovDQojZGVmaW5lIEdQSU9fTU9ERVJfTU9ERVIwICAgICAgICAgICAgICAgICAgICBHUElPX01PREVSX01PREVSMF9Nc2sgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fTU9ERVJfTU9ERVIwXzAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBHUElPX01PREVSX01PREVSMF9Qb3MpICAgLyohPCAweDAwMDAwMDAxICovDQojZGVmaW5lIEdQSU9fTU9ERVJfTU9ERVIwXzEgICAgICAgICAgICAgICAgICAoMHgyVSA8PCBHUElPX01PREVSX01PREVSMF9Qb3MpICAgLyohPCAweDAwMDAwMDAyICovDQoNCiNkZWZpbmUgR1BJT19NT0RFUl9NT0RFUjFfUG9zICAgICAgICAgICAgICAgICgyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19NT0RFUl9NT0RFUjFfTXNrICAgICAgICAgICAgICAgICgweDNVIDw8IEdQSU9fTU9ERVJfTU9ERVIxX1BvcykgICAvKiE8IDB4MDAwMDAwMEMgKi8NCiNkZWZpbmUgR1BJT19NT0RFUl9NT0RFUjEgICAgICAgICAgICAgICAgICAgIEdQSU9fTU9ERVJfTU9ERVIxX01zayAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19NT0RFUl9NT0RFUjFfMCAgICAgICAgICAgICAgICAgICgweDFVIDw8IEdQSU9fTU9ERVJfTU9ERVIxX1BvcykgICAvKiE8IDB4MDAwMDAwMDQgKi8NCiNkZWZpbmUgR1BJT19NT0RFUl9NT0RFUjFfMSAgICAgICAgICAgICAgICAgICgweDJVIDw8IEdQSU9fTU9ERVJfTU9ERVIxX1BvcykgICAvKiE8IDB4MDAwMDAwMDggKi8NCg0KI2RlZmluZSBHUElPX01PREVSX01PREVSMl9Qb3MgICAgICAgICAgICAgICAgKDRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX01PREVSX01PREVSMl9Nc2sgICAgICAgICAgICAgICAgKDB4M1UgPDwgR1BJT19NT0RFUl9NT0RFUjJfUG9zKSAgIC8qITwgMHgwMDAwMDAzMCAqLw0KI2RlZmluZSBHUElPX01PREVSX01PREVSMiAgICAgICAgICAgICAgICAgICAgR1BJT19NT0RFUl9NT0RFUjJfTXNrICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX01PREVSX01PREVSMl8wICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgR1BJT19NT0RFUl9NT0RFUjJfUG9zKSAgIC8qITwgMHgwMDAwMDAxMCAqLw0KI2RlZmluZSBHUElPX01PREVSX01PREVSMl8xICAgICAgICAgICAgICAgICAgKDB4MlUgPDwgR1BJT19NT0RFUl9NT0RFUjJfUG9zKSAgIC8qITwgMHgwMDAwMDAyMCAqLw0KDQojZGVmaW5lIEdQSU9fTU9ERVJfTU9ERVIzX1BvcyAgICAgICAgICAgICAgICAoNlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fTU9ERVJfTU9ERVIzX01zayAgICAgICAgICAgICAgICAoMHgzVSA8PCBHUElPX01PREVSX01PREVSM19Qb3MpICAgLyohPCAweDAwMDAwMEMwICovDQojZGVmaW5lIEdQSU9fTU9ERVJfTU9ERVIzICAgICAgICAgICAgICAgICAgICBHUElPX01PREVSX01PREVSM19Nc2sgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fTU9ERVJfTU9ERVIzXzAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBHUElPX01PREVSX01PREVSM19Qb3MpICAgLyohPCAweDAwMDAwMDQwICovDQojZGVmaW5lIEdQSU9fTU9ERVJfTU9ERVIzXzEgICAgICAgICAgICAgICAgICAoMHgyVSA8PCBHUElPX01PREVSX01PREVSM19Qb3MpICAgLyohPCAweDAwMDAwMDgwICovDQoNCiNkZWZpbmUgR1BJT19NT0RFUl9NT0RFUjRfUG9zICAgICAgICAgICAgICAgICg4VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19NT0RFUl9NT0RFUjRfTXNrICAgICAgICAgICAgICAgICgweDNVIDw8IEdQSU9fTU9ERVJfTU9ERVI0X1BvcykgICAvKiE8IDB4MDAwMDAzMDAgKi8NCiNkZWZpbmUgR1BJT19NT0RFUl9NT0RFUjQgICAgICAgICAgICAgICAgICAgIEdQSU9fTU9ERVJfTU9ERVI0X01zayAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19NT0RFUl9NT0RFUjRfMCAgICAgICAgICAgICAgICAgICgweDFVIDw8IEdQSU9fTU9ERVJfTU9ERVI0X1BvcykgICAvKiE8IDB4MDAwMDAxMDAgKi8NCiNkZWZpbmUgR1BJT19NT0RFUl9NT0RFUjRfMSAgICAgICAgICAgICAgICAgICgweDJVIDw8IEdQSU9fTU9ERVJfTU9ERVI0X1BvcykgICAvKiE8IDB4MDAwMDAyMDAgKi8NCg0KI2RlZmluZSBHUElPX01PREVSX01PREVSNV9Qb3MgICAgICAgICAgICAgICAgKDEwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX01PREVSX01PREVSNV9Nc2sgICAgICAgICAgICAgICAgKDB4M1UgPDwgR1BJT19NT0RFUl9NT0RFUjVfUG9zKSAgIC8qITwgMHgwMDAwMEMwMCAqLw0KI2RlZmluZSBHUElPX01PREVSX01PREVSNSAgICAgICAgICAgICAgICAgICAgR1BJT19NT0RFUl9NT0RFUjVfTXNrICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX01PREVSX01PREVSNV8wICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgR1BJT19NT0RFUl9NT0RFUjVfUG9zKSAgIC8qITwgMHgwMDAwMDQwMCAqLw0KI2RlZmluZSBHUElPX01PREVSX01PREVSNV8xICAgICAgICAgICAgICAgICAgKDB4MlUgPDwgR1BJT19NT0RFUl9NT0RFUjVfUG9zKSAgIC8qITwgMHgwMDAwMDgwMCAqLw0KDQojZGVmaW5lIEdQSU9fTU9ERVJfTU9ERVI2X1BvcyAgICAgICAgICAgICAgICAoMTJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fTU9ERVJfTU9ERVI2X01zayAgICAgICAgICAgICAgICAoMHgzVSA8PCBHUElPX01PREVSX01PREVSNl9Qb3MpICAgLyohPCAweDAwMDAzMDAwICovDQojZGVmaW5lIEdQSU9fTU9ERVJfTU9ERVI2ICAgICAgICAgICAgICAgICAgICBHUElPX01PREVSX01PREVSNl9Nc2sgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fTU9ERVJfTU9ERVI2XzAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBHUElPX01PREVSX01PREVSNl9Qb3MpICAgLyohPCAweDAwMDAxMDAwICovDQojZGVmaW5lIEdQSU9fTU9ERVJfTU9ERVI2XzEgICAgICAgICAgICAgICAgICAoMHgyVSA8PCBHUElPX01PREVSX01PREVSNl9Qb3MpICAgLyohPCAweDAwMDAyMDAwICovDQoNCiNkZWZpbmUgR1BJT19NT0RFUl9NT0RFUjdfUG9zICAgICAgICAgICAgICAgICgxNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19NT0RFUl9NT0RFUjdfTXNrICAgICAgICAgICAgICAgICgweDNVIDw8IEdQSU9fTU9ERVJfTU9ERVI3X1BvcykgICAvKiE8IDB4MDAwMEMwMDAgKi8NCiNkZWZpbmUgR1BJT19NT0RFUl9NT0RFUjcgICAgICAgICAgICAgICAgICAgIEdQSU9fTU9ERVJfTU9ERVI3X01zayAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19NT0RFUl9NT0RFUjdfMCAgICAgICAgICAgICAgICAgICgweDFVIDw8IEdQSU9fTU9ERVJfTU9ERVI3X1BvcykgICAvKiE8IDB4MDAwMDQwMDAgKi8NCiNkZWZpbmUgR1BJT19NT0RFUl9NT0RFUjdfMSAgICAgICAgICAgICAgICAgICgweDJVIDw8IEdQSU9fTU9ERVJfTU9ERVI3X1BvcykgICAvKiE8IDB4MDAwMDgwMDAgKi8NCg0KI2RlZmluZSBHUElPX01PREVSX01PREVSOF9Qb3MgICAgICAgICAgICAgICAgKDE2VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX01PREVSX01PREVSOF9Nc2sgICAgICAgICAgICAgICAgKDB4M1UgPDwgR1BJT19NT0RFUl9NT0RFUjhfUG9zKSAgIC8qITwgMHgwMDAzMDAwMCAqLw0KI2RlZmluZSBHUElPX01PREVSX01PREVSOCAgICAgICAgICAgICAgICAgICAgR1BJT19NT0RFUl9NT0RFUjhfTXNrICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX01PREVSX01PREVSOF8wICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgR1BJT19NT0RFUl9NT0RFUjhfUG9zKSAgIC8qITwgMHgwMDAxMDAwMCAqLw0KI2RlZmluZSBHUElPX01PREVSX01PREVSOF8xICAgICAgICAgICAgICAgICAgKDB4MlUgPDwgR1BJT19NT0RFUl9NT0RFUjhfUG9zKSAgIC8qITwgMHgwMDAyMDAwMCAqLw0KDQojZGVmaW5lIEdQSU9fTU9ERVJfTU9ERVI5X1BvcyAgICAgICAgICAgICAgICAoMThVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fTU9ERVJfTU9ERVI5X01zayAgICAgICAgICAgICAgICAoMHgzVSA8PCBHUElPX01PREVSX01PREVSOV9Qb3MpICAgLyohPCAweDAwMEMwMDAwICovDQojZGVmaW5lIEdQSU9fTU9ERVJfTU9ERVI5ICAgICAgICAgICAgICAgICAgICBHUElPX01PREVSX01PREVSOV9Nc2sgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fTU9ERVJfTU9ERVI5XzAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBHUElPX01PREVSX01PREVSOV9Qb3MpICAgLyohPCAweDAwMDQwMDAwICovDQojZGVmaW5lIEdQSU9fTU9ERVJfTU9ERVI5XzEgICAgICAgICAgICAgICAgICAoMHgyVSA8PCBHUElPX01PREVSX01PREVSOV9Qb3MpICAgLyohPCAweDAwMDgwMDAwICovDQoNCiNkZWZpbmUgR1BJT19NT0RFUl9NT0RFUjEwX1BvcyAgICAgICAgICAgICAgICgyMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19NT0RFUl9NT0RFUjEwX01zayAgICAgICAgICAgICAgICgweDNVIDw8IEdQSU9fTU9ERVJfTU9ERVIxMF9Qb3MpICAvKiE8IDB4MDAzMDAwMDAgKi8NCiNkZWZpbmUgR1BJT19NT0RFUl9NT0RFUjEwICAgICAgICAgICAgICAgICAgIEdQSU9fTU9ERVJfTU9ERVIxMF9Nc2sgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19NT0RFUl9NT0RFUjEwXzAgICAgICAgICAgICAgICAgICgweDFVIDw8IEdQSU9fTU9ERVJfTU9ERVIxMF9Qb3MpICAvKiE8IDB4MDAxMDAwMDAgKi8NCiNkZWZpbmUgR1BJT19NT0RFUl9NT0RFUjEwXzEgICAgICAgICAgICAgICAgICgweDJVIDw8IEdQSU9fTU9ERVJfTU9ERVIxMF9Qb3MpICAvKiE8IDB4MDAyMDAwMDAgKi8NCg0KI2RlZmluZSBHUElPX01PREVSX01PREVSMTFfUG9zICAgICAgICAgICAgICAgKDIyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX01PREVSX01PREVSMTFfTXNrICAgICAgICAgICAgICAgKDB4M1UgPDwgR1BJT19NT0RFUl9NT0RFUjExX1BvcykgIC8qITwgMHgwMEMwMDAwMCAqLw0KI2RlZmluZSBHUElPX01PREVSX01PREVSMTEgICAgICAgICAgICAgICAgICAgR1BJT19NT0RFUl9NT0RFUjExX01zayAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX01PREVSX01PREVSMTFfMCAgICAgICAgICAgICAgICAgKDB4MVUgPDwgR1BJT19NT0RFUl9NT0RFUjExX1BvcykgIC8qITwgMHgwMDQwMDAwMCAqLw0KI2RlZmluZSBHUElPX01PREVSX01PREVSMTFfMSAgICAgICAgICAgICAgICAgKDB4MlUgPDwgR1BJT19NT0RFUl9NT0RFUjExX1BvcykgIC8qITwgMHgwMDgwMDAwMCAqLw0KDQojZGVmaW5lIEdQSU9fTU9ERVJfTU9ERVIxMl9Qb3MgICAgICAgICAgICAgICAoMjRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fTU9ERVJfTU9ERVIxMl9Nc2sgICAgICAgICAgICAgICAoMHgzVSA8PCBHUElPX01PREVSX01PREVSMTJfUG9zKSAgLyohPCAweDAzMDAwMDAwICovDQojZGVmaW5lIEdQSU9fTU9ERVJfTU9ERVIxMiAgICAgICAgICAgICAgICAgICBHUElPX01PREVSX01PREVSMTJfTXNrICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fTU9ERVJfTU9ERVIxMl8wICAgICAgICAgICAgICAgICAoMHgxVSA8PCBHUElPX01PREVSX01PREVSMTJfUG9zKSAgLyohPCAweDAxMDAwMDAwICovDQojZGVmaW5lIEdQSU9fTU9ERVJfTU9ERVIxMl8xICAgICAgICAgICAgICAgICAoMHgyVSA8PCBHUElPX01PREVSX01PREVSMTJfUG9zKSAgLyohPCAweDAyMDAwMDAwICovDQoNCiNkZWZpbmUgR1BJT19NT0RFUl9NT0RFUjEzX1BvcyAgICAgICAgICAgICAgICgyNlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19NT0RFUl9NT0RFUjEzX01zayAgICAgICAgICAgICAgICgweDNVIDw8IEdQSU9fTU9ERVJfTU9ERVIxM19Qb3MpICAvKiE8IDB4MEMwMDAwMDAgKi8NCiNkZWZpbmUgR1BJT19NT0RFUl9NT0RFUjEzICAgICAgICAgICAgICAgICAgIEdQSU9fTU9ERVJfTU9ERVIxM19Nc2sgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19NT0RFUl9NT0RFUjEzXzAgICAgICAgICAgICAgICAgICgweDFVIDw8IEdQSU9fTU9ERVJfTU9ERVIxM19Qb3MpICAvKiE8IDB4MDQwMDAwMDAgKi8NCiNkZWZpbmUgR1BJT19NT0RFUl9NT0RFUjEzXzEgICAgICAgICAgICAgICAgICgweDJVIDw8IEdQSU9fTU9ERVJfTU9ERVIxM19Qb3MpICAvKiE8IDB4MDgwMDAwMDAgKi8NCg0KI2RlZmluZSBHUElPX01PREVSX01PREVSMTRfUG9zICAgICAgICAgICAgICAgKDI4VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX01PREVSX01PREVSMTRfTXNrICAgICAgICAgICAgICAgKDB4M1UgPDwgR1BJT19NT0RFUl9NT0RFUjE0X1BvcykgIC8qITwgMHgzMDAwMDAwMCAqLw0KI2RlZmluZSBHUElPX01PREVSX01PREVSMTQgICAgICAgICAgICAgICAgICAgR1BJT19NT0RFUl9NT0RFUjE0X01zayAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX01PREVSX01PREVSMTRfMCAgICAgICAgICAgICAgICAgKDB4MVUgPDwgR1BJT19NT0RFUl9NT0RFUjE0X1BvcykgIC8qITwgMHgxMDAwMDAwMCAqLw0KI2RlZmluZSBHUElPX01PREVSX01PREVSMTRfMSAgICAgICAgICAgICAgICAgKDB4MlUgPDwgR1BJT19NT0RFUl9NT0RFUjE0X1BvcykgIC8qITwgMHgyMDAwMDAwMCAqLw0KDQojZGVmaW5lIEdQSU9fTU9ERVJfTU9ERVIxNV9Qb3MgICAgICAgICAgICAgICAoMzBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fTU9ERVJfTU9ERVIxNV9Nc2sgICAgICAgICAgICAgICAoMHgzVSA8PCBHUElPX01PREVSX01PREVSMTVfUG9zKSAgLyohPCAweEMwMDAwMDAwICovDQojZGVmaW5lIEdQSU9fTU9ERVJfTU9ERVIxNSAgICAgICAgICAgICAgICAgICBHUElPX01PREVSX01PREVSMTVfTXNrICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fTU9ERVJfTU9ERVIxNV8wICAgICAgICAgICAgICAgICAoMHgxVSA8PCBHUElPX01PREVSX01PREVSMTVfUG9zKSAgLyohPCAweDQwMDAwMDAwICovDQojZGVmaW5lIEdQSU9fTU9ERVJfTU9ERVIxNV8xICAgICAgICAgICAgICAgICAoMHgyVSA8PCBHUElPX01PREVSX01PREVSMTVfUG9zKSAgLyohPCAweDgwMDAwMDAwICovDQoNCi8qKioqKioqKioqKioqKioqKiogIEJpdHMgZGVmaW5pdGlvbiBmb3IgR1BJT19PVFlQRVIgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKiovDQojZGVmaW5lIEdQSU9fT1RZUEVSX09UXzAgICAgICAgICAgICAgICAgICAgICAoMHgwMDAwMDAwMVUpICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fT1RZUEVSX09UXzEgICAgICAgICAgICAgICAgICAgICAoMHgwMDAwMDAwMlUpICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fT1RZUEVSX09UXzIgICAgICAgICAgICAgICAgICAgICAoMHgwMDAwMDAwNFUpICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fT1RZUEVSX09UXzMgICAgICAgICAgICAgICAgICAgICAoMHgwMDAwMDAwOFUpICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fT1RZUEVSX09UXzQgICAgICAgICAgICAgICAgICAgICAoMHgwMDAwMDAxMFUpICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fT1RZUEVSX09UXzUgICAgICAgICAgICAgICAgICAgICAoMHgwMDAwMDAyMFUpICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fT1RZUEVSX09UXzYgICAgICAgICAgICAgICAgICAgICAoMHgwMDAwMDA0MFUpICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fT1RZUEVSX09UXzcgICAgICAgICAgICAgICAgICAgICAoMHgwMDAwMDA4MFUpICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fT1RZUEVSX09UXzggICAgICAgICAgICAgICAgICAgICAoMHgwMDAwMDEwMFUpICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fT1RZUEVSX09UXzkgICAgICAgICAgICAgICAgICAgICAoMHgwMDAwMDIwMFUpICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fT1RZUEVSX09UXzEwICAgICAgICAgICAgICAgICAgICAoMHgwMDAwMDQwMFUpICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fT1RZUEVSX09UXzExICAgICAgICAgICAgICAgICAgICAoMHgwMDAwMDgwMFUpICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fT1RZUEVSX09UXzEyICAgICAgICAgICAgICAgICAgICAoMHgwMDAwMTAwMFUpICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fT1RZUEVSX09UXzEzICAgICAgICAgICAgICAgICAgICAoMHgwMDAwMjAwMFUpICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fT1RZUEVSX09UXzE0ICAgICAgICAgICAgICAgICAgICAoMHgwMDAwNDAwMFUpICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fT1RZUEVSX09UXzE1ICAgICAgICAgICAgICAgICAgICAoMHgwMDAwODAwMFUpICAgICAgICAgICAgICAgICAgICAgDQoNCi8qKioqKioqKioqKioqKioqKiogIEJpdHMgZGVmaW5pdGlvbiBmb3IgR1BJT19PU1BFRURSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKiovDQojZGVmaW5lIEdQSU9fT1NQRUVERVJfT1NQRUVEUjBfUG9zICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fT1NQRUVERVJfT1NQRUVEUjBfTXNrICAgICAgICAgICAoMHgzVSA8PCBHUElPX09TUEVFREVSX09TUEVFRFIwX1BvcykgLyohPCAweDAwMDAwMDAzICovDQojZGVmaW5lIEdQSU9fT1NQRUVERVJfT1NQRUVEUjAgICAgICAgICAgICAgICBHUElPX09TUEVFREVSX09TUEVFRFIwX01zayAgICAgICAgDQojZGVmaW5lIEdQSU9fT1NQRUVERVJfT1NQRUVEUjBfMCAgICAgICAgICAgICAoMHgxVSA8PCBHUElPX09TUEVFREVSX09TUEVFRFIwX1BvcykgLyohPCAweDAwMDAwMDAxICovDQojZGVmaW5lIEdQSU9fT1NQRUVERVJfT1NQRUVEUjBfMSAgICAgICAgICAgICAoMHgyVSA8PCBHUElPX09TUEVFREVSX09TUEVFRFIwX1BvcykgLyohPCAweDAwMDAwMDAyICovDQoNCiNkZWZpbmUgR1BJT19PU1BFRURFUl9PU1BFRURSMV9Qb3MgICAgICAgICAgICgyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19PU1BFRURFUl9PU1BFRURSMV9Nc2sgICAgICAgICAgICgweDNVIDw8IEdQSU9fT1NQRUVERVJfT1NQRUVEUjFfUG9zKSAvKiE8IDB4MDAwMDAwMEMgKi8NCiNkZWZpbmUgR1BJT19PU1BFRURFUl9PU1BFRURSMSAgICAgICAgICAgICAgIEdQSU9fT1NQRUVERVJfT1NQRUVEUjFfTXNrICAgICAgICANCiNkZWZpbmUgR1BJT19PU1BFRURFUl9PU1BFRURSMV8wICAgICAgICAgICAgICgweDFVIDw8IEdQSU9fT1NQRUVERVJfT1NQRUVEUjFfUG9zKSAvKiE8IDB4MDAwMDAwMDQgKi8NCiNkZWZpbmUgR1BJT19PU1BFRURFUl9PU1BFRURSMV8xICAgICAgICAgICAgICgweDJVIDw8IEdQSU9fT1NQRUVERVJfT1NQRUVEUjFfUG9zKSAvKiE8IDB4MDAwMDAwMDggKi8NCg0KI2RlZmluZSBHUElPX09TUEVFREVSX09TUEVFRFIyX1BvcyAgICAgICAgICAgKDRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX09TUEVFREVSX09TUEVFRFIyX01zayAgICAgICAgICAgKDB4M1UgPDwgR1BJT19PU1BFRURFUl9PU1BFRURSMl9Qb3MpIC8qITwgMHgwMDAwMDAzMCAqLw0KI2RlZmluZSBHUElPX09TUEVFREVSX09TUEVFRFIyICAgICAgICAgICAgICAgR1BJT19PU1BFRURFUl9PU1BFRURSMl9Nc2sgICAgICAgIA0KI2RlZmluZSBHUElPX09TUEVFREVSX09TUEVFRFIyXzAgICAgICAgICAgICAgKDB4MVUgPDwgR1BJT19PU1BFRURFUl9PU1BFRURSMl9Qb3MpIC8qITwgMHgwMDAwMDAxMCAqLw0KI2RlZmluZSBHUElPX09TUEVFREVSX09TUEVFRFIyXzEgICAgICAgICAgICAgKDB4MlUgPDwgR1BJT19PU1BFRURFUl9PU1BFRURSMl9Qb3MpIC8qITwgMHgwMDAwMDAyMCAqLw0KDQojZGVmaW5lIEdQSU9fT1NQRUVERVJfT1NQRUVEUjNfUG9zICAgICAgICAgICAoNlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fT1NQRUVERVJfT1NQRUVEUjNfTXNrICAgICAgICAgICAoMHgzVSA8PCBHUElPX09TUEVFREVSX09TUEVFRFIzX1BvcykgLyohPCAweDAwMDAwMEMwICovDQojZGVmaW5lIEdQSU9fT1NQRUVERVJfT1NQRUVEUjMgICAgICAgICAgICAgICBHUElPX09TUEVFREVSX09TUEVFRFIzX01zayAgICAgICAgDQojZGVmaW5lIEdQSU9fT1NQRUVERVJfT1NQRUVEUjNfMCAgICAgICAgICAgICAoMHgxVSA8PCBHUElPX09TUEVFREVSX09TUEVFRFIzX1BvcykgLyohPCAweDAwMDAwMDQwICovDQojZGVmaW5lIEdQSU9fT1NQRUVERVJfT1NQRUVEUjNfMSAgICAgICAgICAgICAoMHgyVSA8PCBHUElPX09TUEVFREVSX09TUEVFRFIzX1BvcykgLyohPCAweDAwMDAwMDgwICovDQoNCiNkZWZpbmUgR1BJT19PU1BFRURFUl9PU1BFRURSNF9Qb3MgICAgICAgICAgICg4VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19PU1BFRURFUl9PU1BFRURSNF9Nc2sgICAgICAgICAgICgweDNVIDw8IEdQSU9fT1NQRUVERVJfT1NQRUVEUjRfUG9zKSAvKiE8IDB4MDAwMDAzMDAgKi8NCiNkZWZpbmUgR1BJT19PU1BFRURFUl9PU1BFRURSNCAgICAgICAgICAgICAgIEdQSU9fT1NQRUVERVJfT1NQRUVEUjRfTXNrICAgICAgICANCiNkZWZpbmUgR1BJT19PU1BFRURFUl9PU1BFRURSNF8wICAgICAgICAgICAgICgweDFVIDw8IEdQSU9fT1NQRUVERVJfT1NQRUVEUjRfUG9zKSAvKiE8IDB4MDAwMDAxMDAgKi8NCiNkZWZpbmUgR1BJT19PU1BFRURFUl9PU1BFRURSNF8xICAgICAgICAgICAgICgweDJVIDw8IEdQSU9fT1NQRUVERVJfT1NQRUVEUjRfUG9zKSAvKiE8IDB4MDAwMDAyMDAgKi8NCg0KI2RlZmluZSBHUElPX09TUEVFREVSX09TUEVFRFI1X1BvcyAgICAgICAgICAgKDEwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX09TUEVFREVSX09TUEVFRFI1X01zayAgICAgICAgICAgKDB4M1UgPDwgR1BJT19PU1BFRURFUl9PU1BFRURSNV9Qb3MpIC8qITwgMHgwMDAwMEMwMCAqLw0KI2RlZmluZSBHUElPX09TUEVFREVSX09TUEVFRFI1ICAgICAgICAgICAgICAgR1BJT19PU1BFRURFUl9PU1BFRURSNV9Nc2sgICAgICAgIA0KI2RlZmluZSBHUElPX09TUEVFREVSX09TUEVFRFI1XzAgICAgICAgICAgICAgKDB4MVUgPDwgR1BJT19PU1BFRURFUl9PU1BFRURSNV9Qb3MpIC8qITwgMHgwMDAwMDQwMCAqLw0KI2RlZmluZSBHUElPX09TUEVFREVSX09TUEVFRFI1XzEgICAgICAgICAgICAgKDB4MlUgPDwgR1BJT19PU1BFRURFUl9PU1BFRURSNV9Qb3MpIC8qITwgMHgwMDAwMDgwMCAqLw0KDQojZGVmaW5lIEdQSU9fT1NQRUVERVJfT1NQRUVEUjZfUG9zICAgICAgICAgICAoMTJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fT1NQRUVERVJfT1NQRUVEUjZfTXNrICAgICAgICAgICAoMHgzVSA8PCBHUElPX09TUEVFREVSX09TUEVFRFI2X1BvcykgLyohPCAweDAwMDAzMDAwICovDQojZGVmaW5lIEdQSU9fT1NQRUVERVJfT1NQRUVEUjYgICAgICAgICAgICAgICBHUElPX09TUEVFREVSX09TUEVFRFI2X01zayAgICAgICAgDQojZGVmaW5lIEdQSU9fT1NQRUVERVJfT1NQRUVEUjZfMCAgICAgICAgICAgICAoMHgxVSA8PCBHUElPX09TUEVFREVSX09TUEVFRFI2X1BvcykgLyohPCAweDAwMDAxMDAwICovDQojZGVmaW5lIEdQSU9fT1NQRUVERVJfT1NQRUVEUjZfMSAgICAgICAgICAgICAoMHgyVSA8PCBHUElPX09TUEVFREVSX09TUEVFRFI2X1BvcykgLyohPCAweDAwMDAyMDAwICovDQoNCiNkZWZpbmUgR1BJT19PU1BFRURFUl9PU1BFRURSN19Qb3MgICAgICAgICAgICgxNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19PU1BFRURFUl9PU1BFRURSN19Nc2sgICAgICAgICAgICgweDNVIDw8IEdQSU9fT1NQRUVERVJfT1NQRUVEUjdfUG9zKSAvKiE8IDB4MDAwMEMwMDAgKi8NCiNkZWZpbmUgR1BJT19PU1BFRURFUl9PU1BFRURSNyAgICAgICAgICAgICAgIEdQSU9fT1NQRUVERVJfT1NQRUVEUjdfTXNrICAgICAgICANCiNkZWZpbmUgR1BJT19PU1BFRURFUl9PU1BFRURSN18wICAgICAgICAgICAgICgweDFVIDw8IEdQSU9fT1NQRUVERVJfT1NQRUVEUjdfUG9zKSAvKiE8IDB4MDAwMDQwMDAgKi8NCiNkZWZpbmUgR1BJT19PU1BFRURFUl9PU1BFRURSN18xICAgICAgICAgICAgICgweDJVIDw8IEdQSU9fT1NQRUVERVJfT1NQRUVEUjdfUG9zKSAvKiE8IDB4MDAwMDgwMDAgKi8NCg0KI2RlZmluZSBHUElPX09TUEVFREVSX09TUEVFRFI4X1BvcyAgICAgICAgICAgKDE2VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX09TUEVFREVSX09TUEVFRFI4X01zayAgICAgICAgICAgKDB4M1UgPDwgR1BJT19PU1BFRURFUl9PU1BFRURSOF9Qb3MpIC8qITwgMHgwMDAzMDAwMCAqLw0KI2RlZmluZSBHUElPX09TUEVFREVSX09TUEVFRFI4ICAgICAgICAgICAgICAgR1BJT19PU1BFRURFUl9PU1BFRURSOF9Nc2sgICAgICAgIA0KI2RlZmluZSBHUElPX09TUEVFREVSX09TUEVFRFI4XzAgICAgICAgICAgICAgKDB4MVUgPDwgR1BJT19PU1BFRURFUl9PU1BFRURSOF9Qb3MpIC8qITwgMHgwMDAxMDAwMCAqLw0KI2RlZmluZSBHUElPX09TUEVFREVSX09TUEVFRFI4XzEgICAgICAgICAgICAgKDB4MlUgPDwgR1BJT19PU1BFRURFUl9PU1BFRURSOF9Qb3MpIC8qITwgMHgwMDAyMDAwMCAqLw0KDQojZGVmaW5lIEdQSU9fT1NQRUVERVJfT1NQRUVEUjlfUG9zICAgICAgICAgICAoMThVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fT1NQRUVERVJfT1NQRUVEUjlfTXNrICAgICAgICAgICAoMHgzVSA8PCBHUElPX09TUEVFREVSX09TUEVFRFI5X1BvcykgLyohPCAweDAwMEMwMDAwICovDQojZGVmaW5lIEdQSU9fT1NQRUVERVJfT1NQRUVEUjkgICAgICAgICAgICAgICBHUElPX09TUEVFREVSX09TUEVFRFI5X01zayAgICAgICAgDQojZGVmaW5lIEdQSU9fT1NQRUVERVJfT1NQRUVEUjlfMCAgICAgICAgICAgICAoMHgxVSA8PCBHUElPX09TUEVFREVSX09TUEVFRFI5X1BvcykgLyohPCAweDAwMDQwMDAwICovDQojZGVmaW5lIEdQSU9fT1NQRUVERVJfT1NQRUVEUjlfMSAgICAgICAgICAgICAoMHgyVSA8PCBHUElPX09TUEVFREVSX09TUEVFRFI5X1BvcykgLyohPCAweDAwMDgwMDAwICovDQoNCiNkZWZpbmUgR1BJT19PU1BFRURFUl9PU1BFRURSMTBfUG9zICAgICAgICAgICgyMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19PU1BFRURFUl9PU1BFRURSMTBfTXNrICAgICAgICAgICgweDNVIDw8IEdQSU9fT1NQRUVERVJfT1NQRUVEUjEwX1BvcykgLyohPCAweDAwMzAwMDAwICovDQojZGVmaW5lIEdQSU9fT1NQRUVERVJfT1NQRUVEUjEwICAgICAgICAgICAgICBHUElPX09TUEVFREVSX09TUEVFRFIxMF9Nc2sgICAgICAgDQojZGVmaW5lIEdQSU9fT1NQRUVERVJfT1NQRUVEUjEwXzAgICAgICAgICAgICAoMHgxVSA8PCBHUElPX09TUEVFREVSX09TUEVFRFIxMF9Qb3MpIC8qITwgMHgwMDEwMDAwMCAqLw0KI2RlZmluZSBHUElPX09TUEVFREVSX09TUEVFRFIxMF8xICAgICAgICAgICAgKDB4MlUgPDwgR1BJT19PU1BFRURFUl9PU1BFRURSMTBfUG9zKSAvKiE8IDB4MDAyMDAwMDAgKi8NCg0KI2RlZmluZSBHUElPX09TUEVFREVSX09TUEVFRFIxMV9Qb3MgICAgICAgICAgKDIyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX09TUEVFREVSX09TUEVFRFIxMV9Nc2sgICAgICAgICAgKDB4M1UgPDwgR1BJT19PU1BFRURFUl9PU1BFRURSMTFfUG9zKSAvKiE8IDB4MDBDMDAwMDAgKi8NCiNkZWZpbmUgR1BJT19PU1BFRURFUl9PU1BFRURSMTEgICAgICAgICAgICAgIEdQSU9fT1NQRUVERVJfT1NQRUVEUjExX01zayAgICAgICANCiNkZWZpbmUgR1BJT19PU1BFRURFUl9PU1BFRURSMTFfMCAgICAgICAgICAgICgweDFVIDw8IEdQSU9fT1NQRUVERVJfT1NQRUVEUjExX1BvcykgLyohPCAweDAwNDAwMDAwICovDQojZGVmaW5lIEdQSU9fT1NQRUVERVJfT1NQRUVEUjExXzEgICAgICAgICAgICAoMHgyVSA8PCBHUElPX09TUEVFREVSX09TUEVFRFIxMV9Qb3MpIC8qITwgMHgwMDgwMDAwMCAqLw0KDQojZGVmaW5lIEdQSU9fT1NQRUVERVJfT1NQRUVEUjEyX1BvcyAgICAgICAgICAoMjRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fT1NQRUVERVJfT1NQRUVEUjEyX01zayAgICAgICAgICAoMHgzVSA8PCBHUElPX09TUEVFREVSX09TUEVFRFIxMl9Qb3MpIC8qITwgMHgwMzAwMDAwMCAqLw0KI2RlZmluZSBHUElPX09TUEVFREVSX09TUEVFRFIxMiAgICAgICAgICAgICAgR1BJT19PU1BFRURFUl9PU1BFRURSMTJfTXNrICAgICAgIA0KI2RlZmluZSBHUElPX09TUEVFREVSX09TUEVFRFIxMl8wICAgICAgICAgICAgKDB4MVUgPDwgR1BJT19PU1BFRURFUl9PU1BFRURSMTJfUG9zKSAvKiE8IDB4MDEwMDAwMDAgKi8NCiNkZWZpbmUgR1BJT19PU1BFRURFUl9PU1BFRURSMTJfMSAgICAgICAgICAgICgweDJVIDw8IEdQSU9fT1NQRUVERVJfT1NQRUVEUjEyX1BvcykgLyohPCAweDAyMDAwMDAwICovDQoNCiNkZWZpbmUgR1BJT19PU1BFRURFUl9PU1BFRURSMTNfUG9zICAgICAgICAgICgyNlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19PU1BFRURFUl9PU1BFRURSMTNfTXNrICAgICAgICAgICgweDNVIDw8IEdQSU9fT1NQRUVERVJfT1NQRUVEUjEzX1BvcykgLyohPCAweDBDMDAwMDAwICovDQojZGVmaW5lIEdQSU9fT1NQRUVERVJfT1NQRUVEUjEzICAgICAgICAgICAgICBHUElPX09TUEVFREVSX09TUEVFRFIxM19Nc2sgICAgICAgDQojZGVmaW5lIEdQSU9fT1NQRUVERVJfT1NQRUVEUjEzXzAgICAgICAgICAgICAoMHgxVSA8PCBHUElPX09TUEVFREVSX09TUEVFRFIxM19Qb3MpIC8qITwgMHgwNDAwMDAwMCAqLw0KI2RlZmluZSBHUElPX09TUEVFREVSX09TUEVFRFIxM18xICAgICAgICAgICAgKDB4MlUgPDwgR1BJT19PU1BFRURFUl9PU1BFRURSMTNfUG9zKSAvKiE8IDB4MDgwMDAwMDAgKi8NCg0KI2RlZmluZSBHUElPX09TUEVFREVSX09TUEVFRFIxNF9Qb3MgICAgICAgICAgKDI4VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX09TUEVFREVSX09TUEVFRFIxNF9Nc2sgICAgICAgICAgKDB4M1UgPDwgR1BJT19PU1BFRURFUl9PU1BFRURSMTRfUG9zKSAvKiE8IDB4MzAwMDAwMDAgKi8NCiNkZWZpbmUgR1BJT19PU1BFRURFUl9PU1BFRURSMTQgICAgICAgICAgICAgIEdQSU9fT1NQRUVERVJfT1NQRUVEUjE0X01zayAgICAgICANCiNkZWZpbmUgR1BJT19PU1BFRURFUl9PU1BFRURSMTRfMCAgICAgICAgICAgICgweDFVIDw8IEdQSU9fT1NQRUVERVJfT1NQRUVEUjE0X1BvcykgLyohPCAweDEwMDAwMDAwICovDQojZGVmaW5lIEdQSU9fT1NQRUVERVJfT1NQRUVEUjE0XzEgICAgICAgICAgICAoMHgyVSA8PCBHUElPX09TUEVFREVSX09TUEVFRFIxNF9Qb3MpIC8qITwgMHgyMDAwMDAwMCAqLw0KDQojZGVmaW5lIEdQSU9fT1NQRUVERVJfT1NQRUVEUjE1X1BvcyAgICAgICAgICAoMzBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fT1NQRUVERVJfT1NQRUVEUjE1X01zayAgICAgICAgICAoMHgzVSA8PCBHUElPX09TUEVFREVSX09TUEVFRFIxNV9Qb3MpIC8qITwgMHhDMDAwMDAwMCAqLw0KI2RlZmluZSBHUElPX09TUEVFREVSX09TUEVFRFIxNSAgICAgICAgICAgICAgR1BJT19PU1BFRURFUl9PU1BFRURSMTVfTXNrICAgICAgIA0KI2RlZmluZSBHUElPX09TUEVFREVSX09TUEVFRFIxNV8wICAgICAgICAgICAgKDB4MVUgPDwgR1BJT19PU1BFRURFUl9PU1BFRURSMTVfUG9zKSAvKiE8IDB4NDAwMDAwMDAgKi8NCiNkZWZpbmUgR1BJT19PU1BFRURFUl9PU1BFRURSMTVfMSAgICAgICAgICAgICgweDJVIDw8IEdQSU9fT1NQRUVERVJfT1NQRUVEUjE1X1BvcykgLyohPCAweDgwMDAwMDAwICovDQoNCi8qKioqKioqKioqKioqKioqKiogIEJpdHMgZGVmaW5pdGlvbiBmb3IgR1BJT19QVVBEUiByZWdpc3RlciAgKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIEdQSU9fUFVQRFJfUFVQRFIwX1BvcyAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fUFVQRFJfUFVQRFIwX01zayAgICAgICAgICAgICAgICAoMHgzVSA8PCBHUElPX1BVUERSX1BVUERSMF9Qb3MpICAgLyohPCAweDAwMDAwMDAzICovDQojZGVmaW5lIEdQSU9fUFVQRFJfUFVQRFIwICAgICAgICAgICAgICAgICAgICBHUElPX1BVUERSX1BVUERSMF9Nc2sgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fUFVQRFJfUFVQRFIwXzAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBHUElPX1BVUERSX1BVUERSMF9Qb3MpICAgLyohPCAweDAwMDAwMDAxICovDQojZGVmaW5lIEdQSU9fUFVQRFJfUFVQRFIwXzEgICAgICAgICAgICAgICAgICAoMHgyVSA8PCBHUElPX1BVUERSX1BVUERSMF9Qb3MpICAgLyohPCAweDAwMDAwMDAyICovDQoNCiNkZWZpbmUgR1BJT19QVVBEUl9QVVBEUjFfUG9zICAgICAgICAgICAgICAgICgyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19QVVBEUl9QVVBEUjFfTXNrICAgICAgICAgICAgICAgICgweDNVIDw8IEdQSU9fUFVQRFJfUFVQRFIxX1BvcykgICAvKiE8IDB4MDAwMDAwMEMgKi8NCiNkZWZpbmUgR1BJT19QVVBEUl9QVVBEUjEgICAgICAgICAgICAgICAgICAgIEdQSU9fUFVQRFJfUFVQRFIxX01zayAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19QVVBEUl9QVVBEUjFfMCAgICAgICAgICAgICAgICAgICgweDFVIDw8IEdQSU9fUFVQRFJfUFVQRFIxX1BvcykgICAvKiE8IDB4MDAwMDAwMDQgKi8NCiNkZWZpbmUgR1BJT19QVVBEUl9QVVBEUjFfMSAgICAgICAgICAgICAgICAgICgweDJVIDw8IEdQSU9fUFVQRFJfUFVQRFIxX1BvcykgICAvKiE8IDB4MDAwMDAwMDggKi8NCg0KI2RlZmluZSBHUElPX1BVUERSX1BVUERSMl9Qb3MgICAgICAgICAgICAgICAgKDRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX1BVUERSX1BVUERSMl9Nc2sgICAgICAgICAgICAgICAgKDB4M1UgPDwgR1BJT19QVVBEUl9QVVBEUjJfUG9zKSAgIC8qITwgMHgwMDAwMDAzMCAqLw0KI2RlZmluZSBHUElPX1BVUERSX1BVUERSMiAgICAgICAgICAgICAgICAgICAgR1BJT19QVVBEUl9QVVBEUjJfTXNrICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX1BVUERSX1BVUERSMl8wICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgR1BJT19QVVBEUl9QVVBEUjJfUG9zKSAgIC8qITwgMHgwMDAwMDAxMCAqLw0KI2RlZmluZSBHUElPX1BVUERSX1BVUERSMl8xICAgICAgICAgICAgICAgICAgKDB4MlUgPDwgR1BJT19QVVBEUl9QVVBEUjJfUG9zKSAgIC8qITwgMHgwMDAwMDAyMCAqLw0KDQojZGVmaW5lIEdQSU9fUFVQRFJfUFVQRFIzX1BvcyAgICAgICAgICAgICAgICAoNlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fUFVQRFJfUFVQRFIzX01zayAgICAgICAgICAgICAgICAoMHgzVSA8PCBHUElPX1BVUERSX1BVUERSM19Qb3MpICAgLyohPCAweDAwMDAwMEMwICovDQojZGVmaW5lIEdQSU9fUFVQRFJfUFVQRFIzICAgICAgICAgICAgICAgICAgICBHUElPX1BVUERSX1BVUERSM19Nc2sgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fUFVQRFJfUFVQRFIzXzAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBHUElPX1BVUERSX1BVUERSM19Qb3MpICAgLyohPCAweDAwMDAwMDQwICovDQojZGVmaW5lIEdQSU9fUFVQRFJfUFVQRFIzXzEgICAgICAgICAgICAgICAgICAoMHgyVSA8PCBHUElPX1BVUERSX1BVUERSM19Qb3MpICAgLyohPCAweDAwMDAwMDgwICovDQoNCiNkZWZpbmUgR1BJT19QVVBEUl9QVVBEUjRfUG9zICAgICAgICAgICAgICAgICg4VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19QVVBEUl9QVVBEUjRfTXNrICAgICAgICAgICAgICAgICgweDNVIDw8IEdQSU9fUFVQRFJfUFVQRFI0X1BvcykgICAvKiE8IDB4MDAwMDAzMDAgKi8NCiNkZWZpbmUgR1BJT19QVVBEUl9QVVBEUjQgICAgICAgICAgICAgICAgICAgIEdQSU9fUFVQRFJfUFVQRFI0X01zayAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19QVVBEUl9QVVBEUjRfMCAgICAgICAgICAgICAgICAgICgweDFVIDw8IEdQSU9fUFVQRFJfUFVQRFI0X1BvcykgICAvKiE8IDB4MDAwMDAxMDAgKi8NCiNkZWZpbmUgR1BJT19QVVBEUl9QVVBEUjRfMSAgICAgICAgICAgICAgICAgICgweDJVIDw8IEdQSU9fUFVQRFJfUFVQRFI0X1BvcykgICAvKiE8IDB4MDAwMDAyMDAgKi8NCg0KI2RlZmluZSBHUElPX1BVUERSX1BVUERSNV9Qb3MgICAgICAgICAgICAgICAgKDEwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX1BVUERSX1BVUERSNV9Nc2sgICAgICAgICAgICAgICAgKDB4M1UgPDwgR1BJT19QVVBEUl9QVVBEUjVfUG9zKSAgIC8qITwgMHgwMDAwMEMwMCAqLw0KI2RlZmluZSBHUElPX1BVUERSX1BVUERSNSAgICAgICAgICAgICAgICAgICAgR1BJT19QVVBEUl9QVVBEUjVfTXNrICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX1BVUERSX1BVUERSNV8wICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgR1BJT19QVVBEUl9QVVBEUjVfUG9zKSAgIC8qITwgMHgwMDAwMDQwMCAqLw0KI2RlZmluZSBHUElPX1BVUERSX1BVUERSNV8xICAgICAgICAgICAgICAgICAgKDB4MlUgPDwgR1BJT19QVVBEUl9QVVBEUjVfUG9zKSAgIC8qITwgMHgwMDAwMDgwMCAqLw0KDQojZGVmaW5lIEdQSU9fUFVQRFJfUFVQRFI2X1BvcyAgICAgICAgICAgICAgICAoMTJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fUFVQRFJfUFVQRFI2X01zayAgICAgICAgICAgICAgICAoMHgzVSA8PCBHUElPX1BVUERSX1BVUERSNl9Qb3MpICAgLyohPCAweDAwMDAzMDAwICovDQojZGVmaW5lIEdQSU9fUFVQRFJfUFVQRFI2ICAgICAgICAgICAgICAgICAgICBHUElPX1BVUERSX1BVUERSNl9Nc2sgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fUFVQRFJfUFVQRFI2XzAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBHUElPX1BVUERSX1BVUERSNl9Qb3MpICAgLyohPCAweDAwMDAxMDAwICovDQojZGVmaW5lIEdQSU9fUFVQRFJfUFVQRFI2XzEgICAgICAgICAgICAgICAgICAoMHgyVSA8PCBHUElPX1BVUERSX1BVUERSNl9Qb3MpICAgLyohPCAweDAwMDAyMDAwICovDQoNCiNkZWZpbmUgR1BJT19QVVBEUl9QVVBEUjdfUG9zICAgICAgICAgICAgICAgICgxNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19QVVBEUl9QVVBEUjdfTXNrICAgICAgICAgICAgICAgICgweDNVIDw8IEdQSU9fUFVQRFJfUFVQRFI3X1BvcykgICAvKiE8IDB4MDAwMEMwMDAgKi8NCiNkZWZpbmUgR1BJT19QVVBEUl9QVVBEUjcgICAgICAgICAgICAgICAgICAgIEdQSU9fUFVQRFJfUFVQRFI3X01zayAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19QVVBEUl9QVVBEUjdfMCAgICAgICAgICAgICAgICAgICgweDFVIDw8IEdQSU9fUFVQRFJfUFVQRFI3X1BvcykgICAvKiE8IDB4MDAwMDQwMDAgKi8NCiNkZWZpbmUgR1BJT19QVVBEUl9QVVBEUjdfMSAgICAgICAgICAgICAgICAgICgweDJVIDw8IEdQSU9fUFVQRFJfUFVQRFI3X1BvcykgICAvKiE8IDB4MDAwMDgwMDAgKi8NCg0KI2RlZmluZSBHUElPX1BVUERSX1BVUERSOF9Qb3MgICAgICAgICAgICAgICAgKDE2VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX1BVUERSX1BVUERSOF9Nc2sgICAgICAgICAgICAgICAgKDB4M1UgPDwgR1BJT19QVVBEUl9QVVBEUjhfUG9zKSAgIC8qITwgMHgwMDAzMDAwMCAqLw0KI2RlZmluZSBHUElPX1BVUERSX1BVUERSOCAgICAgICAgICAgICAgICAgICAgR1BJT19QVVBEUl9QVVBEUjhfTXNrICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX1BVUERSX1BVUERSOF8wICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgR1BJT19QVVBEUl9QVVBEUjhfUG9zKSAgIC8qITwgMHgwMDAxMDAwMCAqLw0KI2RlZmluZSBHUElPX1BVUERSX1BVUERSOF8xICAgICAgICAgICAgICAgICAgKDB4MlUgPDwgR1BJT19QVVBEUl9QVVBEUjhfUG9zKSAgIC8qITwgMHgwMDAyMDAwMCAqLw0KDQojZGVmaW5lIEdQSU9fUFVQRFJfUFVQRFI5X1BvcyAgICAgICAgICAgICAgICAoMThVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fUFVQRFJfUFVQRFI5X01zayAgICAgICAgICAgICAgICAoMHgzVSA8PCBHUElPX1BVUERSX1BVUERSOV9Qb3MpICAgLyohPCAweDAwMEMwMDAwICovDQojZGVmaW5lIEdQSU9fUFVQRFJfUFVQRFI5ICAgICAgICAgICAgICAgICAgICBHUElPX1BVUERSX1BVUERSOV9Nc2sgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fUFVQRFJfUFVQRFI5XzAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBHUElPX1BVUERSX1BVUERSOV9Qb3MpICAgLyohPCAweDAwMDQwMDAwICovDQojZGVmaW5lIEdQSU9fUFVQRFJfUFVQRFI5XzEgICAgICAgICAgICAgICAgICAoMHgyVSA8PCBHUElPX1BVUERSX1BVUERSOV9Qb3MpICAgLyohPCAweDAwMDgwMDAwICovDQoNCiNkZWZpbmUgR1BJT19QVVBEUl9QVVBEUjEwX1BvcyAgICAgICAgICAgICAgICgyMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19QVVBEUl9QVVBEUjEwX01zayAgICAgICAgICAgICAgICgweDNVIDw8IEdQSU9fUFVQRFJfUFVQRFIxMF9Qb3MpICAvKiE8IDB4MDAzMDAwMDAgKi8NCiNkZWZpbmUgR1BJT19QVVBEUl9QVVBEUjEwICAgICAgICAgICAgICAgICAgIEdQSU9fUFVQRFJfUFVQRFIxMF9Nc2sgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19QVVBEUl9QVVBEUjEwXzAgICAgICAgICAgICAgICAgICgweDFVIDw8IEdQSU9fUFVQRFJfUFVQRFIxMF9Qb3MpICAvKiE8IDB4MDAxMDAwMDAgKi8NCiNkZWZpbmUgR1BJT19QVVBEUl9QVVBEUjEwXzEgICAgICAgICAgICAgICAgICgweDJVIDw8IEdQSU9fUFVQRFJfUFVQRFIxMF9Qb3MpICAvKiE8IDB4MDAyMDAwMDAgKi8NCg0KI2RlZmluZSBHUElPX1BVUERSX1BVUERSMTFfUG9zICAgICAgICAgICAgICAgKDIyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX1BVUERSX1BVUERSMTFfTXNrICAgICAgICAgICAgICAgKDB4M1UgPDwgR1BJT19QVVBEUl9QVVBEUjExX1BvcykgIC8qITwgMHgwMEMwMDAwMCAqLw0KI2RlZmluZSBHUElPX1BVUERSX1BVUERSMTEgICAgICAgICAgICAgICAgICAgR1BJT19QVVBEUl9QVVBEUjExX01zayAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX1BVUERSX1BVUERSMTFfMCAgICAgICAgICAgICAgICAgKDB4MVUgPDwgR1BJT19QVVBEUl9QVVBEUjExX1BvcykgIC8qITwgMHgwMDQwMDAwMCAqLw0KI2RlZmluZSBHUElPX1BVUERSX1BVUERSMTFfMSAgICAgICAgICAgICAgICAgKDB4MlUgPDwgR1BJT19QVVBEUl9QVVBEUjExX1BvcykgIC8qITwgMHgwMDgwMDAwMCAqLw0KDQojZGVmaW5lIEdQSU9fUFVQRFJfUFVQRFIxMl9Qb3MgICAgICAgICAgICAgICAoMjRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fUFVQRFJfUFVQRFIxMl9Nc2sgICAgICAgICAgICAgICAoMHgzVSA8PCBHUElPX1BVUERSX1BVUERSMTJfUG9zKSAgLyohPCAweDAzMDAwMDAwICovDQojZGVmaW5lIEdQSU9fUFVQRFJfUFVQRFIxMiAgICAgICAgICAgICAgICAgICBHUElPX1BVUERSX1BVUERSMTJfTXNrICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fUFVQRFJfUFVQRFIxMl8wICAgICAgICAgICAgICAgICAoMHgxVSA8PCBHUElPX1BVUERSX1BVUERSMTJfUG9zKSAgLyohPCAweDAxMDAwMDAwICovDQojZGVmaW5lIEdQSU9fUFVQRFJfUFVQRFIxMl8xICAgICAgICAgICAgICAgICAoMHgyVSA8PCBHUElPX1BVUERSX1BVUERSMTJfUG9zKSAgLyohPCAweDAyMDAwMDAwICovDQoNCiNkZWZpbmUgR1BJT19QVVBEUl9QVVBEUjEzX1BvcyAgICAgICAgICAgICAgICgyNlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19QVVBEUl9QVVBEUjEzX01zayAgICAgICAgICAgICAgICgweDNVIDw8IEdQSU9fUFVQRFJfUFVQRFIxM19Qb3MpICAvKiE8IDB4MEMwMDAwMDAgKi8NCiNkZWZpbmUgR1BJT19QVVBEUl9QVVBEUjEzICAgICAgICAgICAgICAgICAgIEdQSU9fUFVQRFJfUFVQRFIxM19Nc2sgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19QVVBEUl9QVVBEUjEzXzAgICAgICAgICAgICAgICAgICgweDFVIDw8IEdQSU9fUFVQRFJfUFVQRFIxM19Qb3MpICAvKiE8IDB4MDQwMDAwMDAgKi8NCiNkZWZpbmUgR1BJT19QVVBEUl9QVVBEUjEzXzEgICAgICAgICAgICAgICAgICgweDJVIDw8IEdQSU9fUFVQRFJfUFVQRFIxM19Qb3MpICAvKiE8IDB4MDgwMDAwMDAgKi8NCg0KI2RlZmluZSBHUElPX1BVUERSX1BVUERSMTRfUG9zICAgICAgICAgICAgICAgKDI4VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX1BVUERSX1BVUERSMTRfTXNrICAgICAgICAgICAgICAgKDB4M1UgPDwgR1BJT19QVVBEUl9QVVBEUjE0X1BvcykgIC8qITwgMHgzMDAwMDAwMCAqLw0KI2RlZmluZSBHUElPX1BVUERSX1BVUERSMTQgICAgICAgICAgICAgICAgICAgR1BJT19QVVBEUl9QVVBEUjE0X01zayAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX1BVUERSX1BVUERSMTRfMCAgICAgICAgICAgICAgICAgKDB4MVUgPDwgR1BJT19QVVBEUl9QVVBEUjE0X1BvcykgIC8qITwgMHgxMDAwMDAwMCAqLw0KI2RlZmluZSBHUElPX1BVUERSX1BVUERSMTRfMSAgICAgICAgICAgICAgICAgKDB4MlUgPDwgR1BJT19QVVBEUl9QVVBEUjE0X1BvcykgIC8qITwgMHgyMDAwMDAwMCAqLw0KI2RlZmluZSBHUElPX1BVUERSX1BVUERSMTVfUG9zICAgICAgICAgICAgICAgKDMwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX1BVUERSX1BVUERSMTVfTXNrICAgICAgICAgICAgICAgKDB4M1UgPDwgR1BJT19QVVBEUl9QVVBEUjE1X1BvcykgIC8qITwgMHhDMDAwMDAwMCAqLw0KI2RlZmluZSBHUElPX1BVUERSX1BVUERSMTUgICAgICAgICAgICAgICAgICAgR1BJT19QVVBEUl9QVVBEUjE1X01zayAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX1BVUERSX1BVUERSMTVfMCAgICAgICAgICAgICAgICAgKDB4MVUgPDwgR1BJT19QVVBEUl9QVVBEUjE1X1BvcykgIC8qITwgMHg0MDAwMDAwMCAqLw0KI2RlZmluZSBHUElPX1BVUERSX1BVUERSMTVfMSAgICAgICAgICAgICAgICAgKDB4MlUgPDwgR1BJT19QVVBEUl9QVVBEUjE1X1BvcykgIC8qITwgMHg4MDAwMDAwMCAqLw0KDQovKioqKioqKioqKioqKioqKioqICBCaXRzIGRlZmluaXRpb24gZm9yIEdQSU9fSURSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBHUElPX0lEUl9JRFJfMCAgICAgICAgICAgICAgICAgICAgICAgKDB4MDAwMDAwMDFVKSAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX0lEUl9JRFJfMSAgICAgICAgICAgICAgICAgICAgICAgKDB4MDAwMDAwMDJVKSAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX0lEUl9JRFJfMiAgICAgICAgICAgICAgICAgICAgICAgKDB4MDAwMDAwMDRVKSAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX0lEUl9JRFJfMyAgICAgICAgICAgICAgICAgICAgICAgKDB4MDAwMDAwMDhVKSAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX0lEUl9JRFJfNCAgICAgICAgICAgICAgICAgICAgICAgKDB4MDAwMDAwMTBVKSAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX0lEUl9JRFJfNSAgICAgICAgICAgICAgICAgICAgICAgKDB4MDAwMDAwMjBVKSAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX0lEUl9JRFJfNiAgICAgICAgICAgICAgICAgICAgICAgKDB4MDAwMDAwNDBVKSAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX0lEUl9JRFJfNyAgICAgICAgICAgICAgICAgICAgICAgKDB4MDAwMDAwODBVKSAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX0lEUl9JRFJfOCAgICAgICAgICAgICAgICAgICAgICAgKDB4MDAwMDAxMDBVKSAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX0lEUl9JRFJfOSAgICAgICAgICAgICAgICAgICAgICAgKDB4MDAwMDAyMDBVKSAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX0lEUl9JRFJfMTAgICAgICAgICAgICAgICAgICAgICAgKDB4MDAwMDA0MDBVKSAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX0lEUl9JRFJfMTEgICAgICAgICAgICAgICAgICAgICAgKDB4MDAwMDA4MDBVKSAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX0lEUl9JRFJfMTIgICAgICAgICAgICAgICAgICAgICAgKDB4MDAwMDEwMDBVKSAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX0lEUl9JRFJfMTMgICAgICAgICAgICAgICAgICAgICAgKDB4MDAwMDIwMDBVKSAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX0lEUl9JRFJfMTQgICAgICAgICAgICAgICAgICAgICAgKDB4MDAwMDQwMDBVKSAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX0lEUl9JRFJfMTUgICAgICAgICAgICAgICAgICAgICAgKDB4MDAwMDgwMDBVKSAgICAgICAgICAgICAgICAgICAgIA0KDQovKioqKioqKioqKioqKioqKioqICBCaXRzIGRlZmluaXRpb24gZm9yIEdQSU9fT0RSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBHUElPX09EUl9PRFJfMCAgICAgICAgICAgICAgICAgICAgICAgKDB4MDAwMDAwMDFVKSAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX09EUl9PRFJfMSAgICAgICAgICAgICAgICAgICAgICAgKDB4MDAwMDAwMDJVKSAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX09EUl9PRFJfMiAgICAgICAgICAgICAgICAgICAgICAgKDB4MDAwMDAwMDRVKSAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX09EUl9PRFJfMyAgICAgICAgICAgICAgICAgICAgICAgKDB4MDAwMDAwMDhVKSAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX09EUl9PRFJfNCAgICAgICAgICAgICAgICAgICAgICAgKDB4MDAwMDAwMTBVKSAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX09EUl9PRFJfNSAgICAgICAgICAgICAgICAgICAgICAgKDB4MDAwMDAwMjBVKSAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX09EUl9PRFJfNiAgICAgICAgICAgICAgICAgICAgICAgKDB4MDAwMDAwNDBVKSAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX09EUl9PRFJfNyAgICAgICAgICAgICAgICAgICAgICAgKDB4MDAwMDAwODBVKSAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX09EUl9PRFJfOCAgICAgICAgICAgICAgICAgICAgICAgKDB4MDAwMDAxMDBVKSAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX09EUl9PRFJfOSAgICAgICAgICAgICAgICAgICAgICAgKDB4MDAwMDAyMDBVKSAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX09EUl9PRFJfMTAgICAgICAgICAgICAgICAgICAgICAgKDB4MDAwMDA0MDBVKSAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX09EUl9PRFJfMTEgICAgICAgICAgICAgICAgICAgICAgKDB4MDAwMDA4MDBVKSAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX09EUl9PRFJfMTIgICAgICAgICAgICAgICAgICAgICAgKDB4MDAwMDEwMDBVKSAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX09EUl9PRFJfMTMgICAgICAgICAgICAgICAgICAgICAgKDB4MDAwMDIwMDBVKSAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX09EUl9PRFJfMTQgICAgICAgICAgICAgICAgICAgICAgKDB4MDAwMDQwMDBVKSAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX09EUl9PRFJfMTUgICAgICAgICAgICAgICAgICAgICAgKDB4MDAwMDgwMDBVKSAgICAgICAgICAgICAgICAgICAgIA0KDQovKioqKioqKioqKioqKioqKioqICBCaXRzIGRlZmluaXRpb24gZm9yIEdQSU9fQlNSUiByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBHUElPX0JTUlJfQlNfMCAgICAgICAgICAgICAgICAgICAgICAgKDB4MDAwMDAwMDFVKSAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX0JTUlJfQlNfMSAgICAgICAgICAgICAgICAgICAgICAgKDB4MDAwMDAwMDJVKSAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX0JTUlJfQlNfMiAgICAgICAgICAgICAgICAgICAgICAgKDB4MDAwMDAwMDRVKSAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX0JTUlJfQlNfMyAgICAgICAgICAgICAgICAgICAgICAgKDB4MDAwMDAwMDhVKSAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX0JTUlJfQlNfNCAgICAgICAgICAgICAgICAgICAgICAgKDB4MDAwMDAwMTBVKSAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX0JTUlJfQlNfNSAgICAgICAgICAgICAgICAgICAgICAgKDB4MDAwMDAwMjBVKSAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX0JTUlJfQlNfNiAgICAgICAgICAgICAgICAgICAgICAgKDB4MDAwMDAwNDBVKSAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX0JTUlJfQlNfNyAgICAgICAgICAgICAgICAgICAgICAgKDB4MDAwMDAwODBVKSAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX0JTUlJfQlNfOCAgICAgICAgICAgICAgICAgICAgICAgKDB4MDAwMDAxMDBVKSAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX0JTUlJfQlNfOSAgICAgICAgICAgICAgICAgICAgICAgKDB4MDAwMDAyMDBVKSAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX0JTUlJfQlNfMTAgICAgICAgICAgICAgICAgICAgICAgKDB4MDAwMDA0MDBVKSAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX0JTUlJfQlNfMTEgICAgICAgICAgICAgICAgICAgICAgKDB4MDAwMDA4MDBVKSAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX0JTUlJfQlNfMTIgICAgICAgICAgICAgICAgICAgICAgKDB4MDAwMDEwMDBVKSAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX0JTUlJfQlNfMTMgICAgICAgICAgICAgICAgICAgICAgKDB4MDAwMDIwMDBVKSAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX0JTUlJfQlNfMTQgICAgICAgICAgICAgICAgICAgICAgKDB4MDAwMDQwMDBVKSAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX0JTUlJfQlNfMTUgICAgICAgICAgICAgICAgICAgICAgKDB4MDAwMDgwMDBVKSAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX0JTUlJfQlJfMCAgICAgICAgICAgICAgICAgICAgICAgKDB4MDAwMTAwMDBVKSAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX0JTUlJfQlJfMSAgICAgICAgICAgICAgICAgICAgICAgKDB4MDAwMjAwMDBVKSAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX0JTUlJfQlJfMiAgICAgICAgICAgICAgICAgICAgICAgKDB4MDAwNDAwMDBVKSAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX0JTUlJfQlJfMyAgICAgICAgICAgICAgICAgICAgICAgKDB4MDAwODAwMDBVKSAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX0JTUlJfQlJfNCAgICAgICAgICAgICAgICAgICAgICAgKDB4MDAxMDAwMDBVKSAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX0JTUlJfQlJfNSAgICAgICAgICAgICAgICAgICAgICAgKDB4MDAyMDAwMDBVKSAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX0JTUlJfQlJfNiAgICAgICAgICAgICAgICAgICAgICAgKDB4MDA0MDAwMDBVKSAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX0JTUlJfQlJfNyAgICAgICAgICAgICAgICAgICAgICAgKDB4MDA4MDAwMDBVKSAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX0JTUlJfQlJfOCAgICAgICAgICAgICAgICAgICAgICAgKDB4MDEwMDAwMDBVKSAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX0JTUlJfQlJfOSAgICAgICAgICAgICAgICAgICAgICAgKDB4MDIwMDAwMDBVKSAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX0JTUlJfQlJfMTAgICAgICAgICAgICAgICAgICAgICAgKDB4MDQwMDAwMDBVKSAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX0JTUlJfQlJfMTEgICAgICAgICAgICAgICAgICAgICAgKDB4MDgwMDAwMDBVKSAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX0JTUlJfQlJfMTIgICAgICAgICAgICAgICAgICAgICAgKDB4MTAwMDAwMDBVKSAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX0JTUlJfQlJfMTMgICAgICAgICAgICAgICAgICAgICAgKDB4MjAwMDAwMDBVKSAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX0JTUlJfQlJfMTQgICAgICAgICAgICAgICAgICAgICAgKDB4NDAwMDAwMDBVKSAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX0JTUlJfQlJfMTUgICAgICAgICAgICAgICAgICAgICAgKDB4ODAwMDAwMDBVKSAgICAgICAgICAgICAgICAgICAgIA0KDQovKioqKioqKioqKioqKioqKioqIEJpdCBkZWZpbml0aW9uIGZvciBHUElPX0xDS1IgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBHUElPX0xDS1JfTENLMF9Qb3MgICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX0xDS1JfTENLMF9Nc2sgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgR1BJT19MQ0tSX0xDSzBfUG9zKSAgICAgIC8qITwgMHgwMDAwMDAwMSAqLw0KI2RlZmluZSBHUElPX0xDS1JfTENLMCAgICAgICAgICAgICAgICAgICAgICAgR1BJT19MQ0tSX0xDSzBfTXNrICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX0xDS1JfTENLMV9Qb3MgICAgICAgICAgICAgICAgICAgKDFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX0xDS1JfTENLMV9Nc2sgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgR1BJT19MQ0tSX0xDSzFfUG9zKSAgICAgIC8qITwgMHgwMDAwMDAwMiAqLw0KI2RlZmluZSBHUElPX0xDS1JfTENLMSAgICAgICAgICAgICAgICAgICAgICAgR1BJT19MQ0tSX0xDSzFfTXNrICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX0xDS1JfTENLMl9Qb3MgICAgICAgICAgICAgICAgICAgKDJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX0xDS1JfTENLMl9Nc2sgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgR1BJT19MQ0tSX0xDSzJfUG9zKSAgICAgIC8qITwgMHgwMDAwMDAwNCAqLw0KI2RlZmluZSBHUElPX0xDS1JfTENLMiAgICAgICAgICAgICAgICAgICAgICAgR1BJT19MQ0tSX0xDSzJfTXNrICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX0xDS1JfTENLM19Qb3MgICAgICAgICAgICAgICAgICAgKDNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX0xDS1JfTENLM19Nc2sgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgR1BJT19MQ0tSX0xDSzNfUG9zKSAgICAgIC8qITwgMHgwMDAwMDAwOCAqLw0KI2RlZmluZSBHUElPX0xDS1JfTENLMyAgICAgICAgICAgICAgICAgICAgICAgR1BJT19MQ0tSX0xDSzNfTXNrICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX0xDS1JfTENLNF9Qb3MgICAgICAgICAgICAgICAgICAgKDRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX0xDS1JfTENLNF9Nc2sgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgR1BJT19MQ0tSX0xDSzRfUG9zKSAgICAgIC8qITwgMHgwMDAwMDAxMCAqLw0KI2RlZmluZSBHUElPX0xDS1JfTENLNCAgICAgICAgICAgICAgICAgICAgICAgR1BJT19MQ0tSX0xDSzRfTXNrICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX0xDS1JfTENLNV9Qb3MgICAgICAgICAgICAgICAgICAgKDVVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX0xDS1JfTENLNV9Nc2sgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgR1BJT19MQ0tSX0xDSzVfUG9zKSAgICAgIC8qITwgMHgwMDAwMDAyMCAqLw0KI2RlZmluZSBHUElPX0xDS1JfTENLNSAgICAgICAgICAgICAgICAgICAgICAgR1BJT19MQ0tSX0xDSzVfTXNrICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX0xDS1JfTENLNl9Qb3MgICAgICAgICAgICAgICAgICAgKDZVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX0xDS1JfTENLNl9Nc2sgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgR1BJT19MQ0tSX0xDSzZfUG9zKSAgICAgIC8qITwgMHgwMDAwMDA0MCAqLw0KI2RlZmluZSBHUElPX0xDS1JfTENLNiAgICAgICAgICAgICAgICAgICAgICAgR1BJT19MQ0tSX0xDSzZfTXNrICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX0xDS1JfTENLN19Qb3MgICAgICAgICAgICAgICAgICAgKDdVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX0xDS1JfTENLN19Nc2sgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgR1BJT19MQ0tSX0xDSzdfUG9zKSAgICAgIC8qITwgMHgwMDAwMDA4MCAqLw0KI2RlZmluZSBHUElPX0xDS1JfTENLNyAgICAgICAgICAgICAgICAgICAgICAgR1BJT19MQ0tSX0xDSzdfTXNrICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX0xDS1JfTENLOF9Qb3MgICAgICAgICAgICAgICAgICAgKDhVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX0xDS1JfTENLOF9Nc2sgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgR1BJT19MQ0tSX0xDSzhfUG9zKSAgICAgIC8qITwgMHgwMDAwMDEwMCAqLw0KI2RlZmluZSBHUElPX0xDS1JfTENLOCAgICAgICAgICAgICAgICAgICAgICAgR1BJT19MQ0tSX0xDSzhfTXNrICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX0xDS1JfTENLOV9Qb3MgICAgICAgICAgICAgICAgICAgKDlVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX0xDS1JfTENLOV9Nc2sgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgR1BJT19MQ0tSX0xDSzlfUG9zKSAgICAgIC8qITwgMHgwMDAwMDIwMCAqLw0KI2RlZmluZSBHUElPX0xDS1JfTENLOSAgICAgICAgICAgICAgICAgICAgICAgR1BJT19MQ0tSX0xDSzlfTXNrICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX0xDS1JfTENLMTBfUG9zICAgICAgICAgICAgICAgICAgKDEwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX0xDS1JfTENLMTBfTXNrICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgR1BJT19MQ0tSX0xDSzEwX1BvcykgICAgIC8qITwgMHgwMDAwMDQwMCAqLw0KI2RlZmluZSBHUElPX0xDS1JfTENLMTAgICAgICAgICAgICAgICAgICAgICAgR1BJT19MQ0tSX0xDSzEwX01zayAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX0xDS1JfTENLMTFfUG9zICAgICAgICAgICAgICAgICAgKDExVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX0xDS1JfTENLMTFfTXNrICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgR1BJT19MQ0tSX0xDSzExX1BvcykgICAgIC8qITwgMHgwMDAwMDgwMCAqLw0KI2RlZmluZSBHUElPX0xDS1JfTENLMTEgICAgICAgICAgICAgICAgICAgICAgR1BJT19MQ0tSX0xDSzExX01zayAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX0xDS1JfTENLMTJfUG9zICAgICAgICAgICAgICAgICAgKDEyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX0xDS1JfTENLMTJfTXNrICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgR1BJT19MQ0tSX0xDSzEyX1BvcykgICAgIC8qITwgMHgwMDAwMTAwMCAqLw0KI2RlZmluZSBHUElPX0xDS1JfTENLMTIgICAgICAgICAgICAgICAgICAgICAgR1BJT19MQ0tSX0xDSzEyX01zayAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX0xDS1JfTENLMTNfUG9zICAgICAgICAgICAgICAgICAgKDEzVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX0xDS1JfTENLMTNfTXNrICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgR1BJT19MQ0tSX0xDSzEzX1BvcykgICAgIC8qITwgMHgwMDAwMjAwMCAqLw0KI2RlZmluZSBHUElPX0xDS1JfTENLMTMgICAgICAgICAgICAgICAgICAgICAgR1BJT19MQ0tSX0xDSzEzX01zayAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX0xDS1JfTENLMTRfUG9zICAgICAgICAgICAgICAgICAgKDE0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX0xDS1JfTENLMTRfTXNrICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgR1BJT19MQ0tSX0xDSzE0X1BvcykgICAgIC8qITwgMHgwMDAwNDAwMCAqLw0KI2RlZmluZSBHUElPX0xDS1JfTENLMTQgICAgICAgICAgICAgICAgICAgICAgR1BJT19MQ0tSX0xDSzE0X01zayAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX0xDS1JfTENLMTVfUG9zICAgICAgICAgICAgICAgICAgKDE1VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX0xDS1JfTENLMTVfTXNrICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgR1BJT19MQ0tSX0xDSzE1X1BvcykgICAgIC8qITwgMHgwMDAwODAwMCAqLw0KI2RlZmluZSBHUElPX0xDS1JfTENLMTUgICAgICAgICAgICAgICAgICAgICAgR1BJT19MQ0tSX0xDSzE1X01zayAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX0xDS1JfTENLS19Qb3MgICAgICAgICAgICAgICAgICAgKDE2VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX0xDS1JfTENLS19Nc2sgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgR1BJT19MQ0tSX0xDS0tfUG9zKSAgICAgIC8qITwgMHgwMDAxMDAwMCAqLw0KI2RlZmluZSBHUElPX0xDS1JfTENLSyAgICAgICAgICAgICAgICAgICAgICAgR1BJT19MQ0tSX0xDS0tfTXNrICAgICAgICAgICAgICAgIA0KDQovKioqKioqKioqKioqKioqKioqIEJpdCBkZWZpbml0aW9uIGZvciBHUElPX0FGUkwgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBHUElPX0FGUkxfQUZTRUwwX1BvcyAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19BRlJMX0FGU0VMMF9Nc2sgICAgICAgICAgICAgICAgICAoMHhGVSA8PCBHUElPX0FGUkxfQUZTRUwwX1BvcykgICAgIC8qITwgMHgwMDAwMDAwRiAqLw0KI2RlZmluZSBHUElPX0FGUkxfQUZTRUwwICAgICAgICAgICAgICAgICAgICAgIEdQSU9fQUZSTF9BRlNFTDBfTXNrICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fQUZSTF9BRlNFTDFfUG9zICAgICAgICAgICAgICAgICAgKDRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX0FGUkxfQUZTRUwxX01zayAgICAgICAgICAgICAgICAgICgweEZVIDw8IEdQSU9fQUZSTF9BRlNFTDFfUG9zKSAgICAgLyohPCAweDAwMDAwMEYwICovDQojZGVmaW5lIEdQSU9fQUZSTF9BRlNFTDEgICAgICAgICAgICAgICAgICAgICAgR1BJT19BRlJMX0FGU0VMMV9Nc2sgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19BRlJMX0FGU0VMMl9Qb3MgICAgICAgICAgICAgICAgICAoOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fQUZSTF9BRlNFTDJfTXNrICAgICAgICAgICAgICAgICAgKDB4RlUgPDwgR1BJT19BRlJMX0FGU0VMMl9Qb3MpICAgICAvKiE8IDB4MDAwMDBGMDAgKi8NCiNkZWZpbmUgR1BJT19BRlJMX0FGU0VMMiAgICAgICAgICAgICAgICAgICAgICBHUElPX0FGUkxfQUZTRUwyX01zayAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX0FGUkxfQUZTRUwzX1BvcyAgICAgICAgICAgICAgICAgICgxMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19BRlJMX0FGU0VMM19Nc2sgICAgICAgICAgICAgICAgICAoMHhGVSA8PCBHUElPX0FGUkxfQUZTRUwzX1BvcykgICAgIC8qITwgMHgwMDAwRjAwMCAqLw0KI2RlZmluZSBHUElPX0FGUkxfQUZTRUwzICAgICAgICAgICAgICAgICAgICAgIEdQSU9fQUZSTF9BRlNFTDNfTXNrICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fQUZSTF9BRlNFTDRfUG9zICAgICAgICAgICAgICAgICAgKDE2VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX0FGUkxfQUZTRUw0X01zayAgICAgICAgICAgICAgICAgICgweEZVIDw8IEdQSU9fQUZSTF9BRlNFTDRfUG9zKSAgICAgLyohPCAweDAwMEYwMDAwICovDQojZGVmaW5lIEdQSU9fQUZSTF9BRlNFTDQgICAgICAgICAgICAgICAgICAgICAgR1BJT19BRlJMX0FGU0VMNF9Nc2sgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19BRlJMX0FGU0VMNV9Qb3MgICAgICAgICAgICAgICAgICAoMjBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fQUZSTF9BRlNFTDVfTXNrICAgICAgICAgICAgICAgICAgKDB4RlUgPDwgR1BJT19BRlJMX0FGU0VMNV9Qb3MpICAgICAvKiE8IDB4MDBGMDAwMDAgKi8NCiNkZWZpbmUgR1BJT19BRlJMX0FGU0VMNSAgICAgICAgICAgICAgICAgICAgICBHUElPX0FGUkxfQUZTRUw1X01zayAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX0FGUkxfQUZTRUw2X1BvcyAgICAgICAgICAgICAgICAgICgyNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19BRlJMX0FGU0VMNl9Nc2sgICAgICAgICAgICAgICAgICAoMHhGVSA8PCBHUElPX0FGUkxfQUZTRUw2X1BvcykgICAgIC8qITwgMHgwRjAwMDAwMCAqLw0KI2RlZmluZSBHUElPX0FGUkxfQUZTRUw2ICAgICAgICAgICAgICAgICAgICAgIEdQSU9fQUZSTF9BRlNFTDZfTXNrICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fQUZSTF9BRlNFTDdfUG9zICAgICAgICAgICAgICAgICAgKDI4VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX0FGUkxfQUZTRUw3X01zayAgICAgICAgICAgICAgICAgICgweEZVIDw8IEdQSU9fQUZSTF9BRlNFTDdfUG9zKSAgICAgLyohPCAweEYwMDAwMDAwICovDQojZGVmaW5lIEdQSU9fQUZSTF9BRlNFTDcgICAgICAgICAgICAgICAgICAgICAgR1BJT19BRlJMX0FGU0VMN19Nc2sgICAgICAgICAgICAgICANCg0KLyoqKioqKioqKioqKioqKioqKiBCaXQgZGVmaW5pdGlvbiBmb3IgR1BJT19BRlJIIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgR1BJT19BRlJIX0FGU0VMOF9Qb3MgICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fQUZSSF9BRlNFTDhfTXNrICAgICAgICAgICAgICAgICAgKDB4RlUgPDwgR1BJT19BRlJIX0FGU0VMOF9Qb3MpICAgICAvKiE8IDB4MDAwMDAwMEYgKi8NCiNkZWZpbmUgR1BJT19BRlJIX0FGU0VMOCAgICAgICAgICAgICAgICAgICAgICBHUElPX0FGUkhfQUZTRUw4X01zayAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX0FGUkhfQUZTRUw5X1BvcyAgICAgICAgICAgICAgICAgICg0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19BRlJIX0FGU0VMOV9Nc2sgICAgICAgICAgICAgICAgICAoMHhGVSA8PCBHUElPX0FGUkhfQUZTRUw5X1BvcykgICAgIC8qITwgMHgwMDAwMDBGMCAqLw0KI2RlZmluZSBHUElPX0FGUkhfQUZTRUw5ICAgICAgICAgICAgICAgICAgICAgIEdQSU9fQUZSSF9BRlNFTDlfTXNrICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fQUZSSF9BRlNFTDEwX1BvcyAgICAgICAgICAgICAgICAgICg4VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19BRlJIX0FGU0VMMTBfTXNrICAgICAgICAgICAgICAgICAgKDB4RlUgPDwgR1BJT19BRlJIX0FGU0VMMTBfUG9zKSAgICAgLyohPCAweDAwMDAwRjAwICovDQojZGVmaW5lIEdQSU9fQUZSSF9BRlNFTDEwICAgICAgICAgICAgICAgICAgICAgIEdQSU9fQUZSSF9BRlNFTDEwX01zayAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX0FGUkhfQUZTRUwxMV9Qb3MgICAgICAgICAgICAgICAgICAoMTJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fQUZSSF9BRlNFTDExX01zayAgICAgICAgICAgICAgICAgICgweEZVIDw8IEdQSU9fQUZSSF9BRlNFTDExX1BvcykgICAgIC8qITwgMHgwMDAwRjAwMCAqLw0KI2RlZmluZSBHUElPX0FGUkhfQUZTRUwxMSAgICAgICAgICAgICAgICAgICAgICBHUElPX0FGUkhfQUZTRUwxMV9Nc2sgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19BRlJIX0FGU0VMMTJfUG9zICAgICAgICAgICAgICAgICAgKDE2VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX0FGUkhfQUZTRUwxMl9Nc2sgICAgICAgICAgICAgICAgICAoMHhGVSA8PCBHUElPX0FGUkhfQUZTRUwxMl9Qb3MpICAgICAvKiE8IDB4MDAwRjAwMDAgKi8NCiNkZWZpbmUgR1BJT19BRlJIX0FGU0VMMTIgICAgICAgICAgICAgICAgICAgICAgR1BJT19BRlJIX0FGU0VMMTJfTXNrICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fQUZSSF9BRlNFTDEzX1BvcyAgICAgICAgICAgICAgICAgICgyMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19BRlJIX0FGU0VMMTNfTXNrICAgICAgICAgICAgICAgICAgKDB4RlUgPDwgR1BJT19BRlJIX0FGU0VMMTNfUG9zKSAgICAgLyohPCAweDAwRjAwMDAwICovDQojZGVmaW5lIEdQSU9fQUZSSF9BRlNFTDEzICAgICAgICAgICAgICAgICAgICAgIEdQSU9fQUZSSF9BRlNFTDEzX01zayAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX0FGUkhfQUZTRUwxNF9Qb3MgICAgICAgICAgICAgICAgICAoMjRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fQUZSSF9BRlNFTDE0X01zayAgICAgICAgICAgICAgICAgICgweEZVIDw8IEdQSU9fQUZSSF9BRlNFTDE0X1BvcykgICAgIC8qITwgMHgwRjAwMDAwMCAqLw0KI2RlZmluZSBHUElPX0FGUkhfQUZTRUwxNCAgICAgICAgICAgICAgICAgICAgICBHUElPX0FGUkhfQUZTRUwxNF9Nc2sgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19BRlJIX0FGU0VMMTVfUG9zICAgICAgICAgICAgICAgICAgKDI4VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX0FGUkhfQUZTRUwxNV9Nc2sgICAgICAgICAgICAgICAgICAoMHhGVSA8PCBHUElPX0FGUkhfQUZTRUwxNV9Qb3MpICAgICAvKiE8IDB4RjAwMDAwMDAgKi8NCiNkZWZpbmUgR1BJT19BRlJIX0FGU0VMMTUgICAgICAgICAgICAgICAgICAgICAgR1BJT19BRlJIX0FGU0VMMTVfTXNrICAgICAgICAgICAgICAgDQoNCi8qKioqKioqKioqKioqKioqKiogQml0IGRlZmluaXRpb24gZm9yIEdQSU9fQlJSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIEdQSU9fQlJSX0JSXzAgICAgICAgICAgICAgICAgICAgICAgICAoMHgwMDAwMDAwMVUpICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fQlJSX0JSXzEgICAgICAgICAgICAgICAgICAgICAgICAoMHgwMDAwMDAwMlUpICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fQlJSX0JSXzIgICAgICAgICAgICAgICAgICAgICAgICAoMHgwMDAwMDAwNFUpICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fQlJSX0JSXzMgICAgICAgICAgICAgICAgICAgICAgICAoMHgwMDAwMDAwOFUpICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fQlJSX0JSXzQgICAgICAgICAgICAgICAgICAgICAgICAoMHgwMDAwMDAxMFUpICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fQlJSX0JSXzUgICAgICAgICAgICAgICAgICAgICAgICAoMHgwMDAwMDAyMFUpICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fQlJSX0JSXzYgICAgICAgICAgICAgICAgICAgICAgICAoMHgwMDAwMDA0MFUpICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fQlJSX0JSXzcgICAgICAgICAgICAgICAgICAgICAgICAoMHgwMDAwMDA4MFUpICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fQlJSX0JSXzggICAgICAgICAgICAgICAgICAgICAgICAoMHgwMDAwMDEwMFUpICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fQlJSX0JSXzkgICAgICAgICAgICAgICAgICAgICAgICAoMHgwMDAwMDIwMFUpICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fQlJSX0JSXzEwICAgICAgICAgICAgICAgICAgICAgICAoMHgwMDAwMDQwMFUpICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fQlJSX0JSXzExICAgICAgICAgICAgICAgICAgICAgICAoMHgwMDAwMDgwMFUpICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fQlJSX0JSXzEyICAgICAgICAgICAgICAgICAgICAgICAoMHgwMDAwMTAwMFUpICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fQlJSX0JSXzEzICAgICAgICAgICAgICAgICAgICAgICAoMHgwMDAwMjAwMFUpICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fQlJSX0JSXzE0ICAgICAgICAgICAgICAgICAgICAgICAoMHgwMDAwNDAwMFUpICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fQlJSX0JSXzE1ICAgICAgICAgICAgICAgICAgICAgICAoMHgwMDAwODAwMFUpICAgICAgICAgICAgICAgICAgICAgDQoNCi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovDQovKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLw0KLyogICAgICAgICAgICAgICAgICAgSW50ZXItaW50ZWdyYXRlZCBDaXJjdWl0IEludGVyZmFjZSAoSTJDKSAgICAgICAgICAgICAgICAgKi8NCi8qICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovDQovKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLw0KDQovKioqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIEkyQ19DUjEgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBJMkNfQ1IxX1BFX1BvcyAgICAgICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBJMkNfQ1IxX1BFX01zayAgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBJMkNfQ1IxX1BFX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDAwMSAqLw0KI2RlZmluZSBJMkNfQ1IxX1BFICAgICAgICAgICAgICAgICAgICAgICAgICBJMkNfQ1IxX1BFX01zayAgICAgICAgICAgICAgICAgICAgIC8qITwgUGVyaXBoZXJhbCBFbmFibGUgKi8NCiNkZWZpbmUgSTJDX0NSMV9TTUJVU19Qb3MgICAgICAgICAgICAgICAgICAgKDFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgSTJDX0NSMV9TTUJVU19Nc2sgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgSTJDX0NSMV9TTUJVU19Qb3MpICAgICAgICAvKiE8IDB4MDAwMDAwMDIgKi8NCiNkZWZpbmUgSTJDX0NSMV9TTUJVUyAgICAgICAgICAgICAgICAgICAgICAgSTJDX0NSMV9TTUJVU19Nc2sgICAgICAgICAgICAgICAgICAvKiE8IFNNQnVzIE1vZGUgKi8NCiNkZWZpbmUgSTJDX0NSMV9TTUJUWVBFX1BvcyAgICAgICAgICAgICAgICAgKDNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgSTJDX0NSMV9TTUJUWVBFX01zayAgICAgICAgICAgICAgICAgKDB4MVUgPDwgSTJDX0NSMV9TTUJUWVBFX1BvcykgICAgICAvKiE8IDB4MDAwMDAwMDggKi8NCiNkZWZpbmUgSTJDX0NSMV9TTUJUWVBFICAgICAgICAgICAgICAgICAgICAgSTJDX0NSMV9TTUJUWVBFX01zayAgICAgICAgICAgICAgICAvKiE8IFNNQnVzIFR5cGUgKi8NCiNkZWZpbmUgSTJDX0NSMV9FTkFSUF9Qb3MgICAgICAgICAgICAgICAgICAgKDRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgSTJDX0NSMV9FTkFSUF9Nc2sgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgSTJDX0NSMV9FTkFSUF9Qb3MpICAgICAgICAvKiE8IDB4MDAwMDAwMTAgKi8NCiNkZWZpbmUgSTJDX0NSMV9FTkFSUCAgICAgICAgICAgICAgICAgICAgICAgSTJDX0NSMV9FTkFSUF9Nc2sgICAgICAgICAgICAgICAgICAvKiE8IEFSUCBFbmFibGUgKi8NCiNkZWZpbmUgSTJDX0NSMV9FTlBFQ19Qb3MgICAgICAgICAgICAgICAgICAgKDVVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgSTJDX0NSMV9FTlBFQ19Nc2sgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgSTJDX0NSMV9FTlBFQ19Qb3MpICAgICAgICAvKiE8IDB4MDAwMDAwMjAgKi8NCiNkZWZpbmUgSTJDX0NSMV9FTlBFQyAgICAgICAgICAgICAgICAgICAgICAgSTJDX0NSMV9FTlBFQ19Nc2sgICAgICAgICAgICAgICAgICAvKiE8IFBFQyBFbmFibGUgKi8NCiNkZWZpbmUgSTJDX0NSMV9FTkdDX1BvcyAgICAgICAgICAgICAgICAgICAgKDZVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgSTJDX0NSMV9FTkdDX01zayAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgSTJDX0NSMV9FTkdDX1BvcykgICAgICAgICAvKiE8IDB4MDAwMDAwNDAgKi8NCiNkZWZpbmUgSTJDX0NSMV9FTkdDICAgICAgICAgICAgICAgICAgICAgICAgSTJDX0NSMV9FTkdDX01zayAgICAgICAgICAgICAgICAgICAvKiE8IEdlbmVyYWwgQ2FsbCBFbmFibGUgKi8NCiNkZWZpbmUgSTJDX0NSMV9OT1NUUkVUQ0hfUG9zICAgICAgICAgICAgICAgKDdVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgSTJDX0NSMV9OT1NUUkVUQ0hfTXNrICAgICAgICAgICAgICAgKDB4MVUgPDwgSTJDX0NSMV9OT1NUUkVUQ0hfUG9zKSAgICAvKiE8IDB4MDAwMDAwODAgKi8NCiNkZWZpbmUgSTJDX0NSMV9OT1NUUkVUQ0ggICAgICAgICAgICAgICAgICAgSTJDX0NSMV9OT1NUUkVUQ0hfTXNrICAgICAgICAgICAgICAvKiE8IENsb2NrIFN0cmV0Y2hpbmcgRGlzYWJsZSAoU2xhdmUgbW9kZSkgKi8NCiNkZWZpbmUgSTJDX0NSMV9TVEFSVF9Qb3MgICAgICAgICAgICAgICAgICAgKDhVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgSTJDX0NSMV9TVEFSVF9Nc2sgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgSTJDX0NSMV9TVEFSVF9Qb3MpICAgICAgICAvKiE8IDB4MDAwMDAxMDAgKi8NCiNkZWZpbmUgSTJDX0NSMV9TVEFSVCAgICAgICAgICAgICAgICAgICAgICAgSTJDX0NSMV9TVEFSVF9Nc2sgICAgICAgICAgICAgICAgICAvKiE8IFN0YXJ0IEdlbmVyYXRpb24gKi8NCiNkZWZpbmUgSTJDX0NSMV9TVE9QX1BvcyAgICAgICAgICAgICAgICAgICAgKDlVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgSTJDX0NSMV9TVE9QX01zayAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgSTJDX0NSMV9TVE9QX1BvcykgICAgICAgICAvKiE8IDB4MDAwMDAyMDAgKi8NCiNkZWZpbmUgSTJDX0NSMV9TVE9QICAgICAgICAgICAgICAgICAgICAgICAgSTJDX0NSMV9TVE9QX01zayAgICAgICAgICAgICAgICAgICAvKiE8IFN0b3AgR2VuZXJhdGlvbiAqLw0KI2RlZmluZSBJMkNfQ1IxX0FDS19Qb3MgICAgICAgICAgICAgICAgICAgICAoMTBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBJMkNfQ1IxX0FDS19Nc2sgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBJMkNfQ1IxX0FDS19Qb3MpICAgICAgICAgIC8qITwgMHgwMDAwMDQwMCAqLw0KI2RlZmluZSBJMkNfQ1IxX0FDSyAgICAgICAgICAgICAgICAgICAgICAgICBJMkNfQ1IxX0FDS19Nc2sgICAgICAgICAgICAgICAgICAgIC8qITwgQWNrbm93bGVkZ2UgRW5hYmxlICovDQojZGVmaW5lIEkyQ19DUjFfUE9TX1BvcyAgICAgICAgICAgICAgICAgICAgICgxMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEkyQ19DUjFfUE9TX01zayAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IEkyQ19DUjFfUE9TX1BvcykgICAgICAgICAgLyohPCAweDAwMDAwODAwICovDQojZGVmaW5lIEkyQ19DUjFfUE9TICAgICAgICAgICAgICAgICAgICAgICAgIEkyQ19DUjFfUE9TX01zayAgICAgICAgICAgICAgICAgICAgLyohPCBBY2tub3dsZWRnZS9QRUMgUG9zaXRpb24gKGZvciBkYXRhIHJlY2VwdGlvbikgKi8NCiNkZWZpbmUgSTJDX0NSMV9QRUNfUG9zICAgICAgICAgICAgICAgICAgICAgKDEyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgSTJDX0NSMV9QRUNfTXNrICAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgSTJDX0NSMV9QRUNfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDEwMDAgKi8NCiNkZWZpbmUgSTJDX0NSMV9QRUMgICAgICAgICAgICAgICAgICAgICAgICAgSTJDX0NSMV9QRUNfTXNrICAgICAgICAgICAgICAgICAgICAvKiE8IFBhY2tldCBFcnJvciBDaGVja2luZyAqLw0KI2RlZmluZSBJMkNfQ1IxX0FMRVJUX1BvcyAgICAgICAgICAgICAgICAgICAoMTNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBJMkNfQ1IxX0FMRVJUX01zayAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBJMkNfQ1IxX0FMRVJUX1BvcykgICAgICAgIC8qITwgMHgwMDAwMjAwMCAqLw0KI2RlZmluZSBJMkNfQ1IxX0FMRVJUICAgICAgICAgICAgICAgICAgICAgICBJMkNfQ1IxX0FMRVJUX01zayAgICAgICAgICAgICAgICAgIC8qITwgU01CdXMgQWxlcnQgKi8NCiNkZWZpbmUgSTJDX0NSMV9TV1JTVF9Qb3MgICAgICAgICAgICAgICAgICAgKDE1VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgSTJDX0NSMV9TV1JTVF9Nc2sgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgSTJDX0NSMV9TV1JTVF9Qb3MpICAgICAgICAvKiE8IDB4MDAwMDgwMDAgKi8NCiNkZWZpbmUgSTJDX0NSMV9TV1JTVCAgICAgICAgICAgICAgICAgICAgICAgSTJDX0NSMV9TV1JTVF9Nc2sgICAgICAgICAgICAgICAgICAvKiE8IFNvZnR3YXJlIFJlc2V0ICovDQoNCi8qKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgSTJDX0NSMiByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIEkyQ19DUjJfRlJFUV9Qb3MgICAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEkyQ19DUjJfRlJFUV9Nc2sgICAgICAgICAgICAgICAgICAgICgweDNGVSA8PCBJMkNfQ1IyX0ZSRVFfUG9zKSAgICAgICAgLyohPCAweDAwMDAwMDNGICovDQojZGVmaW5lIEkyQ19DUjJfRlJFUSAgICAgICAgICAgICAgICAgICAgICAgIEkyQ19DUjJfRlJFUV9Nc2sgICAgICAgICAgICAgICAgICAgLyohPCBGUkVRWzU6MF0gYml0cyAoUGVyaXBoZXJhbCBDbG9jayBGcmVxdWVuY3kpICovDQojZGVmaW5lIEkyQ19DUjJfRlJFUV8wICAgICAgICAgICAgICAgICAgICAgICgweDAxVSA8PCBJMkNfQ1IyX0ZSRVFfUG9zKSAgICAgICAgLyohPCAweDAwMDAwMDAxICovDQojZGVmaW5lIEkyQ19DUjJfRlJFUV8xICAgICAgICAgICAgICAgICAgICAgICgweDAyVSA8PCBJMkNfQ1IyX0ZSRVFfUG9zKSAgICAgICAgLyohPCAweDAwMDAwMDAyICovDQojZGVmaW5lIEkyQ19DUjJfRlJFUV8yICAgICAgICAgICAgICAgICAgICAgICgweDA0VSA8PCBJMkNfQ1IyX0ZSRVFfUG9zKSAgICAgICAgLyohPCAweDAwMDAwMDA0ICovDQojZGVmaW5lIEkyQ19DUjJfRlJFUV8zICAgICAgICAgICAgICAgICAgICAgICgweDA4VSA8PCBJMkNfQ1IyX0ZSRVFfUG9zKSAgICAgICAgLyohPCAweDAwMDAwMDA4ICovDQojZGVmaW5lIEkyQ19DUjJfRlJFUV80ICAgICAgICAgICAgICAgICAgICAgICgweDEwVSA8PCBJMkNfQ1IyX0ZSRVFfUG9zKSAgICAgICAgLyohPCAweDAwMDAwMDEwICovDQojZGVmaW5lIEkyQ19DUjJfRlJFUV81ICAgICAgICAgICAgICAgICAgICAgICgweDIwVSA8PCBJMkNfQ1IyX0ZSRVFfUG9zKSAgICAgICAgLyohPCAweDAwMDAwMDIwICovDQoNCiNkZWZpbmUgSTJDX0NSMl9JVEVSUkVOX1BvcyAgICAgICAgICAgICAgICAgKDhVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgSTJDX0NSMl9JVEVSUkVOX01zayAgICAgICAgICAgICAgICAgKDB4MVUgPDwgSTJDX0NSMl9JVEVSUkVOX1BvcykgICAgICAvKiE8IDB4MDAwMDAxMDAgKi8NCiNkZWZpbmUgSTJDX0NSMl9JVEVSUkVOICAgICAgICAgICAgICAgICAgICAgSTJDX0NSMl9JVEVSUkVOX01zayAgICAgICAgICAgICAgICAvKiE8IEVycm9yIEludGVycnVwdCBFbmFibGUgKi8NCiNkZWZpbmUgSTJDX0NSMl9JVEVWVEVOX1BvcyAgICAgICAgICAgICAgICAgKDlVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgSTJDX0NSMl9JVEVWVEVOX01zayAgICAgICAgICAgICAgICAgKDB4MVUgPDwgSTJDX0NSMl9JVEVWVEVOX1BvcykgICAgICAvKiE8IDB4MDAwMDAyMDAgKi8NCiNkZWZpbmUgSTJDX0NSMl9JVEVWVEVOICAgICAgICAgICAgICAgICAgICAgSTJDX0NSMl9JVEVWVEVOX01zayAgICAgICAgICAgICAgICAvKiE8IEV2ZW50IEludGVycnVwdCBFbmFibGUgKi8NCiNkZWZpbmUgSTJDX0NSMl9JVEJVRkVOX1BvcyAgICAgICAgICAgICAgICAgKDEwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgSTJDX0NSMl9JVEJVRkVOX01zayAgICAgICAgICAgICAgICAgKDB4MVUgPDwgSTJDX0NSMl9JVEJVRkVOX1BvcykgICAgICAvKiE8IDB4MDAwMDA0MDAgKi8NCiNkZWZpbmUgSTJDX0NSMl9JVEJVRkVOICAgICAgICAgICAgICAgICAgICAgSTJDX0NSMl9JVEJVRkVOX01zayAgICAgICAgICAgICAgICAvKiE8IEJ1ZmZlciBJbnRlcnJ1cHQgRW5hYmxlICovDQojZGVmaW5lIEkyQ19DUjJfRE1BRU5fUG9zICAgICAgICAgICAgICAgICAgICgxMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEkyQ19DUjJfRE1BRU5fTXNrICAgICAgICAgICAgICAgICAgICgweDFVIDw8IEkyQ19DUjJfRE1BRU5fUG9zKSAgICAgICAgLyohPCAweDAwMDAwODAwICovDQojZGVmaW5lIEkyQ19DUjJfRE1BRU4gICAgICAgICAgICAgICAgICAgICAgIEkyQ19DUjJfRE1BRU5fTXNrICAgICAgICAgICAgICAgICAgLyohPCBETUEgUmVxdWVzdHMgRW5hYmxlICovDQojZGVmaW5lIEkyQ19DUjJfTEFTVF9Qb3MgICAgICAgICAgICAgICAgICAgICgxMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEkyQ19DUjJfTEFTVF9Nc2sgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IEkyQ19DUjJfTEFTVF9Qb3MpICAgICAgICAgLyohPCAweDAwMDAxMDAwICovDQojZGVmaW5lIEkyQ19DUjJfTEFTVCAgICAgICAgICAgICAgICAgICAgICAgIEkyQ19DUjJfTEFTVF9Nc2sgICAgICAgICAgICAgICAgICAgLyohPCBETUEgTGFzdCBUcmFuc2ZlciAqLw0KDQovKioqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIEkyQ19PQVIxIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBJMkNfT0FSMV9BREQxXzcgICAgICAgICAgICAgICAgICAgICAoMHgwMDAwMDBGRVUpICAgICAgICAgICAgICAgICAgICAgIC8qITwgSW50ZXJmYWNlIEFkZHJlc3MgKi8NCiNkZWZpbmUgSTJDX09BUjFfQUREOF85ICAgICAgICAgICAgICAgICAgICAgKDB4MDAwMDAzMDBVKSAgICAgICAgICAgICAgICAgICAgICAvKiE8IEludGVyZmFjZSBBZGRyZXNzICovDQoNCiNkZWZpbmUgSTJDX09BUjFfQUREMF9Qb3MgICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgSTJDX09BUjFfQUREMF9Nc2sgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgSTJDX09BUjFfQUREMF9Qb3MpICAgICAgICAvKiE8IDB4MDAwMDAwMDEgKi8NCiNkZWZpbmUgSTJDX09BUjFfQUREMCAgICAgICAgICAgICAgICAgICAgICAgSTJDX09BUjFfQUREMF9Nc2sgICAgICAgICAgICAgICAgICAvKiE8IEJpdCAwICovDQojZGVmaW5lIEkyQ19PQVIxX0FERDFfUG9zICAgICAgICAgICAgICAgICAgICgxVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEkyQ19PQVIxX0FERDFfTXNrICAgICAgICAgICAgICAgICAgICgweDFVIDw8IEkyQ19PQVIxX0FERDFfUG9zKSAgICAgICAgLyohPCAweDAwMDAwMDAyICovDQojZGVmaW5lIEkyQ19PQVIxX0FERDEgICAgICAgICAgICAgICAgICAgICAgIEkyQ19PQVIxX0FERDFfTXNrICAgICAgICAgICAgICAgICAgLyohPCBCaXQgMSAqLw0KI2RlZmluZSBJMkNfT0FSMV9BREQyX1BvcyAgICAgICAgICAgICAgICAgICAoMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBJMkNfT0FSMV9BREQyX01zayAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBJMkNfT0FSMV9BREQyX1BvcykgICAgICAgIC8qITwgMHgwMDAwMDAwNCAqLw0KI2RlZmluZSBJMkNfT0FSMV9BREQyICAgICAgICAgICAgICAgICAgICAgICBJMkNfT0FSMV9BREQyX01zayAgICAgICAgICAgICAgICAgIC8qITwgQml0IDIgKi8NCiNkZWZpbmUgSTJDX09BUjFfQUREM19Qb3MgICAgICAgICAgICAgICAgICAgKDNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgSTJDX09BUjFfQUREM19Nc2sgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgSTJDX09BUjFfQUREM19Qb3MpICAgICAgICAvKiE8IDB4MDAwMDAwMDggKi8NCiNkZWZpbmUgSTJDX09BUjFfQUREMyAgICAgICAgICAgICAgICAgICAgICAgSTJDX09BUjFfQUREM19Nc2sgICAgICAgICAgICAgICAgICAvKiE8IEJpdCAzICovDQojZGVmaW5lIEkyQ19PQVIxX0FERDRfUG9zICAgICAgICAgICAgICAgICAgICg0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEkyQ19PQVIxX0FERDRfTXNrICAgICAgICAgICAgICAgICAgICgweDFVIDw8IEkyQ19PQVIxX0FERDRfUG9zKSAgICAgICAgLyohPCAweDAwMDAwMDEwICovDQojZGVmaW5lIEkyQ19PQVIxX0FERDQgICAgICAgICAgICAgICAgICAgICAgIEkyQ19PQVIxX0FERDRfTXNrICAgICAgICAgICAgICAgICAgLyohPCBCaXQgNCAqLw0KI2RlZmluZSBJMkNfT0FSMV9BREQ1X1BvcyAgICAgICAgICAgICAgICAgICAoNVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBJMkNfT0FSMV9BREQ1X01zayAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBJMkNfT0FSMV9BREQ1X1BvcykgICAgICAgIC8qITwgMHgwMDAwMDAyMCAqLw0KI2RlZmluZSBJMkNfT0FSMV9BREQ1ICAgICAgICAgICAgICAgICAgICAgICBJMkNfT0FSMV9BREQ1X01zayAgICAgICAgICAgICAgICAgIC8qITwgQml0IDUgKi8NCiNkZWZpbmUgSTJDX09BUjFfQURENl9Qb3MgICAgICAgICAgICAgICAgICAgKDZVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgSTJDX09BUjFfQURENl9Nc2sgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgSTJDX09BUjFfQURENl9Qb3MpICAgICAgICAvKiE8IDB4MDAwMDAwNDAgKi8NCiNkZWZpbmUgSTJDX09BUjFfQURENiAgICAgICAgICAgICAgICAgICAgICAgSTJDX09BUjFfQURENl9Nc2sgICAgICAgICAgICAgICAgICAvKiE8IEJpdCA2ICovDQojZGVmaW5lIEkyQ19PQVIxX0FERDdfUG9zICAgICAgICAgICAgICAgICAgICg3VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEkyQ19PQVIxX0FERDdfTXNrICAgICAgICAgICAgICAgICAgICgweDFVIDw8IEkyQ19PQVIxX0FERDdfUG9zKSAgICAgICAgLyohPCAweDAwMDAwMDgwICovDQojZGVmaW5lIEkyQ19PQVIxX0FERDcgICAgICAgICAgICAgICAgICAgICAgIEkyQ19PQVIxX0FERDdfTXNrICAgICAgICAgICAgICAgICAgLyohPCBCaXQgNyAqLw0KI2RlZmluZSBJMkNfT0FSMV9BREQ4X1BvcyAgICAgICAgICAgICAgICAgICAoOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBJMkNfT0FSMV9BREQ4X01zayAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBJMkNfT0FSMV9BREQ4X1BvcykgICAgICAgIC8qITwgMHgwMDAwMDEwMCAqLw0KI2RlZmluZSBJMkNfT0FSMV9BREQ4ICAgICAgICAgICAgICAgICAgICAgICBJMkNfT0FSMV9BREQ4X01zayAgICAgICAgICAgICAgICAgIC8qITwgQml0IDggKi8NCiNkZWZpbmUgSTJDX09BUjFfQUREOV9Qb3MgICAgICAgICAgICAgICAgICAgKDlVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgSTJDX09BUjFfQUREOV9Nc2sgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgSTJDX09BUjFfQUREOV9Qb3MpICAgICAgICAvKiE8IDB4MDAwMDAyMDAgKi8NCiNkZWZpbmUgSTJDX09BUjFfQUREOSAgICAgICAgICAgICAgICAgICAgICAgSTJDX09BUjFfQUREOV9Nc2sgICAgICAgICAgICAgICAgICAvKiE8IEJpdCA5ICovDQoNCiNkZWZpbmUgSTJDX09BUjFfQURETU9ERV9Qb3MgICAgICAgICAgICAgICAgKDE1VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgSTJDX09BUjFfQURETU9ERV9Nc2sgICAgICAgICAgICAgICAgKDB4MVUgPDwgSTJDX09BUjFfQURETU9ERV9Qb3MpICAgICAvKiE8IDB4MDAwMDgwMDAgKi8NCiNkZWZpbmUgSTJDX09BUjFfQURETU9ERSAgICAgICAgICAgICAgICAgICAgSTJDX09BUjFfQURETU9ERV9Nc2sgICAgICAgICAgICAgICAvKiE8IEFkZHJlc3NpbmcgTW9kZSAoU2xhdmUgbW9kZSkgKi8NCg0KLyoqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBJMkNfT0FSMiByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgSTJDX09BUjJfRU5EVUFMX1BvcyAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgSTJDX09BUjJfRU5EVUFMX01zayAgICAgICAgICAgICAgICAgKDB4MVUgPDwgSTJDX09BUjJfRU5EVUFMX1BvcykgICAgICAvKiE8IDB4MDAwMDAwMDEgKi8NCiNkZWZpbmUgSTJDX09BUjJfRU5EVUFMICAgICAgICAgICAgICAgICAgICAgSTJDX09BUjJfRU5EVUFMX01zayAgICAgICAgICAgICAgICAvKiE8IER1YWwgYWRkcmVzc2luZyBtb2RlIGVuYWJsZSAqLw0KI2RlZmluZSBJMkNfT0FSMl9BREQyX1BvcyAgICAgICAgICAgICAgICAgICAoMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBJMkNfT0FSMl9BREQyX01zayAgICAgICAgICAgICAgICAgICAoMHg3RlUgPDwgSTJDX09BUjJfQUREMl9Qb3MpICAgICAgIC8qITwgMHgwMDAwMDBGRSAqLw0KI2RlZmluZSBJMkNfT0FSMl9BREQyICAgICAgICAgICAgICAgICAgICAgICBJMkNfT0FSMl9BREQyX01zayAgICAgICAgICAgICAgICAgIC8qITwgSW50ZXJmYWNlIGFkZHJlc3MgKi8NCg0KLyoqKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgSTJDX0RSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgSTJDX0RSX0RSX1BvcyAgICAgICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgSTJDX0RSX0RSX01zayAgICAgICAgICAgICAgICAgICAgICAgKDB4RkZVIDw8IEkyQ19EUl9EUl9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDAwRkYgKi8NCiNkZWZpbmUgSTJDX0RSX0RSICAgICAgICAgICAgICAgICAgICAgICAgICAgSTJDX0RSX0RSX01zayAgICAgICAgICAgICAgICAgICAgICAvKiE8IDgtYml0IERhdGEgUmVnaXN0ZXIgKi8NCg0KLyoqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBJMkNfU1IxIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgSTJDX1NSMV9TQl9Qb3MgICAgICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgSTJDX1NSMV9TQl9Nc2sgICAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgSTJDX1NSMV9TQl9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDEgKi8NCiNkZWZpbmUgSTJDX1NSMV9TQiAgICAgICAgICAgICAgICAgICAgICAgICAgSTJDX1NSMV9TQl9Nc2sgICAgICAgICAgICAgICAgICAgICAvKiE8IFN0YXJ0IEJpdCAoTWFzdGVyIG1vZGUpICovDQojZGVmaW5lIEkyQ19TUjFfQUREUl9Qb3MgICAgICAgICAgICAgICAgICAgICgxVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEkyQ19TUjFfQUREUl9Nc2sgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IEkyQ19TUjFfQUREUl9Qb3MpICAgICAgICAgLyohPCAweDAwMDAwMDAyICovDQojZGVmaW5lIEkyQ19TUjFfQUREUiAgICAgICAgICAgICAgICAgICAgICAgIEkyQ19TUjFfQUREUl9Nc2sgICAgICAgICAgICAgICAgICAgLyohPCBBZGRyZXNzIHNlbnQgKG1hc3RlciBtb2RlKS9tYXRjaGVkIChzbGF2ZSBtb2RlKSAqLw0KI2RlZmluZSBJMkNfU1IxX0JURl9Qb3MgICAgICAgICAgICAgICAgICAgICAoMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBJMkNfU1IxX0JURl9Nc2sgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBJMkNfU1IxX0JURl9Qb3MpICAgICAgICAgIC8qITwgMHgwMDAwMDAwNCAqLw0KI2RlZmluZSBJMkNfU1IxX0JURiAgICAgICAgICAgICAgICAgICAgICAgICBJMkNfU1IxX0JURl9Nc2sgICAgICAgICAgICAgICAgICAgIC8qITwgQnl0ZSBUcmFuc2ZlciBGaW5pc2hlZCAqLw0KI2RlZmluZSBJMkNfU1IxX0FERDEwX1BvcyAgICAgICAgICAgICAgICAgICAoM1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBJMkNfU1IxX0FERDEwX01zayAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBJMkNfU1IxX0FERDEwX1BvcykgICAgICAgIC8qITwgMHgwMDAwMDAwOCAqLw0KI2RlZmluZSBJMkNfU1IxX0FERDEwICAgICAgICAgICAgICAgICAgICAgICBJMkNfU1IxX0FERDEwX01zayAgICAgICAgICAgICAgICAgIC8qITwgMTAtYml0IGhlYWRlciBzZW50IChNYXN0ZXIgbW9kZSkgKi8NCiNkZWZpbmUgSTJDX1NSMV9TVE9QRl9Qb3MgICAgICAgICAgICAgICAgICAgKDRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgSTJDX1NSMV9TVE9QRl9Nc2sgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgSTJDX1NSMV9TVE9QRl9Qb3MpICAgICAgICAvKiE8IDB4MDAwMDAwMTAgKi8NCiNkZWZpbmUgSTJDX1NSMV9TVE9QRiAgICAgICAgICAgICAgICAgICAgICAgSTJDX1NSMV9TVE9QRl9Nc2sgICAgICAgICAgICAgICAgICAvKiE8IFN0b3AgZGV0ZWN0aW9uIChTbGF2ZSBtb2RlKSAqLw0KI2RlZmluZSBJMkNfU1IxX1JYTkVfUG9zICAgICAgICAgICAgICAgICAgICAoNlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBJMkNfU1IxX1JYTkVfTXNrICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBJMkNfU1IxX1JYTkVfUG9zKSAgICAgICAgIC8qITwgMHgwMDAwMDA0MCAqLw0KI2RlZmluZSBJMkNfU1IxX1JYTkUgICAgICAgICAgICAgICAgICAgICAgICBJMkNfU1IxX1JYTkVfTXNrICAgICAgICAgICAgICAgICAgIC8qITwgRGF0YSBSZWdpc3RlciBub3QgRW1wdHkgKHJlY2VpdmVycykgKi8NCiNkZWZpbmUgSTJDX1NSMV9UWEVfUG9zICAgICAgICAgICAgICAgICAgICAgKDdVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgSTJDX1NSMV9UWEVfTXNrICAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgSTJDX1NSMV9UWEVfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDAwODAgKi8NCiNkZWZpbmUgSTJDX1NSMV9UWEUgICAgICAgICAgICAgICAgICAgICAgICAgSTJDX1NSMV9UWEVfTXNrICAgICAgICAgICAgICAgICAgICAvKiE8IERhdGEgUmVnaXN0ZXIgRW1wdHkgKHRyYW5zbWl0dGVycykgKi8NCiNkZWZpbmUgSTJDX1NSMV9CRVJSX1BvcyAgICAgICAgICAgICAgICAgICAgKDhVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgSTJDX1NSMV9CRVJSX01zayAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgSTJDX1NSMV9CRVJSX1BvcykgICAgICAgICAvKiE8IDB4MDAwMDAxMDAgKi8NCiNkZWZpbmUgSTJDX1NSMV9CRVJSICAgICAgICAgICAgICAgICAgICAgICAgSTJDX1NSMV9CRVJSX01zayAgICAgICAgICAgICAgICAgICAvKiE8IEJ1cyBFcnJvciAqLw0KI2RlZmluZSBJMkNfU1IxX0FSTE9fUG9zICAgICAgICAgICAgICAgICAgICAoOVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBJMkNfU1IxX0FSTE9fTXNrICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBJMkNfU1IxX0FSTE9fUG9zKSAgICAgICAgIC8qITwgMHgwMDAwMDIwMCAqLw0KI2RlZmluZSBJMkNfU1IxX0FSTE8gICAgICAgICAgICAgICAgICAgICAgICBJMkNfU1IxX0FSTE9fTXNrICAgICAgICAgICAgICAgICAgIC8qITwgQXJiaXRyYXRpb24gTG9zdCAobWFzdGVyIG1vZGUpICovDQojZGVmaW5lIEkyQ19TUjFfQUZfUG9zICAgICAgICAgICAgICAgICAgICAgICgxMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEkyQ19TUjFfQUZfTXNrICAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IEkyQ19TUjFfQUZfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwNDAwICovDQojZGVmaW5lIEkyQ19TUjFfQUYgICAgICAgICAgICAgICAgICAgICAgICAgIEkyQ19TUjFfQUZfTXNrICAgICAgICAgICAgICAgICAgICAgLyohPCBBY2tub3dsZWRnZSBGYWlsdXJlICovDQojZGVmaW5lIEkyQ19TUjFfT1ZSX1BvcyAgICAgICAgICAgICAgICAgICAgICgxMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEkyQ19TUjFfT1ZSX01zayAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IEkyQ19TUjFfT1ZSX1BvcykgICAgICAgICAgLyohPCAweDAwMDAwODAwICovDQojZGVmaW5lIEkyQ19TUjFfT1ZSICAgICAgICAgICAgICAgICAgICAgICAgIEkyQ19TUjFfT1ZSX01zayAgICAgICAgICAgICAgICAgICAgLyohPCBPdmVycnVuL1VuZGVycnVuICovDQojZGVmaW5lIEkyQ19TUjFfUEVDRVJSX1BvcyAgICAgICAgICAgICAgICAgICgxMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEkyQ19TUjFfUEVDRVJSX01zayAgICAgICAgICAgICAgICAgICgweDFVIDw8IEkyQ19TUjFfUEVDRVJSX1BvcykgICAgICAgLyohPCAweDAwMDAxMDAwICovDQojZGVmaW5lIEkyQ19TUjFfUEVDRVJSICAgICAgICAgICAgICAgICAgICAgIEkyQ19TUjFfUEVDRVJSX01zayAgICAgICAgICAgICAgICAgLyohPCBQRUMgRXJyb3IgaW4gcmVjZXB0aW9uICovDQojZGVmaW5lIEkyQ19TUjFfVElNRU9VVF9Qb3MgICAgICAgICAgICAgICAgICgxNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEkyQ19TUjFfVElNRU9VVF9Nc2sgICAgICAgICAgICAgICAgICgweDFVIDw8IEkyQ19TUjFfVElNRU9VVF9Qb3MpICAgICAgLyohPCAweDAwMDA0MDAwICovDQojZGVmaW5lIEkyQ19TUjFfVElNRU9VVCAgICAgICAgICAgICAgICAgICAgIEkyQ19TUjFfVElNRU9VVF9Nc2sgICAgICAgICAgICAgICAgLyohPCBUaW1lb3V0IG9yIFRsb3cgRXJyb3IgKi8NCiNkZWZpbmUgSTJDX1NSMV9TTUJBTEVSVF9Qb3MgICAgICAgICAgICAgICAgKDE1VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgSTJDX1NSMV9TTUJBTEVSVF9Nc2sgICAgICAgICAgICAgICAgKDB4MVUgPDwgSTJDX1NSMV9TTUJBTEVSVF9Qb3MpICAgICAvKiE8IDB4MDAwMDgwMDAgKi8NCiNkZWZpbmUgSTJDX1NSMV9TTUJBTEVSVCAgICAgICAgICAgICAgICAgICAgSTJDX1NSMV9TTUJBTEVSVF9Nc2sgICAgICAgICAgICAgICAvKiE8IFNNQnVzIEFsZXJ0ICovDQoNCi8qKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgSTJDX1NSMiByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIEkyQ19TUjJfTVNMX1BvcyAgICAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEkyQ19TUjJfTVNMX01zayAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IEkyQ19TUjJfTVNMX1BvcykgICAgICAgICAgLyohPCAweDAwMDAwMDAxICovDQojZGVmaW5lIEkyQ19TUjJfTVNMICAgICAgICAgICAgICAgICAgICAgICAgIEkyQ19TUjJfTVNMX01zayAgICAgICAgICAgICAgICAgICAgLyohPCBNYXN0ZXIvU2xhdmUgKi8NCiNkZWZpbmUgSTJDX1NSMl9CVVNZX1BvcyAgICAgICAgICAgICAgICAgICAgKDFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgSTJDX1NSMl9CVVNZX01zayAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgSTJDX1NSMl9CVVNZX1BvcykgICAgICAgICAvKiE8IDB4MDAwMDAwMDIgKi8NCiNkZWZpbmUgSTJDX1NSMl9CVVNZICAgICAgICAgICAgICAgICAgICAgICAgSTJDX1NSMl9CVVNZX01zayAgICAgICAgICAgICAgICAgICAvKiE8IEJ1cyBCdXN5ICovDQojZGVmaW5lIEkyQ19TUjJfVFJBX1BvcyAgICAgICAgICAgICAgICAgICAgICgyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEkyQ19TUjJfVFJBX01zayAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IEkyQ19TUjJfVFJBX1BvcykgICAgICAgICAgLyohPCAweDAwMDAwMDA0ICovDQojZGVmaW5lIEkyQ19TUjJfVFJBICAgICAgICAgICAgICAgICAgICAgICAgIEkyQ19TUjJfVFJBX01zayAgICAgICAgICAgICAgICAgICAgLyohPCBUcmFuc21pdHRlci9SZWNlaXZlciAqLw0KI2RlZmluZSBJMkNfU1IyX0dFTkNBTExfUG9zICAgICAgICAgICAgICAgICAoNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBJMkNfU1IyX0dFTkNBTExfTXNrICAgICAgICAgICAgICAgICAoMHgxVSA8PCBJMkNfU1IyX0dFTkNBTExfUG9zKSAgICAgIC8qITwgMHgwMDAwMDAxMCAqLw0KI2RlZmluZSBJMkNfU1IyX0dFTkNBTEwgICAgICAgICAgICAgICAgICAgICBJMkNfU1IyX0dFTkNBTExfTXNrICAgICAgICAgICAgICAgIC8qITwgR2VuZXJhbCBDYWxsIEFkZHJlc3MgKFNsYXZlIG1vZGUpICovDQojZGVmaW5lIEkyQ19TUjJfU01CREVGQVVMVF9Qb3MgICAgICAgICAgICAgICg1VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEkyQ19TUjJfU01CREVGQVVMVF9Nc2sgICAgICAgICAgICAgICgweDFVIDw8IEkyQ19TUjJfU01CREVGQVVMVF9Qb3MpICAgLyohPCAweDAwMDAwMDIwICovDQojZGVmaW5lIEkyQ19TUjJfU01CREVGQVVMVCAgICAgICAgICAgICAgICAgIEkyQ19TUjJfU01CREVGQVVMVF9Nc2sgICAgICAgICAgICAgLyohPCBTTUJ1cyBEZXZpY2UgRGVmYXVsdCBBZGRyZXNzIChTbGF2ZSBtb2RlKSAqLw0KI2RlZmluZSBJMkNfU1IyX1NNQkhPU1RfUG9zICAgICAgICAgICAgICAgICAoNlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBJMkNfU1IyX1NNQkhPU1RfTXNrICAgICAgICAgICAgICAgICAoMHgxVSA8PCBJMkNfU1IyX1NNQkhPU1RfUG9zKSAgICAgIC8qITwgMHgwMDAwMDA0MCAqLw0KI2RlZmluZSBJMkNfU1IyX1NNQkhPU1QgICAgICAgICAgICAgICAgICAgICBJMkNfU1IyX1NNQkhPU1RfTXNrICAgICAgICAgICAgICAgIC8qITwgU01CdXMgSG9zdCBIZWFkZXIgKFNsYXZlIG1vZGUpICovDQojZGVmaW5lIEkyQ19TUjJfRFVBTEZfUG9zICAgICAgICAgICAgICAgICAgICg3VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEkyQ19TUjJfRFVBTEZfTXNrICAgICAgICAgICAgICAgICAgICgweDFVIDw8IEkyQ19TUjJfRFVBTEZfUG9zKSAgICAgICAgLyohPCAweDAwMDAwMDgwICovDQojZGVmaW5lIEkyQ19TUjJfRFVBTEYgICAgICAgICAgICAgICAgICAgICAgIEkyQ19TUjJfRFVBTEZfTXNrICAgICAgICAgICAgICAgICAgLyohPCBEdWFsIEZsYWcgKFNsYXZlIG1vZGUpICovDQojZGVmaW5lIEkyQ19TUjJfUEVDX1BvcyAgICAgICAgICAgICAgICAgICAgICg4VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEkyQ19TUjJfUEVDX01zayAgICAgICAgICAgICAgICAgICAgICgweEZGVSA8PCBJMkNfU1IyX1BFQ19Qb3MpICAgICAgICAgLyohPCAweDAwMDBGRjAwICovDQojZGVmaW5lIEkyQ19TUjJfUEVDICAgICAgICAgICAgICAgICAgICAgICAgIEkyQ19TUjJfUEVDX01zayAgICAgICAgICAgICAgICAgICAgLyohPCBQYWNrZXQgRXJyb3IgQ2hlY2tpbmcgUmVnaXN0ZXIgKi8NCg0KLyoqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBJMkNfQ0NSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgSTJDX0NDUl9DQ1JfUG9zICAgICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgSTJDX0NDUl9DQ1JfTXNrICAgICAgICAgICAgICAgICAgICAgKDB4RkZGVSA8PCBJMkNfQ0NSX0NDUl9Qb3MpICAgICAgICAvKiE8IDB4MDAwMDBGRkYgKi8NCiNkZWZpbmUgSTJDX0NDUl9DQ1IgICAgICAgICAgICAgICAgICAgICAgICAgSTJDX0NDUl9DQ1JfTXNrICAgICAgICAgICAgICAgICAgICAvKiE8IENsb2NrIENvbnRyb2wgUmVnaXN0ZXIgaW4gRmFzdC9TdGFuZGFyZCBtb2RlIChNYXN0ZXIgbW9kZSkgKi8NCiNkZWZpbmUgSTJDX0NDUl9EVVRZX1BvcyAgICAgICAgICAgICAgICAgICAgKDE0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgSTJDX0NDUl9EVVRZX01zayAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgSTJDX0NDUl9EVVRZX1BvcykgICAgICAgICAvKiE8IDB4MDAwMDQwMDAgKi8NCiNkZWZpbmUgSTJDX0NDUl9EVVRZICAgICAgICAgICAgICAgICAgICAgICAgSTJDX0NDUl9EVVRZX01zayAgICAgICAgICAgICAgICAgICAvKiE8IEZhc3QgTW9kZSBEdXR5IEN5Y2xlICovDQojZGVmaW5lIEkyQ19DQ1JfRlNfUG9zICAgICAgICAgICAgICAgICAgICAgICgxNVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEkyQ19DQ1JfRlNfTXNrICAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IEkyQ19DQ1JfRlNfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDA4MDAwICovDQojZGVmaW5lIEkyQ19DQ1JfRlMgICAgICAgICAgICAgICAgICAgICAgICAgIEkyQ19DQ1JfRlNfTXNrICAgICAgICAgICAgICAgICAgICAgLyohPCBJMkMgTWFzdGVyIE1vZGUgU2VsZWN0aW9uICovDQoNCi8qKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBJMkNfVFJJU0UgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIEkyQ19UUklTRV9UUklTRV9Qb3MgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEkyQ19UUklTRV9UUklTRV9Nc2sgICAgICAgICAgICAgICAgICgweDNGVSA8PCBJMkNfVFJJU0VfVFJJU0VfUG9zKSAgICAgLyohPCAweDAwMDAwMDNGICovDQojZGVmaW5lIEkyQ19UUklTRV9UUklTRSAgICAgICAgICAgICAgICAgICAgIEkyQ19UUklTRV9UUklTRV9Nc2sgICAgICAgICAgICAgICAgLyohPCBNYXhpbXVtIFJpc2UgVGltZSBpbiBGYXN0L1N0YW5kYXJkIG1vZGUgKE1hc3RlciBtb2RlKSAqLw0KDQovKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLw0KLyogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8NCi8qICAgICAgICAgICAgICAgICAgICAgICAgSW5kZXBlbmRlbnQgV0FUQ0hET0cgKElXREcpICAgICAgICAgICAgICAgICAgICAgICAgICovDQovKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLw0KLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8NCg0KLyoqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBJV0RHX0tSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgSVdER19LUl9LRVlfUG9zICAgICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgSVdER19LUl9LRVlfTXNrICAgICAgICAgICAgICAgICAgICAgKDB4RkZGRlUgPDwgSVdER19LUl9LRVlfUG9zKSAgICAgICAvKiE8IDB4MDAwMEZGRkYgKi8NCiNkZWZpbmUgSVdER19LUl9LRVkgICAgICAgICAgICAgICAgICAgICAgICAgSVdER19LUl9LRVlfTXNrICAgICAgICAgICAgICAgICAgICAvKiE8IEtleSB2YWx1ZSAod3JpdGUgb25seSwgcmVhZCAwMDAwaCkgKi8NCg0KLyoqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBJV0RHX1BSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgSVdER19QUl9QUl9Qb3MgICAgICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgSVdER19QUl9QUl9Nc2sgICAgICAgICAgICAgICAgICAgICAgKDB4N1UgPDwgSVdER19QUl9QUl9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDcgKi8NCiNkZWZpbmUgSVdER19QUl9QUiAgICAgICAgICAgICAgICAgICAgICAgICAgSVdER19QUl9QUl9Nc2sgICAgICAgICAgICAgICAgICAgICAvKiE8IFBSWzI6MF0gKFByZXNjYWxlciBkaXZpZGVyKSAqLw0KI2RlZmluZSBJV0RHX1BSX1BSXzAgICAgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBJV0RHX1BSX1BSX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDAwMSAqLw0KI2RlZmluZSBJV0RHX1BSX1BSXzEgICAgICAgICAgICAgICAgICAgICAgICAoMHgyVSA8PCBJV0RHX1BSX1BSX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDAwMiAqLw0KI2RlZmluZSBJV0RHX1BSX1BSXzIgICAgICAgICAgICAgICAgICAgICAgICAoMHg0VSA8PCBJV0RHX1BSX1BSX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDAwNCAqLw0KDQovKioqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIElXREdfUkxSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBJV0RHX1JMUl9STF9Qb3MgICAgICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBJV0RHX1JMUl9STF9Nc2sgICAgICAgICAgICAgICAgICAgICAoMHhGRkZVIDw8IElXREdfUkxSX1JMX1BvcykgICAgICAgIC8qITwgMHgwMDAwMEZGRiAqLw0KI2RlZmluZSBJV0RHX1JMUl9STCAgICAgICAgICAgICAgICAgICAgICAgICBJV0RHX1JMUl9STF9Nc2sgICAgICAgICAgICAgICAgICAgIC8qITwgV2F0Y2hkb2cgY291bnRlciByZWxvYWQgdmFsdWUgKi8NCg0KLyoqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBJV0RHX1NSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgSVdER19TUl9QVlVfUG9zICAgICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgSVdER19TUl9QVlVfTXNrICAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgSVdER19TUl9QVlVfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDAwMDEgKi8NCiNkZWZpbmUgSVdER19TUl9QVlUgICAgICAgICAgICAgICAgICAgICAgICAgSVdER19TUl9QVlVfTXNrICAgICAgICAgICAgICAgICAgICAvKiE8IFdhdGNoZG9nIHByZXNjYWxlciB2YWx1ZSB1cGRhdGUgKi8NCiNkZWZpbmUgSVdER19TUl9SVlVfUG9zICAgICAgICAgICAgICAgICAgICAgKDFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgSVdER19TUl9SVlVfTXNrICAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgSVdER19TUl9SVlVfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDAwMDIgKi8NCiNkZWZpbmUgSVdER19TUl9SVlUgICAgICAgICAgICAgICAgICAgICAgICAgSVdER19TUl9SVlVfTXNrICAgICAgICAgICAgICAgICAgICAvKiE8IFdhdGNoZG9nIGNvdW50ZXIgcmVsb2FkIHZhbHVlIHVwZGF0ZSAqLw0KDQovKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLw0KLyogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8NCi8qICAgICAgICAgICAgICAgICAgICAgICAgICBMQ0QgQ29udHJvbGxlciAoTENEKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovDQovKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLw0KLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8NCg0KLyoqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBMQ0RfQ1IgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgTENEX0NSX0xDREVOX1BvcyAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgTENEX0NSX0xDREVOX01zayAgICAgICAgICAgKDB4MVUgPDwgTENEX0NSX0xDREVOX1BvcykgICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDEgKi8NCiNkZWZpbmUgTENEX0NSX0xDREVOICAgICAgICAgICAgICAgTENEX0NSX0xDREVOX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IExDRCBFbmFibGUgQml0ICovDQojZGVmaW5lIExDRF9DUl9WU0VMX1BvcyAgICAgICAgICAgICgxVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIExDRF9DUl9WU0VMX01zayAgICAgICAgICAgICgweDFVIDw8IExDRF9DUl9WU0VMX1BvcykgICAgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDAyICovDQojZGVmaW5lIExDRF9DUl9WU0VMICAgICAgICAgICAgICAgIExDRF9DUl9WU0VMX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBWb2x0YWdlIHNvdXJjZSBzZWxlY3RvciBCaXQgKi8NCg0KI2RlZmluZSBMQ0RfQ1JfRFVUWV9Qb3MgICAgICAgICAgICAoMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBMQ0RfQ1JfRFVUWV9Nc2sgICAgICAgICAgICAoMHg3VSA8PCBMQ0RfQ1JfRFVUWV9Qb3MpICAgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDAxQyAqLw0KI2RlZmluZSBMQ0RfQ1JfRFVUWSAgICAgICAgICAgICAgICBMQ0RfQ1JfRFVUWV9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgRFVUWVsyOjBdIGJpdHMgKER1dHkgc2VsZWN0b3IpICovDQojZGVmaW5lIExDRF9DUl9EVVRZXzAgICAgICAgICAgICAgICgweDFVIDw8IExDRF9DUl9EVVRZX1BvcykgICAgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDA0ICovDQojZGVmaW5lIExDRF9DUl9EVVRZXzEgICAgICAgICAgICAgICgweDJVIDw8IExDRF9DUl9EVVRZX1BvcykgICAgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDA4ICovDQojZGVmaW5lIExDRF9DUl9EVVRZXzIgICAgICAgICAgICAgICgweDRVIDw8IExDRF9DUl9EVVRZX1BvcykgICAgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDEwICovDQoNCiNkZWZpbmUgTENEX0NSX0JJQVNfUG9zICAgICAgICAgICAgKDVVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgTENEX0NSX0JJQVNfTXNrICAgICAgICAgICAgKDB4M1UgPDwgTENEX0NSX0JJQVNfUG9zKSAgICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwNjAgKi8NCiNkZWZpbmUgTENEX0NSX0JJQVMgICAgICAgICAgICAgICAgTENEX0NSX0JJQVNfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IEJJQVNbMTowXSBiaXRzIChCaWFzIHNlbGVjdG9yKSAqLw0KI2RlZmluZSBMQ0RfQ1JfQklBU18wICAgICAgICAgICAgICAoMHgxVSA8PCBMQ0RfQ1JfQklBU19Qb3MpICAgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDAyMCAqLw0KI2RlZmluZSBMQ0RfQ1JfQklBU18xICAgICAgICAgICAgICAoMHgyVSA8PCBMQ0RfQ1JfQklBU19Qb3MpICAgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDA0MCAqLw0KDQojZGVmaW5lIExDRF9DUl9NVVhfU0VHX1BvcyAgICAgICAgICg3VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIExDRF9DUl9NVVhfU0VHX01zayAgICAgICAgICgweDFVIDw8IExDRF9DUl9NVVhfU0VHX1BvcykgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDgwICovDQojZGVmaW5lIExDRF9DUl9NVVhfU0VHICAgICAgICAgICAgIExDRF9DUl9NVVhfU0VHX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBNdXggU2VnbWVudCBFbmFibGUgQml0ICovDQoNCi8qKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgTENEX0ZDUiByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIExDRF9GQ1JfSERfUG9zICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIExDRF9GQ1JfSERfTXNrICAgICAgICAgICAgICgweDFVIDw8IExDRF9GQ1JfSERfUG9zKSAgICAgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDAxICovDQojZGVmaW5lIExDRF9GQ1JfSEQgICAgICAgICAgICAgICAgIExDRF9GQ1JfSERfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBIaWdoIERyaXZlIEVuYWJsZSBCaXQgKi8NCiNkZWZpbmUgTENEX0ZDUl9TT0ZJRV9Qb3MgICAgICAgICAgKDFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgTENEX0ZDUl9TT0ZJRV9Nc2sgICAgICAgICAgKDB4MVUgPDwgTENEX0ZDUl9TT0ZJRV9Qb3MpICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDIgKi8NCiNkZWZpbmUgTENEX0ZDUl9TT0ZJRSAgICAgICAgICAgICAgTENEX0ZDUl9TT0ZJRV9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFN0YXJ0IG9mIEZyYW1lIEludGVycnVwdCBFbmFibGUgQml0ICovDQojZGVmaW5lIExDRF9GQ1JfVURESUVfUG9zICAgICAgICAgICgzVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIExDRF9GQ1JfVURESUVfTXNrICAgICAgICAgICgweDFVIDw8IExDRF9GQ1JfVURESUVfUG9zKSAgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDA4ICovDQojZGVmaW5lIExDRF9GQ1JfVURESUUgICAgICAgICAgICAgIExDRF9GQ1JfVURESUVfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBVcGRhdGUgRGlzcGxheSBEb25lIEludGVycnVwdCBFbmFibGUgQml0ICovDQoNCiNkZWZpbmUgTENEX0ZDUl9QT05fUG9zICAgICAgICAgICAgKDRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgTENEX0ZDUl9QT05fTXNrICAgICAgICAgICAgKDB4N1UgPDwgTENEX0ZDUl9QT05fUG9zKSAgICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwNzAgKi8NCiNkZWZpbmUgTENEX0ZDUl9QT04gICAgICAgICAgICAgICAgTENEX0ZDUl9QT05fTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBPTlsyOjBdIGJpdHMgKFB1bHMgT04gRHVyYXRpb24pICovDQojZGVmaW5lIExDRF9GQ1JfUE9OXzAgICAgICAgICAgICAgICgweDFVIDw8IExDRF9GQ1JfUE9OX1BvcykgICAgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDEwICovDQojZGVmaW5lIExDRF9GQ1JfUE9OXzEgICAgICAgICAgICAgICgweDJVIDw8IExDRF9GQ1JfUE9OX1BvcykgICAgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDIwICovDQojZGVmaW5lIExDRF9GQ1JfUE9OXzIgICAgICAgICAgICAgICgweDRVIDw8IExDRF9GQ1JfUE9OX1BvcykgICAgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDQwICovDQoNCiNkZWZpbmUgTENEX0ZDUl9ERUFEX1BvcyAgICAgICAgICAgKDdVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgTENEX0ZDUl9ERUFEX01zayAgICAgICAgICAgKDB4N1UgPDwgTENEX0ZDUl9ERUFEX1BvcykgICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAzODAgKi8NCiNkZWZpbmUgTENEX0ZDUl9ERUFEICAgICAgICAgICAgICAgTENEX0ZDUl9ERUFEX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IERFQURbMjowXSBiaXRzIChERUFEIFRpbWUpICovDQojZGVmaW5lIExDRF9GQ1JfREVBRF8wICAgICAgICAgICAgICgweDFVIDw8IExDRF9GQ1JfREVBRF9Qb3MpICAgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDgwICovDQojZGVmaW5lIExDRF9GQ1JfREVBRF8xICAgICAgICAgICAgICgweDJVIDw8IExDRF9GQ1JfREVBRF9Qb3MpICAgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMTAwICovDQojZGVmaW5lIExDRF9GQ1JfREVBRF8yICAgICAgICAgICAgICgweDRVIDw8IExDRF9GQ1JfREVBRF9Qb3MpICAgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMjAwICovDQoNCiNkZWZpbmUgTENEX0ZDUl9DQ19Qb3MgICAgICAgICAgICAgKDEwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgTENEX0ZDUl9DQ19Nc2sgICAgICAgICAgICAgKDB4N1UgPDwgTENEX0ZDUl9DQ19Qb3MpICAgICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDFDMDAgKi8NCiNkZWZpbmUgTENEX0ZDUl9DQyAgICAgICAgICAgICAgICAgTENEX0ZDUl9DQ19Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IENDWzI6MF0gYml0cyAoQ29udHJhc3QgQ29udHJvbCkgKi8NCiNkZWZpbmUgTENEX0ZDUl9DQ18wICAgICAgICAgICAgICAgKDB4MVUgPDwgTENEX0ZDUl9DQ19Qb3MpICAgICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDA0MDAgKi8NCiNkZWZpbmUgTENEX0ZDUl9DQ18xICAgICAgICAgICAgICAgKDB4MlUgPDwgTENEX0ZDUl9DQ19Qb3MpICAgICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDA4MDAgKi8NCiNkZWZpbmUgTENEX0ZDUl9DQ18yICAgICAgICAgICAgICAgKDB4NFUgPDwgTENEX0ZDUl9DQ19Qb3MpICAgICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDEwMDAgKi8NCg0KI2RlZmluZSBMQ0RfRkNSX0JMSU5LRl9Qb3MgICAgICAgICAoMTNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBMQ0RfRkNSX0JMSU5LRl9Nc2sgICAgICAgICAoMHg3VSA8PCBMQ0RfRkNSX0JMSU5LRl9Qb3MpICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwRTAwMCAqLw0KI2RlZmluZSBMQ0RfRkNSX0JMSU5LRiAgICAgICAgICAgICBMQ0RfRkNSX0JMSU5LRl9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgQkxJTktGWzI6MF0gYml0cyAoQmxpbmsgRnJlcXVlbmN5KSAqLw0KI2RlZmluZSBMQ0RfRkNSX0JMSU5LRl8wICAgICAgICAgICAoMHgxVSA8PCBMQ0RfRkNSX0JMSU5LRl9Qb3MpICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMjAwMCAqLw0KI2RlZmluZSBMQ0RfRkNSX0JMSU5LRl8xICAgICAgICAgICAoMHgyVSA8PCBMQ0RfRkNSX0JMSU5LRl9Qb3MpICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwNDAwMCAqLw0KI2RlZmluZSBMQ0RfRkNSX0JMSU5LRl8yICAgICAgICAgICAoMHg0VSA8PCBMQ0RfRkNSX0JMSU5LRl9Qb3MpICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwODAwMCAqLw0KDQojZGVmaW5lIExDRF9GQ1JfQkxJTktfUG9zICAgICAgICAgICgxNlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIExDRF9GQ1JfQkxJTktfTXNrICAgICAgICAgICgweDNVIDw8IExDRF9GQ1JfQkxJTktfUG9zKSAgICAgICAgICAgICAgICAgLyohPCAweDAwMDMwMDAwICovDQojZGVmaW5lIExDRF9GQ1JfQkxJTksgICAgICAgICAgICAgIExDRF9GQ1JfQkxJTktfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBCTElOS1sxOjBdIGJpdHMgKEJsaW5rIEVuYWJsZSkgKi8NCiNkZWZpbmUgTENEX0ZDUl9CTElOS18wICAgICAgICAgICAgKDB4MVUgPDwgTENEX0ZDUl9CTElOS19Qb3MpICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMTAwMDAgKi8NCiNkZWZpbmUgTENEX0ZDUl9CTElOS18xICAgICAgICAgICAgKDB4MlUgPDwgTENEX0ZDUl9CTElOS19Qb3MpICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMjAwMDAgKi8NCg0KI2RlZmluZSBMQ0RfRkNSX0RJVl9Qb3MgICAgICAgICAgICAoMThVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBMQ0RfRkNSX0RJVl9Nc2sgICAgICAgICAgICAoMHhGVSA8PCBMQ0RfRkNSX0RJVl9Qb3MpICAgICAgICAgICAgICAgICAgIC8qITwgMHgwMDNDMDAwMCAqLw0KI2RlZmluZSBMQ0RfRkNSX0RJViAgICAgICAgICAgICAgICBMQ0RfRkNSX0RJVl9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgRElWWzM6MF0gYml0cyAoRGl2aWRlcikgKi8NCiNkZWZpbmUgTENEX0ZDUl9QU19Qb3MgICAgICAgICAgICAgKDIyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgTENEX0ZDUl9QU19Nc2sgICAgICAgICAgICAgKDB4RlUgPDwgTENEX0ZDUl9QU19Qb3MpICAgICAgICAgICAgICAgICAgICAvKiE8IDB4MDNDMDAwMDAgKi8NCiNkZWZpbmUgTENEX0ZDUl9QUyAgICAgICAgICAgICAgICAgTENEX0ZDUl9QU19Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBTWzM6MF0gYml0cyAoUHJlc2NhbGVyKSAqLw0KDQovKioqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIExDRF9TUiByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBMQ0RfU1JfRU5TX1BvcyAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBMQ0RfU1JfRU5TX01zayAgICAgICAgICAgICAoMHgxVSA8PCBMQ0RfU1JfRU5TX1BvcykgICAgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDAwMSAqLw0KI2RlZmluZSBMQ0RfU1JfRU5TICAgICAgICAgICAgICAgICBMQ0RfU1JfRU5TX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgTENEIEVuYWJsZWQgQml0ICovDQojZGVmaW5lIExDRF9TUl9TT0ZfUG9zICAgICAgICAgICAgICgxVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIExDRF9TUl9TT0ZfTXNrICAgICAgICAgICAgICgweDFVIDw8IExDRF9TUl9TT0ZfUG9zKSAgICAgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDAyICovDQojZGVmaW5lIExDRF9TUl9TT0YgICAgICAgICAgICAgICAgIExDRF9TUl9TT0ZfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBTdGFydCBPZiBGcmFtZSBGbGFnIEJpdCAqLw0KI2RlZmluZSBMQ0RfU1JfVURSX1BvcyAgICAgICAgICAgICAoMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBMQ0RfU1JfVURSX01zayAgICAgICAgICAgICAoMHgxVSA8PCBMQ0RfU1JfVURSX1BvcykgICAgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDAwNCAqLw0KI2RlZmluZSBMQ0RfU1JfVURSICAgICAgICAgICAgICAgICBMQ0RfU1JfVURSX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgVXBkYXRlIERpc3BsYXkgUmVxdWVzdCBCaXQgKi8NCiNkZWZpbmUgTENEX1NSX1VERF9Qb3MgICAgICAgICAgICAgKDNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgTENEX1NSX1VERF9Nc2sgICAgICAgICAgICAgKDB4MVUgPDwgTENEX1NSX1VERF9Qb3MpICAgICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDggKi8NCiNkZWZpbmUgTENEX1NSX1VERCAgICAgICAgICAgICAgICAgTENEX1NSX1VERF9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFVwZGF0ZSBEaXNwbGF5IERvbmUgRmxhZyBCaXQgKi8NCiNkZWZpbmUgTENEX1NSX1JEWV9Qb3MgICAgICAgICAgICAgKDRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgTENEX1NSX1JEWV9Nc2sgICAgICAgICAgICAgKDB4MVUgPDwgTENEX1NSX1JEWV9Qb3MpICAgICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMTAgKi8NCiNkZWZpbmUgTENEX1NSX1JEWSAgICAgICAgICAgICAgICAgTENEX1NSX1JEWV9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFJlYWR5IEZsYWcgQml0ICovDQojZGVmaW5lIExDRF9TUl9GQ1JTUl9Qb3MgICAgICAgICAgICg1VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIExDRF9TUl9GQ1JTUl9Nc2sgICAgICAgICAgICgweDFVIDw8IExDRF9TUl9GQ1JTUl9Qb3MpICAgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDIwICovDQojZGVmaW5lIExDRF9TUl9GQ1JTUiAgICAgICAgICAgICAgIExDRF9TUl9GQ1JTUl9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBMQ0QgRkNSIFJlZ2lzdGVyIFN5bmNocm9uaXphdGlvbiBGbGFnIEJpdCAqLw0KDQovKioqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIExDRF9DTFIgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBMQ0RfQ0xSX1NPRkNfUG9zICAgICAgICAgICAoMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBMQ0RfQ0xSX1NPRkNfTXNrICAgICAgICAgICAoMHgxVSA8PCBMQ0RfQ0xSX1NPRkNfUG9zKSAgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDAwMiAqLw0KI2RlZmluZSBMQ0RfQ0xSX1NPRkMgICAgICAgICAgICAgICBMQ0RfQ0xSX1NPRkNfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgU3RhcnQgT2YgRnJhbWUgRmxhZyBDbGVhciBCaXQgKi8NCiNkZWZpbmUgTENEX0NMUl9VRERDX1BvcyAgICAgICAgICAgKDNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgTENEX0NMUl9VRERDX01zayAgICAgICAgICAgKDB4MVUgPDwgTENEX0NMUl9VRERDX1BvcykgICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDggKi8NCiNkZWZpbmUgTENEX0NMUl9VRERDICAgICAgICAgICAgICAgTENEX0NMUl9VRERDX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFVwZGF0ZSBEaXNwbGF5IERvbmUgRmxhZyBDbGVhciBCaXQgKi8NCg0KLyoqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBMQ0RfUkFNIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgTENEX1JBTV9TRUdNRU5UX0RBVEFfUG9zICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgTENEX1JBTV9TRUdNRU5UX0RBVEFfTXNrICAgKDB4RkZGRkZGRkZVIDw8IExDRF9SQU1fU0VHTUVOVF9EQVRBX1BvcykgICAvKiE8IDB4RkZGRkZGRkYgKi8NCiNkZWZpbmUgTENEX1JBTV9TRUdNRU5UX0RBVEEgICAgICAgTENEX1JBTV9TRUdNRU5UX0RBVEFfTXNrICAgICAgICAgICAgICAgICAgICAvKiE8IFNlZ21lbnQgRGF0YSBCaXRzICovDQoNCi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovDQovKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLw0KLyogICAgICAgICAgICAgICAgICAgICAgICAgIFBvd2VyIENvbnRyb2wgKFBXUikgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8NCi8qICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovDQovKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLw0KDQojZGVmaW5lIFBXUl9QVkRfU1VQUE9SVCAgICAgICAgICAgICAgICAgICAgICAgLyohPCBQV1IgZmVhdHVyZSBhdmFpbGFibGUgb25seSBvbiBzcGVjaWZpYyBkZXZpY2VzOiBQb3dlciBWb2x0YWdlIERldGVjdGlvbiBmZWF0dXJlICovDQoNCi8qKioqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFBXUl9DUiByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIFBXUl9DUl9MUFNEU1JfUG9zICAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFBXUl9DUl9MUFNEU1JfTXNrICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFBXUl9DUl9MUFNEU1JfUG9zKSAgICAgICAgLyohPCAweDAwMDAwMDAxICovDQojZGVmaW5lIFBXUl9DUl9MUFNEU1IgICAgICAgICAgICAgICAgICAgICAgIFBXUl9DUl9MUFNEU1JfTXNrICAgICAgICAgICAgICAgICAgLyohPCBMb3ctcG93ZXIgZGVlcHNsZWVwL3NsZWVwL2xvdyBwb3dlciBydW4gKi8NCiNkZWZpbmUgUFdSX0NSX1BERFNfUG9zICAgICAgICAgICAgICAgICAgICAgKDFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUFdSX0NSX1BERFNfTXNrICAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgUFdSX0NSX1BERFNfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDAwMDIgKi8NCiNkZWZpbmUgUFdSX0NSX1BERFMgICAgICAgICAgICAgICAgICAgICAgICAgUFdSX0NSX1BERFNfTXNrICAgICAgICAgICAgICAgICAgICAvKiE8IFBvd2VyIERvd24gRGVlcHNsZWVwICovDQojZGVmaW5lIFBXUl9DUl9DV1VGX1BvcyAgICAgICAgICAgICAgICAgICAgICgyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFBXUl9DUl9DV1VGX01zayAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFBXUl9DUl9DV1VGX1BvcykgICAgICAgICAgLyohPCAweDAwMDAwMDA0ICovDQojZGVmaW5lIFBXUl9DUl9DV1VGICAgICAgICAgICAgICAgICAgICAgICAgIFBXUl9DUl9DV1VGX01zayAgICAgICAgICAgICAgICAgICAgLyohPCBDbGVhciBXYWtldXAgRmxhZyAqLw0KI2RlZmluZSBQV1JfQ1JfQ1NCRl9Qb3MgICAgICAgICAgICAgICAgICAgICAoM1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBQV1JfQ1JfQ1NCRl9Nc2sgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBQV1JfQ1JfQ1NCRl9Qb3MpICAgICAgICAgIC8qITwgMHgwMDAwMDAwOCAqLw0KI2RlZmluZSBQV1JfQ1JfQ1NCRiAgICAgICAgICAgICAgICAgICAgICAgICBQV1JfQ1JfQ1NCRl9Nc2sgICAgICAgICAgICAgICAgICAgIC8qITwgQ2xlYXIgU3RhbmRieSBGbGFnICovDQojZGVmaW5lIFBXUl9DUl9QVkRFX1BvcyAgICAgICAgICAgICAgICAgICAgICg0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFBXUl9DUl9QVkRFX01zayAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFBXUl9DUl9QVkRFX1BvcykgICAgICAgICAgLyohPCAweDAwMDAwMDEwICovDQojZGVmaW5lIFBXUl9DUl9QVkRFICAgICAgICAgICAgICAgICAgICAgICAgIFBXUl9DUl9QVkRFX01zayAgICAgICAgICAgICAgICAgICAgLyohPCBQb3dlciBWb2x0YWdlIERldGVjdG9yIEVuYWJsZSAqLw0KDQojZGVmaW5lIFBXUl9DUl9QTFNfUG9zICAgICAgICAgICAgICAgICAgICAgICg1VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFBXUl9DUl9QTFNfTXNrICAgICAgICAgICAgICAgICAgICAgICgweDdVIDw8IFBXUl9DUl9QTFNfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwMEUwICovDQojZGVmaW5lIFBXUl9DUl9QTFMgICAgICAgICAgICAgICAgICAgICAgICAgIFBXUl9DUl9QTFNfTXNrICAgICAgICAgICAgICAgICAgICAgLyohPCBQTFNbMjowXSBiaXRzIChQVkQgTGV2ZWwgU2VsZWN0aW9uKSAqLw0KI2RlZmluZSBQV1JfQ1JfUExTXzAgICAgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBQV1JfQ1JfUExTX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDAyMCAqLw0KI2RlZmluZSBQV1JfQ1JfUExTXzEgICAgICAgICAgICAgICAgICAgICAgICAoMHgyVSA8PCBQV1JfQ1JfUExTX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDA0MCAqLw0KI2RlZmluZSBQV1JfQ1JfUExTXzIgICAgICAgICAgICAgICAgICAgICAgICAoMHg0VSA8PCBQV1JfQ1JfUExTX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDA4MCAqLw0KDQovKiE8IFBWRCBsZXZlbCBjb25maWd1cmF0aW9uICovDQojZGVmaW5lIFBXUl9DUl9QTFNfTEVWMCAgICAgICAgICAgICAgICAgICAgICgweDAwMDAwMDAwVSkgICAgICAgICAgICAgICAgICAgICAgLyohPCBQVkQgbGV2ZWwgMCAqLw0KI2RlZmluZSBQV1JfQ1JfUExTX0xFVjEgICAgICAgICAgICAgICAgICAgICAoMHgwMDAwMDAyMFUpICAgICAgICAgICAgICAgICAgICAgIC8qITwgUFZEIGxldmVsIDEgKi8NCiNkZWZpbmUgUFdSX0NSX1BMU19MRVYyICAgICAgICAgICAgICAgICAgICAgKDB4MDAwMDAwNDBVKSAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBWRCBsZXZlbCAyICovDQojZGVmaW5lIFBXUl9DUl9QTFNfTEVWMyAgICAgICAgICAgICAgICAgICAgICgweDAwMDAwMDYwVSkgICAgICAgICAgICAgICAgICAgICAgLyohPCBQVkQgbGV2ZWwgMyAqLw0KI2RlZmluZSBQV1JfQ1JfUExTX0xFVjQgICAgICAgICAgICAgICAgICAgICAoMHgwMDAwMDA4MFUpICAgICAgICAgICAgICAgICAgICAgIC8qITwgUFZEIGxldmVsIDQgKi8NCiNkZWZpbmUgUFdSX0NSX1BMU19MRVY1ICAgICAgICAgICAgICAgICAgICAgKDB4MDAwMDAwQTBVKSAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBWRCBsZXZlbCA1ICovDQojZGVmaW5lIFBXUl9DUl9QTFNfTEVWNiAgICAgICAgICAgICAgICAgICAgICgweDAwMDAwMEMwVSkgICAgICAgICAgICAgICAgICAgICAgLyohPCBQVkQgbGV2ZWwgNiAqLw0KI2RlZmluZSBQV1JfQ1JfUExTX0xFVjcgICAgICAgICAgICAgICAgICAgICAoMHgwMDAwMDBFMFUpICAgICAgICAgICAgICAgICAgICAgIC8qITwgUFZEIGxldmVsIDcgKi8NCg0KI2RlZmluZSBQV1JfQ1JfREJQX1BvcyAgICAgICAgICAgICAgICAgICAgICAoOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBQV1JfQ1JfREJQX01zayAgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBQV1JfQ1JfREJQX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDEwMCAqLw0KI2RlZmluZSBQV1JfQ1JfREJQICAgICAgICAgICAgICAgICAgICAgICAgICBQV1JfQ1JfREJQX01zayAgICAgICAgICAgICAgICAgICAgIC8qITwgRGlzYWJsZSBCYWNrdXAgRG9tYWluIHdyaXRlIHByb3RlY3Rpb24gKi8NCiNkZWZpbmUgUFdSX0NSX1VMUF9Qb3MgICAgICAgICAgICAgICAgICAgICAgKDlVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUFdSX0NSX1VMUF9Nc2sgICAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgUFdSX0NSX1VMUF9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDAyMDAgKi8NCiNkZWZpbmUgUFdSX0NSX1VMUCAgICAgICAgICAgICAgICAgICAgICAgICAgUFdSX0NSX1VMUF9Nc2sgICAgICAgICAgICAgICAgICAgICAvKiE8IFVsdHJhIExvdyBQb3dlciBtb2RlICovDQojZGVmaW5lIFBXUl9DUl9GV1VfUG9zICAgICAgICAgICAgICAgICAgICAgICgxMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFBXUl9DUl9GV1VfTXNrICAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFBXUl9DUl9GV1VfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwNDAwICovDQojZGVmaW5lIFBXUl9DUl9GV1UgICAgICAgICAgICAgICAgICAgICAgICAgIFBXUl9DUl9GV1VfTXNrICAgICAgICAgICAgICAgICAgICAgLyohPCBGYXN0IHdha2V1cCAqLw0KDQojZGVmaW5lIFBXUl9DUl9WT1NfUG9zICAgICAgICAgICAgICAgICAgICAgICgxMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFBXUl9DUl9WT1NfTXNrICAgICAgICAgICAgICAgICAgICAgICgweDNVIDw8IFBXUl9DUl9WT1NfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAxODAwICovDQojZGVmaW5lIFBXUl9DUl9WT1MgICAgICAgICAgICAgICAgICAgICAgICAgIFBXUl9DUl9WT1NfTXNrICAgICAgICAgICAgICAgICAgICAgLyohPCBWT1NbMTowXSBiaXRzIChWb2x0YWdlIHNjYWxpbmcgcmFuZ2Ugc2VsZWN0aW9uKSAqLw0KI2RlZmluZSBQV1JfQ1JfVk9TXzAgICAgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBQV1JfQ1JfVk9TX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDgwMCAqLw0KI2RlZmluZSBQV1JfQ1JfVk9TXzEgICAgICAgICAgICAgICAgICAgICAgICAoMHgyVSA8PCBQV1JfQ1JfVk9TX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMTAwMCAqLw0KI2RlZmluZSBQV1JfQ1JfTFBSVU5fUG9zICAgICAgICAgICAgICAgICAgICAoMTRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBQV1JfQ1JfTFBSVU5fTXNrICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBQV1JfQ1JfTFBSVU5fUG9zKSAgICAgICAgIC8qITwgMHgwMDAwNDAwMCAqLw0KI2RlZmluZSBQV1JfQ1JfTFBSVU4gICAgICAgICAgICAgICAgICAgICAgICBQV1JfQ1JfTFBSVU5fTXNrICAgICAgICAgICAgICAgICAgIC8qITwgTG93IHBvd2VyIHJ1biBtb2RlICovDQoNCi8qKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgUFdSX0NTUiByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIFBXUl9DU1JfV1VGX1BvcyAgICAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFBXUl9DU1JfV1VGX01zayAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFBXUl9DU1JfV1VGX1BvcykgICAgICAgICAgLyohPCAweDAwMDAwMDAxICovDQojZGVmaW5lIFBXUl9DU1JfV1VGICAgICAgICAgICAgICAgICAgICAgICAgIFBXUl9DU1JfV1VGX01zayAgICAgICAgICAgICAgICAgICAgLyohPCBXYWtldXAgRmxhZyAqLw0KI2RlZmluZSBQV1JfQ1NSX1NCRl9Qb3MgICAgICAgICAgICAgICAgICAgICAoMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBQV1JfQ1NSX1NCRl9Nc2sgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBQV1JfQ1NSX1NCRl9Qb3MpICAgICAgICAgIC8qITwgMHgwMDAwMDAwMiAqLw0KI2RlZmluZSBQV1JfQ1NSX1NCRiAgICAgICAgICAgICAgICAgICAgICAgICBQV1JfQ1NSX1NCRl9Nc2sgICAgICAgICAgICAgICAgICAgIC8qITwgU3RhbmRieSBGbGFnICovDQojZGVmaW5lIFBXUl9DU1JfUFZET19Qb3MgICAgICAgICAgICAgICAgICAgICgyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFBXUl9DU1JfUFZET19Nc2sgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFBXUl9DU1JfUFZET19Qb3MpICAgICAgICAgLyohPCAweDAwMDAwMDA0ICovDQojZGVmaW5lIFBXUl9DU1JfUFZETyAgICAgICAgICAgICAgICAgICAgICAgIFBXUl9DU1JfUFZET19Nc2sgICAgICAgICAgICAgICAgICAgLyohPCBQVkQgT3V0cHV0ICovDQojZGVmaW5lIFBXUl9DU1JfVlJFRklOVFJEWUZfUG9zICAgICAgICAgICAgICgzVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFBXUl9DU1JfVlJFRklOVFJEWUZfTXNrICAgICAgICAgICAgICgweDFVIDw8IFBXUl9DU1JfVlJFRklOVFJEWUZfUG9zKSAgLyohPCAweDAwMDAwMDA4ICovDQojZGVmaW5lIFBXUl9DU1JfVlJFRklOVFJEWUYgICAgICAgICAgICAgICAgIFBXUl9DU1JfVlJFRklOVFJEWUZfTXNrICAgICAgICAgICAgLyohPCBJbnRlcm5hbCB2b2x0YWdlIHJlZmVyZW5jZSAoVlJFRklOVCkgcmVhZHkgZmxhZyAqLw0KI2RlZmluZSBQV1JfQ1NSX1ZPU0ZfUG9zICAgICAgICAgICAgICAgICAgICAoNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBQV1JfQ1NSX1ZPU0ZfTXNrICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBQV1JfQ1NSX1ZPU0ZfUG9zKSAgICAgICAgIC8qITwgMHgwMDAwMDAxMCAqLw0KI2RlZmluZSBQV1JfQ1NSX1ZPU0YgICAgICAgICAgICAgICAgICAgICAgICBQV1JfQ1NSX1ZPU0ZfTXNrICAgICAgICAgICAgICAgICAgIC8qITwgVm9sdGFnZSBTY2FsaW5nIHNlbGVjdCBmbGFnICovDQojZGVmaW5lIFBXUl9DU1JfUkVHTFBGX1BvcyAgICAgICAgICAgICAgICAgICg1VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFBXUl9DU1JfUkVHTFBGX01zayAgICAgICAgICAgICAgICAgICgweDFVIDw8IFBXUl9DU1JfUkVHTFBGX1BvcykgICAgICAgLyohPCAweDAwMDAwMDIwICovDQojZGVmaW5lIFBXUl9DU1JfUkVHTFBGICAgICAgICAgICAgICAgICAgICAgIFBXUl9DU1JfUkVHTFBGX01zayAgICAgICAgICAgICAgICAgLyohPCBSZWd1bGF0b3IgTFAgZmxhZyAqLw0KDQojZGVmaW5lIFBXUl9DU1JfRVdVUDFfUG9zICAgICAgICAgICAgICAgICAgICg4VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFBXUl9DU1JfRVdVUDFfTXNrICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFBXUl9DU1JfRVdVUDFfUG9zKSAgICAgICAgLyohPCAweDAwMDAwMTAwICovDQojZGVmaW5lIFBXUl9DU1JfRVdVUDEgICAgICAgICAgICAgICAgICAgICAgIFBXUl9DU1JfRVdVUDFfTXNrICAgICAgICAgICAgICAgICAgLyohPCBFbmFibGUgV0tVUCBwaW4gMSAqLw0KI2RlZmluZSBQV1JfQ1NSX0VXVVAyX1BvcyAgICAgICAgICAgICAgICAgICAoOVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBQV1JfQ1NSX0VXVVAyX01zayAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBQV1JfQ1NSX0VXVVAyX1BvcykgICAgICAgIC8qITwgMHgwMDAwMDIwMCAqLw0KI2RlZmluZSBQV1JfQ1NSX0VXVVAyICAgICAgICAgICAgICAgICAgICAgICBQV1JfQ1NSX0VXVVAyX01zayAgICAgICAgICAgICAgICAgIC8qITwgRW5hYmxlIFdLVVAgcGluIDIgKi8NCiNkZWZpbmUgUFdSX0NTUl9FV1VQM19Qb3MgICAgICAgICAgICAgICAgICAgKDEwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUFdSX0NTUl9FV1VQM19Nc2sgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgUFdSX0NTUl9FV1VQM19Qb3MpICAgICAgICAvKiE8IDB4MDAwMDA0MDAgKi8NCiNkZWZpbmUgUFdSX0NTUl9FV1VQMyAgICAgICAgICAgICAgICAgICAgICAgUFdSX0NTUl9FV1VQM19Nc2sgICAgICAgICAgICAgICAgICAvKiE8IEVuYWJsZSBXS1VQIHBpbiAzICovDQoNCi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovDQovKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLw0KLyogICAgICAgICAgICAgICAgICAgICAgUmVzZXQgYW5kIENsb2NrIENvbnRyb2wgKFJDQykgICAgICAgICAgICAgICAgICAgICAgICAgKi8NCi8qICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovDQovKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLw0KLyoNCiogQGJyaWVmIFNwZWNpZmljIGRldmljZSBmZWF0dXJlIGRlZmluaXRpb25zICAobm90IHByZXNlbnQgb24gYWxsIGRldmljZXMgaW4gdGhlIFNUTTMyRjAgc2VyaWUpDQoqLw0KI2RlZmluZSBSQ0NfTFNFQ1NTX1NVUFBPUlQgICAgICAgICAgLyohPCBMU0UgQ1NTIGZlYXR1cmUgc3VwcG9ydCAqLw0KDQovKioqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBSQ0NfQ1IgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBSQ0NfQ1JfSFNJT05fUG9zICAgICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQ1JfSFNJT05fTXNrICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBSQ0NfQ1JfSFNJT05fUG9zKSAgICAgICAgIC8qITwgMHgwMDAwMDAwMSAqLw0KI2RlZmluZSBSQ0NfQ1JfSFNJT04gICAgICAgICAgICAgICAgICAgICAgICBSQ0NfQ1JfSFNJT05fTXNrICAgICAgICAgICAgICAgICAgIC8qITwgSW50ZXJuYWwgSGlnaCBTcGVlZCBjbG9jayBlbmFibGUgKi8NCiNkZWZpbmUgUkNDX0NSX0hTSVJEWV9Qb3MgICAgICAgICAgICAgICAgICAgKDFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0NSX0hTSVJEWV9Nc2sgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgUkNDX0NSX0hTSVJEWV9Qb3MpICAgICAgICAvKiE8IDB4MDAwMDAwMDIgKi8NCiNkZWZpbmUgUkNDX0NSX0hTSVJEWSAgICAgICAgICAgICAgICAgICAgICAgUkNDX0NSX0hTSVJEWV9Nc2sgICAgICAgICAgICAgICAgICAvKiE8IEludGVybmFsIEhpZ2ggU3BlZWQgY2xvY2sgcmVhZHkgZmxhZyAqLw0KDQojZGVmaW5lIFJDQ19DUl9NU0lPTl9Qb3MgICAgICAgICAgICAgICAgICAgICg4VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19DUl9NU0lPTl9Nc2sgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFJDQ19DUl9NU0lPTl9Qb3MpICAgICAgICAgLyohPCAweDAwMDAwMTAwICovDQojZGVmaW5lIFJDQ19DUl9NU0lPTiAgICAgICAgICAgICAgICAgICAgICAgIFJDQ19DUl9NU0lPTl9Nc2sgICAgICAgICAgICAgICAgICAgLyohPCBJbnRlcm5hbCBNdWx0aSBTcGVlZCBjbG9jayBlbmFibGUgKi8NCiNkZWZpbmUgUkNDX0NSX01TSVJEWV9Qb3MgICAgICAgICAgICAgICAgICAgKDlVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0NSX01TSVJEWV9Nc2sgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgUkNDX0NSX01TSVJEWV9Qb3MpICAgICAgICAvKiE8IDB4MDAwMDAyMDAgKi8NCiNkZWZpbmUgUkNDX0NSX01TSVJEWSAgICAgICAgICAgICAgICAgICAgICAgUkNDX0NSX01TSVJEWV9Nc2sgICAgICAgICAgICAgICAgICAvKiE8IEludGVybmFsIE11bHRpIFNwZWVkIGNsb2NrIHJlYWR5IGZsYWcgKi8NCg0KI2RlZmluZSBSQ0NfQ1JfSFNFT05fUG9zICAgICAgICAgICAgICAgICAgICAoMTZVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQ1JfSFNFT05fTXNrICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBSQ0NfQ1JfSFNFT05fUG9zKSAgICAgICAgIC8qITwgMHgwMDAxMDAwMCAqLw0KI2RlZmluZSBSQ0NfQ1JfSFNFT04gICAgICAgICAgICAgICAgICAgICAgICBSQ0NfQ1JfSFNFT05fTXNrICAgICAgICAgICAgICAgICAgIC8qITwgRXh0ZXJuYWwgSGlnaCBTcGVlZCBjbG9jayBlbmFibGUgKi8NCiNkZWZpbmUgUkNDX0NSX0hTRVJEWV9Qb3MgICAgICAgICAgICAgICAgICAgKDE3VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0NSX0hTRVJEWV9Nc2sgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgUkNDX0NSX0hTRVJEWV9Qb3MpICAgICAgICAvKiE8IDB4MDAwMjAwMDAgKi8NCiNkZWZpbmUgUkNDX0NSX0hTRVJEWSAgICAgICAgICAgICAgICAgICAgICAgUkNDX0NSX0hTRVJEWV9Nc2sgICAgICAgICAgICAgICAgICAvKiE8IEV4dGVybmFsIEhpZ2ggU3BlZWQgY2xvY2sgcmVhZHkgZmxhZyAqLw0KI2RlZmluZSBSQ0NfQ1JfSFNFQllQX1BvcyAgICAgICAgICAgICAgICAgICAoMThVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQ1JfSFNFQllQX01zayAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBSQ0NfQ1JfSFNFQllQX1BvcykgICAgICAgIC8qITwgMHgwMDA0MDAwMCAqLw0KI2RlZmluZSBSQ0NfQ1JfSFNFQllQICAgICAgICAgICAgICAgICAgICAgICBSQ0NfQ1JfSFNFQllQX01zayAgICAgICAgICAgICAgICAgIC8qITwgRXh0ZXJuYWwgSGlnaCBTcGVlZCBjbG9jayBCeXBhc3MgKi8NCg0KI2RlZmluZSBSQ0NfQ1JfUExMT05fUG9zICAgICAgICAgICAgICAgICAgICAoMjRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQ1JfUExMT05fTXNrICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBSQ0NfQ1JfUExMT05fUG9zKSAgICAgICAgIC8qITwgMHgwMTAwMDAwMCAqLw0KI2RlZmluZSBSQ0NfQ1JfUExMT04gICAgICAgICAgICAgICAgICAgICAgICBSQ0NfQ1JfUExMT05fTXNrICAgICAgICAgICAgICAgICAgIC8qITwgUExMIGVuYWJsZSAqLw0KI2RlZmluZSBSQ0NfQ1JfUExMUkRZX1BvcyAgICAgICAgICAgICAgICAgICAoMjVVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQ1JfUExMUkRZX01zayAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBSQ0NfQ1JfUExMUkRZX1BvcykgICAgICAgIC8qITwgMHgwMjAwMDAwMCAqLw0KI2RlZmluZSBSQ0NfQ1JfUExMUkRZICAgICAgICAgICAgICAgICAgICAgICBSQ0NfQ1JfUExMUkRZX01zayAgICAgICAgICAgICAgICAgIC8qITwgUExMIGNsb2NrIHJlYWR5IGZsYWcgKi8NCiNkZWZpbmUgUkNDX0NSX0NTU09OX1BvcyAgICAgICAgICAgICAgICAgICAgKDI4VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0NSX0NTU09OX01zayAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgUkNDX0NSX0NTU09OX1BvcykgICAgICAgICAvKiE8IDB4MTAwMDAwMDAgKi8NCiNkZWZpbmUgUkNDX0NSX0NTU09OICAgICAgICAgICAgICAgICAgICAgICAgUkNDX0NSX0NTU09OX01zayAgICAgICAgICAgICAgICAgICAvKiE8IENsb2NrIFNlY3VyaXR5IFN5c3RlbSBlbmFibGUgKi8NCg0KI2RlZmluZSBSQ0NfQ1JfUlRDUFJFX1BvcyAgICAgICAgICAgICAgICAgICAoMjlVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQ1JfUlRDUFJFX01zayAgICAgICAgICAgICAgICAgICAoMHgzVSA8PCBSQ0NfQ1JfUlRDUFJFX1BvcykgICAgICAgIC8qITwgMHg2MDAwMDAwMCAqLw0KI2RlZmluZSBSQ0NfQ1JfUlRDUFJFICAgICAgICAgICAgICAgICAgICAgICBSQ0NfQ1JfUlRDUFJFX01zayAgICAgICAgICAgICAgICAgIC8qITwgUlRDL0xDRCBQcmVzY2FsZXIgKi8NCiNkZWZpbmUgUkNDX0NSX1JUQ1BSRV8wICAgICAgICAgICAgICAgICAgICAgKDB4MjAwMDAwMDBVKSAgICAgICAgICAgICAgICAgICAgICAvKiE8IEJpdDAgKi8NCiNkZWZpbmUgUkNDX0NSX1JUQ1BSRV8xICAgICAgICAgICAgICAgICAgICAgKDB4NDAwMDAwMDBVKSAgICAgICAgICAgICAgICAgICAgICAvKiE8IEJpdDEgKi8NCg0KLyoqKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgUkNDX0lDU0NSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgUkNDX0lDU0NSX0hTSUNBTF9Qb3MgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0lDU0NSX0hTSUNBTF9Nc2sgICAgICAgICAgICAgICAgKDB4RkZVIDw8IFJDQ19JQ1NDUl9IU0lDQUxfUG9zKSAgICAvKiE8IDB4MDAwMDAwRkYgKi8NCiNkZWZpbmUgUkNDX0lDU0NSX0hTSUNBTCAgICAgICAgICAgICAgICAgICAgUkNDX0lDU0NSX0hTSUNBTF9Nc2sgICAgICAgICAgICAgICAvKiE8IEludGVybmFsIEhpZ2ggU3BlZWQgY2xvY2sgQ2FsaWJyYXRpb24gKi8NCiNkZWZpbmUgUkNDX0lDU0NSX0hTSVRSSU1fUG9zICAgICAgICAgICAgICAgKDhVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0lDU0NSX0hTSVRSSU1fTXNrICAgICAgICAgICAgICAgKDB4MUZVIDw8IFJDQ19JQ1NDUl9IU0lUUklNX1BvcykgICAvKiE8IDB4MDAwMDFGMDAgKi8NCiNkZWZpbmUgUkNDX0lDU0NSX0hTSVRSSU0gICAgICAgICAgICAgICAgICAgUkNDX0lDU0NSX0hTSVRSSU1fTXNrICAgICAgICAgICAgICAvKiE8IEludGVybmFsIEhpZ2ggU3BlZWQgY2xvY2sgdHJpbW1pbmcgKi8NCg0KI2RlZmluZSBSQ0NfSUNTQ1JfTVNJUkFOR0VfUG9zICAgICAgICAgICAgICAoMTNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfSUNTQ1JfTVNJUkFOR0VfTXNrICAgICAgICAgICAgICAoMHg3VSA8PCBSQ0NfSUNTQ1JfTVNJUkFOR0VfUG9zKSAgIC8qITwgMHgwMDAwRTAwMCAqLw0KI2RlZmluZSBSQ0NfSUNTQ1JfTVNJUkFOR0UgICAgICAgICAgICAgICAgICBSQ0NfSUNTQ1JfTVNJUkFOR0VfTXNrICAgICAgICAgICAgIC8qITwgSW50ZXJuYWwgTXVsdGkgU3BlZWQgY2xvY2sgUmFuZ2UgKi8NCiNkZWZpbmUgUkNDX0lDU0NSX01TSVJBTkdFXzAgICAgICAgICAgICAgICAgKDB4MFUgPDwgUkNDX0lDU0NSX01TSVJBTkdFX1BvcykgICAvKiE8IDB4MDAwMDAwMDAgKi8NCiNkZWZpbmUgUkNDX0lDU0NSX01TSVJBTkdFXzEgICAgICAgICAgICAgICAgKDB4MVUgPDwgUkNDX0lDU0NSX01TSVJBTkdFX1BvcykgICAvKiE8IDB4MDAwMDIwMDAgKi8NCiNkZWZpbmUgUkNDX0lDU0NSX01TSVJBTkdFXzIgICAgICAgICAgICAgICAgKDB4MlUgPDwgUkNDX0lDU0NSX01TSVJBTkdFX1BvcykgICAvKiE8IDB4MDAwMDQwMDAgKi8NCiNkZWZpbmUgUkNDX0lDU0NSX01TSVJBTkdFXzMgICAgICAgICAgICAgICAgKDB4M1UgPDwgUkNDX0lDU0NSX01TSVJBTkdFX1BvcykgICAvKiE8IDB4MDAwMDYwMDAgKi8NCiNkZWZpbmUgUkNDX0lDU0NSX01TSVJBTkdFXzQgICAgICAgICAgICAgICAgKDB4NFUgPDwgUkNDX0lDU0NSX01TSVJBTkdFX1BvcykgICAvKiE8IDB4MDAwMDgwMDAgKi8NCiNkZWZpbmUgUkNDX0lDU0NSX01TSVJBTkdFXzUgICAgICAgICAgICAgICAgKDB4NVUgPDwgUkNDX0lDU0NSX01TSVJBTkdFX1BvcykgICAvKiE8IDB4MDAwMEEwMDAgKi8NCiNkZWZpbmUgUkNDX0lDU0NSX01TSVJBTkdFXzYgICAgICAgICAgICAgICAgKDB4NlUgPDwgUkNDX0lDU0NSX01TSVJBTkdFX1BvcykgICAvKiE8IDB4MDAwMEMwMDAgKi8NCiNkZWZpbmUgUkNDX0lDU0NSX01TSUNBTF9Qb3MgICAgICAgICAgICAgICAgKDE2VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0lDU0NSX01TSUNBTF9Nc2sgICAgICAgICAgICAgICAgKDB4RkZVIDw8IFJDQ19JQ1NDUl9NU0lDQUxfUG9zKSAgICAvKiE8IDB4MDBGRjAwMDAgKi8NCiNkZWZpbmUgUkNDX0lDU0NSX01TSUNBTCAgICAgICAgICAgICAgICAgICAgUkNDX0lDU0NSX01TSUNBTF9Nc2sgICAgICAgICAgICAgICAvKiE8IEludGVybmFsIE11bHRpIFNwZWVkIGNsb2NrIENhbGlicmF0aW9uICovDQojZGVmaW5lIFJDQ19JQ1NDUl9NU0lUUklNX1BvcyAgICAgICAgICAgICAgICgyNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19JQ1NDUl9NU0lUUklNX01zayAgICAgICAgICAgICAgICgweEZGVSA8PCBSQ0NfSUNTQ1JfTVNJVFJJTV9Qb3MpICAgLyohPCAweEZGMDAwMDAwICovDQojZGVmaW5lIFJDQ19JQ1NDUl9NU0lUUklNICAgICAgICAgICAgICAgICAgIFJDQ19JQ1NDUl9NU0lUUklNX01zayAgICAgICAgICAgICAgLyohPCBJbnRlcm5hbCBNdWx0aSBTcGVlZCBjbG9jayB0cmltbWluZyAqLw0KDQovKioqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBSQ0NfQ0ZHUiByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBSQ0NfQ0ZHUl9TV19Qb3MgICAgICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQ0ZHUl9TV19Nc2sgICAgICAgICAgICAgICAgICAgICAoMHgzVSA8PCBSQ0NfQ0ZHUl9TV19Qb3MpICAgICAgICAgIC8qITwgMHgwMDAwMDAwMyAqLw0KI2RlZmluZSBSQ0NfQ0ZHUl9TVyAgICAgICAgICAgICAgICAgICAgICAgICBSQ0NfQ0ZHUl9TV19Nc2sgICAgICAgICAgICAgICAgICAgIC8qITwgU1dbMTowXSBiaXRzIChTeXN0ZW0gY2xvY2sgU3dpdGNoKSAqLw0KI2RlZmluZSBSQ0NfQ0ZHUl9TV18wICAgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBSQ0NfQ0ZHUl9TV19Qb3MpICAgICAgICAgIC8qITwgMHgwMDAwMDAwMSAqLw0KI2RlZmluZSBSQ0NfQ0ZHUl9TV18xICAgICAgICAgICAgICAgICAgICAgICAoMHgyVSA8PCBSQ0NfQ0ZHUl9TV19Qb3MpICAgICAgICAgIC8qITwgMHgwMDAwMDAwMiAqLw0KDQovKiE8IFNXIGNvbmZpZ3VyYXRpb24gKi8NCiNkZWZpbmUgUkNDX0NGR1JfU1dfTVNJICAgICAgICAgICAgICAgICAgICAgKDB4MDAwMDAwMDBVKSAgICAgICAgICAgICAgICAgICAgICAvKiE8IE1TSSBzZWxlY3RlZCBhcyBzeXN0ZW0gY2xvY2sgKi8NCiNkZWZpbmUgUkNDX0NGR1JfU1dfSFNJICAgICAgICAgICAgICAgICAgICAgKDB4MDAwMDAwMDFVKSAgICAgICAgICAgICAgICAgICAgICAvKiE8IEhTSSBzZWxlY3RlZCBhcyBzeXN0ZW0gY2xvY2sgKi8NCiNkZWZpbmUgUkNDX0NGR1JfU1dfSFNFICAgICAgICAgICAgICAgICAgICAgKDB4MDAwMDAwMDJVKSAgICAgICAgICAgICAgICAgICAgICAvKiE8IEhTRSBzZWxlY3RlZCBhcyBzeXN0ZW0gY2xvY2sgKi8NCiNkZWZpbmUgUkNDX0NGR1JfU1dfUExMICAgICAgICAgICAgICAgICAgICAgKDB4MDAwMDAwMDNVKSAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBMTCBzZWxlY3RlZCBhcyBzeXN0ZW0gY2xvY2sgKi8NCg0KI2RlZmluZSBSQ0NfQ0ZHUl9TV1NfUG9zICAgICAgICAgICAgICAgICAgICAoMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQ0ZHUl9TV1NfTXNrICAgICAgICAgICAgICAgICAgICAoMHgzVSA8PCBSQ0NfQ0ZHUl9TV1NfUG9zKSAgICAgICAgIC8qITwgMHgwMDAwMDAwQyAqLw0KI2RlZmluZSBSQ0NfQ0ZHUl9TV1MgICAgICAgICAgICAgICAgICAgICAgICBSQ0NfQ0ZHUl9TV1NfTXNrICAgICAgICAgICAgICAgICAgIC8qITwgU1dTWzE6MF0gYml0cyAoU3lzdGVtIENsb2NrIFN3aXRjaCBTdGF0dXMpICovDQojZGVmaW5lIFJDQ19DRkdSX1NXU18wICAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFJDQ19DRkdSX1NXU19Qb3MpICAgICAgICAgLyohPCAweDAwMDAwMDA0ICovDQojZGVmaW5lIFJDQ19DRkdSX1NXU18xICAgICAgICAgICAgICAgICAgICAgICgweDJVIDw8IFJDQ19DRkdSX1NXU19Qb3MpICAgICAgICAgLyohPCAweDAwMDAwMDA4ICovDQoNCi8qITwgU1dTIGNvbmZpZ3VyYXRpb24gKi8NCiNkZWZpbmUgUkNDX0NGR1JfU1dTX01TSSAgICAgICAgICAgICAgICAgICAgKDB4MDAwMDAwMDBVKSAgICAgICAgICAgICAgICAgICAgICAvKiE8IE1TSSBvc2NpbGxhdG9yIHVzZWQgYXMgc3lzdGVtIGNsb2NrICovDQojZGVmaW5lIFJDQ19DRkdSX1NXU19IU0kgICAgICAgICAgICAgICAgICAgICgweDAwMDAwMDA0VSkgICAgICAgICAgICAgICAgICAgICAgLyohPCBIU0kgb3NjaWxsYXRvciB1c2VkIGFzIHN5c3RlbSBjbG9jayAqLw0KI2RlZmluZSBSQ0NfQ0ZHUl9TV1NfSFNFICAgICAgICAgICAgICAgICAgICAoMHgwMDAwMDAwOFUpICAgICAgICAgICAgICAgICAgICAgIC8qITwgSFNFIG9zY2lsbGF0b3IgdXNlZCBhcyBzeXN0ZW0gY2xvY2sgKi8NCiNkZWZpbmUgUkNDX0NGR1JfU1dTX1BMTCAgICAgICAgICAgICAgICAgICAgKDB4MDAwMDAwMENVKSAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBMTCB1c2VkIGFzIHN5c3RlbSBjbG9jayAqLw0KDQojZGVmaW5lIFJDQ19DRkdSX0hQUkVfUG9zICAgICAgICAgICAgICAgICAgICg0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19DRkdSX0hQUkVfTXNrICAgICAgICAgICAgICAgICAgICgweEZVIDw8IFJDQ19DRkdSX0hQUkVfUG9zKSAgICAgICAgLyohPCAweDAwMDAwMEYwICovDQojZGVmaW5lIFJDQ19DRkdSX0hQUkUgICAgICAgICAgICAgICAgICAgICAgIFJDQ19DRkdSX0hQUkVfTXNrICAgICAgICAgICAgICAgICAgLyohPCBIUFJFWzM6MF0gYml0cyAoQUhCIHByZXNjYWxlcikgKi8NCiNkZWZpbmUgUkNDX0NGR1JfSFBSRV8wICAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgUkNDX0NGR1JfSFBSRV9Qb3MpICAgICAgICAvKiE8IDB4MDAwMDAwMTAgKi8NCiNkZWZpbmUgUkNDX0NGR1JfSFBSRV8xICAgICAgICAgICAgICAgICAgICAgKDB4MlUgPDwgUkNDX0NGR1JfSFBSRV9Qb3MpICAgICAgICAvKiE8IDB4MDAwMDAwMjAgKi8NCiNkZWZpbmUgUkNDX0NGR1JfSFBSRV8yICAgICAgICAgICAgICAgICAgICAgKDB4NFUgPDwgUkNDX0NGR1JfSFBSRV9Qb3MpICAgICAgICAvKiE8IDB4MDAwMDAwNDAgKi8NCiNkZWZpbmUgUkNDX0NGR1JfSFBSRV8zICAgICAgICAgICAgICAgICAgICAgKDB4OFUgPDwgUkNDX0NGR1JfSFBSRV9Qb3MpICAgICAgICAvKiE8IDB4MDAwMDAwODAgKi8NCg0KLyohPCBIUFJFIGNvbmZpZ3VyYXRpb24gKi8NCiNkZWZpbmUgUkNDX0NGR1JfSFBSRV9ESVYxICAgICAgICAgICAgICAgICAgKDB4MDAwMDAwMDBVKSAgICAgICAgICAgICAgICAgICAgICAvKiE8IFNZU0NMSyBub3QgZGl2aWRlZCAqLw0KI2RlZmluZSBSQ0NfQ0ZHUl9IUFJFX0RJVjIgICAgICAgICAgICAgICAgICAoMHgwMDAwMDA4MFUpICAgICAgICAgICAgICAgICAgICAgIC8qITwgU1lTQ0xLIGRpdmlkZWQgYnkgMiAqLw0KI2RlZmluZSBSQ0NfQ0ZHUl9IUFJFX0RJVjQgICAgICAgICAgICAgICAgICAoMHgwMDAwMDA5MFUpICAgICAgICAgICAgICAgICAgICAgIC8qITwgU1lTQ0xLIGRpdmlkZWQgYnkgNCAqLw0KI2RlZmluZSBSQ0NfQ0ZHUl9IUFJFX0RJVjggICAgICAgICAgICAgICAgICAoMHgwMDAwMDBBMFUpICAgICAgICAgICAgICAgICAgICAgIC8qITwgU1lTQ0xLIGRpdmlkZWQgYnkgOCAqLw0KI2RlZmluZSBSQ0NfQ0ZHUl9IUFJFX0RJVjE2ICAgICAgICAgICAgICAgICAoMHgwMDAwMDBCMFUpICAgICAgICAgICAgICAgICAgICAgIC8qITwgU1lTQ0xLIGRpdmlkZWQgYnkgMTYgKi8NCiNkZWZpbmUgUkNDX0NGR1JfSFBSRV9ESVY2NCAgICAgICAgICAgICAgICAgKDB4MDAwMDAwQzBVKSAgICAgICAgICAgICAgICAgICAgICAvKiE8IFNZU0NMSyBkaXZpZGVkIGJ5IDY0ICovDQojZGVmaW5lIFJDQ19DRkdSX0hQUkVfRElWMTI4ICAgICAgICAgICAgICAgICgweDAwMDAwMEQwVSkgICAgICAgICAgICAgICAgICAgICAgLyohPCBTWVNDTEsgZGl2aWRlZCBieSAxMjggKi8NCiNkZWZpbmUgUkNDX0NGR1JfSFBSRV9ESVYyNTYgICAgICAgICAgICAgICAgKDB4MDAwMDAwRTBVKSAgICAgICAgICAgICAgICAgICAgICAvKiE8IFNZU0NMSyBkaXZpZGVkIGJ5IDI1NiAqLw0KI2RlZmluZSBSQ0NfQ0ZHUl9IUFJFX0RJVjUxMiAgICAgICAgICAgICAgICAoMHgwMDAwMDBGMFUpICAgICAgICAgICAgICAgICAgICAgIC8qITwgU1lTQ0xLIGRpdmlkZWQgYnkgNTEyICovDQoNCiNkZWZpbmUgUkNDX0NGR1JfUFBSRTFfUG9zICAgICAgICAgICAgICAgICAgKDhVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0NGR1JfUFBSRTFfTXNrICAgICAgICAgICAgICAgICAgKDB4N1UgPDwgUkNDX0NGR1JfUFBSRTFfUG9zKSAgICAgICAvKiE8IDB4MDAwMDA3MDAgKi8NCiNkZWZpbmUgUkNDX0NGR1JfUFBSRTEgICAgICAgICAgICAgICAgICAgICAgUkNDX0NGR1JfUFBSRTFfTXNrICAgICAgICAgICAgICAgICAvKiE8IFBSRTFbMjowXSBiaXRzIChBUEIxIHByZXNjYWxlcikgKi8NCiNkZWZpbmUgUkNDX0NGR1JfUFBSRTFfMCAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgUkNDX0NGR1JfUFBSRTFfUG9zKSAgICAgICAvKiE8IDB4MDAwMDAxMDAgKi8NCiNkZWZpbmUgUkNDX0NGR1JfUFBSRTFfMSAgICAgICAgICAgICAgICAgICAgKDB4MlUgPDwgUkNDX0NGR1JfUFBSRTFfUG9zKSAgICAgICAvKiE8IDB4MDAwMDAyMDAgKi8NCiNkZWZpbmUgUkNDX0NGR1JfUFBSRTFfMiAgICAgICAgICAgICAgICAgICAgKDB4NFUgPDwgUkNDX0NGR1JfUFBSRTFfUG9zKSAgICAgICAvKiE8IDB4MDAwMDA0MDAgKi8NCg0KLyohPCBQUFJFMSBjb25maWd1cmF0aW9uICovDQojZGVmaW5lIFJDQ19DRkdSX1BQUkUxX0RJVjEgICAgICAgICAgICAgICAgICgweDAwMDAwMDAwVSkgICAgICAgICAgICAgICAgICAgICAgLyohPCBIQ0xLIG5vdCBkaXZpZGVkICovDQojZGVmaW5lIFJDQ19DRkdSX1BQUkUxX0RJVjIgICAgICAgICAgICAgICAgICgweDAwMDAwNDAwVSkgICAgICAgICAgICAgICAgICAgICAgLyohPCBIQ0xLIGRpdmlkZWQgYnkgMiAqLw0KI2RlZmluZSBSQ0NfQ0ZHUl9QUFJFMV9ESVY0ICAgICAgICAgICAgICAgICAoMHgwMDAwMDUwMFUpICAgICAgICAgICAgICAgICAgICAgIC8qITwgSENMSyBkaXZpZGVkIGJ5IDQgKi8NCiNkZWZpbmUgUkNDX0NGR1JfUFBSRTFfRElWOCAgICAgICAgICAgICAgICAgKDB4MDAwMDA2MDBVKSAgICAgICAgICAgICAgICAgICAgICAvKiE8IEhDTEsgZGl2aWRlZCBieSA4ICovDQojZGVmaW5lIFJDQ19DRkdSX1BQUkUxX0RJVjE2ICAgICAgICAgICAgICAgICgweDAwMDAwNzAwVSkgICAgICAgICAgICAgICAgICAgICAgLyohPCBIQ0xLIGRpdmlkZWQgYnkgMTYgKi8NCg0KI2RlZmluZSBSQ0NfQ0ZHUl9QUFJFMl9Qb3MgICAgICAgICAgICAgICAgICAoMTFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQ0ZHUl9QUFJFMl9Nc2sgICAgICAgICAgICAgICAgICAoMHg3VSA8PCBSQ0NfQ0ZHUl9QUFJFMl9Qb3MpICAgICAgIC8qITwgMHgwMDAwMzgwMCAqLw0KI2RlZmluZSBSQ0NfQ0ZHUl9QUFJFMiAgICAgICAgICAgICAgICAgICAgICBSQ0NfQ0ZHUl9QUFJFMl9Nc2sgICAgICAgICAgICAgICAgIC8qITwgUFJFMlsyOjBdIGJpdHMgKEFQQjIgcHJlc2NhbGVyKSAqLw0KI2RlZmluZSBSQ0NfQ0ZHUl9QUFJFMl8wICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBSQ0NfQ0ZHUl9QUFJFMl9Qb3MpICAgICAgIC8qITwgMHgwMDAwMDgwMCAqLw0KI2RlZmluZSBSQ0NfQ0ZHUl9QUFJFMl8xICAgICAgICAgICAgICAgICAgICAoMHgyVSA8PCBSQ0NfQ0ZHUl9QUFJFMl9Qb3MpICAgICAgIC8qITwgMHgwMDAwMTAwMCAqLw0KI2RlZmluZSBSQ0NfQ0ZHUl9QUFJFMl8yICAgICAgICAgICAgICAgICAgICAoMHg0VSA8PCBSQ0NfQ0ZHUl9QUFJFMl9Qb3MpICAgICAgIC8qITwgMHgwMDAwMjAwMCAqLw0KDQovKiE8IFBQUkUyIGNvbmZpZ3VyYXRpb24gKi8NCiNkZWZpbmUgUkNDX0NGR1JfUFBSRTJfRElWMSAgICAgICAgICAgICAgICAgKDB4MDAwMDAwMDBVKSAgICAgICAgICAgICAgICAgICAgICAvKiE8IEhDTEsgbm90IGRpdmlkZWQgKi8NCiNkZWZpbmUgUkNDX0NGR1JfUFBSRTJfRElWMiAgICAgICAgICAgICAgICAgKDB4MDAwMDIwMDBVKSAgICAgICAgICAgICAgICAgICAgICAvKiE8IEhDTEsgZGl2aWRlZCBieSAyICovDQojZGVmaW5lIFJDQ19DRkdSX1BQUkUyX0RJVjQgICAgICAgICAgICAgICAgICgweDAwMDAyODAwVSkgICAgICAgICAgICAgICAgICAgICAgLyohPCBIQ0xLIGRpdmlkZWQgYnkgNCAqLw0KI2RlZmluZSBSQ0NfQ0ZHUl9QUFJFMl9ESVY4ICAgICAgICAgICAgICAgICAoMHgwMDAwMzAwMFUpICAgICAgICAgICAgICAgICAgICAgIC8qITwgSENMSyBkaXZpZGVkIGJ5IDggKi8NCiNkZWZpbmUgUkNDX0NGR1JfUFBSRTJfRElWMTYgICAgICAgICAgICAgICAgKDB4MDAwMDM4MDBVKSAgICAgICAgICAgICAgICAgICAgICAvKiE8IEhDTEsgZGl2aWRlZCBieSAxNiAqLw0KDQovKiE8IFBMTCBlbnRyeSBjbG9jayBzb3VyY2UqLw0KI2RlZmluZSBSQ0NfQ0ZHUl9QTExTUkNfUG9zICAgICAgICAgICAgICAgICAoMTZVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQ0ZHUl9QTExTUkNfTXNrICAgICAgICAgICAgICAgICAoMHgxVSA8PCBSQ0NfQ0ZHUl9QTExTUkNfUG9zKSAgICAgIC8qITwgMHgwMDAxMDAwMCAqLw0KI2RlZmluZSBSQ0NfQ0ZHUl9QTExTUkMgICAgICAgICAgICAgICAgICAgICBSQ0NfQ0ZHUl9QTExTUkNfTXNrICAgICAgICAgICAgICAgIC8qITwgUExMIGVudHJ5IGNsb2NrIHNvdXJjZSAqLw0KDQojZGVmaW5lIFJDQ19DRkdSX1BMTFNSQ19IU0kgICAgICAgICAgICAgICAgICgweDAwMDAwMDAwVSkgICAgICAgICAgICAgICAgICAgICAgLyohPCBIU0kgYXMgUExMIGVudHJ5IGNsb2NrIHNvdXJjZSAqLw0KI2RlZmluZSBSQ0NfQ0ZHUl9QTExTUkNfSFNFICAgICAgICAgICAgICAgICAoMHgwMDAxMDAwMFUpICAgICAgICAgICAgICAgICAgICAgIC8qITwgSFNFIGFzIFBMTCBlbnRyeSBjbG9jayBzb3VyY2UgKi8NCg0KDQovKiE8IFBMTE1VTCBjb25maWd1cmF0aW9uICovDQojZGVmaW5lIFJDQ19DRkdSX1BMTE1VTF9Qb3MgICAgICAgICAgICAgICAgICgxOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19DRkdSX1BMTE1VTF9Nc2sgICAgICAgICAgICAgICAgICgweEZVIDw8IFJDQ19DRkdSX1BMTE1VTF9Qb3MpICAgICAgLyohPCAweDAwM0MwMDAwICovDQojZGVmaW5lIFJDQ19DRkdSX1BMTE1VTCAgICAgICAgICAgICAgICAgICAgIFJDQ19DRkdSX1BMTE1VTF9Nc2sgICAgICAgICAgICAgICAgLyohPCBQTExNVUxbMzowXSBiaXRzIChQTEwgbXVsdGlwbGljYXRpb24gZmFjdG9yKSAqLw0KI2RlZmluZSBSQ0NfQ0ZHUl9QTExNVUxfMCAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBSQ0NfQ0ZHUl9QTExNVUxfUG9zKSAgICAgIC8qITwgMHgwMDA0MDAwMCAqLw0KI2RlZmluZSBSQ0NfQ0ZHUl9QTExNVUxfMSAgICAgICAgICAgICAgICAgICAoMHgyVSA8PCBSQ0NfQ0ZHUl9QTExNVUxfUG9zKSAgICAgIC8qITwgMHgwMDA4MDAwMCAqLw0KI2RlZmluZSBSQ0NfQ0ZHUl9QTExNVUxfMiAgICAgICAgICAgICAgICAgICAoMHg0VSA8PCBSQ0NfQ0ZHUl9QTExNVUxfUG9zKSAgICAgIC8qITwgMHgwMDEwMDAwMCAqLw0KI2RlZmluZSBSQ0NfQ0ZHUl9QTExNVUxfMyAgICAgICAgICAgICAgICAgICAoMHg4VSA8PCBSQ0NfQ0ZHUl9QTExNVUxfUG9zKSAgICAgIC8qITwgMHgwMDIwMDAwMCAqLw0KDQovKiE8IFBMTE1VTCBjb25maWd1cmF0aW9uICovDQojZGVmaW5lIFJDQ19DRkdSX1BMTE1VTDMgICAgICAgICAgICAgICAgICAgICgweDAwMDAwMDAwVSkgICAgICAgICAgICAgICAgICAgICAgLyohPCBQTEwgaW5wdXQgY2xvY2sgKiAzICovDQojZGVmaW5lIFJDQ19DRkdSX1BMTE1VTDQgICAgICAgICAgICAgICAgICAgICgweDAwMDQwMDAwVSkgICAgICAgICAgICAgICAgICAgICAgLyohPCBQTEwgaW5wdXQgY2xvY2sgKiA0ICovDQojZGVmaW5lIFJDQ19DRkdSX1BMTE1VTDYgICAgICAgICAgICAgICAgICAgICgweDAwMDgwMDAwVSkgICAgICAgICAgICAgICAgICAgICAgLyohPCBQTEwgaW5wdXQgY2xvY2sgKiA2ICovDQojZGVmaW5lIFJDQ19DRkdSX1BMTE1VTDggICAgICAgICAgICAgICAgICAgICgweDAwMEMwMDAwVSkgICAgICAgICAgICAgICAgICAgICAgLyohPCBQTEwgaW5wdXQgY2xvY2sgKiA4ICovDQojZGVmaW5lIFJDQ19DRkdSX1BMTE1VTDEyICAgICAgICAgICAgICAgICAgICgweDAwMTAwMDAwVSkgICAgICAgICAgICAgICAgICAgICAgLyohPCBQTEwgaW5wdXQgY2xvY2sgKiAxMiAqLw0KI2RlZmluZSBSQ0NfQ0ZHUl9QTExNVUwxNiAgICAgICAgICAgICAgICAgICAoMHgwMDE0MDAwMFUpICAgICAgICAgICAgICAgICAgICAgIC8qITwgUExMIGlucHV0IGNsb2NrICogMTYgKi8NCiNkZWZpbmUgUkNDX0NGR1JfUExMTVVMMjQgICAgICAgICAgICAgICAgICAgKDB4MDAxODAwMDBVKSAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBMTCBpbnB1dCBjbG9jayAqIDI0ICovDQojZGVmaW5lIFJDQ19DRkdSX1BMTE1VTDMyICAgICAgICAgICAgICAgICAgICgweDAwMUMwMDAwVSkgICAgICAgICAgICAgICAgICAgICAgLyohPCBQTEwgaW5wdXQgY2xvY2sgKiAzMiAqLw0KI2RlZmluZSBSQ0NfQ0ZHUl9QTExNVUw0OCAgICAgICAgICAgICAgICAgICAoMHgwMDIwMDAwMFUpICAgICAgICAgICAgICAgICAgICAgIC8qITwgUExMIGlucHV0IGNsb2NrICogNDggKi8NCg0KLyohPCBQTExESVYgY29uZmlndXJhdGlvbiAqLw0KI2RlZmluZSBSQ0NfQ0ZHUl9QTExESVZfUG9zICAgICAgICAgICAgICAgICAoMjJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQ0ZHUl9QTExESVZfTXNrICAgICAgICAgICAgICAgICAoMHgzVSA8PCBSQ0NfQ0ZHUl9QTExESVZfUG9zKSAgICAgIC8qITwgMHgwMEMwMDAwMCAqLw0KI2RlZmluZSBSQ0NfQ0ZHUl9QTExESVYgICAgICAgICAgICAgICAgICAgICBSQ0NfQ0ZHUl9QTExESVZfTXNrICAgICAgICAgICAgICAgIC8qITwgUExMRElWWzE6MF0gYml0cyAoUExMIE91dHB1dCBEaXZpc2lvbikgKi8NCiNkZWZpbmUgUkNDX0NGR1JfUExMRElWXzAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgUkNDX0NGR1JfUExMRElWX1BvcykgICAgICAvKiE8IDB4MDA0MDAwMDAgKi8NCiNkZWZpbmUgUkNDX0NGR1JfUExMRElWXzEgICAgICAgICAgICAgICAgICAgKDB4MlUgPDwgUkNDX0NGR1JfUExMRElWX1BvcykgICAgICAvKiE8IDB4MDA4MDAwMDAgKi8NCg0KDQovKiE8IFBMTERJViBjb25maWd1cmF0aW9uICovDQojZGVmaW5lIFJDQ19DRkdSX1BMTERJVjEgICAgICAgICAgICAgICAgICAgICgweDAwMDAwMDAwVSkgICAgICAgICAgICAgICAgICAgICAgLyohPCBQTEwgY2xvY2sgb3V0cHV0ID0gQ0tWQ08gLyAxICovDQojZGVmaW5lIFJDQ19DRkdSX1BMTERJVjJfUG9zICAgICAgICAgICAgICAgICgyMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19DRkdSX1BMTERJVjJfTXNrICAgICAgICAgICAgICAgICgweDFVIDw8IFJDQ19DRkdSX1BMTERJVjJfUG9zKSAgICAgLyohPCAweDAwNDAwMDAwICovDQojZGVmaW5lIFJDQ19DRkdSX1BMTERJVjIgICAgICAgICAgICAgICAgICAgIFJDQ19DRkdSX1BMTERJVjJfTXNrICAgICAgICAgICAgICAgLyohPCBQTEwgY2xvY2sgb3V0cHV0ID0gQ0tWQ08gLyAyICovDQojZGVmaW5lIFJDQ19DRkdSX1BMTERJVjNfUG9zICAgICAgICAgICAgICAgICgyM1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19DRkdSX1BMTERJVjNfTXNrICAgICAgICAgICAgICAgICgweDFVIDw8IFJDQ19DRkdSX1BMTERJVjNfUG9zKSAgICAgLyohPCAweDAwODAwMDAwICovDQojZGVmaW5lIFJDQ19DRkdSX1BMTERJVjMgICAgICAgICAgICAgICAgICAgIFJDQ19DRkdSX1BMTERJVjNfTXNrICAgICAgICAgICAgICAgLyohPCBQTEwgY2xvY2sgb3V0cHV0ID0gQ0tWQ08gLyAzICovDQojZGVmaW5lIFJDQ19DRkdSX1BMTERJVjRfUG9zICAgICAgICAgICAgICAgICgyMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19DRkdSX1BMTERJVjRfTXNrICAgICAgICAgICAgICAgICgweDNVIDw8IFJDQ19DRkdSX1BMTERJVjRfUG9zKSAgICAgLyohPCAweDAwQzAwMDAwICovDQojZGVmaW5lIFJDQ19DRkdSX1BMTERJVjQgICAgICAgICAgICAgICAgICAgIFJDQ19DRkdSX1BMTERJVjRfTXNrICAgICAgICAgICAgICAgLyohPCBQTEwgY2xvY2sgb3V0cHV0ID0gQ0tWQ08gLyA0ICovDQoNCg0KI2RlZmluZSBSQ0NfQ0ZHUl9NQ09TRUxfUG9zICAgICAgICAgICAgICAgICAoMjRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQ0ZHUl9NQ09TRUxfTXNrICAgICAgICAgICAgICAgICAoMHg3VSA8PCBSQ0NfQ0ZHUl9NQ09TRUxfUG9zKSAgICAgIC8qITwgMHgwNzAwMDAwMCAqLw0KI2RlZmluZSBSQ0NfQ0ZHUl9NQ09TRUwgICAgICAgICAgICAgICAgICAgICBSQ0NfQ0ZHUl9NQ09TRUxfTXNrICAgICAgICAgICAgICAgIC8qITwgTUNPWzI6MF0gYml0cyAoTWljcm9jb250cm9sbGVyIENsb2NrIE91dHB1dCkgKi8NCiNkZWZpbmUgUkNDX0NGR1JfTUNPU0VMXzAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgUkNDX0NGR1JfTUNPU0VMX1BvcykgICAgICAvKiE8IDB4MDEwMDAwMDAgKi8NCiNkZWZpbmUgUkNDX0NGR1JfTUNPU0VMXzEgICAgICAgICAgICAgICAgICAgKDB4MlUgPDwgUkNDX0NGR1JfTUNPU0VMX1BvcykgICAgICAvKiE8IDB4MDIwMDAwMDAgKi8NCiNkZWZpbmUgUkNDX0NGR1JfTUNPU0VMXzIgICAgICAgICAgICAgICAgICAgKDB4NFUgPDwgUkNDX0NGR1JfTUNPU0VMX1BvcykgICAgICAvKiE8IDB4MDQwMDAwMDAgKi8NCg0KLyohPCBNQ08gY29uZmlndXJhdGlvbiAqLw0KI2RlZmluZSBSQ0NfQ0ZHUl9NQ09TRUxfTk9DTE9DSyAgICAgICAgICAgICAoMHgwMDAwMDAwMFUpICAgICAgICAgICAgICAgICAgICAgIC8qITwgTm8gY2xvY2sgKi8NCiNkZWZpbmUgUkNDX0NGR1JfTUNPU0VMX1NZU0NMS19Qb3MgICAgICAgICAgKDI0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0NGR1JfTUNPU0VMX1NZU0NMS19Nc2sgICAgICAgICAgKDB4MVUgPDwgUkNDX0NGR1JfTUNPU0VMX1NZU0NMS19Qb3MpIC8qITwgMHgwMTAwMDAwMCAqLw0KI2RlZmluZSBSQ0NfQ0ZHUl9NQ09TRUxfU1lTQ0xLICAgICAgICAgICAgICBSQ0NfQ0ZHUl9NQ09TRUxfU1lTQ0xLX01zayAgICAgICAgIC8qITwgU3lzdGVtIGNsb2NrIHNlbGVjdGVkICovDQojZGVmaW5lIFJDQ19DRkdSX01DT1NFTF9IU0lfUG9zICAgICAgICAgICAgICgyNVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19DRkdSX01DT1NFTF9IU0lfTXNrICAgICAgICAgICAgICgweDFVIDw8IFJDQ19DRkdSX01DT1NFTF9IU0lfUG9zKSAgLyohPCAweDAyMDAwMDAwICovDQojZGVmaW5lIFJDQ19DRkdSX01DT1NFTF9IU0kgICAgICAgICAgICAgICAgIFJDQ19DRkdSX01DT1NFTF9IU0lfTXNrICAgICAgICAgICAgLyohPCBJbnRlcm5hbCAxNiBNSHogUkMgb3NjaWxsYXRvciBjbG9jayBzZWxlY3RlZCAqLw0KI2RlZmluZSBSQ0NfQ0ZHUl9NQ09TRUxfTVNJX1BvcyAgICAgICAgICAgICAoMjRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQ0ZHUl9NQ09TRUxfTVNJX01zayAgICAgICAgICAgICAoMHgzVSA8PCBSQ0NfQ0ZHUl9NQ09TRUxfTVNJX1BvcykgIC8qITwgMHgwMzAwMDAwMCAqLw0KI2RlZmluZSBSQ0NfQ0ZHUl9NQ09TRUxfTVNJICAgICAgICAgICAgICAgICBSQ0NfQ0ZHUl9NQ09TRUxfTVNJX01zayAgICAgICAgICAgIC8qITwgSW50ZXJuYWwgTWVkaXVtIFNwZWVkIFJDIG9zY2lsbGF0b3IgY2xvY2sgc2VsZWN0ZWQgKi8NCiNkZWZpbmUgUkNDX0NGR1JfTUNPU0VMX0hTRV9Qb3MgICAgICAgICAgICAgKDI2VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0NGR1JfTUNPU0VMX0hTRV9Nc2sgICAgICAgICAgICAgKDB4MVUgPDwgUkNDX0NGR1JfTUNPU0VMX0hTRV9Qb3MpICAvKiE8IDB4MDQwMDAwMDAgKi8NCiNkZWZpbmUgUkNDX0NGR1JfTUNPU0VMX0hTRSAgICAgICAgICAgICAgICAgUkNDX0NGR1JfTUNPU0VMX0hTRV9Nc2sgICAgICAgICAgICAvKiE8IEV4dGVybmFsIDEtMjUgTUh6IG9zY2lsbGF0b3IgY2xvY2sgc2VsZWN0ZWQgKi8NCiNkZWZpbmUgUkNDX0NGR1JfTUNPU0VMX1BMTF9Qb3MgICAgICAgICAgICAgKDI0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0NGR1JfTUNPU0VMX1BMTF9Nc2sgICAgICAgICAgICAgKDB4NVUgPDwgUkNDX0NGR1JfTUNPU0VMX1BMTF9Qb3MpICAvKiE8IDB4MDUwMDAwMDAgKi8NCiNkZWZpbmUgUkNDX0NGR1JfTUNPU0VMX1BMTCAgICAgICAgICAgICAgICAgUkNDX0NGR1JfTUNPU0VMX1BMTF9Nc2sgICAgICAgICAgICAvKiE8IFBMTCBjbG9jayBkaXZpZGVkICovDQojZGVmaW5lIFJDQ19DRkdSX01DT1NFTF9MU0lfUG9zICAgICAgICAgICAgICgyNVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19DRkdSX01DT1NFTF9MU0lfTXNrICAgICAgICAgICAgICgweDNVIDw8IFJDQ19DRkdSX01DT1NFTF9MU0lfUG9zKSAgLyohPCAweDA2MDAwMDAwICovDQojZGVmaW5lIFJDQ19DRkdSX01DT1NFTF9MU0kgICAgICAgICAgICAgICAgIFJDQ19DRkdSX01DT1NFTF9MU0lfTXNrICAgICAgICAgICAgLyohPCBMU0kgc2VsZWN0ZWQgKi8NCiNkZWZpbmUgUkNDX0NGR1JfTUNPU0VMX0xTRV9Qb3MgICAgICAgICAgICAgKDI0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0NGR1JfTUNPU0VMX0xTRV9Nc2sgICAgICAgICAgICAgKDB4N1UgPDwgUkNDX0NGR1JfTUNPU0VMX0xTRV9Qb3MpICAvKiE8IDB4MDcwMDAwMDAgKi8NCiNkZWZpbmUgUkNDX0NGR1JfTUNPU0VMX0xTRSAgICAgICAgICAgICAgICAgUkNDX0NGR1JfTUNPU0VMX0xTRV9Nc2sgICAgICAgICAgICAvKiE8IExTRSBzZWxlY3RlZCAqLw0KDQojZGVmaW5lIFJDQ19DRkdSX01DT1BSRV9Qb3MgICAgICAgICAgICAgICAgICgyOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19DRkdSX01DT1BSRV9Nc2sgICAgICAgICAgICAgICAgICgweDdVIDw8IFJDQ19DRkdSX01DT1BSRV9Qb3MpICAgICAgLyohPCAweDcwMDAwMDAwICovDQojZGVmaW5lIFJDQ19DRkdSX01DT1BSRSAgICAgICAgICAgICAgICAgICAgIFJDQ19DRkdSX01DT1BSRV9Nc2sgICAgICAgICAgICAgICAgLyohPCBNQ09QUkVbMjowXSBiaXRzIChNaWNyb2NvbnRyb2xsZXIgQ2xvY2sgT3V0cHV0IFByZXNjYWxlcikgKi8NCiNkZWZpbmUgUkNDX0NGR1JfTUNPUFJFXzAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgUkNDX0NGR1JfTUNPUFJFX1BvcykgICAgICAvKiE8IDB4MTAwMDAwMDAgKi8NCiNkZWZpbmUgUkNDX0NGR1JfTUNPUFJFXzEgICAgICAgICAgICAgICAgICAgKDB4MlUgPDwgUkNDX0NGR1JfTUNPUFJFX1BvcykgICAgICAvKiE8IDB4MjAwMDAwMDAgKi8NCiNkZWZpbmUgUkNDX0NGR1JfTUNPUFJFXzIgICAgICAgICAgICAgICAgICAgKDB4NFUgPDwgUkNDX0NGR1JfTUNPUFJFX1BvcykgICAgICAvKiE8IDB4NDAwMDAwMDAgKi8NCg0KLyohPCBNQ08gUHJlc2NhbGVyIGNvbmZpZ3VyYXRpb24gKi8gDQojZGVmaW5lIFJDQ19DRkdSX01DT1BSRV9ESVYxICAgICAgICAgICAgICAgICgweDAwMDAwMDAwVSkgICAgICAgICAgICAgICAgICAgICAgLyohPCBNQ08gaXMgZGl2aWRlZCBieSAxICovDQojZGVmaW5lIFJDQ19DRkdSX01DT1BSRV9ESVYyICAgICAgICAgICAgICAgICgweDEwMDAwMDAwVSkgICAgICAgICAgICAgICAgICAgICAgLyohPCBNQ08gaXMgZGl2aWRlZCBieSAyICovDQojZGVmaW5lIFJDQ19DRkdSX01DT1BSRV9ESVY0ICAgICAgICAgICAgICAgICgweDIwMDAwMDAwVSkgICAgICAgICAgICAgICAgICAgICAgLyohPCBNQ08gaXMgZGl2aWRlZCBieSA0ICovDQojZGVmaW5lIFJDQ19DRkdSX01DT1BSRV9ESVY4ICAgICAgICAgICAgICAgICgweDMwMDAwMDAwVSkgICAgICAgICAgICAgICAgICAgICAgLyohPCBNQ08gaXMgZGl2aWRlZCBieSA4ICovDQojZGVmaW5lIFJDQ19DRkdSX01DT1BSRV9ESVYxNiAgICAgICAgICAgICAgICgweDQwMDAwMDAwVSkgICAgICAgICAgICAgICAgICAgICAgLyohPCBNQ08gaXMgZGl2aWRlZCBieSAxNiAqLw0KIA0KLyogTGVnYWN5IGFsaWFzZXMgKi8NCiNkZWZpbmUgIFJDQ19DRkdSX01DT19ESVYxICAgICAgICAgICAgICAgICAgUkNDX0NGR1JfTUNPUFJFX0RJVjENCiNkZWZpbmUgIFJDQ19DRkdSX01DT19ESVYyICAgICAgICAgICAgICAgICAgUkNDX0NGR1JfTUNPUFJFX0RJVjINCiNkZWZpbmUgIFJDQ19DRkdSX01DT19ESVY0ICAgICAgICAgICAgICAgICAgUkNDX0NGR1JfTUNPUFJFX0RJVjQNCiNkZWZpbmUgIFJDQ19DRkdSX01DT19ESVY4ICAgICAgICAgICAgICAgICAgUkNDX0NGR1JfTUNPUFJFX0RJVjgNCiNkZWZpbmUgIFJDQ19DRkdSX01DT19ESVYxNiAgICAgICAgICAgICAgICAgUkNDX0NGR1JfTUNPUFJFX0RJVjE2DQojZGVmaW5lICBSQ0NfQ0ZHUl9NQ09fTk9DTE9DSyAgICAgICAgICAgICAgIFJDQ19DRkdSX01DT1NFTF9OT0NMT0NLDQojZGVmaW5lICBSQ0NfQ0ZHUl9NQ09fU1lTQ0xLICAgICAgICAgICAgICAgIFJDQ19DRkdSX01DT1NFTF9TWVNDTEsNCiNkZWZpbmUgIFJDQ19DRkdSX01DT19IU0kgICAgICAgICAgICAgICAgICAgUkNDX0NGR1JfTUNPU0VMX0hTSQ0KI2RlZmluZSAgUkNDX0NGR1JfTUNPX01TSSAgICAgICAgICAgICAgICAgICBSQ0NfQ0ZHUl9NQ09TRUxfTVNJDQojZGVmaW5lICBSQ0NfQ0ZHUl9NQ09fSFNFICAgICAgICAgICAgICAgICAgIFJDQ19DRkdSX01DT1NFTF9IU0UNCiNkZWZpbmUgIFJDQ19DRkdSX01DT19QTEwgICAgICAgICAgICAgICAgICAgUkNDX0NGR1JfTUNPU0VMX1BMTA0KI2RlZmluZSAgUkNDX0NGR1JfTUNPX0xTSSAgICAgICAgICAgICAgICAgICBSQ0NfQ0ZHUl9NQ09TRUxfTFNJDQojZGVmaW5lICBSQ0NfQ0ZHUl9NQ09fTFNFICAgICAgICAgICAgICAgICAgIFJDQ19DRkdSX01DT1NFTF9MU0UNCg0KLyohPCoqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFJDQ19DSVIgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBSQ0NfQ0lSX0xTSVJEWUZfUG9zICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQ0lSX0xTSVJEWUZfTXNrICAgICAgICAgICAgICAgICAoMHgxVSA8PCBSQ0NfQ0lSX0xTSVJEWUZfUG9zKSAgICAgIC8qITwgMHgwMDAwMDAwMSAqLw0KI2RlZmluZSBSQ0NfQ0lSX0xTSVJEWUYgICAgICAgICAgICAgICAgICAgICBSQ0NfQ0lSX0xTSVJEWUZfTXNrICAgICAgICAgICAgICAgIC8qITwgTFNJIFJlYWR5IEludGVycnVwdCBmbGFnICovDQojZGVmaW5lIFJDQ19DSVJfTFNFUkRZRl9Qb3MgICAgICAgICAgICAgICAgICgxVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19DSVJfTFNFUkRZRl9Nc2sgICAgICAgICAgICAgICAgICgweDFVIDw8IFJDQ19DSVJfTFNFUkRZRl9Qb3MpICAgICAgLyohPCAweDAwMDAwMDAyICovDQojZGVmaW5lIFJDQ19DSVJfTFNFUkRZRiAgICAgICAgICAgICAgICAgICAgIFJDQ19DSVJfTFNFUkRZRl9Nc2sgICAgICAgICAgICAgICAgLyohPCBMU0UgUmVhZHkgSW50ZXJydXB0IGZsYWcgKi8NCiNkZWZpbmUgUkNDX0NJUl9IU0lSRFlGX1BvcyAgICAgICAgICAgICAgICAgKDJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0NJUl9IU0lSRFlGX01zayAgICAgICAgICAgICAgICAgKDB4MVUgPDwgUkNDX0NJUl9IU0lSRFlGX1BvcykgICAgICAvKiE8IDB4MDAwMDAwMDQgKi8NCiNkZWZpbmUgUkNDX0NJUl9IU0lSRFlGICAgICAgICAgICAgICAgICAgICAgUkNDX0NJUl9IU0lSRFlGX01zayAgICAgICAgICAgICAgICAvKiE8IEhTSSBSZWFkeSBJbnRlcnJ1cHQgZmxhZyAqLw0KI2RlZmluZSBSQ0NfQ0lSX0hTRVJEWUZfUG9zICAgICAgICAgICAgICAgICAoM1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQ0lSX0hTRVJEWUZfTXNrICAgICAgICAgICAgICAgICAoMHgxVSA8PCBSQ0NfQ0lSX0hTRVJEWUZfUG9zKSAgICAgIC8qITwgMHgwMDAwMDAwOCAqLw0KI2RlZmluZSBSQ0NfQ0lSX0hTRVJEWUYgICAgICAgICAgICAgICAgICAgICBSQ0NfQ0lSX0hTRVJEWUZfTXNrICAgICAgICAgICAgICAgIC8qITwgSFNFIFJlYWR5IEludGVycnVwdCBmbGFnICovDQojZGVmaW5lIFJDQ19DSVJfUExMUkRZRl9Qb3MgICAgICAgICAgICAgICAgICg0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19DSVJfUExMUkRZRl9Nc2sgICAgICAgICAgICAgICAgICgweDFVIDw8IFJDQ19DSVJfUExMUkRZRl9Qb3MpICAgICAgLyohPCAweDAwMDAwMDEwICovDQojZGVmaW5lIFJDQ19DSVJfUExMUkRZRiAgICAgICAgICAgICAgICAgICAgIFJDQ19DSVJfUExMUkRZRl9Nc2sgICAgICAgICAgICAgICAgLyohPCBQTEwgUmVhZHkgSW50ZXJydXB0IGZsYWcgKi8NCiNkZWZpbmUgUkNDX0NJUl9NU0lSRFlGX1BvcyAgICAgICAgICAgICAgICAgKDVVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0NJUl9NU0lSRFlGX01zayAgICAgICAgICAgICAgICAgKDB4MVUgPDwgUkNDX0NJUl9NU0lSRFlGX1BvcykgICAgICAvKiE8IDB4MDAwMDAwMjAgKi8NCiNkZWZpbmUgUkNDX0NJUl9NU0lSRFlGICAgICAgICAgICAgICAgICAgICAgUkNDX0NJUl9NU0lSRFlGX01zayAgICAgICAgICAgICAgICAvKiE8IE1TSSBSZWFkeSBJbnRlcnJ1cHQgZmxhZyAqLw0KI2RlZmluZSBSQ0NfQ0lSX0xTRUNTU0ZfUG9zICAgICAgICAgICAgICAgICAoNlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQ0lSX0xTRUNTU0ZfTXNrICAgICAgICAgICAgICAgICAoMHgxVSA8PCBSQ0NfQ0lSX0xTRUNTU0ZfUG9zKSAgICAgIC8qITwgMHgwMDAwMDA0MCAqLw0KI2RlZmluZSBSQ0NfQ0lSX0xTRUNTU0YgICAgICAgICAgICAgICAgICAgICBSQ0NfQ0lSX0xTRUNTU0ZfTXNrICAgICAgICAgICAgICAgIC8qITwgTFNFIENTUyBJbnRlcnJ1cHQgZmxhZyAqLw0KI2RlZmluZSBSQ0NfQ0lSX0NTU0ZfUG9zICAgICAgICAgICAgICAgICAgICAoN1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQ0lSX0NTU0ZfTXNrICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBSQ0NfQ0lSX0NTU0ZfUG9zKSAgICAgICAgIC8qITwgMHgwMDAwMDA4MCAqLw0KI2RlZmluZSBSQ0NfQ0lSX0NTU0YgICAgICAgICAgICAgICAgICAgICAgICBSQ0NfQ0lSX0NTU0ZfTXNrICAgICAgICAgICAgICAgICAgIC8qITwgQ2xvY2sgU2VjdXJpdHkgU3lzdGVtIEludGVycnVwdCBmbGFnICovDQoNCiNkZWZpbmUgUkNDX0NJUl9MU0lSRFlJRV9Qb3MgICAgICAgICAgICAgICAgKDhVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0NJUl9MU0lSRFlJRV9Nc2sgICAgICAgICAgICAgICAgKDB4MVUgPDwgUkNDX0NJUl9MU0lSRFlJRV9Qb3MpICAgICAvKiE8IDB4MDAwMDAxMDAgKi8NCiNkZWZpbmUgUkNDX0NJUl9MU0lSRFlJRSAgICAgICAgICAgICAgICAgICAgUkNDX0NJUl9MU0lSRFlJRV9Nc2sgICAgICAgICAgICAgICAvKiE8IExTSSBSZWFkeSBJbnRlcnJ1cHQgRW5hYmxlICovDQojZGVmaW5lIFJDQ19DSVJfTFNFUkRZSUVfUG9zICAgICAgICAgICAgICAgICg5VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19DSVJfTFNFUkRZSUVfTXNrICAgICAgICAgICAgICAgICgweDFVIDw8IFJDQ19DSVJfTFNFUkRZSUVfUG9zKSAgICAgLyohPCAweDAwMDAwMjAwICovDQojZGVmaW5lIFJDQ19DSVJfTFNFUkRZSUUgICAgICAgICAgICAgICAgICAgIFJDQ19DSVJfTFNFUkRZSUVfTXNrICAgICAgICAgICAgICAgLyohPCBMU0UgUmVhZHkgSW50ZXJydXB0IEVuYWJsZSAqLw0KI2RlZmluZSBSQ0NfQ0lSX0hTSVJEWUlFX1BvcyAgICAgICAgICAgICAgICAoMTBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQ0lSX0hTSVJEWUlFX01zayAgICAgICAgICAgICAgICAoMHgxVSA8PCBSQ0NfQ0lSX0hTSVJEWUlFX1BvcykgICAgIC8qITwgMHgwMDAwMDQwMCAqLw0KI2RlZmluZSBSQ0NfQ0lSX0hTSVJEWUlFICAgICAgICAgICAgICAgICAgICBSQ0NfQ0lSX0hTSVJEWUlFX01zayAgICAgICAgICAgICAgIC8qITwgSFNJIFJlYWR5IEludGVycnVwdCBFbmFibGUgKi8NCiNkZWZpbmUgUkNDX0NJUl9IU0VSRFlJRV9Qb3MgICAgICAgICAgICAgICAgKDExVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0NJUl9IU0VSRFlJRV9Nc2sgICAgICAgICAgICAgICAgKDB4MVUgPDwgUkNDX0NJUl9IU0VSRFlJRV9Qb3MpICAgICAvKiE8IDB4MDAwMDA4MDAgKi8NCiNkZWZpbmUgUkNDX0NJUl9IU0VSRFlJRSAgICAgICAgICAgICAgICAgICAgUkNDX0NJUl9IU0VSRFlJRV9Nc2sgICAgICAgICAgICAgICAvKiE8IEhTRSBSZWFkeSBJbnRlcnJ1cHQgRW5hYmxlICovDQojZGVmaW5lIFJDQ19DSVJfUExMUkRZSUVfUG9zICAgICAgICAgICAgICAgICgxMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19DSVJfUExMUkRZSUVfTXNrICAgICAgICAgICAgICAgICgweDFVIDw8IFJDQ19DSVJfUExMUkRZSUVfUG9zKSAgICAgLyohPCAweDAwMDAxMDAwICovDQojZGVmaW5lIFJDQ19DSVJfUExMUkRZSUUgICAgICAgICAgICAgICAgICAgIFJDQ19DSVJfUExMUkRZSUVfTXNrICAgICAgICAgICAgICAgLyohPCBQTEwgUmVhZHkgSW50ZXJydXB0IEVuYWJsZSAqLw0KI2RlZmluZSBSQ0NfQ0lSX01TSVJEWUlFX1BvcyAgICAgICAgICAgICAgICAoMTNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQ0lSX01TSVJEWUlFX01zayAgICAgICAgICAgICAgICAoMHgxVSA8PCBSQ0NfQ0lSX01TSVJEWUlFX1BvcykgICAgIC8qITwgMHgwMDAwMjAwMCAqLw0KI2RlZmluZSBSQ0NfQ0lSX01TSVJEWUlFICAgICAgICAgICAgICAgICAgICBSQ0NfQ0lSX01TSVJEWUlFX01zayAgICAgICAgICAgICAgIC8qITwgTVNJIFJlYWR5IEludGVycnVwdCBFbmFibGUgKi8NCiNkZWZpbmUgUkNDX0NJUl9MU0VDU1NJRV9Qb3MgICAgICAgICAgICAgICAgKDE0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0NJUl9MU0VDU1NJRV9Nc2sgICAgICAgICAgICAgICAgKDB4MVUgPDwgUkNDX0NJUl9MU0VDU1NJRV9Qb3MpICAgICAvKiE8IDB4MDAwMDQwMDAgKi8NCiNkZWZpbmUgUkNDX0NJUl9MU0VDU1NJRSAgICAgICAgICAgICAgICAgICAgUkNDX0NJUl9MU0VDU1NJRV9Nc2sgICAgICAgICAgICAgICAvKiE8IExTRSBDU1MgSW50ZXJydXB0IEVuYWJsZSAqLw0KDQojZGVmaW5lIFJDQ19DSVJfTFNJUkRZQ19Qb3MgICAgICAgICAgICAgICAgICgxNlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19DSVJfTFNJUkRZQ19Nc2sgICAgICAgICAgICAgICAgICgweDFVIDw8IFJDQ19DSVJfTFNJUkRZQ19Qb3MpICAgICAgLyohPCAweDAwMDEwMDAwICovDQojZGVmaW5lIFJDQ19DSVJfTFNJUkRZQyAgICAgICAgICAgICAgICAgICAgIFJDQ19DSVJfTFNJUkRZQ19Nc2sgICAgICAgICAgICAgICAgLyohPCBMU0kgUmVhZHkgSW50ZXJydXB0IENsZWFyICovDQojZGVmaW5lIFJDQ19DSVJfTFNFUkRZQ19Qb3MgICAgICAgICAgICAgICAgICgxN1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19DSVJfTFNFUkRZQ19Nc2sgICAgICAgICAgICAgICAgICgweDFVIDw8IFJDQ19DSVJfTFNFUkRZQ19Qb3MpICAgICAgLyohPCAweDAwMDIwMDAwICovDQojZGVmaW5lIFJDQ19DSVJfTFNFUkRZQyAgICAgICAgICAgICAgICAgICAgIFJDQ19DSVJfTFNFUkRZQ19Nc2sgICAgICAgICAgICAgICAgLyohPCBMU0UgUmVhZHkgSW50ZXJydXB0IENsZWFyICovDQojZGVmaW5lIFJDQ19DSVJfSFNJUkRZQ19Qb3MgICAgICAgICAgICAgICAgICgxOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19DSVJfSFNJUkRZQ19Nc2sgICAgICAgICAgICAgICAgICgweDFVIDw8IFJDQ19DSVJfSFNJUkRZQ19Qb3MpICAgICAgLyohPCAweDAwMDQwMDAwICovDQojZGVmaW5lIFJDQ19DSVJfSFNJUkRZQyAgICAgICAgICAgICAgICAgICAgIFJDQ19DSVJfSFNJUkRZQ19Nc2sgICAgICAgICAgICAgICAgLyohPCBIU0kgUmVhZHkgSW50ZXJydXB0IENsZWFyICovDQojZGVmaW5lIFJDQ19DSVJfSFNFUkRZQ19Qb3MgICAgICAgICAgICAgICAgICgxOVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19DSVJfSFNFUkRZQ19Nc2sgICAgICAgICAgICAgICAgICgweDFVIDw8IFJDQ19DSVJfSFNFUkRZQ19Qb3MpICAgICAgLyohPCAweDAwMDgwMDAwICovDQojZGVmaW5lIFJDQ19DSVJfSFNFUkRZQyAgICAgICAgICAgICAgICAgICAgIFJDQ19DSVJfSFNFUkRZQ19Nc2sgICAgICAgICAgICAgICAgLyohPCBIU0UgUmVhZHkgSW50ZXJydXB0IENsZWFyICovDQojZGVmaW5lIFJDQ19DSVJfUExMUkRZQ19Qb3MgICAgICAgICAgICAgICAgICgyMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19DSVJfUExMUkRZQ19Nc2sgICAgICAgICAgICAgICAgICgweDFVIDw8IFJDQ19DSVJfUExMUkRZQ19Qb3MpICAgICAgLyohPCAweDAwMTAwMDAwICovDQojZGVmaW5lIFJDQ19DSVJfUExMUkRZQyAgICAgICAgICAgICAgICAgICAgIFJDQ19DSVJfUExMUkRZQ19Nc2sgICAgICAgICAgICAgICAgLyohPCBQTEwgUmVhZHkgSW50ZXJydXB0IENsZWFyICovDQojZGVmaW5lIFJDQ19DSVJfTVNJUkRZQ19Qb3MgICAgICAgICAgICAgICAgICgyMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19DSVJfTVNJUkRZQ19Nc2sgICAgICAgICAgICAgICAgICgweDFVIDw8IFJDQ19DSVJfTVNJUkRZQ19Qb3MpICAgICAgLyohPCAweDAwMjAwMDAwICovDQojZGVmaW5lIFJDQ19DSVJfTVNJUkRZQyAgICAgICAgICAgICAgICAgICAgIFJDQ19DSVJfTVNJUkRZQ19Nc2sgICAgICAgICAgICAgICAgLyohPCBNU0kgUmVhZHkgSW50ZXJydXB0IENsZWFyICovDQojZGVmaW5lIFJDQ19DSVJfTFNFQ1NTQ19Qb3MgICAgICAgICAgICAgICAgICgyMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19DSVJfTFNFQ1NTQ19Nc2sgICAgICAgICAgICAgICAgICgweDFVIDw8IFJDQ19DSVJfTFNFQ1NTQ19Qb3MpICAgICAgLyohPCAweDAwNDAwMDAwICovDQojZGVmaW5lIFJDQ19DSVJfTFNFQ1NTQyAgICAgICAgICAgICAgICAgICAgIFJDQ19DSVJfTFNFQ1NTQ19Nc2sgICAgICAgICAgICAgICAgLyohPCBMU0UgQ1NTIEludGVycnVwdCBDbGVhciAqLw0KI2RlZmluZSBSQ0NfQ0lSX0NTU0NfUG9zICAgICAgICAgICAgICAgICAgICAoMjNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQ0lSX0NTU0NfTXNrICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBSQ0NfQ0lSX0NTU0NfUG9zKSAgICAgICAgIC8qITwgMHgwMDgwMDAwMCAqLw0KI2RlZmluZSBSQ0NfQ0lSX0NTU0MgICAgICAgICAgICAgICAgICAgICAgICBSQ0NfQ0lSX0NTU0NfTXNrICAgICAgICAgICAgICAgICAgIC8qITwgQ2xvY2sgU2VjdXJpdHkgU3lzdGVtIEludGVycnVwdCBDbGVhciAqLw0KDQovKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBSQ0NfQUhCUlNUUiByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBSQ0NfQUhCUlNUUl9HUElPQVJTVF9Qb3MgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQUhCUlNUUl9HUElPQVJTVF9Nc2sgICAgICAgICAgICAoMHgxVSA8PCBSQ0NfQUhCUlNUUl9HUElPQVJTVF9Qb3MpIC8qITwgMHgwMDAwMDAwMSAqLw0KI2RlZmluZSBSQ0NfQUhCUlNUUl9HUElPQVJTVCAgICAgICAgICAgICAgICBSQ0NfQUhCUlNUUl9HUElPQVJTVF9Nc2sgICAgICAgICAgIC8qITwgR1BJTyBwb3J0IEEgcmVzZXQgKi8NCiNkZWZpbmUgUkNDX0FIQlJTVFJfR1BJT0JSU1RfUG9zICAgICAgICAgICAgKDFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0FIQlJTVFJfR1BJT0JSU1RfTXNrICAgICAgICAgICAgKDB4MVUgPDwgUkNDX0FIQlJTVFJfR1BJT0JSU1RfUG9zKSAvKiE8IDB4MDAwMDAwMDIgKi8NCiNkZWZpbmUgUkNDX0FIQlJTVFJfR1BJT0JSU1QgICAgICAgICAgICAgICAgUkNDX0FIQlJTVFJfR1BJT0JSU1RfTXNrICAgICAgICAgICAvKiE8IEdQSU8gcG9ydCBCIHJlc2V0ICovDQojZGVmaW5lIFJDQ19BSEJSU1RSX0dQSU9DUlNUX1BvcyAgICAgICAgICAgICgyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19BSEJSU1RSX0dQSU9DUlNUX01zayAgICAgICAgICAgICgweDFVIDw8IFJDQ19BSEJSU1RSX0dQSU9DUlNUX1BvcykgLyohPCAweDAwMDAwMDA0ICovDQojZGVmaW5lIFJDQ19BSEJSU1RSX0dQSU9DUlNUICAgICAgICAgICAgICAgIFJDQ19BSEJSU1RSX0dQSU9DUlNUX01zayAgICAgICAgICAgLyohPCBHUElPIHBvcnQgQyByZXNldCAqLw0KI2RlZmluZSBSQ0NfQUhCUlNUUl9HUElPRFJTVF9Qb3MgICAgICAgICAgICAoM1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQUhCUlNUUl9HUElPRFJTVF9Nc2sgICAgICAgICAgICAoMHgxVSA8PCBSQ0NfQUhCUlNUUl9HUElPRFJTVF9Qb3MpIC8qITwgMHgwMDAwMDAwOCAqLw0KI2RlZmluZSBSQ0NfQUhCUlNUUl9HUElPRFJTVCAgICAgICAgICAgICAgICBSQ0NfQUhCUlNUUl9HUElPRFJTVF9Nc2sgICAgICAgICAgIC8qITwgR1BJTyBwb3J0IEQgcmVzZXQgKi8NCiNkZWZpbmUgUkNDX0FIQlJTVFJfR1BJT0VSU1RfUG9zICAgICAgICAgICAgKDRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0FIQlJTVFJfR1BJT0VSU1RfTXNrICAgICAgICAgICAgKDB4MVUgPDwgUkNDX0FIQlJTVFJfR1BJT0VSU1RfUG9zKSAvKiE8IDB4MDAwMDAwMTAgKi8NCiNkZWZpbmUgUkNDX0FIQlJTVFJfR1BJT0VSU1QgICAgICAgICAgICAgICAgUkNDX0FIQlJTVFJfR1BJT0VSU1RfTXNrICAgICAgICAgICAvKiE8IEdQSU8gcG9ydCBFIHJlc2V0ICovDQojZGVmaW5lIFJDQ19BSEJSU1RSX0dQSU9IUlNUX1BvcyAgICAgICAgICAgICg1VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19BSEJSU1RSX0dQSU9IUlNUX01zayAgICAgICAgICAgICgweDFVIDw8IFJDQ19BSEJSU1RSX0dQSU9IUlNUX1BvcykgLyohPCAweDAwMDAwMDIwICovDQojZGVmaW5lIFJDQ19BSEJSU1RSX0dQSU9IUlNUICAgICAgICAgICAgICAgIFJDQ19BSEJSU1RSX0dQSU9IUlNUX01zayAgICAgICAgICAgLyohPCBHUElPIHBvcnQgSCByZXNldCAqLw0KI2RlZmluZSBSQ0NfQUhCUlNUUl9DUkNSU1RfUG9zICAgICAgICAgICAgICAoMTJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQUhCUlNUUl9DUkNSU1RfTXNrICAgICAgICAgICAgICAoMHgxVSA8PCBSQ0NfQUhCUlNUUl9DUkNSU1RfUG9zKSAgIC8qITwgMHgwMDAwMTAwMCAqLw0KI2RlZmluZSBSQ0NfQUhCUlNUUl9DUkNSU1QgICAgICAgICAgICAgICAgICBSQ0NfQUhCUlNUUl9DUkNSU1RfTXNrICAgICAgICAgICAgIC8qITwgQ1JDIHJlc2V0ICovDQojZGVmaW5lIFJDQ19BSEJSU1RSX0ZMSVRGUlNUX1BvcyAgICAgICAgICAgICgxNVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19BSEJSU1RSX0ZMSVRGUlNUX01zayAgICAgICAgICAgICgweDFVIDw8IFJDQ19BSEJSU1RSX0ZMSVRGUlNUX1BvcykgLyohPCAweDAwMDA4MDAwICovDQojZGVmaW5lIFJDQ19BSEJSU1RSX0ZMSVRGUlNUICAgICAgICAgICAgICAgIFJDQ19BSEJSU1RSX0ZMSVRGUlNUX01zayAgICAgICAgICAgLyohPCBGTElURiByZXNldCAqLw0KI2RlZmluZSBSQ0NfQUhCUlNUUl9ETUExUlNUX1BvcyAgICAgICAgICAgICAoMjRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQUhCUlNUUl9ETUExUlNUX01zayAgICAgICAgICAgICAoMHgxVSA8PCBSQ0NfQUhCUlNUUl9ETUExUlNUX1BvcykgIC8qITwgMHgwMTAwMDAwMCAqLw0KI2RlZmluZSBSQ0NfQUhCUlNUUl9ETUExUlNUICAgICAgICAgICAgICAgICBSQ0NfQUhCUlNUUl9ETUExUlNUX01zayAgICAgICAgICAgIC8qITwgRE1BMSByZXNldCAqLw0KI2RlZmluZSBSQ0NfQUhCUlNUUl9ETUEyUlNUX1BvcyAgICAgICAgICAgICAoMjVVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQUhCUlNUUl9ETUEyUlNUX01zayAgICAgICAgICAgICAoMHgxVSA8PCBSQ0NfQUhCUlNUUl9ETUEyUlNUX1BvcykgIC8qITwgMHgwMjAwMDAwMCAqLw0KI2RlZmluZSBSQ0NfQUhCUlNUUl9ETUEyUlNUICAgICAgICAgICAgICAgICBSQ0NfQUhCUlNUUl9ETUEyUlNUX01zayAgICAgICAgICAgIC8qITwgRE1BMiByZXNldCAqLw0KI2RlZmluZSBSQ0NfQUhCUlNUUl9BRVNSU1RfUG9zICAgICAgICAgICAgICAoMjdVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQUhCUlNUUl9BRVNSU1RfTXNrICAgICAgICAgICAgICAoMHgxVSA8PCBSQ0NfQUhCUlNUUl9BRVNSU1RfUG9zKSAgIC8qITwgMHgwODAwMDAwMCAqLw0KI2RlZmluZSBSQ0NfQUhCUlNUUl9BRVNSU1QgICAgICAgICAgICAgICAgICBSQ0NfQUhCUlNUUl9BRVNSU1RfTXNrICAgICAgICAgICAgIC8qITwgQUVTIHJlc2V0ICovDQogDQovKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBSQ0NfQVBCMlJTVFIgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBSQ0NfQVBCMlJTVFJfU1lTQ0ZHUlNUX1BvcyAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQVBCMlJTVFJfU1lTQ0ZHUlNUX01zayAgICAgICAgICAoMHgxVSA8PCBSQ0NfQVBCMlJTVFJfU1lTQ0ZHUlNUX1BvcykgLyohPCAweDAwMDAwMDAxICovDQojZGVmaW5lIFJDQ19BUEIyUlNUUl9TWVNDRkdSU1QgICAgICAgICAgICAgIFJDQ19BUEIyUlNUUl9TWVNDRkdSU1RfTXNrICAgICAgICAgLyohPCBTeXN0ZW0gQ29uZmlndXJhdGlvbiBTWVNDRkcgcmVzZXQgKi8NCiNkZWZpbmUgUkNDX0FQQjJSU1RSX1RJTTlSU1RfUG9zICAgICAgICAgICAgKDJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0FQQjJSU1RSX1RJTTlSU1RfTXNrICAgICAgICAgICAgKDB4MVUgPDwgUkNDX0FQQjJSU1RSX1RJTTlSU1RfUG9zKSAvKiE8IDB4MDAwMDAwMDQgKi8NCiNkZWZpbmUgUkNDX0FQQjJSU1RSX1RJTTlSU1QgICAgICAgICAgICAgICAgUkNDX0FQQjJSU1RSX1RJTTlSU1RfTXNrICAgICAgICAgICAvKiE8IFRJTTkgcmVzZXQgKi8NCiNkZWZpbmUgUkNDX0FQQjJSU1RSX1RJTTEwUlNUX1BvcyAgICAgICAgICAgKDNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0FQQjJSU1RSX1RJTTEwUlNUX01zayAgICAgICAgICAgKDB4MVUgPDwgUkNDX0FQQjJSU1RSX1RJTTEwUlNUX1BvcykgLyohPCAweDAwMDAwMDA4ICovDQojZGVmaW5lIFJDQ19BUEIyUlNUUl9USU0xMFJTVCAgICAgICAgICAgICAgIFJDQ19BUEIyUlNUUl9USU0xMFJTVF9Nc2sgICAgICAgICAgLyohPCBUSU0xMCByZXNldCAqLw0KI2RlZmluZSBSQ0NfQVBCMlJTVFJfVElNMTFSU1RfUG9zICAgICAgICAgICAoNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQVBCMlJTVFJfVElNMTFSU1RfTXNrICAgICAgICAgICAoMHgxVSA8PCBSQ0NfQVBCMlJTVFJfVElNMTFSU1RfUG9zKSAvKiE8IDB4MDAwMDAwMTAgKi8NCiNkZWZpbmUgUkNDX0FQQjJSU1RSX1RJTTExUlNUICAgICAgICAgICAgICAgUkNDX0FQQjJSU1RSX1RJTTExUlNUX01zayAgICAgICAgICAvKiE8IFRJTTExIHJlc2V0ICovDQojZGVmaW5lIFJDQ19BUEIyUlNUUl9BREMxUlNUX1BvcyAgICAgICAgICAgICg5VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19BUEIyUlNUUl9BREMxUlNUX01zayAgICAgICAgICAgICgweDFVIDw8IFJDQ19BUEIyUlNUUl9BREMxUlNUX1BvcykgLyohPCAweDAwMDAwMjAwICovDQojZGVmaW5lIFJDQ19BUEIyUlNUUl9BREMxUlNUICAgICAgICAgICAgICAgIFJDQ19BUEIyUlNUUl9BREMxUlNUX01zayAgICAgICAgICAgLyohPCBBREMxIHJlc2V0ICovDQojZGVmaW5lIFJDQ19BUEIyUlNUUl9TUEkxUlNUX1BvcyAgICAgICAgICAgICgxMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19BUEIyUlNUUl9TUEkxUlNUX01zayAgICAgICAgICAgICgweDFVIDw8IFJDQ19BUEIyUlNUUl9TUEkxUlNUX1BvcykgLyohPCAweDAwMDAxMDAwICovDQojZGVmaW5lIFJDQ19BUEIyUlNUUl9TUEkxUlNUICAgICAgICAgICAgICAgIFJDQ19BUEIyUlNUUl9TUEkxUlNUX01zayAgICAgICAgICAgLyohPCBTUEkxIHJlc2V0ICovDQojZGVmaW5lIFJDQ19BUEIyUlNUUl9VU0FSVDFSU1RfUG9zICAgICAgICAgICgxNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19BUEIyUlNUUl9VU0FSVDFSU1RfTXNrICAgICAgICAgICgweDFVIDw8IFJDQ19BUEIyUlNUUl9VU0FSVDFSU1RfUG9zKSAvKiE8IDB4MDAwMDQwMDAgKi8NCiNkZWZpbmUgUkNDX0FQQjJSU1RSX1VTQVJUMVJTVCAgICAgICAgICAgICAgUkNDX0FQQjJSU1RSX1VTQVJUMVJTVF9Nc2sgICAgICAgICAvKiE8IFVTQVJUMSByZXNldCAqLw0KDQovKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBSQ0NfQVBCMVJTVFIgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBSQ0NfQVBCMVJTVFJfVElNMlJTVF9Qb3MgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQVBCMVJTVFJfVElNMlJTVF9Nc2sgICAgICAgICAgICAoMHgxVSA8PCBSQ0NfQVBCMVJTVFJfVElNMlJTVF9Qb3MpIC8qITwgMHgwMDAwMDAwMSAqLw0KI2RlZmluZSBSQ0NfQVBCMVJTVFJfVElNMlJTVCAgICAgICAgICAgICAgICBSQ0NfQVBCMVJTVFJfVElNMlJTVF9Nc2sgICAgICAgICAgIC8qITwgVGltZXIgMiByZXNldCAqLw0KI2RlZmluZSBSQ0NfQVBCMVJTVFJfVElNM1JTVF9Qb3MgICAgICAgICAgICAoMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQVBCMVJTVFJfVElNM1JTVF9Nc2sgICAgICAgICAgICAoMHgxVSA8PCBSQ0NfQVBCMVJTVFJfVElNM1JTVF9Qb3MpIC8qITwgMHgwMDAwMDAwMiAqLw0KI2RlZmluZSBSQ0NfQVBCMVJTVFJfVElNM1JTVCAgICAgICAgICAgICAgICBSQ0NfQVBCMVJTVFJfVElNM1JTVF9Nc2sgICAgICAgICAgIC8qITwgVGltZXIgMyByZXNldCAqLw0KI2RlZmluZSBSQ0NfQVBCMVJTVFJfVElNNFJTVF9Qb3MgICAgICAgICAgICAoMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQVBCMVJTVFJfVElNNFJTVF9Nc2sgICAgICAgICAgICAoMHgxVSA8PCBSQ0NfQVBCMVJTVFJfVElNNFJTVF9Qb3MpIC8qITwgMHgwMDAwMDAwNCAqLw0KI2RlZmluZSBSQ0NfQVBCMVJTVFJfVElNNFJTVCAgICAgICAgICAgICAgICBSQ0NfQVBCMVJTVFJfVElNNFJTVF9Nc2sgICAgICAgICAgIC8qITwgVGltZXIgNCByZXNldCAqLw0KI2RlZmluZSBSQ0NfQVBCMVJTVFJfVElNNVJTVF9Qb3MgICAgICAgICAgICAoM1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQVBCMVJTVFJfVElNNVJTVF9Nc2sgICAgICAgICAgICAoMHgxVSA8PCBSQ0NfQVBCMVJTVFJfVElNNVJTVF9Qb3MpIC8qITwgMHgwMDAwMDAwOCAqLw0KI2RlZmluZSBSQ0NfQVBCMVJTVFJfVElNNVJTVCAgICAgICAgICAgICAgICBSQ0NfQVBCMVJTVFJfVElNNVJTVF9Nc2sgICAgICAgICAgIC8qITwgVGltZXIgNSByZXNldCAqLw0KI2RlZmluZSBSQ0NfQVBCMVJTVFJfVElNNlJTVF9Qb3MgICAgICAgICAgICAoNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQVBCMVJTVFJfVElNNlJTVF9Nc2sgICAgICAgICAgICAoMHgxVSA8PCBSQ0NfQVBCMVJTVFJfVElNNlJTVF9Qb3MpIC8qITwgMHgwMDAwMDAxMCAqLw0KI2RlZmluZSBSQ0NfQVBCMVJTVFJfVElNNlJTVCAgICAgICAgICAgICAgICBSQ0NfQVBCMVJTVFJfVElNNlJTVF9Nc2sgICAgICAgICAgIC8qITwgVGltZXIgNiByZXNldCAqLw0KI2RlZmluZSBSQ0NfQVBCMVJTVFJfVElNN1JTVF9Qb3MgICAgICAgICAgICAoNVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQVBCMVJTVFJfVElNN1JTVF9Nc2sgICAgICAgICAgICAoMHgxVSA8PCBSQ0NfQVBCMVJTVFJfVElNN1JTVF9Qb3MpIC8qITwgMHgwMDAwMDAyMCAqLw0KI2RlZmluZSBSQ0NfQVBCMVJTVFJfVElNN1JTVCAgICAgICAgICAgICAgICBSQ0NfQVBCMVJTVFJfVElNN1JTVF9Nc2sgICAgICAgICAgIC8qITwgVGltZXIgNyByZXNldCAqLw0KI2RlZmluZSBSQ0NfQVBCMVJTVFJfTENEUlNUX1BvcyAgICAgICAgICAgICAoOVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQVBCMVJTVFJfTENEUlNUX01zayAgICAgICAgICAgICAoMHgxVSA8PCBSQ0NfQVBCMVJTVFJfTENEUlNUX1BvcykgIC8qITwgMHgwMDAwMDIwMCAqLw0KI2RlZmluZSBSQ0NfQVBCMVJTVFJfTENEUlNUICAgICAgICAgICAgICAgICBSQ0NfQVBCMVJTVFJfTENEUlNUX01zayAgICAgICAgICAgIC8qITwgTENEIHJlc2V0ICovDQojZGVmaW5lIFJDQ19BUEIxUlNUUl9XV0RHUlNUX1BvcyAgICAgICAgICAgICgxMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19BUEIxUlNUUl9XV0RHUlNUX01zayAgICAgICAgICAgICgweDFVIDw8IFJDQ19BUEIxUlNUUl9XV0RHUlNUX1BvcykgLyohPCAweDAwMDAwODAwICovDQojZGVmaW5lIFJDQ19BUEIxUlNUUl9XV0RHUlNUICAgICAgICAgICAgICAgIFJDQ19BUEIxUlNUUl9XV0RHUlNUX01zayAgICAgICAgICAgLyohPCBXaW5kb3cgV2F0Y2hkb2cgcmVzZXQgKi8NCiNkZWZpbmUgUkNDX0FQQjFSU1RSX1NQSTJSU1RfUG9zICAgICAgICAgICAgKDE0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0FQQjFSU1RSX1NQSTJSU1RfTXNrICAgICAgICAgICAgKDB4MVUgPDwgUkNDX0FQQjFSU1RSX1NQSTJSU1RfUG9zKSAvKiE8IDB4MDAwMDQwMDAgKi8NCiNkZWZpbmUgUkNDX0FQQjFSU1RSX1NQSTJSU1QgICAgICAgICAgICAgICAgUkNDX0FQQjFSU1RSX1NQSTJSU1RfTXNrICAgICAgICAgICAvKiE8IFNQSSAyIHJlc2V0ICovDQojZGVmaW5lIFJDQ19BUEIxUlNUUl9TUEkzUlNUX1BvcyAgICAgICAgICAgICgxNVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19BUEIxUlNUUl9TUEkzUlNUX01zayAgICAgICAgICAgICgweDFVIDw8IFJDQ19BUEIxUlNUUl9TUEkzUlNUX1BvcykgLyohPCAweDAwMDA4MDAwICovDQojZGVmaW5lIFJDQ19BUEIxUlNUUl9TUEkzUlNUICAgICAgICAgICAgICAgIFJDQ19BUEIxUlNUUl9TUEkzUlNUX01zayAgICAgICAgICAgLyohPCBTUEkgMyByZXNldCAqLw0KI2RlZmluZSBSQ0NfQVBCMVJTVFJfVVNBUlQyUlNUX1BvcyAgICAgICAgICAoMTdVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQVBCMVJTVFJfVVNBUlQyUlNUX01zayAgICAgICAgICAoMHgxVSA8PCBSQ0NfQVBCMVJTVFJfVVNBUlQyUlNUX1BvcykgLyohPCAweDAwMDIwMDAwICovDQojZGVmaW5lIFJDQ19BUEIxUlNUUl9VU0FSVDJSU1QgICAgICAgICAgICAgIFJDQ19BUEIxUlNUUl9VU0FSVDJSU1RfTXNrICAgICAgICAgLyohPCBVU0FSVCAyIHJlc2V0ICovDQojZGVmaW5lIFJDQ19BUEIxUlNUUl9VU0FSVDNSU1RfUG9zICAgICAgICAgICgxOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19BUEIxUlNUUl9VU0FSVDNSU1RfTXNrICAgICAgICAgICgweDFVIDw8IFJDQ19BUEIxUlNUUl9VU0FSVDNSU1RfUG9zKSAvKiE8IDB4MDAwNDAwMDAgKi8NCiNkZWZpbmUgUkNDX0FQQjFSU1RSX1VTQVJUM1JTVCAgICAgICAgICAgICAgUkNDX0FQQjFSU1RSX1VTQVJUM1JTVF9Nc2sgICAgICAgICAvKiE8IFVTQVJUIDMgcmVzZXQgKi8NCiNkZWZpbmUgUkNDX0FQQjFSU1RSX0kyQzFSU1RfUG9zICAgICAgICAgICAgKDIxVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0FQQjFSU1RSX0kyQzFSU1RfTXNrICAgICAgICAgICAgKDB4MVUgPDwgUkNDX0FQQjFSU1RSX0kyQzFSU1RfUG9zKSAvKiE8IDB4MDAyMDAwMDAgKi8NCiNkZWZpbmUgUkNDX0FQQjFSU1RSX0kyQzFSU1QgICAgICAgICAgICAgICAgUkNDX0FQQjFSU1RSX0kyQzFSU1RfTXNrICAgICAgICAgICAvKiE8IEkyQyAxIHJlc2V0ICovDQojZGVmaW5lIFJDQ19BUEIxUlNUUl9JMkMyUlNUX1BvcyAgICAgICAgICAgICgyMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19BUEIxUlNUUl9JMkMyUlNUX01zayAgICAgICAgICAgICgweDFVIDw8IFJDQ19BUEIxUlNUUl9JMkMyUlNUX1BvcykgLyohPCAweDAwNDAwMDAwICovDQojZGVmaW5lIFJDQ19BUEIxUlNUUl9JMkMyUlNUICAgICAgICAgICAgICAgIFJDQ19BUEIxUlNUUl9JMkMyUlNUX01zayAgICAgICAgICAgLyohPCBJMkMgMiByZXNldCAqLw0KI2RlZmluZSBSQ0NfQVBCMVJTVFJfVVNCUlNUX1BvcyAgICAgICAgICAgICAoMjNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQVBCMVJTVFJfVVNCUlNUX01zayAgICAgICAgICAgICAoMHgxVSA8PCBSQ0NfQVBCMVJTVFJfVVNCUlNUX1BvcykgIC8qITwgMHgwMDgwMDAwMCAqLw0KI2RlZmluZSBSQ0NfQVBCMVJTVFJfVVNCUlNUICAgICAgICAgICAgICAgICBSQ0NfQVBCMVJTVFJfVVNCUlNUX01zayAgICAgICAgICAgIC8qITwgVVNCIHJlc2V0ICovDQojZGVmaW5lIFJDQ19BUEIxUlNUUl9QV1JSU1RfUG9zICAgICAgICAgICAgICgyOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19BUEIxUlNUUl9QV1JSU1RfTXNrICAgICAgICAgICAgICgweDFVIDw8IFJDQ19BUEIxUlNUUl9QV1JSU1RfUG9zKSAgLyohPCAweDEwMDAwMDAwICovDQojZGVmaW5lIFJDQ19BUEIxUlNUUl9QV1JSU1QgICAgICAgICAgICAgICAgIFJDQ19BUEIxUlNUUl9QV1JSU1RfTXNrICAgICAgICAgICAgLyohPCBQb3dlciBpbnRlcmZhY2UgcmVzZXQgKi8NCiNkZWZpbmUgUkNDX0FQQjFSU1RSX0RBQ1JTVF9Qb3MgICAgICAgICAgICAgKDI5VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0FQQjFSU1RSX0RBQ1JTVF9Nc2sgICAgICAgICAgICAgKDB4MVUgPDwgUkNDX0FQQjFSU1RSX0RBQ1JTVF9Qb3MpICAvKiE8IDB4MjAwMDAwMDAgKi8NCiNkZWZpbmUgUkNDX0FQQjFSU1RSX0RBQ1JTVCAgICAgICAgICAgICAgICAgUkNDX0FQQjFSU1RSX0RBQ1JTVF9Nc2sgICAgICAgICAgICAvKiE8IERBQyBpbnRlcmZhY2UgcmVzZXQgKi8NCiNkZWZpbmUgUkNDX0FQQjFSU1RSX0NPTVBSU1RfUG9zICAgICAgICAgICAgKDMxVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0FQQjFSU1RSX0NPTVBSU1RfTXNrICAgICAgICAgICAgKDB4MVUgPDwgUkNDX0FQQjFSU1RSX0NPTVBSU1RfUG9zKSAvKiE8IDB4ODAwMDAwMDAgKi8NCiNkZWZpbmUgUkNDX0FQQjFSU1RSX0NPTVBSU1QgICAgICAgICAgICAgICAgUkNDX0FQQjFSU1RSX0NPTVBSU1RfTXNrICAgICAgICAgICAvKiE8IENvbXBhcmF0b3IgaW50ZXJmYWNlIHJlc2V0ICovDQoNCi8qKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBSQ0NfQUhCRU5SIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIFJDQ19BSEJFTlJfR1BJT0FFTl9Qb3MgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19BSEJFTlJfR1BJT0FFTl9Nc2sgICAgICAgICAgICAgICgweDFVIDw8IFJDQ19BSEJFTlJfR1BJT0FFTl9Qb3MpICAgLyohPCAweDAwMDAwMDAxICovDQojZGVmaW5lIFJDQ19BSEJFTlJfR1BJT0FFTiAgICAgICAgICAgICAgICAgIFJDQ19BSEJFTlJfR1BJT0FFTl9Nc2sgICAgICAgICAgICAgLyohPCBHUElPIHBvcnQgQSBjbG9jayBlbmFibGUgKi8NCiNkZWZpbmUgUkNDX0FIQkVOUl9HUElPQkVOX1BvcyAgICAgICAgICAgICAgKDFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0FIQkVOUl9HUElPQkVOX01zayAgICAgICAgICAgICAgKDB4MVUgPDwgUkNDX0FIQkVOUl9HUElPQkVOX1BvcykgICAvKiE8IDB4MDAwMDAwMDIgKi8NCiNkZWZpbmUgUkNDX0FIQkVOUl9HUElPQkVOICAgICAgICAgICAgICAgICAgUkNDX0FIQkVOUl9HUElPQkVOX01zayAgICAgICAgICAgICAvKiE8IEdQSU8gcG9ydCBCIGNsb2NrIGVuYWJsZSAqLw0KI2RlZmluZSBSQ0NfQUhCRU5SX0dQSU9DRU5fUG9zICAgICAgICAgICAgICAoMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQUhCRU5SX0dQSU9DRU5fTXNrICAgICAgICAgICAgICAoMHgxVSA8PCBSQ0NfQUhCRU5SX0dQSU9DRU5fUG9zKSAgIC8qITwgMHgwMDAwMDAwNCAqLw0KI2RlZmluZSBSQ0NfQUhCRU5SX0dQSU9DRU4gICAgICAgICAgICAgICAgICBSQ0NfQUhCRU5SX0dQSU9DRU5fTXNrICAgICAgICAgICAgIC8qITwgR1BJTyBwb3J0IEMgY2xvY2sgZW5hYmxlICovDQojZGVmaW5lIFJDQ19BSEJFTlJfR1BJT0RFTl9Qb3MgICAgICAgICAgICAgICgzVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19BSEJFTlJfR1BJT0RFTl9Nc2sgICAgICAgICAgICAgICgweDFVIDw8IFJDQ19BSEJFTlJfR1BJT0RFTl9Qb3MpICAgLyohPCAweDAwMDAwMDA4ICovDQojZGVmaW5lIFJDQ19BSEJFTlJfR1BJT0RFTiAgICAgICAgICAgICAgICAgIFJDQ19BSEJFTlJfR1BJT0RFTl9Nc2sgICAgICAgICAgICAgLyohPCBHUElPIHBvcnQgRCBjbG9jayBlbmFibGUgKi8NCiNkZWZpbmUgUkNDX0FIQkVOUl9HUElPRUVOX1BvcyAgICAgICAgICAgICAgKDRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0FIQkVOUl9HUElPRUVOX01zayAgICAgICAgICAgICAgKDB4MVUgPDwgUkNDX0FIQkVOUl9HUElPRUVOX1BvcykgICAvKiE8IDB4MDAwMDAwMTAgKi8NCiNkZWZpbmUgUkNDX0FIQkVOUl9HUElPRUVOICAgICAgICAgICAgICAgICAgUkNDX0FIQkVOUl9HUElPRUVOX01zayAgICAgICAgICAgICAvKiE8IEdQSU8gcG9ydCBFIGNsb2NrIGVuYWJsZSAqLw0KI2RlZmluZSBSQ0NfQUhCRU5SX0dQSU9IRU5fUG9zICAgICAgICAgICAgICAoNVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQUhCRU5SX0dQSU9IRU5fTXNrICAgICAgICAgICAgICAoMHgxVSA8PCBSQ0NfQUhCRU5SX0dQSU9IRU5fUG9zKSAgIC8qITwgMHgwMDAwMDAyMCAqLw0KI2RlZmluZSBSQ0NfQUhCRU5SX0dQSU9IRU4gICAgICAgICAgICAgICAgICBSQ0NfQUhCRU5SX0dQSU9IRU5fTXNrICAgICAgICAgICAgIC8qITwgR1BJTyBwb3J0IEggY2xvY2sgZW5hYmxlICovDQojZGVmaW5lIFJDQ19BSEJFTlJfQ1JDRU5fUG9zICAgICAgICAgICAgICAgICgxMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19BSEJFTlJfQ1JDRU5fTXNrICAgICAgICAgICAgICAgICgweDFVIDw8IFJDQ19BSEJFTlJfQ1JDRU5fUG9zKSAgICAgLyohPCAweDAwMDAxMDAwICovDQojZGVmaW5lIFJDQ19BSEJFTlJfQ1JDRU4gICAgICAgICAgICAgICAgICAgIFJDQ19BSEJFTlJfQ1JDRU5fTXNrICAgICAgICAgICAgICAgLyohPCBDUkMgY2xvY2sgZW5hYmxlICovDQojZGVmaW5lIFJDQ19BSEJFTlJfRkxJVEZFTl9Qb3MgICAgICAgICAgICAgICgxNVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19BSEJFTlJfRkxJVEZFTl9Nc2sgICAgICAgICAgICAgICgweDFVIDw8IFJDQ19BSEJFTlJfRkxJVEZFTl9Qb3MpICAgLyohPCAweDAwMDA4MDAwICovDQojZGVmaW5lIFJDQ19BSEJFTlJfRkxJVEZFTiAgICAgICAgICAgICAgICAgIFJDQ19BSEJFTlJfRkxJVEZFTl9Nc2sgICAgICAgICAgICAgLyohPCBGTElURiBjbG9jayBlbmFibGUgKGhhcyBlZmZlY3Qgb25seSB3aGVuDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoZSBGbGFzaCBtZW1vcnkgaXMgaW4gcG93ZXIgZG93biBtb2RlKSAqLw0KI2RlZmluZSBSQ0NfQUhCRU5SX0RNQTFFTl9Qb3MgICAgICAgICAgICAgICAoMjRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQUhCRU5SX0RNQTFFTl9Nc2sgICAgICAgICAgICAgICAoMHgxVSA8PCBSQ0NfQUhCRU5SX0RNQTFFTl9Qb3MpICAgIC8qITwgMHgwMTAwMDAwMCAqLw0KI2RlZmluZSBSQ0NfQUhCRU5SX0RNQTFFTiAgICAgICAgICAgICAgICAgICBSQ0NfQUhCRU5SX0RNQTFFTl9Nc2sgICAgICAgICAgICAgIC8qITwgRE1BMSBjbG9jayBlbmFibGUgKi8NCiNkZWZpbmUgUkNDX0FIQkVOUl9ETUEyRU5fUG9zICAgICAgICAgICAgICAgKDI1VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0FIQkVOUl9ETUEyRU5fTXNrICAgICAgICAgICAgICAgKDB4MVUgPDwgUkNDX0FIQkVOUl9ETUEyRU5fUG9zKSAgICAvKiE8IDB4MDIwMDAwMDAgKi8NCiNkZWZpbmUgUkNDX0FIQkVOUl9ETUEyRU4gICAgICAgICAgICAgICAgICAgUkNDX0FIQkVOUl9ETUEyRU5fTXNrICAgICAgICAgICAgICAvKiE8IERNQTIgY2xvY2sgZW5hYmxlICovDQojZGVmaW5lIFJDQ19BSEJFTlJfQUVTRU5fUG9zICAgICAgICAgICAgICAgICgyN1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19BSEJFTlJfQUVTRU5fTXNrICAgICAgICAgICAgICAgICgweDFVIDw8IFJDQ19BSEJFTlJfQUVTRU5fUG9zKSAgICAgLyohPCAweDA4MDAwMDAwICovDQojZGVmaW5lIFJDQ19BSEJFTlJfQUVTRU4gICAgICAgICAgICAgICAgICAgIFJDQ19BSEJFTlJfQUVTRU5fTXNrICAgICAgICAgICAgICAgLyohPCBBRVMgY2xvY2sgZW5hYmxlICovDQoNCi8qKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBSQ0NfQVBCMkVOUiByZWdpc3RlciAgKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIFJDQ19BUEIyRU5SX1NZU0NGR0VOX1BvcyAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19BUEIyRU5SX1NZU0NGR0VOX01zayAgICAgICAgICAgICgweDFVIDw8IFJDQ19BUEIyRU5SX1NZU0NGR0VOX1BvcykgLyohPCAweDAwMDAwMDAxICovDQojZGVmaW5lIFJDQ19BUEIyRU5SX1NZU0NGR0VOICAgICAgICAgICAgICAgIFJDQ19BUEIyRU5SX1NZU0NGR0VOX01zayAgICAgICAgICAgLyohPCBTeXN0ZW0gQ29uZmlndXJhdGlvbiBTWVNDRkcgY2xvY2sgZW5hYmxlICovDQojZGVmaW5lIFJDQ19BUEIyRU5SX1RJTTlFTl9Qb3MgICAgICAgICAgICAgICgyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19BUEIyRU5SX1RJTTlFTl9Nc2sgICAgICAgICAgICAgICgweDFVIDw8IFJDQ19BUEIyRU5SX1RJTTlFTl9Qb3MpICAgLyohPCAweDAwMDAwMDA0ICovDQojZGVmaW5lIFJDQ19BUEIyRU5SX1RJTTlFTiAgICAgICAgICAgICAgICAgIFJDQ19BUEIyRU5SX1RJTTlFTl9Nc2sgICAgICAgICAgICAgLyohPCBUSU05IGludGVyZmFjZSBjbG9jayBlbmFibGUgKi8NCiNkZWZpbmUgUkNDX0FQQjJFTlJfVElNMTBFTl9Qb3MgICAgICAgICAgICAgKDNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0FQQjJFTlJfVElNMTBFTl9Nc2sgICAgICAgICAgICAgKDB4MVUgPDwgUkNDX0FQQjJFTlJfVElNMTBFTl9Qb3MpICAvKiE8IDB4MDAwMDAwMDggKi8NCiNkZWZpbmUgUkNDX0FQQjJFTlJfVElNMTBFTiAgICAgICAgICAgICAgICAgUkNDX0FQQjJFTlJfVElNMTBFTl9Nc2sgICAgICAgICAgICAvKiE8IFRJTTEwIGludGVyZmFjZSBjbG9jayBlbmFibGUgKi8NCiNkZWZpbmUgUkNDX0FQQjJFTlJfVElNMTFFTl9Qb3MgICAgICAgICAgICAgKDRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0FQQjJFTlJfVElNMTFFTl9Nc2sgICAgICAgICAgICAgKDB4MVUgPDwgUkNDX0FQQjJFTlJfVElNMTFFTl9Qb3MpICAvKiE8IDB4MDAwMDAwMTAgKi8NCiNkZWZpbmUgUkNDX0FQQjJFTlJfVElNMTFFTiAgICAgICAgICAgICAgICAgUkNDX0FQQjJFTlJfVElNMTFFTl9Nc2sgICAgICAgICAgICAvKiE8IFRJTTExIFRpbWVyIGNsb2NrIGVuYWJsZSAqLw0KI2RlZmluZSBSQ0NfQVBCMkVOUl9BREMxRU5fUG9zICAgICAgICAgICAgICAoOVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQVBCMkVOUl9BREMxRU5fTXNrICAgICAgICAgICAgICAoMHgxVSA8PCBSQ0NfQVBCMkVOUl9BREMxRU5fUG9zKSAgIC8qITwgMHgwMDAwMDIwMCAqLw0KI2RlZmluZSBSQ0NfQVBCMkVOUl9BREMxRU4gICAgICAgICAgICAgICAgICBSQ0NfQVBCMkVOUl9BREMxRU5fTXNrICAgICAgICAgICAgIC8qITwgQURDMSBjbG9jayBlbmFibGUgKi8NCiNkZWZpbmUgUkNDX0FQQjJFTlJfU1BJMUVOX1BvcyAgICAgICAgICAgICAgKDEyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0FQQjJFTlJfU1BJMUVOX01zayAgICAgICAgICAgICAgKDB4MVUgPDwgUkNDX0FQQjJFTlJfU1BJMUVOX1BvcykgICAvKiE8IDB4MDAwMDEwMDAgKi8NCiNkZWZpbmUgUkNDX0FQQjJFTlJfU1BJMUVOICAgICAgICAgICAgICAgICAgUkNDX0FQQjJFTlJfU1BJMUVOX01zayAgICAgICAgICAgICAvKiE8IFNQSTEgY2xvY2sgZW5hYmxlICovDQojZGVmaW5lIFJDQ19BUEIyRU5SX1VTQVJUMUVOX1BvcyAgICAgICAgICAgICgxNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19BUEIyRU5SX1VTQVJUMUVOX01zayAgICAgICAgICAgICgweDFVIDw8IFJDQ19BUEIyRU5SX1VTQVJUMUVOX1BvcykgLyohPCAweDAwMDA0MDAwICovDQojZGVmaW5lIFJDQ19BUEIyRU5SX1VTQVJUMUVOICAgICAgICAgICAgICAgIFJDQ19BUEIyRU5SX1VTQVJUMUVOX01zayAgICAgICAgICAgLyohPCBVU0FSVDEgY2xvY2sgZW5hYmxlICovDQoNCi8qKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFJDQ19BUEIxRU5SIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIFJDQ19BUEIxRU5SX1RJTTJFTl9Qb3MgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19BUEIxRU5SX1RJTTJFTl9Nc2sgICAgICAgICAgICAgICgweDFVIDw8IFJDQ19BUEIxRU5SX1RJTTJFTl9Qb3MpICAgLyohPCAweDAwMDAwMDAxICovDQojZGVmaW5lIFJDQ19BUEIxRU5SX1RJTTJFTiAgICAgICAgICAgICAgICAgIFJDQ19BUEIxRU5SX1RJTTJFTl9Nc2sgICAgICAgICAgICAgLyohPCBUaW1lciAyIGNsb2NrIGVuYWJsZWQqLw0KI2RlZmluZSBSQ0NfQVBCMUVOUl9USU0zRU5fUG9zICAgICAgICAgICAgICAoMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQVBCMUVOUl9USU0zRU5fTXNrICAgICAgICAgICAgICAoMHgxVSA8PCBSQ0NfQVBCMUVOUl9USU0zRU5fUG9zKSAgIC8qITwgMHgwMDAwMDAwMiAqLw0KI2RlZmluZSBSQ0NfQVBCMUVOUl9USU0zRU4gICAgICAgICAgICAgICAgICBSQ0NfQVBCMUVOUl9USU0zRU5fTXNrICAgICAgICAgICAgIC8qITwgVGltZXIgMyBjbG9jayBlbmFibGUgKi8NCiNkZWZpbmUgUkNDX0FQQjFFTlJfVElNNEVOX1BvcyAgICAgICAgICAgICAgKDJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0FQQjFFTlJfVElNNEVOX01zayAgICAgICAgICAgICAgKDB4MVUgPDwgUkNDX0FQQjFFTlJfVElNNEVOX1BvcykgICAvKiE8IDB4MDAwMDAwMDQgKi8NCiNkZWZpbmUgUkNDX0FQQjFFTlJfVElNNEVOICAgICAgICAgICAgICAgICAgUkNDX0FQQjFFTlJfVElNNEVOX01zayAgICAgICAgICAgICAvKiE8IFRpbWVyIDQgY2xvY2sgZW5hYmxlICovDQojZGVmaW5lIFJDQ19BUEIxRU5SX1RJTTVFTl9Qb3MgICAgICAgICAgICAgICgzVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19BUEIxRU5SX1RJTTVFTl9Nc2sgICAgICAgICAgICAgICgweDFVIDw8IFJDQ19BUEIxRU5SX1RJTTVFTl9Qb3MpICAgLyohPCAweDAwMDAwMDA4ICovDQojZGVmaW5lIFJDQ19BUEIxRU5SX1RJTTVFTiAgICAgICAgICAgICAgICAgIFJDQ19BUEIxRU5SX1RJTTVFTl9Nc2sgICAgICAgICAgICAgLyohPCBUaW1lciA1IGNsb2NrIGVuYWJsZSAqLw0KI2RlZmluZSBSQ0NfQVBCMUVOUl9USU02RU5fUG9zICAgICAgICAgICAgICAoNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQVBCMUVOUl9USU02RU5fTXNrICAgICAgICAgICAgICAoMHgxVSA8PCBSQ0NfQVBCMUVOUl9USU02RU5fUG9zKSAgIC8qITwgMHgwMDAwMDAxMCAqLw0KI2RlZmluZSBSQ0NfQVBCMUVOUl9USU02RU4gICAgICAgICAgICAgICAgICBSQ0NfQVBCMUVOUl9USU02RU5fTXNrICAgICAgICAgICAgIC8qITwgVGltZXIgNiBjbG9jayBlbmFibGUgKi8NCiNkZWZpbmUgUkNDX0FQQjFFTlJfVElNN0VOX1BvcyAgICAgICAgICAgICAgKDVVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0FQQjFFTlJfVElNN0VOX01zayAgICAgICAgICAgICAgKDB4MVUgPDwgUkNDX0FQQjFFTlJfVElNN0VOX1BvcykgICAvKiE8IDB4MDAwMDAwMjAgKi8NCiNkZWZpbmUgUkNDX0FQQjFFTlJfVElNN0VOICAgICAgICAgICAgICAgICAgUkNDX0FQQjFFTlJfVElNN0VOX01zayAgICAgICAgICAgICAvKiE8IFRpbWVyIDcgY2xvY2sgZW5hYmxlICovDQojZGVmaW5lIFJDQ19BUEIxRU5SX0xDREVOX1BvcyAgICAgICAgICAgICAgICg5VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19BUEIxRU5SX0xDREVOX01zayAgICAgICAgICAgICAgICgweDFVIDw8IFJDQ19BUEIxRU5SX0xDREVOX1BvcykgICAgLyohPCAweDAwMDAwMjAwICovDQojZGVmaW5lIFJDQ19BUEIxRU5SX0xDREVOICAgICAgICAgICAgICAgICAgIFJDQ19BUEIxRU5SX0xDREVOX01zayAgICAgICAgICAgICAgLyohPCBMQ0QgY2xvY2sgZW5hYmxlICovDQojZGVmaW5lIFJDQ19BUEIxRU5SX1dXREdFTl9Qb3MgICAgICAgICAgICAgICgxMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19BUEIxRU5SX1dXREdFTl9Nc2sgICAgICAgICAgICAgICgweDFVIDw8IFJDQ19BUEIxRU5SX1dXREdFTl9Qb3MpICAgLyohPCAweDAwMDAwODAwICovDQojZGVmaW5lIFJDQ19BUEIxRU5SX1dXREdFTiAgICAgICAgICAgICAgICAgIFJDQ19BUEIxRU5SX1dXREdFTl9Nc2sgICAgICAgICAgICAgLyohPCBXaW5kb3cgV2F0Y2hkb2cgY2xvY2sgZW5hYmxlICovDQojZGVmaW5lIFJDQ19BUEIxRU5SX1NQSTJFTl9Qb3MgICAgICAgICAgICAgICgxNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19BUEIxRU5SX1NQSTJFTl9Nc2sgICAgICAgICAgICAgICgweDFVIDw8IFJDQ19BUEIxRU5SX1NQSTJFTl9Qb3MpICAgLyohPCAweDAwMDA0MDAwICovDQojZGVmaW5lIFJDQ19BUEIxRU5SX1NQSTJFTiAgICAgICAgICAgICAgICAgIFJDQ19BUEIxRU5SX1NQSTJFTl9Nc2sgICAgICAgICAgICAgLyohPCBTUEkgMiBjbG9jayBlbmFibGUgKi8NCiNkZWZpbmUgUkNDX0FQQjFFTlJfU1BJM0VOX1BvcyAgICAgICAgICAgICAgKDE1VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0FQQjFFTlJfU1BJM0VOX01zayAgICAgICAgICAgICAgKDB4MVUgPDwgUkNDX0FQQjFFTlJfU1BJM0VOX1BvcykgICAvKiE8IDB4MDAwMDgwMDAgKi8NCiNkZWZpbmUgUkNDX0FQQjFFTlJfU1BJM0VOICAgICAgICAgICAgICAgICAgUkNDX0FQQjFFTlJfU1BJM0VOX01zayAgICAgICAgICAgICAvKiE8IFNQSSAzIGNsb2NrIGVuYWJsZSAqLw0KI2RlZmluZSBSQ0NfQVBCMUVOUl9VU0FSVDJFTl9Qb3MgICAgICAgICAgICAoMTdVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQVBCMUVOUl9VU0FSVDJFTl9Nc2sgICAgICAgICAgICAoMHgxVSA8PCBSQ0NfQVBCMUVOUl9VU0FSVDJFTl9Qb3MpIC8qITwgMHgwMDAyMDAwMCAqLw0KI2RlZmluZSBSQ0NfQVBCMUVOUl9VU0FSVDJFTiAgICAgICAgICAgICAgICBSQ0NfQVBCMUVOUl9VU0FSVDJFTl9Nc2sgICAgICAgICAgIC8qITwgVVNBUlQgMiBjbG9jayBlbmFibGUgKi8NCiNkZWZpbmUgUkNDX0FQQjFFTlJfVVNBUlQzRU5fUG9zICAgICAgICAgICAgKDE4VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0FQQjFFTlJfVVNBUlQzRU5fTXNrICAgICAgICAgICAgKDB4MVUgPDwgUkNDX0FQQjFFTlJfVVNBUlQzRU5fUG9zKSAvKiE8IDB4MDAwNDAwMDAgKi8NCiNkZWZpbmUgUkNDX0FQQjFFTlJfVVNBUlQzRU4gICAgICAgICAgICAgICAgUkNDX0FQQjFFTlJfVVNBUlQzRU5fTXNrICAgICAgICAgICAvKiE8IFVTQVJUIDMgY2xvY2sgZW5hYmxlICovDQojZGVmaW5lIFJDQ19BUEIxRU5SX0kyQzFFTl9Qb3MgICAgICAgICAgICAgICgyMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19BUEIxRU5SX0kyQzFFTl9Nc2sgICAgICAgICAgICAgICgweDFVIDw8IFJDQ19BUEIxRU5SX0kyQzFFTl9Qb3MpICAgLyohPCAweDAwMjAwMDAwICovDQojZGVmaW5lIFJDQ19BUEIxRU5SX0kyQzFFTiAgICAgICAgICAgICAgICAgIFJDQ19BUEIxRU5SX0kyQzFFTl9Nc2sgICAgICAgICAgICAgLyohPCBJMkMgMSBjbG9jayBlbmFibGUgKi8NCiNkZWZpbmUgUkNDX0FQQjFFTlJfSTJDMkVOX1BvcyAgICAgICAgICAgICAgKDIyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0FQQjFFTlJfSTJDMkVOX01zayAgICAgICAgICAgICAgKDB4MVUgPDwgUkNDX0FQQjFFTlJfSTJDMkVOX1BvcykgICAvKiE8IDB4MDA0MDAwMDAgKi8NCiNkZWZpbmUgUkNDX0FQQjFFTlJfSTJDMkVOICAgICAgICAgICAgICAgICAgUkNDX0FQQjFFTlJfSTJDMkVOX01zayAgICAgICAgICAgICAvKiE8IEkyQyAyIGNsb2NrIGVuYWJsZSAqLw0KI2RlZmluZSBSQ0NfQVBCMUVOUl9VU0JFTl9Qb3MgICAgICAgICAgICAgICAoMjNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQVBCMUVOUl9VU0JFTl9Nc2sgICAgICAgICAgICAgICAoMHgxVSA8PCBSQ0NfQVBCMUVOUl9VU0JFTl9Qb3MpICAgIC8qITwgMHgwMDgwMDAwMCAqLw0KI2RlZmluZSBSQ0NfQVBCMUVOUl9VU0JFTiAgICAgICAgICAgICAgICAgICBSQ0NfQVBCMUVOUl9VU0JFTl9Nc2sgICAgICAgICAgICAgIC8qITwgVVNCIGNsb2NrIGVuYWJsZSAqLw0KI2RlZmluZSBSQ0NfQVBCMUVOUl9QV1JFTl9Qb3MgICAgICAgICAgICAgICAoMjhVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQVBCMUVOUl9QV1JFTl9Nc2sgICAgICAgICAgICAgICAoMHgxVSA8PCBSQ0NfQVBCMUVOUl9QV1JFTl9Qb3MpICAgIC8qITwgMHgxMDAwMDAwMCAqLw0KI2RlZmluZSBSQ0NfQVBCMUVOUl9QV1JFTiAgICAgICAgICAgICAgICAgICBSQ0NfQVBCMUVOUl9QV1JFTl9Nc2sgICAgICAgICAgICAgIC8qITwgUG93ZXIgaW50ZXJmYWNlIGNsb2NrIGVuYWJsZSAqLw0KI2RlZmluZSBSQ0NfQVBCMUVOUl9EQUNFTl9Qb3MgICAgICAgICAgICAgICAoMjlVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQVBCMUVOUl9EQUNFTl9Nc2sgICAgICAgICAgICAgICAoMHgxVSA8PCBSQ0NfQVBCMUVOUl9EQUNFTl9Qb3MpICAgIC8qITwgMHgyMDAwMDAwMCAqLw0KI2RlZmluZSBSQ0NfQVBCMUVOUl9EQUNFTiAgICAgICAgICAgICAgICAgICBSQ0NfQVBCMUVOUl9EQUNFTl9Nc2sgICAgICAgICAgICAgIC8qITwgREFDIGludGVyZmFjZSBjbG9jayBlbmFibGUgKi8NCiNkZWZpbmUgUkNDX0FQQjFFTlJfQ09NUEVOX1BvcyAgICAgICAgICAgICAgKDMxVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0FQQjFFTlJfQ09NUEVOX01zayAgICAgICAgICAgICAgKDB4MVUgPDwgUkNDX0FQQjFFTlJfQ09NUEVOX1BvcykgICAvKiE8IDB4ODAwMDAwMDAgKi8NCiNkZWZpbmUgUkNDX0FQQjFFTlJfQ09NUEVOICAgICAgICAgICAgICAgICAgUkNDX0FQQjFFTlJfQ09NUEVOX01zayAgICAgICAgICAgICAvKiE8IENvbXBhcmF0b3IgaW50ZXJmYWNlIGNsb2NrIGVuYWJsZSAqLw0KDQovKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgUkNDX0FIQkxQRU5SIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBSQ0NfQUhCTFBFTlJfR1BJT0FMUEVOX1BvcyAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQUhCTFBFTlJfR1BJT0FMUEVOX01zayAgICAgICAgICAoMHgxVSA8PCBSQ0NfQUhCTFBFTlJfR1BJT0FMUEVOX1BvcykgLyohPCAweDAwMDAwMDAxICovDQojZGVmaW5lIFJDQ19BSEJMUEVOUl9HUElPQUxQRU4gICAgICAgICAgICAgIFJDQ19BSEJMUEVOUl9HUElPQUxQRU5fTXNrICAgICAgICAgLyohPCBHUElPIHBvcnQgQSBjbG9jayBlbmFibGVkIGluIHNsZWVwIG1vZGUgKi8NCiNkZWZpbmUgUkNDX0FIQkxQRU5SX0dQSU9CTFBFTl9Qb3MgICAgICAgICAgKDFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0FIQkxQRU5SX0dQSU9CTFBFTl9Nc2sgICAgICAgICAgKDB4MVUgPDwgUkNDX0FIQkxQRU5SX0dQSU9CTFBFTl9Qb3MpIC8qITwgMHgwMDAwMDAwMiAqLw0KI2RlZmluZSBSQ0NfQUhCTFBFTlJfR1BJT0JMUEVOICAgICAgICAgICAgICBSQ0NfQUhCTFBFTlJfR1BJT0JMUEVOX01zayAgICAgICAgIC8qITwgR1BJTyBwb3J0IEIgY2xvY2sgZW5hYmxlZCBpbiBzbGVlcCBtb2RlICovDQojZGVmaW5lIFJDQ19BSEJMUEVOUl9HUElPQ0xQRU5fUG9zICAgICAgICAgICgyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19BSEJMUEVOUl9HUElPQ0xQRU5fTXNrICAgICAgICAgICgweDFVIDw8IFJDQ19BSEJMUEVOUl9HUElPQ0xQRU5fUG9zKSAvKiE8IDB4MDAwMDAwMDQgKi8NCiNkZWZpbmUgUkNDX0FIQkxQRU5SX0dQSU9DTFBFTiAgICAgICAgICAgICAgUkNDX0FIQkxQRU5SX0dQSU9DTFBFTl9Nc2sgICAgICAgICAvKiE8IEdQSU8gcG9ydCBDIGNsb2NrIGVuYWJsZWQgaW4gc2xlZXAgbW9kZSAqLw0KI2RlZmluZSBSQ0NfQUhCTFBFTlJfR1BJT0RMUEVOX1BvcyAgICAgICAgICAoM1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQUhCTFBFTlJfR1BJT0RMUEVOX01zayAgICAgICAgICAoMHgxVSA8PCBSQ0NfQUhCTFBFTlJfR1BJT0RMUEVOX1BvcykgLyohPCAweDAwMDAwMDA4ICovDQojZGVmaW5lIFJDQ19BSEJMUEVOUl9HUElPRExQRU4gICAgICAgICAgICAgIFJDQ19BSEJMUEVOUl9HUElPRExQRU5fTXNrICAgICAgICAgLyohPCBHUElPIHBvcnQgRCBjbG9jayBlbmFibGVkIGluIHNsZWVwIG1vZGUgKi8NCiNkZWZpbmUgUkNDX0FIQkxQRU5SX0dQSU9FTFBFTl9Qb3MgICAgICAgICAgKDRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0FIQkxQRU5SX0dQSU9FTFBFTl9Nc2sgICAgICAgICAgKDB4MVUgPDwgUkNDX0FIQkxQRU5SX0dQSU9FTFBFTl9Qb3MpIC8qITwgMHgwMDAwMDAxMCAqLw0KI2RlZmluZSBSQ0NfQUhCTFBFTlJfR1BJT0VMUEVOICAgICAgICAgICAgICBSQ0NfQUhCTFBFTlJfR1BJT0VMUEVOX01zayAgICAgICAgIC8qITwgR1BJTyBwb3J0IEUgY2xvY2sgZW5hYmxlZCBpbiBzbGVlcCBtb2RlICovDQojZGVmaW5lIFJDQ19BSEJMUEVOUl9HUElPSExQRU5fUG9zICAgICAgICAgICg1VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19BSEJMUEVOUl9HUElPSExQRU5fTXNrICAgICAgICAgICgweDFVIDw8IFJDQ19BSEJMUEVOUl9HUElPSExQRU5fUG9zKSAvKiE8IDB4MDAwMDAwMjAgKi8NCiNkZWZpbmUgUkNDX0FIQkxQRU5SX0dQSU9ITFBFTiAgICAgICAgICAgICAgUkNDX0FIQkxQRU5SX0dQSU9ITFBFTl9Nc2sgICAgICAgICAvKiE8IEdQSU8gcG9ydCBIIGNsb2NrIGVuYWJsZWQgaW4gc2xlZXAgbW9kZSAqLw0KI2RlZmluZSBSQ0NfQUhCTFBFTlJfQ1JDTFBFTl9Qb3MgICAgICAgICAgICAoMTJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQUhCTFBFTlJfQ1JDTFBFTl9Nc2sgICAgICAgICAgICAoMHgxVSA8PCBSQ0NfQUhCTFBFTlJfQ1JDTFBFTl9Qb3MpIC8qITwgMHgwMDAwMTAwMCAqLw0KI2RlZmluZSBSQ0NfQUhCTFBFTlJfQ1JDTFBFTiAgICAgICAgICAgICAgICBSQ0NfQUhCTFBFTlJfQ1JDTFBFTl9Nc2sgICAgICAgICAgIC8qITwgQ1JDIGNsb2NrIGVuYWJsZWQgaW4gc2xlZXAgbW9kZSAqLw0KI2RlZmluZSBSQ0NfQUhCTFBFTlJfRkxJVEZMUEVOX1BvcyAgICAgICAgICAoMTVVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQUhCTFBFTlJfRkxJVEZMUEVOX01zayAgICAgICAgICAoMHgxVSA8PCBSQ0NfQUhCTFBFTlJfRkxJVEZMUEVOX1BvcykgLyohPCAweDAwMDA4MDAwICovDQojZGVmaW5lIFJDQ19BSEJMUEVOUl9GTElURkxQRU4gICAgICAgICAgICAgIFJDQ19BSEJMUEVOUl9GTElURkxQRU5fTXNrICAgICAgICAgLyohPCBGbGFzaCBJbnRlcmZhY2UgY2xvY2sgZW5hYmxlZCBpbiBzbGVlcCBtb2RlDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChoYXMgZWZmZWN0IG9ubHkgd2hlbiB0aGUgRmxhc2ggbWVtb3J5IGlzDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbiBwb3dlciBkb3duIG1vZGUpICovDQojZGVmaW5lIFJDQ19BSEJMUEVOUl9TUkFNTFBFTl9Qb3MgICAgICAgICAgICgxNlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19BSEJMUEVOUl9TUkFNTFBFTl9Nc2sgICAgICAgICAgICgweDFVIDw8IFJDQ19BSEJMUEVOUl9TUkFNTFBFTl9Qb3MpIC8qITwgMHgwMDAxMDAwMCAqLw0KI2RlZmluZSBSQ0NfQUhCTFBFTlJfU1JBTUxQRU4gICAgICAgICAgICAgICBSQ0NfQUhCTFBFTlJfU1JBTUxQRU5fTXNrICAgICAgICAgIC8qITwgU1JBTSBjbG9jayBlbmFibGVkIGluIHNsZWVwIG1vZGUgKi8NCiNkZWZpbmUgUkNDX0FIQkxQRU5SX0RNQTFMUEVOX1BvcyAgICAgICAgICAgKDI0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0FIQkxQRU5SX0RNQTFMUEVOX01zayAgICAgICAgICAgKDB4MVUgPDwgUkNDX0FIQkxQRU5SX0RNQTFMUEVOX1BvcykgLyohPCAweDAxMDAwMDAwICovDQojZGVmaW5lIFJDQ19BSEJMUEVOUl9ETUExTFBFTiAgICAgICAgICAgICAgIFJDQ19BSEJMUEVOUl9ETUExTFBFTl9Nc2sgICAgICAgICAgLyohPCBETUExIGNsb2NrIGVuYWJsZWQgaW4gc2xlZXAgbW9kZSAqLw0KI2RlZmluZSBSQ0NfQUhCTFBFTlJfRE1BMkxQRU5fUG9zICAgICAgICAgICAoMjVVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQUhCTFBFTlJfRE1BMkxQRU5fTXNrICAgICAgICAgICAoMHgxVSA8PCBSQ0NfQUhCTFBFTlJfRE1BMkxQRU5fUG9zKSAvKiE8IDB4MDIwMDAwMDAgKi8NCiNkZWZpbmUgUkNDX0FIQkxQRU5SX0RNQTJMUEVOICAgICAgICAgICAgICAgUkNDX0FIQkxQRU5SX0RNQTJMUEVOX01zayAgICAgICAgICAvKiE8IERNQTIgY2xvY2sgZW5hYmxlZCBpbiBzbGVlcCBtb2RlICovDQojZGVmaW5lIFJDQ19BSEJMUEVOUl9BRVNMUEVOX1BvcyAgICAgICAgICAgICgyN1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19BSEJMUEVOUl9BRVNMUEVOX01zayAgICAgICAgICAgICgweDFVIDw8IFJDQ19BSEJMUEVOUl9BRVNMUEVOX1BvcykgLyohPCAweDA4MDAwMDAwICovDQojZGVmaW5lIFJDQ19BSEJMUEVOUl9BRVNMUEVOICAgICAgICAgICAgICAgIFJDQ19BSEJMUEVOUl9BRVNMUEVOX01zayAgICAgICAgICAgLyohPCBBRVMgY2xvY2sgZW5hYmxlZCBpbiBzbGVlcCBtb2RlICovDQoNCi8qKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBSQ0NfQVBCMkxQRU5SIHJlZ2lzdGVyICAqKioqKioqKioqKioqKiovDQojZGVmaW5lIFJDQ19BUEIyTFBFTlJfU1lTQ0ZHTFBFTl9Qb3MgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19BUEIyTFBFTlJfU1lTQ0ZHTFBFTl9Nc2sgICAgICAgICgweDFVIDw8IFJDQ19BUEIyTFBFTlJfU1lTQ0ZHTFBFTl9Qb3MpIC8qITwgMHgwMDAwMDAwMSAqLw0KI2RlZmluZSBSQ0NfQVBCMkxQRU5SX1NZU0NGR0xQRU4gICAgICAgICAgICBSQ0NfQVBCMkxQRU5SX1NZU0NGR0xQRU5fTXNrICAgICAgIC8qITwgU3lzdGVtIENvbmZpZ3VyYXRpb24gU1lTQ0ZHIGNsb2NrIGVuYWJsZWQgaW4gc2xlZXAgbW9kZSAqLw0KI2RlZmluZSBSQ0NfQVBCMkxQRU5SX1RJTTlMUEVOX1BvcyAgICAgICAgICAoMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQVBCMkxQRU5SX1RJTTlMUEVOX01zayAgICAgICAgICAoMHgxVSA8PCBSQ0NfQVBCMkxQRU5SX1RJTTlMUEVOX1BvcykgLyohPCAweDAwMDAwMDA0ICovDQojZGVmaW5lIFJDQ19BUEIyTFBFTlJfVElNOUxQRU4gICAgICAgICAgICAgIFJDQ19BUEIyTFBFTlJfVElNOUxQRU5fTXNrICAgICAgICAgLyohPCBUSU05IGludGVyZmFjZSBjbG9jayBlbmFibGVkIGluIHNsZWVwIG1vZGUgKi8NCiNkZWZpbmUgUkNDX0FQQjJMUEVOUl9USU0xMExQRU5fUG9zICAgICAgICAgKDNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0FQQjJMUEVOUl9USU0xMExQRU5fTXNrICAgICAgICAgKDB4MVUgPDwgUkNDX0FQQjJMUEVOUl9USU0xMExQRU5fUG9zKSAvKiE8IDB4MDAwMDAwMDggKi8NCiNkZWZpbmUgUkNDX0FQQjJMUEVOUl9USU0xMExQRU4gICAgICAgICAgICAgUkNDX0FQQjJMUEVOUl9USU0xMExQRU5fTXNrICAgICAgICAvKiE8IFRJTTEwIGludGVyZmFjZSBjbG9jayBlbmFibGVkIGluIHNsZWVwIG1vZGUgKi8NCiNkZWZpbmUgUkNDX0FQQjJMUEVOUl9USU0xMUxQRU5fUG9zICAgICAgICAgKDRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0FQQjJMUEVOUl9USU0xMUxQRU5fTXNrICAgICAgICAgKDB4MVUgPDwgUkNDX0FQQjJMUEVOUl9USU0xMUxQRU5fUG9zKSAvKiE8IDB4MDAwMDAwMTAgKi8NCiNkZWZpbmUgUkNDX0FQQjJMUEVOUl9USU0xMUxQRU4gICAgICAgICAgICAgUkNDX0FQQjJMUEVOUl9USU0xMUxQRU5fTXNrICAgICAgICAvKiE8IFRJTTExIFRpbWVyIGNsb2NrIGVuYWJsZWQgaW4gc2xlZXAgbW9kZSAqLw0KI2RlZmluZSBSQ0NfQVBCMkxQRU5SX0FEQzFMUEVOX1BvcyAgICAgICAgICAoOVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQVBCMkxQRU5SX0FEQzFMUEVOX01zayAgICAgICAgICAoMHgxVSA8PCBSQ0NfQVBCMkxQRU5SX0FEQzFMUEVOX1BvcykgLyohPCAweDAwMDAwMjAwICovDQojZGVmaW5lIFJDQ19BUEIyTFBFTlJfQURDMUxQRU4gICAgICAgICAgICAgIFJDQ19BUEIyTFBFTlJfQURDMUxQRU5fTXNrICAgICAgICAgLyohPCBBREMxIGNsb2NrIGVuYWJsZWQgaW4gc2xlZXAgbW9kZSAqLw0KI2RlZmluZSBSQ0NfQVBCMkxQRU5SX1NQSTFMUEVOX1BvcyAgICAgICAgICAoMTJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQVBCMkxQRU5SX1NQSTFMUEVOX01zayAgICAgICAgICAoMHgxVSA8PCBSQ0NfQVBCMkxQRU5SX1NQSTFMUEVOX1BvcykgLyohPCAweDAwMDAxMDAwICovDQojZGVmaW5lIFJDQ19BUEIyTFBFTlJfU1BJMUxQRU4gICAgICAgICAgICAgIFJDQ19BUEIyTFBFTlJfU1BJMUxQRU5fTXNrICAgICAgICAgLyohPCBTUEkxIGNsb2NrIGVuYWJsZWQgaW4gc2xlZXAgbW9kZSAqLw0KI2RlZmluZSBSQ0NfQVBCMkxQRU5SX1VTQVJUMUxQRU5fUG9zICAgICAgICAoMTRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQVBCMkxQRU5SX1VTQVJUMUxQRU5fTXNrICAgICAgICAoMHgxVSA8PCBSQ0NfQVBCMkxQRU5SX1VTQVJUMUxQRU5fUG9zKSAvKiE8IDB4MDAwMDQwMDAgKi8NCiNkZWZpbmUgUkNDX0FQQjJMUEVOUl9VU0FSVDFMUEVOICAgICAgICAgICAgUkNDX0FQQjJMUEVOUl9VU0FSVDFMUEVOX01zayAgICAgICAvKiE8IFVTQVJUMSBjbG9jayBlbmFibGVkIGluIHNsZWVwIG1vZGUgKi8NCg0KLyoqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgUkNDX0FQQjFMUEVOUiByZWdpc3RlciAgKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgUkNDX0FQQjFMUEVOUl9USU0yTFBFTl9Qb3MgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0FQQjFMUEVOUl9USU0yTFBFTl9Nc2sgICAgICAgICAgKDB4MVUgPDwgUkNDX0FQQjFMUEVOUl9USU0yTFBFTl9Qb3MpIC8qITwgMHgwMDAwMDAwMSAqLw0KI2RlZmluZSBSQ0NfQVBCMUxQRU5SX1RJTTJMUEVOICAgICAgICAgICAgICBSQ0NfQVBCMUxQRU5SX1RJTTJMUEVOX01zayAgICAgICAgIC8qITwgVGltZXIgMiBjbG9jayBlbmFibGVkIGluIHNsZWVwIG1vZGUgKi8NCiNkZWZpbmUgUkNDX0FQQjFMUEVOUl9USU0zTFBFTl9Qb3MgICAgICAgICAgKDFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0FQQjFMUEVOUl9USU0zTFBFTl9Nc2sgICAgICAgICAgKDB4MVUgPDwgUkNDX0FQQjFMUEVOUl9USU0zTFBFTl9Qb3MpIC8qITwgMHgwMDAwMDAwMiAqLw0KI2RlZmluZSBSQ0NfQVBCMUxQRU5SX1RJTTNMUEVOICAgICAgICAgICAgICBSQ0NfQVBCMUxQRU5SX1RJTTNMUEVOX01zayAgICAgICAgIC8qITwgVGltZXIgMyBjbG9jayBlbmFibGVkIGluIHNsZWVwIG1vZGUgKi8NCiNkZWZpbmUgUkNDX0FQQjFMUEVOUl9USU00TFBFTl9Qb3MgICAgICAgICAgKDJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0FQQjFMUEVOUl9USU00TFBFTl9Nc2sgICAgICAgICAgKDB4MVUgPDwgUkNDX0FQQjFMUEVOUl9USU00TFBFTl9Qb3MpIC8qITwgMHgwMDAwMDAwNCAqLw0KI2RlZmluZSBSQ0NfQVBCMUxQRU5SX1RJTTRMUEVOICAgICAgICAgICAgICBSQ0NfQVBCMUxQRU5SX1RJTTRMUEVOX01zayAgICAgICAgIC8qITwgVGltZXIgNCBjbG9jayBlbmFibGVkIGluIHNsZWVwIG1vZGUgKi8NCiNkZWZpbmUgUkNDX0FQQjFMUEVOUl9USU01TFBFTl9Qb3MgICAgICAgICAgKDNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0FQQjFMUEVOUl9USU01TFBFTl9Nc2sgICAgICAgICAgKDB4MVUgPDwgUkNDX0FQQjFMUEVOUl9USU01TFBFTl9Qb3MpIC8qITwgMHgwMDAwMDAwOCAqLw0KI2RlZmluZSBSQ0NfQVBCMUxQRU5SX1RJTTVMUEVOICAgICAgICAgICAgICBSQ0NfQVBCMUxQRU5SX1RJTTVMUEVOX01zayAgICAgICAgIC8qITwgVGltZXIgNSBjbG9jayBlbmFibGVkIGluIHNsZWVwIG1vZGUgKi8NCiNkZWZpbmUgUkNDX0FQQjFMUEVOUl9USU02TFBFTl9Qb3MgICAgICAgICAgKDRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0FQQjFMUEVOUl9USU02TFBFTl9Nc2sgICAgICAgICAgKDB4MVUgPDwgUkNDX0FQQjFMUEVOUl9USU02TFBFTl9Qb3MpIC8qITwgMHgwMDAwMDAxMCAqLw0KI2RlZmluZSBSQ0NfQVBCMUxQRU5SX1RJTTZMUEVOICAgICAgICAgICAgICBSQ0NfQVBCMUxQRU5SX1RJTTZMUEVOX01zayAgICAgICAgIC8qITwgVGltZXIgNiBjbG9jayBlbmFibGVkIGluIHNsZWVwIG1vZGUgKi8NCiNkZWZpbmUgUkNDX0FQQjFMUEVOUl9USU03TFBFTl9Qb3MgICAgICAgICAgKDVVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0FQQjFMUEVOUl9USU03TFBFTl9Nc2sgICAgICAgICAgKDB4MVUgPDwgUkNDX0FQQjFMUEVOUl9USU03TFBFTl9Qb3MpIC8qITwgMHgwMDAwMDAyMCAqLw0KI2RlZmluZSBSQ0NfQVBCMUxQRU5SX1RJTTdMUEVOICAgICAgICAgICAgICBSQ0NfQVBCMUxQRU5SX1RJTTdMUEVOX01zayAgICAgICAgIC8qITwgVGltZXIgNyBjbG9jayBlbmFibGVkIGluIHNsZWVwIG1vZGUgKi8NCiNkZWZpbmUgUkNDX0FQQjFMUEVOUl9MQ0RMUEVOX1BvcyAgICAgICAgICAgKDlVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0FQQjFMUEVOUl9MQ0RMUEVOX01zayAgICAgICAgICAgKDB4MVUgPDwgUkNDX0FQQjFMUEVOUl9MQ0RMUEVOX1BvcykgLyohPCAweDAwMDAwMjAwICovDQojZGVmaW5lIFJDQ19BUEIxTFBFTlJfTENETFBFTiAgICAgICAgICAgICAgIFJDQ19BUEIxTFBFTlJfTENETFBFTl9Nc2sgICAgICAgICAgLyohPCBMQ0QgY2xvY2sgZW5hYmxlZCBpbiBzbGVlcCBtb2RlICovDQojZGVmaW5lIFJDQ19BUEIxTFBFTlJfV1dER0xQRU5fUG9zICAgICAgICAgICgxMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19BUEIxTFBFTlJfV1dER0xQRU5fTXNrICAgICAgICAgICgweDFVIDw8IFJDQ19BUEIxTFBFTlJfV1dER0xQRU5fUG9zKSAvKiE8IDB4MDAwMDA4MDAgKi8NCiNkZWZpbmUgUkNDX0FQQjFMUEVOUl9XV0RHTFBFTiAgICAgICAgICAgICAgUkNDX0FQQjFMUEVOUl9XV0RHTFBFTl9Nc2sgICAgICAgICAvKiE8IFdpbmRvdyBXYXRjaGRvZyBjbG9jayBlbmFibGVkIGluIHNsZWVwIG1vZGUgKi8NCiNkZWZpbmUgUkNDX0FQQjFMUEVOUl9TUEkyTFBFTl9Qb3MgICAgICAgICAgKDE0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0FQQjFMUEVOUl9TUEkyTFBFTl9Nc2sgICAgICAgICAgKDB4MVUgPDwgUkNDX0FQQjFMUEVOUl9TUEkyTFBFTl9Qb3MpIC8qITwgMHgwMDAwNDAwMCAqLw0KI2RlZmluZSBSQ0NfQVBCMUxQRU5SX1NQSTJMUEVOICAgICAgICAgICAgICBSQ0NfQVBCMUxQRU5SX1NQSTJMUEVOX01zayAgICAgICAgIC8qITwgU1BJIDIgY2xvY2sgZW5hYmxlZCBpbiBzbGVlcCBtb2RlICovDQojZGVmaW5lIFJDQ19BUEIxTFBFTlJfU1BJM0xQRU5fUG9zICAgICAgICAgICgxNVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19BUEIxTFBFTlJfU1BJM0xQRU5fTXNrICAgICAgICAgICgweDFVIDw8IFJDQ19BUEIxTFBFTlJfU1BJM0xQRU5fUG9zKSAvKiE8IDB4MDAwMDgwMDAgKi8NCiNkZWZpbmUgUkNDX0FQQjFMUEVOUl9TUEkzTFBFTiAgICAgICAgICAgICAgUkNDX0FQQjFMUEVOUl9TUEkzTFBFTl9Nc2sgICAgICAgICAvKiE8IFNQSSAzIGNsb2NrIGVuYWJsZWQgaW4gc2xlZXAgbW9kZSAqLw0KI2RlZmluZSBSQ0NfQVBCMUxQRU5SX1VTQVJUMkxQRU5fUG9zICAgICAgICAoMTdVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQVBCMUxQRU5SX1VTQVJUMkxQRU5fTXNrICAgICAgICAoMHgxVSA8PCBSQ0NfQVBCMUxQRU5SX1VTQVJUMkxQRU5fUG9zKSAvKiE8IDB4MDAwMjAwMDAgKi8NCiNkZWZpbmUgUkNDX0FQQjFMUEVOUl9VU0FSVDJMUEVOICAgICAgICAgICAgUkNDX0FQQjFMUEVOUl9VU0FSVDJMUEVOX01zayAgICAgICAvKiE8IFVTQVJUIDIgY2xvY2sgZW5hYmxlZCBpbiBzbGVlcCBtb2RlICovDQojZGVmaW5lIFJDQ19BUEIxTFBFTlJfVVNBUlQzTFBFTl9Qb3MgICAgICAgICgxOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19BUEIxTFBFTlJfVVNBUlQzTFBFTl9Nc2sgICAgICAgICgweDFVIDw8IFJDQ19BUEIxTFBFTlJfVVNBUlQzTFBFTl9Qb3MpIC8qITwgMHgwMDA0MDAwMCAqLw0KI2RlZmluZSBSQ0NfQVBCMUxQRU5SX1VTQVJUM0xQRU4gICAgICAgICAgICBSQ0NfQVBCMUxQRU5SX1VTQVJUM0xQRU5fTXNrICAgICAgIC8qITwgVVNBUlQgMyBjbG9jayBlbmFibGVkIGluIHNsZWVwIG1vZGUgKi8NCiNkZWZpbmUgUkNDX0FQQjFMUEVOUl9JMkMxTFBFTl9Qb3MgICAgICAgICAgKDIxVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0FQQjFMUEVOUl9JMkMxTFBFTl9Nc2sgICAgICAgICAgKDB4MVUgPDwgUkNDX0FQQjFMUEVOUl9JMkMxTFBFTl9Qb3MpIC8qITwgMHgwMDIwMDAwMCAqLw0KI2RlZmluZSBSQ0NfQVBCMUxQRU5SX0kyQzFMUEVOICAgICAgICAgICAgICBSQ0NfQVBCMUxQRU5SX0kyQzFMUEVOX01zayAgICAgICAgIC8qITwgSTJDIDEgY2xvY2sgZW5hYmxlZCBpbiBzbGVlcCBtb2RlICovDQojZGVmaW5lIFJDQ19BUEIxTFBFTlJfSTJDMkxQRU5fUG9zICAgICAgICAgICgyMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19BUEIxTFBFTlJfSTJDMkxQRU5fTXNrICAgICAgICAgICgweDFVIDw8IFJDQ19BUEIxTFBFTlJfSTJDMkxQRU5fUG9zKSAvKiE8IDB4MDA0MDAwMDAgKi8NCiNkZWZpbmUgUkNDX0FQQjFMUEVOUl9JMkMyTFBFTiAgICAgICAgICAgICAgUkNDX0FQQjFMUEVOUl9JMkMyTFBFTl9Nc2sgICAgICAgICAvKiE8IEkyQyAyIGNsb2NrIGVuYWJsZWQgaW4gc2xlZXAgbW9kZSAqLw0KI2RlZmluZSBSQ0NfQVBCMUxQRU5SX1VTQkxQRU5fUG9zICAgICAgICAgICAoMjNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQVBCMUxQRU5SX1VTQkxQRU5fTXNrICAgICAgICAgICAoMHgxVSA8PCBSQ0NfQVBCMUxQRU5SX1VTQkxQRU5fUG9zKSAvKiE8IDB4MDA4MDAwMDAgKi8NCiNkZWZpbmUgUkNDX0FQQjFMUEVOUl9VU0JMUEVOICAgICAgICAgICAgICAgUkNDX0FQQjFMUEVOUl9VU0JMUEVOX01zayAgICAgICAgICAvKiE8IFVTQiBjbG9jayBlbmFibGVkIGluIHNsZWVwIG1vZGUgKi8NCiNkZWZpbmUgUkNDX0FQQjFMUEVOUl9QV1JMUEVOX1BvcyAgICAgICAgICAgKDI4VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0FQQjFMUEVOUl9QV1JMUEVOX01zayAgICAgICAgICAgKDB4MVUgPDwgUkNDX0FQQjFMUEVOUl9QV1JMUEVOX1BvcykgLyohPCAweDEwMDAwMDAwICovDQojZGVmaW5lIFJDQ19BUEIxTFBFTlJfUFdSTFBFTiAgICAgICAgICAgICAgIFJDQ19BUEIxTFBFTlJfUFdSTFBFTl9Nc2sgICAgICAgICAgLyohPCBQb3dlciBpbnRlcmZhY2UgY2xvY2sgZW5hYmxlZCBpbiBzbGVlcCBtb2RlICovDQojZGVmaW5lIFJDQ19BUEIxTFBFTlJfREFDTFBFTl9Qb3MgICAgICAgICAgICgyOVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19BUEIxTFBFTlJfREFDTFBFTl9Nc2sgICAgICAgICAgICgweDFVIDw8IFJDQ19BUEIxTFBFTlJfREFDTFBFTl9Qb3MpIC8qITwgMHgyMDAwMDAwMCAqLw0KI2RlZmluZSBSQ0NfQVBCMUxQRU5SX0RBQ0xQRU4gICAgICAgICAgICAgICBSQ0NfQVBCMUxQRU5SX0RBQ0xQRU5fTXNrICAgICAgICAgIC8qITwgREFDIGludGVyZmFjZSBjbG9jayBlbmFibGVkIGluIHNsZWVwIG1vZGUgKi8NCiNkZWZpbmUgUkNDX0FQQjFMUEVOUl9DT01QTFBFTl9Qb3MgICAgICAgICAgKDMxVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0FQQjFMUEVOUl9DT01QTFBFTl9Nc2sgICAgICAgICAgKDB4MVUgPDwgUkNDX0FQQjFMUEVOUl9DT01QTFBFTl9Qb3MpIC8qITwgMHg4MDAwMDAwMCAqLw0KI2RlZmluZSBSQ0NfQVBCMUxQRU5SX0NPTVBMUEVOICAgICAgICAgICAgICBSQ0NfQVBCMUxQRU5SX0NPTVBMUEVOX01zayAgICAgICAgIC8qITwgQ29tcGFyYXRvciBpbnRlcmZhY2UgY2xvY2sgZW5hYmxlZCBpbiBzbGVlcCBtb2RlKi8NCg0KLyoqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBSQ0NfQ1NSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgUkNDX0NTUl9MU0lPTl9Qb3MgICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0NTUl9MU0lPTl9Nc2sgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgUkNDX0NTUl9MU0lPTl9Qb3MpICAgICAgICAvKiE8IDB4MDAwMDAwMDEgKi8NCiNkZWZpbmUgUkNDX0NTUl9MU0lPTiAgICAgICAgICAgICAgICAgICAgICAgUkNDX0NTUl9MU0lPTl9Nc2sgICAgICAgICAgICAgICAgICAvKiE8IEludGVybmFsIExvdyBTcGVlZCBvc2NpbGxhdG9yIGVuYWJsZSAqLw0KI2RlZmluZSBSQ0NfQ1NSX0xTSVJEWV9Qb3MgICAgICAgICAgICAgICAgICAoMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQ1NSX0xTSVJEWV9Nc2sgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBSQ0NfQ1NSX0xTSVJEWV9Qb3MpICAgICAgIC8qITwgMHgwMDAwMDAwMiAqLw0KI2RlZmluZSBSQ0NfQ1NSX0xTSVJEWSAgICAgICAgICAgICAgICAgICAgICBSQ0NfQ1NSX0xTSVJEWV9Nc2sgICAgICAgICAgICAgICAgIC8qITwgSW50ZXJuYWwgTG93IFNwZWVkIG9zY2lsbGF0b3IgUmVhZHkgKi8NCg0KI2RlZmluZSBSQ0NfQ1NSX0xTRU9OX1BvcyAgICAgICAgICAgICAgICAgICAoOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQ1NSX0xTRU9OX01zayAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBSQ0NfQ1NSX0xTRU9OX1BvcykgICAgICAgIC8qITwgMHgwMDAwMDEwMCAqLw0KI2RlZmluZSBSQ0NfQ1NSX0xTRU9OICAgICAgICAgICAgICAgICAgICAgICBSQ0NfQ1NSX0xTRU9OX01zayAgICAgICAgICAgICAgICAgIC8qITwgRXh0ZXJuYWwgTG93IFNwZWVkIG9zY2lsbGF0b3IgZW5hYmxlICovDQojZGVmaW5lIFJDQ19DU1JfTFNFUkRZX1BvcyAgICAgICAgICAgICAgICAgICg5VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19DU1JfTFNFUkRZX01zayAgICAgICAgICAgICAgICAgICgweDFVIDw8IFJDQ19DU1JfTFNFUkRZX1BvcykgICAgICAgLyohPCAweDAwMDAwMjAwICovDQojZGVmaW5lIFJDQ19DU1JfTFNFUkRZICAgICAgICAgICAgICAgICAgICAgIFJDQ19DU1JfTFNFUkRZX01zayAgICAgICAgICAgICAgICAgLyohPCBFeHRlcm5hbCBMb3cgU3BlZWQgb3NjaWxsYXRvciBSZWFkeSAqLw0KI2RlZmluZSBSQ0NfQ1NSX0xTRUJZUF9Qb3MgICAgICAgICAgICAgICAgICAoMTBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQ1NSX0xTRUJZUF9Nc2sgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBSQ0NfQ1NSX0xTRUJZUF9Qb3MpICAgICAgIC8qITwgMHgwMDAwMDQwMCAqLw0KI2RlZmluZSBSQ0NfQ1NSX0xTRUJZUCAgICAgICAgICAgICAgICAgICAgICBSQ0NfQ1NSX0xTRUJZUF9Nc2sgICAgICAgICAgICAgICAgIC8qITwgRXh0ZXJuYWwgTG93IFNwZWVkIG9zY2lsbGF0b3IgQnlwYXNzICovDQoNCiNkZWZpbmUgUkNDX0NTUl9MU0VDU1NPTl9Qb3MgICAgICAgICAgICAgICAgKDExVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0NTUl9MU0VDU1NPTl9Nc2sgICAgICAgICAgICAgICAgKDB4MVUgPDwgUkNDX0NTUl9MU0VDU1NPTl9Qb3MpICAgICAvKiE8IDB4MDAwMDA4MDAgKi8NCiNkZWZpbmUgUkNDX0NTUl9MU0VDU1NPTiAgICAgICAgICAgICAgICAgICAgUkNDX0NTUl9MU0VDU1NPTl9Nc2sgICAgICAgICAgICAgICAvKiE8IEV4dGVybmFsIExvdyBTcGVlZCBvc2NpbGxhdG9yIENTUyBFbmFibGUgKi8NCiNkZWZpbmUgUkNDX0NTUl9MU0VDU1NEX1BvcyAgICAgICAgICAgICAgICAgKDEyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0NTUl9MU0VDU1NEX01zayAgICAgICAgICAgICAgICAgKDB4MVUgPDwgUkNDX0NTUl9MU0VDU1NEX1BvcykgICAgICAvKiE8IDB4MDAwMDEwMDAgKi8NCiNkZWZpbmUgUkNDX0NTUl9MU0VDU1NEICAgICAgICAgICAgICAgICAgICAgUkNDX0NTUl9MU0VDU1NEX01zayAgICAgICAgICAgICAgICAvKiE8IEV4dGVybmFsIExvdyBTcGVlZCBvc2NpbGxhdG9yIENTUyBEZXRlY3RlZCAqLw0KDQojZGVmaW5lIFJDQ19DU1JfUlRDU0VMX1BvcyAgICAgICAgICAgICAgICAgICgxNlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19DU1JfUlRDU0VMX01zayAgICAgICAgICAgICAgICAgICgweDNVIDw8IFJDQ19DU1JfUlRDU0VMX1BvcykgICAgICAgLyohPCAweDAwMDMwMDAwICovDQojZGVmaW5lIFJDQ19DU1JfUlRDU0VMICAgICAgICAgICAgICAgICAgICAgIFJDQ19DU1JfUlRDU0VMX01zayAgICAgICAgICAgICAgICAgLyohPCBSVENTRUxbMTowXSBiaXRzIChSVEMgY2xvY2sgc291cmNlIHNlbGVjdGlvbikgKi8NCiNkZWZpbmUgUkNDX0NTUl9SVENTRUxfMCAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgUkNDX0NTUl9SVENTRUxfUG9zKSAgICAgICAvKiE8IDB4MDAwMTAwMDAgKi8NCiNkZWZpbmUgUkNDX0NTUl9SVENTRUxfMSAgICAgICAgICAgICAgICAgICAgKDB4MlUgPDwgUkNDX0NTUl9SVENTRUxfUG9zKSAgICAgICAvKiE8IDB4MDAwMjAwMDAgKi8NCg0KLyohPCBSVEMgY29uZ2lndXJhdGlvbiAqLw0KI2RlZmluZSBSQ0NfQ1NSX1JUQ1NFTF9OT0NMT0NLICAgICAgICAgICAgICAoMHgwMDAwMDAwMFUpICAgICAgICAgICAgICAgICAgICAgIC8qITwgTm8gY2xvY2sgKi8NCiNkZWZpbmUgUkNDX0NTUl9SVENTRUxfTFNFX1BvcyAgICAgICAgICAgICAgKDE2VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0NTUl9SVENTRUxfTFNFX01zayAgICAgICAgICAgICAgKDB4MVUgPDwgUkNDX0NTUl9SVENTRUxfTFNFX1BvcykgICAvKiE8IDB4MDAwMTAwMDAgKi8NCiNkZWZpbmUgUkNDX0NTUl9SVENTRUxfTFNFICAgICAgICAgICAgICAgICAgUkNDX0NTUl9SVENTRUxfTFNFX01zayAgICAgICAgICAgICAvKiE8IExTRSBvc2NpbGxhdG9yIGNsb2NrIHVzZWQgYXMgUlRDIGNsb2NrICovDQojZGVmaW5lIFJDQ19DU1JfUlRDU0VMX0xTSV9Qb3MgICAgICAgICAgICAgICgxN1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19DU1JfUlRDU0VMX0xTSV9Nc2sgICAgICAgICAgICAgICgweDFVIDw8IFJDQ19DU1JfUlRDU0VMX0xTSV9Qb3MpICAgLyohPCAweDAwMDIwMDAwICovDQojZGVmaW5lIFJDQ19DU1JfUlRDU0VMX0xTSSAgICAgICAgICAgICAgICAgIFJDQ19DU1JfUlRDU0VMX0xTSV9Nc2sgICAgICAgICAgICAgLyohPCBMU0kgb3NjaWxsYXRvciBjbG9jayB1c2VkIGFzIFJUQyBjbG9jayAqLw0KI2RlZmluZSBSQ0NfQ1NSX1JUQ1NFTF9IU0VfUG9zICAgICAgICAgICAgICAoMTZVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQ1NSX1JUQ1NFTF9IU0VfTXNrICAgICAgICAgICAgICAoMHgzVSA8PCBSQ0NfQ1NSX1JUQ1NFTF9IU0VfUG9zKSAgIC8qITwgMHgwMDAzMDAwMCAqLw0KI2RlZmluZSBSQ0NfQ1NSX1JUQ1NFTF9IU0UgICAgICAgICAgICAgICAgICBSQ0NfQ1NSX1JUQ1NFTF9IU0VfTXNrICAgICAgICAgICAgIC8qITwgSFNFIG9zY2lsbGF0b3IgY2xvY2sgZGl2aWRlZCBieSAyLCA0LCA4IG9yIDE2IGJ5IFJUQ1BSRSB1c2VkIGFzIFJUQyBjbG9jayAqLw0KDQojZGVmaW5lIFJDQ19DU1JfUlRDRU5fUG9zICAgICAgICAgICAgICAgICAgICgyMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19DU1JfUlRDRU5fTXNrICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFJDQ19DU1JfUlRDRU5fUG9zKSAgICAgICAgLyohPCAweDAwNDAwMDAwICovDQojZGVmaW5lIFJDQ19DU1JfUlRDRU4gICAgICAgICAgICAgICAgICAgICAgIFJDQ19DU1JfUlRDRU5fTXNrICAgICAgICAgICAgICAgICAgLyohPCBSVEMgY2xvY2sgZW5hYmxlICovDQojZGVmaW5lIFJDQ19DU1JfUlRDUlNUX1BvcyAgICAgICAgICAgICAgICAgICgyM1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19DU1JfUlRDUlNUX01zayAgICAgICAgICAgICAgICAgICgweDFVIDw8IFJDQ19DU1JfUlRDUlNUX1BvcykgICAgICAgLyohPCAweDAwODAwMDAwICovDQojZGVmaW5lIFJDQ19DU1JfUlRDUlNUICAgICAgICAgICAgICAgICAgICAgIFJDQ19DU1JfUlRDUlNUX01zayAgICAgICAgICAgICAgICAgLyohPCBSVEMgcmVzZXQgICovDQogDQojZGVmaW5lIFJDQ19DU1JfUk1WRl9Qb3MgICAgICAgICAgICAgICAgICAgICgyNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19DU1JfUk1WRl9Nc2sgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFJDQ19DU1JfUk1WRl9Qb3MpICAgICAgICAgLyohPCAweDAxMDAwMDAwICovDQojZGVmaW5lIFJDQ19DU1JfUk1WRiAgICAgICAgICAgICAgICAgICAgICAgIFJDQ19DU1JfUk1WRl9Nc2sgICAgICAgICAgICAgICAgICAgLyohPCBSZW1vdmUgcmVzZXQgZmxhZyAqLw0KI2RlZmluZSBSQ0NfQ1NSX09CTFJTVEZfUG9zICAgICAgICAgICAgICAgICAoMjVVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQ1NSX09CTFJTVEZfTXNrICAgICAgICAgICAgICAgICAoMHgxVSA8PCBSQ0NfQ1NSX09CTFJTVEZfUG9zKSAgICAgIC8qITwgMHgwMjAwMDAwMCAqLw0KI2RlZmluZSBSQ0NfQ1NSX09CTFJTVEYgICAgICAgICAgICAgICAgICAgICBSQ0NfQ1NSX09CTFJTVEZfTXNrICAgICAgICAgICAgICAgIC8qITwgT3B0aW9uIEJ5dGVzIExvYWRlciByZXNldCBmbGFnICovDQojZGVmaW5lIFJDQ19DU1JfUElOUlNURl9Qb3MgICAgICAgICAgICAgICAgICgyNlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19DU1JfUElOUlNURl9Nc2sgICAgICAgICAgICAgICAgICgweDFVIDw8IFJDQ19DU1JfUElOUlNURl9Qb3MpICAgICAgLyohPCAweDA0MDAwMDAwICovDQojZGVmaW5lIFJDQ19DU1JfUElOUlNURiAgICAgICAgICAgICAgICAgICAgIFJDQ19DU1JfUElOUlNURl9Nc2sgICAgICAgICAgICAgICAgLyohPCBQSU4gcmVzZXQgZmxhZyAqLw0KI2RlZmluZSBSQ0NfQ1NSX1BPUlJTVEZfUG9zICAgICAgICAgICAgICAgICAoMjdVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQ1NSX1BPUlJTVEZfTXNrICAgICAgICAgICAgICAgICAoMHgxVSA8PCBSQ0NfQ1NSX1BPUlJTVEZfUG9zKSAgICAgIC8qITwgMHgwODAwMDAwMCAqLw0KI2RlZmluZSBSQ0NfQ1NSX1BPUlJTVEYgICAgICAgICAgICAgICAgICAgICBSQ0NfQ1NSX1BPUlJTVEZfTXNrICAgICAgICAgICAgICAgIC8qITwgUE9SL1BEUiByZXNldCBmbGFnICovDQojZGVmaW5lIFJDQ19DU1JfU0ZUUlNURl9Qb3MgICAgICAgICAgICAgICAgICgyOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19DU1JfU0ZUUlNURl9Nc2sgICAgICAgICAgICAgICAgICgweDFVIDw8IFJDQ19DU1JfU0ZUUlNURl9Qb3MpICAgICAgLyohPCAweDEwMDAwMDAwICovDQojZGVmaW5lIFJDQ19DU1JfU0ZUUlNURiAgICAgICAgICAgICAgICAgICAgIFJDQ19DU1JfU0ZUUlNURl9Nc2sgICAgICAgICAgICAgICAgLyohPCBTb2Z0d2FyZSBSZXNldCBmbGFnICovDQojZGVmaW5lIFJDQ19DU1JfSVdER1JTVEZfUG9zICAgICAgICAgICAgICAgICgyOVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19DU1JfSVdER1JTVEZfTXNrICAgICAgICAgICAgICAgICgweDFVIDw8IFJDQ19DU1JfSVdER1JTVEZfUG9zKSAgICAgLyohPCAweDIwMDAwMDAwICovDQojZGVmaW5lIFJDQ19DU1JfSVdER1JTVEYgICAgICAgICAgICAgICAgICAgIFJDQ19DU1JfSVdER1JTVEZfTXNrICAgICAgICAgICAgICAgLyohPCBJbmRlcGVuZGVudCBXYXRjaGRvZyByZXNldCBmbGFnICovDQojZGVmaW5lIFJDQ19DU1JfV1dER1JTVEZfUG9zICAgICAgICAgICAgICAgICgzMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19DU1JfV1dER1JTVEZfTXNrICAgICAgICAgICAgICAgICgweDFVIDw8IFJDQ19DU1JfV1dER1JTVEZfUG9zKSAgICAgLyohPCAweDQwMDAwMDAwICovDQojZGVmaW5lIFJDQ19DU1JfV1dER1JTVEYgICAgICAgICAgICAgICAgICAgIFJDQ19DU1JfV1dER1JTVEZfTXNrICAgICAgICAgICAgICAgLyohPCBXaW5kb3cgd2F0Y2hkb2cgcmVzZXQgZmxhZyAqLw0KI2RlZmluZSBSQ0NfQ1NSX0xQV1JSU1RGX1BvcyAgICAgICAgICAgICAgICAoMzFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQ1NSX0xQV1JSU1RGX01zayAgICAgICAgICAgICAgICAoMHgxVSA8PCBSQ0NfQ1NSX0xQV1JSU1RGX1BvcykgICAgIC8qITwgMHg4MDAwMDAwMCAqLw0KI2RlZmluZSBSQ0NfQ1NSX0xQV1JSU1RGICAgICAgICAgICAgICAgICAgICBSQ0NfQ1NSX0xQV1JSU1RGX01zayAgICAgICAgICAgICAgIC8qITwgTG93LVBvd2VyIHJlc2V0IGZsYWcgKi8NCg0KLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8NCi8qICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovDQovKiAgICAgICAgICAgICAgICAgICAgICAgICAgIFJlYWwtVGltZSBDbG9jayAoUlRDKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLw0KLyogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8NCi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovDQovKg0KKiBAYnJpZWYgU3BlY2lmaWMgZGV2aWNlIGZlYXR1cmUgZGVmaW5pdGlvbnMgIChub3QgcHJlc2VudCBvbiBhbGwgZGV2aWNlcyBpbiB0aGUgU1RNMzJGMCBzZXJpZSkNCiovDQojZGVmaW5lIFJUQ19UQU1QRVIxX1NVUFBPUlQgICAgICAgLyohPCBUQU1QRVIgMSBmZWF0dXJlIHN1cHBvcnQgKi8NCiNkZWZpbmUgUlRDX1RBTVBFUjJfU1VQUE9SVCAgICAgICAvKiE8IFRBTVBFUiAyIGZlYXR1cmUgc3VwcG9ydCAqLw0KI2RlZmluZSBSVENfVEFNUEVSM19TVVBQT1JUICAgICAgIC8qITwgVEFNUEVSIDMgZmVhdHVyZSBzdXBwb3J0ICovDQojZGVmaW5lIFJUQ19CQUNLVVBfU1VQUE9SVCAgICAgICAgLyohPCBCQUNLVVAgcmVnaXN0ZXIgZmVhdHVyZSBzdXBwb3J0ICovDQojZGVmaW5lIFJUQ19XQUtFVVBfU1VQUE9SVCAgICAgICAgLyohPCBXQUtFVVAgZmVhdHVyZSBzdXBwb3J0ICovDQojZGVmaW5lIFJUQ19TTU9PVEhDQUxJQl9TVVBQT1JUICAgLyohPCBTbW9vdGggZGlnaXRhbCBjYWxpYnJhdGlvbiBmZWF0dXJlIHN1cHBvcnQgKi8NCiNkZWZpbmUgUlRDX1NVQlNFQ09ORF9TVVBQT1JUICAgICAvKiE8IFN1Yi1zZWNvbmQgZmVhdHVyZSBzdXBwb3J0ICovDQoNCi8qKioqKioqKioqKioqKioqKioqKiAgQml0cyBkZWZpbml0aW9uIGZvciBSVENfVFIgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIFJUQ19UUl9QTV9Qb3MgICAgICAgICAgICAgICAgICAgICAgICAoMjJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19UUl9QTV9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBSVENfVFJfUE1fUG9zKSAgICAgICAgICAgLyohPCAweDAwNDAwMDAwICovDQojZGVmaW5lIFJUQ19UUl9QTSAgICAgICAgICAgICAgICAgICAgICAgICAgICBSVENfVFJfUE1fTXNrICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19UUl9IVF9Qb3MgICAgICAgICAgICAgICAgICAgICAgICAoMjBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19UUl9IVF9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAoMHgzVSA8PCBSVENfVFJfSFRfUG9zKSAgICAgICAgICAgLyohPCAweDAwMzAwMDAwICovDQojZGVmaW5lIFJUQ19UUl9IVCAgICAgICAgICAgICAgICAgICAgICAgICAgICBSVENfVFJfSFRfTXNrICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19UUl9IVF8wICAgICAgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBSVENfVFJfSFRfUG9zKSAgICAgICAgICAgLyohPCAweDAwMTAwMDAwICovDQojZGVmaW5lIFJUQ19UUl9IVF8xICAgICAgICAgICAgICAgICAgICAgICAgICAoMHgyVSA8PCBSVENfVFJfSFRfUG9zKSAgICAgICAgICAgLyohPCAweDAwMjAwMDAwICovDQojZGVmaW5lIFJUQ19UUl9IVV9Qb3MgICAgICAgICAgICAgICAgICAgICAgICAoMTZVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19UUl9IVV9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAoMHhGVSA8PCBSVENfVFJfSFVfUG9zKSAgICAgICAgICAgLyohPCAweDAwMEYwMDAwICovDQojZGVmaW5lIFJUQ19UUl9IVSAgICAgICAgICAgICAgICAgICAgICAgICAgICBSVENfVFJfSFVfTXNrICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19UUl9IVV8wICAgICAgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBSVENfVFJfSFVfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDEwMDAwICovDQojZGVmaW5lIFJUQ19UUl9IVV8xICAgICAgICAgICAgICAgICAgICAgICAgICAoMHgyVSA8PCBSVENfVFJfSFVfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDIwMDAwICovDQojZGVmaW5lIFJUQ19UUl9IVV8yICAgICAgICAgICAgICAgICAgICAgICAgICAoMHg0VSA8PCBSVENfVFJfSFVfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDQwMDAwICovDQojZGVmaW5lIFJUQ19UUl9IVV8zICAgICAgICAgICAgICAgICAgICAgICAgICAoMHg4VSA8PCBSVENfVFJfSFVfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDgwMDAwICovDQojZGVmaW5lIFJUQ19UUl9NTlRfUG9zICAgICAgICAgICAgICAgICAgICAgICAoMTJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19UUl9NTlRfTXNrICAgICAgICAgICAgICAgICAgICAgICAoMHg3VSA8PCBSVENfVFJfTU5UX1BvcykgICAgICAgICAgLyohPCAweDAwMDA3MDAwICovDQojZGVmaW5lIFJUQ19UUl9NTlQgICAgICAgICAgICAgICAgICAgICAgICAgICBSVENfVFJfTU5UX01zayAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19UUl9NTlRfMCAgICAgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBSVENfVFJfTU5UX1BvcykgICAgICAgICAgLyohPCAweDAwMDAxMDAwICovDQojZGVmaW5lIFJUQ19UUl9NTlRfMSAgICAgICAgICAgICAgICAgICAgICAgICAoMHgyVSA8PCBSVENfVFJfTU5UX1BvcykgICAgICAgICAgLyohPCAweDAwMDAyMDAwICovDQojZGVmaW5lIFJUQ19UUl9NTlRfMiAgICAgICAgICAgICAgICAgICAgICAgICAoMHg0VSA8PCBSVENfVFJfTU5UX1BvcykgICAgICAgICAgLyohPCAweDAwMDA0MDAwICovDQojZGVmaW5lIFJUQ19UUl9NTlVfUG9zICAgICAgICAgICAgICAgICAgICAgICAoOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19UUl9NTlVfTXNrICAgICAgICAgICAgICAgICAgICAgICAoMHhGVSA8PCBSVENfVFJfTU5VX1BvcykgICAgICAgICAgLyohPCAweDAwMDAwRjAwICovDQojZGVmaW5lIFJUQ19UUl9NTlUgICAgICAgICAgICAgICAgICAgICAgICAgICBSVENfVFJfTU5VX01zayAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19UUl9NTlVfMCAgICAgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBSVENfVFJfTU5VX1BvcykgICAgICAgICAgLyohPCAweDAwMDAwMTAwICovDQojZGVmaW5lIFJUQ19UUl9NTlVfMSAgICAgICAgICAgICAgICAgICAgICAgICAoMHgyVSA8PCBSVENfVFJfTU5VX1BvcykgICAgICAgICAgLyohPCAweDAwMDAwMjAwICovDQojZGVmaW5lIFJUQ19UUl9NTlVfMiAgICAgICAgICAgICAgICAgICAgICAgICAoMHg0VSA8PCBSVENfVFJfTU5VX1BvcykgICAgICAgICAgLyohPCAweDAwMDAwNDAwICovDQojZGVmaW5lIFJUQ19UUl9NTlVfMyAgICAgICAgICAgICAgICAgICAgICAgICAoMHg4VSA8PCBSVENfVFJfTU5VX1BvcykgICAgICAgICAgLyohPCAweDAwMDAwODAwICovDQojZGVmaW5lIFJUQ19UUl9TVF9Qb3MgICAgICAgICAgICAgICAgICAgICAgICAoNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19UUl9TVF9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAoMHg3VSA8PCBSVENfVFJfU1RfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwMDcwICovDQojZGVmaW5lIFJUQ19UUl9TVCAgICAgICAgICAgICAgICAgICAgICAgICAgICBSVENfVFJfU1RfTXNrICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19UUl9TVF8wICAgICAgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBSVENfVFJfU1RfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwMDEwICovDQojZGVmaW5lIFJUQ19UUl9TVF8xICAgICAgICAgICAgICAgICAgICAgICAgICAoMHgyVSA8PCBSVENfVFJfU1RfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwMDIwICovDQojZGVmaW5lIFJUQ19UUl9TVF8yICAgICAgICAgICAgICAgICAgICAgICAgICAoMHg0VSA8PCBSVENfVFJfU1RfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwMDQwICovDQojZGVmaW5lIFJUQ19UUl9TVV9Qb3MgICAgICAgICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19UUl9TVV9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAoMHhGVSA8PCBSVENfVFJfU1VfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwMDBGICovDQojZGVmaW5lIFJUQ19UUl9TVSAgICAgICAgICAgICAgICAgICAgICAgICAgICBSVENfVFJfU1VfTXNrICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19UUl9TVV8wICAgICAgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBSVENfVFJfU1VfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwMDAxICovDQojZGVmaW5lIFJUQ19UUl9TVV8xICAgICAgICAgICAgICAgICAgICAgICAgICAoMHgyVSA8PCBSVENfVFJfU1VfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwMDAyICovDQojZGVmaW5lIFJUQ19UUl9TVV8yICAgICAgICAgICAgICAgICAgICAgICAgICAoMHg0VSA8PCBSVENfVFJfU1VfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwMDA0ICovDQojZGVmaW5lIFJUQ19UUl9TVV8zICAgICAgICAgICAgICAgICAgICAgICAgICAoMHg4VSA8PCBSVENfVFJfU1VfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwMDA4ICovDQoNCi8qKioqKioqKioqKioqKioqKioqKiAgQml0cyBkZWZpbml0aW9uIGZvciBSVENfRFIgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIFJUQ19EUl9ZVF9Qb3MgICAgICAgICAgICAgICAgICAgICAgICAoMjBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19EUl9ZVF9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAoMHhGVSA8PCBSVENfRFJfWVRfUG9zKSAgICAgICAgICAgLyohPCAweDAwRjAwMDAwICovDQojZGVmaW5lIFJUQ19EUl9ZVCAgICAgICAgICAgICAgICAgICAgICAgICAgICBSVENfRFJfWVRfTXNrICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19EUl9ZVF8wICAgICAgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBSVENfRFJfWVRfUG9zKSAgICAgICAgICAgLyohPCAweDAwMTAwMDAwICovDQojZGVmaW5lIFJUQ19EUl9ZVF8xICAgICAgICAgICAgICAgICAgICAgICAgICAoMHgyVSA8PCBSVENfRFJfWVRfUG9zKSAgICAgICAgICAgLyohPCAweDAwMjAwMDAwICovDQojZGVmaW5lIFJUQ19EUl9ZVF8yICAgICAgICAgICAgICAgICAgICAgICAgICAoMHg0VSA8PCBSVENfRFJfWVRfUG9zKSAgICAgICAgICAgLyohPCAweDAwNDAwMDAwICovDQojZGVmaW5lIFJUQ19EUl9ZVF8zICAgICAgICAgICAgICAgICAgICAgICAgICAoMHg4VSA8PCBSVENfRFJfWVRfUG9zKSAgICAgICAgICAgLyohPCAweDAwODAwMDAwICovDQojZGVmaW5lIFJUQ19EUl9ZVV9Qb3MgICAgICAgICAgICAgICAgICAgICAgICAoMTZVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19EUl9ZVV9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAoMHhGVSA8PCBSVENfRFJfWVVfUG9zKSAgICAgICAgICAgLyohPCAweDAwMEYwMDAwICovDQojZGVmaW5lIFJUQ19EUl9ZVSAgICAgICAgICAgICAgICAgICAgICAgICAgICBSVENfRFJfWVVfTXNrICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19EUl9ZVV8wICAgICAgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBSVENfRFJfWVVfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDEwMDAwICovDQojZGVmaW5lIFJUQ19EUl9ZVV8xICAgICAgICAgICAgICAgICAgICAgICAgICAoMHgyVSA8PCBSVENfRFJfWVVfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDIwMDAwICovDQojZGVmaW5lIFJUQ19EUl9ZVV8yICAgICAgICAgICAgICAgICAgICAgICAgICAoMHg0VSA8PCBSVENfRFJfWVVfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDQwMDAwICovDQojZGVmaW5lIFJUQ19EUl9ZVV8zICAgICAgICAgICAgICAgICAgICAgICAgICAoMHg4VSA8PCBSVENfRFJfWVVfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDgwMDAwICovDQojZGVmaW5lIFJUQ19EUl9XRFVfUG9zICAgICAgICAgICAgICAgICAgICAgICAoMTNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19EUl9XRFVfTXNrICAgICAgICAgICAgICAgICAgICAgICAoMHg3VSA8PCBSVENfRFJfV0RVX1BvcykgICAgICAgICAgLyohPCAweDAwMDBFMDAwICovDQojZGVmaW5lIFJUQ19EUl9XRFUgICAgICAgICAgICAgICAgICAgICAgICAgICBSVENfRFJfV0RVX01zayAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19EUl9XRFVfMCAgICAgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBSVENfRFJfV0RVX1BvcykgICAgICAgICAgLyohPCAweDAwMDAyMDAwICovDQojZGVmaW5lIFJUQ19EUl9XRFVfMSAgICAgICAgICAgICAgICAgICAgICAgICAoMHgyVSA8PCBSVENfRFJfV0RVX1BvcykgICAgICAgICAgLyohPCAweDAwMDA0MDAwICovDQojZGVmaW5lIFJUQ19EUl9XRFVfMiAgICAgICAgICAgICAgICAgICAgICAgICAoMHg0VSA8PCBSVENfRFJfV0RVX1BvcykgICAgICAgICAgLyohPCAweDAwMDA4MDAwICovDQojZGVmaW5lIFJUQ19EUl9NVF9Qb3MgICAgICAgICAgICAgICAgICAgICAgICAoMTJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19EUl9NVF9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBSVENfRFJfTVRfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAxMDAwICovDQojZGVmaW5lIFJUQ19EUl9NVCAgICAgICAgICAgICAgICAgICAgICAgICAgICBSVENfRFJfTVRfTXNrICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19EUl9NVV9Qb3MgICAgICAgICAgICAgICAgICAgICAgICAoOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19EUl9NVV9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAoMHhGVSA8PCBSVENfRFJfTVVfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwRjAwICovDQojZGVmaW5lIFJUQ19EUl9NVSAgICAgICAgICAgICAgICAgICAgICAgICAgICBSVENfRFJfTVVfTXNrICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19EUl9NVV8wICAgICAgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBSVENfRFJfTVVfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwMTAwICovDQojZGVmaW5lIFJUQ19EUl9NVV8xICAgICAgICAgICAgICAgICAgICAgICAgICAoMHgyVSA8PCBSVENfRFJfTVVfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwMjAwICovDQojZGVmaW5lIFJUQ19EUl9NVV8yICAgICAgICAgICAgICAgICAgICAgICAgICAoMHg0VSA8PCBSVENfRFJfTVVfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwNDAwICovDQojZGVmaW5lIFJUQ19EUl9NVV8zICAgICAgICAgICAgICAgICAgICAgICAgICAoMHg4VSA8PCBSVENfRFJfTVVfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwODAwICovDQojZGVmaW5lIFJUQ19EUl9EVF9Qb3MgICAgICAgICAgICAgICAgICAgICAgICAoNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19EUl9EVF9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAoMHgzVSA8PCBSVENfRFJfRFRfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwMDMwICovDQojZGVmaW5lIFJUQ19EUl9EVCAgICAgICAgICAgICAgICAgICAgICAgICAgICBSVENfRFJfRFRfTXNrICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19EUl9EVF8wICAgICAgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBSVENfRFJfRFRfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwMDEwICovDQojZGVmaW5lIFJUQ19EUl9EVF8xICAgICAgICAgICAgICAgICAgICAgICAgICAoMHgyVSA8PCBSVENfRFJfRFRfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwMDIwICovDQojZGVmaW5lIFJUQ19EUl9EVV9Qb3MgICAgICAgICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19EUl9EVV9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAoMHhGVSA8PCBSVENfRFJfRFVfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwMDBGICovDQojZGVmaW5lIFJUQ19EUl9EVSAgICAgICAgICAgICAgICAgICAgICAgICAgICBSVENfRFJfRFVfTXNrICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19EUl9EVV8wICAgICAgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBSVENfRFJfRFVfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwMDAxICovDQojZGVmaW5lIFJUQ19EUl9EVV8xICAgICAgICAgICAgICAgICAgICAgICAgICAoMHgyVSA8PCBSVENfRFJfRFVfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwMDAyICovDQojZGVmaW5lIFJUQ19EUl9EVV8yICAgICAgICAgICAgICAgICAgICAgICAgICAoMHg0VSA8PCBSVENfRFJfRFVfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwMDA0ICovDQojZGVmaW5lIFJUQ19EUl9EVV8zICAgICAgICAgICAgICAgICAgICAgICAgICAoMHg4VSA8PCBSVENfRFJfRFVfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwMDA4ICovDQoNCi8qKioqKioqKioqKioqKioqKioqKiAgQml0cyBkZWZpbml0aW9uIGZvciBSVENfQ1IgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIFJUQ19DUl9DT0VfUG9zICAgICAgICAgICAgICAgICAgICAgICAoMjNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19DUl9DT0VfTXNrICAgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBSVENfQ1JfQ09FX1BvcykgICAgICAgICAgLyohPCAweDAwODAwMDAwICovDQojZGVmaW5lIFJUQ19DUl9DT0UgICAgICAgICAgICAgICAgICAgICAgICAgICBSVENfQ1JfQ09FX01zayAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19DUl9PU0VMX1BvcyAgICAgICAgICAgICAgICAgICAgICAoMjFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19DUl9PU0VMX01zayAgICAgICAgICAgICAgICAgICAgICAoMHgzVSA8PCBSVENfQ1JfT1NFTF9Qb3MpICAgICAgICAgLyohPCAweDAwNjAwMDAwICovDQojZGVmaW5lIFJUQ19DUl9PU0VMICAgICAgICAgICAgICAgICAgICAgICAgICBSVENfQ1JfT1NFTF9Nc2sgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19DUl9PU0VMXzAgICAgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBSVENfQ1JfT1NFTF9Qb3MpICAgICAgICAgLyohPCAweDAwMjAwMDAwICovDQojZGVmaW5lIFJUQ19DUl9PU0VMXzEgICAgICAgICAgICAgICAgICAgICAgICAoMHgyVSA8PCBSVENfQ1JfT1NFTF9Qb3MpICAgICAgICAgLyohPCAweDAwNDAwMDAwICovDQojZGVmaW5lIFJUQ19DUl9QT0xfUG9zICAgICAgICAgICAgICAgICAgICAgICAoMjBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19DUl9QT0xfTXNrICAgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBSVENfQ1JfUE9MX1BvcykgICAgICAgICAgLyohPCAweDAwMTAwMDAwICovDQojZGVmaW5lIFJUQ19DUl9QT0wgICAgICAgICAgICAgICAgICAgICAgICAgICBSVENfQ1JfUE9MX01zayAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19DUl9DT1NFTF9Qb3MgICAgICAgICAgICAgICAgICAgICAoMTlVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19DUl9DT1NFTF9Nc2sgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBSVENfQ1JfQ09TRUxfUG9zKSAgICAgICAgLyohPCAweDAwMDgwMDAwICovDQojZGVmaW5lIFJUQ19DUl9DT1NFTCAgICAgICAgICAgICAgICAgICAgICAgICBSVENfQ1JfQ09TRUxfTXNrICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19DUl9CS1BfUG9zICAgICAgICAgICAgICAgICAgICAgICAoMThVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19DUl9CS1BfTXNrICAgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBSVENfQ1JfQktQX1BvcykgICAgICAgICAgLyohPCAweDAwMDQwMDAwICovDQojZGVmaW5lIFJUQ19DUl9CS1AgICAgICAgICAgICAgICAgICAgICAgICAgICBSVENfQ1JfQktQX01zayAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19DUl9TVUIxSF9Qb3MgICAgICAgICAgICAgICAgICAgICAoMTdVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19DUl9TVUIxSF9Nc2sgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBSVENfQ1JfU1VCMUhfUG9zKSAgICAgICAgLyohPCAweDAwMDIwMDAwICovDQojZGVmaW5lIFJUQ19DUl9TVUIxSCAgICAgICAgICAgICAgICAgICAgICAgICBSVENfQ1JfU1VCMUhfTXNrICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19DUl9BREQxSF9Qb3MgICAgICAgICAgICAgICAgICAgICAoMTZVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19DUl9BREQxSF9Nc2sgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBSVENfQ1JfQUREMUhfUG9zKSAgICAgICAgLyohPCAweDAwMDEwMDAwICovDQojZGVmaW5lIFJUQ19DUl9BREQxSCAgICAgICAgICAgICAgICAgICAgICAgICBSVENfQ1JfQUREMUhfTXNrICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19DUl9UU0lFX1BvcyAgICAgICAgICAgICAgICAgICAgICAoMTVVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19DUl9UU0lFX01zayAgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBSVENfQ1JfVFNJRV9Qb3MpICAgICAgICAgLyohPCAweDAwMDA4MDAwICovDQojZGVmaW5lIFJUQ19DUl9UU0lFICAgICAgICAgICAgICAgICAgICAgICAgICBSVENfQ1JfVFNJRV9Nc2sgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19DUl9XVVRJRV9Qb3MgICAgICAgICAgICAgICAgICAgICAoMTRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19DUl9XVVRJRV9Nc2sgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBSVENfQ1JfV1VUSUVfUG9zKSAgICAgICAgLyohPCAweDAwMDA0MDAwICovDQojZGVmaW5lIFJUQ19DUl9XVVRJRSAgICAgICAgICAgICAgICAgICAgICAgICBSVENfQ1JfV1VUSUVfTXNrICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19DUl9BTFJCSUVfUG9zICAgICAgICAgICAgICAgICAgICAoMTNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19DUl9BTFJCSUVfTXNrICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBSVENfQ1JfQUxSQklFX1BvcykgICAgICAgLyohPCAweDAwMDAyMDAwICovDQojZGVmaW5lIFJUQ19DUl9BTFJCSUUgICAgICAgICAgICAgICAgICAgICAgICBSVENfQ1JfQUxSQklFX01zayAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19DUl9BTFJBSUVfUG9zICAgICAgICAgICAgICAgICAgICAoMTJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19DUl9BTFJBSUVfTXNrICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBSVENfQ1JfQUxSQUlFX1BvcykgICAgICAgLyohPCAweDAwMDAxMDAwICovDQojZGVmaW5lIFJUQ19DUl9BTFJBSUUgICAgICAgICAgICAgICAgICAgICAgICBSVENfQ1JfQUxSQUlFX01zayAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19DUl9UU0VfUG9zICAgICAgICAgICAgICAgICAgICAgICAoMTFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19DUl9UU0VfTXNrICAgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBSVENfQ1JfVFNFX1BvcykgICAgICAgICAgLyohPCAweDAwMDAwODAwICovDQojZGVmaW5lIFJUQ19DUl9UU0UgICAgICAgICAgICAgICAgICAgICAgICAgICBSVENfQ1JfVFNFX01zayAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19DUl9XVVRFX1BvcyAgICAgICAgICAgICAgICAgICAgICAoMTBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19DUl9XVVRFX01zayAgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBSVENfQ1JfV1VURV9Qb3MpICAgICAgICAgLyohPCAweDAwMDAwNDAwICovDQojZGVmaW5lIFJUQ19DUl9XVVRFICAgICAgICAgICAgICAgICAgICAgICAgICBSVENfQ1JfV1VURV9Nc2sgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19DUl9BTFJCRV9Qb3MgICAgICAgICAgICAgICAgICAgICAoOVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19DUl9BTFJCRV9Nc2sgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBSVENfQ1JfQUxSQkVfUG9zKSAgICAgICAgLyohPCAweDAwMDAwMjAwICovDQojZGVmaW5lIFJUQ19DUl9BTFJCRSAgICAgICAgICAgICAgICAgICAgICAgICBSVENfQ1JfQUxSQkVfTXNrICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19DUl9BTFJBRV9Qb3MgICAgICAgICAgICAgICAgICAgICAoOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19DUl9BTFJBRV9Nc2sgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBSVENfQ1JfQUxSQUVfUG9zKSAgICAgICAgLyohPCAweDAwMDAwMTAwICovDQojZGVmaW5lIFJUQ19DUl9BTFJBRSAgICAgICAgICAgICAgICAgICAgICAgICBSVENfQ1JfQUxSQUVfTXNrICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19DUl9EQ0VfUG9zICAgICAgICAgICAgICAgICAgICAgICAoN1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19DUl9EQ0VfTXNrICAgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBSVENfQ1JfRENFX1BvcykgICAgICAgICAgLyohPCAweDAwMDAwMDgwICovDQojZGVmaW5lIFJUQ19DUl9EQ0UgICAgICAgICAgICAgICAgICAgICAgICAgICBSVENfQ1JfRENFX01zayAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19DUl9GTVRfUG9zICAgICAgICAgICAgICAgICAgICAgICAoNlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19DUl9GTVRfTXNrICAgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBSVENfQ1JfRk1UX1BvcykgICAgICAgICAgLyohPCAweDAwMDAwMDQwICovDQojZGVmaW5lIFJUQ19DUl9GTVQgICAgICAgICAgICAgICAgICAgICAgICAgICBSVENfQ1JfRk1UX01zayAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19DUl9CWVBTSEFEX1BvcyAgICAgICAgICAgICAgICAgICAoNVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19DUl9CWVBTSEFEX01zayAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBSVENfQ1JfQllQU0hBRF9Qb3MpICAgICAgLyohPCAweDAwMDAwMDIwICovDQojZGVmaW5lIFJUQ19DUl9CWVBTSEFEICAgICAgICAgICAgICAgICAgICAgICBSVENfQ1JfQllQU0hBRF9Nc2sgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19DUl9SRUZDS09OX1BvcyAgICAgICAgICAgICAgICAgICAoNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19DUl9SRUZDS09OX01zayAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBSVENfQ1JfUkVGQ0tPTl9Qb3MpICAgICAgLyohPCAweDAwMDAwMDEwICovDQojZGVmaW5lIFJUQ19DUl9SRUZDS09OICAgICAgICAgICAgICAgICAgICAgICBSVENfQ1JfUkVGQ0tPTl9Nc2sgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19DUl9UU0VER0VfUG9zICAgICAgICAgICAgICAgICAgICAoM1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19DUl9UU0VER0VfTXNrICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBSVENfQ1JfVFNFREdFX1BvcykgICAgICAgLyohPCAweDAwMDAwMDA4ICovDQojZGVmaW5lIFJUQ19DUl9UU0VER0UgICAgICAgICAgICAgICAgICAgICAgICBSVENfQ1JfVFNFREdFX01zayAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19DUl9XVUNLU0VMX1BvcyAgICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19DUl9XVUNLU0VMX01zayAgICAgICAgICAgICAgICAgICAoMHg3VSA8PCBSVENfQ1JfV1VDS1NFTF9Qb3MpICAgICAgLyohPCAweDAwMDAwMDA3ICovDQojZGVmaW5lIFJUQ19DUl9XVUNLU0VMICAgICAgICAgICAgICAgICAgICAgICBSVENfQ1JfV1VDS1NFTF9Nc2sgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19DUl9XVUNLU0VMXzAgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBSVENfQ1JfV1VDS1NFTF9Qb3MpICAgICAgLyohPCAweDAwMDAwMDAxICovDQojZGVmaW5lIFJUQ19DUl9XVUNLU0VMXzEgICAgICAgICAgICAgICAgICAgICAoMHgyVSA8PCBSVENfQ1JfV1VDS1NFTF9Qb3MpICAgICAgLyohPCAweDAwMDAwMDAyICovDQojZGVmaW5lIFJUQ19DUl9XVUNLU0VMXzIgICAgICAgICAgICAgICAgICAgICAoMHg0VSA8PCBSVENfQ1JfV1VDS1NFTF9Qb3MpICAgICAgLyohPCAweDAwMDAwMDA0ICovDQoNCi8qIExlZ2FjeSBkZWZpbmVzICovDQojZGVmaW5lICBSVENfQ1JfQkNLX1BvcyBSVENfQ1JfQktQX1Bvcw0KI2RlZmluZSAgUlRDX0NSX0JDS19Nc2sgUlRDX0NSX0JLUF9Nc2sNCiNkZWZpbmUgIFJUQ19DUl9CQ0sgICAgIFJUQ19DUl9CS1ANCg0KLyoqKioqKioqKioqKioqKioqKioqICBCaXRzIGRlZmluaXRpb24gZm9yIFJUQ19JU1IgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgUlRDX0lTUl9SRUNBTFBGX1BvcyAgICAgICAgICAgICAgICAgICgxNlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0lTUl9SRUNBTFBGX01zayAgICAgICAgICAgICAgICAgICgweDFVIDw8IFJUQ19JU1JfUkVDQUxQRl9Qb3MpICAgICAvKiE8IDB4MDAwMTAwMDAgKi8NCiNkZWZpbmUgUlRDX0lTUl9SRUNBTFBGICAgICAgICAgICAgICAgICAgICAgIFJUQ19JU1JfUkVDQUxQRl9Nc2sgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0lTUl9UQU1QM0ZfUG9zICAgICAgICAgICAgICAgICAgICgxNVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0lTUl9UQU1QM0ZfTXNrICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFJUQ19JU1JfVEFNUDNGX1BvcykgICAgICAvKiE8IDB4MDAwMDgwMDAgKi8NCiNkZWZpbmUgUlRDX0lTUl9UQU1QM0YgICAgICAgICAgICAgICAgICAgICAgIFJUQ19JU1JfVEFNUDNGX01zayAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0lTUl9UQU1QMkZfUG9zICAgICAgICAgICAgICAgICAgICgxNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0lTUl9UQU1QMkZfTXNrICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFJUQ19JU1JfVEFNUDJGX1BvcykgICAgICAvKiE8IDB4MDAwMDQwMDAgKi8NCiNkZWZpbmUgUlRDX0lTUl9UQU1QMkYgICAgICAgICAgICAgICAgICAgICAgIFJUQ19JU1JfVEFNUDJGX01zayAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0lTUl9UQU1QMUZfUG9zICAgICAgICAgICAgICAgICAgICgxM1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0lTUl9UQU1QMUZfTXNrICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFJUQ19JU1JfVEFNUDFGX1BvcykgICAgICAvKiE8IDB4MDAwMDIwMDAgKi8NCiNkZWZpbmUgUlRDX0lTUl9UQU1QMUYgICAgICAgICAgICAgICAgICAgICAgIFJUQ19JU1JfVEFNUDFGX01zayAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0lTUl9UU09WRl9Qb3MgICAgICAgICAgICAgICAgICAgICgxMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0lTUl9UU09WRl9Nc2sgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFJUQ19JU1JfVFNPVkZfUG9zKSAgICAgICAvKiE8IDB4MDAwMDEwMDAgKi8NCiNkZWZpbmUgUlRDX0lTUl9UU09WRiAgICAgICAgICAgICAgICAgICAgICAgIFJUQ19JU1JfVFNPVkZfTXNrICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0lTUl9UU0ZfUG9zICAgICAgICAgICAgICAgICAgICAgICgxMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0lTUl9UU0ZfTXNrICAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFJUQ19JU1JfVFNGX1BvcykgICAgICAgICAvKiE8IDB4MDAwMDA4MDAgKi8NCiNkZWZpbmUgUlRDX0lTUl9UU0YgICAgICAgICAgICAgICAgICAgICAgICAgIFJUQ19JU1JfVFNGX01zayAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0lTUl9XVVRGX1BvcyAgICAgICAgICAgICAgICAgICAgICgxMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0lTUl9XVVRGX01zayAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFJUQ19JU1JfV1VURl9Qb3MpICAgICAgICAvKiE8IDB4MDAwMDA0MDAgKi8NCiNkZWZpbmUgUlRDX0lTUl9XVVRGICAgICAgICAgICAgICAgICAgICAgICAgIFJUQ19JU1JfV1VURl9Nc2sgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0lTUl9BTFJCRl9Qb3MgICAgICAgICAgICAgICAgICAgICg5VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0lTUl9BTFJCRl9Nc2sgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFJUQ19JU1JfQUxSQkZfUG9zKSAgICAgICAvKiE8IDB4MDAwMDAyMDAgKi8NCiNkZWZpbmUgUlRDX0lTUl9BTFJCRiAgICAgICAgICAgICAgICAgICAgICAgIFJUQ19JU1JfQUxSQkZfTXNrICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0lTUl9BTFJBRl9Qb3MgICAgICAgICAgICAgICAgICAgICg4VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0lTUl9BTFJBRl9Nc2sgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFJUQ19JU1JfQUxSQUZfUG9zKSAgICAgICAvKiE8IDB4MDAwMDAxMDAgKi8NCiNkZWZpbmUgUlRDX0lTUl9BTFJBRiAgICAgICAgICAgICAgICAgICAgICAgIFJUQ19JU1JfQUxSQUZfTXNrICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0lTUl9JTklUX1BvcyAgICAgICAgICAgICAgICAgICAgICg3VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0lTUl9JTklUX01zayAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFJUQ19JU1JfSU5JVF9Qb3MpICAgICAgICAvKiE8IDB4MDAwMDAwODAgKi8NCiNkZWZpbmUgUlRDX0lTUl9JTklUICAgICAgICAgICAgICAgICAgICAgICAgIFJUQ19JU1JfSU5JVF9Nc2sgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0lTUl9JTklURl9Qb3MgICAgICAgICAgICAgICAgICAgICg2VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0lTUl9JTklURl9Nc2sgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFJUQ19JU1JfSU5JVEZfUG9zKSAgICAgICAvKiE8IDB4MDAwMDAwNDAgKi8NCiNkZWZpbmUgUlRDX0lTUl9JTklURiAgICAgICAgICAgICAgICAgICAgICAgIFJUQ19JU1JfSU5JVEZfTXNrICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0lTUl9SU0ZfUG9zICAgICAgICAgICAgICAgICAgICAgICg1VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0lTUl9SU0ZfTXNrICAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFJUQ19JU1JfUlNGX1BvcykgICAgICAgICAvKiE8IDB4MDAwMDAwMjAgKi8NCiNkZWZpbmUgUlRDX0lTUl9SU0YgICAgICAgICAgICAgICAgICAgICAgICAgIFJUQ19JU1JfUlNGX01zayAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0lTUl9JTklUU19Qb3MgICAgICAgICAgICAgICAgICAgICg0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0lTUl9JTklUU19Nc2sgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFJUQ19JU1JfSU5JVFNfUG9zKSAgICAgICAvKiE8IDB4MDAwMDAwMTAgKi8NCiNkZWZpbmUgUlRDX0lTUl9JTklUUyAgICAgICAgICAgICAgICAgICAgICAgIFJUQ19JU1JfSU5JVFNfTXNrICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0lTUl9TSFBGX1BvcyAgICAgICAgICAgICAgICAgICAgICgzVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0lTUl9TSFBGX01zayAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFJUQ19JU1JfU0hQRl9Qb3MpICAgICAgICAvKiE8IDB4MDAwMDAwMDggKi8NCiNkZWZpbmUgUlRDX0lTUl9TSFBGICAgICAgICAgICAgICAgICAgICAgICAgIFJUQ19JU1JfU0hQRl9Nc2sgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0lTUl9XVVRXRl9Qb3MgICAgICAgICAgICAgICAgICAgICgyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0lTUl9XVVRXRl9Nc2sgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFJUQ19JU1JfV1VUV0ZfUG9zKSAgICAgICAvKiE8IDB4MDAwMDAwMDQgKi8NCiNkZWZpbmUgUlRDX0lTUl9XVVRXRiAgICAgICAgICAgICAgICAgICAgICAgIFJUQ19JU1JfV1VUV0ZfTXNrICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0lTUl9BTFJCV0ZfUG9zICAgICAgICAgICAgICAgICAgICgxVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0lTUl9BTFJCV0ZfTXNrICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFJUQ19JU1JfQUxSQldGX1BvcykgICAgICAvKiE8IDB4MDAwMDAwMDIgKi8NCiNkZWZpbmUgUlRDX0lTUl9BTFJCV0YgICAgICAgICAgICAgICAgICAgICAgIFJUQ19JU1JfQUxSQldGX01zayAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0lTUl9BTFJBV0ZfUG9zICAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0lTUl9BTFJBV0ZfTXNrICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFJUQ19JU1JfQUxSQVdGX1BvcykgICAgICAvKiE8IDB4MDAwMDAwMDEgKi8NCiNkZWZpbmUgUlRDX0lTUl9BTFJBV0YgICAgICAgICAgICAgICAgICAgICAgIFJUQ19JU1JfQUxSQVdGX01zayAgICAgICAgICAgICAgICANCg0KLyoqKioqKioqKioqKioqKioqKioqICBCaXRzIGRlZmluaXRpb24gZm9yIFJUQ19QUkVSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgUlRDX1BSRVJfUFJFRElWX0FfUG9zICAgICAgICAgICAgICAgICgxNlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX1BSRVJfUFJFRElWX0FfTXNrICAgICAgICAgICAgICAgICgweDdGVSA8PCBSVENfUFJFUl9QUkVESVZfQV9Qb3MpICAvKiE8IDB4MDA3RjAwMDAgKi8NCiNkZWZpbmUgUlRDX1BSRVJfUFJFRElWX0EgICAgICAgICAgICAgICAgICAgIFJUQ19QUkVSX1BSRURJVl9BX01zayAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX1BSRVJfUFJFRElWX1NfUG9zICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX1BSRVJfUFJFRElWX1NfTXNrICAgICAgICAgICAgICAgICgweDdGRkZVIDw8IFJUQ19QUkVSX1BSRURJVl9TX1BvcykgLyohPCAweDAwMDA3RkZGICovDQojZGVmaW5lIFJUQ19QUkVSX1BSRURJVl9TICAgICAgICAgICAgICAgICAgICBSVENfUFJFUl9QUkVESVZfU19Nc2sgICAgICAgICAgICAgDQoNCi8qKioqKioqKioqKioqKioqKioqKiAgQml0cyBkZWZpbml0aW9uIGZvciBSVENfV1VUUiByZWdpc3RlciAgKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIFJUQ19XVVRSX1dVVF9Qb3MgICAgICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19XVVRSX1dVVF9Nc2sgICAgICAgICAgICAgICAgICAgICAoMHhGRkZGVSA8PCBSVENfV1VUUl9XVVRfUG9zKSAgICAgLyohPCAweDAwMDBGRkZGICovDQojZGVmaW5lIFJUQ19XVVRSX1dVVCAgICAgICAgICAgICAgICAgICAgICAgICBSVENfV1VUUl9XVVRfTXNrICAgICAgICAgICAgICAgICAgDQoNCi8qKioqKioqKioqKioqKioqKioqKiAgQml0cyBkZWZpbml0aW9uIGZvciBSVENfQ0FMSUJSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKiovDQojZGVmaW5lIFJUQ19DQUxJQlJfRENTX1BvcyAgICAgICAgICAgICAgICAgICAoN1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19DQUxJQlJfRENTX01zayAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBSVENfQ0FMSUJSX0RDU19Qb3MpICAgICAgLyohPCAweDAwMDAwMDgwICovDQojZGVmaW5lIFJUQ19DQUxJQlJfRENTICAgICAgICAgICAgICAgICAgICAgICBSVENfQ0FMSUJSX0RDU19Nc2sgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19DQUxJQlJfRENfUG9zICAgICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19DQUxJQlJfRENfTXNrICAgICAgICAgICAgICAgICAgICAoMHgxRlUgPDwgUlRDX0NBTElCUl9EQ19Qb3MpICAgICAgLyohPCAweDAwMDAwMDFGICovDQojZGVmaW5lIFJUQ19DQUxJQlJfREMgICAgICAgICAgICAgICAgICAgICAgICBSVENfQ0FMSUJSX0RDX01zayAgICAgICAgICAgICAgICAgDQoNCi8qKioqKioqKioqKioqKioqKioqKiAgQml0cyBkZWZpbml0aW9uIGZvciBSVENfQUxSTUFSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKiovDQojZGVmaW5lIFJUQ19BTFJNQVJfTVNLNF9Qb3MgICAgICAgICAgICAgICAgICAoMzFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19BTFJNQVJfTVNLNF9Nc2sgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBSVENfQUxSTUFSX01TSzRfUG9zKSAgICAgLyohPCAweDgwMDAwMDAwICovDQojZGVmaW5lIFJUQ19BTFJNQVJfTVNLNCAgICAgICAgICAgICAgICAgICAgICBSVENfQUxSTUFSX01TSzRfTXNrICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19BTFJNQVJfV0RTRUxfUG9zICAgICAgICAgICAgICAgICAoMzBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19BTFJNQVJfV0RTRUxfTXNrICAgICAgICAgICAgICAgICAoMHgxVSA8PCBSVENfQUxSTUFSX1dEU0VMX1BvcykgICAgLyohPCAweDQwMDAwMDAwICovDQojZGVmaW5lIFJUQ19BTFJNQVJfV0RTRUwgICAgICAgICAgICAgICAgICAgICBSVENfQUxSTUFSX1dEU0VMX01zayAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19BTFJNQVJfRFRfUG9zICAgICAgICAgICAgICAgICAgICAoMjhVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19BTFJNQVJfRFRfTXNrICAgICAgICAgICAgICAgICAgICAoMHgzVSA8PCBSVENfQUxSTUFSX0RUX1BvcykgICAgICAgLyohPCAweDMwMDAwMDAwICovDQojZGVmaW5lIFJUQ19BTFJNQVJfRFQgICAgICAgICAgICAgICAgICAgICAgICBSVENfQUxSTUFSX0RUX01zayAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19BTFJNQVJfRFRfMCAgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBSVENfQUxSTUFSX0RUX1BvcykgICAgICAgLyohPCAweDEwMDAwMDAwICovDQojZGVmaW5lIFJUQ19BTFJNQVJfRFRfMSAgICAgICAgICAgICAgICAgICAgICAoMHgyVSA8PCBSVENfQUxSTUFSX0RUX1BvcykgICAgICAgLyohPCAweDIwMDAwMDAwICovDQojZGVmaW5lIFJUQ19BTFJNQVJfRFVfUG9zICAgICAgICAgICAgICAgICAgICAoMjRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19BTFJNQVJfRFVfTXNrICAgICAgICAgICAgICAgICAgICAoMHhGVSA8PCBSVENfQUxSTUFSX0RVX1BvcykgICAgICAgLyohPCAweDBGMDAwMDAwICovDQojZGVmaW5lIFJUQ19BTFJNQVJfRFUgICAgICAgICAgICAgICAgICAgICAgICBSVENfQUxSTUFSX0RVX01zayAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19BTFJNQVJfRFVfMCAgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBSVENfQUxSTUFSX0RVX1BvcykgICAgICAgLyohPCAweDAxMDAwMDAwICovDQojZGVmaW5lIFJUQ19BTFJNQVJfRFVfMSAgICAgICAgICAgICAgICAgICAgICAoMHgyVSA8PCBSVENfQUxSTUFSX0RVX1BvcykgICAgICAgLyohPCAweDAyMDAwMDAwICovDQojZGVmaW5lIFJUQ19BTFJNQVJfRFVfMiAgICAgICAgICAgICAgICAgICAgICAoMHg0VSA8PCBSVENfQUxSTUFSX0RVX1BvcykgICAgICAgLyohPCAweDA0MDAwMDAwICovDQojZGVmaW5lIFJUQ19BTFJNQVJfRFVfMyAgICAgICAgICAgICAgICAgICAgICAoMHg4VSA8PCBSVENfQUxSTUFSX0RVX1BvcykgICAgICAgLyohPCAweDA4MDAwMDAwICovDQojZGVmaW5lIFJUQ19BTFJNQVJfTVNLM19Qb3MgICAgICAgICAgICAgICAgICAoMjNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19BTFJNQVJfTVNLM19Nc2sgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBSVENfQUxSTUFSX01TSzNfUG9zKSAgICAgLyohPCAweDAwODAwMDAwICovDQojZGVmaW5lIFJUQ19BTFJNQVJfTVNLMyAgICAgICAgICAgICAgICAgICAgICBSVENfQUxSTUFSX01TSzNfTXNrICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19BTFJNQVJfUE1fUG9zICAgICAgICAgICAgICAgICAgICAoMjJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19BTFJNQVJfUE1fTXNrICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBSVENfQUxSTUFSX1BNX1BvcykgICAgICAgLyohPCAweDAwNDAwMDAwICovDQojZGVmaW5lIFJUQ19BTFJNQVJfUE0gICAgICAgICAgICAgICAgICAgICAgICBSVENfQUxSTUFSX1BNX01zayAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19BTFJNQVJfSFRfUG9zICAgICAgICAgICAgICAgICAgICAoMjBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19BTFJNQVJfSFRfTXNrICAgICAgICAgICAgICAgICAgICAoMHgzVSA8PCBSVENfQUxSTUFSX0hUX1BvcykgICAgICAgLyohPCAweDAwMzAwMDAwICovDQojZGVmaW5lIFJUQ19BTFJNQVJfSFQgICAgICAgICAgICAgICAgICAgICAgICBSVENfQUxSTUFSX0hUX01zayAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19BTFJNQVJfSFRfMCAgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBSVENfQUxSTUFSX0hUX1BvcykgICAgICAgLyohPCAweDAwMTAwMDAwICovDQojZGVmaW5lIFJUQ19BTFJNQVJfSFRfMSAgICAgICAgICAgICAgICAgICAgICAoMHgyVSA8PCBSVENfQUxSTUFSX0hUX1BvcykgICAgICAgLyohPCAweDAwMjAwMDAwICovDQojZGVmaW5lIFJUQ19BTFJNQVJfSFVfUG9zICAgICAgICAgICAgICAgICAgICAoMTZVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19BTFJNQVJfSFVfTXNrICAgICAgICAgICAgICAgICAgICAoMHhGVSA8PCBSVENfQUxSTUFSX0hVX1BvcykgICAgICAgLyohPCAweDAwMEYwMDAwICovDQojZGVmaW5lIFJUQ19BTFJNQVJfSFUgICAgICAgICAgICAgICAgICAgICAgICBSVENfQUxSTUFSX0hVX01zayAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19BTFJNQVJfSFVfMCAgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBSVENfQUxSTUFSX0hVX1BvcykgICAgICAgLyohPCAweDAwMDEwMDAwICovDQojZGVmaW5lIFJUQ19BTFJNQVJfSFVfMSAgICAgICAgICAgICAgICAgICAgICAoMHgyVSA8PCBSVENfQUxSTUFSX0hVX1BvcykgICAgICAgLyohPCAweDAwMDIwMDAwICovDQojZGVmaW5lIFJUQ19BTFJNQVJfSFVfMiAgICAgICAgICAgICAgICAgICAgICAoMHg0VSA8PCBSVENfQUxSTUFSX0hVX1BvcykgICAgICAgLyohPCAweDAwMDQwMDAwICovDQojZGVmaW5lIFJUQ19BTFJNQVJfSFVfMyAgICAgICAgICAgICAgICAgICAgICAoMHg4VSA8PCBSVENfQUxSTUFSX0hVX1BvcykgICAgICAgLyohPCAweDAwMDgwMDAwICovDQojZGVmaW5lIFJUQ19BTFJNQVJfTVNLMl9Qb3MgICAgICAgICAgICAgICAgICAoMTVVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19BTFJNQVJfTVNLMl9Nc2sgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBSVENfQUxSTUFSX01TSzJfUG9zKSAgICAgLyohPCAweDAwMDA4MDAwICovDQojZGVmaW5lIFJUQ19BTFJNQVJfTVNLMiAgICAgICAgICAgICAgICAgICAgICBSVENfQUxSTUFSX01TSzJfTXNrICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19BTFJNQVJfTU5UX1BvcyAgICAgICAgICAgICAgICAgICAoMTJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19BTFJNQVJfTU5UX01zayAgICAgICAgICAgICAgICAgICAoMHg3VSA8PCBSVENfQUxSTUFSX01OVF9Qb3MpICAgICAgLyohPCAweDAwMDA3MDAwICovDQojZGVmaW5lIFJUQ19BTFJNQVJfTU5UICAgICAgICAgICAgICAgICAgICAgICBSVENfQUxSTUFSX01OVF9Nc2sgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19BTFJNQVJfTU5UXzAgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBSVENfQUxSTUFSX01OVF9Qb3MpICAgICAgLyohPCAweDAwMDAxMDAwICovDQojZGVmaW5lIFJUQ19BTFJNQVJfTU5UXzEgICAgICAgICAgICAgICAgICAgICAoMHgyVSA8PCBSVENfQUxSTUFSX01OVF9Qb3MpICAgICAgLyohPCAweDAwMDAyMDAwICovDQojZGVmaW5lIFJUQ19BTFJNQVJfTU5UXzIgICAgICAgICAgICAgICAgICAgICAoMHg0VSA8PCBSVENfQUxSTUFSX01OVF9Qb3MpICAgICAgLyohPCAweDAwMDA0MDAwICovDQojZGVmaW5lIFJUQ19BTFJNQVJfTU5VX1BvcyAgICAgICAgICAgICAgICAgICAoOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19BTFJNQVJfTU5VX01zayAgICAgICAgICAgICAgICAgICAoMHhGVSA8PCBSVENfQUxSTUFSX01OVV9Qb3MpICAgICAgLyohPCAweDAwMDAwRjAwICovDQojZGVmaW5lIFJUQ19BTFJNQVJfTU5VICAgICAgICAgICAgICAgICAgICAgICBSVENfQUxSTUFSX01OVV9Nc2sgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19BTFJNQVJfTU5VXzAgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBSVENfQUxSTUFSX01OVV9Qb3MpICAgICAgLyohPCAweDAwMDAwMTAwICovDQojZGVmaW5lIFJUQ19BTFJNQVJfTU5VXzEgICAgICAgICAgICAgICAgICAgICAoMHgyVSA8PCBSVENfQUxSTUFSX01OVV9Qb3MpICAgICAgLyohPCAweDAwMDAwMjAwICovDQojZGVmaW5lIFJUQ19BTFJNQVJfTU5VXzIgICAgICAgICAgICAgICAgICAgICAoMHg0VSA8PCBSVENfQUxSTUFSX01OVV9Qb3MpICAgICAgLyohPCAweDAwMDAwNDAwICovDQojZGVmaW5lIFJUQ19BTFJNQVJfTU5VXzMgICAgICAgICAgICAgICAgICAgICAoMHg4VSA8PCBSVENfQUxSTUFSX01OVV9Qb3MpICAgICAgLyohPCAweDAwMDAwODAwICovDQojZGVmaW5lIFJUQ19BTFJNQVJfTVNLMV9Qb3MgICAgICAgICAgICAgICAgICAoN1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19BTFJNQVJfTVNLMV9Nc2sgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBSVENfQUxSTUFSX01TSzFfUG9zKSAgICAgLyohPCAweDAwMDAwMDgwICovDQojZGVmaW5lIFJUQ19BTFJNQVJfTVNLMSAgICAgICAgICAgICAgICAgICAgICBSVENfQUxSTUFSX01TSzFfTXNrICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19BTFJNQVJfU1RfUG9zICAgICAgICAgICAgICAgICAgICAoNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19BTFJNQVJfU1RfTXNrICAgICAgICAgICAgICAgICAgICAoMHg3VSA8PCBSVENfQUxSTUFSX1NUX1BvcykgICAgICAgLyohPCAweDAwMDAwMDcwICovDQojZGVmaW5lIFJUQ19BTFJNQVJfU1QgICAgICAgICAgICAgICAgICAgICAgICBSVENfQUxSTUFSX1NUX01zayAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19BTFJNQVJfU1RfMCAgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBSVENfQUxSTUFSX1NUX1BvcykgICAgICAgLyohPCAweDAwMDAwMDEwICovDQojZGVmaW5lIFJUQ19BTFJNQVJfU1RfMSAgICAgICAgICAgICAgICAgICAgICAoMHgyVSA8PCBSVENfQUxSTUFSX1NUX1BvcykgICAgICAgLyohPCAweDAwMDAwMDIwICovDQojZGVmaW5lIFJUQ19BTFJNQVJfU1RfMiAgICAgICAgICAgICAgICAgICAgICAoMHg0VSA8PCBSVENfQUxSTUFSX1NUX1BvcykgICAgICAgLyohPCAweDAwMDAwMDQwICovDQojZGVmaW5lIFJUQ19BTFJNQVJfU1VfUG9zICAgICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19BTFJNQVJfU1VfTXNrICAgICAgICAgICAgICAgICAgICAoMHhGVSA8PCBSVENfQUxSTUFSX1NVX1BvcykgICAgICAgLyohPCAweDAwMDAwMDBGICovDQojZGVmaW5lIFJUQ19BTFJNQVJfU1UgICAgICAgICAgICAgICAgICAgICAgICBSVENfQUxSTUFSX1NVX01zayAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19BTFJNQVJfU1VfMCAgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBSVENfQUxSTUFSX1NVX1BvcykgICAgICAgLyohPCAweDAwMDAwMDAxICovDQojZGVmaW5lIFJUQ19BTFJNQVJfU1VfMSAgICAgICAgICAgICAgICAgICAgICAoMHgyVSA8PCBSVENfQUxSTUFSX1NVX1BvcykgICAgICAgLyohPCAweDAwMDAwMDAyICovDQojZGVmaW5lIFJUQ19BTFJNQVJfU1VfMiAgICAgICAgICAgICAgICAgICAgICAoMHg0VSA8PCBSVENfQUxSTUFSX1NVX1BvcykgICAgICAgLyohPCAweDAwMDAwMDA0ICovDQojZGVmaW5lIFJUQ19BTFJNQVJfU1VfMyAgICAgICAgICAgICAgICAgICAgICAoMHg4VSA8PCBSVENfQUxSTUFSX1NVX1BvcykgICAgICAgLyohPCAweDAwMDAwMDA4ICovDQoNCi8qKioqKioqKioqKioqKioqKioqKiAgQml0cyBkZWZpbml0aW9uIGZvciBSVENfQUxSTUJSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKiovDQojZGVmaW5lIFJUQ19BTFJNQlJfTVNLNF9Qb3MgICAgICAgICAgICAgICAgICAoMzFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19BTFJNQlJfTVNLNF9Nc2sgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBSVENfQUxSTUJSX01TSzRfUG9zKSAgICAgLyohPCAweDgwMDAwMDAwICovDQojZGVmaW5lIFJUQ19BTFJNQlJfTVNLNCAgICAgICAgICAgICAgICAgICAgICBSVENfQUxSTUJSX01TSzRfTXNrICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19BTFJNQlJfV0RTRUxfUG9zICAgICAgICAgICAgICAgICAoMzBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19BTFJNQlJfV0RTRUxfTXNrICAgICAgICAgICAgICAgICAoMHgxVSA8PCBSVENfQUxSTUJSX1dEU0VMX1BvcykgICAgLyohPCAweDQwMDAwMDAwICovDQojZGVmaW5lIFJUQ19BTFJNQlJfV0RTRUwgICAgICAgICAgICAgICAgICAgICBSVENfQUxSTUJSX1dEU0VMX01zayAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19BTFJNQlJfRFRfUG9zICAgICAgICAgICAgICAgICAgICAoMjhVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19BTFJNQlJfRFRfTXNrICAgICAgICAgICAgICAgICAgICAoMHgzVSA8PCBSVENfQUxSTUJSX0RUX1BvcykgICAgICAgLyohPCAweDMwMDAwMDAwICovDQojZGVmaW5lIFJUQ19BTFJNQlJfRFQgICAgICAgICAgICAgICAgICAgICAgICBSVENfQUxSTUJSX0RUX01zayAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19BTFJNQlJfRFRfMCAgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBSVENfQUxSTUJSX0RUX1BvcykgICAgICAgLyohPCAweDEwMDAwMDAwICovDQojZGVmaW5lIFJUQ19BTFJNQlJfRFRfMSAgICAgICAgICAgICAgICAgICAgICAoMHgyVSA8PCBSVENfQUxSTUJSX0RUX1BvcykgICAgICAgLyohPCAweDIwMDAwMDAwICovDQojZGVmaW5lIFJUQ19BTFJNQlJfRFVfUG9zICAgICAgICAgICAgICAgICAgICAoMjRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19BTFJNQlJfRFVfTXNrICAgICAgICAgICAgICAgICAgICAoMHhGVSA8PCBSVENfQUxSTUJSX0RVX1BvcykgICAgICAgLyohPCAweDBGMDAwMDAwICovDQojZGVmaW5lIFJUQ19BTFJNQlJfRFUgICAgICAgICAgICAgICAgICAgICAgICBSVENfQUxSTUJSX0RVX01zayAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19BTFJNQlJfRFVfMCAgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBSVENfQUxSTUJSX0RVX1BvcykgICAgICAgLyohPCAweDAxMDAwMDAwICovDQojZGVmaW5lIFJUQ19BTFJNQlJfRFVfMSAgICAgICAgICAgICAgICAgICAgICAoMHgyVSA8PCBSVENfQUxSTUJSX0RVX1BvcykgICAgICAgLyohPCAweDAyMDAwMDAwICovDQojZGVmaW5lIFJUQ19BTFJNQlJfRFVfMiAgICAgICAgICAgICAgICAgICAgICAoMHg0VSA8PCBSVENfQUxSTUJSX0RVX1BvcykgICAgICAgLyohPCAweDA0MDAwMDAwICovDQojZGVmaW5lIFJUQ19BTFJNQlJfRFVfMyAgICAgICAgICAgICAgICAgICAgICAoMHg4VSA8PCBSVENfQUxSTUJSX0RVX1BvcykgICAgICAgLyohPCAweDA4MDAwMDAwICovDQojZGVmaW5lIFJUQ19BTFJNQlJfTVNLM19Qb3MgICAgICAgICAgICAgICAgICAoMjNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19BTFJNQlJfTVNLM19Nc2sgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBSVENfQUxSTUJSX01TSzNfUG9zKSAgICAgLyohPCAweDAwODAwMDAwICovDQojZGVmaW5lIFJUQ19BTFJNQlJfTVNLMyAgICAgICAgICAgICAgICAgICAgICBSVENfQUxSTUJSX01TSzNfTXNrICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19BTFJNQlJfUE1fUG9zICAgICAgICAgICAgICAgICAgICAoMjJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19BTFJNQlJfUE1fTXNrICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBSVENfQUxSTUJSX1BNX1BvcykgICAgICAgLyohPCAweDAwNDAwMDAwICovDQojZGVmaW5lIFJUQ19BTFJNQlJfUE0gICAgICAgICAgICAgICAgICAgICAgICBSVENfQUxSTUJSX1BNX01zayAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19BTFJNQlJfSFRfUG9zICAgICAgICAgICAgICAgICAgICAoMjBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19BTFJNQlJfSFRfTXNrICAgICAgICAgICAgICAgICAgICAoMHgzVSA8PCBSVENfQUxSTUJSX0hUX1BvcykgICAgICAgLyohPCAweDAwMzAwMDAwICovDQojZGVmaW5lIFJUQ19BTFJNQlJfSFQgICAgICAgICAgICAgICAgICAgICAgICBSVENfQUxSTUJSX0hUX01zayAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19BTFJNQlJfSFRfMCAgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBSVENfQUxSTUJSX0hUX1BvcykgICAgICAgLyohPCAweDAwMTAwMDAwICovDQojZGVmaW5lIFJUQ19BTFJNQlJfSFRfMSAgICAgICAgICAgICAgICAgICAgICAoMHgyVSA8PCBSVENfQUxSTUJSX0hUX1BvcykgICAgICAgLyohPCAweDAwMjAwMDAwICovDQojZGVmaW5lIFJUQ19BTFJNQlJfSFVfUG9zICAgICAgICAgICAgICAgICAgICAoMTZVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19BTFJNQlJfSFVfTXNrICAgICAgICAgICAgICAgICAgICAoMHhGVSA8PCBSVENfQUxSTUJSX0hVX1BvcykgICAgICAgLyohPCAweDAwMEYwMDAwICovDQojZGVmaW5lIFJUQ19BTFJNQlJfSFUgICAgICAgICAgICAgICAgICAgICAgICBSVENfQUxSTUJSX0hVX01zayAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19BTFJNQlJfSFVfMCAgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBSVENfQUxSTUJSX0hVX1BvcykgICAgICAgLyohPCAweDAwMDEwMDAwICovDQojZGVmaW5lIFJUQ19BTFJNQlJfSFVfMSAgICAgICAgICAgICAgICAgICAgICAoMHgyVSA8PCBSVENfQUxSTUJSX0hVX1BvcykgICAgICAgLyohPCAweDAwMDIwMDAwICovDQojZGVmaW5lIFJUQ19BTFJNQlJfSFVfMiAgICAgICAgICAgICAgICAgICAgICAoMHg0VSA8PCBSVENfQUxSTUJSX0hVX1BvcykgICAgICAgLyohPCAweDAwMDQwMDAwICovDQojZGVmaW5lIFJUQ19BTFJNQlJfSFVfMyAgICAgICAgICAgICAgICAgICAgICAoMHg4VSA8PCBSVENfQUxSTUJSX0hVX1BvcykgICAgICAgLyohPCAweDAwMDgwMDAwICovDQojZGVmaW5lIFJUQ19BTFJNQlJfTVNLMl9Qb3MgICAgICAgICAgICAgICAgICAoMTVVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19BTFJNQlJfTVNLMl9Nc2sgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBSVENfQUxSTUJSX01TSzJfUG9zKSAgICAgLyohPCAweDAwMDA4MDAwICovDQojZGVmaW5lIFJUQ19BTFJNQlJfTVNLMiAgICAgICAgICAgICAgICAgICAgICBSVENfQUxSTUJSX01TSzJfTXNrICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19BTFJNQlJfTU5UX1BvcyAgICAgICAgICAgICAgICAgICAoMTJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19BTFJNQlJfTU5UX01zayAgICAgICAgICAgICAgICAgICAoMHg3VSA8PCBSVENfQUxSTUJSX01OVF9Qb3MpICAgICAgLyohPCAweDAwMDA3MDAwICovDQojZGVmaW5lIFJUQ19BTFJNQlJfTU5UICAgICAgICAgICAgICAgICAgICAgICBSVENfQUxSTUJSX01OVF9Nc2sgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19BTFJNQlJfTU5UXzAgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBSVENfQUxSTUJSX01OVF9Qb3MpICAgICAgLyohPCAweDAwMDAxMDAwICovDQojZGVmaW5lIFJUQ19BTFJNQlJfTU5UXzEgICAgICAgICAgICAgICAgICAgICAoMHgyVSA8PCBSVENfQUxSTUJSX01OVF9Qb3MpICAgICAgLyohPCAweDAwMDAyMDAwICovDQojZGVmaW5lIFJUQ19BTFJNQlJfTU5UXzIgICAgICAgICAgICAgICAgICAgICAoMHg0VSA8PCBSVENfQUxSTUJSX01OVF9Qb3MpICAgICAgLyohPCAweDAwMDA0MDAwICovDQojZGVmaW5lIFJUQ19BTFJNQlJfTU5VX1BvcyAgICAgICAgICAgICAgICAgICAoOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19BTFJNQlJfTU5VX01zayAgICAgICAgICAgICAgICAgICAoMHhGVSA8PCBSVENfQUxSTUJSX01OVV9Qb3MpICAgICAgLyohPCAweDAwMDAwRjAwICovDQojZGVmaW5lIFJUQ19BTFJNQlJfTU5VICAgICAgICAgICAgICAgICAgICAgICBSVENfQUxSTUJSX01OVV9Nc2sgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19BTFJNQlJfTU5VXzAgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBSVENfQUxSTUJSX01OVV9Qb3MpICAgICAgLyohPCAweDAwMDAwMTAwICovDQojZGVmaW5lIFJUQ19BTFJNQlJfTU5VXzEgICAgICAgICAgICAgICAgICAgICAoMHgyVSA8PCBSVENfQUxSTUJSX01OVV9Qb3MpICAgICAgLyohPCAweDAwMDAwMjAwICovDQojZGVmaW5lIFJUQ19BTFJNQlJfTU5VXzIgICAgICAgICAgICAgICAgICAgICAoMHg0VSA8PCBSVENfQUxSTUJSX01OVV9Qb3MpICAgICAgLyohPCAweDAwMDAwNDAwICovDQojZGVmaW5lIFJUQ19BTFJNQlJfTU5VXzMgICAgICAgICAgICAgICAgICAgICAoMHg4VSA8PCBSVENfQUxSTUJSX01OVV9Qb3MpICAgICAgLyohPCAweDAwMDAwODAwICovDQojZGVmaW5lIFJUQ19BTFJNQlJfTVNLMV9Qb3MgICAgICAgICAgICAgICAgICAoN1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19BTFJNQlJfTVNLMV9Nc2sgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBSVENfQUxSTUJSX01TSzFfUG9zKSAgICAgLyohPCAweDAwMDAwMDgwICovDQojZGVmaW5lIFJUQ19BTFJNQlJfTVNLMSAgICAgICAgICAgICAgICAgICAgICBSVENfQUxSTUJSX01TSzFfTXNrICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19BTFJNQlJfU1RfUG9zICAgICAgICAgICAgICAgICAgICAoNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19BTFJNQlJfU1RfTXNrICAgICAgICAgICAgICAgICAgICAoMHg3VSA8PCBSVENfQUxSTUJSX1NUX1BvcykgICAgICAgLyohPCAweDAwMDAwMDcwICovDQojZGVmaW5lIFJUQ19BTFJNQlJfU1QgICAgICAgICAgICAgICAgICAgICAgICBSVENfQUxSTUJSX1NUX01zayAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19BTFJNQlJfU1RfMCAgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBSVENfQUxSTUJSX1NUX1BvcykgICAgICAgLyohPCAweDAwMDAwMDEwICovDQojZGVmaW5lIFJUQ19BTFJNQlJfU1RfMSAgICAgICAgICAgICAgICAgICAgICAoMHgyVSA8PCBSVENfQUxSTUJSX1NUX1BvcykgICAgICAgLyohPCAweDAwMDAwMDIwICovDQojZGVmaW5lIFJUQ19BTFJNQlJfU1RfMiAgICAgICAgICAgICAgICAgICAgICAoMHg0VSA8PCBSVENfQUxSTUJSX1NUX1BvcykgICAgICAgLyohPCAweDAwMDAwMDQwICovDQojZGVmaW5lIFJUQ19BTFJNQlJfU1VfUG9zICAgICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19BTFJNQlJfU1VfTXNrICAgICAgICAgICAgICAgICAgICAoMHhGVSA8PCBSVENfQUxSTUJSX1NVX1BvcykgICAgICAgLyohPCAweDAwMDAwMDBGICovDQojZGVmaW5lIFJUQ19BTFJNQlJfU1UgICAgICAgICAgICAgICAgICAgICAgICBSVENfQUxSTUJSX1NVX01zayAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19BTFJNQlJfU1VfMCAgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBSVENfQUxSTUJSX1NVX1BvcykgICAgICAgLyohPCAweDAwMDAwMDAxICovDQojZGVmaW5lIFJUQ19BTFJNQlJfU1VfMSAgICAgICAgICAgICAgICAgICAgICAoMHgyVSA8PCBSVENfQUxSTUJSX1NVX1BvcykgICAgICAgLyohPCAweDAwMDAwMDAyICovDQojZGVmaW5lIFJUQ19BTFJNQlJfU1VfMiAgICAgICAgICAgICAgICAgICAgICAoMHg0VSA8PCBSVENfQUxSTUJSX1NVX1BvcykgICAgICAgLyohPCAweDAwMDAwMDA0ICovDQojZGVmaW5lIFJUQ19BTFJNQlJfU1VfMyAgICAgICAgICAgICAgICAgICAgICAoMHg4VSA8PCBSVENfQUxSTUJSX1NVX1BvcykgICAgICAgLyohPCAweDAwMDAwMDA4ICovDQoNCi8qKioqKioqKioqKioqKioqKioqKiAgQml0cyBkZWZpbml0aW9uIGZvciBSVENfV1BSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIFJUQ19XUFJfS0VZX1BvcyAgICAgICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19XUFJfS0VZX01zayAgICAgICAgICAgICAgICAgICAgICAoMHhGRlUgPDwgUlRDX1dQUl9LRVlfUG9zKSAgICAgICAgLyohPCAweDAwMDAwMEZGICovDQojZGVmaW5lIFJUQ19XUFJfS0VZICAgICAgICAgICAgICAgICAgICAgICAgICBSVENfV1BSX0tFWV9Nc2sgICAgICAgICAgICAgICAgICAgDQoNCi8qKioqKioqKioqKioqKioqKioqKiAgQml0cyBkZWZpbml0aW9uIGZvciBSVENfU1NSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIFJUQ19TU1JfU1NfUG9zICAgICAgICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19TU1JfU1NfTXNrICAgICAgICAgICAgICAgICAgICAgICAoMHhGRkZGVSA8PCBSVENfU1NSX1NTX1BvcykgICAgICAgLyohPCAweDAwMDBGRkZGICovDQojZGVmaW5lIFJUQ19TU1JfU1MgICAgICAgICAgICAgICAgICAgICAgICAgICBSVENfU1NSX1NTX01zayAgICAgICAgICAgICAgICAgICAgDQoNCi8qKioqKioqKioqKioqKioqKioqKiAgQml0cyBkZWZpbml0aW9uIGZvciBSVENfU0hJRlRSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKiovDQojZGVmaW5lIFJUQ19TSElGVFJfU1VCRlNfUG9zICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19TSElGVFJfU1VCRlNfTXNrICAgICAgICAgICAgICAgICAoMHg3RkZGVSA8PCBSVENfU0hJRlRSX1NVQkZTX1BvcykgLyohPCAweDAwMDA3RkZGICovDQojZGVmaW5lIFJUQ19TSElGVFJfU1VCRlMgICAgICAgICAgICAgICAgICAgICBSVENfU0hJRlRSX1NVQkZTX01zayAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19TSElGVFJfQUREMVNfUG9zICAgICAgICAgICAgICAgICAoMzFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19TSElGVFJfQUREMVNfTXNrICAgICAgICAgICAgICAgICAoMHgxVSA8PCBSVENfU0hJRlRSX0FERDFTX1BvcykgICAgLyohPCAweDgwMDAwMDAwICovDQojZGVmaW5lIFJUQ19TSElGVFJfQUREMVMgICAgICAgICAgICAgICAgICAgICBSVENfU0hJRlRSX0FERDFTX01zayAgICAgICAgICAgICAgDQoNCi8qKioqKioqKioqKioqKioqKioqKiAgQml0cyBkZWZpbml0aW9uIGZvciBSVENfVFNUUiByZWdpc3RlciAgKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIFJUQ19UU1RSX1BNX1BvcyAgICAgICAgICAgICAgICAgICAgICAoMjJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19UU1RSX1BNX01zayAgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBSVENfVFNUUl9QTV9Qb3MpICAgICAgICAgLyohPCAweDAwNDAwMDAwICovDQojZGVmaW5lIFJUQ19UU1RSX1BNICAgICAgICAgICAgICAgICAgICAgICAgICBSVENfVFNUUl9QTV9Nc2sgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19UU1RSX0hUX1BvcyAgICAgICAgICAgICAgICAgICAgICAoMjBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19UU1RSX0hUX01zayAgICAgICAgICAgICAgICAgICAgICAoMHgzVSA8PCBSVENfVFNUUl9IVF9Qb3MpICAgICAgICAgLyohPCAweDAwMzAwMDAwICovDQojZGVmaW5lIFJUQ19UU1RSX0hUICAgICAgICAgICAgICAgICAgICAgICAgICBSVENfVFNUUl9IVF9Nc2sgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19UU1RSX0hUXzAgICAgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBSVENfVFNUUl9IVF9Qb3MpICAgICAgICAgLyohPCAweDAwMTAwMDAwICovDQojZGVmaW5lIFJUQ19UU1RSX0hUXzEgICAgICAgICAgICAgICAgICAgICAgICAoMHgyVSA8PCBSVENfVFNUUl9IVF9Qb3MpICAgICAgICAgLyohPCAweDAwMjAwMDAwICovDQojZGVmaW5lIFJUQ19UU1RSX0hVX1BvcyAgICAgICAgICAgICAgICAgICAgICAoMTZVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19UU1RSX0hVX01zayAgICAgICAgICAgICAgICAgICAgICAoMHhGVSA8PCBSVENfVFNUUl9IVV9Qb3MpICAgICAgICAgLyohPCAweDAwMEYwMDAwICovDQojZGVmaW5lIFJUQ19UU1RSX0hVICAgICAgICAgICAgICAgICAgICAgICAgICBSVENfVFNUUl9IVV9Nc2sgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19UU1RSX0hVXzAgICAgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBSVENfVFNUUl9IVV9Qb3MpICAgICAgICAgLyohPCAweDAwMDEwMDAwICovDQojZGVmaW5lIFJUQ19UU1RSX0hVXzEgICAgICAgICAgICAgICAgICAgICAgICAoMHgyVSA8PCBSVENfVFNUUl9IVV9Qb3MpICAgICAgICAgLyohPCAweDAwMDIwMDAwICovDQojZGVmaW5lIFJUQ19UU1RSX0hVXzIgICAgICAgICAgICAgICAgICAgICAgICAoMHg0VSA8PCBSVENfVFNUUl9IVV9Qb3MpICAgICAgICAgLyohPCAweDAwMDQwMDAwICovDQojZGVmaW5lIFJUQ19UU1RSX0hVXzMgICAgICAgICAgICAgICAgICAgICAgICAoMHg4VSA8PCBSVENfVFNUUl9IVV9Qb3MpICAgICAgICAgLyohPCAweDAwMDgwMDAwICovDQojZGVmaW5lIFJUQ19UU1RSX01OVF9Qb3MgICAgICAgICAgICAgICAgICAgICAoMTJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19UU1RSX01OVF9Nc2sgICAgICAgICAgICAgICAgICAgICAoMHg3VSA8PCBSVENfVFNUUl9NTlRfUG9zKSAgICAgICAgLyohPCAweDAwMDA3MDAwICovDQojZGVmaW5lIFJUQ19UU1RSX01OVCAgICAgICAgICAgICAgICAgICAgICAgICBSVENfVFNUUl9NTlRfTXNrICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19UU1RSX01OVF8wICAgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBSVENfVFNUUl9NTlRfUG9zKSAgICAgICAgLyohPCAweDAwMDAxMDAwICovDQojZGVmaW5lIFJUQ19UU1RSX01OVF8xICAgICAgICAgICAgICAgICAgICAgICAoMHgyVSA8PCBSVENfVFNUUl9NTlRfUG9zKSAgICAgICAgLyohPCAweDAwMDAyMDAwICovDQojZGVmaW5lIFJUQ19UU1RSX01OVF8yICAgICAgICAgICAgICAgICAgICAgICAoMHg0VSA8PCBSVENfVFNUUl9NTlRfUG9zKSAgICAgICAgLyohPCAweDAwMDA0MDAwICovDQojZGVmaW5lIFJUQ19UU1RSX01OVV9Qb3MgICAgICAgICAgICAgICAgICAgICAoOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19UU1RSX01OVV9Nc2sgICAgICAgICAgICAgICAgICAgICAoMHhGVSA8PCBSVENfVFNUUl9NTlVfUG9zKSAgICAgICAgLyohPCAweDAwMDAwRjAwICovDQojZGVmaW5lIFJUQ19UU1RSX01OVSAgICAgICAgICAgICAgICAgICAgICAgICBSVENfVFNUUl9NTlVfTXNrICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19UU1RSX01OVV8wICAgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBSVENfVFNUUl9NTlVfUG9zKSAgICAgICAgLyohPCAweDAwMDAwMTAwICovDQojZGVmaW5lIFJUQ19UU1RSX01OVV8xICAgICAgICAgICAgICAgICAgICAgICAoMHgyVSA8PCBSVENfVFNUUl9NTlVfUG9zKSAgICAgICAgLyohPCAweDAwMDAwMjAwICovDQojZGVmaW5lIFJUQ19UU1RSX01OVV8yICAgICAgICAgICAgICAgICAgICAgICAoMHg0VSA8PCBSVENfVFNUUl9NTlVfUG9zKSAgICAgICAgLyohPCAweDAwMDAwNDAwICovDQojZGVmaW5lIFJUQ19UU1RSX01OVV8zICAgICAgICAgICAgICAgICAgICAgICAoMHg4VSA8PCBSVENfVFNUUl9NTlVfUG9zKSAgICAgICAgLyohPCAweDAwMDAwODAwICovDQojZGVmaW5lIFJUQ19UU1RSX1NUX1BvcyAgICAgICAgICAgICAgICAgICAgICAoNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19UU1RSX1NUX01zayAgICAgICAgICAgICAgICAgICAgICAoMHg3VSA8PCBSVENfVFNUUl9TVF9Qb3MpICAgICAgICAgLyohPCAweDAwMDAwMDcwICovDQojZGVmaW5lIFJUQ19UU1RSX1NUICAgICAgICAgICAgICAgICAgICAgICAgICBSVENfVFNUUl9TVF9Nc2sgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19UU1RSX1NUXzAgICAgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBSVENfVFNUUl9TVF9Qb3MpICAgICAgICAgLyohPCAweDAwMDAwMDEwICovDQojZGVmaW5lIFJUQ19UU1RSX1NUXzEgICAgICAgICAgICAgICAgICAgICAgICAoMHgyVSA8PCBSVENfVFNUUl9TVF9Qb3MpICAgICAgICAgLyohPCAweDAwMDAwMDIwICovDQojZGVmaW5lIFJUQ19UU1RSX1NUXzIgICAgICAgICAgICAgICAgICAgICAgICAoMHg0VSA8PCBSVENfVFNUUl9TVF9Qb3MpICAgICAgICAgLyohPCAweDAwMDAwMDQwICovDQojZGVmaW5lIFJUQ19UU1RSX1NVX1BvcyAgICAgICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19UU1RSX1NVX01zayAgICAgICAgICAgICAgICAgICAgICAoMHhGVSA8PCBSVENfVFNUUl9TVV9Qb3MpICAgICAgICAgLyohPCAweDAwMDAwMDBGICovDQojZGVmaW5lIFJUQ19UU1RSX1NVICAgICAgICAgICAgICAgICAgICAgICAgICBSVENfVFNUUl9TVV9Nc2sgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19UU1RSX1NVXzAgICAgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBSVENfVFNUUl9TVV9Qb3MpICAgICAgICAgLyohPCAweDAwMDAwMDAxICovDQojZGVmaW5lIFJUQ19UU1RSX1NVXzEgICAgICAgICAgICAgICAgICAgICAgICAoMHgyVSA8PCBSVENfVFNUUl9TVV9Qb3MpICAgICAgICAgLyohPCAweDAwMDAwMDAyICovDQojZGVmaW5lIFJUQ19UU1RSX1NVXzIgICAgICAgICAgICAgICAgICAgICAgICAoMHg0VSA8PCBSVENfVFNUUl9TVV9Qb3MpICAgICAgICAgLyohPCAweDAwMDAwMDA0ICovDQojZGVmaW5lIFJUQ19UU1RSX1NVXzMgICAgICAgICAgICAgICAgICAgICAgICAoMHg4VSA8PCBSVENfVFNUUl9TVV9Qb3MpICAgICAgICAgLyohPCAweDAwMDAwMDA4ICovDQoNCi8qKioqKioqKioqKioqKioqKioqKiAgQml0cyBkZWZpbml0aW9uIGZvciBSVENfVFNEUiByZWdpc3RlciAgKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIFJUQ19UU0RSX1dEVV9Qb3MgICAgICAgICAgICAgICAgICAgICAoMTNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19UU0RSX1dEVV9Nc2sgICAgICAgICAgICAgICAgICAgICAoMHg3VSA8PCBSVENfVFNEUl9XRFVfUG9zKSAgICAgICAgLyohPCAweDAwMDBFMDAwICovDQojZGVmaW5lIFJUQ19UU0RSX1dEVSAgICAgICAgICAgICAgICAgICAgICAgICBSVENfVFNEUl9XRFVfTXNrICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19UU0RSX1dEVV8wICAgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBSVENfVFNEUl9XRFVfUG9zKSAgICAgICAgLyohPCAweDAwMDAyMDAwICovDQojZGVmaW5lIFJUQ19UU0RSX1dEVV8xICAgICAgICAgICAgICAgICAgICAgICAoMHgyVSA8PCBSVENfVFNEUl9XRFVfUG9zKSAgICAgICAgLyohPCAweDAwMDA0MDAwICovDQojZGVmaW5lIFJUQ19UU0RSX1dEVV8yICAgICAgICAgICAgICAgICAgICAgICAoMHg0VSA8PCBSVENfVFNEUl9XRFVfUG9zKSAgICAgICAgLyohPCAweDAwMDA4MDAwICovDQojZGVmaW5lIFJUQ19UU0RSX01UX1BvcyAgICAgICAgICAgICAgICAgICAgICAoMTJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19UU0RSX01UX01zayAgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBSVENfVFNEUl9NVF9Qb3MpICAgICAgICAgLyohPCAweDAwMDAxMDAwICovDQojZGVmaW5lIFJUQ19UU0RSX01UICAgICAgICAgICAgICAgICAgICAgICAgICBSVENfVFNEUl9NVF9Nc2sgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19UU0RSX01VX1BvcyAgICAgICAgICAgICAgICAgICAgICAoOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19UU0RSX01VX01zayAgICAgICAgICAgICAgICAgICAgICAoMHhGVSA8PCBSVENfVFNEUl9NVV9Qb3MpICAgICAgICAgLyohPCAweDAwMDAwRjAwICovDQojZGVmaW5lIFJUQ19UU0RSX01VICAgICAgICAgICAgICAgICAgICAgICAgICBSVENfVFNEUl9NVV9Nc2sgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19UU0RSX01VXzAgICAgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBSVENfVFNEUl9NVV9Qb3MpICAgICAgICAgLyohPCAweDAwMDAwMTAwICovDQojZGVmaW5lIFJUQ19UU0RSX01VXzEgICAgICAgICAgICAgICAgICAgICAgICAoMHgyVSA8PCBSVENfVFNEUl9NVV9Qb3MpICAgICAgICAgLyohPCAweDAwMDAwMjAwICovDQojZGVmaW5lIFJUQ19UU0RSX01VXzIgICAgICAgICAgICAgICAgICAgICAgICAoMHg0VSA8PCBSVENfVFNEUl9NVV9Qb3MpICAgICAgICAgLyohPCAweDAwMDAwNDAwICovDQojZGVmaW5lIFJUQ19UU0RSX01VXzMgICAgICAgICAgICAgICAgICAgICAgICAoMHg4VSA8PCBSVENfVFNEUl9NVV9Qb3MpICAgICAgICAgLyohPCAweDAwMDAwODAwICovDQojZGVmaW5lIFJUQ19UU0RSX0RUX1BvcyAgICAgICAgICAgICAgICAgICAgICAoNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19UU0RSX0RUX01zayAgICAgICAgICAgICAgICAgICAgICAoMHgzVSA8PCBSVENfVFNEUl9EVF9Qb3MpICAgICAgICAgLyohPCAweDAwMDAwMDMwICovDQojZGVmaW5lIFJUQ19UU0RSX0RUICAgICAgICAgICAgICAgICAgICAgICAgICBSVENfVFNEUl9EVF9Nc2sgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19UU0RSX0RUXzAgICAgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBSVENfVFNEUl9EVF9Qb3MpICAgICAgICAgLyohPCAweDAwMDAwMDEwICovDQojZGVmaW5lIFJUQ19UU0RSX0RUXzEgICAgICAgICAgICAgICAgICAgICAgICAoMHgyVSA8PCBSVENfVFNEUl9EVF9Qb3MpICAgICAgICAgLyohPCAweDAwMDAwMDIwICovDQojZGVmaW5lIFJUQ19UU0RSX0RVX1BvcyAgICAgICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19UU0RSX0RVX01zayAgICAgICAgICAgICAgICAgICAgICAoMHhGVSA8PCBSVENfVFNEUl9EVV9Qb3MpICAgICAgICAgLyohPCAweDAwMDAwMDBGICovDQojZGVmaW5lIFJUQ19UU0RSX0RVICAgICAgICAgICAgICAgICAgICAgICAgICBSVENfVFNEUl9EVV9Nc2sgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19UU0RSX0RVXzAgICAgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBSVENfVFNEUl9EVV9Qb3MpICAgICAgICAgLyohPCAweDAwMDAwMDAxICovDQojZGVmaW5lIFJUQ19UU0RSX0RVXzEgICAgICAgICAgICAgICAgICAgICAgICAoMHgyVSA8PCBSVENfVFNEUl9EVV9Qb3MpICAgICAgICAgLyohPCAweDAwMDAwMDAyICovDQojZGVmaW5lIFJUQ19UU0RSX0RVXzIgICAgICAgICAgICAgICAgICAgICAgICAoMHg0VSA8PCBSVENfVFNEUl9EVV9Qb3MpICAgICAgICAgLyohPCAweDAwMDAwMDA0ICovDQojZGVmaW5lIFJUQ19UU0RSX0RVXzMgICAgICAgICAgICAgICAgICAgICAgICAoMHg4VSA8PCBSVENfVFNEUl9EVV9Qb3MpICAgICAgICAgLyohPCAweDAwMDAwMDA4ICovDQoNCi8qKioqKioqKioqKioqKioqKioqKiAgQml0cyBkZWZpbml0aW9uIGZvciBSVENfVFNTU1IgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKiovDQojZGVmaW5lIFJUQ19UU1NTUl9TU19Qb3MgICAgICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19UU1NTUl9TU19Nc2sgICAgICAgICAgICAgICAgICAgICAoMHhGRkZGVSA8PCBSVENfVFNTU1JfU1NfUG9zKSAgICAgLyohPCAweDAwMDBGRkZGICovDQojZGVmaW5lIFJUQ19UU1NTUl9TUyAgICAgICAgICAgICAgICAgICAgICAgICBSVENfVFNTU1JfU1NfTXNrICAgICAgICAgICAgICAgICAgDQoNCi8qKioqKioqKioqKioqKioqKioqKiAgQml0cyBkZWZpbml0aW9uIGZvciBSVENfQ0FMIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgUlRDX0NBTFJfQ0FMUF9Qb3MgICAgICAgICAgICAgICAgICAgICgxNVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0NBTFJfQ0FMUF9Nc2sgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFJUQ19DQUxSX0NBTFBfUG9zKSAgICAgICAvKiE8IDB4MDAwMDgwMDAgKi8NCiNkZWZpbmUgUlRDX0NBTFJfQ0FMUCAgICAgICAgICAgICAgICAgICAgICAgIFJUQ19DQUxSX0NBTFBfTXNrICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0NBTFJfQ0FMVzhfUG9zICAgICAgICAgICAgICAgICAgICgxNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0NBTFJfQ0FMVzhfTXNrICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFJUQ19DQUxSX0NBTFc4X1BvcykgICAgICAvKiE8IDB4MDAwMDQwMDAgKi8NCiNkZWZpbmUgUlRDX0NBTFJfQ0FMVzggICAgICAgICAgICAgICAgICAgICAgIFJUQ19DQUxSX0NBTFc4X01zayAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0NBTFJfQ0FMVzE2X1BvcyAgICAgICAgICAgICAgICAgICgxM1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0NBTFJfQ0FMVzE2X01zayAgICAgICAgICAgICAgICAgICgweDFVIDw8IFJUQ19DQUxSX0NBTFcxNl9Qb3MpICAgICAvKiE8IDB4MDAwMDIwMDAgKi8NCiNkZWZpbmUgUlRDX0NBTFJfQ0FMVzE2ICAgICAgICAgICAgICAgICAgICAgIFJUQ19DQUxSX0NBTFcxNl9Nc2sgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0NBTFJfQ0FMTV9Qb3MgICAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0NBTFJfQ0FMTV9Nc2sgICAgICAgICAgICAgICAgICAgICgweDFGRlUgPDwgUlRDX0NBTFJfQ0FMTV9Qb3MpICAgICAvKiE8IDB4MDAwMDAxRkYgKi8NCiNkZWZpbmUgUlRDX0NBTFJfQ0FMTSAgICAgICAgICAgICAgICAgICAgICAgIFJUQ19DQUxSX0NBTE1fTXNrICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0NBTFJfQ0FMTV8wICAgICAgICAgICAgICAgICAgICAgICgweDAwMVUgPDwgUlRDX0NBTFJfQ0FMTV9Qb3MpICAgICAvKiE8IDB4MDAwMDAwMDEgKi8NCiNkZWZpbmUgUlRDX0NBTFJfQ0FMTV8xICAgICAgICAgICAgICAgICAgICAgICgweDAwMlUgPDwgUlRDX0NBTFJfQ0FMTV9Qb3MpICAgICAvKiE8IDB4MDAwMDAwMDIgKi8NCiNkZWZpbmUgUlRDX0NBTFJfQ0FMTV8yICAgICAgICAgICAgICAgICAgICAgICgweDAwNFUgPDwgUlRDX0NBTFJfQ0FMTV9Qb3MpICAgICAvKiE8IDB4MDAwMDAwMDQgKi8NCiNkZWZpbmUgUlRDX0NBTFJfQ0FMTV8zICAgICAgICAgICAgICAgICAgICAgICgweDAwOFUgPDwgUlRDX0NBTFJfQ0FMTV9Qb3MpICAgICAvKiE8IDB4MDAwMDAwMDggKi8NCiNkZWZpbmUgUlRDX0NBTFJfQ0FMTV80ICAgICAgICAgICAgICAgICAgICAgICgweDAxMFUgPDwgUlRDX0NBTFJfQ0FMTV9Qb3MpICAgICAvKiE8IDB4MDAwMDAwMTAgKi8NCiNkZWZpbmUgUlRDX0NBTFJfQ0FMTV81ICAgICAgICAgICAgICAgICAgICAgICgweDAyMFUgPDwgUlRDX0NBTFJfQ0FMTV9Qb3MpICAgICAvKiE8IDB4MDAwMDAwMjAgKi8NCiNkZWZpbmUgUlRDX0NBTFJfQ0FMTV82ICAgICAgICAgICAgICAgICAgICAgICgweDA0MFUgPDwgUlRDX0NBTFJfQ0FMTV9Qb3MpICAgICAvKiE8IDB4MDAwMDAwNDAgKi8NCiNkZWZpbmUgUlRDX0NBTFJfQ0FMTV83ICAgICAgICAgICAgICAgICAgICAgICgweDA4MFUgPDwgUlRDX0NBTFJfQ0FMTV9Qb3MpICAgICAvKiE8IDB4MDAwMDAwODAgKi8NCiNkZWZpbmUgUlRDX0NBTFJfQ0FMTV84ICAgICAgICAgICAgICAgICAgICAgICgweDEwMFUgPDwgUlRDX0NBTFJfQ0FMTV9Qb3MpICAgICAvKiE8IDB4MDAwMDAxMDAgKi8NCg0KLyoqKioqKioqKioqKioqKioqKioqICBCaXRzIGRlZmluaXRpb24gZm9yIFJUQ19UQUZDUiByZWdpc3RlciAgKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgUlRDX1RBRkNSX0FMQVJNT1VUVFlQRV9Qb3MgICAgICAgICAgICgxOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX1RBRkNSX0FMQVJNT1VUVFlQRV9Nc2sgICAgICAgICAgICgweDFVIDw8IFJUQ19UQUZDUl9BTEFSTU9VVFRZUEVfUG9zKSAvKiE8IDB4MDAwNDAwMDAgKi8NCiNkZWZpbmUgUlRDX1RBRkNSX0FMQVJNT1VUVFlQRSAgICAgICAgICAgICAgIFJUQ19UQUZDUl9BTEFSTU9VVFRZUEVfTXNrICAgICAgICANCiNkZWZpbmUgUlRDX1RBRkNSX1RBTVBQVURJU19Qb3MgICAgICAgICAgICAgICgxNVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX1RBRkNSX1RBTVBQVURJU19Nc2sgICAgICAgICAgICAgICgweDFVIDw8IFJUQ19UQUZDUl9UQU1QUFVESVNfUG9zKSAvKiE8IDB4MDAwMDgwMDAgKi8NCiNkZWZpbmUgUlRDX1RBRkNSX1RBTVBQVURJUyAgICAgICAgICAgICAgICAgIFJUQ19UQUZDUl9UQU1QUFVESVNfTXNrICAgICAgICAgICANCiNkZWZpbmUgUlRDX1RBRkNSX1RBTVBQUkNIX1BvcyAgICAgICAgICAgICAgICgxM1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX1RBRkNSX1RBTVBQUkNIX01zayAgICAgICAgICAgICAgICgweDNVIDw8IFJUQ19UQUZDUl9UQU1QUFJDSF9Qb3MpICAvKiE8IDB4MDAwMDYwMDAgKi8NCiNkZWZpbmUgUlRDX1RBRkNSX1RBTVBQUkNIICAgICAgICAgICAgICAgICAgIFJUQ19UQUZDUl9UQU1QUFJDSF9Nc2sgICAgICAgICAgICANCiNkZWZpbmUgUlRDX1RBRkNSX1RBTVBQUkNIXzAgICAgICAgICAgICAgICAgICgweDFVIDw8IFJUQ19UQUZDUl9UQU1QUFJDSF9Qb3MpICAvKiE8IDB4MDAwMDIwMDAgKi8NCiNkZWZpbmUgUlRDX1RBRkNSX1RBTVBQUkNIXzEgICAgICAgICAgICAgICAgICgweDJVIDw8IFJUQ19UQUZDUl9UQU1QUFJDSF9Qb3MpICAvKiE8IDB4MDAwMDQwMDAgKi8NCiNkZWZpbmUgUlRDX1RBRkNSX1RBTVBGTFRfUG9zICAgICAgICAgICAgICAgICgxMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX1RBRkNSX1RBTVBGTFRfTXNrICAgICAgICAgICAgICAgICgweDNVIDw8IFJUQ19UQUZDUl9UQU1QRkxUX1BvcykgICAvKiE8IDB4MDAwMDE4MDAgKi8NCiNkZWZpbmUgUlRDX1RBRkNSX1RBTVBGTFQgICAgICAgICAgICAgICAgICAgIFJUQ19UQUZDUl9UQU1QRkxUX01zayAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX1RBRkNSX1RBTVBGTFRfMCAgICAgICAgICAgICAgICAgICgweDFVIDw8IFJUQ19UQUZDUl9UQU1QRkxUX1BvcykgICAvKiE8IDB4MDAwMDA4MDAgKi8NCiNkZWZpbmUgUlRDX1RBRkNSX1RBTVBGTFRfMSAgICAgICAgICAgICAgICAgICgweDJVIDw8IFJUQ19UQUZDUl9UQU1QRkxUX1BvcykgICAvKiE8IDB4MDAwMDEwMDAgKi8NCiNkZWZpbmUgUlRDX1RBRkNSX1RBTVBGUkVRX1BvcyAgICAgICAgICAgICAgICg4VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX1RBRkNSX1RBTVBGUkVRX01zayAgICAgICAgICAgICAgICgweDdVIDw8IFJUQ19UQUZDUl9UQU1QRlJFUV9Qb3MpICAvKiE8IDB4MDAwMDA3MDAgKi8NCiNkZWZpbmUgUlRDX1RBRkNSX1RBTVBGUkVRICAgICAgICAgICAgICAgICAgIFJUQ19UQUZDUl9UQU1QRlJFUV9Nc2sgICAgICAgICAgICANCiNkZWZpbmUgUlRDX1RBRkNSX1RBTVBGUkVRXzAgICAgICAgICAgICAgICAgICgweDFVIDw8IFJUQ19UQUZDUl9UQU1QRlJFUV9Qb3MpICAvKiE8IDB4MDAwMDAxMDAgKi8NCiNkZWZpbmUgUlRDX1RBRkNSX1RBTVBGUkVRXzEgICAgICAgICAgICAgICAgICgweDJVIDw8IFJUQ19UQUZDUl9UQU1QRlJFUV9Qb3MpICAvKiE8IDB4MDAwMDAyMDAgKi8NCiNkZWZpbmUgUlRDX1RBRkNSX1RBTVBGUkVRXzIgICAgICAgICAgICAgICAgICgweDRVIDw8IFJUQ19UQUZDUl9UQU1QRlJFUV9Qb3MpICAvKiE8IDB4MDAwMDA0MDAgKi8NCiNkZWZpbmUgUlRDX1RBRkNSX1RBTVBUU19Qb3MgICAgICAgICAgICAgICAgICg3VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX1RBRkNSX1RBTVBUU19Nc2sgICAgICAgICAgICAgICAgICgweDFVIDw8IFJUQ19UQUZDUl9UQU1QVFNfUG9zKSAgICAvKiE8IDB4MDAwMDAwODAgKi8NCiNkZWZpbmUgUlRDX1RBRkNSX1RBTVBUUyAgICAgICAgICAgICAgICAgICAgIFJUQ19UQUZDUl9UQU1QVFNfTXNrICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX1RBRkNSX1RBTVAzVFJHX1BvcyAgICAgICAgICAgICAgICg2VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX1RBRkNSX1RBTVAzVFJHX01zayAgICAgICAgICAgICAgICgweDFVIDw8IFJUQ19UQUZDUl9UQU1QM1RSR19Qb3MpICAvKiE8IDB4MDAwMDAwNDAgKi8NCiNkZWZpbmUgUlRDX1RBRkNSX1RBTVAzVFJHICAgICAgICAgICAgICAgICAgIFJUQ19UQUZDUl9UQU1QM1RSR19Nc2sgICAgICAgICAgICANCiNkZWZpbmUgUlRDX1RBRkNSX1RBTVAzRV9Qb3MgICAgICAgICAgICAgICAgICg1VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX1RBRkNSX1RBTVAzRV9Nc2sgICAgICAgICAgICAgICAgICgweDFVIDw8IFJUQ19UQUZDUl9UQU1QM0VfUG9zKSAgICAvKiE8IDB4MDAwMDAwMjAgKi8NCiNkZWZpbmUgUlRDX1RBRkNSX1RBTVAzRSAgICAgICAgICAgICAgICAgICAgIFJUQ19UQUZDUl9UQU1QM0VfTXNrICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX1RBRkNSX1RBTVAyVFJHX1BvcyAgICAgICAgICAgICAgICg0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX1RBRkNSX1RBTVAyVFJHX01zayAgICAgICAgICAgICAgICgweDFVIDw8IFJUQ19UQUZDUl9UQU1QMlRSR19Qb3MpICAvKiE8IDB4MDAwMDAwMTAgKi8NCiNkZWZpbmUgUlRDX1RBRkNSX1RBTVAyVFJHICAgICAgICAgICAgICAgICAgIFJUQ19UQUZDUl9UQU1QMlRSR19Nc2sgICAgICAgICAgICANCiNkZWZpbmUgUlRDX1RBRkNSX1RBTVAyRV9Qb3MgICAgICAgICAgICAgICAgICgzVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX1RBRkNSX1RBTVAyRV9Nc2sgICAgICAgICAgICAgICAgICgweDFVIDw8IFJUQ19UQUZDUl9UQU1QMkVfUG9zKSAgICAvKiE8IDB4MDAwMDAwMDggKi8NCiNkZWZpbmUgUlRDX1RBRkNSX1RBTVAyRSAgICAgICAgICAgICAgICAgICAgIFJUQ19UQUZDUl9UQU1QMkVfTXNrICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX1RBRkNSX1RBTVBJRV9Qb3MgICAgICAgICAgICAgICAgICgyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX1RBRkNSX1RBTVBJRV9Nc2sgICAgICAgICAgICAgICAgICgweDFVIDw8IFJUQ19UQUZDUl9UQU1QSUVfUG9zKSAgICAvKiE8IDB4MDAwMDAwMDQgKi8NCiNkZWZpbmUgUlRDX1RBRkNSX1RBTVBJRSAgICAgICAgICAgICAgICAgICAgIFJUQ19UQUZDUl9UQU1QSUVfTXNrICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX1RBRkNSX1RBTVAxVFJHX1BvcyAgICAgICAgICAgICAgICgxVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX1RBRkNSX1RBTVAxVFJHX01zayAgICAgICAgICAgICAgICgweDFVIDw8IFJUQ19UQUZDUl9UQU1QMVRSR19Qb3MpICAvKiE8IDB4MDAwMDAwMDIgKi8NCiNkZWZpbmUgUlRDX1RBRkNSX1RBTVAxVFJHICAgICAgICAgICAgICAgICAgIFJUQ19UQUZDUl9UQU1QMVRSR19Nc2sgICAgICAgICAgICANCiNkZWZpbmUgUlRDX1RBRkNSX1RBTVAxRV9Qb3MgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX1RBRkNSX1RBTVAxRV9Nc2sgICAgICAgICAgICAgICAgICgweDFVIDw8IFJUQ19UQUZDUl9UQU1QMUVfUG9zKSAgICAvKiE8IDB4MDAwMDAwMDEgKi8NCiNkZWZpbmUgUlRDX1RBRkNSX1RBTVAxRSAgICAgICAgICAgICAgICAgICAgIFJUQ19UQUZDUl9UQU1QMUVfTXNrICAgICAgICAgICAgICANCg0KLyoqKioqKioqKioqKioqKioqKioqICBCaXRzIGRlZmluaXRpb24gZm9yIFJUQ19BTFJNQVNTUiByZWdpc3RlciAgKioqKioqKioqKioqKi8NCiNkZWZpbmUgUlRDX0FMUk1BU1NSX01BU0tTU19Qb3MgICAgICAgICAgICAgICgyNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0FMUk1BU1NSX01BU0tTU19Nc2sgICAgICAgICAgICAgICgweEZVIDw8IFJUQ19BTFJNQVNTUl9NQVNLU1NfUG9zKSAvKiE8IDB4MEYwMDAwMDAgKi8NCiNkZWZpbmUgUlRDX0FMUk1BU1NSX01BU0tTUyAgICAgICAgICAgICAgICAgIFJUQ19BTFJNQVNTUl9NQVNLU1NfTXNrICAgICAgICAgICANCiNkZWZpbmUgUlRDX0FMUk1BU1NSX01BU0tTU18wICAgICAgICAgICAgICAgICgweDFVIDw8IFJUQ19BTFJNQVNTUl9NQVNLU1NfUG9zKSAvKiE8IDB4MDEwMDAwMDAgKi8NCiNkZWZpbmUgUlRDX0FMUk1BU1NSX01BU0tTU18xICAgICAgICAgICAgICAgICgweDJVIDw8IFJUQ19BTFJNQVNTUl9NQVNLU1NfUG9zKSAvKiE8IDB4MDIwMDAwMDAgKi8NCiNkZWZpbmUgUlRDX0FMUk1BU1NSX01BU0tTU18yICAgICAgICAgICAgICAgICgweDRVIDw8IFJUQ19BTFJNQVNTUl9NQVNLU1NfUG9zKSAvKiE8IDB4MDQwMDAwMDAgKi8NCiNkZWZpbmUgUlRDX0FMUk1BU1NSX01BU0tTU18zICAgICAgICAgICAgICAgICgweDhVIDw8IFJUQ19BTFJNQVNTUl9NQVNLU1NfUG9zKSAvKiE8IDB4MDgwMDAwMDAgKi8NCiNkZWZpbmUgUlRDX0FMUk1BU1NSX1NTX1BvcyAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0FMUk1BU1NSX1NTX01zayAgICAgICAgICAgICAgICAgICgweDdGRkZVIDw8IFJUQ19BTFJNQVNTUl9TU19Qb3MpICAvKiE8IDB4MDAwMDdGRkYgKi8NCiNkZWZpbmUgUlRDX0FMUk1BU1NSX1NTICAgICAgICAgICAgICAgICAgICAgIFJUQ19BTFJNQVNTUl9TU19Nc2sgICAgICAgICAgICAgICANCg0KLyoqKioqKioqKioqKioqKioqKioqICBCaXRzIGRlZmluaXRpb24gZm9yIFJUQ19BTFJNQlNTUiByZWdpc3RlciAgKioqKioqKioqKioqKi8NCiNkZWZpbmUgUlRDX0FMUk1CU1NSX01BU0tTU19Qb3MgICAgICAgICAgICAgICgyNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0FMUk1CU1NSX01BU0tTU19Nc2sgICAgICAgICAgICAgICgweEZVIDw8IFJUQ19BTFJNQlNTUl9NQVNLU1NfUG9zKSAvKiE8IDB4MEYwMDAwMDAgKi8NCiNkZWZpbmUgUlRDX0FMUk1CU1NSX01BU0tTUyAgICAgICAgICAgICAgICAgIFJUQ19BTFJNQlNTUl9NQVNLU1NfTXNrICAgICAgICAgICANCiNkZWZpbmUgUlRDX0FMUk1CU1NSX01BU0tTU18wICAgICAgICAgICAgICAgICgweDFVIDw8IFJUQ19BTFJNQlNTUl9NQVNLU1NfUG9zKSAvKiE8IDB4MDEwMDAwMDAgKi8NCiNkZWZpbmUgUlRDX0FMUk1CU1NSX01BU0tTU18xICAgICAgICAgICAgICAgICgweDJVIDw8IFJUQ19BTFJNQlNTUl9NQVNLU1NfUG9zKSAvKiE8IDB4MDIwMDAwMDAgKi8NCiNkZWZpbmUgUlRDX0FMUk1CU1NSX01BU0tTU18yICAgICAgICAgICAgICAgICgweDRVIDw8IFJUQ19BTFJNQlNTUl9NQVNLU1NfUG9zKSAvKiE8IDB4MDQwMDAwMDAgKi8NCiNkZWZpbmUgUlRDX0FMUk1CU1NSX01BU0tTU18zICAgICAgICAgICAgICAgICgweDhVIDw8IFJUQ19BTFJNQlNTUl9NQVNLU1NfUG9zKSAvKiE8IDB4MDgwMDAwMDAgKi8NCiNkZWZpbmUgUlRDX0FMUk1CU1NSX1NTX1BvcyAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0FMUk1CU1NSX1NTX01zayAgICAgICAgICAgICAgICAgICgweDdGRkZVIDw8IFJUQ19BTFJNQlNTUl9TU19Qb3MpICAvKiE8IDB4MDAwMDdGRkYgKi8NCiNkZWZpbmUgUlRDX0FMUk1CU1NSX1NTICAgICAgICAgICAgICAgICAgICAgIFJUQ19BTFJNQlNTUl9TU19Nc2sgICAgICAgICAgICAgICANCg0KLyoqKioqKioqKioqKioqKioqKioqICBCaXRzIGRlZmluaXRpb24gZm9yIFJUQ19CS1AwUiByZWdpc3RlciAgKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgUlRDX0JLUDBSX1BvcyAgICAgICAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0JLUDBSX01zayAgICAgICAgICAgICAgICAgICAgICAgICgweEZGRkZGRkZGVSA8PCBSVENfQktQMFJfUG9zKSAgICAvKiE8IDB4RkZGRkZGRkYgKi8NCiNkZWZpbmUgUlRDX0JLUDBSICAgICAgICAgICAgICAgICAgICAgICAgICAgIFJUQ19CS1AwUl9Nc2sgICAgICAgICAgICAgICAgICAgICANCg0KLyoqKioqKioqKioqKioqKioqKioqICBCaXRzIGRlZmluaXRpb24gZm9yIFJUQ19CS1AxUiByZWdpc3RlciAgKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgUlRDX0JLUDFSX1BvcyAgICAgICAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0JLUDFSX01zayAgICAgICAgICAgICAgICAgICAgICAgICgweEZGRkZGRkZGVSA8PCBSVENfQktQMVJfUG9zKSAgICAvKiE8IDB4RkZGRkZGRkYgKi8NCiNkZWZpbmUgUlRDX0JLUDFSICAgICAgICAgICAgICAgICAgICAgICAgICAgIFJUQ19CS1AxUl9Nc2sgICAgICAgICAgICAgICAgICAgICANCg0KLyoqKioqKioqKioqKioqKioqKioqICBCaXRzIGRlZmluaXRpb24gZm9yIFJUQ19CS1AyUiByZWdpc3RlciAgKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgUlRDX0JLUDJSX1BvcyAgICAgICAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0JLUDJSX01zayAgICAgICAgICAgICAgICAgICAgICAgICgweEZGRkZGRkZGVSA8PCBSVENfQktQMlJfUG9zKSAgICAvKiE8IDB4RkZGRkZGRkYgKi8NCiNkZWZpbmUgUlRDX0JLUDJSICAgICAgICAgICAgICAgICAgICAgICAgICAgIFJUQ19CS1AyUl9Nc2sgICAgICAgICAgICAgICAgICAgICANCg0KLyoqKioqKioqKioqKioqKioqKioqICBCaXRzIGRlZmluaXRpb24gZm9yIFJUQ19CS1AzUiByZWdpc3RlciAgKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgUlRDX0JLUDNSX1BvcyAgICAgICAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0JLUDNSX01zayAgICAgICAgICAgICAgICAgICAgICAgICgweEZGRkZGRkZGVSA8PCBSVENfQktQM1JfUG9zKSAgICAvKiE8IDB4RkZGRkZGRkYgKi8NCiNkZWZpbmUgUlRDX0JLUDNSICAgICAgICAgICAgICAgICAgICAgICAgICAgIFJUQ19CS1AzUl9Nc2sgICAgICAgICAgICAgICAgICAgICANCg0KLyoqKioqKioqKioqKioqKioqKioqICBCaXRzIGRlZmluaXRpb24gZm9yIFJUQ19CS1A0UiByZWdpc3RlciAgKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgUlRDX0JLUDRSX1BvcyAgICAgICAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0JLUDRSX01zayAgICAgICAgICAgICAgICAgICAgICAgICgweEZGRkZGRkZGVSA8PCBSVENfQktQNFJfUG9zKSAgICAvKiE8IDB4RkZGRkZGRkYgKi8NCiNkZWZpbmUgUlRDX0JLUDRSICAgICAgICAgICAgICAgICAgICAgICAgICAgIFJUQ19CS1A0Ul9Nc2sgICAgICAgICAgICAgICAgICAgICANCg0KLyoqKioqKioqKioqKioqKioqKioqICBCaXRzIGRlZmluaXRpb24gZm9yIFJUQ19CS1A1UiByZWdpc3RlciAgKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgUlRDX0JLUDVSX1BvcyAgICAgICAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0JLUDVSX01zayAgICAgICAgICAgICAgICAgICAgICAgICgweEZGRkZGRkZGVSA8PCBSVENfQktQNVJfUG9zKSAgICAvKiE8IDB4RkZGRkZGRkYgKi8NCiNkZWZpbmUgUlRDX0JLUDVSICAgICAgICAgICAgICAgICAgICAgICAgICAgIFJUQ19CS1A1Ul9Nc2sgICAgICAgICAgICAgICAgICAgICANCg0KLyoqKioqKioqKioqKioqKioqKioqICBCaXRzIGRlZmluaXRpb24gZm9yIFJUQ19CS1A2UiByZWdpc3RlciAgKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgUlRDX0JLUDZSX1BvcyAgICAgICAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0JLUDZSX01zayAgICAgICAgICAgICAgICAgICAgICAgICgweEZGRkZGRkZGVSA8PCBSVENfQktQNlJfUG9zKSAgICAvKiE8IDB4RkZGRkZGRkYgKi8NCiNkZWZpbmUgUlRDX0JLUDZSICAgICAgICAgICAgICAgICAgICAgICAgICAgIFJUQ19CS1A2Ul9Nc2sgICAgICAgICAgICAgICAgICAgICANCg0KLyoqKioqKioqKioqKioqKioqKioqICBCaXRzIGRlZmluaXRpb24gZm9yIFJUQ19CS1A3UiByZWdpc3RlciAgKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgUlRDX0JLUDdSX1BvcyAgICAgICAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0JLUDdSX01zayAgICAgICAgICAgICAgICAgICAgICAgICgweEZGRkZGRkZGVSA8PCBSVENfQktQN1JfUG9zKSAgICAvKiE8IDB4RkZGRkZGRkYgKi8NCiNkZWZpbmUgUlRDX0JLUDdSICAgICAgICAgICAgICAgICAgICAgICAgICAgIFJUQ19CS1A3Ul9Nc2sgICAgICAgICAgICAgICAgICAgICANCg0KLyoqKioqKioqKioqKioqKioqKioqICBCaXRzIGRlZmluaXRpb24gZm9yIFJUQ19CS1A4UiByZWdpc3RlciAgKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgUlRDX0JLUDhSX1BvcyAgICAgICAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0JLUDhSX01zayAgICAgICAgICAgICAgICAgICAgICAgICgweEZGRkZGRkZGVSA8PCBSVENfQktQOFJfUG9zKSAgICAvKiE8IDB4RkZGRkZGRkYgKi8NCiNkZWZpbmUgUlRDX0JLUDhSICAgICAgICAgICAgICAgICAgICAgICAgICAgIFJUQ19CS1A4Ul9Nc2sgICAgICAgICAgICAgICAgICAgICANCg0KLyoqKioqKioqKioqKioqKioqKioqICBCaXRzIGRlZmluaXRpb24gZm9yIFJUQ19CS1A5UiByZWdpc3RlciAgKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgUlRDX0JLUDlSX1BvcyAgICAgICAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0JLUDlSX01zayAgICAgICAgICAgICAgICAgICAgICAgICgweEZGRkZGRkZGVSA8PCBSVENfQktQOVJfUG9zKSAgICAvKiE8IDB4RkZGRkZGRkYgKi8NCiNkZWZpbmUgUlRDX0JLUDlSICAgICAgICAgICAgICAgICAgICAgICAgICAgIFJUQ19CS1A5Ul9Nc2sgICAgICAgICAgICAgICAgICAgICANCg0KLyoqKioqKioqKioqKioqKioqKioqICBCaXRzIGRlZmluaXRpb24gZm9yIFJUQ19CS1AxMFIgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKi8NCiNkZWZpbmUgUlRDX0JLUDEwUl9Qb3MgICAgICAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0JLUDEwUl9Nc2sgICAgICAgICAgICAgICAgICAgICAgICgweEZGRkZGRkZGVSA8PCBSVENfQktQMTBSX1BvcykgICAvKiE8IDB4RkZGRkZGRkYgKi8NCiNkZWZpbmUgUlRDX0JLUDEwUiAgICAgICAgICAgICAgICAgICAgICAgICAgIFJUQ19CS1AxMFJfTXNrICAgICAgICAgICAgICAgICAgICANCg0KLyoqKioqKioqKioqKioqKioqKioqICBCaXRzIGRlZmluaXRpb24gZm9yIFJUQ19CS1AxMVIgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKi8NCiNkZWZpbmUgUlRDX0JLUDExUl9Qb3MgICAgICAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0JLUDExUl9Nc2sgICAgICAgICAgICAgICAgICAgICAgICgweEZGRkZGRkZGVSA8PCBSVENfQktQMTFSX1BvcykgICAvKiE8IDB4RkZGRkZGRkYgKi8NCiNkZWZpbmUgUlRDX0JLUDExUiAgICAgICAgICAgICAgICAgICAgICAgICAgIFJUQ19CS1AxMVJfTXNrICAgICAgICAgICAgICAgICAgICANCg0KLyoqKioqKioqKioqKioqKioqKioqICBCaXRzIGRlZmluaXRpb24gZm9yIFJUQ19CS1AxMlIgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKi8NCiNkZWZpbmUgUlRDX0JLUDEyUl9Qb3MgICAgICAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0JLUDEyUl9Nc2sgICAgICAgICAgICAgICAgICAgICAgICgweEZGRkZGRkZGVSA8PCBSVENfQktQMTJSX1BvcykgICAvKiE8IDB4RkZGRkZGRkYgKi8NCiNkZWZpbmUgUlRDX0JLUDEyUiAgICAgICAgICAgICAgICAgICAgICAgICAgIFJUQ19CS1AxMlJfTXNrICAgICAgICAgICAgICAgICAgICANCg0KLyoqKioqKioqKioqKioqKioqKioqICBCaXRzIGRlZmluaXRpb24gZm9yIFJUQ19CS1AxM1IgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKi8NCiNkZWZpbmUgUlRDX0JLUDEzUl9Qb3MgICAgICAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0JLUDEzUl9Nc2sgICAgICAgICAgICAgICAgICAgICAgICgweEZGRkZGRkZGVSA8PCBSVENfQktQMTNSX1BvcykgICAvKiE8IDB4RkZGRkZGRkYgKi8NCiNkZWZpbmUgUlRDX0JLUDEzUiAgICAgICAgICAgICAgICAgICAgICAgICAgIFJUQ19CS1AxM1JfTXNrICAgICAgICAgICAgICAgICAgICANCg0KLyoqKioqKioqKioqKioqKioqKioqICBCaXRzIGRlZmluaXRpb24gZm9yIFJUQ19CS1AxNFIgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKi8NCiNkZWZpbmUgUlRDX0JLUDE0Ul9Qb3MgICAgICAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0JLUDE0Ul9Nc2sgICAgICAgICAgICAgICAgICAgICAgICgweEZGRkZGRkZGVSA8PCBSVENfQktQMTRSX1BvcykgICAvKiE8IDB4RkZGRkZGRkYgKi8NCiNkZWZpbmUgUlRDX0JLUDE0UiAgICAgICAgICAgICAgICAgICAgICAgICAgIFJUQ19CS1AxNFJfTXNrICAgICAgICAgICAgICAgICAgICANCg0KLyoqKioqKioqKioqKioqKioqKioqICBCaXRzIGRlZmluaXRpb24gZm9yIFJUQ19CS1AxNVIgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKi8NCiNkZWZpbmUgUlRDX0JLUDE1Ul9Qb3MgICAgICAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0JLUDE1Ul9Nc2sgICAgICAgICAgICAgICAgICAgICAgICgweEZGRkZGRkZGVSA8PCBSVENfQktQMTVSX1BvcykgICAvKiE8IDB4RkZGRkZGRkYgKi8NCiNkZWZpbmUgUlRDX0JLUDE1UiAgICAgICAgICAgICAgICAgICAgICAgICAgIFJUQ19CS1AxNVJfTXNrICAgICAgICAgICAgICAgICAgICANCg0KLyoqKioqKioqKioqKioqKioqKioqICBCaXRzIGRlZmluaXRpb24gZm9yIFJUQ19CS1AxNlIgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKi8NCiNkZWZpbmUgUlRDX0JLUDE2Ul9Qb3MgICAgICAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0JLUDE2Ul9Nc2sgICAgICAgICAgICAgICAgICAgICAgICgweEZGRkZGRkZGVSA8PCBSVENfQktQMTZSX1BvcykgICAvKiE8IDB4RkZGRkZGRkYgKi8NCiNkZWZpbmUgUlRDX0JLUDE2UiAgICAgICAgICAgICAgICAgICAgICAgICAgIFJUQ19CS1AxNlJfTXNrICAgICAgICAgICAgICAgICAgICANCg0KLyoqKioqKioqKioqKioqKioqKioqICBCaXRzIGRlZmluaXRpb24gZm9yIFJUQ19CS1AxN1IgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKi8NCiNkZWZpbmUgUlRDX0JLUDE3Ul9Qb3MgICAgICAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0JLUDE3Ul9Nc2sgICAgICAgICAgICAgICAgICAgICAgICgweEZGRkZGRkZGVSA8PCBSVENfQktQMTdSX1BvcykgICAvKiE8IDB4RkZGRkZGRkYgKi8NCiNkZWZpbmUgUlRDX0JLUDE3UiAgICAgICAgICAgICAgICAgICAgICAgICAgIFJUQ19CS1AxN1JfTXNrICAgICAgICAgICAgICAgICAgICANCg0KLyoqKioqKioqKioqKioqKioqKioqICBCaXRzIGRlZmluaXRpb24gZm9yIFJUQ19CS1AxOFIgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKi8NCiNkZWZpbmUgUlRDX0JLUDE4Ul9Qb3MgICAgICAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0JLUDE4Ul9Nc2sgICAgICAgICAgICAgICAgICAgICAgICgweEZGRkZGRkZGVSA8PCBSVENfQktQMThSX1BvcykgICAvKiE8IDB4RkZGRkZGRkYgKi8NCiNkZWZpbmUgUlRDX0JLUDE4UiAgICAgICAgICAgICAgICAgICAgICAgICAgIFJUQ19CS1AxOFJfTXNrICAgICAgICAgICAgICAgICAgICANCg0KLyoqKioqKioqKioqKioqKioqKioqICBCaXRzIGRlZmluaXRpb24gZm9yIFJUQ19CS1AxOVIgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKi8NCiNkZWZpbmUgUlRDX0JLUDE5Ul9Qb3MgICAgICAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0JLUDE5Ul9Nc2sgICAgICAgICAgICAgICAgICAgICAgICgweEZGRkZGRkZGVSA8PCBSVENfQktQMTlSX1BvcykgICAvKiE8IDB4RkZGRkZGRkYgKi8NCiNkZWZpbmUgUlRDX0JLUDE5UiAgICAgICAgICAgICAgICAgICAgICAgICAgIFJUQ19CS1AxOVJfTXNrICAgICAgICAgICAgICAgICAgICANCg0KLyoqKioqKioqKioqKioqKioqKioqICBCaXRzIGRlZmluaXRpb24gZm9yIFJUQ19CS1AyMFIgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKi8NCiNkZWZpbmUgUlRDX0JLUDIwUl9Qb3MgICAgICAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0JLUDIwUl9Nc2sgICAgICAgICAgICAgICAgICAgICAgICgweEZGRkZGRkZGVSA8PCBSVENfQktQMjBSX1BvcykgICAvKiE8IDB4RkZGRkZGRkYgKi8NCiNkZWZpbmUgUlRDX0JLUDIwUiAgICAgICAgICAgICAgICAgICAgICAgICAgIFJUQ19CS1AyMFJfTXNrICAgICAgICAgICAgICAgICAgICANCg0KLyoqKioqKioqKioqKioqKioqKioqICBCaXRzIGRlZmluaXRpb24gZm9yIFJUQ19CS1AyMVIgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKi8NCiNkZWZpbmUgUlRDX0JLUDIxUl9Qb3MgICAgICAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0JLUDIxUl9Nc2sgICAgICAgICAgICAgICAgICAgICAgICgweEZGRkZGRkZGVSA8PCBSVENfQktQMjFSX1BvcykgICAvKiE8IDB4RkZGRkZGRkYgKi8NCiNkZWZpbmUgUlRDX0JLUDIxUiAgICAgICAgICAgICAgICAgICAgICAgICAgIFJUQ19CS1AyMVJfTXNrICAgICAgICAgICAgICAgICAgICANCg0KLyoqKioqKioqKioqKioqKioqKioqICBCaXRzIGRlZmluaXRpb24gZm9yIFJUQ19CS1AyMlIgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKi8NCiNkZWZpbmUgUlRDX0JLUDIyUl9Qb3MgICAgICAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0JLUDIyUl9Nc2sgICAgICAgICAgICAgICAgICAgICAgICgweEZGRkZGRkZGVSA8PCBSVENfQktQMjJSX1BvcykgICAvKiE8IDB4RkZGRkZGRkYgKi8NCiNkZWZpbmUgUlRDX0JLUDIyUiAgICAgICAgICAgICAgICAgICAgICAgICAgIFJUQ19CS1AyMlJfTXNrICAgICAgICAgICAgICAgICAgICANCg0KLyoqKioqKioqKioqKioqKioqKioqICBCaXRzIGRlZmluaXRpb24gZm9yIFJUQ19CS1AyM1IgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKi8NCiNkZWZpbmUgUlRDX0JLUDIzUl9Qb3MgICAgICAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0JLUDIzUl9Nc2sgICAgICAgICAgICAgICAgICAgICAgICgweEZGRkZGRkZGVSA8PCBSVENfQktQMjNSX1BvcykgICAvKiE8IDB4RkZGRkZGRkYgKi8NCiNkZWZpbmUgUlRDX0JLUDIzUiAgICAgICAgICAgICAgICAgICAgICAgICAgIFJUQ19CS1AyM1JfTXNrICAgICAgICAgICAgICAgICAgICANCg0KLyoqKioqKioqKioqKioqKioqKioqICBCaXRzIGRlZmluaXRpb24gZm9yIFJUQ19CS1AyNFIgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKi8NCiNkZWZpbmUgUlRDX0JLUDI0Ul9Qb3MgICAgICAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0JLUDI0Ul9Nc2sgICAgICAgICAgICAgICAgICAgICAgICgweEZGRkZGRkZGVSA8PCBSVENfQktQMjRSX1BvcykgICAvKiE8IDB4RkZGRkZGRkYgKi8NCiNkZWZpbmUgUlRDX0JLUDI0UiAgICAgICAgICAgICAgICAgICAgICAgICAgIFJUQ19CS1AyNFJfTXNrICAgICAgICAgICAgICAgICAgICANCg0KLyoqKioqKioqKioqKioqKioqKioqICBCaXRzIGRlZmluaXRpb24gZm9yIFJUQ19CS1AyNVIgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKi8NCiNkZWZpbmUgUlRDX0JLUDI1Ul9Qb3MgICAgICAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0JLUDI1Ul9Nc2sgICAgICAgICAgICAgICAgICAgICAgICgweEZGRkZGRkZGVSA8PCBSVENfQktQMjVSX1BvcykgICAvKiE8IDB4RkZGRkZGRkYgKi8NCiNkZWZpbmUgUlRDX0JLUDI1UiAgICAgICAgICAgICAgICAgICAgICAgICAgIFJUQ19CS1AyNVJfTXNrICAgICAgICAgICAgICAgICAgICANCg0KLyoqKioqKioqKioqKioqKioqKioqICBCaXRzIGRlZmluaXRpb24gZm9yIFJUQ19CS1AyNlIgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKi8NCiNkZWZpbmUgUlRDX0JLUDI2Ul9Qb3MgICAgICAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0JLUDI2Ul9Nc2sgICAgICAgICAgICAgICAgICAgICAgICgweEZGRkZGRkZGVSA8PCBSVENfQktQMjZSX1BvcykgICAvKiE8IDB4RkZGRkZGRkYgKi8NCiNkZWZpbmUgUlRDX0JLUDI2UiAgICAgICAgICAgICAgICAgICAgICAgICAgIFJUQ19CS1AyNlJfTXNrICAgICAgICAgICAgICAgICAgICANCg0KLyoqKioqKioqKioqKioqKioqKioqICBCaXRzIGRlZmluaXRpb24gZm9yIFJUQ19CS1AyN1IgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKi8NCiNkZWZpbmUgUlRDX0JLUDI3Ul9Qb3MgICAgICAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0JLUDI3Ul9Nc2sgICAgICAgICAgICAgICAgICAgICAgICgweEZGRkZGRkZGVSA8PCBSVENfQktQMjdSX1BvcykgICAvKiE8IDB4RkZGRkZGRkYgKi8NCiNkZWZpbmUgUlRDX0JLUDI3UiAgICAgICAgICAgICAgICAgICAgICAgICAgIFJUQ19CS1AyN1JfTXNrICAgICAgICAgICAgICAgICAgICANCg0KLyoqKioqKioqKioqKioqKioqKioqICBCaXRzIGRlZmluaXRpb24gZm9yIFJUQ19CS1AyOFIgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKi8NCiNkZWZpbmUgUlRDX0JLUDI4Ul9Qb3MgICAgICAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0JLUDI4Ul9Nc2sgICAgICAgICAgICAgICAgICAgICAgICgweEZGRkZGRkZGVSA8PCBSVENfQktQMjhSX1BvcykgICAvKiE8IDB4RkZGRkZGRkYgKi8NCiNkZWZpbmUgUlRDX0JLUDI4UiAgICAgICAgICAgICAgICAgICAgICAgICAgIFJUQ19CS1AyOFJfTXNrICAgICAgICAgICAgICAgICAgICANCg0KLyoqKioqKioqKioqKioqKioqKioqICBCaXRzIGRlZmluaXRpb24gZm9yIFJUQ19CS1AyOVIgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKi8NCiNkZWZpbmUgUlRDX0JLUDI5Ul9Qb3MgICAgICAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0JLUDI5Ul9Nc2sgICAgICAgICAgICAgICAgICAgICAgICgweEZGRkZGRkZGVSA8PCBSVENfQktQMjlSX1BvcykgICAvKiE8IDB4RkZGRkZGRkYgKi8NCiNkZWZpbmUgUlRDX0JLUDI5UiAgICAgICAgICAgICAgICAgICAgICAgICAgIFJUQ19CS1AyOVJfTXNrICAgICAgICAgICAgICAgICAgICANCg0KLyoqKioqKioqKioqKioqKioqKioqICBCaXRzIGRlZmluaXRpb24gZm9yIFJUQ19CS1AzMFIgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKi8NCiNkZWZpbmUgUlRDX0JLUDMwUl9Qb3MgICAgICAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0JLUDMwUl9Nc2sgICAgICAgICAgICAgICAgICAgICAgICgweEZGRkZGRkZGVSA8PCBSVENfQktQMzBSX1BvcykgICAvKiE8IDB4RkZGRkZGRkYgKi8NCiNkZWZpbmUgUlRDX0JLUDMwUiAgICAgICAgICAgICAgICAgICAgICAgICAgIFJUQ19CS1AzMFJfTXNrICAgICAgICAgICAgICAgICAgICANCg0KLyoqKioqKioqKioqKioqKioqKioqICBCaXRzIGRlZmluaXRpb24gZm9yIFJUQ19CS1AzMVIgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKi8NCiNkZWZpbmUgUlRDX0JLUDMxUl9Qb3MgICAgICAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0JLUDMxUl9Nc2sgICAgICAgICAgICAgICAgICAgICAgICgweEZGRkZGRkZGVSA8PCBSVENfQktQMzFSX1BvcykgICAvKiE8IDB4RkZGRkZGRkYgKi8NCiNkZWZpbmUgUlRDX0JLUDMxUiAgICAgICAgICAgICAgICAgICAgICAgICAgIFJUQ19CS1AzMVJfTXNrICAgICAgICAgICAgICAgICAgICANCg0KLyoqKioqKioqKioqKioqKioqKioqIE51bWJlciBvZiBiYWNrdXAgcmVnaXN0ZXJzICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgUlRDX0JLUF9OVU1CRVIgMzINCg0KLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8NCi8qICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovDQovKiAgICAgICAgICAgICAgICAgICAgIFNlcmlhbCBQZXJpcGhlcmFsIEludGVyZmFjZSAoU1BJKSAgICAgICAgICAgICAgICAgICAgICAqLw0KLyogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8NCi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovDQoNCi8qDQogKiBAYnJpZWYgU3BlY2lmaWMgZGV2aWNlIGZlYXR1cmUgZGVmaW5pdGlvbnMgKG5vdCBwcmVzZW50IG9uIGFsbCBkZXZpY2VzIGluIHRoZSBTVE0zMkYzIHNlcmllKQ0KICovDQojZGVmaW5lIFNQSV9JMlNfU1VQUE9SVCAgICANCg0KLyoqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBTUElfQ1IxIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgU1BJX0NSMV9DUEhBX1BvcyAgICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgU1BJX0NSMV9DUEhBX01zayAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgU1BJX0NSMV9DUEhBX1BvcykgICAgICAgICAvKiE8IDB4MDAwMDAwMDEgKi8NCiNkZWZpbmUgU1BJX0NSMV9DUEhBICAgICAgICAgICAgICAgICAgICAgICAgU1BJX0NSMV9DUEhBX01zayAgICAgICAgICAgICAgICAgICAvKiE8IENsb2NrIFBoYXNlICovDQojZGVmaW5lIFNQSV9DUjFfQ1BPTF9Qb3MgICAgICAgICAgICAgICAgICAgICgxVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFNQSV9DUjFfQ1BPTF9Nc2sgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFNQSV9DUjFfQ1BPTF9Qb3MpICAgICAgICAgLyohPCAweDAwMDAwMDAyICovDQojZGVmaW5lIFNQSV9DUjFfQ1BPTCAgICAgICAgICAgICAgICAgICAgICAgIFNQSV9DUjFfQ1BPTF9Nc2sgICAgICAgICAgICAgICAgICAgLyohPCBDbG9jayBQb2xhcml0eSAqLw0KI2RlZmluZSBTUElfQ1IxX01TVFJfUG9zICAgICAgICAgICAgICAgICAgICAoMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBTUElfQ1IxX01TVFJfTXNrICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBTUElfQ1IxX01TVFJfUG9zKSAgICAgICAgIC8qITwgMHgwMDAwMDAwNCAqLw0KI2RlZmluZSBTUElfQ1IxX01TVFIgICAgICAgICAgICAgICAgICAgICAgICBTUElfQ1IxX01TVFJfTXNrICAgICAgICAgICAgICAgICAgIC8qITwgTWFzdGVyIFNlbGVjdGlvbiAqLw0KDQojZGVmaW5lIFNQSV9DUjFfQlJfUG9zICAgICAgICAgICAgICAgICAgICAgICgzVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFNQSV9DUjFfQlJfTXNrICAgICAgICAgICAgICAgICAgICAgICgweDdVIDw8IFNQSV9DUjFfQlJfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwMDM4ICovDQojZGVmaW5lIFNQSV9DUjFfQlIgICAgICAgICAgICAgICAgICAgICAgICAgIFNQSV9DUjFfQlJfTXNrICAgICAgICAgICAgICAgICAgICAgLyohPCBCUlsyOjBdIGJpdHMgKEJhdWQgUmF0ZSBDb250cm9sKSAqLw0KI2RlZmluZSBTUElfQ1IxX0JSXzAgICAgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBTUElfQ1IxX0JSX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDAwOCAqLw0KI2RlZmluZSBTUElfQ1IxX0JSXzEgICAgICAgICAgICAgICAgICAgICAgICAoMHgyVSA8PCBTUElfQ1IxX0JSX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDAxMCAqLw0KI2RlZmluZSBTUElfQ1IxX0JSXzIgICAgICAgICAgICAgICAgICAgICAgICAoMHg0VSA8PCBTUElfQ1IxX0JSX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDAyMCAqLw0KDQojZGVmaW5lIFNQSV9DUjFfU1BFX1BvcyAgICAgICAgICAgICAgICAgICAgICg2VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFNQSV9DUjFfU1BFX01zayAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFNQSV9DUjFfU1BFX1BvcykgICAgICAgICAgLyohPCAweDAwMDAwMDQwICovDQojZGVmaW5lIFNQSV9DUjFfU1BFICAgICAgICAgICAgICAgICAgICAgICAgIFNQSV9DUjFfU1BFX01zayAgICAgICAgICAgICAgICAgICAgLyohPCBTUEkgRW5hYmxlICovDQojZGVmaW5lIFNQSV9DUjFfTFNCRklSU1RfUG9zICAgICAgICAgICAgICAgICg3VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFNQSV9DUjFfTFNCRklSU1RfTXNrICAgICAgICAgICAgICAgICgweDFVIDw8IFNQSV9DUjFfTFNCRklSU1RfUG9zKSAgICAgLyohPCAweDAwMDAwMDgwICovDQojZGVmaW5lIFNQSV9DUjFfTFNCRklSU1QgICAgICAgICAgICAgICAgICAgIFNQSV9DUjFfTFNCRklSU1RfTXNrICAgICAgICAgICAgICAgLyohPCBGcmFtZSBGb3JtYXQgKi8NCiNkZWZpbmUgU1BJX0NSMV9TU0lfUG9zICAgICAgICAgICAgICAgICAgICAgKDhVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgU1BJX0NSMV9TU0lfTXNrICAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgU1BJX0NSMV9TU0lfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDAxMDAgKi8NCiNkZWZpbmUgU1BJX0NSMV9TU0kgICAgICAgICAgICAgICAgICAgICAgICAgU1BJX0NSMV9TU0lfTXNrICAgICAgICAgICAgICAgICAgICAvKiE8IEludGVybmFsIHNsYXZlIHNlbGVjdCAqLw0KI2RlZmluZSBTUElfQ1IxX1NTTV9Qb3MgICAgICAgICAgICAgICAgICAgICAoOVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBTUElfQ1IxX1NTTV9Nc2sgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBTUElfQ1IxX1NTTV9Qb3MpICAgICAgICAgIC8qITwgMHgwMDAwMDIwMCAqLw0KI2RlZmluZSBTUElfQ1IxX1NTTSAgICAgICAgICAgICAgICAgICAgICAgICBTUElfQ1IxX1NTTV9Nc2sgICAgICAgICAgICAgICAgICAgIC8qITwgU29mdHdhcmUgc2xhdmUgbWFuYWdlbWVudCAqLw0KI2RlZmluZSBTUElfQ1IxX1JYT05MWV9Qb3MgICAgICAgICAgICAgICAgICAoMTBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBTUElfQ1IxX1JYT05MWV9Nc2sgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBTUElfQ1IxX1JYT05MWV9Qb3MpICAgICAgIC8qITwgMHgwMDAwMDQwMCAqLw0KI2RlZmluZSBTUElfQ1IxX1JYT05MWSAgICAgICAgICAgICAgICAgICAgICBTUElfQ1IxX1JYT05MWV9Nc2sgICAgICAgICAgICAgICAgIC8qITwgUmVjZWl2ZSBvbmx5ICovDQojZGVmaW5lIFNQSV9DUjFfREZGX1BvcyAgICAgICAgICAgICAgICAgICAgICgxMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFNQSV9DUjFfREZGX01zayAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFNQSV9DUjFfREZGX1BvcykgICAgICAgICAgLyohPCAweDAwMDAwODAwICovDQojZGVmaW5lIFNQSV9DUjFfREZGICAgICAgICAgICAgICAgICAgICAgICAgIFNQSV9DUjFfREZGX01zayAgICAgICAgICAgICAgICAgICAgLyohPCBEYXRhIEZyYW1lIEZvcm1hdCAqLw0KI2RlZmluZSBTUElfQ1IxX0NSQ05FWFRfUG9zICAgICAgICAgICAgICAgICAoMTJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBTUElfQ1IxX0NSQ05FWFRfTXNrICAgICAgICAgICAgICAgICAoMHgxVSA8PCBTUElfQ1IxX0NSQ05FWFRfUG9zKSAgICAgIC8qITwgMHgwMDAwMTAwMCAqLw0KI2RlZmluZSBTUElfQ1IxX0NSQ05FWFQgICAgICAgICAgICAgICAgICAgICBTUElfQ1IxX0NSQ05FWFRfTXNrICAgICAgICAgICAgICAgIC8qITwgVHJhbnNtaXQgQ1JDIG5leHQgKi8NCiNkZWZpbmUgU1BJX0NSMV9DUkNFTl9Qb3MgICAgICAgICAgICAgICAgICAgKDEzVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgU1BJX0NSMV9DUkNFTl9Nc2sgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgU1BJX0NSMV9DUkNFTl9Qb3MpICAgICAgICAvKiE8IDB4MDAwMDIwMDAgKi8NCiNkZWZpbmUgU1BJX0NSMV9DUkNFTiAgICAgICAgICAgICAgICAgICAgICAgU1BJX0NSMV9DUkNFTl9Nc2sgICAgICAgICAgICAgICAgICAvKiE8IEhhcmR3YXJlIENSQyBjYWxjdWxhdGlvbiBlbmFibGUgKi8NCiNkZWZpbmUgU1BJX0NSMV9CSURJT0VfUG9zICAgICAgICAgICAgICAgICAgKDE0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgU1BJX0NSMV9CSURJT0VfTXNrICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgU1BJX0NSMV9CSURJT0VfUG9zKSAgICAgICAvKiE8IDB4MDAwMDQwMDAgKi8NCiNkZWZpbmUgU1BJX0NSMV9CSURJT0UgICAgICAgICAgICAgICAgICAgICAgU1BJX0NSMV9CSURJT0VfTXNrICAgICAgICAgICAgICAgICAvKiE8IE91dHB1dCBlbmFibGUgaW4gYmlkaXJlY3Rpb25hbCBtb2RlICovDQojZGVmaW5lIFNQSV9DUjFfQklESU1PREVfUG9zICAgICAgICAgICAgICAgICgxNVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFNQSV9DUjFfQklESU1PREVfTXNrICAgICAgICAgICAgICAgICgweDFVIDw8IFNQSV9DUjFfQklESU1PREVfUG9zKSAgICAgLyohPCAweDAwMDA4MDAwICovDQojZGVmaW5lIFNQSV9DUjFfQklESU1PREUgICAgICAgICAgICAgICAgICAgIFNQSV9DUjFfQklESU1PREVfTXNrICAgICAgICAgICAgICAgLyohPCBCaWRpcmVjdGlvbmFsIGRhdGEgbW9kZSBlbmFibGUgKi8NCg0KLyoqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBTUElfQ1IyIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgU1BJX0NSMl9SWERNQUVOX1BvcyAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgU1BJX0NSMl9SWERNQUVOX01zayAgICAgICAgICAgICAgICAgKDB4MVUgPDwgU1BJX0NSMl9SWERNQUVOX1BvcykgICAgICAvKiE8IDB4MDAwMDAwMDEgKi8NCiNkZWZpbmUgU1BJX0NSMl9SWERNQUVOICAgICAgICAgICAgICAgICAgICAgU1BJX0NSMl9SWERNQUVOX01zayAgICAgICAgICAgICAgICAvKiE8IFJ4IEJ1ZmZlciBETUEgRW5hYmxlICovDQojZGVmaW5lIFNQSV9DUjJfVFhETUFFTl9Qb3MgICAgICAgICAgICAgICAgICgxVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFNQSV9DUjJfVFhETUFFTl9Nc2sgICAgICAgICAgICAgICAgICgweDFVIDw8IFNQSV9DUjJfVFhETUFFTl9Qb3MpICAgICAgLyohPCAweDAwMDAwMDAyICovDQojZGVmaW5lIFNQSV9DUjJfVFhETUFFTiAgICAgICAgICAgICAgICAgICAgIFNQSV9DUjJfVFhETUFFTl9Nc2sgICAgICAgICAgICAgICAgLyohPCBUeCBCdWZmZXIgRE1BIEVuYWJsZSAqLw0KI2RlZmluZSBTUElfQ1IyX1NTT0VfUG9zICAgICAgICAgICAgICAgICAgICAoMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBTUElfQ1IyX1NTT0VfTXNrICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBTUElfQ1IyX1NTT0VfUG9zKSAgICAgICAgIC8qITwgMHgwMDAwMDAwNCAqLw0KI2RlZmluZSBTUElfQ1IyX1NTT0UgICAgICAgICAgICAgICAgICAgICAgICBTUElfQ1IyX1NTT0VfTXNrICAgICAgICAgICAgICAgICAgIC8qITwgU1MgT3V0cHV0IEVuYWJsZSAqLw0KI2RlZmluZSBTUElfQ1IyX0ZSRl9Qb3MgICAgICAgICAgICAgICAgICAgICAoNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBTUElfQ1IyX0ZSRl9Nc2sgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBTUElfQ1IyX0ZSRl9Qb3MpICAgICAgICAgIC8qITwgMHgwMDAwMDAxMCAqLw0KI2RlZmluZSBTUElfQ1IyX0ZSRiAgICAgICAgICAgICAgICAgICAgICAgICBTUElfQ1IyX0ZSRl9Nc2sgICAgICAgICAgICAgICAgICAgIC8qITwgRnJhbWUgZm9ybWF0ICovDQojZGVmaW5lIFNQSV9DUjJfRVJSSUVfUG9zICAgICAgICAgICAgICAgICAgICg1VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFNQSV9DUjJfRVJSSUVfTXNrICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFNQSV9DUjJfRVJSSUVfUG9zKSAgICAgICAgLyohPCAweDAwMDAwMDIwICovDQojZGVmaW5lIFNQSV9DUjJfRVJSSUUgICAgICAgICAgICAgICAgICAgICAgIFNQSV9DUjJfRVJSSUVfTXNrICAgICAgICAgICAgICAgICAgLyohPCBFcnJvciBJbnRlcnJ1cHQgRW5hYmxlICovDQojZGVmaW5lIFNQSV9DUjJfUlhORUlFX1BvcyAgICAgICAgICAgICAgICAgICg2VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFNQSV9DUjJfUlhORUlFX01zayAgICAgICAgICAgICAgICAgICgweDFVIDw8IFNQSV9DUjJfUlhORUlFX1BvcykgICAgICAgLyohPCAweDAwMDAwMDQwICovDQojZGVmaW5lIFNQSV9DUjJfUlhORUlFICAgICAgICAgICAgICAgICAgICAgIFNQSV9DUjJfUlhORUlFX01zayAgICAgICAgICAgICAgICAgLyohPCBSWCBidWZmZXIgTm90IEVtcHR5IEludGVycnVwdCBFbmFibGUgKi8NCiNkZWZpbmUgU1BJX0NSMl9UWEVJRV9Qb3MgICAgICAgICAgICAgICAgICAgKDdVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgU1BJX0NSMl9UWEVJRV9Nc2sgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgU1BJX0NSMl9UWEVJRV9Qb3MpICAgICAgICAvKiE8IDB4MDAwMDAwODAgKi8NCiNkZWZpbmUgU1BJX0NSMl9UWEVJRSAgICAgICAgICAgICAgICAgICAgICAgU1BJX0NSMl9UWEVJRV9Nc2sgICAgICAgICAgICAgICAgICAvKiE8IFR4IGJ1ZmZlciBFbXB0eSBJbnRlcnJ1cHQgRW5hYmxlICovDQoNCi8qKioqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFNQSV9TUiByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIFNQSV9TUl9SWE5FX1BvcyAgICAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFNQSV9TUl9SWE5FX01zayAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFNQSV9TUl9SWE5FX1BvcykgICAgICAgICAgLyohPCAweDAwMDAwMDAxICovDQojZGVmaW5lIFNQSV9TUl9SWE5FICAgICAgICAgICAgICAgICAgICAgICAgIFNQSV9TUl9SWE5FX01zayAgICAgICAgICAgICAgICAgICAgLyohPCBSZWNlaXZlIGJ1ZmZlciBOb3QgRW1wdHkgKi8NCiNkZWZpbmUgU1BJX1NSX1RYRV9Qb3MgICAgICAgICAgICAgICAgICAgICAgKDFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgU1BJX1NSX1RYRV9Nc2sgICAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgU1BJX1NSX1RYRV9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDIgKi8NCiNkZWZpbmUgU1BJX1NSX1RYRSAgICAgICAgICAgICAgICAgICAgICAgICAgU1BJX1NSX1RYRV9Nc2sgICAgICAgICAgICAgICAgICAgICAvKiE8IFRyYW5zbWl0IGJ1ZmZlciBFbXB0eSAqLw0KI2RlZmluZSBTUElfU1JfQ0hTSURFX1BvcyAgICAgICAgICAgICAgICAgICAoMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBTUElfU1JfQ0hTSURFX01zayAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBTUElfU1JfQ0hTSURFX1BvcykgICAgICAgIC8qITwgMHgwMDAwMDAwNCAqLw0KI2RlZmluZSBTUElfU1JfQ0hTSURFICAgICAgICAgICAgICAgICAgICAgICBTUElfU1JfQ0hTSURFX01zayAgICAgICAgICAgICAgICAgIC8qITwgQ2hhbm5lbCBzaWRlICovDQojZGVmaW5lIFNQSV9TUl9VRFJfUG9zICAgICAgICAgICAgICAgICAgICAgICgzVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFNQSV9TUl9VRFJfTXNrICAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFNQSV9TUl9VRFJfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwMDA4ICovDQojZGVmaW5lIFNQSV9TUl9VRFIgICAgICAgICAgICAgICAgICAgICAgICAgIFNQSV9TUl9VRFJfTXNrICAgICAgICAgICAgICAgICAgICAgLyohPCBVbmRlcnJ1biBmbGFnICovDQojZGVmaW5lIFNQSV9TUl9DUkNFUlJfUG9zICAgICAgICAgICAgICAgICAgICg0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFNQSV9TUl9DUkNFUlJfTXNrICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFNQSV9TUl9DUkNFUlJfUG9zKSAgICAgICAgLyohPCAweDAwMDAwMDEwICovDQojZGVmaW5lIFNQSV9TUl9DUkNFUlIgICAgICAgICAgICAgICAgICAgICAgIFNQSV9TUl9DUkNFUlJfTXNrICAgICAgICAgICAgICAgICAgLyohPCBDUkMgRXJyb3IgZmxhZyAqLw0KI2RlZmluZSBTUElfU1JfTU9ERl9Qb3MgICAgICAgICAgICAgICAgICAgICAoNVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBTUElfU1JfTU9ERl9Nc2sgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBTUElfU1JfTU9ERl9Qb3MpICAgICAgICAgIC8qITwgMHgwMDAwMDAyMCAqLw0KI2RlZmluZSBTUElfU1JfTU9ERiAgICAgICAgICAgICAgICAgICAgICAgICBTUElfU1JfTU9ERl9Nc2sgICAgICAgICAgICAgICAgICAgIC8qITwgTW9kZSBmYXVsdCAqLw0KI2RlZmluZSBTUElfU1JfT1ZSX1BvcyAgICAgICAgICAgICAgICAgICAgICAoNlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBTUElfU1JfT1ZSX01zayAgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBTUElfU1JfT1ZSX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDA0MCAqLw0KI2RlZmluZSBTUElfU1JfT1ZSICAgICAgICAgICAgICAgICAgICAgICAgICBTUElfU1JfT1ZSX01zayAgICAgICAgICAgICAgICAgICAgIC8qITwgT3ZlcnJ1biBmbGFnICovDQojZGVmaW5lIFNQSV9TUl9CU1lfUG9zICAgICAgICAgICAgICAgICAgICAgICg3VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFNQSV9TUl9CU1lfTXNrICAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFNQSV9TUl9CU1lfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwMDgwICovDQojZGVmaW5lIFNQSV9TUl9CU1kgICAgICAgICAgICAgICAgICAgICAgICAgIFNQSV9TUl9CU1lfTXNrICAgICAgICAgICAgICAgICAgICAgLyohPCBCdXN5IGZsYWcgKi8NCiNkZWZpbmUgU1BJX1NSX0ZSRV9Qb3MgICAgICAgICAgICAgICAgICAgICAgKDhVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgU1BJX1NSX0ZSRV9Nc2sgICAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgU1BJX1NSX0ZSRV9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDAxMDAgKi8NCiNkZWZpbmUgU1BJX1NSX0ZSRSAgICAgICAgICAgICAgICAgICAgICAgICAgU1BJX1NSX0ZSRV9Nc2sgICAgICAgICAgICAgICAgICAgICAvKiE8RnJhbWUgZm9ybWF0IGVycm9yIGZsYWcgICovDQoNCi8qKioqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFNQSV9EUiByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIFNQSV9EUl9EUl9Qb3MgICAgICAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFNQSV9EUl9EUl9Nc2sgICAgICAgICAgICAgICAgICAgICAgICgweEZGRkZVIDw8IFNQSV9EUl9EUl9Qb3MpICAgICAgICAgLyohPCAweDAwMDBGRkZGICovDQojZGVmaW5lIFNQSV9EUl9EUiAgICAgICAgICAgICAgICAgICAgICAgICAgIFNQSV9EUl9EUl9Nc2sgICAgICAgICAgICAgICAgICAgICAgLyohPCBEYXRhIFJlZ2lzdGVyICovDQoNCi8qKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgU1BJX0NSQ1BSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIFNQSV9DUkNQUl9DUkNQT0xZX1BvcyAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFNQSV9DUkNQUl9DUkNQT0xZX01zayAgICAgICAgICAgICAgICgweEZGRkZVIDw8IFNQSV9DUkNQUl9DUkNQT0xZX1BvcykgLyohPCAweDAwMDBGRkZGICovDQojZGVmaW5lIFNQSV9DUkNQUl9DUkNQT0xZICAgICAgICAgICAgICAgICAgIFNQSV9DUkNQUl9DUkNQT0xZX01zayAgICAgICAgICAgICAgLyohPCBDUkMgcG9seW5vbWlhbCByZWdpc3RlciAqLw0KDQovKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgU1BJX1JYQ1JDUiByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBTUElfUlhDUkNSX1JYQ1JDX1BvcyAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBTUElfUlhDUkNSX1JYQ1JDX01zayAgICAgICAgICAgICAgICAoMHhGRkZGVSA8PCBTUElfUlhDUkNSX1JYQ1JDX1BvcykgIC8qITwgMHgwMDAwRkZGRiAqLw0KI2RlZmluZSBTUElfUlhDUkNSX1JYQ1JDICAgICAgICAgICAgICAgICAgICBTUElfUlhDUkNSX1JYQ1JDX01zayAgICAgICAgICAgICAgIC8qITwgUnggQ1JDIFJlZ2lzdGVyICovDQoNCi8qKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBTUElfVFhDUkNSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIFNQSV9UWENSQ1JfVFhDUkNfUG9zICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFNQSV9UWENSQ1JfVFhDUkNfTXNrICAgICAgICAgICAgICAgICgweEZGRkZVIDw8IFNQSV9UWENSQ1JfVFhDUkNfUG9zKSAgLyohPCAweDAwMDBGRkZGICovDQojZGVmaW5lIFNQSV9UWENSQ1JfVFhDUkMgICAgICAgICAgICAgICAgICAgIFNQSV9UWENSQ1JfVFhDUkNfTXNrICAgICAgICAgICAgICAgLyohPCBUeCBDUkMgUmVnaXN0ZXIgKi8NCg0KLyoqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFNQSV9JMlNDRkdSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgU1BJX0kyU0NGR1JfQ0hMRU5fUG9zICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgU1BJX0kyU0NGR1JfQ0hMRU5fTXNrICAgICAgICAgICAgICAgKDB4MVUgPDwgU1BJX0kyU0NGR1JfQ0hMRU5fUG9zKSAgICAvKiE8IDB4MDAwMDAwMDEgKi8NCiNkZWZpbmUgU1BJX0kyU0NGR1JfQ0hMRU4gICAgICAgICAgICAgICAgICAgU1BJX0kyU0NGR1JfQ0hMRU5fTXNrICAgICAgICAgICAgICAvKiE8Q2hhbm5lbCBsZW5ndGggKG51bWJlciBvZiBiaXRzIHBlciBhdWRpbyBjaGFubmVsKSAqLw0KDQojZGVmaW5lIFNQSV9JMlNDRkdSX0RBVExFTl9Qb3MgICAgICAgICAgICAgICgxVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFNQSV9JMlNDRkdSX0RBVExFTl9Nc2sgICAgICAgICAgICAgICgweDNVIDw8IFNQSV9JMlNDRkdSX0RBVExFTl9Qb3MpICAgLyohPCAweDAwMDAwMDA2ICovDQojZGVmaW5lIFNQSV9JMlNDRkdSX0RBVExFTiAgICAgICAgICAgICAgICAgIFNQSV9JMlNDRkdSX0RBVExFTl9Nc2sgICAgICAgICAgICAgLyohPERBVExFTlsxOjBdIGJpdHMgKERhdGEgbGVuZ3RoIHRvIGJlIHRyYW5zZmVycmVkKSAqLw0KI2RlZmluZSBTUElfSTJTQ0ZHUl9EQVRMRU5fMCAgICAgICAgICAgICAgICAoMHgxVSA8PCBTUElfSTJTQ0ZHUl9EQVRMRU5fUG9zKSAgIC8qITwgMHgwMDAwMDAwMiAqLw0KI2RlZmluZSBTUElfSTJTQ0ZHUl9EQVRMRU5fMSAgICAgICAgICAgICAgICAoMHgyVSA8PCBTUElfSTJTQ0ZHUl9EQVRMRU5fUG9zKSAgIC8qITwgMHgwMDAwMDAwNCAqLw0KDQojZGVmaW5lIFNQSV9JMlNDRkdSX0NLUE9MX1BvcyAgICAgICAgICAgICAgICgzVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFNQSV9JMlNDRkdSX0NLUE9MX01zayAgICAgICAgICAgICAgICgweDFVIDw8IFNQSV9JMlNDRkdSX0NLUE9MX1BvcykgICAgLyohPCAweDAwMDAwMDA4ICovDQojZGVmaW5lIFNQSV9JMlNDRkdSX0NLUE9MICAgICAgICAgICAgICAgICAgIFNQSV9JMlNDRkdSX0NLUE9MX01zayAgICAgICAgICAgICAgLyohPHN0ZWFkeSBzdGF0ZSBjbG9jayBwb2xhcml0eSAqLw0KDQojZGVmaW5lIFNQSV9JMlNDRkdSX0kyU1NURF9Qb3MgICAgICAgICAgICAgICg0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFNQSV9JMlNDRkdSX0kyU1NURF9Nc2sgICAgICAgICAgICAgICgweDNVIDw8IFNQSV9JMlNDRkdSX0kyU1NURF9Qb3MpICAgLyohPCAweDAwMDAwMDMwICovDQojZGVmaW5lIFNQSV9JMlNDRkdSX0kyU1NURCAgICAgICAgICAgICAgICAgIFNQSV9JMlNDRkdSX0kyU1NURF9Nc2sgICAgICAgICAgICAgLyohPEkyU1NURFsxOjBdIGJpdHMgKEkyUyBzdGFuZGFyZCBzZWxlY3Rpb24pICovDQojZGVmaW5lIFNQSV9JMlNDRkdSX0kyU1NURF8wICAgICAgICAgICAgICAgICgweDFVIDw8IFNQSV9JMlNDRkdSX0kyU1NURF9Qb3MpICAgLyohPCAweDAwMDAwMDEwICovDQojZGVmaW5lIFNQSV9JMlNDRkdSX0kyU1NURF8xICAgICAgICAgICAgICAgICgweDJVIDw8IFNQSV9JMlNDRkdSX0kyU1NURF9Qb3MpICAgLyohPCAweDAwMDAwMDIwICovDQoNCiNkZWZpbmUgU1BJX0kyU0NGR1JfUENNU1lOQ19Qb3MgICAgICAgICAgICAgKDdVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgU1BJX0kyU0NGR1JfUENNU1lOQ19Nc2sgICAgICAgICAgICAgKDB4MVUgPDwgU1BJX0kyU0NGR1JfUENNU1lOQ19Qb3MpICAvKiE8IDB4MDAwMDAwODAgKi8NCiNkZWZpbmUgU1BJX0kyU0NGR1JfUENNU1lOQyAgICAgICAgICAgICAgICAgU1BJX0kyU0NGR1JfUENNU1lOQ19Nc2sgICAgICAgICAgICAvKiE8UENNIGZyYW1lIHN5bmNocm9uaXphdGlvbiAqLw0KDQojZGVmaW5lIFNQSV9JMlNDRkdSX0kyU0NGR19Qb3MgICAgICAgICAgICAgICg4VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFNQSV9JMlNDRkdSX0kyU0NGR19Nc2sgICAgICAgICAgICAgICgweDNVIDw8IFNQSV9JMlNDRkdSX0kyU0NGR19Qb3MpICAgLyohPCAweDAwMDAwMzAwICovDQojZGVmaW5lIFNQSV9JMlNDRkdSX0kyU0NGRyAgICAgICAgICAgICAgICAgIFNQSV9JMlNDRkdSX0kyU0NGR19Nc2sgICAgICAgICAgICAgLyohPEkyU0NGR1sxOjBdIGJpdHMgKEkyUyBjb25maWd1cmF0aW9uIG1vZGUpICovDQojZGVmaW5lIFNQSV9JMlNDRkdSX0kyU0NGR18wICAgICAgICAgICAgICAgICgweDFVIDw8IFNQSV9JMlNDRkdSX0kyU0NGR19Qb3MpICAgLyohPCAweDAwMDAwMTAwICovDQojZGVmaW5lIFNQSV9JMlNDRkdSX0kyU0NGR18xICAgICAgICAgICAgICAgICgweDJVIDw8IFNQSV9JMlNDRkdSX0kyU0NGR19Qb3MpICAgLyohPCAweDAwMDAwMjAwICovDQoNCiNkZWZpbmUgU1BJX0kyU0NGR1JfSTJTRV9Qb3MgICAgICAgICAgICAgICAgKDEwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgU1BJX0kyU0NGR1JfSTJTRV9Nc2sgICAgICAgICAgICAgICAgKDB4MVUgPDwgU1BJX0kyU0NGR1JfSTJTRV9Qb3MpICAgICAvKiE8IDB4MDAwMDA0MDAgKi8NCiNkZWZpbmUgU1BJX0kyU0NGR1JfSTJTRSAgICAgICAgICAgICAgICAgICAgU1BJX0kyU0NGR1JfSTJTRV9Nc2sgICAgICAgICAgICAgICAvKiE8STJTIEVuYWJsZSAqLw0KI2RlZmluZSBTUElfSTJTQ0ZHUl9JMlNNT0RfUG9zICAgICAgICAgICAgICAoMTFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBTUElfSTJTQ0ZHUl9JMlNNT0RfTXNrICAgICAgICAgICAgICAoMHgxVSA8PCBTUElfSTJTQ0ZHUl9JMlNNT0RfUG9zKSAgIC8qITwgMHgwMDAwMDgwMCAqLw0KI2RlZmluZSBTUElfSTJTQ0ZHUl9JMlNNT0QgICAgICAgICAgICAgICAgICBTUElfSTJTQ0ZHUl9JMlNNT0RfTXNrICAgICAgICAgICAgIC8qITxJMlMgbW9kZSBzZWxlY3Rpb24gKi8NCg0KLyoqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFNQSV9JMlNQUiByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgU1BJX0kyU1BSX0kyU0RJVl9Qb3MgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgU1BJX0kyU1BSX0kyU0RJVl9Nc2sgICAgICAgICAgICAgICAgKDB4RkZVIDw8IFNQSV9JMlNQUl9JMlNESVZfUG9zKSAgICAvKiE8IDB4MDAwMDAwRkYgKi8NCiNkZWZpbmUgU1BJX0kyU1BSX0kyU0RJViAgICAgICAgICAgICAgICAgICAgU1BJX0kyU1BSX0kyU0RJVl9Nc2sgICAgICAgICAgICAgICAvKiE8STJTIExpbmVhciBwcmVzY2FsZXIgKi8NCiNkZWZpbmUgU1BJX0kyU1BSX09ERF9Qb3MgICAgICAgICAgICAgICAgICAgKDhVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgU1BJX0kyU1BSX09ERF9Nc2sgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgU1BJX0kyU1BSX09ERF9Qb3MpICAgICAgICAvKiE8IDB4MDAwMDAxMDAgKi8NCiNkZWZpbmUgU1BJX0kyU1BSX09ERCAgICAgICAgICAgICAgICAgICAgICAgU1BJX0kyU1BSX09ERF9Nc2sgICAgICAgICAgICAgICAgICAvKiE8T2RkIGZhY3RvciBmb3IgdGhlIHByZXNjYWxlciAqLw0KI2RlZmluZSBTUElfSTJTUFJfTUNLT0VfUG9zICAgICAgICAgICAgICAgICAoOVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBTUElfSTJTUFJfTUNLT0VfTXNrICAgICAgICAgICAgICAgICAoMHgxVSA8PCBTUElfSTJTUFJfTUNLT0VfUG9zKSAgICAgIC8qITwgMHgwMDAwMDIwMCAqLw0KI2RlZmluZSBTUElfSTJTUFJfTUNLT0UgICAgICAgICAgICAgICAgICAgICBTUElfSTJTUFJfTUNLT0VfTXNrICAgICAgICAgICAgICAgIC8qITxNYXN0ZXIgQ2xvY2sgT3V0cHV0IEVuYWJsZSAqLw0KDQovKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLw0KLyogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8NCi8qICAgICAgICAgICAgICAgICAgICAgICBTeXN0ZW0gQ29uZmlndXJhdGlvbiAoU1lTQ0ZHKSAgICAgICAgICAgICAgICAgICAgICAgICovDQovKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLw0KLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8NCi8qKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFNZU0NGR19NRU1STVAgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKiovDQojZGVmaW5lIFNZU0NGR19NRU1STVBfTUVNX01PREVfUG9zICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFNZU0NGR19NRU1STVBfTUVNX01PREVfTXNrICAgICAgKDB4M1UgPDwgU1lTQ0ZHX01FTVJNUF9NRU1fTU9ERV9Qb3MpICAgLyohPCAweDAwMDAwMDAzICovDQojZGVmaW5lIFNZU0NGR19NRU1STVBfTUVNX01PREUgICAgICAgICAgU1lTQ0ZHX01FTVJNUF9NRU1fTU9ERV9Nc2sgICAgICAgICAgICAgLyohPCBTWVNDRkdfTWVtb3J5IFJlbWFwIENvbmZpZyAqLw0KI2RlZmluZSBTWVNDRkdfTUVNUk1QX01FTV9NT0RFXzAgICAgICAgICgweDFVIDw8IFNZU0NGR19NRU1STVBfTUVNX01PREVfUG9zKSAgIC8qITwgMHgwMDAwMDAwMSAqLw0KI2RlZmluZSBTWVNDRkdfTUVNUk1QX01FTV9NT0RFXzEgICAgICAgICgweDJVIDw8IFNZU0NGR19NRU1STVBfTUVNX01PREVfUG9zKSAgIC8qITwgMHgwMDAwMDAwMiAqLw0KI2RlZmluZSBTWVNDRkdfTUVNUk1QX0JPT1RfTU9ERV9Qb3MgICAgICg4VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBTWVNDRkdfTUVNUk1QX0JPT1RfTU9ERV9Nc2sgICAgICgweDNVIDw8IFNZU0NGR19NRU1STVBfQk9PVF9NT0RFX1BvcykgIC8qITwgMHgwMDAwMDMwMCAqLw0KI2RlZmluZSBTWVNDRkdfTUVNUk1QX0JPT1RfTU9ERSAgICAgICAgIFNZU0NGR19NRU1STVBfQk9PVF9NT0RFX01zayAgICAgICAgICAgIC8qITwgQm9vdCBtb2RlIENvbmZpZyAqLw0KI2RlZmluZSBTWVNDRkdfTUVNUk1QX0JPT1RfTU9ERV8wICAgICAgICgweDFVIDw8IFNZU0NGR19NRU1STVBfQk9PVF9NT0RFX1BvcykgIC8qITwgMHgwMDAwMDEwMCAqLw0KI2RlZmluZSBTWVNDRkdfTUVNUk1QX0JPT1RfTU9ERV8xICAgICAgICgweDJVIDw8IFNZU0NGR19NRU1STVBfQk9PVF9NT0RFX1BvcykgIC8qITwgMHgwMDAwMDIwMCAqLw0KDQovKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBTWVNDRkdfUE1DIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBTWVNDRkdfUE1DX1VTQl9QVV9Qb3MgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBTWVNDRkdfUE1DX1VTQl9QVV9Nc2sgICAgICAgICAgICgweDFVIDw8IFNZU0NGR19QTUNfVVNCX1BVX1BvcykgICAgICAgIC8qITwgMHgwMDAwMDAwMSAqLw0KI2RlZmluZSBTWVNDRkdfUE1DX1VTQl9QVSAgICAgICAgICAgICAgIFNZU0NGR19QTUNfVVNCX1BVX01zayAgICAgICAgICAgICAgICAgIC8qITwgU1lTQ0ZHIFBNQyAqLw0KI2RlZmluZSBTWVNDRkdfUE1DX0xDRF9DQVBBX1BvcyAgICAgICAgICgxVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBTWVNDRkdfUE1DX0xDRF9DQVBBX01zayAgICAgICAgICgweDFGVSA8PCBTWVNDRkdfUE1DX0xDRF9DQVBBX1BvcykgICAgIC8qITwgMHgwMDAwMDAzRSAqLw0KI2RlZmluZSBTWVNDRkdfUE1DX0xDRF9DQVBBICAgICAgICAgICAgIFNZU0NGR19QTUNfTENEX0NBUEFfTXNrICAgICAgICAgICAgICAgIC8qITwgTENEX0NBUEEgZGVjb3VwbGluZyBjYXBhY2l0YW5jZSBjb25uZWN0aW9uICovDQojZGVmaW5lIFNZU0NGR19QTUNfTENEX0NBUEFfMCAgICAgICAgICAgKDB4MDFVIDw8IFNZU0NGR19QTUNfTENEX0NBUEFfUG9zKSAgICAgLyohPCAweDAwMDAwMDAyICovDQojZGVmaW5lIFNZU0NGR19QTUNfTENEX0NBUEFfMSAgICAgICAgICAgKDB4MDJVIDw8IFNZU0NGR19QTUNfTENEX0NBUEFfUG9zKSAgICAgLyohPCAweDAwMDAwMDA0ICovDQojZGVmaW5lIFNZU0NGR19QTUNfTENEX0NBUEFfMiAgICAgICAgICAgKDB4MDRVIDw8IFNZU0NGR19QTUNfTENEX0NBUEFfUG9zKSAgICAgLyohPCAweDAwMDAwMDA4ICovDQojZGVmaW5lIFNZU0NGR19QTUNfTENEX0NBUEFfMyAgICAgICAgICAgKDB4MDhVIDw8IFNZU0NGR19QTUNfTENEX0NBUEFfUG9zKSAgICAgLyohPCAweDAwMDAwMDEwICovDQojZGVmaW5lIFNZU0NGR19QTUNfTENEX0NBUEFfNCAgICAgICAgICAgKDB4MTBVIDw8IFNZU0NGR19QTUNfTENEX0NBUEFfUG9zKSAgICAgLyohPCAweDAwMDAwMDIwICovDQoNCi8qKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFNZU0NGR19FWFRJQ1IxIHJlZ2lzdGVyICAqKioqKioqKioqKioqKiovDQojZGVmaW5lIFNZU0NGR19FWFRJQ1IxX0VYVEkwX1BvcyAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFNZU0NGR19FWFRJQ1IxX0VYVEkwX01zayAgICAgICAgKDB4RlUgPDwgU1lTQ0ZHX0VYVElDUjFfRVhUSTBfUG9zKSAgICAgLyohPCAweDAwMDAwMDBGICovDQojZGVmaW5lIFNZU0NGR19FWFRJQ1IxX0VYVEkwICAgICAgICAgICAgU1lTQ0ZHX0VYVElDUjFfRVhUSTBfTXNrICAgICAgICAgICAgICAgLyohPCBFWFRJIDAgY29uZmlndXJhdGlvbiAqLw0KI2RlZmluZSBTWVNDRkdfRVhUSUNSMV9FWFRJMV9Qb3MgICAgICAgICg0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBTWVNDRkdfRVhUSUNSMV9FWFRJMV9Nc2sgICAgICAgICgweEZVIDw8IFNZU0NGR19FWFRJQ1IxX0VYVEkxX1BvcykgICAgIC8qITwgMHgwMDAwMDBGMCAqLw0KI2RlZmluZSBTWVNDRkdfRVhUSUNSMV9FWFRJMSAgICAgICAgICAgIFNZU0NGR19FWFRJQ1IxX0VYVEkxX01zayAgICAgICAgICAgICAgIC8qITwgRVhUSSAxIGNvbmZpZ3VyYXRpb24gKi8NCiNkZWZpbmUgU1lTQ0ZHX0VYVElDUjFfRVhUSTJfUG9zICAgICAgICAoOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgU1lTQ0ZHX0VYVElDUjFfRVhUSTJfTXNrICAgICAgICAoMHhGVSA8PCBTWVNDRkdfRVhUSUNSMV9FWFRJMl9Qb3MpICAgICAvKiE8IDB4MDAwMDBGMDAgKi8NCiNkZWZpbmUgU1lTQ0ZHX0VYVElDUjFfRVhUSTIgICAgICAgICAgICBTWVNDRkdfRVhUSUNSMV9FWFRJMl9Nc2sgICAgICAgICAgICAgICAvKiE8IEVYVEkgMiBjb25maWd1cmF0aW9uICovDQojZGVmaW5lIFNZU0NGR19FWFRJQ1IxX0VYVEkzX1BvcyAgICAgICAgKDEyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFNZU0NGR19FWFRJQ1IxX0VYVEkzX01zayAgICAgICAgKDB4RlUgPDwgU1lTQ0ZHX0VYVElDUjFfRVhUSTNfUG9zKSAgICAgLyohPCAweDAwMDBGMDAwICovDQojZGVmaW5lIFNZU0NGR19FWFRJQ1IxX0VYVEkzICAgICAgICAgICAgU1lTQ0ZHX0VYVElDUjFfRVhUSTNfTXNrICAgICAgICAgICAgICAgLyohPCBFWFRJIDMgY29uZmlndXJhdGlvbiAqLw0KDQovKiogDQogICogQGJyaWVmICBFWFRJMCBjb25maWd1cmF0aW9uICANCiAgKi8gDQojZGVmaW5lIFNZU0NGR19FWFRJQ1IxX0VYVEkwX1BBICAgICAgICAgKDB4MDAwMDAwMDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBQQVswXSBwaW4gKi8NCiNkZWZpbmUgU1lTQ0ZHX0VYVElDUjFfRVhUSTBfUEIgICAgICAgICAoMHgwMDAwMDAwMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBCWzBdIHBpbiAqLw0KI2RlZmluZSBTWVNDRkdfRVhUSUNSMV9FWFRJMF9QQyAgICAgICAgICgweDAwMDAwMDAyVSkgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgUENbMF0gcGluICovDQojZGVmaW5lIFNZU0NGR19FWFRJQ1IxX0VYVEkwX1BEICAgICAgICAgKDB4MDAwMDAwMDNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBQRFswXSBwaW4gKi8NCiNkZWZpbmUgU1lTQ0ZHX0VYVElDUjFfRVhUSTBfUEUgICAgICAgICAoMHgwMDAwMDAwNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBFWzBdIHBpbiAqLw0KI2RlZmluZSBTWVNDRkdfRVhUSUNSMV9FWFRJMF9QSCAgICAgICAgICgweDAwMDAwMDA1VSkgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgUEhbMF0gcGluICovDQojZGVmaW5lIFNZU0NGR19FWFRJQ1IxX0VYVEkwX1BGICAgICAgICAgKDB4MDAwMDAwMDZVKSAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBQRlswXSBwaW4gKi8NCiNkZWZpbmUgU1lTQ0ZHX0VYVElDUjFfRVhUSTBfUEcgICAgICAgICAoMHgwMDAwMDAwN1UpICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBHWzBdIHBpbiAqLw0KDQovKiogDQogICogQGJyaWVmICBFWFRJMSBjb25maWd1cmF0aW9uICANCiAgKi8gDQojZGVmaW5lIFNZU0NGR19FWFRJQ1IxX0VYVEkxX1BBICAgICAgICAgKDB4MDAwMDAwMDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBQQVsxXSBwaW4gKi8NCiNkZWZpbmUgU1lTQ0ZHX0VYVElDUjFfRVhUSTFfUEIgICAgICAgICAoMHgwMDAwMDAxMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBCWzFdIHBpbiAqLw0KI2RlZmluZSBTWVNDRkdfRVhUSUNSMV9FWFRJMV9QQyAgICAgICAgICgweDAwMDAwMDIwVSkgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgUENbMV0gcGluICovDQojZGVmaW5lIFNZU0NGR19FWFRJQ1IxX0VYVEkxX1BEICAgICAgICAgKDB4MDAwMDAwMzBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBQRFsxXSBwaW4gKi8NCiNkZWZpbmUgU1lTQ0ZHX0VYVElDUjFfRVhUSTFfUEUgICAgICAgICAoMHgwMDAwMDA0MFUpICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBFWzFdIHBpbiAqLw0KI2RlZmluZSBTWVNDRkdfRVhUSUNSMV9FWFRJMV9QSCAgICAgICAgICgweDAwMDAwMDUwVSkgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgUEhbMV0gcGluICovDQojZGVmaW5lIFNZU0NGR19FWFRJQ1IxX0VYVEkxX1BGICAgICAgICAgKDB4MDAwMDAwNjBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBQRlsxXSBwaW4gKi8NCiNkZWZpbmUgU1lTQ0ZHX0VYVElDUjFfRVhUSTFfUEcgICAgICAgICAoMHgwMDAwMDA3MFUpICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBHWzFdIHBpbiAqLw0KDQovKiogDQogICogQGJyaWVmICBFWFRJMiBjb25maWd1cmF0aW9uICANCiAgKi8gDQojZGVmaW5lIFNZU0NGR19FWFRJQ1IxX0VYVEkyX1BBICAgICAgICAgKDB4MDAwMDAwMDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBQQVsyXSBwaW4gKi8NCiNkZWZpbmUgU1lTQ0ZHX0VYVElDUjFfRVhUSTJfUEIgICAgICAgICAoMHgwMDAwMDEwMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBCWzJdIHBpbiAqLw0KI2RlZmluZSBTWVNDRkdfRVhUSUNSMV9FWFRJMl9QQyAgICAgICAgICgweDAwMDAwMjAwVSkgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgUENbMl0gcGluICovDQojZGVmaW5lIFNZU0NGR19FWFRJQ1IxX0VYVEkyX1BEICAgICAgICAgKDB4MDAwMDAzMDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBQRFsyXSBwaW4gKi8NCiNkZWZpbmUgU1lTQ0ZHX0VYVElDUjFfRVhUSTJfUEUgICAgICAgICAoMHgwMDAwMDQwMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBFWzJdIHBpbiAqLw0KI2RlZmluZSBTWVNDRkdfRVhUSUNSMV9FWFRJMl9QSCAgICAgICAgICgweDAwMDAwNTAwVSkgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgUEhbMl0gcGluICovDQojZGVmaW5lIFNZU0NGR19FWFRJQ1IxX0VYVEkyX1BGICAgICAgICAgKDB4MDAwMDA2MDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBQRlsyXSBwaW4gKi8NCiNkZWZpbmUgU1lTQ0ZHX0VYVElDUjFfRVhUSTJfUEcgICAgICAgICAoMHgwMDAwMDcwMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBHWzJdIHBpbiAqLw0KDQovKiogDQogICogQGJyaWVmICBFWFRJMyBjb25maWd1cmF0aW9uICANCiAgKi8gDQojZGVmaW5lIFNZU0NGR19FWFRJQ1IxX0VYVEkzX1BBICAgICAgICAgKDB4MDAwMDAwMDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBQQVszXSBwaW4gKi8NCiNkZWZpbmUgU1lTQ0ZHX0VYVElDUjFfRVhUSTNfUEIgICAgICAgICAoMHgwMDAwMTAwMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBCWzNdIHBpbiAqLw0KI2RlZmluZSBTWVNDRkdfRVhUSUNSMV9FWFRJM19QQyAgICAgICAgICgweDAwMDAyMDAwVSkgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgUENbM10gcGluICovDQojZGVmaW5lIFNZU0NGR19FWFRJQ1IxX0VYVEkzX1BEICAgICAgICAgKDB4MDAwMDMwMDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBQRFszXSBwaW4gKi8NCiNkZWZpbmUgU1lTQ0ZHX0VYVElDUjFfRVhUSTNfUEUgICAgICAgICAoMHgwMDAwNDAwMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBFWzNdIHBpbiAqLw0KI2RlZmluZSBTWVNDRkdfRVhUSUNSMV9FWFRJM19QRiAgICAgICAgICgweDAwMDAzMDAwVSkgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgUEZbM10gcGluICovDQojZGVmaW5lIFNZU0NGR19FWFRJQ1IxX0VYVEkzX1BHICAgICAgICAgKDB4MDAwMDQwMDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBQR1szXSBwaW4gKi8NCg0KLyoqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgU1lTQ0ZHX0VYVElDUjIgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBTWVNDRkdfRVhUSUNSMl9FWFRJNF9Qb3MgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBTWVNDRkdfRVhUSUNSMl9FWFRJNF9Nc2sgICAgICAgICgweEZVIDw8IFNZU0NGR19FWFRJQ1IyX0VYVEk0X1BvcykgICAgIC8qITwgMHgwMDAwMDAwRiAqLw0KI2RlZmluZSBTWVNDRkdfRVhUSUNSMl9FWFRJNCAgICAgICAgICAgIFNZU0NGR19FWFRJQ1IyX0VYVEk0X01zayAgICAgICAgICAgICAgIC8qITwgRVhUSSA0IGNvbmZpZ3VyYXRpb24gKi8NCiNkZWZpbmUgU1lTQ0ZHX0VYVElDUjJfRVhUSTVfUG9zICAgICAgICAoNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgU1lTQ0ZHX0VYVElDUjJfRVhUSTVfTXNrICAgICAgICAoMHhGVSA8PCBTWVNDRkdfRVhUSUNSMl9FWFRJNV9Qb3MpICAgICAvKiE8IDB4MDAwMDAwRjAgKi8NCiNkZWZpbmUgU1lTQ0ZHX0VYVElDUjJfRVhUSTUgICAgICAgICAgICBTWVNDRkdfRVhUSUNSMl9FWFRJNV9Nc2sgICAgICAgICAgICAgICAvKiE8IEVYVEkgNSBjb25maWd1cmF0aW9uICovDQojZGVmaW5lIFNZU0NGR19FWFRJQ1IyX0VYVEk2X1BvcyAgICAgICAgKDhVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFNZU0NGR19FWFRJQ1IyX0VYVEk2X01zayAgICAgICAgKDB4RlUgPDwgU1lTQ0ZHX0VYVElDUjJfRVhUSTZfUG9zKSAgICAgLyohPCAweDAwMDAwRjAwICovDQojZGVmaW5lIFNZU0NGR19FWFRJQ1IyX0VYVEk2ICAgICAgICAgICAgU1lTQ0ZHX0VYVElDUjJfRVhUSTZfTXNrICAgICAgICAgICAgICAgLyohPCBFWFRJIDYgY29uZmlndXJhdGlvbiAqLw0KI2RlZmluZSBTWVNDRkdfRVhUSUNSMl9FWFRJN19Qb3MgICAgICAgICgxMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBTWVNDRkdfRVhUSUNSMl9FWFRJN19Nc2sgICAgICAgICgweEZVIDw8IFNZU0NGR19FWFRJQ1IyX0VYVEk3X1BvcykgICAgIC8qITwgMHgwMDAwRjAwMCAqLw0KI2RlZmluZSBTWVNDRkdfRVhUSUNSMl9FWFRJNyAgICAgICAgICAgIFNZU0NGR19FWFRJQ1IyX0VYVEk3X01zayAgICAgICAgICAgICAgIC8qITwgRVhUSSA3IGNvbmZpZ3VyYXRpb24gKi8NCg0KLyoqIA0KICAqIEBicmllZiAgRVhUSTQgY29uZmlndXJhdGlvbiAgDQogICovIA0KI2RlZmluZSBTWVNDRkdfRVhUSUNSMl9FWFRJNF9QQSAgICAgICAgICgweDAwMDAwMDAwVSkgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgUEFbNF0gcGluICovDQojZGVmaW5lIFNZU0NGR19FWFRJQ1IyX0VYVEk0X1BCICAgICAgICAgKDB4MDAwMDAwMDFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBQQls0XSBwaW4gKi8NCiNkZWZpbmUgU1lTQ0ZHX0VYVElDUjJfRVhUSTRfUEMgICAgICAgICAoMHgwMDAwMDAwMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBDWzRdIHBpbiAqLw0KI2RlZmluZSBTWVNDRkdfRVhUSUNSMl9FWFRJNF9QRCAgICAgICAgICgweDAwMDAwMDAzVSkgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgUERbNF0gcGluICovDQojZGVmaW5lIFNZU0NGR19FWFRJQ1IyX0VYVEk0X1BFICAgICAgICAgKDB4MDAwMDAwMDRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBQRVs0XSBwaW4gKi8NCiNkZWZpbmUgU1lTQ0ZHX0VYVElDUjJfRVhUSTRfUEYgICAgICAgICAoMHgwMDAwMDAwNlUpICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBGWzRdIHBpbiAqLw0KI2RlZmluZSBTWVNDRkdfRVhUSUNSMl9FWFRJNF9QRyAgICAgICAgICgweDAwMDAwMDA3VSkgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgUEdbNF0gcGluICovDQoNCi8qKiANCiAgKiBAYnJpZWYgIEVYVEk1IGNvbmZpZ3VyYXRpb24gIA0KICAqLyANCiNkZWZpbmUgU1lTQ0ZHX0VYVElDUjJfRVhUSTVfUEEgICAgICAgICAoMHgwMDAwMDAwMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBBWzVdIHBpbiAqLw0KI2RlZmluZSBTWVNDRkdfRVhUSUNSMl9FWFRJNV9QQiAgICAgICAgICgweDAwMDAwMDEwVSkgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgUEJbNV0gcGluICovDQojZGVmaW5lIFNZU0NGR19FWFRJQ1IyX0VYVEk1X1BDICAgICAgICAgKDB4MDAwMDAwMjBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBQQ1s1XSBwaW4gKi8NCiNkZWZpbmUgU1lTQ0ZHX0VYVElDUjJfRVhUSTVfUEQgICAgICAgICAoMHgwMDAwMDAzMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBEWzVdIHBpbiAqLw0KI2RlZmluZSBTWVNDRkdfRVhUSUNSMl9FWFRJNV9QRSAgICAgICAgICgweDAwMDAwMDQwVSkgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgUEVbNV0gcGluICovDQojZGVmaW5lIFNZU0NGR19FWFRJQ1IyX0VYVEk1X1BGICAgICAgICAgKDB4MDAwMDAwNjBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBQRls1XSBwaW4gKi8NCiNkZWZpbmUgU1lTQ0ZHX0VYVElDUjJfRVhUSTVfUEcgICAgICAgICAoMHgwMDAwMDA3MFUpICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBHWzVdIHBpbiAqLw0KDQovKiogDQogICogQGJyaWVmICBFWFRJNiBjb25maWd1cmF0aW9uICANCiAgKi8gDQojZGVmaW5lIFNZU0NGR19FWFRJQ1IyX0VYVEk2X1BBICAgICAgICAgKDB4MDAwMDAwMDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBQQVs2XSBwaW4gKi8NCiNkZWZpbmUgU1lTQ0ZHX0VYVElDUjJfRVhUSTZfUEIgICAgICAgICAoMHgwMDAwMDEwMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBCWzZdIHBpbiAqLw0KI2RlZmluZSBTWVNDRkdfRVhUSUNSMl9FWFRJNl9QQyAgICAgICAgICgweDAwMDAwMjAwVSkgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgUENbNl0gcGluICovDQojZGVmaW5lIFNZU0NGR19FWFRJQ1IyX0VYVEk2X1BEICAgICAgICAgKDB4MDAwMDAzMDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBQRFs2XSBwaW4gKi8NCiNkZWZpbmUgU1lTQ0ZHX0VYVElDUjJfRVhUSTZfUEUgICAgICAgICAoMHgwMDAwMDQwMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBFWzZdIHBpbiAqLw0KI2RlZmluZSBTWVNDRkdfRVhUSUNSMl9FWFRJNl9QRiAgICAgICAgICgweDAwMDAwNjAwVSkgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgUEZbNl0gcGluICovDQojZGVmaW5lIFNZU0NGR19FWFRJQ1IyX0VYVEk2X1BHICAgICAgICAgKDB4MDAwMDA3MDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBQR1s2XSBwaW4gKi8NCg0KLyoqIA0KICAqIEBicmllZiAgRVhUSTcgY29uZmlndXJhdGlvbiAgDQogICovIA0KI2RlZmluZSBTWVNDRkdfRVhUSUNSMl9FWFRJN19QQSAgICAgICAgICgweDAwMDAwMDAwVSkgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgUEFbN10gcGluICovDQojZGVmaW5lIFNZU0NGR19FWFRJQ1IyX0VYVEk3X1BCICAgICAgICAgKDB4MDAwMDEwMDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBQQls3XSBwaW4gKi8NCiNkZWZpbmUgU1lTQ0ZHX0VYVElDUjJfRVhUSTdfUEMgICAgICAgICAoMHgwMDAwMjAwMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBDWzddIHBpbiAqLw0KI2RlZmluZSBTWVNDRkdfRVhUSUNSMl9FWFRJN19QRCAgICAgICAgICgweDAwMDAzMDAwVSkgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgUERbN10gcGluICovDQojZGVmaW5lIFNZU0NGR19FWFRJQ1IyX0VYVEk3X1BFICAgICAgICAgKDB4MDAwMDQwMDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBQRVs3XSBwaW4gKi8NCiNkZWZpbmUgU1lTQ0ZHX0VYVElDUjJfRVhUSTdfUEYgICAgICAgICAoMHgwMDAwNjAwMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBGWzddIHBpbiAqLw0KI2RlZmluZSBTWVNDRkdfRVhUSUNSMl9FWFRJN19QRyAgICAgICAgICgweDAwMDA3MDAwVSkgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgUEdbN10gcGluICovDQoNCi8qKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFNZU0NGR19FWFRJQ1IzIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgU1lTQ0ZHX0VYVElDUjNfRVhUSThfUG9zICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgU1lTQ0ZHX0VYVElDUjNfRVhUSThfTXNrICAgICAgICAoMHhGVSA8PCBTWVNDRkdfRVhUSUNSM19FWFRJOF9Qb3MpICAgICAvKiE8IDB4MDAwMDAwMEYgKi8NCiNkZWZpbmUgU1lTQ0ZHX0VYVElDUjNfRVhUSTggICAgICAgICAgICBTWVNDRkdfRVhUSUNSM19FWFRJOF9Nc2sgICAgICAgICAgICAgICAvKiE8IEVYVEkgOCBjb25maWd1cmF0aW9uICovDQojZGVmaW5lIFNZU0NGR19FWFRJQ1IzX0VYVEk5X1BvcyAgICAgICAgKDRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFNZU0NGR19FWFRJQ1IzX0VYVEk5X01zayAgICAgICAgKDB4RlUgPDwgU1lTQ0ZHX0VYVElDUjNfRVhUSTlfUG9zKSAgICAgLyohPCAweDAwMDAwMEYwICovDQojZGVmaW5lIFNZU0NGR19FWFRJQ1IzX0VYVEk5ICAgICAgICAgICAgU1lTQ0ZHX0VYVElDUjNfRVhUSTlfTXNrICAgICAgICAgICAgICAgLyohPCBFWFRJIDkgY29uZmlndXJhdGlvbiAqLw0KI2RlZmluZSBTWVNDRkdfRVhUSUNSM19FWFRJMTBfUG9zICAgICAgICg4VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBTWVNDRkdfRVhUSUNSM19FWFRJMTBfTXNrICAgICAgICgweEZVIDw8IFNZU0NGR19FWFRJQ1IzX0VYVEkxMF9Qb3MpICAgIC8qITwgMHgwMDAwMEYwMCAqLw0KI2RlZmluZSBTWVNDRkdfRVhUSUNSM19FWFRJMTAgICAgICAgICAgIFNZU0NGR19FWFRJQ1IzX0VYVEkxMF9Nc2sgICAgICAgICAgICAgIC8qITwgRVhUSSAxMCBjb25maWd1cmF0aW9uICovDQojZGVmaW5lIFNZU0NGR19FWFRJQ1IzX0VYVEkxMV9Qb3MgICAgICAgKDEyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFNZU0NGR19FWFRJQ1IzX0VYVEkxMV9Nc2sgICAgICAgKDB4RlUgPDwgU1lTQ0ZHX0VYVElDUjNfRVhUSTExX1BvcykgICAgLyohPCAweDAwMDBGMDAwICovDQojZGVmaW5lIFNZU0NGR19FWFRJQ1IzX0VYVEkxMSAgICAgICAgICAgU1lTQ0ZHX0VYVElDUjNfRVhUSTExX01zayAgICAgICAgICAgICAgLyohPCBFWFRJIDExIGNvbmZpZ3VyYXRpb24gKi8NCg0KLyoqIA0KICAqIEBicmllZiAgRVhUSTggY29uZmlndXJhdGlvbiAgDQogICovIA0KI2RlZmluZSBTWVNDRkdfRVhUSUNSM19FWFRJOF9QQSAgICAgICAgICgweDAwMDAwMDAwVSkgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgUEFbOF0gcGluICovDQojZGVmaW5lIFNZU0NGR19FWFRJQ1IzX0VYVEk4X1BCICAgICAgICAgKDB4MDAwMDAwMDFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBQQls4XSBwaW4gKi8NCiNkZWZpbmUgU1lTQ0ZHX0VYVElDUjNfRVhUSThfUEMgICAgICAgICAoMHgwMDAwMDAwMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBDWzhdIHBpbiAqLw0KI2RlZmluZSBTWVNDRkdfRVhUSUNSM19FWFRJOF9QRCAgICAgICAgICgweDAwMDAwMDAzVSkgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgUERbOF0gcGluICovDQojZGVmaW5lIFNZU0NGR19FWFRJQ1IzX0VYVEk4X1BFICAgICAgICAgKDB4MDAwMDAwMDRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBQRVs4XSBwaW4gKi8NCiNkZWZpbmUgU1lTQ0ZHX0VYVElDUjNfRVhUSThfUEYgICAgICAgICAoMHgwMDAwMDAwNlUpICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBGWzhdIHBpbiAqLw0KI2RlZmluZSBTWVNDRkdfRVhUSUNSM19FWFRJOF9QRyAgICAgICAgICgweDAwMDAwMDA3VSkgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgUEdbOF0gcGluICovDQoNCi8qKiANCiAgKiBAYnJpZWYgIEVYVEk5IGNvbmZpZ3VyYXRpb24gIA0KICAqLyANCiNkZWZpbmUgU1lTQ0ZHX0VYVElDUjNfRVhUSTlfUEEgICAgICAgICAoMHgwMDAwMDAwMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBBWzldIHBpbiAqLw0KI2RlZmluZSBTWVNDRkdfRVhUSUNSM19FWFRJOV9QQiAgICAgICAgICgweDAwMDAwMDEwVSkgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgUEJbOV0gcGluICovDQojZGVmaW5lIFNZU0NGR19FWFRJQ1IzX0VYVEk5X1BDICAgICAgICAgKDB4MDAwMDAwMjBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBQQ1s5XSBwaW4gKi8NCiNkZWZpbmUgU1lTQ0ZHX0VYVElDUjNfRVhUSTlfUEQgICAgICAgICAoMHgwMDAwMDAzMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBEWzldIHBpbiAqLw0KI2RlZmluZSBTWVNDRkdfRVhUSUNSM19FWFRJOV9QRSAgICAgICAgICgweDAwMDAwMDQwVSkgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgUEVbOV0gcGluICovDQojZGVmaW5lIFNZU0NGR19FWFRJQ1IzX0VYVEk5X1BGICAgICAgICAgKDB4MDAwMDAwNjBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBQRls5XSBwaW4gKi8NCiNkZWZpbmUgU1lTQ0ZHX0VYVElDUjNfRVhUSTlfUEcgICAgICAgICAoMHgwMDAwMDA3MFUpICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBHWzldIHBpbiAqLw0KDQovKiogDQogICogQGJyaWVmICBFWFRJMTAgY29uZmlndXJhdGlvbiAgDQogICovIA0KI2RlZmluZSBTWVNDRkdfRVhUSUNSM19FWFRJMTBfUEEgICAgICAgICgweDAwMDAwMDAwVSkgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgUEFbMTBdIHBpbiAqLw0KI2RlZmluZSBTWVNDRkdfRVhUSUNSM19FWFRJMTBfUEIgICAgICAgICgweDAwMDAwMTAwVSkgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgUEJbMTBdIHBpbiAqLw0KI2RlZmluZSBTWVNDRkdfRVhUSUNSM19FWFRJMTBfUEMgICAgICAgICgweDAwMDAwMjAwVSkgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgUENbMTBdIHBpbiAqLw0KI2RlZmluZSBTWVNDRkdfRVhUSUNSM19FWFRJMTBfUEQgICAgICAgICgweDAwMDAwMzAwVSkgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgUERbMTBdIHBpbiAqLw0KI2RlZmluZSBTWVNDRkdfRVhUSUNSM19FWFRJMTBfUEUgICAgICAgICgweDAwMDAwNDAwVSkgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgUEVbMTBdIHBpbiAqLw0KI2RlZmluZSBTWVNDRkdfRVhUSUNSM19FWFRJMTBfUEYgICAgICAgICgweDAwMDAwNjAwVSkgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgUEZbMTBdIHBpbiAqLw0KI2RlZmluZSBTWVNDRkdfRVhUSUNSM19FWFRJMTBfUEcgICAgICAgICgweDAwMDAwNzAwVSkgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgUEdbMTBdIHBpbiAqLw0KDQovKiogDQogICogQGJyaWVmICBFWFRJMTEgY29uZmlndXJhdGlvbiAgDQogICovIA0KI2RlZmluZSBTWVNDRkdfRVhUSUNSM19FWFRJMTFfUEEgICAgICAgICgweDAwMDAwMDAwVSkgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgUEFbMTFdIHBpbiAqLw0KI2RlZmluZSBTWVNDRkdfRVhUSUNSM19FWFRJMTFfUEIgICAgICAgICgweDAwMDAxMDAwVSkgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgUEJbMTFdIHBpbiAqLw0KI2RlZmluZSBTWVNDRkdfRVhUSUNSM19FWFRJMTFfUEMgICAgICAgICgweDAwMDAyMDAwVSkgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgUENbMTFdIHBpbiAqLw0KI2RlZmluZSBTWVNDRkdfRVhUSUNSM19FWFRJMTFfUEQgICAgICAgICgweDAwMDAzMDAwVSkgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgUERbMTFdIHBpbiAqLw0KI2RlZmluZSBTWVNDRkdfRVhUSUNSM19FWFRJMTFfUEUgICAgICAgICgweDAwMDA0MDAwVSkgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgUEVbMTFdIHBpbiAqLw0KI2RlZmluZSBTWVNDRkdfRVhUSUNSM19FWFRJMTFfUEYgICAgICAgICgweDAwMDA2MDAwVSkgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgUEZbMTFdIHBpbiAqLw0KI2RlZmluZSBTWVNDRkdfRVhUSUNSM19FWFRJMTFfUEcgICAgICAgICgweDAwMDA3MDAwVSkgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgUEdbMTFdIHBpbiAqLw0KDQovKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBTWVNDRkdfRVhUSUNSNCByZWdpc3RlciAgKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIFNZU0NGR19FWFRJQ1I0X0VYVEkxMl9Qb3MgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFNZU0NGR19FWFRJQ1I0X0VYVEkxMl9Nc2sgICAgICAgKDB4RlUgPDwgU1lTQ0ZHX0VYVElDUjRfRVhUSTEyX1BvcykgICAgLyohPCAweDAwMDAwMDBGICovDQojZGVmaW5lIFNZU0NGR19FWFRJQ1I0X0VYVEkxMiAgICAgICAgICAgU1lTQ0ZHX0VYVElDUjRfRVhUSTEyX01zayAgICAgICAgICAgICAgLyohPCBFWFRJIDEyIGNvbmZpZ3VyYXRpb24gKi8NCiNkZWZpbmUgU1lTQ0ZHX0VYVElDUjRfRVhUSTEzX1BvcyAgICAgICAoNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgU1lTQ0ZHX0VYVElDUjRfRVhUSTEzX01zayAgICAgICAoMHhGVSA8PCBTWVNDRkdfRVhUSUNSNF9FWFRJMTNfUG9zKSAgICAvKiE8IDB4MDAwMDAwRjAgKi8NCiNkZWZpbmUgU1lTQ0ZHX0VYVElDUjRfRVhUSTEzICAgICAgICAgICBTWVNDRkdfRVhUSUNSNF9FWFRJMTNfTXNrICAgICAgICAgICAgICAvKiE8IEVYVEkgMTMgY29uZmlndXJhdGlvbiAqLw0KI2RlZmluZSBTWVNDRkdfRVhUSUNSNF9FWFRJMTRfUG9zICAgICAgICg4VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBTWVNDRkdfRVhUSUNSNF9FWFRJMTRfTXNrICAgICAgICgweEZVIDw8IFNZU0NGR19FWFRJQ1I0X0VYVEkxNF9Qb3MpICAgIC8qITwgMHgwMDAwMEYwMCAqLw0KI2RlZmluZSBTWVNDRkdfRVhUSUNSNF9FWFRJMTQgICAgICAgICAgIFNZU0NGR19FWFRJQ1I0X0VYVEkxNF9Nc2sgICAgICAgICAgICAgIC8qITwgRVhUSSAxNCBjb25maWd1cmF0aW9uICovDQojZGVmaW5lIFNZU0NGR19FWFRJQ1I0X0VYVEkxNV9Qb3MgICAgICAgKDEyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFNZU0NGR19FWFRJQ1I0X0VYVEkxNV9Nc2sgICAgICAgKDB4RlUgPDwgU1lTQ0ZHX0VYVElDUjRfRVhUSTE1X1BvcykgICAgLyohPCAweDAwMDBGMDAwICovDQojZGVmaW5lIFNZU0NGR19FWFRJQ1I0X0VYVEkxNSAgICAgICAgICAgU1lTQ0ZHX0VYVElDUjRfRVhUSTE1X01zayAgICAgICAgICAgICAgLyohPCBFWFRJIDE1IGNvbmZpZ3VyYXRpb24gKi8NCg0KLyoqIA0KICAqIEBicmllZiAgRVhUSTEyIGNvbmZpZ3VyYXRpb24gIA0KICAqLyANCiNkZWZpbmUgU1lTQ0ZHX0VYVElDUjRfRVhUSTEyX1BBICAgICAgICAoMHgwMDAwMDAwMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBBWzEyXSBwaW4gKi8NCiNkZWZpbmUgU1lTQ0ZHX0VYVElDUjRfRVhUSTEyX1BCICAgICAgICAoMHgwMDAwMDAwMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBCWzEyXSBwaW4gKi8NCiNkZWZpbmUgU1lTQ0ZHX0VYVElDUjRfRVhUSTEyX1BDICAgICAgICAoMHgwMDAwMDAwMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBDWzEyXSBwaW4gKi8NCiNkZWZpbmUgU1lTQ0ZHX0VYVElDUjRfRVhUSTEyX1BEICAgICAgICAoMHgwMDAwMDAwM1UpICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBEWzEyXSBwaW4gKi8NCiNkZWZpbmUgU1lTQ0ZHX0VYVElDUjRfRVhUSTEyX1BFICAgICAgICAoMHgwMDAwMDAwNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBFWzEyXSBwaW4gKi8NCiNkZWZpbmUgU1lTQ0ZHX0VYVElDUjRfRVhUSTEyX1BGICAgICAgICAoMHgwMDAwMDAwNlUpICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBGWzEyXSBwaW4gKi8NCiNkZWZpbmUgU1lTQ0ZHX0VYVElDUjRfRVhUSTEyX1BHICAgICAgICAoMHgwMDAwMDAwN1UpICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBHWzEyXSBwaW4gKi8NCg0KLyoqIA0KICAqIEBicmllZiAgRVhUSTEzIGNvbmZpZ3VyYXRpb24gIA0KICAqLyANCiNkZWZpbmUgU1lTQ0ZHX0VYVElDUjRfRVhUSTEzX1BBICAgICAgICAoMHgwMDAwMDAwMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBBWzEzXSBwaW4gKi8NCiNkZWZpbmUgU1lTQ0ZHX0VYVElDUjRfRVhUSTEzX1BCICAgICAgICAoMHgwMDAwMDAxMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBCWzEzXSBwaW4gKi8NCiNkZWZpbmUgU1lTQ0ZHX0VYVElDUjRfRVhUSTEzX1BDICAgICAgICAoMHgwMDAwMDAyMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBDWzEzXSBwaW4gKi8NCiNkZWZpbmUgU1lTQ0ZHX0VYVElDUjRfRVhUSTEzX1BEICAgICAgICAoMHgwMDAwMDAzMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBEWzEzXSBwaW4gKi8NCiNkZWZpbmUgU1lTQ0ZHX0VYVElDUjRfRVhUSTEzX1BFICAgICAgICAoMHgwMDAwMDA0MFUpICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBFWzEzXSBwaW4gKi8NCiNkZWZpbmUgU1lTQ0ZHX0VYVElDUjRfRVhUSTEzX1BGICAgICAgICAoMHgwMDAwMDA2MFUpICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBGWzEzXSBwaW4gKi8NCiNkZWZpbmUgU1lTQ0ZHX0VYVElDUjRfRVhUSTEzX1BHICAgICAgICAoMHgwMDAwMDA3MFUpICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBHWzEzXSBwaW4gKi8NCg0KLyoqIA0KICAqIEBicmllZiAgRVhUSTE0IGNvbmZpZ3VyYXRpb24gIA0KICAqLyANCiNkZWZpbmUgU1lTQ0ZHX0VYVElDUjRfRVhUSTE0X1BBICAgICAgICAoMHgwMDAwMDAwMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBBWzE0XSBwaW4gKi8NCiNkZWZpbmUgU1lTQ0ZHX0VYVElDUjRfRVhUSTE0X1BCICAgICAgICAoMHgwMDAwMDEwMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBCWzE0XSBwaW4gKi8NCiNkZWZpbmUgU1lTQ0ZHX0VYVElDUjRfRVhUSTE0X1BDICAgICAgICAoMHgwMDAwMDIwMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBDWzE0XSBwaW4gKi8NCiNkZWZpbmUgU1lTQ0ZHX0VYVElDUjRfRVhUSTE0X1BEICAgICAgICAoMHgwMDAwMDMwMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBEWzE0XSBwaW4gKi8NCiNkZWZpbmUgU1lTQ0ZHX0VYVElDUjRfRVhUSTE0X1BFICAgICAgICAoMHgwMDAwMDQwMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBFWzE0XSBwaW4gKi8NCiNkZWZpbmUgU1lTQ0ZHX0VYVElDUjRfRVhUSTE0X1BGICAgICAgICAoMHgwMDAwMDYwMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBGWzE0XSBwaW4gKi8NCiNkZWZpbmUgU1lTQ0ZHX0VYVElDUjRfRVhUSTE0X1BHICAgICAgICAoMHgwMDAwMDcwMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBHWzE0XSBwaW4gKi8NCg0KLyoqIA0KICAqIEBicmllZiAgRVhUSTE1IGNvbmZpZ3VyYXRpb24gIA0KICAqLyANCiNkZWZpbmUgU1lTQ0ZHX0VYVElDUjRfRVhUSTE1X1BBICAgICAgICAoMHgwMDAwMDAwMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBBWzE1XSBwaW4gKi8NCiNkZWZpbmUgU1lTQ0ZHX0VYVElDUjRfRVhUSTE1X1BCICAgICAgICAoMHgwMDAwMTAwMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBCWzE1XSBwaW4gKi8NCiNkZWZpbmUgU1lTQ0ZHX0VYVElDUjRfRVhUSTE1X1BDICAgICAgICAoMHgwMDAwMjAwMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBDWzE1XSBwaW4gKi8NCiNkZWZpbmUgU1lTQ0ZHX0VYVElDUjRfRVhUSTE1X1BEICAgICAgICAoMHgwMDAwMzAwMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBEWzE1XSBwaW4gKi8NCiNkZWZpbmUgU1lTQ0ZHX0VYVElDUjRfRVhUSTE1X1BFICAgICAgICAoMHgwMDAwNDAwMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBFWzE1XSBwaW4gKi8NCiNkZWZpbmUgU1lTQ0ZHX0VYVElDUjRfRVhUSTE1X1BGICAgICAgICAoMHgwMDAwNjAwMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBGWzE1XSBwaW4gKi8NCiNkZWZpbmUgU1lTQ0ZHX0VYVElDUjRfRVhUSTE1X1BHICAgICAgICAoMHgwMDAwNzAwMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBHWzE1XSBwaW4gKi8NCiANCi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovDQovKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLw0KLyogICAgICAgICAgICAgICAgICAgICAgIFJvdXRpbmcgSW50ZXJmYWNlIChSSSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8NCi8qICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovDQovKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLw0KDQovKioqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBSSV9JQ1IgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBSSV9JQ1JfSUMxT1NfUG9zICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSSV9JQ1JfSUMxT1NfTXNrICAgICAgICAgICAgICAgICgweEZVIDw8IFJJX0lDUl9JQzFPU19Qb3MpICAgICAgICAgICAgIC8qITwgMHgwMDAwMDAwRiAqLw0KI2RlZmluZSBSSV9JQ1JfSUMxT1MgICAgICAgICAgICAgICAgICAgIFJJX0lDUl9JQzFPU19Nc2sgICAgICAgICAgICAgICAgICAgICAgIC8qITwgSUMxT1NbMzowXSBiaXRzIChJbnB1dCBDYXB0dXJlIDEgc2VsZWN0IGJpdHMpICovDQojZGVmaW5lIFJJX0lDUl9JQzFPU18wICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgUklfSUNSX0lDMU9TX1BvcykgICAgICAgICAgICAgLyohPCAweDAwMDAwMDAxICovDQojZGVmaW5lIFJJX0lDUl9JQzFPU18xICAgICAgICAgICAgICAgICAgKDB4MlUgPDwgUklfSUNSX0lDMU9TX1BvcykgICAgICAgICAgICAgLyohPCAweDAwMDAwMDAyICovDQojZGVmaW5lIFJJX0lDUl9JQzFPU18yICAgICAgICAgICAgICAgICAgKDB4NFUgPDwgUklfSUNSX0lDMU9TX1BvcykgICAgICAgICAgICAgLyohPCAweDAwMDAwMDA0ICovDQojZGVmaW5lIFJJX0lDUl9JQzFPU18zICAgICAgICAgICAgICAgICAgKDB4OFUgPDwgUklfSUNSX0lDMU9TX1BvcykgICAgICAgICAgICAgLyohPCAweDAwMDAwMDA4ICovDQoNCiNkZWZpbmUgUklfSUNSX0lDMk9TX1BvcyAgICAgICAgICAgICAgICAoNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUklfSUNSX0lDMk9TX01zayAgICAgICAgICAgICAgICAoMHhGVSA8PCBSSV9JQ1JfSUMyT1NfUG9zKSAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwRjAgKi8NCiNkZWZpbmUgUklfSUNSX0lDMk9TICAgICAgICAgICAgICAgICAgICBSSV9JQ1JfSUMyT1NfTXNrICAgICAgICAgICAgICAgICAgICAgICAvKiE8IElDMk9TWzM6MF0gYml0cyAoSW5wdXQgQ2FwdHVyZSAyIHNlbGVjdCBiaXRzKSAqLw0KI2RlZmluZSBSSV9JQ1JfSUMyT1NfMCAgICAgICAgICAgICAgICAgICgweDFVIDw8IFJJX0lDUl9JQzJPU19Qb3MpICAgICAgICAgICAgIC8qITwgMHgwMDAwMDAxMCAqLw0KI2RlZmluZSBSSV9JQ1JfSUMyT1NfMSAgICAgICAgICAgICAgICAgICgweDJVIDw8IFJJX0lDUl9JQzJPU19Qb3MpICAgICAgICAgICAgIC8qITwgMHgwMDAwMDAyMCAqLw0KI2RlZmluZSBSSV9JQ1JfSUMyT1NfMiAgICAgICAgICAgICAgICAgICgweDRVIDw8IFJJX0lDUl9JQzJPU19Qb3MpICAgICAgICAgICAgIC8qITwgMHgwMDAwMDA0MCAqLw0KI2RlZmluZSBSSV9JQ1JfSUMyT1NfMyAgICAgICAgICAgICAgICAgICgweDhVIDw8IFJJX0lDUl9JQzJPU19Qb3MpICAgICAgICAgICAgIC8qITwgMHgwMDAwMDA4MCAqLw0KDQojZGVmaW5lIFJJX0lDUl9JQzNPU19Qb3MgICAgICAgICAgICAgICAgKDhVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJJX0lDUl9JQzNPU19Nc2sgICAgICAgICAgICAgICAgKDB4RlUgPDwgUklfSUNSX0lDM09TX1BvcykgICAgICAgICAgICAgLyohPCAweDAwMDAwRjAwICovDQojZGVmaW5lIFJJX0lDUl9JQzNPUyAgICAgICAgICAgICAgICAgICAgUklfSUNSX0lDM09TX01zayAgICAgICAgICAgICAgICAgICAgICAgLyohPCBJQzNPU1szOjBdIGJpdHMgKElucHV0IENhcHR1cmUgMyBzZWxlY3QgYml0cykgKi8NCiNkZWZpbmUgUklfSUNSX0lDM09TXzAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBSSV9JQ1JfSUMzT1NfUG9zKSAgICAgICAgICAgICAvKiE8IDB4MDAwMDAxMDAgKi8NCiNkZWZpbmUgUklfSUNSX0lDM09TXzEgICAgICAgICAgICAgICAgICAoMHgyVSA8PCBSSV9JQ1JfSUMzT1NfUG9zKSAgICAgICAgICAgICAvKiE8IDB4MDAwMDAyMDAgKi8NCiNkZWZpbmUgUklfSUNSX0lDM09TXzIgICAgICAgICAgICAgICAgICAoMHg0VSA8PCBSSV9JQ1JfSUMzT1NfUG9zKSAgICAgICAgICAgICAvKiE8IDB4MDAwMDA0MDAgKi8NCiNkZWZpbmUgUklfSUNSX0lDM09TXzMgICAgICAgICAgICAgICAgICAoMHg4VSA8PCBSSV9JQ1JfSUMzT1NfUG9zKSAgICAgICAgICAgICAvKiE8IDB4MDAwMDA4MDAgKi8NCg0KI2RlZmluZSBSSV9JQ1JfSUM0T1NfUG9zICAgICAgICAgICAgICAgICgxMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSSV9JQ1JfSUM0T1NfTXNrICAgICAgICAgICAgICAgICgweEZVIDw8IFJJX0lDUl9JQzRPU19Qb3MpICAgICAgICAgICAgIC8qITwgMHgwMDAwRjAwMCAqLw0KI2RlZmluZSBSSV9JQ1JfSUM0T1MgICAgICAgICAgICAgICAgICAgIFJJX0lDUl9JQzRPU19Nc2sgICAgICAgICAgICAgICAgICAgICAgIC8qITwgSUM0T1NbMzowXSBiaXRzIChJbnB1dCBDYXB0dXJlIDQgc2VsZWN0IGJpdHMpICovDQojZGVmaW5lIFJJX0lDUl9JQzRPU18wICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgUklfSUNSX0lDNE9TX1BvcykgICAgICAgICAgICAgLyohPCAweDAwMDAxMDAwICovDQojZGVmaW5lIFJJX0lDUl9JQzRPU18xICAgICAgICAgICAgICAgICAgKDB4MlUgPDwgUklfSUNSX0lDNE9TX1BvcykgICAgICAgICAgICAgLyohPCAweDAwMDAyMDAwICovDQojZGVmaW5lIFJJX0lDUl9JQzRPU18yICAgICAgICAgICAgICAgICAgKDB4NFUgPDwgUklfSUNSX0lDNE9TX1BvcykgICAgICAgICAgICAgLyohPCAweDAwMDA0MDAwICovDQojZGVmaW5lIFJJX0lDUl9JQzRPU18zICAgICAgICAgICAgICAgICAgKDB4OFUgPDwgUklfSUNSX0lDNE9TX1BvcykgICAgICAgICAgICAgLyohPCAweDAwMDA4MDAwICovDQoNCiNkZWZpbmUgUklfSUNSX1RJTV9Qb3MgICAgICAgICAgICAgICAgICAoMTZVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUklfSUNSX1RJTV9Nc2sgICAgICAgICAgICAgICAgICAoMHgzVSA8PCBSSV9JQ1JfVElNX1BvcykgICAgICAgICAgICAgICAvKiE8IDB4MDAwMzAwMDAgKi8NCiNkZWZpbmUgUklfSUNSX1RJTSAgICAgICAgICAgICAgICAgICAgICBSSV9JQ1JfVElNX01zayAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFRJTVszOjBdIGJpdHMgKFRpbWVycyBzZWxlY3QgYml0cykgKi8NCiNkZWZpbmUgUklfSUNSX1RJTV8wICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBSSV9JQ1JfVElNX1BvcykgICAgICAgICAgICAgICAvKiE8IDB4MDAwMTAwMDAgKi8NCiNkZWZpbmUgUklfSUNSX1RJTV8xICAgICAgICAgICAgICAgICAgICAoMHgyVSA8PCBSSV9JQ1JfVElNX1BvcykgICAgICAgICAgICAgICAvKiE8IDB4MDAwMjAwMDAgKi8NCg0KI2RlZmluZSBSSV9JQ1JfSUMxX1BvcyAgICAgICAgICAgICAgICAgICgxOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSSV9JQ1JfSUMxX01zayAgICAgICAgICAgICAgICAgICgweDFVIDw8IFJJX0lDUl9JQzFfUG9zKSAgICAgICAgICAgICAgIC8qITwgMHgwMDA0MDAwMCAqLw0KI2RlZmluZSBSSV9JQ1JfSUMxICAgICAgICAgICAgICAgICAgICAgIFJJX0lDUl9JQzFfTXNrICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgSW5wdXQgY2FwdHVyZSAxICovDQojZGVmaW5lIFJJX0lDUl9JQzJfUG9zICAgICAgICAgICAgICAgICAgKDE5VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJJX0lDUl9JQzJfTXNrICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgUklfSUNSX0lDMl9Qb3MpICAgICAgICAgICAgICAgLyohPCAweDAwMDgwMDAwICovDQojZGVmaW5lIFJJX0lDUl9JQzIgICAgICAgICAgICAgICAgICAgICAgUklfSUNSX0lDMl9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBJbnB1dCBjYXB0dXJlIDIgKi8NCiNkZWZpbmUgUklfSUNSX0lDM19Qb3MgICAgICAgICAgICAgICAgICAoMjBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUklfSUNSX0lDM19Nc2sgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBSSV9JQ1JfSUMzX1BvcykgICAgICAgICAgICAgICAvKiE8IDB4MDAxMDAwMDAgKi8NCiNkZWZpbmUgUklfSUNSX0lDMyAgICAgICAgICAgICAgICAgICAgICBSSV9JQ1JfSUMzX01zayAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IElucHV0IGNhcHR1cmUgMyAqLw0KI2RlZmluZSBSSV9JQ1JfSUM0X1BvcyAgICAgICAgICAgICAgICAgICgyMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSSV9JQ1JfSUM0X01zayAgICAgICAgICAgICAgICAgICgweDFVIDw8IFJJX0lDUl9JQzRfUG9zKSAgICAgICAgICAgICAgIC8qITwgMHgwMDIwMDAwMCAqLw0KI2RlZmluZSBSSV9JQ1JfSUM0ICAgICAgICAgICAgICAgICAgICAgIFJJX0lDUl9JQzRfTXNrICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgSW5wdXQgY2FwdHVyZSA0ICovDQoNCi8qKioqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFJJX0FTQ1IxIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgUklfQVNDUjFfQ0hfUG9zICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUklfQVNDUjFfQ0hfTXNrICAgICAgICAgICAgICAgICAoMHg3QkZERkZGRlUgPDwgUklfQVNDUjFfQ0hfUG9zKSAgICAgICAvKiE8IDB4N0JGREZGRkYgKi8NCiNkZWZpbmUgUklfQVNDUjFfQ0ggICAgICAgICAgICAgICAgICAgICBSSV9BU0NSMV9DSF9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IEFTX0NIWzI1OjE4XSAmIEFTX0NIWzE1OjBdIGJpdHMgKCBBbmFsb2cgc3dpdGNoZXMgc2VsZWN0aW9uIGJpdHMpICovDQojZGVmaW5lIFJJX0FTQ1IxX0NIXzAgICAgICAgICAgICAgICAgICAgKDB4MDAwMDAwMDFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBCaXQgMCAqLw0KI2RlZmluZSBSSV9BU0NSMV9DSF8xICAgICAgICAgICAgICAgICAgICgweDAwMDAwMDAyVSkgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgQml0IDEgKi8NCiNkZWZpbmUgUklfQVNDUjFfQ0hfMiAgICAgICAgICAgICAgICAgICAoMHgwMDAwMDAwNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IEJpdCAyICovDQojZGVmaW5lIFJJX0FTQ1IxX0NIXzMgICAgICAgICAgICAgICAgICAgKDB4MDAwMDAwMDhVKSAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBCaXQgMyAqLw0KI2RlZmluZSBSSV9BU0NSMV9DSF80ICAgICAgICAgICAgICAgICAgICgweDAwMDAwMDEwVSkgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgQml0IDQgKi8NCiNkZWZpbmUgUklfQVNDUjFfQ0hfNSAgICAgICAgICAgICAgICAgICAoMHgwMDAwMDAyMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IEJpdCA1ICovDQojZGVmaW5lIFJJX0FTQ1IxX0NIXzYgICAgICAgICAgICAgICAgICAgKDB4MDAwMDAwNDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBCaXQgNiAqLw0KI2RlZmluZSBSSV9BU0NSMV9DSF83ICAgICAgICAgICAgICAgICAgICgweDAwMDAwMDgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgQml0IDcgKi8NCiNkZWZpbmUgUklfQVNDUjFfQ0hfOCAgICAgICAgICAgICAgICAgICAoMHgwMDAwMDEwMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IEJpdCA4ICovDQojZGVmaW5lIFJJX0FTQ1IxX0NIXzkgICAgICAgICAgICAgICAgICAgKDB4MDAwMDAyMDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBCaXQgOSAqLw0KI2RlZmluZSBSSV9BU0NSMV9DSF8xMCAgICAgICAgICAgICAgICAgICgweDAwMDAwNDAwVSkgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgQml0IDEwICovDQojZGVmaW5lIFJJX0FTQ1IxX0NIXzExICAgICAgICAgICAgICAgICAgKDB4MDAwMDA4MDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBCaXQgMTEgKi8NCiNkZWZpbmUgUklfQVNDUjFfQ0hfMTIgICAgICAgICAgICAgICAgICAoMHgwMDAwMTAwMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IEJpdCAxMiAqLw0KI2RlZmluZSBSSV9BU0NSMV9DSF8xMyAgICAgICAgICAgICAgICAgICgweDAwMDAyMDAwVSkgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgQml0IDEzICovDQojZGVmaW5lIFJJX0FTQ1IxX0NIXzE0ICAgICAgICAgICAgICAgICAgKDB4MDAwMDQwMDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBCaXQgMTQgKi8NCiNkZWZpbmUgUklfQVNDUjFfQ0hfMTUgICAgICAgICAgICAgICAgICAoMHgwMDAwODAwMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IEJpdCAxNSAqLw0KI2RlZmluZSBSSV9BU0NSMV9DSF8zMSAgICAgICAgICAgICAgICAgICgweDAwMDEwMDAwVSkgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgQml0IDE2ICovDQojZGVmaW5lIFJJX0FTQ1IxX0NIXzE4ICAgICAgICAgICAgICAgICAgKDB4MDAwNDAwMDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBCaXQgMTggKi8NCiNkZWZpbmUgUklfQVNDUjFfQ0hfMTkgICAgICAgICAgICAgICAgICAoMHgwMDA4MDAwMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IEJpdCAxOSAqLw0KI2RlZmluZSBSSV9BU0NSMV9DSF8yMCAgICAgICAgICAgICAgICAgICgweDAwMTAwMDAwVSkgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgQml0IDIwICovDQojZGVmaW5lIFJJX0FTQ1IxX0NIXzIxICAgICAgICAgICAgICAgICAgKDB4MDAyMDAwMDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBCaXQgMjEgKi8NCiNkZWZpbmUgUklfQVNDUjFfQ0hfMjIgICAgICAgICAgICAgICAgICAoMHgwMDQwMDAwMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IEJpdCAyMiAqLw0KI2RlZmluZSBSSV9BU0NSMV9DSF8yMyAgICAgICAgICAgICAgICAgICgweDAwODAwMDAwVSkgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgQml0IDIzICovDQojZGVmaW5lIFJJX0FTQ1IxX0NIXzI0ICAgICAgICAgICAgICAgICAgKDB4MDEwMDAwMDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBCaXQgMjQgKi8NCiNkZWZpbmUgUklfQVNDUjFfQ0hfMjUgICAgICAgICAgICAgICAgICAoMHgwMjAwMDAwMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IEJpdCAyNSAqLw0KI2RlZmluZSBSSV9BU0NSMV9WQ09NUF9Qb3MgICAgICAgICAgICAgICgyNlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSSV9BU0NSMV9WQ09NUF9Nc2sgICAgICAgICAgICAgICgweDFVIDw8IFJJX0FTQ1IxX1ZDT01QX1BvcykgICAgICAgICAgIC8qITwgMHgwNDAwMDAwMCAqLw0KI2RlZmluZSBSSV9BU0NSMV9WQ09NUCAgICAgICAgICAgICAgICAgIFJJX0FTQ1IxX1ZDT01QX01zayAgICAgICAgICAgICAgICAgICAgIC8qITwgQURDIGFuYWxvZyBzd2l0Y2ggc2VsZWN0aW9uIGZvciBpbnRlcm5hbCBub2RlIHRvIENPTVAxICovDQojZGVmaW5lIFJJX0FTQ1IxX0NIXzI3ICAgICAgICAgICAgICAgICAgKDB4MDgwMDAwMDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBCaXQgMjcgKi8NCiNkZWZpbmUgUklfQVNDUjFfQ0hfMjggICAgICAgICAgICAgICAgICAoMHgxMDAwMDAwMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IEJpdCAyOCAqLw0KI2RlZmluZSBSSV9BU0NSMV9DSF8yOSAgICAgICAgICAgICAgICAgICgweDIwMDAwMDAwVSkgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgQml0IDI5ICovDQojZGVmaW5lIFJJX0FTQ1IxX0NIXzMwICAgICAgICAgICAgICAgICAgKDB4NDAwMDAwMDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBCaXQgMzAgKi8NCiNkZWZpbmUgUklfQVNDUjFfU0NNX1BvcyAgICAgICAgICAgICAgICAoMzFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUklfQVNDUjFfU0NNX01zayAgICAgICAgICAgICAgICAoMHgxVSA8PCBSSV9BU0NSMV9TQ01fUG9zKSAgICAgICAgICAgICAvKiE8IDB4ODAwMDAwMDAgKi8NCiNkZWZpbmUgUklfQVNDUjFfU0NNICAgICAgICAgICAgICAgICAgICBSSV9BU0NSMV9TQ01fTXNrICAgICAgICAgICAgICAgICAgICAgICAvKiE8IEkvTyBTd2l0Y2ggY29udHJvbCBtb2RlICovDQoNCi8qKioqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFJJX0FTQ1IyIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgUklfQVNDUjJfR1IxMF8xICAgICAgICAgICAgICAgICAoMHgwMDAwMDAwMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IEdSMTAtMSBzZWxlY3Rpb24gYml0ICovDQojZGVmaW5lIFJJX0FTQ1IyX0dSMTBfMiAgICAgICAgICAgICAgICAgKDB4MDAwMDAwMDJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBHUjEwLTIgc2VsZWN0aW9uIGJpdCAqLw0KI2RlZmluZSBSSV9BU0NSMl9HUjEwXzMgICAgICAgICAgICAgICAgICgweDAwMDAwMDA0VSkgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgR1IxMC0zIHNlbGVjdGlvbiBiaXQgKi8NCiNkZWZpbmUgUklfQVNDUjJfR1IxMF80ICAgICAgICAgICAgICAgICAoMHgwMDAwMDAwOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IEdSMTAtNCBzZWxlY3Rpb24gYml0ICovDQojZGVmaW5lIFJJX0FTQ1IyX0dSNl9Qb3MgICAgICAgICAgICAgICAgKDRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJJX0FTQ1IyX0dSNl9Nc2sgICAgICAgICAgICAgICAgKDB4MTgwMDAwM1UgPDwgUklfQVNDUjJfR1I2X1BvcykgICAgICAgLyohPCAweDE4MDAwMDMwICovDQojZGVmaW5lIFJJX0FTQ1IyX0dSNiAgICAgICAgICAgICAgICAgICAgUklfQVNDUjJfR1I2X01zayAgICAgICAgICAgICAgICAgICAgICAgLyohPCBHUjYgc2VsZWN0aW9uIGJpdHMgKi8NCiNkZWZpbmUgUklfQVNDUjJfR1I2XzEgICAgICAgICAgICAgICAgICAoMHgwMDAwMDAxVSA8PCBSSV9BU0NSMl9HUjZfUG9zKSAgICAgICAvKiE8IDB4MDAwMDAwMTAgKi8NCiNkZWZpbmUgUklfQVNDUjJfR1I2XzIgICAgICAgICAgICAgICAgICAoMHgwMDAwMDAyVSA8PCBSSV9BU0NSMl9HUjZfUG9zKSAgICAgICAvKiE8IDB4MDAwMDAwMjAgKi8NCiNkZWZpbmUgUklfQVNDUjJfR1I2XzMgICAgICAgICAgICAgICAgICAoMHgwODAwMDAwVSA8PCBSSV9BU0NSMl9HUjZfUG9zKSAgICAgICAvKiE8IDB4MDgwMDAwMDAgKi8NCiNkZWZpbmUgUklfQVNDUjJfR1I2XzQgICAgICAgICAgICAgICAgICAoMHgxMDAwMDAwVSA8PCBSSV9BU0NSMl9HUjZfUG9zKSAgICAgICAvKiE8IDB4MTAwMDAwMDAgKi8NCiNkZWZpbmUgUklfQVNDUjJfR1I1XzEgICAgICAgICAgICAgICAgICAoMHgwMDAwMDA0MFUpICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IEdSNS0xIHNlbGVjdGlvbiBiaXQgKi8NCiNkZWZpbmUgUklfQVNDUjJfR1I1XzIgICAgICAgICAgICAgICAgICAoMHgwMDAwMDA4MFUpICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IEdSNS0yIHNlbGVjdGlvbiBiaXQgKi8NCiNkZWZpbmUgUklfQVNDUjJfR1I1XzMgICAgICAgICAgICAgICAgICAoMHgwMDAwMDEwMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IEdSNS0zIHNlbGVjdGlvbiBiaXQgKi8NCiNkZWZpbmUgUklfQVNDUjJfR1I0XzEgICAgICAgICAgICAgICAgICAoMHgwMDAwMDIwMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IEdSNC0xIHNlbGVjdGlvbiBiaXQgKi8NCiNkZWZpbmUgUklfQVNDUjJfR1I0XzIgICAgICAgICAgICAgICAgICAoMHgwMDAwMDQwMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IEdSNC0yIHNlbGVjdGlvbiBiaXQgKi8NCiNkZWZpbmUgUklfQVNDUjJfR1I0XzMgICAgICAgICAgICAgICAgICAoMHgwMDAwMDgwMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IEdSNC0zIHNlbGVjdGlvbiBiaXQgKi8NCiNkZWZpbmUgUklfQVNDUjJfR1I0XzQgICAgICAgICAgICAgICAgICAoMHgwMDAwODAwMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IEdSNC00IHNlbGVjdGlvbiBiaXQgKi8NCiNkZWZpbmUgUklfQVNDUjJfQ0gwYl9Qb3MgICAgICAgICAgICAgICAoMTZVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUklfQVNDUjJfQ0gwYl9Nc2sgICAgICAgICAgICAgICAoMHgxVSA8PCBSSV9BU0NSMl9DSDBiX1BvcykgICAgICAgICAgICAvKiE8IDB4MDAwMTAwMDAgKi8NCiNkZWZpbmUgUklfQVNDUjJfQ0gwYiAgICAgICAgICAgICAgICAgICBSSV9BU0NSMl9DSDBiX01zayAgICAgICAgICAgICAgICAgICAgICAvKiE8IENIMGIgc2VsZWN0aW9uIGJpdCAqLw0KDQovKioqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBSSV9IWVNDUjEgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBSSV9IWVNDUjFfUEFfUG9zICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSSV9IWVNDUjFfUEFfTXNrICAgICAgICAgICAgICAgICgweEZGRkZVIDw8IFJJX0hZU0NSMV9QQV9Qb3MpICAgICAgICAgIC8qITwgMHgwMDAwRkZGRiAqLw0KI2RlZmluZSBSSV9IWVNDUjFfUEEgICAgICAgICAgICAgICAgICAgIFJJX0hZU0NSMV9QQV9Nc2sgICAgICAgICAgICAgICAgICAgICAgIC8qITwgUEFbMTU6MF0gUG9ydCBBIEh5c3RlcmVzaXMgc2VsZWN0aW9uICovDQojZGVmaW5lIFJJX0hZU0NSMV9QQV8wICAgICAgICAgICAgICAgICAgKDB4MDAwMVUgPDwgUklfSFlTQ1IxX1BBX1BvcykgICAgICAgICAgLyohPCAweDAwMDAwMDAxICovDQojZGVmaW5lIFJJX0hZU0NSMV9QQV8xICAgICAgICAgICAgICAgICAgKDB4MDAwMlUgPDwgUklfSFlTQ1IxX1BBX1BvcykgICAgICAgICAgLyohPCAweDAwMDAwMDAyICovDQojZGVmaW5lIFJJX0hZU0NSMV9QQV8yICAgICAgICAgICAgICAgICAgKDB4MDAwNFUgPDwgUklfSFlTQ1IxX1BBX1BvcykgICAgICAgICAgLyohPCAweDAwMDAwMDA0ICovDQojZGVmaW5lIFJJX0hZU0NSMV9QQV8zICAgICAgICAgICAgICAgICAgKDB4MDAwOFUgPDwgUklfSFlTQ1IxX1BBX1BvcykgICAgICAgICAgLyohPCAweDAwMDAwMDA4ICovDQojZGVmaW5lIFJJX0hZU0NSMV9QQV80ICAgICAgICAgICAgICAgICAgKDB4MDAxMFUgPDwgUklfSFlTQ1IxX1BBX1BvcykgICAgICAgICAgLyohPCAweDAwMDAwMDEwICovDQojZGVmaW5lIFJJX0hZU0NSMV9QQV81ICAgICAgICAgICAgICAgICAgKDB4MDAyMFUgPDwgUklfSFlTQ1IxX1BBX1BvcykgICAgICAgICAgLyohPCAweDAwMDAwMDIwICovDQojZGVmaW5lIFJJX0hZU0NSMV9QQV82ICAgICAgICAgICAgICAgICAgKDB4MDA0MFUgPDwgUklfSFlTQ1IxX1BBX1BvcykgICAgICAgICAgLyohPCAweDAwMDAwMDQwICovDQojZGVmaW5lIFJJX0hZU0NSMV9QQV83ICAgICAgICAgICAgICAgICAgKDB4MDA4MFUgPDwgUklfSFlTQ1IxX1BBX1BvcykgICAgICAgICAgLyohPCAweDAwMDAwMDgwICovDQojZGVmaW5lIFJJX0hZU0NSMV9QQV84ICAgICAgICAgICAgICAgICAgKDB4MDEwMFUgPDwgUklfSFlTQ1IxX1BBX1BvcykgICAgICAgICAgLyohPCAweDAwMDAwMTAwICovDQojZGVmaW5lIFJJX0hZU0NSMV9QQV85ICAgICAgICAgICAgICAgICAgKDB4MDIwMFUgPDwgUklfSFlTQ1IxX1BBX1BvcykgICAgICAgICAgLyohPCAweDAwMDAwMjAwICovDQojZGVmaW5lIFJJX0hZU0NSMV9QQV8xMCAgICAgICAgICAgICAgICAgKDB4MDQwMFUgPDwgUklfSFlTQ1IxX1BBX1BvcykgICAgICAgICAgLyohPCAweDAwMDAwNDAwICovDQojZGVmaW5lIFJJX0hZU0NSMV9QQV8xMSAgICAgICAgICAgICAgICAgKDB4MDgwMFUgPDwgUklfSFlTQ1IxX1BBX1BvcykgICAgICAgICAgLyohPCAweDAwMDAwODAwICovDQojZGVmaW5lIFJJX0hZU0NSMV9QQV8xMiAgICAgICAgICAgICAgICAgKDB4MTAwMFUgPDwgUklfSFlTQ1IxX1BBX1BvcykgICAgICAgICAgLyohPCAweDAwMDAxMDAwICovDQojZGVmaW5lIFJJX0hZU0NSMV9QQV8xMyAgICAgICAgICAgICAgICAgKDB4MjAwMFUgPDwgUklfSFlTQ1IxX1BBX1BvcykgICAgICAgICAgLyohPCAweDAwMDAyMDAwICovDQojZGVmaW5lIFJJX0hZU0NSMV9QQV8xNCAgICAgICAgICAgICAgICAgKDB4NDAwMFUgPDwgUklfSFlTQ1IxX1BBX1BvcykgICAgICAgICAgLyohPCAweDAwMDA0MDAwICovDQojZGVmaW5lIFJJX0hZU0NSMV9QQV8xNSAgICAgICAgICAgICAgICAgKDB4ODAwMFUgPDwgUklfSFlTQ1IxX1BBX1BvcykgICAgICAgICAgLyohPCAweDAwMDA4MDAwICovDQoNCiNkZWZpbmUgUklfSFlTQ1IxX1BCX1BvcyAgICAgICAgICAgICAgICAoMTZVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUklfSFlTQ1IxX1BCX01zayAgICAgICAgICAgICAgICAoMHhGRkZGVSA8PCBSSV9IWVNDUjFfUEJfUG9zKSAgICAgICAgICAvKiE8IDB4RkZGRjAwMDAgKi8NCiNkZWZpbmUgUklfSFlTQ1IxX1BCICAgICAgICAgICAgICAgICAgICBSSV9IWVNDUjFfUEJfTXNrICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBCWzE1OjBdIFBvcnQgQiBIeXN0ZXJlc2lzIHNlbGVjdGlvbiAqLw0KI2RlZmluZSBSSV9IWVNDUjFfUEJfMCAgICAgICAgICAgICAgICAgICgweDAwMDFVIDw8IFJJX0hZU0NSMV9QQl9Qb3MpICAgICAgICAgIC8qITwgMHgwMDAxMDAwMCAqLw0KI2RlZmluZSBSSV9IWVNDUjFfUEJfMSAgICAgICAgICAgICAgICAgICgweDAwMDJVIDw8IFJJX0hZU0NSMV9QQl9Qb3MpICAgICAgICAgIC8qITwgMHgwMDAyMDAwMCAqLw0KI2RlZmluZSBSSV9IWVNDUjFfUEJfMiAgICAgICAgICAgICAgICAgICgweDAwMDRVIDw8IFJJX0hZU0NSMV9QQl9Qb3MpICAgICAgICAgIC8qITwgMHgwMDA0MDAwMCAqLw0KI2RlZmluZSBSSV9IWVNDUjFfUEJfMyAgICAgICAgICAgICAgICAgICgweDAwMDhVIDw8IFJJX0hZU0NSMV9QQl9Qb3MpICAgICAgICAgIC8qITwgMHgwMDA4MDAwMCAqLw0KI2RlZmluZSBSSV9IWVNDUjFfUEJfNCAgICAgICAgICAgICAgICAgICgweDAwMTBVIDw8IFJJX0hZU0NSMV9QQl9Qb3MpICAgICAgICAgIC8qITwgMHgwMDEwMDAwMCAqLw0KI2RlZmluZSBSSV9IWVNDUjFfUEJfNSAgICAgICAgICAgICAgICAgICgweDAwMjBVIDw8IFJJX0hZU0NSMV9QQl9Qb3MpICAgICAgICAgIC8qITwgMHgwMDIwMDAwMCAqLw0KI2RlZmluZSBSSV9IWVNDUjFfUEJfNiAgICAgICAgICAgICAgICAgICgweDAwNDBVIDw8IFJJX0hZU0NSMV9QQl9Qb3MpICAgICAgICAgIC8qITwgMHgwMDQwMDAwMCAqLw0KI2RlZmluZSBSSV9IWVNDUjFfUEJfNyAgICAgICAgICAgICAgICAgICgweDAwODBVIDw8IFJJX0hZU0NSMV9QQl9Qb3MpICAgICAgICAgIC8qITwgMHgwMDgwMDAwMCAqLw0KI2RlZmluZSBSSV9IWVNDUjFfUEJfOCAgICAgICAgICAgICAgICAgICgweDAxMDBVIDw8IFJJX0hZU0NSMV9QQl9Qb3MpICAgICAgICAgIC8qITwgMHgwMTAwMDAwMCAqLw0KI2RlZmluZSBSSV9IWVNDUjFfUEJfOSAgICAgICAgICAgICAgICAgICgweDAyMDBVIDw8IFJJX0hZU0NSMV9QQl9Qb3MpICAgICAgICAgIC8qITwgMHgwMjAwMDAwMCAqLw0KI2RlZmluZSBSSV9IWVNDUjFfUEJfMTAgICAgICAgICAgICAgICAgICgweDA0MDBVIDw8IFJJX0hZU0NSMV9QQl9Qb3MpICAgICAgICAgIC8qITwgMHgwNDAwMDAwMCAqLw0KI2RlZmluZSBSSV9IWVNDUjFfUEJfMTEgICAgICAgICAgICAgICAgICgweDA4MDBVIDw8IFJJX0hZU0NSMV9QQl9Qb3MpICAgICAgICAgIC8qITwgMHgwODAwMDAwMCAqLw0KI2RlZmluZSBSSV9IWVNDUjFfUEJfMTIgICAgICAgICAgICAgICAgICgweDEwMDBVIDw8IFJJX0hZU0NSMV9QQl9Qb3MpICAgICAgICAgIC8qITwgMHgxMDAwMDAwMCAqLw0KI2RlZmluZSBSSV9IWVNDUjFfUEJfMTMgICAgICAgICAgICAgICAgICgweDIwMDBVIDw8IFJJX0hZU0NSMV9QQl9Qb3MpICAgICAgICAgIC8qITwgMHgyMDAwMDAwMCAqLw0KI2RlZmluZSBSSV9IWVNDUjFfUEJfMTQgICAgICAgICAgICAgICAgICgweDQwMDBVIDw8IFJJX0hZU0NSMV9QQl9Qb3MpICAgICAgICAgIC8qITwgMHg0MDAwMDAwMCAqLw0KI2RlZmluZSBSSV9IWVNDUjFfUEJfMTUgICAgICAgICAgICAgICAgICgweDgwMDBVIDw8IFJJX0hZU0NSMV9QQl9Qb3MpICAgICAgICAgIC8qITwgMHg4MDAwMDAwMCAqLw0KDQovKioqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBSSV9IWVNDUjIgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBSSV9IWVNDUjJfUENfUG9zICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSSV9IWVNDUjJfUENfTXNrICAgICAgICAgICAgICAgICgweEZGRkZVIDw8IFJJX0hZU0NSMl9QQ19Qb3MpICAgICAgICAgIC8qITwgMHgwMDAwRkZGRiAqLw0KI2RlZmluZSBSSV9IWVNDUjJfUEMgICAgICAgICAgICAgICAgICAgIFJJX0hZU0NSMl9QQ19Nc2sgICAgICAgICAgICAgICAgICAgICAgIC8qITwgUENbMTU6MF0gUG9ydCBDIEh5c3RlcmVzaXMgc2VsZWN0aW9uICovDQojZGVmaW5lIFJJX0hZU0NSMl9QQ18wICAgICAgICAgICAgICAgICAgKDB4MDAwMVUgPDwgUklfSFlTQ1IyX1BDX1BvcykgICAgICAgICAgLyohPCAweDAwMDAwMDAxICovDQojZGVmaW5lIFJJX0hZU0NSMl9QQ18xICAgICAgICAgICAgICAgICAgKDB4MDAwMlUgPDwgUklfSFlTQ1IyX1BDX1BvcykgICAgICAgICAgLyohPCAweDAwMDAwMDAyICovDQojZGVmaW5lIFJJX0hZU0NSMl9QQ18yICAgICAgICAgICAgICAgICAgKDB4MDAwNFUgPDwgUklfSFlTQ1IyX1BDX1BvcykgICAgICAgICAgLyohPCAweDAwMDAwMDA0ICovDQojZGVmaW5lIFJJX0hZU0NSMl9QQ18zICAgICAgICAgICAgICAgICAgKDB4MDAwOFUgPDwgUklfSFlTQ1IyX1BDX1BvcykgICAgICAgICAgLyohPCAweDAwMDAwMDA4ICovDQojZGVmaW5lIFJJX0hZU0NSMl9QQ180ICAgICAgICAgICAgICAgICAgKDB4MDAxMFUgPDwgUklfSFlTQ1IyX1BDX1BvcykgICAgICAgICAgLyohPCAweDAwMDAwMDEwICovDQojZGVmaW5lIFJJX0hZU0NSMl9QQ181ICAgICAgICAgICAgICAgICAgKDB4MDAyMFUgPDwgUklfSFlTQ1IyX1BDX1BvcykgICAgICAgICAgLyohPCAweDAwMDAwMDIwICovDQojZGVmaW5lIFJJX0hZU0NSMl9QQ182ICAgICAgICAgICAgICAgICAgKDB4MDA0MFUgPDwgUklfSFlTQ1IyX1BDX1BvcykgICAgICAgICAgLyohPCAweDAwMDAwMDQwICovDQojZGVmaW5lIFJJX0hZU0NSMl9QQ183ICAgICAgICAgICAgICAgICAgKDB4MDA4MFUgPDwgUklfSFlTQ1IyX1BDX1BvcykgICAgICAgICAgLyohPCAweDAwMDAwMDgwICovDQojZGVmaW5lIFJJX0hZU0NSMl9QQ184ICAgICAgICAgICAgICAgICAgKDB4MDEwMFUgPDwgUklfSFlTQ1IyX1BDX1BvcykgICAgICAgICAgLyohPCAweDAwMDAwMTAwICovDQojZGVmaW5lIFJJX0hZU0NSMl9QQ185ICAgICAgICAgICAgICAgICAgKDB4MDIwMFUgPDwgUklfSFlTQ1IyX1BDX1BvcykgICAgICAgICAgLyohPCAweDAwMDAwMjAwICovDQojZGVmaW5lIFJJX0hZU0NSMl9QQ18xMCAgICAgICAgICAgICAgICAgKDB4MDQwMFUgPDwgUklfSFlTQ1IyX1BDX1BvcykgICAgICAgICAgLyohPCAweDAwMDAwNDAwICovDQojZGVmaW5lIFJJX0hZU0NSMl9QQ18xMSAgICAgICAgICAgICAgICAgKDB4MDgwMFUgPDwgUklfSFlTQ1IyX1BDX1BvcykgICAgICAgICAgLyohPCAweDAwMDAwODAwICovDQojZGVmaW5lIFJJX0hZU0NSMl9QQ18xMiAgICAgICAgICAgICAgICAgKDB4MTAwMFUgPDwgUklfSFlTQ1IyX1BDX1BvcykgICAgICAgICAgLyohPCAweDAwMDAxMDAwICovDQojZGVmaW5lIFJJX0hZU0NSMl9QQ18xMyAgICAgICAgICAgICAgICAgKDB4MjAwMFUgPDwgUklfSFlTQ1IyX1BDX1BvcykgICAgICAgICAgLyohPCAweDAwMDAyMDAwICovDQojZGVmaW5lIFJJX0hZU0NSMl9QQ18xNCAgICAgICAgICAgICAgICAgKDB4NDAwMFUgPDwgUklfSFlTQ1IyX1BDX1BvcykgICAgICAgICAgLyohPCAweDAwMDA0MDAwICovDQojZGVmaW5lIFJJX0hZU0NSMl9QQ18xNSAgICAgICAgICAgICAgICAgKDB4ODAwMFUgPDwgUklfSFlTQ1IyX1BDX1BvcykgICAgICAgICAgLyohPCAweDAwMDA4MDAwICovDQoNCiNkZWZpbmUgUklfSFlTQ1IyX1BEX1BvcyAgICAgICAgICAgICAgICAoMTZVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUklfSFlTQ1IyX1BEX01zayAgICAgICAgICAgICAgICAoMHhGRkZGVSA8PCBSSV9IWVNDUjJfUERfUG9zKSAgICAgICAgICAvKiE8IDB4RkZGRjAwMDAgKi8NCiNkZWZpbmUgUklfSFlTQ1IyX1BEICAgICAgICAgICAgICAgICAgICBSSV9IWVNDUjJfUERfTXNrICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBEWzE1OjBdIFBvcnQgRCBIeXN0ZXJlc2lzIHNlbGVjdGlvbiAqLw0KI2RlZmluZSBSSV9IWVNDUjJfUERfMCAgICAgICAgICAgICAgICAgICgweDAwMDFVIDw8IFJJX0hZU0NSMl9QRF9Qb3MpICAgICAgICAgIC8qITwgMHgwMDAxMDAwMCAqLw0KI2RlZmluZSBSSV9IWVNDUjJfUERfMSAgICAgICAgICAgICAgICAgICgweDAwMDJVIDw8IFJJX0hZU0NSMl9QRF9Qb3MpICAgICAgICAgIC8qITwgMHgwMDAyMDAwMCAqLw0KI2RlZmluZSBSSV9IWVNDUjJfUERfMiAgICAgICAgICAgICAgICAgICgweDAwMDRVIDw8IFJJX0hZU0NSMl9QRF9Qb3MpICAgICAgICAgIC8qITwgMHgwMDA0MDAwMCAqLw0KI2RlZmluZSBSSV9IWVNDUjJfUERfMyAgICAgICAgICAgICAgICAgICgweDAwMDhVIDw8IFJJX0hZU0NSMl9QRF9Qb3MpICAgICAgICAgIC8qITwgMHgwMDA4MDAwMCAqLw0KI2RlZmluZSBSSV9IWVNDUjJfUERfNCAgICAgICAgICAgICAgICAgICgweDAwMTBVIDw8IFJJX0hZU0NSMl9QRF9Qb3MpICAgICAgICAgIC8qITwgMHgwMDEwMDAwMCAqLw0KI2RlZmluZSBSSV9IWVNDUjJfUERfNSAgICAgICAgICAgICAgICAgICgweDAwMjBVIDw8IFJJX0hZU0NSMl9QRF9Qb3MpICAgICAgICAgIC8qITwgMHgwMDIwMDAwMCAqLw0KI2RlZmluZSBSSV9IWVNDUjJfUERfNiAgICAgICAgICAgICAgICAgICgweDAwNDBVIDw8IFJJX0hZU0NSMl9QRF9Qb3MpICAgICAgICAgIC8qITwgMHgwMDQwMDAwMCAqLw0KI2RlZmluZSBSSV9IWVNDUjJfUERfNyAgICAgICAgICAgICAgICAgICgweDAwODBVIDw8IFJJX0hZU0NSMl9QRF9Qb3MpICAgICAgICAgIC8qITwgMHgwMDgwMDAwMCAqLw0KI2RlZmluZSBSSV9IWVNDUjJfUERfOCAgICAgICAgICAgICAgICAgICgweDAxMDBVIDw8IFJJX0hZU0NSMl9QRF9Qb3MpICAgICAgICAgIC8qITwgMHgwMTAwMDAwMCAqLw0KI2RlZmluZSBSSV9IWVNDUjJfUERfOSAgICAgICAgICAgICAgICAgICgweDAyMDBVIDw8IFJJX0hZU0NSMl9QRF9Qb3MpICAgICAgICAgIC8qITwgMHgwMjAwMDAwMCAqLw0KI2RlZmluZSBSSV9IWVNDUjJfUERfMTAgICAgICAgICAgICAgICAgICgweDA0MDBVIDw8IFJJX0hZU0NSMl9QRF9Qb3MpICAgICAgICAgIC8qITwgMHgwNDAwMDAwMCAqLw0KI2RlZmluZSBSSV9IWVNDUjJfUERfMTEgICAgICAgICAgICAgICAgICgweDA4MDBVIDw8IFJJX0hZU0NSMl9QRF9Qb3MpICAgICAgICAgIC8qITwgMHgwODAwMDAwMCAqLw0KI2RlZmluZSBSSV9IWVNDUjJfUERfMTIgICAgICAgICAgICAgICAgICgweDEwMDBVIDw8IFJJX0hZU0NSMl9QRF9Qb3MpICAgICAgICAgIC8qITwgMHgxMDAwMDAwMCAqLw0KI2RlZmluZSBSSV9IWVNDUjJfUERfMTMgICAgICAgICAgICAgICAgICgweDIwMDBVIDw8IFJJX0hZU0NSMl9QRF9Qb3MpICAgICAgICAgIC8qITwgMHgyMDAwMDAwMCAqLw0KI2RlZmluZSBSSV9IWVNDUjJfUERfMTQgICAgICAgICAgICAgICAgICgweDQwMDBVIDw8IFJJX0hZU0NSMl9QRF9Qb3MpICAgICAgICAgIC8qITwgMHg0MDAwMDAwMCAqLw0KI2RlZmluZSBSSV9IWVNDUjJfUERfMTUgICAgICAgICAgICAgICAgICgweDgwMDBVIDw8IFJJX0hZU0NSMl9QRF9Qb3MpICAgICAgICAgIC8qITwgMHg4MDAwMDAwMCAqLw0KDQovKioqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBSSV9IWVNDUjMgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBSSV9IWVNDUjNfUEVfUG9zICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSSV9IWVNDUjNfUEVfTXNrICAgICAgICAgICAgICAgICgweEZGRkZVIDw8IFJJX0hZU0NSM19QRV9Qb3MpICAgICAgICAgIC8qITwgMHgwMDAwRkZGRiAqLw0KI2RlZmluZSBSSV9IWVNDUjNfUEUgICAgICAgICAgICAgICAgICAgIFJJX0hZU0NSM19QRV9Nc2sgICAgICAgICAgICAgICAgICAgICAgIC8qITwgUEVbMTU6MF0gUG9ydCBFIEh5c3RlcmVzaXMgc2VsZWN0aW9uICovDQojZGVmaW5lIFJJX0hZU0NSM19QRV8wICAgICAgICAgICAgICAgICAgKDB4MDAwMVUgPDwgUklfSFlTQ1IzX1BFX1BvcykgICAgICAgICAgLyohPCAweDAwMDAwMDAxICovDQojZGVmaW5lIFJJX0hZU0NSM19QRV8xICAgICAgICAgICAgICAgICAgKDB4MDAwMlUgPDwgUklfSFlTQ1IzX1BFX1BvcykgICAgICAgICAgLyohPCAweDAwMDAwMDAyICovDQojZGVmaW5lIFJJX0hZU0NSM19QRV8yICAgICAgICAgICAgICAgICAgKDB4MDAwNFUgPDwgUklfSFlTQ1IzX1BFX1BvcykgICAgICAgICAgLyohPCAweDAwMDAwMDA0ICovDQojZGVmaW5lIFJJX0hZU0NSM19QRV8zICAgICAgICAgICAgICAgICAgKDB4MDAwOFUgPDwgUklfSFlTQ1IzX1BFX1BvcykgICAgICAgICAgLyohPCAweDAwMDAwMDA4ICovDQojZGVmaW5lIFJJX0hZU0NSM19QRV80ICAgICAgICAgICAgICAgICAgKDB4MDAxMFUgPDwgUklfSFlTQ1IzX1BFX1BvcykgICAgICAgICAgLyohPCAweDAwMDAwMDEwICovDQojZGVmaW5lIFJJX0hZU0NSM19QRV81ICAgICAgICAgICAgICAgICAgKDB4MDAyMFUgPDwgUklfSFlTQ1IzX1BFX1BvcykgICAgICAgICAgLyohPCAweDAwMDAwMDIwICovDQojZGVmaW5lIFJJX0hZU0NSM19QRV82ICAgICAgICAgICAgICAgICAgKDB4MDA0MFUgPDwgUklfSFlTQ1IzX1BFX1BvcykgICAgICAgICAgLyohPCAweDAwMDAwMDQwICovDQojZGVmaW5lIFJJX0hZU0NSM19QRV83ICAgICAgICAgICAgICAgICAgKDB4MDA4MFUgPDwgUklfSFlTQ1IzX1BFX1BvcykgICAgICAgICAgLyohPCAweDAwMDAwMDgwICovDQojZGVmaW5lIFJJX0hZU0NSM19QRV84ICAgICAgICAgICAgICAgICAgKDB4MDEwMFUgPDwgUklfSFlTQ1IzX1BFX1BvcykgICAgICAgICAgLyohPCAweDAwMDAwMTAwICovDQojZGVmaW5lIFJJX0hZU0NSM19QRV85ICAgICAgICAgICAgICAgICAgKDB4MDIwMFUgPDwgUklfSFlTQ1IzX1BFX1BvcykgICAgICAgICAgLyohPCAweDAwMDAwMjAwICovDQojZGVmaW5lIFJJX0hZU0NSM19QRV8xMCAgICAgICAgICAgICAgICAgKDB4MDQwMFUgPDwgUklfSFlTQ1IzX1BFX1BvcykgICAgICAgICAgLyohPCAweDAwMDAwNDAwICovDQojZGVmaW5lIFJJX0hZU0NSM19QRV8xMSAgICAgICAgICAgICAgICAgKDB4MDgwMFUgPDwgUklfSFlTQ1IzX1BFX1BvcykgICAgICAgICAgLyohPCAweDAwMDAwODAwICovDQojZGVmaW5lIFJJX0hZU0NSM19QRV8xMiAgICAgICAgICAgICAgICAgKDB4MTAwMFUgPDwgUklfSFlTQ1IzX1BFX1BvcykgICAgICAgICAgLyohPCAweDAwMDAxMDAwICovDQojZGVmaW5lIFJJX0hZU0NSM19QRV8xMyAgICAgICAgICAgICAgICAgKDB4MjAwMFUgPDwgUklfSFlTQ1IzX1BFX1BvcykgICAgICAgICAgLyohPCAweDAwMDAyMDAwICovDQojZGVmaW5lIFJJX0hZU0NSM19QRV8xNCAgICAgICAgICAgICAgICAgKDB4NDAwMFUgPDwgUklfSFlTQ1IzX1BFX1BvcykgICAgICAgICAgLyohPCAweDAwMDA0MDAwICovDQojZGVmaW5lIFJJX0hZU0NSM19QRV8xNSAgICAgICAgICAgICAgICAgKDB4ODAwMFUgPDwgUklfSFlTQ1IzX1BFX1BvcykgICAgICAgICAgLyohPCAweDAwMDA4MDAwICovDQoNCi8qKioqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFJJX0FTTVIxIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgUklfQVNNUjFfUEFfUG9zICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUklfQVNNUjFfUEFfTXNrICAgICAgICAgICAgICAgICAoMHhGRkZGVSA8PCBSSV9BU01SMV9QQV9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMEZGRkYgKi8NCiNkZWZpbmUgUklfQVNNUjFfUEEgICAgICAgICAgICAgICAgICAgICBSSV9BU01SMV9QQV9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBBWzE1OjBdIFBvcnQgQSBzZWxlY3Rpb24qLw0KI2RlZmluZSBSSV9BU01SMV9QQV8wICAgICAgICAgICAgICAgICAgICgweDAwMDFVIDw8IFJJX0FTTVIxX1BBX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDAwMSAqLw0KI2RlZmluZSBSSV9BU01SMV9QQV8xICAgICAgICAgICAgICAgICAgICgweDAwMDJVIDw8IFJJX0FTTVIxX1BBX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDAwMiAqLw0KI2RlZmluZSBSSV9BU01SMV9QQV8yICAgICAgICAgICAgICAgICAgICgweDAwMDRVIDw8IFJJX0FTTVIxX1BBX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDAwNCAqLw0KI2RlZmluZSBSSV9BU01SMV9QQV8zICAgICAgICAgICAgICAgICAgICgweDAwMDhVIDw8IFJJX0FTTVIxX1BBX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDAwOCAqLw0KI2RlZmluZSBSSV9BU01SMV9QQV80ICAgICAgICAgICAgICAgICAgICgweDAwMTBVIDw8IFJJX0FTTVIxX1BBX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDAxMCAqLw0KI2RlZmluZSBSSV9BU01SMV9QQV81ICAgICAgICAgICAgICAgICAgICgweDAwMjBVIDw8IFJJX0FTTVIxX1BBX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDAyMCAqLw0KI2RlZmluZSBSSV9BU01SMV9QQV82ICAgICAgICAgICAgICAgICAgICgweDAwNDBVIDw8IFJJX0FTTVIxX1BBX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDA0MCAqLw0KI2RlZmluZSBSSV9BU01SMV9QQV83ICAgICAgICAgICAgICAgICAgICgweDAwODBVIDw8IFJJX0FTTVIxX1BBX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDA4MCAqLw0KI2RlZmluZSBSSV9BU01SMV9QQV84ICAgICAgICAgICAgICAgICAgICgweDAxMDBVIDw8IFJJX0FTTVIxX1BBX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDEwMCAqLw0KI2RlZmluZSBSSV9BU01SMV9QQV85ICAgICAgICAgICAgICAgICAgICgweDAyMDBVIDw8IFJJX0FTTVIxX1BBX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDIwMCAqLw0KI2RlZmluZSBSSV9BU01SMV9QQV8xMCAgICAgICAgICAgICAgICAgICgweDA0MDBVIDw8IFJJX0FTTVIxX1BBX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDQwMCAqLw0KI2RlZmluZSBSSV9BU01SMV9QQV8xMSAgICAgICAgICAgICAgICAgICgweDA4MDBVIDw8IFJJX0FTTVIxX1BBX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDgwMCAqLw0KI2RlZmluZSBSSV9BU01SMV9QQV8xMiAgICAgICAgICAgICAgICAgICgweDEwMDBVIDw8IFJJX0FTTVIxX1BBX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMTAwMCAqLw0KI2RlZmluZSBSSV9BU01SMV9QQV8xMyAgICAgICAgICAgICAgICAgICgweDIwMDBVIDw8IFJJX0FTTVIxX1BBX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMjAwMCAqLw0KI2RlZmluZSBSSV9BU01SMV9QQV8xNCAgICAgICAgICAgICAgICAgICgweDQwMDBVIDw8IFJJX0FTTVIxX1BBX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwNDAwMCAqLw0KI2RlZmluZSBSSV9BU01SMV9QQV8xNSAgICAgICAgICAgICAgICAgICgweDgwMDBVIDw8IFJJX0FTTVIxX1BBX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwODAwMCAqLw0KDQovKioqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBSSV9DTVIxIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgUklfQ01SMV9QQV9Qb3MgICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUklfQ01SMV9QQV9Nc2sgICAgICAgICAgICAgICAgICAoMHhGRkZGVSA8PCBSSV9DTVIxX1BBX1BvcykgICAgICAgICAgICAvKiE8IDB4MDAwMEZGRkYgKi8NCiNkZWZpbmUgUklfQ01SMV9QQSAgICAgICAgICAgICAgICAgICAgICBSSV9DTVIxX1BBX01zayAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBBWzE1OjBdIFBvcnQgQSBzZWxlY3Rpb24qLw0KI2RlZmluZSBSSV9DTVIxX1BBXzAgICAgICAgICAgICAgICAgICAgICgweDAwMDFVIDw8IFJJX0NNUjFfUEFfUG9zKSAgICAgICAgICAgIC8qITwgMHgwMDAwMDAwMSAqLw0KI2RlZmluZSBSSV9DTVIxX1BBXzEgICAgICAgICAgICAgICAgICAgICgweDAwMDJVIDw8IFJJX0NNUjFfUEFfUG9zKSAgICAgICAgICAgIC8qITwgMHgwMDAwMDAwMiAqLw0KI2RlZmluZSBSSV9DTVIxX1BBXzIgICAgICAgICAgICAgICAgICAgICgweDAwMDRVIDw8IFJJX0NNUjFfUEFfUG9zKSAgICAgICAgICAgIC8qITwgMHgwMDAwMDAwNCAqLw0KI2RlZmluZSBSSV9DTVIxX1BBXzMgICAgICAgICAgICAgICAgICAgICgweDAwMDhVIDw8IFJJX0NNUjFfUEFfUG9zKSAgICAgICAgICAgIC8qITwgMHgwMDAwMDAwOCAqLw0KI2RlZmluZSBSSV9DTVIxX1BBXzQgICAgICAgICAgICAgICAgICAgICgweDAwMTBVIDw8IFJJX0NNUjFfUEFfUG9zKSAgICAgICAgICAgIC8qITwgMHgwMDAwMDAxMCAqLw0KI2RlZmluZSBSSV9DTVIxX1BBXzUgICAgICAgICAgICAgICAgICAgICgweDAwMjBVIDw8IFJJX0NNUjFfUEFfUG9zKSAgICAgICAgICAgIC8qITwgMHgwMDAwMDAyMCAqLw0KI2RlZmluZSBSSV9DTVIxX1BBXzYgICAgICAgICAgICAgICAgICAgICgweDAwNDBVIDw8IFJJX0NNUjFfUEFfUG9zKSAgICAgICAgICAgIC8qITwgMHgwMDAwMDA0MCAqLw0KI2RlZmluZSBSSV9DTVIxX1BBXzcgICAgICAgICAgICAgICAgICAgICgweDAwODBVIDw8IFJJX0NNUjFfUEFfUG9zKSAgICAgICAgICAgIC8qITwgMHgwMDAwMDA4MCAqLw0KI2RlZmluZSBSSV9DTVIxX1BBXzggICAgICAgICAgICAgICAgICAgICgweDAxMDBVIDw8IFJJX0NNUjFfUEFfUG9zKSAgICAgICAgICAgIC8qITwgMHgwMDAwMDEwMCAqLw0KI2RlZmluZSBSSV9DTVIxX1BBXzkgICAgICAgICAgICAgICAgICAgICgweDAyMDBVIDw8IFJJX0NNUjFfUEFfUG9zKSAgICAgICAgICAgIC8qITwgMHgwMDAwMDIwMCAqLw0KI2RlZmluZSBSSV9DTVIxX1BBXzEwICAgICAgICAgICAgICAgICAgICgweDA0MDBVIDw8IFJJX0NNUjFfUEFfUG9zKSAgICAgICAgICAgIC8qITwgMHgwMDAwMDQwMCAqLw0KI2RlZmluZSBSSV9DTVIxX1BBXzExICAgICAgICAgICAgICAgICAgICgweDA4MDBVIDw8IFJJX0NNUjFfUEFfUG9zKSAgICAgICAgICAgIC8qITwgMHgwMDAwMDgwMCAqLw0KI2RlZmluZSBSSV9DTVIxX1BBXzEyICAgICAgICAgICAgICAgICAgICgweDEwMDBVIDw8IFJJX0NNUjFfUEFfUG9zKSAgICAgICAgICAgIC8qITwgMHgwMDAwMTAwMCAqLw0KI2RlZmluZSBSSV9DTVIxX1BBXzEzICAgICAgICAgICAgICAgICAgICgweDIwMDBVIDw8IFJJX0NNUjFfUEFfUG9zKSAgICAgICAgICAgIC8qITwgMHgwMDAwMjAwMCAqLw0KI2RlZmluZSBSSV9DTVIxX1BBXzE0ICAgICAgICAgICAgICAgICAgICgweDQwMDBVIDw8IFJJX0NNUjFfUEFfUG9zKSAgICAgICAgICAgIC8qITwgMHgwMDAwNDAwMCAqLw0KI2RlZmluZSBSSV9DTVIxX1BBXzE1ICAgICAgICAgICAgICAgICAgICgweDgwMDBVIDw8IFJJX0NNUjFfUEFfUG9zKSAgICAgICAgICAgIC8qITwgMHgwMDAwODAwMCAqLw0KDQovKioqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBSSV9DSUNSMSByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIFJJX0NJQ1IxX1BBX1BvcyAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJJX0NJQ1IxX1BBX01zayAgICAgICAgICAgICAgICAgKDB4RkZGRlUgPDwgUklfQ0lDUjFfUEFfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDBGRkZGICovDQojZGVmaW5lIFJJX0NJQ1IxX1BBICAgICAgICAgICAgICAgICAgICAgUklfQ0lDUjFfUEFfTXNrICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBQQVsxNTowXSBQb3J0IEEgc2VsZWN0aW9uKi8NCiNkZWZpbmUgUklfQ0lDUjFfUEFfMCAgICAgICAgICAgICAgICAgICAoMHgwMDAxVSA8PCBSSV9DSUNSMV9QQV9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDEgKi8NCiNkZWZpbmUgUklfQ0lDUjFfUEFfMSAgICAgICAgICAgICAgICAgICAoMHgwMDAyVSA8PCBSSV9DSUNSMV9QQV9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDIgKi8NCiNkZWZpbmUgUklfQ0lDUjFfUEFfMiAgICAgICAgICAgICAgICAgICAoMHgwMDA0VSA8PCBSSV9DSUNSMV9QQV9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDQgKi8NCiNkZWZpbmUgUklfQ0lDUjFfUEFfMyAgICAgICAgICAgICAgICAgICAoMHgwMDA4VSA8PCBSSV9DSUNSMV9QQV9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDggKi8NCiNkZWZpbmUgUklfQ0lDUjFfUEFfNCAgICAgICAgICAgICAgICAgICAoMHgwMDEwVSA8PCBSSV9DSUNSMV9QQV9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDAwMTAgKi8NCiNkZWZpbmUgUklfQ0lDUjFfUEFfNSAgICAgICAgICAgICAgICAgICAoMHgwMDIwVSA8PCBSSV9DSUNSMV9QQV9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDAwMjAgKi8NCiNkZWZpbmUgUklfQ0lDUjFfUEFfNiAgICAgICAgICAgICAgICAgICAoMHgwMDQwVSA8PCBSSV9DSUNSMV9QQV9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDAwNDAgKi8NCiNkZWZpbmUgUklfQ0lDUjFfUEFfNyAgICAgICAgICAgICAgICAgICAoMHgwMDgwVSA8PCBSSV9DSUNSMV9QQV9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDAwODAgKi8NCiNkZWZpbmUgUklfQ0lDUjFfUEFfOCAgICAgICAgICAgICAgICAgICAoMHgwMTAwVSA8PCBSSV9DSUNSMV9QQV9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDAxMDAgKi8NCiNkZWZpbmUgUklfQ0lDUjFfUEFfOSAgICAgICAgICAgICAgICAgICAoMHgwMjAwVSA8PCBSSV9DSUNSMV9QQV9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDAyMDAgKi8NCiNkZWZpbmUgUklfQ0lDUjFfUEFfMTAgICAgICAgICAgICAgICAgICAoMHgwNDAwVSA8PCBSSV9DSUNSMV9QQV9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDA0MDAgKi8NCiNkZWZpbmUgUklfQ0lDUjFfUEFfMTEgICAgICAgICAgICAgICAgICAoMHgwODAwVSA8PCBSSV9DSUNSMV9QQV9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDA4MDAgKi8NCiNkZWZpbmUgUklfQ0lDUjFfUEFfMTIgICAgICAgICAgICAgICAgICAoMHgxMDAwVSA8PCBSSV9DSUNSMV9QQV9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDEwMDAgKi8NCiNkZWZpbmUgUklfQ0lDUjFfUEFfMTMgICAgICAgICAgICAgICAgICAoMHgyMDAwVSA8PCBSSV9DSUNSMV9QQV9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDIwMDAgKi8NCiNkZWZpbmUgUklfQ0lDUjFfUEFfMTQgICAgICAgICAgICAgICAgICAoMHg0MDAwVSA8PCBSSV9DSUNSMV9QQV9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDQwMDAgKi8NCiNkZWZpbmUgUklfQ0lDUjFfUEFfMTUgICAgICAgICAgICAgICAgICAoMHg4MDAwVSA8PCBSSV9DSUNSMV9QQV9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDgwMDAgKi8NCg0KLyoqKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgUklfQVNNUjIgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBSSV9BU01SMl9QQl9Qb3MgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSSV9BU01SMl9QQl9Nc2sgICAgICAgICAgICAgICAgICgweEZGRkZVIDw8IFJJX0FTTVIyX1BCX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwRkZGRiAqLw0KI2RlZmluZSBSSV9BU01SMl9QQiAgICAgICAgICAgICAgICAgICAgIFJJX0FTTVIyX1BCX01zayAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgUEJbMTU6MF0gUG9ydCBCIHNlbGVjdGlvbiAqLw0KI2RlZmluZSBSSV9BU01SMl9QQl8wICAgICAgICAgICAgICAgICAgICgweDAwMDFVIDw8IFJJX0FTTVIyX1BCX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDAwMSAqLw0KI2RlZmluZSBSSV9BU01SMl9QQl8xICAgICAgICAgICAgICAgICAgICgweDAwMDJVIDw8IFJJX0FTTVIyX1BCX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDAwMiAqLw0KI2RlZmluZSBSSV9BU01SMl9QQl8yICAgICAgICAgICAgICAgICAgICgweDAwMDRVIDw8IFJJX0FTTVIyX1BCX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDAwNCAqLw0KI2RlZmluZSBSSV9BU01SMl9QQl8zICAgICAgICAgICAgICAgICAgICgweDAwMDhVIDw8IFJJX0FTTVIyX1BCX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDAwOCAqLw0KI2RlZmluZSBSSV9BU01SMl9QQl80ICAgICAgICAgICAgICAgICAgICgweDAwMTBVIDw8IFJJX0FTTVIyX1BCX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDAxMCAqLw0KI2RlZmluZSBSSV9BU01SMl9QQl81ICAgICAgICAgICAgICAgICAgICgweDAwMjBVIDw8IFJJX0FTTVIyX1BCX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDAyMCAqLw0KI2RlZmluZSBSSV9BU01SMl9QQl82ICAgICAgICAgICAgICAgICAgICgweDAwNDBVIDw8IFJJX0FTTVIyX1BCX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDA0MCAqLw0KI2RlZmluZSBSSV9BU01SMl9QQl83ICAgICAgICAgICAgICAgICAgICgweDAwODBVIDw8IFJJX0FTTVIyX1BCX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDA4MCAqLw0KI2RlZmluZSBSSV9BU01SMl9QQl84ICAgICAgICAgICAgICAgICAgICgweDAxMDBVIDw8IFJJX0FTTVIyX1BCX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDEwMCAqLw0KI2RlZmluZSBSSV9BU01SMl9QQl85ICAgICAgICAgICAgICAgICAgICgweDAyMDBVIDw8IFJJX0FTTVIyX1BCX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDIwMCAqLw0KI2RlZmluZSBSSV9BU01SMl9QQl8xMCAgICAgICAgICAgICAgICAgICgweDA0MDBVIDw8IFJJX0FTTVIyX1BCX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDQwMCAqLw0KI2RlZmluZSBSSV9BU01SMl9QQl8xMSAgICAgICAgICAgICAgICAgICgweDA4MDBVIDw8IFJJX0FTTVIyX1BCX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDgwMCAqLw0KI2RlZmluZSBSSV9BU01SMl9QQl8xMiAgICAgICAgICAgICAgICAgICgweDEwMDBVIDw8IFJJX0FTTVIyX1BCX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMTAwMCAqLw0KI2RlZmluZSBSSV9BU01SMl9QQl8xMyAgICAgICAgICAgICAgICAgICgweDIwMDBVIDw8IFJJX0FTTVIyX1BCX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMjAwMCAqLw0KI2RlZmluZSBSSV9BU01SMl9QQl8xNCAgICAgICAgICAgICAgICAgICgweDQwMDBVIDw8IFJJX0FTTVIyX1BCX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwNDAwMCAqLw0KI2RlZmluZSBSSV9BU01SMl9QQl8xNSAgICAgICAgICAgICAgICAgICgweDgwMDBVIDw8IFJJX0FTTVIyX1BCX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwODAwMCAqLw0KDQovKioqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBSSV9DTVIyIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgUklfQ01SMl9QQl9Qb3MgICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUklfQ01SMl9QQl9Nc2sgICAgICAgICAgICAgICAgICAoMHhGRkZGVSA8PCBSSV9DTVIyX1BCX1BvcykgICAgICAgICAgICAvKiE8IDB4MDAwMEZGRkYgKi8NCiNkZWZpbmUgUklfQ01SMl9QQiAgICAgICAgICAgICAgICAgICAgICBSSV9DTVIyX1BCX01zayAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBCWzE1OjBdIFBvcnQgQiBzZWxlY3Rpb24gKi8NCiNkZWZpbmUgUklfQ01SMl9QQl8wICAgICAgICAgICAgICAgICAgICAoMHgwMDAxVSA8PCBSSV9DTVIyX1BCX1BvcykgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDEgKi8NCiNkZWZpbmUgUklfQ01SMl9QQl8xICAgICAgICAgICAgICAgICAgICAoMHgwMDAyVSA8PCBSSV9DTVIyX1BCX1BvcykgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDIgKi8NCiNkZWZpbmUgUklfQ01SMl9QQl8yICAgICAgICAgICAgICAgICAgICAoMHgwMDA0VSA8PCBSSV9DTVIyX1BCX1BvcykgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDQgKi8NCiNkZWZpbmUgUklfQ01SMl9QQl8zICAgICAgICAgICAgICAgICAgICAoMHgwMDA4VSA8PCBSSV9DTVIyX1BCX1BvcykgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDggKi8NCiNkZWZpbmUgUklfQ01SMl9QQl80ICAgICAgICAgICAgICAgICAgICAoMHgwMDEwVSA8PCBSSV9DTVIyX1BCX1BvcykgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMTAgKi8NCiNkZWZpbmUgUklfQ01SMl9QQl81ICAgICAgICAgICAgICAgICAgICAoMHgwMDIwVSA8PCBSSV9DTVIyX1BCX1BvcykgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMjAgKi8NCiNkZWZpbmUgUklfQ01SMl9QQl82ICAgICAgICAgICAgICAgICAgICAoMHgwMDQwVSA8PCBSSV9DTVIyX1BCX1BvcykgICAgICAgICAgICAvKiE8IDB4MDAwMDAwNDAgKi8NCiNkZWZpbmUgUklfQ01SMl9QQl83ICAgICAgICAgICAgICAgICAgICAoMHgwMDgwVSA8PCBSSV9DTVIyX1BCX1BvcykgICAgICAgICAgICAvKiE8IDB4MDAwMDAwODAgKi8NCiNkZWZpbmUgUklfQ01SMl9QQl84ICAgICAgICAgICAgICAgICAgICAoMHgwMTAwVSA8PCBSSV9DTVIyX1BCX1BvcykgICAgICAgICAgICAvKiE8IDB4MDAwMDAxMDAgKi8NCiNkZWZpbmUgUklfQ01SMl9QQl85ICAgICAgICAgICAgICAgICAgICAoMHgwMjAwVSA8PCBSSV9DTVIyX1BCX1BvcykgICAgICAgICAgICAvKiE8IDB4MDAwMDAyMDAgKi8NCiNkZWZpbmUgUklfQ01SMl9QQl8xMCAgICAgICAgICAgICAgICAgICAoMHgwNDAwVSA8PCBSSV9DTVIyX1BCX1BvcykgICAgICAgICAgICAvKiE8IDB4MDAwMDA0MDAgKi8NCiNkZWZpbmUgUklfQ01SMl9QQl8xMSAgICAgICAgICAgICAgICAgICAoMHgwODAwVSA8PCBSSV9DTVIyX1BCX1BvcykgICAgICAgICAgICAvKiE8IDB4MDAwMDA4MDAgKi8NCiNkZWZpbmUgUklfQ01SMl9QQl8xMiAgICAgICAgICAgICAgICAgICAoMHgxMDAwVSA8PCBSSV9DTVIyX1BCX1BvcykgICAgICAgICAgICAvKiE8IDB4MDAwMDEwMDAgKi8NCiNkZWZpbmUgUklfQ01SMl9QQl8xMyAgICAgICAgICAgICAgICAgICAoMHgyMDAwVSA8PCBSSV9DTVIyX1BCX1BvcykgICAgICAgICAgICAvKiE8IDB4MDAwMDIwMDAgKi8NCiNkZWZpbmUgUklfQ01SMl9QQl8xNCAgICAgICAgICAgICAgICAgICAoMHg0MDAwVSA8PCBSSV9DTVIyX1BCX1BvcykgICAgICAgICAgICAvKiE8IDB4MDAwMDQwMDAgKi8NCiNkZWZpbmUgUklfQ01SMl9QQl8xNSAgICAgICAgICAgICAgICAgICAoMHg4MDAwVSA8PCBSSV9DTVIyX1BCX1BvcykgICAgICAgICAgICAvKiE8IDB4MDAwMDgwMDAgKi8NCg0KLyoqKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgUklfQ0lDUjIgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBSSV9DSUNSMl9QQl9Qb3MgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSSV9DSUNSMl9QQl9Nc2sgICAgICAgICAgICAgICAgICgweEZGRkZVIDw8IFJJX0NJQ1IyX1BCX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwRkZGRiAqLw0KI2RlZmluZSBSSV9DSUNSMl9QQiAgICAgICAgICAgICAgICAgICAgIFJJX0NJQ1IyX1BCX01zayAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgUEJbMTU6MF0gUG9ydCBCIHNlbGVjdGlvbiAqLw0KI2RlZmluZSBSSV9DSUNSMl9QQl8wICAgICAgICAgICAgICAgICAgICgweDAwMDFVIDw8IFJJX0NJQ1IyX1BCX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDAwMSAqLw0KI2RlZmluZSBSSV9DSUNSMl9QQl8xICAgICAgICAgICAgICAgICAgICgweDAwMDJVIDw8IFJJX0NJQ1IyX1BCX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDAwMiAqLw0KI2RlZmluZSBSSV9DSUNSMl9QQl8yICAgICAgICAgICAgICAgICAgICgweDAwMDRVIDw8IFJJX0NJQ1IyX1BCX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDAwNCAqLw0KI2RlZmluZSBSSV9DSUNSMl9QQl8zICAgICAgICAgICAgICAgICAgICgweDAwMDhVIDw8IFJJX0NJQ1IyX1BCX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDAwOCAqLw0KI2RlZmluZSBSSV9DSUNSMl9QQl80ICAgICAgICAgICAgICAgICAgICgweDAwMTBVIDw8IFJJX0NJQ1IyX1BCX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDAxMCAqLw0KI2RlZmluZSBSSV9DSUNSMl9QQl81ICAgICAgICAgICAgICAgICAgICgweDAwMjBVIDw8IFJJX0NJQ1IyX1BCX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDAyMCAqLw0KI2RlZmluZSBSSV9DSUNSMl9QQl82ICAgICAgICAgICAgICAgICAgICgweDAwNDBVIDw8IFJJX0NJQ1IyX1BCX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDA0MCAqLw0KI2RlZmluZSBSSV9DSUNSMl9QQl83ICAgICAgICAgICAgICAgICAgICgweDAwODBVIDw8IFJJX0NJQ1IyX1BCX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDA4MCAqLw0KI2RlZmluZSBSSV9DSUNSMl9QQl84ICAgICAgICAgICAgICAgICAgICgweDAxMDBVIDw8IFJJX0NJQ1IyX1BCX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDEwMCAqLw0KI2RlZmluZSBSSV9DSUNSMl9QQl85ICAgICAgICAgICAgICAgICAgICgweDAyMDBVIDw8IFJJX0NJQ1IyX1BCX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDIwMCAqLw0KI2RlZmluZSBSSV9DSUNSMl9QQl8xMCAgICAgICAgICAgICAgICAgICgweDA0MDBVIDw8IFJJX0NJQ1IyX1BCX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDQwMCAqLw0KI2RlZmluZSBSSV9DSUNSMl9QQl8xMSAgICAgICAgICAgICAgICAgICgweDA4MDBVIDw8IFJJX0NJQ1IyX1BCX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDgwMCAqLw0KI2RlZmluZSBSSV9DSUNSMl9QQl8xMiAgICAgICAgICAgICAgICAgICgweDEwMDBVIDw8IFJJX0NJQ1IyX1BCX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMTAwMCAqLw0KI2RlZmluZSBSSV9DSUNSMl9QQl8xMyAgICAgICAgICAgICAgICAgICgweDIwMDBVIDw8IFJJX0NJQ1IyX1BCX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMjAwMCAqLw0KI2RlZmluZSBSSV9DSUNSMl9QQl8xNCAgICAgICAgICAgICAgICAgICgweDQwMDBVIDw8IFJJX0NJQ1IyX1BCX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwNDAwMCAqLw0KI2RlZmluZSBSSV9DSUNSMl9QQl8xNSAgICAgICAgICAgICAgICAgICgweDgwMDBVIDw8IFJJX0NJQ1IyX1BCX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwODAwMCAqLw0KDQovKioqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBSSV9BU01SMyByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIFJJX0FTTVIzX1BDX1BvcyAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJJX0FTTVIzX1BDX01zayAgICAgICAgICAgICAgICAgKDB4RkZGRlUgPDwgUklfQVNNUjNfUENfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDBGRkZGICovDQojZGVmaW5lIFJJX0FTTVIzX1BDICAgICAgICAgICAgICAgICAgICAgUklfQVNNUjNfUENfTXNrICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBQQ1sxNTowXSBQb3J0IEMgc2VsZWN0aW9uICovDQojZGVmaW5lIFJJX0FTTVIzX1BDXzAgICAgICAgICAgICAgICAgICAgKDB4MDAwMVUgPDwgUklfQVNNUjNfUENfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwMDAxICovDQojZGVmaW5lIFJJX0FTTVIzX1BDXzEgICAgICAgICAgICAgICAgICAgKDB4MDAwMlUgPDwgUklfQVNNUjNfUENfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwMDAyICovDQojZGVmaW5lIFJJX0FTTVIzX1BDXzIgICAgICAgICAgICAgICAgICAgKDB4MDAwNFUgPDwgUklfQVNNUjNfUENfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwMDA0ICovDQojZGVmaW5lIFJJX0FTTVIzX1BDXzMgICAgICAgICAgICAgICAgICAgKDB4MDAwOFUgPDwgUklfQVNNUjNfUENfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwMDA4ICovDQojZGVmaW5lIFJJX0FTTVIzX1BDXzQgICAgICAgICAgICAgICAgICAgKDB4MDAxMFUgPDwgUklfQVNNUjNfUENfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwMDEwICovDQojZGVmaW5lIFJJX0FTTVIzX1BDXzUgICAgICAgICAgICAgICAgICAgKDB4MDAyMFUgPDwgUklfQVNNUjNfUENfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwMDIwICovDQojZGVmaW5lIFJJX0FTTVIzX1BDXzYgICAgICAgICAgICAgICAgICAgKDB4MDA0MFUgPDwgUklfQVNNUjNfUENfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwMDQwICovDQojZGVmaW5lIFJJX0FTTVIzX1BDXzcgICAgICAgICAgICAgICAgICAgKDB4MDA4MFUgPDwgUklfQVNNUjNfUENfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwMDgwICovDQojZGVmaW5lIFJJX0FTTVIzX1BDXzggICAgICAgICAgICAgICAgICAgKDB4MDEwMFUgPDwgUklfQVNNUjNfUENfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwMTAwICovDQojZGVmaW5lIFJJX0FTTVIzX1BDXzkgICAgICAgICAgICAgICAgICAgKDB4MDIwMFUgPDwgUklfQVNNUjNfUENfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwMjAwICovDQojZGVmaW5lIFJJX0FTTVIzX1BDXzEwICAgICAgICAgICAgICAgICAgKDB4MDQwMFUgPDwgUklfQVNNUjNfUENfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwNDAwICovDQojZGVmaW5lIFJJX0FTTVIzX1BDXzExICAgICAgICAgICAgICAgICAgKDB4MDgwMFUgPDwgUklfQVNNUjNfUENfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwODAwICovDQojZGVmaW5lIFJJX0FTTVIzX1BDXzEyICAgICAgICAgICAgICAgICAgKDB4MTAwMFUgPDwgUklfQVNNUjNfUENfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAxMDAwICovDQojZGVmaW5lIFJJX0FTTVIzX1BDXzEzICAgICAgICAgICAgICAgICAgKDB4MjAwMFUgPDwgUklfQVNNUjNfUENfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAyMDAwICovDQojZGVmaW5lIFJJX0FTTVIzX1BDXzE0ICAgICAgICAgICAgICAgICAgKDB4NDAwMFUgPDwgUklfQVNNUjNfUENfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDA0MDAwICovDQojZGVmaW5lIFJJX0FTTVIzX1BDXzE1ICAgICAgICAgICAgICAgICAgKDB4ODAwMFUgPDwgUklfQVNNUjNfUENfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDA4MDAwICovDQoNCi8qKioqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFJJX0NNUjMgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBSSV9DTVIzX1BDX1BvcyAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSSV9DTVIzX1BDX01zayAgICAgICAgICAgICAgICAgICgweEZGRkZVIDw8IFJJX0NNUjNfUENfUG9zKSAgICAgICAgICAgIC8qITwgMHgwMDAwRkZGRiAqLw0KI2RlZmluZSBSSV9DTVIzX1BDICAgICAgICAgICAgICAgICAgICAgIFJJX0NNUjNfUENfTXNrICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgUENbMTU6MF0gUG9ydCBDIHNlbGVjdGlvbiAqLw0KI2RlZmluZSBSSV9DTVIzX1BDXzAgICAgICAgICAgICAgICAgICAgICgweDAwMDFVIDw8IFJJX0NNUjNfUENfUG9zKSAgICAgICAgICAgIC8qITwgMHgwMDAwMDAwMSAqLw0KI2RlZmluZSBSSV9DTVIzX1BDXzEgICAgICAgICAgICAgICAgICAgICgweDAwMDJVIDw8IFJJX0NNUjNfUENfUG9zKSAgICAgICAgICAgIC8qITwgMHgwMDAwMDAwMiAqLw0KI2RlZmluZSBSSV9DTVIzX1BDXzIgICAgICAgICAgICAgICAgICAgICgweDAwMDRVIDw8IFJJX0NNUjNfUENfUG9zKSAgICAgICAgICAgIC8qITwgMHgwMDAwMDAwNCAqLw0KI2RlZmluZSBSSV9DTVIzX1BDXzMgICAgICAgICAgICAgICAgICAgICgweDAwMDhVIDw8IFJJX0NNUjNfUENfUG9zKSAgICAgICAgICAgIC8qITwgMHgwMDAwMDAwOCAqLw0KI2RlZmluZSBSSV9DTVIzX1BDXzQgICAgICAgICAgICAgICAgICAgICgweDAwMTBVIDw8IFJJX0NNUjNfUENfUG9zKSAgICAgICAgICAgIC8qITwgMHgwMDAwMDAxMCAqLw0KI2RlZmluZSBSSV9DTVIzX1BDXzUgICAgICAgICAgICAgICAgICAgICgweDAwMjBVIDw8IFJJX0NNUjNfUENfUG9zKSAgICAgICAgICAgIC8qITwgMHgwMDAwMDAyMCAqLw0KI2RlZmluZSBSSV9DTVIzX1BDXzYgICAgICAgICAgICAgICAgICAgICgweDAwNDBVIDw8IFJJX0NNUjNfUENfUG9zKSAgICAgICAgICAgIC8qITwgMHgwMDAwMDA0MCAqLw0KI2RlZmluZSBSSV9DTVIzX1BDXzcgICAgICAgICAgICAgICAgICAgICgweDAwODBVIDw8IFJJX0NNUjNfUENfUG9zKSAgICAgICAgICAgIC8qITwgMHgwMDAwMDA4MCAqLw0KI2RlZmluZSBSSV9DTVIzX1BDXzggICAgICAgICAgICAgICAgICAgICgweDAxMDBVIDw8IFJJX0NNUjNfUENfUG9zKSAgICAgICAgICAgIC8qITwgMHgwMDAwMDEwMCAqLw0KI2RlZmluZSBSSV9DTVIzX1BDXzkgICAgICAgICAgICAgICAgICAgICgweDAyMDBVIDw8IFJJX0NNUjNfUENfUG9zKSAgICAgICAgICAgIC8qITwgMHgwMDAwMDIwMCAqLw0KI2RlZmluZSBSSV9DTVIzX1BDXzEwICAgICAgICAgICAgICAgICAgICgweDA0MDBVIDw8IFJJX0NNUjNfUENfUG9zKSAgICAgICAgICAgIC8qITwgMHgwMDAwMDQwMCAqLw0KI2RlZmluZSBSSV9DTVIzX1BDXzExICAgICAgICAgICAgICAgICAgICgweDA4MDBVIDw8IFJJX0NNUjNfUENfUG9zKSAgICAgICAgICAgIC8qITwgMHgwMDAwMDgwMCAqLw0KI2RlZmluZSBSSV9DTVIzX1BDXzEyICAgICAgICAgICAgICAgICAgICgweDEwMDBVIDw8IFJJX0NNUjNfUENfUG9zKSAgICAgICAgICAgIC8qITwgMHgwMDAwMTAwMCAqLw0KI2RlZmluZSBSSV9DTVIzX1BDXzEzICAgICAgICAgICAgICAgICAgICgweDIwMDBVIDw8IFJJX0NNUjNfUENfUG9zKSAgICAgICAgICAgIC8qITwgMHgwMDAwMjAwMCAqLw0KI2RlZmluZSBSSV9DTVIzX1BDXzE0ICAgICAgICAgICAgICAgICAgICgweDQwMDBVIDw8IFJJX0NNUjNfUENfUG9zKSAgICAgICAgICAgIC8qITwgMHgwMDAwNDAwMCAqLw0KI2RlZmluZSBSSV9DTVIzX1BDXzE1ICAgICAgICAgICAgICAgICAgICgweDgwMDBVIDw8IFJJX0NNUjNfUENfUG9zKSAgICAgICAgICAgIC8qITwgMHgwMDAwODAwMCAqLw0KDQovKioqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBSSV9DSUNSMyByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIFJJX0NJQ1IzX1BDX1BvcyAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJJX0NJQ1IzX1BDX01zayAgICAgICAgICAgICAgICAgKDB4RkZGRlUgPDwgUklfQ0lDUjNfUENfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDBGRkZGICovDQojZGVmaW5lIFJJX0NJQ1IzX1BDICAgICAgICAgICAgICAgICAgICAgUklfQ0lDUjNfUENfTXNrICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBQQ1sxNTowXSBQb3J0IEMgc2VsZWN0aW9uICovDQojZGVmaW5lIFJJX0NJQ1IzX1BDXzAgICAgICAgICAgICAgICAgICAgKDB4MDAwMVUgPDwgUklfQ0lDUjNfUENfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwMDAxICovDQojZGVmaW5lIFJJX0NJQ1IzX1BDXzEgICAgICAgICAgICAgICAgICAgKDB4MDAwMlUgPDwgUklfQ0lDUjNfUENfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwMDAyICovDQojZGVmaW5lIFJJX0NJQ1IzX1BDXzIgICAgICAgICAgICAgICAgICAgKDB4MDAwNFUgPDwgUklfQ0lDUjNfUENfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwMDA0ICovDQojZGVmaW5lIFJJX0NJQ1IzX1BDXzMgICAgICAgICAgICAgICAgICAgKDB4MDAwOFUgPDwgUklfQ0lDUjNfUENfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwMDA4ICovDQojZGVmaW5lIFJJX0NJQ1IzX1BDXzQgICAgICAgICAgICAgICAgICAgKDB4MDAxMFUgPDwgUklfQ0lDUjNfUENfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwMDEwICovDQojZGVmaW5lIFJJX0NJQ1IzX1BDXzUgICAgICAgICAgICAgICAgICAgKDB4MDAyMFUgPDwgUklfQ0lDUjNfUENfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwMDIwICovDQojZGVmaW5lIFJJX0NJQ1IzX1BDXzYgICAgICAgICAgICAgICAgICAgKDB4MDA0MFUgPDwgUklfQ0lDUjNfUENfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwMDQwICovDQojZGVmaW5lIFJJX0NJQ1IzX1BDXzcgICAgICAgICAgICAgICAgICAgKDB4MDA4MFUgPDwgUklfQ0lDUjNfUENfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwMDgwICovDQojZGVmaW5lIFJJX0NJQ1IzX1BDXzggICAgICAgICAgICAgICAgICAgKDB4MDEwMFUgPDwgUklfQ0lDUjNfUENfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwMTAwICovDQojZGVmaW5lIFJJX0NJQ1IzX1BDXzkgICAgICAgICAgICAgICAgICAgKDB4MDIwMFUgPDwgUklfQ0lDUjNfUENfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwMjAwICovDQojZGVmaW5lIFJJX0NJQ1IzX1BDXzEwICAgICAgICAgICAgICAgICAgKDB4MDQwMFUgPDwgUklfQ0lDUjNfUENfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwNDAwICovDQojZGVmaW5lIFJJX0NJQ1IzX1BDXzExICAgICAgICAgICAgICAgICAgKDB4MDgwMFUgPDwgUklfQ0lDUjNfUENfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwODAwICovDQojZGVmaW5lIFJJX0NJQ1IzX1BDXzEyICAgICAgICAgICAgICAgICAgKDB4MTAwMFUgPDwgUklfQ0lDUjNfUENfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAxMDAwICovDQojZGVmaW5lIFJJX0NJQ1IzX1BDXzEzICAgICAgICAgICAgICAgICAgKDB4MjAwMFUgPDwgUklfQ0lDUjNfUENfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAyMDAwICovDQojZGVmaW5lIFJJX0NJQ1IzX1BDXzE0ICAgICAgICAgICAgICAgICAgKDB4NDAwMFUgPDwgUklfQ0lDUjNfUENfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDA0MDAwICovDQojZGVmaW5lIFJJX0NJQ1IzX1BDXzE1ICAgICAgICAgICAgICAgICAgKDB4ODAwMFUgPDwgUklfQ0lDUjNfUENfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDA4MDAwICovDQoNCi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovDQovKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLw0KLyogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgVGltZXJzIChUSU0pICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8NCi8qICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovDQovKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLw0KDQovKioqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFRJTV9DUjEgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBUSU1fQ1IxX0NFTl9Qb3MgICAgICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBUSU1fQ1IxX0NFTl9Nc2sgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBUSU1fQ1IxX0NFTl9Qb3MpICAgICAgICAgIC8qITwgMHgwMDAwMDAwMSAqLw0KI2RlZmluZSBUSU1fQ1IxX0NFTiAgICAgICAgICAgICAgICAgICAgICAgICBUSU1fQ1IxX0NFTl9Nc2sgICAgICAgICAgICAgICAgICAgIC8qITxDb3VudGVyIGVuYWJsZSAqLw0KI2RlZmluZSBUSU1fQ1IxX1VESVNfUG9zICAgICAgICAgICAgICAgICAgICAoMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBUSU1fQ1IxX1VESVNfTXNrICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBUSU1fQ1IxX1VESVNfUG9zKSAgICAgICAgIC8qITwgMHgwMDAwMDAwMiAqLw0KI2RlZmluZSBUSU1fQ1IxX1VESVMgICAgICAgICAgICAgICAgICAgICAgICBUSU1fQ1IxX1VESVNfTXNrICAgICAgICAgICAgICAgICAgIC8qITxVcGRhdGUgZGlzYWJsZSAqLw0KI2RlZmluZSBUSU1fQ1IxX1VSU19Qb3MgICAgICAgICAgICAgICAgICAgICAoMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBUSU1fQ1IxX1VSU19Nc2sgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBUSU1fQ1IxX1VSU19Qb3MpICAgICAgICAgIC8qITwgMHgwMDAwMDAwNCAqLw0KI2RlZmluZSBUSU1fQ1IxX1VSUyAgICAgICAgICAgICAgICAgICAgICAgICBUSU1fQ1IxX1VSU19Nc2sgICAgICAgICAgICAgICAgICAgIC8qITxVcGRhdGUgcmVxdWVzdCBzb3VyY2UgKi8NCiNkZWZpbmUgVElNX0NSMV9PUE1fUG9zICAgICAgICAgICAgICAgICAgICAgKDNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVElNX0NSMV9PUE1fTXNrICAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVElNX0NSMV9PUE1fUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDAwMDggKi8NCiNkZWZpbmUgVElNX0NSMV9PUE0gICAgICAgICAgICAgICAgICAgICAgICAgVElNX0NSMV9PUE1fTXNrICAgICAgICAgICAgICAgICAgICAvKiE8T25lIHB1bHNlIG1vZGUgKi8NCiNkZWZpbmUgVElNX0NSMV9ESVJfUG9zICAgICAgICAgICAgICAgICAgICAgKDRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVElNX0NSMV9ESVJfTXNrICAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVElNX0NSMV9ESVJfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDAwMTAgKi8NCiNkZWZpbmUgVElNX0NSMV9ESVIgICAgICAgICAgICAgICAgICAgICAgICAgVElNX0NSMV9ESVJfTXNrICAgICAgICAgICAgICAgICAgICAvKiE8RGlyZWN0aW9uICovDQoNCiNkZWZpbmUgVElNX0NSMV9DTVNfUG9zICAgICAgICAgICAgICAgICAgICAgKDVVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVElNX0NSMV9DTVNfTXNrICAgICAgICAgICAgICAgICAgICAgKDB4M1UgPDwgVElNX0NSMV9DTVNfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDAwNjAgKi8NCiNkZWZpbmUgVElNX0NSMV9DTVMgICAgICAgICAgICAgICAgICAgICAgICAgVElNX0NSMV9DTVNfTXNrICAgICAgICAgICAgICAgICAgICAvKiE8Q01TWzE6MF0gYml0cyAoQ2VudGVyLWFsaWduZWQgbW9kZSBzZWxlY3Rpb24pICovDQojZGVmaW5lIFRJTV9DUjFfQ01TXzAgICAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFRJTV9DUjFfQ01TX1BvcykgICAgICAgICAgLyohPCAweDAwMDAwMDIwICovDQojZGVmaW5lIFRJTV9DUjFfQ01TXzEgICAgICAgICAgICAgICAgICAgICAgICgweDJVIDw8IFRJTV9DUjFfQ01TX1BvcykgICAgICAgICAgLyohPCAweDAwMDAwMDQwICovDQoNCiNkZWZpbmUgVElNX0NSMV9BUlBFX1BvcyAgICAgICAgICAgICAgICAgICAgKDdVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVElNX0NSMV9BUlBFX01zayAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVElNX0NSMV9BUlBFX1BvcykgICAgICAgICAvKiE8IDB4MDAwMDAwODAgKi8NCiNkZWZpbmUgVElNX0NSMV9BUlBFICAgICAgICAgICAgICAgICAgICAgICAgVElNX0NSMV9BUlBFX01zayAgICAgICAgICAgICAgICAgICAvKiE8QXV0by1yZWxvYWQgcHJlbG9hZCBlbmFibGUgKi8NCg0KI2RlZmluZSBUSU1fQ1IxX0NLRF9Qb3MgICAgICAgICAgICAgICAgICAgICAoOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBUSU1fQ1IxX0NLRF9Nc2sgICAgICAgICAgICAgICAgICAgICAoMHgzVSA8PCBUSU1fQ1IxX0NLRF9Qb3MpICAgICAgICAgIC8qITwgMHgwMDAwMDMwMCAqLw0KI2RlZmluZSBUSU1fQ1IxX0NLRCAgICAgICAgICAgICAgICAgICAgICAgICBUSU1fQ1IxX0NLRF9Nc2sgICAgICAgICAgICAgICAgICAgIC8qITxDS0RbMTowXSBiaXRzIChjbG9jayBkaXZpc2lvbikgKi8NCiNkZWZpbmUgVElNX0NSMV9DS0RfMCAgICAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVElNX0NSMV9DS0RfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDAxMDAgKi8NCiNkZWZpbmUgVElNX0NSMV9DS0RfMSAgICAgICAgICAgICAgICAgICAgICAgKDB4MlUgPDwgVElNX0NSMV9DS0RfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDAyMDAgKi8NCg0KLyoqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBUSU1fQ1IyIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgVElNX0NSMl9DQ0RTX1BvcyAgICAgICAgICAgICAgICAgICAgKDNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVElNX0NSMl9DQ0RTX01zayAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVElNX0NSMl9DQ0RTX1BvcykgICAgICAgICAvKiE8IDB4MDAwMDAwMDggKi8NCiNkZWZpbmUgVElNX0NSMl9DQ0RTICAgICAgICAgICAgICAgICAgICAgICAgVElNX0NSMl9DQ0RTX01zayAgICAgICAgICAgICAgICAgICAvKiE8Q2FwdHVyZS9Db21wYXJlIERNQSBTZWxlY3Rpb24gKi8NCg0KI2RlZmluZSBUSU1fQ1IyX01NU19Qb3MgICAgICAgICAgICAgICAgICAgICAoNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBUSU1fQ1IyX01NU19Nc2sgICAgICAgICAgICAgICAgICAgICAoMHg3VSA8PCBUSU1fQ1IyX01NU19Qb3MpICAgICAgICAgIC8qITwgMHgwMDAwMDA3MCAqLw0KI2RlZmluZSBUSU1fQ1IyX01NUyAgICAgICAgICAgICAgICAgICAgICAgICBUSU1fQ1IyX01NU19Nc2sgICAgICAgICAgICAgICAgICAgIC8qITxNTVNbMjowXSBiaXRzIChNYXN0ZXIgTW9kZSBTZWxlY3Rpb24pICovDQojZGVmaW5lIFRJTV9DUjJfTU1TXzAgICAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFRJTV9DUjJfTU1TX1BvcykgICAgICAgICAgLyohPCAweDAwMDAwMDEwICovDQojZGVmaW5lIFRJTV9DUjJfTU1TXzEgICAgICAgICAgICAgICAgICAgICAgICgweDJVIDw8IFRJTV9DUjJfTU1TX1BvcykgICAgICAgICAgLyohPCAweDAwMDAwMDIwICovDQojZGVmaW5lIFRJTV9DUjJfTU1TXzIgICAgICAgICAgICAgICAgICAgICAgICgweDRVIDw8IFRJTV9DUjJfTU1TX1BvcykgICAgICAgICAgLyohPCAweDAwMDAwMDQwICovDQoNCiNkZWZpbmUgVElNX0NSMl9USTFTX1BvcyAgICAgICAgICAgICAgICAgICAgKDdVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVElNX0NSMl9USTFTX01zayAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVElNX0NSMl9USTFTX1BvcykgICAgICAgICAvKiE8IDB4MDAwMDAwODAgKi8NCiNkZWZpbmUgVElNX0NSMl9USTFTICAgICAgICAgICAgICAgICAgICAgICAgVElNX0NSMl9USTFTX01zayAgICAgICAgICAgICAgICAgICAvKiE8VEkxIFNlbGVjdGlvbiAqLw0KDQovKioqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFRJTV9TTUNSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBUSU1fU01DUl9TTVNfUG9zICAgICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBUSU1fU01DUl9TTVNfTXNrICAgICAgICAgICAgICAgICAgICAoMHg3VSA8PCBUSU1fU01DUl9TTVNfUG9zKSAgICAgICAgIC8qITwgMHgwMDAwMDAwNyAqLw0KI2RlZmluZSBUSU1fU01DUl9TTVMgICAgICAgICAgICAgICAgICAgICAgICBUSU1fU01DUl9TTVNfTXNrICAgICAgICAgICAgICAgICAgIC8qITxTTVNbMjowXSBiaXRzIChTbGF2ZSBtb2RlIHNlbGVjdGlvbikgKi8NCiNkZWZpbmUgVElNX1NNQ1JfU01TXzAgICAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVElNX1NNQ1JfU01TX1BvcykgICAgICAgICAvKiE8IDB4MDAwMDAwMDEgKi8NCiNkZWZpbmUgVElNX1NNQ1JfU01TXzEgICAgICAgICAgICAgICAgICAgICAgKDB4MlUgPDwgVElNX1NNQ1JfU01TX1BvcykgICAgICAgICAvKiE8IDB4MDAwMDAwMDIgKi8NCiNkZWZpbmUgVElNX1NNQ1JfU01TXzIgICAgICAgICAgICAgICAgICAgICAgKDB4NFUgPDwgVElNX1NNQ1JfU01TX1BvcykgICAgICAgICAvKiE8IDB4MDAwMDAwMDQgKi8NCg0KI2RlZmluZSBUSU1fU01DUl9PQ0NTX1BvcyAgICAgICAgICAgICAgICAgICAoM1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBUSU1fU01DUl9PQ0NTX01zayAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBUSU1fU01DUl9PQ0NTX1BvcykgICAgICAgIC8qITwgMHgwMDAwMDAwOCAqLw0KI2RlZmluZSBUSU1fU01DUl9PQ0NTICAgICAgICAgICAgICAgICAgICAgICBUSU1fU01DUl9PQ0NTX01zayAgICAgICAgICAgICAgICAgIC8qITwgT0NSRUYgY2xlYXIgc2VsZWN0aW9uICovDQoNCiNkZWZpbmUgVElNX1NNQ1JfVFNfUG9zICAgICAgICAgICAgICAgICAgICAgKDRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVElNX1NNQ1JfVFNfTXNrICAgICAgICAgICAgICAgICAgICAgKDB4N1UgPDwgVElNX1NNQ1JfVFNfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDAwNzAgKi8NCiNkZWZpbmUgVElNX1NNQ1JfVFMgICAgICAgICAgICAgICAgICAgICAgICAgVElNX1NNQ1JfVFNfTXNrICAgICAgICAgICAgICAgICAgICAvKiE8VFNbMjowXSBiaXRzIChUcmlnZ2VyIHNlbGVjdGlvbikgKi8NCiNkZWZpbmUgVElNX1NNQ1JfVFNfMCAgICAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVElNX1NNQ1JfVFNfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDAwMTAgKi8NCiNkZWZpbmUgVElNX1NNQ1JfVFNfMSAgICAgICAgICAgICAgICAgICAgICAgKDB4MlUgPDwgVElNX1NNQ1JfVFNfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDAwMjAgKi8NCiNkZWZpbmUgVElNX1NNQ1JfVFNfMiAgICAgICAgICAgICAgICAgICAgICAgKDB4NFUgPDwgVElNX1NNQ1JfVFNfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDAwNDAgKi8NCg0KI2RlZmluZSBUSU1fU01DUl9NU01fUG9zICAgICAgICAgICAgICAgICAgICAoN1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBUSU1fU01DUl9NU01fTXNrICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBUSU1fU01DUl9NU01fUG9zKSAgICAgICAgIC8qITwgMHgwMDAwMDA4MCAqLw0KI2RlZmluZSBUSU1fU01DUl9NU00gICAgICAgICAgICAgICAgICAgICAgICBUSU1fU01DUl9NU01fTXNrICAgICAgICAgICAgICAgICAgIC8qITxNYXN0ZXIvc2xhdmUgbW9kZSAqLw0KDQojZGVmaW5lIFRJTV9TTUNSX0VURl9Qb3MgICAgICAgICAgICAgICAgICAgICg4VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFRJTV9TTUNSX0VURl9Nc2sgICAgICAgICAgICAgICAgICAgICgweEZVIDw8IFRJTV9TTUNSX0VURl9Qb3MpICAgICAgICAgLyohPCAweDAwMDAwRjAwICovDQojZGVmaW5lIFRJTV9TTUNSX0VURiAgICAgICAgICAgICAgICAgICAgICAgIFRJTV9TTUNSX0VURl9Nc2sgICAgICAgICAgICAgICAgICAgLyohPEVURlszOjBdIGJpdHMgKEV4dGVybmFsIHRyaWdnZXIgZmlsdGVyKSAqLw0KI2RlZmluZSBUSU1fU01DUl9FVEZfMCAgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBUSU1fU01DUl9FVEZfUG9zKSAgICAgICAgIC8qITwgMHgwMDAwMDEwMCAqLw0KI2RlZmluZSBUSU1fU01DUl9FVEZfMSAgICAgICAgICAgICAgICAgICAgICAoMHgyVSA8PCBUSU1fU01DUl9FVEZfUG9zKSAgICAgICAgIC8qITwgMHgwMDAwMDIwMCAqLw0KI2RlZmluZSBUSU1fU01DUl9FVEZfMiAgICAgICAgICAgICAgICAgICAgICAoMHg0VSA8PCBUSU1fU01DUl9FVEZfUG9zKSAgICAgICAgIC8qITwgMHgwMDAwMDQwMCAqLw0KI2RlZmluZSBUSU1fU01DUl9FVEZfMyAgICAgICAgICAgICAgICAgICAgICAoMHg4VSA8PCBUSU1fU01DUl9FVEZfUG9zKSAgICAgICAgIC8qITwgMHgwMDAwMDgwMCAqLw0KDQojZGVmaW5lIFRJTV9TTUNSX0VUUFNfUG9zICAgICAgICAgICAgICAgICAgICgxMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFRJTV9TTUNSX0VUUFNfTXNrICAgICAgICAgICAgICAgICAgICgweDNVIDw8IFRJTV9TTUNSX0VUUFNfUG9zKSAgICAgICAgLyohPCAweDAwMDAzMDAwICovDQojZGVmaW5lIFRJTV9TTUNSX0VUUFMgICAgICAgICAgICAgICAgICAgICAgIFRJTV9TTUNSX0VUUFNfTXNrICAgICAgICAgICAgICAgICAgLyohPEVUUFNbMTowXSBiaXRzIChFeHRlcm5hbCB0cmlnZ2VyIHByZXNjYWxlcikgKi8NCiNkZWZpbmUgVElNX1NNQ1JfRVRQU18wICAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVElNX1NNQ1JfRVRQU19Qb3MpICAgICAgICAvKiE8IDB4MDAwMDEwMDAgKi8NCiNkZWZpbmUgVElNX1NNQ1JfRVRQU18xICAgICAgICAgICAgICAgICAgICAgKDB4MlUgPDwgVElNX1NNQ1JfRVRQU19Qb3MpICAgICAgICAvKiE8IDB4MDAwMDIwMDAgKi8NCg0KI2RlZmluZSBUSU1fU01DUl9FQ0VfUG9zICAgICAgICAgICAgICAgICAgICAoMTRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBUSU1fU01DUl9FQ0VfTXNrICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBUSU1fU01DUl9FQ0VfUG9zKSAgICAgICAgIC8qITwgMHgwMDAwNDAwMCAqLw0KI2RlZmluZSBUSU1fU01DUl9FQ0UgICAgICAgICAgICAgICAgICAgICAgICBUSU1fU01DUl9FQ0VfTXNrICAgICAgICAgICAgICAgICAgIC8qITxFeHRlcm5hbCBjbG9jayBlbmFibGUgKi8NCiNkZWZpbmUgVElNX1NNQ1JfRVRQX1BvcyAgICAgICAgICAgICAgICAgICAgKDE1VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVElNX1NNQ1JfRVRQX01zayAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVElNX1NNQ1JfRVRQX1BvcykgICAgICAgICAvKiE8IDB4MDAwMDgwMDAgKi8NCiNkZWZpbmUgVElNX1NNQ1JfRVRQICAgICAgICAgICAgICAgICAgICAgICAgVElNX1NNQ1JfRVRQX01zayAgICAgICAgICAgICAgICAgICAvKiE8RXh0ZXJuYWwgdHJpZ2dlciBwb2xhcml0eSAqLw0KDQovKioqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFRJTV9ESUVSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBUSU1fRElFUl9VSUVfUG9zICAgICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBUSU1fRElFUl9VSUVfTXNrICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBUSU1fRElFUl9VSUVfUG9zKSAgICAgICAgIC8qITwgMHgwMDAwMDAwMSAqLw0KI2RlZmluZSBUSU1fRElFUl9VSUUgICAgICAgICAgICAgICAgICAgICAgICBUSU1fRElFUl9VSUVfTXNrICAgICAgICAgICAgICAgICAgIC8qITxVcGRhdGUgaW50ZXJydXB0IGVuYWJsZSAqLw0KI2RlZmluZSBUSU1fRElFUl9DQzFJRV9Qb3MgICAgICAgICAgICAgICAgICAoMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBUSU1fRElFUl9DQzFJRV9Nc2sgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBUSU1fRElFUl9DQzFJRV9Qb3MpICAgICAgIC8qITwgMHgwMDAwMDAwMiAqLw0KI2RlZmluZSBUSU1fRElFUl9DQzFJRSAgICAgICAgICAgICAgICAgICAgICBUSU1fRElFUl9DQzFJRV9Nc2sgICAgICAgICAgICAgICAgIC8qITxDYXB0dXJlL0NvbXBhcmUgMSBpbnRlcnJ1cHQgZW5hYmxlICovDQojZGVmaW5lIFRJTV9ESUVSX0NDMklFX1BvcyAgICAgICAgICAgICAgICAgICgyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFRJTV9ESUVSX0NDMklFX01zayAgICAgICAgICAgICAgICAgICgweDFVIDw8IFRJTV9ESUVSX0NDMklFX1BvcykgICAgICAgLyohPCAweDAwMDAwMDA0ICovDQojZGVmaW5lIFRJTV9ESUVSX0NDMklFICAgICAgICAgICAgICAgICAgICAgIFRJTV9ESUVSX0NDMklFX01zayAgICAgICAgICAgICAgICAgLyohPENhcHR1cmUvQ29tcGFyZSAyIGludGVycnVwdCBlbmFibGUgKi8NCiNkZWZpbmUgVElNX0RJRVJfQ0MzSUVfUG9zICAgICAgICAgICAgICAgICAgKDNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVElNX0RJRVJfQ0MzSUVfTXNrICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVElNX0RJRVJfQ0MzSUVfUG9zKSAgICAgICAvKiE8IDB4MDAwMDAwMDggKi8NCiNkZWZpbmUgVElNX0RJRVJfQ0MzSUUgICAgICAgICAgICAgICAgICAgICAgVElNX0RJRVJfQ0MzSUVfTXNrICAgICAgICAgICAgICAgICAvKiE8Q2FwdHVyZS9Db21wYXJlIDMgaW50ZXJydXB0IGVuYWJsZSAqLw0KI2RlZmluZSBUSU1fRElFUl9DQzRJRV9Qb3MgICAgICAgICAgICAgICAgICAoNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBUSU1fRElFUl9DQzRJRV9Nc2sgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBUSU1fRElFUl9DQzRJRV9Qb3MpICAgICAgIC8qITwgMHgwMDAwMDAxMCAqLw0KI2RlZmluZSBUSU1fRElFUl9DQzRJRSAgICAgICAgICAgICAgICAgICAgICBUSU1fRElFUl9DQzRJRV9Nc2sgICAgICAgICAgICAgICAgIC8qITxDYXB0dXJlL0NvbXBhcmUgNCBpbnRlcnJ1cHQgZW5hYmxlICovDQojZGVmaW5lIFRJTV9ESUVSX1RJRV9Qb3MgICAgICAgICAgICAgICAgICAgICg2VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFRJTV9ESUVSX1RJRV9Nc2sgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFRJTV9ESUVSX1RJRV9Qb3MpICAgICAgICAgLyohPCAweDAwMDAwMDQwICovDQojZGVmaW5lIFRJTV9ESUVSX1RJRSAgICAgICAgICAgICAgICAgICAgICAgIFRJTV9ESUVSX1RJRV9Nc2sgICAgICAgICAgICAgICAgICAgLyohPFRyaWdnZXIgaW50ZXJydXB0IGVuYWJsZSAqLw0KI2RlZmluZSBUSU1fRElFUl9VREVfUG9zICAgICAgICAgICAgICAgICAgICAoOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBUSU1fRElFUl9VREVfTXNrICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBUSU1fRElFUl9VREVfUG9zKSAgICAgICAgIC8qITwgMHgwMDAwMDEwMCAqLw0KI2RlZmluZSBUSU1fRElFUl9VREUgICAgICAgICAgICAgICAgICAgICAgICBUSU1fRElFUl9VREVfTXNrICAgICAgICAgICAgICAgICAgIC8qITxVcGRhdGUgRE1BIHJlcXVlc3QgZW5hYmxlICovDQojZGVmaW5lIFRJTV9ESUVSX0NDMURFX1BvcyAgICAgICAgICAgICAgICAgICg5VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFRJTV9ESUVSX0NDMURFX01zayAgICAgICAgICAgICAgICAgICgweDFVIDw8IFRJTV9ESUVSX0NDMURFX1BvcykgICAgICAgLyohPCAweDAwMDAwMjAwICovDQojZGVmaW5lIFRJTV9ESUVSX0NDMURFICAgICAgICAgICAgICAgICAgICAgIFRJTV9ESUVSX0NDMURFX01zayAgICAgICAgICAgICAgICAgLyohPENhcHR1cmUvQ29tcGFyZSAxIERNQSByZXF1ZXN0IGVuYWJsZSAqLw0KI2RlZmluZSBUSU1fRElFUl9DQzJERV9Qb3MgICAgICAgICAgICAgICAgICAoMTBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBUSU1fRElFUl9DQzJERV9Nc2sgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBUSU1fRElFUl9DQzJERV9Qb3MpICAgICAgIC8qITwgMHgwMDAwMDQwMCAqLw0KI2RlZmluZSBUSU1fRElFUl9DQzJERSAgICAgICAgICAgICAgICAgICAgICBUSU1fRElFUl9DQzJERV9Nc2sgICAgICAgICAgICAgICAgIC8qITxDYXB0dXJlL0NvbXBhcmUgMiBETUEgcmVxdWVzdCBlbmFibGUgKi8NCiNkZWZpbmUgVElNX0RJRVJfQ0MzREVfUG9zICAgICAgICAgICAgICAgICAgKDExVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVElNX0RJRVJfQ0MzREVfTXNrICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVElNX0RJRVJfQ0MzREVfUG9zKSAgICAgICAvKiE8IDB4MDAwMDA4MDAgKi8NCiNkZWZpbmUgVElNX0RJRVJfQ0MzREUgICAgICAgICAgICAgICAgICAgICAgVElNX0RJRVJfQ0MzREVfTXNrICAgICAgICAgICAgICAgICAvKiE8Q2FwdHVyZS9Db21wYXJlIDMgRE1BIHJlcXVlc3QgZW5hYmxlICovDQojZGVmaW5lIFRJTV9ESUVSX0NDNERFX1BvcyAgICAgICAgICAgICAgICAgICgxMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFRJTV9ESUVSX0NDNERFX01zayAgICAgICAgICAgICAgICAgICgweDFVIDw8IFRJTV9ESUVSX0NDNERFX1BvcykgICAgICAgLyohPCAweDAwMDAxMDAwICovDQojZGVmaW5lIFRJTV9ESUVSX0NDNERFICAgICAgICAgICAgICAgICAgICAgIFRJTV9ESUVSX0NDNERFX01zayAgICAgICAgICAgICAgICAgLyohPENhcHR1cmUvQ29tcGFyZSA0IERNQSByZXF1ZXN0IGVuYWJsZSAqLw0KI2RlZmluZSBUSU1fRElFUl9DT01ERSAgICAgICAgICAgICAgICAgICAgICAoKHVpbnQxNl90KTB4MjAwMFUpICAgICAgICAgICAgICAgIC8qITxDT00gRE1BIHJlcXVlc3QgZW5hYmxlICovDQojZGVmaW5lIFRJTV9ESUVSX1RERV9Qb3MgICAgICAgICAgICAgICAgICAgICgxNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFRJTV9ESUVSX1RERV9Nc2sgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFRJTV9ESUVSX1RERV9Qb3MpICAgICAgICAgLyohPCAweDAwMDA0MDAwICovDQojZGVmaW5lIFRJTV9ESUVSX1RERSAgICAgICAgICAgICAgICAgICAgICAgIFRJTV9ESUVSX1RERV9Nc2sgICAgICAgICAgICAgICAgICAgLyohPFRyaWdnZXIgRE1BIHJlcXVlc3QgZW5hYmxlICovDQoNCi8qKioqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFRJTV9TUiByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIFRJTV9TUl9VSUZfUG9zICAgICAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFRJTV9TUl9VSUZfTXNrICAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFRJTV9TUl9VSUZfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwMDAxICovDQojZGVmaW5lIFRJTV9TUl9VSUYgICAgICAgICAgICAgICAgICAgICAgICAgIFRJTV9TUl9VSUZfTXNrICAgICAgICAgICAgICAgICAgICAgLyohPFVwZGF0ZSBpbnRlcnJ1cHQgRmxhZyAqLw0KI2RlZmluZSBUSU1fU1JfQ0MxSUZfUG9zICAgICAgICAgICAgICAgICAgICAoMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBUSU1fU1JfQ0MxSUZfTXNrICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBUSU1fU1JfQ0MxSUZfUG9zKSAgICAgICAgIC8qITwgMHgwMDAwMDAwMiAqLw0KI2RlZmluZSBUSU1fU1JfQ0MxSUYgICAgICAgICAgICAgICAgICAgICAgICBUSU1fU1JfQ0MxSUZfTXNrICAgICAgICAgICAgICAgICAgIC8qITxDYXB0dXJlL0NvbXBhcmUgMSBpbnRlcnJ1cHQgRmxhZyAqLw0KI2RlZmluZSBUSU1fU1JfQ0MySUZfUG9zICAgICAgICAgICAgICAgICAgICAoMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBUSU1fU1JfQ0MySUZfTXNrICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBUSU1fU1JfQ0MySUZfUG9zKSAgICAgICAgIC8qITwgMHgwMDAwMDAwNCAqLw0KI2RlZmluZSBUSU1fU1JfQ0MySUYgICAgICAgICAgICAgICAgICAgICAgICBUSU1fU1JfQ0MySUZfTXNrICAgICAgICAgICAgICAgICAgIC8qITxDYXB0dXJlL0NvbXBhcmUgMiBpbnRlcnJ1cHQgRmxhZyAqLw0KI2RlZmluZSBUSU1fU1JfQ0MzSUZfUG9zICAgICAgICAgICAgICAgICAgICAoM1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBUSU1fU1JfQ0MzSUZfTXNrICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBUSU1fU1JfQ0MzSUZfUG9zKSAgICAgICAgIC8qITwgMHgwMDAwMDAwOCAqLw0KI2RlZmluZSBUSU1fU1JfQ0MzSUYgICAgICAgICAgICAgICAgICAgICAgICBUSU1fU1JfQ0MzSUZfTXNrICAgICAgICAgICAgICAgICAgIC8qITxDYXB0dXJlL0NvbXBhcmUgMyBpbnRlcnJ1cHQgRmxhZyAqLw0KI2RlZmluZSBUSU1fU1JfQ0M0SUZfUG9zICAgICAgICAgICAgICAgICAgICAoNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBUSU1fU1JfQ0M0SUZfTXNrICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBUSU1fU1JfQ0M0SUZfUG9zKSAgICAgICAgIC8qITwgMHgwMDAwMDAxMCAqLw0KI2RlZmluZSBUSU1fU1JfQ0M0SUYgICAgICAgICAgICAgICAgICAgICAgICBUSU1fU1JfQ0M0SUZfTXNrICAgICAgICAgICAgICAgICAgIC8qITxDYXB0dXJlL0NvbXBhcmUgNCBpbnRlcnJ1cHQgRmxhZyAqLw0KI2RlZmluZSBUSU1fU1JfVElGX1BvcyAgICAgICAgICAgICAgICAgICAgICAoNlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBUSU1fU1JfVElGX01zayAgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBUSU1fU1JfVElGX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDA0MCAqLw0KI2RlZmluZSBUSU1fU1JfVElGICAgICAgICAgICAgICAgICAgICAgICAgICBUSU1fU1JfVElGX01zayAgICAgICAgICAgICAgICAgICAgIC8qITxUcmlnZ2VyIGludGVycnVwdCBGbGFnICovDQojZGVmaW5lIFRJTV9TUl9DQzFPRl9Qb3MgICAgICAgICAgICAgICAgICAgICg5VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFRJTV9TUl9DQzFPRl9Nc2sgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFRJTV9TUl9DQzFPRl9Qb3MpICAgICAgICAgLyohPCAweDAwMDAwMjAwICovDQojZGVmaW5lIFRJTV9TUl9DQzFPRiAgICAgICAgICAgICAgICAgICAgICAgIFRJTV9TUl9DQzFPRl9Nc2sgICAgICAgICAgICAgICAgICAgLyohPENhcHR1cmUvQ29tcGFyZSAxIE92ZXJjYXB0dXJlIEZsYWcgKi8NCiNkZWZpbmUgVElNX1NSX0NDMk9GX1BvcyAgICAgICAgICAgICAgICAgICAgKDEwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVElNX1NSX0NDMk9GX01zayAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVElNX1NSX0NDMk9GX1BvcykgICAgICAgICAvKiE8IDB4MDAwMDA0MDAgKi8NCiNkZWZpbmUgVElNX1NSX0NDMk9GICAgICAgICAgICAgICAgICAgICAgICAgVElNX1NSX0NDMk9GX01zayAgICAgICAgICAgICAgICAgICAvKiE8Q2FwdHVyZS9Db21wYXJlIDIgT3ZlcmNhcHR1cmUgRmxhZyAqLw0KI2RlZmluZSBUSU1fU1JfQ0MzT0ZfUG9zICAgICAgICAgICAgICAgICAgICAoMTFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBUSU1fU1JfQ0MzT0ZfTXNrICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBUSU1fU1JfQ0MzT0ZfUG9zKSAgICAgICAgIC8qITwgMHgwMDAwMDgwMCAqLw0KI2RlZmluZSBUSU1fU1JfQ0MzT0YgICAgICAgICAgICAgICAgICAgICAgICBUSU1fU1JfQ0MzT0ZfTXNrICAgICAgICAgICAgICAgICAgIC8qITxDYXB0dXJlL0NvbXBhcmUgMyBPdmVyY2FwdHVyZSBGbGFnICovDQojZGVmaW5lIFRJTV9TUl9DQzRPRl9Qb3MgICAgICAgICAgICAgICAgICAgICgxMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFRJTV9TUl9DQzRPRl9Nc2sgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFRJTV9TUl9DQzRPRl9Qb3MpICAgICAgICAgLyohPCAweDAwMDAxMDAwICovDQojZGVmaW5lIFRJTV9TUl9DQzRPRiAgICAgICAgICAgICAgICAgICAgICAgIFRJTV9TUl9DQzRPRl9Nc2sgICAgICAgICAgICAgICAgICAgLyohPENhcHR1cmUvQ29tcGFyZSA0IE92ZXJjYXB0dXJlIEZsYWcgKi8NCg0KLyoqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBUSU1fRUdSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgVElNX0VHUl9VR19Qb3MgICAgICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVElNX0VHUl9VR19Nc2sgICAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVElNX0VHUl9VR19Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDEgKi8NCiNkZWZpbmUgVElNX0VHUl9VRyAgICAgICAgICAgICAgICAgICAgICAgICAgVElNX0VHUl9VR19Nc2sgICAgICAgICAgICAgICAgICAgICAvKiE8VXBkYXRlIEdlbmVyYXRpb24gKi8NCiNkZWZpbmUgVElNX0VHUl9DQzFHX1BvcyAgICAgICAgICAgICAgICAgICAgKDFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVElNX0VHUl9DQzFHX01zayAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVElNX0VHUl9DQzFHX1BvcykgICAgICAgICAvKiE8IDB4MDAwMDAwMDIgKi8NCiNkZWZpbmUgVElNX0VHUl9DQzFHICAgICAgICAgICAgICAgICAgICAgICAgVElNX0VHUl9DQzFHX01zayAgICAgICAgICAgICAgICAgICAvKiE8Q2FwdHVyZS9Db21wYXJlIDEgR2VuZXJhdGlvbiAqLw0KI2RlZmluZSBUSU1fRUdSX0NDMkdfUG9zICAgICAgICAgICAgICAgICAgICAoMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBUSU1fRUdSX0NDMkdfTXNrICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBUSU1fRUdSX0NDMkdfUG9zKSAgICAgICAgIC8qITwgMHgwMDAwMDAwNCAqLw0KI2RlZmluZSBUSU1fRUdSX0NDMkcgICAgICAgICAgICAgICAgICAgICAgICBUSU1fRUdSX0NDMkdfTXNrICAgICAgICAgICAgICAgICAgIC8qITxDYXB0dXJlL0NvbXBhcmUgMiBHZW5lcmF0aW9uICovDQojZGVmaW5lIFRJTV9FR1JfQ0MzR19Qb3MgICAgICAgICAgICAgICAgICAgICgzVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFRJTV9FR1JfQ0MzR19Nc2sgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFRJTV9FR1JfQ0MzR19Qb3MpICAgICAgICAgLyohPCAweDAwMDAwMDA4ICovDQojZGVmaW5lIFRJTV9FR1JfQ0MzRyAgICAgICAgICAgICAgICAgICAgICAgIFRJTV9FR1JfQ0MzR19Nc2sgICAgICAgICAgICAgICAgICAgLyohPENhcHR1cmUvQ29tcGFyZSAzIEdlbmVyYXRpb24gKi8NCiNkZWZpbmUgVElNX0VHUl9DQzRHX1BvcyAgICAgICAgICAgICAgICAgICAgKDRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVElNX0VHUl9DQzRHX01zayAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVElNX0VHUl9DQzRHX1BvcykgICAgICAgICAvKiE8IDB4MDAwMDAwMTAgKi8NCiNkZWZpbmUgVElNX0VHUl9DQzRHICAgICAgICAgICAgICAgICAgICAgICAgVElNX0VHUl9DQzRHX01zayAgICAgICAgICAgICAgICAgICAvKiE8Q2FwdHVyZS9Db21wYXJlIDQgR2VuZXJhdGlvbiAqLw0KI2RlZmluZSBUSU1fRUdSX1RHX1BvcyAgICAgICAgICAgICAgICAgICAgICAoNlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBUSU1fRUdSX1RHX01zayAgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBUSU1fRUdSX1RHX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDA0MCAqLw0KI2RlZmluZSBUSU1fRUdSX1RHICAgICAgICAgICAgICAgICAgICAgICAgICBUSU1fRUdSX1RHX01zayAgICAgICAgICAgICAgICAgICAgIC8qITxUcmlnZ2VyIEdlbmVyYXRpb24gKi8NCiAgICAgICAgICAgICAgICAgICANCi8qKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBUSU1fQ0NNUjEgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIFRJTV9DQ01SMV9DQzFTX1BvcyAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFRJTV9DQ01SMV9DQzFTX01zayAgICAgICAgICAgICAgICAgICgweDNVIDw8IFRJTV9DQ01SMV9DQzFTX1BvcykgICAgICAgLyohPCAweDAwMDAwMDAzICovDQojZGVmaW5lIFRJTV9DQ01SMV9DQzFTICAgICAgICAgICAgICAgICAgICAgIFRJTV9DQ01SMV9DQzFTX01zayAgICAgICAgICAgICAgICAgLyohPENDMVNbMTowXSBiaXRzIChDYXB0dXJlL0NvbXBhcmUgMSBTZWxlY3Rpb24pICovDQojZGVmaW5lIFRJTV9DQ01SMV9DQzFTXzAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFRJTV9DQ01SMV9DQzFTX1BvcykgICAgICAgLyohPCAweDAwMDAwMDAxICovDQojZGVmaW5lIFRJTV9DQ01SMV9DQzFTXzEgICAgICAgICAgICAgICAgICAgICgweDJVIDw8IFRJTV9DQ01SMV9DQzFTX1BvcykgICAgICAgLyohPCAweDAwMDAwMDAyICovDQoNCiNkZWZpbmUgVElNX0NDTVIxX09DMUZFX1BvcyAgICAgICAgICAgICAgICAgKDJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVElNX0NDTVIxX09DMUZFX01zayAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVElNX0NDTVIxX09DMUZFX1BvcykgICAgICAvKiE8IDB4MDAwMDAwMDQgKi8NCiNkZWZpbmUgVElNX0NDTVIxX09DMUZFICAgICAgICAgICAgICAgICAgICAgVElNX0NDTVIxX09DMUZFX01zayAgICAgICAgICAgICAgICAvKiE8T3V0cHV0IENvbXBhcmUgMSBGYXN0IGVuYWJsZSAqLw0KI2RlZmluZSBUSU1fQ0NNUjFfT0MxUEVfUG9zICAgICAgICAgICAgICAgICAoM1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBUSU1fQ0NNUjFfT0MxUEVfTXNrICAgICAgICAgICAgICAgICAoMHgxVSA8PCBUSU1fQ0NNUjFfT0MxUEVfUG9zKSAgICAgIC8qITwgMHgwMDAwMDAwOCAqLw0KI2RlZmluZSBUSU1fQ0NNUjFfT0MxUEUgICAgICAgICAgICAgICAgICAgICBUSU1fQ0NNUjFfT0MxUEVfTXNrICAgICAgICAgICAgICAgIC8qITxPdXRwdXQgQ29tcGFyZSAxIFByZWxvYWQgZW5hYmxlICovDQoNCiNkZWZpbmUgVElNX0NDTVIxX09DMU1fUG9zICAgICAgICAgICAgICAgICAgKDRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVElNX0NDTVIxX09DMU1fTXNrICAgICAgICAgICAgICAgICAgKDB4N1UgPDwgVElNX0NDTVIxX09DMU1fUG9zKSAgICAgICAvKiE8IDB4MDAwMDAwNzAgKi8NCiNkZWZpbmUgVElNX0NDTVIxX09DMU0gICAgICAgICAgICAgICAgICAgICAgVElNX0NDTVIxX09DMU1fTXNrICAgICAgICAgICAgICAgICAvKiE8T0MxTVsyOjBdIGJpdHMgKE91dHB1dCBDb21wYXJlIDEgTW9kZSkgKi8NCiNkZWZpbmUgVElNX0NDTVIxX09DMU1fMCAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVElNX0NDTVIxX09DMU1fUG9zKSAgICAgICAvKiE8IDB4MDAwMDAwMTAgKi8NCiNkZWZpbmUgVElNX0NDTVIxX09DMU1fMSAgICAgICAgICAgICAgICAgICAgKDB4MlUgPDwgVElNX0NDTVIxX09DMU1fUG9zKSAgICAgICAvKiE8IDB4MDAwMDAwMjAgKi8NCiNkZWZpbmUgVElNX0NDTVIxX09DMU1fMiAgICAgICAgICAgICAgICAgICAgKDB4NFUgPDwgVElNX0NDTVIxX09DMU1fUG9zKSAgICAgICAvKiE8IDB4MDAwMDAwNDAgKi8NCg0KI2RlZmluZSBUSU1fQ0NNUjFfT0MxQ0VfUG9zICAgICAgICAgICAgICAgICAoN1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBUSU1fQ0NNUjFfT0MxQ0VfTXNrICAgICAgICAgICAgICAgICAoMHgxVSA8PCBUSU1fQ0NNUjFfT0MxQ0VfUG9zKSAgICAgIC8qITwgMHgwMDAwMDA4MCAqLw0KI2RlZmluZSBUSU1fQ0NNUjFfT0MxQ0UgICAgICAgICAgICAgICAgICAgICBUSU1fQ0NNUjFfT0MxQ0VfTXNrICAgICAgICAgICAgICAgIC8qITxPdXRwdXQgQ29tcGFyZSAxQ2xlYXIgRW5hYmxlICovDQoNCiNkZWZpbmUgVElNX0NDTVIxX0NDMlNfUG9zICAgICAgICAgICAgICAgICAgKDhVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVElNX0NDTVIxX0NDMlNfTXNrICAgICAgICAgICAgICAgICAgKDB4M1UgPDwgVElNX0NDTVIxX0NDMlNfUG9zKSAgICAgICAvKiE8IDB4MDAwMDAzMDAgKi8NCiNkZWZpbmUgVElNX0NDTVIxX0NDMlMgICAgICAgICAgICAgICAgICAgICAgVElNX0NDTVIxX0NDMlNfTXNrICAgICAgICAgICAgICAgICAvKiE8Q0MyU1sxOjBdIGJpdHMgKENhcHR1cmUvQ29tcGFyZSAyIFNlbGVjdGlvbikgKi8NCiNkZWZpbmUgVElNX0NDTVIxX0NDMlNfMCAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVElNX0NDTVIxX0NDMlNfUG9zKSAgICAgICAvKiE8IDB4MDAwMDAxMDAgKi8NCiNkZWZpbmUgVElNX0NDTVIxX0NDMlNfMSAgICAgICAgICAgICAgICAgICAgKDB4MlUgPDwgVElNX0NDTVIxX0NDMlNfUG9zKSAgICAgICAvKiE8IDB4MDAwMDAyMDAgKi8NCg0KI2RlZmluZSBUSU1fQ0NNUjFfT0MyRkVfUG9zICAgICAgICAgICAgICAgICAoMTBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBUSU1fQ0NNUjFfT0MyRkVfTXNrICAgICAgICAgICAgICAgICAoMHgxVSA8PCBUSU1fQ0NNUjFfT0MyRkVfUG9zKSAgICAgIC8qITwgMHgwMDAwMDQwMCAqLw0KI2RlZmluZSBUSU1fQ0NNUjFfT0MyRkUgICAgICAgICAgICAgICAgICAgICBUSU1fQ0NNUjFfT0MyRkVfTXNrICAgICAgICAgICAgICAgIC8qITxPdXRwdXQgQ29tcGFyZSAyIEZhc3QgZW5hYmxlICovDQojZGVmaW5lIFRJTV9DQ01SMV9PQzJQRV9Qb3MgICAgICAgICAgICAgICAgICgxMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFRJTV9DQ01SMV9PQzJQRV9Nc2sgICAgICAgICAgICAgICAgICgweDFVIDw8IFRJTV9DQ01SMV9PQzJQRV9Qb3MpICAgICAgLyohPCAweDAwMDAwODAwICovDQojZGVmaW5lIFRJTV9DQ01SMV9PQzJQRSAgICAgICAgICAgICAgICAgICAgIFRJTV9DQ01SMV9PQzJQRV9Nc2sgICAgICAgICAgICAgICAgLyohPE91dHB1dCBDb21wYXJlIDIgUHJlbG9hZCBlbmFibGUgKi8NCg0KI2RlZmluZSBUSU1fQ0NNUjFfT0MyTV9Qb3MgICAgICAgICAgICAgICAgICAoMTJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBUSU1fQ0NNUjFfT0MyTV9Nc2sgICAgICAgICAgICAgICAgICAoMHg3VSA8PCBUSU1fQ0NNUjFfT0MyTV9Qb3MpICAgICAgIC8qITwgMHgwMDAwNzAwMCAqLw0KI2RlZmluZSBUSU1fQ0NNUjFfT0MyTSAgICAgICAgICAgICAgICAgICAgICBUSU1fQ0NNUjFfT0MyTV9Nc2sgICAgICAgICAgICAgICAgIC8qITxPQzJNWzI6MF0gYml0cyAoT3V0cHV0IENvbXBhcmUgMiBNb2RlKSAqLw0KI2RlZmluZSBUSU1fQ0NNUjFfT0MyTV8wICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBUSU1fQ0NNUjFfT0MyTV9Qb3MpICAgICAgIC8qITwgMHgwMDAwMTAwMCAqLw0KI2RlZmluZSBUSU1fQ0NNUjFfT0MyTV8xICAgICAgICAgICAgICAgICAgICAoMHgyVSA8PCBUSU1fQ0NNUjFfT0MyTV9Qb3MpICAgICAgIC8qITwgMHgwMDAwMjAwMCAqLw0KI2RlZmluZSBUSU1fQ0NNUjFfT0MyTV8yICAgICAgICAgICAgICAgICAgICAoMHg0VSA8PCBUSU1fQ0NNUjFfT0MyTV9Qb3MpICAgICAgIC8qITwgMHgwMDAwNDAwMCAqLw0KDQojZGVmaW5lIFRJTV9DQ01SMV9PQzJDRV9Qb3MgICAgICAgICAgICAgICAgICgxNVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFRJTV9DQ01SMV9PQzJDRV9Nc2sgICAgICAgICAgICAgICAgICgweDFVIDw8IFRJTV9DQ01SMV9PQzJDRV9Qb3MpICAgICAgLyohPCAweDAwMDA4MDAwICovDQojZGVmaW5lIFRJTV9DQ01SMV9PQzJDRSAgICAgICAgICAgICAgICAgICAgIFRJTV9DQ01SMV9PQzJDRV9Nc2sgICAgICAgICAgICAgICAgLyohPE91dHB1dCBDb21wYXJlIDIgQ2xlYXIgRW5hYmxlICovDQoNCi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovDQoNCiNkZWZpbmUgVElNX0NDTVIxX0lDMVBTQ19Qb3MgICAgICAgICAgICAgICAgKDJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVElNX0NDTVIxX0lDMVBTQ19Nc2sgICAgICAgICAgICAgICAgKDB4M1UgPDwgVElNX0NDTVIxX0lDMVBTQ19Qb3MpICAgICAvKiE8IDB4MDAwMDAwMEMgKi8NCiNkZWZpbmUgVElNX0NDTVIxX0lDMVBTQyAgICAgICAgICAgICAgICAgICAgVElNX0NDTVIxX0lDMVBTQ19Nc2sgICAgICAgICAgICAgICAvKiE8SUMxUFNDWzE6MF0gYml0cyAoSW5wdXQgQ2FwdHVyZSAxIFByZXNjYWxlcikgKi8NCiNkZWZpbmUgVElNX0NDTVIxX0lDMVBTQ18wICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVElNX0NDTVIxX0lDMVBTQ19Qb3MpICAgICAvKiE8IDB4MDAwMDAwMDQgKi8NCiNkZWZpbmUgVElNX0NDTVIxX0lDMVBTQ18xICAgICAgICAgICAgICAgICAgKDB4MlUgPDwgVElNX0NDTVIxX0lDMVBTQ19Qb3MpICAgICAvKiE8IDB4MDAwMDAwMDggKi8NCg0KI2RlZmluZSBUSU1fQ0NNUjFfSUMxRl9Qb3MgICAgICAgICAgICAgICAgICAoNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBUSU1fQ0NNUjFfSUMxRl9Nc2sgICAgICAgICAgICAgICAgICAoMHhGVSA8PCBUSU1fQ0NNUjFfSUMxRl9Qb3MpICAgICAgIC8qITwgMHgwMDAwMDBGMCAqLw0KI2RlZmluZSBUSU1fQ0NNUjFfSUMxRiAgICAgICAgICAgICAgICAgICAgICBUSU1fQ0NNUjFfSUMxRl9Nc2sgICAgICAgICAgICAgICAgIC8qITxJQzFGWzM6MF0gYml0cyAoSW5wdXQgQ2FwdHVyZSAxIEZpbHRlcikgKi8NCiNkZWZpbmUgVElNX0NDTVIxX0lDMUZfMCAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVElNX0NDTVIxX0lDMUZfUG9zKSAgICAgICAvKiE8IDB4MDAwMDAwMTAgKi8NCiNkZWZpbmUgVElNX0NDTVIxX0lDMUZfMSAgICAgICAgICAgICAgICAgICAgKDB4MlUgPDwgVElNX0NDTVIxX0lDMUZfUG9zKSAgICAgICAvKiE8IDB4MDAwMDAwMjAgKi8NCiNkZWZpbmUgVElNX0NDTVIxX0lDMUZfMiAgICAgICAgICAgICAgICAgICAgKDB4NFUgPDwgVElNX0NDTVIxX0lDMUZfUG9zKSAgICAgICAvKiE8IDB4MDAwMDAwNDAgKi8NCiNkZWZpbmUgVElNX0NDTVIxX0lDMUZfMyAgICAgICAgICAgICAgICAgICAgKDB4OFUgPDwgVElNX0NDTVIxX0lDMUZfUG9zKSAgICAgICAvKiE8IDB4MDAwMDAwODAgKi8NCg0KI2RlZmluZSBUSU1fQ0NNUjFfSUMyUFNDX1BvcyAgICAgICAgICAgICAgICAoMTBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBUSU1fQ0NNUjFfSUMyUFNDX01zayAgICAgICAgICAgICAgICAoMHgzVSA8PCBUSU1fQ0NNUjFfSUMyUFNDX1BvcykgICAgIC8qITwgMHgwMDAwMEMwMCAqLw0KI2RlZmluZSBUSU1fQ0NNUjFfSUMyUFNDICAgICAgICAgICAgICAgICAgICBUSU1fQ0NNUjFfSUMyUFNDX01zayAgICAgICAgICAgICAgIC8qITxJQzJQU0NbMTowXSBiaXRzIChJbnB1dCBDYXB0dXJlIDIgUHJlc2NhbGVyKSAqLw0KI2RlZmluZSBUSU1fQ0NNUjFfSUMyUFNDXzAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBUSU1fQ0NNUjFfSUMyUFNDX1BvcykgICAgIC8qITwgMHgwMDAwMDQwMCAqLw0KI2RlZmluZSBUSU1fQ0NNUjFfSUMyUFNDXzEgICAgICAgICAgICAgICAgICAoMHgyVSA8PCBUSU1fQ0NNUjFfSUMyUFNDX1BvcykgICAgIC8qITwgMHgwMDAwMDgwMCAqLw0KDQojZGVmaW5lIFRJTV9DQ01SMV9JQzJGX1BvcyAgICAgICAgICAgICAgICAgICgxMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFRJTV9DQ01SMV9JQzJGX01zayAgICAgICAgICAgICAgICAgICgweEZVIDw8IFRJTV9DQ01SMV9JQzJGX1BvcykgICAgICAgLyohPCAweDAwMDBGMDAwICovDQojZGVmaW5lIFRJTV9DQ01SMV9JQzJGICAgICAgICAgICAgICAgICAgICAgIFRJTV9DQ01SMV9JQzJGX01zayAgICAgICAgICAgICAgICAgLyohPElDMkZbMzowXSBiaXRzIChJbnB1dCBDYXB0dXJlIDIgRmlsdGVyKSAqLw0KI2RlZmluZSBUSU1fQ0NNUjFfSUMyRl8wICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBUSU1fQ0NNUjFfSUMyRl9Qb3MpICAgICAgIC8qITwgMHgwMDAwMTAwMCAqLw0KI2RlZmluZSBUSU1fQ0NNUjFfSUMyRl8xICAgICAgICAgICAgICAgICAgICAoMHgyVSA8PCBUSU1fQ0NNUjFfSUMyRl9Qb3MpICAgICAgIC8qITwgMHgwMDAwMjAwMCAqLw0KI2RlZmluZSBUSU1fQ0NNUjFfSUMyRl8yICAgICAgICAgICAgICAgICAgICAoMHg0VSA8PCBUSU1fQ0NNUjFfSUMyRl9Qb3MpICAgICAgIC8qITwgMHgwMDAwNDAwMCAqLw0KI2RlZmluZSBUSU1fQ0NNUjFfSUMyRl8zICAgICAgICAgICAgICAgICAgICAoMHg4VSA8PCBUSU1fQ0NNUjFfSUMyRl9Qb3MpICAgICAgIC8qITwgMHgwMDAwODAwMCAqLw0KDQovKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgVElNX0NDTVIyIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBUSU1fQ0NNUjJfQ0MzU19Qb3MgICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBUSU1fQ0NNUjJfQ0MzU19Nc2sgICAgICAgICAgICAgICAgICAoMHgzVSA8PCBUSU1fQ0NNUjJfQ0MzU19Qb3MpICAgICAgIC8qITwgMHgwMDAwMDAwMyAqLw0KI2RlZmluZSBUSU1fQ0NNUjJfQ0MzUyAgICAgICAgICAgICAgICAgICAgICBUSU1fQ0NNUjJfQ0MzU19Nc2sgICAgICAgICAgICAgICAgIC8qITxDQzNTWzE6MF0gYml0cyAoQ2FwdHVyZS9Db21wYXJlIDMgU2VsZWN0aW9uKSAqLw0KI2RlZmluZSBUSU1fQ0NNUjJfQ0MzU18wICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBUSU1fQ0NNUjJfQ0MzU19Qb3MpICAgICAgIC8qITwgMHgwMDAwMDAwMSAqLw0KI2RlZmluZSBUSU1fQ0NNUjJfQ0MzU18xICAgICAgICAgICAgICAgICAgICAoMHgyVSA8PCBUSU1fQ0NNUjJfQ0MzU19Qb3MpICAgICAgIC8qITwgMHgwMDAwMDAwMiAqLw0KDQojZGVmaW5lIFRJTV9DQ01SMl9PQzNGRV9Qb3MgICAgICAgICAgICAgICAgICgyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFRJTV9DQ01SMl9PQzNGRV9Nc2sgICAgICAgICAgICAgICAgICgweDFVIDw8IFRJTV9DQ01SMl9PQzNGRV9Qb3MpICAgICAgLyohPCAweDAwMDAwMDA0ICovDQojZGVmaW5lIFRJTV9DQ01SMl9PQzNGRSAgICAgICAgICAgICAgICAgICAgIFRJTV9DQ01SMl9PQzNGRV9Nc2sgICAgICAgICAgICAgICAgLyohPE91dHB1dCBDb21wYXJlIDMgRmFzdCBlbmFibGUgKi8NCiNkZWZpbmUgVElNX0NDTVIyX09DM1BFX1BvcyAgICAgICAgICAgICAgICAgKDNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVElNX0NDTVIyX09DM1BFX01zayAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVElNX0NDTVIyX09DM1BFX1BvcykgICAgICAvKiE8IDB4MDAwMDAwMDggKi8NCiNkZWZpbmUgVElNX0NDTVIyX09DM1BFICAgICAgICAgICAgICAgICAgICAgVElNX0NDTVIyX09DM1BFX01zayAgICAgICAgICAgICAgICAvKiE8T3V0cHV0IENvbXBhcmUgMyBQcmVsb2FkIGVuYWJsZSAqLw0KDQojZGVmaW5lIFRJTV9DQ01SMl9PQzNNX1BvcyAgICAgICAgICAgICAgICAgICg0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFRJTV9DQ01SMl9PQzNNX01zayAgICAgICAgICAgICAgICAgICgweDdVIDw8IFRJTV9DQ01SMl9PQzNNX1BvcykgICAgICAgLyohPCAweDAwMDAwMDcwICovDQojZGVmaW5lIFRJTV9DQ01SMl9PQzNNICAgICAgICAgICAgICAgICAgICAgIFRJTV9DQ01SMl9PQzNNX01zayAgICAgICAgICAgICAgICAgLyohPE9DM01bMjowXSBiaXRzIChPdXRwdXQgQ29tcGFyZSAzIE1vZGUpICovDQojZGVmaW5lIFRJTV9DQ01SMl9PQzNNXzAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFRJTV9DQ01SMl9PQzNNX1BvcykgICAgICAgLyohPCAweDAwMDAwMDEwICovDQojZGVmaW5lIFRJTV9DQ01SMl9PQzNNXzEgICAgICAgICAgICAgICAgICAgICgweDJVIDw8IFRJTV9DQ01SMl9PQzNNX1BvcykgICAgICAgLyohPCAweDAwMDAwMDIwICovDQojZGVmaW5lIFRJTV9DQ01SMl9PQzNNXzIgICAgICAgICAgICAgICAgICAgICgweDRVIDw8IFRJTV9DQ01SMl9PQzNNX1BvcykgICAgICAgLyohPCAweDAwMDAwMDQwICovDQoNCiNkZWZpbmUgVElNX0NDTVIyX09DM0NFX1BvcyAgICAgICAgICAgICAgICAgKDdVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVElNX0NDTVIyX09DM0NFX01zayAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVElNX0NDTVIyX09DM0NFX1BvcykgICAgICAvKiE8IDB4MDAwMDAwODAgKi8NCiNkZWZpbmUgVElNX0NDTVIyX09DM0NFICAgICAgICAgICAgICAgICAgICAgVElNX0NDTVIyX09DM0NFX01zayAgICAgICAgICAgICAgICAvKiE8T3V0cHV0IENvbXBhcmUgMyBDbGVhciBFbmFibGUgKi8NCg0KI2RlZmluZSBUSU1fQ0NNUjJfQ0M0U19Qb3MgICAgICAgICAgICAgICAgICAoOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBUSU1fQ0NNUjJfQ0M0U19Nc2sgICAgICAgICAgICAgICAgICAoMHgzVSA8PCBUSU1fQ0NNUjJfQ0M0U19Qb3MpICAgICAgIC8qITwgMHgwMDAwMDMwMCAqLw0KI2RlZmluZSBUSU1fQ0NNUjJfQ0M0UyAgICAgICAgICAgICAgICAgICAgICBUSU1fQ0NNUjJfQ0M0U19Nc2sgICAgICAgICAgICAgICAgIC8qITxDQzRTWzE6MF0gYml0cyAoQ2FwdHVyZS9Db21wYXJlIDQgU2VsZWN0aW9uKSAqLw0KI2RlZmluZSBUSU1fQ0NNUjJfQ0M0U18wICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBUSU1fQ0NNUjJfQ0M0U19Qb3MpICAgICAgIC8qITwgMHgwMDAwMDEwMCAqLw0KI2RlZmluZSBUSU1fQ0NNUjJfQ0M0U18xICAgICAgICAgICAgICAgICAgICAoMHgyVSA8PCBUSU1fQ0NNUjJfQ0M0U19Qb3MpICAgICAgIC8qITwgMHgwMDAwMDIwMCAqLw0KDQojZGVmaW5lIFRJTV9DQ01SMl9PQzRGRV9Qb3MgICAgICAgICAgICAgICAgICgxMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFRJTV9DQ01SMl9PQzRGRV9Nc2sgICAgICAgICAgICAgICAgICgweDFVIDw8IFRJTV9DQ01SMl9PQzRGRV9Qb3MpICAgICAgLyohPCAweDAwMDAwNDAwICovDQojZGVmaW5lIFRJTV9DQ01SMl9PQzRGRSAgICAgICAgICAgICAgICAgICAgIFRJTV9DQ01SMl9PQzRGRV9Nc2sgICAgICAgICAgICAgICAgLyohPE91dHB1dCBDb21wYXJlIDQgRmFzdCBlbmFibGUgKi8NCiNkZWZpbmUgVElNX0NDTVIyX09DNFBFX1BvcyAgICAgICAgICAgICAgICAgKDExVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVElNX0NDTVIyX09DNFBFX01zayAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVElNX0NDTVIyX09DNFBFX1BvcykgICAgICAvKiE8IDB4MDAwMDA4MDAgKi8NCiNkZWZpbmUgVElNX0NDTVIyX09DNFBFICAgICAgICAgICAgICAgICAgICAgVElNX0NDTVIyX09DNFBFX01zayAgICAgICAgICAgICAgICAvKiE8T3V0cHV0IENvbXBhcmUgNCBQcmVsb2FkIGVuYWJsZSAqLw0KDQojZGVmaW5lIFRJTV9DQ01SMl9PQzRNX1BvcyAgICAgICAgICAgICAgICAgICgxMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFRJTV9DQ01SMl9PQzRNX01zayAgICAgICAgICAgICAgICAgICgweDdVIDw8IFRJTV9DQ01SMl9PQzRNX1BvcykgICAgICAgLyohPCAweDAwMDA3MDAwICovDQojZGVmaW5lIFRJTV9DQ01SMl9PQzRNICAgICAgICAgICAgICAgICAgICAgIFRJTV9DQ01SMl9PQzRNX01zayAgICAgICAgICAgICAgICAgLyohPE9DNE1bMjowXSBiaXRzIChPdXRwdXQgQ29tcGFyZSA0IE1vZGUpICovDQojZGVmaW5lIFRJTV9DQ01SMl9PQzRNXzAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFRJTV9DQ01SMl9PQzRNX1BvcykgICAgICAgLyohPCAweDAwMDAxMDAwICovDQojZGVmaW5lIFRJTV9DQ01SMl9PQzRNXzEgICAgICAgICAgICAgICAgICAgICgweDJVIDw8IFRJTV9DQ01SMl9PQzRNX1BvcykgICAgICAgLyohPCAweDAwMDAyMDAwICovDQojZGVmaW5lIFRJTV9DQ01SMl9PQzRNXzIgICAgICAgICAgICAgICAgICAgICgweDRVIDw8IFRJTV9DQ01SMl9PQzRNX1BvcykgICAgICAgLyohPCAweDAwMDA0MDAwICovDQoNCiNkZWZpbmUgVElNX0NDTVIyX09DNENFX1BvcyAgICAgICAgICAgICAgICAgKDE1VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVElNX0NDTVIyX09DNENFX01zayAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVElNX0NDTVIyX09DNENFX1BvcykgICAgICAvKiE8IDB4MDAwMDgwMDAgKi8NCiNkZWZpbmUgVElNX0NDTVIyX09DNENFICAgICAgICAgICAgICAgICAgICAgVElNX0NDTVIyX09DNENFX01zayAgICAgICAgICAgICAgICAvKiE8T3V0cHV0IENvbXBhcmUgNCBDbGVhciBFbmFibGUgKi8NCg0KLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi8NCg0KI2RlZmluZSBUSU1fQ0NNUjJfSUMzUFNDX1BvcyAgICAgICAgICAgICAgICAoMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBUSU1fQ0NNUjJfSUMzUFNDX01zayAgICAgICAgICAgICAgICAoMHgzVSA8PCBUSU1fQ0NNUjJfSUMzUFNDX1BvcykgICAgIC8qITwgMHgwMDAwMDAwQyAqLw0KI2RlZmluZSBUSU1fQ0NNUjJfSUMzUFNDICAgICAgICAgICAgICAgICAgICBUSU1fQ0NNUjJfSUMzUFNDX01zayAgICAgICAgICAgICAgIC8qITxJQzNQU0NbMTowXSBiaXRzIChJbnB1dCBDYXB0dXJlIDMgUHJlc2NhbGVyKSAqLw0KI2RlZmluZSBUSU1fQ0NNUjJfSUMzUFNDXzAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBUSU1fQ0NNUjJfSUMzUFNDX1BvcykgICAgIC8qITwgMHgwMDAwMDAwNCAqLw0KI2RlZmluZSBUSU1fQ0NNUjJfSUMzUFNDXzEgICAgICAgICAgICAgICAgICAoMHgyVSA8PCBUSU1fQ0NNUjJfSUMzUFNDX1BvcykgICAgIC8qITwgMHgwMDAwMDAwOCAqLw0KDQojZGVmaW5lIFRJTV9DQ01SMl9JQzNGX1BvcyAgICAgICAgICAgICAgICAgICg0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFRJTV9DQ01SMl9JQzNGX01zayAgICAgICAgICAgICAgICAgICgweEZVIDw8IFRJTV9DQ01SMl9JQzNGX1BvcykgICAgICAgLyohPCAweDAwMDAwMEYwICovDQojZGVmaW5lIFRJTV9DQ01SMl9JQzNGICAgICAgICAgICAgICAgICAgICAgIFRJTV9DQ01SMl9JQzNGX01zayAgICAgICAgICAgICAgICAgLyohPElDM0ZbMzowXSBiaXRzIChJbnB1dCBDYXB0dXJlIDMgRmlsdGVyKSAqLw0KI2RlZmluZSBUSU1fQ0NNUjJfSUMzRl8wICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBUSU1fQ0NNUjJfSUMzRl9Qb3MpICAgICAgIC8qITwgMHgwMDAwMDAxMCAqLw0KI2RlZmluZSBUSU1fQ0NNUjJfSUMzRl8xICAgICAgICAgICAgICAgICAgICAoMHgyVSA8PCBUSU1fQ0NNUjJfSUMzRl9Qb3MpICAgICAgIC8qITwgMHgwMDAwMDAyMCAqLw0KI2RlZmluZSBUSU1fQ0NNUjJfSUMzRl8yICAgICAgICAgICAgICAgICAgICAoMHg0VSA8PCBUSU1fQ0NNUjJfSUMzRl9Qb3MpICAgICAgIC8qITwgMHgwMDAwMDA0MCAqLw0KI2RlZmluZSBUSU1fQ0NNUjJfSUMzRl8zICAgICAgICAgICAgICAgICAgICAoMHg4VSA8PCBUSU1fQ0NNUjJfSUMzRl9Qb3MpICAgICAgIC8qITwgMHgwMDAwMDA4MCAqLw0KDQojZGVmaW5lIFRJTV9DQ01SMl9JQzRQU0NfUG9zICAgICAgICAgICAgICAgICgxMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFRJTV9DQ01SMl9JQzRQU0NfTXNrICAgICAgICAgICAgICAgICgweDNVIDw8IFRJTV9DQ01SMl9JQzRQU0NfUG9zKSAgICAgLyohPCAweDAwMDAwQzAwICovDQojZGVmaW5lIFRJTV9DQ01SMl9JQzRQU0MgICAgICAgICAgICAgICAgICAgIFRJTV9DQ01SMl9JQzRQU0NfTXNrICAgICAgICAgICAgICAgLyohPElDNFBTQ1sxOjBdIGJpdHMgKElucHV0IENhcHR1cmUgNCBQcmVzY2FsZXIpICovDQojZGVmaW5lIFRJTV9DQ01SMl9JQzRQU0NfMCAgICAgICAgICAgICAgICAgICgweDFVIDw8IFRJTV9DQ01SMl9JQzRQU0NfUG9zKSAgICAgLyohPCAweDAwMDAwNDAwICovDQojZGVmaW5lIFRJTV9DQ01SMl9JQzRQU0NfMSAgICAgICAgICAgICAgICAgICgweDJVIDw8IFRJTV9DQ01SMl9JQzRQU0NfUG9zKSAgICAgLyohPCAweDAwMDAwODAwICovDQoNCiNkZWZpbmUgVElNX0NDTVIyX0lDNEZfUG9zICAgICAgICAgICAgICAgICAgKDEyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVElNX0NDTVIyX0lDNEZfTXNrICAgICAgICAgICAgICAgICAgKDB4RlUgPDwgVElNX0NDTVIyX0lDNEZfUG9zKSAgICAgICAvKiE8IDB4MDAwMEYwMDAgKi8NCiNkZWZpbmUgVElNX0NDTVIyX0lDNEYgICAgICAgICAgICAgICAgICAgICAgVElNX0NDTVIyX0lDNEZfTXNrICAgICAgICAgICAgICAgICAvKiE8SUM0RlszOjBdIGJpdHMgKElucHV0IENhcHR1cmUgNCBGaWx0ZXIpICovDQojZGVmaW5lIFRJTV9DQ01SMl9JQzRGXzAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFRJTV9DQ01SMl9JQzRGX1BvcykgICAgICAgLyohPCAweDAwMDAxMDAwICovDQojZGVmaW5lIFRJTV9DQ01SMl9JQzRGXzEgICAgICAgICAgICAgICAgICAgICgweDJVIDw8IFRJTV9DQ01SMl9JQzRGX1BvcykgICAgICAgLyohPCAweDAwMDAyMDAwICovDQojZGVmaW5lIFRJTV9DQ01SMl9JQzRGXzIgICAgICAgICAgICAgICAgICAgICgweDRVIDw8IFRJTV9DQ01SMl9JQzRGX1BvcykgICAgICAgLyohPCAweDAwMDA0MDAwICovDQojZGVmaW5lIFRJTV9DQ01SMl9JQzRGXzMgICAgICAgICAgICAgICAgICAgICgweDhVIDw8IFRJTV9DQ01SMl9JQzRGX1BvcykgICAgICAgLyohPCAweDAwMDA4MDAwICovDQoNCi8qKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgVElNX0NDRVIgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIFRJTV9DQ0VSX0NDMUVfUG9zICAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFRJTV9DQ0VSX0NDMUVfTXNrICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFRJTV9DQ0VSX0NDMUVfUG9zKSAgICAgICAgLyohPCAweDAwMDAwMDAxICovDQojZGVmaW5lIFRJTV9DQ0VSX0NDMUUgICAgICAgICAgICAgICAgICAgICAgIFRJTV9DQ0VSX0NDMUVfTXNrICAgICAgICAgICAgICAgICAgLyohPENhcHR1cmUvQ29tcGFyZSAxIG91dHB1dCBlbmFibGUgKi8NCiNkZWZpbmUgVElNX0NDRVJfQ0MxUF9Qb3MgICAgICAgICAgICAgICAgICAgKDFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVElNX0NDRVJfQ0MxUF9Nc2sgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVElNX0NDRVJfQ0MxUF9Qb3MpICAgICAgICAvKiE8IDB4MDAwMDAwMDIgKi8NCiNkZWZpbmUgVElNX0NDRVJfQ0MxUCAgICAgICAgICAgICAgICAgICAgICAgVElNX0NDRVJfQ0MxUF9Nc2sgICAgICAgICAgICAgICAgICAvKiE8Q2FwdHVyZS9Db21wYXJlIDEgb3V0cHV0IFBvbGFyaXR5ICovDQojZGVmaW5lIFRJTV9DQ0VSX0NDMU5QX1BvcyAgICAgICAgICAgICAgICAgICgzVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFRJTV9DQ0VSX0NDMU5QX01zayAgICAgICAgICAgICAgICAgICgweDFVIDw8IFRJTV9DQ0VSX0NDMU5QX1BvcykgICAgICAgLyohPCAweDAwMDAwMDA4ICovDQojZGVmaW5lIFRJTV9DQ0VSX0NDMU5QICAgICAgICAgICAgICAgICAgICAgIFRJTV9DQ0VSX0NDMU5QX01zayAgICAgICAgICAgICAgICAgLyohPENhcHR1cmUvQ29tcGFyZSAxIENvbXBsZW1lbnRhcnkgb3V0cHV0IFBvbGFyaXR5ICovDQojZGVmaW5lIFRJTV9DQ0VSX0NDMkVfUG9zICAgICAgICAgICAgICAgICAgICg0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFRJTV9DQ0VSX0NDMkVfTXNrICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFRJTV9DQ0VSX0NDMkVfUG9zKSAgICAgICAgLyohPCAweDAwMDAwMDEwICovDQojZGVmaW5lIFRJTV9DQ0VSX0NDMkUgICAgICAgICAgICAgICAgICAgICAgIFRJTV9DQ0VSX0NDMkVfTXNrICAgICAgICAgICAgICAgICAgLyohPENhcHR1cmUvQ29tcGFyZSAyIG91dHB1dCBlbmFibGUgKi8NCiNkZWZpbmUgVElNX0NDRVJfQ0MyUF9Qb3MgICAgICAgICAgICAgICAgICAgKDVVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVElNX0NDRVJfQ0MyUF9Nc2sgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVElNX0NDRVJfQ0MyUF9Qb3MpICAgICAgICAvKiE8IDB4MDAwMDAwMjAgKi8NCiNkZWZpbmUgVElNX0NDRVJfQ0MyUCAgICAgICAgICAgICAgICAgICAgICAgVElNX0NDRVJfQ0MyUF9Nc2sgICAgICAgICAgICAgICAgICAvKiE8Q2FwdHVyZS9Db21wYXJlIDIgb3V0cHV0IFBvbGFyaXR5ICovDQojZGVmaW5lIFRJTV9DQ0VSX0NDMk5QX1BvcyAgICAgICAgICAgICAgICAgICg3VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFRJTV9DQ0VSX0NDMk5QX01zayAgICAgICAgICAgICAgICAgICgweDFVIDw8IFRJTV9DQ0VSX0NDMk5QX1BvcykgICAgICAgLyohPCAweDAwMDAwMDgwICovDQojZGVmaW5lIFRJTV9DQ0VSX0NDMk5QICAgICAgICAgICAgICAgICAgICAgIFRJTV9DQ0VSX0NDMk5QX01zayAgICAgICAgICAgICAgICAgLyohPENhcHR1cmUvQ29tcGFyZSAyIENvbXBsZW1lbnRhcnkgb3V0cHV0IFBvbGFyaXR5ICovDQojZGVmaW5lIFRJTV9DQ0VSX0NDM0VfUG9zICAgICAgICAgICAgICAgICAgICg4VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFRJTV9DQ0VSX0NDM0VfTXNrICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFRJTV9DQ0VSX0NDM0VfUG9zKSAgICAgICAgLyohPCAweDAwMDAwMTAwICovDQojZGVmaW5lIFRJTV9DQ0VSX0NDM0UgICAgICAgICAgICAgICAgICAgICAgIFRJTV9DQ0VSX0NDM0VfTXNrICAgICAgICAgICAgICAgICAgLyohPENhcHR1cmUvQ29tcGFyZSAzIG91dHB1dCBlbmFibGUgKi8NCiNkZWZpbmUgVElNX0NDRVJfQ0MzUF9Qb3MgICAgICAgICAgICAgICAgICAgKDlVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVElNX0NDRVJfQ0MzUF9Nc2sgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVElNX0NDRVJfQ0MzUF9Qb3MpICAgICAgICAvKiE8IDB4MDAwMDAyMDAgKi8NCiNkZWZpbmUgVElNX0NDRVJfQ0MzUCAgICAgICAgICAgICAgICAgICAgICAgVElNX0NDRVJfQ0MzUF9Nc2sgICAgICAgICAgICAgICAgICAvKiE8Q2FwdHVyZS9Db21wYXJlIDMgb3V0cHV0IFBvbGFyaXR5ICovDQojZGVmaW5lIFRJTV9DQ0VSX0NDM05QX1BvcyAgICAgICAgICAgICAgICAgICgxMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFRJTV9DQ0VSX0NDM05QX01zayAgICAgICAgICAgICAgICAgICgweDFVIDw8IFRJTV9DQ0VSX0NDM05QX1BvcykgICAgICAgLyohPCAweDAwMDAwODAwICovDQojZGVmaW5lIFRJTV9DQ0VSX0NDM05QICAgICAgICAgICAgICAgICAgICAgIFRJTV9DQ0VSX0NDM05QX01zayAgICAgICAgICAgICAgICAgLyohPENhcHR1cmUvQ29tcGFyZSAzIENvbXBsZW1lbnRhcnkgb3V0cHV0IFBvbGFyaXR5ICovDQojZGVmaW5lIFRJTV9DQ0VSX0NDNEVfUG9zICAgICAgICAgICAgICAgICAgICgxMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFRJTV9DQ0VSX0NDNEVfTXNrICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFRJTV9DQ0VSX0NDNEVfUG9zKSAgICAgICAgLyohPCAweDAwMDAxMDAwICovDQojZGVmaW5lIFRJTV9DQ0VSX0NDNEUgICAgICAgICAgICAgICAgICAgICAgIFRJTV9DQ0VSX0NDNEVfTXNrICAgICAgICAgICAgICAgICAgLyohPENhcHR1cmUvQ29tcGFyZSA0IG91dHB1dCBlbmFibGUgKi8NCiNkZWZpbmUgVElNX0NDRVJfQ0M0UF9Qb3MgICAgICAgICAgICAgICAgICAgKDEzVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVElNX0NDRVJfQ0M0UF9Nc2sgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVElNX0NDRVJfQ0M0UF9Qb3MpICAgICAgICAvKiE8IDB4MDAwMDIwMDAgKi8NCiNkZWZpbmUgVElNX0NDRVJfQ0M0UCAgICAgICAgICAgICAgICAgICAgICAgVElNX0NDRVJfQ0M0UF9Nc2sgICAgICAgICAgICAgICAgICAvKiE8Q2FwdHVyZS9Db21wYXJlIDQgb3V0cHV0IFBvbGFyaXR5ICovDQojZGVmaW5lIFRJTV9DQ0VSX0NDNE5QX1BvcyAgICAgICAgICAgICAgICAgICgxNVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFRJTV9DQ0VSX0NDNE5QX01zayAgICAgICAgICAgICAgICAgICgweDFVIDw8IFRJTV9DQ0VSX0NDNE5QX1BvcykgICAgICAgLyohPCAweDAwMDA4MDAwICovDQojZGVmaW5lIFRJTV9DQ0VSX0NDNE5QICAgICAgICAgICAgICAgICAgICAgIFRJTV9DQ0VSX0NDNE5QX01zayAgICAgICAgICAgICAgICAgLyohPENhcHR1cmUvQ29tcGFyZSA0IENvbXBsZW1lbnRhcnkgb3V0cHV0IFBvbGFyaXR5ICovDQoNCi8qKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgVElNX0NOVCByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIFRJTV9DTlRfQ05UX1BvcyAgICAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFRJTV9DTlRfQ05UX01zayAgICAgICAgICAgICAgICAgICAgICgweEZGRkZGRkZGVSA8PCBUSU1fQ05UX0NOVF9Qb3MpICAgLyohPCAweEZGRkZGRkZGICovDQojZGVmaW5lIFRJTV9DTlRfQ05UICAgICAgICAgICAgICAgICAgICAgICAgIFRJTV9DTlRfQ05UX01zayAgICAgICAgICAgICAgICAgICAgLyohPENvdW50ZXIgVmFsdWUgKi8NCg0KLyoqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBUSU1fUFNDIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgVElNX1BTQ19QU0NfUG9zICAgICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVElNX1BTQ19QU0NfTXNrICAgICAgICAgICAgICAgICAgICAgKDB4RkZGRlUgPDwgVElNX1BTQ19QU0NfUG9zKSAgICAgICAvKiE8IDB4MDAwMEZGRkYgKi8NCiNkZWZpbmUgVElNX1BTQ19QU0MgICAgICAgICAgICAgICAgICAgICAgICAgVElNX1BTQ19QU0NfTXNrICAgICAgICAgICAgICAgICAgICAvKiE8UHJlc2NhbGVyIFZhbHVlICovDQoNCi8qKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgVElNX0FSUiByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIFRJTV9BUlJfQVJSX1BvcyAgICAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFRJTV9BUlJfQVJSX01zayAgICAgICAgICAgICAgICAgICAgICgweEZGRkZGRkZGVSA8PCBUSU1fQVJSX0FSUl9Qb3MpICAgLyohPCAweEZGRkZGRkZGICovDQojZGVmaW5lIFRJTV9BUlJfQVJSICAgICAgICAgICAgICAgICAgICAgICAgIFRJTV9BUlJfQVJSX01zayAgICAgICAgICAgICAgICAgICAgLyohPGFjdHVhbCBhdXRvLXJlbG9hZCBWYWx1ZSAqLw0KICAgICAgICAgICANCi8qKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgVElNX0NDUjEgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIFRJTV9DQ1IxX0NDUjFfUG9zICAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFRJTV9DQ1IxX0NDUjFfTXNrICAgICAgICAgICAgICAgICAgICgweEZGRkZVIDw8IFRJTV9DQ1IxX0NDUjFfUG9zKSAgICAgLyohPCAweDAwMDBGRkZGICovDQojZGVmaW5lIFRJTV9DQ1IxX0NDUjEgICAgICAgICAgICAgICAgICAgICAgIFRJTV9DQ1IxX0NDUjFfTXNrICAgICAgICAgICAgICAgICAgLyohPENhcHR1cmUvQ29tcGFyZSAxIFZhbHVlICovDQoNCi8qKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgVElNX0NDUjIgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIFRJTV9DQ1IyX0NDUjJfUG9zICAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFRJTV9DQ1IyX0NDUjJfTXNrICAgICAgICAgICAgICAgICAgICgweEZGRkZVIDw8IFRJTV9DQ1IyX0NDUjJfUG9zKSAgICAgLyohPCAweDAwMDBGRkZGICovDQojZGVmaW5lIFRJTV9DQ1IyX0NDUjIgICAgICAgICAgICAgICAgICAgICAgIFRJTV9DQ1IyX0NDUjJfTXNrICAgICAgICAgICAgICAgICAgLyohPENhcHR1cmUvQ29tcGFyZSAyIFZhbHVlICovDQoNCi8qKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgVElNX0NDUjMgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIFRJTV9DQ1IzX0NDUjNfUG9zICAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFRJTV9DQ1IzX0NDUjNfTXNrICAgICAgICAgICAgICAgICAgICgweEZGRkZVIDw8IFRJTV9DQ1IzX0NDUjNfUG9zKSAgICAgLyohPCAweDAwMDBGRkZGICovDQojZGVmaW5lIFRJTV9DQ1IzX0NDUjMgICAgICAgICAgICAgICAgICAgICAgIFRJTV9DQ1IzX0NDUjNfTXNrICAgICAgICAgICAgICAgICAgLyohPENhcHR1cmUvQ29tcGFyZSAzIFZhbHVlICovDQoNCi8qKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgVElNX0NDUjQgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIFRJTV9DQ1I0X0NDUjRfUG9zICAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFRJTV9DQ1I0X0NDUjRfTXNrICAgICAgICAgICAgICAgICAgICgweEZGRkZVIDw8IFRJTV9DQ1I0X0NDUjRfUG9zKSAgICAgLyohPCAweDAwMDBGRkZGICovDQojZGVmaW5lIFRJTV9DQ1I0X0NDUjQgICAgICAgICAgICAgICAgICAgICAgIFRJTV9DQ1I0X0NDUjRfTXNrICAgICAgICAgICAgICAgICAgLyohPENhcHR1cmUvQ29tcGFyZSA0IFZhbHVlICovDQoNCi8qKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgVElNX0RDUiByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIFRJTV9EQ1JfREJBX1BvcyAgICAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFRJTV9EQ1JfREJBX01zayAgICAgICAgICAgICAgICAgICAgICgweDFGVSA8PCBUSU1fRENSX0RCQV9Qb3MpICAgICAgICAgLyohPCAweDAwMDAwMDFGICovDQojZGVmaW5lIFRJTV9EQ1JfREJBICAgICAgICAgICAgICAgICAgICAgICAgIFRJTV9EQ1JfREJBX01zayAgICAgICAgICAgICAgICAgICAgLyohPERCQVs0OjBdIGJpdHMgKERNQSBCYXNlIEFkZHJlc3MpICovDQojZGVmaW5lIFRJTV9EQ1JfREJBXzAgICAgICAgICAgICAgICAgICAgICAgICgweDAxVSA8PCBUSU1fRENSX0RCQV9Qb3MpICAgICAgICAgLyohPCAweDAwMDAwMDAxICovDQojZGVmaW5lIFRJTV9EQ1JfREJBXzEgICAgICAgICAgICAgICAgICAgICAgICgweDAyVSA8PCBUSU1fRENSX0RCQV9Qb3MpICAgICAgICAgLyohPCAweDAwMDAwMDAyICovDQojZGVmaW5lIFRJTV9EQ1JfREJBXzIgICAgICAgICAgICAgICAgICAgICAgICgweDA0VSA8PCBUSU1fRENSX0RCQV9Qb3MpICAgICAgICAgLyohPCAweDAwMDAwMDA0ICovDQojZGVmaW5lIFRJTV9EQ1JfREJBXzMgICAgICAgICAgICAgICAgICAgICAgICgweDA4VSA8PCBUSU1fRENSX0RCQV9Qb3MpICAgICAgICAgLyohPCAweDAwMDAwMDA4ICovDQojZGVmaW5lIFRJTV9EQ1JfREJBXzQgICAgICAgICAgICAgICAgICAgICAgICgweDEwVSA8PCBUSU1fRENSX0RCQV9Qb3MpICAgICAgICAgLyohPCAweDAwMDAwMDEwICovDQoNCiNkZWZpbmUgVElNX0RDUl9EQkxfUG9zICAgICAgICAgICAgICAgICAgICAgKDhVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVElNX0RDUl9EQkxfTXNrICAgICAgICAgICAgICAgICAgICAgKDB4MUZVIDw8IFRJTV9EQ1JfREJMX1BvcykgICAgICAgICAvKiE8IDB4MDAwMDFGMDAgKi8NCiNkZWZpbmUgVElNX0RDUl9EQkwgICAgICAgICAgICAgICAgICAgICAgICAgVElNX0RDUl9EQkxfTXNrICAgICAgICAgICAgICAgICAgICAvKiE8REJMWzQ6MF0gYml0cyAoRE1BIEJ1cnN0IExlbmd0aCkgKi8NCiNkZWZpbmUgVElNX0RDUl9EQkxfMCAgICAgICAgICAgICAgICAgICAgICAgKDB4MDFVIDw8IFRJTV9EQ1JfREJMX1BvcykgICAgICAgICAvKiE8IDB4MDAwMDAxMDAgKi8NCiNkZWZpbmUgVElNX0RDUl9EQkxfMSAgICAgICAgICAgICAgICAgICAgICAgKDB4MDJVIDw8IFRJTV9EQ1JfREJMX1BvcykgICAgICAgICAvKiE8IDB4MDAwMDAyMDAgKi8NCiNkZWZpbmUgVElNX0RDUl9EQkxfMiAgICAgICAgICAgICAgICAgICAgICAgKDB4MDRVIDw8IFRJTV9EQ1JfREJMX1BvcykgICAgICAgICAvKiE8IDB4MDAwMDA0MDAgKi8NCiNkZWZpbmUgVElNX0RDUl9EQkxfMyAgICAgICAgICAgICAgICAgICAgICAgKDB4MDhVIDw8IFRJTV9EQ1JfREJMX1BvcykgICAgICAgICAvKiE8IDB4MDAwMDA4MDAgKi8NCiNkZWZpbmUgVElNX0RDUl9EQkxfNCAgICAgICAgICAgICAgICAgICAgICAgKDB4MTBVIDw8IFRJTV9EQ1JfREJMX1BvcykgICAgICAgICAvKiE8IDB4MDAwMDEwMDAgKi8NCg0KLyoqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBUSU1fRE1BUiByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgVElNX0RNQVJfRE1BQl9Qb3MgICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVElNX0RNQVJfRE1BQl9Nc2sgICAgICAgICAgICAgICAgICAgKDB4RkZGRlUgPDwgVElNX0RNQVJfRE1BQl9Qb3MpICAgICAvKiE8IDB4MDAwMEZGRkYgKi8NCiNkZWZpbmUgVElNX0RNQVJfRE1BQiAgICAgICAgICAgICAgICAgICAgICAgVElNX0RNQVJfRE1BQl9Nc2sgICAgICAgICAgICAgICAgICAvKiE8RE1BIHJlZ2lzdGVyIGZvciBidXJzdCBhY2Nlc3NlcyAqLw0KDQovKioqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFRJTV9PUiByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBUSU1fT1JfVEkxUk1QX1BvcyAgICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBUSU1fT1JfVEkxUk1QX01zayAgICAgICAgICAgICAgICAgICAoMHgzVSA8PCBUSU1fT1JfVEkxUk1QX1BvcykgICAgICAgIC8qITwgMHgwMDAwMDAwMyAqLw0KI2RlZmluZSBUSU1fT1JfVEkxUk1QICAgICAgICAgICAgICAgICAgICAgICBUSU1fT1JfVEkxUk1QX01zayAgICAgICAgICAgICAgICAgIC8qITxUSTFfUk1QWzE6MF0gYml0cyAoVElNIElucHV0IDEgcmVtYXApICovDQojZGVmaW5lIFRJTV9PUl9USTFSTVBfMCAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFRJTV9PUl9USTFSTVBfUG9zKSAgICAgICAgLyohPCAweDAwMDAwMDAxICovDQojZGVmaW5lIFRJTV9PUl9USTFSTVBfMSAgICAgICAgICAgICAgICAgICAgICgweDJVIDw8IFRJTV9PUl9USTFSTVBfUG9zKSAgICAgICAgLyohPCAweDAwMDAwMDAyICovDQoNCiNkZWZpbmUgVElNX09SX0VUUl9STVBfUG9zICAgICAgICAgICAgICAgICAgKDJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVElNX09SX0VUUl9STVBfTXNrICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVElNX09SX0VUUl9STVBfUG9zKSAgICAgICAvKiE8IDB4MDAwMDAwMDQgKi8NCiNkZWZpbmUgVElNX09SX0VUUl9STVAgICAgICAgICAgICAgICAgICAgICAgVElNX09SX0VUUl9STVBfTXNrICAgICAgICAgICAgICAgICAvKiE8RVRSX1JNUCBiaXQgKFRJTTEwLzExIEVUUiByZW1hcCkqLw0KI2RlZmluZSBUSU1fT1JfVEkxX1JNUF9SSV9Qb3MgICAgICAgICAgICAgICAoM1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBUSU1fT1JfVEkxX1JNUF9SSV9Nc2sgICAgICAgICAgICAgICAoMHgxVSA8PCBUSU1fT1JfVEkxX1JNUF9SSV9Qb3MpICAgIC8qITwgMHgwMDAwMDAwOCAqLw0KI2RlZmluZSBUSU1fT1JfVEkxX1JNUF9SSSAgICAgICAgICAgICAgICAgICBUSU1fT1JfVEkxX1JNUF9SSV9Nc2sgICAgICAgICAgICAgIC8qITxUSTFfUk1QX1JJIGJpdCAoVElNMTAvMTEgSW5wdXQgMSByZW1hcCBmb3IgUm91dGluZyBpbnRlcmZhY2UpICovDQoNCi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovDQojZGVmaW5lIFRJTTlfT1JfSVRSMV9STVBfUG9zICAgICAgICAgICAgICAgICgyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFRJTTlfT1JfSVRSMV9STVBfTXNrICAgICAgICAgICAgICAgICgweDFVIDw8IFRJTTlfT1JfSVRSMV9STVBfUG9zKSAgICAgLyohPCAweDAwMDAwMDA0ICovDQojZGVmaW5lIFRJTTlfT1JfSVRSMV9STVAgICAgICAgICAgICAgICAgICAgIFRJTTlfT1JfSVRSMV9STVBfTXNrICAgICAgICAgICAgICAgLyohPElUUjFfUk1QIGJpdCAoVElNOSBJbnRlcm5hbCB0cmlnZ2VyIDEgcmVtYXApICovDQoNCi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovDQojZGVmaW5lIFRJTTJfT1JfSVRSMV9STVBfUG9zICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFRJTTJfT1JfSVRSMV9STVBfTXNrICAgICAgICAgICAgICAgICgweDFVIDw8IFRJTTJfT1JfSVRSMV9STVBfUG9zKSAgICAgLyohPCAweDAwMDAwMDAxICovDQojZGVmaW5lIFRJTTJfT1JfSVRSMV9STVAgICAgICAgICAgICAgICAgICAgIFRJTTJfT1JfSVRSMV9STVBfTXNrICAgICAgICAgICAgICAgLyohPElUUjFfUk1QIGJpdCAoVElNMiBJbnRlcm5hbCB0cmlnZ2VyIDEgcmVtYXApICovDQoNCi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovDQojZGVmaW5lIFRJTTNfT1JfSVRSMl9STVBfUG9zICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFRJTTNfT1JfSVRSMl9STVBfTXNrICAgICAgICAgICAgICAgICgweDFVIDw8IFRJTTNfT1JfSVRSMl9STVBfUG9zKSAgICAgLyohPCAweDAwMDAwMDAxICovDQojZGVmaW5lIFRJTTNfT1JfSVRSMl9STVAgICAgICAgICAgICAgICAgICAgIFRJTTNfT1JfSVRSMl9STVBfTXNrICAgICAgICAgICAgICAgLyohPElUUjJfUk1QIGJpdCAoVElNMyBJbnRlcm5hbCB0cmlnZ2VyIDIgcmVtYXApICovDQoNCi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovDQoNCi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovDQovKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLw0KLyogICAgICBVbml2ZXJzYWwgU3luY2hyb25vdXMgQXN5bmNocm9ub3VzIFJlY2VpdmVyIFRyYW5zbWl0dGVyIChVU0FSVCkgICAgICAgKi8NCi8qICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovDQovKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLw0KDQovKioqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFVTQVJUX1NSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBVU0FSVF9TUl9QRV9Qb3MgICAgICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0FSVF9TUl9QRV9Nc2sgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBVU0FSVF9TUl9QRV9Qb3MpICAgICAgICAgIC8qITwgMHgwMDAwMDAwMSAqLw0KI2RlZmluZSBVU0FSVF9TUl9QRSAgICAgICAgICAgICAgICAgICAgICAgICBVU0FSVF9TUl9QRV9Nc2sgICAgICAgICAgICAgICAgICAgIC8qITwgUGFyaXR5IEVycm9yICovDQojZGVmaW5lIFVTQVJUX1NSX0ZFX1BvcyAgICAgICAgICAgICAgICAgICAgICgxVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQVJUX1NSX0ZFX01zayAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFVTQVJUX1NSX0ZFX1BvcykgICAgICAgICAgLyohPCAweDAwMDAwMDAyICovDQojZGVmaW5lIFVTQVJUX1NSX0ZFICAgICAgICAgICAgICAgICAgICAgICAgIFVTQVJUX1NSX0ZFX01zayAgICAgICAgICAgICAgICAgICAgLyohPCBGcmFtaW5nIEVycm9yICovDQojZGVmaW5lIFVTQVJUX1NSX05FX1BvcyAgICAgICAgICAgICAgICAgICAgICgyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQVJUX1NSX05FX01zayAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFVTQVJUX1NSX05FX1BvcykgICAgICAgICAgLyohPCAweDAwMDAwMDA0ICovDQojZGVmaW5lIFVTQVJUX1NSX05FICAgICAgICAgICAgICAgICAgICAgICAgIFVTQVJUX1NSX05FX01zayAgICAgICAgICAgICAgICAgICAgLyohPCBOb2lzZSBFcnJvciBGbGFnICovDQojZGVmaW5lIFVTQVJUX1NSX09SRV9Qb3MgICAgICAgICAgICAgICAgICAgICgzVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQVJUX1NSX09SRV9Nc2sgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFVTQVJUX1NSX09SRV9Qb3MpICAgICAgICAgLyohPCAweDAwMDAwMDA4ICovDQojZGVmaW5lIFVTQVJUX1NSX09SRSAgICAgICAgICAgICAgICAgICAgICAgIFVTQVJUX1NSX09SRV9Nc2sgICAgICAgICAgICAgICAgICAgLyohPCBPdmVyUnVuIEVycm9yICovDQojZGVmaW5lIFVTQVJUX1NSX0lETEVfUG9zICAgICAgICAgICAgICAgICAgICg0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQVJUX1NSX0lETEVfTXNrICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFVTQVJUX1NSX0lETEVfUG9zKSAgICAgICAgLyohPCAweDAwMDAwMDEwICovDQojZGVmaW5lIFVTQVJUX1NSX0lETEUgICAgICAgICAgICAgICAgICAgICAgIFVTQVJUX1NSX0lETEVfTXNrICAgICAgICAgICAgICAgICAgLyohPCBJRExFIGxpbmUgZGV0ZWN0ZWQgKi8NCiNkZWZpbmUgVVNBUlRfU1JfUlhORV9Qb3MgICAgICAgICAgICAgICAgICAgKDVVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNBUlRfU1JfUlhORV9Nc2sgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVVNBUlRfU1JfUlhORV9Qb3MpICAgICAgICAvKiE8IDB4MDAwMDAwMjAgKi8NCiNkZWZpbmUgVVNBUlRfU1JfUlhORSAgICAgICAgICAgICAgICAgICAgICAgVVNBUlRfU1JfUlhORV9Nc2sgICAgICAgICAgICAgICAgICAvKiE8IFJlYWQgRGF0YSBSZWdpc3RlciBOb3QgRW1wdHkgKi8NCiNkZWZpbmUgVVNBUlRfU1JfVENfUG9zICAgICAgICAgICAgICAgICAgICAgKDZVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNBUlRfU1JfVENfTXNrICAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVVNBUlRfU1JfVENfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDAwNDAgKi8NCiNkZWZpbmUgVVNBUlRfU1JfVEMgICAgICAgICAgICAgICAgICAgICAgICAgVVNBUlRfU1JfVENfTXNrICAgICAgICAgICAgICAgICAgICAvKiE8IFRyYW5zbWlzc2lvbiBDb21wbGV0ZSAqLw0KI2RlZmluZSBVU0FSVF9TUl9UWEVfUG9zICAgICAgICAgICAgICAgICAgICAoN1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0FSVF9TUl9UWEVfTXNrICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBVU0FSVF9TUl9UWEVfUG9zKSAgICAgICAgIC8qITwgMHgwMDAwMDA4MCAqLw0KI2RlZmluZSBVU0FSVF9TUl9UWEUgICAgICAgICAgICAgICAgICAgICAgICBVU0FSVF9TUl9UWEVfTXNrICAgICAgICAgICAgICAgICAgIC8qITwgVHJhbnNtaXQgRGF0YSBSZWdpc3RlciBFbXB0eSAqLw0KI2RlZmluZSBVU0FSVF9TUl9MQkRfUG9zICAgICAgICAgICAgICAgICAgICAoOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0FSVF9TUl9MQkRfTXNrICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBVU0FSVF9TUl9MQkRfUG9zKSAgICAgICAgIC8qITwgMHgwMDAwMDEwMCAqLw0KI2RlZmluZSBVU0FSVF9TUl9MQkQgICAgICAgICAgICAgICAgICAgICAgICBVU0FSVF9TUl9MQkRfTXNrICAgICAgICAgICAgICAgICAgIC8qITwgTElOIEJyZWFrIERldGVjdGlvbiBGbGFnICovDQojZGVmaW5lIFVTQVJUX1NSX0NUU19Qb3MgICAgICAgICAgICAgICAgICAgICg5VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQVJUX1NSX0NUU19Nc2sgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFVTQVJUX1NSX0NUU19Qb3MpICAgICAgICAgLyohPCAweDAwMDAwMjAwICovDQojZGVmaW5lIFVTQVJUX1NSX0NUUyAgICAgICAgICAgICAgICAgICAgICAgIFVTQVJUX1NSX0NUU19Nc2sgICAgICAgICAgICAgICAgICAgLyohPCBDVFMgRmxhZyAqLw0KDQovKioqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFVTQVJUX0RSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBVU0FSVF9EUl9EUl9Qb3MgICAgICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0FSVF9EUl9EUl9Nc2sgICAgICAgICAgICAgICAgICAgICAoMHgxRkZVIDw8IFVTQVJUX0RSX0RSX1BvcykgICAgICAgIC8qITwgMHgwMDAwMDFGRiAqLw0KI2RlZmluZSBVU0FSVF9EUl9EUiAgICAgICAgICAgICAgICAgICAgICAgICBVU0FSVF9EUl9EUl9Nc2sgICAgICAgICAgICAgICAgICAgIC8qITwgRGF0YSB2YWx1ZSAqLw0KDQovKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgVVNBUlRfQlJSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBVU0FSVF9CUlJfRElWX0ZSQUNUSU9OX1BvcyAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0FSVF9CUlJfRElWX0ZSQUNUSU9OX01zayAgICAgICAgICAoMHhGVSA8PCBVU0FSVF9CUlJfRElWX0ZSQUNUSU9OX1BvcykgLyohPCAweDAwMDAwMDBGICovDQojZGVmaW5lIFVTQVJUX0JSUl9ESVZfRlJBQ1RJT04gICAgICAgICAgICAgIFVTQVJUX0JSUl9ESVZfRlJBQ1RJT05fTXNrICAgICAgICAgLyohPCBGcmFjdGlvbiBvZiBVU0FSVERJViAqLw0KI2RlZmluZSBVU0FSVF9CUlJfRElWX01BTlRJU1NBX1BvcyAgICAgICAgICAoNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0FSVF9CUlJfRElWX01BTlRJU1NBX01zayAgICAgICAgICAoMHhGRkZVIDw8IFVTQVJUX0JSUl9ESVZfTUFOVElTU0FfUG9zKSAvKiE8IDB4MDAwMEZGRjAgKi8NCiNkZWZpbmUgVVNBUlRfQlJSX0RJVl9NQU5USVNTQSAgICAgICAgICAgICAgVVNBUlRfQlJSX0RJVl9NQU5USVNTQV9Nc2sgICAgICAgICAvKiE8IE1hbnRpc3NhIG9mIFVTQVJURElWICovDQoNCi8qKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBVU0FSVF9DUjEgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIFVTQVJUX0NSMV9TQktfUG9zICAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQVJUX0NSMV9TQktfTXNrICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFVTQVJUX0NSMV9TQktfUG9zKSAgICAgICAgLyohPCAweDAwMDAwMDAxICovDQojZGVmaW5lIFVTQVJUX0NSMV9TQksgICAgICAgICAgICAgICAgICAgICAgIFVTQVJUX0NSMV9TQktfTXNrICAgICAgICAgICAgICAgICAgLyohPCBTZW5kIEJyZWFrICovDQojZGVmaW5lIFVTQVJUX0NSMV9SV1VfUG9zICAgICAgICAgICAgICAgICAgICgxVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQVJUX0NSMV9SV1VfTXNrICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFVTQVJUX0NSMV9SV1VfUG9zKSAgICAgICAgLyohPCAweDAwMDAwMDAyICovDQojZGVmaW5lIFVTQVJUX0NSMV9SV1UgICAgICAgICAgICAgICAgICAgICAgIFVTQVJUX0NSMV9SV1VfTXNrICAgICAgICAgICAgICAgICAgLyohPCBSZWNlaXZlciB3YWtldXAgKi8NCiNkZWZpbmUgVVNBUlRfQ1IxX1JFX1BvcyAgICAgICAgICAgICAgICAgICAgKDJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNBUlRfQ1IxX1JFX01zayAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVVNBUlRfQ1IxX1JFX1BvcykgICAgICAgICAvKiE8IDB4MDAwMDAwMDQgKi8NCiNkZWZpbmUgVVNBUlRfQ1IxX1JFICAgICAgICAgICAgICAgICAgICAgICAgVVNBUlRfQ1IxX1JFX01zayAgICAgICAgICAgICAgICAgICAvKiE8IFJlY2VpdmVyIEVuYWJsZSAqLw0KI2RlZmluZSBVU0FSVF9DUjFfVEVfUG9zICAgICAgICAgICAgICAgICAgICAoM1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0FSVF9DUjFfVEVfTXNrICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBVU0FSVF9DUjFfVEVfUG9zKSAgICAgICAgIC8qITwgMHgwMDAwMDAwOCAqLw0KI2RlZmluZSBVU0FSVF9DUjFfVEUgICAgICAgICAgICAgICAgICAgICAgICBVU0FSVF9DUjFfVEVfTXNrICAgICAgICAgICAgICAgICAgIC8qITwgVHJhbnNtaXR0ZXIgRW5hYmxlICovDQojZGVmaW5lIFVTQVJUX0NSMV9JRExFSUVfUG9zICAgICAgICAgICAgICAgICg0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQVJUX0NSMV9JRExFSUVfTXNrICAgICAgICAgICAgICAgICgweDFVIDw8IFVTQVJUX0NSMV9JRExFSUVfUG9zKSAgICAgLyohPCAweDAwMDAwMDEwICovDQojZGVmaW5lIFVTQVJUX0NSMV9JRExFSUUgICAgICAgICAgICAgICAgICAgIFVTQVJUX0NSMV9JRExFSUVfTXNrICAgICAgICAgICAgICAgLyohPCBJRExFIEludGVycnVwdCBFbmFibGUgKi8NCiNkZWZpbmUgVVNBUlRfQ1IxX1JYTkVJRV9Qb3MgICAgICAgICAgICAgICAgKDVVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNBUlRfQ1IxX1JYTkVJRV9Nc2sgICAgICAgICAgICAgICAgKDB4MVUgPDwgVVNBUlRfQ1IxX1JYTkVJRV9Qb3MpICAgICAvKiE8IDB4MDAwMDAwMjAgKi8NCiNkZWZpbmUgVVNBUlRfQ1IxX1JYTkVJRSAgICAgICAgICAgICAgICAgICAgVVNBUlRfQ1IxX1JYTkVJRV9Nc2sgICAgICAgICAgICAgICAvKiE8IFJYTkUgSW50ZXJydXB0IEVuYWJsZSAqLw0KI2RlZmluZSBVU0FSVF9DUjFfVENJRV9Qb3MgICAgICAgICAgICAgICAgICAoNlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0FSVF9DUjFfVENJRV9Nc2sgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBVU0FSVF9DUjFfVENJRV9Qb3MpICAgICAgIC8qITwgMHgwMDAwMDA0MCAqLw0KI2RlZmluZSBVU0FSVF9DUjFfVENJRSAgICAgICAgICAgICAgICAgICAgICBVU0FSVF9DUjFfVENJRV9Nc2sgICAgICAgICAgICAgICAgIC8qITwgVHJhbnNtaXNzaW9uIENvbXBsZXRlIEludGVycnVwdCBFbmFibGUgKi8NCiNkZWZpbmUgVVNBUlRfQ1IxX1RYRUlFX1BvcyAgICAgICAgICAgICAgICAgKDdVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNBUlRfQ1IxX1RYRUlFX01zayAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVVNBUlRfQ1IxX1RYRUlFX1BvcykgICAgICAvKiE8IDB4MDAwMDAwODAgKi8NCiNkZWZpbmUgVVNBUlRfQ1IxX1RYRUlFICAgICAgICAgICAgICAgICAgICAgVVNBUlRfQ1IxX1RYRUlFX01zayAgICAgICAgICAgICAgICAvKiE8IFBFIEludGVycnVwdCBFbmFibGUgKi8NCiNkZWZpbmUgVVNBUlRfQ1IxX1BFSUVfUG9zICAgICAgICAgICAgICAgICAgKDhVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNBUlRfQ1IxX1BFSUVfTXNrICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVVNBUlRfQ1IxX1BFSUVfUG9zKSAgICAgICAvKiE8IDB4MDAwMDAxMDAgKi8NCiNkZWZpbmUgVVNBUlRfQ1IxX1BFSUUgICAgICAgICAgICAgICAgICAgICAgVVNBUlRfQ1IxX1BFSUVfTXNrICAgICAgICAgICAgICAgICAvKiE8IFBFIEludGVycnVwdCBFbmFibGUgKi8NCiNkZWZpbmUgVVNBUlRfQ1IxX1BTX1BvcyAgICAgICAgICAgICAgICAgICAgKDlVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNBUlRfQ1IxX1BTX01zayAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVVNBUlRfQ1IxX1BTX1BvcykgICAgICAgICAvKiE8IDB4MDAwMDAyMDAgKi8NCiNkZWZpbmUgVVNBUlRfQ1IxX1BTICAgICAgICAgICAgICAgICAgICAgICAgVVNBUlRfQ1IxX1BTX01zayAgICAgICAgICAgICAgICAgICAvKiE8IFBhcml0eSBTZWxlY3Rpb24gKi8NCiNkZWZpbmUgVVNBUlRfQ1IxX1BDRV9Qb3MgICAgICAgICAgICAgICAgICAgKDEwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNBUlRfQ1IxX1BDRV9Nc2sgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVVNBUlRfQ1IxX1BDRV9Qb3MpICAgICAgICAvKiE8IDB4MDAwMDA0MDAgKi8NCiNkZWZpbmUgVVNBUlRfQ1IxX1BDRSAgICAgICAgICAgICAgICAgICAgICAgVVNBUlRfQ1IxX1BDRV9Nc2sgICAgICAgICAgICAgICAgICAvKiE8IFBhcml0eSBDb250cm9sIEVuYWJsZSAqLw0KI2RlZmluZSBVU0FSVF9DUjFfV0FLRV9Qb3MgICAgICAgICAgICAgICAgICAoMTFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0FSVF9DUjFfV0FLRV9Nc2sgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBVU0FSVF9DUjFfV0FLRV9Qb3MpICAgICAgIC8qITwgMHgwMDAwMDgwMCAqLw0KI2RlZmluZSBVU0FSVF9DUjFfV0FLRSAgICAgICAgICAgICAgICAgICAgICBVU0FSVF9DUjFfV0FLRV9Nc2sgICAgICAgICAgICAgICAgIC8qITwgV2FrZXVwIG1ldGhvZCAqLw0KI2RlZmluZSBVU0FSVF9DUjFfTV9Qb3MgICAgICAgICAgICAgICAgICAgICAoMTJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0FSVF9DUjFfTV9Nc2sgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBVU0FSVF9DUjFfTV9Qb3MpICAgICAgICAgIC8qITwgMHgwMDAwMTAwMCAqLw0KI2RlZmluZSBVU0FSVF9DUjFfTSAgICAgICAgICAgICAgICAgICAgICAgICBVU0FSVF9DUjFfTV9Nc2sgICAgICAgICAgICAgICAgICAgIC8qITwgV29yZCBsZW5ndGggKi8NCiNkZWZpbmUgVVNBUlRfQ1IxX1VFX1BvcyAgICAgICAgICAgICAgICAgICAgKDEzVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNBUlRfQ1IxX1VFX01zayAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVVNBUlRfQ1IxX1VFX1BvcykgICAgICAgICAvKiE8IDB4MDAwMDIwMDAgKi8NCiNkZWZpbmUgVVNBUlRfQ1IxX1VFICAgICAgICAgICAgICAgICAgICAgICAgVVNBUlRfQ1IxX1VFX01zayAgICAgICAgICAgICAgICAgICAvKiE8IFVTQVJUIEVuYWJsZSAqLw0KI2RlZmluZSBVU0FSVF9DUjFfT1ZFUjhfUG9zICAgICAgICAgICAgICAgICAoMTVVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0FSVF9DUjFfT1ZFUjhfTXNrICAgICAgICAgICAgICAgICAoMHgxVSA8PCBVU0FSVF9DUjFfT1ZFUjhfUG9zKSAgICAgIC8qITwgMHgwMDAwODAwMCAqLw0KI2RlZmluZSBVU0FSVF9DUjFfT1ZFUjggICAgICAgICAgICAgICAgICAgICBVU0FSVF9DUjFfT1ZFUjhfTXNrICAgICAgICAgICAgICAgIC8qITwgT3ZlcnNhbXBsaW5nIGJ5IDgtYml0IG1vZGUgKi8NCg0KLyoqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFVTQVJUX0NSMiByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgVVNBUlRfQ1IyX0FERF9Qb3MgICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNBUlRfQ1IyX0FERF9Nc2sgICAgICAgICAgICAgICAgICAgKDB4RlUgPDwgVVNBUlRfQ1IyX0FERF9Qb3MpICAgICAgICAvKiE8IDB4MDAwMDAwMEYgKi8NCiNkZWZpbmUgVVNBUlRfQ1IyX0FERCAgICAgICAgICAgICAgICAgICAgICAgVVNBUlRfQ1IyX0FERF9Nc2sgICAgICAgICAgICAgICAgICAvKiE8IEFkZHJlc3Mgb2YgdGhlIFVTQVJUIG5vZGUgKi8NCiNkZWZpbmUgVVNBUlRfQ1IyX0xCRExfUG9zICAgICAgICAgICAgICAgICAgKDVVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNBUlRfQ1IyX0xCRExfTXNrICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVVNBUlRfQ1IyX0xCRExfUG9zKSAgICAgICAvKiE8IDB4MDAwMDAwMjAgKi8NCiNkZWZpbmUgVVNBUlRfQ1IyX0xCREwgICAgICAgICAgICAgICAgICAgICAgVVNBUlRfQ1IyX0xCRExfTXNrICAgICAgICAgICAgICAgICAvKiE8IExJTiBCcmVhayBEZXRlY3Rpb24gTGVuZ3RoICovDQojZGVmaW5lIFVTQVJUX0NSMl9MQkRJRV9Qb3MgICAgICAgICAgICAgICAgICg2VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQVJUX0NSMl9MQkRJRV9Nc2sgICAgICAgICAgICAgICAgICgweDFVIDw8IFVTQVJUX0NSMl9MQkRJRV9Qb3MpICAgICAgLyohPCAweDAwMDAwMDQwICovDQojZGVmaW5lIFVTQVJUX0NSMl9MQkRJRSAgICAgICAgICAgICAgICAgICAgIFVTQVJUX0NSMl9MQkRJRV9Nc2sgICAgICAgICAgICAgICAgLyohPCBMSU4gQnJlYWsgRGV0ZWN0aW9uIEludGVycnVwdCBFbmFibGUgKi8NCiNkZWZpbmUgVVNBUlRfQ1IyX0xCQ0xfUG9zICAgICAgICAgICAgICAgICAgKDhVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNBUlRfQ1IyX0xCQ0xfTXNrICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVVNBUlRfQ1IyX0xCQ0xfUG9zKSAgICAgICAvKiE8IDB4MDAwMDAxMDAgKi8NCiNkZWZpbmUgVVNBUlRfQ1IyX0xCQ0wgICAgICAgICAgICAgICAgICAgICAgVVNBUlRfQ1IyX0xCQ0xfTXNrICAgICAgICAgICAgICAgICAvKiE8IExhc3QgQml0IENsb2NrIHB1bHNlICovDQojZGVmaW5lIFVTQVJUX0NSMl9DUEhBX1BvcyAgICAgICAgICAgICAgICAgICg5VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQVJUX0NSMl9DUEhBX01zayAgICAgICAgICAgICAgICAgICgweDFVIDw8IFVTQVJUX0NSMl9DUEhBX1BvcykgICAgICAgLyohPCAweDAwMDAwMjAwICovDQojZGVmaW5lIFVTQVJUX0NSMl9DUEhBICAgICAgICAgICAgICAgICAgICAgIFVTQVJUX0NSMl9DUEhBX01zayAgICAgICAgICAgICAgICAgLyohPCBDbG9jayBQaGFzZSAqLw0KI2RlZmluZSBVU0FSVF9DUjJfQ1BPTF9Qb3MgICAgICAgICAgICAgICAgICAoMTBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0FSVF9DUjJfQ1BPTF9Nc2sgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBVU0FSVF9DUjJfQ1BPTF9Qb3MpICAgICAgIC8qITwgMHgwMDAwMDQwMCAqLw0KI2RlZmluZSBVU0FSVF9DUjJfQ1BPTCAgICAgICAgICAgICAgICAgICAgICBVU0FSVF9DUjJfQ1BPTF9Nc2sgICAgICAgICAgICAgICAgIC8qITwgQ2xvY2sgUG9sYXJpdHkgKi8NCiNkZWZpbmUgVVNBUlRfQ1IyX0NMS0VOX1BvcyAgICAgICAgICAgICAgICAgKDExVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNBUlRfQ1IyX0NMS0VOX01zayAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVVNBUlRfQ1IyX0NMS0VOX1BvcykgICAgICAvKiE8IDB4MDAwMDA4MDAgKi8NCiNkZWZpbmUgVVNBUlRfQ1IyX0NMS0VOICAgICAgICAgICAgICAgICAgICAgVVNBUlRfQ1IyX0NMS0VOX01zayAgICAgICAgICAgICAgICAvKiE8IENsb2NrIEVuYWJsZSAqLw0KDQojZGVmaW5lIFVTQVJUX0NSMl9TVE9QX1BvcyAgICAgICAgICAgICAgICAgICgxMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQVJUX0NSMl9TVE9QX01zayAgICAgICAgICAgICAgICAgICgweDNVIDw8IFVTQVJUX0NSMl9TVE9QX1BvcykgICAgICAgLyohPCAweDAwMDAzMDAwICovDQojZGVmaW5lIFVTQVJUX0NSMl9TVE9QICAgICAgICAgICAgICAgICAgICAgIFVTQVJUX0NSMl9TVE9QX01zayAgICAgICAgICAgICAgICAgLyohPCBTVE9QWzE6MF0gYml0cyAoU1RPUCBiaXRzKSAqLw0KI2RlZmluZSBVU0FSVF9DUjJfU1RPUF8wICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBVU0FSVF9DUjJfU1RPUF9Qb3MpICAgICAgIC8qITwgMHgwMDAwMTAwMCAqLw0KI2RlZmluZSBVU0FSVF9DUjJfU1RPUF8xICAgICAgICAgICAgICAgICAgICAoMHgyVSA8PCBVU0FSVF9DUjJfU1RPUF9Qb3MpICAgICAgIC8qITwgMHgwMDAwMjAwMCAqLw0KDQojZGVmaW5lIFVTQVJUX0NSMl9MSU5FTl9Qb3MgICAgICAgICAgICAgICAgICgxNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQVJUX0NSMl9MSU5FTl9Nc2sgICAgICAgICAgICAgICAgICgweDFVIDw8IFVTQVJUX0NSMl9MSU5FTl9Qb3MpICAgICAgLyohPCAweDAwMDA0MDAwICovDQojZGVmaW5lIFVTQVJUX0NSMl9MSU5FTiAgICAgICAgICAgICAgICAgICAgIFVTQVJUX0NSMl9MSU5FTl9Nc2sgICAgICAgICAgICAgICAgLyohPCBMSU4gbW9kZSBlbmFibGUgKi8NCg0KLyoqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFVTQVJUX0NSMyByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgVVNBUlRfQ1IzX0VJRV9Qb3MgICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNBUlRfQ1IzX0VJRV9Nc2sgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVVNBUlRfQ1IzX0VJRV9Qb3MpICAgICAgICAvKiE8IDB4MDAwMDAwMDEgKi8NCiNkZWZpbmUgVVNBUlRfQ1IzX0VJRSAgICAgICAgICAgICAgICAgICAgICAgVVNBUlRfQ1IzX0VJRV9Nc2sgICAgICAgICAgICAgICAgICAvKiE8IEVycm9yIEludGVycnVwdCBFbmFibGUgKi8NCiNkZWZpbmUgVVNBUlRfQ1IzX0lSRU5fUG9zICAgICAgICAgICAgICAgICAgKDFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNBUlRfQ1IzX0lSRU5fTXNrICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVVNBUlRfQ1IzX0lSRU5fUG9zKSAgICAgICAvKiE8IDB4MDAwMDAwMDIgKi8NCiNkZWZpbmUgVVNBUlRfQ1IzX0lSRU4gICAgICAgICAgICAgICAgICAgICAgVVNBUlRfQ1IzX0lSRU5fTXNrICAgICAgICAgICAgICAgICAvKiE8IElyREEgbW9kZSBFbmFibGUgKi8NCiNkZWZpbmUgVVNBUlRfQ1IzX0lSTFBfUG9zICAgICAgICAgICAgICAgICAgKDJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNBUlRfQ1IzX0lSTFBfTXNrICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVVNBUlRfQ1IzX0lSTFBfUG9zKSAgICAgICAvKiE8IDB4MDAwMDAwMDQgKi8NCiNkZWZpbmUgVVNBUlRfQ1IzX0lSTFAgICAgICAgICAgICAgICAgICAgICAgVVNBUlRfQ1IzX0lSTFBfTXNrICAgICAgICAgICAgICAgICAvKiE8IElyREEgTG93LVBvd2VyICovDQojZGVmaW5lIFVTQVJUX0NSM19IRFNFTF9Qb3MgICAgICAgICAgICAgICAgICgzVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQVJUX0NSM19IRFNFTF9Nc2sgICAgICAgICAgICAgICAgICgweDFVIDw8IFVTQVJUX0NSM19IRFNFTF9Qb3MpICAgICAgLyohPCAweDAwMDAwMDA4ICovDQojZGVmaW5lIFVTQVJUX0NSM19IRFNFTCAgICAgICAgICAgICAgICAgICAgIFVTQVJUX0NSM19IRFNFTF9Nc2sgICAgICAgICAgICAgICAgLyohPCBIYWxmLUR1cGxleCBTZWxlY3Rpb24gKi8NCiNkZWZpbmUgVVNBUlRfQ1IzX05BQ0tfUG9zICAgICAgICAgICAgICAgICAgKDRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNBUlRfQ1IzX05BQ0tfTXNrICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVVNBUlRfQ1IzX05BQ0tfUG9zKSAgICAgICAvKiE8IDB4MDAwMDAwMTAgKi8NCiNkZWZpbmUgVVNBUlRfQ1IzX05BQ0sgICAgICAgICAgICAgICAgICAgICAgVVNBUlRfQ1IzX05BQ0tfTXNrICAgICAgICAgICAgICAgICAvKiE8IFNtYXJ0Y2FyZCBOQUNLIGVuYWJsZSAqLw0KI2RlZmluZSBVU0FSVF9DUjNfU0NFTl9Qb3MgICAgICAgICAgICAgICAgICAoNVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0FSVF9DUjNfU0NFTl9Nc2sgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBVU0FSVF9DUjNfU0NFTl9Qb3MpICAgICAgIC8qITwgMHgwMDAwMDAyMCAqLw0KI2RlZmluZSBVU0FSVF9DUjNfU0NFTiAgICAgICAgICAgICAgICAgICAgICBVU0FSVF9DUjNfU0NFTl9Nc2sgICAgICAgICAgICAgICAgIC8qITwgU21hcnRjYXJkIG1vZGUgZW5hYmxlICovDQojZGVmaW5lIFVTQVJUX0NSM19ETUFSX1BvcyAgICAgICAgICAgICAgICAgICg2VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQVJUX0NSM19ETUFSX01zayAgICAgICAgICAgICAgICAgICgweDFVIDw8IFVTQVJUX0NSM19ETUFSX1BvcykgICAgICAgLyohPCAweDAwMDAwMDQwICovDQojZGVmaW5lIFVTQVJUX0NSM19ETUFSICAgICAgICAgICAgICAgICAgICAgIFVTQVJUX0NSM19ETUFSX01zayAgICAgICAgICAgICAgICAgLyohPCBETUEgRW5hYmxlIFJlY2VpdmVyICovDQojZGVmaW5lIFVTQVJUX0NSM19ETUFUX1BvcyAgICAgICAgICAgICAgICAgICg3VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQVJUX0NSM19ETUFUX01zayAgICAgICAgICAgICAgICAgICgweDFVIDw8IFVTQVJUX0NSM19ETUFUX1BvcykgICAgICAgLyohPCAweDAwMDAwMDgwICovDQojZGVmaW5lIFVTQVJUX0NSM19ETUFUICAgICAgICAgICAgICAgICAgICAgIFVTQVJUX0NSM19ETUFUX01zayAgICAgICAgICAgICAgICAgLyohPCBETUEgRW5hYmxlIFRyYW5zbWl0dGVyICovDQojZGVmaW5lIFVTQVJUX0NSM19SVFNFX1BvcyAgICAgICAgICAgICAgICAgICg4VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQVJUX0NSM19SVFNFX01zayAgICAgICAgICAgICAgICAgICgweDFVIDw8IFVTQVJUX0NSM19SVFNFX1BvcykgICAgICAgLyohPCAweDAwMDAwMTAwICovDQojZGVmaW5lIFVTQVJUX0NSM19SVFNFICAgICAgICAgICAgICAgICAgICAgIFVTQVJUX0NSM19SVFNFX01zayAgICAgICAgICAgICAgICAgLyohPCBSVFMgRW5hYmxlICovDQojZGVmaW5lIFVTQVJUX0NSM19DVFNFX1BvcyAgICAgICAgICAgICAgICAgICg5VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQVJUX0NSM19DVFNFX01zayAgICAgICAgICAgICAgICAgICgweDFVIDw8IFVTQVJUX0NSM19DVFNFX1BvcykgICAgICAgLyohPCAweDAwMDAwMjAwICovDQojZGVmaW5lIFVTQVJUX0NSM19DVFNFICAgICAgICAgICAgICAgICAgICAgIFVTQVJUX0NSM19DVFNFX01zayAgICAgICAgICAgICAgICAgLyohPCBDVFMgRW5hYmxlICovDQojZGVmaW5lIFVTQVJUX0NSM19DVFNJRV9Qb3MgICAgICAgICAgICAgICAgICgxMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQVJUX0NSM19DVFNJRV9Nc2sgICAgICAgICAgICAgICAgICgweDFVIDw8IFVTQVJUX0NSM19DVFNJRV9Qb3MpICAgICAgLyohPCAweDAwMDAwNDAwICovDQojZGVmaW5lIFVTQVJUX0NSM19DVFNJRSAgICAgICAgICAgICAgICAgICAgIFVTQVJUX0NSM19DVFNJRV9Nc2sgICAgICAgICAgICAgICAgLyohPCBDVFMgSW50ZXJydXB0IEVuYWJsZSAqLw0KI2RlZmluZSBVU0FSVF9DUjNfT05FQklUX1BvcyAgICAgICAgICAgICAgICAoMTFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0FSVF9DUjNfT05FQklUX01zayAgICAgICAgICAgICAgICAoMHgxVSA8PCBVU0FSVF9DUjNfT05FQklUX1BvcykgICAgIC8qITwgMHgwMDAwMDgwMCAqLw0KI2RlZmluZSBVU0FSVF9DUjNfT05FQklUICAgICAgICAgICAgICAgICAgICBVU0FSVF9DUjNfT05FQklUX01zayAgICAgICAgICAgICAgIC8qITwgT25lIHNhbXBsZSBiaXQgbWV0aG9kIGVuYWJsZSAqLw0KDQovKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgVVNBUlRfR1RQUiByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBVU0FSVF9HVFBSX1BTQ19Qb3MgICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0FSVF9HVFBSX1BTQ19Nc2sgICAgICAgICAgICAgICAgICAoMHhGRlUgPDwgVVNBUlRfR1RQUl9QU0NfUG9zKSAgICAgIC8qITwgMHgwMDAwMDBGRiAqLw0KI2RlZmluZSBVU0FSVF9HVFBSX1BTQyAgICAgICAgICAgICAgICAgICAgICBVU0FSVF9HVFBSX1BTQ19Nc2sgICAgICAgICAgICAgICAgIC8qITwgUFNDWzc6MF0gYml0cyAoUHJlc2NhbGVyIHZhbHVlKSAqLw0KI2RlZmluZSBVU0FSVF9HVFBSX1BTQ18wICAgICAgICAgICAgICAgICAgICAoMHgwMVUgPDwgVVNBUlRfR1RQUl9QU0NfUG9zKSAgICAgIC8qITwgMHgwMDAwMDAwMSAqLw0KI2RlZmluZSBVU0FSVF9HVFBSX1BTQ18xICAgICAgICAgICAgICAgICAgICAoMHgwMlUgPDwgVVNBUlRfR1RQUl9QU0NfUG9zKSAgICAgIC8qITwgMHgwMDAwMDAwMiAqLw0KI2RlZmluZSBVU0FSVF9HVFBSX1BTQ18yICAgICAgICAgICAgICAgICAgICAoMHgwNFUgPDwgVVNBUlRfR1RQUl9QU0NfUG9zKSAgICAgIC8qITwgMHgwMDAwMDAwNCAqLw0KI2RlZmluZSBVU0FSVF9HVFBSX1BTQ18zICAgICAgICAgICAgICAgICAgICAoMHgwOFUgPDwgVVNBUlRfR1RQUl9QU0NfUG9zKSAgICAgIC8qITwgMHgwMDAwMDAwOCAqLw0KI2RlZmluZSBVU0FSVF9HVFBSX1BTQ180ICAgICAgICAgICAgICAgICAgICAoMHgxMFUgPDwgVVNBUlRfR1RQUl9QU0NfUG9zKSAgICAgIC8qITwgMHgwMDAwMDAxMCAqLw0KI2RlZmluZSBVU0FSVF9HVFBSX1BTQ181ICAgICAgICAgICAgICAgICAgICAoMHgyMFUgPDwgVVNBUlRfR1RQUl9QU0NfUG9zKSAgICAgIC8qITwgMHgwMDAwMDAyMCAqLw0KI2RlZmluZSBVU0FSVF9HVFBSX1BTQ182ICAgICAgICAgICAgICAgICAgICAoMHg0MFUgPDwgVVNBUlRfR1RQUl9QU0NfUG9zKSAgICAgIC8qITwgMHgwMDAwMDA0MCAqLw0KI2RlZmluZSBVU0FSVF9HVFBSX1BTQ183ICAgICAgICAgICAgICAgICAgICAoMHg4MFUgPDwgVVNBUlRfR1RQUl9QU0NfUG9zKSAgICAgIC8qITwgMHgwMDAwMDA4MCAqLw0KDQojZGVmaW5lIFVTQVJUX0dUUFJfR1RfUG9zICAgICAgICAgICAgICAgICAgICg4VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQVJUX0dUUFJfR1RfTXNrICAgICAgICAgICAgICAgICAgICgweEZGVSA8PCBVU0FSVF9HVFBSX0dUX1BvcykgICAgICAgLyohPCAweDAwMDBGRjAwICovDQojZGVmaW5lIFVTQVJUX0dUUFJfR1QgICAgICAgICAgICAgICAgICAgICAgIFVTQVJUX0dUUFJfR1RfTXNrICAgICAgICAgICAgICAgICAgLyohPCBHdWFyZCB0aW1lIHZhbHVlICovDQoNCi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovDQovKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLw0KLyogICAgICAgICAgICAgICAgICAgICBVbml2ZXJzYWwgU2VyaWFsIEJ1cyAoVVNCKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8NCi8qICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovDQovKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLw0KDQovKiE8RW5kcG9pbnQtc3BlY2lmaWMgcmVnaXN0ZXJzICovDQoNCiNkZWZpbmUgIFVTQl9FUDBSICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgVVNCX0JBU0UgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IGVuZHBvaW50IDAgcmVnaXN0ZXIgYWRkcmVzcyAqLw0KI2RlZmluZSAgVVNCX0VQMVIgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChVU0JfQkFTRSArIDB4MDAwMDAwMDRVKSAgICAgICAgIC8qITwgZW5kcG9pbnQgMSByZWdpc3RlciBhZGRyZXNzICovDQojZGVmaW5lICBVU0JfRVAyUiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKFVTQl9CQVNFICsgMHgwMDAwMDAwOFUpICAgICAgICAgLyohPCBlbmRwb2ludCAyIHJlZ2lzdGVyIGFkZHJlc3MgKi8NCiNkZWZpbmUgIFVTQl9FUDNSICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoVVNCX0JBU0UgKyAweDAwMDAwMDBDVSkgICAgICAgICAvKiE8IGVuZHBvaW50IDMgcmVnaXN0ZXIgYWRkcmVzcyAqLw0KI2RlZmluZSAgVVNCX0VQNFIgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChVU0JfQkFTRSArIDB4MDAwMDAwMTBVKSAgICAgICAgIC8qITwgZW5kcG9pbnQgNCByZWdpc3RlciBhZGRyZXNzICovDQojZGVmaW5lICBVU0JfRVA1UiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKFVTQl9CQVNFICsgMHgwMDAwMDAxNFUpICAgICAgICAgLyohPCBlbmRwb2ludCA1IHJlZ2lzdGVyIGFkZHJlc3MgKi8NCiNkZWZpbmUgIFVTQl9FUDZSICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoVVNCX0JBU0UgKyAweDAwMDAwMDE4VSkgICAgICAgICAvKiE8IGVuZHBvaW50IDYgcmVnaXN0ZXIgYWRkcmVzcyAqLw0KI2RlZmluZSAgVVNCX0VQN1IgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChVU0JfQkFTRSArIDB4MDAwMDAwMUNVKSAgICAgICAgIC8qITwgZW5kcG9pbnQgNyByZWdpc3RlciBhZGRyZXNzICovDQoNCi8qIGJpdCBwb3NpdGlvbnMgKi8gDQojZGVmaW5lIFVTQl9FUF9DVFJfUlhfUG9zICAgICAgICAgICAgICAgICAgICAgKDE1VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQl9FUF9DVFJfUlhfTXNrICAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVVNCX0VQX0NUUl9SWF9Qb3MpICAgICAgLyohPCAweDAwMDA4MDAwICovDQojZGVmaW5lIFVTQl9FUF9DVFJfUlggICAgICAgICAgICAgICAgICAgICAgICAgVVNCX0VQX0NUUl9SWF9Nc2sgICAgICAgICAgICAgICAgLyohPCAgRW5kUG9pbnQgQ29ycmVjdCBUUmFuc2ZlciBSWCAqLw0KI2RlZmluZSBVU0JfRVBfRFRPR19SWF9Qb3MgICAgICAgICAgICAgICAgICAgICgxNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0JfRVBfRFRPR19SWF9Nc2sgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFVTQl9FUF9EVE9HX1JYX1BvcykgICAgIC8qITwgMHgwMDAwNDAwMCAqLw0KI2RlZmluZSBVU0JfRVBfRFRPR19SWCAgICAgICAgICAgICAgICAgICAgICAgIFVTQl9FUF9EVE9HX1JYX01zayAgICAgICAgICAgICAgIC8qITwgIEVuZFBvaW50IERhdGEgVE9HR0xFIFJYICovDQojZGVmaW5lIFVTQl9FUFJYX1NUQVRfUG9zICAgICAgICAgICAgICAgICAgICAgKDEyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQl9FUFJYX1NUQVRfTXNrICAgICAgICAgICAgICAgICAgICAgKDB4M1UgPDwgVVNCX0VQUlhfU1RBVF9Qb3MpICAgICAgLyohPCAweDAwMDAzMDAwICovDQojZGVmaW5lIFVTQl9FUFJYX1NUQVQgICAgICAgICAgICAgICAgICAgICAgICAgVVNCX0VQUlhfU1RBVF9Nc2sgICAgICAgICAgICAgICAgLyohPCAgRW5kUG9pbnQgUlggU1RBVHVzIGJpdCBmaWVsZCAqLw0KI2RlZmluZSBVU0JfRVBfU0VUVVBfUG9zICAgICAgICAgICAgICAgICAgICAgICgxMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0JfRVBfU0VUVVBfTXNrICAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFVTQl9FUF9TRVRVUF9Qb3MpICAgICAgIC8qITwgMHgwMDAwMDgwMCAqLw0KI2RlZmluZSBVU0JfRVBfU0VUVVAgICAgICAgICAgICAgICAgICAgICAgICAgIFVTQl9FUF9TRVRVUF9Nc2sgICAgICAgICAgICAgICAgIC8qITwgIEVuZFBvaW50IFNFVFVQICovDQojZGVmaW5lIFVTQl9FUF9UX0ZJRUxEX1BvcyAgICAgICAgICAgICAgICAgICAgKDlVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQl9FUF9UX0ZJRUxEX01zayAgICAgICAgICAgICAgICAgICAgKDB4M1UgPDwgVVNCX0VQX1RfRklFTERfUG9zKSAgICAgLyohPCAweDAwMDAwNjAwICovDQojZGVmaW5lIFVTQl9FUF9UX0ZJRUxEICAgICAgICAgICAgICAgICAgICAgICAgVVNCX0VQX1RfRklFTERfTXNrICAgICAgICAgICAgICAgLyohPCAgRW5kUG9pbnQgVFlQRSAqLw0KI2RlZmluZSBVU0JfRVBfS0lORF9Qb3MgICAgICAgICAgICAgICAgICAgICAgICg4VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0JfRVBfS0lORF9Nc2sgICAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFVTQl9FUF9LSU5EX1BvcykgICAgICAgIC8qITwgMHgwMDAwMDEwMCAqLw0KI2RlZmluZSBVU0JfRVBfS0lORCAgICAgICAgICAgICAgICAgICAgICAgICAgIFVTQl9FUF9LSU5EX01zayAgICAgICAgICAgICAgICAgIC8qITwgIEVuZFBvaW50IEtJTkQgKi8NCiNkZWZpbmUgVVNCX0VQX0NUUl9UWF9Qb3MgICAgICAgICAgICAgICAgICAgICAoN1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNCX0VQX0NUUl9UWF9Nc2sgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBVU0JfRVBfQ1RSX1RYX1BvcykgICAgICAvKiE8IDB4MDAwMDAwODAgKi8NCiNkZWZpbmUgVVNCX0VQX0NUUl9UWCAgICAgICAgICAgICAgICAgICAgICAgICBVU0JfRVBfQ1RSX1RYX01zayAgICAgICAgICAgICAgICAvKiE8ICBFbmRQb2ludCBDb3JyZWN0IFRSYW5zZmVyIFRYICovDQojZGVmaW5lIFVTQl9FUF9EVE9HX1RYX1BvcyAgICAgICAgICAgICAgICAgICAgKDZVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQl9FUF9EVE9HX1RYX01zayAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVVNCX0VQX0RUT0dfVFhfUG9zKSAgICAgLyohPCAweDAwMDAwMDQwICovDQojZGVmaW5lIFVTQl9FUF9EVE9HX1RYICAgICAgICAgICAgICAgICAgICAgICAgVVNCX0VQX0RUT0dfVFhfTXNrICAgICAgICAgICAgICAgLyohPCAgRW5kUG9pbnQgRGF0YSBUT0dHTEUgVFggKi8NCiNkZWZpbmUgVVNCX0VQVFhfU1RBVF9Qb3MgICAgICAgICAgICAgICAgICAgICAoNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNCX0VQVFhfU1RBVF9Nc2sgICAgICAgICAgICAgICAgICAgICAoMHgzVSA8PCBVU0JfRVBUWF9TVEFUX1BvcykgICAgICAvKiE8IDB4MDAwMDAwMzAgKi8NCiNkZWZpbmUgVVNCX0VQVFhfU1RBVCAgICAgICAgICAgICAgICAgICAgICAgICBVU0JfRVBUWF9TVEFUX01zayAgICAgICAgICAgICAgICAvKiE8ICBFbmRQb2ludCBUWCBTVEFUdXMgYml0IGZpZWxkICovDQojZGVmaW5lIFVTQl9FUEFERFJfRklFTERfUG9zICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQl9FUEFERFJfRklFTERfTXNrICAgICAgICAgICAgICAgICAgKDB4RlUgPDwgVVNCX0VQQUREUl9GSUVMRF9Qb3MpICAgLyohPCAweDAwMDAwMDBGICovDQojZGVmaW5lIFVTQl9FUEFERFJfRklFTEQgICAgICAgICAgICAgICAgICAgICAgVVNCX0VQQUREUl9GSUVMRF9Nc2sgICAgICAgICAgICAgLyohPCAgRW5kUG9pbnQgQUREUmVzcyBGSUVMRCAqLw0KDQovKiBFbmRQb2ludCBSRUdpc3RlciBNQVNLIChubyB0b2dnbGUgZmllbGRzKSAqLw0KI2RlZmluZSAgVVNCX0VQUkVHX01BU0sgICAgIChVU0JfRVBfQ1RSX1JYfFVTQl9FUF9TRVRVUHxVU0JfRVBfVF9GSUVMRHxVU0JfRVBfS0lORHxVU0JfRVBfQ1RSX1RYfFVTQl9FUEFERFJfRklFTEQpDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBFUF9UWVBFWzE6MF0gRW5kUG9pbnQgVFlQRSAqLw0KI2RlZmluZSBVU0JfRVBfVFlQRV9NQVNLX1BvcyAgICAgICAgICAgICAgICAgICg5VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0JfRVBfVFlQRV9NQVNLX01zayAgICAgICAgICAgICAgICAgICgweDNVIDw8IFVTQl9FUF9UWVBFX01BU0tfUG9zKSAgIC8qITwgMHgwMDAwMDYwMCAqLw0KI2RlZmluZSBVU0JfRVBfVFlQRV9NQVNLICAgICAgICAgICAgICAgICAgICAgIFVTQl9FUF9UWVBFX01BU0tfTXNrICAgICAgICAgICAgIC8qITwgRW5kUG9pbnQgVFlQRSBNYXNrICovDQojZGVmaW5lIFVTQl9FUF9CVUxLICAgICAgICAgICAgICAgICAgICAgICAgICAgKDB4MDAwMDAwMDBVKSAgICAgICAgICAgICAgICAgICAgLyohPCBFbmRQb2ludCBCVUxLICovDQojZGVmaW5lIFVTQl9FUF9DT05UUk9MICAgICAgICAgICAgICAgICAgICAgICAgKDB4MDAwMDAyMDBVKSAgICAgICAgICAgICAgICAgICAgLyohPCBFbmRQb2ludCBDT05UUk9MICovDQojZGVmaW5lIFVTQl9FUF9JU09DSFJPTk9VUyAgICAgICAgICAgICAgICAgICAgKDB4MDAwMDA0MDBVKSAgICAgICAgICAgICAgICAgICAgLyohPCBFbmRQb2ludCBJU09DSFJPTk9VUyAqLw0KI2RlZmluZSBVU0JfRVBfSU5URVJSVVBUICAgICAgICAgICAgICAgICAgICAgICgweDAwMDAwNjAwVSkgICAgICAgICAgICAgICAgICAgIC8qITwgRW5kUG9pbnQgSU5URVJSVVBUICovDQojZGVmaW5lICBVU0JfRVBfVF9NQVNLICAgICAgKH5VU0JfRVBfVF9GSUVMRCAmIFVTQl9FUFJFR19NQVNLKQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgIFVTQl9FUEtJTkRfTUFTSyAgICAoflVTQl9FUF9LSU5EICYgVVNCX0VQUkVHX01BU0spICAgICAgICAgICAgLyohPCBFUF9LSU5EIEVuZFBvaW50IEtJTkQgKi8NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFNUQVRfVFhbMTowXSBTVEFUdXMgZm9yIFRYIHRyYW5zZmVyICovDQojZGVmaW5lIFVTQl9FUF9UWF9ESVMgICAgICAgICAgICAgICAgICAgICAgICAgKDB4MDAwMDAwMDBVKSAgICAgICAgICAgICAgICAgICAgLyohPCBFbmRQb2ludCBUWCBESVNhYmxlZCAqLw0KI2RlZmluZSBVU0JfRVBfVFhfU1RBTEwgICAgICAgICAgICAgICAgICAgICAgICgweDAwMDAwMDEwVSkgICAgICAgICAgICAgICAgICAgIC8qITwgRW5kUG9pbnQgVFggU1RBTExlZCAqLw0KI2RlZmluZSBVU0JfRVBfVFhfTkFLICAgICAgICAgICAgICAgICAgICAgICAgICgweDAwMDAwMDIwVSkgICAgICAgICAgICAgICAgICAgIC8qITwgRW5kUG9pbnQgVFggTkFLZWQgKi8NCiNkZWZpbmUgVVNCX0VQX1RYX1ZBTElEICAgICAgICAgICAgICAgICAgICAgICAoMHgwMDAwMDAzMFUpICAgICAgICAgICAgICAgICAgICAvKiE8IEVuZFBvaW50IFRYIFZBTElEICovDQojZGVmaW5lIFVTQl9FUFRYX0RUT0cxICAgICAgICAgICAgICAgICAgICAgICAgKDB4MDAwMDAwMTBVKSAgICAgICAgICAgICAgICAgICAgLyohPCBFbmRQb2ludCBUWCBEYXRhIFRPR2dsZSBiaXQxICovDQojZGVmaW5lIFVTQl9FUFRYX0RUT0cyICAgICAgICAgICAgICAgICAgICAgICAgKDB4MDAwMDAwMjBVKSAgICAgICAgICAgICAgICAgICAgLyohPCBFbmRQb2ludCBUWCBEYXRhIFRPR2dsZSBiaXQyICovDQojZGVmaW5lICBVU0JfRVBUWF9EVE9HTUFTSyAgKFVTQl9FUFRYX1NUQVR8VVNCX0VQUkVHX01BU0spDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBTVEFUX1JYWzE6MF0gU1RBVHVzIGZvciBSWCB0cmFuc2ZlciAqLw0KI2RlZmluZSBVU0JfRVBfUlhfRElTICAgICAgICAgICAgICAgICAgICAgICAgICgweDAwMDAwMDAwVSkgICAgICAgICAgICAgICAgICAgIC8qITwgRW5kUG9pbnQgUlggRElTYWJsZWQgKi8NCiNkZWZpbmUgVVNCX0VQX1JYX1NUQUxMICAgICAgICAgICAgICAgICAgICAgICAoMHgwMDAwMTAwMFUpICAgICAgICAgICAgICAgICAgICAvKiE8IEVuZFBvaW50IFJYIFNUQUxMZWQgKi8NCiNkZWZpbmUgVVNCX0VQX1JYX05BSyAgICAgICAgICAgICAgICAgICAgICAgICAoMHgwMDAwMjAwMFUpICAgICAgICAgICAgICAgICAgICAvKiE8IEVuZFBvaW50IFJYIE5BS2VkICovDQojZGVmaW5lIFVTQl9FUF9SWF9WQUxJRCAgICAgICAgICAgICAgICAgICAgICAgKDB4MDAwMDMwMDBVKSAgICAgICAgICAgICAgICAgICAgLyohPCBFbmRQb2ludCBSWCBWQUxJRCAqLw0KI2RlZmluZSBVU0JfRVBSWF9EVE9HMSAgICAgICAgICAgICAgICAgICAgICAgICgweDAwMDAxMDAwVSkgICAgICAgICAgICAgICAgICAgIC8qITwgRW5kUG9pbnQgUlggRGF0YSBUT0dnbGUgYml0MSAqLw0KI2RlZmluZSBVU0JfRVBSWF9EVE9HMiAgICAgICAgICAgICAgICAgICAgICAgICgweDAwMDAyMDAwVSkgICAgICAgICAgICAgICAgICAgIC8qITwgRW5kUG9pbnQgUlggRGF0YSBUT0dnbGUgYml0MSAqLw0KI2RlZmluZSAgVVNCX0VQUlhfRFRPR01BU0sgIChVU0JfRVBSWF9TVEFUfFVTQl9FUFJFR19NQVNLKQ0KDQovKioqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFVTQl9FUDBSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBVU0JfRVAwUl9FQV9Qb3MgICAgICAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0JfRVAwUl9FQV9Nc2sgICAgICAgICAgICAgICAgICAgICAgICgweEZVIDw8IFVTQl9FUDBSX0VBX1BvcykgICAgICAgIC8qITwgMHgwMDAwMDAwRiAqLw0KI2RlZmluZSBVU0JfRVAwUl9FQSAgICAgICAgICAgICAgICAgICAgICAgICAgIFVTQl9FUDBSX0VBX01zayAgICAgICAgICAgICAgICAgIC8qITxFbmRwb2ludCBBZGRyZXNzICovDQoNCiNkZWZpbmUgVVNCX0VQMFJfU1RBVF9UWF9Qb3MgICAgICAgICAgICAgICAgICAoNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNCX0VQMFJfU1RBVF9UWF9Nc2sgICAgICAgICAgICAgICAgICAoMHgzVSA8PCBVU0JfRVAwUl9TVEFUX1RYX1BvcykgICAvKiE8IDB4MDAwMDAwMzAgKi8NCiNkZWZpbmUgVVNCX0VQMFJfU1RBVF9UWCAgICAgICAgICAgICAgICAgICAgICBVU0JfRVAwUl9TVEFUX1RYX01zayAgICAgICAgICAgICAvKiE8U1RBVF9UWFsxOjBdIGJpdHMgKFN0YXR1cyBiaXRzLCBmb3IgdHJhbnNtaXNzaW9uIHRyYW5zZmVycykgKi8NCiNkZWZpbmUgVVNCX0VQMFJfU1RBVF9UWF8wICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBVU0JfRVAwUl9TVEFUX1RYX1BvcykgICAvKiE8IDB4MDAwMDAwMTAgKi8NCiNkZWZpbmUgVVNCX0VQMFJfU1RBVF9UWF8xICAgICAgICAgICAgICAgICAgICAoMHgyVSA8PCBVU0JfRVAwUl9TVEFUX1RYX1BvcykgICAvKiE8IDB4MDAwMDAwMjAgKi8NCg0KI2RlZmluZSBVU0JfRVAwUl9EVE9HX1RYX1BvcyAgICAgICAgICAgICAgICAgICg2VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0JfRVAwUl9EVE9HX1RYX01zayAgICAgICAgICAgICAgICAgICgweDFVIDw8IFVTQl9FUDBSX0RUT0dfVFhfUG9zKSAgIC8qITwgMHgwMDAwMDA0MCAqLw0KI2RlZmluZSBVU0JfRVAwUl9EVE9HX1RYICAgICAgICAgICAgICAgICAgICAgIFVTQl9FUDBSX0RUT0dfVFhfTXNrICAgICAgICAgICAgIC8qITxEYXRhIFRvZ2dsZSwgZm9yIHRyYW5zbWlzc2lvbiB0cmFuc2ZlcnMgKi8NCiNkZWZpbmUgVVNCX0VQMFJfQ1RSX1RYX1BvcyAgICAgICAgICAgICAgICAgICAoN1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNCX0VQMFJfQ1RSX1RYX01zayAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBVU0JfRVAwUl9DVFJfVFhfUG9zKSAgICAvKiE8IDB4MDAwMDAwODAgKi8NCiNkZWZpbmUgVVNCX0VQMFJfQ1RSX1RYICAgICAgICAgICAgICAgICAgICAgICBVU0JfRVAwUl9DVFJfVFhfTXNrICAgICAgICAgICAgICAvKiE8Q29ycmVjdCBUcmFuc2ZlciBmb3IgdHJhbnNtaXNzaW9uICovDQojZGVmaW5lIFVTQl9FUDBSX0VQX0tJTkRfUG9zICAgICAgICAgICAgICAgICAgKDhVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQl9FUDBSX0VQX0tJTkRfTXNrICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVVNCX0VQMFJfRVBfS0lORF9Qb3MpICAgLyohPCAweDAwMDAwMTAwICovDQojZGVmaW5lIFVTQl9FUDBSX0VQX0tJTkQgICAgICAgICAgICAgICAgICAgICAgVVNCX0VQMFJfRVBfS0lORF9Nc2sgICAgICAgICAgICAgLyohPEVuZHBvaW50IEtpbmQgKi8NCg0KI2RlZmluZSBVU0JfRVAwUl9FUF9UWVBFX1BvcyAgICAgICAgICAgICAgICAgICg5VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0JfRVAwUl9FUF9UWVBFX01zayAgICAgICAgICAgICAgICAgICgweDNVIDw8IFVTQl9FUDBSX0VQX1RZUEVfUG9zKSAgIC8qITwgMHgwMDAwMDYwMCAqLw0KI2RlZmluZSBVU0JfRVAwUl9FUF9UWVBFICAgICAgICAgICAgICAgICAgICAgIFVTQl9FUDBSX0VQX1RZUEVfTXNrICAgICAgICAgICAgIC8qITxFUF9UWVBFWzE6MF0gYml0cyAoRW5kcG9pbnQgdHlwZSkgKi8NCiNkZWZpbmUgVVNCX0VQMFJfRVBfVFlQRV8wICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBVU0JfRVAwUl9FUF9UWVBFX1BvcykgICAvKiE8IDB4MDAwMDAyMDAgKi8NCiNkZWZpbmUgVVNCX0VQMFJfRVBfVFlQRV8xICAgICAgICAgICAgICAgICAgICAoMHgyVSA8PCBVU0JfRVAwUl9FUF9UWVBFX1BvcykgICAvKiE8IDB4MDAwMDA0MDAgKi8NCg0KI2RlZmluZSBVU0JfRVAwUl9TRVRVUF9Qb3MgICAgICAgICAgICAgICAgICAgICgxMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0JfRVAwUl9TRVRVUF9Nc2sgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFVTQl9FUDBSX1NFVFVQX1BvcykgICAgIC8qITwgMHgwMDAwMDgwMCAqLw0KI2RlZmluZSBVU0JfRVAwUl9TRVRVUCAgICAgICAgICAgICAgICAgICAgICAgIFVTQl9FUDBSX1NFVFVQX01zayAgICAgICAgICAgICAgIC8qITxTZXR1cCB0cmFuc2FjdGlvbiBjb21wbGV0ZWQgKi8NCg0KI2RlZmluZSBVU0JfRVAwUl9TVEFUX1JYX1BvcyAgICAgICAgICAgICAgICAgICgxMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0JfRVAwUl9TVEFUX1JYX01zayAgICAgICAgICAgICAgICAgICgweDNVIDw8IFVTQl9FUDBSX1NUQVRfUlhfUG9zKSAgIC8qITwgMHgwMDAwMzAwMCAqLw0KI2RlZmluZSBVU0JfRVAwUl9TVEFUX1JYICAgICAgICAgICAgICAgICAgICAgIFVTQl9FUDBSX1NUQVRfUlhfTXNrICAgICAgICAgICAgIC8qITxTVEFUX1JYWzE6MF0gYml0cyAoU3RhdHVzIGJpdHMsIGZvciByZWNlcHRpb24gdHJhbnNmZXJzKSAqLw0KI2RlZmluZSBVU0JfRVAwUl9TVEFUX1JYXzAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFVTQl9FUDBSX1NUQVRfUlhfUG9zKSAgIC8qITwgMHgwMDAwMTAwMCAqLw0KI2RlZmluZSBVU0JfRVAwUl9TVEFUX1JYXzEgICAgICAgICAgICAgICAgICAgICgweDJVIDw8IFVTQl9FUDBSX1NUQVRfUlhfUG9zKSAgIC8qITwgMHgwMDAwMjAwMCAqLw0KDQojZGVmaW5lIFVTQl9FUDBSX0RUT0dfUlhfUG9zICAgICAgICAgICAgICAgICAgKDE0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQl9FUDBSX0RUT0dfUlhfTXNrICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVVNCX0VQMFJfRFRPR19SWF9Qb3MpICAgLyohPCAweDAwMDA0MDAwICovDQojZGVmaW5lIFVTQl9FUDBSX0RUT0dfUlggICAgICAgICAgICAgICAgICAgICAgVVNCX0VQMFJfRFRPR19SWF9Nc2sgICAgICAgICAgICAgLyohPERhdGEgVG9nZ2xlLCBmb3IgcmVjZXB0aW9uIHRyYW5zZmVycyAqLw0KI2RlZmluZSBVU0JfRVAwUl9DVFJfUlhfUG9zICAgICAgICAgICAgICAgICAgICgxNVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0JfRVAwUl9DVFJfUlhfTXNrICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFVTQl9FUDBSX0NUUl9SWF9Qb3MpICAgIC8qITwgMHgwMDAwODAwMCAqLw0KI2RlZmluZSBVU0JfRVAwUl9DVFJfUlggICAgICAgICAgICAgICAgICAgICAgIFVTQl9FUDBSX0NUUl9SWF9Nc2sgICAgICAgICAgICAgIC8qITxDb3JyZWN0IFRyYW5zZmVyIGZvciByZWNlcHRpb24gKi8NCg0KLyoqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBVU0JfRVAxUiByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgVVNCX0VQMVJfRUFfUG9zICAgICAgICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNCX0VQMVJfRUFfTXNrICAgICAgICAgICAgICAgICAgICAgICAoMHhGVSA8PCBVU0JfRVAxUl9FQV9Qb3MpICAgICAgICAvKiE8IDB4MDAwMDAwMEYgKi8NCiNkZWZpbmUgVVNCX0VQMVJfRUEgICAgICAgICAgICAgICAgICAgICAgICAgICBVU0JfRVAxUl9FQV9Nc2sgICAgICAgICAgICAgICAgICAvKiE8RW5kcG9pbnQgQWRkcmVzcyAqLw0KDQojZGVmaW5lIFVTQl9FUDFSX1NUQVRfVFhfUG9zICAgICAgICAgICAgICAgICAgKDRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQl9FUDFSX1NUQVRfVFhfTXNrICAgICAgICAgICAgICAgICAgKDB4M1UgPDwgVVNCX0VQMVJfU1RBVF9UWF9Qb3MpICAgLyohPCAweDAwMDAwMDMwICovDQojZGVmaW5lIFVTQl9FUDFSX1NUQVRfVFggICAgICAgICAgICAgICAgICAgICAgVVNCX0VQMVJfU1RBVF9UWF9Nc2sgICAgICAgICAgICAgLyohPFNUQVRfVFhbMTowXSBiaXRzIChTdGF0dXMgYml0cywgZm9yIHRyYW5zbWlzc2lvbiB0cmFuc2ZlcnMpICovDQojZGVmaW5lIFVTQl9FUDFSX1NUQVRfVFhfMCAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVVNCX0VQMVJfU1RBVF9UWF9Qb3MpICAgLyohPCAweDAwMDAwMDEwICovDQojZGVmaW5lIFVTQl9FUDFSX1NUQVRfVFhfMSAgICAgICAgICAgICAgICAgICAgKDB4MlUgPDwgVVNCX0VQMVJfU1RBVF9UWF9Qb3MpICAgLyohPCAweDAwMDAwMDIwICovDQoNCiNkZWZpbmUgVVNCX0VQMVJfRFRPR19UWF9Qb3MgICAgICAgICAgICAgICAgICAoNlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNCX0VQMVJfRFRPR19UWF9Nc2sgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBVU0JfRVAxUl9EVE9HX1RYX1BvcykgICAvKiE8IDB4MDAwMDAwNDAgKi8NCiNkZWZpbmUgVVNCX0VQMVJfRFRPR19UWCAgICAgICAgICAgICAgICAgICAgICBVU0JfRVAxUl9EVE9HX1RYX01zayAgICAgICAgICAgICAvKiE8RGF0YSBUb2dnbGUsIGZvciB0cmFuc21pc3Npb24gdHJhbnNmZXJzICovDQojZGVmaW5lIFVTQl9FUDFSX0NUUl9UWF9Qb3MgICAgICAgICAgICAgICAgICAgKDdVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQl9FUDFSX0NUUl9UWF9Nc2sgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVVNCX0VQMVJfQ1RSX1RYX1BvcykgICAgLyohPCAweDAwMDAwMDgwICovDQojZGVmaW5lIFVTQl9FUDFSX0NUUl9UWCAgICAgICAgICAgICAgICAgICAgICAgVVNCX0VQMVJfQ1RSX1RYX01zayAgICAgICAgICAgICAgLyohPENvcnJlY3QgVHJhbnNmZXIgZm9yIHRyYW5zbWlzc2lvbiAqLw0KI2RlZmluZSBVU0JfRVAxUl9FUF9LSU5EX1BvcyAgICAgICAgICAgICAgICAgICg4VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0JfRVAxUl9FUF9LSU5EX01zayAgICAgICAgICAgICAgICAgICgweDFVIDw8IFVTQl9FUDFSX0VQX0tJTkRfUG9zKSAgIC8qITwgMHgwMDAwMDEwMCAqLw0KI2RlZmluZSBVU0JfRVAxUl9FUF9LSU5EICAgICAgICAgICAgICAgICAgICAgIFVTQl9FUDFSX0VQX0tJTkRfTXNrICAgICAgICAgICAgIC8qITxFbmRwb2ludCBLaW5kICovDQoNCiNkZWZpbmUgVVNCX0VQMVJfRVBfVFlQRV9Qb3MgICAgICAgICAgICAgICAgICAoOVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNCX0VQMVJfRVBfVFlQRV9Nc2sgICAgICAgICAgICAgICAgICAoMHgzVSA8PCBVU0JfRVAxUl9FUF9UWVBFX1BvcykgICAvKiE8IDB4MDAwMDA2MDAgKi8NCiNkZWZpbmUgVVNCX0VQMVJfRVBfVFlQRSAgICAgICAgICAgICAgICAgICAgICBVU0JfRVAxUl9FUF9UWVBFX01zayAgICAgICAgICAgICAvKiE8RVBfVFlQRVsxOjBdIGJpdHMgKEVuZHBvaW50IHR5cGUpICovDQojZGVmaW5lIFVTQl9FUDFSX0VQX1RZUEVfMCAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVVNCX0VQMVJfRVBfVFlQRV9Qb3MpICAgLyohPCAweDAwMDAwMjAwICovDQojZGVmaW5lIFVTQl9FUDFSX0VQX1RZUEVfMSAgICAgICAgICAgICAgICAgICAgKDB4MlUgPDwgVVNCX0VQMVJfRVBfVFlQRV9Qb3MpICAgLyohPCAweDAwMDAwNDAwICovDQoNCiNkZWZpbmUgVVNCX0VQMVJfU0VUVVBfUG9zICAgICAgICAgICAgICAgICAgICAoMTFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNCX0VQMVJfU0VUVVBfTXNrICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBVU0JfRVAxUl9TRVRVUF9Qb3MpICAgICAvKiE8IDB4MDAwMDA4MDAgKi8NCiNkZWZpbmUgVVNCX0VQMVJfU0VUVVAgICAgICAgICAgICAgICAgICAgICAgICBVU0JfRVAxUl9TRVRVUF9Nc2sgICAgICAgICAgICAgICAvKiE8U2V0dXAgdHJhbnNhY3Rpb24gY29tcGxldGVkICovDQoNCiNkZWZpbmUgVVNCX0VQMVJfU1RBVF9SWF9Qb3MgICAgICAgICAgICAgICAgICAoMTJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNCX0VQMVJfU1RBVF9SWF9Nc2sgICAgICAgICAgICAgICAgICAoMHgzVSA8PCBVU0JfRVAxUl9TVEFUX1JYX1BvcykgICAvKiE8IDB4MDAwMDMwMDAgKi8NCiNkZWZpbmUgVVNCX0VQMVJfU1RBVF9SWCAgICAgICAgICAgICAgICAgICAgICBVU0JfRVAxUl9TVEFUX1JYX01zayAgICAgICAgICAgICAvKiE8U1RBVF9SWFsxOjBdIGJpdHMgKFN0YXR1cyBiaXRzLCBmb3IgcmVjZXB0aW9uIHRyYW5zZmVycykgKi8NCiNkZWZpbmUgVVNCX0VQMVJfU1RBVF9SWF8wICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBVU0JfRVAxUl9TVEFUX1JYX1BvcykgICAvKiE8IDB4MDAwMDEwMDAgKi8NCiNkZWZpbmUgVVNCX0VQMVJfU1RBVF9SWF8xICAgICAgICAgICAgICAgICAgICAoMHgyVSA8PCBVU0JfRVAxUl9TVEFUX1JYX1BvcykgICAvKiE8IDB4MDAwMDIwMDAgKi8NCg0KI2RlZmluZSBVU0JfRVAxUl9EVE9HX1JYX1BvcyAgICAgICAgICAgICAgICAgICgxNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0JfRVAxUl9EVE9HX1JYX01zayAgICAgICAgICAgICAgICAgICgweDFVIDw8IFVTQl9FUDFSX0RUT0dfUlhfUG9zKSAgIC8qITwgMHgwMDAwNDAwMCAqLw0KI2RlZmluZSBVU0JfRVAxUl9EVE9HX1JYICAgICAgICAgICAgICAgICAgICAgIFVTQl9FUDFSX0RUT0dfUlhfTXNrICAgICAgICAgICAgIC8qITxEYXRhIFRvZ2dsZSwgZm9yIHJlY2VwdGlvbiB0cmFuc2ZlcnMgKi8NCiNkZWZpbmUgVVNCX0VQMVJfQ1RSX1JYX1BvcyAgICAgICAgICAgICAgICAgICAoMTVVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNCX0VQMVJfQ1RSX1JYX01zayAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBVU0JfRVAxUl9DVFJfUlhfUG9zKSAgICAvKiE8IDB4MDAwMDgwMDAgKi8NCiNkZWZpbmUgVVNCX0VQMVJfQ1RSX1JYICAgICAgICAgICAgICAgICAgICAgICBVU0JfRVAxUl9DVFJfUlhfTXNrICAgICAgICAgICAgICAvKiE8Q29ycmVjdCBUcmFuc2ZlciBmb3IgcmVjZXB0aW9uICovDQoNCi8qKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgVVNCX0VQMlIgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIFVTQl9FUDJSX0VBX1BvcyAgICAgICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQl9FUDJSX0VBX01zayAgICAgICAgICAgICAgICAgICAgICAgKDB4RlUgPDwgVVNCX0VQMlJfRUFfUG9zKSAgICAgICAgLyohPCAweDAwMDAwMDBGICovDQojZGVmaW5lIFVTQl9FUDJSX0VBICAgICAgICAgICAgICAgICAgICAgICAgICAgVVNCX0VQMlJfRUFfTXNrICAgICAgICAgICAgICAgICAgLyohPEVuZHBvaW50IEFkZHJlc3MgKi8NCg0KI2RlZmluZSBVU0JfRVAyUl9TVEFUX1RYX1BvcyAgICAgICAgICAgICAgICAgICg0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0JfRVAyUl9TVEFUX1RYX01zayAgICAgICAgICAgICAgICAgICgweDNVIDw8IFVTQl9FUDJSX1NUQVRfVFhfUG9zKSAgIC8qITwgMHgwMDAwMDAzMCAqLw0KI2RlZmluZSBVU0JfRVAyUl9TVEFUX1RYICAgICAgICAgICAgICAgICAgICAgIFVTQl9FUDJSX1NUQVRfVFhfTXNrICAgICAgICAgICAgIC8qITxTVEFUX1RYWzE6MF0gYml0cyAoU3RhdHVzIGJpdHMsIGZvciB0cmFuc21pc3Npb24gdHJhbnNmZXJzKSAqLw0KI2RlZmluZSBVU0JfRVAyUl9TVEFUX1RYXzAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFVTQl9FUDJSX1NUQVRfVFhfUG9zKSAgIC8qITwgMHgwMDAwMDAxMCAqLw0KI2RlZmluZSBVU0JfRVAyUl9TVEFUX1RYXzEgICAgICAgICAgICAgICAgICAgICgweDJVIDw8IFVTQl9FUDJSX1NUQVRfVFhfUG9zKSAgIC8qITwgMHgwMDAwMDAyMCAqLw0KDQojZGVmaW5lIFVTQl9FUDJSX0RUT0dfVFhfUG9zICAgICAgICAgICAgICAgICAgKDZVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQl9FUDJSX0RUT0dfVFhfTXNrICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVVNCX0VQMlJfRFRPR19UWF9Qb3MpICAgLyohPCAweDAwMDAwMDQwICovDQojZGVmaW5lIFVTQl9FUDJSX0RUT0dfVFggICAgICAgICAgICAgICAgICAgICAgVVNCX0VQMlJfRFRPR19UWF9Nc2sgICAgICAgICAgICAgLyohPERhdGEgVG9nZ2xlLCBmb3IgdHJhbnNtaXNzaW9uIHRyYW5zZmVycyAqLw0KI2RlZmluZSBVU0JfRVAyUl9DVFJfVFhfUG9zICAgICAgICAgICAgICAgICAgICg3VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0JfRVAyUl9DVFJfVFhfTXNrICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFVTQl9FUDJSX0NUUl9UWF9Qb3MpICAgIC8qITwgMHgwMDAwMDA4MCAqLw0KI2RlZmluZSBVU0JfRVAyUl9DVFJfVFggICAgICAgICAgICAgICAgICAgICAgIFVTQl9FUDJSX0NUUl9UWF9Nc2sgICAgICAgICAgICAgIC8qITxDb3JyZWN0IFRyYW5zZmVyIGZvciB0cmFuc21pc3Npb24gKi8NCiNkZWZpbmUgVVNCX0VQMlJfRVBfS0lORF9Qb3MgICAgICAgICAgICAgICAgICAoOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNCX0VQMlJfRVBfS0lORF9Nc2sgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBVU0JfRVAyUl9FUF9LSU5EX1BvcykgICAvKiE8IDB4MDAwMDAxMDAgKi8NCiNkZWZpbmUgVVNCX0VQMlJfRVBfS0lORCAgICAgICAgICAgICAgICAgICAgICBVU0JfRVAyUl9FUF9LSU5EX01zayAgICAgICAgICAgICAvKiE8RW5kcG9pbnQgS2luZCAqLw0KDQojZGVmaW5lIFVTQl9FUDJSX0VQX1RZUEVfUG9zICAgICAgICAgICAgICAgICAgKDlVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQl9FUDJSX0VQX1RZUEVfTXNrICAgICAgICAgICAgICAgICAgKDB4M1UgPDwgVVNCX0VQMlJfRVBfVFlQRV9Qb3MpICAgLyohPCAweDAwMDAwNjAwICovDQojZGVmaW5lIFVTQl9FUDJSX0VQX1RZUEUgICAgICAgICAgICAgICAgICAgICAgVVNCX0VQMlJfRVBfVFlQRV9Nc2sgICAgICAgICAgICAgLyohPEVQX1RZUEVbMTowXSBiaXRzIChFbmRwb2ludCB0eXBlKSAqLw0KI2RlZmluZSBVU0JfRVAyUl9FUF9UWVBFXzAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFVTQl9FUDJSX0VQX1RZUEVfUG9zKSAgIC8qITwgMHgwMDAwMDIwMCAqLw0KI2RlZmluZSBVU0JfRVAyUl9FUF9UWVBFXzEgICAgICAgICAgICAgICAgICAgICgweDJVIDw8IFVTQl9FUDJSX0VQX1RZUEVfUG9zKSAgIC8qITwgMHgwMDAwMDQwMCAqLw0KDQojZGVmaW5lIFVTQl9FUDJSX1NFVFVQX1BvcyAgICAgICAgICAgICAgICAgICAgKDExVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQl9FUDJSX1NFVFVQX01zayAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVVNCX0VQMlJfU0VUVVBfUG9zKSAgICAgLyohPCAweDAwMDAwODAwICovDQojZGVmaW5lIFVTQl9FUDJSX1NFVFVQICAgICAgICAgICAgICAgICAgICAgICAgVVNCX0VQMlJfU0VUVVBfTXNrICAgICAgICAgICAgICAgLyohPFNldHVwIHRyYW5zYWN0aW9uIGNvbXBsZXRlZCAqLw0KDQojZGVmaW5lIFVTQl9FUDJSX1NUQVRfUlhfUG9zICAgICAgICAgICAgICAgICAgKDEyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQl9FUDJSX1NUQVRfUlhfTXNrICAgICAgICAgICAgICAgICAgKDB4M1UgPDwgVVNCX0VQMlJfU1RBVF9SWF9Qb3MpICAgLyohPCAweDAwMDAzMDAwICovDQojZGVmaW5lIFVTQl9FUDJSX1NUQVRfUlggICAgICAgICAgICAgICAgICAgICAgVVNCX0VQMlJfU1RBVF9SWF9Nc2sgICAgICAgICAgICAgLyohPFNUQVRfUlhbMTowXSBiaXRzIChTdGF0dXMgYml0cywgZm9yIHJlY2VwdGlvbiB0cmFuc2ZlcnMpICovDQojZGVmaW5lIFVTQl9FUDJSX1NUQVRfUlhfMCAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVVNCX0VQMlJfU1RBVF9SWF9Qb3MpICAgLyohPCAweDAwMDAxMDAwICovDQojZGVmaW5lIFVTQl9FUDJSX1NUQVRfUlhfMSAgICAgICAgICAgICAgICAgICAgKDB4MlUgPDwgVVNCX0VQMlJfU1RBVF9SWF9Qb3MpICAgLyohPCAweDAwMDAyMDAwICovDQoNCiNkZWZpbmUgVVNCX0VQMlJfRFRPR19SWF9Qb3MgICAgICAgICAgICAgICAgICAoMTRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNCX0VQMlJfRFRPR19SWF9Nc2sgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBVU0JfRVAyUl9EVE9HX1JYX1BvcykgICAvKiE8IDB4MDAwMDQwMDAgKi8NCiNkZWZpbmUgVVNCX0VQMlJfRFRPR19SWCAgICAgICAgICAgICAgICAgICAgICBVU0JfRVAyUl9EVE9HX1JYX01zayAgICAgICAgICAgICAvKiE8RGF0YSBUb2dnbGUsIGZvciByZWNlcHRpb24gdHJhbnNmZXJzICovDQojZGVmaW5lIFVTQl9FUDJSX0NUUl9SWF9Qb3MgICAgICAgICAgICAgICAgICAgKDE1VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQl9FUDJSX0NUUl9SWF9Nc2sgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVVNCX0VQMlJfQ1RSX1JYX1BvcykgICAgLyohPCAweDAwMDA4MDAwICovDQojZGVmaW5lIFVTQl9FUDJSX0NUUl9SWCAgICAgICAgICAgICAgICAgICAgICAgVVNCX0VQMlJfQ1RSX1JYX01zayAgICAgICAgICAgICAgLyohPENvcnJlY3QgVHJhbnNmZXIgZm9yIHJlY2VwdGlvbiAqLw0KDQovKioqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFVTQl9FUDNSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBVU0JfRVAzUl9FQV9Qb3MgICAgICAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0JfRVAzUl9FQV9Nc2sgICAgICAgICAgICAgICAgICAgICAgICgweEZVIDw8IFVTQl9FUDNSX0VBX1BvcykgICAgICAgIC8qITwgMHgwMDAwMDAwRiAqLw0KI2RlZmluZSBVU0JfRVAzUl9FQSAgICAgICAgICAgICAgICAgICAgICAgICAgIFVTQl9FUDNSX0VBX01zayAgICAgICAgICAgICAgICAgIC8qITxFbmRwb2ludCBBZGRyZXNzICovDQoNCiNkZWZpbmUgVVNCX0VQM1JfU1RBVF9UWF9Qb3MgICAgICAgICAgICAgICAgICAoNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNCX0VQM1JfU1RBVF9UWF9Nc2sgICAgICAgICAgICAgICAgICAoMHgzVSA8PCBVU0JfRVAzUl9TVEFUX1RYX1BvcykgICAvKiE8IDB4MDAwMDAwMzAgKi8NCiNkZWZpbmUgVVNCX0VQM1JfU1RBVF9UWCAgICAgICAgICAgICAgICAgICAgICBVU0JfRVAzUl9TVEFUX1RYX01zayAgICAgICAgICAgICAvKiE8U1RBVF9UWFsxOjBdIGJpdHMgKFN0YXR1cyBiaXRzLCBmb3IgdHJhbnNtaXNzaW9uIHRyYW5zZmVycykgKi8NCiNkZWZpbmUgVVNCX0VQM1JfU1RBVF9UWF8wICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBVU0JfRVAzUl9TVEFUX1RYX1BvcykgICAvKiE8IDB4MDAwMDAwMTAgKi8NCiNkZWZpbmUgVVNCX0VQM1JfU1RBVF9UWF8xICAgICAgICAgICAgICAgICAgICAoMHgyVSA8PCBVU0JfRVAzUl9TVEFUX1RYX1BvcykgICAvKiE8IDB4MDAwMDAwMjAgKi8NCg0KI2RlZmluZSBVU0JfRVAzUl9EVE9HX1RYX1BvcyAgICAgICAgICAgICAgICAgICg2VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0JfRVAzUl9EVE9HX1RYX01zayAgICAgICAgICAgICAgICAgICgweDFVIDw8IFVTQl9FUDNSX0RUT0dfVFhfUG9zKSAgIC8qITwgMHgwMDAwMDA0MCAqLw0KI2RlZmluZSBVU0JfRVAzUl9EVE9HX1RYICAgICAgICAgICAgICAgICAgICAgIFVTQl9FUDNSX0RUT0dfVFhfTXNrICAgICAgICAgICAgIC8qITxEYXRhIFRvZ2dsZSwgZm9yIHRyYW5zbWlzc2lvbiB0cmFuc2ZlcnMgKi8NCiNkZWZpbmUgVVNCX0VQM1JfQ1RSX1RYX1BvcyAgICAgICAgICAgICAgICAgICAoN1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNCX0VQM1JfQ1RSX1RYX01zayAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBVU0JfRVAzUl9DVFJfVFhfUG9zKSAgICAvKiE8IDB4MDAwMDAwODAgKi8NCiNkZWZpbmUgVVNCX0VQM1JfQ1RSX1RYICAgICAgICAgICAgICAgICAgICAgICBVU0JfRVAzUl9DVFJfVFhfTXNrICAgICAgICAgICAgICAvKiE8Q29ycmVjdCBUcmFuc2ZlciBmb3IgdHJhbnNtaXNzaW9uICovDQojZGVmaW5lIFVTQl9FUDNSX0VQX0tJTkRfUG9zICAgICAgICAgICAgICAgICAgKDhVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQl9FUDNSX0VQX0tJTkRfTXNrICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVVNCX0VQM1JfRVBfS0lORF9Qb3MpICAgLyohPCAweDAwMDAwMTAwICovDQojZGVmaW5lIFVTQl9FUDNSX0VQX0tJTkQgICAgICAgICAgICAgICAgICAgICAgVVNCX0VQM1JfRVBfS0lORF9Nc2sgICAgICAgICAgICAgLyohPEVuZHBvaW50IEtpbmQgKi8NCg0KI2RlZmluZSBVU0JfRVAzUl9FUF9UWVBFX1BvcyAgICAgICAgICAgICAgICAgICg5VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0JfRVAzUl9FUF9UWVBFX01zayAgICAgICAgICAgICAgICAgICgweDNVIDw8IFVTQl9FUDNSX0VQX1RZUEVfUG9zKSAgIC8qITwgMHgwMDAwMDYwMCAqLw0KI2RlZmluZSBVU0JfRVAzUl9FUF9UWVBFICAgICAgICAgICAgICAgICAgICAgIFVTQl9FUDNSX0VQX1RZUEVfTXNrICAgICAgICAgICAgIC8qITxFUF9UWVBFWzE6MF0gYml0cyAoRW5kcG9pbnQgdHlwZSkgKi8NCiNkZWZpbmUgVVNCX0VQM1JfRVBfVFlQRV8wICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBVU0JfRVAzUl9FUF9UWVBFX1BvcykgICAvKiE8IDB4MDAwMDAyMDAgKi8NCiNkZWZpbmUgVVNCX0VQM1JfRVBfVFlQRV8xICAgICAgICAgICAgICAgICAgICAoMHgyVSA8PCBVU0JfRVAzUl9FUF9UWVBFX1BvcykgICAvKiE8IDB4MDAwMDA0MDAgKi8NCg0KI2RlZmluZSBVU0JfRVAzUl9TRVRVUF9Qb3MgICAgICAgICAgICAgICAgICAgICgxMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0JfRVAzUl9TRVRVUF9Nc2sgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFVTQl9FUDNSX1NFVFVQX1BvcykgICAgIC8qITwgMHgwMDAwMDgwMCAqLw0KI2RlZmluZSBVU0JfRVAzUl9TRVRVUCAgICAgICAgICAgICAgICAgICAgICAgIFVTQl9FUDNSX1NFVFVQX01zayAgICAgICAgICAgICAgIC8qITxTZXR1cCB0cmFuc2FjdGlvbiBjb21wbGV0ZWQgKi8NCg0KI2RlZmluZSBVU0JfRVAzUl9TVEFUX1JYX1BvcyAgICAgICAgICAgICAgICAgICgxMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0JfRVAzUl9TVEFUX1JYX01zayAgICAgICAgICAgICAgICAgICgweDNVIDw8IFVTQl9FUDNSX1NUQVRfUlhfUG9zKSAgIC8qITwgMHgwMDAwMzAwMCAqLw0KI2RlZmluZSBVU0JfRVAzUl9TVEFUX1JYICAgICAgICAgICAgICAgICAgICAgIFVTQl9FUDNSX1NUQVRfUlhfTXNrICAgICAgICAgICAgIC8qITxTVEFUX1JYWzE6MF0gYml0cyAoU3RhdHVzIGJpdHMsIGZvciByZWNlcHRpb24gdHJhbnNmZXJzKSAqLw0KI2RlZmluZSBVU0JfRVAzUl9TVEFUX1JYXzAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFVTQl9FUDNSX1NUQVRfUlhfUG9zKSAgIC8qITwgMHgwMDAwMTAwMCAqLw0KI2RlZmluZSBVU0JfRVAzUl9TVEFUX1JYXzEgICAgICAgICAgICAgICAgICAgICgweDJVIDw8IFVTQl9FUDNSX1NUQVRfUlhfUG9zKSAgIC8qITwgMHgwMDAwMjAwMCAqLw0KDQojZGVmaW5lIFVTQl9FUDNSX0RUT0dfUlhfUG9zICAgICAgICAgICAgICAgICAgKDE0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQl9FUDNSX0RUT0dfUlhfTXNrICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVVNCX0VQM1JfRFRPR19SWF9Qb3MpICAgLyohPCAweDAwMDA0MDAwICovDQojZGVmaW5lIFVTQl9FUDNSX0RUT0dfUlggICAgICAgICAgICAgICAgICAgICAgVVNCX0VQM1JfRFRPR19SWF9Nc2sgICAgICAgICAgICAgLyohPERhdGEgVG9nZ2xlLCBmb3IgcmVjZXB0aW9uIHRyYW5zZmVycyAqLw0KI2RlZmluZSBVU0JfRVAzUl9DVFJfUlhfUG9zICAgICAgICAgICAgICAgICAgICgxNVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0JfRVAzUl9DVFJfUlhfTXNrICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFVTQl9FUDNSX0NUUl9SWF9Qb3MpICAgIC8qITwgMHgwMDAwODAwMCAqLw0KI2RlZmluZSBVU0JfRVAzUl9DVFJfUlggICAgICAgICAgICAgICAgICAgICAgIFVTQl9FUDNSX0NUUl9SWF9Nc2sgICAgICAgICAgICAgIC8qITxDb3JyZWN0IFRyYW5zZmVyIGZvciByZWNlcHRpb24gKi8NCg0KLyoqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBVU0JfRVA0UiByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgVVNCX0VQNFJfRUFfUG9zICAgICAgICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNCX0VQNFJfRUFfTXNrICAgICAgICAgICAgICAgICAgICAgICAoMHhGVSA8PCBVU0JfRVA0Ul9FQV9Qb3MpICAgICAgICAvKiE8IDB4MDAwMDAwMEYgKi8NCiNkZWZpbmUgVVNCX0VQNFJfRUEgICAgICAgICAgICAgICAgICAgICAgICAgICBVU0JfRVA0Ul9FQV9Nc2sgICAgICAgICAgICAgICAgICAvKiE8RW5kcG9pbnQgQWRkcmVzcyAqLw0KDQojZGVmaW5lIFVTQl9FUDRSX1NUQVRfVFhfUG9zICAgICAgICAgICAgICAgICAgKDRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQl9FUDRSX1NUQVRfVFhfTXNrICAgICAgICAgICAgICAgICAgKDB4M1UgPDwgVVNCX0VQNFJfU1RBVF9UWF9Qb3MpICAgLyohPCAweDAwMDAwMDMwICovDQojZGVmaW5lIFVTQl9FUDRSX1NUQVRfVFggICAgICAgICAgICAgICAgICAgICAgVVNCX0VQNFJfU1RBVF9UWF9Nc2sgICAgICAgICAgICAgLyohPFNUQVRfVFhbMTowXSBiaXRzIChTdGF0dXMgYml0cywgZm9yIHRyYW5zbWlzc2lvbiB0cmFuc2ZlcnMpICovDQojZGVmaW5lIFVTQl9FUDRSX1NUQVRfVFhfMCAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVVNCX0VQNFJfU1RBVF9UWF9Qb3MpICAgLyohPCAweDAwMDAwMDEwICovDQojZGVmaW5lIFVTQl9FUDRSX1NUQVRfVFhfMSAgICAgICAgICAgICAgICAgICAgKDB4MlUgPDwgVVNCX0VQNFJfU1RBVF9UWF9Qb3MpICAgLyohPCAweDAwMDAwMDIwICovDQoNCiNkZWZpbmUgVVNCX0VQNFJfRFRPR19UWF9Qb3MgICAgICAgICAgICAgICAgICAoNlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNCX0VQNFJfRFRPR19UWF9Nc2sgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBVU0JfRVA0Ul9EVE9HX1RYX1BvcykgICAvKiE8IDB4MDAwMDAwNDAgKi8NCiNkZWZpbmUgVVNCX0VQNFJfRFRPR19UWCAgICAgICAgICAgICAgICAgICAgICBVU0JfRVA0Ul9EVE9HX1RYX01zayAgICAgICAgICAgICAvKiE8RGF0YSBUb2dnbGUsIGZvciB0cmFuc21pc3Npb24gdHJhbnNmZXJzICovDQojZGVmaW5lIFVTQl9FUDRSX0NUUl9UWF9Qb3MgICAgICAgICAgICAgICAgICAgKDdVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQl9FUDRSX0NUUl9UWF9Nc2sgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVVNCX0VQNFJfQ1RSX1RYX1BvcykgICAgLyohPCAweDAwMDAwMDgwICovDQojZGVmaW5lIFVTQl9FUDRSX0NUUl9UWCAgICAgICAgICAgICAgICAgICAgICAgVVNCX0VQNFJfQ1RSX1RYX01zayAgICAgICAgICAgICAgLyohPENvcnJlY3QgVHJhbnNmZXIgZm9yIHRyYW5zbWlzc2lvbiAqLw0KI2RlZmluZSBVU0JfRVA0Ul9FUF9LSU5EX1BvcyAgICAgICAgICAgICAgICAgICg4VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0JfRVA0Ul9FUF9LSU5EX01zayAgICAgICAgICAgICAgICAgICgweDFVIDw8IFVTQl9FUDRSX0VQX0tJTkRfUG9zKSAgIC8qITwgMHgwMDAwMDEwMCAqLw0KI2RlZmluZSBVU0JfRVA0Ul9FUF9LSU5EICAgICAgICAgICAgICAgICAgICAgIFVTQl9FUDRSX0VQX0tJTkRfTXNrICAgICAgICAgICAgIC8qITxFbmRwb2ludCBLaW5kICovDQoNCiNkZWZpbmUgVVNCX0VQNFJfRVBfVFlQRV9Qb3MgICAgICAgICAgICAgICAgICAoOVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNCX0VQNFJfRVBfVFlQRV9Nc2sgICAgICAgICAgICAgICAgICAoMHgzVSA8PCBVU0JfRVA0Ul9FUF9UWVBFX1BvcykgICAvKiE8IDB4MDAwMDA2MDAgKi8NCiNkZWZpbmUgVVNCX0VQNFJfRVBfVFlQRSAgICAgICAgICAgICAgICAgICAgICBVU0JfRVA0Ul9FUF9UWVBFX01zayAgICAgICAgICAgICAvKiE8RVBfVFlQRVsxOjBdIGJpdHMgKEVuZHBvaW50IHR5cGUpICovDQojZGVmaW5lIFVTQl9FUDRSX0VQX1RZUEVfMCAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVVNCX0VQNFJfRVBfVFlQRV9Qb3MpICAgLyohPCAweDAwMDAwMjAwICovDQojZGVmaW5lIFVTQl9FUDRSX0VQX1RZUEVfMSAgICAgICAgICAgICAgICAgICAgKDB4MlUgPDwgVVNCX0VQNFJfRVBfVFlQRV9Qb3MpICAgLyohPCAweDAwMDAwNDAwICovDQoNCiNkZWZpbmUgVVNCX0VQNFJfU0VUVVBfUG9zICAgICAgICAgICAgICAgICAgICAoMTFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNCX0VQNFJfU0VUVVBfTXNrICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBVU0JfRVA0Ul9TRVRVUF9Qb3MpICAgICAvKiE8IDB4MDAwMDA4MDAgKi8NCiNkZWZpbmUgVVNCX0VQNFJfU0VUVVAgICAgICAgICAgICAgICAgICAgICAgICBVU0JfRVA0Ul9TRVRVUF9Nc2sgICAgICAgICAgICAgICAvKiE8U2V0dXAgdHJhbnNhY3Rpb24gY29tcGxldGVkICovDQoNCiNkZWZpbmUgVVNCX0VQNFJfU1RBVF9SWF9Qb3MgICAgICAgICAgICAgICAgICAoMTJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNCX0VQNFJfU1RBVF9SWF9Nc2sgICAgICAgICAgICAgICAgICAoMHgzVSA8PCBVU0JfRVA0Ul9TVEFUX1JYX1BvcykgICAvKiE8IDB4MDAwMDMwMDAgKi8NCiNkZWZpbmUgVVNCX0VQNFJfU1RBVF9SWCAgICAgICAgICAgICAgICAgICAgICBVU0JfRVA0Ul9TVEFUX1JYX01zayAgICAgICAgICAgICAvKiE8U1RBVF9SWFsxOjBdIGJpdHMgKFN0YXR1cyBiaXRzLCBmb3IgcmVjZXB0aW9uIHRyYW5zZmVycykgKi8NCiNkZWZpbmUgVVNCX0VQNFJfU1RBVF9SWF8wICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBVU0JfRVA0Ul9TVEFUX1JYX1BvcykgICAvKiE8IDB4MDAwMDEwMDAgKi8NCiNkZWZpbmUgVVNCX0VQNFJfU1RBVF9SWF8xICAgICAgICAgICAgICAgICAgICAoMHgyVSA8PCBVU0JfRVA0Ul9TVEFUX1JYX1BvcykgICAvKiE8IDB4MDAwMDIwMDAgKi8NCg0KI2RlZmluZSBVU0JfRVA0Ul9EVE9HX1JYX1BvcyAgICAgICAgICAgICAgICAgICgxNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0JfRVA0Ul9EVE9HX1JYX01zayAgICAgICAgICAgICAgICAgICgweDFVIDw8IFVTQl9FUDRSX0RUT0dfUlhfUG9zKSAgIC8qITwgMHgwMDAwNDAwMCAqLw0KI2RlZmluZSBVU0JfRVA0Ul9EVE9HX1JYICAgICAgICAgICAgICAgICAgICAgIFVTQl9FUDRSX0RUT0dfUlhfTXNrICAgICAgICAgICAgIC8qITxEYXRhIFRvZ2dsZSwgZm9yIHJlY2VwdGlvbiB0cmFuc2ZlcnMgKi8NCiNkZWZpbmUgVVNCX0VQNFJfQ1RSX1JYX1BvcyAgICAgICAgICAgICAgICAgICAoMTVVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNCX0VQNFJfQ1RSX1JYX01zayAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBVU0JfRVA0Ul9DVFJfUlhfUG9zKSAgICAvKiE8IDB4MDAwMDgwMDAgKi8NCiNkZWZpbmUgVVNCX0VQNFJfQ1RSX1JYICAgICAgICAgICAgICAgICAgICAgICBVU0JfRVA0Ul9DVFJfUlhfTXNrICAgICAgICAgICAgICAvKiE8Q29ycmVjdCBUcmFuc2ZlciBmb3IgcmVjZXB0aW9uICovDQoNCi8qKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgVVNCX0VQNVIgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIFVTQl9FUDVSX0VBX1BvcyAgICAgICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQl9FUDVSX0VBX01zayAgICAgICAgICAgICAgICAgICAgICAgKDB4RlUgPDwgVVNCX0VQNVJfRUFfUG9zKSAgICAgICAgLyohPCAweDAwMDAwMDBGICovDQojZGVmaW5lIFVTQl9FUDVSX0VBICAgICAgICAgICAgICAgICAgICAgICAgICAgVVNCX0VQNVJfRUFfTXNrICAgICAgICAgICAgICAgICAgLyohPEVuZHBvaW50IEFkZHJlc3MgKi8NCg0KI2RlZmluZSBVU0JfRVA1Ul9TVEFUX1RYX1BvcyAgICAgICAgICAgICAgICAgICg0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0JfRVA1Ul9TVEFUX1RYX01zayAgICAgICAgICAgICAgICAgICgweDNVIDw8IFVTQl9FUDVSX1NUQVRfVFhfUG9zKSAgIC8qITwgMHgwMDAwMDAzMCAqLw0KI2RlZmluZSBVU0JfRVA1Ul9TVEFUX1RYICAgICAgICAgICAgICAgICAgICAgIFVTQl9FUDVSX1NUQVRfVFhfTXNrICAgICAgICAgICAgIC8qITxTVEFUX1RYWzE6MF0gYml0cyAoU3RhdHVzIGJpdHMsIGZvciB0cmFuc21pc3Npb24gdHJhbnNmZXJzKSAqLw0KI2RlZmluZSBVU0JfRVA1Ul9TVEFUX1RYXzAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFVTQl9FUDVSX1NUQVRfVFhfUG9zKSAgIC8qITwgMHgwMDAwMDAxMCAqLw0KI2RlZmluZSBVU0JfRVA1Ul9TVEFUX1RYXzEgICAgICAgICAgICAgICAgICAgICgweDJVIDw8IFVTQl9FUDVSX1NUQVRfVFhfUG9zKSAgIC8qITwgMHgwMDAwMDAyMCAqLw0KDQojZGVmaW5lIFVTQl9FUDVSX0RUT0dfVFhfUG9zICAgICAgICAgICAgICAgICAgKDZVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQl9FUDVSX0RUT0dfVFhfTXNrICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVVNCX0VQNVJfRFRPR19UWF9Qb3MpICAgLyohPCAweDAwMDAwMDQwICovDQojZGVmaW5lIFVTQl9FUDVSX0RUT0dfVFggICAgICAgICAgICAgICAgICAgICAgVVNCX0VQNVJfRFRPR19UWF9Nc2sgICAgICAgICAgICAgLyohPERhdGEgVG9nZ2xlLCBmb3IgdHJhbnNtaXNzaW9uIHRyYW5zZmVycyAqLw0KI2RlZmluZSBVU0JfRVA1Ul9DVFJfVFhfUG9zICAgICAgICAgICAgICAgICAgICg3VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0JfRVA1Ul9DVFJfVFhfTXNrICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFVTQl9FUDVSX0NUUl9UWF9Qb3MpICAgIC8qITwgMHgwMDAwMDA4MCAqLw0KI2RlZmluZSBVU0JfRVA1Ul9DVFJfVFggICAgICAgICAgICAgICAgICAgICAgIFVTQl9FUDVSX0NUUl9UWF9Nc2sgICAgICAgICAgICAgIC8qITxDb3JyZWN0IFRyYW5zZmVyIGZvciB0cmFuc21pc3Npb24gKi8NCiNkZWZpbmUgVVNCX0VQNVJfRVBfS0lORF9Qb3MgICAgICAgICAgICAgICAgICAoOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNCX0VQNVJfRVBfS0lORF9Nc2sgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBVU0JfRVA1Ul9FUF9LSU5EX1BvcykgICAvKiE8IDB4MDAwMDAxMDAgKi8NCiNkZWZpbmUgVVNCX0VQNVJfRVBfS0lORCAgICAgICAgICAgICAgICAgICAgICBVU0JfRVA1Ul9FUF9LSU5EX01zayAgICAgICAgICAgICAvKiE8RW5kcG9pbnQgS2luZCAqLw0KDQojZGVmaW5lIFVTQl9FUDVSX0VQX1RZUEVfUG9zICAgICAgICAgICAgICAgICAgKDlVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQl9FUDVSX0VQX1RZUEVfTXNrICAgICAgICAgICAgICAgICAgKDB4M1UgPDwgVVNCX0VQNVJfRVBfVFlQRV9Qb3MpICAgLyohPCAweDAwMDAwNjAwICovDQojZGVmaW5lIFVTQl9FUDVSX0VQX1RZUEUgICAgICAgICAgICAgICAgICAgICAgVVNCX0VQNVJfRVBfVFlQRV9Nc2sgICAgICAgICAgICAgLyohPEVQX1RZUEVbMTowXSBiaXRzIChFbmRwb2ludCB0eXBlKSAqLw0KI2RlZmluZSBVU0JfRVA1Ul9FUF9UWVBFXzAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFVTQl9FUDVSX0VQX1RZUEVfUG9zKSAgIC8qITwgMHgwMDAwMDIwMCAqLw0KI2RlZmluZSBVU0JfRVA1Ul9FUF9UWVBFXzEgICAgICAgICAgICAgICAgICAgICgweDJVIDw8IFVTQl9FUDVSX0VQX1RZUEVfUG9zKSAgIC8qITwgMHgwMDAwMDQwMCAqLw0KDQojZGVmaW5lIFVTQl9FUDVSX1NFVFVQX1BvcyAgICAgICAgICAgICAgICAgICAgKDExVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQl9FUDVSX1NFVFVQX01zayAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVVNCX0VQNVJfU0VUVVBfUG9zKSAgICAgLyohPCAweDAwMDAwODAwICovDQojZGVmaW5lIFVTQl9FUDVSX1NFVFVQICAgICAgICAgICAgICAgICAgICAgICAgVVNCX0VQNVJfU0VUVVBfTXNrICAgICAgICAgICAgICAgLyohPFNldHVwIHRyYW5zYWN0aW9uIGNvbXBsZXRlZCAqLw0KDQojZGVmaW5lIFVTQl9FUDVSX1NUQVRfUlhfUG9zICAgICAgICAgICAgICAgICAgKDEyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQl9FUDVSX1NUQVRfUlhfTXNrICAgICAgICAgICAgICAgICAgKDB4M1UgPDwgVVNCX0VQNVJfU1RBVF9SWF9Qb3MpICAgLyohPCAweDAwMDAzMDAwICovDQojZGVmaW5lIFVTQl9FUDVSX1NUQVRfUlggICAgICAgICAgICAgICAgICAgICAgVVNCX0VQNVJfU1RBVF9SWF9Nc2sgICAgICAgICAgICAgLyohPFNUQVRfUlhbMTowXSBiaXRzIChTdGF0dXMgYml0cywgZm9yIHJlY2VwdGlvbiB0cmFuc2ZlcnMpICovDQojZGVmaW5lIFVTQl9FUDVSX1NUQVRfUlhfMCAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVVNCX0VQNVJfU1RBVF9SWF9Qb3MpICAgLyohPCAweDAwMDAxMDAwICovDQojZGVmaW5lIFVTQl9FUDVSX1NUQVRfUlhfMSAgICAgICAgICAgICAgICAgICAgKDB4MlUgPDwgVVNCX0VQNVJfU1RBVF9SWF9Qb3MpICAgLyohPCAweDAwMDAyMDAwICovDQoNCiNkZWZpbmUgVVNCX0VQNVJfRFRPR19SWF9Qb3MgICAgICAgICAgICAgICAgICAoMTRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNCX0VQNVJfRFRPR19SWF9Nc2sgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBVU0JfRVA1Ul9EVE9HX1JYX1BvcykgICAvKiE8IDB4MDAwMDQwMDAgKi8NCiNkZWZpbmUgVVNCX0VQNVJfRFRPR19SWCAgICAgICAgICAgICAgICAgICAgICBVU0JfRVA1Ul9EVE9HX1JYX01zayAgICAgICAgICAgICAvKiE8RGF0YSBUb2dnbGUsIGZvciByZWNlcHRpb24gdHJhbnNmZXJzICovDQojZGVmaW5lIFVTQl9FUDVSX0NUUl9SWF9Qb3MgICAgICAgICAgICAgICAgICAgKDE1VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQl9FUDVSX0NUUl9SWF9Nc2sgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVVNCX0VQNVJfQ1RSX1JYX1BvcykgICAgLyohPCAweDAwMDA4MDAwICovDQojZGVmaW5lIFVTQl9FUDVSX0NUUl9SWCAgICAgICAgICAgICAgICAgICAgICAgVVNCX0VQNVJfQ1RSX1JYX01zayAgICAgICAgICAgICAgLyohPENvcnJlY3QgVHJhbnNmZXIgZm9yIHJlY2VwdGlvbiAqLw0KDQovKioqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFVTQl9FUDZSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBVU0JfRVA2Ul9FQV9Qb3MgICAgICAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0JfRVA2Ul9FQV9Nc2sgICAgICAgICAgICAgICAgICAgICAgICgweEZVIDw8IFVTQl9FUDZSX0VBX1BvcykgICAgICAgIC8qITwgMHgwMDAwMDAwRiAqLw0KI2RlZmluZSBVU0JfRVA2Ul9FQSAgICAgICAgICAgICAgICAgICAgICAgICAgIFVTQl9FUDZSX0VBX01zayAgICAgICAgICAgICAgICAgIC8qITxFbmRwb2ludCBBZGRyZXNzICovDQoNCiNkZWZpbmUgVVNCX0VQNlJfU1RBVF9UWF9Qb3MgICAgICAgICAgICAgICAgICAoNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNCX0VQNlJfU1RBVF9UWF9Nc2sgICAgICAgICAgICAgICAgICAoMHgzVSA8PCBVU0JfRVA2Ul9TVEFUX1RYX1BvcykgICAvKiE8IDB4MDAwMDAwMzAgKi8NCiNkZWZpbmUgVVNCX0VQNlJfU1RBVF9UWCAgICAgICAgICAgICAgICAgICAgICBVU0JfRVA2Ul9TVEFUX1RYX01zayAgICAgICAgICAgICAvKiE8U1RBVF9UWFsxOjBdIGJpdHMgKFN0YXR1cyBiaXRzLCBmb3IgdHJhbnNtaXNzaW9uIHRyYW5zZmVycykgKi8NCiNkZWZpbmUgVVNCX0VQNlJfU1RBVF9UWF8wICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBVU0JfRVA2Ul9TVEFUX1RYX1BvcykgICAvKiE8IDB4MDAwMDAwMTAgKi8NCiNkZWZpbmUgVVNCX0VQNlJfU1RBVF9UWF8xICAgICAgICAgICAgICAgICAgICAoMHgyVSA8PCBVU0JfRVA2Ul9TVEFUX1RYX1BvcykgICAvKiE8IDB4MDAwMDAwMjAgKi8NCg0KI2RlZmluZSBVU0JfRVA2Ul9EVE9HX1RYX1BvcyAgICAgICAgICAgICAgICAgICg2VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0JfRVA2Ul9EVE9HX1RYX01zayAgICAgICAgICAgICAgICAgICgweDFVIDw8IFVTQl9FUDZSX0RUT0dfVFhfUG9zKSAgIC8qITwgMHgwMDAwMDA0MCAqLw0KI2RlZmluZSBVU0JfRVA2Ul9EVE9HX1RYICAgICAgICAgICAgICAgICAgICAgIFVTQl9FUDZSX0RUT0dfVFhfTXNrICAgICAgICAgICAgIC8qITxEYXRhIFRvZ2dsZSwgZm9yIHRyYW5zbWlzc2lvbiB0cmFuc2ZlcnMgKi8NCiNkZWZpbmUgVVNCX0VQNlJfQ1RSX1RYX1BvcyAgICAgICAgICAgICAgICAgICAoN1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNCX0VQNlJfQ1RSX1RYX01zayAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBVU0JfRVA2Ul9DVFJfVFhfUG9zKSAgICAvKiE8IDB4MDAwMDAwODAgKi8NCiNkZWZpbmUgVVNCX0VQNlJfQ1RSX1RYICAgICAgICAgICAgICAgICAgICAgICBVU0JfRVA2Ul9DVFJfVFhfTXNrICAgICAgICAgICAgICAvKiE8Q29ycmVjdCBUcmFuc2ZlciBmb3IgdHJhbnNtaXNzaW9uICovDQojZGVmaW5lIFVTQl9FUDZSX0VQX0tJTkRfUG9zICAgICAgICAgICAgICAgICAgKDhVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQl9FUDZSX0VQX0tJTkRfTXNrICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVVNCX0VQNlJfRVBfS0lORF9Qb3MpICAgLyohPCAweDAwMDAwMTAwICovDQojZGVmaW5lIFVTQl9FUDZSX0VQX0tJTkQgICAgICAgICAgICAgICAgICAgICAgVVNCX0VQNlJfRVBfS0lORF9Nc2sgICAgICAgICAgICAgLyohPEVuZHBvaW50IEtpbmQgKi8NCg0KI2RlZmluZSBVU0JfRVA2Ul9FUF9UWVBFX1BvcyAgICAgICAgICAgICAgICAgICg5VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0JfRVA2Ul9FUF9UWVBFX01zayAgICAgICAgICAgICAgICAgICgweDNVIDw8IFVTQl9FUDZSX0VQX1RZUEVfUG9zKSAgIC8qITwgMHgwMDAwMDYwMCAqLw0KI2RlZmluZSBVU0JfRVA2Ul9FUF9UWVBFICAgICAgICAgICAgICAgICAgICAgIFVTQl9FUDZSX0VQX1RZUEVfTXNrICAgICAgICAgICAgIC8qITxFUF9UWVBFWzE6MF0gYml0cyAoRW5kcG9pbnQgdHlwZSkgKi8NCiNkZWZpbmUgVVNCX0VQNlJfRVBfVFlQRV8wICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBVU0JfRVA2Ul9FUF9UWVBFX1BvcykgICAvKiE8IDB4MDAwMDAyMDAgKi8NCiNkZWZpbmUgVVNCX0VQNlJfRVBfVFlQRV8xICAgICAgICAgICAgICAgICAgICAoMHgyVSA8PCBVU0JfRVA2Ul9FUF9UWVBFX1BvcykgICAvKiE8IDB4MDAwMDA0MDAgKi8NCg0KI2RlZmluZSBVU0JfRVA2Ul9TRVRVUF9Qb3MgICAgICAgICAgICAgICAgICAgICgxMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0JfRVA2Ul9TRVRVUF9Nc2sgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFVTQl9FUDZSX1NFVFVQX1BvcykgICAgIC8qITwgMHgwMDAwMDgwMCAqLw0KI2RlZmluZSBVU0JfRVA2Ul9TRVRVUCAgICAgICAgICAgICAgICAgICAgICAgIFVTQl9FUDZSX1NFVFVQX01zayAgICAgICAgICAgICAgIC8qITxTZXR1cCB0cmFuc2FjdGlvbiBjb21wbGV0ZWQgKi8NCg0KI2RlZmluZSBVU0JfRVA2Ul9TVEFUX1JYX1BvcyAgICAgICAgICAgICAgICAgICgxMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0JfRVA2Ul9TVEFUX1JYX01zayAgICAgICAgICAgICAgICAgICgweDNVIDw8IFVTQl9FUDZSX1NUQVRfUlhfUG9zKSAgIC8qITwgMHgwMDAwMzAwMCAqLw0KI2RlZmluZSBVU0JfRVA2Ul9TVEFUX1JYICAgICAgICAgICAgICAgICAgICAgIFVTQl9FUDZSX1NUQVRfUlhfTXNrICAgICAgICAgICAgIC8qITxTVEFUX1JYWzE6MF0gYml0cyAoU3RhdHVzIGJpdHMsIGZvciByZWNlcHRpb24gdHJhbnNmZXJzKSAqLw0KI2RlZmluZSBVU0JfRVA2Ul9TVEFUX1JYXzAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFVTQl9FUDZSX1NUQVRfUlhfUG9zKSAgIC8qITwgMHgwMDAwMTAwMCAqLw0KI2RlZmluZSBVU0JfRVA2Ul9TVEFUX1JYXzEgICAgICAgICAgICAgICAgICAgICgweDJVIDw8IFVTQl9FUDZSX1NUQVRfUlhfUG9zKSAgIC8qITwgMHgwMDAwMjAwMCAqLw0KDQojZGVmaW5lIFVTQl9FUDZSX0RUT0dfUlhfUG9zICAgICAgICAgICAgICAgICAgKDE0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQl9FUDZSX0RUT0dfUlhfTXNrICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVVNCX0VQNlJfRFRPR19SWF9Qb3MpICAgLyohPCAweDAwMDA0MDAwICovDQojZGVmaW5lIFVTQl9FUDZSX0RUT0dfUlggICAgICAgICAgICAgICAgICAgICAgVVNCX0VQNlJfRFRPR19SWF9Nc2sgICAgICAgICAgICAgLyohPERhdGEgVG9nZ2xlLCBmb3IgcmVjZXB0aW9uIHRyYW5zZmVycyAqLw0KI2RlZmluZSBVU0JfRVA2Ul9DVFJfUlhfUG9zICAgICAgICAgICAgICAgICAgICgxNVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0JfRVA2Ul9DVFJfUlhfTXNrICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFVTQl9FUDZSX0NUUl9SWF9Qb3MpICAgIC8qITwgMHgwMDAwODAwMCAqLw0KI2RlZmluZSBVU0JfRVA2Ul9DVFJfUlggICAgICAgICAgICAgICAgICAgICAgIFVTQl9FUDZSX0NUUl9SWF9Nc2sgICAgICAgICAgICAgIC8qITxDb3JyZWN0IFRyYW5zZmVyIGZvciByZWNlcHRpb24gKi8NCg0KLyoqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBVU0JfRVA3UiByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgVVNCX0VQN1JfRUFfUG9zICAgICAgICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNCX0VQN1JfRUFfTXNrICAgICAgICAgICAgICAgICAgICAgICAoMHhGVSA8PCBVU0JfRVA3Ul9FQV9Qb3MpICAgICAgICAvKiE8IDB4MDAwMDAwMEYgKi8NCiNkZWZpbmUgVVNCX0VQN1JfRUEgICAgICAgICAgICAgICAgICAgICAgICAgICBVU0JfRVA3Ul9FQV9Nc2sgICAgICAgICAgICAgICAgICAvKiE8RW5kcG9pbnQgQWRkcmVzcyAqLw0KDQojZGVmaW5lIFVTQl9FUDdSX1NUQVRfVFhfUG9zICAgICAgICAgICAgICAgICAgKDRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQl9FUDdSX1NUQVRfVFhfTXNrICAgICAgICAgICAgICAgICAgKDB4M1UgPDwgVVNCX0VQN1JfU1RBVF9UWF9Qb3MpICAgLyohPCAweDAwMDAwMDMwICovDQojZGVmaW5lIFVTQl9FUDdSX1NUQVRfVFggICAgICAgICAgICAgICAgICAgICAgVVNCX0VQN1JfU1RBVF9UWF9Nc2sgICAgICAgICAgICAgLyohPFNUQVRfVFhbMTowXSBiaXRzIChTdGF0dXMgYml0cywgZm9yIHRyYW5zbWlzc2lvbiB0cmFuc2ZlcnMpICovDQojZGVmaW5lIFVTQl9FUDdSX1NUQVRfVFhfMCAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVVNCX0VQN1JfU1RBVF9UWF9Qb3MpICAgLyohPCAweDAwMDAwMDEwICovDQojZGVmaW5lIFVTQl9FUDdSX1NUQVRfVFhfMSAgICAgICAgICAgICAgICAgICAgKDB4MlUgPDwgVVNCX0VQN1JfU1RBVF9UWF9Qb3MpICAgLyohPCAweDAwMDAwMDIwICovDQoNCiNkZWZpbmUgVVNCX0VQN1JfRFRPR19UWF9Qb3MgICAgICAgICAgICAgICAgICAoNlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNCX0VQN1JfRFRPR19UWF9Nc2sgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBVU0JfRVA3Ul9EVE9HX1RYX1BvcykgICAvKiE8IDB4MDAwMDAwNDAgKi8NCiNkZWZpbmUgVVNCX0VQN1JfRFRPR19UWCAgICAgICAgICAgICAgICAgICAgICBVU0JfRVA3Ul9EVE9HX1RYX01zayAgICAgICAgICAgICAvKiE8RGF0YSBUb2dnbGUsIGZvciB0cmFuc21pc3Npb24gdHJhbnNmZXJzICovDQojZGVmaW5lIFVTQl9FUDdSX0NUUl9UWF9Qb3MgICAgICAgICAgICAgICAgICAgKDdVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQl9FUDdSX0NUUl9UWF9Nc2sgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVVNCX0VQN1JfQ1RSX1RYX1BvcykgICAgLyohPCAweDAwMDAwMDgwICovDQojZGVmaW5lIFVTQl9FUDdSX0NUUl9UWCAgICAgICAgICAgICAgICAgICAgICAgVVNCX0VQN1JfQ1RSX1RYX01zayAgICAgICAgICAgICAgLyohPENvcnJlY3QgVHJhbnNmZXIgZm9yIHRyYW5zbWlzc2lvbiAqLw0KI2RlZmluZSBVU0JfRVA3Ul9FUF9LSU5EX1BvcyAgICAgICAgICAgICAgICAgICg4VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0JfRVA3Ul9FUF9LSU5EX01zayAgICAgICAgICAgICAgICAgICgweDFVIDw8IFVTQl9FUDdSX0VQX0tJTkRfUG9zKSAgIC8qITwgMHgwMDAwMDEwMCAqLw0KI2RlZmluZSBVU0JfRVA3Ul9FUF9LSU5EICAgICAgICAgICAgICAgICAgICAgIFVTQl9FUDdSX0VQX0tJTkRfTXNrICAgICAgICAgICAgIC8qITxFbmRwb2ludCBLaW5kICovDQoNCiNkZWZpbmUgVVNCX0VQN1JfRVBfVFlQRV9Qb3MgICAgICAgICAgICAgICAgICAoOVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNCX0VQN1JfRVBfVFlQRV9Nc2sgICAgICAgICAgICAgICAgICAoMHgzVSA8PCBVU0JfRVA3Ul9FUF9UWVBFX1BvcykgICAvKiE8IDB4MDAwMDA2MDAgKi8NCiNkZWZpbmUgVVNCX0VQN1JfRVBfVFlQRSAgICAgICAgICAgICAgICAgICAgICBVU0JfRVA3Ul9FUF9UWVBFX01zayAgICAgICAgICAgICAvKiE8RVBfVFlQRVsxOjBdIGJpdHMgKEVuZHBvaW50IHR5cGUpICovDQojZGVmaW5lIFVTQl9FUDdSX0VQX1RZUEVfMCAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVVNCX0VQN1JfRVBfVFlQRV9Qb3MpICAgLyohPCAweDAwMDAwMjAwICovDQojZGVmaW5lIFVTQl9FUDdSX0VQX1RZUEVfMSAgICAgICAgICAgICAgICAgICAgKDB4MlUgPDwgVVNCX0VQN1JfRVBfVFlQRV9Qb3MpICAgLyohPCAweDAwMDAwNDAwICovDQoNCiNkZWZpbmUgVVNCX0VQN1JfU0VUVVBfUG9zICAgICAgICAgICAgICAgICAgICAoMTFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNCX0VQN1JfU0VUVVBfTXNrICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBVU0JfRVA3Ul9TRVRVUF9Qb3MpICAgICAvKiE8IDB4MDAwMDA4MDAgKi8NCiNkZWZpbmUgVVNCX0VQN1JfU0VUVVAgICAgICAgICAgICAgICAgICAgICAgICBVU0JfRVA3Ul9TRVRVUF9Nc2sgICAgICAgICAgICAgICAvKiE8U2V0dXAgdHJhbnNhY3Rpb24gY29tcGxldGVkICovDQoNCiNkZWZpbmUgVVNCX0VQN1JfU1RBVF9SWF9Qb3MgICAgICAgICAgICAgICAgICAoMTJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNCX0VQN1JfU1RBVF9SWF9Nc2sgICAgICAgICAgICAgICAgICAoMHgzVSA8PCBVU0JfRVA3Ul9TVEFUX1JYX1BvcykgICAvKiE8IDB4MDAwMDMwMDAgKi8NCiNkZWZpbmUgVVNCX0VQN1JfU1RBVF9SWCAgICAgICAgICAgICAgICAgICAgICBVU0JfRVA3Ul9TVEFUX1JYX01zayAgICAgICAgICAgICAvKiE8U1RBVF9SWFsxOjBdIGJpdHMgKFN0YXR1cyBiaXRzLCBmb3IgcmVjZXB0aW9uIHRyYW5zZmVycykgKi8NCiNkZWZpbmUgVVNCX0VQN1JfU1RBVF9SWF8wICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBVU0JfRVA3Ul9TVEFUX1JYX1BvcykgICAvKiE8IDB4MDAwMDEwMDAgKi8NCiNkZWZpbmUgVVNCX0VQN1JfU1RBVF9SWF8xICAgICAgICAgICAgICAgICAgICAoMHgyVSA8PCBVU0JfRVA3Ul9TVEFUX1JYX1BvcykgICAvKiE8IDB4MDAwMDIwMDAgKi8NCg0KI2RlZmluZSBVU0JfRVA3Ul9EVE9HX1JYX1BvcyAgICAgICAgICAgICAgICAgICgxNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0JfRVA3Ul9EVE9HX1JYX01zayAgICAgICAgICAgICAgICAgICgweDFVIDw8IFVTQl9FUDdSX0RUT0dfUlhfUG9zKSAgIC8qITwgMHgwMDAwNDAwMCAqLw0KI2RlZmluZSBVU0JfRVA3Ul9EVE9HX1JYICAgICAgICAgICAgICAgICAgICAgIFVTQl9FUDdSX0RUT0dfUlhfTXNrICAgICAgICAgICAgIC8qITxEYXRhIFRvZ2dsZSwgZm9yIHJlY2VwdGlvbiB0cmFuc2ZlcnMgKi8NCiNkZWZpbmUgVVNCX0VQN1JfQ1RSX1JYX1BvcyAgICAgICAgICAgICAgICAgICAoMTVVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNCX0VQN1JfQ1RSX1JYX01zayAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBVU0JfRVA3Ul9DVFJfUlhfUG9zKSAgICAvKiE8IDB4MDAwMDgwMDAgKi8NCiNkZWZpbmUgVVNCX0VQN1JfQ1RSX1JYICAgICAgICAgICAgICAgICAgICAgICBVU0JfRVA3Ul9DVFJfUlhfTXNrICAgICAgICAgICAgICAvKiE8Q29ycmVjdCBUcmFuc2ZlciBmb3IgcmVjZXB0aW9uICovDQoNCi8qITxDb21tb24gcmVnaXN0ZXJzICovDQoNCiNkZWZpbmUgIFVTQl9DTlRSICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoVVNCX0JBU0UgKyAweDAwMDAwMDQwVSkgICAgICAgICAgLyohPCBDb250cm9sIHJlZ2lzdGVyICovDQojZGVmaW5lICBVU0JfSVNUUiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKFVTQl9CQVNFICsgMHgwMDAwMDA0NFUpICAgICAgICAgIC8qITwgSW50ZXJydXB0IHN0YXR1cyByZWdpc3RlciAqLw0KI2RlZmluZSAgVVNCX0ZOUiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChVU0JfQkFTRSArIDB4MDAwMDAwNDhVKSAgICAgICAgICAvKiE8IEZyYW1lIG51bWJlciByZWdpc3RlciAqLw0KI2RlZmluZSAgVVNCX0RBRERSICAgICAgICAgICAgICAgICAgICAgICAgICAgIChVU0JfQkFTRSArIDB4MDAwMDAwNENVKSAgICAgICAgICAvKiE8IERldmljZSBhZGRyZXNzIHJlZ2lzdGVyICovDQojZGVmaW5lICBVU0JfQlRBQkxFICAgICAgICAgICAgICAgICAgICAgICAgICAgKFVTQl9CQVNFICsgMHgwMDAwMDA1MFUpICAgICAgICAgIC8qITwgQnVmZmVyIFRhYmxlIGFkZHJlc3MgcmVnaXN0ZXIgKi8NCg0KDQoNCi8qKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgVVNCX0NOVFIgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIFVTQl9DTlRSX0ZSRVNfUG9zICAgICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQl9DTlRSX0ZSRVNfTXNrICAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVVNCX0NOVFJfRlJFU19Qb3MpICAgICAgLyohPCAweDAwMDAwMDAxICovDQojZGVmaW5lIFVTQl9DTlRSX0ZSRVMgICAgICAgICAgICAgICAgICAgICAgICAgVVNCX0NOVFJfRlJFU19Nc2sgICAgICAgICAgICAgICAgLyohPEZvcmNlIFVTQiBSZXNldCAqLw0KI2RlZmluZSBVU0JfQ05UUl9QRFdOX1BvcyAgICAgICAgICAgICAgICAgICAgICgxVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0JfQ05UUl9QRFdOX01zayAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFVTQl9DTlRSX1BEV05fUG9zKSAgICAgIC8qITwgMHgwMDAwMDAwMiAqLw0KI2RlZmluZSBVU0JfQ05UUl9QRFdOICAgICAgICAgICAgICAgICAgICAgICAgIFVTQl9DTlRSX1BEV05fTXNrICAgICAgICAgICAgICAgIC8qITxQb3dlciBkb3duICovDQojZGVmaW5lIFVTQl9DTlRSX0xQTU9ERV9Qb3MgICAgICAgICAgICAgICAgICAgKDJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQl9DTlRSX0xQTU9ERV9Nc2sgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVVNCX0NOVFJfTFBNT0RFX1BvcykgICAgLyohPCAweDAwMDAwMDA0ICovDQojZGVmaW5lIFVTQl9DTlRSX0xQTU9ERSAgICAgICAgICAgICAgICAgICAgICAgVVNCX0NOVFJfTFBNT0RFX01zayAgICAgICAgICAgICAgLyohPExvdy1wb3dlciBtb2RlICovDQojZGVmaW5lIFVTQl9DTlRSX0ZTVVNQX1BvcyAgICAgICAgICAgICAgICAgICAgKDNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQl9DTlRSX0ZTVVNQX01zayAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVVNCX0NOVFJfRlNVU1BfUG9zKSAgICAgLyohPCAweDAwMDAwMDA4ICovDQojZGVmaW5lIFVTQl9DTlRSX0ZTVVNQICAgICAgICAgICAgICAgICAgICAgICAgVVNCX0NOVFJfRlNVU1BfTXNrICAgICAgICAgICAgICAgLyohPEZvcmNlIHN1c3BlbmQgKi8NCiNkZWZpbmUgVVNCX0NOVFJfUkVTVU1FX1BvcyAgICAgICAgICAgICAgICAgICAoNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNCX0NOVFJfUkVTVU1FX01zayAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBVU0JfQ05UUl9SRVNVTUVfUG9zKSAgICAvKiE8IDB4MDAwMDAwMTAgKi8NCiNkZWZpbmUgVVNCX0NOVFJfUkVTVU1FICAgICAgICAgICAgICAgICAgICAgICBVU0JfQ05UUl9SRVNVTUVfTXNrICAgICAgICAgICAgICAvKiE8UmVzdW1lIHJlcXVlc3QgKi8NCiNkZWZpbmUgVVNCX0NOVFJfRVNPRk1fUG9zICAgICAgICAgICAgICAgICAgICAoOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNCX0NOVFJfRVNPRk1fTXNrICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBVU0JfQ05UUl9FU09GTV9Qb3MpICAgICAvKiE8IDB4MDAwMDAxMDAgKi8NCiNkZWZpbmUgVVNCX0NOVFJfRVNPRk0gICAgICAgICAgICAgICAgICAgICAgICBVU0JfQ05UUl9FU09GTV9Nc2sgICAgICAgICAgICAgICAvKiE8RXhwZWN0ZWQgU3RhcnQgT2YgRnJhbWUgSW50ZXJydXB0IE1hc2sgKi8NCiNkZWZpbmUgVVNCX0NOVFJfU09GTV9Qb3MgICAgICAgICAgICAgICAgICAgICAoOVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNCX0NOVFJfU09GTV9Nc2sgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBVU0JfQ05UUl9TT0ZNX1BvcykgICAgICAvKiE8IDB4MDAwMDAyMDAgKi8NCiNkZWZpbmUgVVNCX0NOVFJfU09GTSAgICAgICAgICAgICAgICAgICAgICAgICBVU0JfQ05UUl9TT0ZNX01zayAgICAgICAgICAgICAgICAvKiE8U3RhcnQgT2YgRnJhbWUgSW50ZXJydXB0IE1hc2sgKi8NCiNkZWZpbmUgVVNCX0NOVFJfUkVTRVRNX1BvcyAgICAgICAgICAgICAgICAgICAoMTBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNCX0NOVFJfUkVTRVRNX01zayAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBVU0JfQ05UUl9SRVNFVE1fUG9zKSAgICAvKiE8IDB4MDAwMDA0MDAgKi8NCiNkZWZpbmUgVVNCX0NOVFJfUkVTRVRNICAgICAgICAgICAgICAgICAgICAgICBVU0JfQ05UUl9SRVNFVE1fTXNrICAgICAgICAgICAgICAvKiE8UkVTRVQgSW50ZXJydXB0IE1hc2sgKi8NCiNkZWZpbmUgVVNCX0NOVFJfU1VTUE1fUG9zICAgICAgICAgICAgICAgICAgICAoMTFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNCX0NOVFJfU1VTUE1fTXNrICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBVU0JfQ05UUl9TVVNQTV9Qb3MpICAgICAvKiE8IDB4MDAwMDA4MDAgKi8NCiNkZWZpbmUgVVNCX0NOVFJfU1VTUE0gICAgICAgICAgICAgICAgICAgICAgICBVU0JfQ05UUl9TVVNQTV9Nc2sgICAgICAgICAgICAgICAvKiE8U3VzcGVuZCBtb2RlIEludGVycnVwdCBNYXNrICovDQojZGVmaW5lIFVTQl9DTlRSX1dLVVBNX1BvcyAgICAgICAgICAgICAgICAgICAgKDEyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQl9DTlRSX1dLVVBNX01zayAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVVNCX0NOVFJfV0tVUE1fUG9zKSAgICAgLyohPCAweDAwMDAxMDAwICovDQojZGVmaW5lIFVTQl9DTlRSX1dLVVBNICAgICAgICAgICAgICAgICAgICAgICAgVVNCX0NOVFJfV0tVUE1fTXNrICAgICAgICAgICAgICAgLyohPFdha2V1cCBJbnRlcnJ1cHQgTWFzayAqLw0KI2RlZmluZSBVU0JfQ05UUl9FUlJNX1BvcyAgICAgICAgICAgICAgICAgICAgICgxM1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0JfQ05UUl9FUlJNX01zayAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFVTQl9DTlRSX0VSUk1fUG9zKSAgICAgIC8qITwgMHgwMDAwMjAwMCAqLw0KI2RlZmluZSBVU0JfQ05UUl9FUlJNICAgICAgICAgICAgICAgICAgICAgICAgIFVTQl9DTlRSX0VSUk1fTXNrICAgICAgICAgICAgICAgIC8qITxFcnJvciBJbnRlcnJ1cHQgTWFzayAqLw0KI2RlZmluZSBVU0JfQ05UUl9QTUFPVlJNX1BvcyAgICAgICAgICAgICAgICAgICgxNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0JfQ05UUl9QTUFPVlJNX01zayAgICAgICAgICAgICAgICAgICgweDFVIDw8IFVTQl9DTlRSX1BNQU9WUk1fUG9zKSAgIC8qITwgMHgwMDAwNDAwMCAqLw0KI2RlZmluZSBVU0JfQ05UUl9QTUFPVlJNICAgICAgICAgICAgICAgICAgICAgIFVTQl9DTlRSX1BNQU9WUk1fTXNrICAgICAgICAgICAgIC8qITxQYWNrZXQgTWVtb3J5IEFyZWEgT3ZlciAvIFVuZGVycnVuIEludGVycnVwdCBNYXNrICovDQojZGVmaW5lIFVTQl9DTlRSX0NUUk1fUG9zICAgICAgICAgICAgICAgICAgICAgKDE1VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQl9DTlRSX0NUUk1fTXNrICAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVVNCX0NOVFJfQ1RSTV9Qb3MpICAgICAgLyohPCAweDAwMDA4MDAwICovDQojZGVmaW5lIFVTQl9DTlRSX0NUUk0gICAgICAgICAgICAgICAgICAgICAgICAgVVNCX0NOVFJfQ1RSTV9Nc2sgICAgICAgICAgICAgICAgLyohPENvcnJlY3QgVHJhbnNmZXIgSW50ZXJydXB0IE1hc2sgKi8NCg0KLyoqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBVU0JfSVNUUiByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgVVNCX0lTVFJfRVBfSURfUG9zICAgICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNCX0lTVFJfRVBfSURfTXNrICAgICAgICAgICAgICAgICAgICAoMHhGVSA8PCBVU0JfSVNUUl9FUF9JRF9Qb3MpICAgICAvKiE8IDB4MDAwMDAwMEYgKi8NCiNkZWZpbmUgVVNCX0lTVFJfRVBfSUQgICAgICAgICAgICAgICAgICAgICAgICBVU0JfSVNUUl9FUF9JRF9Nc2sgICAgICAgICAgICAgICAvKiE8RW5kcG9pbnQgSWRlbnRpZmllciAqLw0KI2RlZmluZSBVU0JfSVNUUl9ESVJfUG9zICAgICAgICAgICAgICAgICAgICAgICg0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0JfSVNUUl9ESVJfTXNrICAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFVTQl9JU1RSX0RJUl9Qb3MpICAgICAgIC8qITwgMHgwMDAwMDAxMCAqLw0KI2RlZmluZSBVU0JfSVNUUl9ESVIgICAgICAgICAgICAgICAgICAgICAgICAgIFVTQl9JU1RSX0RJUl9Nc2sgICAgICAgICAgICAgICAgIC8qITxEaXJlY3Rpb24gb2YgdHJhbnNhY3Rpb24gKi8NCiNkZWZpbmUgVVNCX0lTVFJfRVNPRl9Qb3MgICAgICAgICAgICAgICAgICAgICAoOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNCX0lTVFJfRVNPRl9Nc2sgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBVU0JfSVNUUl9FU09GX1BvcykgICAgICAvKiE8IDB4MDAwMDAxMDAgKi8NCiNkZWZpbmUgVVNCX0lTVFJfRVNPRiAgICAgICAgICAgICAgICAgICAgICAgICBVU0JfSVNUUl9FU09GX01zayAgICAgICAgICAgICAgICAvKiE8RXhwZWN0ZWQgU3RhcnQgT2YgRnJhbWUgKi8NCiNkZWZpbmUgVVNCX0lTVFJfU09GX1BvcyAgICAgICAgICAgICAgICAgICAgICAoOVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNCX0lTVFJfU09GX01zayAgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBVU0JfSVNUUl9TT0ZfUG9zKSAgICAgICAvKiE8IDB4MDAwMDAyMDAgKi8NCiNkZWZpbmUgVVNCX0lTVFJfU09GICAgICAgICAgICAgICAgICAgICAgICAgICBVU0JfSVNUUl9TT0ZfTXNrICAgICAgICAgICAgICAgICAvKiE8U3RhcnQgT2YgRnJhbWUgKi8NCiNkZWZpbmUgVVNCX0lTVFJfUkVTRVRfUG9zICAgICAgICAgICAgICAgICAgICAoMTBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNCX0lTVFJfUkVTRVRfTXNrICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBVU0JfSVNUUl9SRVNFVF9Qb3MpICAgICAvKiE8IDB4MDAwMDA0MDAgKi8NCiNkZWZpbmUgVVNCX0lTVFJfUkVTRVQgICAgICAgICAgICAgICAgICAgICAgICBVU0JfSVNUUl9SRVNFVF9Nc2sgICAgICAgICAgICAgICAvKiE8VVNCIFJFU0VUIHJlcXVlc3QgKi8NCiNkZWZpbmUgVVNCX0lTVFJfU1VTUF9Qb3MgICAgICAgICAgICAgICAgICAgICAoMTFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNCX0lTVFJfU1VTUF9Nc2sgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBVU0JfSVNUUl9TVVNQX1BvcykgICAgICAvKiE8IDB4MDAwMDA4MDAgKi8NCiNkZWZpbmUgVVNCX0lTVFJfU1VTUCAgICAgICAgICAgICAgICAgICAgICAgICBVU0JfSVNUUl9TVVNQX01zayAgICAgICAgICAgICAgICAvKiE8U3VzcGVuZCBtb2RlIHJlcXVlc3QgKi8NCiNkZWZpbmUgVVNCX0lTVFJfV0tVUF9Qb3MgICAgICAgICAgICAgICAgICAgICAoMTJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNCX0lTVFJfV0tVUF9Nc2sgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBVU0JfSVNUUl9XS1VQX1BvcykgICAgICAvKiE8IDB4MDAwMDEwMDAgKi8NCiNkZWZpbmUgVVNCX0lTVFJfV0tVUCAgICAgICAgICAgICAgICAgICAgICAgICBVU0JfSVNUUl9XS1VQX01zayAgICAgICAgICAgICAgICAvKiE8V2FrZSB1cCAqLw0KI2RlZmluZSBVU0JfSVNUUl9FUlJfUG9zICAgICAgICAgICAgICAgICAgICAgICgxM1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0JfSVNUUl9FUlJfTXNrICAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFVTQl9JU1RSX0VSUl9Qb3MpICAgICAgIC8qITwgMHgwMDAwMjAwMCAqLw0KI2RlZmluZSBVU0JfSVNUUl9FUlIgICAgICAgICAgICAgICAgICAgICAgICAgIFVTQl9JU1RSX0VSUl9Nc2sgICAgICAgICAgICAgICAgIC8qITxFcnJvciAqLw0KI2RlZmluZSBVU0JfSVNUUl9QTUFPVlJfUG9zICAgICAgICAgICAgICAgICAgICgxNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0JfSVNUUl9QTUFPVlJfTXNrICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFVTQl9JU1RSX1BNQU9WUl9Qb3MpICAgIC8qITwgMHgwMDAwNDAwMCAqLw0KI2RlZmluZSBVU0JfSVNUUl9QTUFPVlIgICAgICAgICAgICAgICAgICAgICAgIFVTQl9JU1RSX1BNQU9WUl9Nc2sgICAgICAgICAgICAgIC8qITxQYWNrZXQgTWVtb3J5IEFyZWEgT3ZlciAvIFVuZGVycnVuICovDQojZGVmaW5lIFVTQl9JU1RSX0NUUl9Qb3MgICAgICAgICAgICAgICAgICAgICAgKDE1VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQl9JU1RSX0NUUl9Nc2sgICAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVVNCX0lTVFJfQ1RSX1BvcykgICAgICAgLyohPCAweDAwMDA4MDAwICovDQojZGVmaW5lIFVTQl9JU1RSX0NUUiAgICAgICAgICAgICAgICAgICAgICAgICAgVVNCX0lTVFJfQ1RSX01zayAgICAgICAgICAgICAgICAgLyohPENvcnJlY3QgVHJhbnNmZXIgKi8NCg0KI2RlZmluZSAgVVNCX0NMUl9DVFIgICAgICAgICAgICAgICAgICAgICAgICAgICh+VVNCX0lTVFJfQ1RSKSAgICAgICAgICAgICAgICAgIC8qITwgY2xlYXIgQ29ycmVjdCBUUmFuc2ZlciBiaXQgKi8NCiNkZWZpbmUgIFVTQl9DTFJfUE1BT1ZSTSAgICAgICAgICAgICAgICAgICAgICAoflVTQl9JU1RSX1BNQU9WUikgICAgICAgICAgICAgICAvKiE8IGNsZWFyIERNQSBPVmVSL3VuZGVycnVuIGJpdCovDQojZGVmaW5lICBVU0JfQ0xSX0VSUiAgICAgICAgICAgICAgICAgICAgICAgICAgKH5VU0JfSVNUUl9FUlIpICAgICAgICAgICAgICAgICAgLyohPCBjbGVhciBFUlJvciBiaXQgKi8NCiNkZWZpbmUgIFVTQl9DTFJfV0tVUCAgICAgICAgICAgICAgICAgICAgICAgICAoflVTQl9JU1RSX1dLVVApICAgICAgICAgICAgICAgICAvKiE8IGNsZWFyIFdhS2UgVVAgYml0ICovDQojZGVmaW5lICBVU0JfQ0xSX1NVU1AgICAgICAgICAgICAgICAgICAgICAgICAgKH5VU0JfSVNUUl9TVVNQKSAgICAgICAgICAgICAgICAgLyohPCBjbGVhciBTVVNQZW5kIGJpdCAqLw0KI2RlZmluZSAgVVNCX0NMUl9SRVNFVCAgICAgICAgICAgICAgICAgICAgICAgICh+VVNCX0lTVFJfUkVTRVQpICAgICAgICAgICAgICAgIC8qITwgY2xlYXIgUkVTRVQgYml0ICovDQojZGVmaW5lICBVU0JfQ0xSX1NPRiAgICAgICAgICAgICAgICAgICAgICAgICAgKH5VU0JfSVNUUl9TT0YpICAgICAgICAgICAgICAgICAgLyohPCBjbGVhciBTdGFydCBPZiBGcmFtZSBiaXQgKi8NCiNkZWZpbmUgIFVTQl9DTFJfRVNPRiAgICAgICAgICAgICAgICAgICAgICAgICAoflVTQl9JU1RSX0VTT0YpICAgICAgICAgICAgICAgICAvKiE8IGNsZWFyIEV4cGVjdGVkIFN0YXJ0IE9mIEZyYW1lIGJpdCAqLw0KDQoNCi8qKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgVVNCX0ZOUiByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIFVTQl9GTlJfRk5fUG9zICAgICAgICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQl9GTlJfRk5fTXNrICAgICAgICAgICAgICAgICAgICAgICAgKDB4N0ZGVSA8PCBVU0JfRk5SX0ZOX1BvcykgICAgICAgLyohPCAweDAwMDAwN0ZGICovDQojZGVmaW5lIFVTQl9GTlJfRk4gICAgICAgICAgICAgICAgICAgICAgICAgICAgVVNCX0ZOUl9GTl9Nc2sgICAgICAgICAgICAgICAgICAgLyohPEZyYW1lIE51bWJlciAqLw0KI2RlZmluZSBVU0JfRk5SX0xTT0ZfUG9zICAgICAgICAgICAgICAgICAgICAgICgxMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0JfRk5SX0xTT0ZfTXNrICAgICAgICAgICAgICAgICAgICAgICgweDNVIDw8IFVTQl9GTlJfTFNPRl9Qb3MpICAgICAgIC8qITwgMHgwMDAwMTgwMCAqLw0KI2RlZmluZSBVU0JfRk5SX0xTT0YgICAgICAgICAgICAgICAgICAgICAgICAgIFVTQl9GTlJfTFNPRl9Nc2sgICAgICAgICAgICAgICAgIC8qITxMb3N0IFNPRiAqLw0KI2RlZmluZSBVU0JfRk5SX0xDS19Qb3MgICAgICAgICAgICAgICAgICAgICAgICgxM1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0JfRk5SX0xDS19Nc2sgICAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFVTQl9GTlJfTENLX1BvcykgICAgICAgIC8qITwgMHgwMDAwMjAwMCAqLw0KI2RlZmluZSBVU0JfRk5SX0xDSyAgICAgICAgICAgICAgICAgICAgICAgICAgIFVTQl9GTlJfTENLX01zayAgICAgICAgICAgICAgICAgIC8qITxMb2NrZWQgKi8NCiNkZWZpbmUgVVNCX0ZOUl9SWERNX1BvcyAgICAgICAgICAgICAgICAgICAgICAoMTRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNCX0ZOUl9SWERNX01zayAgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBVU0JfRk5SX1JYRE1fUG9zKSAgICAgICAvKiE8IDB4MDAwMDQwMDAgKi8NCiNkZWZpbmUgVVNCX0ZOUl9SWERNICAgICAgICAgICAgICAgICAgICAgICAgICBVU0JfRk5SX1JYRE1fTXNrICAgICAgICAgICAgICAgICAvKiE8UmVjZWl2ZSBEYXRhIC0gTGluZSBTdGF0dXMgKi8NCiNkZWZpbmUgVVNCX0ZOUl9SWERQX1BvcyAgICAgICAgICAgICAgICAgICAgICAoMTVVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNCX0ZOUl9SWERQX01zayAgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBVU0JfRk5SX1JYRFBfUG9zKSAgICAgICAvKiE8IDB4MDAwMDgwMDAgKi8NCiNkZWZpbmUgVVNCX0ZOUl9SWERQICAgICAgICAgICAgICAgICAgICAgICAgICBVU0JfRk5SX1JYRFBfTXNrICAgICAgICAgICAgICAgICAvKiE8UmVjZWl2ZSBEYXRhICsgTGluZSBTdGF0dXMgKi8NCg0KLyoqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFVTQl9EQUREUiByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgVVNCX0RBRERSX0FERF9Qb3MgICAgICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNCX0RBRERSX0FERF9Nc2sgICAgICAgICAgICAgICAgICAgICAoMHg3RlUgPDwgVVNCX0RBRERSX0FERF9Qb3MpICAgICAvKiE8IDB4MDAwMDAwN0YgKi8NCiNkZWZpbmUgVVNCX0RBRERSX0FERCAgICAgICAgICAgICAgICAgICAgICAgICBVU0JfREFERFJfQUREX01zayAgICAgICAgICAgICAgICAvKiE8QUREWzY6MF0gYml0cyAoRGV2aWNlIEFkZHJlc3MpICovDQojZGVmaW5lIFVTQl9EQUREUl9BREQwX1BvcyAgICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQl9EQUREUl9BREQwX01zayAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVVNCX0RBRERSX0FERDBfUG9zKSAgICAgLyohPCAweDAwMDAwMDAxICovDQojZGVmaW5lIFVTQl9EQUREUl9BREQwICAgICAgICAgICAgICAgICAgICAgICAgVVNCX0RBRERSX0FERDBfTXNrICAgICAgICAgICAgICAgLyohPEJpdCAwICovDQojZGVmaW5lIFVTQl9EQUREUl9BREQxX1BvcyAgICAgICAgICAgICAgICAgICAgKDFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQl9EQUREUl9BREQxX01zayAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVVNCX0RBRERSX0FERDFfUG9zKSAgICAgLyohPCAweDAwMDAwMDAyICovDQojZGVmaW5lIFVTQl9EQUREUl9BREQxICAgICAgICAgICAgICAgICAgICAgICAgVVNCX0RBRERSX0FERDFfTXNrICAgICAgICAgICAgICAgLyohPEJpdCAxICovDQojZGVmaW5lIFVTQl9EQUREUl9BREQyX1BvcyAgICAgICAgICAgICAgICAgICAgKDJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQl9EQUREUl9BREQyX01zayAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVVNCX0RBRERSX0FERDJfUG9zKSAgICAgLyohPCAweDAwMDAwMDA0ICovDQojZGVmaW5lIFVTQl9EQUREUl9BREQyICAgICAgICAgICAgICAgICAgICAgICAgVVNCX0RBRERSX0FERDJfTXNrICAgICAgICAgICAgICAgLyohPEJpdCAyICovDQojZGVmaW5lIFVTQl9EQUREUl9BREQzX1BvcyAgICAgICAgICAgICAgICAgICAgKDNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQl9EQUREUl9BREQzX01zayAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVVNCX0RBRERSX0FERDNfUG9zKSAgICAgLyohPCAweDAwMDAwMDA4ICovDQojZGVmaW5lIFVTQl9EQUREUl9BREQzICAgICAgICAgICAgICAgICAgICAgICAgVVNCX0RBRERSX0FERDNfTXNrICAgICAgICAgICAgICAgLyohPEJpdCAzICovDQojZGVmaW5lIFVTQl9EQUREUl9BREQ0X1BvcyAgICAgICAgICAgICAgICAgICAgKDRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQl9EQUREUl9BREQ0X01zayAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVVNCX0RBRERSX0FERDRfUG9zKSAgICAgLyohPCAweDAwMDAwMDEwICovDQojZGVmaW5lIFVTQl9EQUREUl9BREQ0ICAgICAgICAgICAgICAgICAgICAgICAgVVNCX0RBRERSX0FERDRfTXNrICAgICAgICAgICAgICAgLyohPEJpdCA0ICovDQojZGVmaW5lIFVTQl9EQUREUl9BREQ1X1BvcyAgICAgICAgICAgICAgICAgICAgKDVVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQl9EQUREUl9BREQ1X01zayAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVVNCX0RBRERSX0FERDVfUG9zKSAgICAgLyohPCAweDAwMDAwMDIwICovDQojZGVmaW5lIFVTQl9EQUREUl9BREQ1ICAgICAgICAgICAgICAgICAgICAgICAgVVNCX0RBRERSX0FERDVfTXNrICAgICAgICAgICAgICAgLyohPEJpdCA1ICovDQojZGVmaW5lIFVTQl9EQUREUl9BREQ2X1BvcyAgICAgICAgICAgICAgICAgICAgKDZVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQl9EQUREUl9BREQ2X01zayAgICAgICAgICAgICAgICAgICAgKDB4MVUgPDwgVVNCX0RBRERSX0FERDZfUG9zKSAgICAgLyohPCAweDAwMDAwMDQwICovDQojZGVmaW5lIFVTQl9EQUREUl9BREQ2ICAgICAgICAgICAgICAgICAgICAgICAgVVNCX0RBRERSX0FERDZfTXNrICAgICAgICAgICAgICAgLyohPEJpdCA2ICovDQoNCiNkZWZpbmUgVVNCX0RBRERSX0VGX1BvcyAgICAgICAgICAgICAgICAgICAgICAoN1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNCX0RBRERSX0VGX01zayAgICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBVU0JfREFERFJfRUZfUG9zKSAgICAgICAvKiE8IDB4MDAwMDAwODAgKi8NCiNkZWZpbmUgVVNCX0RBRERSX0VGICAgICAgICAgICAgICAgICAgICAgICAgICBVU0JfREFERFJfRUZfTXNrICAgICAgICAgICAgICAgICAvKiE8RW5hYmxlIEZ1bmN0aW9uICovDQoNCi8qKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBVU0JfQlRBQkxFIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKiovICAgIA0KI2RlZmluZSBVU0JfQlRBQkxFX0JUQUJMRV9Qb3MgICAgICAgICAgICAgICAgICgzVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0JfQlRBQkxFX0JUQUJMRV9Nc2sgICAgICAgICAgICAgICAgICgweDFGRkZVIDw8IFVTQl9CVEFCTEVfQlRBQkxFX1BvcykgLyohPCAweDAwMDBGRkY4ICovDQojZGVmaW5lIFVTQl9CVEFCTEVfQlRBQkxFICAgICAgICAgICAgICAgICAgICAgVVNCX0JUQUJMRV9CVEFCTEVfTXNrICAgICAgICAgICAgLyohPEJ1ZmZlciBUYWJsZSAqLw0KDQovKiE8IEJ1ZmZlciBkZXNjcmlwdG9yIHRhYmxlICovDQovKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBVU0JfQUREUjBfVFggcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBVU0JfQUREUjBfVFhfQUREUjBfVFhfUG9zICAgICAgICAgICAgICgxVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0JfQUREUjBfVFhfQUREUjBfVFhfTXNrICAgICAgICAgICAgICgweDdGRkZVIDw8IFVTQl9BRERSMF9UWF9BRERSMF9UWF9Qb3MpIC8qITwgMHgwMDAwRkZGRSAqLw0KI2RlZmluZSBVU0JfQUREUjBfVFhfQUREUjBfVFggICAgICAgICAgICAgICAgIFVTQl9BRERSMF9UWF9BRERSMF9UWF9Nc2sgICAgICAgIC8qITwgVHJhbnNtaXNzaW9uIEJ1ZmZlciBBZGRyZXNzIDAgKi8NCg0KLyoqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgVVNCX0FERFIxX1RYIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgVVNCX0FERFIxX1RYX0FERFIxX1RYX1BvcyAgICAgICAgICAgICAoMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNCX0FERFIxX1RYX0FERFIxX1RYX01zayAgICAgICAgICAgICAoMHg3RkZGVSA8PCBVU0JfQUREUjFfVFhfQUREUjFfVFhfUG9zKSAvKiE8IDB4MDAwMEZGRkUgKi8NCiNkZWZpbmUgVVNCX0FERFIxX1RYX0FERFIxX1RYICAgICAgICAgICAgICAgICBVU0JfQUREUjFfVFhfQUREUjFfVFhfTXNrICAgICAgICAvKiE8IFRyYW5zbWlzc2lvbiBCdWZmZXIgQWRkcmVzcyAxICovDQoNCi8qKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFVTQl9BRERSMl9UWCByZWdpc3RlciAgKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIFVTQl9BRERSMl9UWF9BRERSMl9UWF9Qb3MgICAgICAgICAgICAgKDFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQl9BRERSMl9UWF9BRERSMl9UWF9Nc2sgICAgICAgICAgICAgKDB4N0ZGRlUgPDwgVVNCX0FERFIyX1RYX0FERFIyX1RYX1BvcykgLyohPCAweDAwMDBGRkZFICovDQojZGVmaW5lIFVTQl9BRERSMl9UWF9BRERSMl9UWCAgICAgICAgICAgICAgICAgVVNCX0FERFIyX1RYX0FERFIyX1RYX01zayAgICAgICAgLyohPCBUcmFuc21pc3Npb24gQnVmZmVyIEFkZHJlc3MgMiAqLw0KDQovKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBVU0JfQUREUjNfVFggcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBVU0JfQUREUjNfVFhfQUREUjNfVFhfUG9zICAgICAgICAgICAgICgxVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0JfQUREUjNfVFhfQUREUjNfVFhfTXNrICAgICAgICAgICAgICgweDdGRkZVIDw8IFVTQl9BRERSM19UWF9BRERSM19UWF9Qb3MpIC8qITwgMHgwMDAwRkZGRSAqLw0KI2RlZmluZSBVU0JfQUREUjNfVFhfQUREUjNfVFggICAgICAgICAgICAgICAgIFVTQl9BRERSM19UWF9BRERSM19UWF9Nc2sgICAgICAgIC8qITwgVHJhbnNtaXNzaW9uIEJ1ZmZlciBBZGRyZXNzIDMgKi8NCg0KLyoqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgVVNCX0FERFI0X1RYIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgVVNCX0FERFI0X1RYX0FERFI0X1RYX1BvcyAgICAgICAgICAgICAoMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNCX0FERFI0X1RYX0FERFI0X1RYX01zayAgICAgICAgICAgICAoMHg3RkZGVSA8PCBVU0JfQUREUjRfVFhfQUREUjRfVFhfUG9zKSAvKiE8IDB4MDAwMEZGRkUgKi8NCiNkZWZpbmUgVVNCX0FERFI0X1RYX0FERFI0X1RYICAgICAgICAgICAgICAgICBVU0JfQUREUjRfVFhfQUREUjRfVFhfTXNrICAgICAgICAvKiE8IFRyYW5zbWlzc2lvbiBCdWZmZXIgQWRkcmVzcyA0ICovDQoNCi8qKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFVTQl9BRERSNV9UWCByZWdpc3RlciAgKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIFVTQl9BRERSNV9UWF9BRERSNV9UWF9Qb3MgICAgICAgICAgICAgKDFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQl9BRERSNV9UWF9BRERSNV9UWF9Nc2sgICAgICAgICAgICAgKDB4N0ZGRlUgPDwgVVNCX0FERFI1X1RYX0FERFI1X1RYX1BvcykgLyohPCAweDAwMDBGRkZFICovDQojZGVmaW5lIFVTQl9BRERSNV9UWF9BRERSNV9UWCAgICAgICAgICAgICAgICAgVVNCX0FERFI1X1RYX0FERFI1X1RYX01zayAgICAgICAgLyohPCBUcmFuc21pc3Npb24gQnVmZmVyIEFkZHJlc3MgNSAqLw0KDQovKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBVU0JfQUREUjZfVFggcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBVU0JfQUREUjZfVFhfQUREUjZfVFhfUG9zICAgICAgICAgICAgICgxVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0JfQUREUjZfVFhfQUREUjZfVFhfTXNrICAgICAgICAgICAgICgweDdGRkZVIDw8IFVTQl9BRERSNl9UWF9BRERSNl9UWF9Qb3MpIC8qITwgMHgwMDAwRkZGRSAqLw0KI2RlZmluZSBVU0JfQUREUjZfVFhfQUREUjZfVFggICAgICAgICAgICAgICAgIFVTQl9BRERSNl9UWF9BRERSNl9UWF9Nc2sgICAgICAgIC8qITwgVHJhbnNtaXNzaW9uIEJ1ZmZlciBBZGRyZXNzIDYgKi8NCg0KLyoqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgVVNCX0FERFI3X1RYIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgVVNCX0FERFI3X1RYX0FERFI3X1RYX1BvcyAgICAgICAgICAgICAoMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNCX0FERFI3X1RYX0FERFI3X1RYX01zayAgICAgICAgICAgICAoMHg3RkZGVSA8PCBVU0JfQUREUjdfVFhfQUREUjdfVFhfUG9zKSAvKiE8IDB4MDAwMEZGRkUgKi8NCiNkZWZpbmUgVVNCX0FERFI3X1RYX0FERFI3X1RYICAgICAgICAgICAgICAgICBVU0JfQUREUjdfVFhfQUREUjdfVFhfTXNrICAgICAgICAvKiE8IFRyYW5zbWlzc2lvbiBCdWZmZXIgQWRkcmVzcyA3ICovDQoNCi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovDQoNCi8qKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFVTQl9DT1VOVDBfVFggcmVnaXN0ZXIgICoqKioqKioqKioqKioqKiovDQojZGVmaW5lIFVTQl9DT1VOVDBfVFhfQ09VTlQwX1RYX1BvcyAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQl9DT1VOVDBfVFhfQ09VTlQwX1RYX01zayAgICAgICAgICAgKDB4M0ZGVSA8PCBVU0JfQ09VTlQwX1RYX0NPVU5UMF9UWF9Qb3MpIC8qITwgMHgwMDAwMDNGRiAqLw0KI2RlZmluZSBVU0JfQ09VTlQwX1RYX0NPVU5UMF9UWCAgICAgICAgICAgICAgIFVTQl9DT1VOVDBfVFhfQ09VTlQwX1RYX01zayAgICAgIC8qITwgVHJhbnNtaXNzaW9uIEJ5dGUgQ291bnQgMCAqLw0KDQovKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBVU0JfQ09VTlQxX1RYIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBVU0JfQ09VTlQxX1RYX0NPVU5UMV9UWF9Qb3MgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0JfQ09VTlQxX1RYX0NPVU5UMV9UWF9Nc2sgICAgICAgICAgICgweDNGRlUgPDwgVVNCX0NPVU5UMV9UWF9DT1VOVDFfVFhfUG9zKSAvKiE8IDB4MDAwMDAzRkYgKi8NCiNkZWZpbmUgVVNCX0NPVU5UMV9UWF9DT1VOVDFfVFggICAgICAgICAgICAgICBVU0JfQ09VTlQxX1RYX0NPVU5UMV9UWF9Nc2sgICAgICAvKiE8IFRyYW5zbWlzc2lvbiBCeXRlIENvdW50IDEgKi8NCg0KLyoqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgVVNCX0NPVU5UMl9UWCByZWdpc3RlciAgKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgVVNCX0NPVU5UMl9UWF9DT1VOVDJfVFhfUG9zICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNCX0NPVU5UMl9UWF9DT1VOVDJfVFhfTXNrICAgICAgICAgICAoMHgzRkZVIDw8IFVTQl9DT1VOVDJfVFhfQ09VTlQyX1RYX1BvcykgLyohPCAweDAwMDAwM0ZGICovDQojZGVmaW5lIFVTQl9DT1VOVDJfVFhfQ09VTlQyX1RYICAgICAgICAgICAgICAgVVNCX0NPVU5UMl9UWF9DT1VOVDJfVFhfTXNrICAgICAgLyohPCBUcmFuc21pc3Npb24gQnl0ZSBDb3VudCAyICovDQoNCi8qKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFVTQl9DT1VOVDNfVFggcmVnaXN0ZXIgICoqKioqKioqKioqKioqKiovDQojZGVmaW5lIFVTQl9DT1VOVDNfVFhfQ09VTlQzX1RYX1BvcyAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQl9DT1VOVDNfVFhfQ09VTlQzX1RYX01zayAgICAgICAgICAgKDB4M0ZGVSA8PCBVU0JfQ09VTlQzX1RYX0NPVU5UM19UWF9Qb3MpIC8qITwgMHgwMDAwMDNGRiAqLw0KI2RlZmluZSBVU0JfQ09VTlQzX1RYX0NPVU5UM19UWCAgICAgICAgICAgICAgIFVTQl9DT1VOVDNfVFhfQ09VTlQzX1RYX01zayAgICAgIC8qITwgVHJhbnNtaXNzaW9uIEJ5dGUgQ291bnQgMyAqLw0KDQovKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBVU0JfQ09VTlQ0X1RYIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBVU0JfQ09VTlQ0X1RYX0NPVU5UNF9UWF9Qb3MgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0JfQ09VTlQ0X1RYX0NPVU5UNF9UWF9Nc2sgICAgICAgICAgICgweDNGRlUgPDwgVVNCX0NPVU5UNF9UWF9DT1VOVDRfVFhfUG9zKSAvKiE8IDB4MDAwMDAzRkYgKi8NCiNkZWZpbmUgVVNCX0NPVU5UNF9UWF9DT1VOVDRfVFggICAgICAgICAgICAgICBVU0JfQ09VTlQ0X1RYX0NPVU5UNF9UWF9Nc2sgICAgICAvKiE8IFRyYW5zbWlzc2lvbiBCeXRlIENvdW50IDQgKi8NCg0KLyoqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgVVNCX0NPVU5UNV9UWCByZWdpc3RlciAgKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgVVNCX0NPVU5UNV9UWF9DT1VOVDVfVFhfUG9zICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNCX0NPVU5UNV9UWF9DT1VOVDVfVFhfTXNrICAgICAgICAgICAoMHgzRkZVIDw8IFVTQl9DT1VOVDVfVFhfQ09VTlQ1X1RYX1BvcykgLyohPCAweDAwMDAwM0ZGICovDQojZGVmaW5lIFVTQl9DT1VOVDVfVFhfQ09VTlQ1X1RYICAgICAgICAgICAgICAgVVNCX0NPVU5UNV9UWF9DT1VOVDVfVFhfTXNrICAgICAgLyohPCBUcmFuc21pc3Npb24gQnl0ZSBDb3VudCA1ICovDQoNCi8qKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFVTQl9DT1VOVDZfVFggcmVnaXN0ZXIgICoqKioqKioqKioqKioqKiovDQojZGVmaW5lIFVTQl9DT1VOVDZfVFhfQ09VTlQ2X1RYX1BvcyAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQl9DT1VOVDZfVFhfQ09VTlQ2X1RYX01zayAgICAgICAgICAgKDB4M0ZGVSA8PCBVU0JfQ09VTlQ2X1RYX0NPVU5UNl9UWF9Qb3MpIC8qITwgMHgwMDAwMDNGRiAqLw0KI2RlZmluZSBVU0JfQ09VTlQ2X1RYX0NPVU5UNl9UWCAgICAgICAgICAgICAgIFVTQl9DT1VOVDZfVFhfQ09VTlQ2X1RYX01zayAgICAgIC8qITwgVHJhbnNtaXNzaW9uIEJ5dGUgQ291bnQgNiAqLw0KDQovKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBVU0JfQ09VTlQ3X1RYIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBVU0JfQ09VTlQ3X1RYX0NPVU5UN19UWF9Qb3MgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0JfQ09VTlQ3X1RYX0NPVU5UN19UWF9Nc2sgICAgICAgICAgICgweDNGRlUgPDwgVVNCX0NPVU5UN19UWF9DT1VOVDdfVFhfUG9zKSAvKiE8IDB4MDAwMDAzRkYgKi8NCiNkZWZpbmUgVVNCX0NPVU5UN19UWF9DT1VOVDdfVFggICAgICAgICAgICAgICBVU0JfQ09VTlQ3X1RYX0NPVU5UN19UWF9Nc2sgICAgICAvKiE8IFRyYW5zbWlzc2lvbiBCeXRlIENvdW50IDcgKi8NCg0KLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi8NCg0KLyoqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBVU0JfQ09VTlQwX1RYXzAgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKi8NCiNkZWZpbmUgVVNCX0NPVU5UMF9UWF8wX0NPVU5UMF9UWF8wICAgICAgICAgICAoMHgwMDAwMDNGRlUpICAgICAgICAgICAgICAgICAgICAvKiE8IFRyYW5zbWlzc2lvbiBCeXRlIENvdW50IDAgKGxvdykgKi8NCg0KLyoqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBVU0JfQ09VTlQwX1RYXzEgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKi8NCiNkZWZpbmUgVVNCX0NPVU5UMF9UWF8xX0NPVU5UMF9UWF8xICAgICAgICAgICAoMHgwM0ZGMDAwMFUpICAgICAgICAgICAgICAgICAgICAvKiE8IFRyYW5zbWlzc2lvbiBCeXRlIENvdW50IDAgKGhpZ2gpICovDQoNCi8qKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgVVNCX0NPVU5UMV9UWF8wIHJlZ2lzdGVyICAqKioqKioqKioqKioqKiovDQojZGVmaW5lIFVTQl9DT1VOVDFfVFhfMF9DT1VOVDFfVFhfMCAgICAgICAgICAgKDB4MDAwMDAzRkZVKSAgICAgICAgICAgICAgICAgICAgLyohPCBUcmFuc21pc3Npb24gQnl0ZSBDb3VudCAxIChsb3cpICovDQoNCi8qKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgVVNCX0NPVU5UMV9UWF8xIHJlZ2lzdGVyICAqKioqKioqKioqKioqKiovDQojZGVmaW5lIFVTQl9DT1VOVDFfVFhfMV9DT1VOVDFfVFhfMSAgICAgICAgICAgKDB4MDNGRjAwMDBVKSAgICAgICAgICAgICAgICAgICAgLyohPCBUcmFuc21pc3Npb24gQnl0ZSBDb3VudCAxIChoaWdoKSAqLw0KDQovKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFVTQl9DT1VOVDJfVFhfMCByZWdpc3RlciAgKioqKioqKioqKioqKioqLw0KI2RlZmluZSBVU0JfQ09VTlQyX1RYXzBfQ09VTlQyX1RYXzAgICAgICAgICAgICgweDAwMDAwM0ZGVSkgICAgICAgICAgICAgICAgICAgIC8qITwgVHJhbnNtaXNzaW9uIEJ5dGUgQ291bnQgMiAobG93KSAqLw0KDQovKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFVTQl9DT1VOVDJfVFhfMSByZWdpc3RlciAgKioqKioqKioqKioqKioqLw0KI2RlZmluZSBVU0JfQ09VTlQyX1RYXzFfQ09VTlQyX1RYXzEgICAgICAgICAgICgweDAzRkYwMDAwVSkgICAgICAgICAgICAgICAgICAgIC8qITwgVHJhbnNtaXNzaW9uIEJ5dGUgQ291bnQgMiAoaGlnaCkgKi8NCg0KLyoqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBVU0JfQ09VTlQzX1RYXzAgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKi8NCiNkZWZpbmUgIFVTQl9DT1VOVDNfVFhfMF9DT1VOVDNfVFhfMCAgICAgICAgICgodWludDMyX3QpMHgwMDAwMDAwMFUwM0ZGKSAgICAgICAgLyohPCBUcmFuc21pc3Npb24gQnl0ZSBDb3VudCAzIChsb3cpICovDQoNCi8qKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgVVNCX0NPVU5UM19UWF8xIHJlZ2lzdGVyICAqKioqKioqKioqKioqKiovDQojZGVmaW5lICBVU0JfQ09VTlQzX1RYXzFfQ09VTlQzX1RYXzEgICAgICAgICAoKHVpbnQzMl90KTB4MDAwMDAzRkZVMDAwMCkgICAgICAgIC8qITwgVHJhbnNtaXNzaW9uIEJ5dGUgQ291bnQgMyAoaGlnaCkgKi8NCg0KLyoqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBVU0JfQ09VTlQ0X1RYXzAgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKi8NCiNkZWZpbmUgVVNCX0NPVU5UNF9UWF8wX0NPVU5UNF9UWF8wICAgICAgICAgICAoMHgwMDAwMDNGRlUpICAgICAgICAgICAgICAgICAgICAvKiE8IFRyYW5zbWlzc2lvbiBCeXRlIENvdW50IDQgKGxvdykgKi8NCg0KLyoqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBVU0JfQ09VTlQ0X1RYXzEgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKi8NCiNkZWZpbmUgVVNCX0NPVU5UNF9UWF8xX0NPVU5UNF9UWF8xICAgICAgICAgICAoMHgwM0ZGMDAwMFUpICAgICAgICAgICAgICAgICAgICAvKiE8IFRyYW5zbWlzc2lvbiBCeXRlIENvdW50IDQgKGhpZ2gpICovDQoNCi8qKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgVVNCX0NPVU5UNV9UWF8wIHJlZ2lzdGVyICAqKioqKioqKioqKioqKiovDQojZGVmaW5lIFVTQl9DT1VOVDVfVFhfMF9DT1VOVDVfVFhfMCAgICAgICAgICAgKDB4MDAwMDAzRkZVKSAgICAgICAgICAgICAgICAgICAgLyohPCBUcmFuc21pc3Npb24gQnl0ZSBDb3VudCA1IChsb3cpICovDQoNCi8qKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgVVNCX0NPVU5UNV9UWF8xIHJlZ2lzdGVyICAqKioqKioqKioqKioqKiovDQojZGVmaW5lIFVTQl9DT1VOVDVfVFhfMV9DT1VOVDVfVFhfMSAgICAgICAgICAgKDB4MDNGRjAwMDBVKSAgICAgICAgICAgICAgICAgICAgLyohPCBUcmFuc21pc3Npb24gQnl0ZSBDb3VudCA1IChoaWdoKSAqLw0KDQovKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFVTQl9DT1VOVDZfVFhfMCByZWdpc3RlciAgKioqKioqKioqKioqKioqLw0KI2RlZmluZSBVU0JfQ09VTlQ2X1RYXzBfQ09VTlQ2X1RYXzAgICAgICAgICAgICgweDAwMDAwM0ZGVSkgICAgICAgICAgICAgICAgICAgIC8qITwgVHJhbnNtaXNzaW9uIEJ5dGUgQ291bnQgNiAobG93KSAqLw0KDQovKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFVTQl9DT1VOVDZfVFhfMSByZWdpc3RlciAgKioqKioqKioqKioqKioqLw0KI2RlZmluZSBVU0JfQ09VTlQ2X1RYXzFfQ09VTlQ2X1RYXzEgICAgICAgICAgICgweDAzRkYwMDAwVSkgICAgICAgICAgICAgICAgICAgIC8qITwgVHJhbnNtaXNzaW9uIEJ5dGUgQ291bnQgNiAoaGlnaCkgKi8NCg0KLyoqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBVU0JfQ09VTlQ3X1RYXzAgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKi8NCiNkZWZpbmUgVVNCX0NPVU5UN19UWF8wX0NPVU5UN19UWF8wICAgICAgICAgICAoMHgwMDAwMDNGRlUpICAgICAgICAgICAgICAgICAgICAvKiE8IFRyYW5zbWlzc2lvbiBCeXRlIENvdW50IDcgKGxvdykgKi8NCg0KLyoqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBVU0JfQ09VTlQ3X1RYXzEgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKi8NCiNkZWZpbmUgVVNCX0NPVU5UN19UWF8xX0NPVU5UN19UWF8xICAgICAgICAgICAoMHgwM0ZGMDAwMFUpICAgICAgICAgICAgICAgICAgICAvKiE8IFRyYW5zbWlzc2lvbiBCeXRlIENvdW50IDcgKGhpZ2gpICovDQoNCi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovDQoNCi8qKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFVTQl9BRERSMF9SWCByZWdpc3RlciAgKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIFVTQl9BRERSMF9SWF9BRERSMF9SWF9Qb3MgICAgICAgICAgICAgKDFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQl9BRERSMF9SWF9BRERSMF9SWF9Nc2sgICAgICAgICAgICAgKDB4N0ZGRlUgPDwgVVNCX0FERFIwX1JYX0FERFIwX1JYX1BvcykgLyohPCAweDAwMDBGRkZFICovDQojZGVmaW5lIFVTQl9BRERSMF9SWF9BRERSMF9SWCAgICAgICAgICAgICAgICAgVVNCX0FERFIwX1JYX0FERFIwX1JYX01zayAgICAgICAgLyohPCBSZWNlcHRpb24gQnVmZmVyIEFkZHJlc3MgMCAqLw0KDQovKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBVU0JfQUREUjFfUlggcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBVU0JfQUREUjFfUlhfQUREUjFfUlhfUG9zICAgICAgICAgICAgICgxVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0JfQUREUjFfUlhfQUREUjFfUlhfTXNrICAgICAgICAgICAgICgweDdGRkZVIDw8IFVTQl9BRERSMV9SWF9BRERSMV9SWF9Qb3MpIC8qITwgMHgwMDAwRkZGRSAqLw0KI2RlZmluZSBVU0JfQUREUjFfUlhfQUREUjFfUlggICAgICAgICAgICAgICAgIFVTQl9BRERSMV9SWF9BRERSMV9SWF9Nc2sgICAgICAgIC8qITwgUmVjZXB0aW9uIEJ1ZmZlciBBZGRyZXNzIDEgKi8NCg0KLyoqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgVVNCX0FERFIyX1JYIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgVVNCX0FERFIyX1JYX0FERFIyX1JYX1BvcyAgICAgICAgICAgICAoMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNCX0FERFIyX1JYX0FERFIyX1JYX01zayAgICAgICAgICAgICAoMHg3RkZGVSA8PCBVU0JfQUREUjJfUlhfQUREUjJfUlhfUG9zKSAvKiE8IDB4MDAwMEZGRkUgKi8NCiNkZWZpbmUgVVNCX0FERFIyX1JYX0FERFIyX1JYICAgICAgICAgICAgICAgICBVU0JfQUREUjJfUlhfQUREUjJfUlhfTXNrICAgICAgICAvKiE8IFJlY2VwdGlvbiBCdWZmZXIgQWRkcmVzcyAyICovDQoNCi8qKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFVTQl9BRERSM19SWCByZWdpc3RlciAgKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIFVTQl9BRERSM19SWF9BRERSM19SWF9Qb3MgICAgICAgICAgICAgKDFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQl9BRERSM19SWF9BRERSM19SWF9Nc2sgICAgICAgICAgICAgKDB4N0ZGRlUgPDwgVVNCX0FERFIzX1JYX0FERFIzX1JYX1BvcykgLyohPCAweDAwMDBGRkZFICovDQojZGVmaW5lIFVTQl9BRERSM19SWF9BRERSM19SWCAgICAgICAgICAgICAgICAgVVNCX0FERFIzX1JYX0FERFIzX1JYX01zayAgICAgICAgLyohPCBSZWNlcHRpb24gQnVmZmVyIEFkZHJlc3MgMyAqLw0KDQovKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBVU0JfQUREUjRfUlggcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBVU0JfQUREUjRfUlhfQUREUjRfUlhfUG9zICAgICAgICAgICAgICgxVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0JfQUREUjRfUlhfQUREUjRfUlhfTXNrICAgICAgICAgICAgICgweDdGRkZVIDw8IFVTQl9BRERSNF9SWF9BRERSNF9SWF9Qb3MpIC8qITwgMHgwMDAwRkZGRSAqLw0KI2RlZmluZSBVU0JfQUREUjRfUlhfQUREUjRfUlggICAgICAgICAgICAgICAgIFVTQl9BRERSNF9SWF9BRERSNF9SWF9Nc2sgICAgICAgIC8qITwgUmVjZXB0aW9uIEJ1ZmZlciBBZGRyZXNzIDQgKi8NCg0KLyoqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgVVNCX0FERFI1X1JYIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgVVNCX0FERFI1X1JYX0FERFI1X1JYX1BvcyAgICAgICAgICAgICAoMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNCX0FERFI1X1JYX0FERFI1X1JYX01zayAgICAgICAgICAgICAoMHg3RkZGVSA8PCBVU0JfQUREUjVfUlhfQUREUjVfUlhfUG9zKSAvKiE8IDB4MDAwMEZGRkUgKi8NCiNkZWZpbmUgVVNCX0FERFI1X1JYX0FERFI1X1JYICAgICAgICAgICAgICAgICBVU0JfQUREUjVfUlhfQUREUjVfUlhfTXNrICAgICAgICAvKiE8IFJlY2VwdGlvbiBCdWZmZXIgQWRkcmVzcyA1ICovDQoNCi8qKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFVTQl9BRERSNl9SWCByZWdpc3RlciAgKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIFVTQl9BRERSNl9SWF9BRERSNl9SWF9Qb3MgICAgICAgICAgICAgKDFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQl9BRERSNl9SWF9BRERSNl9SWF9Nc2sgICAgICAgICAgICAgKDB4N0ZGRlUgPDwgVVNCX0FERFI2X1JYX0FERFI2X1JYX1BvcykgLyohPCAweDAwMDBGRkZFICovDQojZGVmaW5lIFVTQl9BRERSNl9SWF9BRERSNl9SWCAgICAgICAgICAgICAgICAgVVNCX0FERFI2X1JYX0FERFI2X1JYX01zayAgICAgICAgLyohPCBSZWNlcHRpb24gQnVmZmVyIEFkZHJlc3MgNiAqLw0KDQovKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBVU0JfQUREUjdfUlggcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBVU0JfQUREUjdfUlhfQUREUjdfUlhfUG9zICAgICAgICAgICAgICgxVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0JfQUREUjdfUlhfQUREUjdfUlhfTXNrICAgICAgICAgICAgICgweDdGRkZVIDw8IFVTQl9BRERSN19SWF9BRERSN19SWF9Qb3MpIC8qITwgMHgwMDAwRkZGRSAqLw0KI2RlZmluZSBVU0JfQUREUjdfUlhfQUREUjdfUlggICAgICAgICAgICAgICAgIFVTQl9BRERSN19SWF9BRERSN19SWF9Nc2sgICAgICAgIC8qITwgUmVjZXB0aW9uIEJ1ZmZlciBBZGRyZXNzIDcgKi8NCg0KLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi8NCg0KLyoqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgVVNCX0NPVU5UMF9SWCByZWdpc3RlciAgKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgVVNCX0NPVU5UMF9SWF9DT1VOVDBfUlhfUG9zICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNCX0NPVU5UMF9SWF9DT1VOVDBfUlhfTXNrICAgICAgICAgICAoMHgzRkZVIDw8IFVTQl9DT1VOVDBfUlhfQ09VTlQwX1JYX1BvcykgLyohPCAweDAwMDAwM0ZGICovDQojZGVmaW5lIFVTQl9DT1VOVDBfUlhfQ09VTlQwX1JYICAgICAgICAgICAgICAgVVNCX0NPVU5UMF9SWF9DT1VOVDBfUlhfTXNrICAgICAgLyohPCBSZWNlcHRpb24gQnl0ZSBDb3VudCAqLw0KDQojZGVmaW5lIFVTQl9DT1VOVDBfUlhfTlVNX0JMT0NLX1BvcyAgICAgICAgICAgKDEwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQl9DT1VOVDBfUlhfTlVNX0JMT0NLX01zayAgICAgICAgICAgKDB4MUZVIDw8IFVTQl9DT1VOVDBfUlhfTlVNX0JMT0NLX1BvcykgLyohPCAweDAwMDA3QzAwICovDQojZGVmaW5lIFVTQl9DT1VOVDBfUlhfTlVNX0JMT0NLICAgICAgICAgICAgICAgVVNCX0NPVU5UMF9SWF9OVU1fQkxPQ0tfTXNrICAgICAgLyohPCBOVU1fQkxPQ0tbNDowXSBiaXRzIChOdW1iZXIgb2YgYmxvY2tzKSAqLw0KI2RlZmluZSBVU0JfQ09VTlQwX1JYX05VTV9CTE9DS18wICAgICAgICAgICAgICgweDAxVSA8PCBVU0JfQ09VTlQwX1JYX05VTV9CTE9DS19Qb3MpIC8qITwgMHgwMDAwMDQwMCAqLw0KI2RlZmluZSBVU0JfQ09VTlQwX1JYX05VTV9CTE9DS18xICAgICAgICAgICAgICgweDAyVSA8PCBVU0JfQ09VTlQwX1JYX05VTV9CTE9DS19Qb3MpIC8qITwgMHgwMDAwMDgwMCAqLw0KI2RlZmluZSBVU0JfQ09VTlQwX1JYX05VTV9CTE9DS18yICAgICAgICAgICAgICgweDA0VSA8PCBVU0JfQ09VTlQwX1JYX05VTV9CTE9DS19Qb3MpIC8qITwgMHgwMDAwMTAwMCAqLw0KI2RlZmluZSBVU0JfQ09VTlQwX1JYX05VTV9CTE9DS18zICAgICAgICAgICAgICgweDA4VSA8PCBVU0JfQ09VTlQwX1JYX05VTV9CTE9DS19Qb3MpIC8qITwgMHgwMDAwMjAwMCAqLw0KI2RlZmluZSBVU0JfQ09VTlQwX1JYX05VTV9CTE9DS180ICAgICAgICAgICAgICgweDEwVSA8PCBVU0JfQ09VTlQwX1JYX05VTV9CTE9DS19Qb3MpIC8qITwgMHgwMDAwNDAwMCAqLw0KDQojZGVmaW5lIFVTQl9DT1VOVDBfUlhfQkxTSVpFX1BvcyAgICAgICAgICAgICAgKDE1VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQl9DT1VOVDBfUlhfQkxTSVpFX01zayAgICAgICAgICAgICAgKDB4MVUgPDwgVVNCX0NPVU5UMF9SWF9CTFNJWkVfUG9zKSAvKiE8IDB4MDAwMDgwMDAgKi8NCiNkZWZpbmUgVVNCX0NPVU5UMF9SWF9CTFNJWkUgICAgICAgICAgICAgICAgICBVU0JfQ09VTlQwX1JYX0JMU0laRV9Nc2sgICAgICAgICAvKiE8IEJMb2NrIFNJWkUgKi8NCg0KLyoqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgVVNCX0NPVU5UMV9SWCByZWdpc3RlciAgKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgVVNCX0NPVU5UMV9SWF9DT1VOVDFfUlhfUG9zICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNCX0NPVU5UMV9SWF9DT1VOVDFfUlhfTXNrICAgICAgICAgICAoMHgzRkZVIDw8IFVTQl9DT1VOVDFfUlhfQ09VTlQxX1JYX1BvcykgLyohPCAweDAwMDAwM0ZGICovDQojZGVmaW5lIFVTQl9DT1VOVDFfUlhfQ09VTlQxX1JYICAgICAgICAgICAgICAgVVNCX0NPVU5UMV9SWF9DT1VOVDFfUlhfTXNrICAgICAgLyohPCBSZWNlcHRpb24gQnl0ZSBDb3VudCAqLw0KDQojZGVmaW5lIFVTQl9DT1VOVDFfUlhfTlVNX0JMT0NLX1BvcyAgICAgICAgICAgKDEwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQl9DT1VOVDFfUlhfTlVNX0JMT0NLX01zayAgICAgICAgICAgKDB4MUZVIDw8IFVTQl9DT1VOVDFfUlhfTlVNX0JMT0NLX1BvcykgLyohPCAweDAwMDA3QzAwICovDQojZGVmaW5lIFVTQl9DT1VOVDFfUlhfTlVNX0JMT0NLICAgICAgICAgICAgICAgVVNCX0NPVU5UMV9SWF9OVU1fQkxPQ0tfTXNrICAgICAgLyohPCBOVU1fQkxPQ0tbNDowXSBiaXRzIChOdW1iZXIgb2YgYmxvY2tzKSAqLw0KI2RlZmluZSBVU0JfQ09VTlQxX1JYX05VTV9CTE9DS18wICAgICAgICAgICAgICgweDAxVSA8PCBVU0JfQ09VTlQxX1JYX05VTV9CTE9DS19Qb3MpIC8qITwgMHgwMDAwMDQwMCAqLw0KI2RlZmluZSBVU0JfQ09VTlQxX1JYX05VTV9CTE9DS18xICAgICAgICAgICAgICgweDAyVSA8PCBVU0JfQ09VTlQxX1JYX05VTV9CTE9DS19Qb3MpIC8qITwgMHgwMDAwMDgwMCAqLw0KI2RlZmluZSBVU0JfQ09VTlQxX1JYX05VTV9CTE9DS18yICAgICAgICAgICAgICgweDA0VSA8PCBVU0JfQ09VTlQxX1JYX05VTV9CTE9DS19Qb3MpIC8qITwgMHgwMDAwMTAwMCAqLw0KI2RlZmluZSBVU0JfQ09VTlQxX1JYX05VTV9CTE9DS18zICAgICAgICAgICAgICgweDA4VSA8PCBVU0JfQ09VTlQxX1JYX05VTV9CTE9DS19Qb3MpIC8qITwgMHgwMDAwMjAwMCAqLw0KI2RlZmluZSBVU0JfQ09VTlQxX1JYX05VTV9CTE9DS180ICAgICAgICAgICAgICgweDEwVSA8PCBVU0JfQ09VTlQxX1JYX05VTV9CTE9DS19Qb3MpIC8qITwgMHgwMDAwNDAwMCAqLw0KDQojZGVmaW5lIFVTQl9DT1VOVDFfUlhfQkxTSVpFX1BvcyAgICAgICAgICAgICAgKDE1VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQl9DT1VOVDFfUlhfQkxTSVpFX01zayAgICAgICAgICAgICAgKDB4MVUgPDwgVVNCX0NPVU5UMV9SWF9CTFNJWkVfUG9zKSAvKiE8IDB4MDAwMDgwMDAgKi8NCiNkZWZpbmUgVVNCX0NPVU5UMV9SWF9CTFNJWkUgICAgICAgICAgICAgICAgICBVU0JfQ09VTlQxX1JYX0JMU0laRV9Nc2sgICAgICAgICAvKiE8IEJMb2NrIFNJWkUgKi8NCg0KLyoqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgVVNCX0NPVU5UMl9SWCByZWdpc3RlciAgKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgVVNCX0NPVU5UMl9SWF9DT1VOVDJfUlhfUG9zICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNCX0NPVU5UMl9SWF9DT1VOVDJfUlhfTXNrICAgICAgICAgICAoMHgzRkZVIDw8IFVTQl9DT1VOVDJfUlhfQ09VTlQyX1JYX1BvcykgLyohPCAweDAwMDAwM0ZGICovDQojZGVmaW5lIFVTQl9DT1VOVDJfUlhfQ09VTlQyX1JYICAgICAgICAgICAgICAgVVNCX0NPVU5UMl9SWF9DT1VOVDJfUlhfTXNrICAgICAgLyohPCBSZWNlcHRpb24gQnl0ZSBDb3VudCAqLw0KDQojZGVmaW5lIFVTQl9DT1VOVDJfUlhfTlVNX0JMT0NLX1BvcyAgICAgICAgICAgKDEwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQl9DT1VOVDJfUlhfTlVNX0JMT0NLX01zayAgICAgICAgICAgKDB4MUZVIDw8IFVTQl9DT1VOVDJfUlhfTlVNX0JMT0NLX1BvcykgLyohPCAweDAwMDA3QzAwICovDQojZGVmaW5lIFVTQl9DT1VOVDJfUlhfTlVNX0JMT0NLICAgICAgICAgICAgICAgVVNCX0NPVU5UMl9SWF9OVU1fQkxPQ0tfTXNrICAgICAgLyohPCBOVU1fQkxPQ0tbNDowXSBiaXRzIChOdW1iZXIgb2YgYmxvY2tzKSAqLw0KI2RlZmluZSBVU0JfQ09VTlQyX1JYX05VTV9CTE9DS18wICAgICAgICAgICAgICgweDAxVSA8PCBVU0JfQ09VTlQyX1JYX05VTV9CTE9DS19Qb3MpIC8qITwgMHgwMDAwMDQwMCAqLw0KI2RlZmluZSBVU0JfQ09VTlQyX1JYX05VTV9CTE9DS18xICAgICAgICAgICAgICgweDAyVSA8PCBVU0JfQ09VTlQyX1JYX05VTV9CTE9DS19Qb3MpIC8qITwgMHgwMDAwMDgwMCAqLw0KI2RlZmluZSBVU0JfQ09VTlQyX1JYX05VTV9CTE9DS18yICAgICAgICAgICAgICgweDA0VSA8PCBVU0JfQ09VTlQyX1JYX05VTV9CTE9DS19Qb3MpIC8qITwgMHgwMDAwMTAwMCAqLw0KI2RlZmluZSBVU0JfQ09VTlQyX1JYX05VTV9CTE9DS18zICAgICAgICAgICAgICgweDA4VSA8PCBVU0JfQ09VTlQyX1JYX05VTV9CTE9DS19Qb3MpIC8qITwgMHgwMDAwMjAwMCAqLw0KI2RlZmluZSBVU0JfQ09VTlQyX1JYX05VTV9CTE9DS180ICAgICAgICAgICAgICgweDEwVSA8PCBVU0JfQ09VTlQyX1JYX05VTV9CTE9DS19Qb3MpIC8qITwgMHgwMDAwNDAwMCAqLw0KDQojZGVmaW5lIFVTQl9DT1VOVDJfUlhfQkxTSVpFX1BvcyAgICAgICAgICAgICAgKDE1VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQl9DT1VOVDJfUlhfQkxTSVpFX01zayAgICAgICAgICAgICAgKDB4MVUgPDwgVVNCX0NPVU5UMl9SWF9CTFNJWkVfUG9zKSAvKiE8IDB4MDAwMDgwMDAgKi8NCiNkZWZpbmUgVVNCX0NPVU5UMl9SWF9CTFNJWkUgICAgICAgICAgICAgICAgICBVU0JfQ09VTlQyX1JYX0JMU0laRV9Nc2sgICAgICAgICAvKiE8IEJMb2NrIFNJWkUgKi8NCg0KLyoqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgVVNCX0NPVU5UM19SWCByZWdpc3RlciAgKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgVVNCX0NPVU5UM19SWF9DT1VOVDNfUlhfUG9zICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNCX0NPVU5UM19SWF9DT1VOVDNfUlhfTXNrICAgICAgICAgICAoMHgzRkZVIDw8IFVTQl9DT1VOVDNfUlhfQ09VTlQzX1JYX1BvcykgLyohPCAweDAwMDAwM0ZGICovDQojZGVmaW5lIFVTQl9DT1VOVDNfUlhfQ09VTlQzX1JYICAgICAgICAgICAgICAgVVNCX0NPVU5UM19SWF9DT1VOVDNfUlhfTXNrICAgICAgLyohPCBSZWNlcHRpb24gQnl0ZSBDb3VudCAqLw0KDQojZGVmaW5lIFVTQl9DT1VOVDNfUlhfTlVNX0JMT0NLX1BvcyAgICAgICAgICAgKDEwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQl9DT1VOVDNfUlhfTlVNX0JMT0NLX01zayAgICAgICAgICAgKDB4MUZVIDw8IFVTQl9DT1VOVDNfUlhfTlVNX0JMT0NLX1BvcykgLyohPCAweDAwMDA3QzAwICovDQojZGVmaW5lIFVTQl9DT1VOVDNfUlhfTlVNX0JMT0NLICAgICAgICAgICAgICAgVVNCX0NPVU5UM19SWF9OVU1fQkxPQ0tfTXNrICAgICAgLyohPCBOVU1fQkxPQ0tbNDowXSBiaXRzIChOdW1iZXIgb2YgYmxvY2tzKSAqLw0KI2RlZmluZSBVU0JfQ09VTlQzX1JYX05VTV9CTE9DS18wICAgICAgICAgICAgICgweDAxVSA8PCBVU0JfQ09VTlQzX1JYX05VTV9CTE9DS19Qb3MpIC8qITwgMHgwMDAwMDQwMCAqLw0KI2RlZmluZSBVU0JfQ09VTlQzX1JYX05VTV9CTE9DS18xICAgICAgICAgICAgICgweDAyVSA8PCBVU0JfQ09VTlQzX1JYX05VTV9CTE9DS19Qb3MpIC8qITwgMHgwMDAwMDgwMCAqLw0KI2RlZmluZSBVU0JfQ09VTlQzX1JYX05VTV9CTE9DS18yICAgICAgICAgICAgICgweDA0VSA8PCBVU0JfQ09VTlQzX1JYX05VTV9CTE9DS19Qb3MpIC8qITwgMHgwMDAwMTAwMCAqLw0KI2RlZmluZSBVU0JfQ09VTlQzX1JYX05VTV9CTE9DS18zICAgICAgICAgICAgICgweDA4VSA8PCBVU0JfQ09VTlQzX1JYX05VTV9CTE9DS19Qb3MpIC8qITwgMHgwMDAwMjAwMCAqLw0KI2RlZmluZSBVU0JfQ09VTlQzX1JYX05VTV9CTE9DS180ICAgICAgICAgICAgICgweDEwVSA8PCBVU0JfQ09VTlQzX1JYX05VTV9CTE9DS19Qb3MpIC8qITwgMHgwMDAwNDAwMCAqLw0KDQojZGVmaW5lIFVTQl9DT1VOVDNfUlhfQkxTSVpFX1BvcyAgICAgICAgICAgICAgKDE1VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQl9DT1VOVDNfUlhfQkxTSVpFX01zayAgICAgICAgICAgICAgKDB4MVUgPDwgVVNCX0NPVU5UM19SWF9CTFNJWkVfUG9zKSAvKiE8IDB4MDAwMDgwMDAgKi8NCiNkZWZpbmUgVVNCX0NPVU5UM19SWF9CTFNJWkUgICAgICAgICAgICAgICAgICBVU0JfQ09VTlQzX1JYX0JMU0laRV9Nc2sgICAgICAgICAvKiE8IEJMb2NrIFNJWkUgKi8NCg0KLyoqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgVVNCX0NPVU5UNF9SWCByZWdpc3RlciAgKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgVVNCX0NPVU5UNF9SWF9DT1VOVDRfUlhfUG9zICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNCX0NPVU5UNF9SWF9DT1VOVDRfUlhfTXNrICAgICAgICAgICAoMHgzRkZVIDw8IFVTQl9DT1VOVDRfUlhfQ09VTlQ0X1JYX1BvcykgLyohPCAweDAwMDAwM0ZGICovDQojZGVmaW5lIFVTQl9DT1VOVDRfUlhfQ09VTlQ0X1JYICAgICAgICAgICAgICAgVVNCX0NPVU5UNF9SWF9DT1VOVDRfUlhfTXNrICAgICAgLyohPCBSZWNlcHRpb24gQnl0ZSBDb3VudCAqLw0KDQojZGVmaW5lIFVTQl9DT1VOVDRfUlhfTlVNX0JMT0NLX1BvcyAgICAgICAgICAgKDEwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQl9DT1VOVDRfUlhfTlVNX0JMT0NLX01zayAgICAgICAgICAgKDB4MUZVIDw8IFVTQl9DT1VOVDRfUlhfTlVNX0JMT0NLX1BvcykgLyohPCAweDAwMDA3QzAwICovDQojZGVmaW5lIFVTQl9DT1VOVDRfUlhfTlVNX0JMT0NLICAgICAgICAgICAgICAgVVNCX0NPVU5UNF9SWF9OVU1fQkxPQ0tfTXNrICAgICAgLyohPCBOVU1fQkxPQ0tbNDowXSBiaXRzIChOdW1iZXIgb2YgYmxvY2tzKSAqLw0KI2RlZmluZSBVU0JfQ09VTlQ0X1JYX05VTV9CTE9DS18wICAgICAgICAgICAgICgweDAxVSA8PCBVU0JfQ09VTlQ0X1JYX05VTV9CTE9DS19Qb3MpIC8qITwgMHgwMDAwMDQwMCAqLw0KI2RlZmluZSBVU0JfQ09VTlQ0X1JYX05VTV9CTE9DS18xICAgICAgICAgICAgICgweDAyVSA8PCBVU0JfQ09VTlQ0X1JYX05VTV9CTE9DS19Qb3MpIC8qITwgMHgwMDAwMDgwMCAqLw0KI2RlZmluZSBVU0JfQ09VTlQ0X1JYX05VTV9CTE9DS18yICAgICAgICAgICAgICgweDA0VSA8PCBVU0JfQ09VTlQ0X1JYX05VTV9CTE9DS19Qb3MpIC8qITwgMHgwMDAwMTAwMCAqLw0KI2RlZmluZSBVU0JfQ09VTlQ0X1JYX05VTV9CTE9DS18zICAgICAgICAgICAgICgweDA4VSA8PCBVU0JfQ09VTlQ0X1JYX05VTV9CTE9DS19Qb3MpIC8qITwgMHgwMDAwMjAwMCAqLw0KI2RlZmluZSBVU0JfQ09VTlQ0X1JYX05VTV9CTE9DS180ICAgICAgICAgICAgICgweDEwVSA8PCBVU0JfQ09VTlQ0X1JYX05VTV9CTE9DS19Qb3MpIC8qITwgMHgwMDAwNDAwMCAqLw0KDQojZGVmaW5lIFVTQl9DT1VOVDRfUlhfQkxTSVpFX1BvcyAgICAgICAgICAgICAgKDE1VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQl9DT1VOVDRfUlhfQkxTSVpFX01zayAgICAgICAgICAgICAgKDB4MVUgPDwgVVNCX0NPVU5UNF9SWF9CTFNJWkVfUG9zKSAvKiE8IDB4MDAwMDgwMDAgKi8NCiNkZWZpbmUgVVNCX0NPVU5UNF9SWF9CTFNJWkUgICAgICAgICAgICAgICAgICBVU0JfQ09VTlQ0X1JYX0JMU0laRV9Nc2sgICAgICAgICAvKiE8IEJMb2NrIFNJWkUgKi8NCg0KLyoqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgVVNCX0NPVU5UNV9SWCByZWdpc3RlciAgKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgVVNCX0NPVU5UNV9SWF9DT1VOVDVfUlhfUG9zICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNCX0NPVU5UNV9SWF9DT1VOVDVfUlhfTXNrICAgICAgICAgICAoMHgzRkZVIDw8IFVTQl9DT1VOVDVfUlhfQ09VTlQ1X1JYX1BvcykgLyohPCAweDAwMDAwM0ZGICovDQojZGVmaW5lIFVTQl9DT1VOVDVfUlhfQ09VTlQ1X1JYICAgICAgICAgICAgICAgVVNCX0NPVU5UNV9SWF9DT1VOVDVfUlhfTXNrICAgICAgLyohPCBSZWNlcHRpb24gQnl0ZSBDb3VudCAqLw0KDQojZGVmaW5lIFVTQl9DT1VOVDVfUlhfTlVNX0JMT0NLX1BvcyAgICAgICAgICAgKDEwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQl9DT1VOVDVfUlhfTlVNX0JMT0NLX01zayAgICAgICAgICAgKDB4MUZVIDw8IFVTQl9DT1VOVDVfUlhfTlVNX0JMT0NLX1BvcykgLyohPCAweDAwMDA3QzAwICovDQojZGVmaW5lIFVTQl9DT1VOVDVfUlhfTlVNX0JMT0NLICAgICAgICAgICAgICAgVVNCX0NPVU5UNV9SWF9OVU1fQkxPQ0tfTXNrICAgICAgLyohPCBOVU1fQkxPQ0tbNDowXSBiaXRzIChOdW1iZXIgb2YgYmxvY2tzKSAqLw0KI2RlZmluZSBVU0JfQ09VTlQ1X1JYX05VTV9CTE9DS18wICAgICAgICAgICAgICgweDAxVSA8PCBVU0JfQ09VTlQ1X1JYX05VTV9CTE9DS19Qb3MpIC8qITwgMHgwMDAwMDQwMCAqLw0KI2RlZmluZSBVU0JfQ09VTlQ1X1JYX05VTV9CTE9DS18xICAgICAgICAgICAgICgweDAyVSA8PCBVU0JfQ09VTlQ1X1JYX05VTV9CTE9DS19Qb3MpIC8qITwgMHgwMDAwMDgwMCAqLw0KI2RlZmluZSBVU0JfQ09VTlQ1X1JYX05VTV9CTE9DS18yICAgICAgICAgICAgICgweDA0VSA8PCBVU0JfQ09VTlQ1X1JYX05VTV9CTE9DS19Qb3MpIC8qITwgMHgwMDAwMTAwMCAqLw0KI2RlZmluZSBVU0JfQ09VTlQ1X1JYX05VTV9CTE9DS18zICAgICAgICAgICAgICgweDA4VSA8PCBVU0JfQ09VTlQ1X1JYX05VTV9CTE9DS19Qb3MpIC8qITwgMHgwMDAwMjAwMCAqLw0KI2RlZmluZSBVU0JfQ09VTlQ1X1JYX05VTV9CTE9DS180ICAgICAgICAgICAgICgweDEwVSA8PCBVU0JfQ09VTlQ1X1JYX05VTV9CTE9DS19Qb3MpIC8qITwgMHgwMDAwNDAwMCAqLw0KDQojZGVmaW5lIFVTQl9DT1VOVDVfUlhfQkxTSVpFX1BvcyAgICAgICAgICAgICAgKDE1VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQl9DT1VOVDVfUlhfQkxTSVpFX01zayAgICAgICAgICAgICAgKDB4MVUgPDwgVVNCX0NPVU5UNV9SWF9CTFNJWkVfUG9zKSAvKiE8IDB4MDAwMDgwMDAgKi8NCiNkZWZpbmUgVVNCX0NPVU5UNV9SWF9CTFNJWkUgICAgICAgICAgICAgICAgICBVU0JfQ09VTlQ1X1JYX0JMU0laRV9Nc2sgICAgICAgICAvKiE8IEJMb2NrIFNJWkUgKi8NCg0KLyoqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgVVNCX0NPVU5UNl9SWCByZWdpc3RlciAgKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgVVNCX0NPVU5UNl9SWF9DT1VOVDZfUlhfUG9zICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNCX0NPVU5UNl9SWF9DT1VOVDZfUlhfTXNrICAgICAgICAgICAoMHgzRkZVIDw8IFVTQl9DT1VOVDZfUlhfQ09VTlQ2X1JYX1BvcykgLyohPCAweDAwMDAwM0ZGICovDQojZGVmaW5lIFVTQl9DT1VOVDZfUlhfQ09VTlQ2X1JYICAgICAgICAgICAgICAgVVNCX0NPVU5UNl9SWF9DT1VOVDZfUlhfTXNrICAgICAgLyohPCBSZWNlcHRpb24gQnl0ZSBDb3VudCAqLw0KDQojZGVmaW5lIFVTQl9DT1VOVDZfUlhfTlVNX0JMT0NLX1BvcyAgICAgICAgICAgKDEwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQl9DT1VOVDZfUlhfTlVNX0JMT0NLX01zayAgICAgICAgICAgKDB4MUZVIDw8IFVTQl9DT1VOVDZfUlhfTlVNX0JMT0NLX1BvcykgLyohPCAweDAwMDA3QzAwICovDQojZGVmaW5lIFVTQl9DT1VOVDZfUlhfTlVNX0JMT0NLICAgICAgICAgICAgICAgVVNCX0NPVU5UNl9SWF9OVU1fQkxPQ0tfTXNrICAgICAgLyohPCBOVU1fQkxPQ0tbNDowXSBiaXRzIChOdW1iZXIgb2YgYmxvY2tzKSAqLw0KI2RlZmluZSBVU0JfQ09VTlQ2X1JYX05VTV9CTE9DS18wICAgICAgICAgICAgICgweDAxVSA8PCBVU0JfQ09VTlQ2X1JYX05VTV9CTE9DS19Qb3MpIC8qITwgMHgwMDAwMDQwMCAqLw0KI2RlZmluZSBVU0JfQ09VTlQ2X1JYX05VTV9CTE9DS18xICAgICAgICAgICAgICgweDAyVSA8PCBVU0JfQ09VTlQ2X1JYX05VTV9CTE9DS19Qb3MpIC8qITwgMHgwMDAwMDgwMCAqLw0KI2RlZmluZSBVU0JfQ09VTlQ2X1JYX05VTV9CTE9DS18yICAgICAgICAgICAgICgweDA0VSA8PCBVU0JfQ09VTlQ2X1JYX05VTV9CTE9DS19Qb3MpIC8qITwgMHgwMDAwMTAwMCAqLw0KI2RlZmluZSBVU0JfQ09VTlQ2X1JYX05VTV9CTE9DS18zICAgICAgICAgICAgICgweDA4VSA8PCBVU0JfQ09VTlQ2X1JYX05VTV9CTE9DS19Qb3MpIC8qITwgMHgwMDAwMjAwMCAqLw0KI2RlZmluZSBVU0JfQ09VTlQ2X1JYX05VTV9CTE9DS180ICAgICAgICAgICAgICgweDEwVSA8PCBVU0JfQ09VTlQ2X1JYX05VTV9CTE9DS19Qb3MpIC8qITwgMHgwMDAwNDAwMCAqLw0KDQojZGVmaW5lIFVTQl9DT1VOVDZfUlhfQkxTSVpFX1BvcyAgICAgICAgICAgICAgKDE1VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQl9DT1VOVDZfUlhfQkxTSVpFX01zayAgICAgICAgICAgICAgKDB4MVUgPDwgVVNCX0NPVU5UNl9SWF9CTFNJWkVfUG9zKSAvKiE8IDB4MDAwMDgwMDAgKi8NCiNkZWZpbmUgVVNCX0NPVU5UNl9SWF9CTFNJWkUgICAgICAgICAgICAgICAgICBVU0JfQ09VTlQ2X1JYX0JMU0laRV9Nc2sgICAgICAgICAvKiE8IEJMb2NrIFNJWkUgKi8NCg0KLyoqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgVVNCX0NPVU5UN19SWCByZWdpc3RlciAgKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgVVNCX0NPVU5UN19SWF9DT1VOVDdfUlhfUG9zICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNCX0NPVU5UN19SWF9DT1VOVDdfUlhfTXNrICAgICAgICAgICAoMHgzRkZVIDw8IFVTQl9DT1VOVDdfUlhfQ09VTlQ3X1JYX1BvcykgLyohPCAweDAwMDAwM0ZGICovDQojZGVmaW5lIFVTQl9DT1VOVDdfUlhfQ09VTlQ3X1JYICAgICAgICAgICAgICAgVVNCX0NPVU5UN19SWF9DT1VOVDdfUlhfTXNrICAgICAgLyohPCBSZWNlcHRpb24gQnl0ZSBDb3VudCAqLw0KDQojZGVmaW5lIFVTQl9DT1VOVDdfUlhfTlVNX0JMT0NLX1BvcyAgICAgICAgICAgKDEwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQl9DT1VOVDdfUlhfTlVNX0JMT0NLX01zayAgICAgICAgICAgKDB4MUZVIDw8IFVTQl9DT1VOVDdfUlhfTlVNX0JMT0NLX1BvcykgLyohPCAweDAwMDA3QzAwICovDQojZGVmaW5lIFVTQl9DT1VOVDdfUlhfTlVNX0JMT0NLICAgICAgICAgICAgICAgVVNCX0NPVU5UN19SWF9OVU1fQkxPQ0tfTXNrICAgICAgLyohPCBOVU1fQkxPQ0tbNDowXSBiaXRzIChOdW1iZXIgb2YgYmxvY2tzKSAqLw0KI2RlZmluZSBVU0JfQ09VTlQ3X1JYX05VTV9CTE9DS18wICAgICAgICAgICAgICgweDAxVSA8PCBVU0JfQ09VTlQ3X1JYX05VTV9CTE9DS19Qb3MpIC8qITwgMHgwMDAwMDQwMCAqLw0KI2RlZmluZSBVU0JfQ09VTlQ3X1JYX05VTV9CTE9DS18xICAgICAgICAgICAgICgweDAyVSA8PCBVU0JfQ09VTlQ3X1JYX05VTV9CTE9DS19Qb3MpIC8qITwgMHgwMDAwMDgwMCAqLw0KI2RlZmluZSBVU0JfQ09VTlQ3X1JYX05VTV9CTE9DS18yICAgICAgICAgICAgICgweDA0VSA8PCBVU0JfQ09VTlQ3X1JYX05VTV9CTE9DS19Qb3MpIC8qITwgMHgwMDAwMTAwMCAqLw0KI2RlZmluZSBVU0JfQ09VTlQ3X1JYX05VTV9CTE9DS18zICAgICAgICAgICAgICgweDA4VSA8PCBVU0JfQ09VTlQ3X1JYX05VTV9CTE9DS19Qb3MpIC8qITwgMHgwMDAwMjAwMCAqLw0KI2RlZmluZSBVU0JfQ09VTlQ3X1JYX05VTV9CTE9DS180ICAgICAgICAgICAgICgweDEwVSA8PCBVU0JfQ09VTlQ3X1JYX05VTV9CTE9DS19Qb3MpIC8qITwgMHgwMDAwNDAwMCAqLw0KDQojZGVmaW5lIFVTQl9DT1VOVDdfUlhfQkxTSVpFX1BvcyAgICAgICAgICAgICAgKDE1VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQl9DT1VOVDdfUlhfQkxTSVpFX01zayAgICAgICAgICAgICAgKDB4MVUgPDwgVVNCX0NPVU5UN19SWF9CTFNJWkVfUG9zKSAvKiE8IDB4MDAwMDgwMDAgKi8NCiNkZWZpbmUgVVNCX0NPVU5UN19SWF9CTFNJWkUgICAgICAgICAgICAgICAgICBVU0JfQ09VTlQ3X1JYX0JMU0laRV9Nc2sgICAgICAgICAvKiE8IEJMb2NrIFNJWkUgKi8NCg0KLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi8NCg0KLyoqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBVU0JfQ09VTlQwX1JYXzAgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKi8NCiNkZWZpbmUgVVNCX0NPVU5UMF9SWF8wX0NPVU5UMF9SWF8wICAgICAgICAgICAoMHgwMDAwMDNGRlUpICAgICAgICAgICAgICAgICAgICAvKiE8IFJlY2VwdGlvbiBCeXRlIENvdW50IChsb3cpICovDQoNCiNkZWZpbmUgVVNCX0NPVU5UMF9SWF8wX05VTV9CTE9DS18wICAgICAgICAgICAoMHgwMDAwN0MwMFUpICAgICAgICAgICAgICAgICAgICAvKiE8IE5VTV9CTE9DS18wWzQ6MF0gYml0cyAoTnVtYmVyIG9mIGJsb2NrcykgKGxvdykgKi8NCiNkZWZpbmUgVVNCX0NPVU5UMF9SWF8wX05VTV9CTE9DS18wXzAgICAgICAgICAoMHgwMDAwMDQwMFUpICAgICAgICAgICAgICAgICAgICAvKiE8IEJpdCAwICovDQojZGVmaW5lIFVTQl9DT1VOVDBfUlhfMF9OVU1fQkxPQ0tfMF8xICAgICAgICAgKDB4MDAwMDA4MDBVKSAgICAgICAgICAgICAgICAgICAgLyohPCBCaXQgMSAqLw0KI2RlZmluZSBVU0JfQ09VTlQwX1JYXzBfTlVNX0JMT0NLXzBfMiAgICAgICAgICgweDAwMDAxMDAwVSkgICAgICAgICAgICAgICAgICAgIC8qITwgQml0IDIgKi8NCiNkZWZpbmUgVVNCX0NPVU5UMF9SWF8wX05VTV9CTE9DS18wXzMgICAgICAgICAoMHgwMDAwMjAwMFUpICAgICAgICAgICAgICAgICAgICAvKiE8IEJpdCAzICovDQojZGVmaW5lIFVTQl9DT1VOVDBfUlhfMF9OVU1fQkxPQ0tfMF80ICAgICAgICAgKDB4MDAwMDQwMDBVKSAgICAgICAgICAgICAgICAgICAgLyohPCBCaXQgNCAqLw0KDQojZGVmaW5lIFVTQl9DT1VOVDBfUlhfMF9CTFNJWkVfMCAgICAgICAgICAgICAgKDB4MDAwMDgwMDBVKSAgICAgICAgICAgICAgICAgICAgLyohPCBCTG9jayBTSVpFIChsb3cpICovDQoNCi8qKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgVVNCX0NPVU5UMF9SWF8xIHJlZ2lzdGVyICAqKioqKioqKioqKioqKiovDQojZGVmaW5lIFVTQl9DT1VOVDBfUlhfMV9DT1VOVDBfUlhfMSAgICAgICAgICAgKDB4MDNGRjAwMDBVKSAgICAgICAgICAgICAgICAgICAgLyohPCBSZWNlcHRpb24gQnl0ZSBDb3VudCAoaGlnaCkgKi8NCg0KI2RlZmluZSBVU0JfQ09VTlQwX1JYXzFfTlVNX0JMT0NLXzEgICAgICAgICAgICgweDdDMDAwMDAwVSkgICAgICAgICAgICAgICAgICAgIC8qITwgTlVNX0JMT0NLXzFbNDowXSBiaXRzIChOdW1iZXIgb2YgYmxvY2tzKSAoaGlnaCkgKi8NCiNkZWZpbmUgVVNCX0NPVU5UMF9SWF8xX05VTV9CTE9DS18xXzAgICAgICAgICAoMHgwNDAwMDAwMFUpICAgICAgICAgICAgICAgICAgICAvKiE8IEJpdCAxICovDQojZGVmaW5lIFVTQl9DT1VOVDBfUlhfMV9OVU1fQkxPQ0tfMV8xICAgICAgICAgKDB4MDgwMDAwMDBVKSAgICAgICAgICAgICAgICAgICAgLyohPCBCaXQgMSAqLw0KI2RlZmluZSBVU0JfQ09VTlQwX1JYXzFfTlVNX0JMT0NLXzFfMiAgICAgICAgICgweDEwMDAwMDAwVSkgICAgICAgICAgICAgICAgICAgIC8qITwgQml0IDIgKi8NCiNkZWZpbmUgVVNCX0NPVU5UMF9SWF8xX05VTV9CTE9DS18xXzMgICAgICAgICAoMHgyMDAwMDAwMFUpICAgICAgICAgICAgICAgICAgICAvKiE8IEJpdCAzICovDQojZGVmaW5lIFVTQl9DT1VOVDBfUlhfMV9OVU1fQkxPQ0tfMV80ICAgICAgICAgKDB4NDAwMDAwMDBVKSAgICAgICAgICAgICAgICAgICAgLyohPCBCaXQgNCAqLw0KDQojZGVmaW5lIFVTQl9DT1VOVDBfUlhfMV9CTFNJWkVfMSAgICAgICAgICAgICAgKDB4ODAwMDAwMDBVKSAgICAgICAgICAgICAgICAgICAgLyohPCBCTG9jayBTSVpFIChoaWdoKSAqLw0KDQovKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFVTQl9DT1VOVDFfUlhfMCByZWdpc3RlciAgKioqKioqKioqKioqKioqLw0KI2RlZmluZSBVU0JfQ09VTlQxX1JYXzBfQ09VTlQxX1JYXzAgICAgICAgICAgICgweDAwMDAwM0ZGVSkgICAgICAgICAgICAgICAgICAgIC8qITwgUmVjZXB0aW9uIEJ5dGUgQ291bnQgKGxvdykgKi8NCg0KI2RlZmluZSBVU0JfQ09VTlQxX1JYXzBfTlVNX0JMT0NLXzAgICAgICAgICAgICgweDAwMDA3QzAwVSkgICAgICAgICAgICAgICAgICAgIC8qITwgTlVNX0JMT0NLXzBbNDowXSBiaXRzIChOdW1iZXIgb2YgYmxvY2tzKSAobG93KSAqLw0KI2RlZmluZSBVU0JfQ09VTlQxX1JYXzBfTlVNX0JMT0NLXzBfMCAgICAgICAgICgweDAwMDAwNDAwVSkgICAgICAgICAgICAgICAgICAgIC8qITwgQml0IDAgKi8NCiNkZWZpbmUgVVNCX0NPVU5UMV9SWF8wX05VTV9CTE9DS18wXzEgICAgICAgICAoMHgwMDAwMDgwMFUpICAgICAgICAgICAgICAgICAgICAvKiE8IEJpdCAxICovDQojZGVmaW5lIFVTQl9DT1VOVDFfUlhfMF9OVU1fQkxPQ0tfMF8yICAgICAgICAgKDB4MDAwMDEwMDBVKSAgICAgICAgICAgICAgICAgICAgLyohPCBCaXQgMiAqLw0KI2RlZmluZSBVU0JfQ09VTlQxX1JYXzBfTlVNX0JMT0NLXzBfMyAgICAgICAgICgweDAwMDAyMDAwVSkgICAgICAgICAgICAgICAgICAgIC8qITwgQml0IDMgKi8NCiNkZWZpbmUgVVNCX0NPVU5UMV9SWF8wX05VTV9CTE9DS18wXzQgICAgICAgICAoMHgwMDAwNDAwMFUpICAgICAgICAgICAgICAgICAgICAvKiE8IEJpdCA0ICovDQoNCiNkZWZpbmUgVVNCX0NPVU5UMV9SWF8wX0JMU0laRV8wICAgICAgICAgICAgICAoMHgwMDAwODAwMFUpICAgICAgICAgICAgICAgICAgICAvKiE8IEJMb2NrIFNJWkUgKGxvdykgKi8NCg0KLyoqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBVU0JfQ09VTlQxX1JYXzEgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKi8NCiNkZWZpbmUgVVNCX0NPVU5UMV9SWF8xX0NPVU5UMV9SWF8xICAgICAgICAgICAoMHgwM0ZGMDAwMFUpICAgICAgICAgICAgICAgICAgICAvKiE8IFJlY2VwdGlvbiBCeXRlIENvdW50IChoaWdoKSAqLw0KDQojZGVmaW5lIFVTQl9DT1VOVDFfUlhfMV9OVU1fQkxPQ0tfMSAgICAgICAgICAgKDB4N0MwMDAwMDBVKSAgICAgICAgICAgICAgICAgICAgLyohPCBOVU1fQkxPQ0tfMVs0OjBdIGJpdHMgKE51bWJlciBvZiBibG9ja3MpIChoaWdoKSAqLw0KI2RlZmluZSBVU0JfQ09VTlQxX1JYXzFfTlVNX0JMT0NLXzFfMCAgICAgICAgICgweDA0MDAwMDAwVSkgICAgICAgICAgICAgICAgICAgIC8qITwgQml0IDAgKi8NCiNkZWZpbmUgVVNCX0NPVU5UMV9SWF8xX05VTV9CTE9DS18xXzEgICAgICAgICAoMHgwODAwMDAwMFUpICAgICAgICAgICAgICAgICAgICAvKiE8IEJpdCAxICovDQojZGVmaW5lIFVTQl9DT1VOVDFfUlhfMV9OVU1fQkxPQ0tfMV8yICAgICAgICAgKDB4MTAwMDAwMDBVKSAgICAgICAgICAgICAgICAgICAgLyohPCBCaXQgMiAqLw0KI2RlZmluZSBVU0JfQ09VTlQxX1JYXzFfTlVNX0JMT0NLXzFfMyAgICAgICAgICgweDIwMDAwMDAwVSkgICAgICAgICAgICAgICAgICAgIC8qITwgQml0IDMgKi8NCiNkZWZpbmUgVVNCX0NPVU5UMV9SWF8xX05VTV9CTE9DS18xXzQgICAgICAgICAoMHg0MDAwMDAwMFUpICAgICAgICAgICAgICAgICAgICAvKiE8IEJpdCA0ICovDQoNCiNkZWZpbmUgVVNCX0NPVU5UMV9SWF8xX0JMU0laRV8xICAgICAgICAgICAgICAoMHg4MDAwMDAwMFUpICAgICAgICAgICAgICAgICAgICAvKiE8IEJMb2NrIFNJWkUgKGhpZ2gpICovDQoNCi8qKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgVVNCX0NPVU5UMl9SWF8wIHJlZ2lzdGVyICAqKioqKioqKioqKioqKiovDQojZGVmaW5lIFVTQl9DT1VOVDJfUlhfMF9DT1VOVDJfUlhfMCAgICAgICAgICAgKDB4MDAwMDAzRkZVKSAgICAgICAgICAgICAgICAgICAgLyohPCBSZWNlcHRpb24gQnl0ZSBDb3VudCAobG93KSAqLw0KDQojZGVmaW5lIFVTQl9DT1VOVDJfUlhfMF9OVU1fQkxPQ0tfMCAgICAgICAgICAgKDB4MDAwMDdDMDBVKSAgICAgICAgICAgICAgICAgICAgLyohPCBOVU1fQkxPQ0tfMFs0OjBdIGJpdHMgKE51bWJlciBvZiBibG9ja3MpIChsb3cpICovDQojZGVmaW5lIFVTQl9DT1VOVDJfUlhfMF9OVU1fQkxPQ0tfMF8wICAgICAgICAgKDB4MDAwMDA0MDBVKSAgICAgICAgICAgICAgICAgICAgLyohPCBCaXQgMCAqLw0KI2RlZmluZSBVU0JfQ09VTlQyX1JYXzBfTlVNX0JMT0NLXzBfMSAgICAgICAgICgweDAwMDAwODAwVSkgICAgICAgICAgICAgICAgICAgIC8qITwgQml0IDEgKi8NCiNkZWZpbmUgVVNCX0NPVU5UMl9SWF8wX05VTV9CTE9DS18wXzIgICAgICAgICAoMHgwMDAwMTAwMFUpICAgICAgICAgICAgICAgICAgICAvKiE8IEJpdCAyICovDQojZGVmaW5lIFVTQl9DT1VOVDJfUlhfMF9OVU1fQkxPQ0tfMF8zICAgICAgICAgKDB4MDAwMDIwMDBVKSAgICAgICAgICAgICAgICAgICAgLyohPCBCaXQgMyAqLw0KI2RlZmluZSBVU0JfQ09VTlQyX1JYXzBfTlVNX0JMT0NLXzBfNCAgICAgICAgICgweDAwMDA0MDAwVSkgICAgICAgICAgICAgICAgICAgIC8qITwgQml0IDQgKi8NCg0KI2RlZmluZSBVU0JfQ09VTlQyX1JYXzBfQkxTSVpFXzAgICAgICAgICAgICAgICgweDAwMDA4MDAwVSkgICAgICAgICAgICAgICAgICAgIC8qITwgQkxvY2sgU0laRSAobG93KSAqLw0KDQovKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFVTQl9DT1VOVDJfUlhfMSByZWdpc3RlciAgKioqKioqKioqKioqKioqLw0KI2RlZmluZSBVU0JfQ09VTlQyX1JYXzFfQ09VTlQyX1JYXzEgICAgICAgICAgICgweDAzRkYwMDAwVSkgICAgICAgICAgICAgICAgICAgIC8qITwgUmVjZXB0aW9uIEJ5dGUgQ291bnQgKGhpZ2gpICovDQoNCiNkZWZpbmUgVVNCX0NPVU5UMl9SWF8xX05VTV9CTE9DS18xICAgICAgICAgICAoMHg3QzAwMDAwMFUpICAgICAgICAgICAgICAgICAgICAvKiE8IE5VTV9CTE9DS18xWzQ6MF0gYml0cyAoTnVtYmVyIG9mIGJsb2NrcykgKGhpZ2gpICovDQojZGVmaW5lIFVTQl9DT1VOVDJfUlhfMV9OVU1fQkxPQ0tfMV8wICAgICAgICAgKDB4MDQwMDAwMDBVKSAgICAgICAgICAgICAgICAgICAgLyohPCBCaXQgMCAqLw0KI2RlZmluZSBVU0JfQ09VTlQyX1JYXzFfTlVNX0JMT0NLXzFfMSAgICAgICAgICgweDA4MDAwMDAwVSkgICAgICAgICAgICAgICAgICAgIC8qITwgQml0IDEgKi8NCiNkZWZpbmUgVVNCX0NPVU5UMl9SWF8xX05VTV9CTE9DS18xXzIgICAgICAgICAoMHgxMDAwMDAwMFUpICAgICAgICAgICAgICAgICAgICAvKiE8IEJpdCAyICovDQojZGVmaW5lIFVTQl9DT1VOVDJfUlhfMV9OVU1fQkxPQ0tfMV8zICAgICAgICAgKDB4MjAwMDAwMDBVKSAgICAgICAgICAgICAgICAgICAgLyohPCBCaXQgMyAqLw0KI2RlZmluZSBVU0JfQ09VTlQyX1JYXzFfTlVNX0JMT0NLXzFfNCAgICAgICAgICgweDQwMDAwMDAwVSkgICAgICAgICAgICAgICAgICAgIC8qITwgQml0IDQgKi8NCg0KI2RlZmluZSBVU0JfQ09VTlQyX1JYXzFfQkxTSVpFXzEgICAgICAgICAgICAgICgweDgwMDAwMDAwVSkgICAgICAgICAgICAgICAgICAgIC8qITwgQkxvY2sgU0laRSAoaGlnaCkgKi8NCg0KLyoqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBVU0JfQ09VTlQzX1JYXzAgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKi8NCiNkZWZpbmUgVVNCX0NPVU5UM19SWF8wX0NPVU5UM19SWF8wICAgICAgICAgICAoMHgwMDAwMDNGRlUpICAgICAgICAgICAgICAgICAgICAvKiE8IFJlY2VwdGlvbiBCeXRlIENvdW50IChsb3cpICovDQoNCiNkZWZpbmUgVVNCX0NPVU5UM19SWF8wX05VTV9CTE9DS18wICAgICAgICAgICAoMHgwMDAwN0MwMFUpICAgICAgICAgICAgICAgICAgICAvKiE8IE5VTV9CTE9DS18wWzQ6MF0gYml0cyAoTnVtYmVyIG9mIGJsb2NrcykgKGxvdykgKi8NCiNkZWZpbmUgVVNCX0NPVU5UM19SWF8wX05VTV9CTE9DS18wXzAgICAgICAgICAoMHgwMDAwMDQwMFUpICAgICAgICAgICAgICAgICAgICAvKiE8IEJpdCAwICovDQojZGVmaW5lIFVTQl9DT1VOVDNfUlhfMF9OVU1fQkxPQ0tfMF8xICAgICAgICAgKDB4MDAwMDA4MDBVKSAgICAgICAgICAgICAgICAgICAgLyohPCBCaXQgMSAqLw0KI2RlZmluZSBVU0JfQ09VTlQzX1JYXzBfTlVNX0JMT0NLXzBfMiAgICAgICAgICgweDAwMDAxMDAwVSkgICAgICAgICAgICAgICAgICAgIC8qITwgQml0IDIgKi8NCiNkZWZpbmUgVVNCX0NPVU5UM19SWF8wX05VTV9CTE9DS18wXzMgICAgICAgICAoMHgwMDAwMjAwMFUpICAgICAgICAgICAgICAgICAgICAvKiE8IEJpdCAzICovDQojZGVmaW5lIFVTQl9DT1VOVDNfUlhfMF9OVU1fQkxPQ0tfMF80ICAgICAgICAgKDB4MDAwMDQwMDBVKSAgICAgICAgICAgICAgICAgICAgLyohPCBCaXQgNCAqLw0KDQojZGVmaW5lIFVTQl9DT1VOVDNfUlhfMF9CTFNJWkVfMCAgICAgICAgICAgICAgKDB4MDAwMDgwMDBVKSAgICAgICAgICAgICAgICAgICAgLyohPCBCTG9jayBTSVpFIChsb3cpICovDQoNCi8qKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgVVNCX0NPVU5UM19SWF8xIHJlZ2lzdGVyICAqKioqKioqKioqKioqKiovDQojZGVmaW5lIFVTQl9DT1VOVDNfUlhfMV9DT1VOVDNfUlhfMSAgICAgICAgICAgKDB4MDNGRjAwMDBVKSAgICAgICAgICAgICAgICAgICAgLyohPCBSZWNlcHRpb24gQnl0ZSBDb3VudCAoaGlnaCkgKi8NCg0KI2RlZmluZSBVU0JfQ09VTlQzX1JYXzFfTlVNX0JMT0NLXzEgICAgICAgICAgICgweDdDMDAwMDAwVSkgICAgICAgICAgICAgICAgICAgIC8qITwgTlVNX0JMT0NLXzFbNDowXSBiaXRzIChOdW1iZXIgb2YgYmxvY2tzKSAoaGlnaCkgKi8NCiNkZWZpbmUgVVNCX0NPVU5UM19SWF8xX05VTV9CTE9DS18xXzAgICAgICAgICAoMHgwNDAwMDAwMFUpICAgICAgICAgICAgICAgICAgICAvKiE8IEJpdCAwICovDQojZGVmaW5lIFVTQl9DT1VOVDNfUlhfMV9OVU1fQkxPQ0tfMV8xICAgICAgICAgKDB4MDgwMDAwMDBVKSAgICAgICAgICAgICAgICAgICAgLyohPCBCaXQgMSAqLw0KI2RlZmluZSBVU0JfQ09VTlQzX1JYXzFfTlVNX0JMT0NLXzFfMiAgICAgICAgICgweDEwMDAwMDAwVSkgICAgICAgICAgICAgICAgICAgIC8qITwgQml0IDIgKi8NCiNkZWZpbmUgVVNCX0NPVU5UM19SWF8xX05VTV9CTE9DS18xXzMgICAgICAgICAoMHgyMDAwMDAwMFUpICAgICAgICAgICAgICAgICAgICAvKiE8IEJpdCAzICovDQojZGVmaW5lIFVTQl9DT1VOVDNfUlhfMV9OVU1fQkxPQ0tfMV80ICAgICAgICAgKDB4NDAwMDAwMDBVKSAgICAgICAgICAgICAgICAgICAgLyohPCBCaXQgNCAqLw0KDQojZGVmaW5lIFVTQl9DT1VOVDNfUlhfMV9CTFNJWkVfMSAgICAgICAgICAgICAgKDB4ODAwMDAwMDBVKSAgICAgICAgICAgICAgICAgICAgLyohPCBCTG9jayBTSVpFIChoaWdoKSAqLw0KDQovKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFVTQl9DT1VOVDRfUlhfMCByZWdpc3RlciAgKioqKioqKioqKioqKioqLw0KI2RlZmluZSBVU0JfQ09VTlQ0X1JYXzBfQ09VTlQ0X1JYXzAgICAgICAgICAgICgweDAwMDAwM0ZGVSkgICAgICAgICAgICAgICAgICAgIC8qITwgUmVjZXB0aW9uIEJ5dGUgQ291bnQgKGxvdykgKi8NCg0KI2RlZmluZSBVU0JfQ09VTlQ0X1JYXzBfTlVNX0JMT0NLXzAgICAgICAgICAgICgweDAwMDA3QzAwVSkgICAgICAgICAgICAgICAgICAgIC8qITwgTlVNX0JMT0NLXzBbNDowXSBiaXRzIChOdW1iZXIgb2YgYmxvY2tzKSAobG93KSAqLw0KI2RlZmluZSBVU0JfQ09VTlQ0X1JYXzBfTlVNX0JMT0NLXzBfMCAgICAgICAgICgweDAwMDAwNDAwVSkgICAgICAgICAgICAgICAgICAgIC8qITwgQml0IDAgKi8NCiNkZWZpbmUgVVNCX0NPVU5UNF9SWF8wX05VTV9CTE9DS18wXzEgICAgICAgICAoMHgwMDAwMDgwMFUpICAgICAgICAgICAgICAgICAgICAvKiE8IEJpdCAxICovDQojZGVmaW5lIFVTQl9DT1VOVDRfUlhfMF9OVU1fQkxPQ0tfMF8yICAgICAgICAgKDB4MDAwMDEwMDBVKSAgICAgICAgICAgICAgICAgICAgLyohPCBCaXQgMiAqLw0KI2RlZmluZSBVU0JfQ09VTlQ0X1JYXzBfTlVNX0JMT0NLXzBfMyAgICAgICAgICgweDAwMDAyMDAwVSkgICAgICAgICAgICAgICAgICAgIC8qITwgQml0IDMgKi8NCiNkZWZpbmUgVVNCX0NPVU5UNF9SWF8wX05VTV9CTE9DS18wXzQgICAgICAgICAoMHgwMDAwNDAwMFUpICAgICAgICAgICAgICAgICAgICAvKiE8IEJpdCA0ICovDQoNCiNkZWZpbmUgVVNCX0NPVU5UNF9SWF8wX0JMU0laRV8wICAgICAgICAgICAgICAoMHgwMDAwODAwMFUpICAgICAgICAgICAgICAgICAgICAvKiE8IEJMb2NrIFNJWkUgKGxvdykgKi8NCg0KLyoqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBVU0JfQ09VTlQ0X1JYXzEgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKi8NCiNkZWZpbmUgVVNCX0NPVU5UNF9SWF8xX0NPVU5UNF9SWF8xICAgICAgICAgICAoMHgwM0ZGMDAwMFUpICAgICAgICAgICAgICAgICAgICAvKiE8IFJlY2VwdGlvbiBCeXRlIENvdW50IChoaWdoKSAqLw0KDQojZGVmaW5lIFVTQl9DT1VOVDRfUlhfMV9OVU1fQkxPQ0tfMSAgICAgICAgICAgKDB4N0MwMDAwMDBVKSAgICAgICAgICAgICAgICAgICAgLyohPCBOVU1fQkxPQ0tfMVs0OjBdIGJpdHMgKE51bWJlciBvZiBibG9ja3MpIChoaWdoKSAqLw0KI2RlZmluZSBVU0JfQ09VTlQ0X1JYXzFfTlVNX0JMT0NLXzFfMCAgICAgICAgICgweDA0MDAwMDAwVSkgICAgICAgICAgICAgICAgICAgIC8qITwgQml0IDAgKi8NCiNkZWZpbmUgVVNCX0NPVU5UNF9SWF8xX05VTV9CTE9DS18xXzEgICAgICAgICAoMHgwODAwMDAwMFUpICAgICAgICAgICAgICAgICAgICAvKiE8IEJpdCAxICovDQojZGVmaW5lIFVTQl9DT1VOVDRfUlhfMV9OVU1fQkxPQ0tfMV8yICAgICAgICAgKDB4MTAwMDAwMDBVKSAgICAgICAgICAgICAgICAgICAgLyohPCBCaXQgMiAqLw0KI2RlZmluZSBVU0JfQ09VTlQ0X1JYXzFfTlVNX0JMT0NLXzFfMyAgICAgICAgICgweDIwMDAwMDAwVSkgICAgICAgICAgICAgICAgICAgIC8qITwgQml0IDMgKi8NCiNkZWZpbmUgVVNCX0NPVU5UNF9SWF8xX05VTV9CTE9DS18xXzQgICAgICAgICAoMHg0MDAwMDAwMFUpICAgICAgICAgICAgICAgICAgICAvKiE8IEJpdCA0ICovDQoNCiNkZWZpbmUgVVNCX0NPVU5UNF9SWF8xX0JMU0laRV8xICAgICAgICAgICAgICAoMHg4MDAwMDAwMFUpICAgICAgICAgICAgICAgICAgICAvKiE8IEJMb2NrIFNJWkUgKGhpZ2gpICovDQoNCi8qKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgVVNCX0NPVU5UNV9SWF8wIHJlZ2lzdGVyICAqKioqKioqKioqKioqKiovDQojZGVmaW5lIFVTQl9DT1VOVDVfUlhfMF9DT1VOVDVfUlhfMCAgICAgICAgICAgKDB4MDAwMDAzRkZVKSAgICAgICAgICAgICAgICAgICAgLyohPCBSZWNlcHRpb24gQnl0ZSBDb3VudCAobG93KSAqLw0KDQojZGVmaW5lIFVTQl9DT1VOVDVfUlhfMF9OVU1fQkxPQ0tfMCAgICAgICAgICAgKDB4MDAwMDdDMDBVKSAgICAgICAgICAgICAgICAgICAgLyohPCBOVU1fQkxPQ0tfMFs0OjBdIGJpdHMgKE51bWJlciBvZiBibG9ja3MpIChsb3cpICovDQojZGVmaW5lIFVTQl9DT1VOVDVfUlhfMF9OVU1fQkxPQ0tfMF8wICAgICAgICAgKDB4MDAwMDA0MDBVKSAgICAgICAgICAgICAgICAgICAgLyohPCBCaXQgMCAqLw0KI2RlZmluZSBVU0JfQ09VTlQ1X1JYXzBfTlVNX0JMT0NLXzBfMSAgICAgICAgICgweDAwMDAwODAwVSkgICAgICAgICAgICAgICAgICAgIC8qITwgQml0IDEgKi8NCiNkZWZpbmUgVVNCX0NPVU5UNV9SWF8wX05VTV9CTE9DS18wXzIgICAgICAgICAoMHgwMDAwMTAwMFUpICAgICAgICAgICAgICAgICAgICAvKiE8IEJpdCAyICovDQojZGVmaW5lIFVTQl9DT1VOVDVfUlhfMF9OVU1fQkxPQ0tfMF8zICAgICAgICAgKDB4MDAwMDIwMDBVKSAgICAgICAgICAgICAgICAgICAgLyohPCBCaXQgMyAqLw0KI2RlZmluZSBVU0JfQ09VTlQ1X1JYXzBfTlVNX0JMT0NLXzBfNCAgICAgICAgICgweDAwMDA0MDAwVSkgICAgICAgICAgICAgICAgICAgIC8qITwgQml0IDQgKi8NCg0KI2RlZmluZSBVU0JfQ09VTlQ1X1JYXzBfQkxTSVpFXzAgICAgICAgICAgICAgICgweDAwMDA4MDAwVSkgICAgICAgICAgICAgICAgICAgIC8qITwgQkxvY2sgU0laRSAobG93KSAqLw0KDQovKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFVTQl9DT1VOVDVfUlhfMSByZWdpc3RlciAgKioqKioqKioqKioqKioqLw0KI2RlZmluZSBVU0JfQ09VTlQ1X1JYXzFfQ09VTlQ1X1JYXzEgICAgICAgICAgICgweDAzRkYwMDAwVSkgICAgICAgICAgICAgICAgICAgIC8qITwgUmVjZXB0aW9uIEJ5dGUgQ291bnQgKGhpZ2gpICovDQoNCiNkZWZpbmUgVVNCX0NPVU5UNV9SWF8xX05VTV9CTE9DS18xICAgICAgICAgICAoMHg3QzAwMDAwMFUpICAgICAgICAgICAgICAgICAgICAvKiE8IE5VTV9CTE9DS18xWzQ6MF0gYml0cyAoTnVtYmVyIG9mIGJsb2NrcykgKGhpZ2gpICovDQojZGVmaW5lIFVTQl9DT1VOVDVfUlhfMV9OVU1fQkxPQ0tfMV8wICAgICAgICAgKDB4MDQwMDAwMDBVKSAgICAgICAgICAgICAgICAgICAgLyohPCBCaXQgMCAqLw0KI2RlZmluZSBVU0JfQ09VTlQ1X1JYXzFfTlVNX0JMT0NLXzFfMSAgICAgICAgICgweDA4MDAwMDAwVSkgICAgICAgICAgICAgICAgICAgIC8qITwgQml0IDEgKi8NCiNkZWZpbmUgVVNCX0NPVU5UNV9SWF8xX05VTV9CTE9DS18xXzIgICAgICAgICAoMHgxMDAwMDAwMFUpICAgICAgICAgICAgICAgICAgICAvKiE8IEJpdCAyICovDQojZGVmaW5lIFVTQl9DT1VOVDVfUlhfMV9OVU1fQkxPQ0tfMV8zICAgICAgICAgKDB4MjAwMDAwMDBVKSAgICAgICAgICAgICAgICAgICAgLyohPCBCaXQgMyAqLw0KI2RlZmluZSBVU0JfQ09VTlQ1X1JYXzFfTlVNX0JMT0NLXzFfNCAgICAgICAgICgweDQwMDAwMDAwVSkgICAgICAgICAgICAgICAgICAgIC8qITwgQml0IDQgKi8NCg0KI2RlZmluZSBVU0JfQ09VTlQ1X1JYXzFfQkxTSVpFXzEgICAgICAgICAgICAgICgweDgwMDAwMDAwVSkgICAgICAgICAgICAgICAgICAgIC8qITwgQkxvY2sgU0laRSAoaGlnaCkgKi8NCg0KLyoqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFVTQl9DT1VOVDZfUlhfMCAgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKi8NCiNkZWZpbmUgVVNCX0NPVU5UNl9SWF8wX0NPVU5UNl9SWF8wICAgICAgICAgICAoMHgwMDAwMDNGRlUpICAgICAgICAgICAgICAgICAgICAvKiE8IFJlY2VwdGlvbiBCeXRlIENvdW50IChsb3cpICovDQoNCiNkZWZpbmUgVVNCX0NPVU5UNl9SWF8wX05VTV9CTE9DS18wICAgICAgICAgICAoMHgwMDAwN0MwMFUpICAgICAgICAgICAgICAgICAgICAvKiE8IE5VTV9CTE9DS18wWzQ6MF0gYml0cyAoTnVtYmVyIG9mIGJsb2NrcykgKGxvdykgKi8NCiNkZWZpbmUgVVNCX0NPVU5UNl9SWF8wX05VTV9CTE9DS18wXzAgICAgICAgICAoMHgwMDAwMDQwMFUpICAgICAgICAgICAgICAgICAgICAvKiE8IEJpdCAwICovDQojZGVmaW5lIFVTQl9DT1VOVDZfUlhfMF9OVU1fQkxPQ0tfMF8xICAgICAgICAgKDB4MDAwMDA4MDBVKSAgICAgICAgICAgICAgICAgICAgLyohPCBCaXQgMSAqLw0KI2RlZmluZSBVU0JfQ09VTlQ2X1JYXzBfTlVNX0JMT0NLXzBfMiAgICAgICAgICgweDAwMDAxMDAwVSkgICAgICAgICAgICAgICAgICAgIC8qITwgQml0IDIgKi8NCiNkZWZpbmUgVVNCX0NPVU5UNl9SWF8wX05VTV9CTE9DS18wXzMgICAgICAgICAoMHgwMDAwMjAwMFUpICAgICAgICAgICAgICAgICAgICAvKiE8IEJpdCAzICovDQojZGVmaW5lIFVTQl9DT1VOVDZfUlhfMF9OVU1fQkxPQ0tfMF80ICAgICAgICAgKDB4MDAwMDQwMDBVKSAgICAgICAgICAgICAgICAgICAgLyohPCBCaXQgNCAqLw0KDQojZGVmaW5lIFVTQl9DT1VOVDZfUlhfMF9CTFNJWkVfMCAgICAgICAgICAgICAgKDB4MDAwMDgwMDBVKSAgICAgICAgICAgICAgICAgICAgLyohPCBCTG9jayBTSVpFIChsb3cpICovDQoNCi8qKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgVVNCX0NPVU5UNl9SWF8xIHJlZ2lzdGVyICAqKioqKioqKioqKioqKiovDQojZGVmaW5lIFVTQl9DT1VOVDZfUlhfMV9DT1VOVDZfUlhfMSAgICAgICAgICAgKDB4MDNGRjAwMDBVKSAgICAgICAgICAgICAgICAgICAgLyohPCBSZWNlcHRpb24gQnl0ZSBDb3VudCAoaGlnaCkgKi8NCg0KI2RlZmluZSBVU0JfQ09VTlQ2X1JYXzFfTlVNX0JMT0NLXzEgICAgICAgICAgICgweDdDMDAwMDAwVSkgICAgICAgICAgICAgICAgICAgIC8qITwgTlVNX0JMT0NLXzFbNDowXSBiaXRzIChOdW1iZXIgb2YgYmxvY2tzKSAoaGlnaCkgKi8NCiNkZWZpbmUgVVNCX0NPVU5UNl9SWF8xX05VTV9CTE9DS18xXzAgICAgICAgICAoMHgwNDAwMDAwMFUpICAgICAgICAgICAgICAgICAgICAvKiE8IEJpdCAwICovDQojZGVmaW5lIFVTQl9DT1VOVDZfUlhfMV9OVU1fQkxPQ0tfMV8xICAgICAgICAgKDB4MDgwMDAwMDBVKSAgICAgICAgICAgICAgICAgICAgLyohPCBCaXQgMSAqLw0KI2RlZmluZSBVU0JfQ09VTlQ2X1JYXzFfTlVNX0JMT0NLXzFfMiAgICAgICAgICgweDEwMDAwMDAwVSkgICAgICAgICAgICAgICAgICAgIC8qITwgQml0IDIgKi8NCiNkZWZpbmUgVVNCX0NPVU5UNl9SWF8xX05VTV9CTE9DS18xXzMgICAgICAgICAoMHgyMDAwMDAwMFUpICAgICAgICAgICAgICAgICAgICAvKiE8IEJpdCAzICovDQojZGVmaW5lIFVTQl9DT1VOVDZfUlhfMV9OVU1fQkxPQ0tfMV80ICAgICAgICAgKDB4NDAwMDAwMDBVKSAgICAgICAgICAgICAgICAgICAgLyohPCBCaXQgNCAqLw0KDQojZGVmaW5lIFVTQl9DT1VOVDZfUlhfMV9CTFNJWkVfMSAgICAgICAgICAgICAgKDB4ODAwMDAwMDBVKSAgICAgICAgICAgICAgICAgICAgLyohPCBCTG9jayBTSVpFIChoaWdoKSAqLw0KDQovKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgVVNCX0NPVU5UN19SWF8wIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBVU0JfQ09VTlQ3X1JYXzBfQ09VTlQ3X1JYXzAgICAgICAgICAgICgweDAwMDAwM0ZGVSkgICAgICAgICAgICAgICAgICAgIC8qITwgUmVjZXB0aW9uIEJ5dGUgQ291bnQgKGxvdykgKi8NCg0KI2RlZmluZSBVU0JfQ09VTlQ3X1JYXzBfTlVNX0JMT0NLXzAgICAgICAgICAgICgweDAwMDA3QzAwVSkgICAgICAgICAgICAgICAgICAgIC8qITwgTlVNX0JMT0NLXzBbNDowXSBiaXRzIChOdW1iZXIgb2YgYmxvY2tzKSAobG93KSAqLw0KI2RlZmluZSBVU0JfQ09VTlQ3X1JYXzBfTlVNX0JMT0NLXzBfMCAgICAgICAgICgweDAwMDAwNDAwVSkgICAgICAgICAgICAgICAgICAgIC8qITwgQml0IDAgKi8NCiNkZWZpbmUgVVNCX0NPVU5UN19SWF8wX05VTV9CTE9DS18wXzEgICAgICAgICAoMHgwMDAwMDgwMFUpICAgICAgICAgICAgICAgICAgICAvKiE8IEJpdCAxICovDQojZGVmaW5lIFVTQl9DT1VOVDdfUlhfMF9OVU1fQkxPQ0tfMF8yICAgICAgICAgKDB4MDAwMDEwMDBVKSAgICAgICAgICAgICAgICAgICAgLyohPCBCaXQgMiAqLw0KI2RlZmluZSBVU0JfQ09VTlQ3X1JYXzBfTlVNX0JMT0NLXzBfMyAgICAgICAgICgweDAwMDAyMDAwVSkgICAgICAgICAgICAgICAgICAgIC8qITwgQml0IDMgKi8NCiNkZWZpbmUgVVNCX0NPVU5UN19SWF8wX05VTV9CTE9DS18wXzQgICAgICAgICAoMHgwMDAwNDAwMFUpICAgICAgICAgICAgICAgICAgICAvKiE8IEJpdCA0ICovDQoNCiNkZWZpbmUgVVNCX0NPVU5UN19SWF8wX0JMU0laRV8wICAgICAgICAgICAgICAoMHgwMDAwODAwMFUpICAgICAgICAgICAgICAgICAgICAvKiE8IEJMb2NrIFNJWkUgKGxvdykgKi8NCg0KLyoqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFVTQl9DT1VOVDdfUlhfMSByZWdpc3RlciAgKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgVVNCX0NPVU5UN19SWF8xX0NPVU5UN19SWF8xICAgICAgICAgICAoMHgwM0ZGMDAwMFUpICAgICAgICAgICAgICAgICAgICAvKiE8IFJlY2VwdGlvbiBCeXRlIENvdW50IChoaWdoKSAqLw0KDQojZGVmaW5lIFVTQl9DT1VOVDdfUlhfMV9OVU1fQkxPQ0tfMSAgICAgICAgICAgKDB4N0MwMDAwMDBVKSAgICAgICAgICAgICAgICAgICAgLyohPCBOVU1fQkxPQ0tfMVs0OjBdIGJpdHMgKE51bWJlciBvZiBibG9ja3MpIChoaWdoKSAqLw0KI2RlZmluZSBVU0JfQ09VTlQ3X1JYXzFfTlVNX0JMT0NLXzFfMCAgICAgICAgICgweDA0MDAwMDAwVSkgICAgICAgICAgICAgICAgICAgIC8qITwgQml0IDAgKi8NCiNkZWZpbmUgVVNCX0NPVU5UN19SWF8xX05VTV9CTE9DS18xXzEgICAgICAgICAoMHgwODAwMDAwMFUpICAgICAgICAgICAgICAgICAgICAvKiE8IEJpdCAxICovDQojZGVmaW5lIFVTQl9DT1VOVDdfUlhfMV9OVU1fQkxPQ0tfMV8yICAgICAgICAgKDB4MTAwMDAwMDBVKSAgICAgICAgICAgICAgICAgICAgLyohPCBCaXQgMiAqLw0KI2RlZmluZSBVU0JfQ09VTlQ3X1JYXzFfTlVNX0JMT0NLXzFfMyAgICAgICAgICgweDIwMDAwMDAwVSkgICAgICAgICAgICAgICAgICAgIC8qITwgQml0IDMgKi8NCiNkZWZpbmUgVVNCX0NPVU5UN19SWF8xX05VTV9CTE9DS18xXzQgICAgICAgICAoMHg0MDAwMDAwMFUpICAgICAgICAgICAgICAgICAgICAvKiE8IEJpdCA0ICovDQoNCiNkZWZpbmUgVVNCX0NPVU5UN19SWF8xX0JMU0laRV8xICAgICAgICAgICAgICAoMHg4MDAwMDAwMFUpICAgICAgICAgICAgICAgICAgICAvKiE8IEJMb2NrIFNJWkUgKGhpZ2gpICovDQoNCi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovDQovKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLw0KLyogICAgICAgICAgICAgICAgICAgICAgICAgV2luZG93IFdBVENIRE9HIChXV0RHKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8NCi8qICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovDQovKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLw0KDQovKioqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFdXREdfQ1IgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBXV0RHX0NSX1RfUG9zICAgICAgICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBXV0RHX0NSX1RfTXNrICAgICAgICAgICAgICAgICAgICAgICAoMHg3RlUgPDwgV1dER19DUl9UX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDA3RiAqLw0KI2RlZmluZSBXV0RHX0NSX1QgICAgICAgICAgICAgICAgICAgICAgICAgICBXV0RHX0NSX1RfTXNrICAgICAgICAgICAgICAgICAgICAgIC8qITwgVFs2OjBdIGJpdHMgKDctQml0IGNvdW50ZXIgKE1TQiB0byBMU0IpKSAqLw0KI2RlZmluZSBXV0RHX0NSX1RfMCAgICAgICAgICAgICAgICAgICAgICAgICAoMHgwMVUgPDwgV1dER19DUl9UX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDAwMSAqLw0KI2RlZmluZSBXV0RHX0NSX1RfMSAgICAgICAgICAgICAgICAgICAgICAgICAoMHgwMlUgPDwgV1dER19DUl9UX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDAwMiAqLw0KI2RlZmluZSBXV0RHX0NSX1RfMiAgICAgICAgICAgICAgICAgICAgICAgICAoMHgwNFUgPDwgV1dER19DUl9UX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDAwNCAqLw0KI2RlZmluZSBXV0RHX0NSX1RfMyAgICAgICAgICAgICAgICAgICAgICAgICAoMHgwOFUgPDwgV1dER19DUl9UX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDAwOCAqLw0KI2RlZmluZSBXV0RHX0NSX1RfNCAgICAgICAgICAgICAgICAgICAgICAgICAoMHgxMFUgPDwgV1dER19DUl9UX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDAxMCAqLw0KI2RlZmluZSBXV0RHX0NSX1RfNSAgICAgICAgICAgICAgICAgICAgICAgICAoMHgyMFUgPDwgV1dER19DUl9UX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDAyMCAqLw0KI2RlZmluZSBXV0RHX0NSX1RfNiAgICAgICAgICAgICAgICAgICAgICAgICAoMHg0MFUgPDwgV1dER19DUl9UX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDA0MCAqLw0KDQovKiBMZWdhY3kgZGVmaW5lcyAqLw0KI2RlZmluZSAgV1dER19DUl9UMCBXV0RHX0NSX1RfMA0KI2RlZmluZSAgV1dER19DUl9UMSBXV0RHX0NSX1RfMQ0KI2RlZmluZSAgV1dER19DUl9UMiBXV0RHX0NSX1RfMg0KI2RlZmluZSAgV1dER19DUl9UMyBXV0RHX0NSX1RfMw0KI2RlZmluZSAgV1dER19DUl9UNCBXV0RHX0NSX1RfNA0KI2RlZmluZSAgV1dER19DUl9UNSBXV0RHX0NSX1RfNQ0KI2RlZmluZSAgV1dER19DUl9UNiBXV0RHX0NSX1RfNg0KDQojZGVmaW5lIFdXREdfQ1JfV0RHQV9Qb3MgICAgICAgICAgICAgICAgICAgICg3VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFdXREdfQ1JfV0RHQV9Nc2sgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFdXREdfQ1JfV0RHQV9Qb3MpICAgICAgICAgLyohPCAweDAwMDAwMDgwICovDQojZGVmaW5lIFdXREdfQ1JfV0RHQSAgICAgICAgICAgICAgICAgICAgICAgIFdXREdfQ1JfV0RHQV9Nc2sgICAgICAgICAgICAgICAgICAgLyohPCBBY3RpdmF0aW9uIGJpdCAqLw0KDQovKioqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFdXREdfQ0ZSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBXV0RHX0NGUl9XX1BvcyAgICAgICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBXV0RHX0NGUl9XX01zayAgICAgICAgICAgICAgICAgICAgICAoMHg3RlUgPDwgV1dER19DRlJfV19Qb3MpICAgICAgICAgIC8qITwgMHgwMDAwMDA3RiAqLw0KI2RlZmluZSBXV0RHX0NGUl9XICAgICAgICAgICAgICAgICAgICAgICAgICBXV0RHX0NGUl9XX01zayAgICAgICAgICAgICAgICAgICAgIC8qITwgV1s2OjBdIGJpdHMgKDctYml0IHdpbmRvdyB2YWx1ZSkgKi8NCiNkZWZpbmUgV1dER19DRlJfV18wICAgICAgICAgICAgICAgICAgICAgICAgKDB4MDFVIDw8IFdXREdfQ0ZSX1dfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDAwMDEgKi8NCiNkZWZpbmUgV1dER19DRlJfV18xICAgICAgICAgICAgICAgICAgICAgICAgKDB4MDJVIDw8IFdXREdfQ0ZSX1dfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDAwMDIgKi8NCiNkZWZpbmUgV1dER19DRlJfV18yICAgICAgICAgICAgICAgICAgICAgICAgKDB4MDRVIDw8IFdXREdfQ0ZSX1dfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDAwMDQgKi8NCiNkZWZpbmUgV1dER19DRlJfV18zICAgICAgICAgICAgICAgICAgICAgICAgKDB4MDhVIDw8IFdXREdfQ0ZSX1dfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDAwMDggKi8NCiNkZWZpbmUgV1dER19DRlJfV180ICAgICAgICAgICAgICAgICAgICAgICAgKDB4MTBVIDw8IFdXREdfQ0ZSX1dfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDAwMTAgKi8NCiNkZWZpbmUgV1dER19DRlJfV181ICAgICAgICAgICAgICAgICAgICAgICAgKDB4MjBVIDw8IFdXREdfQ0ZSX1dfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDAwMjAgKi8NCiNkZWZpbmUgV1dER19DRlJfV182ICAgICAgICAgICAgICAgICAgICAgICAgKDB4NDBVIDw8IFdXREdfQ0ZSX1dfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDAwNDAgKi8NCg0KLyogTGVnYWN5IGRlZmluZXMgKi8NCiNkZWZpbmUgIFdXREdfQ0ZSX1cwIFdXREdfQ0ZSX1dfMA0KI2RlZmluZSAgV1dER19DRlJfVzEgV1dER19DRlJfV18xDQojZGVmaW5lICBXV0RHX0NGUl9XMiBXV0RHX0NGUl9XXzINCiNkZWZpbmUgIFdXREdfQ0ZSX1czIFdXREdfQ0ZSX1dfMw0KI2RlZmluZSAgV1dER19DRlJfVzQgV1dER19DRlJfV180DQojZGVmaW5lICBXV0RHX0NGUl9XNSBXV0RHX0NGUl9XXzUNCiNkZWZpbmUgIFdXREdfQ0ZSX1c2IFdXREdfQ0ZSX1dfNg0KDQojZGVmaW5lIFdXREdfQ0ZSX1dER1RCX1BvcyAgICAgICAgICAgICAgICAgICg3VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFdXREdfQ0ZSX1dER1RCX01zayAgICAgICAgICAgICAgICAgICgweDNVIDw8IFdXREdfQ0ZSX1dER1RCX1BvcykgICAgICAgLyohPCAweDAwMDAwMTgwICovDQojZGVmaW5lIFdXREdfQ0ZSX1dER1RCICAgICAgICAgICAgICAgICAgICAgIFdXREdfQ0ZSX1dER1RCX01zayAgICAgICAgICAgICAgICAgLyohPCBXREdUQlsxOjBdIGJpdHMgKFRpbWVyIEJhc2UpICovDQojZGVmaW5lIFdXREdfQ0ZSX1dER1RCXzAgICAgICAgICAgICAgICAgICAgICgweDFVIDw8IFdXREdfQ0ZSX1dER1RCX1BvcykgICAgICAgLyohPCAweDAwMDAwMDgwICovDQojZGVmaW5lIFdXREdfQ0ZSX1dER1RCXzEgICAgICAgICAgICAgICAgICAgICgweDJVIDw8IFdXREdfQ0ZSX1dER1RCX1BvcykgICAgICAgLyohPCAweDAwMDAwMTAwICovDQoNCi8qIExlZ2FjeSBkZWZpbmVzICovDQojZGVmaW5lICBXV0RHX0NGUl9XREdUQjAgV1dER19DRlJfV0RHVEJfMA0KI2RlZmluZSAgV1dER19DRlJfV0RHVEIxIFdXREdfQ0ZSX1dER1RCXzENCg0KI2RlZmluZSBXV0RHX0NGUl9FV0lfUG9zICAgICAgICAgICAgICAgICAgICAoOVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBXV0RHX0NGUl9FV0lfTXNrICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBXV0RHX0NGUl9FV0lfUG9zKSAgICAgICAgIC8qITwgMHgwMDAwMDIwMCAqLw0KI2RlZmluZSBXV0RHX0NGUl9FV0kgICAgICAgICAgICAgICAgICAgICAgICBXV0RHX0NGUl9FV0lfTXNrICAgICAgICAgICAgICAgICAgIC8qITwgRWFybHkgV2FrZXVwIEludGVycnVwdCAqLw0KDQovKioqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFdXREdfU1IgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBXV0RHX1NSX0VXSUZfUG9zICAgICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBXV0RHX1NSX0VXSUZfTXNrICAgICAgICAgICAgICAgICAgICAoMHgxVSA8PCBXV0RHX1NSX0VXSUZfUG9zKSAgICAgICAgIC8qITwgMHgwMDAwMDAwMSAqLw0KI2RlZmluZSBXV0RHX1NSX0VXSUYgICAgICAgICAgICAgICAgICAgICAgICBXV0RHX1NSX0VXSUZfTXNrICAgICAgICAgICAgICAgICAgIC8qITwgRWFybHkgV2FrZXVwIEludGVycnVwdCBGbGFnICovDQoNCi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovDQovKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLw0KLyogICAgICAgICAgICAgICAgICAgICAgICBTeXN0ZW1UaWNrIChTeXNUaWNrKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8NCi8qICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovDQovKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLw0KDQovKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBTeXNUaWNrX0NUUkwgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBTeXNUaWNrX0NUUkxfRU5BQkxFICAgICAgICAgICAgICAgICAoMHgwMDAwMDAwMVUpICAgICAgICAgICAgICAgICAgICAgIC8qITwgQ291bnRlciBlbmFibGUgKi8NCiNkZWZpbmUgU3lzVGlja19DVFJMX1RJQ0tJTlQgICAgICAgICAgICAgICAgKDB4MDAwMDAwMDJVKSAgICAgICAgICAgICAgICAgICAgICAvKiE8IENvdW50aW5nIGRvd24gdG8gMCBwZW5kcyB0aGUgU3lzVGljayBoYW5kbGVyICovDQojZGVmaW5lIFN5c1RpY2tfQ1RSTF9DTEtTT1VSQ0UgICAgICAgICAgICAgICgweDAwMDAwMDA0VSkgICAgICAgICAgICAgICAgICAgICAgLyohPCBDbG9jayBzb3VyY2UgKi8NCiNkZWZpbmUgU3lzVGlja19DVFJMX0NPVU5URkxBRyAgICAgICAgICAgICAgKDB4MDAwMTAwMDBVKSAgICAgICAgICAgICAgICAgICAgICAvKiE8IENvdW50IEZsYWcgKi8NCg0KLyoqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgU3lzVGlja19MT0FEIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgU3lzVGlja19MT0FEX1JFTE9BRCAgICAgICAgICAgICAgICAgKDB4MDBGRkZGRkZVKSAgICAgICAgICAgICAgICAgICAgICAvKiE8IFZhbHVlIHRvIGxvYWQgaW50byB0aGUgU3lzVGljayBDdXJyZW50IFZhbHVlIFJlZ2lzdGVyIHdoZW4gdGhlIGNvdW50ZXIgcmVhY2hlcyAwICovDQoNCi8qKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFN5c1RpY2tfVkFMIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIFN5c1RpY2tfVkFMX0NVUlJFTlQgICAgICAgICAgICAgICAgICgweDAwRkZGRkZGVSkgICAgICAgICAgICAgICAgICAgICAgLyohPCBDdXJyZW50IHZhbHVlIGF0IHRoZSB0aW1lIHRoZSByZWdpc3RlciBpcyBhY2Nlc3NlZCAqLw0KDQovKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBTeXNUaWNrX0NBTElCIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBTeXNUaWNrX0NBTElCX1RFTk1TICAgICAgICAgICAgICAgICAoMHgwMEZGRkZGRlUpICAgICAgICAgICAgICAgICAgICAgIC8qITwgUmVsb2FkIHZhbHVlIHRvIHVzZSBmb3IgMTBtcyB0aW1pbmcgKi8NCiNkZWZpbmUgU3lzVGlja19DQUxJQl9TS0VXICAgICAgICAgICAgICAgICAgKDB4NDAwMDAwMDBVKSAgICAgICAgICAgICAgICAgICAgICAvKiE8IENhbGlicmF0aW9uIHZhbHVlIGlzIG5vdCBleGFjdGx5IDEwIG1zICovDQojZGVmaW5lIFN5c1RpY2tfQ0FMSUJfTk9SRUYgICAgICAgICAgICAgICAgICgweDgwMDAwMDAwVSkgICAgICAgICAgICAgICAgICAgICAgLyohPCBUaGUgcmVmZXJlbmNlIGNsb2NrIGlzIG5vdCBwcm92aWRlZCAqLw0KDQovKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLw0KLyogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8NCi8qICAgICAgICAgICAgICAgTmVzdGVkIFZlY3RvcmVkIEludGVycnVwdCBDb250cm9sbGVyIChOVklDKSAgICAgICAgICAgICAgICAgICovDQovKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLw0KLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8NCg0KLyoqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIE5WSUNfSVNFUiByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgTlZJQ19JU0VSX1NFVEVOQV9Qb3MgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgTlZJQ19JU0VSX1NFVEVOQV9Nc2sgICAgICAgICAgICAgICAgKDB4RkZGRkZGRkZVIDw8IE5WSUNfSVNFUl9TRVRFTkFfUG9zKSAvKiE8IDB4RkZGRkZGRkYgKi8NCiNkZWZpbmUgTlZJQ19JU0VSX1NFVEVOQSAgICAgICAgICAgICAgICAgICAgTlZJQ19JU0VSX1NFVEVOQV9Nc2sgICAgICAgICAgICAgICAvKiE8IEludGVycnVwdCBzZXQgZW5hYmxlIGJpdHMgKi8NCiNkZWZpbmUgTlZJQ19JU0VSX1NFVEVOQV8wICAgICAgICAgICAgICAgICAgKDB4MDAwMDAwMDFVIDw8IE5WSUNfSVNFUl9TRVRFTkFfUG9zKSAvKiE8IDB4MDAwMDAwMDEgKi8NCiNkZWZpbmUgTlZJQ19JU0VSX1NFVEVOQV8xICAgICAgICAgICAgICAgICAgKDB4MDAwMDAwMDJVIDw8IE5WSUNfSVNFUl9TRVRFTkFfUG9zKSAvKiE8IDB4MDAwMDAwMDIgKi8NCiNkZWZpbmUgTlZJQ19JU0VSX1NFVEVOQV8yICAgICAgICAgICAgICAgICAgKDB4MDAwMDAwMDRVIDw8IE5WSUNfSVNFUl9TRVRFTkFfUG9zKSAvKiE8IDB4MDAwMDAwMDQgKi8NCiNkZWZpbmUgTlZJQ19JU0VSX1NFVEVOQV8zICAgICAgICAgICAgICAgICAgKDB4MDAwMDAwMDhVIDw8IE5WSUNfSVNFUl9TRVRFTkFfUG9zKSAvKiE8IDB4MDAwMDAwMDggKi8NCiNkZWZpbmUgTlZJQ19JU0VSX1NFVEVOQV80ICAgICAgICAgICAgICAgICAgKDB4MDAwMDAwMTBVIDw8IE5WSUNfSVNFUl9TRVRFTkFfUG9zKSAvKiE8IDB4MDAwMDAwMTAgKi8NCiNkZWZpbmUgTlZJQ19JU0VSX1NFVEVOQV81ICAgICAgICAgICAgICAgICAgKDB4MDAwMDAwMjBVIDw8IE5WSUNfSVNFUl9TRVRFTkFfUG9zKSAvKiE8IDB4MDAwMDAwMjAgKi8NCiNkZWZpbmUgTlZJQ19JU0VSX1NFVEVOQV82ICAgICAgICAgICAgICAgICAgKDB4MDAwMDAwNDBVIDw8IE5WSUNfSVNFUl9TRVRFTkFfUG9zKSAvKiE8IDB4MDAwMDAwNDAgKi8NCiNkZWZpbmUgTlZJQ19JU0VSX1NFVEVOQV83ICAgICAgICAgICAgICAgICAgKDB4MDAwMDAwODBVIDw8IE5WSUNfSVNFUl9TRVRFTkFfUG9zKSAvKiE8IDB4MDAwMDAwODAgKi8NCiNkZWZpbmUgTlZJQ19JU0VSX1NFVEVOQV84ICAgICAgICAgICAgICAgICAgKDB4MDAwMDAxMDBVIDw8IE5WSUNfSVNFUl9TRVRFTkFfUG9zKSAvKiE8IDB4MDAwMDAxMDAgKi8NCiNkZWZpbmUgTlZJQ19JU0VSX1NFVEVOQV85ICAgICAgICAgICAgICAgICAgKDB4MDAwMDAyMDBVIDw8IE5WSUNfSVNFUl9TRVRFTkFfUG9zKSAvKiE8IDB4MDAwMDAyMDAgKi8NCiNkZWZpbmUgTlZJQ19JU0VSX1NFVEVOQV8xMCAgICAgICAgICAgICAgICAgKDB4MDAwMDA0MDBVIDw8IE5WSUNfSVNFUl9TRVRFTkFfUG9zKSAvKiE8IDB4MDAwMDA0MDAgKi8NCiNkZWZpbmUgTlZJQ19JU0VSX1NFVEVOQV8xMSAgICAgICAgICAgICAgICAgKDB4MDAwMDA4MDBVIDw8IE5WSUNfSVNFUl9TRVRFTkFfUG9zKSAvKiE8IDB4MDAwMDA4MDAgKi8NCiNkZWZpbmUgTlZJQ19JU0VSX1NFVEVOQV8xMiAgICAgICAgICAgICAgICAgKDB4MDAwMDEwMDBVIDw8IE5WSUNfSVNFUl9TRVRFTkFfUG9zKSAvKiE8IDB4MDAwMDEwMDAgKi8NCiNkZWZpbmUgTlZJQ19JU0VSX1NFVEVOQV8xMyAgICAgICAgICAgICAgICAgKDB4MDAwMDIwMDBVIDw8IE5WSUNfSVNFUl9TRVRFTkFfUG9zKSAvKiE8IDB4MDAwMDIwMDAgKi8NCiNkZWZpbmUgTlZJQ19JU0VSX1NFVEVOQV8xNCAgICAgICAgICAgICAgICAgKDB4MDAwMDQwMDBVIDw8IE5WSUNfSVNFUl9TRVRFTkFfUG9zKSAvKiE8IDB4MDAwMDQwMDAgKi8NCiNkZWZpbmUgTlZJQ19JU0VSX1NFVEVOQV8xNSAgICAgICAgICAgICAgICAgKDB4MDAwMDgwMDBVIDw8IE5WSUNfSVNFUl9TRVRFTkFfUG9zKSAvKiE8IDB4MDAwMDgwMDAgKi8NCiNkZWZpbmUgTlZJQ19JU0VSX1NFVEVOQV8xNiAgICAgICAgICAgICAgICAgKDB4MDAwMTAwMDBVIDw8IE5WSUNfSVNFUl9TRVRFTkFfUG9zKSAvKiE8IDB4MDAwMTAwMDAgKi8NCiNkZWZpbmUgTlZJQ19JU0VSX1NFVEVOQV8xNyAgICAgICAgICAgICAgICAgKDB4MDAwMjAwMDBVIDw8IE5WSUNfSVNFUl9TRVRFTkFfUG9zKSAvKiE8IDB4MDAwMjAwMDAgKi8NCiNkZWZpbmUgTlZJQ19JU0VSX1NFVEVOQV8xOCAgICAgICAgICAgICAgICAgKDB4MDAwNDAwMDBVIDw8IE5WSUNfSVNFUl9TRVRFTkFfUG9zKSAvKiE8IDB4MDAwNDAwMDAgKi8NCiNkZWZpbmUgTlZJQ19JU0VSX1NFVEVOQV8xOSAgICAgICAgICAgICAgICAgKDB4MDAwODAwMDBVIDw8IE5WSUNfSVNFUl9TRVRFTkFfUG9zKSAvKiE8IDB4MDAwODAwMDAgKi8NCiNkZWZpbmUgTlZJQ19JU0VSX1NFVEVOQV8yMCAgICAgICAgICAgICAgICAgKDB4MDAxMDAwMDBVIDw8IE5WSUNfSVNFUl9TRVRFTkFfUG9zKSAvKiE8IDB4MDAxMDAwMDAgKi8NCiNkZWZpbmUgTlZJQ19JU0VSX1NFVEVOQV8yMSAgICAgICAgICAgICAgICAgKDB4MDAyMDAwMDBVIDw8IE5WSUNfSVNFUl9TRVRFTkFfUG9zKSAvKiE8IDB4MDAyMDAwMDAgKi8NCiNkZWZpbmUgTlZJQ19JU0VSX1NFVEVOQV8yMiAgICAgICAgICAgICAgICAgKDB4MDA0MDAwMDBVIDw8IE5WSUNfSVNFUl9TRVRFTkFfUG9zKSAvKiE8IDB4MDA0MDAwMDAgKi8NCiNkZWZpbmUgTlZJQ19JU0VSX1NFVEVOQV8yMyAgICAgICAgICAgICAgICAgKDB4MDA4MDAwMDBVIDw8IE5WSUNfSVNFUl9TRVRFTkFfUG9zKSAvKiE8IDB4MDA4MDAwMDAgKi8NCiNkZWZpbmUgTlZJQ19JU0VSX1NFVEVOQV8yNCAgICAgICAgICAgICAgICAgKDB4MDEwMDAwMDBVIDw8IE5WSUNfSVNFUl9TRVRFTkFfUG9zKSAvKiE8IDB4MDEwMDAwMDAgKi8NCiNkZWZpbmUgTlZJQ19JU0VSX1NFVEVOQV8yNSAgICAgICAgICAgICAgICAgKDB4MDIwMDAwMDBVIDw8IE5WSUNfSVNFUl9TRVRFTkFfUG9zKSAvKiE8IDB4MDIwMDAwMDAgKi8NCiNkZWZpbmUgTlZJQ19JU0VSX1NFVEVOQV8yNiAgICAgICAgICAgICAgICAgKDB4MDQwMDAwMDBVIDw8IE5WSUNfSVNFUl9TRVRFTkFfUG9zKSAvKiE8IDB4MDQwMDAwMDAgKi8NCiNkZWZpbmUgTlZJQ19JU0VSX1NFVEVOQV8yNyAgICAgICAgICAgICAgICAgKDB4MDgwMDAwMDBVIDw8IE5WSUNfSVNFUl9TRVRFTkFfUG9zKSAvKiE8IDB4MDgwMDAwMDAgKi8NCiNkZWZpbmUgTlZJQ19JU0VSX1NFVEVOQV8yOCAgICAgICAgICAgICAgICAgKDB4MTAwMDAwMDBVIDw8IE5WSUNfSVNFUl9TRVRFTkFfUG9zKSAvKiE8IDB4MTAwMDAwMDAgKi8NCiNkZWZpbmUgTlZJQ19JU0VSX1NFVEVOQV8yOSAgICAgICAgICAgICAgICAgKDB4MjAwMDAwMDBVIDw8IE5WSUNfSVNFUl9TRVRFTkFfUG9zKSAvKiE8IDB4MjAwMDAwMDAgKi8NCiNkZWZpbmUgTlZJQ19JU0VSX1NFVEVOQV8zMCAgICAgICAgICAgICAgICAgKDB4NDAwMDAwMDBVIDw8IE5WSUNfSVNFUl9TRVRFTkFfUG9zKSAvKiE8IDB4NDAwMDAwMDAgKi8NCiNkZWZpbmUgTlZJQ19JU0VSX1NFVEVOQV8zMSAgICAgICAgICAgICAgICAgKDB4ODAwMDAwMDBVIDw8IE5WSUNfSVNFUl9TRVRFTkFfUG9zKSAvKiE8IDB4ODAwMDAwMDAgKi8NCg0KLyoqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIE5WSUNfSUNFUiByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgTlZJQ19JQ0VSX0NMUkVOQV9Qb3MgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgTlZJQ19JQ0VSX0NMUkVOQV9Nc2sgICAgICAgICAgICAgICAgKDB4RkZGRkZGRkZVIDw8IE5WSUNfSUNFUl9DTFJFTkFfUG9zKSAvKiE8IDB4RkZGRkZGRkYgKi8NCiNkZWZpbmUgTlZJQ19JQ0VSX0NMUkVOQSAgICAgICAgICAgICAgICAgICAgTlZJQ19JQ0VSX0NMUkVOQV9Nc2sgICAgICAgICAgICAgICAvKiE8IEludGVycnVwdCBjbGVhci1lbmFibGUgYml0cyAqLw0KI2RlZmluZSBOVklDX0lDRVJfQ0xSRU5BXzAgICAgICAgICAgICAgICAgICAoMHgwMDAwMDAwMVUgPDwgTlZJQ19JQ0VSX0NMUkVOQV9Qb3MpIC8qITwgMHgwMDAwMDAwMSAqLw0KI2RlZmluZSBOVklDX0lDRVJfQ0xSRU5BXzEgICAgICAgICAgICAgICAgICAoMHgwMDAwMDAwMlUgPDwgTlZJQ19JQ0VSX0NMUkVOQV9Qb3MpIC8qITwgMHgwMDAwMDAwMiAqLw0KI2RlZmluZSBOVklDX0lDRVJfQ0xSRU5BXzIgICAgICAgICAgICAgICAgICAoMHgwMDAwMDAwNFUgPDwgTlZJQ19JQ0VSX0NMUkVOQV9Qb3MpIC8qITwgMHgwMDAwMDAwNCAqLw0KI2RlZmluZSBOVklDX0lDRVJfQ0xSRU5BXzMgICAgICAgICAgICAgICAgICAoMHgwMDAwMDAwOFUgPDwgTlZJQ19JQ0VSX0NMUkVOQV9Qb3MpIC8qITwgMHgwMDAwMDAwOCAqLw0KI2RlZmluZSBOVklDX0lDRVJfQ0xSRU5BXzQgICAgICAgICAgICAgICAgICAoMHgwMDAwMDAxMFUgPDwgTlZJQ19JQ0VSX0NMUkVOQV9Qb3MpIC8qITwgMHgwMDAwMDAxMCAqLw0KI2RlZmluZSBOVklDX0lDRVJfQ0xSRU5BXzUgICAgICAgICAgICAgICAgICAoMHgwMDAwMDAyMFUgPDwgTlZJQ19JQ0VSX0NMUkVOQV9Qb3MpIC8qITwgMHgwMDAwMDAyMCAqLw0KI2RlZmluZSBOVklDX0lDRVJfQ0xSRU5BXzYgICAgICAgICAgICAgICAgICAoMHgwMDAwMDA0MFUgPDwgTlZJQ19JQ0VSX0NMUkVOQV9Qb3MpIC8qITwgMHgwMDAwMDA0MCAqLw0KI2RlZmluZSBOVklDX0lDRVJfQ0xSRU5BXzcgICAgICAgICAgICAgICAgICAoMHgwMDAwMDA4MFUgPDwgTlZJQ19JQ0VSX0NMUkVOQV9Qb3MpIC8qITwgMHgwMDAwMDA4MCAqLw0KI2RlZmluZSBOVklDX0lDRVJfQ0xSRU5BXzggICAgICAgICAgICAgICAgICAoMHgwMDAwMDEwMFUgPDwgTlZJQ19JQ0VSX0NMUkVOQV9Qb3MpIC8qITwgMHgwMDAwMDEwMCAqLw0KI2RlZmluZSBOVklDX0lDRVJfQ0xSRU5BXzkgICAgICAgICAgICAgICAgICAoMHgwMDAwMDIwMFUgPDwgTlZJQ19JQ0VSX0NMUkVOQV9Qb3MpIC8qITwgMHgwMDAwMDIwMCAqLw0KI2RlZmluZSBOVklDX0lDRVJfQ0xSRU5BXzEwICAgICAgICAgICAgICAgICAoMHgwMDAwMDQwMFUgPDwgTlZJQ19JQ0VSX0NMUkVOQV9Qb3MpIC8qITwgMHgwMDAwMDQwMCAqLw0KI2RlZmluZSBOVklDX0lDRVJfQ0xSRU5BXzExICAgICAgICAgICAgICAgICAoMHgwMDAwMDgwMFUgPDwgTlZJQ19JQ0VSX0NMUkVOQV9Qb3MpIC8qITwgMHgwMDAwMDgwMCAqLw0KI2RlZmluZSBOVklDX0lDRVJfQ0xSRU5BXzEyICAgICAgICAgICAgICAgICAoMHgwMDAwMTAwMFUgPDwgTlZJQ19JQ0VSX0NMUkVOQV9Qb3MpIC8qITwgMHgwMDAwMTAwMCAqLw0KI2RlZmluZSBOVklDX0lDRVJfQ0xSRU5BXzEzICAgICAgICAgICAgICAgICAoMHgwMDAwMjAwMFUgPDwgTlZJQ19JQ0VSX0NMUkVOQV9Qb3MpIC8qITwgMHgwMDAwMjAwMCAqLw0KI2RlZmluZSBOVklDX0lDRVJfQ0xSRU5BXzE0ICAgICAgICAgICAgICAgICAoMHgwMDAwNDAwMFUgPDwgTlZJQ19JQ0VSX0NMUkVOQV9Qb3MpIC8qITwgMHgwMDAwNDAwMCAqLw0KI2RlZmluZSBOVklDX0lDRVJfQ0xSRU5BXzE1ICAgICAgICAgICAgICAgICAoMHgwMDAwODAwMFUgPDwgTlZJQ19JQ0VSX0NMUkVOQV9Qb3MpIC8qITwgMHgwMDAwODAwMCAqLw0KI2RlZmluZSBOVklDX0lDRVJfQ0xSRU5BXzE2ICAgICAgICAgICAgICAgICAoMHgwMDAxMDAwMFUgPDwgTlZJQ19JQ0VSX0NMUkVOQV9Qb3MpIC8qITwgMHgwMDAxMDAwMCAqLw0KI2RlZmluZSBOVklDX0lDRVJfQ0xSRU5BXzE3ICAgICAgICAgICAgICAgICAoMHgwMDAyMDAwMFUgPDwgTlZJQ19JQ0VSX0NMUkVOQV9Qb3MpIC8qITwgMHgwMDAyMDAwMCAqLw0KI2RlZmluZSBOVklDX0lDRVJfQ0xSRU5BXzE4ICAgICAgICAgICAgICAgICAoMHgwMDA0MDAwMFUgPDwgTlZJQ19JQ0VSX0NMUkVOQV9Qb3MpIC8qITwgMHgwMDA0MDAwMCAqLw0KI2RlZmluZSBOVklDX0lDRVJfQ0xSRU5BXzE5ICAgICAgICAgICAgICAgICAoMHgwMDA4MDAwMFUgPDwgTlZJQ19JQ0VSX0NMUkVOQV9Qb3MpIC8qITwgMHgwMDA4MDAwMCAqLw0KI2RlZmluZSBOVklDX0lDRVJfQ0xSRU5BXzIwICAgICAgICAgICAgICAgICAoMHgwMDEwMDAwMFUgPDwgTlZJQ19JQ0VSX0NMUkVOQV9Qb3MpIC8qITwgMHgwMDEwMDAwMCAqLw0KI2RlZmluZSBOVklDX0lDRVJfQ0xSRU5BXzIxICAgICAgICAgICAgICAgICAoMHgwMDIwMDAwMFUgPDwgTlZJQ19JQ0VSX0NMUkVOQV9Qb3MpIC8qITwgMHgwMDIwMDAwMCAqLw0KI2RlZmluZSBOVklDX0lDRVJfQ0xSRU5BXzIyICAgICAgICAgICAgICAgICAoMHgwMDQwMDAwMFUgPDwgTlZJQ19JQ0VSX0NMUkVOQV9Qb3MpIC8qITwgMHgwMDQwMDAwMCAqLw0KI2RlZmluZSBOVklDX0lDRVJfQ0xSRU5BXzIzICAgICAgICAgICAgICAgICAoMHgwMDgwMDAwMFUgPDwgTlZJQ19JQ0VSX0NMUkVOQV9Qb3MpIC8qITwgMHgwMDgwMDAwMCAqLw0KI2RlZmluZSBOVklDX0lDRVJfQ0xSRU5BXzI0ICAgICAgICAgICAgICAgICAoMHgwMTAwMDAwMFUgPDwgTlZJQ19JQ0VSX0NMUkVOQV9Qb3MpIC8qITwgMHgwMTAwMDAwMCAqLw0KI2RlZmluZSBOVklDX0lDRVJfQ0xSRU5BXzI1ICAgICAgICAgICAgICAgICAoMHgwMjAwMDAwMFUgPDwgTlZJQ19JQ0VSX0NMUkVOQV9Qb3MpIC8qITwgMHgwMjAwMDAwMCAqLw0KI2RlZmluZSBOVklDX0lDRVJfQ0xSRU5BXzI2ICAgICAgICAgICAgICAgICAoMHgwNDAwMDAwMFUgPDwgTlZJQ19JQ0VSX0NMUkVOQV9Qb3MpIC8qITwgMHgwNDAwMDAwMCAqLw0KI2RlZmluZSBOVklDX0lDRVJfQ0xSRU5BXzI3ICAgICAgICAgICAgICAgICAoMHgwODAwMDAwMFUgPDwgTlZJQ19JQ0VSX0NMUkVOQV9Qb3MpIC8qITwgMHgwODAwMDAwMCAqLw0KI2RlZmluZSBOVklDX0lDRVJfQ0xSRU5BXzI4ICAgICAgICAgICAgICAgICAoMHgxMDAwMDAwMFUgPDwgTlZJQ19JQ0VSX0NMUkVOQV9Qb3MpIC8qITwgMHgxMDAwMDAwMCAqLw0KI2RlZmluZSBOVklDX0lDRVJfQ0xSRU5BXzI5ICAgICAgICAgICAgICAgICAoMHgyMDAwMDAwMFUgPDwgTlZJQ19JQ0VSX0NMUkVOQV9Qb3MpIC8qITwgMHgyMDAwMDAwMCAqLw0KI2RlZmluZSBOVklDX0lDRVJfQ0xSRU5BXzMwICAgICAgICAgICAgICAgICAoMHg0MDAwMDAwMFUgPDwgTlZJQ19JQ0VSX0NMUkVOQV9Qb3MpIC8qITwgMHg0MDAwMDAwMCAqLw0KI2RlZmluZSBOVklDX0lDRVJfQ0xSRU5BXzMxICAgICAgICAgICAgICAgICAoMHg4MDAwMDAwMFUgPDwgTlZJQ19JQ0VSX0NMUkVOQV9Qb3MpIC8qITwgMHg4MDAwMDAwMCAqLw0KDQovKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgTlZJQ19JU1BSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBOVklDX0lTUFJfU0VUUEVORF9Qb3MgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBOVklDX0lTUFJfU0VUUEVORF9Nc2sgICAgICAgICAgICAgICAoMHhGRkZGRkZGRlUgPDwgTlZJQ19JU1BSX1NFVFBFTkRfUG9zKSAvKiE8IDB4RkZGRkZGRkYgKi8NCiNkZWZpbmUgTlZJQ19JU1BSX1NFVFBFTkQgICAgICAgICAgICAgICAgICAgTlZJQ19JU1BSX1NFVFBFTkRfTXNrICAgICAgICAgICAgICAvKiE8IEludGVycnVwdCBzZXQtcGVuZGluZyBiaXRzICovDQojZGVmaW5lIE5WSUNfSVNQUl9TRVRQRU5EXzAgICAgICAgICAgICAgICAgICgweDAwMDAwMDAxVSA8PCBOVklDX0lTUFJfU0VUUEVORF9Qb3MpIC8qITwgMHgwMDAwMDAwMSAqLw0KI2RlZmluZSBOVklDX0lTUFJfU0VUUEVORF8xICAgICAgICAgICAgICAgICAoMHgwMDAwMDAwMlUgPDwgTlZJQ19JU1BSX1NFVFBFTkRfUG9zKSAvKiE8IDB4MDAwMDAwMDIgKi8NCiNkZWZpbmUgTlZJQ19JU1BSX1NFVFBFTkRfMiAgICAgICAgICAgICAgICAgKDB4MDAwMDAwMDRVIDw8IE5WSUNfSVNQUl9TRVRQRU5EX1BvcykgLyohPCAweDAwMDAwMDA0ICovDQojZGVmaW5lIE5WSUNfSVNQUl9TRVRQRU5EXzMgICAgICAgICAgICAgICAgICgweDAwMDAwMDA4VSA8PCBOVklDX0lTUFJfU0VUUEVORF9Qb3MpIC8qITwgMHgwMDAwMDAwOCAqLw0KI2RlZmluZSBOVklDX0lTUFJfU0VUUEVORF80ICAgICAgICAgICAgICAgICAoMHgwMDAwMDAxMFUgPDwgTlZJQ19JU1BSX1NFVFBFTkRfUG9zKSAvKiE8IDB4MDAwMDAwMTAgKi8NCiNkZWZpbmUgTlZJQ19JU1BSX1NFVFBFTkRfNSAgICAgICAgICAgICAgICAgKDB4MDAwMDAwMjBVIDw8IE5WSUNfSVNQUl9TRVRQRU5EX1BvcykgLyohPCAweDAwMDAwMDIwICovDQojZGVmaW5lIE5WSUNfSVNQUl9TRVRQRU5EXzYgICAgICAgICAgICAgICAgICgweDAwMDAwMDQwVSA8PCBOVklDX0lTUFJfU0VUUEVORF9Qb3MpIC8qITwgMHgwMDAwMDA0MCAqLw0KI2RlZmluZSBOVklDX0lTUFJfU0VUUEVORF83ICAgICAgICAgICAgICAgICAoMHgwMDAwMDA4MFUgPDwgTlZJQ19JU1BSX1NFVFBFTkRfUG9zKSAvKiE8IDB4MDAwMDAwODAgKi8NCiNkZWZpbmUgTlZJQ19JU1BSX1NFVFBFTkRfOCAgICAgICAgICAgICAgICAgKDB4MDAwMDAxMDBVIDw8IE5WSUNfSVNQUl9TRVRQRU5EX1BvcykgLyohPCAweDAwMDAwMTAwICovDQojZGVmaW5lIE5WSUNfSVNQUl9TRVRQRU5EXzkgICAgICAgICAgICAgICAgICgweDAwMDAwMjAwVSA8PCBOVklDX0lTUFJfU0VUUEVORF9Qb3MpIC8qITwgMHgwMDAwMDIwMCAqLw0KI2RlZmluZSBOVklDX0lTUFJfU0VUUEVORF8xMCAgICAgICAgICAgICAgICAoMHgwMDAwMDQwMFUgPDwgTlZJQ19JU1BSX1NFVFBFTkRfUG9zKSAvKiE8IDB4MDAwMDA0MDAgKi8NCiNkZWZpbmUgTlZJQ19JU1BSX1NFVFBFTkRfMTEgICAgICAgICAgICAgICAgKDB4MDAwMDA4MDBVIDw8IE5WSUNfSVNQUl9TRVRQRU5EX1BvcykgLyohPCAweDAwMDAwODAwICovDQojZGVmaW5lIE5WSUNfSVNQUl9TRVRQRU5EXzEyICAgICAgICAgICAgICAgICgweDAwMDAxMDAwVSA8PCBOVklDX0lTUFJfU0VUUEVORF9Qb3MpIC8qITwgMHgwMDAwMTAwMCAqLw0KI2RlZmluZSBOVklDX0lTUFJfU0VUUEVORF8xMyAgICAgICAgICAgICAgICAoMHgwMDAwMjAwMFUgPDwgTlZJQ19JU1BSX1NFVFBFTkRfUG9zKSAvKiE8IDB4MDAwMDIwMDAgKi8NCiNkZWZpbmUgTlZJQ19JU1BSX1NFVFBFTkRfMTQgICAgICAgICAgICAgICAgKDB4MDAwMDQwMDBVIDw8IE5WSUNfSVNQUl9TRVRQRU5EX1BvcykgLyohPCAweDAwMDA0MDAwICovDQojZGVmaW5lIE5WSUNfSVNQUl9TRVRQRU5EXzE1ICAgICAgICAgICAgICAgICgweDAwMDA4MDAwVSA8PCBOVklDX0lTUFJfU0VUUEVORF9Qb3MpIC8qITwgMHgwMDAwODAwMCAqLw0KI2RlZmluZSBOVklDX0lTUFJfU0VUUEVORF8xNiAgICAgICAgICAgICAgICAoMHgwMDAxMDAwMFUgPDwgTlZJQ19JU1BSX1NFVFBFTkRfUG9zKSAvKiE8IDB4MDAwMTAwMDAgKi8NCiNkZWZpbmUgTlZJQ19JU1BSX1NFVFBFTkRfMTcgICAgICAgICAgICAgICAgKDB4MDAwMjAwMDBVIDw8IE5WSUNfSVNQUl9TRVRQRU5EX1BvcykgLyohPCAweDAwMDIwMDAwICovDQojZGVmaW5lIE5WSUNfSVNQUl9TRVRQRU5EXzE4ICAgICAgICAgICAgICAgICgweDAwMDQwMDAwVSA8PCBOVklDX0lTUFJfU0VUUEVORF9Qb3MpIC8qITwgMHgwMDA0MDAwMCAqLw0KI2RlZmluZSBOVklDX0lTUFJfU0VUUEVORF8xOSAgICAgICAgICAgICAgICAoMHgwMDA4MDAwMFUgPDwgTlZJQ19JU1BSX1NFVFBFTkRfUG9zKSAvKiE8IDB4MDAwODAwMDAgKi8NCiNkZWZpbmUgTlZJQ19JU1BSX1NFVFBFTkRfMjAgICAgICAgICAgICAgICAgKDB4MDAxMDAwMDBVIDw8IE5WSUNfSVNQUl9TRVRQRU5EX1BvcykgLyohPCAweDAwMTAwMDAwICovDQojZGVmaW5lIE5WSUNfSVNQUl9TRVRQRU5EXzIxICAgICAgICAgICAgICAgICgweDAwMjAwMDAwVSA8PCBOVklDX0lTUFJfU0VUUEVORF9Qb3MpIC8qITwgMHgwMDIwMDAwMCAqLw0KI2RlZmluZSBOVklDX0lTUFJfU0VUUEVORF8yMiAgICAgICAgICAgICAgICAoMHgwMDQwMDAwMFUgPDwgTlZJQ19JU1BSX1NFVFBFTkRfUG9zKSAvKiE8IDB4MDA0MDAwMDAgKi8NCiNkZWZpbmUgTlZJQ19JU1BSX1NFVFBFTkRfMjMgICAgICAgICAgICAgICAgKDB4MDA4MDAwMDBVIDw8IE5WSUNfSVNQUl9TRVRQRU5EX1BvcykgLyohPCAweDAwODAwMDAwICovDQojZGVmaW5lIE5WSUNfSVNQUl9TRVRQRU5EXzI0ICAgICAgICAgICAgICAgICgweDAxMDAwMDAwVSA8PCBOVklDX0lTUFJfU0VUUEVORF9Qb3MpIC8qITwgMHgwMTAwMDAwMCAqLw0KI2RlZmluZSBOVklDX0lTUFJfU0VUUEVORF8yNSAgICAgICAgICAgICAgICAoMHgwMjAwMDAwMFUgPDwgTlZJQ19JU1BSX1NFVFBFTkRfUG9zKSAvKiE8IDB4MDIwMDAwMDAgKi8NCiNkZWZpbmUgTlZJQ19JU1BSX1NFVFBFTkRfMjYgICAgICAgICAgICAgICAgKDB4MDQwMDAwMDBVIDw8IE5WSUNfSVNQUl9TRVRQRU5EX1BvcykgLyohPCAweDA0MDAwMDAwICovDQojZGVmaW5lIE5WSUNfSVNQUl9TRVRQRU5EXzI3ICAgICAgICAgICAgICAgICgweDA4MDAwMDAwVSA8PCBOVklDX0lTUFJfU0VUUEVORF9Qb3MpIC8qITwgMHgwODAwMDAwMCAqLw0KI2RlZmluZSBOVklDX0lTUFJfU0VUUEVORF8yOCAgICAgICAgICAgICAgICAoMHgxMDAwMDAwMFUgPDwgTlZJQ19JU1BSX1NFVFBFTkRfUG9zKSAvKiE8IDB4MTAwMDAwMDAgKi8NCiNkZWZpbmUgTlZJQ19JU1BSX1NFVFBFTkRfMjkgICAgICAgICAgICAgICAgKDB4MjAwMDAwMDBVIDw8IE5WSUNfSVNQUl9TRVRQRU5EX1BvcykgLyohPCAweDIwMDAwMDAwICovDQojZGVmaW5lIE5WSUNfSVNQUl9TRVRQRU5EXzMwICAgICAgICAgICAgICAgICgweDQwMDAwMDAwVSA8PCBOVklDX0lTUFJfU0VUUEVORF9Qb3MpIC8qITwgMHg0MDAwMDAwMCAqLw0KI2RlZmluZSBOVklDX0lTUFJfU0VUUEVORF8zMSAgICAgICAgICAgICAgICAoMHg4MDAwMDAwMFUgPDwgTlZJQ19JU1BSX1NFVFBFTkRfUG9zKSAvKiE8IDB4ODAwMDAwMDAgKi8NCg0KLyoqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIE5WSUNfSUNQUiByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgTlZJQ19JQ1BSX0NMUlBFTkRfUG9zICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgTlZJQ19JQ1BSX0NMUlBFTkRfTXNrICAgICAgICAgICAgICAgKDB4RkZGRkZGRkZVIDw8IE5WSUNfSUNQUl9DTFJQRU5EX1BvcykgLyohPCAweEZGRkZGRkZGICovDQojZGVmaW5lIE5WSUNfSUNQUl9DTFJQRU5EICAgICAgICAgICAgICAgICAgIE5WSUNfSUNQUl9DTFJQRU5EX01zayAgICAgICAgICAgICAgLyohPCBJbnRlcnJ1cHQgY2xlYXItcGVuZGluZyBiaXRzICovDQojZGVmaW5lIE5WSUNfSUNQUl9DTFJQRU5EXzAgICAgICAgICAgICAgICAgICgweDAwMDAwMDAxVSA8PCBOVklDX0lDUFJfQ0xSUEVORF9Qb3MpIC8qITwgMHgwMDAwMDAwMSAqLw0KI2RlZmluZSBOVklDX0lDUFJfQ0xSUEVORF8xICAgICAgICAgICAgICAgICAoMHgwMDAwMDAwMlUgPDwgTlZJQ19JQ1BSX0NMUlBFTkRfUG9zKSAvKiE8IDB4MDAwMDAwMDIgKi8NCiNkZWZpbmUgTlZJQ19JQ1BSX0NMUlBFTkRfMiAgICAgICAgICAgICAgICAgKDB4MDAwMDAwMDRVIDw8IE5WSUNfSUNQUl9DTFJQRU5EX1BvcykgLyohPCAweDAwMDAwMDA0ICovDQojZGVmaW5lIE5WSUNfSUNQUl9DTFJQRU5EXzMgICAgICAgICAgICAgICAgICgweDAwMDAwMDA4VSA8PCBOVklDX0lDUFJfQ0xSUEVORF9Qb3MpIC8qITwgMHgwMDAwMDAwOCAqLw0KI2RlZmluZSBOVklDX0lDUFJfQ0xSUEVORF80ICAgICAgICAgICAgICAgICAoMHgwMDAwMDAxMFUgPDwgTlZJQ19JQ1BSX0NMUlBFTkRfUG9zKSAvKiE8IDB4MDAwMDAwMTAgKi8NCiNkZWZpbmUgTlZJQ19JQ1BSX0NMUlBFTkRfNSAgICAgICAgICAgICAgICAgKDB4MDAwMDAwMjBVIDw8IE5WSUNfSUNQUl9DTFJQRU5EX1BvcykgLyohPCAweDAwMDAwMDIwICovDQojZGVmaW5lIE5WSUNfSUNQUl9DTFJQRU5EXzYgICAgICAgICAgICAgICAgICgweDAwMDAwMDQwVSA8PCBOVklDX0lDUFJfQ0xSUEVORF9Qb3MpIC8qITwgMHgwMDAwMDA0MCAqLw0KI2RlZmluZSBOVklDX0lDUFJfQ0xSUEVORF83ICAgICAgICAgICAgICAgICAoMHgwMDAwMDA4MFUgPDwgTlZJQ19JQ1BSX0NMUlBFTkRfUG9zKSAvKiE8IDB4MDAwMDAwODAgKi8NCiNkZWZpbmUgTlZJQ19JQ1BSX0NMUlBFTkRfOCAgICAgICAgICAgICAgICAgKDB4MDAwMDAxMDBVIDw8IE5WSUNfSUNQUl9DTFJQRU5EX1BvcykgLyohPCAweDAwMDAwMTAwICovDQojZGVmaW5lIE5WSUNfSUNQUl9DTFJQRU5EXzkgICAgICAgICAgICAgICAgICgweDAwMDAwMjAwVSA8PCBOVklDX0lDUFJfQ0xSUEVORF9Qb3MpIC8qITwgMHgwMDAwMDIwMCAqLw0KI2RlZmluZSBOVklDX0lDUFJfQ0xSUEVORF8xMCAgICAgICAgICAgICAgICAoMHgwMDAwMDQwMFUgPDwgTlZJQ19JQ1BSX0NMUlBFTkRfUG9zKSAvKiE8IDB4MDAwMDA0MDAgKi8NCiNkZWZpbmUgTlZJQ19JQ1BSX0NMUlBFTkRfMTEgICAgICAgICAgICAgICAgKDB4MDAwMDA4MDBVIDw8IE5WSUNfSUNQUl9DTFJQRU5EX1BvcykgLyohPCAweDAwMDAwODAwICovDQojZGVmaW5lIE5WSUNfSUNQUl9DTFJQRU5EXzEyICAgICAgICAgICAgICAgICgweDAwMDAxMDAwVSA8PCBOVklDX0lDUFJfQ0xSUEVORF9Qb3MpIC8qITwgMHgwMDAwMTAwMCAqLw0KI2RlZmluZSBOVklDX0lDUFJfQ0xSUEVORF8xMyAgICAgICAgICAgICAgICAoMHgwMDAwMjAwMFUgPDwgTlZJQ19JQ1BSX0NMUlBFTkRfUG9zKSAvKiE8IDB4MDAwMDIwMDAgKi8NCiNkZWZpbmUgTlZJQ19JQ1BSX0NMUlBFTkRfMTQgICAgICAgICAgICAgICAgKDB4MDAwMDQwMDBVIDw8IE5WSUNfSUNQUl9DTFJQRU5EX1BvcykgLyohPCAweDAwMDA0MDAwICovDQojZGVmaW5lIE5WSUNfSUNQUl9DTFJQRU5EXzE1ICAgICAgICAgICAgICAgICgweDAwMDA4MDAwVSA8PCBOVklDX0lDUFJfQ0xSUEVORF9Qb3MpIC8qITwgMHgwMDAwODAwMCAqLw0KI2RlZmluZSBOVklDX0lDUFJfQ0xSUEVORF8xNiAgICAgICAgICAgICAgICAoMHgwMDAxMDAwMFUgPDwgTlZJQ19JQ1BSX0NMUlBFTkRfUG9zKSAvKiE8IDB4MDAwMTAwMDAgKi8NCiNkZWZpbmUgTlZJQ19JQ1BSX0NMUlBFTkRfMTcgICAgICAgICAgICAgICAgKDB4MDAwMjAwMDBVIDw8IE5WSUNfSUNQUl9DTFJQRU5EX1BvcykgLyohPCAweDAwMDIwMDAwICovDQojZGVmaW5lIE5WSUNfSUNQUl9DTFJQRU5EXzE4ICAgICAgICAgICAgICAgICgweDAwMDQwMDAwVSA8PCBOVklDX0lDUFJfQ0xSUEVORF9Qb3MpIC8qITwgMHgwMDA0MDAwMCAqLw0KI2RlZmluZSBOVklDX0lDUFJfQ0xSUEVORF8xOSAgICAgICAgICAgICAgICAoMHgwMDA4MDAwMFUgPDwgTlZJQ19JQ1BSX0NMUlBFTkRfUG9zKSAvKiE8IDB4MDAwODAwMDAgKi8NCiNkZWZpbmUgTlZJQ19JQ1BSX0NMUlBFTkRfMjAgICAgICAgICAgICAgICAgKDB4MDAxMDAwMDBVIDw8IE5WSUNfSUNQUl9DTFJQRU5EX1BvcykgLyohPCAweDAwMTAwMDAwICovDQojZGVmaW5lIE5WSUNfSUNQUl9DTFJQRU5EXzIxICAgICAgICAgICAgICAgICgweDAwMjAwMDAwVSA8PCBOVklDX0lDUFJfQ0xSUEVORF9Qb3MpIC8qITwgMHgwMDIwMDAwMCAqLw0KI2RlZmluZSBOVklDX0lDUFJfQ0xSUEVORF8yMiAgICAgICAgICAgICAgICAoMHgwMDQwMDAwMFUgPDwgTlZJQ19JQ1BSX0NMUlBFTkRfUG9zKSAvKiE8IDB4MDA0MDAwMDAgKi8NCiNkZWZpbmUgTlZJQ19JQ1BSX0NMUlBFTkRfMjMgICAgICAgICAgICAgICAgKDB4MDA4MDAwMDBVIDw8IE5WSUNfSUNQUl9DTFJQRU5EX1BvcykgLyohPCAweDAwODAwMDAwICovDQojZGVmaW5lIE5WSUNfSUNQUl9DTFJQRU5EXzI0ICAgICAgICAgICAgICAgICgweDAxMDAwMDAwVSA8PCBOVklDX0lDUFJfQ0xSUEVORF9Qb3MpIC8qITwgMHgwMTAwMDAwMCAqLw0KI2RlZmluZSBOVklDX0lDUFJfQ0xSUEVORF8yNSAgICAgICAgICAgICAgICAoMHgwMjAwMDAwMFUgPDwgTlZJQ19JQ1BSX0NMUlBFTkRfUG9zKSAvKiE8IDB4MDIwMDAwMDAgKi8NCiNkZWZpbmUgTlZJQ19JQ1BSX0NMUlBFTkRfMjYgICAgICAgICAgICAgICAgKDB4MDQwMDAwMDBVIDw8IE5WSUNfSUNQUl9DTFJQRU5EX1BvcykgLyohPCAweDA0MDAwMDAwICovDQojZGVmaW5lIE5WSUNfSUNQUl9DTFJQRU5EXzI3ICAgICAgICAgICAgICAgICgweDA4MDAwMDAwVSA8PCBOVklDX0lDUFJfQ0xSUEVORF9Qb3MpIC8qITwgMHgwODAwMDAwMCAqLw0KI2RlZmluZSBOVklDX0lDUFJfQ0xSUEVORF8yOCAgICAgICAgICAgICAgICAoMHgxMDAwMDAwMFUgPDwgTlZJQ19JQ1BSX0NMUlBFTkRfUG9zKSAvKiE8IDB4MTAwMDAwMDAgKi8NCiNkZWZpbmUgTlZJQ19JQ1BSX0NMUlBFTkRfMjkgICAgICAgICAgICAgICAgKDB4MjAwMDAwMDBVIDw8IE5WSUNfSUNQUl9DTFJQRU5EX1BvcykgLyohPCAweDIwMDAwMDAwICovDQojZGVmaW5lIE5WSUNfSUNQUl9DTFJQRU5EXzMwICAgICAgICAgICAgICAgICgweDQwMDAwMDAwVSA8PCBOVklDX0lDUFJfQ0xSUEVORF9Qb3MpIC8qITwgMHg0MDAwMDAwMCAqLw0KI2RlZmluZSBOVklDX0lDUFJfQ0xSUEVORF8zMSAgICAgICAgICAgICAgICAoMHg4MDAwMDAwMFUgPDwgTlZJQ19JQ1BSX0NMUlBFTkRfUG9zKSAvKiE8IDB4ODAwMDAwMDAgKi8NCg0KLyoqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIE5WSUNfSUFCUiByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgTlZJQ19JQUJSX0FDVElWRV9Qb3MgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgTlZJQ19JQUJSX0FDVElWRV9Nc2sgICAgICAgICAgICAgICAgKDB4RkZGRkZGRkZVIDw8IE5WSUNfSUFCUl9BQ1RJVkVfUG9zKSAvKiE8IDB4RkZGRkZGRkYgKi8NCiNkZWZpbmUgTlZJQ19JQUJSX0FDVElWRSAgICAgICAgICAgICAgICAgICAgTlZJQ19JQUJSX0FDVElWRV9Nc2sgICAgICAgICAgICAgICAvKiE8IEludGVycnVwdCBhY3RpdmUgZmxhZ3MgKi8NCiNkZWZpbmUgTlZJQ19JQUJSX0FDVElWRV8wICAgICAgICAgICAgICAgICAgKDB4MDAwMDAwMDFVIDw8IE5WSUNfSUFCUl9BQ1RJVkVfUG9zKSAvKiE8IDB4MDAwMDAwMDEgKi8NCiNkZWZpbmUgTlZJQ19JQUJSX0FDVElWRV8xICAgICAgICAgICAgICAgICAgKDB4MDAwMDAwMDJVIDw8IE5WSUNfSUFCUl9BQ1RJVkVfUG9zKSAvKiE8IDB4MDAwMDAwMDIgKi8NCiNkZWZpbmUgTlZJQ19JQUJSX0FDVElWRV8yICAgICAgICAgICAgICAgICAgKDB4MDAwMDAwMDRVIDw8IE5WSUNfSUFCUl9BQ1RJVkVfUG9zKSAvKiE8IDB4MDAwMDAwMDQgKi8NCiNkZWZpbmUgTlZJQ19JQUJSX0FDVElWRV8zICAgICAgICAgICAgICAgICAgKDB4MDAwMDAwMDhVIDw8IE5WSUNfSUFCUl9BQ1RJVkVfUG9zKSAvKiE8IDB4MDAwMDAwMDggKi8NCiNkZWZpbmUgTlZJQ19JQUJSX0FDVElWRV80ICAgICAgICAgICAgICAgICAgKDB4MDAwMDAwMTBVIDw8IE5WSUNfSUFCUl9BQ1RJVkVfUG9zKSAvKiE8IDB4MDAwMDAwMTAgKi8NCiNkZWZpbmUgTlZJQ19JQUJSX0FDVElWRV81ICAgICAgICAgICAgICAgICAgKDB4MDAwMDAwMjBVIDw8IE5WSUNfSUFCUl9BQ1RJVkVfUG9zKSAvKiE8IDB4MDAwMDAwMjAgKi8NCiNkZWZpbmUgTlZJQ19JQUJSX0FDVElWRV82ICAgICAgICAgICAgICAgICAgKDB4MDAwMDAwNDBVIDw8IE5WSUNfSUFCUl9BQ1RJVkVfUG9zKSAvKiE8IDB4MDAwMDAwNDAgKi8NCiNkZWZpbmUgTlZJQ19JQUJSX0FDVElWRV83ICAgICAgICAgICAgICAgICAgKDB4MDAwMDAwODBVIDw8IE5WSUNfSUFCUl9BQ1RJVkVfUG9zKSAvKiE8IDB4MDAwMDAwODAgKi8NCiNkZWZpbmUgTlZJQ19JQUJSX0FDVElWRV84ICAgICAgICAgICAgICAgICAgKDB4MDAwMDAxMDBVIDw8IE5WSUNfSUFCUl9BQ1RJVkVfUG9zKSAvKiE8IDB4MDAwMDAxMDAgKi8NCiNkZWZpbmUgTlZJQ19JQUJSX0FDVElWRV85ICAgICAgICAgICAgICAgICAgKDB4MDAwMDAyMDBVIDw8IE5WSUNfSUFCUl9BQ1RJVkVfUG9zKSAvKiE8IDB4MDAwMDAyMDAgKi8NCiNkZWZpbmUgTlZJQ19JQUJSX0FDVElWRV8xMCAgICAgICAgICAgICAgICAgKDB4MDAwMDA0MDBVIDw8IE5WSUNfSUFCUl9BQ1RJVkVfUG9zKSAvKiE8IDB4MDAwMDA0MDAgKi8NCiNkZWZpbmUgTlZJQ19JQUJSX0FDVElWRV8xMSAgICAgICAgICAgICAgICAgKDB4MDAwMDA4MDBVIDw8IE5WSUNfSUFCUl9BQ1RJVkVfUG9zKSAvKiE8IDB4MDAwMDA4MDAgKi8NCiNkZWZpbmUgTlZJQ19JQUJSX0FDVElWRV8xMiAgICAgICAgICAgICAgICAgKDB4MDAwMDEwMDBVIDw8IE5WSUNfSUFCUl9BQ1RJVkVfUG9zKSAvKiE8IDB4MDAwMDEwMDAgKi8NCiNkZWZpbmUgTlZJQ19JQUJSX0FDVElWRV8xMyAgICAgICAgICAgICAgICAgKDB4MDAwMDIwMDBVIDw8IE5WSUNfSUFCUl9BQ1RJVkVfUG9zKSAvKiE8IDB4MDAwMDIwMDAgKi8NCiNkZWZpbmUgTlZJQ19JQUJSX0FDVElWRV8xNCAgICAgICAgICAgICAgICAgKDB4MDAwMDQwMDBVIDw8IE5WSUNfSUFCUl9BQ1RJVkVfUG9zKSAvKiE8IDB4MDAwMDQwMDAgKi8NCiNkZWZpbmUgTlZJQ19JQUJSX0FDVElWRV8xNSAgICAgICAgICAgICAgICAgKDB4MDAwMDgwMDBVIDw8IE5WSUNfSUFCUl9BQ1RJVkVfUG9zKSAvKiE8IDB4MDAwMDgwMDAgKi8NCiNkZWZpbmUgTlZJQ19JQUJSX0FDVElWRV8xNiAgICAgICAgICAgICAgICAgKDB4MDAwMTAwMDBVIDw8IE5WSUNfSUFCUl9BQ1RJVkVfUG9zKSAvKiE8IDB4MDAwMTAwMDAgKi8NCiNkZWZpbmUgTlZJQ19JQUJSX0FDVElWRV8xNyAgICAgICAgICAgICAgICAgKDB4MDAwMjAwMDBVIDw8IE5WSUNfSUFCUl9BQ1RJVkVfUG9zKSAvKiE8IDB4MDAwMjAwMDAgKi8NCiNkZWZpbmUgTlZJQ19JQUJSX0FDVElWRV8xOCAgICAgICAgICAgICAgICAgKDB4MDAwNDAwMDBVIDw8IE5WSUNfSUFCUl9BQ1RJVkVfUG9zKSAvKiE8IDB4MDAwNDAwMDAgKi8NCiNkZWZpbmUgTlZJQ19JQUJSX0FDVElWRV8xOSAgICAgICAgICAgICAgICAgKDB4MDAwODAwMDBVIDw8IE5WSUNfSUFCUl9BQ1RJVkVfUG9zKSAvKiE8IDB4MDAwODAwMDAgKi8NCiNkZWZpbmUgTlZJQ19JQUJSX0FDVElWRV8yMCAgICAgICAgICAgICAgICAgKDB4MDAxMDAwMDBVIDw8IE5WSUNfSUFCUl9BQ1RJVkVfUG9zKSAvKiE8IDB4MDAxMDAwMDAgKi8NCiNkZWZpbmUgTlZJQ19JQUJSX0FDVElWRV8yMSAgICAgICAgICAgICAgICAgKDB4MDAyMDAwMDBVIDw8IE5WSUNfSUFCUl9BQ1RJVkVfUG9zKSAvKiE8IDB4MDAyMDAwMDAgKi8NCiNkZWZpbmUgTlZJQ19JQUJSX0FDVElWRV8yMiAgICAgICAgICAgICAgICAgKDB4MDA0MDAwMDBVIDw8IE5WSUNfSUFCUl9BQ1RJVkVfUG9zKSAvKiE8IDB4MDA0MDAwMDAgKi8NCiNkZWZpbmUgTlZJQ19JQUJSX0FDVElWRV8yMyAgICAgICAgICAgICAgICAgKDB4MDA4MDAwMDBVIDw8IE5WSUNfSUFCUl9BQ1RJVkVfUG9zKSAvKiE8IDB4MDA4MDAwMDAgKi8NCiNkZWZpbmUgTlZJQ19JQUJSX0FDVElWRV8yNCAgICAgICAgICAgICAgICAgKDB4MDEwMDAwMDBVIDw8IE5WSUNfSUFCUl9BQ1RJVkVfUG9zKSAvKiE8IDB4MDEwMDAwMDAgKi8NCiNkZWZpbmUgTlZJQ19JQUJSX0FDVElWRV8yNSAgICAgICAgICAgICAgICAgKDB4MDIwMDAwMDBVIDw8IE5WSUNfSUFCUl9BQ1RJVkVfUG9zKSAvKiE8IDB4MDIwMDAwMDAgKi8NCiNkZWZpbmUgTlZJQ19JQUJSX0FDVElWRV8yNiAgICAgICAgICAgICAgICAgKDB4MDQwMDAwMDBVIDw8IE5WSUNfSUFCUl9BQ1RJVkVfUG9zKSAvKiE8IDB4MDQwMDAwMDAgKi8NCiNkZWZpbmUgTlZJQ19JQUJSX0FDVElWRV8yNyAgICAgICAgICAgICAgICAgKDB4MDgwMDAwMDBVIDw8IE5WSUNfSUFCUl9BQ1RJVkVfUG9zKSAvKiE8IDB4MDgwMDAwMDAgKi8NCiNkZWZpbmUgTlZJQ19JQUJSX0FDVElWRV8yOCAgICAgICAgICAgICAgICAgKDB4MTAwMDAwMDBVIDw8IE5WSUNfSUFCUl9BQ1RJVkVfUG9zKSAvKiE8IDB4MTAwMDAwMDAgKi8NCiNkZWZpbmUgTlZJQ19JQUJSX0FDVElWRV8yOSAgICAgICAgICAgICAgICAgKDB4MjAwMDAwMDBVIDw8IE5WSUNfSUFCUl9BQ1RJVkVfUG9zKSAvKiE8IDB4MjAwMDAwMDAgKi8NCiNkZWZpbmUgTlZJQ19JQUJSX0FDVElWRV8zMCAgICAgICAgICAgICAgICAgKDB4NDAwMDAwMDBVIDw8IE5WSUNfSUFCUl9BQ1RJVkVfUG9zKSAvKiE8IDB4NDAwMDAwMDAgKi8NCiNkZWZpbmUgTlZJQ19JQUJSX0FDVElWRV8zMSAgICAgICAgICAgICAgICAgKDB4ODAwMDAwMDBVIDw8IE5WSUNfSUFCUl9BQ1RJVkVfUG9zKSAvKiE8IDB4ODAwMDAwMDAgKi8NCg0KLyoqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIE5WSUNfUFJJMCByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgTlZJQ19JUFIwX1BSSV8wICAgICAgICAgICAgICAgICAgICAgKDB4MDAwMDAwRkZVKSAgICAgICAgICAgICAgICAgICAgICAvKiE8IFByaW9yaXR5IG9mIGludGVycnVwdCAwICovDQojZGVmaW5lIE5WSUNfSVBSMF9QUklfMSAgICAgICAgICAgICAgICAgICAgICgweDAwMDBGRjAwVSkgICAgICAgICAgICAgICAgICAgICAgLyohPCBQcmlvcml0eSBvZiBpbnRlcnJ1cHQgMSAqLw0KI2RlZmluZSBOVklDX0lQUjBfUFJJXzIgICAgICAgICAgICAgICAgICAgICAoMHgwMEZGMDAwMFUpICAgICAgICAgICAgICAgICAgICAgIC8qITwgUHJpb3JpdHkgb2YgaW50ZXJydXB0IDIgKi8NCiNkZWZpbmUgTlZJQ19JUFIwX1BSSV8zICAgICAgICAgICAgICAgICAgICAgKDB4RkYwMDAwMDBVKSAgICAgICAgICAgICAgICAgICAgICAvKiE8IFByaW9yaXR5IG9mIGludGVycnVwdCAzICovDQoNCi8qKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBOVklDX1BSSTEgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIE5WSUNfSVBSMV9QUklfNCAgICAgICAgICAgICAgICAgICAgICgweDAwMDAwMEZGVSkgICAgICAgICAgICAgICAgICAgICAgLyohPCBQcmlvcml0eSBvZiBpbnRlcnJ1cHQgNCAqLw0KI2RlZmluZSBOVklDX0lQUjFfUFJJXzUgICAgICAgICAgICAgICAgICAgICAoMHgwMDAwRkYwMFUpICAgICAgICAgICAgICAgICAgICAgIC8qITwgUHJpb3JpdHkgb2YgaW50ZXJydXB0IDUgKi8NCiNkZWZpbmUgTlZJQ19JUFIxX1BSSV82ICAgICAgICAgICAgICAgICAgICAgKDB4MDBGRjAwMDBVKSAgICAgICAgICAgICAgICAgICAgICAvKiE8IFByaW9yaXR5IG9mIGludGVycnVwdCA2ICovDQojZGVmaW5lIE5WSUNfSVBSMV9QUklfNyAgICAgICAgICAgICAgICAgICAgICgweEZGMDAwMDAwVSkgICAgICAgICAgICAgICAgICAgICAgLyohPCBQcmlvcml0eSBvZiBpbnRlcnJ1cHQgNyAqLw0KDQovKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgTlZJQ19QUkkyIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBOVklDX0lQUjJfUFJJXzggICAgICAgICAgICAgICAgICAgICAoMHgwMDAwMDBGRlUpICAgICAgICAgICAgICAgICAgICAgIC8qITwgUHJpb3JpdHkgb2YgaW50ZXJydXB0IDggKi8NCiNkZWZpbmUgTlZJQ19JUFIyX1BSSV85ICAgICAgICAgICAgICAgICAgICAgKDB4MDAwMEZGMDBVKSAgICAgICAgICAgICAgICAgICAgICAvKiE8IFByaW9yaXR5IG9mIGludGVycnVwdCA5ICovDQojZGVmaW5lIE5WSUNfSVBSMl9QUklfMTAgICAgICAgICAgICAgICAgICAgICgweDAwRkYwMDAwVSkgICAgICAgICAgICAgICAgICAgICAgLyohPCBQcmlvcml0eSBvZiBpbnRlcnJ1cHQgMTAgKi8NCiNkZWZpbmUgTlZJQ19JUFIyX1BSSV8xMSAgICAgICAgICAgICAgICAgICAgKDB4RkYwMDAwMDBVKSAgICAgICAgICAgICAgICAgICAgICAvKiE8IFByaW9yaXR5IG9mIGludGVycnVwdCAxMSAqLw0KDQovKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgTlZJQ19QUkkzIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBOVklDX0lQUjNfUFJJXzEyICAgICAgICAgICAgICAgICAgICAoMHgwMDAwMDBGRlUpICAgICAgICAgICAgICAgICAgICAgIC8qITwgUHJpb3JpdHkgb2YgaW50ZXJydXB0IDEyICovDQojZGVmaW5lIE5WSUNfSVBSM19QUklfMTMgICAgICAgICAgICAgICAgICAgICgweDAwMDBGRjAwVSkgICAgICAgICAgICAgICAgICAgICAgLyohPCBQcmlvcml0eSBvZiBpbnRlcnJ1cHQgMTMgKi8NCiNkZWZpbmUgTlZJQ19JUFIzX1BSSV8xNCAgICAgICAgICAgICAgICAgICAgKDB4MDBGRjAwMDBVKSAgICAgICAgICAgICAgICAgICAgICAvKiE8IFByaW9yaXR5IG9mIGludGVycnVwdCAxNCAqLw0KI2RlZmluZSBOVklDX0lQUjNfUFJJXzE1ICAgICAgICAgICAgICAgICAgICAoMHhGRjAwMDAwMFUpICAgICAgICAgICAgICAgICAgICAgIC8qITwgUHJpb3JpdHkgb2YgaW50ZXJydXB0IDE1ICovDQoNCi8qKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBOVklDX1BSSTQgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIE5WSUNfSVBSNF9QUklfMTYgICAgICAgICAgICAgICAgICAgICgweDAwMDAwMEZGVSkgICAgICAgICAgICAgICAgICAgICAgLyohPCBQcmlvcml0eSBvZiBpbnRlcnJ1cHQgMTYgKi8NCiNkZWZpbmUgTlZJQ19JUFI0X1BSSV8xNyAgICAgICAgICAgICAgICAgICAgKDB4MDAwMEZGMDBVKSAgICAgICAgICAgICAgICAgICAgICAvKiE8IFByaW9yaXR5IG9mIGludGVycnVwdCAxNyAqLw0KI2RlZmluZSBOVklDX0lQUjRfUFJJXzE4ICAgICAgICAgICAgICAgICAgICAoMHgwMEZGMDAwMFUpICAgICAgICAgICAgICAgICAgICAgIC8qITwgUHJpb3JpdHkgb2YgaW50ZXJydXB0IDE4ICovDQojZGVmaW5lIE5WSUNfSVBSNF9QUklfMTkgICAgICAgICAgICAgICAgICAgICgweEZGMDAwMDAwVSkgICAgICAgICAgICAgICAgICAgICAgLyohPCBQcmlvcml0eSBvZiBpbnRlcnJ1cHQgMTkgKi8NCg0KLyoqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIE5WSUNfUFJJNSByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgTlZJQ19JUFI1X1BSSV8yMCAgICAgICAgICAgICAgICAgICAgKDB4MDAwMDAwRkZVKSAgICAgICAgICAgICAgICAgICAgICAvKiE8IFByaW9yaXR5IG9mIGludGVycnVwdCAyMCAqLw0KI2RlZmluZSBOVklDX0lQUjVfUFJJXzIxICAgICAgICAgICAgICAgICAgICAoMHgwMDAwRkYwMFUpICAgICAgICAgICAgICAgICAgICAgIC8qITwgUHJpb3JpdHkgb2YgaW50ZXJydXB0IDIxICovDQojZGVmaW5lIE5WSUNfSVBSNV9QUklfMjIgICAgICAgICAgICAgICAgICAgICgweDAwRkYwMDAwVSkgICAgICAgICAgICAgICAgICAgICAgLyohPCBQcmlvcml0eSBvZiBpbnRlcnJ1cHQgMjIgKi8NCiNkZWZpbmUgTlZJQ19JUFI1X1BSSV8yMyAgICAgICAgICAgICAgICAgICAgKDB4RkYwMDAwMDBVKSAgICAgICAgICAgICAgICAgICAgICAvKiE8IFByaW9yaXR5IG9mIGludGVycnVwdCAyMyAqLw0KDQovKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgTlZJQ19QUkk2IHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBOVklDX0lQUjZfUFJJXzI0ICAgICAgICAgICAgICAgICAgICAoMHgwMDAwMDBGRlUpICAgICAgICAgICAgICAgICAgICAgIC8qITwgUHJpb3JpdHkgb2YgaW50ZXJydXB0IDI0ICovDQojZGVmaW5lIE5WSUNfSVBSNl9QUklfMjUgICAgICAgICAgICAgICAgICAgICgweDAwMDBGRjAwVSkgICAgICAgICAgICAgICAgICAgICAgLyohPCBQcmlvcml0eSBvZiBpbnRlcnJ1cHQgMjUgKi8NCiNkZWZpbmUgTlZJQ19JUFI2X1BSSV8yNiAgICAgICAgICAgICAgICAgICAgKDB4MDBGRjAwMDBVKSAgICAgICAgICAgICAgICAgICAgICAvKiE8IFByaW9yaXR5IG9mIGludGVycnVwdCAyNiAqLw0KI2RlZmluZSBOVklDX0lQUjZfUFJJXzI3ICAgICAgICAgICAgICAgICAgICAoMHhGRjAwMDAwMFUpICAgICAgICAgICAgICAgICAgICAgIC8qITwgUHJpb3JpdHkgb2YgaW50ZXJydXB0IDI3ICovDQoNCi8qKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBOVklDX1BSSTcgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIE5WSUNfSVBSN19QUklfMjggICAgICAgICAgICAgICAgICAgICgweDAwMDAwMEZGVSkgICAgICAgICAgICAgICAgICAgICAgLyohPCBQcmlvcml0eSBvZiBpbnRlcnJ1cHQgMjggKi8NCiNkZWZpbmUgTlZJQ19JUFI3X1BSSV8yOSAgICAgICAgICAgICAgICAgICAgKDB4MDAwMEZGMDBVKSAgICAgICAgICAgICAgICAgICAgICAvKiE8IFByaW9yaXR5IG9mIGludGVycnVwdCAyOSAqLw0KI2RlZmluZSBOVklDX0lQUjdfUFJJXzMwICAgICAgICAgICAgICAgICAgICAoMHgwMEZGMDAwMFUpICAgICAgICAgICAgICAgICAgICAgIC8qITwgUHJpb3JpdHkgb2YgaW50ZXJydXB0IDMwICovDQojZGVmaW5lIE5WSUNfSVBSN19QUklfMzEgICAgICAgICAgICAgICAgICAgICgweEZGMDAwMDAwVSkgICAgICAgICAgICAgICAgICAgICAgLyohPCBQcmlvcml0eSBvZiBpbnRlcnJ1cHQgMzEgKi8NCg0KLyoqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFNDQl9DUFVJRCByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgU0NCX0NQVUlEX1JFVklTSU9OICAgICAgICAgICAgICAgICAgKDB4MDAwMDAwMEZVKSAgICAgICAgICAgICAgICAgICAgICAvKiE8IEltcGxlbWVudGF0aW9uIGRlZmluZWQgcmV2aXNpb24gbnVtYmVyICovDQojZGVmaW5lIFNDQl9DUFVJRF9QQVJUTk8gICAgICAgICAgICAgICAgICAgICgweDAwMDBGRkYwVSkgICAgICAgICAgICAgICAgICAgICAgLyohPCBOdW1iZXIgb2YgcHJvY2Vzc29yIHdpdGhpbiBzZXJpZSAqLw0KI2RlZmluZSBTQ0JfQ1BVSURfQ29uc3RhbnQgICAgICAgICAgICAgICAgICAoMHgwMDBGMDAwMFUpICAgICAgICAgICAgICAgICAgICAgIC8qITwgUmVhZHMgYXMgMHgwRiAqLw0KI2RlZmluZSBTQ0JfQ1BVSURfVkFSSUFOVCAgICAgICAgICAgICAgICAgICAoMHgwMEYwMDAwMFUpICAgICAgICAgICAgICAgICAgICAgIC8qITwgSW1wbGVtZW50YXRpb24gZGVmaW5lZCB2YXJpYW50IG51bWJlciAqLw0KI2RlZmluZSBTQ0JfQ1BVSURfSU1QTEVNRU5URVIgICAgICAgICAgICAgICAoMHhGRjAwMDAwMFUpICAgICAgICAgICAgICAgICAgICAgIC8qITwgSW1wbGVtZW50ZXIgY29kZS4gQVJNIGlzIDB4NDEgKi8NCg0KLyoqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBTQ0JfSUNTUiByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgU0NCX0lDU1JfVkVDVEFDVElWRSAgICAgICAgICAgICAgICAgKDB4MDAwMDAxRkZVKSAgICAgICAgICAgICAgICAgICAgICAvKiE8IEFjdGl2ZSBJU1IgbnVtYmVyIGZpZWxkICovDQojZGVmaW5lIFNDQl9JQ1NSX1JFVFRPQkFTRSAgICAgICAgICAgICAgICAgICgweDAwMDAwODAwVSkgICAgICAgICAgICAgICAgICAgICAgLyohPCBBbGwgYWN0aXZlIGV4Y2VwdGlvbnMgbWludXMgdGhlIElQU1JfY3VycmVudF9leGNlcHRpb24geWllbGRzIHRoZSBlbXB0eSBzZXQgKi8NCiNkZWZpbmUgU0NCX0lDU1JfVkVDVFBFTkRJTkcgICAgICAgICAgICAgICAgKDB4MDAzRkYwMDBVKSAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBlbmRpbmcgSVNSIG51bWJlciBmaWVsZCAqLw0KI2RlZmluZSBTQ0JfSUNTUl9JU1JQRU5ESU5HICAgICAgICAgICAgICAgICAoMHgwMDQwMDAwMFUpICAgICAgICAgICAgICAgICAgICAgIC8qITwgSW50ZXJydXB0IHBlbmRpbmcgZmxhZyAqLw0KI2RlZmluZSBTQ0JfSUNTUl9JU1JQUkVFTVBUICAgICAgICAgICAgICAgICAoMHgwMDgwMDAwMFUpICAgICAgICAgICAgICAgICAgICAgIC8qITwgSXQgaW5kaWNhdGVzIHRoYXQgYSBwZW5kaW5nIGludGVycnVwdCBiZWNvbWVzIGFjdGl2ZSBpbiB0aGUgbmV4dCBydW5uaW5nIGN5Y2xlICovDQojZGVmaW5lIFNDQl9JQ1NSX1BFTkRTVENMUiAgICAgICAgICAgICAgICAgICgweDAyMDAwMDAwVSkgICAgICAgICAgICAgICAgICAgICAgLyohPCBDbGVhciBwZW5kaW5nIFN5c1RpY2sgYml0ICovDQojZGVmaW5lIFNDQl9JQ1NSX1BFTkRTVFNFVCAgICAgICAgICAgICAgICAgICgweDA0MDAwMDAwVSkgICAgICAgICAgICAgICAgICAgICAgLyohPCBTZXQgcGVuZGluZyBTeXNUaWNrIGJpdCAqLw0KI2RlZmluZSBTQ0JfSUNTUl9QRU5EU1ZDTFIgICAgICAgICAgICAgICAgICAoMHgwODAwMDAwMFUpICAgICAgICAgICAgICAgICAgICAgIC8qITwgQ2xlYXIgcGVuZGluZyBwZW5kU1YgYml0ICovDQojZGVmaW5lIFNDQl9JQ1NSX1BFTkRTVlNFVCAgICAgICAgICAgICAgICAgICgweDEwMDAwMDAwVSkgICAgICAgICAgICAgICAgICAgICAgLyohPCBTZXQgcGVuZGluZyBwZW5kU1YgYml0ICovDQojZGVmaW5lIFNDQl9JQ1NSX05NSVBFTkRTRVQgICAgICAgICAgICAgICAgICgweDgwMDAwMDAwVSkgICAgICAgICAgICAgICAgICAgICAgLyohPCBTZXQgcGVuZGluZyBOTUkgYml0ICovDQoNCi8qKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgU0NCX1ZUT1IgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIFNDQl9WVE9SX1RCTE9GRiAgICAgICAgICAgICAgICAgICAgICgweDFGRkZGRjgwVSkgICAgICAgICAgICAgICAgICAgICAgLyohPCBWZWN0b3IgdGFibGUgYmFzZSBvZmZzZXQgZmllbGQgKi8NCiNkZWZpbmUgU0NCX1ZUT1JfVEJMQkFTRSAgICAgICAgICAgICAgICAgICAgKDB4MjAwMDAwMDBVKSAgICAgICAgICAgICAgICAgICAgICAvKiE8IFRhYmxlIGJhc2UgaW4gY29kZSgwKSBvciBSQU0oMSkgKi8NCg0KLyohPCoqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgU0NCX0FJUkNSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBTQ0JfQUlSQ1JfVkVDVFJFU0VUICAgICAgICAgICAgICAgICAoMHgwMDAwMDAwMVUpICAgICAgICAgICAgICAgICAgICAgIC8qITwgU3lzdGVtIFJlc2V0IGJpdCAqLw0KI2RlZmluZSBTQ0JfQUlSQ1JfVkVDVENMUkFDVElWRSAgICAgICAgICAgICAoMHgwMDAwMDAwMlUpICAgICAgICAgICAgICAgICAgICAgIC8qITwgQ2xlYXIgYWN0aXZlIHZlY3RvciBiaXQgKi8NCiNkZWZpbmUgU0NCX0FJUkNSX1NZU1JFU0VUUkVRICAgICAgICAgICAgICAgKDB4MDAwMDAwMDRVKSAgICAgICAgICAgICAgICAgICAgICAvKiE8IFJlcXVlc3RzIGNoaXAgY29udHJvbCBsb2dpYyB0byBnZW5lcmF0ZSBhIHJlc2V0ICovDQoNCiNkZWZpbmUgU0NCX0FJUkNSX1BSSUdST1VQICAgICAgICAgICAgICAgICAgKDB4MDAwMDA3MDBVKSAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBSSUdST1VQWzI6MF0gYml0cyAoUHJpb3JpdHkgZ3JvdXApICovDQojZGVmaW5lIFNDQl9BSVJDUl9QUklHUk9VUF8wICAgICAgICAgICAgICAgICgweDAwMDAwMTAwVSkgICAgICAgICAgICAgICAgICAgICAgLyohPCBCaXQgMCAqLw0KI2RlZmluZSBTQ0JfQUlSQ1JfUFJJR1JPVVBfMSAgICAgICAgICAgICAgICAoMHgwMDAwMDIwMFUpICAgICAgICAgICAgICAgICAgICAgIC8qITwgQml0IDEgKi8NCiNkZWZpbmUgU0NCX0FJUkNSX1BSSUdST1VQXzIgICAgICAgICAgICAgICAgKDB4MDAwMDA0MDBVKSAgICAgICAgICAgICAgICAgICAgICAvKiE8IEJpdCAyICAqLw0KDQovKiBwcm9yaXR5IGdyb3VwIGNvbmZpZ3VyYXRpb24gKi8NCiNkZWZpbmUgU0NCX0FJUkNSX1BSSUdST1VQMCAgICAgICAgICAgICAgICAgKDB4MDAwMDAwMDBVKSAgICAgICAgICAgICAgICAgICAgICAvKiE8IFByaW9yaXR5IGdyb3VwPTAgKDcgYml0cyBvZiBwcmUtZW1wdGlvbiBwcmlvcml0eSwgMSBiaXQgb2Ygc3VicHJpb3JpdHkpICovDQojZGVmaW5lIFNDQl9BSVJDUl9QUklHUk9VUDEgICAgICAgICAgICAgICAgICgweDAwMDAwMTAwVSkgICAgICAgICAgICAgICAgICAgICAgLyohPCBQcmlvcml0eSBncm91cD0xICg2IGJpdHMgb2YgcHJlLWVtcHRpb24gcHJpb3JpdHksIDIgYml0cyBvZiBzdWJwcmlvcml0eSkgKi8NCiNkZWZpbmUgU0NCX0FJUkNSX1BSSUdST1VQMiAgICAgICAgICAgICAgICAgKDB4MDAwMDAyMDBVKSAgICAgICAgICAgICAgICAgICAgICAvKiE8IFByaW9yaXR5IGdyb3VwPTIgKDUgYml0cyBvZiBwcmUtZW1wdGlvbiBwcmlvcml0eSwgMyBiaXRzIG9mIHN1YnByaW9yaXR5KSAqLw0KI2RlZmluZSBTQ0JfQUlSQ1JfUFJJR1JPVVAzICAgICAgICAgICAgICAgICAoMHgwMDAwMDMwMFUpICAgICAgICAgICAgICAgICAgICAgIC8qITwgUHJpb3JpdHkgZ3JvdXA9MyAoNCBiaXRzIG9mIHByZS1lbXB0aW9uIHByaW9yaXR5LCA0IGJpdHMgb2Ygc3VicHJpb3JpdHkpICovDQojZGVmaW5lIFNDQl9BSVJDUl9QUklHUk9VUDQgICAgICAgICAgICAgICAgICgweDAwMDAwNDAwVSkgICAgICAgICAgICAgICAgICAgICAgLyohPCBQcmlvcml0eSBncm91cD00ICgzIGJpdHMgb2YgcHJlLWVtcHRpb24gcHJpb3JpdHksIDUgYml0cyBvZiBzdWJwcmlvcml0eSkgKi8NCiNkZWZpbmUgU0NCX0FJUkNSX1BSSUdST1VQNSAgICAgICAgICAgICAgICAgKDB4MDAwMDA1MDBVKSAgICAgICAgICAgICAgICAgICAgICAvKiE8IFByaW9yaXR5IGdyb3VwPTUgKDIgYml0cyBvZiBwcmUtZW1wdGlvbiBwcmlvcml0eSwgNiBiaXRzIG9mIHN1YnByaW9yaXR5KSAqLw0KI2RlZmluZSBTQ0JfQUlSQ1JfUFJJR1JPVVA2ICAgICAgICAgICAgICAgICAoMHgwMDAwMDYwMFUpICAgICAgICAgICAgICAgICAgICAgIC8qITwgUHJpb3JpdHkgZ3JvdXA9NiAoMSBiaXQgb2YgcHJlLWVtcHRpb24gcHJpb3JpdHksIDcgYml0cyBvZiBzdWJwcmlvcml0eSkgKi8NCiNkZWZpbmUgU0NCX0FJUkNSX1BSSUdST1VQNyAgICAgICAgICAgICAgICAgKDB4MDAwMDA3MDBVKSAgICAgICAgICAgICAgICAgICAgICAvKiE8IFByaW9yaXR5IGdyb3VwPTcgKG5vIHByZS1lbXB0aW9uIHByaW9yaXR5LCA4IGJpdHMgb2Ygc3VicHJpb3JpdHkpICovDQoNCiNkZWZpbmUgU0NCX0FJUkNSX0VORElBTkVTUyAgICAgICAgICAgICAgICAgKDB4MDAwMDgwMDBVKSAgICAgICAgICAgICAgICAgICAgICAvKiE8IERhdGEgZW5kaWFubmVzcyBiaXQgKi8NCiNkZWZpbmUgU0NCX0FJUkNSX1ZFQ1RLRVkgICAgICAgICAgICAgICAgICAgKDB4RkZGRjAwMDBVKSAgICAgICAgICAgICAgICAgICAgICAvKiE8IFJlZ2lzdGVyIGtleSAoVkVDVEtFWSkgLSBSZWFkcyBhcyAweEZBMDUgKFZFQ1RLRVlTVEFUKSAqLw0KDQovKioqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFNDQl9TQ1IgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBTQ0JfU0NSX1NMRUVQT05FWElUICAgICAgICAgICAgICAgICAoMHgwMDAwMDAwMlUpICAgICAgICAgICAgICAgICAgICAgIC8qITwgU2xlZXAgb24gZXhpdCBiaXQgKi8NCiNkZWZpbmUgU0NCX1NDUl9TTEVFUERFRVAgICAgICAgICAgICAgICAgICAgKDB4MDAwMDAwMDRVKSAgICAgICAgICAgICAgICAgICAgICAvKiE8IFNsZWVwIGRlZXAgYml0ICovDQojZGVmaW5lIFNDQl9TQ1JfU0VWT05QRU5EICAgICAgICAgICAgICAgICAgICgweDAwMDAwMDEwVSkgICAgICAgICAgICAgICAgICAgICAgLyohPCBXYWtlIHVwIGZyb20gV0ZFICovDQoNCi8qKioqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFNDQl9DQ1IgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIFNDQl9DQ1JfTk9OQkFTRVRIUkRFTkEgICAgICAgICAgICAgICgweDAwMDAwMDAxVSkgICAgICAgICAgICAgICAgICAgICAgLyohPCBUaHJlYWQgbW9kZSBjYW4gYmUgZW50ZXJlZCBmcm9tIGFueSBsZXZlbCBpbiBIYW5kbGVyIG1vZGUgYnkgY29udHJvbGxlZCByZXR1cm4gdmFsdWUgKi8NCiNkZWZpbmUgU0NCX0NDUl9VU0VSU0VUTVBFTkQgICAgICAgICAgICAgICAgKDB4MDAwMDAwMDJVKSAgICAgICAgICAgICAgICAgICAgICAvKiE8IEVuYWJsZXMgdXNlciBjb2RlIHRvIHdyaXRlIHRoZSBTb2Z0d2FyZSBUcmlnZ2VyIEludGVycnVwdCByZWdpc3RlciB0byB0cmlnZ2VyIChwZW5kKSBhIE1haW4gZXhjZXB0aW9uICovDQojZGVmaW5lIFNDQl9DQ1JfVU5BTElHTl9UUlAgICAgICAgICAgICAgICAgICgweDAwMDAwMDA4VSkgICAgICAgICAgICAgICAgICAgICAgLyohPCBUcmFwIGZvciB1bmFsaWduZWQgYWNjZXNzICovDQojZGVmaW5lIFNDQl9DQ1JfRElWXzBfVFJQICAgICAgICAgICAgICAgICAgICgweDAwMDAwMDEwVSkgICAgICAgICAgICAgICAgICAgICAgLyohPCBUcmFwIG9uIERpdmlkZSBieSAwICovDQojZGVmaW5lIFNDQl9DQ1JfQkZIRk5NSUdOICAgICAgICAgICAgICAgICAgICgweDAwMDAwMTAwVSkgICAgICAgICAgICAgICAgICAgICAgLyohPCBIYW5kbGVycyBydW5uaW5nIGF0IHByaW9yaXR5IC0xIGFuZCAtMiAqLw0KI2RlZmluZSBTQ0JfQ0NSX1NUS0FMSUdOICAgICAgICAgICAgICAgICAgICAoMHgwMDAwMDIwMFUpICAgICAgICAgICAgICAgICAgICAgIC8qITwgT24gZXhjZXB0aW9uIGVudHJ5LCB0aGUgU1AgdXNlZCBwcmlvciB0byB0aGUgZXhjZXB0aW9uIGlzIGFkanVzdGVkIHRvIGJlIDgtYnl0ZSBhbGlnbmVkICovDQoNCi8qKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgU0NCX1NIUFIgcmVnaXN0ZXIgKioqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIFNDQl9TSFBSX1BSSV9OX1BvcyAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFNDQl9TSFBSX1BSSV9OX01zayAgICAgICAgICAgICAgICAgICgweEZGVSA8PCBTQ0JfU0hQUl9QUklfTl9Qb3MpICAgICAgLyohPCAweDAwMDAwMEZGICovDQojZGVmaW5lIFNDQl9TSFBSX1BSSV9OICAgICAgICAgICAgICAgICAgICAgIFNDQl9TSFBSX1BSSV9OX01zayAgICAgICAgICAgICAgICAgLyohPCBQcmlvcml0eSBvZiBzeXN0ZW0gaGFuZGxlciA0LDgsIGFuZCAxMi4gTWVtIE1hbmFnZSwgcmVzZXJ2ZWQgYW5kIERlYnVnIE1vbml0b3IgKi8NCiNkZWZpbmUgU0NCX1NIUFJfUFJJX04xX1BvcyAgICAgICAgICAgICAgICAgKDhVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgU0NCX1NIUFJfUFJJX04xX01zayAgICAgICAgICAgICAgICAgKDB4RkZVIDw8IFNDQl9TSFBSX1BSSV9OMV9Qb3MpICAgICAvKiE8IDB4MDAwMEZGMDAgKi8NCiNkZWZpbmUgU0NCX1NIUFJfUFJJX04xICAgICAgICAgICAgICAgICAgICAgU0NCX1NIUFJfUFJJX04xX01zayAgICAgICAgICAgICAgICAvKiE8IFByaW9yaXR5IG9mIHN5c3RlbSBoYW5kbGVyIDUsOSwgYW5kIDEzLiBCdXMgRmF1bHQsIHJlc2VydmVkIGFuZCByZXNlcnZlZCAqLw0KI2RlZmluZSBTQ0JfU0hQUl9QUklfTjJfUG9zICAgICAgICAgICAgICAgICAoMTZVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBTQ0JfU0hQUl9QUklfTjJfTXNrICAgICAgICAgICAgICAgICAoMHhGRlUgPDwgU0NCX1NIUFJfUFJJX04yX1BvcykgICAgIC8qITwgMHgwMEZGMDAwMCAqLw0KI2RlZmluZSBTQ0JfU0hQUl9QUklfTjIgICAgICAgICAgICAgICAgICAgICBTQ0JfU0hQUl9QUklfTjJfTXNrICAgICAgICAgICAgICAgIC8qITwgUHJpb3JpdHkgb2Ygc3lzdGVtIGhhbmRsZXIgNiwxMCwgYW5kIDE0LiBVc2FnZSBGYXVsdCwgcmVzZXJ2ZWQgYW5kIFBlbmRTViAqLw0KI2RlZmluZSBTQ0JfU0hQUl9QUklfTjNfUG9zICAgICAgICAgICAgICAgICAoMjRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBTQ0JfU0hQUl9QUklfTjNfTXNrICAgICAgICAgICAgICAgICAoMHhGRlUgPDwgU0NCX1NIUFJfUFJJX04zX1BvcykgICAgIC8qITwgMHhGRjAwMDAwMCAqLw0KI2RlZmluZSBTQ0JfU0hQUl9QUklfTjMgICAgICAgICAgICAgICAgICAgICBTQ0JfU0hQUl9QUklfTjNfTXNrICAgICAgICAgICAgICAgIC8qITwgUHJpb3JpdHkgb2Ygc3lzdGVtIGhhbmRsZXIgNywxMSwgYW5kIDE1LiBSZXNlcnZlZCwgU1ZDYWxsIGFuZCBTeXNUaWNrICovDQoNCi8qKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBTQ0JfU0hDU1IgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIFNDQl9TSENTUl9NRU1GQVVMVEFDVCAgICAgICAgICAgICAgICgweDAwMDAwMDAxVSkgICAgICAgICAgICAgICAgICAgICAgLyohPCBNZW1NYW5hZ2UgaXMgYWN0aXZlICovDQojZGVmaW5lIFNDQl9TSENTUl9CVVNGQVVMVEFDVCAgICAgICAgICAgICAgICgweDAwMDAwMDAyVSkgICAgICAgICAgICAgICAgICAgICAgLyohPCBCdXNGYXVsdCBpcyBhY3RpdmUgKi8NCiNkZWZpbmUgU0NCX1NIQ1NSX1VTR0ZBVUxUQUNUICAgICAgICAgICAgICAgKDB4MDAwMDAwMDhVKSAgICAgICAgICAgICAgICAgICAgICAvKiE8IFVzYWdlRmF1bHQgaXMgYWN0aXZlICovDQojZGVmaW5lIFNDQl9TSENTUl9TVkNBTExBQ1QgICAgICAgICAgICAgICAgICgweDAwMDAwMDgwVSkgICAgICAgICAgICAgICAgICAgICAgLyohPCBTVkNhbGwgaXMgYWN0aXZlICovDQojZGVmaW5lIFNDQl9TSENTUl9NT05JVE9SQUNUICAgICAgICAgICAgICAgICgweDAwMDAwMTAwVSkgICAgICAgICAgICAgICAgICAgICAgLyohPCBNb25pdG9yIGlzIGFjdGl2ZSAqLw0KI2RlZmluZSBTQ0JfU0hDU1JfUEVORFNWQUNUICAgICAgICAgICAgICAgICAoMHgwMDAwMDQwMFUpICAgICAgICAgICAgICAgICAgICAgIC8qITwgUGVuZFNWIGlzIGFjdGl2ZSAqLw0KI2RlZmluZSBTQ0JfU0hDU1JfU1lTVElDS0FDVCAgICAgICAgICAgICAgICAoMHgwMDAwMDgwMFUpICAgICAgICAgICAgICAgICAgICAgIC8qITwgU3lzVGljayBpcyBhY3RpdmUgKi8NCiNkZWZpbmUgU0NCX1NIQ1NSX1VTR0ZBVUxUUEVOREVEICAgICAgICAgICAgKDB4MDAwMDEwMDBVKSAgICAgICAgICAgICAgICAgICAgICAvKiE8IFVzYWdlIEZhdWx0IGlzIHBlbmRlZCAqLw0KI2RlZmluZSBTQ0JfU0hDU1JfTUVNRkFVTFRQRU5ERUQgICAgICAgICAgICAoMHgwMDAwMjAwMFUpICAgICAgICAgICAgICAgICAgICAgIC8qITwgTWVtTWFuYWdlIGlzIHBlbmRlZCAqLw0KI2RlZmluZSBTQ0JfU0hDU1JfQlVTRkFVTFRQRU5ERUQgICAgICAgICAgICAoMHgwMDAwNDAwMFUpICAgICAgICAgICAgICAgICAgICAgIC8qITwgQnVzIEZhdWx0IGlzIHBlbmRlZCAqLw0KI2RlZmluZSBTQ0JfU0hDU1JfU1ZDQUxMUEVOREVEICAgICAgICAgICAgICAoMHgwMDAwODAwMFUpICAgICAgICAgICAgICAgICAgICAgIC8qITwgU1ZDYWxsIGlzIHBlbmRlZCAqLw0KI2RlZmluZSBTQ0JfU0hDU1JfTUVNRkFVTFRFTkEgICAgICAgICAgICAgICAoMHgwMDAxMDAwMFUpICAgICAgICAgICAgICAgICAgICAgIC8qITwgTWVtTWFuYWdlIGVuYWJsZSAqLw0KI2RlZmluZSBTQ0JfU0hDU1JfQlVTRkFVTFRFTkEgICAgICAgICAgICAgICAoMHgwMDAyMDAwMFUpICAgICAgICAgICAgICAgICAgICAgIC8qITwgQnVzIEZhdWx0IGVuYWJsZSAqLw0KI2RlZmluZSBTQ0JfU0hDU1JfVVNHRkFVTFRFTkEgICAgICAgICAgICAgICAoMHgwMDA0MDAwMFUpICAgICAgICAgICAgICAgICAgICAgIC8qITwgVXNhZ2VGYXVsdCBlbmFibGUgKi8NCg0KLyoqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBTQ0JfQ0ZTUiByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKi8NCi8qITwgTUZTUiAqLw0KI2RlZmluZSBTQ0JfQ0ZTUl9JQUNDVklPTF9Qb3MgICAgICAgICAgICAgIChTQ0JfU0hDU1JfTUVNRkFVTFRBQ1RfUG9zICsgMFUpICAgIC8qITwgU0NCIENGU1IgKE1NRlNSKTogSUFDQ1ZJT0wgUG9zaXRpb24gKi8NCiNkZWZpbmUgU0NCX0NGU1JfSUFDQ1ZJT0xfTXNrICAgICAgICAgICAgICAoMVVMIC8qPDwgU0NCX0NGU1JfSUFDQ1ZJT0xfUG9zKi8pICAvKiE8IFNDQiBDRlNSIChNTUZTUik6IElBQ0NWSU9MIE1hc2sgKi8NCiNkZWZpbmUgU0NCX0NGU1JfSUFDQ1ZJT0wgICAgICAgICAgICAgICAgICAgU0NCX0NGU1JfSUFDQ1ZJT0xfTXNrICAgICAgICAgICAgICAvKiE8IEluc3RydWN0aW9uIGFjY2VzcyB2aW9sYXRpb24gKi8NCiNkZWZpbmUgU0NCX0NGU1JfREFDQ1ZJT0xfUG9zICAgICAgICAgICAgICAoU0NCX1NIQ1NSX01FTUZBVUxUQUNUX1BvcyArIDFVKSAgICAvKiE8IFNDQiBDRlNSIChNTUZTUik6IERBQ0NWSU9MIFBvc2l0aW9uICovDQojZGVmaW5lIFNDQl9DRlNSX0RBQ0NWSU9MX01zayAgICAgICAgICAgICAgKDFVTCA8PCBTQ0JfQ0ZTUl9EQUNDVklPTF9Qb3MpICAgICAgLyohPCBTQ0IgQ0ZTUiAoTU1GU1IpOiBEQUNDVklPTCBNYXNrICovDQojZGVmaW5lIFNDQl9DRlNSX0RBQ0NWSU9MICAgICAgICAgICAgICAgICAgIFNDQl9DRlNSX0RBQ0NWSU9MX01zayAgICAgICAgICAgICAgLyohPCBEYXRhIGFjY2VzcyB2aW9sYXRpb24gKi8NCiNkZWZpbmUgU0NCX0NGU1JfTVVOU1RLRVJSX1BvcyAgICAgICAgICAgICAoU0NCX1NIQ1NSX01FTUZBVUxUQUNUX1BvcyArIDNVKSAgICAvKiE8IFNDQiBDRlNSIChNTUZTUik6IE1VTlNUS0VSUiBQb3NpdGlvbiAqLw0KI2RlZmluZSBTQ0JfQ0ZTUl9NVU5TVEtFUlJfTXNrICAgICAgICAgICAgICgxVUwgPDwgU0NCX0NGU1JfTVVOU1RLRVJSX1BvcykgICAgIC8qITwgU0NCIENGU1IgKE1NRlNSKTogTVVOU1RLRVJSIE1hc2sgKi8NCiNkZWZpbmUgU0NCX0NGU1JfTVVOU1RLRVJSICAgICAgICAgICAgICAgICAgU0NCX0NGU1JfTVVOU1RLRVJSX01zayAgICAgICAgICAgICAvKiE8IFVuc3RhY2tpbmcgZXJyb3IgKi8NCiNkZWZpbmUgU0NCX0NGU1JfTVNUS0VSUl9Qb3MgICAgICAgICAgICAgICAoU0NCX1NIQ1NSX01FTUZBVUxUQUNUX1BvcyArIDRVKSAgICAvKiE8IFNDQiBDRlNSIChNTUZTUik6IE1TVEtFUlIgUG9zaXRpb24gKi8NCiNkZWZpbmUgU0NCX0NGU1JfTVNUS0VSUl9Nc2sgICAgICAgICAgICAgICAoMVVMIDw8IFNDQl9DRlNSX01TVEtFUlJfUG9zKSAgICAgICAvKiE8IFNDQiBDRlNSIChNTUZTUik6IE1TVEtFUlIgTWFzayAqLw0KI2RlZmluZSBTQ0JfQ0ZTUl9NU1RLRVJSICAgICAgICAgICAgICAgICAgICBTQ0JfQ0ZTUl9NU1RLRVJSX01zayAgICAgICAgICAgICAgIC8qITwgU3RhY2tpbmcgZXJyb3IgKi8NCiNkZWZpbmUgU0NCX0NGU1JfTU1BUlZBTElEX1BvcyAgICAgICAgICAgICAoU0NCX1NIQ1NSX01FTUZBVUxUQUNUX1BvcyArIDdVKSAgICAvKiE8IFNDQiBDRlNSIChNTUZTUik6IE1NQVJWQUxJRCBQb3NpdGlvbiAqLw0KI2RlZmluZSBTQ0JfQ0ZTUl9NTUFSVkFMSURfTXNrICAgICAgICAgICAgICgxVUwgPDwgU0NCX0NGU1JfTU1BUlZBTElEX1BvcykgICAgIC8qITwgU0NCIENGU1IgKE1NRlNSKTogTU1BUlZBTElEIE1hc2sgKi8NCiNkZWZpbmUgU0NCX0NGU1JfTU1BUlZBTElEICAgICAgICAgICAgICAgICAgU0NCX0NGU1JfTU1BUlZBTElEX01zayAgICAgICAgICAgICAvKiE8IE1lbW9yeSBNYW5hZ2UgQWRkcmVzcyBSZWdpc3RlciBhZGRyZXNzIHZhbGlkIGZsYWcgKi8NCi8qITwgQkZTUiAqLw0KI2RlZmluZSBTQ0JfQ0ZTUl9JQlVTRVJSX1BvcyAgICAgICAgICAgICAgKFNDQl9DRlNSX0JVU0ZBVUxUU1JfUG9zICsgMFUpICAgICAgIC8qITwgU0NCIENGU1IgKEJGU1IpOiBJQlVTRVJSIFBvc2l0aW9uICovDQojZGVmaW5lIFNDQl9DRlNSX0lCVVNFUlJfTXNrICAgICAgICAgICAgICAoMVVMIDw8IFNDQl9DRlNSX0lCVVNFUlJfUG9zKSAgICAgICAgLyohPCBTQ0IgQ0ZTUiAoQkZTUik6IElCVVNFUlIgTWFzayAqLw0KI2RlZmluZSBTQ0JfQ0ZTUl9JQlVTRVJSICAgICAgICAgICAgICAgICAgICBTQ0JfQ0ZTUl9JQlVTRVJSX01zayAgICAgICAgICAgICAgIC8qITwgSW5zdHJ1Y3Rpb24gYnVzIGVycm9yIGZsYWcgKi8NCiNkZWZpbmUgU0NCX0NGU1JfUFJFQ0lTRVJSX1BvcyAgICAgICAgICAgIChTQ0JfQ0ZTUl9CVVNGQVVMVFNSX1BvcyArIDFVKSAgICAgICAvKiE8IFNDQiBDRlNSIChCRlNSKTogUFJFQ0lTRVJSIFBvc2l0aW9uICovDQojZGVmaW5lIFNDQl9DRlNSX1BSRUNJU0VSUl9Nc2sgICAgICAgICAgICAoMVVMIDw8IFNDQl9DRlNSX1BSRUNJU0VSUl9Qb3MpICAgICAgLyohPCBTQ0IgQ0ZTUiAoQkZTUik6IFBSRUNJU0VSUiBNYXNrICovDQojZGVmaW5lIFNDQl9DRlNSX1BSRUNJU0VSUiAgICAgICAgICAgICAgICAgIFNDQl9DRlNSX1BSRUNJU0VSUl9Nc2sgICAgICAgICAgICAgLyohPCBQcmVjaXNlIGRhdGEgYnVzIGVycm9yICovDQojZGVmaW5lIFNDQl9DRlNSX0lNUFJFQ0lTRVJSX1BvcyAgICAgICAgICAoU0NCX0NGU1JfQlVTRkFVTFRTUl9Qb3MgKyAyVSkgICAgICAgLyohPCBTQ0IgQ0ZTUiAoQkZTUik6IElNUFJFQ0lTRVJSIFBvc2l0aW9uICovDQojZGVmaW5lIFNDQl9DRlNSX0lNUFJFQ0lTRVJSX01zayAgICAgICAgICAoMVVMIDw8IFNDQl9DRlNSX0lNUFJFQ0lTRVJSX1BvcykgICAgLyohPCBTQ0IgQ0ZTUiAoQkZTUik6IElNUFJFQ0lTRVJSIE1hc2sgKi8NCiNkZWZpbmUgU0NCX0NGU1JfSU1QUkVDSVNFUlIgICAgICAgICAgICAgICAgU0NCX0NGU1JfSU1QUkVDSVNFUlJfTXNrICAgICAgICAgICAvKiE8IEltcHJlY2lzZSBkYXRhIGJ1cyBlcnJvciAqLw0KI2RlZmluZSBTQ0JfQ0ZTUl9VTlNUS0VSUl9Qb3MgICAgICAgICAgICAgKFNDQl9DRlNSX0JVU0ZBVUxUU1JfUG9zICsgM1UpICAgICAgIC8qITwgU0NCIENGU1IgKEJGU1IpOiBVTlNUS0VSUiBQb3NpdGlvbiAqLw0KI2RlZmluZSBTQ0JfQ0ZTUl9VTlNUS0VSUl9Nc2sgICAgICAgICAgICAgKDFVTCA8PCBTQ0JfQ0ZTUl9VTlNUS0VSUl9Qb3MpICAgICAgIC8qITwgU0NCIENGU1IgKEJGU1IpOiBVTlNUS0VSUiBNYXNrICovDQojZGVmaW5lIFNDQl9DRlNSX1VOU1RLRVJSICAgICAgICAgICAgICAgICAgIFNDQl9DRlNSX1VOU1RLRVJSX01zayAgICAgICAgICAgICAgLyohPCBVbnN0YWNraW5nIGVycm9yICovDQojZGVmaW5lIFNDQl9DRlNSX1NUS0VSUl9Qb3MgICAgICAgICAgICAgICAoU0NCX0NGU1JfQlVTRkFVTFRTUl9Qb3MgKyA0VSkgICAgICAgLyohPCBTQ0IgQ0ZTUiAoQkZTUik6IFNUS0VSUiBQb3NpdGlvbiAqLw0KI2RlZmluZSBTQ0JfQ0ZTUl9TVEtFUlJfTXNrICAgICAgICAgICAgICAgKDFVTCA8PCBTQ0JfQ0ZTUl9TVEtFUlJfUG9zKSAgICAgICAgIC8qITwgU0NCIENGU1IgKEJGU1IpOiBTVEtFUlIgTWFzayAqLw0KI2RlZmluZSBTQ0JfQ0ZTUl9TVEtFUlIgICAgICAgICAgICAgICAgICAgICBTQ0JfQ0ZTUl9TVEtFUlJfTXNrICAgICAgICAgICAgICAgIC8qITwgU3RhY2tpbmcgZXJyb3IgKi8NCiNkZWZpbmUgU0NCX0NGU1JfQkZBUlZBTElEX1BvcyAgICAgICAgICAgIChTQ0JfQ0ZTUl9CVVNGQVVMVFNSX1BvcyArIDdVKSAgICAgICAvKiE8IFNDQiBDRlNSIChCRlNSKTogQkZBUlZBTElEIFBvc2l0aW9uICovDQojZGVmaW5lIFNDQl9DRlNSX0JGQVJWQUxJRF9Nc2sgICAgICAgICAgICAoMVVMIDw8IFNDQl9DRlNSX0JGQVJWQUxJRF9Qb3MpICAgICAgLyohPCBTQ0IgQ0ZTUiAoQkZTUik6IEJGQVJWQUxJRCBNYXNrICovDQojZGVmaW5lIFNDQl9DRlNSX0JGQVJWQUxJRCAgICAgICAgICAgICAgICAgIFNDQl9DRlNSX0JGQVJWQUxJRF9Nc2sgICAgICAgICAgICAgLyohPCBCdXMgRmF1bHQgQWRkcmVzcyBSZWdpc3RlciBhZGRyZXNzIHZhbGlkIGZsYWcgKi8NCi8qITwgVUZTUiAqLw0KI2RlZmluZSBTQ0JfQ0ZTUl9VTkRFRklOU1RSX1BvcyAgICAgICAgICAgKFNDQl9DRlNSX1VTR0ZBVUxUU1JfUG9zICsgMFUpICAgICAgIC8qITwgU0NCIENGU1IgKFVGU1IpOiBVTkRFRklOU1RSIFBvc2l0aW9uICovDQojZGVmaW5lIFNDQl9DRlNSX1VOREVGSU5TVFJfTXNrICAgICAgICAgICAoMVVMIDw8IFNDQl9DRlNSX1VOREVGSU5TVFJfUG9zKSAgICAgLyohPCBTQ0IgQ0ZTUiAoVUZTUik6IFVOREVGSU5TVFIgTWFzayAqLw0KI2RlZmluZSBTQ0JfQ0ZTUl9VTkRFRklOU1RSICAgICAgICAgICAgICAgICBTQ0JfQ0ZTUl9VTkRFRklOU1RSX01zayAgICAgICAgICAgIC8qITwgVGhlIHByb2Nlc3NvciBhdHRlbXB0IHRvIGV4Y2VjdXRlIGFuIHVuZGVmaW5lZCBpbnN0cnVjdGlvbiAqLw0KI2RlZmluZSBTQ0JfQ0ZTUl9JTlZTVEFURV9Qb3MgICAgICAgICAgICAgKFNDQl9DRlNSX1VTR0ZBVUxUU1JfUG9zICsgMVUpICAgICAgIC8qITwgU0NCIENGU1IgKFVGU1IpOiBJTlZTVEFURSBQb3NpdGlvbiAqLw0KI2RlZmluZSBTQ0JfQ0ZTUl9JTlZTVEFURV9Nc2sgICAgICAgICAgICAgKDFVTCA8PCBTQ0JfQ0ZTUl9JTlZTVEFURV9Qb3MpICAgICAgIC8qITwgU0NCIENGU1IgKFVGU1IpOiBJTlZTVEFURSBNYXNrICovDQojZGVmaW5lIFNDQl9DRlNSX0lOVlNUQVRFICAgICAgICAgICAgICAgICAgIFNDQl9DRlNSX0lOVlNUQVRFX01zayAgICAgICAgICAgICAgLyohPCBJbnZhbGlkIGNvbWJpbmF0aW9uIG9mIEVQU1IgYW5kIGluc3RydWN0aW9uICovDQojZGVmaW5lIFNDQl9DRlNSX0lOVlBDX1BvcyAgICAgICAgICAgICAgICAoU0NCX0NGU1JfVVNHRkFVTFRTUl9Qb3MgKyAyVSkgICAgICAgLyohPCBTQ0IgQ0ZTUiAoVUZTUik6IElOVlBDIFBvc2l0aW9uICovDQojZGVmaW5lIFNDQl9DRlNSX0lOVlBDX01zayAgICAgICAgICAgICAgICAoMVVMIDw8IFNDQl9DRlNSX0lOVlBDX1BvcykgICAgICAgICAgLyohPCBTQ0IgQ0ZTUiAoVUZTUik6IElOVlBDIE1hc2sgKi8NCiNkZWZpbmUgU0NCX0NGU1JfSU5WUEMgICAgICAgICAgICAgICAgICAgICAgU0NCX0NGU1JfSU5WUENfTXNrICAgICAgICAgICAgICAgICAvKiE8IEF0dGVtcHQgdG8gbG9hZCBFWENfUkVUVVJOIGludG8gcGMgaWxsZWdhbGx5ICovDQojZGVmaW5lIFNDQl9DRlNSX05PQ1BfUG9zICAgICAgICAgICAgICAgICAoU0NCX0NGU1JfVVNHRkFVTFRTUl9Qb3MgKyAzVSkgICAgICAgLyohPCBTQ0IgQ0ZTUiAoVUZTUik6IE5PQ1AgUG9zaXRpb24gKi8NCiNkZWZpbmUgU0NCX0NGU1JfTk9DUF9Nc2sgICAgICAgICAgICAgICAgICgxVUwgPDwgU0NCX0NGU1JfTk9DUF9Qb3MpICAgICAgICAgICAvKiE8IFNDQiBDRlNSIChVRlNSKTogTk9DUCBNYXNrICovDQojZGVmaW5lIFNDQl9DRlNSX05PQ1AgICAgICAgICAgICAgICAgICAgICAgIFNDQl9DRlNSX05PQ1BfTXNrICAgICAgICAgICAgICAgICAgLyohPCBBdHRlbXB0IHRvIHVzZSBhIGNvcHJvY2Vzc29yIGluc3RydWN0aW9uICovDQojZGVmaW5lIFNDQl9DRlNSX1VOQUxJR05FRF9Qb3MgICAgICAgICAgICAoU0NCX0NGU1JfVVNHRkFVTFRTUl9Qb3MgKyA4VSkgICAgICAgLyohPCBTQ0IgQ0ZTUiAoVUZTUik6IFVOQUxJR05FRCBQb3NpdGlvbiAqLw0KI2RlZmluZSBTQ0JfQ0ZTUl9VTkFMSUdORURfTXNrICAgICAgICAgICAgKDFVTCA8PCBTQ0JfQ0ZTUl9VTkFMSUdORURfUG9zKSAgICAgIC8qITwgU0NCIENGU1IgKFVGU1IpOiBVTkFMSUdORUQgTWFzayAqLw0KI2RlZmluZSBTQ0JfQ0ZTUl9VTkFMSUdORUQgICAgICAgICAgICAgICAgICBTQ0JfQ0ZTUl9VTkFMSUdORURfTXNrICAgICAgICAgICAgIC8qITwgRmF1bHQgb2NjdXJzIHdoZW4gdGhlcmUgaXMgYW4gYXR0ZW1wdCB0byBtYWtlIGFuIHVuYWxpZ25lZCBtZW1vcnkgYWNjZXNzICovDQojZGVmaW5lIFNDQl9DRlNSX0RJVkJZWkVST19Qb3MgICAgICAgICAgICAoU0NCX0NGU1JfVVNHRkFVTFRTUl9Qb3MgKyA5VSkgICAgICAgLyohPCBTQ0IgQ0ZTUiAoVUZTUik6IERJVkJZWkVSTyBQb3NpdGlvbiAqLw0KI2RlZmluZSBTQ0JfQ0ZTUl9ESVZCWVpFUk9fTXNrICAgICAgICAgICAgKDFVTCA8PCBTQ0JfQ0ZTUl9ESVZCWVpFUk9fUG9zKSAgICAgIC8qITwgU0NCIENGU1IgKFVGU1IpOiBESVZCWVpFUk8gTWFzayAqLw0KI2RlZmluZSBTQ0JfQ0ZTUl9ESVZCWVpFUk8gICAgICAgICAgICAgICAgICBTQ0JfQ0ZTUl9ESVZCWVpFUk9fTXNrICAgICAgICAgICAgIC8qITwgRmF1bHQgb2NjdXJzIHdoZW4gU0RJViBvciBESVYgaW5zdHJ1Y3Rpb24gaXMgdXNlZCB3aXRoIGEgZGl2aXNvciBvZiAwICovDQoNCi8qKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgU0NCX0hGU1IgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIFNDQl9IRlNSX1ZFQ1RUQkwgICAgICAgICAgICAgICAgICAgICgweDAwMDAwMDAyVSkgICAgICAgICAgICAgICAgICAgICAgLyohPCBGYXVsdCBvY2N1cmVzIGJlY2F1c2Ugb2YgdmVjdG9yIHRhYmxlIHJlYWQgb24gZXhjZXB0aW9uIHByb2Nlc3NpbmcgKi8NCiNkZWZpbmUgU0NCX0hGU1JfRk9SQ0VEICAgICAgICAgICAgICAgICAgICAgKDB4NDAwMDAwMDBVKSAgICAgICAgICAgICAgICAgICAgICAvKiE8IEhhcmQgRmF1bHQgYWN0aXZhdGVkIHdoZW4gYSBjb25maWd1cmFibGUgRmF1bHQgd2FzIHJlY2VpdmVkIGFuZCBjYW5ub3QgYWN0aXZhdGUgKi8NCiNkZWZpbmUgU0NCX0hGU1JfREVCVUdFVlQgICAgICAgICAgICAgICAgICAgKDB4ODAwMDAwMDBVKSAgICAgICAgICAgICAgICAgICAgICAvKiE8IEZhdWx0IHJlbGF0ZWQgdG8gZGVidWcgKi8NCg0KLyoqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBTQ0JfREZTUiByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgU0NCX0RGU1JfSEFMVEVEICAgICAgICAgICAgICAgICAgICAgKDB4MDAwMDAwMDFVKSAgICAgICAgICAgICAgICAgICAgICAvKiE8IEhhbHQgcmVxdWVzdCBmbGFnICovDQojZGVmaW5lIFNDQl9ERlNSX0JLUFQgICAgICAgICAgICAgICAgICAgICAgICgweDAwMDAwMDAyVSkgICAgICAgICAgICAgICAgICAgICAgLyohPCBCS1BUIGZsYWcgKi8NCiNkZWZpbmUgU0NCX0RGU1JfRFdUVFJBUCAgICAgICAgICAgICAgICAgICAgKDB4MDAwMDAwMDRVKSAgICAgICAgICAgICAgICAgICAgICAvKiE8IERhdGEgV2F0Y2hwb2ludCBhbmQgVHJhY2UgKERXVCkgZmxhZyAqLw0KI2RlZmluZSBTQ0JfREZTUl9WQ0FUQ0ggICAgICAgICAgICAgICAgICAgICAoMHgwMDAwMDAwOFUpICAgICAgICAgICAgICAgICAgICAgIC8qITwgVmVjdG9yIGNhdGNoIGZsYWcgKi8NCiNkZWZpbmUgU0NCX0RGU1JfRVhURVJOQUwgICAgICAgICAgICAgICAgICAgKDB4MDAwMDAwMTBVKSAgICAgICAgICAgICAgICAgICAgICAvKiE8IEV4dGVybmFsIGRlYnVnIHJlcXVlc3QgZmxhZyAqLw0KDQovKioqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFNDQl9NTUZBUiByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBTQ0JfTU1GQVJfQUREUkVTU19Qb3MgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBTQ0JfTU1GQVJfQUREUkVTU19Nc2sgICAgICAgICAgICAgICAoMHhGRkZGRkZGRlUgPDwgU0NCX01NRkFSX0FERFJFU1NfUG9zKSAvKiE8IDB4RkZGRkZGRkYgKi8NCiNkZWZpbmUgU0NCX01NRkFSX0FERFJFU1MgICAgICAgICAgICAgICAgICAgU0NCX01NRkFSX0FERFJFU1NfTXNrICAgICAgICAgICAgICAvKiE8IE1lbSBNYW5hZ2UgZmF1bHQgYWRkcmVzcyBmaWVsZCAqLw0KDQovKioqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFNDQl9CRkFSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBTQ0JfQkZBUl9BRERSRVNTX1BvcyAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBTQ0JfQkZBUl9BRERSRVNTX01zayAgICAgICAgICAgICAgICAoMHhGRkZGRkZGRlUgPDwgU0NCX0JGQVJfQUREUkVTU19Qb3MpIC8qITwgMHhGRkZGRkZGRiAqLw0KI2RlZmluZSBTQ0JfQkZBUl9BRERSRVNTICAgICAgICAgICAgICAgICAgICBTQ0JfQkZBUl9BRERSRVNTX01zayAgICAgICAgICAgICAgIC8qITwgQnVzIGZhdWx0IGFkZHJlc3MgZmllbGQgKi8NCg0KLyoqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBTQ0JfYWZzciByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgU0NCX0FGU1JfSU1QREVGX1BvcyAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgU0NCX0FGU1JfSU1QREVGX01zayAgICAgICAgICAgICAgICAgKDB4RkZGRkZGRkZVIDw8IFNDQl9BRlNSX0lNUERFRl9Qb3MpIC8qITwgMHhGRkZGRkZGRiAqLw0KI2RlZmluZSBTQ0JfQUZTUl9JTVBERUYgICAgICAgICAgICAgICAgICAgICBTQ0JfQUZTUl9JTVBERUZfTXNrICAgICAgICAgICAgICAgIC8qITwgSW1wbGVtZW50YXRpb24gZGVmaW5lZCAqLw0KLyoqDQogICogQH0NCiAgKi8NCg0KIC8qKg0KICAqIEB9DQogICovIA0KLyoqIEBhZGR0b2dyb3VwIEV4cG9ydGVkX21hY3JvDQogICogQHsNCiAgKi8NCiAgICAgIA0KLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiBBREMgSW5zdGFuY2VzICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgSVNfQURDX0FMTF9JTlNUQU5DRShJTlNUQU5DRSkgKChJTlNUQU5DRSkgPT0gQURDMSkNCg0KI2RlZmluZSBJU19BRENfQ09NTU9OX0lOU1RBTkNFKElOU1RBTkNFKSAoKElOU1RBTkNFKSA9PSBBREMxX0NPTU1PTikNCg0KLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiBBRVMgSW5zdGFuY2VzICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgSVNfQUVTX0FMTF9JTlNUQU5DRShJTlNUQU5DRSkgKChJTlNUQU5DRSkgPT0gQUVTKQ0KDQovKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiogQ09NUCBJbnN0YW5jZXMgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBJU19DT01QX0FMTF9JTlNUQU5DRShJTlNUQU5DRSkgKCgoSU5TVEFOQ0UpID09IENPTVAxKSB8fCBcDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gQ09NUDIpKQ0KDQojZGVmaW5lIElTX0NPTVBfQ09NTU9OX0lOU1RBTkNFKENPTU1PTl9JTlNUQU5DRSkgKChDT01NT05fSU5TVEFOQ0UpID09IENPTVAxMl9DT01NT04pDQoNCi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKiogQ1JDIEluc3RhbmNlcyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIElTX0NSQ19BTExfSU5TVEFOQ0UoSU5TVEFOQ0UpICgoSU5TVEFOQ0UpID09IENSQykNCg0KLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiBEQUMgSW5zdGFuY2VzICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgSVNfREFDX0FMTF9JTlNUQU5DRShJTlNUQU5DRSkgKChJTlNUQU5DRSkgPT0gREFDKQ0KDQovKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqIERNQSBJbnN0YW5jZXMgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBJU19ETUFfQUxMX0lOU1RBTkNFKElOU1RBTkNFKSAoKChJTlNUQU5DRSkgPT0gRE1BMV9DaGFubmVsMSkgfHwgXA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gRE1BMV9DaGFubmVsMikgfHwgXA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gRE1BMV9DaGFubmVsMykgfHwgXA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gRE1BMV9DaGFubmVsNCkgfHwgXA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gRE1BMV9DaGFubmVsNSkgfHwgXA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gRE1BMV9DaGFubmVsNikgfHwgXA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gRE1BMV9DaGFubmVsNykgfHwgXA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gRE1BMl9DaGFubmVsMSkgfHwgXA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gRE1BMl9DaGFubmVsMikgfHwgXA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gRE1BMl9DaGFubmVsMykgfHwgXA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gRE1BMl9DaGFubmVsNCkgfHwgXA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gRE1BMl9DaGFubmVsNSkpDQoNCi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqIEdQSU8gSW5zdGFuY2VzICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIElTX0dQSU9fQUxMX0lOU1RBTkNFKElOU1RBTkNFKSAoKChJTlNUQU5DRSkgPT0gR1BJT0EpIHx8IFwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBHUElPQikgfHwgXA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoSU5TVEFOQ0UpID09IEdQSU9DKSB8fCBcDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gR1BJT0QpIHx8IFwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBHUElPRSkgfHwgXA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoSU5TVEFOQ0UpID09IEdQSU9IKSkNCg0KLyoqKioqKioqKioqKioqKioqKioqKioqKioqKiogR1BJTyBBbHRlcm5hdGUgRnVuY3Rpb24gSW5zdGFuY2VzICoqKioqKioqKioqKioqKi8NCiNkZWZpbmUgSVNfR1BJT19BRl9JTlNUQU5DRShJTlNUQU5DRSkgSVNfR1BJT19BTExfSU5TVEFOQ0UoSU5TVEFOQ0UpDQoNCi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqIEdQSU8gTG9jayBJbnN0YW5jZXMgKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovDQovKiBPbiBMMSwgYWxsIEdQSU8gQmFuayBzdXBwb3J0IHRoZSBMb2NrIG1lY2hhbmlzbSAqLw0KI2RlZmluZSBJU19HUElPX0xPQ0tfSU5TVEFOQ0UoSU5TVEFOQ0UpIElTX0dQSU9fQUxMX0lOU1RBTkNFKElOU1RBTkNFKQ0KDQovKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiogSTJDIEluc3RhbmNlcyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBJU19JMkNfQUxMX0lOU1RBTkNFKElOU1RBTkNFKSAoKChJTlNUQU5DRSkgPT0gSTJDMSkgfHwgXA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gSTJDMikpDQoNCi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKiogU01CVVMgSW5zdGFuY2VzICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIElTX1NNQlVTX0FMTF9JTlNUQU5DRShJTlNUQU5DRSkgSVNfSTJDX0FMTF9JTlNUQU5DRShJTlNUQU5DRSkNCg0KLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqIEkyUyBJbnN0YW5jZXMgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgSVNfSTJTX0FMTF9JTlNUQU5DRShJTlNUQU5DRSkgKCgoSU5TVEFOQ0UpID09IFNQSTIpIHx8IFwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoSU5TVEFOQ0UpID09IFNQSTMpKQ0KLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiBJV0RHIEluc3RhbmNlcyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgSVNfSVdER19BTExfSU5TVEFOQ0UoSU5TVEFOQ0UpICAoKElOU1RBTkNFKSA9PSBJV0RHKQ0KDQovKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqIE9QQU1QIEluc3RhbmNlcyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBJU19PUEFNUF9BTExfSU5TVEFOQ0UoSU5TVEFOQ0UpICgoKElOU1RBTkNFKSA9PSBPUEFNUDEpIHx8IFwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gT1BBTVAyKSkNCg0KI2RlZmluZSBJU19PUEFNUF9DT01NT05fSU5TVEFOQ0UoQ09NTU9OX0lOU1RBTkNFKSAoKENPTU1PTl9JTlNUQU5DRSkgPT0gT1BBTVAxMl9DT01NT04pDQoNCi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKiogUlRDIEluc3RhbmNlcyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIElTX1JUQ19BTExfSU5TVEFOQ0UoSU5TVEFOQ0UpICAoKElOU1RBTkNFKSA9PSBSVEMpDQoNCi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiBTUEkgSW5zdGFuY2VzICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIElTX1NQSV9BTExfSU5TVEFOQ0UoSU5TVEFOQ0UpICgoKElOU1RBTkNFKSA9PSBTUEkxKSB8fCBcDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBTUEkyKSB8fCBcDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBTUEkzKSkNCg0KLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiBUSU0gSW5zdGFuY2VzICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8gDQojZGVmaW5lIElTX1RJTV9JTlNUQU5DRShJTlNUQU5DRSkgKCgoSU5TVEFOQ0UpID09IFRJTTIpICAgIHx8IFwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gVElNMykgICAgfHwgXA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBUSU00KSAgICB8fCBcDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoSU5TVEFOQ0UpID09IFRJTTUpICAgIHx8IFwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gVElNNikgICAgfHwgXA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBUSU03KSAgICB8fCBcDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoSU5TVEFOQ0UpID09IFRJTTkpICAgIHx8IFwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gVElNMTApICAgfHwgXA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBUSU0xMSkpDQoNCiNkZWZpbmUgSVNfVElNX0NDMV9JTlNUQU5DRShJTlNUQU5DRSkgKCgoSU5TVEFOQ0UpID09IFRJTTIpICB8fCBcDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBUSU0zKSAgfHwgXA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gVElNNCkgIHx8IFwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoSU5TVEFOQ0UpID09IFRJTTUpICB8fCBcDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBUSU05KSAgfHwgXA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gVElNMTApIHx8IFwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoSU5TVEFOQ0UpID09IFRJTTExKSkNCg0KI2RlZmluZSBJU19USU1fQ0MyX0lOU1RBTkNFKElOU1RBTkNFKSAoKChJTlNUQU5DRSkgPT0gVElNMikgIHx8IFwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoSU5TVEFOQ0UpID09IFRJTTMpICB8fCBcDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBUSU00KSAgfHwgXA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gVElNNSkgIHx8IFwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoSU5TVEFOQ0UpID09IFRJTTkpKQ0KDQojZGVmaW5lIElTX1RJTV9DQzNfSU5TVEFOQ0UoSU5TVEFOQ0UpICgoKElOU1RBTkNFKSA9PSBUSU0yKSAgfHwgXA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gVElNMykgIHx8IFwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoSU5TVEFOQ0UpID09IFRJTTQpICB8fCBcDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBUSU01KSkNCg0KI2RlZmluZSBJU19USU1fQ0M0X0lOU1RBTkNFKElOU1RBTkNFKSAoKChJTlNUQU5DRSkgPT0gVElNMikgIHx8IFwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoSU5TVEFOQ0UpID09IFRJTTMpICB8fCBcDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBUSU00KSAgfHwgXA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gVElNNSkpDQoNCiNkZWZpbmUgSVNfVElNX0NMT0NLU09VUkNFX0VUUk1PREUxX0lOU1RBTkNFKElOU1RBTkNFKSAoKChJTlNUQU5DRSkgPT0gVElNMikgIHx8IFwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gVElNMykgIHx8IFwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gVElNNCkgIHx8IFwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gVElNNSkgIHx8IFwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gVElNOSkpDQoNCiNkZWZpbmUgSVNfVElNX0NMT0NLU09VUkNFX0VUUk1PREUyX0lOU1RBTkNFKElOU1RBTkNFKSAoKChJTlNUQU5DRSkgPT0gVElNMikgIHx8IFwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gVElNMykgIHx8IFwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gVElNNCkgIHx8IFwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gVElNNSkgIHx8IFwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gVElNOSkgIHx8IFwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gVElNMTApIHx8IFwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gVElNMTEpKQ0KDQojZGVmaW5lIElTX1RJTV9DTE9DS1NPVVJDRV9USVhfSU5TVEFOQ0UoSU5TVEFOQ0UpICgoKElOU1RBTkNFKSA9PSBUSU0yKSAgfHwgXA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gVElNMykgIHx8IFwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoSU5TVEFOQ0UpID09IFRJTTQpICB8fCBcDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBUSU01KSAgfHwgXA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gVElNOSkpDQoNCiNkZWZpbmUgSVNfVElNX0NMT0NLU09VUkNFX0lUUlhfSU5TVEFOQ0UoSU5TVEFOQ0UpICgoKElOU1RBTkNFKSA9PSBUSU0yKSAgfHwgXA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoSU5TVEFOQ0UpID09IFRJTTMpICB8fCBcDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gVElNNCkgIHx8IFwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBUSU01KSAgfHwgXA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoSU5TVEFOQ0UpID09IFRJTTkpKQ0KDQojZGVmaW5lIElTX1RJTV9PQ1hSRUZfQ0xFQVJfSU5TVEFOQ0UoSU5TVEFOQ0UpICgoKElOU1RBTkNFKSA9PSBUSU0yKSAgfHwgXA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gVElNMykgIHx8IFwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoSU5TVEFOQ0UpID09IFRJTTQpKQ0KDQojZGVmaW5lIElTX1RJTV9YT1JfSU5TVEFOQ0UoSU5TVEFOQ0UpICgoKElOU1RBTkNFKSA9PSBUSU0yKSAgfHwgXA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gVElNMykgIHx8IFwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoSU5TVEFOQ0UpID09IFRJTTQpICB8fCBcDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBUSU01KSkNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBJU19USU1fRVRSX0lOU1RBTkNFKElOU1RBTkNFKSAoKChJTlNUQU5DRSkgPT0gVElNMikgIHx8IFwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoSU5TVEFOQ0UpID09IFRJTTMpICB8fCBcDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBUSU00KSAgfHwgXA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gVElNNSkpDQoNCg0KI2RlZmluZSBJU19USU1fTUFTVEVSX0lOU1RBTkNFKElOU1RBTkNFKSAoKChJTlNUQU5DRSkgPT0gVElNMikgIHx8IFwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoSU5TVEFOQ0UpID09IFRJTTMpICB8fCBcDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBUSU00KSAgfHwgXA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gVElNNSkgIHx8IFwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoSU5TVEFOQ0UpID09IFRJTTYpICB8fCBcDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBUSU03KSAgfHwgXA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gVElNOSkpDQoNCiNkZWZpbmUgSVNfVElNX1NMQVZFX0lOU1RBTkNFKElOU1RBTkNFKSAoKChJTlNUQU5DRSkgPT0gVElNMikgIHx8IFwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gVElNMykgIHx8IFwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gVElNNCkgIHx8IFwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gVElNNSkgIHx8IFwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gVElNOSkpDQoNCiNkZWZpbmUgSVNfVElNXzMyQl9DT1VOVEVSX0lOU1RBTkNFKElOU1RBTkNFKSAoKElOU1RBTkNFKSA9PSBUSU01KQ0KDQojZGVmaW5lIElTX1RJTV9ETUFCVVJTVF9JTlNUQU5DRShJTlNUQU5DRSkgKCgoSU5TVEFOQ0UpID09IFRJTTIpICB8fCBcDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoSU5TVEFOQ0UpID09IFRJTTMpICB8fCBcDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoSU5TVEFOQ0UpID09IFRJTTQpICB8fCBcDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoSU5TVEFOQ0UpID09IFRJTTUpKQ0KDQojZGVmaW5lIElTX1RJTV9DQ1hfSU5TVEFOQ0UoSU5TVEFOQ0UsIENIQU5ORUwpIFwNCiAgICAoKCgoSU5TVEFOQ0UpID09IFRJTTIpICYmICAgICAgICAgICAgICAgICAgIFwNCiAgICAgKCgoQ0hBTk5FTCkgPT0gVElNX0NIQU5ORUxfMSkgfHwgICAgICAgICAgXA0KICAgICAgKChDSEFOTkVMKSA9PSBUSU1fQ0hBTk5FTF8yKSB8fCAgICAgICAgICBcDQogICAgICAoKENIQU5ORUwpID09IFRJTV9DSEFOTkVMXzMpIHx8ICAgICAgICAgIFwNCiAgICAgICgoQ0hBTk5FTCkgPT0gVElNX0NIQU5ORUxfNCkpKSAgICAgICAgICAgXA0KICAgIHx8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcDQogICAgKCgoSU5TVEFOQ0UpID09IFRJTTMpICYmICAgICAgICAgICAgICAgICAgIFwNCiAgICAgKCgoQ0hBTk5FTCkgPT0gVElNX0NIQU5ORUxfMSkgfHwgICAgICAgICAgXA0KICAgICAgKChDSEFOTkVMKSA9PSBUSU1fQ0hBTk5FTF8yKSB8fCAgICAgICAgICBcDQogICAgICAoKENIQU5ORUwpID09IFRJTV9DSEFOTkVMXzMpIHx8ICAgICAgICAgIFwNCiAgICAgICgoQ0hBTk5FTCkgPT0gVElNX0NIQU5ORUxfNCkpKSAgICAgICAgICAgXA0KICAgIHx8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcDQogICAgKCgoSU5TVEFOQ0UpID09IFRJTTQpICYmICAgICAgICAgICAgICAgICAgIFwNCiAgICAgKCgoQ0hBTk5FTCkgPT0gVElNX0NIQU5ORUxfMSkgfHwgICAgICAgICAgXA0KICAgICAgKChDSEFOTkVMKSA9PSBUSU1fQ0hBTk5FTF8yKSB8fCAgICAgICAgICBcDQogICAgICAoKENIQU5ORUwpID09IFRJTV9DSEFOTkVMXzMpIHx8ICAgICAgICAgIFwNCiAgICAgICgoQ0hBTk5FTCkgPT0gVElNX0NIQU5ORUxfNCkpKSAgICAgICAgICAgXA0KICAgIHx8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcDQogICAgKCgoSU5TVEFOQ0UpID09IFRJTTUpICYmICAgICAgICAgICAgICAgICAgIFwNCiAgICAgKCgoQ0hBTk5FTCkgPT0gVElNX0NIQU5ORUxfMSkgfHwgICAgICAgICAgXA0KICAgICAgKChDSEFOTkVMKSA9PSBUSU1fQ0hBTk5FTF8yKSB8fCAgICAgICAgICBcDQogICAgICAoKENIQU5ORUwpID09IFRJTV9DSEFOTkVMXzMpIHx8ICAgICAgICAgIFwNCiAgICAgICgoQ0hBTk5FTCkgPT0gVElNX0NIQU5ORUxfNCkpKSAgICAgICAgICAgXA0KICAgIHx8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcDQogICAgKCgoSU5TVEFOQ0UpID09IFRJTTkpICYmICAgICAgICAgICAgICAgICAgXA0KICAgICAoKChDSEFOTkVMKSA9PSBUSU1fQ0hBTk5FTF8xKSB8fCAgICAgICAgICBcDQogICAgICAoKENIQU5ORUwpID09IFRJTV9DSEFOTkVMXzIpKSkgICAgICAgICAgIFwNCiAgICB8fCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXA0KICAgICgoKElOU1RBTkNFKSA9PSBUSU0xMCkgJiYgICAgICAgICAgICAgICAgICBcDQogICAgICgoKENIQU5ORUwpID09IFRJTV9DSEFOTkVMXzEpKSkgICAgICAgICAgIFwNCiAgICB8fCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXA0KICAgICgoKElOU1RBTkNFKSA9PSBUSU0xMSkgJiYgICAgICAgICAgICAgICAgICBcDQogICAgICgoKENIQU5ORUwpID09IFRJTV9DSEFOTkVMXzEpKSkpDQoNCiNkZWZpbmUgSVNfVElNX0NMT0NLX0RJVklTSU9OX0lOU1RBTkNFKElOU1RBTkNFKSAoKChJTlNUQU5DRSkgPT0gVElNMikgIHx8IFwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gVElNMykgIHx8IFwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gVElNNCkgIHx8IFwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gVElNNSkgIHx8IFwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gVElNOSkgIHx8IFwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gVElNMTApIHx8IFwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gVElNMTEpKQ0KDQojZGVmaW5lIElTX1RJTV9ETUFfSU5TVEFOQ0UoSU5TVEFOQ0UpICgoKElOU1RBTkNFKSA9PSBUSU0yKSAgICB8fCBcDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBUSU0zKSAgICB8fCBcDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBUSU00KSAgICB8fCBcDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBUSU01KSAgICB8fCBcDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBUSU02KSAgICB8fCBcDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBUSU03KSkNCiAgICANCiNkZWZpbmUgSVNfVElNX0RNQV9DQ19JTlNUQU5DRShJTlNUQU5DRSkgKCgoSU5TVEFOQ0UpID09IFRJTTIpICB8fCBcDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBUSU0zKSAgfHwgXA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gVElNNCkgIHx8IFwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoSU5TVEFOQ0UpID09IFRJTTUpKQ0KDQojZGVmaW5lIElTX1RJTV9DT1VOVEVSX01PREVfU0VMRUNUX0lOU1RBTkNFKElOU1RBTkNFKSAoKChJTlNUQU5DRSkgPT0gVElNMikgICAgfHwgXA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoSU5TVEFOQ0UpID09IFRJTTMpICAgIHx8IFwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBUSU00KSAgICB8fCBcDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gVElNNSkgICAgfHwgXA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoSU5TVEFOQ0UpID09IFRJTTkpKQ0KDQojZGVmaW5lIElTX1RJTV9FTkNPREVSX0lOVEVSRkFDRV9JTlNUQU5DRShJTlNUQU5DRSkgKCgoSU5TVEFOQ0UpID09IFRJTTIpICB8fCBcDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoSU5TVEFOQ0UpID09IFRJTTMpICB8fCBcDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoSU5TVEFOQ0UpID09IFRJTTQpICB8fCBcDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoSU5TVEFOQ0UpID09IFRJTTUpICB8fCBcDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoSU5TVEFOQ0UpID09IFRJTTkpKQ0KDQojZGVmaW5lIElTX1RJTV9SRU1BUF9JTlNUQU5DRShJTlNUQU5DRSkgKCgoSU5TVEFOQ0UpID09IFRJTTIpICAgIHx8IFwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gVElNMykgICAgfHwgXA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBUSU05KSAgICB8fCBcDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoSU5TVEFOQ0UpID09IFRJTTEwKSAgIHx8IFwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gVElNMTEpKQ0KDQovKioqKioqKioqKioqKioqKioqKiogVVNBUlQgSW5zdGFuY2VzIDogU3luY2hyb25vdXMgbW9kZSAqKioqKioqKioqKioqKioqKioqKioqLyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgSVNfVVNBUlRfSU5TVEFOQ0UoSU5TVEFOQ0UpICgoKElOU1RBTkNFKSA9PSBVU0FSVDEpIHx8IFwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBVU0FSVDIpIHx8IFwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBVU0FSVDMpKQ0KDQovKioqKioqKioqKioqKioqKioqKiogVUFSVCBJbnN0YW5jZXMgOiBBc3luY2hyb25vdXMgbW9kZSAqKioqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBJU19VQVJUX0lOU1RBTkNFKElOU1RBTkNFKSAoKChJTlNUQU5DRSkgPT0gVVNBUlQxKSB8fCBcDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBVU0FSVDIpIHx8IFwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoSU5TVEFOQ0UpID09IFVTQVJUMykpDQoNCi8qKioqKioqKioqKioqKioqKioqKiBVQVJUIEluc3RhbmNlcyA6IEhhbGYtRHVwbGV4IG1vZGUgKioqKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgSVNfVUFSVF9IQUxGRFVQTEVYX0lOU1RBTkNFKElOU1RBTkNFKSAgICgoKElOU1RBTkNFKSA9PSBVU0FSVDEpIHx8IFwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBVU0FSVDIpIHx8IFwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBVU0FSVDMpKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KDQovKioqKioqKioqKioqKioqKioqKiogVUFSVCBJbnN0YW5jZXMgOiBMSU4gbW9kZSAqKioqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBJU19VQVJUX0xJTl9JTlNUQU5DRShJTlNUQU5DRSkgICAoKChJTlNUQU5DRSkgPT0gVVNBUlQxKSB8fCBcDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBVU0FSVDIpIHx8IFwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoSU5TVEFOQ0UpID09IFVTQVJUMykpIA0KDQovKioqKioqKioqKioqKioqKioqIFVBUlQgSW5zdGFuY2VzIDogSGFyZHdhcmUgRmxvdyBjb250cm9sICoqKioqKioqKioqKioqKioqKioqLyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBJU19VQVJUX0hXRkxPV19JTlNUQU5DRShJTlNUQU5DRSkgKCgoSU5TVEFOQ0UpID09IFVTQVJUMSkgfHwgXA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoSU5TVEFOQ0UpID09IFVTQVJUMikgfHwgXA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoSU5TVEFOQ0UpID09IFVTQVJUMykpDQoNCi8qKioqKioqKioqKioqKioqKioqKiogVUFSVCBJbnN0YW5jZXMgOiBTbWFyZCBjYXJkIG1vZGUgKioqKioqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIElTX1NNQVJUQ0FSRF9JTlNUQU5DRShJTlNUQU5DRSkgKCgoSU5TVEFOQ0UpID09IFVTQVJUMSkgfHwgXA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBVU0FSVDIpIHx8IFwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gVVNBUlQzKSkNCg0KLyoqKioqKioqKioqKioqKioqKioqKioqIFVBUlQgSW5zdGFuY2VzIDogSVJEQSBtb2RlICoqKioqKioqKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgSVNfSVJEQV9JTlNUQU5DRShJTlNUQU5DRSkgKCgoSU5TVEFOQ0UpID09IFVTQVJUMSkgfHwgXA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gVVNBUlQyKSB8fCBcDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBVU0FSVDMpKQ0KDQovKioqKioqKioqKioqKioqKiogVUFSVCBJbnN0YW5jZXMgOiBNdWx0aS1Qcm9jZXNzb3IgbW9kZSAqKioqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBJU19VQVJUX01VTFRJUFJPQ0VTU09SX0lOU1RBTkNFKElOU1RBTkNFKSAgICgoKElOU1RBTkNFKSA9PSBVU0FSVDEpIHx8IFwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gVVNBUlQyKSB8fCBcDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoSU5TVEFOQ0UpID09IFVTQVJUMykpIA0KDQovKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqIFdXREcgSW5zdGFuY2VzICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBJU19XV0RHX0FMTF9JTlNUQU5DRShJTlNUQU5DRSkgICgoSU5TVEFOQ0UpID09IFdXREcpDQoNCg0KLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiBMQ0QgSW5zdGFuY2VzICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBJU19MQ0RfQUxMX0lOU1RBTkNFKElOU1RBTkNFKSAoKElOU1RBTkNFKSA9PSBMQ0QpDQoNCi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKiogVVNCIEluc3RhbmNlcyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgSVNfVVNCX0FMTF9JTlNUQU5DRShJTlNUQU5DRSkgKChJTlNUQU5DRSkgPT0gVVNCKQ0KDQovKioNCiAgKiBAfQ0KICAqLw0KDQovKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLw0KLyogIEZvciBhIHBhaW5sZXNzIGNvZGVzIG1pZ3JhdGlvbiBiZXR3ZWVuIHRoZSBTVE0zMkwxeHggZGV2aWNlIHByb2R1Y3QgICAgICAgKi8NCi8qICBsaW5lcywgdGhlIGFsaWFzZXMgZGVmaW5lZCBiZWxvdyBhcmUgcHV0IGluIHBsYWNlIHRvIG92ZXJjb21lIHRoZSAgICAgICAgICovDQovKiAgZGlmZmVyZW5jZXMgaW4gdGhlIGludGVycnVwdCBoYW5kbGVycyBhbmQgSVJRbiBkZWZpbml0aW9ucy4gICAgICAgICAgICAgICAqLw0KLyogIE5vIG5lZWQgdG8gdXBkYXRlIGRldmVsb3BlZCBpbnRlcnJ1cHQgY29kZSB3aGVuIG1vdmluZyBhY3Jvc3MgICAgICAgICAgICAgKi8gDQovKiAgcHJvZHVjdCBsaW5lcyB3aXRoaW4gdGhlIHNhbWUgU1RNMzJMMSBGYW1pbHkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLw0KLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8NCg0KLyogQWxpYXNlcyBmb3IgX19JUlFuICovDQoNCi8qIEFsaWFzZXMgZm9yIF9fSVJRSGFuZGxlciAqLw0KDQovKioNCiAgKiBAfQ0KICAqLw0KDQovKioNCiAgKiBAfQ0KICAqLw0KDQojaWZkZWYgX19jcGx1c3BsdXMNCn0NCiNlbmRpZiAvKiBfX2NwbHVzcGx1cyAqLw0KDQojZW5kaWYgLyogX19TVE0zMkwxNjJ4Q19IICovDQoNCg0KDQovKioqKioqKioqKioqKioqKioqKioqKioqIChDKSBDT1BZUklHSFQgU1RNaWNyb2VsZWN0cm9uaWNzICoqKioqRU5EIE9GIEZJTEUqKioqLw0K