LyoqDQogICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKg0KICAqIEBmaWxlICAgIHN0bTMybDE1MnhlLmgNCiAgKiBAYXV0aG9yICBNQ0QgQXBwbGljYXRpb24gVGVhbQ0KICAqIEBicmllZiAgIENNU0lTIENvcnRleC1NMyBEZXZpY2UgUGVyaXBoZXJhbCBBY2Nlc3MgTGF5ZXIgSGVhZGVyIEZpbGUuIA0KICAqICAgICAgICAgIFRoaXMgZmlsZSBjb250YWlucyBhbGwgdGhlIHBlcmlwaGVyYWwgcmVnaXN0ZXIncyBkZWZpbml0aW9ucywgYml0cyANCiAgKiAgICAgICAgICBkZWZpbml0aW9ucyBhbmQgbWVtb3J5IG1hcHBpbmcgZm9yIFNUTTMyTDF4eCBkZXZpY2VzLiAgICAgICAgICAgIA0KICAqICAgICAgICAgICAgDQogICogICAgICAgICAgVGhpcyBmaWxlIGNvbnRhaW5zOg0KICAqICAgICAgICAgICAtIERhdGEgc3RydWN0dXJlcyBhbmQgdGhlIGFkZHJlc3MgbWFwcGluZyBmb3IgYWxsIHBlcmlwaGVyYWxzDQogICogICAgICAgICAgIC0gUGVyaXBoZXJhbCdzIHJlZ2lzdGVycyBkZWNsYXJhdGlvbnMgYW5kIGJpdHMgZGVmaW5pdGlvbg0KICAqICAgICAgICAgICAtIE1hY3JvcyB0byBhY2Nlc3MgcGVyaXBoZXJhbJJzIHJlZ2lzdGVycyBoYXJkd2FyZQ0KICAqICANCiAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqDQogICogQGF0dGVudGlvbg0KICAqDQogICogPGgyPjxjZW50ZXI+JmNvcHk7IENvcHlyaWdodCAoYykgMjAxNyBTVE1pY3JvZWxlY3Ryb25pY3MuDQogICogQWxsIHJpZ2h0cyByZXNlcnZlZC48L2NlbnRlcj48L2gyPg0KICAqDQogICogVGhpcyBzb2Z0d2FyZSBjb21wb25lbnQgaXMgbGljZW5zZWQgYnkgU1QgdW5kZXIgQlNEIDMtQ2xhdXNlIGxpY2Vuc2UsDQogICogdGhlICJMaWNlbnNlIjsgWW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZSB3aXRoIHRoZQ0KICAqIExpY2Vuc2UuIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdDoNCiAgKiAgICAgICAgICAgICAgICAgICAgICAgIG9wZW5zb3VyY2Uub3JnL2xpY2Vuc2VzL0JTRC0zLUNsYXVzZQ0KICAqDQogICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKg0KICAqLw0KDQovKiogQGFkZHRvZ3JvdXAgQ01TSVMNCiAgKiBAew0KICAqLw0KDQovKiogQGFkZHRvZ3JvdXAgc3RtMzJsMTUyeGUNCiAgKiBAew0KICAqLw0KICAgIA0KI2lmbmRlZiBfX1NUTTMyTDE1MnhFX0gNCiNkZWZpbmUgX19TVE0zMkwxNTJ4RV9IDQoNCiNpZmRlZiBfX2NwbHVzcGx1cw0KIGV4dGVybiAiQyIgew0KI2VuZGlmIA0KICANCg0KICAvKiogQGFkZHRvZ3JvdXAgQ29uZmlndXJhdGlvbl9zZWN0aW9uX2Zvcl9DTVNJUw0KICAqIEB7DQogICovDQovKioNCiAgKiBAYnJpZWYgQ29uZmlndXJhdGlvbiBvZiB0aGUgQ29ydGV4LU0zIFByb2Nlc3NvciBhbmQgQ29yZSBQZXJpcGhlcmFscyANCiAqLw0KI2RlZmluZSBfX0NNM19SRVYgICAgICAgICAgICAgICAgIDB4MjAwVSAvKiE8IENvcnRleC1NMyBSZXZpc2lvbiByMnAwICAgICAgICAgICAgICAgICAgKi8NCiNkZWZpbmUgX19NUFVfUFJFU0VOVCAgICAgICAgICAgICAxVSAgICAgLyohPCBTVE0zMkwxeHggcHJvdmlkZXMgTVBVICAgICAgICAgICAgICAgICAgICAgICAgICAqLw0KI2RlZmluZSBfX05WSUNfUFJJT19CSVRTICAgICAgICAgIDRVICAgICAvKiE8IFNUTTMyTDF4eCB1c2VzIDQgQml0cyBmb3IgdGhlIFByaW9yaXR5IExldmVscyAgICAqLw0KI2RlZmluZSBfX1ZlbmRvcl9TeXNUaWNrQ29uZmlnICAgIDBVICAgICAvKiE8IFNldCB0byAxIGlmIGRpZmZlcmVudCBTeXNUaWNrIENvbmZpZyBpcyB1c2VkICovDQogDQovKioNCiAgKiBAfQ0KICAqLw0KICAgDQovKiogQGFkZHRvZ3JvdXAgUGVyaXBoZXJhbF9pbnRlcnJ1cHRfbnVtYmVyX2RlZmluaXRpb24NCiAgKiBAew0KICAqLw0KDQovKioNCiAqIEBicmllZiBTVE0zMkwxeHggSW50ZXJydXB0IE51bWJlciBEZWZpbml0aW9uLCBhY2NvcmRpbmcgdG8gdGhlIHNlbGVjdGVkIGRldmljZSANCiAqICAgICAgICBpbiBAcmVmIExpYnJhcnlfY29uZmlndXJhdGlvbl9zZWN0aW9uIA0KICovDQoNCiAvKiE8IEludGVycnVwdCBOdW1iZXIgRGVmaW5pdGlvbiAqLw0KdHlwZWRlZiBlbnVtDQp7DQovKioqKioqICBDb3J0ZXgtTTMgUHJvY2Vzc29yIEV4Y2VwdGlvbnMgTnVtYmVycyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovDQogIE5vbk1hc2thYmxlSW50X0lSUW4gICAgICAgICA9IC0xNCwgICAgLyohPCAyIE5vbiBNYXNrYWJsZSBJbnRlcnJ1cHQgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovDQogIEhhcmRGYXVsdF9JUlFuICAgICAgICAgICAgICA9IC0xMywgICAgLyohPCAzIENvcnRleC1NMyBIYXJkIEZhdWx0IEludGVycnVwdCAgICAgICAgICAgICAgICAgICAgICAgICovDQogIE1lbW9yeU1hbmFnZW1lbnRfSVJRbiAgICAgICA9IC0xMiwgICAgLyohPCA0IENvcnRleC1NMyBNZW1vcnkgTWFuYWdlbWVudCBJbnRlcnJ1cHQgICAgICAgICAgICAgICAgICovDQogIEJ1c0ZhdWx0X0lSUW4gICAgICAgICAgICAgICA9IC0xMSwgICAgLyohPCA1IENvcnRleC1NMyBCdXMgRmF1bHQgSW50ZXJydXB0ICAgICAgICAgICAgICAgICAgICAgICAgICovDQogIFVzYWdlRmF1bHRfSVJRbiAgICAgICAgICAgICA9IC0xMCwgICAgLyohPCA2IENvcnRleC1NMyBVc2FnZSBGYXVsdCBJbnRlcnJ1cHQgICAgICAgICAgICAgICAgICAgICAgICovDQogIFNWQ19JUlFuICAgICAgICAgICAgICAgICAgICA9IC01LCAgICAgLyohPCAxMSBDb3J0ZXgtTTMgU1YgQ2FsbCBJbnRlcnJ1cHQgICAgICAgICAgICAgICAgICAgICAgICAgICovDQogIERlYnVnTW9uaXRvcl9JUlFuICAgICAgICAgICA9IC00LCAgICAgLyohPCAxMiBDb3J0ZXgtTTMgRGVidWcgTW9uaXRvciBJbnRlcnJ1cHQgICAgICAgICAgICAgICAgICAgICovDQogIFBlbmRTVl9JUlFuICAgICAgICAgICAgICAgICA9IC0yLCAgICAgLyohPCAxNCBDb3J0ZXgtTTMgUGVuZCBTViBJbnRlcnJ1cHQgICAgICAgICAgICAgICAgICAgICAgICAgICovDQogIFN5c1RpY2tfSVJRbiAgICAgICAgICAgICAgICA9IC0xLCAgICAgLyohPCAxNSBDb3J0ZXgtTTMgU3lzdGVtIFRpY2sgSW50ZXJydXB0ICAgICAgICAgICAgICAgICAgICAgICovDQoNCi8qKioqKiogIFNUTTMyTCBzcGVjaWZpYyBJbnRlcnJ1cHQgTnVtYmVycyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8NCiAgV1dER19JUlFuICAgICAgICAgICAgICAgICAgID0gMCwgICAgICAvKiE8IFdpbmRvdyBXYXRjaERvZyBJbnRlcnJ1cHQgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8NCiAgUFZEX0lSUW4gICAgICAgICAgICAgICAgICAgID0gMSwgICAgICAvKiE8IFBWRCB0aHJvdWdoIEVYVEkgTGluZSBkZXRlY3Rpb24gSW50ZXJydXB0ICAgICAgICAgICAgICAgKi8NCiAgVEFNUEVSX1NUQU1QX0lSUW4gICAgICAgICAgID0gMiwgICAgICAvKiE8IFRhbXBlciBhbmQgVGltZVN0YW1wIGludGVycnVwdHMgdGhyb3VnaCB0aGUgRVhUSSBsaW5lICAgKi8NCiAgUlRDX1dLVVBfSVJRbiAgICAgICAgICAgICAgID0gMywgICAgICAvKiE8IFJUQyBXYWtldXAgVGltZXIgdGhyb3VnaCBFWFRJIExpbmUgSW50ZXJydXB0ICAgICAgICAgICAgKi8NCiAgRkxBU0hfSVJRbiAgICAgICAgICAgICAgICAgID0gNCwgICAgICAvKiE8IEZMQVNIIGdsb2JhbCBJbnRlcnJ1cHQgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8NCiAgUkNDX0lSUW4gICAgICAgICAgICAgICAgICAgID0gNSwgICAgICAvKiE8IFJDQyBnbG9iYWwgSW50ZXJydXB0ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8NCiAgRVhUSTBfSVJRbiAgICAgICAgICAgICAgICAgID0gNiwgICAgICAvKiE8IEVYVEkgTGluZTAgSW50ZXJydXB0ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8NCiAgRVhUSTFfSVJRbiAgICAgICAgICAgICAgICAgID0gNywgICAgICAvKiE8IEVYVEkgTGluZTEgSW50ZXJydXB0ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8NCiAgRVhUSTJfSVJRbiAgICAgICAgICAgICAgICAgID0gOCwgICAgICAvKiE8IEVYVEkgTGluZTIgSW50ZXJydXB0ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8NCiAgRVhUSTNfSVJRbiAgICAgICAgICAgICAgICAgID0gOSwgICAgICAvKiE8IEVYVEkgTGluZTMgSW50ZXJydXB0ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8NCiAgRVhUSTRfSVJRbiAgICAgICAgICAgICAgICAgID0gMTAsICAgICAvKiE8IEVYVEkgTGluZTQgSW50ZXJydXB0ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8NCiAgRE1BMV9DaGFubmVsMV9JUlFuICAgICAgICAgID0gMTEsICAgICAvKiE8IERNQTEgQ2hhbm5lbCAxIGdsb2JhbCBJbnRlcnJ1cHQgICAgICAgICAgICAgICAgICAgICAgICAgKi8NCiAgRE1BMV9DaGFubmVsMl9JUlFuICAgICAgICAgID0gMTIsICAgICAvKiE8IERNQTEgQ2hhbm5lbCAyIGdsb2JhbCBJbnRlcnJ1cHQgICAgICAgICAgICAgICAgICAgICAgICAgKi8NCiAgRE1BMV9DaGFubmVsM19JUlFuICAgICAgICAgID0gMTMsICAgICAvKiE8IERNQTEgQ2hhbm5lbCAzIGdsb2JhbCBJbnRlcnJ1cHQgICAgICAgICAgICAgICAgICAgICAgICAgKi8NCiAgRE1BMV9DaGFubmVsNF9JUlFuICAgICAgICAgID0gMTQsICAgICAvKiE8IERNQTEgQ2hhbm5lbCA0IGdsb2JhbCBJbnRlcnJ1cHQgICAgICAgICAgICAgICAgICAgICAgICAgKi8NCiAgRE1BMV9DaGFubmVsNV9JUlFuICAgICAgICAgID0gMTUsICAgICAvKiE8IERNQTEgQ2hhbm5lbCA1IGdsb2JhbCBJbnRlcnJ1cHQgICAgICAgICAgICAgICAgICAgICAgICAgKi8NCiAgRE1BMV9DaGFubmVsNl9JUlFuICAgICAgICAgID0gMTYsICAgICAvKiE8IERNQTEgQ2hhbm5lbCA2IGdsb2JhbCBJbnRlcnJ1cHQgICAgICAgICAgICAgICAgICAgICAgICAgKi8NCiAgRE1BMV9DaGFubmVsN19JUlFuICAgICAgICAgID0gMTcsICAgICAvKiE8IERNQTEgQ2hhbm5lbCA3IGdsb2JhbCBJbnRlcnJ1cHQgICAgICAgICAgICAgICAgICAgICAgICAgKi8NCiAgQURDMV9JUlFuICAgICAgICAgICAgICAgICAgID0gMTgsICAgICAvKiE8IEFEQzEgZ2xvYmFsIEludGVycnVwdCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8NCiAgVVNCX0hQX0lSUW4gICAgICAgICAgICAgICAgID0gMTksICAgICAvKiE8IFVTQiBIaWdoIFByaW9yaXR5IEludGVycnVwdCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8NCiAgVVNCX0xQX0lSUW4gICAgICAgICAgICAgICAgID0gMjAsICAgICAvKiE8IFVTQiBMb3cgUHJpb3JpdHkgSW50ZXJydXB0ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8NCiAgREFDX0lSUW4gICAgICAgICAgICAgICAgICAgID0gMjEsICAgICAvKiE8IERBQyBJbnRlcnJ1cHQgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8NCiAgQ09NUF9JUlFuICAgICAgICAgICAgICAgICAgID0gMjIsICAgICAvKiE8IENvbXBhcmF0b3IgdGhyb3VnaCBFWFRJIExpbmUgSW50ZXJydXB0ICAgICAgICAgICAgICAgICAgKi8NCiAgRVhUSTlfNV9JUlFuICAgICAgICAgICAgICAgID0gMjMsICAgICAvKiE8IEV4dGVybmFsIExpbmVbOTo1XSBJbnRlcnJ1cHRzICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8NCiAgTENEX0lSUW4gICAgICAgICAgICAgICAgICAgID0gMjQsICAgICAvKiE8IExDRCBJbnRlcnJ1cHQgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8NCiAgVElNOV9JUlFuICAgICAgICAgICAgICAgICAgID0gMjUsICAgICAvKiE8IFRJTTkgZ2xvYmFsIEludGVycnVwdCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8NCiAgVElNMTBfSVJRbiAgICAgICAgICAgICAgICAgID0gMjYsICAgICAvKiE8IFRJTTEwIGdsb2JhbCBJbnRlcnJ1cHQgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8NCiAgVElNMTFfSVJRbiAgICAgICAgICAgICAgICAgID0gMjcsICAgICAvKiE8IFRJTTExIGdsb2JhbCBJbnRlcnJ1cHQgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8NCiAgVElNMl9JUlFuICAgICAgICAgICAgICAgICAgID0gMjgsICAgICAvKiE8IFRJTTIgZ2xvYmFsIEludGVycnVwdCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8NCiAgVElNM19JUlFuICAgICAgICAgICAgICAgICAgID0gMjksICAgICAvKiE8IFRJTTMgZ2xvYmFsIEludGVycnVwdCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8NCiAgVElNNF9JUlFuICAgICAgICAgICAgICAgICAgID0gMzAsICAgICAvKiE8IFRJTTQgZ2xvYmFsIEludGVycnVwdCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8NCiAgSTJDMV9FVl9JUlFuICAgICAgICAgICAgICAgID0gMzEsICAgICAvKiE8IEkyQzEgRXZlbnQgSW50ZXJydXB0ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8NCiAgSTJDMV9FUl9JUlFuICAgICAgICAgICAgICAgID0gMzIsICAgICAvKiE8IEkyQzEgRXJyb3IgSW50ZXJydXB0ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8NCiAgSTJDMl9FVl9JUlFuICAgICAgICAgICAgICAgID0gMzMsICAgICAvKiE8IEkyQzIgRXZlbnQgSW50ZXJydXB0ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8NCiAgSTJDMl9FUl9JUlFuICAgICAgICAgICAgICAgID0gMzQsICAgICAvKiE8IEkyQzIgRXJyb3IgSW50ZXJydXB0ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8NCiAgU1BJMV9JUlFuICAgICAgICAgICAgICAgICAgID0gMzUsICAgICAvKiE8IFNQSTEgZ2xvYmFsIEludGVycnVwdCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8NCiAgU1BJMl9JUlFuICAgICAgICAgICAgICAgICAgID0gMzYsICAgICAvKiE8IFNQSTIgZ2xvYmFsIEludGVycnVwdCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8NCiAgVVNBUlQxX0lSUW4gICAgICAgICAgICAgICAgID0gMzcsICAgICAvKiE8IFVTQVJUMSBnbG9iYWwgSW50ZXJydXB0ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8NCiAgVVNBUlQyX0lSUW4gICAgICAgICAgICAgICAgID0gMzgsICAgICAvKiE8IFVTQVJUMiBnbG9iYWwgSW50ZXJydXB0ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8NCiAgVVNBUlQzX0lSUW4gICAgICAgICAgICAgICAgID0gMzksICAgICAvKiE8IFVTQVJUMyBnbG9iYWwgSW50ZXJydXB0ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8NCiAgRVhUSTE1XzEwX0lSUW4gICAgICAgICAgICAgID0gNDAsICAgICAvKiE8IEV4dGVybmFsIExpbmVbMTU6MTBdIEludGVycnVwdHMgICAgICAgICAgICAgICAgICAgICAgICAgKi8NCiAgUlRDX0FsYXJtX0lSUW4gICAgICAgICAgICAgID0gNDEsICAgICAvKiE8IFJUQyBBbGFybSB0aHJvdWdoIEVYVEkgTGluZSBJbnRlcnJ1cHQgICAgICAgICAgICAgICAgICAgKi8NCiAgVVNCX0ZTX1dLVVBfSVJRbiAgICAgICAgICAgID0gNDIsICAgICAvKiE8IFVTQiBGUyBXYWtlVXAgZnJvbSBzdXNwZW5kIHRocm91Z2ggRVhUSSBMaW5lIEludGVycnVwdCAgKi8NCiAgVElNNl9JUlFuICAgICAgICAgICAgICAgICAgID0gNDMsICAgICAvKiE8IFRJTTYgZ2xvYmFsIEludGVycnVwdCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8NCiAgVElNN19JUlFuICAgICAgICAgICAgICAgICAgID0gNDQsICAgICAvKiE8IFRJTTcgZ2xvYmFsIEludGVycnVwdCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8NCiAgVElNNV9JUlFuICAgICAgICAgICAgICAgICAgID0gNDYsICAgICAvKiE8IFRJTTUgZ2xvYmFsIEludGVycnVwdCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8NCiAgU1BJM19JUlFuICAgICAgICAgICAgICAgICAgID0gNDcsICAgICAvKiE8IFNQSTMgZ2xvYmFsIEludGVycnVwdCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8NCiAgVUFSVDRfSVJRbiAgICAgICAgICAgICAgICAgID0gNDgsICAgICAvKiE8IFVBUlQ0IGdsb2JhbCBJbnRlcnJ1cHQgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8NCiAgVUFSVDVfSVJRbiAgICAgICAgICAgICAgICAgID0gNDksICAgICAvKiE8IFVBUlQ1IGdsb2JhbCBJbnRlcnJ1cHQgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8NCiAgRE1BMl9DaGFubmVsMV9JUlFuICAgICAgICAgID0gNTAsICAgICAvKiE8IERNQTIgQ2hhbm5lbCAxIGdsb2JhbCBJbnRlcnJ1cHQgICAgICAgICAgICAgICAgICAgICAgICAgKi8NCiAgRE1BMl9DaGFubmVsMl9JUlFuICAgICAgICAgID0gNTEsICAgICAvKiE8IERNQTIgQ2hhbm5lbCAyIGdsb2JhbCBJbnRlcnJ1cHQgICAgICAgICAgICAgICAgICAgICAgICAgKi8NCiAgRE1BMl9DaGFubmVsM19JUlFuICAgICAgICAgID0gNTIsICAgICAvKiE8IERNQTIgQ2hhbm5lbCAzIGdsb2JhbCBJbnRlcnJ1cHQgICAgICAgICAgICAgICAgICAgICAgICAgKi8NCiAgRE1BMl9DaGFubmVsNF9JUlFuICAgICAgICAgID0gNTMsICAgICAvKiE8IERNQTIgQ2hhbm5lbCA0IGdsb2JhbCBJbnRlcnJ1cHQgICAgICAgICAgICAgICAgICAgICAgICAgKi8NCiAgRE1BMl9DaGFubmVsNV9JUlFuICAgICAgICAgID0gNTQsICAgICAvKiE8IERNQTIgQ2hhbm5lbCA1IGdsb2JhbCBJbnRlcnJ1cHQgICAgICAgICAgICAgICAgICAgICAgICAgKi8NCiAgQ09NUF9BQ1FfSVJRbiAgICAgICAgICAgICAgID0gNTYgICAgICAvKiE8IENvbXBhcmF0b3IgQ2hhbm5lbCBBY3F1aXNpdGlvbiBnbG9iYWwgSW50ZXJydXB0ICAgICAgICAgKi8NCn0gSVJRbl9UeXBlOw0KDQovKioNCiAgKiBAfQ0KICAqLw0KDQojaW5jbHVkZSAiY29yZV9jbTMuaCINCiNpbmNsdWRlICJzeXN0ZW1fc3RtMzJsMXh4LmgiDQojaW5jbHVkZSA8c3RkaW50Lmg+DQoNCi8qKiBAYWRkdG9ncm91cCBQZXJpcGhlcmFsX3JlZ2lzdGVyc19zdHJ1Y3R1cmVzDQogICogQHsNCiAgKi8gICANCg0KLyoqIA0KICAqIEBicmllZiBBbmFsb2cgdG8gRGlnaXRhbCBDb252ZXJ0ZXINCiAgKi8NCg0KdHlwZWRlZiBzdHJ1Y3QNCnsNCiAgX19JTyB1aW50MzJfdCBTUjsgICAgICAgICAgIC8qITwgQURDIHN0YXR1cyByZWdpc3RlciwgICAgICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MDAgKi8NCiAgX19JTyB1aW50MzJfdCBDUjE7ICAgICAgICAgIC8qITwgQURDIGNvbnRyb2wgcmVnaXN0ZXIgMSwgICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MDQgKi8NCiAgX19JTyB1aW50MzJfdCBDUjI7ICAgICAgICAgIC8qITwgQURDIGNvbnRyb2wgcmVnaXN0ZXIgMiwgICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MDggKi8NCiAgX19JTyB1aW50MzJfdCBTTVBSMTsgICAgICAgIC8qITwgQURDIHNhbXBsZSB0aW1lIHJlZ2lzdGVyIDEsICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MEMgKi8NCiAgX19JTyB1aW50MzJfdCBTTVBSMjsgICAgICAgIC8qITwgQURDIHNhbXBsZSB0aW1lIHJlZ2lzdGVyIDIsICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MTAgKi8NCiAgX19JTyB1aW50MzJfdCBTTVBSMzsgICAgICAgIC8qITwgQURDIHNhbXBsZSB0aW1lIHJlZ2lzdGVyIDMsICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MTQgKi8NCiAgX19JTyB1aW50MzJfdCBKT0ZSMTsgICAgICAgIC8qITwgQURDIGluamVjdGVkIGNoYW5uZWwgZGF0YSBvZmZzZXQgcmVnaXN0ZXIgMSwgQWRkcmVzcyBvZmZzZXQ6IDB4MTggKi8NCiAgX19JTyB1aW50MzJfdCBKT0ZSMjsgICAgICAgIC8qITwgQURDIGluamVjdGVkIGNoYW5uZWwgZGF0YSBvZmZzZXQgcmVnaXN0ZXIgMiwgQWRkcmVzcyBvZmZzZXQ6IDB4MUMgKi8NCiAgX19JTyB1aW50MzJfdCBKT0ZSMzsgICAgICAgIC8qITwgQURDIGluamVjdGVkIGNoYW5uZWwgZGF0YSBvZmZzZXQgcmVnaXN0ZXIgMywgQWRkcmVzcyBvZmZzZXQ6IDB4MjAgKi8NCiAgX19JTyB1aW50MzJfdCBKT0ZSNDsgICAgICAgIC8qITwgQURDIGluamVjdGVkIGNoYW5uZWwgZGF0YSBvZmZzZXQgcmVnaXN0ZXIgNCwgQWRkcmVzcyBvZmZzZXQ6IDB4MjQgKi8NCiAgX19JTyB1aW50MzJfdCBIVFI7ICAgICAgICAgIC8qITwgQURDIHdhdGNoZG9nIGhpZ2hlciB0aHJlc2hvbGQgcmVnaXN0ZXIsICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MjggKi8NCiAgX19JTyB1aW50MzJfdCBMVFI7ICAgICAgICAgIC8qITwgQURDIHdhdGNoZG9nIGxvd2VyIHRocmVzaG9sZCByZWdpc3RlciwgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MkMgKi8NCiAgX19JTyB1aW50MzJfdCBTUVIxOyAgICAgICAgIC8qITwgQURDIHJlZ3VsYXIgc2VxdWVuY2UgcmVnaXN0ZXIgMSwgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MzAgKi8NCiAgX19JTyB1aW50MzJfdCBTUVIyOyAgICAgICAgIC8qITwgQURDIHJlZ3VsYXIgc2VxdWVuY2UgcmVnaXN0ZXIgMiwgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MzQgKi8NCiAgX19JTyB1aW50MzJfdCBTUVIzOyAgICAgICAgIC8qITwgQURDIHJlZ3VsYXIgc2VxdWVuY2UgcmVnaXN0ZXIgMywgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MzggKi8NCiAgX19JTyB1aW50MzJfdCBTUVI0OyAgICAgICAgIC8qITwgQURDIHJlZ3VsYXIgc2VxdWVuY2UgcmVnaXN0ZXIgNCwgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4M0MgKi8NCiAgX19JTyB1aW50MzJfdCBTUVI1OyAgICAgICAgIC8qITwgQURDIHJlZ3VsYXIgc2VxdWVuY2UgcmVnaXN0ZXIgNSwgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4NDAgKi8NCiAgX19JTyB1aW50MzJfdCBKU1FSOyAgICAgICAgIC8qITwgQURDIGluamVjdGVkIHNlcXVlbmNlIHJlZ2lzdGVyLCAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4NDQgKi8NCiAgX19JTyB1aW50MzJfdCBKRFIxOyAgICAgICAgIC8qITwgQURDIGluamVjdGVkIGRhdGEgcmVnaXN0ZXIgMSwgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4NDggKi8NCiAgX19JTyB1aW50MzJfdCBKRFIyOyAgICAgICAgIC8qITwgQURDIGluamVjdGVkIGRhdGEgcmVnaXN0ZXIgMiwgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4NEMgKi8NCiAgX19JTyB1aW50MzJfdCBKRFIzOyAgICAgICAgIC8qITwgQURDIGluamVjdGVkIGRhdGEgcmVnaXN0ZXIgMywgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4NTAgKi8NCiAgX19JTyB1aW50MzJfdCBKRFI0OyAgICAgICAgIC8qITwgQURDIGluamVjdGVkIGRhdGEgcmVnaXN0ZXIgNCwgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4NTQgKi8NCiAgX19JTyB1aW50MzJfdCBEUjsgICAgICAgICAgIC8qITwgQURDIHJlZ3VsYXIgZGF0YSByZWdpc3RlciwgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4NTggKi8NCiAgX19JTyB1aW50MzJfdCBTTVBSMDsgICAgICAgIC8qITwgQURDIHNhbXBsZSB0aW1lIHJlZ2lzdGVyIDAsICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4NUMgKi8NCn0gQURDX1R5cGVEZWY7DQoNCnR5cGVkZWYgc3RydWN0DQp7DQogIF9fSU8gdWludDMyX3QgQ1NSOyAgICAgICAgICAvKiE8IEFEQyBjb21tb24gc3RhdHVzIHJlZ2lzdGVyLCAgICAgICAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiBBREMxIGJhc2UgYWRkcmVzcyArIDB4MzAwICovDQogIF9fSU8gdWludDMyX3QgQ0NSOyAgICAgICAgICAvKiE8IEFEQyBjb21tb24gY29udHJvbCByZWdpc3RlciwgICAgICAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiBBREMxIGJhc2UgYWRkcmVzcyArIDB4MzA0ICovDQp9IEFEQ19Db21tb25fVHlwZURlZjsNCg0KLyoqIA0KICAqIEBicmllZiBDb21wYXJhdG9yIA0KICAqLw0KDQp0eXBlZGVmIHN0cnVjdA0Kew0KICBfX0lPIHVpbnQzMl90IENTUjsgICAgICAgICAvKiE8IENPTVAgY29udHJvbCBhbmQgc3RhdHVzIHJlZ2lzdGVyLCBBZGRyZXNzIG9mZnNldDogMHgwMCAqLw0KfSBDT01QX1R5cGVEZWY7DQoNCnR5cGVkZWYgc3RydWN0DQp7DQogIF9fSU8gdWludDMyX3QgQ1NSOyAgICAgICAgIC8qITwgQ09NUCBjb250cm9sIGFuZCBzdGF0dXMgcmVnaXN0ZXIsIHVzZWQgZm9yIGJpdHMgY29tbW9uIHRvIHNldmVyYWwgQ09NUCBpbnN0YW5jZXMsIEFkZHJlc3Mgb2Zmc2V0OiAweDAwICovDQp9IENPTVBfQ29tbW9uX1R5cGVEZWY7DQoNCi8qKiANCiAgKiBAYnJpZWYgQ1JDIGNhbGN1bGF0aW9uIHVuaXQNCiAgKi8NCg0KdHlwZWRlZiBzdHJ1Y3QNCnsNCiAgX19JTyB1aW50MzJfdCBEUjsgICAgICAgICAgIC8qITwgQ1JDIERhdGEgcmVnaXN0ZXIsICAgICAgICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MDAgKi8NCiAgX19JTyB1aW50OF90ICBJRFI7ICAgICAgICAgIC8qITwgQ1JDIEluZGVwZW5kZW50IGRhdGEgcmVnaXN0ZXIsICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MDQgKi8NCiAgdWludDhfdCAgICAgICBSRVNFUlZFRDA7ICAgIC8qITwgUmVzZXJ2ZWQsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MDUgKi8NCiAgdWludDE2X3QgICAgICBSRVNFUlZFRDE7ICAgIC8qITwgUmVzZXJ2ZWQsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MDYgKi8gDQogIF9fSU8gdWludDMyX3QgQ1I7ICAgICAgICAgICAvKiE8IENSQyBDb250cm9sIHJlZ2lzdGVyLCAgICAgICAgICAgICAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDA4ICovIA0KfSBDUkNfVHlwZURlZjsNCg0KLyoqIA0KICAqIEBicmllZiBEaWdpdGFsIHRvIEFuYWxvZyBDb252ZXJ0ZXINCiAgKi8NCg0KdHlwZWRlZiBzdHJ1Y3QNCnsNCiAgX19JTyB1aW50MzJfdCBDUjsgICAgICAgICAgIC8qITwgREFDIGNvbnRyb2wgcmVnaXN0ZXIsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDAwICovDQogIF9fSU8gdWludDMyX3QgU1dUUklHUjsgICAgICAvKiE8IERBQyBzb2Z0d2FyZSB0cmlnZ2VyIHJlZ2lzdGVyLCAgICAgICAgICAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgwNCAqLw0KICBfX0lPIHVpbnQzMl90IERIUjEyUjE7ICAgICAgLyohPCBEQUMgY2hhbm5lbDEgMTItYml0IHJpZ2h0LWFsaWduZWQgZGF0YSBob2xkaW5nIHJlZ2lzdGVyLCAgQWRkcmVzcyBvZmZzZXQ6IDB4MDggKi8NCiAgX19JTyB1aW50MzJfdCBESFIxMkwxOyAgICAgIC8qITwgREFDIGNoYW5uZWwxIDEyLWJpdCBsZWZ0IGFsaWduZWQgZGF0YSBob2xkaW5nIHJlZ2lzdGVyLCAgIEFkZHJlc3Mgb2Zmc2V0OiAweDBDICovDQogIF9fSU8gdWludDMyX3QgREhSOFIxOyAgICAgICAvKiE8IERBQyBjaGFubmVsMSA4LWJpdCByaWdodCBhbGlnbmVkIGRhdGEgaG9sZGluZyByZWdpc3RlciwgICBBZGRyZXNzIG9mZnNldDogMHgxMCAqLw0KICBfX0lPIHVpbnQzMl90IERIUjEyUjI7ICAgICAgLyohPCBEQUMgY2hhbm5lbDIgMTItYml0IHJpZ2h0IGFsaWduZWQgZGF0YSBob2xkaW5nIHJlZ2lzdGVyLCAgQWRkcmVzcyBvZmZzZXQ6IDB4MTQgKi8NCiAgX19JTyB1aW50MzJfdCBESFIxMkwyOyAgICAgIC8qITwgREFDIGNoYW5uZWwyIDEyLWJpdCBsZWZ0IGFsaWduZWQgZGF0YSBob2xkaW5nIHJlZ2lzdGVyLCAgIEFkZHJlc3Mgb2Zmc2V0OiAweDE4ICovDQogIF9fSU8gdWludDMyX3QgREhSOFIyOyAgICAgICAvKiE8IERBQyBjaGFubmVsMiA4LWJpdCByaWdodC1hbGlnbmVkIGRhdGEgaG9sZGluZyByZWdpc3RlciwgICBBZGRyZXNzIG9mZnNldDogMHgxQyAqLw0KICBfX0lPIHVpbnQzMl90IERIUjEyUkQ7ICAgICAgLyohPCBEdWFsIERBQyAxMi1iaXQgcmlnaHQtYWxpZ25lZCBkYXRhIGhvbGRpbmcgcmVnaXN0ZXIsICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MjAgKi8NCiAgX19JTyB1aW50MzJfdCBESFIxMkxEOyAgICAgIC8qITwgRFVBTCBEQUMgMTItYml0IGxlZnQgYWxpZ25lZCBkYXRhIGhvbGRpbmcgcmVnaXN0ZXIsICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDI0ICovDQogIF9fSU8gdWludDMyX3QgREhSOFJEOyAgICAgICAvKiE8IERVQUwgREFDIDgtYml0IHJpZ2h0IGFsaWduZWQgZGF0YSBob2xkaW5nIHJlZ2lzdGVyLCAgICAgICBBZGRyZXNzIG9mZnNldDogMHgyOCAqLw0KICBfX0lPIHVpbnQzMl90IERPUjE7ICAgICAgICAgLyohPCBEQUMgY2hhbm5lbDEgZGF0YSBvdXRwdXQgcmVnaXN0ZXIsICAgICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MkMgKi8NCiAgX19JTyB1aW50MzJfdCBET1IyOyAgICAgICAgIC8qITwgREFDIGNoYW5uZWwyIGRhdGEgb3V0cHV0IHJlZ2lzdGVyLCAgICAgICAgICAgICAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDMwICovDQogIF9fSU8gdWludDMyX3QgU1I7ICAgICAgICAgICAvKiE8IERBQyBzdGF0dXMgcmVnaXN0ZXIsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgzNCAqLw0KfSBEQUNfVHlwZURlZjsNCg0KLyoqIA0KICAqIEBicmllZiBEZWJ1ZyBNQ1UNCiAgKi8NCg0KdHlwZWRlZiBzdHJ1Y3QNCnsNCiAgX19JTyB1aW50MzJfdCBJRENPREU7ICAgICAgIC8qITwgTUNVIGRldmljZSBJRCBjb2RlLCAgICAgICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MDAgKi8NCiAgX19JTyB1aW50MzJfdCBDUjsgICAgICAgICAgIC8qITwgRGVidWcgTUNVIGNvbmZpZ3VyYXRpb24gcmVnaXN0ZXIsICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MDQgKi8NCiAgX19JTyB1aW50MzJfdCBBUEIxRlo7ICAgICAgIC8qITwgRGVidWcgTUNVIEFQQjEgZnJlZXplIHJlZ2lzdGVyLCAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MDggKi8NCiAgX19JTyB1aW50MzJfdCBBUEIyRlo7ICAgICAgIC8qITwgRGVidWcgTUNVIEFQQjIgZnJlZXplIHJlZ2lzdGVyLCAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MEMgKi8NCn1EQkdNQ1VfVHlwZURlZjsNCg0KLyoqIA0KICAqIEBicmllZiBETUEgQ29udHJvbGxlcg0KICAqLw0KDQp0eXBlZGVmIHN0cnVjdA0Kew0KICBfX0lPIHVpbnQzMl90IENDUjsgICAgICAgICAgLyohPCBETUEgY2hhbm5lbCB4IGNvbmZpZ3VyYXRpb24gcmVnaXN0ZXIgICAgICAgICovDQogIF9fSU8gdWludDMyX3QgQ05EVFI7ICAgICAgICAvKiE8IERNQSBjaGFubmVsIHggbnVtYmVyIG9mIGRhdGEgcmVnaXN0ZXIgICAgICAgKi8NCiAgX19JTyB1aW50MzJfdCBDUEFSOyAgICAgICAgIC8qITwgRE1BIGNoYW5uZWwgeCBwZXJpcGhlcmFsIGFkZHJlc3MgcmVnaXN0ZXIgICAqLw0KICBfX0lPIHVpbnQzMl90IENNQVI7ICAgICAgICAgLyohPCBETUEgY2hhbm5lbCB4IG1lbW9yeSBhZGRyZXNzIHJlZ2lzdGVyICAgICAgICovDQp9IERNQV9DaGFubmVsX1R5cGVEZWY7DQoNCnR5cGVkZWYgc3RydWN0DQp7DQogIF9fSU8gdWludDMyX3QgSVNSOyAgICAgICAgICAvKiE8IERNQSBpbnRlcnJ1cHQgc3RhdHVzIHJlZ2lzdGVyLCAgICAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDAwICovDQogIF9fSU8gdWludDMyX3QgSUZDUjsgICAgICAgICAvKiE8IERNQSBpbnRlcnJ1cHQgZmxhZyBjbGVhciByZWdpc3RlciwgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDA0ICovDQp9IERNQV9UeXBlRGVmOw0KDQovKiogDQogICogQGJyaWVmIEV4dGVybmFsIEludGVycnVwdC9FdmVudCBDb250cm9sbGVyDQogICovDQoNCnR5cGVkZWYgc3RydWN0DQp7DQogIF9fSU8gdWludDMyX3QgSU1SOyAgICAgICAgICAvKiE8RVhUSSBJbnRlcnJ1cHQgbWFzayByZWdpc3RlciwgICAgICAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDAwICovDQogIF9fSU8gdWludDMyX3QgRU1SOyAgICAgICAgICAvKiE8RVhUSSBFdmVudCBtYXNrIHJlZ2lzdGVyLCAgICAgICAgICAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDA0ICovDQogIF9fSU8gdWludDMyX3QgUlRTUjsgICAgICAgICAvKiE8RVhUSSBSaXNpbmcgdHJpZ2dlciBzZWxlY3Rpb24gcmVnaXN0ZXIgLCAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDA4ICovDQogIF9fSU8gdWludDMyX3QgRlRTUjsgICAgICAgICAvKiE8RVhUSSBGYWxsaW5nIHRyaWdnZXIgc2VsZWN0aW9uIHJlZ2lzdGVyLCAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDBDICovDQogIF9fSU8gdWludDMyX3QgU1dJRVI7ICAgICAgICAvKiE8RVhUSSBTb2Z0d2FyZSBpbnRlcnJ1cHQgZXZlbnQgcmVnaXN0ZXIsICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDEwICovDQogIF9fSU8gdWludDMyX3QgUFI7ICAgICAgICAgICAvKiE8RVhUSSBQZW5kaW5nIHJlZ2lzdGVyLCAgICAgICAgICAgICAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDE0ICovDQp9IEVYVElfVHlwZURlZjsNCg0KLyoqIA0KICAqIEBicmllZiBGTEFTSCBSZWdpc3RlcnMNCiAgKi8NCnR5cGVkZWYgc3RydWN0DQp7DQogIF9fSU8gdWludDMyX3QgQUNSOyAgICAgICAgICAvKiE8IEFjY2VzcyBjb250cm9sIHJlZ2lzdGVyLCAgICAgICAgICAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDAwICovDQogIF9fSU8gdWludDMyX3QgUEVDUjsgICAgICAgICAvKiE8IFByb2dyYW0vZXJhc2UgY29udHJvbCByZWdpc3RlciwgICAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDA0ICovDQogIF9fSU8gdWludDMyX3QgUERLRVlSOyAgICAgICAvKiE8IFBvd2VyIGRvd24ga2V5IHJlZ2lzdGVyLCAgICAgICAgICAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDA4ICovDQogIF9fSU8gdWludDMyX3QgUEVLRVlSOyAgICAgICAvKiE8IFByb2dyYW0vZXJhc2Uga2V5IHJlZ2lzdGVyLCAgICAgICAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDBjICovDQogIF9fSU8gdWludDMyX3QgUFJHS0VZUjsgICAgICAvKiE8IFByb2dyYW0gbWVtb3J5IGtleSByZWdpc3RlciwgICAgICAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDEwICovDQogIF9fSU8gdWludDMyX3QgT1BUS0VZUjsgICAgICAvKiE8IE9wdGlvbiBieXRlIGtleSByZWdpc3RlciwgICAgICAgICAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDE0ICovDQogIF9fSU8gdWludDMyX3QgU1I7ICAgICAgICAgICAvKiE8IFN0YXR1cyByZWdpc3RlciwgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDE4ICovDQogIF9fSU8gdWludDMyX3QgT0JSOyAgICAgICAgICAvKiE8IE9wdGlvbiBieXRlIHJlZ2lzdGVyLCAgICAgICAgICAgICAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDFjICovDQogIF9fSU8gdWludDMyX3QgV1JQUjE7ICAgICAgICAvKiE8IFdyaXRlIHByb3RlY3Rpb24gcmVnaXN0ZXIgMSwgICAgICAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDIwICovDQogIHVpbnQzMl90ICAgUkVTRVJWRURbMjNdOyAgICAvKiE8IFJlc2VydmVkLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDI0ICovDQogIF9fSU8gdWludDMyX3QgV1JQUjI7ICAgICAgICAvKiE8IFdyaXRlIHByb3RlY3Rpb24gcmVnaXN0ZXIgMiwgICAgICAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDgwICovDQogIF9fSU8gdWludDMyX3QgV1JQUjM7ICAgICAgICAvKiE8IFdyaXRlIHByb3RlY3Rpb24gcmVnaXN0ZXIgMywgICAgICAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDg0ICovDQogIF9fSU8gdWludDMyX3QgV1JQUjQ7ICAgICAgICAvKiE8IFdyaXRlIHByb3RlY3Rpb24gcmVnaXN0ZXIgNCwgICAgICAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDg4ICovDQp9IEZMQVNIX1R5cGVEZWY7DQoNCi8qKiANCiAgKiBAYnJpZWYgT3B0aW9uIEJ5dGVzIFJlZ2lzdGVycw0KICAqLw0KdHlwZWRlZiBzdHJ1Y3QNCnsNCiAgX19JTyB1aW50MzJfdCBSRFA7ICAgICAgICAgICAgICAvKiE8IFJlYWQgcHJvdGVjdGlvbiByZWdpc3RlciwgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgwMCAqLw0KICBfX0lPIHVpbnQzMl90IFVTRVI7ICAgICAgICAgICAgIC8qITwgdXNlciByZWdpc3RlciwgICAgICAgICAgICAgICAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDA0ICovDQogIF9fSU8gdWludDMyX3QgV1JQMDE7ICAgICAgICAgICAgLyohPCB3cml0ZSBwcm90ZWN0aW9uIHJlZ2lzdGVyIDAgMSwgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MDggKi8NCiAgX19JTyB1aW50MzJfdCBXUlAyMzsgICAgICAgICAgICAvKiE8IHdyaXRlIHByb3RlY3Rpb24gcmVnaXN0ZXIgMiAzLCAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgwQyAqLw0KICBfX0lPIHVpbnQzMl90IFdSUDQ1OyAgICAgICAgICAgIC8qITwgd3JpdGUgcHJvdGVjdGlvbiByZWdpc3RlciA0IDUsICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDEwICovDQogIF9fSU8gdWludDMyX3QgV1JQNjc7ICAgICAgICAgICAgLyohPCB3cml0ZSBwcm90ZWN0aW9uIHJlZ2lzdGVyIDYgNywgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MTQgKi8NCiAgX19JTyB1aW50MzJfdCBXUlA4OTsgICAgICAgICAgICAvKiE8IHdyaXRlIHByb3RlY3Rpb24gcmVnaXN0ZXIgOCA5LCAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgxOCAqLw0KICBfX0lPIHVpbnQzMl90IFdSUDEwMTE7ICAgICAgICAgIC8qITwgd3JpdGUgcHJvdGVjdGlvbiByZWdpc3RlciAxMCAxMSwgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDFDICovDQogIHVpbnQzMl90ICAgUkVTRVJWRURbMjRdOyAgICAgICAgLyohPCBSZXNlcnZlZCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAweDIwIC0+IDB4N0MgICAgKi8NCiAgX19JTyB1aW50MzJfdCBXUlAxMjEzOyAgICAgICAgICAvKiE8IHdyaXRlIHByb3RlY3Rpb24gcmVnaXN0ZXIgMTIgMTMsICAgICAgICBBZGRyZXNzIG9mZnNldDogMHg4MCAqLw0KICBfX0lPIHVpbnQzMl90IFdSUDE0MTU7ICAgICAgICAgIC8qITwgd3JpdGUgcHJvdGVjdGlvbiByZWdpc3RlciAxNCAxNSwgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDg0ICovDQp9IE9CX1R5cGVEZWY7DQoNCi8qKiANCiAgKiBAYnJpZWYgT3BlcmF0aW9uYWwgQW1wbGlmaWVyIChPUEFNUCkNCiAgKi8NCnR5cGVkZWYgc3RydWN0DQp7DQogIF9fSU8gdWludDMyX3QgQ1NSOyAgICAgICAgICAvKiE8IE9QQU1QIGNvbnRyb2wgYW5kIHN0YXR1cyByZWdpc3RlciwgICAgICAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDAwICovDQogIF9fSU8gdWludDMyX3QgT1RSOyAgICAgICAgICAvKiE8IE9QQU1QIG9mZnNldCB0cmltbWluZyByZWdpc3RlciBmb3Igbm9ybWFsIG1vZGUsICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDA0ICovIA0KICBfX0lPIHVpbnQzMl90IExQT1RSOyAgICAgICAgLyohPCBPUEFNUCBvZmZzZXQgdHJpbW1pbmcgcmVnaXN0ZXIgZm9yIGxvdyBwb3dlciBtb2RlLCBBZGRyZXNzIG9mZnNldDogMHgwOCAqLw0KfSBPUEFNUF9UeXBlRGVmOw0KDQp0eXBlZGVmIHN0cnVjdA0Kew0KICBfX0lPIHVpbnQzMl90IENTUjsgICAgICAgICAgLyohPCBPUEFNUCBjb250cm9sIGFuZCBzdGF0dXMgcmVnaXN0ZXIsIHVzZWQgZm9yIGJpdHMgY29tbW9uIHRvIHNldmVyYWwgT1BBTVAgaW5zdGFuY2VzLCAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MDAgKi8NCiAgX19JTyB1aW50MzJfdCBPVFI7ICAgICAgICAgIC8qITwgT1BBTVAgb2Zmc2V0IHRyaW1taW5nIHJlZ2lzdGVyIGZvciBub3JtYWwgbW9kZSwgdXNlZCBmb3IgYml0cyBjb21tb24gdG8gc2V2ZXJhbCBPUEFNUCBpbnN0YW5jZXMsIEFkZHJlc3Mgb2Zmc2V0OiAweDA0ICovIA0KfSBPUEFNUF9Db21tb25fVHlwZURlZjsNCg0KLyoqIA0KICAqIEBicmllZiBHZW5lcmFsIFB1cnBvc2UgSU8NCiAgKi8NCg0KdHlwZWRlZiBzdHJ1Y3QNCnsNCiAgX19JTyB1aW50MzJfdCBNT0RFUjsgICAgICAgIC8qITwgR1BJTyBwb3J0IG1vZGUgcmVnaXN0ZXIsICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MDAgICAgICAqLw0KICBfX0lPIHVpbnQzMl90IE9UWVBFUjsgICAgICAgLyohPCBHUElPIHBvcnQgb3V0cHV0IHR5cGUgcmVnaXN0ZXIsICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgwNCAgICAgICovDQogIF9fSU8gdWludDMyX3QgT1NQRUVEUjsgICAgICAvKiE8IEdQSU8gcG9ydCBvdXRwdXQgc3BlZWQgcmVnaXN0ZXIsICAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDA4ICAgICAgKi8NCiAgX19JTyB1aW50MzJfdCBQVVBEUjsgICAgICAgIC8qITwgR1BJTyBwb3J0IHB1bGwtdXAvcHVsbC1kb3duIHJlZ2lzdGVyLCAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MEMgICAgICAqLw0KICBfX0lPIHVpbnQzMl90IElEUjsgICAgICAgICAgLyohPCBHUElPIHBvcnQgaW5wdXQgZGF0YSByZWdpc3RlciwgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgxMCAgICAgICovDQogIF9fSU8gdWludDMyX3QgT0RSOyAgICAgICAgICAvKiE8IEdQSU8gcG9ydCBvdXRwdXQgZGF0YSByZWdpc3RlciwgICAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDE0ICAgICAgKi8NCiAgX19JTyB1aW50MzJfdCBCU1JSOyAgICAgICAgIC8qITwgR1BJTyBwb3J0IGJpdCBzZXQvcmVzZXQgcmVnaXN0ZXJCU1JSLCAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MTggICAgICAqLw0KICBfX0lPIHVpbnQzMl90IExDS1I7ICAgICAgICAgLyohPCBHUElPIHBvcnQgY29uZmlndXJhdGlvbiBsb2NrIHJlZ2lzdGVyLCAgICAgICBBZGRyZXNzIG9mZnNldDogMHgxQyAgICAgICovDQogIF9fSU8gdWludDMyX3QgQUZSWzJdOyAgICAgICAvKiE8IEdQSU8gYWx0ZXJuYXRlIGZ1bmN0aW9uIHJlZ2lzdGVyLCAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDIwLTB4MjQgKi8NCiAgX19JTyB1aW50MzJfdCBCUlI7ICAgICAgICAgIC8qITwgR1BJTyBiaXQgcmVzZXQgcmVnaXN0ZXIsICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MjggICAgICAqLw0KfSBHUElPX1R5cGVEZWY7DQoNCi8qKiANCiAgKiBAYnJpZWYgU3lzVGVtIENvbmZpZ3VyYXRpb24NCiAgKi8NCg0KdHlwZWRlZiBzdHJ1Y3QNCnsNCiAgX19JTyB1aW50MzJfdCBNRU1STVA7ICAgICAgIC8qITwgU1lTQ0ZHIG1lbW9yeSByZW1hcCByZWdpc3RlciwgICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MDAgICAgICAqLw0KICBfX0lPIHVpbnQzMl90IFBNQzsgICAgICAgICAgLyohPCBTWVNDRkcgcGVyaXBoZXJhbCBtb2RlIGNvbmZpZ3VyYXRpb24gcmVnaXN0ZXIsICAgICBBZGRyZXNzIG9mZnNldDogMHgwNCAgICAgICovDQogIF9fSU8gdWludDMyX3QgRVhUSUNSWzRdOyAgICAvKiE8IFNZU0NGRyBleHRlcm5hbCBpbnRlcnJ1cHQgY29uZmlndXJhdGlvbiByZWdpc3RlcnMsIEFkZHJlc3Mgb2Zmc2V0OiAweDA4LTB4MTQgKi8NCn0gU1lTQ0ZHX1R5cGVEZWY7DQoNCi8qKiANCiAgKiBAYnJpZWYgSW50ZXItaW50ZWdyYXRlZCBDaXJjdWl0IEludGVyZmFjZQ0KICAqLw0KDQp0eXBlZGVmIHN0cnVjdA0Kew0KICBfX0lPIHVpbnQzMl90IENSMTsgICAgICAgICAgLyohPCBJMkMgQ29udHJvbCByZWdpc3RlciAxLCAgICAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgwMCAqLw0KICBfX0lPIHVpbnQzMl90IENSMjsgICAgICAgICAgLyohPCBJMkMgQ29udHJvbCByZWdpc3RlciAyLCAgICAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgwNCAqLw0KICBfX0lPIHVpbnQzMl90IE9BUjE7ICAgICAgICAgLyohPCBJMkMgT3duIGFkZHJlc3MgcmVnaXN0ZXIgMSwgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgwOCAqLw0KICBfX0lPIHVpbnQzMl90IE9BUjI7ICAgICAgICAgLyohPCBJMkMgT3duIGFkZHJlc3MgcmVnaXN0ZXIgMiwgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgwQyAqLw0KICBfX0lPIHVpbnQzMl90IERSOyAgICAgICAgICAgLyohPCBJMkMgRGF0YSByZWdpc3RlciwgICAgICAgICAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgxMCAqLw0KICBfX0lPIHVpbnQzMl90IFNSMTsgICAgICAgICAgLyohPCBJMkMgU3RhdHVzIHJlZ2lzdGVyIDEsICAgICAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgxNCAqLw0KICBfX0lPIHVpbnQzMl90IFNSMjsgICAgICAgICAgLyohPCBJMkMgU3RhdHVzIHJlZ2lzdGVyIDIsICAgICAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgxOCAqLw0KICBfX0lPIHVpbnQzMl90IENDUjsgICAgICAgICAgLyohPCBJMkMgQ2xvY2sgY29udHJvbCByZWdpc3RlciwgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgxQyAqLw0KICBfX0lPIHVpbnQzMl90IFRSSVNFOyAgICAgICAgLyohPCBJMkMgVFJJU0UgcmVnaXN0ZXIsICAgICAgICAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgyMCAqLw0KfSBJMkNfVHlwZURlZjsNCg0KLyoqIA0KICAqIEBicmllZiBJbmRlcGVuZGVudCBXQVRDSERPRw0KICAqLw0KDQp0eXBlZGVmIHN0cnVjdA0Kew0KICBfX0lPIHVpbnQzMl90IEtSOyAgICAgICAgICAgLyohPCBLZXkgcmVnaXN0ZXIsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgwMCAqLw0KICBfX0lPIHVpbnQzMl90IFBSOyAgICAgICAgICAgLyohPCBQcmVzY2FsZXIgcmVnaXN0ZXIsICAgICAgICAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgwNCAqLw0KICBfX0lPIHVpbnQzMl90IFJMUjsgICAgICAgICAgLyohPCBSZWxvYWQgcmVnaXN0ZXIsICAgICAgICAgICAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgwOCAqLw0KICBfX0lPIHVpbnQzMl90IFNSOyAgICAgICAgICAgLyohPCBTdGF0dXMgcmVnaXN0ZXIsICAgICAgICAgICAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgwQyAqLw0KfSBJV0RHX1R5cGVEZWY7DQoNCi8qKiANCiAgKiBAYnJpZWYgTENEDQogICovDQoNCnR5cGVkZWYgc3RydWN0DQp7DQogIF9fSU8gdWludDMyX3QgQ1I7ICAgICAgICAvKiE8IExDRCBjb250cm9sIHJlZ2lzdGVyLCAgICAgICAgICAgICAgICAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDAwICovDQogIF9fSU8gdWludDMyX3QgRkNSOyAgICAgICAvKiE8IExDRCBmcmFtZSBjb250cm9sIHJlZ2lzdGVyLCAgICAgICAgICAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDA0ICovDQogIF9fSU8gdWludDMyX3QgU1I7ICAgICAgICAvKiE8IExDRCBzdGF0dXMgcmVnaXN0ZXIsICAgICAgICAgICAgICAgICAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDA4ICovDQogIF9fSU8gdWludDMyX3QgQ0xSOyAgICAgICAvKiE8IExDRCBjbGVhciByZWdpc3RlciwgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDBDICovDQogIHVpbnQzMl90IFJFU0VSVkVEOyAgICAgICAvKiE8IFJlc2VydmVkLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDEwICovDQogIF9fSU8gdWludDMyX3QgUkFNWzE2XTsgICAvKiE8IExDRCBkaXNwbGF5IG1lbW9yeSwgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDE0LTB4NTAgKi8NCn0gTENEX1R5cGVEZWY7DQoNCi8qKiANCiAgKiBAYnJpZWYgUG93ZXIgQ29udHJvbA0KICAqLw0KDQp0eXBlZGVmIHN0cnVjdA0Kew0KICBfX0lPIHVpbnQzMl90IENSOyAgIC8qITwgUFdSIHBvd2VyIGNvbnRyb2wgcmVnaXN0ZXIsICAgICAgICAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgwMCAqLw0KICBfX0lPIHVpbnQzMl90IENTUjsgIC8qITwgUFdSIHBvd2VyIGNvbnRyb2wvc3RhdHVzIHJlZ2lzdGVyLCAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgwNCAqLw0KfSBQV1JfVHlwZURlZjsNCg0KLyoqIA0KICAqIEBicmllZiBSZXNldCBhbmQgQ2xvY2sgQ29udHJvbA0KICAqLw0KDQp0eXBlZGVmIHN0cnVjdA0Kew0KICBfX0lPIHVpbnQzMl90IENSOyAgICAgICAgICAgIC8qITwgUkNDIGNsb2NrIGNvbnRyb2wgcmVnaXN0ZXIsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgwMCAqLw0KICBfX0lPIHVpbnQzMl90IElDU0NSOyAgICAgICAgIC8qITwgUkNDIEludGVybmFsIGNsb2NrIHNvdXJjZXMgY2FsaWJyYXRpb24gcmVnaXN0ZXIsICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgwNCAqLw0KICBfX0lPIHVpbnQzMl90IENGR1I7ICAgICAgICAgIC8qITwgUkNDIENsb2NrIGNvbmZpZ3VyYXRpb24gcmVnaXN0ZXIsICAgICAgICAgICAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgwOCAqLw0KICBfX0lPIHVpbnQzMl90IENJUjsgICAgICAgICAgIC8qITwgUkNDIENsb2NrIGludGVycnVwdCByZWdpc3RlciwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgwQyAqLw0KICBfX0lPIHVpbnQzMl90IEFIQlJTVFI7ICAgICAgIC8qITwgUkNDIEFIQiBwZXJpcGhlcmFsIHJlc2V0IHJlZ2lzdGVyLCAgICAgICAgICAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgxMCAqLw0KICBfX0lPIHVpbnQzMl90IEFQQjJSU1RSOyAgICAgIC8qITwgUkNDIEFQQjIgcGVyaXBoZXJhbCByZXNldCByZWdpc3RlciwgICAgICAgICAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgxNCAqLw0KICBfX0lPIHVpbnQzMl90IEFQQjFSU1RSOyAgICAgIC8qITwgUkNDIEFQQjEgcGVyaXBoZXJhbCByZXNldCByZWdpc3RlciwgICAgICAgICAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgxOCAqLw0KICBfX0lPIHVpbnQzMl90IEFIQkVOUjsgICAgICAgIC8qITwgUkNDIEFIQiBwZXJpcGhlcmFsIGNsb2NrIGVuYWJsZSByZWdpc3RlciwgICAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgxQyAqLw0KICBfX0lPIHVpbnQzMl90IEFQQjJFTlI7ICAgICAgIC8qITwgUkNDIEFQQjIgcGVyaXBoZXJhbCBjbG9jayBlbmFibGUgcmVnaXN0ZXIsICAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgyMCAqLw0KICBfX0lPIHVpbnQzMl90IEFQQjFFTlI7ICAgICAgIC8qITwgUkNDIEFQQjEgcGVyaXBoZXJhbCBjbG9jayBlbmFibGUgcmVnaXN0ZXIsICAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgyNCAqLw0KICBfX0lPIHVpbnQzMl90IEFIQkxQRU5SOyAgICAgIC8qITwgUkNDIEFIQiBwZXJpcGhlcmFsIGNsb2NrIGVuYWJsZSBpbiBsb3cgcG93ZXIgbW9kZSByZWdpc3RlciwgICBBZGRyZXNzIG9mZnNldDogMHgyOCAqLw0KICBfX0lPIHVpbnQzMl90IEFQQjJMUEVOUjsgICAgIC8qITwgUkNDIEFQQjIgcGVyaXBoZXJhbCBjbG9jayBlbmFibGUgaW4gbG93IHBvd2VyIG1vZGUgcmVnaXN0ZXIsICBBZGRyZXNzIG9mZnNldDogMHgyQyAqLw0KICBfX0lPIHVpbnQzMl90IEFQQjFMUEVOUjsgICAgIC8qITwgUkNDIEFQQjEgcGVyaXBoZXJhbCBjbG9jayBlbmFibGUgaW4gbG93IHBvd2VyIG1vZGUgcmVnaXN0ZXIsICBBZGRyZXNzIG9mZnNldDogMHgzMCAqLw0KICBfX0lPIHVpbnQzMl90IENTUjsgICAgICAgICAgIC8qITwgUkNDIENvbnRyb2wvc3RhdHVzIHJlZ2lzdGVyLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgzNCAqLw0KfSBSQ0NfVHlwZURlZjsNCg0KLyoqIA0KICAqIEBicmllZiBSb3V0aW5nIEludGVyZmFjZSANCiAgKi8NCg0KdHlwZWRlZiBzdHJ1Y3QNCnsNCiAgX19JTyB1aW50MzJfdCBJQ1I7ICAgICAgICAvKiE8IFJJIGlucHV0IGNhcHR1cmUgcmVnaXN0ZXIsICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MDAgKi8NCiAgX19JTyB1aW50MzJfdCBBU0NSMTsgICAgICAvKiE8IFJJIGFuYWxvZyBzd2l0Y2hlcyBjb250cm9sIHJlZ2lzdGVyLCAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MDQgKi8NCiAgX19JTyB1aW50MzJfdCBBU0NSMjsgICAgICAvKiE8IFJJIGFuYWxvZyBzd2l0Y2ggY29udHJvbCByZWdpc3RlciAyLCAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MDggKi8NCiAgX19JTyB1aW50MzJfdCBIWVNDUjE7ICAgICAvKiE8IFJJIGh5c3RlcmVzaXMgY29udHJvbCByZWdpc3RlciwgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MEMgKi8NCiAgX19JTyB1aW50MzJfdCBIWVNDUjI7ICAgICAvKiE8IFJJIEh5c3RlcmVzaXMgY29udHJvbCByZWdpc3RlciwgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MTAgKi8NCiAgX19JTyB1aW50MzJfdCBIWVNDUjM7ICAgICAvKiE8IFJJIEh5c3RlcmVzaXMgY29udHJvbCByZWdpc3RlciwgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MTQgKi8NCiAgX19JTyB1aW50MzJfdCBIWVNDUjQ7ICAgICAvKiE8IFJJIEh5c3RlcmVzaXMgY29udHJvbCByZWdpc3RlciwgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MTggKi8NCiAgX19JTyB1aW50MzJfdCBBU01SMTsgICAgICAvKiE8IFJJIEFuYWxvZyBzd2l0Y2ggbW9kZSByZWdpc3RlciAxLCAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MUMgKi8NCiAgX19JTyB1aW50MzJfdCBDTVIxOyAgICAgICAvKiE8IFJJIENoYW5uZWwgbWFzayByZWdpc3RlciAxLCAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MjAgKi8NCiAgX19JTyB1aW50MzJfdCBDSUNSMTsgICAgICAvKiE8IFJJIENoYW5uZWwgSWRlbiBmb3IgY2FwdHVyZSByZWdpc3RlciAxLCAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MjQgKi8NCiAgX19JTyB1aW50MzJfdCBBU01SMjsgICAgICAvKiE8IFJJIEFuYWxvZyBzd2l0Y2ggbW9kZSByZWdpc3RlciAyLCAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MjggKi8NCiAgX19JTyB1aW50MzJfdCBDTVIyOyAgICAgICAvKiE8IFJJIENoYW5uZWwgbWFzayByZWdpc3RlciAyLCAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MkMgKi8NCiAgX19JTyB1aW50MzJfdCBDSUNSMjsgICAgICAvKiE8IFJJIENoYW5uZWwgSWRlbiBmb3IgY2FwdHVyZSByZWdpc3RlciAyLCAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MzAgKi8NCiAgX19JTyB1aW50MzJfdCBBU01SMzsgICAgICAvKiE8IFJJIEFuYWxvZyBzd2l0Y2ggbW9kZSByZWdpc3RlciAzLCAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MzQgKi8NCiAgX19JTyB1aW50MzJfdCBDTVIzOyAgICAgICAvKiE8IFJJIENoYW5uZWwgbWFzayByZWdpc3RlciAzLCAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MzggKi8NCiAgX19JTyB1aW50MzJfdCBDSUNSMzsgICAgICAvKiE8IFJJIENoYW5uZWwgSWRlbiBmb3IgY2FwdHVyZSByZWdpc3RlciAzLCAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4M0MgKi8NCiAgX19JTyB1aW50MzJfdCBBU01SNDsgICAgICAvKiE8IFJJIEFuYWxvZyBzd2l0Y2ggbW9kZSByZWdpc3RlciA0LCAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4NDAgKi8NCiAgX19JTyB1aW50MzJfdCBDTVI0OyAgICAgICAvKiE8IFJJIENoYW5uZWwgbWFzayByZWdpc3RlciA0LCAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4NDQgKi8NCiAgX19JTyB1aW50MzJfdCBDSUNSNDsgICAgICAvKiE8IFJJIENoYW5uZWwgSWRlbiBmb3IgY2FwdHVyZSByZWdpc3RlciA0LCAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4NDggKi8NCiAgX19JTyB1aW50MzJfdCBBU01SNTsgICAgICAvKiE8IFJJIEFuYWxvZyBzd2l0Y2ggbW9kZSByZWdpc3RlciA1LCAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4NEMgKi8NCiAgX19JTyB1aW50MzJfdCBDTVI1OyAgICAgICAvKiE8IFJJIENoYW5uZWwgbWFzayByZWdpc3RlciA1LCAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4NTAgKi8NCiAgX19JTyB1aW50MzJfdCBDSUNSNTsgICAgICAvKiE8IFJJIENoYW5uZWwgSWRlbiBmb3IgY2FwdHVyZSByZWdpc3RlciA1LCAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4NTQgKi8NCn0gUklfVHlwZURlZjsNCg0KLyoqIA0KICAqIEBicmllZiBSZWFsLVRpbWUgQ2xvY2sNCiAgKi8NCnR5cGVkZWYgc3RydWN0DQp7DQogIF9fSU8gdWludDMyX3QgVFI7ICAgICAgICAgLyohPCBSVEMgdGltZSByZWdpc3RlciwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDAwICovDQogIF9fSU8gdWludDMyX3QgRFI7ICAgICAgICAgLyohPCBSVEMgZGF0ZSByZWdpc3RlciwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDA0ICovDQogIF9fSU8gdWludDMyX3QgQ1I7ICAgICAgICAgLyohPCBSVEMgY29udHJvbCByZWdpc3RlciwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDA4ICovICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiAgX19JTyB1aW50MzJfdCBJU1I7ICAgICAgICAvKiE8IFJUQyBpbml0aWFsaXphdGlvbiBhbmQgc3RhdHVzIHJlZ2lzdGVyLCAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MEMgKi8NCiAgX19JTyB1aW50MzJfdCBQUkVSOyAgICAgICAvKiE8IFJUQyBwcmVzY2FsZXIgcmVnaXN0ZXIsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MTAgKi8NCiAgX19JTyB1aW50MzJfdCBXVVRSOyAgICAgICAvKiE8IFJUQyB3YWtldXAgdGltZXIgcmVnaXN0ZXIsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MTQgKi8NCiAgX19JTyB1aW50MzJfdCBDQUxJQlI7ICAgICAvKiE8IFJUQyBjYWxpYnJhdGlvbiByZWdpc3RlciwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MTggKi8NCiAgX19JTyB1aW50MzJfdCBBTFJNQVI7ICAgICAvKiE8IFJUQyBhbGFybSBBIHJlZ2lzdGVyLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MUMgKi8NCiAgX19JTyB1aW50MzJfdCBBTFJNQlI7ICAgICAvKiE8IFJUQyBhbGFybSBCIHJlZ2lzdGVyLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MjAgKi8NCiAgX19JTyB1aW50MzJfdCBXUFI7ICAgICAgICAvKiE8IFJUQyB3cml0ZSBwcm90ZWN0aW9uIHJlZ2lzdGVyLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MjQgKi8NCiAgX19JTyB1aW50MzJfdCBTU1I7ICAgICAgICAvKiE8IFJUQyBzdWIgc2Vjb25kIHJlZ2lzdGVyLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MjggKi8NCiAgX19JTyB1aW50MzJfdCBTSElGVFI7ICAgICAvKiE8IFJUQyBzaGlmdCBjb250cm9sIHJlZ2lzdGVyLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MkMgKi8NCiAgX19JTyB1aW50MzJfdCBUU1RSOyAgICAgICAvKiE8IFJUQyB0aW1lIHN0YW1wIHRpbWUgcmVnaXN0ZXIsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MzAgKi8NCiAgX19JTyB1aW50MzJfdCBUU0RSOyAgICAgICAvKiE8IFJUQyB0aW1lIHN0YW1wIGRhdGUgcmVnaXN0ZXIsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MzQgKi8NCiAgX19JTyB1aW50MzJfdCBUU1NTUjsgICAgICAvKiE8IFJUQyB0aW1lLXN0YW1wIHN1YiBzZWNvbmQgcmVnaXN0ZXIsICAgICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MzggKi8NCiAgX19JTyB1aW50MzJfdCBDQUxSOyAgICAgICAvKiE8IFJSVEMgY2FsaWJyYXRpb24gcmVnaXN0ZXIsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4M0MgKi8NCiAgX19JTyB1aW50MzJfdCBUQUZDUjsgICAgICAvKiE8IFJUQyB0YW1wZXIgYW5kIGFsdGVybmF0ZSBmdW5jdGlvbiBjb25maWd1cmF0aW9uIHJlZ2lzdGVyLCAgQWRkcmVzcyBvZmZzZXQ6IDB4NDAgKi8NCiAgX19JTyB1aW50MzJfdCBBTFJNQVNTUjsgICAvKiE8IFJUQyBhbGFybSBBIHN1YiBzZWNvbmQgcmVnaXN0ZXIsICAgICAgICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4NDQgKi8NCiAgX19JTyB1aW50MzJfdCBBTFJNQlNTUjsgICAvKiE8IFJUQyBhbGFybSBCIHN1YiBzZWNvbmQgcmVnaXN0ZXIsICAgICAgICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4NDggKi8NCiAgdWludDMyX3QgUkVTRVJWRUQ3OyAgICAgICAvKiE8IFJlc2VydmVkLCAweDRDICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8NCiAgX19JTyB1aW50MzJfdCBCS1AwUjsgICAgICAvKiE8IFJUQyBiYWNrdXAgcmVnaXN0ZXIgMCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4NTAgKi8NCiAgX19JTyB1aW50MzJfdCBCS1AxUjsgICAgICAvKiE8IFJUQyBiYWNrdXAgcmVnaXN0ZXIgMSwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4NTQgKi8NCiAgX19JTyB1aW50MzJfdCBCS1AyUjsgICAgICAvKiE8IFJUQyBiYWNrdXAgcmVnaXN0ZXIgMiwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4NTggKi8NCiAgX19JTyB1aW50MzJfdCBCS1AzUjsgICAgICAvKiE8IFJUQyBiYWNrdXAgcmVnaXN0ZXIgMywgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4NUMgKi8NCiAgX19JTyB1aW50MzJfdCBCS1A0UjsgICAgICAvKiE8IFJUQyBiYWNrdXAgcmVnaXN0ZXIgNCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4NjAgKi8NCiAgX19JTyB1aW50MzJfdCBCS1A1UjsgICAgICAvKiE8IFJUQyBiYWNrdXAgcmVnaXN0ZXIgNSwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4NjQgKi8NCiAgX19JTyB1aW50MzJfdCBCS1A2UjsgICAgICAvKiE8IFJUQyBiYWNrdXAgcmVnaXN0ZXIgNiwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4NjggKi8NCiAgX19JTyB1aW50MzJfdCBCS1A3UjsgICAgICAvKiE8IFJUQyBiYWNrdXAgcmVnaXN0ZXIgNywgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4NkMgKi8NCiAgX19JTyB1aW50MzJfdCBCS1A4UjsgICAgICAvKiE8IFJUQyBiYWNrdXAgcmVnaXN0ZXIgOCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4NzAgKi8NCiAgX19JTyB1aW50MzJfdCBCS1A5UjsgICAgICAvKiE8IFJUQyBiYWNrdXAgcmVnaXN0ZXIgOSwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4NzQgKi8NCiAgX19JTyB1aW50MzJfdCBCS1AxMFI7ICAgICAvKiE8IFJUQyBiYWNrdXAgcmVnaXN0ZXIgMTAsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4NzggKi8NCiAgX19JTyB1aW50MzJfdCBCS1AxMVI7ICAgICAvKiE8IFJUQyBiYWNrdXAgcmVnaXN0ZXIgMTEsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4N0MgKi8NCiAgX19JTyB1aW50MzJfdCBCS1AxMlI7ICAgICAvKiE8IFJUQyBiYWNrdXAgcmVnaXN0ZXIgMTIsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4ODAgKi8NCiAgX19JTyB1aW50MzJfdCBCS1AxM1I7ICAgICAvKiE8IFJUQyBiYWNrdXAgcmVnaXN0ZXIgMTMsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4ODQgKi8NCiAgX19JTyB1aW50MzJfdCBCS1AxNFI7ICAgICAvKiE8IFJUQyBiYWNrdXAgcmVnaXN0ZXIgMTQsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4ODggKi8NCiAgX19JTyB1aW50MzJfdCBCS1AxNVI7ICAgICAvKiE8IFJUQyBiYWNrdXAgcmVnaXN0ZXIgMTUsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4OEMgKi8NCiAgX19JTyB1aW50MzJfdCBCS1AxNlI7ICAgICAvKiE8IFJUQyBiYWNrdXAgcmVnaXN0ZXIgMTYsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4OTAgKi8NCiAgX19JTyB1aW50MzJfdCBCS1AxN1I7ICAgICAvKiE8IFJUQyBiYWNrdXAgcmVnaXN0ZXIgMTcsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4OTQgKi8NCiAgX19JTyB1aW50MzJfdCBCS1AxOFI7ICAgICAvKiE8IFJUQyBiYWNrdXAgcmVnaXN0ZXIgMTgsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4OTggKi8NCiAgX19JTyB1aW50MzJfdCBCS1AxOVI7ICAgICAvKiE8IFJUQyBiYWNrdXAgcmVnaXN0ZXIgMTksICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4OUMgKi8NCiAgX19JTyB1aW50MzJfdCBCS1AyMFI7ICAgICAvKiE8IFJUQyBiYWNrdXAgcmVnaXN0ZXIgMjAsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4QTAgKi8NCiAgX19JTyB1aW50MzJfdCBCS1AyMVI7ICAgICAvKiE8IFJUQyBiYWNrdXAgcmVnaXN0ZXIgMjEsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4QTQgKi8NCiAgX19JTyB1aW50MzJfdCBCS1AyMlI7ICAgICAvKiE8IFJUQyBiYWNrdXAgcmVnaXN0ZXIgMjIsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4QTggKi8NCiAgX19JTyB1aW50MzJfdCBCS1AyM1I7ICAgICAvKiE8IFJUQyBiYWNrdXAgcmVnaXN0ZXIgMjMsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4QUMgKi8NCiAgX19JTyB1aW50MzJfdCBCS1AyNFI7ICAgICAvKiE8IFJUQyBiYWNrdXAgcmVnaXN0ZXIgMjQsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4QjAgKi8NCiAgX19JTyB1aW50MzJfdCBCS1AyNVI7ICAgICAvKiE8IFJUQyBiYWNrdXAgcmVnaXN0ZXIgMjUsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4QjQgKi8NCiAgX19JTyB1aW50MzJfdCBCS1AyNlI7ICAgICAvKiE8IFJUQyBiYWNrdXAgcmVnaXN0ZXIgMjYsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4QjggKi8NCiAgX19JTyB1aW50MzJfdCBCS1AyN1I7ICAgICAvKiE8IFJUQyBiYWNrdXAgcmVnaXN0ZXIgMjcsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4QkMgKi8NCiAgX19JTyB1aW50MzJfdCBCS1AyOFI7ICAgICAvKiE8IFJUQyBiYWNrdXAgcmVnaXN0ZXIgMjgsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4QzAgKi8NCiAgX19JTyB1aW50MzJfdCBCS1AyOVI7ICAgICAvKiE8IFJUQyBiYWNrdXAgcmVnaXN0ZXIgMjksICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4QzQgKi8NCiAgX19JTyB1aW50MzJfdCBCS1AzMFI7ICAgICAvKiE8IFJUQyBiYWNrdXAgcmVnaXN0ZXIgMzAsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4QzggKi8NCiAgX19JTyB1aW50MzJfdCBCS1AzMVI7ICAgICAvKiE8IFJUQyBiYWNrdXAgcmVnaXN0ZXIgMzEsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4Q0MgKi8NCn0gUlRDX1R5cGVEZWY7DQoNCi8qKiANCiAgKiBAYnJpZWYgU2VyaWFsIFBlcmlwaGVyYWwgSW50ZXJmYWNlDQogICovDQoNCnR5cGVkZWYgc3RydWN0DQp7DQogIF9fSU8gdWludDMyX3QgQ1IxOyAgICAgICAgLyohPCBTUEkgQ29udHJvbCByZWdpc3RlciAxIChub3QgdXNlZCBpbiBJMlMgbW9kZSksICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MDAgKi8NCiAgX19JTyB1aW50MzJfdCBDUjI7ICAgICAgICAvKiE8IFNQSSBDb250cm9sIHJlZ2lzdGVyIDIsICAgICAgICAgICAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgwNCAqLw0KICBfX0lPIHVpbnQzMl90IFNSOyAgICAgICAgIC8qITwgU1BJIFN0YXR1cyByZWdpc3RlciwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDA4ICovDQogIF9fSU8gdWludDMyX3QgRFI7ICAgICAgICAgLyohPCBTUEkgZGF0YSByZWdpc3RlciwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MEMgKi8NCiAgX19JTyB1aW50MzJfdCBDUkNQUjsgICAgICAvKiE8IFNQSSBDUkMgcG9seW5vbWlhbCByZWdpc3RlciAobm90IHVzZWQgaW4gSTJTIG1vZGUpLCBBZGRyZXNzIG9mZnNldDogMHgxMCAqLw0KICBfX0lPIHVpbnQzMl90IFJYQ1JDUjsgICAgIC8qITwgU1BJIFJ4IENSQyByZWdpc3RlciAobm90IHVzZWQgaW4gSTJTIG1vZGUpLCAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDE0ICovDQogIF9fSU8gdWludDMyX3QgVFhDUkNSOyAgICAgLyohPCBTUEkgVHggQ1JDIHJlZ2lzdGVyIChub3QgdXNlZCBpbiBJMlMgbW9kZSksICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MTggKi8NCiAgX19JTyB1aW50MzJfdCBJMlNDRkdSOyAgICAvKiE8IFNQSV9JMlMgY29uZmlndXJhdGlvbiByZWdpc3RlciwgICAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgxQyAqLw0KICBfX0lPIHVpbnQzMl90IEkyU1BSOyAgICAgIC8qITwgU1BJX0kyUyBwcmVzY2FsZXIgcmVnaXN0ZXIsICAgICAgICAgICAgICAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDIwICovDQp9IFNQSV9UeXBlRGVmOw0KDQovKiogDQogICogQGJyaWVmIFRJTQ0KICAqLw0KdHlwZWRlZiBzdHJ1Y3QNCnsNCiAgX19JTyB1aW50MzJfdCBDUjE7ICAgICAgICAgIC8qITwgVElNIGNvbnRyb2wgcmVnaXN0ZXIgMSwgICAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDAwICovDQogIF9fSU8gdWludDMyX3QgQ1IyOyAgICAgICAgICAvKiE8IFRJTSBjb250cm9sIHJlZ2lzdGVyIDIsICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgwNCAqLw0KICBfX0lPIHVpbnQzMl90IFNNQ1I7ICAgICAgICAgLyohPCBUSU0gc2xhdmUgTW9kZSBDb250cm9sIHJlZ2lzdGVyLCAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MDggKi8NCiAgX19JTyB1aW50MzJfdCBESUVSOyAgICAgICAgIC8qITwgVElNIERNQS9pbnRlcnJ1cHQgZW5hYmxlIHJlZ2lzdGVyLCAgIEFkZHJlc3Mgb2Zmc2V0OiAweDBDICovDQogIF9fSU8gdWludDMyX3QgU1I7ICAgICAgICAgICAvKiE8IFRJTSBzdGF0dXMgcmVnaXN0ZXIsICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgxMCAqLw0KICBfX0lPIHVpbnQzMl90IEVHUjsgICAgICAgICAgLyohPCBUSU0gZXZlbnQgZ2VuZXJhdGlvbiByZWdpc3RlciwgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MTQgKi8NCiAgX19JTyB1aW50MzJfdCBDQ01SMTsgICAgICAgIC8qITwgVElNIGNhcHR1cmUvY29tcGFyZSBtb2RlIHJlZ2lzdGVyIDEsIEFkZHJlc3Mgb2Zmc2V0OiAweDE4ICovDQogIF9fSU8gdWludDMyX3QgQ0NNUjI7ICAgICAgICAvKiE8IFRJTSBjYXB0dXJlL2NvbXBhcmUgbW9kZSByZWdpc3RlciAyLCBBZGRyZXNzIG9mZnNldDogMHgxQyAqLw0KICBfX0lPIHVpbnQzMl90IENDRVI7ICAgICAgICAgLyohPCBUSU0gY2FwdHVyZS9jb21wYXJlIGVuYWJsZSByZWdpc3RlciwgQWRkcmVzcyBvZmZzZXQ6IDB4MjAgKi8NCiAgX19JTyB1aW50MzJfdCBDTlQ7ICAgICAgICAgIC8qITwgVElNIGNvdW50ZXIgcmVnaXN0ZXIsICAgICAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDI0ICovDQogIF9fSU8gdWludDMyX3QgUFNDOyAgICAgICAgICAvKiE8IFRJTSBwcmVzY2FsZXIgcmVnaXN0ZXIsICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgyOCAqLw0KICBfX0lPIHVpbnQzMl90IEFSUjsgICAgICAgICAgLyohPCBUSU0gYXV0by1yZWxvYWQgcmVnaXN0ZXIsICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MkMgKi8NCiAgdWludDMyX3QgICAgICBSRVNFUlZFRDEyOyAgIC8qITwgUmVzZXJ2ZWQsIDB4MzAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovICAgIA0KICBfX0lPIHVpbnQzMl90IENDUjE7ICAgICAgICAgLyohPCBUSU0gY2FwdHVyZS9jb21wYXJlIHJlZ2lzdGVyIDEsICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MzQgKi8gICAgDQogIF9fSU8gdWludDMyX3QgQ0NSMjsgICAgICAgICAvKiE8IFRJTSBjYXB0dXJlL2NvbXBhcmUgcmVnaXN0ZXIgMiwgICAgICBBZGRyZXNzIG9mZnNldDogMHgzOCAqLyAgICANCiAgX19JTyB1aW50MzJfdCBDQ1IzOyAgICAgICAgIC8qITwgVElNIGNhcHR1cmUvY29tcGFyZSByZWdpc3RlciAzLCAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDNDICovDQogIF9fSU8gdWludDMyX3QgQ0NSNDsgICAgICAgICAvKiE8IFRJTSBjYXB0dXJlL2NvbXBhcmUgcmVnaXN0ZXIgNCwgICAgICBBZGRyZXNzIG9mZnNldDogMHg0MCAqLw0KICB1aW50MzJfdCAgICAgIFJFU0VSVkVEMTc7ICAgLyohPCBSZXNlcnZlZCwgMHg0NCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8gDQogIF9fSU8gdWludDMyX3QgRENSOyAgICAgICAgICAvKiE8IFRJTSBETUEgY29udHJvbCByZWdpc3RlciwgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHg0OCAqLw0KICBfX0lPIHVpbnQzMl90IERNQVI7ICAgICAgICAgLyohPCBUSU0gRE1BIGFkZHJlc3MgZm9yIGZ1bGwgdHJhbnNmZXIsICAgQWRkcmVzcyBvZmZzZXQ6IDB4NEMgKi8NCiAgX19JTyB1aW50MzJfdCBPUjsgICAgICAgICAgIC8qITwgVElNIG9wdGlvbiByZWdpc3RlciwgICAgICAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDUwICovDQp9IFRJTV9UeXBlRGVmOw0KLyoqIA0KICAqIEBicmllZiBVbml2ZXJzYWwgU3luY2hyb25vdXMgQXN5bmNocm9ub3VzIFJlY2VpdmVyIFRyYW5zbWl0dGVyDQogICovDQogDQp0eXBlZGVmIHN0cnVjdA0Kew0KICBfX0lPIHVpbnQzMl90IFNSOyAgICAgICAgIC8qITwgVVNBUlQgU3RhdHVzIHJlZ2lzdGVyLCAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgwMCAqLw0KICBfX0lPIHVpbnQzMl90IERSOyAgICAgICAgIC8qITwgVVNBUlQgRGF0YSByZWdpc3RlciwgICAgICAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgwNCAqLw0KICBfX0lPIHVpbnQzMl90IEJSUjsgICAgICAgIC8qITwgVVNBUlQgQmF1ZCByYXRlIHJlZ2lzdGVyLCAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgwOCAqLw0KICBfX0lPIHVpbnQzMl90IENSMTsgICAgICAgIC8qITwgVVNBUlQgQ29udHJvbCByZWdpc3RlciAxLCAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgwQyAqLw0KICBfX0lPIHVpbnQzMl90IENSMjsgICAgICAgIC8qITwgVVNBUlQgQ29udHJvbCByZWdpc3RlciAyLCAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgxMCAqLw0KICBfX0lPIHVpbnQzMl90IENSMzsgICAgICAgIC8qITwgVVNBUlQgQ29udHJvbCByZWdpc3RlciAzLCAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgxNCAqLw0KICBfX0lPIHVpbnQzMl90IEdUUFI7ICAgICAgIC8qITwgVVNBUlQgR3VhcmQgdGltZSBhbmQgcHJlc2NhbGVyIHJlZ2lzdGVyLCBBZGRyZXNzIG9mZnNldDogMHgxOCAqLw0KfSBVU0FSVF9UeXBlRGVmOw0KDQovKiogDQogICogQGJyaWVmIFVuaXZlcnNhbCBTZXJpYWwgQnVzIEZ1bGwgU3BlZWQgRGV2aWNlDQogICovDQogIA0KdHlwZWRlZiBzdHJ1Y3QNCnsNCiAgX19JTyB1aW50MTZfdCBFUDBSOyAgICAgICAgICAgIC8qITwgVVNCIEVuZHBvaW50IDAgcmVnaXN0ZXIsICAgICAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDAwICovIA0KICBfX0lPIHVpbnQxNl90IFJFU0VSVkVEMDsgICAgICAgLyohPCBSZXNlcnZlZCAqLyAgICAgDQogIF9fSU8gdWludDE2X3QgRVAxUjsgICAgICAgICAgICAvKiE8IFVTQiBFbmRwb2ludCAxIHJlZ2lzdGVyLCAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgwNCAqLw0KICBfX0lPIHVpbnQxNl90IFJFU0VSVkVEMTsgICAgICAgLyohPCBSZXNlcnZlZCAqLyAgICAgICANCiAgX19JTyB1aW50MTZfdCBFUDJSOyAgICAgICAgICAgIC8qITwgVVNCIEVuZHBvaW50IDIgcmVnaXN0ZXIsICAgICAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDA4ICovDQogIF9fSU8gdWludDE2X3QgUkVTRVJWRUQyOyAgICAgICAvKiE8IFJlc2VydmVkICovICAgICAgIA0KICBfX0lPIHVpbnQxNl90IEVQM1I7ICAgICAgICAgICAgLyohPCBVU0IgRW5kcG9pbnQgMyByZWdpc3RlciwgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MEMgKi8gDQogIF9fSU8gdWludDE2X3QgUkVTRVJWRUQzOyAgICAgICAvKiE8IFJlc2VydmVkICovICAgICAgIA0KICBfX0lPIHVpbnQxNl90IEVQNFI7ICAgICAgICAgICAgLyohPCBVU0IgRW5kcG9pbnQgNCByZWdpc3RlciwgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MTAgKi8NCiAgX19JTyB1aW50MTZfdCBSRVNFUlZFRDQ7ICAgICAgIC8qITwgUmVzZXJ2ZWQgKi8gICAgICAgDQogIF9fSU8gdWludDE2X3QgRVA1UjsgICAgICAgICAgICAvKiE8IFVTQiBFbmRwb2ludCA1IHJlZ2lzdGVyLCAgICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgxNCAqLw0KICBfX0lPIHVpbnQxNl90IFJFU0VSVkVENTsgICAgICAgLyohPCBSZXNlcnZlZCAqLyAgICAgICANCiAgX19JTyB1aW50MTZfdCBFUDZSOyAgICAgICAgICAgIC8qITwgVVNCIEVuZHBvaW50IDYgcmVnaXN0ZXIsICAgICAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDE4ICovDQogIF9fSU8gdWludDE2X3QgUkVTRVJWRUQ2OyAgICAgICAvKiE8IFJlc2VydmVkICovICAgICAgIA0KICBfX0lPIHVpbnQxNl90IEVQN1I7ICAgICAgICAgICAgLyohPCBVU0IgRW5kcG9pbnQgNyByZWdpc3RlciwgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4MUMgKi8NCiAgX19JTyB1aW50MTZfdCBSRVNFUlZFRDdbMTddOyAgIC8qITwgUmVzZXJ2ZWQgKi8gICAgIA0KICBfX0lPIHVpbnQxNl90IENOVFI7ICAgICAgICAgICAgLyohPCBDb250cm9sIHJlZ2lzdGVyLCAgICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4NDAgKi8NCiAgX19JTyB1aW50MTZfdCBSRVNFUlZFRDg7ICAgICAgIC8qITwgUmVzZXJ2ZWQgKi8gICAgICAgDQogIF9fSU8gdWludDE2X3QgSVNUUjsgICAgICAgICAgICAvKiE8IEludGVycnVwdCBzdGF0dXMgcmVnaXN0ZXIsICAgICAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHg0NCAqLw0KICBfX0lPIHVpbnQxNl90IFJFU0VSVkVEOTsgICAgICAgLyohPCBSZXNlcnZlZCAqLyAgICAgICANCiAgX19JTyB1aW50MTZfdCBGTlI7ICAgICAgICAgICAgIC8qITwgRnJhbWUgbnVtYmVyIHJlZ2lzdGVyLCAgICAgICAgICAgICAgICAgIEFkZHJlc3Mgb2Zmc2V0OiAweDQ4ICovDQogIF9fSU8gdWludDE2X3QgUkVTRVJWRURBOyAgICAgICAvKiE8IFJlc2VydmVkICovICAgICAgIA0KICBfX0lPIHVpbnQxNl90IERBRERSOyAgICAgICAgICAgLyohPCBEZXZpY2UgYWRkcmVzcyByZWdpc3RlciwgICAgICAgICAgICAgICAgQWRkcmVzcyBvZmZzZXQ6IDB4NEMgKi8NCiAgX19JTyB1aW50MTZfdCBSRVNFUlZFREI7ICAgICAgIC8qITwgUmVzZXJ2ZWQgKi8gICAgICAgDQogIF9fSU8gdWludDE2X3QgQlRBQkxFOyAgICAgICAgICAvKiE8IEJ1ZmZlciBUYWJsZSBhZGRyZXNzIHJlZ2lzdGVyLCAgICAgICAgICBBZGRyZXNzIG9mZnNldDogMHg1MCAqLw0KICBfX0lPIHVpbnQxNl90IFJFU0VSVkVEQzsgICAgICAgLyohPCBSZXNlcnZlZCAqLyAgICAgICANCn0gVVNCX1R5cGVEZWY7DQoNCi8qKiANCiAgKiBAYnJpZWYgV2luZG93IFdBVENIRE9HDQogICovDQp0eXBlZGVmIHN0cnVjdA0Kew0KICBfX0lPIHVpbnQzMl90IENSOyAgIC8qITwgV1dERyBDb250cm9sIHJlZ2lzdGVyLCAgICAgICBBZGRyZXNzIG9mZnNldDogMHgwMCAqLw0KICBfX0lPIHVpbnQzMl90IENGUjsgIC8qITwgV1dERyBDb25maWd1cmF0aW9uIHJlZ2lzdGVyLCBBZGRyZXNzIG9mZnNldDogMHgwNCAqLw0KICBfX0lPIHVpbnQzMl90IFNSOyAgIC8qITwgV1dERyBTdGF0dXMgcmVnaXN0ZXIsICAgICAgICBBZGRyZXNzIG9mZnNldDogMHgwOCAqLw0KfSBXV0RHX1R5cGVEZWY7DQoNCi8qKiANCiAgKiBAYnJpZWYgVW5pdmVyc2FsIFNlcmlhbCBCdXMgRnVsbCBTcGVlZCBEZXZpY2UNCiAgKi8NCi8qKiANCiAgKiBAfQ0KICAqLw0KICANCi8qKiBAYWRkdG9ncm91cCBQZXJpcGhlcmFsX21lbW9yeV9tYXANCiAgKiBAew0KICAqLw0KDQojZGVmaW5lIEZMQVNIX0JBU0UgICAgICAgICAgICAoMHgwODAwMDAwMFVMKSAgICAgICAgICAgICAgLyohPCBGTEFTSCBiYXNlIGFkZHJlc3MgaW4gdGhlIGFsaWFzIHJlZ2lvbiAqLw0KI2RlZmluZSBGTEFTSF9FRVBST01fQkFTRSAgICAgKEZMQVNIX0JBU0UgKyAweDgwMDAwVUwpICAgIC8qITwgRkxBU0ggRUVQUk9NIGJhc2UgYWRkcmVzcyBpbiB0aGUgYWxpYXMgcmVnaW9uICovDQojZGVmaW5lIFNSQU1fQkFTRSAgICAgICAgICAgICAoMHgyMDAwMDAwMFVMKSAgICAgICAgICAgICAgLyohPCBTUkFNIGJhc2UgYWRkcmVzcyBpbiB0aGUgYWxpYXMgcmVnaW9uICovDQojZGVmaW5lIFBFUklQSF9CQVNFICAgICAgICAgICAoMHg0MDAwMDAwMFVMKSAgICAgICAgICAgICAgLyohPCBQZXJpcGhlcmFsIGJhc2UgYWRkcmVzcyBpbiB0aGUgYWxpYXMgcmVnaW9uICovDQojZGVmaW5lIFNSQU1fQkJfQkFTRSAgICAgICAgICAoMHgyMjAwMDAwMFVMKSAgICAgICAgICAgICAgLyohPCBTUkFNIGJhc2UgYWRkcmVzcyBpbiB0aGUgYml0LWJhbmQgcmVnaW9uICovDQojZGVmaW5lIFBFUklQSF9CQl9CQVNFICAgICAgICAoMHg0MjAwMDAwMFVMKSAgICAgICAgICAgICAgLyohPCBQZXJpcGhlcmFsIGJhc2UgYWRkcmVzcyBpbiB0aGUgYml0LWJhbmQgcmVnaW9uICovDQojZGVmaW5lIEZMQVNIX0JBTksyX0JBU0UgICAgICAoMHgwODA0MDAwMFVMKSAgICAgICAgICAgICAgLyohPCBGTEFTSCBCQU5LMiBiYXNlIGFkZHJlc3MgaW4gdGhlIGFsaWFzIHJlZ2lvbiAqLw0KI2RlZmluZSBGTEFTSF9CQU5LMV9FTkQgICAgICAgKDB4MDgwM0ZGRkZVTCkgICAgICAgICAgICAgIC8qITwgUHJvZ3JhbSBlbmQgRkxBU0ggQkFOSzEgYWRkcmVzcyAgKi8NCiNkZWZpbmUgRkxBU0hfQkFOSzJfRU5EICAgICAgICgweDA4MDdGRkZGVUwpICAgICAgICAgICAgICAvKiE8IFByb2dyYW0gZW5kIEZMQVNIIEJBTksyIGFkZHJlc3MgICovDQojZGVmaW5lIEZMQVNIX0VFUFJPTV9FTkQgICAgICAoMHgwODA4M0ZGRlVMKSAgICAgICAgICAgICAgLyohPCBGTEFTSCBFRVBST00gZW5kIGFkZHJlc3MgKDE2S0IpICovDQoNCi8qITwgUGVyaXBoZXJhbCBtZW1vcnkgbWFwICovDQojZGVmaW5lIEFQQjFQRVJJUEhfQkFTRSAgICAgICBQRVJJUEhfQkFTRQ0KI2RlZmluZSBBUEIyUEVSSVBIX0JBU0UgICAgICAgKFBFUklQSF9CQVNFICsgMHgwMDAxMDAwMFVMKQ0KI2RlZmluZSBBSEJQRVJJUEhfQkFTRSAgICAgICAgKFBFUklQSF9CQVNFICsgMHgwMDAyMDAwMFVMKQ0KDQovKiE8IEFQQjEgcGVyaXBoZXJhbHMgKi8NCiNkZWZpbmUgVElNMl9CQVNFICAgICAgICAgICAgIChBUEIxUEVSSVBIX0JBU0UgKyAweDAwMDAwMDAwVUwpDQojZGVmaW5lIFRJTTNfQkFTRSAgICAgICAgICAgICAoQVBCMVBFUklQSF9CQVNFICsgMHgwMDAwMDQwMFVMKQ0KI2RlZmluZSBUSU00X0JBU0UgICAgICAgICAgICAgKEFQQjFQRVJJUEhfQkFTRSArIDB4MDAwMDA4MDBVTCkNCiNkZWZpbmUgVElNNV9CQVNFICAgICAgICAgICAgIChBUEIxUEVSSVBIX0JBU0UgKyAweDAwMDAwQzAwVUwpDQojZGVmaW5lIFRJTTZfQkFTRSAgICAgICAgICAgICAoQVBCMVBFUklQSF9CQVNFICsgMHgwMDAwMTAwMFVMKQ0KI2RlZmluZSBUSU03X0JBU0UgICAgICAgICAgICAgKEFQQjFQRVJJUEhfQkFTRSArIDB4MDAwMDE0MDBVTCkNCiNkZWZpbmUgTENEX0JBU0UgICAgICAgICAgICAgIChBUEIxUEVSSVBIX0JBU0UgKyAweDAwMDAyNDAwVUwpDQojZGVmaW5lIFJUQ19CQVNFICAgICAgICAgICAgICAoQVBCMVBFUklQSF9CQVNFICsgMHgwMDAwMjgwMFVMKQ0KI2RlZmluZSBXV0RHX0JBU0UgICAgICAgICAgICAgKEFQQjFQRVJJUEhfQkFTRSArIDB4MDAwMDJDMDBVTCkNCiNkZWZpbmUgSVdER19CQVNFICAgICAgICAgICAgIChBUEIxUEVSSVBIX0JBU0UgKyAweDAwMDAzMDAwVUwpDQojZGVmaW5lIFNQSTJfQkFTRSAgICAgICAgICAgICAoQVBCMVBFUklQSF9CQVNFICsgMHgwMDAwMzgwMFVMKQ0KI2RlZmluZSBTUEkzX0JBU0UgICAgICAgICAgICAgKEFQQjFQRVJJUEhfQkFTRSArIDB4MDAwMDNDMDBVTCkNCiNkZWZpbmUgVVNBUlQyX0JBU0UgICAgICAgICAgIChBUEIxUEVSSVBIX0JBU0UgKyAweDAwMDA0NDAwVUwpDQojZGVmaW5lIFVTQVJUM19CQVNFICAgICAgICAgICAoQVBCMVBFUklQSF9CQVNFICsgMHgwMDAwNDgwMFVMKQ0KI2RlZmluZSBVQVJUNF9CQVNFICAgICAgICAgICAgKEFQQjFQRVJJUEhfQkFTRSArIDB4MDAwMDRDMDBVTCkNCiNkZWZpbmUgVUFSVDVfQkFTRSAgICAgICAgICAgIChBUEIxUEVSSVBIX0JBU0UgKyAweDAwMDA1MDAwVUwpDQojZGVmaW5lIEkyQzFfQkFTRSAgICAgICAgICAgICAoQVBCMVBFUklQSF9CQVNFICsgMHgwMDAwNTQwMFVMKQ0KI2RlZmluZSBJMkMyX0JBU0UgICAgICAgICAgICAgKEFQQjFQRVJJUEhfQkFTRSArIDB4MDAwMDU4MDBVTCkNCg0KLyogVVNCIGRldmljZSBGUyAqLw0KI2RlZmluZSBVU0JfQkFTRSAgICAgICAgICAgICAgKEFQQjFQRVJJUEhfQkFTRSArIDB4MDAwMDVDMDBVTCkgLyohPCBVU0JfSVAgUGVyaXBoZXJhbCBSZWdpc3RlcnMgYmFzZSBhZGRyZXNzICovDQojZGVmaW5lIFVTQl9QTUFBRERSICAgICAgICAgICAoQVBCMVBFUklQSF9CQVNFICsgMHgwMDAwNjAwMFVMKSAvKiE8IFVTQl9JUCBQYWNrZXQgTWVtb3J5IEFyZWEgYmFzZSBhZGRyZXNzICovDQoNCi8qIFVTQiBkZXZpY2UgRlMgU1JBTSAqLw0KI2RlZmluZSBQV1JfQkFTRSAgICAgICAgICAgICAgKEFQQjFQRVJJUEhfQkFTRSArIDB4MDAwMDcwMDBVTCkNCiNkZWZpbmUgREFDX0JBU0UgICAgICAgICAgICAgIChBUEIxUEVSSVBIX0JBU0UgKyAweDAwMDA3NDAwVUwpDQojZGVmaW5lIENPTVBfQkFTRSAgICAgICAgICAgICAoQVBCMVBFUklQSF9CQVNFICsgMHgwMDAwN0MwMFVMKQ0KI2RlZmluZSBSSV9CQVNFICAgICAgICAgICAgICAgKEFQQjFQRVJJUEhfQkFTRSArIDB4MDAwMDdDMDRVTCkNCiNkZWZpbmUgT1BBTVBfQkFTRSAgICAgICAgICAgIChBUEIxUEVSSVBIX0JBU0UgKyAweDAwMDA3QzVDVUwpDQoNCi8qITwgQVBCMiBwZXJpcGhlcmFscyAqLw0KI2RlZmluZSBTWVNDRkdfQkFTRSAgICAgICAgICAgKEFQQjJQRVJJUEhfQkFTRSArIDB4MDAwMDAwMDBVTCkNCiNkZWZpbmUgRVhUSV9CQVNFICAgICAgICAgICAgIChBUEIyUEVSSVBIX0JBU0UgKyAweDAwMDAwNDAwVUwpDQojZGVmaW5lIFRJTTlfQkFTRSAgICAgICAgICAgICAoQVBCMlBFUklQSF9CQVNFICsgMHgwMDAwMDgwMFVMKQ0KI2RlZmluZSBUSU0xMF9CQVNFICAgICAgICAgICAgKEFQQjJQRVJJUEhfQkFTRSArIDB4MDAwMDBDMDBVTCkNCiNkZWZpbmUgVElNMTFfQkFTRSAgICAgICAgICAgIChBUEIyUEVSSVBIX0JBU0UgKyAweDAwMDAxMDAwVUwpDQojZGVmaW5lIEFEQzFfQkFTRSAgICAgICAgICAgICAoQVBCMlBFUklQSF9CQVNFICsgMHgwMDAwMjQwMFVMKQ0KI2RlZmluZSBBRENfQkFTRSAgICAgICAgICAgICAgKEFQQjJQRVJJUEhfQkFTRSArIDB4MDAwMDI3MDBVTCkNCiNkZWZpbmUgU1BJMV9CQVNFICAgICAgICAgICAgIChBUEIyUEVSSVBIX0JBU0UgKyAweDAwMDAzMDAwVUwpDQojZGVmaW5lIFVTQVJUMV9CQVNFICAgICAgICAgICAoQVBCMlBFUklQSF9CQVNFICsgMHgwMDAwMzgwMFVMKQ0KDQovKiE8IEFIQiBwZXJpcGhlcmFscyAqLw0KI2RlZmluZSBHUElPQV9CQVNFICAgICAgICAgICAgKEFIQlBFUklQSF9CQVNFICsgMHgwMDAwMDAwMFVMKQ0KI2RlZmluZSBHUElPQl9CQVNFICAgICAgICAgICAgKEFIQlBFUklQSF9CQVNFICsgMHgwMDAwMDQwMFVMKQ0KI2RlZmluZSBHUElPQ19CQVNFICAgICAgICAgICAgKEFIQlBFUklQSF9CQVNFICsgMHgwMDAwMDgwMFVMKQ0KI2RlZmluZSBHUElPRF9CQVNFICAgICAgICAgICAgKEFIQlBFUklQSF9CQVNFICsgMHgwMDAwMEMwMFVMKQ0KI2RlZmluZSBHUElPRV9CQVNFICAgICAgICAgICAgKEFIQlBFUklQSF9CQVNFICsgMHgwMDAwMTAwMFVMKQ0KI2RlZmluZSBHUElPSF9CQVNFICAgICAgICAgICAgKEFIQlBFUklQSF9CQVNFICsgMHgwMDAwMTQwMFVMKQ0KI2RlZmluZSBHUElPRl9CQVNFICAgICAgICAgICAgKEFIQlBFUklQSF9CQVNFICsgMHgwMDAwMTgwMFVMKQ0KI2RlZmluZSBHUElPR19CQVNFICAgICAgICAgICAgKEFIQlBFUklQSF9CQVNFICsgMHgwMDAwMUMwMFVMKQ0KI2RlZmluZSBDUkNfQkFTRSAgICAgICAgICAgICAgKEFIQlBFUklQSF9CQVNFICsgMHgwMDAwMzAwMFVMKQ0KI2RlZmluZSBSQ0NfQkFTRSAgICAgICAgICAgICAgKEFIQlBFUklQSF9CQVNFICsgMHgwMDAwMzgwMFVMKQ0KI2RlZmluZSBGTEFTSF9SX0JBU0UgICAgICAgICAgKEFIQlBFUklQSF9CQVNFICsgMHgwMDAwM0MwMFVMKSAvKiE8IEZMQVNIIHJlZ2lzdGVycyBiYXNlIGFkZHJlc3MgKi8NCiNkZWZpbmUgT0JfQkFTRSAgICAgICAgICAgICAgICgweDFGRjgwMDAwVUwpICAgICAgICAgICAgICAgICAgLyohPCBGTEFTSCBPcHRpb24gQnl0ZXMgYmFzZSBhZGRyZXNzICovDQojZGVmaW5lIEZMQVNIU0laRV9CQVNFICAgICAgICAoMHgxRkY4MDBDQ1VMKSAgICAgICAgICAgICAgICAgIC8qITwgRkxBU0ggU2l6ZSByZWdpc3RlciBiYXNlIGFkZHJlc3MgZm9yIENhdC4zLCBDYXQuNCwgQ2F0LjUgYW5kIENhdC42IGRldmljZXMgKi8NCiNkZWZpbmUgVUlEX0JBU0UgICAgICAgICAgICAgICgweDFGRjgwMEQwVUwpICAgICAgICAgICAgICAgICAgLyohPCBVbmlxdWUgZGV2aWNlIElEIHJlZ2lzdGVyIGJhc2UgYWRkcmVzcyBmb3IgQ2F0LjMsIENhdC40LCBDYXQuNSBhbmQgQ2F0LjYgZGV2aWNlcyAqLw0KI2RlZmluZSBETUExX0JBU0UgICAgICAgICAgICAgKEFIQlBFUklQSF9CQVNFICsgMHgwMDAwNjAwMFVMKQ0KI2RlZmluZSBETUExX0NoYW5uZWwxX0JBU0UgICAgKERNQTFfQkFTRSArIDB4MDAwMDAwMDhVTCkNCiNkZWZpbmUgRE1BMV9DaGFubmVsMl9CQVNFICAgIChETUExX0JBU0UgKyAweDAwMDAwMDFDVUwpDQojZGVmaW5lIERNQTFfQ2hhbm5lbDNfQkFTRSAgICAoRE1BMV9CQVNFICsgMHgwMDAwMDAzMFVMKQ0KI2RlZmluZSBETUExX0NoYW5uZWw0X0JBU0UgICAgKERNQTFfQkFTRSArIDB4MDAwMDAwNDRVTCkNCiNkZWZpbmUgRE1BMV9DaGFubmVsNV9CQVNFICAgIChETUExX0JBU0UgKyAweDAwMDAwMDU4VUwpDQojZGVmaW5lIERNQTFfQ2hhbm5lbDZfQkFTRSAgICAoRE1BMV9CQVNFICsgMHgwMDAwMDA2Q1VMKQ0KI2RlZmluZSBETUExX0NoYW5uZWw3X0JBU0UgICAgKERNQTFfQkFTRSArIDB4MDAwMDAwODBVTCkNCiNkZWZpbmUgRE1BMl9CQVNFICAgICAgICAgICAgIChBSEJQRVJJUEhfQkFTRSArIDB4MDAwMDY0MDBVTCkNCiNkZWZpbmUgRE1BMl9DaGFubmVsMV9CQVNFICAgIChETUEyX0JBU0UgKyAweDAwMDAwMDA4VUwpDQojZGVmaW5lIERNQTJfQ2hhbm5lbDJfQkFTRSAgICAoRE1BMl9CQVNFICsgMHgwMDAwMDAxQ1VMKQ0KI2RlZmluZSBETUEyX0NoYW5uZWwzX0JBU0UgICAgKERNQTJfQkFTRSArIDB4MDAwMDAwMzBVTCkNCiNkZWZpbmUgRE1BMl9DaGFubmVsNF9CQVNFICAgIChETUEyX0JBU0UgKyAweDAwMDAwMDQ0VUwpDQojZGVmaW5lIERNQTJfQ2hhbm5lbDVfQkFTRSAgICAoRE1BMl9CQVNFICsgMHgwMDAwMDA1OFVMKQ0KI2RlZmluZSBEQkdNQ1VfQkFTRSAgICAgICAgICAgKDB4RTAwNDIwMDBVTCkgICAgIC8qITwgRGVidWcgTUNVIHJlZ2lzdGVycyBiYXNlIGFkZHJlc3MgKi8NCg0KLyoqDQogICogQH0NCiAgKi8NCiAgDQovKiogQGFkZHRvZ3JvdXAgUGVyaXBoZXJhbF9kZWNsYXJhdGlvbg0KICAqIEB7DQogICovICANCg0KI2RlZmluZSBUSU0yICAgICAgICAgICAgICAgICgoVElNX1R5cGVEZWYgKikgVElNMl9CQVNFKQ0KI2RlZmluZSBUSU0zICAgICAgICAgICAgICAgICgoVElNX1R5cGVEZWYgKikgVElNM19CQVNFKQ0KI2RlZmluZSBUSU00ICAgICAgICAgICAgICAgICgoVElNX1R5cGVEZWYgKikgVElNNF9CQVNFKQ0KI2RlZmluZSBUSU01ICAgICAgICAgICAgICAgICgoVElNX1R5cGVEZWYgKikgVElNNV9CQVNFKQ0KI2RlZmluZSBUSU02ICAgICAgICAgICAgICAgICgoVElNX1R5cGVEZWYgKikgVElNNl9CQVNFKQ0KI2RlZmluZSBUSU03ICAgICAgICAgICAgICAgICgoVElNX1R5cGVEZWYgKikgVElNN19CQVNFKQ0KI2RlZmluZSBMQ0QgICAgICAgICAgICAgICAgICgoTENEX1R5cGVEZWYgKikgTENEX0JBU0UpDQojZGVmaW5lIFJUQyAgICAgICAgICAgICAgICAgKChSVENfVHlwZURlZiAqKSBSVENfQkFTRSkNCiNkZWZpbmUgV1dERyAgICAgICAgICAgICAgICAoKFdXREdfVHlwZURlZiAqKSBXV0RHX0JBU0UpDQojZGVmaW5lIElXREcgICAgICAgICAgICAgICAgKChJV0RHX1R5cGVEZWYgKikgSVdER19CQVNFKQ0KI2RlZmluZSBTUEkyICAgICAgICAgICAgICAgICgoU1BJX1R5cGVEZWYgKikgU1BJMl9CQVNFKQ0KI2RlZmluZSBTUEkzICAgICAgICAgICAgICAgICgoU1BJX1R5cGVEZWYgKikgU1BJM19CQVNFKQ0KI2RlZmluZSBVU0FSVDIgICAgICAgICAgICAgICgoVVNBUlRfVHlwZURlZiAqKSBVU0FSVDJfQkFTRSkNCiNkZWZpbmUgVVNBUlQzICAgICAgICAgICAgICAoKFVTQVJUX1R5cGVEZWYgKikgVVNBUlQzX0JBU0UpDQojZGVmaW5lIFVBUlQ0ICAgICAgICAgICAgICAgKChVU0FSVF9UeXBlRGVmICopIFVBUlQ0X0JBU0UpDQojZGVmaW5lIFVBUlQ1ICAgICAgICAgICAgICAgKChVU0FSVF9UeXBlRGVmICopIFVBUlQ1X0JBU0UpDQojZGVmaW5lIEkyQzEgICAgICAgICAgICAgICAgKChJMkNfVHlwZURlZiAqKSBJMkMxX0JBU0UpDQojZGVmaW5lIEkyQzIgICAgICAgICAgICAgICAgKChJMkNfVHlwZURlZiAqKSBJMkMyX0JBU0UpDQovKiBVU0IgZGV2aWNlIEZTICovDQojZGVmaW5lIFVTQiAgICAgICAgICAgICAgICAgICAoKFVTQl9UeXBlRGVmICopIFVTQl9CQVNFKQ0KLyogVVNCIGRldmljZSBGUyBTUkFNICovDQojZGVmaW5lIFBXUiAgICAgICAgICAgICAgICAgKChQV1JfVHlwZURlZiAqKSBQV1JfQkFTRSkNCg0KI2RlZmluZSBEQUMxICAgICAgICAgICAgICAgICgoREFDX1R5cGVEZWYgKikgREFDX0JBU0UpDQovKiBMZWdhY3kgZGVmaW5lICovDQojZGVmaW5lIERBQyAgICAgICAgICAgICAgICAgREFDMQ0KDQojZGVmaW5lIENPTVAgICAgICAgICAgICAgICAgKChDT01QX1R5cGVEZWYgKikgQ09NUF9CQVNFKSAgICAgICAgICAgICAgICAgLyogQ09NUCBnZW5lcmljIGluc3RhbmNlIGluY2x1ZGUgYml0cyBvZiBDT01QMSBhbmQgQ09NUDIgbWl4ZWQgaW4gdGhlIHNhbWUgcmVnaXN0ZXIgKi8NCiNkZWZpbmUgQ09NUDEgICAgICAgICAgICAgICAoKENPTVBfVHlwZURlZiAqKSBDT01QX0JBU0UpICAgICAgICAgICAgICAgICAvKiBDT01QMSBpbnN0YW5jZSBkZWZpbml0aW9uIHRvIGRpZmZlcmVudGlhdGUgQ09NUDEgYW5kIENPTVAyLCBub3QgdG8gYmUgdXNlZCB0byBhY2Nlc3MgY29tcGFyYXRvciByZWdpc3RlciAqLw0KI2RlZmluZSBDT01QMiAgICAgICAgICAgICAgICgoQ09NUF9UeXBlRGVmICopIChDT01QX0JBU0UgKyAweDAwMDAwMDAxVSkpIC8qIENPTVAyIGluc3RhbmNlIGRlZmluaXRpb24gdG8gZGlmZmVyZW50aWF0ZSBDT01QMSBhbmQgQ09NUDIsIG5vdCB0byBiZSB1c2VkIHRvIGFjY2VzcyBjb21wYXJhdG9yIHJlZ2lzdGVyICovDQojZGVmaW5lIENPTVAxMl9DT01NT04gICAgICAgKChDT01QX0NvbW1vbl9UeXBlRGVmICopIENPTVBfQkFTRSkgICAgICAgICAgLyogQ09NUCBjb21tb24gaW5zdGFuY2UgZGVmaW5pdGlvbiB0byBhY2Nlc3MgY29tcGFyYXRvciByZWdpc3RlciBiaXRzIHVzZWQgYnkgYm90aCBjb21wYXJhdG9yIGluc3RhbmNlcyAod2luZG93IG1vZGUpICovDQoNCiNkZWZpbmUgUkkgICAgICAgICAgICAgICAgICAoKFJJX1R5cGVEZWYgKikgUklfQkFTRSkNCg0KI2RlZmluZSBPUEFNUCAgICAgICAgICAgICAgICgoT1BBTVBfVHlwZURlZiAqKSBPUEFNUF9CQVNFKQ0KI2RlZmluZSBPUEFNUDEgICAgICAgICAgICAgICgoT1BBTVBfVHlwZURlZiAqKSBPUEFNUF9CQVNFKQ0KI2RlZmluZSBPUEFNUDIgICAgICAgICAgICAgICgoT1BBTVBfVHlwZURlZiAqKSAoT1BBTVBfQkFTRSArIDB4MDAwMDAwMDFVKSkNCiNkZWZpbmUgT1BBTVAxMl9DT01NT04gICAgICAoKE9QQU1QX0NvbW1vbl9UeXBlRGVmICopIE9QQU1QX0JBU0UpDQojZGVmaW5lIFNZU0NGRyAgICAgICAgICAgICAgKChTWVNDRkdfVHlwZURlZiAqKSBTWVNDRkdfQkFTRSkNCiNkZWZpbmUgRVhUSSAgICAgICAgICAgICAgICAoKEVYVElfVHlwZURlZiAqKSBFWFRJX0JBU0UpDQojZGVmaW5lIFRJTTkgICAgICAgICAgICAgICAgKChUSU1fVHlwZURlZiAqKSBUSU05X0JBU0UpDQojZGVmaW5lIFRJTTEwICAgICAgICAgICAgICAgKChUSU1fVHlwZURlZiAqKSBUSU0xMF9CQVNFKQ0KI2RlZmluZSBUSU0xMSAgICAgICAgICAgICAgICgoVElNX1R5cGVEZWYgKikgVElNMTFfQkFTRSkNCg0KI2RlZmluZSBBREMxICAgICAgICAgICAgICAgICgoQURDX1R5cGVEZWYgKikgQURDMV9CQVNFKQ0KI2RlZmluZSBBREMxX0NPTU1PTiAgICAgICAgICgoQURDX0NvbW1vbl9UeXBlRGVmICopIEFEQ19CQVNFKQ0KLyogTGVnYWN5IGRlZmluZXMgKi8NCiNkZWZpbmUgQURDICAgICAgICAgICAgICAgICBBREMxX0NPTU1PTg0KDQojZGVmaW5lIFNQSTEgICAgICAgICAgICAgICAgKChTUElfVHlwZURlZiAqKSBTUEkxX0JBU0UpDQojZGVmaW5lIFVTQVJUMSAgICAgICAgICAgICAgKChVU0FSVF9UeXBlRGVmICopIFVTQVJUMV9CQVNFKQ0KI2RlZmluZSBHUElPQSAgICAgICAgICAgICAgICgoR1BJT19UeXBlRGVmICopIEdQSU9BX0JBU0UpDQojZGVmaW5lIEdQSU9CICAgICAgICAgICAgICAgKChHUElPX1R5cGVEZWYgKikgR1BJT0JfQkFTRSkNCiNkZWZpbmUgR1BJT0MgICAgICAgICAgICAgICAoKEdQSU9fVHlwZURlZiAqKSBHUElPQ19CQVNFKQ0KI2RlZmluZSBHUElPRCAgICAgICAgICAgICAgICgoR1BJT19UeXBlRGVmICopIEdQSU9EX0JBU0UpDQojZGVmaW5lIEdQSU9FICAgICAgICAgICAgICAgKChHUElPX1R5cGVEZWYgKikgR1BJT0VfQkFTRSkNCiNkZWZpbmUgR1BJT0ggICAgICAgICAgICAgICAoKEdQSU9fVHlwZURlZiAqKSBHUElPSF9CQVNFKQ0KI2RlZmluZSBHUElPRiAgICAgICAgICAgICAgICgoR1BJT19UeXBlRGVmICopIEdQSU9GX0JBU0UpDQojZGVmaW5lIEdQSU9HICAgICAgICAgICAgICAgKChHUElPX1R5cGVEZWYgKikgR1BJT0dfQkFTRSkNCiNkZWZpbmUgQ1JDICAgICAgICAgICAgICAgICAoKENSQ19UeXBlRGVmICopIENSQ19CQVNFKQ0KI2RlZmluZSBSQ0MgICAgICAgICAgICAgICAgICgoUkNDX1R5cGVEZWYgKikgUkNDX0JBU0UpDQojZGVmaW5lIEZMQVNIICAgICAgICAgICAgICAgKChGTEFTSF9UeXBlRGVmICopIEZMQVNIX1JfQkFTRSkNCiNkZWZpbmUgT0IgICAgICAgICAgICAgICAgICAoKE9CX1R5cGVEZWYgKikgT0JfQkFTRSkgDQojZGVmaW5lIERNQTEgICAgICAgICAgICAgICAgKChETUFfVHlwZURlZiAqKSBETUExX0JBU0UpDQojZGVmaW5lIERNQTFfQ2hhbm5lbDEgICAgICAgKChETUFfQ2hhbm5lbF9UeXBlRGVmICopIERNQTFfQ2hhbm5lbDFfQkFTRSkNCiNkZWZpbmUgRE1BMV9DaGFubmVsMiAgICAgICAoKERNQV9DaGFubmVsX1R5cGVEZWYgKikgRE1BMV9DaGFubmVsMl9CQVNFKQ0KI2RlZmluZSBETUExX0NoYW5uZWwzICAgICAgICgoRE1BX0NoYW5uZWxfVHlwZURlZiAqKSBETUExX0NoYW5uZWwzX0JBU0UpDQojZGVmaW5lIERNQTFfQ2hhbm5lbDQgICAgICAgKChETUFfQ2hhbm5lbF9UeXBlRGVmICopIERNQTFfQ2hhbm5lbDRfQkFTRSkNCiNkZWZpbmUgRE1BMV9DaGFubmVsNSAgICAgICAoKERNQV9DaGFubmVsX1R5cGVEZWYgKikgRE1BMV9DaGFubmVsNV9CQVNFKQ0KI2RlZmluZSBETUExX0NoYW5uZWw2ICAgICAgICgoRE1BX0NoYW5uZWxfVHlwZURlZiAqKSBETUExX0NoYW5uZWw2X0JBU0UpDQojZGVmaW5lIERNQTFfQ2hhbm5lbDcgICAgICAgKChETUFfQ2hhbm5lbF9UeXBlRGVmICopIERNQTFfQ2hhbm5lbDdfQkFTRSkNCiNkZWZpbmUgRE1BMiAgICAgICAgICAgICAgICAoKERNQV9UeXBlRGVmICopIERNQTJfQkFTRSkNCiNkZWZpbmUgRE1BMl9DaGFubmVsMSAgICAgICAoKERNQV9DaGFubmVsX1R5cGVEZWYgKikgRE1BMl9DaGFubmVsMV9CQVNFKQ0KI2RlZmluZSBETUEyX0NoYW5uZWwyICAgICAgICgoRE1BX0NoYW5uZWxfVHlwZURlZiAqKSBETUEyX0NoYW5uZWwyX0JBU0UpDQojZGVmaW5lIERNQTJfQ2hhbm5lbDMgICAgICAgKChETUFfQ2hhbm5lbF9UeXBlRGVmICopIERNQTJfQ2hhbm5lbDNfQkFTRSkNCiNkZWZpbmUgRE1BMl9DaGFubmVsNCAgICAgICAoKERNQV9DaGFubmVsX1R5cGVEZWYgKikgRE1BMl9DaGFubmVsNF9CQVNFKQ0KI2RlZmluZSBETUEyX0NoYW5uZWw1ICAgICAgICgoRE1BX0NoYW5uZWxfVHlwZURlZiAqKSBETUEyX0NoYW5uZWw1X0JBU0UpDQojZGVmaW5lIERCR01DVSAgICAgICAgICAgICAgKChEQkdNQ1VfVHlwZURlZiAqKSBEQkdNQ1VfQkFTRSkNCg0KIC8qKg0KICAqIEB9DQogICovDQoNCi8qKiBAYWRkdG9ncm91cCBFeHBvcnRlZF9jb25zdGFudHMNCiAgKiBAew0KICAqLw0KDQovKiogQGFkZHRvZ3JvdXAgUGVyaXBoZXJhbF9SZWdpc3RlcnNfQml0c19EZWZpbml0aW9uDQogICogQHsNCiAgKi8NCiAgICANCi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovDQovKiAgICAgICAgICAgICAgICAgICAgICAgICBQZXJpcGhlcmFsIFJlZ2lzdGVycyBCaXRzIERlZmluaXRpb24gICAgICAgICAgICAgICAqLw0KLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8NCi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovDQovKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLw0KLyogICAgICAgICAgICAgICAgICAgICAgQW5hbG9nIHRvIERpZ2l0YWwgQ29udmVydGVyIChBREMpICAgICAgICAgICAgICAgICAgICAgKi8NCi8qICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovDQovKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLw0KDQovKioqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBBRENfU1IgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBBRENfU1JfQVdEX1BvcyAgICAgICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBBRENfU1JfQVdEX01zayAgICAgICAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IEFEQ19TUl9BV0RfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDAwMDEgKi8NCiNkZWZpbmUgQURDX1NSX0FXRCAgICAgICAgICAgICAgICAgICAgICAgICAgIEFEQ19TUl9BV0RfTXNrICAgICAgICAgICAgICAgICAgICAvKiE8IEFEQyBhbmFsb2cgd2F0Y2hkb2cgMSBmbGFnICovDQojZGVmaW5lIEFEQ19TUl9FT0NTX1BvcyAgICAgICAgICAgICAgICAgICAgICAoMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEFEQ19TUl9FT0NTX01zayAgICAgICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgQURDX1NSX0VPQ1NfUG9zKSAgICAgICAgIC8qITwgMHgwMDAwMDAwMiAqLw0KI2RlZmluZSBBRENfU1JfRU9DUyAgICAgICAgICAgICAgICAgICAgICAgICAgQURDX1NSX0VPQ1NfTXNrICAgICAgICAgICAgICAgICAgIC8qITwgQURDIGdyb3VwIHJlZ3VsYXIgZW5kIG9mIHVuaXRhcnkgY29udmVyc2lvbiBvciBlbmQgb2Ygc2VxdWVuY2UgY29udmVyc2lvbnMgZmxhZyAqLw0KI2RlZmluZSBBRENfU1JfSkVPU19Qb3MgICAgICAgICAgICAgICAgICAgICAgKDJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBBRENfU1JfSkVPU19Nc2sgICAgICAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IEFEQ19TUl9KRU9TX1BvcykgICAgICAgICAvKiE8IDB4MDAwMDAwMDQgKi8NCiNkZWZpbmUgQURDX1NSX0pFT1MgICAgICAgICAgICAgICAgICAgICAgICAgIEFEQ19TUl9KRU9TX01zayAgICAgICAgICAgICAgICAgICAvKiE8IEFEQyBncm91cCBpbmplY3RlZCBlbmQgb2Ygc2VxdWVuY2UgY29udmVyc2lvbnMgZmxhZyAqLw0KI2RlZmluZSBBRENfU1JfSlNUUlRfUG9zICAgICAgICAgICAgICAgICAgICAgKDNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBBRENfU1JfSlNUUlRfTXNrICAgICAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IEFEQ19TUl9KU1RSVF9Qb3MpICAgICAgICAvKiE8IDB4MDAwMDAwMDggKi8NCiNkZWZpbmUgQURDX1NSX0pTVFJUICAgICAgICAgICAgICAgICAgICAgICAgIEFEQ19TUl9KU1RSVF9Nc2sgICAgICAgICAgICAgICAgICAvKiE8IEFEQyBncm91cCBpbmplY3RlZCBjb252ZXJzaW9uIHN0YXJ0IGZsYWcgKi8NCiNkZWZpbmUgQURDX1NSX1NUUlRfUG9zICAgICAgICAgICAgICAgICAgICAgICg0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgQURDX1NSX1NUUlRfTXNrICAgICAgICAgICAgICAgICAgICAgICgweDFVTCA8PCBBRENfU1JfU1RSVF9Qb3MpICAgICAgICAgLyohPCAweDAwMDAwMDEwICovDQojZGVmaW5lIEFEQ19TUl9TVFJUICAgICAgICAgICAgICAgICAgICAgICAgICBBRENfU1JfU1RSVF9Nc2sgICAgICAgICAgICAgICAgICAgLyohPCBBREMgZ3JvdXAgcmVndWxhciBjb252ZXJzaW9uIHN0YXJ0IGZsYWcgKi8NCiNkZWZpbmUgQURDX1NSX09WUl9Qb3MgICAgICAgICAgICAgICAgICAgICAgICg1VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgQURDX1NSX09WUl9Nc2sgICAgICAgICAgICAgICAgICAgICAgICgweDFVTCA8PCBBRENfU1JfT1ZSX1BvcykgICAgICAgICAgLyohPCAweDAwMDAwMDIwICovDQojZGVmaW5lIEFEQ19TUl9PVlIgICAgICAgICAgICAgICAgICAgICAgICAgICBBRENfU1JfT1ZSX01zayAgICAgICAgICAgICAgICAgICAgLyohPCBBREMgZ3JvdXAgcmVndWxhciBvdmVycnVuIGZsYWcgKi8NCiNkZWZpbmUgQURDX1NSX0FET05TX1BvcyAgICAgICAgICAgICAgICAgICAgICg2VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgQURDX1NSX0FET05TX01zayAgICAgICAgICAgICAgICAgICAgICgweDFVTCA8PCBBRENfU1JfQURPTlNfUG9zKSAgICAgICAgLyohPCAweDAwMDAwMDQwICovDQojZGVmaW5lIEFEQ19TUl9BRE9OUyAgICAgICAgICAgICAgICAgICAgICAgICBBRENfU1JfQURPTlNfTXNrICAgICAgICAgICAgICAgICAgLyohPCBBREMgcmVhZHkgZmxhZyAqLw0KI2RlZmluZSBBRENfU1JfUkNOUl9Qb3MgICAgICAgICAgICAgICAgICAgICAgKDhVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBBRENfU1JfUkNOUl9Nc2sgICAgICAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IEFEQ19TUl9SQ05SX1BvcykgICAgICAgICAvKiE8IDB4MDAwMDAxMDAgKi8NCiNkZWZpbmUgQURDX1NSX1JDTlIgICAgICAgICAgICAgICAgICAgICAgICAgIEFEQ19TUl9SQ05SX01zayAgICAgICAgICAgICAgICAgICAvKiE8IEFEQyBncm91cCByZWd1bGFyIG5vdCByZWFkeSBmbGFnICovDQojZGVmaW5lIEFEQ19TUl9KQ05SX1BvcyAgICAgICAgICAgICAgICAgICAgICAoOVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEFEQ19TUl9KQ05SX01zayAgICAgICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgQURDX1NSX0pDTlJfUG9zKSAgICAgICAgIC8qITwgMHgwMDAwMDIwMCAqLw0KI2RlZmluZSBBRENfU1JfSkNOUiAgICAgICAgICAgICAgICAgICAgICAgICAgQURDX1NSX0pDTlJfTXNrICAgICAgICAgICAgICAgICAgIC8qITwgQURDIGdyb3VwIGluamVjdGVkIG5vdCByZWFkeSBmbGFnICovDQoNCi8qIExlZ2FjeSBkZWZpbmVzICovDQojZGVmaW5lICBBRENfU1JfRU9DICAgICAgICAgICAgICAgICAgICAgICAgICAoQURDX1NSX0VPQ1MpDQojZGVmaW5lICBBRENfU1JfSkVPQyAgICAgICAgICAgICAgICAgICAgICAgICAoQURDX1NSX0pFT1MpDQoNCi8qKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgQURDX0NSMSByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIEFEQ19DUjFfQVdEQ0hfUG9zICAgICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEFEQ19DUjFfQVdEQ0hfTXNrICAgICAgICAgICAgICAgICAgICAoMHgxRlVMIDw8IEFEQ19DUjFfQVdEQ0hfUG9zKSAgICAgIC8qITwgMHgwMDAwMDAxRiAqLw0KI2RlZmluZSBBRENfQ1IxX0FXRENIICAgICAgICAgICAgICAgICAgICAgICAgQURDX0NSMV9BV0RDSF9Nc2sgICAgICAgICAgICAgICAgIC8qITwgQURDIGFuYWxvZyB3YXRjaGRvZyAxIG1vbml0b3JlZCBjaGFubmVsIHNlbGVjdGlvbiAqLw0KI2RlZmluZSBBRENfQ1IxX0FXRENIXzAgICAgICAgICAgICAgICAgICAgICAgKDB4MDFVTCA8PCBBRENfQ1IxX0FXRENIX1BvcykgICAgICAvKiE8IDB4MDAwMDAwMDEgKi8NCiNkZWZpbmUgQURDX0NSMV9BV0RDSF8xICAgICAgICAgICAgICAgICAgICAgICgweDAyVUwgPDwgQURDX0NSMV9BV0RDSF9Qb3MpICAgICAgLyohPCAweDAwMDAwMDAyICovDQojZGVmaW5lIEFEQ19DUjFfQVdEQ0hfMiAgICAgICAgICAgICAgICAgICAgICAoMHgwNFVMIDw8IEFEQ19DUjFfQVdEQ0hfUG9zKSAgICAgIC8qITwgMHgwMDAwMDAwNCAqLw0KI2RlZmluZSBBRENfQ1IxX0FXRENIXzMgICAgICAgICAgICAgICAgICAgICAgKDB4MDhVTCA8PCBBRENfQ1IxX0FXRENIX1BvcykgICAgICAvKiE8IDB4MDAwMDAwMDggKi8NCiNkZWZpbmUgQURDX0NSMV9BV0RDSF80ICAgICAgICAgICAgICAgICAgICAgICgweDEwVUwgPDwgQURDX0NSMV9BV0RDSF9Qb3MpICAgICAgLyohPCAweDAwMDAwMDEwICovDQoNCiNkZWZpbmUgQURDX0NSMV9FT0NTSUVfUG9zICAgICAgICAgICAgICAgICAgICg1VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgQURDX0NSMV9FT0NTSUVfTXNrICAgICAgICAgICAgICAgICAgICgweDFVTCA8PCBBRENfQ1IxX0VPQ1NJRV9Qb3MpICAgICAgLyohPCAweDAwMDAwMDIwICovDQojZGVmaW5lIEFEQ19DUjFfRU9DU0lFICAgICAgICAgICAgICAgICAgICAgICBBRENfQ1IxX0VPQ1NJRV9Nc2sgICAgICAgICAgICAgICAgLyohPCBBREMgZ3JvdXAgcmVndWxhciBlbmQgb2YgdW5pdGFyeSBjb252ZXJzaW9uIG9yIGVuZCBvZiBzZXF1ZW5jZSBjb252ZXJzaW9ucyBpbnRlcnJ1cHQgKi8NCiNkZWZpbmUgQURDX0NSMV9BV0RJRV9Qb3MgICAgICAgICAgICAgICAgICAgICg2VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgQURDX0NSMV9BV0RJRV9Nc2sgICAgICAgICAgICAgICAgICAgICgweDFVTCA8PCBBRENfQ1IxX0FXRElFX1BvcykgICAgICAgLyohPCAweDAwMDAwMDQwICovDQojZGVmaW5lIEFEQ19DUjFfQVdESUUgICAgICAgICAgICAgICAgICAgICAgICBBRENfQ1IxX0FXRElFX01zayAgICAgICAgICAgICAgICAgLyohPCBBREMgYW5hbG9nIHdhdGNoZG9nIDEgaW50ZXJydXB0ICovDQojZGVmaW5lIEFEQ19DUjFfSkVPU0lFX1BvcyAgICAgICAgICAgICAgICAgICAoN1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEFEQ19DUjFfSkVPU0lFX01zayAgICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgQURDX0NSMV9KRU9TSUVfUG9zKSAgICAgIC8qITwgMHgwMDAwMDA4MCAqLw0KI2RlZmluZSBBRENfQ1IxX0pFT1NJRSAgICAgICAgICAgICAgICAgICAgICAgQURDX0NSMV9KRU9TSUVfTXNrICAgICAgICAgICAgICAgIC8qITwgQURDIGdyb3VwIGluamVjdGVkIGVuZCBvZiBzZXF1ZW5jZSBjb252ZXJzaW9ucyBpbnRlcnJ1cHQgKi8NCiNkZWZpbmUgQURDX0NSMV9TQ0FOX1BvcyAgICAgICAgICAgICAgICAgICAgICg4VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgQURDX0NSMV9TQ0FOX01zayAgICAgICAgICAgICAgICAgICAgICgweDFVTCA8PCBBRENfQ1IxX1NDQU5fUG9zKSAgICAgICAgLyohPCAweDAwMDAwMTAwICovDQojZGVmaW5lIEFEQ19DUjFfU0NBTiAgICAgICAgICAgICAgICAgICAgICAgICBBRENfQ1IxX1NDQU5fTXNrICAgICAgICAgICAgICAgICAgLyohPCBBREMgc2NhbiBtb2RlICovDQojZGVmaW5lIEFEQ19DUjFfQVdEU0dMX1BvcyAgICAgICAgICAgICAgICAgICAoOVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEFEQ19DUjFfQVdEU0dMX01zayAgICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgQURDX0NSMV9BV0RTR0xfUG9zKSAgICAgIC8qITwgMHgwMDAwMDIwMCAqLw0KI2RlZmluZSBBRENfQ1IxX0FXRFNHTCAgICAgICAgICAgICAgICAgICAgICAgQURDX0NSMV9BV0RTR0xfTXNrICAgICAgICAgICAgICAgIC8qITwgQURDIGFuYWxvZyB3YXRjaGRvZyAxIG1vbml0b3JpbmcgYSBzaW5nbGUgY2hhbm5lbCBvciBhbGwgY2hhbm5lbHMgKi8NCiNkZWZpbmUgQURDX0NSMV9KQVVUT19Qb3MgICAgICAgICAgICAgICAgICAgICgxMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgQURDX0NSMV9KQVVUT19Nc2sgICAgICAgICAgICAgICAgICAgICgweDFVTCA8PCBBRENfQ1IxX0pBVVRPX1BvcykgICAgICAgLyohPCAweDAwMDAwNDAwICovDQojZGVmaW5lIEFEQ19DUjFfSkFVVE8gICAgICAgICAgICAgICAgICAgICAgICBBRENfQ1IxX0pBVVRPX01zayAgICAgICAgICAgICAgICAgLyohPCBBREMgZ3JvdXAgaW5qZWN0ZWQgYXV0b21hdGljIHRyaWdnZXIgbW9kZSAqLw0KI2RlZmluZSBBRENfQ1IxX0RJU0NFTl9Qb3MgICAgICAgICAgICAgICAgICAgKDExVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBBRENfQ1IxX0RJU0NFTl9Nc2sgICAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IEFEQ19DUjFfRElTQ0VOX1BvcykgICAgICAvKiE8IDB4MDAwMDA4MDAgKi8NCiNkZWZpbmUgQURDX0NSMV9ESVNDRU4gICAgICAgICAgICAgICAgICAgICAgIEFEQ19DUjFfRElTQ0VOX01zayAgICAgICAgICAgICAgICAvKiE8IEFEQyBncm91cCByZWd1bGFyIHNlcXVlbmNlciBkaXNjb250aW51b3VzIG1vZGUgKi8NCiNkZWZpbmUgQURDX0NSMV9KRElTQ0VOX1BvcyAgICAgICAgICAgICAgICAgICgxMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgQURDX0NSMV9KRElTQ0VOX01zayAgICAgICAgICAgICAgICAgICgweDFVTCA8PCBBRENfQ1IxX0pESVNDRU5fUG9zKSAgICAgLyohPCAweDAwMDAxMDAwICovDQojZGVmaW5lIEFEQ19DUjFfSkRJU0NFTiAgICAgICAgICAgICAgICAgICAgICBBRENfQ1IxX0pESVNDRU5fTXNrICAgICAgICAgICAgICAgLyohPCBBREMgZ3JvdXAgaW5qZWN0ZWQgc2VxdWVuY2VyIGRpc2NvbnRpbnVvdXMgbW9kZSAqLw0KDQojZGVmaW5lIEFEQ19DUjFfRElTQ05VTV9Qb3MgICAgICAgICAgICAgICAgICAoMTNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEFEQ19DUjFfRElTQ05VTV9Nc2sgICAgICAgICAgICAgICAgICAoMHg3VUwgPDwgQURDX0NSMV9ESVNDTlVNX1BvcykgICAgIC8qITwgMHgwMDAwRTAwMCAqLw0KI2RlZmluZSBBRENfQ1IxX0RJU0NOVU0gICAgICAgICAgICAgICAgICAgICAgQURDX0NSMV9ESVNDTlVNX01zayAgICAgICAgICAgICAgIC8qITwgQURDIGdyb3VwIHJlZ3VsYXIgc2VxdWVuY2VyIGRpc2NvbnRpbnVvdXMgbnVtYmVyIG9mIHJhbmtzICovDQojZGVmaW5lIEFEQ19DUjFfRElTQ05VTV8wICAgICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgQURDX0NSMV9ESVNDTlVNX1BvcykgICAgIC8qITwgMHgwMDAwMjAwMCAqLw0KI2RlZmluZSBBRENfQ1IxX0RJU0NOVU1fMSAgICAgICAgICAgICAgICAgICAgKDB4MlVMIDw8IEFEQ19DUjFfRElTQ05VTV9Qb3MpICAgICAvKiE8IDB4MDAwMDQwMDAgKi8NCiNkZWZpbmUgQURDX0NSMV9ESVNDTlVNXzIgICAgICAgICAgICAgICAgICAgICgweDRVTCA8PCBBRENfQ1IxX0RJU0NOVU1fUG9zKSAgICAgLyohPCAweDAwMDA4MDAwICovDQoNCiNkZWZpbmUgQURDX0NSMV9QRERfUG9zICAgICAgICAgICAgICAgICAgICAgICgxNlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgQURDX0NSMV9QRERfTXNrICAgICAgICAgICAgICAgICAgICAgICgweDFVTCA8PCBBRENfQ1IxX1BERF9Qb3MpICAgICAgICAgLyohPCAweDAwMDEwMDAwICovDQojZGVmaW5lIEFEQ19DUjFfUEREICAgICAgICAgICAgICAgICAgICAgICAgICBBRENfQ1IxX1BERF9Nc2sgICAgICAgICAgICAgICAgICAgLyohPCBBREMgcG93ZXIgZG93biBkdXJpbmcgYXV0byBkZWxheSBwaGFzZSAqLw0KI2RlZmluZSBBRENfQ1IxX1BESV9Qb3MgICAgICAgICAgICAgICAgICAgICAgKDE3VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBBRENfQ1IxX1BESV9Nc2sgICAgICAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IEFEQ19DUjFfUERJX1BvcykgICAgICAgICAvKiE8IDB4MDAwMjAwMDAgKi8NCiNkZWZpbmUgQURDX0NSMV9QREkgICAgICAgICAgICAgICAgICAgICAgICAgIEFEQ19DUjFfUERJX01zayAgICAgICAgICAgICAgICAgICAvKiE8IEFEQyBwb3dlciBkb3duIGR1cmluZyBpZGxlIHBoYXNlICovDQoNCiNkZWZpbmUgQURDX0NSMV9KQVdERU5fUG9zICAgICAgICAgICAgICAgICAgICgyMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgQURDX0NSMV9KQVdERU5fTXNrICAgICAgICAgICAgICAgICAgICgweDFVTCA8PCBBRENfQ1IxX0pBV0RFTl9Qb3MpICAgICAgLyohPCAweDAwNDAwMDAwICovDQojZGVmaW5lIEFEQ19DUjFfSkFXREVOICAgICAgICAgICAgICAgICAgICAgICBBRENfQ1IxX0pBV0RFTl9Nc2sgICAgICAgICAgICAgICAgLyohPCBBREMgYW5hbG9nIHdhdGNoZG9nIDEgZW5hYmxlIG9uIHNjb3BlIEFEQyBncm91cCBpbmplY3RlZCAqLw0KI2RlZmluZSBBRENfQ1IxX0FXREVOX1BvcyAgICAgICAgICAgICAgICAgICAgKDIzVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBBRENfQ1IxX0FXREVOX01zayAgICAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IEFEQ19DUjFfQVdERU5fUG9zKSAgICAgICAvKiE8IDB4MDA4MDAwMDAgKi8NCiNkZWZpbmUgQURDX0NSMV9BV0RFTiAgICAgICAgICAgICAgICAgICAgICAgIEFEQ19DUjFfQVdERU5fTXNrICAgICAgICAgICAgICAgICAvKiE8IEFEQyBhbmFsb2cgd2F0Y2hkb2cgMSBlbmFibGUgb24gc2NvcGUgQURDIGdyb3VwIHJlZ3VsYXIgKi8NCg0KI2RlZmluZSBBRENfQ1IxX1JFU19Qb3MgICAgICAgICAgICAgICAgICAgICAgKDI0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBBRENfQ1IxX1JFU19Nc2sgICAgICAgICAgICAgICAgICAgICAgKDB4M1VMIDw8IEFEQ19DUjFfUkVTX1BvcykgICAgICAgICAvKiE8IDB4MDMwMDAwMDAgKi8NCiNkZWZpbmUgQURDX0NSMV9SRVMgICAgICAgICAgICAgICAgICAgICAgICAgIEFEQ19DUjFfUkVTX01zayAgICAgICAgICAgICAgICAgICAvKiE8IEFEQyByZXNvbHV0aW9uICovDQojZGVmaW5lIEFEQ19DUjFfUkVTXzAgICAgICAgICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgQURDX0NSMV9SRVNfUG9zKSAgICAgICAgIC8qITwgMHgwMTAwMDAwMCAqLw0KI2RlZmluZSBBRENfQ1IxX1JFU18xICAgICAgICAgICAgICAgICAgICAgICAgKDB4MlVMIDw8IEFEQ19DUjFfUkVTX1BvcykgICAgICAgICAvKiE8IDB4MDIwMDAwMDAgKi8NCg0KI2RlZmluZSBBRENfQ1IxX09WUklFX1BvcyAgICAgICAgICAgICAgICAgICAgKDI2VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBBRENfQ1IxX09WUklFX01zayAgICAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IEFEQ19DUjFfT1ZSSUVfUG9zKSAgICAgICAvKiE8IDB4MDQwMDAwMDAgKi8NCiNkZWZpbmUgQURDX0NSMV9PVlJJRSAgICAgICAgICAgICAgICAgICAgICAgIEFEQ19DUjFfT1ZSSUVfTXNrICAgICAgICAgICAgICAgICAvKiE8IEFEQyBncm91cCByZWd1bGFyIG92ZXJydW4gaW50ZXJydXB0ICovDQoNCi8qIExlZ2FjeSBkZWZpbmVzICovDQojZGVmaW5lICBBRENfQ1IxX0VPQ0lFICAgICAgICAgICAgICAgICAgICAgICAoQURDX0NSMV9FT0NTSUUpDQojZGVmaW5lICBBRENfQ1IxX0pFT0NJRSAgICAgICAgICAgICAgICAgICAgICAoQURDX0NSMV9KRU9TSUUpDQoNCi8qKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgQURDX0NSMiByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIEFEQ19DUjJfQURPTl9Qb3MgICAgICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEFEQ19DUjJfQURPTl9Nc2sgICAgICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgQURDX0NSMl9BRE9OX1BvcykgICAgICAgIC8qITwgMHgwMDAwMDAwMSAqLw0KI2RlZmluZSBBRENfQ1IyX0FET04gICAgICAgICAgICAgICAgICAgICAgICAgQURDX0NSMl9BRE9OX01zayAgICAgICAgICAgICAgICAgIC8qITwgQURDIGVuYWJsZSAqLw0KI2RlZmluZSBBRENfQ1IyX0NPTlRfUG9zICAgICAgICAgICAgICAgICAgICAgKDFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBBRENfQ1IyX0NPTlRfTXNrICAgICAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IEFEQ19DUjJfQ09OVF9Qb3MpICAgICAgICAvKiE8IDB4MDAwMDAwMDIgKi8NCiNkZWZpbmUgQURDX0NSMl9DT05UICAgICAgICAgICAgICAgICAgICAgICAgIEFEQ19DUjJfQ09OVF9Nc2sgICAgICAgICAgICAgICAgICAvKiE8IEFEQyBncm91cCByZWd1bGFyIGNvbnRpbnVvdXMgY29udmVyc2lvbiBtb2RlICovDQojZGVmaW5lIEFEQ19DUjJfQ0ZHX1BvcyAgICAgICAgICAgICAgICAgICAgICAoMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEFEQ19DUjJfQ0ZHX01zayAgICAgICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgQURDX0NSMl9DRkdfUG9zKSAgICAgICAgIC8qITwgMHgwMDAwMDAwNCAqLw0KI2RlZmluZSBBRENfQ1IyX0NGRyAgICAgICAgICAgICAgICAgICAgICAgICAgQURDX0NSMl9DRkdfTXNrICAgICAgICAgICAgICAgICAgIC8qITwgQURDIGNoYW5uZWxzIGJhbmsgc2VsZWN0aW9uICovDQoNCiNkZWZpbmUgQURDX0NSMl9ERUxTX1BvcyAgICAgICAgICAgICAgICAgICAgICg0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgQURDX0NSMl9ERUxTX01zayAgICAgICAgICAgICAgICAgICAgICgweDdVTCA8PCBBRENfQ1IyX0RFTFNfUG9zKSAgICAgICAgLyohPCAweDAwMDAwMDcwICovDQojZGVmaW5lIEFEQ19DUjJfREVMUyAgICAgICAgICAgICAgICAgICAgICAgICBBRENfQ1IyX0RFTFNfTXNrICAgICAgICAgICAgICAgICAgLyohPCBBREMgYXV0byBkZWxheSBzZWxlY3Rpb24gKi8NCiNkZWZpbmUgQURDX0NSMl9ERUxTXzAgICAgICAgICAgICAgICAgICAgICAgICgweDFVTCA8PCBBRENfQ1IyX0RFTFNfUG9zKSAgICAgICAgLyohPCAweDAwMDAwMDEwICovDQojZGVmaW5lIEFEQ19DUjJfREVMU18xICAgICAgICAgICAgICAgICAgICAgICAoMHgyVUwgPDwgQURDX0NSMl9ERUxTX1BvcykgICAgICAgIC8qITwgMHgwMDAwMDAyMCAqLw0KI2RlZmluZSBBRENfQ1IyX0RFTFNfMiAgICAgICAgICAgICAgICAgICAgICAgKDB4NFVMIDw8IEFEQ19DUjJfREVMU19Qb3MpICAgICAgICAvKiE8IDB4MDAwMDAwNDAgKi8NCg0KI2RlZmluZSBBRENfQ1IyX0RNQV9Qb3MgICAgICAgICAgICAgICAgICAgICAgKDhVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBBRENfQ1IyX0RNQV9Nc2sgICAgICAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IEFEQ19DUjJfRE1BX1BvcykgICAgICAgICAvKiE8IDB4MDAwMDAxMDAgKi8NCiNkZWZpbmUgQURDX0NSMl9ETUEgICAgICAgICAgICAgICAgICAgICAgICAgIEFEQ19DUjJfRE1BX01zayAgICAgICAgICAgICAgICAgICAvKiE8IEFEQyBETUEgdHJhbnNmZXIgZW5hYmxlICovDQojZGVmaW5lIEFEQ19DUjJfRERTX1BvcyAgICAgICAgICAgICAgICAgICAgICAoOVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEFEQ19DUjJfRERTX01zayAgICAgICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgQURDX0NSMl9ERFNfUG9zKSAgICAgICAgIC8qITwgMHgwMDAwMDIwMCAqLw0KI2RlZmluZSBBRENfQ1IyX0REUyAgICAgICAgICAgICAgICAgICAgICAgICAgQURDX0NSMl9ERFNfTXNrICAgICAgICAgICAgICAgICAgIC8qITwgQURDIERNQSB0cmFuc2ZlciBjb25maWd1cmF0aW9uICovDQojZGVmaW5lIEFEQ19DUjJfRU9DU19Qb3MgICAgICAgICAgICAgICAgICAgICAoMTBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEFEQ19DUjJfRU9DU19Nc2sgICAgICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgQURDX0NSMl9FT0NTX1BvcykgICAgICAgIC8qITwgMHgwMDAwMDQwMCAqLw0KI2RlZmluZSBBRENfQ1IyX0VPQ1MgICAgICAgICAgICAgICAgICAgICAgICAgQURDX0NSMl9FT0NTX01zayAgICAgICAgICAgICAgICAgIC8qITwgQURDIGVuZCBvZiB1bml0YXJ5IG9yIGVuZCBvZiBzZXF1ZW5jZSBjb252ZXJzaW9ucyBzZWxlY3Rpb24gKi8NCiNkZWZpbmUgQURDX0NSMl9BTElHTl9Qb3MgICAgICAgICAgICAgICAgICAgICgxMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgQURDX0NSMl9BTElHTl9Nc2sgICAgICAgICAgICAgICAgICAgICgweDFVTCA8PCBBRENfQ1IyX0FMSUdOX1BvcykgICAgICAgLyohPCAweDAwMDAwODAwICovDQojZGVmaW5lIEFEQ19DUjJfQUxJR04gICAgICAgICAgICAgICAgICAgICAgICBBRENfQ1IyX0FMSUdOX01zayAgICAgICAgICAgICAgICAgLyohPCBBREMgZGF0YSBhbGlnbmVtZW50ICovDQoNCiNkZWZpbmUgQURDX0NSMl9KRVhUU0VMX1BvcyAgICAgICAgICAgICAgICAgICgxNlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgQURDX0NSMl9KRVhUU0VMX01zayAgICAgICAgICAgICAgICAgICgweEZVTCA8PCBBRENfQ1IyX0pFWFRTRUxfUG9zKSAgICAgLyohPCAweDAwMEYwMDAwICovDQojZGVmaW5lIEFEQ19DUjJfSkVYVFNFTCAgICAgICAgICAgICAgICAgICAgICBBRENfQ1IyX0pFWFRTRUxfTXNrICAgICAgICAgICAgICAgLyohPCBBREMgZ3JvdXAgaW5qZWN0ZWQgZXh0ZXJuYWwgdHJpZ2dlciBzb3VyY2UgKi8NCiNkZWZpbmUgQURDX0NSMl9KRVhUU0VMXzAgICAgICAgICAgICAgICAgICAgICgweDFVTCA8PCBBRENfQ1IyX0pFWFRTRUxfUG9zKSAgICAgLyohPCAweDAwMDEwMDAwICovDQojZGVmaW5lIEFEQ19DUjJfSkVYVFNFTF8xICAgICAgICAgICAgICAgICAgICAoMHgyVUwgPDwgQURDX0NSMl9KRVhUU0VMX1BvcykgICAgIC8qITwgMHgwMDAyMDAwMCAqLw0KI2RlZmluZSBBRENfQ1IyX0pFWFRTRUxfMiAgICAgICAgICAgICAgICAgICAgKDB4NFVMIDw8IEFEQ19DUjJfSkVYVFNFTF9Qb3MpICAgICAvKiE8IDB4MDAwNDAwMDAgKi8NCiNkZWZpbmUgQURDX0NSMl9KRVhUU0VMXzMgICAgICAgICAgICAgICAgICAgICgweDhVTCA8PCBBRENfQ1IyX0pFWFRTRUxfUG9zKSAgICAgLyohPCAweDAwMDgwMDAwICovDQoNCiNkZWZpbmUgQURDX0NSMl9KRVhURU5fUG9zICAgICAgICAgICAgICAgICAgICgyMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgQURDX0NSMl9KRVhURU5fTXNrICAgICAgICAgICAgICAgICAgICgweDNVTCA8PCBBRENfQ1IyX0pFWFRFTl9Qb3MpICAgICAgLyohPCAweDAwMzAwMDAwICovDQojZGVmaW5lIEFEQ19DUjJfSkVYVEVOICAgICAgICAgICAgICAgICAgICAgICBBRENfQ1IyX0pFWFRFTl9Nc2sgICAgICAgICAgICAgICAgLyohPCBBREMgZ3JvdXAgaW5qZWN0ZWQgZXh0ZXJuYWwgdHJpZ2dlciBwb2xhcml0eSAqLw0KI2RlZmluZSBBRENfQ1IyX0pFWFRFTl8wICAgICAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IEFEQ19DUjJfSkVYVEVOX1BvcykgICAgICAvKiE8IDB4MDAxMDAwMDAgKi8NCiNkZWZpbmUgQURDX0NSMl9KRVhURU5fMSAgICAgICAgICAgICAgICAgICAgICgweDJVTCA8PCBBRENfQ1IyX0pFWFRFTl9Qb3MpICAgICAgLyohPCAweDAwMjAwMDAwICovDQoNCiNkZWZpbmUgQURDX0NSMl9KU1dTVEFSVF9Qb3MgICAgICAgICAgICAgICAgICgyMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgQURDX0NSMl9KU1dTVEFSVF9Nc2sgICAgICAgICAgICAgICAgICgweDFVTCA8PCBBRENfQ1IyX0pTV1NUQVJUX1BvcykgICAgLyohPCAweDAwNDAwMDAwICovDQojZGVmaW5lIEFEQ19DUjJfSlNXU1RBUlQgICAgICAgICAgICAgICAgICAgICBBRENfQ1IyX0pTV1NUQVJUX01zayAgICAgICAgICAgICAgLyohPCBBREMgZ3JvdXAgaW5qZWN0ZWQgY29udmVyc2lvbiBzdGFydCAqLw0KDQojZGVmaW5lIEFEQ19DUjJfRVhUU0VMX1BvcyAgICAgICAgICAgICAgICAgICAoMjRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEFEQ19DUjJfRVhUU0VMX01zayAgICAgICAgICAgICAgICAgICAoMHhGVUwgPDwgQURDX0NSMl9FWFRTRUxfUG9zKSAgICAgIC8qITwgMHgwRjAwMDAwMCAqLw0KI2RlZmluZSBBRENfQ1IyX0VYVFNFTCAgICAgICAgICAgICAgICAgICAgICAgQURDX0NSMl9FWFRTRUxfTXNrICAgICAgICAgICAgICAgIC8qITwgQURDIGdyb3VwIHJlZ3VsYXIgZXh0ZXJuYWwgdHJpZ2dlciBzb3VyY2UgKi8NCiNkZWZpbmUgQURDX0NSMl9FWFRTRUxfMCAgICAgICAgICAgICAgICAgICAgICgweDFVTCA8PCBBRENfQ1IyX0VYVFNFTF9Qb3MpICAgICAgLyohPCAweDAxMDAwMDAwICovDQojZGVmaW5lIEFEQ19DUjJfRVhUU0VMXzEgICAgICAgICAgICAgICAgICAgICAoMHgyVUwgPDwgQURDX0NSMl9FWFRTRUxfUG9zKSAgICAgIC8qITwgMHgwMjAwMDAwMCAqLw0KI2RlZmluZSBBRENfQ1IyX0VYVFNFTF8yICAgICAgICAgICAgICAgICAgICAgKDB4NFVMIDw8IEFEQ19DUjJfRVhUU0VMX1BvcykgICAgICAvKiE8IDB4MDQwMDAwMDAgKi8NCiNkZWZpbmUgQURDX0NSMl9FWFRTRUxfMyAgICAgICAgICAgICAgICAgICAgICgweDhVTCA8PCBBRENfQ1IyX0VYVFNFTF9Qb3MpICAgICAgLyohPCAweDA4MDAwMDAwICovDQoNCiNkZWZpbmUgQURDX0NSMl9FWFRFTl9Qb3MgICAgICAgICAgICAgICAgICAgICgyOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgQURDX0NSMl9FWFRFTl9Nc2sgICAgICAgICAgICAgICAgICAgICgweDNVTCA8PCBBRENfQ1IyX0VYVEVOX1BvcykgICAgICAgLyohPCAweDMwMDAwMDAwICovDQojZGVmaW5lIEFEQ19DUjJfRVhURU4gICAgICAgICAgICAgICAgICAgICAgICBBRENfQ1IyX0VYVEVOX01zayAgICAgICAgICAgICAgICAgLyohPCBBREMgZ3JvdXAgcmVndWxhciBleHRlcm5hbCB0cmlnZ2VyIHBvbGFyaXR5ICovDQojZGVmaW5lIEFEQ19DUjJfRVhURU5fMCAgICAgICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgQURDX0NSMl9FWFRFTl9Qb3MpICAgICAgIC8qITwgMHgxMDAwMDAwMCAqLw0KI2RlZmluZSBBRENfQ1IyX0VYVEVOXzEgICAgICAgICAgICAgICAgICAgICAgKDB4MlVMIDw8IEFEQ19DUjJfRVhURU5fUG9zKSAgICAgICAvKiE8IDB4MjAwMDAwMDAgKi8NCg0KI2RlZmluZSBBRENfQ1IyX1NXU1RBUlRfUG9zICAgICAgICAgICAgICAgICAgKDMwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBBRENfQ1IyX1NXU1RBUlRfTXNrICAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IEFEQ19DUjJfU1dTVEFSVF9Qb3MpICAgICAvKiE8IDB4NDAwMDAwMDAgKi8NCiNkZWZpbmUgQURDX0NSMl9TV1NUQVJUICAgICAgICAgICAgICAgICAgICAgIEFEQ19DUjJfU1dTVEFSVF9Nc2sgICAgICAgICAgICAgICAvKiE8IEFEQyBncm91cCByZWd1bGFyIGNvbnZlcnNpb24gc3RhcnQgKi8NCg0KLyoqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIEFEQ19TTVBSMSByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgQURDX1NNUFIxX1NNUDIwX1BvcyAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgQURDX1NNUFIxX1NNUDIwX01zayAgICAgICAgICAgICAgICAgICgweDdVTCA8PCBBRENfU01QUjFfU01QMjBfUG9zKSAgICAgLyohPCAweDAwMDAwMDA3ICovDQojZGVmaW5lIEFEQ19TTVBSMV9TTVAyMCAgICAgICAgICAgICAgICAgICAgICBBRENfU01QUjFfU01QMjBfTXNrICAgICAgICAgICAgICAgLyohPCBBREMgY2hhbm5lbCAyMCBzYW1wbGluZyB0aW1lIHNlbGVjdGlvbiAqLw0KI2RlZmluZSBBRENfU01QUjFfU01QMjBfMCAgICAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IEFEQ19TTVBSMV9TTVAyMF9Qb3MpICAgICAvKiE8IDB4MDAwMDAwMDEgKi8NCiNkZWZpbmUgQURDX1NNUFIxX1NNUDIwXzEgICAgICAgICAgICAgICAgICAgICgweDJVTCA8PCBBRENfU01QUjFfU01QMjBfUG9zKSAgICAgLyohPCAweDAwMDAwMDAyICovDQojZGVmaW5lIEFEQ19TTVBSMV9TTVAyMF8yICAgICAgICAgICAgICAgICAgICAoMHg0VUwgPDwgQURDX1NNUFIxX1NNUDIwX1BvcykgICAgIC8qITwgMHgwMDAwMDAwNCAqLw0KDQojZGVmaW5lIEFEQ19TTVBSMV9TTVAyMV9Qb3MgICAgICAgICAgICAgICAgICAoM1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEFEQ19TTVBSMV9TTVAyMV9Nc2sgICAgICAgICAgICAgICAgICAoMHg3VUwgPDwgQURDX1NNUFIxX1NNUDIxX1BvcykgICAgIC8qITwgMHgwMDAwMDAzOCAqLw0KI2RlZmluZSBBRENfU01QUjFfU01QMjEgICAgICAgICAgICAgICAgICAgICAgQURDX1NNUFIxX1NNUDIxX01zayAgICAgICAgICAgICAgIC8qITwgQURDIGNoYW5uZWwgMjEgc2FtcGxpbmcgdGltZSBzZWxlY3Rpb24gKi8NCiNkZWZpbmUgQURDX1NNUFIxX1NNUDIxXzAgICAgICAgICAgICAgICAgICAgICgweDFVTCA8PCBBRENfU01QUjFfU01QMjFfUG9zKSAgICAgLyohPCAweDAwMDAwMDA4ICovDQojZGVmaW5lIEFEQ19TTVBSMV9TTVAyMV8xICAgICAgICAgICAgICAgICAgICAoMHgyVUwgPDwgQURDX1NNUFIxX1NNUDIxX1BvcykgICAgIC8qITwgMHgwMDAwMDAxMCAqLw0KI2RlZmluZSBBRENfU01QUjFfU01QMjFfMiAgICAgICAgICAgICAgICAgICAgKDB4NFVMIDw8IEFEQ19TTVBSMV9TTVAyMV9Qb3MpICAgICAvKiE8IDB4MDAwMDAwMjAgKi8NCg0KI2RlZmluZSBBRENfU01QUjFfU01QMjJfUG9zICAgICAgICAgICAgICAgICAgKDZVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBBRENfU01QUjFfU01QMjJfTXNrICAgICAgICAgICAgICAgICAgKDB4N1VMIDw8IEFEQ19TTVBSMV9TTVAyMl9Qb3MpICAgICAvKiE8IDB4MDAwMDAxQzAgKi8NCiNkZWZpbmUgQURDX1NNUFIxX1NNUDIyICAgICAgICAgICAgICAgICAgICAgIEFEQ19TTVBSMV9TTVAyMl9Nc2sgICAgICAgICAgICAgICAvKiE8IEFEQyBjaGFubmVsIDIyIHNhbXBsaW5nIHRpbWUgc2VsZWN0aW9uICovDQojZGVmaW5lIEFEQ19TTVBSMV9TTVAyMl8wICAgICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgQURDX1NNUFIxX1NNUDIyX1BvcykgICAgIC8qITwgMHgwMDAwMDA0MCAqLw0KI2RlZmluZSBBRENfU01QUjFfU01QMjJfMSAgICAgICAgICAgICAgICAgICAgKDB4MlVMIDw8IEFEQ19TTVBSMV9TTVAyMl9Qb3MpICAgICAvKiE8IDB4MDAwMDAwODAgKi8NCiNkZWZpbmUgQURDX1NNUFIxX1NNUDIyXzIgICAgICAgICAgICAgICAgICAgICgweDRVTCA8PCBBRENfU01QUjFfU01QMjJfUG9zKSAgICAgLyohPCAweDAwMDAwMTAwICovDQoNCiNkZWZpbmUgQURDX1NNUFIxX1NNUDIzX1BvcyAgICAgICAgICAgICAgICAgICg5VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgQURDX1NNUFIxX1NNUDIzX01zayAgICAgICAgICAgICAgICAgICgweDdVTCA8PCBBRENfU01QUjFfU01QMjNfUG9zKSAgICAgLyohPCAweDAwMDAwRTAwICovDQojZGVmaW5lIEFEQ19TTVBSMV9TTVAyMyAgICAgICAgICAgICAgICAgICAgICBBRENfU01QUjFfU01QMjNfTXNrICAgICAgICAgICAgICAgLyohPCBBREMgY2hhbm5lbCAyMyBzYW1wbGluZyB0aW1lIHNlbGVjdGlvbiAqLw0KI2RlZmluZSBBRENfU01QUjFfU01QMjNfMCAgICAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IEFEQ19TTVBSMV9TTVAyM19Qb3MpICAgICAvKiE8IDB4MDAwMDAyMDAgKi8NCiNkZWZpbmUgQURDX1NNUFIxX1NNUDIzXzEgICAgICAgICAgICAgICAgICAgICgweDJVTCA8PCBBRENfU01QUjFfU01QMjNfUG9zKSAgICAgLyohPCAweDAwMDAwNDAwICovDQojZGVmaW5lIEFEQ19TTVBSMV9TTVAyM18yICAgICAgICAgICAgICAgICAgICAoMHg0VUwgPDwgQURDX1NNUFIxX1NNUDIzX1BvcykgICAgIC8qITwgMHgwMDAwMDgwMCAqLw0KDQojZGVmaW5lIEFEQ19TTVBSMV9TTVAyNF9Qb3MgICAgICAgICAgICAgICAgICAoMTJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEFEQ19TTVBSMV9TTVAyNF9Nc2sgICAgICAgICAgICAgICAgICAoMHg3VUwgPDwgQURDX1NNUFIxX1NNUDI0X1BvcykgICAgIC8qITwgMHgwMDAwNzAwMCAqLw0KI2RlZmluZSBBRENfU01QUjFfU01QMjQgICAgICAgICAgICAgICAgICAgICAgQURDX1NNUFIxX1NNUDI0X01zayAgICAgICAgICAgICAgIC8qITwgQURDIGNoYW5uZWwgMjQgc2FtcGxpbmcgdGltZSBzZWxlY3Rpb24gKi8NCiNkZWZpbmUgQURDX1NNUFIxX1NNUDI0XzAgICAgICAgICAgICAgICAgICAgICgweDFVTCA8PCBBRENfU01QUjFfU01QMjRfUG9zKSAgICAgLyohPCAweDAwMDAxMDAwICovDQojZGVmaW5lIEFEQ19TTVBSMV9TTVAyNF8xICAgICAgICAgICAgICAgICAgICAoMHgyVUwgPDwgQURDX1NNUFIxX1NNUDI0X1BvcykgICAgIC8qITwgMHgwMDAwMjAwMCAqLw0KI2RlZmluZSBBRENfU01QUjFfU01QMjRfMiAgICAgICAgICAgICAgICAgICAgKDB4NFVMIDw8IEFEQ19TTVBSMV9TTVAyNF9Qb3MpICAgICAvKiE8IDB4MDAwMDQwMDAgKi8NCg0KI2RlZmluZSBBRENfU01QUjFfU01QMjVfUG9zICAgICAgICAgICAgICAgICAgKDE1VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBBRENfU01QUjFfU01QMjVfTXNrICAgICAgICAgICAgICAgICAgKDB4N1VMIDw8IEFEQ19TTVBSMV9TTVAyNV9Qb3MpICAgICAvKiE8IDB4MDAwMzgwMDAgKi8NCiNkZWZpbmUgQURDX1NNUFIxX1NNUDI1ICAgICAgICAgICAgICAgICAgICAgIEFEQ19TTVBSMV9TTVAyNV9Nc2sgICAgICAgICAgICAgICAvKiE8IEFEQyBjaGFubmVsIDI1IHNhbXBsaW5nIHRpbWUgc2VsZWN0aW9uICovDQojZGVmaW5lIEFEQ19TTVBSMV9TTVAyNV8wICAgICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgQURDX1NNUFIxX1NNUDI1X1BvcykgICAgIC8qITwgMHgwMDAwODAwMCAqLw0KI2RlZmluZSBBRENfU01QUjFfU01QMjVfMSAgICAgICAgICAgICAgICAgICAgKDB4MlVMIDw8IEFEQ19TTVBSMV9TTVAyNV9Qb3MpICAgICAvKiE8IDB4MDAwMTAwMDAgKi8NCiNkZWZpbmUgQURDX1NNUFIxX1NNUDI1XzIgICAgICAgICAgICAgICAgICAgICgweDRVTCA8PCBBRENfU01QUjFfU01QMjVfUG9zKSAgICAgLyohPCAweDAwMDIwMDAwICovDQoNCiNkZWZpbmUgQURDX1NNUFIxX1NNUDI2X1BvcyAgICAgICAgICAgICAgICAgICgxOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgQURDX1NNUFIxX1NNUDI2X01zayAgICAgICAgICAgICAgICAgICgweDdVTCA8PCBBRENfU01QUjFfU01QMjZfUG9zKSAgICAgLyohPCAweDAwMUMwMDAwICovDQojZGVmaW5lIEFEQ19TTVBSMV9TTVAyNiAgICAgICAgICAgICAgICAgICAgICBBRENfU01QUjFfU01QMjZfTXNrICAgICAgICAgICAgICAgLyohPCBBREMgY2hhbm5lbCAyNiBzYW1wbGluZyB0aW1lIHNlbGVjdGlvbiAqLw0KI2RlZmluZSBBRENfU01QUjFfU01QMjZfMCAgICAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IEFEQ19TTVBSMV9TTVAyNl9Qb3MpICAgICAvKiE8IDB4MDAwNDAwMDAgKi8NCiNkZWZpbmUgQURDX1NNUFIxX1NNUDI2XzEgICAgICAgICAgICAgICAgICAgICgweDJVTCA8PCBBRENfU01QUjFfU01QMjZfUG9zKSAgICAgLyohPCAweDAwMDgwMDAwICovDQojZGVmaW5lIEFEQ19TTVBSMV9TTVAyNl8yICAgICAgICAgICAgICAgICAgICAoMHg0VUwgPDwgQURDX1NNUFIxX1NNUDI2X1BvcykgICAgIC8qITwgMHgwMDEwMDAwMCAqLw0KDQojZGVmaW5lIEFEQ19TTVBSMV9TTVAyN19Qb3MgICAgICAgICAgICAgICAgICAoMjFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEFEQ19TTVBSMV9TTVAyN19Nc2sgICAgICAgICAgICAgICAgICAoMHg3VUwgPDwgQURDX1NNUFIxX1NNUDI3X1BvcykgICAgIC8qITwgMHgwMEUwMDAwMCAqLw0KI2RlZmluZSBBRENfU01QUjFfU01QMjcgICAgICAgICAgICAgICAgICAgICAgQURDX1NNUFIxX1NNUDI3X01zayAgICAgICAgICAgICAgIC8qITwgQURDIGNoYW5uZWwgMjcgc2FtcGxpbmcgdGltZSBzZWxlY3Rpb24gKi8NCiNkZWZpbmUgQURDX1NNUFIxX1NNUDI3XzAgICAgICAgICAgICAgICAgICAgICgweDFVTCA8PCBBRENfU01QUjFfU01QMjdfUG9zKSAgICAgLyohPCAweDAwMjAwMDAwICovDQojZGVmaW5lIEFEQ19TTVBSMV9TTVAyN18xICAgICAgICAgICAgICAgICAgICAoMHgyVUwgPDwgQURDX1NNUFIxX1NNUDI3X1BvcykgICAgIC8qITwgMHgwMDQwMDAwMCAqLw0KI2RlZmluZSBBRENfU01QUjFfU01QMjdfMiAgICAgICAgICAgICAgICAgICAgKDB4NFVMIDw8IEFEQ19TTVBSMV9TTVAyN19Qb3MpICAgICAvKiE8IDB4MDA4MDAwMDAgKi8NCg0KI2RlZmluZSBBRENfU01QUjFfU01QMjhfUG9zICAgICAgICAgICAgICAgICAgKDI0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBBRENfU01QUjFfU01QMjhfTXNrICAgICAgICAgICAgICAgICAgKDB4N1VMIDw8IEFEQ19TTVBSMV9TTVAyOF9Qb3MpICAgICAvKiE8IDB4MDcwMDAwMDAgKi8NCiNkZWZpbmUgQURDX1NNUFIxX1NNUDI4ICAgICAgICAgICAgICAgICAgICAgIEFEQ19TTVBSMV9TTVAyOF9Nc2sgICAgICAgICAgICAgICAvKiE8IEFEQyBjaGFubmVsIDI4IHNhbXBsaW5nIHRpbWUgc2VsZWN0aW9uICovDQojZGVmaW5lIEFEQ19TTVBSMV9TTVAyOF8wICAgICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgQURDX1NNUFIxX1NNUDI4X1BvcykgICAgIC8qITwgMHgwMTAwMDAwMCAqLw0KI2RlZmluZSBBRENfU01QUjFfU01QMjhfMSAgICAgICAgICAgICAgICAgICAgKDB4MlVMIDw8IEFEQ19TTVBSMV9TTVAyOF9Qb3MpICAgICAvKiE8IDB4MDIwMDAwMDAgKi8NCiNkZWZpbmUgQURDX1NNUFIxX1NNUDI4XzIgICAgICAgICAgICAgICAgICAgICgweDRVTCA8PCBBRENfU01QUjFfU01QMjhfUG9zKSAgICAgLyohPCAweDA0MDAwMDAwICovDQoNCiNkZWZpbmUgQURDX1NNUFIxX1NNUDI5X1BvcyAgICAgICAgICAgICAgICAgICgyN1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgQURDX1NNUFIxX1NNUDI5X01zayAgICAgICAgICAgICAgICAgICgweDdVTCA8PCBBRENfU01QUjFfU01QMjlfUG9zKSAgICAgLyohPCAweDM4MDAwMDAwICovDQojZGVmaW5lIEFEQ19TTVBSMV9TTVAyOSAgICAgICAgICAgICAgICAgICAgICBBRENfU01QUjFfU01QMjlfTXNrICAgICAgICAgICAgICAgLyohPCBBREMgY2hhbm5lbCAyOSBzYW1wbGluZyB0aW1lIHNlbGVjdGlvbiAqLw0KI2RlZmluZSBBRENfU01QUjFfU01QMjlfMCAgICAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IEFEQ19TTVBSMV9TTVAyOV9Qb3MpICAgICAvKiE8IDB4MDgwMDAwMDAgKi8NCiNkZWZpbmUgQURDX1NNUFIxX1NNUDI5XzEgICAgICAgICAgICAgICAgICAgICgweDJVTCA8PCBBRENfU01QUjFfU01QMjlfUG9zKSAgICAgLyohPCAweDEwMDAwMDAwICovDQojZGVmaW5lIEFEQ19TTVBSMV9TTVAyOV8yICAgICAgICAgICAgICAgICAgICAoMHg0VUwgPDwgQURDX1NNUFIxX1NNUDI5X1BvcykgICAgIC8qITwgMHgyMDAwMDAwMCAqLw0KDQovKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgQURDX1NNUFIyIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBBRENfU01QUjJfU01QMTBfUG9zICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBBRENfU01QUjJfU01QMTBfTXNrICAgICAgICAgICAgICAgICAgKDB4N1VMIDw8IEFEQ19TTVBSMl9TTVAxMF9Qb3MpICAgICAvKiE8IDB4MDAwMDAwMDcgKi8NCiNkZWZpbmUgQURDX1NNUFIyX1NNUDEwICAgICAgICAgICAgICAgICAgICAgIEFEQ19TTVBSMl9TTVAxMF9Nc2sgICAgICAgICAgICAgICAvKiE8IEFEQyBjaGFubmVsIDEwIHNhbXBsaW5nIHRpbWUgc2VsZWN0aW9uICovDQojZGVmaW5lIEFEQ19TTVBSMl9TTVAxMF8wICAgICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgQURDX1NNUFIyX1NNUDEwX1BvcykgICAgIC8qITwgMHgwMDAwMDAwMSAqLw0KI2RlZmluZSBBRENfU01QUjJfU01QMTBfMSAgICAgICAgICAgICAgICAgICAgKDB4MlVMIDw8IEFEQ19TTVBSMl9TTVAxMF9Qb3MpICAgICAvKiE8IDB4MDAwMDAwMDIgKi8NCiNkZWZpbmUgQURDX1NNUFIyX1NNUDEwXzIgICAgICAgICAgICAgICAgICAgICgweDRVTCA8PCBBRENfU01QUjJfU01QMTBfUG9zKSAgICAgLyohPCAweDAwMDAwMDA0ICovDQoNCiNkZWZpbmUgQURDX1NNUFIyX1NNUDExX1BvcyAgICAgICAgICAgICAgICAgICgzVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgQURDX1NNUFIyX1NNUDExX01zayAgICAgICAgICAgICAgICAgICgweDdVTCA8PCBBRENfU01QUjJfU01QMTFfUG9zKSAgICAgLyohPCAweDAwMDAwMDM4ICovDQojZGVmaW5lIEFEQ19TTVBSMl9TTVAxMSAgICAgICAgICAgICAgICAgICAgICBBRENfU01QUjJfU01QMTFfTXNrICAgICAgICAgICAgICAgLyohPCBBREMgY2hhbm5lbCAxMSBzYW1wbGluZyB0aW1lIHNlbGVjdGlvbiAqLw0KI2RlZmluZSBBRENfU01QUjJfU01QMTFfMCAgICAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IEFEQ19TTVBSMl9TTVAxMV9Qb3MpICAgICAvKiE8IDB4MDAwMDAwMDggKi8NCiNkZWZpbmUgQURDX1NNUFIyX1NNUDExXzEgICAgICAgICAgICAgICAgICAgICgweDJVTCA8PCBBRENfU01QUjJfU01QMTFfUG9zKSAgICAgLyohPCAweDAwMDAwMDEwICovDQojZGVmaW5lIEFEQ19TTVBSMl9TTVAxMV8yICAgICAgICAgICAgICAgICAgICAoMHg0VUwgPDwgQURDX1NNUFIyX1NNUDExX1BvcykgICAgIC8qITwgMHgwMDAwMDAyMCAqLw0KDQojZGVmaW5lIEFEQ19TTVBSMl9TTVAxMl9Qb3MgICAgICAgICAgICAgICAgICAoNlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEFEQ19TTVBSMl9TTVAxMl9Nc2sgICAgICAgICAgICAgICAgICAoMHg3VUwgPDwgQURDX1NNUFIyX1NNUDEyX1BvcykgICAgIC8qITwgMHgwMDAwMDFDMCAqLw0KI2RlZmluZSBBRENfU01QUjJfU01QMTIgICAgICAgICAgICAgICAgICAgICAgQURDX1NNUFIyX1NNUDEyX01zayAgICAgICAgICAgICAgIC8qITwgQURDIGNoYW5uZWwgMTIgc2FtcGxpbmcgdGltZSBzZWxlY3Rpb24gKi8NCiNkZWZpbmUgQURDX1NNUFIyX1NNUDEyXzAgICAgICAgICAgICAgICAgICAgICgweDFVTCA8PCBBRENfU01QUjJfU01QMTJfUG9zKSAgICAgLyohPCAweDAwMDAwMDQwICovDQojZGVmaW5lIEFEQ19TTVBSMl9TTVAxMl8xICAgICAgICAgICAgICAgICAgICAoMHgyVUwgPDwgQURDX1NNUFIyX1NNUDEyX1BvcykgICAgIC8qITwgMHgwMDAwMDA4MCAqLw0KI2RlZmluZSBBRENfU01QUjJfU01QMTJfMiAgICAgICAgICAgICAgICAgICAgKDB4NFVMIDw8IEFEQ19TTVBSMl9TTVAxMl9Qb3MpICAgICAvKiE8IDB4MDAwMDAxMDAgKi8NCg0KI2RlZmluZSBBRENfU01QUjJfU01QMTNfUG9zICAgICAgICAgICAgICAgICAgKDlVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBBRENfU01QUjJfU01QMTNfTXNrICAgICAgICAgICAgICAgICAgKDB4N1VMIDw8IEFEQ19TTVBSMl9TTVAxM19Qb3MpICAgICAvKiE8IDB4MDAwMDBFMDAgKi8NCiNkZWZpbmUgQURDX1NNUFIyX1NNUDEzICAgICAgICAgICAgICAgICAgICAgIEFEQ19TTVBSMl9TTVAxM19Nc2sgICAgICAgICAgICAgICAvKiE8IEFEQyBjaGFubmVsIDEzIHNhbXBsaW5nIHRpbWUgc2VsZWN0aW9uICovDQojZGVmaW5lIEFEQ19TTVBSMl9TTVAxM18wICAgICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgQURDX1NNUFIyX1NNUDEzX1BvcykgICAgIC8qITwgMHgwMDAwMDIwMCAqLw0KI2RlZmluZSBBRENfU01QUjJfU01QMTNfMSAgICAgICAgICAgICAgICAgICAgKDB4MlVMIDw8IEFEQ19TTVBSMl9TTVAxM19Qb3MpICAgICAvKiE8IDB4MDAwMDA0MDAgKi8NCiNkZWZpbmUgQURDX1NNUFIyX1NNUDEzXzIgICAgICAgICAgICAgICAgICAgICgweDRVTCA8PCBBRENfU01QUjJfU01QMTNfUG9zKSAgICAgLyohPCAweDAwMDAwODAwICovDQoNCiNkZWZpbmUgQURDX1NNUFIyX1NNUDE0X1BvcyAgICAgICAgICAgICAgICAgICgxMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgQURDX1NNUFIyX1NNUDE0X01zayAgICAgICAgICAgICAgICAgICgweDdVTCA8PCBBRENfU01QUjJfU01QMTRfUG9zKSAgICAgLyohPCAweDAwMDA3MDAwICovDQojZGVmaW5lIEFEQ19TTVBSMl9TTVAxNCAgICAgICAgICAgICAgICAgICAgICBBRENfU01QUjJfU01QMTRfTXNrICAgICAgICAgICAgICAgLyohPCBBREMgY2hhbm5lbCAxNCBzYW1wbGluZyB0aW1lIHNlbGVjdGlvbiAqLw0KI2RlZmluZSBBRENfU01QUjJfU01QMTRfMCAgICAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IEFEQ19TTVBSMl9TTVAxNF9Qb3MpICAgICAvKiE8IDB4MDAwMDEwMDAgKi8NCiNkZWZpbmUgQURDX1NNUFIyX1NNUDE0XzEgICAgICAgICAgICAgICAgICAgICgweDJVTCA8PCBBRENfU01QUjJfU01QMTRfUG9zKSAgICAgLyohPCAweDAwMDAyMDAwICovDQojZGVmaW5lIEFEQ19TTVBSMl9TTVAxNF8yICAgICAgICAgICAgICAgICAgICAoMHg0VUwgPDwgQURDX1NNUFIyX1NNUDE0X1BvcykgICAgIC8qITwgMHgwMDAwNDAwMCAqLw0KDQojZGVmaW5lIEFEQ19TTVBSMl9TTVAxNV9Qb3MgICAgICAgICAgICAgICAgICAoMTVVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEFEQ19TTVBSMl9TTVAxNV9Nc2sgICAgICAgICAgICAgICAgICAoMHg3VUwgPDwgQURDX1NNUFIyX1NNUDE1X1BvcykgICAgIC8qITwgMHgwMDAzODAwMCAqLw0KI2RlZmluZSBBRENfU01QUjJfU01QMTUgICAgICAgICAgICAgICAgICAgICAgQURDX1NNUFIyX1NNUDE1X01zayAgICAgICAgICAgICAgIC8qITwgQURDIGNoYW5uZWwgNSBzYW1wbGluZyB0aW1lIHNlbGVjdGlvbiAqLw0KI2RlZmluZSBBRENfU01QUjJfU01QMTVfMCAgICAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IEFEQ19TTVBSMl9TTVAxNV9Qb3MpICAgICAvKiE8IDB4MDAwMDgwMDAgKi8NCiNkZWZpbmUgQURDX1NNUFIyX1NNUDE1XzEgICAgICAgICAgICAgICAgICAgICgweDJVTCA8PCBBRENfU01QUjJfU01QMTVfUG9zKSAgICAgLyohPCAweDAwMDEwMDAwICovDQojZGVmaW5lIEFEQ19TTVBSMl9TTVAxNV8yICAgICAgICAgICAgICAgICAgICAoMHg0VUwgPDwgQURDX1NNUFIyX1NNUDE1X1BvcykgICAgIC8qITwgMHgwMDAyMDAwMCAqLw0KDQojZGVmaW5lIEFEQ19TTVBSMl9TTVAxNl9Qb3MgICAgICAgICAgICAgICAgICAoMThVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEFEQ19TTVBSMl9TTVAxNl9Nc2sgICAgICAgICAgICAgICAgICAoMHg3VUwgPDwgQURDX1NNUFIyX1NNUDE2X1BvcykgICAgIC8qITwgMHgwMDFDMDAwMCAqLw0KI2RlZmluZSBBRENfU01QUjJfU01QMTYgICAgICAgICAgICAgICAgICAgICAgQURDX1NNUFIyX1NNUDE2X01zayAgICAgICAgICAgICAgIC8qITwgQURDIGNoYW5uZWwgMTYgc2FtcGxpbmcgdGltZSBzZWxlY3Rpb24gKi8NCiNkZWZpbmUgQURDX1NNUFIyX1NNUDE2XzAgICAgICAgICAgICAgICAgICAgICgweDFVTCA8PCBBRENfU01QUjJfU01QMTZfUG9zKSAgICAgLyohPCAweDAwMDQwMDAwICovDQojZGVmaW5lIEFEQ19TTVBSMl9TTVAxNl8xICAgICAgICAgICAgICAgICAgICAoMHgyVUwgPDwgQURDX1NNUFIyX1NNUDE2X1BvcykgICAgIC8qITwgMHgwMDA4MDAwMCAqLw0KI2RlZmluZSBBRENfU01QUjJfU01QMTZfMiAgICAgICAgICAgICAgICAgICAgKDB4NFVMIDw8IEFEQ19TTVBSMl9TTVAxNl9Qb3MpICAgICAvKiE8IDB4MDAxMDAwMDAgKi8NCg0KI2RlZmluZSBBRENfU01QUjJfU01QMTdfUG9zICAgICAgICAgICAgICAgICAgKDIxVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBBRENfU01QUjJfU01QMTdfTXNrICAgICAgICAgICAgICAgICAgKDB4N1VMIDw8IEFEQ19TTVBSMl9TTVAxN19Qb3MpICAgICAvKiE8IDB4MDBFMDAwMDAgKi8NCiNkZWZpbmUgQURDX1NNUFIyX1NNUDE3ICAgICAgICAgICAgICAgICAgICAgIEFEQ19TTVBSMl9TTVAxN19Nc2sgICAgICAgICAgICAgICAvKiE8IEFEQyBjaGFubmVsIDE3IHNhbXBsaW5nIHRpbWUgc2VsZWN0aW9uICovDQojZGVmaW5lIEFEQ19TTVBSMl9TTVAxN18wICAgICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgQURDX1NNUFIyX1NNUDE3X1BvcykgICAgIC8qITwgMHgwMDIwMDAwMCAqLw0KI2RlZmluZSBBRENfU01QUjJfU01QMTdfMSAgICAgICAgICAgICAgICAgICAgKDB4MlVMIDw8IEFEQ19TTVBSMl9TTVAxN19Qb3MpICAgICAvKiE8IDB4MDA0MDAwMDAgKi8NCiNkZWZpbmUgQURDX1NNUFIyX1NNUDE3XzIgICAgICAgICAgICAgICAgICAgICgweDRVTCA8PCBBRENfU01QUjJfU01QMTdfUG9zKSAgICAgLyohPCAweDAwODAwMDAwICovDQoNCiNkZWZpbmUgQURDX1NNUFIyX1NNUDE4X1BvcyAgICAgICAgICAgICAgICAgICgyNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgQURDX1NNUFIyX1NNUDE4X01zayAgICAgICAgICAgICAgICAgICgweDdVTCA8PCBBRENfU01QUjJfU01QMThfUG9zKSAgICAgLyohPCAweDA3MDAwMDAwICovDQojZGVmaW5lIEFEQ19TTVBSMl9TTVAxOCAgICAgICAgICAgICAgICAgICAgICBBRENfU01QUjJfU01QMThfTXNrICAgICAgICAgICAgICAgLyohPCBBREMgY2hhbm5lbCAxOCBzYW1wbGluZyB0aW1lIHNlbGVjdGlvbiAqLw0KI2RlZmluZSBBRENfU01QUjJfU01QMThfMCAgICAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IEFEQ19TTVBSMl9TTVAxOF9Qb3MpICAgICAvKiE8IDB4MDEwMDAwMDAgKi8NCiNkZWZpbmUgQURDX1NNUFIyX1NNUDE4XzEgICAgICAgICAgICAgICAgICAgICgweDJVTCA8PCBBRENfU01QUjJfU01QMThfUG9zKSAgICAgLyohPCAweDAyMDAwMDAwICovDQojZGVmaW5lIEFEQ19TTVBSMl9TTVAxOF8yICAgICAgICAgICAgICAgICAgICAoMHg0VUwgPDwgQURDX1NNUFIyX1NNUDE4X1BvcykgICAgIC8qITwgMHgwNDAwMDAwMCAqLw0KDQojZGVmaW5lIEFEQ19TTVBSMl9TTVAxOV9Qb3MgICAgICAgICAgICAgICAgICAoMjdVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEFEQ19TTVBSMl9TTVAxOV9Nc2sgICAgICAgICAgICAgICAgICAoMHg3VUwgPDwgQURDX1NNUFIyX1NNUDE5X1BvcykgICAgIC8qITwgMHgzODAwMDAwMCAqLw0KI2RlZmluZSBBRENfU01QUjJfU01QMTkgICAgICAgICAgICAgICAgICAgICAgQURDX1NNUFIyX1NNUDE5X01zayAgICAgICAgICAgICAgIC8qITwgQURDIGNoYW5uZWwgMTkgc2FtcGxpbmcgdGltZSBzZWxlY3Rpb24gKi8NCiNkZWZpbmUgQURDX1NNUFIyX1NNUDE5XzAgICAgICAgICAgICAgICAgICAgICgweDFVTCA8PCBBRENfU01QUjJfU01QMTlfUG9zKSAgICAgLyohPCAweDA4MDAwMDAwICovDQojZGVmaW5lIEFEQ19TTVBSMl9TTVAxOV8xICAgICAgICAgICAgICAgICAgICAoMHgyVUwgPDwgQURDX1NNUFIyX1NNUDE5X1BvcykgICAgIC8qITwgMHgxMDAwMDAwMCAqLw0KI2RlZmluZSBBRENfU01QUjJfU01QMTlfMiAgICAgICAgICAgICAgICAgICAgKDB4NFVMIDw8IEFEQ19TTVBSMl9TTVAxOV9Qb3MpICAgICAvKiE8IDB4MjAwMDAwMDAgKi8NCg0KLyoqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIEFEQ19TTVBSMyByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgQURDX1NNUFIzX1NNUDBfUG9zICAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgQURDX1NNUFIzX1NNUDBfTXNrICAgICAgICAgICAgICAgICAgICgweDdVTCA8PCBBRENfU01QUjNfU01QMF9Qb3MpICAgICAgLyohPCAweDAwMDAwMDA3ICovDQojZGVmaW5lIEFEQ19TTVBSM19TTVAwICAgICAgICAgICAgICAgICAgICAgICBBRENfU01QUjNfU01QMF9Nc2sgICAgICAgICAgICAgICAgLyohPCBBREMgY2hhbm5lbCAwIHNhbXBsaW5nIHRpbWUgc2VsZWN0aW9uICovDQojZGVmaW5lIEFEQ19TTVBSM19TTVAwXzAgICAgICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgQURDX1NNUFIzX1NNUDBfUG9zKSAgICAgIC8qITwgMHgwMDAwMDAwMSAqLw0KI2RlZmluZSBBRENfU01QUjNfU01QMF8xICAgICAgICAgICAgICAgICAgICAgKDB4MlVMIDw8IEFEQ19TTVBSM19TTVAwX1BvcykgICAgICAvKiE8IDB4MDAwMDAwMDIgKi8NCiNkZWZpbmUgQURDX1NNUFIzX1NNUDBfMiAgICAgICAgICAgICAgICAgICAgICgweDRVTCA8PCBBRENfU01QUjNfU01QMF9Qb3MpICAgICAgLyohPCAweDAwMDAwMDA0ICovDQogDQojZGVmaW5lIEFEQ19TTVBSM19TTVAxX1BvcyAgICAgICAgICAgICAgICAgICAoM1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEFEQ19TTVBSM19TTVAxX01zayAgICAgICAgICAgICAgICAgICAoMHg3VUwgPDwgQURDX1NNUFIzX1NNUDFfUG9zKSAgICAgIC8qITwgMHgwMDAwMDAzOCAqLw0KI2RlZmluZSBBRENfU01QUjNfU01QMSAgICAgICAgICAgICAgICAgICAgICAgQURDX1NNUFIzX1NNUDFfTXNrICAgICAgICAgICAgICAgIC8qITwgQURDIGNoYW5uZWwgMSBzYW1wbGluZyB0aW1lIHNlbGVjdGlvbiAqLw0KI2RlZmluZSBBRENfU01QUjNfU01QMV8wICAgICAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IEFEQ19TTVBSM19TTVAxX1BvcykgICAgICAvKiE8IDB4MDAwMDAwMDggKi8NCiNkZWZpbmUgQURDX1NNUFIzX1NNUDFfMSAgICAgICAgICAgICAgICAgICAgICgweDJVTCA8PCBBRENfU01QUjNfU01QMV9Qb3MpICAgICAgLyohPCAweDAwMDAwMDEwICovDQojZGVmaW5lIEFEQ19TTVBSM19TTVAxXzIgICAgICAgICAgICAgICAgICAgICAoMHg0VUwgPDwgQURDX1NNUFIzX1NNUDFfUG9zKSAgICAgIC8qITwgMHgwMDAwMDAyMCAqLw0KDQojZGVmaW5lIEFEQ19TTVBSM19TTVAyX1BvcyAgICAgICAgICAgICAgICAgICAoNlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEFEQ19TTVBSM19TTVAyX01zayAgICAgICAgICAgICAgICAgICAoMHg3VUwgPDwgQURDX1NNUFIzX1NNUDJfUG9zKSAgICAgIC8qITwgMHgwMDAwMDFDMCAqLw0KI2RlZmluZSBBRENfU01QUjNfU01QMiAgICAgICAgICAgICAgICAgICAgICAgQURDX1NNUFIzX1NNUDJfTXNrICAgICAgICAgICAgICAgIC8qITwgQURDIGNoYW5uZWwgMiBzYW1wbGluZyB0aW1lIHNlbGVjdGlvbiAqLw0KI2RlZmluZSBBRENfU01QUjNfU01QMl8wICAgICAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IEFEQ19TTVBSM19TTVAyX1BvcykgICAgICAvKiE8IDB4MDAwMDAwNDAgKi8NCiNkZWZpbmUgQURDX1NNUFIzX1NNUDJfMSAgICAgICAgICAgICAgICAgICAgICgweDJVTCA8PCBBRENfU01QUjNfU01QMl9Qb3MpICAgICAgLyohPCAweDAwMDAwMDgwICovDQojZGVmaW5lIEFEQ19TTVBSM19TTVAyXzIgICAgICAgICAgICAgICAgICAgICAoMHg0VUwgPDwgQURDX1NNUFIzX1NNUDJfUG9zKSAgICAgIC8qITwgMHgwMDAwMDEwMCAqLw0KDQojZGVmaW5lIEFEQ19TTVBSM19TTVAzX1BvcyAgICAgICAgICAgICAgICAgICAoOVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEFEQ19TTVBSM19TTVAzX01zayAgICAgICAgICAgICAgICAgICAoMHg3VUwgPDwgQURDX1NNUFIzX1NNUDNfUG9zKSAgICAgIC8qITwgMHgwMDAwMEUwMCAqLw0KI2RlZmluZSBBRENfU01QUjNfU01QMyAgICAgICAgICAgICAgICAgICAgICAgQURDX1NNUFIzX1NNUDNfTXNrICAgICAgICAgICAgICAgIC8qITwgQURDIGNoYW5uZWwgMyBzYW1wbGluZyB0aW1lIHNlbGVjdGlvbiAqLw0KI2RlZmluZSBBRENfU01QUjNfU01QM18wICAgICAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IEFEQ19TTVBSM19TTVAzX1BvcykgICAgICAvKiE8IDB4MDAwMDAyMDAgKi8NCiNkZWZpbmUgQURDX1NNUFIzX1NNUDNfMSAgICAgICAgICAgICAgICAgICAgICgweDJVTCA8PCBBRENfU01QUjNfU01QM19Qb3MpICAgICAgLyohPCAweDAwMDAwNDAwICovDQojZGVmaW5lIEFEQ19TTVBSM19TTVAzXzIgICAgICAgICAgICAgICAgICAgICAoMHg0VUwgPDwgQURDX1NNUFIzX1NNUDNfUG9zKSAgICAgIC8qITwgMHgwMDAwMDgwMCAqLw0KDQojZGVmaW5lIEFEQ19TTVBSM19TTVA0X1BvcyAgICAgICAgICAgICAgICAgICAoMTJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEFEQ19TTVBSM19TTVA0X01zayAgICAgICAgICAgICAgICAgICAoMHg3VUwgPDwgQURDX1NNUFIzX1NNUDRfUG9zKSAgICAgIC8qITwgMHgwMDAwNzAwMCAqLw0KI2RlZmluZSBBRENfU01QUjNfU01QNCAgICAgICAgICAgICAgICAgICAgICAgQURDX1NNUFIzX1NNUDRfTXNrICAgICAgICAgICAgICAgIC8qITwgQURDIGNoYW5uZWwgNCBzYW1wbGluZyB0aW1lIHNlbGVjdGlvbiAqLw0KI2RlZmluZSBBRENfU01QUjNfU01QNF8wICAgICAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IEFEQ19TTVBSM19TTVA0X1BvcykgICAgICAvKiE8IDB4MDAwMDEwMDAgKi8NCiNkZWZpbmUgQURDX1NNUFIzX1NNUDRfMSAgICAgICAgICAgICAgICAgICAgICgweDJVTCA8PCBBRENfU01QUjNfU01QNF9Qb3MpICAgICAgLyohPCAweDAwMDAyMDAwICovDQojZGVmaW5lIEFEQ19TTVBSM19TTVA0XzIgICAgICAgICAgICAgICAgICAgICAoMHg0VUwgPDwgQURDX1NNUFIzX1NNUDRfUG9zKSAgICAgIC8qITwgMHgwMDAwNDAwMCAqLw0KDQojZGVmaW5lIEFEQ19TTVBSM19TTVA1X1BvcyAgICAgICAgICAgICAgICAgICAoMTVVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEFEQ19TTVBSM19TTVA1X01zayAgICAgICAgICAgICAgICAgICAoMHg3VUwgPDwgQURDX1NNUFIzX1NNUDVfUG9zKSAgICAgIC8qITwgMHgwMDAzODAwMCAqLw0KI2RlZmluZSBBRENfU01QUjNfU01QNSAgICAgICAgICAgICAgICAgICAgICAgQURDX1NNUFIzX1NNUDVfTXNrICAgICAgICAgICAgICAgIC8qITwgQURDIGNoYW5uZWwgNSBzYW1wbGluZyB0aW1lIHNlbGVjdGlvbiAqLw0KI2RlZmluZSBBRENfU01QUjNfU01QNV8wICAgICAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IEFEQ19TTVBSM19TTVA1X1BvcykgICAgICAvKiE8IDB4MDAwMDgwMDAgKi8NCiNkZWZpbmUgQURDX1NNUFIzX1NNUDVfMSAgICAgICAgICAgICAgICAgICAgICgweDJVTCA8PCBBRENfU01QUjNfU01QNV9Qb3MpICAgICAgLyohPCAweDAwMDEwMDAwICovDQojZGVmaW5lIEFEQ19TTVBSM19TTVA1XzIgICAgICAgICAgICAgICAgICAgICAoMHg0VUwgPDwgQURDX1NNUFIzX1NNUDVfUG9zKSAgICAgIC8qITwgMHgwMDAyMDAwMCAqLw0KDQojZGVmaW5lIEFEQ19TTVBSM19TTVA2X1BvcyAgICAgICAgICAgICAgICAgICAoMThVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEFEQ19TTVBSM19TTVA2X01zayAgICAgICAgICAgICAgICAgICAoMHg3VUwgPDwgQURDX1NNUFIzX1NNUDZfUG9zKSAgICAgIC8qITwgMHgwMDFDMDAwMCAqLw0KI2RlZmluZSBBRENfU01QUjNfU01QNiAgICAgICAgICAgICAgICAgICAgICAgQURDX1NNUFIzX1NNUDZfTXNrICAgICAgICAgICAgICAgIC8qITwgQURDIGNoYW5uZWwgNiBzYW1wbGluZyB0aW1lIHNlbGVjdGlvbiAqLw0KI2RlZmluZSBBRENfU01QUjNfU01QNl8wICAgICAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IEFEQ19TTVBSM19TTVA2X1BvcykgICAgICAvKiE8IDB4MDAwNDAwMDAgKi8NCiNkZWZpbmUgQURDX1NNUFIzX1NNUDZfMSAgICAgICAgICAgICAgICAgICAgICgweDJVTCA8PCBBRENfU01QUjNfU01QNl9Qb3MpICAgICAgLyohPCAweDAwMDgwMDAwICovDQojZGVmaW5lIEFEQ19TTVBSM19TTVA2XzIgICAgICAgICAgICAgICAgICAgICAoMHg0VUwgPDwgQURDX1NNUFIzX1NNUDZfUG9zKSAgICAgIC8qITwgMHgwMDEwMDAwMCAqLw0KDQojZGVmaW5lIEFEQ19TTVBSM19TTVA3X1BvcyAgICAgICAgICAgICAgICAgICAoMjFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEFEQ19TTVBSM19TTVA3X01zayAgICAgICAgICAgICAgICAgICAoMHg3VUwgPDwgQURDX1NNUFIzX1NNUDdfUG9zKSAgICAgIC8qITwgMHgwMEUwMDAwMCAqLw0KI2RlZmluZSBBRENfU01QUjNfU01QNyAgICAgICAgICAgICAgICAgICAgICAgQURDX1NNUFIzX1NNUDdfTXNrICAgICAgICAgICAgICAgIC8qITwgQURDIGNoYW5uZWwgNyBzYW1wbGluZyB0aW1lIHNlbGVjdGlvbiAqLw0KI2RlZmluZSBBRENfU01QUjNfU01QN18wICAgICAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IEFEQ19TTVBSM19TTVA3X1BvcykgICAgICAvKiE8IDB4MDAyMDAwMDAgKi8NCiNkZWZpbmUgQURDX1NNUFIzX1NNUDdfMSAgICAgICAgICAgICAgICAgICAgICgweDJVTCA8PCBBRENfU01QUjNfU01QN19Qb3MpICAgICAgLyohPCAweDAwNDAwMDAwICovDQojZGVmaW5lIEFEQ19TTVBSM19TTVA3XzIgICAgICAgICAgICAgICAgICAgICAoMHg0VUwgPDwgQURDX1NNUFIzX1NNUDdfUG9zKSAgICAgIC8qITwgMHgwMDgwMDAwMCAqLw0KDQojZGVmaW5lIEFEQ19TTVBSM19TTVA4X1BvcyAgICAgICAgICAgICAgICAgICAoMjRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEFEQ19TTVBSM19TTVA4X01zayAgICAgICAgICAgICAgICAgICAoMHg3VUwgPDwgQURDX1NNUFIzX1NNUDhfUG9zKSAgICAgIC8qITwgMHgwNzAwMDAwMCAqLw0KI2RlZmluZSBBRENfU01QUjNfU01QOCAgICAgICAgICAgICAgICAgICAgICAgQURDX1NNUFIzX1NNUDhfTXNrICAgICAgICAgICAgICAgIC8qITwgQURDIGNoYW5uZWwgOCBzYW1wbGluZyB0aW1lIHNlbGVjdGlvbiAqLw0KI2RlZmluZSBBRENfU01QUjNfU01QOF8wICAgICAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IEFEQ19TTVBSM19TTVA4X1BvcykgICAgICAvKiE8IDB4MDEwMDAwMDAgKi8NCiNkZWZpbmUgQURDX1NNUFIzX1NNUDhfMSAgICAgICAgICAgICAgICAgICAgICgweDJVTCA8PCBBRENfU01QUjNfU01QOF9Qb3MpICAgICAgLyohPCAweDAyMDAwMDAwICovDQojZGVmaW5lIEFEQ19TTVBSM19TTVA4XzIgICAgICAgICAgICAgICAgICAgICAoMHg0VUwgPDwgQURDX1NNUFIzX1NNUDhfUG9zKSAgICAgIC8qITwgMHgwNDAwMDAwMCAqLw0KDQojZGVmaW5lIEFEQ19TTVBSM19TTVA5X1BvcyAgICAgICAgICAgICAgICAgICAoMjdVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEFEQ19TTVBSM19TTVA5X01zayAgICAgICAgICAgICAgICAgICAoMHg3VUwgPDwgQURDX1NNUFIzX1NNUDlfUG9zKSAgICAgIC8qITwgMHgzODAwMDAwMCAqLw0KI2RlZmluZSBBRENfU01QUjNfU01QOSAgICAgICAgICAgICAgICAgICAgICAgQURDX1NNUFIzX1NNUDlfTXNrICAgICAgICAgICAgICAgIC8qITwgQURDIGNoYW5uZWwgOSBzYW1wbGluZyB0aW1lIHNlbGVjdGlvbiAqLw0KI2RlZmluZSBBRENfU01QUjNfU01QOV8wICAgICAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IEFEQ19TTVBSM19TTVA5X1BvcykgICAgICAvKiE8IDB4MDgwMDAwMDAgKi8NCiNkZWZpbmUgQURDX1NNUFIzX1NNUDlfMSAgICAgICAgICAgICAgICAgICAgICgweDJVTCA8PCBBRENfU01QUjNfU01QOV9Qb3MpICAgICAgLyohPCAweDEwMDAwMDAwICovDQojZGVmaW5lIEFEQ19TTVBSM19TTVA5XzIgICAgICAgICAgICAgICAgICAgICAoMHg0VUwgPDwgQURDX1NNUFIzX1NNUDlfUG9zKSAgICAgIC8qITwgMHgyMDAwMDAwMCAqLw0KDQovKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgQURDX0pPRlIxIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBBRENfSk9GUjFfSk9GRlNFVDFfUG9zICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBBRENfSk9GUjFfSk9GRlNFVDFfTXNrICAgICAgICAgICAgICAgKDB4RkZGVUwgPDwgQURDX0pPRlIxX0pPRkZTRVQxX1BvcykgLyohPCAweDAwMDAwRkZGICovDQojZGVmaW5lIEFEQ19KT0ZSMV9KT0ZGU0VUMSAgICAgICAgICAgICAgICAgICBBRENfSk9GUjFfSk9GRlNFVDFfTXNrICAgICAgICAgICAgLyohPCBBREMgZ3JvdXAgaW5qZWN0ZWQgc2VxdWVuY2VyIHJhbmsgMSBvZmZzZXQgdmFsdWUgKi8NCg0KLyoqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIEFEQ19KT0ZSMiByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgQURDX0pPRlIyX0pPRkZTRVQyX1BvcyAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgQURDX0pPRlIyX0pPRkZTRVQyX01zayAgICAgICAgICAgICAgICgweEZGRlVMIDw8IEFEQ19KT0ZSMl9KT0ZGU0VUMl9Qb3MpIC8qITwgMHgwMDAwMEZGRiAqLw0KI2RlZmluZSBBRENfSk9GUjJfSk9GRlNFVDIgICAgICAgICAgICAgICAgICAgQURDX0pPRlIyX0pPRkZTRVQyX01zayAgICAgICAgICAgIC8qITwgQURDIGdyb3VwIGluamVjdGVkIHNlcXVlbmNlciByYW5rIDIgb2Zmc2V0IHZhbHVlICovDQoNCi8qKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBBRENfSk9GUjMgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIEFEQ19KT0ZSM19KT0ZGU0VUM19Qb3MgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEFEQ19KT0ZSM19KT0ZGU0VUM19Nc2sgICAgICAgICAgICAgICAoMHhGRkZVTCA8PCBBRENfSk9GUjNfSk9GRlNFVDNfUG9zKSAvKiE8IDB4MDAwMDBGRkYgKi8NCiNkZWZpbmUgQURDX0pPRlIzX0pPRkZTRVQzICAgICAgICAgICAgICAgICAgIEFEQ19KT0ZSM19KT0ZGU0VUM19Nc2sgICAgICAgICAgICAvKiE8IEFEQyBncm91cCBpbmplY3RlZCBzZXF1ZW5jZXIgcmFuayAzIG9mZnNldCB2YWx1ZSAqLw0KDQovKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgQURDX0pPRlI0IHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBBRENfSk9GUjRfSk9GRlNFVDRfUG9zICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBBRENfSk9GUjRfSk9GRlNFVDRfTXNrICAgICAgICAgICAgICAgKDB4RkZGVUwgPDwgQURDX0pPRlI0X0pPRkZTRVQ0X1BvcykgLyohPCAweDAwMDAwRkZGICovDQojZGVmaW5lIEFEQ19KT0ZSNF9KT0ZGU0VUNCAgICAgICAgICAgICAgICAgICBBRENfSk9GUjRfSk9GRlNFVDRfTXNrICAgICAgICAgICAgLyohPCBBREMgZ3JvdXAgaW5qZWN0ZWQgc2VxdWVuY2VyIHJhbmsgNCBvZmZzZXQgdmFsdWUgKi8NCg0KLyoqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBBRENfSFRSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgQURDX0hUUl9IVF9Qb3MgICAgICAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgQURDX0hUUl9IVF9Nc2sgICAgICAgICAgICAgICAgICAgICAgICgweEZGRlVMIDw8IEFEQ19IVFJfSFRfUG9zKSAgICAgICAgLyohPCAweDAwMDAwRkZGICovDQojZGVmaW5lIEFEQ19IVFJfSFQgICAgICAgICAgICAgICAgICAgICAgICAgICBBRENfSFRSX0hUX01zayAgICAgICAgICAgICAgICAgICAgLyohPCBBREMgYW5hbG9nIHdhdGNoZG9nIDEgdGhyZXNob2xkIGhpZ2ggKi8NCg0KLyoqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBBRENfTFRSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgQURDX0xUUl9MVF9Qb3MgICAgICAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgQURDX0xUUl9MVF9Nc2sgICAgICAgICAgICAgICAgICAgICAgICgweEZGRlVMIDw8IEFEQ19MVFJfTFRfUG9zKSAgICAgICAgLyohPCAweDAwMDAwRkZGICovDQojZGVmaW5lIEFEQ19MVFJfTFQgICAgICAgICAgICAgICAgICAgICAgICAgICBBRENfTFRSX0xUX01zayAgICAgICAgICAgICAgICAgICAgLyohPCBBREMgYW5hbG9nIHdhdGNoZG9nIDEgdGhyZXNob2xkIGxvdyAqLw0KDQovKioqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIEFEQ19TUVIxIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBBRENfU1FSMV9MX1BvcyAgICAgICAgICAgICAgICAgICAgICAgKDIwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBBRENfU1FSMV9MX01zayAgICAgICAgICAgICAgICAgICAgICAgKDB4MUZVTCA8PCBBRENfU1FSMV9MX1BvcykgICAgICAgICAvKiE8IDB4MDFGMDAwMDAgKi8NCiNkZWZpbmUgQURDX1NRUjFfTCAgICAgICAgICAgICAgICAgICAgICAgICAgIEFEQ19TUVIxX0xfTXNrICAgICAgICAgICAgICAgICAgICAvKiE8IEFEQyBncm91cCByZWd1bGFyIHNlcXVlbmNlciBzY2FuIGxlbmd0aCAqLw0KI2RlZmluZSBBRENfU1FSMV9MXzAgICAgICAgICAgICAgICAgICAgICAgICAgKDB4MDFVTCA8PCBBRENfU1FSMV9MX1BvcykgICAgICAgICAvKiE8IDB4MDAxMDAwMDAgKi8NCiNkZWZpbmUgQURDX1NRUjFfTF8xICAgICAgICAgICAgICAgICAgICAgICAgICgweDAyVUwgPDwgQURDX1NRUjFfTF9Qb3MpICAgICAgICAgLyohPCAweDAwMjAwMDAwICovDQojZGVmaW5lIEFEQ19TUVIxX0xfMiAgICAgICAgICAgICAgICAgICAgICAgICAoMHgwNFVMIDw8IEFEQ19TUVIxX0xfUG9zKSAgICAgICAgIC8qITwgMHgwMDQwMDAwMCAqLw0KI2RlZmluZSBBRENfU1FSMV9MXzMgICAgICAgICAgICAgICAgICAgICAgICAgKDB4MDhVTCA8PCBBRENfU1FSMV9MX1BvcykgICAgICAgICAvKiE8IDB4MDA4MDAwMDAgKi8NCiNkZWZpbmUgQURDX1NRUjFfTF80ICAgICAgICAgICAgICAgICAgICAgICAgICgweDEwVUwgPDwgQURDX1NRUjFfTF9Qb3MpICAgICAgICAgLyohPCAweDAxMDAwMDAwICovDQoNCiNkZWZpbmUgQURDX1NRUjFfU1EyOF9Qb3MgICAgICAgICAgICAgICAgICAgICgxNVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgQURDX1NRUjFfU1EyOF9Nc2sgICAgICAgICAgICAgICAgICAgICgweDFGVUwgPDwgQURDX1NRUjFfU1EyOF9Qb3MpICAgICAgLyohPCAweDAwMEY4MDAwICovDQojZGVmaW5lIEFEQ19TUVIxX1NRMjggICAgICAgICAgICAgICAgICAgICAgICBBRENfU1FSMV9TUTI4X01zayAgICAgICAgICAgICAgICAgLyohPCBBREMgZ3JvdXAgcmVndWxhciBzZXF1ZW5jZXIgcmFuayAyOCAqLw0KI2RlZmluZSBBRENfU1FSMV9TUTI4XzAgICAgICAgICAgICAgICAgICAgICAgKDB4MDFVTCA8PCBBRENfU1FSMV9TUTI4X1BvcykgICAgICAvKiE8IDB4MDAwMDgwMDAgKi8NCiNkZWZpbmUgQURDX1NRUjFfU1EyOF8xICAgICAgICAgICAgICAgICAgICAgICgweDAyVUwgPDwgQURDX1NRUjFfU1EyOF9Qb3MpICAgICAgLyohPCAweDAwMDEwMDAwICovDQojZGVmaW5lIEFEQ19TUVIxX1NRMjhfMiAgICAgICAgICAgICAgICAgICAgICAoMHgwNFVMIDw8IEFEQ19TUVIxX1NRMjhfUG9zKSAgICAgIC8qITwgMHgwMDAyMDAwMCAqLw0KI2RlZmluZSBBRENfU1FSMV9TUTI4XzMgICAgICAgICAgICAgICAgICAgICAgKDB4MDhVTCA8PCBBRENfU1FSMV9TUTI4X1BvcykgICAgICAvKiE8IDB4MDAwNDAwMDAgKi8NCiNkZWZpbmUgQURDX1NRUjFfU1EyOF80ICAgICAgICAgICAgICAgICAgICAgICgweDEwVUwgPDwgQURDX1NRUjFfU1EyOF9Qb3MpICAgICAgLyohPCAweDAwMDgwMDAwICovDQoNCiNkZWZpbmUgQURDX1NRUjFfU1EyN19Qb3MgICAgICAgICAgICAgICAgICAgICgxMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgQURDX1NRUjFfU1EyN19Nc2sgICAgICAgICAgICAgICAgICAgICgweDFGVUwgPDwgQURDX1NRUjFfU1EyN19Qb3MpICAgICAgLyohPCAweDAwMDA3QzAwICovDQojZGVmaW5lIEFEQ19TUVIxX1NRMjcgICAgICAgICAgICAgICAgICAgICAgICBBRENfU1FSMV9TUTI3X01zayAgICAgICAgICAgICAgICAgLyohPCBBREMgZ3JvdXAgcmVndWxhciBzZXF1ZW5jZXIgcmFuayAyNyAqLw0KI2RlZmluZSBBRENfU1FSMV9TUTI3XzAgICAgICAgICAgICAgICAgICAgICAgKDB4MDFVTCA8PCBBRENfU1FSMV9TUTI3X1BvcykgICAgICAvKiE8IDB4MDAwMDA0MDAgKi8NCiNkZWZpbmUgQURDX1NRUjFfU1EyN18xICAgICAgICAgICAgICAgICAgICAgICgweDAyVUwgPDwgQURDX1NRUjFfU1EyN19Qb3MpICAgICAgLyohPCAweDAwMDAwODAwICovDQojZGVmaW5lIEFEQ19TUVIxX1NRMjdfMiAgICAgICAgICAgICAgICAgICAgICAoMHgwNFVMIDw8IEFEQ19TUVIxX1NRMjdfUG9zKSAgICAgIC8qITwgMHgwMDAwMTAwMCAqLw0KI2RlZmluZSBBRENfU1FSMV9TUTI3XzMgICAgICAgICAgICAgICAgICAgICAgKDB4MDhVTCA8PCBBRENfU1FSMV9TUTI3X1BvcykgICAgICAvKiE8IDB4MDAwMDIwMDAgKi8NCiNkZWZpbmUgQURDX1NRUjFfU1EyN180ICAgICAgICAgICAgICAgICAgICAgICgweDEwVUwgPDwgQURDX1NRUjFfU1EyN19Qb3MpICAgICAgLyohPCAweDAwMDA0MDAwICovDQoNCiNkZWZpbmUgQURDX1NRUjFfU1EyNl9Qb3MgICAgICAgICAgICAgICAgICAgICg1VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgQURDX1NRUjFfU1EyNl9Nc2sgICAgICAgICAgICAgICAgICAgICgweDFGVUwgPDwgQURDX1NRUjFfU1EyNl9Qb3MpICAgICAgLyohPCAweDAwMDAwM0UwICovDQojZGVmaW5lIEFEQ19TUVIxX1NRMjYgICAgICAgICAgICAgICAgICAgICAgICBBRENfU1FSMV9TUTI2X01zayAgICAgICAgICAgICAgICAgLyohPCBBREMgZ3JvdXAgcmVndWxhciBzZXF1ZW5jZXIgcmFuayAyNiAqLw0KI2RlZmluZSBBRENfU1FSMV9TUTI2XzAgICAgICAgICAgICAgICAgICAgICAgKDB4MDFVTCA8PCBBRENfU1FSMV9TUTI2X1BvcykgICAgICAvKiE8IDB4MDAwMDAwMjAgKi8NCiNkZWZpbmUgQURDX1NRUjFfU1EyNl8xICAgICAgICAgICAgICAgICAgICAgICgweDAyVUwgPDwgQURDX1NRUjFfU1EyNl9Qb3MpICAgICAgLyohPCAweDAwMDAwMDQwICovDQojZGVmaW5lIEFEQ19TUVIxX1NRMjZfMiAgICAgICAgICAgICAgICAgICAgICAoMHgwNFVMIDw8IEFEQ19TUVIxX1NRMjZfUG9zKSAgICAgIC8qITwgMHgwMDAwMDA4MCAqLw0KI2RlZmluZSBBRENfU1FSMV9TUTI2XzMgICAgICAgICAgICAgICAgICAgICAgKDB4MDhVTCA8PCBBRENfU1FSMV9TUTI2X1BvcykgICAgICAvKiE8IDB4MDAwMDAxMDAgKi8NCiNkZWZpbmUgQURDX1NRUjFfU1EyNl80ICAgICAgICAgICAgICAgICAgICAgICgweDEwVUwgPDwgQURDX1NRUjFfU1EyNl9Qb3MpICAgICAgLyohPCAweDAwMDAwMjAwICovDQoNCiNkZWZpbmUgQURDX1NRUjFfU1EyNV9Qb3MgICAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgQURDX1NRUjFfU1EyNV9Nc2sgICAgICAgICAgICAgICAgICAgICgweDFGVUwgPDwgQURDX1NRUjFfU1EyNV9Qb3MpICAgICAgLyohPCAweDAwMDAwMDFGICovDQojZGVmaW5lIEFEQ19TUVIxX1NRMjUgICAgICAgICAgICAgICAgICAgICAgICBBRENfU1FSMV9TUTI1X01zayAgICAgICAgICAgICAgICAgLyohPCBBREMgZ3JvdXAgcmVndWxhciBzZXF1ZW5jZXIgcmFuayAyNSAqLw0KI2RlZmluZSBBRENfU1FSMV9TUTI1XzAgICAgICAgICAgICAgICAgICAgICAgKDB4MDFVTCA8PCBBRENfU1FSMV9TUTI1X1BvcykgICAgICAvKiE8IDB4MDAwMDAwMDEgKi8NCiNkZWZpbmUgQURDX1NRUjFfU1EyNV8xICAgICAgICAgICAgICAgICAgICAgICgweDAyVUwgPDwgQURDX1NRUjFfU1EyNV9Qb3MpICAgICAgLyohPCAweDAwMDAwMDAyICovDQojZGVmaW5lIEFEQ19TUVIxX1NRMjVfMiAgICAgICAgICAgICAgICAgICAgICAoMHgwNFVMIDw8IEFEQ19TUVIxX1NRMjVfUG9zKSAgICAgIC8qITwgMHgwMDAwMDAwNCAqLw0KI2RlZmluZSBBRENfU1FSMV9TUTI1XzMgICAgICAgICAgICAgICAgICAgICAgKDB4MDhVTCA8PCBBRENfU1FSMV9TUTI1X1BvcykgICAgICAvKiE8IDB4MDAwMDAwMDggKi8NCiNkZWZpbmUgQURDX1NRUjFfU1EyNV80ICAgICAgICAgICAgICAgICAgICAgICgweDEwVUwgPDwgQURDX1NRUjFfU1EyNV9Qb3MpICAgICAgLyohPCAweDAwMDAwMDEwICovDQoNCi8qKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgQURDX1NRUjIgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIEFEQ19TUVIyX1NRMTlfUG9zICAgICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEFEQ19TUVIyX1NRMTlfTXNrICAgICAgICAgICAgICAgICAgICAoMHgxRlVMIDw8IEFEQ19TUVIyX1NRMTlfUG9zKSAgICAgIC8qITwgMHgwMDAwMDAxRiAqLw0KI2RlZmluZSBBRENfU1FSMl9TUTE5ICAgICAgICAgICAgICAgICAgICAgICAgQURDX1NRUjJfU1ExOV9Nc2sgICAgICAgICAgICAgICAgIC8qITwgQURDIGdyb3VwIHJlZ3VsYXIgc2VxdWVuY2VyIHJhbmsgMTkgKi8NCiNkZWZpbmUgQURDX1NRUjJfU1ExOV8wICAgICAgICAgICAgICAgICAgICAgICgweDAxVUwgPDwgQURDX1NRUjJfU1ExOV9Qb3MpICAgICAgLyohPCAweDAwMDAwMDAxICovDQojZGVmaW5lIEFEQ19TUVIyX1NRMTlfMSAgICAgICAgICAgICAgICAgICAgICAoMHgwMlVMIDw8IEFEQ19TUVIyX1NRMTlfUG9zKSAgICAgIC8qITwgMHgwMDAwMDAwMiAqLw0KI2RlZmluZSBBRENfU1FSMl9TUTE5XzIgICAgICAgICAgICAgICAgICAgICAgKDB4MDRVTCA8PCBBRENfU1FSMl9TUTE5X1BvcykgICAgICAvKiE8IDB4MDAwMDAwMDQgKi8NCiNkZWZpbmUgQURDX1NRUjJfU1ExOV8zICAgICAgICAgICAgICAgICAgICAgICgweDA4VUwgPDwgQURDX1NRUjJfU1ExOV9Qb3MpICAgICAgLyohPCAweDAwMDAwMDA4ICovDQojZGVmaW5lIEFEQ19TUVIyX1NRMTlfNCAgICAgICAgICAgICAgICAgICAgICAoMHgxMFVMIDw8IEFEQ19TUVIyX1NRMTlfUG9zKSAgICAgIC8qITwgMHgwMDAwMDAxMCAqLw0KDQojZGVmaW5lIEFEQ19TUVIyX1NRMjBfUG9zICAgICAgICAgICAgICAgICAgICAoNVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEFEQ19TUVIyX1NRMjBfTXNrICAgICAgICAgICAgICAgICAgICAoMHgxRlVMIDw8IEFEQ19TUVIyX1NRMjBfUG9zKSAgICAgIC8qITwgMHgwMDAwMDNFMCAqLw0KI2RlZmluZSBBRENfU1FSMl9TUTIwICAgICAgICAgICAgICAgICAgICAgICAgQURDX1NRUjJfU1EyMF9Nc2sgICAgICAgICAgICAgICAgIC8qITwgQURDIGdyb3VwIHJlZ3VsYXIgc2VxdWVuY2VyIHJhbmsgMjAgKi8NCiNkZWZpbmUgQURDX1NRUjJfU1EyMF8wICAgICAgICAgICAgICAgICAgICAgICgweDAxVUwgPDwgQURDX1NRUjJfU1EyMF9Qb3MpICAgICAgLyohPCAweDAwMDAwMDIwICovDQojZGVmaW5lIEFEQ19TUVIyX1NRMjBfMSAgICAgICAgICAgICAgICAgICAgICAoMHgwMlVMIDw8IEFEQ19TUVIyX1NRMjBfUG9zKSAgICAgIC8qITwgMHgwMDAwMDA0MCAqLw0KI2RlZmluZSBBRENfU1FSMl9TUTIwXzIgICAgICAgICAgICAgICAgICAgICAgKDB4MDRVTCA8PCBBRENfU1FSMl9TUTIwX1BvcykgICAgICAvKiE8IDB4MDAwMDAwODAgKi8NCiNkZWZpbmUgQURDX1NRUjJfU1EyMF8zICAgICAgICAgICAgICAgICAgICAgICgweDA4VUwgPDwgQURDX1NRUjJfU1EyMF9Qb3MpICAgICAgLyohPCAweDAwMDAwMTAwICovDQojZGVmaW5lIEFEQ19TUVIyX1NRMjBfNCAgICAgICAgICAgICAgICAgICAgICAoMHgxMFVMIDw8IEFEQ19TUVIyX1NRMjBfUG9zKSAgICAgIC8qITwgMHgwMDAwMDIwMCAqLw0KDQojZGVmaW5lIEFEQ19TUVIyX1NRMjFfUG9zICAgICAgICAgICAgICAgICAgICAoMTBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEFEQ19TUVIyX1NRMjFfTXNrICAgICAgICAgICAgICAgICAgICAoMHgxRlVMIDw8IEFEQ19TUVIyX1NRMjFfUG9zKSAgICAgIC8qITwgMHgwMDAwN0MwMCAqLw0KI2RlZmluZSBBRENfU1FSMl9TUTIxICAgICAgICAgICAgICAgICAgICAgICAgQURDX1NRUjJfU1EyMV9Nc2sgICAgICAgICAgICAgICAgIC8qITwgQURDIGdyb3VwIHJlZ3VsYXIgc2VxdWVuY2VyIHJhbmsgMjEgKi8NCiNkZWZpbmUgQURDX1NRUjJfU1EyMV8wICAgICAgICAgICAgICAgICAgICAgICgweDAxVUwgPDwgQURDX1NRUjJfU1EyMV9Qb3MpICAgICAgLyohPCAweDAwMDAwNDAwICovDQojZGVmaW5lIEFEQ19TUVIyX1NRMjFfMSAgICAgICAgICAgICAgICAgICAgICAoMHgwMlVMIDw8IEFEQ19TUVIyX1NRMjFfUG9zKSAgICAgIC8qITwgMHgwMDAwMDgwMCAqLw0KI2RlZmluZSBBRENfU1FSMl9TUTIxXzIgICAgICAgICAgICAgICAgICAgICAgKDB4MDRVTCA8PCBBRENfU1FSMl9TUTIxX1BvcykgICAgICAvKiE8IDB4MDAwMDEwMDAgKi8NCiNkZWZpbmUgQURDX1NRUjJfU1EyMV8zICAgICAgICAgICAgICAgICAgICAgICgweDA4VUwgPDwgQURDX1NRUjJfU1EyMV9Qb3MpICAgICAgLyohPCAweDAwMDAyMDAwICovDQojZGVmaW5lIEFEQ19TUVIyX1NRMjFfNCAgICAgICAgICAgICAgICAgICAgICAoMHgxMFVMIDw8IEFEQ19TUVIyX1NRMjFfUG9zKSAgICAgIC8qITwgMHgwMDAwNDAwMCAqLw0KDQojZGVmaW5lIEFEQ19TUVIyX1NRMjJfUG9zICAgICAgICAgICAgICAgICAgICAoMTVVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEFEQ19TUVIyX1NRMjJfTXNrICAgICAgICAgICAgICAgICAgICAoMHgxRlVMIDw8IEFEQ19TUVIyX1NRMjJfUG9zKSAgICAgIC8qITwgMHgwMDBGODAwMCAqLw0KI2RlZmluZSBBRENfU1FSMl9TUTIyICAgICAgICAgICAgICAgICAgICAgICAgQURDX1NRUjJfU1EyMl9Nc2sgICAgICAgICAgICAgICAgIC8qITwgQURDIGdyb3VwIHJlZ3VsYXIgc2VxdWVuY2VyIHJhbmsgMjIgKi8NCiNkZWZpbmUgQURDX1NRUjJfU1EyMl8wICAgICAgICAgICAgICAgICAgICAgICgweDAxVUwgPDwgQURDX1NRUjJfU1EyMl9Qb3MpICAgICAgLyohPCAweDAwMDA4MDAwICovDQojZGVmaW5lIEFEQ19TUVIyX1NRMjJfMSAgICAgICAgICAgICAgICAgICAgICAoMHgwMlVMIDw8IEFEQ19TUVIyX1NRMjJfUG9zKSAgICAgIC8qITwgMHgwMDAxMDAwMCAqLw0KI2RlZmluZSBBRENfU1FSMl9TUTIyXzIgICAgICAgICAgICAgICAgICAgICAgKDB4MDRVTCA8PCBBRENfU1FSMl9TUTIyX1BvcykgICAgICAvKiE8IDB4MDAwMjAwMDAgKi8NCiNkZWZpbmUgQURDX1NRUjJfU1EyMl8zICAgICAgICAgICAgICAgICAgICAgICgweDA4VUwgPDwgQURDX1NRUjJfU1EyMl9Qb3MpICAgICAgLyohPCAweDAwMDQwMDAwICovDQojZGVmaW5lIEFEQ19TUVIyX1NRMjJfNCAgICAgICAgICAgICAgICAgICAgICAoMHgxMFVMIDw8IEFEQ19TUVIyX1NRMjJfUG9zKSAgICAgIC8qITwgMHgwMDA4MDAwMCAqLw0KDQojZGVmaW5lIEFEQ19TUVIyX1NRMjNfUG9zICAgICAgICAgICAgICAgICAgICAoMjBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEFEQ19TUVIyX1NRMjNfTXNrICAgICAgICAgICAgICAgICAgICAoMHgxRlVMIDw8IEFEQ19TUVIyX1NRMjNfUG9zKSAgICAgIC8qITwgMHgwMUYwMDAwMCAqLw0KI2RlZmluZSBBRENfU1FSMl9TUTIzICAgICAgICAgICAgICAgICAgICAgICAgQURDX1NRUjJfU1EyM19Nc2sgICAgICAgICAgICAgICAgIC8qITwgQURDIGdyb3VwIHJlZ3VsYXIgc2VxdWVuY2VyIHJhbmsgMjMgKi8NCiNkZWZpbmUgQURDX1NRUjJfU1EyM18wICAgICAgICAgICAgICAgICAgICAgICgweDAxVUwgPDwgQURDX1NRUjJfU1EyM19Qb3MpICAgICAgLyohPCAweDAwMTAwMDAwICovDQojZGVmaW5lIEFEQ19TUVIyX1NRMjNfMSAgICAgICAgICAgICAgICAgICAgICAoMHgwMlVMIDw8IEFEQ19TUVIyX1NRMjNfUG9zKSAgICAgIC8qITwgMHgwMDIwMDAwMCAqLw0KI2RlZmluZSBBRENfU1FSMl9TUTIzXzIgICAgICAgICAgICAgICAgICAgICAgKDB4MDRVTCA8PCBBRENfU1FSMl9TUTIzX1BvcykgICAgICAvKiE8IDB4MDA0MDAwMDAgKi8NCiNkZWZpbmUgQURDX1NRUjJfU1EyM18zICAgICAgICAgICAgICAgICAgICAgICgweDA4VUwgPDwgQURDX1NRUjJfU1EyM19Qb3MpICAgICAgLyohPCAweDAwODAwMDAwICovDQojZGVmaW5lIEFEQ19TUVIyX1NRMjNfNCAgICAgICAgICAgICAgICAgICAgICAoMHgxMFVMIDw8IEFEQ19TUVIyX1NRMjNfUG9zKSAgICAgIC8qITwgMHgwMTAwMDAwMCAqLw0KDQojZGVmaW5lIEFEQ19TUVIyX1NRMjRfUG9zICAgICAgICAgICAgICAgICAgICAoMjVVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEFEQ19TUVIyX1NRMjRfTXNrICAgICAgICAgICAgICAgICAgICAoMHgxRlVMIDw8IEFEQ19TUVIyX1NRMjRfUG9zKSAgICAgIC8qITwgMHgzRTAwMDAwMCAqLw0KI2RlZmluZSBBRENfU1FSMl9TUTI0ICAgICAgICAgICAgICAgICAgICAgICAgQURDX1NRUjJfU1EyNF9Nc2sgICAgICAgICAgICAgICAgIC8qITwgQURDIGdyb3VwIHJlZ3VsYXIgc2VxdWVuY2VyIHJhbmsgMjQgKi8NCiNkZWZpbmUgQURDX1NRUjJfU1EyNF8wICAgICAgICAgICAgICAgICAgICAgICgweDAxVUwgPDwgQURDX1NRUjJfU1EyNF9Qb3MpICAgICAgLyohPCAweDAyMDAwMDAwICovDQojZGVmaW5lIEFEQ19TUVIyX1NRMjRfMSAgICAgICAgICAgICAgICAgICAgICAoMHgwMlVMIDw8IEFEQ19TUVIyX1NRMjRfUG9zKSAgICAgIC8qITwgMHgwNDAwMDAwMCAqLw0KI2RlZmluZSBBRENfU1FSMl9TUTI0XzIgICAgICAgICAgICAgICAgICAgICAgKDB4MDRVTCA8PCBBRENfU1FSMl9TUTI0X1BvcykgICAgICAvKiE8IDB4MDgwMDAwMDAgKi8NCiNkZWZpbmUgQURDX1NRUjJfU1EyNF8zICAgICAgICAgICAgICAgICAgICAgICgweDA4VUwgPDwgQURDX1NRUjJfU1EyNF9Qb3MpICAgICAgLyohPCAweDEwMDAwMDAwICovDQojZGVmaW5lIEFEQ19TUVIyX1NRMjRfNCAgICAgICAgICAgICAgICAgICAgICAoMHgxMFVMIDw8IEFEQ19TUVIyX1NRMjRfUG9zKSAgICAgIC8qITwgMHgyMDAwMDAwMCAqLw0KDQovKioqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIEFEQ19TUVIzIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBBRENfU1FSM19TUTEzX1BvcyAgICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBBRENfU1FSM19TUTEzX01zayAgICAgICAgICAgICAgICAgICAgKDB4MUZVTCA8PCBBRENfU1FSM19TUTEzX1BvcykgICAgICAvKiE8IDB4MDAwMDAwMUYgKi8NCiNkZWZpbmUgQURDX1NRUjNfU1ExMyAgICAgICAgICAgICAgICAgICAgICAgIEFEQ19TUVIzX1NRMTNfTXNrICAgICAgICAgICAgICAgICAvKiE8IEFEQyBncm91cCByZWd1bGFyIHNlcXVlbmNlciByYW5rIDEzICovDQojZGVmaW5lIEFEQ19TUVIzX1NRMTNfMCAgICAgICAgICAgICAgICAgICAgICAoMHgwMVVMIDw8IEFEQ19TUVIzX1NRMTNfUG9zKSAgICAgIC8qITwgMHgwMDAwMDAwMSAqLw0KI2RlZmluZSBBRENfU1FSM19TUTEzXzEgICAgICAgICAgICAgICAgICAgICAgKDB4MDJVTCA8PCBBRENfU1FSM19TUTEzX1BvcykgICAgICAvKiE8IDB4MDAwMDAwMDIgKi8NCiNkZWZpbmUgQURDX1NRUjNfU1ExM18yICAgICAgICAgICAgICAgICAgICAgICgweDA0VUwgPDwgQURDX1NRUjNfU1ExM19Qb3MpICAgICAgLyohPCAweDAwMDAwMDA0ICovDQojZGVmaW5lIEFEQ19TUVIzX1NRMTNfMyAgICAgICAgICAgICAgICAgICAgICAoMHgwOFVMIDw8IEFEQ19TUVIzX1NRMTNfUG9zKSAgICAgIC8qITwgMHgwMDAwMDAwOCAqLw0KI2RlZmluZSBBRENfU1FSM19TUTEzXzQgICAgICAgICAgICAgICAgICAgICAgKDB4MTBVTCA8PCBBRENfU1FSM19TUTEzX1BvcykgICAgICAvKiE8IDB4MDAwMDAwMTAgKi8NCg0KI2RlZmluZSBBRENfU1FSM19TUTE0X1BvcyAgICAgICAgICAgICAgICAgICAgKDVVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBBRENfU1FSM19TUTE0X01zayAgICAgICAgICAgICAgICAgICAgKDB4MUZVTCA8PCBBRENfU1FSM19TUTE0X1BvcykgICAgICAvKiE8IDB4MDAwMDAzRTAgKi8NCiNkZWZpbmUgQURDX1NRUjNfU1ExNCAgICAgICAgICAgICAgICAgICAgICAgIEFEQ19TUVIzX1NRMTRfTXNrICAgICAgICAgICAgICAgICAvKiE8IEFEQyBncm91cCByZWd1bGFyIHNlcXVlbmNlciByYW5rIDE0ICovDQojZGVmaW5lIEFEQ19TUVIzX1NRMTRfMCAgICAgICAgICAgICAgICAgICAgICAoMHgwMVVMIDw8IEFEQ19TUVIzX1NRMTRfUG9zKSAgICAgIC8qITwgMHgwMDAwMDAyMCAqLw0KI2RlZmluZSBBRENfU1FSM19TUTE0XzEgICAgICAgICAgICAgICAgICAgICAgKDB4MDJVTCA8PCBBRENfU1FSM19TUTE0X1BvcykgICAgICAvKiE8IDB4MDAwMDAwNDAgKi8NCiNkZWZpbmUgQURDX1NRUjNfU1ExNF8yICAgICAgICAgICAgICAgICAgICAgICgweDA0VUwgPDwgQURDX1NRUjNfU1ExNF9Qb3MpICAgICAgLyohPCAweDAwMDAwMDgwICovDQojZGVmaW5lIEFEQ19TUVIzX1NRMTRfMyAgICAgICAgICAgICAgICAgICAgICAoMHgwOFVMIDw8IEFEQ19TUVIzX1NRMTRfUG9zKSAgICAgIC8qITwgMHgwMDAwMDEwMCAqLw0KI2RlZmluZSBBRENfU1FSM19TUTE0XzQgICAgICAgICAgICAgICAgICAgICAgKDB4MTBVTCA8PCBBRENfU1FSM19TUTE0X1BvcykgICAgICAvKiE8IDB4MDAwMDAyMDAgKi8NCg0KI2RlZmluZSBBRENfU1FSM19TUTE1X1BvcyAgICAgICAgICAgICAgICAgICAgKDEwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBBRENfU1FSM19TUTE1X01zayAgICAgICAgICAgICAgICAgICAgKDB4MUZVTCA8PCBBRENfU1FSM19TUTE1X1BvcykgICAgICAvKiE8IDB4MDAwMDdDMDAgKi8NCiNkZWZpbmUgQURDX1NRUjNfU1ExNSAgICAgICAgICAgICAgICAgICAgICAgIEFEQ19TUVIzX1NRMTVfTXNrICAgICAgICAgICAgICAgICAvKiE8IEFEQyBncm91cCByZWd1bGFyIHNlcXVlbmNlciByYW5rIDE1ICovDQojZGVmaW5lIEFEQ19TUVIzX1NRMTVfMCAgICAgICAgICAgICAgICAgICAgICAoMHgwMVVMIDw8IEFEQ19TUVIzX1NRMTVfUG9zKSAgICAgIC8qITwgMHgwMDAwMDQwMCAqLw0KI2RlZmluZSBBRENfU1FSM19TUTE1XzEgICAgICAgICAgICAgICAgICAgICAgKDB4MDJVTCA8PCBBRENfU1FSM19TUTE1X1BvcykgICAgICAvKiE8IDB4MDAwMDA4MDAgKi8NCiNkZWZpbmUgQURDX1NRUjNfU1ExNV8yICAgICAgICAgICAgICAgICAgICAgICgweDA0VUwgPDwgQURDX1NRUjNfU1ExNV9Qb3MpICAgICAgLyohPCAweDAwMDAxMDAwICovDQojZGVmaW5lIEFEQ19TUVIzX1NRMTVfMyAgICAgICAgICAgICAgICAgICAgICAoMHgwOFVMIDw8IEFEQ19TUVIzX1NRMTVfUG9zKSAgICAgIC8qITwgMHgwMDAwMjAwMCAqLw0KI2RlZmluZSBBRENfU1FSM19TUTE1XzQgICAgICAgICAgICAgICAgICAgICAgKDB4MTBVTCA8PCBBRENfU1FSM19TUTE1X1BvcykgICAgICAvKiE8IDB4MDAwMDQwMDAgKi8NCg0KI2RlZmluZSBBRENfU1FSM19TUTE2X1BvcyAgICAgICAgICAgICAgICAgICAgKDE1VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBBRENfU1FSM19TUTE2X01zayAgICAgICAgICAgICAgICAgICAgKDB4MUZVTCA8PCBBRENfU1FSM19TUTE2X1BvcykgICAgICAvKiE8IDB4MDAwRjgwMDAgKi8NCiNkZWZpbmUgQURDX1NRUjNfU1ExNiAgICAgICAgICAgICAgICAgICAgICAgIEFEQ19TUVIzX1NRMTZfTXNrICAgICAgICAgICAgICAgICAvKiE8IEFEQyBncm91cCByZWd1bGFyIHNlcXVlbmNlciByYW5rIDE2ICovDQojZGVmaW5lIEFEQ19TUVIzX1NRMTZfMCAgICAgICAgICAgICAgICAgICAgICAoMHgwMVVMIDw8IEFEQ19TUVIzX1NRMTZfUG9zKSAgICAgIC8qITwgMHgwMDAwODAwMCAqLw0KI2RlZmluZSBBRENfU1FSM19TUTE2XzEgICAgICAgICAgICAgICAgICAgICAgKDB4MDJVTCA8PCBBRENfU1FSM19TUTE2X1BvcykgICAgICAvKiE8IDB4MDAwMTAwMDAgKi8NCiNkZWZpbmUgQURDX1NRUjNfU1ExNl8yICAgICAgICAgICAgICAgICAgICAgICgweDA0VUwgPDwgQURDX1NRUjNfU1ExNl9Qb3MpICAgICAgLyohPCAweDAwMDIwMDAwICovDQojZGVmaW5lIEFEQ19TUVIzX1NRMTZfMyAgICAgICAgICAgICAgICAgICAgICAoMHgwOFVMIDw8IEFEQ19TUVIzX1NRMTZfUG9zKSAgICAgIC8qITwgMHgwMDA0MDAwMCAqLw0KI2RlZmluZSBBRENfU1FSM19TUTE2XzQgICAgICAgICAgICAgICAgICAgICAgKDB4MTBVTCA8PCBBRENfU1FSM19TUTE2X1BvcykgICAgICAvKiE8IDB4MDAwODAwMDAgKi8NCg0KI2RlZmluZSBBRENfU1FSM19TUTE3X1BvcyAgICAgICAgICAgICAgICAgICAgKDIwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBBRENfU1FSM19TUTE3X01zayAgICAgICAgICAgICAgICAgICAgKDB4MUZVTCA8PCBBRENfU1FSM19TUTE3X1BvcykgICAgICAvKiE8IDB4MDFGMDAwMDAgKi8NCiNkZWZpbmUgQURDX1NRUjNfU1ExNyAgICAgICAgICAgICAgICAgICAgICAgIEFEQ19TUVIzX1NRMTdfTXNrICAgICAgICAgICAgICAgICAvKiE8IEFEQyBncm91cCByZWd1bGFyIHNlcXVlbmNlciByYW5rIDE3ICovDQojZGVmaW5lIEFEQ19TUVIzX1NRMTdfMCAgICAgICAgICAgICAgICAgICAgICAoMHgwMVVMIDw8IEFEQ19TUVIzX1NRMTdfUG9zKSAgICAgIC8qITwgMHgwMDEwMDAwMCAqLw0KI2RlZmluZSBBRENfU1FSM19TUTE3XzEgICAgICAgICAgICAgICAgICAgICAgKDB4MDJVTCA8PCBBRENfU1FSM19TUTE3X1BvcykgICAgICAvKiE8IDB4MDAyMDAwMDAgKi8NCiNkZWZpbmUgQURDX1NRUjNfU1ExN18yICAgICAgICAgICAgICAgICAgICAgICgweDA0VUwgPDwgQURDX1NRUjNfU1ExN19Qb3MpICAgICAgLyohPCAweDAwNDAwMDAwICovDQojZGVmaW5lIEFEQ19TUVIzX1NRMTdfMyAgICAgICAgICAgICAgICAgICAgICAoMHgwOFVMIDw8IEFEQ19TUVIzX1NRMTdfUG9zKSAgICAgIC8qITwgMHgwMDgwMDAwMCAqLw0KI2RlZmluZSBBRENfU1FSM19TUTE3XzQgICAgICAgICAgICAgICAgICAgICAgKDB4MTBVTCA8PCBBRENfU1FSM19TUTE3X1BvcykgICAgICAvKiE8IDB4MDEwMDAwMDAgKi8NCg0KI2RlZmluZSBBRENfU1FSM19TUTE4X1BvcyAgICAgICAgICAgICAgICAgICAgKDI1VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBBRENfU1FSM19TUTE4X01zayAgICAgICAgICAgICAgICAgICAgKDB4MUZVTCA8PCBBRENfU1FSM19TUTE4X1BvcykgICAgICAvKiE8IDB4M0UwMDAwMDAgKi8NCiNkZWZpbmUgQURDX1NRUjNfU1ExOCAgICAgICAgICAgICAgICAgICAgICAgIEFEQ19TUVIzX1NRMThfTXNrICAgICAgICAgICAgICAgICAvKiE8IEFEQyBncm91cCByZWd1bGFyIHNlcXVlbmNlciByYW5rIDE4ICovDQojZGVmaW5lIEFEQ19TUVIzX1NRMThfMCAgICAgICAgICAgICAgICAgICAgICAoMHgwMVVMIDw8IEFEQ19TUVIzX1NRMThfUG9zKSAgICAgIC8qITwgMHgwMjAwMDAwMCAqLw0KI2RlZmluZSBBRENfU1FSM19TUTE4XzEgICAgICAgICAgICAgICAgICAgICAgKDB4MDJVTCA8PCBBRENfU1FSM19TUTE4X1BvcykgICAgICAvKiE8IDB4MDQwMDAwMDAgKi8NCiNkZWZpbmUgQURDX1NRUjNfU1ExOF8yICAgICAgICAgICAgICAgICAgICAgICgweDA0VUwgPDwgQURDX1NRUjNfU1ExOF9Qb3MpICAgICAgLyohPCAweDA4MDAwMDAwICovDQojZGVmaW5lIEFEQ19TUVIzX1NRMThfMyAgICAgICAgICAgICAgICAgICAgICAoMHgwOFVMIDw8IEFEQ19TUVIzX1NRMThfUG9zKSAgICAgIC8qITwgMHgxMDAwMDAwMCAqLw0KI2RlZmluZSBBRENfU1FSM19TUTE4XzQgICAgICAgICAgICAgICAgICAgICAgKDB4MTBVTCA8PCBBRENfU1FSM19TUTE4X1BvcykgICAgICAvKiE8IDB4MjAwMDAwMDAgKi8NCg0KLyoqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBBRENfU1FSNCByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgQURDX1NRUjRfU1E3X1BvcyAgICAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgQURDX1NRUjRfU1E3X01zayAgICAgICAgICAgICAgICAgICAgICgweDFGVUwgPDwgQURDX1NRUjRfU1E3X1BvcykgICAgICAgLyohPCAweDAwMDAwMDFGICovDQojZGVmaW5lIEFEQ19TUVI0X1NRNyAgICAgICAgICAgICAgICAgICAgICAgICBBRENfU1FSNF9TUTdfTXNrICAgICAgICAgICAgICAgICAgLyohPCBBREMgZ3JvdXAgcmVndWxhciBzZXF1ZW5jZXIgcmFuayA3ICovDQojZGVmaW5lIEFEQ19TUVI0X1NRN18wICAgICAgICAgICAgICAgICAgICAgICAoMHgwMVVMIDw8IEFEQ19TUVI0X1NRN19Qb3MpICAgICAgIC8qITwgMHgwMDAwMDAwMSAqLw0KI2RlZmluZSBBRENfU1FSNF9TUTdfMSAgICAgICAgICAgICAgICAgICAgICAgKDB4MDJVTCA8PCBBRENfU1FSNF9TUTdfUG9zKSAgICAgICAvKiE8IDB4MDAwMDAwMDIgKi8NCiNkZWZpbmUgQURDX1NRUjRfU1E3XzIgICAgICAgICAgICAgICAgICAgICAgICgweDA0VUwgPDwgQURDX1NRUjRfU1E3X1BvcykgICAgICAgLyohPCAweDAwMDAwMDA0ICovDQojZGVmaW5lIEFEQ19TUVI0X1NRN18zICAgICAgICAgICAgICAgICAgICAgICAoMHgwOFVMIDw8IEFEQ19TUVI0X1NRN19Qb3MpICAgICAgIC8qITwgMHgwMDAwMDAwOCAqLw0KI2RlZmluZSBBRENfU1FSNF9TUTdfNCAgICAgICAgICAgICAgICAgICAgICAgKDB4MTBVTCA8PCBBRENfU1FSNF9TUTdfUG9zKSAgICAgICAvKiE8IDB4MDAwMDAwMTAgKi8NCg0KI2RlZmluZSBBRENfU1FSNF9TUThfUG9zICAgICAgICAgICAgICAgICAgICAgKDVVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBBRENfU1FSNF9TUThfTXNrICAgICAgICAgICAgICAgICAgICAgKDB4MUZVTCA8PCBBRENfU1FSNF9TUThfUG9zKSAgICAgICAvKiE8IDB4MDAwMDAzRTAgKi8NCiNkZWZpbmUgQURDX1NRUjRfU1E4ICAgICAgICAgICAgICAgICAgICAgICAgIEFEQ19TUVI0X1NROF9Nc2sgICAgICAgICAgICAgICAgICAvKiE8IEFEQyBncm91cCByZWd1bGFyIHNlcXVlbmNlciByYW5rIDggKi8NCiNkZWZpbmUgQURDX1NRUjRfU1E4XzAgICAgICAgICAgICAgICAgICAgICAgICgweDAxVUwgPDwgQURDX1NRUjRfU1E4X1BvcykgICAgICAgLyohPCAweDAwMDAwMDIwICovDQojZGVmaW5lIEFEQ19TUVI0X1NROF8xICAgICAgICAgICAgICAgICAgICAgICAoMHgwMlVMIDw8IEFEQ19TUVI0X1NROF9Qb3MpICAgICAgIC8qITwgMHgwMDAwMDA0MCAqLw0KI2RlZmluZSBBRENfU1FSNF9TUThfMiAgICAgICAgICAgICAgICAgICAgICAgKDB4MDRVTCA8PCBBRENfU1FSNF9TUThfUG9zKSAgICAgICAvKiE8IDB4MDAwMDAwODAgKi8NCiNkZWZpbmUgQURDX1NRUjRfU1E4XzMgICAgICAgICAgICAgICAgICAgICAgICgweDA4VUwgPDwgQURDX1NRUjRfU1E4X1BvcykgICAgICAgLyohPCAweDAwMDAwMTAwICovDQojZGVmaW5lIEFEQ19TUVI0X1NROF80ICAgICAgICAgICAgICAgICAgICAgICAoMHgxMFVMIDw8IEFEQ19TUVI0X1NROF9Qb3MpICAgICAgIC8qITwgMHgwMDAwMDIwMCAqLw0KDQojZGVmaW5lIEFEQ19TUVI0X1NROV9Qb3MgICAgICAgICAgICAgICAgICAgICAoMTBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEFEQ19TUVI0X1NROV9Nc2sgICAgICAgICAgICAgICAgICAgICAoMHgxRlVMIDw8IEFEQ19TUVI0X1NROV9Qb3MpICAgICAgIC8qITwgMHgwMDAwN0MwMCAqLw0KI2RlZmluZSBBRENfU1FSNF9TUTkgICAgICAgICAgICAgICAgICAgICAgICAgQURDX1NRUjRfU1E5X01zayAgICAgICAgICAgICAgICAgIC8qITwgQURDIGdyb3VwIHJlZ3VsYXIgc2VxdWVuY2VyIHJhbmsgOSAqLw0KI2RlZmluZSBBRENfU1FSNF9TUTlfMCAgICAgICAgICAgICAgICAgICAgICAgKDB4MDFVTCA8PCBBRENfU1FSNF9TUTlfUG9zKSAgICAgICAvKiE8IDB4MDAwMDA0MDAgKi8NCiNkZWZpbmUgQURDX1NRUjRfU1E5XzEgICAgICAgICAgICAgICAgICAgICAgICgweDAyVUwgPDwgQURDX1NRUjRfU1E5X1BvcykgICAgICAgLyohPCAweDAwMDAwODAwICovDQojZGVmaW5lIEFEQ19TUVI0X1NROV8yICAgICAgICAgICAgICAgICAgICAgICAoMHgwNFVMIDw8IEFEQ19TUVI0X1NROV9Qb3MpICAgICAgIC8qITwgMHgwMDAwMTAwMCAqLw0KI2RlZmluZSBBRENfU1FSNF9TUTlfMyAgICAgICAgICAgICAgICAgICAgICAgKDB4MDhVTCA8PCBBRENfU1FSNF9TUTlfUG9zKSAgICAgICAvKiE8IDB4MDAwMDIwMDAgKi8NCiNkZWZpbmUgQURDX1NRUjRfU1E5XzQgICAgICAgICAgICAgICAgICAgICAgICgweDEwVUwgPDwgQURDX1NRUjRfU1E5X1BvcykgICAgICAgLyohPCAweDAwMDA0MDAwICovDQoNCiNkZWZpbmUgQURDX1NRUjRfU1ExMF9Qb3MgICAgICAgICAgICAgICAgICAgICgxNVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgQURDX1NRUjRfU1ExMF9Nc2sgICAgICAgICAgICAgICAgICAgICgweDFGVUwgPDwgQURDX1NRUjRfU1ExMF9Qb3MpICAgICAgLyohPCAweDAwMEY4MDAwICovDQojZGVmaW5lIEFEQ19TUVI0X1NRMTAgICAgICAgICAgICAgICAgICAgICAgICBBRENfU1FSNF9TUTEwX01zayAgICAgICAgICAgICAgICAgLyohPCBBREMgZ3JvdXAgcmVndWxhciBzZXF1ZW5jZXIgcmFuayAxMCAqLw0KI2RlZmluZSBBRENfU1FSNF9TUTEwXzAgICAgICAgICAgICAgICAgICAgICAgKDB4MDFVTCA8PCBBRENfU1FSNF9TUTEwX1BvcykgICAgICAvKiE8IDB4MDAwMDgwMDAgKi8NCiNkZWZpbmUgQURDX1NRUjRfU1ExMF8xICAgICAgICAgICAgICAgICAgICAgICgweDAyVUwgPDwgQURDX1NRUjRfU1ExMF9Qb3MpICAgICAgLyohPCAweDAwMDEwMDAwICovDQojZGVmaW5lIEFEQ19TUVI0X1NRMTBfMiAgICAgICAgICAgICAgICAgICAgICAoMHgwNFVMIDw8IEFEQ19TUVI0X1NRMTBfUG9zKSAgICAgIC8qITwgMHgwMDAyMDAwMCAqLw0KI2RlZmluZSBBRENfU1FSNF9TUTEwXzMgICAgICAgICAgICAgICAgICAgICAgKDB4MDhVTCA8PCBBRENfU1FSNF9TUTEwX1BvcykgICAgICAvKiE8IDB4MDAwNDAwMDAgKi8NCiNkZWZpbmUgQURDX1NRUjRfU1ExMF80ICAgICAgICAgICAgICAgICAgICAgICgweDEwVUwgPDwgQURDX1NRUjRfU1ExMF9Qb3MpICAgICAgLyohPCAweDAwMDgwMDAwICovDQoNCiNkZWZpbmUgQURDX1NRUjRfU1ExMV9Qb3MgICAgICAgICAgICAgICAgICAgICgyMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgQURDX1NRUjRfU1ExMV9Nc2sgICAgICAgICAgICAgICAgICAgICgweDFGVUwgPDwgQURDX1NRUjRfU1ExMV9Qb3MpICAgICAgLyohPCAweDAxRjAwMDAwICovDQojZGVmaW5lIEFEQ19TUVI0X1NRMTEgICAgICAgICAgICAgICAgICAgICAgICBBRENfU1FSNF9TUTExX01zayAgICAgICAgICAgICAgICAgLyohPCBBREMgZ3JvdXAgcmVndWxhciBzZXF1ZW5jZXIgcmFuayAxMSAqLw0KI2RlZmluZSBBRENfU1FSNF9TUTExXzAgICAgICAgICAgICAgICAgICAgICAgKDB4MDFVTCA8PCBBRENfU1FSNF9TUTExX1BvcykgICAgICAvKiE8IDB4MDAxMDAwMDAgKi8NCiNkZWZpbmUgQURDX1NRUjRfU1ExMV8xICAgICAgICAgICAgICAgICAgICAgICgweDAyVUwgPDwgQURDX1NRUjRfU1ExMV9Qb3MpICAgICAgLyohPCAweDAwMjAwMDAwICovDQojZGVmaW5lIEFEQ19TUVI0X1NRMTFfMiAgICAgICAgICAgICAgICAgICAgICAoMHgwNFVMIDw8IEFEQ19TUVI0X1NRMTFfUG9zKSAgICAgIC8qITwgMHgwMDQwMDAwMCAqLw0KI2RlZmluZSBBRENfU1FSNF9TUTExXzMgICAgICAgICAgICAgICAgICAgICAgKDB4MDhVTCA8PCBBRENfU1FSNF9TUTExX1BvcykgICAgICAvKiE8IDB4MDA4MDAwMDAgKi8NCiNkZWZpbmUgQURDX1NRUjRfU1ExMV80ICAgICAgICAgICAgICAgICAgICAgICgweDEwVUwgPDwgQURDX1NRUjRfU1ExMV9Qb3MpICAgICAgLyohPCAweDAxMDAwMDAwICovDQoNCiNkZWZpbmUgQURDX1NRUjRfU1ExMl9Qb3MgICAgICAgICAgICAgICAgICAgICgyNVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgQURDX1NRUjRfU1ExMl9Nc2sgICAgICAgICAgICAgICAgICAgICgweDFGVUwgPDwgQURDX1NRUjRfU1ExMl9Qb3MpICAgICAgLyohPCAweDNFMDAwMDAwICovDQojZGVmaW5lIEFEQ19TUVI0X1NRMTIgICAgICAgICAgICAgICAgICAgICAgICBBRENfU1FSNF9TUTEyX01zayAgICAgICAgICAgICAgICAgLyohPCBBREMgZ3JvdXAgcmVndWxhciBzZXF1ZW5jZXIgcmFuayAxMiAqLw0KI2RlZmluZSBBRENfU1FSNF9TUTEyXzAgICAgICAgICAgICAgICAgICAgICAgKDB4MDFVTCA8PCBBRENfU1FSNF9TUTEyX1BvcykgICAgICAvKiE8IDB4MDIwMDAwMDAgKi8NCiNkZWZpbmUgQURDX1NRUjRfU1ExMl8xICAgICAgICAgICAgICAgICAgICAgICgweDAyVUwgPDwgQURDX1NRUjRfU1ExMl9Qb3MpICAgICAgLyohPCAweDA0MDAwMDAwICovDQojZGVmaW5lIEFEQ19TUVI0X1NRMTJfMiAgICAgICAgICAgICAgICAgICAgICAoMHgwNFVMIDw8IEFEQ19TUVI0X1NRMTJfUG9zKSAgICAgIC8qITwgMHgwODAwMDAwMCAqLw0KI2RlZmluZSBBRENfU1FSNF9TUTEyXzMgICAgICAgICAgICAgICAgICAgICAgKDB4MDhVTCA8PCBBRENfU1FSNF9TUTEyX1BvcykgICAgICAvKiE8IDB4MTAwMDAwMDAgKi8NCiNkZWZpbmUgQURDX1NRUjRfU1ExMl80ICAgICAgICAgICAgICAgICAgICAgICgweDEwVUwgPDwgQURDX1NRUjRfU1ExMl9Qb3MpICAgICAgLyohPCAweDIwMDAwMDAwICovDQoNCi8qKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgQURDX1NRUjUgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIEFEQ19TUVI1X1NRMV9Qb3MgICAgICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEFEQ19TUVI1X1NRMV9Nc2sgICAgICAgICAgICAgICAgICAgICAoMHgxRlVMIDw8IEFEQ19TUVI1X1NRMV9Qb3MpICAgICAgIC8qITwgMHgwMDAwMDAxRiAqLw0KI2RlZmluZSBBRENfU1FSNV9TUTEgICAgICAgICAgICAgICAgICAgICAgICAgQURDX1NRUjVfU1ExX01zayAgICAgICAgICAgICAgICAgIC8qITwgQURDIGdyb3VwIHJlZ3VsYXIgc2VxdWVuY2VyIHJhbmsgMSAqLw0KI2RlZmluZSBBRENfU1FSNV9TUTFfMCAgICAgICAgICAgICAgICAgICAgICAgKDB4MDFVTCA8PCBBRENfU1FSNV9TUTFfUG9zKSAgICAgICAvKiE8IDB4MDAwMDAwMDEgKi8NCiNkZWZpbmUgQURDX1NRUjVfU1ExXzEgICAgICAgICAgICAgICAgICAgICAgICgweDAyVUwgPDwgQURDX1NRUjVfU1ExX1BvcykgICAgICAgLyohPCAweDAwMDAwMDAyICovDQojZGVmaW5lIEFEQ19TUVI1X1NRMV8yICAgICAgICAgICAgICAgICAgICAgICAoMHgwNFVMIDw8IEFEQ19TUVI1X1NRMV9Qb3MpICAgICAgIC8qITwgMHgwMDAwMDAwNCAqLw0KI2RlZmluZSBBRENfU1FSNV9TUTFfMyAgICAgICAgICAgICAgICAgICAgICAgKDB4MDhVTCA8PCBBRENfU1FSNV9TUTFfUG9zKSAgICAgICAvKiE8IDB4MDAwMDAwMDggKi8NCiNkZWZpbmUgQURDX1NRUjVfU1ExXzQgICAgICAgICAgICAgICAgICAgICAgICgweDEwVUwgPDwgQURDX1NRUjVfU1ExX1BvcykgICAgICAgLyohPCAweDAwMDAwMDEwICovDQoNCiNkZWZpbmUgQURDX1NRUjVfU1EyX1BvcyAgICAgICAgICAgICAgICAgICAgICg1VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgQURDX1NRUjVfU1EyX01zayAgICAgICAgICAgICAgICAgICAgICgweDFGVUwgPDwgQURDX1NRUjVfU1EyX1BvcykgICAgICAgLyohPCAweDAwMDAwM0UwICovDQojZGVmaW5lIEFEQ19TUVI1X1NRMiAgICAgICAgICAgICAgICAgICAgICAgICBBRENfU1FSNV9TUTJfTXNrICAgICAgICAgICAgICAgICAgLyohPCBBREMgZ3JvdXAgcmVndWxhciBzZXF1ZW5jZXIgcmFuayAyICovDQojZGVmaW5lIEFEQ19TUVI1X1NRMl8wICAgICAgICAgICAgICAgICAgICAgICAoMHgwMVVMIDw8IEFEQ19TUVI1X1NRMl9Qb3MpICAgICAgIC8qITwgMHgwMDAwMDAyMCAqLw0KI2RlZmluZSBBRENfU1FSNV9TUTJfMSAgICAgICAgICAgICAgICAgICAgICAgKDB4MDJVTCA8PCBBRENfU1FSNV9TUTJfUG9zKSAgICAgICAvKiE8IDB4MDAwMDAwNDAgKi8NCiNkZWZpbmUgQURDX1NRUjVfU1EyXzIgICAgICAgICAgICAgICAgICAgICAgICgweDA0VUwgPDwgQURDX1NRUjVfU1EyX1BvcykgICAgICAgLyohPCAweDAwMDAwMDgwICovDQojZGVmaW5lIEFEQ19TUVI1X1NRMl8zICAgICAgICAgICAgICAgICAgICAgICAoMHgwOFVMIDw8IEFEQ19TUVI1X1NRMl9Qb3MpICAgICAgIC8qITwgMHgwMDAwMDEwMCAqLw0KI2RlZmluZSBBRENfU1FSNV9TUTJfNCAgICAgICAgICAgICAgICAgICAgICAgKDB4MTBVTCA8PCBBRENfU1FSNV9TUTJfUG9zKSAgICAgICAvKiE8IDB4MDAwMDAyMDAgKi8NCg0KI2RlZmluZSBBRENfU1FSNV9TUTNfUG9zICAgICAgICAgICAgICAgICAgICAgKDEwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBBRENfU1FSNV9TUTNfTXNrICAgICAgICAgICAgICAgICAgICAgKDB4MUZVTCA8PCBBRENfU1FSNV9TUTNfUG9zKSAgICAgICAvKiE8IDB4MDAwMDdDMDAgKi8NCiNkZWZpbmUgQURDX1NRUjVfU1EzICAgICAgICAgICAgICAgICAgICAgICAgIEFEQ19TUVI1X1NRM19Nc2sgICAgICAgICAgICAgICAgICAvKiE8IEFEQyBncm91cCByZWd1bGFyIHNlcXVlbmNlciByYW5rIDMgKi8NCiNkZWZpbmUgQURDX1NRUjVfU1EzXzAgICAgICAgICAgICAgICAgICAgICAgICgweDAxVUwgPDwgQURDX1NRUjVfU1EzX1BvcykgICAgICAgLyohPCAweDAwMDAwNDAwICovDQojZGVmaW5lIEFEQ19TUVI1X1NRM18xICAgICAgICAgICAgICAgICAgICAgICAoMHgwMlVMIDw8IEFEQ19TUVI1X1NRM19Qb3MpICAgICAgIC8qITwgMHgwMDAwMDgwMCAqLw0KI2RlZmluZSBBRENfU1FSNV9TUTNfMiAgICAgICAgICAgICAgICAgICAgICAgKDB4MDRVTCA8PCBBRENfU1FSNV9TUTNfUG9zKSAgICAgICAvKiE8IDB4MDAwMDEwMDAgKi8NCiNkZWZpbmUgQURDX1NRUjVfU1EzXzMgICAgICAgICAgICAgICAgICAgICAgICgweDA4VUwgPDwgQURDX1NRUjVfU1EzX1BvcykgICAgICAgLyohPCAweDAwMDAyMDAwICovDQojZGVmaW5lIEFEQ19TUVI1X1NRM180ICAgICAgICAgICAgICAgICAgICAgICAoMHgxMFVMIDw8IEFEQ19TUVI1X1NRM19Qb3MpICAgICAgIC8qITwgMHgwMDAwNDAwMCAqLw0KDQojZGVmaW5lIEFEQ19TUVI1X1NRNF9Qb3MgICAgICAgICAgICAgICAgICAgICAoMTVVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEFEQ19TUVI1X1NRNF9Nc2sgICAgICAgICAgICAgICAgICAgICAoMHgxRlVMIDw8IEFEQ19TUVI1X1NRNF9Qb3MpICAgICAgIC8qITwgMHgwMDBGODAwMCAqLw0KI2RlZmluZSBBRENfU1FSNV9TUTQgICAgICAgICAgICAgICAgICAgICAgICAgQURDX1NRUjVfU1E0X01zayAgICAgICAgICAgICAgICAgIC8qITwgQURDIGdyb3VwIHJlZ3VsYXIgc2VxdWVuY2VyIHJhbmsgNCAqLw0KI2RlZmluZSBBRENfU1FSNV9TUTRfMCAgICAgICAgICAgICAgICAgICAgICAgKDB4MDFVTCA8PCBBRENfU1FSNV9TUTRfUG9zKSAgICAgICAvKiE8IDB4MDAwMDgwMDAgKi8NCiNkZWZpbmUgQURDX1NRUjVfU1E0XzEgICAgICAgICAgICAgICAgICAgICAgICgweDAyVUwgPDwgQURDX1NRUjVfU1E0X1BvcykgICAgICAgLyohPCAweDAwMDEwMDAwICovDQojZGVmaW5lIEFEQ19TUVI1X1NRNF8yICAgICAgICAgICAgICAgICAgICAgICAoMHgwNFVMIDw8IEFEQ19TUVI1X1NRNF9Qb3MpICAgICAgIC8qITwgMHgwMDAyMDAwMCAqLw0KI2RlZmluZSBBRENfU1FSNV9TUTRfMyAgICAgICAgICAgICAgICAgICAgICAgKDB4MDhVTCA8PCBBRENfU1FSNV9TUTRfUG9zKSAgICAgICAvKiE8IDB4MDAwNDAwMDAgKi8NCiNkZWZpbmUgQURDX1NRUjVfU1E0XzQgICAgICAgICAgICAgICAgICAgICAgICgweDEwVUwgPDwgQURDX1NRUjVfU1E0X1BvcykgICAgICAgLyohPCAweDAwMDgwMDAwICovDQoNCiNkZWZpbmUgQURDX1NRUjVfU1E1X1BvcyAgICAgICAgICAgICAgICAgICAgICgyMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgQURDX1NRUjVfU1E1X01zayAgICAgICAgICAgICAgICAgICAgICgweDFGVUwgPDwgQURDX1NRUjVfU1E1X1BvcykgICAgICAgLyohPCAweDAxRjAwMDAwICovDQojZGVmaW5lIEFEQ19TUVI1X1NRNSAgICAgICAgICAgICAgICAgICAgICAgICBBRENfU1FSNV9TUTVfTXNrICAgICAgICAgICAgICAgICAgLyohPCBBREMgZ3JvdXAgcmVndWxhciBzZXF1ZW5jZXIgcmFuayA1ICovDQojZGVmaW5lIEFEQ19TUVI1X1NRNV8wICAgICAgICAgICAgICAgICAgICAgICAoMHgwMVVMIDw8IEFEQ19TUVI1X1NRNV9Qb3MpICAgICAgIC8qITwgMHgwMDEwMDAwMCAqLw0KI2RlZmluZSBBRENfU1FSNV9TUTVfMSAgICAgICAgICAgICAgICAgICAgICAgKDB4MDJVTCA8PCBBRENfU1FSNV9TUTVfUG9zKSAgICAgICAvKiE8IDB4MDAyMDAwMDAgKi8NCiNkZWZpbmUgQURDX1NRUjVfU1E1XzIgICAgICAgICAgICAgICAgICAgICAgICgweDA0VUwgPDwgQURDX1NRUjVfU1E1X1BvcykgICAgICAgLyohPCAweDAwNDAwMDAwICovDQojZGVmaW5lIEFEQ19TUVI1X1NRNV8zICAgICAgICAgICAgICAgICAgICAgICAoMHgwOFVMIDw8IEFEQ19TUVI1X1NRNV9Qb3MpICAgICAgIC8qITwgMHgwMDgwMDAwMCAqLw0KI2RlZmluZSBBRENfU1FSNV9TUTVfNCAgICAgICAgICAgICAgICAgICAgICAgKDB4MTBVTCA8PCBBRENfU1FSNV9TUTVfUG9zKSAgICAgICAvKiE8IDB4MDEwMDAwMDAgKi8NCg0KI2RlZmluZSBBRENfU1FSNV9TUTZfUG9zICAgICAgICAgICAgICAgICAgICAgKDI1VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBBRENfU1FSNV9TUTZfTXNrICAgICAgICAgICAgICAgICAgICAgKDB4MUZVTCA8PCBBRENfU1FSNV9TUTZfUG9zKSAgICAgICAvKiE8IDB4M0UwMDAwMDAgKi8NCiNkZWZpbmUgQURDX1NRUjVfU1E2ICAgICAgICAgICAgICAgICAgICAgICAgIEFEQ19TUVI1X1NRNl9Nc2sgICAgICAgICAgICAgICAgICAvKiE8IEFEQyBncm91cCByZWd1bGFyIHNlcXVlbmNlciByYW5rIDYgKi8NCiNkZWZpbmUgQURDX1NRUjVfU1E2XzAgICAgICAgICAgICAgICAgICAgICAgICgweDAxVUwgPDwgQURDX1NRUjVfU1E2X1BvcykgICAgICAgLyohPCAweDAyMDAwMDAwICovDQojZGVmaW5lIEFEQ19TUVI1X1NRNl8xICAgICAgICAgICAgICAgICAgICAgICAoMHgwMlVMIDw8IEFEQ19TUVI1X1NRNl9Qb3MpICAgICAgIC8qITwgMHgwNDAwMDAwMCAqLw0KI2RlZmluZSBBRENfU1FSNV9TUTZfMiAgICAgICAgICAgICAgICAgICAgICAgKDB4MDRVTCA8PCBBRENfU1FSNV9TUTZfUG9zKSAgICAgICAvKiE8IDB4MDgwMDAwMDAgKi8NCiNkZWZpbmUgQURDX1NRUjVfU1E2XzMgICAgICAgICAgICAgICAgICAgICAgICgweDA4VUwgPDwgQURDX1NRUjVfU1E2X1BvcykgICAgICAgLyohPCAweDEwMDAwMDAwICovDQojZGVmaW5lIEFEQ19TUVI1X1NRNl80ICAgICAgICAgICAgICAgICAgICAgICAoMHgxMFVMIDw8IEFEQ19TUVI1X1NRNl9Qb3MpICAgICAgIC8qITwgMHgyMDAwMDAwMCAqLw0KDQoNCi8qKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgQURDX0pTUVIgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIEFEQ19KU1FSX0pTUTFfUG9zICAgICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEFEQ19KU1FSX0pTUTFfTXNrICAgICAgICAgICAgICAgICAgICAoMHgxRlVMIDw8IEFEQ19KU1FSX0pTUTFfUG9zKSAgICAgIC8qITwgMHgwMDAwMDAxRiAqLw0KI2RlZmluZSBBRENfSlNRUl9KU1ExICAgICAgICAgICAgICAgICAgICAgICAgQURDX0pTUVJfSlNRMV9Nc2sgICAgICAgICAgICAgICAgIC8qITwgQURDIGdyb3VwIGluamVjdGVkIHNlcXVlbmNlciByYW5rIDEgKi8NCiNkZWZpbmUgQURDX0pTUVJfSlNRMV8wICAgICAgICAgICAgICAgICAgICAgICgweDAxVUwgPDwgQURDX0pTUVJfSlNRMV9Qb3MpICAgICAgLyohPCAweDAwMDAwMDAxICovDQojZGVmaW5lIEFEQ19KU1FSX0pTUTFfMSAgICAgICAgICAgICAgICAgICAgICAoMHgwMlVMIDw8IEFEQ19KU1FSX0pTUTFfUG9zKSAgICAgIC8qITwgMHgwMDAwMDAwMiAqLw0KI2RlZmluZSBBRENfSlNRUl9KU1ExXzIgICAgICAgICAgICAgICAgICAgICAgKDB4MDRVTCA8PCBBRENfSlNRUl9KU1ExX1BvcykgICAgICAvKiE8IDB4MDAwMDAwMDQgKi8NCiNkZWZpbmUgQURDX0pTUVJfSlNRMV8zICAgICAgICAgICAgICAgICAgICAgICgweDA4VUwgPDwgQURDX0pTUVJfSlNRMV9Qb3MpICAgICAgLyohPCAweDAwMDAwMDA4ICovDQojZGVmaW5lIEFEQ19KU1FSX0pTUTFfNCAgICAgICAgICAgICAgICAgICAgICAoMHgxMFVMIDw8IEFEQ19KU1FSX0pTUTFfUG9zKSAgICAgIC8qITwgMHgwMDAwMDAxMCAqLw0KDQojZGVmaW5lIEFEQ19KU1FSX0pTUTJfUG9zICAgICAgICAgICAgICAgICAgICAoNVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEFEQ19KU1FSX0pTUTJfTXNrICAgICAgICAgICAgICAgICAgICAoMHgxRlVMIDw8IEFEQ19KU1FSX0pTUTJfUG9zKSAgICAgIC8qITwgMHgwMDAwMDNFMCAqLw0KI2RlZmluZSBBRENfSlNRUl9KU1EyICAgICAgICAgICAgICAgICAgICAgICAgQURDX0pTUVJfSlNRMl9Nc2sgICAgICAgICAgICAgICAgIC8qITwgQURDIGdyb3VwIGluamVjdGVkIHNlcXVlbmNlciByYW5rIDIgKi8NCiNkZWZpbmUgQURDX0pTUVJfSlNRMl8wICAgICAgICAgICAgICAgICAgICAgICgweDAxVUwgPDwgQURDX0pTUVJfSlNRMl9Qb3MpICAgICAgLyohPCAweDAwMDAwMDIwICovDQojZGVmaW5lIEFEQ19KU1FSX0pTUTJfMSAgICAgICAgICAgICAgICAgICAgICAoMHgwMlVMIDw8IEFEQ19KU1FSX0pTUTJfUG9zKSAgICAgIC8qITwgMHgwMDAwMDA0MCAqLw0KI2RlZmluZSBBRENfSlNRUl9KU1EyXzIgICAgICAgICAgICAgICAgICAgICAgKDB4MDRVTCA8PCBBRENfSlNRUl9KU1EyX1BvcykgICAgICAvKiE8IDB4MDAwMDAwODAgKi8NCiNkZWZpbmUgQURDX0pTUVJfSlNRMl8zICAgICAgICAgICAgICAgICAgICAgICgweDA4VUwgPDwgQURDX0pTUVJfSlNRMl9Qb3MpICAgICAgLyohPCAweDAwMDAwMTAwICovDQojZGVmaW5lIEFEQ19KU1FSX0pTUTJfNCAgICAgICAgICAgICAgICAgICAgICAoMHgxMFVMIDw8IEFEQ19KU1FSX0pTUTJfUG9zKSAgICAgIC8qITwgMHgwMDAwMDIwMCAqLw0KDQojZGVmaW5lIEFEQ19KU1FSX0pTUTNfUG9zICAgICAgICAgICAgICAgICAgICAoMTBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEFEQ19KU1FSX0pTUTNfTXNrICAgICAgICAgICAgICAgICAgICAoMHgxRlVMIDw8IEFEQ19KU1FSX0pTUTNfUG9zKSAgICAgIC8qITwgMHgwMDAwN0MwMCAqLw0KI2RlZmluZSBBRENfSlNRUl9KU1EzICAgICAgICAgICAgICAgICAgICAgICAgQURDX0pTUVJfSlNRM19Nc2sgICAgICAgICAgICAgICAgIC8qITwgQURDIGdyb3VwIGluamVjdGVkIHNlcXVlbmNlciByYW5rIDMgKi8NCiNkZWZpbmUgQURDX0pTUVJfSlNRM18wICAgICAgICAgICAgICAgICAgICAgICgweDAxVUwgPDwgQURDX0pTUVJfSlNRM19Qb3MpICAgICAgLyohPCAweDAwMDAwNDAwICovDQojZGVmaW5lIEFEQ19KU1FSX0pTUTNfMSAgICAgICAgICAgICAgICAgICAgICAoMHgwMlVMIDw8IEFEQ19KU1FSX0pTUTNfUG9zKSAgICAgIC8qITwgMHgwMDAwMDgwMCAqLw0KI2RlZmluZSBBRENfSlNRUl9KU1EzXzIgICAgICAgICAgICAgICAgICAgICAgKDB4MDRVTCA8PCBBRENfSlNRUl9KU1EzX1BvcykgICAgICAvKiE8IDB4MDAwMDEwMDAgKi8NCiNkZWZpbmUgQURDX0pTUVJfSlNRM18zICAgICAgICAgICAgICAgICAgICAgICgweDA4VUwgPDwgQURDX0pTUVJfSlNRM19Qb3MpICAgICAgLyohPCAweDAwMDAyMDAwICovDQojZGVmaW5lIEFEQ19KU1FSX0pTUTNfNCAgICAgICAgICAgICAgICAgICAgICAoMHgxMFVMIDw8IEFEQ19KU1FSX0pTUTNfUG9zKSAgICAgIC8qITwgMHgwMDAwNDAwMCAqLw0KDQojZGVmaW5lIEFEQ19KU1FSX0pTUTRfUG9zICAgICAgICAgICAgICAgICAgICAoMTVVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEFEQ19KU1FSX0pTUTRfTXNrICAgICAgICAgICAgICAgICAgICAoMHgxRlVMIDw8IEFEQ19KU1FSX0pTUTRfUG9zKSAgICAgIC8qITwgMHgwMDBGODAwMCAqLw0KI2RlZmluZSBBRENfSlNRUl9KU1E0ICAgICAgICAgICAgICAgICAgICAgICAgQURDX0pTUVJfSlNRNF9Nc2sgICAgICAgICAgICAgICAgIC8qITwgQURDIGdyb3VwIGluamVjdGVkIHNlcXVlbmNlciByYW5rIDQgKi8NCiNkZWZpbmUgQURDX0pTUVJfSlNRNF8wICAgICAgICAgICAgICAgICAgICAgICgweDAxVUwgPDwgQURDX0pTUVJfSlNRNF9Qb3MpICAgICAgLyohPCAweDAwMDA4MDAwICovDQojZGVmaW5lIEFEQ19KU1FSX0pTUTRfMSAgICAgICAgICAgICAgICAgICAgICAoMHgwMlVMIDw8IEFEQ19KU1FSX0pTUTRfUG9zKSAgICAgIC8qITwgMHgwMDAxMDAwMCAqLw0KI2RlZmluZSBBRENfSlNRUl9KU1E0XzIgICAgICAgICAgICAgICAgICAgICAgKDB4MDRVTCA8PCBBRENfSlNRUl9KU1E0X1BvcykgICAgICAvKiE8IDB4MDAwMjAwMDAgKi8NCiNkZWZpbmUgQURDX0pTUVJfSlNRNF8zICAgICAgICAgICAgICAgICAgICAgICgweDA4VUwgPDwgQURDX0pTUVJfSlNRNF9Qb3MpICAgICAgLyohPCAweDAwMDQwMDAwICovDQojZGVmaW5lIEFEQ19KU1FSX0pTUTRfNCAgICAgICAgICAgICAgICAgICAgICAoMHgxMFVMIDw8IEFEQ19KU1FSX0pTUTRfUG9zKSAgICAgIC8qITwgMHgwMDA4MDAwMCAqLw0KDQojZGVmaW5lIEFEQ19KU1FSX0pMX1BvcyAgICAgICAgICAgICAgICAgICAgICAoMjBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEFEQ19KU1FSX0pMX01zayAgICAgICAgICAgICAgICAgICAgICAoMHgzVUwgPDwgQURDX0pTUVJfSkxfUG9zKSAgICAgICAgIC8qITwgMHgwMDMwMDAwMCAqLw0KI2RlZmluZSBBRENfSlNRUl9KTCAgICAgICAgICAgICAgICAgICAgICAgICAgQURDX0pTUVJfSkxfTXNrICAgICAgICAgICAgICAgICAgIC8qITwgQURDIGdyb3VwIGluamVjdGVkIHNlcXVlbmNlciBzY2FuIGxlbmd0aCAqLw0KI2RlZmluZSBBRENfSlNRUl9KTF8wICAgICAgICAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IEFEQ19KU1FSX0pMX1BvcykgICAgICAgICAvKiE8IDB4MDAxMDAwMDAgKi8NCiNkZWZpbmUgQURDX0pTUVJfSkxfMSAgICAgICAgICAgICAgICAgICAgICAgICgweDJVTCA8PCBBRENfSlNRUl9KTF9Qb3MpICAgICAgICAgLyohPCAweDAwMjAwMDAwICovDQoNCi8qKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgQURDX0pEUjEgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIEFEQ19KRFIxX0pEQVRBX1BvcyAgICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEFEQ19KRFIxX0pEQVRBX01zayAgICAgICAgICAgICAgICAgICAoMHhGRkZGVUwgPDwgQURDX0pEUjFfSkRBVEFfUG9zKSAgIC8qITwgMHgwMDAwRkZGRiAqLw0KI2RlZmluZSBBRENfSkRSMV9KREFUQSAgICAgICAgICAgICAgICAgICAgICAgQURDX0pEUjFfSkRBVEFfTXNrICAgICAgICAgICAgICAgIC8qITwgQURDIGdyb3VwIGluamVjdGVkIHNlcXVlbmNlciByYW5rIDEgY29udmVyc2lvbiBkYXRhICovDQoNCi8qKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgQURDX0pEUjIgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIEFEQ19KRFIyX0pEQVRBX1BvcyAgICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEFEQ19KRFIyX0pEQVRBX01zayAgICAgICAgICAgICAgICAgICAoMHhGRkZGVUwgPDwgQURDX0pEUjJfSkRBVEFfUG9zKSAgIC8qITwgMHgwMDAwRkZGRiAqLw0KI2RlZmluZSBBRENfSkRSMl9KREFUQSAgICAgICAgICAgICAgICAgICAgICAgQURDX0pEUjJfSkRBVEFfTXNrICAgICAgICAgICAgICAgIC8qITwgQURDIGdyb3VwIGluamVjdGVkIHNlcXVlbmNlciByYW5rIDIgY29udmVyc2lvbiBkYXRhICovDQoNCi8qKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgQURDX0pEUjMgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIEFEQ19KRFIzX0pEQVRBX1BvcyAgICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEFEQ19KRFIzX0pEQVRBX01zayAgICAgICAgICAgICAgICAgICAoMHhGRkZGVUwgPDwgQURDX0pEUjNfSkRBVEFfUG9zKSAgIC8qITwgMHgwMDAwRkZGRiAqLw0KI2RlZmluZSBBRENfSkRSM19KREFUQSAgICAgICAgICAgICAgICAgICAgICAgQURDX0pEUjNfSkRBVEFfTXNrICAgICAgICAgICAgICAgIC8qITwgQURDIGdyb3VwIGluamVjdGVkIHNlcXVlbmNlciByYW5rIDMgY29udmVyc2lvbiBkYXRhICovDQoNCi8qKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgQURDX0pEUjQgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIEFEQ19KRFI0X0pEQVRBX1BvcyAgICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEFEQ19KRFI0X0pEQVRBX01zayAgICAgICAgICAgICAgICAgICAoMHhGRkZGVUwgPDwgQURDX0pEUjRfSkRBVEFfUG9zKSAgIC8qITwgMHgwMDAwRkZGRiAqLw0KI2RlZmluZSBBRENfSkRSNF9KREFUQSAgICAgICAgICAgICAgICAgICAgICAgQURDX0pEUjRfSkRBVEFfTXNrICAgICAgICAgICAgICAgIC8qITwgQURDIGdyb3VwIGluamVjdGVkIHNlcXVlbmNlciByYW5rIDQgY29udmVyc2lvbiBkYXRhICovDQoNCi8qKioqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIEFEQ19EUiByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIEFEQ19EUl9EQVRBX1BvcyAgICAgICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEFEQ19EUl9EQVRBX01zayAgICAgICAgICAgICAgICAgICAgICAoMHhGRkZGVUwgPDwgQURDX0RSX0RBVEFfUG9zKSAgICAgIC8qITwgMHgwMDAwRkZGRiAqLw0KI2RlZmluZSBBRENfRFJfREFUQSAgICAgICAgICAgICAgICAgICAgICAgICAgQURDX0RSX0RBVEFfTXNrICAgICAgICAgICAgICAgICAgIC8qITwgQURDIGdyb3VwIHJlZ3VsYXIgY29udmVyc2lvbiBkYXRhICovDQoNCi8qKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBBRENfU01QUjAgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIEFEQ19TTVBSMF9TTVAzMF9Qb3MgICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEFEQ19TTVBSMF9TTVAzMF9Nc2sgICAgICAgICAgICAgICAgICAoMHg3VUwgPDwgQURDX1NNUFIwX1NNUDMwX1BvcykgICAgIC8qITwgMHgwMDAwMDAwNyAqLw0KI2RlZmluZSBBRENfU01QUjBfU01QMzAgICAgICAgICAgICAgICAgICAgICAgQURDX1NNUFIwX1NNUDMwX01zayAgICAgICAgICAgICAgIC8qITwgQURDIGNoYW5uZWwgMzAgc2FtcGxpbmcgdGltZSBzZWxlY3Rpb24gKi8NCiNkZWZpbmUgQURDX1NNUFIwX1NNUDMwXzAgICAgICAgICAgICAgICAgICAgICgweDFVTCA8PCBBRENfU01QUjBfU01QMzBfUG9zKSAgICAgLyohPCAweDAwMDAwMDAxICovDQojZGVmaW5lIEFEQ19TTVBSMF9TTVAzMF8xICAgICAgICAgICAgICAgICAgICAoMHgyVUwgPDwgQURDX1NNUFIwX1NNUDMwX1BvcykgICAgIC8qITwgMHgwMDAwMDAwMiAqLw0KI2RlZmluZSBBRENfU01QUjBfU01QMzBfMiAgICAgICAgICAgICAgICAgICAgKDB4NFVMIDw8IEFEQ19TTVBSMF9TTVAzMF9Qb3MpICAgICAvKiE8IDB4MDAwMDAwMDQgKi8NCiANCiNkZWZpbmUgQURDX1NNUFIwX1NNUDMxX1BvcyAgICAgICAgICAgICAgICAgICgzVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgQURDX1NNUFIwX1NNUDMxX01zayAgICAgICAgICAgICAgICAgICgweDdVTCA8PCBBRENfU01QUjBfU01QMzFfUG9zKSAgICAgLyohPCAweDAwMDAwMDM4ICovDQojZGVmaW5lIEFEQ19TTVBSMF9TTVAzMSAgICAgICAgICAgICAgICAgICAgICBBRENfU01QUjBfU01QMzFfTXNrICAgICAgICAgICAgICAgLyohPCBBREMgY2hhbm5lbCAzMSBzYW1wbGluZyB0aW1lIHNlbGVjdGlvbiAqLw0KI2RlZmluZSBBRENfU01QUjBfU01QMzFfMCAgICAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IEFEQ19TTVBSMF9TTVAzMV9Qb3MpICAgICAvKiE8IDB4MDAwMDAwMDggKi8NCiNkZWZpbmUgQURDX1NNUFIwX1NNUDMxXzEgICAgICAgICAgICAgICAgICAgICgweDJVTCA8PCBBRENfU01QUjBfU01QMzFfUG9zKSAgICAgLyohPCAweDAwMDAwMDEwICovDQojZGVmaW5lIEFEQ19TTVBSMF9TTVAzMV8yICAgICAgICAgICAgICAgICAgICAoMHg0VUwgPDwgQURDX1NNUFIwX1NNUDMxX1BvcykgICAgIC8qITwgMHgwMDAwMDAyMCAqLw0KDQovKioqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIEFEQ19DU1IgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBBRENfQ1NSX0FXRDFfUG9zICAgICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBBRENfQ1NSX0FXRDFfTXNrICAgICAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IEFEQ19DU1JfQVdEMV9Qb3MpICAgICAgICAvKiE8IDB4MDAwMDAwMDEgKi8NCiNkZWZpbmUgQURDX0NTUl9BV0QxICAgICAgICAgICAgICAgICAgICAgICAgIEFEQ19DU1JfQVdEMV9Nc2sgICAgICAgICAgICAgICAgICAvKiE8IEFEQyBtdWx0aW1vZGUgbWFzdGVyIGFuYWxvZyB3YXRjaGRvZyAxIGZsYWcgKi8NCiNkZWZpbmUgQURDX0NTUl9FT0NTMV9Qb3MgICAgICAgICAgICAgICAgICAgICgxVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgQURDX0NTUl9FT0NTMV9Nc2sgICAgICAgICAgICAgICAgICAgICgweDFVTCA8PCBBRENfQ1NSX0VPQ1MxX1BvcykgICAgICAgLyohPCAweDAwMDAwMDAyICovDQojZGVmaW5lIEFEQ19DU1JfRU9DUzEgICAgICAgICAgICAgICAgICAgICAgICBBRENfQ1NSX0VPQ1MxX01zayAgICAgICAgICAgICAgICAgLyohPCBBREMgbXVsdGltb2RlIG1hc3RlciBncm91cCByZWd1bGFyIGVuZCBvZiB1bml0YXJ5IGNvbnZlcnNpb24gb3IgZW5kIG9mIHNlcXVlbmNlIGNvbnZlcnNpb25zIGZsYWcgKi8NCiNkZWZpbmUgQURDX0NTUl9KRU9TMV9Qb3MgICAgICAgICAgICAgICAgICAgICgyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgQURDX0NTUl9KRU9TMV9Nc2sgICAgICAgICAgICAgICAgICAgICgweDFVTCA8PCBBRENfQ1NSX0pFT1MxX1BvcykgICAgICAgLyohPCAweDAwMDAwMDA0ICovDQojZGVmaW5lIEFEQ19DU1JfSkVPUzEgICAgICAgICAgICAgICAgICAgICAgICBBRENfQ1NSX0pFT1MxX01zayAgICAgICAgICAgICAgICAgLyohPCBBREMgbXVsdGltb2RlIG1hc3RlciBncm91cCBpbmplY3RlZCBlbmQgb2Ygc2VxdWVuY2UgY29udmVyc2lvbnMgZmxhZyAqLw0KI2RlZmluZSBBRENfQ1NSX0pTVFJUMV9Qb3MgICAgICAgICAgICAgICAgICAgKDNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBBRENfQ1NSX0pTVFJUMV9Nc2sgICAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IEFEQ19DU1JfSlNUUlQxX1BvcykgICAgICAvKiE8IDB4MDAwMDAwMDggKi8NCiNkZWZpbmUgQURDX0NTUl9KU1RSVDEgICAgICAgICAgICAgICAgICAgICAgIEFEQ19DU1JfSlNUUlQxX01zayAgICAgICAgICAgICAgICAvKiE8IEFEQyBtdWx0aW1vZGUgbWFzdGVyIGdyb3VwIGluamVjdGVkIGNvbnZlcnNpb24gc3RhcnQgZmxhZyAqLw0KI2RlZmluZSBBRENfQ1NSX1NUUlQxX1BvcyAgICAgICAgICAgICAgICAgICAgKDRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBBRENfQ1NSX1NUUlQxX01zayAgICAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IEFEQ19DU1JfU1RSVDFfUG9zKSAgICAgICAvKiE8IDB4MDAwMDAwMTAgKi8NCiNkZWZpbmUgQURDX0NTUl9TVFJUMSAgICAgICAgICAgICAgICAgICAgICAgIEFEQ19DU1JfU1RSVDFfTXNrICAgICAgICAgICAgICAgICAvKiE8IEFEQyBtdWx0aW1vZGUgbWFzdGVyIGdyb3VwIHJlZ3VsYXIgY29udmVyc2lvbiBzdGFydCBmbGFnICovDQojZGVmaW5lIEFEQ19DU1JfT1ZSMV9Qb3MgICAgICAgICAgICAgICAgICAgICAoNVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEFEQ19DU1JfT1ZSMV9Nc2sgICAgICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgQURDX0NTUl9PVlIxX1BvcykgICAgICAgIC8qITwgMHgwMDAwMDAyMCAqLw0KI2RlZmluZSBBRENfQ1NSX09WUjEgICAgICAgICAgICAgICAgICAgICAgICAgQURDX0NTUl9PVlIxX01zayAgICAgICAgICAgICAgICAgIC8qITwgQURDIG11bHRpbW9kZSBtYXN0ZXIgZ3JvdXAgcmVndWxhciBvdmVycnVuIGZsYWcgKi8NCiNkZWZpbmUgQURDX0NTUl9BRE9OUzFfUG9zICAgICAgICAgICAgICAgICAgICg2VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgQURDX0NTUl9BRE9OUzFfTXNrICAgICAgICAgICAgICAgICAgICgweDFVTCA8PCBBRENfQ1NSX0FET05TMV9Qb3MpICAgICAgLyohPCAweDAwMDAwMDQwICovDQojZGVmaW5lIEFEQ19DU1JfQURPTlMxICAgICAgICAgICAgICAgICAgICAgICBBRENfQ1NSX0FET05TMV9Nc2sgICAgICAgICAgICAgICAgLyohPCBBREMgbXVsdGltb2RlIG1hc3RlciByZWFkeSBmbGFnICovDQoNCi8qIExlZ2FjeSBkZWZpbmVzICovDQojZGVmaW5lICBBRENfQ1NSX0VPQzEgICAgICAgICAgICAgICAgICAgICAgICAoQURDX0NTUl9FT0NTMSkNCiNkZWZpbmUgIEFEQ19DU1JfSkVPQzEgICAgICAgICAgICAgICAgICAgICAgIChBRENfQ1NSX0pFT1MxKQ0KDQovKioqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIEFEQ19DQ1IgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBBRENfQ0NSX0FEQ1BSRV9Qb3MgICAgICAgICAgICAgICAgICAgKDE2VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBBRENfQ0NSX0FEQ1BSRV9Nc2sgICAgICAgICAgICAgICAgICAgKDB4M1VMIDw8IEFEQ19DQ1JfQURDUFJFX1BvcykgICAgICAvKiE8IDB4MDAwMzAwMDAgKi8NCiNkZWZpbmUgQURDX0NDUl9BRENQUkUgICAgICAgICAgICAgICAgICAgICAgIEFEQ19DQ1JfQURDUFJFX01zayAgICAgICAgICAgICAgICAvKiE8IEFEQyBjbG9jayBzb3VyY2UgYXN5bmNocm9ub3VzIHByZXNjYWxlciAqLw0KI2RlZmluZSBBRENfQ0NSX0FEQ1BSRV8wICAgICAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IEFEQ19DQ1JfQURDUFJFX1BvcykgICAgICAvKiE8IDB4MDAwMTAwMDAgKi8NCiNkZWZpbmUgQURDX0NDUl9BRENQUkVfMSAgICAgICAgICAgICAgICAgICAgICgweDJVTCA8PCBBRENfQ0NSX0FEQ1BSRV9Qb3MpICAgICAgLyohPCAweDAwMDIwMDAwICovDQojZGVmaW5lIEFEQ19DQ1JfVFNWUkVGRV9Qb3MgICAgICAgICAgICAgICAgICAoMjNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEFEQ19DQ1JfVFNWUkVGRV9Nc2sgICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgQURDX0NDUl9UU1ZSRUZFX1BvcykgICAgIC8qITwgMHgwMDgwMDAwMCAqLw0KI2RlZmluZSBBRENfQ0NSX1RTVlJFRkUgICAgICAgICAgICAgICAgICAgICAgQURDX0NDUl9UU1ZSRUZFX01zayAgICAgICAgICAgICAgIC8qITwgQURDIGludGVybmFsIHBhdGggdG8gVnJlZkludCBhbmQgdGVtcGVyYXR1cmUgc2Vuc29yIGVuYWJsZSAqLw0KDQovKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLw0KLyogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8NCi8qICAgICAgICAgICAgICAgICAgICAgIEFuYWxvZyBDb21wYXJhdG9ycyAoQ09NUCkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovDQovKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLw0KLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8NCg0KLyoqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIENPTVBfQ1NSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgQ09NUF9DU1JfMTBLUFUgICAgICAgICAgICAgICAgICAgICAgKDB4MDAwMDAwMDFVKSAgICAgICAgICAgICAgICAgICAgICAvKiE8IENvbXBhcmF0b3IgMSBpbnB1dCBwbHVzIDEwSyBwdWxsLXVwIHJlc2lzdG9yICovDQojZGVmaW5lIENPTVBfQ1NSXzQwMEtQVSAgICAgICAgICAgICAgICAgICAgICgweDAwMDAwMDAyVSkgICAgICAgICAgICAgICAgICAgICAgLyohPCBDb21wYXJhdG9yIDEgaW5wdXQgcGx1cyA0MDBLIHB1bGwtdXAgcmVzaXN0b3IgKi8NCiNkZWZpbmUgQ09NUF9DU1JfMTBLUEQgICAgICAgICAgICAgICAgICAgICAgKDB4MDAwMDAwMDRVKSAgICAgICAgICAgICAgICAgICAgICAvKiE8IENvbXBhcmF0b3IgMSBpbnB1dCBwbHVzIDEwSyBwdWxsLWRvd24gcmVzaXN0b3IgKi8NCiNkZWZpbmUgQ09NUF9DU1JfNDAwS1BEICAgICAgICAgICAgICAgICAgICAgKDB4MDAwMDAwMDhVKSAgICAgICAgICAgICAgICAgICAgICAvKiE8IENvbXBhcmF0b3IgMSBpbnB1dCBwbHVzIDQwMEsgcHVsbC1kb3duIHJlc2lzdG9yICovDQojZGVmaW5lIENPTVBfQ1NSX0NNUDFFTl9Qb3MgICAgICAgICAgICAgICAgICg0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIENPTVBfQ1NSX0NNUDFFTl9Nc2sgICAgICAgICAgICAgICAgICgweDFVTCA8PCBDT01QX0NTUl9DTVAxRU5fUG9zKSAgICAgIC8qITwgMHgwMDAwMDAxMCAqLw0KI2RlZmluZSBDT01QX0NTUl9DTVAxRU4gICAgICAgICAgICAgICAgICAgICBDT01QX0NTUl9DTVAxRU5fTXNrICAgICAgICAgICAgICAgIC8qITwgQ29tcGFyYXRvciAxIGVuYWJsZSAqLw0KI2RlZmluZSBDT01QX0NTUl9DTVAxT1VUX1BvcyAgICAgICAgICAgICAgICAoN1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBDT01QX0NTUl9DTVAxT1VUX01zayAgICAgICAgICAgICAgICAoMHgxVUwgPDwgQ09NUF9DU1JfQ01QMU9VVF9Qb3MpICAgICAvKiE8IDB4MDAwMDAwODAgKi8NCiNkZWZpbmUgQ09NUF9DU1JfQ01QMU9VVCAgICAgICAgICAgICAgICAgICAgQ09NUF9DU1JfQ01QMU9VVF9Nc2sgICAgICAgICAgICAgICAvKiE8IENvbXBhcmF0b3IgMSBvdXRwdXQgbGV2ZWwgKi8NCiNkZWZpbmUgQ09NUF9DU1JfU1BFRURfUG9zICAgICAgICAgICAgICAgICAgKDEyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgQ09NUF9DU1JfU1BFRURfTXNrICAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IENPTVBfQ1NSX1NQRUVEX1BvcykgICAgICAgLyohPCAweDAwMDAxMDAwICovDQojZGVmaW5lIENPTVBfQ1NSX1NQRUVEICAgICAgICAgICAgICAgICAgICAgIENPTVBfQ1NSX1NQRUVEX01zayAgICAgICAgICAgICAgICAgLyohPCBDb21wYXJhdG9yIDIgcG93ZXIgbW9kZSAqLw0KI2RlZmluZSBDT01QX0NTUl9DTVAyT1VUX1BvcyAgICAgICAgICAgICAgICAoMTNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBDT01QX0NTUl9DTVAyT1VUX01zayAgICAgICAgICAgICAgICAoMHgxVUwgPDwgQ09NUF9DU1JfQ01QMk9VVF9Qb3MpICAgICAvKiE8IDB4MDAwMDIwMDAgKi8NCiNkZWZpbmUgQ09NUF9DU1JfQ01QMk9VVCAgICAgICAgICAgICAgICAgICAgQ09NUF9DU1JfQ01QMk9VVF9Nc2sgICAgICAgICAgICAgICAvKiE8IENvbXBhcmF0b3IgMiBvdXRwdXQgbGV2ZWwgKi8NCg0KI2RlZmluZSBDT01QX0NTUl9XTkRXRV9Qb3MgICAgICAgICAgICAgICAgICAoMTdVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBDT01QX0NTUl9XTkRXRV9Nc2sgICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgQ09NUF9DU1JfV05EV0VfUG9zKSAgICAgICAvKiE8IDB4MDAwMjAwMDAgKi8NCiNkZWZpbmUgQ09NUF9DU1JfV05EV0UgICAgICAgICAgICAgICAgICAgICAgQ09NUF9DU1JfV05EV0VfTXNrICAgICAgICAgICAgICAgICAvKiE8IFBhaXIgb2YgY29tcGFyYXRvcnMgd2luZG93IG1vZGUuIEJpdCBpbnRlbmRlZCB0byBiZSB1c2VkIHdpdGggQ09NUCBjb21tb24gaW5zdGFuY2UgKENPTVBfQ29tbW9uX1R5cGVEZWYpICAqLw0KDQojZGVmaW5lIENPTVBfQ1NSX0lOU0VMX1BvcyAgICAgICAgICAgICAgICAgICgxOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIENPTVBfQ1NSX0lOU0VMX01zayAgICAgICAgICAgICAgICAgICgweDdVTCA8PCBDT01QX0NTUl9JTlNFTF9Qb3MpICAgICAgIC8qITwgMHgwMDFDMDAwMCAqLw0KI2RlZmluZSBDT01QX0NTUl9JTlNFTCAgICAgICAgICAgICAgICAgICAgICBDT01QX0NTUl9JTlNFTF9Nc2sgICAgICAgICAgICAgICAgIC8qITwgQ29tcGFyYXRvciAyIGlucHV0IG1pbnVzIHNlbGVjdGlvbiAqLw0KI2RlZmluZSBDT01QX0NTUl9JTlNFTF8wICAgICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgQ09NUF9DU1JfSU5TRUxfUG9zKSAgICAgICAvKiE8IDB4MDAwNDAwMDAgKi8NCiNkZWZpbmUgQ09NUF9DU1JfSU5TRUxfMSAgICAgICAgICAgICAgICAgICAgKDB4MlVMIDw8IENPTVBfQ1NSX0lOU0VMX1BvcykgICAgICAgLyohPCAweDAwMDgwMDAwICovDQojZGVmaW5lIENPTVBfQ1NSX0lOU0VMXzIgICAgICAgICAgICAgICAgICAgICgweDRVTCA8PCBDT01QX0NTUl9JTlNFTF9Qb3MpICAgICAgIC8qITwgMHgwMDEwMDAwMCAqLw0KI2RlZmluZSBDT01QX0NTUl9PVVRTRUxfUG9zICAgICAgICAgICAgICAgICAoMjFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBDT01QX0NTUl9PVVRTRUxfTXNrICAgICAgICAgICAgICAgICAoMHg3VUwgPDwgQ09NUF9DU1JfT1VUU0VMX1BvcykgICAgICAvKiE8IDB4MDBFMDAwMDAgKi8NCiNkZWZpbmUgQ09NUF9DU1JfT1VUU0VMICAgICAgICAgICAgICAgICAgICAgQ09NUF9DU1JfT1VUU0VMX01zayAgICAgICAgICAgICAgICAvKiE8IENvbXBhcmF0b3IgMiBvdXRwdXQgcmVkaXJlY3Rpb24gKi8NCiNkZWZpbmUgQ09NUF9DU1JfT1VUU0VMXzAgICAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IENPTVBfQ1NSX09VVFNFTF9Qb3MpICAgICAgLyohPCAweDAwMjAwMDAwICovDQojZGVmaW5lIENPTVBfQ1NSX09VVFNFTF8xICAgICAgICAgICAgICAgICAgICgweDJVTCA8PCBDT01QX0NTUl9PVVRTRUxfUG9zKSAgICAgIC8qITwgMHgwMDQwMDAwMCAqLw0KI2RlZmluZSBDT01QX0NTUl9PVVRTRUxfMiAgICAgICAgICAgICAgICAgICAoMHg0VUwgPDwgQ09NUF9DU1JfT1VUU0VMX1BvcykgICAgICAvKiE8IDB4MDA4MDAwMDAgKi8NCg0KLyogQml0cyBwcmVzZW50IGluIENPTVAgcmVnaXN0ZXIgYnV0IG5vdCByZWxhdGVkIHRvIGNvbXBhcmF0b3IgKi8NCi8qIChvciBwYXJ0aWFsbHkgcmVsYXRlZCB0byBjb21wYXJhdG9yLCBpbiBhZGRpdGlvbiB0byBvdGhlciBwZXJpcGhlcmFscykgKi8NCiNkZWZpbmUgQ09NUF9DU1JfU1cxX1BvcyAgICAgICAgICAgICAgICAgICAgKDVVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgQ09NUF9DU1JfU1cxX01zayAgICAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IENPTVBfQ1NSX1NXMV9Qb3MpICAgICAgICAgLyohPCAweDAwMDAwMDIwICovDQojZGVmaW5lIENPTVBfQ1NSX1NXMSAgICAgICAgICAgICAgICAgICAgICAgIENPTVBfQ1NSX1NXMV9Nc2sgICAgICAgICAgICAgICAgICAgLyohPCBTVzEgYW5hbG9nIHN3aXRjaCBlbmFibGUgKi8NCiNkZWZpbmUgQ09NUF9DU1JfVlJFRk9VVEVOX1BvcyAgICAgICAgICAgICAgKDE2VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgQ09NUF9DU1JfVlJFRk9VVEVOX01zayAgICAgICAgICAgICAgKDB4MVVMIDw8IENPTVBfQ1NSX1ZSRUZPVVRFTl9Qb3MpICAgLyohPCAweDAwMDEwMDAwICovDQojZGVmaW5lIENPTVBfQ1NSX1ZSRUZPVVRFTiAgICAgICAgICAgICAgICAgIENPTVBfQ1NSX1ZSRUZPVVRFTl9Nc2sgICAgICAgICAgICAgLyohPCBWcmVmSW50IG91dHB1dCBlbmFibGUgb24gR1BJTyBncm91cCAzICovDQoNCiNkZWZpbmUgQ09NUF9DU1JfRkNIM19Qb3MgICAgICAgICAgICAgICAgICAgKDI2VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgQ09NUF9DU1JfRkNIM19Nc2sgICAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IENPTVBfQ1NSX0ZDSDNfUG9zKSAgICAgICAgLyohPCAweDA0MDAwMDAwICovDQojZGVmaW5lIENPTVBfQ1NSX0ZDSDMgICAgICAgICAgICAgICAgICAgICAgIENPTVBfQ1NSX0ZDSDNfTXNrICAgICAgICAgICAgICAgICAgLyohPCBCaXQgMjYgKi8NCiNkZWZpbmUgQ09NUF9DU1JfRkNIOF9Qb3MgICAgICAgICAgICAgICAgICAgKDI3VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgQ09NUF9DU1JfRkNIOF9Nc2sgICAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IENPTVBfQ1NSX0ZDSDhfUG9zKSAgICAgICAgLyohPCAweDA4MDAwMDAwICovDQojZGVmaW5lIENPTVBfQ1NSX0ZDSDggICAgICAgICAgICAgICAgICAgICAgIENPTVBfQ1NSX0ZDSDhfTXNrICAgICAgICAgICAgICAgICAgLyohPCBCaXQgMjcgKi8NCiNkZWZpbmUgQ09NUF9DU1JfUkNIMTNfUG9zICAgICAgICAgICAgICAgICAgKDI4VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgQ09NUF9DU1JfUkNIMTNfTXNrICAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IENPTVBfQ1NSX1JDSDEzX1BvcykgICAgICAgLyohPCAweDEwMDAwMDAwICovDQojZGVmaW5lIENPTVBfQ1NSX1JDSDEzICAgICAgICAgICAgICAgICAgICAgIENPTVBfQ1NSX1JDSDEzX01zayAgICAgICAgICAgICAgICAgLyohPCBCaXQgMjggKi8NCg0KI2RlZmluZSBDT01QX0NTUl9DQUlFX1BvcyAgICAgICAgICAgICAgICAgICAoMjlVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBDT01QX0NTUl9DQUlFX01zayAgICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgQ09NUF9DU1JfQ0FJRV9Qb3MpICAgICAgICAvKiE8IDB4MjAwMDAwMDAgKi8NCiNkZWZpbmUgQ09NUF9DU1JfQ0FJRSAgICAgICAgICAgICAgICAgICAgICAgQ09NUF9DU1JfQ0FJRV9Nc2sgICAgICAgICAgICAgICAgICAvKiE8IEJpdCAyOSAqLw0KI2RlZmluZSBDT01QX0NTUl9DQUlGX1BvcyAgICAgICAgICAgICAgICAgICAoMzBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBDT01QX0NTUl9DQUlGX01zayAgICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgQ09NUF9DU1JfQ0FJRl9Qb3MpICAgICAgICAvKiE8IDB4NDAwMDAwMDAgKi8NCiNkZWZpbmUgQ09NUF9DU1JfQ0FJRiAgICAgICAgICAgICAgICAgICAgICAgQ09NUF9DU1JfQ0FJRl9Nc2sgICAgICAgICAgICAgICAgICAvKiE8IEJpdCAzMCAqLw0KI2RlZmluZSBDT01QX0NTUl9UU1VTUF9Qb3MgICAgICAgICAgICAgICAgICAoMzFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBDT01QX0NTUl9UU1VTUF9Nc2sgICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgQ09NUF9DU1JfVFNVU1BfUG9zKSAgICAgICAvKiE8IDB4ODAwMDAwMDAgKi8NCiNkZWZpbmUgQ09NUF9DU1JfVFNVU1AgICAgICAgICAgICAgICAgICAgICAgQ09NUF9DU1JfVFNVU1BfTXNrICAgICAgICAgICAgICAgICAvKiE8IEJpdCAzMSAqLw0KDQovKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLw0KLyogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8NCi8qICAgICAgICAgICAgICAgICAgICAgICAgIE9wZXJhdGlvbmFsIEFtcGxpZmllciAoT1BBTVApICAgICAgICAgICAgICAgICAgICAgICovDQovKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLw0KLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8NCi8qKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgT1BBTVBfQ1NSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIE9QQU1QX0NTUl9PUEExUERfUG9zICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIE9QQU1QX0NTUl9PUEExUERfTXNrICAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IE9QQU1QX0NTUl9PUEExUERfUG9zKSAgIC8qITwgMHgwMDAwMDAwMSAqLw0KI2RlZmluZSBPUEFNUF9DU1JfT1BBMVBEICAgICAgICAgICAgICAgICAgICAgIE9QQU1QX0NTUl9PUEExUERfTXNrICAgICAgICAgICAgIC8qITwgT1BBTVAxIGRpc2FibGUgKi8NCiNkZWZpbmUgT1BBTVBfQ1NSX1MzU0VMMV9Qb3MgICAgICAgICAgICAgICAgICAoMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgT1BBTVBfQ1NSX1MzU0VMMV9Nc2sgICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgT1BBTVBfQ1NSX1MzU0VMMV9Qb3MpICAgLyohPCAweDAwMDAwMDAyICovDQojZGVmaW5lIE9QQU1QX0NTUl9TM1NFTDEgICAgICAgICAgICAgICAgICAgICAgT1BBTVBfQ1NSX1MzU0VMMV9Nc2sgICAgICAgICAgICAgLyohPCBTd2l0Y2ggMyBmb3IgT1BBTVAxIEVuYWJsZSAqLw0KI2RlZmluZSBPUEFNUF9DU1JfUzRTRUwxX1BvcyAgICAgICAgICAgICAgICAgICgyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBPUEFNUF9DU1JfUzRTRUwxX01zayAgICAgICAgICAgICAgICAgICgweDFVTCA8PCBPUEFNUF9DU1JfUzRTRUwxX1BvcykgICAvKiE8IDB4MDAwMDAwMDQgKi8NCiNkZWZpbmUgT1BBTVBfQ1NSX1M0U0VMMSAgICAgICAgICAgICAgICAgICAgICBPUEFNUF9DU1JfUzRTRUwxX01zayAgICAgICAgICAgICAvKiE8IFN3aXRjaCA0IGZvciBPUEFNUDEgRW5hYmxlICovDQojZGVmaW5lIE9QQU1QX0NTUl9TNVNFTDFfUG9zICAgICAgICAgICAgICAgICAgKDNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIE9QQU1QX0NTUl9TNVNFTDFfTXNrICAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IE9QQU1QX0NTUl9TNVNFTDFfUG9zKSAgIC8qITwgMHgwMDAwMDAwOCAqLw0KI2RlZmluZSBPUEFNUF9DU1JfUzVTRUwxICAgICAgICAgICAgICAgICAgICAgIE9QQU1QX0NTUl9TNVNFTDFfTXNrICAgICAgICAgICAgIC8qITwgU3dpdGNoIDUgZm9yIE9QQU1QMSBFbmFibGUgKi8NCiNkZWZpbmUgT1BBTVBfQ1NSX1M2U0VMMV9Qb3MgICAgICAgICAgICAgICAgICAoNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgT1BBTVBfQ1NSX1M2U0VMMV9Nc2sgICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgT1BBTVBfQ1NSX1M2U0VMMV9Qb3MpICAgLyohPCAweDAwMDAwMDEwICovDQojZGVmaW5lIE9QQU1QX0NTUl9TNlNFTDEgICAgICAgICAgICAgICAgICAgICAgT1BBTVBfQ1NSX1M2U0VMMV9Nc2sgICAgICAgICAgICAgLyohPCBTd2l0Y2ggNiBmb3IgT1BBTVAxIEVuYWJsZSAqLw0KI2RlZmluZSBPUEFNUF9DU1JfT1BBMUNBTF9MX1BvcyAgICAgICAgICAgICAgICg1VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBPUEFNUF9DU1JfT1BBMUNBTF9MX01zayAgICAgICAgICAgICAgICgweDFVTCA8PCBPUEFNUF9DU1JfT1BBMUNBTF9MX1BvcykgLyohPCAweDAwMDAwMDIwICovDQojZGVmaW5lIE9QQU1QX0NTUl9PUEExQ0FMX0wgICAgICAgICAgICAgICAgICAgT1BBTVBfQ1NSX09QQTFDQUxfTF9Nc2sgICAgICAgICAgLyohPCBPUEFNUDEgT2Zmc2V0IGNhbGlicmF0aW9uIGZvciBQIGRpZmZlcmVudGlhbCBwYWlyICovDQojZGVmaW5lIE9QQU1QX0NTUl9PUEExQ0FMX0hfUG9zICAgICAgICAgICAgICAgKDZVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIE9QQU1QX0NTUl9PUEExQ0FMX0hfTXNrICAgICAgICAgICAgICAgKDB4MVVMIDw8IE9QQU1QX0NTUl9PUEExQ0FMX0hfUG9zKSAvKiE8IDB4MDAwMDAwNDAgKi8NCiNkZWZpbmUgT1BBTVBfQ1NSX09QQTFDQUxfSCAgICAgICAgICAgICAgICAgICBPUEFNUF9DU1JfT1BBMUNBTF9IX01zayAgICAgICAgICAvKiE8IE9QQU1QMSBPZmZzZXQgY2FsaWJyYXRpb24gZm9yIE4gZGlmZmVyZW50aWFsIHBhaXIgKi8NCiNkZWZpbmUgT1BBTVBfQ1NSX09QQTFMUE1fUG9zICAgICAgICAgICAgICAgICAoN1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgT1BBTVBfQ1NSX09QQTFMUE1fTXNrICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgT1BBTVBfQ1NSX09QQTFMUE1fUG9zKSAgLyohPCAweDAwMDAwMDgwICovDQojZGVmaW5lIE9QQU1QX0NTUl9PUEExTFBNICAgICAgICAgICAgICAgICAgICAgT1BBTVBfQ1NSX09QQTFMUE1fTXNrICAgICAgICAgICAgLyohPCBPUEFNUDEgTG93IHBvd2VyIGVuYWJsZSAqLw0KI2RlZmluZSBPUEFNUF9DU1JfT1BBMlBEX1BvcyAgICAgICAgICAgICAgICAgICg4VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBPUEFNUF9DU1JfT1BBMlBEX01zayAgICAgICAgICAgICAgICAgICgweDFVTCA8PCBPUEFNUF9DU1JfT1BBMlBEX1BvcykgICAvKiE8IDB4MDAwMDAxMDAgKi8NCiNkZWZpbmUgT1BBTVBfQ1NSX09QQTJQRCAgICAgICAgICAgICAgICAgICAgICBPUEFNUF9DU1JfT1BBMlBEX01zayAgICAgICAgICAgICAvKiE8IE9QQU1QMiBkaXNhYmxlICovDQojZGVmaW5lIE9QQU1QX0NTUl9TM1NFTDJfUG9zICAgICAgICAgICAgICAgICAgKDlVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIE9QQU1QX0NTUl9TM1NFTDJfTXNrICAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IE9QQU1QX0NTUl9TM1NFTDJfUG9zKSAgIC8qITwgMHgwMDAwMDIwMCAqLw0KI2RlZmluZSBPUEFNUF9DU1JfUzNTRUwyICAgICAgICAgICAgICAgICAgICAgIE9QQU1QX0NTUl9TM1NFTDJfTXNrICAgICAgICAgICAgIC8qITwgU3dpdGNoIDMgZm9yIE9QQU1QMiBFbmFibGUgKi8NCiNkZWZpbmUgT1BBTVBfQ1NSX1M0U0VMMl9Qb3MgICAgICAgICAgICAgICAgICAoMTBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgT1BBTVBfQ1NSX1M0U0VMMl9Nc2sgICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgT1BBTVBfQ1NSX1M0U0VMMl9Qb3MpICAgLyohPCAweDAwMDAwNDAwICovDQojZGVmaW5lIE9QQU1QX0NTUl9TNFNFTDIgICAgICAgICAgICAgICAgICAgICAgT1BBTVBfQ1NSX1M0U0VMMl9Nc2sgICAgICAgICAgICAgLyohPCBTd2l0Y2ggNCBmb3IgT1BBTVAyIEVuYWJsZSAqLw0KI2RlZmluZSBPUEFNUF9DU1JfUzVTRUwyX1BvcyAgICAgICAgICAgICAgICAgICgxMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBPUEFNUF9DU1JfUzVTRUwyX01zayAgICAgICAgICAgICAgICAgICgweDFVTCA8PCBPUEFNUF9DU1JfUzVTRUwyX1BvcykgICAvKiE8IDB4MDAwMDA4MDAgKi8NCiNkZWZpbmUgT1BBTVBfQ1NSX1M1U0VMMiAgICAgICAgICAgICAgICAgICAgICBPUEFNUF9DU1JfUzVTRUwyX01zayAgICAgICAgICAgICAvKiE8IFN3aXRjaCA1IGZvciBPUEFNUDIgRW5hYmxlICovDQojZGVmaW5lIE9QQU1QX0NTUl9TNlNFTDJfUG9zICAgICAgICAgICAgICAgICAgKDEyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIE9QQU1QX0NTUl9TNlNFTDJfTXNrICAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IE9QQU1QX0NTUl9TNlNFTDJfUG9zKSAgIC8qITwgMHgwMDAwMTAwMCAqLw0KI2RlZmluZSBPUEFNUF9DU1JfUzZTRUwyICAgICAgICAgICAgICAgICAgICAgIE9QQU1QX0NTUl9TNlNFTDJfTXNrICAgICAgICAgICAgIC8qITwgU3dpdGNoIDYgZm9yIE9QQU1QMiBFbmFibGUgKi8NCiNkZWZpbmUgT1BBTVBfQ1NSX09QQTJDQUxfTF9Qb3MgICAgICAgICAgICAgICAoMTNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgT1BBTVBfQ1NSX09QQTJDQUxfTF9Nc2sgICAgICAgICAgICAgICAoMHgxVUwgPDwgT1BBTVBfQ1NSX09QQTJDQUxfTF9Qb3MpIC8qITwgMHgwMDAwMjAwMCAqLw0KI2RlZmluZSBPUEFNUF9DU1JfT1BBMkNBTF9MICAgICAgICAgICAgICAgICAgIE9QQU1QX0NTUl9PUEEyQ0FMX0xfTXNrICAgICAgICAgIC8qITwgT1BBTVAyIE9mZnNldCBjYWxpYnJhdGlvbiBmb3IgUCBkaWZmZXJlbnRpYWwgcGFpciAqLw0KI2RlZmluZSBPUEFNUF9DU1JfT1BBMkNBTF9IX1BvcyAgICAgICAgICAgICAgICgxNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBPUEFNUF9DU1JfT1BBMkNBTF9IX01zayAgICAgICAgICAgICAgICgweDFVTCA8PCBPUEFNUF9DU1JfT1BBMkNBTF9IX1BvcykgLyohPCAweDAwMDA0MDAwICovDQojZGVmaW5lIE9QQU1QX0NTUl9PUEEyQ0FMX0ggICAgICAgICAgICAgICAgICAgT1BBTVBfQ1NSX09QQTJDQUxfSF9Nc2sgICAgICAgICAgLyohPCBPUEFNUDIgT2Zmc2V0IGNhbGlicmF0aW9uIGZvciBOIGRpZmZlcmVudGlhbCBwYWlyICovDQojZGVmaW5lIE9QQU1QX0NTUl9PUEEyTFBNX1BvcyAgICAgICAgICAgICAgICAgKDE1VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIE9QQU1QX0NTUl9PUEEyTFBNX01zayAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IE9QQU1QX0NTUl9PUEEyTFBNX1BvcykgIC8qITwgMHgwMDAwODAwMCAqLw0KI2RlZmluZSBPUEFNUF9DU1JfT1BBMkxQTSAgICAgICAgICAgICAgICAgICAgIE9QQU1QX0NTUl9PUEEyTFBNX01zayAgICAgICAgICAgIC8qITwgT1BBTVAyIExvdyBwb3dlciBlbmFibGUgKi8NCiNkZWZpbmUgT1BBTVBfQ1NSX0FOQVdTRUwxX1BvcyAgICAgICAgICAgICAgICAoMjRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgT1BBTVBfQ1NSX0FOQVdTRUwxX01zayAgICAgICAgICAgICAgICAoMHgxVUwgPDwgT1BBTVBfQ1NSX0FOQVdTRUwxX1BvcykgLyohPCAweDAxMDAwMDAwICovDQojZGVmaW5lIE9QQU1QX0NTUl9BTkFXU0VMMSAgICAgICAgICAgICAgICAgICAgT1BBTVBfQ1NSX0FOQVdTRUwxX01zayAgICAgICAgICAgLyohPCBTd2l0Y2ggQU5BIEVuYWJsZSBmb3IgT1BBTVAxICovIA0KI2RlZmluZSBPUEFNUF9DU1JfQU5BV1NFTDJfUG9zICAgICAgICAgICAgICAgICgyNVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBPUEFNUF9DU1JfQU5BV1NFTDJfTXNrICAgICAgICAgICAgICAgICgweDFVTCA8PCBPUEFNUF9DU1JfQU5BV1NFTDJfUG9zKSAvKiE8IDB4MDIwMDAwMDAgKi8NCiNkZWZpbmUgT1BBTVBfQ1NSX0FOQVdTRUwyICAgICAgICAgICAgICAgICAgICBPUEFNUF9DU1JfQU5BV1NFTDJfTXNrICAgICAgICAgICAvKiE8IFN3aXRjaCBBTkEgRW5hYmxlIGZvciBPUEFNUDIgKi8NCiNkZWZpbmUgT1BBTVBfQ1NSX1M3U0VMMl9Qb3MgICAgICAgICAgICAgICAgICAoMjdVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgT1BBTVBfQ1NSX1M3U0VMMl9Nc2sgICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgT1BBTVBfQ1NSX1M3U0VMMl9Qb3MpICAgLyohPCAweDA4MDAwMDAwICovDQojZGVmaW5lIE9QQU1QX0NTUl9TN1NFTDIgICAgICAgICAgICAgICAgICAgICAgT1BBTVBfQ1NSX1M3U0VMMl9Nc2sgICAgICAgICAgICAgLyohPCBTd2l0Y2ggNyBmb3IgT1BBTVAyIEVuYWJsZSAqLw0KI2RlZmluZSBPUEFNUF9DU1JfQU9QX1JBTkdFX1BvcyAgICAgICAgICAgICAgICgyOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBPUEFNUF9DU1JfQU9QX1JBTkdFX01zayAgICAgICAgICAgICAgICgweDFVTCA8PCBPUEFNUF9DU1JfQU9QX1JBTkdFX1BvcykgLyohPCAweDEwMDAwMDAwICovDQojZGVmaW5lIE9QQU1QX0NTUl9BT1BfUkFOR0UgICAgICAgICAgICAgICAgICAgT1BBTVBfQ1NSX0FPUF9SQU5HRV9Nc2sgICAgICAgICAgLyohPCBDb21tb24gdG8gc2V2ZXJhbCBPUEFNUCBpbnN0YW5jZXM6IE9wZXJhdGlvbmFsIGFtcGxpZmllciB2b2x0YWdlIHN1cHBseSByYW5nZS4gQml0IGludGVuZGVkIHRvIGJlIHVzZWQgd2l0aCBPUEFNUCBjb21tb24gaW5zdGFuY2UgKE9QQU1QX0NvbW1vbl9UeXBlRGVmKSAqLw0KI2RlZmluZSBPUEFNUF9DU1JfT1BBMUNBTE9VVF9Qb3MgICAgICAgICAgICAgICgyOVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBPUEFNUF9DU1JfT1BBMUNBTE9VVF9Nc2sgICAgICAgICAgICAgICgweDFVTCA8PCBPUEFNUF9DU1JfT1BBMUNBTE9VVF9Qb3MpIC8qITwgMHgyMDAwMDAwMCAqLw0KI2RlZmluZSBPUEFNUF9DU1JfT1BBMUNBTE9VVCAgICAgICAgICAgICAgICAgIE9QQU1QX0NTUl9PUEExQ0FMT1VUX01zayAgICAgICAgIC8qITwgT1BBTVAxIGNhbGlicmF0aW9uIG91dHB1dCAqLw0KI2RlZmluZSBPUEFNUF9DU1JfT1BBMkNBTE9VVF9Qb3MgICAgICAgICAgICAgICgzMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBPUEFNUF9DU1JfT1BBMkNBTE9VVF9Nc2sgICAgICAgICAgICAgICgweDFVTCA8PCBPUEFNUF9DU1JfT1BBMkNBTE9VVF9Qb3MpIC8qITwgMHg0MDAwMDAwMCAqLw0KI2RlZmluZSBPUEFNUF9DU1JfT1BBMkNBTE9VVCAgICAgICAgICAgICAgICAgIE9QQU1QX0NTUl9PUEEyQ0FMT1VUX01zayAgICAgICAgIC8qITwgT1BBTVAyIGNhbGlicmF0aW9uIG91dHB1dCAqLw0KDQovKioqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIE9QQU1QX09UUiByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBPUEFNUF9PVFJfQU8xX09QVF9PRkZTRVRfVFJJTV9MT1dfUG9zICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBPUEFNUF9PVFJfQU8xX09QVF9PRkZTRVRfVFJJTV9MT1dfTXNrICgweDFGVUwgPDwgT1BBTVBfT1RSX0FPMV9PUFRfT0ZGU0VUX1RSSU1fTE9XX1BvcykgLyohPCAweDAwMDAwMDFGICovDQojZGVmaW5lIE9QQU1QX09UUl9BTzFfT1BUX09GRlNFVF9UUklNX0xPVyAgICAgT1BBTVBfT1RSX0FPMV9PUFRfT0ZGU0VUX1RSSU1fTE9XX01zayAvKiE8IE9mZnNldCB0cmltIGZvciB0cmFuc2lzdG9ycyBkaWZmZXJlbnRpYWwgcGFpciBQTU9TIG9mIE9QQU1QMSAqLw0KI2RlZmluZSBPUEFNUF9PVFJfQU8xX09QVF9PRkZTRVRfVFJJTV9ISUdIX1BvcyAoNVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBPUEFNUF9PVFJfQU8xX09QVF9PRkZTRVRfVFJJTV9ISUdIX01zayAoMHgxRlVMIDw8IE9QQU1QX09UUl9BTzFfT1BUX09GRlNFVF9UUklNX0hJR0hfUG9zKSAvKiE8IDB4MDAwMDAzRTAgKi8NCiNkZWZpbmUgT1BBTVBfT1RSX0FPMV9PUFRfT0ZGU0VUX1RSSU1fSElHSCAgICBPUEFNUF9PVFJfQU8xX09QVF9PRkZTRVRfVFJJTV9ISUdIX01zayAvKiE8IE9mZnNldCB0cmltIGZvciB0cmFuc2lzdG9ycyBkaWZmZXJlbnRpYWwgcGFpciBOTU9TIG9mIE9QQU1QMSAqLw0KI2RlZmluZSBPUEFNUF9PVFJfQU8yX09QVF9PRkZTRVRfVFJJTV9MT1dfUG9zICgxMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBPUEFNUF9PVFJfQU8yX09QVF9PRkZTRVRfVFJJTV9MT1dfTXNrICgweDFGVUwgPDwgT1BBTVBfT1RSX0FPMl9PUFRfT0ZGU0VUX1RSSU1fTE9XX1BvcykgLyohPCAweDAwMDA3QzAwICovDQojZGVmaW5lIE9QQU1QX09UUl9BTzJfT1BUX09GRlNFVF9UUklNX0xPVyAgICAgT1BBTVBfT1RSX0FPMl9PUFRfT0ZGU0VUX1RSSU1fTE9XX01zayAvKiE8IE9mZnNldCB0cmltIGZvciB0cmFuc2lzdG9ycyBkaWZmZXJlbnRpYWwgcGFpciBQTU9TIG9mIE9QQU1QMiAqLw0KI2RlZmluZSBPUEFNUF9PVFJfQU8yX09QVF9PRkZTRVRfVFJJTV9ISUdIX1BvcyAoMTVVKSAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBPUEFNUF9PVFJfQU8yX09QVF9PRkZTRVRfVFJJTV9ISUdIX01zayAoMHgxRlVMIDw8IE9QQU1QX09UUl9BTzJfT1BUX09GRlNFVF9UUklNX0hJR0hfUG9zKSAvKiE8IDB4MDAwRjgwMDAgKi8NCiNkZWZpbmUgT1BBTVBfT1RSX0FPMl9PUFRfT0ZGU0VUX1RSSU1fSElHSCAgICBPUEFNUF9PVFJfQU8yX09QVF9PRkZTRVRfVFJJTV9ISUdIX01zayAvKiE8IE9mZnNldCB0cmltIGZvciB0cmFuc2lzdG9ycyBkaWZmZXJlbnRpYWwgcGFpciBOTU9TIG9mIE9QQU1QMiAqLw0KI2RlZmluZSBPUEFNUF9PVFJfT1RfVVNFUl9Qb3MgICAgICAgICAgICAgICAgICgzMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBPUEFNUF9PVFJfT1RfVVNFUl9Nc2sgICAgICAgICAgICAgICAgICgweDFVTCA8PCBPUEFNUF9PVFJfT1RfVVNFUl9Qb3MpICAvKiE8IDB4ODAwMDAwMDAgKi8NCiNkZWZpbmUgT1BBTVBfT1RSX09UX1VTRVIgICAgICAgICAgICAgICAgICAgICBPUEFNUF9PVFJfT1RfVVNFUl9Nc2sgICAgICAgICAgICAvKiE8IFN3aXRjaCB0byBPUEFNUCBvZmZzZXQgdXNlciB0cmltbWVkIHZhbHVlcyAqLw0KDQovKioqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIE9QQU1QX0xQT1RSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBPUEFNUF9PVFJfQU8xX09QVF9PRkZTRVRfVFJJTV9MUF9MT1dfUG9zICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBPUEFNUF9PVFJfQU8xX09QVF9PRkZTRVRfVFJJTV9MUF9MT1dfTXNrICgweDFGVUwgPDwgT1BBTVBfT1RSX0FPMV9PUFRfT0ZGU0VUX1RSSU1fTFBfTE9XX1BvcykgLyohPCAweDAwMDAwMDFGICovDQojZGVmaW5lIE9QQU1QX09UUl9BTzFfT1BUX09GRlNFVF9UUklNX0xQX0xPVyAgT1BBTVBfT1RSX0FPMV9PUFRfT0ZGU0VUX1RSSU1fTFBfTE9XX01zayAvKiE8IE9mZnNldCB0cmltIGZvciB0cmFuc2lzdG9ycyBkaWZmZXJlbnRpYWwgcGFpciBQTU9TIG9mIE9QQU1QMSAqLw0KI2RlZmluZSBPUEFNUF9PVFJfQU8xX09QVF9PRkZTRVRfVFJJTV9MUF9ISUdIX1BvcyAoNVUpICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBPUEFNUF9PVFJfQU8xX09QVF9PRkZTRVRfVFJJTV9MUF9ISUdIX01zayAoMHgxRlVMIDw8IE9QQU1QX09UUl9BTzFfT1BUX09GRlNFVF9UUklNX0xQX0hJR0hfUG9zKSAvKiE8IDB4MDAwMDAzRTAgKi8NCiNkZWZpbmUgT1BBTVBfT1RSX0FPMV9PUFRfT0ZGU0VUX1RSSU1fTFBfSElHSCBPUEFNUF9PVFJfQU8xX09QVF9PRkZTRVRfVFJJTV9MUF9ISUdIX01zayAvKiE8IE9mZnNldCB0cmltIGZvciB0cmFuc2lzdG9ycyBkaWZmZXJlbnRpYWwgcGFpciBOTU9TIG9mIE9QQU1QMSAqLw0KI2RlZmluZSBPUEFNUF9PVFJfQU8yX09QVF9PRkZTRVRfVFJJTV9MUF9MT1dfUG9zICgxMFUpICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBPUEFNUF9PVFJfQU8yX09QVF9PRkZTRVRfVFJJTV9MUF9MT1dfTXNrICgweDFGVUwgPDwgT1BBTVBfT1RSX0FPMl9PUFRfT0ZGU0VUX1RSSU1fTFBfTE9XX1BvcykgLyohPCAweDAwMDA3QzAwICovDQojZGVmaW5lIE9QQU1QX09UUl9BTzJfT1BUX09GRlNFVF9UUklNX0xQX0xPVyAgT1BBTVBfT1RSX0FPMl9PUFRfT0ZGU0VUX1RSSU1fTFBfTE9XX01zayAvKiE8IE9mZnNldCB0cmltIGZvciB0cmFuc2lzdG9ycyBkaWZmZXJlbnRpYWwgcGFpciBQTU9TIG9mIE9QQU1QMiAqLw0KI2RlZmluZSBPUEFNUF9PVFJfQU8yX09QVF9PRkZTRVRfVFJJTV9MUF9ISUdIX1BvcyAoMTVVKSAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBPUEFNUF9PVFJfQU8yX09QVF9PRkZTRVRfVFJJTV9MUF9ISUdIX01zayAoMHgxRlVMIDw8IE9QQU1QX09UUl9BTzJfT1BUX09GRlNFVF9UUklNX0xQX0hJR0hfUG9zKSAvKiE8IDB4MDAwRjgwMDAgKi8NCiNkZWZpbmUgT1BBTVBfT1RSX0FPMl9PUFRfT0ZGU0VUX1RSSU1fTFBfSElHSCBPUEFNUF9PVFJfQU8yX09QVF9PRkZTRVRfVFJJTV9MUF9ISUdIX01zayAvKiE8IE9mZnNldCB0cmltIGZvciB0cmFuc2lzdG9ycyBkaWZmZXJlbnRpYWwgcGFpciBOTU9TIG9mIE9QQU1QMiAqLw0KDQovKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLw0KLyogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8NCi8qICAgICAgICAgICAgICAgICAgICAgICBDUkMgY2FsY3VsYXRpb24gdW5pdCAoQ1JDKSAgICAgICAgICAgICAgICAgICAgICAgICAgICovDQovKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLw0KLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8NCg0KLyoqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBDUkNfRFIgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgQ1JDX0RSX0RSX1BvcyAgICAgICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgQ1JDX0RSX0RSX01zayAgICAgICAgICAgICAgICAgICAgICAgKDB4RkZGRkZGRkZVTCA8PCBDUkNfRFJfRFJfUG9zKSAgICAgLyohPCAweEZGRkZGRkZGICovDQojZGVmaW5lIENSQ19EUl9EUiAgICAgICAgICAgICAgICAgICAgICAgICAgIENSQ19EUl9EUl9Nc2sgICAgICAgICAgICAgICAgICAgICAgLyohPCBEYXRhIHJlZ2lzdGVyIGJpdHMgKi8NCg0KLyoqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBDUkNfSURSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgQ1JDX0lEUl9JRFJfUG9zICAgICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgQ1JDX0lEUl9JRFJfTXNrICAgICAgICAgICAgICAgICAgICAgKDB4RkZVTCA8PCBDUkNfSURSX0lEUl9Qb3MpICAgICAgICAgLyohPCAweDAwMDAwMEZGICovDQojZGVmaW5lIENSQ19JRFJfSURSICAgICAgICAgICAgICAgICAgICAgICAgIENSQ19JRFJfSURSX01zayAgICAgICAgICAgICAgICAgICAgLyohPCBHZW5lcmFsLXB1cnBvc2UgOC1iaXQgZGF0YSByZWdpc3RlciBiaXRzICovDQoNCi8qKioqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIENSQ19DUiByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIENSQ19DUl9SRVNFVF9Qb3MgICAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIENSQ19DUl9SRVNFVF9Nc2sgICAgICAgICAgICAgICAgICAgICgweDFVTCA8PCBDUkNfQ1JfUkVTRVRfUG9zKSAgICAgICAgIC8qITwgMHgwMDAwMDAwMSAqLw0KI2RlZmluZSBDUkNfQ1JfUkVTRVQgICAgICAgICAgICAgICAgICAgICAgICBDUkNfQ1JfUkVTRVRfTXNrICAgICAgICAgICAgICAgICAgIC8qITwgUkVTRVQgYml0ICovDQoNCi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovDQovKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLw0KLyogICAgICAgICAgICAgICAgICAgIERpZ2l0YWwgdG8gQW5hbG9nIENvbnZlcnRlciAoREFDKSAgICAgICAgICAgICAgICAgICAgICAgKi8NCi8qICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovDQovKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLw0KDQovKioqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBEQUNfQ1IgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBEQUNfQ1JfRU4xX1BvcyAgICAgICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBEQUNfQ1JfRU4xX01zayAgICAgICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgREFDX0NSX0VOMV9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDEgKi8NCiNkZWZpbmUgREFDX0NSX0VOMSAgICAgICAgICAgICAgICAgICAgICAgICAgREFDX0NSX0VOMV9Nc2sgICAgICAgICAgICAgICAgICAgICAvKiE8REFDIGNoYW5uZWwxIGVuYWJsZSAqLw0KI2RlZmluZSBEQUNfQ1JfQk9GRjFfUG9zICAgICAgICAgICAgICAgICAgICAoMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBEQUNfQ1JfQk9GRjFfTXNrICAgICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgREFDX0NSX0JPRkYxX1BvcykgICAgICAgICAvKiE8IDB4MDAwMDAwMDIgKi8NCiNkZWZpbmUgREFDX0NSX0JPRkYxICAgICAgICAgICAgICAgICAgICAgICAgREFDX0NSX0JPRkYxX01zayAgICAgICAgICAgICAgICAgICAvKiE8REFDIGNoYW5uZWwxIG91dHB1dCBidWZmZXIgZGlzYWJsZSAqLw0KI2RlZmluZSBEQUNfQ1JfVEVOMV9Qb3MgICAgICAgICAgICAgICAgICAgICAoMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBEQUNfQ1JfVEVOMV9Nc2sgICAgICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgREFDX0NSX1RFTjFfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDAwMDQgKi8NCiNkZWZpbmUgREFDX0NSX1RFTjEgICAgICAgICAgICAgICAgICAgICAgICAgREFDX0NSX1RFTjFfTXNrICAgICAgICAgICAgICAgICAgICAvKiE8REFDIGNoYW5uZWwxIFRyaWdnZXIgZW5hYmxlICovDQoNCiNkZWZpbmUgREFDX0NSX1RTRUwxX1BvcyAgICAgICAgICAgICAgICAgICAgKDNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgREFDX0NSX1RTRUwxX01zayAgICAgICAgICAgICAgICAgICAgKDB4N1VMIDw8IERBQ19DUl9UU0VMMV9Qb3MpICAgICAgICAgLyohPCAweDAwMDAwMDM4ICovDQojZGVmaW5lIERBQ19DUl9UU0VMMSAgICAgICAgICAgICAgICAgICAgICAgIERBQ19DUl9UU0VMMV9Nc2sgICAgICAgICAgICAgICAgICAgLyohPFRTRUwxWzI6MF0gKERBQyBjaGFubmVsMSBUcmlnZ2VyIHNlbGVjdGlvbikgKi8NCiNkZWZpbmUgREFDX0NSX1RTRUwxXzAgICAgICAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IERBQ19DUl9UU0VMMV9Qb3MpICAgICAgICAgLyohPCAweDAwMDAwMDA4ICovDQojZGVmaW5lIERBQ19DUl9UU0VMMV8xICAgICAgICAgICAgICAgICAgICAgICgweDJVTCA8PCBEQUNfQ1JfVFNFTDFfUG9zKSAgICAgICAgIC8qITwgMHgwMDAwMDAxMCAqLw0KI2RlZmluZSBEQUNfQ1JfVFNFTDFfMiAgICAgICAgICAgICAgICAgICAgICAoMHg0VUwgPDwgREFDX0NSX1RTRUwxX1BvcykgICAgICAgICAvKiE8IDB4MDAwMDAwMjAgKi8NCg0KI2RlZmluZSBEQUNfQ1JfV0FWRTFfUG9zICAgICAgICAgICAgICAgICAgICAoNlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBEQUNfQ1JfV0FWRTFfTXNrICAgICAgICAgICAgICAgICAgICAoMHgzVUwgPDwgREFDX0NSX1dBVkUxX1BvcykgICAgICAgICAvKiE8IDB4MDAwMDAwQzAgKi8NCiNkZWZpbmUgREFDX0NSX1dBVkUxICAgICAgICAgICAgICAgICAgICAgICAgREFDX0NSX1dBVkUxX01zayAgICAgICAgICAgICAgICAgICAvKiE8V0FWRTFbMTowXSAoREFDIGNoYW5uZWwxIG5vaXNlL3RyaWFuZ2xlIHdhdmUgZ2VuZXJhdGlvbiBlbmFibGUpICovDQojZGVmaW5lIERBQ19DUl9XQVZFMV8wICAgICAgICAgICAgICAgICAgICAgICgweDFVTCA8PCBEQUNfQ1JfV0FWRTFfUG9zKSAgICAgICAgIC8qITwgMHgwMDAwMDA0MCAqLw0KI2RlZmluZSBEQUNfQ1JfV0FWRTFfMSAgICAgICAgICAgICAgICAgICAgICAoMHgyVUwgPDwgREFDX0NSX1dBVkUxX1BvcykgICAgICAgICAvKiE8IDB4MDAwMDAwODAgKi8NCg0KI2RlZmluZSBEQUNfQ1JfTUFNUDFfUG9zICAgICAgICAgICAgICAgICAgICAoOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBEQUNfQ1JfTUFNUDFfTXNrICAgICAgICAgICAgICAgICAgICAoMHhGVUwgPDwgREFDX0NSX01BTVAxX1BvcykgICAgICAgICAvKiE8IDB4MDAwMDBGMDAgKi8NCiNkZWZpbmUgREFDX0NSX01BTVAxICAgICAgICAgICAgICAgICAgICAgICAgREFDX0NSX01BTVAxX01zayAgICAgICAgICAgICAgICAgICAvKiE8TUFNUDFbMzowXSAoREFDIGNoYW5uZWwxIE1hc2svQW1wbGl0dWRlIHNlbGVjdG9yKSAqLw0KI2RlZmluZSBEQUNfQ1JfTUFNUDFfMCAgICAgICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgREFDX0NSX01BTVAxX1BvcykgICAgICAgICAvKiE8IDB4MDAwMDAxMDAgKi8NCiNkZWZpbmUgREFDX0NSX01BTVAxXzEgICAgICAgICAgICAgICAgICAgICAgKDB4MlVMIDw8IERBQ19DUl9NQU1QMV9Qb3MpICAgICAgICAgLyohPCAweDAwMDAwMjAwICovDQojZGVmaW5lIERBQ19DUl9NQU1QMV8yICAgICAgICAgICAgICAgICAgICAgICgweDRVTCA8PCBEQUNfQ1JfTUFNUDFfUG9zKSAgICAgICAgIC8qITwgMHgwMDAwMDQwMCAqLw0KI2RlZmluZSBEQUNfQ1JfTUFNUDFfMyAgICAgICAgICAgICAgICAgICAgICAoMHg4VUwgPDwgREFDX0NSX01BTVAxX1BvcykgICAgICAgICAvKiE8IDB4MDAwMDA4MDAgKi8NCg0KI2RlZmluZSBEQUNfQ1JfRE1BRU4xX1BvcyAgICAgICAgICAgICAgICAgICAoMTJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBEQUNfQ1JfRE1BRU4xX01zayAgICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgREFDX0NSX0RNQUVOMV9Qb3MpICAgICAgICAvKiE8IDB4MDAwMDEwMDAgKi8NCiNkZWZpbmUgREFDX0NSX0RNQUVOMSAgICAgICAgICAgICAgICAgICAgICAgREFDX0NSX0RNQUVOMV9Nc2sgICAgICAgICAgICAgICAgICAvKiE8REFDIGNoYW5uZWwxIERNQSBlbmFibGUgKi8NCiNkZWZpbmUgREFDX0NSX0RNQVVEUklFMV9Qb3MgICAgICAgICAgICAgICAgKDEzVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgREFDX0NSX0RNQVVEUklFMV9Nc2sgICAgICAgICAgICAgICAgKDB4MVVMIDw8IERBQ19DUl9ETUFVRFJJRTFfUG9zKSAgICAgLyohPCAweDAwMDAyMDAwICovDQojZGVmaW5lIERBQ19DUl9ETUFVRFJJRTEgICAgICAgICAgICAgICAgICAgIERBQ19DUl9ETUFVRFJJRTFfTXNrICAgICAgICAgICAgICAgLyohPERBQyBjaGFubmVsMSBETUEgSW50ZXJydXB0IGVuYWJsZSAqLw0KI2RlZmluZSBEQUNfQ1JfRU4yX1BvcyAgICAgICAgICAgICAgICAgICAgICAoMTZVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBEQUNfQ1JfRU4yX01zayAgICAgICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgREFDX0NSX0VOMl9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMTAwMDAgKi8NCiNkZWZpbmUgREFDX0NSX0VOMiAgICAgICAgICAgICAgICAgICAgICAgICAgREFDX0NSX0VOMl9Nc2sgICAgICAgICAgICAgICAgICAgICAvKiE8REFDIGNoYW5uZWwyIGVuYWJsZSAqLw0KI2RlZmluZSBEQUNfQ1JfQk9GRjJfUG9zICAgICAgICAgICAgICAgICAgICAoMTdVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBEQUNfQ1JfQk9GRjJfTXNrICAgICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgREFDX0NSX0JPRkYyX1BvcykgICAgICAgICAvKiE8IDB4MDAwMjAwMDAgKi8NCiNkZWZpbmUgREFDX0NSX0JPRkYyICAgICAgICAgICAgICAgICAgICAgICAgREFDX0NSX0JPRkYyX01zayAgICAgICAgICAgICAgICAgICAvKiE8REFDIGNoYW5uZWwyIG91dHB1dCBidWZmZXIgZGlzYWJsZSAqLw0KI2RlZmluZSBEQUNfQ1JfVEVOMl9Qb3MgICAgICAgICAgICAgICAgICAgICAoMThVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBEQUNfQ1JfVEVOMl9Nc2sgICAgICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgREFDX0NSX1RFTjJfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwNDAwMDAgKi8NCiNkZWZpbmUgREFDX0NSX1RFTjIgICAgICAgICAgICAgICAgICAgICAgICAgREFDX0NSX1RFTjJfTXNrICAgICAgICAgICAgICAgICAgICAvKiE8REFDIGNoYW5uZWwyIFRyaWdnZXIgZW5hYmxlICovDQoNCiNkZWZpbmUgREFDX0NSX1RTRUwyX1BvcyAgICAgICAgICAgICAgICAgICAgKDE5VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgREFDX0NSX1RTRUwyX01zayAgICAgICAgICAgICAgICAgICAgKDB4N1VMIDw8IERBQ19DUl9UU0VMMl9Qb3MpICAgICAgICAgLyohPCAweDAwMzgwMDAwICovDQojZGVmaW5lIERBQ19DUl9UU0VMMiAgICAgICAgICAgICAgICAgICAgICAgIERBQ19DUl9UU0VMMl9Nc2sgICAgICAgICAgICAgICAgICAgLyohPFRTRUwyWzI6MF0gKERBQyBjaGFubmVsMiBUcmlnZ2VyIHNlbGVjdGlvbikgKi8NCiNkZWZpbmUgREFDX0NSX1RTRUwyXzAgICAgICAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IERBQ19DUl9UU0VMMl9Qb3MpICAgICAgICAgLyohPCAweDAwMDgwMDAwICovDQojZGVmaW5lIERBQ19DUl9UU0VMMl8xICAgICAgICAgICAgICAgICAgICAgICgweDJVTCA8PCBEQUNfQ1JfVFNFTDJfUG9zKSAgICAgICAgIC8qITwgMHgwMDEwMDAwMCAqLw0KI2RlZmluZSBEQUNfQ1JfVFNFTDJfMiAgICAgICAgICAgICAgICAgICAgICAoMHg0VUwgPDwgREFDX0NSX1RTRUwyX1BvcykgICAgICAgICAvKiE8IDB4MDAyMDAwMDAgKi8NCg0KI2RlZmluZSBEQUNfQ1JfV0FWRTJfUG9zICAgICAgICAgICAgICAgICAgICAoMjJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBEQUNfQ1JfV0FWRTJfTXNrICAgICAgICAgICAgICAgICAgICAoMHgzVUwgPDwgREFDX0NSX1dBVkUyX1BvcykgICAgICAgICAvKiE8IDB4MDBDMDAwMDAgKi8NCiNkZWZpbmUgREFDX0NSX1dBVkUyICAgICAgICAgICAgICAgICAgICAgICAgREFDX0NSX1dBVkUyX01zayAgICAgICAgICAgICAgICAgICAvKiE8V0FWRTJbMTowXSAoREFDIGNoYW5uZWwyIG5vaXNlL3RyaWFuZ2xlIHdhdmUgZ2VuZXJhdGlvbiBlbmFibGUpICovDQojZGVmaW5lIERBQ19DUl9XQVZFMl8wICAgICAgICAgICAgICAgICAgICAgICgweDFVTCA8PCBEQUNfQ1JfV0FWRTJfUG9zKSAgICAgICAgIC8qITwgMHgwMDQwMDAwMCAqLw0KI2RlZmluZSBEQUNfQ1JfV0FWRTJfMSAgICAgICAgICAgICAgICAgICAgICAoMHgyVUwgPDwgREFDX0NSX1dBVkUyX1BvcykgICAgICAgICAvKiE8IDB4MDA4MDAwMDAgKi8NCg0KI2RlZmluZSBEQUNfQ1JfTUFNUDJfUG9zICAgICAgICAgICAgICAgICAgICAoMjRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBEQUNfQ1JfTUFNUDJfTXNrICAgICAgICAgICAgICAgICAgICAoMHhGVUwgPDwgREFDX0NSX01BTVAyX1BvcykgICAgICAgICAvKiE8IDB4MEYwMDAwMDAgKi8NCiNkZWZpbmUgREFDX0NSX01BTVAyICAgICAgICAgICAgICAgICAgICAgICAgREFDX0NSX01BTVAyX01zayAgICAgICAgICAgICAgICAgICAvKiE8TUFNUDJbMzowXSAoREFDIGNoYW5uZWwyIE1hc2svQW1wbGl0dWRlIHNlbGVjdG9yKSAqLw0KI2RlZmluZSBEQUNfQ1JfTUFNUDJfMCAgICAgICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgREFDX0NSX01BTVAyX1BvcykgICAgICAgICAvKiE8IDB4MDEwMDAwMDAgKi8NCiNkZWZpbmUgREFDX0NSX01BTVAyXzEgICAgICAgICAgICAgICAgICAgICAgKDB4MlVMIDw8IERBQ19DUl9NQU1QMl9Qb3MpICAgICAgICAgLyohPCAweDAyMDAwMDAwICovDQojZGVmaW5lIERBQ19DUl9NQU1QMl8yICAgICAgICAgICAgICAgICAgICAgICgweDRVTCA8PCBEQUNfQ1JfTUFNUDJfUG9zKSAgICAgICAgIC8qITwgMHgwNDAwMDAwMCAqLw0KI2RlZmluZSBEQUNfQ1JfTUFNUDJfMyAgICAgICAgICAgICAgICAgICAgICAoMHg4VUwgPDwgREFDX0NSX01BTVAyX1BvcykgICAgICAgICAvKiE8IDB4MDgwMDAwMDAgKi8NCg0KI2RlZmluZSBEQUNfQ1JfRE1BRU4yX1BvcyAgICAgICAgICAgICAgICAgICAoMjhVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBEQUNfQ1JfRE1BRU4yX01zayAgICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgREFDX0NSX0RNQUVOMl9Qb3MpICAgICAgICAvKiE8IDB4MTAwMDAwMDAgKi8NCiNkZWZpbmUgREFDX0NSX0RNQUVOMiAgICAgICAgICAgICAgICAgICAgICAgREFDX0NSX0RNQUVOMl9Nc2sgICAgICAgICAgICAgICAgICAvKiE8REFDIGNoYW5uZWwyIERNQSBlbmFibGVkICovDQojZGVmaW5lIERBQ19DUl9ETUFVRFJJRTJfUG9zICAgICAgICAgICAgICAgICgyOVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIERBQ19DUl9ETUFVRFJJRTJfTXNrICAgICAgICAgICAgICAgICgweDFVTCA8PCBEQUNfQ1JfRE1BVURSSUUyX1BvcykgICAgIC8qITwgMHgyMDAwMDAwMCAqLw0KI2RlZmluZSBEQUNfQ1JfRE1BVURSSUUyICAgICAgICAgICAgICAgICAgICBEQUNfQ1JfRE1BVURSSUUyX01zayAgICAgICAgICAgICAgIC8qITxEQUMgY2hhbm5lbDIgRE1BIHVuZGVycnVuIGludGVycnVwdCBlbmFibGUgKi8NCi8qKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIERBQ19TV1RSSUdSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIERBQ19TV1RSSUdSX1NXVFJJRzFfUG9zICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIERBQ19TV1RSSUdSX1NXVFJJRzFfTXNrICAgICAgICAgICAgICgweDFVTCA8PCBEQUNfU1dUUklHUl9TV1RSSUcxX1BvcykgIC8qITwgMHgwMDAwMDAwMSAqLw0KI2RlZmluZSBEQUNfU1dUUklHUl9TV1RSSUcxICAgICAgICAgICAgICAgICBEQUNfU1dUUklHUl9TV1RSSUcxX01zayAgICAgICAgICAgIC8qITxEQUMgY2hhbm5lbDEgc29mdHdhcmUgdHJpZ2dlciAqLw0KI2RlZmluZSBEQUNfU1dUUklHUl9TV1RSSUcyX1BvcyAgICAgICAgICAgICAoMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBEQUNfU1dUUklHUl9TV1RSSUcyX01zayAgICAgICAgICAgICAoMHgxVUwgPDwgREFDX1NXVFJJR1JfU1dUUklHMl9Qb3MpICAvKiE8IDB4MDAwMDAwMDIgKi8NCiNkZWZpbmUgREFDX1NXVFJJR1JfU1dUUklHMiAgICAgICAgICAgICAgICAgREFDX1NXVFJJR1JfU1dUUklHMl9Nc2sgICAgICAgICAgICAvKiE8REFDIGNoYW5uZWwyIHNvZnR3YXJlIHRyaWdnZXIgKi8NCg0KLyoqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgREFDX0RIUjEyUjEgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgREFDX0RIUjEyUjFfREFDQzFESFJfUG9zICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgREFDX0RIUjEyUjFfREFDQzFESFJfTXNrICAgICAgICAgICAgKDB4RkZGVUwgPDwgREFDX0RIUjEyUjFfREFDQzFESFJfUG9zKSAvKiE8IDB4MDAwMDBGRkYgKi8NCiNkZWZpbmUgREFDX0RIUjEyUjFfREFDQzFESFIgICAgICAgICAgICAgICAgREFDX0RIUjEyUjFfREFDQzFESFJfTXNrICAgICAgICAgICAvKiE8REFDIGNoYW5uZWwxIDEyLWJpdCBSaWdodCBhbGlnbmVkIGRhdGEgKi8NCg0KLyoqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgREFDX0RIUjEyTDEgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgREFDX0RIUjEyTDFfREFDQzFESFJfUG9zICAgICAgICAgICAgKDRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgREFDX0RIUjEyTDFfREFDQzFESFJfTXNrICAgICAgICAgICAgKDB4RkZGVUwgPDwgREFDX0RIUjEyTDFfREFDQzFESFJfUG9zKSAvKiE8IDB4MDAwMEZGRjAgKi8NCiNkZWZpbmUgREFDX0RIUjEyTDFfREFDQzFESFIgICAgICAgICAgICAgICAgREFDX0RIUjEyTDFfREFDQzFESFJfTXNrICAgICAgICAgICAvKiE8REFDIGNoYW5uZWwxIDEyLWJpdCBMZWZ0IGFsaWduZWQgZGF0YSAqLw0KDQovKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgREFDX0RIUjhSMSByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBEQUNfREhSOFIxX0RBQ0MxREhSX1BvcyAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBEQUNfREhSOFIxX0RBQ0MxREhSX01zayAgICAgICAgICAgICAoMHhGRlVMIDw8IERBQ19ESFI4UjFfREFDQzFESFJfUG9zKSAvKiE8IDB4MDAwMDAwRkYgKi8NCiNkZWZpbmUgREFDX0RIUjhSMV9EQUNDMURIUiAgICAgICAgICAgICAgICAgREFDX0RIUjhSMV9EQUNDMURIUl9Nc2sgICAgICAgICAgICAvKiE8REFDIGNoYW5uZWwxIDgtYml0IFJpZ2h0IGFsaWduZWQgZGF0YSAqLw0KDQovKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBEQUNfREhSMTJSMiByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBEQUNfREhSMTJSMl9EQUNDMkRIUl9Qb3MgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBEQUNfREhSMTJSMl9EQUNDMkRIUl9Nc2sgICAgICAgICAgICAoMHhGRkZVTCA8PCBEQUNfREhSMTJSMl9EQUNDMkRIUl9Qb3MpIC8qITwgMHgwMDAwMEZGRiAqLw0KI2RlZmluZSBEQUNfREhSMTJSMl9EQUNDMkRIUiAgICAgICAgICAgICAgICBEQUNfREhSMTJSMl9EQUNDMkRIUl9Nc2sgICAgICAgICAgIC8qITxEQUMgY2hhbm5lbDIgMTItYml0IFJpZ2h0IGFsaWduZWQgZGF0YSAqLw0KDQovKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBEQUNfREhSMTJMMiByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBEQUNfREhSMTJMMl9EQUNDMkRIUl9Qb3MgICAgICAgICAgICAoNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBEQUNfREhSMTJMMl9EQUNDMkRIUl9Nc2sgICAgICAgICAgICAoMHhGRkZVTCA8PCBEQUNfREhSMTJMMl9EQUNDMkRIUl9Qb3MpIC8qITwgMHgwMDAwRkZGMCAqLw0KI2RlZmluZSBEQUNfREhSMTJMMl9EQUNDMkRIUiAgICAgICAgICAgICAgICBEQUNfREhSMTJMMl9EQUNDMkRIUl9Nc2sgICAgICAgICAgIC8qITxEQUMgY2hhbm5lbDIgMTItYml0IExlZnQgYWxpZ25lZCBkYXRhICovDQoNCi8qKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBEQUNfREhSOFIyIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIERBQ19ESFI4UjJfREFDQzJESFJfUG9zICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIERBQ19ESFI4UjJfREFDQzJESFJfTXNrICAgICAgICAgICAgICgweEZGVUwgPDwgREFDX0RIUjhSMl9EQUNDMkRIUl9Qb3MpIC8qITwgMHgwMDAwMDBGRiAqLw0KI2RlZmluZSBEQUNfREhSOFIyX0RBQ0MyREhSICAgICAgICAgICAgICAgICBEQUNfREhSOFIyX0RBQ0MyREhSX01zayAgICAgICAgICAgIC8qITxEQUMgY2hhbm5lbDIgOC1iaXQgUmlnaHQgYWxpZ25lZCBkYXRhICovDQoNCi8qKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIERBQ19ESFIxMlJEIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIERBQ19ESFIxMlJEX0RBQ0MxREhSX1BvcyAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIERBQ19ESFIxMlJEX0RBQ0MxREhSX01zayAgICAgICAgICAgICgweEZGRlVMIDw8IERBQ19ESFIxMlJEX0RBQ0MxREhSX1BvcykgLyohPCAweDAwMDAwRkZGICovDQojZGVmaW5lIERBQ19ESFIxMlJEX0RBQ0MxREhSICAgICAgICAgICAgICAgIERBQ19ESFIxMlJEX0RBQ0MxREhSX01zayAgICAgICAgICAgLyohPERBQyBjaGFubmVsMSAxMi1iaXQgUmlnaHQgYWxpZ25lZCBkYXRhICovDQojZGVmaW5lIERBQ19ESFIxMlJEX0RBQ0MyREhSX1BvcyAgICAgICAgICAgICgxNlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIERBQ19ESFIxMlJEX0RBQ0MyREhSX01zayAgICAgICAgICAgICgweEZGRlVMIDw8IERBQ19ESFIxMlJEX0RBQ0MyREhSX1BvcykgLyohPCAweDBGRkYwMDAwICovDQojZGVmaW5lIERBQ19ESFIxMlJEX0RBQ0MyREhSICAgICAgICAgICAgICAgIERBQ19ESFIxMlJEX0RBQ0MyREhSX01zayAgICAgICAgICAgLyohPERBQyBjaGFubmVsMiAxMi1iaXQgUmlnaHQgYWxpZ25lZCBkYXRhICovDQoNCi8qKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIERBQ19ESFIxMkxEIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIERBQ19ESFIxMkxEX0RBQ0MxREhSX1BvcyAgICAgICAgICAgICg0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIERBQ19ESFIxMkxEX0RBQ0MxREhSX01zayAgICAgICAgICAgICgweEZGRlVMIDw8IERBQ19ESFIxMkxEX0RBQ0MxREhSX1BvcykgLyohPCAweDAwMDBGRkYwICovDQojZGVmaW5lIERBQ19ESFIxMkxEX0RBQ0MxREhSICAgICAgICAgICAgICAgIERBQ19ESFIxMkxEX0RBQ0MxREhSX01zayAgICAgICAgICAgLyohPERBQyBjaGFubmVsMSAxMi1iaXQgTGVmdCBhbGlnbmVkIGRhdGEgKi8NCiNkZWZpbmUgREFDX0RIUjEyTERfREFDQzJESFJfUG9zICAgICAgICAgICAgKDIwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgREFDX0RIUjEyTERfREFDQzJESFJfTXNrICAgICAgICAgICAgKDB4RkZGVUwgPDwgREFDX0RIUjEyTERfREFDQzJESFJfUG9zKSAvKiE8IDB4RkZGMDAwMDAgKi8NCiNkZWZpbmUgREFDX0RIUjEyTERfREFDQzJESFIgICAgICAgICAgICAgICAgREFDX0RIUjEyTERfREFDQzJESFJfTXNrICAgICAgICAgICAvKiE8REFDIGNoYW5uZWwyIDEyLWJpdCBMZWZ0IGFsaWduZWQgZGF0YSAqLw0KDQovKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgREFDX0RIUjhSRCByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBEQUNfREhSOFJEX0RBQ0MxREhSX1BvcyAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBEQUNfREhSOFJEX0RBQ0MxREhSX01zayAgICAgICAgICAgICAoMHhGRlVMIDw8IERBQ19ESFI4UkRfREFDQzFESFJfUG9zKSAvKiE8IDB4MDAwMDAwRkYgKi8NCiNkZWZpbmUgREFDX0RIUjhSRF9EQUNDMURIUiAgICAgICAgICAgICAgICAgREFDX0RIUjhSRF9EQUNDMURIUl9Nc2sgICAgICAgICAgICAvKiE8REFDIGNoYW5uZWwxIDgtYml0IFJpZ2h0IGFsaWduZWQgZGF0YSAqLw0KI2RlZmluZSBEQUNfREhSOFJEX0RBQ0MyREhSX1BvcyAgICAgICAgICAgICAoOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBEQUNfREhSOFJEX0RBQ0MyREhSX01zayAgICAgICAgICAgICAoMHhGRlVMIDw8IERBQ19ESFI4UkRfREFDQzJESFJfUG9zKSAvKiE8IDB4MDAwMEZGMDAgKi8NCiNkZWZpbmUgREFDX0RIUjhSRF9EQUNDMkRIUiAgICAgICAgICAgICAgICAgREFDX0RIUjhSRF9EQUNDMkRIUl9Nc2sgICAgICAgICAgICAvKiE8REFDIGNoYW5uZWwyIDgtYml0IFJpZ2h0IGFsaWduZWQgZGF0YSAqLw0KDQovKioqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIERBQ19ET1IxIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBEQUNfRE9SMV9EQUNDMURPUl9Qb3MgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBEQUNfRE9SMV9EQUNDMURPUl9Nc2sgICAgICAgICAgICAgICAoMHhGRkZVTCA8PCBEQUNfRE9SMV9EQUNDMURPUl9Qb3MpICAvKiE8IDB4MDAwMDBGRkYgKi8NCiNkZWZpbmUgREFDX0RPUjFfREFDQzFET1IgICAgICAgICAgICAgICAgICAgREFDX0RPUjFfREFDQzFET1JfTXNrICAgICAgICAgICAgICAvKiE8REFDIGNoYW5uZWwxIGRhdGEgb3V0cHV0ICovDQoNCi8qKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgREFDX0RPUjIgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIERBQ19ET1IyX0RBQ0MyRE9SX1BvcyAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIERBQ19ET1IyX0RBQ0MyRE9SX01zayAgICAgICAgICAgICAgICgweEZGRlVMIDw8IERBQ19ET1IyX0RBQ0MyRE9SX1BvcykgIC8qITwgMHgwMDAwMEZGRiAqLw0KI2RlZmluZSBEQUNfRE9SMl9EQUNDMkRPUiAgICAgICAgICAgICAgICAgICBEQUNfRE9SMl9EQUNDMkRPUl9Nc2sgICAgICAgICAgICAgIC8qITxEQUMgY2hhbm5lbDIgZGF0YSBvdXRwdXQgKi8NCg0KLyoqKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgREFDX1NSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgREFDX1NSX0RNQVVEUjFfUG9zICAgICAgICAgICAgICAgICAgKDEzVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgREFDX1NSX0RNQVVEUjFfTXNrICAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IERBQ19TUl9ETUFVRFIxX1BvcykgICAgICAgLyohPCAweDAwMDAyMDAwICovDQojZGVmaW5lIERBQ19TUl9ETUFVRFIxICAgICAgICAgICAgICAgICAgICAgIERBQ19TUl9ETUFVRFIxX01zayAgICAgICAgICAgICAgICAgLyohPERBQyBjaGFubmVsMSBETUEgdW5kZXJydW4gZmxhZyAqLw0KI2RlZmluZSBEQUNfU1JfRE1BVURSMl9Qb3MgICAgICAgICAgICAgICAgICAoMjlVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBEQUNfU1JfRE1BVURSMl9Nc2sgICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgREFDX1NSX0RNQVVEUjJfUG9zKSAgICAgICAvKiE8IDB4MjAwMDAwMDAgKi8NCiNkZWZpbmUgREFDX1NSX0RNQVVEUjIgICAgICAgICAgICAgICAgICAgICAgREFDX1NSX0RNQVVEUjJfTXNrICAgICAgICAgICAgICAgICAvKiE8REFDIGNoYW5uZWwyIERNQSB1bmRlcnJ1biBmbGFnICovDQoNCi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovDQovKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLw0KLyogICAgICAgICAgICAgICAgICAgICAgICAgICBEZWJ1ZyBNQ1UgKERCR01DVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8NCi8qICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovDQovKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLw0KDQovKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIERCR01DVV9JRENPREUgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBEQkdNQ1VfSURDT0RFX0RFVl9JRF9Qb3MgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBEQkdNQ1VfSURDT0RFX0RFVl9JRF9Nc2sgICAgICAgICAgICAgICAgICgweEZGRlVMIDw8IERCR01DVV9JRENPREVfREVWX0lEX1BvcykgLyohPCAweDAwMDAwRkZGICovDQojZGVmaW5lIERCR01DVV9JRENPREVfREVWX0lEICAgICAgICAgICAgICAgICAgICAgREJHTUNVX0lEQ09ERV9ERVZfSURfTXNrICAgICAgLyohPCBEZXZpY2UgSWRlbnRpZmllciAqLw0KDQojZGVmaW5lIERCR01DVV9JRENPREVfUkVWX0lEX1BvcyAgICAgICAgICAgICAgICAgKDE2VSkgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIERCR01DVV9JRENPREVfUkVWX0lEX01zayAgICAgICAgICAgICAgICAgKDB4RkZGRlVMIDw8IERCR01DVV9JRENPREVfUkVWX0lEX1BvcykgLyohPCAweEZGRkYwMDAwICovDQojZGVmaW5lIERCR01DVV9JRENPREVfUkVWX0lEICAgICAgICAgICAgICAgICAgICAgREJHTUNVX0lEQ09ERV9SRVZfSURfTXNrICAgICAgLyohPCBSRVZfSURbMTU6MF0gYml0cyAoUmV2aXNpb24gSWRlbnRpZmllcikgKi8NCiNkZWZpbmUgREJHTUNVX0lEQ09ERV9SRVZfSURfMCAgICAgICAgICAgICAgICAgICAoMHgwMDAxVUwgPDwgREJHTUNVX0lEQ09ERV9SRVZfSURfUG9zKSAvKiE8IDB4MDAwMTAwMDAgKi8NCiNkZWZpbmUgREJHTUNVX0lEQ09ERV9SRVZfSURfMSAgICAgICAgICAgICAgICAgICAoMHgwMDAyVUwgPDwgREJHTUNVX0lEQ09ERV9SRVZfSURfUG9zKSAvKiE8IDB4MDAwMjAwMDAgKi8NCiNkZWZpbmUgREJHTUNVX0lEQ09ERV9SRVZfSURfMiAgICAgICAgICAgICAgICAgICAoMHgwMDA0VUwgPDwgREJHTUNVX0lEQ09ERV9SRVZfSURfUG9zKSAvKiE8IDB4MDAwNDAwMDAgKi8NCiNkZWZpbmUgREJHTUNVX0lEQ09ERV9SRVZfSURfMyAgICAgICAgICAgICAgICAgICAoMHgwMDA4VUwgPDwgREJHTUNVX0lEQ09ERV9SRVZfSURfUG9zKSAvKiE8IDB4MDAwODAwMDAgKi8NCiNkZWZpbmUgREJHTUNVX0lEQ09ERV9SRVZfSURfNCAgICAgICAgICAgICAgICAgICAoMHgwMDEwVUwgPDwgREJHTUNVX0lEQ09ERV9SRVZfSURfUG9zKSAvKiE8IDB4MDAxMDAwMDAgKi8NCiNkZWZpbmUgREJHTUNVX0lEQ09ERV9SRVZfSURfNSAgICAgICAgICAgICAgICAgICAoMHgwMDIwVUwgPDwgREJHTUNVX0lEQ09ERV9SRVZfSURfUG9zKSAvKiE8IDB4MDAyMDAwMDAgKi8NCiNkZWZpbmUgREJHTUNVX0lEQ09ERV9SRVZfSURfNiAgICAgICAgICAgICAgICAgICAoMHgwMDQwVUwgPDwgREJHTUNVX0lEQ09ERV9SRVZfSURfUG9zKSAvKiE8IDB4MDA0MDAwMDAgKi8NCiNkZWZpbmUgREJHTUNVX0lEQ09ERV9SRVZfSURfNyAgICAgICAgICAgICAgICAgICAoMHgwMDgwVUwgPDwgREJHTUNVX0lEQ09ERV9SRVZfSURfUG9zKSAvKiE8IDB4MDA4MDAwMDAgKi8NCiNkZWZpbmUgREJHTUNVX0lEQ09ERV9SRVZfSURfOCAgICAgICAgICAgICAgICAgICAoMHgwMTAwVUwgPDwgREJHTUNVX0lEQ09ERV9SRVZfSURfUG9zKSAvKiE8IDB4MDEwMDAwMDAgKi8NCiNkZWZpbmUgREJHTUNVX0lEQ09ERV9SRVZfSURfOSAgICAgICAgICAgICAgICAgICAoMHgwMjAwVUwgPDwgREJHTUNVX0lEQ09ERV9SRVZfSURfUG9zKSAvKiE8IDB4MDIwMDAwMDAgKi8NCiNkZWZpbmUgREJHTUNVX0lEQ09ERV9SRVZfSURfMTAgICAgICAgICAgICAgICAgICAoMHgwNDAwVUwgPDwgREJHTUNVX0lEQ09ERV9SRVZfSURfUG9zKSAvKiE8IDB4MDQwMDAwMDAgKi8NCiNkZWZpbmUgREJHTUNVX0lEQ09ERV9SRVZfSURfMTEgICAgICAgICAgICAgICAgICAoMHgwODAwVUwgPDwgREJHTUNVX0lEQ09ERV9SRVZfSURfUG9zKSAvKiE8IDB4MDgwMDAwMDAgKi8NCiNkZWZpbmUgREJHTUNVX0lEQ09ERV9SRVZfSURfMTIgICAgICAgICAgICAgICAgICAoMHgxMDAwVUwgPDwgREJHTUNVX0lEQ09ERV9SRVZfSURfUG9zKSAvKiE8IDB4MTAwMDAwMDAgKi8NCiNkZWZpbmUgREJHTUNVX0lEQ09ERV9SRVZfSURfMTMgICAgICAgICAgICAgICAgICAoMHgyMDAwVUwgPDwgREJHTUNVX0lEQ09ERV9SRVZfSURfUG9zKSAvKiE8IDB4MjAwMDAwMDAgKi8NCiNkZWZpbmUgREJHTUNVX0lEQ09ERV9SRVZfSURfMTQgICAgICAgICAgICAgICAgICAoMHg0MDAwVUwgPDwgREJHTUNVX0lEQ09ERV9SRVZfSURfUG9zKSAvKiE8IDB4NDAwMDAwMDAgKi8NCiNkZWZpbmUgREJHTUNVX0lEQ09ERV9SRVZfSURfMTUgICAgICAgICAgICAgICAgICAoMHg4MDAwVUwgPDwgREJHTUNVX0lEQ09ERV9SRVZfSURfUG9zKSAvKiE8IDB4ODAwMDAwMDAgKi8NCg0KLyoqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIERCR01DVV9DUiByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgREJHTUNVX0NSX0RCR19TTEVFUF9Qb3MgICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgREJHTUNVX0NSX0RCR19TTEVFUF9Nc2sgICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgREJHTUNVX0NSX0RCR19TTEVFUF9Qb3MpIC8qITwgMHgwMDAwMDAwMSAqLw0KI2RlZmluZSBEQkdNQ1VfQ1JfREJHX1NMRUVQICAgICAgICAgICAgICAgICAgICAgIERCR01DVV9DUl9EQkdfU0xFRVBfTXNrICAgICAgIC8qITwgRGVidWcgU2xlZXAgTW9kZSAqLw0KI2RlZmluZSBEQkdNQ1VfQ1JfREJHX1NUT1BfUG9zICAgICAgICAgICAgICAgICAgICgxVSkgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBEQkdNQ1VfQ1JfREJHX1NUT1BfTXNrICAgICAgICAgICAgICAgICAgICgweDFVTCA8PCBEQkdNQ1VfQ1JfREJHX1NUT1BfUG9zKSAvKiE8IDB4MDAwMDAwMDIgKi8NCiNkZWZpbmUgREJHTUNVX0NSX0RCR19TVE9QICAgICAgICAgICAgICAgICAgICAgICBEQkdNQ1VfQ1JfREJHX1NUT1BfTXNrICAgICAgICAvKiE8IERlYnVnIFN0b3AgTW9kZSAqLw0KI2RlZmluZSBEQkdNQ1VfQ1JfREJHX1NUQU5EQllfUG9zICAgICAgICAgICAgICAgICgyVSkgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBEQkdNQ1VfQ1JfREJHX1NUQU5EQllfTXNrICAgICAgICAgICAgICAgICgweDFVTCA8PCBEQkdNQ1VfQ1JfREJHX1NUQU5EQllfUG9zKSAvKiE8IDB4MDAwMDAwMDQgKi8NCiNkZWZpbmUgREJHTUNVX0NSX0RCR19TVEFOREJZICAgICAgICAgICAgICAgICAgICBEQkdNQ1VfQ1JfREJHX1NUQU5EQllfTXNrICAgICAvKiE8IERlYnVnIFN0YW5kYnkgbW9kZSAqLw0KI2RlZmluZSBEQkdNQ1VfQ1JfVFJBQ0VfSU9FTl9Qb3MgICAgICAgICAgICAgICAgICg1VSkgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBEQkdNQ1VfQ1JfVFJBQ0VfSU9FTl9Nc2sgICAgICAgICAgICAgICAgICgweDFVTCA8PCBEQkdNQ1VfQ1JfVFJBQ0VfSU9FTl9Qb3MpIC8qITwgMHgwMDAwMDAyMCAqLw0KI2RlZmluZSBEQkdNQ1VfQ1JfVFJBQ0VfSU9FTiAgICAgICAgICAgICAgICAgICAgIERCR01DVV9DUl9UUkFDRV9JT0VOX01zayAgICAgIC8qITwgVHJhY2UgUGluIEFzc2lnbm1lbnQgQ29udHJvbCAqLw0KDQojZGVmaW5lIERCR01DVV9DUl9UUkFDRV9NT0RFX1BvcyAgICAgICAgICAgICAgICAgKDZVKSAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIERCR01DVV9DUl9UUkFDRV9NT0RFX01zayAgICAgICAgICAgICAgICAgKDB4M1VMIDw8IERCR01DVV9DUl9UUkFDRV9NT0RFX1BvcykgLyohPCAweDAwMDAwMEMwICovDQojZGVmaW5lIERCR01DVV9DUl9UUkFDRV9NT0RFICAgICAgICAgICAgICAgICAgICAgREJHTUNVX0NSX1RSQUNFX01PREVfTXNrICAgICAgLyohPCBUUkFDRV9NT0RFWzE6MF0gYml0cyAoVHJhY2UgUGluIEFzc2lnbm1lbnQgQ29udHJvbCkgKi8NCiNkZWZpbmUgREJHTUNVX0NSX1RSQUNFX01PREVfMCAgICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgREJHTUNVX0NSX1RSQUNFX01PREVfUG9zKSAvKiE8IDB4MDAwMDAwNDAgKi8NCiNkZWZpbmUgREJHTUNVX0NSX1RSQUNFX01PREVfMSAgICAgICAgICAgICAgICAgICAoMHgyVUwgPDwgREJHTUNVX0NSX1RSQUNFX01PREVfUG9zKSAvKiE8IDB4MDAwMDAwODAgKi8NCg0KLyoqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIERCR01DVV9BUEIxX0ZaIHJlZ2lzdGVyICAqKioqKioqKioqKioqKi8NCg0KI2RlZmluZSBEQkdNQ1VfQVBCMV9GWl9EQkdfVElNMl9TVE9QX1BvcyAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBEQkdNQ1VfQVBCMV9GWl9EQkdfVElNMl9TVE9QX01zayAgICAgICAgICgweDFVTCA8PCBEQkdNQ1VfQVBCMV9GWl9EQkdfVElNMl9TVE9QX1BvcykgLyohPCAweDAwMDAwMDAxICovDQojZGVmaW5lIERCR01DVV9BUEIxX0ZaX0RCR19USU0yX1NUT1AgICAgICAgICAgICAgREJHTUNVX0FQQjFfRlpfREJHX1RJTTJfU1RPUF9Nc2sgLyohPCBUSU0yIGNvdW50ZXIgc3RvcHBlZCB3aGVuIGNvcmUgaXMgaGFsdGVkICovDQojZGVmaW5lIERCR01DVV9BUEIxX0ZaX0RCR19USU0zX1NUT1BfUG9zICAgICAgICAgKDFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIERCR01DVV9BUEIxX0ZaX0RCR19USU0zX1NUT1BfTXNrICAgICAgICAgKDB4MVVMIDw8IERCR01DVV9BUEIxX0ZaX0RCR19USU0zX1NUT1BfUG9zKSAvKiE8IDB4MDAwMDAwMDIgKi8NCiNkZWZpbmUgREJHTUNVX0FQQjFfRlpfREJHX1RJTTNfU1RPUCAgICAgICAgICAgICBEQkdNQ1VfQVBCMV9GWl9EQkdfVElNM19TVE9QX01zayAvKiE8IFRJTTMgY291bnRlciBzdG9wcGVkIHdoZW4gY29yZSBpcyBoYWx0ZWQgKi8NCiNkZWZpbmUgREJHTUNVX0FQQjFfRlpfREJHX1RJTTRfU1RPUF9Qb3MgICAgICAgICAoMlUpICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgREJHTUNVX0FQQjFfRlpfREJHX1RJTTRfU1RPUF9Nc2sgICAgICAgICAoMHgxVUwgPDwgREJHTUNVX0FQQjFfRlpfREJHX1RJTTRfU1RPUF9Qb3MpIC8qITwgMHgwMDAwMDAwNCAqLw0KI2RlZmluZSBEQkdNQ1VfQVBCMV9GWl9EQkdfVElNNF9TVE9QICAgICAgICAgICAgIERCR01DVV9BUEIxX0ZaX0RCR19USU00X1NUT1BfTXNrIC8qITwgVElNNCBjb3VudGVyIHN0b3BwZWQgd2hlbiBjb3JlIGlzIGhhbHRlZCAqLw0KI2RlZmluZSBEQkdNQ1VfQVBCMV9GWl9EQkdfVElNNV9TVE9QX1BvcyAgICAgICAgICgzVSkgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBEQkdNQ1VfQVBCMV9GWl9EQkdfVElNNV9TVE9QX01zayAgICAgICAgICgweDFVTCA8PCBEQkdNQ1VfQVBCMV9GWl9EQkdfVElNNV9TVE9QX1BvcykgLyohPCAweDAwMDAwMDA4ICovDQojZGVmaW5lIERCR01DVV9BUEIxX0ZaX0RCR19USU01X1NUT1AgICAgICAgICAgICAgREJHTUNVX0FQQjFfRlpfREJHX1RJTTVfU1RPUF9Nc2sgLyohPCBUSU01IGNvdW50ZXIgc3RvcHBlZCB3aGVuIGNvcmUgaXMgaGFsdGVkICovDQojZGVmaW5lIERCR01DVV9BUEIxX0ZaX0RCR19USU02X1NUT1BfUG9zICAgICAgICAgKDRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIERCR01DVV9BUEIxX0ZaX0RCR19USU02X1NUT1BfTXNrICAgICAgICAgKDB4MVVMIDw8IERCR01DVV9BUEIxX0ZaX0RCR19USU02X1NUT1BfUG9zKSAvKiE8IDB4MDAwMDAwMTAgKi8NCiNkZWZpbmUgREJHTUNVX0FQQjFfRlpfREJHX1RJTTZfU1RPUCAgICAgICAgICAgICBEQkdNQ1VfQVBCMV9GWl9EQkdfVElNNl9TVE9QX01zayAvKiE8IFRJTTYgY291bnRlciBzdG9wcGVkIHdoZW4gY29yZSBpcyBoYWx0ZWQgKi8NCiNkZWZpbmUgREJHTUNVX0FQQjFfRlpfREJHX1RJTTdfU1RPUF9Qb3MgICAgICAgICAoNVUpICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgREJHTUNVX0FQQjFfRlpfREJHX1RJTTdfU1RPUF9Nc2sgICAgICAgICAoMHgxVUwgPDwgREJHTUNVX0FQQjFfRlpfREJHX1RJTTdfU1RPUF9Qb3MpIC8qITwgMHgwMDAwMDAyMCAqLw0KI2RlZmluZSBEQkdNQ1VfQVBCMV9GWl9EQkdfVElNN19TVE9QICAgICAgICAgICAgIERCR01DVV9BUEIxX0ZaX0RCR19USU03X1NUT1BfTXNrIC8qITwgVElNNyBjb3VudGVyIHN0b3BwZWQgd2hlbiBjb3JlIGlzIGhhbHRlZCAqLw0KI2RlZmluZSBEQkdNQ1VfQVBCMV9GWl9EQkdfUlRDX1NUT1BfUG9zICAgICAgICAgICgxMFUpICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBEQkdNQ1VfQVBCMV9GWl9EQkdfUlRDX1NUT1BfTXNrICAgICAgICAgICgweDFVTCA8PCBEQkdNQ1VfQVBCMV9GWl9EQkdfUlRDX1NUT1BfUG9zKSAvKiE8IDB4MDAwMDA0MDAgKi8NCiNkZWZpbmUgREJHTUNVX0FQQjFfRlpfREJHX1JUQ19TVE9QICAgICAgICAgICAgICBEQkdNQ1VfQVBCMV9GWl9EQkdfUlRDX1NUT1BfTXNrIC8qITwgUlRDIENvdW50ZXIgc3RvcHBlZCB3aGVuIENvcmUgaXMgaGFsdGVkICovDQojZGVmaW5lIERCR01DVV9BUEIxX0ZaX0RCR19XV0RHX1NUT1BfUG9zICAgICAgICAgKDExVSkgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIERCR01DVV9BUEIxX0ZaX0RCR19XV0RHX1NUT1BfTXNrICAgICAgICAgKDB4MVVMIDw8IERCR01DVV9BUEIxX0ZaX0RCR19XV0RHX1NUT1BfUG9zKSAvKiE8IDB4MDAwMDA4MDAgKi8NCiNkZWZpbmUgREJHTUNVX0FQQjFfRlpfREJHX1dXREdfU1RPUCAgICAgICAgICAgICBEQkdNQ1VfQVBCMV9GWl9EQkdfV1dER19TVE9QX01zayAvKiE8IERlYnVnIFdpbmRvdyBXYXRjaGRvZyBzdG9wcGVkIHdoZW4gQ29yZSBpcyBoYWx0ZWQgKi8NCiNkZWZpbmUgREJHTUNVX0FQQjFfRlpfREJHX0lXREdfU1RPUF9Qb3MgICAgICAgICAoMTJVKSAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgREJHTUNVX0FQQjFfRlpfREJHX0lXREdfU1RPUF9Nc2sgICAgICAgICAoMHgxVUwgPDwgREJHTUNVX0FQQjFfRlpfREJHX0lXREdfU1RPUF9Qb3MpIC8qITwgMHgwMDAwMTAwMCAqLw0KI2RlZmluZSBEQkdNQ1VfQVBCMV9GWl9EQkdfSVdER19TVE9QICAgICAgICAgICAgIERCR01DVV9BUEIxX0ZaX0RCR19JV0RHX1NUT1BfTXNrIC8qITwgRGVidWcgSW5kZXBlbmRlbnQgV2F0Y2hkb2cgc3RvcHBlZCB3aGVuIENvcmUgaXMgaGFsdGVkICovDQojZGVmaW5lIERCR01DVV9BUEIxX0ZaX0RCR19JMkMxX1NNQlVTX1RJTUVPVVRfUG9zICgyMVUpICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIERCR01DVV9BUEIxX0ZaX0RCR19JMkMxX1NNQlVTX1RJTUVPVVRfTXNrICgweDFVTCA8PCBEQkdNQ1VfQVBCMV9GWl9EQkdfSTJDMV9TTUJVU19USU1FT1VUX1BvcykgLyohPCAweDAwMjAwMDAwICovDQojZGVmaW5lIERCR01DVV9BUEIxX0ZaX0RCR19JMkMxX1NNQlVTX1RJTUVPVVQgICAgREJHTUNVX0FQQjFfRlpfREJHX0kyQzFfU01CVVNfVElNRU9VVF9Nc2sgLyohPCBTTUJVUyB0aW1lb3V0IG1vZGUgc3RvcHBlZCB3aGVuIENvcmUgaXMgaGFsdGVkICovDQojZGVmaW5lIERCR01DVV9BUEIxX0ZaX0RCR19JMkMyX1NNQlVTX1RJTUVPVVRfUG9zICgyMlUpICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIERCR01DVV9BUEIxX0ZaX0RCR19JMkMyX1NNQlVTX1RJTUVPVVRfTXNrICgweDFVTCA8PCBEQkdNQ1VfQVBCMV9GWl9EQkdfSTJDMl9TTUJVU19USU1FT1VUX1BvcykgLyohPCAweDAwNDAwMDAwICovDQojZGVmaW5lIERCR01DVV9BUEIxX0ZaX0RCR19JMkMyX1NNQlVTX1RJTUVPVVQgICAgREJHTUNVX0FQQjFfRlpfREJHX0kyQzJfU01CVVNfVElNRU9VVF9Nc2sgLyohPCBTTUJVUyB0aW1lb3V0IG1vZGUgc3RvcHBlZCB3aGVuIENvcmUgaXMgaGFsdGVkICovDQoNCi8qKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBEQkdNQ1VfQVBCMl9GWiByZWdpc3RlciAgKioqKioqKioqKioqKiovDQoNCiNkZWZpbmUgREJHTUNVX0FQQjJfRlpfREJHX1RJTTlfU1RPUF9Qb3MgICAgICAgICAoMlUpICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgREJHTUNVX0FQQjJfRlpfREJHX1RJTTlfU1RPUF9Nc2sgICAgICAgICAoMHgxVUwgPDwgREJHTUNVX0FQQjJfRlpfREJHX1RJTTlfU1RPUF9Qb3MpIC8qITwgMHgwMDAwMDAwNCAqLw0KI2RlZmluZSBEQkdNQ1VfQVBCMl9GWl9EQkdfVElNOV9TVE9QICAgICAgICAgICAgIERCR01DVV9BUEIyX0ZaX0RCR19USU05X1NUT1BfTXNrIC8qITwgVElNOSBjb3VudGVyIHN0b3BwZWQgd2hlbiBjb3JlIGlzIGhhbHRlZCAqLw0KI2RlZmluZSBEQkdNQ1VfQVBCMl9GWl9EQkdfVElNMTBfU1RPUF9Qb3MgICAgICAgICgzVSkgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBEQkdNQ1VfQVBCMl9GWl9EQkdfVElNMTBfU1RPUF9Nc2sgICAgICAgICgweDFVTCA8PCBEQkdNQ1VfQVBCMl9GWl9EQkdfVElNMTBfU1RPUF9Qb3MpIC8qITwgMHgwMDAwMDAwOCAqLw0KI2RlZmluZSBEQkdNQ1VfQVBCMl9GWl9EQkdfVElNMTBfU1RPUCAgICAgICAgICAgIERCR01DVV9BUEIyX0ZaX0RCR19USU0xMF9TVE9QX01zayAvKiE8IFRJTTEwIGNvdW50ZXIgc3RvcHBlZCB3aGVuIGNvcmUgaXMgaGFsdGVkICovDQojZGVmaW5lIERCR01DVV9BUEIyX0ZaX0RCR19USU0xMV9TVE9QX1BvcyAgICAgICAgKDRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIERCR01DVV9BUEIyX0ZaX0RCR19USU0xMV9TVE9QX01zayAgICAgICAgKDB4MVVMIDw8IERCR01DVV9BUEIyX0ZaX0RCR19USU0xMV9TVE9QX1BvcykgLyohPCAweDAwMDAwMDEwICovDQojZGVmaW5lIERCR01DVV9BUEIyX0ZaX0RCR19USU0xMV9TVE9QICAgICAgICAgICAgREJHTUNVX0FQQjJfRlpfREJHX1RJTTExX1NUT1BfTXNrIC8qITwgVElNMTEgY291bnRlciBzdG9wcGVkIHdoZW4gY29yZSBpcyBoYWx0ZWQgKi8NCg0KLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8NCi8qICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovDQovKiAgICAgICAgICAgICAgICAgICAgICAgICAgIERNQSBDb250cm9sbGVyIChETUEpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLw0KLyogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8NCi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovDQoNCi8qKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgRE1BX0lTUiByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIERNQV9JU1JfR0lGMV9Qb3MgICAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIERNQV9JU1JfR0lGMV9Nc2sgICAgICAgICAgICAgICAgICAgICgweDFVTCA8PCBETUFfSVNSX0dJRjFfUG9zKSAgICAgICAgIC8qITwgMHgwMDAwMDAwMSAqLw0KI2RlZmluZSBETUFfSVNSX0dJRjEgICAgICAgICAgICAgICAgICAgICAgICBETUFfSVNSX0dJRjFfTXNrICAgICAgICAgICAgICAgICAgIC8qITwgQ2hhbm5lbCAxIEdsb2JhbCBpbnRlcnJ1cHQgZmxhZyAqLw0KI2RlZmluZSBETUFfSVNSX1RDSUYxX1BvcyAgICAgICAgICAgICAgICAgICAoMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBETUFfSVNSX1RDSUYxX01zayAgICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgRE1BX0lTUl9UQ0lGMV9Qb3MpICAgICAgICAvKiE8IDB4MDAwMDAwMDIgKi8NCiNkZWZpbmUgRE1BX0lTUl9UQ0lGMSAgICAgICAgICAgICAgICAgICAgICAgRE1BX0lTUl9UQ0lGMV9Nc2sgICAgICAgICAgICAgICAgICAvKiE8IENoYW5uZWwgMSBUcmFuc2ZlciBDb21wbGV0ZSBmbGFnICovDQojZGVmaW5lIERNQV9JU1JfSFRJRjFfUG9zICAgICAgICAgICAgICAgICAgICgyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIERNQV9JU1JfSFRJRjFfTXNrICAgICAgICAgICAgICAgICAgICgweDFVTCA8PCBETUFfSVNSX0hUSUYxX1BvcykgICAgICAgIC8qITwgMHgwMDAwMDAwNCAqLw0KI2RlZmluZSBETUFfSVNSX0hUSUYxICAgICAgICAgICAgICAgICAgICAgICBETUFfSVNSX0hUSUYxX01zayAgICAgICAgICAgICAgICAgIC8qITwgQ2hhbm5lbCAxIEhhbGYgVHJhbnNmZXIgZmxhZyAqLw0KI2RlZmluZSBETUFfSVNSX1RFSUYxX1BvcyAgICAgICAgICAgICAgICAgICAoM1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBETUFfSVNSX1RFSUYxX01zayAgICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgRE1BX0lTUl9URUlGMV9Qb3MpICAgICAgICAvKiE8IDB4MDAwMDAwMDggKi8NCiNkZWZpbmUgRE1BX0lTUl9URUlGMSAgICAgICAgICAgICAgICAgICAgICAgRE1BX0lTUl9URUlGMV9Nc2sgICAgICAgICAgICAgICAgICAvKiE8IENoYW5uZWwgMSBUcmFuc2ZlciBFcnJvciBmbGFnICovDQojZGVmaW5lIERNQV9JU1JfR0lGMl9Qb3MgICAgICAgICAgICAgICAgICAgICg0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIERNQV9JU1JfR0lGMl9Nc2sgICAgICAgICAgICAgICAgICAgICgweDFVTCA8PCBETUFfSVNSX0dJRjJfUG9zKSAgICAgICAgIC8qITwgMHgwMDAwMDAxMCAqLw0KI2RlZmluZSBETUFfSVNSX0dJRjIgICAgICAgICAgICAgICAgICAgICAgICBETUFfSVNSX0dJRjJfTXNrICAgICAgICAgICAgICAgICAgIC8qITwgQ2hhbm5lbCAyIEdsb2JhbCBpbnRlcnJ1cHQgZmxhZyAqLw0KI2RlZmluZSBETUFfSVNSX1RDSUYyX1BvcyAgICAgICAgICAgICAgICAgICAoNVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBETUFfSVNSX1RDSUYyX01zayAgICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgRE1BX0lTUl9UQ0lGMl9Qb3MpICAgICAgICAvKiE8IDB4MDAwMDAwMjAgKi8NCiNkZWZpbmUgRE1BX0lTUl9UQ0lGMiAgICAgICAgICAgICAgICAgICAgICAgRE1BX0lTUl9UQ0lGMl9Nc2sgICAgICAgICAgICAgICAgICAvKiE8IENoYW5uZWwgMiBUcmFuc2ZlciBDb21wbGV0ZSBmbGFnICovDQojZGVmaW5lIERNQV9JU1JfSFRJRjJfUG9zICAgICAgICAgICAgICAgICAgICg2VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIERNQV9JU1JfSFRJRjJfTXNrICAgICAgICAgICAgICAgICAgICgweDFVTCA8PCBETUFfSVNSX0hUSUYyX1BvcykgICAgICAgIC8qITwgMHgwMDAwMDA0MCAqLw0KI2RlZmluZSBETUFfSVNSX0hUSUYyICAgICAgICAgICAgICAgICAgICAgICBETUFfSVNSX0hUSUYyX01zayAgICAgICAgICAgICAgICAgIC8qITwgQ2hhbm5lbCAyIEhhbGYgVHJhbnNmZXIgZmxhZyAqLw0KI2RlZmluZSBETUFfSVNSX1RFSUYyX1BvcyAgICAgICAgICAgICAgICAgICAoN1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBETUFfSVNSX1RFSUYyX01zayAgICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgRE1BX0lTUl9URUlGMl9Qb3MpICAgICAgICAvKiE8IDB4MDAwMDAwODAgKi8NCiNkZWZpbmUgRE1BX0lTUl9URUlGMiAgICAgICAgICAgICAgICAgICAgICAgRE1BX0lTUl9URUlGMl9Nc2sgICAgICAgICAgICAgICAgICAvKiE8IENoYW5uZWwgMiBUcmFuc2ZlciBFcnJvciBmbGFnICovDQojZGVmaW5lIERNQV9JU1JfR0lGM19Qb3MgICAgICAgICAgICAgICAgICAgICg4VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIERNQV9JU1JfR0lGM19Nc2sgICAgICAgICAgICAgICAgICAgICgweDFVTCA8PCBETUFfSVNSX0dJRjNfUG9zKSAgICAgICAgIC8qITwgMHgwMDAwMDEwMCAqLw0KI2RlZmluZSBETUFfSVNSX0dJRjMgICAgICAgICAgICAgICAgICAgICAgICBETUFfSVNSX0dJRjNfTXNrICAgICAgICAgICAgICAgICAgIC8qITwgQ2hhbm5lbCAzIEdsb2JhbCBpbnRlcnJ1cHQgZmxhZyAqLw0KI2RlZmluZSBETUFfSVNSX1RDSUYzX1BvcyAgICAgICAgICAgICAgICAgICAoOVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBETUFfSVNSX1RDSUYzX01zayAgICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgRE1BX0lTUl9UQ0lGM19Qb3MpICAgICAgICAvKiE8IDB4MDAwMDAyMDAgKi8NCiNkZWZpbmUgRE1BX0lTUl9UQ0lGMyAgICAgICAgICAgICAgICAgICAgICAgRE1BX0lTUl9UQ0lGM19Nc2sgICAgICAgICAgICAgICAgICAvKiE8IENoYW5uZWwgMyBUcmFuc2ZlciBDb21wbGV0ZSBmbGFnICovDQojZGVmaW5lIERNQV9JU1JfSFRJRjNfUG9zICAgICAgICAgICAgICAgICAgICgxMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIERNQV9JU1JfSFRJRjNfTXNrICAgICAgICAgICAgICAgICAgICgweDFVTCA8PCBETUFfSVNSX0hUSUYzX1BvcykgICAgICAgIC8qITwgMHgwMDAwMDQwMCAqLw0KI2RlZmluZSBETUFfSVNSX0hUSUYzICAgICAgICAgICAgICAgICAgICAgICBETUFfSVNSX0hUSUYzX01zayAgICAgICAgICAgICAgICAgIC8qITwgQ2hhbm5lbCAzIEhhbGYgVHJhbnNmZXIgZmxhZyAqLw0KI2RlZmluZSBETUFfSVNSX1RFSUYzX1BvcyAgICAgICAgICAgICAgICAgICAoMTFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBETUFfSVNSX1RFSUYzX01zayAgICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgRE1BX0lTUl9URUlGM19Qb3MpICAgICAgICAvKiE8IDB4MDAwMDA4MDAgKi8NCiNkZWZpbmUgRE1BX0lTUl9URUlGMyAgICAgICAgICAgICAgICAgICAgICAgRE1BX0lTUl9URUlGM19Nc2sgICAgICAgICAgICAgICAgICAvKiE8IENoYW5uZWwgMyBUcmFuc2ZlciBFcnJvciBmbGFnICovDQojZGVmaW5lIERNQV9JU1JfR0lGNF9Qb3MgICAgICAgICAgICAgICAgICAgICgxMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIERNQV9JU1JfR0lGNF9Nc2sgICAgICAgICAgICAgICAgICAgICgweDFVTCA8PCBETUFfSVNSX0dJRjRfUG9zKSAgICAgICAgIC8qITwgMHgwMDAwMTAwMCAqLw0KI2RlZmluZSBETUFfSVNSX0dJRjQgICAgICAgICAgICAgICAgICAgICAgICBETUFfSVNSX0dJRjRfTXNrICAgICAgICAgICAgICAgICAgIC8qITwgQ2hhbm5lbCA0IEdsb2JhbCBpbnRlcnJ1cHQgZmxhZyAqLw0KI2RlZmluZSBETUFfSVNSX1RDSUY0X1BvcyAgICAgICAgICAgICAgICAgICAoMTNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBETUFfSVNSX1RDSUY0X01zayAgICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgRE1BX0lTUl9UQ0lGNF9Qb3MpICAgICAgICAvKiE8IDB4MDAwMDIwMDAgKi8NCiNkZWZpbmUgRE1BX0lTUl9UQ0lGNCAgICAgICAgICAgICAgICAgICAgICAgRE1BX0lTUl9UQ0lGNF9Nc2sgICAgICAgICAgICAgICAgICAvKiE8IENoYW5uZWwgNCBUcmFuc2ZlciBDb21wbGV0ZSBmbGFnICovDQojZGVmaW5lIERNQV9JU1JfSFRJRjRfUG9zICAgICAgICAgICAgICAgICAgICgxNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIERNQV9JU1JfSFRJRjRfTXNrICAgICAgICAgICAgICAgICAgICgweDFVTCA8PCBETUFfSVNSX0hUSUY0X1BvcykgICAgICAgIC8qITwgMHgwMDAwNDAwMCAqLw0KI2RlZmluZSBETUFfSVNSX0hUSUY0ICAgICAgICAgICAgICAgICAgICAgICBETUFfSVNSX0hUSUY0X01zayAgICAgICAgICAgICAgICAgIC8qITwgQ2hhbm5lbCA0IEhhbGYgVHJhbnNmZXIgZmxhZyAqLw0KI2RlZmluZSBETUFfSVNSX1RFSUY0X1BvcyAgICAgICAgICAgICAgICAgICAoMTVVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBETUFfSVNSX1RFSUY0X01zayAgICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgRE1BX0lTUl9URUlGNF9Qb3MpICAgICAgICAvKiE8IDB4MDAwMDgwMDAgKi8NCiNkZWZpbmUgRE1BX0lTUl9URUlGNCAgICAgICAgICAgICAgICAgICAgICAgRE1BX0lTUl9URUlGNF9Nc2sgICAgICAgICAgICAgICAgICAvKiE8IENoYW5uZWwgNCBUcmFuc2ZlciBFcnJvciBmbGFnICovDQojZGVmaW5lIERNQV9JU1JfR0lGNV9Qb3MgICAgICAgICAgICAgICAgICAgICgxNlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIERNQV9JU1JfR0lGNV9Nc2sgICAgICAgICAgICAgICAgICAgICgweDFVTCA8PCBETUFfSVNSX0dJRjVfUG9zKSAgICAgICAgIC8qITwgMHgwMDAxMDAwMCAqLw0KI2RlZmluZSBETUFfSVNSX0dJRjUgICAgICAgICAgICAgICAgICAgICAgICBETUFfSVNSX0dJRjVfTXNrICAgICAgICAgICAgICAgICAgIC8qITwgQ2hhbm5lbCA1IEdsb2JhbCBpbnRlcnJ1cHQgZmxhZyAqLw0KI2RlZmluZSBETUFfSVNSX1RDSUY1X1BvcyAgICAgICAgICAgICAgICAgICAoMTdVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBETUFfSVNSX1RDSUY1X01zayAgICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgRE1BX0lTUl9UQ0lGNV9Qb3MpICAgICAgICAvKiE8IDB4MDAwMjAwMDAgKi8NCiNkZWZpbmUgRE1BX0lTUl9UQ0lGNSAgICAgICAgICAgICAgICAgICAgICAgRE1BX0lTUl9UQ0lGNV9Nc2sgICAgICAgICAgICAgICAgICAvKiE8IENoYW5uZWwgNSBUcmFuc2ZlciBDb21wbGV0ZSBmbGFnICovDQojZGVmaW5lIERNQV9JU1JfSFRJRjVfUG9zICAgICAgICAgICAgICAgICAgICgxOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIERNQV9JU1JfSFRJRjVfTXNrICAgICAgICAgICAgICAgICAgICgweDFVTCA8PCBETUFfSVNSX0hUSUY1X1BvcykgICAgICAgIC8qITwgMHgwMDA0MDAwMCAqLw0KI2RlZmluZSBETUFfSVNSX0hUSUY1ICAgICAgICAgICAgICAgICAgICAgICBETUFfSVNSX0hUSUY1X01zayAgICAgICAgICAgICAgICAgIC8qITwgQ2hhbm5lbCA1IEhhbGYgVHJhbnNmZXIgZmxhZyAqLw0KI2RlZmluZSBETUFfSVNSX1RFSUY1X1BvcyAgICAgICAgICAgICAgICAgICAoMTlVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBETUFfSVNSX1RFSUY1X01zayAgICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgRE1BX0lTUl9URUlGNV9Qb3MpICAgICAgICAvKiE8IDB4MDAwODAwMDAgKi8NCiNkZWZpbmUgRE1BX0lTUl9URUlGNSAgICAgICAgICAgICAgICAgICAgICAgRE1BX0lTUl9URUlGNV9Nc2sgICAgICAgICAgICAgICAgICAvKiE8IENoYW5uZWwgNSBUcmFuc2ZlciBFcnJvciBmbGFnICovDQojZGVmaW5lIERNQV9JU1JfR0lGNl9Qb3MgICAgICAgICAgICAgICAgICAgICgyMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIERNQV9JU1JfR0lGNl9Nc2sgICAgICAgICAgICAgICAgICAgICgweDFVTCA8PCBETUFfSVNSX0dJRjZfUG9zKSAgICAgICAgIC8qITwgMHgwMDEwMDAwMCAqLw0KI2RlZmluZSBETUFfSVNSX0dJRjYgICAgICAgICAgICAgICAgICAgICAgICBETUFfSVNSX0dJRjZfTXNrICAgICAgICAgICAgICAgICAgIC8qITwgQ2hhbm5lbCA2IEdsb2JhbCBpbnRlcnJ1cHQgZmxhZyAqLw0KI2RlZmluZSBETUFfSVNSX1RDSUY2X1BvcyAgICAgICAgICAgICAgICAgICAoMjFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBETUFfSVNSX1RDSUY2X01zayAgICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgRE1BX0lTUl9UQ0lGNl9Qb3MpICAgICAgICAvKiE8IDB4MDAyMDAwMDAgKi8NCiNkZWZpbmUgRE1BX0lTUl9UQ0lGNiAgICAgICAgICAgICAgICAgICAgICAgRE1BX0lTUl9UQ0lGNl9Nc2sgICAgICAgICAgICAgICAgICAvKiE8IENoYW5uZWwgNiBUcmFuc2ZlciBDb21wbGV0ZSBmbGFnICovDQojZGVmaW5lIERNQV9JU1JfSFRJRjZfUG9zICAgICAgICAgICAgICAgICAgICgyMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIERNQV9JU1JfSFRJRjZfTXNrICAgICAgICAgICAgICAgICAgICgweDFVTCA8PCBETUFfSVNSX0hUSUY2X1BvcykgICAgICAgIC8qITwgMHgwMDQwMDAwMCAqLw0KI2RlZmluZSBETUFfSVNSX0hUSUY2ICAgICAgICAgICAgICAgICAgICAgICBETUFfSVNSX0hUSUY2X01zayAgICAgICAgICAgICAgICAgIC8qITwgQ2hhbm5lbCA2IEhhbGYgVHJhbnNmZXIgZmxhZyAqLw0KI2RlZmluZSBETUFfSVNSX1RFSUY2X1BvcyAgICAgICAgICAgICAgICAgICAoMjNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBETUFfSVNSX1RFSUY2X01zayAgICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgRE1BX0lTUl9URUlGNl9Qb3MpICAgICAgICAvKiE8IDB4MDA4MDAwMDAgKi8NCiNkZWZpbmUgRE1BX0lTUl9URUlGNiAgICAgICAgICAgICAgICAgICAgICAgRE1BX0lTUl9URUlGNl9Nc2sgICAgICAgICAgICAgICAgICAvKiE8IENoYW5uZWwgNiBUcmFuc2ZlciBFcnJvciBmbGFnICovDQojZGVmaW5lIERNQV9JU1JfR0lGN19Qb3MgICAgICAgICAgICAgICAgICAgICgyNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIERNQV9JU1JfR0lGN19Nc2sgICAgICAgICAgICAgICAgICAgICgweDFVTCA8PCBETUFfSVNSX0dJRjdfUG9zKSAgICAgICAgIC8qITwgMHgwMTAwMDAwMCAqLw0KI2RlZmluZSBETUFfSVNSX0dJRjcgICAgICAgICAgICAgICAgICAgICAgICBETUFfSVNSX0dJRjdfTXNrICAgICAgICAgICAgICAgICAgIC8qITwgQ2hhbm5lbCA3IEdsb2JhbCBpbnRlcnJ1cHQgZmxhZyAqLw0KI2RlZmluZSBETUFfSVNSX1RDSUY3X1BvcyAgICAgICAgICAgICAgICAgICAoMjVVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBETUFfSVNSX1RDSUY3X01zayAgICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgRE1BX0lTUl9UQ0lGN19Qb3MpICAgICAgICAvKiE8IDB4MDIwMDAwMDAgKi8NCiNkZWZpbmUgRE1BX0lTUl9UQ0lGNyAgICAgICAgICAgICAgICAgICAgICAgRE1BX0lTUl9UQ0lGN19Nc2sgICAgICAgICAgICAgICAgICAvKiE8IENoYW5uZWwgNyBUcmFuc2ZlciBDb21wbGV0ZSBmbGFnICovDQojZGVmaW5lIERNQV9JU1JfSFRJRjdfUG9zICAgICAgICAgICAgICAgICAgICgyNlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIERNQV9JU1JfSFRJRjdfTXNrICAgICAgICAgICAgICAgICAgICgweDFVTCA8PCBETUFfSVNSX0hUSUY3X1BvcykgICAgICAgIC8qITwgMHgwNDAwMDAwMCAqLw0KI2RlZmluZSBETUFfSVNSX0hUSUY3ICAgICAgICAgICAgICAgICAgICAgICBETUFfSVNSX0hUSUY3X01zayAgICAgICAgICAgICAgICAgIC8qITwgQ2hhbm5lbCA3IEhhbGYgVHJhbnNmZXIgZmxhZyAqLw0KI2RlZmluZSBETUFfSVNSX1RFSUY3X1BvcyAgICAgICAgICAgICAgICAgICAoMjdVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBETUFfSVNSX1RFSUY3X01zayAgICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgRE1BX0lTUl9URUlGN19Qb3MpICAgICAgICAvKiE8IDB4MDgwMDAwMDAgKi8NCiNkZWZpbmUgRE1BX0lTUl9URUlGNyAgICAgICAgICAgICAgICAgICAgICAgRE1BX0lTUl9URUlGN19Nc2sgICAgICAgICAgICAgICAgICAvKiE8IENoYW5uZWwgNyBUcmFuc2ZlciBFcnJvciBmbGFnICovDQoNCi8qKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgRE1BX0lGQ1IgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIERNQV9JRkNSX0NHSUYxX1BvcyAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIERNQV9JRkNSX0NHSUYxX01zayAgICAgICAgICAgICAgICAgICgweDFVTCA8PCBETUFfSUZDUl9DR0lGMV9Qb3MpICAgICAgIC8qITwgMHgwMDAwMDAwMSAqLw0KI2RlZmluZSBETUFfSUZDUl9DR0lGMSAgICAgICAgICAgICAgICAgICAgICBETUFfSUZDUl9DR0lGMV9Nc2sgICAgICAgICAgICAgICAgIC8qITwgQ2hhbm5lbCAxIEdsb2JhbCBpbnRlcnJ1cHQgY2xlYXIgKi8NCiNkZWZpbmUgRE1BX0lGQ1JfQ1RDSUYxX1BvcyAgICAgICAgICAgICAgICAgKDFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRE1BX0lGQ1JfQ1RDSUYxX01zayAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IERNQV9JRkNSX0NUQ0lGMV9Qb3MpICAgICAgLyohPCAweDAwMDAwMDAyICovDQojZGVmaW5lIERNQV9JRkNSX0NUQ0lGMSAgICAgICAgICAgICAgICAgICAgIERNQV9JRkNSX0NUQ0lGMV9Nc2sgICAgICAgICAgICAgICAgLyohPCBDaGFubmVsIDEgVHJhbnNmZXIgQ29tcGxldGUgY2xlYXIgKi8NCiNkZWZpbmUgRE1BX0lGQ1JfQ0hUSUYxX1BvcyAgICAgICAgICAgICAgICAgKDJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRE1BX0lGQ1JfQ0hUSUYxX01zayAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IERNQV9JRkNSX0NIVElGMV9Qb3MpICAgICAgLyohPCAweDAwMDAwMDA0ICovDQojZGVmaW5lIERNQV9JRkNSX0NIVElGMSAgICAgICAgICAgICAgICAgICAgIERNQV9JRkNSX0NIVElGMV9Nc2sgICAgICAgICAgICAgICAgLyohPCBDaGFubmVsIDEgSGFsZiBUcmFuc2ZlciBjbGVhciAqLw0KI2RlZmluZSBETUFfSUZDUl9DVEVJRjFfUG9zICAgICAgICAgICAgICAgICAoM1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBETUFfSUZDUl9DVEVJRjFfTXNrICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgRE1BX0lGQ1JfQ1RFSUYxX1BvcykgICAgICAvKiE8IDB4MDAwMDAwMDggKi8NCiNkZWZpbmUgRE1BX0lGQ1JfQ1RFSUYxICAgICAgICAgICAgICAgICAgICAgRE1BX0lGQ1JfQ1RFSUYxX01zayAgICAgICAgICAgICAgICAvKiE8IENoYW5uZWwgMSBUcmFuc2ZlciBFcnJvciBjbGVhciAqLw0KI2RlZmluZSBETUFfSUZDUl9DR0lGMl9Qb3MgICAgICAgICAgICAgICAgICAoNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBETUFfSUZDUl9DR0lGMl9Nc2sgICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgRE1BX0lGQ1JfQ0dJRjJfUG9zKSAgICAgICAvKiE8IDB4MDAwMDAwMTAgKi8NCiNkZWZpbmUgRE1BX0lGQ1JfQ0dJRjIgICAgICAgICAgICAgICAgICAgICAgRE1BX0lGQ1JfQ0dJRjJfTXNrICAgICAgICAgICAgICAgICAvKiE8IENoYW5uZWwgMiBHbG9iYWwgaW50ZXJydXB0IGNsZWFyICovDQojZGVmaW5lIERNQV9JRkNSX0NUQ0lGMl9Qb3MgICAgICAgICAgICAgICAgICg1VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIERNQV9JRkNSX0NUQ0lGMl9Nc2sgICAgICAgICAgICAgICAgICgweDFVTCA8PCBETUFfSUZDUl9DVENJRjJfUG9zKSAgICAgIC8qITwgMHgwMDAwMDAyMCAqLw0KI2RlZmluZSBETUFfSUZDUl9DVENJRjIgICAgICAgICAgICAgICAgICAgICBETUFfSUZDUl9DVENJRjJfTXNrICAgICAgICAgICAgICAgIC8qITwgQ2hhbm5lbCAyIFRyYW5zZmVyIENvbXBsZXRlIGNsZWFyICovDQojZGVmaW5lIERNQV9JRkNSX0NIVElGMl9Qb3MgICAgICAgICAgICAgICAgICg2VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIERNQV9JRkNSX0NIVElGMl9Nc2sgICAgICAgICAgICAgICAgICgweDFVTCA8PCBETUFfSUZDUl9DSFRJRjJfUG9zKSAgICAgIC8qITwgMHgwMDAwMDA0MCAqLw0KI2RlZmluZSBETUFfSUZDUl9DSFRJRjIgICAgICAgICAgICAgICAgICAgICBETUFfSUZDUl9DSFRJRjJfTXNrICAgICAgICAgICAgICAgIC8qITwgQ2hhbm5lbCAyIEhhbGYgVHJhbnNmZXIgY2xlYXIgKi8NCiNkZWZpbmUgRE1BX0lGQ1JfQ1RFSUYyX1BvcyAgICAgICAgICAgICAgICAgKDdVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRE1BX0lGQ1JfQ1RFSUYyX01zayAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IERNQV9JRkNSX0NURUlGMl9Qb3MpICAgICAgLyohPCAweDAwMDAwMDgwICovDQojZGVmaW5lIERNQV9JRkNSX0NURUlGMiAgICAgICAgICAgICAgICAgICAgIERNQV9JRkNSX0NURUlGMl9Nc2sgICAgICAgICAgICAgICAgLyohPCBDaGFubmVsIDIgVHJhbnNmZXIgRXJyb3IgY2xlYXIgKi8NCiNkZWZpbmUgRE1BX0lGQ1JfQ0dJRjNfUG9zICAgICAgICAgICAgICAgICAgKDhVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRE1BX0lGQ1JfQ0dJRjNfTXNrICAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IERNQV9JRkNSX0NHSUYzX1BvcykgICAgICAgLyohPCAweDAwMDAwMTAwICovDQojZGVmaW5lIERNQV9JRkNSX0NHSUYzICAgICAgICAgICAgICAgICAgICAgIERNQV9JRkNSX0NHSUYzX01zayAgICAgICAgICAgICAgICAgLyohPCBDaGFubmVsIDMgR2xvYmFsIGludGVycnVwdCBjbGVhciAqLw0KI2RlZmluZSBETUFfSUZDUl9DVENJRjNfUG9zICAgICAgICAgICAgICAgICAoOVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBETUFfSUZDUl9DVENJRjNfTXNrICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgRE1BX0lGQ1JfQ1RDSUYzX1BvcykgICAgICAvKiE8IDB4MDAwMDAyMDAgKi8NCiNkZWZpbmUgRE1BX0lGQ1JfQ1RDSUYzICAgICAgICAgICAgICAgICAgICAgRE1BX0lGQ1JfQ1RDSUYzX01zayAgICAgICAgICAgICAgICAvKiE8IENoYW5uZWwgMyBUcmFuc2ZlciBDb21wbGV0ZSBjbGVhciAqLw0KI2RlZmluZSBETUFfSUZDUl9DSFRJRjNfUG9zICAgICAgICAgICAgICAgICAoMTBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBETUFfSUZDUl9DSFRJRjNfTXNrICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgRE1BX0lGQ1JfQ0hUSUYzX1BvcykgICAgICAvKiE8IDB4MDAwMDA0MDAgKi8NCiNkZWZpbmUgRE1BX0lGQ1JfQ0hUSUYzICAgICAgICAgICAgICAgICAgICAgRE1BX0lGQ1JfQ0hUSUYzX01zayAgICAgICAgICAgICAgICAvKiE8IENoYW5uZWwgMyBIYWxmIFRyYW5zZmVyIGNsZWFyICovDQojZGVmaW5lIERNQV9JRkNSX0NURUlGM19Qb3MgICAgICAgICAgICAgICAgICgxMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIERNQV9JRkNSX0NURUlGM19Nc2sgICAgICAgICAgICAgICAgICgweDFVTCA8PCBETUFfSUZDUl9DVEVJRjNfUG9zKSAgICAgIC8qITwgMHgwMDAwMDgwMCAqLw0KI2RlZmluZSBETUFfSUZDUl9DVEVJRjMgICAgICAgICAgICAgICAgICAgICBETUFfSUZDUl9DVEVJRjNfTXNrICAgICAgICAgICAgICAgIC8qITwgQ2hhbm5lbCAzIFRyYW5zZmVyIEVycm9yIGNsZWFyICovDQojZGVmaW5lIERNQV9JRkNSX0NHSUY0X1BvcyAgICAgICAgICAgICAgICAgICgxMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIERNQV9JRkNSX0NHSUY0X01zayAgICAgICAgICAgICAgICAgICgweDFVTCA8PCBETUFfSUZDUl9DR0lGNF9Qb3MpICAgICAgIC8qITwgMHgwMDAwMTAwMCAqLw0KI2RlZmluZSBETUFfSUZDUl9DR0lGNCAgICAgICAgICAgICAgICAgICAgICBETUFfSUZDUl9DR0lGNF9Nc2sgICAgICAgICAgICAgICAgIC8qITwgQ2hhbm5lbCA0IEdsb2JhbCBpbnRlcnJ1cHQgY2xlYXIgKi8NCiNkZWZpbmUgRE1BX0lGQ1JfQ1RDSUY0X1BvcyAgICAgICAgICAgICAgICAgKDEzVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRE1BX0lGQ1JfQ1RDSUY0X01zayAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IERNQV9JRkNSX0NUQ0lGNF9Qb3MpICAgICAgLyohPCAweDAwMDAyMDAwICovDQojZGVmaW5lIERNQV9JRkNSX0NUQ0lGNCAgICAgICAgICAgICAgICAgICAgIERNQV9JRkNSX0NUQ0lGNF9Nc2sgICAgICAgICAgICAgICAgLyohPCBDaGFubmVsIDQgVHJhbnNmZXIgQ29tcGxldGUgY2xlYXIgKi8NCiNkZWZpbmUgRE1BX0lGQ1JfQ0hUSUY0X1BvcyAgICAgICAgICAgICAgICAgKDE0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRE1BX0lGQ1JfQ0hUSUY0X01zayAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IERNQV9JRkNSX0NIVElGNF9Qb3MpICAgICAgLyohPCAweDAwMDA0MDAwICovDQojZGVmaW5lIERNQV9JRkNSX0NIVElGNCAgICAgICAgICAgICAgICAgICAgIERNQV9JRkNSX0NIVElGNF9Nc2sgICAgICAgICAgICAgICAgLyohPCBDaGFubmVsIDQgSGFsZiBUcmFuc2ZlciBjbGVhciAqLw0KI2RlZmluZSBETUFfSUZDUl9DVEVJRjRfUG9zICAgICAgICAgICAgICAgICAoMTVVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBETUFfSUZDUl9DVEVJRjRfTXNrICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgRE1BX0lGQ1JfQ1RFSUY0X1BvcykgICAgICAvKiE8IDB4MDAwMDgwMDAgKi8NCiNkZWZpbmUgRE1BX0lGQ1JfQ1RFSUY0ICAgICAgICAgICAgICAgICAgICAgRE1BX0lGQ1JfQ1RFSUY0X01zayAgICAgICAgICAgICAgICAvKiE8IENoYW5uZWwgNCBUcmFuc2ZlciBFcnJvciBjbGVhciAqLw0KI2RlZmluZSBETUFfSUZDUl9DR0lGNV9Qb3MgICAgICAgICAgICAgICAgICAoMTZVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBETUFfSUZDUl9DR0lGNV9Nc2sgICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgRE1BX0lGQ1JfQ0dJRjVfUG9zKSAgICAgICAvKiE8IDB4MDAwMTAwMDAgKi8NCiNkZWZpbmUgRE1BX0lGQ1JfQ0dJRjUgICAgICAgICAgICAgICAgICAgICAgRE1BX0lGQ1JfQ0dJRjVfTXNrICAgICAgICAgICAgICAgICAvKiE8IENoYW5uZWwgNSBHbG9iYWwgaW50ZXJydXB0IGNsZWFyICovDQojZGVmaW5lIERNQV9JRkNSX0NUQ0lGNV9Qb3MgICAgICAgICAgICAgICAgICgxN1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIERNQV9JRkNSX0NUQ0lGNV9Nc2sgICAgICAgICAgICAgICAgICgweDFVTCA8PCBETUFfSUZDUl9DVENJRjVfUG9zKSAgICAgIC8qITwgMHgwMDAyMDAwMCAqLw0KI2RlZmluZSBETUFfSUZDUl9DVENJRjUgICAgICAgICAgICAgICAgICAgICBETUFfSUZDUl9DVENJRjVfTXNrICAgICAgICAgICAgICAgIC8qITwgQ2hhbm5lbCA1IFRyYW5zZmVyIENvbXBsZXRlIGNsZWFyICovDQojZGVmaW5lIERNQV9JRkNSX0NIVElGNV9Qb3MgICAgICAgICAgICAgICAgICgxOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIERNQV9JRkNSX0NIVElGNV9Nc2sgICAgICAgICAgICAgICAgICgweDFVTCA8PCBETUFfSUZDUl9DSFRJRjVfUG9zKSAgICAgIC8qITwgMHgwMDA0MDAwMCAqLw0KI2RlZmluZSBETUFfSUZDUl9DSFRJRjUgICAgICAgICAgICAgICAgICAgICBETUFfSUZDUl9DSFRJRjVfTXNrICAgICAgICAgICAgICAgIC8qITwgQ2hhbm5lbCA1IEhhbGYgVHJhbnNmZXIgY2xlYXIgKi8NCiNkZWZpbmUgRE1BX0lGQ1JfQ1RFSUY1X1BvcyAgICAgICAgICAgICAgICAgKDE5VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRE1BX0lGQ1JfQ1RFSUY1X01zayAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IERNQV9JRkNSX0NURUlGNV9Qb3MpICAgICAgLyohPCAweDAwMDgwMDAwICovDQojZGVmaW5lIERNQV9JRkNSX0NURUlGNSAgICAgICAgICAgICAgICAgICAgIERNQV9JRkNSX0NURUlGNV9Nc2sgICAgICAgICAgICAgICAgLyohPCBDaGFubmVsIDUgVHJhbnNmZXIgRXJyb3IgY2xlYXIgKi8NCiNkZWZpbmUgRE1BX0lGQ1JfQ0dJRjZfUG9zICAgICAgICAgICAgICAgICAgKDIwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRE1BX0lGQ1JfQ0dJRjZfTXNrICAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IERNQV9JRkNSX0NHSUY2X1BvcykgICAgICAgLyohPCAweDAwMTAwMDAwICovDQojZGVmaW5lIERNQV9JRkNSX0NHSUY2ICAgICAgICAgICAgICAgICAgICAgIERNQV9JRkNSX0NHSUY2X01zayAgICAgICAgICAgICAgICAgLyohPCBDaGFubmVsIDYgR2xvYmFsIGludGVycnVwdCBjbGVhciAqLw0KI2RlZmluZSBETUFfSUZDUl9DVENJRjZfUG9zICAgICAgICAgICAgICAgICAoMjFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBETUFfSUZDUl9DVENJRjZfTXNrICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgRE1BX0lGQ1JfQ1RDSUY2X1BvcykgICAgICAvKiE8IDB4MDAyMDAwMDAgKi8NCiNkZWZpbmUgRE1BX0lGQ1JfQ1RDSUY2ICAgICAgICAgICAgICAgICAgICAgRE1BX0lGQ1JfQ1RDSUY2X01zayAgICAgICAgICAgICAgICAvKiE8IENoYW5uZWwgNiBUcmFuc2ZlciBDb21wbGV0ZSBjbGVhciAqLw0KI2RlZmluZSBETUFfSUZDUl9DSFRJRjZfUG9zICAgICAgICAgICAgICAgICAoMjJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBETUFfSUZDUl9DSFRJRjZfTXNrICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgRE1BX0lGQ1JfQ0hUSUY2X1BvcykgICAgICAvKiE8IDB4MDA0MDAwMDAgKi8NCiNkZWZpbmUgRE1BX0lGQ1JfQ0hUSUY2ICAgICAgICAgICAgICAgICAgICAgRE1BX0lGQ1JfQ0hUSUY2X01zayAgICAgICAgICAgICAgICAvKiE8IENoYW5uZWwgNiBIYWxmIFRyYW5zZmVyIGNsZWFyICovDQojZGVmaW5lIERNQV9JRkNSX0NURUlGNl9Qb3MgICAgICAgICAgICAgICAgICgyM1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIERNQV9JRkNSX0NURUlGNl9Nc2sgICAgICAgICAgICAgICAgICgweDFVTCA8PCBETUFfSUZDUl9DVEVJRjZfUG9zKSAgICAgIC8qITwgMHgwMDgwMDAwMCAqLw0KI2RlZmluZSBETUFfSUZDUl9DVEVJRjYgICAgICAgICAgICAgICAgICAgICBETUFfSUZDUl9DVEVJRjZfTXNrICAgICAgICAgICAgICAgIC8qITwgQ2hhbm5lbCA2IFRyYW5zZmVyIEVycm9yIGNsZWFyICovDQojZGVmaW5lIERNQV9JRkNSX0NHSUY3X1BvcyAgICAgICAgICAgICAgICAgICgyNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIERNQV9JRkNSX0NHSUY3X01zayAgICAgICAgICAgICAgICAgICgweDFVTCA8PCBETUFfSUZDUl9DR0lGN19Qb3MpICAgICAgIC8qITwgMHgwMTAwMDAwMCAqLw0KI2RlZmluZSBETUFfSUZDUl9DR0lGNyAgICAgICAgICAgICAgICAgICAgICBETUFfSUZDUl9DR0lGN19Nc2sgICAgICAgICAgICAgICAgIC8qITwgQ2hhbm5lbCA3IEdsb2JhbCBpbnRlcnJ1cHQgY2xlYXIgKi8NCiNkZWZpbmUgRE1BX0lGQ1JfQ1RDSUY3X1BvcyAgICAgICAgICAgICAgICAgKDI1VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRE1BX0lGQ1JfQ1RDSUY3X01zayAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IERNQV9JRkNSX0NUQ0lGN19Qb3MpICAgICAgLyohPCAweDAyMDAwMDAwICovDQojZGVmaW5lIERNQV9JRkNSX0NUQ0lGNyAgICAgICAgICAgICAgICAgICAgIERNQV9JRkNSX0NUQ0lGN19Nc2sgICAgICAgICAgICAgICAgLyohPCBDaGFubmVsIDcgVHJhbnNmZXIgQ29tcGxldGUgY2xlYXIgKi8NCiNkZWZpbmUgRE1BX0lGQ1JfQ0hUSUY3X1BvcyAgICAgICAgICAgICAgICAgKDI2VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRE1BX0lGQ1JfQ0hUSUY3X01zayAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IERNQV9JRkNSX0NIVElGN19Qb3MpICAgICAgLyohPCAweDA0MDAwMDAwICovDQojZGVmaW5lIERNQV9JRkNSX0NIVElGNyAgICAgICAgICAgICAgICAgICAgIERNQV9JRkNSX0NIVElGN19Nc2sgICAgICAgICAgICAgICAgLyohPCBDaGFubmVsIDcgSGFsZiBUcmFuc2ZlciBjbGVhciAqLw0KI2RlZmluZSBETUFfSUZDUl9DVEVJRjdfUG9zICAgICAgICAgICAgICAgICAoMjdVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBETUFfSUZDUl9DVEVJRjdfTXNrICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgRE1BX0lGQ1JfQ1RFSUY3X1BvcykgICAgICAvKiE8IDB4MDgwMDAwMDAgKi8NCiNkZWZpbmUgRE1BX0lGQ1JfQ1RFSUY3ICAgICAgICAgICAgICAgICAgICAgRE1BX0lGQ1JfQ1RFSUY3X01zayAgICAgICAgICAgICAgICAvKiE8IENoYW5uZWwgNyBUcmFuc2ZlciBFcnJvciBjbGVhciAqLw0KDQovKioqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIERNQV9DQ1IgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIERNQV9DQ1JfRU5fUG9zICAgICAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIERNQV9DQ1JfRU5fTXNrICAgICAgICAgICAgICAgICAgICAgICgweDFVTCA8PCBETUFfQ0NSX0VOX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDAwMSAqLw0KI2RlZmluZSBETUFfQ0NSX0VOICAgICAgICAgICAgICAgICAgICAgICAgICBETUFfQ0NSX0VOX01zayAgICAgICAgICAgICAgICAgICAgIC8qITwgQ2hhbm5lbCBlbmFibGUqLw0KI2RlZmluZSBETUFfQ0NSX1RDSUVfUG9zICAgICAgICAgICAgICAgICAgICAoMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBETUFfQ0NSX1RDSUVfTXNrICAgICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgRE1BX0NDUl9UQ0lFX1BvcykgICAgICAgICAvKiE8IDB4MDAwMDAwMDIgKi8NCiNkZWZpbmUgRE1BX0NDUl9UQ0lFICAgICAgICAgICAgICAgICAgICAgICAgRE1BX0NDUl9UQ0lFX01zayAgICAgICAgICAgICAgICAgICAvKiE8IFRyYW5zZmVyIGNvbXBsZXRlIGludGVycnVwdCBlbmFibGUgKi8NCiNkZWZpbmUgRE1BX0NDUl9IVElFX1BvcyAgICAgICAgICAgICAgICAgICAgKDJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRE1BX0NDUl9IVElFX01zayAgICAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IERNQV9DQ1JfSFRJRV9Qb3MpICAgICAgICAgLyohPCAweDAwMDAwMDA0ICovDQojZGVmaW5lIERNQV9DQ1JfSFRJRSAgICAgICAgICAgICAgICAgICAgICAgIERNQV9DQ1JfSFRJRV9Nc2sgICAgICAgICAgICAgICAgICAgLyohPCBIYWxmIFRyYW5zZmVyIGludGVycnVwdCBlbmFibGUgKi8NCiNkZWZpbmUgRE1BX0NDUl9URUlFX1BvcyAgICAgICAgICAgICAgICAgICAgKDNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRE1BX0NDUl9URUlFX01zayAgICAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IERNQV9DQ1JfVEVJRV9Qb3MpICAgICAgICAgLyohPCAweDAwMDAwMDA4ICovDQojZGVmaW5lIERNQV9DQ1JfVEVJRSAgICAgICAgICAgICAgICAgICAgICAgIERNQV9DQ1JfVEVJRV9Nc2sgICAgICAgICAgICAgICAgICAgLyohPCBUcmFuc2ZlciBlcnJvciBpbnRlcnJ1cHQgZW5hYmxlICovDQojZGVmaW5lIERNQV9DQ1JfRElSX1BvcyAgICAgICAgICAgICAgICAgICAgICg0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIERNQV9DQ1JfRElSX01zayAgICAgICAgICAgICAgICAgICAgICgweDFVTCA8PCBETUFfQ0NSX0RJUl9Qb3MpICAgICAgICAgIC8qITwgMHgwMDAwMDAxMCAqLw0KI2RlZmluZSBETUFfQ0NSX0RJUiAgICAgICAgICAgICAgICAgICAgICAgICBETUFfQ0NSX0RJUl9Nc2sgICAgICAgICAgICAgICAgICAgIC8qITwgRGF0YSB0cmFuc2ZlciBkaXJlY3Rpb24gKi8NCiNkZWZpbmUgRE1BX0NDUl9DSVJDX1BvcyAgICAgICAgICAgICAgICAgICAgKDVVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRE1BX0NDUl9DSVJDX01zayAgICAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IERNQV9DQ1JfQ0lSQ19Qb3MpICAgICAgICAgLyohPCAweDAwMDAwMDIwICovDQojZGVmaW5lIERNQV9DQ1JfQ0lSQyAgICAgICAgICAgICAgICAgICAgICAgIERNQV9DQ1JfQ0lSQ19Nc2sgICAgICAgICAgICAgICAgICAgLyohPCBDaXJjdWxhciBtb2RlICovDQojZGVmaW5lIERNQV9DQ1JfUElOQ19Qb3MgICAgICAgICAgICAgICAgICAgICg2VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIERNQV9DQ1JfUElOQ19Nc2sgICAgICAgICAgICAgICAgICAgICgweDFVTCA8PCBETUFfQ0NSX1BJTkNfUG9zKSAgICAgICAgIC8qITwgMHgwMDAwMDA0MCAqLw0KI2RlZmluZSBETUFfQ0NSX1BJTkMgICAgICAgICAgICAgICAgICAgICAgICBETUFfQ0NSX1BJTkNfTXNrICAgICAgICAgICAgICAgICAgIC8qITwgUGVyaXBoZXJhbCBpbmNyZW1lbnQgbW9kZSAqLw0KI2RlZmluZSBETUFfQ0NSX01JTkNfUG9zICAgICAgICAgICAgICAgICAgICAoN1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBETUFfQ0NSX01JTkNfTXNrICAgICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgRE1BX0NDUl9NSU5DX1BvcykgICAgICAgICAvKiE8IDB4MDAwMDAwODAgKi8NCiNkZWZpbmUgRE1BX0NDUl9NSU5DICAgICAgICAgICAgICAgICAgICAgICAgRE1BX0NDUl9NSU5DX01zayAgICAgICAgICAgICAgICAgICAvKiE8IE1lbW9yeSBpbmNyZW1lbnQgbW9kZSAqLw0KDQojZGVmaW5lIERNQV9DQ1JfUFNJWkVfUG9zICAgICAgICAgICAgICAgICAgICg4VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIERNQV9DQ1JfUFNJWkVfTXNrICAgICAgICAgICAgICAgICAgICgweDNVTCA8PCBETUFfQ0NSX1BTSVpFX1BvcykgICAgICAgIC8qITwgMHgwMDAwMDMwMCAqLw0KI2RlZmluZSBETUFfQ0NSX1BTSVpFICAgICAgICAgICAgICAgICAgICAgICBETUFfQ0NSX1BTSVpFX01zayAgICAgICAgICAgICAgICAgIC8qITwgUFNJWkVbMTowXSBiaXRzIChQZXJpcGhlcmFsIHNpemUpICovDQojZGVmaW5lIERNQV9DQ1JfUFNJWkVfMCAgICAgICAgICAgICAgICAgICAgICgweDFVTCA8PCBETUFfQ0NSX1BTSVpFX1BvcykgICAgICAgIC8qITwgMHgwMDAwMDEwMCAqLw0KI2RlZmluZSBETUFfQ0NSX1BTSVpFXzEgICAgICAgICAgICAgICAgICAgICAoMHgyVUwgPDwgRE1BX0NDUl9QU0laRV9Qb3MpICAgICAgICAvKiE8IDB4MDAwMDAyMDAgKi8NCg0KI2RlZmluZSBETUFfQ0NSX01TSVpFX1BvcyAgICAgICAgICAgICAgICAgICAoMTBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBETUFfQ0NSX01TSVpFX01zayAgICAgICAgICAgICAgICAgICAoMHgzVUwgPDwgRE1BX0NDUl9NU0laRV9Qb3MpICAgICAgICAvKiE8IDB4MDAwMDBDMDAgKi8NCiNkZWZpbmUgRE1BX0NDUl9NU0laRSAgICAgICAgICAgICAgICAgICAgICAgRE1BX0NDUl9NU0laRV9Nc2sgICAgICAgICAgICAgICAgICAvKiE8IE1TSVpFWzE6MF0gYml0cyAoTWVtb3J5IHNpemUpICovDQojZGVmaW5lIERNQV9DQ1JfTVNJWkVfMCAgICAgICAgICAgICAgICAgICAgICgweDFVTCA8PCBETUFfQ0NSX01TSVpFX1BvcykgICAgICAgIC8qITwgMHgwMDAwMDQwMCAqLw0KI2RlZmluZSBETUFfQ0NSX01TSVpFXzEgICAgICAgICAgICAgICAgICAgICAoMHgyVUwgPDwgRE1BX0NDUl9NU0laRV9Qb3MpICAgICAgICAvKiE8IDB4MDAwMDA4MDAgKi8NCg0KI2RlZmluZSBETUFfQ0NSX1BMX1BvcyAgICAgICAgICAgICAgICAgICAgICAoMTJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBETUFfQ0NSX1BMX01zayAgICAgICAgICAgICAgICAgICAgICAoMHgzVUwgPDwgRE1BX0NDUl9QTF9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDMwMDAgKi8NCiNkZWZpbmUgRE1BX0NDUl9QTCAgICAgICAgICAgICAgICAgICAgICAgICAgRE1BX0NDUl9QTF9Nc2sgICAgICAgICAgICAgICAgICAgICAvKiE8IFBMWzE6MF0gYml0cyhDaGFubmVsIFByaW9yaXR5IGxldmVsKSAqLw0KI2RlZmluZSBETUFfQ0NSX1BMXzAgICAgICAgICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgRE1BX0NDUl9QTF9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDEwMDAgKi8NCiNkZWZpbmUgRE1BX0NDUl9QTF8xICAgICAgICAgICAgICAgICAgICAgICAgKDB4MlVMIDw8IERNQV9DQ1JfUExfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAyMDAwICovDQoNCiNkZWZpbmUgRE1BX0NDUl9NRU0yTUVNX1BvcyAgICAgICAgICAgICAgICAgKDE0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRE1BX0NDUl9NRU0yTUVNX01zayAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IERNQV9DQ1JfTUVNMk1FTV9Qb3MpICAgICAgLyohPCAweDAwMDA0MDAwICovDQojZGVmaW5lIERNQV9DQ1JfTUVNMk1FTSAgICAgICAgICAgICAgICAgICAgIERNQV9DQ1JfTUVNMk1FTV9Nc2sgICAgICAgICAgICAgICAgLyohPCBNZW1vcnkgdG8gbWVtb3J5IG1vZGUgKi8NCg0KLyoqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZ2VuZXJpYyBmb3IgRE1BX0NORFRSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBETUFfQ05EVFJfTkRUX1BvcyAgICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBETUFfQ05EVFJfTkRUX01zayAgICAgICAgICAgICAgICAgICAoMHhGRkZGVUwgPDwgRE1BX0NORFRSX05EVF9Qb3MpICAgICAvKiE8IDB4MDAwMEZGRkYgKi8NCiNkZWZpbmUgRE1BX0NORFRSX05EVCAgICAgICAgICAgICAgICAgICAgICAgRE1BX0NORFRSX05EVF9Nc2sgICAgICAgICAgICAgICAgICAvKiE8IE51bWJlciBvZiBkYXRhIHRvIFRyYW5zZmVyICovDQoNCi8qKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBETUFfQ05EVFIxIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIERNQV9DTkRUUjFfTkRUX1BvcyAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIERNQV9DTkRUUjFfTkRUX01zayAgICAgICAgICAgICAgICAgICgweEZGRkZVTCA8PCBETUFfQ05EVFIxX05EVF9Qb3MpICAgIC8qITwgMHgwMDAwRkZGRiAqLw0KI2RlZmluZSBETUFfQ05EVFIxX05EVCAgICAgICAgICAgICAgICAgICAgICBETUFfQ05EVFIxX05EVF9Nc2sgICAgICAgICAgICAgICAgIC8qITwgTnVtYmVyIG9mIGRhdGEgdG8gVHJhbnNmZXIgKi8NCg0KLyoqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIERNQV9DTkRUUjIgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgRE1BX0NORFRSMl9ORFRfUG9zICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRE1BX0NORFRSMl9ORFRfTXNrICAgICAgICAgICAgICAgICAgKDB4RkZGRlVMIDw8IERNQV9DTkRUUjJfTkRUX1BvcykgICAgLyohPCAweDAwMDBGRkZGICovDQojZGVmaW5lIERNQV9DTkRUUjJfTkRUICAgICAgICAgICAgICAgICAgICAgIERNQV9DTkRUUjJfTkRUX01zayAgICAgICAgICAgICAgICAgLyohPCBOdW1iZXIgb2YgZGF0YSB0byBUcmFuc2ZlciAqLw0KDQovKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgRE1BX0NORFRSMyByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBETUFfQ05EVFIzX05EVF9Qb3MgICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBETUFfQ05EVFIzX05EVF9Nc2sgICAgICAgICAgICAgICAgICAoMHhGRkZGVUwgPDwgRE1BX0NORFRSM19ORFRfUG9zKSAgICAvKiE8IDB4MDAwMEZGRkYgKi8NCiNkZWZpbmUgRE1BX0NORFRSM19ORFQgICAgICAgICAgICAgICAgICAgICAgRE1BX0NORFRSM19ORFRfTXNrICAgICAgICAgICAgICAgICAvKiE8IE51bWJlciBvZiBkYXRhIHRvIFRyYW5zZmVyICovDQoNCi8qKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBETUFfQ05EVFI0IHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIERNQV9DTkRUUjRfTkRUX1BvcyAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIERNQV9DTkRUUjRfTkRUX01zayAgICAgICAgICAgICAgICAgICgweEZGRkZVTCA8PCBETUFfQ05EVFI0X05EVF9Qb3MpICAgIC8qITwgMHgwMDAwRkZGRiAqLw0KI2RlZmluZSBETUFfQ05EVFI0X05EVCAgICAgICAgICAgICAgICAgICAgICBETUFfQ05EVFI0X05EVF9Nc2sgICAgICAgICAgICAgICAgIC8qITwgTnVtYmVyIG9mIGRhdGEgdG8gVHJhbnNmZXIgKi8NCg0KLyoqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIERNQV9DTkRUUjUgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgRE1BX0NORFRSNV9ORFRfUG9zICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRE1BX0NORFRSNV9ORFRfTXNrICAgICAgICAgICAgICAgICAgKDB4RkZGRlVMIDw8IERNQV9DTkRUUjVfTkRUX1BvcykgICAgLyohPCAweDAwMDBGRkZGICovDQojZGVmaW5lIERNQV9DTkRUUjVfTkRUICAgICAgICAgICAgICAgICAgICAgIERNQV9DTkRUUjVfTkRUX01zayAgICAgICAgICAgICAgICAgLyohPCBOdW1iZXIgb2YgZGF0YSB0byBUcmFuc2ZlciAqLw0KDQovKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgRE1BX0NORFRSNiByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBETUFfQ05EVFI2X05EVF9Qb3MgICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBETUFfQ05EVFI2X05EVF9Nc2sgICAgICAgICAgICAgICAgICAoMHhGRkZGVUwgPDwgRE1BX0NORFRSNl9ORFRfUG9zKSAgICAvKiE8IDB4MDAwMEZGRkYgKi8NCiNkZWZpbmUgRE1BX0NORFRSNl9ORFQgICAgICAgICAgICAgICAgICAgICAgRE1BX0NORFRSNl9ORFRfTXNrICAgICAgICAgICAgICAgICAvKiE8IE51bWJlciBvZiBkYXRhIHRvIFRyYW5zZmVyICovDQoNCi8qKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBETUFfQ05EVFI3IHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIERNQV9DTkRUUjdfTkRUX1BvcyAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIERNQV9DTkRUUjdfTkRUX01zayAgICAgICAgICAgICAgICAgICgweEZGRkZVTCA8PCBETUFfQ05EVFI3X05EVF9Qb3MpICAgIC8qITwgMHgwMDAwRkZGRiAqLw0KI2RlZmluZSBETUFfQ05EVFI3X05EVCAgICAgICAgICAgICAgICAgICAgICBETUFfQ05EVFI3X05EVF9Nc2sgICAgICAgICAgICAgICAgIC8qITwgTnVtYmVyIG9mIGRhdGEgdG8gVHJhbnNmZXIgKi8NCg0KLyoqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZ2VuZXJpYyBmb3IgRE1BX0NQQVIgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBETUFfQ1BBUl9QQV9Qb3MgICAgICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBETUFfQ1BBUl9QQV9Nc2sgICAgICAgICAgICAgICAgICAgICAoMHhGRkZGRkZGRlVMIDw8IERNQV9DUEFSX1BBX1BvcykgICAvKiE8IDB4RkZGRkZGRkYgKi8NCiNkZWZpbmUgRE1BX0NQQVJfUEEgICAgICAgICAgICAgICAgICAgICAgICAgRE1BX0NQQVJfUEFfTXNrICAgICAgICAgICAgICAgICAgICAvKiE8IFBlcmlwaGVyYWwgQWRkcmVzcyAqLw0KDQovKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgRE1BX0NQQVIxIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBETUFfQ1BBUjFfUEFfUG9zICAgICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBETUFfQ1BBUjFfUEFfTXNrICAgICAgICAgICAgICAgICAgICAoMHhGRkZGRkZGRlVMIDw8IERNQV9DUEFSMV9QQV9Qb3MpICAvKiE8IDB4RkZGRkZGRkYgKi8NCiNkZWZpbmUgRE1BX0NQQVIxX1BBICAgICAgICAgICAgICAgICAgICAgICAgRE1BX0NQQVIxX1BBX01zayAgICAgICAgICAgICAgICAgICAvKiE8IFBlcmlwaGVyYWwgQWRkcmVzcyAqLw0KDQovKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgRE1BX0NQQVIyIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBETUFfQ1BBUjJfUEFfUG9zICAgICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBETUFfQ1BBUjJfUEFfTXNrICAgICAgICAgICAgICAgICAgICAoMHhGRkZGRkZGRlVMIDw8IERNQV9DUEFSMl9QQV9Qb3MpICAvKiE8IDB4RkZGRkZGRkYgKi8NCiNkZWZpbmUgRE1BX0NQQVIyX1BBICAgICAgICAgICAgICAgICAgICAgICAgRE1BX0NQQVIyX1BBX01zayAgICAgICAgICAgICAgICAgICAvKiE8IFBlcmlwaGVyYWwgQWRkcmVzcyAqLw0KDQovKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgRE1BX0NQQVIzIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBETUFfQ1BBUjNfUEFfUG9zICAgICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBETUFfQ1BBUjNfUEFfTXNrICAgICAgICAgICAgICAgICAgICAoMHhGRkZGRkZGRlVMIDw8IERNQV9DUEFSM19QQV9Qb3MpICAvKiE8IDB4RkZGRkZGRkYgKi8NCiNkZWZpbmUgRE1BX0NQQVIzX1BBICAgICAgICAgICAgICAgICAgICAgICAgRE1BX0NQQVIzX1BBX01zayAgICAgICAgICAgICAgICAgICAvKiE8IFBlcmlwaGVyYWwgQWRkcmVzcyAqLw0KDQoNCi8qKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBETUFfQ1BBUjQgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIERNQV9DUEFSNF9QQV9Qb3MgICAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIERNQV9DUEFSNF9QQV9Nc2sgICAgICAgICAgICAgICAgICAgICgweEZGRkZGRkZGVUwgPDwgRE1BX0NQQVI0X1BBX1BvcykgIC8qITwgMHhGRkZGRkZGRiAqLw0KI2RlZmluZSBETUFfQ1BBUjRfUEEgICAgICAgICAgICAgICAgICAgICAgICBETUFfQ1BBUjRfUEFfTXNrICAgICAgICAgICAgICAgICAgIC8qITwgUGVyaXBoZXJhbCBBZGRyZXNzICovDQoNCi8qKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBETUFfQ1BBUjUgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIERNQV9DUEFSNV9QQV9Qb3MgICAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIERNQV9DUEFSNV9QQV9Nc2sgICAgICAgICAgICAgICAgICAgICgweEZGRkZGRkZGVUwgPDwgRE1BX0NQQVI1X1BBX1BvcykgIC8qITwgMHhGRkZGRkZGRiAqLw0KI2RlZmluZSBETUFfQ1BBUjVfUEEgICAgICAgICAgICAgICAgICAgICAgICBETUFfQ1BBUjVfUEFfTXNrICAgICAgICAgICAgICAgICAgIC8qITwgUGVyaXBoZXJhbCBBZGRyZXNzICovDQoNCi8qKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBETUFfQ1BBUjYgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIERNQV9DUEFSNl9QQV9Qb3MgICAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIERNQV9DUEFSNl9QQV9Nc2sgICAgICAgICAgICAgICAgICAgICgweEZGRkZGRkZGVUwgPDwgRE1BX0NQQVI2X1BBX1BvcykgIC8qITwgMHhGRkZGRkZGRiAqLw0KI2RlZmluZSBETUFfQ1BBUjZfUEEgICAgICAgICAgICAgICAgICAgICAgICBETUFfQ1BBUjZfUEFfTXNrICAgICAgICAgICAgICAgICAgIC8qITwgUGVyaXBoZXJhbCBBZGRyZXNzICovDQoNCg0KLyoqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIERNQV9DUEFSNyByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgRE1BX0NQQVI3X1BBX1BvcyAgICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRE1BX0NQQVI3X1BBX01zayAgICAgICAgICAgICAgICAgICAgKDB4RkZGRkZGRkZVTCA8PCBETUFfQ1BBUjdfUEFfUG9zKSAgLyohPCAweEZGRkZGRkZGICovDQojZGVmaW5lIERNQV9DUEFSN19QQSAgICAgICAgICAgICAgICAgICAgICAgIERNQV9DUEFSN19QQV9Nc2sgICAgICAgICAgICAgICAgICAgLyohPCBQZXJpcGhlcmFsIEFkZHJlc3MgKi8NCg0KLyoqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZ2VuZXJpYyBmb3IgRE1BX0NNQVIgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBETUFfQ01BUl9NQV9Qb3MgICAgICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBETUFfQ01BUl9NQV9Nc2sgICAgICAgICAgICAgICAgICAgICAoMHhGRkZGRkZGRlVMIDw8IERNQV9DTUFSX01BX1BvcykgICAvKiE8IDB4RkZGRkZGRkYgKi8NCiNkZWZpbmUgRE1BX0NNQVJfTUEgICAgICAgICAgICAgICAgICAgICAgICAgRE1BX0NNQVJfTUFfTXNrICAgICAgICAgICAgICAgICAgICAvKiE8IE1lbW9yeSBBZGRyZXNzICovDQoNCi8qKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBETUFfQ01BUjEgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIERNQV9DTUFSMV9NQV9Qb3MgICAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIERNQV9DTUFSMV9NQV9Nc2sgICAgICAgICAgICAgICAgICAgICgweEZGRkZGRkZGVUwgPDwgRE1BX0NNQVIxX01BX1BvcykgIC8qITwgMHhGRkZGRkZGRiAqLw0KI2RlZmluZSBETUFfQ01BUjFfTUEgICAgICAgICAgICAgICAgICAgICAgICBETUFfQ01BUjFfTUFfTXNrICAgICAgICAgICAgICAgICAgIC8qITwgTWVtb3J5IEFkZHJlc3MgKi8NCg0KLyoqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIERNQV9DTUFSMiByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgRE1BX0NNQVIyX01BX1BvcyAgICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRE1BX0NNQVIyX01BX01zayAgICAgICAgICAgICAgICAgICAgKDB4RkZGRkZGRkZVTCA8PCBETUFfQ01BUjJfTUFfUG9zKSAgLyohPCAweEZGRkZGRkZGICovDQojZGVmaW5lIERNQV9DTUFSMl9NQSAgICAgICAgICAgICAgICAgICAgICAgIERNQV9DTUFSMl9NQV9Nc2sgICAgICAgICAgICAgICAgICAgLyohPCBNZW1vcnkgQWRkcmVzcyAqLw0KDQovKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgRE1BX0NNQVIzIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBETUFfQ01BUjNfTUFfUG9zICAgICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBETUFfQ01BUjNfTUFfTXNrICAgICAgICAgICAgICAgICAgICAoMHhGRkZGRkZGRlVMIDw8IERNQV9DTUFSM19NQV9Qb3MpICAvKiE8IDB4RkZGRkZGRkYgKi8NCiNkZWZpbmUgRE1BX0NNQVIzX01BICAgICAgICAgICAgICAgICAgICAgICAgRE1BX0NNQVIzX01BX01zayAgICAgICAgICAgICAgICAgICAvKiE8IE1lbW9yeSBBZGRyZXNzICovDQoNCg0KLyoqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIERNQV9DTUFSNCByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgRE1BX0NNQVI0X01BX1BvcyAgICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRE1BX0NNQVI0X01BX01zayAgICAgICAgICAgICAgICAgICAgKDB4RkZGRkZGRkZVTCA8PCBETUFfQ01BUjRfTUFfUG9zKSAgLyohPCAweEZGRkZGRkZGICovDQojZGVmaW5lIERNQV9DTUFSNF9NQSAgICAgICAgICAgICAgICAgICAgICAgIERNQV9DTUFSNF9NQV9Nc2sgICAgICAgICAgICAgICAgICAgLyohPCBNZW1vcnkgQWRkcmVzcyAqLw0KDQovKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgRE1BX0NNQVI1IHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBETUFfQ01BUjVfTUFfUG9zICAgICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBETUFfQ01BUjVfTUFfTXNrICAgICAgICAgICAgICAgICAgICAoMHhGRkZGRkZGRlVMIDw8IERNQV9DTUFSNV9NQV9Qb3MpICAvKiE8IDB4RkZGRkZGRkYgKi8NCiNkZWZpbmUgRE1BX0NNQVI1X01BICAgICAgICAgICAgICAgICAgICAgICAgRE1BX0NNQVI1X01BX01zayAgICAgICAgICAgICAgICAgICAvKiE8IE1lbW9yeSBBZGRyZXNzICovDQoNCi8qKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBETUFfQ01BUjYgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIERNQV9DTUFSNl9NQV9Qb3MgICAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIERNQV9DTUFSNl9NQV9Nc2sgICAgICAgICAgICAgICAgICAgICgweEZGRkZGRkZGVUwgPDwgRE1BX0NNQVI2X01BX1BvcykgIC8qITwgMHhGRkZGRkZGRiAqLw0KI2RlZmluZSBETUFfQ01BUjZfTUEgICAgICAgICAgICAgICAgICAgICAgICBETUFfQ01BUjZfTUFfTXNrICAgICAgICAgICAgICAgICAgIC8qITwgTWVtb3J5IEFkZHJlc3MgKi8NCg0KLyoqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIERNQV9DTUFSNyByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgRE1BX0NNQVI3X01BX1BvcyAgICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRE1BX0NNQVI3X01BX01zayAgICAgICAgICAgICAgICAgICAgKDB4RkZGRkZGRkZVTCA8PCBETUFfQ01BUjdfTUFfUG9zKSAgLyohPCAweEZGRkZGRkZGICovDQojZGVmaW5lIERNQV9DTUFSN19NQSAgICAgICAgICAgICAgICAgICAgICAgIERNQV9DTUFSN19NQV9Nc2sgICAgICAgICAgICAgICAgICAgLyohPCBNZW1vcnkgQWRkcmVzcyAqLw0KDQovKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLw0KLyogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8NCi8qICAgICAgICAgICAgICAgICAgRXh0ZXJuYWwgSW50ZXJydXB0L0V2ZW50IENvbnRyb2xsZXIgKEVYVEkpICAgICAgICAgICAgICAgICovDQovKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLw0KLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8NCg0KLyoqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBFWFRJX0lNUiByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgRVhUSV9JTVJfTVIwX1BvcyAgICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRVhUSV9JTVJfTVIwX01zayAgICAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IEVYVElfSU1SX01SMF9Qb3MpICAgICAgICAgLyohPCAweDAwMDAwMDAxICovDQojZGVmaW5lIEVYVElfSU1SX01SMCAgICAgICAgICAgICAgICAgICAgICAgIEVYVElfSU1SX01SMF9Nc2sgICAgICAgICAgICAgICAgICAgLyohPCBJbnRlcnJ1cHQgTWFzayBvbiBsaW5lIDAgKi8NCiNkZWZpbmUgRVhUSV9JTVJfTVIxX1BvcyAgICAgICAgICAgICAgICAgICAgKDFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRVhUSV9JTVJfTVIxX01zayAgICAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IEVYVElfSU1SX01SMV9Qb3MpICAgICAgICAgLyohPCAweDAwMDAwMDAyICovDQojZGVmaW5lIEVYVElfSU1SX01SMSAgICAgICAgICAgICAgICAgICAgICAgIEVYVElfSU1SX01SMV9Nc2sgICAgICAgICAgICAgICAgICAgLyohPCBJbnRlcnJ1cHQgTWFzayBvbiBsaW5lIDEgKi8NCiNkZWZpbmUgRVhUSV9JTVJfTVIyX1BvcyAgICAgICAgICAgICAgICAgICAgKDJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRVhUSV9JTVJfTVIyX01zayAgICAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IEVYVElfSU1SX01SMl9Qb3MpICAgICAgICAgLyohPCAweDAwMDAwMDA0ICovDQojZGVmaW5lIEVYVElfSU1SX01SMiAgICAgICAgICAgICAgICAgICAgICAgIEVYVElfSU1SX01SMl9Nc2sgICAgICAgICAgICAgICAgICAgLyohPCBJbnRlcnJ1cHQgTWFzayBvbiBsaW5lIDIgKi8NCiNkZWZpbmUgRVhUSV9JTVJfTVIzX1BvcyAgICAgICAgICAgICAgICAgICAgKDNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRVhUSV9JTVJfTVIzX01zayAgICAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IEVYVElfSU1SX01SM19Qb3MpICAgICAgICAgLyohPCAweDAwMDAwMDA4ICovDQojZGVmaW5lIEVYVElfSU1SX01SMyAgICAgICAgICAgICAgICAgICAgICAgIEVYVElfSU1SX01SM19Nc2sgICAgICAgICAgICAgICAgICAgLyohPCBJbnRlcnJ1cHQgTWFzayBvbiBsaW5lIDMgKi8NCiNkZWZpbmUgRVhUSV9JTVJfTVI0X1BvcyAgICAgICAgICAgICAgICAgICAgKDRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRVhUSV9JTVJfTVI0X01zayAgICAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IEVYVElfSU1SX01SNF9Qb3MpICAgICAgICAgLyohPCAweDAwMDAwMDEwICovDQojZGVmaW5lIEVYVElfSU1SX01SNCAgICAgICAgICAgICAgICAgICAgICAgIEVYVElfSU1SX01SNF9Nc2sgICAgICAgICAgICAgICAgICAgLyohPCBJbnRlcnJ1cHQgTWFzayBvbiBsaW5lIDQgKi8NCiNkZWZpbmUgRVhUSV9JTVJfTVI1X1BvcyAgICAgICAgICAgICAgICAgICAgKDVVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRVhUSV9JTVJfTVI1X01zayAgICAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IEVYVElfSU1SX01SNV9Qb3MpICAgICAgICAgLyohPCAweDAwMDAwMDIwICovDQojZGVmaW5lIEVYVElfSU1SX01SNSAgICAgICAgICAgICAgICAgICAgICAgIEVYVElfSU1SX01SNV9Nc2sgICAgICAgICAgICAgICAgICAgLyohPCBJbnRlcnJ1cHQgTWFzayBvbiBsaW5lIDUgKi8NCiNkZWZpbmUgRVhUSV9JTVJfTVI2X1BvcyAgICAgICAgICAgICAgICAgICAgKDZVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRVhUSV9JTVJfTVI2X01zayAgICAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IEVYVElfSU1SX01SNl9Qb3MpICAgICAgICAgLyohPCAweDAwMDAwMDQwICovDQojZGVmaW5lIEVYVElfSU1SX01SNiAgICAgICAgICAgICAgICAgICAgICAgIEVYVElfSU1SX01SNl9Nc2sgICAgICAgICAgICAgICAgICAgLyohPCBJbnRlcnJ1cHQgTWFzayBvbiBsaW5lIDYgKi8NCiNkZWZpbmUgRVhUSV9JTVJfTVI3X1BvcyAgICAgICAgICAgICAgICAgICAgKDdVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRVhUSV9JTVJfTVI3X01zayAgICAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IEVYVElfSU1SX01SN19Qb3MpICAgICAgICAgLyohPCAweDAwMDAwMDgwICovDQojZGVmaW5lIEVYVElfSU1SX01SNyAgICAgICAgICAgICAgICAgICAgICAgIEVYVElfSU1SX01SN19Nc2sgICAgICAgICAgICAgICAgICAgLyohPCBJbnRlcnJ1cHQgTWFzayBvbiBsaW5lIDcgKi8NCiNkZWZpbmUgRVhUSV9JTVJfTVI4X1BvcyAgICAgICAgICAgICAgICAgICAgKDhVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRVhUSV9JTVJfTVI4X01zayAgICAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IEVYVElfSU1SX01SOF9Qb3MpICAgICAgICAgLyohPCAweDAwMDAwMTAwICovDQojZGVmaW5lIEVYVElfSU1SX01SOCAgICAgICAgICAgICAgICAgICAgICAgIEVYVElfSU1SX01SOF9Nc2sgICAgICAgICAgICAgICAgICAgLyohPCBJbnRlcnJ1cHQgTWFzayBvbiBsaW5lIDggKi8NCiNkZWZpbmUgRVhUSV9JTVJfTVI5X1BvcyAgICAgICAgICAgICAgICAgICAgKDlVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRVhUSV9JTVJfTVI5X01zayAgICAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IEVYVElfSU1SX01SOV9Qb3MpICAgICAgICAgLyohPCAweDAwMDAwMjAwICovDQojZGVmaW5lIEVYVElfSU1SX01SOSAgICAgICAgICAgICAgICAgICAgICAgIEVYVElfSU1SX01SOV9Nc2sgICAgICAgICAgICAgICAgICAgLyohPCBJbnRlcnJ1cHQgTWFzayBvbiBsaW5lIDkgKi8NCiNkZWZpbmUgRVhUSV9JTVJfTVIxMF9Qb3MgICAgICAgICAgICAgICAgICAgKDEwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRVhUSV9JTVJfTVIxMF9Nc2sgICAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IEVYVElfSU1SX01SMTBfUG9zKSAgICAgICAgLyohPCAweDAwMDAwNDAwICovDQojZGVmaW5lIEVYVElfSU1SX01SMTAgICAgICAgICAgICAgICAgICAgICAgIEVYVElfSU1SX01SMTBfTXNrICAgICAgICAgICAgICAgICAgLyohPCBJbnRlcnJ1cHQgTWFzayBvbiBsaW5lIDEwICovDQojZGVmaW5lIEVYVElfSU1SX01SMTFfUG9zICAgICAgICAgICAgICAgICAgICgxMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEVYVElfSU1SX01SMTFfTXNrICAgICAgICAgICAgICAgICAgICgweDFVTCA8PCBFWFRJX0lNUl9NUjExX1BvcykgICAgICAgIC8qITwgMHgwMDAwMDgwMCAqLw0KI2RlZmluZSBFWFRJX0lNUl9NUjExICAgICAgICAgICAgICAgICAgICAgICBFWFRJX0lNUl9NUjExX01zayAgICAgICAgICAgICAgICAgIC8qITwgSW50ZXJydXB0IE1hc2sgb24gbGluZSAxMSAqLw0KI2RlZmluZSBFWFRJX0lNUl9NUjEyX1BvcyAgICAgICAgICAgICAgICAgICAoMTJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBFWFRJX0lNUl9NUjEyX01zayAgICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgRVhUSV9JTVJfTVIxMl9Qb3MpICAgICAgICAvKiE8IDB4MDAwMDEwMDAgKi8NCiNkZWZpbmUgRVhUSV9JTVJfTVIxMiAgICAgICAgICAgICAgICAgICAgICAgRVhUSV9JTVJfTVIxMl9Nc2sgICAgICAgICAgICAgICAgICAvKiE8IEludGVycnVwdCBNYXNrIG9uIGxpbmUgMTIgKi8NCiNkZWZpbmUgRVhUSV9JTVJfTVIxM19Qb3MgICAgICAgICAgICAgICAgICAgKDEzVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRVhUSV9JTVJfTVIxM19Nc2sgICAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IEVYVElfSU1SX01SMTNfUG9zKSAgICAgICAgLyohPCAweDAwMDAyMDAwICovDQojZGVmaW5lIEVYVElfSU1SX01SMTMgICAgICAgICAgICAgICAgICAgICAgIEVYVElfSU1SX01SMTNfTXNrICAgICAgICAgICAgICAgICAgLyohPCBJbnRlcnJ1cHQgTWFzayBvbiBsaW5lIDEzICovDQojZGVmaW5lIEVYVElfSU1SX01SMTRfUG9zICAgICAgICAgICAgICAgICAgICgxNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEVYVElfSU1SX01SMTRfTXNrICAgICAgICAgICAgICAgICAgICgweDFVTCA8PCBFWFRJX0lNUl9NUjE0X1BvcykgICAgICAgIC8qITwgMHgwMDAwNDAwMCAqLw0KI2RlZmluZSBFWFRJX0lNUl9NUjE0ICAgICAgICAgICAgICAgICAgICAgICBFWFRJX0lNUl9NUjE0X01zayAgICAgICAgICAgICAgICAgIC8qITwgSW50ZXJydXB0IE1hc2sgb24gbGluZSAxNCAqLw0KI2RlZmluZSBFWFRJX0lNUl9NUjE1X1BvcyAgICAgICAgICAgICAgICAgICAoMTVVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBFWFRJX0lNUl9NUjE1X01zayAgICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgRVhUSV9JTVJfTVIxNV9Qb3MpICAgICAgICAvKiE8IDB4MDAwMDgwMDAgKi8NCiNkZWZpbmUgRVhUSV9JTVJfTVIxNSAgICAgICAgICAgICAgICAgICAgICAgRVhUSV9JTVJfTVIxNV9Nc2sgICAgICAgICAgICAgICAgICAvKiE8IEludGVycnVwdCBNYXNrIG9uIGxpbmUgMTUgKi8NCiNkZWZpbmUgRVhUSV9JTVJfTVIxNl9Qb3MgICAgICAgICAgICAgICAgICAgKDE2VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRVhUSV9JTVJfTVIxNl9Nc2sgICAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IEVYVElfSU1SX01SMTZfUG9zKSAgICAgICAgLyohPCAweDAwMDEwMDAwICovDQojZGVmaW5lIEVYVElfSU1SX01SMTYgICAgICAgICAgICAgICAgICAgICAgIEVYVElfSU1SX01SMTZfTXNrICAgICAgICAgICAgICAgICAgLyohPCBJbnRlcnJ1cHQgTWFzayBvbiBsaW5lIDE2ICovDQojZGVmaW5lIEVYVElfSU1SX01SMTdfUG9zICAgICAgICAgICAgICAgICAgICgxN1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEVYVElfSU1SX01SMTdfTXNrICAgICAgICAgICAgICAgICAgICgweDFVTCA8PCBFWFRJX0lNUl9NUjE3X1BvcykgICAgICAgIC8qITwgMHgwMDAyMDAwMCAqLw0KI2RlZmluZSBFWFRJX0lNUl9NUjE3ICAgICAgICAgICAgICAgICAgICAgICBFWFRJX0lNUl9NUjE3X01zayAgICAgICAgICAgICAgICAgIC8qITwgSW50ZXJydXB0IE1hc2sgb24gbGluZSAxNyAqLw0KI2RlZmluZSBFWFRJX0lNUl9NUjE4X1BvcyAgICAgICAgICAgICAgICAgICAoMThVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBFWFRJX0lNUl9NUjE4X01zayAgICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgRVhUSV9JTVJfTVIxOF9Qb3MpICAgICAgICAvKiE8IDB4MDAwNDAwMDAgKi8NCiNkZWZpbmUgRVhUSV9JTVJfTVIxOCAgICAgICAgICAgICAgICAgICAgICAgRVhUSV9JTVJfTVIxOF9Nc2sgICAgICAgICAgICAgICAgICAvKiE8IEludGVycnVwdCBNYXNrIG9uIGxpbmUgMTggKi8NCiNkZWZpbmUgRVhUSV9JTVJfTVIxOV9Qb3MgICAgICAgICAgICAgICAgICAgKDE5VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRVhUSV9JTVJfTVIxOV9Nc2sgICAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IEVYVElfSU1SX01SMTlfUG9zKSAgICAgICAgLyohPCAweDAwMDgwMDAwICovDQojZGVmaW5lIEVYVElfSU1SX01SMTkgICAgICAgICAgICAgICAgICAgICAgIEVYVElfSU1SX01SMTlfTXNrICAgICAgICAgICAgICAgICAgLyohPCBJbnRlcnJ1cHQgTWFzayBvbiBsaW5lIDE5ICovDQojZGVmaW5lIEVYVElfSU1SX01SMjBfUG9zICAgICAgICAgICAgICAgICAgICgyMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEVYVElfSU1SX01SMjBfTXNrICAgICAgICAgICAgICAgICAgICgweDFVTCA8PCBFWFRJX0lNUl9NUjIwX1BvcykgICAgICAgIC8qITwgMHgwMDEwMDAwMCAqLw0KI2RlZmluZSBFWFRJX0lNUl9NUjIwICAgICAgICAgICAgICAgICAgICAgICBFWFRJX0lNUl9NUjIwX01zayAgICAgICAgICAgICAgICAgIC8qITwgSW50ZXJydXB0IE1hc2sgb24gbGluZSAyMCAqLw0KI2RlZmluZSBFWFRJX0lNUl9NUjIxX1BvcyAgICAgICAgICAgICAgICAgICAoMjFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBFWFRJX0lNUl9NUjIxX01zayAgICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgRVhUSV9JTVJfTVIyMV9Qb3MpICAgICAgICAvKiE8IDB4MDAyMDAwMDAgKi8NCiNkZWZpbmUgRVhUSV9JTVJfTVIyMSAgICAgICAgICAgICAgICAgICAgICAgRVhUSV9JTVJfTVIyMV9Nc2sgICAgICAgICAgICAgICAgICAvKiE8IEludGVycnVwdCBNYXNrIG9uIGxpbmUgMjEgKi8NCiNkZWZpbmUgRVhUSV9JTVJfTVIyMl9Qb3MgICAgICAgICAgICAgICAgICAgKDIyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRVhUSV9JTVJfTVIyMl9Nc2sgICAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IEVYVElfSU1SX01SMjJfUG9zKSAgICAgICAgLyohPCAweDAwNDAwMDAwICovDQojZGVmaW5lIEVYVElfSU1SX01SMjIgICAgICAgICAgICAgICAgICAgICAgIEVYVElfSU1SX01SMjJfTXNrICAgICAgICAgICAgICAgICAgLyohPCBJbnRlcnJ1cHQgTWFzayBvbiBsaW5lIDIyICovDQojZGVmaW5lIEVYVElfSU1SX01SMjNfUG9zICAgICAgICAgICAgICAgICAgICgyM1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEVYVElfSU1SX01SMjNfTXNrICAgICAgICAgICAgICAgICAgICgweDFVTCA8PCBFWFRJX0lNUl9NUjIzX1BvcykgICAgICAgIC8qITwgMHgwMDgwMDAwMCAqLw0KI2RlZmluZSBFWFRJX0lNUl9NUjIzICAgICAgICAgICAgICAgICAgICAgICBFWFRJX0lNUl9NUjIzX01zayAgICAgICAgICAgICAgICAgIC8qITwgSW50ZXJydXB0IE1hc2sgb24gbGluZSAyMyAqLw0KDQovKiBSZWZlcmVuY2VzIERlZmluZXMgKi8NCiNkZWZpbmUgIEVYVElfSU1SX0lNMCBFWFRJX0lNUl9NUjANCiNkZWZpbmUgIEVYVElfSU1SX0lNMSBFWFRJX0lNUl9NUjENCiNkZWZpbmUgIEVYVElfSU1SX0lNMiBFWFRJX0lNUl9NUjINCiNkZWZpbmUgIEVYVElfSU1SX0lNMyBFWFRJX0lNUl9NUjMNCiNkZWZpbmUgIEVYVElfSU1SX0lNNCBFWFRJX0lNUl9NUjQNCiNkZWZpbmUgIEVYVElfSU1SX0lNNSBFWFRJX0lNUl9NUjUNCiNkZWZpbmUgIEVYVElfSU1SX0lNNiBFWFRJX0lNUl9NUjYNCiNkZWZpbmUgIEVYVElfSU1SX0lNNyBFWFRJX0lNUl9NUjcNCiNkZWZpbmUgIEVYVElfSU1SX0lNOCBFWFRJX0lNUl9NUjgNCiNkZWZpbmUgIEVYVElfSU1SX0lNOSBFWFRJX0lNUl9NUjkNCiNkZWZpbmUgIEVYVElfSU1SX0lNMTAgRVhUSV9JTVJfTVIxMA0KI2RlZmluZSAgRVhUSV9JTVJfSU0xMSBFWFRJX0lNUl9NUjExDQojZGVmaW5lICBFWFRJX0lNUl9JTTEyIEVYVElfSU1SX01SMTINCiNkZWZpbmUgIEVYVElfSU1SX0lNMTMgRVhUSV9JTVJfTVIxMw0KI2RlZmluZSAgRVhUSV9JTVJfSU0xNCBFWFRJX0lNUl9NUjE0DQojZGVmaW5lICBFWFRJX0lNUl9JTTE1IEVYVElfSU1SX01SMTUNCiNkZWZpbmUgIEVYVElfSU1SX0lNMTYgRVhUSV9JTVJfTVIxNg0KI2RlZmluZSAgRVhUSV9JTVJfSU0xNyBFWFRJX0lNUl9NUjE3DQojZGVmaW5lICBFWFRJX0lNUl9JTTE4IEVYVElfSU1SX01SMTgNCiNkZWZpbmUgIEVYVElfSU1SX0lNMTkgRVhUSV9JTVJfTVIxOQ0KI2RlZmluZSAgRVhUSV9JTVJfSU0yMCBFWFRJX0lNUl9NUjIwDQojZGVmaW5lICBFWFRJX0lNUl9JTTIxIEVYVElfSU1SX01SMjENCiNkZWZpbmUgIEVYVElfSU1SX0lNMjIgRVhUSV9JTVJfTVIyMg0KLyogQ2F0ZWdvcnkgMywgNCAmIDUgKi8NCiNkZWZpbmUgIEVYVElfSU1SX0lNMjMgRVhUSV9JTVJfTVIyMw0KI2RlZmluZSBFWFRJX0lNUl9JTV9Qb3MgICAgICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBFWFRJX0lNUl9JTV9Nc2sgICAgICAgICAgICAgICAgICAgICAoMHhGRkZGRkZVTCA8PCBFWFRJX0lNUl9JTV9Qb3MpICAgICAvKiE8IDB4MDBGRkZGRkYgKi8NCiNkZWZpbmUgRVhUSV9JTVJfSU0gICAgICAgICAgICAgICAgICAgICAgICAgRVhUSV9JTVJfSU1fTXNrICAgICAgICAgICAgICAgICAgICAvKiE8IEludGVycnVwdCBNYXNrIEFsbCAqLw0KDQovKioqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIEVYVElfRU1SIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBFWFRJX0VNUl9NUjBfUG9zICAgICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBFWFRJX0VNUl9NUjBfTXNrICAgICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgRVhUSV9FTVJfTVIwX1BvcykgICAgICAgICAvKiE8IDB4MDAwMDAwMDEgKi8NCiNkZWZpbmUgRVhUSV9FTVJfTVIwICAgICAgICAgICAgICAgICAgICAgICAgRVhUSV9FTVJfTVIwX01zayAgICAgICAgICAgICAgICAgICAvKiE8IEV2ZW50IE1hc2sgb24gbGluZSAwICovDQojZGVmaW5lIEVYVElfRU1SX01SMV9Qb3MgICAgICAgICAgICAgICAgICAgICgxVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEVYVElfRU1SX01SMV9Nc2sgICAgICAgICAgICAgICAgICAgICgweDFVTCA8PCBFWFRJX0VNUl9NUjFfUG9zKSAgICAgICAgIC8qITwgMHgwMDAwMDAwMiAqLw0KI2RlZmluZSBFWFRJX0VNUl9NUjEgICAgICAgICAgICAgICAgICAgICAgICBFWFRJX0VNUl9NUjFfTXNrICAgICAgICAgICAgICAgICAgIC8qITwgRXZlbnQgTWFzayBvbiBsaW5lIDEgKi8NCiNkZWZpbmUgRVhUSV9FTVJfTVIyX1BvcyAgICAgICAgICAgICAgICAgICAgKDJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRVhUSV9FTVJfTVIyX01zayAgICAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IEVYVElfRU1SX01SMl9Qb3MpICAgICAgICAgLyohPCAweDAwMDAwMDA0ICovDQojZGVmaW5lIEVYVElfRU1SX01SMiAgICAgICAgICAgICAgICAgICAgICAgIEVYVElfRU1SX01SMl9Nc2sgICAgICAgICAgICAgICAgICAgLyohPCBFdmVudCBNYXNrIG9uIGxpbmUgMiAqLw0KI2RlZmluZSBFWFRJX0VNUl9NUjNfUG9zICAgICAgICAgICAgICAgICAgICAoM1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBFWFRJX0VNUl9NUjNfTXNrICAgICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgRVhUSV9FTVJfTVIzX1BvcykgICAgICAgICAvKiE8IDB4MDAwMDAwMDggKi8NCiNkZWZpbmUgRVhUSV9FTVJfTVIzICAgICAgICAgICAgICAgICAgICAgICAgRVhUSV9FTVJfTVIzX01zayAgICAgICAgICAgICAgICAgICAvKiE8IEV2ZW50IE1hc2sgb24gbGluZSAzICovDQojZGVmaW5lIEVYVElfRU1SX01SNF9Qb3MgICAgICAgICAgICAgICAgICAgICg0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEVYVElfRU1SX01SNF9Nc2sgICAgICAgICAgICAgICAgICAgICgweDFVTCA8PCBFWFRJX0VNUl9NUjRfUG9zKSAgICAgICAgIC8qITwgMHgwMDAwMDAxMCAqLw0KI2RlZmluZSBFWFRJX0VNUl9NUjQgICAgICAgICAgICAgICAgICAgICAgICBFWFRJX0VNUl9NUjRfTXNrICAgICAgICAgICAgICAgICAgIC8qITwgRXZlbnQgTWFzayBvbiBsaW5lIDQgKi8NCiNkZWZpbmUgRVhUSV9FTVJfTVI1X1BvcyAgICAgICAgICAgICAgICAgICAgKDVVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRVhUSV9FTVJfTVI1X01zayAgICAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IEVYVElfRU1SX01SNV9Qb3MpICAgICAgICAgLyohPCAweDAwMDAwMDIwICovDQojZGVmaW5lIEVYVElfRU1SX01SNSAgICAgICAgICAgICAgICAgICAgICAgIEVYVElfRU1SX01SNV9Nc2sgICAgICAgICAgICAgICAgICAgLyohPCBFdmVudCBNYXNrIG9uIGxpbmUgNSAqLw0KI2RlZmluZSBFWFRJX0VNUl9NUjZfUG9zICAgICAgICAgICAgICAgICAgICAoNlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBFWFRJX0VNUl9NUjZfTXNrICAgICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgRVhUSV9FTVJfTVI2X1BvcykgICAgICAgICAvKiE8IDB4MDAwMDAwNDAgKi8NCiNkZWZpbmUgRVhUSV9FTVJfTVI2ICAgICAgICAgICAgICAgICAgICAgICAgRVhUSV9FTVJfTVI2X01zayAgICAgICAgICAgICAgICAgICAvKiE8IEV2ZW50IE1hc2sgb24gbGluZSA2ICovDQojZGVmaW5lIEVYVElfRU1SX01SN19Qb3MgICAgICAgICAgICAgICAgICAgICg3VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEVYVElfRU1SX01SN19Nc2sgICAgICAgICAgICAgICAgICAgICgweDFVTCA8PCBFWFRJX0VNUl9NUjdfUG9zKSAgICAgICAgIC8qITwgMHgwMDAwMDA4MCAqLw0KI2RlZmluZSBFWFRJX0VNUl9NUjcgICAgICAgICAgICAgICAgICAgICAgICBFWFRJX0VNUl9NUjdfTXNrICAgICAgICAgICAgICAgICAgIC8qITwgRXZlbnQgTWFzayBvbiBsaW5lIDcgKi8NCiNkZWZpbmUgRVhUSV9FTVJfTVI4X1BvcyAgICAgICAgICAgICAgICAgICAgKDhVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRVhUSV9FTVJfTVI4X01zayAgICAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IEVYVElfRU1SX01SOF9Qb3MpICAgICAgICAgLyohPCAweDAwMDAwMTAwICovDQojZGVmaW5lIEVYVElfRU1SX01SOCAgICAgICAgICAgICAgICAgICAgICAgIEVYVElfRU1SX01SOF9Nc2sgICAgICAgICAgICAgICAgICAgLyohPCBFdmVudCBNYXNrIG9uIGxpbmUgOCAqLw0KI2RlZmluZSBFWFRJX0VNUl9NUjlfUG9zICAgICAgICAgICAgICAgICAgICAoOVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBFWFRJX0VNUl9NUjlfTXNrICAgICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgRVhUSV9FTVJfTVI5X1BvcykgICAgICAgICAvKiE8IDB4MDAwMDAyMDAgKi8NCiNkZWZpbmUgRVhUSV9FTVJfTVI5ICAgICAgICAgICAgICAgICAgICAgICAgRVhUSV9FTVJfTVI5X01zayAgICAgICAgICAgICAgICAgICAvKiE8IEV2ZW50IE1hc2sgb24gbGluZSA5ICovDQojZGVmaW5lIEVYVElfRU1SX01SMTBfUG9zICAgICAgICAgICAgICAgICAgICgxMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEVYVElfRU1SX01SMTBfTXNrICAgICAgICAgICAgICAgICAgICgweDFVTCA8PCBFWFRJX0VNUl9NUjEwX1BvcykgICAgICAgIC8qITwgMHgwMDAwMDQwMCAqLw0KI2RlZmluZSBFWFRJX0VNUl9NUjEwICAgICAgICAgICAgICAgICAgICAgICBFWFRJX0VNUl9NUjEwX01zayAgICAgICAgICAgICAgICAgIC8qITwgRXZlbnQgTWFzayBvbiBsaW5lIDEwICovDQojZGVmaW5lIEVYVElfRU1SX01SMTFfUG9zICAgICAgICAgICAgICAgICAgICgxMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEVYVElfRU1SX01SMTFfTXNrICAgICAgICAgICAgICAgICAgICgweDFVTCA8PCBFWFRJX0VNUl9NUjExX1BvcykgICAgICAgIC8qITwgMHgwMDAwMDgwMCAqLw0KI2RlZmluZSBFWFRJX0VNUl9NUjExICAgICAgICAgICAgICAgICAgICAgICBFWFRJX0VNUl9NUjExX01zayAgICAgICAgICAgICAgICAgIC8qITwgRXZlbnQgTWFzayBvbiBsaW5lIDExICovDQojZGVmaW5lIEVYVElfRU1SX01SMTJfUG9zICAgICAgICAgICAgICAgICAgICgxMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEVYVElfRU1SX01SMTJfTXNrICAgICAgICAgICAgICAgICAgICgweDFVTCA8PCBFWFRJX0VNUl9NUjEyX1BvcykgICAgICAgIC8qITwgMHgwMDAwMTAwMCAqLw0KI2RlZmluZSBFWFRJX0VNUl9NUjEyICAgICAgICAgICAgICAgICAgICAgICBFWFRJX0VNUl9NUjEyX01zayAgICAgICAgICAgICAgICAgIC8qITwgRXZlbnQgTWFzayBvbiBsaW5lIDEyICovDQojZGVmaW5lIEVYVElfRU1SX01SMTNfUG9zICAgICAgICAgICAgICAgICAgICgxM1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEVYVElfRU1SX01SMTNfTXNrICAgICAgICAgICAgICAgICAgICgweDFVTCA8PCBFWFRJX0VNUl9NUjEzX1BvcykgICAgICAgIC8qITwgMHgwMDAwMjAwMCAqLw0KI2RlZmluZSBFWFRJX0VNUl9NUjEzICAgICAgICAgICAgICAgICAgICAgICBFWFRJX0VNUl9NUjEzX01zayAgICAgICAgICAgICAgICAgIC8qITwgRXZlbnQgTWFzayBvbiBsaW5lIDEzICovDQojZGVmaW5lIEVYVElfRU1SX01SMTRfUG9zICAgICAgICAgICAgICAgICAgICgxNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEVYVElfRU1SX01SMTRfTXNrICAgICAgICAgICAgICAgICAgICgweDFVTCA8PCBFWFRJX0VNUl9NUjE0X1BvcykgICAgICAgIC8qITwgMHgwMDAwNDAwMCAqLw0KI2RlZmluZSBFWFRJX0VNUl9NUjE0ICAgICAgICAgICAgICAgICAgICAgICBFWFRJX0VNUl9NUjE0X01zayAgICAgICAgICAgICAgICAgIC8qITwgRXZlbnQgTWFzayBvbiBsaW5lIDE0ICovDQojZGVmaW5lIEVYVElfRU1SX01SMTVfUG9zICAgICAgICAgICAgICAgICAgICgxNVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEVYVElfRU1SX01SMTVfTXNrICAgICAgICAgICAgICAgICAgICgweDFVTCA8PCBFWFRJX0VNUl9NUjE1X1BvcykgICAgICAgIC8qITwgMHgwMDAwODAwMCAqLw0KI2RlZmluZSBFWFRJX0VNUl9NUjE1ICAgICAgICAgICAgICAgICAgICAgICBFWFRJX0VNUl9NUjE1X01zayAgICAgICAgICAgICAgICAgIC8qITwgRXZlbnQgTWFzayBvbiBsaW5lIDE1ICovDQojZGVmaW5lIEVYVElfRU1SX01SMTZfUG9zICAgICAgICAgICAgICAgICAgICgxNlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEVYVElfRU1SX01SMTZfTXNrICAgICAgICAgICAgICAgICAgICgweDFVTCA8PCBFWFRJX0VNUl9NUjE2X1BvcykgICAgICAgIC8qITwgMHgwMDAxMDAwMCAqLw0KI2RlZmluZSBFWFRJX0VNUl9NUjE2ICAgICAgICAgICAgICAgICAgICAgICBFWFRJX0VNUl9NUjE2X01zayAgICAgICAgICAgICAgICAgIC8qITwgRXZlbnQgTWFzayBvbiBsaW5lIDE2ICovDQojZGVmaW5lIEVYVElfRU1SX01SMTdfUG9zICAgICAgICAgICAgICAgICAgICgxN1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEVYVElfRU1SX01SMTdfTXNrICAgICAgICAgICAgICAgICAgICgweDFVTCA8PCBFWFRJX0VNUl9NUjE3X1BvcykgICAgICAgIC8qITwgMHgwMDAyMDAwMCAqLw0KI2RlZmluZSBFWFRJX0VNUl9NUjE3ICAgICAgICAgICAgICAgICAgICAgICBFWFRJX0VNUl9NUjE3X01zayAgICAgICAgICAgICAgICAgIC8qITwgRXZlbnQgTWFzayBvbiBsaW5lIDE3ICovDQojZGVmaW5lIEVYVElfRU1SX01SMThfUG9zICAgICAgICAgICAgICAgICAgICgxOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEVYVElfRU1SX01SMThfTXNrICAgICAgICAgICAgICAgICAgICgweDFVTCA8PCBFWFRJX0VNUl9NUjE4X1BvcykgICAgICAgIC8qITwgMHgwMDA0MDAwMCAqLw0KI2RlZmluZSBFWFRJX0VNUl9NUjE4ICAgICAgICAgICAgICAgICAgICAgICBFWFRJX0VNUl9NUjE4X01zayAgICAgICAgICAgICAgICAgIC8qITwgRXZlbnQgTWFzayBvbiBsaW5lIDE4ICovDQojZGVmaW5lIEVYVElfRU1SX01SMTlfUG9zICAgICAgICAgICAgICAgICAgICgxOVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEVYVElfRU1SX01SMTlfTXNrICAgICAgICAgICAgICAgICAgICgweDFVTCA8PCBFWFRJX0VNUl9NUjE5X1BvcykgICAgICAgIC8qITwgMHgwMDA4MDAwMCAqLw0KI2RlZmluZSBFWFRJX0VNUl9NUjE5ICAgICAgICAgICAgICAgICAgICAgICBFWFRJX0VNUl9NUjE5X01zayAgICAgICAgICAgICAgICAgIC8qITwgRXZlbnQgTWFzayBvbiBsaW5lIDE5ICovDQojZGVmaW5lIEVYVElfRU1SX01SMjBfUG9zICAgICAgICAgICAgICAgICAgICgyMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEVYVElfRU1SX01SMjBfTXNrICAgICAgICAgICAgICAgICAgICgweDFVTCA8PCBFWFRJX0VNUl9NUjIwX1BvcykgICAgICAgIC8qITwgMHgwMDEwMDAwMCAqLw0KI2RlZmluZSBFWFRJX0VNUl9NUjIwICAgICAgICAgICAgICAgICAgICAgICBFWFRJX0VNUl9NUjIwX01zayAgICAgICAgICAgICAgICAgIC8qITwgRXZlbnQgTWFzayBvbiBsaW5lIDIwICovDQojZGVmaW5lIEVYVElfRU1SX01SMjFfUG9zICAgICAgICAgICAgICAgICAgICgyMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEVYVElfRU1SX01SMjFfTXNrICAgICAgICAgICAgICAgICAgICgweDFVTCA8PCBFWFRJX0VNUl9NUjIxX1BvcykgICAgICAgIC8qITwgMHgwMDIwMDAwMCAqLw0KI2RlZmluZSBFWFRJX0VNUl9NUjIxICAgICAgICAgICAgICAgICAgICAgICBFWFRJX0VNUl9NUjIxX01zayAgICAgICAgICAgICAgICAgIC8qITwgRXZlbnQgTWFzayBvbiBsaW5lIDIxICovDQojZGVmaW5lIEVYVElfRU1SX01SMjJfUG9zICAgICAgICAgICAgICAgICAgICgyMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEVYVElfRU1SX01SMjJfTXNrICAgICAgICAgICAgICAgICAgICgweDFVTCA8PCBFWFRJX0VNUl9NUjIyX1BvcykgICAgICAgIC8qITwgMHgwMDQwMDAwMCAqLw0KI2RlZmluZSBFWFRJX0VNUl9NUjIyICAgICAgICAgICAgICAgICAgICAgICBFWFRJX0VNUl9NUjIyX01zayAgICAgICAgICAgICAgICAgIC8qITwgRXZlbnQgTWFzayBvbiBsaW5lIDIyICovDQojZGVmaW5lIEVYVElfRU1SX01SMjNfUG9zICAgICAgICAgICAgICAgICAgICgyM1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEVYVElfRU1SX01SMjNfTXNrICAgICAgICAgICAgICAgICAgICgweDFVTCA8PCBFWFRJX0VNUl9NUjIzX1BvcykgICAgICAgIC8qITwgMHgwMDgwMDAwMCAqLw0KI2RlZmluZSBFWFRJX0VNUl9NUjIzICAgICAgICAgICAgICAgICAgICAgICBFWFRJX0VNUl9NUjIzX01zayAgICAgICAgICAgICAgICAgIC8qITwgRXZlbnQgTWFzayBvbiBsaW5lIDIzICovDQoNCi8qIFJlZmVyZW5jZXMgRGVmaW5lcyAqLw0KI2RlZmluZSAgRVhUSV9FTVJfRU0wIEVYVElfRU1SX01SMA0KI2RlZmluZSAgRVhUSV9FTVJfRU0xIEVYVElfRU1SX01SMQ0KI2RlZmluZSAgRVhUSV9FTVJfRU0yIEVYVElfRU1SX01SMg0KI2RlZmluZSAgRVhUSV9FTVJfRU0zIEVYVElfRU1SX01SMw0KI2RlZmluZSAgRVhUSV9FTVJfRU00IEVYVElfRU1SX01SNA0KI2RlZmluZSAgRVhUSV9FTVJfRU01IEVYVElfRU1SX01SNQ0KI2RlZmluZSAgRVhUSV9FTVJfRU02IEVYVElfRU1SX01SNg0KI2RlZmluZSAgRVhUSV9FTVJfRU03IEVYVElfRU1SX01SNw0KI2RlZmluZSAgRVhUSV9FTVJfRU04IEVYVElfRU1SX01SOA0KI2RlZmluZSAgRVhUSV9FTVJfRU05IEVYVElfRU1SX01SOQ0KI2RlZmluZSAgRVhUSV9FTVJfRU0xMCBFWFRJX0VNUl9NUjEwDQojZGVmaW5lICBFWFRJX0VNUl9FTTExIEVYVElfRU1SX01SMTENCiNkZWZpbmUgIEVYVElfRU1SX0VNMTIgRVhUSV9FTVJfTVIxMg0KI2RlZmluZSAgRVhUSV9FTVJfRU0xMyBFWFRJX0VNUl9NUjEzDQojZGVmaW5lICBFWFRJX0VNUl9FTTE0IEVYVElfRU1SX01SMTQNCiNkZWZpbmUgIEVYVElfRU1SX0VNMTUgRVhUSV9FTVJfTVIxNQ0KI2RlZmluZSAgRVhUSV9FTVJfRU0xNiBFWFRJX0VNUl9NUjE2DQojZGVmaW5lICBFWFRJX0VNUl9FTTE3IEVYVElfRU1SX01SMTcNCiNkZWZpbmUgIEVYVElfRU1SX0VNMTggRVhUSV9FTVJfTVIxOA0KI2RlZmluZSAgRVhUSV9FTVJfRU0xOSBFWFRJX0VNUl9NUjE5DQojZGVmaW5lICBFWFRJX0VNUl9FTTIwIEVYVElfRU1SX01SMjANCiNkZWZpbmUgIEVYVElfRU1SX0VNMjEgRVhUSV9FTVJfTVIyMQ0KI2RlZmluZSAgRVhUSV9FTVJfRU0yMiBFWFRJX0VNUl9NUjIyDQojZGVmaW5lICBFWFRJX0VNUl9FTTIzIEVYVElfRU1SX01SMjMNCg0KLyoqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIEVYVElfUlRTUiByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgRVhUSV9SVFNSX1RSMF9Qb3MgICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRVhUSV9SVFNSX1RSMF9Nc2sgICAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IEVYVElfUlRTUl9UUjBfUG9zKSAgICAgICAgLyohPCAweDAwMDAwMDAxICovDQojZGVmaW5lIEVYVElfUlRTUl9UUjAgICAgICAgICAgICAgICAgICAgICAgIEVYVElfUlRTUl9UUjBfTXNrICAgICAgICAgICAgICAgICAgLyohPCBSaXNpbmcgdHJpZ2dlciBldmVudCBjb25maWd1cmF0aW9uIGJpdCBvZiBsaW5lIDAgKi8NCiNkZWZpbmUgRVhUSV9SVFNSX1RSMV9Qb3MgICAgICAgICAgICAgICAgICAgKDFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRVhUSV9SVFNSX1RSMV9Nc2sgICAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IEVYVElfUlRTUl9UUjFfUG9zKSAgICAgICAgLyohPCAweDAwMDAwMDAyICovDQojZGVmaW5lIEVYVElfUlRTUl9UUjEgICAgICAgICAgICAgICAgICAgICAgIEVYVElfUlRTUl9UUjFfTXNrICAgICAgICAgICAgICAgICAgLyohPCBSaXNpbmcgdHJpZ2dlciBldmVudCBjb25maWd1cmF0aW9uIGJpdCBvZiBsaW5lIDEgKi8NCiNkZWZpbmUgRVhUSV9SVFNSX1RSMl9Qb3MgICAgICAgICAgICAgICAgICAgKDJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRVhUSV9SVFNSX1RSMl9Nc2sgICAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IEVYVElfUlRTUl9UUjJfUG9zKSAgICAgICAgLyohPCAweDAwMDAwMDA0ICovDQojZGVmaW5lIEVYVElfUlRTUl9UUjIgICAgICAgICAgICAgICAgICAgICAgIEVYVElfUlRTUl9UUjJfTXNrICAgICAgICAgICAgICAgICAgLyohPCBSaXNpbmcgdHJpZ2dlciBldmVudCBjb25maWd1cmF0aW9uIGJpdCBvZiBsaW5lIDIgKi8NCiNkZWZpbmUgRVhUSV9SVFNSX1RSM19Qb3MgICAgICAgICAgICAgICAgICAgKDNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRVhUSV9SVFNSX1RSM19Nc2sgICAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IEVYVElfUlRTUl9UUjNfUG9zKSAgICAgICAgLyohPCAweDAwMDAwMDA4ICovDQojZGVmaW5lIEVYVElfUlRTUl9UUjMgICAgICAgICAgICAgICAgICAgICAgIEVYVElfUlRTUl9UUjNfTXNrICAgICAgICAgICAgICAgICAgLyohPCBSaXNpbmcgdHJpZ2dlciBldmVudCBjb25maWd1cmF0aW9uIGJpdCBvZiBsaW5lIDMgKi8NCiNkZWZpbmUgRVhUSV9SVFNSX1RSNF9Qb3MgICAgICAgICAgICAgICAgICAgKDRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRVhUSV9SVFNSX1RSNF9Nc2sgICAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IEVYVElfUlRTUl9UUjRfUG9zKSAgICAgICAgLyohPCAweDAwMDAwMDEwICovDQojZGVmaW5lIEVYVElfUlRTUl9UUjQgICAgICAgICAgICAgICAgICAgICAgIEVYVElfUlRTUl9UUjRfTXNrICAgICAgICAgICAgICAgICAgLyohPCBSaXNpbmcgdHJpZ2dlciBldmVudCBjb25maWd1cmF0aW9uIGJpdCBvZiBsaW5lIDQgKi8NCiNkZWZpbmUgRVhUSV9SVFNSX1RSNV9Qb3MgICAgICAgICAgICAgICAgICAgKDVVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRVhUSV9SVFNSX1RSNV9Nc2sgICAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IEVYVElfUlRTUl9UUjVfUG9zKSAgICAgICAgLyohPCAweDAwMDAwMDIwICovDQojZGVmaW5lIEVYVElfUlRTUl9UUjUgICAgICAgICAgICAgICAgICAgICAgIEVYVElfUlRTUl9UUjVfTXNrICAgICAgICAgICAgICAgICAgLyohPCBSaXNpbmcgdHJpZ2dlciBldmVudCBjb25maWd1cmF0aW9uIGJpdCBvZiBsaW5lIDUgKi8NCiNkZWZpbmUgRVhUSV9SVFNSX1RSNl9Qb3MgICAgICAgICAgICAgICAgICAgKDZVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRVhUSV9SVFNSX1RSNl9Nc2sgICAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IEVYVElfUlRTUl9UUjZfUG9zKSAgICAgICAgLyohPCAweDAwMDAwMDQwICovDQojZGVmaW5lIEVYVElfUlRTUl9UUjYgICAgICAgICAgICAgICAgICAgICAgIEVYVElfUlRTUl9UUjZfTXNrICAgICAgICAgICAgICAgICAgLyohPCBSaXNpbmcgdHJpZ2dlciBldmVudCBjb25maWd1cmF0aW9uIGJpdCBvZiBsaW5lIDYgKi8NCiNkZWZpbmUgRVhUSV9SVFNSX1RSN19Qb3MgICAgICAgICAgICAgICAgICAgKDdVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRVhUSV9SVFNSX1RSN19Nc2sgICAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IEVYVElfUlRTUl9UUjdfUG9zKSAgICAgICAgLyohPCAweDAwMDAwMDgwICovDQojZGVmaW5lIEVYVElfUlRTUl9UUjcgICAgICAgICAgICAgICAgICAgICAgIEVYVElfUlRTUl9UUjdfTXNrICAgICAgICAgICAgICAgICAgLyohPCBSaXNpbmcgdHJpZ2dlciBldmVudCBjb25maWd1cmF0aW9uIGJpdCBvZiBsaW5lIDcgKi8NCiNkZWZpbmUgRVhUSV9SVFNSX1RSOF9Qb3MgICAgICAgICAgICAgICAgICAgKDhVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRVhUSV9SVFNSX1RSOF9Nc2sgICAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IEVYVElfUlRTUl9UUjhfUG9zKSAgICAgICAgLyohPCAweDAwMDAwMTAwICovDQojZGVmaW5lIEVYVElfUlRTUl9UUjggICAgICAgICAgICAgICAgICAgICAgIEVYVElfUlRTUl9UUjhfTXNrICAgICAgICAgICAgICAgICAgLyohPCBSaXNpbmcgdHJpZ2dlciBldmVudCBjb25maWd1cmF0aW9uIGJpdCBvZiBsaW5lIDggKi8NCiNkZWZpbmUgRVhUSV9SVFNSX1RSOV9Qb3MgICAgICAgICAgICAgICAgICAgKDlVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRVhUSV9SVFNSX1RSOV9Nc2sgICAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IEVYVElfUlRTUl9UUjlfUG9zKSAgICAgICAgLyohPCAweDAwMDAwMjAwICovDQojZGVmaW5lIEVYVElfUlRTUl9UUjkgICAgICAgICAgICAgICAgICAgICAgIEVYVElfUlRTUl9UUjlfTXNrICAgICAgICAgICAgICAgICAgLyohPCBSaXNpbmcgdHJpZ2dlciBldmVudCBjb25maWd1cmF0aW9uIGJpdCBvZiBsaW5lIDkgKi8NCiNkZWZpbmUgRVhUSV9SVFNSX1RSMTBfUG9zICAgICAgICAgICAgICAgICAgKDEwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRVhUSV9SVFNSX1RSMTBfTXNrICAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IEVYVElfUlRTUl9UUjEwX1BvcykgICAgICAgLyohPCAweDAwMDAwNDAwICovDQojZGVmaW5lIEVYVElfUlRTUl9UUjEwICAgICAgICAgICAgICAgICAgICAgIEVYVElfUlRTUl9UUjEwX01zayAgICAgICAgICAgICAgICAgLyohPCBSaXNpbmcgdHJpZ2dlciBldmVudCBjb25maWd1cmF0aW9uIGJpdCBvZiBsaW5lIDEwICovDQojZGVmaW5lIEVYVElfUlRTUl9UUjExX1BvcyAgICAgICAgICAgICAgICAgICgxMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEVYVElfUlRTUl9UUjExX01zayAgICAgICAgICAgICAgICAgICgweDFVTCA8PCBFWFRJX1JUU1JfVFIxMV9Qb3MpICAgICAgIC8qITwgMHgwMDAwMDgwMCAqLw0KI2RlZmluZSBFWFRJX1JUU1JfVFIxMSAgICAgICAgICAgICAgICAgICAgICBFWFRJX1JUU1JfVFIxMV9Nc2sgICAgICAgICAgICAgICAgIC8qITwgUmlzaW5nIHRyaWdnZXIgZXZlbnQgY29uZmlndXJhdGlvbiBiaXQgb2YgbGluZSAxMSAqLw0KI2RlZmluZSBFWFRJX1JUU1JfVFIxMl9Qb3MgICAgICAgICAgICAgICAgICAoMTJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBFWFRJX1JUU1JfVFIxMl9Nc2sgICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgRVhUSV9SVFNSX1RSMTJfUG9zKSAgICAgICAvKiE8IDB4MDAwMDEwMDAgKi8NCiNkZWZpbmUgRVhUSV9SVFNSX1RSMTIgICAgICAgICAgICAgICAgICAgICAgRVhUSV9SVFNSX1RSMTJfTXNrICAgICAgICAgICAgICAgICAvKiE8IFJpc2luZyB0cmlnZ2VyIGV2ZW50IGNvbmZpZ3VyYXRpb24gYml0IG9mIGxpbmUgMTIgKi8NCiNkZWZpbmUgRVhUSV9SVFNSX1RSMTNfUG9zICAgICAgICAgICAgICAgICAgKDEzVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRVhUSV9SVFNSX1RSMTNfTXNrICAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IEVYVElfUlRTUl9UUjEzX1BvcykgICAgICAgLyohPCAweDAwMDAyMDAwICovDQojZGVmaW5lIEVYVElfUlRTUl9UUjEzICAgICAgICAgICAgICAgICAgICAgIEVYVElfUlRTUl9UUjEzX01zayAgICAgICAgICAgICAgICAgLyohPCBSaXNpbmcgdHJpZ2dlciBldmVudCBjb25maWd1cmF0aW9uIGJpdCBvZiBsaW5lIDEzICovDQojZGVmaW5lIEVYVElfUlRTUl9UUjE0X1BvcyAgICAgICAgICAgICAgICAgICgxNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEVYVElfUlRTUl9UUjE0X01zayAgICAgICAgICAgICAgICAgICgweDFVTCA8PCBFWFRJX1JUU1JfVFIxNF9Qb3MpICAgICAgIC8qITwgMHgwMDAwNDAwMCAqLw0KI2RlZmluZSBFWFRJX1JUU1JfVFIxNCAgICAgICAgICAgICAgICAgICAgICBFWFRJX1JUU1JfVFIxNF9Nc2sgICAgICAgICAgICAgICAgIC8qITwgUmlzaW5nIHRyaWdnZXIgZXZlbnQgY29uZmlndXJhdGlvbiBiaXQgb2YgbGluZSAxNCAqLw0KI2RlZmluZSBFWFRJX1JUU1JfVFIxNV9Qb3MgICAgICAgICAgICAgICAgICAoMTVVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBFWFRJX1JUU1JfVFIxNV9Nc2sgICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgRVhUSV9SVFNSX1RSMTVfUG9zKSAgICAgICAvKiE8IDB4MDAwMDgwMDAgKi8NCiNkZWZpbmUgRVhUSV9SVFNSX1RSMTUgICAgICAgICAgICAgICAgICAgICAgRVhUSV9SVFNSX1RSMTVfTXNrICAgICAgICAgICAgICAgICAvKiE8IFJpc2luZyB0cmlnZ2VyIGV2ZW50IGNvbmZpZ3VyYXRpb24gYml0IG9mIGxpbmUgMTUgKi8NCiNkZWZpbmUgRVhUSV9SVFNSX1RSMTZfUG9zICAgICAgICAgICAgICAgICAgKDE2VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRVhUSV9SVFNSX1RSMTZfTXNrICAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IEVYVElfUlRTUl9UUjE2X1BvcykgICAgICAgLyohPCAweDAwMDEwMDAwICovDQojZGVmaW5lIEVYVElfUlRTUl9UUjE2ICAgICAgICAgICAgICAgICAgICAgIEVYVElfUlRTUl9UUjE2X01zayAgICAgICAgICAgICAgICAgLyohPCBSaXNpbmcgdHJpZ2dlciBldmVudCBjb25maWd1cmF0aW9uIGJpdCBvZiBsaW5lIDE2ICovDQojZGVmaW5lIEVYVElfUlRTUl9UUjE3X1BvcyAgICAgICAgICAgICAgICAgICgxN1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEVYVElfUlRTUl9UUjE3X01zayAgICAgICAgICAgICAgICAgICgweDFVTCA8PCBFWFRJX1JUU1JfVFIxN19Qb3MpICAgICAgIC8qITwgMHgwMDAyMDAwMCAqLw0KI2RlZmluZSBFWFRJX1JUU1JfVFIxNyAgICAgICAgICAgICAgICAgICAgICBFWFRJX1JUU1JfVFIxN19Nc2sgICAgICAgICAgICAgICAgIC8qITwgUmlzaW5nIHRyaWdnZXIgZXZlbnQgY29uZmlndXJhdGlvbiBiaXQgb2YgbGluZSAxNyAqLw0KI2RlZmluZSBFWFRJX1JUU1JfVFIxOF9Qb3MgICAgICAgICAgICAgICAgICAoMThVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBFWFRJX1JUU1JfVFIxOF9Nc2sgICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgRVhUSV9SVFNSX1RSMThfUG9zKSAgICAgICAvKiE8IDB4MDAwNDAwMDAgKi8NCiNkZWZpbmUgRVhUSV9SVFNSX1RSMTggICAgICAgICAgICAgICAgICAgICAgRVhUSV9SVFNSX1RSMThfTXNrICAgICAgICAgICAgICAgICAvKiE8IFJpc2luZyB0cmlnZ2VyIGV2ZW50IGNvbmZpZ3VyYXRpb24gYml0IG9mIGxpbmUgMTggKi8NCiNkZWZpbmUgRVhUSV9SVFNSX1RSMTlfUG9zICAgICAgICAgICAgICAgICAgKDE5VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRVhUSV9SVFNSX1RSMTlfTXNrICAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IEVYVElfUlRTUl9UUjE5X1BvcykgICAgICAgLyohPCAweDAwMDgwMDAwICovDQojZGVmaW5lIEVYVElfUlRTUl9UUjE5ICAgICAgICAgICAgICAgICAgICAgIEVYVElfUlRTUl9UUjE5X01zayAgICAgICAgICAgICAgICAgLyohPCBSaXNpbmcgdHJpZ2dlciBldmVudCBjb25maWd1cmF0aW9uIGJpdCBvZiBsaW5lIDE5ICovDQojZGVmaW5lIEVYVElfUlRTUl9UUjIwX1BvcyAgICAgICAgICAgICAgICAgICgyMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEVYVElfUlRTUl9UUjIwX01zayAgICAgICAgICAgICAgICAgICgweDFVTCA8PCBFWFRJX1JUU1JfVFIyMF9Qb3MpICAgICAgIC8qITwgMHgwMDEwMDAwMCAqLw0KI2RlZmluZSBFWFRJX1JUU1JfVFIyMCAgICAgICAgICAgICAgICAgICAgICBFWFRJX1JUU1JfVFIyMF9Nc2sgICAgICAgICAgICAgICAgIC8qITwgUmlzaW5nIHRyaWdnZXIgZXZlbnQgY29uZmlndXJhdGlvbiBiaXQgb2YgbGluZSAyMCAqLw0KI2RlZmluZSBFWFRJX1JUU1JfVFIyMV9Qb3MgICAgICAgICAgICAgICAgICAoMjFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBFWFRJX1JUU1JfVFIyMV9Nc2sgICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgRVhUSV9SVFNSX1RSMjFfUG9zKSAgICAgICAvKiE8IDB4MDAyMDAwMDAgKi8NCiNkZWZpbmUgRVhUSV9SVFNSX1RSMjEgICAgICAgICAgICAgICAgICAgICAgRVhUSV9SVFNSX1RSMjFfTXNrICAgICAgICAgICAgICAgICAvKiE8IFJpc2luZyB0cmlnZ2VyIGV2ZW50IGNvbmZpZ3VyYXRpb24gYml0IG9mIGxpbmUgMjEgKi8NCiNkZWZpbmUgRVhUSV9SVFNSX1RSMjJfUG9zICAgICAgICAgICAgICAgICAgKDIyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRVhUSV9SVFNSX1RSMjJfTXNrICAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IEVYVElfUlRTUl9UUjIyX1BvcykgICAgICAgLyohPCAweDAwNDAwMDAwICovDQojZGVmaW5lIEVYVElfUlRTUl9UUjIyICAgICAgICAgICAgICAgICAgICAgIEVYVElfUlRTUl9UUjIyX01zayAgICAgICAgICAgICAgICAgLyohPCBSaXNpbmcgdHJpZ2dlciBldmVudCBjb25maWd1cmF0aW9uIGJpdCBvZiBsaW5lIDIyICovDQojZGVmaW5lIEVYVElfUlRTUl9UUjIzX1BvcyAgICAgICAgICAgICAgICAgICgyM1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEVYVElfUlRTUl9UUjIzX01zayAgICAgICAgICAgICAgICAgICgweDFVTCA8PCBFWFRJX1JUU1JfVFIyM19Qb3MpICAgICAgIC8qITwgMHgwMDgwMDAwMCAqLw0KI2RlZmluZSBFWFRJX1JUU1JfVFIyMyAgICAgICAgICAgICAgICAgICAgICBFWFRJX1JUU1JfVFIyM19Nc2sgICAgICAgICAgICAgICAgIC8qITwgUmlzaW5nIHRyaWdnZXIgZXZlbnQgY29uZmlndXJhdGlvbiBiaXQgb2YgbGluZSAyMyAqLw0KDQovKiBSZWZlcmVuY2VzIERlZmluZXMgKi8NCiNkZWZpbmUgIEVYVElfUlRTUl9SVDAgRVhUSV9SVFNSX1RSMA0KI2RlZmluZSAgRVhUSV9SVFNSX1JUMSBFWFRJX1JUU1JfVFIxDQojZGVmaW5lICBFWFRJX1JUU1JfUlQyIEVYVElfUlRTUl9UUjINCiNkZWZpbmUgIEVYVElfUlRTUl9SVDMgRVhUSV9SVFNSX1RSMw0KI2RlZmluZSAgRVhUSV9SVFNSX1JUNCBFWFRJX1JUU1JfVFI0DQojZGVmaW5lICBFWFRJX1JUU1JfUlQ1IEVYVElfUlRTUl9UUjUNCiNkZWZpbmUgIEVYVElfUlRTUl9SVDYgRVhUSV9SVFNSX1RSNg0KI2RlZmluZSAgRVhUSV9SVFNSX1JUNyBFWFRJX1JUU1JfVFI3DQojZGVmaW5lICBFWFRJX1JUU1JfUlQ4IEVYVElfUlRTUl9UUjgNCiNkZWZpbmUgIEVYVElfUlRTUl9SVDkgRVhUSV9SVFNSX1RSOQ0KI2RlZmluZSAgRVhUSV9SVFNSX1JUMTAgRVhUSV9SVFNSX1RSMTANCiNkZWZpbmUgIEVYVElfUlRTUl9SVDExIEVYVElfUlRTUl9UUjExDQojZGVmaW5lICBFWFRJX1JUU1JfUlQxMiBFWFRJX1JUU1JfVFIxMg0KI2RlZmluZSAgRVhUSV9SVFNSX1JUMTMgRVhUSV9SVFNSX1RSMTMNCiNkZWZpbmUgIEVYVElfUlRTUl9SVDE0IEVYVElfUlRTUl9UUjE0DQojZGVmaW5lICBFWFRJX1JUU1JfUlQxNSBFWFRJX1JUU1JfVFIxNQ0KI2RlZmluZSAgRVhUSV9SVFNSX1JUMTYgRVhUSV9SVFNSX1RSMTYNCiNkZWZpbmUgIEVYVElfUlRTUl9SVDE3IEVYVElfUlRTUl9UUjE3DQojZGVmaW5lICBFWFRJX1JUU1JfUlQxOCBFWFRJX1JUU1JfVFIxOA0KI2RlZmluZSAgRVhUSV9SVFNSX1JUMTkgRVhUSV9SVFNSX1RSMTkNCiNkZWZpbmUgIEVYVElfUlRTUl9SVDIwIEVYVElfUlRTUl9UUjIwDQojZGVmaW5lICBFWFRJX1JUU1JfUlQyMSBFWFRJX1JUU1JfVFIyMQ0KI2RlZmluZSAgRVhUSV9SVFNSX1JUMjIgRVhUSV9SVFNSX1RSMjINCiNkZWZpbmUgIEVYVElfUlRTUl9SVDIzIEVYVElfUlRTUl9UUjIzDQoNCi8qKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBFWFRJX0ZUU1IgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIEVYVElfRlRTUl9UUjBfUG9zICAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEVYVElfRlRTUl9UUjBfTXNrICAgICAgICAgICAgICAgICAgICgweDFVTCA8PCBFWFRJX0ZUU1JfVFIwX1BvcykgICAgICAgIC8qITwgMHgwMDAwMDAwMSAqLw0KI2RlZmluZSBFWFRJX0ZUU1JfVFIwICAgICAgICAgICAgICAgICAgICAgICBFWFRJX0ZUU1JfVFIwX01zayAgICAgICAgICAgICAgICAgIC8qITwgRmFsbGluZyB0cmlnZ2VyIGV2ZW50IGNvbmZpZ3VyYXRpb24gYml0IG9mIGxpbmUgMCAqLw0KI2RlZmluZSBFWFRJX0ZUU1JfVFIxX1BvcyAgICAgICAgICAgICAgICAgICAoMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBFWFRJX0ZUU1JfVFIxX01zayAgICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgRVhUSV9GVFNSX1RSMV9Qb3MpICAgICAgICAvKiE8IDB4MDAwMDAwMDIgKi8NCiNkZWZpbmUgRVhUSV9GVFNSX1RSMSAgICAgICAgICAgICAgICAgICAgICAgRVhUSV9GVFNSX1RSMV9Nc2sgICAgICAgICAgICAgICAgICAvKiE8IEZhbGxpbmcgdHJpZ2dlciBldmVudCBjb25maWd1cmF0aW9uIGJpdCBvZiBsaW5lIDEgKi8NCiNkZWZpbmUgRVhUSV9GVFNSX1RSMl9Qb3MgICAgICAgICAgICAgICAgICAgKDJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRVhUSV9GVFNSX1RSMl9Nc2sgICAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IEVYVElfRlRTUl9UUjJfUG9zKSAgICAgICAgLyohPCAweDAwMDAwMDA0ICovDQojZGVmaW5lIEVYVElfRlRTUl9UUjIgICAgICAgICAgICAgICAgICAgICAgIEVYVElfRlRTUl9UUjJfTXNrICAgICAgICAgICAgICAgICAgLyohPCBGYWxsaW5nIHRyaWdnZXIgZXZlbnQgY29uZmlndXJhdGlvbiBiaXQgb2YgbGluZSAyICovDQojZGVmaW5lIEVYVElfRlRTUl9UUjNfUG9zICAgICAgICAgICAgICAgICAgICgzVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEVYVElfRlRTUl9UUjNfTXNrICAgICAgICAgICAgICAgICAgICgweDFVTCA8PCBFWFRJX0ZUU1JfVFIzX1BvcykgICAgICAgIC8qITwgMHgwMDAwMDAwOCAqLw0KI2RlZmluZSBFWFRJX0ZUU1JfVFIzICAgICAgICAgICAgICAgICAgICAgICBFWFRJX0ZUU1JfVFIzX01zayAgICAgICAgICAgICAgICAgIC8qITwgRmFsbGluZyB0cmlnZ2VyIGV2ZW50IGNvbmZpZ3VyYXRpb24gYml0IG9mIGxpbmUgMyAqLw0KI2RlZmluZSBFWFRJX0ZUU1JfVFI0X1BvcyAgICAgICAgICAgICAgICAgICAoNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBFWFRJX0ZUU1JfVFI0X01zayAgICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgRVhUSV9GVFNSX1RSNF9Qb3MpICAgICAgICAvKiE8IDB4MDAwMDAwMTAgKi8NCiNkZWZpbmUgRVhUSV9GVFNSX1RSNCAgICAgICAgICAgICAgICAgICAgICAgRVhUSV9GVFNSX1RSNF9Nc2sgICAgICAgICAgICAgICAgICAvKiE8IEZhbGxpbmcgdHJpZ2dlciBldmVudCBjb25maWd1cmF0aW9uIGJpdCBvZiBsaW5lIDQgKi8NCiNkZWZpbmUgRVhUSV9GVFNSX1RSNV9Qb3MgICAgICAgICAgICAgICAgICAgKDVVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRVhUSV9GVFNSX1RSNV9Nc2sgICAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IEVYVElfRlRTUl9UUjVfUG9zKSAgICAgICAgLyohPCAweDAwMDAwMDIwICovDQojZGVmaW5lIEVYVElfRlRTUl9UUjUgICAgICAgICAgICAgICAgICAgICAgIEVYVElfRlRTUl9UUjVfTXNrICAgICAgICAgICAgICAgICAgLyohPCBGYWxsaW5nIHRyaWdnZXIgZXZlbnQgY29uZmlndXJhdGlvbiBiaXQgb2YgbGluZSA1ICovDQojZGVmaW5lIEVYVElfRlRTUl9UUjZfUG9zICAgICAgICAgICAgICAgICAgICg2VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEVYVElfRlRTUl9UUjZfTXNrICAgICAgICAgICAgICAgICAgICgweDFVTCA8PCBFWFRJX0ZUU1JfVFI2X1BvcykgICAgICAgIC8qITwgMHgwMDAwMDA0MCAqLw0KI2RlZmluZSBFWFRJX0ZUU1JfVFI2ICAgICAgICAgICAgICAgICAgICAgICBFWFRJX0ZUU1JfVFI2X01zayAgICAgICAgICAgICAgICAgIC8qITwgRmFsbGluZyB0cmlnZ2VyIGV2ZW50IGNvbmZpZ3VyYXRpb24gYml0IG9mIGxpbmUgNiAqLw0KI2RlZmluZSBFWFRJX0ZUU1JfVFI3X1BvcyAgICAgICAgICAgICAgICAgICAoN1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBFWFRJX0ZUU1JfVFI3X01zayAgICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgRVhUSV9GVFNSX1RSN19Qb3MpICAgICAgICAvKiE8IDB4MDAwMDAwODAgKi8NCiNkZWZpbmUgRVhUSV9GVFNSX1RSNyAgICAgICAgICAgICAgICAgICAgICAgRVhUSV9GVFNSX1RSN19Nc2sgICAgICAgICAgICAgICAgICAvKiE8IEZhbGxpbmcgdHJpZ2dlciBldmVudCBjb25maWd1cmF0aW9uIGJpdCBvZiBsaW5lIDcgKi8NCiNkZWZpbmUgRVhUSV9GVFNSX1RSOF9Qb3MgICAgICAgICAgICAgICAgICAgKDhVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRVhUSV9GVFNSX1RSOF9Nc2sgICAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IEVYVElfRlRTUl9UUjhfUG9zKSAgICAgICAgLyohPCAweDAwMDAwMTAwICovDQojZGVmaW5lIEVYVElfRlRTUl9UUjggICAgICAgICAgICAgICAgICAgICAgIEVYVElfRlRTUl9UUjhfTXNrICAgICAgICAgICAgICAgICAgLyohPCBGYWxsaW5nIHRyaWdnZXIgZXZlbnQgY29uZmlndXJhdGlvbiBiaXQgb2YgbGluZSA4ICovDQojZGVmaW5lIEVYVElfRlRTUl9UUjlfUG9zICAgICAgICAgICAgICAgICAgICg5VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEVYVElfRlRTUl9UUjlfTXNrICAgICAgICAgICAgICAgICAgICgweDFVTCA8PCBFWFRJX0ZUU1JfVFI5X1BvcykgICAgICAgIC8qITwgMHgwMDAwMDIwMCAqLw0KI2RlZmluZSBFWFRJX0ZUU1JfVFI5ICAgICAgICAgICAgICAgICAgICAgICBFWFRJX0ZUU1JfVFI5X01zayAgICAgICAgICAgICAgICAgIC8qITwgRmFsbGluZyB0cmlnZ2VyIGV2ZW50IGNvbmZpZ3VyYXRpb24gYml0IG9mIGxpbmUgOSAqLw0KI2RlZmluZSBFWFRJX0ZUU1JfVFIxMF9Qb3MgICAgICAgICAgICAgICAgICAoMTBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBFWFRJX0ZUU1JfVFIxMF9Nc2sgICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgRVhUSV9GVFNSX1RSMTBfUG9zKSAgICAgICAvKiE8IDB4MDAwMDA0MDAgKi8NCiNkZWZpbmUgRVhUSV9GVFNSX1RSMTAgICAgICAgICAgICAgICAgICAgICAgRVhUSV9GVFNSX1RSMTBfTXNrICAgICAgICAgICAgICAgICAvKiE8IEZhbGxpbmcgdHJpZ2dlciBldmVudCBjb25maWd1cmF0aW9uIGJpdCBvZiBsaW5lIDEwICovDQojZGVmaW5lIEVYVElfRlRTUl9UUjExX1BvcyAgICAgICAgICAgICAgICAgICgxMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEVYVElfRlRTUl9UUjExX01zayAgICAgICAgICAgICAgICAgICgweDFVTCA8PCBFWFRJX0ZUU1JfVFIxMV9Qb3MpICAgICAgIC8qITwgMHgwMDAwMDgwMCAqLw0KI2RlZmluZSBFWFRJX0ZUU1JfVFIxMSAgICAgICAgICAgICAgICAgICAgICBFWFRJX0ZUU1JfVFIxMV9Nc2sgICAgICAgICAgICAgICAgIC8qITwgRmFsbGluZyB0cmlnZ2VyIGV2ZW50IGNvbmZpZ3VyYXRpb24gYml0IG9mIGxpbmUgMTEgKi8NCiNkZWZpbmUgRVhUSV9GVFNSX1RSMTJfUG9zICAgICAgICAgICAgICAgICAgKDEyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRVhUSV9GVFNSX1RSMTJfTXNrICAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IEVYVElfRlRTUl9UUjEyX1BvcykgICAgICAgLyohPCAweDAwMDAxMDAwICovDQojZGVmaW5lIEVYVElfRlRTUl9UUjEyICAgICAgICAgICAgICAgICAgICAgIEVYVElfRlRTUl9UUjEyX01zayAgICAgICAgICAgICAgICAgLyohPCBGYWxsaW5nIHRyaWdnZXIgZXZlbnQgY29uZmlndXJhdGlvbiBiaXQgb2YgbGluZSAxMiAqLw0KI2RlZmluZSBFWFRJX0ZUU1JfVFIxM19Qb3MgICAgICAgICAgICAgICAgICAoMTNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBFWFRJX0ZUU1JfVFIxM19Nc2sgICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgRVhUSV9GVFNSX1RSMTNfUG9zKSAgICAgICAvKiE8IDB4MDAwMDIwMDAgKi8NCiNkZWZpbmUgRVhUSV9GVFNSX1RSMTMgICAgICAgICAgICAgICAgICAgICAgRVhUSV9GVFNSX1RSMTNfTXNrICAgICAgICAgICAgICAgICAvKiE8IEZhbGxpbmcgdHJpZ2dlciBldmVudCBjb25maWd1cmF0aW9uIGJpdCBvZiBsaW5lIDEzICovDQojZGVmaW5lIEVYVElfRlRTUl9UUjE0X1BvcyAgICAgICAgICAgICAgICAgICgxNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEVYVElfRlRTUl9UUjE0X01zayAgICAgICAgICAgICAgICAgICgweDFVTCA8PCBFWFRJX0ZUU1JfVFIxNF9Qb3MpICAgICAgIC8qITwgMHgwMDAwNDAwMCAqLw0KI2RlZmluZSBFWFRJX0ZUU1JfVFIxNCAgICAgICAgICAgICAgICAgICAgICBFWFRJX0ZUU1JfVFIxNF9Nc2sgICAgICAgICAgICAgICAgIC8qITwgRmFsbGluZyB0cmlnZ2VyIGV2ZW50IGNvbmZpZ3VyYXRpb24gYml0IG9mIGxpbmUgMTQgKi8NCiNkZWZpbmUgRVhUSV9GVFNSX1RSMTVfUG9zICAgICAgICAgICAgICAgICAgKDE1VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRVhUSV9GVFNSX1RSMTVfTXNrICAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IEVYVElfRlRTUl9UUjE1X1BvcykgICAgICAgLyohPCAweDAwMDA4MDAwICovDQojZGVmaW5lIEVYVElfRlRTUl9UUjE1ICAgICAgICAgICAgICAgICAgICAgIEVYVElfRlRTUl9UUjE1X01zayAgICAgICAgICAgICAgICAgLyohPCBGYWxsaW5nIHRyaWdnZXIgZXZlbnQgY29uZmlndXJhdGlvbiBiaXQgb2YgbGluZSAxNSAqLw0KI2RlZmluZSBFWFRJX0ZUU1JfVFIxNl9Qb3MgICAgICAgICAgICAgICAgICAoMTZVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBFWFRJX0ZUU1JfVFIxNl9Nc2sgICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgRVhUSV9GVFNSX1RSMTZfUG9zKSAgICAgICAvKiE8IDB4MDAwMTAwMDAgKi8NCiNkZWZpbmUgRVhUSV9GVFNSX1RSMTYgICAgICAgICAgICAgICAgICAgICAgRVhUSV9GVFNSX1RSMTZfTXNrICAgICAgICAgICAgICAgICAvKiE8IEZhbGxpbmcgdHJpZ2dlciBldmVudCBjb25maWd1cmF0aW9uIGJpdCBvZiBsaW5lIDE2ICovDQojZGVmaW5lIEVYVElfRlRTUl9UUjE3X1BvcyAgICAgICAgICAgICAgICAgICgxN1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEVYVElfRlRTUl9UUjE3X01zayAgICAgICAgICAgICAgICAgICgweDFVTCA8PCBFWFRJX0ZUU1JfVFIxN19Qb3MpICAgICAgIC8qITwgMHgwMDAyMDAwMCAqLw0KI2RlZmluZSBFWFRJX0ZUU1JfVFIxNyAgICAgICAgICAgICAgICAgICAgICBFWFRJX0ZUU1JfVFIxN19Nc2sgICAgICAgICAgICAgICAgIC8qITwgRmFsbGluZyB0cmlnZ2VyIGV2ZW50IGNvbmZpZ3VyYXRpb24gYml0IG9mIGxpbmUgMTcgKi8NCiNkZWZpbmUgRVhUSV9GVFNSX1RSMThfUG9zICAgICAgICAgICAgICAgICAgKDE4VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRVhUSV9GVFNSX1RSMThfTXNrICAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IEVYVElfRlRTUl9UUjE4X1BvcykgICAgICAgLyohPCAweDAwMDQwMDAwICovDQojZGVmaW5lIEVYVElfRlRTUl9UUjE4ICAgICAgICAgICAgICAgICAgICAgIEVYVElfRlRTUl9UUjE4X01zayAgICAgICAgICAgICAgICAgLyohPCBGYWxsaW5nIHRyaWdnZXIgZXZlbnQgY29uZmlndXJhdGlvbiBiaXQgb2YgbGluZSAxOCAqLw0KI2RlZmluZSBFWFRJX0ZUU1JfVFIxOV9Qb3MgICAgICAgICAgICAgICAgICAoMTlVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBFWFRJX0ZUU1JfVFIxOV9Nc2sgICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgRVhUSV9GVFNSX1RSMTlfUG9zKSAgICAgICAvKiE8IDB4MDAwODAwMDAgKi8NCiNkZWZpbmUgRVhUSV9GVFNSX1RSMTkgICAgICAgICAgICAgICAgICAgICAgRVhUSV9GVFNSX1RSMTlfTXNrICAgICAgICAgICAgICAgICAvKiE8IEZhbGxpbmcgdHJpZ2dlciBldmVudCBjb25maWd1cmF0aW9uIGJpdCBvZiBsaW5lIDE5ICovDQojZGVmaW5lIEVYVElfRlRTUl9UUjIwX1BvcyAgICAgICAgICAgICAgICAgICgyMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEVYVElfRlRTUl9UUjIwX01zayAgICAgICAgICAgICAgICAgICgweDFVTCA8PCBFWFRJX0ZUU1JfVFIyMF9Qb3MpICAgICAgIC8qITwgMHgwMDEwMDAwMCAqLw0KI2RlZmluZSBFWFRJX0ZUU1JfVFIyMCAgICAgICAgICAgICAgICAgICAgICBFWFRJX0ZUU1JfVFIyMF9Nc2sgICAgICAgICAgICAgICAgIC8qITwgRmFsbGluZyB0cmlnZ2VyIGV2ZW50IGNvbmZpZ3VyYXRpb24gYml0IG9mIGxpbmUgMjAgKi8NCiNkZWZpbmUgRVhUSV9GVFNSX1RSMjFfUG9zICAgICAgICAgICAgICAgICAgKDIxVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRVhUSV9GVFNSX1RSMjFfTXNrICAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IEVYVElfRlRTUl9UUjIxX1BvcykgICAgICAgLyohPCAweDAwMjAwMDAwICovDQojZGVmaW5lIEVYVElfRlRTUl9UUjIxICAgICAgICAgICAgICAgICAgICAgIEVYVElfRlRTUl9UUjIxX01zayAgICAgICAgICAgICAgICAgLyohPCBGYWxsaW5nIHRyaWdnZXIgZXZlbnQgY29uZmlndXJhdGlvbiBiaXQgb2YgbGluZSAyMSAqLw0KI2RlZmluZSBFWFRJX0ZUU1JfVFIyMl9Qb3MgICAgICAgICAgICAgICAgICAoMjJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBFWFRJX0ZUU1JfVFIyMl9Nc2sgICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgRVhUSV9GVFNSX1RSMjJfUG9zKSAgICAgICAvKiE8IDB4MDA0MDAwMDAgKi8NCiNkZWZpbmUgRVhUSV9GVFNSX1RSMjIgICAgICAgICAgICAgICAgICAgICAgRVhUSV9GVFNSX1RSMjJfTXNrICAgICAgICAgICAgICAgICAvKiE8IEZhbGxpbmcgdHJpZ2dlciBldmVudCBjb25maWd1cmF0aW9uIGJpdCBvZiBsaW5lIDIyICovDQojZGVmaW5lIEVYVElfRlRTUl9UUjIzX1BvcyAgICAgICAgICAgICAgICAgICgyM1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEVYVElfRlRTUl9UUjIzX01zayAgICAgICAgICAgICAgICAgICgweDFVTCA8PCBFWFRJX0ZUU1JfVFIyM19Qb3MpICAgICAgIC8qITwgMHgwMDgwMDAwMCAqLw0KI2RlZmluZSBFWFRJX0ZUU1JfVFIyMyAgICAgICAgICAgICAgICAgICAgICBFWFRJX0ZUU1JfVFIyM19Nc2sgICAgICAgICAgICAgICAgIC8qITwgRmFsbGluZyB0cmlnZ2VyIGV2ZW50IGNvbmZpZ3VyYXRpb24gYml0IG9mIGxpbmUgMjMgKi8NCg0KLyogUmVmZXJlbmNlcyBEZWZpbmVzICovDQojZGVmaW5lICBFWFRJX0ZUU1JfRlQwIEVYVElfRlRTUl9UUjANCiNkZWZpbmUgIEVYVElfRlRTUl9GVDEgRVhUSV9GVFNSX1RSMQ0KI2RlZmluZSAgRVhUSV9GVFNSX0ZUMiBFWFRJX0ZUU1JfVFIyDQojZGVmaW5lICBFWFRJX0ZUU1JfRlQzIEVYVElfRlRTUl9UUjMNCiNkZWZpbmUgIEVYVElfRlRTUl9GVDQgRVhUSV9GVFNSX1RSNA0KI2RlZmluZSAgRVhUSV9GVFNSX0ZUNSBFWFRJX0ZUU1JfVFI1DQojZGVmaW5lICBFWFRJX0ZUU1JfRlQ2IEVYVElfRlRTUl9UUjYNCiNkZWZpbmUgIEVYVElfRlRTUl9GVDcgRVhUSV9GVFNSX1RSNw0KI2RlZmluZSAgRVhUSV9GVFNSX0ZUOCBFWFRJX0ZUU1JfVFI4DQojZGVmaW5lICBFWFRJX0ZUU1JfRlQ5IEVYVElfRlRTUl9UUjkNCiNkZWZpbmUgIEVYVElfRlRTUl9GVDEwIEVYVElfRlRTUl9UUjEwDQojZGVmaW5lICBFWFRJX0ZUU1JfRlQxMSBFWFRJX0ZUU1JfVFIxMQ0KI2RlZmluZSAgRVhUSV9GVFNSX0ZUMTIgRVhUSV9GVFNSX1RSMTINCiNkZWZpbmUgIEVYVElfRlRTUl9GVDEzIEVYVElfRlRTUl9UUjEzDQojZGVmaW5lICBFWFRJX0ZUU1JfRlQxNCBFWFRJX0ZUU1JfVFIxNA0KI2RlZmluZSAgRVhUSV9GVFNSX0ZUMTUgRVhUSV9GVFNSX1RSMTUNCiNkZWZpbmUgIEVYVElfRlRTUl9GVDE2IEVYVElfRlRTUl9UUjE2DQojZGVmaW5lICBFWFRJX0ZUU1JfRlQxNyBFWFRJX0ZUU1JfVFIxNw0KI2RlZmluZSAgRVhUSV9GVFNSX0ZUMTggRVhUSV9GVFNSX1RSMTgNCiNkZWZpbmUgIEVYVElfRlRTUl9GVDE5IEVYVElfRlRTUl9UUjE5DQojZGVmaW5lICBFWFRJX0ZUU1JfRlQyMCBFWFRJX0ZUU1JfVFIyMA0KI2RlZmluZSAgRVhUSV9GVFNSX0ZUMjEgRVhUSV9GVFNSX1RSMjENCiNkZWZpbmUgIEVYVElfRlRTUl9GVDIyIEVYVElfRlRTUl9UUjIyDQojZGVmaW5lICBFWFRJX0ZUU1JfRlQyMyBFWFRJX0ZUU1JfVFIyMw0KDQovKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgRVhUSV9TV0lFUiByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBFWFRJX1NXSUVSX1NXSUVSMF9Qb3MgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBFWFRJX1NXSUVSX1NXSUVSMF9Nc2sgICAgICAgICAgICAgICAoMHgxVUwgPDwgRVhUSV9TV0lFUl9TV0lFUjBfUG9zKSAgICAvKiE8IDB4MDAwMDAwMDEgKi8NCiNkZWZpbmUgRVhUSV9TV0lFUl9TV0lFUjAgICAgICAgICAgICAgICAgICAgRVhUSV9TV0lFUl9TV0lFUjBfTXNrICAgICAgICAgICAgICAvKiE8IFNvZnR3YXJlIEludGVycnVwdCBvbiBsaW5lIDAgKi8NCiNkZWZpbmUgRVhUSV9TV0lFUl9TV0lFUjFfUG9zICAgICAgICAgICAgICAgKDFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRVhUSV9TV0lFUl9TV0lFUjFfTXNrICAgICAgICAgICAgICAgKDB4MVVMIDw8IEVYVElfU1dJRVJfU1dJRVIxX1BvcykgICAgLyohPCAweDAwMDAwMDAyICovDQojZGVmaW5lIEVYVElfU1dJRVJfU1dJRVIxICAgICAgICAgICAgICAgICAgIEVYVElfU1dJRVJfU1dJRVIxX01zayAgICAgICAgICAgICAgLyohPCBTb2Z0d2FyZSBJbnRlcnJ1cHQgb24gbGluZSAxICovDQojZGVmaW5lIEVYVElfU1dJRVJfU1dJRVIyX1BvcyAgICAgICAgICAgICAgICgyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEVYVElfU1dJRVJfU1dJRVIyX01zayAgICAgICAgICAgICAgICgweDFVTCA8PCBFWFRJX1NXSUVSX1NXSUVSMl9Qb3MpICAgIC8qITwgMHgwMDAwMDAwNCAqLw0KI2RlZmluZSBFWFRJX1NXSUVSX1NXSUVSMiAgICAgICAgICAgICAgICAgICBFWFRJX1NXSUVSX1NXSUVSMl9Nc2sgICAgICAgICAgICAgIC8qITwgU29mdHdhcmUgSW50ZXJydXB0IG9uIGxpbmUgMiAqLw0KI2RlZmluZSBFWFRJX1NXSUVSX1NXSUVSM19Qb3MgICAgICAgICAgICAgICAoM1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBFWFRJX1NXSUVSX1NXSUVSM19Nc2sgICAgICAgICAgICAgICAoMHgxVUwgPDwgRVhUSV9TV0lFUl9TV0lFUjNfUG9zKSAgICAvKiE8IDB4MDAwMDAwMDggKi8NCiNkZWZpbmUgRVhUSV9TV0lFUl9TV0lFUjMgICAgICAgICAgICAgICAgICAgRVhUSV9TV0lFUl9TV0lFUjNfTXNrICAgICAgICAgICAgICAvKiE8IFNvZnR3YXJlIEludGVycnVwdCBvbiBsaW5lIDMgKi8NCiNkZWZpbmUgRVhUSV9TV0lFUl9TV0lFUjRfUG9zICAgICAgICAgICAgICAgKDRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRVhUSV9TV0lFUl9TV0lFUjRfTXNrICAgICAgICAgICAgICAgKDB4MVVMIDw8IEVYVElfU1dJRVJfU1dJRVI0X1BvcykgICAgLyohPCAweDAwMDAwMDEwICovDQojZGVmaW5lIEVYVElfU1dJRVJfU1dJRVI0ICAgICAgICAgICAgICAgICAgIEVYVElfU1dJRVJfU1dJRVI0X01zayAgICAgICAgICAgICAgLyohPCBTb2Z0d2FyZSBJbnRlcnJ1cHQgb24gbGluZSA0ICovDQojZGVmaW5lIEVYVElfU1dJRVJfU1dJRVI1X1BvcyAgICAgICAgICAgICAgICg1VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEVYVElfU1dJRVJfU1dJRVI1X01zayAgICAgICAgICAgICAgICgweDFVTCA8PCBFWFRJX1NXSUVSX1NXSUVSNV9Qb3MpICAgIC8qITwgMHgwMDAwMDAyMCAqLw0KI2RlZmluZSBFWFRJX1NXSUVSX1NXSUVSNSAgICAgICAgICAgICAgICAgICBFWFRJX1NXSUVSX1NXSUVSNV9Nc2sgICAgICAgICAgICAgIC8qITwgU29mdHdhcmUgSW50ZXJydXB0IG9uIGxpbmUgNSAqLw0KI2RlZmluZSBFWFRJX1NXSUVSX1NXSUVSNl9Qb3MgICAgICAgICAgICAgICAoNlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBFWFRJX1NXSUVSX1NXSUVSNl9Nc2sgICAgICAgICAgICAgICAoMHgxVUwgPDwgRVhUSV9TV0lFUl9TV0lFUjZfUG9zKSAgICAvKiE8IDB4MDAwMDAwNDAgKi8NCiNkZWZpbmUgRVhUSV9TV0lFUl9TV0lFUjYgICAgICAgICAgICAgICAgICAgRVhUSV9TV0lFUl9TV0lFUjZfTXNrICAgICAgICAgICAgICAvKiE8IFNvZnR3YXJlIEludGVycnVwdCBvbiBsaW5lIDYgKi8NCiNkZWZpbmUgRVhUSV9TV0lFUl9TV0lFUjdfUG9zICAgICAgICAgICAgICAgKDdVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRVhUSV9TV0lFUl9TV0lFUjdfTXNrICAgICAgICAgICAgICAgKDB4MVVMIDw8IEVYVElfU1dJRVJfU1dJRVI3X1BvcykgICAgLyohPCAweDAwMDAwMDgwICovDQojZGVmaW5lIEVYVElfU1dJRVJfU1dJRVI3ICAgICAgICAgICAgICAgICAgIEVYVElfU1dJRVJfU1dJRVI3X01zayAgICAgICAgICAgICAgLyohPCBTb2Z0d2FyZSBJbnRlcnJ1cHQgb24gbGluZSA3ICovDQojZGVmaW5lIEVYVElfU1dJRVJfU1dJRVI4X1BvcyAgICAgICAgICAgICAgICg4VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEVYVElfU1dJRVJfU1dJRVI4X01zayAgICAgICAgICAgICAgICgweDFVTCA8PCBFWFRJX1NXSUVSX1NXSUVSOF9Qb3MpICAgIC8qITwgMHgwMDAwMDEwMCAqLw0KI2RlZmluZSBFWFRJX1NXSUVSX1NXSUVSOCAgICAgICAgICAgICAgICAgICBFWFRJX1NXSUVSX1NXSUVSOF9Nc2sgICAgICAgICAgICAgIC8qITwgU29mdHdhcmUgSW50ZXJydXB0IG9uIGxpbmUgOCAqLw0KI2RlZmluZSBFWFRJX1NXSUVSX1NXSUVSOV9Qb3MgICAgICAgICAgICAgICAoOVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBFWFRJX1NXSUVSX1NXSUVSOV9Nc2sgICAgICAgICAgICAgICAoMHgxVUwgPDwgRVhUSV9TV0lFUl9TV0lFUjlfUG9zKSAgICAvKiE8IDB4MDAwMDAyMDAgKi8NCiNkZWZpbmUgRVhUSV9TV0lFUl9TV0lFUjkgICAgICAgICAgICAgICAgICAgRVhUSV9TV0lFUl9TV0lFUjlfTXNrICAgICAgICAgICAgICAvKiE8IFNvZnR3YXJlIEludGVycnVwdCBvbiBsaW5lIDkgKi8NCiNkZWZpbmUgRVhUSV9TV0lFUl9TV0lFUjEwX1BvcyAgICAgICAgICAgICAgKDEwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRVhUSV9TV0lFUl9TV0lFUjEwX01zayAgICAgICAgICAgICAgKDB4MVVMIDw8IEVYVElfU1dJRVJfU1dJRVIxMF9Qb3MpICAgLyohPCAweDAwMDAwNDAwICovDQojZGVmaW5lIEVYVElfU1dJRVJfU1dJRVIxMCAgICAgICAgICAgICAgICAgIEVYVElfU1dJRVJfU1dJRVIxMF9Nc2sgICAgICAgICAgICAgLyohPCBTb2Z0d2FyZSBJbnRlcnJ1cHQgb24gbGluZSAxMCAqLw0KI2RlZmluZSBFWFRJX1NXSUVSX1NXSUVSMTFfUG9zICAgICAgICAgICAgICAoMTFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBFWFRJX1NXSUVSX1NXSUVSMTFfTXNrICAgICAgICAgICAgICAoMHgxVUwgPDwgRVhUSV9TV0lFUl9TV0lFUjExX1BvcykgICAvKiE8IDB4MDAwMDA4MDAgKi8NCiNkZWZpbmUgRVhUSV9TV0lFUl9TV0lFUjExICAgICAgICAgICAgICAgICAgRVhUSV9TV0lFUl9TV0lFUjExX01zayAgICAgICAgICAgICAvKiE8IFNvZnR3YXJlIEludGVycnVwdCBvbiBsaW5lIDExICovDQojZGVmaW5lIEVYVElfU1dJRVJfU1dJRVIxMl9Qb3MgICAgICAgICAgICAgICgxMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEVYVElfU1dJRVJfU1dJRVIxMl9Nc2sgICAgICAgICAgICAgICgweDFVTCA8PCBFWFRJX1NXSUVSX1NXSUVSMTJfUG9zKSAgIC8qITwgMHgwMDAwMTAwMCAqLw0KI2RlZmluZSBFWFRJX1NXSUVSX1NXSUVSMTIgICAgICAgICAgICAgICAgICBFWFRJX1NXSUVSX1NXSUVSMTJfTXNrICAgICAgICAgICAgIC8qITwgU29mdHdhcmUgSW50ZXJydXB0IG9uIGxpbmUgMTIgKi8NCiNkZWZpbmUgRVhUSV9TV0lFUl9TV0lFUjEzX1BvcyAgICAgICAgICAgICAgKDEzVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRVhUSV9TV0lFUl9TV0lFUjEzX01zayAgICAgICAgICAgICAgKDB4MVVMIDw8IEVYVElfU1dJRVJfU1dJRVIxM19Qb3MpICAgLyohPCAweDAwMDAyMDAwICovDQojZGVmaW5lIEVYVElfU1dJRVJfU1dJRVIxMyAgICAgICAgICAgICAgICAgIEVYVElfU1dJRVJfU1dJRVIxM19Nc2sgICAgICAgICAgICAgLyohPCBTb2Z0d2FyZSBJbnRlcnJ1cHQgb24gbGluZSAxMyAqLw0KI2RlZmluZSBFWFRJX1NXSUVSX1NXSUVSMTRfUG9zICAgICAgICAgICAgICAoMTRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBFWFRJX1NXSUVSX1NXSUVSMTRfTXNrICAgICAgICAgICAgICAoMHgxVUwgPDwgRVhUSV9TV0lFUl9TV0lFUjE0X1BvcykgICAvKiE8IDB4MDAwMDQwMDAgKi8NCiNkZWZpbmUgRVhUSV9TV0lFUl9TV0lFUjE0ICAgICAgICAgICAgICAgICAgRVhUSV9TV0lFUl9TV0lFUjE0X01zayAgICAgICAgICAgICAvKiE8IFNvZnR3YXJlIEludGVycnVwdCBvbiBsaW5lIDE0ICovDQojZGVmaW5lIEVYVElfU1dJRVJfU1dJRVIxNV9Qb3MgICAgICAgICAgICAgICgxNVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEVYVElfU1dJRVJfU1dJRVIxNV9Nc2sgICAgICAgICAgICAgICgweDFVTCA8PCBFWFRJX1NXSUVSX1NXSUVSMTVfUG9zKSAgIC8qITwgMHgwMDAwODAwMCAqLw0KI2RlZmluZSBFWFRJX1NXSUVSX1NXSUVSMTUgICAgICAgICAgICAgICAgICBFWFRJX1NXSUVSX1NXSUVSMTVfTXNrICAgICAgICAgICAgIC8qITwgU29mdHdhcmUgSW50ZXJydXB0IG9uIGxpbmUgMTUgKi8NCiNkZWZpbmUgRVhUSV9TV0lFUl9TV0lFUjE2X1BvcyAgICAgICAgICAgICAgKDE2VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRVhUSV9TV0lFUl9TV0lFUjE2X01zayAgICAgICAgICAgICAgKDB4MVVMIDw8IEVYVElfU1dJRVJfU1dJRVIxNl9Qb3MpICAgLyohPCAweDAwMDEwMDAwICovDQojZGVmaW5lIEVYVElfU1dJRVJfU1dJRVIxNiAgICAgICAgICAgICAgICAgIEVYVElfU1dJRVJfU1dJRVIxNl9Nc2sgICAgICAgICAgICAgLyohPCBTb2Z0d2FyZSBJbnRlcnJ1cHQgb24gbGluZSAxNiAqLw0KI2RlZmluZSBFWFRJX1NXSUVSX1NXSUVSMTdfUG9zICAgICAgICAgICAgICAoMTdVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBFWFRJX1NXSUVSX1NXSUVSMTdfTXNrICAgICAgICAgICAgICAoMHgxVUwgPDwgRVhUSV9TV0lFUl9TV0lFUjE3X1BvcykgICAvKiE8IDB4MDAwMjAwMDAgKi8NCiNkZWZpbmUgRVhUSV9TV0lFUl9TV0lFUjE3ICAgICAgICAgICAgICAgICAgRVhUSV9TV0lFUl9TV0lFUjE3X01zayAgICAgICAgICAgICAvKiE8IFNvZnR3YXJlIEludGVycnVwdCBvbiBsaW5lIDE3ICovDQojZGVmaW5lIEVYVElfU1dJRVJfU1dJRVIxOF9Qb3MgICAgICAgICAgICAgICgxOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEVYVElfU1dJRVJfU1dJRVIxOF9Nc2sgICAgICAgICAgICAgICgweDFVTCA8PCBFWFRJX1NXSUVSX1NXSUVSMThfUG9zKSAgIC8qITwgMHgwMDA0MDAwMCAqLw0KI2RlZmluZSBFWFRJX1NXSUVSX1NXSUVSMTggICAgICAgICAgICAgICAgICBFWFRJX1NXSUVSX1NXSUVSMThfTXNrICAgICAgICAgICAgIC8qITwgU29mdHdhcmUgSW50ZXJydXB0IG9uIGxpbmUgMTggKi8NCiNkZWZpbmUgRVhUSV9TV0lFUl9TV0lFUjE5X1BvcyAgICAgICAgICAgICAgKDE5VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRVhUSV9TV0lFUl9TV0lFUjE5X01zayAgICAgICAgICAgICAgKDB4MVVMIDw8IEVYVElfU1dJRVJfU1dJRVIxOV9Qb3MpICAgLyohPCAweDAwMDgwMDAwICovDQojZGVmaW5lIEVYVElfU1dJRVJfU1dJRVIxOSAgICAgICAgICAgICAgICAgIEVYVElfU1dJRVJfU1dJRVIxOV9Nc2sgICAgICAgICAgICAgLyohPCBTb2Z0d2FyZSBJbnRlcnJ1cHQgb24gbGluZSAxOSAqLw0KI2RlZmluZSBFWFRJX1NXSUVSX1NXSUVSMjBfUG9zICAgICAgICAgICAgICAoMjBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBFWFRJX1NXSUVSX1NXSUVSMjBfTXNrICAgICAgICAgICAgICAoMHgxVUwgPDwgRVhUSV9TV0lFUl9TV0lFUjIwX1BvcykgICAvKiE8IDB4MDAxMDAwMDAgKi8NCiNkZWZpbmUgRVhUSV9TV0lFUl9TV0lFUjIwICAgICAgICAgICAgICAgICAgRVhUSV9TV0lFUl9TV0lFUjIwX01zayAgICAgICAgICAgICAvKiE8IFNvZnR3YXJlIEludGVycnVwdCBvbiBsaW5lIDIwICovDQojZGVmaW5lIEVYVElfU1dJRVJfU1dJRVIyMV9Qb3MgICAgICAgICAgICAgICgyMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEVYVElfU1dJRVJfU1dJRVIyMV9Nc2sgICAgICAgICAgICAgICgweDFVTCA8PCBFWFRJX1NXSUVSX1NXSUVSMjFfUG9zKSAgIC8qITwgMHgwMDIwMDAwMCAqLw0KI2RlZmluZSBFWFRJX1NXSUVSX1NXSUVSMjEgICAgICAgICAgICAgICAgICBFWFRJX1NXSUVSX1NXSUVSMjFfTXNrICAgICAgICAgICAgIC8qITwgU29mdHdhcmUgSW50ZXJydXB0IG9uIGxpbmUgMjEgKi8NCiNkZWZpbmUgRVhUSV9TV0lFUl9TV0lFUjIyX1BvcyAgICAgICAgICAgICAgKDIyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRVhUSV9TV0lFUl9TV0lFUjIyX01zayAgICAgICAgICAgICAgKDB4MVVMIDw8IEVYVElfU1dJRVJfU1dJRVIyMl9Qb3MpICAgLyohPCAweDAwNDAwMDAwICovDQojZGVmaW5lIEVYVElfU1dJRVJfU1dJRVIyMiAgICAgICAgICAgICAgICAgIEVYVElfU1dJRVJfU1dJRVIyMl9Nc2sgICAgICAgICAgICAgLyohPCBTb2Z0d2FyZSBJbnRlcnJ1cHQgb24gbGluZSAyMiAqLw0KI2RlZmluZSBFWFRJX1NXSUVSX1NXSUVSMjNfUG9zICAgICAgICAgICAgICAoMjNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBFWFRJX1NXSUVSX1NXSUVSMjNfTXNrICAgICAgICAgICAgICAoMHgxVUwgPDwgRVhUSV9TV0lFUl9TV0lFUjIzX1BvcykgICAvKiE8IDB4MDA4MDAwMDAgKi8NCiNkZWZpbmUgRVhUSV9TV0lFUl9TV0lFUjIzICAgICAgICAgICAgICAgICAgRVhUSV9TV0lFUl9TV0lFUjIzX01zayAgICAgICAgICAgICAvKiE8IFNvZnR3YXJlIEludGVycnVwdCBvbiBsaW5lIDIzICovDQoNCi8qIFJlZmVyZW5jZXMgRGVmaW5lcyAqLw0KI2RlZmluZSAgRVhUSV9TV0lFUl9TV0kwIEVYVElfU1dJRVJfU1dJRVIwDQojZGVmaW5lICBFWFRJX1NXSUVSX1NXSTEgRVhUSV9TV0lFUl9TV0lFUjENCiNkZWZpbmUgIEVYVElfU1dJRVJfU1dJMiBFWFRJX1NXSUVSX1NXSUVSMg0KI2RlZmluZSAgRVhUSV9TV0lFUl9TV0kzIEVYVElfU1dJRVJfU1dJRVIzDQojZGVmaW5lICBFWFRJX1NXSUVSX1NXSTQgRVhUSV9TV0lFUl9TV0lFUjQNCiNkZWZpbmUgIEVYVElfU1dJRVJfU1dJNSBFWFRJX1NXSUVSX1NXSUVSNQ0KI2RlZmluZSAgRVhUSV9TV0lFUl9TV0k2IEVYVElfU1dJRVJfU1dJRVI2DQojZGVmaW5lICBFWFRJX1NXSUVSX1NXSTcgRVhUSV9TV0lFUl9TV0lFUjcNCiNkZWZpbmUgIEVYVElfU1dJRVJfU1dJOCBFWFRJX1NXSUVSX1NXSUVSOA0KI2RlZmluZSAgRVhUSV9TV0lFUl9TV0k5IEVYVElfU1dJRVJfU1dJRVI5DQojZGVmaW5lICBFWFRJX1NXSUVSX1NXSTEwIEVYVElfU1dJRVJfU1dJRVIxMA0KI2RlZmluZSAgRVhUSV9TV0lFUl9TV0kxMSBFWFRJX1NXSUVSX1NXSUVSMTENCiNkZWZpbmUgIEVYVElfU1dJRVJfU1dJMTIgRVhUSV9TV0lFUl9TV0lFUjEyDQojZGVmaW5lICBFWFRJX1NXSUVSX1NXSTEzIEVYVElfU1dJRVJfU1dJRVIxMw0KI2RlZmluZSAgRVhUSV9TV0lFUl9TV0kxNCBFWFRJX1NXSUVSX1NXSUVSMTQNCiNkZWZpbmUgIEVYVElfU1dJRVJfU1dJMTUgRVhUSV9TV0lFUl9TV0lFUjE1DQojZGVmaW5lICBFWFRJX1NXSUVSX1NXSTE2IEVYVElfU1dJRVJfU1dJRVIxNg0KI2RlZmluZSAgRVhUSV9TV0lFUl9TV0kxNyBFWFRJX1NXSUVSX1NXSUVSMTcNCiNkZWZpbmUgIEVYVElfU1dJRVJfU1dJMTggRVhUSV9TV0lFUl9TV0lFUjE4DQojZGVmaW5lICBFWFRJX1NXSUVSX1NXSTE5IEVYVElfU1dJRVJfU1dJRVIxOQ0KI2RlZmluZSAgRVhUSV9TV0lFUl9TV0kyMCBFWFRJX1NXSUVSX1NXSUVSMjANCiNkZWZpbmUgIEVYVElfU1dJRVJfU1dJMjEgRVhUSV9TV0lFUl9TV0lFUjIxDQojZGVmaW5lICBFWFRJX1NXSUVSX1NXSTIyIEVYVElfU1dJRVJfU1dJRVIyMg0KI2RlZmluZSAgRVhUSV9TV0lFUl9TV0kyMyBFWFRJX1NXSUVSX1NXSUVSMjMNCg0KLyoqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBFWFRJX1BSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgRVhUSV9QUl9QUjBfUG9zICAgICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRVhUSV9QUl9QUjBfTXNrICAgICAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IEVYVElfUFJfUFIwX1BvcykgICAgICAgICAgLyohPCAweDAwMDAwMDAxICovDQojZGVmaW5lIEVYVElfUFJfUFIwICAgICAgICAgICAgICAgICAgICAgICAgIEVYVElfUFJfUFIwX01zayAgICAgICAgICAgICAgICAgICAgLyohPCBQZW5kaW5nIGJpdCBmb3IgbGluZSAwICovDQojZGVmaW5lIEVYVElfUFJfUFIxX1BvcyAgICAgICAgICAgICAgICAgICAgICgxVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEVYVElfUFJfUFIxX01zayAgICAgICAgICAgICAgICAgICAgICgweDFVTCA8PCBFWFRJX1BSX1BSMV9Qb3MpICAgICAgICAgIC8qITwgMHgwMDAwMDAwMiAqLw0KI2RlZmluZSBFWFRJX1BSX1BSMSAgICAgICAgICAgICAgICAgICAgICAgICBFWFRJX1BSX1BSMV9Nc2sgICAgICAgICAgICAgICAgICAgIC8qITwgUGVuZGluZyBiaXQgZm9yIGxpbmUgMSAqLw0KI2RlZmluZSBFWFRJX1BSX1BSMl9Qb3MgICAgICAgICAgICAgICAgICAgICAoMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBFWFRJX1BSX1BSMl9Nc2sgICAgICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgRVhUSV9QUl9QUjJfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDAwMDQgKi8NCiNkZWZpbmUgRVhUSV9QUl9QUjIgICAgICAgICAgICAgICAgICAgICAgICAgRVhUSV9QUl9QUjJfTXNrICAgICAgICAgICAgICAgICAgICAvKiE8IFBlbmRpbmcgYml0IGZvciBsaW5lIDIgKi8NCiNkZWZpbmUgRVhUSV9QUl9QUjNfUG9zICAgICAgICAgICAgICAgICAgICAgKDNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRVhUSV9QUl9QUjNfTXNrICAgICAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IEVYVElfUFJfUFIzX1BvcykgICAgICAgICAgLyohPCAweDAwMDAwMDA4ICovDQojZGVmaW5lIEVYVElfUFJfUFIzICAgICAgICAgICAgICAgICAgICAgICAgIEVYVElfUFJfUFIzX01zayAgICAgICAgICAgICAgICAgICAgLyohPCBQZW5kaW5nIGJpdCBmb3IgbGluZSAzICovDQojZGVmaW5lIEVYVElfUFJfUFI0X1BvcyAgICAgICAgICAgICAgICAgICAgICg0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEVYVElfUFJfUFI0X01zayAgICAgICAgICAgICAgICAgICAgICgweDFVTCA8PCBFWFRJX1BSX1BSNF9Qb3MpICAgICAgICAgIC8qITwgMHgwMDAwMDAxMCAqLw0KI2RlZmluZSBFWFRJX1BSX1BSNCAgICAgICAgICAgICAgICAgICAgICAgICBFWFRJX1BSX1BSNF9Nc2sgICAgICAgICAgICAgICAgICAgIC8qITwgUGVuZGluZyBiaXQgZm9yIGxpbmUgNCAqLw0KI2RlZmluZSBFWFRJX1BSX1BSNV9Qb3MgICAgICAgICAgICAgICAgICAgICAoNVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBFWFRJX1BSX1BSNV9Nc2sgICAgICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgRVhUSV9QUl9QUjVfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDAwMjAgKi8NCiNkZWZpbmUgRVhUSV9QUl9QUjUgICAgICAgICAgICAgICAgICAgICAgICAgRVhUSV9QUl9QUjVfTXNrICAgICAgICAgICAgICAgICAgICAvKiE8IFBlbmRpbmcgYml0IGZvciBsaW5lIDUgKi8NCiNkZWZpbmUgRVhUSV9QUl9QUjZfUG9zICAgICAgICAgICAgICAgICAgICAgKDZVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRVhUSV9QUl9QUjZfTXNrICAgICAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IEVYVElfUFJfUFI2X1BvcykgICAgICAgICAgLyohPCAweDAwMDAwMDQwICovDQojZGVmaW5lIEVYVElfUFJfUFI2ICAgICAgICAgICAgICAgICAgICAgICAgIEVYVElfUFJfUFI2X01zayAgICAgICAgICAgICAgICAgICAgLyohPCBQZW5kaW5nIGJpdCBmb3IgbGluZSA2ICovDQojZGVmaW5lIEVYVElfUFJfUFI3X1BvcyAgICAgICAgICAgICAgICAgICAgICg3VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEVYVElfUFJfUFI3X01zayAgICAgICAgICAgICAgICAgICAgICgweDFVTCA8PCBFWFRJX1BSX1BSN19Qb3MpICAgICAgICAgIC8qITwgMHgwMDAwMDA4MCAqLw0KI2RlZmluZSBFWFRJX1BSX1BSNyAgICAgICAgICAgICAgICAgICAgICAgICBFWFRJX1BSX1BSN19Nc2sgICAgICAgICAgICAgICAgICAgIC8qITwgUGVuZGluZyBiaXQgZm9yIGxpbmUgNyAqLw0KI2RlZmluZSBFWFRJX1BSX1BSOF9Qb3MgICAgICAgICAgICAgICAgICAgICAoOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBFWFRJX1BSX1BSOF9Nc2sgICAgICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgRVhUSV9QUl9QUjhfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDAxMDAgKi8NCiNkZWZpbmUgRVhUSV9QUl9QUjggICAgICAgICAgICAgICAgICAgICAgICAgRVhUSV9QUl9QUjhfTXNrICAgICAgICAgICAgICAgICAgICAvKiE8IFBlbmRpbmcgYml0IGZvciBsaW5lIDggKi8NCiNkZWZpbmUgRVhUSV9QUl9QUjlfUG9zICAgICAgICAgICAgICAgICAgICAgKDlVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRVhUSV9QUl9QUjlfTXNrICAgICAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IEVYVElfUFJfUFI5X1BvcykgICAgICAgICAgLyohPCAweDAwMDAwMjAwICovDQojZGVmaW5lIEVYVElfUFJfUFI5ICAgICAgICAgICAgICAgICAgICAgICAgIEVYVElfUFJfUFI5X01zayAgICAgICAgICAgICAgICAgICAgLyohPCBQZW5kaW5nIGJpdCBmb3IgbGluZSA5ICovDQojZGVmaW5lIEVYVElfUFJfUFIxMF9Qb3MgICAgICAgICAgICAgICAgICAgICgxMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEVYVElfUFJfUFIxMF9Nc2sgICAgICAgICAgICAgICAgICAgICgweDFVTCA8PCBFWFRJX1BSX1BSMTBfUG9zKSAgICAgICAgIC8qITwgMHgwMDAwMDQwMCAqLw0KI2RlZmluZSBFWFRJX1BSX1BSMTAgICAgICAgICAgICAgICAgICAgICAgICBFWFRJX1BSX1BSMTBfTXNrICAgICAgICAgICAgICAgICAgIC8qITwgUGVuZGluZyBiaXQgZm9yIGxpbmUgMTAgKi8NCiNkZWZpbmUgRVhUSV9QUl9QUjExX1BvcyAgICAgICAgICAgICAgICAgICAgKDExVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRVhUSV9QUl9QUjExX01zayAgICAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IEVYVElfUFJfUFIxMV9Qb3MpICAgICAgICAgLyohPCAweDAwMDAwODAwICovDQojZGVmaW5lIEVYVElfUFJfUFIxMSAgICAgICAgICAgICAgICAgICAgICAgIEVYVElfUFJfUFIxMV9Nc2sgICAgICAgICAgICAgICAgICAgLyohPCBQZW5kaW5nIGJpdCBmb3IgbGluZSAxMSAqLw0KI2RlZmluZSBFWFRJX1BSX1BSMTJfUG9zICAgICAgICAgICAgICAgICAgICAoMTJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBFWFRJX1BSX1BSMTJfTXNrICAgICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgRVhUSV9QUl9QUjEyX1BvcykgICAgICAgICAvKiE8IDB4MDAwMDEwMDAgKi8NCiNkZWZpbmUgRVhUSV9QUl9QUjEyICAgICAgICAgICAgICAgICAgICAgICAgRVhUSV9QUl9QUjEyX01zayAgICAgICAgICAgICAgICAgICAvKiE8IFBlbmRpbmcgYml0IGZvciBsaW5lIDEyICovDQojZGVmaW5lIEVYVElfUFJfUFIxM19Qb3MgICAgICAgICAgICAgICAgICAgICgxM1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEVYVElfUFJfUFIxM19Nc2sgICAgICAgICAgICAgICAgICAgICgweDFVTCA8PCBFWFRJX1BSX1BSMTNfUG9zKSAgICAgICAgIC8qITwgMHgwMDAwMjAwMCAqLw0KI2RlZmluZSBFWFRJX1BSX1BSMTMgICAgICAgICAgICAgICAgICAgICAgICBFWFRJX1BSX1BSMTNfTXNrICAgICAgICAgICAgICAgICAgIC8qITwgUGVuZGluZyBiaXQgZm9yIGxpbmUgMTMgKi8NCiNkZWZpbmUgRVhUSV9QUl9QUjE0X1BvcyAgICAgICAgICAgICAgICAgICAgKDE0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRVhUSV9QUl9QUjE0X01zayAgICAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IEVYVElfUFJfUFIxNF9Qb3MpICAgICAgICAgLyohPCAweDAwMDA0MDAwICovDQojZGVmaW5lIEVYVElfUFJfUFIxNCAgICAgICAgICAgICAgICAgICAgICAgIEVYVElfUFJfUFIxNF9Nc2sgICAgICAgICAgICAgICAgICAgLyohPCBQZW5kaW5nIGJpdCBmb3IgbGluZSAxNCAqLw0KI2RlZmluZSBFWFRJX1BSX1BSMTVfUG9zICAgICAgICAgICAgICAgICAgICAoMTVVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBFWFRJX1BSX1BSMTVfTXNrICAgICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgRVhUSV9QUl9QUjE1X1BvcykgICAgICAgICAvKiE8IDB4MDAwMDgwMDAgKi8NCiNkZWZpbmUgRVhUSV9QUl9QUjE1ICAgICAgICAgICAgICAgICAgICAgICAgRVhUSV9QUl9QUjE1X01zayAgICAgICAgICAgICAgICAgICAvKiE8IFBlbmRpbmcgYml0IGZvciBsaW5lIDE1ICovDQojZGVmaW5lIEVYVElfUFJfUFIxNl9Qb3MgICAgICAgICAgICAgICAgICAgICgxNlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEVYVElfUFJfUFIxNl9Nc2sgICAgICAgICAgICAgICAgICAgICgweDFVTCA8PCBFWFRJX1BSX1BSMTZfUG9zKSAgICAgICAgIC8qITwgMHgwMDAxMDAwMCAqLw0KI2RlZmluZSBFWFRJX1BSX1BSMTYgICAgICAgICAgICAgICAgICAgICAgICBFWFRJX1BSX1BSMTZfTXNrICAgICAgICAgICAgICAgICAgIC8qITwgUGVuZGluZyBiaXQgZm9yIGxpbmUgMTYgKi8NCiNkZWZpbmUgRVhUSV9QUl9QUjE3X1BvcyAgICAgICAgICAgICAgICAgICAgKDE3VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRVhUSV9QUl9QUjE3X01zayAgICAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IEVYVElfUFJfUFIxN19Qb3MpICAgICAgICAgLyohPCAweDAwMDIwMDAwICovDQojZGVmaW5lIEVYVElfUFJfUFIxNyAgICAgICAgICAgICAgICAgICAgICAgIEVYVElfUFJfUFIxN19Nc2sgICAgICAgICAgICAgICAgICAgLyohPCBQZW5kaW5nIGJpdCBmb3IgbGluZSAxNyAqLw0KI2RlZmluZSBFWFRJX1BSX1BSMThfUG9zICAgICAgICAgICAgICAgICAgICAoMThVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBFWFRJX1BSX1BSMThfTXNrICAgICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgRVhUSV9QUl9QUjE4X1BvcykgICAgICAgICAvKiE8IDB4MDAwNDAwMDAgKi8NCiNkZWZpbmUgRVhUSV9QUl9QUjE4ICAgICAgICAgICAgICAgICAgICAgICAgRVhUSV9QUl9QUjE4X01zayAgICAgICAgICAgICAgICAgICAvKiE8IFBlbmRpbmcgYml0IGZvciBsaW5lIDE4ICovDQojZGVmaW5lIEVYVElfUFJfUFIxOV9Qb3MgICAgICAgICAgICAgICAgICAgICgxOVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEVYVElfUFJfUFIxOV9Nc2sgICAgICAgICAgICAgICAgICAgICgweDFVTCA8PCBFWFRJX1BSX1BSMTlfUG9zKSAgICAgICAgIC8qITwgMHgwMDA4MDAwMCAqLw0KI2RlZmluZSBFWFRJX1BSX1BSMTkgICAgICAgICAgICAgICAgICAgICAgICBFWFRJX1BSX1BSMTlfTXNrICAgICAgICAgICAgICAgICAgIC8qITwgUGVuZGluZyBiaXQgZm9yIGxpbmUgMTkgKi8NCiNkZWZpbmUgRVhUSV9QUl9QUjIwX1BvcyAgICAgICAgICAgICAgICAgICAgKDIwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRVhUSV9QUl9QUjIwX01zayAgICAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IEVYVElfUFJfUFIyMF9Qb3MpICAgICAgICAgLyohPCAweDAwMTAwMDAwICovDQojZGVmaW5lIEVYVElfUFJfUFIyMCAgICAgICAgICAgICAgICAgICAgICAgIEVYVElfUFJfUFIyMF9Nc2sgICAgICAgICAgICAgICAgICAgLyohPCBQZW5kaW5nIGJpdCBmb3IgbGluZSAyMCAqLw0KI2RlZmluZSBFWFRJX1BSX1BSMjFfUG9zICAgICAgICAgICAgICAgICAgICAoMjFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBFWFRJX1BSX1BSMjFfTXNrICAgICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgRVhUSV9QUl9QUjIxX1BvcykgICAgICAgICAvKiE8IDB4MDAyMDAwMDAgKi8NCiNkZWZpbmUgRVhUSV9QUl9QUjIxICAgICAgICAgICAgICAgICAgICAgICAgRVhUSV9QUl9QUjIxX01zayAgICAgICAgICAgICAgICAgICAvKiE8IFBlbmRpbmcgYml0IGZvciBsaW5lIDIxICovDQojZGVmaW5lIEVYVElfUFJfUFIyMl9Qb3MgICAgICAgICAgICAgICAgICAgICgyMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEVYVElfUFJfUFIyMl9Nc2sgICAgICAgICAgICAgICAgICAgICgweDFVTCA8PCBFWFRJX1BSX1BSMjJfUG9zKSAgICAgICAgIC8qITwgMHgwMDQwMDAwMCAqLw0KI2RlZmluZSBFWFRJX1BSX1BSMjIgICAgICAgICAgICAgICAgICAgICAgICBFWFRJX1BSX1BSMjJfTXNrICAgICAgICAgICAgICAgICAgIC8qITwgUGVuZGluZyBiaXQgZm9yIGxpbmUgMjIgKi8NCiNkZWZpbmUgRVhUSV9QUl9QUjIzX1BvcyAgICAgICAgICAgICAgICAgICAgKDIzVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRVhUSV9QUl9QUjIzX01zayAgICAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IEVYVElfUFJfUFIyM19Qb3MpICAgICAgICAgLyohPCAweDAwODAwMDAwICovDQojZGVmaW5lIEVYVElfUFJfUFIyMyAgICAgICAgICAgICAgICAgICAgICAgIEVYVElfUFJfUFIyM19Nc2sgICAgICAgICAgICAgICAgICAgLyohPCBQZW5kaW5nIGJpdCBmb3IgbGluZSAyMyAqLw0KDQovKiBSZWZlcmVuY2VzIERlZmluZXMgKi8NCiNkZWZpbmUgIEVYVElfUFJfUElGMCBFWFRJX1BSX1BSMA0KI2RlZmluZSAgRVhUSV9QUl9QSUYxIEVYVElfUFJfUFIxDQojZGVmaW5lICBFWFRJX1BSX1BJRjIgRVhUSV9QUl9QUjINCiNkZWZpbmUgIEVYVElfUFJfUElGMyBFWFRJX1BSX1BSMw0KI2RlZmluZSAgRVhUSV9QUl9QSUY0IEVYVElfUFJfUFI0DQojZGVmaW5lICBFWFRJX1BSX1BJRjUgRVhUSV9QUl9QUjUNCiNkZWZpbmUgIEVYVElfUFJfUElGNiBFWFRJX1BSX1BSNg0KI2RlZmluZSAgRVhUSV9QUl9QSUY3IEVYVElfUFJfUFI3DQojZGVmaW5lICBFWFRJX1BSX1BJRjggRVhUSV9QUl9QUjgNCiNkZWZpbmUgIEVYVElfUFJfUElGOSBFWFRJX1BSX1BSOQ0KI2RlZmluZSAgRVhUSV9QUl9QSUYxMCBFWFRJX1BSX1BSMTANCiNkZWZpbmUgIEVYVElfUFJfUElGMTEgRVhUSV9QUl9QUjExDQojZGVmaW5lICBFWFRJX1BSX1BJRjEyIEVYVElfUFJfUFIxMg0KI2RlZmluZSAgRVhUSV9QUl9QSUYxMyBFWFRJX1BSX1BSMTMNCiNkZWZpbmUgIEVYVElfUFJfUElGMTQgRVhUSV9QUl9QUjE0DQojZGVmaW5lICBFWFRJX1BSX1BJRjE1IEVYVElfUFJfUFIxNQ0KI2RlZmluZSAgRVhUSV9QUl9QSUYxNiBFWFRJX1BSX1BSMTYNCiNkZWZpbmUgIEVYVElfUFJfUElGMTcgRVhUSV9QUl9QUjE3DQojZGVmaW5lICBFWFRJX1BSX1BJRjE4IEVYVElfUFJfUFIxOA0KI2RlZmluZSAgRVhUSV9QUl9QSUYxOSBFWFRJX1BSX1BSMTkNCiNkZWZpbmUgIEVYVElfUFJfUElGMjAgRVhUSV9QUl9QUjIwDQojZGVmaW5lICBFWFRJX1BSX1BJRjIxIEVYVElfUFJfUFIyMQ0KI2RlZmluZSAgRVhUSV9QUl9QSUYyMiBFWFRJX1BSX1BSMjINCiNkZWZpbmUgIEVYVElfUFJfUElGMjMgRVhUSV9QUl9QUjIzDQoNCi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovDQovKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLw0KLyogICAgICAgICAgICAgICAgRkxBU0gsIERBVEEgRUVQUk9NIGFuZCBPcHRpb24gQnl0ZXMgUmVnaXN0ZXJzICAgICAgICAgICAgICAgKi8NCi8qICAgICAgICAgICAgICAgICAgICAgICAgKEZMQVNILCBEQVRBX0VFUFJPTSwgT0IpICAgICAgICAgICAgICAgICAgICAgICAgICAgICovDQovKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLw0KLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8NCg0KLyoqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBGTEFTSF9BQ1IgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgRkxBU0hfQUNSX0xBVEVOQ1lfUG9zICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRkxBU0hfQUNSX0xBVEVOQ1lfTXNrICAgICAgICAgICAgICAgICgweDFVTCA8PCBGTEFTSF9BQ1JfTEFURU5DWV9Qb3MpICAgLyohPCAweDAwMDAwMDAxICovDQojZGVmaW5lIEZMQVNIX0FDUl9MQVRFTkNZICAgICAgICAgICAgICAgICAgICBGTEFTSF9BQ1JfTEFURU5DWV9Nc2sgICAgICAgICAgICAgLyohPCBMYXRlbmN5ICovDQojZGVmaW5lIEZMQVNIX0FDUl9QUkZURU5fUG9zICAgICAgICAgICAgICAgICAoMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEZMQVNIX0FDUl9QUkZURU5fTXNrICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgRkxBU0hfQUNSX1BSRlRFTl9Qb3MpICAgIC8qITwgMHgwMDAwMDAwMiAqLw0KI2RlZmluZSBGTEFTSF9BQ1JfUFJGVEVOICAgICAgICAgICAgICAgICAgICAgRkxBU0hfQUNSX1BSRlRFTl9Nc2sgICAgICAgICAgICAgIC8qITwgUHJlZmV0Y2ggQnVmZmVyIEVuYWJsZSAqLw0KI2RlZmluZSBGTEFTSF9BQ1JfQUNDNjRfUG9zICAgICAgICAgICAgICAgICAgKDJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBGTEFTSF9BQ1JfQUNDNjRfTXNrICAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IEZMQVNIX0FDUl9BQ0M2NF9Qb3MpICAgICAvKiE8IDB4MDAwMDAwMDQgKi8NCiNkZWZpbmUgRkxBU0hfQUNSX0FDQzY0ICAgICAgICAgICAgICAgICAgICAgIEZMQVNIX0FDUl9BQ0M2NF9Nc2sgICAgICAgICAgICAgICAvKiE8IEFjY2VzcyA2NCBiaXRzICovDQojZGVmaW5lIEZMQVNIX0FDUl9TTEVFUF9QRF9Qb3MgICAgICAgICAgICAgICAoM1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEZMQVNIX0FDUl9TTEVFUF9QRF9Nc2sgICAgICAgICAgICAgICAoMHgxVUwgPDwgRkxBU0hfQUNSX1NMRUVQX1BEX1BvcykgIC8qITwgMHgwMDAwMDAwOCAqLw0KI2RlZmluZSBGTEFTSF9BQ1JfU0xFRVBfUEQgICAgICAgICAgICAgICAgICAgRkxBU0hfQUNSX1NMRUVQX1BEX01zayAgICAgICAgICAgIC8qITwgRmxhc2ggbW9kZSBkdXJpbmcgc2xlZXAgbW9kZSAqLw0KI2RlZmluZSBGTEFTSF9BQ1JfUlVOX1BEX1BvcyAgICAgICAgICAgICAgICAgKDRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBGTEFTSF9BQ1JfUlVOX1BEX01zayAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IEZMQVNIX0FDUl9SVU5fUERfUG9zKSAgICAvKiE8IDB4MDAwMDAwMTAgKi8NCiNkZWZpbmUgRkxBU0hfQUNSX1JVTl9QRCAgICAgICAgICAgICAgICAgICAgIEZMQVNIX0FDUl9SVU5fUERfTXNrICAgICAgICAgICAgICAvKiE8IEZsYXNoIG1vZGUgZHVyaW5nIFJVTiBtb2RlICovDQoNCi8qKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgRkxBU0hfUEVDUiByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBGTEFTSF9QRUNSX1BFTE9DS19Qb3MgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBGTEFTSF9QRUNSX1BFTE9DS19Nc2sgICAgICAgICAgICAgICAgKDB4MVVMIDw8IEZMQVNIX1BFQ1JfUEVMT0NLX1BvcykgICAvKiE8IDB4MDAwMDAwMDEgKi8NCiNkZWZpbmUgRkxBU0hfUEVDUl9QRUxPQ0sgICAgICAgICAgICAgICAgICAgIEZMQVNIX1BFQ1JfUEVMT0NLX01zayAgICAgICAgICAgICAvKiE8IEZMQVNIX1BFQ1IgYW5kIEZsYXNoIGRhdGEgTG9jayAqLw0KI2RlZmluZSBGTEFTSF9QRUNSX1BSR0xPQ0tfUG9zICAgICAgICAgICAgICAgKDFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBGTEFTSF9QRUNSX1BSR0xPQ0tfTXNrICAgICAgICAgICAgICAgKDB4MVVMIDw8IEZMQVNIX1BFQ1JfUFJHTE9DS19Qb3MpICAvKiE8IDB4MDAwMDAwMDIgKi8NCiNkZWZpbmUgRkxBU0hfUEVDUl9QUkdMT0NLICAgICAgICAgICAgICAgICAgIEZMQVNIX1BFQ1JfUFJHTE9DS19Nc2sgICAgICAgICAgICAvKiE8IFByb2dyYW0gbWF0cml4IExvY2sgKi8NCiNkZWZpbmUgRkxBU0hfUEVDUl9PUFRMT0NLX1BvcyAgICAgICAgICAgICAgICgyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRkxBU0hfUEVDUl9PUFRMT0NLX01zayAgICAgICAgICAgICAgICgweDFVTCA8PCBGTEFTSF9QRUNSX09QVExPQ0tfUG9zKSAgLyohPCAweDAwMDAwMDA0ICovDQojZGVmaW5lIEZMQVNIX1BFQ1JfT1BUTE9DSyAgICAgICAgICAgICAgICAgICBGTEFTSF9QRUNSX09QVExPQ0tfTXNrICAgICAgICAgICAgLyohPCBPcHRpb24gYnl0ZSBtYXRyaXggTG9jayAqLw0KI2RlZmluZSBGTEFTSF9QRUNSX1BST0dfUG9zICAgICAgICAgICAgICAgICAgKDNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBGTEFTSF9QRUNSX1BST0dfTXNrICAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IEZMQVNIX1BFQ1JfUFJPR19Qb3MpICAgICAvKiE8IDB4MDAwMDAwMDggKi8NCiNkZWZpbmUgRkxBU0hfUEVDUl9QUk9HICAgICAgICAgICAgICAgICAgICAgIEZMQVNIX1BFQ1JfUFJPR19Nc2sgICAgICAgICAgICAgICAvKiE8IFByb2dyYW0gbWF0cml4IHNlbGVjdGlvbiAqLw0KI2RlZmluZSBGTEFTSF9QRUNSX0RBVEFfUG9zICAgICAgICAgICAgICAgICAgKDRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBGTEFTSF9QRUNSX0RBVEFfTXNrICAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IEZMQVNIX1BFQ1JfREFUQV9Qb3MpICAgICAvKiE8IDB4MDAwMDAwMTAgKi8NCiNkZWZpbmUgRkxBU0hfUEVDUl9EQVRBICAgICAgICAgICAgICAgICAgICAgIEZMQVNIX1BFQ1JfREFUQV9Nc2sgICAgICAgICAgICAgICAvKiE8IERhdGEgbWF0cml4IHNlbGVjdGlvbiAqLw0KI2RlZmluZSBGTEFTSF9QRUNSX0ZURFdfUG9zICAgICAgICAgICAgICAgICAgKDhVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBGTEFTSF9QRUNSX0ZURFdfTXNrICAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IEZMQVNIX1BFQ1JfRlREV19Qb3MpICAgICAvKiE8IDB4MDAwMDAxMDAgKi8NCiNkZWZpbmUgRkxBU0hfUEVDUl9GVERXICAgICAgICAgICAgICAgICAgICAgIEZMQVNIX1BFQ1JfRlREV19Nc2sgICAgICAgICAgICAgICAvKiE8IEZpeGVkIFRpbWUgRGF0YSB3cml0ZSBmb3IgV29yZC9IYWxmIFdvcmQvQnl0ZSBwcm9ncmFtbWluZyAqLw0KI2RlZmluZSBGTEFTSF9QRUNSX0VSQVNFX1BvcyAgICAgICAgICAgICAgICAgKDlVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBGTEFTSF9QRUNSX0VSQVNFX01zayAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IEZMQVNIX1BFQ1JfRVJBU0VfUG9zKSAgICAvKiE8IDB4MDAwMDAyMDAgKi8NCiNkZWZpbmUgRkxBU0hfUEVDUl9FUkFTRSAgICAgICAgICAgICAgICAgICAgIEZMQVNIX1BFQ1JfRVJBU0VfTXNrICAgICAgICAgICAgICAvKiE8IFBhZ2UgZXJhc2luZyBtb2RlICovDQojZGVmaW5lIEZMQVNIX1BFQ1JfRlBSR19Qb3MgICAgICAgICAgICAgICAgICAoMTBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEZMQVNIX1BFQ1JfRlBSR19Nc2sgICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgRkxBU0hfUEVDUl9GUFJHX1BvcykgICAgIC8qITwgMHgwMDAwMDQwMCAqLw0KI2RlZmluZSBGTEFTSF9QRUNSX0ZQUkcgICAgICAgICAgICAgICAgICAgICAgRkxBU0hfUEVDUl9GUFJHX01zayAgICAgICAgICAgICAgIC8qITwgRmFzdCBQYWdlL0hhbGYgUGFnZSBwcm9ncmFtbWluZyBtb2RlICovDQojZGVmaW5lIEZMQVNIX1BFQ1JfUEFSQUxMQkFOS19Qb3MgICAgICAgICAgICAoMTVVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEZMQVNIX1BFQ1JfUEFSQUxMQkFOS19Nc2sgICAgICAgICAgICAoMHgxVUwgPDwgRkxBU0hfUEVDUl9QQVJBTExCQU5LX1BvcykgLyohPCAweDAwMDA4MDAwICovDQojZGVmaW5lIEZMQVNIX1BFQ1JfUEFSQUxMQkFOSyAgICAgICAgICAgICAgICBGTEFTSF9QRUNSX1BBUkFMTEJBTktfTXNrICAgICAgICAgLyohPCBQYXJhbGxlbCBCYW5rIG1vZGUgKi8NCiNkZWZpbmUgRkxBU0hfUEVDUl9FT1BJRV9Qb3MgICAgICAgICAgICAgICAgICgxNlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRkxBU0hfUEVDUl9FT1BJRV9Nc2sgICAgICAgICAgICAgICAgICgweDFVTCA8PCBGTEFTSF9QRUNSX0VPUElFX1BvcykgICAgLyohPCAweDAwMDEwMDAwICovDQojZGVmaW5lIEZMQVNIX1BFQ1JfRU9QSUUgICAgICAgICAgICAgICAgICAgICBGTEFTSF9QRUNSX0VPUElFX01zayAgICAgICAgICAgICAgLyohPCBFbmQgb2YgcHJvZ3JhbW1pbmcgaW50ZXJydXB0ICovIA0KI2RlZmluZSBGTEFTSF9QRUNSX0VSUklFX1BvcyAgICAgICAgICAgICAgICAgKDE3VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBGTEFTSF9QRUNSX0VSUklFX01zayAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IEZMQVNIX1BFQ1JfRVJSSUVfUG9zKSAgICAvKiE8IDB4MDAwMjAwMDAgKi8NCiNkZWZpbmUgRkxBU0hfUEVDUl9FUlJJRSAgICAgICAgICAgICAgICAgICAgIEZMQVNIX1BFQ1JfRVJSSUVfTXNrICAgICAgICAgICAgICAvKiE8IEVycm9yIGludGVycnVwdCAqLyANCiNkZWZpbmUgRkxBU0hfUEVDUl9PQkxfTEFVTkNIX1BvcyAgICAgICAgICAgICgxOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRkxBU0hfUEVDUl9PQkxfTEFVTkNIX01zayAgICAgICAgICAgICgweDFVTCA8PCBGTEFTSF9QRUNSX09CTF9MQVVOQ0hfUG9zKSAvKiE8IDB4MDAwNDAwMDAgKi8NCiNkZWZpbmUgRkxBU0hfUEVDUl9PQkxfTEFVTkNIICAgICAgICAgICAgICAgIEZMQVNIX1BFQ1JfT0JMX0xBVU5DSF9Nc2sgICAgICAgICAvKiE8IExhdW5jaCB0aGUgb3B0aW9uIGJ5dGUgbG9hZGluZyAqLyANCg0KLyoqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIEZMQVNIX1BES0VZUiByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBGTEFTSF9QREtFWVJfUERLRVlSX1BvcyAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBGTEFTSF9QREtFWVJfUERLRVlSX01zayAgICAgICAgICAgICAgKDB4RkZGRkZGRkZVTCA8PCBGTEFTSF9QREtFWVJfUERLRVlSX1BvcykgLyohPCAweEZGRkZGRkZGICovDQojZGVmaW5lIEZMQVNIX1BES0VZUl9QREtFWVIgICAgICAgICAgICAgICAgICBGTEFTSF9QREtFWVJfUERLRVlSX01zayAgICAgICAgICAgLyohPCBGTEFTSF9QRUMgYW5kIGRhdGEgbWF0cml4IEtleSAqLw0KDQovKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgRkxBU0hfUEVLRVlSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIEZMQVNIX1BFS0VZUl9QRUtFWVJfUG9zICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEZMQVNIX1BFS0VZUl9QRUtFWVJfTXNrICAgICAgICAgICAgICAoMHhGRkZGRkZGRlVMIDw8IEZMQVNIX1BFS0VZUl9QRUtFWVJfUG9zKSAvKiE8IDB4RkZGRkZGRkYgKi8NCiNkZWZpbmUgRkxBU0hfUEVLRVlSX1BFS0VZUiAgICAgICAgICAgICAgICAgIEZMQVNIX1BFS0VZUl9QRUtFWVJfTXNrICAgICAgICAgICAvKiE8IEZMQVNIX1BFQyBhbmQgZGF0YSBtYXRyaXggS2V5ICovDQoNCi8qKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBGTEFTSF9QUkdLRVlSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIEZMQVNIX1BSR0tFWVJfUFJHS0VZUl9Qb3MgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEZMQVNIX1BSR0tFWVJfUFJHS0VZUl9Nc2sgICAgICAgICAgICAoMHhGRkZGRkZGRlVMIDw8IEZMQVNIX1BSR0tFWVJfUFJHS0VZUl9Qb3MpIC8qITwgMHhGRkZGRkZGRiAqLw0KI2RlZmluZSBGTEFTSF9QUkdLRVlSX1BSR0tFWVIgICAgICAgICAgICAgICAgRkxBU0hfUFJHS0VZUl9QUkdLRVlSX01zayAgICAgICAgIC8qITwgUHJvZ3JhbSBtYXRyaXggS2V5ICovDQoNCi8qKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBGTEFTSF9PUFRLRVlSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIEZMQVNIX09QVEtFWVJfT1BUS0VZUl9Qb3MgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEZMQVNIX09QVEtFWVJfT1BUS0VZUl9Nc2sgICAgICAgICAgICAoMHhGRkZGRkZGRlVMIDw8IEZMQVNIX09QVEtFWVJfT1BUS0VZUl9Qb3MpIC8qITwgMHhGRkZGRkZGRiAqLw0KI2RlZmluZSBGTEFTSF9PUFRLRVlSX09QVEtFWVIgICAgICAgICAgICAgICAgRkxBU0hfT1BUS0VZUl9PUFRLRVlSX01zayAgICAgICAgIC8qITwgT3B0aW9uIGJ5dGVzIG1hdHJpeCBLZXkgKi8NCg0KLyoqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIEZMQVNIX1NSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBGTEFTSF9TUl9CU1lfUG9zICAgICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBGTEFTSF9TUl9CU1lfTXNrICAgICAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IEZMQVNIX1NSX0JTWV9Qb3MpICAgICAgICAvKiE8IDB4MDAwMDAwMDEgKi8NCiNkZWZpbmUgRkxBU0hfU1JfQlNZICAgICAgICAgICAgICAgICAgICAgICAgIEZMQVNIX1NSX0JTWV9Nc2sgICAgICAgICAgICAgICAgICAvKiE8IEJ1c3kgKi8NCiNkZWZpbmUgRkxBU0hfU1JfRU9QX1BvcyAgICAgICAgICAgICAgICAgICAgICgxVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRkxBU0hfU1JfRU9QX01zayAgICAgICAgICAgICAgICAgICAgICgweDFVTCA8PCBGTEFTSF9TUl9FT1BfUG9zKSAgICAgICAgLyohPCAweDAwMDAwMDAyICovDQojZGVmaW5lIEZMQVNIX1NSX0VPUCAgICAgICAgICAgICAgICAgICAgICAgICBGTEFTSF9TUl9FT1BfTXNrICAgICAgICAgICAgICAgICAgLyohPCBFbmQgT2YgUHJvZ3JhbW1pbmcqLw0KI2RlZmluZSBGTEFTSF9TUl9FTkRIVl9Qb3MgICAgICAgICAgICAgICAgICAgKDJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBGTEFTSF9TUl9FTkRIVl9Nc2sgICAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IEZMQVNIX1NSX0VOREhWX1BvcykgICAgICAvKiE8IDB4MDAwMDAwMDQgKi8NCiNkZWZpbmUgRkxBU0hfU1JfRU5ESFYgICAgICAgICAgICAgICAgICAgICAgIEZMQVNIX1NSX0VOREhWX01zayAgICAgICAgICAgICAgICAvKiE8IEVuZCBvZiBoaWdoIHZvbHRhZ2UgKi8NCiNkZWZpbmUgRkxBU0hfU1JfUkVBRFlfUG9zICAgICAgICAgICAgICAgICAgICgzVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRkxBU0hfU1JfUkVBRFlfTXNrICAgICAgICAgICAgICAgICAgICgweDFVTCA8PCBGTEFTSF9TUl9SRUFEWV9Qb3MpICAgICAgLyohPCAweDAwMDAwMDA4ICovDQojZGVmaW5lIEZMQVNIX1NSX1JFQURZICAgICAgICAgICAgICAgICAgICAgICBGTEFTSF9TUl9SRUFEWV9Nc2sgICAgICAgICAgICAgICAgLyohPCBGbGFzaCByZWFkeSBhZnRlciBsb3cgcG93ZXIgbW9kZSAqLw0KDQojZGVmaW5lIEZMQVNIX1NSX1dSUEVSUl9Qb3MgICAgICAgICAgICAgICAgICAoOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEZMQVNIX1NSX1dSUEVSUl9Nc2sgICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgRkxBU0hfU1JfV1JQRVJSX1BvcykgICAgIC8qITwgMHgwMDAwMDEwMCAqLw0KI2RlZmluZSBGTEFTSF9TUl9XUlBFUlIgICAgICAgICAgICAgICAgICAgICAgRkxBU0hfU1JfV1JQRVJSX01zayAgICAgICAgICAgICAgIC8qITwgV3JpdGUgcHJvdGVjdGVkIGVycm9yICovDQojZGVmaW5lIEZMQVNIX1NSX1BHQUVSUl9Qb3MgICAgICAgICAgICAgICAgICAoOVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEZMQVNIX1NSX1BHQUVSUl9Nc2sgICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgRkxBU0hfU1JfUEdBRVJSX1BvcykgICAgIC8qITwgMHgwMDAwMDIwMCAqLw0KI2RlZmluZSBGTEFTSF9TUl9QR0FFUlIgICAgICAgICAgICAgICAgICAgICAgRkxBU0hfU1JfUEdBRVJSX01zayAgICAgICAgICAgICAgIC8qITwgUHJvZ3JhbW1pbmcgQWxpZ25tZW50IEVycm9yICovDQojZGVmaW5lIEZMQVNIX1NSX1NJWkVSUl9Qb3MgICAgICAgICAgICAgICAgICAoMTBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEZMQVNIX1NSX1NJWkVSUl9Nc2sgICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgRkxBU0hfU1JfU0laRVJSX1BvcykgICAgIC8qITwgMHgwMDAwMDQwMCAqLw0KI2RlZmluZSBGTEFTSF9TUl9TSVpFUlIgICAgICAgICAgICAgICAgICAgICAgRkxBU0hfU1JfU0laRVJSX01zayAgICAgICAgICAgICAgIC8qITwgU2l6ZSBlcnJvciAqLw0KI2RlZmluZSBGTEFTSF9TUl9PUFRWRVJSX1BvcyAgICAgICAgICAgICAgICAgKDExVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBGTEFTSF9TUl9PUFRWRVJSX01zayAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IEZMQVNIX1NSX09QVFZFUlJfUG9zKSAgICAvKiE8IDB4MDAwMDA4MDAgKi8NCiNkZWZpbmUgRkxBU0hfU1JfT1BUVkVSUiAgICAgICAgICAgICAgICAgICAgIEZMQVNIX1NSX09QVFZFUlJfTXNrICAgICAgICAgICAgICAvKiE8IE9wdGlvbiB2YWxpZGl0eSBlcnJvciAqLw0KI2RlZmluZSBGTEFTSF9TUl9PUFRWRVJSVVNSX1BvcyAgICAgICAgICAgICAgKDEyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBGTEFTSF9TUl9PUFRWRVJSVVNSX01zayAgICAgICAgICAgICAgKDB4MVVMIDw8IEZMQVNIX1NSX09QVFZFUlJVU1JfUG9zKSAvKiE8IDB4MDAwMDEwMDAgKi8NCiNkZWZpbmUgRkxBU0hfU1JfT1BUVkVSUlVTUiAgICAgICAgICAgICAgICAgIEZMQVNIX1NSX09QVFZFUlJVU1JfTXNrICAgICAgICAgICAvKiE8IE9wdGlvbiBVc2VyIHZhbGlkaXR5IGVycm9yICovDQoNCi8qKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBGTEFTSF9PQlIgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIEZMQVNIX09CUl9SRFBSVF9Qb3MgICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEZMQVNIX09CUl9SRFBSVF9Nc2sgICAgICAgICAgICAgICAgICAoMHhGRlVMIDw8IEZMQVNIX09CUl9SRFBSVF9Qb3MpICAgIC8qITwgMHgwMDAwMDBGRiAqLw0KI2RlZmluZSBGTEFTSF9PQlJfUkRQUlQgICAgICAgICAgICAgICAgICAgICAgRkxBU0hfT0JSX1JEUFJUX01zayAgICAgICAgICAgICAgIC8qITwgUmVhZCBQcm90ZWN0aW9uICovDQojZGVmaW5lIEZMQVNIX09CUl9CT1JfTEVWX1BvcyAgICAgICAgICAgICAgICAoMTZVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEZMQVNIX09CUl9CT1JfTEVWX01zayAgICAgICAgICAgICAgICAoMHhGVUwgPDwgRkxBU0hfT0JSX0JPUl9MRVZfUG9zKSAgIC8qITwgMHgwMDBGMDAwMCAqLw0KI2RlZmluZSBGTEFTSF9PQlJfQk9SX0xFViAgICAgICAgICAgICAgICAgICAgRkxBU0hfT0JSX0JPUl9MRVZfTXNrICAgICAgICAgICAgIC8qITwgQk9SX0xFVlszOjBdIEJyb3duIE91dCBSZXNldCBUaHJlc2hvbGQgTGV2ZWwqLw0KI2RlZmluZSBGTEFTSF9PQlJfVVNFUl9Qb3MgICAgICAgICAgICAgICAgICAgKDIwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBGTEFTSF9PQlJfVVNFUl9Nc2sgICAgICAgICAgICAgICAgICAgKDB4RlVMIDw8IEZMQVNIX09CUl9VU0VSX1BvcykgICAgICAvKiE8IDB4MDBGMDAwMDAgKi8NCiNkZWZpbmUgRkxBU0hfT0JSX1VTRVIgICAgICAgICAgICAgICAgICAgICAgIEZMQVNIX09CUl9VU0VSX01zayAgICAgICAgICAgICAgICAvKiE8IFVzZXIgT3B0aW9uIEJ5dGVzICovDQojZGVmaW5lIEZMQVNIX09CUl9JV0RHX1NXX1BvcyAgICAgICAgICAgICAgICAoMjBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEZMQVNIX09CUl9JV0RHX1NXX01zayAgICAgICAgICAgICAgICAoMHgxVUwgPDwgRkxBU0hfT0JSX0lXREdfU1dfUG9zKSAgIC8qITwgMHgwMDEwMDAwMCAqLw0KI2RlZmluZSBGTEFTSF9PQlJfSVdER19TVyAgICAgICAgICAgICAgICAgICAgRkxBU0hfT0JSX0lXREdfU1dfTXNrICAgICAgICAgICAgIC8qITwgSVdER19TVyAqLw0KI2RlZmluZSBGTEFTSF9PQlJfblJTVF9TVE9QX1BvcyAgICAgICAgICAgICAgKDIxVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBGTEFTSF9PQlJfblJTVF9TVE9QX01zayAgICAgICAgICAgICAgKDB4MVVMIDw8IEZMQVNIX09CUl9uUlNUX1NUT1BfUG9zKSAvKiE8IDB4MDAyMDAwMDAgKi8NCiNkZWZpbmUgRkxBU0hfT0JSX25SU1RfU1RPUCAgICAgICAgICAgICAgICAgIEZMQVNIX09CUl9uUlNUX1NUT1BfTXNrICAgICAgICAgICAvKiE8IG5SU1RfU1RPUCAqLw0KI2RlZmluZSBGTEFTSF9PQlJfblJTVF9TVERCWV9Qb3MgICAgICAgICAgICAgKDIyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBGTEFTSF9PQlJfblJTVF9TVERCWV9Nc2sgICAgICAgICAgICAgKDB4MVVMIDw8IEZMQVNIX09CUl9uUlNUX1NUREJZX1BvcykgLyohPCAweDAwNDAwMDAwICovDQojZGVmaW5lIEZMQVNIX09CUl9uUlNUX1NUREJZICAgICAgICAgICAgICAgICBGTEFTSF9PQlJfblJTVF9TVERCWV9Nc2sgICAgICAgICAgLyohPCBuUlNUX1NUREJZICovDQojZGVmaW5lIEZMQVNIX09CUl9uUlNUX0JGQjJfUG9zICAgICAgICAgICAgICAoMjNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEZMQVNIX09CUl9uUlNUX0JGQjJfTXNrICAgICAgICAgICAgICAoMHgxVUwgPDwgRkxBU0hfT0JSX25SU1RfQkZCMl9Qb3MpIC8qITwgMHgwMDgwMDAwMCAqLw0KI2RlZmluZSBGTEFTSF9PQlJfblJTVF9CRkIyICAgICAgICAgICAgICAgICAgRkxBU0hfT0JSX25SU1RfQkZCMl9Nc2sgICAgICAgICAgIC8qITwgQkZCMiAqLw0KDQovKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgRkxBU0hfV1JQUiByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBGTEFTSF9XUlBSMV9XUlBfUG9zICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBGTEFTSF9XUlBSMV9XUlBfTXNrICAgICAgICAgICAgICAgICAgKDB4RkZGRkZGRkZVTCA8PCBGTEFTSF9XUlBSMV9XUlBfUG9zKSAvKiE8IDB4RkZGRkZGRkYgKi8NCiNkZWZpbmUgRkxBU0hfV1JQUjFfV1JQICAgICAgICAgICAgICAgICAgICAgIEZMQVNIX1dSUFIxX1dSUF9Nc2sgICAgICAgICAgICAgICAvKiE8IFdyaXRlIFByb3RlY3Qgc2VjdG9ycyAwICB0byAzMSAgKi8NCiNkZWZpbmUgRkxBU0hfV1JQUjJfV1JQX1BvcyAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgRkxBU0hfV1JQUjJfV1JQX01zayAgICAgICAgICAgICAgICAgICgweEZGRkZGRkZGVUwgPDwgRkxBU0hfV1JQUjJfV1JQX1BvcykgLyohPCAweEZGRkZGRkZGICovDQojZGVmaW5lIEZMQVNIX1dSUFIyX1dSUCAgICAgICAgICAgICAgICAgICAgICBGTEFTSF9XUlBSMl9XUlBfTXNrICAgICAgICAgICAgICAgLyohPCBXcml0ZSBQcm90ZWN0IHNlY3RvcnMgMzIgdG8gNjMgICovICAgICAgICAgICAgIA0KI2RlZmluZSBGTEFTSF9XUlBSM19XUlBfUG9zICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBGTEFTSF9XUlBSM19XUlBfTXNrICAgICAgICAgICAgICAgICAgKDB4RkZGRkZGRkZVTCA8PCBGTEFTSF9XUlBSM19XUlBfUG9zKSAvKiE8IDB4RkZGRkZGRkYgKi8NCiNkZWZpbmUgRkxBU0hfV1JQUjNfV1JQICAgICAgICAgICAgICAgICAgICAgIEZMQVNIX1dSUFIzX1dSUF9Nc2sgICAgICAgICAgICAgICAvKiE8IFdyaXRlIFByb3RlY3Qgc2VjdG9ycyA2NCB0byA5NSAgKi8gDQojZGVmaW5lIEZMQVNIX1dSUFI0X1dSUF9Qb3MgICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEZMQVNIX1dSUFI0X1dSUF9Nc2sgICAgICAgICAgICAgICAgICAoMHhGRkZGRkZGRlVMIDw8IEZMQVNIX1dSUFI0X1dSUF9Qb3MpIC8qITwgMHhGRkZGRkZGRiAqLw0KI2RlZmluZSBGTEFTSF9XUlBSNF9XUlAgICAgICAgICAgICAgICAgICAgICAgRkxBU0hfV1JQUjRfV1JQX01zayAgICAgICAgICAgICAgIC8qITwgV3JpdGUgUHJvdGVjdCBzZWN0b3JzIDk2IHRvIDEyNyAqLyANCg0KLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8NCi8qICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovDQovKiAgICAgICAgICAgICAgICAgICAgICAgICAgICBHZW5lcmFsIFB1cnBvc2UgSS9PICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLw0KLyogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8NCi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovDQovKioqKioqKioqKioqKioqKioqICBCaXRzIGRlZmluaXRpb24gZm9yIEdQSU9fTU9ERVIgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBHUElPX01PREVSX01PREVSMF9Qb3MgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX01PREVSX01PREVSMF9Nc2sgICAgICAgICAgICAgICAgKDB4M1VMIDw8IEdQSU9fTU9ERVJfTU9ERVIwX1BvcykgICAvKiE8IDB4MDAwMDAwMDMgKi8NCiNkZWZpbmUgR1BJT19NT0RFUl9NT0RFUjAgICAgICAgICAgICAgICAgICAgIEdQSU9fTU9ERVJfTU9ERVIwX01zayAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19NT0RFUl9NT0RFUjBfMCAgICAgICAgICAgICAgICAgICgweDFVTCA8PCBHUElPX01PREVSX01PREVSMF9Qb3MpICAgLyohPCAweDAwMDAwMDAxICovDQojZGVmaW5lIEdQSU9fTU9ERVJfTU9ERVIwXzEgICAgICAgICAgICAgICAgICAoMHgyVUwgPDwgR1BJT19NT0RFUl9NT0RFUjBfUG9zKSAgIC8qITwgMHgwMDAwMDAwMiAqLw0KDQojZGVmaW5lIEdQSU9fTU9ERVJfTU9ERVIxX1BvcyAgICAgICAgICAgICAgICAoMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fTU9ERVJfTU9ERVIxX01zayAgICAgICAgICAgICAgICAoMHgzVUwgPDwgR1BJT19NT0RFUl9NT0RFUjFfUG9zKSAgIC8qITwgMHgwMDAwMDAwQyAqLw0KI2RlZmluZSBHUElPX01PREVSX01PREVSMSAgICAgICAgICAgICAgICAgICAgR1BJT19NT0RFUl9NT0RFUjFfTXNrICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX01PREVSX01PREVSMV8wICAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IEdQSU9fTU9ERVJfTU9ERVIxX1BvcykgICAvKiE8IDB4MDAwMDAwMDQgKi8NCiNkZWZpbmUgR1BJT19NT0RFUl9NT0RFUjFfMSAgICAgICAgICAgICAgICAgICgweDJVTCA8PCBHUElPX01PREVSX01PREVSMV9Qb3MpICAgLyohPCAweDAwMDAwMDA4ICovDQoNCiNkZWZpbmUgR1BJT19NT0RFUl9NT0RFUjJfUG9zICAgICAgICAgICAgICAgICg0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19NT0RFUl9NT0RFUjJfTXNrICAgICAgICAgICAgICAgICgweDNVTCA8PCBHUElPX01PREVSX01PREVSMl9Qb3MpICAgLyohPCAweDAwMDAwMDMwICovDQojZGVmaW5lIEdQSU9fTU9ERVJfTU9ERVIyICAgICAgICAgICAgICAgICAgICBHUElPX01PREVSX01PREVSMl9Nc2sgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fTU9ERVJfTU9ERVIyXzAgICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgR1BJT19NT0RFUl9NT0RFUjJfUG9zKSAgIC8qITwgMHgwMDAwMDAxMCAqLw0KI2RlZmluZSBHUElPX01PREVSX01PREVSMl8xICAgICAgICAgICAgICAgICAgKDB4MlVMIDw8IEdQSU9fTU9ERVJfTU9ERVIyX1BvcykgICAvKiE8IDB4MDAwMDAwMjAgKi8NCg0KI2RlZmluZSBHUElPX01PREVSX01PREVSM19Qb3MgICAgICAgICAgICAgICAgKDZVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX01PREVSX01PREVSM19Nc2sgICAgICAgICAgICAgICAgKDB4M1VMIDw8IEdQSU9fTU9ERVJfTU9ERVIzX1BvcykgICAvKiE8IDB4MDAwMDAwQzAgKi8NCiNkZWZpbmUgR1BJT19NT0RFUl9NT0RFUjMgICAgICAgICAgICAgICAgICAgIEdQSU9fTU9ERVJfTU9ERVIzX01zayAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19NT0RFUl9NT0RFUjNfMCAgICAgICAgICAgICAgICAgICgweDFVTCA8PCBHUElPX01PREVSX01PREVSM19Qb3MpICAgLyohPCAweDAwMDAwMDQwICovDQojZGVmaW5lIEdQSU9fTU9ERVJfTU9ERVIzXzEgICAgICAgICAgICAgICAgICAoMHgyVUwgPDwgR1BJT19NT0RFUl9NT0RFUjNfUG9zKSAgIC8qITwgMHgwMDAwMDA4MCAqLw0KDQojZGVmaW5lIEdQSU9fTU9ERVJfTU9ERVI0X1BvcyAgICAgICAgICAgICAgICAoOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fTU9ERVJfTU9ERVI0X01zayAgICAgICAgICAgICAgICAoMHgzVUwgPDwgR1BJT19NT0RFUl9NT0RFUjRfUG9zKSAgIC8qITwgMHgwMDAwMDMwMCAqLw0KI2RlZmluZSBHUElPX01PREVSX01PREVSNCAgICAgICAgICAgICAgICAgICAgR1BJT19NT0RFUl9NT0RFUjRfTXNrICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX01PREVSX01PREVSNF8wICAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IEdQSU9fTU9ERVJfTU9ERVI0X1BvcykgICAvKiE8IDB4MDAwMDAxMDAgKi8NCiNkZWZpbmUgR1BJT19NT0RFUl9NT0RFUjRfMSAgICAgICAgICAgICAgICAgICgweDJVTCA8PCBHUElPX01PREVSX01PREVSNF9Qb3MpICAgLyohPCAweDAwMDAwMjAwICovDQoNCiNkZWZpbmUgR1BJT19NT0RFUl9NT0RFUjVfUG9zICAgICAgICAgICAgICAgICgxMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19NT0RFUl9NT0RFUjVfTXNrICAgICAgICAgICAgICAgICgweDNVTCA8PCBHUElPX01PREVSX01PREVSNV9Qb3MpICAgLyohPCAweDAwMDAwQzAwICovDQojZGVmaW5lIEdQSU9fTU9ERVJfTU9ERVI1ICAgICAgICAgICAgICAgICAgICBHUElPX01PREVSX01PREVSNV9Nc2sgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fTU9ERVJfTU9ERVI1XzAgICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgR1BJT19NT0RFUl9NT0RFUjVfUG9zKSAgIC8qITwgMHgwMDAwMDQwMCAqLw0KI2RlZmluZSBHUElPX01PREVSX01PREVSNV8xICAgICAgICAgICAgICAgICAgKDB4MlVMIDw8IEdQSU9fTU9ERVJfTU9ERVI1X1BvcykgICAvKiE8IDB4MDAwMDA4MDAgKi8NCg0KI2RlZmluZSBHUElPX01PREVSX01PREVSNl9Qb3MgICAgICAgICAgICAgICAgKDEyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX01PREVSX01PREVSNl9Nc2sgICAgICAgICAgICAgICAgKDB4M1VMIDw8IEdQSU9fTU9ERVJfTU9ERVI2X1BvcykgICAvKiE8IDB4MDAwMDMwMDAgKi8NCiNkZWZpbmUgR1BJT19NT0RFUl9NT0RFUjYgICAgICAgICAgICAgICAgICAgIEdQSU9fTU9ERVJfTU9ERVI2X01zayAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19NT0RFUl9NT0RFUjZfMCAgICAgICAgICAgICAgICAgICgweDFVTCA8PCBHUElPX01PREVSX01PREVSNl9Qb3MpICAgLyohPCAweDAwMDAxMDAwICovDQojZGVmaW5lIEdQSU9fTU9ERVJfTU9ERVI2XzEgICAgICAgICAgICAgICAgICAoMHgyVUwgPDwgR1BJT19NT0RFUl9NT0RFUjZfUG9zKSAgIC8qITwgMHgwMDAwMjAwMCAqLw0KDQojZGVmaW5lIEdQSU9fTU9ERVJfTU9ERVI3X1BvcyAgICAgICAgICAgICAgICAoMTRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fTU9ERVJfTU9ERVI3X01zayAgICAgICAgICAgICAgICAoMHgzVUwgPDwgR1BJT19NT0RFUl9NT0RFUjdfUG9zKSAgIC8qITwgMHgwMDAwQzAwMCAqLw0KI2RlZmluZSBHUElPX01PREVSX01PREVSNyAgICAgICAgICAgICAgICAgICAgR1BJT19NT0RFUl9NT0RFUjdfTXNrICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX01PREVSX01PREVSN18wICAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IEdQSU9fTU9ERVJfTU9ERVI3X1BvcykgICAvKiE8IDB4MDAwMDQwMDAgKi8NCiNkZWZpbmUgR1BJT19NT0RFUl9NT0RFUjdfMSAgICAgICAgICAgICAgICAgICgweDJVTCA8PCBHUElPX01PREVSX01PREVSN19Qb3MpICAgLyohPCAweDAwMDA4MDAwICovDQoNCiNkZWZpbmUgR1BJT19NT0RFUl9NT0RFUjhfUG9zICAgICAgICAgICAgICAgICgxNlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19NT0RFUl9NT0RFUjhfTXNrICAgICAgICAgICAgICAgICgweDNVTCA8PCBHUElPX01PREVSX01PREVSOF9Qb3MpICAgLyohPCAweDAwMDMwMDAwICovDQojZGVmaW5lIEdQSU9fTU9ERVJfTU9ERVI4ICAgICAgICAgICAgICAgICAgICBHUElPX01PREVSX01PREVSOF9Nc2sgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fTU9ERVJfTU9ERVI4XzAgICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgR1BJT19NT0RFUl9NT0RFUjhfUG9zKSAgIC8qITwgMHgwMDAxMDAwMCAqLw0KI2RlZmluZSBHUElPX01PREVSX01PREVSOF8xICAgICAgICAgICAgICAgICAgKDB4MlVMIDw8IEdQSU9fTU9ERVJfTU9ERVI4X1BvcykgICAvKiE8IDB4MDAwMjAwMDAgKi8NCg0KI2RlZmluZSBHUElPX01PREVSX01PREVSOV9Qb3MgICAgICAgICAgICAgICAgKDE4VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX01PREVSX01PREVSOV9Nc2sgICAgICAgICAgICAgICAgKDB4M1VMIDw8IEdQSU9fTU9ERVJfTU9ERVI5X1BvcykgICAvKiE8IDB4MDAwQzAwMDAgKi8NCiNkZWZpbmUgR1BJT19NT0RFUl9NT0RFUjkgICAgICAgICAgICAgICAgICAgIEdQSU9fTU9ERVJfTU9ERVI5X01zayAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19NT0RFUl9NT0RFUjlfMCAgICAgICAgICAgICAgICAgICgweDFVTCA8PCBHUElPX01PREVSX01PREVSOV9Qb3MpICAgLyohPCAweDAwMDQwMDAwICovDQojZGVmaW5lIEdQSU9fTU9ERVJfTU9ERVI5XzEgICAgICAgICAgICAgICAgICAoMHgyVUwgPDwgR1BJT19NT0RFUl9NT0RFUjlfUG9zKSAgIC8qITwgMHgwMDA4MDAwMCAqLw0KDQojZGVmaW5lIEdQSU9fTU9ERVJfTU9ERVIxMF9Qb3MgICAgICAgICAgICAgICAoMjBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fTU9ERVJfTU9ERVIxMF9Nc2sgICAgICAgICAgICAgICAoMHgzVUwgPDwgR1BJT19NT0RFUl9NT0RFUjEwX1BvcykgIC8qITwgMHgwMDMwMDAwMCAqLw0KI2RlZmluZSBHUElPX01PREVSX01PREVSMTAgICAgICAgICAgICAgICAgICAgR1BJT19NT0RFUl9NT0RFUjEwX01zayAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX01PREVSX01PREVSMTBfMCAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IEdQSU9fTU9ERVJfTU9ERVIxMF9Qb3MpICAvKiE8IDB4MDAxMDAwMDAgKi8NCiNkZWZpbmUgR1BJT19NT0RFUl9NT0RFUjEwXzEgICAgICAgICAgICAgICAgICgweDJVTCA8PCBHUElPX01PREVSX01PREVSMTBfUG9zKSAgLyohPCAweDAwMjAwMDAwICovDQoNCiNkZWZpbmUgR1BJT19NT0RFUl9NT0RFUjExX1BvcyAgICAgICAgICAgICAgICgyMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19NT0RFUl9NT0RFUjExX01zayAgICAgICAgICAgICAgICgweDNVTCA8PCBHUElPX01PREVSX01PREVSMTFfUG9zKSAgLyohPCAweDAwQzAwMDAwICovDQojZGVmaW5lIEdQSU9fTU9ERVJfTU9ERVIxMSAgICAgICAgICAgICAgICAgICBHUElPX01PREVSX01PREVSMTFfTXNrICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fTU9ERVJfTU9ERVIxMV8wICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgR1BJT19NT0RFUl9NT0RFUjExX1BvcykgIC8qITwgMHgwMDQwMDAwMCAqLw0KI2RlZmluZSBHUElPX01PREVSX01PREVSMTFfMSAgICAgICAgICAgICAgICAgKDB4MlVMIDw8IEdQSU9fTU9ERVJfTU9ERVIxMV9Qb3MpICAvKiE8IDB4MDA4MDAwMDAgKi8NCg0KI2RlZmluZSBHUElPX01PREVSX01PREVSMTJfUG9zICAgICAgICAgICAgICAgKDI0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX01PREVSX01PREVSMTJfTXNrICAgICAgICAgICAgICAgKDB4M1VMIDw8IEdQSU9fTU9ERVJfTU9ERVIxMl9Qb3MpICAvKiE8IDB4MDMwMDAwMDAgKi8NCiNkZWZpbmUgR1BJT19NT0RFUl9NT0RFUjEyICAgICAgICAgICAgICAgICAgIEdQSU9fTU9ERVJfTU9ERVIxMl9Nc2sgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19NT0RFUl9NT0RFUjEyXzAgICAgICAgICAgICAgICAgICgweDFVTCA8PCBHUElPX01PREVSX01PREVSMTJfUG9zKSAgLyohPCAweDAxMDAwMDAwICovDQojZGVmaW5lIEdQSU9fTU9ERVJfTU9ERVIxMl8xICAgICAgICAgICAgICAgICAoMHgyVUwgPDwgR1BJT19NT0RFUl9NT0RFUjEyX1BvcykgIC8qITwgMHgwMjAwMDAwMCAqLw0KDQojZGVmaW5lIEdQSU9fTU9ERVJfTU9ERVIxM19Qb3MgICAgICAgICAgICAgICAoMjZVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fTU9ERVJfTU9ERVIxM19Nc2sgICAgICAgICAgICAgICAoMHgzVUwgPDwgR1BJT19NT0RFUl9NT0RFUjEzX1BvcykgIC8qITwgMHgwQzAwMDAwMCAqLw0KI2RlZmluZSBHUElPX01PREVSX01PREVSMTMgICAgICAgICAgICAgICAgICAgR1BJT19NT0RFUl9NT0RFUjEzX01zayAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX01PREVSX01PREVSMTNfMCAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IEdQSU9fTU9ERVJfTU9ERVIxM19Qb3MpICAvKiE8IDB4MDQwMDAwMDAgKi8NCiNkZWZpbmUgR1BJT19NT0RFUl9NT0RFUjEzXzEgICAgICAgICAgICAgICAgICgweDJVTCA8PCBHUElPX01PREVSX01PREVSMTNfUG9zKSAgLyohPCAweDA4MDAwMDAwICovDQoNCiNkZWZpbmUgR1BJT19NT0RFUl9NT0RFUjE0X1BvcyAgICAgICAgICAgICAgICgyOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19NT0RFUl9NT0RFUjE0X01zayAgICAgICAgICAgICAgICgweDNVTCA8PCBHUElPX01PREVSX01PREVSMTRfUG9zKSAgLyohPCAweDMwMDAwMDAwICovDQojZGVmaW5lIEdQSU9fTU9ERVJfTU9ERVIxNCAgICAgICAgICAgICAgICAgICBHUElPX01PREVSX01PREVSMTRfTXNrICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fTU9ERVJfTU9ERVIxNF8wICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgR1BJT19NT0RFUl9NT0RFUjE0X1BvcykgIC8qITwgMHgxMDAwMDAwMCAqLw0KI2RlZmluZSBHUElPX01PREVSX01PREVSMTRfMSAgICAgICAgICAgICAgICAgKDB4MlVMIDw8IEdQSU9fTU9ERVJfTU9ERVIxNF9Qb3MpICAvKiE8IDB4MjAwMDAwMDAgKi8NCg0KI2RlZmluZSBHUElPX01PREVSX01PREVSMTVfUG9zICAgICAgICAgICAgICAgKDMwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX01PREVSX01PREVSMTVfTXNrICAgICAgICAgICAgICAgKDB4M1VMIDw8IEdQSU9fTU9ERVJfTU9ERVIxNV9Qb3MpICAvKiE8IDB4QzAwMDAwMDAgKi8NCiNkZWZpbmUgR1BJT19NT0RFUl9NT0RFUjE1ICAgICAgICAgICAgICAgICAgIEdQSU9fTU9ERVJfTU9ERVIxNV9Nc2sgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19NT0RFUl9NT0RFUjE1XzAgICAgICAgICAgICAgICAgICgweDFVTCA8PCBHUElPX01PREVSX01PREVSMTVfUG9zKSAgLyohPCAweDQwMDAwMDAwICovDQojZGVmaW5lIEdQSU9fTU9ERVJfTU9ERVIxNV8xICAgICAgICAgICAgICAgICAoMHgyVUwgPDwgR1BJT19NT0RFUl9NT0RFUjE1X1BvcykgIC8qITwgMHg4MDAwMDAwMCAqLw0KDQovKioqKioqKioqKioqKioqKioqICBCaXRzIGRlZmluaXRpb24gZm9yIEdQSU9fT1RZUEVSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBHUElPX09UWVBFUl9PVF8wICAgICAgICAgICAgICAgICAgICAgKDB4MDAwMDAwMDFVKSAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX09UWVBFUl9PVF8xICAgICAgICAgICAgICAgICAgICAgKDB4MDAwMDAwMDJVKSAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX09UWVBFUl9PVF8yICAgICAgICAgICAgICAgICAgICAgKDB4MDAwMDAwMDRVKSAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX09UWVBFUl9PVF8zICAgICAgICAgICAgICAgICAgICAgKDB4MDAwMDAwMDhVKSAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX09UWVBFUl9PVF80ICAgICAgICAgICAgICAgICAgICAgKDB4MDAwMDAwMTBVKSAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX09UWVBFUl9PVF81ICAgICAgICAgICAgICAgICAgICAgKDB4MDAwMDAwMjBVKSAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX09UWVBFUl9PVF82ICAgICAgICAgICAgICAgICAgICAgKDB4MDAwMDAwNDBVKSAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX09UWVBFUl9PVF83ICAgICAgICAgICAgICAgICAgICAgKDB4MDAwMDAwODBVKSAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX09UWVBFUl9PVF84ICAgICAgICAgICAgICAgICAgICAgKDB4MDAwMDAxMDBVKSAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX09UWVBFUl9PVF85ICAgICAgICAgICAgICAgICAgICAgKDB4MDAwMDAyMDBVKSAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX09UWVBFUl9PVF8xMCAgICAgICAgICAgICAgICAgICAgKDB4MDAwMDA0MDBVKSAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX09UWVBFUl9PVF8xMSAgICAgICAgICAgICAgICAgICAgKDB4MDAwMDA4MDBVKSAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX09UWVBFUl9PVF8xMiAgICAgICAgICAgICAgICAgICAgKDB4MDAwMDEwMDBVKSAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX09UWVBFUl9PVF8xMyAgICAgICAgICAgICAgICAgICAgKDB4MDAwMDIwMDBVKSAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX09UWVBFUl9PVF8xNCAgICAgICAgICAgICAgICAgICAgKDB4MDAwMDQwMDBVKSAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX09UWVBFUl9PVF8xNSAgICAgICAgICAgICAgICAgICAgKDB4MDAwMDgwMDBVKSAgICAgICAgICAgICAgICAgICAgIA0KDQovKioqKioqKioqKioqKioqKioqICBCaXRzIGRlZmluaXRpb24gZm9yIEdQSU9fT1NQRUVEUiByZWdpc3RlciAgKioqKioqKioqKioqKioqLw0KI2RlZmluZSBHUElPX09TUEVFREVSX09TUEVFRFIwX1BvcyAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX09TUEVFREVSX09TUEVFRFIwX01zayAgICAgICAgICAgKDB4M1VMIDw8IEdQSU9fT1NQRUVERVJfT1NQRUVEUjBfUG9zKSAvKiE8IDB4MDAwMDAwMDMgKi8NCiNkZWZpbmUgR1BJT19PU1BFRURFUl9PU1BFRURSMCAgICAgICAgICAgICAgIEdQSU9fT1NQRUVERVJfT1NQRUVEUjBfTXNrICAgICAgICANCiNkZWZpbmUgR1BJT19PU1BFRURFUl9PU1BFRURSMF8wICAgICAgICAgICAgICgweDFVTCA8PCBHUElPX09TUEVFREVSX09TUEVFRFIwX1BvcykgLyohPCAweDAwMDAwMDAxICovDQojZGVmaW5lIEdQSU9fT1NQRUVERVJfT1NQRUVEUjBfMSAgICAgICAgICAgICAoMHgyVUwgPDwgR1BJT19PU1BFRURFUl9PU1BFRURSMF9Qb3MpIC8qITwgMHgwMDAwMDAwMiAqLw0KDQojZGVmaW5lIEdQSU9fT1NQRUVERVJfT1NQRUVEUjFfUG9zICAgICAgICAgICAoMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fT1NQRUVERVJfT1NQRUVEUjFfTXNrICAgICAgICAgICAoMHgzVUwgPDwgR1BJT19PU1BFRURFUl9PU1BFRURSMV9Qb3MpIC8qITwgMHgwMDAwMDAwQyAqLw0KI2RlZmluZSBHUElPX09TUEVFREVSX09TUEVFRFIxICAgICAgICAgICAgICAgR1BJT19PU1BFRURFUl9PU1BFRURSMV9Nc2sgICAgICAgIA0KI2RlZmluZSBHUElPX09TUEVFREVSX09TUEVFRFIxXzAgICAgICAgICAgICAgKDB4MVVMIDw8IEdQSU9fT1NQRUVERVJfT1NQRUVEUjFfUG9zKSAvKiE8IDB4MDAwMDAwMDQgKi8NCiNkZWZpbmUgR1BJT19PU1BFRURFUl9PU1BFRURSMV8xICAgICAgICAgICAgICgweDJVTCA8PCBHUElPX09TUEVFREVSX09TUEVFRFIxX1BvcykgLyohPCAweDAwMDAwMDA4ICovDQoNCiNkZWZpbmUgR1BJT19PU1BFRURFUl9PU1BFRURSMl9Qb3MgICAgICAgICAgICg0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19PU1BFRURFUl9PU1BFRURSMl9Nc2sgICAgICAgICAgICgweDNVTCA8PCBHUElPX09TUEVFREVSX09TUEVFRFIyX1BvcykgLyohPCAweDAwMDAwMDMwICovDQojZGVmaW5lIEdQSU9fT1NQRUVERVJfT1NQRUVEUjIgICAgICAgICAgICAgICBHUElPX09TUEVFREVSX09TUEVFRFIyX01zayAgICAgICAgDQojZGVmaW5lIEdQSU9fT1NQRUVERVJfT1NQRUVEUjJfMCAgICAgICAgICAgICAoMHgxVUwgPDwgR1BJT19PU1BFRURFUl9PU1BFRURSMl9Qb3MpIC8qITwgMHgwMDAwMDAxMCAqLw0KI2RlZmluZSBHUElPX09TUEVFREVSX09TUEVFRFIyXzEgICAgICAgICAgICAgKDB4MlVMIDw8IEdQSU9fT1NQRUVERVJfT1NQRUVEUjJfUG9zKSAvKiE8IDB4MDAwMDAwMjAgKi8NCg0KI2RlZmluZSBHUElPX09TUEVFREVSX09TUEVFRFIzX1BvcyAgICAgICAgICAgKDZVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX09TUEVFREVSX09TUEVFRFIzX01zayAgICAgICAgICAgKDB4M1VMIDw8IEdQSU9fT1NQRUVERVJfT1NQRUVEUjNfUG9zKSAvKiE8IDB4MDAwMDAwQzAgKi8NCiNkZWZpbmUgR1BJT19PU1BFRURFUl9PU1BFRURSMyAgICAgICAgICAgICAgIEdQSU9fT1NQRUVERVJfT1NQRUVEUjNfTXNrICAgICAgICANCiNkZWZpbmUgR1BJT19PU1BFRURFUl9PU1BFRURSM18wICAgICAgICAgICAgICgweDFVTCA8PCBHUElPX09TUEVFREVSX09TUEVFRFIzX1BvcykgLyohPCAweDAwMDAwMDQwICovDQojZGVmaW5lIEdQSU9fT1NQRUVERVJfT1NQRUVEUjNfMSAgICAgICAgICAgICAoMHgyVUwgPDwgR1BJT19PU1BFRURFUl9PU1BFRURSM19Qb3MpIC8qITwgMHgwMDAwMDA4MCAqLw0KDQojZGVmaW5lIEdQSU9fT1NQRUVERVJfT1NQRUVEUjRfUG9zICAgICAgICAgICAoOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fT1NQRUVERVJfT1NQRUVEUjRfTXNrICAgICAgICAgICAoMHgzVUwgPDwgR1BJT19PU1BFRURFUl9PU1BFRURSNF9Qb3MpIC8qITwgMHgwMDAwMDMwMCAqLw0KI2RlZmluZSBHUElPX09TUEVFREVSX09TUEVFRFI0ICAgICAgICAgICAgICAgR1BJT19PU1BFRURFUl9PU1BFRURSNF9Nc2sgICAgICAgIA0KI2RlZmluZSBHUElPX09TUEVFREVSX09TUEVFRFI0XzAgICAgICAgICAgICAgKDB4MVVMIDw8IEdQSU9fT1NQRUVERVJfT1NQRUVEUjRfUG9zKSAvKiE8IDB4MDAwMDAxMDAgKi8NCiNkZWZpbmUgR1BJT19PU1BFRURFUl9PU1BFRURSNF8xICAgICAgICAgICAgICgweDJVTCA8PCBHUElPX09TUEVFREVSX09TUEVFRFI0X1BvcykgLyohPCAweDAwMDAwMjAwICovDQoNCiNkZWZpbmUgR1BJT19PU1BFRURFUl9PU1BFRURSNV9Qb3MgICAgICAgICAgICgxMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19PU1BFRURFUl9PU1BFRURSNV9Nc2sgICAgICAgICAgICgweDNVTCA8PCBHUElPX09TUEVFREVSX09TUEVFRFI1X1BvcykgLyohPCAweDAwMDAwQzAwICovDQojZGVmaW5lIEdQSU9fT1NQRUVERVJfT1NQRUVEUjUgICAgICAgICAgICAgICBHUElPX09TUEVFREVSX09TUEVFRFI1X01zayAgICAgICAgDQojZGVmaW5lIEdQSU9fT1NQRUVERVJfT1NQRUVEUjVfMCAgICAgICAgICAgICAoMHgxVUwgPDwgR1BJT19PU1BFRURFUl9PU1BFRURSNV9Qb3MpIC8qITwgMHgwMDAwMDQwMCAqLw0KI2RlZmluZSBHUElPX09TUEVFREVSX09TUEVFRFI1XzEgICAgICAgICAgICAgKDB4MlVMIDw8IEdQSU9fT1NQRUVERVJfT1NQRUVEUjVfUG9zKSAvKiE8IDB4MDAwMDA4MDAgKi8NCg0KI2RlZmluZSBHUElPX09TUEVFREVSX09TUEVFRFI2X1BvcyAgICAgICAgICAgKDEyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX09TUEVFREVSX09TUEVFRFI2X01zayAgICAgICAgICAgKDB4M1VMIDw8IEdQSU9fT1NQRUVERVJfT1NQRUVEUjZfUG9zKSAvKiE8IDB4MDAwMDMwMDAgKi8NCiNkZWZpbmUgR1BJT19PU1BFRURFUl9PU1BFRURSNiAgICAgICAgICAgICAgIEdQSU9fT1NQRUVERVJfT1NQRUVEUjZfTXNrICAgICAgICANCiNkZWZpbmUgR1BJT19PU1BFRURFUl9PU1BFRURSNl8wICAgICAgICAgICAgICgweDFVTCA8PCBHUElPX09TUEVFREVSX09TUEVFRFI2X1BvcykgLyohPCAweDAwMDAxMDAwICovDQojZGVmaW5lIEdQSU9fT1NQRUVERVJfT1NQRUVEUjZfMSAgICAgICAgICAgICAoMHgyVUwgPDwgR1BJT19PU1BFRURFUl9PU1BFRURSNl9Qb3MpIC8qITwgMHgwMDAwMjAwMCAqLw0KDQojZGVmaW5lIEdQSU9fT1NQRUVERVJfT1NQRUVEUjdfUG9zICAgICAgICAgICAoMTRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fT1NQRUVERVJfT1NQRUVEUjdfTXNrICAgICAgICAgICAoMHgzVUwgPDwgR1BJT19PU1BFRURFUl9PU1BFRURSN19Qb3MpIC8qITwgMHgwMDAwQzAwMCAqLw0KI2RlZmluZSBHUElPX09TUEVFREVSX09TUEVFRFI3ICAgICAgICAgICAgICAgR1BJT19PU1BFRURFUl9PU1BFRURSN19Nc2sgICAgICAgIA0KI2RlZmluZSBHUElPX09TUEVFREVSX09TUEVFRFI3XzAgICAgICAgICAgICAgKDB4MVVMIDw8IEdQSU9fT1NQRUVERVJfT1NQRUVEUjdfUG9zKSAvKiE8IDB4MDAwMDQwMDAgKi8NCiNkZWZpbmUgR1BJT19PU1BFRURFUl9PU1BFRURSN18xICAgICAgICAgICAgICgweDJVTCA8PCBHUElPX09TUEVFREVSX09TUEVFRFI3X1BvcykgLyohPCAweDAwMDA4MDAwICovDQoNCiNkZWZpbmUgR1BJT19PU1BFRURFUl9PU1BFRURSOF9Qb3MgICAgICAgICAgICgxNlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19PU1BFRURFUl9PU1BFRURSOF9Nc2sgICAgICAgICAgICgweDNVTCA8PCBHUElPX09TUEVFREVSX09TUEVFRFI4X1BvcykgLyohPCAweDAwMDMwMDAwICovDQojZGVmaW5lIEdQSU9fT1NQRUVERVJfT1NQRUVEUjggICAgICAgICAgICAgICBHUElPX09TUEVFREVSX09TUEVFRFI4X01zayAgICAgICAgDQojZGVmaW5lIEdQSU9fT1NQRUVERVJfT1NQRUVEUjhfMCAgICAgICAgICAgICAoMHgxVUwgPDwgR1BJT19PU1BFRURFUl9PU1BFRURSOF9Qb3MpIC8qITwgMHgwMDAxMDAwMCAqLw0KI2RlZmluZSBHUElPX09TUEVFREVSX09TUEVFRFI4XzEgICAgICAgICAgICAgKDB4MlVMIDw8IEdQSU9fT1NQRUVERVJfT1NQRUVEUjhfUG9zKSAvKiE8IDB4MDAwMjAwMDAgKi8NCg0KI2RlZmluZSBHUElPX09TUEVFREVSX09TUEVFRFI5X1BvcyAgICAgICAgICAgKDE4VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX09TUEVFREVSX09TUEVFRFI5X01zayAgICAgICAgICAgKDB4M1VMIDw8IEdQSU9fT1NQRUVERVJfT1NQRUVEUjlfUG9zKSAvKiE8IDB4MDAwQzAwMDAgKi8NCiNkZWZpbmUgR1BJT19PU1BFRURFUl9PU1BFRURSOSAgICAgICAgICAgICAgIEdQSU9fT1NQRUVERVJfT1NQRUVEUjlfTXNrICAgICAgICANCiNkZWZpbmUgR1BJT19PU1BFRURFUl9PU1BFRURSOV8wICAgICAgICAgICAgICgweDFVTCA8PCBHUElPX09TUEVFREVSX09TUEVFRFI5X1BvcykgLyohPCAweDAwMDQwMDAwICovDQojZGVmaW5lIEdQSU9fT1NQRUVERVJfT1NQRUVEUjlfMSAgICAgICAgICAgICAoMHgyVUwgPDwgR1BJT19PU1BFRURFUl9PU1BFRURSOV9Qb3MpIC8qITwgMHgwMDA4MDAwMCAqLw0KDQojZGVmaW5lIEdQSU9fT1NQRUVERVJfT1NQRUVEUjEwX1BvcyAgICAgICAgICAoMjBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fT1NQRUVERVJfT1NQRUVEUjEwX01zayAgICAgICAgICAoMHgzVUwgPDwgR1BJT19PU1BFRURFUl9PU1BFRURSMTBfUG9zKSAvKiE8IDB4MDAzMDAwMDAgKi8NCiNkZWZpbmUgR1BJT19PU1BFRURFUl9PU1BFRURSMTAgICAgICAgICAgICAgIEdQSU9fT1NQRUVERVJfT1NQRUVEUjEwX01zayAgICAgICANCiNkZWZpbmUgR1BJT19PU1BFRURFUl9PU1BFRURSMTBfMCAgICAgICAgICAgICgweDFVTCA8PCBHUElPX09TUEVFREVSX09TUEVFRFIxMF9Qb3MpIC8qITwgMHgwMDEwMDAwMCAqLw0KI2RlZmluZSBHUElPX09TUEVFREVSX09TUEVFRFIxMF8xICAgICAgICAgICAgKDB4MlVMIDw8IEdQSU9fT1NQRUVERVJfT1NQRUVEUjEwX1BvcykgLyohPCAweDAwMjAwMDAwICovDQoNCiNkZWZpbmUgR1BJT19PU1BFRURFUl9PU1BFRURSMTFfUG9zICAgICAgICAgICgyMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19PU1BFRURFUl9PU1BFRURSMTFfTXNrICAgICAgICAgICgweDNVTCA8PCBHUElPX09TUEVFREVSX09TUEVFRFIxMV9Qb3MpIC8qITwgMHgwMEMwMDAwMCAqLw0KI2RlZmluZSBHUElPX09TUEVFREVSX09TUEVFRFIxMSAgICAgICAgICAgICAgR1BJT19PU1BFRURFUl9PU1BFRURSMTFfTXNrICAgICAgIA0KI2RlZmluZSBHUElPX09TUEVFREVSX09TUEVFRFIxMV8wICAgICAgICAgICAgKDB4MVVMIDw8IEdQSU9fT1NQRUVERVJfT1NQRUVEUjExX1BvcykgLyohPCAweDAwNDAwMDAwICovDQojZGVmaW5lIEdQSU9fT1NQRUVERVJfT1NQRUVEUjExXzEgICAgICAgICAgICAoMHgyVUwgPDwgR1BJT19PU1BFRURFUl9PU1BFRURSMTFfUG9zKSAvKiE8IDB4MDA4MDAwMDAgKi8NCg0KI2RlZmluZSBHUElPX09TUEVFREVSX09TUEVFRFIxMl9Qb3MgICAgICAgICAgKDI0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX09TUEVFREVSX09TUEVFRFIxMl9Nc2sgICAgICAgICAgKDB4M1VMIDw8IEdQSU9fT1NQRUVERVJfT1NQRUVEUjEyX1BvcykgLyohPCAweDAzMDAwMDAwICovDQojZGVmaW5lIEdQSU9fT1NQRUVERVJfT1NQRUVEUjEyICAgICAgICAgICAgICBHUElPX09TUEVFREVSX09TUEVFRFIxMl9Nc2sgICAgICAgDQojZGVmaW5lIEdQSU9fT1NQRUVERVJfT1NQRUVEUjEyXzAgICAgICAgICAgICAoMHgxVUwgPDwgR1BJT19PU1BFRURFUl9PU1BFRURSMTJfUG9zKSAvKiE8IDB4MDEwMDAwMDAgKi8NCiNkZWZpbmUgR1BJT19PU1BFRURFUl9PU1BFRURSMTJfMSAgICAgICAgICAgICgweDJVTCA8PCBHUElPX09TUEVFREVSX09TUEVFRFIxMl9Qb3MpIC8qITwgMHgwMjAwMDAwMCAqLw0KDQojZGVmaW5lIEdQSU9fT1NQRUVERVJfT1NQRUVEUjEzX1BvcyAgICAgICAgICAoMjZVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fT1NQRUVERVJfT1NQRUVEUjEzX01zayAgICAgICAgICAoMHgzVUwgPDwgR1BJT19PU1BFRURFUl9PU1BFRURSMTNfUG9zKSAvKiE8IDB4MEMwMDAwMDAgKi8NCiNkZWZpbmUgR1BJT19PU1BFRURFUl9PU1BFRURSMTMgICAgICAgICAgICAgIEdQSU9fT1NQRUVERVJfT1NQRUVEUjEzX01zayAgICAgICANCiNkZWZpbmUgR1BJT19PU1BFRURFUl9PU1BFRURSMTNfMCAgICAgICAgICAgICgweDFVTCA8PCBHUElPX09TUEVFREVSX09TUEVFRFIxM19Qb3MpIC8qITwgMHgwNDAwMDAwMCAqLw0KI2RlZmluZSBHUElPX09TUEVFREVSX09TUEVFRFIxM18xICAgICAgICAgICAgKDB4MlVMIDw8IEdQSU9fT1NQRUVERVJfT1NQRUVEUjEzX1BvcykgLyohPCAweDA4MDAwMDAwICovDQoNCiNkZWZpbmUgR1BJT19PU1BFRURFUl9PU1BFRURSMTRfUG9zICAgICAgICAgICgyOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19PU1BFRURFUl9PU1BFRURSMTRfTXNrICAgICAgICAgICgweDNVTCA8PCBHUElPX09TUEVFREVSX09TUEVFRFIxNF9Qb3MpIC8qITwgMHgzMDAwMDAwMCAqLw0KI2RlZmluZSBHUElPX09TUEVFREVSX09TUEVFRFIxNCAgICAgICAgICAgICAgR1BJT19PU1BFRURFUl9PU1BFRURSMTRfTXNrICAgICAgIA0KI2RlZmluZSBHUElPX09TUEVFREVSX09TUEVFRFIxNF8wICAgICAgICAgICAgKDB4MVVMIDw8IEdQSU9fT1NQRUVERVJfT1NQRUVEUjE0X1BvcykgLyohPCAweDEwMDAwMDAwICovDQojZGVmaW5lIEdQSU9fT1NQRUVERVJfT1NQRUVEUjE0XzEgICAgICAgICAgICAoMHgyVUwgPDwgR1BJT19PU1BFRURFUl9PU1BFRURSMTRfUG9zKSAvKiE8IDB4MjAwMDAwMDAgKi8NCg0KI2RlZmluZSBHUElPX09TUEVFREVSX09TUEVFRFIxNV9Qb3MgICAgICAgICAgKDMwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX09TUEVFREVSX09TUEVFRFIxNV9Nc2sgICAgICAgICAgKDB4M1VMIDw8IEdQSU9fT1NQRUVERVJfT1NQRUVEUjE1X1BvcykgLyohPCAweEMwMDAwMDAwICovDQojZGVmaW5lIEdQSU9fT1NQRUVERVJfT1NQRUVEUjE1ICAgICAgICAgICAgICBHUElPX09TUEVFREVSX09TUEVFRFIxNV9Nc2sgICAgICAgDQojZGVmaW5lIEdQSU9fT1NQRUVERVJfT1NQRUVEUjE1XzAgICAgICAgICAgICAoMHgxVUwgPDwgR1BJT19PU1BFRURFUl9PU1BFRURSMTVfUG9zKSAvKiE8IDB4NDAwMDAwMDAgKi8NCiNkZWZpbmUgR1BJT19PU1BFRURFUl9PU1BFRURSMTVfMSAgICAgICAgICAgICgweDJVTCA8PCBHUElPX09TUEVFREVSX09TUEVFRFIxNV9Qb3MpIC8qITwgMHg4MDAwMDAwMCAqLw0KDQovKioqKioqKioqKioqKioqKioqICBCaXRzIGRlZmluaXRpb24gZm9yIEdQSU9fUFVQRFIgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBHUElPX1BVUERSX1BVUERSMF9Qb3MgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX1BVUERSX1BVUERSMF9Nc2sgICAgICAgICAgICAgICAgKDB4M1VMIDw8IEdQSU9fUFVQRFJfUFVQRFIwX1BvcykgICAvKiE8IDB4MDAwMDAwMDMgKi8NCiNkZWZpbmUgR1BJT19QVVBEUl9QVVBEUjAgICAgICAgICAgICAgICAgICAgIEdQSU9fUFVQRFJfUFVQRFIwX01zayAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19QVVBEUl9QVVBEUjBfMCAgICAgICAgICAgICAgICAgICgweDFVTCA8PCBHUElPX1BVUERSX1BVUERSMF9Qb3MpICAgLyohPCAweDAwMDAwMDAxICovDQojZGVmaW5lIEdQSU9fUFVQRFJfUFVQRFIwXzEgICAgICAgICAgICAgICAgICAoMHgyVUwgPDwgR1BJT19QVVBEUl9QVVBEUjBfUG9zKSAgIC8qITwgMHgwMDAwMDAwMiAqLw0KDQojZGVmaW5lIEdQSU9fUFVQRFJfUFVQRFIxX1BvcyAgICAgICAgICAgICAgICAoMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fUFVQRFJfUFVQRFIxX01zayAgICAgICAgICAgICAgICAoMHgzVUwgPDwgR1BJT19QVVBEUl9QVVBEUjFfUG9zKSAgIC8qITwgMHgwMDAwMDAwQyAqLw0KI2RlZmluZSBHUElPX1BVUERSX1BVUERSMSAgICAgICAgICAgICAgICAgICAgR1BJT19QVVBEUl9QVVBEUjFfTXNrICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX1BVUERSX1BVUERSMV8wICAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IEdQSU9fUFVQRFJfUFVQRFIxX1BvcykgICAvKiE8IDB4MDAwMDAwMDQgKi8NCiNkZWZpbmUgR1BJT19QVVBEUl9QVVBEUjFfMSAgICAgICAgICAgICAgICAgICgweDJVTCA8PCBHUElPX1BVUERSX1BVUERSMV9Qb3MpICAgLyohPCAweDAwMDAwMDA4ICovDQoNCiNkZWZpbmUgR1BJT19QVVBEUl9QVVBEUjJfUG9zICAgICAgICAgICAgICAgICg0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19QVVBEUl9QVVBEUjJfTXNrICAgICAgICAgICAgICAgICgweDNVTCA8PCBHUElPX1BVUERSX1BVUERSMl9Qb3MpICAgLyohPCAweDAwMDAwMDMwICovDQojZGVmaW5lIEdQSU9fUFVQRFJfUFVQRFIyICAgICAgICAgICAgICAgICAgICBHUElPX1BVUERSX1BVUERSMl9Nc2sgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fUFVQRFJfUFVQRFIyXzAgICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgR1BJT19QVVBEUl9QVVBEUjJfUG9zKSAgIC8qITwgMHgwMDAwMDAxMCAqLw0KI2RlZmluZSBHUElPX1BVUERSX1BVUERSMl8xICAgICAgICAgICAgICAgICAgKDB4MlVMIDw8IEdQSU9fUFVQRFJfUFVQRFIyX1BvcykgICAvKiE8IDB4MDAwMDAwMjAgKi8NCg0KI2RlZmluZSBHUElPX1BVUERSX1BVUERSM19Qb3MgICAgICAgICAgICAgICAgKDZVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX1BVUERSX1BVUERSM19Nc2sgICAgICAgICAgICAgICAgKDB4M1VMIDw8IEdQSU9fUFVQRFJfUFVQRFIzX1BvcykgICAvKiE8IDB4MDAwMDAwQzAgKi8NCiNkZWZpbmUgR1BJT19QVVBEUl9QVVBEUjMgICAgICAgICAgICAgICAgICAgIEdQSU9fUFVQRFJfUFVQRFIzX01zayAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19QVVBEUl9QVVBEUjNfMCAgICAgICAgICAgICAgICAgICgweDFVTCA8PCBHUElPX1BVUERSX1BVUERSM19Qb3MpICAgLyohPCAweDAwMDAwMDQwICovDQojZGVmaW5lIEdQSU9fUFVQRFJfUFVQRFIzXzEgICAgICAgICAgICAgICAgICAoMHgyVUwgPDwgR1BJT19QVVBEUl9QVVBEUjNfUG9zKSAgIC8qITwgMHgwMDAwMDA4MCAqLw0KDQojZGVmaW5lIEdQSU9fUFVQRFJfUFVQRFI0X1BvcyAgICAgICAgICAgICAgICAoOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fUFVQRFJfUFVQRFI0X01zayAgICAgICAgICAgICAgICAoMHgzVUwgPDwgR1BJT19QVVBEUl9QVVBEUjRfUG9zKSAgIC8qITwgMHgwMDAwMDMwMCAqLw0KI2RlZmluZSBHUElPX1BVUERSX1BVUERSNCAgICAgICAgICAgICAgICAgICAgR1BJT19QVVBEUl9QVVBEUjRfTXNrICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX1BVUERSX1BVUERSNF8wICAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IEdQSU9fUFVQRFJfUFVQRFI0X1BvcykgICAvKiE8IDB4MDAwMDAxMDAgKi8NCiNkZWZpbmUgR1BJT19QVVBEUl9QVVBEUjRfMSAgICAgICAgICAgICAgICAgICgweDJVTCA8PCBHUElPX1BVUERSX1BVUERSNF9Qb3MpICAgLyohPCAweDAwMDAwMjAwICovDQoNCiNkZWZpbmUgR1BJT19QVVBEUl9QVVBEUjVfUG9zICAgICAgICAgICAgICAgICgxMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19QVVBEUl9QVVBEUjVfTXNrICAgICAgICAgICAgICAgICgweDNVTCA8PCBHUElPX1BVUERSX1BVUERSNV9Qb3MpICAgLyohPCAweDAwMDAwQzAwICovDQojZGVmaW5lIEdQSU9fUFVQRFJfUFVQRFI1ICAgICAgICAgICAgICAgICAgICBHUElPX1BVUERSX1BVUERSNV9Nc2sgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fUFVQRFJfUFVQRFI1XzAgICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgR1BJT19QVVBEUl9QVVBEUjVfUG9zKSAgIC8qITwgMHgwMDAwMDQwMCAqLw0KI2RlZmluZSBHUElPX1BVUERSX1BVUERSNV8xICAgICAgICAgICAgICAgICAgKDB4MlVMIDw8IEdQSU9fUFVQRFJfUFVQRFI1X1BvcykgICAvKiE8IDB4MDAwMDA4MDAgKi8NCg0KI2RlZmluZSBHUElPX1BVUERSX1BVUERSNl9Qb3MgICAgICAgICAgICAgICAgKDEyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX1BVUERSX1BVUERSNl9Nc2sgICAgICAgICAgICAgICAgKDB4M1VMIDw8IEdQSU9fUFVQRFJfUFVQRFI2X1BvcykgICAvKiE8IDB4MDAwMDMwMDAgKi8NCiNkZWZpbmUgR1BJT19QVVBEUl9QVVBEUjYgICAgICAgICAgICAgICAgICAgIEdQSU9fUFVQRFJfUFVQRFI2X01zayAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19QVVBEUl9QVVBEUjZfMCAgICAgICAgICAgICAgICAgICgweDFVTCA8PCBHUElPX1BVUERSX1BVUERSNl9Qb3MpICAgLyohPCAweDAwMDAxMDAwICovDQojZGVmaW5lIEdQSU9fUFVQRFJfUFVQRFI2XzEgICAgICAgICAgICAgICAgICAoMHgyVUwgPDwgR1BJT19QVVBEUl9QVVBEUjZfUG9zKSAgIC8qITwgMHgwMDAwMjAwMCAqLw0KDQojZGVmaW5lIEdQSU9fUFVQRFJfUFVQRFI3X1BvcyAgICAgICAgICAgICAgICAoMTRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fUFVQRFJfUFVQRFI3X01zayAgICAgICAgICAgICAgICAoMHgzVUwgPDwgR1BJT19QVVBEUl9QVVBEUjdfUG9zKSAgIC8qITwgMHgwMDAwQzAwMCAqLw0KI2RlZmluZSBHUElPX1BVUERSX1BVUERSNyAgICAgICAgICAgICAgICAgICAgR1BJT19QVVBEUl9QVVBEUjdfTXNrICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX1BVUERSX1BVUERSN18wICAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IEdQSU9fUFVQRFJfUFVQRFI3X1BvcykgICAvKiE8IDB4MDAwMDQwMDAgKi8NCiNkZWZpbmUgR1BJT19QVVBEUl9QVVBEUjdfMSAgICAgICAgICAgICAgICAgICgweDJVTCA8PCBHUElPX1BVUERSX1BVUERSN19Qb3MpICAgLyohPCAweDAwMDA4MDAwICovDQoNCiNkZWZpbmUgR1BJT19QVVBEUl9QVVBEUjhfUG9zICAgICAgICAgICAgICAgICgxNlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19QVVBEUl9QVVBEUjhfTXNrICAgICAgICAgICAgICAgICgweDNVTCA8PCBHUElPX1BVUERSX1BVUERSOF9Qb3MpICAgLyohPCAweDAwMDMwMDAwICovDQojZGVmaW5lIEdQSU9fUFVQRFJfUFVQRFI4ICAgICAgICAgICAgICAgICAgICBHUElPX1BVUERSX1BVUERSOF9Nc2sgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fUFVQRFJfUFVQRFI4XzAgICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgR1BJT19QVVBEUl9QVVBEUjhfUG9zKSAgIC8qITwgMHgwMDAxMDAwMCAqLw0KI2RlZmluZSBHUElPX1BVUERSX1BVUERSOF8xICAgICAgICAgICAgICAgICAgKDB4MlVMIDw8IEdQSU9fUFVQRFJfUFVQRFI4X1BvcykgICAvKiE8IDB4MDAwMjAwMDAgKi8NCg0KI2RlZmluZSBHUElPX1BVUERSX1BVUERSOV9Qb3MgICAgICAgICAgICAgICAgKDE4VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX1BVUERSX1BVUERSOV9Nc2sgICAgICAgICAgICAgICAgKDB4M1VMIDw8IEdQSU9fUFVQRFJfUFVQRFI5X1BvcykgICAvKiE8IDB4MDAwQzAwMDAgKi8NCiNkZWZpbmUgR1BJT19QVVBEUl9QVVBEUjkgICAgICAgICAgICAgICAgICAgIEdQSU9fUFVQRFJfUFVQRFI5X01zayAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19QVVBEUl9QVVBEUjlfMCAgICAgICAgICAgICAgICAgICgweDFVTCA8PCBHUElPX1BVUERSX1BVUERSOV9Qb3MpICAgLyohPCAweDAwMDQwMDAwICovDQojZGVmaW5lIEdQSU9fUFVQRFJfUFVQRFI5XzEgICAgICAgICAgICAgICAgICAoMHgyVUwgPDwgR1BJT19QVVBEUl9QVVBEUjlfUG9zKSAgIC8qITwgMHgwMDA4MDAwMCAqLw0KDQojZGVmaW5lIEdQSU9fUFVQRFJfUFVQRFIxMF9Qb3MgICAgICAgICAgICAgICAoMjBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fUFVQRFJfUFVQRFIxMF9Nc2sgICAgICAgICAgICAgICAoMHgzVUwgPDwgR1BJT19QVVBEUl9QVVBEUjEwX1BvcykgIC8qITwgMHgwMDMwMDAwMCAqLw0KI2RlZmluZSBHUElPX1BVUERSX1BVUERSMTAgICAgICAgICAgICAgICAgICAgR1BJT19QVVBEUl9QVVBEUjEwX01zayAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX1BVUERSX1BVUERSMTBfMCAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IEdQSU9fUFVQRFJfUFVQRFIxMF9Qb3MpICAvKiE8IDB4MDAxMDAwMDAgKi8NCiNkZWZpbmUgR1BJT19QVVBEUl9QVVBEUjEwXzEgICAgICAgICAgICAgICAgICgweDJVTCA8PCBHUElPX1BVUERSX1BVUERSMTBfUG9zKSAgLyohPCAweDAwMjAwMDAwICovDQoNCiNkZWZpbmUgR1BJT19QVVBEUl9QVVBEUjExX1BvcyAgICAgICAgICAgICAgICgyMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19QVVBEUl9QVVBEUjExX01zayAgICAgICAgICAgICAgICgweDNVTCA8PCBHUElPX1BVUERSX1BVUERSMTFfUG9zKSAgLyohPCAweDAwQzAwMDAwICovDQojZGVmaW5lIEdQSU9fUFVQRFJfUFVQRFIxMSAgICAgICAgICAgICAgICAgICBHUElPX1BVUERSX1BVUERSMTFfTXNrICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fUFVQRFJfUFVQRFIxMV8wICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgR1BJT19QVVBEUl9QVVBEUjExX1BvcykgIC8qITwgMHgwMDQwMDAwMCAqLw0KI2RlZmluZSBHUElPX1BVUERSX1BVUERSMTFfMSAgICAgICAgICAgICAgICAgKDB4MlVMIDw8IEdQSU9fUFVQRFJfUFVQRFIxMV9Qb3MpICAvKiE8IDB4MDA4MDAwMDAgKi8NCg0KI2RlZmluZSBHUElPX1BVUERSX1BVUERSMTJfUG9zICAgICAgICAgICAgICAgKDI0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX1BVUERSX1BVUERSMTJfTXNrICAgICAgICAgICAgICAgKDB4M1VMIDw8IEdQSU9fUFVQRFJfUFVQRFIxMl9Qb3MpICAvKiE8IDB4MDMwMDAwMDAgKi8NCiNkZWZpbmUgR1BJT19QVVBEUl9QVVBEUjEyICAgICAgICAgICAgICAgICAgIEdQSU9fUFVQRFJfUFVQRFIxMl9Nc2sgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19QVVBEUl9QVVBEUjEyXzAgICAgICAgICAgICAgICAgICgweDFVTCA8PCBHUElPX1BVUERSX1BVUERSMTJfUG9zKSAgLyohPCAweDAxMDAwMDAwICovDQojZGVmaW5lIEdQSU9fUFVQRFJfUFVQRFIxMl8xICAgICAgICAgICAgICAgICAoMHgyVUwgPDwgR1BJT19QVVBEUl9QVVBEUjEyX1BvcykgIC8qITwgMHgwMjAwMDAwMCAqLw0KDQojZGVmaW5lIEdQSU9fUFVQRFJfUFVQRFIxM19Qb3MgICAgICAgICAgICAgICAoMjZVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fUFVQRFJfUFVQRFIxM19Nc2sgICAgICAgICAgICAgICAoMHgzVUwgPDwgR1BJT19QVVBEUl9QVVBEUjEzX1BvcykgIC8qITwgMHgwQzAwMDAwMCAqLw0KI2RlZmluZSBHUElPX1BVUERSX1BVUERSMTMgICAgICAgICAgICAgICAgICAgR1BJT19QVVBEUl9QVVBEUjEzX01zayAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX1BVUERSX1BVUERSMTNfMCAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IEdQSU9fUFVQRFJfUFVQRFIxM19Qb3MpICAvKiE8IDB4MDQwMDAwMDAgKi8NCiNkZWZpbmUgR1BJT19QVVBEUl9QVVBEUjEzXzEgICAgICAgICAgICAgICAgICgweDJVTCA8PCBHUElPX1BVUERSX1BVUERSMTNfUG9zKSAgLyohPCAweDA4MDAwMDAwICovDQoNCiNkZWZpbmUgR1BJT19QVVBEUl9QVVBEUjE0X1BvcyAgICAgICAgICAgICAgICgyOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19QVVBEUl9QVVBEUjE0X01zayAgICAgICAgICAgICAgICgweDNVTCA8PCBHUElPX1BVUERSX1BVUERSMTRfUG9zKSAgLyohPCAweDMwMDAwMDAwICovDQojZGVmaW5lIEdQSU9fUFVQRFJfUFVQRFIxNCAgICAgICAgICAgICAgICAgICBHUElPX1BVUERSX1BVUERSMTRfTXNrICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fUFVQRFJfUFVQRFIxNF8wICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgR1BJT19QVVBEUl9QVVBEUjE0X1BvcykgIC8qITwgMHgxMDAwMDAwMCAqLw0KI2RlZmluZSBHUElPX1BVUERSX1BVUERSMTRfMSAgICAgICAgICAgICAgICAgKDB4MlVMIDw8IEdQSU9fUFVQRFJfUFVQRFIxNF9Qb3MpICAvKiE8IDB4MjAwMDAwMDAgKi8NCiNkZWZpbmUgR1BJT19QVVBEUl9QVVBEUjE1X1BvcyAgICAgICAgICAgICAgICgzMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19QVVBEUl9QVVBEUjE1X01zayAgICAgICAgICAgICAgICgweDNVTCA8PCBHUElPX1BVUERSX1BVUERSMTVfUG9zKSAgLyohPCAweEMwMDAwMDAwICovDQojZGVmaW5lIEdQSU9fUFVQRFJfUFVQRFIxNSAgICAgICAgICAgICAgICAgICBHUElPX1BVUERSX1BVUERSMTVfTXNrICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fUFVQRFJfUFVQRFIxNV8wICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgR1BJT19QVVBEUl9QVVBEUjE1X1BvcykgIC8qITwgMHg0MDAwMDAwMCAqLw0KI2RlZmluZSBHUElPX1BVUERSX1BVUERSMTVfMSAgICAgICAgICAgICAgICAgKDB4MlVMIDw8IEdQSU9fUFVQRFJfUFVQRFIxNV9Qb3MpICAvKiE8IDB4ODAwMDAwMDAgKi8NCg0KLyoqKioqKioqKioqKioqKioqKiAgQml0cyBkZWZpbml0aW9uIGZvciBHUElPX0lEUiByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgR1BJT19JRFJfSURSXzAgICAgICAgICAgICAgICAgICAgICAgICgweDAwMDAwMDAxVSkgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19JRFJfSURSXzEgICAgICAgICAgICAgICAgICAgICAgICgweDAwMDAwMDAyVSkgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19JRFJfSURSXzIgICAgICAgICAgICAgICAgICAgICAgICgweDAwMDAwMDA0VSkgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19JRFJfSURSXzMgICAgICAgICAgICAgICAgICAgICAgICgweDAwMDAwMDA4VSkgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19JRFJfSURSXzQgICAgICAgICAgICAgICAgICAgICAgICgweDAwMDAwMDEwVSkgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19JRFJfSURSXzUgICAgICAgICAgICAgICAgICAgICAgICgweDAwMDAwMDIwVSkgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19JRFJfSURSXzYgICAgICAgICAgICAgICAgICAgICAgICgweDAwMDAwMDQwVSkgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19JRFJfSURSXzcgICAgICAgICAgICAgICAgICAgICAgICgweDAwMDAwMDgwVSkgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19JRFJfSURSXzggICAgICAgICAgICAgICAgICAgICAgICgweDAwMDAwMTAwVSkgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19JRFJfSURSXzkgICAgICAgICAgICAgICAgICAgICAgICgweDAwMDAwMjAwVSkgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19JRFJfSURSXzEwICAgICAgICAgICAgICAgICAgICAgICgweDAwMDAwNDAwVSkgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19JRFJfSURSXzExICAgICAgICAgICAgICAgICAgICAgICgweDAwMDAwODAwVSkgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19JRFJfSURSXzEyICAgICAgICAgICAgICAgICAgICAgICgweDAwMDAxMDAwVSkgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19JRFJfSURSXzEzICAgICAgICAgICAgICAgICAgICAgICgweDAwMDAyMDAwVSkgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19JRFJfSURSXzE0ICAgICAgICAgICAgICAgICAgICAgICgweDAwMDA0MDAwVSkgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19JRFJfSURSXzE1ICAgICAgICAgICAgICAgICAgICAgICgweDAwMDA4MDAwVSkgICAgICAgICAgICAgICAgICAgICANCg0KLyoqKioqKioqKioqKioqKioqKiAgQml0cyBkZWZpbml0aW9uIGZvciBHUElPX09EUiByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgR1BJT19PRFJfT0RSXzAgICAgICAgICAgICAgICAgICAgICAgICgweDAwMDAwMDAxVSkgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19PRFJfT0RSXzEgICAgICAgICAgICAgICAgICAgICAgICgweDAwMDAwMDAyVSkgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19PRFJfT0RSXzIgICAgICAgICAgICAgICAgICAgICAgICgweDAwMDAwMDA0VSkgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19PRFJfT0RSXzMgICAgICAgICAgICAgICAgICAgICAgICgweDAwMDAwMDA4VSkgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19PRFJfT0RSXzQgICAgICAgICAgICAgICAgICAgICAgICgweDAwMDAwMDEwVSkgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19PRFJfT0RSXzUgICAgICAgICAgICAgICAgICAgICAgICgweDAwMDAwMDIwVSkgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19PRFJfT0RSXzYgICAgICAgICAgICAgICAgICAgICAgICgweDAwMDAwMDQwVSkgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19PRFJfT0RSXzcgICAgICAgICAgICAgICAgICAgICAgICgweDAwMDAwMDgwVSkgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19PRFJfT0RSXzggICAgICAgICAgICAgICAgICAgICAgICgweDAwMDAwMTAwVSkgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19PRFJfT0RSXzkgICAgICAgICAgICAgICAgICAgICAgICgweDAwMDAwMjAwVSkgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19PRFJfT0RSXzEwICAgICAgICAgICAgICAgICAgICAgICgweDAwMDAwNDAwVSkgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19PRFJfT0RSXzExICAgICAgICAgICAgICAgICAgICAgICgweDAwMDAwODAwVSkgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19PRFJfT0RSXzEyICAgICAgICAgICAgICAgICAgICAgICgweDAwMDAxMDAwVSkgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19PRFJfT0RSXzEzICAgICAgICAgICAgICAgICAgICAgICgweDAwMDAyMDAwVSkgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19PRFJfT0RSXzE0ICAgICAgICAgICAgICAgICAgICAgICgweDAwMDA0MDAwVSkgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19PRFJfT0RSXzE1ICAgICAgICAgICAgICAgICAgICAgICgweDAwMDA4MDAwVSkgICAgICAgICAgICAgICAgICAgICANCg0KLyoqKioqKioqKioqKioqKioqKiAgQml0cyBkZWZpbml0aW9uIGZvciBHUElPX0JTUlIgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgR1BJT19CU1JSX0JTXzAgICAgICAgICAgICAgICAgICAgICAgICgweDAwMDAwMDAxVSkgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19CU1JSX0JTXzEgICAgICAgICAgICAgICAgICAgICAgICgweDAwMDAwMDAyVSkgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19CU1JSX0JTXzIgICAgICAgICAgICAgICAgICAgICAgICgweDAwMDAwMDA0VSkgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19CU1JSX0JTXzMgICAgICAgICAgICAgICAgICAgICAgICgweDAwMDAwMDA4VSkgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19CU1JSX0JTXzQgICAgICAgICAgICAgICAgICAgICAgICgweDAwMDAwMDEwVSkgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19CU1JSX0JTXzUgICAgICAgICAgICAgICAgICAgICAgICgweDAwMDAwMDIwVSkgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19CU1JSX0JTXzYgICAgICAgICAgICAgICAgICAgICAgICgweDAwMDAwMDQwVSkgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19CU1JSX0JTXzcgICAgICAgICAgICAgICAgICAgICAgICgweDAwMDAwMDgwVSkgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19CU1JSX0JTXzggICAgICAgICAgICAgICAgICAgICAgICgweDAwMDAwMTAwVSkgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19CU1JSX0JTXzkgICAgICAgICAgICAgICAgICAgICAgICgweDAwMDAwMjAwVSkgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19CU1JSX0JTXzEwICAgICAgICAgICAgICAgICAgICAgICgweDAwMDAwNDAwVSkgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19CU1JSX0JTXzExICAgICAgICAgICAgICAgICAgICAgICgweDAwMDAwODAwVSkgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19CU1JSX0JTXzEyICAgICAgICAgICAgICAgICAgICAgICgweDAwMDAxMDAwVSkgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19CU1JSX0JTXzEzICAgICAgICAgICAgICAgICAgICAgICgweDAwMDAyMDAwVSkgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19CU1JSX0JTXzE0ICAgICAgICAgICAgICAgICAgICAgICgweDAwMDA0MDAwVSkgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19CU1JSX0JTXzE1ICAgICAgICAgICAgICAgICAgICAgICgweDAwMDA4MDAwVSkgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19CU1JSX0JSXzAgICAgICAgICAgICAgICAgICAgICAgICgweDAwMDEwMDAwVSkgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19CU1JSX0JSXzEgICAgICAgICAgICAgICAgICAgICAgICgweDAwMDIwMDAwVSkgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19CU1JSX0JSXzIgICAgICAgICAgICAgICAgICAgICAgICgweDAwMDQwMDAwVSkgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19CU1JSX0JSXzMgICAgICAgICAgICAgICAgICAgICAgICgweDAwMDgwMDAwVSkgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19CU1JSX0JSXzQgICAgICAgICAgICAgICAgICAgICAgICgweDAwMTAwMDAwVSkgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19CU1JSX0JSXzUgICAgICAgICAgICAgICAgICAgICAgICgweDAwMjAwMDAwVSkgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19CU1JSX0JSXzYgICAgICAgICAgICAgICAgICAgICAgICgweDAwNDAwMDAwVSkgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19CU1JSX0JSXzcgICAgICAgICAgICAgICAgICAgICAgICgweDAwODAwMDAwVSkgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19CU1JSX0JSXzggICAgICAgICAgICAgICAgICAgICAgICgweDAxMDAwMDAwVSkgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19CU1JSX0JSXzkgICAgICAgICAgICAgICAgICAgICAgICgweDAyMDAwMDAwVSkgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19CU1JSX0JSXzEwICAgICAgICAgICAgICAgICAgICAgICgweDA0MDAwMDAwVSkgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19CU1JSX0JSXzExICAgICAgICAgICAgICAgICAgICAgICgweDA4MDAwMDAwVSkgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19CU1JSX0JSXzEyICAgICAgICAgICAgICAgICAgICAgICgweDEwMDAwMDAwVSkgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19CU1JSX0JSXzEzICAgICAgICAgICAgICAgICAgICAgICgweDIwMDAwMDAwVSkgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19CU1JSX0JSXzE0ICAgICAgICAgICAgICAgICAgICAgICgweDQwMDAwMDAwVSkgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19CU1JSX0JSXzE1ICAgICAgICAgICAgICAgICAgICAgICgweDgwMDAwMDAwVSkgICAgICAgICAgICAgICAgICAgICANCg0KLyoqKioqKioqKioqKioqKioqKiBCaXQgZGVmaW5pdGlvbiBmb3IgR1BJT19MQ0tSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgR1BJT19MQ0tSX0xDSzBfUG9zICAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19MQ0tSX0xDSzBfTXNrICAgICAgICAgICAgICAgICAgICgweDFVTCA8PCBHUElPX0xDS1JfTENLMF9Qb3MpICAgICAgLyohPCAweDAwMDAwMDAxICovDQojZGVmaW5lIEdQSU9fTENLUl9MQ0swICAgICAgICAgICAgICAgICAgICAgICBHUElPX0xDS1JfTENLMF9Nc2sgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fTENLUl9MQ0sxX1BvcyAgICAgICAgICAgICAgICAgICAoMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fTENLUl9MQ0sxX01zayAgICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgR1BJT19MQ0tSX0xDSzFfUG9zKSAgICAgIC8qITwgMHgwMDAwMDAwMiAqLw0KI2RlZmluZSBHUElPX0xDS1JfTENLMSAgICAgICAgICAgICAgICAgICAgICAgR1BJT19MQ0tSX0xDSzFfTXNrICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX0xDS1JfTENLMl9Qb3MgICAgICAgICAgICAgICAgICAgKDJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX0xDS1JfTENLMl9Nc2sgICAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IEdQSU9fTENLUl9MQ0syX1BvcykgICAgICAvKiE8IDB4MDAwMDAwMDQgKi8NCiNkZWZpbmUgR1BJT19MQ0tSX0xDSzIgICAgICAgICAgICAgICAgICAgICAgIEdQSU9fTENLUl9MQ0syX01zayAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19MQ0tSX0xDSzNfUG9zICAgICAgICAgICAgICAgICAgICgzVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19MQ0tSX0xDSzNfTXNrICAgICAgICAgICAgICAgICAgICgweDFVTCA8PCBHUElPX0xDS1JfTENLM19Qb3MpICAgICAgLyohPCAweDAwMDAwMDA4ICovDQojZGVmaW5lIEdQSU9fTENLUl9MQ0szICAgICAgICAgICAgICAgICAgICAgICBHUElPX0xDS1JfTENLM19Nc2sgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fTENLUl9MQ0s0X1BvcyAgICAgICAgICAgICAgICAgICAoNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fTENLUl9MQ0s0X01zayAgICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgR1BJT19MQ0tSX0xDSzRfUG9zKSAgICAgIC8qITwgMHgwMDAwMDAxMCAqLw0KI2RlZmluZSBHUElPX0xDS1JfTENLNCAgICAgICAgICAgICAgICAgICAgICAgR1BJT19MQ0tSX0xDSzRfTXNrICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX0xDS1JfTENLNV9Qb3MgICAgICAgICAgICAgICAgICAgKDVVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX0xDS1JfTENLNV9Nc2sgICAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IEdQSU9fTENLUl9MQ0s1X1BvcykgICAgICAvKiE8IDB4MDAwMDAwMjAgKi8NCiNkZWZpbmUgR1BJT19MQ0tSX0xDSzUgICAgICAgICAgICAgICAgICAgICAgIEdQSU9fTENLUl9MQ0s1X01zayAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19MQ0tSX0xDSzZfUG9zICAgICAgICAgICAgICAgICAgICg2VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19MQ0tSX0xDSzZfTXNrICAgICAgICAgICAgICAgICAgICgweDFVTCA8PCBHUElPX0xDS1JfTENLNl9Qb3MpICAgICAgLyohPCAweDAwMDAwMDQwICovDQojZGVmaW5lIEdQSU9fTENLUl9MQ0s2ICAgICAgICAgICAgICAgICAgICAgICBHUElPX0xDS1JfTENLNl9Nc2sgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fTENLUl9MQ0s3X1BvcyAgICAgICAgICAgICAgICAgICAoN1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fTENLUl9MQ0s3X01zayAgICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgR1BJT19MQ0tSX0xDSzdfUG9zKSAgICAgIC8qITwgMHgwMDAwMDA4MCAqLw0KI2RlZmluZSBHUElPX0xDS1JfTENLNyAgICAgICAgICAgICAgICAgICAgICAgR1BJT19MQ0tSX0xDSzdfTXNrICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX0xDS1JfTENLOF9Qb3MgICAgICAgICAgICAgICAgICAgKDhVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX0xDS1JfTENLOF9Nc2sgICAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IEdQSU9fTENLUl9MQ0s4X1BvcykgICAgICAvKiE8IDB4MDAwMDAxMDAgKi8NCiNkZWZpbmUgR1BJT19MQ0tSX0xDSzggICAgICAgICAgICAgICAgICAgICAgIEdQSU9fTENLUl9MQ0s4X01zayAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19MQ0tSX0xDSzlfUG9zICAgICAgICAgICAgICAgICAgICg5VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19MQ0tSX0xDSzlfTXNrICAgICAgICAgICAgICAgICAgICgweDFVTCA8PCBHUElPX0xDS1JfTENLOV9Qb3MpICAgICAgLyohPCAweDAwMDAwMjAwICovDQojZGVmaW5lIEdQSU9fTENLUl9MQ0s5ICAgICAgICAgICAgICAgICAgICAgICBHUElPX0xDS1JfTENLOV9Nc2sgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fTENLUl9MQ0sxMF9Qb3MgICAgICAgICAgICAgICAgICAoMTBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fTENLUl9MQ0sxMF9Nc2sgICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgR1BJT19MQ0tSX0xDSzEwX1BvcykgICAgIC8qITwgMHgwMDAwMDQwMCAqLw0KI2RlZmluZSBHUElPX0xDS1JfTENLMTAgICAgICAgICAgICAgICAgICAgICAgR1BJT19MQ0tSX0xDSzEwX01zayAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX0xDS1JfTENLMTFfUG9zICAgICAgICAgICAgICAgICAgKDExVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX0xDS1JfTENLMTFfTXNrICAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IEdQSU9fTENLUl9MQ0sxMV9Qb3MpICAgICAvKiE8IDB4MDAwMDA4MDAgKi8NCiNkZWZpbmUgR1BJT19MQ0tSX0xDSzExICAgICAgICAgICAgICAgICAgICAgIEdQSU9fTENLUl9MQ0sxMV9Nc2sgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19MQ0tSX0xDSzEyX1BvcyAgICAgICAgICAgICAgICAgICgxMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19MQ0tSX0xDSzEyX01zayAgICAgICAgICAgICAgICAgICgweDFVTCA8PCBHUElPX0xDS1JfTENLMTJfUG9zKSAgICAgLyohPCAweDAwMDAxMDAwICovDQojZGVmaW5lIEdQSU9fTENLUl9MQ0sxMiAgICAgICAgICAgICAgICAgICAgICBHUElPX0xDS1JfTENLMTJfTXNrICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fTENLUl9MQ0sxM19Qb3MgICAgICAgICAgICAgICAgICAoMTNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fTENLUl9MQ0sxM19Nc2sgICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgR1BJT19MQ0tSX0xDSzEzX1BvcykgICAgIC8qITwgMHgwMDAwMjAwMCAqLw0KI2RlZmluZSBHUElPX0xDS1JfTENLMTMgICAgICAgICAgICAgICAgICAgICAgR1BJT19MQ0tSX0xDSzEzX01zayAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX0xDS1JfTENLMTRfUG9zICAgICAgICAgICAgICAgICAgKDE0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX0xDS1JfTENLMTRfTXNrICAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IEdQSU9fTENLUl9MQ0sxNF9Qb3MpICAgICAvKiE8IDB4MDAwMDQwMDAgKi8NCiNkZWZpbmUgR1BJT19MQ0tSX0xDSzE0ICAgICAgICAgICAgICAgICAgICAgIEdQSU9fTENLUl9MQ0sxNF9Nc2sgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19MQ0tSX0xDSzE1X1BvcyAgICAgICAgICAgICAgICAgICgxNVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19MQ0tSX0xDSzE1X01zayAgICAgICAgICAgICAgICAgICgweDFVTCA8PCBHUElPX0xDS1JfTENLMTVfUG9zKSAgICAgLyohPCAweDAwMDA4MDAwICovDQojZGVmaW5lIEdQSU9fTENLUl9MQ0sxNSAgICAgICAgICAgICAgICAgICAgICBHUElPX0xDS1JfTENLMTVfTXNrICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fTENLUl9MQ0tLX1BvcyAgICAgICAgICAgICAgICAgICAoMTZVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fTENLUl9MQ0tLX01zayAgICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgR1BJT19MQ0tSX0xDS0tfUG9zKSAgICAgIC8qITwgMHgwMDAxMDAwMCAqLw0KI2RlZmluZSBHUElPX0xDS1JfTENLSyAgICAgICAgICAgICAgICAgICAgICAgR1BJT19MQ0tSX0xDS0tfTXNrICAgICAgICAgICAgICAgIA0KDQovKioqKioqKioqKioqKioqKioqIEJpdCBkZWZpbml0aW9uIGZvciBHUElPX0FGUkwgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBHUElPX0FGUkxfQUZTRUwwX1BvcyAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19BRlJMX0FGU0VMMF9Nc2sgICAgICAgICAgICAgICAgICAoMHhGVUwgPDwgR1BJT19BRlJMX0FGU0VMMF9Qb3MpICAgICAvKiE8IDB4MDAwMDAwMEYgKi8NCiNkZWZpbmUgR1BJT19BRlJMX0FGU0VMMCAgICAgICAgICAgICAgICAgICAgICBHUElPX0FGUkxfQUZTRUwwX01zayAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX0FGUkxfQUZTRUwxX1BvcyAgICAgICAgICAgICAgICAgICg0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19BRlJMX0FGU0VMMV9Nc2sgICAgICAgICAgICAgICAgICAoMHhGVUwgPDwgR1BJT19BRlJMX0FGU0VMMV9Qb3MpICAgICAvKiE8IDB4MDAwMDAwRjAgKi8NCiNkZWZpbmUgR1BJT19BRlJMX0FGU0VMMSAgICAgICAgICAgICAgICAgICAgICBHUElPX0FGUkxfQUZTRUwxX01zayAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX0FGUkxfQUZTRUwyX1BvcyAgICAgICAgICAgICAgICAgICg4VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19BRlJMX0FGU0VMMl9Nc2sgICAgICAgICAgICAgICAgICAoMHhGVUwgPDwgR1BJT19BRlJMX0FGU0VMMl9Qb3MpICAgICAvKiE8IDB4MDAwMDBGMDAgKi8NCiNkZWZpbmUgR1BJT19BRlJMX0FGU0VMMiAgICAgICAgICAgICAgICAgICAgICBHUElPX0FGUkxfQUZTRUwyX01zayAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX0FGUkxfQUZTRUwzX1BvcyAgICAgICAgICAgICAgICAgICgxMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19BRlJMX0FGU0VMM19Nc2sgICAgICAgICAgICAgICAgICAoMHhGVUwgPDwgR1BJT19BRlJMX0FGU0VMM19Qb3MpICAgICAvKiE8IDB4MDAwMEYwMDAgKi8NCiNkZWZpbmUgR1BJT19BRlJMX0FGU0VMMyAgICAgICAgICAgICAgICAgICAgICBHUElPX0FGUkxfQUZTRUwzX01zayAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX0FGUkxfQUZTRUw0X1BvcyAgICAgICAgICAgICAgICAgICgxNlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19BRlJMX0FGU0VMNF9Nc2sgICAgICAgICAgICAgICAgICAoMHhGVUwgPDwgR1BJT19BRlJMX0FGU0VMNF9Qb3MpICAgICAvKiE8IDB4MDAwRjAwMDAgKi8NCiNkZWZpbmUgR1BJT19BRlJMX0FGU0VMNCAgICAgICAgICAgICAgICAgICAgICBHUElPX0FGUkxfQUZTRUw0X01zayAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX0FGUkxfQUZTRUw1X1BvcyAgICAgICAgICAgICAgICAgICgyMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19BRlJMX0FGU0VMNV9Nc2sgICAgICAgICAgICAgICAgICAoMHhGVUwgPDwgR1BJT19BRlJMX0FGU0VMNV9Qb3MpICAgICAvKiE8IDB4MDBGMDAwMDAgKi8NCiNkZWZpbmUgR1BJT19BRlJMX0FGU0VMNSAgICAgICAgICAgICAgICAgICAgICBHUElPX0FGUkxfQUZTRUw1X01zayAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX0FGUkxfQUZTRUw2X1BvcyAgICAgICAgICAgICAgICAgICgyNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19BRlJMX0FGU0VMNl9Nc2sgICAgICAgICAgICAgICAgICAoMHhGVUwgPDwgR1BJT19BRlJMX0FGU0VMNl9Qb3MpICAgICAvKiE8IDB4MEYwMDAwMDAgKi8NCiNkZWZpbmUgR1BJT19BRlJMX0FGU0VMNiAgICAgICAgICAgICAgICAgICAgICBHUElPX0FGUkxfQUZTRUw2X01zayAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX0FGUkxfQUZTRUw3X1BvcyAgICAgICAgICAgICAgICAgICgyOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19BRlJMX0FGU0VMN19Nc2sgICAgICAgICAgICAgICAgICAoMHhGVUwgPDwgR1BJT19BRlJMX0FGU0VMN19Qb3MpICAgICAvKiE8IDB4RjAwMDAwMDAgKi8NCiNkZWZpbmUgR1BJT19BRlJMX0FGU0VMNyAgICAgICAgICAgICAgICAgICAgICBHUElPX0FGUkxfQUZTRUw3X01zayAgICAgICAgICAgICAgIA0KDQovKioqKioqKioqKioqKioqKioqIEJpdCBkZWZpbml0aW9uIGZvciBHUElPX0FGUkggcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBHUElPX0FGUkhfQUZTRUw4X1BvcyAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19BRlJIX0FGU0VMOF9Nc2sgICAgICAgICAgICAgICAgICAoMHhGVUwgPDwgR1BJT19BRlJIX0FGU0VMOF9Qb3MpICAgICAvKiE8IDB4MDAwMDAwMEYgKi8NCiNkZWZpbmUgR1BJT19BRlJIX0FGU0VMOCAgICAgICAgICAgICAgICAgICAgICBHUElPX0FGUkhfQUZTRUw4X01zayAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX0FGUkhfQUZTRUw5X1BvcyAgICAgICAgICAgICAgICAgICg0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19BRlJIX0FGU0VMOV9Nc2sgICAgICAgICAgICAgICAgICAoMHhGVUwgPDwgR1BJT19BRlJIX0FGU0VMOV9Qb3MpICAgICAvKiE8IDB4MDAwMDAwRjAgKi8NCiNkZWZpbmUgR1BJT19BRlJIX0FGU0VMOSAgICAgICAgICAgICAgICAgICAgICBHUElPX0FGUkhfQUZTRUw5X01zayAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX0FGUkhfQUZTRUwxMF9Qb3MgICAgICAgICAgICAgICAgICAoOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fQUZSSF9BRlNFTDEwX01zayAgICAgICAgICAgICAgICAgICgweEZVTCA8PCBHUElPX0FGUkhfQUZTRUwxMF9Qb3MpICAgICAvKiE8IDB4MDAwMDBGMDAgKi8NCiNkZWZpbmUgR1BJT19BRlJIX0FGU0VMMTAgICAgICAgICAgICAgICAgICAgICAgR1BJT19BRlJIX0FGU0VMMTBfTXNrICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fQUZSSF9BRlNFTDExX1BvcyAgICAgICAgICAgICAgICAgICgxMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19BRlJIX0FGU0VMMTFfTXNrICAgICAgICAgICAgICAgICAgKDB4RlVMIDw8IEdQSU9fQUZSSF9BRlNFTDExX1BvcykgICAgIC8qITwgMHgwMDAwRjAwMCAqLw0KI2RlZmluZSBHUElPX0FGUkhfQUZTRUwxMSAgICAgICAgICAgICAgICAgICAgICBHUElPX0FGUkhfQUZTRUwxMV9Nc2sgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19BRlJIX0FGU0VMMTJfUG9zICAgICAgICAgICAgICAgICAgKDE2VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX0FGUkhfQUZTRUwxMl9Nc2sgICAgICAgICAgICAgICAgICAoMHhGVUwgPDwgR1BJT19BRlJIX0FGU0VMMTJfUG9zKSAgICAgLyohPCAweDAwMEYwMDAwICovDQojZGVmaW5lIEdQSU9fQUZSSF9BRlNFTDEyICAgICAgICAgICAgICAgICAgICAgIEdQSU9fQUZSSF9BRlNFTDEyX01zayAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX0FGUkhfQUZTRUwxM19Qb3MgICAgICAgICAgICAgICAgICAoMjBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fQUZSSF9BRlNFTDEzX01zayAgICAgICAgICAgICAgICAgICgweEZVTCA8PCBHUElPX0FGUkhfQUZTRUwxM19Qb3MpICAgICAvKiE8IDB4MDBGMDAwMDAgKi8NCiNkZWZpbmUgR1BJT19BRlJIX0FGU0VMMTMgICAgICAgICAgICAgICAgICAgICAgR1BJT19BRlJIX0FGU0VMMTNfTXNrICAgICAgICAgICAgICAgDQojZGVmaW5lIEdQSU9fQUZSSF9BRlNFTDE0X1BvcyAgICAgICAgICAgICAgICAgICgyNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19BRlJIX0FGU0VMMTRfTXNrICAgICAgICAgICAgICAgICAgKDB4RlVMIDw8IEdQSU9fQUZSSF9BRlNFTDE0X1BvcykgICAgIC8qITwgMHgwRjAwMDAwMCAqLw0KI2RlZmluZSBHUElPX0FGUkhfQUZTRUwxNCAgICAgICAgICAgICAgICAgICAgICBHUElPX0FGUkhfQUZTRUwxNF9Nc2sgICAgICAgICAgICAgICANCiNkZWZpbmUgR1BJT19BRlJIX0FGU0VMMTVfUG9zICAgICAgICAgICAgICAgICAgKDI4VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX0FGUkhfQUZTRUwxNV9Nc2sgICAgICAgICAgICAgICAgICAoMHhGVUwgPDwgR1BJT19BRlJIX0FGU0VMMTVfUG9zKSAgICAgLyohPCAweEYwMDAwMDAwICovDQojZGVmaW5lIEdQSU9fQUZSSF9BRlNFTDE1ICAgICAgICAgICAgICAgICAgICAgIEdQSU9fQUZSSF9BRlNFTDE1X01zayAgICAgICAgICAgICAgIA0KDQovKioqKioqKioqKioqKioqKioqIEJpdCBkZWZpbml0aW9uIGZvciBHUElPX0JSUiByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBHUElPX0JSUl9CUl8wICAgICAgICAgICAgICAgICAgICAgICAgKDB4MDAwMDAwMDFVKSAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX0JSUl9CUl8xICAgICAgICAgICAgICAgICAgICAgICAgKDB4MDAwMDAwMDJVKSAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX0JSUl9CUl8yICAgICAgICAgICAgICAgICAgICAgICAgKDB4MDAwMDAwMDRVKSAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX0JSUl9CUl8zICAgICAgICAgICAgICAgICAgICAgICAgKDB4MDAwMDAwMDhVKSAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX0JSUl9CUl80ICAgICAgICAgICAgICAgICAgICAgICAgKDB4MDAwMDAwMTBVKSAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX0JSUl9CUl81ICAgICAgICAgICAgICAgICAgICAgICAgKDB4MDAwMDAwMjBVKSAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX0JSUl9CUl82ICAgICAgICAgICAgICAgICAgICAgICAgKDB4MDAwMDAwNDBVKSAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX0JSUl9CUl83ICAgICAgICAgICAgICAgICAgICAgICAgKDB4MDAwMDAwODBVKSAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX0JSUl9CUl84ICAgICAgICAgICAgICAgICAgICAgICAgKDB4MDAwMDAxMDBVKSAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX0JSUl9CUl85ICAgICAgICAgICAgICAgICAgICAgICAgKDB4MDAwMDAyMDBVKSAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX0JSUl9CUl8xMCAgICAgICAgICAgICAgICAgICAgICAgKDB4MDAwMDA0MDBVKSAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX0JSUl9CUl8xMSAgICAgICAgICAgICAgICAgICAgICAgKDB4MDAwMDA4MDBVKSAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX0JSUl9CUl8xMiAgICAgICAgICAgICAgICAgICAgICAgKDB4MDAwMDEwMDBVKSAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX0JSUl9CUl8xMyAgICAgICAgICAgICAgICAgICAgICAgKDB4MDAwMDIwMDBVKSAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX0JSUl9CUl8xNCAgICAgICAgICAgICAgICAgICAgICAgKDB4MDAwMDQwMDBVKSAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBHUElPX0JSUl9CUl8xNSAgICAgICAgICAgICAgICAgICAgICAgKDB4MDAwMDgwMDBVKSAgICAgICAgICAgICAgICAgICAgIA0KDQovKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLw0KLyogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8NCi8qICAgICAgICAgICAgICAgICAgIEludGVyLWludGVncmF0ZWQgQ2lyY3VpdCBJbnRlcmZhY2UgKEkyQykgICAgICAgICAgICAgICAgICovDQovKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLw0KLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8NCg0KLyoqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBJMkNfQ1IxIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgSTJDX0NSMV9QRV9Qb3MgICAgICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgSTJDX0NSMV9QRV9Nc2sgICAgICAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IEkyQ19DUjFfUEVfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwMDAxICovDQojZGVmaW5lIEkyQ19DUjFfUEUgICAgICAgICAgICAgICAgICAgICAgICAgIEkyQ19DUjFfUEVfTXNrICAgICAgICAgICAgICAgICAgICAgLyohPCBQZXJpcGhlcmFsIEVuYWJsZSAqLw0KI2RlZmluZSBJMkNfQ1IxX1NNQlVTX1BvcyAgICAgICAgICAgICAgICAgICAoMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBJMkNfQ1IxX1NNQlVTX01zayAgICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgSTJDX0NSMV9TTUJVU19Qb3MpICAgICAgICAvKiE8IDB4MDAwMDAwMDIgKi8NCiNkZWZpbmUgSTJDX0NSMV9TTUJVUyAgICAgICAgICAgICAgICAgICAgICAgSTJDX0NSMV9TTUJVU19Nc2sgICAgICAgICAgICAgICAgICAvKiE8IFNNQnVzIE1vZGUgKi8NCiNkZWZpbmUgSTJDX0NSMV9TTUJUWVBFX1BvcyAgICAgICAgICAgICAgICAgKDNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgSTJDX0NSMV9TTUJUWVBFX01zayAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IEkyQ19DUjFfU01CVFlQRV9Qb3MpICAgICAgLyohPCAweDAwMDAwMDA4ICovDQojZGVmaW5lIEkyQ19DUjFfU01CVFlQRSAgICAgICAgICAgICAgICAgICAgIEkyQ19DUjFfU01CVFlQRV9Nc2sgICAgICAgICAgICAgICAgLyohPCBTTUJ1cyBUeXBlICovDQojZGVmaW5lIEkyQ19DUjFfRU5BUlBfUG9zICAgICAgICAgICAgICAgICAgICg0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEkyQ19DUjFfRU5BUlBfTXNrICAgICAgICAgICAgICAgICAgICgweDFVTCA8PCBJMkNfQ1IxX0VOQVJQX1BvcykgICAgICAgIC8qITwgMHgwMDAwMDAxMCAqLw0KI2RlZmluZSBJMkNfQ1IxX0VOQVJQICAgICAgICAgICAgICAgICAgICAgICBJMkNfQ1IxX0VOQVJQX01zayAgICAgICAgICAgICAgICAgIC8qITwgQVJQIEVuYWJsZSAqLw0KI2RlZmluZSBJMkNfQ1IxX0VOUEVDX1BvcyAgICAgICAgICAgICAgICAgICAoNVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBJMkNfQ1IxX0VOUEVDX01zayAgICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgSTJDX0NSMV9FTlBFQ19Qb3MpICAgICAgICAvKiE8IDB4MDAwMDAwMjAgKi8NCiNkZWZpbmUgSTJDX0NSMV9FTlBFQyAgICAgICAgICAgICAgICAgICAgICAgSTJDX0NSMV9FTlBFQ19Nc2sgICAgICAgICAgICAgICAgICAvKiE8IFBFQyBFbmFibGUgKi8NCiNkZWZpbmUgSTJDX0NSMV9FTkdDX1BvcyAgICAgICAgICAgICAgICAgICAgKDZVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgSTJDX0NSMV9FTkdDX01zayAgICAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IEkyQ19DUjFfRU5HQ19Qb3MpICAgICAgICAgLyohPCAweDAwMDAwMDQwICovDQojZGVmaW5lIEkyQ19DUjFfRU5HQyAgICAgICAgICAgICAgICAgICAgICAgIEkyQ19DUjFfRU5HQ19Nc2sgICAgICAgICAgICAgICAgICAgLyohPCBHZW5lcmFsIENhbGwgRW5hYmxlICovDQojZGVmaW5lIEkyQ19DUjFfTk9TVFJFVENIX1BvcyAgICAgICAgICAgICAgICg3VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEkyQ19DUjFfTk9TVFJFVENIX01zayAgICAgICAgICAgICAgICgweDFVTCA8PCBJMkNfQ1IxX05PU1RSRVRDSF9Qb3MpICAgIC8qITwgMHgwMDAwMDA4MCAqLw0KI2RlZmluZSBJMkNfQ1IxX05PU1RSRVRDSCAgICAgICAgICAgICAgICAgICBJMkNfQ1IxX05PU1RSRVRDSF9Nc2sgICAgICAgICAgICAgIC8qITwgQ2xvY2sgU3RyZXRjaGluZyBEaXNhYmxlIChTbGF2ZSBtb2RlKSAqLw0KI2RlZmluZSBJMkNfQ1IxX1NUQVJUX1BvcyAgICAgICAgICAgICAgICAgICAoOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBJMkNfQ1IxX1NUQVJUX01zayAgICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgSTJDX0NSMV9TVEFSVF9Qb3MpICAgICAgICAvKiE8IDB4MDAwMDAxMDAgKi8NCiNkZWZpbmUgSTJDX0NSMV9TVEFSVCAgICAgICAgICAgICAgICAgICAgICAgSTJDX0NSMV9TVEFSVF9Nc2sgICAgICAgICAgICAgICAgICAvKiE8IFN0YXJ0IEdlbmVyYXRpb24gKi8NCiNkZWZpbmUgSTJDX0NSMV9TVE9QX1BvcyAgICAgICAgICAgICAgICAgICAgKDlVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgSTJDX0NSMV9TVE9QX01zayAgICAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IEkyQ19DUjFfU1RPUF9Qb3MpICAgICAgICAgLyohPCAweDAwMDAwMjAwICovDQojZGVmaW5lIEkyQ19DUjFfU1RPUCAgICAgICAgICAgICAgICAgICAgICAgIEkyQ19DUjFfU1RPUF9Nc2sgICAgICAgICAgICAgICAgICAgLyohPCBTdG9wIEdlbmVyYXRpb24gKi8NCiNkZWZpbmUgSTJDX0NSMV9BQ0tfUG9zICAgICAgICAgICAgICAgICAgICAgKDEwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgSTJDX0NSMV9BQ0tfTXNrICAgICAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IEkyQ19DUjFfQUNLX1BvcykgICAgICAgICAgLyohPCAweDAwMDAwNDAwICovDQojZGVmaW5lIEkyQ19DUjFfQUNLICAgICAgICAgICAgICAgICAgICAgICAgIEkyQ19DUjFfQUNLX01zayAgICAgICAgICAgICAgICAgICAgLyohPCBBY2tub3dsZWRnZSBFbmFibGUgKi8NCiNkZWZpbmUgSTJDX0NSMV9QT1NfUG9zICAgICAgICAgICAgICAgICAgICAgKDExVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgSTJDX0NSMV9QT1NfTXNrICAgICAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IEkyQ19DUjFfUE9TX1BvcykgICAgICAgICAgLyohPCAweDAwMDAwODAwICovDQojZGVmaW5lIEkyQ19DUjFfUE9TICAgICAgICAgICAgICAgICAgICAgICAgIEkyQ19DUjFfUE9TX01zayAgICAgICAgICAgICAgICAgICAgLyohPCBBY2tub3dsZWRnZS9QRUMgUG9zaXRpb24gKGZvciBkYXRhIHJlY2VwdGlvbikgKi8NCiNkZWZpbmUgSTJDX0NSMV9QRUNfUG9zICAgICAgICAgICAgICAgICAgICAgKDEyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgSTJDX0NSMV9QRUNfTXNrICAgICAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IEkyQ19DUjFfUEVDX1BvcykgICAgICAgICAgLyohPCAweDAwMDAxMDAwICovDQojZGVmaW5lIEkyQ19DUjFfUEVDICAgICAgICAgICAgICAgICAgICAgICAgIEkyQ19DUjFfUEVDX01zayAgICAgICAgICAgICAgICAgICAgLyohPCBQYWNrZXQgRXJyb3IgQ2hlY2tpbmcgKi8NCiNkZWZpbmUgSTJDX0NSMV9BTEVSVF9Qb3MgICAgICAgICAgICAgICAgICAgKDEzVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgSTJDX0NSMV9BTEVSVF9Nc2sgICAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IEkyQ19DUjFfQUxFUlRfUG9zKSAgICAgICAgLyohPCAweDAwMDAyMDAwICovDQojZGVmaW5lIEkyQ19DUjFfQUxFUlQgICAgICAgICAgICAgICAgICAgICAgIEkyQ19DUjFfQUxFUlRfTXNrICAgICAgICAgICAgICAgICAgLyohPCBTTUJ1cyBBbGVydCAqLw0KI2RlZmluZSBJMkNfQ1IxX1NXUlNUX1BvcyAgICAgICAgICAgICAgICAgICAoMTVVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBJMkNfQ1IxX1NXUlNUX01zayAgICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgSTJDX0NSMV9TV1JTVF9Qb3MpICAgICAgICAvKiE8IDB4MDAwMDgwMDAgKi8NCiNkZWZpbmUgSTJDX0NSMV9TV1JTVCAgICAgICAgICAgICAgICAgICAgICAgSTJDX0NSMV9TV1JTVF9Nc2sgICAgICAgICAgICAgICAgICAvKiE8IFNvZnR3YXJlIFJlc2V0ICovDQoNCi8qKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgSTJDX0NSMiByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIEkyQ19DUjJfRlJFUV9Qb3MgICAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEkyQ19DUjJfRlJFUV9Nc2sgICAgICAgICAgICAgICAgICAgICgweDNGVUwgPDwgSTJDX0NSMl9GUkVRX1BvcykgICAgICAgIC8qITwgMHgwMDAwMDAzRiAqLw0KI2RlZmluZSBJMkNfQ1IyX0ZSRVEgICAgICAgICAgICAgICAgICAgICAgICBJMkNfQ1IyX0ZSRVFfTXNrICAgICAgICAgICAgICAgICAgIC8qITwgRlJFUVs1OjBdIGJpdHMgKFBlcmlwaGVyYWwgQ2xvY2sgRnJlcXVlbmN5KSAqLw0KI2RlZmluZSBJMkNfQ1IyX0ZSRVFfMCAgICAgICAgICAgICAgICAgICAgICAoMHgwMVVMIDw8IEkyQ19DUjJfRlJFUV9Qb3MpICAgICAgICAvKiE8IDB4MDAwMDAwMDEgKi8NCiNkZWZpbmUgSTJDX0NSMl9GUkVRXzEgICAgICAgICAgICAgICAgICAgICAgKDB4MDJVTCA8PCBJMkNfQ1IyX0ZSRVFfUG9zKSAgICAgICAgLyohPCAweDAwMDAwMDAyICovDQojZGVmaW5lIEkyQ19DUjJfRlJFUV8yICAgICAgICAgICAgICAgICAgICAgICgweDA0VUwgPDwgSTJDX0NSMl9GUkVRX1BvcykgICAgICAgIC8qITwgMHgwMDAwMDAwNCAqLw0KI2RlZmluZSBJMkNfQ1IyX0ZSRVFfMyAgICAgICAgICAgICAgICAgICAgICAoMHgwOFVMIDw8IEkyQ19DUjJfRlJFUV9Qb3MpICAgICAgICAvKiE8IDB4MDAwMDAwMDggKi8NCiNkZWZpbmUgSTJDX0NSMl9GUkVRXzQgICAgICAgICAgICAgICAgICAgICAgKDB4MTBVTCA8PCBJMkNfQ1IyX0ZSRVFfUG9zKSAgICAgICAgLyohPCAweDAwMDAwMDEwICovDQojZGVmaW5lIEkyQ19DUjJfRlJFUV81ICAgICAgICAgICAgICAgICAgICAgICgweDIwVUwgPDwgSTJDX0NSMl9GUkVRX1BvcykgICAgICAgIC8qITwgMHgwMDAwMDAyMCAqLw0KDQojZGVmaW5lIEkyQ19DUjJfSVRFUlJFTl9Qb3MgICAgICAgICAgICAgICAgICg4VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEkyQ19DUjJfSVRFUlJFTl9Nc2sgICAgICAgICAgICAgICAgICgweDFVTCA8PCBJMkNfQ1IyX0lURVJSRU5fUG9zKSAgICAgIC8qITwgMHgwMDAwMDEwMCAqLw0KI2RlZmluZSBJMkNfQ1IyX0lURVJSRU4gICAgICAgICAgICAgICAgICAgICBJMkNfQ1IyX0lURVJSRU5fTXNrICAgICAgICAgICAgICAgIC8qITwgRXJyb3IgSW50ZXJydXB0IEVuYWJsZSAqLw0KI2RlZmluZSBJMkNfQ1IyX0lURVZURU5fUG9zICAgICAgICAgICAgICAgICAoOVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBJMkNfQ1IyX0lURVZURU5fTXNrICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgSTJDX0NSMl9JVEVWVEVOX1BvcykgICAgICAvKiE8IDB4MDAwMDAyMDAgKi8NCiNkZWZpbmUgSTJDX0NSMl9JVEVWVEVOICAgICAgICAgICAgICAgICAgICAgSTJDX0NSMl9JVEVWVEVOX01zayAgICAgICAgICAgICAgICAvKiE8IEV2ZW50IEludGVycnVwdCBFbmFibGUgKi8NCiNkZWZpbmUgSTJDX0NSMl9JVEJVRkVOX1BvcyAgICAgICAgICAgICAgICAgKDEwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgSTJDX0NSMl9JVEJVRkVOX01zayAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IEkyQ19DUjJfSVRCVUZFTl9Qb3MpICAgICAgLyohPCAweDAwMDAwNDAwICovDQojZGVmaW5lIEkyQ19DUjJfSVRCVUZFTiAgICAgICAgICAgICAgICAgICAgIEkyQ19DUjJfSVRCVUZFTl9Nc2sgICAgICAgICAgICAgICAgLyohPCBCdWZmZXIgSW50ZXJydXB0IEVuYWJsZSAqLw0KI2RlZmluZSBJMkNfQ1IyX0RNQUVOX1BvcyAgICAgICAgICAgICAgICAgICAoMTFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBJMkNfQ1IyX0RNQUVOX01zayAgICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgSTJDX0NSMl9ETUFFTl9Qb3MpICAgICAgICAvKiE8IDB4MDAwMDA4MDAgKi8NCiNkZWZpbmUgSTJDX0NSMl9ETUFFTiAgICAgICAgICAgICAgICAgICAgICAgSTJDX0NSMl9ETUFFTl9Nc2sgICAgICAgICAgICAgICAgICAvKiE8IERNQSBSZXF1ZXN0cyBFbmFibGUgKi8NCiNkZWZpbmUgSTJDX0NSMl9MQVNUX1BvcyAgICAgICAgICAgICAgICAgICAgKDEyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgSTJDX0NSMl9MQVNUX01zayAgICAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IEkyQ19DUjJfTEFTVF9Qb3MpICAgICAgICAgLyohPCAweDAwMDAxMDAwICovDQojZGVmaW5lIEkyQ19DUjJfTEFTVCAgICAgICAgICAgICAgICAgICAgICAgIEkyQ19DUjJfTEFTVF9Nc2sgICAgICAgICAgICAgICAgICAgLyohPCBETUEgTGFzdCBUcmFuc2ZlciAqLw0KDQovKioqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIEkyQ19PQVIxIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBJMkNfT0FSMV9BREQxXzcgICAgICAgICAgICAgICAgICAgICAoMHgwMDAwMDBGRVUpICAgICAgICAgICAgICAgICAgICAgIC8qITwgSW50ZXJmYWNlIEFkZHJlc3MgKi8NCiNkZWZpbmUgSTJDX09BUjFfQUREOF85ICAgICAgICAgICAgICAgICAgICAgKDB4MDAwMDAzMDBVKSAgICAgICAgICAgICAgICAgICAgICAvKiE8IEludGVyZmFjZSBBZGRyZXNzICovDQoNCiNkZWZpbmUgSTJDX09BUjFfQUREMF9Qb3MgICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgSTJDX09BUjFfQUREMF9Nc2sgICAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IEkyQ19PQVIxX0FERDBfUG9zKSAgICAgICAgLyohPCAweDAwMDAwMDAxICovDQojZGVmaW5lIEkyQ19PQVIxX0FERDAgICAgICAgICAgICAgICAgICAgICAgIEkyQ19PQVIxX0FERDBfTXNrICAgICAgICAgICAgICAgICAgLyohPCBCaXQgMCAqLw0KI2RlZmluZSBJMkNfT0FSMV9BREQxX1BvcyAgICAgICAgICAgICAgICAgICAoMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBJMkNfT0FSMV9BREQxX01zayAgICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgSTJDX09BUjFfQUREMV9Qb3MpICAgICAgICAvKiE8IDB4MDAwMDAwMDIgKi8NCiNkZWZpbmUgSTJDX09BUjFfQUREMSAgICAgICAgICAgICAgICAgICAgICAgSTJDX09BUjFfQUREMV9Nc2sgICAgICAgICAgICAgICAgICAvKiE8IEJpdCAxICovDQojZGVmaW5lIEkyQ19PQVIxX0FERDJfUG9zICAgICAgICAgICAgICAgICAgICgyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEkyQ19PQVIxX0FERDJfTXNrICAgICAgICAgICAgICAgICAgICgweDFVTCA8PCBJMkNfT0FSMV9BREQyX1BvcykgICAgICAgIC8qITwgMHgwMDAwMDAwNCAqLw0KI2RlZmluZSBJMkNfT0FSMV9BREQyICAgICAgICAgICAgICAgICAgICAgICBJMkNfT0FSMV9BREQyX01zayAgICAgICAgICAgICAgICAgIC8qITwgQml0IDIgKi8NCiNkZWZpbmUgSTJDX09BUjFfQUREM19Qb3MgICAgICAgICAgICAgICAgICAgKDNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgSTJDX09BUjFfQUREM19Nc2sgICAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IEkyQ19PQVIxX0FERDNfUG9zKSAgICAgICAgLyohPCAweDAwMDAwMDA4ICovDQojZGVmaW5lIEkyQ19PQVIxX0FERDMgICAgICAgICAgICAgICAgICAgICAgIEkyQ19PQVIxX0FERDNfTXNrICAgICAgICAgICAgICAgICAgLyohPCBCaXQgMyAqLw0KI2RlZmluZSBJMkNfT0FSMV9BREQ0X1BvcyAgICAgICAgICAgICAgICAgICAoNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBJMkNfT0FSMV9BREQ0X01zayAgICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgSTJDX09BUjFfQURENF9Qb3MpICAgICAgICAvKiE8IDB4MDAwMDAwMTAgKi8NCiNkZWZpbmUgSTJDX09BUjFfQURENCAgICAgICAgICAgICAgICAgICAgICAgSTJDX09BUjFfQURENF9Nc2sgICAgICAgICAgICAgICAgICAvKiE8IEJpdCA0ICovDQojZGVmaW5lIEkyQ19PQVIxX0FERDVfUG9zICAgICAgICAgICAgICAgICAgICg1VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEkyQ19PQVIxX0FERDVfTXNrICAgICAgICAgICAgICAgICAgICgweDFVTCA8PCBJMkNfT0FSMV9BREQ1X1BvcykgICAgICAgIC8qITwgMHgwMDAwMDAyMCAqLw0KI2RlZmluZSBJMkNfT0FSMV9BREQ1ICAgICAgICAgICAgICAgICAgICAgICBJMkNfT0FSMV9BREQ1X01zayAgICAgICAgICAgICAgICAgIC8qITwgQml0IDUgKi8NCiNkZWZpbmUgSTJDX09BUjFfQURENl9Qb3MgICAgICAgICAgICAgICAgICAgKDZVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgSTJDX09BUjFfQURENl9Nc2sgICAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IEkyQ19PQVIxX0FERDZfUG9zKSAgICAgICAgLyohPCAweDAwMDAwMDQwICovDQojZGVmaW5lIEkyQ19PQVIxX0FERDYgICAgICAgICAgICAgICAgICAgICAgIEkyQ19PQVIxX0FERDZfTXNrICAgICAgICAgICAgICAgICAgLyohPCBCaXQgNiAqLw0KI2RlZmluZSBJMkNfT0FSMV9BREQ3X1BvcyAgICAgICAgICAgICAgICAgICAoN1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBJMkNfT0FSMV9BREQ3X01zayAgICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgSTJDX09BUjFfQUREN19Qb3MpICAgICAgICAvKiE8IDB4MDAwMDAwODAgKi8NCiNkZWZpbmUgSTJDX09BUjFfQURENyAgICAgICAgICAgICAgICAgICAgICAgSTJDX09BUjFfQUREN19Nc2sgICAgICAgICAgICAgICAgICAvKiE8IEJpdCA3ICovDQojZGVmaW5lIEkyQ19PQVIxX0FERDhfUG9zICAgICAgICAgICAgICAgICAgICg4VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEkyQ19PQVIxX0FERDhfTXNrICAgICAgICAgICAgICAgICAgICgweDFVTCA8PCBJMkNfT0FSMV9BREQ4X1BvcykgICAgICAgIC8qITwgMHgwMDAwMDEwMCAqLw0KI2RlZmluZSBJMkNfT0FSMV9BREQ4ICAgICAgICAgICAgICAgICAgICAgICBJMkNfT0FSMV9BREQ4X01zayAgICAgICAgICAgICAgICAgIC8qITwgQml0IDggKi8NCiNkZWZpbmUgSTJDX09BUjFfQUREOV9Qb3MgICAgICAgICAgICAgICAgICAgKDlVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgSTJDX09BUjFfQUREOV9Nc2sgICAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IEkyQ19PQVIxX0FERDlfUG9zKSAgICAgICAgLyohPCAweDAwMDAwMjAwICovDQojZGVmaW5lIEkyQ19PQVIxX0FERDkgICAgICAgICAgICAgICAgICAgICAgIEkyQ19PQVIxX0FERDlfTXNrICAgICAgICAgICAgICAgICAgLyohPCBCaXQgOSAqLw0KDQojZGVmaW5lIEkyQ19PQVIxX0FERE1PREVfUG9zICAgICAgICAgICAgICAgICgxNVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEkyQ19PQVIxX0FERE1PREVfTXNrICAgICAgICAgICAgICAgICgweDFVTCA8PCBJMkNfT0FSMV9BRERNT0RFX1BvcykgICAgIC8qITwgMHgwMDAwODAwMCAqLw0KI2RlZmluZSBJMkNfT0FSMV9BRERNT0RFICAgICAgICAgICAgICAgICAgICBJMkNfT0FSMV9BRERNT0RFX01zayAgICAgICAgICAgICAgIC8qITwgQWRkcmVzc2luZyBNb2RlIChTbGF2ZSBtb2RlKSAqLw0KDQovKioqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIEkyQ19PQVIyIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBJMkNfT0FSMl9FTkRVQUxfUG9zICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBJMkNfT0FSMl9FTkRVQUxfTXNrICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgSTJDX09BUjJfRU5EVUFMX1BvcykgICAgICAvKiE8IDB4MDAwMDAwMDEgKi8NCiNkZWZpbmUgSTJDX09BUjJfRU5EVUFMICAgICAgICAgICAgICAgICAgICAgSTJDX09BUjJfRU5EVUFMX01zayAgICAgICAgICAgICAgICAvKiE8IER1YWwgYWRkcmVzc2luZyBtb2RlIGVuYWJsZSAqLw0KI2RlZmluZSBJMkNfT0FSMl9BREQyX1BvcyAgICAgICAgICAgICAgICAgICAoMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBJMkNfT0FSMl9BREQyX01zayAgICAgICAgICAgICAgICAgICAoMHg3RlVMIDw8IEkyQ19PQVIyX0FERDJfUG9zKSAgICAgICAvKiE8IDB4MDAwMDAwRkUgKi8NCiNkZWZpbmUgSTJDX09BUjJfQUREMiAgICAgICAgICAgICAgICAgICAgICAgSTJDX09BUjJfQUREMl9Nc2sgICAgICAgICAgICAgICAgICAvKiE8IEludGVyZmFjZSBhZGRyZXNzICovDQoNCi8qKioqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIEkyQ19EUiByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIEkyQ19EUl9EUl9Qb3MgICAgICAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEkyQ19EUl9EUl9Nc2sgICAgICAgICAgICAgICAgICAgICAgICgweEZGVUwgPDwgSTJDX0RSX0RSX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDBGRiAqLw0KI2RlZmluZSBJMkNfRFJfRFIgICAgICAgICAgICAgICAgICAgICAgICAgICBJMkNfRFJfRFJfTXNrICAgICAgICAgICAgICAgICAgICAgIC8qITwgOC1iaXQgRGF0YSBSZWdpc3RlciAqLw0KDQovKioqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIEkyQ19TUjEgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBJMkNfU1IxX1NCX1BvcyAgICAgICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBJMkNfU1IxX1NCX01zayAgICAgICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgSTJDX1NSMV9TQl9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDEgKi8NCiNkZWZpbmUgSTJDX1NSMV9TQiAgICAgICAgICAgICAgICAgICAgICAgICAgSTJDX1NSMV9TQl9Nc2sgICAgICAgICAgICAgICAgICAgICAvKiE8IFN0YXJ0IEJpdCAoTWFzdGVyIG1vZGUpICovDQojZGVmaW5lIEkyQ19TUjFfQUREUl9Qb3MgICAgICAgICAgICAgICAgICAgICgxVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEkyQ19TUjFfQUREUl9Nc2sgICAgICAgICAgICAgICAgICAgICgweDFVTCA8PCBJMkNfU1IxX0FERFJfUG9zKSAgICAgICAgIC8qITwgMHgwMDAwMDAwMiAqLw0KI2RlZmluZSBJMkNfU1IxX0FERFIgICAgICAgICAgICAgICAgICAgICAgICBJMkNfU1IxX0FERFJfTXNrICAgICAgICAgICAgICAgICAgIC8qITwgQWRkcmVzcyBzZW50IChtYXN0ZXIgbW9kZSkvbWF0Y2hlZCAoc2xhdmUgbW9kZSkgKi8NCiNkZWZpbmUgSTJDX1NSMV9CVEZfUG9zICAgICAgICAgICAgICAgICAgICAgKDJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgSTJDX1NSMV9CVEZfTXNrICAgICAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IEkyQ19TUjFfQlRGX1BvcykgICAgICAgICAgLyohPCAweDAwMDAwMDA0ICovDQojZGVmaW5lIEkyQ19TUjFfQlRGICAgICAgICAgICAgICAgICAgICAgICAgIEkyQ19TUjFfQlRGX01zayAgICAgICAgICAgICAgICAgICAgLyohPCBCeXRlIFRyYW5zZmVyIEZpbmlzaGVkICovDQojZGVmaW5lIEkyQ19TUjFfQUREMTBfUG9zICAgICAgICAgICAgICAgICAgICgzVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEkyQ19TUjFfQUREMTBfTXNrICAgICAgICAgICAgICAgICAgICgweDFVTCA8PCBJMkNfU1IxX0FERDEwX1BvcykgICAgICAgIC8qITwgMHgwMDAwMDAwOCAqLw0KI2RlZmluZSBJMkNfU1IxX0FERDEwICAgICAgICAgICAgICAgICAgICAgICBJMkNfU1IxX0FERDEwX01zayAgICAgICAgICAgICAgICAgIC8qITwgMTAtYml0IGhlYWRlciBzZW50IChNYXN0ZXIgbW9kZSkgKi8NCiNkZWZpbmUgSTJDX1NSMV9TVE9QRl9Qb3MgICAgICAgICAgICAgICAgICAgKDRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgSTJDX1NSMV9TVE9QRl9Nc2sgICAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IEkyQ19TUjFfU1RPUEZfUG9zKSAgICAgICAgLyohPCAweDAwMDAwMDEwICovDQojZGVmaW5lIEkyQ19TUjFfU1RPUEYgICAgICAgICAgICAgICAgICAgICAgIEkyQ19TUjFfU1RPUEZfTXNrICAgICAgICAgICAgICAgICAgLyohPCBTdG9wIGRldGVjdGlvbiAoU2xhdmUgbW9kZSkgKi8NCiNkZWZpbmUgSTJDX1NSMV9SWE5FX1BvcyAgICAgICAgICAgICAgICAgICAgKDZVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgSTJDX1NSMV9SWE5FX01zayAgICAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IEkyQ19TUjFfUlhORV9Qb3MpICAgICAgICAgLyohPCAweDAwMDAwMDQwICovDQojZGVmaW5lIEkyQ19TUjFfUlhORSAgICAgICAgICAgICAgICAgICAgICAgIEkyQ19TUjFfUlhORV9Nc2sgICAgICAgICAgICAgICAgICAgLyohPCBEYXRhIFJlZ2lzdGVyIG5vdCBFbXB0eSAocmVjZWl2ZXJzKSAqLw0KI2RlZmluZSBJMkNfU1IxX1RYRV9Qb3MgICAgICAgICAgICAgICAgICAgICAoN1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBJMkNfU1IxX1RYRV9Nc2sgICAgICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgSTJDX1NSMV9UWEVfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDAwODAgKi8NCiNkZWZpbmUgSTJDX1NSMV9UWEUgICAgICAgICAgICAgICAgICAgICAgICAgSTJDX1NSMV9UWEVfTXNrICAgICAgICAgICAgICAgICAgICAvKiE8IERhdGEgUmVnaXN0ZXIgRW1wdHkgKHRyYW5zbWl0dGVycykgKi8NCiNkZWZpbmUgSTJDX1NSMV9CRVJSX1BvcyAgICAgICAgICAgICAgICAgICAgKDhVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgSTJDX1NSMV9CRVJSX01zayAgICAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IEkyQ19TUjFfQkVSUl9Qb3MpICAgICAgICAgLyohPCAweDAwMDAwMTAwICovDQojZGVmaW5lIEkyQ19TUjFfQkVSUiAgICAgICAgICAgICAgICAgICAgICAgIEkyQ19TUjFfQkVSUl9Nc2sgICAgICAgICAgICAgICAgICAgLyohPCBCdXMgRXJyb3IgKi8NCiNkZWZpbmUgSTJDX1NSMV9BUkxPX1BvcyAgICAgICAgICAgICAgICAgICAgKDlVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgSTJDX1NSMV9BUkxPX01zayAgICAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IEkyQ19TUjFfQVJMT19Qb3MpICAgICAgICAgLyohPCAweDAwMDAwMjAwICovDQojZGVmaW5lIEkyQ19TUjFfQVJMTyAgICAgICAgICAgICAgICAgICAgICAgIEkyQ19TUjFfQVJMT19Nc2sgICAgICAgICAgICAgICAgICAgLyohPCBBcmJpdHJhdGlvbiBMb3N0IChtYXN0ZXIgbW9kZSkgKi8NCiNkZWZpbmUgSTJDX1NSMV9BRl9Qb3MgICAgICAgICAgICAgICAgICAgICAgKDEwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgSTJDX1NSMV9BRl9Nc2sgICAgICAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IEkyQ19TUjFfQUZfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwNDAwICovDQojZGVmaW5lIEkyQ19TUjFfQUYgICAgICAgICAgICAgICAgICAgICAgICAgIEkyQ19TUjFfQUZfTXNrICAgICAgICAgICAgICAgICAgICAgLyohPCBBY2tub3dsZWRnZSBGYWlsdXJlICovDQojZGVmaW5lIEkyQ19TUjFfT1ZSX1BvcyAgICAgICAgICAgICAgICAgICAgICgxMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEkyQ19TUjFfT1ZSX01zayAgICAgICAgICAgICAgICAgICAgICgweDFVTCA8PCBJMkNfU1IxX09WUl9Qb3MpICAgICAgICAgIC8qITwgMHgwMDAwMDgwMCAqLw0KI2RlZmluZSBJMkNfU1IxX09WUiAgICAgICAgICAgICAgICAgICAgICAgICBJMkNfU1IxX09WUl9Nc2sgICAgICAgICAgICAgICAgICAgIC8qITwgT3ZlcnJ1bi9VbmRlcnJ1biAqLw0KI2RlZmluZSBJMkNfU1IxX1BFQ0VSUl9Qb3MgICAgICAgICAgICAgICAgICAoMTJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBJMkNfU1IxX1BFQ0VSUl9Nc2sgICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgSTJDX1NSMV9QRUNFUlJfUG9zKSAgICAgICAvKiE8IDB4MDAwMDEwMDAgKi8NCiNkZWZpbmUgSTJDX1NSMV9QRUNFUlIgICAgICAgICAgICAgICAgICAgICAgSTJDX1NSMV9QRUNFUlJfTXNrICAgICAgICAgICAgICAgICAvKiE8IFBFQyBFcnJvciBpbiByZWNlcHRpb24gKi8NCiNkZWZpbmUgSTJDX1NSMV9USU1FT1VUX1BvcyAgICAgICAgICAgICAgICAgKDE0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgSTJDX1NSMV9USU1FT1VUX01zayAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IEkyQ19TUjFfVElNRU9VVF9Qb3MpICAgICAgLyohPCAweDAwMDA0MDAwICovDQojZGVmaW5lIEkyQ19TUjFfVElNRU9VVCAgICAgICAgICAgICAgICAgICAgIEkyQ19TUjFfVElNRU9VVF9Nc2sgICAgICAgICAgICAgICAgLyohPCBUaW1lb3V0IG9yIFRsb3cgRXJyb3IgKi8NCiNkZWZpbmUgSTJDX1NSMV9TTUJBTEVSVF9Qb3MgICAgICAgICAgICAgICAgKDE1VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgSTJDX1NSMV9TTUJBTEVSVF9Nc2sgICAgICAgICAgICAgICAgKDB4MVVMIDw8IEkyQ19TUjFfU01CQUxFUlRfUG9zKSAgICAgLyohPCAweDAwMDA4MDAwICovDQojZGVmaW5lIEkyQ19TUjFfU01CQUxFUlQgICAgICAgICAgICAgICAgICAgIEkyQ19TUjFfU01CQUxFUlRfTXNrICAgICAgICAgICAgICAgLyohPCBTTUJ1cyBBbGVydCAqLw0KDQovKioqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIEkyQ19TUjIgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBJMkNfU1IyX01TTF9Qb3MgICAgICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBJMkNfU1IyX01TTF9Nc2sgICAgICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgSTJDX1NSMl9NU0xfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDAwMDEgKi8NCiNkZWZpbmUgSTJDX1NSMl9NU0wgICAgICAgICAgICAgICAgICAgICAgICAgSTJDX1NSMl9NU0xfTXNrICAgICAgICAgICAgICAgICAgICAvKiE8IE1hc3Rlci9TbGF2ZSAqLw0KI2RlZmluZSBJMkNfU1IyX0JVU1lfUG9zICAgICAgICAgICAgICAgICAgICAoMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBJMkNfU1IyX0JVU1lfTXNrICAgICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgSTJDX1NSMl9CVVNZX1BvcykgICAgICAgICAvKiE8IDB4MDAwMDAwMDIgKi8NCiNkZWZpbmUgSTJDX1NSMl9CVVNZICAgICAgICAgICAgICAgICAgICAgICAgSTJDX1NSMl9CVVNZX01zayAgICAgICAgICAgICAgICAgICAvKiE8IEJ1cyBCdXN5ICovDQojZGVmaW5lIEkyQ19TUjJfVFJBX1BvcyAgICAgICAgICAgICAgICAgICAgICgyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEkyQ19TUjJfVFJBX01zayAgICAgICAgICAgICAgICAgICAgICgweDFVTCA8PCBJMkNfU1IyX1RSQV9Qb3MpICAgICAgICAgIC8qITwgMHgwMDAwMDAwNCAqLw0KI2RlZmluZSBJMkNfU1IyX1RSQSAgICAgICAgICAgICAgICAgICAgICAgICBJMkNfU1IyX1RSQV9Nc2sgICAgICAgICAgICAgICAgICAgIC8qITwgVHJhbnNtaXR0ZXIvUmVjZWl2ZXIgKi8NCiNkZWZpbmUgSTJDX1NSMl9HRU5DQUxMX1BvcyAgICAgICAgICAgICAgICAgKDRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgSTJDX1NSMl9HRU5DQUxMX01zayAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IEkyQ19TUjJfR0VOQ0FMTF9Qb3MpICAgICAgLyohPCAweDAwMDAwMDEwICovDQojZGVmaW5lIEkyQ19TUjJfR0VOQ0FMTCAgICAgICAgICAgICAgICAgICAgIEkyQ19TUjJfR0VOQ0FMTF9Nc2sgICAgICAgICAgICAgICAgLyohPCBHZW5lcmFsIENhbGwgQWRkcmVzcyAoU2xhdmUgbW9kZSkgKi8NCiNkZWZpbmUgSTJDX1NSMl9TTUJERUZBVUxUX1BvcyAgICAgICAgICAgICAgKDVVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgSTJDX1NSMl9TTUJERUZBVUxUX01zayAgICAgICAgICAgICAgKDB4MVVMIDw8IEkyQ19TUjJfU01CREVGQVVMVF9Qb3MpICAgLyohPCAweDAwMDAwMDIwICovDQojZGVmaW5lIEkyQ19TUjJfU01CREVGQVVMVCAgICAgICAgICAgICAgICAgIEkyQ19TUjJfU01CREVGQVVMVF9Nc2sgICAgICAgICAgICAgLyohPCBTTUJ1cyBEZXZpY2UgRGVmYXVsdCBBZGRyZXNzIChTbGF2ZSBtb2RlKSAqLw0KI2RlZmluZSBJMkNfU1IyX1NNQkhPU1RfUG9zICAgICAgICAgICAgICAgICAoNlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBJMkNfU1IyX1NNQkhPU1RfTXNrICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgSTJDX1NSMl9TTUJIT1NUX1BvcykgICAgICAvKiE8IDB4MDAwMDAwNDAgKi8NCiNkZWZpbmUgSTJDX1NSMl9TTUJIT1NUICAgICAgICAgICAgICAgICAgICAgSTJDX1NSMl9TTUJIT1NUX01zayAgICAgICAgICAgICAgICAvKiE8IFNNQnVzIEhvc3QgSGVhZGVyIChTbGF2ZSBtb2RlKSAqLw0KI2RlZmluZSBJMkNfU1IyX0RVQUxGX1BvcyAgICAgICAgICAgICAgICAgICAoN1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBJMkNfU1IyX0RVQUxGX01zayAgICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgSTJDX1NSMl9EVUFMRl9Qb3MpICAgICAgICAvKiE8IDB4MDAwMDAwODAgKi8NCiNkZWZpbmUgSTJDX1NSMl9EVUFMRiAgICAgICAgICAgICAgICAgICAgICAgSTJDX1NSMl9EVUFMRl9Nc2sgICAgICAgICAgICAgICAgICAvKiE8IER1YWwgRmxhZyAoU2xhdmUgbW9kZSkgKi8NCiNkZWZpbmUgSTJDX1NSMl9QRUNfUG9zICAgICAgICAgICAgICAgICAgICAgKDhVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgSTJDX1NSMl9QRUNfTXNrICAgICAgICAgICAgICAgICAgICAgKDB4RkZVTCA8PCBJMkNfU1IyX1BFQ19Qb3MpICAgICAgICAgLyohPCAweDAwMDBGRjAwICovDQojZGVmaW5lIEkyQ19TUjJfUEVDICAgICAgICAgICAgICAgICAgICAgICAgIEkyQ19TUjJfUEVDX01zayAgICAgICAgICAgICAgICAgICAgLyohPCBQYWNrZXQgRXJyb3IgQ2hlY2tpbmcgUmVnaXN0ZXIgKi8NCg0KLyoqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBJMkNfQ0NSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgSTJDX0NDUl9DQ1JfUG9zICAgICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgSTJDX0NDUl9DQ1JfTXNrICAgICAgICAgICAgICAgICAgICAgKDB4RkZGVUwgPDwgSTJDX0NDUl9DQ1JfUG9zKSAgICAgICAgLyohPCAweDAwMDAwRkZGICovDQojZGVmaW5lIEkyQ19DQ1JfQ0NSICAgICAgICAgICAgICAgICAgICAgICAgIEkyQ19DQ1JfQ0NSX01zayAgICAgICAgICAgICAgICAgICAgLyohPCBDbG9jayBDb250cm9sIFJlZ2lzdGVyIGluIEZhc3QvU3RhbmRhcmQgbW9kZSAoTWFzdGVyIG1vZGUpICovDQojZGVmaW5lIEkyQ19DQ1JfRFVUWV9Qb3MgICAgICAgICAgICAgICAgICAgICgxNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEkyQ19DQ1JfRFVUWV9Nc2sgICAgICAgICAgICAgICAgICAgICgweDFVTCA8PCBJMkNfQ0NSX0RVVFlfUG9zKSAgICAgICAgIC8qITwgMHgwMDAwNDAwMCAqLw0KI2RlZmluZSBJMkNfQ0NSX0RVVFkgICAgICAgICAgICAgICAgICAgICAgICBJMkNfQ0NSX0RVVFlfTXNrICAgICAgICAgICAgICAgICAgIC8qITwgRmFzdCBNb2RlIER1dHkgQ3ljbGUgKi8NCiNkZWZpbmUgSTJDX0NDUl9GU19Qb3MgICAgICAgICAgICAgICAgICAgICAgKDE1VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgSTJDX0NDUl9GU19Nc2sgICAgICAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IEkyQ19DQ1JfRlNfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDA4MDAwICovDQojZGVmaW5lIEkyQ19DQ1JfRlMgICAgICAgICAgICAgICAgICAgICAgICAgIEkyQ19DQ1JfRlNfTXNrICAgICAgICAgICAgICAgICAgICAgLyohPCBJMkMgTWFzdGVyIE1vZGUgU2VsZWN0aW9uICovDQoNCi8qKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBJMkNfVFJJU0UgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIEkyQ19UUklTRV9UUklTRV9Qb3MgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIEkyQ19UUklTRV9UUklTRV9Nc2sgICAgICAgICAgICAgICAgICgweDNGVUwgPDwgSTJDX1RSSVNFX1RSSVNFX1BvcykgICAgIC8qITwgMHgwMDAwMDAzRiAqLw0KI2RlZmluZSBJMkNfVFJJU0VfVFJJU0UgICAgICAgICAgICAgICAgICAgICBJMkNfVFJJU0VfVFJJU0VfTXNrICAgICAgICAgICAgICAgIC8qITwgTWF4aW11bSBSaXNlIFRpbWUgaW4gRmFzdC9TdGFuZGFyZCBtb2RlIChNYXN0ZXIgbW9kZSkgKi8NCg0KLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8NCi8qICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovDQovKiAgICAgICAgICAgICAgICAgICAgICAgIEluZGVwZW5kZW50IFdBVENIRE9HIChJV0RHKSAgICAgICAgICAgICAgICAgICAgICAgICAqLw0KLyogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8NCi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovDQoNCi8qKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgSVdER19LUiByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIElXREdfS1JfS0VZX1BvcyAgICAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIElXREdfS1JfS0VZX01zayAgICAgICAgICAgICAgICAgICAgICgweEZGRkZVTCA8PCBJV0RHX0tSX0tFWV9Qb3MpICAgICAgIC8qITwgMHgwMDAwRkZGRiAqLw0KI2RlZmluZSBJV0RHX0tSX0tFWSAgICAgICAgICAgICAgICAgICAgICAgICBJV0RHX0tSX0tFWV9Nc2sgICAgICAgICAgICAgICAgICAgIC8qITwgS2V5IHZhbHVlICh3cml0ZSBvbmx5LCByZWFkIDAwMDBoKSAqLw0KDQovKioqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIElXREdfUFIgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBJV0RHX1BSX1BSX1BvcyAgICAgICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBJV0RHX1BSX1BSX01zayAgICAgICAgICAgICAgICAgICAgICAoMHg3VUwgPDwgSVdER19QUl9QUl9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDcgKi8NCiNkZWZpbmUgSVdER19QUl9QUiAgICAgICAgICAgICAgICAgICAgICAgICAgSVdER19QUl9QUl9Nc2sgICAgICAgICAgICAgICAgICAgICAvKiE8IFBSWzI6MF0gKFByZXNjYWxlciBkaXZpZGVyKSAqLw0KI2RlZmluZSBJV0RHX1BSX1BSXzAgICAgICAgICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgSVdER19QUl9QUl9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDEgKi8NCiNkZWZpbmUgSVdER19QUl9QUl8xICAgICAgICAgICAgICAgICAgICAgICAgKDB4MlVMIDw8IElXREdfUFJfUFJfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwMDAyICovDQojZGVmaW5lIElXREdfUFJfUFJfMiAgICAgICAgICAgICAgICAgICAgICAgICgweDRVTCA8PCBJV0RHX1BSX1BSX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDAwNCAqLw0KDQovKioqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIElXREdfUkxSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBJV0RHX1JMUl9STF9Qb3MgICAgICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBJV0RHX1JMUl9STF9Nc2sgICAgICAgICAgICAgICAgICAgICAoMHhGRkZVTCA8PCBJV0RHX1JMUl9STF9Qb3MpICAgICAgICAvKiE8IDB4MDAwMDBGRkYgKi8NCiNkZWZpbmUgSVdER19STFJfUkwgICAgICAgICAgICAgICAgICAgICAgICAgSVdER19STFJfUkxfTXNrICAgICAgICAgICAgICAgICAgICAvKiE8IFdhdGNoZG9nIGNvdW50ZXIgcmVsb2FkIHZhbHVlICovDQoNCi8qKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgSVdER19TUiByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIElXREdfU1JfUFZVX1BvcyAgICAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIElXREdfU1JfUFZVX01zayAgICAgICAgICAgICAgICAgICAgICgweDFVTCA8PCBJV0RHX1NSX1BWVV9Qb3MpICAgICAgICAgIC8qITwgMHgwMDAwMDAwMSAqLw0KI2RlZmluZSBJV0RHX1NSX1BWVSAgICAgICAgICAgICAgICAgICAgICAgICBJV0RHX1NSX1BWVV9Nc2sgICAgICAgICAgICAgICAgICAgIC8qITwgV2F0Y2hkb2cgcHJlc2NhbGVyIHZhbHVlIHVwZGF0ZSAqLw0KI2RlZmluZSBJV0RHX1NSX1JWVV9Qb3MgICAgICAgICAgICAgICAgICAgICAoMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBJV0RHX1NSX1JWVV9Nc2sgICAgICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgSVdER19TUl9SVlVfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDAwMDIgKi8NCiNkZWZpbmUgSVdER19TUl9SVlUgICAgICAgICAgICAgICAgICAgICAgICAgSVdER19TUl9SVlVfTXNrICAgICAgICAgICAgICAgICAgICAvKiE8IFdhdGNoZG9nIGNvdW50ZXIgcmVsb2FkIHZhbHVlIHVwZGF0ZSAqLw0KDQovKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLw0KLyogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8NCi8qICAgICAgICAgICAgICAgICAgICAgICAgICBMQ0QgQ29udHJvbGxlciAoTENEKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovDQovKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLw0KLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8NCg0KLyoqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBMQ0RfQ1IgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgTENEX0NSX0xDREVOX1BvcyAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgTENEX0NSX0xDREVOX01zayAgICAgICAgICAgKDB4MVVMIDw8IExDRF9DUl9MQ0RFTl9Qb3MpICAgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDAxICovDQojZGVmaW5lIExDRF9DUl9MQ0RFTiAgICAgICAgICAgICAgIExDRF9DUl9MQ0RFTl9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBMQ0QgRW5hYmxlIEJpdCAqLw0KI2RlZmluZSBMQ0RfQ1JfVlNFTF9Qb3MgICAgICAgICAgICAoMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBMQ0RfQ1JfVlNFTF9Nc2sgICAgICAgICAgICAoMHgxVUwgPDwgTENEX0NSX1ZTRUxfUG9zKSAgICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDIgKi8NCiNkZWZpbmUgTENEX0NSX1ZTRUwgICAgICAgICAgICAgICAgTENEX0NSX1ZTRUxfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFZvbHRhZ2Ugc291cmNlIHNlbGVjdG9yIEJpdCAqLw0KDQojZGVmaW5lIExDRF9DUl9EVVRZX1BvcyAgICAgICAgICAgICgyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIExDRF9DUl9EVVRZX01zayAgICAgICAgICAgICgweDdVTCA8PCBMQ0RfQ1JfRFVUWV9Qb3MpICAgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDAxQyAqLw0KI2RlZmluZSBMQ0RfQ1JfRFVUWSAgICAgICAgICAgICAgICBMQ0RfQ1JfRFVUWV9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgRFVUWVsyOjBdIGJpdHMgKER1dHkgc2VsZWN0b3IpICovDQojZGVmaW5lIExDRF9DUl9EVVRZXzAgICAgICAgICAgICAgICgweDFVTCA8PCBMQ0RfQ1JfRFVUWV9Qb3MpICAgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDAwNCAqLw0KI2RlZmluZSBMQ0RfQ1JfRFVUWV8xICAgICAgICAgICAgICAoMHgyVUwgPDwgTENEX0NSX0RVVFlfUG9zKSAgICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDggKi8NCiNkZWZpbmUgTENEX0NSX0RVVFlfMiAgICAgICAgICAgICAgKDB4NFVMIDw8IExDRF9DUl9EVVRZX1BvcykgICAgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDEwICovDQoNCiNkZWZpbmUgTENEX0NSX0JJQVNfUG9zICAgICAgICAgICAgKDVVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgTENEX0NSX0JJQVNfTXNrICAgICAgICAgICAgKDB4M1VMIDw8IExDRF9DUl9CSUFTX1BvcykgICAgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDYwICovDQojZGVmaW5lIExDRF9DUl9CSUFTICAgICAgICAgICAgICAgIExDRF9DUl9CSUFTX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBCSUFTWzE6MF0gYml0cyAoQmlhcyBzZWxlY3RvcikgKi8NCiNkZWZpbmUgTENEX0NSX0JJQVNfMCAgICAgICAgICAgICAgKDB4MVVMIDw8IExDRF9DUl9CSUFTX1BvcykgICAgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDIwICovDQojZGVmaW5lIExDRF9DUl9CSUFTXzEgICAgICAgICAgICAgICgweDJVTCA8PCBMQ0RfQ1JfQklBU19Qb3MpICAgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDA0MCAqLw0KDQojZGVmaW5lIExDRF9DUl9NVVhfU0VHX1BvcyAgICAgICAgICg3VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIExDRF9DUl9NVVhfU0VHX01zayAgICAgICAgICgweDFVTCA8PCBMQ0RfQ1JfTVVYX1NFR19Qb3MpICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDA4MCAqLw0KI2RlZmluZSBMQ0RfQ1JfTVVYX1NFRyAgICAgICAgICAgICBMQ0RfQ1JfTVVYX1NFR19Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgTXV4IFNlZ21lbnQgRW5hYmxlIEJpdCAqLw0KDQovKioqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIExDRF9GQ1IgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBMQ0RfRkNSX0hEX1BvcyAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBMQ0RfRkNSX0hEX01zayAgICAgICAgICAgICAoMHgxVUwgPDwgTENEX0ZDUl9IRF9Qb3MpICAgICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDEgKi8NCiNkZWZpbmUgTENEX0ZDUl9IRCAgICAgICAgICAgICAgICAgTENEX0ZDUl9IRF9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IEhpZ2ggRHJpdmUgRW5hYmxlIEJpdCAqLw0KI2RlZmluZSBMQ0RfRkNSX1NPRklFX1BvcyAgICAgICAgICAoMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBMQ0RfRkNSX1NPRklFX01zayAgICAgICAgICAoMHgxVUwgPDwgTENEX0ZDUl9TT0ZJRV9Qb3MpICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDIgKi8NCiNkZWZpbmUgTENEX0ZDUl9TT0ZJRSAgICAgICAgICAgICAgTENEX0ZDUl9TT0ZJRV9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFN0YXJ0IG9mIEZyYW1lIEludGVycnVwdCBFbmFibGUgQml0ICovDQojZGVmaW5lIExDRF9GQ1JfVURESUVfUG9zICAgICAgICAgICgzVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIExDRF9GQ1JfVURESUVfTXNrICAgICAgICAgICgweDFVTCA8PCBMQ0RfRkNSX1VERElFX1BvcykgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDAwOCAqLw0KI2RlZmluZSBMQ0RfRkNSX1VERElFICAgICAgICAgICAgICBMQ0RfRkNSX1VERElFX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgVXBkYXRlIERpc3BsYXkgRG9uZSBJbnRlcnJ1cHQgRW5hYmxlIEJpdCAqLw0KDQojZGVmaW5lIExDRF9GQ1JfUE9OX1BvcyAgICAgICAgICAgICg0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIExDRF9GQ1JfUE9OX01zayAgICAgICAgICAgICgweDdVTCA8PCBMQ0RfRkNSX1BPTl9Qb3MpICAgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDA3MCAqLw0KI2RlZmluZSBMQ0RfRkNSX1BPTiAgICAgICAgICAgICAgICBMQ0RfRkNSX1BPTl9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgUE9OWzI6MF0gYml0cyAoUHVscyBPTiBEdXJhdGlvbikgKi8NCiNkZWZpbmUgTENEX0ZDUl9QT05fMCAgICAgICAgICAgICAgKDB4MVVMIDw8IExDRF9GQ1JfUE9OX1BvcykgICAgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDEwICovDQojZGVmaW5lIExDRF9GQ1JfUE9OXzEgICAgICAgICAgICAgICgweDJVTCA8PCBMQ0RfRkNSX1BPTl9Qb3MpICAgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDAyMCAqLw0KI2RlZmluZSBMQ0RfRkNSX1BPTl8yICAgICAgICAgICAgICAoMHg0VUwgPDwgTENEX0ZDUl9QT05fUG9zKSAgICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwNDAgKi8NCg0KI2RlZmluZSBMQ0RfRkNSX0RFQURfUG9zICAgICAgICAgICAoN1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBMQ0RfRkNSX0RFQURfTXNrICAgICAgICAgICAoMHg3VUwgPDwgTENEX0ZDUl9ERUFEX1BvcykgICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAzODAgKi8NCiNkZWZpbmUgTENEX0ZDUl9ERUFEICAgICAgICAgICAgICAgTENEX0ZDUl9ERUFEX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IERFQURbMjowXSBiaXRzIChERUFEIFRpbWUpICovDQojZGVmaW5lIExDRF9GQ1JfREVBRF8wICAgICAgICAgICAgICgweDFVTCA8PCBMQ0RfRkNSX0RFQURfUG9zKSAgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDA4MCAqLw0KI2RlZmluZSBMQ0RfRkNSX0RFQURfMSAgICAgICAgICAgICAoMHgyVUwgPDwgTENEX0ZDUl9ERUFEX1BvcykgICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAxMDAgKi8NCiNkZWZpbmUgTENEX0ZDUl9ERUFEXzIgICAgICAgICAgICAgKDB4NFVMIDw8IExDRF9GQ1JfREVBRF9Qb3MpICAgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMjAwICovDQoNCiNkZWZpbmUgTENEX0ZDUl9DQ19Qb3MgICAgICAgICAgICAgKDEwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgTENEX0ZDUl9DQ19Nc2sgICAgICAgICAgICAgKDB4N1VMIDw8IExDRF9GQ1JfQ0NfUG9zKSAgICAgICAgICAgICAgICAgICAgLyohPCAweDAwMDAxQzAwICovDQojZGVmaW5lIExDRF9GQ1JfQ0MgICAgICAgICAgICAgICAgIExDRF9GQ1JfQ0NfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBDQ1syOjBdIGJpdHMgKENvbnRyYXN0IENvbnRyb2wpICovDQojZGVmaW5lIExDRF9GQ1JfQ0NfMCAgICAgICAgICAgICAgICgweDFVTCA8PCBMQ0RfRkNSX0NDX1BvcykgICAgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDQwMCAqLw0KI2RlZmluZSBMQ0RfRkNSX0NDXzEgICAgICAgICAgICAgICAoMHgyVUwgPDwgTENEX0ZDUl9DQ19Qb3MpICAgICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDA4MDAgKi8NCiNkZWZpbmUgTENEX0ZDUl9DQ18yICAgICAgICAgICAgICAgKDB4NFVMIDw8IExDRF9GQ1JfQ0NfUG9zKSAgICAgICAgICAgICAgICAgICAgLyohPCAweDAwMDAxMDAwICovDQoNCiNkZWZpbmUgTENEX0ZDUl9CTElOS0ZfUG9zICAgICAgICAgKDEzVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgTENEX0ZDUl9CTElOS0ZfTXNrICAgICAgICAgKDB4N1VMIDw8IExDRF9GQ1JfQkxJTktGX1BvcykgICAgICAgICAgICAgICAgLyohPCAweDAwMDBFMDAwICovDQojZGVmaW5lIExDRF9GQ1JfQkxJTktGICAgICAgICAgICAgIExDRF9GQ1JfQkxJTktGX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBCTElOS0ZbMjowXSBiaXRzIChCbGluayBGcmVxdWVuY3kpICovDQojZGVmaW5lIExDRF9GQ1JfQkxJTktGXzAgICAgICAgICAgICgweDFVTCA8PCBMQ0RfRkNSX0JMSU5LRl9Qb3MpICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMjAwMCAqLw0KI2RlZmluZSBMQ0RfRkNSX0JMSU5LRl8xICAgICAgICAgICAoMHgyVUwgPDwgTENEX0ZDUl9CTElOS0ZfUG9zKSAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDQwMDAgKi8NCiNkZWZpbmUgTENEX0ZDUl9CTElOS0ZfMiAgICAgICAgICAgKDB4NFVMIDw8IExDRF9GQ1JfQkxJTktGX1BvcykgICAgICAgICAgICAgICAgLyohPCAweDAwMDA4MDAwICovDQoNCiNkZWZpbmUgTENEX0ZDUl9CTElOS19Qb3MgICAgICAgICAgKDE2VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgTENEX0ZDUl9CTElOS19Nc2sgICAgICAgICAgKDB4M1VMIDw8IExDRF9GQ1JfQkxJTktfUG9zKSAgICAgICAgICAgICAgICAgLyohPCAweDAwMDMwMDAwICovDQojZGVmaW5lIExDRF9GQ1JfQkxJTksgICAgICAgICAgICAgIExDRF9GQ1JfQkxJTktfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBCTElOS1sxOjBdIGJpdHMgKEJsaW5rIEVuYWJsZSkgKi8NCiNkZWZpbmUgTENEX0ZDUl9CTElOS18wICAgICAgICAgICAgKDB4MVVMIDw8IExDRF9GQ1JfQkxJTktfUG9zKSAgICAgICAgICAgICAgICAgLyohPCAweDAwMDEwMDAwICovDQojZGVmaW5lIExDRF9GQ1JfQkxJTktfMSAgICAgICAgICAgICgweDJVTCA8PCBMQ0RfRkNSX0JMSU5LX1BvcykgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAyMDAwMCAqLw0KDQojZGVmaW5lIExDRF9GQ1JfRElWX1BvcyAgICAgICAgICAgICgxOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIExDRF9GQ1JfRElWX01zayAgICAgICAgICAgICgweEZVTCA8PCBMQ0RfRkNSX0RJVl9Qb3MpICAgICAgICAgICAgICAgICAgIC8qITwgMHgwMDNDMDAwMCAqLw0KI2RlZmluZSBMQ0RfRkNSX0RJViAgICAgICAgICAgICAgICBMQ0RfRkNSX0RJVl9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgRElWWzM6MF0gYml0cyAoRGl2aWRlcikgKi8NCiNkZWZpbmUgTENEX0ZDUl9QU19Qb3MgICAgICAgICAgICAgKDIyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgTENEX0ZDUl9QU19Nc2sgICAgICAgICAgICAgKDB4RlVMIDw8IExDRF9GQ1JfUFNfUG9zKSAgICAgICAgICAgICAgICAgICAgLyohPCAweDAzQzAwMDAwICovDQojZGVmaW5lIExDRF9GQ1JfUFMgICAgICAgICAgICAgICAgIExDRF9GQ1JfUFNfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBQU1szOjBdIGJpdHMgKFByZXNjYWxlcikgKi8NCg0KLyoqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBMQ0RfU1IgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgTENEX1NSX0VOU19Qb3MgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgTENEX1NSX0VOU19Nc2sgICAgICAgICAgICAgKDB4MVVMIDw8IExDRF9TUl9FTlNfUG9zKSAgICAgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDAxICovDQojZGVmaW5lIExDRF9TUl9FTlMgICAgICAgICAgICAgICAgIExDRF9TUl9FTlNfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBMQ0QgRW5hYmxlZCBCaXQgKi8NCiNkZWZpbmUgTENEX1NSX1NPRl9Qb3MgICAgICAgICAgICAgKDFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgTENEX1NSX1NPRl9Nc2sgICAgICAgICAgICAgKDB4MVVMIDw8IExDRF9TUl9TT0ZfUG9zKSAgICAgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDAyICovDQojZGVmaW5lIExDRF9TUl9TT0YgICAgICAgICAgICAgICAgIExDRF9TUl9TT0ZfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBTdGFydCBPZiBGcmFtZSBGbGFnIEJpdCAqLw0KI2RlZmluZSBMQ0RfU1JfVURSX1BvcyAgICAgICAgICAgICAoMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBMQ0RfU1JfVURSX01zayAgICAgICAgICAgICAoMHgxVUwgPDwgTENEX1NSX1VEUl9Qb3MpICAgICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDQgKi8NCiNkZWZpbmUgTENEX1NSX1VEUiAgICAgICAgICAgICAgICAgTENEX1NSX1VEUl9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFVwZGF0ZSBEaXNwbGF5IFJlcXVlc3QgQml0ICovDQojZGVmaW5lIExDRF9TUl9VRERfUG9zICAgICAgICAgICAgICgzVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIExDRF9TUl9VRERfTXNrICAgICAgICAgICAgICgweDFVTCA8PCBMQ0RfU1JfVUREX1BvcykgICAgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDAwOCAqLw0KI2RlZmluZSBMQ0RfU1JfVUREICAgICAgICAgICAgICAgICBMQ0RfU1JfVUREX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgVXBkYXRlIERpc3BsYXkgRG9uZSBGbGFnIEJpdCAqLw0KI2RlZmluZSBMQ0RfU1JfUkRZX1BvcyAgICAgICAgICAgICAoNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBMQ0RfU1JfUkRZX01zayAgICAgICAgICAgICAoMHgxVUwgPDwgTENEX1NSX1JEWV9Qb3MpICAgICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMTAgKi8NCiNkZWZpbmUgTENEX1NSX1JEWSAgICAgICAgICAgICAgICAgTENEX1NSX1JEWV9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFJlYWR5IEZsYWcgQml0ICovDQojZGVmaW5lIExDRF9TUl9GQ1JTUl9Qb3MgICAgICAgICAgICg1VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIExDRF9TUl9GQ1JTUl9Nc2sgICAgICAgICAgICgweDFVTCA8PCBMQ0RfU1JfRkNSU1JfUG9zKSAgICAgICAgICAgICAgICAgIC8qITwgMHgwMDAwMDAyMCAqLw0KI2RlZmluZSBMQ0RfU1JfRkNSU1IgICAgICAgICAgICAgICBMQ0RfU1JfRkNSU1JfTXNrICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgTENEIEZDUiBSZWdpc3RlciBTeW5jaHJvbml6YXRpb24gRmxhZyBCaXQgKi8NCg0KLyoqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBMQ0RfQ0xSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgTENEX0NMUl9TT0ZDX1BvcyAgICAgICAgICAgKDFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgTENEX0NMUl9TT0ZDX01zayAgICAgICAgICAgKDB4MVVMIDw8IExDRF9DTFJfU09GQ19Qb3MpICAgICAgICAgICAgICAgICAgLyohPCAweDAwMDAwMDAyICovDQojZGVmaW5lIExDRF9DTFJfU09GQyAgICAgICAgICAgICAgIExDRF9DTFJfU09GQ19Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBTdGFydCBPZiBGcmFtZSBGbGFnIENsZWFyIEJpdCAqLw0KI2RlZmluZSBMQ0RfQ0xSX1VERENfUG9zICAgICAgICAgICAoM1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBMQ0RfQ0xSX1VERENfTXNrICAgICAgICAgICAoMHgxVUwgPDwgTENEX0NMUl9VRERDX1BvcykgICAgICAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDggKi8NCiNkZWZpbmUgTENEX0NMUl9VRERDICAgICAgICAgICAgICAgTENEX0NMUl9VRERDX01zayAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFVwZGF0ZSBEaXNwbGF5IERvbmUgRmxhZyBDbGVhciBCaXQgKi8NCg0KLyoqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBMQ0RfUkFNIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgTENEX1JBTV9TRUdNRU5UX0RBVEFfUG9zICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgTENEX1JBTV9TRUdNRU5UX0RBVEFfTXNrICAgKDB4RkZGRkZGRkZVTCA8PCBMQ0RfUkFNX1NFR01FTlRfREFUQV9Qb3MpICAgLyohPCAweEZGRkZGRkZGICovDQojZGVmaW5lIExDRF9SQU1fU0VHTUVOVF9EQVRBICAgICAgIExDRF9SQU1fU0VHTUVOVF9EQVRBX01zayAgICAgICAgICAgICAgICAgICAgLyohPCBTZWdtZW50IERhdGEgQml0cyAqLw0KDQovKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLw0KLyogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8NCi8qICAgICAgICAgICAgICAgICAgICAgICAgICBQb3dlciBDb250cm9sIChQV1IpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovDQovKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLw0KLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8NCg0KI2RlZmluZSBQV1JfUFZEX1NVUFBPUlQgICAgICAgICAgICAgICAgICAgICAgIC8qITwgUFdSIGZlYXR1cmUgYXZhaWxhYmxlIG9ubHkgb24gc3BlY2lmaWMgZGV2aWNlczogUG93ZXIgVm9sdGFnZSBEZXRlY3Rpb24gZmVhdHVyZSAqLw0KDQovKioqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBQV1JfQ1IgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBQV1JfQ1JfTFBTRFNSX1BvcyAgICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBQV1JfQ1JfTFBTRFNSX01zayAgICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgUFdSX0NSX0xQU0RTUl9Qb3MpICAgICAgICAvKiE8IDB4MDAwMDAwMDEgKi8NCiNkZWZpbmUgUFdSX0NSX0xQU0RTUiAgICAgICAgICAgICAgICAgICAgICAgUFdSX0NSX0xQU0RTUl9Nc2sgICAgICAgICAgICAgICAgICAvKiE8IExvdy1wb3dlciBkZWVwc2xlZXAvc2xlZXAvbG93IHBvd2VyIHJ1biAqLw0KI2RlZmluZSBQV1JfQ1JfUEREU19Qb3MgICAgICAgICAgICAgICAgICAgICAoMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBQV1JfQ1JfUEREU19Nc2sgICAgICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgUFdSX0NSX1BERFNfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDAwMDIgKi8NCiNkZWZpbmUgUFdSX0NSX1BERFMgICAgICAgICAgICAgICAgICAgICAgICAgUFdSX0NSX1BERFNfTXNrICAgICAgICAgICAgICAgICAgICAvKiE8IFBvd2VyIERvd24gRGVlcHNsZWVwICovDQojZGVmaW5lIFBXUl9DUl9DV1VGX1BvcyAgICAgICAgICAgICAgICAgICAgICgyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFBXUl9DUl9DV1VGX01zayAgICAgICAgICAgICAgICAgICAgICgweDFVTCA8PCBQV1JfQ1JfQ1dVRl9Qb3MpICAgICAgICAgIC8qITwgMHgwMDAwMDAwNCAqLw0KI2RlZmluZSBQV1JfQ1JfQ1dVRiAgICAgICAgICAgICAgICAgICAgICAgICBQV1JfQ1JfQ1dVRl9Nc2sgICAgICAgICAgICAgICAgICAgIC8qITwgQ2xlYXIgV2FrZXVwIEZsYWcgKi8NCiNkZWZpbmUgUFdSX0NSX0NTQkZfUG9zICAgICAgICAgICAgICAgICAgICAgKDNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUFdSX0NSX0NTQkZfTXNrICAgICAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IFBXUl9DUl9DU0JGX1BvcykgICAgICAgICAgLyohPCAweDAwMDAwMDA4ICovDQojZGVmaW5lIFBXUl9DUl9DU0JGICAgICAgICAgICAgICAgICAgICAgICAgIFBXUl9DUl9DU0JGX01zayAgICAgICAgICAgICAgICAgICAgLyohPCBDbGVhciBTdGFuZGJ5IEZsYWcgKi8NCiNkZWZpbmUgUFdSX0NSX1BWREVfUG9zICAgICAgICAgICAgICAgICAgICAgKDRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUFdSX0NSX1BWREVfTXNrICAgICAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IFBXUl9DUl9QVkRFX1BvcykgICAgICAgICAgLyohPCAweDAwMDAwMDEwICovDQojZGVmaW5lIFBXUl9DUl9QVkRFICAgICAgICAgICAgICAgICAgICAgICAgIFBXUl9DUl9QVkRFX01zayAgICAgICAgICAgICAgICAgICAgLyohPCBQb3dlciBWb2x0YWdlIERldGVjdG9yIEVuYWJsZSAqLw0KDQojZGVmaW5lIFBXUl9DUl9QTFNfUG9zICAgICAgICAgICAgICAgICAgICAgICg1VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFBXUl9DUl9QTFNfTXNrICAgICAgICAgICAgICAgICAgICAgICgweDdVTCA8PCBQV1JfQ1JfUExTX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDBFMCAqLw0KI2RlZmluZSBQV1JfQ1JfUExTICAgICAgICAgICAgICAgICAgICAgICAgICBQV1JfQ1JfUExTX01zayAgICAgICAgICAgICAgICAgICAgIC8qITwgUExTWzI6MF0gYml0cyAoUFZEIExldmVsIFNlbGVjdGlvbikgKi8NCiNkZWZpbmUgUFdSX0NSX1BMU18wICAgICAgICAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IFBXUl9DUl9QTFNfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwMDIwICovDQojZGVmaW5lIFBXUl9DUl9QTFNfMSAgICAgICAgICAgICAgICAgICAgICAgICgweDJVTCA8PCBQV1JfQ1JfUExTX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDA0MCAqLw0KI2RlZmluZSBQV1JfQ1JfUExTXzIgICAgICAgICAgICAgICAgICAgICAgICAoMHg0VUwgPDwgUFdSX0NSX1BMU19Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDAwODAgKi8NCg0KLyohPCBQVkQgbGV2ZWwgY29uZmlndXJhdGlvbiAqLw0KI2RlZmluZSBQV1JfQ1JfUExTX0xFVjAgICAgICAgICAgICAgICAgICAgICAoMHgwMDAwMDAwMFUpICAgICAgICAgICAgICAgICAgICAgIC8qITwgUFZEIGxldmVsIDAgKi8NCiNkZWZpbmUgUFdSX0NSX1BMU19MRVYxICAgICAgICAgICAgICAgICAgICAgKDB4MDAwMDAwMjBVKSAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBWRCBsZXZlbCAxICovDQojZGVmaW5lIFBXUl9DUl9QTFNfTEVWMiAgICAgICAgICAgICAgICAgICAgICgweDAwMDAwMDQwVSkgICAgICAgICAgICAgICAgICAgICAgLyohPCBQVkQgbGV2ZWwgMiAqLw0KI2RlZmluZSBQV1JfQ1JfUExTX0xFVjMgICAgICAgICAgICAgICAgICAgICAoMHgwMDAwMDA2MFUpICAgICAgICAgICAgICAgICAgICAgIC8qITwgUFZEIGxldmVsIDMgKi8NCiNkZWZpbmUgUFdSX0NSX1BMU19MRVY0ICAgICAgICAgICAgICAgICAgICAgKDB4MDAwMDAwODBVKSAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBWRCBsZXZlbCA0ICovDQojZGVmaW5lIFBXUl9DUl9QTFNfTEVWNSAgICAgICAgICAgICAgICAgICAgICgweDAwMDAwMEEwVSkgICAgICAgICAgICAgICAgICAgICAgLyohPCBQVkQgbGV2ZWwgNSAqLw0KI2RlZmluZSBQV1JfQ1JfUExTX0xFVjYgICAgICAgICAgICAgICAgICAgICAoMHgwMDAwMDBDMFUpICAgICAgICAgICAgICAgICAgICAgIC8qITwgUFZEIGxldmVsIDYgKi8NCiNkZWZpbmUgUFdSX0NSX1BMU19MRVY3ICAgICAgICAgICAgICAgICAgICAgKDB4MDAwMDAwRTBVKSAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBWRCBsZXZlbCA3ICovDQoNCiNkZWZpbmUgUFdSX0NSX0RCUF9Qb3MgICAgICAgICAgICAgICAgICAgICAgKDhVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUFdSX0NSX0RCUF9Nc2sgICAgICAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IFBXUl9DUl9EQlBfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwMTAwICovDQojZGVmaW5lIFBXUl9DUl9EQlAgICAgICAgICAgICAgICAgICAgICAgICAgIFBXUl9DUl9EQlBfTXNrICAgICAgICAgICAgICAgICAgICAgLyohPCBEaXNhYmxlIEJhY2t1cCBEb21haW4gd3JpdGUgcHJvdGVjdGlvbiAqLw0KI2RlZmluZSBQV1JfQ1JfVUxQX1BvcyAgICAgICAgICAgICAgICAgICAgICAoOVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBQV1JfQ1JfVUxQX01zayAgICAgICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgUFdSX0NSX1VMUF9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDAyMDAgKi8NCiNkZWZpbmUgUFdSX0NSX1VMUCAgICAgICAgICAgICAgICAgICAgICAgICAgUFdSX0NSX1VMUF9Nc2sgICAgICAgICAgICAgICAgICAgICAvKiE8IFVsdHJhIExvdyBQb3dlciBtb2RlICovDQojZGVmaW5lIFBXUl9DUl9GV1VfUG9zICAgICAgICAgICAgICAgICAgICAgICgxMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFBXUl9DUl9GV1VfTXNrICAgICAgICAgICAgICAgICAgICAgICgweDFVTCA8PCBQV1JfQ1JfRldVX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDQwMCAqLw0KI2RlZmluZSBQV1JfQ1JfRldVICAgICAgICAgICAgICAgICAgICAgICAgICBQV1JfQ1JfRldVX01zayAgICAgICAgICAgICAgICAgICAgIC8qITwgRmFzdCB3YWtldXAgKi8NCg0KI2RlZmluZSBQV1JfQ1JfVk9TX1BvcyAgICAgICAgICAgICAgICAgICAgICAoMTFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBQV1JfQ1JfVk9TX01zayAgICAgICAgICAgICAgICAgICAgICAoMHgzVUwgPDwgUFdSX0NSX1ZPU19Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDE4MDAgKi8NCiNkZWZpbmUgUFdSX0NSX1ZPUyAgICAgICAgICAgICAgICAgICAgICAgICAgUFdSX0NSX1ZPU19Nc2sgICAgICAgICAgICAgICAgICAgICAvKiE8IFZPU1sxOjBdIGJpdHMgKFZvbHRhZ2Ugc2NhbGluZyByYW5nZSBzZWxlY3Rpb24pICovDQojZGVmaW5lIFBXUl9DUl9WT1NfMCAgICAgICAgICAgICAgICAgICAgICAgICgweDFVTCA8PCBQV1JfQ1JfVk9TX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDgwMCAqLw0KI2RlZmluZSBQV1JfQ1JfVk9TXzEgICAgICAgICAgICAgICAgICAgICAgICAoMHgyVUwgPDwgUFdSX0NSX1ZPU19Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDEwMDAgKi8NCiNkZWZpbmUgUFdSX0NSX0xQUlVOX1BvcyAgICAgICAgICAgICAgICAgICAgKDE0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUFdSX0NSX0xQUlVOX01zayAgICAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IFBXUl9DUl9MUFJVTl9Qb3MpICAgICAgICAgLyohPCAweDAwMDA0MDAwICovDQojZGVmaW5lIFBXUl9DUl9MUFJVTiAgICAgICAgICAgICAgICAgICAgICAgIFBXUl9DUl9MUFJVTl9Nc2sgICAgICAgICAgICAgICAgICAgLyohPCBMb3cgcG93ZXIgcnVuIG1vZGUgKi8NCg0KLyoqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBQV1JfQ1NSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgUFdSX0NTUl9XVUZfUG9zICAgICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUFdSX0NTUl9XVUZfTXNrICAgICAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IFBXUl9DU1JfV1VGX1BvcykgICAgICAgICAgLyohPCAweDAwMDAwMDAxICovDQojZGVmaW5lIFBXUl9DU1JfV1VGICAgICAgICAgICAgICAgICAgICAgICAgIFBXUl9DU1JfV1VGX01zayAgICAgICAgICAgICAgICAgICAgLyohPCBXYWtldXAgRmxhZyAqLw0KI2RlZmluZSBQV1JfQ1NSX1NCRl9Qb3MgICAgICAgICAgICAgICAgICAgICAoMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBQV1JfQ1NSX1NCRl9Nc2sgICAgICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgUFdSX0NTUl9TQkZfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDAwMDIgKi8NCiNkZWZpbmUgUFdSX0NTUl9TQkYgICAgICAgICAgICAgICAgICAgICAgICAgUFdSX0NTUl9TQkZfTXNrICAgICAgICAgICAgICAgICAgICAvKiE8IFN0YW5kYnkgRmxhZyAqLw0KI2RlZmluZSBQV1JfQ1NSX1BWRE9fUG9zICAgICAgICAgICAgICAgICAgICAoMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBQV1JfQ1NSX1BWRE9fTXNrICAgICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgUFdSX0NTUl9QVkRPX1BvcykgICAgICAgICAvKiE8IDB4MDAwMDAwMDQgKi8NCiNkZWZpbmUgUFdSX0NTUl9QVkRPICAgICAgICAgICAgICAgICAgICAgICAgUFdSX0NTUl9QVkRPX01zayAgICAgICAgICAgICAgICAgICAvKiE8IFBWRCBPdXRwdXQgKi8NCiNkZWZpbmUgUFdSX0NTUl9WUkVGSU5UUkRZRl9Qb3MgICAgICAgICAgICAgKDNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUFdSX0NTUl9WUkVGSU5UUkRZRl9Nc2sgICAgICAgICAgICAgKDB4MVVMIDw8IFBXUl9DU1JfVlJFRklOVFJEWUZfUG9zKSAgLyohPCAweDAwMDAwMDA4ICovDQojZGVmaW5lIFBXUl9DU1JfVlJFRklOVFJEWUYgICAgICAgICAgICAgICAgIFBXUl9DU1JfVlJFRklOVFJEWUZfTXNrICAgICAgICAgICAgLyohPCBJbnRlcm5hbCB2b2x0YWdlIHJlZmVyZW5jZSAoVlJFRklOVCkgcmVhZHkgZmxhZyAqLw0KI2RlZmluZSBQV1JfQ1NSX1ZPU0ZfUG9zICAgICAgICAgICAgICAgICAgICAoNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBQV1JfQ1NSX1ZPU0ZfTXNrICAgICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgUFdSX0NTUl9WT1NGX1BvcykgICAgICAgICAvKiE8IDB4MDAwMDAwMTAgKi8NCiNkZWZpbmUgUFdSX0NTUl9WT1NGICAgICAgICAgICAgICAgICAgICAgICAgUFdSX0NTUl9WT1NGX01zayAgICAgICAgICAgICAgICAgICAvKiE8IFZvbHRhZ2UgU2NhbGluZyBzZWxlY3QgZmxhZyAqLw0KI2RlZmluZSBQV1JfQ1NSX1JFR0xQRl9Qb3MgICAgICAgICAgICAgICAgICAoNVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBQV1JfQ1NSX1JFR0xQRl9Nc2sgICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgUFdSX0NTUl9SRUdMUEZfUG9zKSAgICAgICAvKiE8IDB4MDAwMDAwMjAgKi8NCiNkZWZpbmUgUFdSX0NTUl9SRUdMUEYgICAgICAgICAgICAgICAgICAgICAgUFdSX0NTUl9SRUdMUEZfTXNrICAgICAgICAgICAgICAgICAvKiE8IFJlZ3VsYXRvciBMUCBmbGFnICovDQoNCiNkZWZpbmUgUFdSX0NTUl9FV1VQMV9Qb3MgICAgICAgICAgICAgICAgICAgKDhVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUFdSX0NTUl9FV1VQMV9Nc2sgICAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IFBXUl9DU1JfRVdVUDFfUG9zKSAgICAgICAgLyohPCAweDAwMDAwMTAwICovDQojZGVmaW5lIFBXUl9DU1JfRVdVUDEgICAgICAgICAgICAgICAgICAgICAgIFBXUl9DU1JfRVdVUDFfTXNrICAgICAgICAgICAgICAgICAgLyohPCBFbmFibGUgV0tVUCBwaW4gMSAqLw0KI2RlZmluZSBQV1JfQ1NSX0VXVVAyX1BvcyAgICAgICAgICAgICAgICAgICAoOVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBQV1JfQ1NSX0VXVVAyX01zayAgICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgUFdSX0NTUl9FV1VQMl9Qb3MpICAgICAgICAvKiE8IDB4MDAwMDAyMDAgKi8NCiNkZWZpbmUgUFdSX0NTUl9FV1VQMiAgICAgICAgICAgICAgICAgICAgICAgUFdSX0NTUl9FV1VQMl9Nc2sgICAgICAgICAgICAgICAgICAvKiE8IEVuYWJsZSBXS1VQIHBpbiAyICovDQojZGVmaW5lIFBXUl9DU1JfRVdVUDNfUG9zICAgICAgICAgICAgICAgICAgICgxMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFBXUl9DU1JfRVdVUDNfTXNrICAgICAgICAgICAgICAgICAgICgweDFVTCA8PCBQV1JfQ1NSX0VXVVAzX1BvcykgICAgICAgIC8qITwgMHgwMDAwMDQwMCAqLw0KI2RlZmluZSBQV1JfQ1NSX0VXVVAzICAgICAgICAgICAgICAgICAgICAgICBQV1JfQ1NSX0VXVVAzX01zayAgICAgICAgICAgICAgICAgIC8qITwgRW5hYmxlIFdLVVAgcGluIDMgKi8NCg0KLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8NCi8qICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovDQovKiAgICAgICAgICAgICAgICAgICAgICBSZXNldCBhbmQgQ2xvY2sgQ29udHJvbCAoUkNDKSAgICAgICAgICAgICAgICAgICAgICAgICAqLw0KLyogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8NCi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovDQovKg0KKiBAYnJpZWYgU3BlY2lmaWMgZGV2aWNlIGZlYXR1cmUgZGVmaW5pdGlvbnMgIChub3QgcHJlc2VudCBvbiBhbGwgZGV2aWNlcyBpbiB0aGUgU1RNMzJGMCBzZXJpZSkNCiovDQojZGVmaW5lIFJDQ19MU0VDU1NfU1VQUE9SVCAgICAgICAgICAvKiE8IExTRSBDU1MgZmVhdHVyZSBzdXBwb3J0ICovDQoNCi8qKioqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFJDQ19DUiByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIFJDQ19DUl9IU0lPTl9Qb3MgICAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19DUl9IU0lPTl9Nc2sgICAgICAgICAgICAgICAgICAgICgweDFVTCA8PCBSQ0NfQ1JfSFNJT05fUG9zKSAgICAgICAgIC8qITwgMHgwMDAwMDAwMSAqLw0KI2RlZmluZSBSQ0NfQ1JfSFNJT04gICAgICAgICAgICAgICAgICAgICAgICBSQ0NfQ1JfSFNJT05fTXNrICAgICAgICAgICAgICAgICAgIC8qITwgSW50ZXJuYWwgSGlnaCBTcGVlZCBjbG9jayBlbmFibGUgKi8NCiNkZWZpbmUgUkNDX0NSX0hTSVJEWV9Qb3MgICAgICAgICAgICAgICAgICAgKDFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0NSX0hTSVJEWV9Nc2sgICAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IFJDQ19DUl9IU0lSRFlfUG9zKSAgICAgICAgLyohPCAweDAwMDAwMDAyICovDQojZGVmaW5lIFJDQ19DUl9IU0lSRFkgICAgICAgICAgICAgICAgICAgICAgIFJDQ19DUl9IU0lSRFlfTXNrICAgICAgICAgICAgICAgICAgLyohPCBJbnRlcm5hbCBIaWdoIFNwZWVkIGNsb2NrIHJlYWR5IGZsYWcgKi8NCg0KI2RlZmluZSBSQ0NfQ1JfTVNJT05fUG9zICAgICAgICAgICAgICAgICAgICAoOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQ1JfTVNJT05fTXNrICAgICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgUkNDX0NSX01TSU9OX1BvcykgICAgICAgICAvKiE8IDB4MDAwMDAxMDAgKi8NCiNkZWZpbmUgUkNDX0NSX01TSU9OICAgICAgICAgICAgICAgICAgICAgICAgUkNDX0NSX01TSU9OX01zayAgICAgICAgICAgICAgICAgICAvKiE8IEludGVybmFsIE11bHRpIFNwZWVkIGNsb2NrIGVuYWJsZSAqLw0KI2RlZmluZSBSQ0NfQ1JfTVNJUkRZX1BvcyAgICAgICAgICAgICAgICAgICAoOVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQ1JfTVNJUkRZX01zayAgICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgUkNDX0NSX01TSVJEWV9Qb3MpICAgICAgICAvKiE8IDB4MDAwMDAyMDAgKi8NCiNkZWZpbmUgUkNDX0NSX01TSVJEWSAgICAgICAgICAgICAgICAgICAgICAgUkNDX0NSX01TSVJEWV9Nc2sgICAgICAgICAgICAgICAgICAvKiE8IEludGVybmFsIE11bHRpIFNwZWVkIGNsb2NrIHJlYWR5IGZsYWcgKi8NCg0KI2RlZmluZSBSQ0NfQ1JfSFNFT05fUG9zICAgICAgICAgICAgICAgICAgICAoMTZVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQ1JfSFNFT05fTXNrICAgICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgUkNDX0NSX0hTRU9OX1BvcykgICAgICAgICAvKiE8IDB4MDAwMTAwMDAgKi8NCiNkZWZpbmUgUkNDX0NSX0hTRU9OICAgICAgICAgICAgICAgICAgICAgICAgUkNDX0NSX0hTRU9OX01zayAgICAgICAgICAgICAgICAgICAvKiE8IEV4dGVybmFsIEhpZ2ggU3BlZWQgY2xvY2sgZW5hYmxlICovDQojZGVmaW5lIFJDQ19DUl9IU0VSRFlfUG9zICAgICAgICAgICAgICAgICAgICgxN1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19DUl9IU0VSRFlfTXNrICAgICAgICAgICAgICAgICAgICgweDFVTCA8PCBSQ0NfQ1JfSFNFUkRZX1BvcykgICAgICAgIC8qITwgMHgwMDAyMDAwMCAqLw0KI2RlZmluZSBSQ0NfQ1JfSFNFUkRZICAgICAgICAgICAgICAgICAgICAgICBSQ0NfQ1JfSFNFUkRZX01zayAgICAgICAgICAgICAgICAgIC8qITwgRXh0ZXJuYWwgSGlnaCBTcGVlZCBjbG9jayByZWFkeSBmbGFnICovDQojZGVmaW5lIFJDQ19DUl9IU0VCWVBfUG9zICAgICAgICAgICAgICAgICAgICgxOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19DUl9IU0VCWVBfTXNrICAgICAgICAgICAgICAgICAgICgweDFVTCA8PCBSQ0NfQ1JfSFNFQllQX1BvcykgICAgICAgIC8qITwgMHgwMDA0MDAwMCAqLw0KI2RlZmluZSBSQ0NfQ1JfSFNFQllQICAgICAgICAgICAgICAgICAgICAgICBSQ0NfQ1JfSFNFQllQX01zayAgICAgICAgICAgICAgICAgIC8qITwgRXh0ZXJuYWwgSGlnaCBTcGVlZCBjbG9jayBCeXBhc3MgKi8NCg0KI2RlZmluZSBSQ0NfQ1JfUExMT05fUG9zICAgICAgICAgICAgICAgICAgICAoMjRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQ1JfUExMT05fTXNrICAgICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgUkNDX0NSX1BMTE9OX1BvcykgICAgICAgICAvKiE8IDB4MDEwMDAwMDAgKi8NCiNkZWZpbmUgUkNDX0NSX1BMTE9OICAgICAgICAgICAgICAgICAgICAgICAgUkNDX0NSX1BMTE9OX01zayAgICAgICAgICAgICAgICAgICAvKiE8IFBMTCBlbmFibGUgKi8NCiNkZWZpbmUgUkNDX0NSX1BMTFJEWV9Qb3MgICAgICAgICAgICAgICAgICAgKDI1VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0NSX1BMTFJEWV9Nc2sgICAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IFJDQ19DUl9QTExSRFlfUG9zKSAgICAgICAgLyohPCAweDAyMDAwMDAwICovDQojZGVmaW5lIFJDQ19DUl9QTExSRFkgICAgICAgICAgICAgICAgICAgICAgIFJDQ19DUl9QTExSRFlfTXNrICAgICAgICAgICAgICAgICAgLyohPCBQTEwgY2xvY2sgcmVhZHkgZmxhZyAqLw0KI2RlZmluZSBSQ0NfQ1JfQ1NTT05fUG9zICAgICAgICAgICAgICAgICAgICAoMjhVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQ1JfQ1NTT05fTXNrICAgICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgUkNDX0NSX0NTU09OX1BvcykgICAgICAgICAvKiE8IDB4MTAwMDAwMDAgKi8NCiNkZWZpbmUgUkNDX0NSX0NTU09OICAgICAgICAgICAgICAgICAgICAgICAgUkNDX0NSX0NTU09OX01zayAgICAgICAgICAgICAgICAgICAvKiE8IENsb2NrIFNlY3VyaXR5IFN5c3RlbSBlbmFibGUgKi8NCg0KI2RlZmluZSBSQ0NfQ1JfUlRDUFJFX1BvcyAgICAgICAgICAgICAgICAgICAoMjlVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQ1JfUlRDUFJFX01zayAgICAgICAgICAgICAgICAgICAoMHgzVUwgPDwgUkNDX0NSX1JUQ1BSRV9Qb3MpICAgICAgICAvKiE8IDB4NjAwMDAwMDAgKi8NCiNkZWZpbmUgUkNDX0NSX1JUQ1BSRSAgICAgICAgICAgICAgICAgICAgICAgUkNDX0NSX1JUQ1BSRV9Nc2sgICAgICAgICAgICAgICAgICAvKiE8IFJUQy9MQ0QgUHJlc2NhbGVyICovDQojZGVmaW5lIFJDQ19DUl9SVENQUkVfMCAgICAgICAgICAgICAgICAgICAgICgweDIwMDAwMDAwVSkgICAgICAgICAgICAgICAgICAgICAgLyohPCBCaXQwICovDQojZGVmaW5lIFJDQ19DUl9SVENQUkVfMSAgICAgICAgICAgICAgICAgICAgICgweDQwMDAwMDAwVSkgICAgICAgICAgICAgICAgICAgICAgLyohPCBCaXQxICovDQoNCi8qKioqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFJDQ19JQ1NDUiByZWdpc3RlciAgKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIFJDQ19JQ1NDUl9IU0lDQUxfUG9zICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19JQ1NDUl9IU0lDQUxfTXNrICAgICAgICAgICAgICAgICgweEZGVUwgPDwgUkNDX0lDU0NSX0hTSUNBTF9Qb3MpICAgIC8qITwgMHgwMDAwMDBGRiAqLw0KI2RlZmluZSBSQ0NfSUNTQ1JfSFNJQ0FMICAgICAgICAgICAgICAgICAgICBSQ0NfSUNTQ1JfSFNJQ0FMX01zayAgICAgICAgICAgICAgIC8qITwgSW50ZXJuYWwgSGlnaCBTcGVlZCBjbG9jayBDYWxpYnJhdGlvbiAqLw0KI2RlZmluZSBSQ0NfSUNTQ1JfSFNJVFJJTV9Qb3MgICAgICAgICAgICAgICAoOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfSUNTQ1JfSFNJVFJJTV9Nc2sgICAgICAgICAgICAgICAoMHgxRlVMIDw8IFJDQ19JQ1NDUl9IU0lUUklNX1BvcykgICAvKiE8IDB4MDAwMDFGMDAgKi8NCiNkZWZpbmUgUkNDX0lDU0NSX0hTSVRSSU0gICAgICAgICAgICAgICAgICAgUkNDX0lDU0NSX0hTSVRSSU1fTXNrICAgICAgICAgICAgICAvKiE8IEludGVybmFsIEhpZ2ggU3BlZWQgY2xvY2sgdHJpbW1pbmcgKi8NCg0KI2RlZmluZSBSQ0NfSUNTQ1JfTVNJUkFOR0VfUG9zICAgICAgICAgICAgICAoMTNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfSUNTQ1JfTVNJUkFOR0VfTXNrICAgICAgICAgICAgICAoMHg3VUwgPDwgUkNDX0lDU0NSX01TSVJBTkdFX1BvcykgICAvKiE8IDB4MDAwMEUwMDAgKi8NCiNkZWZpbmUgUkNDX0lDU0NSX01TSVJBTkdFICAgICAgICAgICAgICAgICAgUkNDX0lDU0NSX01TSVJBTkdFX01zayAgICAgICAgICAgICAvKiE8IEludGVybmFsIE11bHRpIFNwZWVkIGNsb2NrIFJhbmdlICovDQojZGVmaW5lIFJDQ19JQ1NDUl9NU0lSQU5HRV8wICAgICAgICAgICAgICAgICgweDBVTCA8PCBSQ0NfSUNTQ1JfTVNJUkFOR0VfUG9zKSAgIC8qITwgMHgwMDAwMDAwMCAqLw0KI2RlZmluZSBSQ0NfSUNTQ1JfTVNJUkFOR0VfMSAgICAgICAgICAgICAgICAoMHgxVUwgPDwgUkNDX0lDU0NSX01TSVJBTkdFX1BvcykgICAvKiE8IDB4MDAwMDIwMDAgKi8NCiNkZWZpbmUgUkNDX0lDU0NSX01TSVJBTkdFXzIgICAgICAgICAgICAgICAgKDB4MlVMIDw8IFJDQ19JQ1NDUl9NU0lSQU5HRV9Qb3MpICAgLyohPCAweDAwMDA0MDAwICovDQojZGVmaW5lIFJDQ19JQ1NDUl9NU0lSQU5HRV8zICAgICAgICAgICAgICAgICgweDNVTCA8PCBSQ0NfSUNTQ1JfTVNJUkFOR0VfUG9zKSAgIC8qITwgMHgwMDAwNjAwMCAqLw0KI2RlZmluZSBSQ0NfSUNTQ1JfTVNJUkFOR0VfNCAgICAgICAgICAgICAgICAoMHg0VUwgPDwgUkNDX0lDU0NSX01TSVJBTkdFX1BvcykgICAvKiE8IDB4MDAwMDgwMDAgKi8NCiNkZWZpbmUgUkNDX0lDU0NSX01TSVJBTkdFXzUgICAgICAgICAgICAgICAgKDB4NVVMIDw8IFJDQ19JQ1NDUl9NU0lSQU5HRV9Qb3MpICAgLyohPCAweDAwMDBBMDAwICovDQojZGVmaW5lIFJDQ19JQ1NDUl9NU0lSQU5HRV82ICAgICAgICAgICAgICAgICgweDZVTCA8PCBSQ0NfSUNTQ1JfTVNJUkFOR0VfUG9zKSAgIC8qITwgMHgwMDAwQzAwMCAqLw0KI2RlZmluZSBSQ0NfSUNTQ1JfTVNJQ0FMX1BvcyAgICAgICAgICAgICAgICAoMTZVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfSUNTQ1JfTVNJQ0FMX01zayAgICAgICAgICAgICAgICAoMHhGRlVMIDw8IFJDQ19JQ1NDUl9NU0lDQUxfUG9zKSAgICAvKiE8IDB4MDBGRjAwMDAgKi8NCiNkZWZpbmUgUkNDX0lDU0NSX01TSUNBTCAgICAgICAgICAgICAgICAgICAgUkNDX0lDU0NSX01TSUNBTF9Nc2sgICAgICAgICAgICAgICAvKiE8IEludGVybmFsIE11bHRpIFNwZWVkIGNsb2NrIENhbGlicmF0aW9uICovDQojZGVmaW5lIFJDQ19JQ1NDUl9NU0lUUklNX1BvcyAgICAgICAgICAgICAgICgyNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19JQ1NDUl9NU0lUUklNX01zayAgICAgICAgICAgICAgICgweEZGVUwgPDwgUkNDX0lDU0NSX01TSVRSSU1fUG9zKSAgIC8qITwgMHhGRjAwMDAwMCAqLw0KI2RlZmluZSBSQ0NfSUNTQ1JfTVNJVFJJTSAgICAgICAgICAgICAgICAgICBSQ0NfSUNTQ1JfTVNJVFJJTV9Nc2sgICAgICAgICAgICAgIC8qITwgSW50ZXJuYWwgTXVsdGkgU3BlZWQgY2xvY2sgdHJpbW1pbmcgKi8NCg0KLyoqKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgUkNDX0NGR1IgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgUkNDX0NGR1JfU1dfUG9zICAgICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0NGR1JfU1dfTXNrICAgICAgICAgICAgICAgICAgICAgKDB4M1VMIDw8IFJDQ19DRkdSX1NXX1BvcykgICAgICAgICAgLyohPCAweDAwMDAwMDAzICovDQojZGVmaW5lIFJDQ19DRkdSX1NXICAgICAgICAgICAgICAgICAgICAgICAgIFJDQ19DRkdSX1NXX01zayAgICAgICAgICAgICAgICAgICAgLyohPCBTV1sxOjBdIGJpdHMgKFN5c3RlbSBjbG9jayBTd2l0Y2gpICovDQojZGVmaW5lIFJDQ19DRkdSX1NXXzAgICAgICAgICAgICAgICAgICAgICAgICgweDFVTCA8PCBSQ0NfQ0ZHUl9TV19Qb3MpICAgICAgICAgIC8qITwgMHgwMDAwMDAwMSAqLw0KI2RlZmluZSBSQ0NfQ0ZHUl9TV18xICAgICAgICAgICAgICAgICAgICAgICAoMHgyVUwgPDwgUkNDX0NGR1JfU1dfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDAwMDIgKi8NCg0KLyohPCBTVyBjb25maWd1cmF0aW9uICovDQojZGVmaW5lIFJDQ19DRkdSX1NXX01TSSAgICAgICAgICAgICAgICAgICAgICgweDAwMDAwMDAwVSkgICAgICAgICAgICAgICAgICAgICAgLyohPCBNU0kgc2VsZWN0ZWQgYXMgc3lzdGVtIGNsb2NrICovDQojZGVmaW5lIFJDQ19DRkdSX1NXX0hTSSAgICAgICAgICAgICAgICAgICAgICgweDAwMDAwMDAxVSkgICAgICAgICAgICAgICAgICAgICAgLyohPCBIU0kgc2VsZWN0ZWQgYXMgc3lzdGVtIGNsb2NrICovDQojZGVmaW5lIFJDQ19DRkdSX1NXX0hTRSAgICAgICAgICAgICAgICAgICAgICgweDAwMDAwMDAyVSkgICAgICAgICAgICAgICAgICAgICAgLyohPCBIU0Ugc2VsZWN0ZWQgYXMgc3lzdGVtIGNsb2NrICovDQojZGVmaW5lIFJDQ19DRkdSX1NXX1BMTCAgICAgICAgICAgICAgICAgICAgICgweDAwMDAwMDAzVSkgICAgICAgICAgICAgICAgICAgICAgLyohPCBQTEwgc2VsZWN0ZWQgYXMgc3lzdGVtIGNsb2NrICovDQoNCiNkZWZpbmUgUkNDX0NGR1JfU1dTX1BvcyAgICAgICAgICAgICAgICAgICAgKDJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0NGR1JfU1dTX01zayAgICAgICAgICAgICAgICAgICAgKDB4M1VMIDw8IFJDQ19DRkdSX1NXU19Qb3MpICAgICAgICAgLyohPCAweDAwMDAwMDBDICovDQojZGVmaW5lIFJDQ19DRkdSX1NXUyAgICAgICAgICAgICAgICAgICAgICAgIFJDQ19DRkdSX1NXU19Nc2sgICAgICAgICAgICAgICAgICAgLyohPCBTV1NbMTowXSBiaXRzIChTeXN0ZW0gQ2xvY2sgU3dpdGNoIFN0YXR1cykgKi8NCiNkZWZpbmUgUkNDX0NGR1JfU1dTXzAgICAgICAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IFJDQ19DRkdSX1NXU19Qb3MpICAgICAgICAgLyohPCAweDAwMDAwMDA0ICovDQojZGVmaW5lIFJDQ19DRkdSX1NXU18xICAgICAgICAgICAgICAgICAgICAgICgweDJVTCA8PCBSQ0NfQ0ZHUl9TV1NfUG9zKSAgICAgICAgIC8qITwgMHgwMDAwMDAwOCAqLw0KDQovKiE8IFNXUyBjb25maWd1cmF0aW9uICovDQojZGVmaW5lIFJDQ19DRkdSX1NXU19NU0kgICAgICAgICAgICAgICAgICAgICgweDAwMDAwMDAwVSkgICAgICAgICAgICAgICAgICAgICAgLyohPCBNU0kgb3NjaWxsYXRvciB1c2VkIGFzIHN5c3RlbSBjbG9jayAqLw0KI2RlZmluZSBSQ0NfQ0ZHUl9TV1NfSFNJICAgICAgICAgICAgICAgICAgICAoMHgwMDAwMDAwNFUpICAgICAgICAgICAgICAgICAgICAgIC8qITwgSFNJIG9zY2lsbGF0b3IgdXNlZCBhcyBzeXN0ZW0gY2xvY2sgKi8NCiNkZWZpbmUgUkNDX0NGR1JfU1dTX0hTRSAgICAgICAgICAgICAgICAgICAgKDB4MDAwMDAwMDhVKSAgICAgICAgICAgICAgICAgICAgICAvKiE8IEhTRSBvc2NpbGxhdG9yIHVzZWQgYXMgc3lzdGVtIGNsb2NrICovDQojZGVmaW5lIFJDQ19DRkdSX1NXU19QTEwgICAgICAgICAgICAgICAgICAgICgweDAwMDAwMDBDVSkgICAgICAgICAgICAgICAgICAgICAgLyohPCBQTEwgdXNlZCBhcyBzeXN0ZW0gY2xvY2sgKi8NCg0KI2RlZmluZSBSQ0NfQ0ZHUl9IUFJFX1BvcyAgICAgICAgICAgICAgICAgICAoNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQ0ZHUl9IUFJFX01zayAgICAgICAgICAgICAgICAgICAoMHhGVUwgPDwgUkNDX0NGR1JfSFBSRV9Qb3MpICAgICAgICAvKiE8IDB4MDAwMDAwRjAgKi8NCiNkZWZpbmUgUkNDX0NGR1JfSFBSRSAgICAgICAgICAgICAgICAgICAgICAgUkNDX0NGR1JfSFBSRV9Nc2sgICAgICAgICAgICAgICAgICAvKiE8IEhQUkVbMzowXSBiaXRzIChBSEIgcHJlc2NhbGVyKSAqLw0KI2RlZmluZSBSQ0NfQ0ZHUl9IUFJFXzAgICAgICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgUkNDX0NGR1JfSFBSRV9Qb3MpICAgICAgICAvKiE8IDB4MDAwMDAwMTAgKi8NCiNkZWZpbmUgUkNDX0NGR1JfSFBSRV8xICAgICAgICAgICAgICAgICAgICAgKDB4MlVMIDw8IFJDQ19DRkdSX0hQUkVfUG9zKSAgICAgICAgLyohPCAweDAwMDAwMDIwICovDQojZGVmaW5lIFJDQ19DRkdSX0hQUkVfMiAgICAgICAgICAgICAgICAgICAgICgweDRVTCA8PCBSQ0NfQ0ZHUl9IUFJFX1BvcykgICAgICAgIC8qITwgMHgwMDAwMDA0MCAqLw0KI2RlZmluZSBSQ0NfQ0ZHUl9IUFJFXzMgICAgICAgICAgICAgICAgICAgICAoMHg4VUwgPDwgUkNDX0NGR1JfSFBSRV9Qb3MpICAgICAgICAvKiE8IDB4MDAwMDAwODAgKi8NCg0KLyohPCBIUFJFIGNvbmZpZ3VyYXRpb24gKi8NCiNkZWZpbmUgUkNDX0NGR1JfSFBSRV9ESVYxICAgICAgICAgICAgICAgICAgKDB4MDAwMDAwMDBVKSAgICAgICAgICAgICAgICAgICAgICAvKiE8IFNZU0NMSyBub3QgZGl2aWRlZCAqLw0KI2RlZmluZSBSQ0NfQ0ZHUl9IUFJFX0RJVjIgICAgICAgICAgICAgICAgICAoMHgwMDAwMDA4MFUpICAgICAgICAgICAgICAgICAgICAgIC8qITwgU1lTQ0xLIGRpdmlkZWQgYnkgMiAqLw0KI2RlZmluZSBSQ0NfQ0ZHUl9IUFJFX0RJVjQgICAgICAgICAgICAgICAgICAoMHgwMDAwMDA5MFUpICAgICAgICAgICAgICAgICAgICAgIC8qITwgU1lTQ0xLIGRpdmlkZWQgYnkgNCAqLw0KI2RlZmluZSBSQ0NfQ0ZHUl9IUFJFX0RJVjggICAgICAgICAgICAgICAgICAoMHgwMDAwMDBBMFUpICAgICAgICAgICAgICAgICAgICAgIC8qITwgU1lTQ0xLIGRpdmlkZWQgYnkgOCAqLw0KI2RlZmluZSBSQ0NfQ0ZHUl9IUFJFX0RJVjE2ICAgICAgICAgICAgICAgICAoMHgwMDAwMDBCMFUpICAgICAgICAgICAgICAgICAgICAgIC8qITwgU1lTQ0xLIGRpdmlkZWQgYnkgMTYgKi8NCiNkZWZpbmUgUkNDX0NGR1JfSFBSRV9ESVY2NCAgICAgICAgICAgICAgICAgKDB4MDAwMDAwQzBVKSAgICAgICAgICAgICAgICAgICAgICAvKiE8IFNZU0NMSyBkaXZpZGVkIGJ5IDY0ICovDQojZGVmaW5lIFJDQ19DRkdSX0hQUkVfRElWMTI4ICAgICAgICAgICAgICAgICgweDAwMDAwMEQwVSkgICAgICAgICAgICAgICAgICAgICAgLyohPCBTWVNDTEsgZGl2aWRlZCBieSAxMjggKi8NCiNkZWZpbmUgUkNDX0NGR1JfSFBSRV9ESVYyNTYgICAgICAgICAgICAgICAgKDB4MDAwMDAwRTBVKSAgICAgICAgICAgICAgICAgICAgICAvKiE8IFNZU0NMSyBkaXZpZGVkIGJ5IDI1NiAqLw0KI2RlZmluZSBSQ0NfQ0ZHUl9IUFJFX0RJVjUxMiAgICAgICAgICAgICAgICAoMHgwMDAwMDBGMFUpICAgICAgICAgICAgICAgICAgICAgIC8qITwgU1lTQ0xLIGRpdmlkZWQgYnkgNTEyICovDQoNCiNkZWZpbmUgUkNDX0NGR1JfUFBSRTFfUG9zICAgICAgICAgICAgICAgICAgKDhVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0NGR1JfUFBSRTFfTXNrICAgICAgICAgICAgICAgICAgKDB4N1VMIDw8IFJDQ19DRkdSX1BQUkUxX1BvcykgICAgICAgLyohPCAweDAwMDAwNzAwICovDQojZGVmaW5lIFJDQ19DRkdSX1BQUkUxICAgICAgICAgICAgICAgICAgICAgIFJDQ19DRkdSX1BQUkUxX01zayAgICAgICAgICAgICAgICAgLyohPCBQUkUxWzI6MF0gYml0cyAoQVBCMSBwcmVzY2FsZXIpICovDQojZGVmaW5lIFJDQ19DRkdSX1BQUkUxXzAgICAgICAgICAgICAgICAgICAgICgweDFVTCA8PCBSQ0NfQ0ZHUl9QUFJFMV9Qb3MpICAgICAgIC8qITwgMHgwMDAwMDEwMCAqLw0KI2RlZmluZSBSQ0NfQ0ZHUl9QUFJFMV8xICAgICAgICAgICAgICAgICAgICAoMHgyVUwgPDwgUkNDX0NGR1JfUFBSRTFfUG9zKSAgICAgICAvKiE8IDB4MDAwMDAyMDAgKi8NCiNkZWZpbmUgUkNDX0NGR1JfUFBSRTFfMiAgICAgICAgICAgICAgICAgICAgKDB4NFVMIDw8IFJDQ19DRkdSX1BQUkUxX1BvcykgICAgICAgLyohPCAweDAwMDAwNDAwICovDQoNCi8qITwgUFBSRTEgY29uZmlndXJhdGlvbiAqLw0KI2RlZmluZSBSQ0NfQ0ZHUl9QUFJFMV9ESVYxICAgICAgICAgICAgICAgICAoMHgwMDAwMDAwMFUpICAgICAgICAgICAgICAgICAgICAgIC8qITwgSENMSyBub3QgZGl2aWRlZCAqLw0KI2RlZmluZSBSQ0NfQ0ZHUl9QUFJFMV9ESVYyICAgICAgICAgICAgICAgICAoMHgwMDAwMDQwMFUpICAgICAgICAgICAgICAgICAgICAgIC8qITwgSENMSyBkaXZpZGVkIGJ5IDIgKi8NCiNkZWZpbmUgUkNDX0NGR1JfUFBSRTFfRElWNCAgICAgICAgICAgICAgICAgKDB4MDAwMDA1MDBVKSAgICAgICAgICAgICAgICAgICAgICAvKiE8IEhDTEsgZGl2aWRlZCBieSA0ICovDQojZGVmaW5lIFJDQ19DRkdSX1BQUkUxX0RJVjggICAgICAgICAgICAgICAgICgweDAwMDAwNjAwVSkgICAgICAgICAgICAgICAgICAgICAgLyohPCBIQ0xLIGRpdmlkZWQgYnkgOCAqLw0KI2RlZmluZSBSQ0NfQ0ZHUl9QUFJFMV9ESVYxNiAgICAgICAgICAgICAgICAoMHgwMDAwMDcwMFUpICAgICAgICAgICAgICAgICAgICAgIC8qITwgSENMSyBkaXZpZGVkIGJ5IDE2ICovDQoNCiNkZWZpbmUgUkNDX0NGR1JfUFBSRTJfUG9zICAgICAgICAgICAgICAgICAgKDExVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0NGR1JfUFBSRTJfTXNrICAgICAgICAgICAgICAgICAgKDB4N1VMIDw8IFJDQ19DRkdSX1BQUkUyX1BvcykgICAgICAgLyohPCAweDAwMDAzODAwICovDQojZGVmaW5lIFJDQ19DRkdSX1BQUkUyICAgICAgICAgICAgICAgICAgICAgIFJDQ19DRkdSX1BQUkUyX01zayAgICAgICAgICAgICAgICAgLyohPCBQUkUyWzI6MF0gYml0cyAoQVBCMiBwcmVzY2FsZXIpICovDQojZGVmaW5lIFJDQ19DRkdSX1BQUkUyXzAgICAgICAgICAgICAgICAgICAgICgweDFVTCA8PCBSQ0NfQ0ZHUl9QUFJFMl9Qb3MpICAgICAgIC8qITwgMHgwMDAwMDgwMCAqLw0KI2RlZmluZSBSQ0NfQ0ZHUl9QUFJFMl8xICAgICAgICAgICAgICAgICAgICAoMHgyVUwgPDwgUkNDX0NGR1JfUFBSRTJfUG9zKSAgICAgICAvKiE8IDB4MDAwMDEwMDAgKi8NCiNkZWZpbmUgUkNDX0NGR1JfUFBSRTJfMiAgICAgICAgICAgICAgICAgICAgKDB4NFVMIDw8IFJDQ19DRkdSX1BQUkUyX1BvcykgICAgICAgLyohPCAweDAwMDAyMDAwICovDQoNCi8qITwgUFBSRTIgY29uZmlndXJhdGlvbiAqLw0KI2RlZmluZSBSQ0NfQ0ZHUl9QUFJFMl9ESVYxICAgICAgICAgICAgICAgICAoMHgwMDAwMDAwMFUpICAgICAgICAgICAgICAgICAgICAgIC8qITwgSENMSyBub3QgZGl2aWRlZCAqLw0KI2RlZmluZSBSQ0NfQ0ZHUl9QUFJFMl9ESVYyICAgICAgICAgICAgICAgICAoMHgwMDAwMjAwMFUpICAgICAgICAgICAgICAgICAgICAgIC8qITwgSENMSyBkaXZpZGVkIGJ5IDIgKi8NCiNkZWZpbmUgUkNDX0NGR1JfUFBSRTJfRElWNCAgICAgICAgICAgICAgICAgKDB4MDAwMDI4MDBVKSAgICAgICAgICAgICAgICAgICAgICAvKiE8IEhDTEsgZGl2aWRlZCBieSA0ICovDQojZGVmaW5lIFJDQ19DRkdSX1BQUkUyX0RJVjggICAgICAgICAgICAgICAgICgweDAwMDAzMDAwVSkgICAgICAgICAgICAgICAgICAgICAgLyohPCBIQ0xLIGRpdmlkZWQgYnkgOCAqLw0KI2RlZmluZSBSQ0NfQ0ZHUl9QUFJFMl9ESVYxNiAgICAgICAgICAgICAgICAoMHgwMDAwMzgwMFUpICAgICAgICAgICAgICAgICAgICAgIC8qITwgSENMSyBkaXZpZGVkIGJ5IDE2ICovDQoNCi8qITwgUExMIGVudHJ5IGNsb2NrIHNvdXJjZSovDQojZGVmaW5lIFJDQ19DRkdSX1BMTFNSQ19Qb3MgICAgICAgICAgICAgICAgICgxNlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19DRkdSX1BMTFNSQ19Nc2sgICAgICAgICAgICAgICAgICgweDFVTCA8PCBSQ0NfQ0ZHUl9QTExTUkNfUG9zKSAgICAgIC8qITwgMHgwMDAxMDAwMCAqLw0KI2RlZmluZSBSQ0NfQ0ZHUl9QTExTUkMgICAgICAgICAgICAgICAgICAgICBSQ0NfQ0ZHUl9QTExTUkNfTXNrICAgICAgICAgICAgICAgIC8qITwgUExMIGVudHJ5IGNsb2NrIHNvdXJjZSAqLw0KDQojZGVmaW5lIFJDQ19DRkdSX1BMTFNSQ19IU0kgICAgICAgICAgICAgICAgICgweDAwMDAwMDAwVSkgICAgICAgICAgICAgICAgICAgICAgLyohPCBIU0kgYXMgUExMIGVudHJ5IGNsb2NrIHNvdXJjZSAqLw0KI2RlZmluZSBSQ0NfQ0ZHUl9QTExTUkNfSFNFICAgICAgICAgICAgICAgICAoMHgwMDAxMDAwMFUpICAgICAgICAgICAgICAgICAgICAgIC8qITwgSFNFIGFzIFBMTCBlbnRyeSBjbG9jayBzb3VyY2UgKi8NCg0KDQovKiE8IFBMTE1VTCBjb25maWd1cmF0aW9uICovDQojZGVmaW5lIFJDQ19DRkdSX1BMTE1VTF9Qb3MgICAgICAgICAgICAgICAgICgxOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19DRkdSX1BMTE1VTF9Nc2sgICAgICAgICAgICAgICAgICgweEZVTCA8PCBSQ0NfQ0ZHUl9QTExNVUxfUG9zKSAgICAgIC8qITwgMHgwMDNDMDAwMCAqLw0KI2RlZmluZSBSQ0NfQ0ZHUl9QTExNVUwgICAgICAgICAgICAgICAgICAgICBSQ0NfQ0ZHUl9QTExNVUxfTXNrICAgICAgICAgICAgICAgIC8qITwgUExMTVVMWzM6MF0gYml0cyAoUExMIG11bHRpcGxpY2F0aW9uIGZhY3RvcikgKi8NCiNkZWZpbmUgUkNDX0NGR1JfUExMTVVMXzAgICAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IFJDQ19DRkdSX1BMTE1VTF9Qb3MpICAgICAgLyohPCAweDAwMDQwMDAwICovDQojZGVmaW5lIFJDQ19DRkdSX1BMTE1VTF8xICAgICAgICAgICAgICAgICAgICgweDJVTCA8PCBSQ0NfQ0ZHUl9QTExNVUxfUG9zKSAgICAgIC8qITwgMHgwMDA4MDAwMCAqLw0KI2RlZmluZSBSQ0NfQ0ZHUl9QTExNVUxfMiAgICAgICAgICAgICAgICAgICAoMHg0VUwgPDwgUkNDX0NGR1JfUExMTVVMX1BvcykgICAgICAvKiE8IDB4MDAxMDAwMDAgKi8NCiNkZWZpbmUgUkNDX0NGR1JfUExMTVVMXzMgICAgICAgICAgICAgICAgICAgKDB4OFVMIDw8IFJDQ19DRkdSX1BMTE1VTF9Qb3MpICAgICAgLyohPCAweDAwMjAwMDAwICovDQoNCi8qITwgUExMTVVMIGNvbmZpZ3VyYXRpb24gKi8NCiNkZWZpbmUgUkNDX0NGR1JfUExMTVVMMyAgICAgICAgICAgICAgICAgICAgKDB4MDAwMDAwMDBVKSAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBMTCBpbnB1dCBjbG9jayAqIDMgKi8NCiNkZWZpbmUgUkNDX0NGR1JfUExMTVVMNCAgICAgICAgICAgICAgICAgICAgKDB4MDAwNDAwMDBVKSAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBMTCBpbnB1dCBjbG9jayAqIDQgKi8NCiNkZWZpbmUgUkNDX0NGR1JfUExMTVVMNiAgICAgICAgICAgICAgICAgICAgKDB4MDAwODAwMDBVKSAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBMTCBpbnB1dCBjbG9jayAqIDYgKi8NCiNkZWZpbmUgUkNDX0NGR1JfUExMTVVMOCAgICAgICAgICAgICAgICAgICAgKDB4MDAwQzAwMDBVKSAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBMTCBpbnB1dCBjbG9jayAqIDggKi8NCiNkZWZpbmUgUkNDX0NGR1JfUExMTVVMMTIgICAgICAgICAgICAgICAgICAgKDB4MDAxMDAwMDBVKSAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBMTCBpbnB1dCBjbG9jayAqIDEyICovDQojZGVmaW5lIFJDQ19DRkdSX1BMTE1VTDE2ICAgICAgICAgICAgICAgICAgICgweDAwMTQwMDAwVSkgICAgICAgICAgICAgICAgICAgICAgLyohPCBQTEwgaW5wdXQgY2xvY2sgKiAxNiAqLw0KI2RlZmluZSBSQ0NfQ0ZHUl9QTExNVUwyNCAgICAgICAgICAgICAgICAgICAoMHgwMDE4MDAwMFUpICAgICAgICAgICAgICAgICAgICAgIC8qITwgUExMIGlucHV0IGNsb2NrICogMjQgKi8NCiNkZWZpbmUgUkNDX0NGR1JfUExMTVVMMzIgICAgICAgICAgICAgICAgICAgKDB4MDAxQzAwMDBVKSAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBMTCBpbnB1dCBjbG9jayAqIDMyICovDQojZGVmaW5lIFJDQ19DRkdSX1BMTE1VTDQ4ICAgICAgICAgICAgICAgICAgICgweDAwMjAwMDAwVSkgICAgICAgICAgICAgICAgICAgICAgLyohPCBQTEwgaW5wdXQgY2xvY2sgKiA0OCAqLw0KDQovKiE8IFBMTERJViBjb25maWd1cmF0aW9uICovDQojZGVmaW5lIFJDQ19DRkdSX1BMTERJVl9Qb3MgICAgICAgICAgICAgICAgICgyMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19DRkdSX1BMTERJVl9Nc2sgICAgICAgICAgICAgICAgICgweDNVTCA8PCBSQ0NfQ0ZHUl9QTExESVZfUG9zKSAgICAgIC8qITwgMHgwMEMwMDAwMCAqLw0KI2RlZmluZSBSQ0NfQ0ZHUl9QTExESVYgICAgICAgICAgICAgICAgICAgICBSQ0NfQ0ZHUl9QTExESVZfTXNrICAgICAgICAgICAgICAgIC8qITwgUExMRElWWzE6MF0gYml0cyAoUExMIE91dHB1dCBEaXZpc2lvbikgKi8NCiNkZWZpbmUgUkNDX0NGR1JfUExMRElWXzAgICAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IFJDQ19DRkdSX1BMTERJVl9Qb3MpICAgICAgLyohPCAweDAwNDAwMDAwICovDQojZGVmaW5lIFJDQ19DRkdSX1BMTERJVl8xICAgICAgICAgICAgICAgICAgICgweDJVTCA8PCBSQ0NfQ0ZHUl9QTExESVZfUG9zKSAgICAgIC8qITwgMHgwMDgwMDAwMCAqLw0KDQoNCi8qITwgUExMRElWIGNvbmZpZ3VyYXRpb24gKi8NCiNkZWZpbmUgUkNDX0NGR1JfUExMRElWMSAgICAgICAgICAgICAgICAgICAgKDB4MDAwMDAwMDBVKSAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBMTCBjbG9jayBvdXRwdXQgPSBDS1ZDTyAvIDEgKi8NCiNkZWZpbmUgUkNDX0NGR1JfUExMRElWMl9Qb3MgICAgICAgICAgICAgICAgKDIyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0NGR1JfUExMRElWMl9Nc2sgICAgICAgICAgICAgICAgKDB4MVVMIDw8IFJDQ19DRkdSX1BMTERJVjJfUG9zKSAgICAgLyohPCAweDAwNDAwMDAwICovDQojZGVmaW5lIFJDQ19DRkdSX1BMTERJVjIgICAgICAgICAgICAgICAgICAgIFJDQ19DRkdSX1BMTERJVjJfTXNrICAgICAgICAgICAgICAgLyohPCBQTEwgY2xvY2sgb3V0cHV0ID0gQ0tWQ08gLyAyICovDQojZGVmaW5lIFJDQ19DRkdSX1BMTERJVjNfUG9zICAgICAgICAgICAgICAgICgyM1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19DRkdSX1BMTERJVjNfTXNrICAgICAgICAgICAgICAgICgweDFVTCA8PCBSQ0NfQ0ZHUl9QTExESVYzX1BvcykgICAgIC8qITwgMHgwMDgwMDAwMCAqLw0KI2RlZmluZSBSQ0NfQ0ZHUl9QTExESVYzICAgICAgICAgICAgICAgICAgICBSQ0NfQ0ZHUl9QTExESVYzX01zayAgICAgICAgICAgICAgIC8qITwgUExMIGNsb2NrIG91dHB1dCA9IENLVkNPIC8gMyAqLw0KI2RlZmluZSBSQ0NfQ0ZHUl9QTExESVY0X1BvcyAgICAgICAgICAgICAgICAoMjJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQ0ZHUl9QTExESVY0X01zayAgICAgICAgICAgICAgICAoMHgzVUwgPDwgUkNDX0NGR1JfUExMRElWNF9Qb3MpICAgICAvKiE8IDB4MDBDMDAwMDAgKi8NCiNkZWZpbmUgUkNDX0NGR1JfUExMRElWNCAgICAgICAgICAgICAgICAgICAgUkNDX0NGR1JfUExMRElWNF9Nc2sgICAgICAgICAgICAgICAvKiE8IFBMTCBjbG9jayBvdXRwdXQgPSBDS1ZDTyAvIDQgKi8NCg0KDQojZGVmaW5lIFJDQ19DRkdSX01DT1NFTF9Qb3MgICAgICAgICAgICAgICAgICgyNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19DRkdSX01DT1NFTF9Nc2sgICAgICAgICAgICAgICAgICgweDdVTCA8PCBSQ0NfQ0ZHUl9NQ09TRUxfUG9zKSAgICAgIC8qITwgMHgwNzAwMDAwMCAqLw0KI2RlZmluZSBSQ0NfQ0ZHUl9NQ09TRUwgICAgICAgICAgICAgICAgICAgICBSQ0NfQ0ZHUl9NQ09TRUxfTXNrICAgICAgICAgICAgICAgIC8qITwgTUNPWzI6MF0gYml0cyAoTWljcm9jb250cm9sbGVyIENsb2NrIE91dHB1dCkgKi8NCiNkZWZpbmUgUkNDX0NGR1JfTUNPU0VMXzAgICAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IFJDQ19DRkdSX01DT1NFTF9Qb3MpICAgICAgLyohPCAweDAxMDAwMDAwICovDQojZGVmaW5lIFJDQ19DRkdSX01DT1NFTF8xICAgICAgICAgICAgICAgICAgICgweDJVTCA8PCBSQ0NfQ0ZHUl9NQ09TRUxfUG9zKSAgICAgIC8qITwgMHgwMjAwMDAwMCAqLw0KI2RlZmluZSBSQ0NfQ0ZHUl9NQ09TRUxfMiAgICAgICAgICAgICAgICAgICAoMHg0VUwgPDwgUkNDX0NGR1JfTUNPU0VMX1BvcykgICAgICAvKiE8IDB4MDQwMDAwMDAgKi8NCg0KLyohPCBNQ08gY29uZmlndXJhdGlvbiAqLw0KI2RlZmluZSBSQ0NfQ0ZHUl9NQ09TRUxfTk9DTE9DSyAgICAgICAgICAgICAoMHgwMDAwMDAwMFUpICAgICAgICAgICAgICAgICAgICAgIC8qITwgTm8gY2xvY2sgKi8NCiNkZWZpbmUgUkNDX0NGR1JfTUNPU0VMX1NZU0NMS19Qb3MgICAgICAgICAgKDI0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0NGR1JfTUNPU0VMX1NZU0NMS19Nc2sgICAgICAgICAgKDB4MVVMIDw8IFJDQ19DRkdSX01DT1NFTF9TWVNDTEtfUG9zKSAvKiE8IDB4MDEwMDAwMDAgKi8NCiNkZWZpbmUgUkNDX0NGR1JfTUNPU0VMX1NZU0NMSyAgICAgICAgICAgICAgUkNDX0NGR1JfTUNPU0VMX1NZU0NMS19Nc2sgICAgICAgICAvKiE8IFN5c3RlbSBjbG9jayBzZWxlY3RlZCAqLw0KI2RlZmluZSBSQ0NfQ0ZHUl9NQ09TRUxfSFNJX1BvcyAgICAgICAgICAgICAoMjVVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQ0ZHUl9NQ09TRUxfSFNJX01zayAgICAgICAgICAgICAoMHgxVUwgPDwgUkNDX0NGR1JfTUNPU0VMX0hTSV9Qb3MpICAvKiE8IDB4MDIwMDAwMDAgKi8NCiNkZWZpbmUgUkNDX0NGR1JfTUNPU0VMX0hTSSAgICAgICAgICAgICAgICAgUkNDX0NGR1JfTUNPU0VMX0hTSV9Nc2sgICAgICAgICAgICAvKiE8IEludGVybmFsIDE2IE1IeiBSQyBvc2NpbGxhdG9yIGNsb2NrIHNlbGVjdGVkICovDQojZGVmaW5lIFJDQ19DRkdSX01DT1NFTF9NU0lfUG9zICAgICAgICAgICAgICgyNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19DRkdSX01DT1NFTF9NU0lfTXNrICAgICAgICAgICAgICgweDNVTCA8PCBSQ0NfQ0ZHUl9NQ09TRUxfTVNJX1BvcykgIC8qITwgMHgwMzAwMDAwMCAqLw0KI2RlZmluZSBSQ0NfQ0ZHUl9NQ09TRUxfTVNJICAgICAgICAgICAgICAgICBSQ0NfQ0ZHUl9NQ09TRUxfTVNJX01zayAgICAgICAgICAgIC8qITwgSW50ZXJuYWwgTWVkaXVtIFNwZWVkIFJDIG9zY2lsbGF0b3IgY2xvY2sgc2VsZWN0ZWQgKi8NCiNkZWZpbmUgUkNDX0NGR1JfTUNPU0VMX0hTRV9Qb3MgICAgICAgICAgICAgKDI2VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0NGR1JfTUNPU0VMX0hTRV9Nc2sgICAgICAgICAgICAgKDB4MVVMIDw8IFJDQ19DRkdSX01DT1NFTF9IU0VfUG9zKSAgLyohPCAweDA0MDAwMDAwICovDQojZGVmaW5lIFJDQ19DRkdSX01DT1NFTF9IU0UgICAgICAgICAgICAgICAgIFJDQ19DRkdSX01DT1NFTF9IU0VfTXNrICAgICAgICAgICAgLyohPCBFeHRlcm5hbCAxLTI1IE1IeiBvc2NpbGxhdG9yIGNsb2NrIHNlbGVjdGVkICovDQojZGVmaW5lIFJDQ19DRkdSX01DT1NFTF9QTExfUG9zICAgICAgICAgICAgICgyNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19DRkdSX01DT1NFTF9QTExfTXNrICAgICAgICAgICAgICgweDVVTCA8PCBSQ0NfQ0ZHUl9NQ09TRUxfUExMX1BvcykgIC8qITwgMHgwNTAwMDAwMCAqLw0KI2RlZmluZSBSQ0NfQ0ZHUl9NQ09TRUxfUExMICAgICAgICAgICAgICAgICBSQ0NfQ0ZHUl9NQ09TRUxfUExMX01zayAgICAgICAgICAgIC8qITwgUExMIGNsb2NrIGRpdmlkZWQgKi8NCiNkZWZpbmUgUkNDX0NGR1JfTUNPU0VMX0xTSV9Qb3MgICAgICAgICAgICAgKDI1VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0NGR1JfTUNPU0VMX0xTSV9Nc2sgICAgICAgICAgICAgKDB4M1VMIDw8IFJDQ19DRkdSX01DT1NFTF9MU0lfUG9zKSAgLyohPCAweDA2MDAwMDAwICovDQojZGVmaW5lIFJDQ19DRkdSX01DT1NFTF9MU0kgICAgICAgICAgICAgICAgIFJDQ19DRkdSX01DT1NFTF9MU0lfTXNrICAgICAgICAgICAgLyohPCBMU0kgc2VsZWN0ZWQgKi8NCiNkZWZpbmUgUkNDX0NGR1JfTUNPU0VMX0xTRV9Qb3MgICAgICAgICAgICAgKDI0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0NGR1JfTUNPU0VMX0xTRV9Nc2sgICAgICAgICAgICAgKDB4N1VMIDw8IFJDQ19DRkdSX01DT1NFTF9MU0VfUG9zKSAgLyohPCAweDA3MDAwMDAwICovDQojZGVmaW5lIFJDQ19DRkdSX01DT1NFTF9MU0UgICAgICAgICAgICAgICAgIFJDQ19DRkdSX01DT1NFTF9MU0VfTXNrICAgICAgICAgICAgLyohPCBMU0Ugc2VsZWN0ZWQgKi8NCg0KI2RlZmluZSBSQ0NfQ0ZHUl9NQ09QUkVfUG9zICAgICAgICAgICAgICAgICAoMjhVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQ0ZHUl9NQ09QUkVfTXNrICAgICAgICAgICAgICAgICAoMHg3VUwgPDwgUkNDX0NGR1JfTUNPUFJFX1BvcykgICAgICAvKiE8IDB4NzAwMDAwMDAgKi8NCiNkZWZpbmUgUkNDX0NGR1JfTUNPUFJFICAgICAgICAgICAgICAgICAgICAgUkNDX0NGR1JfTUNPUFJFX01zayAgICAgICAgICAgICAgICAvKiE8IE1DT1BSRVsyOjBdIGJpdHMgKE1pY3JvY29udHJvbGxlciBDbG9jayBPdXRwdXQgUHJlc2NhbGVyKSAqLw0KI2RlZmluZSBSQ0NfQ0ZHUl9NQ09QUkVfMCAgICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgUkNDX0NGR1JfTUNPUFJFX1BvcykgICAgICAvKiE8IDB4MTAwMDAwMDAgKi8NCiNkZWZpbmUgUkNDX0NGR1JfTUNPUFJFXzEgICAgICAgICAgICAgICAgICAgKDB4MlVMIDw8IFJDQ19DRkdSX01DT1BSRV9Qb3MpICAgICAgLyohPCAweDIwMDAwMDAwICovDQojZGVmaW5lIFJDQ19DRkdSX01DT1BSRV8yICAgICAgICAgICAgICAgICAgICgweDRVTCA8PCBSQ0NfQ0ZHUl9NQ09QUkVfUG9zKSAgICAgIC8qITwgMHg0MDAwMDAwMCAqLw0KDQovKiE8IE1DTyBQcmVzY2FsZXIgY29uZmlndXJhdGlvbiAqLyANCiNkZWZpbmUgUkNDX0NGR1JfTUNPUFJFX0RJVjEgICAgICAgICAgICAgICAgKDB4MDAwMDAwMDBVKSAgICAgICAgICAgICAgICAgICAgICAvKiE8IE1DTyBpcyBkaXZpZGVkIGJ5IDEgKi8NCiNkZWZpbmUgUkNDX0NGR1JfTUNPUFJFX0RJVjIgICAgICAgICAgICAgICAgKDB4MTAwMDAwMDBVKSAgICAgICAgICAgICAgICAgICAgICAvKiE8IE1DTyBpcyBkaXZpZGVkIGJ5IDIgKi8NCiNkZWZpbmUgUkNDX0NGR1JfTUNPUFJFX0RJVjQgICAgICAgICAgICAgICAgKDB4MjAwMDAwMDBVKSAgICAgICAgICAgICAgICAgICAgICAvKiE8IE1DTyBpcyBkaXZpZGVkIGJ5IDQgKi8NCiNkZWZpbmUgUkNDX0NGR1JfTUNPUFJFX0RJVjggICAgICAgICAgICAgICAgKDB4MzAwMDAwMDBVKSAgICAgICAgICAgICAgICAgICAgICAvKiE8IE1DTyBpcyBkaXZpZGVkIGJ5IDggKi8NCiNkZWZpbmUgUkNDX0NGR1JfTUNPUFJFX0RJVjE2ICAgICAgICAgICAgICAgKDB4NDAwMDAwMDBVKSAgICAgICAgICAgICAgICAgICAgICAvKiE8IE1DTyBpcyBkaXZpZGVkIGJ5IDE2ICovDQogDQovKiBMZWdhY3kgYWxpYXNlcyAqLw0KI2RlZmluZSAgUkNDX0NGR1JfTUNPX0RJVjEgICAgICAgICAgICAgICAgICBSQ0NfQ0ZHUl9NQ09QUkVfRElWMQ0KI2RlZmluZSAgUkNDX0NGR1JfTUNPX0RJVjIgICAgICAgICAgICAgICAgICBSQ0NfQ0ZHUl9NQ09QUkVfRElWMg0KI2RlZmluZSAgUkNDX0NGR1JfTUNPX0RJVjQgICAgICAgICAgICAgICAgICBSQ0NfQ0ZHUl9NQ09QUkVfRElWNA0KI2RlZmluZSAgUkNDX0NGR1JfTUNPX0RJVjggICAgICAgICAgICAgICAgICBSQ0NfQ0ZHUl9NQ09QUkVfRElWOA0KI2RlZmluZSAgUkNDX0NGR1JfTUNPX0RJVjE2ICAgICAgICAgICAgICAgICBSQ0NfQ0ZHUl9NQ09QUkVfRElWMTYNCiNkZWZpbmUgIFJDQ19DRkdSX01DT19OT0NMT0NLICAgICAgICAgICAgICAgUkNDX0NGR1JfTUNPU0VMX05PQ0xPQ0sNCiNkZWZpbmUgIFJDQ19DRkdSX01DT19TWVNDTEsgICAgICAgICAgICAgICAgUkNDX0NGR1JfTUNPU0VMX1NZU0NMSw0KI2RlZmluZSAgUkNDX0NGR1JfTUNPX0hTSSAgICAgICAgICAgICAgICAgICBSQ0NfQ0ZHUl9NQ09TRUxfSFNJDQojZGVmaW5lICBSQ0NfQ0ZHUl9NQ09fTVNJICAgICAgICAgICAgICAgICAgIFJDQ19DRkdSX01DT1NFTF9NU0kNCiNkZWZpbmUgIFJDQ19DRkdSX01DT19IU0UgICAgICAgICAgICAgICAgICAgUkNDX0NGR1JfTUNPU0VMX0hTRQ0KI2RlZmluZSAgUkNDX0NGR1JfTUNPX1BMTCAgICAgICAgICAgICAgICAgICBSQ0NfQ0ZHUl9NQ09TRUxfUExMDQojZGVmaW5lICBSQ0NfQ0ZHUl9NQ09fTFNJICAgICAgICAgICAgICAgICAgIFJDQ19DRkdSX01DT1NFTF9MU0kNCiNkZWZpbmUgIFJDQ19DRkdSX01DT19MU0UgICAgICAgICAgICAgICAgICAgUkNDX0NGR1JfTUNPU0VMX0xTRQ0KDQovKiE8KioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgUkNDX0NJUiByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIFJDQ19DSVJfTFNJUkRZRl9Qb3MgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19DSVJfTFNJUkRZRl9Nc2sgICAgICAgICAgICAgICAgICgweDFVTCA8PCBSQ0NfQ0lSX0xTSVJEWUZfUG9zKSAgICAgIC8qITwgMHgwMDAwMDAwMSAqLw0KI2RlZmluZSBSQ0NfQ0lSX0xTSVJEWUYgICAgICAgICAgICAgICAgICAgICBSQ0NfQ0lSX0xTSVJEWUZfTXNrICAgICAgICAgICAgICAgIC8qITwgTFNJIFJlYWR5IEludGVycnVwdCBmbGFnICovDQojZGVmaW5lIFJDQ19DSVJfTFNFUkRZRl9Qb3MgICAgICAgICAgICAgICAgICgxVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19DSVJfTFNFUkRZRl9Nc2sgICAgICAgICAgICAgICAgICgweDFVTCA8PCBSQ0NfQ0lSX0xTRVJEWUZfUG9zKSAgICAgIC8qITwgMHgwMDAwMDAwMiAqLw0KI2RlZmluZSBSQ0NfQ0lSX0xTRVJEWUYgICAgICAgICAgICAgICAgICAgICBSQ0NfQ0lSX0xTRVJEWUZfTXNrICAgICAgICAgICAgICAgIC8qITwgTFNFIFJlYWR5IEludGVycnVwdCBmbGFnICovDQojZGVmaW5lIFJDQ19DSVJfSFNJUkRZRl9Qb3MgICAgICAgICAgICAgICAgICgyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19DSVJfSFNJUkRZRl9Nc2sgICAgICAgICAgICAgICAgICgweDFVTCA8PCBSQ0NfQ0lSX0hTSVJEWUZfUG9zKSAgICAgIC8qITwgMHgwMDAwMDAwNCAqLw0KI2RlZmluZSBSQ0NfQ0lSX0hTSVJEWUYgICAgICAgICAgICAgICAgICAgICBSQ0NfQ0lSX0hTSVJEWUZfTXNrICAgICAgICAgICAgICAgIC8qITwgSFNJIFJlYWR5IEludGVycnVwdCBmbGFnICovDQojZGVmaW5lIFJDQ19DSVJfSFNFUkRZRl9Qb3MgICAgICAgICAgICAgICAgICgzVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19DSVJfSFNFUkRZRl9Nc2sgICAgICAgICAgICAgICAgICgweDFVTCA8PCBSQ0NfQ0lSX0hTRVJEWUZfUG9zKSAgICAgIC8qITwgMHgwMDAwMDAwOCAqLw0KI2RlZmluZSBSQ0NfQ0lSX0hTRVJEWUYgICAgICAgICAgICAgICAgICAgICBSQ0NfQ0lSX0hTRVJEWUZfTXNrICAgICAgICAgICAgICAgIC8qITwgSFNFIFJlYWR5IEludGVycnVwdCBmbGFnICovDQojZGVmaW5lIFJDQ19DSVJfUExMUkRZRl9Qb3MgICAgICAgICAgICAgICAgICg0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19DSVJfUExMUkRZRl9Nc2sgICAgICAgICAgICAgICAgICgweDFVTCA8PCBSQ0NfQ0lSX1BMTFJEWUZfUG9zKSAgICAgIC8qITwgMHgwMDAwMDAxMCAqLw0KI2RlZmluZSBSQ0NfQ0lSX1BMTFJEWUYgICAgICAgICAgICAgICAgICAgICBSQ0NfQ0lSX1BMTFJEWUZfTXNrICAgICAgICAgICAgICAgIC8qITwgUExMIFJlYWR5IEludGVycnVwdCBmbGFnICovDQojZGVmaW5lIFJDQ19DSVJfTVNJUkRZRl9Qb3MgICAgICAgICAgICAgICAgICg1VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19DSVJfTVNJUkRZRl9Nc2sgICAgICAgICAgICAgICAgICgweDFVTCA8PCBSQ0NfQ0lSX01TSVJEWUZfUG9zKSAgICAgIC8qITwgMHgwMDAwMDAyMCAqLw0KI2RlZmluZSBSQ0NfQ0lSX01TSVJEWUYgICAgICAgICAgICAgICAgICAgICBSQ0NfQ0lSX01TSVJEWUZfTXNrICAgICAgICAgICAgICAgIC8qITwgTVNJIFJlYWR5IEludGVycnVwdCBmbGFnICovDQojZGVmaW5lIFJDQ19DSVJfTFNFQ1NTRl9Qb3MgICAgICAgICAgICAgICAgICg2VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19DSVJfTFNFQ1NTRl9Nc2sgICAgICAgICAgICAgICAgICgweDFVTCA8PCBSQ0NfQ0lSX0xTRUNTU0ZfUG9zKSAgICAgIC8qITwgMHgwMDAwMDA0MCAqLw0KI2RlZmluZSBSQ0NfQ0lSX0xTRUNTU0YgICAgICAgICAgICAgICAgICAgICBSQ0NfQ0lSX0xTRUNTU0ZfTXNrICAgICAgICAgICAgICAgIC8qITwgTFNFIENTUyBJbnRlcnJ1cHQgZmxhZyAqLw0KI2RlZmluZSBSQ0NfQ0lSX0NTU0ZfUG9zICAgICAgICAgICAgICAgICAgICAoN1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQ0lSX0NTU0ZfTXNrICAgICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgUkNDX0NJUl9DU1NGX1BvcykgICAgICAgICAvKiE8IDB4MDAwMDAwODAgKi8NCiNkZWZpbmUgUkNDX0NJUl9DU1NGICAgICAgICAgICAgICAgICAgICAgICAgUkNDX0NJUl9DU1NGX01zayAgICAgICAgICAgICAgICAgICAvKiE8IENsb2NrIFNlY3VyaXR5IFN5c3RlbSBJbnRlcnJ1cHQgZmxhZyAqLw0KDQojZGVmaW5lIFJDQ19DSVJfTFNJUkRZSUVfUG9zICAgICAgICAgICAgICAgICg4VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19DSVJfTFNJUkRZSUVfTXNrICAgICAgICAgICAgICAgICgweDFVTCA8PCBSQ0NfQ0lSX0xTSVJEWUlFX1BvcykgICAgIC8qITwgMHgwMDAwMDEwMCAqLw0KI2RlZmluZSBSQ0NfQ0lSX0xTSVJEWUlFICAgICAgICAgICAgICAgICAgICBSQ0NfQ0lSX0xTSVJEWUlFX01zayAgICAgICAgICAgICAgIC8qITwgTFNJIFJlYWR5IEludGVycnVwdCBFbmFibGUgKi8NCiNkZWZpbmUgUkNDX0NJUl9MU0VSRFlJRV9Qb3MgICAgICAgICAgICAgICAgKDlVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0NJUl9MU0VSRFlJRV9Nc2sgICAgICAgICAgICAgICAgKDB4MVVMIDw8IFJDQ19DSVJfTFNFUkRZSUVfUG9zKSAgICAgLyohPCAweDAwMDAwMjAwICovDQojZGVmaW5lIFJDQ19DSVJfTFNFUkRZSUUgICAgICAgICAgICAgICAgICAgIFJDQ19DSVJfTFNFUkRZSUVfTXNrICAgICAgICAgICAgICAgLyohPCBMU0UgUmVhZHkgSW50ZXJydXB0IEVuYWJsZSAqLw0KI2RlZmluZSBSQ0NfQ0lSX0hTSVJEWUlFX1BvcyAgICAgICAgICAgICAgICAoMTBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQ0lSX0hTSVJEWUlFX01zayAgICAgICAgICAgICAgICAoMHgxVUwgPDwgUkNDX0NJUl9IU0lSRFlJRV9Qb3MpICAgICAvKiE8IDB4MDAwMDA0MDAgKi8NCiNkZWZpbmUgUkNDX0NJUl9IU0lSRFlJRSAgICAgICAgICAgICAgICAgICAgUkNDX0NJUl9IU0lSRFlJRV9Nc2sgICAgICAgICAgICAgICAvKiE8IEhTSSBSZWFkeSBJbnRlcnJ1cHQgRW5hYmxlICovDQojZGVmaW5lIFJDQ19DSVJfSFNFUkRZSUVfUG9zICAgICAgICAgICAgICAgICgxMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19DSVJfSFNFUkRZSUVfTXNrICAgICAgICAgICAgICAgICgweDFVTCA8PCBSQ0NfQ0lSX0hTRVJEWUlFX1BvcykgICAgIC8qITwgMHgwMDAwMDgwMCAqLw0KI2RlZmluZSBSQ0NfQ0lSX0hTRVJEWUlFICAgICAgICAgICAgICAgICAgICBSQ0NfQ0lSX0hTRVJEWUlFX01zayAgICAgICAgICAgICAgIC8qITwgSFNFIFJlYWR5IEludGVycnVwdCBFbmFibGUgKi8NCiNkZWZpbmUgUkNDX0NJUl9QTExSRFlJRV9Qb3MgICAgICAgICAgICAgICAgKDEyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0NJUl9QTExSRFlJRV9Nc2sgICAgICAgICAgICAgICAgKDB4MVVMIDw8IFJDQ19DSVJfUExMUkRZSUVfUG9zKSAgICAgLyohPCAweDAwMDAxMDAwICovDQojZGVmaW5lIFJDQ19DSVJfUExMUkRZSUUgICAgICAgICAgICAgICAgICAgIFJDQ19DSVJfUExMUkRZSUVfTXNrICAgICAgICAgICAgICAgLyohPCBQTEwgUmVhZHkgSW50ZXJydXB0IEVuYWJsZSAqLw0KI2RlZmluZSBSQ0NfQ0lSX01TSVJEWUlFX1BvcyAgICAgICAgICAgICAgICAoMTNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQ0lSX01TSVJEWUlFX01zayAgICAgICAgICAgICAgICAoMHgxVUwgPDwgUkNDX0NJUl9NU0lSRFlJRV9Qb3MpICAgICAvKiE8IDB4MDAwMDIwMDAgKi8NCiNkZWZpbmUgUkNDX0NJUl9NU0lSRFlJRSAgICAgICAgICAgICAgICAgICAgUkNDX0NJUl9NU0lSRFlJRV9Nc2sgICAgICAgICAgICAgICAvKiE8IE1TSSBSZWFkeSBJbnRlcnJ1cHQgRW5hYmxlICovDQojZGVmaW5lIFJDQ19DSVJfTFNFQ1NTSUVfUG9zICAgICAgICAgICAgICAgICgxNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19DSVJfTFNFQ1NTSUVfTXNrICAgICAgICAgICAgICAgICgweDFVTCA8PCBSQ0NfQ0lSX0xTRUNTU0lFX1BvcykgICAgIC8qITwgMHgwMDAwNDAwMCAqLw0KI2RlZmluZSBSQ0NfQ0lSX0xTRUNTU0lFICAgICAgICAgICAgICAgICAgICBSQ0NfQ0lSX0xTRUNTU0lFX01zayAgICAgICAgICAgICAgIC8qITwgTFNFIENTUyBJbnRlcnJ1cHQgRW5hYmxlICovDQoNCiNkZWZpbmUgUkNDX0NJUl9MU0lSRFlDX1BvcyAgICAgICAgICAgICAgICAgKDE2VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0NJUl9MU0lSRFlDX01zayAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IFJDQ19DSVJfTFNJUkRZQ19Qb3MpICAgICAgLyohPCAweDAwMDEwMDAwICovDQojZGVmaW5lIFJDQ19DSVJfTFNJUkRZQyAgICAgICAgICAgICAgICAgICAgIFJDQ19DSVJfTFNJUkRZQ19Nc2sgICAgICAgICAgICAgICAgLyohPCBMU0kgUmVhZHkgSW50ZXJydXB0IENsZWFyICovDQojZGVmaW5lIFJDQ19DSVJfTFNFUkRZQ19Qb3MgICAgICAgICAgICAgICAgICgxN1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19DSVJfTFNFUkRZQ19Nc2sgICAgICAgICAgICAgICAgICgweDFVTCA8PCBSQ0NfQ0lSX0xTRVJEWUNfUG9zKSAgICAgIC8qITwgMHgwMDAyMDAwMCAqLw0KI2RlZmluZSBSQ0NfQ0lSX0xTRVJEWUMgICAgICAgICAgICAgICAgICAgICBSQ0NfQ0lSX0xTRVJEWUNfTXNrICAgICAgICAgICAgICAgIC8qITwgTFNFIFJlYWR5IEludGVycnVwdCBDbGVhciAqLw0KI2RlZmluZSBSQ0NfQ0lSX0hTSVJEWUNfUG9zICAgICAgICAgICAgICAgICAoMThVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQ0lSX0hTSVJEWUNfTXNrICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgUkNDX0NJUl9IU0lSRFlDX1BvcykgICAgICAvKiE8IDB4MDAwNDAwMDAgKi8NCiNkZWZpbmUgUkNDX0NJUl9IU0lSRFlDICAgICAgICAgICAgICAgICAgICAgUkNDX0NJUl9IU0lSRFlDX01zayAgICAgICAgICAgICAgICAvKiE8IEhTSSBSZWFkeSBJbnRlcnJ1cHQgQ2xlYXIgKi8NCiNkZWZpbmUgUkNDX0NJUl9IU0VSRFlDX1BvcyAgICAgICAgICAgICAgICAgKDE5VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0NJUl9IU0VSRFlDX01zayAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IFJDQ19DSVJfSFNFUkRZQ19Qb3MpICAgICAgLyohPCAweDAwMDgwMDAwICovDQojZGVmaW5lIFJDQ19DSVJfSFNFUkRZQyAgICAgICAgICAgICAgICAgICAgIFJDQ19DSVJfSFNFUkRZQ19Nc2sgICAgICAgICAgICAgICAgLyohPCBIU0UgUmVhZHkgSW50ZXJydXB0IENsZWFyICovDQojZGVmaW5lIFJDQ19DSVJfUExMUkRZQ19Qb3MgICAgICAgICAgICAgICAgICgyMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19DSVJfUExMUkRZQ19Nc2sgICAgICAgICAgICAgICAgICgweDFVTCA8PCBSQ0NfQ0lSX1BMTFJEWUNfUG9zKSAgICAgIC8qITwgMHgwMDEwMDAwMCAqLw0KI2RlZmluZSBSQ0NfQ0lSX1BMTFJEWUMgICAgICAgICAgICAgICAgICAgICBSQ0NfQ0lSX1BMTFJEWUNfTXNrICAgICAgICAgICAgICAgIC8qITwgUExMIFJlYWR5IEludGVycnVwdCBDbGVhciAqLw0KI2RlZmluZSBSQ0NfQ0lSX01TSVJEWUNfUG9zICAgICAgICAgICAgICAgICAoMjFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQ0lSX01TSVJEWUNfTXNrICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgUkNDX0NJUl9NU0lSRFlDX1BvcykgICAgICAvKiE8IDB4MDAyMDAwMDAgKi8NCiNkZWZpbmUgUkNDX0NJUl9NU0lSRFlDICAgICAgICAgICAgICAgICAgICAgUkNDX0NJUl9NU0lSRFlDX01zayAgICAgICAgICAgICAgICAvKiE8IE1TSSBSZWFkeSBJbnRlcnJ1cHQgQ2xlYXIgKi8NCiNkZWZpbmUgUkNDX0NJUl9MU0VDU1NDX1BvcyAgICAgICAgICAgICAgICAgKDIyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0NJUl9MU0VDU1NDX01zayAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IFJDQ19DSVJfTFNFQ1NTQ19Qb3MpICAgICAgLyohPCAweDAwNDAwMDAwICovDQojZGVmaW5lIFJDQ19DSVJfTFNFQ1NTQyAgICAgICAgICAgICAgICAgICAgIFJDQ19DSVJfTFNFQ1NTQ19Nc2sgICAgICAgICAgICAgICAgLyohPCBMU0UgQ1NTIEludGVycnVwdCBDbGVhciAqLw0KI2RlZmluZSBSQ0NfQ0lSX0NTU0NfUG9zICAgICAgICAgICAgICAgICAgICAoMjNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQ0lSX0NTU0NfTXNrICAgICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgUkNDX0NJUl9DU1NDX1BvcykgICAgICAgICAvKiE8IDB4MDA4MDAwMDAgKi8NCiNkZWZpbmUgUkNDX0NJUl9DU1NDICAgICAgICAgICAgICAgICAgICAgICAgUkNDX0NJUl9DU1NDX01zayAgICAgICAgICAgICAgICAgICAvKiE8IENsb2NrIFNlY3VyaXR5IFN5c3RlbSBJbnRlcnJ1cHQgQ2xlYXIgKi8NCg0KLyoqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgUkNDX0FIQlJTVFIgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgUkNDX0FIQlJTVFJfR1BJT0FSU1RfUG9zICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0FIQlJTVFJfR1BJT0FSU1RfTXNrICAgICAgICAgICAgKDB4MVVMIDw8IFJDQ19BSEJSU1RSX0dQSU9BUlNUX1BvcykgLyohPCAweDAwMDAwMDAxICovDQojZGVmaW5lIFJDQ19BSEJSU1RSX0dQSU9BUlNUICAgICAgICAgICAgICAgIFJDQ19BSEJSU1RSX0dQSU9BUlNUX01zayAgICAgICAgICAgLyohPCBHUElPIHBvcnQgQSByZXNldCAqLw0KI2RlZmluZSBSQ0NfQUhCUlNUUl9HUElPQlJTVF9Qb3MgICAgICAgICAgICAoMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQUhCUlNUUl9HUElPQlJTVF9Nc2sgICAgICAgICAgICAoMHgxVUwgPDwgUkNDX0FIQlJTVFJfR1BJT0JSU1RfUG9zKSAvKiE8IDB4MDAwMDAwMDIgKi8NCiNkZWZpbmUgUkNDX0FIQlJTVFJfR1BJT0JSU1QgICAgICAgICAgICAgICAgUkNDX0FIQlJTVFJfR1BJT0JSU1RfTXNrICAgICAgICAgICAvKiE8IEdQSU8gcG9ydCBCIHJlc2V0ICovDQojZGVmaW5lIFJDQ19BSEJSU1RSX0dQSU9DUlNUX1BvcyAgICAgICAgICAgICgyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19BSEJSU1RSX0dQSU9DUlNUX01zayAgICAgICAgICAgICgweDFVTCA8PCBSQ0NfQUhCUlNUUl9HUElPQ1JTVF9Qb3MpIC8qITwgMHgwMDAwMDAwNCAqLw0KI2RlZmluZSBSQ0NfQUhCUlNUUl9HUElPQ1JTVCAgICAgICAgICAgICAgICBSQ0NfQUhCUlNUUl9HUElPQ1JTVF9Nc2sgICAgICAgICAgIC8qITwgR1BJTyBwb3J0IEMgcmVzZXQgKi8NCiNkZWZpbmUgUkNDX0FIQlJTVFJfR1BJT0RSU1RfUG9zICAgICAgICAgICAgKDNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0FIQlJTVFJfR1BJT0RSU1RfTXNrICAgICAgICAgICAgKDB4MVVMIDw8IFJDQ19BSEJSU1RSX0dQSU9EUlNUX1BvcykgLyohPCAweDAwMDAwMDA4ICovDQojZGVmaW5lIFJDQ19BSEJSU1RSX0dQSU9EUlNUICAgICAgICAgICAgICAgIFJDQ19BSEJSU1RSX0dQSU9EUlNUX01zayAgICAgICAgICAgLyohPCBHUElPIHBvcnQgRCByZXNldCAqLw0KI2RlZmluZSBSQ0NfQUhCUlNUUl9HUElPRVJTVF9Qb3MgICAgICAgICAgICAoNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQUhCUlNUUl9HUElPRVJTVF9Nc2sgICAgICAgICAgICAoMHgxVUwgPDwgUkNDX0FIQlJTVFJfR1BJT0VSU1RfUG9zKSAvKiE8IDB4MDAwMDAwMTAgKi8NCiNkZWZpbmUgUkNDX0FIQlJTVFJfR1BJT0VSU1QgICAgICAgICAgICAgICAgUkNDX0FIQlJTVFJfR1BJT0VSU1RfTXNrICAgICAgICAgICAvKiE8IEdQSU8gcG9ydCBFIHJlc2V0ICovDQojZGVmaW5lIFJDQ19BSEJSU1RSX0dQSU9IUlNUX1BvcyAgICAgICAgICAgICg1VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19BSEJSU1RSX0dQSU9IUlNUX01zayAgICAgICAgICAgICgweDFVTCA8PCBSQ0NfQUhCUlNUUl9HUElPSFJTVF9Qb3MpIC8qITwgMHgwMDAwMDAyMCAqLw0KI2RlZmluZSBSQ0NfQUhCUlNUUl9HUElPSFJTVCAgICAgICAgICAgICAgICBSQ0NfQUhCUlNUUl9HUElPSFJTVF9Nc2sgICAgICAgICAgIC8qITwgR1BJTyBwb3J0IEggcmVzZXQgKi8NCiNkZWZpbmUgUkNDX0FIQlJTVFJfR1BJT0ZSU1RfUG9zICAgICAgICAgICAgKDZVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0FIQlJTVFJfR1BJT0ZSU1RfTXNrICAgICAgICAgICAgKDB4MVVMIDw8IFJDQ19BSEJSU1RSX0dQSU9GUlNUX1BvcykgLyohPCAweDAwMDAwMDQwICovDQojZGVmaW5lIFJDQ19BSEJSU1RSX0dQSU9GUlNUICAgICAgICAgICAgICAgIFJDQ19BSEJSU1RSX0dQSU9GUlNUX01zayAgICAgICAgICAgLyohPCBHUElPIHBvcnQgRiByZXNldCAqLw0KI2RlZmluZSBSQ0NfQUhCUlNUUl9HUElPR1JTVF9Qb3MgICAgICAgICAgICAoN1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQUhCUlNUUl9HUElPR1JTVF9Nc2sgICAgICAgICAgICAoMHgxVUwgPDwgUkNDX0FIQlJTVFJfR1BJT0dSU1RfUG9zKSAvKiE8IDB4MDAwMDAwODAgKi8NCiNkZWZpbmUgUkNDX0FIQlJTVFJfR1BJT0dSU1QgICAgICAgICAgICAgICAgUkNDX0FIQlJTVFJfR1BJT0dSU1RfTXNrICAgICAgICAgICAvKiE8IEdQSU8gcG9ydCBHIHJlc2V0ICovDQojZGVmaW5lIFJDQ19BSEJSU1RSX0NSQ1JTVF9Qb3MgICAgICAgICAgICAgICgxMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19BSEJSU1RSX0NSQ1JTVF9Nc2sgICAgICAgICAgICAgICgweDFVTCA8PCBSQ0NfQUhCUlNUUl9DUkNSU1RfUG9zKSAgIC8qITwgMHgwMDAwMTAwMCAqLw0KI2RlZmluZSBSQ0NfQUhCUlNUUl9DUkNSU1QgICAgICAgICAgICAgICAgICBSQ0NfQUhCUlNUUl9DUkNSU1RfTXNrICAgICAgICAgICAgIC8qITwgQ1JDIHJlc2V0ICovDQojZGVmaW5lIFJDQ19BSEJSU1RSX0ZMSVRGUlNUX1BvcyAgICAgICAgICAgICgxNVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19BSEJSU1RSX0ZMSVRGUlNUX01zayAgICAgICAgICAgICgweDFVTCA8PCBSQ0NfQUhCUlNUUl9GTElURlJTVF9Qb3MpIC8qITwgMHgwMDAwODAwMCAqLw0KI2RlZmluZSBSQ0NfQUhCUlNUUl9GTElURlJTVCAgICAgICAgICAgICAgICBSQ0NfQUhCUlNUUl9GTElURlJTVF9Nc2sgICAgICAgICAgIC8qITwgRkxJVEYgcmVzZXQgKi8NCiNkZWZpbmUgUkNDX0FIQlJTVFJfRE1BMVJTVF9Qb3MgICAgICAgICAgICAgKDI0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0FIQlJTVFJfRE1BMVJTVF9Nc2sgICAgICAgICAgICAgKDB4MVVMIDw8IFJDQ19BSEJSU1RSX0RNQTFSU1RfUG9zKSAgLyohPCAweDAxMDAwMDAwICovDQojZGVmaW5lIFJDQ19BSEJSU1RSX0RNQTFSU1QgICAgICAgICAgICAgICAgIFJDQ19BSEJSU1RSX0RNQTFSU1RfTXNrICAgICAgICAgICAgLyohPCBETUExIHJlc2V0ICovDQojZGVmaW5lIFJDQ19BSEJSU1RSX0RNQTJSU1RfUG9zICAgICAgICAgICAgICgyNVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19BSEJSU1RSX0RNQTJSU1RfTXNrICAgICAgICAgICAgICgweDFVTCA8PCBSQ0NfQUhCUlNUUl9ETUEyUlNUX1BvcykgIC8qITwgMHgwMjAwMDAwMCAqLw0KI2RlZmluZSBSQ0NfQUhCUlNUUl9ETUEyUlNUICAgICAgICAgICAgICAgICBSQ0NfQUhCUlNUUl9ETUEyUlNUX01zayAgICAgICAgICAgIC8qITwgRE1BMiByZXNldCAqLw0KIA0KLyoqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgUkNDX0FQQjJSU1RSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgUkNDX0FQQjJSU1RSX1NZU0NGR1JTVF9Qb3MgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0FQQjJSU1RSX1NZU0NGR1JTVF9Nc2sgICAgICAgICAgKDB4MVVMIDw8IFJDQ19BUEIyUlNUUl9TWVNDRkdSU1RfUG9zKSAvKiE8IDB4MDAwMDAwMDEgKi8NCiNkZWZpbmUgUkNDX0FQQjJSU1RSX1NZU0NGR1JTVCAgICAgICAgICAgICAgUkNDX0FQQjJSU1RSX1NZU0NGR1JTVF9Nc2sgICAgICAgICAvKiE8IFN5c3RlbSBDb25maWd1cmF0aW9uIFNZU0NGRyByZXNldCAqLw0KI2RlZmluZSBSQ0NfQVBCMlJTVFJfVElNOVJTVF9Qb3MgICAgICAgICAgICAoMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQVBCMlJTVFJfVElNOVJTVF9Nc2sgICAgICAgICAgICAoMHgxVUwgPDwgUkNDX0FQQjJSU1RSX1RJTTlSU1RfUG9zKSAvKiE8IDB4MDAwMDAwMDQgKi8NCiNkZWZpbmUgUkNDX0FQQjJSU1RSX1RJTTlSU1QgICAgICAgICAgICAgICAgUkNDX0FQQjJSU1RSX1RJTTlSU1RfTXNrICAgICAgICAgICAvKiE8IFRJTTkgcmVzZXQgKi8NCiNkZWZpbmUgUkNDX0FQQjJSU1RSX1RJTTEwUlNUX1BvcyAgICAgICAgICAgKDNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0FQQjJSU1RSX1RJTTEwUlNUX01zayAgICAgICAgICAgKDB4MVVMIDw8IFJDQ19BUEIyUlNUUl9USU0xMFJTVF9Qb3MpIC8qITwgMHgwMDAwMDAwOCAqLw0KI2RlZmluZSBSQ0NfQVBCMlJTVFJfVElNMTBSU1QgICAgICAgICAgICAgICBSQ0NfQVBCMlJTVFJfVElNMTBSU1RfTXNrICAgICAgICAgIC8qITwgVElNMTAgcmVzZXQgKi8NCiNkZWZpbmUgUkNDX0FQQjJSU1RSX1RJTTExUlNUX1BvcyAgICAgICAgICAgKDRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0FQQjJSU1RSX1RJTTExUlNUX01zayAgICAgICAgICAgKDB4MVVMIDw8IFJDQ19BUEIyUlNUUl9USU0xMVJTVF9Qb3MpIC8qITwgMHgwMDAwMDAxMCAqLw0KI2RlZmluZSBSQ0NfQVBCMlJTVFJfVElNMTFSU1QgICAgICAgICAgICAgICBSQ0NfQVBCMlJTVFJfVElNMTFSU1RfTXNrICAgICAgICAgIC8qITwgVElNMTEgcmVzZXQgKi8NCiNkZWZpbmUgUkNDX0FQQjJSU1RSX0FEQzFSU1RfUG9zICAgICAgICAgICAgKDlVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0FQQjJSU1RSX0FEQzFSU1RfTXNrICAgICAgICAgICAgKDB4MVVMIDw8IFJDQ19BUEIyUlNUUl9BREMxUlNUX1BvcykgLyohPCAweDAwMDAwMjAwICovDQojZGVmaW5lIFJDQ19BUEIyUlNUUl9BREMxUlNUICAgICAgICAgICAgICAgIFJDQ19BUEIyUlNUUl9BREMxUlNUX01zayAgICAgICAgICAgLyohPCBBREMxIHJlc2V0ICovDQojZGVmaW5lIFJDQ19BUEIyUlNUUl9TUEkxUlNUX1BvcyAgICAgICAgICAgICgxMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19BUEIyUlNUUl9TUEkxUlNUX01zayAgICAgICAgICAgICgweDFVTCA8PCBSQ0NfQVBCMlJTVFJfU1BJMVJTVF9Qb3MpIC8qITwgMHgwMDAwMTAwMCAqLw0KI2RlZmluZSBSQ0NfQVBCMlJTVFJfU1BJMVJTVCAgICAgICAgICAgICAgICBSQ0NfQVBCMlJTVFJfU1BJMVJTVF9Nc2sgICAgICAgICAgIC8qITwgU1BJMSByZXNldCAqLw0KI2RlZmluZSBSQ0NfQVBCMlJTVFJfVVNBUlQxUlNUX1BvcyAgICAgICAgICAoMTRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQVBCMlJTVFJfVVNBUlQxUlNUX01zayAgICAgICAgICAoMHgxVUwgPDwgUkNDX0FQQjJSU1RSX1VTQVJUMVJTVF9Qb3MpIC8qITwgMHgwMDAwNDAwMCAqLw0KI2RlZmluZSBSQ0NfQVBCMlJTVFJfVVNBUlQxUlNUICAgICAgICAgICAgICBSQ0NfQVBCMlJTVFJfVVNBUlQxUlNUX01zayAgICAgICAgIC8qITwgVVNBUlQxIHJlc2V0ICovDQoNCi8qKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFJDQ19BUEIxUlNUUiByZWdpc3RlciAgKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIFJDQ19BUEIxUlNUUl9USU0yUlNUX1BvcyAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19BUEIxUlNUUl9USU0yUlNUX01zayAgICAgICAgICAgICgweDFVTCA8PCBSQ0NfQVBCMVJTVFJfVElNMlJTVF9Qb3MpIC8qITwgMHgwMDAwMDAwMSAqLw0KI2RlZmluZSBSQ0NfQVBCMVJTVFJfVElNMlJTVCAgICAgICAgICAgICAgICBSQ0NfQVBCMVJTVFJfVElNMlJTVF9Nc2sgICAgICAgICAgIC8qITwgVGltZXIgMiByZXNldCAqLw0KI2RlZmluZSBSQ0NfQVBCMVJTVFJfVElNM1JTVF9Qb3MgICAgICAgICAgICAoMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQVBCMVJTVFJfVElNM1JTVF9Nc2sgICAgICAgICAgICAoMHgxVUwgPDwgUkNDX0FQQjFSU1RSX1RJTTNSU1RfUG9zKSAvKiE8IDB4MDAwMDAwMDIgKi8NCiNkZWZpbmUgUkNDX0FQQjFSU1RSX1RJTTNSU1QgICAgICAgICAgICAgICAgUkNDX0FQQjFSU1RSX1RJTTNSU1RfTXNrICAgICAgICAgICAvKiE8IFRpbWVyIDMgcmVzZXQgKi8NCiNkZWZpbmUgUkNDX0FQQjFSU1RSX1RJTTRSU1RfUG9zICAgICAgICAgICAgKDJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0FQQjFSU1RSX1RJTTRSU1RfTXNrICAgICAgICAgICAgKDB4MVVMIDw8IFJDQ19BUEIxUlNUUl9USU00UlNUX1BvcykgLyohPCAweDAwMDAwMDA0ICovDQojZGVmaW5lIFJDQ19BUEIxUlNUUl9USU00UlNUICAgICAgICAgICAgICAgIFJDQ19BUEIxUlNUUl9USU00UlNUX01zayAgICAgICAgICAgLyohPCBUaW1lciA0IHJlc2V0ICovDQojZGVmaW5lIFJDQ19BUEIxUlNUUl9USU01UlNUX1BvcyAgICAgICAgICAgICgzVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19BUEIxUlNUUl9USU01UlNUX01zayAgICAgICAgICAgICgweDFVTCA8PCBSQ0NfQVBCMVJTVFJfVElNNVJTVF9Qb3MpIC8qITwgMHgwMDAwMDAwOCAqLw0KI2RlZmluZSBSQ0NfQVBCMVJTVFJfVElNNVJTVCAgICAgICAgICAgICAgICBSQ0NfQVBCMVJTVFJfVElNNVJTVF9Nc2sgICAgICAgICAgIC8qITwgVGltZXIgNSByZXNldCAqLw0KI2RlZmluZSBSQ0NfQVBCMVJTVFJfVElNNlJTVF9Qb3MgICAgICAgICAgICAoNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQVBCMVJTVFJfVElNNlJTVF9Nc2sgICAgICAgICAgICAoMHgxVUwgPDwgUkNDX0FQQjFSU1RSX1RJTTZSU1RfUG9zKSAvKiE8IDB4MDAwMDAwMTAgKi8NCiNkZWZpbmUgUkNDX0FQQjFSU1RSX1RJTTZSU1QgICAgICAgICAgICAgICAgUkNDX0FQQjFSU1RSX1RJTTZSU1RfTXNrICAgICAgICAgICAvKiE8IFRpbWVyIDYgcmVzZXQgKi8NCiNkZWZpbmUgUkNDX0FQQjFSU1RSX1RJTTdSU1RfUG9zICAgICAgICAgICAgKDVVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0FQQjFSU1RSX1RJTTdSU1RfTXNrICAgICAgICAgICAgKDB4MVVMIDw8IFJDQ19BUEIxUlNUUl9USU03UlNUX1BvcykgLyohPCAweDAwMDAwMDIwICovDQojZGVmaW5lIFJDQ19BUEIxUlNUUl9USU03UlNUICAgICAgICAgICAgICAgIFJDQ19BUEIxUlNUUl9USU03UlNUX01zayAgICAgICAgICAgLyohPCBUaW1lciA3IHJlc2V0ICovDQojZGVmaW5lIFJDQ19BUEIxUlNUUl9MQ0RSU1RfUG9zICAgICAgICAgICAgICg5VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19BUEIxUlNUUl9MQ0RSU1RfTXNrICAgICAgICAgICAgICgweDFVTCA8PCBSQ0NfQVBCMVJTVFJfTENEUlNUX1BvcykgIC8qITwgMHgwMDAwMDIwMCAqLw0KI2RlZmluZSBSQ0NfQVBCMVJTVFJfTENEUlNUICAgICAgICAgICAgICAgICBSQ0NfQVBCMVJTVFJfTENEUlNUX01zayAgICAgICAgICAgIC8qITwgTENEIHJlc2V0ICovDQojZGVmaW5lIFJDQ19BUEIxUlNUUl9XV0RHUlNUX1BvcyAgICAgICAgICAgICgxMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19BUEIxUlNUUl9XV0RHUlNUX01zayAgICAgICAgICAgICgweDFVTCA8PCBSQ0NfQVBCMVJTVFJfV1dER1JTVF9Qb3MpIC8qITwgMHgwMDAwMDgwMCAqLw0KI2RlZmluZSBSQ0NfQVBCMVJTVFJfV1dER1JTVCAgICAgICAgICAgICAgICBSQ0NfQVBCMVJTVFJfV1dER1JTVF9Nc2sgICAgICAgICAgIC8qITwgV2luZG93IFdhdGNoZG9nIHJlc2V0ICovDQojZGVmaW5lIFJDQ19BUEIxUlNUUl9TUEkyUlNUX1BvcyAgICAgICAgICAgICgxNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19BUEIxUlNUUl9TUEkyUlNUX01zayAgICAgICAgICAgICgweDFVTCA8PCBSQ0NfQVBCMVJTVFJfU1BJMlJTVF9Qb3MpIC8qITwgMHgwMDAwNDAwMCAqLw0KI2RlZmluZSBSQ0NfQVBCMVJTVFJfU1BJMlJTVCAgICAgICAgICAgICAgICBSQ0NfQVBCMVJTVFJfU1BJMlJTVF9Nc2sgICAgICAgICAgIC8qITwgU1BJIDIgcmVzZXQgKi8NCiNkZWZpbmUgUkNDX0FQQjFSU1RSX1NQSTNSU1RfUG9zICAgICAgICAgICAgKDE1VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0FQQjFSU1RSX1NQSTNSU1RfTXNrICAgICAgICAgICAgKDB4MVVMIDw8IFJDQ19BUEIxUlNUUl9TUEkzUlNUX1BvcykgLyohPCAweDAwMDA4MDAwICovDQojZGVmaW5lIFJDQ19BUEIxUlNUUl9TUEkzUlNUICAgICAgICAgICAgICAgIFJDQ19BUEIxUlNUUl9TUEkzUlNUX01zayAgICAgICAgICAgLyohPCBTUEkgMyByZXNldCAqLw0KI2RlZmluZSBSQ0NfQVBCMVJTVFJfVVNBUlQyUlNUX1BvcyAgICAgICAgICAoMTdVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQVBCMVJTVFJfVVNBUlQyUlNUX01zayAgICAgICAgICAoMHgxVUwgPDwgUkNDX0FQQjFSU1RSX1VTQVJUMlJTVF9Qb3MpIC8qITwgMHgwMDAyMDAwMCAqLw0KI2RlZmluZSBSQ0NfQVBCMVJTVFJfVVNBUlQyUlNUICAgICAgICAgICAgICBSQ0NfQVBCMVJTVFJfVVNBUlQyUlNUX01zayAgICAgICAgIC8qITwgVVNBUlQgMiByZXNldCAqLw0KI2RlZmluZSBSQ0NfQVBCMVJTVFJfVVNBUlQzUlNUX1BvcyAgICAgICAgICAoMThVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQVBCMVJTVFJfVVNBUlQzUlNUX01zayAgICAgICAgICAoMHgxVUwgPDwgUkNDX0FQQjFSU1RSX1VTQVJUM1JTVF9Qb3MpIC8qITwgMHgwMDA0MDAwMCAqLw0KI2RlZmluZSBSQ0NfQVBCMVJTVFJfVVNBUlQzUlNUICAgICAgICAgICAgICBSQ0NfQVBCMVJTVFJfVVNBUlQzUlNUX01zayAgICAgICAgIC8qITwgVVNBUlQgMyByZXNldCAqLw0KI2RlZmluZSBSQ0NfQVBCMVJTVFJfVUFSVDRSU1RfUG9zICAgICAgICAgICAoMTlVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQVBCMVJTVFJfVUFSVDRSU1RfTXNrICAgICAgICAgICAoMHgxVUwgPDwgUkNDX0FQQjFSU1RSX1VBUlQ0UlNUX1BvcykgLyohPCAweDAwMDgwMDAwICovDQojZGVmaW5lIFJDQ19BUEIxUlNUUl9VQVJUNFJTVCAgICAgICAgICAgICAgIFJDQ19BUEIxUlNUUl9VQVJUNFJTVF9Nc2sgICAgICAgICAgLyohPCBVQVJUIDQgcmVzZXQgKi8NCiNkZWZpbmUgUkNDX0FQQjFSU1RSX1VBUlQ1UlNUX1BvcyAgICAgICAgICAgKDIwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0FQQjFSU1RSX1VBUlQ1UlNUX01zayAgICAgICAgICAgKDB4MVVMIDw8IFJDQ19BUEIxUlNUUl9VQVJUNVJTVF9Qb3MpIC8qITwgMHgwMDEwMDAwMCAqLw0KI2RlZmluZSBSQ0NfQVBCMVJTVFJfVUFSVDVSU1QgICAgICAgICAgICAgICBSQ0NfQVBCMVJTVFJfVUFSVDVSU1RfTXNrICAgICAgICAgIC8qITwgVUFSVCA1IHJlc2V0ICovDQojZGVmaW5lIFJDQ19BUEIxUlNUUl9JMkMxUlNUX1BvcyAgICAgICAgICAgICgyMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19BUEIxUlNUUl9JMkMxUlNUX01zayAgICAgICAgICAgICgweDFVTCA8PCBSQ0NfQVBCMVJTVFJfSTJDMVJTVF9Qb3MpIC8qITwgMHgwMDIwMDAwMCAqLw0KI2RlZmluZSBSQ0NfQVBCMVJTVFJfSTJDMVJTVCAgICAgICAgICAgICAgICBSQ0NfQVBCMVJTVFJfSTJDMVJTVF9Nc2sgICAgICAgICAgIC8qITwgSTJDIDEgcmVzZXQgKi8NCiNkZWZpbmUgUkNDX0FQQjFSU1RSX0kyQzJSU1RfUG9zICAgICAgICAgICAgKDIyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0FQQjFSU1RSX0kyQzJSU1RfTXNrICAgICAgICAgICAgKDB4MVVMIDw8IFJDQ19BUEIxUlNUUl9JMkMyUlNUX1BvcykgLyohPCAweDAwNDAwMDAwICovDQojZGVmaW5lIFJDQ19BUEIxUlNUUl9JMkMyUlNUICAgICAgICAgICAgICAgIFJDQ19BUEIxUlNUUl9JMkMyUlNUX01zayAgICAgICAgICAgLyohPCBJMkMgMiByZXNldCAqLw0KI2RlZmluZSBSQ0NfQVBCMVJTVFJfVVNCUlNUX1BvcyAgICAgICAgICAgICAoMjNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQVBCMVJTVFJfVVNCUlNUX01zayAgICAgICAgICAgICAoMHgxVUwgPDwgUkNDX0FQQjFSU1RSX1VTQlJTVF9Qb3MpICAvKiE8IDB4MDA4MDAwMDAgKi8NCiNkZWZpbmUgUkNDX0FQQjFSU1RSX1VTQlJTVCAgICAgICAgICAgICAgICAgUkNDX0FQQjFSU1RSX1VTQlJTVF9Nc2sgICAgICAgICAgICAvKiE8IFVTQiByZXNldCAqLw0KI2RlZmluZSBSQ0NfQVBCMVJTVFJfUFdSUlNUX1BvcyAgICAgICAgICAgICAoMjhVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQVBCMVJTVFJfUFdSUlNUX01zayAgICAgICAgICAgICAoMHgxVUwgPDwgUkNDX0FQQjFSU1RSX1BXUlJTVF9Qb3MpICAvKiE8IDB4MTAwMDAwMDAgKi8NCiNkZWZpbmUgUkNDX0FQQjFSU1RSX1BXUlJTVCAgICAgICAgICAgICAgICAgUkNDX0FQQjFSU1RSX1BXUlJTVF9Nc2sgICAgICAgICAgICAvKiE8IFBvd2VyIGludGVyZmFjZSByZXNldCAqLw0KI2RlZmluZSBSQ0NfQVBCMVJTVFJfREFDUlNUX1BvcyAgICAgICAgICAgICAoMjlVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQVBCMVJTVFJfREFDUlNUX01zayAgICAgICAgICAgICAoMHgxVUwgPDwgUkNDX0FQQjFSU1RSX0RBQ1JTVF9Qb3MpICAvKiE8IDB4MjAwMDAwMDAgKi8NCiNkZWZpbmUgUkNDX0FQQjFSU1RSX0RBQ1JTVCAgICAgICAgICAgICAgICAgUkNDX0FQQjFSU1RSX0RBQ1JTVF9Nc2sgICAgICAgICAgICAvKiE8IERBQyBpbnRlcmZhY2UgcmVzZXQgKi8NCiNkZWZpbmUgUkNDX0FQQjFSU1RSX0NPTVBSU1RfUG9zICAgICAgICAgICAgKDMxVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0FQQjFSU1RSX0NPTVBSU1RfTXNrICAgICAgICAgICAgKDB4MVVMIDw8IFJDQ19BUEIxUlNUUl9DT01QUlNUX1BvcykgLyohPCAweDgwMDAwMDAwICovDQojZGVmaW5lIFJDQ19BUEIxUlNUUl9DT01QUlNUICAgICAgICAgICAgICAgIFJDQ19BUEIxUlNUUl9DT01QUlNUX01zayAgICAgICAgICAgLyohPCBDb21wYXJhdG9yIGludGVyZmFjZSByZXNldCAqLw0KDQovKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgUkNDX0FIQkVOUiByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBSQ0NfQUhCRU5SX0dQSU9BRU5fUG9zICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQUhCRU5SX0dQSU9BRU5fTXNrICAgICAgICAgICAgICAoMHgxVUwgPDwgUkNDX0FIQkVOUl9HUElPQUVOX1BvcykgICAvKiE8IDB4MDAwMDAwMDEgKi8NCiNkZWZpbmUgUkNDX0FIQkVOUl9HUElPQUVOICAgICAgICAgICAgICAgICAgUkNDX0FIQkVOUl9HUElPQUVOX01zayAgICAgICAgICAgICAvKiE8IEdQSU8gcG9ydCBBIGNsb2NrIGVuYWJsZSAqLw0KI2RlZmluZSBSQ0NfQUhCRU5SX0dQSU9CRU5fUG9zICAgICAgICAgICAgICAoMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQUhCRU5SX0dQSU9CRU5fTXNrICAgICAgICAgICAgICAoMHgxVUwgPDwgUkNDX0FIQkVOUl9HUElPQkVOX1BvcykgICAvKiE8IDB4MDAwMDAwMDIgKi8NCiNkZWZpbmUgUkNDX0FIQkVOUl9HUElPQkVOICAgICAgICAgICAgICAgICAgUkNDX0FIQkVOUl9HUElPQkVOX01zayAgICAgICAgICAgICAvKiE8IEdQSU8gcG9ydCBCIGNsb2NrIGVuYWJsZSAqLw0KI2RlZmluZSBSQ0NfQUhCRU5SX0dQSU9DRU5fUG9zICAgICAgICAgICAgICAoMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQUhCRU5SX0dQSU9DRU5fTXNrICAgICAgICAgICAgICAoMHgxVUwgPDwgUkNDX0FIQkVOUl9HUElPQ0VOX1BvcykgICAvKiE8IDB4MDAwMDAwMDQgKi8NCiNkZWZpbmUgUkNDX0FIQkVOUl9HUElPQ0VOICAgICAgICAgICAgICAgICAgUkNDX0FIQkVOUl9HUElPQ0VOX01zayAgICAgICAgICAgICAvKiE8IEdQSU8gcG9ydCBDIGNsb2NrIGVuYWJsZSAqLw0KI2RlZmluZSBSQ0NfQUhCRU5SX0dQSU9ERU5fUG9zICAgICAgICAgICAgICAoM1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQUhCRU5SX0dQSU9ERU5fTXNrICAgICAgICAgICAgICAoMHgxVUwgPDwgUkNDX0FIQkVOUl9HUElPREVOX1BvcykgICAvKiE8IDB4MDAwMDAwMDggKi8NCiNkZWZpbmUgUkNDX0FIQkVOUl9HUElPREVOICAgICAgICAgICAgICAgICAgUkNDX0FIQkVOUl9HUElPREVOX01zayAgICAgICAgICAgICAvKiE8IEdQSU8gcG9ydCBEIGNsb2NrIGVuYWJsZSAqLw0KI2RlZmluZSBSQ0NfQUhCRU5SX0dQSU9FRU5fUG9zICAgICAgICAgICAgICAoNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQUhCRU5SX0dQSU9FRU5fTXNrICAgICAgICAgICAgICAoMHgxVUwgPDwgUkNDX0FIQkVOUl9HUElPRUVOX1BvcykgICAvKiE8IDB4MDAwMDAwMTAgKi8NCiNkZWZpbmUgUkNDX0FIQkVOUl9HUElPRUVOICAgICAgICAgICAgICAgICAgUkNDX0FIQkVOUl9HUElPRUVOX01zayAgICAgICAgICAgICAvKiE8IEdQSU8gcG9ydCBFIGNsb2NrIGVuYWJsZSAqLw0KI2RlZmluZSBSQ0NfQUhCRU5SX0dQSU9IRU5fUG9zICAgICAgICAgICAgICAoNVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQUhCRU5SX0dQSU9IRU5fTXNrICAgICAgICAgICAgICAoMHgxVUwgPDwgUkNDX0FIQkVOUl9HUElPSEVOX1BvcykgICAvKiE8IDB4MDAwMDAwMjAgKi8NCiNkZWZpbmUgUkNDX0FIQkVOUl9HUElPSEVOICAgICAgICAgICAgICAgICAgUkNDX0FIQkVOUl9HUElPSEVOX01zayAgICAgICAgICAgICAvKiE8IEdQSU8gcG9ydCBIIGNsb2NrIGVuYWJsZSAqLw0KI2RlZmluZSBSQ0NfQUhCRU5SX0dQSU9GRU5fUG9zICAgICAgICAgICAgICAoNlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQUhCRU5SX0dQSU9GRU5fTXNrICAgICAgICAgICAgICAoMHgxVUwgPDwgUkNDX0FIQkVOUl9HUElPRkVOX1BvcykgICAvKiE8IDB4MDAwMDAwNDAgKi8NCiNkZWZpbmUgUkNDX0FIQkVOUl9HUElPRkVOICAgICAgICAgICAgICAgICAgUkNDX0FIQkVOUl9HUElPRkVOX01zayAgICAgICAgICAgICAvKiE8IEdQSU8gcG9ydCBGIGNsb2NrIGVuYWJsZSAqLw0KI2RlZmluZSBSQ0NfQUhCRU5SX0dQSU9HRU5fUG9zICAgICAgICAgICAgICAoN1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQUhCRU5SX0dQSU9HRU5fTXNrICAgICAgICAgICAgICAoMHgxVUwgPDwgUkNDX0FIQkVOUl9HUElPR0VOX1BvcykgICAvKiE8IDB4MDAwMDAwODAgKi8NCiNkZWZpbmUgUkNDX0FIQkVOUl9HUElPR0VOICAgICAgICAgICAgICAgICAgUkNDX0FIQkVOUl9HUElPR0VOX01zayAgICAgICAgICAgICAvKiE8IEdQSU8gcG9ydCBHIGNsb2NrIGVuYWJsZSAqLw0KI2RlZmluZSBSQ0NfQUhCRU5SX0NSQ0VOX1BvcyAgICAgICAgICAgICAgICAoMTJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQUhCRU5SX0NSQ0VOX01zayAgICAgICAgICAgICAgICAoMHgxVUwgPDwgUkNDX0FIQkVOUl9DUkNFTl9Qb3MpICAgICAvKiE8IDB4MDAwMDEwMDAgKi8NCiNkZWZpbmUgUkNDX0FIQkVOUl9DUkNFTiAgICAgICAgICAgICAgICAgICAgUkNDX0FIQkVOUl9DUkNFTl9Nc2sgICAgICAgICAgICAgICAvKiE8IENSQyBjbG9jayBlbmFibGUgKi8NCiNkZWZpbmUgUkNDX0FIQkVOUl9GTElURkVOX1BvcyAgICAgICAgICAgICAgKDE1VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0FIQkVOUl9GTElURkVOX01zayAgICAgICAgICAgICAgKDB4MVVMIDw8IFJDQ19BSEJFTlJfRkxJVEZFTl9Qb3MpICAgLyohPCAweDAwMDA4MDAwICovDQojZGVmaW5lIFJDQ19BSEJFTlJfRkxJVEZFTiAgICAgICAgICAgICAgICAgIFJDQ19BSEJFTlJfRkxJVEZFTl9Nc2sgICAgICAgICAgICAgLyohPCBGTElURiBjbG9jayBlbmFibGUgKGhhcyBlZmZlY3Qgb25seSB3aGVuDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoZSBGbGFzaCBtZW1vcnkgaXMgaW4gcG93ZXIgZG93biBtb2RlKSAqLw0KI2RlZmluZSBSQ0NfQUhCRU5SX0RNQTFFTl9Qb3MgICAgICAgICAgICAgICAoMjRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQUhCRU5SX0RNQTFFTl9Nc2sgICAgICAgICAgICAgICAoMHgxVUwgPDwgUkNDX0FIQkVOUl9ETUExRU5fUG9zKSAgICAvKiE8IDB4MDEwMDAwMDAgKi8NCiNkZWZpbmUgUkNDX0FIQkVOUl9ETUExRU4gICAgICAgICAgICAgICAgICAgUkNDX0FIQkVOUl9ETUExRU5fTXNrICAgICAgICAgICAgICAvKiE8IERNQTEgY2xvY2sgZW5hYmxlICovDQojZGVmaW5lIFJDQ19BSEJFTlJfRE1BMkVOX1BvcyAgICAgICAgICAgICAgICgyNVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19BSEJFTlJfRE1BMkVOX01zayAgICAgICAgICAgICAgICgweDFVTCA8PCBSQ0NfQUhCRU5SX0RNQTJFTl9Qb3MpICAgIC8qITwgMHgwMjAwMDAwMCAqLw0KI2RlZmluZSBSQ0NfQUhCRU5SX0RNQTJFTiAgICAgICAgICAgICAgICAgICBSQ0NfQUhCRU5SX0RNQTJFTl9Nc2sgICAgICAgICAgICAgIC8qITwgRE1BMiBjbG9jayBlbmFibGUgKi8NCg0KLyoqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFJDQ19BUEIyRU5SIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgUkNDX0FQQjJFTlJfU1lTQ0ZHRU5fUG9zICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0FQQjJFTlJfU1lTQ0ZHRU5fTXNrICAgICAgICAgICAgKDB4MVVMIDw8IFJDQ19BUEIyRU5SX1NZU0NGR0VOX1BvcykgLyohPCAweDAwMDAwMDAxICovDQojZGVmaW5lIFJDQ19BUEIyRU5SX1NZU0NGR0VOICAgICAgICAgICAgICAgIFJDQ19BUEIyRU5SX1NZU0NGR0VOX01zayAgICAgICAgICAgLyohPCBTeXN0ZW0gQ29uZmlndXJhdGlvbiBTWVNDRkcgY2xvY2sgZW5hYmxlICovDQojZGVmaW5lIFJDQ19BUEIyRU5SX1RJTTlFTl9Qb3MgICAgICAgICAgICAgICgyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19BUEIyRU5SX1RJTTlFTl9Nc2sgICAgICAgICAgICAgICgweDFVTCA8PCBSQ0NfQVBCMkVOUl9USU05RU5fUG9zKSAgIC8qITwgMHgwMDAwMDAwNCAqLw0KI2RlZmluZSBSQ0NfQVBCMkVOUl9USU05RU4gICAgICAgICAgICAgICAgICBSQ0NfQVBCMkVOUl9USU05RU5fTXNrICAgICAgICAgICAgIC8qITwgVElNOSBpbnRlcmZhY2UgY2xvY2sgZW5hYmxlICovDQojZGVmaW5lIFJDQ19BUEIyRU5SX1RJTTEwRU5fUG9zICAgICAgICAgICAgICgzVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19BUEIyRU5SX1RJTTEwRU5fTXNrICAgICAgICAgICAgICgweDFVTCA8PCBSQ0NfQVBCMkVOUl9USU0xMEVOX1BvcykgIC8qITwgMHgwMDAwMDAwOCAqLw0KI2RlZmluZSBSQ0NfQVBCMkVOUl9USU0xMEVOICAgICAgICAgICAgICAgICBSQ0NfQVBCMkVOUl9USU0xMEVOX01zayAgICAgICAgICAgIC8qITwgVElNMTAgaW50ZXJmYWNlIGNsb2NrIGVuYWJsZSAqLw0KI2RlZmluZSBSQ0NfQVBCMkVOUl9USU0xMUVOX1BvcyAgICAgICAgICAgICAoNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQVBCMkVOUl9USU0xMUVOX01zayAgICAgICAgICAgICAoMHgxVUwgPDwgUkNDX0FQQjJFTlJfVElNMTFFTl9Qb3MpICAvKiE8IDB4MDAwMDAwMTAgKi8NCiNkZWZpbmUgUkNDX0FQQjJFTlJfVElNMTFFTiAgICAgICAgICAgICAgICAgUkNDX0FQQjJFTlJfVElNMTFFTl9Nc2sgICAgICAgICAgICAvKiE8IFRJTTExIFRpbWVyIGNsb2NrIGVuYWJsZSAqLw0KI2RlZmluZSBSQ0NfQVBCMkVOUl9BREMxRU5fUG9zICAgICAgICAgICAgICAoOVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQVBCMkVOUl9BREMxRU5fTXNrICAgICAgICAgICAgICAoMHgxVUwgPDwgUkNDX0FQQjJFTlJfQURDMUVOX1BvcykgICAvKiE8IDB4MDAwMDAyMDAgKi8NCiNkZWZpbmUgUkNDX0FQQjJFTlJfQURDMUVOICAgICAgICAgICAgICAgICAgUkNDX0FQQjJFTlJfQURDMUVOX01zayAgICAgICAgICAgICAvKiE8IEFEQzEgY2xvY2sgZW5hYmxlICovDQojZGVmaW5lIFJDQ19BUEIyRU5SX1NQSTFFTl9Qb3MgICAgICAgICAgICAgICgxMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19BUEIyRU5SX1NQSTFFTl9Nc2sgICAgICAgICAgICAgICgweDFVTCA8PCBSQ0NfQVBCMkVOUl9TUEkxRU5fUG9zKSAgIC8qITwgMHgwMDAwMTAwMCAqLw0KI2RlZmluZSBSQ0NfQVBCMkVOUl9TUEkxRU4gICAgICAgICAgICAgICAgICBSQ0NfQVBCMkVOUl9TUEkxRU5fTXNrICAgICAgICAgICAgIC8qITwgU1BJMSBjbG9jayBlbmFibGUgKi8NCiNkZWZpbmUgUkNDX0FQQjJFTlJfVVNBUlQxRU5fUG9zICAgICAgICAgICAgKDE0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0FQQjJFTlJfVVNBUlQxRU5fTXNrICAgICAgICAgICAgKDB4MVVMIDw8IFJDQ19BUEIyRU5SX1VTQVJUMUVOX1BvcykgLyohPCAweDAwMDA0MDAwICovDQojZGVmaW5lIFJDQ19BUEIyRU5SX1VTQVJUMUVOICAgICAgICAgICAgICAgIFJDQ19BUEIyRU5SX1VTQVJUMUVOX01zayAgICAgICAgICAgLyohPCBVU0FSVDEgY2xvY2sgZW5hYmxlICovDQoNCi8qKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFJDQ19BUEIxRU5SIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIFJDQ19BUEIxRU5SX1RJTTJFTl9Qb3MgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19BUEIxRU5SX1RJTTJFTl9Nc2sgICAgICAgICAgICAgICgweDFVTCA8PCBSQ0NfQVBCMUVOUl9USU0yRU5fUG9zKSAgIC8qITwgMHgwMDAwMDAwMSAqLw0KI2RlZmluZSBSQ0NfQVBCMUVOUl9USU0yRU4gICAgICAgICAgICAgICAgICBSQ0NfQVBCMUVOUl9USU0yRU5fTXNrICAgICAgICAgICAgIC8qITwgVGltZXIgMiBjbG9jayBlbmFibGVkKi8NCiNkZWZpbmUgUkNDX0FQQjFFTlJfVElNM0VOX1BvcyAgICAgICAgICAgICAgKDFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0FQQjFFTlJfVElNM0VOX01zayAgICAgICAgICAgICAgKDB4MVVMIDw8IFJDQ19BUEIxRU5SX1RJTTNFTl9Qb3MpICAgLyohPCAweDAwMDAwMDAyICovDQojZGVmaW5lIFJDQ19BUEIxRU5SX1RJTTNFTiAgICAgICAgICAgICAgICAgIFJDQ19BUEIxRU5SX1RJTTNFTl9Nc2sgICAgICAgICAgICAgLyohPCBUaW1lciAzIGNsb2NrIGVuYWJsZSAqLw0KI2RlZmluZSBSQ0NfQVBCMUVOUl9USU00RU5fUG9zICAgICAgICAgICAgICAoMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQVBCMUVOUl9USU00RU5fTXNrICAgICAgICAgICAgICAoMHgxVUwgPDwgUkNDX0FQQjFFTlJfVElNNEVOX1BvcykgICAvKiE8IDB4MDAwMDAwMDQgKi8NCiNkZWZpbmUgUkNDX0FQQjFFTlJfVElNNEVOICAgICAgICAgICAgICAgICAgUkNDX0FQQjFFTlJfVElNNEVOX01zayAgICAgICAgICAgICAvKiE8IFRpbWVyIDQgY2xvY2sgZW5hYmxlICovDQojZGVmaW5lIFJDQ19BUEIxRU5SX1RJTTVFTl9Qb3MgICAgICAgICAgICAgICgzVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19BUEIxRU5SX1RJTTVFTl9Nc2sgICAgICAgICAgICAgICgweDFVTCA8PCBSQ0NfQVBCMUVOUl9USU01RU5fUG9zKSAgIC8qITwgMHgwMDAwMDAwOCAqLw0KI2RlZmluZSBSQ0NfQVBCMUVOUl9USU01RU4gICAgICAgICAgICAgICAgICBSQ0NfQVBCMUVOUl9USU01RU5fTXNrICAgICAgICAgICAgIC8qITwgVGltZXIgNSBjbG9jayBlbmFibGUgKi8NCiNkZWZpbmUgUkNDX0FQQjFFTlJfVElNNkVOX1BvcyAgICAgICAgICAgICAgKDRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0FQQjFFTlJfVElNNkVOX01zayAgICAgICAgICAgICAgKDB4MVVMIDw8IFJDQ19BUEIxRU5SX1RJTTZFTl9Qb3MpICAgLyohPCAweDAwMDAwMDEwICovDQojZGVmaW5lIFJDQ19BUEIxRU5SX1RJTTZFTiAgICAgICAgICAgICAgICAgIFJDQ19BUEIxRU5SX1RJTTZFTl9Nc2sgICAgICAgICAgICAgLyohPCBUaW1lciA2IGNsb2NrIGVuYWJsZSAqLw0KI2RlZmluZSBSQ0NfQVBCMUVOUl9USU03RU5fUG9zICAgICAgICAgICAgICAoNVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQVBCMUVOUl9USU03RU5fTXNrICAgICAgICAgICAgICAoMHgxVUwgPDwgUkNDX0FQQjFFTlJfVElNN0VOX1BvcykgICAvKiE8IDB4MDAwMDAwMjAgKi8NCiNkZWZpbmUgUkNDX0FQQjFFTlJfVElNN0VOICAgICAgICAgICAgICAgICAgUkNDX0FQQjFFTlJfVElNN0VOX01zayAgICAgICAgICAgICAvKiE8IFRpbWVyIDcgY2xvY2sgZW5hYmxlICovDQojZGVmaW5lIFJDQ19BUEIxRU5SX0xDREVOX1BvcyAgICAgICAgICAgICAgICg5VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19BUEIxRU5SX0xDREVOX01zayAgICAgICAgICAgICAgICgweDFVTCA8PCBSQ0NfQVBCMUVOUl9MQ0RFTl9Qb3MpICAgIC8qITwgMHgwMDAwMDIwMCAqLw0KI2RlZmluZSBSQ0NfQVBCMUVOUl9MQ0RFTiAgICAgICAgICAgICAgICAgICBSQ0NfQVBCMUVOUl9MQ0RFTl9Nc2sgICAgICAgICAgICAgIC8qITwgTENEIGNsb2NrIGVuYWJsZSAqLw0KI2RlZmluZSBSQ0NfQVBCMUVOUl9XV0RHRU5fUG9zICAgICAgICAgICAgICAoMTFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQVBCMUVOUl9XV0RHRU5fTXNrICAgICAgICAgICAgICAoMHgxVUwgPDwgUkNDX0FQQjFFTlJfV1dER0VOX1BvcykgICAvKiE8IDB4MDAwMDA4MDAgKi8NCiNkZWZpbmUgUkNDX0FQQjFFTlJfV1dER0VOICAgICAgICAgICAgICAgICAgUkNDX0FQQjFFTlJfV1dER0VOX01zayAgICAgICAgICAgICAvKiE8IFdpbmRvdyBXYXRjaGRvZyBjbG9jayBlbmFibGUgKi8NCiNkZWZpbmUgUkNDX0FQQjFFTlJfU1BJMkVOX1BvcyAgICAgICAgICAgICAgKDE0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0FQQjFFTlJfU1BJMkVOX01zayAgICAgICAgICAgICAgKDB4MVVMIDw8IFJDQ19BUEIxRU5SX1NQSTJFTl9Qb3MpICAgLyohPCAweDAwMDA0MDAwICovDQojZGVmaW5lIFJDQ19BUEIxRU5SX1NQSTJFTiAgICAgICAgICAgICAgICAgIFJDQ19BUEIxRU5SX1NQSTJFTl9Nc2sgICAgICAgICAgICAgLyohPCBTUEkgMiBjbG9jayBlbmFibGUgKi8NCiNkZWZpbmUgUkNDX0FQQjFFTlJfU1BJM0VOX1BvcyAgICAgICAgICAgICAgKDE1VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0FQQjFFTlJfU1BJM0VOX01zayAgICAgICAgICAgICAgKDB4MVVMIDw8IFJDQ19BUEIxRU5SX1NQSTNFTl9Qb3MpICAgLyohPCAweDAwMDA4MDAwICovDQojZGVmaW5lIFJDQ19BUEIxRU5SX1NQSTNFTiAgICAgICAgICAgICAgICAgIFJDQ19BUEIxRU5SX1NQSTNFTl9Nc2sgICAgICAgICAgICAgLyohPCBTUEkgMyBjbG9jayBlbmFibGUgKi8NCiNkZWZpbmUgUkNDX0FQQjFFTlJfVVNBUlQyRU5fUG9zICAgICAgICAgICAgKDE3VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0FQQjFFTlJfVVNBUlQyRU5fTXNrICAgICAgICAgICAgKDB4MVVMIDw8IFJDQ19BUEIxRU5SX1VTQVJUMkVOX1BvcykgLyohPCAweDAwMDIwMDAwICovDQojZGVmaW5lIFJDQ19BUEIxRU5SX1VTQVJUMkVOICAgICAgICAgICAgICAgIFJDQ19BUEIxRU5SX1VTQVJUMkVOX01zayAgICAgICAgICAgLyohPCBVU0FSVCAyIGNsb2NrIGVuYWJsZSAqLw0KI2RlZmluZSBSQ0NfQVBCMUVOUl9VU0FSVDNFTl9Qb3MgICAgICAgICAgICAoMThVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQVBCMUVOUl9VU0FSVDNFTl9Nc2sgICAgICAgICAgICAoMHgxVUwgPDwgUkNDX0FQQjFFTlJfVVNBUlQzRU5fUG9zKSAvKiE8IDB4MDAwNDAwMDAgKi8NCiNkZWZpbmUgUkNDX0FQQjFFTlJfVVNBUlQzRU4gICAgICAgICAgICAgICAgUkNDX0FQQjFFTlJfVVNBUlQzRU5fTXNrICAgICAgICAgICAvKiE8IFVTQVJUIDMgY2xvY2sgZW5hYmxlICovDQojZGVmaW5lIFJDQ19BUEIxRU5SX1VBUlQ0RU5fUG9zICAgICAgICAgICAgICgxOVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19BUEIxRU5SX1VBUlQ0RU5fTXNrICAgICAgICAgICAgICgweDFVTCA8PCBSQ0NfQVBCMUVOUl9VQVJUNEVOX1BvcykgIC8qITwgMHgwMDA4MDAwMCAqLw0KI2RlZmluZSBSQ0NfQVBCMUVOUl9VQVJUNEVOICAgICAgICAgICAgICAgICBSQ0NfQVBCMUVOUl9VQVJUNEVOX01zayAgICAgICAgICAgIC8qITwgVUFSVCA0IGNsb2NrIGVuYWJsZSAqLw0KI2RlZmluZSBSQ0NfQVBCMUVOUl9VQVJUNUVOX1BvcyAgICAgICAgICAgICAoMjBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQVBCMUVOUl9VQVJUNUVOX01zayAgICAgICAgICAgICAoMHgxVUwgPDwgUkNDX0FQQjFFTlJfVUFSVDVFTl9Qb3MpICAvKiE8IDB4MDAxMDAwMDAgKi8NCiNkZWZpbmUgUkNDX0FQQjFFTlJfVUFSVDVFTiAgICAgICAgICAgICAgICAgUkNDX0FQQjFFTlJfVUFSVDVFTl9Nc2sgICAgICAgICAgICAvKiE8IFVBUlQgNSBjbG9jayBlbmFibGUgKi8NCiNkZWZpbmUgUkNDX0FQQjFFTlJfSTJDMUVOX1BvcyAgICAgICAgICAgICAgKDIxVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0FQQjFFTlJfSTJDMUVOX01zayAgICAgICAgICAgICAgKDB4MVVMIDw8IFJDQ19BUEIxRU5SX0kyQzFFTl9Qb3MpICAgLyohPCAweDAwMjAwMDAwICovDQojZGVmaW5lIFJDQ19BUEIxRU5SX0kyQzFFTiAgICAgICAgICAgICAgICAgIFJDQ19BUEIxRU5SX0kyQzFFTl9Nc2sgICAgICAgICAgICAgLyohPCBJMkMgMSBjbG9jayBlbmFibGUgKi8NCiNkZWZpbmUgUkNDX0FQQjFFTlJfSTJDMkVOX1BvcyAgICAgICAgICAgICAgKDIyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0FQQjFFTlJfSTJDMkVOX01zayAgICAgICAgICAgICAgKDB4MVVMIDw8IFJDQ19BUEIxRU5SX0kyQzJFTl9Qb3MpICAgLyohPCAweDAwNDAwMDAwICovDQojZGVmaW5lIFJDQ19BUEIxRU5SX0kyQzJFTiAgICAgICAgICAgICAgICAgIFJDQ19BUEIxRU5SX0kyQzJFTl9Nc2sgICAgICAgICAgICAgLyohPCBJMkMgMiBjbG9jayBlbmFibGUgKi8NCiNkZWZpbmUgUkNDX0FQQjFFTlJfVVNCRU5fUG9zICAgICAgICAgICAgICAgKDIzVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0FQQjFFTlJfVVNCRU5fTXNrICAgICAgICAgICAgICAgKDB4MVVMIDw8IFJDQ19BUEIxRU5SX1VTQkVOX1BvcykgICAgLyohPCAweDAwODAwMDAwICovDQojZGVmaW5lIFJDQ19BUEIxRU5SX1VTQkVOICAgICAgICAgICAgICAgICAgIFJDQ19BUEIxRU5SX1VTQkVOX01zayAgICAgICAgICAgICAgLyohPCBVU0IgY2xvY2sgZW5hYmxlICovDQojZGVmaW5lIFJDQ19BUEIxRU5SX1BXUkVOX1BvcyAgICAgICAgICAgICAgICgyOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19BUEIxRU5SX1BXUkVOX01zayAgICAgICAgICAgICAgICgweDFVTCA8PCBSQ0NfQVBCMUVOUl9QV1JFTl9Qb3MpICAgIC8qITwgMHgxMDAwMDAwMCAqLw0KI2RlZmluZSBSQ0NfQVBCMUVOUl9QV1JFTiAgICAgICAgICAgICAgICAgICBSQ0NfQVBCMUVOUl9QV1JFTl9Nc2sgICAgICAgICAgICAgIC8qITwgUG93ZXIgaW50ZXJmYWNlIGNsb2NrIGVuYWJsZSAqLw0KI2RlZmluZSBSQ0NfQVBCMUVOUl9EQUNFTl9Qb3MgICAgICAgICAgICAgICAoMjlVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQVBCMUVOUl9EQUNFTl9Nc2sgICAgICAgICAgICAgICAoMHgxVUwgPDwgUkNDX0FQQjFFTlJfREFDRU5fUG9zKSAgICAvKiE8IDB4MjAwMDAwMDAgKi8NCiNkZWZpbmUgUkNDX0FQQjFFTlJfREFDRU4gICAgICAgICAgICAgICAgICAgUkNDX0FQQjFFTlJfREFDRU5fTXNrICAgICAgICAgICAgICAvKiE8IERBQyBpbnRlcmZhY2UgY2xvY2sgZW5hYmxlICovDQojZGVmaW5lIFJDQ19BUEIxRU5SX0NPTVBFTl9Qb3MgICAgICAgICAgICAgICgzMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19BUEIxRU5SX0NPTVBFTl9Nc2sgICAgICAgICAgICAgICgweDFVTCA8PCBSQ0NfQVBCMUVOUl9DT01QRU5fUG9zKSAgIC8qITwgMHg4MDAwMDAwMCAqLw0KI2RlZmluZSBSQ0NfQVBCMUVOUl9DT01QRU4gICAgICAgICAgICAgICAgICBSQ0NfQVBCMUVOUl9DT01QRU5fTXNrICAgICAgICAgICAgIC8qITwgQ29tcGFyYXRvciBpbnRlcmZhY2UgY2xvY2sgZW5hYmxlICovDQoNCi8qKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBSQ0NfQUhCTFBFTlIgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKiovDQojZGVmaW5lIFJDQ19BSEJMUEVOUl9HUElPQUxQRU5fUG9zICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19BSEJMUEVOUl9HUElPQUxQRU5fTXNrICAgICAgICAgICgweDFVTCA8PCBSQ0NfQUhCTFBFTlJfR1BJT0FMUEVOX1BvcykgLyohPCAweDAwMDAwMDAxICovDQojZGVmaW5lIFJDQ19BSEJMUEVOUl9HUElPQUxQRU4gICAgICAgICAgICAgIFJDQ19BSEJMUEVOUl9HUElPQUxQRU5fTXNrICAgICAgICAgLyohPCBHUElPIHBvcnQgQSBjbG9jayBlbmFibGVkIGluIHNsZWVwIG1vZGUgKi8NCiNkZWZpbmUgUkNDX0FIQkxQRU5SX0dQSU9CTFBFTl9Qb3MgICAgICAgICAgKDFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0FIQkxQRU5SX0dQSU9CTFBFTl9Nc2sgICAgICAgICAgKDB4MVVMIDw8IFJDQ19BSEJMUEVOUl9HUElPQkxQRU5fUG9zKSAvKiE8IDB4MDAwMDAwMDIgKi8NCiNkZWZpbmUgUkNDX0FIQkxQRU5SX0dQSU9CTFBFTiAgICAgICAgICAgICAgUkNDX0FIQkxQRU5SX0dQSU9CTFBFTl9Nc2sgICAgICAgICAvKiE8IEdQSU8gcG9ydCBCIGNsb2NrIGVuYWJsZWQgaW4gc2xlZXAgbW9kZSAqLw0KI2RlZmluZSBSQ0NfQUhCTFBFTlJfR1BJT0NMUEVOX1BvcyAgICAgICAgICAoMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQUhCTFBFTlJfR1BJT0NMUEVOX01zayAgICAgICAgICAoMHgxVUwgPDwgUkNDX0FIQkxQRU5SX0dQSU9DTFBFTl9Qb3MpIC8qITwgMHgwMDAwMDAwNCAqLw0KI2RlZmluZSBSQ0NfQUhCTFBFTlJfR1BJT0NMUEVOICAgICAgICAgICAgICBSQ0NfQUhCTFBFTlJfR1BJT0NMUEVOX01zayAgICAgICAgIC8qITwgR1BJTyBwb3J0IEMgY2xvY2sgZW5hYmxlZCBpbiBzbGVlcCBtb2RlICovDQojZGVmaW5lIFJDQ19BSEJMUEVOUl9HUElPRExQRU5fUG9zICAgICAgICAgICgzVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19BSEJMUEVOUl9HUElPRExQRU5fTXNrICAgICAgICAgICgweDFVTCA8PCBSQ0NfQUhCTFBFTlJfR1BJT0RMUEVOX1BvcykgLyohPCAweDAwMDAwMDA4ICovDQojZGVmaW5lIFJDQ19BSEJMUEVOUl9HUElPRExQRU4gICAgICAgICAgICAgIFJDQ19BSEJMUEVOUl9HUElPRExQRU5fTXNrICAgICAgICAgLyohPCBHUElPIHBvcnQgRCBjbG9jayBlbmFibGVkIGluIHNsZWVwIG1vZGUgKi8NCiNkZWZpbmUgUkNDX0FIQkxQRU5SX0dQSU9FTFBFTl9Qb3MgICAgICAgICAgKDRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0FIQkxQRU5SX0dQSU9FTFBFTl9Nc2sgICAgICAgICAgKDB4MVVMIDw8IFJDQ19BSEJMUEVOUl9HUElPRUxQRU5fUG9zKSAvKiE8IDB4MDAwMDAwMTAgKi8NCiNkZWZpbmUgUkNDX0FIQkxQRU5SX0dQSU9FTFBFTiAgICAgICAgICAgICAgUkNDX0FIQkxQRU5SX0dQSU9FTFBFTl9Nc2sgICAgICAgICAvKiE8IEdQSU8gcG9ydCBFIGNsb2NrIGVuYWJsZWQgaW4gc2xlZXAgbW9kZSAqLw0KI2RlZmluZSBSQ0NfQUhCTFBFTlJfR1BJT0hMUEVOX1BvcyAgICAgICAgICAoNVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQUhCTFBFTlJfR1BJT0hMUEVOX01zayAgICAgICAgICAoMHgxVUwgPDwgUkNDX0FIQkxQRU5SX0dQSU9ITFBFTl9Qb3MpIC8qITwgMHgwMDAwMDAyMCAqLw0KI2RlZmluZSBSQ0NfQUhCTFBFTlJfR1BJT0hMUEVOICAgICAgICAgICAgICBSQ0NfQUhCTFBFTlJfR1BJT0hMUEVOX01zayAgICAgICAgIC8qITwgR1BJTyBwb3J0IEggY2xvY2sgZW5hYmxlZCBpbiBzbGVlcCBtb2RlICovDQojZGVmaW5lIFJDQ19BSEJMUEVOUl9HUElPRkxQRU5fUG9zICAgICAgICAgICg2VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19BSEJMUEVOUl9HUElPRkxQRU5fTXNrICAgICAgICAgICgweDFVTCA8PCBSQ0NfQUhCTFBFTlJfR1BJT0ZMUEVOX1BvcykgLyohPCAweDAwMDAwMDQwICovDQojZGVmaW5lIFJDQ19BSEJMUEVOUl9HUElPRkxQRU4gICAgICAgICAgICAgIFJDQ19BSEJMUEVOUl9HUElPRkxQRU5fTXNrICAgICAgICAgLyohPCBHUElPIHBvcnQgRiBjbG9jayBlbmFibGVkIGluIHNsZWVwIG1vZGUgKi8NCiNkZWZpbmUgUkNDX0FIQkxQRU5SX0dQSU9HTFBFTl9Qb3MgICAgICAgICAgKDdVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0FIQkxQRU5SX0dQSU9HTFBFTl9Nc2sgICAgICAgICAgKDB4MVVMIDw8IFJDQ19BSEJMUEVOUl9HUElPR0xQRU5fUG9zKSAvKiE8IDB4MDAwMDAwODAgKi8NCiNkZWZpbmUgUkNDX0FIQkxQRU5SX0dQSU9HTFBFTiAgICAgICAgICAgICAgUkNDX0FIQkxQRU5SX0dQSU9HTFBFTl9Nc2sgICAgICAgICAvKiE8IEdQSU8gcG9ydCBHIGNsb2NrIGVuYWJsZWQgaW4gc2xlZXAgbW9kZSAqLw0KI2RlZmluZSBSQ0NfQUhCTFBFTlJfQ1JDTFBFTl9Qb3MgICAgICAgICAgICAoMTJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQUhCTFBFTlJfQ1JDTFBFTl9Nc2sgICAgICAgICAgICAoMHgxVUwgPDwgUkNDX0FIQkxQRU5SX0NSQ0xQRU5fUG9zKSAvKiE8IDB4MDAwMDEwMDAgKi8NCiNkZWZpbmUgUkNDX0FIQkxQRU5SX0NSQ0xQRU4gICAgICAgICAgICAgICAgUkNDX0FIQkxQRU5SX0NSQ0xQRU5fTXNrICAgICAgICAgICAvKiE8IENSQyBjbG9jayBlbmFibGVkIGluIHNsZWVwIG1vZGUgKi8NCiNkZWZpbmUgUkNDX0FIQkxQRU5SX0ZMSVRGTFBFTl9Qb3MgICAgICAgICAgKDE1VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0FIQkxQRU5SX0ZMSVRGTFBFTl9Nc2sgICAgICAgICAgKDB4MVVMIDw8IFJDQ19BSEJMUEVOUl9GTElURkxQRU5fUG9zKSAvKiE8IDB4MDAwMDgwMDAgKi8NCiNkZWZpbmUgUkNDX0FIQkxQRU5SX0ZMSVRGTFBFTiAgICAgICAgICAgICAgUkNDX0FIQkxQRU5SX0ZMSVRGTFBFTl9Nc2sgICAgICAgICAvKiE8IEZsYXNoIEludGVyZmFjZSBjbG9jayBlbmFibGVkIGluIHNsZWVwIG1vZGUNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKGhhcyBlZmZlY3Qgb25seSB3aGVuIHRoZSBGbGFzaCBtZW1vcnkgaXMNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGluIHBvd2VyIGRvd24gbW9kZSkgKi8NCiNkZWZpbmUgUkNDX0FIQkxQRU5SX1NSQU1MUEVOX1BvcyAgICAgICAgICAgKDE2VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0FIQkxQRU5SX1NSQU1MUEVOX01zayAgICAgICAgICAgKDB4MVVMIDw8IFJDQ19BSEJMUEVOUl9TUkFNTFBFTl9Qb3MpIC8qITwgMHgwMDAxMDAwMCAqLw0KI2RlZmluZSBSQ0NfQUhCTFBFTlJfU1JBTUxQRU4gICAgICAgICAgICAgICBSQ0NfQUhCTFBFTlJfU1JBTUxQRU5fTXNrICAgICAgICAgIC8qITwgU1JBTSBjbG9jayBlbmFibGVkIGluIHNsZWVwIG1vZGUgKi8NCiNkZWZpbmUgUkNDX0FIQkxQRU5SX0RNQTFMUEVOX1BvcyAgICAgICAgICAgKDI0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0FIQkxQRU5SX0RNQTFMUEVOX01zayAgICAgICAgICAgKDB4MVVMIDw8IFJDQ19BSEJMUEVOUl9ETUExTFBFTl9Qb3MpIC8qITwgMHgwMTAwMDAwMCAqLw0KI2RlZmluZSBSQ0NfQUhCTFBFTlJfRE1BMUxQRU4gICAgICAgICAgICAgICBSQ0NfQUhCTFBFTlJfRE1BMUxQRU5fTXNrICAgICAgICAgIC8qITwgRE1BMSBjbG9jayBlbmFibGVkIGluIHNsZWVwIG1vZGUgKi8NCiNkZWZpbmUgUkNDX0FIQkxQRU5SX0RNQTJMUEVOX1BvcyAgICAgICAgICAgKDI1VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0FIQkxQRU5SX0RNQTJMUEVOX01zayAgICAgICAgICAgKDB4MVVMIDw8IFJDQ19BSEJMUEVOUl9ETUEyTFBFTl9Qb3MpIC8qITwgMHgwMjAwMDAwMCAqLw0KI2RlZmluZSBSQ0NfQUhCTFBFTlJfRE1BMkxQRU4gICAgICAgICAgICAgICBSQ0NfQUhCTFBFTlJfRE1BMkxQRU5fTXNrICAgICAgICAgIC8qITwgRE1BMiBjbG9jayBlbmFibGVkIGluIHNsZWVwIG1vZGUgKi8NCg0KLyoqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFJDQ19BUEIyTFBFTlIgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKi8NCiNkZWZpbmUgUkNDX0FQQjJMUEVOUl9TWVNDRkdMUEVOX1BvcyAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0FQQjJMUEVOUl9TWVNDRkdMUEVOX01zayAgICAgICAgKDB4MVVMIDw8IFJDQ19BUEIyTFBFTlJfU1lTQ0ZHTFBFTl9Qb3MpIC8qITwgMHgwMDAwMDAwMSAqLw0KI2RlZmluZSBSQ0NfQVBCMkxQRU5SX1NZU0NGR0xQRU4gICAgICAgICAgICBSQ0NfQVBCMkxQRU5SX1NZU0NGR0xQRU5fTXNrICAgICAgIC8qITwgU3lzdGVtIENvbmZpZ3VyYXRpb24gU1lTQ0ZHIGNsb2NrIGVuYWJsZWQgaW4gc2xlZXAgbW9kZSAqLw0KI2RlZmluZSBSQ0NfQVBCMkxQRU5SX1RJTTlMUEVOX1BvcyAgICAgICAgICAoMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQVBCMkxQRU5SX1RJTTlMUEVOX01zayAgICAgICAgICAoMHgxVUwgPDwgUkNDX0FQQjJMUEVOUl9USU05TFBFTl9Qb3MpIC8qITwgMHgwMDAwMDAwNCAqLw0KI2RlZmluZSBSQ0NfQVBCMkxQRU5SX1RJTTlMUEVOICAgICAgICAgICAgICBSQ0NfQVBCMkxQRU5SX1RJTTlMUEVOX01zayAgICAgICAgIC8qITwgVElNOSBpbnRlcmZhY2UgY2xvY2sgZW5hYmxlZCBpbiBzbGVlcCBtb2RlICovDQojZGVmaW5lIFJDQ19BUEIyTFBFTlJfVElNMTBMUEVOX1BvcyAgICAgICAgICgzVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19BUEIyTFBFTlJfVElNMTBMUEVOX01zayAgICAgICAgICgweDFVTCA8PCBSQ0NfQVBCMkxQRU5SX1RJTTEwTFBFTl9Qb3MpIC8qITwgMHgwMDAwMDAwOCAqLw0KI2RlZmluZSBSQ0NfQVBCMkxQRU5SX1RJTTEwTFBFTiAgICAgICAgICAgICBSQ0NfQVBCMkxQRU5SX1RJTTEwTFBFTl9Nc2sgICAgICAgIC8qITwgVElNMTAgaW50ZXJmYWNlIGNsb2NrIGVuYWJsZWQgaW4gc2xlZXAgbW9kZSAqLw0KI2RlZmluZSBSQ0NfQVBCMkxQRU5SX1RJTTExTFBFTl9Qb3MgICAgICAgICAoNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQVBCMkxQRU5SX1RJTTExTFBFTl9Nc2sgICAgICAgICAoMHgxVUwgPDwgUkNDX0FQQjJMUEVOUl9USU0xMUxQRU5fUG9zKSAvKiE8IDB4MDAwMDAwMTAgKi8NCiNkZWZpbmUgUkNDX0FQQjJMUEVOUl9USU0xMUxQRU4gICAgICAgICAgICAgUkNDX0FQQjJMUEVOUl9USU0xMUxQRU5fTXNrICAgICAgICAvKiE8IFRJTTExIFRpbWVyIGNsb2NrIGVuYWJsZWQgaW4gc2xlZXAgbW9kZSAqLw0KI2RlZmluZSBSQ0NfQVBCMkxQRU5SX0FEQzFMUEVOX1BvcyAgICAgICAgICAoOVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQVBCMkxQRU5SX0FEQzFMUEVOX01zayAgICAgICAgICAoMHgxVUwgPDwgUkNDX0FQQjJMUEVOUl9BREMxTFBFTl9Qb3MpIC8qITwgMHgwMDAwMDIwMCAqLw0KI2RlZmluZSBSQ0NfQVBCMkxQRU5SX0FEQzFMUEVOICAgICAgICAgICAgICBSQ0NfQVBCMkxQRU5SX0FEQzFMUEVOX01zayAgICAgICAgIC8qITwgQURDMSBjbG9jayBlbmFibGVkIGluIHNsZWVwIG1vZGUgKi8NCiNkZWZpbmUgUkNDX0FQQjJMUEVOUl9TUEkxTFBFTl9Qb3MgICAgICAgICAgKDEyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0FQQjJMUEVOUl9TUEkxTFBFTl9Nc2sgICAgICAgICAgKDB4MVVMIDw8IFJDQ19BUEIyTFBFTlJfU1BJMUxQRU5fUG9zKSAvKiE8IDB4MDAwMDEwMDAgKi8NCiNkZWZpbmUgUkNDX0FQQjJMUEVOUl9TUEkxTFBFTiAgICAgICAgICAgICAgUkNDX0FQQjJMUEVOUl9TUEkxTFBFTl9Nc2sgICAgICAgICAvKiE8IFNQSTEgY2xvY2sgZW5hYmxlZCBpbiBzbGVlcCBtb2RlICovDQojZGVmaW5lIFJDQ19BUEIyTFBFTlJfVVNBUlQxTFBFTl9Qb3MgICAgICAgICgxNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19BUEIyTFBFTlJfVVNBUlQxTFBFTl9Nc2sgICAgICAgICgweDFVTCA8PCBSQ0NfQVBCMkxQRU5SX1VTQVJUMUxQRU5fUG9zKSAvKiE8IDB4MDAwMDQwMDAgKi8NCiNkZWZpbmUgUkNDX0FQQjJMUEVOUl9VU0FSVDFMUEVOICAgICAgICAgICAgUkNDX0FQQjJMUEVOUl9VU0FSVDFMUEVOX01zayAgICAgICAvKiE8IFVTQVJUMSBjbG9jayBlbmFibGVkIGluIHNsZWVwIG1vZGUgKi8NCg0KLyoqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgUkNDX0FQQjFMUEVOUiByZWdpc3RlciAgKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgUkNDX0FQQjFMUEVOUl9USU0yTFBFTl9Qb3MgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0FQQjFMUEVOUl9USU0yTFBFTl9Nc2sgICAgICAgICAgKDB4MVVMIDw8IFJDQ19BUEIxTFBFTlJfVElNMkxQRU5fUG9zKSAvKiE8IDB4MDAwMDAwMDEgKi8NCiNkZWZpbmUgUkNDX0FQQjFMUEVOUl9USU0yTFBFTiAgICAgICAgICAgICAgUkNDX0FQQjFMUEVOUl9USU0yTFBFTl9Nc2sgICAgICAgICAvKiE8IFRpbWVyIDIgY2xvY2sgZW5hYmxlZCBpbiBzbGVlcCBtb2RlICovDQojZGVmaW5lIFJDQ19BUEIxTFBFTlJfVElNM0xQRU5fUG9zICAgICAgICAgICgxVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19BUEIxTFBFTlJfVElNM0xQRU5fTXNrICAgICAgICAgICgweDFVTCA8PCBSQ0NfQVBCMUxQRU5SX1RJTTNMUEVOX1BvcykgLyohPCAweDAwMDAwMDAyICovDQojZGVmaW5lIFJDQ19BUEIxTFBFTlJfVElNM0xQRU4gICAgICAgICAgICAgIFJDQ19BUEIxTFBFTlJfVElNM0xQRU5fTXNrICAgICAgICAgLyohPCBUaW1lciAzIGNsb2NrIGVuYWJsZWQgaW4gc2xlZXAgbW9kZSAqLw0KI2RlZmluZSBSQ0NfQVBCMUxQRU5SX1RJTTRMUEVOX1BvcyAgICAgICAgICAoMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQVBCMUxQRU5SX1RJTTRMUEVOX01zayAgICAgICAgICAoMHgxVUwgPDwgUkNDX0FQQjFMUEVOUl9USU00TFBFTl9Qb3MpIC8qITwgMHgwMDAwMDAwNCAqLw0KI2RlZmluZSBSQ0NfQVBCMUxQRU5SX1RJTTRMUEVOICAgICAgICAgICAgICBSQ0NfQVBCMUxQRU5SX1RJTTRMUEVOX01zayAgICAgICAgIC8qITwgVGltZXIgNCBjbG9jayBlbmFibGVkIGluIHNsZWVwIG1vZGUgKi8NCiNkZWZpbmUgUkNDX0FQQjFMUEVOUl9USU01TFBFTl9Qb3MgICAgICAgICAgKDNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0FQQjFMUEVOUl9USU01TFBFTl9Nc2sgICAgICAgICAgKDB4MVVMIDw8IFJDQ19BUEIxTFBFTlJfVElNNUxQRU5fUG9zKSAvKiE8IDB4MDAwMDAwMDggKi8NCiNkZWZpbmUgUkNDX0FQQjFMUEVOUl9USU01TFBFTiAgICAgICAgICAgICAgUkNDX0FQQjFMUEVOUl9USU01TFBFTl9Nc2sgICAgICAgICAvKiE8IFRpbWVyIDUgY2xvY2sgZW5hYmxlZCBpbiBzbGVlcCBtb2RlICovDQojZGVmaW5lIFJDQ19BUEIxTFBFTlJfVElNNkxQRU5fUG9zICAgICAgICAgICg0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19BUEIxTFBFTlJfVElNNkxQRU5fTXNrICAgICAgICAgICgweDFVTCA8PCBSQ0NfQVBCMUxQRU5SX1RJTTZMUEVOX1BvcykgLyohPCAweDAwMDAwMDEwICovDQojZGVmaW5lIFJDQ19BUEIxTFBFTlJfVElNNkxQRU4gICAgICAgICAgICAgIFJDQ19BUEIxTFBFTlJfVElNNkxQRU5fTXNrICAgICAgICAgLyohPCBUaW1lciA2IGNsb2NrIGVuYWJsZWQgaW4gc2xlZXAgbW9kZSAqLw0KI2RlZmluZSBSQ0NfQVBCMUxQRU5SX1RJTTdMUEVOX1BvcyAgICAgICAgICAoNVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQVBCMUxQRU5SX1RJTTdMUEVOX01zayAgICAgICAgICAoMHgxVUwgPDwgUkNDX0FQQjFMUEVOUl9USU03TFBFTl9Qb3MpIC8qITwgMHgwMDAwMDAyMCAqLw0KI2RlZmluZSBSQ0NfQVBCMUxQRU5SX1RJTTdMUEVOICAgICAgICAgICAgICBSQ0NfQVBCMUxQRU5SX1RJTTdMUEVOX01zayAgICAgICAgIC8qITwgVGltZXIgNyBjbG9jayBlbmFibGVkIGluIHNsZWVwIG1vZGUgKi8NCiNkZWZpbmUgUkNDX0FQQjFMUEVOUl9MQ0RMUEVOX1BvcyAgICAgICAgICAgKDlVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0FQQjFMUEVOUl9MQ0RMUEVOX01zayAgICAgICAgICAgKDB4MVVMIDw8IFJDQ19BUEIxTFBFTlJfTENETFBFTl9Qb3MpIC8qITwgMHgwMDAwMDIwMCAqLw0KI2RlZmluZSBSQ0NfQVBCMUxQRU5SX0xDRExQRU4gICAgICAgICAgICAgICBSQ0NfQVBCMUxQRU5SX0xDRExQRU5fTXNrICAgICAgICAgIC8qITwgTENEIGNsb2NrIGVuYWJsZWQgaW4gc2xlZXAgbW9kZSAqLw0KI2RlZmluZSBSQ0NfQVBCMUxQRU5SX1dXREdMUEVOX1BvcyAgICAgICAgICAoMTFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQVBCMUxQRU5SX1dXREdMUEVOX01zayAgICAgICAgICAoMHgxVUwgPDwgUkNDX0FQQjFMUEVOUl9XV0RHTFBFTl9Qb3MpIC8qITwgMHgwMDAwMDgwMCAqLw0KI2RlZmluZSBSQ0NfQVBCMUxQRU5SX1dXREdMUEVOICAgICAgICAgICAgICBSQ0NfQVBCMUxQRU5SX1dXREdMUEVOX01zayAgICAgICAgIC8qITwgV2luZG93IFdhdGNoZG9nIGNsb2NrIGVuYWJsZWQgaW4gc2xlZXAgbW9kZSAqLw0KI2RlZmluZSBSQ0NfQVBCMUxQRU5SX1NQSTJMUEVOX1BvcyAgICAgICAgICAoMTRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQVBCMUxQRU5SX1NQSTJMUEVOX01zayAgICAgICAgICAoMHgxVUwgPDwgUkNDX0FQQjFMUEVOUl9TUEkyTFBFTl9Qb3MpIC8qITwgMHgwMDAwNDAwMCAqLw0KI2RlZmluZSBSQ0NfQVBCMUxQRU5SX1NQSTJMUEVOICAgICAgICAgICAgICBSQ0NfQVBCMUxQRU5SX1NQSTJMUEVOX01zayAgICAgICAgIC8qITwgU1BJIDIgY2xvY2sgZW5hYmxlZCBpbiBzbGVlcCBtb2RlICovDQojZGVmaW5lIFJDQ19BUEIxTFBFTlJfU1BJM0xQRU5fUG9zICAgICAgICAgICgxNVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19BUEIxTFBFTlJfU1BJM0xQRU5fTXNrICAgICAgICAgICgweDFVTCA8PCBSQ0NfQVBCMUxQRU5SX1NQSTNMUEVOX1BvcykgLyohPCAweDAwMDA4MDAwICovDQojZGVmaW5lIFJDQ19BUEIxTFBFTlJfU1BJM0xQRU4gICAgICAgICAgICAgIFJDQ19BUEIxTFBFTlJfU1BJM0xQRU5fTXNrICAgICAgICAgLyohPCBTUEkgMyBjbG9jayBlbmFibGVkIGluIHNsZWVwIG1vZGUgKi8NCiNkZWZpbmUgUkNDX0FQQjFMUEVOUl9VU0FSVDJMUEVOX1BvcyAgICAgICAgKDE3VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0FQQjFMUEVOUl9VU0FSVDJMUEVOX01zayAgICAgICAgKDB4MVVMIDw8IFJDQ19BUEIxTFBFTlJfVVNBUlQyTFBFTl9Qb3MpIC8qITwgMHgwMDAyMDAwMCAqLw0KI2RlZmluZSBSQ0NfQVBCMUxQRU5SX1VTQVJUMkxQRU4gICAgICAgICAgICBSQ0NfQVBCMUxQRU5SX1VTQVJUMkxQRU5fTXNrICAgICAgIC8qITwgVVNBUlQgMiBjbG9jayBlbmFibGVkIGluIHNsZWVwIG1vZGUgKi8NCiNkZWZpbmUgUkNDX0FQQjFMUEVOUl9VU0FSVDNMUEVOX1BvcyAgICAgICAgKDE4VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0FQQjFMUEVOUl9VU0FSVDNMUEVOX01zayAgICAgICAgKDB4MVVMIDw8IFJDQ19BUEIxTFBFTlJfVVNBUlQzTFBFTl9Qb3MpIC8qITwgMHgwMDA0MDAwMCAqLw0KI2RlZmluZSBSQ0NfQVBCMUxQRU5SX1VTQVJUM0xQRU4gICAgICAgICAgICBSQ0NfQVBCMUxQRU5SX1VTQVJUM0xQRU5fTXNrICAgICAgIC8qITwgVVNBUlQgMyBjbG9jayBlbmFibGVkIGluIHNsZWVwIG1vZGUgKi8NCiNkZWZpbmUgUkNDX0FQQjFMUEVOUl9VQVJUNExQRU5fUG9zICAgICAgICAgKDE5VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0FQQjFMUEVOUl9VQVJUNExQRU5fTXNrICAgICAgICAgKDB4MVVMIDw8IFJDQ19BUEIxTFBFTlJfVUFSVDRMUEVOX1BvcykgLyohPCAweDAwMDgwMDAwICovDQojZGVmaW5lIFJDQ19BUEIxTFBFTlJfVUFSVDRMUEVOICAgICAgICAgICAgIFJDQ19BUEIxTFBFTlJfVUFSVDRMUEVOX01zayAgICAgICAgLyohPCBVQVJUIDQgY2xvY2sgZW5hYmxlZCBpbiBzbGVlcCBtb2RlICovDQojZGVmaW5lIFJDQ19BUEIxTFBFTlJfVUFSVDVMUEVOX1BvcyAgICAgICAgICgyMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19BUEIxTFBFTlJfVUFSVDVMUEVOX01zayAgICAgICAgICgweDFVTCA8PCBSQ0NfQVBCMUxQRU5SX1VBUlQ1TFBFTl9Qb3MpIC8qITwgMHgwMDEwMDAwMCAqLw0KI2RlZmluZSBSQ0NfQVBCMUxQRU5SX1VBUlQ1TFBFTiAgICAgICAgICAgICBSQ0NfQVBCMUxQRU5SX1VBUlQ1TFBFTl9Nc2sgICAgICAgIC8qITwgVUFSVCA1IGNsb2NrIGVuYWJsZWQgaW4gc2xlZXAgbW9kZSAqLw0KI2RlZmluZSBSQ0NfQVBCMUxQRU5SX0kyQzFMUEVOX1BvcyAgICAgICAgICAoMjFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQVBCMUxQRU5SX0kyQzFMUEVOX01zayAgICAgICAgICAoMHgxVUwgPDwgUkNDX0FQQjFMUEVOUl9JMkMxTFBFTl9Qb3MpIC8qITwgMHgwMDIwMDAwMCAqLw0KI2RlZmluZSBSQ0NfQVBCMUxQRU5SX0kyQzFMUEVOICAgICAgICAgICAgICBSQ0NfQVBCMUxQRU5SX0kyQzFMUEVOX01zayAgICAgICAgIC8qITwgSTJDIDEgY2xvY2sgZW5hYmxlZCBpbiBzbGVlcCBtb2RlICovDQojZGVmaW5lIFJDQ19BUEIxTFBFTlJfSTJDMkxQRU5fUG9zICAgICAgICAgICgyMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19BUEIxTFBFTlJfSTJDMkxQRU5fTXNrICAgICAgICAgICgweDFVTCA8PCBSQ0NfQVBCMUxQRU5SX0kyQzJMUEVOX1BvcykgLyohPCAweDAwNDAwMDAwICovDQojZGVmaW5lIFJDQ19BUEIxTFBFTlJfSTJDMkxQRU4gICAgICAgICAgICAgIFJDQ19BUEIxTFBFTlJfSTJDMkxQRU5fTXNrICAgICAgICAgLyohPCBJMkMgMiBjbG9jayBlbmFibGVkIGluIHNsZWVwIG1vZGUgKi8NCiNkZWZpbmUgUkNDX0FQQjFMUEVOUl9VU0JMUEVOX1BvcyAgICAgICAgICAgKDIzVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0FQQjFMUEVOUl9VU0JMUEVOX01zayAgICAgICAgICAgKDB4MVVMIDw8IFJDQ19BUEIxTFBFTlJfVVNCTFBFTl9Qb3MpIC8qITwgMHgwMDgwMDAwMCAqLw0KI2RlZmluZSBSQ0NfQVBCMUxQRU5SX1VTQkxQRU4gICAgICAgICAgICAgICBSQ0NfQVBCMUxQRU5SX1VTQkxQRU5fTXNrICAgICAgICAgIC8qITwgVVNCIGNsb2NrIGVuYWJsZWQgaW4gc2xlZXAgbW9kZSAqLw0KI2RlZmluZSBSQ0NfQVBCMUxQRU5SX1BXUkxQRU5fUG9zICAgICAgICAgICAoMjhVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQVBCMUxQRU5SX1BXUkxQRU5fTXNrICAgICAgICAgICAoMHgxVUwgPDwgUkNDX0FQQjFMUEVOUl9QV1JMUEVOX1BvcykgLyohPCAweDEwMDAwMDAwICovDQojZGVmaW5lIFJDQ19BUEIxTFBFTlJfUFdSTFBFTiAgICAgICAgICAgICAgIFJDQ19BUEIxTFBFTlJfUFdSTFBFTl9Nc2sgICAgICAgICAgLyohPCBQb3dlciBpbnRlcmZhY2UgY2xvY2sgZW5hYmxlZCBpbiBzbGVlcCBtb2RlICovDQojZGVmaW5lIFJDQ19BUEIxTFBFTlJfREFDTFBFTl9Qb3MgICAgICAgICAgICgyOVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19BUEIxTFBFTlJfREFDTFBFTl9Nc2sgICAgICAgICAgICgweDFVTCA8PCBSQ0NfQVBCMUxQRU5SX0RBQ0xQRU5fUG9zKSAvKiE8IDB4MjAwMDAwMDAgKi8NCiNkZWZpbmUgUkNDX0FQQjFMUEVOUl9EQUNMUEVOICAgICAgICAgICAgICAgUkNDX0FQQjFMUEVOUl9EQUNMUEVOX01zayAgICAgICAgICAvKiE8IERBQyBpbnRlcmZhY2UgY2xvY2sgZW5hYmxlZCBpbiBzbGVlcCBtb2RlICovDQojZGVmaW5lIFJDQ19BUEIxTFBFTlJfQ09NUExQRU5fUG9zICAgICAgICAgICgzMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19BUEIxTFBFTlJfQ09NUExQRU5fTXNrICAgICAgICAgICgweDFVTCA8PCBSQ0NfQVBCMUxQRU5SX0NPTVBMUEVOX1BvcykgLyohPCAweDgwMDAwMDAwICovDQojZGVmaW5lIFJDQ19BUEIxTFBFTlJfQ09NUExQRU4gICAgICAgICAgICAgIFJDQ19BUEIxTFBFTlJfQ09NUExQRU5fTXNrICAgICAgICAgLyohPCBDb21wYXJhdG9yIGludGVyZmFjZSBjbG9jayBlbmFibGVkIGluIHNsZWVwIG1vZGUqLw0KDQovKioqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFJDQ19DU1IgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBSQ0NfQ1NSX0xTSU9OX1BvcyAgICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQ1NSX0xTSU9OX01zayAgICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgUkNDX0NTUl9MU0lPTl9Qb3MpICAgICAgICAvKiE8IDB4MDAwMDAwMDEgKi8NCiNkZWZpbmUgUkNDX0NTUl9MU0lPTiAgICAgICAgICAgICAgICAgICAgICAgUkNDX0NTUl9MU0lPTl9Nc2sgICAgICAgICAgICAgICAgICAvKiE8IEludGVybmFsIExvdyBTcGVlZCBvc2NpbGxhdG9yIGVuYWJsZSAqLw0KI2RlZmluZSBSQ0NfQ1NSX0xTSVJEWV9Qb3MgICAgICAgICAgICAgICAgICAoMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQ1NSX0xTSVJEWV9Nc2sgICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgUkNDX0NTUl9MU0lSRFlfUG9zKSAgICAgICAvKiE8IDB4MDAwMDAwMDIgKi8NCiNkZWZpbmUgUkNDX0NTUl9MU0lSRFkgICAgICAgICAgICAgICAgICAgICAgUkNDX0NTUl9MU0lSRFlfTXNrICAgICAgICAgICAgICAgICAvKiE8IEludGVybmFsIExvdyBTcGVlZCBvc2NpbGxhdG9yIFJlYWR5ICovDQoNCiNkZWZpbmUgUkNDX0NTUl9MU0VPTl9Qb3MgICAgICAgICAgICAgICAgICAgKDhVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0NTUl9MU0VPTl9Nc2sgICAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IFJDQ19DU1JfTFNFT05fUG9zKSAgICAgICAgLyohPCAweDAwMDAwMTAwICovDQojZGVmaW5lIFJDQ19DU1JfTFNFT04gICAgICAgICAgICAgICAgICAgICAgIFJDQ19DU1JfTFNFT05fTXNrICAgICAgICAgICAgICAgICAgLyohPCBFeHRlcm5hbCBMb3cgU3BlZWQgb3NjaWxsYXRvciBlbmFibGUgKi8NCiNkZWZpbmUgUkNDX0NTUl9MU0VSRFlfUG9zICAgICAgICAgICAgICAgICAgKDlVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0NTUl9MU0VSRFlfTXNrICAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IFJDQ19DU1JfTFNFUkRZX1BvcykgICAgICAgLyohPCAweDAwMDAwMjAwICovDQojZGVmaW5lIFJDQ19DU1JfTFNFUkRZICAgICAgICAgICAgICAgICAgICAgIFJDQ19DU1JfTFNFUkRZX01zayAgICAgICAgICAgICAgICAgLyohPCBFeHRlcm5hbCBMb3cgU3BlZWQgb3NjaWxsYXRvciBSZWFkeSAqLw0KI2RlZmluZSBSQ0NfQ1NSX0xTRUJZUF9Qb3MgICAgICAgICAgICAgICAgICAoMTBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQ1NSX0xTRUJZUF9Nc2sgICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgUkNDX0NTUl9MU0VCWVBfUG9zKSAgICAgICAvKiE8IDB4MDAwMDA0MDAgKi8NCiNkZWZpbmUgUkNDX0NTUl9MU0VCWVAgICAgICAgICAgICAgICAgICAgICAgUkNDX0NTUl9MU0VCWVBfTXNrICAgICAgICAgICAgICAgICAvKiE8IEV4dGVybmFsIExvdyBTcGVlZCBvc2NpbGxhdG9yIEJ5cGFzcyAqLw0KDQojZGVmaW5lIFJDQ19DU1JfTFNFQ1NTT05fUG9zICAgICAgICAgICAgICAgICgxMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19DU1JfTFNFQ1NTT05fTXNrICAgICAgICAgICAgICAgICgweDFVTCA8PCBSQ0NfQ1NSX0xTRUNTU09OX1BvcykgICAgIC8qITwgMHgwMDAwMDgwMCAqLw0KI2RlZmluZSBSQ0NfQ1NSX0xTRUNTU09OICAgICAgICAgICAgICAgICAgICBSQ0NfQ1NSX0xTRUNTU09OX01zayAgICAgICAgICAgICAgIC8qITwgRXh0ZXJuYWwgTG93IFNwZWVkIG9zY2lsbGF0b3IgQ1NTIEVuYWJsZSAqLw0KI2RlZmluZSBSQ0NfQ1NSX0xTRUNTU0RfUG9zICAgICAgICAgICAgICAgICAoMTJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQ1NSX0xTRUNTU0RfTXNrICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgUkNDX0NTUl9MU0VDU1NEX1BvcykgICAgICAvKiE8IDB4MDAwMDEwMDAgKi8NCiNkZWZpbmUgUkNDX0NTUl9MU0VDU1NEICAgICAgICAgICAgICAgICAgICAgUkNDX0NTUl9MU0VDU1NEX01zayAgICAgICAgICAgICAgICAvKiE8IEV4dGVybmFsIExvdyBTcGVlZCBvc2NpbGxhdG9yIENTUyBEZXRlY3RlZCAqLw0KDQojZGVmaW5lIFJDQ19DU1JfUlRDU0VMX1BvcyAgICAgICAgICAgICAgICAgICgxNlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19DU1JfUlRDU0VMX01zayAgICAgICAgICAgICAgICAgICgweDNVTCA8PCBSQ0NfQ1NSX1JUQ1NFTF9Qb3MpICAgICAgIC8qITwgMHgwMDAzMDAwMCAqLw0KI2RlZmluZSBSQ0NfQ1NSX1JUQ1NFTCAgICAgICAgICAgICAgICAgICAgICBSQ0NfQ1NSX1JUQ1NFTF9Nc2sgICAgICAgICAgICAgICAgIC8qITwgUlRDU0VMWzE6MF0gYml0cyAoUlRDIGNsb2NrIHNvdXJjZSBzZWxlY3Rpb24pICovDQojZGVmaW5lIFJDQ19DU1JfUlRDU0VMXzAgICAgICAgICAgICAgICAgICAgICgweDFVTCA8PCBSQ0NfQ1NSX1JUQ1NFTF9Qb3MpICAgICAgIC8qITwgMHgwMDAxMDAwMCAqLw0KI2RlZmluZSBSQ0NfQ1NSX1JUQ1NFTF8xICAgICAgICAgICAgICAgICAgICAoMHgyVUwgPDwgUkNDX0NTUl9SVENTRUxfUG9zKSAgICAgICAvKiE8IDB4MDAwMjAwMDAgKi8NCg0KLyohPCBSVEMgY29uZ2lndXJhdGlvbiAqLw0KI2RlZmluZSBSQ0NfQ1NSX1JUQ1NFTF9OT0NMT0NLICAgICAgICAgICAgICAoMHgwMDAwMDAwMFUpICAgICAgICAgICAgICAgICAgICAgIC8qITwgTm8gY2xvY2sgKi8NCiNkZWZpbmUgUkNDX0NTUl9SVENTRUxfTFNFX1BvcyAgICAgICAgICAgICAgKDE2VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0NTUl9SVENTRUxfTFNFX01zayAgICAgICAgICAgICAgKDB4MVVMIDw8IFJDQ19DU1JfUlRDU0VMX0xTRV9Qb3MpICAgLyohPCAweDAwMDEwMDAwICovDQojZGVmaW5lIFJDQ19DU1JfUlRDU0VMX0xTRSAgICAgICAgICAgICAgICAgIFJDQ19DU1JfUlRDU0VMX0xTRV9Nc2sgICAgICAgICAgICAgLyohPCBMU0Ugb3NjaWxsYXRvciBjbG9jayB1c2VkIGFzIFJUQyBjbG9jayAqLw0KI2RlZmluZSBSQ0NfQ1NSX1JUQ1NFTF9MU0lfUG9zICAgICAgICAgICAgICAoMTdVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQ1NSX1JUQ1NFTF9MU0lfTXNrICAgICAgICAgICAgICAoMHgxVUwgPDwgUkNDX0NTUl9SVENTRUxfTFNJX1BvcykgICAvKiE8IDB4MDAwMjAwMDAgKi8NCiNkZWZpbmUgUkNDX0NTUl9SVENTRUxfTFNJICAgICAgICAgICAgICAgICAgUkNDX0NTUl9SVENTRUxfTFNJX01zayAgICAgICAgICAgICAvKiE8IExTSSBvc2NpbGxhdG9yIGNsb2NrIHVzZWQgYXMgUlRDIGNsb2NrICovDQojZGVmaW5lIFJDQ19DU1JfUlRDU0VMX0hTRV9Qb3MgICAgICAgICAgICAgICgxNlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19DU1JfUlRDU0VMX0hTRV9Nc2sgICAgICAgICAgICAgICgweDNVTCA8PCBSQ0NfQ1NSX1JUQ1NFTF9IU0VfUG9zKSAgIC8qITwgMHgwMDAzMDAwMCAqLw0KI2RlZmluZSBSQ0NfQ1NSX1JUQ1NFTF9IU0UgICAgICAgICAgICAgICAgICBSQ0NfQ1NSX1JUQ1NFTF9IU0VfTXNrICAgICAgICAgICAgIC8qITwgSFNFIG9zY2lsbGF0b3IgY2xvY2sgZGl2aWRlZCBieSAyLCA0LCA4IG9yIDE2IGJ5IFJUQ1BSRSB1c2VkIGFzIFJUQyBjbG9jayAqLw0KDQojZGVmaW5lIFJDQ19DU1JfUlRDRU5fUG9zICAgICAgICAgICAgICAgICAgICgyMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19DU1JfUlRDRU5fTXNrICAgICAgICAgICAgICAgICAgICgweDFVTCA8PCBSQ0NfQ1NSX1JUQ0VOX1BvcykgICAgICAgIC8qITwgMHgwMDQwMDAwMCAqLw0KI2RlZmluZSBSQ0NfQ1NSX1JUQ0VOICAgICAgICAgICAgICAgICAgICAgICBSQ0NfQ1NSX1JUQ0VOX01zayAgICAgICAgICAgICAgICAgIC8qITwgUlRDIGNsb2NrIGVuYWJsZSAqLw0KI2RlZmluZSBSQ0NfQ1NSX1JUQ1JTVF9Qb3MgICAgICAgICAgICAgICAgICAoMjNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQ1NSX1JUQ1JTVF9Nc2sgICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgUkNDX0NTUl9SVENSU1RfUG9zKSAgICAgICAvKiE8IDB4MDA4MDAwMDAgKi8NCiNkZWZpbmUgUkNDX0NTUl9SVENSU1QgICAgICAgICAgICAgICAgICAgICAgUkNDX0NTUl9SVENSU1RfTXNrICAgICAgICAgICAgICAgICAvKiE8IFJUQyByZXNldCAgKi8NCiANCiNkZWZpbmUgUkNDX0NTUl9STVZGX1BvcyAgICAgICAgICAgICAgICAgICAgKDI0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0NTUl9STVZGX01zayAgICAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IFJDQ19DU1JfUk1WRl9Qb3MpICAgICAgICAgLyohPCAweDAxMDAwMDAwICovDQojZGVmaW5lIFJDQ19DU1JfUk1WRiAgICAgICAgICAgICAgICAgICAgICAgIFJDQ19DU1JfUk1WRl9Nc2sgICAgICAgICAgICAgICAgICAgLyohPCBSZW1vdmUgcmVzZXQgZmxhZyAqLw0KI2RlZmluZSBSQ0NfQ1NSX09CTFJTVEZfUG9zICAgICAgICAgICAgICAgICAoMjVVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQ1NSX09CTFJTVEZfTXNrICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgUkNDX0NTUl9PQkxSU1RGX1BvcykgICAgICAvKiE8IDB4MDIwMDAwMDAgKi8NCiNkZWZpbmUgUkNDX0NTUl9PQkxSU1RGICAgICAgICAgICAgICAgICAgICAgUkNDX0NTUl9PQkxSU1RGX01zayAgICAgICAgICAgICAgICAvKiE8IE9wdGlvbiBCeXRlcyBMb2FkZXIgcmVzZXQgZmxhZyAqLw0KI2RlZmluZSBSQ0NfQ1NSX1BJTlJTVEZfUG9zICAgICAgICAgICAgICAgICAoMjZVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQ1NSX1BJTlJTVEZfTXNrICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgUkNDX0NTUl9QSU5SU1RGX1BvcykgICAgICAvKiE8IDB4MDQwMDAwMDAgKi8NCiNkZWZpbmUgUkNDX0NTUl9QSU5SU1RGICAgICAgICAgICAgICAgICAgICAgUkNDX0NTUl9QSU5SU1RGX01zayAgICAgICAgICAgICAgICAvKiE8IFBJTiByZXNldCBmbGFnICovDQojZGVmaW5lIFJDQ19DU1JfUE9SUlNURl9Qb3MgICAgICAgICAgICAgICAgICgyN1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19DU1JfUE9SUlNURl9Nc2sgICAgICAgICAgICAgICAgICgweDFVTCA8PCBSQ0NfQ1NSX1BPUlJTVEZfUG9zKSAgICAgIC8qITwgMHgwODAwMDAwMCAqLw0KI2RlZmluZSBSQ0NfQ1NSX1BPUlJTVEYgICAgICAgICAgICAgICAgICAgICBSQ0NfQ1NSX1BPUlJTVEZfTXNrICAgICAgICAgICAgICAgIC8qITwgUE9SL1BEUiByZXNldCBmbGFnICovDQojZGVmaW5lIFJDQ19DU1JfU0ZUUlNURl9Qb3MgICAgICAgICAgICAgICAgICgyOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJDQ19DU1JfU0ZUUlNURl9Nc2sgICAgICAgICAgICAgICAgICgweDFVTCA8PCBSQ0NfQ1NSX1NGVFJTVEZfUG9zKSAgICAgIC8qITwgMHgxMDAwMDAwMCAqLw0KI2RlZmluZSBSQ0NfQ1NSX1NGVFJTVEYgICAgICAgICAgICAgICAgICAgICBSQ0NfQ1NSX1NGVFJTVEZfTXNrICAgICAgICAgICAgICAgIC8qITwgU29mdHdhcmUgUmVzZXQgZmxhZyAqLw0KI2RlZmluZSBSQ0NfQ1NSX0lXREdSU1RGX1BvcyAgICAgICAgICAgICAgICAoMjlVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQ1NSX0lXREdSU1RGX01zayAgICAgICAgICAgICAgICAoMHgxVUwgPDwgUkNDX0NTUl9JV0RHUlNURl9Qb3MpICAgICAvKiE8IDB4MjAwMDAwMDAgKi8NCiNkZWZpbmUgUkNDX0NTUl9JV0RHUlNURiAgICAgICAgICAgICAgICAgICAgUkNDX0NTUl9JV0RHUlNURl9Nc2sgICAgICAgICAgICAgICAvKiE8IEluZGVwZW5kZW50IFdhdGNoZG9nIHJlc2V0IGZsYWcgKi8NCiNkZWZpbmUgUkNDX0NTUl9XV0RHUlNURl9Qb3MgICAgICAgICAgICAgICAgKDMwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUkNDX0NTUl9XV0RHUlNURl9Nc2sgICAgICAgICAgICAgICAgKDB4MVVMIDw8IFJDQ19DU1JfV1dER1JTVEZfUG9zKSAgICAgLyohPCAweDQwMDAwMDAwICovDQojZGVmaW5lIFJDQ19DU1JfV1dER1JTVEYgICAgICAgICAgICAgICAgICAgIFJDQ19DU1JfV1dER1JTVEZfTXNrICAgICAgICAgICAgICAgLyohPCBXaW5kb3cgd2F0Y2hkb2cgcmVzZXQgZmxhZyAqLw0KI2RlZmluZSBSQ0NfQ1NSX0xQV1JSU1RGX1BvcyAgICAgICAgICAgICAgICAoMzFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSQ0NfQ1NSX0xQV1JSU1RGX01zayAgICAgICAgICAgICAgICAoMHgxVUwgPDwgUkNDX0NTUl9MUFdSUlNURl9Qb3MpICAgICAvKiE8IDB4ODAwMDAwMDAgKi8NCiNkZWZpbmUgUkNDX0NTUl9MUFdSUlNURiAgICAgICAgICAgICAgICAgICAgUkNDX0NTUl9MUFdSUlNURl9Nc2sgICAgICAgICAgICAgICAvKiE8IExvdy1Qb3dlciByZXNldCBmbGFnICovDQoNCi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovDQovKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLw0KLyogICAgICAgICAgICAgICAgICAgICAgICAgICBSZWFsLVRpbWUgQ2xvY2sgKFJUQykgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8NCi8qICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovDQovKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLw0KLyoNCiogQGJyaWVmIFNwZWNpZmljIGRldmljZSBmZWF0dXJlIGRlZmluaXRpb25zICAobm90IHByZXNlbnQgb24gYWxsIGRldmljZXMgaW4gdGhlIFNUTTMyRjAgc2VyaWUpDQoqLw0KI2RlZmluZSBSVENfVEFNUEVSMV9TVVBQT1JUICAgICAgIC8qITwgVEFNUEVSIDEgZmVhdHVyZSBzdXBwb3J0ICovDQojZGVmaW5lIFJUQ19UQU1QRVIyX1NVUFBPUlQgICAgICAgLyohPCBUQU1QRVIgMiBmZWF0dXJlIHN1cHBvcnQgKi8NCiNkZWZpbmUgUlRDX1RBTVBFUjNfU1VQUE9SVCAgICAgICAvKiE8IFRBTVBFUiAzIGZlYXR1cmUgc3VwcG9ydCAqLw0KI2RlZmluZSBSVENfQkFDS1VQX1NVUFBPUlQgICAgICAgIC8qITwgQkFDS1VQIHJlZ2lzdGVyIGZlYXR1cmUgc3VwcG9ydCAqLw0KI2RlZmluZSBSVENfV0FLRVVQX1NVUFBPUlQgICAgICAgIC8qITwgV0FLRVVQIGZlYXR1cmUgc3VwcG9ydCAqLw0KI2RlZmluZSBSVENfU01PT1RIQ0FMSUJfU1VQUE9SVCAgIC8qITwgU21vb3RoIGRpZ2l0YWwgY2FsaWJyYXRpb24gZmVhdHVyZSBzdXBwb3J0ICovDQojZGVmaW5lIFJUQ19TVUJTRUNPTkRfU1VQUE9SVCAgICAgLyohPCBTdWItc2Vjb25kIGZlYXR1cmUgc3VwcG9ydCAqLw0KDQovKioqKioqKioqKioqKioqKioqKiogIEJpdHMgZGVmaW5pdGlvbiBmb3IgUlRDX1RSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBSVENfVFJfUE1fUG9zICAgICAgICAgICAgICAgICAgICAgICAgKDIyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfVFJfUE1fTXNrICAgICAgICAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IFJUQ19UUl9QTV9Qb3MpICAgICAgICAgICAvKiE8IDB4MDA0MDAwMDAgKi8NCiNkZWZpbmUgUlRDX1RSX1BNICAgICAgICAgICAgICAgICAgICAgICAgICAgIFJUQ19UUl9QTV9Nc2sgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX1RSX0hUX1BvcyAgICAgICAgICAgICAgICAgICAgICAgICgyMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX1RSX0hUX01zayAgICAgICAgICAgICAgICAgICAgICAgICgweDNVTCA8PCBSVENfVFJfSFRfUG9zKSAgICAgICAgICAgLyohPCAweDAwMzAwMDAwICovDQojZGVmaW5lIFJUQ19UUl9IVCAgICAgICAgICAgICAgICAgICAgICAgICAgICBSVENfVFJfSFRfTXNrICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19UUl9IVF8wICAgICAgICAgICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgUlRDX1RSX0hUX1BvcykgICAgICAgICAgIC8qITwgMHgwMDEwMDAwMCAqLw0KI2RlZmluZSBSVENfVFJfSFRfMSAgICAgICAgICAgICAgICAgICAgICAgICAgKDB4MlVMIDw8IFJUQ19UUl9IVF9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAyMDAwMDAgKi8NCiNkZWZpbmUgUlRDX1RSX0hVX1BvcyAgICAgICAgICAgICAgICAgICAgICAgICgxNlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX1RSX0hVX01zayAgICAgICAgICAgICAgICAgICAgICAgICgweEZVTCA8PCBSVENfVFJfSFVfUG9zKSAgICAgICAgICAgLyohPCAweDAwMEYwMDAwICovDQojZGVmaW5lIFJUQ19UUl9IVSAgICAgICAgICAgICAgICAgICAgICAgICAgICBSVENfVFJfSFVfTXNrICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19UUl9IVV8wICAgICAgICAgICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgUlRDX1RSX0hVX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAxMDAwMCAqLw0KI2RlZmluZSBSVENfVFJfSFVfMSAgICAgICAgICAgICAgICAgICAgICAgICAgKDB4MlVMIDw8IFJUQ19UUl9IVV9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMjAwMDAgKi8NCiNkZWZpbmUgUlRDX1RSX0hVXzIgICAgICAgICAgICAgICAgICAgICAgICAgICgweDRVTCA8PCBSVENfVFJfSFVfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDQwMDAwICovDQojZGVmaW5lIFJUQ19UUl9IVV8zICAgICAgICAgICAgICAgICAgICAgICAgICAoMHg4VUwgPDwgUlRDX1RSX0hVX1BvcykgICAgICAgICAgIC8qITwgMHgwMDA4MDAwMCAqLw0KI2RlZmluZSBSVENfVFJfTU5UX1BvcyAgICAgICAgICAgICAgICAgICAgICAgKDEyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfVFJfTU5UX01zayAgICAgICAgICAgICAgICAgICAgICAgKDB4N1VMIDw8IFJUQ19UUl9NTlRfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDcwMDAgKi8NCiNkZWZpbmUgUlRDX1RSX01OVCAgICAgICAgICAgICAgICAgICAgICAgICAgIFJUQ19UUl9NTlRfTXNrICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX1RSX01OVF8wICAgICAgICAgICAgICAgICAgICAgICAgICgweDFVTCA8PCBSVENfVFJfTU5UX1BvcykgICAgICAgICAgLyohPCAweDAwMDAxMDAwICovDQojZGVmaW5lIFJUQ19UUl9NTlRfMSAgICAgICAgICAgICAgICAgICAgICAgICAoMHgyVUwgPDwgUlRDX1RSX01OVF9Qb3MpICAgICAgICAgIC8qITwgMHgwMDAwMjAwMCAqLw0KI2RlZmluZSBSVENfVFJfTU5UXzIgICAgICAgICAgICAgICAgICAgICAgICAgKDB4NFVMIDw8IFJUQ19UUl9NTlRfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDQwMDAgKi8NCiNkZWZpbmUgUlRDX1RSX01OVV9Qb3MgICAgICAgICAgICAgICAgICAgICAgICg4VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX1RSX01OVV9Nc2sgICAgICAgICAgICAgICAgICAgICAgICgweEZVTCA8PCBSVENfVFJfTU5VX1BvcykgICAgICAgICAgLyohPCAweDAwMDAwRjAwICovDQojZGVmaW5lIFJUQ19UUl9NTlUgICAgICAgICAgICAgICAgICAgICAgICAgICBSVENfVFJfTU5VX01zayAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19UUl9NTlVfMCAgICAgICAgICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgUlRDX1RSX01OVV9Qb3MpICAgICAgICAgIC8qITwgMHgwMDAwMDEwMCAqLw0KI2RlZmluZSBSVENfVFJfTU5VXzEgICAgICAgICAgICAgICAgICAgICAgICAgKDB4MlVMIDw8IFJUQ19UUl9NTlVfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDAyMDAgKi8NCiNkZWZpbmUgUlRDX1RSX01OVV8yICAgICAgICAgICAgICAgICAgICAgICAgICgweDRVTCA8PCBSVENfVFJfTU5VX1BvcykgICAgICAgICAgLyohPCAweDAwMDAwNDAwICovDQojZGVmaW5lIFJUQ19UUl9NTlVfMyAgICAgICAgICAgICAgICAgICAgICAgICAoMHg4VUwgPDwgUlRDX1RSX01OVV9Qb3MpICAgICAgICAgIC8qITwgMHgwMDAwMDgwMCAqLw0KI2RlZmluZSBSVENfVFJfU1RfUG9zICAgICAgICAgICAgICAgICAgICAgICAgKDRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfVFJfU1RfTXNrICAgICAgICAgICAgICAgICAgICAgICAgKDB4N1VMIDw8IFJUQ19UUl9TVF9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDAwNzAgKi8NCiNkZWZpbmUgUlRDX1RSX1NUICAgICAgICAgICAgICAgICAgICAgICAgICAgIFJUQ19UUl9TVF9Nc2sgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX1RSX1NUXzAgICAgICAgICAgICAgICAgICAgICAgICAgICgweDFVTCA8PCBSVENfVFJfU1RfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwMDEwICovDQojZGVmaW5lIFJUQ19UUl9TVF8xICAgICAgICAgICAgICAgICAgICAgICAgICAoMHgyVUwgPDwgUlRDX1RSX1NUX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDAyMCAqLw0KI2RlZmluZSBSVENfVFJfU1RfMiAgICAgICAgICAgICAgICAgICAgICAgICAgKDB4NFVMIDw8IFJUQ19UUl9TVF9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDAwNDAgKi8NCiNkZWZpbmUgUlRDX1RSX1NVX1BvcyAgICAgICAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX1RSX1NVX01zayAgICAgICAgICAgICAgICAgICAgICAgICgweEZVTCA8PCBSVENfVFJfU1VfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwMDBGICovDQojZGVmaW5lIFJUQ19UUl9TVSAgICAgICAgICAgICAgICAgICAgICAgICAgICBSVENfVFJfU1VfTXNrICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19UUl9TVV8wICAgICAgICAgICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgUlRDX1RSX1NVX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDAwMSAqLw0KI2RlZmluZSBSVENfVFJfU1VfMSAgICAgICAgICAgICAgICAgICAgICAgICAgKDB4MlVMIDw8IFJUQ19UUl9TVV9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDIgKi8NCiNkZWZpbmUgUlRDX1RSX1NVXzIgICAgICAgICAgICAgICAgICAgICAgICAgICgweDRVTCA8PCBSVENfVFJfU1VfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwMDA0ICovDQojZGVmaW5lIFJUQ19UUl9TVV8zICAgICAgICAgICAgICAgICAgICAgICAgICAoMHg4VUwgPDwgUlRDX1RSX1NVX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDAwOCAqLw0KDQovKioqKioqKioqKioqKioqKioqKiogIEJpdHMgZGVmaW5pdGlvbiBmb3IgUlRDX0RSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBSVENfRFJfWVRfUG9zICAgICAgICAgICAgICAgICAgICAgICAgKDIwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfRFJfWVRfTXNrICAgICAgICAgICAgICAgICAgICAgICAgKDB4RlVMIDw8IFJUQ19EUl9ZVF9Qb3MpICAgICAgICAgICAvKiE8IDB4MDBGMDAwMDAgKi8NCiNkZWZpbmUgUlRDX0RSX1lUICAgICAgICAgICAgICAgICAgICAgICAgICAgIFJUQ19EUl9ZVF9Nc2sgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0RSX1lUXzAgICAgICAgICAgICAgICAgICAgICAgICAgICgweDFVTCA8PCBSVENfRFJfWVRfUG9zKSAgICAgICAgICAgLyohPCAweDAwMTAwMDAwICovDQojZGVmaW5lIFJUQ19EUl9ZVF8xICAgICAgICAgICAgICAgICAgICAgICAgICAoMHgyVUwgPDwgUlRDX0RSX1lUX1BvcykgICAgICAgICAgIC8qITwgMHgwMDIwMDAwMCAqLw0KI2RlZmluZSBSVENfRFJfWVRfMiAgICAgICAgICAgICAgICAgICAgICAgICAgKDB4NFVMIDw8IFJUQ19EUl9ZVF9Qb3MpICAgICAgICAgICAvKiE8IDB4MDA0MDAwMDAgKi8NCiNkZWZpbmUgUlRDX0RSX1lUXzMgICAgICAgICAgICAgICAgICAgICAgICAgICgweDhVTCA8PCBSVENfRFJfWVRfUG9zKSAgICAgICAgICAgLyohPCAweDAwODAwMDAwICovDQojZGVmaW5lIFJUQ19EUl9ZVV9Qb3MgICAgICAgICAgICAgICAgICAgICAgICAoMTZVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19EUl9ZVV9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAoMHhGVUwgPDwgUlRDX0RSX1lVX1BvcykgICAgICAgICAgIC8qITwgMHgwMDBGMDAwMCAqLw0KI2RlZmluZSBSVENfRFJfWVUgICAgICAgICAgICAgICAgICAgICAgICAgICAgUlRDX0RSX1lVX01zayAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfRFJfWVVfMCAgICAgICAgICAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IFJUQ19EUl9ZVV9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMTAwMDAgKi8NCiNkZWZpbmUgUlRDX0RSX1lVXzEgICAgICAgICAgICAgICAgICAgICAgICAgICgweDJVTCA8PCBSVENfRFJfWVVfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDIwMDAwICovDQojZGVmaW5lIFJUQ19EUl9ZVV8yICAgICAgICAgICAgICAgICAgICAgICAgICAoMHg0VUwgPDwgUlRDX0RSX1lVX1BvcykgICAgICAgICAgIC8qITwgMHgwMDA0MDAwMCAqLw0KI2RlZmluZSBSVENfRFJfWVVfMyAgICAgICAgICAgICAgICAgICAgICAgICAgKDB4OFVMIDw8IFJUQ19EUl9ZVV9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwODAwMDAgKi8NCiNkZWZpbmUgUlRDX0RSX1dEVV9Qb3MgICAgICAgICAgICAgICAgICAgICAgICgxM1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0RSX1dEVV9Nc2sgICAgICAgICAgICAgICAgICAgICAgICgweDdVTCA8PCBSVENfRFJfV0RVX1BvcykgICAgICAgICAgLyohPCAweDAwMDBFMDAwICovDQojZGVmaW5lIFJUQ19EUl9XRFUgICAgICAgICAgICAgICAgICAgICAgICAgICBSVENfRFJfV0RVX01zayAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19EUl9XRFVfMCAgICAgICAgICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgUlRDX0RSX1dEVV9Qb3MpICAgICAgICAgIC8qITwgMHgwMDAwMjAwMCAqLw0KI2RlZmluZSBSVENfRFJfV0RVXzEgICAgICAgICAgICAgICAgICAgICAgICAgKDB4MlVMIDw8IFJUQ19EUl9XRFVfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDQwMDAgKi8NCiNkZWZpbmUgUlRDX0RSX1dEVV8yICAgICAgICAgICAgICAgICAgICAgICAgICgweDRVTCA8PCBSVENfRFJfV0RVX1BvcykgICAgICAgICAgLyohPCAweDAwMDA4MDAwICovDQojZGVmaW5lIFJUQ19EUl9NVF9Qb3MgICAgICAgICAgICAgICAgICAgICAgICAoMTJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19EUl9NVF9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgUlRDX0RSX01UX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMTAwMCAqLw0KI2RlZmluZSBSVENfRFJfTVQgICAgICAgICAgICAgICAgICAgICAgICAgICAgUlRDX0RSX01UX01zayAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfRFJfTVVfUG9zICAgICAgICAgICAgICAgICAgICAgICAgKDhVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfRFJfTVVfTXNrICAgICAgICAgICAgICAgICAgICAgICAgKDB4RlVMIDw8IFJUQ19EUl9NVV9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDBGMDAgKi8NCiNkZWZpbmUgUlRDX0RSX01VICAgICAgICAgICAgICAgICAgICAgICAgICAgIFJUQ19EUl9NVV9Nc2sgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0RSX01VXzAgICAgICAgICAgICAgICAgICAgICAgICAgICgweDFVTCA8PCBSVENfRFJfTVVfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwMTAwICovDQojZGVmaW5lIFJUQ19EUl9NVV8xICAgICAgICAgICAgICAgICAgICAgICAgICAoMHgyVUwgPDwgUlRDX0RSX01VX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDIwMCAqLw0KI2RlZmluZSBSVENfRFJfTVVfMiAgICAgICAgICAgICAgICAgICAgICAgICAgKDB4NFVMIDw8IFJUQ19EUl9NVV9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDA0MDAgKi8NCiNkZWZpbmUgUlRDX0RSX01VXzMgICAgICAgICAgICAgICAgICAgICAgICAgICgweDhVTCA8PCBSVENfRFJfTVVfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwODAwICovDQojZGVmaW5lIFJUQ19EUl9EVF9Qb3MgICAgICAgICAgICAgICAgICAgICAgICAoNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19EUl9EVF9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAoMHgzVUwgPDwgUlRDX0RSX0RUX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDAzMCAqLw0KI2RlZmluZSBSVENfRFJfRFQgICAgICAgICAgICAgICAgICAgICAgICAgICAgUlRDX0RSX0RUX01zayAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfRFJfRFRfMCAgICAgICAgICAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IFJUQ19EUl9EVF9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDAwMTAgKi8NCiNkZWZpbmUgUlRDX0RSX0RUXzEgICAgICAgICAgICAgICAgICAgICAgICAgICgweDJVTCA8PCBSVENfRFJfRFRfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwMDIwICovDQojZGVmaW5lIFJUQ19EUl9EVV9Qb3MgICAgICAgICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19EUl9EVV9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAoMHhGVUwgPDwgUlRDX0RSX0RVX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDAwRiAqLw0KI2RlZmluZSBSVENfRFJfRFUgICAgICAgICAgICAgICAgICAgICAgICAgICAgUlRDX0RSX0RVX01zayAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfRFJfRFVfMCAgICAgICAgICAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IFJUQ19EUl9EVV9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDEgKi8NCiNkZWZpbmUgUlRDX0RSX0RVXzEgICAgICAgICAgICAgICAgICAgICAgICAgICgweDJVTCA8PCBSVENfRFJfRFVfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwMDAyICovDQojZGVmaW5lIFJUQ19EUl9EVV8yICAgICAgICAgICAgICAgICAgICAgICAgICAoMHg0VUwgPDwgUlRDX0RSX0RVX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDAwNCAqLw0KI2RlZmluZSBSVENfRFJfRFVfMyAgICAgICAgICAgICAgICAgICAgICAgICAgKDB4OFVMIDw8IFJUQ19EUl9EVV9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDggKi8NCg0KLyoqKioqKioqKioqKioqKioqKioqICBCaXRzIGRlZmluaXRpb24gZm9yIFJUQ19DUiByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgUlRDX0NSX0NPRV9Qb3MgICAgICAgICAgICAgICAgICAgICAgICgyM1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0NSX0NPRV9Nc2sgICAgICAgICAgICAgICAgICAgICAgICgweDFVTCA8PCBSVENfQ1JfQ09FX1BvcykgICAgICAgICAgLyohPCAweDAwODAwMDAwICovDQojZGVmaW5lIFJUQ19DUl9DT0UgICAgICAgICAgICAgICAgICAgICAgICAgICBSVENfQ1JfQ09FX01zayAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19DUl9PU0VMX1BvcyAgICAgICAgICAgICAgICAgICAgICAoMjFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19DUl9PU0VMX01zayAgICAgICAgICAgICAgICAgICAgICAoMHgzVUwgPDwgUlRDX0NSX09TRUxfUG9zKSAgICAgICAgIC8qITwgMHgwMDYwMDAwMCAqLw0KI2RlZmluZSBSVENfQ1JfT1NFTCAgICAgICAgICAgICAgICAgICAgICAgICAgUlRDX0NSX09TRUxfTXNrICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfQ1JfT1NFTF8wICAgICAgICAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IFJUQ19DUl9PU0VMX1BvcykgICAgICAgICAvKiE8IDB4MDAyMDAwMDAgKi8NCiNkZWZpbmUgUlRDX0NSX09TRUxfMSAgICAgICAgICAgICAgICAgICAgICAgICgweDJVTCA8PCBSVENfQ1JfT1NFTF9Qb3MpICAgICAgICAgLyohPCAweDAwNDAwMDAwICovDQojZGVmaW5lIFJUQ19DUl9QT0xfUG9zICAgICAgICAgICAgICAgICAgICAgICAoMjBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19DUl9QT0xfTXNrICAgICAgICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgUlRDX0NSX1BPTF9Qb3MpICAgICAgICAgIC8qITwgMHgwMDEwMDAwMCAqLw0KI2RlZmluZSBSVENfQ1JfUE9MICAgICAgICAgICAgICAgICAgICAgICAgICAgUlRDX0NSX1BPTF9Nc2sgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfQ1JfQ09TRUxfUG9zICAgICAgICAgICAgICAgICAgICAgKDE5VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfQ1JfQ09TRUxfTXNrICAgICAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IFJUQ19DUl9DT1NFTF9Qb3MpICAgICAgICAvKiE8IDB4MDAwODAwMDAgKi8NCiNkZWZpbmUgUlRDX0NSX0NPU0VMICAgICAgICAgICAgICAgICAgICAgICAgIFJUQ19DUl9DT1NFTF9Nc2sgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0NSX0JLUF9Qb3MgICAgICAgICAgICAgICAgICAgICAgICgxOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0NSX0JLUF9Nc2sgICAgICAgICAgICAgICAgICAgICAgICgweDFVTCA8PCBSVENfQ1JfQktQX1BvcykgICAgICAgICAgLyohPCAweDAwMDQwMDAwICovDQojZGVmaW5lIFJUQ19DUl9CS1AgICAgICAgICAgICAgICAgICAgICAgICAgICBSVENfQ1JfQktQX01zayAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19DUl9TVUIxSF9Qb3MgICAgICAgICAgICAgICAgICAgICAoMTdVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19DUl9TVUIxSF9Nc2sgICAgICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgUlRDX0NSX1NVQjFIX1BvcykgICAgICAgIC8qITwgMHgwMDAyMDAwMCAqLw0KI2RlZmluZSBSVENfQ1JfU1VCMUggICAgICAgICAgICAgICAgICAgICAgICAgUlRDX0NSX1NVQjFIX01zayAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfQ1JfQUREMUhfUG9zICAgICAgICAgICAgICAgICAgICAgKDE2VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfQ1JfQUREMUhfTXNrICAgICAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IFJUQ19DUl9BREQxSF9Qb3MpICAgICAgICAvKiE8IDB4MDAwMTAwMDAgKi8NCiNkZWZpbmUgUlRDX0NSX0FERDFIICAgICAgICAgICAgICAgICAgICAgICAgIFJUQ19DUl9BREQxSF9Nc2sgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0NSX1RTSUVfUG9zICAgICAgICAgICAgICAgICAgICAgICgxNVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0NSX1RTSUVfTXNrICAgICAgICAgICAgICAgICAgICAgICgweDFVTCA8PCBSVENfQ1JfVFNJRV9Qb3MpICAgICAgICAgLyohPCAweDAwMDA4MDAwICovDQojZGVmaW5lIFJUQ19DUl9UU0lFICAgICAgICAgICAgICAgICAgICAgICAgICBSVENfQ1JfVFNJRV9Nc2sgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19DUl9XVVRJRV9Qb3MgICAgICAgICAgICAgICAgICAgICAoMTRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19DUl9XVVRJRV9Nc2sgICAgICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgUlRDX0NSX1dVVElFX1BvcykgICAgICAgIC8qITwgMHgwMDAwNDAwMCAqLw0KI2RlZmluZSBSVENfQ1JfV1VUSUUgICAgICAgICAgICAgICAgICAgICAgICAgUlRDX0NSX1dVVElFX01zayAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfQ1JfQUxSQklFX1BvcyAgICAgICAgICAgICAgICAgICAgKDEzVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfQ1JfQUxSQklFX01zayAgICAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IFJUQ19DUl9BTFJCSUVfUG9zKSAgICAgICAvKiE8IDB4MDAwMDIwMDAgKi8NCiNkZWZpbmUgUlRDX0NSX0FMUkJJRSAgICAgICAgICAgICAgICAgICAgICAgIFJUQ19DUl9BTFJCSUVfTXNrICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0NSX0FMUkFJRV9Qb3MgICAgICAgICAgICAgICAgICAgICgxMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0NSX0FMUkFJRV9Nc2sgICAgICAgICAgICAgICAgICAgICgweDFVTCA8PCBSVENfQ1JfQUxSQUlFX1BvcykgICAgICAgLyohPCAweDAwMDAxMDAwICovDQojZGVmaW5lIFJUQ19DUl9BTFJBSUUgICAgICAgICAgICAgICAgICAgICAgICBSVENfQ1JfQUxSQUlFX01zayAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19DUl9UU0VfUG9zICAgICAgICAgICAgICAgICAgICAgICAoMTFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19DUl9UU0VfTXNrICAgICAgICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgUlRDX0NSX1RTRV9Qb3MpICAgICAgICAgIC8qITwgMHgwMDAwMDgwMCAqLw0KI2RlZmluZSBSVENfQ1JfVFNFICAgICAgICAgICAgICAgICAgICAgICAgICAgUlRDX0NSX1RTRV9Nc2sgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfQ1JfV1VURV9Qb3MgICAgICAgICAgICAgICAgICAgICAgKDEwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfQ1JfV1VURV9Nc2sgICAgICAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IFJUQ19DUl9XVVRFX1BvcykgICAgICAgICAvKiE8IDB4MDAwMDA0MDAgKi8NCiNkZWZpbmUgUlRDX0NSX1dVVEUgICAgICAgICAgICAgICAgICAgICAgICAgIFJUQ19DUl9XVVRFX01zayAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0NSX0FMUkJFX1BvcyAgICAgICAgICAgICAgICAgICAgICg5VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0NSX0FMUkJFX01zayAgICAgICAgICAgICAgICAgICAgICgweDFVTCA8PCBSVENfQ1JfQUxSQkVfUG9zKSAgICAgICAgLyohPCAweDAwMDAwMjAwICovDQojZGVmaW5lIFJUQ19DUl9BTFJCRSAgICAgICAgICAgICAgICAgICAgICAgICBSVENfQ1JfQUxSQkVfTXNrICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19DUl9BTFJBRV9Qb3MgICAgICAgICAgICAgICAgICAgICAoOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19DUl9BTFJBRV9Nc2sgICAgICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgUlRDX0NSX0FMUkFFX1BvcykgICAgICAgIC8qITwgMHgwMDAwMDEwMCAqLw0KI2RlZmluZSBSVENfQ1JfQUxSQUUgICAgICAgICAgICAgICAgICAgICAgICAgUlRDX0NSX0FMUkFFX01zayAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfQ1JfRENFX1BvcyAgICAgICAgICAgICAgICAgICAgICAgKDdVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfQ1JfRENFX01zayAgICAgICAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IFJUQ19DUl9EQ0VfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDAwODAgKi8NCiNkZWZpbmUgUlRDX0NSX0RDRSAgICAgICAgICAgICAgICAgICAgICAgICAgIFJUQ19DUl9EQ0VfTXNrICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0NSX0ZNVF9Qb3MgICAgICAgICAgICAgICAgICAgICAgICg2VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0NSX0ZNVF9Nc2sgICAgICAgICAgICAgICAgICAgICAgICgweDFVTCA8PCBSVENfQ1JfRk1UX1BvcykgICAgICAgICAgLyohPCAweDAwMDAwMDQwICovDQojZGVmaW5lIFJUQ19DUl9GTVQgICAgICAgICAgICAgICAgICAgICAgICAgICBSVENfQ1JfRk1UX01zayAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19DUl9CWVBTSEFEX1BvcyAgICAgICAgICAgICAgICAgICAoNVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19DUl9CWVBTSEFEX01zayAgICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgUlRDX0NSX0JZUFNIQURfUG9zKSAgICAgIC8qITwgMHgwMDAwMDAyMCAqLw0KI2RlZmluZSBSVENfQ1JfQllQU0hBRCAgICAgICAgICAgICAgICAgICAgICAgUlRDX0NSX0JZUFNIQURfTXNrICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfQ1JfUkVGQ0tPTl9Qb3MgICAgICAgICAgICAgICAgICAgKDRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfQ1JfUkVGQ0tPTl9Nc2sgICAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IFJUQ19DUl9SRUZDS09OX1BvcykgICAgICAvKiE8IDB4MDAwMDAwMTAgKi8NCiNkZWZpbmUgUlRDX0NSX1JFRkNLT04gICAgICAgICAgICAgICAgICAgICAgIFJUQ19DUl9SRUZDS09OX01zayAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0NSX1RTRURHRV9Qb3MgICAgICAgICAgICAgICAgICAgICgzVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0NSX1RTRURHRV9Nc2sgICAgICAgICAgICAgICAgICAgICgweDFVTCA8PCBSVENfQ1JfVFNFREdFX1BvcykgICAgICAgLyohPCAweDAwMDAwMDA4ICovDQojZGVmaW5lIFJUQ19DUl9UU0VER0UgICAgICAgICAgICAgICAgICAgICAgICBSVENfQ1JfVFNFREdFX01zayAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19DUl9XVUNLU0VMX1BvcyAgICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19DUl9XVUNLU0VMX01zayAgICAgICAgICAgICAgICAgICAoMHg3VUwgPDwgUlRDX0NSX1dVQ0tTRUxfUG9zKSAgICAgIC8qITwgMHgwMDAwMDAwNyAqLw0KI2RlZmluZSBSVENfQ1JfV1VDS1NFTCAgICAgICAgICAgICAgICAgICAgICAgUlRDX0NSX1dVQ0tTRUxfTXNrICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfQ1JfV1VDS1NFTF8wICAgICAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IFJUQ19DUl9XVUNLU0VMX1BvcykgICAgICAvKiE8IDB4MDAwMDAwMDEgKi8NCiNkZWZpbmUgUlRDX0NSX1dVQ0tTRUxfMSAgICAgICAgICAgICAgICAgICAgICgweDJVTCA8PCBSVENfQ1JfV1VDS1NFTF9Qb3MpICAgICAgLyohPCAweDAwMDAwMDAyICovDQojZGVmaW5lIFJUQ19DUl9XVUNLU0VMXzIgICAgICAgICAgICAgICAgICAgICAoMHg0VUwgPDwgUlRDX0NSX1dVQ0tTRUxfUG9zKSAgICAgIC8qITwgMHgwMDAwMDAwNCAqLw0KDQovKiBMZWdhY3kgZGVmaW5lcyAqLw0KI2RlZmluZSAgUlRDX0NSX0JDS19Qb3MgUlRDX0NSX0JLUF9Qb3MNCiNkZWZpbmUgIFJUQ19DUl9CQ0tfTXNrIFJUQ19DUl9CS1BfTXNrDQojZGVmaW5lICBSVENfQ1JfQkNLICAgICBSVENfQ1JfQktQDQoNCi8qKioqKioqKioqKioqKioqKioqKiAgQml0cyBkZWZpbml0aW9uIGZvciBSVENfSVNSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIFJUQ19JU1JfUkVDQUxQRl9Qb3MgICAgICAgICAgICAgICAgICAoMTZVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19JU1JfUkVDQUxQRl9Nc2sgICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgUlRDX0lTUl9SRUNBTFBGX1BvcykgICAgIC8qITwgMHgwMDAxMDAwMCAqLw0KI2RlZmluZSBSVENfSVNSX1JFQ0FMUEYgICAgICAgICAgICAgICAgICAgICAgUlRDX0lTUl9SRUNBTFBGX01zayAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfSVNSX1RBTVAzRl9Qb3MgICAgICAgICAgICAgICAgICAgKDE1VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfSVNSX1RBTVAzRl9Nc2sgICAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IFJUQ19JU1JfVEFNUDNGX1BvcykgICAgICAvKiE8IDB4MDAwMDgwMDAgKi8NCiNkZWZpbmUgUlRDX0lTUl9UQU1QM0YgICAgICAgICAgICAgICAgICAgICAgIFJUQ19JU1JfVEFNUDNGX01zayAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0lTUl9UQU1QMkZfUG9zICAgICAgICAgICAgICAgICAgICgxNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0lTUl9UQU1QMkZfTXNrICAgICAgICAgICAgICAgICAgICgweDFVTCA8PCBSVENfSVNSX1RBTVAyRl9Qb3MpICAgICAgLyohPCAweDAwMDA0MDAwICovDQojZGVmaW5lIFJUQ19JU1JfVEFNUDJGICAgICAgICAgICAgICAgICAgICAgICBSVENfSVNSX1RBTVAyRl9Nc2sgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19JU1JfVEFNUDFGX1BvcyAgICAgICAgICAgICAgICAgICAoMTNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19JU1JfVEFNUDFGX01zayAgICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgUlRDX0lTUl9UQU1QMUZfUG9zKSAgICAgIC8qITwgMHgwMDAwMjAwMCAqLw0KI2RlZmluZSBSVENfSVNSX1RBTVAxRiAgICAgICAgICAgICAgICAgICAgICAgUlRDX0lTUl9UQU1QMUZfTXNrICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfSVNSX1RTT1ZGX1BvcyAgICAgICAgICAgICAgICAgICAgKDEyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfSVNSX1RTT1ZGX01zayAgICAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IFJUQ19JU1JfVFNPVkZfUG9zKSAgICAgICAvKiE8IDB4MDAwMDEwMDAgKi8NCiNkZWZpbmUgUlRDX0lTUl9UU09WRiAgICAgICAgICAgICAgICAgICAgICAgIFJUQ19JU1JfVFNPVkZfTXNrICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0lTUl9UU0ZfUG9zICAgICAgICAgICAgICAgICAgICAgICgxMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0lTUl9UU0ZfTXNrICAgICAgICAgICAgICAgICAgICAgICgweDFVTCA8PCBSVENfSVNSX1RTRl9Qb3MpICAgICAgICAgLyohPCAweDAwMDAwODAwICovDQojZGVmaW5lIFJUQ19JU1JfVFNGICAgICAgICAgICAgICAgICAgICAgICAgICBSVENfSVNSX1RTRl9Nc2sgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19JU1JfV1VURl9Qb3MgICAgICAgICAgICAgICAgICAgICAoMTBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19JU1JfV1VURl9Nc2sgICAgICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgUlRDX0lTUl9XVVRGX1BvcykgICAgICAgIC8qITwgMHgwMDAwMDQwMCAqLw0KI2RlZmluZSBSVENfSVNSX1dVVEYgICAgICAgICAgICAgICAgICAgICAgICAgUlRDX0lTUl9XVVRGX01zayAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfSVNSX0FMUkJGX1BvcyAgICAgICAgICAgICAgICAgICAgKDlVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfSVNSX0FMUkJGX01zayAgICAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IFJUQ19JU1JfQUxSQkZfUG9zKSAgICAgICAvKiE8IDB4MDAwMDAyMDAgKi8NCiNkZWZpbmUgUlRDX0lTUl9BTFJCRiAgICAgICAgICAgICAgICAgICAgICAgIFJUQ19JU1JfQUxSQkZfTXNrICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0lTUl9BTFJBRl9Qb3MgICAgICAgICAgICAgICAgICAgICg4VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0lTUl9BTFJBRl9Nc2sgICAgICAgICAgICAgICAgICAgICgweDFVTCA8PCBSVENfSVNSX0FMUkFGX1BvcykgICAgICAgLyohPCAweDAwMDAwMTAwICovDQojZGVmaW5lIFJUQ19JU1JfQUxSQUYgICAgICAgICAgICAgICAgICAgICAgICBSVENfSVNSX0FMUkFGX01zayAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19JU1JfSU5JVF9Qb3MgICAgICAgICAgICAgICAgICAgICAoN1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19JU1JfSU5JVF9Nc2sgICAgICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgUlRDX0lTUl9JTklUX1BvcykgICAgICAgIC8qITwgMHgwMDAwMDA4MCAqLw0KI2RlZmluZSBSVENfSVNSX0lOSVQgICAgICAgICAgICAgICAgICAgICAgICAgUlRDX0lTUl9JTklUX01zayAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfSVNSX0lOSVRGX1BvcyAgICAgICAgICAgICAgICAgICAgKDZVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfSVNSX0lOSVRGX01zayAgICAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IFJUQ19JU1JfSU5JVEZfUG9zKSAgICAgICAvKiE8IDB4MDAwMDAwNDAgKi8NCiNkZWZpbmUgUlRDX0lTUl9JTklURiAgICAgICAgICAgICAgICAgICAgICAgIFJUQ19JU1JfSU5JVEZfTXNrICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0lTUl9SU0ZfUG9zICAgICAgICAgICAgICAgICAgICAgICg1VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0lTUl9SU0ZfTXNrICAgICAgICAgICAgICAgICAgICAgICgweDFVTCA8PCBSVENfSVNSX1JTRl9Qb3MpICAgICAgICAgLyohPCAweDAwMDAwMDIwICovDQojZGVmaW5lIFJUQ19JU1JfUlNGICAgICAgICAgICAgICAgICAgICAgICAgICBSVENfSVNSX1JTRl9Nc2sgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19JU1JfSU5JVFNfUG9zICAgICAgICAgICAgICAgICAgICAoNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19JU1JfSU5JVFNfTXNrICAgICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgUlRDX0lTUl9JTklUU19Qb3MpICAgICAgIC8qITwgMHgwMDAwMDAxMCAqLw0KI2RlZmluZSBSVENfSVNSX0lOSVRTICAgICAgICAgICAgICAgICAgICAgICAgUlRDX0lTUl9JTklUU19Nc2sgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfSVNSX1NIUEZfUG9zICAgICAgICAgICAgICAgICAgICAgKDNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfSVNSX1NIUEZfTXNrICAgICAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IFJUQ19JU1JfU0hQRl9Qb3MpICAgICAgICAvKiE8IDB4MDAwMDAwMDggKi8NCiNkZWZpbmUgUlRDX0lTUl9TSFBGICAgICAgICAgICAgICAgICAgICAgICAgIFJUQ19JU1JfU0hQRl9Nc2sgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0lTUl9XVVRXRl9Qb3MgICAgICAgICAgICAgICAgICAgICgyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0lTUl9XVVRXRl9Nc2sgICAgICAgICAgICAgICAgICAgICgweDFVTCA8PCBSVENfSVNSX1dVVFdGX1BvcykgICAgICAgLyohPCAweDAwMDAwMDA0ICovDQojZGVmaW5lIFJUQ19JU1JfV1VUV0YgICAgICAgICAgICAgICAgICAgICAgICBSVENfSVNSX1dVVFdGX01zayAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19JU1JfQUxSQldGX1BvcyAgICAgICAgICAgICAgICAgICAoMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19JU1JfQUxSQldGX01zayAgICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgUlRDX0lTUl9BTFJCV0ZfUG9zKSAgICAgIC8qITwgMHgwMDAwMDAwMiAqLw0KI2RlZmluZSBSVENfSVNSX0FMUkJXRiAgICAgICAgICAgICAgICAgICAgICAgUlRDX0lTUl9BTFJCV0ZfTXNrICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfSVNSX0FMUkFXRl9Qb3MgICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfSVNSX0FMUkFXRl9Nc2sgICAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IFJUQ19JU1JfQUxSQVdGX1BvcykgICAgICAvKiE8IDB4MDAwMDAwMDEgKi8NCiNkZWZpbmUgUlRDX0lTUl9BTFJBV0YgICAgICAgICAgICAgICAgICAgICAgIFJUQ19JU1JfQUxSQVdGX01zayAgICAgICAgICAgICAgICANCg0KLyoqKioqKioqKioqKioqKioqKioqICBCaXRzIGRlZmluaXRpb24gZm9yIFJUQ19QUkVSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgUlRDX1BSRVJfUFJFRElWX0FfUG9zICAgICAgICAgICAgICAgICgxNlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX1BSRVJfUFJFRElWX0FfTXNrICAgICAgICAgICAgICAgICgweDdGVUwgPDwgUlRDX1BSRVJfUFJFRElWX0FfUG9zKSAgLyohPCAweDAwN0YwMDAwICovDQojZGVmaW5lIFJUQ19QUkVSX1BSRURJVl9BICAgICAgICAgICAgICAgICAgICBSVENfUFJFUl9QUkVESVZfQV9Nc2sgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19QUkVSX1BSRURJVl9TX1BvcyAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19QUkVSX1BSRURJVl9TX01zayAgICAgICAgICAgICAgICAoMHg3RkZGVUwgPDwgUlRDX1BSRVJfUFJFRElWX1NfUG9zKSAvKiE8IDB4MDAwMDdGRkYgKi8NCiNkZWZpbmUgUlRDX1BSRVJfUFJFRElWX1MgICAgICAgICAgICAgICAgICAgIFJUQ19QUkVSX1BSRURJVl9TX01zayAgICAgICAgICAgICANCg0KLyoqKioqKioqKioqKioqKioqKioqICBCaXRzIGRlZmluaXRpb24gZm9yIFJUQ19XVVRSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgUlRDX1dVVFJfV1VUX1BvcyAgICAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX1dVVFJfV1VUX01zayAgICAgICAgICAgICAgICAgICAgICgweEZGRkZVTCA8PCBSVENfV1VUUl9XVVRfUG9zKSAgICAgLyohPCAweDAwMDBGRkZGICovDQojZGVmaW5lIFJUQ19XVVRSX1dVVCAgICAgICAgICAgICAgICAgICAgICAgICBSVENfV1VUUl9XVVRfTXNrICAgICAgICAgICAgICAgICAgDQoNCi8qKioqKioqKioqKioqKioqKioqKiAgQml0cyBkZWZpbml0aW9uIGZvciBSVENfQ0FMSUJSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKiovDQojZGVmaW5lIFJUQ19DQUxJQlJfRENTX1BvcyAgICAgICAgICAgICAgICAgICAoN1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19DQUxJQlJfRENTX01zayAgICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgUlRDX0NBTElCUl9EQ1NfUG9zKSAgICAgIC8qITwgMHgwMDAwMDA4MCAqLw0KI2RlZmluZSBSVENfQ0FMSUJSX0RDUyAgICAgICAgICAgICAgICAgICAgICAgUlRDX0NBTElCUl9EQ1NfTXNrICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfQ0FMSUJSX0RDX1BvcyAgICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfQ0FMSUJSX0RDX01zayAgICAgICAgICAgICAgICAgICAgKDB4MUZVTCA8PCBSVENfQ0FMSUJSX0RDX1BvcykgICAgICAvKiE8IDB4MDAwMDAwMUYgKi8NCiNkZWZpbmUgUlRDX0NBTElCUl9EQyAgICAgICAgICAgICAgICAgICAgICAgIFJUQ19DQUxJQlJfRENfTXNrICAgICAgICAgICAgICAgICANCg0KLyoqKioqKioqKioqKioqKioqKioqICBCaXRzIGRlZmluaXRpb24gZm9yIFJUQ19BTFJNQVIgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKi8NCiNkZWZpbmUgUlRDX0FMUk1BUl9NU0s0X1BvcyAgICAgICAgICAgICAgICAgICgzMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0FMUk1BUl9NU0s0X01zayAgICAgICAgICAgICAgICAgICgweDFVTCA8PCBSVENfQUxSTUFSX01TSzRfUG9zKSAgICAgLyohPCAweDgwMDAwMDAwICovDQojZGVmaW5lIFJUQ19BTFJNQVJfTVNLNCAgICAgICAgICAgICAgICAgICAgICBSVENfQUxSTUFSX01TSzRfTXNrICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19BTFJNQVJfV0RTRUxfUG9zICAgICAgICAgICAgICAgICAoMzBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19BTFJNQVJfV0RTRUxfTXNrICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgUlRDX0FMUk1BUl9XRFNFTF9Qb3MpICAgIC8qITwgMHg0MDAwMDAwMCAqLw0KI2RlZmluZSBSVENfQUxSTUFSX1dEU0VMICAgICAgICAgICAgICAgICAgICAgUlRDX0FMUk1BUl9XRFNFTF9Nc2sgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfQUxSTUFSX0RUX1BvcyAgICAgICAgICAgICAgICAgICAgKDI4VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfQUxSTUFSX0RUX01zayAgICAgICAgICAgICAgICAgICAgKDB4M1VMIDw8IFJUQ19BTFJNQVJfRFRfUG9zKSAgICAgICAvKiE8IDB4MzAwMDAwMDAgKi8NCiNkZWZpbmUgUlRDX0FMUk1BUl9EVCAgICAgICAgICAgICAgICAgICAgICAgIFJUQ19BTFJNQVJfRFRfTXNrICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0FMUk1BUl9EVF8wICAgICAgICAgICAgICAgICAgICAgICgweDFVTCA8PCBSVENfQUxSTUFSX0RUX1BvcykgICAgICAgLyohPCAweDEwMDAwMDAwICovDQojZGVmaW5lIFJUQ19BTFJNQVJfRFRfMSAgICAgICAgICAgICAgICAgICAgICAoMHgyVUwgPDwgUlRDX0FMUk1BUl9EVF9Qb3MpICAgICAgIC8qITwgMHgyMDAwMDAwMCAqLw0KI2RlZmluZSBSVENfQUxSTUFSX0RVX1BvcyAgICAgICAgICAgICAgICAgICAgKDI0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfQUxSTUFSX0RVX01zayAgICAgICAgICAgICAgICAgICAgKDB4RlVMIDw8IFJUQ19BTFJNQVJfRFVfUG9zKSAgICAgICAvKiE8IDB4MEYwMDAwMDAgKi8NCiNkZWZpbmUgUlRDX0FMUk1BUl9EVSAgICAgICAgICAgICAgICAgICAgICAgIFJUQ19BTFJNQVJfRFVfTXNrICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0FMUk1BUl9EVV8wICAgICAgICAgICAgICAgICAgICAgICgweDFVTCA8PCBSVENfQUxSTUFSX0RVX1BvcykgICAgICAgLyohPCAweDAxMDAwMDAwICovDQojZGVmaW5lIFJUQ19BTFJNQVJfRFVfMSAgICAgICAgICAgICAgICAgICAgICAoMHgyVUwgPDwgUlRDX0FMUk1BUl9EVV9Qb3MpICAgICAgIC8qITwgMHgwMjAwMDAwMCAqLw0KI2RlZmluZSBSVENfQUxSTUFSX0RVXzIgICAgICAgICAgICAgICAgICAgICAgKDB4NFVMIDw8IFJUQ19BTFJNQVJfRFVfUG9zKSAgICAgICAvKiE8IDB4MDQwMDAwMDAgKi8NCiNkZWZpbmUgUlRDX0FMUk1BUl9EVV8zICAgICAgICAgICAgICAgICAgICAgICgweDhVTCA8PCBSVENfQUxSTUFSX0RVX1BvcykgICAgICAgLyohPCAweDA4MDAwMDAwICovDQojZGVmaW5lIFJUQ19BTFJNQVJfTVNLM19Qb3MgICAgICAgICAgICAgICAgICAoMjNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19BTFJNQVJfTVNLM19Nc2sgICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgUlRDX0FMUk1BUl9NU0szX1BvcykgICAgIC8qITwgMHgwMDgwMDAwMCAqLw0KI2RlZmluZSBSVENfQUxSTUFSX01TSzMgICAgICAgICAgICAgICAgICAgICAgUlRDX0FMUk1BUl9NU0szX01zayAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfQUxSTUFSX1BNX1BvcyAgICAgICAgICAgICAgICAgICAgKDIyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfQUxSTUFSX1BNX01zayAgICAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IFJUQ19BTFJNQVJfUE1fUG9zKSAgICAgICAvKiE8IDB4MDA0MDAwMDAgKi8NCiNkZWZpbmUgUlRDX0FMUk1BUl9QTSAgICAgICAgICAgICAgICAgICAgICAgIFJUQ19BTFJNQVJfUE1fTXNrICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0FMUk1BUl9IVF9Qb3MgICAgICAgICAgICAgICAgICAgICgyMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0FMUk1BUl9IVF9Nc2sgICAgICAgICAgICAgICAgICAgICgweDNVTCA8PCBSVENfQUxSTUFSX0hUX1BvcykgICAgICAgLyohPCAweDAwMzAwMDAwICovDQojZGVmaW5lIFJUQ19BTFJNQVJfSFQgICAgICAgICAgICAgICAgICAgICAgICBSVENfQUxSTUFSX0hUX01zayAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19BTFJNQVJfSFRfMCAgICAgICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgUlRDX0FMUk1BUl9IVF9Qb3MpICAgICAgIC8qITwgMHgwMDEwMDAwMCAqLw0KI2RlZmluZSBSVENfQUxSTUFSX0hUXzEgICAgICAgICAgICAgICAgICAgICAgKDB4MlVMIDw8IFJUQ19BTFJNQVJfSFRfUG9zKSAgICAgICAvKiE8IDB4MDAyMDAwMDAgKi8NCiNkZWZpbmUgUlRDX0FMUk1BUl9IVV9Qb3MgICAgICAgICAgICAgICAgICAgICgxNlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0FMUk1BUl9IVV9Nc2sgICAgICAgICAgICAgICAgICAgICgweEZVTCA8PCBSVENfQUxSTUFSX0hVX1BvcykgICAgICAgLyohPCAweDAwMEYwMDAwICovDQojZGVmaW5lIFJUQ19BTFJNQVJfSFUgICAgICAgICAgICAgICAgICAgICAgICBSVENfQUxSTUFSX0hVX01zayAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19BTFJNQVJfSFVfMCAgICAgICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgUlRDX0FMUk1BUl9IVV9Qb3MpICAgICAgIC8qITwgMHgwMDAxMDAwMCAqLw0KI2RlZmluZSBSVENfQUxSTUFSX0hVXzEgICAgICAgICAgICAgICAgICAgICAgKDB4MlVMIDw8IFJUQ19BTFJNQVJfSFVfUG9zKSAgICAgICAvKiE8IDB4MDAwMjAwMDAgKi8NCiNkZWZpbmUgUlRDX0FMUk1BUl9IVV8yICAgICAgICAgICAgICAgICAgICAgICgweDRVTCA8PCBSVENfQUxSTUFSX0hVX1BvcykgICAgICAgLyohPCAweDAwMDQwMDAwICovDQojZGVmaW5lIFJUQ19BTFJNQVJfSFVfMyAgICAgICAgICAgICAgICAgICAgICAoMHg4VUwgPDwgUlRDX0FMUk1BUl9IVV9Qb3MpICAgICAgIC8qITwgMHgwMDA4MDAwMCAqLw0KI2RlZmluZSBSVENfQUxSTUFSX01TSzJfUG9zICAgICAgICAgICAgICAgICAgKDE1VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfQUxSTUFSX01TSzJfTXNrICAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IFJUQ19BTFJNQVJfTVNLMl9Qb3MpICAgICAvKiE8IDB4MDAwMDgwMDAgKi8NCiNkZWZpbmUgUlRDX0FMUk1BUl9NU0syICAgICAgICAgICAgICAgICAgICAgIFJUQ19BTFJNQVJfTVNLMl9Nc2sgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0FMUk1BUl9NTlRfUG9zICAgICAgICAgICAgICAgICAgICgxMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0FMUk1BUl9NTlRfTXNrICAgICAgICAgICAgICAgICAgICgweDdVTCA8PCBSVENfQUxSTUFSX01OVF9Qb3MpICAgICAgLyohPCAweDAwMDA3MDAwICovDQojZGVmaW5lIFJUQ19BTFJNQVJfTU5UICAgICAgICAgICAgICAgICAgICAgICBSVENfQUxSTUFSX01OVF9Nc2sgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19BTFJNQVJfTU5UXzAgICAgICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgUlRDX0FMUk1BUl9NTlRfUG9zKSAgICAgIC8qITwgMHgwMDAwMTAwMCAqLw0KI2RlZmluZSBSVENfQUxSTUFSX01OVF8xICAgICAgICAgICAgICAgICAgICAgKDB4MlVMIDw8IFJUQ19BTFJNQVJfTU5UX1BvcykgICAgICAvKiE8IDB4MDAwMDIwMDAgKi8NCiNkZWZpbmUgUlRDX0FMUk1BUl9NTlRfMiAgICAgICAgICAgICAgICAgICAgICgweDRVTCA8PCBSVENfQUxSTUFSX01OVF9Qb3MpICAgICAgLyohPCAweDAwMDA0MDAwICovDQojZGVmaW5lIFJUQ19BTFJNQVJfTU5VX1BvcyAgICAgICAgICAgICAgICAgICAoOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19BTFJNQVJfTU5VX01zayAgICAgICAgICAgICAgICAgICAoMHhGVUwgPDwgUlRDX0FMUk1BUl9NTlVfUG9zKSAgICAgIC8qITwgMHgwMDAwMEYwMCAqLw0KI2RlZmluZSBSVENfQUxSTUFSX01OVSAgICAgICAgICAgICAgICAgICAgICAgUlRDX0FMUk1BUl9NTlVfTXNrICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfQUxSTUFSX01OVV8wICAgICAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IFJUQ19BTFJNQVJfTU5VX1BvcykgICAgICAvKiE8IDB4MDAwMDAxMDAgKi8NCiNkZWZpbmUgUlRDX0FMUk1BUl9NTlVfMSAgICAgICAgICAgICAgICAgICAgICgweDJVTCA8PCBSVENfQUxSTUFSX01OVV9Qb3MpICAgICAgLyohPCAweDAwMDAwMjAwICovDQojZGVmaW5lIFJUQ19BTFJNQVJfTU5VXzIgICAgICAgICAgICAgICAgICAgICAoMHg0VUwgPDwgUlRDX0FMUk1BUl9NTlVfUG9zKSAgICAgIC8qITwgMHgwMDAwMDQwMCAqLw0KI2RlZmluZSBSVENfQUxSTUFSX01OVV8zICAgICAgICAgICAgICAgICAgICAgKDB4OFVMIDw8IFJUQ19BTFJNQVJfTU5VX1BvcykgICAgICAvKiE8IDB4MDAwMDA4MDAgKi8NCiNkZWZpbmUgUlRDX0FMUk1BUl9NU0sxX1BvcyAgICAgICAgICAgICAgICAgICg3VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0FMUk1BUl9NU0sxX01zayAgICAgICAgICAgICAgICAgICgweDFVTCA8PCBSVENfQUxSTUFSX01TSzFfUG9zKSAgICAgLyohPCAweDAwMDAwMDgwICovDQojZGVmaW5lIFJUQ19BTFJNQVJfTVNLMSAgICAgICAgICAgICAgICAgICAgICBSVENfQUxSTUFSX01TSzFfTXNrICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19BTFJNQVJfU1RfUG9zICAgICAgICAgICAgICAgICAgICAoNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19BTFJNQVJfU1RfTXNrICAgICAgICAgICAgICAgICAgICAoMHg3VUwgPDwgUlRDX0FMUk1BUl9TVF9Qb3MpICAgICAgIC8qITwgMHgwMDAwMDA3MCAqLw0KI2RlZmluZSBSVENfQUxSTUFSX1NUICAgICAgICAgICAgICAgICAgICAgICAgUlRDX0FMUk1BUl9TVF9Nc2sgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfQUxSTUFSX1NUXzAgICAgICAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IFJUQ19BTFJNQVJfU1RfUG9zKSAgICAgICAvKiE8IDB4MDAwMDAwMTAgKi8NCiNkZWZpbmUgUlRDX0FMUk1BUl9TVF8xICAgICAgICAgICAgICAgICAgICAgICgweDJVTCA8PCBSVENfQUxSTUFSX1NUX1BvcykgICAgICAgLyohPCAweDAwMDAwMDIwICovDQojZGVmaW5lIFJUQ19BTFJNQVJfU1RfMiAgICAgICAgICAgICAgICAgICAgICAoMHg0VUwgPDwgUlRDX0FMUk1BUl9TVF9Qb3MpICAgICAgIC8qITwgMHgwMDAwMDA0MCAqLw0KI2RlZmluZSBSVENfQUxSTUFSX1NVX1BvcyAgICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfQUxSTUFSX1NVX01zayAgICAgICAgICAgICAgICAgICAgKDB4RlVMIDw8IFJUQ19BTFJNQVJfU1VfUG9zKSAgICAgICAvKiE8IDB4MDAwMDAwMEYgKi8NCiNkZWZpbmUgUlRDX0FMUk1BUl9TVSAgICAgICAgICAgICAgICAgICAgICAgIFJUQ19BTFJNQVJfU1VfTXNrICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0FMUk1BUl9TVV8wICAgICAgICAgICAgICAgICAgICAgICgweDFVTCA8PCBSVENfQUxSTUFSX1NVX1BvcykgICAgICAgLyohPCAweDAwMDAwMDAxICovDQojZGVmaW5lIFJUQ19BTFJNQVJfU1VfMSAgICAgICAgICAgICAgICAgICAgICAoMHgyVUwgPDwgUlRDX0FMUk1BUl9TVV9Qb3MpICAgICAgIC8qITwgMHgwMDAwMDAwMiAqLw0KI2RlZmluZSBSVENfQUxSTUFSX1NVXzIgICAgICAgICAgICAgICAgICAgICAgKDB4NFVMIDw8IFJUQ19BTFJNQVJfU1VfUG9zKSAgICAgICAvKiE8IDB4MDAwMDAwMDQgKi8NCiNkZWZpbmUgUlRDX0FMUk1BUl9TVV8zICAgICAgICAgICAgICAgICAgICAgICgweDhVTCA8PCBSVENfQUxSTUFSX1NVX1BvcykgICAgICAgLyohPCAweDAwMDAwMDA4ICovDQoNCi8qKioqKioqKioqKioqKioqKioqKiAgQml0cyBkZWZpbml0aW9uIGZvciBSVENfQUxSTUJSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKiovDQojZGVmaW5lIFJUQ19BTFJNQlJfTVNLNF9Qb3MgICAgICAgICAgICAgICAgICAoMzFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19BTFJNQlJfTVNLNF9Nc2sgICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgUlRDX0FMUk1CUl9NU0s0X1BvcykgICAgIC8qITwgMHg4MDAwMDAwMCAqLw0KI2RlZmluZSBSVENfQUxSTUJSX01TSzQgICAgICAgICAgICAgICAgICAgICAgUlRDX0FMUk1CUl9NU0s0X01zayAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfQUxSTUJSX1dEU0VMX1BvcyAgICAgICAgICAgICAgICAgKDMwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfQUxSTUJSX1dEU0VMX01zayAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IFJUQ19BTFJNQlJfV0RTRUxfUG9zKSAgICAvKiE8IDB4NDAwMDAwMDAgKi8NCiNkZWZpbmUgUlRDX0FMUk1CUl9XRFNFTCAgICAgICAgICAgICAgICAgICAgIFJUQ19BTFJNQlJfV0RTRUxfTXNrICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0FMUk1CUl9EVF9Qb3MgICAgICAgICAgICAgICAgICAgICgyOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0FMUk1CUl9EVF9Nc2sgICAgICAgICAgICAgICAgICAgICgweDNVTCA8PCBSVENfQUxSTUJSX0RUX1BvcykgICAgICAgLyohPCAweDMwMDAwMDAwICovDQojZGVmaW5lIFJUQ19BTFJNQlJfRFQgICAgICAgICAgICAgICAgICAgICAgICBSVENfQUxSTUJSX0RUX01zayAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19BTFJNQlJfRFRfMCAgICAgICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgUlRDX0FMUk1CUl9EVF9Qb3MpICAgICAgIC8qITwgMHgxMDAwMDAwMCAqLw0KI2RlZmluZSBSVENfQUxSTUJSX0RUXzEgICAgICAgICAgICAgICAgICAgICAgKDB4MlVMIDw8IFJUQ19BTFJNQlJfRFRfUG9zKSAgICAgICAvKiE8IDB4MjAwMDAwMDAgKi8NCiNkZWZpbmUgUlRDX0FMUk1CUl9EVV9Qb3MgICAgICAgICAgICAgICAgICAgICgyNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0FMUk1CUl9EVV9Nc2sgICAgICAgICAgICAgICAgICAgICgweEZVTCA8PCBSVENfQUxSTUJSX0RVX1BvcykgICAgICAgLyohPCAweDBGMDAwMDAwICovDQojZGVmaW5lIFJUQ19BTFJNQlJfRFUgICAgICAgICAgICAgICAgICAgICAgICBSVENfQUxSTUJSX0RVX01zayAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19BTFJNQlJfRFVfMCAgICAgICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgUlRDX0FMUk1CUl9EVV9Qb3MpICAgICAgIC8qITwgMHgwMTAwMDAwMCAqLw0KI2RlZmluZSBSVENfQUxSTUJSX0RVXzEgICAgICAgICAgICAgICAgICAgICAgKDB4MlVMIDw8IFJUQ19BTFJNQlJfRFVfUG9zKSAgICAgICAvKiE8IDB4MDIwMDAwMDAgKi8NCiNkZWZpbmUgUlRDX0FMUk1CUl9EVV8yICAgICAgICAgICAgICAgICAgICAgICgweDRVTCA8PCBSVENfQUxSTUJSX0RVX1BvcykgICAgICAgLyohPCAweDA0MDAwMDAwICovDQojZGVmaW5lIFJUQ19BTFJNQlJfRFVfMyAgICAgICAgICAgICAgICAgICAgICAoMHg4VUwgPDwgUlRDX0FMUk1CUl9EVV9Qb3MpICAgICAgIC8qITwgMHgwODAwMDAwMCAqLw0KI2RlZmluZSBSVENfQUxSTUJSX01TSzNfUG9zICAgICAgICAgICAgICAgICAgKDIzVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfQUxSTUJSX01TSzNfTXNrICAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IFJUQ19BTFJNQlJfTVNLM19Qb3MpICAgICAvKiE8IDB4MDA4MDAwMDAgKi8NCiNkZWZpbmUgUlRDX0FMUk1CUl9NU0szICAgICAgICAgICAgICAgICAgICAgIFJUQ19BTFJNQlJfTVNLM19Nc2sgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0FMUk1CUl9QTV9Qb3MgICAgICAgICAgICAgICAgICAgICgyMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0FMUk1CUl9QTV9Nc2sgICAgICAgICAgICAgICAgICAgICgweDFVTCA8PCBSVENfQUxSTUJSX1BNX1BvcykgICAgICAgLyohPCAweDAwNDAwMDAwICovDQojZGVmaW5lIFJUQ19BTFJNQlJfUE0gICAgICAgICAgICAgICAgICAgICAgICBSVENfQUxSTUJSX1BNX01zayAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19BTFJNQlJfSFRfUG9zICAgICAgICAgICAgICAgICAgICAoMjBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19BTFJNQlJfSFRfTXNrICAgICAgICAgICAgICAgICAgICAoMHgzVUwgPDwgUlRDX0FMUk1CUl9IVF9Qb3MpICAgICAgIC8qITwgMHgwMDMwMDAwMCAqLw0KI2RlZmluZSBSVENfQUxSTUJSX0hUICAgICAgICAgICAgICAgICAgICAgICAgUlRDX0FMUk1CUl9IVF9Nc2sgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfQUxSTUJSX0hUXzAgICAgICAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IFJUQ19BTFJNQlJfSFRfUG9zKSAgICAgICAvKiE8IDB4MDAxMDAwMDAgKi8NCiNkZWZpbmUgUlRDX0FMUk1CUl9IVF8xICAgICAgICAgICAgICAgICAgICAgICgweDJVTCA8PCBSVENfQUxSTUJSX0hUX1BvcykgICAgICAgLyohPCAweDAwMjAwMDAwICovDQojZGVmaW5lIFJUQ19BTFJNQlJfSFVfUG9zICAgICAgICAgICAgICAgICAgICAoMTZVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19BTFJNQlJfSFVfTXNrICAgICAgICAgICAgICAgICAgICAoMHhGVUwgPDwgUlRDX0FMUk1CUl9IVV9Qb3MpICAgICAgIC8qITwgMHgwMDBGMDAwMCAqLw0KI2RlZmluZSBSVENfQUxSTUJSX0hVICAgICAgICAgICAgICAgICAgICAgICAgUlRDX0FMUk1CUl9IVV9Nc2sgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfQUxSTUJSX0hVXzAgICAgICAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IFJUQ19BTFJNQlJfSFVfUG9zKSAgICAgICAvKiE8IDB4MDAwMTAwMDAgKi8NCiNkZWZpbmUgUlRDX0FMUk1CUl9IVV8xICAgICAgICAgICAgICAgICAgICAgICgweDJVTCA8PCBSVENfQUxSTUJSX0hVX1BvcykgICAgICAgLyohPCAweDAwMDIwMDAwICovDQojZGVmaW5lIFJUQ19BTFJNQlJfSFVfMiAgICAgICAgICAgICAgICAgICAgICAoMHg0VUwgPDwgUlRDX0FMUk1CUl9IVV9Qb3MpICAgICAgIC8qITwgMHgwMDA0MDAwMCAqLw0KI2RlZmluZSBSVENfQUxSTUJSX0hVXzMgICAgICAgICAgICAgICAgICAgICAgKDB4OFVMIDw8IFJUQ19BTFJNQlJfSFVfUG9zKSAgICAgICAvKiE8IDB4MDAwODAwMDAgKi8NCiNkZWZpbmUgUlRDX0FMUk1CUl9NU0syX1BvcyAgICAgICAgICAgICAgICAgICgxNVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0FMUk1CUl9NU0syX01zayAgICAgICAgICAgICAgICAgICgweDFVTCA8PCBSVENfQUxSTUJSX01TSzJfUG9zKSAgICAgLyohPCAweDAwMDA4MDAwICovDQojZGVmaW5lIFJUQ19BTFJNQlJfTVNLMiAgICAgICAgICAgICAgICAgICAgICBSVENfQUxSTUJSX01TSzJfTXNrICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19BTFJNQlJfTU5UX1BvcyAgICAgICAgICAgICAgICAgICAoMTJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19BTFJNQlJfTU5UX01zayAgICAgICAgICAgICAgICAgICAoMHg3VUwgPDwgUlRDX0FMUk1CUl9NTlRfUG9zKSAgICAgIC8qITwgMHgwMDAwNzAwMCAqLw0KI2RlZmluZSBSVENfQUxSTUJSX01OVCAgICAgICAgICAgICAgICAgICAgICAgUlRDX0FMUk1CUl9NTlRfTXNrICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfQUxSTUJSX01OVF8wICAgICAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IFJUQ19BTFJNQlJfTU5UX1BvcykgICAgICAvKiE8IDB4MDAwMDEwMDAgKi8NCiNkZWZpbmUgUlRDX0FMUk1CUl9NTlRfMSAgICAgICAgICAgICAgICAgICAgICgweDJVTCA8PCBSVENfQUxSTUJSX01OVF9Qb3MpICAgICAgLyohPCAweDAwMDAyMDAwICovDQojZGVmaW5lIFJUQ19BTFJNQlJfTU5UXzIgICAgICAgICAgICAgICAgICAgICAoMHg0VUwgPDwgUlRDX0FMUk1CUl9NTlRfUG9zKSAgICAgIC8qITwgMHgwMDAwNDAwMCAqLw0KI2RlZmluZSBSVENfQUxSTUJSX01OVV9Qb3MgICAgICAgICAgICAgICAgICAgKDhVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfQUxSTUJSX01OVV9Nc2sgICAgICAgICAgICAgICAgICAgKDB4RlVMIDw8IFJUQ19BTFJNQlJfTU5VX1BvcykgICAgICAvKiE8IDB4MDAwMDBGMDAgKi8NCiNkZWZpbmUgUlRDX0FMUk1CUl9NTlUgICAgICAgICAgICAgICAgICAgICAgIFJUQ19BTFJNQlJfTU5VX01zayAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0FMUk1CUl9NTlVfMCAgICAgICAgICAgICAgICAgICAgICgweDFVTCA8PCBSVENfQUxSTUJSX01OVV9Qb3MpICAgICAgLyohPCAweDAwMDAwMTAwICovDQojZGVmaW5lIFJUQ19BTFJNQlJfTU5VXzEgICAgICAgICAgICAgICAgICAgICAoMHgyVUwgPDwgUlRDX0FMUk1CUl9NTlVfUG9zKSAgICAgIC8qITwgMHgwMDAwMDIwMCAqLw0KI2RlZmluZSBSVENfQUxSTUJSX01OVV8yICAgICAgICAgICAgICAgICAgICAgKDB4NFVMIDw8IFJUQ19BTFJNQlJfTU5VX1BvcykgICAgICAvKiE8IDB4MDAwMDA0MDAgKi8NCiNkZWZpbmUgUlRDX0FMUk1CUl9NTlVfMyAgICAgICAgICAgICAgICAgICAgICgweDhVTCA8PCBSVENfQUxSTUJSX01OVV9Qb3MpICAgICAgLyohPCAweDAwMDAwODAwICovDQojZGVmaW5lIFJUQ19BTFJNQlJfTVNLMV9Qb3MgICAgICAgICAgICAgICAgICAoN1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19BTFJNQlJfTVNLMV9Nc2sgICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgUlRDX0FMUk1CUl9NU0sxX1BvcykgICAgIC8qITwgMHgwMDAwMDA4MCAqLw0KI2RlZmluZSBSVENfQUxSTUJSX01TSzEgICAgICAgICAgICAgICAgICAgICAgUlRDX0FMUk1CUl9NU0sxX01zayAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfQUxSTUJSX1NUX1BvcyAgICAgICAgICAgICAgICAgICAgKDRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfQUxSTUJSX1NUX01zayAgICAgICAgICAgICAgICAgICAgKDB4N1VMIDw8IFJUQ19BTFJNQlJfU1RfUG9zKSAgICAgICAvKiE8IDB4MDAwMDAwNzAgKi8NCiNkZWZpbmUgUlRDX0FMUk1CUl9TVCAgICAgICAgICAgICAgICAgICAgICAgIFJUQ19BTFJNQlJfU1RfTXNrICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0FMUk1CUl9TVF8wICAgICAgICAgICAgICAgICAgICAgICgweDFVTCA8PCBSVENfQUxSTUJSX1NUX1BvcykgICAgICAgLyohPCAweDAwMDAwMDEwICovDQojZGVmaW5lIFJUQ19BTFJNQlJfU1RfMSAgICAgICAgICAgICAgICAgICAgICAoMHgyVUwgPDwgUlRDX0FMUk1CUl9TVF9Qb3MpICAgICAgIC8qITwgMHgwMDAwMDAyMCAqLw0KI2RlZmluZSBSVENfQUxSTUJSX1NUXzIgICAgICAgICAgICAgICAgICAgICAgKDB4NFVMIDw8IFJUQ19BTFJNQlJfU1RfUG9zKSAgICAgICAvKiE8IDB4MDAwMDAwNDAgKi8NCiNkZWZpbmUgUlRDX0FMUk1CUl9TVV9Qb3MgICAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0FMUk1CUl9TVV9Nc2sgICAgICAgICAgICAgICAgICAgICgweEZVTCA8PCBSVENfQUxSTUJSX1NVX1BvcykgICAgICAgLyohPCAweDAwMDAwMDBGICovDQojZGVmaW5lIFJUQ19BTFJNQlJfU1UgICAgICAgICAgICAgICAgICAgICAgICBSVENfQUxSTUJSX1NVX01zayAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19BTFJNQlJfU1VfMCAgICAgICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgUlRDX0FMUk1CUl9TVV9Qb3MpICAgICAgIC8qITwgMHgwMDAwMDAwMSAqLw0KI2RlZmluZSBSVENfQUxSTUJSX1NVXzEgICAgICAgICAgICAgICAgICAgICAgKDB4MlVMIDw8IFJUQ19BTFJNQlJfU1VfUG9zKSAgICAgICAvKiE8IDB4MDAwMDAwMDIgKi8NCiNkZWZpbmUgUlRDX0FMUk1CUl9TVV8yICAgICAgICAgICAgICAgICAgICAgICgweDRVTCA8PCBSVENfQUxSTUJSX1NVX1BvcykgICAgICAgLyohPCAweDAwMDAwMDA0ICovDQojZGVmaW5lIFJUQ19BTFJNQlJfU1VfMyAgICAgICAgICAgICAgICAgICAgICAoMHg4VUwgPDwgUlRDX0FMUk1CUl9TVV9Qb3MpICAgICAgIC8qITwgMHgwMDAwMDAwOCAqLw0KDQovKioqKioqKioqKioqKioqKioqKiogIEJpdHMgZGVmaW5pdGlvbiBmb3IgUlRDX1dQUiByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBSVENfV1BSX0tFWV9Qb3MgICAgICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfV1BSX0tFWV9Nc2sgICAgICAgICAgICAgICAgICAgICAgKDB4RkZVTCA8PCBSVENfV1BSX0tFWV9Qb3MpICAgICAgICAvKiE8IDB4MDAwMDAwRkYgKi8NCiNkZWZpbmUgUlRDX1dQUl9LRVkgICAgICAgICAgICAgICAgICAgICAgICAgIFJUQ19XUFJfS0VZX01zayAgICAgICAgICAgICAgICAgICANCg0KLyoqKioqKioqKioqKioqKioqKioqICBCaXRzIGRlZmluaXRpb24gZm9yIFJUQ19TU1IgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgUlRDX1NTUl9TU19Qb3MgICAgICAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX1NTUl9TU19Nc2sgICAgICAgICAgICAgICAgICAgICAgICgweEZGRkZVTCA8PCBSVENfU1NSX1NTX1BvcykgICAgICAgLyohPCAweDAwMDBGRkZGICovDQojZGVmaW5lIFJUQ19TU1JfU1MgICAgICAgICAgICAgICAgICAgICAgICAgICBSVENfU1NSX1NTX01zayAgICAgICAgICAgICAgICAgICAgDQoNCi8qKioqKioqKioqKioqKioqKioqKiAgQml0cyBkZWZpbml0aW9uIGZvciBSVENfU0hJRlRSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKiovDQojZGVmaW5lIFJUQ19TSElGVFJfU1VCRlNfUG9zICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19TSElGVFJfU1VCRlNfTXNrICAgICAgICAgICAgICAgICAoMHg3RkZGVUwgPDwgUlRDX1NISUZUUl9TVUJGU19Qb3MpIC8qITwgMHgwMDAwN0ZGRiAqLw0KI2RlZmluZSBSVENfU0hJRlRSX1NVQkZTICAgICAgICAgICAgICAgICAgICAgUlRDX1NISUZUUl9TVUJGU19Nc2sgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfU0hJRlRSX0FERDFTX1BvcyAgICAgICAgICAgICAgICAgKDMxVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfU0hJRlRSX0FERDFTX01zayAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IFJUQ19TSElGVFJfQUREMVNfUG9zKSAgICAvKiE8IDB4ODAwMDAwMDAgKi8NCiNkZWZpbmUgUlRDX1NISUZUUl9BREQxUyAgICAgICAgICAgICAgICAgICAgIFJUQ19TSElGVFJfQUREMVNfTXNrICAgICAgICAgICAgICANCg0KLyoqKioqKioqKioqKioqKioqKioqICBCaXRzIGRlZmluaXRpb24gZm9yIFJUQ19UU1RSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgUlRDX1RTVFJfUE1fUG9zICAgICAgICAgICAgICAgICAgICAgICgyMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX1RTVFJfUE1fTXNrICAgICAgICAgICAgICAgICAgICAgICgweDFVTCA8PCBSVENfVFNUUl9QTV9Qb3MpICAgICAgICAgLyohPCAweDAwNDAwMDAwICovDQojZGVmaW5lIFJUQ19UU1RSX1BNICAgICAgICAgICAgICAgICAgICAgICAgICBSVENfVFNUUl9QTV9Nc2sgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19UU1RSX0hUX1BvcyAgICAgICAgICAgICAgICAgICAgICAoMjBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19UU1RSX0hUX01zayAgICAgICAgICAgICAgICAgICAgICAoMHgzVUwgPDwgUlRDX1RTVFJfSFRfUG9zKSAgICAgICAgIC8qITwgMHgwMDMwMDAwMCAqLw0KI2RlZmluZSBSVENfVFNUUl9IVCAgICAgICAgICAgICAgICAgICAgICAgICAgUlRDX1RTVFJfSFRfTXNrICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfVFNUUl9IVF8wICAgICAgICAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IFJUQ19UU1RSX0hUX1BvcykgICAgICAgICAvKiE8IDB4MDAxMDAwMDAgKi8NCiNkZWZpbmUgUlRDX1RTVFJfSFRfMSAgICAgICAgICAgICAgICAgICAgICAgICgweDJVTCA8PCBSVENfVFNUUl9IVF9Qb3MpICAgICAgICAgLyohPCAweDAwMjAwMDAwICovDQojZGVmaW5lIFJUQ19UU1RSX0hVX1BvcyAgICAgICAgICAgICAgICAgICAgICAoMTZVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19UU1RSX0hVX01zayAgICAgICAgICAgICAgICAgICAgICAoMHhGVUwgPDwgUlRDX1RTVFJfSFVfUG9zKSAgICAgICAgIC8qITwgMHgwMDBGMDAwMCAqLw0KI2RlZmluZSBSVENfVFNUUl9IVSAgICAgICAgICAgICAgICAgICAgICAgICAgUlRDX1RTVFJfSFVfTXNrICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfVFNUUl9IVV8wICAgICAgICAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IFJUQ19UU1RSX0hVX1BvcykgICAgICAgICAvKiE8IDB4MDAwMTAwMDAgKi8NCiNkZWZpbmUgUlRDX1RTVFJfSFVfMSAgICAgICAgICAgICAgICAgICAgICAgICgweDJVTCA8PCBSVENfVFNUUl9IVV9Qb3MpICAgICAgICAgLyohPCAweDAwMDIwMDAwICovDQojZGVmaW5lIFJUQ19UU1RSX0hVXzIgICAgICAgICAgICAgICAgICAgICAgICAoMHg0VUwgPDwgUlRDX1RTVFJfSFVfUG9zKSAgICAgICAgIC8qITwgMHgwMDA0MDAwMCAqLw0KI2RlZmluZSBSVENfVFNUUl9IVV8zICAgICAgICAgICAgICAgICAgICAgICAgKDB4OFVMIDw8IFJUQ19UU1RSX0hVX1BvcykgICAgICAgICAvKiE8IDB4MDAwODAwMDAgKi8NCiNkZWZpbmUgUlRDX1RTVFJfTU5UX1BvcyAgICAgICAgICAgICAgICAgICAgICgxMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX1RTVFJfTU5UX01zayAgICAgICAgICAgICAgICAgICAgICgweDdVTCA8PCBSVENfVFNUUl9NTlRfUG9zKSAgICAgICAgLyohPCAweDAwMDA3MDAwICovDQojZGVmaW5lIFJUQ19UU1RSX01OVCAgICAgICAgICAgICAgICAgICAgICAgICBSVENfVFNUUl9NTlRfTXNrICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19UU1RSX01OVF8wICAgICAgICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgUlRDX1RTVFJfTU5UX1BvcykgICAgICAgIC8qITwgMHgwMDAwMTAwMCAqLw0KI2RlZmluZSBSVENfVFNUUl9NTlRfMSAgICAgICAgICAgICAgICAgICAgICAgKDB4MlVMIDw8IFJUQ19UU1RSX01OVF9Qb3MpICAgICAgICAvKiE8IDB4MDAwMDIwMDAgKi8NCiNkZWZpbmUgUlRDX1RTVFJfTU5UXzIgICAgICAgICAgICAgICAgICAgICAgICgweDRVTCA8PCBSVENfVFNUUl9NTlRfUG9zKSAgICAgICAgLyohPCAweDAwMDA0MDAwICovDQojZGVmaW5lIFJUQ19UU1RSX01OVV9Qb3MgICAgICAgICAgICAgICAgICAgICAoOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19UU1RSX01OVV9Nc2sgICAgICAgICAgICAgICAgICAgICAoMHhGVUwgPDwgUlRDX1RTVFJfTU5VX1BvcykgICAgICAgIC8qITwgMHgwMDAwMEYwMCAqLw0KI2RlZmluZSBSVENfVFNUUl9NTlUgICAgICAgICAgICAgICAgICAgICAgICAgUlRDX1RTVFJfTU5VX01zayAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfVFNUUl9NTlVfMCAgICAgICAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IFJUQ19UU1RSX01OVV9Qb3MpICAgICAgICAvKiE8IDB4MDAwMDAxMDAgKi8NCiNkZWZpbmUgUlRDX1RTVFJfTU5VXzEgICAgICAgICAgICAgICAgICAgICAgICgweDJVTCA8PCBSVENfVFNUUl9NTlVfUG9zKSAgICAgICAgLyohPCAweDAwMDAwMjAwICovDQojZGVmaW5lIFJUQ19UU1RSX01OVV8yICAgICAgICAgICAgICAgICAgICAgICAoMHg0VUwgPDwgUlRDX1RTVFJfTU5VX1BvcykgICAgICAgIC8qITwgMHgwMDAwMDQwMCAqLw0KI2RlZmluZSBSVENfVFNUUl9NTlVfMyAgICAgICAgICAgICAgICAgICAgICAgKDB4OFVMIDw8IFJUQ19UU1RSX01OVV9Qb3MpICAgICAgICAvKiE8IDB4MDAwMDA4MDAgKi8NCiNkZWZpbmUgUlRDX1RTVFJfU1RfUG9zICAgICAgICAgICAgICAgICAgICAgICg0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX1RTVFJfU1RfTXNrICAgICAgICAgICAgICAgICAgICAgICgweDdVTCA8PCBSVENfVFNUUl9TVF9Qb3MpICAgICAgICAgLyohPCAweDAwMDAwMDcwICovDQojZGVmaW5lIFJUQ19UU1RSX1NUICAgICAgICAgICAgICAgICAgICAgICAgICBSVENfVFNUUl9TVF9Nc2sgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19UU1RSX1NUXzAgICAgICAgICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgUlRDX1RTVFJfU1RfUG9zKSAgICAgICAgIC8qITwgMHgwMDAwMDAxMCAqLw0KI2RlZmluZSBSVENfVFNUUl9TVF8xICAgICAgICAgICAgICAgICAgICAgICAgKDB4MlVMIDw8IFJUQ19UU1RSX1NUX1BvcykgICAgICAgICAvKiE8IDB4MDAwMDAwMjAgKi8NCiNkZWZpbmUgUlRDX1RTVFJfU1RfMiAgICAgICAgICAgICAgICAgICAgICAgICgweDRVTCA8PCBSVENfVFNUUl9TVF9Qb3MpICAgICAgICAgLyohPCAweDAwMDAwMDQwICovDQojZGVmaW5lIFJUQ19UU1RSX1NVX1BvcyAgICAgICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19UU1RSX1NVX01zayAgICAgICAgICAgICAgICAgICAgICAoMHhGVUwgPDwgUlRDX1RTVFJfU1VfUG9zKSAgICAgICAgIC8qITwgMHgwMDAwMDAwRiAqLw0KI2RlZmluZSBSVENfVFNUUl9TVSAgICAgICAgICAgICAgICAgICAgICAgICAgUlRDX1RTVFJfU1VfTXNrICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfVFNUUl9TVV8wICAgICAgICAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IFJUQ19UU1RSX1NVX1BvcykgICAgICAgICAvKiE8IDB4MDAwMDAwMDEgKi8NCiNkZWZpbmUgUlRDX1RTVFJfU1VfMSAgICAgICAgICAgICAgICAgICAgICAgICgweDJVTCA8PCBSVENfVFNUUl9TVV9Qb3MpICAgICAgICAgLyohPCAweDAwMDAwMDAyICovDQojZGVmaW5lIFJUQ19UU1RSX1NVXzIgICAgICAgICAgICAgICAgICAgICAgICAoMHg0VUwgPDwgUlRDX1RTVFJfU1VfUG9zKSAgICAgICAgIC8qITwgMHgwMDAwMDAwNCAqLw0KI2RlZmluZSBSVENfVFNUUl9TVV8zICAgICAgICAgICAgICAgICAgICAgICAgKDB4OFVMIDw8IFJUQ19UU1RSX1NVX1BvcykgICAgICAgICAvKiE8IDB4MDAwMDAwMDggKi8NCg0KLyoqKioqKioqKioqKioqKioqKioqICBCaXRzIGRlZmluaXRpb24gZm9yIFJUQ19UU0RSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgUlRDX1RTRFJfV0RVX1BvcyAgICAgICAgICAgICAgICAgICAgICgxM1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX1RTRFJfV0RVX01zayAgICAgICAgICAgICAgICAgICAgICgweDdVTCA8PCBSVENfVFNEUl9XRFVfUG9zKSAgICAgICAgLyohPCAweDAwMDBFMDAwICovDQojZGVmaW5lIFJUQ19UU0RSX1dEVSAgICAgICAgICAgICAgICAgICAgICAgICBSVENfVFNEUl9XRFVfTXNrICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19UU0RSX1dEVV8wICAgICAgICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgUlRDX1RTRFJfV0RVX1BvcykgICAgICAgIC8qITwgMHgwMDAwMjAwMCAqLw0KI2RlZmluZSBSVENfVFNEUl9XRFVfMSAgICAgICAgICAgICAgICAgICAgICAgKDB4MlVMIDw8IFJUQ19UU0RSX1dEVV9Qb3MpICAgICAgICAvKiE8IDB4MDAwMDQwMDAgKi8NCiNkZWZpbmUgUlRDX1RTRFJfV0RVXzIgICAgICAgICAgICAgICAgICAgICAgICgweDRVTCA8PCBSVENfVFNEUl9XRFVfUG9zKSAgICAgICAgLyohPCAweDAwMDA4MDAwICovDQojZGVmaW5lIFJUQ19UU0RSX01UX1BvcyAgICAgICAgICAgICAgICAgICAgICAoMTJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19UU0RSX01UX01zayAgICAgICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgUlRDX1RTRFJfTVRfUG9zKSAgICAgICAgIC8qITwgMHgwMDAwMTAwMCAqLw0KI2RlZmluZSBSVENfVFNEUl9NVCAgICAgICAgICAgICAgICAgICAgICAgICAgUlRDX1RTRFJfTVRfTXNrICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfVFNEUl9NVV9Qb3MgICAgICAgICAgICAgICAgICAgICAgKDhVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfVFNEUl9NVV9Nc2sgICAgICAgICAgICAgICAgICAgICAgKDB4RlVMIDw8IFJUQ19UU0RSX01VX1BvcykgICAgICAgICAvKiE8IDB4MDAwMDBGMDAgKi8NCiNkZWZpbmUgUlRDX1RTRFJfTVUgICAgICAgICAgICAgICAgICAgICAgICAgIFJUQ19UU0RSX01VX01zayAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX1RTRFJfTVVfMCAgICAgICAgICAgICAgICAgICAgICAgICgweDFVTCA8PCBSVENfVFNEUl9NVV9Qb3MpICAgICAgICAgLyohPCAweDAwMDAwMTAwICovDQojZGVmaW5lIFJUQ19UU0RSX01VXzEgICAgICAgICAgICAgICAgICAgICAgICAoMHgyVUwgPDwgUlRDX1RTRFJfTVVfUG9zKSAgICAgICAgIC8qITwgMHgwMDAwMDIwMCAqLw0KI2RlZmluZSBSVENfVFNEUl9NVV8yICAgICAgICAgICAgICAgICAgICAgICAgKDB4NFVMIDw8IFJUQ19UU0RSX01VX1BvcykgICAgICAgICAvKiE8IDB4MDAwMDA0MDAgKi8NCiNkZWZpbmUgUlRDX1RTRFJfTVVfMyAgICAgICAgICAgICAgICAgICAgICAgICgweDhVTCA8PCBSVENfVFNEUl9NVV9Qb3MpICAgICAgICAgLyohPCAweDAwMDAwODAwICovDQojZGVmaW5lIFJUQ19UU0RSX0RUX1BvcyAgICAgICAgICAgICAgICAgICAgICAoNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19UU0RSX0RUX01zayAgICAgICAgICAgICAgICAgICAgICAoMHgzVUwgPDwgUlRDX1RTRFJfRFRfUG9zKSAgICAgICAgIC8qITwgMHgwMDAwMDAzMCAqLw0KI2RlZmluZSBSVENfVFNEUl9EVCAgICAgICAgICAgICAgICAgICAgICAgICAgUlRDX1RTRFJfRFRfTXNrICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfVFNEUl9EVF8wICAgICAgICAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IFJUQ19UU0RSX0RUX1BvcykgICAgICAgICAvKiE8IDB4MDAwMDAwMTAgKi8NCiNkZWZpbmUgUlRDX1RTRFJfRFRfMSAgICAgICAgICAgICAgICAgICAgICAgICgweDJVTCA8PCBSVENfVFNEUl9EVF9Qb3MpICAgICAgICAgLyohPCAweDAwMDAwMDIwICovDQojZGVmaW5lIFJUQ19UU0RSX0RVX1BvcyAgICAgICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19UU0RSX0RVX01zayAgICAgICAgICAgICAgICAgICAgICAoMHhGVUwgPDwgUlRDX1RTRFJfRFVfUG9zKSAgICAgICAgIC8qITwgMHgwMDAwMDAwRiAqLw0KI2RlZmluZSBSVENfVFNEUl9EVSAgICAgICAgICAgICAgICAgICAgICAgICAgUlRDX1RTRFJfRFVfTXNrICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfVFNEUl9EVV8wICAgICAgICAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IFJUQ19UU0RSX0RVX1BvcykgICAgICAgICAvKiE8IDB4MDAwMDAwMDEgKi8NCiNkZWZpbmUgUlRDX1RTRFJfRFVfMSAgICAgICAgICAgICAgICAgICAgICAgICgweDJVTCA8PCBSVENfVFNEUl9EVV9Qb3MpICAgICAgICAgLyohPCAweDAwMDAwMDAyICovDQojZGVmaW5lIFJUQ19UU0RSX0RVXzIgICAgICAgICAgICAgICAgICAgICAgICAoMHg0VUwgPDwgUlRDX1RTRFJfRFVfUG9zKSAgICAgICAgIC8qITwgMHgwMDAwMDAwNCAqLw0KI2RlZmluZSBSVENfVFNEUl9EVV8zICAgICAgICAgICAgICAgICAgICAgICAgKDB4OFVMIDw8IFJUQ19UU0RSX0RVX1BvcykgICAgICAgICAvKiE8IDB4MDAwMDAwMDggKi8NCg0KLyoqKioqKioqKioqKioqKioqKioqICBCaXRzIGRlZmluaXRpb24gZm9yIFJUQ19UU1NTUiByZWdpc3RlciAgKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgUlRDX1RTU1NSX1NTX1BvcyAgICAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX1RTU1NSX1NTX01zayAgICAgICAgICAgICAgICAgICAgICgweEZGRkZVTCA8PCBSVENfVFNTU1JfU1NfUG9zKSAgICAgLyohPCAweDAwMDBGRkZGICovDQojZGVmaW5lIFJUQ19UU1NTUl9TUyAgICAgICAgICAgICAgICAgICAgICAgICBSVENfVFNTU1JfU1NfTXNrICAgICAgICAgICAgICAgICAgDQoNCi8qKioqKioqKioqKioqKioqKioqKiAgQml0cyBkZWZpbml0aW9uIGZvciBSVENfQ0FMIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgUlRDX0NBTFJfQ0FMUF9Qb3MgICAgICAgICAgICAgICAgICAgICgxNVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0NBTFJfQ0FMUF9Nc2sgICAgICAgICAgICAgICAgICAgICgweDFVTCA8PCBSVENfQ0FMUl9DQUxQX1BvcykgICAgICAgLyohPCAweDAwMDA4MDAwICovDQojZGVmaW5lIFJUQ19DQUxSX0NBTFAgICAgICAgICAgICAgICAgICAgICAgICBSVENfQ0FMUl9DQUxQX01zayAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19DQUxSX0NBTFc4X1BvcyAgICAgICAgICAgICAgICAgICAoMTRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19DQUxSX0NBTFc4X01zayAgICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgUlRDX0NBTFJfQ0FMVzhfUG9zKSAgICAgIC8qITwgMHgwMDAwNDAwMCAqLw0KI2RlZmluZSBSVENfQ0FMUl9DQUxXOCAgICAgICAgICAgICAgICAgICAgICAgUlRDX0NBTFJfQ0FMVzhfTXNrICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfQ0FMUl9DQUxXMTZfUG9zICAgICAgICAgICAgICAgICAgKDEzVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfQ0FMUl9DQUxXMTZfTXNrICAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IFJUQ19DQUxSX0NBTFcxNl9Qb3MpICAgICAvKiE8IDB4MDAwMDIwMDAgKi8NCiNkZWZpbmUgUlRDX0NBTFJfQ0FMVzE2ICAgICAgICAgICAgICAgICAgICAgIFJUQ19DQUxSX0NBTFcxNl9Nc2sgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0NBTFJfQ0FMTV9Qb3MgICAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0NBTFJfQ0FMTV9Nc2sgICAgICAgICAgICAgICAgICAgICgweDFGRlVMIDw8IFJUQ19DQUxSX0NBTE1fUG9zKSAgICAgLyohPCAweDAwMDAwMUZGICovDQojZGVmaW5lIFJUQ19DQUxSX0NBTE0gICAgICAgICAgICAgICAgICAgICAgICBSVENfQ0FMUl9DQUxNX01zayAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19DQUxSX0NBTE1fMCAgICAgICAgICAgICAgICAgICAgICAoMHgwMDFVTCA8PCBSVENfQ0FMUl9DQUxNX1BvcykgICAgIC8qITwgMHgwMDAwMDAwMSAqLw0KI2RlZmluZSBSVENfQ0FMUl9DQUxNXzEgICAgICAgICAgICAgICAgICAgICAgKDB4MDAyVUwgPDwgUlRDX0NBTFJfQ0FMTV9Qb3MpICAgICAvKiE8IDB4MDAwMDAwMDIgKi8NCiNkZWZpbmUgUlRDX0NBTFJfQ0FMTV8yICAgICAgICAgICAgICAgICAgICAgICgweDAwNFVMIDw8IFJUQ19DQUxSX0NBTE1fUG9zKSAgICAgLyohPCAweDAwMDAwMDA0ICovDQojZGVmaW5lIFJUQ19DQUxSX0NBTE1fMyAgICAgICAgICAgICAgICAgICAgICAoMHgwMDhVTCA8PCBSVENfQ0FMUl9DQUxNX1BvcykgICAgIC8qITwgMHgwMDAwMDAwOCAqLw0KI2RlZmluZSBSVENfQ0FMUl9DQUxNXzQgICAgICAgICAgICAgICAgICAgICAgKDB4MDEwVUwgPDwgUlRDX0NBTFJfQ0FMTV9Qb3MpICAgICAvKiE8IDB4MDAwMDAwMTAgKi8NCiNkZWZpbmUgUlRDX0NBTFJfQ0FMTV81ICAgICAgICAgICAgICAgICAgICAgICgweDAyMFVMIDw8IFJUQ19DQUxSX0NBTE1fUG9zKSAgICAgLyohPCAweDAwMDAwMDIwICovDQojZGVmaW5lIFJUQ19DQUxSX0NBTE1fNiAgICAgICAgICAgICAgICAgICAgICAoMHgwNDBVTCA8PCBSVENfQ0FMUl9DQUxNX1BvcykgICAgIC8qITwgMHgwMDAwMDA0MCAqLw0KI2RlZmluZSBSVENfQ0FMUl9DQUxNXzcgICAgICAgICAgICAgICAgICAgICAgKDB4MDgwVUwgPDwgUlRDX0NBTFJfQ0FMTV9Qb3MpICAgICAvKiE8IDB4MDAwMDAwODAgKi8NCiNkZWZpbmUgUlRDX0NBTFJfQ0FMTV84ICAgICAgICAgICAgICAgICAgICAgICgweDEwMFVMIDw8IFJUQ19DQUxSX0NBTE1fUG9zKSAgICAgLyohPCAweDAwMDAwMTAwICovDQoNCi8qKioqKioqKioqKioqKioqKioqKiAgQml0cyBkZWZpbml0aW9uIGZvciBSVENfVEFGQ1IgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKiovDQojZGVmaW5lIFJUQ19UQUZDUl9BTEFSTU9VVFRZUEVfUG9zICAgICAgICAgICAoMThVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19UQUZDUl9BTEFSTU9VVFRZUEVfTXNrICAgICAgICAgICAoMHgxVUwgPDwgUlRDX1RBRkNSX0FMQVJNT1VUVFlQRV9Qb3MpIC8qITwgMHgwMDA0MDAwMCAqLw0KI2RlZmluZSBSVENfVEFGQ1JfQUxBUk1PVVRUWVBFICAgICAgICAgICAgICAgUlRDX1RBRkNSX0FMQVJNT1VUVFlQRV9Nc2sgICAgICAgIA0KI2RlZmluZSBSVENfVEFGQ1JfVEFNUFBVRElTX1BvcyAgICAgICAgICAgICAgKDE1VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfVEFGQ1JfVEFNUFBVRElTX01zayAgICAgICAgICAgICAgKDB4MVVMIDw8IFJUQ19UQUZDUl9UQU1QUFVESVNfUG9zKSAvKiE8IDB4MDAwMDgwMDAgKi8NCiNkZWZpbmUgUlRDX1RBRkNSX1RBTVBQVURJUyAgICAgICAgICAgICAgICAgIFJUQ19UQUZDUl9UQU1QUFVESVNfTXNrICAgICAgICAgICANCiNkZWZpbmUgUlRDX1RBRkNSX1RBTVBQUkNIX1BvcyAgICAgICAgICAgICAgICgxM1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX1RBRkNSX1RBTVBQUkNIX01zayAgICAgICAgICAgICAgICgweDNVTCA8PCBSVENfVEFGQ1JfVEFNUFBSQ0hfUG9zKSAgLyohPCAweDAwMDA2MDAwICovDQojZGVmaW5lIFJUQ19UQUZDUl9UQU1QUFJDSCAgICAgICAgICAgICAgICAgICBSVENfVEFGQ1JfVEFNUFBSQ0hfTXNrICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19UQUZDUl9UQU1QUFJDSF8wICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgUlRDX1RBRkNSX1RBTVBQUkNIX1BvcykgIC8qITwgMHgwMDAwMjAwMCAqLw0KI2RlZmluZSBSVENfVEFGQ1JfVEFNUFBSQ0hfMSAgICAgICAgICAgICAgICAgKDB4MlVMIDw8IFJUQ19UQUZDUl9UQU1QUFJDSF9Qb3MpICAvKiE8IDB4MDAwMDQwMDAgKi8NCiNkZWZpbmUgUlRDX1RBRkNSX1RBTVBGTFRfUG9zICAgICAgICAgICAgICAgICgxMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX1RBRkNSX1RBTVBGTFRfTXNrICAgICAgICAgICAgICAgICgweDNVTCA8PCBSVENfVEFGQ1JfVEFNUEZMVF9Qb3MpICAgLyohPCAweDAwMDAxODAwICovDQojZGVmaW5lIFJUQ19UQUZDUl9UQU1QRkxUICAgICAgICAgICAgICAgICAgICBSVENfVEFGQ1JfVEFNUEZMVF9Nc2sgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19UQUZDUl9UQU1QRkxUXzAgICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgUlRDX1RBRkNSX1RBTVBGTFRfUG9zKSAgIC8qITwgMHgwMDAwMDgwMCAqLw0KI2RlZmluZSBSVENfVEFGQ1JfVEFNUEZMVF8xICAgICAgICAgICAgICAgICAgKDB4MlVMIDw8IFJUQ19UQUZDUl9UQU1QRkxUX1BvcykgICAvKiE8IDB4MDAwMDEwMDAgKi8NCiNkZWZpbmUgUlRDX1RBRkNSX1RBTVBGUkVRX1BvcyAgICAgICAgICAgICAgICg4VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX1RBRkNSX1RBTVBGUkVRX01zayAgICAgICAgICAgICAgICgweDdVTCA8PCBSVENfVEFGQ1JfVEFNUEZSRVFfUG9zKSAgLyohPCAweDAwMDAwNzAwICovDQojZGVmaW5lIFJUQ19UQUZDUl9UQU1QRlJFUSAgICAgICAgICAgICAgICAgICBSVENfVEFGQ1JfVEFNUEZSRVFfTXNrICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19UQUZDUl9UQU1QRlJFUV8wICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgUlRDX1RBRkNSX1RBTVBGUkVRX1BvcykgIC8qITwgMHgwMDAwMDEwMCAqLw0KI2RlZmluZSBSVENfVEFGQ1JfVEFNUEZSRVFfMSAgICAgICAgICAgICAgICAgKDB4MlVMIDw8IFJUQ19UQUZDUl9UQU1QRlJFUV9Qb3MpICAvKiE8IDB4MDAwMDAyMDAgKi8NCiNkZWZpbmUgUlRDX1RBRkNSX1RBTVBGUkVRXzIgICAgICAgICAgICAgICAgICgweDRVTCA8PCBSVENfVEFGQ1JfVEFNUEZSRVFfUG9zKSAgLyohPCAweDAwMDAwNDAwICovDQojZGVmaW5lIFJUQ19UQUZDUl9UQU1QVFNfUG9zICAgICAgICAgICAgICAgICAoN1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19UQUZDUl9UQU1QVFNfTXNrICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgUlRDX1RBRkNSX1RBTVBUU19Qb3MpICAgIC8qITwgMHgwMDAwMDA4MCAqLw0KI2RlZmluZSBSVENfVEFGQ1JfVEFNUFRTICAgICAgICAgICAgICAgICAgICAgUlRDX1RBRkNSX1RBTVBUU19Nc2sgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfVEFGQ1JfVEFNUDNUUkdfUG9zICAgICAgICAgICAgICAgKDZVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfVEFGQ1JfVEFNUDNUUkdfTXNrICAgICAgICAgICAgICAgKDB4MVVMIDw8IFJUQ19UQUZDUl9UQU1QM1RSR19Qb3MpICAvKiE8IDB4MDAwMDAwNDAgKi8NCiNkZWZpbmUgUlRDX1RBRkNSX1RBTVAzVFJHICAgICAgICAgICAgICAgICAgIFJUQ19UQUZDUl9UQU1QM1RSR19Nc2sgICAgICAgICAgICANCiNkZWZpbmUgUlRDX1RBRkNSX1RBTVAzRV9Qb3MgICAgICAgICAgICAgICAgICg1VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX1RBRkNSX1RBTVAzRV9Nc2sgICAgICAgICAgICAgICAgICgweDFVTCA8PCBSVENfVEFGQ1JfVEFNUDNFX1BvcykgICAgLyohPCAweDAwMDAwMDIwICovDQojZGVmaW5lIFJUQ19UQUZDUl9UQU1QM0UgICAgICAgICAgICAgICAgICAgICBSVENfVEFGQ1JfVEFNUDNFX01zayAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19UQUZDUl9UQU1QMlRSR19Qb3MgICAgICAgICAgICAgICAoNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19UQUZDUl9UQU1QMlRSR19Nc2sgICAgICAgICAgICAgICAoMHgxVUwgPDwgUlRDX1RBRkNSX1RBTVAyVFJHX1BvcykgIC8qITwgMHgwMDAwMDAxMCAqLw0KI2RlZmluZSBSVENfVEFGQ1JfVEFNUDJUUkcgICAgICAgICAgICAgICAgICAgUlRDX1RBRkNSX1RBTVAyVFJHX01zayAgICAgICAgICAgIA0KI2RlZmluZSBSVENfVEFGQ1JfVEFNUDJFX1BvcyAgICAgICAgICAgICAgICAgKDNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfVEFGQ1JfVEFNUDJFX01zayAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IFJUQ19UQUZDUl9UQU1QMkVfUG9zKSAgICAvKiE8IDB4MDAwMDAwMDggKi8NCiNkZWZpbmUgUlRDX1RBRkNSX1RBTVAyRSAgICAgICAgICAgICAgICAgICAgIFJUQ19UQUZDUl9UQU1QMkVfTXNrICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX1RBRkNSX1RBTVBJRV9Qb3MgICAgICAgICAgICAgICAgICgyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX1RBRkNSX1RBTVBJRV9Nc2sgICAgICAgICAgICAgICAgICgweDFVTCA8PCBSVENfVEFGQ1JfVEFNUElFX1BvcykgICAgLyohPCAweDAwMDAwMDA0ICovDQojZGVmaW5lIFJUQ19UQUZDUl9UQU1QSUUgICAgICAgICAgICAgICAgICAgICBSVENfVEFGQ1JfVEFNUElFX01zayAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19UQUZDUl9UQU1QMVRSR19Qb3MgICAgICAgICAgICAgICAoMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19UQUZDUl9UQU1QMVRSR19Nc2sgICAgICAgICAgICAgICAoMHgxVUwgPDwgUlRDX1RBRkNSX1RBTVAxVFJHX1BvcykgIC8qITwgMHgwMDAwMDAwMiAqLw0KI2RlZmluZSBSVENfVEFGQ1JfVEFNUDFUUkcgICAgICAgICAgICAgICAgICAgUlRDX1RBRkNSX1RBTVAxVFJHX01zayAgICAgICAgICAgIA0KI2RlZmluZSBSVENfVEFGQ1JfVEFNUDFFX1BvcyAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfVEFGQ1JfVEFNUDFFX01zayAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IFJUQ19UQUZDUl9UQU1QMUVfUG9zKSAgICAvKiE8IDB4MDAwMDAwMDEgKi8NCiNkZWZpbmUgUlRDX1RBRkNSX1RBTVAxRSAgICAgICAgICAgICAgICAgICAgIFJUQ19UQUZDUl9UQU1QMUVfTXNrICAgICAgICAgICAgICANCg0KLyoqKioqKioqKioqKioqKioqKioqICBCaXRzIGRlZmluaXRpb24gZm9yIFJUQ19BTFJNQVNTUiByZWdpc3RlciAgKioqKioqKioqKioqKi8NCiNkZWZpbmUgUlRDX0FMUk1BU1NSX01BU0tTU19Qb3MgICAgICAgICAgICAgICgyNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0FMUk1BU1NSX01BU0tTU19Nc2sgICAgICAgICAgICAgICgweEZVTCA8PCBSVENfQUxSTUFTU1JfTUFTS1NTX1BvcykgLyohPCAweDBGMDAwMDAwICovDQojZGVmaW5lIFJUQ19BTFJNQVNTUl9NQVNLU1MgICAgICAgICAgICAgICAgICBSVENfQUxSTUFTU1JfTUFTS1NTX01zayAgICAgICAgICAgDQojZGVmaW5lIFJUQ19BTFJNQVNTUl9NQVNLU1NfMCAgICAgICAgICAgICAgICAoMHgxVUwgPDwgUlRDX0FMUk1BU1NSX01BU0tTU19Qb3MpIC8qITwgMHgwMTAwMDAwMCAqLw0KI2RlZmluZSBSVENfQUxSTUFTU1JfTUFTS1NTXzEgICAgICAgICAgICAgICAgKDB4MlVMIDw8IFJUQ19BTFJNQVNTUl9NQVNLU1NfUG9zKSAvKiE8IDB4MDIwMDAwMDAgKi8NCiNkZWZpbmUgUlRDX0FMUk1BU1NSX01BU0tTU18yICAgICAgICAgICAgICAgICgweDRVTCA8PCBSVENfQUxSTUFTU1JfTUFTS1NTX1BvcykgLyohPCAweDA0MDAwMDAwICovDQojZGVmaW5lIFJUQ19BTFJNQVNTUl9NQVNLU1NfMyAgICAgICAgICAgICAgICAoMHg4VUwgPDwgUlRDX0FMUk1BU1NSX01BU0tTU19Qb3MpIC8qITwgMHgwODAwMDAwMCAqLw0KI2RlZmluZSBSVENfQUxSTUFTU1JfU1NfUG9zICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfQUxSTUFTU1JfU1NfTXNrICAgICAgICAgICAgICAgICAgKDB4N0ZGRlVMIDw8IFJUQ19BTFJNQVNTUl9TU19Qb3MpICAvKiE8IDB4MDAwMDdGRkYgKi8NCiNkZWZpbmUgUlRDX0FMUk1BU1NSX1NTICAgICAgICAgICAgICAgICAgICAgIFJUQ19BTFJNQVNTUl9TU19Nc2sgICAgICAgICAgICAgICANCg0KLyoqKioqKioqKioqKioqKioqKioqICBCaXRzIGRlZmluaXRpb24gZm9yIFJUQ19BTFJNQlNTUiByZWdpc3RlciAgKioqKioqKioqKioqKi8NCiNkZWZpbmUgUlRDX0FMUk1CU1NSX01BU0tTU19Qb3MgICAgICAgICAgICAgICgyNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0FMUk1CU1NSX01BU0tTU19Nc2sgICAgICAgICAgICAgICgweEZVTCA8PCBSVENfQUxSTUJTU1JfTUFTS1NTX1BvcykgLyohPCAweDBGMDAwMDAwICovDQojZGVmaW5lIFJUQ19BTFJNQlNTUl9NQVNLU1MgICAgICAgICAgICAgICAgICBSVENfQUxSTUJTU1JfTUFTS1NTX01zayAgICAgICAgICAgDQojZGVmaW5lIFJUQ19BTFJNQlNTUl9NQVNLU1NfMCAgICAgICAgICAgICAgICAoMHgxVUwgPDwgUlRDX0FMUk1CU1NSX01BU0tTU19Qb3MpIC8qITwgMHgwMTAwMDAwMCAqLw0KI2RlZmluZSBSVENfQUxSTUJTU1JfTUFTS1NTXzEgICAgICAgICAgICAgICAgKDB4MlVMIDw8IFJUQ19BTFJNQlNTUl9NQVNLU1NfUG9zKSAvKiE8IDB4MDIwMDAwMDAgKi8NCiNkZWZpbmUgUlRDX0FMUk1CU1NSX01BU0tTU18yICAgICAgICAgICAgICAgICgweDRVTCA8PCBSVENfQUxSTUJTU1JfTUFTS1NTX1BvcykgLyohPCAweDA0MDAwMDAwICovDQojZGVmaW5lIFJUQ19BTFJNQlNTUl9NQVNLU1NfMyAgICAgICAgICAgICAgICAoMHg4VUwgPDwgUlRDX0FMUk1CU1NSX01BU0tTU19Qb3MpIC8qITwgMHgwODAwMDAwMCAqLw0KI2RlZmluZSBSVENfQUxSTUJTU1JfU1NfUG9zICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfQUxSTUJTU1JfU1NfTXNrICAgICAgICAgICAgICAgICAgKDB4N0ZGRlVMIDw8IFJUQ19BTFJNQlNTUl9TU19Qb3MpICAvKiE8IDB4MDAwMDdGRkYgKi8NCiNkZWZpbmUgUlRDX0FMUk1CU1NSX1NTICAgICAgICAgICAgICAgICAgICAgIFJUQ19BTFJNQlNTUl9TU19Nc2sgICAgICAgICAgICAgICANCg0KLyoqKioqKioqKioqKioqKioqKioqICBCaXRzIGRlZmluaXRpb24gZm9yIFJUQ19CS1AwUiByZWdpc3RlciAgKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgUlRDX0JLUDBSX1BvcyAgICAgICAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0JLUDBSX01zayAgICAgICAgICAgICAgICAgICAgICAgICgweEZGRkZGRkZGVUwgPDwgUlRDX0JLUDBSX1BvcykgICAgLyohPCAweEZGRkZGRkZGICovDQojZGVmaW5lIFJUQ19CS1AwUiAgICAgICAgICAgICAgICAgICAgICAgICAgICBSVENfQktQMFJfTXNrICAgICAgICAgICAgICAgICAgICAgDQoNCi8qKioqKioqKioqKioqKioqKioqKiAgQml0cyBkZWZpbml0aW9uIGZvciBSVENfQktQMVIgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKiovDQojZGVmaW5lIFJUQ19CS1AxUl9Qb3MgICAgICAgICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19CS1AxUl9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAoMHhGRkZGRkZGRlVMIDw8IFJUQ19CS1AxUl9Qb3MpICAgIC8qITwgMHhGRkZGRkZGRiAqLw0KI2RlZmluZSBSVENfQktQMVIgICAgICAgICAgICAgICAgICAgICAgICAgICAgUlRDX0JLUDFSX01zayAgICAgICAgICAgICAgICAgICAgIA0KDQovKioqKioqKioqKioqKioqKioqKiogIEJpdHMgZGVmaW5pdGlvbiBmb3IgUlRDX0JLUDJSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBSVENfQktQMlJfUG9zICAgICAgICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfQktQMlJfTXNrICAgICAgICAgICAgICAgICAgICAgICAgKDB4RkZGRkZGRkZVTCA8PCBSVENfQktQMlJfUG9zKSAgICAvKiE8IDB4RkZGRkZGRkYgKi8NCiNkZWZpbmUgUlRDX0JLUDJSICAgICAgICAgICAgICAgICAgICAgICAgICAgIFJUQ19CS1AyUl9Nc2sgICAgICAgICAgICAgICAgICAgICANCg0KLyoqKioqKioqKioqKioqKioqKioqICBCaXRzIGRlZmluaXRpb24gZm9yIFJUQ19CS1AzUiByZWdpc3RlciAgKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgUlRDX0JLUDNSX1BvcyAgICAgICAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0JLUDNSX01zayAgICAgICAgICAgICAgICAgICAgICAgICgweEZGRkZGRkZGVUwgPDwgUlRDX0JLUDNSX1BvcykgICAgLyohPCAweEZGRkZGRkZGICovDQojZGVmaW5lIFJUQ19CS1AzUiAgICAgICAgICAgICAgICAgICAgICAgICAgICBSVENfQktQM1JfTXNrICAgICAgICAgICAgICAgICAgICAgDQoNCi8qKioqKioqKioqKioqKioqKioqKiAgQml0cyBkZWZpbml0aW9uIGZvciBSVENfQktQNFIgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKiovDQojZGVmaW5lIFJUQ19CS1A0Ul9Qb3MgICAgICAgICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19CS1A0Ul9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAoMHhGRkZGRkZGRlVMIDw8IFJUQ19CS1A0Ul9Qb3MpICAgIC8qITwgMHhGRkZGRkZGRiAqLw0KI2RlZmluZSBSVENfQktQNFIgICAgICAgICAgICAgICAgICAgICAgICAgICAgUlRDX0JLUDRSX01zayAgICAgICAgICAgICAgICAgICAgIA0KDQovKioqKioqKioqKioqKioqKioqKiogIEJpdHMgZGVmaW5pdGlvbiBmb3IgUlRDX0JLUDVSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBSVENfQktQNVJfUG9zICAgICAgICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfQktQNVJfTXNrICAgICAgICAgICAgICAgICAgICAgICAgKDB4RkZGRkZGRkZVTCA8PCBSVENfQktQNVJfUG9zKSAgICAvKiE8IDB4RkZGRkZGRkYgKi8NCiNkZWZpbmUgUlRDX0JLUDVSICAgICAgICAgICAgICAgICAgICAgICAgICAgIFJUQ19CS1A1Ul9Nc2sgICAgICAgICAgICAgICAgICAgICANCg0KLyoqKioqKioqKioqKioqKioqKioqICBCaXRzIGRlZmluaXRpb24gZm9yIFJUQ19CS1A2UiByZWdpc3RlciAgKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgUlRDX0JLUDZSX1BvcyAgICAgICAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0JLUDZSX01zayAgICAgICAgICAgICAgICAgICAgICAgICgweEZGRkZGRkZGVUwgPDwgUlRDX0JLUDZSX1BvcykgICAgLyohPCAweEZGRkZGRkZGICovDQojZGVmaW5lIFJUQ19CS1A2UiAgICAgICAgICAgICAgICAgICAgICAgICAgICBSVENfQktQNlJfTXNrICAgICAgICAgICAgICAgICAgICAgDQoNCi8qKioqKioqKioqKioqKioqKioqKiAgQml0cyBkZWZpbml0aW9uIGZvciBSVENfQktQN1IgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKiovDQojZGVmaW5lIFJUQ19CS1A3Ul9Qb3MgICAgICAgICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19CS1A3Ul9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAoMHhGRkZGRkZGRlVMIDw8IFJUQ19CS1A3Ul9Qb3MpICAgIC8qITwgMHhGRkZGRkZGRiAqLw0KI2RlZmluZSBSVENfQktQN1IgICAgICAgICAgICAgICAgICAgICAgICAgICAgUlRDX0JLUDdSX01zayAgICAgICAgICAgICAgICAgICAgIA0KDQovKioqKioqKioqKioqKioqKioqKiogIEJpdHMgZGVmaW5pdGlvbiBmb3IgUlRDX0JLUDhSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBSVENfQktQOFJfUG9zICAgICAgICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfQktQOFJfTXNrICAgICAgICAgICAgICAgICAgICAgICAgKDB4RkZGRkZGRkZVTCA8PCBSVENfQktQOFJfUG9zKSAgICAvKiE8IDB4RkZGRkZGRkYgKi8NCiNkZWZpbmUgUlRDX0JLUDhSICAgICAgICAgICAgICAgICAgICAgICAgICAgIFJUQ19CS1A4Ul9Nc2sgICAgICAgICAgICAgICAgICAgICANCg0KLyoqKioqKioqKioqKioqKioqKioqICBCaXRzIGRlZmluaXRpb24gZm9yIFJUQ19CS1A5UiByZWdpc3RlciAgKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgUlRDX0JLUDlSX1BvcyAgICAgICAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0JLUDlSX01zayAgICAgICAgICAgICAgICAgICAgICAgICgweEZGRkZGRkZGVUwgPDwgUlRDX0JLUDlSX1BvcykgICAgLyohPCAweEZGRkZGRkZGICovDQojZGVmaW5lIFJUQ19CS1A5UiAgICAgICAgICAgICAgICAgICAgICAgICAgICBSVENfQktQOVJfTXNrICAgICAgICAgICAgICAgICAgICAgDQoNCi8qKioqKioqKioqKioqKioqKioqKiAgQml0cyBkZWZpbml0aW9uIGZvciBSVENfQktQMTBSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKiovDQojZGVmaW5lIFJUQ19CS1AxMFJfUG9zICAgICAgICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19CS1AxMFJfTXNrICAgICAgICAgICAgICAgICAgICAgICAoMHhGRkZGRkZGRlVMIDw8IFJUQ19CS1AxMFJfUG9zKSAgIC8qITwgMHhGRkZGRkZGRiAqLw0KI2RlZmluZSBSVENfQktQMTBSICAgICAgICAgICAgICAgICAgICAgICAgICAgUlRDX0JLUDEwUl9Nc2sgICAgICAgICAgICAgICAgICAgIA0KDQovKioqKioqKioqKioqKioqKioqKiogIEJpdHMgZGVmaW5pdGlvbiBmb3IgUlRDX0JLUDExUiByZWdpc3RlciAgKioqKioqKioqKioqKioqLw0KI2RlZmluZSBSVENfQktQMTFSX1BvcyAgICAgICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfQktQMTFSX01zayAgICAgICAgICAgICAgICAgICAgICAgKDB4RkZGRkZGRkZVTCA8PCBSVENfQktQMTFSX1BvcykgICAvKiE8IDB4RkZGRkZGRkYgKi8NCiNkZWZpbmUgUlRDX0JLUDExUiAgICAgICAgICAgICAgICAgICAgICAgICAgIFJUQ19CS1AxMVJfTXNrICAgICAgICAgICAgICAgICAgICANCg0KLyoqKioqKioqKioqKioqKioqKioqICBCaXRzIGRlZmluaXRpb24gZm9yIFJUQ19CS1AxMlIgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKi8NCiNkZWZpbmUgUlRDX0JLUDEyUl9Qb3MgICAgICAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0JLUDEyUl9Nc2sgICAgICAgICAgICAgICAgICAgICAgICgweEZGRkZGRkZGVUwgPDwgUlRDX0JLUDEyUl9Qb3MpICAgLyohPCAweEZGRkZGRkZGICovDQojZGVmaW5lIFJUQ19CS1AxMlIgICAgICAgICAgICAgICAgICAgICAgICAgICBSVENfQktQMTJSX01zayAgICAgICAgICAgICAgICAgICAgDQoNCi8qKioqKioqKioqKioqKioqKioqKiAgQml0cyBkZWZpbml0aW9uIGZvciBSVENfQktQMTNSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKiovDQojZGVmaW5lIFJUQ19CS1AxM1JfUG9zICAgICAgICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19CS1AxM1JfTXNrICAgICAgICAgICAgICAgICAgICAgICAoMHhGRkZGRkZGRlVMIDw8IFJUQ19CS1AxM1JfUG9zKSAgIC8qITwgMHhGRkZGRkZGRiAqLw0KI2RlZmluZSBSVENfQktQMTNSICAgICAgICAgICAgICAgICAgICAgICAgICAgUlRDX0JLUDEzUl9Nc2sgICAgICAgICAgICAgICAgICAgIA0KDQovKioqKioqKioqKioqKioqKioqKiogIEJpdHMgZGVmaW5pdGlvbiBmb3IgUlRDX0JLUDE0UiByZWdpc3RlciAgKioqKioqKioqKioqKioqLw0KI2RlZmluZSBSVENfQktQMTRSX1BvcyAgICAgICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfQktQMTRSX01zayAgICAgICAgICAgICAgICAgICAgICAgKDB4RkZGRkZGRkZVTCA8PCBSVENfQktQMTRSX1BvcykgICAvKiE8IDB4RkZGRkZGRkYgKi8NCiNkZWZpbmUgUlRDX0JLUDE0UiAgICAgICAgICAgICAgICAgICAgICAgICAgIFJUQ19CS1AxNFJfTXNrICAgICAgICAgICAgICAgICAgICANCg0KLyoqKioqKioqKioqKioqKioqKioqICBCaXRzIGRlZmluaXRpb24gZm9yIFJUQ19CS1AxNVIgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKi8NCiNkZWZpbmUgUlRDX0JLUDE1Ul9Qb3MgICAgICAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0JLUDE1Ul9Nc2sgICAgICAgICAgICAgICAgICAgICAgICgweEZGRkZGRkZGVUwgPDwgUlRDX0JLUDE1Ul9Qb3MpICAgLyohPCAweEZGRkZGRkZGICovDQojZGVmaW5lIFJUQ19CS1AxNVIgICAgICAgICAgICAgICAgICAgICAgICAgICBSVENfQktQMTVSX01zayAgICAgICAgICAgICAgICAgICAgDQoNCi8qKioqKioqKioqKioqKioqKioqKiAgQml0cyBkZWZpbml0aW9uIGZvciBSVENfQktQMTZSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKiovDQojZGVmaW5lIFJUQ19CS1AxNlJfUG9zICAgICAgICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19CS1AxNlJfTXNrICAgICAgICAgICAgICAgICAgICAgICAoMHhGRkZGRkZGRlVMIDw8IFJUQ19CS1AxNlJfUG9zKSAgIC8qITwgMHhGRkZGRkZGRiAqLw0KI2RlZmluZSBSVENfQktQMTZSICAgICAgICAgICAgICAgICAgICAgICAgICAgUlRDX0JLUDE2Ul9Nc2sgICAgICAgICAgICAgICAgICAgIA0KDQovKioqKioqKioqKioqKioqKioqKiogIEJpdHMgZGVmaW5pdGlvbiBmb3IgUlRDX0JLUDE3UiByZWdpc3RlciAgKioqKioqKioqKioqKioqLw0KI2RlZmluZSBSVENfQktQMTdSX1BvcyAgICAgICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfQktQMTdSX01zayAgICAgICAgICAgICAgICAgICAgICAgKDB4RkZGRkZGRkZVTCA8PCBSVENfQktQMTdSX1BvcykgICAvKiE8IDB4RkZGRkZGRkYgKi8NCiNkZWZpbmUgUlRDX0JLUDE3UiAgICAgICAgICAgICAgICAgICAgICAgICAgIFJUQ19CS1AxN1JfTXNrICAgICAgICAgICAgICAgICAgICANCg0KLyoqKioqKioqKioqKioqKioqKioqICBCaXRzIGRlZmluaXRpb24gZm9yIFJUQ19CS1AxOFIgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKi8NCiNkZWZpbmUgUlRDX0JLUDE4Ul9Qb3MgICAgICAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0JLUDE4Ul9Nc2sgICAgICAgICAgICAgICAgICAgICAgICgweEZGRkZGRkZGVUwgPDwgUlRDX0JLUDE4Ul9Qb3MpICAgLyohPCAweEZGRkZGRkZGICovDQojZGVmaW5lIFJUQ19CS1AxOFIgICAgICAgICAgICAgICAgICAgICAgICAgICBSVENfQktQMThSX01zayAgICAgICAgICAgICAgICAgICAgDQoNCi8qKioqKioqKioqKioqKioqKioqKiAgQml0cyBkZWZpbml0aW9uIGZvciBSVENfQktQMTlSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKiovDQojZGVmaW5lIFJUQ19CS1AxOVJfUG9zICAgICAgICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19CS1AxOVJfTXNrICAgICAgICAgICAgICAgICAgICAgICAoMHhGRkZGRkZGRlVMIDw8IFJUQ19CS1AxOVJfUG9zKSAgIC8qITwgMHhGRkZGRkZGRiAqLw0KI2RlZmluZSBSVENfQktQMTlSICAgICAgICAgICAgICAgICAgICAgICAgICAgUlRDX0JLUDE5Ul9Nc2sgICAgICAgICAgICAgICAgICAgIA0KDQovKioqKioqKioqKioqKioqKioqKiogIEJpdHMgZGVmaW5pdGlvbiBmb3IgUlRDX0JLUDIwUiByZWdpc3RlciAgKioqKioqKioqKioqKioqLw0KI2RlZmluZSBSVENfQktQMjBSX1BvcyAgICAgICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfQktQMjBSX01zayAgICAgICAgICAgICAgICAgICAgICAgKDB4RkZGRkZGRkZVTCA8PCBSVENfQktQMjBSX1BvcykgICAvKiE8IDB4RkZGRkZGRkYgKi8NCiNkZWZpbmUgUlRDX0JLUDIwUiAgICAgICAgICAgICAgICAgICAgICAgICAgIFJUQ19CS1AyMFJfTXNrICAgICAgICAgICAgICAgICAgICANCg0KLyoqKioqKioqKioqKioqKioqKioqICBCaXRzIGRlZmluaXRpb24gZm9yIFJUQ19CS1AyMVIgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKi8NCiNkZWZpbmUgUlRDX0JLUDIxUl9Qb3MgICAgICAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0JLUDIxUl9Nc2sgICAgICAgICAgICAgICAgICAgICAgICgweEZGRkZGRkZGVUwgPDwgUlRDX0JLUDIxUl9Qb3MpICAgLyohPCAweEZGRkZGRkZGICovDQojZGVmaW5lIFJUQ19CS1AyMVIgICAgICAgICAgICAgICAgICAgICAgICAgICBSVENfQktQMjFSX01zayAgICAgICAgICAgICAgICAgICAgDQoNCi8qKioqKioqKioqKioqKioqKioqKiAgQml0cyBkZWZpbml0aW9uIGZvciBSVENfQktQMjJSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKiovDQojZGVmaW5lIFJUQ19CS1AyMlJfUG9zICAgICAgICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19CS1AyMlJfTXNrICAgICAgICAgICAgICAgICAgICAgICAoMHhGRkZGRkZGRlVMIDw8IFJUQ19CS1AyMlJfUG9zKSAgIC8qITwgMHhGRkZGRkZGRiAqLw0KI2RlZmluZSBSVENfQktQMjJSICAgICAgICAgICAgICAgICAgICAgICAgICAgUlRDX0JLUDIyUl9Nc2sgICAgICAgICAgICAgICAgICAgIA0KDQovKioqKioqKioqKioqKioqKioqKiogIEJpdHMgZGVmaW5pdGlvbiBmb3IgUlRDX0JLUDIzUiByZWdpc3RlciAgKioqKioqKioqKioqKioqLw0KI2RlZmluZSBSVENfQktQMjNSX1BvcyAgICAgICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfQktQMjNSX01zayAgICAgICAgICAgICAgICAgICAgICAgKDB4RkZGRkZGRkZVTCA8PCBSVENfQktQMjNSX1BvcykgICAvKiE8IDB4RkZGRkZGRkYgKi8NCiNkZWZpbmUgUlRDX0JLUDIzUiAgICAgICAgICAgICAgICAgICAgICAgICAgIFJUQ19CS1AyM1JfTXNrICAgICAgICAgICAgICAgICAgICANCg0KLyoqKioqKioqKioqKioqKioqKioqICBCaXRzIGRlZmluaXRpb24gZm9yIFJUQ19CS1AyNFIgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKi8NCiNkZWZpbmUgUlRDX0JLUDI0Ul9Qb3MgICAgICAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0JLUDI0Ul9Nc2sgICAgICAgICAgICAgICAgICAgICAgICgweEZGRkZGRkZGVUwgPDwgUlRDX0JLUDI0Ul9Qb3MpICAgLyohPCAweEZGRkZGRkZGICovDQojZGVmaW5lIFJUQ19CS1AyNFIgICAgICAgICAgICAgICAgICAgICAgICAgICBSVENfQktQMjRSX01zayAgICAgICAgICAgICAgICAgICAgDQoNCi8qKioqKioqKioqKioqKioqKioqKiAgQml0cyBkZWZpbml0aW9uIGZvciBSVENfQktQMjVSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKiovDQojZGVmaW5lIFJUQ19CS1AyNVJfUG9zICAgICAgICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19CS1AyNVJfTXNrICAgICAgICAgICAgICAgICAgICAgICAoMHhGRkZGRkZGRlVMIDw8IFJUQ19CS1AyNVJfUG9zKSAgIC8qITwgMHhGRkZGRkZGRiAqLw0KI2RlZmluZSBSVENfQktQMjVSICAgICAgICAgICAgICAgICAgICAgICAgICAgUlRDX0JLUDI1Ul9Nc2sgICAgICAgICAgICAgICAgICAgIA0KDQovKioqKioqKioqKioqKioqKioqKiogIEJpdHMgZGVmaW5pdGlvbiBmb3IgUlRDX0JLUDI2UiByZWdpc3RlciAgKioqKioqKioqKioqKioqLw0KI2RlZmluZSBSVENfQktQMjZSX1BvcyAgICAgICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfQktQMjZSX01zayAgICAgICAgICAgICAgICAgICAgICAgKDB4RkZGRkZGRkZVTCA8PCBSVENfQktQMjZSX1BvcykgICAvKiE8IDB4RkZGRkZGRkYgKi8NCiNkZWZpbmUgUlRDX0JLUDI2UiAgICAgICAgICAgICAgICAgICAgICAgICAgIFJUQ19CS1AyNlJfTXNrICAgICAgICAgICAgICAgICAgICANCg0KLyoqKioqKioqKioqKioqKioqKioqICBCaXRzIGRlZmluaXRpb24gZm9yIFJUQ19CS1AyN1IgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKi8NCiNkZWZpbmUgUlRDX0JLUDI3Ul9Qb3MgICAgICAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0JLUDI3Ul9Nc2sgICAgICAgICAgICAgICAgICAgICAgICgweEZGRkZGRkZGVUwgPDwgUlRDX0JLUDI3Ul9Qb3MpICAgLyohPCAweEZGRkZGRkZGICovDQojZGVmaW5lIFJUQ19CS1AyN1IgICAgICAgICAgICAgICAgICAgICAgICAgICBSVENfQktQMjdSX01zayAgICAgICAgICAgICAgICAgICAgDQoNCi8qKioqKioqKioqKioqKioqKioqKiAgQml0cyBkZWZpbml0aW9uIGZvciBSVENfQktQMjhSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKiovDQojZGVmaW5lIFJUQ19CS1AyOFJfUG9zICAgICAgICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19CS1AyOFJfTXNrICAgICAgICAgICAgICAgICAgICAgICAoMHhGRkZGRkZGRlVMIDw8IFJUQ19CS1AyOFJfUG9zKSAgIC8qITwgMHhGRkZGRkZGRiAqLw0KI2RlZmluZSBSVENfQktQMjhSICAgICAgICAgICAgICAgICAgICAgICAgICAgUlRDX0JLUDI4Ul9Nc2sgICAgICAgICAgICAgICAgICAgIA0KDQovKioqKioqKioqKioqKioqKioqKiogIEJpdHMgZGVmaW5pdGlvbiBmb3IgUlRDX0JLUDI5UiByZWdpc3RlciAgKioqKioqKioqKioqKioqLw0KI2RlZmluZSBSVENfQktQMjlSX1BvcyAgICAgICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSVENfQktQMjlSX01zayAgICAgICAgICAgICAgICAgICAgICAgKDB4RkZGRkZGRkZVTCA8PCBSVENfQktQMjlSX1BvcykgICAvKiE8IDB4RkZGRkZGRkYgKi8NCiNkZWZpbmUgUlRDX0JLUDI5UiAgICAgICAgICAgICAgICAgICAgICAgICAgIFJUQ19CS1AyOVJfTXNrICAgICAgICAgICAgICAgICAgICANCg0KLyoqKioqKioqKioqKioqKioqKioqICBCaXRzIGRlZmluaXRpb24gZm9yIFJUQ19CS1AzMFIgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKi8NCiNkZWZpbmUgUlRDX0JLUDMwUl9Qb3MgICAgICAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUlRDX0JLUDMwUl9Nc2sgICAgICAgICAgICAgICAgICAgICAgICgweEZGRkZGRkZGVUwgPDwgUlRDX0JLUDMwUl9Qb3MpICAgLyohPCAweEZGRkZGRkZGICovDQojZGVmaW5lIFJUQ19CS1AzMFIgICAgICAgICAgICAgICAgICAgICAgICAgICBSVENfQktQMzBSX01zayAgICAgICAgICAgICAgICAgICAgDQoNCi8qKioqKioqKioqKioqKioqKioqKiAgQml0cyBkZWZpbml0aW9uIGZvciBSVENfQktQMzFSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKiovDQojZGVmaW5lIFJUQ19CS1AzMVJfUG9zICAgICAgICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJUQ19CS1AzMVJfTXNrICAgICAgICAgICAgICAgICAgICAgICAoMHhGRkZGRkZGRlVMIDw8IFJUQ19CS1AzMVJfUG9zKSAgIC8qITwgMHhGRkZGRkZGRiAqLw0KI2RlZmluZSBSVENfQktQMzFSICAgICAgICAgICAgICAgICAgICAgICAgICAgUlRDX0JLUDMxUl9Nc2sgICAgICAgICAgICAgICAgICAgIA0KDQovKioqKioqKioqKioqKioqKioqKiogTnVtYmVyIG9mIGJhY2t1cCByZWdpc3RlcnMgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBSVENfQktQX05VTUJFUiAzMg0KDQovKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLw0KLyogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8NCi8qICAgICAgICAgICAgICAgICAgICAgU2VyaWFsIFBlcmlwaGVyYWwgSW50ZXJmYWNlIChTUEkpICAgICAgICAgICAgICAgICAgICAgICovDQovKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLw0KLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8NCg0KLyoNCiAqIEBicmllZiBTcGVjaWZpYyBkZXZpY2UgZmVhdHVyZSBkZWZpbml0aW9ucyAobm90IHByZXNlbnQgb24gYWxsIGRldmljZXMgaW4gdGhlIFNUTTMyRjMgc2VyaWUpDQogKi8NCiNkZWZpbmUgU1BJX0kyU19TVVBQT1JUICAgIA0KDQovKioqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFNQSV9DUjEgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBTUElfQ1IxX0NQSEFfUG9zICAgICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBTUElfQ1IxX0NQSEFfTXNrICAgICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgU1BJX0NSMV9DUEhBX1BvcykgICAgICAgICAvKiE8IDB4MDAwMDAwMDEgKi8NCiNkZWZpbmUgU1BJX0NSMV9DUEhBICAgICAgICAgICAgICAgICAgICAgICAgU1BJX0NSMV9DUEhBX01zayAgICAgICAgICAgICAgICAgICAvKiE8IENsb2NrIFBoYXNlICovDQojZGVmaW5lIFNQSV9DUjFfQ1BPTF9Qb3MgICAgICAgICAgICAgICAgICAgICgxVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFNQSV9DUjFfQ1BPTF9Nc2sgICAgICAgICAgICAgICAgICAgICgweDFVTCA8PCBTUElfQ1IxX0NQT0xfUG9zKSAgICAgICAgIC8qITwgMHgwMDAwMDAwMiAqLw0KI2RlZmluZSBTUElfQ1IxX0NQT0wgICAgICAgICAgICAgICAgICAgICAgICBTUElfQ1IxX0NQT0xfTXNrICAgICAgICAgICAgICAgICAgIC8qITwgQ2xvY2sgUG9sYXJpdHkgKi8NCiNkZWZpbmUgU1BJX0NSMV9NU1RSX1BvcyAgICAgICAgICAgICAgICAgICAgKDJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgU1BJX0NSMV9NU1RSX01zayAgICAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IFNQSV9DUjFfTVNUUl9Qb3MpICAgICAgICAgLyohPCAweDAwMDAwMDA0ICovDQojZGVmaW5lIFNQSV9DUjFfTVNUUiAgICAgICAgICAgICAgICAgICAgICAgIFNQSV9DUjFfTVNUUl9Nc2sgICAgICAgICAgICAgICAgICAgLyohPCBNYXN0ZXIgU2VsZWN0aW9uICovDQoNCiNkZWZpbmUgU1BJX0NSMV9CUl9Qb3MgICAgICAgICAgICAgICAgICAgICAgKDNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgU1BJX0NSMV9CUl9Nc2sgICAgICAgICAgICAgICAgICAgICAgKDB4N1VMIDw8IFNQSV9DUjFfQlJfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwMDM4ICovDQojZGVmaW5lIFNQSV9DUjFfQlIgICAgICAgICAgICAgICAgICAgICAgICAgIFNQSV9DUjFfQlJfTXNrICAgICAgICAgICAgICAgICAgICAgLyohPCBCUlsyOjBdIGJpdHMgKEJhdWQgUmF0ZSBDb250cm9sKSAqLw0KI2RlZmluZSBTUElfQ1IxX0JSXzAgICAgICAgICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgU1BJX0NSMV9CUl9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDggKi8NCiNkZWZpbmUgU1BJX0NSMV9CUl8xICAgICAgICAgICAgICAgICAgICAgICAgKDB4MlVMIDw8IFNQSV9DUjFfQlJfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwMDEwICovDQojZGVmaW5lIFNQSV9DUjFfQlJfMiAgICAgICAgICAgICAgICAgICAgICAgICgweDRVTCA8PCBTUElfQ1IxX0JSX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDAyMCAqLw0KDQojZGVmaW5lIFNQSV9DUjFfU1BFX1BvcyAgICAgICAgICAgICAgICAgICAgICg2VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFNQSV9DUjFfU1BFX01zayAgICAgICAgICAgICAgICAgICAgICgweDFVTCA8PCBTUElfQ1IxX1NQRV9Qb3MpICAgICAgICAgIC8qITwgMHgwMDAwMDA0MCAqLw0KI2RlZmluZSBTUElfQ1IxX1NQRSAgICAgICAgICAgICAgICAgICAgICAgICBTUElfQ1IxX1NQRV9Nc2sgICAgICAgICAgICAgICAgICAgIC8qITwgU1BJIEVuYWJsZSAqLw0KI2RlZmluZSBTUElfQ1IxX0xTQkZJUlNUX1BvcyAgICAgICAgICAgICAgICAoN1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBTUElfQ1IxX0xTQkZJUlNUX01zayAgICAgICAgICAgICAgICAoMHgxVUwgPDwgU1BJX0NSMV9MU0JGSVJTVF9Qb3MpICAgICAvKiE8IDB4MDAwMDAwODAgKi8NCiNkZWZpbmUgU1BJX0NSMV9MU0JGSVJTVCAgICAgICAgICAgICAgICAgICAgU1BJX0NSMV9MU0JGSVJTVF9Nc2sgICAgICAgICAgICAgICAvKiE8IEZyYW1lIEZvcm1hdCAqLw0KI2RlZmluZSBTUElfQ1IxX1NTSV9Qb3MgICAgICAgICAgICAgICAgICAgICAoOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBTUElfQ1IxX1NTSV9Nc2sgICAgICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgU1BJX0NSMV9TU0lfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDAxMDAgKi8NCiNkZWZpbmUgU1BJX0NSMV9TU0kgICAgICAgICAgICAgICAgICAgICAgICAgU1BJX0NSMV9TU0lfTXNrICAgICAgICAgICAgICAgICAgICAvKiE8IEludGVybmFsIHNsYXZlIHNlbGVjdCAqLw0KI2RlZmluZSBTUElfQ1IxX1NTTV9Qb3MgICAgICAgICAgICAgICAgICAgICAoOVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBTUElfQ1IxX1NTTV9Nc2sgICAgICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgU1BJX0NSMV9TU01fUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDAyMDAgKi8NCiNkZWZpbmUgU1BJX0NSMV9TU00gICAgICAgICAgICAgICAgICAgICAgICAgU1BJX0NSMV9TU01fTXNrICAgICAgICAgICAgICAgICAgICAvKiE8IFNvZnR3YXJlIHNsYXZlIG1hbmFnZW1lbnQgKi8NCiNkZWZpbmUgU1BJX0NSMV9SWE9OTFlfUG9zICAgICAgICAgICAgICAgICAgKDEwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgU1BJX0NSMV9SWE9OTFlfTXNrICAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IFNQSV9DUjFfUlhPTkxZX1BvcykgICAgICAgLyohPCAweDAwMDAwNDAwICovDQojZGVmaW5lIFNQSV9DUjFfUlhPTkxZICAgICAgICAgICAgICAgICAgICAgIFNQSV9DUjFfUlhPTkxZX01zayAgICAgICAgICAgICAgICAgLyohPCBSZWNlaXZlIG9ubHkgKi8NCiNkZWZpbmUgU1BJX0NSMV9ERkZfUG9zICAgICAgICAgICAgICAgICAgICAgKDExVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgU1BJX0NSMV9ERkZfTXNrICAgICAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IFNQSV9DUjFfREZGX1BvcykgICAgICAgICAgLyohPCAweDAwMDAwODAwICovDQojZGVmaW5lIFNQSV9DUjFfREZGICAgICAgICAgICAgICAgICAgICAgICAgIFNQSV9DUjFfREZGX01zayAgICAgICAgICAgICAgICAgICAgLyohPCBEYXRhIEZyYW1lIEZvcm1hdCAqLw0KI2RlZmluZSBTUElfQ1IxX0NSQ05FWFRfUG9zICAgICAgICAgICAgICAgICAoMTJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBTUElfQ1IxX0NSQ05FWFRfTXNrICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgU1BJX0NSMV9DUkNORVhUX1BvcykgICAgICAvKiE8IDB4MDAwMDEwMDAgKi8NCiNkZWZpbmUgU1BJX0NSMV9DUkNORVhUICAgICAgICAgICAgICAgICAgICAgU1BJX0NSMV9DUkNORVhUX01zayAgICAgICAgICAgICAgICAvKiE8IFRyYW5zbWl0IENSQyBuZXh0ICovDQojZGVmaW5lIFNQSV9DUjFfQ1JDRU5fUG9zICAgICAgICAgICAgICAgICAgICgxM1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFNQSV9DUjFfQ1JDRU5fTXNrICAgICAgICAgICAgICAgICAgICgweDFVTCA8PCBTUElfQ1IxX0NSQ0VOX1BvcykgICAgICAgIC8qITwgMHgwMDAwMjAwMCAqLw0KI2RlZmluZSBTUElfQ1IxX0NSQ0VOICAgICAgICAgICAgICAgICAgICAgICBTUElfQ1IxX0NSQ0VOX01zayAgICAgICAgICAgICAgICAgIC8qITwgSGFyZHdhcmUgQ1JDIGNhbGN1bGF0aW9uIGVuYWJsZSAqLw0KI2RlZmluZSBTUElfQ1IxX0JJRElPRV9Qb3MgICAgICAgICAgICAgICAgICAoMTRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBTUElfQ1IxX0JJRElPRV9Nc2sgICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgU1BJX0NSMV9CSURJT0VfUG9zKSAgICAgICAvKiE8IDB4MDAwMDQwMDAgKi8NCiNkZWZpbmUgU1BJX0NSMV9CSURJT0UgICAgICAgICAgICAgICAgICAgICAgU1BJX0NSMV9CSURJT0VfTXNrICAgICAgICAgICAgICAgICAvKiE8IE91dHB1dCBlbmFibGUgaW4gYmlkaXJlY3Rpb25hbCBtb2RlICovDQojZGVmaW5lIFNQSV9DUjFfQklESU1PREVfUG9zICAgICAgICAgICAgICAgICgxNVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFNQSV9DUjFfQklESU1PREVfTXNrICAgICAgICAgICAgICAgICgweDFVTCA8PCBTUElfQ1IxX0JJRElNT0RFX1BvcykgICAgIC8qITwgMHgwMDAwODAwMCAqLw0KI2RlZmluZSBTUElfQ1IxX0JJRElNT0RFICAgICAgICAgICAgICAgICAgICBTUElfQ1IxX0JJRElNT0RFX01zayAgICAgICAgICAgICAgIC8qITwgQmlkaXJlY3Rpb25hbCBkYXRhIG1vZGUgZW5hYmxlICovDQoNCi8qKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgU1BJX0NSMiByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIFNQSV9DUjJfUlhETUFFTl9Qb3MgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFNQSV9DUjJfUlhETUFFTl9Nc2sgICAgICAgICAgICAgICAgICgweDFVTCA8PCBTUElfQ1IyX1JYRE1BRU5fUG9zKSAgICAgIC8qITwgMHgwMDAwMDAwMSAqLw0KI2RlZmluZSBTUElfQ1IyX1JYRE1BRU4gICAgICAgICAgICAgICAgICAgICBTUElfQ1IyX1JYRE1BRU5fTXNrICAgICAgICAgICAgICAgIC8qITwgUnggQnVmZmVyIERNQSBFbmFibGUgKi8NCiNkZWZpbmUgU1BJX0NSMl9UWERNQUVOX1BvcyAgICAgICAgICAgICAgICAgKDFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgU1BJX0NSMl9UWERNQUVOX01zayAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IFNQSV9DUjJfVFhETUFFTl9Qb3MpICAgICAgLyohPCAweDAwMDAwMDAyICovDQojZGVmaW5lIFNQSV9DUjJfVFhETUFFTiAgICAgICAgICAgICAgICAgICAgIFNQSV9DUjJfVFhETUFFTl9Nc2sgICAgICAgICAgICAgICAgLyohPCBUeCBCdWZmZXIgRE1BIEVuYWJsZSAqLw0KI2RlZmluZSBTUElfQ1IyX1NTT0VfUG9zICAgICAgICAgICAgICAgICAgICAoMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBTUElfQ1IyX1NTT0VfTXNrICAgICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgU1BJX0NSMl9TU09FX1BvcykgICAgICAgICAvKiE8IDB4MDAwMDAwMDQgKi8NCiNkZWZpbmUgU1BJX0NSMl9TU09FICAgICAgICAgICAgICAgICAgICAgICAgU1BJX0NSMl9TU09FX01zayAgICAgICAgICAgICAgICAgICAvKiE8IFNTIE91dHB1dCBFbmFibGUgKi8NCiNkZWZpbmUgU1BJX0NSMl9GUkZfUG9zICAgICAgICAgICAgICAgICAgICAgKDRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgU1BJX0NSMl9GUkZfTXNrICAgICAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IFNQSV9DUjJfRlJGX1BvcykgICAgICAgICAgLyohPCAweDAwMDAwMDEwICovDQojZGVmaW5lIFNQSV9DUjJfRlJGICAgICAgICAgICAgICAgICAgICAgICAgIFNQSV9DUjJfRlJGX01zayAgICAgICAgICAgICAgICAgICAgLyohPCBGcmFtZSBmb3JtYXQgKi8NCiNkZWZpbmUgU1BJX0NSMl9FUlJJRV9Qb3MgICAgICAgICAgICAgICAgICAgKDVVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgU1BJX0NSMl9FUlJJRV9Nc2sgICAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IFNQSV9DUjJfRVJSSUVfUG9zKSAgICAgICAgLyohPCAweDAwMDAwMDIwICovDQojZGVmaW5lIFNQSV9DUjJfRVJSSUUgICAgICAgICAgICAgICAgICAgICAgIFNQSV9DUjJfRVJSSUVfTXNrICAgICAgICAgICAgICAgICAgLyohPCBFcnJvciBJbnRlcnJ1cHQgRW5hYmxlICovDQojZGVmaW5lIFNQSV9DUjJfUlhORUlFX1BvcyAgICAgICAgICAgICAgICAgICg2VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFNQSV9DUjJfUlhORUlFX01zayAgICAgICAgICAgICAgICAgICgweDFVTCA8PCBTUElfQ1IyX1JYTkVJRV9Qb3MpICAgICAgIC8qITwgMHgwMDAwMDA0MCAqLw0KI2RlZmluZSBTUElfQ1IyX1JYTkVJRSAgICAgICAgICAgICAgICAgICAgICBTUElfQ1IyX1JYTkVJRV9Nc2sgICAgICAgICAgICAgICAgIC8qITwgUlggYnVmZmVyIE5vdCBFbXB0eSBJbnRlcnJ1cHQgRW5hYmxlICovDQojZGVmaW5lIFNQSV9DUjJfVFhFSUVfUG9zICAgICAgICAgICAgICAgICAgICg3VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFNQSV9DUjJfVFhFSUVfTXNrICAgICAgICAgICAgICAgICAgICgweDFVTCA8PCBTUElfQ1IyX1RYRUlFX1BvcykgICAgICAgIC8qITwgMHgwMDAwMDA4MCAqLw0KI2RlZmluZSBTUElfQ1IyX1RYRUlFICAgICAgICAgICAgICAgICAgICAgICBTUElfQ1IyX1RYRUlFX01zayAgICAgICAgICAgICAgICAgIC8qITwgVHggYnVmZmVyIEVtcHR5IEludGVycnVwdCBFbmFibGUgKi8NCg0KLyoqKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgU1BJX1NSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgU1BJX1NSX1JYTkVfUG9zICAgICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgU1BJX1NSX1JYTkVfTXNrICAgICAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IFNQSV9TUl9SWE5FX1BvcykgICAgICAgICAgLyohPCAweDAwMDAwMDAxICovDQojZGVmaW5lIFNQSV9TUl9SWE5FICAgICAgICAgICAgICAgICAgICAgICAgIFNQSV9TUl9SWE5FX01zayAgICAgICAgICAgICAgICAgICAgLyohPCBSZWNlaXZlIGJ1ZmZlciBOb3QgRW1wdHkgKi8NCiNkZWZpbmUgU1BJX1NSX1RYRV9Qb3MgICAgICAgICAgICAgICAgICAgICAgKDFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgU1BJX1NSX1RYRV9Nc2sgICAgICAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IFNQSV9TUl9UWEVfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwMDAyICovDQojZGVmaW5lIFNQSV9TUl9UWEUgICAgICAgICAgICAgICAgICAgICAgICAgIFNQSV9TUl9UWEVfTXNrICAgICAgICAgICAgICAgICAgICAgLyohPCBUcmFuc21pdCBidWZmZXIgRW1wdHkgKi8NCiNkZWZpbmUgU1BJX1NSX0NIU0lERV9Qb3MgICAgICAgICAgICAgICAgICAgKDJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgU1BJX1NSX0NIU0lERV9Nc2sgICAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IFNQSV9TUl9DSFNJREVfUG9zKSAgICAgICAgLyohPCAweDAwMDAwMDA0ICovDQojZGVmaW5lIFNQSV9TUl9DSFNJREUgICAgICAgICAgICAgICAgICAgICAgIFNQSV9TUl9DSFNJREVfTXNrICAgICAgICAgICAgICAgICAgLyohPCBDaGFubmVsIHNpZGUgKi8NCiNkZWZpbmUgU1BJX1NSX1VEUl9Qb3MgICAgICAgICAgICAgICAgICAgICAgKDNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgU1BJX1NSX1VEUl9Nc2sgICAgICAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IFNQSV9TUl9VRFJfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwMDA4ICovDQojZGVmaW5lIFNQSV9TUl9VRFIgICAgICAgICAgICAgICAgICAgICAgICAgIFNQSV9TUl9VRFJfTXNrICAgICAgICAgICAgICAgICAgICAgLyohPCBVbmRlcnJ1biBmbGFnICovDQojZGVmaW5lIFNQSV9TUl9DUkNFUlJfUG9zICAgICAgICAgICAgICAgICAgICg0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFNQSV9TUl9DUkNFUlJfTXNrICAgICAgICAgICAgICAgICAgICgweDFVTCA8PCBTUElfU1JfQ1JDRVJSX1BvcykgICAgICAgIC8qITwgMHgwMDAwMDAxMCAqLw0KI2RlZmluZSBTUElfU1JfQ1JDRVJSICAgICAgICAgICAgICAgICAgICAgICBTUElfU1JfQ1JDRVJSX01zayAgICAgICAgICAgICAgICAgIC8qITwgQ1JDIEVycm9yIGZsYWcgKi8NCiNkZWZpbmUgU1BJX1NSX01PREZfUG9zICAgICAgICAgICAgICAgICAgICAgKDVVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgU1BJX1NSX01PREZfTXNrICAgICAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IFNQSV9TUl9NT0RGX1BvcykgICAgICAgICAgLyohPCAweDAwMDAwMDIwICovDQojZGVmaW5lIFNQSV9TUl9NT0RGICAgICAgICAgICAgICAgICAgICAgICAgIFNQSV9TUl9NT0RGX01zayAgICAgICAgICAgICAgICAgICAgLyohPCBNb2RlIGZhdWx0ICovDQojZGVmaW5lIFNQSV9TUl9PVlJfUG9zICAgICAgICAgICAgICAgICAgICAgICg2VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFNQSV9TUl9PVlJfTXNrICAgICAgICAgICAgICAgICAgICAgICgweDFVTCA8PCBTUElfU1JfT1ZSX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDA0MCAqLw0KI2RlZmluZSBTUElfU1JfT1ZSICAgICAgICAgICAgICAgICAgICAgICAgICBTUElfU1JfT1ZSX01zayAgICAgICAgICAgICAgICAgICAgIC8qITwgT3ZlcnJ1biBmbGFnICovDQojZGVmaW5lIFNQSV9TUl9CU1lfUG9zICAgICAgICAgICAgICAgICAgICAgICg3VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFNQSV9TUl9CU1lfTXNrICAgICAgICAgICAgICAgICAgICAgICgweDFVTCA8PCBTUElfU1JfQlNZX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDA4MCAqLw0KI2RlZmluZSBTUElfU1JfQlNZICAgICAgICAgICAgICAgICAgICAgICAgICBTUElfU1JfQlNZX01zayAgICAgICAgICAgICAgICAgICAgIC8qITwgQnVzeSBmbGFnICovDQojZGVmaW5lIFNQSV9TUl9GUkVfUG9zICAgICAgICAgICAgICAgICAgICAgICg4VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFNQSV9TUl9GUkVfTXNrICAgICAgICAgICAgICAgICAgICAgICgweDFVTCA8PCBTUElfU1JfRlJFX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDEwMCAqLw0KI2RlZmluZSBTUElfU1JfRlJFICAgICAgICAgICAgICAgICAgICAgICAgICBTUElfU1JfRlJFX01zayAgICAgICAgICAgICAgICAgICAgIC8qITxGcmFtZSBmb3JtYXQgZXJyb3IgZmxhZyAgKi8NCg0KLyoqKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgU1BJX0RSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgU1BJX0RSX0RSX1BvcyAgICAgICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgU1BJX0RSX0RSX01zayAgICAgICAgICAgICAgICAgICAgICAgKDB4RkZGRlVMIDw8IFNQSV9EUl9EUl9Qb3MpICAgICAgICAgLyohPCAweDAwMDBGRkZGICovDQojZGVmaW5lIFNQSV9EUl9EUiAgICAgICAgICAgICAgICAgICAgICAgICAgIFNQSV9EUl9EUl9Nc2sgICAgICAgICAgICAgICAgICAgICAgLyohPCBEYXRhIFJlZ2lzdGVyICovDQoNCi8qKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgU1BJX0NSQ1BSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIFNQSV9DUkNQUl9DUkNQT0xZX1BvcyAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFNQSV9DUkNQUl9DUkNQT0xZX01zayAgICAgICAgICAgICAgICgweEZGRkZVTCA8PCBTUElfQ1JDUFJfQ1JDUE9MWV9Qb3MpIC8qITwgMHgwMDAwRkZGRiAqLw0KI2RlZmluZSBTUElfQ1JDUFJfQ1JDUE9MWSAgICAgICAgICAgICAgICAgICBTUElfQ1JDUFJfQ1JDUE9MWV9Nc2sgICAgICAgICAgICAgIC8qITwgQ1JDIHBvbHlub21pYWwgcmVnaXN0ZXIgKi8NCg0KLyoqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFNQSV9SWENSQ1IgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgU1BJX1JYQ1JDUl9SWENSQ19Qb3MgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgU1BJX1JYQ1JDUl9SWENSQ19Nc2sgICAgICAgICAgICAgICAgKDB4RkZGRlVMIDw8IFNQSV9SWENSQ1JfUlhDUkNfUG9zKSAgLyohPCAweDAwMDBGRkZGICovDQojZGVmaW5lIFNQSV9SWENSQ1JfUlhDUkMgICAgICAgICAgICAgICAgICAgIFNQSV9SWENSQ1JfUlhDUkNfTXNrICAgICAgICAgICAgICAgLyohPCBSeCBDUkMgUmVnaXN0ZXIgKi8NCg0KLyoqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFNQSV9UWENSQ1IgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgU1BJX1RYQ1JDUl9UWENSQ19Qb3MgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgU1BJX1RYQ1JDUl9UWENSQ19Nc2sgICAgICAgICAgICAgICAgKDB4RkZGRlVMIDw8IFNQSV9UWENSQ1JfVFhDUkNfUG9zKSAgLyohPCAweDAwMDBGRkZGICovDQojZGVmaW5lIFNQSV9UWENSQ1JfVFhDUkMgICAgICAgICAgICAgICAgICAgIFNQSV9UWENSQ1JfVFhDUkNfTXNrICAgICAgICAgICAgICAgLyohPCBUeCBDUkMgUmVnaXN0ZXIgKi8NCg0KLyoqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFNQSV9JMlNDRkdSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgU1BJX0kyU0NGR1JfQ0hMRU5fUG9zICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgU1BJX0kyU0NGR1JfQ0hMRU5fTXNrICAgICAgICAgICAgICAgKDB4MVVMIDw8IFNQSV9JMlNDRkdSX0NITEVOX1BvcykgICAgLyohPCAweDAwMDAwMDAxICovDQojZGVmaW5lIFNQSV9JMlNDRkdSX0NITEVOICAgICAgICAgICAgICAgICAgIFNQSV9JMlNDRkdSX0NITEVOX01zayAgICAgICAgICAgICAgLyohPENoYW5uZWwgbGVuZ3RoIChudW1iZXIgb2YgYml0cyBwZXIgYXVkaW8gY2hhbm5lbCkgKi8NCg0KI2RlZmluZSBTUElfSTJTQ0ZHUl9EQVRMRU5fUG9zICAgICAgICAgICAgICAoMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBTUElfSTJTQ0ZHUl9EQVRMRU5fTXNrICAgICAgICAgICAgICAoMHgzVUwgPDwgU1BJX0kyU0NGR1JfREFUTEVOX1BvcykgICAvKiE8IDB4MDAwMDAwMDYgKi8NCiNkZWZpbmUgU1BJX0kyU0NGR1JfREFUTEVOICAgICAgICAgICAgICAgICAgU1BJX0kyU0NGR1JfREFUTEVOX01zayAgICAgICAgICAgICAvKiE8REFUTEVOWzE6MF0gYml0cyAoRGF0YSBsZW5ndGggdG8gYmUgdHJhbnNmZXJyZWQpICovDQojZGVmaW5lIFNQSV9JMlNDRkdSX0RBVExFTl8wICAgICAgICAgICAgICAgICgweDFVTCA8PCBTUElfSTJTQ0ZHUl9EQVRMRU5fUG9zKSAgIC8qITwgMHgwMDAwMDAwMiAqLw0KI2RlZmluZSBTUElfSTJTQ0ZHUl9EQVRMRU5fMSAgICAgICAgICAgICAgICAoMHgyVUwgPDwgU1BJX0kyU0NGR1JfREFUTEVOX1BvcykgICAvKiE8IDB4MDAwMDAwMDQgKi8NCg0KI2RlZmluZSBTUElfSTJTQ0ZHUl9DS1BPTF9Qb3MgICAgICAgICAgICAgICAoM1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBTUElfSTJTQ0ZHUl9DS1BPTF9Nc2sgICAgICAgICAgICAgICAoMHgxVUwgPDwgU1BJX0kyU0NGR1JfQ0tQT0xfUG9zKSAgICAvKiE8IDB4MDAwMDAwMDggKi8NCiNkZWZpbmUgU1BJX0kyU0NGR1JfQ0tQT0wgICAgICAgICAgICAgICAgICAgU1BJX0kyU0NGR1JfQ0tQT0xfTXNrICAgICAgICAgICAgICAvKiE8c3RlYWR5IHN0YXRlIGNsb2NrIHBvbGFyaXR5ICovDQoNCiNkZWZpbmUgU1BJX0kyU0NGR1JfSTJTU1REX1BvcyAgICAgICAgICAgICAgKDRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgU1BJX0kyU0NGR1JfSTJTU1REX01zayAgICAgICAgICAgICAgKDB4M1VMIDw8IFNQSV9JMlNDRkdSX0kyU1NURF9Qb3MpICAgLyohPCAweDAwMDAwMDMwICovDQojZGVmaW5lIFNQSV9JMlNDRkdSX0kyU1NURCAgICAgICAgICAgICAgICAgIFNQSV9JMlNDRkdSX0kyU1NURF9Nc2sgICAgICAgICAgICAgLyohPEkyU1NURFsxOjBdIGJpdHMgKEkyUyBzdGFuZGFyZCBzZWxlY3Rpb24pICovDQojZGVmaW5lIFNQSV9JMlNDRkdSX0kyU1NURF8wICAgICAgICAgICAgICAgICgweDFVTCA8PCBTUElfSTJTQ0ZHUl9JMlNTVERfUG9zKSAgIC8qITwgMHgwMDAwMDAxMCAqLw0KI2RlZmluZSBTUElfSTJTQ0ZHUl9JMlNTVERfMSAgICAgICAgICAgICAgICAoMHgyVUwgPDwgU1BJX0kyU0NGR1JfSTJTU1REX1BvcykgICAvKiE8IDB4MDAwMDAwMjAgKi8NCg0KI2RlZmluZSBTUElfSTJTQ0ZHUl9QQ01TWU5DX1BvcyAgICAgICAgICAgICAoN1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBTUElfSTJTQ0ZHUl9QQ01TWU5DX01zayAgICAgICAgICAgICAoMHgxVUwgPDwgU1BJX0kyU0NGR1JfUENNU1lOQ19Qb3MpICAvKiE8IDB4MDAwMDAwODAgKi8NCiNkZWZpbmUgU1BJX0kyU0NGR1JfUENNU1lOQyAgICAgICAgICAgICAgICAgU1BJX0kyU0NGR1JfUENNU1lOQ19Nc2sgICAgICAgICAgICAvKiE8UENNIGZyYW1lIHN5bmNocm9uaXphdGlvbiAqLw0KDQojZGVmaW5lIFNQSV9JMlNDRkdSX0kyU0NGR19Qb3MgICAgICAgICAgICAgICg4VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFNQSV9JMlNDRkdSX0kyU0NGR19Nc2sgICAgICAgICAgICAgICgweDNVTCA8PCBTUElfSTJTQ0ZHUl9JMlNDRkdfUG9zKSAgIC8qITwgMHgwMDAwMDMwMCAqLw0KI2RlZmluZSBTUElfSTJTQ0ZHUl9JMlNDRkcgICAgICAgICAgICAgICAgICBTUElfSTJTQ0ZHUl9JMlNDRkdfTXNrICAgICAgICAgICAgIC8qITxJMlNDRkdbMTowXSBiaXRzIChJMlMgY29uZmlndXJhdGlvbiBtb2RlKSAqLw0KI2RlZmluZSBTUElfSTJTQ0ZHUl9JMlNDRkdfMCAgICAgICAgICAgICAgICAoMHgxVUwgPDwgU1BJX0kyU0NGR1JfSTJTQ0ZHX1BvcykgICAvKiE8IDB4MDAwMDAxMDAgKi8NCiNkZWZpbmUgU1BJX0kyU0NGR1JfSTJTQ0ZHXzEgICAgICAgICAgICAgICAgKDB4MlVMIDw8IFNQSV9JMlNDRkdSX0kyU0NGR19Qb3MpICAgLyohPCAweDAwMDAwMjAwICovDQoNCiNkZWZpbmUgU1BJX0kyU0NGR1JfSTJTRV9Qb3MgICAgICAgICAgICAgICAgKDEwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgU1BJX0kyU0NGR1JfSTJTRV9Nc2sgICAgICAgICAgICAgICAgKDB4MVVMIDw8IFNQSV9JMlNDRkdSX0kyU0VfUG9zKSAgICAgLyohPCAweDAwMDAwNDAwICovDQojZGVmaW5lIFNQSV9JMlNDRkdSX0kyU0UgICAgICAgICAgICAgICAgICAgIFNQSV9JMlNDRkdSX0kyU0VfTXNrICAgICAgICAgICAgICAgLyohPEkyUyBFbmFibGUgKi8NCiNkZWZpbmUgU1BJX0kyU0NGR1JfSTJTTU9EX1BvcyAgICAgICAgICAgICAgKDExVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgU1BJX0kyU0NGR1JfSTJTTU9EX01zayAgICAgICAgICAgICAgKDB4MVVMIDw8IFNQSV9JMlNDRkdSX0kyU01PRF9Qb3MpICAgLyohPCAweDAwMDAwODAwICovDQojZGVmaW5lIFNQSV9JMlNDRkdSX0kyU01PRCAgICAgICAgICAgICAgICAgIFNQSV9JMlNDRkdSX0kyU01PRF9Nc2sgICAgICAgICAgICAgLyohPEkyUyBtb2RlIHNlbGVjdGlvbiAqLw0KDQovKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgU1BJX0kyU1BSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBTUElfSTJTUFJfSTJTRElWX1BvcyAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBTUElfSTJTUFJfSTJTRElWX01zayAgICAgICAgICAgICAgICAoMHhGRlVMIDw8IFNQSV9JMlNQUl9JMlNESVZfUG9zKSAgICAvKiE8IDB4MDAwMDAwRkYgKi8NCiNkZWZpbmUgU1BJX0kyU1BSX0kyU0RJViAgICAgICAgICAgICAgICAgICAgU1BJX0kyU1BSX0kyU0RJVl9Nc2sgICAgICAgICAgICAgICAvKiE8STJTIExpbmVhciBwcmVzY2FsZXIgKi8NCiNkZWZpbmUgU1BJX0kyU1BSX09ERF9Qb3MgICAgICAgICAgICAgICAgICAgKDhVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgU1BJX0kyU1BSX09ERF9Nc2sgICAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IFNQSV9JMlNQUl9PRERfUG9zKSAgICAgICAgLyohPCAweDAwMDAwMTAwICovDQojZGVmaW5lIFNQSV9JMlNQUl9PREQgICAgICAgICAgICAgICAgICAgICAgIFNQSV9JMlNQUl9PRERfTXNrICAgICAgICAgICAgICAgICAgLyohPE9kZCBmYWN0b3IgZm9yIHRoZSBwcmVzY2FsZXIgKi8NCiNkZWZpbmUgU1BJX0kyU1BSX01DS09FX1BvcyAgICAgICAgICAgICAgICAgKDlVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgU1BJX0kyU1BSX01DS09FX01zayAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IFNQSV9JMlNQUl9NQ0tPRV9Qb3MpICAgICAgLyohPCAweDAwMDAwMjAwICovDQojZGVmaW5lIFNQSV9JMlNQUl9NQ0tPRSAgICAgICAgICAgICAgICAgICAgIFNQSV9JMlNQUl9NQ0tPRV9Nc2sgICAgICAgICAgICAgICAgLyohPE1hc3RlciBDbG9jayBPdXRwdXQgRW5hYmxlICovDQoNCi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovDQovKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLw0KLyogICAgICAgICAgICAgICAgICAgICAgIFN5c3RlbSBDb25maWd1cmF0aW9uIChTWVNDRkcpICAgICAgICAgICAgICAgICAgICAgICAgKi8NCi8qICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovDQovKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLw0KLyoqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgU1lTQ0ZHX01FTVJNUCByZWdpc3RlciAgKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgU1lTQ0ZHX01FTVJNUF9NRU1fTU9ERV9Qb3MgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgU1lTQ0ZHX01FTVJNUF9NRU1fTU9ERV9Nc2sgICAgICAoMHgzVUwgPDwgU1lTQ0ZHX01FTVJNUF9NRU1fTU9ERV9Qb3MpICAgLyohPCAweDAwMDAwMDAzICovDQojZGVmaW5lIFNZU0NGR19NRU1STVBfTUVNX01PREUgICAgICAgICAgU1lTQ0ZHX01FTVJNUF9NRU1fTU9ERV9Nc2sgICAgICAgICAgICAgLyohPCBTWVNDRkdfTWVtb3J5IFJlbWFwIENvbmZpZyAqLw0KI2RlZmluZSBTWVNDRkdfTUVNUk1QX01FTV9NT0RFXzAgICAgICAgICgweDFVTCA8PCBTWVNDRkdfTUVNUk1QX01FTV9NT0RFX1BvcykgICAvKiE8IDB4MDAwMDAwMDEgKi8NCiNkZWZpbmUgU1lTQ0ZHX01FTVJNUF9NRU1fTU9ERV8xICAgICAgICAoMHgyVUwgPDwgU1lTQ0ZHX01FTVJNUF9NRU1fTU9ERV9Qb3MpICAgLyohPCAweDAwMDAwMDAyICovDQojZGVmaW5lIFNZU0NGR19NRU1STVBfQk9PVF9NT0RFX1BvcyAgICAgKDhVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFNZU0NGR19NRU1STVBfQk9PVF9NT0RFX01zayAgICAgKDB4M1VMIDw8IFNZU0NGR19NRU1STVBfQk9PVF9NT0RFX1BvcykgIC8qITwgMHgwMDAwMDMwMCAqLw0KI2RlZmluZSBTWVNDRkdfTUVNUk1QX0JPT1RfTU9ERSAgICAgICAgIFNZU0NGR19NRU1STVBfQk9PVF9NT0RFX01zayAgICAgICAgICAgIC8qITwgQm9vdCBtb2RlIENvbmZpZyAqLw0KI2RlZmluZSBTWVNDRkdfTUVNUk1QX0JPT1RfTU9ERV8wICAgICAgICgweDFVTCA8PCBTWVNDRkdfTUVNUk1QX0JPT1RfTU9ERV9Qb3MpICAvKiE8IDB4MDAwMDAxMDAgKi8NCiNkZWZpbmUgU1lTQ0ZHX01FTVJNUF9CT09UX01PREVfMSAgICAgICAoMHgyVUwgPDwgU1lTQ0ZHX01FTVJNUF9CT09UX01PREVfUG9zKSAgLyohPCAweDAwMDAwMjAwICovDQoNCi8qKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFNZU0NGR19QTUMgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIFNZU0NGR19QTUNfVVNCX1BVX1BvcyAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFNZU0NGR19QTUNfVVNCX1BVX01zayAgICAgICAgICAgKDB4MVVMIDw8IFNZU0NGR19QTUNfVVNCX1BVX1BvcykgICAgICAgIC8qITwgMHgwMDAwMDAwMSAqLw0KI2RlZmluZSBTWVNDRkdfUE1DX1VTQl9QVSAgICAgICAgICAgICAgIFNZU0NGR19QTUNfVVNCX1BVX01zayAgICAgICAgICAgICAgICAgIC8qITwgU1lTQ0ZHIFBNQyAqLw0KI2RlZmluZSBTWVNDRkdfUE1DX0xDRF9DQVBBX1BvcyAgICAgICAgICgxVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBTWVNDRkdfUE1DX0xDRF9DQVBBX01zayAgICAgICAgICgweDFGVUwgPDwgU1lTQ0ZHX1BNQ19MQ0RfQ0FQQV9Qb3MpICAgICAvKiE8IDB4MDAwMDAwM0UgKi8NCiNkZWZpbmUgU1lTQ0ZHX1BNQ19MQ0RfQ0FQQSAgICAgICAgICAgICBTWVNDRkdfUE1DX0xDRF9DQVBBX01zayAgICAgICAgICAgICAgICAvKiE8IExDRF9DQVBBIGRlY291cGxpbmcgY2FwYWNpdGFuY2UgY29ubmVjdGlvbiAqLw0KI2RlZmluZSBTWVNDRkdfUE1DX0xDRF9DQVBBXzAgICAgICAgICAgICgweDAxVUwgPDwgU1lTQ0ZHX1BNQ19MQ0RfQ0FQQV9Qb3MpICAgICAvKiE8IDB4MDAwMDAwMDIgKi8NCiNkZWZpbmUgU1lTQ0ZHX1BNQ19MQ0RfQ0FQQV8xICAgICAgICAgICAoMHgwMlVMIDw8IFNZU0NGR19QTUNfTENEX0NBUEFfUG9zKSAgICAgLyohPCAweDAwMDAwMDA0ICovDQojZGVmaW5lIFNZU0NGR19QTUNfTENEX0NBUEFfMiAgICAgICAgICAgKDB4MDRVTCA8PCBTWVNDRkdfUE1DX0xDRF9DQVBBX1BvcykgICAgIC8qITwgMHgwMDAwMDAwOCAqLw0KI2RlZmluZSBTWVNDRkdfUE1DX0xDRF9DQVBBXzMgICAgICAgICAgICgweDA4VUwgPDwgU1lTQ0ZHX1BNQ19MQ0RfQ0FQQV9Qb3MpICAgICAvKiE8IDB4MDAwMDAwMTAgKi8NCiNkZWZpbmUgU1lTQ0ZHX1BNQ19MQ0RfQ0FQQV80ICAgICAgICAgICAoMHgxMFVMIDw8IFNZU0NGR19QTUNfTENEX0NBUEFfUG9zKSAgICAgLyohPCAweDAwMDAwMDIwICovDQoNCi8qKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFNZU0NGR19FWFRJQ1IxIHJlZ2lzdGVyICAqKioqKioqKioqKioqKiovDQojZGVmaW5lIFNZU0NGR19FWFRJQ1IxX0VYVEkwX1BvcyAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFNZU0NGR19FWFRJQ1IxX0VYVEkwX01zayAgICAgICAgKDB4RlVMIDw8IFNZU0NGR19FWFRJQ1IxX0VYVEkwX1BvcykgICAgIC8qITwgMHgwMDAwMDAwRiAqLw0KI2RlZmluZSBTWVNDRkdfRVhUSUNSMV9FWFRJMCAgICAgICAgICAgIFNZU0NGR19FWFRJQ1IxX0VYVEkwX01zayAgICAgICAgICAgICAgIC8qITwgRVhUSSAwIGNvbmZpZ3VyYXRpb24gKi8NCiNkZWZpbmUgU1lTQ0ZHX0VYVElDUjFfRVhUSTFfUG9zICAgICAgICAoNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgU1lTQ0ZHX0VYVElDUjFfRVhUSTFfTXNrICAgICAgICAoMHhGVUwgPDwgU1lTQ0ZHX0VYVElDUjFfRVhUSTFfUG9zKSAgICAgLyohPCAweDAwMDAwMEYwICovDQojZGVmaW5lIFNZU0NGR19FWFRJQ1IxX0VYVEkxICAgICAgICAgICAgU1lTQ0ZHX0VYVElDUjFfRVhUSTFfTXNrICAgICAgICAgICAgICAgLyohPCBFWFRJIDEgY29uZmlndXJhdGlvbiAqLw0KI2RlZmluZSBTWVNDRkdfRVhUSUNSMV9FWFRJMl9Qb3MgICAgICAgICg4VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBTWVNDRkdfRVhUSUNSMV9FWFRJMl9Nc2sgICAgICAgICgweEZVTCA8PCBTWVNDRkdfRVhUSUNSMV9FWFRJMl9Qb3MpICAgICAvKiE8IDB4MDAwMDBGMDAgKi8NCiNkZWZpbmUgU1lTQ0ZHX0VYVElDUjFfRVhUSTIgICAgICAgICAgICBTWVNDRkdfRVhUSUNSMV9FWFRJMl9Nc2sgICAgICAgICAgICAgICAvKiE8IEVYVEkgMiBjb25maWd1cmF0aW9uICovDQojZGVmaW5lIFNZU0NGR19FWFRJQ1IxX0VYVEkzX1BvcyAgICAgICAgKDEyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFNZU0NGR19FWFRJQ1IxX0VYVEkzX01zayAgICAgICAgKDB4RlVMIDw8IFNZU0NGR19FWFRJQ1IxX0VYVEkzX1BvcykgICAgIC8qITwgMHgwMDAwRjAwMCAqLw0KI2RlZmluZSBTWVNDRkdfRVhUSUNSMV9FWFRJMyAgICAgICAgICAgIFNZU0NGR19FWFRJQ1IxX0VYVEkzX01zayAgICAgICAgICAgICAgIC8qITwgRVhUSSAzIGNvbmZpZ3VyYXRpb24gKi8NCg0KLyoqIA0KICAqIEBicmllZiAgRVhUSTAgY29uZmlndXJhdGlvbiAgDQogICovIA0KI2RlZmluZSBTWVNDRkdfRVhUSUNSMV9FWFRJMF9QQSAgICAgICAgICgweDAwMDAwMDAwVSkgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgUEFbMF0gcGluICovDQojZGVmaW5lIFNZU0NGR19FWFRJQ1IxX0VYVEkwX1BCICAgICAgICAgKDB4MDAwMDAwMDFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBQQlswXSBwaW4gKi8NCiNkZWZpbmUgU1lTQ0ZHX0VYVElDUjFfRVhUSTBfUEMgICAgICAgICAoMHgwMDAwMDAwMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBDWzBdIHBpbiAqLw0KI2RlZmluZSBTWVNDRkdfRVhUSUNSMV9FWFRJMF9QRCAgICAgICAgICgweDAwMDAwMDAzVSkgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgUERbMF0gcGluICovDQojZGVmaW5lIFNZU0NGR19FWFRJQ1IxX0VYVEkwX1BFICAgICAgICAgKDB4MDAwMDAwMDRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBQRVswXSBwaW4gKi8NCiNkZWZpbmUgU1lTQ0ZHX0VYVElDUjFfRVhUSTBfUEggICAgICAgICAoMHgwMDAwMDAwNVUpICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBIWzBdIHBpbiAqLw0KI2RlZmluZSBTWVNDRkdfRVhUSUNSMV9FWFRJMF9QRiAgICAgICAgICgweDAwMDAwMDA2VSkgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgUEZbMF0gcGluICovDQojZGVmaW5lIFNZU0NGR19FWFRJQ1IxX0VYVEkwX1BHICAgICAgICAgKDB4MDAwMDAwMDdVKSAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBQR1swXSBwaW4gKi8NCg0KLyoqIA0KICAqIEBicmllZiAgRVhUSTEgY29uZmlndXJhdGlvbiAgDQogICovIA0KI2RlZmluZSBTWVNDRkdfRVhUSUNSMV9FWFRJMV9QQSAgICAgICAgICgweDAwMDAwMDAwVSkgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgUEFbMV0gcGluICovDQojZGVmaW5lIFNZU0NGR19FWFRJQ1IxX0VYVEkxX1BCICAgICAgICAgKDB4MDAwMDAwMTBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBQQlsxXSBwaW4gKi8NCiNkZWZpbmUgU1lTQ0ZHX0VYVElDUjFfRVhUSTFfUEMgICAgICAgICAoMHgwMDAwMDAyMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBDWzFdIHBpbiAqLw0KI2RlZmluZSBTWVNDRkdfRVhUSUNSMV9FWFRJMV9QRCAgICAgICAgICgweDAwMDAwMDMwVSkgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgUERbMV0gcGluICovDQojZGVmaW5lIFNZU0NGR19FWFRJQ1IxX0VYVEkxX1BFICAgICAgICAgKDB4MDAwMDAwNDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBQRVsxXSBwaW4gKi8NCiNkZWZpbmUgU1lTQ0ZHX0VYVElDUjFfRVhUSTFfUEggICAgICAgICAoMHgwMDAwMDA1MFUpICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBIWzFdIHBpbiAqLw0KI2RlZmluZSBTWVNDRkdfRVhUSUNSMV9FWFRJMV9QRiAgICAgICAgICgweDAwMDAwMDYwVSkgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgUEZbMV0gcGluICovDQojZGVmaW5lIFNZU0NGR19FWFRJQ1IxX0VYVEkxX1BHICAgICAgICAgKDB4MDAwMDAwNzBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBQR1sxXSBwaW4gKi8NCg0KLyoqIA0KICAqIEBicmllZiAgRVhUSTIgY29uZmlndXJhdGlvbiAgDQogICovIA0KI2RlZmluZSBTWVNDRkdfRVhUSUNSMV9FWFRJMl9QQSAgICAgICAgICgweDAwMDAwMDAwVSkgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgUEFbMl0gcGluICovDQojZGVmaW5lIFNZU0NGR19FWFRJQ1IxX0VYVEkyX1BCICAgICAgICAgKDB4MDAwMDAxMDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBQQlsyXSBwaW4gKi8NCiNkZWZpbmUgU1lTQ0ZHX0VYVElDUjFfRVhUSTJfUEMgICAgICAgICAoMHgwMDAwMDIwMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBDWzJdIHBpbiAqLw0KI2RlZmluZSBTWVNDRkdfRVhUSUNSMV9FWFRJMl9QRCAgICAgICAgICgweDAwMDAwMzAwVSkgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgUERbMl0gcGluICovDQojZGVmaW5lIFNZU0NGR19FWFRJQ1IxX0VYVEkyX1BFICAgICAgICAgKDB4MDAwMDA0MDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBQRVsyXSBwaW4gKi8NCiNkZWZpbmUgU1lTQ0ZHX0VYVElDUjFfRVhUSTJfUEggICAgICAgICAoMHgwMDAwMDUwMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBIWzJdIHBpbiAqLw0KI2RlZmluZSBTWVNDRkdfRVhUSUNSMV9FWFRJMl9QRiAgICAgICAgICgweDAwMDAwNjAwVSkgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgUEZbMl0gcGluICovDQojZGVmaW5lIFNZU0NGR19FWFRJQ1IxX0VYVEkyX1BHICAgICAgICAgKDB4MDAwMDA3MDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBQR1syXSBwaW4gKi8NCg0KLyoqIA0KICAqIEBicmllZiAgRVhUSTMgY29uZmlndXJhdGlvbiAgDQogICovIA0KI2RlZmluZSBTWVNDRkdfRVhUSUNSMV9FWFRJM19QQSAgICAgICAgICgweDAwMDAwMDAwVSkgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgUEFbM10gcGluICovDQojZGVmaW5lIFNZU0NGR19FWFRJQ1IxX0VYVEkzX1BCICAgICAgICAgKDB4MDAwMDEwMDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBQQlszXSBwaW4gKi8NCiNkZWZpbmUgU1lTQ0ZHX0VYVElDUjFfRVhUSTNfUEMgICAgICAgICAoMHgwMDAwMjAwMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBDWzNdIHBpbiAqLw0KI2RlZmluZSBTWVNDRkdfRVhUSUNSMV9FWFRJM19QRCAgICAgICAgICgweDAwMDAzMDAwVSkgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgUERbM10gcGluICovDQojZGVmaW5lIFNZU0NGR19FWFRJQ1IxX0VYVEkzX1BFICAgICAgICAgKDB4MDAwMDQwMDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBQRVszXSBwaW4gKi8NCiNkZWZpbmUgU1lTQ0ZHX0VYVElDUjFfRVhUSTNfUEYgICAgICAgICAoMHgwMDAwMzAwMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBGWzNdIHBpbiAqLw0KI2RlZmluZSBTWVNDRkdfRVhUSUNSMV9FWFRJM19QRyAgICAgICAgICgweDAwMDA0MDAwVSkgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgUEdbM10gcGluICovDQoNCi8qKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFNZU0NGR19FWFRJQ1IyIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgU1lTQ0ZHX0VYVElDUjJfRVhUSTRfUG9zICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgU1lTQ0ZHX0VYVElDUjJfRVhUSTRfTXNrICAgICAgICAoMHhGVUwgPDwgU1lTQ0ZHX0VYVElDUjJfRVhUSTRfUG9zKSAgICAgLyohPCAweDAwMDAwMDBGICovDQojZGVmaW5lIFNZU0NGR19FWFRJQ1IyX0VYVEk0ICAgICAgICAgICAgU1lTQ0ZHX0VYVElDUjJfRVhUSTRfTXNrICAgICAgICAgICAgICAgLyohPCBFWFRJIDQgY29uZmlndXJhdGlvbiAqLw0KI2RlZmluZSBTWVNDRkdfRVhUSUNSMl9FWFRJNV9Qb3MgICAgICAgICg0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBTWVNDRkdfRVhUSUNSMl9FWFRJNV9Nc2sgICAgICAgICgweEZVTCA8PCBTWVNDRkdfRVhUSUNSMl9FWFRJNV9Qb3MpICAgICAvKiE8IDB4MDAwMDAwRjAgKi8NCiNkZWZpbmUgU1lTQ0ZHX0VYVElDUjJfRVhUSTUgICAgICAgICAgICBTWVNDRkdfRVhUSUNSMl9FWFRJNV9Nc2sgICAgICAgICAgICAgICAvKiE8IEVYVEkgNSBjb25maWd1cmF0aW9uICovDQojZGVmaW5lIFNZU0NGR19FWFRJQ1IyX0VYVEk2X1BvcyAgICAgICAgKDhVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFNZU0NGR19FWFRJQ1IyX0VYVEk2X01zayAgICAgICAgKDB4RlVMIDw8IFNZU0NGR19FWFRJQ1IyX0VYVEk2X1BvcykgICAgIC8qITwgMHgwMDAwMEYwMCAqLw0KI2RlZmluZSBTWVNDRkdfRVhUSUNSMl9FWFRJNiAgICAgICAgICAgIFNZU0NGR19FWFRJQ1IyX0VYVEk2X01zayAgICAgICAgICAgICAgIC8qITwgRVhUSSA2IGNvbmZpZ3VyYXRpb24gKi8NCiNkZWZpbmUgU1lTQ0ZHX0VYVElDUjJfRVhUSTdfUG9zICAgICAgICAoMTJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgU1lTQ0ZHX0VYVElDUjJfRVhUSTdfTXNrICAgICAgICAoMHhGVUwgPDwgU1lTQ0ZHX0VYVElDUjJfRVhUSTdfUG9zKSAgICAgLyohPCAweDAwMDBGMDAwICovDQojZGVmaW5lIFNZU0NGR19FWFRJQ1IyX0VYVEk3ICAgICAgICAgICAgU1lTQ0ZHX0VYVElDUjJfRVhUSTdfTXNrICAgICAgICAgICAgICAgLyohPCBFWFRJIDcgY29uZmlndXJhdGlvbiAqLw0KDQovKiogDQogICogQGJyaWVmICBFWFRJNCBjb25maWd1cmF0aW9uICANCiAgKi8gDQojZGVmaW5lIFNZU0NGR19FWFRJQ1IyX0VYVEk0X1BBICAgICAgICAgKDB4MDAwMDAwMDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBQQVs0XSBwaW4gKi8NCiNkZWZpbmUgU1lTQ0ZHX0VYVElDUjJfRVhUSTRfUEIgICAgICAgICAoMHgwMDAwMDAwMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBCWzRdIHBpbiAqLw0KI2RlZmluZSBTWVNDRkdfRVhUSUNSMl9FWFRJNF9QQyAgICAgICAgICgweDAwMDAwMDAyVSkgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgUENbNF0gcGluICovDQojZGVmaW5lIFNZU0NGR19FWFRJQ1IyX0VYVEk0X1BEICAgICAgICAgKDB4MDAwMDAwMDNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBQRFs0XSBwaW4gKi8NCiNkZWZpbmUgU1lTQ0ZHX0VYVElDUjJfRVhUSTRfUEUgICAgICAgICAoMHgwMDAwMDAwNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBFWzRdIHBpbiAqLw0KI2RlZmluZSBTWVNDRkdfRVhUSUNSMl9FWFRJNF9QRiAgICAgICAgICgweDAwMDAwMDA2VSkgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgUEZbNF0gcGluICovDQojZGVmaW5lIFNZU0NGR19FWFRJQ1IyX0VYVEk0X1BHICAgICAgICAgKDB4MDAwMDAwMDdVKSAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBQR1s0XSBwaW4gKi8NCg0KLyoqIA0KICAqIEBicmllZiAgRVhUSTUgY29uZmlndXJhdGlvbiAgDQogICovIA0KI2RlZmluZSBTWVNDRkdfRVhUSUNSMl9FWFRJNV9QQSAgICAgICAgICgweDAwMDAwMDAwVSkgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgUEFbNV0gcGluICovDQojZGVmaW5lIFNZU0NGR19FWFRJQ1IyX0VYVEk1X1BCICAgICAgICAgKDB4MDAwMDAwMTBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBQQls1XSBwaW4gKi8NCiNkZWZpbmUgU1lTQ0ZHX0VYVElDUjJfRVhUSTVfUEMgICAgICAgICAoMHgwMDAwMDAyMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBDWzVdIHBpbiAqLw0KI2RlZmluZSBTWVNDRkdfRVhUSUNSMl9FWFRJNV9QRCAgICAgICAgICgweDAwMDAwMDMwVSkgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgUERbNV0gcGluICovDQojZGVmaW5lIFNZU0NGR19FWFRJQ1IyX0VYVEk1X1BFICAgICAgICAgKDB4MDAwMDAwNDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBQRVs1XSBwaW4gKi8NCiNkZWZpbmUgU1lTQ0ZHX0VYVElDUjJfRVhUSTVfUEYgICAgICAgICAoMHgwMDAwMDA2MFUpICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBGWzVdIHBpbiAqLw0KI2RlZmluZSBTWVNDRkdfRVhUSUNSMl9FWFRJNV9QRyAgICAgICAgICgweDAwMDAwMDcwVSkgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgUEdbNV0gcGluICovDQoNCi8qKiANCiAgKiBAYnJpZWYgIEVYVEk2IGNvbmZpZ3VyYXRpb24gIA0KICAqLyANCiNkZWZpbmUgU1lTQ0ZHX0VYVElDUjJfRVhUSTZfUEEgICAgICAgICAoMHgwMDAwMDAwMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBBWzZdIHBpbiAqLw0KI2RlZmluZSBTWVNDRkdfRVhUSUNSMl9FWFRJNl9QQiAgICAgICAgICgweDAwMDAwMTAwVSkgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgUEJbNl0gcGluICovDQojZGVmaW5lIFNZU0NGR19FWFRJQ1IyX0VYVEk2X1BDICAgICAgICAgKDB4MDAwMDAyMDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBQQ1s2XSBwaW4gKi8NCiNkZWZpbmUgU1lTQ0ZHX0VYVElDUjJfRVhUSTZfUEQgICAgICAgICAoMHgwMDAwMDMwMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBEWzZdIHBpbiAqLw0KI2RlZmluZSBTWVNDRkdfRVhUSUNSMl9FWFRJNl9QRSAgICAgICAgICgweDAwMDAwNDAwVSkgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgUEVbNl0gcGluICovDQojZGVmaW5lIFNZU0NGR19FWFRJQ1IyX0VYVEk2X1BGICAgICAgICAgKDB4MDAwMDA2MDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBQRls2XSBwaW4gKi8NCiNkZWZpbmUgU1lTQ0ZHX0VYVElDUjJfRVhUSTZfUEcgICAgICAgICAoMHgwMDAwMDcwMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBHWzZdIHBpbiAqLw0KDQovKiogDQogICogQGJyaWVmICBFWFRJNyBjb25maWd1cmF0aW9uICANCiAgKi8gDQojZGVmaW5lIFNZU0NGR19FWFRJQ1IyX0VYVEk3X1BBICAgICAgICAgKDB4MDAwMDAwMDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBQQVs3XSBwaW4gKi8NCiNkZWZpbmUgU1lTQ0ZHX0VYVElDUjJfRVhUSTdfUEIgICAgICAgICAoMHgwMDAwMTAwMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBCWzddIHBpbiAqLw0KI2RlZmluZSBTWVNDRkdfRVhUSUNSMl9FWFRJN19QQyAgICAgICAgICgweDAwMDAyMDAwVSkgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgUENbN10gcGluICovDQojZGVmaW5lIFNZU0NGR19FWFRJQ1IyX0VYVEk3X1BEICAgICAgICAgKDB4MDAwMDMwMDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBQRFs3XSBwaW4gKi8NCiNkZWZpbmUgU1lTQ0ZHX0VYVElDUjJfRVhUSTdfUEUgICAgICAgICAoMHgwMDAwNDAwMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBFWzddIHBpbiAqLw0KI2RlZmluZSBTWVNDRkdfRVhUSUNSMl9FWFRJN19QRiAgICAgICAgICgweDAwMDA2MDAwVSkgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgUEZbN10gcGluICovDQojZGVmaW5lIFNZU0NGR19FWFRJQ1IyX0VYVEk3X1BHICAgICAgICAgKDB4MDAwMDcwMDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBQR1s3XSBwaW4gKi8NCg0KLyoqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgU1lTQ0ZHX0VYVElDUjMgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBTWVNDRkdfRVhUSUNSM19FWFRJOF9Qb3MgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBTWVNDRkdfRVhUSUNSM19FWFRJOF9Nc2sgICAgICAgICgweEZVTCA8PCBTWVNDRkdfRVhUSUNSM19FWFRJOF9Qb3MpICAgICAvKiE8IDB4MDAwMDAwMEYgKi8NCiNkZWZpbmUgU1lTQ0ZHX0VYVElDUjNfRVhUSTggICAgICAgICAgICBTWVNDRkdfRVhUSUNSM19FWFRJOF9Nc2sgICAgICAgICAgICAgICAvKiE8IEVYVEkgOCBjb25maWd1cmF0aW9uICovDQojZGVmaW5lIFNZU0NGR19FWFRJQ1IzX0VYVEk5X1BvcyAgICAgICAgKDRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFNZU0NGR19FWFRJQ1IzX0VYVEk5X01zayAgICAgICAgKDB4RlVMIDw8IFNZU0NGR19FWFRJQ1IzX0VYVEk5X1BvcykgICAgIC8qITwgMHgwMDAwMDBGMCAqLw0KI2RlZmluZSBTWVNDRkdfRVhUSUNSM19FWFRJOSAgICAgICAgICAgIFNZU0NGR19FWFRJQ1IzX0VYVEk5X01zayAgICAgICAgICAgICAgIC8qITwgRVhUSSA5IGNvbmZpZ3VyYXRpb24gKi8NCiNkZWZpbmUgU1lTQ0ZHX0VYVElDUjNfRVhUSTEwX1BvcyAgICAgICAoOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgU1lTQ0ZHX0VYVElDUjNfRVhUSTEwX01zayAgICAgICAoMHhGVUwgPDwgU1lTQ0ZHX0VYVElDUjNfRVhUSTEwX1BvcykgICAgLyohPCAweDAwMDAwRjAwICovDQojZGVmaW5lIFNZU0NGR19FWFRJQ1IzX0VYVEkxMCAgICAgICAgICAgU1lTQ0ZHX0VYVElDUjNfRVhUSTEwX01zayAgICAgICAgICAgICAgLyohPCBFWFRJIDEwIGNvbmZpZ3VyYXRpb24gKi8NCiNkZWZpbmUgU1lTQ0ZHX0VYVElDUjNfRVhUSTExX1BvcyAgICAgICAoMTJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgU1lTQ0ZHX0VYVElDUjNfRVhUSTExX01zayAgICAgICAoMHhGVUwgPDwgU1lTQ0ZHX0VYVElDUjNfRVhUSTExX1BvcykgICAgLyohPCAweDAwMDBGMDAwICovDQojZGVmaW5lIFNZU0NGR19FWFRJQ1IzX0VYVEkxMSAgICAgICAgICAgU1lTQ0ZHX0VYVElDUjNfRVhUSTExX01zayAgICAgICAgICAgICAgLyohPCBFWFRJIDExIGNvbmZpZ3VyYXRpb24gKi8NCg0KLyoqIA0KICAqIEBicmllZiAgRVhUSTggY29uZmlndXJhdGlvbiAgDQogICovIA0KI2RlZmluZSBTWVNDRkdfRVhUSUNSM19FWFRJOF9QQSAgICAgICAgICgweDAwMDAwMDAwVSkgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgUEFbOF0gcGluICovDQojZGVmaW5lIFNZU0NGR19FWFRJQ1IzX0VYVEk4X1BCICAgICAgICAgKDB4MDAwMDAwMDFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBQQls4XSBwaW4gKi8NCiNkZWZpbmUgU1lTQ0ZHX0VYVElDUjNfRVhUSThfUEMgICAgICAgICAoMHgwMDAwMDAwMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBDWzhdIHBpbiAqLw0KI2RlZmluZSBTWVNDRkdfRVhUSUNSM19FWFRJOF9QRCAgICAgICAgICgweDAwMDAwMDAzVSkgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgUERbOF0gcGluICovDQojZGVmaW5lIFNZU0NGR19FWFRJQ1IzX0VYVEk4X1BFICAgICAgICAgKDB4MDAwMDAwMDRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBQRVs4XSBwaW4gKi8NCiNkZWZpbmUgU1lTQ0ZHX0VYVElDUjNfRVhUSThfUEYgICAgICAgICAoMHgwMDAwMDAwNlUpICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBGWzhdIHBpbiAqLw0KI2RlZmluZSBTWVNDRkdfRVhUSUNSM19FWFRJOF9QRyAgICAgICAgICgweDAwMDAwMDA3VSkgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgUEdbOF0gcGluICovDQoNCi8qKiANCiAgKiBAYnJpZWYgIEVYVEk5IGNvbmZpZ3VyYXRpb24gIA0KICAqLyANCiNkZWZpbmUgU1lTQ0ZHX0VYVElDUjNfRVhUSTlfUEEgICAgICAgICAoMHgwMDAwMDAwMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBBWzldIHBpbiAqLw0KI2RlZmluZSBTWVNDRkdfRVhUSUNSM19FWFRJOV9QQiAgICAgICAgICgweDAwMDAwMDEwVSkgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgUEJbOV0gcGluICovDQojZGVmaW5lIFNZU0NGR19FWFRJQ1IzX0VYVEk5X1BDICAgICAgICAgKDB4MDAwMDAwMjBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBQQ1s5XSBwaW4gKi8NCiNkZWZpbmUgU1lTQ0ZHX0VYVElDUjNfRVhUSTlfUEQgICAgICAgICAoMHgwMDAwMDAzMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBEWzldIHBpbiAqLw0KI2RlZmluZSBTWVNDRkdfRVhUSUNSM19FWFRJOV9QRSAgICAgICAgICgweDAwMDAwMDQwVSkgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgUEVbOV0gcGluICovDQojZGVmaW5lIFNZU0NGR19FWFRJQ1IzX0VYVEk5X1BGICAgICAgICAgKDB4MDAwMDAwNjBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBQRls5XSBwaW4gKi8NCiNkZWZpbmUgU1lTQ0ZHX0VYVElDUjNfRVhUSTlfUEcgICAgICAgICAoMHgwMDAwMDA3MFUpICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBHWzldIHBpbiAqLw0KDQovKiogDQogICogQGJyaWVmICBFWFRJMTAgY29uZmlndXJhdGlvbiAgDQogICovIA0KI2RlZmluZSBTWVNDRkdfRVhUSUNSM19FWFRJMTBfUEEgICAgICAgICgweDAwMDAwMDAwVSkgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgUEFbMTBdIHBpbiAqLw0KI2RlZmluZSBTWVNDRkdfRVhUSUNSM19FWFRJMTBfUEIgICAgICAgICgweDAwMDAwMTAwVSkgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgUEJbMTBdIHBpbiAqLw0KI2RlZmluZSBTWVNDRkdfRVhUSUNSM19FWFRJMTBfUEMgICAgICAgICgweDAwMDAwMjAwVSkgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgUENbMTBdIHBpbiAqLw0KI2RlZmluZSBTWVNDRkdfRVhUSUNSM19FWFRJMTBfUEQgICAgICAgICgweDAwMDAwMzAwVSkgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgUERbMTBdIHBpbiAqLw0KI2RlZmluZSBTWVNDRkdfRVhUSUNSM19FWFRJMTBfUEUgICAgICAgICgweDAwMDAwNDAwVSkgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgUEVbMTBdIHBpbiAqLw0KI2RlZmluZSBTWVNDRkdfRVhUSUNSM19FWFRJMTBfUEYgICAgICAgICgweDAwMDAwNjAwVSkgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgUEZbMTBdIHBpbiAqLw0KI2RlZmluZSBTWVNDRkdfRVhUSUNSM19FWFRJMTBfUEcgICAgICAgICgweDAwMDAwNzAwVSkgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgUEdbMTBdIHBpbiAqLw0KDQovKiogDQogICogQGJyaWVmICBFWFRJMTEgY29uZmlndXJhdGlvbiAgDQogICovIA0KI2RlZmluZSBTWVNDRkdfRVhUSUNSM19FWFRJMTFfUEEgICAgICAgICgweDAwMDAwMDAwVSkgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgUEFbMTFdIHBpbiAqLw0KI2RlZmluZSBTWVNDRkdfRVhUSUNSM19FWFRJMTFfUEIgICAgICAgICgweDAwMDAxMDAwVSkgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgUEJbMTFdIHBpbiAqLw0KI2RlZmluZSBTWVNDRkdfRVhUSUNSM19FWFRJMTFfUEMgICAgICAgICgweDAwMDAyMDAwVSkgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgUENbMTFdIHBpbiAqLw0KI2RlZmluZSBTWVNDRkdfRVhUSUNSM19FWFRJMTFfUEQgICAgICAgICgweDAwMDAzMDAwVSkgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgUERbMTFdIHBpbiAqLw0KI2RlZmluZSBTWVNDRkdfRVhUSUNSM19FWFRJMTFfUEUgICAgICAgICgweDAwMDA0MDAwVSkgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgUEVbMTFdIHBpbiAqLw0KI2RlZmluZSBTWVNDRkdfRVhUSUNSM19FWFRJMTFfUEYgICAgICAgICgweDAwMDA2MDAwVSkgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgUEZbMTFdIHBpbiAqLw0KI2RlZmluZSBTWVNDRkdfRVhUSUNSM19FWFRJMTFfUEcgICAgICAgICgweDAwMDA3MDAwVSkgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgUEdbMTFdIHBpbiAqLw0KDQovKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBTWVNDRkdfRVhUSUNSNCByZWdpc3RlciAgKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIFNZU0NGR19FWFRJQ1I0X0VYVEkxMl9Qb3MgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFNZU0NGR19FWFRJQ1I0X0VYVEkxMl9Nc2sgICAgICAgKDB4RlVMIDw8IFNZU0NGR19FWFRJQ1I0X0VYVEkxMl9Qb3MpICAgIC8qITwgMHgwMDAwMDAwRiAqLw0KI2RlZmluZSBTWVNDRkdfRVhUSUNSNF9FWFRJMTIgICAgICAgICAgIFNZU0NGR19FWFRJQ1I0X0VYVEkxMl9Nc2sgICAgICAgICAgICAgIC8qITwgRVhUSSAxMiBjb25maWd1cmF0aW9uICovDQojZGVmaW5lIFNZU0NGR19FWFRJQ1I0X0VYVEkxM19Qb3MgICAgICAgKDRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFNZU0NGR19FWFRJQ1I0X0VYVEkxM19Nc2sgICAgICAgKDB4RlVMIDw8IFNZU0NGR19FWFRJQ1I0X0VYVEkxM19Qb3MpICAgIC8qITwgMHgwMDAwMDBGMCAqLw0KI2RlZmluZSBTWVNDRkdfRVhUSUNSNF9FWFRJMTMgICAgICAgICAgIFNZU0NGR19FWFRJQ1I0X0VYVEkxM19Nc2sgICAgICAgICAgICAgIC8qITwgRVhUSSAxMyBjb25maWd1cmF0aW9uICovDQojZGVmaW5lIFNZU0NGR19FWFRJQ1I0X0VYVEkxNF9Qb3MgICAgICAgKDhVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFNZU0NGR19FWFRJQ1I0X0VYVEkxNF9Nc2sgICAgICAgKDB4RlVMIDw8IFNZU0NGR19FWFRJQ1I0X0VYVEkxNF9Qb3MpICAgIC8qITwgMHgwMDAwMEYwMCAqLw0KI2RlZmluZSBTWVNDRkdfRVhUSUNSNF9FWFRJMTQgICAgICAgICAgIFNZU0NGR19FWFRJQ1I0X0VYVEkxNF9Nc2sgICAgICAgICAgICAgIC8qITwgRVhUSSAxNCBjb25maWd1cmF0aW9uICovDQojZGVmaW5lIFNZU0NGR19FWFRJQ1I0X0VYVEkxNV9Qb3MgICAgICAgKDEyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFNZU0NGR19FWFRJQ1I0X0VYVEkxNV9Nc2sgICAgICAgKDB4RlVMIDw8IFNZU0NGR19FWFRJQ1I0X0VYVEkxNV9Qb3MpICAgIC8qITwgMHgwMDAwRjAwMCAqLw0KI2RlZmluZSBTWVNDRkdfRVhUSUNSNF9FWFRJMTUgICAgICAgICAgIFNZU0NGR19FWFRJQ1I0X0VYVEkxNV9Nc2sgICAgICAgICAgICAgIC8qITwgRVhUSSAxNSBjb25maWd1cmF0aW9uICovDQoNCi8qKiANCiAgKiBAYnJpZWYgIEVYVEkxMiBjb25maWd1cmF0aW9uICANCiAgKi8gDQojZGVmaW5lIFNZU0NGR19FWFRJQ1I0X0VYVEkxMl9QQSAgICAgICAgKDB4MDAwMDAwMDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBQQVsxMl0gcGluICovDQojZGVmaW5lIFNZU0NGR19FWFRJQ1I0X0VYVEkxMl9QQiAgICAgICAgKDB4MDAwMDAwMDFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBQQlsxMl0gcGluICovDQojZGVmaW5lIFNZU0NGR19FWFRJQ1I0X0VYVEkxMl9QQyAgICAgICAgKDB4MDAwMDAwMDJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBQQ1sxMl0gcGluICovDQojZGVmaW5lIFNZU0NGR19FWFRJQ1I0X0VYVEkxMl9QRCAgICAgICAgKDB4MDAwMDAwMDNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBQRFsxMl0gcGluICovDQojZGVmaW5lIFNZU0NGR19FWFRJQ1I0X0VYVEkxMl9QRSAgICAgICAgKDB4MDAwMDAwMDRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBQRVsxMl0gcGluICovDQojZGVmaW5lIFNZU0NGR19FWFRJQ1I0X0VYVEkxMl9QRiAgICAgICAgKDB4MDAwMDAwMDZVKSAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBQRlsxMl0gcGluICovDQojZGVmaW5lIFNZU0NGR19FWFRJQ1I0X0VYVEkxMl9QRyAgICAgICAgKDB4MDAwMDAwMDdVKSAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBQR1sxMl0gcGluICovDQoNCi8qKiANCiAgKiBAYnJpZWYgIEVYVEkxMyBjb25maWd1cmF0aW9uICANCiAgKi8gDQojZGVmaW5lIFNZU0NGR19FWFRJQ1I0X0VYVEkxM19QQSAgICAgICAgKDB4MDAwMDAwMDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBQQVsxM10gcGluICovDQojZGVmaW5lIFNZU0NGR19FWFRJQ1I0X0VYVEkxM19QQiAgICAgICAgKDB4MDAwMDAwMTBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBQQlsxM10gcGluICovDQojZGVmaW5lIFNZU0NGR19FWFRJQ1I0X0VYVEkxM19QQyAgICAgICAgKDB4MDAwMDAwMjBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBQQ1sxM10gcGluICovDQojZGVmaW5lIFNZU0NGR19FWFRJQ1I0X0VYVEkxM19QRCAgICAgICAgKDB4MDAwMDAwMzBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBQRFsxM10gcGluICovDQojZGVmaW5lIFNZU0NGR19FWFRJQ1I0X0VYVEkxM19QRSAgICAgICAgKDB4MDAwMDAwNDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBQRVsxM10gcGluICovDQojZGVmaW5lIFNZU0NGR19FWFRJQ1I0X0VYVEkxM19QRiAgICAgICAgKDB4MDAwMDAwNjBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBQRlsxM10gcGluICovDQojZGVmaW5lIFNZU0NGR19FWFRJQ1I0X0VYVEkxM19QRyAgICAgICAgKDB4MDAwMDAwNzBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBQR1sxM10gcGluICovDQoNCi8qKiANCiAgKiBAYnJpZWYgIEVYVEkxNCBjb25maWd1cmF0aW9uICANCiAgKi8gDQojZGVmaW5lIFNZU0NGR19FWFRJQ1I0X0VYVEkxNF9QQSAgICAgICAgKDB4MDAwMDAwMDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBQQVsxNF0gcGluICovDQojZGVmaW5lIFNZU0NGR19FWFRJQ1I0X0VYVEkxNF9QQiAgICAgICAgKDB4MDAwMDAxMDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBQQlsxNF0gcGluICovDQojZGVmaW5lIFNZU0NGR19FWFRJQ1I0X0VYVEkxNF9QQyAgICAgICAgKDB4MDAwMDAyMDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBQQ1sxNF0gcGluICovDQojZGVmaW5lIFNZU0NGR19FWFRJQ1I0X0VYVEkxNF9QRCAgICAgICAgKDB4MDAwMDAzMDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBQRFsxNF0gcGluICovDQojZGVmaW5lIFNZU0NGR19FWFRJQ1I0X0VYVEkxNF9QRSAgICAgICAgKDB4MDAwMDA0MDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBQRVsxNF0gcGluICovDQojZGVmaW5lIFNZU0NGR19FWFRJQ1I0X0VYVEkxNF9QRiAgICAgICAgKDB4MDAwMDA2MDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBQRlsxNF0gcGluICovDQojZGVmaW5lIFNZU0NGR19FWFRJQ1I0X0VYVEkxNF9QRyAgICAgICAgKDB4MDAwMDA3MDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBQR1sxNF0gcGluICovDQoNCi8qKiANCiAgKiBAYnJpZWYgIEVYVEkxNSBjb25maWd1cmF0aW9uICANCiAgKi8gDQojZGVmaW5lIFNZU0NGR19FWFRJQ1I0X0VYVEkxNV9QQSAgICAgICAgKDB4MDAwMDAwMDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBQQVsxNV0gcGluICovDQojZGVmaW5lIFNZU0NGR19FWFRJQ1I0X0VYVEkxNV9QQiAgICAgICAgKDB4MDAwMDEwMDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBQQlsxNV0gcGluICovDQojZGVmaW5lIFNZU0NGR19FWFRJQ1I0X0VYVEkxNV9QQyAgICAgICAgKDB4MDAwMDIwMDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBQQ1sxNV0gcGluICovDQojZGVmaW5lIFNZU0NGR19FWFRJQ1I0X0VYVEkxNV9QRCAgICAgICAgKDB4MDAwMDMwMDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBQRFsxNV0gcGluICovDQojZGVmaW5lIFNZU0NGR19FWFRJQ1I0X0VYVEkxNV9QRSAgICAgICAgKDB4MDAwMDQwMDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBQRVsxNV0gcGluICovDQojZGVmaW5lIFNZU0NGR19FWFRJQ1I0X0VYVEkxNV9QRiAgICAgICAgKDB4MDAwMDYwMDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBQRlsxNV0gcGluICovDQojZGVmaW5lIFNZU0NGR19FWFRJQ1I0X0VYVEkxNV9QRyAgICAgICAgKDB4MDAwMDcwMDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBQR1sxNV0gcGluICovDQogDQovKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLw0KLyogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8NCi8qICAgICAgICAgICAgICAgICAgICAgICBSb3V0aW5nIEludGVyZmFjZSAoUkkpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovDQovKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLw0KLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8NCg0KLyoqKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgUklfSUNSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgUklfSUNSX0lDMU9TX1BvcyAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUklfSUNSX0lDMU9TX01zayAgICAgICAgICAgICAgICAoMHhGVUwgPDwgUklfSUNSX0lDMU9TX1BvcykgICAgICAgICAgICAgLyohPCAweDAwMDAwMDBGICovDQojZGVmaW5lIFJJX0lDUl9JQzFPUyAgICAgICAgICAgICAgICAgICAgUklfSUNSX0lDMU9TX01zayAgICAgICAgICAgICAgICAgICAgICAgLyohPCBJQzFPU1szOjBdIGJpdHMgKElucHV0IENhcHR1cmUgMSBzZWxlY3QgYml0cykgKi8NCiNkZWZpbmUgUklfSUNSX0lDMU9TXzAgICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgUklfSUNSX0lDMU9TX1BvcykgICAgICAgICAgICAgLyohPCAweDAwMDAwMDAxICovDQojZGVmaW5lIFJJX0lDUl9JQzFPU18xICAgICAgICAgICAgICAgICAgKDB4MlVMIDw8IFJJX0lDUl9JQzFPU19Qb3MpICAgICAgICAgICAgIC8qITwgMHgwMDAwMDAwMiAqLw0KI2RlZmluZSBSSV9JQ1JfSUMxT1NfMiAgICAgICAgICAgICAgICAgICgweDRVTCA8PCBSSV9JQ1JfSUMxT1NfUG9zKSAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDQgKi8NCiNkZWZpbmUgUklfSUNSX0lDMU9TXzMgICAgICAgICAgICAgICAgICAoMHg4VUwgPDwgUklfSUNSX0lDMU9TX1BvcykgICAgICAgICAgICAgLyohPCAweDAwMDAwMDA4ICovDQoNCiNkZWZpbmUgUklfSUNSX0lDMk9TX1BvcyAgICAgICAgICAgICAgICAoNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUklfSUNSX0lDMk9TX01zayAgICAgICAgICAgICAgICAoMHhGVUwgPDwgUklfSUNSX0lDMk9TX1BvcykgICAgICAgICAgICAgLyohPCAweDAwMDAwMEYwICovDQojZGVmaW5lIFJJX0lDUl9JQzJPUyAgICAgICAgICAgICAgICAgICAgUklfSUNSX0lDMk9TX01zayAgICAgICAgICAgICAgICAgICAgICAgLyohPCBJQzJPU1szOjBdIGJpdHMgKElucHV0IENhcHR1cmUgMiBzZWxlY3QgYml0cykgKi8NCiNkZWZpbmUgUklfSUNSX0lDMk9TXzAgICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgUklfSUNSX0lDMk9TX1BvcykgICAgICAgICAgICAgLyohPCAweDAwMDAwMDEwICovDQojZGVmaW5lIFJJX0lDUl9JQzJPU18xICAgICAgICAgICAgICAgICAgKDB4MlVMIDw8IFJJX0lDUl9JQzJPU19Qb3MpICAgICAgICAgICAgIC8qITwgMHgwMDAwMDAyMCAqLw0KI2RlZmluZSBSSV9JQ1JfSUMyT1NfMiAgICAgICAgICAgICAgICAgICgweDRVTCA8PCBSSV9JQ1JfSUMyT1NfUG9zKSAgICAgICAgICAgICAvKiE8IDB4MDAwMDAwNDAgKi8NCiNkZWZpbmUgUklfSUNSX0lDMk9TXzMgICAgICAgICAgICAgICAgICAoMHg4VUwgPDwgUklfSUNSX0lDMk9TX1BvcykgICAgICAgICAgICAgLyohPCAweDAwMDAwMDgwICovDQoNCiNkZWZpbmUgUklfSUNSX0lDM09TX1BvcyAgICAgICAgICAgICAgICAoOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUklfSUNSX0lDM09TX01zayAgICAgICAgICAgICAgICAoMHhGVUwgPDwgUklfSUNSX0lDM09TX1BvcykgICAgICAgICAgICAgLyohPCAweDAwMDAwRjAwICovDQojZGVmaW5lIFJJX0lDUl9JQzNPUyAgICAgICAgICAgICAgICAgICAgUklfSUNSX0lDM09TX01zayAgICAgICAgICAgICAgICAgICAgICAgLyohPCBJQzNPU1szOjBdIGJpdHMgKElucHV0IENhcHR1cmUgMyBzZWxlY3QgYml0cykgKi8NCiNkZWZpbmUgUklfSUNSX0lDM09TXzAgICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgUklfSUNSX0lDM09TX1BvcykgICAgICAgICAgICAgLyohPCAweDAwMDAwMTAwICovDQojZGVmaW5lIFJJX0lDUl9JQzNPU18xICAgICAgICAgICAgICAgICAgKDB4MlVMIDw8IFJJX0lDUl9JQzNPU19Qb3MpICAgICAgICAgICAgIC8qITwgMHgwMDAwMDIwMCAqLw0KI2RlZmluZSBSSV9JQ1JfSUMzT1NfMiAgICAgICAgICAgICAgICAgICgweDRVTCA8PCBSSV9JQ1JfSUMzT1NfUG9zKSAgICAgICAgICAgICAvKiE8IDB4MDAwMDA0MDAgKi8NCiNkZWZpbmUgUklfSUNSX0lDM09TXzMgICAgICAgICAgICAgICAgICAoMHg4VUwgPDwgUklfSUNSX0lDM09TX1BvcykgICAgICAgICAgICAgLyohPCAweDAwMDAwODAwICovDQoNCiNkZWZpbmUgUklfSUNSX0lDNE9TX1BvcyAgICAgICAgICAgICAgICAoMTJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUklfSUNSX0lDNE9TX01zayAgICAgICAgICAgICAgICAoMHhGVUwgPDwgUklfSUNSX0lDNE9TX1BvcykgICAgICAgICAgICAgLyohPCAweDAwMDBGMDAwICovDQojZGVmaW5lIFJJX0lDUl9JQzRPUyAgICAgICAgICAgICAgICAgICAgUklfSUNSX0lDNE9TX01zayAgICAgICAgICAgICAgICAgICAgICAgLyohPCBJQzRPU1szOjBdIGJpdHMgKElucHV0IENhcHR1cmUgNCBzZWxlY3QgYml0cykgKi8NCiNkZWZpbmUgUklfSUNSX0lDNE9TXzAgICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgUklfSUNSX0lDNE9TX1BvcykgICAgICAgICAgICAgLyohPCAweDAwMDAxMDAwICovDQojZGVmaW5lIFJJX0lDUl9JQzRPU18xICAgICAgICAgICAgICAgICAgKDB4MlVMIDw8IFJJX0lDUl9JQzRPU19Qb3MpICAgICAgICAgICAgIC8qITwgMHgwMDAwMjAwMCAqLw0KI2RlZmluZSBSSV9JQ1JfSUM0T1NfMiAgICAgICAgICAgICAgICAgICgweDRVTCA8PCBSSV9JQ1JfSUM0T1NfUG9zKSAgICAgICAgICAgICAvKiE8IDB4MDAwMDQwMDAgKi8NCiNkZWZpbmUgUklfSUNSX0lDNE9TXzMgICAgICAgICAgICAgICAgICAoMHg4VUwgPDwgUklfSUNSX0lDNE9TX1BvcykgICAgICAgICAgICAgLyohPCAweDAwMDA4MDAwICovDQoNCiNkZWZpbmUgUklfSUNSX1RJTV9Qb3MgICAgICAgICAgICAgICAgICAoMTZVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUklfSUNSX1RJTV9Nc2sgICAgICAgICAgICAgICAgICAoMHgzVUwgPDwgUklfSUNSX1RJTV9Qb3MpICAgICAgICAgICAgICAgLyohPCAweDAwMDMwMDAwICovDQojZGVmaW5lIFJJX0lDUl9USU0gICAgICAgICAgICAgICAgICAgICAgUklfSUNSX1RJTV9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBUSU1bMzowXSBiaXRzIChUaW1lcnMgc2VsZWN0IGJpdHMpICovDQojZGVmaW5lIFJJX0lDUl9USU1fMCAgICAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IFJJX0lDUl9USU1fUG9zKSAgICAgICAgICAgICAgIC8qITwgMHgwMDAxMDAwMCAqLw0KI2RlZmluZSBSSV9JQ1JfVElNXzEgICAgICAgICAgICAgICAgICAgICgweDJVTCA8PCBSSV9JQ1JfVElNX1BvcykgICAgICAgICAgICAgICAvKiE8IDB4MDAwMjAwMDAgKi8NCg0KI2RlZmluZSBSSV9JQ1JfSUMxX1BvcyAgICAgICAgICAgICAgICAgICgxOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSSV9JQ1JfSUMxX01zayAgICAgICAgICAgICAgICAgICgweDFVTCA8PCBSSV9JQ1JfSUMxX1BvcykgICAgICAgICAgICAgICAvKiE8IDB4MDAwNDAwMDAgKi8NCiNkZWZpbmUgUklfSUNSX0lDMSAgICAgICAgICAgICAgICAgICAgICBSSV9JQ1JfSUMxX01zayAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IElucHV0IGNhcHR1cmUgMSAqLw0KI2RlZmluZSBSSV9JQ1JfSUMyX1BvcyAgICAgICAgICAgICAgICAgICgxOVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSSV9JQ1JfSUMyX01zayAgICAgICAgICAgICAgICAgICgweDFVTCA8PCBSSV9JQ1JfSUMyX1BvcykgICAgICAgICAgICAgICAvKiE8IDB4MDAwODAwMDAgKi8NCiNkZWZpbmUgUklfSUNSX0lDMiAgICAgICAgICAgICAgICAgICAgICBSSV9JQ1JfSUMyX01zayAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IElucHV0IGNhcHR1cmUgMiAqLw0KI2RlZmluZSBSSV9JQ1JfSUMzX1BvcyAgICAgICAgICAgICAgICAgICgyMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSSV9JQ1JfSUMzX01zayAgICAgICAgICAgICAgICAgICgweDFVTCA8PCBSSV9JQ1JfSUMzX1BvcykgICAgICAgICAgICAgICAvKiE8IDB4MDAxMDAwMDAgKi8NCiNkZWZpbmUgUklfSUNSX0lDMyAgICAgICAgICAgICAgICAgICAgICBSSV9JQ1JfSUMzX01zayAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IElucHV0IGNhcHR1cmUgMyAqLw0KI2RlZmluZSBSSV9JQ1JfSUM0X1BvcyAgICAgICAgICAgICAgICAgICgyMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSSV9JQ1JfSUM0X01zayAgICAgICAgICAgICAgICAgICgweDFVTCA8PCBSSV9JQ1JfSUM0X1BvcykgICAgICAgICAgICAgICAvKiE8IDB4MDAyMDAwMDAgKi8NCiNkZWZpbmUgUklfSUNSX0lDNCAgICAgICAgICAgICAgICAgICAgICBSSV9JQ1JfSUM0X01zayAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IElucHV0IGNhcHR1cmUgNCAqLw0KDQovKioqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBSSV9BU0NSMSByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIFJJX0FTQ1IxX0NIX1BvcyAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJJX0FTQ1IxX0NIX01zayAgICAgICAgICAgICAgICAgKDB4N0JGREZGRkZVTCA8PCBSSV9BU0NSMV9DSF9Qb3MpICAgICAgIC8qITwgMHg3QkZERkZGRiAqLw0KI2RlZmluZSBSSV9BU0NSMV9DSCAgICAgICAgICAgICAgICAgICAgIFJJX0FTQ1IxX0NIX01zayAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgQVNfQ0hbMjU6MThdICYgQVNfQ0hbMTU6MF0gYml0cyAoIEFuYWxvZyBzd2l0Y2hlcyBzZWxlY3Rpb24gYml0cykgKi8NCiNkZWZpbmUgUklfQVNDUjFfQ0hfMCAgICAgICAgICAgICAgICAgICAoMHgwMDAwMDAwMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IEJpdCAwICovDQojZGVmaW5lIFJJX0FTQ1IxX0NIXzEgICAgICAgICAgICAgICAgICAgKDB4MDAwMDAwMDJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBCaXQgMSAqLw0KI2RlZmluZSBSSV9BU0NSMV9DSF8yICAgICAgICAgICAgICAgICAgICgweDAwMDAwMDA0VSkgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgQml0IDIgKi8NCiNkZWZpbmUgUklfQVNDUjFfQ0hfMyAgICAgICAgICAgICAgICAgICAoMHgwMDAwMDAwOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IEJpdCAzICovDQojZGVmaW5lIFJJX0FTQ1IxX0NIXzQgICAgICAgICAgICAgICAgICAgKDB4MDAwMDAwMTBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBCaXQgNCAqLw0KI2RlZmluZSBSSV9BU0NSMV9DSF81ICAgICAgICAgICAgICAgICAgICgweDAwMDAwMDIwVSkgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgQml0IDUgKi8NCiNkZWZpbmUgUklfQVNDUjFfQ0hfNiAgICAgICAgICAgICAgICAgICAoMHgwMDAwMDA0MFUpICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IEJpdCA2ICovDQojZGVmaW5lIFJJX0FTQ1IxX0NIXzcgICAgICAgICAgICAgICAgICAgKDB4MDAwMDAwODBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBCaXQgNyAqLw0KI2RlZmluZSBSSV9BU0NSMV9DSF84ICAgICAgICAgICAgICAgICAgICgweDAwMDAwMTAwVSkgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgQml0IDggKi8NCiNkZWZpbmUgUklfQVNDUjFfQ0hfOSAgICAgICAgICAgICAgICAgICAoMHgwMDAwMDIwMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IEJpdCA5ICovDQojZGVmaW5lIFJJX0FTQ1IxX0NIXzEwICAgICAgICAgICAgICAgICAgKDB4MDAwMDA0MDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBCaXQgMTAgKi8NCiNkZWZpbmUgUklfQVNDUjFfQ0hfMTEgICAgICAgICAgICAgICAgICAoMHgwMDAwMDgwMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IEJpdCAxMSAqLw0KI2RlZmluZSBSSV9BU0NSMV9DSF8xMiAgICAgICAgICAgICAgICAgICgweDAwMDAxMDAwVSkgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgQml0IDEyICovDQojZGVmaW5lIFJJX0FTQ1IxX0NIXzEzICAgICAgICAgICAgICAgICAgKDB4MDAwMDIwMDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBCaXQgMTMgKi8NCiNkZWZpbmUgUklfQVNDUjFfQ0hfMTQgICAgICAgICAgICAgICAgICAoMHgwMDAwNDAwMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IEJpdCAxNCAqLw0KI2RlZmluZSBSSV9BU0NSMV9DSF8xNSAgICAgICAgICAgICAgICAgICgweDAwMDA4MDAwVSkgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgQml0IDE1ICovDQojZGVmaW5lIFJJX0FTQ1IxX0NIXzMxICAgICAgICAgICAgICAgICAgKDB4MDAwMTAwMDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBCaXQgMTYgKi8NCiNkZWZpbmUgUklfQVNDUjFfQ0hfMTggICAgICAgICAgICAgICAgICAoMHgwMDA0MDAwMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IEJpdCAxOCAqLw0KI2RlZmluZSBSSV9BU0NSMV9DSF8xOSAgICAgICAgICAgICAgICAgICgweDAwMDgwMDAwVSkgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgQml0IDE5ICovDQojZGVmaW5lIFJJX0FTQ1IxX0NIXzIwICAgICAgICAgICAgICAgICAgKDB4MDAxMDAwMDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBCaXQgMjAgKi8NCiNkZWZpbmUgUklfQVNDUjFfQ0hfMjEgICAgICAgICAgICAgICAgICAoMHgwMDIwMDAwMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IEJpdCAyMSAqLw0KI2RlZmluZSBSSV9BU0NSMV9DSF8yMiAgICAgICAgICAgICAgICAgICgweDAwNDAwMDAwVSkgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgQml0IDIyICovDQojZGVmaW5lIFJJX0FTQ1IxX0NIXzIzICAgICAgICAgICAgICAgICAgKDB4MDA4MDAwMDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBCaXQgMjMgKi8NCiNkZWZpbmUgUklfQVNDUjFfQ0hfMjQgICAgICAgICAgICAgICAgICAoMHgwMTAwMDAwMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IEJpdCAyNCAqLw0KI2RlZmluZSBSSV9BU0NSMV9DSF8yNSAgICAgICAgICAgICAgICAgICgweDAyMDAwMDAwVSkgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgQml0IDI1ICovDQojZGVmaW5lIFJJX0FTQ1IxX1ZDT01QX1BvcyAgICAgICAgICAgICAgKDI2VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJJX0FTQ1IxX1ZDT01QX01zayAgICAgICAgICAgICAgKDB4MVVMIDw8IFJJX0FTQ1IxX1ZDT01QX1BvcykgICAgICAgICAgIC8qITwgMHgwNDAwMDAwMCAqLw0KI2RlZmluZSBSSV9BU0NSMV9WQ09NUCAgICAgICAgICAgICAgICAgIFJJX0FTQ1IxX1ZDT01QX01zayAgICAgICAgICAgICAgICAgICAgIC8qITwgQURDIGFuYWxvZyBzd2l0Y2ggc2VsZWN0aW9uIGZvciBpbnRlcm5hbCBub2RlIHRvIENPTVAxICovDQojZGVmaW5lIFJJX0FTQ1IxX0NIXzI3ICAgICAgICAgICAgICAgICAgKDB4MDgwMDAwMDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBCaXQgMjcgKi8NCiNkZWZpbmUgUklfQVNDUjFfQ0hfMjggICAgICAgICAgICAgICAgICAoMHgxMDAwMDAwMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IEJpdCAyOCAqLw0KI2RlZmluZSBSSV9BU0NSMV9DSF8yOSAgICAgICAgICAgICAgICAgICgweDIwMDAwMDAwVSkgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgQml0IDI5ICovDQojZGVmaW5lIFJJX0FTQ1IxX0NIXzMwICAgICAgICAgICAgICAgICAgKDB4NDAwMDAwMDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBCaXQgMzAgKi8NCiNkZWZpbmUgUklfQVNDUjFfU0NNX1BvcyAgICAgICAgICAgICAgICAoMzFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUklfQVNDUjFfU0NNX01zayAgICAgICAgICAgICAgICAoMHgxVUwgPDwgUklfQVNDUjFfU0NNX1BvcykgICAgICAgICAgICAgLyohPCAweDgwMDAwMDAwICovDQojZGVmaW5lIFJJX0FTQ1IxX1NDTSAgICAgICAgICAgICAgICAgICAgUklfQVNDUjFfU0NNX01zayAgICAgICAgICAgICAgICAgICAgICAgLyohPCBJL08gU3dpdGNoIGNvbnRyb2wgbW9kZSAqLw0KDQovKioqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBSSV9BU0NSMiByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIFJJX0FTQ1IyX0dSMTBfMSAgICAgICAgICAgICAgICAgKDB4MDAwMDAwMDFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBHUjEwLTEgc2VsZWN0aW9uIGJpdCAqLw0KI2RlZmluZSBSSV9BU0NSMl9HUjEwXzIgICAgICAgICAgICAgICAgICgweDAwMDAwMDAyVSkgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgR1IxMC0yIHNlbGVjdGlvbiBiaXQgKi8NCiNkZWZpbmUgUklfQVNDUjJfR1IxMF8zICAgICAgICAgICAgICAgICAoMHgwMDAwMDAwNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IEdSMTAtMyBzZWxlY3Rpb24gYml0ICovDQojZGVmaW5lIFJJX0FTQ1IyX0dSMTBfNCAgICAgICAgICAgICAgICAgKDB4MDAwMDAwMDhVKSAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBHUjEwLTQgc2VsZWN0aW9uIGJpdCAqLw0KI2RlZmluZSBSSV9BU0NSMl9HUjZfUG9zICAgICAgICAgICAgICAgICg0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSSV9BU0NSMl9HUjZfTXNrICAgICAgICAgICAgICAgICgweDE4MDAwMDNVTCA8PCBSSV9BU0NSMl9HUjZfUG9zKSAgICAgICAvKiE8IDB4MTgwMDAwMzAgKi8NCiNkZWZpbmUgUklfQVNDUjJfR1I2ICAgICAgICAgICAgICAgICAgICBSSV9BU0NSMl9HUjZfTXNrICAgICAgICAgICAgICAgICAgICAgICAvKiE8IEdSNiBzZWxlY3Rpb24gYml0cyAqLw0KI2RlZmluZSBSSV9BU0NSMl9HUjZfMSAgICAgICAgICAgICAgICAgICgweDAwMDAwMDFVTCA8PCBSSV9BU0NSMl9HUjZfUG9zKSAgICAgICAvKiE8IDB4MDAwMDAwMTAgKi8NCiNkZWZpbmUgUklfQVNDUjJfR1I2XzIgICAgICAgICAgICAgICAgICAoMHgwMDAwMDAyVUwgPDwgUklfQVNDUjJfR1I2X1BvcykgICAgICAgLyohPCAweDAwMDAwMDIwICovDQojZGVmaW5lIFJJX0FTQ1IyX0dSNl8zICAgICAgICAgICAgICAgICAgKDB4MDgwMDAwMFVMIDw8IFJJX0FTQ1IyX0dSNl9Qb3MpICAgICAgIC8qITwgMHgwODAwMDAwMCAqLw0KI2RlZmluZSBSSV9BU0NSMl9HUjZfNCAgICAgICAgICAgICAgICAgICgweDEwMDAwMDBVTCA8PCBSSV9BU0NSMl9HUjZfUG9zKSAgICAgICAvKiE8IDB4MTAwMDAwMDAgKi8NCiNkZWZpbmUgUklfQVNDUjJfR1I1XzEgICAgICAgICAgICAgICAgICAoMHgwMDAwMDA0MFUpICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IEdSNS0xIHNlbGVjdGlvbiBiaXQgKi8NCiNkZWZpbmUgUklfQVNDUjJfR1I1XzIgICAgICAgICAgICAgICAgICAoMHgwMDAwMDA4MFUpICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IEdSNS0yIHNlbGVjdGlvbiBiaXQgKi8NCiNkZWZpbmUgUklfQVNDUjJfR1I1XzMgICAgICAgICAgICAgICAgICAoMHgwMDAwMDEwMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IEdSNS0zIHNlbGVjdGlvbiBiaXQgKi8NCiNkZWZpbmUgUklfQVNDUjJfR1I0XzEgICAgICAgICAgICAgICAgICAoMHgwMDAwMDIwMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IEdSNC0xIHNlbGVjdGlvbiBiaXQgKi8NCiNkZWZpbmUgUklfQVNDUjJfR1I0XzIgICAgICAgICAgICAgICAgICAoMHgwMDAwMDQwMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IEdSNC0yIHNlbGVjdGlvbiBiaXQgKi8NCiNkZWZpbmUgUklfQVNDUjJfR1I0XzMgICAgICAgICAgICAgICAgICAoMHgwMDAwMDgwMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IEdSNC0zIHNlbGVjdGlvbiBiaXQgKi8NCiNkZWZpbmUgUklfQVNDUjJfR1I0XzQgICAgICAgICAgICAgICAgICAoMHgwMDAwODAwMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IEdSNC00IHNlbGVjdGlvbiBiaXQgKi8NCiNkZWZpbmUgUklfQVNDUjJfQ0gwYl9Qb3MgICAgICAgICAgICAgICAoMTZVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUklfQVNDUjJfQ0gwYl9Nc2sgICAgICAgICAgICAgICAoMHgxVUwgPDwgUklfQVNDUjJfQ0gwYl9Qb3MpICAgICAgICAgICAgLyohPCAweDAwMDEwMDAwICovDQojZGVmaW5lIFJJX0FTQ1IyX0NIMGIgICAgICAgICAgICAgICAgICAgUklfQVNDUjJfQ0gwYl9Nc2sgICAgICAgICAgICAgICAgICAgICAgLyohPCBDSDBiIHNlbGVjdGlvbiBiaXQgKi8NCiNkZWZpbmUgUklfQVNDUjJfQ0gxYl9Qb3MgICAgICAgICAgICAgICAoMTdVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUklfQVNDUjJfQ0gxYl9Nc2sgICAgICAgICAgICAgICAoMHgxVUwgPDwgUklfQVNDUjJfQ0gxYl9Qb3MpICAgICAgICAgICAgLyohPCAweDAwMDIwMDAwICovDQojZGVmaW5lIFJJX0FTQ1IyX0NIMWIgICAgICAgICAgICAgICAgICAgUklfQVNDUjJfQ0gxYl9Nc2sgICAgICAgICAgICAgICAgICAgICAgLyohPCBDSDFiIHNlbGVjdGlvbiBiaXQgKi8NCiNkZWZpbmUgUklfQVNDUjJfQ0gyYl9Qb3MgICAgICAgICAgICAgICAoMThVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUklfQVNDUjJfQ0gyYl9Nc2sgICAgICAgICAgICAgICAoMHgxVUwgPDwgUklfQVNDUjJfQ0gyYl9Qb3MpICAgICAgICAgICAgLyohPCAweDAwMDQwMDAwICovDQojZGVmaW5lIFJJX0FTQ1IyX0NIMmIgICAgICAgICAgICAgICAgICAgUklfQVNDUjJfQ0gyYl9Nc2sgICAgICAgICAgICAgICAgICAgICAgLyohPCBDSDJiIHNlbGVjdGlvbiBiaXQgKi8NCiNkZWZpbmUgUklfQVNDUjJfQ0gzYl9Qb3MgICAgICAgICAgICAgICAoMTlVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUklfQVNDUjJfQ0gzYl9Nc2sgICAgICAgICAgICAgICAoMHgxVUwgPDwgUklfQVNDUjJfQ0gzYl9Qb3MpICAgICAgICAgICAgLyohPCAweDAwMDgwMDAwICovDQojZGVmaW5lIFJJX0FTQ1IyX0NIM2IgICAgICAgICAgICAgICAgICAgUklfQVNDUjJfQ0gzYl9Nc2sgICAgICAgICAgICAgICAgICAgICAgLyohPCBDSDNiIHNlbGVjdGlvbiBiaXQgKi8NCiNkZWZpbmUgUklfQVNDUjJfQ0g2Yl9Qb3MgICAgICAgICAgICAgICAoMjBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUklfQVNDUjJfQ0g2Yl9Nc2sgICAgICAgICAgICAgICAoMHgxVUwgPDwgUklfQVNDUjJfQ0g2Yl9Qb3MpICAgICAgICAgICAgLyohPCAweDAwMTAwMDAwICovDQojZGVmaW5lIFJJX0FTQ1IyX0NINmIgICAgICAgICAgICAgICAgICAgUklfQVNDUjJfQ0g2Yl9Nc2sgICAgICAgICAgICAgICAgICAgICAgLyohPCBDSDZiIHNlbGVjdGlvbiBiaXQgKi8NCiNkZWZpbmUgUklfQVNDUjJfQ0g3Yl9Qb3MgICAgICAgICAgICAgICAoMjFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUklfQVNDUjJfQ0g3Yl9Nc2sgICAgICAgICAgICAgICAoMHgxVUwgPDwgUklfQVNDUjJfQ0g3Yl9Qb3MpICAgICAgICAgICAgLyohPCAweDAwMjAwMDAwICovDQojZGVmaW5lIFJJX0FTQ1IyX0NIN2IgICAgICAgICAgICAgICAgICAgUklfQVNDUjJfQ0g3Yl9Nc2sgICAgICAgICAgICAgICAgICAgICAgLyohPCBDSDdiIHNlbGVjdGlvbiBiaXQgKi8NCiNkZWZpbmUgUklfQVNDUjJfQ0g4Yl9Qb3MgICAgICAgICAgICAgICAoMjJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUklfQVNDUjJfQ0g4Yl9Nc2sgICAgICAgICAgICAgICAoMHgxVUwgPDwgUklfQVNDUjJfQ0g4Yl9Qb3MpICAgICAgICAgICAgLyohPCAweDAwNDAwMDAwICovDQojZGVmaW5lIFJJX0FTQ1IyX0NIOGIgICAgICAgICAgICAgICAgICAgUklfQVNDUjJfQ0g4Yl9Nc2sgICAgICAgICAgICAgICAgICAgICAgLyohPCBDSDhiIHNlbGVjdGlvbiBiaXQgKi8NCiNkZWZpbmUgUklfQVNDUjJfQ0g5Yl9Qb3MgICAgICAgICAgICAgICAoMjNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUklfQVNDUjJfQ0g5Yl9Nc2sgICAgICAgICAgICAgICAoMHgxVUwgPDwgUklfQVNDUjJfQ0g5Yl9Qb3MpICAgICAgICAgICAgLyohPCAweDAwODAwMDAwICovDQojZGVmaW5lIFJJX0FTQ1IyX0NIOWIgICAgICAgICAgICAgICAgICAgUklfQVNDUjJfQ0g5Yl9Nc2sgICAgICAgICAgICAgICAgICAgICAgLyohPCBDSDliIHNlbGVjdGlvbiBiaXQgKi8NCiNkZWZpbmUgUklfQVNDUjJfQ0gxMGJfUG9zICAgICAgICAgICAgICAoMjRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUklfQVNDUjJfQ0gxMGJfTXNrICAgICAgICAgICAgICAoMHgxVUwgPDwgUklfQVNDUjJfQ0gxMGJfUG9zKSAgICAgICAgICAgLyohPCAweDAxMDAwMDAwICovDQojZGVmaW5lIFJJX0FTQ1IyX0NIMTBiICAgICAgICAgICAgICAgICAgUklfQVNDUjJfQ0gxMGJfTXNrICAgICAgICAgICAgICAgICAgICAgLyohPCBDSDEwYiBzZWxlY3Rpb24gYml0ICovDQojZGVmaW5lIFJJX0FTQ1IyX0NIMTFiX1BvcyAgICAgICAgICAgICAgKDI1VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJJX0FTQ1IyX0NIMTFiX01zayAgICAgICAgICAgICAgKDB4MVVMIDw8IFJJX0FTQ1IyX0NIMTFiX1BvcykgICAgICAgICAgIC8qITwgMHgwMjAwMDAwMCAqLw0KI2RlZmluZSBSSV9BU0NSMl9DSDExYiAgICAgICAgICAgICAgICAgIFJJX0FTQ1IyX0NIMTFiX01zayAgICAgICAgICAgICAgICAgICAgIC8qITwgQ0gxMWIgc2VsZWN0aW9uIGJpdCAqLw0KI2RlZmluZSBSSV9BU0NSMl9DSDEyYl9Qb3MgICAgICAgICAgICAgICgyNlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSSV9BU0NSMl9DSDEyYl9Nc2sgICAgICAgICAgICAgICgweDFVTCA8PCBSSV9BU0NSMl9DSDEyYl9Qb3MpICAgICAgICAgICAvKiE8IDB4MDQwMDAwMDAgKi8NCiNkZWZpbmUgUklfQVNDUjJfQ0gxMmIgICAgICAgICAgICAgICAgICBSSV9BU0NSMl9DSDEyYl9Nc2sgICAgICAgICAgICAgICAgICAgICAvKiE8IENIMTJiIHNlbGVjdGlvbiBiaXQgKi8NCg0KLyoqKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgUklfSFlTQ1IxIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgUklfSFlTQ1IxX1BBX1BvcyAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUklfSFlTQ1IxX1BBX01zayAgICAgICAgICAgICAgICAoMHhGRkZGVUwgPDwgUklfSFlTQ1IxX1BBX1BvcykgICAgICAgICAgLyohPCAweDAwMDBGRkZGICovDQojZGVmaW5lIFJJX0hZU0NSMV9QQSAgICAgICAgICAgICAgICAgICAgUklfSFlTQ1IxX1BBX01zayAgICAgICAgICAgICAgICAgICAgICAgLyohPCBQQVsxNTowXSBQb3J0IEEgSHlzdGVyZXNpcyBzZWxlY3Rpb24gKi8NCiNkZWZpbmUgUklfSFlTQ1IxX1BBXzAgICAgICAgICAgICAgICAgICAoMHgwMDAxVUwgPDwgUklfSFlTQ1IxX1BBX1BvcykgICAgICAgICAgLyohPCAweDAwMDAwMDAxICovDQojZGVmaW5lIFJJX0hZU0NSMV9QQV8xICAgICAgICAgICAgICAgICAgKDB4MDAwMlVMIDw8IFJJX0hZU0NSMV9QQV9Qb3MpICAgICAgICAgIC8qITwgMHgwMDAwMDAwMiAqLw0KI2RlZmluZSBSSV9IWVNDUjFfUEFfMiAgICAgICAgICAgICAgICAgICgweDAwMDRVTCA8PCBSSV9IWVNDUjFfUEFfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDAwMDQgKi8NCiNkZWZpbmUgUklfSFlTQ1IxX1BBXzMgICAgICAgICAgICAgICAgICAoMHgwMDA4VUwgPDwgUklfSFlTQ1IxX1BBX1BvcykgICAgICAgICAgLyohPCAweDAwMDAwMDA4ICovDQojZGVmaW5lIFJJX0hZU0NSMV9QQV80ICAgICAgICAgICAgICAgICAgKDB4MDAxMFVMIDw8IFJJX0hZU0NSMV9QQV9Qb3MpICAgICAgICAgIC8qITwgMHgwMDAwMDAxMCAqLw0KI2RlZmluZSBSSV9IWVNDUjFfUEFfNSAgICAgICAgICAgICAgICAgICgweDAwMjBVTCA8PCBSSV9IWVNDUjFfUEFfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDAwMjAgKi8NCiNkZWZpbmUgUklfSFlTQ1IxX1BBXzYgICAgICAgICAgICAgICAgICAoMHgwMDQwVUwgPDwgUklfSFlTQ1IxX1BBX1BvcykgICAgICAgICAgLyohPCAweDAwMDAwMDQwICovDQojZGVmaW5lIFJJX0hZU0NSMV9QQV83ICAgICAgICAgICAgICAgICAgKDB4MDA4MFVMIDw8IFJJX0hZU0NSMV9QQV9Qb3MpICAgICAgICAgIC8qITwgMHgwMDAwMDA4MCAqLw0KI2RlZmluZSBSSV9IWVNDUjFfUEFfOCAgICAgICAgICAgICAgICAgICgweDAxMDBVTCA8PCBSSV9IWVNDUjFfUEFfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDAxMDAgKi8NCiNkZWZpbmUgUklfSFlTQ1IxX1BBXzkgICAgICAgICAgICAgICAgICAoMHgwMjAwVUwgPDwgUklfSFlTQ1IxX1BBX1BvcykgICAgICAgICAgLyohPCAweDAwMDAwMjAwICovDQojZGVmaW5lIFJJX0hZU0NSMV9QQV8xMCAgICAgICAgICAgICAgICAgKDB4MDQwMFVMIDw8IFJJX0hZU0NSMV9QQV9Qb3MpICAgICAgICAgIC8qITwgMHgwMDAwMDQwMCAqLw0KI2RlZmluZSBSSV9IWVNDUjFfUEFfMTEgICAgICAgICAgICAgICAgICgweDA4MDBVTCA8PCBSSV9IWVNDUjFfUEFfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDA4MDAgKi8NCiNkZWZpbmUgUklfSFlTQ1IxX1BBXzEyICAgICAgICAgICAgICAgICAoMHgxMDAwVUwgPDwgUklfSFlTQ1IxX1BBX1BvcykgICAgICAgICAgLyohPCAweDAwMDAxMDAwICovDQojZGVmaW5lIFJJX0hZU0NSMV9QQV8xMyAgICAgICAgICAgICAgICAgKDB4MjAwMFVMIDw8IFJJX0hZU0NSMV9QQV9Qb3MpICAgICAgICAgIC8qITwgMHgwMDAwMjAwMCAqLw0KI2RlZmluZSBSSV9IWVNDUjFfUEFfMTQgICAgICAgICAgICAgICAgICgweDQwMDBVTCA8PCBSSV9IWVNDUjFfUEFfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDQwMDAgKi8NCiNkZWZpbmUgUklfSFlTQ1IxX1BBXzE1ICAgICAgICAgICAgICAgICAoMHg4MDAwVUwgPDwgUklfSFlTQ1IxX1BBX1BvcykgICAgICAgICAgLyohPCAweDAwMDA4MDAwICovDQoNCiNkZWZpbmUgUklfSFlTQ1IxX1BCX1BvcyAgICAgICAgICAgICAgICAoMTZVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUklfSFlTQ1IxX1BCX01zayAgICAgICAgICAgICAgICAoMHhGRkZGVUwgPDwgUklfSFlTQ1IxX1BCX1BvcykgICAgICAgICAgLyohPCAweEZGRkYwMDAwICovDQojZGVmaW5lIFJJX0hZU0NSMV9QQiAgICAgICAgICAgICAgICAgICAgUklfSFlTQ1IxX1BCX01zayAgICAgICAgICAgICAgICAgICAgICAgLyohPCBQQlsxNTowXSBQb3J0IEIgSHlzdGVyZXNpcyBzZWxlY3Rpb24gKi8NCiNkZWZpbmUgUklfSFlTQ1IxX1BCXzAgICAgICAgICAgICAgICAgICAoMHgwMDAxVUwgPDwgUklfSFlTQ1IxX1BCX1BvcykgICAgICAgICAgLyohPCAweDAwMDEwMDAwICovDQojZGVmaW5lIFJJX0hZU0NSMV9QQl8xICAgICAgICAgICAgICAgICAgKDB4MDAwMlVMIDw8IFJJX0hZU0NSMV9QQl9Qb3MpICAgICAgICAgIC8qITwgMHgwMDAyMDAwMCAqLw0KI2RlZmluZSBSSV9IWVNDUjFfUEJfMiAgICAgICAgICAgICAgICAgICgweDAwMDRVTCA8PCBSSV9IWVNDUjFfUEJfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwNDAwMDAgKi8NCiNkZWZpbmUgUklfSFlTQ1IxX1BCXzMgICAgICAgICAgICAgICAgICAoMHgwMDA4VUwgPDwgUklfSFlTQ1IxX1BCX1BvcykgICAgICAgICAgLyohPCAweDAwMDgwMDAwICovDQojZGVmaW5lIFJJX0hZU0NSMV9QQl80ICAgICAgICAgICAgICAgICAgKDB4MDAxMFVMIDw8IFJJX0hZU0NSMV9QQl9Qb3MpICAgICAgICAgIC8qITwgMHgwMDEwMDAwMCAqLw0KI2RlZmluZSBSSV9IWVNDUjFfUEJfNSAgICAgICAgICAgICAgICAgICgweDAwMjBVTCA8PCBSSV9IWVNDUjFfUEJfUG9zKSAgICAgICAgICAvKiE8IDB4MDAyMDAwMDAgKi8NCiNkZWZpbmUgUklfSFlTQ1IxX1BCXzYgICAgICAgICAgICAgICAgICAoMHgwMDQwVUwgPDwgUklfSFlTQ1IxX1BCX1BvcykgICAgICAgICAgLyohPCAweDAwNDAwMDAwICovDQojZGVmaW5lIFJJX0hZU0NSMV9QQl83ICAgICAgICAgICAgICAgICAgKDB4MDA4MFVMIDw8IFJJX0hZU0NSMV9QQl9Qb3MpICAgICAgICAgIC8qITwgMHgwMDgwMDAwMCAqLw0KI2RlZmluZSBSSV9IWVNDUjFfUEJfOCAgICAgICAgICAgICAgICAgICgweDAxMDBVTCA8PCBSSV9IWVNDUjFfUEJfUG9zKSAgICAgICAgICAvKiE8IDB4MDEwMDAwMDAgKi8NCiNkZWZpbmUgUklfSFlTQ1IxX1BCXzkgICAgICAgICAgICAgICAgICAoMHgwMjAwVUwgPDwgUklfSFlTQ1IxX1BCX1BvcykgICAgICAgICAgLyohPCAweDAyMDAwMDAwICovDQojZGVmaW5lIFJJX0hZU0NSMV9QQl8xMCAgICAgICAgICAgICAgICAgKDB4MDQwMFVMIDw8IFJJX0hZU0NSMV9QQl9Qb3MpICAgICAgICAgIC8qITwgMHgwNDAwMDAwMCAqLw0KI2RlZmluZSBSSV9IWVNDUjFfUEJfMTEgICAgICAgICAgICAgICAgICgweDA4MDBVTCA8PCBSSV9IWVNDUjFfUEJfUG9zKSAgICAgICAgICAvKiE8IDB4MDgwMDAwMDAgKi8NCiNkZWZpbmUgUklfSFlTQ1IxX1BCXzEyICAgICAgICAgICAgICAgICAoMHgxMDAwVUwgPDwgUklfSFlTQ1IxX1BCX1BvcykgICAgICAgICAgLyohPCAweDEwMDAwMDAwICovDQojZGVmaW5lIFJJX0hZU0NSMV9QQl8xMyAgICAgICAgICAgICAgICAgKDB4MjAwMFVMIDw8IFJJX0hZU0NSMV9QQl9Qb3MpICAgICAgICAgIC8qITwgMHgyMDAwMDAwMCAqLw0KI2RlZmluZSBSSV9IWVNDUjFfUEJfMTQgICAgICAgICAgICAgICAgICgweDQwMDBVTCA8PCBSSV9IWVNDUjFfUEJfUG9zKSAgICAgICAgICAvKiE8IDB4NDAwMDAwMDAgKi8NCiNkZWZpbmUgUklfSFlTQ1IxX1BCXzE1ICAgICAgICAgICAgICAgICAoMHg4MDAwVUwgPDwgUklfSFlTQ1IxX1BCX1BvcykgICAgICAgICAgLyohPCAweDgwMDAwMDAwICovDQoNCi8qKioqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFJJX0hZU0NSMiByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIFJJX0hZU0NSMl9QQ19Qb3MgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJJX0hZU0NSMl9QQ19Nc2sgICAgICAgICAgICAgICAgKDB4RkZGRlVMIDw8IFJJX0hZU0NSMl9QQ19Qb3MpICAgICAgICAgIC8qITwgMHgwMDAwRkZGRiAqLw0KI2RlZmluZSBSSV9IWVNDUjJfUEMgICAgICAgICAgICAgICAgICAgIFJJX0hZU0NSMl9QQ19Nc2sgICAgICAgICAgICAgICAgICAgICAgIC8qITwgUENbMTU6MF0gUG9ydCBDIEh5c3RlcmVzaXMgc2VsZWN0aW9uICovDQojZGVmaW5lIFJJX0hZU0NSMl9QQ18wICAgICAgICAgICAgICAgICAgKDB4MDAwMVVMIDw8IFJJX0hZU0NSMl9QQ19Qb3MpICAgICAgICAgIC8qITwgMHgwMDAwMDAwMSAqLw0KI2RlZmluZSBSSV9IWVNDUjJfUENfMSAgICAgICAgICAgICAgICAgICgweDAwMDJVTCA8PCBSSV9IWVNDUjJfUENfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDAwMDIgKi8NCiNkZWZpbmUgUklfSFlTQ1IyX1BDXzIgICAgICAgICAgICAgICAgICAoMHgwMDA0VUwgPDwgUklfSFlTQ1IyX1BDX1BvcykgICAgICAgICAgLyohPCAweDAwMDAwMDA0ICovDQojZGVmaW5lIFJJX0hZU0NSMl9QQ18zICAgICAgICAgICAgICAgICAgKDB4MDAwOFVMIDw8IFJJX0hZU0NSMl9QQ19Qb3MpICAgICAgICAgIC8qITwgMHgwMDAwMDAwOCAqLw0KI2RlZmluZSBSSV9IWVNDUjJfUENfNCAgICAgICAgICAgICAgICAgICgweDAwMTBVTCA8PCBSSV9IWVNDUjJfUENfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDAwMTAgKi8NCiNkZWZpbmUgUklfSFlTQ1IyX1BDXzUgICAgICAgICAgICAgICAgICAoMHgwMDIwVUwgPDwgUklfSFlTQ1IyX1BDX1BvcykgICAgICAgICAgLyohPCAweDAwMDAwMDIwICovDQojZGVmaW5lIFJJX0hZU0NSMl9QQ182ICAgICAgICAgICAgICAgICAgKDB4MDA0MFVMIDw8IFJJX0hZU0NSMl9QQ19Qb3MpICAgICAgICAgIC8qITwgMHgwMDAwMDA0MCAqLw0KI2RlZmluZSBSSV9IWVNDUjJfUENfNyAgICAgICAgICAgICAgICAgICgweDAwODBVTCA8PCBSSV9IWVNDUjJfUENfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDAwODAgKi8NCiNkZWZpbmUgUklfSFlTQ1IyX1BDXzggICAgICAgICAgICAgICAgICAoMHgwMTAwVUwgPDwgUklfSFlTQ1IyX1BDX1BvcykgICAgICAgICAgLyohPCAweDAwMDAwMTAwICovDQojZGVmaW5lIFJJX0hZU0NSMl9QQ185ICAgICAgICAgICAgICAgICAgKDB4MDIwMFVMIDw8IFJJX0hZU0NSMl9QQ19Qb3MpICAgICAgICAgIC8qITwgMHgwMDAwMDIwMCAqLw0KI2RlZmluZSBSSV9IWVNDUjJfUENfMTAgICAgICAgICAgICAgICAgICgweDA0MDBVTCA8PCBSSV9IWVNDUjJfUENfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDA0MDAgKi8NCiNkZWZpbmUgUklfSFlTQ1IyX1BDXzExICAgICAgICAgICAgICAgICAoMHgwODAwVUwgPDwgUklfSFlTQ1IyX1BDX1BvcykgICAgICAgICAgLyohPCAweDAwMDAwODAwICovDQojZGVmaW5lIFJJX0hZU0NSMl9QQ18xMiAgICAgICAgICAgICAgICAgKDB4MTAwMFVMIDw8IFJJX0hZU0NSMl9QQ19Qb3MpICAgICAgICAgIC8qITwgMHgwMDAwMTAwMCAqLw0KI2RlZmluZSBSSV9IWVNDUjJfUENfMTMgICAgICAgICAgICAgICAgICgweDIwMDBVTCA8PCBSSV9IWVNDUjJfUENfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDIwMDAgKi8NCiNkZWZpbmUgUklfSFlTQ1IyX1BDXzE0ICAgICAgICAgICAgICAgICAoMHg0MDAwVUwgPDwgUklfSFlTQ1IyX1BDX1BvcykgICAgICAgICAgLyohPCAweDAwMDA0MDAwICovDQojZGVmaW5lIFJJX0hZU0NSMl9QQ18xNSAgICAgICAgICAgICAgICAgKDB4ODAwMFVMIDw8IFJJX0hZU0NSMl9QQ19Qb3MpICAgICAgICAgIC8qITwgMHgwMDAwODAwMCAqLw0KDQojZGVmaW5lIFJJX0hZU0NSMl9QRF9Qb3MgICAgICAgICAgICAgICAgKDE2VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJJX0hZU0NSMl9QRF9Nc2sgICAgICAgICAgICAgICAgKDB4RkZGRlVMIDw8IFJJX0hZU0NSMl9QRF9Qb3MpICAgICAgICAgIC8qITwgMHhGRkZGMDAwMCAqLw0KI2RlZmluZSBSSV9IWVNDUjJfUEQgICAgICAgICAgICAgICAgICAgIFJJX0hZU0NSMl9QRF9Nc2sgICAgICAgICAgICAgICAgICAgICAgIC8qITwgUERbMTU6MF0gUG9ydCBEIEh5c3RlcmVzaXMgc2VsZWN0aW9uICovDQojZGVmaW5lIFJJX0hZU0NSMl9QRF8wICAgICAgICAgICAgICAgICAgKDB4MDAwMVVMIDw8IFJJX0hZU0NSMl9QRF9Qb3MpICAgICAgICAgIC8qITwgMHgwMDAxMDAwMCAqLw0KI2RlZmluZSBSSV9IWVNDUjJfUERfMSAgICAgICAgICAgICAgICAgICgweDAwMDJVTCA8PCBSSV9IWVNDUjJfUERfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMjAwMDAgKi8NCiNkZWZpbmUgUklfSFlTQ1IyX1BEXzIgICAgICAgICAgICAgICAgICAoMHgwMDA0VUwgPDwgUklfSFlTQ1IyX1BEX1BvcykgICAgICAgICAgLyohPCAweDAwMDQwMDAwICovDQojZGVmaW5lIFJJX0hZU0NSMl9QRF8zICAgICAgICAgICAgICAgICAgKDB4MDAwOFVMIDw8IFJJX0hZU0NSMl9QRF9Qb3MpICAgICAgICAgIC8qITwgMHgwMDA4MDAwMCAqLw0KI2RlZmluZSBSSV9IWVNDUjJfUERfNCAgICAgICAgICAgICAgICAgICgweDAwMTBVTCA8PCBSSV9IWVNDUjJfUERfUG9zKSAgICAgICAgICAvKiE8IDB4MDAxMDAwMDAgKi8NCiNkZWZpbmUgUklfSFlTQ1IyX1BEXzUgICAgICAgICAgICAgICAgICAoMHgwMDIwVUwgPDwgUklfSFlTQ1IyX1BEX1BvcykgICAgICAgICAgLyohPCAweDAwMjAwMDAwICovDQojZGVmaW5lIFJJX0hZU0NSMl9QRF82ICAgICAgICAgICAgICAgICAgKDB4MDA0MFVMIDw8IFJJX0hZU0NSMl9QRF9Qb3MpICAgICAgICAgIC8qITwgMHgwMDQwMDAwMCAqLw0KI2RlZmluZSBSSV9IWVNDUjJfUERfNyAgICAgICAgICAgICAgICAgICgweDAwODBVTCA8PCBSSV9IWVNDUjJfUERfUG9zKSAgICAgICAgICAvKiE8IDB4MDA4MDAwMDAgKi8NCiNkZWZpbmUgUklfSFlTQ1IyX1BEXzggICAgICAgICAgICAgICAgICAoMHgwMTAwVUwgPDwgUklfSFlTQ1IyX1BEX1BvcykgICAgICAgICAgLyohPCAweDAxMDAwMDAwICovDQojZGVmaW5lIFJJX0hZU0NSMl9QRF85ICAgICAgICAgICAgICAgICAgKDB4MDIwMFVMIDw8IFJJX0hZU0NSMl9QRF9Qb3MpICAgICAgICAgIC8qITwgMHgwMjAwMDAwMCAqLw0KI2RlZmluZSBSSV9IWVNDUjJfUERfMTAgICAgICAgICAgICAgICAgICgweDA0MDBVTCA8PCBSSV9IWVNDUjJfUERfUG9zKSAgICAgICAgICAvKiE8IDB4MDQwMDAwMDAgKi8NCiNkZWZpbmUgUklfSFlTQ1IyX1BEXzExICAgICAgICAgICAgICAgICAoMHgwODAwVUwgPDwgUklfSFlTQ1IyX1BEX1BvcykgICAgICAgICAgLyohPCAweDA4MDAwMDAwICovDQojZGVmaW5lIFJJX0hZU0NSMl9QRF8xMiAgICAgICAgICAgICAgICAgKDB4MTAwMFVMIDw8IFJJX0hZU0NSMl9QRF9Qb3MpICAgICAgICAgIC8qITwgMHgxMDAwMDAwMCAqLw0KI2RlZmluZSBSSV9IWVNDUjJfUERfMTMgICAgICAgICAgICAgICAgICgweDIwMDBVTCA8PCBSSV9IWVNDUjJfUERfUG9zKSAgICAgICAgICAvKiE8IDB4MjAwMDAwMDAgKi8NCiNkZWZpbmUgUklfSFlTQ1IyX1BEXzE0ICAgICAgICAgICAgICAgICAoMHg0MDAwVUwgPDwgUklfSFlTQ1IyX1BEX1BvcykgICAgICAgICAgLyohPCAweDQwMDAwMDAwICovDQojZGVmaW5lIFJJX0hZU0NSMl9QRF8xNSAgICAgICAgICAgICAgICAgKDB4ODAwMFVMIDw8IFJJX0hZU0NSMl9QRF9Qb3MpICAgICAgICAgIC8qITwgMHg4MDAwMDAwMCAqLw0KDQovKioqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBSSV9IWVNDUjMgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBSSV9IWVNDUjNfUEVfUG9zICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSSV9IWVNDUjNfUEVfTXNrICAgICAgICAgICAgICAgICgweEZGRkZVTCA8PCBSSV9IWVNDUjNfUEVfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMEZGRkYgKi8NCiNkZWZpbmUgUklfSFlTQ1IzX1BFICAgICAgICAgICAgICAgICAgICBSSV9IWVNDUjNfUEVfTXNrICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBFWzE1OjBdIFBvcnQgRSBIeXN0ZXJlc2lzIHNlbGVjdGlvbiAqLw0KI2RlZmluZSBSSV9IWVNDUjNfUEVfMCAgICAgICAgICAgICAgICAgICgweDAwMDFVTCA8PCBSSV9IWVNDUjNfUEVfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDAwMDEgKi8NCiNkZWZpbmUgUklfSFlTQ1IzX1BFXzEgICAgICAgICAgICAgICAgICAoMHgwMDAyVUwgPDwgUklfSFlTQ1IzX1BFX1BvcykgICAgICAgICAgLyohPCAweDAwMDAwMDAyICovDQojZGVmaW5lIFJJX0hZU0NSM19QRV8yICAgICAgICAgICAgICAgICAgKDB4MDAwNFVMIDw8IFJJX0hZU0NSM19QRV9Qb3MpICAgICAgICAgIC8qITwgMHgwMDAwMDAwNCAqLw0KI2RlZmluZSBSSV9IWVNDUjNfUEVfMyAgICAgICAgICAgICAgICAgICgweDAwMDhVTCA8PCBSSV9IWVNDUjNfUEVfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDAwMDggKi8NCiNkZWZpbmUgUklfSFlTQ1IzX1BFXzQgICAgICAgICAgICAgICAgICAoMHgwMDEwVUwgPDwgUklfSFlTQ1IzX1BFX1BvcykgICAgICAgICAgLyohPCAweDAwMDAwMDEwICovDQojZGVmaW5lIFJJX0hZU0NSM19QRV81ICAgICAgICAgICAgICAgICAgKDB4MDAyMFVMIDw8IFJJX0hZU0NSM19QRV9Qb3MpICAgICAgICAgIC8qITwgMHgwMDAwMDAyMCAqLw0KI2RlZmluZSBSSV9IWVNDUjNfUEVfNiAgICAgICAgICAgICAgICAgICgweDAwNDBVTCA8PCBSSV9IWVNDUjNfUEVfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDAwNDAgKi8NCiNkZWZpbmUgUklfSFlTQ1IzX1BFXzcgICAgICAgICAgICAgICAgICAoMHgwMDgwVUwgPDwgUklfSFlTQ1IzX1BFX1BvcykgICAgICAgICAgLyohPCAweDAwMDAwMDgwICovDQojZGVmaW5lIFJJX0hZU0NSM19QRV84ICAgICAgICAgICAgICAgICAgKDB4MDEwMFVMIDw8IFJJX0hZU0NSM19QRV9Qb3MpICAgICAgICAgIC8qITwgMHgwMDAwMDEwMCAqLw0KI2RlZmluZSBSSV9IWVNDUjNfUEVfOSAgICAgICAgICAgICAgICAgICgweDAyMDBVTCA8PCBSSV9IWVNDUjNfUEVfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDAyMDAgKi8NCiNkZWZpbmUgUklfSFlTQ1IzX1BFXzEwICAgICAgICAgICAgICAgICAoMHgwNDAwVUwgPDwgUklfSFlTQ1IzX1BFX1BvcykgICAgICAgICAgLyohPCAweDAwMDAwNDAwICovDQojZGVmaW5lIFJJX0hZU0NSM19QRV8xMSAgICAgICAgICAgICAgICAgKDB4MDgwMFVMIDw8IFJJX0hZU0NSM19QRV9Qb3MpICAgICAgICAgIC8qITwgMHgwMDAwMDgwMCAqLw0KI2RlZmluZSBSSV9IWVNDUjNfUEVfMTIgICAgICAgICAgICAgICAgICgweDEwMDBVTCA8PCBSSV9IWVNDUjNfUEVfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDEwMDAgKi8NCiNkZWZpbmUgUklfSFlTQ1IzX1BFXzEzICAgICAgICAgICAgICAgICAoMHgyMDAwVUwgPDwgUklfSFlTQ1IzX1BFX1BvcykgICAgICAgICAgLyohPCAweDAwMDAyMDAwICovDQojZGVmaW5lIFJJX0hZU0NSM19QRV8xNCAgICAgICAgICAgICAgICAgKDB4NDAwMFVMIDw8IFJJX0hZU0NSM19QRV9Qb3MpICAgICAgICAgIC8qITwgMHgwMDAwNDAwMCAqLw0KI2RlZmluZSBSSV9IWVNDUjNfUEVfMTUgICAgICAgICAgICAgICAgICgweDgwMDBVTCA8PCBSSV9IWVNDUjNfUEVfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDgwMDAgKi8NCiNkZWZpbmUgUklfSFlTQ1IzX1BGX1BvcyAgICAgICAgICAgICAgICAoMTZVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUklfSFlTQ1IzX1BGX01zayAgICAgICAgICAgICAgICAoMHhGRkZGVUwgPDwgUklfSFlTQ1IzX1BGX1BvcykgICAgICAgICAgLyohPCAweEZGRkYwMDAwICovDQojZGVmaW5lIFJJX0hZU0NSM19QRiAgICAgICAgICAgICAgICAgICAgUklfSFlTQ1IzX1BGX01zayAgICAgICAgICAgICAgICAgICAgICAgLyohPCBQRlsxNTowXSBQb3J0IEYgSHlzdGVyZXNpcyBzZWxlY3Rpb24gKi8NCiNkZWZpbmUgUklfSFlTQ1IzX1BGXzAgICAgICAgICAgICAgICAgICAoMHgwMDAxVUwgPDwgUklfSFlTQ1IzX1BGX1BvcykgICAgICAgICAgLyohPCAweDAwMDEwMDAwICovDQojZGVmaW5lIFJJX0hZU0NSM19QRl8xICAgICAgICAgICAgICAgICAgKDB4MDAwMlVMIDw8IFJJX0hZU0NSM19QRl9Qb3MpICAgICAgICAgIC8qITwgMHgwMDAyMDAwMCAqLw0KI2RlZmluZSBSSV9IWVNDUjNfUEZfMiAgICAgICAgICAgICAgICAgICgweDAwMDRVTCA8PCBSSV9IWVNDUjNfUEZfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwNDAwMDAgKi8NCiNkZWZpbmUgUklfSFlTQ1IzX1BGXzMgICAgICAgICAgICAgICAgICAoMHgwMDA4VUwgPDwgUklfSFlTQ1IzX1BGX1BvcykgICAgICAgICAgLyohPCAweDAwMDgwMDAwICovDQojZGVmaW5lIFJJX0hZU0NSM19QRl80ICAgICAgICAgICAgICAgICAgKDB4MDAxMFVMIDw8IFJJX0hZU0NSM19QRl9Qb3MpICAgICAgICAgIC8qITwgMHgwMDEwMDAwMCAqLw0KI2RlZmluZSBSSV9IWVNDUjNfUEZfNSAgICAgICAgICAgICAgICAgICgweDAwMjBVTCA8PCBSSV9IWVNDUjNfUEZfUG9zKSAgICAgICAgICAvKiE8IDB4MDAyMDAwMDAgKi8NCiNkZWZpbmUgUklfSFlTQ1IzX1BGXzYgICAgICAgICAgICAgICAgICAoMHgwMDQwVUwgPDwgUklfSFlTQ1IzX1BGX1BvcykgICAgICAgICAgLyohPCAweDAwNDAwMDAwICovDQojZGVmaW5lIFJJX0hZU0NSM19QRl83ICAgICAgICAgICAgICAgICAgKDB4MDA4MFVMIDw8IFJJX0hZU0NSM19QRl9Qb3MpICAgICAgICAgIC8qITwgMHgwMDgwMDAwMCAqLw0KI2RlZmluZSBSSV9IWVNDUjNfUEZfOCAgICAgICAgICAgICAgICAgICgweDAxMDBVTCA8PCBSSV9IWVNDUjNfUEZfUG9zKSAgICAgICAgICAvKiE8IDB4MDEwMDAwMDAgKi8NCiNkZWZpbmUgUklfSFlTQ1IzX1BGXzkgICAgICAgICAgICAgICAgICAoMHgwMjAwVUwgPDwgUklfSFlTQ1IzX1BGX1BvcykgICAgICAgICAgLyohPCAweDAyMDAwMDAwICovDQojZGVmaW5lIFJJX0hZU0NSM19QRl8xMCAgICAgICAgICAgICAgICAgKDB4MDQwMFVMIDw8IFJJX0hZU0NSM19QRl9Qb3MpICAgICAgICAgIC8qITwgMHgwNDAwMDAwMCAqLw0KI2RlZmluZSBSSV9IWVNDUjNfUEZfMTEgICAgICAgICAgICAgICAgICgweDA4MDBVTCA8PCBSSV9IWVNDUjNfUEZfUG9zKSAgICAgICAgICAvKiE8IDB4MDgwMDAwMDAgKi8NCiNkZWZpbmUgUklfSFlTQ1IzX1BGXzEyICAgICAgICAgICAgICAgICAoMHgxMDAwVUwgPDwgUklfSFlTQ1IzX1BGX1BvcykgICAgICAgICAgLyohPCAweDEwMDAwMDAwICovDQojZGVmaW5lIFJJX0hZU0NSM19QRl8xMyAgICAgICAgICAgICAgICAgKDB4MjAwMFVMIDw8IFJJX0hZU0NSM19QRl9Qb3MpICAgICAgICAgIC8qITwgMHgyMDAwMDAwMCAqLw0KI2RlZmluZSBSSV9IWVNDUjNfUEZfMTQgICAgICAgICAgICAgICAgICgweDQwMDBVTCA8PCBSSV9IWVNDUjNfUEZfUG9zKSAgICAgICAgICAvKiE8IDB4NDAwMDAwMDAgKi8NCiNkZWZpbmUgUklfSFlTQ1IzX1BGXzE1ICAgICAgICAgICAgICAgICAoMHg4MDAwVUwgPDwgUklfSFlTQ1IzX1BGX1BvcykgICAgICAgICAgLyohPCAweDgwMDAwMDAwICovDQovKioqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBSSV9IWVNDUjQgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBSSV9IWVNDUjRfUEdfUG9zICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSSV9IWVNDUjRfUEdfTXNrICAgICAgICAgICAgICAgICgweEZGRkZVTCA8PCBSSV9IWVNDUjRfUEdfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMEZGRkYgKi8NCiNkZWZpbmUgUklfSFlTQ1I0X1BHICAgICAgICAgICAgICAgICAgICBSSV9IWVNDUjRfUEdfTXNrICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBHWzE1OjBdIFBvcnQgRyBIeXN0ZXJlc2lzIHNlbGVjdGlvbiAqLw0KI2RlZmluZSBSSV9IWVNDUjRfUEdfMCAgICAgICAgICAgICAgICAgICgweDAwMDFVTCA8PCBSSV9IWVNDUjRfUEdfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDAwMDEgKi8NCiNkZWZpbmUgUklfSFlTQ1I0X1BHXzEgICAgICAgICAgICAgICAgICAoMHgwMDAyVUwgPDwgUklfSFlTQ1I0X1BHX1BvcykgICAgICAgICAgLyohPCAweDAwMDAwMDAyICovDQojZGVmaW5lIFJJX0hZU0NSNF9QR18yICAgICAgICAgICAgICAgICAgKDB4MDAwNFVMIDw8IFJJX0hZU0NSNF9QR19Qb3MpICAgICAgICAgIC8qITwgMHgwMDAwMDAwNCAqLw0KI2RlZmluZSBSSV9IWVNDUjRfUEdfMyAgICAgICAgICAgICAgICAgICgweDAwMDhVTCA8PCBSSV9IWVNDUjRfUEdfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDAwMDggKi8NCiNkZWZpbmUgUklfSFlTQ1I0X1BHXzQgICAgICAgICAgICAgICAgICAoMHgwMDEwVUwgPDwgUklfSFlTQ1I0X1BHX1BvcykgICAgICAgICAgLyohPCAweDAwMDAwMDEwICovDQojZGVmaW5lIFJJX0hZU0NSNF9QR181ICAgICAgICAgICAgICAgICAgKDB4MDAyMFVMIDw8IFJJX0hZU0NSNF9QR19Qb3MpICAgICAgICAgIC8qITwgMHgwMDAwMDAyMCAqLw0KI2RlZmluZSBSSV9IWVNDUjRfUEdfNiAgICAgICAgICAgICAgICAgICgweDAwNDBVTCA8PCBSSV9IWVNDUjRfUEdfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDAwNDAgKi8NCiNkZWZpbmUgUklfSFlTQ1I0X1BHXzcgICAgICAgICAgICAgICAgICAoMHgwMDgwVUwgPDwgUklfSFlTQ1I0X1BHX1BvcykgICAgICAgICAgLyohPCAweDAwMDAwMDgwICovDQojZGVmaW5lIFJJX0hZU0NSNF9QR184ICAgICAgICAgICAgICAgICAgKDB4MDEwMFVMIDw8IFJJX0hZU0NSNF9QR19Qb3MpICAgICAgICAgIC8qITwgMHgwMDAwMDEwMCAqLw0KI2RlZmluZSBSSV9IWVNDUjRfUEdfOSAgICAgICAgICAgICAgICAgICgweDAyMDBVTCA8PCBSSV9IWVNDUjRfUEdfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDAyMDAgKi8NCiNkZWZpbmUgUklfSFlTQ1I0X1BHXzEwICAgICAgICAgICAgICAgICAoMHgwNDAwVUwgPDwgUklfSFlTQ1I0X1BHX1BvcykgICAgICAgICAgLyohPCAweDAwMDAwNDAwICovDQojZGVmaW5lIFJJX0hZU0NSNF9QR18xMSAgICAgICAgICAgICAgICAgKDB4MDgwMFVMIDw8IFJJX0hZU0NSNF9QR19Qb3MpICAgICAgICAgIC8qITwgMHgwMDAwMDgwMCAqLw0KI2RlZmluZSBSSV9IWVNDUjRfUEdfMTIgICAgICAgICAgICAgICAgICgweDEwMDBVTCA8PCBSSV9IWVNDUjRfUEdfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDEwMDAgKi8NCiNkZWZpbmUgUklfSFlTQ1I0X1BHXzEzICAgICAgICAgICAgICAgICAoMHgyMDAwVUwgPDwgUklfSFlTQ1I0X1BHX1BvcykgICAgICAgICAgLyohPCAweDAwMDAyMDAwICovDQojZGVmaW5lIFJJX0hZU0NSNF9QR18xNCAgICAgICAgICAgICAgICAgKDB4NDAwMFVMIDw8IFJJX0hZU0NSNF9QR19Qb3MpICAgICAgICAgIC8qITwgMHgwMDAwNDAwMCAqLw0KI2RlZmluZSBSSV9IWVNDUjRfUEdfMTUgICAgICAgICAgICAgICAgICgweDgwMDBVTCA8PCBSSV9IWVNDUjRfUEdfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDgwMDAgKi8NCg0KLyoqKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgUklfQVNNUjEgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBSSV9BU01SMV9QQV9Qb3MgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSSV9BU01SMV9QQV9Nc2sgICAgICAgICAgICAgICAgICgweEZGRkZVTCA8PCBSSV9BU01SMV9QQV9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMEZGRkYgKi8NCiNkZWZpbmUgUklfQVNNUjFfUEEgICAgICAgICAgICAgICAgICAgICBSSV9BU01SMV9QQV9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBBWzE1OjBdIFBvcnQgQSBzZWxlY3Rpb24qLw0KI2RlZmluZSBSSV9BU01SMV9QQV8wICAgICAgICAgICAgICAgICAgICgweDAwMDFVTCA8PCBSSV9BU01SMV9QQV9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDEgKi8NCiNkZWZpbmUgUklfQVNNUjFfUEFfMSAgICAgICAgICAgICAgICAgICAoMHgwMDAyVUwgPDwgUklfQVNNUjFfUEFfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwMDAyICovDQojZGVmaW5lIFJJX0FTTVIxX1BBXzIgICAgICAgICAgICAgICAgICAgKDB4MDAwNFVMIDw8IFJJX0FTTVIxX1BBX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDAwNCAqLw0KI2RlZmluZSBSSV9BU01SMV9QQV8zICAgICAgICAgICAgICAgICAgICgweDAwMDhVTCA8PCBSSV9BU01SMV9QQV9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDggKi8NCiNkZWZpbmUgUklfQVNNUjFfUEFfNCAgICAgICAgICAgICAgICAgICAoMHgwMDEwVUwgPDwgUklfQVNNUjFfUEFfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwMDEwICovDQojZGVmaW5lIFJJX0FTTVIxX1BBXzUgICAgICAgICAgICAgICAgICAgKDB4MDAyMFVMIDw8IFJJX0FTTVIxX1BBX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDAyMCAqLw0KI2RlZmluZSBSSV9BU01SMV9QQV82ICAgICAgICAgICAgICAgICAgICgweDAwNDBVTCA8PCBSSV9BU01SMV9QQV9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDAwNDAgKi8NCiNkZWZpbmUgUklfQVNNUjFfUEFfNyAgICAgICAgICAgICAgICAgICAoMHgwMDgwVUwgPDwgUklfQVNNUjFfUEFfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwMDgwICovDQojZGVmaW5lIFJJX0FTTVIxX1BBXzggICAgICAgICAgICAgICAgICAgKDB4MDEwMFVMIDw8IFJJX0FTTVIxX1BBX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDEwMCAqLw0KI2RlZmluZSBSSV9BU01SMV9QQV85ICAgICAgICAgICAgICAgICAgICgweDAyMDBVTCA8PCBSSV9BU01SMV9QQV9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDAyMDAgKi8NCiNkZWZpbmUgUklfQVNNUjFfUEFfMTAgICAgICAgICAgICAgICAgICAoMHgwNDAwVUwgPDwgUklfQVNNUjFfUEFfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwNDAwICovDQojZGVmaW5lIFJJX0FTTVIxX1BBXzExICAgICAgICAgICAgICAgICAgKDB4MDgwMFVMIDw8IFJJX0FTTVIxX1BBX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDgwMCAqLw0KI2RlZmluZSBSSV9BU01SMV9QQV8xMiAgICAgICAgICAgICAgICAgICgweDEwMDBVTCA8PCBSSV9BU01SMV9QQV9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDEwMDAgKi8NCiNkZWZpbmUgUklfQVNNUjFfUEFfMTMgICAgICAgICAgICAgICAgICAoMHgyMDAwVUwgPDwgUklfQVNNUjFfUEFfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAyMDAwICovDQojZGVmaW5lIFJJX0FTTVIxX1BBXzE0ICAgICAgICAgICAgICAgICAgKDB4NDAwMFVMIDw8IFJJX0FTTVIxX1BBX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwNDAwMCAqLw0KI2RlZmluZSBSSV9BU01SMV9QQV8xNSAgICAgICAgICAgICAgICAgICgweDgwMDBVTCA8PCBSSV9BU01SMV9QQV9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDgwMDAgKi8NCg0KLyoqKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgUklfQ01SMSByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIFJJX0NNUjFfUEFfUG9zICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJJX0NNUjFfUEFfTXNrICAgICAgICAgICAgICAgICAgKDB4RkZGRlVMIDw8IFJJX0NNUjFfUEFfUG9zKSAgICAgICAgICAgIC8qITwgMHgwMDAwRkZGRiAqLw0KI2RlZmluZSBSSV9DTVIxX1BBICAgICAgICAgICAgICAgICAgICAgIFJJX0NNUjFfUEFfTXNrICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgUEFbMTU6MF0gUG9ydCBBIHNlbGVjdGlvbiovDQojZGVmaW5lIFJJX0NNUjFfUEFfMCAgICAgICAgICAgICAgICAgICAgKDB4MDAwMVVMIDw8IFJJX0NNUjFfUEFfUG9zKSAgICAgICAgICAgIC8qITwgMHgwMDAwMDAwMSAqLw0KI2RlZmluZSBSSV9DTVIxX1BBXzEgICAgICAgICAgICAgICAgICAgICgweDAwMDJVTCA8PCBSSV9DTVIxX1BBX1BvcykgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDIgKi8NCiNkZWZpbmUgUklfQ01SMV9QQV8yICAgICAgICAgICAgICAgICAgICAoMHgwMDA0VUwgPDwgUklfQ01SMV9QQV9Qb3MpICAgICAgICAgICAgLyohPCAweDAwMDAwMDA0ICovDQojZGVmaW5lIFJJX0NNUjFfUEFfMyAgICAgICAgICAgICAgICAgICAgKDB4MDAwOFVMIDw8IFJJX0NNUjFfUEFfUG9zKSAgICAgICAgICAgIC8qITwgMHgwMDAwMDAwOCAqLw0KI2RlZmluZSBSSV9DTVIxX1BBXzQgICAgICAgICAgICAgICAgICAgICgweDAwMTBVTCA8PCBSSV9DTVIxX1BBX1BvcykgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMTAgKi8NCiNkZWZpbmUgUklfQ01SMV9QQV81ICAgICAgICAgICAgICAgICAgICAoMHgwMDIwVUwgPDwgUklfQ01SMV9QQV9Qb3MpICAgICAgICAgICAgLyohPCAweDAwMDAwMDIwICovDQojZGVmaW5lIFJJX0NNUjFfUEFfNiAgICAgICAgICAgICAgICAgICAgKDB4MDA0MFVMIDw8IFJJX0NNUjFfUEFfUG9zKSAgICAgICAgICAgIC8qITwgMHgwMDAwMDA0MCAqLw0KI2RlZmluZSBSSV9DTVIxX1BBXzcgICAgICAgICAgICAgICAgICAgICgweDAwODBVTCA8PCBSSV9DTVIxX1BBX1BvcykgICAgICAgICAgICAvKiE8IDB4MDAwMDAwODAgKi8NCiNkZWZpbmUgUklfQ01SMV9QQV84ICAgICAgICAgICAgICAgICAgICAoMHgwMTAwVUwgPDwgUklfQ01SMV9QQV9Qb3MpICAgICAgICAgICAgLyohPCAweDAwMDAwMTAwICovDQojZGVmaW5lIFJJX0NNUjFfUEFfOSAgICAgICAgICAgICAgICAgICAgKDB4MDIwMFVMIDw8IFJJX0NNUjFfUEFfUG9zKSAgICAgICAgICAgIC8qITwgMHgwMDAwMDIwMCAqLw0KI2RlZmluZSBSSV9DTVIxX1BBXzEwICAgICAgICAgICAgICAgICAgICgweDA0MDBVTCA8PCBSSV9DTVIxX1BBX1BvcykgICAgICAgICAgICAvKiE8IDB4MDAwMDA0MDAgKi8NCiNkZWZpbmUgUklfQ01SMV9QQV8xMSAgICAgICAgICAgICAgICAgICAoMHgwODAwVUwgPDwgUklfQ01SMV9QQV9Qb3MpICAgICAgICAgICAgLyohPCAweDAwMDAwODAwICovDQojZGVmaW5lIFJJX0NNUjFfUEFfMTIgICAgICAgICAgICAgICAgICAgKDB4MTAwMFVMIDw8IFJJX0NNUjFfUEFfUG9zKSAgICAgICAgICAgIC8qITwgMHgwMDAwMTAwMCAqLw0KI2RlZmluZSBSSV9DTVIxX1BBXzEzICAgICAgICAgICAgICAgICAgICgweDIwMDBVTCA8PCBSSV9DTVIxX1BBX1BvcykgICAgICAgICAgICAvKiE8IDB4MDAwMDIwMDAgKi8NCiNkZWZpbmUgUklfQ01SMV9QQV8xNCAgICAgICAgICAgICAgICAgICAoMHg0MDAwVUwgPDwgUklfQ01SMV9QQV9Qb3MpICAgICAgICAgICAgLyohPCAweDAwMDA0MDAwICovDQojZGVmaW5lIFJJX0NNUjFfUEFfMTUgICAgICAgICAgICAgICAgICAgKDB4ODAwMFVMIDw8IFJJX0NNUjFfUEFfUG9zKSAgICAgICAgICAgIC8qITwgMHgwMDAwODAwMCAqLw0KDQovKioqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBSSV9DSUNSMSByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIFJJX0NJQ1IxX1BBX1BvcyAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJJX0NJQ1IxX1BBX01zayAgICAgICAgICAgICAgICAgKDB4RkZGRlVMIDw8IFJJX0NJQ1IxX1BBX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwRkZGRiAqLw0KI2RlZmluZSBSSV9DSUNSMV9QQSAgICAgICAgICAgICAgICAgICAgIFJJX0NJQ1IxX1BBX01zayAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgUEFbMTU6MF0gUG9ydCBBIHNlbGVjdGlvbiovDQojZGVmaW5lIFJJX0NJQ1IxX1BBXzAgICAgICAgICAgICAgICAgICAgKDB4MDAwMVVMIDw8IFJJX0NJQ1IxX1BBX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDAwMSAqLw0KI2RlZmluZSBSSV9DSUNSMV9QQV8xICAgICAgICAgICAgICAgICAgICgweDAwMDJVTCA8PCBSSV9DSUNSMV9QQV9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDIgKi8NCiNkZWZpbmUgUklfQ0lDUjFfUEFfMiAgICAgICAgICAgICAgICAgICAoMHgwMDA0VUwgPDwgUklfQ0lDUjFfUEFfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwMDA0ICovDQojZGVmaW5lIFJJX0NJQ1IxX1BBXzMgICAgICAgICAgICAgICAgICAgKDB4MDAwOFVMIDw8IFJJX0NJQ1IxX1BBX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDAwOCAqLw0KI2RlZmluZSBSSV9DSUNSMV9QQV80ICAgICAgICAgICAgICAgICAgICgweDAwMTBVTCA8PCBSSV9DSUNSMV9QQV9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDAwMTAgKi8NCiNkZWZpbmUgUklfQ0lDUjFfUEFfNSAgICAgICAgICAgICAgICAgICAoMHgwMDIwVUwgPDwgUklfQ0lDUjFfUEFfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwMDIwICovDQojZGVmaW5lIFJJX0NJQ1IxX1BBXzYgICAgICAgICAgICAgICAgICAgKDB4MDA0MFVMIDw8IFJJX0NJQ1IxX1BBX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDA0MCAqLw0KI2RlZmluZSBSSV9DSUNSMV9QQV83ICAgICAgICAgICAgICAgICAgICgweDAwODBVTCA8PCBSSV9DSUNSMV9QQV9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDAwODAgKi8NCiNkZWZpbmUgUklfQ0lDUjFfUEFfOCAgICAgICAgICAgICAgICAgICAoMHgwMTAwVUwgPDwgUklfQ0lDUjFfUEFfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwMTAwICovDQojZGVmaW5lIFJJX0NJQ1IxX1BBXzkgICAgICAgICAgICAgICAgICAgKDB4MDIwMFVMIDw8IFJJX0NJQ1IxX1BBX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDIwMCAqLw0KI2RlZmluZSBSSV9DSUNSMV9QQV8xMCAgICAgICAgICAgICAgICAgICgweDA0MDBVTCA8PCBSSV9DSUNSMV9QQV9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDA0MDAgKi8NCiNkZWZpbmUgUklfQ0lDUjFfUEFfMTEgICAgICAgICAgICAgICAgICAoMHgwODAwVUwgPDwgUklfQ0lDUjFfUEFfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwODAwICovDQojZGVmaW5lIFJJX0NJQ1IxX1BBXzEyICAgICAgICAgICAgICAgICAgKDB4MTAwMFVMIDw8IFJJX0NJQ1IxX1BBX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMTAwMCAqLw0KI2RlZmluZSBSSV9DSUNSMV9QQV8xMyAgICAgICAgICAgICAgICAgICgweDIwMDBVTCA8PCBSSV9DSUNSMV9QQV9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDIwMDAgKi8NCiNkZWZpbmUgUklfQ0lDUjFfUEFfMTQgICAgICAgICAgICAgICAgICAoMHg0MDAwVUwgPDwgUklfQ0lDUjFfUEFfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDA0MDAwICovDQojZGVmaW5lIFJJX0NJQ1IxX1BBXzE1ICAgICAgICAgICAgICAgICAgKDB4ODAwMFVMIDw8IFJJX0NJQ1IxX1BBX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwODAwMCAqLw0KDQovKioqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBSSV9BU01SMiByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIFJJX0FTTVIyX1BCX1BvcyAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJJX0FTTVIyX1BCX01zayAgICAgICAgICAgICAgICAgKDB4RkZGRlVMIDw8IFJJX0FTTVIyX1BCX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwRkZGRiAqLw0KI2RlZmluZSBSSV9BU01SMl9QQiAgICAgICAgICAgICAgICAgICAgIFJJX0FTTVIyX1BCX01zayAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgUEJbMTU6MF0gUG9ydCBCIHNlbGVjdGlvbiAqLw0KI2RlZmluZSBSSV9BU01SMl9QQl8wICAgICAgICAgICAgICAgICAgICgweDAwMDFVTCA8PCBSSV9BU01SMl9QQl9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDEgKi8NCiNkZWZpbmUgUklfQVNNUjJfUEJfMSAgICAgICAgICAgICAgICAgICAoMHgwMDAyVUwgPDwgUklfQVNNUjJfUEJfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwMDAyICovDQojZGVmaW5lIFJJX0FTTVIyX1BCXzIgICAgICAgICAgICAgICAgICAgKDB4MDAwNFVMIDw8IFJJX0FTTVIyX1BCX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDAwNCAqLw0KI2RlZmluZSBSSV9BU01SMl9QQl8zICAgICAgICAgICAgICAgICAgICgweDAwMDhVTCA8PCBSSV9BU01SMl9QQl9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDggKi8NCiNkZWZpbmUgUklfQVNNUjJfUEJfNCAgICAgICAgICAgICAgICAgICAoMHgwMDEwVUwgPDwgUklfQVNNUjJfUEJfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwMDEwICovDQojZGVmaW5lIFJJX0FTTVIyX1BCXzUgICAgICAgICAgICAgICAgICAgKDB4MDAyMFVMIDw8IFJJX0FTTVIyX1BCX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDAyMCAqLw0KI2RlZmluZSBSSV9BU01SMl9QQl82ICAgICAgICAgICAgICAgICAgICgweDAwNDBVTCA8PCBSSV9BU01SMl9QQl9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDAwNDAgKi8NCiNkZWZpbmUgUklfQVNNUjJfUEJfNyAgICAgICAgICAgICAgICAgICAoMHgwMDgwVUwgPDwgUklfQVNNUjJfUEJfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwMDgwICovDQojZGVmaW5lIFJJX0FTTVIyX1BCXzggICAgICAgICAgICAgICAgICAgKDB4MDEwMFVMIDw8IFJJX0FTTVIyX1BCX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDEwMCAqLw0KI2RlZmluZSBSSV9BU01SMl9QQl85ICAgICAgICAgICAgICAgICAgICgweDAyMDBVTCA8PCBSSV9BU01SMl9QQl9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDAyMDAgKi8NCiNkZWZpbmUgUklfQVNNUjJfUEJfMTAgICAgICAgICAgICAgICAgICAoMHgwNDAwVUwgPDwgUklfQVNNUjJfUEJfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwNDAwICovDQojZGVmaW5lIFJJX0FTTVIyX1BCXzExICAgICAgICAgICAgICAgICAgKDB4MDgwMFVMIDw8IFJJX0FTTVIyX1BCX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDgwMCAqLw0KI2RlZmluZSBSSV9BU01SMl9QQl8xMiAgICAgICAgICAgICAgICAgICgweDEwMDBVTCA8PCBSSV9BU01SMl9QQl9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDEwMDAgKi8NCiNkZWZpbmUgUklfQVNNUjJfUEJfMTMgICAgICAgICAgICAgICAgICAoMHgyMDAwVUwgPDwgUklfQVNNUjJfUEJfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAyMDAwICovDQojZGVmaW5lIFJJX0FTTVIyX1BCXzE0ICAgICAgICAgICAgICAgICAgKDB4NDAwMFVMIDw8IFJJX0FTTVIyX1BCX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwNDAwMCAqLw0KI2RlZmluZSBSSV9BU01SMl9QQl8xNSAgICAgICAgICAgICAgICAgICgweDgwMDBVTCA8PCBSSV9BU01SMl9QQl9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDgwMDAgKi8NCg0KLyoqKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgUklfQ01SMiByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIFJJX0NNUjJfUEJfUG9zICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJJX0NNUjJfUEJfTXNrICAgICAgICAgICAgICAgICAgKDB4RkZGRlVMIDw8IFJJX0NNUjJfUEJfUG9zKSAgICAgICAgICAgIC8qITwgMHgwMDAwRkZGRiAqLw0KI2RlZmluZSBSSV9DTVIyX1BCICAgICAgICAgICAgICAgICAgICAgIFJJX0NNUjJfUEJfTXNrICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgUEJbMTU6MF0gUG9ydCBCIHNlbGVjdGlvbiAqLw0KI2RlZmluZSBSSV9DTVIyX1BCXzAgICAgICAgICAgICAgICAgICAgICgweDAwMDFVTCA8PCBSSV9DTVIyX1BCX1BvcykgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDEgKi8NCiNkZWZpbmUgUklfQ01SMl9QQl8xICAgICAgICAgICAgICAgICAgICAoMHgwMDAyVUwgPDwgUklfQ01SMl9QQl9Qb3MpICAgICAgICAgICAgLyohPCAweDAwMDAwMDAyICovDQojZGVmaW5lIFJJX0NNUjJfUEJfMiAgICAgICAgICAgICAgICAgICAgKDB4MDAwNFVMIDw8IFJJX0NNUjJfUEJfUG9zKSAgICAgICAgICAgIC8qITwgMHgwMDAwMDAwNCAqLw0KI2RlZmluZSBSSV9DTVIyX1BCXzMgICAgICAgICAgICAgICAgICAgICgweDAwMDhVTCA8PCBSSV9DTVIyX1BCX1BvcykgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDggKi8NCiNkZWZpbmUgUklfQ01SMl9QQl80ICAgICAgICAgICAgICAgICAgICAoMHgwMDEwVUwgPDwgUklfQ01SMl9QQl9Qb3MpICAgICAgICAgICAgLyohPCAweDAwMDAwMDEwICovDQojZGVmaW5lIFJJX0NNUjJfUEJfNSAgICAgICAgICAgICAgICAgICAgKDB4MDAyMFVMIDw8IFJJX0NNUjJfUEJfUG9zKSAgICAgICAgICAgIC8qITwgMHgwMDAwMDAyMCAqLw0KI2RlZmluZSBSSV9DTVIyX1BCXzYgICAgICAgICAgICAgICAgICAgICgweDAwNDBVTCA8PCBSSV9DTVIyX1BCX1BvcykgICAgICAgICAgICAvKiE8IDB4MDAwMDAwNDAgKi8NCiNkZWZpbmUgUklfQ01SMl9QQl83ICAgICAgICAgICAgICAgICAgICAoMHgwMDgwVUwgPDwgUklfQ01SMl9QQl9Qb3MpICAgICAgICAgICAgLyohPCAweDAwMDAwMDgwICovDQojZGVmaW5lIFJJX0NNUjJfUEJfOCAgICAgICAgICAgICAgICAgICAgKDB4MDEwMFVMIDw8IFJJX0NNUjJfUEJfUG9zKSAgICAgICAgICAgIC8qITwgMHgwMDAwMDEwMCAqLw0KI2RlZmluZSBSSV9DTVIyX1BCXzkgICAgICAgICAgICAgICAgICAgICgweDAyMDBVTCA8PCBSSV9DTVIyX1BCX1BvcykgICAgICAgICAgICAvKiE8IDB4MDAwMDAyMDAgKi8NCiNkZWZpbmUgUklfQ01SMl9QQl8xMCAgICAgICAgICAgICAgICAgICAoMHgwNDAwVUwgPDwgUklfQ01SMl9QQl9Qb3MpICAgICAgICAgICAgLyohPCAweDAwMDAwNDAwICovDQojZGVmaW5lIFJJX0NNUjJfUEJfMTEgICAgICAgICAgICAgICAgICAgKDB4MDgwMFVMIDw8IFJJX0NNUjJfUEJfUG9zKSAgICAgICAgICAgIC8qITwgMHgwMDAwMDgwMCAqLw0KI2RlZmluZSBSSV9DTVIyX1BCXzEyICAgICAgICAgICAgICAgICAgICgweDEwMDBVTCA8PCBSSV9DTVIyX1BCX1BvcykgICAgICAgICAgICAvKiE8IDB4MDAwMDEwMDAgKi8NCiNkZWZpbmUgUklfQ01SMl9QQl8xMyAgICAgICAgICAgICAgICAgICAoMHgyMDAwVUwgPDwgUklfQ01SMl9QQl9Qb3MpICAgICAgICAgICAgLyohPCAweDAwMDAyMDAwICovDQojZGVmaW5lIFJJX0NNUjJfUEJfMTQgICAgICAgICAgICAgICAgICAgKDB4NDAwMFVMIDw8IFJJX0NNUjJfUEJfUG9zKSAgICAgICAgICAgIC8qITwgMHgwMDAwNDAwMCAqLw0KI2RlZmluZSBSSV9DTVIyX1BCXzE1ICAgICAgICAgICAgICAgICAgICgweDgwMDBVTCA8PCBSSV9DTVIyX1BCX1BvcykgICAgICAgICAgICAvKiE8IDB4MDAwMDgwMDAgKi8NCg0KLyoqKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgUklfQ0lDUjIgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBSSV9DSUNSMl9QQl9Qb3MgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSSV9DSUNSMl9QQl9Nc2sgICAgICAgICAgICAgICAgICgweEZGRkZVTCA8PCBSSV9DSUNSMl9QQl9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMEZGRkYgKi8NCiNkZWZpbmUgUklfQ0lDUjJfUEIgICAgICAgICAgICAgICAgICAgICBSSV9DSUNSMl9QQl9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBCWzE1OjBdIFBvcnQgQiBzZWxlY3Rpb24gKi8NCiNkZWZpbmUgUklfQ0lDUjJfUEJfMCAgICAgICAgICAgICAgICAgICAoMHgwMDAxVUwgPDwgUklfQ0lDUjJfUEJfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwMDAxICovDQojZGVmaW5lIFJJX0NJQ1IyX1BCXzEgICAgICAgICAgICAgICAgICAgKDB4MDAwMlVMIDw8IFJJX0NJQ1IyX1BCX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDAwMiAqLw0KI2RlZmluZSBSSV9DSUNSMl9QQl8yICAgICAgICAgICAgICAgICAgICgweDAwMDRVTCA8PCBSSV9DSUNSMl9QQl9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDQgKi8NCiNkZWZpbmUgUklfQ0lDUjJfUEJfMyAgICAgICAgICAgICAgICAgICAoMHgwMDA4VUwgPDwgUklfQ0lDUjJfUEJfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwMDA4ICovDQojZGVmaW5lIFJJX0NJQ1IyX1BCXzQgICAgICAgICAgICAgICAgICAgKDB4MDAxMFVMIDw8IFJJX0NJQ1IyX1BCX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDAxMCAqLw0KI2RlZmluZSBSSV9DSUNSMl9QQl81ICAgICAgICAgICAgICAgICAgICgweDAwMjBVTCA8PCBSSV9DSUNSMl9QQl9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDAwMjAgKi8NCiNkZWZpbmUgUklfQ0lDUjJfUEJfNiAgICAgICAgICAgICAgICAgICAoMHgwMDQwVUwgPDwgUklfQ0lDUjJfUEJfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwMDQwICovDQojZGVmaW5lIFJJX0NJQ1IyX1BCXzcgICAgICAgICAgICAgICAgICAgKDB4MDA4MFVMIDw8IFJJX0NJQ1IyX1BCX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDA4MCAqLw0KI2RlZmluZSBSSV9DSUNSMl9QQl84ICAgICAgICAgICAgICAgICAgICgweDAxMDBVTCA8PCBSSV9DSUNSMl9QQl9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDAxMDAgKi8NCiNkZWZpbmUgUklfQ0lDUjJfUEJfOSAgICAgICAgICAgICAgICAgICAoMHgwMjAwVUwgPDwgUklfQ0lDUjJfUEJfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwMjAwICovDQojZGVmaW5lIFJJX0NJQ1IyX1BCXzEwICAgICAgICAgICAgICAgICAgKDB4MDQwMFVMIDw8IFJJX0NJQ1IyX1BCX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDQwMCAqLw0KI2RlZmluZSBSSV9DSUNSMl9QQl8xMSAgICAgICAgICAgICAgICAgICgweDA4MDBVTCA8PCBSSV9DSUNSMl9QQl9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDA4MDAgKi8NCiNkZWZpbmUgUklfQ0lDUjJfUEJfMTIgICAgICAgICAgICAgICAgICAoMHgxMDAwVUwgPDwgUklfQ0lDUjJfUEJfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAxMDAwICovDQojZGVmaW5lIFJJX0NJQ1IyX1BCXzEzICAgICAgICAgICAgICAgICAgKDB4MjAwMFVMIDw8IFJJX0NJQ1IyX1BCX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMjAwMCAqLw0KI2RlZmluZSBSSV9DSUNSMl9QQl8xNCAgICAgICAgICAgICAgICAgICgweDQwMDBVTCA8PCBSSV9DSUNSMl9QQl9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDQwMDAgKi8NCiNkZWZpbmUgUklfQ0lDUjJfUEJfMTUgICAgICAgICAgICAgICAgICAoMHg4MDAwVUwgPDwgUklfQ0lDUjJfUEJfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDA4MDAwICovDQoNCi8qKioqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFJJX0FTTVIzIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgUklfQVNNUjNfUENfUG9zICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUklfQVNNUjNfUENfTXNrICAgICAgICAgICAgICAgICAoMHhGRkZGVUwgPDwgUklfQVNNUjNfUENfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDBGRkZGICovDQojZGVmaW5lIFJJX0FTTVIzX1BDICAgICAgICAgICAgICAgICAgICAgUklfQVNNUjNfUENfTXNrICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBQQ1sxNTowXSBQb3J0IEMgc2VsZWN0aW9uICovDQojZGVmaW5lIFJJX0FTTVIzX1BDXzAgICAgICAgICAgICAgICAgICAgKDB4MDAwMVVMIDw8IFJJX0FTTVIzX1BDX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDAwMSAqLw0KI2RlZmluZSBSSV9BU01SM19QQ18xICAgICAgICAgICAgICAgICAgICgweDAwMDJVTCA8PCBSSV9BU01SM19QQ19Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDIgKi8NCiNkZWZpbmUgUklfQVNNUjNfUENfMiAgICAgICAgICAgICAgICAgICAoMHgwMDA0VUwgPDwgUklfQVNNUjNfUENfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwMDA0ICovDQojZGVmaW5lIFJJX0FTTVIzX1BDXzMgICAgICAgICAgICAgICAgICAgKDB4MDAwOFVMIDw8IFJJX0FTTVIzX1BDX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDAwOCAqLw0KI2RlZmluZSBSSV9BU01SM19QQ180ICAgICAgICAgICAgICAgICAgICgweDAwMTBVTCA8PCBSSV9BU01SM19QQ19Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDAwMTAgKi8NCiNkZWZpbmUgUklfQVNNUjNfUENfNSAgICAgICAgICAgICAgICAgICAoMHgwMDIwVUwgPDwgUklfQVNNUjNfUENfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwMDIwICovDQojZGVmaW5lIFJJX0FTTVIzX1BDXzYgICAgICAgICAgICAgICAgICAgKDB4MDA0MFVMIDw8IFJJX0FTTVIzX1BDX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDA0MCAqLw0KI2RlZmluZSBSSV9BU01SM19QQ183ICAgICAgICAgICAgICAgICAgICgweDAwODBVTCA8PCBSSV9BU01SM19QQ19Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDAwODAgKi8NCiNkZWZpbmUgUklfQVNNUjNfUENfOCAgICAgICAgICAgICAgICAgICAoMHgwMTAwVUwgPDwgUklfQVNNUjNfUENfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwMTAwICovDQojZGVmaW5lIFJJX0FTTVIzX1BDXzkgICAgICAgICAgICAgICAgICAgKDB4MDIwMFVMIDw8IFJJX0FTTVIzX1BDX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDIwMCAqLw0KI2RlZmluZSBSSV9BU01SM19QQ18xMCAgICAgICAgICAgICAgICAgICgweDA0MDBVTCA8PCBSSV9BU01SM19QQ19Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDA0MDAgKi8NCiNkZWZpbmUgUklfQVNNUjNfUENfMTEgICAgICAgICAgICAgICAgICAoMHgwODAwVUwgPDwgUklfQVNNUjNfUENfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwODAwICovDQojZGVmaW5lIFJJX0FTTVIzX1BDXzEyICAgICAgICAgICAgICAgICAgKDB4MTAwMFVMIDw8IFJJX0FTTVIzX1BDX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMTAwMCAqLw0KI2RlZmluZSBSSV9BU01SM19QQ18xMyAgICAgICAgICAgICAgICAgICgweDIwMDBVTCA8PCBSSV9BU01SM19QQ19Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDIwMDAgKi8NCiNkZWZpbmUgUklfQVNNUjNfUENfMTQgICAgICAgICAgICAgICAgICAoMHg0MDAwVUwgPDwgUklfQVNNUjNfUENfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDA0MDAwICovDQojZGVmaW5lIFJJX0FTTVIzX1BDXzE1ICAgICAgICAgICAgICAgICAgKDB4ODAwMFVMIDw8IFJJX0FTTVIzX1BDX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwODAwMCAqLw0KDQovKioqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBSSV9DTVIzIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgUklfQ01SM19QQ19Qb3MgICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUklfQ01SM19QQ19Nc2sgICAgICAgICAgICAgICAgICAoMHhGRkZGVUwgPDwgUklfQ01SM19QQ19Qb3MpICAgICAgICAgICAgLyohPCAweDAwMDBGRkZGICovDQojZGVmaW5lIFJJX0NNUjNfUEMgICAgICAgICAgICAgICAgICAgICAgUklfQ01SM19QQ19Nc2sgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBQQ1sxNTowXSBQb3J0IEMgc2VsZWN0aW9uICovDQojZGVmaW5lIFJJX0NNUjNfUENfMCAgICAgICAgICAgICAgICAgICAgKDB4MDAwMVVMIDw8IFJJX0NNUjNfUENfUG9zKSAgICAgICAgICAgIC8qITwgMHgwMDAwMDAwMSAqLw0KI2RlZmluZSBSSV9DTVIzX1BDXzEgICAgICAgICAgICAgICAgICAgICgweDAwMDJVTCA8PCBSSV9DTVIzX1BDX1BvcykgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDIgKi8NCiNkZWZpbmUgUklfQ01SM19QQ18yICAgICAgICAgICAgICAgICAgICAoMHgwMDA0VUwgPDwgUklfQ01SM19QQ19Qb3MpICAgICAgICAgICAgLyohPCAweDAwMDAwMDA0ICovDQojZGVmaW5lIFJJX0NNUjNfUENfMyAgICAgICAgICAgICAgICAgICAgKDB4MDAwOFVMIDw8IFJJX0NNUjNfUENfUG9zKSAgICAgICAgICAgIC8qITwgMHgwMDAwMDAwOCAqLw0KI2RlZmluZSBSSV9DTVIzX1BDXzQgICAgICAgICAgICAgICAgICAgICgweDAwMTBVTCA8PCBSSV9DTVIzX1BDX1BvcykgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMTAgKi8NCiNkZWZpbmUgUklfQ01SM19QQ181ICAgICAgICAgICAgICAgICAgICAoMHgwMDIwVUwgPDwgUklfQ01SM19QQ19Qb3MpICAgICAgICAgICAgLyohPCAweDAwMDAwMDIwICovDQojZGVmaW5lIFJJX0NNUjNfUENfNiAgICAgICAgICAgICAgICAgICAgKDB4MDA0MFVMIDw8IFJJX0NNUjNfUENfUG9zKSAgICAgICAgICAgIC8qITwgMHgwMDAwMDA0MCAqLw0KI2RlZmluZSBSSV9DTVIzX1BDXzcgICAgICAgICAgICAgICAgICAgICgweDAwODBVTCA8PCBSSV9DTVIzX1BDX1BvcykgICAgICAgICAgICAvKiE8IDB4MDAwMDAwODAgKi8NCiNkZWZpbmUgUklfQ01SM19QQ184ICAgICAgICAgICAgICAgICAgICAoMHgwMTAwVUwgPDwgUklfQ01SM19QQ19Qb3MpICAgICAgICAgICAgLyohPCAweDAwMDAwMTAwICovDQojZGVmaW5lIFJJX0NNUjNfUENfOSAgICAgICAgICAgICAgICAgICAgKDB4MDIwMFVMIDw8IFJJX0NNUjNfUENfUG9zKSAgICAgICAgICAgIC8qITwgMHgwMDAwMDIwMCAqLw0KI2RlZmluZSBSSV9DTVIzX1BDXzEwICAgICAgICAgICAgICAgICAgICgweDA0MDBVTCA8PCBSSV9DTVIzX1BDX1BvcykgICAgICAgICAgICAvKiE8IDB4MDAwMDA0MDAgKi8NCiNkZWZpbmUgUklfQ01SM19QQ18xMSAgICAgICAgICAgICAgICAgICAoMHgwODAwVUwgPDwgUklfQ01SM19QQ19Qb3MpICAgICAgICAgICAgLyohPCAweDAwMDAwODAwICovDQojZGVmaW5lIFJJX0NNUjNfUENfMTIgICAgICAgICAgICAgICAgICAgKDB4MTAwMFVMIDw8IFJJX0NNUjNfUENfUG9zKSAgICAgICAgICAgIC8qITwgMHgwMDAwMTAwMCAqLw0KI2RlZmluZSBSSV9DTVIzX1BDXzEzICAgICAgICAgICAgICAgICAgICgweDIwMDBVTCA8PCBSSV9DTVIzX1BDX1BvcykgICAgICAgICAgICAvKiE8IDB4MDAwMDIwMDAgKi8NCiNkZWZpbmUgUklfQ01SM19QQ18xNCAgICAgICAgICAgICAgICAgICAoMHg0MDAwVUwgPDwgUklfQ01SM19QQ19Qb3MpICAgICAgICAgICAgLyohPCAweDAwMDA0MDAwICovDQojZGVmaW5lIFJJX0NNUjNfUENfMTUgICAgICAgICAgICAgICAgICAgKDB4ODAwMFVMIDw8IFJJX0NNUjNfUENfUG9zKSAgICAgICAgICAgIC8qITwgMHgwMDAwODAwMCAqLw0KDQovKioqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBSSV9DSUNSMyByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIFJJX0NJQ1IzX1BDX1BvcyAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJJX0NJQ1IzX1BDX01zayAgICAgICAgICAgICAgICAgKDB4RkZGRlVMIDw8IFJJX0NJQ1IzX1BDX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwRkZGRiAqLw0KI2RlZmluZSBSSV9DSUNSM19QQyAgICAgICAgICAgICAgICAgICAgIFJJX0NJQ1IzX1BDX01zayAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgUENbMTU6MF0gUG9ydCBDIHNlbGVjdGlvbiAqLw0KI2RlZmluZSBSSV9DSUNSM19QQ18wICAgICAgICAgICAgICAgICAgICgweDAwMDFVTCA8PCBSSV9DSUNSM19QQ19Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDEgKi8NCiNkZWZpbmUgUklfQ0lDUjNfUENfMSAgICAgICAgICAgICAgICAgICAoMHgwMDAyVUwgPDwgUklfQ0lDUjNfUENfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwMDAyICovDQojZGVmaW5lIFJJX0NJQ1IzX1BDXzIgICAgICAgICAgICAgICAgICAgKDB4MDAwNFVMIDw8IFJJX0NJQ1IzX1BDX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDAwNCAqLw0KI2RlZmluZSBSSV9DSUNSM19QQ18zICAgICAgICAgICAgICAgICAgICgweDAwMDhVTCA8PCBSSV9DSUNSM19QQ19Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDggKi8NCiNkZWZpbmUgUklfQ0lDUjNfUENfNCAgICAgICAgICAgICAgICAgICAoMHgwMDEwVUwgPDwgUklfQ0lDUjNfUENfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwMDEwICovDQojZGVmaW5lIFJJX0NJQ1IzX1BDXzUgICAgICAgICAgICAgICAgICAgKDB4MDAyMFVMIDw8IFJJX0NJQ1IzX1BDX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDAyMCAqLw0KI2RlZmluZSBSSV9DSUNSM19QQ182ICAgICAgICAgICAgICAgICAgICgweDAwNDBVTCA8PCBSSV9DSUNSM19QQ19Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDAwNDAgKi8NCiNkZWZpbmUgUklfQ0lDUjNfUENfNyAgICAgICAgICAgICAgICAgICAoMHgwMDgwVUwgPDwgUklfQ0lDUjNfUENfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwMDgwICovDQojZGVmaW5lIFJJX0NJQ1IzX1BDXzggICAgICAgICAgICAgICAgICAgKDB4MDEwMFVMIDw8IFJJX0NJQ1IzX1BDX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDEwMCAqLw0KI2RlZmluZSBSSV9DSUNSM19QQ185ICAgICAgICAgICAgICAgICAgICgweDAyMDBVTCA8PCBSSV9DSUNSM19QQ19Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDAyMDAgKi8NCiNkZWZpbmUgUklfQ0lDUjNfUENfMTAgICAgICAgICAgICAgICAgICAoMHgwNDAwVUwgPDwgUklfQ0lDUjNfUENfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwNDAwICovDQojZGVmaW5lIFJJX0NJQ1IzX1BDXzExICAgICAgICAgICAgICAgICAgKDB4MDgwMFVMIDw8IFJJX0NJQ1IzX1BDX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDgwMCAqLw0KI2RlZmluZSBSSV9DSUNSM19QQ18xMiAgICAgICAgICAgICAgICAgICgweDEwMDBVTCA8PCBSSV9DSUNSM19QQ19Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDEwMDAgKi8NCiNkZWZpbmUgUklfQ0lDUjNfUENfMTMgICAgICAgICAgICAgICAgICAoMHgyMDAwVUwgPDwgUklfQ0lDUjNfUENfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAyMDAwICovDQojZGVmaW5lIFJJX0NJQ1IzX1BDXzE0ICAgICAgICAgICAgICAgICAgKDB4NDAwMFVMIDw8IFJJX0NJQ1IzX1BDX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwNDAwMCAqLw0KI2RlZmluZSBSSV9DSUNSM19QQ18xNSAgICAgICAgICAgICAgICAgICgweDgwMDBVTCA8PCBSSV9DSUNSM19QQ19Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDgwMDAgKi8NCg0KLyoqKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgUklfQVNNUjQgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBSSV9BU01SNF9QRl9Qb3MgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSSV9BU01SNF9QRl9Nc2sgICAgICAgICAgICAgICAgICgweEZGRkZVTCA8PCBSSV9BU01SNF9QRl9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMEZGRkYgKi8NCiNkZWZpbmUgUklfQVNNUjRfUEYgICAgICAgICAgICAgICAgICAgICBSSV9BU01SNF9QRl9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBGWzE1OjBdIFBvcnQgRiBzZWxlY3Rpb24gKi8NCiNkZWZpbmUgUklfQVNNUjRfUEZfMCAgICAgICAgICAgICAgICAgICAoMHgwMDAxVUwgPDwgUklfQVNNUjRfUEZfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwMDAxICovDQojZGVmaW5lIFJJX0FTTVI0X1BGXzEgICAgICAgICAgICAgICAgICAgKDB4MDAwMlVMIDw8IFJJX0FTTVI0X1BGX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDAwMiAqLw0KI2RlZmluZSBSSV9BU01SNF9QRl8yICAgICAgICAgICAgICAgICAgICgweDAwMDRVTCA8PCBSSV9BU01SNF9QRl9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDQgKi8NCiNkZWZpbmUgUklfQVNNUjRfUEZfMyAgICAgICAgICAgICAgICAgICAoMHgwMDA4VUwgPDwgUklfQVNNUjRfUEZfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwMDA4ICovDQojZGVmaW5lIFJJX0FTTVI0X1BGXzQgICAgICAgICAgICAgICAgICAgKDB4MDAxMFVMIDw8IFJJX0FTTVI0X1BGX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDAxMCAqLw0KI2RlZmluZSBSSV9BU01SNF9QRl81ICAgICAgICAgICAgICAgICAgICgweDAwMjBVTCA8PCBSSV9BU01SNF9QRl9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDAwMjAgKi8NCiNkZWZpbmUgUklfQVNNUjRfUEZfNiAgICAgICAgICAgICAgICAgICAoMHgwMDQwVUwgPDwgUklfQVNNUjRfUEZfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwMDQwICovDQojZGVmaW5lIFJJX0FTTVI0X1BGXzcgICAgICAgICAgICAgICAgICAgKDB4MDA4MFVMIDw8IFJJX0FTTVI0X1BGX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDA4MCAqLw0KI2RlZmluZSBSSV9BU01SNF9QRl84ICAgICAgICAgICAgICAgICAgICgweDAxMDBVTCA8PCBSSV9BU01SNF9QRl9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDAxMDAgKi8NCiNkZWZpbmUgUklfQVNNUjRfUEZfOSAgICAgICAgICAgICAgICAgICAoMHgwMjAwVUwgPDwgUklfQVNNUjRfUEZfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwMjAwICovDQojZGVmaW5lIFJJX0FTTVI0X1BGXzEwICAgICAgICAgICAgICAgICAgKDB4MDQwMFVMIDw8IFJJX0FTTVI0X1BGX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDQwMCAqLw0KI2RlZmluZSBSSV9BU01SNF9QRl8xMSAgICAgICAgICAgICAgICAgICgweDA4MDBVTCA8PCBSSV9BU01SNF9QRl9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDA4MDAgKi8NCiNkZWZpbmUgUklfQVNNUjRfUEZfMTIgICAgICAgICAgICAgICAgICAoMHgxMDAwVUwgPDwgUklfQVNNUjRfUEZfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAxMDAwICovDQojZGVmaW5lIFJJX0FTTVI0X1BGXzEzICAgICAgICAgICAgICAgICAgKDB4MjAwMFVMIDw8IFJJX0FTTVI0X1BGX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMjAwMCAqLw0KI2RlZmluZSBSSV9BU01SNF9QRl8xNCAgICAgICAgICAgICAgICAgICgweDQwMDBVTCA8PCBSSV9BU01SNF9QRl9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDQwMDAgKi8NCiNkZWZpbmUgUklfQVNNUjRfUEZfMTUgICAgICAgICAgICAgICAgICAoMHg4MDAwVUwgPDwgUklfQVNNUjRfUEZfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDA4MDAwICovDQoNCi8qKioqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFJJX0NNUjQgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBSSV9DTVI0X1BGX1BvcyAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSSV9DTVI0X1BGX01zayAgICAgICAgICAgICAgICAgICgweEZGRkZVTCA8PCBSSV9DTVI0X1BGX1BvcykgICAgICAgICAgICAvKiE8IDB4MDAwMEZGRkYgKi8NCiNkZWZpbmUgUklfQ01SNF9QRiAgICAgICAgICAgICAgICAgICAgICBSSV9DTVI0X1BGX01zayAgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBGWzE1OjBdIFBvcnQgRiBzZWxlY3Rpb24gKi8NCiNkZWZpbmUgUklfQ01SNF9QRl8wICAgICAgICAgICAgICAgICAgICAoMHgwMDAxVUwgPDwgUklfQ01SNF9QRl9Qb3MpICAgICAgICAgICAgLyohPCAweDAwMDAwMDAxICovDQojZGVmaW5lIFJJX0NNUjRfUEZfMSAgICAgICAgICAgICAgICAgICAgKDB4MDAwMlVMIDw8IFJJX0NNUjRfUEZfUG9zKSAgICAgICAgICAgIC8qITwgMHgwMDAwMDAwMiAqLw0KI2RlZmluZSBSSV9DTVI0X1BGXzIgICAgICAgICAgICAgICAgICAgICgweDAwMDRVTCA8PCBSSV9DTVI0X1BGX1BvcykgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDQgKi8NCiNkZWZpbmUgUklfQ01SNF9QRl8zICAgICAgICAgICAgICAgICAgICAoMHgwMDA4VUwgPDwgUklfQ01SNF9QRl9Qb3MpICAgICAgICAgICAgLyohPCAweDAwMDAwMDA4ICovDQojZGVmaW5lIFJJX0NNUjRfUEZfNCAgICAgICAgICAgICAgICAgICAgKDB4MDAxMFVMIDw8IFJJX0NNUjRfUEZfUG9zKSAgICAgICAgICAgIC8qITwgMHgwMDAwMDAxMCAqLw0KI2RlZmluZSBSSV9DTVI0X1BGXzUgICAgICAgICAgICAgICAgICAgICgweDAwMjBVTCA8PCBSSV9DTVI0X1BGX1BvcykgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMjAgKi8NCiNkZWZpbmUgUklfQ01SNF9QRl82ICAgICAgICAgICAgICAgICAgICAoMHgwMDQwVUwgPDwgUklfQ01SNF9QRl9Qb3MpICAgICAgICAgICAgLyohPCAweDAwMDAwMDQwICovDQojZGVmaW5lIFJJX0NNUjRfUEZfNyAgICAgICAgICAgICAgICAgICAgKDB4MDA4MFVMIDw8IFJJX0NNUjRfUEZfUG9zKSAgICAgICAgICAgIC8qITwgMHgwMDAwMDA4MCAqLw0KI2RlZmluZSBSSV9DTVI0X1BGXzggICAgICAgICAgICAgICAgICAgICgweDAxMDBVTCA8PCBSSV9DTVI0X1BGX1BvcykgICAgICAgICAgICAvKiE8IDB4MDAwMDAxMDAgKi8NCiNkZWZpbmUgUklfQ01SNF9QRl85ICAgICAgICAgICAgICAgICAgICAoMHgwMjAwVUwgPDwgUklfQ01SNF9QRl9Qb3MpICAgICAgICAgICAgLyohPCAweDAwMDAwMjAwICovDQojZGVmaW5lIFJJX0NNUjRfUEZfMTAgICAgICAgICAgICAgICAgICAgKDB4MDQwMFVMIDw8IFJJX0NNUjRfUEZfUG9zKSAgICAgICAgICAgIC8qITwgMHgwMDAwMDQwMCAqLw0KI2RlZmluZSBSSV9DTVI0X1BGXzExICAgICAgICAgICAgICAgICAgICgweDA4MDBVTCA8PCBSSV9DTVI0X1BGX1BvcykgICAgICAgICAgICAvKiE8IDB4MDAwMDA4MDAgKi8NCiNkZWZpbmUgUklfQ01SNF9QRl8xMiAgICAgICAgICAgICAgICAgICAoMHgxMDAwVUwgPDwgUklfQ01SNF9QRl9Qb3MpICAgICAgICAgICAgLyohPCAweDAwMDAxMDAwICovDQojZGVmaW5lIFJJX0NNUjRfUEZfMTMgICAgICAgICAgICAgICAgICAgKDB4MjAwMFVMIDw8IFJJX0NNUjRfUEZfUG9zKSAgICAgICAgICAgIC8qITwgMHgwMDAwMjAwMCAqLw0KI2RlZmluZSBSSV9DTVI0X1BGXzE0ICAgICAgICAgICAgICAgICAgICgweDQwMDBVTCA8PCBSSV9DTVI0X1BGX1BvcykgICAgICAgICAgICAvKiE8IDB4MDAwMDQwMDAgKi8NCiNkZWZpbmUgUklfQ01SNF9QRl8xNSAgICAgICAgICAgICAgICAgICAoMHg4MDAwVUwgPDwgUklfQ01SNF9QRl9Qb3MpICAgICAgICAgICAgLyohPCAweDAwMDA4MDAwICovDQoNCi8qKioqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFJJX0NJQ1I0IHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgUklfQ0lDUjRfUEZfUG9zICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgUklfQ0lDUjRfUEZfTXNrICAgICAgICAgICAgICAgICAoMHhGRkZGVUwgPDwgUklfQ0lDUjRfUEZfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDBGRkZGICovDQojZGVmaW5lIFJJX0NJQ1I0X1BGICAgICAgICAgICAgICAgICAgICAgUklfQ0lDUjRfUEZfTXNrICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBQRlsxNTowXSBQb3J0IEYgc2VsZWN0aW9uICovDQojZGVmaW5lIFJJX0NJQ1I0X1BGXzAgICAgICAgICAgICAgICAgICAgKDB4MDAwMVVMIDw8IFJJX0NJQ1I0X1BGX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDAwMSAqLw0KI2RlZmluZSBSSV9DSUNSNF9QRl8xICAgICAgICAgICAgICAgICAgICgweDAwMDJVTCA8PCBSSV9DSUNSNF9QRl9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDIgKi8NCiNkZWZpbmUgUklfQ0lDUjRfUEZfMiAgICAgICAgICAgICAgICAgICAoMHgwMDA0VUwgPDwgUklfQ0lDUjRfUEZfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwMDA0ICovDQojZGVmaW5lIFJJX0NJQ1I0X1BGXzMgICAgICAgICAgICAgICAgICAgKDB4MDAwOFVMIDw8IFJJX0NJQ1I0X1BGX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDAwOCAqLw0KI2RlZmluZSBSSV9DSUNSNF9QRl80ICAgICAgICAgICAgICAgICAgICgweDAwMTBVTCA8PCBSSV9DSUNSNF9QRl9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDAwMTAgKi8NCiNkZWZpbmUgUklfQ0lDUjRfUEZfNSAgICAgICAgICAgICAgICAgICAoMHgwMDIwVUwgPDwgUklfQ0lDUjRfUEZfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwMDIwICovDQojZGVmaW5lIFJJX0NJQ1I0X1BGXzYgICAgICAgICAgICAgICAgICAgKDB4MDA0MFVMIDw8IFJJX0NJQ1I0X1BGX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDA0MCAqLw0KI2RlZmluZSBSSV9DSUNSNF9QRl83ICAgICAgICAgICAgICAgICAgICgweDAwODBVTCA8PCBSSV9DSUNSNF9QRl9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDAwODAgKi8NCiNkZWZpbmUgUklfQ0lDUjRfUEZfOCAgICAgICAgICAgICAgICAgICAoMHgwMTAwVUwgPDwgUklfQ0lDUjRfUEZfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwMTAwICovDQojZGVmaW5lIFJJX0NJQ1I0X1BGXzkgICAgICAgICAgICAgICAgICAgKDB4MDIwMFVMIDw8IFJJX0NJQ1I0X1BGX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDIwMCAqLw0KI2RlZmluZSBSSV9DSUNSNF9QRl8xMCAgICAgICAgICAgICAgICAgICgweDA0MDBVTCA8PCBSSV9DSUNSNF9QRl9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDA0MDAgKi8NCiNkZWZpbmUgUklfQ0lDUjRfUEZfMTEgICAgICAgICAgICAgICAgICAoMHgwODAwVUwgPDwgUklfQ0lDUjRfUEZfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwODAwICovDQojZGVmaW5lIFJJX0NJQ1I0X1BGXzEyICAgICAgICAgICAgICAgICAgKDB4MTAwMFVMIDw8IFJJX0NJQ1I0X1BGX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMTAwMCAqLw0KI2RlZmluZSBSSV9DSUNSNF9QRl8xMyAgICAgICAgICAgICAgICAgICgweDIwMDBVTCA8PCBSSV9DSUNSNF9QRl9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDIwMDAgKi8NCiNkZWZpbmUgUklfQ0lDUjRfUEZfMTQgICAgICAgICAgICAgICAgICAoMHg0MDAwVUwgPDwgUklfQ0lDUjRfUEZfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDA0MDAwICovDQojZGVmaW5lIFJJX0NJQ1I0X1BGXzE1ICAgICAgICAgICAgICAgICAgKDB4ODAwMFVMIDw8IFJJX0NJQ1I0X1BGX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwODAwMCAqLw0KDQovKioqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBSSV9BU01SNSByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIFJJX0FTTVI1X1BHX1BvcyAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJJX0FTTVI1X1BHX01zayAgICAgICAgICAgICAgICAgKDB4RkZGRlVMIDw8IFJJX0FTTVI1X1BHX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwRkZGRiAqLw0KI2RlZmluZSBSSV9BU01SNV9QRyAgICAgICAgICAgICAgICAgICAgIFJJX0FTTVI1X1BHX01zayAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgUEdbMTU6MF0gUG9ydCBHIHNlbGVjdGlvbiAqLw0KI2RlZmluZSBSSV9BU01SNV9QR18wICAgICAgICAgICAgICAgICAgICgweDAwMDFVTCA8PCBSSV9BU01SNV9QR19Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDEgKi8NCiNkZWZpbmUgUklfQVNNUjVfUEdfMSAgICAgICAgICAgICAgICAgICAoMHgwMDAyVUwgPDwgUklfQVNNUjVfUEdfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwMDAyICovDQojZGVmaW5lIFJJX0FTTVI1X1BHXzIgICAgICAgICAgICAgICAgICAgKDB4MDAwNFVMIDw8IFJJX0FTTVI1X1BHX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDAwNCAqLw0KI2RlZmluZSBSSV9BU01SNV9QR18zICAgICAgICAgICAgICAgICAgICgweDAwMDhVTCA8PCBSSV9BU01SNV9QR19Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDggKi8NCiNkZWZpbmUgUklfQVNNUjVfUEdfNCAgICAgICAgICAgICAgICAgICAoMHgwMDEwVUwgPDwgUklfQVNNUjVfUEdfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwMDEwICovDQojZGVmaW5lIFJJX0FTTVI1X1BHXzUgICAgICAgICAgICAgICAgICAgKDB4MDAyMFVMIDw8IFJJX0FTTVI1X1BHX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDAyMCAqLw0KI2RlZmluZSBSSV9BU01SNV9QR182ICAgICAgICAgICAgICAgICAgICgweDAwNDBVTCA8PCBSSV9BU01SNV9QR19Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDAwNDAgKi8NCiNkZWZpbmUgUklfQVNNUjVfUEdfNyAgICAgICAgICAgICAgICAgICAoMHgwMDgwVUwgPDwgUklfQVNNUjVfUEdfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwMDgwICovDQojZGVmaW5lIFJJX0FTTVI1X1BHXzggICAgICAgICAgICAgICAgICAgKDB4MDEwMFVMIDw8IFJJX0FTTVI1X1BHX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDEwMCAqLw0KI2RlZmluZSBSSV9BU01SNV9QR185ICAgICAgICAgICAgICAgICAgICgweDAyMDBVTCA8PCBSSV9BU01SNV9QR19Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDAyMDAgKi8NCiNkZWZpbmUgUklfQVNNUjVfUEdfMTAgICAgICAgICAgICAgICAgICAoMHgwNDAwVUwgPDwgUklfQVNNUjVfUEdfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwNDAwICovDQojZGVmaW5lIFJJX0FTTVI1X1BHXzExICAgICAgICAgICAgICAgICAgKDB4MDgwMFVMIDw8IFJJX0FTTVI1X1BHX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDgwMCAqLw0KI2RlZmluZSBSSV9BU01SNV9QR18xMiAgICAgICAgICAgICAgICAgICgweDEwMDBVTCA8PCBSSV9BU01SNV9QR19Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDEwMDAgKi8NCiNkZWZpbmUgUklfQVNNUjVfUEdfMTMgICAgICAgICAgICAgICAgICAoMHgyMDAwVUwgPDwgUklfQVNNUjVfUEdfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAyMDAwICovDQojZGVmaW5lIFJJX0FTTVI1X1BHXzE0ICAgICAgICAgICAgICAgICAgKDB4NDAwMFVMIDw8IFJJX0FTTVI1X1BHX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwNDAwMCAqLw0KI2RlZmluZSBSSV9BU01SNV9QR18xNSAgICAgICAgICAgICAgICAgICgweDgwMDBVTCA8PCBSSV9BU01SNV9QR19Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDgwMDAgKi8NCg0KLyoqKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgUklfQ01SNSByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIFJJX0NNUjVfUEdfUG9zICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFJJX0NNUjVfUEdfTXNrICAgICAgICAgICAgICAgICAgKDB4RkZGRlVMIDw8IFJJX0NNUjVfUEdfUG9zKSAgICAgICAgICAgIC8qITwgMHgwMDAwRkZGRiAqLw0KI2RlZmluZSBSSV9DTVI1X1BHICAgICAgICAgICAgICAgICAgICAgIFJJX0NNUjVfUEdfTXNrICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgUEdbMTU6MF0gUG9ydCBHIHNlbGVjdGlvbiAqLw0KI2RlZmluZSBSSV9DTVI1X1BHXzAgICAgICAgICAgICAgICAgICAgICgweDAwMDFVTCA8PCBSSV9DTVI1X1BHX1BvcykgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDEgKi8NCiNkZWZpbmUgUklfQ01SNV9QR18xICAgICAgICAgICAgICAgICAgICAoMHgwMDAyVUwgPDwgUklfQ01SNV9QR19Qb3MpICAgICAgICAgICAgLyohPCAweDAwMDAwMDAyICovDQojZGVmaW5lIFJJX0NNUjVfUEdfMiAgICAgICAgICAgICAgICAgICAgKDB4MDAwNFVMIDw8IFJJX0NNUjVfUEdfUG9zKSAgICAgICAgICAgIC8qITwgMHgwMDAwMDAwNCAqLw0KI2RlZmluZSBSSV9DTVI1X1BHXzMgICAgICAgICAgICAgICAgICAgICgweDAwMDhVTCA8PCBSSV9DTVI1X1BHX1BvcykgICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDggKi8NCiNkZWZpbmUgUklfQ01SNV9QR180ICAgICAgICAgICAgICAgICAgICAoMHgwMDEwVUwgPDwgUklfQ01SNV9QR19Qb3MpICAgICAgICAgICAgLyohPCAweDAwMDAwMDEwICovDQojZGVmaW5lIFJJX0NNUjVfUEdfNSAgICAgICAgICAgICAgICAgICAgKDB4MDAyMFVMIDw8IFJJX0NNUjVfUEdfUG9zKSAgICAgICAgICAgIC8qITwgMHgwMDAwMDAyMCAqLw0KI2RlZmluZSBSSV9DTVI1X1BHXzYgICAgICAgICAgICAgICAgICAgICgweDAwNDBVTCA8PCBSSV9DTVI1X1BHX1BvcykgICAgICAgICAgICAvKiE8IDB4MDAwMDAwNDAgKi8NCiNkZWZpbmUgUklfQ01SNV9QR183ICAgICAgICAgICAgICAgICAgICAoMHgwMDgwVUwgPDwgUklfQ01SNV9QR19Qb3MpICAgICAgICAgICAgLyohPCAweDAwMDAwMDgwICovDQojZGVmaW5lIFJJX0NNUjVfUEdfOCAgICAgICAgICAgICAgICAgICAgKDB4MDEwMFVMIDw8IFJJX0NNUjVfUEdfUG9zKSAgICAgICAgICAgIC8qITwgMHgwMDAwMDEwMCAqLw0KI2RlZmluZSBSSV9DTVI1X1BHXzkgICAgICAgICAgICAgICAgICAgICgweDAyMDBVTCA8PCBSSV9DTVI1X1BHX1BvcykgICAgICAgICAgICAvKiE8IDB4MDAwMDAyMDAgKi8NCiNkZWZpbmUgUklfQ01SNV9QR18xMCAgICAgICAgICAgICAgICAgICAoMHgwNDAwVUwgPDwgUklfQ01SNV9QR19Qb3MpICAgICAgICAgICAgLyohPCAweDAwMDAwNDAwICovDQojZGVmaW5lIFJJX0NNUjVfUEdfMTEgICAgICAgICAgICAgICAgICAgKDB4MDgwMFVMIDw8IFJJX0NNUjVfUEdfUG9zKSAgICAgICAgICAgIC8qITwgMHgwMDAwMDgwMCAqLw0KI2RlZmluZSBSSV9DTVI1X1BHXzEyICAgICAgICAgICAgICAgICAgICgweDEwMDBVTCA8PCBSSV9DTVI1X1BHX1BvcykgICAgICAgICAgICAvKiE8IDB4MDAwMDEwMDAgKi8NCiNkZWZpbmUgUklfQ01SNV9QR18xMyAgICAgICAgICAgICAgICAgICAoMHgyMDAwVUwgPDwgUklfQ01SNV9QR19Qb3MpICAgICAgICAgICAgLyohPCAweDAwMDAyMDAwICovDQojZGVmaW5lIFJJX0NNUjVfUEdfMTQgICAgICAgICAgICAgICAgICAgKDB4NDAwMFVMIDw8IFJJX0NNUjVfUEdfUG9zKSAgICAgICAgICAgIC8qITwgMHgwMDAwNDAwMCAqLw0KI2RlZmluZSBSSV9DTVI1X1BHXzE1ICAgICAgICAgICAgICAgICAgICgweDgwMDBVTCA8PCBSSV9DTVI1X1BHX1BvcykgICAgICAgICAgICAvKiE8IDB4MDAwMDgwMDAgKi8NCg0KLyoqKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgUklfQ0lDUjUgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBSSV9DSUNSNV9QR19Qb3MgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBSSV9DSUNSNV9QR19Nc2sgICAgICAgICAgICAgICAgICgweEZGRkZVTCA8PCBSSV9DSUNSNV9QR19Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMEZGRkYgKi8NCiNkZWZpbmUgUklfQ0lDUjVfUEcgICAgICAgICAgICAgICAgICAgICBSSV9DSUNSNV9QR19Nc2sgICAgICAgICAgICAgICAgICAgICAgICAvKiE8IFBHWzE1OjBdIFBvcnQgRyBzZWxlY3Rpb24gKi8NCiNkZWZpbmUgUklfQ0lDUjVfUEdfMCAgICAgICAgICAgICAgICAgICAoMHgwMDAxVUwgPDwgUklfQ0lDUjVfUEdfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwMDAxICovDQojZGVmaW5lIFJJX0NJQ1I1X1BHXzEgICAgICAgICAgICAgICAgICAgKDB4MDAwMlVMIDw8IFJJX0NJQ1I1X1BHX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDAwMiAqLw0KI2RlZmluZSBSSV9DSUNSNV9QR18yICAgICAgICAgICAgICAgICAgICgweDAwMDRVTCA8PCBSSV9DSUNSNV9QR19Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDQgKi8NCiNkZWZpbmUgUklfQ0lDUjVfUEdfMyAgICAgICAgICAgICAgICAgICAoMHgwMDA4VUwgPDwgUklfQ0lDUjVfUEdfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwMDA4ICovDQojZGVmaW5lIFJJX0NJQ1I1X1BHXzQgICAgICAgICAgICAgICAgICAgKDB4MDAxMFVMIDw8IFJJX0NJQ1I1X1BHX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDAxMCAqLw0KI2RlZmluZSBSSV9DSUNSNV9QR181ICAgICAgICAgICAgICAgICAgICgweDAwMjBVTCA8PCBSSV9DSUNSNV9QR19Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDAwMjAgKi8NCiNkZWZpbmUgUklfQ0lDUjVfUEdfNiAgICAgICAgICAgICAgICAgICAoMHgwMDQwVUwgPDwgUklfQ0lDUjVfUEdfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwMDQwICovDQojZGVmaW5lIFJJX0NJQ1I1X1BHXzcgICAgICAgICAgICAgICAgICAgKDB4MDA4MFVMIDw8IFJJX0NJQ1I1X1BHX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDA4MCAqLw0KI2RlZmluZSBSSV9DSUNSNV9QR184ICAgICAgICAgICAgICAgICAgICgweDAxMDBVTCA8PCBSSV9DSUNSNV9QR19Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDAxMDAgKi8NCiNkZWZpbmUgUklfQ0lDUjVfUEdfOSAgICAgICAgICAgICAgICAgICAoMHgwMjAwVUwgPDwgUklfQ0lDUjVfUEdfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwMjAwICovDQojZGVmaW5lIFJJX0NJQ1I1X1BHXzEwICAgICAgICAgICAgICAgICAgKDB4MDQwMFVMIDw8IFJJX0NJQ1I1X1BHX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDQwMCAqLw0KI2RlZmluZSBSSV9DSUNSNV9QR18xMSAgICAgICAgICAgICAgICAgICgweDA4MDBVTCA8PCBSSV9DSUNSNV9QR19Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDA4MDAgKi8NCiNkZWZpbmUgUklfQ0lDUjVfUEdfMTIgICAgICAgICAgICAgICAgICAoMHgxMDAwVUwgPDwgUklfQ0lDUjVfUEdfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAxMDAwICovDQojZGVmaW5lIFJJX0NJQ1I1X1BHXzEzICAgICAgICAgICAgICAgICAgKDB4MjAwMFVMIDw8IFJJX0NJQ1I1X1BHX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMjAwMCAqLw0KI2RlZmluZSBSSV9DSUNSNV9QR18xNCAgICAgICAgICAgICAgICAgICgweDQwMDBVTCA8PCBSSV9DSUNSNV9QR19Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDQwMDAgKi8NCiNkZWZpbmUgUklfQ0lDUjVfUEdfMTUgICAgICAgICAgICAgICAgICAoMHg4MDAwVUwgPDwgUklfQ0lDUjVfUEdfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDA4MDAwICovDQoNCi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovDQovKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLw0KLyogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgVGltZXJzIChUSU0pICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8NCi8qICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovDQovKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLw0KDQovKioqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFRJTV9DUjEgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBUSU1fQ1IxX0NFTl9Qb3MgICAgICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBUSU1fQ1IxX0NFTl9Nc2sgICAgICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgVElNX0NSMV9DRU5fUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDAwMDEgKi8NCiNkZWZpbmUgVElNX0NSMV9DRU4gICAgICAgICAgICAgICAgICAgICAgICAgVElNX0NSMV9DRU5fTXNrICAgICAgICAgICAgICAgICAgICAvKiE8Q291bnRlciBlbmFibGUgKi8NCiNkZWZpbmUgVElNX0NSMV9VRElTX1BvcyAgICAgICAgICAgICAgICAgICAgKDFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVElNX0NSMV9VRElTX01zayAgICAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IFRJTV9DUjFfVURJU19Qb3MpICAgICAgICAgLyohPCAweDAwMDAwMDAyICovDQojZGVmaW5lIFRJTV9DUjFfVURJUyAgICAgICAgICAgICAgICAgICAgICAgIFRJTV9DUjFfVURJU19Nc2sgICAgICAgICAgICAgICAgICAgLyohPFVwZGF0ZSBkaXNhYmxlICovDQojZGVmaW5lIFRJTV9DUjFfVVJTX1BvcyAgICAgICAgICAgICAgICAgICAgICgyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFRJTV9DUjFfVVJTX01zayAgICAgICAgICAgICAgICAgICAgICgweDFVTCA8PCBUSU1fQ1IxX1VSU19Qb3MpICAgICAgICAgIC8qITwgMHgwMDAwMDAwNCAqLw0KI2RlZmluZSBUSU1fQ1IxX1VSUyAgICAgICAgICAgICAgICAgICAgICAgICBUSU1fQ1IxX1VSU19Nc2sgICAgICAgICAgICAgICAgICAgIC8qITxVcGRhdGUgcmVxdWVzdCBzb3VyY2UgKi8NCiNkZWZpbmUgVElNX0NSMV9PUE1fUG9zICAgICAgICAgICAgICAgICAgICAgKDNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVElNX0NSMV9PUE1fTXNrICAgICAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IFRJTV9DUjFfT1BNX1BvcykgICAgICAgICAgLyohPCAweDAwMDAwMDA4ICovDQojZGVmaW5lIFRJTV9DUjFfT1BNICAgICAgICAgICAgICAgICAgICAgICAgIFRJTV9DUjFfT1BNX01zayAgICAgICAgICAgICAgICAgICAgLyohPE9uZSBwdWxzZSBtb2RlICovDQojZGVmaW5lIFRJTV9DUjFfRElSX1BvcyAgICAgICAgICAgICAgICAgICAgICg0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFRJTV9DUjFfRElSX01zayAgICAgICAgICAgICAgICAgICAgICgweDFVTCA8PCBUSU1fQ1IxX0RJUl9Qb3MpICAgICAgICAgIC8qITwgMHgwMDAwMDAxMCAqLw0KI2RlZmluZSBUSU1fQ1IxX0RJUiAgICAgICAgICAgICAgICAgICAgICAgICBUSU1fQ1IxX0RJUl9Nc2sgICAgICAgICAgICAgICAgICAgIC8qITxEaXJlY3Rpb24gKi8NCg0KI2RlZmluZSBUSU1fQ1IxX0NNU19Qb3MgICAgICAgICAgICAgICAgICAgICAoNVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBUSU1fQ1IxX0NNU19Nc2sgICAgICAgICAgICAgICAgICAgICAoMHgzVUwgPDwgVElNX0NSMV9DTVNfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDAwNjAgKi8NCiNkZWZpbmUgVElNX0NSMV9DTVMgICAgICAgICAgICAgICAgICAgICAgICAgVElNX0NSMV9DTVNfTXNrICAgICAgICAgICAgICAgICAgICAvKiE8Q01TWzE6MF0gYml0cyAoQ2VudGVyLWFsaWduZWQgbW9kZSBzZWxlY3Rpb24pICovDQojZGVmaW5lIFRJTV9DUjFfQ01TXzAgICAgICAgICAgICAgICAgICAgICAgICgweDFVTCA8PCBUSU1fQ1IxX0NNU19Qb3MpICAgICAgICAgIC8qITwgMHgwMDAwMDAyMCAqLw0KI2RlZmluZSBUSU1fQ1IxX0NNU18xICAgICAgICAgICAgICAgICAgICAgICAoMHgyVUwgPDwgVElNX0NSMV9DTVNfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDAwNDAgKi8NCg0KI2RlZmluZSBUSU1fQ1IxX0FSUEVfUG9zICAgICAgICAgICAgICAgICAgICAoN1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBUSU1fQ1IxX0FSUEVfTXNrICAgICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgVElNX0NSMV9BUlBFX1BvcykgICAgICAgICAvKiE8IDB4MDAwMDAwODAgKi8NCiNkZWZpbmUgVElNX0NSMV9BUlBFICAgICAgICAgICAgICAgICAgICAgICAgVElNX0NSMV9BUlBFX01zayAgICAgICAgICAgICAgICAgICAvKiE8QXV0by1yZWxvYWQgcHJlbG9hZCBlbmFibGUgKi8NCg0KI2RlZmluZSBUSU1fQ1IxX0NLRF9Qb3MgICAgICAgICAgICAgICAgICAgICAoOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBUSU1fQ1IxX0NLRF9Nc2sgICAgICAgICAgICAgICAgICAgICAoMHgzVUwgPDwgVElNX0NSMV9DS0RfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDAzMDAgKi8NCiNkZWZpbmUgVElNX0NSMV9DS0QgICAgICAgICAgICAgICAgICAgICAgICAgVElNX0NSMV9DS0RfTXNrICAgICAgICAgICAgICAgICAgICAvKiE8Q0tEWzE6MF0gYml0cyAoY2xvY2sgZGl2aXNpb24pICovDQojZGVmaW5lIFRJTV9DUjFfQ0tEXzAgICAgICAgICAgICAgICAgICAgICAgICgweDFVTCA8PCBUSU1fQ1IxX0NLRF9Qb3MpICAgICAgICAgIC8qITwgMHgwMDAwMDEwMCAqLw0KI2RlZmluZSBUSU1fQ1IxX0NLRF8xICAgICAgICAgICAgICAgICAgICAgICAoMHgyVUwgPDwgVElNX0NSMV9DS0RfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDAyMDAgKi8NCg0KLyoqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBUSU1fQ1IyIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgVElNX0NSMl9DQ0RTX1BvcyAgICAgICAgICAgICAgICAgICAgKDNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVElNX0NSMl9DQ0RTX01zayAgICAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IFRJTV9DUjJfQ0NEU19Qb3MpICAgICAgICAgLyohPCAweDAwMDAwMDA4ICovDQojZGVmaW5lIFRJTV9DUjJfQ0NEUyAgICAgICAgICAgICAgICAgICAgICAgIFRJTV9DUjJfQ0NEU19Nc2sgICAgICAgICAgICAgICAgICAgLyohPENhcHR1cmUvQ29tcGFyZSBETUEgU2VsZWN0aW9uICovDQoNCiNkZWZpbmUgVElNX0NSMl9NTVNfUG9zICAgICAgICAgICAgICAgICAgICAgKDRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVElNX0NSMl9NTVNfTXNrICAgICAgICAgICAgICAgICAgICAgKDB4N1VMIDw8IFRJTV9DUjJfTU1TX1BvcykgICAgICAgICAgLyohPCAweDAwMDAwMDcwICovDQojZGVmaW5lIFRJTV9DUjJfTU1TICAgICAgICAgICAgICAgICAgICAgICAgIFRJTV9DUjJfTU1TX01zayAgICAgICAgICAgICAgICAgICAgLyohPE1NU1syOjBdIGJpdHMgKE1hc3RlciBNb2RlIFNlbGVjdGlvbikgKi8NCiNkZWZpbmUgVElNX0NSMl9NTVNfMCAgICAgICAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IFRJTV9DUjJfTU1TX1BvcykgICAgICAgICAgLyohPCAweDAwMDAwMDEwICovDQojZGVmaW5lIFRJTV9DUjJfTU1TXzEgICAgICAgICAgICAgICAgICAgICAgICgweDJVTCA8PCBUSU1fQ1IyX01NU19Qb3MpICAgICAgICAgIC8qITwgMHgwMDAwMDAyMCAqLw0KI2RlZmluZSBUSU1fQ1IyX01NU18yICAgICAgICAgICAgICAgICAgICAgICAoMHg0VUwgPDwgVElNX0NSMl9NTVNfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDAwNDAgKi8NCg0KI2RlZmluZSBUSU1fQ1IyX1RJMVNfUG9zICAgICAgICAgICAgICAgICAgICAoN1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBUSU1fQ1IyX1RJMVNfTXNrICAgICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgVElNX0NSMl9USTFTX1BvcykgICAgICAgICAvKiE8IDB4MDAwMDAwODAgKi8NCiNkZWZpbmUgVElNX0NSMl9USTFTICAgICAgICAgICAgICAgICAgICAgICAgVElNX0NSMl9USTFTX01zayAgICAgICAgICAgICAgICAgICAvKiE8VEkxIFNlbGVjdGlvbiAqLw0KDQovKioqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFRJTV9TTUNSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBUSU1fU01DUl9TTVNfUG9zICAgICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBUSU1fU01DUl9TTVNfTXNrICAgICAgICAgICAgICAgICAgICAoMHg3VUwgPDwgVElNX1NNQ1JfU01TX1BvcykgICAgICAgICAvKiE8IDB4MDAwMDAwMDcgKi8NCiNkZWZpbmUgVElNX1NNQ1JfU01TICAgICAgICAgICAgICAgICAgICAgICAgVElNX1NNQ1JfU01TX01zayAgICAgICAgICAgICAgICAgICAvKiE8U01TWzI6MF0gYml0cyAoU2xhdmUgbW9kZSBzZWxlY3Rpb24pICovDQojZGVmaW5lIFRJTV9TTUNSX1NNU18wICAgICAgICAgICAgICAgICAgICAgICgweDFVTCA8PCBUSU1fU01DUl9TTVNfUG9zKSAgICAgICAgIC8qITwgMHgwMDAwMDAwMSAqLw0KI2RlZmluZSBUSU1fU01DUl9TTVNfMSAgICAgICAgICAgICAgICAgICAgICAoMHgyVUwgPDwgVElNX1NNQ1JfU01TX1BvcykgICAgICAgICAvKiE8IDB4MDAwMDAwMDIgKi8NCiNkZWZpbmUgVElNX1NNQ1JfU01TXzIgICAgICAgICAgICAgICAgICAgICAgKDB4NFVMIDw8IFRJTV9TTUNSX1NNU19Qb3MpICAgICAgICAgLyohPCAweDAwMDAwMDA0ICovDQoNCiNkZWZpbmUgVElNX1NNQ1JfT0NDU19Qb3MgICAgICAgICAgICAgICAgICAgKDNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVElNX1NNQ1JfT0NDU19Nc2sgICAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IFRJTV9TTUNSX09DQ1NfUG9zKSAgICAgICAgLyohPCAweDAwMDAwMDA4ICovDQojZGVmaW5lIFRJTV9TTUNSX09DQ1MgICAgICAgICAgICAgICAgICAgICAgIFRJTV9TTUNSX09DQ1NfTXNrICAgICAgICAgICAgICAgICAgLyohPCBPQ1JFRiBjbGVhciBzZWxlY3Rpb24gKi8NCg0KI2RlZmluZSBUSU1fU01DUl9UU19Qb3MgICAgICAgICAgICAgICAgICAgICAoNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBUSU1fU01DUl9UU19Nc2sgICAgICAgICAgICAgICAgICAgICAoMHg3VUwgPDwgVElNX1NNQ1JfVFNfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDAwNzAgKi8NCiNkZWZpbmUgVElNX1NNQ1JfVFMgICAgICAgICAgICAgICAgICAgICAgICAgVElNX1NNQ1JfVFNfTXNrICAgICAgICAgICAgICAgICAgICAvKiE8VFNbMjowXSBiaXRzIChUcmlnZ2VyIHNlbGVjdGlvbikgKi8NCiNkZWZpbmUgVElNX1NNQ1JfVFNfMCAgICAgICAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IFRJTV9TTUNSX1RTX1BvcykgICAgICAgICAgLyohPCAweDAwMDAwMDEwICovDQojZGVmaW5lIFRJTV9TTUNSX1RTXzEgICAgICAgICAgICAgICAgICAgICAgICgweDJVTCA8PCBUSU1fU01DUl9UU19Qb3MpICAgICAgICAgIC8qITwgMHgwMDAwMDAyMCAqLw0KI2RlZmluZSBUSU1fU01DUl9UU18yICAgICAgICAgICAgICAgICAgICAgICAoMHg0VUwgPDwgVElNX1NNQ1JfVFNfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDAwNDAgKi8NCg0KI2RlZmluZSBUSU1fU01DUl9NU01fUG9zICAgICAgICAgICAgICAgICAgICAoN1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBUSU1fU01DUl9NU01fTXNrICAgICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgVElNX1NNQ1JfTVNNX1BvcykgICAgICAgICAvKiE8IDB4MDAwMDAwODAgKi8NCiNkZWZpbmUgVElNX1NNQ1JfTVNNICAgICAgICAgICAgICAgICAgICAgICAgVElNX1NNQ1JfTVNNX01zayAgICAgICAgICAgICAgICAgICAvKiE8TWFzdGVyL3NsYXZlIG1vZGUgKi8NCg0KI2RlZmluZSBUSU1fU01DUl9FVEZfUG9zICAgICAgICAgICAgICAgICAgICAoOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBUSU1fU01DUl9FVEZfTXNrICAgICAgICAgICAgICAgICAgICAoMHhGVUwgPDwgVElNX1NNQ1JfRVRGX1BvcykgICAgICAgICAvKiE8IDB4MDAwMDBGMDAgKi8NCiNkZWZpbmUgVElNX1NNQ1JfRVRGICAgICAgICAgICAgICAgICAgICAgICAgVElNX1NNQ1JfRVRGX01zayAgICAgICAgICAgICAgICAgICAvKiE8RVRGWzM6MF0gYml0cyAoRXh0ZXJuYWwgdHJpZ2dlciBmaWx0ZXIpICovDQojZGVmaW5lIFRJTV9TTUNSX0VURl8wICAgICAgICAgICAgICAgICAgICAgICgweDFVTCA8PCBUSU1fU01DUl9FVEZfUG9zKSAgICAgICAgIC8qITwgMHgwMDAwMDEwMCAqLw0KI2RlZmluZSBUSU1fU01DUl9FVEZfMSAgICAgICAgICAgICAgICAgICAgICAoMHgyVUwgPDwgVElNX1NNQ1JfRVRGX1BvcykgICAgICAgICAvKiE8IDB4MDAwMDAyMDAgKi8NCiNkZWZpbmUgVElNX1NNQ1JfRVRGXzIgICAgICAgICAgICAgICAgICAgICAgKDB4NFVMIDw8IFRJTV9TTUNSX0VURl9Qb3MpICAgICAgICAgLyohPCAweDAwMDAwNDAwICovDQojZGVmaW5lIFRJTV9TTUNSX0VURl8zICAgICAgICAgICAgICAgICAgICAgICgweDhVTCA8PCBUSU1fU01DUl9FVEZfUG9zKSAgICAgICAgIC8qITwgMHgwMDAwMDgwMCAqLw0KDQojZGVmaW5lIFRJTV9TTUNSX0VUUFNfUG9zICAgICAgICAgICAgICAgICAgICgxMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFRJTV9TTUNSX0VUUFNfTXNrICAgICAgICAgICAgICAgICAgICgweDNVTCA8PCBUSU1fU01DUl9FVFBTX1BvcykgICAgICAgIC8qITwgMHgwMDAwMzAwMCAqLw0KI2RlZmluZSBUSU1fU01DUl9FVFBTICAgICAgICAgICAgICAgICAgICAgICBUSU1fU01DUl9FVFBTX01zayAgICAgICAgICAgICAgICAgIC8qITxFVFBTWzE6MF0gYml0cyAoRXh0ZXJuYWwgdHJpZ2dlciBwcmVzY2FsZXIpICovDQojZGVmaW5lIFRJTV9TTUNSX0VUUFNfMCAgICAgICAgICAgICAgICAgICAgICgweDFVTCA8PCBUSU1fU01DUl9FVFBTX1BvcykgICAgICAgIC8qITwgMHgwMDAwMTAwMCAqLw0KI2RlZmluZSBUSU1fU01DUl9FVFBTXzEgICAgICAgICAgICAgICAgICAgICAoMHgyVUwgPDwgVElNX1NNQ1JfRVRQU19Qb3MpICAgICAgICAvKiE8IDB4MDAwMDIwMDAgKi8NCg0KI2RlZmluZSBUSU1fU01DUl9FQ0VfUG9zICAgICAgICAgICAgICAgICAgICAoMTRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBUSU1fU01DUl9FQ0VfTXNrICAgICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgVElNX1NNQ1JfRUNFX1BvcykgICAgICAgICAvKiE8IDB4MDAwMDQwMDAgKi8NCiNkZWZpbmUgVElNX1NNQ1JfRUNFICAgICAgICAgICAgICAgICAgICAgICAgVElNX1NNQ1JfRUNFX01zayAgICAgICAgICAgICAgICAgICAvKiE8RXh0ZXJuYWwgY2xvY2sgZW5hYmxlICovDQojZGVmaW5lIFRJTV9TTUNSX0VUUF9Qb3MgICAgICAgICAgICAgICAgICAgICgxNVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFRJTV9TTUNSX0VUUF9Nc2sgICAgICAgICAgICAgICAgICAgICgweDFVTCA8PCBUSU1fU01DUl9FVFBfUG9zKSAgICAgICAgIC8qITwgMHgwMDAwODAwMCAqLw0KI2RlZmluZSBUSU1fU01DUl9FVFAgICAgICAgICAgICAgICAgICAgICAgICBUSU1fU01DUl9FVFBfTXNrICAgICAgICAgICAgICAgICAgIC8qITxFeHRlcm5hbCB0cmlnZ2VyIHBvbGFyaXR5ICovDQoNCi8qKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgVElNX0RJRVIgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIFRJTV9ESUVSX1VJRV9Qb3MgICAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFRJTV9ESUVSX1VJRV9Nc2sgICAgICAgICAgICAgICAgICAgICgweDFVTCA8PCBUSU1fRElFUl9VSUVfUG9zKSAgICAgICAgIC8qITwgMHgwMDAwMDAwMSAqLw0KI2RlZmluZSBUSU1fRElFUl9VSUUgICAgICAgICAgICAgICAgICAgICAgICBUSU1fRElFUl9VSUVfTXNrICAgICAgICAgICAgICAgICAgIC8qITxVcGRhdGUgaW50ZXJydXB0IGVuYWJsZSAqLw0KI2RlZmluZSBUSU1fRElFUl9DQzFJRV9Qb3MgICAgICAgICAgICAgICAgICAoMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBUSU1fRElFUl9DQzFJRV9Nc2sgICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgVElNX0RJRVJfQ0MxSUVfUG9zKSAgICAgICAvKiE8IDB4MDAwMDAwMDIgKi8NCiNkZWZpbmUgVElNX0RJRVJfQ0MxSUUgICAgICAgICAgICAgICAgICAgICAgVElNX0RJRVJfQ0MxSUVfTXNrICAgICAgICAgICAgICAgICAvKiE8Q2FwdHVyZS9Db21wYXJlIDEgaW50ZXJydXB0IGVuYWJsZSAqLw0KI2RlZmluZSBUSU1fRElFUl9DQzJJRV9Qb3MgICAgICAgICAgICAgICAgICAoMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBUSU1fRElFUl9DQzJJRV9Nc2sgICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgVElNX0RJRVJfQ0MySUVfUG9zKSAgICAgICAvKiE8IDB4MDAwMDAwMDQgKi8NCiNkZWZpbmUgVElNX0RJRVJfQ0MySUUgICAgICAgICAgICAgICAgICAgICAgVElNX0RJRVJfQ0MySUVfTXNrICAgICAgICAgICAgICAgICAvKiE8Q2FwdHVyZS9Db21wYXJlIDIgaW50ZXJydXB0IGVuYWJsZSAqLw0KI2RlZmluZSBUSU1fRElFUl9DQzNJRV9Qb3MgICAgICAgICAgICAgICAgICAoM1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBUSU1fRElFUl9DQzNJRV9Nc2sgICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgVElNX0RJRVJfQ0MzSUVfUG9zKSAgICAgICAvKiE8IDB4MDAwMDAwMDggKi8NCiNkZWZpbmUgVElNX0RJRVJfQ0MzSUUgICAgICAgICAgICAgICAgICAgICAgVElNX0RJRVJfQ0MzSUVfTXNrICAgICAgICAgICAgICAgICAvKiE8Q2FwdHVyZS9Db21wYXJlIDMgaW50ZXJydXB0IGVuYWJsZSAqLw0KI2RlZmluZSBUSU1fRElFUl9DQzRJRV9Qb3MgICAgICAgICAgICAgICAgICAoNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBUSU1fRElFUl9DQzRJRV9Nc2sgICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgVElNX0RJRVJfQ0M0SUVfUG9zKSAgICAgICAvKiE8IDB4MDAwMDAwMTAgKi8NCiNkZWZpbmUgVElNX0RJRVJfQ0M0SUUgICAgICAgICAgICAgICAgICAgICAgVElNX0RJRVJfQ0M0SUVfTXNrICAgICAgICAgICAgICAgICAvKiE8Q2FwdHVyZS9Db21wYXJlIDQgaW50ZXJydXB0IGVuYWJsZSAqLw0KI2RlZmluZSBUSU1fRElFUl9USUVfUG9zICAgICAgICAgICAgICAgICAgICAoNlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBUSU1fRElFUl9USUVfTXNrICAgICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgVElNX0RJRVJfVElFX1BvcykgICAgICAgICAvKiE8IDB4MDAwMDAwNDAgKi8NCiNkZWZpbmUgVElNX0RJRVJfVElFICAgICAgICAgICAgICAgICAgICAgICAgVElNX0RJRVJfVElFX01zayAgICAgICAgICAgICAgICAgICAvKiE8VHJpZ2dlciBpbnRlcnJ1cHQgZW5hYmxlICovDQojZGVmaW5lIFRJTV9ESUVSX1VERV9Qb3MgICAgICAgICAgICAgICAgICAgICg4VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFRJTV9ESUVSX1VERV9Nc2sgICAgICAgICAgICAgICAgICAgICgweDFVTCA8PCBUSU1fRElFUl9VREVfUG9zKSAgICAgICAgIC8qITwgMHgwMDAwMDEwMCAqLw0KI2RlZmluZSBUSU1fRElFUl9VREUgICAgICAgICAgICAgICAgICAgICAgICBUSU1fRElFUl9VREVfTXNrICAgICAgICAgICAgICAgICAgIC8qITxVcGRhdGUgRE1BIHJlcXVlc3QgZW5hYmxlICovDQojZGVmaW5lIFRJTV9ESUVSX0NDMURFX1BvcyAgICAgICAgICAgICAgICAgICg5VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFRJTV9ESUVSX0NDMURFX01zayAgICAgICAgICAgICAgICAgICgweDFVTCA8PCBUSU1fRElFUl9DQzFERV9Qb3MpICAgICAgIC8qITwgMHgwMDAwMDIwMCAqLw0KI2RlZmluZSBUSU1fRElFUl9DQzFERSAgICAgICAgICAgICAgICAgICAgICBUSU1fRElFUl9DQzFERV9Nc2sgICAgICAgICAgICAgICAgIC8qITxDYXB0dXJlL0NvbXBhcmUgMSBETUEgcmVxdWVzdCBlbmFibGUgKi8NCiNkZWZpbmUgVElNX0RJRVJfQ0MyREVfUG9zICAgICAgICAgICAgICAgICAgKDEwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVElNX0RJRVJfQ0MyREVfTXNrICAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IFRJTV9ESUVSX0NDMkRFX1BvcykgICAgICAgLyohPCAweDAwMDAwNDAwICovDQojZGVmaW5lIFRJTV9ESUVSX0NDMkRFICAgICAgICAgICAgICAgICAgICAgIFRJTV9ESUVSX0NDMkRFX01zayAgICAgICAgICAgICAgICAgLyohPENhcHR1cmUvQ29tcGFyZSAyIERNQSByZXF1ZXN0IGVuYWJsZSAqLw0KI2RlZmluZSBUSU1fRElFUl9DQzNERV9Qb3MgICAgICAgICAgICAgICAgICAoMTFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBUSU1fRElFUl9DQzNERV9Nc2sgICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgVElNX0RJRVJfQ0MzREVfUG9zKSAgICAgICAvKiE8IDB4MDAwMDA4MDAgKi8NCiNkZWZpbmUgVElNX0RJRVJfQ0MzREUgICAgICAgICAgICAgICAgICAgICAgVElNX0RJRVJfQ0MzREVfTXNrICAgICAgICAgICAgICAgICAvKiE8Q2FwdHVyZS9Db21wYXJlIDMgRE1BIHJlcXVlc3QgZW5hYmxlICovDQojZGVmaW5lIFRJTV9ESUVSX0NDNERFX1BvcyAgICAgICAgICAgICAgICAgICgxMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFRJTV9ESUVSX0NDNERFX01zayAgICAgICAgICAgICAgICAgICgweDFVTCA8PCBUSU1fRElFUl9DQzRERV9Qb3MpICAgICAgIC8qITwgMHgwMDAwMTAwMCAqLw0KI2RlZmluZSBUSU1fRElFUl9DQzRERSAgICAgICAgICAgICAgICAgICAgICBUSU1fRElFUl9DQzRERV9Nc2sgICAgICAgICAgICAgICAgIC8qITxDYXB0dXJlL0NvbXBhcmUgNCBETUEgcmVxdWVzdCBlbmFibGUgKi8NCiNkZWZpbmUgVElNX0RJRVJfQ09NREUgICAgICAgICAgICAgICAgICAgICAgKCh1aW50MTZfdCkweDIwMDBVKSAgICAgICAgICAgICAgICAvKiE8Q09NIERNQSByZXF1ZXN0IGVuYWJsZSAqLw0KI2RlZmluZSBUSU1fRElFUl9UREVfUG9zICAgICAgICAgICAgICAgICAgICAoMTRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBUSU1fRElFUl9UREVfTXNrICAgICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgVElNX0RJRVJfVERFX1BvcykgICAgICAgICAvKiE8IDB4MDAwMDQwMDAgKi8NCiNkZWZpbmUgVElNX0RJRVJfVERFICAgICAgICAgICAgICAgICAgICAgICAgVElNX0RJRVJfVERFX01zayAgICAgICAgICAgICAgICAgICAvKiE8VHJpZ2dlciBETUEgcmVxdWVzdCBlbmFibGUgKi8NCg0KLyoqKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgVElNX1NSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgVElNX1NSX1VJRl9Qb3MgICAgICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVElNX1NSX1VJRl9Nc2sgICAgICAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IFRJTV9TUl9VSUZfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwMDAxICovDQojZGVmaW5lIFRJTV9TUl9VSUYgICAgICAgICAgICAgICAgICAgICAgICAgIFRJTV9TUl9VSUZfTXNrICAgICAgICAgICAgICAgICAgICAgLyohPFVwZGF0ZSBpbnRlcnJ1cHQgRmxhZyAqLw0KI2RlZmluZSBUSU1fU1JfQ0MxSUZfUG9zICAgICAgICAgICAgICAgICAgICAoMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBUSU1fU1JfQ0MxSUZfTXNrICAgICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgVElNX1NSX0NDMUlGX1BvcykgICAgICAgICAvKiE8IDB4MDAwMDAwMDIgKi8NCiNkZWZpbmUgVElNX1NSX0NDMUlGICAgICAgICAgICAgICAgICAgICAgICAgVElNX1NSX0NDMUlGX01zayAgICAgICAgICAgICAgICAgICAvKiE8Q2FwdHVyZS9Db21wYXJlIDEgaW50ZXJydXB0IEZsYWcgKi8NCiNkZWZpbmUgVElNX1NSX0NDMklGX1BvcyAgICAgICAgICAgICAgICAgICAgKDJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVElNX1NSX0NDMklGX01zayAgICAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IFRJTV9TUl9DQzJJRl9Qb3MpICAgICAgICAgLyohPCAweDAwMDAwMDA0ICovDQojZGVmaW5lIFRJTV9TUl9DQzJJRiAgICAgICAgICAgICAgICAgICAgICAgIFRJTV9TUl9DQzJJRl9Nc2sgICAgICAgICAgICAgICAgICAgLyohPENhcHR1cmUvQ29tcGFyZSAyIGludGVycnVwdCBGbGFnICovDQojZGVmaW5lIFRJTV9TUl9DQzNJRl9Qb3MgICAgICAgICAgICAgICAgICAgICgzVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFRJTV9TUl9DQzNJRl9Nc2sgICAgICAgICAgICAgICAgICAgICgweDFVTCA8PCBUSU1fU1JfQ0MzSUZfUG9zKSAgICAgICAgIC8qITwgMHgwMDAwMDAwOCAqLw0KI2RlZmluZSBUSU1fU1JfQ0MzSUYgICAgICAgICAgICAgICAgICAgICAgICBUSU1fU1JfQ0MzSUZfTXNrICAgICAgICAgICAgICAgICAgIC8qITxDYXB0dXJlL0NvbXBhcmUgMyBpbnRlcnJ1cHQgRmxhZyAqLw0KI2RlZmluZSBUSU1fU1JfQ0M0SUZfUG9zICAgICAgICAgICAgICAgICAgICAoNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBUSU1fU1JfQ0M0SUZfTXNrICAgICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgVElNX1NSX0NDNElGX1BvcykgICAgICAgICAvKiE8IDB4MDAwMDAwMTAgKi8NCiNkZWZpbmUgVElNX1NSX0NDNElGICAgICAgICAgICAgICAgICAgICAgICAgVElNX1NSX0NDNElGX01zayAgICAgICAgICAgICAgICAgICAvKiE8Q2FwdHVyZS9Db21wYXJlIDQgaW50ZXJydXB0IEZsYWcgKi8NCiNkZWZpbmUgVElNX1NSX1RJRl9Qb3MgICAgICAgICAgICAgICAgICAgICAgKDZVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVElNX1NSX1RJRl9Nc2sgICAgICAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IFRJTV9TUl9USUZfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwMDQwICovDQojZGVmaW5lIFRJTV9TUl9USUYgICAgICAgICAgICAgICAgICAgICAgICAgIFRJTV9TUl9USUZfTXNrICAgICAgICAgICAgICAgICAgICAgLyohPFRyaWdnZXIgaW50ZXJydXB0IEZsYWcgKi8NCiNkZWZpbmUgVElNX1NSX0NDMU9GX1BvcyAgICAgICAgICAgICAgICAgICAgKDlVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVElNX1NSX0NDMU9GX01zayAgICAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IFRJTV9TUl9DQzFPRl9Qb3MpICAgICAgICAgLyohPCAweDAwMDAwMjAwICovDQojZGVmaW5lIFRJTV9TUl9DQzFPRiAgICAgICAgICAgICAgICAgICAgICAgIFRJTV9TUl9DQzFPRl9Nc2sgICAgICAgICAgICAgICAgICAgLyohPENhcHR1cmUvQ29tcGFyZSAxIE92ZXJjYXB0dXJlIEZsYWcgKi8NCiNkZWZpbmUgVElNX1NSX0NDMk9GX1BvcyAgICAgICAgICAgICAgICAgICAgKDEwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVElNX1NSX0NDMk9GX01zayAgICAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IFRJTV9TUl9DQzJPRl9Qb3MpICAgICAgICAgLyohPCAweDAwMDAwNDAwICovDQojZGVmaW5lIFRJTV9TUl9DQzJPRiAgICAgICAgICAgICAgICAgICAgICAgIFRJTV9TUl9DQzJPRl9Nc2sgICAgICAgICAgICAgICAgICAgLyohPENhcHR1cmUvQ29tcGFyZSAyIE92ZXJjYXB0dXJlIEZsYWcgKi8NCiNkZWZpbmUgVElNX1NSX0NDM09GX1BvcyAgICAgICAgICAgICAgICAgICAgKDExVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVElNX1NSX0NDM09GX01zayAgICAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IFRJTV9TUl9DQzNPRl9Qb3MpICAgICAgICAgLyohPCAweDAwMDAwODAwICovDQojZGVmaW5lIFRJTV9TUl9DQzNPRiAgICAgICAgICAgICAgICAgICAgICAgIFRJTV9TUl9DQzNPRl9Nc2sgICAgICAgICAgICAgICAgICAgLyohPENhcHR1cmUvQ29tcGFyZSAzIE92ZXJjYXB0dXJlIEZsYWcgKi8NCiNkZWZpbmUgVElNX1NSX0NDNE9GX1BvcyAgICAgICAgICAgICAgICAgICAgKDEyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVElNX1NSX0NDNE9GX01zayAgICAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IFRJTV9TUl9DQzRPRl9Qb3MpICAgICAgICAgLyohPCAweDAwMDAxMDAwICovDQojZGVmaW5lIFRJTV9TUl9DQzRPRiAgICAgICAgICAgICAgICAgICAgICAgIFRJTV9TUl9DQzRPRl9Nc2sgICAgICAgICAgICAgICAgICAgLyohPENhcHR1cmUvQ29tcGFyZSA0IE92ZXJjYXB0dXJlIEZsYWcgKi8NCg0KLyoqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBUSU1fRUdSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgVElNX0VHUl9VR19Qb3MgICAgICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVElNX0VHUl9VR19Nc2sgICAgICAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IFRJTV9FR1JfVUdfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwMDAxICovDQojZGVmaW5lIFRJTV9FR1JfVUcgICAgICAgICAgICAgICAgICAgICAgICAgIFRJTV9FR1JfVUdfTXNrICAgICAgICAgICAgICAgICAgICAgLyohPFVwZGF0ZSBHZW5lcmF0aW9uICovDQojZGVmaW5lIFRJTV9FR1JfQ0MxR19Qb3MgICAgICAgICAgICAgICAgICAgICgxVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFRJTV9FR1JfQ0MxR19Nc2sgICAgICAgICAgICAgICAgICAgICgweDFVTCA8PCBUSU1fRUdSX0NDMUdfUG9zKSAgICAgICAgIC8qITwgMHgwMDAwMDAwMiAqLw0KI2RlZmluZSBUSU1fRUdSX0NDMUcgICAgICAgICAgICAgICAgICAgICAgICBUSU1fRUdSX0NDMUdfTXNrICAgICAgICAgICAgICAgICAgIC8qITxDYXB0dXJlL0NvbXBhcmUgMSBHZW5lcmF0aW9uICovDQojZGVmaW5lIFRJTV9FR1JfQ0MyR19Qb3MgICAgICAgICAgICAgICAgICAgICgyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFRJTV9FR1JfQ0MyR19Nc2sgICAgICAgICAgICAgICAgICAgICgweDFVTCA8PCBUSU1fRUdSX0NDMkdfUG9zKSAgICAgICAgIC8qITwgMHgwMDAwMDAwNCAqLw0KI2RlZmluZSBUSU1fRUdSX0NDMkcgICAgICAgICAgICAgICAgICAgICAgICBUSU1fRUdSX0NDMkdfTXNrICAgICAgICAgICAgICAgICAgIC8qITxDYXB0dXJlL0NvbXBhcmUgMiBHZW5lcmF0aW9uICovDQojZGVmaW5lIFRJTV9FR1JfQ0MzR19Qb3MgICAgICAgICAgICAgICAgICAgICgzVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFRJTV9FR1JfQ0MzR19Nc2sgICAgICAgICAgICAgICAgICAgICgweDFVTCA8PCBUSU1fRUdSX0NDM0dfUG9zKSAgICAgICAgIC8qITwgMHgwMDAwMDAwOCAqLw0KI2RlZmluZSBUSU1fRUdSX0NDM0cgICAgICAgICAgICAgICAgICAgICAgICBUSU1fRUdSX0NDM0dfTXNrICAgICAgICAgICAgICAgICAgIC8qITxDYXB0dXJlL0NvbXBhcmUgMyBHZW5lcmF0aW9uICovDQojZGVmaW5lIFRJTV9FR1JfQ0M0R19Qb3MgICAgICAgICAgICAgICAgICAgICg0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFRJTV9FR1JfQ0M0R19Nc2sgICAgICAgICAgICAgICAgICAgICgweDFVTCA8PCBUSU1fRUdSX0NDNEdfUG9zKSAgICAgICAgIC8qITwgMHgwMDAwMDAxMCAqLw0KI2RlZmluZSBUSU1fRUdSX0NDNEcgICAgICAgICAgICAgICAgICAgICAgICBUSU1fRUdSX0NDNEdfTXNrICAgICAgICAgICAgICAgICAgIC8qITxDYXB0dXJlL0NvbXBhcmUgNCBHZW5lcmF0aW9uICovDQojZGVmaW5lIFRJTV9FR1JfVEdfUG9zICAgICAgICAgICAgICAgICAgICAgICg2VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFRJTV9FR1JfVEdfTXNrICAgICAgICAgICAgICAgICAgICAgICgweDFVTCA8PCBUSU1fRUdSX1RHX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDA0MCAqLw0KI2RlZmluZSBUSU1fRUdSX1RHICAgICAgICAgICAgICAgICAgICAgICAgICBUSU1fRUdSX1RHX01zayAgICAgICAgICAgICAgICAgICAgIC8qITxUcmlnZ2VyIEdlbmVyYXRpb24gKi8NCiAgICAgICAgICAgICAgICAgICANCi8qKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBUSU1fQ0NNUjEgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIFRJTV9DQ01SMV9DQzFTX1BvcyAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFRJTV9DQ01SMV9DQzFTX01zayAgICAgICAgICAgICAgICAgICgweDNVTCA8PCBUSU1fQ0NNUjFfQ0MxU19Qb3MpICAgICAgIC8qITwgMHgwMDAwMDAwMyAqLw0KI2RlZmluZSBUSU1fQ0NNUjFfQ0MxUyAgICAgICAgICAgICAgICAgICAgICBUSU1fQ0NNUjFfQ0MxU19Nc2sgICAgICAgICAgICAgICAgIC8qITxDQzFTWzE6MF0gYml0cyAoQ2FwdHVyZS9Db21wYXJlIDEgU2VsZWN0aW9uKSAqLw0KI2RlZmluZSBUSU1fQ0NNUjFfQ0MxU18wICAgICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgVElNX0NDTVIxX0NDMVNfUG9zKSAgICAgICAvKiE8IDB4MDAwMDAwMDEgKi8NCiNkZWZpbmUgVElNX0NDTVIxX0NDMVNfMSAgICAgICAgICAgICAgICAgICAgKDB4MlVMIDw8IFRJTV9DQ01SMV9DQzFTX1BvcykgICAgICAgLyohPCAweDAwMDAwMDAyICovDQoNCiNkZWZpbmUgVElNX0NDTVIxX09DMUZFX1BvcyAgICAgICAgICAgICAgICAgKDJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVElNX0NDTVIxX09DMUZFX01zayAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IFRJTV9DQ01SMV9PQzFGRV9Qb3MpICAgICAgLyohPCAweDAwMDAwMDA0ICovDQojZGVmaW5lIFRJTV9DQ01SMV9PQzFGRSAgICAgICAgICAgICAgICAgICAgIFRJTV9DQ01SMV9PQzFGRV9Nc2sgICAgICAgICAgICAgICAgLyohPE91dHB1dCBDb21wYXJlIDEgRmFzdCBlbmFibGUgKi8NCiNkZWZpbmUgVElNX0NDTVIxX09DMVBFX1BvcyAgICAgICAgICAgICAgICAgKDNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVElNX0NDTVIxX09DMVBFX01zayAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IFRJTV9DQ01SMV9PQzFQRV9Qb3MpICAgICAgLyohPCAweDAwMDAwMDA4ICovDQojZGVmaW5lIFRJTV9DQ01SMV9PQzFQRSAgICAgICAgICAgICAgICAgICAgIFRJTV9DQ01SMV9PQzFQRV9Nc2sgICAgICAgICAgICAgICAgLyohPE91dHB1dCBDb21wYXJlIDEgUHJlbG9hZCBlbmFibGUgKi8NCg0KI2RlZmluZSBUSU1fQ0NNUjFfT0MxTV9Qb3MgICAgICAgICAgICAgICAgICAoNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBUSU1fQ0NNUjFfT0MxTV9Nc2sgICAgICAgICAgICAgICAgICAoMHg3VUwgPDwgVElNX0NDTVIxX09DMU1fUG9zKSAgICAgICAvKiE8IDB4MDAwMDAwNzAgKi8NCiNkZWZpbmUgVElNX0NDTVIxX09DMU0gICAgICAgICAgICAgICAgICAgICAgVElNX0NDTVIxX09DMU1fTXNrICAgICAgICAgICAgICAgICAvKiE8T0MxTVsyOjBdIGJpdHMgKE91dHB1dCBDb21wYXJlIDEgTW9kZSkgKi8NCiNkZWZpbmUgVElNX0NDTVIxX09DMU1fMCAgICAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IFRJTV9DQ01SMV9PQzFNX1BvcykgICAgICAgLyohPCAweDAwMDAwMDEwICovDQojZGVmaW5lIFRJTV9DQ01SMV9PQzFNXzEgICAgICAgICAgICAgICAgICAgICgweDJVTCA8PCBUSU1fQ0NNUjFfT0MxTV9Qb3MpICAgICAgIC8qITwgMHgwMDAwMDAyMCAqLw0KI2RlZmluZSBUSU1fQ0NNUjFfT0MxTV8yICAgICAgICAgICAgICAgICAgICAoMHg0VUwgPDwgVElNX0NDTVIxX09DMU1fUG9zKSAgICAgICAvKiE8IDB4MDAwMDAwNDAgKi8NCg0KI2RlZmluZSBUSU1fQ0NNUjFfT0MxQ0VfUG9zICAgICAgICAgICAgICAgICAoN1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBUSU1fQ0NNUjFfT0MxQ0VfTXNrICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgVElNX0NDTVIxX09DMUNFX1BvcykgICAgICAvKiE8IDB4MDAwMDAwODAgKi8NCiNkZWZpbmUgVElNX0NDTVIxX09DMUNFICAgICAgICAgICAgICAgICAgICAgVElNX0NDTVIxX09DMUNFX01zayAgICAgICAgICAgICAgICAvKiE8T3V0cHV0IENvbXBhcmUgMUNsZWFyIEVuYWJsZSAqLw0KDQojZGVmaW5lIFRJTV9DQ01SMV9DQzJTX1BvcyAgICAgICAgICAgICAgICAgICg4VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFRJTV9DQ01SMV9DQzJTX01zayAgICAgICAgICAgICAgICAgICgweDNVTCA8PCBUSU1fQ0NNUjFfQ0MyU19Qb3MpICAgICAgIC8qITwgMHgwMDAwMDMwMCAqLw0KI2RlZmluZSBUSU1fQ0NNUjFfQ0MyUyAgICAgICAgICAgICAgICAgICAgICBUSU1fQ0NNUjFfQ0MyU19Nc2sgICAgICAgICAgICAgICAgIC8qITxDQzJTWzE6MF0gYml0cyAoQ2FwdHVyZS9Db21wYXJlIDIgU2VsZWN0aW9uKSAqLw0KI2RlZmluZSBUSU1fQ0NNUjFfQ0MyU18wICAgICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgVElNX0NDTVIxX0NDMlNfUG9zKSAgICAgICAvKiE8IDB4MDAwMDAxMDAgKi8NCiNkZWZpbmUgVElNX0NDTVIxX0NDMlNfMSAgICAgICAgICAgICAgICAgICAgKDB4MlVMIDw8IFRJTV9DQ01SMV9DQzJTX1BvcykgICAgICAgLyohPCAweDAwMDAwMjAwICovDQoNCiNkZWZpbmUgVElNX0NDTVIxX09DMkZFX1BvcyAgICAgICAgICAgICAgICAgKDEwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVElNX0NDTVIxX09DMkZFX01zayAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IFRJTV9DQ01SMV9PQzJGRV9Qb3MpICAgICAgLyohPCAweDAwMDAwNDAwICovDQojZGVmaW5lIFRJTV9DQ01SMV9PQzJGRSAgICAgICAgICAgICAgICAgICAgIFRJTV9DQ01SMV9PQzJGRV9Nc2sgICAgICAgICAgICAgICAgLyohPE91dHB1dCBDb21wYXJlIDIgRmFzdCBlbmFibGUgKi8NCiNkZWZpbmUgVElNX0NDTVIxX09DMlBFX1BvcyAgICAgICAgICAgICAgICAgKDExVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVElNX0NDTVIxX09DMlBFX01zayAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IFRJTV9DQ01SMV9PQzJQRV9Qb3MpICAgICAgLyohPCAweDAwMDAwODAwICovDQojZGVmaW5lIFRJTV9DQ01SMV9PQzJQRSAgICAgICAgICAgICAgICAgICAgIFRJTV9DQ01SMV9PQzJQRV9Nc2sgICAgICAgICAgICAgICAgLyohPE91dHB1dCBDb21wYXJlIDIgUHJlbG9hZCBlbmFibGUgKi8NCg0KI2RlZmluZSBUSU1fQ0NNUjFfT0MyTV9Qb3MgICAgICAgICAgICAgICAgICAoMTJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBUSU1fQ0NNUjFfT0MyTV9Nc2sgICAgICAgICAgICAgICAgICAoMHg3VUwgPDwgVElNX0NDTVIxX09DMk1fUG9zKSAgICAgICAvKiE8IDB4MDAwMDcwMDAgKi8NCiNkZWZpbmUgVElNX0NDTVIxX09DMk0gICAgICAgICAgICAgICAgICAgICAgVElNX0NDTVIxX09DMk1fTXNrICAgICAgICAgICAgICAgICAvKiE8T0MyTVsyOjBdIGJpdHMgKE91dHB1dCBDb21wYXJlIDIgTW9kZSkgKi8NCiNkZWZpbmUgVElNX0NDTVIxX09DMk1fMCAgICAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IFRJTV9DQ01SMV9PQzJNX1BvcykgICAgICAgLyohPCAweDAwMDAxMDAwICovDQojZGVmaW5lIFRJTV9DQ01SMV9PQzJNXzEgICAgICAgICAgICAgICAgICAgICgweDJVTCA8PCBUSU1fQ0NNUjFfT0MyTV9Qb3MpICAgICAgIC8qITwgMHgwMDAwMjAwMCAqLw0KI2RlZmluZSBUSU1fQ0NNUjFfT0MyTV8yICAgICAgICAgICAgICAgICAgICAoMHg0VUwgPDwgVElNX0NDTVIxX09DMk1fUG9zKSAgICAgICAvKiE8IDB4MDAwMDQwMDAgKi8NCg0KI2RlZmluZSBUSU1fQ0NNUjFfT0MyQ0VfUG9zICAgICAgICAgICAgICAgICAoMTVVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBUSU1fQ0NNUjFfT0MyQ0VfTXNrICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgVElNX0NDTVIxX09DMkNFX1BvcykgICAgICAvKiE8IDB4MDAwMDgwMDAgKi8NCiNkZWZpbmUgVElNX0NDTVIxX09DMkNFICAgICAgICAgICAgICAgICAgICAgVElNX0NDTVIxX09DMkNFX01zayAgICAgICAgICAgICAgICAvKiE8T3V0cHV0IENvbXBhcmUgMiBDbGVhciBFbmFibGUgKi8NCg0KLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi8NCg0KI2RlZmluZSBUSU1fQ0NNUjFfSUMxUFNDX1BvcyAgICAgICAgICAgICAgICAoMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBUSU1fQ0NNUjFfSUMxUFNDX01zayAgICAgICAgICAgICAgICAoMHgzVUwgPDwgVElNX0NDTVIxX0lDMVBTQ19Qb3MpICAgICAvKiE8IDB4MDAwMDAwMEMgKi8NCiNkZWZpbmUgVElNX0NDTVIxX0lDMVBTQyAgICAgICAgICAgICAgICAgICAgVElNX0NDTVIxX0lDMVBTQ19Nc2sgICAgICAgICAgICAgICAvKiE8SUMxUFNDWzE6MF0gYml0cyAoSW5wdXQgQ2FwdHVyZSAxIFByZXNjYWxlcikgKi8NCiNkZWZpbmUgVElNX0NDTVIxX0lDMVBTQ18wICAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IFRJTV9DQ01SMV9JQzFQU0NfUG9zKSAgICAgLyohPCAweDAwMDAwMDA0ICovDQojZGVmaW5lIFRJTV9DQ01SMV9JQzFQU0NfMSAgICAgICAgICAgICAgICAgICgweDJVTCA8PCBUSU1fQ0NNUjFfSUMxUFNDX1BvcykgICAgIC8qITwgMHgwMDAwMDAwOCAqLw0KDQojZGVmaW5lIFRJTV9DQ01SMV9JQzFGX1BvcyAgICAgICAgICAgICAgICAgICg0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFRJTV9DQ01SMV9JQzFGX01zayAgICAgICAgICAgICAgICAgICgweEZVTCA8PCBUSU1fQ0NNUjFfSUMxRl9Qb3MpICAgICAgIC8qITwgMHgwMDAwMDBGMCAqLw0KI2RlZmluZSBUSU1fQ0NNUjFfSUMxRiAgICAgICAgICAgICAgICAgICAgICBUSU1fQ0NNUjFfSUMxRl9Nc2sgICAgICAgICAgICAgICAgIC8qITxJQzFGWzM6MF0gYml0cyAoSW5wdXQgQ2FwdHVyZSAxIEZpbHRlcikgKi8NCiNkZWZpbmUgVElNX0NDTVIxX0lDMUZfMCAgICAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IFRJTV9DQ01SMV9JQzFGX1BvcykgICAgICAgLyohPCAweDAwMDAwMDEwICovDQojZGVmaW5lIFRJTV9DQ01SMV9JQzFGXzEgICAgICAgICAgICAgICAgICAgICgweDJVTCA8PCBUSU1fQ0NNUjFfSUMxRl9Qb3MpICAgICAgIC8qITwgMHgwMDAwMDAyMCAqLw0KI2RlZmluZSBUSU1fQ0NNUjFfSUMxRl8yICAgICAgICAgICAgICAgICAgICAoMHg0VUwgPDwgVElNX0NDTVIxX0lDMUZfUG9zKSAgICAgICAvKiE8IDB4MDAwMDAwNDAgKi8NCiNkZWZpbmUgVElNX0NDTVIxX0lDMUZfMyAgICAgICAgICAgICAgICAgICAgKDB4OFVMIDw8IFRJTV9DQ01SMV9JQzFGX1BvcykgICAgICAgLyohPCAweDAwMDAwMDgwICovDQoNCiNkZWZpbmUgVElNX0NDTVIxX0lDMlBTQ19Qb3MgICAgICAgICAgICAgICAgKDEwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVElNX0NDTVIxX0lDMlBTQ19Nc2sgICAgICAgICAgICAgICAgKDB4M1VMIDw8IFRJTV9DQ01SMV9JQzJQU0NfUG9zKSAgICAgLyohPCAweDAwMDAwQzAwICovDQojZGVmaW5lIFRJTV9DQ01SMV9JQzJQU0MgICAgICAgICAgICAgICAgICAgIFRJTV9DQ01SMV9JQzJQU0NfTXNrICAgICAgICAgICAgICAgLyohPElDMlBTQ1sxOjBdIGJpdHMgKElucHV0IENhcHR1cmUgMiBQcmVzY2FsZXIpICovDQojZGVmaW5lIFRJTV9DQ01SMV9JQzJQU0NfMCAgICAgICAgICAgICAgICAgICgweDFVTCA8PCBUSU1fQ0NNUjFfSUMyUFNDX1BvcykgICAgIC8qITwgMHgwMDAwMDQwMCAqLw0KI2RlZmluZSBUSU1fQ0NNUjFfSUMyUFNDXzEgICAgICAgICAgICAgICAgICAoMHgyVUwgPDwgVElNX0NDTVIxX0lDMlBTQ19Qb3MpICAgICAvKiE8IDB4MDAwMDA4MDAgKi8NCg0KI2RlZmluZSBUSU1fQ0NNUjFfSUMyRl9Qb3MgICAgICAgICAgICAgICAgICAoMTJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBUSU1fQ0NNUjFfSUMyRl9Nc2sgICAgICAgICAgICAgICAgICAoMHhGVUwgPDwgVElNX0NDTVIxX0lDMkZfUG9zKSAgICAgICAvKiE8IDB4MDAwMEYwMDAgKi8NCiNkZWZpbmUgVElNX0NDTVIxX0lDMkYgICAgICAgICAgICAgICAgICAgICAgVElNX0NDTVIxX0lDMkZfTXNrICAgICAgICAgICAgICAgICAvKiE8SUMyRlszOjBdIGJpdHMgKElucHV0IENhcHR1cmUgMiBGaWx0ZXIpICovDQojZGVmaW5lIFRJTV9DQ01SMV9JQzJGXzAgICAgICAgICAgICAgICAgICAgICgweDFVTCA8PCBUSU1fQ0NNUjFfSUMyRl9Qb3MpICAgICAgIC8qITwgMHgwMDAwMTAwMCAqLw0KI2RlZmluZSBUSU1fQ0NNUjFfSUMyRl8xICAgICAgICAgICAgICAgICAgICAoMHgyVUwgPDwgVElNX0NDTVIxX0lDMkZfUG9zKSAgICAgICAvKiE8IDB4MDAwMDIwMDAgKi8NCiNkZWZpbmUgVElNX0NDTVIxX0lDMkZfMiAgICAgICAgICAgICAgICAgICAgKDB4NFVMIDw8IFRJTV9DQ01SMV9JQzJGX1BvcykgICAgICAgLyohPCAweDAwMDA0MDAwICovDQojZGVmaW5lIFRJTV9DQ01SMV9JQzJGXzMgICAgICAgICAgICAgICAgICAgICgweDhVTCA8PCBUSU1fQ0NNUjFfSUMyRl9Qb3MpICAgICAgIC8qITwgMHgwMDAwODAwMCAqLw0KDQovKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgVElNX0NDTVIyIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBUSU1fQ0NNUjJfQ0MzU19Qb3MgICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBUSU1fQ0NNUjJfQ0MzU19Nc2sgICAgICAgICAgICAgICAgICAoMHgzVUwgPDwgVElNX0NDTVIyX0NDM1NfUG9zKSAgICAgICAvKiE8IDB4MDAwMDAwMDMgKi8NCiNkZWZpbmUgVElNX0NDTVIyX0NDM1MgICAgICAgICAgICAgICAgICAgICAgVElNX0NDTVIyX0NDM1NfTXNrICAgICAgICAgICAgICAgICAvKiE8Q0MzU1sxOjBdIGJpdHMgKENhcHR1cmUvQ29tcGFyZSAzIFNlbGVjdGlvbikgKi8NCiNkZWZpbmUgVElNX0NDTVIyX0NDM1NfMCAgICAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IFRJTV9DQ01SMl9DQzNTX1BvcykgICAgICAgLyohPCAweDAwMDAwMDAxICovDQojZGVmaW5lIFRJTV9DQ01SMl9DQzNTXzEgICAgICAgICAgICAgICAgICAgICgweDJVTCA8PCBUSU1fQ0NNUjJfQ0MzU19Qb3MpICAgICAgIC8qITwgMHgwMDAwMDAwMiAqLw0KDQojZGVmaW5lIFRJTV9DQ01SMl9PQzNGRV9Qb3MgICAgICAgICAgICAgICAgICgyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFRJTV9DQ01SMl9PQzNGRV9Nc2sgICAgICAgICAgICAgICAgICgweDFVTCA8PCBUSU1fQ0NNUjJfT0MzRkVfUG9zKSAgICAgIC8qITwgMHgwMDAwMDAwNCAqLw0KI2RlZmluZSBUSU1fQ0NNUjJfT0MzRkUgICAgICAgICAgICAgICAgICAgICBUSU1fQ0NNUjJfT0MzRkVfTXNrICAgICAgICAgICAgICAgIC8qITxPdXRwdXQgQ29tcGFyZSAzIEZhc3QgZW5hYmxlICovDQojZGVmaW5lIFRJTV9DQ01SMl9PQzNQRV9Qb3MgICAgICAgICAgICAgICAgICgzVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFRJTV9DQ01SMl9PQzNQRV9Nc2sgICAgICAgICAgICAgICAgICgweDFVTCA8PCBUSU1fQ0NNUjJfT0MzUEVfUG9zKSAgICAgIC8qITwgMHgwMDAwMDAwOCAqLw0KI2RlZmluZSBUSU1fQ0NNUjJfT0MzUEUgICAgICAgICAgICAgICAgICAgICBUSU1fQ0NNUjJfT0MzUEVfTXNrICAgICAgICAgICAgICAgIC8qITxPdXRwdXQgQ29tcGFyZSAzIFByZWxvYWQgZW5hYmxlICovDQoNCiNkZWZpbmUgVElNX0NDTVIyX09DM01fUG9zICAgICAgICAgICAgICAgICAgKDRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVElNX0NDTVIyX09DM01fTXNrICAgICAgICAgICAgICAgICAgKDB4N1VMIDw8IFRJTV9DQ01SMl9PQzNNX1BvcykgICAgICAgLyohPCAweDAwMDAwMDcwICovDQojZGVmaW5lIFRJTV9DQ01SMl9PQzNNICAgICAgICAgICAgICAgICAgICAgIFRJTV9DQ01SMl9PQzNNX01zayAgICAgICAgICAgICAgICAgLyohPE9DM01bMjowXSBiaXRzIChPdXRwdXQgQ29tcGFyZSAzIE1vZGUpICovDQojZGVmaW5lIFRJTV9DQ01SMl9PQzNNXzAgICAgICAgICAgICAgICAgICAgICgweDFVTCA8PCBUSU1fQ0NNUjJfT0MzTV9Qb3MpICAgICAgIC8qITwgMHgwMDAwMDAxMCAqLw0KI2RlZmluZSBUSU1fQ0NNUjJfT0MzTV8xICAgICAgICAgICAgICAgICAgICAoMHgyVUwgPDwgVElNX0NDTVIyX09DM01fUG9zKSAgICAgICAvKiE8IDB4MDAwMDAwMjAgKi8NCiNkZWZpbmUgVElNX0NDTVIyX09DM01fMiAgICAgICAgICAgICAgICAgICAgKDB4NFVMIDw8IFRJTV9DQ01SMl9PQzNNX1BvcykgICAgICAgLyohPCAweDAwMDAwMDQwICovDQoNCiNkZWZpbmUgVElNX0NDTVIyX09DM0NFX1BvcyAgICAgICAgICAgICAgICAgKDdVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVElNX0NDTVIyX09DM0NFX01zayAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IFRJTV9DQ01SMl9PQzNDRV9Qb3MpICAgICAgLyohPCAweDAwMDAwMDgwICovDQojZGVmaW5lIFRJTV9DQ01SMl9PQzNDRSAgICAgICAgICAgICAgICAgICAgIFRJTV9DQ01SMl9PQzNDRV9Nc2sgICAgICAgICAgICAgICAgLyohPE91dHB1dCBDb21wYXJlIDMgQ2xlYXIgRW5hYmxlICovDQoNCiNkZWZpbmUgVElNX0NDTVIyX0NDNFNfUG9zICAgICAgICAgICAgICAgICAgKDhVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVElNX0NDTVIyX0NDNFNfTXNrICAgICAgICAgICAgICAgICAgKDB4M1VMIDw8IFRJTV9DQ01SMl9DQzRTX1BvcykgICAgICAgLyohPCAweDAwMDAwMzAwICovDQojZGVmaW5lIFRJTV9DQ01SMl9DQzRTICAgICAgICAgICAgICAgICAgICAgIFRJTV9DQ01SMl9DQzRTX01zayAgICAgICAgICAgICAgICAgLyohPENDNFNbMTowXSBiaXRzIChDYXB0dXJlL0NvbXBhcmUgNCBTZWxlY3Rpb24pICovDQojZGVmaW5lIFRJTV9DQ01SMl9DQzRTXzAgICAgICAgICAgICAgICAgICAgICgweDFVTCA8PCBUSU1fQ0NNUjJfQ0M0U19Qb3MpICAgICAgIC8qITwgMHgwMDAwMDEwMCAqLw0KI2RlZmluZSBUSU1fQ0NNUjJfQ0M0U18xICAgICAgICAgICAgICAgICAgICAoMHgyVUwgPDwgVElNX0NDTVIyX0NDNFNfUG9zKSAgICAgICAvKiE8IDB4MDAwMDAyMDAgKi8NCg0KI2RlZmluZSBUSU1fQ0NNUjJfT0M0RkVfUG9zICAgICAgICAgICAgICAgICAoMTBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBUSU1fQ0NNUjJfT0M0RkVfTXNrICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgVElNX0NDTVIyX09DNEZFX1BvcykgICAgICAvKiE8IDB4MDAwMDA0MDAgKi8NCiNkZWZpbmUgVElNX0NDTVIyX09DNEZFICAgICAgICAgICAgICAgICAgICAgVElNX0NDTVIyX09DNEZFX01zayAgICAgICAgICAgICAgICAvKiE8T3V0cHV0IENvbXBhcmUgNCBGYXN0IGVuYWJsZSAqLw0KI2RlZmluZSBUSU1fQ0NNUjJfT0M0UEVfUG9zICAgICAgICAgICAgICAgICAoMTFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBUSU1fQ0NNUjJfT0M0UEVfTXNrICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgVElNX0NDTVIyX09DNFBFX1BvcykgICAgICAvKiE8IDB4MDAwMDA4MDAgKi8NCiNkZWZpbmUgVElNX0NDTVIyX09DNFBFICAgICAgICAgICAgICAgICAgICAgVElNX0NDTVIyX09DNFBFX01zayAgICAgICAgICAgICAgICAvKiE8T3V0cHV0IENvbXBhcmUgNCBQcmVsb2FkIGVuYWJsZSAqLw0KDQojZGVmaW5lIFRJTV9DQ01SMl9PQzRNX1BvcyAgICAgICAgICAgICAgICAgICgxMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFRJTV9DQ01SMl9PQzRNX01zayAgICAgICAgICAgICAgICAgICgweDdVTCA8PCBUSU1fQ0NNUjJfT0M0TV9Qb3MpICAgICAgIC8qITwgMHgwMDAwNzAwMCAqLw0KI2RlZmluZSBUSU1fQ0NNUjJfT0M0TSAgICAgICAgICAgICAgICAgICAgICBUSU1fQ0NNUjJfT0M0TV9Nc2sgICAgICAgICAgICAgICAgIC8qITxPQzRNWzI6MF0gYml0cyAoT3V0cHV0IENvbXBhcmUgNCBNb2RlKSAqLw0KI2RlZmluZSBUSU1fQ0NNUjJfT0M0TV8wICAgICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgVElNX0NDTVIyX09DNE1fUG9zKSAgICAgICAvKiE8IDB4MDAwMDEwMDAgKi8NCiNkZWZpbmUgVElNX0NDTVIyX09DNE1fMSAgICAgICAgICAgICAgICAgICAgKDB4MlVMIDw8IFRJTV9DQ01SMl9PQzRNX1BvcykgICAgICAgLyohPCAweDAwMDAyMDAwICovDQojZGVmaW5lIFRJTV9DQ01SMl9PQzRNXzIgICAgICAgICAgICAgICAgICAgICgweDRVTCA8PCBUSU1fQ0NNUjJfT0M0TV9Qb3MpICAgICAgIC8qITwgMHgwMDAwNDAwMCAqLw0KDQojZGVmaW5lIFRJTV9DQ01SMl9PQzRDRV9Qb3MgICAgICAgICAgICAgICAgICgxNVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFRJTV9DQ01SMl9PQzRDRV9Nc2sgICAgICAgICAgICAgICAgICgweDFVTCA8PCBUSU1fQ0NNUjJfT0M0Q0VfUG9zKSAgICAgIC8qITwgMHgwMDAwODAwMCAqLw0KI2RlZmluZSBUSU1fQ0NNUjJfT0M0Q0UgICAgICAgICAgICAgICAgICAgICBUSU1fQ0NNUjJfT0M0Q0VfTXNrICAgICAgICAgICAgICAgIC8qITxPdXRwdXQgQ29tcGFyZSA0IENsZWFyIEVuYWJsZSAqLw0KDQovKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qLw0KDQojZGVmaW5lIFRJTV9DQ01SMl9JQzNQU0NfUG9zICAgICAgICAgICAgICAgICgyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFRJTV9DQ01SMl9JQzNQU0NfTXNrICAgICAgICAgICAgICAgICgweDNVTCA8PCBUSU1fQ0NNUjJfSUMzUFNDX1BvcykgICAgIC8qITwgMHgwMDAwMDAwQyAqLw0KI2RlZmluZSBUSU1fQ0NNUjJfSUMzUFNDICAgICAgICAgICAgICAgICAgICBUSU1fQ0NNUjJfSUMzUFNDX01zayAgICAgICAgICAgICAgIC8qITxJQzNQU0NbMTowXSBiaXRzIChJbnB1dCBDYXB0dXJlIDMgUHJlc2NhbGVyKSAqLw0KI2RlZmluZSBUSU1fQ0NNUjJfSUMzUFNDXzAgICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgVElNX0NDTVIyX0lDM1BTQ19Qb3MpICAgICAvKiE8IDB4MDAwMDAwMDQgKi8NCiNkZWZpbmUgVElNX0NDTVIyX0lDM1BTQ18xICAgICAgICAgICAgICAgICAgKDB4MlVMIDw8IFRJTV9DQ01SMl9JQzNQU0NfUG9zKSAgICAgLyohPCAweDAwMDAwMDA4ICovDQoNCiNkZWZpbmUgVElNX0NDTVIyX0lDM0ZfUG9zICAgICAgICAgICAgICAgICAgKDRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVElNX0NDTVIyX0lDM0ZfTXNrICAgICAgICAgICAgICAgICAgKDB4RlVMIDw8IFRJTV9DQ01SMl9JQzNGX1BvcykgICAgICAgLyohPCAweDAwMDAwMEYwICovDQojZGVmaW5lIFRJTV9DQ01SMl9JQzNGICAgICAgICAgICAgICAgICAgICAgIFRJTV9DQ01SMl9JQzNGX01zayAgICAgICAgICAgICAgICAgLyohPElDM0ZbMzowXSBiaXRzIChJbnB1dCBDYXB0dXJlIDMgRmlsdGVyKSAqLw0KI2RlZmluZSBUSU1fQ0NNUjJfSUMzRl8wICAgICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgVElNX0NDTVIyX0lDM0ZfUG9zKSAgICAgICAvKiE8IDB4MDAwMDAwMTAgKi8NCiNkZWZpbmUgVElNX0NDTVIyX0lDM0ZfMSAgICAgICAgICAgICAgICAgICAgKDB4MlVMIDw8IFRJTV9DQ01SMl9JQzNGX1BvcykgICAgICAgLyohPCAweDAwMDAwMDIwICovDQojZGVmaW5lIFRJTV9DQ01SMl9JQzNGXzIgICAgICAgICAgICAgICAgICAgICgweDRVTCA8PCBUSU1fQ0NNUjJfSUMzRl9Qb3MpICAgICAgIC8qITwgMHgwMDAwMDA0MCAqLw0KI2RlZmluZSBUSU1fQ0NNUjJfSUMzRl8zICAgICAgICAgICAgICAgICAgICAoMHg4VUwgPDwgVElNX0NDTVIyX0lDM0ZfUG9zKSAgICAgICAvKiE8IDB4MDAwMDAwODAgKi8NCg0KI2RlZmluZSBUSU1fQ0NNUjJfSUM0UFNDX1BvcyAgICAgICAgICAgICAgICAoMTBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBUSU1fQ0NNUjJfSUM0UFNDX01zayAgICAgICAgICAgICAgICAoMHgzVUwgPDwgVElNX0NDTVIyX0lDNFBTQ19Qb3MpICAgICAvKiE8IDB4MDAwMDBDMDAgKi8NCiNkZWZpbmUgVElNX0NDTVIyX0lDNFBTQyAgICAgICAgICAgICAgICAgICAgVElNX0NDTVIyX0lDNFBTQ19Nc2sgICAgICAgICAgICAgICAvKiE8SUM0UFNDWzE6MF0gYml0cyAoSW5wdXQgQ2FwdHVyZSA0IFByZXNjYWxlcikgKi8NCiNkZWZpbmUgVElNX0NDTVIyX0lDNFBTQ18wICAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IFRJTV9DQ01SMl9JQzRQU0NfUG9zKSAgICAgLyohPCAweDAwMDAwNDAwICovDQojZGVmaW5lIFRJTV9DQ01SMl9JQzRQU0NfMSAgICAgICAgICAgICAgICAgICgweDJVTCA8PCBUSU1fQ0NNUjJfSUM0UFNDX1BvcykgICAgIC8qITwgMHgwMDAwMDgwMCAqLw0KDQojZGVmaW5lIFRJTV9DQ01SMl9JQzRGX1BvcyAgICAgICAgICAgICAgICAgICgxMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFRJTV9DQ01SMl9JQzRGX01zayAgICAgICAgICAgICAgICAgICgweEZVTCA8PCBUSU1fQ0NNUjJfSUM0Rl9Qb3MpICAgICAgIC8qITwgMHgwMDAwRjAwMCAqLw0KI2RlZmluZSBUSU1fQ0NNUjJfSUM0RiAgICAgICAgICAgICAgICAgICAgICBUSU1fQ0NNUjJfSUM0Rl9Nc2sgICAgICAgICAgICAgICAgIC8qITxJQzRGWzM6MF0gYml0cyAoSW5wdXQgQ2FwdHVyZSA0IEZpbHRlcikgKi8NCiNkZWZpbmUgVElNX0NDTVIyX0lDNEZfMCAgICAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IFRJTV9DQ01SMl9JQzRGX1BvcykgICAgICAgLyohPCAweDAwMDAxMDAwICovDQojZGVmaW5lIFRJTV9DQ01SMl9JQzRGXzEgICAgICAgICAgICAgICAgICAgICgweDJVTCA8PCBUSU1fQ0NNUjJfSUM0Rl9Qb3MpICAgICAgIC8qITwgMHgwMDAwMjAwMCAqLw0KI2RlZmluZSBUSU1fQ0NNUjJfSUM0Rl8yICAgICAgICAgICAgICAgICAgICAoMHg0VUwgPDwgVElNX0NDTVIyX0lDNEZfUG9zKSAgICAgICAvKiE8IDB4MDAwMDQwMDAgKi8NCiNkZWZpbmUgVElNX0NDTVIyX0lDNEZfMyAgICAgICAgICAgICAgICAgICAgKDB4OFVMIDw8IFRJTV9DQ01SMl9JQzRGX1BvcykgICAgICAgLyohPCAweDAwMDA4MDAwICovDQoNCi8qKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgVElNX0NDRVIgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIFRJTV9DQ0VSX0NDMUVfUG9zICAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFRJTV9DQ0VSX0NDMUVfTXNrICAgICAgICAgICAgICAgICAgICgweDFVTCA8PCBUSU1fQ0NFUl9DQzFFX1BvcykgICAgICAgIC8qITwgMHgwMDAwMDAwMSAqLw0KI2RlZmluZSBUSU1fQ0NFUl9DQzFFICAgICAgICAgICAgICAgICAgICAgICBUSU1fQ0NFUl9DQzFFX01zayAgICAgICAgICAgICAgICAgIC8qITxDYXB0dXJlL0NvbXBhcmUgMSBvdXRwdXQgZW5hYmxlICovDQojZGVmaW5lIFRJTV9DQ0VSX0NDMVBfUG9zICAgICAgICAgICAgICAgICAgICgxVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFRJTV9DQ0VSX0NDMVBfTXNrICAgICAgICAgICAgICAgICAgICgweDFVTCA8PCBUSU1fQ0NFUl9DQzFQX1BvcykgICAgICAgIC8qITwgMHgwMDAwMDAwMiAqLw0KI2RlZmluZSBUSU1fQ0NFUl9DQzFQICAgICAgICAgICAgICAgICAgICAgICBUSU1fQ0NFUl9DQzFQX01zayAgICAgICAgICAgICAgICAgIC8qITxDYXB0dXJlL0NvbXBhcmUgMSBvdXRwdXQgUG9sYXJpdHkgKi8NCiNkZWZpbmUgVElNX0NDRVJfQ0MxTlBfUG9zICAgICAgICAgICAgICAgICAgKDNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVElNX0NDRVJfQ0MxTlBfTXNrICAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IFRJTV9DQ0VSX0NDMU5QX1BvcykgICAgICAgLyohPCAweDAwMDAwMDA4ICovDQojZGVmaW5lIFRJTV9DQ0VSX0NDMU5QICAgICAgICAgICAgICAgICAgICAgIFRJTV9DQ0VSX0NDMU5QX01zayAgICAgICAgICAgICAgICAgLyohPENhcHR1cmUvQ29tcGFyZSAxIENvbXBsZW1lbnRhcnkgb3V0cHV0IFBvbGFyaXR5ICovDQojZGVmaW5lIFRJTV9DQ0VSX0NDMkVfUG9zICAgICAgICAgICAgICAgICAgICg0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFRJTV9DQ0VSX0NDMkVfTXNrICAgICAgICAgICAgICAgICAgICgweDFVTCA8PCBUSU1fQ0NFUl9DQzJFX1BvcykgICAgICAgIC8qITwgMHgwMDAwMDAxMCAqLw0KI2RlZmluZSBUSU1fQ0NFUl9DQzJFICAgICAgICAgICAgICAgICAgICAgICBUSU1fQ0NFUl9DQzJFX01zayAgICAgICAgICAgICAgICAgIC8qITxDYXB0dXJlL0NvbXBhcmUgMiBvdXRwdXQgZW5hYmxlICovDQojZGVmaW5lIFRJTV9DQ0VSX0NDMlBfUG9zICAgICAgICAgICAgICAgICAgICg1VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFRJTV9DQ0VSX0NDMlBfTXNrICAgICAgICAgICAgICAgICAgICgweDFVTCA8PCBUSU1fQ0NFUl9DQzJQX1BvcykgICAgICAgIC8qITwgMHgwMDAwMDAyMCAqLw0KI2RlZmluZSBUSU1fQ0NFUl9DQzJQICAgICAgICAgICAgICAgICAgICAgICBUSU1fQ0NFUl9DQzJQX01zayAgICAgICAgICAgICAgICAgIC8qITxDYXB0dXJlL0NvbXBhcmUgMiBvdXRwdXQgUG9sYXJpdHkgKi8NCiNkZWZpbmUgVElNX0NDRVJfQ0MyTlBfUG9zICAgICAgICAgICAgICAgICAgKDdVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVElNX0NDRVJfQ0MyTlBfTXNrICAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IFRJTV9DQ0VSX0NDMk5QX1BvcykgICAgICAgLyohPCAweDAwMDAwMDgwICovDQojZGVmaW5lIFRJTV9DQ0VSX0NDMk5QICAgICAgICAgICAgICAgICAgICAgIFRJTV9DQ0VSX0NDMk5QX01zayAgICAgICAgICAgICAgICAgLyohPENhcHR1cmUvQ29tcGFyZSAyIENvbXBsZW1lbnRhcnkgb3V0cHV0IFBvbGFyaXR5ICovDQojZGVmaW5lIFRJTV9DQ0VSX0NDM0VfUG9zICAgICAgICAgICAgICAgICAgICg4VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFRJTV9DQ0VSX0NDM0VfTXNrICAgICAgICAgICAgICAgICAgICgweDFVTCA8PCBUSU1fQ0NFUl9DQzNFX1BvcykgICAgICAgIC8qITwgMHgwMDAwMDEwMCAqLw0KI2RlZmluZSBUSU1fQ0NFUl9DQzNFICAgICAgICAgICAgICAgICAgICAgICBUSU1fQ0NFUl9DQzNFX01zayAgICAgICAgICAgICAgICAgIC8qITxDYXB0dXJlL0NvbXBhcmUgMyBvdXRwdXQgZW5hYmxlICovDQojZGVmaW5lIFRJTV9DQ0VSX0NDM1BfUG9zICAgICAgICAgICAgICAgICAgICg5VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFRJTV9DQ0VSX0NDM1BfTXNrICAgICAgICAgICAgICAgICAgICgweDFVTCA8PCBUSU1fQ0NFUl9DQzNQX1BvcykgICAgICAgIC8qITwgMHgwMDAwMDIwMCAqLw0KI2RlZmluZSBUSU1fQ0NFUl9DQzNQICAgICAgICAgICAgICAgICAgICAgICBUSU1fQ0NFUl9DQzNQX01zayAgICAgICAgICAgICAgICAgIC8qITxDYXB0dXJlL0NvbXBhcmUgMyBvdXRwdXQgUG9sYXJpdHkgKi8NCiNkZWZpbmUgVElNX0NDRVJfQ0MzTlBfUG9zICAgICAgICAgICAgICAgICAgKDExVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVElNX0NDRVJfQ0MzTlBfTXNrICAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IFRJTV9DQ0VSX0NDM05QX1BvcykgICAgICAgLyohPCAweDAwMDAwODAwICovDQojZGVmaW5lIFRJTV9DQ0VSX0NDM05QICAgICAgICAgICAgICAgICAgICAgIFRJTV9DQ0VSX0NDM05QX01zayAgICAgICAgICAgICAgICAgLyohPENhcHR1cmUvQ29tcGFyZSAzIENvbXBsZW1lbnRhcnkgb3V0cHV0IFBvbGFyaXR5ICovDQojZGVmaW5lIFRJTV9DQ0VSX0NDNEVfUG9zICAgICAgICAgICAgICAgICAgICgxMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFRJTV9DQ0VSX0NDNEVfTXNrICAgICAgICAgICAgICAgICAgICgweDFVTCA8PCBUSU1fQ0NFUl9DQzRFX1BvcykgICAgICAgIC8qITwgMHgwMDAwMTAwMCAqLw0KI2RlZmluZSBUSU1fQ0NFUl9DQzRFICAgICAgICAgICAgICAgICAgICAgICBUSU1fQ0NFUl9DQzRFX01zayAgICAgICAgICAgICAgICAgIC8qITxDYXB0dXJlL0NvbXBhcmUgNCBvdXRwdXQgZW5hYmxlICovDQojZGVmaW5lIFRJTV9DQ0VSX0NDNFBfUG9zICAgICAgICAgICAgICAgICAgICgxM1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFRJTV9DQ0VSX0NDNFBfTXNrICAgICAgICAgICAgICAgICAgICgweDFVTCA8PCBUSU1fQ0NFUl9DQzRQX1BvcykgICAgICAgIC8qITwgMHgwMDAwMjAwMCAqLw0KI2RlZmluZSBUSU1fQ0NFUl9DQzRQICAgICAgICAgICAgICAgICAgICAgICBUSU1fQ0NFUl9DQzRQX01zayAgICAgICAgICAgICAgICAgIC8qITxDYXB0dXJlL0NvbXBhcmUgNCBvdXRwdXQgUG9sYXJpdHkgKi8NCiNkZWZpbmUgVElNX0NDRVJfQ0M0TlBfUG9zICAgICAgICAgICAgICAgICAgKDE1VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVElNX0NDRVJfQ0M0TlBfTXNrICAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IFRJTV9DQ0VSX0NDNE5QX1BvcykgICAgICAgLyohPCAweDAwMDA4MDAwICovDQojZGVmaW5lIFRJTV9DQ0VSX0NDNE5QICAgICAgICAgICAgICAgICAgICAgIFRJTV9DQ0VSX0NDNE5QX01zayAgICAgICAgICAgICAgICAgLyohPENhcHR1cmUvQ29tcGFyZSA0IENvbXBsZW1lbnRhcnkgb3V0cHV0IFBvbGFyaXR5ICovDQoNCi8qKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgVElNX0NOVCByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIFRJTV9DTlRfQ05UX1BvcyAgICAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFRJTV9DTlRfQ05UX01zayAgICAgICAgICAgICAgICAgICAgICgweEZGRkZGRkZGVUwgPDwgVElNX0NOVF9DTlRfUG9zKSAgIC8qITwgMHhGRkZGRkZGRiAqLw0KI2RlZmluZSBUSU1fQ05UX0NOVCAgICAgICAgICAgICAgICAgICAgICAgICBUSU1fQ05UX0NOVF9Nc2sgICAgICAgICAgICAgICAgICAgIC8qITxDb3VudGVyIFZhbHVlICovDQoNCi8qKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgVElNX1BTQyByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIFRJTV9QU0NfUFNDX1BvcyAgICAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFRJTV9QU0NfUFNDX01zayAgICAgICAgICAgICAgICAgICAgICgweEZGRkZVTCA8PCBUSU1fUFNDX1BTQ19Qb3MpICAgICAgIC8qITwgMHgwMDAwRkZGRiAqLw0KI2RlZmluZSBUSU1fUFNDX1BTQyAgICAgICAgICAgICAgICAgICAgICAgICBUSU1fUFNDX1BTQ19Nc2sgICAgICAgICAgICAgICAgICAgIC8qITxQcmVzY2FsZXIgVmFsdWUgKi8NCg0KLyoqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBUSU1fQVJSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgVElNX0FSUl9BUlJfUG9zICAgICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVElNX0FSUl9BUlJfTXNrICAgICAgICAgICAgICAgICAgICAgKDB4RkZGRkZGRkZVTCA8PCBUSU1fQVJSX0FSUl9Qb3MpICAgLyohPCAweEZGRkZGRkZGICovDQojZGVmaW5lIFRJTV9BUlJfQVJSICAgICAgICAgICAgICAgICAgICAgICAgIFRJTV9BUlJfQVJSX01zayAgICAgICAgICAgICAgICAgICAgLyohPGFjdHVhbCBhdXRvLXJlbG9hZCBWYWx1ZSAqLw0KICAgICAgICAgICANCi8qKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgVElNX0NDUjEgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIFRJTV9DQ1IxX0NDUjFfUG9zICAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFRJTV9DQ1IxX0NDUjFfTXNrICAgICAgICAgICAgICAgICAgICgweEZGRkZVTCA8PCBUSU1fQ0NSMV9DQ1IxX1BvcykgICAgIC8qITwgMHgwMDAwRkZGRiAqLw0KI2RlZmluZSBUSU1fQ0NSMV9DQ1IxICAgICAgICAgICAgICAgICAgICAgICBUSU1fQ0NSMV9DQ1IxX01zayAgICAgICAgICAgICAgICAgIC8qITxDYXB0dXJlL0NvbXBhcmUgMSBWYWx1ZSAqLw0KDQovKioqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFRJTV9DQ1IyIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBUSU1fQ0NSMl9DQ1IyX1BvcyAgICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBUSU1fQ0NSMl9DQ1IyX01zayAgICAgICAgICAgICAgICAgICAoMHhGRkZGVUwgPDwgVElNX0NDUjJfQ0NSMl9Qb3MpICAgICAvKiE8IDB4MDAwMEZGRkYgKi8NCiNkZWZpbmUgVElNX0NDUjJfQ0NSMiAgICAgICAgICAgICAgICAgICAgICAgVElNX0NDUjJfQ0NSMl9Nc2sgICAgICAgICAgICAgICAgICAvKiE8Q2FwdHVyZS9Db21wYXJlIDIgVmFsdWUgKi8NCg0KLyoqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBUSU1fQ0NSMyByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgVElNX0NDUjNfQ0NSM19Qb3MgICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVElNX0NDUjNfQ0NSM19Nc2sgICAgICAgICAgICAgICAgICAgKDB4RkZGRlVMIDw8IFRJTV9DQ1IzX0NDUjNfUG9zKSAgICAgLyohPCAweDAwMDBGRkZGICovDQojZGVmaW5lIFRJTV9DQ1IzX0NDUjMgICAgICAgICAgICAgICAgICAgICAgIFRJTV9DQ1IzX0NDUjNfTXNrICAgICAgICAgICAgICAgICAgLyohPENhcHR1cmUvQ29tcGFyZSAzIFZhbHVlICovDQoNCi8qKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgVElNX0NDUjQgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIFRJTV9DQ1I0X0NDUjRfUG9zICAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFRJTV9DQ1I0X0NDUjRfTXNrICAgICAgICAgICAgICAgICAgICgweEZGRkZVTCA8PCBUSU1fQ0NSNF9DQ1I0X1BvcykgICAgIC8qITwgMHgwMDAwRkZGRiAqLw0KI2RlZmluZSBUSU1fQ0NSNF9DQ1I0ICAgICAgICAgICAgICAgICAgICAgICBUSU1fQ0NSNF9DQ1I0X01zayAgICAgICAgICAgICAgICAgIC8qITxDYXB0dXJlL0NvbXBhcmUgNCBWYWx1ZSAqLw0KDQovKioqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFRJTV9EQ1IgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBUSU1fRENSX0RCQV9Qb3MgICAgICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBUSU1fRENSX0RCQV9Nc2sgICAgICAgICAgICAgICAgICAgICAoMHgxRlVMIDw8IFRJTV9EQ1JfREJBX1BvcykgICAgICAgICAvKiE8IDB4MDAwMDAwMUYgKi8NCiNkZWZpbmUgVElNX0RDUl9EQkEgICAgICAgICAgICAgICAgICAgICAgICAgVElNX0RDUl9EQkFfTXNrICAgICAgICAgICAgICAgICAgICAvKiE8REJBWzQ6MF0gYml0cyAoRE1BIEJhc2UgQWRkcmVzcykgKi8NCiNkZWZpbmUgVElNX0RDUl9EQkFfMCAgICAgICAgICAgICAgICAgICAgICAgKDB4MDFVTCA8PCBUSU1fRENSX0RCQV9Qb3MpICAgICAgICAgLyohPCAweDAwMDAwMDAxICovDQojZGVmaW5lIFRJTV9EQ1JfREJBXzEgICAgICAgICAgICAgICAgICAgICAgICgweDAyVUwgPDwgVElNX0RDUl9EQkFfUG9zKSAgICAgICAgIC8qITwgMHgwMDAwMDAwMiAqLw0KI2RlZmluZSBUSU1fRENSX0RCQV8yICAgICAgICAgICAgICAgICAgICAgICAoMHgwNFVMIDw8IFRJTV9EQ1JfREJBX1BvcykgICAgICAgICAvKiE8IDB4MDAwMDAwMDQgKi8NCiNkZWZpbmUgVElNX0RDUl9EQkFfMyAgICAgICAgICAgICAgICAgICAgICAgKDB4MDhVTCA8PCBUSU1fRENSX0RCQV9Qb3MpICAgICAgICAgLyohPCAweDAwMDAwMDA4ICovDQojZGVmaW5lIFRJTV9EQ1JfREJBXzQgICAgICAgICAgICAgICAgICAgICAgICgweDEwVUwgPDwgVElNX0RDUl9EQkFfUG9zKSAgICAgICAgIC8qITwgMHgwMDAwMDAxMCAqLw0KDQojZGVmaW5lIFRJTV9EQ1JfREJMX1BvcyAgICAgICAgICAgICAgICAgICAgICg4VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFRJTV9EQ1JfREJMX01zayAgICAgICAgICAgICAgICAgICAgICgweDFGVUwgPDwgVElNX0RDUl9EQkxfUG9zKSAgICAgICAgIC8qITwgMHgwMDAwMUYwMCAqLw0KI2RlZmluZSBUSU1fRENSX0RCTCAgICAgICAgICAgICAgICAgICAgICAgICBUSU1fRENSX0RCTF9Nc2sgICAgICAgICAgICAgICAgICAgIC8qITxEQkxbNDowXSBiaXRzIChETUEgQnVyc3QgTGVuZ3RoKSAqLw0KI2RlZmluZSBUSU1fRENSX0RCTF8wICAgICAgICAgICAgICAgICAgICAgICAoMHgwMVVMIDw8IFRJTV9EQ1JfREJMX1BvcykgICAgICAgICAvKiE8IDB4MDAwMDAxMDAgKi8NCiNkZWZpbmUgVElNX0RDUl9EQkxfMSAgICAgICAgICAgICAgICAgICAgICAgKDB4MDJVTCA8PCBUSU1fRENSX0RCTF9Qb3MpICAgICAgICAgLyohPCAweDAwMDAwMjAwICovDQojZGVmaW5lIFRJTV9EQ1JfREJMXzIgICAgICAgICAgICAgICAgICAgICAgICgweDA0VUwgPDwgVElNX0RDUl9EQkxfUG9zKSAgICAgICAgIC8qITwgMHgwMDAwMDQwMCAqLw0KI2RlZmluZSBUSU1fRENSX0RCTF8zICAgICAgICAgICAgICAgICAgICAgICAoMHgwOFVMIDw8IFRJTV9EQ1JfREJMX1BvcykgICAgICAgICAvKiE8IDB4MDAwMDA4MDAgKi8NCiNkZWZpbmUgVElNX0RDUl9EQkxfNCAgICAgICAgICAgICAgICAgICAgICAgKDB4MTBVTCA8PCBUSU1fRENSX0RCTF9Qb3MpICAgICAgICAgLyohPCAweDAwMDAxMDAwICovDQoNCi8qKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgVElNX0RNQVIgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIFRJTV9ETUFSX0RNQUJfUG9zICAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFRJTV9ETUFSX0RNQUJfTXNrICAgICAgICAgICAgICAgICAgICgweEZGRkZVTCA8PCBUSU1fRE1BUl9ETUFCX1BvcykgICAgIC8qITwgMHgwMDAwRkZGRiAqLw0KI2RlZmluZSBUSU1fRE1BUl9ETUFCICAgICAgICAgICAgICAgICAgICAgICBUSU1fRE1BUl9ETUFCX01zayAgICAgICAgICAgICAgICAgIC8qITxETUEgcmVnaXN0ZXIgZm9yIGJ1cnN0IGFjY2Vzc2VzICovDQoNCi8qKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgVElNX09SIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIFRJTV9PUl9USTFSTVBfUG9zICAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFRJTV9PUl9USTFSTVBfTXNrICAgICAgICAgICAgICAgICAgICgweDNVTCA8PCBUSU1fT1JfVEkxUk1QX1BvcykgICAgICAgIC8qITwgMHgwMDAwMDAwMyAqLw0KI2RlZmluZSBUSU1fT1JfVEkxUk1QICAgICAgICAgICAgICAgICAgICAgICBUSU1fT1JfVEkxUk1QX01zayAgICAgICAgICAgICAgICAgIC8qITxUSTFfUk1QWzE6MF0gYml0cyAoVElNIElucHV0IDEgcmVtYXApICovDQojZGVmaW5lIFRJTV9PUl9USTFSTVBfMCAgICAgICAgICAgICAgICAgICAgICgweDFVTCA8PCBUSU1fT1JfVEkxUk1QX1BvcykgICAgICAgIC8qITwgMHgwMDAwMDAwMSAqLw0KI2RlZmluZSBUSU1fT1JfVEkxUk1QXzEgICAgICAgICAgICAgICAgICAgICAoMHgyVUwgPDwgVElNX09SX1RJMVJNUF9Qb3MpICAgICAgICAvKiE8IDB4MDAwMDAwMDIgKi8NCg0KI2RlZmluZSBUSU1fT1JfRVRSX1JNUF9Qb3MgICAgICAgICAgICAgICAgICAoMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBUSU1fT1JfRVRSX1JNUF9Nc2sgICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgVElNX09SX0VUUl9STVBfUG9zKSAgICAgICAvKiE8IDB4MDAwMDAwMDQgKi8NCiNkZWZpbmUgVElNX09SX0VUUl9STVAgICAgICAgICAgICAgICAgICAgICAgVElNX09SX0VUUl9STVBfTXNrICAgICAgICAgICAgICAgICAvKiE8RVRSX1JNUCBiaXQgKFRJTTEwLzExIEVUUiByZW1hcCkqLw0KI2RlZmluZSBUSU1fT1JfVEkxX1JNUF9SSV9Qb3MgICAgICAgICAgICAgICAoM1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBUSU1fT1JfVEkxX1JNUF9SSV9Nc2sgICAgICAgICAgICAgICAoMHgxVUwgPDwgVElNX09SX1RJMV9STVBfUklfUG9zKSAgICAvKiE8IDB4MDAwMDAwMDggKi8NCiNkZWZpbmUgVElNX09SX1RJMV9STVBfUkkgICAgICAgICAgICAgICAgICAgVElNX09SX1RJMV9STVBfUklfTXNrICAgICAgICAgICAgICAvKiE8VEkxX1JNUF9SSSBiaXQgKFRJTTEwLzExIElucHV0IDEgcmVtYXAgZm9yIFJvdXRpbmcgaW50ZXJmYWNlKSAqLw0KDQovKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qLw0KI2RlZmluZSBUSU05X09SX0lUUjFfUk1QX1BvcyAgICAgICAgICAgICAgICAoMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBUSU05X09SX0lUUjFfUk1QX01zayAgICAgICAgICAgICAgICAoMHgxVUwgPDwgVElNOV9PUl9JVFIxX1JNUF9Qb3MpICAgICAvKiE8IDB4MDAwMDAwMDQgKi8NCiNkZWZpbmUgVElNOV9PUl9JVFIxX1JNUCAgICAgICAgICAgICAgICAgICAgVElNOV9PUl9JVFIxX1JNUF9Nc2sgICAgICAgICAgICAgICAvKiE8SVRSMV9STVAgYml0IChUSU05IEludGVybmFsIHRyaWdnZXIgMSByZW1hcCkgKi8NCg0KLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi8NCiNkZWZpbmUgVElNMl9PUl9JVFIxX1JNUF9Qb3MgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVElNMl9PUl9JVFIxX1JNUF9Nc2sgICAgICAgICAgICAgICAgKDB4MVVMIDw8IFRJTTJfT1JfSVRSMV9STVBfUG9zKSAgICAgLyohPCAweDAwMDAwMDAxICovDQojZGVmaW5lIFRJTTJfT1JfSVRSMV9STVAgICAgICAgICAgICAgICAgICAgIFRJTTJfT1JfSVRSMV9STVBfTXNrICAgICAgICAgICAgICAgLyohPElUUjFfUk1QIGJpdCAoVElNMiBJbnRlcm5hbCB0cmlnZ2VyIDEgcmVtYXApICovDQoNCi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovDQojZGVmaW5lIFRJTTNfT1JfSVRSMl9STVBfUG9zICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFRJTTNfT1JfSVRSMl9STVBfTXNrICAgICAgICAgICAgICAgICgweDFVTCA8PCBUSU0zX09SX0lUUjJfUk1QX1BvcykgICAgIC8qITwgMHgwMDAwMDAwMSAqLw0KI2RlZmluZSBUSU0zX09SX0lUUjJfUk1QICAgICAgICAgICAgICAgICAgICBUSU0zX09SX0lUUjJfUk1QX01zayAgICAgICAgICAgICAgIC8qITxJVFIyX1JNUCBiaXQgKFRJTTMgSW50ZXJuYWwgdHJpZ2dlciAyIHJlbWFwKSAqLw0KDQovKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qLw0KDQovKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLw0KLyogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8NCi8qICAgICAgVW5pdmVyc2FsIFN5bmNocm9ub3VzIEFzeW5jaHJvbm91cyBSZWNlaXZlciBUcmFuc21pdHRlciAoVVNBUlQpICAgICAgICovDQovKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLw0KLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8NCg0KLyoqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBVU0FSVF9TUiByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgVVNBUlRfU1JfUEVfUG9zICAgICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNBUlRfU1JfUEVfTXNrICAgICAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IFVTQVJUX1NSX1BFX1BvcykgICAgICAgICAgLyohPCAweDAwMDAwMDAxICovDQojZGVmaW5lIFVTQVJUX1NSX1BFICAgICAgICAgICAgICAgICAgICAgICAgIFVTQVJUX1NSX1BFX01zayAgICAgICAgICAgICAgICAgICAgLyohPCBQYXJpdHkgRXJyb3IgKi8NCiNkZWZpbmUgVVNBUlRfU1JfRkVfUG9zICAgICAgICAgICAgICAgICAgICAgKDFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNBUlRfU1JfRkVfTXNrICAgICAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IFVTQVJUX1NSX0ZFX1BvcykgICAgICAgICAgLyohPCAweDAwMDAwMDAyICovDQojZGVmaW5lIFVTQVJUX1NSX0ZFICAgICAgICAgICAgICAgICAgICAgICAgIFVTQVJUX1NSX0ZFX01zayAgICAgICAgICAgICAgICAgICAgLyohPCBGcmFtaW5nIEVycm9yICovDQojZGVmaW5lIFVTQVJUX1NSX05FX1BvcyAgICAgICAgICAgICAgICAgICAgICgyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQVJUX1NSX05FX01zayAgICAgICAgICAgICAgICAgICAgICgweDFVTCA8PCBVU0FSVF9TUl9ORV9Qb3MpICAgICAgICAgIC8qITwgMHgwMDAwMDAwNCAqLw0KI2RlZmluZSBVU0FSVF9TUl9ORSAgICAgICAgICAgICAgICAgICAgICAgICBVU0FSVF9TUl9ORV9Nc2sgICAgICAgICAgICAgICAgICAgIC8qITwgTm9pc2UgRXJyb3IgRmxhZyAqLw0KI2RlZmluZSBVU0FSVF9TUl9PUkVfUG9zICAgICAgICAgICAgICAgICAgICAoM1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0FSVF9TUl9PUkVfTXNrICAgICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgVVNBUlRfU1JfT1JFX1BvcykgICAgICAgICAvKiE8IDB4MDAwMDAwMDggKi8NCiNkZWZpbmUgVVNBUlRfU1JfT1JFICAgICAgICAgICAgICAgICAgICAgICAgVVNBUlRfU1JfT1JFX01zayAgICAgICAgICAgICAgICAgICAvKiE8IE92ZXJSdW4gRXJyb3IgKi8NCiNkZWZpbmUgVVNBUlRfU1JfSURMRV9Qb3MgICAgICAgICAgICAgICAgICAgKDRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNBUlRfU1JfSURMRV9Nc2sgICAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IFVTQVJUX1NSX0lETEVfUG9zKSAgICAgICAgLyohPCAweDAwMDAwMDEwICovDQojZGVmaW5lIFVTQVJUX1NSX0lETEUgICAgICAgICAgICAgICAgICAgICAgIFVTQVJUX1NSX0lETEVfTXNrICAgICAgICAgICAgICAgICAgLyohPCBJRExFIGxpbmUgZGV0ZWN0ZWQgKi8NCiNkZWZpbmUgVVNBUlRfU1JfUlhORV9Qb3MgICAgICAgICAgICAgICAgICAgKDVVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNBUlRfU1JfUlhORV9Nc2sgICAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IFVTQVJUX1NSX1JYTkVfUG9zKSAgICAgICAgLyohPCAweDAwMDAwMDIwICovDQojZGVmaW5lIFVTQVJUX1NSX1JYTkUgICAgICAgICAgICAgICAgICAgICAgIFVTQVJUX1NSX1JYTkVfTXNrICAgICAgICAgICAgICAgICAgLyohPCBSZWFkIERhdGEgUmVnaXN0ZXIgTm90IEVtcHR5ICovDQojZGVmaW5lIFVTQVJUX1NSX1RDX1BvcyAgICAgICAgICAgICAgICAgICAgICg2VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQVJUX1NSX1RDX01zayAgICAgICAgICAgICAgICAgICAgICgweDFVTCA8PCBVU0FSVF9TUl9UQ19Qb3MpICAgICAgICAgIC8qITwgMHgwMDAwMDA0MCAqLw0KI2RlZmluZSBVU0FSVF9TUl9UQyAgICAgICAgICAgICAgICAgICAgICAgICBVU0FSVF9TUl9UQ19Nc2sgICAgICAgICAgICAgICAgICAgIC8qITwgVHJhbnNtaXNzaW9uIENvbXBsZXRlICovDQojZGVmaW5lIFVTQVJUX1NSX1RYRV9Qb3MgICAgICAgICAgICAgICAgICAgICg3VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQVJUX1NSX1RYRV9Nc2sgICAgICAgICAgICAgICAgICAgICgweDFVTCA8PCBVU0FSVF9TUl9UWEVfUG9zKSAgICAgICAgIC8qITwgMHgwMDAwMDA4MCAqLw0KI2RlZmluZSBVU0FSVF9TUl9UWEUgICAgICAgICAgICAgICAgICAgICAgICBVU0FSVF9TUl9UWEVfTXNrICAgICAgICAgICAgICAgICAgIC8qITwgVHJhbnNtaXQgRGF0YSBSZWdpc3RlciBFbXB0eSAqLw0KI2RlZmluZSBVU0FSVF9TUl9MQkRfUG9zICAgICAgICAgICAgICAgICAgICAoOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0FSVF9TUl9MQkRfTXNrICAgICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgVVNBUlRfU1JfTEJEX1BvcykgICAgICAgICAvKiE8IDB4MDAwMDAxMDAgKi8NCiNkZWZpbmUgVVNBUlRfU1JfTEJEICAgICAgICAgICAgICAgICAgICAgICAgVVNBUlRfU1JfTEJEX01zayAgICAgICAgICAgICAgICAgICAvKiE8IExJTiBCcmVhayBEZXRlY3Rpb24gRmxhZyAqLw0KI2RlZmluZSBVU0FSVF9TUl9DVFNfUG9zICAgICAgICAgICAgICAgICAgICAoOVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0FSVF9TUl9DVFNfTXNrICAgICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgVVNBUlRfU1JfQ1RTX1BvcykgICAgICAgICAvKiE8IDB4MDAwMDAyMDAgKi8NCiNkZWZpbmUgVVNBUlRfU1JfQ1RTICAgICAgICAgICAgICAgICAgICAgICAgVVNBUlRfU1JfQ1RTX01zayAgICAgICAgICAgICAgICAgICAvKiE8IENUUyBGbGFnICovDQoNCi8qKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgVVNBUlRfRFIgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIFVTQVJUX0RSX0RSX1BvcyAgICAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQVJUX0RSX0RSX01zayAgICAgICAgICAgICAgICAgICAgICgweDFGRlVMIDw8IFVTQVJUX0RSX0RSX1BvcykgICAgICAgIC8qITwgMHgwMDAwMDFGRiAqLw0KI2RlZmluZSBVU0FSVF9EUl9EUiAgICAgICAgICAgICAgICAgICAgICAgICBVU0FSVF9EUl9EUl9Nc2sgICAgICAgICAgICAgICAgICAgIC8qITwgRGF0YSB2YWx1ZSAqLw0KDQovKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgVVNBUlRfQlJSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBVU0FSVF9CUlJfRElWX0ZSQUNUSU9OX1BvcyAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0FSVF9CUlJfRElWX0ZSQUNUSU9OX01zayAgICAgICAgICAoMHhGVUwgPDwgVVNBUlRfQlJSX0RJVl9GUkFDVElPTl9Qb3MpIC8qITwgMHgwMDAwMDAwRiAqLw0KI2RlZmluZSBVU0FSVF9CUlJfRElWX0ZSQUNUSU9OICAgICAgICAgICAgICBVU0FSVF9CUlJfRElWX0ZSQUNUSU9OX01zayAgICAgICAgIC8qITwgRnJhY3Rpb24gb2YgVVNBUlRESVYgKi8NCiNkZWZpbmUgVVNBUlRfQlJSX0RJVl9NQU5USVNTQV9Qb3MgICAgICAgICAgKDRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNBUlRfQlJSX0RJVl9NQU5USVNTQV9Nc2sgICAgICAgICAgKDB4RkZGVUwgPDwgVVNBUlRfQlJSX0RJVl9NQU5USVNTQV9Qb3MpIC8qITwgMHgwMDAwRkZGMCAqLw0KI2RlZmluZSBVU0FSVF9CUlJfRElWX01BTlRJU1NBICAgICAgICAgICAgICBVU0FSVF9CUlJfRElWX01BTlRJU1NBX01zayAgICAgICAgIC8qITwgTWFudGlzc2Egb2YgVVNBUlRESVYgKi8NCg0KLyoqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFVTQVJUX0NSMSByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgVVNBUlRfQ1IxX1NCS19Qb3MgICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNBUlRfQ1IxX1NCS19Nc2sgICAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IFVTQVJUX0NSMV9TQktfUG9zKSAgICAgICAgLyohPCAweDAwMDAwMDAxICovDQojZGVmaW5lIFVTQVJUX0NSMV9TQksgICAgICAgICAgICAgICAgICAgICAgIFVTQVJUX0NSMV9TQktfTXNrICAgICAgICAgICAgICAgICAgLyohPCBTZW5kIEJyZWFrICovDQojZGVmaW5lIFVTQVJUX0NSMV9SV1VfUG9zICAgICAgICAgICAgICAgICAgICgxVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQVJUX0NSMV9SV1VfTXNrICAgICAgICAgICAgICAgICAgICgweDFVTCA8PCBVU0FSVF9DUjFfUldVX1BvcykgICAgICAgIC8qITwgMHgwMDAwMDAwMiAqLw0KI2RlZmluZSBVU0FSVF9DUjFfUldVICAgICAgICAgICAgICAgICAgICAgICBVU0FSVF9DUjFfUldVX01zayAgICAgICAgICAgICAgICAgIC8qITwgUmVjZWl2ZXIgd2FrZXVwICovDQojZGVmaW5lIFVTQVJUX0NSMV9SRV9Qb3MgICAgICAgICAgICAgICAgICAgICgyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQVJUX0NSMV9SRV9Nc2sgICAgICAgICAgICAgICAgICAgICgweDFVTCA8PCBVU0FSVF9DUjFfUkVfUG9zKSAgICAgICAgIC8qITwgMHgwMDAwMDAwNCAqLw0KI2RlZmluZSBVU0FSVF9DUjFfUkUgICAgICAgICAgICAgICAgICAgICAgICBVU0FSVF9DUjFfUkVfTXNrICAgICAgICAgICAgICAgICAgIC8qITwgUmVjZWl2ZXIgRW5hYmxlICovDQojZGVmaW5lIFVTQVJUX0NSMV9URV9Qb3MgICAgICAgICAgICAgICAgICAgICgzVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQVJUX0NSMV9URV9Nc2sgICAgICAgICAgICAgICAgICAgICgweDFVTCA8PCBVU0FSVF9DUjFfVEVfUG9zKSAgICAgICAgIC8qITwgMHgwMDAwMDAwOCAqLw0KI2RlZmluZSBVU0FSVF9DUjFfVEUgICAgICAgICAgICAgICAgICAgICAgICBVU0FSVF9DUjFfVEVfTXNrICAgICAgICAgICAgICAgICAgIC8qITwgVHJhbnNtaXR0ZXIgRW5hYmxlICovDQojZGVmaW5lIFVTQVJUX0NSMV9JRExFSUVfUG9zICAgICAgICAgICAgICAgICg0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQVJUX0NSMV9JRExFSUVfTXNrICAgICAgICAgICAgICAgICgweDFVTCA8PCBVU0FSVF9DUjFfSURMRUlFX1BvcykgICAgIC8qITwgMHgwMDAwMDAxMCAqLw0KI2RlZmluZSBVU0FSVF9DUjFfSURMRUlFICAgICAgICAgICAgICAgICAgICBVU0FSVF9DUjFfSURMRUlFX01zayAgICAgICAgICAgICAgIC8qITwgSURMRSBJbnRlcnJ1cHQgRW5hYmxlICovDQojZGVmaW5lIFVTQVJUX0NSMV9SWE5FSUVfUG9zICAgICAgICAgICAgICAgICg1VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQVJUX0NSMV9SWE5FSUVfTXNrICAgICAgICAgICAgICAgICgweDFVTCA8PCBVU0FSVF9DUjFfUlhORUlFX1BvcykgICAgIC8qITwgMHgwMDAwMDAyMCAqLw0KI2RlZmluZSBVU0FSVF9DUjFfUlhORUlFICAgICAgICAgICAgICAgICAgICBVU0FSVF9DUjFfUlhORUlFX01zayAgICAgICAgICAgICAgIC8qITwgUlhORSBJbnRlcnJ1cHQgRW5hYmxlICovDQojZGVmaW5lIFVTQVJUX0NSMV9UQ0lFX1BvcyAgICAgICAgICAgICAgICAgICg2VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQVJUX0NSMV9UQ0lFX01zayAgICAgICAgICAgICAgICAgICgweDFVTCA8PCBVU0FSVF9DUjFfVENJRV9Qb3MpICAgICAgIC8qITwgMHgwMDAwMDA0MCAqLw0KI2RlZmluZSBVU0FSVF9DUjFfVENJRSAgICAgICAgICAgICAgICAgICAgICBVU0FSVF9DUjFfVENJRV9Nc2sgICAgICAgICAgICAgICAgIC8qITwgVHJhbnNtaXNzaW9uIENvbXBsZXRlIEludGVycnVwdCBFbmFibGUgKi8NCiNkZWZpbmUgVVNBUlRfQ1IxX1RYRUlFX1BvcyAgICAgICAgICAgICAgICAgKDdVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNBUlRfQ1IxX1RYRUlFX01zayAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IFVTQVJUX0NSMV9UWEVJRV9Qb3MpICAgICAgLyohPCAweDAwMDAwMDgwICovDQojZGVmaW5lIFVTQVJUX0NSMV9UWEVJRSAgICAgICAgICAgICAgICAgICAgIFVTQVJUX0NSMV9UWEVJRV9Nc2sgICAgICAgICAgICAgICAgLyohPCBQRSBJbnRlcnJ1cHQgRW5hYmxlICovDQojZGVmaW5lIFVTQVJUX0NSMV9QRUlFX1BvcyAgICAgICAgICAgICAgICAgICg4VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQVJUX0NSMV9QRUlFX01zayAgICAgICAgICAgICAgICAgICgweDFVTCA8PCBVU0FSVF9DUjFfUEVJRV9Qb3MpICAgICAgIC8qITwgMHgwMDAwMDEwMCAqLw0KI2RlZmluZSBVU0FSVF9DUjFfUEVJRSAgICAgICAgICAgICAgICAgICAgICBVU0FSVF9DUjFfUEVJRV9Nc2sgICAgICAgICAgICAgICAgIC8qITwgUEUgSW50ZXJydXB0IEVuYWJsZSAqLw0KI2RlZmluZSBVU0FSVF9DUjFfUFNfUG9zICAgICAgICAgICAgICAgICAgICAoOVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0FSVF9DUjFfUFNfTXNrICAgICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgVVNBUlRfQ1IxX1BTX1BvcykgICAgICAgICAvKiE8IDB4MDAwMDAyMDAgKi8NCiNkZWZpbmUgVVNBUlRfQ1IxX1BTICAgICAgICAgICAgICAgICAgICAgICAgVVNBUlRfQ1IxX1BTX01zayAgICAgICAgICAgICAgICAgICAvKiE8IFBhcml0eSBTZWxlY3Rpb24gKi8NCiNkZWZpbmUgVVNBUlRfQ1IxX1BDRV9Qb3MgICAgICAgICAgICAgICAgICAgKDEwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNBUlRfQ1IxX1BDRV9Nc2sgICAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IFVTQVJUX0NSMV9QQ0VfUG9zKSAgICAgICAgLyohPCAweDAwMDAwNDAwICovDQojZGVmaW5lIFVTQVJUX0NSMV9QQ0UgICAgICAgICAgICAgICAgICAgICAgIFVTQVJUX0NSMV9QQ0VfTXNrICAgICAgICAgICAgICAgICAgLyohPCBQYXJpdHkgQ29udHJvbCBFbmFibGUgKi8NCiNkZWZpbmUgVVNBUlRfQ1IxX1dBS0VfUG9zICAgICAgICAgICAgICAgICAgKDExVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNBUlRfQ1IxX1dBS0VfTXNrICAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IFVTQVJUX0NSMV9XQUtFX1BvcykgICAgICAgLyohPCAweDAwMDAwODAwICovDQojZGVmaW5lIFVTQVJUX0NSMV9XQUtFICAgICAgICAgICAgICAgICAgICAgIFVTQVJUX0NSMV9XQUtFX01zayAgICAgICAgICAgICAgICAgLyohPCBXYWtldXAgbWV0aG9kICovDQojZGVmaW5lIFVTQVJUX0NSMV9NX1BvcyAgICAgICAgICAgICAgICAgICAgICgxMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQVJUX0NSMV9NX01zayAgICAgICAgICAgICAgICAgICAgICgweDFVTCA8PCBVU0FSVF9DUjFfTV9Qb3MpICAgICAgICAgIC8qITwgMHgwMDAwMTAwMCAqLw0KI2RlZmluZSBVU0FSVF9DUjFfTSAgICAgICAgICAgICAgICAgICAgICAgICBVU0FSVF9DUjFfTV9Nc2sgICAgICAgICAgICAgICAgICAgIC8qITwgV29yZCBsZW5ndGggKi8NCiNkZWZpbmUgVVNBUlRfQ1IxX1VFX1BvcyAgICAgICAgICAgICAgICAgICAgKDEzVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNBUlRfQ1IxX1VFX01zayAgICAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IFVTQVJUX0NSMV9VRV9Qb3MpICAgICAgICAgLyohPCAweDAwMDAyMDAwICovDQojZGVmaW5lIFVTQVJUX0NSMV9VRSAgICAgICAgICAgICAgICAgICAgICAgIFVTQVJUX0NSMV9VRV9Nc2sgICAgICAgICAgICAgICAgICAgLyohPCBVU0FSVCBFbmFibGUgKi8NCiNkZWZpbmUgVVNBUlRfQ1IxX09WRVI4X1BvcyAgICAgICAgICAgICAgICAgKDE1VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNBUlRfQ1IxX09WRVI4X01zayAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IFVTQVJUX0NSMV9PVkVSOF9Qb3MpICAgICAgLyohPCAweDAwMDA4MDAwICovDQojZGVmaW5lIFVTQVJUX0NSMV9PVkVSOCAgICAgICAgICAgICAgICAgICAgIFVTQVJUX0NSMV9PVkVSOF9Nc2sgICAgICAgICAgICAgICAgLyohPCBPdmVyc2FtcGxpbmcgYnkgOC1iaXQgbW9kZSAqLw0KDQovKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgVVNBUlRfQ1IyIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBVU0FSVF9DUjJfQUREX1BvcyAgICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0FSVF9DUjJfQUREX01zayAgICAgICAgICAgICAgICAgICAoMHhGVUwgPDwgVVNBUlRfQ1IyX0FERF9Qb3MpICAgICAgICAvKiE8IDB4MDAwMDAwMEYgKi8NCiNkZWZpbmUgVVNBUlRfQ1IyX0FERCAgICAgICAgICAgICAgICAgICAgICAgVVNBUlRfQ1IyX0FERF9Nc2sgICAgICAgICAgICAgICAgICAvKiE8IEFkZHJlc3Mgb2YgdGhlIFVTQVJUIG5vZGUgKi8NCiNkZWZpbmUgVVNBUlRfQ1IyX0xCRExfUG9zICAgICAgICAgICAgICAgICAgKDVVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNBUlRfQ1IyX0xCRExfTXNrICAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IFVTQVJUX0NSMl9MQkRMX1BvcykgICAgICAgLyohPCAweDAwMDAwMDIwICovDQojZGVmaW5lIFVTQVJUX0NSMl9MQkRMICAgICAgICAgICAgICAgICAgICAgIFVTQVJUX0NSMl9MQkRMX01zayAgICAgICAgICAgICAgICAgLyohPCBMSU4gQnJlYWsgRGV0ZWN0aW9uIExlbmd0aCAqLw0KI2RlZmluZSBVU0FSVF9DUjJfTEJESUVfUG9zICAgICAgICAgICAgICAgICAoNlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0FSVF9DUjJfTEJESUVfTXNrICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgVVNBUlRfQ1IyX0xCRElFX1BvcykgICAgICAvKiE8IDB4MDAwMDAwNDAgKi8NCiNkZWZpbmUgVVNBUlRfQ1IyX0xCRElFICAgICAgICAgICAgICAgICAgICAgVVNBUlRfQ1IyX0xCRElFX01zayAgICAgICAgICAgICAgICAvKiE8IExJTiBCcmVhayBEZXRlY3Rpb24gSW50ZXJydXB0IEVuYWJsZSAqLw0KI2RlZmluZSBVU0FSVF9DUjJfTEJDTF9Qb3MgICAgICAgICAgICAgICAgICAoOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0FSVF9DUjJfTEJDTF9Nc2sgICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgVVNBUlRfQ1IyX0xCQ0xfUG9zKSAgICAgICAvKiE8IDB4MDAwMDAxMDAgKi8NCiNkZWZpbmUgVVNBUlRfQ1IyX0xCQ0wgICAgICAgICAgICAgICAgICAgICAgVVNBUlRfQ1IyX0xCQ0xfTXNrICAgICAgICAgICAgICAgICAvKiE8IExhc3QgQml0IENsb2NrIHB1bHNlICovDQojZGVmaW5lIFVTQVJUX0NSMl9DUEhBX1BvcyAgICAgICAgICAgICAgICAgICg5VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQVJUX0NSMl9DUEhBX01zayAgICAgICAgICAgICAgICAgICgweDFVTCA8PCBVU0FSVF9DUjJfQ1BIQV9Qb3MpICAgICAgIC8qITwgMHgwMDAwMDIwMCAqLw0KI2RlZmluZSBVU0FSVF9DUjJfQ1BIQSAgICAgICAgICAgICAgICAgICAgICBVU0FSVF9DUjJfQ1BIQV9Nc2sgICAgICAgICAgICAgICAgIC8qITwgQ2xvY2sgUGhhc2UgKi8NCiNkZWZpbmUgVVNBUlRfQ1IyX0NQT0xfUG9zICAgICAgICAgICAgICAgICAgKDEwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNBUlRfQ1IyX0NQT0xfTXNrICAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IFVTQVJUX0NSMl9DUE9MX1BvcykgICAgICAgLyohPCAweDAwMDAwNDAwICovDQojZGVmaW5lIFVTQVJUX0NSMl9DUE9MICAgICAgICAgICAgICAgICAgICAgIFVTQVJUX0NSMl9DUE9MX01zayAgICAgICAgICAgICAgICAgLyohPCBDbG9jayBQb2xhcml0eSAqLw0KI2RlZmluZSBVU0FSVF9DUjJfQ0xLRU5fUG9zICAgICAgICAgICAgICAgICAoMTFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0FSVF9DUjJfQ0xLRU5fTXNrICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgVVNBUlRfQ1IyX0NMS0VOX1BvcykgICAgICAvKiE8IDB4MDAwMDA4MDAgKi8NCiNkZWZpbmUgVVNBUlRfQ1IyX0NMS0VOICAgICAgICAgICAgICAgICAgICAgVVNBUlRfQ1IyX0NMS0VOX01zayAgICAgICAgICAgICAgICAvKiE8IENsb2NrIEVuYWJsZSAqLw0KDQojZGVmaW5lIFVTQVJUX0NSMl9TVE9QX1BvcyAgICAgICAgICAgICAgICAgICgxMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQVJUX0NSMl9TVE9QX01zayAgICAgICAgICAgICAgICAgICgweDNVTCA8PCBVU0FSVF9DUjJfU1RPUF9Qb3MpICAgICAgIC8qITwgMHgwMDAwMzAwMCAqLw0KI2RlZmluZSBVU0FSVF9DUjJfU1RPUCAgICAgICAgICAgICAgICAgICAgICBVU0FSVF9DUjJfU1RPUF9Nc2sgICAgICAgICAgICAgICAgIC8qITwgU1RPUFsxOjBdIGJpdHMgKFNUT1AgYml0cykgKi8NCiNkZWZpbmUgVVNBUlRfQ1IyX1NUT1BfMCAgICAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IFVTQVJUX0NSMl9TVE9QX1BvcykgICAgICAgLyohPCAweDAwMDAxMDAwICovDQojZGVmaW5lIFVTQVJUX0NSMl9TVE9QXzEgICAgICAgICAgICAgICAgICAgICgweDJVTCA8PCBVU0FSVF9DUjJfU1RPUF9Qb3MpICAgICAgIC8qITwgMHgwMDAwMjAwMCAqLw0KDQojZGVmaW5lIFVTQVJUX0NSMl9MSU5FTl9Qb3MgICAgICAgICAgICAgICAgICgxNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQVJUX0NSMl9MSU5FTl9Nc2sgICAgICAgICAgICAgICAgICgweDFVTCA8PCBVU0FSVF9DUjJfTElORU5fUG9zKSAgICAgIC8qITwgMHgwMDAwNDAwMCAqLw0KI2RlZmluZSBVU0FSVF9DUjJfTElORU4gICAgICAgICAgICAgICAgICAgICBVU0FSVF9DUjJfTElORU5fTXNrICAgICAgICAgICAgICAgIC8qITwgTElOIG1vZGUgZW5hYmxlICovDQoNCi8qKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBVU0FSVF9DUjMgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIFVTQVJUX0NSM19FSUVfUG9zICAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQVJUX0NSM19FSUVfTXNrICAgICAgICAgICAgICAgICAgICgweDFVTCA8PCBVU0FSVF9DUjNfRUlFX1BvcykgICAgICAgIC8qITwgMHgwMDAwMDAwMSAqLw0KI2RlZmluZSBVU0FSVF9DUjNfRUlFICAgICAgICAgICAgICAgICAgICAgICBVU0FSVF9DUjNfRUlFX01zayAgICAgICAgICAgICAgICAgIC8qITwgRXJyb3IgSW50ZXJydXB0IEVuYWJsZSAqLw0KI2RlZmluZSBVU0FSVF9DUjNfSVJFTl9Qb3MgICAgICAgICAgICAgICAgICAoMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0FSVF9DUjNfSVJFTl9Nc2sgICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgVVNBUlRfQ1IzX0lSRU5fUG9zKSAgICAgICAvKiE8IDB4MDAwMDAwMDIgKi8NCiNkZWZpbmUgVVNBUlRfQ1IzX0lSRU4gICAgICAgICAgICAgICAgICAgICAgVVNBUlRfQ1IzX0lSRU5fTXNrICAgICAgICAgICAgICAgICAvKiE8IElyREEgbW9kZSBFbmFibGUgKi8NCiNkZWZpbmUgVVNBUlRfQ1IzX0lSTFBfUG9zICAgICAgICAgICAgICAgICAgKDJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNBUlRfQ1IzX0lSTFBfTXNrICAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IFVTQVJUX0NSM19JUkxQX1BvcykgICAgICAgLyohPCAweDAwMDAwMDA0ICovDQojZGVmaW5lIFVTQVJUX0NSM19JUkxQICAgICAgICAgICAgICAgICAgICAgIFVTQVJUX0NSM19JUkxQX01zayAgICAgICAgICAgICAgICAgLyohPCBJckRBIExvdy1Qb3dlciAqLw0KI2RlZmluZSBVU0FSVF9DUjNfSERTRUxfUG9zICAgICAgICAgICAgICAgICAoM1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0FSVF9DUjNfSERTRUxfTXNrICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgVVNBUlRfQ1IzX0hEU0VMX1BvcykgICAgICAvKiE8IDB4MDAwMDAwMDggKi8NCiNkZWZpbmUgVVNBUlRfQ1IzX0hEU0VMICAgICAgICAgICAgICAgICAgICAgVVNBUlRfQ1IzX0hEU0VMX01zayAgICAgICAgICAgICAgICAvKiE8IEhhbGYtRHVwbGV4IFNlbGVjdGlvbiAqLw0KI2RlZmluZSBVU0FSVF9DUjNfTkFDS19Qb3MgICAgICAgICAgICAgICAgICAoNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0FSVF9DUjNfTkFDS19Nc2sgICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgVVNBUlRfQ1IzX05BQ0tfUG9zKSAgICAgICAvKiE8IDB4MDAwMDAwMTAgKi8NCiNkZWZpbmUgVVNBUlRfQ1IzX05BQ0sgICAgICAgICAgICAgICAgICAgICAgVVNBUlRfQ1IzX05BQ0tfTXNrICAgICAgICAgICAgICAgICAvKiE8IFNtYXJ0Y2FyZCBOQUNLIGVuYWJsZSAqLw0KI2RlZmluZSBVU0FSVF9DUjNfU0NFTl9Qb3MgICAgICAgICAgICAgICAgICAoNVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0FSVF9DUjNfU0NFTl9Nc2sgICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgVVNBUlRfQ1IzX1NDRU5fUG9zKSAgICAgICAvKiE8IDB4MDAwMDAwMjAgKi8NCiNkZWZpbmUgVVNBUlRfQ1IzX1NDRU4gICAgICAgICAgICAgICAgICAgICAgVVNBUlRfQ1IzX1NDRU5fTXNrICAgICAgICAgICAgICAgICAvKiE8IFNtYXJ0Y2FyZCBtb2RlIGVuYWJsZSAqLw0KI2RlZmluZSBVU0FSVF9DUjNfRE1BUl9Qb3MgICAgICAgICAgICAgICAgICAoNlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0FSVF9DUjNfRE1BUl9Nc2sgICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgVVNBUlRfQ1IzX0RNQVJfUG9zKSAgICAgICAvKiE8IDB4MDAwMDAwNDAgKi8NCiNkZWZpbmUgVVNBUlRfQ1IzX0RNQVIgICAgICAgICAgICAgICAgICAgICAgVVNBUlRfQ1IzX0RNQVJfTXNrICAgICAgICAgICAgICAgICAvKiE8IERNQSBFbmFibGUgUmVjZWl2ZXIgKi8NCiNkZWZpbmUgVVNBUlRfQ1IzX0RNQVRfUG9zICAgICAgICAgICAgICAgICAgKDdVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNBUlRfQ1IzX0RNQVRfTXNrICAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IFVTQVJUX0NSM19ETUFUX1BvcykgICAgICAgLyohPCAweDAwMDAwMDgwICovDQojZGVmaW5lIFVTQVJUX0NSM19ETUFUICAgICAgICAgICAgICAgICAgICAgIFVTQVJUX0NSM19ETUFUX01zayAgICAgICAgICAgICAgICAgLyohPCBETUEgRW5hYmxlIFRyYW5zbWl0dGVyICovDQojZGVmaW5lIFVTQVJUX0NSM19SVFNFX1BvcyAgICAgICAgICAgICAgICAgICg4VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQVJUX0NSM19SVFNFX01zayAgICAgICAgICAgICAgICAgICgweDFVTCA8PCBVU0FSVF9DUjNfUlRTRV9Qb3MpICAgICAgIC8qITwgMHgwMDAwMDEwMCAqLw0KI2RlZmluZSBVU0FSVF9DUjNfUlRTRSAgICAgICAgICAgICAgICAgICAgICBVU0FSVF9DUjNfUlRTRV9Nc2sgICAgICAgICAgICAgICAgIC8qITwgUlRTIEVuYWJsZSAqLw0KI2RlZmluZSBVU0FSVF9DUjNfQ1RTRV9Qb3MgICAgICAgICAgICAgICAgICAoOVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0FSVF9DUjNfQ1RTRV9Nc2sgICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgVVNBUlRfQ1IzX0NUU0VfUG9zKSAgICAgICAvKiE8IDB4MDAwMDAyMDAgKi8NCiNkZWZpbmUgVVNBUlRfQ1IzX0NUU0UgICAgICAgICAgICAgICAgICAgICAgVVNBUlRfQ1IzX0NUU0VfTXNrICAgICAgICAgICAgICAgICAvKiE8IENUUyBFbmFibGUgKi8NCiNkZWZpbmUgVVNBUlRfQ1IzX0NUU0lFX1BvcyAgICAgICAgICAgICAgICAgKDEwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNBUlRfQ1IzX0NUU0lFX01zayAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IFVTQVJUX0NSM19DVFNJRV9Qb3MpICAgICAgLyohPCAweDAwMDAwNDAwICovDQojZGVmaW5lIFVTQVJUX0NSM19DVFNJRSAgICAgICAgICAgICAgICAgICAgIFVTQVJUX0NSM19DVFNJRV9Nc2sgICAgICAgICAgICAgICAgLyohPCBDVFMgSW50ZXJydXB0IEVuYWJsZSAqLw0KI2RlZmluZSBVU0FSVF9DUjNfT05FQklUX1BvcyAgICAgICAgICAgICAgICAoMTFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0FSVF9DUjNfT05FQklUX01zayAgICAgICAgICAgICAgICAoMHgxVUwgPDwgVVNBUlRfQ1IzX09ORUJJVF9Qb3MpICAgICAvKiE8IDB4MDAwMDA4MDAgKi8NCiNkZWZpbmUgVVNBUlRfQ1IzX09ORUJJVCAgICAgICAgICAgICAgICAgICAgVVNBUlRfQ1IzX09ORUJJVF9Nc2sgICAgICAgICAgICAgICAvKiE8IE9uZSBzYW1wbGUgYml0IG1ldGhvZCBlbmFibGUgKi8NCg0KLyoqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFVTQVJUX0dUUFIgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgVVNBUlRfR1RQUl9QU0NfUG9zICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNBUlRfR1RQUl9QU0NfTXNrICAgICAgICAgICAgICAgICAgKDB4RkZVTCA8PCBVU0FSVF9HVFBSX1BTQ19Qb3MpICAgICAgLyohPCAweDAwMDAwMEZGICovDQojZGVmaW5lIFVTQVJUX0dUUFJfUFNDICAgICAgICAgICAgICAgICAgICAgIFVTQVJUX0dUUFJfUFNDX01zayAgICAgICAgICAgICAgICAgLyohPCBQU0NbNzowXSBiaXRzIChQcmVzY2FsZXIgdmFsdWUpICovDQojZGVmaW5lIFVTQVJUX0dUUFJfUFNDXzAgICAgICAgICAgICAgICAgICAgICgweDAxVUwgPDwgVVNBUlRfR1RQUl9QU0NfUG9zKSAgICAgIC8qITwgMHgwMDAwMDAwMSAqLw0KI2RlZmluZSBVU0FSVF9HVFBSX1BTQ18xICAgICAgICAgICAgICAgICAgICAoMHgwMlVMIDw8IFVTQVJUX0dUUFJfUFNDX1BvcykgICAgICAvKiE8IDB4MDAwMDAwMDIgKi8NCiNkZWZpbmUgVVNBUlRfR1RQUl9QU0NfMiAgICAgICAgICAgICAgICAgICAgKDB4MDRVTCA8PCBVU0FSVF9HVFBSX1BTQ19Qb3MpICAgICAgLyohPCAweDAwMDAwMDA0ICovDQojZGVmaW5lIFVTQVJUX0dUUFJfUFNDXzMgICAgICAgICAgICAgICAgICAgICgweDA4VUwgPDwgVVNBUlRfR1RQUl9QU0NfUG9zKSAgICAgIC8qITwgMHgwMDAwMDAwOCAqLw0KI2RlZmluZSBVU0FSVF9HVFBSX1BTQ180ICAgICAgICAgICAgICAgICAgICAoMHgxMFVMIDw8IFVTQVJUX0dUUFJfUFNDX1BvcykgICAgICAvKiE8IDB4MDAwMDAwMTAgKi8NCiNkZWZpbmUgVVNBUlRfR1RQUl9QU0NfNSAgICAgICAgICAgICAgICAgICAgKDB4MjBVTCA8PCBVU0FSVF9HVFBSX1BTQ19Qb3MpICAgICAgLyohPCAweDAwMDAwMDIwICovDQojZGVmaW5lIFVTQVJUX0dUUFJfUFNDXzYgICAgICAgICAgICAgICAgICAgICgweDQwVUwgPDwgVVNBUlRfR1RQUl9QU0NfUG9zKSAgICAgIC8qITwgMHgwMDAwMDA0MCAqLw0KI2RlZmluZSBVU0FSVF9HVFBSX1BTQ183ICAgICAgICAgICAgICAgICAgICAoMHg4MFVMIDw8IFVTQVJUX0dUUFJfUFNDX1BvcykgICAgICAvKiE8IDB4MDAwMDAwODAgKi8NCg0KI2RlZmluZSBVU0FSVF9HVFBSX0dUX1BvcyAgICAgICAgICAgICAgICAgICAoOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0FSVF9HVFBSX0dUX01zayAgICAgICAgICAgICAgICAgICAoMHhGRlVMIDw8IFVTQVJUX0dUUFJfR1RfUG9zKSAgICAgICAvKiE8IDB4MDAwMEZGMDAgKi8NCiNkZWZpbmUgVVNBUlRfR1RQUl9HVCAgICAgICAgICAgICAgICAgICAgICAgVVNBUlRfR1RQUl9HVF9Nc2sgICAgICAgICAgICAgICAgICAvKiE8IEd1YXJkIHRpbWUgdmFsdWUgKi8NCg0KLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8NCi8qICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovDQovKiAgICAgICAgICAgICAgICAgICAgIFVuaXZlcnNhbCBTZXJpYWwgQnVzIChVU0IpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLw0KLyogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8NCi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovDQoNCi8qITxFbmRwb2ludC1zcGVjaWZpYyByZWdpc3RlcnMgKi8NCg0KI2RlZmluZSAgVVNCX0VQMFIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBVU0JfQkFTRSAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgZW5kcG9pbnQgMCByZWdpc3RlciBhZGRyZXNzICovDQojZGVmaW5lICBVU0JfRVAxUiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKFVTQl9CQVNFICsgMHgwMDAwMDAwNFUpICAgICAgICAgLyohPCBlbmRwb2ludCAxIHJlZ2lzdGVyIGFkZHJlc3MgKi8NCiNkZWZpbmUgIFVTQl9FUDJSICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoVVNCX0JBU0UgKyAweDAwMDAwMDA4VSkgICAgICAgICAvKiE8IGVuZHBvaW50IDIgcmVnaXN0ZXIgYWRkcmVzcyAqLw0KI2RlZmluZSAgVVNCX0VQM1IgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChVU0JfQkFTRSArIDB4MDAwMDAwMENVKSAgICAgICAgIC8qITwgZW5kcG9pbnQgMyByZWdpc3RlciBhZGRyZXNzICovDQojZGVmaW5lICBVU0JfRVA0UiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKFVTQl9CQVNFICsgMHgwMDAwMDAxMFUpICAgICAgICAgLyohPCBlbmRwb2ludCA0IHJlZ2lzdGVyIGFkZHJlc3MgKi8NCiNkZWZpbmUgIFVTQl9FUDVSICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoVVNCX0JBU0UgKyAweDAwMDAwMDE0VSkgICAgICAgICAvKiE8IGVuZHBvaW50IDUgcmVnaXN0ZXIgYWRkcmVzcyAqLw0KI2RlZmluZSAgVVNCX0VQNlIgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChVU0JfQkFTRSArIDB4MDAwMDAwMThVKSAgICAgICAgIC8qITwgZW5kcG9pbnQgNiByZWdpc3RlciBhZGRyZXNzICovDQojZGVmaW5lICBVU0JfRVA3UiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKFVTQl9CQVNFICsgMHgwMDAwMDAxQ1UpICAgICAgICAgLyohPCBlbmRwb2ludCA3IHJlZ2lzdGVyIGFkZHJlc3MgKi8NCg0KLyogYml0IHBvc2l0aW9ucyAqLyANCiNkZWZpbmUgVVNCX0VQX0NUUl9SWF9Qb3MgICAgICAgICAgICAgICAgICAgICAoMTVVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNCX0VQX0NUUl9SWF9Nc2sgICAgICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgVVNCX0VQX0NUUl9SWF9Qb3MpICAgICAgLyohPCAweDAwMDA4MDAwICovDQojZGVmaW5lIFVTQl9FUF9DVFJfUlggICAgICAgICAgICAgICAgICAgICAgICAgVVNCX0VQX0NUUl9SWF9Nc2sgICAgICAgICAgICAgICAgLyohPCAgRW5kUG9pbnQgQ29ycmVjdCBUUmFuc2ZlciBSWCAqLw0KI2RlZmluZSBVU0JfRVBfRFRPR19SWF9Qb3MgICAgICAgICAgICAgICAgICAgICgxNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0JfRVBfRFRPR19SWF9Nc2sgICAgICAgICAgICAgICAgICAgICgweDFVTCA8PCBVU0JfRVBfRFRPR19SWF9Qb3MpICAgICAvKiE8IDB4MDAwMDQwMDAgKi8NCiNkZWZpbmUgVVNCX0VQX0RUT0dfUlggICAgICAgICAgICAgICAgICAgICAgICBVU0JfRVBfRFRPR19SWF9Nc2sgICAgICAgICAgICAgICAvKiE8ICBFbmRQb2ludCBEYXRhIFRPR0dMRSBSWCAqLw0KI2RlZmluZSBVU0JfRVBSWF9TVEFUX1BvcyAgICAgICAgICAgICAgICAgICAgICgxMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0JfRVBSWF9TVEFUX01zayAgICAgICAgICAgICAgICAgICAgICgweDNVTCA8PCBVU0JfRVBSWF9TVEFUX1BvcykgICAgICAvKiE8IDB4MDAwMDMwMDAgKi8NCiNkZWZpbmUgVVNCX0VQUlhfU1RBVCAgICAgICAgICAgICAgICAgICAgICAgICBVU0JfRVBSWF9TVEFUX01zayAgICAgICAgICAgICAgICAvKiE8ICBFbmRQb2ludCBSWCBTVEFUdXMgYml0IGZpZWxkICovDQojZGVmaW5lIFVTQl9FUF9TRVRVUF9Qb3MgICAgICAgICAgICAgICAgICAgICAgKDExVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQl9FUF9TRVRVUF9Nc2sgICAgICAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IFVTQl9FUF9TRVRVUF9Qb3MpICAgICAgIC8qITwgMHgwMDAwMDgwMCAqLw0KI2RlZmluZSBVU0JfRVBfU0VUVVAgICAgICAgICAgICAgICAgICAgICAgICAgIFVTQl9FUF9TRVRVUF9Nc2sgICAgICAgICAgICAgICAgIC8qITwgIEVuZFBvaW50IFNFVFVQICovDQojZGVmaW5lIFVTQl9FUF9UX0ZJRUxEX1BvcyAgICAgICAgICAgICAgICAgICAgKDlVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQl9FUF9UX0ZJRUxEX01zayAgICAgICAgICAgICAgICAgICAgKDB4M1VMIDw8IFVTQl9FUF9UX0ZJRUxEX1BvcykgICAgIC8qITwgMHgwMDAwMDYwMCAqLw0KI2RlZmluZSBVU0JfRVBfVF9GSUVMRCAgICAgICAgICAgICAgICAgICAgICAgIFVTQl9FUF9UX0ZJRUxEX01zayAgICAgICAgICAgICAgIC8qITwgIEVuZFBvaW50IFRZUEUgKi8NCiNkZWZpbmUgVVNCX0VQX0tJTkRfUG9zICAgICAgICAgICAgICAgICAgICAgICAoOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNCX0VQX0tJTkRfTXNrICAgICAgICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgVVNCX0VQX0tJTkRfUG9zKSAgICAgICAgLyohPCAweDAwMDAwMTAwICovDQojZGVmaW5lIFVTQl9FUF9LSU5EICAgICAgICAgICAgICAgICAgICAgICAgICAgVVNCX0VQX0tJTkRfTXNrICAgICAgICAgICAgICAgICAgLyohPCAgRW5kUG9pbnQgS0lORCAqLw0KI2RlZmluZSBVU0JfRVBfQ1RSX1RYX1BvcyAgICAgICAgICAgICAgICAgICAgICg3VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0JfRVBfQ1RSX1RYX01zayAgICAgICAgICAgICAgICAgICAgICgweDFVTCA8PCBVU0JfRVBfQ1RSX1RYX1BvcykgICAgICAvKiE8IDB4MDAwMDAwODAgKi8NCiNkZWZpbmUgVVNCX0VQX0NUUl9UWCAgICAgICAgICAgICAgICAgICAgICAgICBVU0JfRVBfQ1RSX1RYX01zayAgICAgICAgICAgICAgICAvKiE8ICBFbmRQb2ludCBDb3JyZWN0IFRSYW5zZmVyIFRYICovDQojZGVmaW5lIFVTQl9FUF9EVE9HX1RYX1BvcyAgICAgICAgICAgICAgICAgICAgKDZVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQl9FUF9EVE9HX1RYX01zayAgICAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IFVTQl9FUF9EVE9HX1RYX1BvcykgICAgIC8qITwgMHgwMDAwMDA0MCAqLw0KI2RlZmluZSBVU0JfRVBfRFRPR19UWCAgICAgICAgICAgICAgICAgICAgICAgIFVTQl9FUF9EVE9HX1RYX01zayAgICAgICAgICAgICAgIC8qITwgIEVuZFBvaW50IERhdGEgVE9HR0xFIFRYICovDQojZGVmaW5lIFVTQl9FUFRYX1NUQVRfUG9zICAgICAgICAgICAgICAgICAgICAgKDRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQl9FUFRYX1NUQVRfTXNrICAgICAgICAgICAgICAgICAgICAgKDB4M1VMIDw8IFVTQl9FUFRYX1NUQVRfUG9zKSAgICAgIC8qITwgMHgwMDAwMDAzMCAqLw0KI2RlZmluZSBVU0JfRVBUWF9TVEFUICAgICAgICAgICAgICAgICAgICAgICAgIFVTQl9FUFRYX1NUQVRfTXNrICAgICAgICAgICAgICAgIC8qITwgIEVuZFBvaW50IFRYIFNUQVR1cyBiaXQgZmllbGQgKi8NCiNkZWZpbmUgVVNCX0VQQUREUl9GSUVMRF9Qb3MgICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNCX0VQQUREUl9GSUVMRF9Nc2sgICAgICAgICAgICAgICAgICAoMHhGVUwgPDwgVVNCX0VQQUREUl9GSUVMRF9Qb3MpICAgLyohPCAweDAwMDAwMDBGICovDQojZGVmaW5lIFVTQl9FUEFERFJfRklFTEQgICAgICAgICAgICAgICAgICAgICAgVVNCX0VQQUREUl9GSUVMRF9Nc2sgICAgICAgICAgICAgLyohPCAgRW5kUG9pbnQgQUREUmVzcyBGSUVMRCAqLw0KDQovKiBFbmRQb2ludCBSRUdpc3RlciBNQVNLIChubyB0b2dnbGUgZmllbGRzKSAqLw0KI2RlZmluZSAgVVNCX0VQUkVHX01BU0sgICAgIChVU0JfRVBfQ1RSX1JYfFVTQl9FUF9TRVRVUHxVU0JfRVBfVF9GSUVMRHxVU0JfRVBfS0lORHxVU0JfRVBfQ1RSX1RYfFVTQl9FUEFERFJfRklFTEQpDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBFUF9UWVBFWzE6MF0gRW5kUG9pbnQgVFlQRSAqLw0KI2RlZmluZSBVU0JfRVBfVFlQRV9NQVNLX1BvcyAgICAgICAgICAgICAgICAgICg5VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0JfRVBfVFlQRV9NQVNLX01zayAgICAgICAgICAgICAgICAgICgweDNVTCA8PCBVU0JfRVBfVFlQRV9NQVNLX1BvcykgICAvKiE8IDB4MDAwMDA2MDAgKi8NCiNkZWZpbmUgVVNCX0VQX1RZUEVfTUFTSyAgICAgICAgICAgICAgICAgICAgICBVU0JfRVBfVFlQRV9NQVNLX01zayAgICAgICAgICAgICAvKiE8IEVuZFBvaW50IFRZUEUgTWFzayAqLw0KI2RlZmluZSBVU0JfRVBfQlVMSyAgICAgICAgICAgICAgICAgICAgICAgICAgICgweDAwMDAwMDAwVSkgICAgICAgICAgICAgICAgICAgIC8qITwgRW5kUG9pbnQgQlVMSyAqLw0KI2RlZmluZSBVU0JfRVBfQ09OVFJPTCAgICAgICAgICAgICAgICAgICAgICAgICgweDAwMDAwMjAwVSkgICAgICAgICAgICAgICAgICAgIC8qITwgRW5kUG9pbnQgQ09OVFJPTCAqLw0KI2RlZmluZSBVU0JfRVBfSVNPQ0hST05PVVMgICAgICAgICAgICAgICAgICAgICgweDAwMDAwNDAwVSkgICAgICAgICAgICAgICAgICAgIC8qITwgRW5kUG9pbnQgSVNPQ0hST05PVVMgKi8NCiNkZWZpbmUgVVNCX0VQX0lOVEVSUlVQVCAgICAgICAgICAgICAgICAgICAgICAoMHgwMDAwMDYwMFUpICAgICAgICAgICAgICAgICAgICAvKiE8IEVuZFBvaW50IElOVEVSUlVQVCAqLw0KI2RlZmluZSAgVVNCX0VQX1RfTUFTSyAgICAgICh+VVNCX0VQX1RfRklFTEQgJiBVU0JfRVBSRUdfTUFTSykNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lICBVU0JfRVBLSU5EX01BU0sgICAgKH5VU0JfRVBfS0lORCAmIFVTQl9FUFJFR19NQVNLKSAgICAgICAgICAgIC8qITwgRVBfS0lORCBFbmRQb2ludCBLSU5EICovDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyohPCBTVEFUX1RYWzE6MF0gU1RBVHVzIGZvciBUWCB0cmFuc2ZlciAqLw0KI2RlZmluZSBVU0JfRVBfVFhfRElTICAgICAgICAgICAgICAgICAgICAgICAgICgweDAwMDAwMDAwVSkgICAgICAgICAgICAgICAgICAgIC8qITwgRW5kUG9pbnQgVFggRElTYWJsZWQgKi8NCiNkZWZpbmUgVVNCX0VQX1RYX1NUQUxMICAgICAgICAgICAgICAgICAgICAgICAoMHgwMDAwMDAxMFUpICAgICAgICAgICAgICAgICAgICAvKiE8IEVuZFBvaW50IFRYIFNUQUxMZWQgKi8NCiNkZWZpbmUgVVNCX0VQX1RYX05BSyAgICAgICAgICAgICAgICAgICAgICAgICAoMHgwMDAwMDAyMFUpICAgICAgICAgICAgICAgICAgICAvKiE8IEVuZFBvaW50IFRYIE5BS2VkICovDQojZGVmaW5lIFVTQl9FUF9UWF9WQUxJRCAgICAgICAgICAgICAgICAgICAgICAgKDB4MDAwMDAwMzBVKSAgICAgICAgICAgICAgICAgICAgLyohPCBFbmRQb2ludCBUWCBWQUxJRCAqLw0KI2RlZmluZSBVU0JfRVBUWF9EVE9HMSAgICAgICAgICAgICAgICAgICAgICAgICgweDAwMDAwMDEwVSkgICAgICAgICAgICAgICAgICAgIC8qITwgRW5kUG9pbnQgVFggRGF0YSBUT0dnbGUgYml0MSAqLw0KI2RlZmluZSBVU0JfRVBUWF9EVE9HMiAgICAgICAgICAgICAgICAgICAgICAgICgweDAwMDAwMDIwVSkgICAgICAgICAgICAgICAgICAgIC8qITwgRW5kUG9pbnQgVFggRGF0YSBUT0dnbGUgYml0MiAqLw0KI2RlZmluZSAgVVNCX0VQVFhfRFRPR01BU0sgIChVU0JfRVBUWF9TVEFUfFVTQl9FUFJFR19NQVNLKQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qITwgU1RBVF9SWFsxOjBdIFNUQVR1cyBmb3IgUlggdHJhbnNmZXIgKi8NCiNkZWZpbmUgVVNCX0VQX1JYX0RJUyAgICAgICAgICAgICAgICAgICAgICAgICAoMHgwMDAwMDAwMFUpICAgICAgICAgICAgICAgICAgICAvKiE8IEVuZFBvaW50IFJYIERJU2FibGVkICovDQojZGVmaW5lIFVTQl9FUF9SWF9TVEFMTCAgICAgICAgICAgICAgICAgICAgICAgKDB4MDAwMDEwMDBVKSAgICAgICAgICAgICAgICAgICAgLyohPCBFbmRQb2ludCBSWCBTVEFMTGVkICovDQojZGVmaW5lIFVTQl9FUF9SWF9OQUsgICAgICAgICAgICAgICAgICAgICAgICAgKDB4MDAwMDIwMDBVKSAgICAgICAgICAgICAgICAgICAgLyohPCBFbmRQb2ludCBSWCBOQUtlZCAqLw0KI2RlZmluZSBVU0JfRVBfUlhfVkFMSUQgICAgICAgICAgICAgICAgICAgICAgICgweDAwMDAzMDAwVSkgICAgICAgICAgICAgICAgICAgIC8qITwgRW5kUG9pbnQgUlggVkFMSUQgKi8NCiNkZWZpbmUgVVNCX0VQUlhfRFRPRzEgICAgICAgICAgICAgICAgICAgICAgICAoMHgwMDAwMTAwMFUpICAgICAgICAgICAgICAgICAgICAvKiE8IEVuZFBvaW50IFJYIERhdGEgVE9HZ2xlIGJpdDEgKi8NCiNkZWZpbmUgVVNCX0VQUlhfRFRPRzIgICAgICAgICAgICAgICAgICAgICAgICAoMHgwMDAwMjAwMFUpICAgICAgICAgICAgICAgICAgICAvKiE8IEVuZFBvaW50IFJYIERhdGEgVE9HZ2xlIGJpdDEgKi8NCiNkZWZpbmUgIFVTQl9FUFJYX0RUT0dNQVNLICAoVVNCX0VQUlhfU1RBVHxVU0JfRVBSRUdfTUFTSykNCg0KLyoqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBVU0JfRVAwUiByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgVVNCX0VQMFJfRUFfUG9zICAgICAgICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNCX0VQMFJfRUFfTXNrICAgICAgICAgICAgICAgICAgICAgICAoMHhGVUwgPDwgVVNCX0VQMFJfRUFfUG9zKSAgICAgICAgLyohPCAweDAwMDAwMDBGICovDQojZGVmaW5lIFVTQl9FUDBSX0VBICAgICAgICAgICAgICAgICAgICAgICAgICAgVVNCX0VQMFJfRUFfTXNrICAgICAgICAgICAgICAgICAgLyohPEVuZHBvaW50IEFkZHJlc3MgKi8NCg0KI2RlZmluZSBVU0JfRVAwUl9TVEFUX1RYX1BvcyAgICAgICAgICAgICAgICAgICg0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0JfRVAwUl9TVEFUX1RYX01zayAgICAgICAgICAgICAgICAgICgweDNVTCA8PCBVU0JfRVAwUl9TVEFUX1RYX1BvcykgICAvKiE8IDB4MDAwMDAwMzAgKi8NCiNkZWZpbmUgVVNCX0VQMFJfU1RBVF9UWCAgICAgICAgICAgICAgICAgICAgICBVU0JfRVAwUl9TVEFUX1RYX01zayAgICAgICAgICAgICAvKiE8U1RBVF9UWFsxOjBdIGJpdHMgKFN0YXR1cyBiaXRzLCBmb3IgdHJhbnNtaXNzaW9uIHRyYW5zZmVycykgKi8NCiNkZWZpbmUgVVNCX0VQMFJfU1RBVF9UWF8wICAgICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgVVNCX0VQMFJfU1RBVF9UWF9Qb3MpICAgLyohPCAweDAwMDAwMDEwICovDQojZGVmaW5lIFVTQl9FUDBSX1NUQVRfVFhfMSAgICAgICAgICAgICAgICAgICAgKDB4MlVMIDw8IFVTQl9FUDBSX1NUQVRfVFhfUG9zKSAgIC8qITwgMHgwMDAwMDAyMCAqLw0KDQojZGVmaW5lIFVTQl9FUDBSX0RUT0dfVFhfUG9zICAgICAgICAgICAgICAgICAgKDZVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQl9FUDBSX0RUT0dfVFhfTXNrICAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IFVTQl9FUDBSX0RUT0dfVFhfUG9zKSAgIC8qITwgMHgwMDAwMDA0MCAqLw0KI2RlZmluZSBVU0JfRVAwUl9EVE9HX1RYICAgICAgICAgICAgICAgICAgICAgIFVTQl9FUDBSX0RUT0dfVFhfTXNrICAgICAgICAgICAgIC8qITxEYXRhIFRvZ2dsZSwgZm9yIHRyYW5zbWlzc2lvbiB0cmFuc2ZlcnMgKi8NCiNkZWZpbmUgVVNCX0VQMFJfQ1RSX1RYX1BvcyAgICAgICAgICAgICAgICAgICAoN1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNCX0VQMFJfQ1RSX1RYX01zayAgICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgVVNCX0VQMFJfQ1RSX1RYX1BvcykgICAgLyohPCAweDAwMDAwMDgwICovDQojZGVmaW5lIFVTQl9FUDBSX0NUUl9UWCAgICAgICAgICAgICAgICAgICAgICAgVVNCX0VQMFJfQ1RSX1RYX01zayAgICAgICAgICAgICAgLyohPENvcnJlY3QgVHJhbnNmZXIgZm9yIHRyYW5zbWlzc2lvbiAqLw0KI2RlZmluZSBVU0JfRVAwUl9FUF9LSU5EX1BvcyAgICAgICAgICAgICAgICAgICg4VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0JfRVAwUl9FUF9LSU5EX01zayAgICAgICAgICAgICAgICAgICgweDFVTCA8PCBVU0JfRVAwUl9FUF9LSU5EX1BvcykgICAvKiE8IDB4MDAwMDAxMDAgKi8NCiNkZWZpbmUgVVNCX0VQMFJfRVBfS0lORCAgICAgICAgICAgICAgICAgICAgICBVU0JfRVAwUl9FUF9LSU5EX01zayAgICAgICAgICAgICAvKiE8RW5kcG9pbnQgS2luZCAqLw0KDQojZGVmaW5lIFVTQl9FUDBSX0VQX1RZUEVfUG9zICAgICAgICAgICAgICAgICAgKDlVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQl9FUDBSX0VQX1RZUEVfTXNrICAgICAgICAgICAgICAgICAgKDB4M1VMIDw8IFVTQl9FUDBSX0VQX1RZUEVfUG9zKSAgIC8qITwgMHgwMDAwMDYwMCAqLw0KI2RlZmluZSBVU0JfRVAwUl9FUF9UWVBFICAgICAgICAgICAgICAgICAgICAgIFVTQl9FUDBSX0VQX1RZUEVfTXNrICAgICAgICAgICAgIC8qITxFUF9UWVBFWzE6MF0gYml0cyAoRW5kcG9pbnQgdHlwZSkgKi8NCiNkZWZpbmUgVVNCX0VQMFJfRVBfVFlQRV8wICAgICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgVVNCX0VQMFJfRVBfVFlQRV9Qb3MpICAgLyohPCAweDAwMDAwMjAwICovDQojZGVmaW5lIFVTQl9FUDBSX0VQX1RZUEVfMSAgICAgICAgICAgICAgICAgICAgKDB4MlVMIDw8IFVTQl9FUDBSX0VQX1RZUEVfUG9zKSAgIC8qITwgMHgwMDAwMDQwMCAqLw0KDQojZGVmaW5lIFVTQl9FUDBSX1NFVFVQX1BvcyAgICAgICAgICAgICAgICAgICAgKDExVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQl9FUDBSX1NFVFVQX01zayAgICAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IFVTQl9FUDBSX1NFVFVQX1BvcykgICAgIC8qITwgMHgwMDAwMDgwMCAqLw0KI2RlZmluZSBVU0JfRVAwUl9TRVRVUCAgICAgICAgICAgICAgICAgICAgICAgIFVTQl9FUDBSX1NFVFVQX01zayAgICAgICAgICAgICAgIC8qITxTZXR1cCB0cmFuc2FjdGlvbiBjb21wbGV0ZWQgKi8NCg0KI2RlZmluZSBVU0JfRVAwUl9TVEFUX1JYX1BvcyAgICAgICAgICAgICAgICAgICgxMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0JfRVAwUl9TVEFUX1JYX01zayAgICAgICAgICAgICAgICAgICgweDNVTCA8PCBVU0JfRVAwUl9TVEFUX1JYX1BvcykgICAvKiE8IDB4MDAwMDMwMDAgKi8NCiNkZWZpbmUgVVNCX0VQMFJfU1RBVF9SWCAgICAgICAgICAgICAgICAgICAgICBVU0JfRVAwUl9TVEFUX1JYX01zayAgICAgICAgICAgICAvKiE8U1RBVF9SWFsxOjBdIGJpdHMgKFN0YXR1cyBiaXRzLCBmb3IgcmVjZXB0aW9uIHRyYW5zZmVycykgKi8NCiNkZWZpbmUgVVNCX0VQMFJfU1RBVF9SWF8wICAgICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgVVNCX0VQMFJfU1RBVF9SWF9Qb3MpICAgLyohPCAweDAwMDAxMDAwICovDQojZGVmaW5lIFVTQl9FUDBSX1NUQVRfUlhfMSAgICAgICAgICAgICAgICAgICAgKDB4MlVMIDw8IFVTQl9FUDBSX1NUQVRfUlhfUG9zKSAgIC8qITwgMHgwMDAwMjAwMCAqLw0KDQojZGVmaW5lIFVTQl9FUDBSX0RUT0dfUlhfUG9zICAgICAgICAgICAgICAgICAgKDE0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQl9FUDBSX0RUT0dfUlhfTXNrICAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IFVTQl9FUDBSX0RUT0dfUlhfUG9zKSAgIC8qITwgMHgwMDAwNDAwMCAqLw0KI2RlZmluZSBVU0JfRVAwUl9EVE9HX1JYICAgICAgICAgICAgICAgICAgICAgIFVTQl9FUDBSX0RUT0dfUlhfTXNrICAgICAgICAgICAgIC8qITxEYXRhIFRvZ2dsZSwgZm9yIHJlY2VwdGlvbiB0cmFuc2ZlcnMgKi8NCiNkZWZpbmUgVVNCX0VQMFJfQ1RSX1JYX1BvcyAgICAgICAgICAgICAgICAgICAoMTVVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNCX0VQMFJfQ1RSX1JYX01zayAgICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgVVNCX0VQMFJfQ1RSX1JYX1BvcykgICAgLyohPCAweDAwMDA4MDAwICovDQojZGVmaW5lIFVTQl9FUDBSX0NUUl9SWCAgICAgICAgICAgICAgICAgICAgICAgVVNCX0VQMFJfQ1RSX1JYX01zayAgICAgICAgICAgICAgLyohPENvcnJlY3QgVHJhbnNmZXIgZm9yIHJlY2VwdGlvbiAqLw0KDQovKioqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFVTQl9FUDFSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBVU0JfRVAxUl9FQV9Qb3MgICAgICAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0JfRVAxUl9FQV9Nc2sgICAgICAgICAgICAgICAgICAgICAgICgweEZVTCA8PCBVU0JfRVAxUl9FQV9Qb3MpICAgICAgICAvKiE8IDB4MDAwMDAwMEYgKi8NCiNkZWZpbmUgVVNCX0VQMVJfRUEgICAgICAgICAgICAgICAgICAgICAgICAgICBVU0JfRVAxUl9FQV9Nc2sgICAgICAgICAgICAgICAgICAvKiE8RW5kcG9pbnQgQWRkcmVzcyAqLw0KDQojZGVmaW5lIFVTQl9FUDFSX1NUQVRfVFhfUG9zICAgICAgICAgICAgICAgICAgKDRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQl9FUDFSX1NUQVRfVFhfTXNrICAgICAgICAgICAgICAgICAgKDB4M1VMIDw8IFVTQl9FUDFSX1NUQVRfVFhfUG9zKSAgIC8qITwgMHgwMDAwMDAzMCAqLw0KI2RlZmluZSBVU0JfRVAxUl9TVEFUX1RYICAgICAgICAgICAgICAgICAgICAgIFVTQl9FUDFSX1NUQVRfVFhfTXNrICAgICAgICAgICAgIC8qITxTVEFUX1RYWzE6MF0gYml0cyAoU3RhdHVzIGJpdHMsIGZvciB0cmFuc21pc3Npb24gdHJhbnNmZXJzKSAqLw0KI2RlZmluZSBVU0JfRVAxUl9TVEFUX1RYXzAgICAgICAgICAgICAgICAgICAgICgweDFVTCA8PCBVU0JfRVAxUl9TVEFUX1RYX1BvcykgICAvKiE8IDB4MDAwMDAwMTAgKi8NCiNkZWZpbmUgVVNCX0VQMVJfU1RBVF9UWF8xICAgICAgICAgICAgICAgICAgICAoMHgyVUwgPDwgVVNCX0VQMVJfU1RBVF9UWF9Qb3MpICAgLyohPCAweDAwMDAwMDIwICovDQoNCiNkZWZpbmUgVVNCX0VQMVJfRFRPR19UWF9Qb3MgICAgICAgICAgICAgICAgICAoNlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNCX0VQMVJfRFRPR19UWF9Nc2sgICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgVVNCX0VQMVJfRFRPR19UWF9Qb3MpICAgLyohPCAweDAwMDAwMDQwICovDQojZGVmaW5lIFVTQl9FUDFSX0RUT0dfVFggICAgICAgICAgICAgICAgICAgICAgVVNCX0VQMVJfRFRPR19UWF9Nc2sgICAgICAgICAgICAgLyohPERhdGEgVG9nZ2xlLCBmb3IgdHJhbnNtaXNzaW9uIHRyYW5zZmVycyAqLw0KI2RlZmluZSBVU0JfRVAxUl9DVFJfVFhfUG9zICAgICAgICAgICAgICAgICAgICg3VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0JfRVAxUl9DVFJfVFhfTXNrICAgICAgICAgICAgICAgICAgICgweDFVTCA8PCBVU0JfRVAxUl9DVFJfVFhfUG9zKSAgICAvKiE8IDB4MDAwMDAwODAgKi8NCiNkZWZpbmUgVVNCX0VQMVJfQ1RSX1RYICAgICAgICAgICAgICAgICAgICAgICBVU0JfRVAxUl9DVFJfVFhfTXNrICAgICAgICAgICAgICAvKiE8Q29ycmVjdCBUcmFuc2ZlciBmb3IgdHJhbnNtaXNzaW9uICovDQojZGVmaW5lIFVTQl9FUDFSX0VQX0tJTkRfUG9zICAgICAgICAgICAgICAgICAgKDhVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQl9FUDFSX0VQX0tJTkRfTXNrICAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IFVTQl9FUDFSX0VQX0tJTkRfUG9zKSAgIC8qITwgMHgwMDAwMDEwMCAqLw0KI2RlZmluZSBVU0JfRVAxUl9FUF9LSU5EICAgICAgICAgICAgICAgICAgICAgIFVTQl9FUDFSX0VQX0tJTkRfTXNrICAgICAgICAgICAgIC8qITxFbmRwb2ludCBLaW5kICovDQoNCiNkZWZpbmUgVVNCX0VQMVJfRVBfVFlQRV9Qb3MgICAgICAgICAgICAgICAgICAoOVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNCX0VQMVJfRVBfVFlQRV9Nc2sgICAgICAgICAgICAgICAgICAoMHgzVUwgPDwgVVNCX0VQMVJfRVBfVFlQRV9Qb3MpICAgLyohPCAweDAwMDAwNjAwICovDQojZGVmaW5lIFVTQl9FUDFSX0VQX1RZUEUgICAgICAgICAgICAgICAgICAgICAgVVNCX0VQMVJfRVBfVFlQRV9Nc2sgICAgICAgICAgICAgLyohPEVQX1RZUEVbMTowXSBiaXRzIChFbmRwb2ludCB0eXBlKSAqLw0KI2RlZmluZSBVU0JfRVAxUl9FUF9UWVBFXzAgICAgICAgICAgICAgICAgICAgICgweDFVTCA8PCBVU0JfRVAxUl9FUF9UWVBFX1BvcykgICAvKiE8IDB4MDAwMDAyMDAgKi8NCiNkZWZpbmUgVVNCX0VQMVJfRVBfVFlQRV8xICAgICAgICAgICAgICAgICAgICAoMHgyVUwgPDwgVVNCX0VQMVJfRVBfVFlQRV9Qb3MpICAgLyohPCAweDAwMDAwNDAwICovDQoNCiNkZWZpbmUgVVNCX0VQMVJfU0VUVVBfUG9zICAgICAgICAgICAgICAgICAgICAoMTFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNCX0VQMVJfU0VUVVBfTXNrICAgICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgVVNCX0VQMVJfU0VUVVBfUG9zKSAgICAgLyohPCAweDAwMDAwODAwICovDQojZGVmaW5lIFVTQl9FUDFSX1NFVFVQICAgICAgICAgICAgICAgICAgICAgICAgVVNCX0VQMVJfU0VUVVBfTXNrICAgICAgICAgICAgICAgLyohPFNldHVwIHRyYW5zYWN0aW9uIGNvbXBsZXRlZCAqLw0KDQojZGVmaW5lIFVTQl9FUDFSX1NUQVRfUlhfUG9zICAgICAgICAgICAgICAgICAgKDEyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQl9FUDFSX1NUQVRfUlhfTXNrICAgICAgICAgICAgICAgICAgKDB4M1VMIDw8IFVTQl9FUDFSX1NUQVRfUlhfUG9zKSAgIC8qITwgMHgwMDAwMzAwMCAqLw0KI2RlZmluZSBVU0JfRVAxUl9TVEFUX1JYICAgICAgICAgICAgICAgICAgICAgIFVTQl9FUDFSX1NUQVRfUlhfTXNrICAgICAgICAgICAgIC8qITxTVEFUX1JYWzE6MF0gYml0cyAoU3RhdHVzIGJpdHMsIGZvciByZWNlcHRpb24gdHJhbnNmZXJzKSAqLw0KI2RlZmluZSBVU0JfRVAxUl9TVEFUX1JYXzAgICAgICAgICAgICAgICAgICAgICgweDFVTCA8PCBVU0JfRVAxUl9TVEFUX1JYX1BvcykgICAvKiE8IDB4MDAwMDEwMDAgKi8NCiNkZWZpbmUgVVNCX0VQMVJfU1RBVF9SWF8xICAgICAgICAgICAgICAgICAgICAoMHgyVUwgPDwgVVNCX0VQMVJfU1RBVF9SWF9Qb3MpICAgLyohPCAweDAwMDAyMDAwICovDQoNCiNkZWZpbmUgVVNCX0VQMVJfRFRPR19SWF9Qb3MgICAgICAgICAgICAgICAgICAoMTRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNCX0VQMVJfRFRPR19SWF9Nc2sgICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgVVNCX0VQMVJfRFRPR19SWF9Qb3MpICAgLyohPCAweDAwMDA0MDAwICovDQojZGVmaW5lIFVTQl9FUDFSX0RUT0dfUlggICAgICAgICAgICAgICAgICAgICAgVVNCX0VQMVJfRFRPR19SWF9Nc2sgICAgICAgICAgICAgLyohPERhdGEgVG9nZ2xlLCBmb3IgcmVjZXB0aW9uIHRyYW5zZmVycyAqLw0KI2RlZmluZSBVU0JfRVAxUl9DVFJfUlhfUG9zICAgICAgICAgICAgICAgICAgICgxNVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0JfRVAxUl9DVFJfUlhfTXNrICAgICAgICAgICAgICAgICAgICgweDFVTCA8PCBVU0JfRVAxUl9DVFJfUlhfUG9zKSAgICAvKiE8IDB4MDAwMDgwMDAgKi8NCiNkZWZpbmUgVVNCX0VQMVJfQ1RSX1JYICAgICAgICAgICAgICAgICAgICAgICBVU0JfRVAxUl9DVFJfUlhfTXNrICAgICAgICAgICAgICAvKiE8Q29ycmVjdCBUcmFuc2ZlciBmb3IgcmVjZXB0aW9uICovDQoNCi8qKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgVVNCX0VQMlIgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIFVTQl9FUDJSX0VBX1BvcyAgICAgICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQl9FUDJSX0VBX01zayAgICAgICAgICAgICAgICAgICAgICAgKDB4RlVMIDw8IFVTQl9FUDJSX0VBX1BvcykgICAgICAgIC8qITwgMHgwMDAwMDAwRiAqLw0KI2RlZmluZSBVU0JfRVAyUl9FQSAgICAgICAgICAgICAgICAgICAgICAgICAgIFVTQl9FUDJSX0VBX01zayAgICAgICAgICAgICAgICAgIC8qITxFbmRwb2ludCBBZGRyZXNzICovDQoNCiNkZWZpbmUgVVNCX0VQMlJfU1RBVF9UWF9Qb3MgICAgICAgICAgICAgICAgICAoNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNCX0VQMlJfU1RBVF9UWF9Nc2sgICAgICAgICAgICAgICAgICAoMHgzVUwgPDwgVVNCX0VQMlJfU1RBVF9UWF9Qb3MpICAgLyohPCAweDAwMDAwMDMwICovDQojZGVmaW5lIFVTQl9FUDJSX1NUQVRfVFggICAgICAgICAgICAgICAgICAgICAgVVNCX0VQMlJfU1RBVF9UWF9Nc2sgICAgICAgICAgICAgLyohPFNUQVRfVFhbMTowXSBiaXRzIChTdGF0dXMgYml0cywgZm9yIHRyYW5zbWlzc2lvbiB0cmFuc2ZlcnMpICovDQojZGVmaW5lIFVTQl9FUDJSX1NUQVRfVFhfMCAgICAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IFVTQl9FUDJSX1NUQVRfVFhfUG9zKSAgIC8qITwgMHgwMDAwMDAxMCAqLw0KI2RlZmluZSBVU0JfRVAyUl9TVEFUX1RYXzEgICAgICAgICAgICAgICAgICAgICgweDJVTCA8PCBVU0JfRVAyUl9TVEFUX1RYX1BvcykgICAvKiE8IDB4MDAwMDAwMjAgKi8NCg0KI2RlZmluZSBVU0JfRVAyUl9EVE9HX1RYX1BvcyAgICAgICAgICAgICAgICAgICg2VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0JfRVAyUl9EVE9HX1RYX01zayAgICAgICAgICAgICAgICAgICgweDFVTCA8PCBVU0JfRVAyUl9EVE9HX1RYX1BvcykgICAvKiE8IDB4MDAwMDAwNDAgKi8NCiNkZWZpbmUgVVNCX0VQMlJfRFRPR19UWCAgICAgICAgICAgICAgICAgICAgICBVU0JfRVAyUl9EVE9HX1RYX01zayAgICAgICAgICAgICAvKiE8RGF0YSBUb2dnbGUsIGZvciB0cmFuc21pc3Npb24gdHJhbnNmZXJzICovDQojZGVmaW5lIFVTQl9FUDJSX0NUUl9UWF9Qb3MgICAgICAgICAgICAgICAgICAgKDdVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQl9FUDJSX0NUUl9UWF9Nc2sgICAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IFVTQl9FUDJSX0NUUl9UWF9Qb3MpICAgIC8qITwgMHgwMDAwMDA4MCAqLw0KI2RlZmluZSBVU0JfRVAyUl9DVFJfVFggICAgICAgICAgICAgICAgICAgICAgIFVTQl9FUDJSX0NUUl9UWF9Nc2sgICAgICAgICAgICAgIC8qITxDb3JyZWN0IFRyYW5zZmVyIGZvciB0cmFuc21pc3Npb24gKi8NCiNkZWZpbmUgVVNCX0VQMlJfRVBfS0lORF9Qb3MgICAgICAgICAgICAgICAgICAoOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNCX0VQMlJfRVBfS0lORF9Nc2sgICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgVVNCX0VQMlJfRVBfS0lORF9Qb3MpICAgLyohPCAweDAwMDAwMTAwICovDQojZGVmaW5lIFVTQl9FUDJSX0VQX0tJTkQgICAgICAgICAgICAgICAgICAgICAgVVNCX0VQMlJfRVBfS0lORF9Nc2sgICAgICAgICAgICAgLyohPEVuZHBvaW50IEtpbmQgKi8NCg0KI2RlZmluZSBVU0JfRVAyUl9FUF9UWVBFX1BvcyAgICAgICAgICAgICAgICAgICg5VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0JfRVAyUl9FUF9UWVBFX01zayAgICAgICAgICAgICAgICAgICgweDNVTCA8PCBVU0JfRVAyUl9FUF9UWVBFX1BvcykgICAvKiE8IDB4MDAwMDA2MDAgKi8NCiNkZWZpbmUgVVNCX0VQMlJfRVBfVFlQRSAgICAgICAgICAgICAgICAgICAgICBVU0JfRVAyUl9FUF9UWVBFX01zayAgICAgICAgICAgICAvKiE8RVBfVFlQRVsxOjBdIGJpdHMgKEVuZHBvaW50IHR5cGUpICovDQojZGVmaW5lIFVTQl9FUDJSX0VQX1RZUEVfMCAgICAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IFVTQl9FUDJSX0VQX1RZUEVfUG9zKSAgIC8qITwgMHgwMDAwMDIwMCAqLw0KI2RlZmluZSBVU0JfRVAyUl9FUF9UWVBFXzEgICAgICAgICAgICAgICAgICAgICgweDJVTCA8PCBVU0JfRVAyUl9FUF9UWVBFX1BvcykgICAvKiE8IDB4MDAwMDA0MDAgKi8NCg0KI2RlZmluZSBVU0JfRVAyUl9TRVRVUF9Qb3MgICAgICAgICAgICAgICAgICAgICgxMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0JfRVAyUl9TRVRVUF9Nc2sgICAgICAgICAgICAgICAgICAgICgweDFVTCA8PCBVU0JfRVAyUl9TRVRVUF9Qb3MpICAgICAvKiE8IDB4MDAwMDA4MDAgKi8NCiNkZWZpbmUgVVNCX0VQMlJfU0VUVVAgICAgICAgICAgICAgICAgICAgICAgICBVU0JfRVAyUl9TRVRVUF9Nc2sgICAgICAgICAgICAgICAvKiE8U2V0dXAgdHJhbnNhY3Rpb24gY29tcGxldGVkICovDQoNCiNkZWZpbmUgVVNCX0VQMlJfU1RBVF9SWF9Qb3MgICAgICAgICAgICAgICAgICAoMTJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNCX0VQMlJfU1RBVF9SWF9Nc2sgICAgICAgICAgICAgICAgICAoMHgzVUwgPDwgVVNCX0VQMlJfU1RBVF9SWF9Qb3MpICAgLyohPCAweDAwMDAzMDAwICovDQojZGVmaW5lIFVTQl9FUDJSX1NUQVRfUlggICAgICAgICAgICAgICAgICAgICAgVVNCX0VQMlJfU1RBVF9SWF9Nc2sgICAgICAgICAgICAgLyohPFNUQVRfUlhbMTowXSBiaXRzIChTdGF0dXMgYml0cywgZm9yIHJlY2VwdGlvbiB0cmFuc2ZlcnMpICovDQojZGVmaW5lIFVTQl9FUDJSX1NUQVRfUlhfMCAgICAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IFVTQl9FUDJSX1NUQVRfUlhfUG9zKSAgIC8qITwgMHgwMDAwMTAwMCAqLw0KI2RlZmluZSBVU0JfRVAyUl9TVEFUX1JYXzEgICAgICAgICAgICAgICAgICAgICgweDJVTCA8PCBVU0JfRVAyUl9TVEFUX1JYX1BvcykgICAvKiE8IDB4MDAwMDIwMDAgKi8NCg0KI2RlZmluZSBVU0JfRVAyUl9EVE9HX1JYX1BvcyAgICAgICAgICAgICAgICAgICgxNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0JfRVAyUl9EVE9HX1JYX01zayAgICAgICAgICAgICAgICAgICgweDFVTCA8PCBVU0JfRVAyUl9EVE9HX1JYX1BvcykgICAvKiE8IDB4MDAwMDQwMDAgKi8NCiNkZWZpbmUgVVNCX0VQMlJfRFRPR19SWCAgICAgICAgICAgICAgICAgICAgICBVU0JfRVAyUl9EVE9HX1JYX01zayAgICAgICAgICAgICAvKiE8RGF0YSBUb2dnbGUsIGZvciByZWNlcHRpb24gdHJhbnNmZXJzICovDQojZGVmaW5lIFVTQl9FUDJSX0NUUl9SWF9Qb3MgICAgICAgICAgICAgICAgICAgKDE1VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQl9FUDJSX0NUUl9SWF9Nc2sgICAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IFVTQl9FUDJSX0NUUl9SWF9Qb3MpICAgIC8qITwgMHgwMDAwODAwMCAqLw0KI2RlZmluZSBVU0JfRVAyUl9DVFJfUlggICAgICAgICAgICAgICAgICAgICAgIFVTQl9FUDJSX0NUUl9SWF9Nc2sgICAgICAgICAgICAgIC8qITxDb3JyZWN0IFRyYW5zZmVyIGZvciByZWNlcHRpb24gKi8NCg0KLyoqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBVU0JfRVAzUiByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgVVNCX0VQM1JfRUFfUG9zICAgICAgICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNCX0VQM1JfRUFfTXNrICAgICAgICAgICAgICAgICAgICAgICAoMHhGVUwgPDwgVVNCX0VQM1JfRUFfUG9zKSAgICAgICAgLyohPCAweDAwMDAwMDBGICovDQojZGVmaW5lIFVTQl9FUDNSX0VBICAgICAgICAgICAgICAgICAgICAgICAgICAgVVNCX0VQM1JfRUFfTXNrICAgICAgICAgICAgICAgICAgLyohPEVuZHBvaW50IEFkZHJlc3MgKi8NCg0KI2RlZmluZSBVU0JfRVAzUl9TVEFUX1RYX1BvcyAgICAgICAgICAgICAgICAgICg0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0JfRVAzUl9TVEFUX1RYX01zayAgICAgICAgICAgICAgICAgICgweDNVTCA8PCBVU0JfRVAzUl9TVEFUX1RYX1BvcykgICAvKiE8IDB4MDAwMDAwMzAgKi8NCiNkZWZpbmUgVVNCX0VQM1JfU1RBVF9UWCAgICAgICAgICAgICAgICAgICAgICBVU0JfRVAzUl9TVEFUX1RYX01zayAgICAgICAgICAgICAvKiE8U1RBVF9UWFsxOjBdIGJpdHMgKFN0YXR1cyBiaXRzLCBmb3IgdHJhbnNtaXNzaW9uIHRyYW5zZmVycykgKi8NCiNkZWZpbmUgVVNCX0VQM1JfU1RBVF9UWF8wICAgICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgVVNCX0VQM1JfU1RBVF9UWF9Qb3MpICAgLyohPCAweDAwMDAwMDEwICovDQojZGVmaW5lIFVTQl9FUDNSX1NUQVRfVFhfMSAgICAgICAgICAgICAgICAgICAgKDB4MlVMIDw8IFVTQl9FUDNSX1NUQVRfVFhfUG9zKSAgIC8qITwgMHgwMDAwMDAyMCAqLw0KDQojZGVmaW5lIFVTQl9FUDNSX0RUT0dfVFhfUG9zICAgICAgICAgICAgICAgICAgKDZVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQl9FUDNSX0RUT0dfVFhfTXNrICAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IFVTQl9FUDNSX0RUT0dfVFhfUG9zKSAgIC8qITwgMHgwMDAwMDA0MCAqLw0KI2RlZmluZSBVU0JfRVAzUl9EVE9HX1RYICAgICAgICAgICAgICAgICAgICAgIFVTQl9FUDNSX0RUT0dfVFhfTXNrICAgICAgICAgICAgIC8qITxEYXRhIFRvZ2dsZSwgZm9yIHRyYW5zbWlzc2lvbiB0cmFuc2ZlcnMgKi8NCiNkZWZpbmUgVVNCX0VQM1JfQ1RSX1RYX1BvcyAgICAgICAgICAgICAgICAgICAoN1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNCX0VQM1JfQ1RSX1RYX01zayAgICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgVVNCX0VQM1JfQ1RSX1RYX1BvcykgICAgLyohPCAweDAwMDAwMDgwICovDQojZGVmaW5lIFVTQl9FUDNSX0NUUl9UWCAgICAgICAgICAgICAgICAgICAgICAgVVNCX0VQM1JfQ1RSX1RYX01zayAgICAgICAgICAgICAgLyohPENvcnJlY3QgVHJhbnNmZXIgZm9yIHRyYW5zbWlzc2lvbiAqLw0KI2RlZmluZSBVU0JfRVAzUl9FUF9LSU5EX1BvcyAgICAgICAgICAgICAgICAgICg4VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0JfRVAzUl9FUF9LSU5EX01zayAgICAgICAgICAgICAgICAgICgweDFVTCA8PCBVU0JfRVAzUl9FUF9LSU5EX1BvcykgICAvKiE8IDB4MDAwMDAxMDAgKi8NCiNkZWZpbmUgVVNCX0VQM1JfRVBfS0lORCAgICAgICAgICAgICAgICAgICAgICBVU0JfRVAzUl9FUF9LSU5EX01zayAgICAgICAgICAgICAvKiE8RW5kcG9pbnQgS2luZCAqLw0KDQojZGVmaW5lIFVTQl9FUDNSX0VQX1RZUEVfUG9zICAgICAgICAgICAgICAgICAgKDlVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQl9FUDNSX0VQX1RZUEVfTXNrICAgICAgICAgICAgICAgICAgKDB4M1VMIDw8IFVTQl9FUDNSX0VQX1RZUEVfUG9zKSAgIC8qITwgMHgwMDAwMDYwMCAqLw0KI2RlZmluZSBVU0JfRVAzUl9FUF9UWVBFICAgICAgICAgICAgICAgICAgICAgIFVTQl9FUDNSX0VQX1RZUEVfTXNrICAgICAgICAgICAgIC8qITxFUF9UWVBFWzE6MF0gYml0cyAoRW5kcG9pbnQgdHlwZSkgKi8NCiNkZWZpbmUgVVNCX0VQM1JfRVBfVFlQRV8wICAgICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgVVNCX0VQM1JfRVBfVFlQRV9Qb3MpICAgLyohPCAweDAwMDAwMjAwICovDQojZGVmaW5lIFVTQl9FUDNSX0VQX1RZUEVfMSAgICAgICAgICAgICAgICAgICAgKDB4MlVMIDw8IFVTQl9FUDNSX0VQX1RZUEVfUG9zKSAgIC8qITwgMHgwMDAwMDQwMCAqLw0KDQojZGVmaW5lIFVTQl9FUDNSX1NFVFVQX1BvcyAgICAgICAgICAgICAgICAgICAgKDExVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQl9FUDNSX1NFVFVQX01zayAgICAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IFVTQl9FUDNSX1NFVFVQX1BvcykgICAgIC8qITwgMHgwMDAwMDgwMCAqLw0KI2RlZmluZSBVU0JfRVAzUl9TRVRVUCAgICAgICAgICAgICAgICAgICAgICAgIFVTQl9FUDNSX1NFVFVQX01zayAgICAgICAgICAgICAgIC8qITxTZXR1cCB0cmFuc2FjdGlvbiBjb21wbGV0ZWQgKi8NCg0KI2RlZmluZSBVU0JfRVAzUl9TVEFUX1JYX1BvcyAgICAgICAgICAgICAgICAgICgxMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0JfRVAzUl9TVEFUX1JYX01zayAgICAgICAgICAgICAgICAgICgweDNVTCA8PCBVU0JfRVAzUl9TVEFUX1JYX1BvcykgICAvKiE8IDB4MDAwMDMwMDAgKi8NCiNkZWZpbmUgVVNCX0VQM1JfU1RBVF9SWCAgICAgICAgICAgICAgICAgICAgICBVU0JfRVAzUl9TVEFUX1JYX01zayAgICAgICAgICAgICAvKiE8U1RBVF9SWFsxOjBdIGJpdHMgKFN0YXR1cyBiaXRzLCBmb3IgcmVjZXB0aW9uIHRyYW5zZmVycykgKi8NCiNkZWZpbmUgVVNCX0VQM1JfU1RBVF9SWF8wICAgICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgVVNCX0VQM1JfU1RBVF9SWF9Qb3MpICAgLyohPCAweDAwMDAxMDAwICovDQojZGVmaW5lIFVTQl9FUDNSX1NUQVRfUlhfMSAgICAgICAgICAgICAgICAgICAgKDB4MlVMIDw8IFVTQl9FUDNSX1NUQVRfUlhfUG9zKSAgIC8qITwgMHgwMDAwMjAwMCAqLw0KDQojZGVmaW5lIFVTQl9FUDNSX0RUT0dfUlhfUG9zICAgICAgICAgICAgICAgICAgKDE0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQl9FUDNSX0RUT0dfUlhfTXNrICAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IFVTQl9FUDNSX0RUT0dfUlhfUG9zKSAgIC8qITwgMHgwMDAwNDAwMCAqLw0KI2RlZmluZSBVU0JfRVAzUl9EVE9HX1JYICAgICAgICAgICAgICAgICAgICAgIFVTQl9FUDNSX0RUT0dfUlhfTXNrICAgICAgICAgICAgIC8qITxEYXRhIFRvZ2dsZSwgZm9yIHJlY2VwdGlvbiB0cmFuc2ZlcnMgKi8NCiNkZWZpbmUgVVNCX0VQM1JfQ1RSX1JYX1BvcyAgICAgICAgICAgICAgICAgICAoMTVVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNCX0VQM1JfQ1RSX1JYX01zayAgICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgVVNCX0VQM1JfQ1RSX1JYX1BvcykgICAgLyohPCAweDAwMDA4MDAwICovDQojZGVmaW5lIFVTQl9FUDNSX0NUUl9SWCAgICAgICAgICAgICAgICAgICAgICAgVVNCX0VQM1JfQ1RSX1JYX01zayAgICAgICAgICAgICAgLyohPENvcnJlY3QgVHJhbnNmZXIgZm9yIHJlY2VwdGlvbiAqLw0KDQovKioqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFVTQl9FUDRSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBVU0JfRVA0Ul9FQV9Qb3MgICAgICAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0JfRVA0Ul9FQV9Nc2sgICAgICAgICAgICAgICAgICAgICAgICgweEZVTCA8PCBVU0JfRVA0Ul9FQV9Qb3MpICAgICAgICAvKiE8IDB4MDAwMDAwMEYgKi8NCiNkZWZpbmUgVVNCX0VQNFJfRUEgICAgICAgICAgICAgICAgICAgICAgICAgICBVU0JfRVA0Ul9FQV9Nc2sgICAgICAgICAgICAgICAgICAvKiE8RW5kcG9pbnQgQWRkcmVzcyAqLw0KDQojZGVmaW5lIFVTQl9FUDRSX1NUQVRfVFhfUG9zICAgICAgICAgICAgICAgICAgKDRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQl9FUDRSX1NUQVRfVFhfTXNrICAgICAgICAgICAgICAgICAgKDB4M1VMIDw8IFVTQl9FUDRSX1NUQVRfVFhfUG9zKSAgIC8qITwgMHgwMDAwMDAzMCAqLw0KI2RlZmluZSBVU0JfRVA0Ul9TVEFUX1RYICAgICAgICAgICAgICAgICAgICAgIFVTQl9FUDRSX1NUQVRfVFhfTXNrICAgICAgICAgICAgIC8qITxTVEFUX1RYWzE6MF0gYml0cyAoU3RhdHVzIGJpdHMsIGZvciB0cmFuc21pc3Npb24gdHJhbnNmZXJzKSAqLw0KI2RlZmluZSBVU0JfRVA0Ul9TVEFUX1RYXzAgICAgICAgICAgICAgICAgICAgICgweDFVTCA8PCBVU0JfRVA0Ul9TVEFUX1RYX1BvcykgICAvKiE8IDB4MDAwMDAwMTAgKi8NCiNkZWZpbmUgVVNCX0VQNFJfU1RBVF9UWF8xICAgICAgICAgICAgICAgICAgICAoMHgyVUwgPDwgVVNCX0VQNFJfU1RBVF9UWF9Qb3MpICAgLyohPCAweDAwMDAwMDIwICovDQoNCiNkZWZpbmUgVVNCX0VQNFJfRFRPR19UWF9Qb3MgICAgICAgICAgICAgICAgICAoNlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNCX0VQNFJfRFRPR19UWF9Nc2sgICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgVVNCX0VQNFJfRFRPR19UWF9Qb3MpICAgLyohPCAweDAwMDAwMDQwICovDQojZGVmaW5lIFVTQl9FUDRSX0RUT0dfVFggICAgICAgICAgICAgICAgICAgICAgVVNCX0VQNFJfRFRPR19UWF9Nc2sgICAgICAgICAgICAgLyohPERhdGEgVG9nZ2xlLCBmb3IgdHJhbnNtaXNzaW9uIHRyYW5zZmVycyAqLw0KI2RlZmluZSBVU0JfRVA0Ul9DVFJfVFhfUG9zICAgICAgICAgICAgICAgICAgICg3VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0JfRVA0Ul9DVFJfVFhfTXNrICAgICAgICAgICAgICAgICAgICgweDFVTCA8PCBVU0JfRVA0Ul9DVFJfVFhfUG9zKSAgICAvKiE8IDB4MDAwMDAwODAgKi8NCiNkZWZpbmUgVVNCX0VQNFJfQ1RSX1RYICAgICAgICAgICAgICAgICAgICAgICBVU0JfRVA0Ul9DVFJfVFhfTXNrICAgICAgICAgICAgICAvKiE8Q29ycmVjdCBUcmFuc2ZlciBmb3IgdHJhbnNtaXNzaW9uICovDQojZGVmaW5lIFVTQl9FUDRSX0VQX0tJTkRfUG9zICAgICAgICAgICAgICAgICAgKDhVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQl9FUDRSX0VQX0tJTkRfTXNrICAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IFVTQl9FUDRSX0VQX0tJTkRfUG9zKSAgIC8qITwgMHgwMDAwMDEwMCAqLw0KI2RlZmluZSBVU0JfRVA0Ul9FUF9LSU5EICAgICAgICAgICAgICAgICAgICAgIFVTQl9FUDRSX0VQX0tJTkRfTXNrICAgICAgICAgICAgIC8qITxFbmRwb2ludCBLaW5kICovDQoNCiNkZWZpbmUgVVNCX0VQNFJfRVBfVFlQRV9Qb3MgICAgICAgICAgICAgICAgICAoOVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNCX0VQNFJfRVBfVFlQRV9Nc2sgICAgICAgICAgICAgICAgICAoMHgzVUwgPDwgVVNCX0VQNFJfRVBfVFlQRV9Qb3MpICAgLyohPCAweDAwMDAwNjAwICovDQojZGVmaW5lIFVTQl9FUDRSX0VQX1RZUEUgICAgICAgICAgICAgICAgICAgICAgVVNCX0VQNFJfRVBfVFlQRV9Nc2sgICAgICAgICAgICAgLyohPEVQX1RZUEVbMTowXSBiaXRzIChFbmRwb2ludCB0eXBlKSAqLw0KI2RlZmluZSBVU0JfRVA0Ul9FUF9UWVBFXzAgICAgICAgICAgICAgICAgICAgICgweDFVTCA8PCBVU0JfRVA0Ul9FUF9UWVBFX1BvcykgICAvKiE8IDB4MDAwMDAyMDAgKi8NCiNkZWZpbmUgVVNCX0VQNFJfRVBfVFlQRV8xICAgICAgICAgICAgICAgICAgICAoMHgyVUwgPDwgVVNCX0VQNFJfRVBfVFlQRV9Qb3MpICAgLyohPCAweDAwMDAwNDAwICovDQoNCiNkZWZpbmUgVVNCX0VQNFJfU0VUVVBfUG9zICAgICAgICAgICAgICAgICAgICAoMTFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNCX0VQNFJfU0VUVVBfTXNrICAgICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgVVNCX0VQNFJfU0VUVVBfUG9zKSAgICAgLyohPCAweDAwMDAwODAwICovDQojZGVmaW5lIFVTQl9FUDRSX1NFVFVQICAgICAgICAgICAgICAgICAgICAgICAgVVNCX0VQNFJfU0VUVVBfTXNrICAgICAgICAgICAgICAgLyohPFNldHVwIHRyYW5zYWN0aW9uIGNvbXBsZXRlZCAqLw0KDQojZGVmaW5lIFVTQl9FUDRSX1NUQVRfUlhfUG9zICAgICAgICAgICAgICAgICAgKDEyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQl9FUDRSX1NUQVRfUlhfTXNrICAgICAgICAgICAgICAgICAgKDB4M1VMIDw8IFVTQl9FUDRSX1NUQVRfUlhfUG9zKSAgIC8qITwgMHgwMDAwMzAwMCAqLw0KI2RlZmluZSBVU0JfRVA0Ul9TVEFUX1JYICAgICAgICAgICAgICAgICAgICAgIFVTQl9FUDRSX1NUQVRfUlhfTXNrICAgICAgICAgICAgIC8qITxTVEFUX1JYWzE6MF0gYml0cyAoU3RhdHVzIGJpdHMsIGZvciByZWNlcHRpb24gdHJhbnNmZXJzKSAqLw0KI2RlZmluZSBVU0JfRVA0Ul9TVEFUX1JYXzAgICAgICAgICAgICAgICAgICAgICgweDFVTCA8PCBVU0JfRVA0Ul9TVEFUX1JYX1BvcykgICAvKiE8IDB4MDAwMDEwMDAgKi8NCiNkZWZpbmUgVVNCX0VQNFJfU1RBVF9SWF8xICAgICAgICAgICAgICAgICAgICAoMHgyVUwgPDwgVVNCX0VQNFJfU1RBVF9SWF9Qb3MpICAgLyohPCAweDAwMDAyMDAwICovDQoNCiNkZWZpbmUgVVNCX0VQNFJfRFRPR19SWF9Qb3MgICAgICAgICAgICAgICAgICAoMTRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNCX0VQNFJfRFRPR19SWF9Nc2sgICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgVVNCX0VQNFJfRFRPR19SWF9Qb3MpICAgLyohPCAweDAwMDA0MDAwICovDQojZGVmaW5lIFVTQl9FUDRSX0RUT0dfUlggICAgICAgICAgICAgICAgICAgICAgVVNCX0VQNFJfRFRPR19SWF9Nc2sgICAgICAgICAgICAgLyohPERhdGEgVG9nZ2xlLCBmb3IgcmVjZXB0aW9uIHRyYW5zZmVycyAqLw0KI2RlZmluZSBVU0JfRVA0Ul9DVFJfUlhfUG9zICAgICAgICAgICAgICAgICAgICgxNVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0JfRVA0Ul9DVFJfUlhfTXNrICAgICAgICAgICAgICAgICAgICgweDFVTCA8PCBVU0JfRVA0Ul9DVFJfUlhfUG9zKSAgICAvKiE8IDB4MDAwMDgwMDAgKi8NCiNkZWZpbmUgVVNCX0VQNFJfQ1RSX1JYICAgICAgICAgICAgICAgICAgICAgICBVU0JfRVA0Ul9DVFJfUlhfTXNrICAgICAgICAgICAgICAvKiE8Q29ycmVjdCBUcmFuc2ZlciBmb3IgcmVjZXB0aW9uICovDQoNCi8qKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgVVNCX0VQNVIgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIFVTQl9FUDVSX0VBX1BvcyAgICAgICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQl9FUDVSX0VBX01zayAgICAgICAgICAgICAgICAgICAgICAgKDB4RlVMIDw8IFVTQl9FUDVSX0VBX1BvcykgICAgICAgIC8qITwgMHgwMDAwMDAwRiAqLw0KI2RlZmluZSBVU0JfRVA1Ul9FQSAgICAgICAgICAgICAgICAgICAgICAgICAgIFVTQl9FUDVSX0VBX01zayAgICAgICAgICAgICAgICAgIC8qITxFbmRwb2ludCBBZGRyZXNzICovDQoNCiNkZWZpbmUgVVNCX0VQNVJfU1RBVF9UWF9Qb3MgICAgICAgICAgICAgICAgICAoNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNCX0VQNVJfU1RBVF9UWF9Nc2sgICAgICAgICAgICAgICAgICAoMHgzVUwgPDwgVVNCX0VQNVJfU1RBVF9UWF9Qb3MpICAgLyohPCAweDAwMDAwMDMwICovDQojZGVmaW5lIFVTQl9FUDVSX1NUQVRfVFggICAgICAgICAgICAgICAgICAgICAgVVNCX0VQNVJfU1RBVF9UWF9Nc2sgICAgICAgICAgICAgLyohPFNUQVRfVFhbMTowXSBiaXRzIChTdGF0dXMgYml0cywgZm9yIHRyYW5zbWlzc2lvbiB0cmFuc2ZlcnMpICovDQojZGVmaW5lIFVTQl9FUDVSX1NUQVRfVFhfMCAgICAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IFVTQl9FUDVSX1NUQVRfVFhfUG9zKSAgIC8qITwgMHgwMDAwMDAxMCAqLw0KI2RlZmluZSBVU0JfRVA1Ul9TVEFUX1RYXzEgICAgICAgICAgICAgICAgICAgICgweDJVTCA8PCBVU0JfRVA1Ul9TVEFUX1RYX1BvcykgICAvKiE8IDB4MDAwMDAwMjAgKi8NCg0KI2RlZmluZSBVU0JfRVA1Ul9EVE9HX1RYX1BvcyAgICAgICAgICAgICAgICAgICg2VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0JfRVA1Ul9EVE9HX1RYX01zayAgICAgICAgICAgICAgICAgICgweDFVTCA8PCBVU0JfRVA1Ul9EVE9HX1RYX1BvcykgICAvKiE8IDB4MDAwMDAwNDAgKi8NCiNkZWZpbmUgVVNCX0VQNVJfRFRPR19UWCAgICAgICAgICAgICAgICAgICAgICBVU0JfRVA1Ul9EVE9HX1RYX01zayAgICAgICAgICAgICAvKiE8RGF0YSBUb2dnbGUsIGZvciB0cmFuc21pc3Npb24gdHJhbnNmZXJzICovDQojZGVmaW5lIFVTQl9FUDVSX0NUUl9UWF9Qb3MgICAgICAgICAgICAgICAgICAgKDdVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQl9FUDVSX0NUUl9UWF9Nc2sgICAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IFVTQl9FUDVSX0NUUl9UWF9Qb3MpICAgIC8qITwgMHgwMDAwMDA4MCAqLw0KI2RlZmluZSBVU0JfRVA1Ul9DVFJfVFggICAgICAgICAgICAgICAgICAgICAgIFVTQl9FUDVSX0NUUl9UWF9Nc2sgICAgICAgICAgICAgIC8qITxDb3JyZWN0IFRyYW5zZmVyIGZvciB0cmFuc21pc3Npb24gKi8NCiNkZWZpbmUgVVNCX0VQNVJfRVBfS0lORF9Qb3MgICAgICAgICAgICAgICAgICAoOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNCX0VQNVJfRVBfS0lORF9Nc2sgICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgVVNCX0VQNVJfRVBfS0lORF9Qb3MpICAgLyohPCAweDAwMDAwMTAwICovDQojZGVmaW5lIFVTQl9FUDVSX0VQX0tJTkQgICAgICAgICAgICAgICAgICAgICAgVVNCX0VQNVJfRVBfS0lORF9Nc2sgICAgICAgICAgICAgLyohPEVuZHBvaW50IEtpbmQgKi8NCg0KI2RlZmluZSBVU0JfRVA1Ul9FUF9UWVBFX1BvcyAgICAgICAgICAgICAgICAgICg5VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0JfRVA1Ul9FUF9UWVBFX01zayAgICAgICAgICAgICAgICAgICgweDNVTCA8PCBVU0JfRVA1Ul9FUF9UWVBFX1BvcykgICAvKiE8IDB4MDAwMDA2MDAgKi8NCiNkZWZpbmUgVVNCX0VQNVJfRVBfVFlQRSAgICAgICAgICAgICAgICAgICAgICBVU0JfRVA1Ul9FUF9UWVBFX01zayAgICAgICAgICAgICAvKiE8RVBfVFlQRVsxOjBdIGJpdHMgKEVuZHBvaW50IHR5cGUpICovDQojZGVmaW5lIFVTQl9FUDVSX0VQX1RZUEVfMCAgICAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IFVTQl9FUDVSX0VQX1RZUEVfUG9zKSAgIC8qITwgMHgwMDAwMDIwMCAqLw0KI2RlZmluZSBVU0JfRVA1Ul9FUF9UWVBFXzEgICAgICAgICAgICAgICAgICAgICgweDJVTCA8PCBVU0JfRVA1Ul9FUF9UWVBFX1BvcykgICAvKiE8IDB4MDAwMDA0MDAgKi8NCg0KI2RlZmluZSBVU0JfRVA1Ul9TRVRVUF9Qb3MgICAgICAgICAgICAgICAgICAgICgxMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0JfRVA1Ul9TRVRVUF9Nc2sgICAgICAgICAgICAgICAgICAgICgweDFVTCA8PCBVU0JfRVA1Ul9TRVRVUF9Qb3MpICAgICAvKiE8IDB4MDAwMDA4MDAgKi8NCiNkZWZpbmUgVVNCX0VQNVJfU0VUVVAgICAgICAgICAgICAgICAgICAgICAgICBVU0JfRVA1Ul9TRVRVUF9Nc2sgICAgICAgICAgICAgICAvKiE8U2V0dXAgdHJhbnNhY3Rpb24gY29tcGxldGVkICovDQoNCiNkZWZpbmUgVVNCX0VQNVJfU1RBVF9SWF9Qb3MgICAgICAgICAgICAgICAgICAoMTJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNCX0VQNVJfU1RBVF9SWF9Nc2sgICAgICAgICAgICAgICAgICAoMHgzVUwgPDwgVVNCX0VQNVJfU1RBVF9SWF9Qb3MpICAgLyohPCAweDAwMDAzMDAwICovDQojZGVmaW5lIFVTQl9FUDVSX1NUQVRfUlggICAgICAgICAgICAgICAgICAgICAgVVNCX0VQNVJfU1RBVF9SWF9Nc2sgICAgICAgICAgICAgLyohPFNUQVRfUlhbMTowXSBiaXRzIChTdGF0dXMgYml0cywgZm9yIHJlY2VwdGlvbiB0cmFuc2ZlcnMpICovDQojZGVmaW5lIFVTQl9FUDVSX1NUQVRfUlhfMCAgICAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IFVTQl9FUDVSX1NUQVRfUlhfUG9zKSAgIC8qITwgMHgwMDAwMTAwMCAqLw0KI2RlZmluZSBVU0JfRVA1Ul9TVEFUX1JYXzEgICAgICAgICAgICAgICAgICAgICgweDJVTCA8PCBVU0JfRVA1Ul9TVEFUX1JYX1BvcykgICAvKiE8IDB4MDAwMDIwMDAgKi8NCg0KI2RlZmluZSBVU0JfRVA1Ul9EVE9HX1JYX1BvcyAgICAgICAgICAgICAgICAgICgxNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0JfRVA1Ul9EVE9HX1JYX01zayAgICAgICAgICAgICAgICAgICgweDFVTCA8PCBVU0JfRVA1Ul9EVE9HX1JYX1BvcykgICAvKiE8IDB4MDAwMDQwMDAgKi8NCiNkZWZpbmUgVVNCX0VQNVJfRFRPR19SWCAgICAgICAgICAgICAgICAgICAgICBVU0JfRVA1Ul9EVE9HX1JYX01zayAgICAgICAgICAgICAvKiE8RGF0YSBUb2dnbGUsIGZvciByZWNlcHRpb24gdHJhbnNmZXJzICovDQojZGVmaW5lIFVTQl9FUDVSX0NUUl9SWF9Qb3MgICAgICAgICAgICAgICAgICAgKDE1VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQl9FUDVSX0NUUl9SWF9Nc2sgICAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IFVTQl9FUDVSX0NUUl9SWF9Qb3MpICAgIC8qITwgMHgwMDAwODAwMCAqLw0KI2RlZmluZSBVU0JfRVA1Ul9DVFJfUlggICAgICAgICAgICAgICAgICAgICAgIFVTQl9FUDVSX0NUUl9SWF9Nc2sgICAgICAgICAgICAgIC8qITxDb3JyZWN0IFRyYW5zZmVyIGZvciByZWNlcHRpb24gKi8NCg0KLyoqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBVU0JfRVA2UiByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgVVNCX0VQNlJfRUFfUG9zICAgICAgICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNCX0VQNlJfRUFfTXNrICAgICAgICAgICAgICAgICAgICAgICAoMHhGVUwgPDwgVVNCX0VQNlJfRUFfUG9zKSAgICAgICAgLyohPCAweDAwMDAwMDBGICovDQojZGVmaW5lIFVTQl9FUDZSX0VBICAgICAgICAgICAgICAgICAgICAgICAgICAgVVNCX0VQNlJfRUFfTXNrICAgICAgICAgICAgICAgICAgLyohPEVuZHBvaW50IEFkZHJlc3MgKi8NCg0KI2RlZmluZSBVU0JfRVA2Ul9TVEFUX1RYX1BvcyAgICAgICAgICAgICAgICAgICg0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0JfRVA2Ul9TVEFUX1RYX01zayAgICAgICAgICAgICAgICAgICgweDNVTCA8PCBVU0JfRVA2Ul9TVEFUX1RYX1BvcykgICAvKiE8IDB4MDAwMDAwMzAgKi8NCiNkZWZpbmUgVVNCX0VQNlJfU1RBVF9UWCAgICAgICAgICAgICAgICAgICAgICBVU0JfRVA2Ul9TVEFUX1RYX01zayAgICAgICAgICAgICAvKiE8U1RBVF9UWFsxOjBdIGJpdHMgKFN0YXR1cyBiaXRzLCBmb3IgdHJhbnNtaXNzaW9uIHRyYW5zZmVycykgKi8NCiNkZWZpbmUgVVNCX0VQNlJfU1RBVF9UWF8wICAgICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgVVNCX0VQNlJfU1RBVF9UWF9Qb3MpICAgLyohPCAweDAwMDAwMDEwICovDQojZGVmaW5lIFVTQl9FUDZSX1NUQVRfVFhfMSAgICAgICAgICAgICAgICAgICAgKDB4MlVMIDw8IFVTQl9FUDZSX1NUQVRfVFhfUG9zKSAgIC8qITwgMHgwMDAwMDAyMCAqLw0KDQojZGVmaW5lIFVTQl9FUDZSX0RUT0dfVFhfUG9zICAgICAgICAgICAgICAgICAgKDZVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQl9FUDZSX0RUT0dfVFhfTXNrICAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IFVTQl9FUDZSX0RUT0dfVFhfUG9zKSAgIC8qITwgMHgwMDAwMDA0MCAqLw0KI2RlZmluZSBVU0JfRVA2Ul9EVE9HX1RYICAgICAgICAgICAgICAgICAgICAgIFVTQl9FUDZSX0RUT0dfVFhfTXNrICAgICAgICAgICAgIC8qITxEYXRhIFRvZ2dsZSwgZm9yIHRyYW5zbWlzc2lvbiB0cmFuc2ZlcnMgKi8NCiNkZWZpbmUgVVNCX0VQNlJfQ1RSX1RYX1BvcyAgICAgICAgICAgICAgICAgICAoN1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNCX0VQNlJfQ1RSX1RYX01zayAgICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgVVNCX0VQNlJfQ1RSX1RYX1BvcykgICAgLyohPCAweDAwMDAwMDgwICovDQojZGVmaW5lIFVTQl9FUDZSX0NUUl9UWCAgICAgICAgICAgICAgICAgICAgICAgVVNCX0VQNlJfQ1RSX1RYX01zayAgICAgICAgICAgICAgLyohPENvcnJlY3QgVHJhbnNmZXIgZm9yIHRyYW5zbWlzc2lvbiAqLw0KI2RlZmluZSBVU0JfRVA2Ul9FUF9LSU5EX1BvcyAgICAgICAgICAgICAgICAgICg4VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0JfRVA2Ul9FUF9LSU5EX01zayAgICAgICAgICAgICAgICAgICgweDFVTCA8PCBVU0JfRVA2Ul9FUF9LSU5EX1BvcykgICAvKiE8IDB4MDAwMDAxMDAgKi8NCiNkZWZpbmUgVVNCX0VQNlJfRVBfS0lORCAgICAgICAgICAgICAgICAgICAgICBVU0JfRVA2Ul9FUF9LSU5EX01zayAgICAgICAgICAgICAvKiE8RW5kcG9pbnQgS2luZCAqLw0KDQojZGVmaW5lIFVTQl9FUDZSX0VQX1RZUEVfUG9zICAgICAgICAgICAgICAgICAgKDlVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQl9FUDZSX0VQX1RZUEVfTXNrICAgICAgICAgICAgICAgICAgKDB4M1VMIDw8IFVTQl9FUDZSX0VQX1RZUEVfUG9zKSAgIC8qITwgMHgwMDAwMDYwMCAqLw0KI2RlZmluZSBVU0JfRVA2Ul9FUF9UWVBFICAgICAgICAgICAgICAgICAgICAgIFVTQl9FUDZSX0VQX1RZUEVfTXNrICAgICAgICAgICAgIC8qITxFUF9UWVBFWzE6MF0gYml0cyAoRW5kcG9pbnQgdHlwZSkgKi8NCiNkZWZpbmUgVVNCX0VQNlJfRVBfVFlQRV8wICAgICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgVVNCX0VQNlJfRVBfVFlQRV9Qb3MpICAgLyohPCAweDAwMDAwMjAwICovDQojZGVmaW5lIFVTQl9FUDZSX0VQX1RZUEVfMSAgICAgICAgICAgICAgICAgICAgKDB4MlVMIDw8IFVTQl9FUDZSX0VQX1RZUEVfUG9zKSAgIC8qITwgMHgwMDAwMDQwMCAqLw0KDQojZGVmaW5lIFVTQl9FUDZSX1NFVFVQX1BvcyAgICAgICAgICAgICAgICAgICAgKDExVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQl9FUDZSX1NFVFVQX01zayAgICAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IFVTQl9FUDZSX1NFVFVQX1BvcykgICAgIC8qITwgMHgwMDAwMDgwMCAqLw0KI2RlZmluZSBVU0JfRVA2Ul9TRVRVUCAgICAgICAgICAgICAgICAgICAgICAgIFVTQl9FUDZSX1NFVFVQX01zayAgICAgICAgICAgICAgIC8qITxTZXR1cCB0cmFuc2FjdGlvbiBjb21wbGV0ZWQgKi8NCg0KI2RlZmluZSBVU0JfRVA2Ul9TVEFUX1JYX1BvcyAgICAgICAgICAgICAgICAgICgxMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0JfRVA2Ul9TVEFUX1JYX01zayAgICAgICAgICAgICAgICAgICgweDNVTCA8PCBVU0JfRVA2Ul9TVEFUX1JYX1BvcykgICAvKiE8IDB4MDAwMDMwMDAgKi8NCiNkZWZpbmUgVVNCX0VQNlJfU1RBVF9SWCAgICAgICAgICAgICAgICAgICAgICBVU0JfRVA2Ul9TVEFUX1JYX01zayAgICAgICAgICAgICAvKiE8U1RBVF9SWFsxOjBdIGJpdHMgKFN0YXR1cyBiaXRzLCBmb3IgcmVjZXB0aW9uIHRyYW5zZmVycykgKi8NCiNkZWZpbmUgVVNCX0VQNlJfU1RBVF9SWF8wICAgICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgVVNCX0VQNlJfU1RBVF9SWF9Qb3MpICAgLyohPCAweDAwMDAxMDAwICovDQojZGVmaW5lIFVTQl9FUDZSX1NUQVRfUlhfMSAgICAgICAgICAgICAgICAgICAgKDB4MlVMIDw8IFVTQl9FUDZSX1NUQVRfUlhfUG9zKSAgIC8qITwgMHgwMDAwMjAwMCAqLw0KDQojZGVmaW5lIFVTQl9FUDZSX0RUT0dfUlhfUG9zICAgICAgICAgICAgICAgICAgKDE0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQl9FUDZSX0RUT0dfUlhfTXNrICAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IFVTQl9FUDZSX0RUT0dfUlhfUG9zKSAgIC8qITwgMHgwMDAwNDAwMCAqLw0KI2RlZmluZSBVU0JfRVA2Ul9EVE9HX1JYICAgICAgICAgICAgICAgICAgICAgIFVTQl9FUDZSX0RUT0dfUlhfTXNrICAgICAgICAgICAgIC8qITxEYXRhIFRvZ2dsZSwgZm9yIHJlY2VwdGlvbiB0cmFuc2ZlcnMgKi8NCiNkZWZpbmUgVVNCX0VQNlJfQ1RSX1JYX1BvcyAgICAgICAgICAgICAgICAgICAoMTVVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNCX0VQNlJfQ1RSX1JYX01zayAgICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgVVNCX0VQNlJfQ1RSX1JYX1BvcykgICAgLyohPCAweDAwMDA4MDAwICovDQojZGVmaW5lIFVTQl9FUDZSX0NUUl9SWCAgICAgICAgICAgICAgICAgICAgICAgVVNCX0VQNlJfQ1RSX1JYX01zayAgICAgICAgICAgICAgLyohPENvcnJlY3QgVHJhbnNmZXIgZm9yIHJlY2VwdGlvbiAqLw0KDQovKioqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFVTQl9FUDdSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBVU0JfRVA3Ul9FQV9Qb3MgICAgICAgICAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0JfRVA3Ul9FQV9Nc2sgICAgICAgICAgICAgICAgICAgICAgICgweEZVTCA8PCBVU0JfRVA3Ul9FQV9Qb3MpICAgICAgICAvKiE8IDB4MDAwMDAwMEYgKi8NCiNkZWZpbmUgVVNCX0VQN1JfRUEgICAgICAgICAgICAgICAgICAgICAgICAgICBVU0JfRVA3Ul9FQV9Nc2sgICAgICAgICAgICAgICAgICAvKiE8RW5kcG9pbnQgQWRkcmVzcyAqLw0KDQojZGVmaW5lIFVTQl9FUDdSX1NUQVRfVFhfUG9zICAgICAgICAgICAgICAgICAgKDRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQl9FUDdSX1NUQVRfVFhfTXNrICAgICAgICAgICAgICAgICAgKDB4M1VMIDw8IFVTQl9FUDdSX1NUQVRfVFhfUG9zKSAgIC8qITwgMHgwMDAwMDAzMCAqLw0KI2RlZmluZSBVU0JfRVA3Ul9TVEFUX1RYICAgICAgICAgICAgICAgICAgICAgIFVTQl9FUDdSX1NUQVRfVFhfTXNrICAgICAgICAgICAgIC8qITxTVEFUX1RYWzE6MF0gYml0cyAoU3RhdHVzIGJpdHMsIGZvciB0cmFuc21pc3Npb24gdHJhbnNmZXJzKSAqLw0KI2RlZmluZSBVU0JfRVA3Ul9TVEFUX1RYXzAgICAgICAgICAgICAgICAgICAgICgweDFVTCA8PCBVU0JfRVA3Ul9TVEFUX1RYX1BvcykgICAvKiE8IDB4MDAwMDAwMTAgKi8NCiNkZWZpbmUgVVNCX0VQN1JfU1RBVF9UWF8xICAgICAgICAgICAgICAgICAgICAoMHgyVUwgPDwgVVNCX0VQN1JfU1RBVF9UWF9Qb3MpICAgLyohPCAweDAwMDAwMDIwICovDQoNCiNkZWZpbmUgVVNCX0VQN1JfRFRPR19UWF9Qb3MgICAgICAgICAgICAgICAgICAoNlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNCX0VQN1JfRFRPR19UWF9Nc2sgICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgVVNCX0VQN1JfRFRPR19UWF9Qb3MpICAgLyohPCAweDAwMDAwMDQwICovDQojZGVmaW5lIFVTQl9FUDdSX0RUT0dfVFggICAgICAgICAgICAgICAgICAgICAgVVNCX0VQN1JfRFRPR19UWF9Nc2sgICAgICAgICAgICAgLyohPERhdGEgVG9nZ2xlLCBmb3IgdHJhbnNtaXNzaW9uIHRyYW5zZmVycyAqLw0KI2RlZmluZSBVU0JfRVA3Ul9DVFJfVFhfUG9zICAgICAgICAgICAgICAgICAgICg3VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0JfRVA3Ul9DVFJfVFhfTXNrICAgICAgICAgICAgICAgICAgICgweDFVTCA8PCBVU0JfRVA3Ul9DVFJfVFhfUG9zKSAgICAvKiE8IDB4MDAwMDAwODAgKi8NCiNkZWZpbmUgVVNCX0VQN1JfQ1RSX1RYICAgICAgICAgICAgICAgICAgICAgICBVU0JfRVA3Ul9DVFJfVFhfTXNrICAgICAgICAgICAgICAvKiE8Q29ycmVjdCBUcmFuc2ZlciBmb3IgdHJhbnNtaXNzaW9uICovDQojZGVmaW5lIFVTQl9FUDdSX0VQX0tJTkRfUG9zICAgICAgICAgICAgICAgICAgKDhVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQl9FUDdSX0VQX0tJTkRfTXNrICAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IFVTQl9FUDdSX0VQX0tJTkRfUG9zKSAgIC8qITwgMHgwMDAwMDEwMCAqLw0KI2RlZmluZSBVU0JfRVA3Ul9FUF9LSU5EICAgICAgICAgICAgICAgICAgICAgIFVTQl9FUDdSX0VQX0tJTkRfTXNrICAgICAgICAgICAgIC8qITxFbmRwb2ludCBLaW5kICovDQoNCiNkZWZpbmUgVVNCX0VQN1JfRVBfVFlQRV9Qb3MgICAgICAgICAgICAgICAgICAoOVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNCX0VQN1JfRVBfVFlQRV9Nc2sgICAgICAgICAgICAgICAgICAoMHgzVUwgPDwgVVNCX0VQN1JfRVBfVFlQRV9Qb3MpICAgLyohPCAweDAwMDAwNjAwICovDQojZGVmaW5lIFVTQl9FUDdSX0VQX1RZUEUgICAgICAgICAgICAgICAgICAgICAgVVNCX0VQN1JfRVBfVFlQRV9Nc2sgICAgICAgICAgICAgLyohPEVQX1RZUEVbMTowXSBiaXRzIChFbmRwb2ludCB0eXBlKSAqLw0KI2RlZmluZSBVU0JfRVA3Ul9FUF9UWVBFXzAgICAgICAgICAgICAgICAgICAgICgweDFVTCA8PCBVU0JfRVA3Ul9FUF9UWVBFX1BvcykgICAvKiE8IDB4MDAwMDAyMDAgKi8NCiNkZWZpbmUgVVNCX0VQN1JfRVBfVFlQRV8xICAgICAgICAgICAgICAgICAgICAoMHgyVUwgPDwgVVNCX0VQN1JfRVBfVFlQRV9Qb3MpICAgLyohPCAweDAwMDAwNDAwICovDQoNCiNkZWZpbmUgVVNCX0VQN1JfU0VUVVBfUG9zICAgICAgICAgICAgICAgICAgICAoMTFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNCX0VQN1JfU0VUVVBfTXNrICAgICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgVVNCX0VQN1JfU0VUVVBfUG9zKSAgICAgLyohPCAweDAwMDAwODAwICovDQojZGVmaW5lIFVTQl9FUDdSX1NFVFVQICAgICAgICAgICAgICAgICAgICAgICAgVVNCX0VQN1JfU0VUVVBfTXNrICAgICAgICAgICAgICAgLyohPFNldHVwIHRyYW5zYWN0aW9uIGNvbXBsZXRlZCAqLw0KDQojZGVmaW5lIFVTQl9FUDdSX1NUQVRfUlhfUG9zICAgICAgICAgICAgICAgICAgKDEyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQl9FUDdSX1NUQVRfUlhfTXNrICAgICAgICAgICAgICAgICAgKDB4M1VMIDw8IFVTQl9FUDdSX1NUQVRfUlhfUG9zKSAgIC8qITwgMHgwMDAwMzAwMCAqLw0KI2RlZmluZSBVU0JfRVA3Ul9TVEFUX1JYICAgICAgICAgICAgICAgICAgICAgIFVTQl9FUDdSX1NUQVRfUlhfTXNrICAgICAgICAgICAgIC8qITxTVEFUX1JYWzE6MF0gYml0cyAoU3RhdHVzIGJpdHMsIGZvciByZWNlcHRpb24gdHJhbnNmZXJzKSAqLw0KI2RlZmluZSBVU0JfRVA3Ul9TVEFUX1JYXzAgICAgICAgICAgICAgICAgICAgICgweDFVTCA8PCBVU0JfRVA3Ul9TVEFUX1JYX1BvcykgICAvKiE8IDB4MDAwMDEwMDAgKi8NCiNkZWZpbmUgVVNCX0VQN1JfU1RBVF9SWF8xICAgICAgICAgICAgICAgICAgICAoMHgyVUwgPDwgVVNCX0VQN1JfU1RBVF9SWF9Qb3MpICAgLyohPCAweDAwMDAyMDAwICovDQoNCiNkZWZpbmUgVVNCX0VQN1JfRFRPR19SWF9Qb3MgICAgICAgICAgICAgICAgICAoMTRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNCX0VQN1JfRFRPR19SWF9Nc2sgICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgVVNCX0VQN1JfRFRPR19SWF9Qb3MpICAgLyohPCAweDAwMDA0MDAwICovDQojZGVmaW5lIFVTQl9FUDdSX0RUT0dfUlggICAgICAgICAgICAgICAgICAgICAgVVNCX0VQN1JfRFRPR19SWF9Nc2sgICAgICAgICAgICAgLyohPERhdGEgVG9nZ2xlLCBmb3IgcmVjZXB0aW9uIHRyYW5zZmVycyAqLw0KI2RlZmluZSBVU0JfRVA3Ul9DVFJfUlhfUG9zICAgICAgICAgICAgICAgICAgICgxNVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0JfRVA3Ul9DVFJfUlhfTXNrICAgICAgICAgICAgICAgICAgICgweDFVTCA8PCBVU0JfRVA3Ul9DVFJfUlhfUG9zKSAgICAvKiE8IDB4MDAwMDgwMDAgKi8NCiNkZWZpbmUgVVNCX0VQN1JfQ1RSX1JYICAgICAgICAgICAgICAgICAgICAgICBVU0JfRVA3Ul9DVFJfUlhfTXNrICAgICAgICAgICAgICAvKiE8Q29ycmVjdCBUcmFuc2ZlciBmb3IgcmVjZXB0aW9uICovDQoNCi8qITxDb21tb24gcmVnaXN0ZXJzICovDQoNCiNkZWZpbmUgIFVTQl9DTlRSICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoVVNCX0JBU0UgKyAweDAwMDAwMDQwVSkgICAgICAgICAgLyohPCBDb250cm9sIHJlZ2lzdGVyICovDQojZGVmaW5lICBVU0JfSVNUUiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKFVTQl9CQVNFICsgMHgwMDAwMDA0NFUpICAgICAgICAgIC8qITwgSW50ZXJydXB0IHN0YXR1cyByZWdpc3RlciAqLw0KI2RlZmluZSAgVVNCX0ZOUiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChVU0JfQkFTRSArIDB4MDAwMDAwNDhVKSAgICAgICAgICAvKiE8IEZyYW1lIG51bWJlciByZWdpc3RlciAqLw0KI2RlZmluZSAgVVNCX0RBRERSICAgICAgICAgICAgICAgICAgICAgICAgICAgIChVU0JfQkFTRSArIDB4MDAwMDAwNENVKSAgICAgICAgICAvKiE8IERldmljZSBhZGRyZXNzIHJlZ2lzdGVyICovDQojZGVmaW5lICBVU0JfQlRBQkxFICAgICAgICAgICAgICAgICAgICAgICAgICAgKFVTQl9CQVNFICsgMHgwMDAwMDA1MFUpICAgICAgICAgIC8qITwgQnVmZmVyIFRhYmxlIGFkZHJlc3MgcmVnaXN0ZXIgKi8NCg0KDQoNCi8qKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgVVNCX0NOVFIgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIFVTQl9DTlRSX0ZSRVNfUG9zICAgICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQl9DTlRSX0ZSRVNfTXNrICAgICAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IFVTQl9DTlRSX0ZSRVNfUG9zKSAgICAgIC8qITwgMHgwMDAwMDAwMSAqLw0KI2RlZmluZSBVU0JfQ05UUl9GUkVTICAgICAgICAgICAgICAgICAgICAgICAgIFVTQl9DTlRSX0ZSRVNfTXNrICAgICAgICAgICAgICAgIC8qITxGb3JjZSBVU0IgUmVzZXQgKi8NCiNkZWZpbmUgVVNCX0NOVFJfUERXTl9Qb3MgICAgICAgICAgICAgICAgICAgICAoMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNCX0NOVFJfUERXTl9Nc2sgICAgICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgVVNCX0NOVFJfUERXTl9Qb3MpICAgICAgLyohPCAweDAwMDAwMDAyICovDQojZGVmaW5lIFVTQl9DTlRSX1BEV04gICAgICAgICAgICAgICAgICAgICAgICAgVVNCX0NOVFJfUERXTl9Nc2sgICAgICAgICAgICAgICAgLyohPFBvd2VyIGRvd24gKi8NCiNkZWZpbmUgVVNCX0NOVFJfTFBNT0RFX1BvcyAgICAgICAgICAgICAgICAgICAoMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNCX0NOVFJfTFBNT0RFX01zayAgICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgVVNCX0NOVFJfTFBNT0RFX1BvcykgICAgLyohPCAweDAwMDAwMDA0ICovDQojZGVmaW5lIFVTQl9DTlRSX0xQTU9ERSAgICAgICAgICAgICAgICAgICAgICAgVVNCX0NOVFJfTFBNT0RFX01zayAgICAgICAgICAgICAgLyohPExvdy1wb3dlciBtb2RlICovDQojZGVmaW5lIFVTQl9DTlRSX0ZTVVNQX1BvcyAgICAgICAgICAgICAgICAgICAgKDNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQl9DTlRSX0ZTVVNQX01zayAgICAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IFVTQl9DTlRSX0ZTVVNQX1BvcykgICAgIC8qITwgMHgwMDAwMDAwOCAqLw0KI2RlZmluZSBVU0JfQ05UUl9GU1VTUCAgICAgICAgICAgICAgICAgICAgICAgIFVTQl9DTlRSX0ZTVVNQX01zayAgICAgICAgICAgICAgIC8qITxGb3JjZSBzdXNwZW5kICovDQojZGVmaW5lIFVTQl9DTlRSX1JFU1VNRV9Qb3MgICAgICAgICAgICAgICAgICAgKDRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQl9DTlRSX1JFU1VNRV9Nc2sgICAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IFVTQl9DTlRSX1JFU1VNRV9Qb3MpICAgIC8qITwgMHgwMDAwMDAxMCAqLw0KI2RlZmluZSBVU0JfQ05UUl9SRVNVTUUgICAgICAgICAgICAgICAgICAgICAgIFVTQl9DTlRSX1JFU1VNRV9Nc2sgICAgICAgICAgICAgIC8qITxSZXN1bWUgcmVxdWVzdCAqLw0KI2RlZmluZSBVU0JfQ05UUl9FU09GTV9Qb3MgICAgICAgICAgICAgICAgICAgICg4VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0JfQ05UUl9FU09GTV9Nc2sgICAgICAgICAgICAgICAgICAgICgweDFVTCA8PCBVU0JfQ05UUl9FU09GTV9Qb3MpICAgICAvKiE8IDB4MDAwMDAxMDAgKi8NCiNkZWZpbmUgVVNCX0NOVFJfRVNPRk0gICAgICAgICAgICAgICAgICAgICAgICBVU0JfQ05UUl9FU09GTV9Nc2sgICAgICAgICAgICAgICAvKiE8RXhwZWN0ZWQgU3RhcnQgT2YgRnJhbWUgSW50ZXJydXB0IE1hc2sgKi8NCiNkZWZpbmUgVVNCX0NOVFJfU09GTV9Qb3MgICAgICAgICAgICAgICAgICAgICAoOVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNCX0NOVFJfU09GTV9Nc2sgICAgICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgVVNCX0NOVFJfU09GTV9Qb3MpICAgICAgLyohPCAweDAwMDAwMjAwICovDQojZGVmaW5lIFVTQl9DTlRSX1NPRk0gICAgICAgICAgICAgICAgICAgICAgICAgVVNCX0NOVFJfU09GTV9Nc2sgICAgICAgICAgICAgICAgLyohPFN0YXJ0IE9mIEZyYW1lIEludGVycnVwdCBNYXNrICovDQojZGVmaW5lIFVTQl9DTlRSX1JFU0VUTV9Qb3MgICAgICAgICAgICAgICAgICAgKDEwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQl9DTlRSX1JFU0VUTV9Nc2sgICAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IFVTQl9DTlRSX1JFU0VUTV9Qb3MpICAgIC8qITwgMHgwMDAwMDQwMCAqLw0KI2RlZmluZSBVU0JfQ05UUl9SRVNFVE0gICAgICAgICAgICAgICAgICAgICAgIFVTQl9DTlRSX1JFU0VUTV9Nc2sgICAgICAgICAgICAgIC8qITxSRVNFVCBJbnRlcnJ1cHQgTWFzayAqLw0KI2RlZmluZSBVU0JfQ05UUl9TVVNQTV9Qb3MgICAgICAgICAgICAgICAgICAgICgxMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0JfQ05UUl9TVVNQTV9Nc2sgICAgICAgICAgICAgICAgICAgICgweDFVTCA8PCBVU0JfQ05UUl9TVVNQTV9Qb3MpICAgICAvKiE8IDB4MDAwMDA4MDAgKi8NCiNkZWZpbmUgVVNCX0NOVFJfU1VTUE0gICAgICAgICAgICAgICAgICAgICAgICBVU0JfQ05UUl9TVVNQTV9Nc2sgICAgICAgICAgICAgICAvKiE8U3VzcGVuZCBtb2RlIEludGVycnVwdCBNYXNrICovDQojZGVmaW5lIFVTQl9DTlRSX1dLVVBNX1BvcyAgICAgICAgICAgICAgICAgICAgKDEyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQl9DTlRSX1dLVVBNX01zayAgICAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IFVTQl9DTlRSX1dLVVBNX1BvcykgICAgIC8qITwgMHgwMDAwMTAwMCAqLw0KI2RlZmluZSBVU0JfQ05UUl9XS1VQTSAgICAgICAgICAgICAgICAgICAgICAgIFVTQl9DTlRSX1dLVVBNX01zayAgICAgICAgICAgICAgIC8qITxXYWtldXAgSW50ZXJydXB0IE1hc2sgKi8NCiNkZWZpbmUgVVNCX0NOVFJfRVJSTV9Qb3MgICAgICAgICAgICAgICAgICAgICAoMTNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNCX0NOVFJfRVJSTV9Nc2sgICAgICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgVVNCX0NOVFJfRVJSTV9Qb3MpICAgICAgLyohPCAweDAwMDAyMDAwICovDQojZGVmaW5lIFVTQl9DTlRSX0VSUk0gICAgICAgICAgICAgICAgICAgICAgICAgVVNCX0NOVFJfRVJSTV9Nc2sgICAgICAgICAgICAgICAgLyohPEVycm9yIEludGVycnVwdCBNYXNrICovDQojZGVmaW5lIFVTQl9DTlRSX1BNQU9WUk1fUG9zICAgICAgICAgICAgICAgICAgKDE0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQl9DTlRSX1BNQU9WUk1fTXNrICAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IFVTQl9DTlRSX1BNQU9WUk1fUG9zKSAgIC8qITwgMHgwMDAwNDAwMCAqLw0KI2RlZmluZSBVU0JfQ05UUl9QTUFPVlJNICAgICAgICAgICAgICAgICAgICAgIFVTQl9DTlRSX1BNQU9WUk1fTXNrICAgICAgICAgICAgIC8qITxQYWNrZXQgTWVtb3J5IEFyZWEgT3ZlciAvIFVuZGVycnVuIEludGVycnVwdCBNYXNrICovDQojZGVmaW5lIFVTQl9DTlRSX0NUUk1fUG9zICAgICAgICAgICAgICAgICAgICAgKDE1VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQl9DTlRSX0NUUk1fTXNrICAgICAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IFVTQl9DTlRSX0NUUk1fUG9zKSAgICAgIC8qITwgMHgwMDAwODAwMCAqLw0KI2RlZmluZSBVU0JfQ05UUl9DVFJNICAgICAgICAgICAgICAgICAgICAgICAgIFVTQl9DTlRSX0NUUk1fTXNrICAgICAgICAgICAgICAgIC8qITxDb3JyZWN0IFRyYW5zZmVyIEludGVycnVwdCBNYXNrICovDQoNCi8qKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgVVNCX0lTVFIgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIFVTQl9JU1RSX0VQX0lEX1BvcyAgICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQl9JU1RSX0VQX0lEX01zayAgICAgICAgICAgICAgICAgICAgKDB4RlVMIDw8IFVTQl9JU1RSX0VQX0lEX1BvcykgICAgIC8qITwgMHgwMDAwMDAwRiAqLw0KI2RlZmluZSBVU0JfSVNUUl9FUF9JRCAgICAgICAgICAgICAgICAgICAgICAgIFVTQl9JU1RSX0VQX0lEX01zayAgICAgICAgICAgICAgIC8qITxFbmRwb2ludCBJZGVudGlmaWVyICovDQojZGVmaW5lIFVTQl9JU1RSX0RJUl9Qb3MgICAgICAgICAgICAgICAgICAgICAgKDRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQl9JU1RSX0RJUl9Nc2sgICAgICAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IFVTQl9JU1RSX0RJUl9Qb3MpICAgICAgIC8qITwgMHgwMDAwMDAxMCAqLw0KI2RlZmluZSBVU0JfSVNUUl9ESVIgICAgICAgICAgICAgICAgICAgICAgICAgIFVTQl9JU1RSX0RJUl9Nc2sgICAgICAgICAgICAgICAgIC8qITxEaXJlY3Rpb24gb2YgdHJhbnNhY3Rpb24gKi8NCiNkZWZpbmUgVVNCX0lTVFJfRVNPRl9Qb3MgICAgICAgICAgICAgICAgICAgICAoOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNCX0lTVFJfRVNPRl9Nc2sgICAgICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgVVNCX0lTVFJfRVNPRl9Qb3MpICAgICAgLyohPCAweDAwMDAwMTAwICovDQojZGVmaW5lIFVTQl9JU1RSX0VTT0YgICAgICAgICAgICAgICAgICAgICAgICAgVVNCX0lTVFJfRVNPRl9Nc2sgICAgICAgICAgICAgICAgLyohPEV4cGVjdGVkIFN0YXJ0IE9mIEZyYW1lICovDQojZGVmaW5lIFVTQl9JU1RSX1NPRl9Qb3MgICAgICAgICAgICAgICAgICAgICAgKDlVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQl9JU1RSX1NPRl9Nc2sgICAgICAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IFVTQl9JU1RSX1NPRl9Qb3MpICAgICAgIC8qITwgMHgwMDAwMDIwMCAqLw0KI2RlZmluZSBVU0JfSVNUUl9TT0YgICAgICAgICAgICAgICAgICAgICAgICAgIFVTQl9JU1RSX1NPRl9Nc2sgICAgICAgICAgICAgICAgIC8qITxTdGFydCBPZiBGcmFtZSAqLw0KI2RlZmluZSBVU0JfSVNUUl9SRVNFVF9Qb3MgICAgICAgICAgICAgICAgICAgICgxMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0JfSVNUUl9SRVNFVF9Nc2sgICAgICAgICAgICAgICAgICAgICgweDFVTCA8PCBVU0JfSVNUUl9SRVNFVF9Qb3MpICAgICAvKiE8IDB4MDAwMDA0MDAgKi8NCiNkZWZpbmUgVVNCX0lTVFJfUkVTRVQgICAgICAgICAgICAgICAgICAgICAgICBVU0JfSVNUUl9SRVNFVF9Nc2sgICAgICAgICAgICAgICAvKiE8VVNCIFJFU0VUIHJlcXVlc3QgKi8NCiNkZWZpbmUgVVNCX0lTVFJfU1VTUF9Qb3MgICAgICAgICAgICAgICAgICAgICAoMTFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNCX0lTVFJfU1VTUF9Nc2sgICAgICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgVVNCX0lTVFJfU1VTUF9Qb3MpICAgICAgLyohPCAweDAwMDAwODAwICovDQojZGVmaW5lIFVTQl9JU1RSX1NVU1AgICAgICAgICAgICAgICAgICAgICAgICAgVVNCX0lTVFJfU1VTUF9Nc2sgICAgICAgICAgICAgICAgLyohPFN1c3BlbmQgbW9kZSByZXF1ZXN0ICovDQojZGVmaW5lIFVTQl9JU1RSX1dLVVBfUG9zICAgICAgICAgICAgICAgICAgICAgKDEyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQl9JU1RSX1dLVVBfTXNrICAgICAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IFVTQl9JU1RSX1dLVVBfUG9zKSAgICAgIC8qITwgMHgwMDAwMTAwMCAqLw0KI2RlZmluZSBVU0JfSVNUUl9XS1VQICAgICAgICAgICAgICAgICAgICAgICAgIFVTQl9JU1RSX1dLVVBfTXNrICAgICAgICAgICAgICAgIC8qITxXYWtlIHVwICovDQojZGVmaW5lIFVTQl9JU1RSX0VSUl9Qb3MgICAgICAgICAgICAgICAgICAgICAgKDEzVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQl9JU1RSX0VSUl9Nc2sgICAgICAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IFVTQl9JU1RSX0VSUl9Qb3MpICAgICAgIC8qITwgMHgwMDAwMjAwMCAqLw0KI2RlZmluZSBVU0JfSVNUUl9FUlIgICAgICAgICAgICAgICAgICAgICAgICAgIFVTQl9JU1RSX0VSUl9Nc2sgICAgICAgICAgICAgICAgIC8qITxFcnJvciAqLw0KI2RlZmluZSBVU0JfSVNUUl9QTUFPVlJfUG9zICAgICAgICAgICAgICAgICAgICgxNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0JfSVNUUl9QTUFPVlJfTXNrICAgICAgICAgICAgICAgICAgICgweDFVTCA8PCBVU0JfSVNUUl9QTUFPVlJfUG9zKSAgICAvKiE8IDB4MDAwMDQwMDAgKi8NCiNkZWZpbmUgVVNCX0lTVFJfUE1BT1ZSICAgICAgICAgICAgICAgICAgICAgICBVU0JfSVNUUl9QTUFPVlJfTXNrICAgICAgICAgICAgICAvKiE8UGFja2V0IE1lbW9yeSBBcmVhIE92ZXIgLyBVbmRlcnJ1biAqLw0KI2RlZmluZSBVU0JfSVNUUl9DVFJfUG9zICAgICAgICAgICAgICAgICAgICAgICgxNVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0JfSVNUUl9DVFJfTXNrICAgICAgICAgICAgICAgICAgICAgICgweDFVTCA8PCBVU0JfSVNUUl9DVFJfUG9zKSAgICAgICAvKiE8IDB4MDAwMDgwMDAgKi8NCiNkZWZpbmUgVVNCX0lTVFJfQ1RSICAgICAgICAgICAgICAgICAgICAgICAgICBVU0JfSVNUUl9DVFJfTXNrICAgICAgICAgICAgICAgICAvKiE8Q29ycmVjdCBUcmFuc2ZlciAqLw0KDQojZGVmaW5lICBVU0JfQ0xSX0NUUiAgICAgICAgICAgICAgICAgICAgICAgICAgKH5VU0JfSVNUUl9DVFIpICAgICAgICAgICAgICAgICAgLyohPCBjbGVhciBDb3JyZWN0IFRSYW5zZmVyIGJpdCAqLw0KI2RlZmluZSAgVVNCX0NMUl9QTUFPVlJNICAgICAgICAgICAgICAgICAgICAgICh+VVNCX0lTVFJfUE1BT1ZSKSAgICAgICAgICAgICAgIC8qITwgY2xlYXIgRE1BIE9WZVIvdW5kZXJydW4gYml0Ki8NCiNkZWZpbmUgIFVTQl9DTFJfRVJSICAgICAgICAgICAgICAgICAgICAgICAgICAoflVTQl9JU1RSX0VSUikgICAgICAgICAgICAgICAgICAvKiE8IGNsZWFyIEVSUm9yIGJpdCAqLw0KI2RlZmluZSAgVVNCX0NMUl9XS1VQICAgICAgICAgICAgICAgICAgICAgICAgICh+VVNCX0lTVFJfV0tVUCkgICAgICAgICAgICAgICAgIC8qITwgY2xlYXIgV2FLZSBVUCBiaXQgKi8NCiNkZWZpbmUgIFVTQl9DTFJfU1VTUCAgICAgICAgICAgICAgICAgICAgICAgICAoflVTQl9JU1RSX1NVU1ApICAgICAgICAgICAgICAgICAvKiE8IGNsZWFyIFNVU1BlbmQgYml0ICovDQojZGVmaW5lICBVU0JfQ0xSX1JFU0VUICAgICAgICAgICAgICAgICAgICAgICAgKH5VU0JfSVNUUl9SRVNFVCkgICAgICAgICAgICAgICAgLyohPCBjbGVhciBSRVNFVCBiaXQgKi8NCiNkZWZpbmUgIFVTQl9DTFJfU09GICAgICAgICAgICAgICAgICAgICAgICAgICAoflVTQl9JU1RSX1NPRikgICAgICAgICAgICAgICAgICAvKiE8IGNsZWFyIFN0YXJ0IE9mIEZyYW1lIGJpdCAqLw0KI2RlZmluZSAgVVNCX0NMUl9FU09GICAgICAgICAgICAgICAgICAgICAgICAgICh+VVNCX0lTVFJfRVNPRikgICAgICAgICAgICAgICAgIC8qITwgY2xlYXIgRXhwZWN0ZWQgU3RhcnQgT2YgRnJhbWUgYml0ICovDQoNCg0KLyoqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBVU0JfRk5SIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgVVNCX0ZOUl9GTl9Qb3MgICAgICAgICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNCX0ZOUl9GTl9Nc2sgICAgICAgICAgICAgICAgICAgICAgICAoMHg3RkZVTCA8PCBVU0JfRk5SX0ZOX1BvcykgICAgICAgLyohPCAweDAwMDAwN0ZGICovDQojZGVmaW5lIFVTQl9GTlJfRk4gICAgICAgICAgICAgICAgICAgICAgICAgICAgVVNCX0ZOUl9GTl9Nc2sgICAgICAgICAgICAgICAgICAgLyohPEZyYW1lIE51bWJlciAqLw0KI2RlZmluZSBVU0JfRk5SX0xTT0ZfUG9zICAgICAgICAgICAgICAgICAgICAgICgxMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0JfRk5SX0xTT0ZfTXNrICAgICAgICAgICAgICAgICAgICAgICgweDNVTCA8PCBVU0JfRk5SX0xTT0ZfUG9zKSAgICAgICAvKiE8IDB4MDAwMDE4MDAgKi8NCiNkZWZpbmUgVVNCX0ZOUl9MU09GICAgICAgICAgICAgICAgICAgICAgICAgICBVU0JfRk5SX0xTT0ZfTXNrICAgICAgICAgICAgICAgICAvKiE8TG9zdCBTT0YgKi8NCiNkZWZpbmUgVVNCX0ZOUl9MQ0tfUG9zICAgICAgICAgICAgICAgICAgICAgICAoMTNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNCX0ZOUl9MQ0tfTXNrICAgICAgICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgVVNCX0ZOUl9MQ0tfUG9zKSAgICAgICAgLyohPCAweDAwMDAyMDAwICovDQojZGVmaW5lIFVTQl9GTlJfTENLICAgICAgICAgICAgICAgICAgICAgICAgICAgVVNCX0ZOUl9MQ0tfTXNrICAgICAgICAgICAgICAgICAgLyohPExvY2tlZCAqLw0KI2RlZmluZSBVU0JfRk5SX1JYRE1fUG9zICAgICAgICAgICAgICAgICAgICAgICgxNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0JfRk5SX1JYRE1fTXNrICAgICAgICAgICAgICAgICAgICAgICgweDFVTCA8PCBVU0JfRk5SX1JYRE1fUG9zKSAgICAgICAvKiE8IDB4MDAwMDQwMDAgKi8NCiNkZWZpbmUgVVNCX0ZOUl9SWERNICAgICAgICAgICAgICAgICAgICAgICAgICBVU0JfRk5SX1JYRE1fTXNrICAgICAgICAgICAgICAgICAvKiE8UmVjZWl2ZSBEYXRhIC0gTGluZSBTdGF0dXMgKi8NCiNkZWZpbmUgVVNCX0ZOUl9SWERQX1BvcyAgICAgICAgICAgICAgICAgICAgICAoMTVVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNCX0ZOUl9SWERQX01zayAgICAgICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgVVNCX0ZOUl9SWERQX1BvcykgICAgICAgLyohPCAweDAwMDA4MDAwICovDQojZGVmaW5lIFVTQl9GTlJfUlhEUCAgICAgICAgICAgICAgICAgICAgICAgICAgVVNCX0ZOUl9SWERQX01zayAgICAgICAgICAgICAgICAgLyohPFJlY2VpdmUgRGF0YSArIExpbmUgU3RhdHVzICovDQoNCi8qKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBVU0JfREFERFIgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIFVTQl9EQUREUl9BRERfUG9zICAgICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQl9EQUREUl9BRERfTXNrICAgICAgICAgICAgICAgICAgICAgKDB4N0ZVTCA8PCBVU0JfREFERFJfQUREX1BvcykgICAgIC8qITwgMHgwMDAwMDA3RiAqLw0KI2RlZmluZSBVU0JfREFERFJfQUREICAgICAgICAgICAgICAgICAgICAgICAgIFVTQl9EQUREUl9BRERfTXNrICAgICAgICAgICAgICAgIC8qITxBRERbNjowXSBiaXRzIChEZXZpY2UgQWRkcmVzcykgKi8NCiNkZWZpbmUgVVNCX0RBRERSX0FERDBfUG9zICAgICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNCX0RBRERSX0FERDBfTXNrICAgICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgVVNCX0RBRERSX0FERDBfUG9zKSAgICAgLyohPCAweDAwMDAwMDAxICovDQojZGVmaW5lIFVTQl9EQUREUl9BREQwICAgICAgICAgICAgICAgICAgICAgICAgVVNCX0RBRERSX0FERDBfTXNrICAgICAgICAgICAgICAgLyohPEJpdCAwICovDQojZGVmaW5lIFVTQl9EQUREUl9BREQxX1BvcyAgICAgICAgICAgICAgICAgICAgKDFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQl9EQUREUl9BREQxX01zayAgICAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IFVTQl9EQUREUl9BREQxX1BvcykgICAgIC8qITwgMHgwMDAwMDAwMiAqLw0KI2RlZmluZSBVU0JfREFERFJfQUREMSAgICAgICAgICAgICAgICAgICAgICAgIFVTQl9EQUREUl9BREQxX01zayAgICAgICAgICAgICAgIC8qITxCaXQgMSAqLw0KI2RlZmluZSBVU0JfREFERFJfQUREMl9Qb3MgICAgICAgICAgICAgICAgICAgICgyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0JfREFERFJfQUREMl9Nc2sgICAgICAgICAgICAgICAgICAgICgweDFVTCA8PCBVU0JfREFERFJfQUREMl9Qb3MpICAgICAvKiE8IDB4MDAwMDAwMDQgKi8NCiNkZWZpbmUgVVNCX0RBRERSX0FERDIgICAgICAgICAgICAgICAgICAgICAgICBVU0JfREFERFJfQUREMl9Nc2sgICAgICAgICAgICAgICAvKiE8Qml0IDIgKi8NCiNkZWZpbmUgVVNCX0RBRERSX0FERDNfUG9zICAgICAgICAgICAgICAgICAgICAoM1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNCX0RBRERSX0FERDNfTXNrICAgICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgVVNCX0RBRERSX0FERDNfUG9zKSAgICAgLyohPCAweDAwMDAwMDA4ICovDQojZGVmaW5lIFVTQl9EQUREUl9BREQzICAgICAgICAgICAgICAgICAgICAgICAgVVNCX0RBRERSX0FERDNfTXNrICAgICAgICAgICAgICAgLyohPEJpdCAzICovDQojZGVmaW5lIFVTQl9EQUREUl9BREQ0X1BvcyAgICAgICAgICAgICAgICAgICAgKDRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQl9EQUREUl9BREQ0X01zayAgICAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IFVTQl9EQUREUl9BREQ0X1BvcykgICAgIC8qITwgMHgwMDAwMDAxMCAqLw0KI2RlZmluZSBVU0JfREFERFJfQURENCAgICAgICAgICAgICAgICAgICAgICAgIFVTQl9EQUREUl9BREQ0X01zayAgICAgICAgICAgICAgIC8qITxCaXQgNCAqLw0KI2RlZmluZSBVU0JfREFERFJfQURENV9Qb3MgICAgICAgICAgICAgICAgICAgICg1VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0JfREFERFJfQURENV9Nc2sgICAgICAgICAgICAgICAgICAgICgweDFVTCA8PCBVU0JfREFERFJfQURENV9Qb3MpICAgICAvKiE8IDB4MDAwMDAwMjAgKi8NCiNkZWZpbmUgVVNCX0RBRERSX0FERDUgICAgICAgICAgICAgICAgICAgICAgICBVU0JfREFERFJfQURENV9Nc2sgICAgICAgICAgICAgICAvKiE8Qml0IDUgKi8NCiNkZWZpbmUgVVNCX0RBRERSX0FERDZfUG9zICAgICAgICAgICAgICAgICAgICAoNlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNCX0RBRERSX0FERDZfTXNrICAgICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgVVNCX0RBRERSX0FERDZfUG9zKSAgICAgLyohPCAweDAwMDAwMDQwICovDQojZGVmaW5lIFVTQl9EQUREUl9BREQ2ICAgICAgICAgICAgICAgICAgICAgICAgVVNCX0RBRERSX0FERDZfTXNrICAgICAgICAgICAgICAgLyohPEJpdCA2ICovDQoNCiNkZWZpbmUgVVNCX0RBRERSX0VGX1BvcyAgICAgICAgICAgICAgICAgICAgICAoN1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNCX0RBRERSX0VGX01zayAgICAgICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgVVNCX0RBRERSX0VGX1BvcykgICAgICAgLyohPCAweDAwMDAwMDgwICovDQojZGVmaW5lIFVTQl9EQUREUl9FRiAgICAgICAgICAgICAgICAgICAgICAgICAgVVNCX0RBRERSX0VGX01zayAgICAgICAgICAgICAgICAgLyohPEVuYWJsZSBGdW5jdGlvbiAqLw0KDQovKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgVVNCX0JUQUJMRSByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqLyAgICANCiNkZWZpbmUgVVNCX0JUQUJMRV9CVEFCTEVfUG9zICAgICAgICAgICAgICAgICAoM1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNCX0JUQUJMRV9CVEFCTEVfTXNrICAgICAgICAgICAgICAgICAoMHgxRkZGVUwgPDwgVVNCX0JUQUJMRV9CVEFCTEVfUG9zKSAvKiE8IDB4MDAwMEZGRjggKi8NCiNkZWZpbmUgVVNCX0JUQUJMRV9CVEFCTEUgICAgICAgICAgICAgICAgICAgICBVU0JfQlRBQkxFX0JUQUJMRV9Nc2sgICAgICAgICAgICAvKiE8QnVmZmVyIFRhYmxlICovDQoNCi8qITwgQnVmZmVyIGRlc2NyaXB0b3IgdGFibGUgKi8NCi8qKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFVTQl9BRERSMF9UWCByZWdpc3RlciAgKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIFVTQl9BRERSMF9UWF9BRERSMF9UWF9Qb3MgICAgICAgICAgICAgKDFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQl9BRERSMF9UWF9BRERSMF9UWF9Nc2sgICAgICAgICAgICAgKDB4N0ZGRlVMIDw8IFVTQl9BRERSMF9UWF9BRERSMF9UWF9Qb3MpIC8qITwgMHgwMDAwRkZGRSAqLw0KI2RlZmluZSBVU0JfQUREUjBfVFhfQUREUjBfVFggICAgICAgICAgICAgICAgIFVTQl9BRERSMF9UWF9BRERSMF9UWF9Nc2sgICAgICAgIC8qITwgVHJhbnNtaXNzaW9uIEJ1ZmZlciBBZGRyZXNzIDAgKi8NCg0KLyoqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgVVNCX0FERFIxX1RYIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgVVNCX0FERFIxX1RYX0FERFIxX1RYX1BvcyAgICAgICAgICAgICAoMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNCX0FERFIxX1RYX0FERFIxX1RYX01zayAgICAgICAgICAgICAoMHg3RkZGVUwgPDwgVVNCX0FERFIxX1RYX0FERFIxX1RYX1BvcykgLyohPCAweDAwMDBGRkZFICovDQojZGVmaW5lIFVTQl9BRERSMV9UWF9BRERSMV9UWCAgICAgICAgICAgICAgICAgVVNCX0FERFIxX1RYX0FERFIxX1RYX01zayAgICAgICAgLyohPCBUcmFuc21pc3Npb24gQnVmZmVyIEFkZHJlc3MgMSAqLw0KDQovKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBVU0JfQUREUjJfVFggcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBVU0JfQUREUjJfVFhfQUREUjJfVFhfUG9zICAgICAgICAgICAgICgxVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0JfQUREUjJfVFhfQUREUjJfVFhfTXNrICAgICAgICAgICAgICgweDdGRkZVTCA8PCBVU0JfQUREUjJfVFhfQUREUjJfVFhfUG9zKSAvKiE8IDB4MDAwMEZGRkUgKi8NCiNkZWZpbmUgVVNCX0FERFIyX1RYX0FERFIyX1RYICAgICAgICAgICAgICAgICBVU0JfQUREUjJfVFhfQUREUjJfVFhfTXNrICAgICAgICAvKiE8IFRyYW5zbWlzc2lvbiBCdWZmZXIgQWRkcmVzcyAyICovDQoNCi8qKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFVTQl9BRERSM19UWCByZWdpc3RlciAgKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIFVTQl9BRERSM19UWF9BRERSM19UWF9Qb3MgICAgICAgICAgICAgKDFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQl9BRERSM19UWF9BRERSM19UWF9Nc2sgICAgICAgICAgICAgKDB4N0ZGRlVMIDw8IFVTQl9BRERSM19UWF9BRERSM19UWF9Qb3MpIC8qITwgMHgwMDAwRkZGRSAqLw0KI2RlZmluZSBVU0JfQUREUjNfVFhfQUREUjNfVFggICAgICAgICAgICAgICAgIFVTQl9BRERSM19UWF9BRERSM19UWF9Nc2sgICAgICAgIC8qITwgVHJhbnNtaXNzaW9uIEJ1ZmZlciBBZGRyZXNzIDMgKi8NCg0KLyoqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgVVNCX0FERFI0X1RYIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgVVNCX0FERFI0X1RYX0FERFI0X1RYX1BvcyAgICAgICAgICAgICAoMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNCX0FERFI0X1RYX0FERFI0X1RYX01zayAgICAgICAgICAgICAoMHg3RkZGVUwgPDwgVVNCX0FERFI0X1RYX0FERFI0X1RYX1BvcykgLyohPCAweDAwMDBGRkZFICovDQojZGVmaW5lIFVTQl9BRERSNF9UWF9BRERSNF9UWCAgICAgICAgICAgICAgICAgVVNCX0FERFI0X1RYX0FERFI0X1RYX01zayAgICAgICAgLyohPCBUcmFuc21pc3Npb24gQnVmZmVyIEFkZHJlc3MgNCAqLw0KDQovKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBVU0JfQUREUjVfVFggcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBVU0JfQUREUjVfVFhfQUREUjVfVFhfUG9zICAgICAgICAgICAgICgxVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0JfQUREUjVfVFhfQUREUjVfVFhfTXNrICAgICAgICAgICAgICgweDdGRkZVTCA8PCBVU0JfQUREUjVfVFhfQUREUjVfVFhfUG9zKSAvKiE8IDB4MDAwMEZGRkUgKi8NCiNkZWZpbmUgVVNCX0FERFI1X1RYX0FERFI1X1RYICAgICAgICAgICAgICAgICBVU0JfQUREUjVfVFhfQUREUjVfVFhfTXNrICAgICAgICAvKiE8IFRyYW5zbWlzc2lvbiBCdWZmZXIgQWRkcmVzcyA1ICovDQoNCi8qKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFVTQl9BRERSNl9UWCByZWdpc3RlciAgKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIFVTQl9BRERSNl9UWF9BRERSNl9UWF9Qb3MgICAgICAgICAgICAgKDFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQl9BRERSNl9UWF9BRERSNl9UWF9Nc2sgICAgICAgICAgICAgKDB4N0ZGRlVMIDw8IFVTQl9BRERSNl9UWF9BRERSNl9UWF9Qb3MpIC8qITwgMHgwMDAwRkZGRSAqLw0KI2RlZmluZSBVU0JfQUREUjZfVFhfQUREUjZfVFggICAgICAgICAgICAgICAgIFVTQl9BRERSNl9UWF9BRERSNl9UWF9Nc2sgICAgICAgIC8qITwgVHJhbnNtaXNzaW9uIEJ1ZmZlciBBZGRyZXNzIDYgKi8NCg0KLyoqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgVVNCX0FERFI3X1RYIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgVVNCX0FERFI3X1RYX0FERFI3X1RYX1BvcyAgICAgICAgICAgICAoMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNCX0FERFI3X1RYX0FERFI3X1RYX01zayAgICAgICAgICAgICAoMHg3RkZGVUwgPDwgVVNCX0FERFI3X1RYX0FERFI3X1RYX1BvcykgLyohPCAweDAwMDBGRkZFICovDQojZGVmaW5lIFVTQl9BRERSN19UWF9BRERSN19UWCAgICAgICAgICAgICAgICAgVVNCX0FERFI3X1RYX0FERFI3X1RYX01zayAgICAgICAgLyohPCBUcmFuc21pc3Npb24gQnVmZmVyIEFkZHJlc3MgNyAqLw0KDQovKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qLw0KDQovKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBVU0JfQ09VTlQwX1RYIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBVU0JfQ09VTlQwX1RYX0NPVU5UMF9UWF9Qb3MgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0JfQ09VTlQwX1RYX0NPVU5UMF9UWF9Nc2sgICAgICAgICAgICgweDNGRlVMIDw8IFVTQl9DT1VOVDBfVFhfQ09VTlQwX1RYX1BvcykgLyohPCAweDAwMDAwM0ZGICovDQojZGVmaW5lIFVTQl9DT1VOVDBfVFhfQ09VTlQwX1RYICAgICAgICAgICAgICAgVVNCX0NPVU5UMF9UWF9DT1VOVDBfVFhfTXNrICAgICAgLyohPCBUcmFuc21pc3Npb24gQnl0ZSBDb3VudCAwICovDQoNCi8qKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFVTQl9DT1VOVDFfVFggcmVnaXN0ZXIgICoqKioqKioqKioqKioqKiovDQojZGVmaW5lIFVTQl9DT1VOVDFfVFhfQ09VTlQxX1RYX1BvcyAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQl9DT1VOVDFfVFhfQ09VTlQxX1RYX01zayAgICAgICAgICAgKDB4M0ZGVUwgPDwgVVNCX0NPVU5UMV9UWF9DT1VOVDFfVFhfUG9zKSAvKiE8IDB4MDAwMDAzRkYgKi8NCiNkZWZpbmUgVVNCX0NPVU5UMV9UWF9DT1VOVDFfVFggICAgICAgICAgICAgICBVU0JfQ09VTlQxX1RYX0NPVU5UMV9UWF9Nc2sgICAgICAvKiE8IFRyYW5zbWlzc2lvbiBCeXRlIENvdW50IDEgKi8NCg0KLyoqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgVVNCX0NPVU5UMl9UWCByZWdpc3RlciAgKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgVVNCX0NPVU5UMl9UWF9DT1VOVDJfVFhfUG9zICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNCX0NPVU5UMl9UWF9DT1VOVDJfVFhfTXNrICAgICAgICAgICAoMHgzRkZVTCA8PCBVU0JfQ09VTlQyX1RYX0NPVU5UMl9UWF9Qb3MpIC8qITwgMHgwMDAwMDNGRiAqLw0KI2RlZmluZSBVU0JfQ09VTlQyX1RYX0NPVU5UMl9UWCAgICAgICAgICAgICAgIFVTQl9DT1VOVDJfVFhfQ09VTlQyX1RYX01zayAgICAgIC8qITwgVHJhbnNtaXNzaW9uIEJ5dGUgQ291bnQgMiAqLw0KDQovKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBVU0JfQ09VTlQzX1RYIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBVU0JfQ09VTlQzX1RYX0NPVU5UM19UWF9Qb3MgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0JfQ09VTlQzX1RYX0NPVU5UM19UWF9Nc2sgICAgICAgICAgICgweDNGRlVMIDw8IFVTQl9DT1VOVDNfVFhfQ09VTlQzX1RYX1BvcykgLyohPCAweDAwMDAwM0ZGICovDQojZGVmaW5lIFVTQl9DT1VOVDNfVFhfQ09VTlQzX1RYICAgICAgICAgICAgICAgVVNCX0NPVU5UM19UWF9DT1VOVDNfVFhfTXNrICAgICAgLyohPCBUcmFuc21pc3Npb24gQnl0ZSBDb3VudCAzICovDQoNCi8qKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFVTQl9DT1VOVDRfVFggcmVnaXN0ZXIgICoqKioqKioqKioqKioqKiovDQojZGVmaW5lIFVTQl9DT1VOVDRfVFhfQ09VTlQ0X1RYX1BvcyAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQl9DT1VOVDRfVFhfQ09VTlQ0X1RYX01zayAgICAgICAgICAgKDB4M0ZGVUwgPDwgVVNCX0NPVU5UNF9UWF9DT1VOVDRfVFhfUG9zKSAvKiE8IDB4MDAwMDAzRkYgKi8NCiNkZWZpbmUgVVNCX0NPVU5UNF9UWF9DT1VOVDRfVFggICAgICAgICAgICAgICBVU0JfQ09VTlQ0X1RYX0NPVU5UNF9UWF9Nc2sgICAgICAvKiE8IFRyYW5zbWlzc2lvbiBCeXRlIENvdW50IDQgKi8NCg0KLyoqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgVVNCX0NPVU5UNV9UWCByZWdpc3RlciAgKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgVVNCX0NPVU5UNV9UWF9DT1VOVDVfVFhfUG9zICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNCX0NPVU5UNV9UWF9DT1VOVDVfVFhfTXNrICAgICAgICAgICAoMHgzRkZVTCA8PCBVU0JfQ09VTlQ1X1RYX0NPVU5UNV9UWF9Qb3MpIC8qITwgMHgwMDAwMDNGRiAqLw0KI2RlZmluZSBVU0JfQ09VTlQ1X1RYX0NPVU5UNV9UWCAgICAgICAgICAgICAgIFVTQl9DT1VOVDVfVFhfQ09VTlQ1X1RYX01zayAgICAgIC8qITwgVHJhbnNtaXNzaW9uIEJ5dGUgQ291bnQgNSAqLw0KDQovKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBVU0JfQ09VTlQ2X1RYIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBVU0JfQ09VTlQ2X1RYX0NPVU5UNl9UWF9Qb3MgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0JfQ09VTlQ2X1RYX0NPVU5UNl9UWF9Nc2sgICAgICAgICAgICgweDNGRlVMIDw8IFVTQl9DT1VOVDZfVFhfQ09VTlQ2X1RYX1BvcykgLyohPCAweDAwMDAwM0ZGICovDQojZGVmaW5lIFVTQl9DT1VOVDZfVFhfQ09VTlQ2X1RYICAgICAgICAgICAgICAgVVNCX0NPVU5UNl9UWF9DT1VOVDZfVFhfTXNrICAgICAgLyohPCBUcmFuc21pc3Npb24gQnl0ZSBDb3VudCA2ICovDQoNCi8qKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFVTQl9DT1VOVDdfVFggcmVnaXN0ZXIgICoqKioqKioqKioqKioqKiovDQojZGVmaW5lIFVTQl9DT1VOVDdfVFhfQ09VTlQ3X1RYX1BvcyAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQl9DT1VOVDdfVFhfQ09VTlQ3X1RYX01zayAgICAgICAgICAgKDB4M0ZGVUwgPDwgVVNCX0NPVU5UN19UWF9DT1VOVDdfVFhfUG9zKSAvKiE8IDB4MDAwMDAzRkYgKi8NCiNkZWZpbmUgVVNCX0NPVU5UN19UWF9DT1VOVDdfVFggICAgICAgICAgICAgICBVU0JfQ09VTlQ3X1RYX0NPVU5UN19UWF9Nc2sgICAgICAvKiE8IFRyYW5zbWlzc2lvbiBCeXRlIENvdW50IDcgKi8NCg0KLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi8NCg0KLyoqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBVU0JfQ09VTlQwX1RYXzAgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKi8NCiNkZWZpbmUgVVNCX0NPVU5UMF9UWF8wX0NPVU5UMF9UWF8wICAgICAgICAgICAoMHgwMDAwMDNGRlUpICAgICAgICAgICAgICAgICAgICAvKiE8IFRyYW5zbWlzc2lvbiBCeXRlIENvdW50IDAgKGxvdykgKi8NCg0KLyoqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBVU0JfQ09VTlQwX1RYXzEgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKi8NCiNkZWZpbmUgVVNCX0NPVU5UMF9UWF8xX0NPVU5UMF9UWF8xICAgICAgICAgICAoMHgwM0ZGMDAwMFUpICAgICAgICAgICAgICAgICAgICAvKiE8IFRyYW5zbWlzc2lvbiBCeXRlIENvdW50IDAgKGhpZ2gpICovDQoNCi8qKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgVVNCX0NPVU5UMV9UWF8wIHJlZ2lzdGVyICAqKioqKioqKioqKioqKiovDQojZGVmaW5lIFVTQl9DT1VOVDFfVFhfMF9DT1VOVDFfVFhfMCAgICAgICAgICAgKDB4MDAwMDAzRkZVKSAgICAgICAgICAgICAgICAgICAgLyohPCBUcmFuc21pc3Npb24gQnl0ZSBDb3VudCAxIChsb3cpICovDQoNCi8qKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgVVNCX0NPVU5UMV9UWF8xIHJlZ2lzdGVyICAqKioqKioqKioqKioqKiovDQojZGVmaW5lIFVTQl9DT1VOVDFfVFhfMV9DT1VOVDFfVFhfMSAgICAgICAgICAgKDB4MDNGRjAwMDBVKSAgICAgICAgICAgICAgICAgICAgLyohPCBUcmFuc21pc3Npb24gQnl0ZSBDb3VudCAxIChoaWdoKSAqLw0KDQovKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFVTQl9DT1VOVDJfVFhfMCByZWdpc3RlciAgKioqKioqKioqKioqKioqLw0KI2RlZmluZSBVU0JfQ09VTlQyX1RYXzBfQ09VTlQyX1RYXzAgICAgICAgICAgICgweDAwMDAwM0ZGVSkgICAgICAgICAgICAgICAgICAgIC8qITwgVHJhbnNtaXNzaW9uIEJ5dGUgQ291bnQgMiAobG93KSAqLw0KDQovKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFVTQl9DT1VOVDJfVFhfMSByZWdpc3RlciAgKioqKioqKioqKioqKioqLw0KI2RlZmluZSBVU0JfQ09VTlQyX1RYXzFfQ09VTlQyX1RYXzEgICAgICAgICAgICgweDAzRkYwMDAwVSkgICAgICAgICAgICAgICAgICAgIC8qITwgVHJhbnNtaXNzaW9uIEJ5dGUgQ291bnQgMiAoaGlnaCkgKi8NCg0KLyoqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBVU0JfQ09VTlQzX1RYXzAgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKi8NCiNkZWZpbmUgVVNCX0NPVU5UM19UWF8wX0NPVU5UM19UWF8wICAgICAgICAgICAoMHgwMDAwMDNGRlUpICAgICAgICAgICAgICAgICAgICAvKiE8IFRyYW5zbWlzc2lvbiBCeXRlIENvdW50IDMgKGxvdykgKi8NCg0KLyoqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBVU0JfQ09VTlQzX1RYXzEgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKi8NCiNkZWZpbmUgVVNCX0NPVU5UM19UWF8xX0NPVU5UM19UWF8xICAgICAgICAgICAoMHgwM0ZGMDAwMFUpICAgICAgICAgICAgICAgICAgICAvKiE8IFRyYW5zbWlzc2lvbiBCeXRlIENvdW50IDMgKGhpZ2gpICovDQoNCi8qKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgVVNCX0NPVU5UNF9UWF8wIHJlZ2lzdGVyICAqKioqKioqKioqKioqKiovDQojZGVmaW5lIFVTQl9DT1VOVDRfVFhfMF9DT1VOVDRfVFhfMCAgICAgICAgICAgKDB4MDAwMDAzRkZVKSAgICAgICAgICAgICAgICAgICAgLyohPCBUcmFuc21pc3Npb24gQnl0ZSBDb3VudCA0IChsb3cpICovDQoNCi8qKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgVVNCX0NPVU5UNF9UWF8xIHJlZ2lzdGVyICAqKioqKioqKioqKioqKiovDQojZGVmaW5lIFVTQl9DT1VOVDRfVFhfMV9DT1VOVDRfVFhfMSAgICAgICAgICAgKDB4MDNGRjAwMDBVKSAgICAgICAgICAgICAgICAgICAgLyohPCBUcmFuc21pc3Npb24gQnl0ZSBDb3VudCA0IChoaWdoKSAqLw0KDQovKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFVTQl9DT1VOVDVfVFhfMCByZWdpc3RlciAgKioqKioqKioqKioqKioqLw0KI2RlZmluZSBVU0JfQ09VTlQ1X1RYXzBfQ09VTlQ1X1RYXzAgICAgICAgICAgICgweDAwMDAwM0ZGVSkgICAgICAgICAgICAgICAgICAgIC8qITwgVHJhbnNtaXNzaW9uIEJ5dGUgQ291bnQgNSAobG93KSAqLw0KDQovKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFVTQl9DT1VOVDVfVFhfMSByZWdpc3RlciAgKioqKioqKioqKioqKioqLw0KI2RlZmluZSBVU0JfQ09VTlQ1X1RYXzFfQ09VTlQ1X1RYXzEgICAgICAgICAgICgweDAzRkYwMDAwVSkgICAgICAgICAgICAgICAgICAgIC8qITwgVHJhbnNtaXNzaW9uIEJ5dGUgQ291bnQgNSAoaGlnaCkgKi8NCg0KLyoqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBVU0JfQ09VTlQ2X1RYXzAgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKi8NCiNkZWZpbmUgVVNCX0NPVU5UNl9UWF8wX0NPVU5UNl9UWF8wICAgICAgICAgICAoMHgwMDAwMDNGRlUpICAgICAgICAgICAgICAgICAgICAvKiE8IFRyYW5zbWlzc2lvbiBCeXRlIENvdW50IDYgKGxvdykgKi8NCg0KLyoqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBVU0JfQ09VTlQ2X1RYXzEgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKi8NCiNkZWZpbmUgVVNCX0NPVU5UNl9UWF8xX0NPVU5UNl9UWF8xICAgICAgICAgICAoMHgwM0ZGMDAwMFUpICAgICAgICAgICAgICAgICAgICAvKiE8IFRyYW5zbWlzc2lvbiBCeXRlIENvdW50IDYgKGhpZ2gpICovDQoNCi8qKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgVVNCX0NPVU5UN19UWF8wIHJlZ2lzdGVyICAqKioqKioqKioqKioqKiovDQojZGVmaW5lIFVTQl9DT1VOVDdfVFhfMF9DT1VOVDdfVFhfMCAgICAgICAgICAgKDB4MDAwMDAzRkZVKSAgICAgICAgICAgICAgICAgICAgLyohPCBUcmFuc21pc3Npb24gQnl0ZSBDb3VudCA3IChsb3cpICovDQoNCi8qKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgVVNCX0NPVU5UN19UWF8xIHJlZ2lzdGVyICAqKioqKioqKioqKioqKiovDQojZGVmaW5lIFVTQl9DT1VOVDdfVFhfMV9DT1VOVDdfVFhfMSAgICAgICAgICAgKDB4MDNGRjAwMDBVKSAgICAgICAgICAgICAgICAgICAgLyohPCBUcmFuc21pc3Npb24gQnl0ZSBDb3VudCA3IChoaWdoKSAqLw0KDQovKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qLw0KDQovKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBVU0JfQUREUjBfUlggcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBVU0JfQUREUjBfUlhfQUREUjBfUlhfUG9zICAgICAgICAgICAgICgxVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0JfQUREUjBfUlhfQUREUjBfUlhfTXNrICAgICAgICAgICAgICgweDdGRkZVTCA8PCBVU0JfQUREUjBfUlhfQUREUjBfUlhfUG9zKSAvKiE8IDB4MDAwMEZGRkUgKi8NCiNkZWZpbmUgVVNCX0FERFIwX1JYX0FERFIwX1JYICAgICAgICAgICAgICAgICBVU0JfQUREUjBfUlhfQUREUjBfUlhfTXNrICAgICAgICAvKiE8IFJlY2VwdGlvbiBCdWZmZXIgQWRkcmVzcyAwICovDQoNCi8qKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFVTQl9BRERSMV9SWCByZWdpc3RlciAgKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIFVTQl9BRERSMV9SWF9BRERSMV9SWF9Qb3MgICAgICAgICAgICAgKDFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQl9BRERSMV9SWF9BRERSMV9SWF9Nc2sgICAgICAgICAgICAgKDB4N0ZGRlVMIDw8IFVTQl9BRERSMV9SWF9BRERSMV9SWF9Qb3MpIC8qITwgMHgwMDAwRkZGRSAqLw0KI2RlZmluZSBVU0JfQUREUjFfUlhfQUREUjFfUlggICAgICAgICAgICAgICAgIFVTQl9BRERSMV9SWF9BRERSMV9SWF9Nc2sgICAgICAgIC8qITwgUmVjZXB0aW9uIEJ1ZmZlciBBZGRyZXNzIDEgKi8NCg0KLyoqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgVVNCX0FERFIyX1JYIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgVVNCX0FERFIyX1JYX0FERFIyX1JYX1BvcyAgICAgICAgICAgICAoMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNCX0FERFIyX1JYX0FERFIyX1JYX01zayAgICAgICAgICAgICAoMHg3RkZGVUwgPDwgVVNCX0FERFIyX1JYX0FERFIyX1JYX1BvcykgLyohPCAweDAwMDBGRkZFICovDQojZGVmaW5lIFVTQl9BRERSMl9SWF9BRERSMl9SWCAgICAgICAgICAgICAgICAgVVNCX0FERFIyX1JYX0FERFIyX1JYX01zayAgICAgICAgLyohPCBSZWNlcHRpb24gQnVmZmVyIEFkZHJlc3MgMiAqLw0KDQovKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBVU0JfQUREUjNfUlggcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBVU0JfQUREUjNfUlhfQUREUjNfUlhfUG9zICAgICAgICAgICAgICgxVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0JfQUREUjNfUlhfQUREUjNfUlhfTXNrICAgICAgICAgICAgICgweDdGRkZVTCA8PCBVU0JfQUREUjNfUlhfQUREUjNfUlhfUG9zKSAvKiE8IDB4MDAwMEZGRkUgKi8NCiNkZWZpbmUgVVNCX0FERFIzX1JYX0FERFIzX1JYICAgICAgICAgICAgICAgICBVU0JfQUREUjNfUlhfQUREUjNfUlhfTXNrICAgICAgICAvKiE8IFJlY2VwdGlvbiBCdWZmZXIgQWRkcmVzcyAzICovDQoNCi8qKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFVTQl9BRERSNF9SWCByZWdpc3RlciAgKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIFVTQl9BRERSNF9SWF9BRERSNF9SWF9Qb3MgICAgICAgICAgICAgKDFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQl9BRERSNF9SWF9BRERSNF9SWF9Nc2sgICAgICAgICAgICAgKDB4N0ZGRlVMIDw8IFVTQl9BRERSNF9SWF9BRERSNF9SWF9Qb3MpIC8qITwgMHgwMDAwRkZGRSAqLw0KI2RlZmluZSBVU0JfQUREUjRfUlhfQUREUjRfUlggICAgICAgICAgICAgICAgIFVTQl9BRERSNF9SWF9BRERSNF9SWF9Nc2sgICAgICAgIC8qITwgUmVjZXB0aW9uIEJ1ZmZlciBBZGRyZXNzIDQgKi8NCg0KLyoqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgVVNCX0FERFI1X1JYIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgVVNCX0FERFI1X1JYX0FERFI1X1JYX1BvcyAgICAgICAgICAgICAoMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNCX0FERFI1X1JYX0FERFI1X1JYX01zayAgICAgICAgICAgICAoMHg3RkZGVUwgPDwgVVNCX0FERFI1X1JYX0FERFI1X1JYX1BvcykgLyohPCAweDAwMDBGRkZFICovDQojZGVmaW5lIFVTQl9BRERSNV9SWF9BRERSNV9SWCAgICAgICAgICAgICAgICAgVVNCX0FERFI1X1JYX0FERFI1X1JYX01zayAgICAgICAgLyohPCBSZWNlcHRpb24gQnVmZmVyIEFkZHJlc3MgNSAqLw0KDQovKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBVU0JfQUREUjZfUlggcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBVU0JfQUREUjZfUlhfQUREUjZfUlhfUG9zICAgICAgICAgICAgICgxVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0JfQUREUjZfUlhfQUREUjZfUlhfTXNrICAgICAgICAgICAgICgweDdGRkZVTCA8PCBVU0JfQUREUjZfUlhfQUREUjZfUlhfUG9zKSAvKiE8IDB4MDAwMEZGRkUgKi8NCiNkZWZpbmUgVVNCX0FERFI2X1JYX0FERFI2X1JYICAgICAgICAgICAgICAgICBVU0JfQUREUjZfUlhfQUREUjZfUlhfTXNrICAgICAgICAvKiE8IFJlY2VwdGlvbiBCdWZmZXIgQWRkcmVzcyA2ICovDQoNCi8qKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFVTQl9BRERSN19SWCByZWdpc3RlciAgKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIFVTQl9BRERSN19SWF9BRERSN19SWF9Qb3MgICAgICAgICAgICAgKDFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQl9BRERSN19SWF9BRERSN19SWF9Nc2sgICAgICAgICAgICAgKDB4N0ZGRlVMIDw8IFVTQl9BRERSN19SWF9BRERSN19SWF9Qb3MpIC8qITwgMHgwMDAwRkZGRSAqLw0KI2RlZmluZSBVU0JfQUREUjdfUlhfQUREUjdfUlggICAgICAgICAgICAgICAgIFVTQl9BRERSN19SWF9BRERSN19SWF9Nc2sgICAgICAgIC8qITwgUmVjZXB0aW9uIEJ1ZmZlciBBZGRyZXNzIDcgKi8NCg0KLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi8NCg0KLyoqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgVVNCX0NPVU5UMF9SWCByZWdpc3RlciAgKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgVVNCX0NPVU5UMF9SWF9DT1VOVDBfUlhfUG9zICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNCX0NPVU5UMF9SWF9DT1VOVDBfUlhfTXNrICAgICAgICAgICAoMHgzRkZVTCA8PCBVU0JfQ09VTlQwX1JYX0NPVU5UMF9SWF9Qb3MpIC8qITwgMHgwMDAwMDNGRiAqLw0KI2RlZmluZSBVU0JfQ09VTlQwX1JYX0NPVU5UMF9SWCAgICAgICAgICAgICAgIFVTQl9DT1VOVDBfUlhfQ09VTlQwX1JYX01zayAgICAgIC8qITwgUmVjZXB0aW9uIEJ5dGUgQ291bnQgKi8NCg0KI2RlZmluZSBVU0JfQ09VTlQwX1JYX05VTV9CTE9DS19Qb3MgICAgICAgICAgICgxMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0JfQ09VTlQwX1JYX05VTV9CTE9DS19Nc2sgICAgICAgICAgICgweDFGVUwgPDwgVVNCX0NPVU5UMF9SWF9OVU1fQkxPQ0tfUG9zKSAvKiE8IDB4MDAwMDdDMDAgKi8NCiNkZWZpbmUgVVNCX0NPVU5UMF9SWF9OVU1fQkxPQ0sgICAgICAgICAgICAgICBVU0JfQ09VTlQwX1JYX05VTV9CTE9DS19Nc2sgICAgICAvKiE8IE5VTV9CTE9DS1s0OjBdIGJpdHMgKE51bWJlciBvZiBibG9ja3MpICovDQojZGVmaW5lIFVTQl9DT1VOVDBfUlhfTlVNX0JMT0NLXzAgICAgICAgICAgICAgKDB4MDFVTCA8PCBVU0JfQ09VTlQwX1JYX05VTV9CTE9DS19Qb3MpIC8qITwgMHgwMDAwMDQwMCAqLw0KI2RlZmluZSBVU0JfQ09VTlQwX1JYX05VTV9CTE9DS18xICAgICAgICAgICAgICgweDAyVUwgPDwgVVNCX0NPVU5UMF9SWF9OVU1fQkxPQ0tfUG9zKSAvKiE8IDB4MDAwMDA4MDAgKi8NCiNkZWZpbmUgVVNCX0NPVU5UMF9SWF9OVU1fQkxPQ0tfMiAgICAgICAgICAgICAoMHgwNFVMIDw8IFVTQl9DT1VOVDBfUlhfTlVNX0JMT0NLX1BvcykgLyohPCAweDAwMDAxMDAwICovDQojZGVmaW5lIFVTQl9DT1VOVDBfUlhfTlVNX0JMT0NLXzMgICAgICAgICAgICAgKDB4MDhVTCA8PCBVU0JfQ09VTlQwX1JYX05VTV9CTE9DS19Qb3MpIC8qITwgMHgwMDAwMjAwMCAqLw0KI2RlZmluZSBVU0JfQ09VTlQwX1JYX05VTV9CTE9DS180ICAgICAgICAgICAgICgweDEwVUwgPDwgVVNCX0NPVU5UMF9SWF9OVU1fQkxPQ0tfUG9zKSAvKiE8IDB4MDAwMDQwMDAgKi8NCg0KI2RlZmluZSBVU0JfQ09VTlQwX1JYX0JMU0laRV9Qb3MgICAgICAgICAgICAgICgxNVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0JfQ09VTlQwX1JYX0JMU0laRV9Nc2sgICAgICAgICAgICAgICgweDFVTCA8PCBVU0JfQ09VTlQwX1JYX0JMU0laRV9Qb3MpIC8qITwgMHgwMDAwODAwMCAqLw0KI2RlZmluZSBVU0JfQ09VTlQwX1JYX0JMU0laRSAgICAgICAgICAgICAgICAgIFVTQl9DT1VOVDBfUlhfQkxTSVpFX01zayAgICAgICAgIC8qITwgQkxvY2sgU0laRSAqLw0KDQovKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBVU0JfQ09VTlQxX1JYIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBVU0JfQ09VTlQxX1JYX0NPVU5UMV9SWF9Qb3MgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0JfQ09VTlQxX1JYX0NPVU5UMV9SWF9Nc2sgICAgICAgICAgICgweDNGRlVMIDw8IFVTQl9DT1VOVDFfUlhfQ09VTlQxX1JYX1BvcykgLyohPCAweDAwMDAwM0ZGICovDQojZGVmaW5lIFVTQl9DT1VOVDFfUlhfQ09VTlQxX1JYICAgICAgICAgICAgICAgVVNCX0NPVU5UMV9SWF9DT1VOVDFfUlhfTXNrICAgICAgLyohPCBSZWNlcHRpb24gQnl0ZSBDb3VudCAqLw0KDQojZGVmaW5lIFVTQl9DT1VOVDFfUlhfTlVNX0JMT0NLX1BvcyAgICAgICAgICAgKDEwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQl9DT1VOVDFfUlhfTlVNX0JMT0NLX01zayAgICAgICAgICAgKDB4MUZVTCA8PCBVU0JfQ09VTlQxX1JYX05VTV9CTE9DS19Qb3MpIC8qITwgMHgwMDAwN0MwMCAqLw0KI2RlZmluZSBVU0JfQ09VTlQxX1JYX05VTV9CTE9DSyAgICAgICAgICAgICAgIFVTQl9DT1VOVDFfUlhfTlVNX0JMT0NLX01zayAgICAgIC8qITwgTlVNX0JMT0NLWzQ6MF0gYml0cyAoTnVtYmVyIG9mIGJsb2NrcykgKi8NCiNkZWZpbmUgVVNCX0NPVU5UMV9SWF9OVU1fQkxPQ0tfMCAgICAgICAgICAgICAoMHgwMVVMIDw8IFVTQl9DT1VOVDFfUlhfTlVNX0JMT0NLX1BvcykgLyohPCAweDAwMDAwNDAwICovDQojZGVmaW5lIFVTQl9DT1VOVDFfUlhfTlVNX0JMT0NLXzEgICAgICAgICAgICAgKDB4MDJVTCA8PCBVU0JfQ09VTlQxX1JYX05VTV9CTE9DS19Qb3MpIC8qITwgMHgwMDAwMDgwMCAqLw0KI2RlZmluZSBVU0JfQ09VTlQxX1JYX05VTV9CTE9DS18yICAgICAgICAgICAgICgweDA0VUwgPDwgVVNCX0NPVU5UMV9SWF9OVU1fQkxPQ0tfUG9zKSAvKiE8IDB4MDAwMDEwMDAgKi8NCiNkZWZpbmUgVVNCX0NPVU5UMV9SWF9OVU1fQkxPQ0tfMyAgICAgICAgICAgICAoMHgwOFVMIDw8IFVTQl9DT1VOVDFfUlhfTlVNX0JMT0NLX1BvcykgLyohPCAweDAwMDAyMDAwICovDQojZGVmaW5lIFVTQl9DT1VOVDFfUlhfTlVNX0JMT0NLXzQgICAgICAgICAgICAgKDB4MTBVTCA8PCBVU0JfQ09VTlQxX1JYX05VTV9CTE9DS19Qb3MpIC8qITwgMHgwMDAwNDAwMCAqLw0KDQojZGVmaW5lIFVTQl9DT1VOVDFfUlhfQkxTSVpFX1BvcyAgICAgICAgICAgICAgKDE1VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQl9DT1VOVDFfUlhfQkxTSVpFX01zayAgICAgICAgICAgICAgKDB4MVVMIDw8IFVTQl9DT1VOVDFfUlhfQkxTSVpFX1BvcykgLyohPCAweDAwMDA4MDAwICovDQojZGVmaW5lIFVTQl9DT1VOVDFfUlhfQkxTSVpFICAgICAgICAgICAgICAgICAgVVNCX0NPVU5UMV9SWF9CTFNJWkVfTXNrICAgICAgICAgLyohPCBCTG9jayBTSVpFICovDQoNCi8qKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFVTQl9DT1VOVDJfUlggcmVnaXN0ZXIgICoqKioqKioqKioqKioqKiovDQojZGVmaW5lIFVTQl9DT1VOVDJfUlhfQ09VTlQyX1JYX1BvcyAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQl9DT1VOVDJfUlhfQ09VTlQyX1JYX01zayAgICAgICAgICAgKDB4M0ZGVUwgPDwgVVNCX0NPVU5UMl9SWF9DT1VOVDJfUlhfUG9zKSAvKiE8IDB4MDAwMDAzRkYgKi8NCiNkZWZpbmUgVVNCX0NPVU5UMl9SWF9DT1VOVDJfUlggICAgICAgICAgICAgICBVU0JfQ09VTlQyX1JYX0NPVU5UMl9SWF9Nc2sgICAgICAvKiE8IFJlY2VwdGlvbiBCeXRlIENvdW50ICovDQoNCiNkZWZpbmUgVVNCX0NPVU5UMl9SWF9OVU1fQkxPQ0tfUG9zICAgICAgICAgICAoMTBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNCX0NPVU5UMl9SWF9OVU1fQkxPQ0tfTXNrICAgICAgICAgICAoMHgxRlVMIDw8IFVTQl9DT1VOVDJfUlhfTlVNX0JMT0NLX1BvcykgLyohPCAweDAwMDA3QzAwICovDQojZGVmaW5lIFVTQl9DT1VOVDJfUlhfTlVNX0JMT0NLICAgICAgICAgICAgICAgVVNCX0NPVU5UMl9SWF9OVU1fQkxPQ0tfTXNrICAgICAgLyohPCBOVU1fQkxPQ0tbNDowXSBiaXRzIChOdW1iZXIgb2YgYmxvY2tzKSAqLw0KI2RlZmluZSBVU0JfQ09VTlQyX1JYX05VTV9CTE9DS18wICAgICAgICAgICAgICgweDAxVUwgPDwgVVNCX0NPVU5UMl9SWF9OVU1fQkxPQ0tfUG9zKSAvKiE8IDB4MDAwMDA0MDAgKi8NCiNkZWZpbmUgVVNCX0NPVU5UMl9SWF9OVU1fQkxPQ0tfMSAgICAgICAgICAgICAoMHgwMlVMIDw8IFVTQl9DT1VOVDJfUlhfTlVNX0JMT0NLX1BvcykgLyohPCAweDAwMDAwODAwICovDQojZGVmaW5lIFVTQl9DT1VOVDJfUlhfTlVNX0JMT0NLXzIgICAgICAgICAgICAgKDB4MDRVTCA8PCBVU0JfQ09VTlQyX1JYX05VTV9CTE9DS19Qb3MpIC8qITwgMHgwMDAwMTAwMCAqLw0KI2RlZmluZSBVU0JfQ09VTlQyX1JYX05VTV9CTE9DS18zICAgICAgICAgICAgICgweDA4VUwgPDwgVVNCX0NPVU5UMl9SWF9OVU1fQkxPQ0tfUG9zKSAvKiE8IDB4MDAwMDIwMDAgKi8NCiNkZWZpbmUgVVNCX0NPVU5UMl9SWF9OVU1fQkxPQ0tfNCAgICAgICAgICAgICAoMHgxMFVMIDw8IFVTQl9DT1VOVDJfUlhfTlVNX0JMT0NLX1BvcykgLyohPCAweDAwMDA0MDAwICovDQoNCiNkZWZpbmUgVVNCX0NPVU5UMl9SWF9CTFNJWkVfUG9zICAgICAgICAgICAgICAoMTVVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNCX0NPVU5UMl9SWF9CTFNJWkVfTXNrICAgICAgICAgICAgICAoMHgxVUwgPDwgVVNCX0NPVU5UMl9SWF9CTFNJWkVfUG9zKSAvKiE8IDB4MDAwMDgwMDAgKi8NCiNkZWZpbmUgVVNCX0NPVU5UMl9SWF9CTFNJWkUgICAgICAgICAgICAgICAgICBVU0JfQ09VTlQyX1JYX0JMU0laRV9Nc2sgICAgICAgICAvKiE8IEJMb2NrIFNJWkUgKi8NCg0KLyoqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgVVNCX0NPVU5UM19SWCByZWdpc3RlciAgKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgVVNCX0NPVU5UM19SWF9DT1VOVDNfUlhfUG9zICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNCX0NPVU5UM19SWF9DT1VOVDNfUlhfTXNrICAgICAgICAgICAoMHgzRkZVTCA8PCBVU0JfQ09VTlQzX1JYX0NPVU5UM19SWF9Qb3MpIC8qITwgMHgwMDAwMDNGRiAqLw0KI2RlZmluZSBVU0JfQ09VTlQzX1JYX0NPVU5UM19SWCAgICAgICAgICAgICAgIFVTQl9DT1VOVDNfUlhfQ09VTlQzX1JYX01zayAgICAgIC8qITwgUmVjZXB0aW9uIEJ5dGUgQ291bnQgKi8NCg0KI2RlZmluZSBVU0JfQ09VTlQzX1JYX05VTV9CTE9DS19Qb3MgICAgICAgICAgICgxMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0JfQ09VTlQzX1JYX05VTV9CTE9DS19Nc2sgICAgICAgICAgICgweDFGVUwgPDwgVVNCX0NPVU5UM19SWF9OVU1fQkxPQ0tfUG9zKSAvKiE8IDB4MDAwMDdDMDAgKi8NCiNkZWZpbmUgVVNCX0NPVU5UM19SWF9OVU1fQkxPQ0sgICAgICAgICAgICAgICBVU0JfQ09VTlQzX1JYX05VTV9CTE9DS19Nc2sgICAgICAvKiE8IE5VTV9CTE9DS1s0OjBdIGJpdHMgKE51bWJlciBvZiBibG9ja3MpICovDQojZGVmaW5lIFVTQl9DT1VOVDNfUlhfTlVNX0JMT0NLXzAgICAgICAgICAgICAgKDB4MDFVTCA8PCBVU0JfQ09VTlQzX1JYX05VTV9CTE9DS19Qb3MpIC8qITwgMHgwMDAwMDQwMCAqLw0KI2RlZmluZSBVU0JfQ09VTlQzX1JYX05VTV9CTE9DS18xICAgICAgICAgICAgICgweDAyVUwgPDwgVVNCX0NPVU5UM19SWF9OVU1fQkxPQ0tfUG9zKSAvKiE8IDB4MDAwMDA4MDAgKi8NCiNkZWZpbmUgVVNCX0NPVU5UM19SWF9OVU1fQkxPQ0tfMiAgICAgICAgICAgICAoMHgwNFVMIDw8IFVTQl9DT1VOVDNfUlhfTlVNX0JMT0NLX1BvcykgLyohPCAweDAwMDAxMDAwICovDQojZGVmaW5lIFVTQl9DT1VOVDNfUlhfTlVNX0JMT0NLXzMgICAgICAgICAgICAgKDB4MDhVTCA8PCBVU0JfQ09VTlQzX1JYX05VTV9CTE9DS19Qb3MpIC8qITwgMHgwMDAwMjAwMCAqLw0KI2RlZmluZSBVU0JfQ09VTlQzX1JYX05VTV9CTE9DS180ICAgICAgICAgICAgICgweDEwVUwgPDwgVVNCX0NPVU5UM19SWF9OVU1fQkxPQ0tfUG9zKSAvKiE8IDB4MDAwMDQwMDAgKi8NCg0KI2RlZmluZSBVU0JfQ09VTlQzX1JYX0JMU0laRV9Qb3MgICAgICAgICAgICAgICgxNVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0JfQ09VTlQzX1JYX0JMU0laRV9Nc2sgICAgICAgICAgICAgICgweDFVTCA8PCBVU0JfQ09VTlQzX1JYX0JMU0laRV9Qb3MpIC8qITwgMHgwMDAwODAwMCAqLw0KI2RlZmluZSBVU0JfQ09VTlQzX1JYX0JMU0laRSAgICAgICAgICAgICAgICAgIFVTQl9DT1VOVDNfUlhfQkxTSVpFX01zayAgICAgICAgIC8qITwgQkxvY2sgU0laRSAqLw0KDQovKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBVU0JfQ09VTlQ0X1JYIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBVU0JfQ09VTlQ0X1JYX0NPVU5UNF9SWF9Qb3MgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0JfQ09VTlQ0X1JYX0NPVU5UNF9SWF9Nc2sgICAgICAgICAgICgweDNGRlVMIDw8IFVTQl9DT1VOVDRfUlhfQ09VTlQ0X1JYX1BvcykgLyohPCAweDAwMDAwM0ZGICovDQojZGVmaW5lIFVTQl9DT1VOVDRfUlhfQ09VTlQ0X1JYICAgICAgICAgICAgICAgVVNCX0NPVU5UNF9SWF9DT1VOVDRfUlhfTXNrICAgICAgLyohPCBSZWNlcHRpb24gQnl0ZSBDb3VudCAqLw0KDQojZGVmaW5lIFVTQl9DT1VOVDRfUlhfTlVNX0JMT0NLX1BvcyAgICAgICAgICAgKDEwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQl9DT1VOVDRfUlhfTlVNX0JMT0NLX01zayAgICAgICAgICAgKDB4MUZVTCA8PCBVU0JfQ09VTlQ0X1JYX05VTV9CTE9DS19Qb3MpIC8qITwgMHgwMDAwN0MwMCAqLw0KI2RlZmluZSBVU0JfQ09VTlQ0X1JYX05VTV9CTE9DSyAgICAgICAgICAgICAgIFVTQl9DT1VOVDRfUlhfTlVNX0JMT0NLX01zayAgICAgIC8qITwgTlVNX0JMT0NLWzQ6MF0gYml0cyAoTnVtYmVyIG9mIGJsb2NrcykgKi8NCiNkZWZpbmUgVVNCX0NPVU5UNF9SWF9OVU1fQkxPQ0tfMCAgICAgICAgICAgICAoMHgwMVVMIDw8IFVTQl9DT1VOVDRfUlhfTlVNX0JMT0NLX1BvcykgLyohPCAweDAwMDAwNDAwICovDQojZGVmaW5lIFVTQl9DT1VOVDRfUlhfTlVNX0JMT0NLXzEgICAgICAgICAgICAgKDB4MDJVTCA8PCBVU0JfQ09VTlQ0X1JYX05VTV9CTE9DS19Qb3MpIC8qITwgMHgwMDAwMDgwMCAqLw0KI2RlZmluZSBVU0JfQ09VTlQ0X1JYX05VTV9CTE9DS18yICAgICAgICAgICAgICgweDA0VUwgPDwgVVNCX0NPVU5UNF9SWF9OVU1fQkxPQ0tfUG9zKSAvKiE8IDB4MDAwMDEwMDAgKi8NCiNkZWZpbmUgVVNCX0NPVU5UNF9SWF9OVU1fQkxPQ0tfMyAgICAgICAgICAgICAoMHgwOFVMIDw8IFVTQl9DT1VOVDRfUlhfTlVNX0JMT0NLX1BvcykgLyohPCAweDAwMDAyMDAwICovDQojZGVmaW5lIFVTQl9DT1VOVDRfUlhfTlVNX0JMT0NLXzQgICAgICAgICAgICAgKDB4MTBVTCA8PCBVU0JfQ09VTlQ0X1JYX05VTV9CTE9DS19Qb3MpIC8qITwgMHgwMDAwNDAwMCAqLw0KDQojZGVmaW5lIFVTQl9DT1VOVDRfUlhfQkxTSVpFX1BvcyAgICAgICAgICAgICAgKDE1VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQl9DT1VOVDRfUlhfQkxTSVpFX01zayAgICAgICAgICAgICAgKDB4MVVMIDw8IFVTQl9DT1VOVDRfUlhfQkxTSVpFX1BvcykgLyohPCAweDAwMDA4MDAwICovDQojZGVmaW5lIFVTQl9DT1VOVDRfUlhfQkxTSVpFICAgICAgICAgICAgICAgICAgVVNCX0NPVU5UNF9SWF9CTFNJWkVfTXNrICAgICAgICAgLyohPCBCTG9jayBTSVpFICovDQoNCi8qKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFVTQl9DT1VOVDVfUlggcmVnaXN0ZXIgICoqKioqKioqKioqKioqKiovDQojZGVmaW5lIFVTQl9DT1VOVDVfUlhfQ09VTlQ1X1JYX1BvcyAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQl9DT1VOVDVfUlhfQ09VTlQ1X1JYX01zayAgICAgICAgICAgKDB4M0ZGVUwgPDwgVVNCX0NPVU5UNV9SWF9DT1VOVDVfUlhfUG9zKSAvKiE8IDB4MDAwMDAzRkYgKi8NCiNkZWZpbmUgVVNCX0NPVU5UNV9SWF9DT1VOVDVfUlggICAgICAgICAgICAgICBVU0JfQ09VTlQ1X1JYX0NPVU5UNV9SWF9Nc2sgICAgICAvKiE8IFJlY2VwdGlvbiBCeXRlIENvdW50ICovDQoNCiNkZWZpbmUgVVNCX0NPVU5UNV9SWF9OVU1fQkxPQ0tfUG9zICAgICAgICAgICAoMTBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNCX0NPVU5UNV9SWF9OVU1fQkxPQ0tfTXNrICAgICAgICAgICAoMHgxRlVMIDw8IFVTQl9DT1VOVDVfUlhfTlVNX0JMT0NLX1BvcykgLyohPCAweDAwMDA3QzAwICovDQojZGVmaW5lIFVTQl9DT1VOVDVfUlhfTlVNX0JMT0NLICAgICAgICAgICAgICAgVVNCX0NPVU5UNV9SWF9OVU1fQkxPQ0tfTXNrICAgICAgLyohPCBOVU1fQkxPQ0tbNDowXSBiaXRzIChOdW1iZXIgb2YgYmxvY2tzKSAqLw0KI2RlZmluZSBVU0JfQ09VTlQ1X1JYX05VTV9CTE9DS18wICAgICAgICAgICAgICgweDAxVUwgPDwgVVNCX0NPVU5UNV9SWF9OVU1fQkxPQ0tfUG9zKSAvKiE8IDB4MDAwMDA0MDAgKi8NCiNkZWZpbmUgVVNCX0NPVU5UNV9SWF9OVU1fQkxPQ0tfMSAgICAgICAgICAgICAoMHgwMlVMIDw8IFVTQl9DT1VOVDVfUlhfTlVNX0JMT0NLX1BvcykgLyohPCAweDAwMDAwODAwICovDQojZGVmaW5lIFVTQl9DT1VOVDVfUlhfTlVNX0JMT0NLXzIgICAgICAgICAgICAgKDB4MDRVTCA8PCBVU0JfQ09VTlQ1X1JYX05VTV9CTE9DS19Qb3MpIC8qITwgMHgwMDAwMTAwMCAqLw0KI2RlZmluZSBVU0JfQ09VTlQ1X1JYX05VTV9CTE9DS18zICAgICAgICAgICAgICgweDA4VUwgPDwgVVNCX0NPVU5UNV9SWF9OVU1fQkxPQ0tfUG9zKSAvKiE8IDB4MDAwMDIwMDAgKi8NCiNkZWZpbmUgVVNCX0NPVU5UNV9SWF9OVU1fQkxPQ0tfNCAgICAgICAgICAgICAoMHgxMFVMIDw8IFVTQl9DT1VOVDVfUlhfTlVNX0JMT0NLX1BvcykgLyohPCAweDAwMDA0MDAwICovDQoNCiNkZWZpbmUgVVNCX0NPVU5UNV9SWF9CTFNJWkVfUG9zICAgICAgICAgICAgICAoMTVVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNCX0NPVU5UNV9SWF9CTFNJWkVfTXNrICAgICAgICAgICAgICAoMHgxVUwgPDwgVVNCX0NPVU5UNV9SWF9CTFNJWkVfUG9zKSAvKiE8IDB4MDAwMDgwMDAgKi8NCiNkZWZpbmUgVVNCX0NPVU5UNV9SWF9CTFNJWkUgICAgICAgICAgICAgICAgICBVU0JfQ09VTlQ1X1JYX0JMU0laRV9Nc2sgICAgICAgICAvKiE8IEJMb2NrIFNJWkUgKi8NCg0KLyoqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgVVNCX0NPVU5UNl9SWCByZWdpc3RlciAgKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgVVNCX0NPVU5UNl9SWF9DT1VOVDZfUlhfUG9zICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgVVNCX0NPVU5UNl9SWF9DT1VOVDZfUlhfTXNrICAgICAgICAgICAoMHgzRkZVTCA8PCBVU0JfQ09VTlQ2X1JYX0NPVU5UNl9SWF9Qb3MpIC8qITwgMHgwMDAwMDNGRiAqLw0KI2RlZmluZSBVU0JfQ09VTlQ2X1JYX0NPVU5UNl9SWCAgICAgICAgICAgICAgIFVTQl9DT1VOVDZfUlhfQ09VTlQ2X1JYX01zayAgICAgIC8qITwgUmVjZXB0aW9uIEJ5dGUgQ291bnQgKi8NCg0KI2RlZmluZSBVU0JfQ09VTlQ2X1JYX05VTV9CTE9DS19Qb3MgICAgICAgICAgICgxMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0JfQ09VTlQ2X1JYX05VTV9CTE9DS19Nc2sgICAgICAgICAgICgweDFGVUwgPDwgVVNCX0NPVU5UNl9SWF9OVU1fQkxPQ0tfUG9zKSAvKiE8IDB4MDAwMDdDMDAgKi8NCiNkZWZpbmUgVVNCX0NPVU5UNl9SWF9OVU1fQkxPQ0sgICAgICAgICAgICAgICBVU0JfQ09VTlQ2X1JYX05VTV9CTE9DS19Nc2sgICAgICAvKiE8IE5VTV9CTE9DS1s0OjBdIGJpdHMgKE51bWJlciBvZiBibG9ja3MpICovDQojZGVmaW5lIFVTQl9DT1VOVDZfUlhfTlVNX0JMT0NLXzAgICAgICAgICAgICAgKDB4MDFVTCA8PCBVU0JfQ09VTlQ2X1JYX05VTV9CTE9DS19Qb3MpIC8qITwgMHgwMDAwMDQwMCAqLw0KI2RlZmluZSBVU0JfQ09VTlQ2X1JYX05VTV9CTE9DS18xICAgICAgICAgICAgICgweDAyVUwgPDwgVVNCX0NPVU5UNl9SWF9OVU1fQkxPQ0tfUG9zKSAvKiE8IDB4MDAwMDA4MDAgKi8NCiNkZWZpbmUgVVNCX0NPVU5UNl9SWF9OVU1fQkxPQ0tfMiAgICAgICAgICAgICAoMHgwNFVMIDw8IFVTQl9DT1VOVDZfUlhfTlVNX0JMT0NLX1BvcykgLyohPCAweDAwMDAxMDAwICovDQojZGVmaW5lIFVTQl9DT1VOVDZfUlhfTlVNX0JMT0NLXzMgICAgICAgICAgICAgKDB4MDhVTCA8PCBVU0JfQ09VTlQ2X1JYX05VTV9CTE9DS19Qb3MpIC8qITwgMHgwMDAwMjAwMCAqLw0KI2RlZmluZSBVU0JfQ09VTlQ2X1JYX05VTV9CTE9DS180ICAgICAgICAgICAgICgweDEwVUwgPDwgVVNCX0NPVU5UNl9SWF9OVU1fQkxPQ0tfUG9zKSAvKiE8IDB4MDAwMDQwMDAgKi8NCg0KI2RlZmluZSBVU0JfQ09VTlQ2X1JYX0JMU0laRV9Qb3MgICAgICAgICAgICAgICgxNVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0JfQ09VTlQ2X1JYX0JMU0laRV9Nc2sgICAgICAgICAgICAgICgweDFVTCA8PCBVU0JfQ09VTlQ2X1JYX0JMU0laRV9Qb3MpIC8qITwgMHgwMDAwODAwMCAqLw0KI2RlZmluZSBVU0JfQ09VTlQ2X1JYX0JMU0laRSAgICAgICAgICAgICAgICAgIFVTQl9DT1VOVDZfUlhfQkxTSVpFX01zayAgICAgICAgIC8qITwgQkxvY2sgU0laRSAqLw0KDQovKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBVU0JfQ09VTlQ3X1JYIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBVU0JfQ09VTlQ3X1JYX0NPVU5UN19SWF9Qb3MgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBVU0JfQ09VTlQ3X1JYX0NPVU5UN19SWF9Nc2sgICAgICAgICAgICgweDNGRlVMIDw8IFVTQl9DT1VOVDdfUlhfQ09VTlQ3X1JYX1BvcykgLyohPCAweDAwMDAwM0ZGICovDQojZGVmaW5lIFVTQl9DT1VOVDdfUlhfQ09VTlQ3X1JYICAgICAgICAgICAgICAgVVNCX0NPVU5UN19SWF9DT1VOVDdfUlhfTXNrICAgICAgLyohPCBSZWNlcHRpb24gQnl0ZSBDb3VudCAqLw0KDQojZGVmaW5lIFVTQl9DT1VOVDdfUlhfTlVNX0JMT0NLX1BvcyAgICAgICAgICAgKDEwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQl9DT1VOVDdfUlhfTlVNX0JMT0NLX01zayAgICAgICAgICAgKDB4MUZVTCA8PCBVU0JfQ09VTlQ3X1JYX05VTV9CTE9DS19Qb3MpIC8qITwgMHgwMDAwN0MwMCAqLw0KI2RlZmluZSBVU0JfQ09VTlQ3X1JYX05VTV9CTE9DSyAgICAgICAgICAgICAgIFVTQl9DT1VOVDdfUlhfTlVNX0JMT0NLX01zayAgICAgIC8qITwgTlVNX0JMT0NLWzQ6MF0gYml0cyAoTnVtYmVyIG9mIGJsb2NrcykgKi8NCiNkZWZpbmUgVVNCX0NPVU5UN19SWF9OVU1fQkxPQ0tfMCAgICAgICAgICAgICAoMHgwMVVMIDw8IFVTQl9DT1VOVDdfUlhfTlVNX0JMT0NLX1BvcykgLyohPCAweDAwMDAwNDAwICovDQojZGVmaW5lIFVTQl9DT1VOVDdfUlhfTlVNX0JMT0NLXzEgICAgICAgICAgICAgKDB4MDJVTCA8PCBVU0JfQ09VTlQ3X1JYX05VTV9CTE9DS19Qb3MpIC8qITwgMHgwMDAwMDgwMCAqLw0KI2RlZmluZSBVU0JfQ09VTlQ3X1JYX05VTV9CTE9DS18yICAgICAgICAgICAgICgweDA0VUwgPDwgVVNCX0NPVU5UN19SWF9OVU1fQkxPQ0tfUG9zKSAvKiE8IDB4MDAwMDEwMDAgKi8NCiNkZWZpbmUgVVNCX0NPVU5UN19SWF9OVU1fQkxPQ0tfMyAgICAgICAgICAgICAoMHgwOFVMIDw8IFVTQl9DT1VOVDdfUlhfTlVNX0JMT0NLX1BvcykgLyohPCAweDAwMDAyMDAwICovDQojZGVmaW5lIFVTQl9DT1VOVDdfUlhfTlVNX0JMT0NLXzQgICAgICAgICAgICAgKDB4MTBVTCA8PCBVU0JfQ09VTlQ3X1JYX05VTV9CTE9DS19Qb3MpIC8qITwgMHgwMDAwNDAwMCAqLw0KDQojZGVmaW5lIFVTQl9DT1VOVDdfUlhfQkxTSVpFX1BvcyAgICAgICAgICAgICAgKDE1VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFVTQl9DT1VOVDdfUlhfQkxTSVpFX01zayAgICAgICAgICAgICAgKDB4MVVMIDw8IFVTQl9DT1VOVDdfUlhfQkxTSVpFX1BvcykgLyohPCAweDAwMDA4MDAwICovDQojZGVmaW5lIFVTQl9DT1VOVDdfUlhfQkxTSVpFICAgICAgICAgICAgICAgICAgVVNCX0NPVU5UN19SWF9CTFNJWkVfTXNrICAgICAgICAgLyohPCBCTG9jayBTSVpFICovDQoNCi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovDQoNCi8qKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgVVNCX0NPVU5UMF9SWF8wIHJlZ2lzdGVyICAqKioqKioqKioqKioqKiovDQojZGVmaW5lIFVTQl9DT1VOVDBfUlhfMF9DT1VOVDBfUlhfMCAgICAgICAgICAgKDB4MDAwMDAzRkZVKSAgICAgICAgICAgICAgICAgICAgLyohPCBSZWNlcHRpb24gQnl0ZSBDb3VudCAobG93KSAqLw0KDQojZGVmaW5lIFVTQl9DT1VOVDBfUlhfMF9OVU1fQkxPQ0tfMCAgICAgICAgICAgKDB4MDAwMDdDMDBVKSAgICAgICAgICAgICAgICAgICAgLyohPCBOVU1fQkxPQ0tfMFs0OjBdIGJpdHMgKE51bWJlciBvZiBibG9ja3MpIChsb3cpICovDQojZGVmaW5lIFVTQl9DT1VOVDBfUlhfMF9OVU1fQkxPQ0tfMF8wICAgICAgICAgKDB4MDAwMDA0MDBVKSAgICAgICAgICAgICAgICAgICAgLyohPCBCaXQgMCAqLw0KI2RlZmluZSBVU0JfQ09VTlQwX1JYXzBfTlVNX0JMT0NLXzBfMSAgICAgICAgICgweDAwMDAwODAwVSkgICAgICAgICAgICAgICAgICAgIC8qITwgQml0IDEgKi8NCiNkZWZpbmUgVVNCX0NPVU5UMF9SWF8wX05VTV9CTE9DS18wXzIgICAgICAgICAoMHgwMDAwMTAwMFUpICAgICAgICAgICAgICAgICAgICAvKiE8IEJpdCAyICovDQojZGVmaW5lIFVTQl9DT1VOVDBfUlhfMF9OVU1fQkxPQ0tfMF8zICAgICAgICAgKDB4MDAwMDIwMDBVKSAgICAgICAgICAgICAgICAgICAgLyohPCBCaXQgMyAqLw0KI2RlZmluZSBVU0JfQ09VTlQwX1JYXzBfTlVNX0JMT0NLXzBfNCAgICAgICAgICgweDAwMDA0MDAwVSkgICAgICAgICAgICAgICAgICAgIC8qITwgQml0IDQgKi8NCg0KI2RlZmluZSBVU0JfQ09VTlQwX1JYXzBfQkxTSVpFXzAgICAgICAgICAgICAgICgweDAwMDA4MDAwVSkgICAgICAgICAgICAgICAgICAgIC8qITwgQkxvY2sgU0laRSAobG93KSAqLw0KDQovKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFVTQl9DT1VOVDBfUlhfMSByZWdpc3RlciAgKioqKioqKioqKioqKioqLw0KI2RlZmluZSBVU0JfQ09VTlQwX1JYXzFfQ09VTlQwX1JYXzEgICAgICAgICAgICgweDAzRkYwMDAwVSkgICAgICAgICAgICAgICAgICAgIC8qITwgUmVjZXB0aW9uIEJ5dGUgQ291bnQgKGhpZ2gpICovDQoNCiNkZWZpbmUgVVNCX0NPVU5UMF9SWF8xX05VTV9CTE9DS18xICAgICAgICAgICAoMHg3QzAwMDAwMFUpICAgICAgICAgICAgICAgICAgICAvKiE8IE5VTV9CTE9DS18xWzQ6MF0gYml0cyAoTnVtYmVyIG9mIGJsb2NrcykgKGhpZ2gpICovDQojZGVmaW5lIFVTQl9DT1VOVDBfUlhfMV9OVU1fQkxPQ0tfMV8wICAgICAgICAgKDB4MDQwMDAwMDBVKSAgICAgICAgICAgICAgICAgICAgLyohPCBCaXQgMSAqLw0KI2RlZmluZSBVU0JfQ09VTlQwX1JYXzFfTlVNX0JMT0NLXzFfMSAgICAgICAgICgweDA4MDAwMDAwVSkgICAgICAgICAgICAgICAgICAgIC8qITwgQml0IDEgKi8NCiNkZWZpbmUgVVNCX0NPVU5UMF9SWF8xX05VTV9CTE9DS18xXzIgICAgICAgICAoMHgxMDAwMDAwMFUpICAgICAgICAgICAgICAgICAgICAvKiE8IEJpdCAyICovDQojZGVmaW5lIFVTQl9DT1VOVDBfUlhfMV9OVU1fQkxPQ0tfMV8zICAgICAgICAgKDB4MjAwMDAwMDBVKSAgICAgICAgICAgICAgICAgICAgLyohPCBCaXQgMyAqLw0KI2RlZmluZSBVU0JfQ09VTlQwX1JYXzFfTlVNX0JMT0NLXzFfNCAgICAgICAgICgweDQwMDAwMDAwVSkgICAgICAgICAgICAgICAgICAgIC8qITwgQml0IDQgKi8NCg0KI2RlZmluZSBVU0JfQ09VTlQwX1JYXzFfQkxTSVpFXzEgICAgICAgICAgICAgICgweDgwMDAwMDAwVSkgICAgICAgICAgICAgICAgICAgIC8qITwgQkxvY2sgU0laRSAoaGlnaCkgKi8NCg0KLyoqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBVU0JfQ09VTlQxX1JYXzAgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKi8NCiNkZWZpbmUgVVNCX0NPVU5UMV9SWF8wX0NPVU5UMV9SWF8wICAgICAgICAgICAoMHgwMDAwMDNGRlUpICAgICAgICAgICAgICAgICAgICAvKiE8IFJlY2VwdGlvbiBCeXRlIENvdW50IChsb3cpICovDQoNCiNkZWZpbmUgVVNCX0NPVU5UMV9SWF8wX05VTV9CTE9DS18wICAgICAgICAgICAoMHgwMDAwN0MwMFUpICAgICAgICAgICAgICAgICAgICAvKiE8IE5VTV9CTE9DS18wWzQ6MF0gYml0cyAoTnVtYmVyIG9mIGJsb2NrcykgKGxvdykgKi8NCiNkZWZpbmUgVVNCX0NPVU5UMV9SWF8wX05VTV9CTE9DS18wXzAgICAgICAgICAoMHgwMDAwMDQwMFUpICAgICAgICAgICAgICAgICAgICAvKiE8IEJpdCAwICovDQojZGVmaW5lIFVTQl9DT1VOVDFfUlhfMF9OVU1fQkxPQ0tfMF8xICAgICAgICAgKDB4MDAwMDA4MDBVKSAgICAgICAgICAgICAgICAgICAgLyohPCBCaXQgMSAqLw0KI2RlZmluZSBVU0JfQ09VTlQxX1JYXzBfTlVNX0JMT0NLXzBfMiAgICAgICAgICgweDAwMDAxMDAwVSkgICAgICAgICAgICAgICAgICAgIC8qITwgQml0IDIgKi8NCiNkZWZpbmUgVVNCX0NPVU5UMV9SWF8wX05VTV9CTE9DS18wXzMgICAgICAgICAoMHgwMDAwMjAwMFUpICAgICAgICAgICAgICAgICAgICAvKiE8IEJpdCAzICovDQojZGVmaW5lIFVTQl9DT1VOVDFfUlhfMF9OVU1fQkxPQ0tfMF80ICAgICAgICAgKDB4MDAwMDQwMDBVKSAgICAgICAgICAgICAgICAgICAgLyohPCBCaXQgNCAqLw0KDQojZGVmaW5lIFVTQl9DT1VOVDFfUlhfMF9CTFNJWkVfMCAgICAgICAgICAgICAgKDB4MDAwMDgwMDBVKSAgICAgICAgICAgICAgICAgICAgLyohPCBCTG9jayBTSVpFIChsb3cpICovDQoNCi8qKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgVVNCX0NPVU5UMV9SWF8xIHJlZ2lzdGVyICAqKioqKioqKioqKioqKiovDQojZGVmaW5lIFVTQl9DT1VOVDFfUlhfMV9DT1VOVDFfUlhfMSAgICAgICAgICAgKDB4MDNGRjAwMDBVKSAgICAgICAgICAgICAgICAgICAgLyohPCBSZWNlcHRpb24gQnl0ZSBDb3VudCAoaGlnaCkgKi8NCg0KI2RlZmluZSBVU0JfQ09VTlQxX1JYXzFfTlVNX0JMT0NLXzEgICAgICAgICAgICgweDdDMDAwMDAwVSkgICAgICAgICAgICAgICAgICAgIC8qITwgTlVNX0JMT0NLXzFbNDowXSBiaXRzIChOdW1iZXIgb2YgYmxvY2tzKSAoaGlnaCkgKi8NCiNkZWZpbmUgVVNCX0NPVU5UMV9SWF8xX05VTV9CTE9DS18xXzAgICAgICAgICAoMHgwNDAwMDAwMFUpICAgICAgICAgICAgICAgICAgICAvKiE8IEJpdCAwICovDQojZGVmaW5lIFVTQl9DT1VOVDFfUlhfMV9OVU1fQkxPQ0tfMV8xICAgICAgICAgKDB4MDgwMDAwMDBVKSAgICAgICAgICAgICAgICAgICAgLyohPCBCaXQgMSAqLw0KI2RlZmluZSBVU0JfQ09VTlQxX1JYXzFfTlVNX0JMT0NLXzFfMiAgICAgICAgICgweDEwMDAwMDAwVSkgICAgICAgICAgICAgICAgICAgIC8qITwgQml0IDIgKi8NCiNkZWZpbmUgVVNCX0NPVU5UMV9SWF8xX05VTV9CTE9DS18xXzMgICAgICAgICAoMHgyMDAwMDAwMFUpICAgICAgICAgICAgICAgICAgICAvKiE8IEJpdCAzICovDQojZGVmaW5lIFVTQl9DT1VOVDFfUlhfMV9OVU1fQkxPQ0tfMV80ICAgICAgICAgKDB4NDAwMDAwMDBVKSAgICAgICAgICAgICAgICAgICAgLyohPCBCaXQgNCAqLw0KDQojZGVmaW5lIFVTQl9DT1VOVDFfUlhfMV9CTFNJWkVfMSAgICAgICAgICAgICAgKDB4ODAwMDAwMDBVKSAgICAgICAgICAgICAgICAgICAgLyohPCBCTG9jayBTSVpFIChoaWdoKSAqLw0KDQovKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFVTQl9DT1VOVDJfUlhfMCByZWdpc3RlciAgKioqKioqKioqKioqKioqLw0KI2RlZmluZSBVU0JfQ09VTlQyX1JYXzBfQ09VTlQyX1JYXzAgICAgICAgICAgICgweDAwMDAwM0ZGVSkgICAgICAgICAgICAgICAgICAgIC8qITwgUmVjZXB0aW9uIEJ5dGUgQ291bnQgKGxvdykgKi8NCg0KI2RlZmluZSBVU0JfQ09VTlQyX1JYXzBfTlVNX0JMT0NLXzAgICAgICAgICAgICgweDAwMDA3QzAwVSkgICAgICAgICAgICAgICAgICAgIC8qITwgTlVNX0JMT0NLXzBbNDowXSBiaXRzIChOdW1iZXIgb2YgYmxvY2tzKSAobG93KSAqLw0KI2RlZmluZSBVU0JfQ09VTlQyX1JYXzBfTlVNX0JMT0NLXzBfMCAgICAgICAgICgweDAwMDAwNDAwVSkgICAgICAgICAgICAgICAgICAgIC8qITwgQml0IDAgKi8NCiNkZWZpbmUgVVNCX0NPVU5UMl9SWF8wX05VTV9CTE9DS18wXzEgICAgICAgICAoMHgwMDAwMDgwMFUpICAgICAgICAgICAgICAgICAgICAvKiE8IEJpdCAxICovDQojZGVmaW5lIFVTQl9DT1VOVDJfUlhfMF9OVU1fQkxPQ0tfMF8yICAgICAgICAgKDB4MDAwMDEwMDBVKSAgICAgICAgICAgICAgICAgICAgLyohPCBCaXQgMiAqLw0KI2RlZmluZSBVU0JfQ09VTlQyX1JYXzBfTlVNX0JMT0NLXzBfMyAgICAgICAgICgweDAwMDAyMDAwVSkgICAgICAgICAgICAgICAgICAgIC8qITwgQml0IDMgKi8NCiNkZWZpbmUgVVNCX0NPVU5UMl9SWF8wX05VTV9CTE9DS18wXzQgICAgICAgICAoMHgwMDAwNDAwMFUpICAgICAgICAgICAgICAgICAgICAvKiE8IEJpdCA0ICovDQoNCiNkZWZpbmUgVVNCX0NPVU5UMl9SWF8wX0JMU0laRV8wICAgICAgICAgICAgICAoMHgwMDAwODAwMFUpICAgICAgICAgICAgICAgICAgICAvKiE8IEJMb2NrIFNJWkUgKGxvdykgKi8NCg0KLyoqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBVU0JfQ09VTlQyX1JYXzEgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKi8NCiNkZWZpbmUgVVNCX0NPVU5UMl9SWF8xX0NPVU5UMl9SWF8xICAgICAgICAgICAoMHgwM0ZGMDAwMFUpICAgICAgICAgICAgICAgICAgICAvKiE8IFJlY2VwdGlvbiBCeXRlIENvdW50IChoaWdoKSAqLw0KDQojZGVmaW5lIFVTQl9DT1VOVDJfUlhfMV9OVU1fQkxPQ0tfMSAgICAgICAgICAgKDB4N0MwMDAwMDBVKSAgICAgICAgICAgICAgICAgICAgLyohPCBOVU1fQkxPQ0tfMVs0OjBdIGJpdHMgKE51bWJlciBvZiBibG9ja3MpIChoaWdoKSAqLw0KI2RlZmluZSBVU0JfQ09VTlQyX1JYXzFfTlVNX0JMT0NLXzFfMCAgICAgICAgICgweDA0MDAwMDAwVSkgICAgICAgICAgICAgICAgICAgIC8qITwgQml0IDAgKi8NCiNkZWZpbmUgVVNCX0NPVU5UMl9SWF8xX05VTV9CTE9DS18xXzEgICAgICAgICAoMHgwODAwMDAwMFUpICAgICAgICAgICAgICAgICAgICAvKiE8IEJpdCAxICovDQojZGVmaW5lIFVTQl9DT1VOVDJfUlhfMV9OVU1fQkxPQ0tfMV8yICAgICAgICAgKDB4MTAwMDAwMDBVKSAgICAgICAgICAgICAgICAgICAgLyohPCBCaXQgMiAqLw0KI2RlZmluZSBVU0JfQ09VTlQyX1JYXzFfTlVNX0JMT0NLXzFfMyAgICAgICAgICgweDIwMDAwMDAwVSkgICAgICAgICAgICAgICAgICAgIC8qITwgQml0IDMgKi8NCiNkZWZpbmUgVVNCX0NPVU5UMl9SWF8xX05VTV9CTE9DS18xXzQgICAgICAgICAoMHg0MDAwMDAwMFUpICAgICAgICAgICAgICAgICAgICAvKiE8IEJpdCA0ICovDQoNCiNkZWZpbmUgVVNCX0NPVU5UMl9SWF8xX0JMU0laRV8xICAgICAgICAgICAgICAoMHg4MDAwMDAwMFUpICAgICAgICAgICAgICAgICAgICAvKiE8IEJMb2NrIFNJWkUgKGhpZ2gpICovDQoNCi8qKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgVVNCX0NPVU5UM19SWF8wIHJlZ2lzdGVyICAqKioqKioqKioqKioqKiovDQojZGVmaW5lIFVTQl9DT1VOVDNfUlhfMF9DT1VOVDNfUlhfMCAgICAgICAgICAgKDB4MDAwMDAzRkZVKSAgICAgICAgICAgICAgICAgICAgLyohPCBSZWNlcHRpb24gQnl0ZSBDb3VudCAobG93KSAqLw0KDQojZGVmaW5lIFVTQl9DT1VOVDNfUlhfMF9OVU1fQkxPQ0tfMCAgICAgICAgICAgKDB4MDAwMDdDMDBVKSAgICAgICAgICAgICAgICAgICAgLyohPCBOVU1fQkxPQ0tfMFs0OjBdIGJpdHMgKE51bWJlciBvZiBibG9ja3MpIChsb3cpICovDQojZGVmaW5lIFVTQl9DT1VOVDNfUlhfMF9OVU1fQkxPQ0tfMF8wICAgICAgICAgKDB4MDAwMDA0MDBVKSAgICAgICAgICAgICAgICAgICAgLyohPCBCaXQgMCAqLw0KI2RlZmluZSBVU0JfQ09VTlQzX1JYXzBfTlVNX0JMT0NLXzBfMSAgICAgICAgICgweDAwMDAwODAwVSkgICAgICAgICAgICAgICAgICAgIC8qITwgQml0IDEgKi8NCiNkZWZpbmUgVVNCX0NPVU5UM19SWF8wX05VTV9CTE9DS18wXzIgICAgICAgICAoMHgwMDAwMTAwMFUpICAgICAgICAgICAgICAgICAgICAvKiE8IEJpdCAyICovDQojZGVmaW5lIFVTQl9DT1VOVDNfUlhfMF9OVU1fQkxPQ0tfMF8zICAgICAgICAgKDB4MDAwMDIwMDBVKSAgICAgICAgICAgICAgICAgICAgLyohPCBCaXQgMyAqLw0KI2RlZmluZSBVU0JfQ09VTlQzX1JYXzBfTlVNX0JMT0NLXzBfNCAgICAgICAgICgweDAwMDA0MDAwVSkgICAgICAgICAgICAgICAgICAgIC8qITwgQml0IDQgKi8NCg0KI2RlZmluZSBVU0JfQ09VTlQzX1JYXzBfQkxTSVpFXzAgICAgICAgICAgICAgICgweDAwMDA4MDAwVSkgICAgICAgICAgICAgICAgICAgIC8qITwgQkxvY2sgU0laRSAobG93KSAqLw0KDQovKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFVTQl9DT1VOVDNfUlhfMSByZWdpc3RlciAgKioqKioqKioqKioqKioqLw0KI2RlZmluZSBVU0JfQ09VTlQzX1JYXzFfQ09VTlQzX1JYXzEgICAgICAgICAgICgweDAzRkYwMDAwVSkgICAgICAgICAgICAgICAgICAgIC8qITwgUmVjZXB0aW9uIEJ5dGUgQ291bnQgKGhpZ2gpICovDQoNCiNkZWZpbmUgVVNCX0NPVU5UM19SWF8xX05VTV9CTE9DS18xICAgICAgICAgICAoMHg3QzAwMDAwMFUpICAgICAgICAgICAgICAgICAgICAvKiE8IE5VTV9CTE9DS18xWzQ6MF0gYml0cyAoTnVtYmVyIG9mIGJsb2NrcykgKGhpZ2gpICovDQojZGVmaW5lIFVTQl9DT1VOVDNfUlhfMV9OVU1fQkxPQ0tfMV8wICAgICAgICAgKDB4MDQwMDAwMDBVKSAgICAgICAgICAgICAgICAgICAgLyohPCBCaXQgMCAqLw0KI2RlZmluZSBVU0JfQ09VTlQzX1JYXzFfTlVNX0JMT0NLXzFfMSAgICAgICAgICgweDA4MDAwMDAwVSkgICAgICAgICAgICAgICAgICAgIC8qITwgQml0IDEgKi8NCiNkZWZpbmUgVVNCX0NPVU5UM19SWF8xX05VTV9CTE9DS18xXzIgICAgICAgICAoMHgxMDAwMDAwMFUpICAgICAgICAgICAgICAgICAgICAvKiE8IEJpdCAyICovDQojZGVmaW5lIFVTQl9DT1VOVDNfUlhfMV9OVU1fQkxPQ0tfMV8zICAgICAgICAgKDB4MjAwMDAwMDBVKSAgICAgICAgICAgICAgICAgICAgLyohPCBCaXQgMyAqLw0KI2RlZmluZSBVU0JfQ09VTlQzX1JYXzFfTlVNX0JMT0NLXzFfNCAgICAgICAgICgweDQwMDAwMDAwVSkgICAgICAgICAgICAgICAgICAgIC8qITwgQml0IDQgKi8NCg0KI2RlZmluZSBVU0JfQ09VTlQzX1JYXzFfQkxTSVpFXzEgICAgICAgICAgICAgICgweDgwMDAwMDAwVSkgICAgICAgICAgICAgICAgICAgIC8qITwgQkxvY2sgU0laRSAoaGlnaCkgKi8NCg0KLyoqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBVU0JfQ09VTlQ0X1JYXzAgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKi8NCiNkZWZpbmUgVVNCX0NPVU5UNF9SWF8wX0NPVU5UNF9SWF8wICAgICAgICAgICAoMHgwMDAwMDNGRlUpICAgICAgICAgICAgICAgICAgICAvKiE8IFJlY2VwdGlvbiBCeXRlIENvdW50IChsb3cpICovDQoNCiNkZWZpbmUgVVNCX0NPVU5UNF9SWF8wX05VTV9CTE9DS18wICAgICAgICAgICAoMHgwMDAwN0MwMFUpICAgICAgICAgICAgICAgICAgICAvKiE8IE5VTV9CTE9DS18wWzQ6MF0gYml0cyAoTnVtYmVyIG9mIGJsb2NrcykgKGxvdykgKi8NCiNkZWZpbmUgVVNCX0NPVU5UNF9SWF8wX05VTV9CTE9DS18wXzAgICAgICAgICAoMHgwMDAwMDQwMFUpICAgICAgICAgICAgICAgICAgICAvKiE8IEJpdCAwICovDQojZGVmaW5lIFVTQl9DT1VOVDRfUlhfMF9OVU1fQkxPQ0tfMF8xICAgICAgICAgKDB4MDAwMDA4MDBVKSAgICAgICAgICAgICAgICAgICAgLyohPCBCaXQgMSAqLw0KI2RlZmluZSBVU0JfQ09VTlQ0X1JYXzBfTlVNX0JMT0NLXzBfMiAgICAgICAgICgweDAwMDAxMDAwVSkgICAgICAgICAgICAgICAgICAgIC8qITwgQml0IDIgKi8NCiNkZWZpbmUgVVNCX0NPVU5UNF9SWF8wX05VTV9CTE9DS18wXzMgICAgICAgICAoMHgwMDAwMjAwMFUpICAgICAgICAgICAgICAgICAgICAvKiE8IEJpdCAzICovDQojZGVmaW5lIFVTQl9DT1VOVDRfUlhfMF9OVU1fQkxPQ0tfMF80ICAgICAgICAgKDB4MDAwMDQwMDBVKSAgICAgICAgICAgICAgICAgICAgLyohPCBCaXQgNCAqLw0KDQojZGVmaW5lIFVTQl9DT1VOVDRfUlhfMF9CTFNJWkVfMCAgICAgICAgICAgICAgKDB4MDAwMDgwMDBVKSAgICAgICAgICAgICAgICAgICAgLyohPCBCTG9jayBTSVpFIChsb3cpICovDQoNCi8qKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgVVNCX0NPVU5UNF9SWF8xIHJlZ2lzdGVyICAqKioqKioqKioqKioqKiovDQojZGVmaW5lIFVTQl9DT1VOVDRfUlhfMV9DT1VOVDRfUlhfMSAgICAgICAgICAgKDB4MDNGRjAwMDBVKSAgICAgICAgICAgICAgICAgICAgLyohPCBSZWNlcHRpb24gQnl0ZSBDb3VudCAoaGlnaCkgKi8NCg0KI2RlZmluZSBVU0JfQ09VTlQ0X1JYXzFfTlVNX0JMT0NLXzEgICAgICAgICAgICgweDdDMDAwMDAwVSkgICAgICAgICAgICAgICAgICAgIC8qITwgTlVNX0JMT0NLXzFbNDowXSBiaXRzIChOdW1iZXIgb2YgYmxvY2tzKSAoaGlnaCkgKi8NCiNkZWZpbmUgVVNCX0NPVU5UNF9SWF8xX05VTV9CTE9DS18xXzAgICAgICAgICAoMHgwNDAwMDAwMFUpICAgICAgICAgICAgICAgICAgICAvKiE8IEJpdCAwICovDQojZGVmaW5lIFVTQl9DT1VOVDRfUlhfMV9OVU1fQkxPQ0tfMV8xICAgICAgICAgKDB4MDgwMDAwMDBVKSAgICAgICAgICAgICAgICAgICAgLyohPCBCaXQgMSAqLw0KI2RlZmluZSBVU0JfQ09VTlQ0X1JYXzFfTlVNX0JMT0NLXzFfMiAgICAgICAgICgweDEwMDAwMDAwVSkgICAgICAgICAgICAgICAgICAgIC8qITwgQml0IDIgKi8NCiNkZWZpbmUgVVNCX0NPVU5UNF9SWF8xX05VTV9CTE9DS18xXzMgICAgICAgICAoMHgyMDAwMDAwMFUpICAgICAgICAgICAgICAgICAgICAvKiE8IEJpdCAzICovDQojZGVmaW5lIFVTQl9DT1VOVDRfUlhfMV9OVU1fQkxPQ0tfMV80ICAgICAgICAgKDB4NDAwMDAwMDBVKSAgICAgICAgICAgICAgICAgICAgLyohPCBCaXQgNCAqLw0KDQojZGVmaW5lIFVTQl9DT1VOVDRfUlhfMV9CTFNJWkVfMSAgICAgICAgICAgICAgKDB4ODAwMDAwMDBVKSAgICAgICAgICAgICAgICAgICAgLyohPCBCTG9jayBTSVpFIChoaWdoKSAqLw0KDQovKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFVTQl9DT1VOVDVfUlhfMCByZWdpc3RlciAgKioqKioqKioqKioqKioqLw0KI2RlZmluZSBVU0JfQ09VTlQ1X1JYXzBfQ09VTlQ1X1JYXzAgICAgICAgICAgICgweDAwMDAwM0ZGVSkgICAgICAgICAgICAgICAgICAgIC8qITwgUmVjZXB0aW9uIEJ5dGUgQ291bnQgKGxvdykgKi8NCg0KI2RlZmluZSBVU0JfQ09VTlQ1X1JYXzBfTlVNX0JMT0NLXzAgICAgICAgICAgICgweDAwMDA3QzAwVSkgICAgICAgICAgICAgICAgICAgIC8qITwgTlVNX0JMT0NLXzBbNDowXSBiaXRzIChOdW1iZXIgb2YgYmxvY2tzKSAobG93KSAqLw0KI2RlZmluZSBVU0JfQ09VTlQ1X1JYXzBfTlVNX0JMT0NLXzBfMCAgICAgICAgICgweDAwMDAwNDAwVSkgICAgICAgICAgICAgICAgICAgIC8qITwgQml0IDAgKi8NCiNkZWZpbmUgVVNCX0NPVU5UNV9SWF8wX05VTV9CTE9DS18wXzEgICAgICAgICAoMHgwMDAwMDgwMFUpICAgICAgICAgICAgICAgICAgICAvKiE8IEJpdCAxICovDQojZGVmaW5lIFVTQl9DT1VOVDVfUlhfMF9OVU1fQkxPQ0tfMF8yICAgICAgICAgKDB4MDAwMDEwMDBVKSAgICAgICAgICAgICAgICAgICAgLyohPCBCaXQgMiAqLw0KI2RlZmluZSBVU0JfQ09VTlQ1X1JYXzBfTlVNX0JMT0NLXzBfMyAgICAgICAgICgweDAwMDAyMDAwVSkgICAgICAgICAgICAgICAgICAgIC8qITwgQml0IDMgKi8NCiNkZWZpbmUgVVNCX0NPVU5UNV9SWF8wX05VTV9CTE9DS18wXzQgICAgICAgICAoMHgwMDAwNDAwMFUpICAgICAgICAgICAgICAgICAgICAvKiE8IEJpdCA0ICovDQoNCiNkZWZpbmUgVVNCX0NPVU5UNV9SWF8wX0JMU0laRV8wICAgICAgICAgICAgICAoMHgwMDAwODAwMFUpICAgICAgICAgICAgICAgICAgICAvKiE8IEJMb2NrIFNJWkUgKGxvdykgKi8NCg0KLyoqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBVU0JfQ09VTlQ1X1JYXzEgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKi8NCiNkZWZpbmUgVVNCX0NPVU5UNV9SWF8xX0NPVU5UNV9SWF8xICAgICAgICAgICAoMHgwM0ZGMDAwMFUpICAgICAgICAgICAgICAgICAgICAvKiE8IFJlY2VwdGlvbiBCeXRlIENvdW50IChoaWdoKSAqLw0KDQojZGVmaW5lIFVTQl9DT1VOVDVfUlhfMV9OVU1fQkxPQ0tfMSAgICAgICAgICAgKDB4N0MwMDAwMDBVKSAgICAgICAgICAgICAgICAgICAgLyohPCBOVU1fQkxPQ0tfMVs0OjBdIGJpdHMgKE51bWJlciBvZiBibG9ja3MpIChoaWdoKSAqLw0KI2RlZmluZSBVU0JfQ09VTlQ1X1JYXzFfTlVNX0JMT0NLXzFfMCAgICAgICAgICgweDA0MDAwMDAwVSkgICAgICAgICAgICAgICAgICAgIC8qITwgQml0IDAgKi8NCiNkZWZpbmUgVVNCX0NPVU5UNV9SWF8xX05VTV9CTE9DS18xXzEgICAgICAgICAoMHgwODAwMDAwMFUpICAgICAgICAgICAgICAgICAgICAvKiE8IEJpdCAxICovDQojZGVmaW5lIFVTQl9DT1VOVDVfUlhfMV9OVU1fQkxPQ0tfMV8yICAgICAgICAgKDB4MTAwMDAwMDBVKSAgICAgICAgICAgICAgICAgICAgLyohPCBCaXQgMiAqLw0KI2RlZmluZSBVU0JfQ09VTlQ1X1JYXzFfTlVNX0JMT0NLXzFfMyAgICAgICAgICgweDIwMDAwMDAwVSkgICAgICAgICAgICAgICAgICAgIC8qITwgQml0IDMgKi8NCiNkZWZpbmUgVVNCX0NPVU5UNV9SWF8xX05VTV9CTE9DS18xXzQgICAgICAgICAoMHg0MDAwMDAwMFUpICAgICAgICAgICAgICAgICAgICAvKiE8IEJpdCA0ICovDQoNCiNkZWZpbmUgVVNCX0NPVU5UNV9SWF8xX0JMU0laRV8xICAgICAgICAgICAgICAoMHg4MDAwMDAwMFUpICAgICAgICAgICAgICAgICAgICAvKiE8IEJMb2NrIFNJWkUgKGhpZ2gpICovDQoNCi8qKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBVU0JfQ09VTlQ2X1JYXzAgIHJlZ2lzdGVyICAqKioqKioqKioqKioqKiovDQojZGVmaW5lIFVTQl9DT1VOVDZfUlhfMF9DT1VOVDZfUlhfMCAgICAgICAgICAgKDB4MDAwMDAzRkZVKSAgICAgICAgICAgICAgICAgICAgLyohPCBSZWNlcHRpb24gQnl0ZSBDb3VudCAobG93KSAqLw0KDQojZGVmaW5lIFVTQl9DT1VOVDZfUlhfMF9OVU1fQkxPQ0tfMCAgICAgICAgICAgKDB4MDAwMDdDMDBVKSAgICAgICAgICAgICAgICAgICAgLyohPCBOVU1fQkxPQ0tfMFs0OjBdIGJpdHMgKE51bWJlciBvZiBibG9ja3MpIChsb3cpICovDQojZGVmaW5lIFVTQl9DT1VOVDZfUlhfMF9OVU1fQkxPQ0tfMF8wICAgICAgICAgKDB4MDAwMDA0MDBVKSAgICAgICAgICAgICAgICAgICAgLyohPCBCaXQgMCAqLw0KI2RlZmluZSBVU0JfQ09VTlQ2X1JYXzBfTlVNX0JMT0NLXzBfMSAgICAgICAgICgweDAwMDAwODAwVSkgICAgICAgICAgICAgICAgICAgIC8qITwgQml0IDEgKi8NCiNkZWZpbmUgVVNCX0NPVU5UNl9SWF8wX05VTV9CTE9DS18wXzIgICAgICAgICAoMHgwMDAwMTAwMFUpICAgICAgICAgICAgICAgICAgICAvKiE8IEJpdCAyICovDQojZGVmaW5lIFVTQl9DT1VOVDZfUlhfMF9OVU1fQkxPQ0tfMF8zICAgICAgICAgKDB4MDAwMDIwMDBVKSAgICAgICAgICAgICAgICAgICAgLyohPCBCaXQgMyAqLw0KI2RlZmluZSBVU0JfQ09VTlQ2X1JYXzBfTlVNX0JMT0NLXzBfNCAgICAgICAgICgweDAwMDA0MDAwVSkgICAgICAgICAgICAgICAgICAgIC8qITwgQml0IDQgKi8NCg0KI2RlZmluZSBVU0JfQ09VTlQ2X1JYXzBfQkxTSVpFXzAgICAgICAgICAgICAgICgweDAwMDA4MDAwVSkgICAgICAgICAgICAgICAgICAgIC8qITwgQkxvY2sgU0laRSAobG93KSAqLw0KDQovKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFVTQl9DT1VOVDZfUlhfMSByZWdpc3RlciAgKioqKioqKioqKioqKioqLw0KI2RlZmluZSBVU0JfQ09VTlQ2X1JYXzFfQ09VTlQ2X1JYXzEgICAgICAgICAgICgweDAzRkYwMDAwVSkgICAgICAgICAgICAgICAgICAgIC8qITwgUmVjZXB0aW9uIEJ5dGUgQ291bnQgKGhpZ2gpICovDQoNCiNkZWZpbmUgVVNCX0NPVU5UNl9SWF8xX05VTV9CTE9DS18xICAgICAgICAgICAoMHg3QzAwMDAwMFUpICAgICAgICAgICAgICAgICAgICAvKiE8IE5VTV9CTE9DS18xWzQ6MF0gYml0cyAoTnVtYmVyIG9mIGJsb2NrcykgKGhpZ2gpICovDQojZGVmaW5lIFVTQl9DT1VOVDZfUlhfMV9OVU1fQkxPQ0tfMV8wICAgICAgICAgKDB4MDQwMDAwMDBVKSAgICAgICAgICAgICAgICAgICAgLyohPCBCaXQgMCAqLw0KI2RlZmluZSBVU0JfQ09VTlQ2X1JYXzFfTlVNX0JMT0NLXzFfMSAgICAgICAgICgweDA4MDAwMDAwVSkgICAgICAgICAgICAgICAgICAgIC8qITwgQml0IDEgKi8NCiNkZWZpbmUgVVNCX0NPVU5UNl9SWF8xX05VTV9CTE9DS18xXzIgICAgICAgICAoMHgxMDAwMDAwMFUpICAgICAgICAgICAgICAgICAgICAvKiE8IEJpdCAyICovDQojZGVmaW5lIFVTQl9DT1VOVDZfUlhfMV9OVU1fQkxPQ0tfMV8zICAgICAgICAgKDB4MjAwMDAwMDBVKSAgICAgICAgICAgICAgICAgICAgLyohPCBCaXQgMyAqLw0KI2RlZmluZSBVU0JfQ09VTlQ2X1JYXzFfTlVNX0JMT0NLXzFfNCAgICAgICAgICgweDQwMDAwMDAwVSkgICAgICAgICAgICAgICAgICAgIC8qITwgQml0IDQgKi8NCg0KI2RlZmluZSBVU0JfQ09VTlQ2X1JYXzFfQkxTSVpFXzEgICAgICAgICAgICAgICgweDgwMDAwMDAwVSkgICAgICAgICAgICAgICAgICAgIC8qITwgQkxvY2sgU0laRSAoaGlnaCkgKi8NCg0KLyoqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFVTQl9DT1VOVDdfUlhfMCByZWdpc3RlciAgKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgVVNCX0NPVU5UN19SWF8wX0NPVU5UN19SWF8wICAgICAgICAgICAoMHgwMDAwMDNGRlUpICAgICAgICAgICAgICAgICAgICAvKiE8IFJlY2VwdGlvbiBCeXRlIENvdW50IChsb3cpICovDQoNCiNkZWZpbmUgVVNCX0NPVU5UN19SWF8wX05VTV9CTE9DS18wICAgICAgICAgICAoMHgwMDAwN0MwMFUpICAgICAgICAgICAgICAgICAgICAvKiE8IE5VTV9CTE9DS18wWzQ6MF0gYml0cyAoTnVtYmVyIG9mIGJsb2NrcykgKGxvdykgKi8NCiNkZWZpbmUgVVNCX0NPVU5UN19SWF8wX05VTV9CTE9DS18wXzAgICAgICAgICAoMHgwMDAwMDQwMFUpICAgICAgICAgICAgICAgICAgICAvKiE8IEJpdCAwICovDQojZGVmaW5lIFVTQl9DT1VOVDdfUlhfMF9OVU1fQkxPQ0tfMF8xICAgICAgICAgKDB4MDAwMDA4MDBVKSAgICAgICAgICAgICAgICAgICAgLyohPCBCaXQgMSAqLw0KI2RlZmluZSBVU0JfQ09VTlQ3X1JYXzBfTlVNX0JMT0NLXzBfMiAgICAgICAgICgweDAwMDAxMDAwVSkgICAgICAgICAgICAgICAgICAgIC8qITwgQml0IDIgKi8NCiNkZWZpbmUgVVNCX0NPVU5UN19SWF8wX05VTV9CTE9DS18wXzMgICAgICAgICAoMHgwMDAwMjAwMFUpICAgICAgICAgICAgICAgICAgICAvKiE8IEJpdCAzICovDQojZGVmaW5lIFVTQl9DT1VOVDdfUlhfMF9OVU1fQkxPQ0tfMF80ICAgICAgICAgKDB4MDAwMDQwMDBVKSAgICAgICAgICAgICAgICAgICAgLyohPCBCaXQgNCAqLw0KDQojZGVmaW5lIFVTQl9DT1VOVDdfUlhfMF9CTFNJWkVfMCAgICAgICAgICAgICAgKDB4MDAwMDgwMDBVKSAgICAgICAgICAgICAgICAgICAgLyohPCBCTG9jayBTSVpFIChsb3cpICovDQoNCi8qKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBVU0JfQ09VTlQ3X1JYXzEgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKiovDQojZGVmaW5lIFVTQl9DT1VOVDdfUlhfMV9DT1VOVDdfUlhfMSAgICAgICAgICAgKDB4MDNGRjAwMDBVKSAgICAgICAgICAgICAgICAgICAgLyohPCBSZWNlcHRpb24gQnl0ZSBDb3VudCAoaGlnaCkgKi8NCg0KI2RlZmluZSBVU0JfQ09VTlQ3X1JYXzFfTlVNX0JMT0NLXzEgICAgICAgICAgICgweDdDMDAwMDAwVSkgICAgICAgICAgICAgICAgICAgIC8qITwgTlVNX0JMT0NLXzFbNDowXSBiaXRzIChOdW1iZXIgb2YgYmxvY2tzKSAoaGlnaCkgKi8NCiNkZWZpbmUgVVNCX0NPVU5UN19SWF8xX05VTV9CTE9DS18xXzAgICAgICAgICAoMHgwNDAwMDAwMFUpICAgICAgICAgICAgICAgICAgICAvKiE8IEJpdCAwICovDQojZGVmaW5lIFVTQl9DT1VOVDdfUlhfMV9OVU1fQkxPQ0tfMV8xICAgICAgICAgKDB4MDgwMDAwMDBVKSAgICAgICAgICAgICAgICAgICAgLyohPCBCaXQgMSAqLw0KI2RlZmluZSBVU0JfQ09VTlQ3X1JYXzFfTlVNX0JMT0NLXzFfMiAgICAgICAgICgweDEwMDAwMDAwVSkgICAgICAgICAgICAgICAgICAgIC8qITwgQml0IDIgKi8NCiNkZWZpbmUgVVNCX0NPVU5UN19SWF8xX05VTV9CTE9DS18xXzMgICAgICAgICAoMHgyMDAwMDAwMFUpICAgICAgICAgICAgICAgICAgICAvKiE8IEJpdCAzICovDQojZGVmaW5lIFVTQl9DT1VOVDdfUlhfMV9OVU1fQkxPQ0tfMV80ICAgICAgICAgKDB4NDAwMDAwMDBVKSAgICAgICAgICAgICAgICAgICAgLyohPCBCaXQgNCAqLw0KDQojZGVmaW5lIFVTQl9DT1VOVDdfUlhfMV9CTFNJWkVfMSAgICAgICAgICAgICAgKDB4ODAwMDAwMDBVKSAgICAgICAgICAgICAgICAgICAgLyohPCBCTG9jayBTSVpFIChoaWdoKSAqLw0KDQovKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLw0KLyogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8NCi8qICAgICAgICAgICAgICAgICAgICAgICAgIFdpbmRvdyBXQVRDSERPRyAoV1dERykgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovDQovKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLw0KLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8NCg0KLyoqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBXV0RHX0NSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgV1dER19DUl9UX1BvcyAgICAgICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgV1dER19DUl9UX01zayAgICAgICAgICAgICAgICAgICAgICAgKDB4N0ZVTCA8PCBXV0RHX0NSX1RfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwMDdGICovDQojZGVmaW5lIFdXREdfQ1JfVCAgICAgICAgICAgICAgICAgICAgICAgICAgIFdXREdfQ1JfVF9Nc2sgICAgICAgICAgICAgICAgICAgICAgLyohPCBUWzY6MF0gYml0cyAoNy1CaXQgY291bnRlciAoTVNCIHRvIExTQikpICovDQojZGVmaW5lIFdXREdfQ1JfVF8wICAgICAgICAgICAgICAgICAgICAgICAgICgweDAxVUwgPDwgV1dER19DUl9UX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDAwMSAqLw0KI2RlZmluZSBXV0RHX0NSX1RfMSAgICAgICAgICAgICAgICAgICAgICAgICAoMHgwMlVMIDw8IFdXREdfQ1JfVF9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDAwMDIgKi8NCiNkZWZpbmUgV1dER19DUl9UXzIgICAgICAgICAgICAgICAgICAgICAgICAgKDB4MDRVTCA8PCBXV0RHX0NSX1RfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwMDA0ICovDQojZGVmaW5lIFdXREdfQ1JfVF8zICAgICAgICAgICAgICAgICAgICAgICAgICgweDA4VUwgPDwgV1dER19DUl9UX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDAwOCAqLw0KI2RlZmluZSBXV0RHX0NSX1RfNCAgICAgICAgICAgICAgICAgICAgICAgICAoMHgxMFVMIDw8IFdXREdfQ1JfVF9Qb3MpICAgICAgICAgICAvKiE8IDB4MDAwMDAwMTAgKi8NCiNkZWZpbmUgV1dER19DUl9UXzUgICAgICAgICAgICAgICAgICAgICAgICAgKDB4MjBVTCA8PCBXV0RHX0NSX1RfUG9zKSAgICAgICAgICAgLyohPCAweDAwMDAwMDIwICovDQojZGVmaW5lIFdXREdfQ1JfVF82ICAgICAgICAgICAgICAgICAgICAgICAgICgweDQwVUwgPDwgV1dER19DUl9UX1BvcykgICAgICAgICAgIC8qITwgMHgwMDAwMDA0MCAqLw0KDQovKiBMZWdhY3kgZGVmaW5lcyAqLw0KI2RlZmluZSAgV1dER19DUl9UMCBXV0RHX0NSX1RfMA0KI2RlZmluZSAgV1dER19DUl9UMSBXV0RHX0NSX1RfMQ0KI2RlZmluZSAgV1dER19DUl9UMiBXV0RHX0NSX1RfMg0KI2RlZmluZSAgV1dER19DUl9UMyBXV0RHX0NSX1RfMw0KI2RlZmluZSAgV1dER19DUl9UNCBXV0RHX0NSX1RfNA0KI2RlZmluZSAgV1dER19DUl9UNSBXV0RHX0NSX1RfNQ0KI2RlZmluZSAgV1dER19DUl9UNiBXV0RHX0NSX1RfNg0KDQojZGVmaW5lIFdXREdfQ1JfV0RHQV9Qb3MgICAgICAgICAgICAgICAgICAgICg3VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFdXREdfQ1JfV0RHQV9Nc2sgICAgICAgICAgICAgICAgICAgICgweDFVTCA8PCBXV0RHX0NSX1dER0FfUG9zKSAgICAgICAgIC8qITwgMHgwMDAwMDA4MCAqLw0KI2RlZmluZSBXV0RHX0NSX1dER0EgICAgICAgICAgICAgICAgICAgICAgICBXV0RHX0NSX1dER0FfTXNrICAgICAgICAgICAgICAgICAgIC8qITwgQWN0aXZhdGlvbiBiaXQgKi8NCg0KLyoqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBXV0RHX0NGUiByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgV1dER19DRlJfV19Qb3MgICAgICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgV1dER19DRlJfV19Nc2sgICAgICAgICAgICAgICAgICAgICAgKDB4N0ZVTCA8PCBXV0RHX0NGUl9XX1BvcykgICAgICAgICAgLyohPCAweDAwMDAwMDdGICovDQojZGVmaW5lIFdXREdfQ0ZSX1cgICAgICAgICAgICAgICAgICAgICAgICAgIFdXREdfQ0ZSX1dfTXNrICAgICAgICAgICAgICAgICAgICAgLyohPCBXWzY6MF0gYml0cyAoNy1iaXQgd2luZG93IHZhbHVlKSAqLw0KI2RlZmluZSBXV0RHX0NGUl9XXzAgICAgICAgICAgICAgICAgICAgICAgICAoMHgwMVVMIDw8IFdXREdfQ0ZSX1dfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDAwMDEgKi8NCiNkZWZpbmUgV1dER19DRlJfV18xICAgICAgICAgICAgICAgICAgICAgICAgKDB4MDJVTCA8PCBXV0RHX0NGUl9XX1BvcykgICAgICAgICAgLyohPCAweDAwMDAwMDAyICovDQojZGVmaW5lIFdXREdfQ0ZSX1dfMiAgICAgICAgICAgICAgICAgICAgICAgICgweDA0VUwgPDwgV1dER19DRlJfV19Qb3MpICAgICAgICAgIC8qITwgMHgwMDAwMDAwNCAqLw0KI2RlZmluZSBXV0RHX0NGUl9XXzMgICAgICAgICAgICAgICAgICAgICAgICAoMHgwOFVMIDw8IFdXREdfQ0ZSX1dfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDAwMDggKi8NCiNkZWZpbmUgV1dER19DRlJfV180ICAgICAgICAgICAgICAgICAgICAgICAgKDB4MTBVTCA8PCBXV0RHX0NGUl9XX1BvcykgICAgICAgICAgLyohPCAweDAwMDAwMDEwICovDQojZGVmaW5lIFdXREdfQ0ZSX1dfNSAgICAgICAgICAgICAgICAgICAgICAgICgweDIwVUwgPDwgV1dER19DRlJfV19Qb3MpICAgICAgICAgIC8qITwgMHgwMDAwMDAyMCAqLw0KI2RlZmluZSBXV0RHX0NGUl9XXzYgICAgICAgICAgICAgICAgICAgICAgICAoMHg0MFVMIDw8IFdXREdfQ0ZSX1dfUG9zKSAgICAgICAgICAvKiE8IDB4MDAwMDAwNDAgKi8NCg0KLyogTGVnYWN5IGRlZmluZXMgKi8NCiNkZWZpbmUgIFdXREdfQ0ZSX1cwIFdXREdfQ0ZSX1dfMA0KI2RlZmluZSAgV1dER19DRlJfVzEgV1dER19DRlJfV18xDQojZGVmaW5lICBXV0RHX0NGUl9XMiBXV0RHX0NGUl9XXzINCiNkZWZpbmUgIFdXREdfQ0ZSX1czIFdXREdfQ0ZSX1dfMw0KI2RlZmluZSAgV1dER19DRlJfVzQgV1dER19DRlJfV180DQojZGVmaW5lICBXV0RHX0NGUl9XNSBXV0RHX0NGUl9XXzUNCiNkZWZpbmUgIFdXREdfQ0ZSX1c2IFdXREdfQ0ZSX1dfNg0KDQojZGVmaW5lIFdXREdfQ0ZSX1dER1RCX1BvcyAgICAgICAgICAgICAgICAgICg3VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFdXREdfQ0ZSX1dER1RCX01zayAgICAgICAgICAgICAgICAgICgweDNVTCA8PCBXV0RHX0NGUl9XREdUQl9Qb3MpICAgICAgIC8qITwgMHgwMDAwMDE4MCAqLw0KI2RlZmluZSBXV0RHX0NGUl9XREdUQiAgICAgICAgICAgICAgICAgICAgICBXV0RHX0NGUl9XREdUQl9Nc2sgICAgICAgICAgICAgICAgIC8qITwgV0RHVEJbMTowXSBiaXRzIChUaW1lciBCYXNlKSAqLw0KI2RlZmluZSBXV0RHX0NGUl9XREdUQl8wICAgICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgV1dER19DRlJfV0RHVEJfUG9zKSAgICAgICAvKiE8IDB4MDAwMDAwODAgKi8NCiNkZWZpbmUgV1dER19DRlJfV0RHVEJfMSAgICAgICAgICAgICAgICAgICAgKDB4MlVMIDw8IFdXREdfQ0ZSX1dER1RCX1BvcykgICAgICAgLyohPCAweDAwMDAwMTAwICovDQoNCi8qIExlZ2FjeSBkZWZpbmVzICovDQojZGVmaW5lICBXV0RHX0NGUl9XREdUQjAgV1dER19DRlJfV0RHVEJfMA0KI2RlZmluZSAgV1dER19DRlJfV0RHVEIxIFdXREdfQ0ZSX1dER1RCXzENCg0KI2RlZmluZSBXV0RHX0NGUl9FV0lfUG9zICAgICAgICAgICAgICAgICAgICAoOVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBXV0RHX0NGUl9FV0lfTXNrICAgICAgICAgICAgICAgICAgICAoMHgxVUwgPDwgV1dER19DRlJfRVdJX1BvcykgICAgICAgICAvKiE8IDB4MDAwMDAyMDAgKi8NCiNkZWZpbmUgV1dER19DRlJfRVdJICAgICAgICAgICAgICAgICAgICAgICAgV1dER19DRlJfRVdJX01zayAgICAgICAgICAgICAgICAgICAvKiE8IEVhcmx5IFdha2V1cCBJbnRlcnJ1cHQgKi8NCg0KLyoqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBXV0RHX1NSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgV1dER19TUl9FV0lGX1BvcyAgICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgV1dER19TUl9FV0lGX01zayAgICAgICAgICAgICAgICAgICAgKDB4MVVMIDw8IFdXREdfU1JfRVdJRl9Qb3MpICAgICAgICAgLyohPCAweDAwMDAwMDAxICovDQojZGVmaW5lIFdXREdfU1JfRVdJRiAgICAgICAgICAgICAgICAgICAgICAgIFdXREdfU1JfRVdJRl9Nc2sgICAgICAgICAgICAgICAgICAgLyohPCBFYXJseSBXYWtldXAgSW50ZXJydXB0IEZsYWcgKi8NCg0KLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8NCi8qICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovDQovKiAgICAgICAgICAgICAgICAgICAgICAgIFN5c3RlbVRpY2sgKFN5c1RpY2spICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLw0KLyogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8NCi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovDQoNCi8qKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFN5c1RpY2tfQ1RSTCByZWdpc3RlciAgKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIFN5c1RpY2tfQ1RSTF9FTkFCTEUgICAgICAgICAgICAgICAgICgweDAwMDAwMDAxVSkgICAgICAgICAgICAgICAgICAgICAgLyohPCBDb3VudGVyIGVuYWJsZSAqLw0KI2RlZmluZSBTeXNUaWNrX0NUUkxfVElDS0lOVCAgICAgICAgICAgICAgICAoMHgwMDAwMDAwMlUpICAgICAgICAgICAgICAgICAgICAgIC8qITwgQ291bnRpbmcgZG93biB0byAwIHBlbmRzIHRoZSBTeXNUaWNrIGhhbmRsZXIgKi8NCiNkZWZpbmUgU3lzVGlja19DVFJMX0NMS1NPVVJDRSAgICAgICAgICAgICAgKDB4MDAwMDAwMDRVKSAgICAgICAgICAgICAgICAgICAgICAvKiE8IENsb2NrIHNvdXJjZSAqLw0KI2RlZmluZSBTeXNUaWNrX0NUUkxfQ09VTlRGTEFHICAgICAgICAgICAgICAoMHgwMDAxMDAwMFUpICAgICAgICAgICAgICAgICAgICAgIC8qITwgQ291bnQgRmxhZyAqLw0KDQovKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBTeXNUaWNrX0xPQUQgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBTeXNUaWNrX0xPQURfUkVMT0FEICAgICAgICAgICAgICAgICAoMHgwMEZGRkZGRlUpICAgICAgICAgICAgICAgICAgICAgIC8qITwgVmFsdWUgdG8gbG9hZCBpbnRvIHRoZSBTeXNUaWNrIEN1cnJlbnQgVmFsdWUgUmVnaXN0ZXIgd2hlbiB0aGUgY291bnRlciByZWFjaGVzIDAgKi8NCg0KLyoqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgU3lzVGlja19WQUwgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgU3lzVGlja19WQUxfQ1VSUkVOVCAgICAgICAgICAgICAgICAgKDB4MDBGRkZGRkZVKSAgICAgICAgICAgICAgICAgICAgICAvKiE8IEN1cnJlbnQgdmFsdWUgYXQgdGhlIHRpbWUgdGhlIHJlZ2lzdGVyIGlzIGFjY2Vzc2VkICovDQoNCi8qKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFN5c1RpY2tfQ0FMSUIgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKiovDQojZGVmaW5lIFN5c1RpY2tfQ0FMSUJfVEVOTVMgICAgICAgICAgICAgICAgICgweDAwRkZGRkZGVSkgICAgICAgICAgICAgICAgICAgICAgLyohPCBSZWxvYWQgdmFsdWUgdG8gdXNlIGZvciAxMG1zIHRpbWluZyAqLw0KI2RlZmluZSBTeXNUaWNrX0NBTElCX1NLRVcgICAgICAgICAgICAgICAgICAoMHg0MDAwMDAwMFUpICAgICAgICAgICAgICAgICAgICAgIC8qITwgQ2FsaWJyYXRpb24gdmFsdWUgaXMgbm90IGV4YWN0bHkgMTAgbXMgKi8NCiNkZWZpbmUgU3lzVGlja19DQUxJQl9OT1JFRiAgICAgICAgICAgICAgICAgKDB4ODAwMDAwMDBVKSAgICAgICAgICAgICAgICAgICAgICAvKiE8IFRoZSByZWZlcmVuY2UgY2xvY2sgaXMgbm90IHByb3ZpZGVkICovDQoNCi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovDQovKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLw0KLyogICAgICAgICAgICAgICBOZXN0ZWQgVmVjdG9yZWQgSW50ZXJydXB0IENvbnRyb2xsZXIgKE5WSUMpICAgICAgICAgICAgICAgICAgKi8NCi8qICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovDQovKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLw0KDQovKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgTlZJQ19JU0VSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBOVklDX0lTRVJfU0VURU5BX1BvcyAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBOVklDX0lTRVJfU0VURU5BX01zayAgICAgICAgICAgICAgICAoMHhGRkZGRkZGRlVMIDw8IE5WSUNfSVNFUl9TRVRFTkFfUG9zKSAvKiE8IDB4RkZGRkZGRkYgKi8NCiNkZWZpbmUgTlZJQ19JU0VSX1NFVEVOQSAgICAgICAgICAgICAgICAgICAgTlZJQ19JU0VSX1NFVEVOQV9Nc2sgICAgICAgICAgICAgICAvKiE8IEludGVycnVwdCBzZXQgZW5hYmxlIGJpdHMgKi8NCiNkZWZpbmUgTlZJQ19JU0VSX1NFVEVOQV8wICAgICAgICAgICAgICAgICAgKDB4MDAwMDAwMDFVTCA8PCBOVklDX0lTRVJfU0VURU5BX1BvcykgLyohPCAweDAwMDAwMDAxICovDQojZGVmaW5lIE5WSUNfSVNFUl9TRVRFTkFfMSAgICAgICAgICAgICAgICAgICgweDAwMDAwMDAyVUwgPDwgTlZJQ19JU0VSX1NFVEVOQV9Qb3MpIC8qITwgMHgwMDAwMDAwMiAqLw0KI2RlZmluZSBOVklDX0lTRVJfU0VURU5BXzIgICAgICAgICAgICAgICAgICAoMHgwMDAwMDAwNFVMIDw8IE5WSUNfSVNFUl9TRVRFTkFfUG9zKSAvKiE8IDB4MDAwMDAwMDQgKi8NCiNkZWZpbmUgTlZJQ19JU0VSX1NFVEVOQV8zICAgICAgICAgICAgICAgICAgKDB4MDAwMDAwMDhVTCA8PCBOVklDX0lTRVJfU0VURU5BX1BvcykgLyohPCAweDAwMDAwMDA4ICovDQojZGVmaW5lIE5WSUNfSVNFUl9TRVRFTkFfNCAgICAgICAgICAgICAgICAgICgweDAwMDAwMDEwVUwgPDwgTlZJQ19JU0VSX1NFVEVOQV9Qb3MpIC8qITwgMHgwMDAwMDAxMCAqLw0KI2RlZmluZSBOVklDX0lTRVJfU0VURU5BXzUgICAgICAgICAgICAgICAgICAoMHgwMDAwMDAyMFVMIDw8IE5WSUNfSVNFUl9TRVRFTkFfUG9zKSAvKiE8IDB4MDAwMDAwMjAgKi8NCiNkZWZpbmUgTlZJQ19JU0VSX1NFVEVOQV82ICAgICAgICAgICAgICAgICAgKDB4MDAwMDAwNDBVTCA8PCBOVklDX0lTRVJfU0VURU5BX1BvcykgLyohPCAweDAwMDAwMDQwICovDQojZGVmaW5lIE5WSUNfSVNFUl9TRVRFTkFfNyAgICAgICAgICAgICAgICAgICgweDAwMDAwMDgwVUwgPDwgTlZJQ19JU0VSX1NFVEVOQV9Qb3MpIC8qITwgMHgwMDAwMDA4MCAqLw0KI2RlZmluZSBOVklDX0lTRVJfU0VURU5BXzggICAgICAgICAgICAgICAgICAoMHgwMDAwMDEwMFVMIDw8IE5WSUNfSVNFUl9TRVRFTkFfUG9zKSAvKiE8IDB4MDAwMDAxMDAgKi8NCiNkZWZpbmUgTlZJQ19JU0VSX1NFVEVOQV85ICAgICAgICAgICAgICAgICAgKDB4MDAwMDAyMDBVTCA8PCBOVklDX0lTRVJfU0VURU5BX1BvcykgLyohPCAweDAwMDAwMjAwICovDQojZGVmaW5lIE5WSUNfSVNFUl9TRVRFTkFfMTAgICAgICAgICAgICAgICAgICgweDAwMDAwNDAwVUwgPDwgTlZJQ19JU0VSX1NFVEVOQV9Qb3MpIC8qITwgMHgwMDAwMDQwMCAqLw0KI2RlZmluZSBOVklDX0lTRVJfU0VURU5BXzExICAgICAgICAgICAgICAgICAoMHgwMDAwMDgwMFVMIDw8IE5WSUNfSVNFUl9TRVRFTkFfUG9zKSAvKiE8IDB4MDAwMDA4MDAgKi8NCiNkZWZpbmUgTlZJQ19JU0VSX1NFVEVOQV8xMiAgICAgICAgICAgICAgICAgKDB4MDAwMDEwMDBVTCA8PCBOVklDX0lTRVJfU0VURU5BX1BvcykgLyohPCAweDAwMDAxMDAwICovDQojZGVmaW5lIE5WSUNfSVNFUl9TRVRFTkFfMTMgICAgICAgICAgICAgICAgICgweDAwMDAyMDAwVUwgPDwgTlZJQ19JU0VSX1NFVEVOQV9Qb3MpIC8qITwgMHgwMDAwMjAwMCAqLw0KI2RlZmluZSBOVklDX0lTRVJfU0VURU5BXzE0ICAgICAgICAgICAgICAgICAoMHgwMDAwNDAwMFVMIDw8IE5WSUNfSVNFUl9TRVRFTkFfUG9zKSAvKiE8IDB4MDAwMDQwMDAgKi8NCiNkZWZpbmUgTlZJQ19JU0VSX1NFVEVOQV8xNSAgICAgICAgICAgICAgICAgKDB4MDAwMDgwMDBVTCA8PCBOVklDX0lTRVJfU0VURU5BX1BvcykgLyohPCAweDAwMDA4MDAwICovDQojZGVmaW5lIE5WSUNfSVNFUl9TRVRFTkFfMTYgICAgICAgICAgICAgICAgICgweDAwMDEwMDAwVUwgPDwgTlZJQ19JU0VSX1NFVEVOQV9Qb3MpIC8qITwgMHgwMDAxMDAwMCAqLw0KI2RlZmluZSBOVklDX0lTRVJfU0VURU5BXzE3ICAgICAgICAgICAgICAgICAoMHgwMDAyMDAwMFVMIDw8IE5WSUNfSVNFUl9TRVRFTkFfUG9zKSAvKiE8IDB4MDAwMjAwMDAgKi8NCiNkZWZpbmUgTlZJQ19JU0VSX1NFVEVOQV8xOCAgICAgICAgICAgICAgICAgKDB4MDAwNDAwMDBVTCA8PCBOVklDX0lTRVJfU0VURU5BX1BvcykgLyohPCAweDAwMDQwMDAwICovDQojZGVmaW5lIE5WSUNfSVNFUl9TRVRFTkFfMTkgICAgICAgICAgICAgICAgICgweDAwMDgwMDAwVUwgPDwgTlZJQ19JU0VSX1NFVEVOQV9Qb3MpIC8qITwgMHgwMDA4MDAwMCAqLw0KI2RlZmluZSBOVklDX0lTRVJfU0VURU5BXzIwICAgICAgICAgICAgICAgICAoMHgwMDEwMDAwMFVMIDw8IE5WSUNfSVNFUl9TRVRFTkFfUG9zKSAvKiE8IDB4MDAxMDAwMDAgKi8NCiNkZWZpbmUgTlZJQ19JU0VSX1NFVEVOQV8yMSAgICAgICAgICAgICAgICAgKDB4MDAyMDAwMDBVTCA8PCBOVklDX0lTRVJfU0VURU5BX1BvcykgLyohPCAweDAwMjAwMDAwICovDQojZGVmaW5lIE5WSUNfSVNFUl9TRVRFTkFfMjIgICAgICAgICAgICAgICAgICgweDAwNDAwMDAwVUwgPDwgTlZJQ19JU0VSX1NFVEVOQV9Qb3MpIC8qITwgMHgwMDQwMDAwMCAqLw0KI2RlZmluZSBOVklDX0lTRVJfU0VURU5BXzIzICAgICAgICAgICAgICAgICAoMHgwMDgwMDAwMFVMIDw8IE5WSUNfSVNFUl9TRVRFTkFfUG9zKSAvKiE8IDB4MDA4MDAwMDAgKi8NCiNkZWZpbmUgTlZJQ19JU0VSX1NFVEVOQV8yNCAgICAgICAgICAgICAgICAgKDB4MDEwMDAwMDBVTCA8PCBOVklDX0lTRVJfU0VURU5BX1BvcykgLyohPCAweDAxMDAwMDAwICovDQojZGVmaW5lIE5WSUNfSVNFUl9TRVRFTkFfMjUgICAgICAgICAgICAgICAgICgweDAyMDAwMDAwVUwgPDwgTlZJQ19JU0VSX1NFVEVOQV9Qb3MpIC8qITwgMHgwMjAwMDAwMCAqLw0KI2RlZmluZSBOVklDX0lTRVJfU0VURU5BXzI2ICAgICAgICAgICAgICAgICAoMHgwNDAwMDAwMFVMIDw8IE5WSUNfSVNFUl9TRVRFTkFfUG9zKSAvKiE8IDB4MDQwMDAwMDAgKi8NCiNkZWZpbmUgTlZJQ19JU0VSX1NFVEVOQV8yNyAgICAgICAgICAgICAgICAgKDB4MDgwMDAwMDBVTCA8PCBOVklDX0lTRVJfU0VURU5BX1BvcykgLyohPCAweDA4MDAwMDAwICovDQojZGVmaW5lIE5WSUNfSVNFUl9TRVRFTkFfMjggICAgICAgICAgICAgICAgICgweDEwMDAwMDAwVUwgPDwgTlZJQ19JU0VSX1NFVEVOQV9Qb3MpIC8qITwgMHgxMDAwMDAwMCAqLw0KI2RlZmluZSBOVklDX0lTRVJfU0VURU5BXzI5ICAgICAgICAgICAgICAgICAoMHgyMDAwMDAwMFVMIDw8IE5WSUNfSVNFUl9TRVRFTkFfUG9zKSAvKiE8IDB4MjAwMDAwMDAgKi8NCiNkZWZpbmUgTlZJQ19JU0VSX1NFVEVOQV8zMCAgICAgICAgICAgICAgICAgKDB4NDAwMDAwMDBVTCA8PCBOVklDX0lTRVJfU0VURU5BX1BvcykgLyohPCAweDQwMDAwMDAwICovDQojZGVmaW5lIE5WSUNfSVNFUl9TRVRFTkFfMzEgICAgICAgICAgICAgICAgICgweDgwMDAwMDAwVUwgPDwgTlZJQ19JU0VSX1NFVEVOQV9Qb3MpIC8qITwgMHg4MDAwMDAwMCAqLw0KDQovKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgTlZJQ19JQ0VSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBOVklDX0lDRVJfQ0xSRU5BX1BvcyAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBOVklDX0lDRVJfQ0xSRU5BX01zayAgICAgICAgICAgICAgICAoMHhGRkZGRkZGRlVMIDw8IE5WSUNfSUNFUl9DTFJFTkFfUG9zKSAvKiE8IDB4RkZGRkZGRkYgKi8NCiNkZWZpbmUgTlZJQ19JQ0VSX0NMUkVOQSAgICAgICAgICAgICAgICAgICAgTlZJQ19JQ0VSX0NMUkVOQV9Nc2sgICAgICAgICAgICAgICAvKiE8IEludGVycnVwdCBjbGVhci1lbmFibGUgYml0cyAqLw0KI2RlZmluZSBOVklDX0lDRVJfQ0xSRU5BXzAgICAgICAgICAgICAgICAgICAoMHgwMDAwMDAwMVVMIDw8IE5WSUNfSUNFUl9DTFJFTkFfUG9zKSAvKiE8IDB4MDAwMDAwMDEgKi8NCiNkZWZpbmUgTlZJQ19JQ0VSX0NMUkVOQV8xICAgICAgICAgICAgICAgICAgKDB4MDAwMDAwMDJVTCA8PCBOVklDX0lDRVJfQ0xSRU5BX1BvcykgLyohPCAweDAwMDAwMDAyICovDQojZGVmaW5lIE5WSUNfSUNFUl9DTFJFTkFfMiAgICAgICAgICAgICAgICAgICgweDAwMDAwMDA0VUwgPDwgTlZJQ19JQ0VSX0NMUkVOQV9Qb3MpIC8qITwgMHgwMDAwMDAwNCAqLw0KI2RlZmluZSBOVklDX0lDRVJfQ0xSRU5BXzMgICAgICAgICAgICAgICAgICAoMHgwMDAwMDAwOFVMIDw8IE5WSUNfSUNFUl9DTFJFTkFfUG9zKSAvKiE8IDB4MDAwMDAwMDggKi8NCiNkZWZpbmUgTlZJQ19JQ0VSX0NMUkVOQV80ICAgICAgICAgICAgICAgICAgKDB4MDAwMDAwMTBVTCA8PCBOVklDX0lDRVJfQ0xSRU5BX1BvcykgLyohPCAweDAwMDAwMDEwICovDQojZGVmaW5lIE5WSUNfSUNFUl9DTFJFTkFfNSAgICAgICAgICAgICAgICAgICgweDAwMDAwMDIwVUwgPDwgTlZJQ19JQ0VSX0NMUkVOQV9Qb3MpIC8qITwgMHgwMDAwMDAyMCAqLw0KI2RlZmluZSBOVklDX0lDRVJfQ0xSRU5BXzYgICAgICAgICAgICAgICAgICAoMHgwMDAwMDA0MFVMIDw8IE5WSUNfSUNFUl9DTFJFTkFfUG9zKSAvKiE8IDB4MDAwMDAwNDAgKi8NCiNkZWZpbmUgTlZJQ19JQ0VSX0NMUkVOQV83ICAgICAgICAgICAgICAgICAgKDB4MDAwMDAwODBVTCA8PCBOVklDX0lDRVJfQ0xSRU5BX1BvcykgLyohPCAweDAwMDAwMDgwICovDQojZGVmaW5lIE5WSUNfSUNFUl9DTFJFTkFfOCAgICAgICAgICAgICAgICAgICgweDAwMDAwMTAwVUwgPDwgTlZJQ19JQ0VSX0NMUkVOQV9Qb3MpIC8qITwgMHgwMDAwMDEwMCAqLw0KI2RlZmluZSBOVklDX0lDRVJfQ0xSRU5BXzkgICAgICAgICAgICAgICAgICAoMHgwMDAwMDIwMFVMIDw8IE5WSUNfSUNFUl9DTFJFTkFfUG9zKSAvKiE8IDB4MDAwMDAyMDAgKi8NCiNkZWZpbmUgTlZJQ19JQ0VSX0NMUkVOQV8xMCAgICAgICAgICAgICAgICAgKDB4MDAwMDA0MDBVTCA8PCBOVklDX0lDRVJfQ0xSRU5BX1BvcykgLyohPCAweDAwMDAwNDAwICovDQojZGVmaW5lIE5WSUNfSUNFUl9DTFJFTkFfMTEgICAgICAgICAgICAgICAgICgweDAwMDAwODAwVUwgPDwgTlZJQ19JQ0VSX0NMUkVOQV9Qb3MpIC8qITwgMHgwMDAwMDgwMCAqLw0KI2RlZmluZSBOVklDX0lDRVJfQ0xSRU5BXzEyICAgICAgICAgICAgICAgICAoMHgwMDAwMTAwMFVMIDw8IE5WSUNfSUNFUl9DTFJFTkFfUG9zKSAvKiE8IDB4MDAwMDEwMDAgKi8NCiNkZWZpbmUgTlZJQ19JQ0VSX0NMUkVOQV8xMyAgICAgICAgICAgICAgICAgKDB4MDAwMDIwMDBVTCA8PCBOVklDX0lDRVJfQ0xSRU5BX1BvcykgLyohPCAweDAwMDAyMDAwICovDQojZGVmaW5lIE5WSUNfSUNFUl9DTFJFTkFfMTQgICAgICAgICAgICAgICAgICgweDAwMDA0MDAwVUwgPDwgTlZJQ19JQ0VSX0NMUkVOQV9Qb3MpIC8qITwgMHgwMDAwNDAwMCAqLw0KI2RlZmluZSBOVklDX0lDRVJfQ0xSRU5BXzE1ICAgICAgICAgICAgICAgICAoMHgwMDAwODAwMFVMIDw8IE5WSUNfSUNFUl9DTFJFTkFfUG9zKSAvKiE8IDB4MDAwMDgwMDAgKi8NCiNkZWZpbmUgTlZJQ19JQ0VSX0NMUkVOQV8xNiAgICAgICAgICAgICAgICAgKDB4MDAwMTAwMDBVTCA8PCBOVklDX0lDRVJfQ0xSRU5BX1BvcykgLyohPCAweDAwMDEwMDAwICovDQojZGVmaW5lIE5WSUNfSUNFUl9DTFJFTkFfMTcgICAgICAgICAgICAgICAgICgweDAwMDIwMDAwVUwgPDwgTlZJQ19JQ0VSX0NMUkVOQV9Qb3MpIC8qITwgMHgwMDAyMDAwMCAqLw0KI2RlZmluZSBOVklDX0lDRVJfQ0xSRU5BXzE4ICAgICAgICAgICAgICAgICAoMHgwMDA0MDAwMFVMIDw8IE5WSUNfSUNFUl9DTFJFTkFfUG9zKSAvKiE8IDB4MDAwNDAwMDAgKi8NCiNkZWZpbmUgTlZJQ19JQ0VSX0NMUkVOQV8xOSAgICAgICAgICAgICAgICAgKDB4MDAwODAwMDBVTCA8PCBOVklDX0lDRVJfQ0xSRU5BX1BvcykgLyohPCAweDAwMDgwMDAwICovDQojZGVmaW5lIE5WSUNfSUNFUl9DTFJFTkFfMjAgICAgICAgICAgICAgICAgICgweDAwMTAwMDAwVUwgPDwgTlZJQ19JQ0VSX0NMUkVOQV9Qb3MpIC8qITwgMHgwMDEwMDAwMCAqLw0KI2RlZmluZSBOVklDX0lDRVJfQ0xSRU5BXzIxICAgICAgICAgICAgICAgICAoMHgwMDIwMDAwMFVMIDw8IE5WSUNfSUNFUl9DTFJFTkFfUG9zKSAvKiE8IDB4MDAyMDAwMDAgKi8NCiNkZWZpbmUgTlZJQ19JQ0VSX0NMUkVOQV8yMiAgICAgICAgICAgICAgICAgKDB4MDA0MDAwMDBVTCA8PCBOVklDX0lDRVJfQ0xSRU5BX1BvcykgLyohPCAweDAwNDAwMDAwICovDQojZGVmaW5lIE5WSUNfSUNFUl9DTFJFTkFfMjMgICAgICAgICAgICAgICAgICgweDAwODAwMDAwVUwgPDwgTlZJQ19JQ0VSX0NMUkVOQV9Qb3MpIC8qITwgMHgwMDgwMDAwMCAqLw0KI2RlZmluZSBOVklDX0lDRVJfQ0xSRU5BXzI0ICAgICAgICAgICAgICAgICAoMHgwMTAwMDAwMFVMIDw8IE5WSUNfSUNFUl9DTFJFTkFfUG9zKSAvKiE8IDB4MDEwMDAwMDAgKi8NCiNkZWZpbmUgTlZJQ19JQ0VSX0NMUkVOQV8yNSAgICAgICAgICAgICAgICAgKDB4MDIwMDAwMDBVTCA8PCBOVklDX0lDRVJfQ0xSRU5BX1BvcykgLyohPCAweDAyMDAwMDAwICovDQojZGVmaW5lIE5WSUNfSUNFUl9DTFJFTkFfMjYgICAgICAgICAgICAgICAgICgweDA0MDAwMDAwVUwgPDwgTlZJQ19JQ0VSX0NMUkVOQV9Qb3MpIC8qITwgMHgwNDAwMDAwMCAqLw0KI2RlZmluZSBOVklDX0lDRVJfQ0xSRU5BXzI3ICAgICAgICAgICAgICAgICAoMHgwODAwMDAwMFVMIDw8IE5WSUNfSUNFUl9DTFJFTkFfUG9zKSAvKiE8IDB4MDgwMDAwMDAgKi8NCiNkZWZpbmUgTlZJQ19JQ0VSX0NMUkVOQV8yOCAgICAgICAgICAgICAgICAgKDB4MTAwMDAwMDBVTCA8PCBOVklDX0lDRVJfQ0xSRU5BX1BvcykgLyohPCAweDEwMDAwMDAwICovDQojZGVmaW5lIE5WSUNfSUNFUl9DTFJFTkFfMjkgICAgICAgICAgICAgICAgICgweDIwMDAwMDAwVUwgPDwgTlZJQ19JQ0VSX0NMUkVOQV9Qb3MpIC8qITwgMHgyMDAwMDAwMCAqLw0KI2RlZmluZSBOVklDX0lDRVJfQ0xSRU5BXzMwICAgICAgICAgICAgICAgICAoMHg0MDAwMDAwMFVMIDw8IE5WSUNfSUNFUl9DTFJFTkFfUG9zKSAvKiE8IDB4NDAwMDAwMDAgKi8NCiNkZWZpbmUgTlZJQ19JQ0VSX0NMUkVOQV8zMSAgICAgICAgICAgICAgICAgKDB4ODAwMDAwMDBVTCA8PCBOVklDX0lDRVJfQ0xSRU5BX1BvcykgLyohPCAweDgwMDAwMDAwICovDQoNCi8qKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBOVklDX0lTUFIgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIE5WSUNfSVNQUl9TRVRQRU5EX1BvcyAgICAgICAgICAgICAgICgwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIE5WSUNfSVNQUl9TRVRQRU5EX01zayAgICAgICAgICAgICAgICgweEZGRkZGRkZGVUwgPDwgTlZJQ19JU1BSX1NFVFBFTkRfUG9zKSAvKiE8IDB4RkZGRkZGRkYgKi8NCiNkZWZpbmUgTlZJQ19JU1BSX1NFVFBFTkQgICAgICAgICAgICAgICAgICAgTlZJQ19JU1BSX1NFVFBFTkRfTXNrICAgICAgICAgICAgICAvKiE8IEludGVycnVwdCBzZXQtcGVuZGluZyBiaXRzICovDQojZGVmaW5lIE5WSUNfSVNQUl9TRVRQRU5EXzAgICAgICAgICAgICAgICAgICgweDAwMDAwMDAxVUwgPDwgTlZJQ19JU1BSX1NFVFBFTkRfUG9zKSAvKiE8IDB4MDAwMDAwMDEgKi8NCiNkZWZpbmUgTlZJQ19JU1BSX1NFVFBFTkRfMSAgICAgICAgICAgICAgICAgKDB4MDAwMDAwMDJVTCA8PCBOVklDX0lTUFJfU0VUUEVORF9Qb3MpIC8qITwgMHgwMDAwMDAwMiAqLw0KI2RlZmluZSBOVklDX0lTUFJfU0VUUEVORF8yICAgICAgICAgICAgICAgICAoMHgwMDAwMDAwNFVMIDw8IE5WSUNfSVNQUl9TRVRQRU5EX1BvcykgLyohPCAweDAwMDAwMDA0ICovDQojZGVmaW5lIE5WSUNfSVNQUl9TRVRQRU5EXzMgICAgICAgICAgICAgICAgICgweDAwMDAwMDA4VUwgPDwgTlZJQ19JU1BSX1NFVFBFTkRfUG9zKSAvKiE8IDB4MDAwMDAwMDggKi8NCiNkZWZpbmUgTlZJQ19JU1BSX1NFVFBFTkRfNCAgICAgICAgICAgICAgICAgKDB4MDAwMDAwMTBVTCA8PCBOVklDX0lTUFJfU0VUUEVORF9Qb3MpIC8qITwgMHgwMDAwMDAxMCAqLw0KI2RlZmluZSBOVklDX0lTUFJfU0VUUEVORF81ICAgICAgICAgICAgICAgICAoMHgwMDAwMDAyMFVMIDw8IE5WSUNfSVNQUl9TRVRQRU5EX1BvcykgLyohPCAweDAwMDAwMDIwICovDQojZGVmaW5lIE5WSUNfSVNQUl9TRVRQRU5EXzYgICAgICAgICAgICAgICAgICgweDAwMDAwMDQwVUwgPDwgTlZJQ19JU1BSX1NFVFBFTkRfUG9zKSAvKiE8IDB4MDAwMDAwNDAgKi8NCiNkZWZpbmUgTlZJQ19JU1BSX1NFVFBFTkRfNyAgICAgICAgICAgICAgICAgKDB4MDAwMDAwODBVTCA8PCBOVklDX0lTUFJfU0VUUEVORF9Qb3MpIC8qITwgMHgwMDAwMDA4MCAqLw0KI2RlZmluZSBOVklDX0lTUFJfU0VUUEVORF84ICAgICAgICAgICAgICAgICAoMHgwMDAwMDEwMFVMIDw8IE5WSUNfSVNQUl9TRVRQRU5EX1BvcykgLyohPCAweDAwMDAwMTAwICovDQojZGVmaW5lIE5WSUNfSVNQUl9TRVRQRU5EXzkgICAgICAgICAgICAgICAgICgweDAwMDAwMjAwVUwgPDwgTlZJQ19JU1BSX1NFVFBFTkRfUG9zKSAvKiE8IDB4MDAwMDAyMDAgKi8NCiNkZWZpbmUgTlZJQ19JU1BSX1NFVFBFTkRfMTAgICAgICAgICAgICAgICAgKDB4MDAwMDA0MDBVTCA8PCBOVklDX0lTUFJfU0VUUEVORF9Qb3MpIC8qITwgMHgwMDAwMDQwMCAqLw0KI2RlZmluZSBOVklDX0lTUFJfU0VUUEVORF8xMSAgICAgICAgICAgICAgICAoMHgwMDAwMDgwMFVMIDw8IE5WSUNfSVNQUl9TRVRQRU5EX1BvcykgLyohPCAweDAwMDAwODAwICovDQojZGVmaW5lIE5WSUNfSVNQUl9TRVRQRU5EXzEyICAgICAgICAgICAgICAgICgweDAwMDAxMDAwVUwgPDwgTlZJQ19JU1BSX1NFVFBFTkRfUG9zKSAvKiE8IDB4MDAwMDEwMDAgKi8NCiNkZWZpbmUgTlZJQ19JU1BSX1NFVFBFTkRfMTMgICAgICAgICAgICAgICAgKDB4MDAwMDIwMDBVTCA8PCBOVklDX0lTUFJfU0VUUEVORF9Qb3MpIC8qITwgMHgwMDAwMjAwMCAqLw0KI2RlZmluZSBOVklDX0lTUFJfU0VUUEVORF8xNCAgICAgICAgICAgICAgICAoMHgwMDAwNDAwMFVMIDw8IE5WSUNfSVNQUl9TRVRQRU5EX1BvcykgLyohPCAweDAwMDA0MDAwICovDQojZGVmaW5lIE5WSUNfSVNQUl9TRVRQRU5EXzE1ICAgICAgICAgICAgICAgICgweDAwMDA4MDAwVUwgPDwgTlZJQ19JU1BSX1NFVFBFTkRfUG9zKSAvKiE8IDB4MDAwMDgwMDAgKi8NCiNkZWZpbmUgTlZJQ19JU1BSX1NFVFBFTkRfMTYgICAgICAgICAgICAgICAgKDB4MDAwMTAwMDBVTCA8PCBOVklDX0lTUFJfU0VUUEVORF9Qb3MpIC8qITwgMHgwMDAxMDAwMCAqLw0KI2RlZmluZSBOVklDX0lTUFJfU0VUUEVORF8xNyAgICAgICAgICAgICAgICAoMHgwMDAyMDAwMFVMIDw8IE5WSUNfSVNQUl9TRVRQRU5EX1BvcykgLyohPCAweDAwMDIwMDAwICovDQojZGVmaW5lIE5WSUNfSVNQUl9TRVRQRU5EXzE4ICAgICAgICAgICAgICAgICgweDAwMDQwMDAwVUwgPDwgTlZJQ19JU1BSX1NFVFBFTkRfUG9zKSAvKiE8IDB4MDAwNDAwMDAgKi8NCiNkZWZpbmUgTlZJQ19JU1BSX1NFVFBFTkRfMTkgICAgICAgICAgICAgICAgKDB4MDAwODAwMDBVTCA8PCBOVklDX0lTUFJfU0VUUEVORF9Qb3MpIC8qITwgMHgwMDA4MDAwMCAqLw0KI2RlZmluZSBOVklDX0lTUFJfU0VUUEVORF8yMCAgICAgICAgICAgICAgICAoMHgwMDEwMDAwMFVMIDw8IE5WSUNfSVNQUl9TRVRQRU5EX1BvcykgLyohPCAweDAwMTAwMDAwICovDQojZGVmaW5lIE5WSUNfSVNQUl9TRVRQRU5EXzIxICAgICAgICAgICAgICAgICgweDAwMjAwMDAwVUwgPDwgTlZJQ19JU1BSX1NFVFBFTkRfUG9zKSAvKiE8IDB4MDAyMDAwMDAgKi8NCiNkZWZpbmUgTlZJQ19JU1BSX1NFVFBFTkRfMjIgICAgICAgICAgICAgICAgKDB4MDA0MDAwMDBVTCA8PCBOVklDX0lTUFJfU0VUUEVORF9Qb3MpIC8qITwgMHgwMDQwMDAwMCAqLw0KI2RlZmluZSBOVklDX0lTUFJfU0VUUEVORF8yMyAgICAgICAgICAgICAgICAoMHgwMDgwMDAwMFVMIDw8IE5WSUNfSVNQUl9TRVRQRU5EX1BvcykgLyohPCAweDAwODAwMDAwICovDQojZGVmaW5lIE5WSUNfSVNQUl9TRVRQRU5EXzI0ICAgICAgICAgICAgICAgICgweDAxMDAwMDAwVUwgPDwgTlZJQ19JU1BSX1NFVFBFTkRfUG9zKSAvKiE8IDB4MDEwMDAwMDAgKi8NCiNkZWZpbmUgTlZJQ19JU1BSX1NFVFBFTkRfMjUgICAgICAgICAgICAgICAgKDB4MDIwMDAwMDBVTCA8PCBOVklDX0lTUFJfU0VUUEVORF9Qb3MpIC8qITwgMHgwMjAwMDAwMCAqLw0KI2RlZmluZSBOVklDX0lTUFJfU0VUUEVORF8yNiAgICAgICAgICAgICAgICAoMHgwNDAwMDAwMFVMIDw8IE5WSUNfSVNQUl9TRVRQRU5EX1BvcykgLyohPCAweDA0MDAwMDAwICovDQojZGVmaW5lIE5WSUNfSVNQUl9TRVRQRU5EXzI3ICAgICAgICAgICAgICAgICgweDA4MDAwMDAwVUwgPDwgTlZJQ19JU1BSX1NFVFBFTkRfUG9zKSAvKiE8IDB4MDgwMDAwMDAgKi8NCiNkZWZpbmUgTlZJQ19JU1BSX1NFVFBFTkRfMjggICAgICAgICAgICAgICAgKDB4MTAwMDAwMDBVTCA8PCBOVklDX0lTUFJfU0VUUEVORF9Qb3MpIC8qITwgMHgxMDAwMDAwMCAqLw0KI2RlZmluZSBOVklDX0lTUFJfU0VUUEVORF8yOSAgICAgICAgICAgICAgICAoMHgyMDAwMDAwMFVMIDw8IE5WSUNfSVNQUl9TRVRQRU5EX1BvcykgLyohPCAweDIwMDAwMDAwICovDQojZGVmaW5lIE5WSUNfSVNQUl9TRVRQRU5EXzMwICAgICAgICAgICAgICAgICgweDQwMDAwMDAwVUwgPDwgTlZJQ19JU1BSX1NFVFBFTkRfUG9zKSAvKiE8IDB4NDAwMDAwMDAgKi8NCiNkZWZpbmUgTlZJQ19JU1BSX1NFVFBFTkRfMzEgICAgICAgICAgICAgICAgKDB4ODAwMDAwMDBVTCA8PCBOVklDX0lTUFJfU0VUUEVORF9Qb3MpIC8qITwgMHg4MDAwMDAwMCAqLw0KDQovKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgTlZJQ19JQ1BSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBOVklDX0lDUFJfQ0xSUEVORF9Qb3MgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBOVklDX0lDUFJfQ0xSUEVORF9Nc2sgICAgICAgICAgICAgICAoMHhGRkZGRkZGRlVMIDw8IE5WSUNfSUNQUl9DTFJQRU5EX1BvcykgLyohPCAweEZGRkZGRkZGICovDQojZGVmaW5lIE5WSUNfSUNQUl9DTFJQRU5EICAgICAgICAgICAgICAgICAgIE5WSUNfSUNQUl9DTFJQRU5EX01zayAgICAgICAgICAgICAgLyohPCBJbnRlcnJ1cHQgY2xlYXItcGVuZGluZyBiaXRzICovDQojZGVmaW5lIE5WSUNfSUNQUl9DTFJQRU5EXzAgICAgICAgICAgICAgICAgICgweDAwMDAwMDAxVUwgPDwgTlZJQ19JQ1BSX0NMUlBFTkRfUG9zKSAvKiE8IDB4MDAwMDAwMDEgKi8NCiNkZWZpbmUgTlZJQ19JQ1BSX0NMUlBFTkRfMSAgICAgICAgICAgICAgICAgKDB4MDAwMDAwMDJVTCA8PCBOVklDX0lDUFJfQ0xSUEVORF9Qb3MpIC8qITwgMHgwMDAwMDAwMiAqLw0KI2RlZmluZSBOVklDX0lDUFJfQ0xSUEVORF8yICAgICAgICAgICAgICAgICAoMHgwMDAwMDAwNFVMIDw8IE5WSUNfSUNQUl9DTFJQRU5EX1BvcykgLyohPCAweDAwMDAwMDA0ICovDQojZGVmaW5lIE5WSUNfSUNQUl9DTFJQRU5EXzMgICAgICAgICAgICAgICAgICgweDAwMDAwMDA4VUwgPDwgTlZJQ19JQ1BSX0NMUlBFTkRfUG9zKSAvKiE8IDB4MDAwMDAwMDggKi8NCiNkZWZpbmUgTlZJQ19JQ1BSX0NMUlBFTkRfNCAgICAgICAgICAgICAgICAgKDB4MDAwMDAwMTBVTCA8PCBOVklDX0lDUFJfQ0xSUEVORF9Qb3MpIC8qITwgMHgwMDAwMDAxMCAqLw0KI2RlZmluZSBOVklDX0lDUFJfQ0xSUEVORF81ICAgICAgICAgICAgICAgICAoMHgwMDAwMDAyMFVMIDw8IE5WSUNfSUNQUl9DTFJQRU5EX1BvcykgLyohPCAweDAwMDAwMDIwICovDQojZGVmaW5lIE5WSUNfSUNQUl9DTFJQRU5EXzYgICAgICAgICAgICAgICAgICgweDAwMDAwMDQwVUwgPDwgTlZJQ19JQ1BSX0NMUlBFTkRfUG9zKSAvKiE8IDB4MDAwMDAwNDAgKi8NCiNkZWZpbmUgTlZJQ19JQ1BSX0NMUlBFTkRfNyAgICAgICAgICAgICAgICAgKDB4MDAwMDAwODBVTCA8PCBOVklDX0lDUFJfQ0xSUEVORF9Qb3MpIC8qITwgMHgwMDAwMDA4MCAqLw0KI2RlZmluZSBOVklDX0lDUFJfQ0xSUEVORF84ICAgICAgICAgICAgICAgICAoMHgwMDAwMDEwMFVMIDw8IE5WSUNfSUNQUl9DTFJQRU5EX1BvcykgLyohPCAweDAwMDAwMTAwICovDQojZGVmaW5lIE5WSUNfSUNQUl9DTFJQRU5EXzkgICAgICAgICAgICAgICAgICgweDAwMDAwMjAwVUwgPDwgTlZJQ19JQ1BSX0NMUlBFTkRfUG9zKSAvKiE8IDB4MDAwMDAyMDAgKi8NCiNkZWZpbmUgTlZJQ19JQ1BSX0NMUlBFTkRfMTAgICAgICAgICAgICAgICAgKDB4MDAwMDA0MDBVTCA8PCBOVklDX0lDUFJfQ0xSUEVORF9Qb3MpIC8qITwgMHgwMDAwMDQwMCAqLw0KI2RlZmluZSBOVklDX0lDUFJfQ0xSUEVORF8xMSAgICAgICAgICAgICAgICAoMHgwMDAwMDgwMFVMIDw8IE5WSUNfSUNQUl9DTFJQRU5EX1BvcykgLyohPCAweDAwMDAwODAwICovDQojZGVmaW5lIE5WSUNfSUNQUl9DTFJQRU5EXzEyICAgICAgICAgICAgICAgICgweDAwMDAxMDAwVUwgPDwgTlZJQ19JQ1BSX0NMUlBFTkRfUG9zKSAvKiE8IDB4MDAwMDEwMDAgKi8NCiNkZWZpbmUgTlZJQ19JQ1BSX0NMUlBFTkRfMTMgICAgICAgICAgICAgICAgKDB4MDAwMDIwMDBVTCA8PCBOVklDX0lDUFJfQ0xSUEVORF9Qb3MpIC8qITwgMHgwMDAwMjAwMCAqLw0KI2RlZmluZSBOVklDX0lDUFJfQ0xSUEVORF8xNCAgICAgICAgICAgICAgICAoMHgwMDAwNDAwMFVMIDw8IE5WSUNfSUNQUl9DTFJQRU5EX1BvcykgLyohPCAweDAwMDA0MDAwICovDQojZGVmaW5lIE5WSUNfSUNQUl9DTFJQRU5EXzE1ICAgICAgICAgICAgICAgICgweDAwMDA4MDAwVUwgPDwgTlZJQ19JQ1BSX0NMUlBFTkRfUG9zKSAvKiE8IDB4MDAwMDgwMDAgKi8NCiNkZWZpbmUgTlZJQ19JQ1BSX0NMUlBFTkRfMTYgICAgICAgICAgICAgICAgKDB4MDAwMTAwMDBVTCA8PCBOVklDX0lDUFJfQ0xSUEVORF9Qb3MpIC8qITwgMHgwMDAxMDAwMCAqLw0KI2RlZmluZSBOVklDX0lDUFJfQ0xSUEVORF8xNyAgICAgICAgICAgICAgICAoMHgwMDAyMDAwMFVMIDw8IE5WSUNfSUNQUl9DTFJQRU5EX1BvcykgLyohPCAweDAwMDIwMDAwICovDQojZGVmaW5lIE5WSUNfSUNQUl9DTFJQRU5EXzE4ICAgICAgICAgICAgICAgICgweDAwMDQwMDAwVUwgPDwgTlZJQ19JQ1BSX0NMUlBFTkRfUG9zKSAvKiE8IDB4MDAwNDAwMDAgKi8NCiNkZWZpbmUgTlZJQ19JQ1BSX0NMUlBFTkRfMTkgICAgICAgICAgICAgICAgKDB4MDAwODAwMDBVTCA8PCBOVklDX0lDUFJfQ0xSUEVORF9Qb3MpIC8qITwgMHgwMDA4MDAwMCAqLw0KI2RlZmluZSBOVklDX0lDUFJfQ0xSUEVORF8yMCAgICAgICAgICAgICAgICAoMHgwMDEwMDAwMFVMIDw8IE5WSUNfSUNQUl9DTFJQRU5EX1BvcykgLyohPCAweDAwMTAwMDAwICovDQojZGVmaW5lIE5WSUNfSUNQUl9DTFJQRU5EXzIxICAgICAgICAgICAgICAgICgweDAwMjAwMDAwVUwgPDwgTlZJQ19JQ1BSX0NMUlBFTkRfUG9zKSAvKiE8IDB4MDAyMDAwMDAgKi8NCiNkZWZpbmUgTlZJQ19JQ1BSX0NMUlBFTkRfMjIgICAgICAgICAgICAgICAgKDB4MDA0MDAwMDBVTCA8PCBOVklDX0lDUFJfQ0xSUEVORF9Qb3MpIC8qITwgMHgwMDQwMDAwMCAqLw0KI2RlZmluZSBOVklDX0lDUFJfQ0xSUEVORF8yMyAgICAgICAgICAgICAgICAoMHgwMDgwMDAwMFVMIDw8IE5WSUNfSUNQUl9DTFJQRU5EX1BvcykgLyohPCAweDAwODAwMDAwICovDQojZGVmaW5lIE5WSUNfSUNQUl9DTFJQRU5EXzI0ICAgICAgICAgICAgICAgICgweDAxMDAwMDAwVUwgPDwgTlZJQ19JQ1BSX0NMUlBFTkRfUG9zKSAvKiE8IDB4MDEwMDAwMDAgKi8NCiNkZWZpbmUgTlZJQ19JQ1BSX0NMUlBFTkRfMjUgICAgICAgICAgICAgICAgKDB4MDIwMDAwMDBVTCA8PCBOVklDX0lDUFJfQ0xSUEVORF9Qb3MpIC8qITwgMHgwMjAwMDAwMCAqLw0KI2RlZmluZSBOVklDX0lDUFJfQ0xSUEVORF8yNiAgICAgICAgICAgICAgICAoMHgwNDAwMDAwMFVMIDw8IE5WSUNfSUNQUl9DTFJQRU5EX1BvcykgLyohPCAweDA0MDAwMDAwICovDQojZGVmaW5lIE5WSUNfSUNQUl9DTFJQRU5EXzI3ICAgICAgICAgICAgICAgICgweDA4MDAwMDAwVUwgPDwgTlZJQ19JQ1BSX0NMUlBFTkRfUG9zKSAvKiE8IDB4MDgwMDAwMDAgKi8NCiNkZWZpbmUgTlZJQ19JQ1BSX0NMUlBFTkRfMjggICAgICAgICAgICAgICAgKDB4MTAwMDAwMDBVTCA8PCBOVklDX0lDUFJfQ0xSUEVORF9Qb3MpIC8qITwgMHgxMDAwMDAwMCAqLw0KI2RlZmluZSBOVklDX0lDUFJfQ0xSUEVORF8yOSAgICAgICAgICAgICAgICAoMHgyMDAwMDAwMFVMIDw8IE5WSUNfSUNQUl9DTFJQRU5EX1BvcykgLyohPCAweDIwMDAwMDAwICovDQojZGVmaW5lIE5WSUNfSUNQUl9DTFJQRU5EXzMwICAgICAgICAgICAgICAgICgweDQwMDAwMDAwVUwgPDwgTlZJQ19JQ1BSX0NMUlBFTkRfUG9zKSAvKiE8IDB4NDAwMDAwMDAgKi8NCiNkZWZpbmUgTlZJQ19JQ1BSX0NMUlBFTkRfMzEgICAgICAgICAgICAgICAgKDB4ODAwMDAwMDBVTCA8PCBOVklDX0lDUFJfQ0xSUEVORF9Qb3MpIC8qITwgMHg4MDAwMDAwMCAqLw0KDQovKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgTlZJQ19JQUJSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBOVklDX0lBQlJfQUNUSVZFX1BvcyAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBOVklDX0lBQlJfQUNUSVZFX01zayAgICAgICAgICAgICAgICAoMHhGRkZGRkZGRlVMIDw8IE5WSUNfSUFCUl9BQ1RJVkVfUG9zKSAvKiE8IDB4RkZGRkZGRkYgKi8NCiNkZWZpbmUgTlZJQ19JQUJSX0FDVElWRSAgICAgICAgICAgICAgICAgICAgTlZJQ19JQUJSX0FDVElWRV9Nc2sgICAgICAgICAgICAgICAvKiE8IEludGVycnVwdCBhY3RpdmUgZmxhZ3MgKi8NCiNkZWZpbmUgTlZJQ19JQUJSX0FDVElWRV8wICAgICAgICAgICAgICAgICAgKDB4MDAwMDAwMDFVTCA8PCBOVklDX0lBQlJfQUNUSVZFX1BvcykgLyohPCAweDAwMDAwMDAxICovDQojZGVmaW5lIE5WSUNfSUFCUl9BQ1RJVkVfMSAgICAgICAgICAgICAgICAgICgweDAwMDAwMDAyVUwgPDwgTlZJQ19JQUJSX0FDVElWRV9Qb3MpIC8qITwgMHgwMDAwMDAwMiAqLw0KI2RlZmluZSBOVklDX0lBQlJfQUNUSVZFXzIgICAgICAgICAgICAgICAgICAoMHgwMDAwMDAwNFVMIDw8IE5WSUNfSUFCUl9BQ1RJVkVfUG9zKSAvKiE8IDB4MDAwMDAwMDQgKi8NCiNkZWZpbmUgTlZJQ19JQUJSX0FDVElWRV8zICAgICAgICAgICAgICAgICAgKDB4MDAwMDAwMDhVTCA8PCBOVklDX0lBQlJfQUNUSVZFX1BvcykgLyohPCAweDAwMDAwMDA4ICovDQojZGVmaW5lIE5WSUNfSUFCUl9BQ1RJVkVfNCAgICAgICAgICAgICAgICAgICgweDAwMDAwMDEwVUwgPDwgTlZJQ19JQUJSX0FDVElWRV9Qb3MpIC8qITwgMHgwMDAwMDAxMCAqLw0KI2RlZmluZSBOVklDX0lBQlJfQUNUSVZFXzUgICAgICAgICAgICAgICAgICAoMHgwMDAwMDAyMFVMIDw8IE5WSUNfSUFCUl9BQ1RJVkVfUG9zKSAvKiE8IDB4MDAwMDAwMjAgKi8NCiNkZWZpbmUgTlZJQ19JQUJSX0FDVElWRV82ICAgICAgICAgICAgICAgICAgKDB4MDAwMDAwNDBVTCA8PCBOVklDX0lBQlJfQUNUSVZFX1BvcykgLyohPCAweDAwMDAwMDQwICovDQojZGVmaW5lIE5WSUNfSUFCUl9BQ1RJVkVfNyAgICAgICAgICAgICAgICAgICgweDAwMDAwMDgwVUwgPDwgTlZJQ19JQUJSX0FDVElWRV9Qb3MpIC8qITwgMHgwMDAwMDA4MCAqLw0KI2RlZmluZSBOVklDX0lBQlJfQUNUSVZFXzggICAgICAgICAgICAgICAgICAoMHgwMDAwMDEwMFVMIDw8IE5WSUNfSUFCUl9BQ1RJVkVfUG9zKSAvKiE8IDB4MDAwMDAxMDAgKi8NCiNkZWZpbmUgTlZJQ19JQUJSX0FDVElWRV85ICAgICAgICAgICAgICAgICAgKDB4MDAwMDAyMDBVTCA8PCBOVklDX0lBQlJfQUNUSVZFX1BvcykgLyohPCAweDAwMDAwMjAwICovDQojZGVmaW5lIE5WSUNfSUFCUl9BQ1RJVkVfMTAgICAgICAgICAgICAgICAgICgweDAwMDAwNDAwVUwgPDwgTlZJQ19JQUJSX0FDVElWRV9Qb3MpIC8qITwgMHgwMDAwMDQwMCAqLw0KI2RlZmluZSBOVklDX0lBQlJfQUNUSVZFXzExICAgICAgICAgICAgICAgICAoMHgwMDAwMDgwMFVMIDw8IE5WSUNfSUFCUl9BQ1RJVkVfUG9zKSAvKiE8IDB4MDAwMDA4MDAgKi8NCiNkZWZpbmUgTlZJQ19JQUJSX0FDVElWRV8xMiAgICAgICAgICAgICAgICAgKDB4MDAwMDEwMDBVTCA8PCBOVklDX0lBQlJfQUNUSVZFX1BvcykgLyohPCAweDAwMDAxMDAwICovDQojZGVmaW5lIE5WSUNfSUFCUl9BQ1RJVkVfMTMgICAgICAgICAgICAgICAgICgweDAwMDAyMDAwVUwgPDwgTlZJQ19JQUJSX0FDVElWRV9Qb3MpIC8qITwgMHgwMDAwMjAwMCAqLw0KI2RlZmluZSBOVklDX0lBQlJfQUNUSVZFXzE0ICAgICAgICAgICAgICAgICAoMHgwMDAwNDAwMFVMIDw8IE5WSUNfSUFCUl9BQ1RJVkVfUG9zKSAvKiE8IDB4MDAwMDQwMDAgKi8NCiNkZWZpbmUgTlZJQ19JQUJSX0FDVElWRV8xNSAgICAgICAgICAgICAgICAgKDB4MDAwMDgwMDBVTCA8PCBOVklDX0lBQlJfQUNUSVZFX1BvcykgLyohPCAweDAwMDA4MDAwICovDQojZGVmaW5lIE5WSUNfSUFCUl9BQ1RJVkVfMTYgICAgICAgICAgICAgICAgICgweDAwMDEwMDAwVUwgPDwgTlZJQ19JQUJSX0FDVElWRV9Qb3MpIC8qITwgMHgwMDAxMDAwMCAqLw0KI2RlZmluZSBOVklDX0lBQlJfQUNUSVZFXzE3ICAgICAgICAgICAgICAgICAoMHgwMDAyMDAwMFVMIDw8IE5WSUNfSUFCUl9BQ1RJVkVfUG9zKSAvKiE8IDB4MDAwMjAwMDAgKi8NCiNkZWZpbmUgTlZJQ19JQUJSX0FDVElWRV8xOCAgICAgICAgICAgICAgICAgKDB4MDAwNDAwMDBVTCA8PCBOVklDX0lBQlJfQUNUSVZFX1BvcykgLyohPCAweDAwMDQwMDAwICovDQojZGVmaW5lIE5WSUNfSUFCUl9BQ1RJVkVfMTkgICAgICAgICAgICAgICAgICgweDAwMDgwMDAwVUwgPDwgTlZJQ19JQUJSX0FDVElWRV9Qb3MpIC8qITwgMHgwMDA4MDAwMCAqLw0KI2RlZmluZSBOVklDX0lBQlJfQUNUSVZFXzIwICAgICAgICAgICAgICAgICAoMHgwMDEwMDAwMFVMIDw8IE5WSUNfSUFCUl9BQ1RJVkVfUG9zKSAvKiE8IDB4MDAxMDAwMDAgKi8NCiNkZWZpbmUgTlZJQ19JQUJSX0FDVElWRV8yMSAgICAgICAgICAgICAgICAgKDB4MDAyMDAwMDBVTCA8PCBOVklDX0lBQlJfQUNUSVZFX1BvcykgLyohPCAweDAwMjAwMDAwICovDQojZGVmaW5lIE5WSUNfSUFCUl9BQ1RJVkVfMjIgICAgICAgICAgICAgICAgICgweDAwNDAwMDAwVUwgPDwgTlZJQ19JQUJSX0FDVElWRV9Qb3MpIC8qITwgMHgwMDQwMDAwMCAqLw0KI2RlZmluZSBOVklDX0lBQlJfQUNUSVZFXzIzICAgICAgICAgICAgICAgICAoMHgwMDgwMDAwMFVMIDw8IE5WSUNfSUFCUl9BQ1RJVkVfUG9zKSAvKiE8IDB4MDA4MDAwMDAgKi8NCiNkZWZpbmUgTlZJQ19JQUJSX0FDVElWRV8yNCAgICAgICAgICAgICAgICAgKDB4MDEwMDAwMDBVTCA8PCBOVklDX0lBQlJfQUNUSVZFX1BvcykgLyohPCAweDAxMDAwMDAwICovDQojZGVmaW5lIE5WSUNfSUFCUl9BQ1RJVkVfMjUgICAgICAgICAgICAgICAgICgweDAyMDAwMDAwVUwgPDwgTlZJQ19JQUJSX0FDVElWRV9Qb3MpIC8qITwgMHgwMjAwMDAwMCAqLw0KI2RlZmluZSBOVklDX0lBQlJfQUNUSVZFXzI2ICAgICAgICAgICAgICAgICAoMHgwNDAwMDAwMFVMIDw8IE5WSUNfSUFCUl9BQ1RJVkVfUG9zKSAvKiE8IDB4MDQwMDAwMDAgKi8NCiNkZWZpbmUgTlZJQ19JQUJSX0FDVElWRV8yNyAgICAgICAgICAgICAgICAgKDB4MDgwMDAwMDBVTCA8PCBOVklDX0lBQlJfQUNUSVZFX1BvcykgLyohPCAweDA4MDAwMDAwICovDQojZGVmaW5lIE5WSUNfSUFCUl9BQ1RJVkVfMjggICAgICAgICAgICAgICAgICgweDEwMDAwMDAwVUwgPDwgTlZJQ19JQUJSX0FDVElWRV9Qb3MpIC8qITwgMHgxMDAwMDAwMCAqLw0KI2RlZmluZSBOVklDX0lBQlJfQUNUSVZFXzI5ICAgICAgICAgICAgICAgICAoMHgyMDAwMDAwMFVMIDw8IE5WSUNfSUFCUl9BQ1RJVkVfUG9zKSAvKiE8IDB4MjAwMDAwMDAgKi8NCiNkZWZpbmUgTlZJQ19JQUJSX0FDVElWRV8zMCAgICAgICAgICAgICAgICAgKDB4NDAwMDAwMDBVTCA8PCBOVklDX0lBQlJfQUNUSVZFX1BvcykgLyohPCAweDQwMDAwMDAwICovDQojZGVmaW5lIE5WSUNfSUFCUl9BQ1RJVkVfMzEgICAgICAgICAgICAgICAgICgweDgwMDAwMDAwVUwgPDwgTlZJQ19JQUJSX0FDVElWRV9Qb3MpIC8qITwgMHg4MDAwMDAwMCAqLw0KDQovKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgTlZJQ19QUkkwIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBOVklDX0lQUjBfUFJJXzAgICAgICAgICAgICAgICAgICAgICAoMHgwMDAwMDBGRlUpICAgICAgICAgICAgICAgICAgICAgIC8qITwgUHJpb3JpdHkgb2YgaW50ZXJydXB0IDAgKi8NCiNkZWZpbmUgTlZJQ19JUFIwX1BSSV8xICAgICAgICAgICAgICAgICAgICAgKDB4MDAwMEZGMDBVKSAgICAgICAgICAgICAgICAgICAgICAvKiE8IFByaW9yaXR5IG9mIGludGVycnVwdCAxICovDQojZGVmaW5lIE5WSUNfSVBSMF9QUklfMiAgICAgICAgICAgICAgICAgICAgICgweDAwRkYwMDAwVSkgICAgICAgICAgICAgICAgICAgICAgLyohPCBQcmlvcml0eSBvZiBpbnRlcnJ1cHQgMiAqLw0KI2RlZmluZSBOVklDX0lQUjBfUFJJXzMgICAgICAgICAgICAgICAgICAgICAoMHhGRjAwMDAwMFUpICAgICAgICAgICAgICAgICAgICAgIC8qITwgUHJpb3JpdHkgb2YgaW50ZXJydXB0IDMgKi8NCg0KLyoqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIE5WSUNfUFJJMSByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgTlZJQ19JUFIxX1BSSV80ICAgICAgICAgICAgICAgICAgICAgKDB4MDAwMDAwRkZVKSAgICAgICAgICAgICAgICAgICAgICAvKiE8IFByaW9yaXR5IG9mIGludGVycnVwdCA0ICovDQojZGVmaW5lIE5WSUNfSVBSMV9QUklfNSAgICAgICAgICAgICAgICAgICAgICgweDAwMDBGRjAwVSkgICAgICAgICAgICAgICAgICAgICAgLyohPCBQcmlvcml0eSBvZiBpbnRlcnJ1cHQgNSAqLw0KI2RlZmluZSBOVklDX0lQUjFfUFJJXzYgICAgICAgICAgICAgICAgICAgICAoMHgwMEZGMDAwMFUpICAgICAgICAgICAgICAgICAgICAgIC8qITwgUHJpb3JpdHkgb2YgaW50ZXJydXB0IDYgKi8NCiNkZWZpbmUgTlZJQ19JUFIxX1BSSV83ICAgICAgICAgICAgICAgICAgICAgKDB4RkYwMDAwMDBVKSAgICAgICAgICAgICAgICAgICAgICAvKiE8IFByaW9yaXR5IG9mIGludGVycnVwdCA3ICovDQoNCi8qKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBOVklDX1BSSTIgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIE5WSUNfSVBSMl9QUklfOCAgICAgICAgICAgICAgICAgICAgICgweDAwMDAwMEZGVSkgICAgICAgICAgICAgICAgICAgICAgLyohPCBQcmlvcml0eSBvZiBpbnRlcnJ1cHQgOCAqLw0KI2RlZmluZSBOVklDX0lQUjJfUFJJXzkgICAgICAgICAgICAgICAgICAgICAoMHgwMDAwRkYwMFUpICAgICAgICAgICAgICAgICAgICAgIC8qITwgUHJpb3JpdHkgb2YgaW50ZXJydXB0IDkgKi8NCiNkZWZpbmUgTlZJQ19JUFIyX1BSSV8xMCAgICAgICAgICAgICAgICAgICAgKDB4MDBGRjAwMDBVKSAgICAgICAgICAgICAgICAgICAgICAvKiE8IFByaW9yaXR5IG9mIGludGVycnVwdCAxMCAqLw0KI2RlZmluZSBOVklDX0lQUjJfUFJJXzExICAgICAgICAgICAgICAgICAgICAoMHhGRjAwMDAwMFUpICAgICAgICAgICAgICAgICAgICAgIC8qITwgUHJpb3JpdHkgb2YgaW50ZXJydXB0IDExICovDQoNCi8qKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBOVklDX1BSSTMgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIE5WSUNfSVBSM19QUklfMTIgICAgICAgICAgICAgICAgICAgICgweDAwMDAwMEZGVSkgICAgICAgICAgICAgICAgICAgICAgLyohPCBQcmlvcml0eSBvZiBpbnRlcnJ1cHQgMTIgKi8NCiNkZWZpbmUgTlZJQ19JUFIzX1BSSV8xMyAgICAgICAgICAgICAgICAgICAgKDB4MDAwMEZGMDBVKSAgICAgICAgICAgICAgICAgICAgICAvKiE8IFByaW9yaXR5IG9mIGludGVycnVwdCAxMyAqLw0KI2RlZmluZSBOVklDX0lQUjNfUFJJXzE0ICAgICAgICAgICAgICAgICAgICAoMHgwMEZGMDAwMFUpICAgICAgICAgICAgICAgICAgICAgIC8qITwgUHJpb3JpdHkgb2YgaW50ZXJydXB0IDE0ICovDQojZGVmaW5lIE5WSUNfSVBSM19QUklfMTUgICAgICAgICAgICAgICAgICAgICgweEZGMDAwMDAwVSkgICAgICAgICAgICAgICAgICAgICAgLyohPCBQcmlvcml0eSBvZiBpbnRlcnJ1cHQgMTUgKi8NCg0KLyoqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIE5WSUNfUFJJNCByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgTlZJQ19JUFI0X1BSSV8xNiAgICAgICAgICAgICAgICAgICAgKDB4MDAwMDAwRkZVKSAgICAgICAgICAgICAgICAgICAgICAvKiE8IFByaW9yaXR5IG9mIGludGVycnVwdCAxNiAqLw0KI2RlZmluZSBOVklDX0lQUjRfUFJJXzE3ICAgICAgICAgICAgICAgICAgICAoMHgwMDAwRkYwMFUpICAgICAgICAgICAgICAgICAgICAgIC8qITwgUHJpb3JpdHkgb2YgaW50ZXJydXB0IDE3ICovDQojZGVmaW5lIE5WSUNfSVBSNF9QUklfMTggICAgICAgICAgICAgICAgICAgICgweDAwRkYwMDAwVSkgICAgICAgICAgICAgICAgICAgICAgLyohPCBQcmlvcml0eSBvZiBpbnRlcnJ1cHQgMTggKi8NCiNkZWZpbmUgTlZJQ19JUFI0X1BSSV8xOSAgICAgICAgICAgICAgICAgICAgKDB4RkYwMDAwMDBVKSAgICAgICAgICAgICAgICAgICAgICAvKiE8IFByaW9yaXR5IG9mIGludGVycnVwdCAxOSAqLw0KDQovKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgTlZJQ19QUkk1IHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBOVklDX0lQUjVfUFJJXzIwICAgICAgICAgICAgICAgICAgICAoMHgwMDAwMDBGRlUpICAgICAgICAgICAgICAgICAgICAgIC8qITwgUHJpb3JpdHkgb2YgaW50ZXJydXB0IDIwICovDQojZGVmaW5lIE5WSUNfSVBSNV9QUklfMjEgICAgICAgICAgICAgICAgICAgICgweDAwMDBGRjAwVSkgICAgICAgICAgICAgICAgICAgICAgLyohPCBQcmlvcml0eSBvZiBpbnRlcnJ1cHQgMjEgKi8NCiNkZWZpbmUgTlZJQ19JUFI1X1BSSV8yMiAgICAgICAgICAgICAgICAgICAgKDB4MDBGRjAwMDBVKSAgICAgICAgICAgICAgICAgICAgICAvKiE8IFByaW9yaXR5IG9mIGludGVycnVwdCAyMiAqLw0KI2RlZmluZSBOVklDX0lQUjVfUFJJXzIzICAgICAgICAgICAgICAgICAgICAoMHhGRjAwMDAwMFUpICAgICAgICAgICAgICAgICAgICAgIC8qITwgUHJpb3JpdHkgb2YgaW50ZXJydXB0IDIzICovDQoNCi8qKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBOVklDX1BSSTYgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIE5WSUNfSVBSNl9QUklfMjQgICAgICAgICAgICAgICAgICAgICgweDAwMDAwMEZGVSkgICAgICAgICAgICAgICAgICAgICAgLyohPCBQcmlvcml0eSBvZiBpbnRlcnJ1cHQgMjQgKi8NCiNkZWZpbmUgTlZJQ19JUFI2X1BSSV8yNSAgICAgICAgICAgICAgICAgICAgKDB4MDAwMEZGMDBVKSAgICAgICAgICAgICAgICAgICAgICAvKiE8IFByaW9yaXR5IG9mIGludGVycnVwdCAyNSAqLw0KI2RlZmluZSBOVklDX0lQUjZfUFJJXzI2ICAgICAgICAgICAgICAgICAgICAoMHgwMEZGMDAwMFUpICAgICAgICAgICAgICAgICAgICAgIC8qITwgUHJpb3JpdHkgb2YgaW50ZXJydXB0IDI2ICovDQojZGVmaW5lIE5WSUNfSVBSNl9QUklfMjcgICAgICAgICAgICAgICAgICAgICgweEZGMDAwMDAwVSkgICAgICAgICAgICAgICAgICAgICAgLyohPCBQcmlvcml0eSBvZiBpbnRlcnJ1cHQgMjcgKi8NCg0KLyoqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIE5WSUNfUFJJNyByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgTlZJQ19JUFI3X1BSSV8yOCAgICAgICAgICAgICAgICAgICAgKDB4MDAwMDAwRkZVKSAgICAgICAgICAgICAgICAgICAgICAvKiE8IFByaW9yaXR5IG9mIGludGVycnVwdCAyOCAqLw0KI2RlZmluZSBOVklDX0lQUjdfUFJJXzI5ICAgICAgICAgICAgICAgICAgICAoMHgwMDAwRkYwMFUpICAgICAgICAgICAgICAgICAgICAgIC8qITwgUHJpb3JpdHkgb2YgaW50ZXJydXB0IDI5ICovDQojZGVmaW5lIE5WSUNfSVBSN19QUklfMzAgICAgICAgICAgICAgICAgICAgICgweDAwRkYwMDAwVSkgICAgICAgICAgICAgICAgICAgICAgLyohPCBQcmlvcml0eSBvZiBpbnRlcnJ1cHQgMzAgKi8NCiNkZWZpbmUgTlZJQ19JUFI3X1BSSV8zMSAgICAgICAgICAgICAgICAgICAgKDB4RkYwMDAwMDBVKSAgICAgICAgICAgICAgICAgICAgICAvKiE8IFByaW9yaXR5IG9mIGludGVycnVwdCAzMSAqLw0KDQovKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgU0NCX0NQVUlEIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBTQ0JfQ1BVSURfUkVWSVNJT04gICAgICAgICAgICAgICAgICAoMHgwMDAwMDAwRlUpICAgICAgICAgICAgICAgICAgICAgIC8qITwgSW1wbGVtZW50YXRpb24gZGVmaW5lZCByZXZpc2lvbiBudW1iZXIgKi8NCiNkZWZpbmUgU0NCX0NQVUlEX1BBUlROTyAgICAgICAgICAgICAgICAgICAgKDB4MDAwMEZGRjBVKSAgICAgICAgICAgICAgICAgICAgICAvKiE8IE51bWJlciBvZiBwcm9jZXNzb3Igd2l0aGluIHNlcmllICovDQojZGVmaW5lIFNDQl9DUFVJRF9Db25zdGFudCAgICAgICAgICAgICAgICAgICgweDAwMEYwMDAwVSkgICAgICAgICAgICAgICAgICAgICAgLyohPCBSZWFkcyBhcyAweDBGICovDQojZGVmaW5lIFNDQl9DUFVJRF9WQVJJQU5UICAgICAgICAgICAgICAgICAgICgweDAwRjAwMDAwVSkgICAgICAgICAgICAgICAgICAgICAgLyohPCBJbXBsZW1lbnRhdGlvbiBkZWZpbmVkIHZhcmlhbnQgbnVtYmVyICovDQojZGVmaW5lIFNDQl9DUFVJRF9JTVBMRU1FTlRFUiAgICAgICAgICAgICAgICgweEZGMDAwMDAwVSkgICAgICAgICAgICAgICAgICAgICAgLyohPCBJbXBsZW1lbnRlciBjb2RlLiBBUk0gaXMgMHg0MSAqLw0KDQovKioqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFNDQl9JQ1NSIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBTQ0JfSUNTUl9WRUNUQUNUSVZFICAgICAgICAgICAgICAgICAoMHgwMDAwMDFGRlUpICAgICAgICAgICAgICAgICAgICAgIC8qITwgQWN0aXZlIElTUiBudW1iZXIgZmllbGQgKi8NCiNkZWZpbmUgU0NCX0lDU1JfUkVUVE9CQVNFICAgICAgICAgICAgICAgICAgKDB4MDAwMDA4MDBVKSAgICAgICAgICAgICAgICAgICAgICAvKiE8IEFsbCBhY3RpdmUgZXhjZXB0aW9ucyBtaW51cyB0aGUgSVBTUl9jdXJyZW50X2V4Y2VwdGlvbiB5aWVsZHMgdGhlIGVtcHR5IHNldCAqLw0KI2RlZmluZSBTQ0JfSUNTUl9WRUNUUEVORElORyAgICAgICAgICAgICAgICAoMHgwMDNGRjAwMFUpICAgICAgICAgICAgICAgICAgICAgIC8qITwgUGVuZGluZyBJU1IgbnVtYmVyIGZpZWxkICovDQojZGVmaW5lIFNDQl9JQ1NSX0lTUlBFTkRJTkcgICAgICAgICAgICAgICAgICgweDAwNDAwMDAwVSkgICAgICAgICAgICAgICAgICAgICAgLyohPCBJbnRlcnJ1cHQgcGVuZGluZyBmbGFnICovDQojZGVmaW5lIFNDQl9JQ1NSX0lTUlBSRUVNUFQgICAgICAgICAgICAgICAgICgweDAwODAwMDAwVSkgICAgICAgICAgICAgICAgICAgICAgLyohPCBJdCBpbmRpY2F0ZXMgdGhhdCBhIHBlbmRpbmcgaW50ZXJydXB0IGJlY29tZXMgYWN0aXZlIGluIHRoZSBuZXh0IHJ1bm5pbmcgY3ljbGUgKi8NCiNkZWZpbmUgU0NCX0lDU1JfUEVORFNUQ0xSICAgICAgICAgICAgICAgICAgKDB4MDIwMDAwMDBVKSAgICAgICAgICAgICAgICAgICAgICAvKiE8IENsZWFyIHBlbmRpbmcgU3lzVGljayBiaXQgKi8NCiNkZWZpbmUgU0NCX0lDU1JfUEVORFNUU0VUICAgICAgICAgICAgICAgICAgKDB4MDQwMDAwMDBVKSAgICAgICAgICAgICAgICAgICAgICAvKiE8IFNldCBwZW5kaW5nIFN5c1RpY2sgYml0ICovDQojZGVmaW5lIFNDQl9JQ1NSX1BFTkRTVkNMUiAgICAgICAgICAgICAgICAgICgweDA4MDAwMDAwVSkgICAgICAgICAgICAgICAgICAgICAgLyohPCBDbGVhciBwZW5kaW5nIHBlbmRTViBiaXQgKi8NCiNkZWZpbmUgU0NCX0lDU1JfUEVORFNWU0VUICAgICAgICAgICAgICAgICAgKDB4MTAwMDAwMDBVKSAgICAgICAgICAgICAgICAgICAgICAvKiE8IFNldCBwZW5kaW5nIHBlbmRTViBiaXQgKi8NCiNkZWZpbmUgU0NCX0lDU1JfTk1JUEVORFNFVCAgICAgICAgICAgICAgICAgKDB4ODAwMDAwMDBVKSAgICAgICAgICAgICAgICAgICAgICAvKiE8IFNldCBwZW5kaW5nIE5NSSBiaXQgKi8NCg0KLyoqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBTQ0JfVlRPUiByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgU0NCX1ZUT1JfVEJMT0ZGICAgICAgICAgICAgICAgICAgICAgKDB4MUZGRkZGODBVKSAgICAgICAgICAgICAgICAgICAgICAvKiE8IFZlY3RvciB0YWJsZSBiYXNlIG9mZnNldCBmaWVsZCAqLw0KI2RlZmluZSBTQ0JfVlRPUl9UQkxCQVNFICAgICAgICAgICAgICAgICAgICAoMHgyMDAwMDAwMFUpICAgICAgICAgICAgICAgICAgICAgIC8qITwgVGFibGUgYmFzZSBpbiBjb2RlKDApIG9yIFJBTSgxKSAqLw0KDQovKiE8KioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBTQ0JfQUlSQ1IgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIFNDQl9BSVJDUl9WRUNUUkVTRVQgICAgICAgICAgICAgICAgICgweDAwMDAwMDAxVSkgICAgICAgICAgICAgICAgICAgICAgLyohPCBTeXN0ZW0gUmVzZXQgYml0ICovDQojZGVmaW5lIFNDQl9BSVJDUl9WRUNUQ0xSQUNUSVZFICAgICAgICAgICAgICgweDAwMDAwMDAyVSkgICAgICAgICAgICAgICAgICAgICAgLyohPCBDbGVhciBhY3RpdmUgdmVjdG9yIGJpdCAqLw0KI2RlZmluZSBTQ0JfQUlSQ1JfU1lTUkVTRVRSRVEgICAgICAgICAgICAgICAoMHgwMDAwMDAwNFUpICAgICAgICAgICAgICAgICAgICAgIC8qITwgUmVxdWVzdHMgY2hpcCBjb250cm9sIGxvZ2ljIHRvIGdlbmVyYXRlIGEgcmVzZXQgKi8NCg0KI2RlZmluZSBTQ0JfQUlSQ1JfUFJJR1JPVVAgICAgICAgICAgICAgICAgICAoMHgwMDAwMDcwMFUpICAgICAgICAgICAgICAgICAgICAgIC8qITwgUFJJR1JPVVBbMjowXSBiaXRzIChQcmlvcml0eSBncm91cCkgKi8NCiNkZWZpbmUgU0NCX0FJUkNSX1BSSUdST1VQXzAgICAgICAgICAgICAgICAgKDB4MDAwMDAxMDBVKSAgICAgICAgICAgICAgICAgICAgICAvKiE8IEJpdCAwICovDQojZGVmaW5lIFNDQl9BSVJDUl9QUklHUk9VUF8xICAgICAgICAgICAgICAgICgweDAwMDAwMjAwVSkgICAgICAgICAgICAgICAgICAgICAgLyohPCBCaXQgMSAqLw0KI2RlZmluZSBTQ0JfQUlSQ1JfUFJJR1JPVVBfMiAgICAgICAgICAgICAgICAoMHgwMDAwMDQwMFUpICAgICAgICAgICAgICAgICAgICAgIC8qITwgQml0IDIgICovDQoNCi8qIHByb3JpdHkgZ3JvdXAgY29uZmlndXJhdGlvbiAqLw0KI2RlZmluZSBTQ0JfQUlSQ1JfUFJJR1JPVVAwICAgICAgICAgICAgICAgICAoMHgwMDAwMDAwMFUpICAgICAgICAgICAgICAgICAgICAgIC8qITwgUHJpb3JpdHkgZ3JvdXA9MCAoNyBiaXRzIG9mIHByZS1lbXB0aW9uIHByaW9yaXR5LCAxIGJpdCBvZiBzdWJwcmlvcml0eSkgKi8NCiNkZWZpbmUgU0NCX0FJUkNSX1BSSUdST1VQMSAgICAgICAgICAgICAgICAgKDB4MDAwMDAxMDBVKSAgICAgICAgICAgICAgICAgICAgICAvKiE8IFByaW9yaXR5IGdyb3VwPTEgKDYgYml0cyBvZiBwcmUtZW1wdGlvbiBwcmlvcml0eSwgMiBiaXRzIG9mIHN1YnByaW9yaXR5KSAqLw0KI2RlZmluZSBTQ0JfQUlSQ1JfUFJJR1JPVVAyICAgICAgICAgICAgICAgICAoMHgwMDAwMDIwMFUpICAgICAgICAgICAgICAgICAgICAgIC8qITwgUHJpb3JpdHkgZ3JvdXA9MiAoNSBiaXRzIG9mIHByZS1lbXB0aW9uIHByaW9yaXR5LCAzIGJpdHMgb2Ygc3VicHJpb3JpdHkpICovDQojZGVmaW5lIFNDQl9BSVJDUl9QUklHUk9VUDMgICAgICAgICAgICAgICAgICgweDAwMDAwMzAwVSkgICAgICAgICAgICAgICAgICAgICAgLyohPCBQcmlvcml0eSBncm91cD0zICg0IGJpdHMgb2YgcHJlLWVtcHRpb24gcHJpb3JpdHksIDQgYml0cyBvZiBzdWJwcmlvcml0eSkgKi8NCiNkZWZpbmUgU0NCX0FJUkNSX1BSSUdST1VQNCAgICAgICAgICAgICAgICAgKDB4MDAwMDA0MDBVKSAgICAgICAgICAgICAgICAgICAgICAvKiE8IFByaW9yaXR5IGdyb3VwPTQgKDMgYml0cyBvZiBwcmUtZW1wdGlvbiBwcmlvcml0eSwgNSBiaXRzIG9mIHN1YnByaW9yaXR5KSAqLw0KI2RlZmluZSBTQ0JfQUlSQ1JfUFJJR1JPVVA1ICAgICAgICAgICAgICAgICAoMHgwMDAwMDUwMFUpICAgICAgICAgICAgICAgICAgICAgIC8qITwgUHJpb3JpdHkgZ3JvdXA9NSAoMiBiaXRzIG9mIHByZS1lbXB0aW9uIHByaW9yaXR5LCA2IGJpdHMgb2Ygc3VicHJpb3JpdHkpICovDQojZGVmaW5lIFNDQl9BSVJDUl9QUklHUk9VUDYgICAgICAgICAgICAgICAgICgweDAwMDAwNjAwVSkgICAgICAgICAgICAgICAgICAgICAgLyohPCBQcmlvcml0eSBncm91cD02ICgxIGJpdCBvZiBwcmUtZW1wdGlvbiBwcmlvcml0eSwgNyBiaXRzIG9mIHN1YnByaW9yaXR5KSAqLw0KI2RlZmluZSBTQ0JfQUlSQ1JfUFJJR1JPVVA3ICAgICAgICAgICAgICAgICAoMHgwMDAwMDcwMFUpICAgICAgICAgICAgICAgICAgICAgIC8qITwgUHJpb3JpdHkgZ3JvdXA9NyAobm8gcHJlLWVtcHRpb24gcHJpb3JpdHksIDggYml0cyBvZiBzdWJwcmlvcml0eSkgKi8NCg0KI2RlZmluZSBTQ0JfQUlSQ1JfRU5ESUFORVNTICAgICAgICAgICAgICAgICAoMHgwMDAwODAwMFUpICAgICAgICAgICAgICAgICAgICAgIC8qITwgRGF0YSBlbmRpYW5uZXNzIGJpdCAqLw0KI2RlZmluZSBTQ0JfQUlSQ1JfVkVDVEtFWSAgICAgICAgICAgICAgICAgICAoMHhGRkZGMDAwMFUpICAgICAgICAgICAgICAgICAgICAgIC8qITwgUmVnaXN0ZXIga2V5IChWRUNUS0VZKSAtIFJlYWRzIGFzIDB4RkEwNSAoVkVDVEtFWVNUQVQpICovDQoNCi8qKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgU0NCX1NDUiByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIFNDQl9TQ1JfU0xFRVBPTkVYSVQgICAgICAgICAgICAgICAgICgweDAwMDAwMDAyVSkgICAgICAgICAgICAgICAgICAgICAgLyohPCBTbGVlcCBvbiBleGl0IGJpdCAqLw0KI2RlZmluZSBTQ0JfU0NSX1NMRUVQREVFUCAgICAgICAgICAgICAgICAgICAoMHgwMDAwMDAwNFUpICAgICAgICAgICAgICAgICAgICAgIC8qITwgU2xlZXAgZGVlcCBiaXQgKi8NCiNkZWZpbmUgU0NCX1NDUl9TRVZPTlBFTkQgICAgICAgICAgICAgICAgICAgKDB4MDAwMDAwMTBVKSAgICAgICAgICAgICAgICAgICAgICAvKiE8IFdha2UgdXAgZnJvbSBXRkUgKi8NCg0KLyoqKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgU0NCX0NDUiByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgU0NCX0NDUl9OT05CQVNFVEhSREVOQSAgICAgICAgICAgICAgKDB4MDAwMDAwMDFVKSAgICAgICAgICAgICAgICAgICAgICAvKiE8IFRocmVhZCBtb2RlIGNhbiBiZSBlbnRlcmVkIGZyb20gYW55IGxldmVsIGluIEhhbmRsZXIgbW9kZSBieSBjb250cm9sbGVkIHJldHVybiB2YWx1ZSAqLw0KI2RlZmluZSBTQ0JfQ0NSX1VTRVJTRVRNUEVORCAgICAgICAgICAgICAgICAoMHgwMDAwMDAwMlUpICAgICAgICAgICAgICAgICAgICAgIC8qITwgRW5hYmxlcyB1c2VyIGNvZGUgdG8gd3JpdGUgdGhlIFNvZnR3YXJlIFRyaWdnZXIgSW50ZXJydXB0IHJlZ2lzdGVyIHRvIHRyaWdnZXIgKHBlbmQpIGEgTWFpbiBleGNlcHRpb24gKi8NCiNkZWZpbmUgU0NCX0NDUl9VTkFMSUdOX1RSUCAgICAgICAgICAgICAgICAgKDB4MDAwMDAwMDhVKSAgICAgICAgICAgICAgICAgICAgICAvKiE8IFRyYXAgZm9yIHVuYWxpZ25lZCBhY2Nlc3MgKi8NCiNkZWZpbmUgU0NCX0NDUl9ESVZfMF9UUlAgICAgICAgICAgICAgICAgICAgKDB4MDAwMDAwMTBVKSAgICAgICAgICAgICAgICAgICAgICAvKiE8IFRyYXAgb24gRGl2aWRlIGJ5IDAgKi8NCiNkZWZpbmUgU0NCX0NDUl9CRkhGTk1JR04gICAgICAgICAgICAgICAgICAgKDB4MDAwMDAxMDBVKSAgICAgICAgICAgICAgICAgICAgICAvKiE8IEhhbmRsZXJzIHJ1bm5pbmcgYXQgcHJpb3JpdHkgLTEgYW5kIC0yICovDQojZGVmaW5lIFNDQl9DQ1JfU1RLQUxJR04gICAgICAgICAgICAgICAgICAgICgweDAwMDAwMjAwVSkgICAgICAgICAgICAgICAgICAgICAgLyohPCBPbiBleGNlcHRpb24gZW50cnksIHRoZSBTUCB1c2VkIHByaW9yIHRvIHRoZSBleGNlcHRpb24gaXMgYWRqdXN0ZWQgdG8gYmUgOC1ieXRlIGFsaWduZWQgKi8NCg0KLyoqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBTQ0JfU0hQUiByZWdpc3RlciAqKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgU0NCX1NIUFJfUFJJX05fUG9zICAgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgU0NCX1NIUFJfUFJJX05fTXNrICAgICAgICAgICAgICAgICAgKDB4RkZVTCA8PCBTQ0JfU0hQUl9QUklfTl9Qb3MpICAgICAgLyohPCAweDAwMDAwMEZGICovDQojZGVmaW5lIFNDQl9TSFBSX1BSSV9OICAgICAgICAgICAgICAgICAgICAgIFNDQl9TSFBSX1BSSV9OX01zayAgICAgICAgICAgICAgICAgLyohPCBQcmlvcml0eSBvZiBzeXN0ZW0gaGFuZGxlciA0LDgsIGFuZCAxMi4gTWVtIE1hbmFnZSwgcmVzZXJ2ZWQgYW5kIERlYnVnIE1vbml0b3IgKi8NCiNkZWZpbmUgU0NCX1NIUFJfUFJJX04xX1BvcyAgICAgICAgICAgICAgICAgKDhVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgU0NCX1NIUFJfUFJJX04xX01zayAgICAgICAgICAgICAgICAgKDB4RkZVTCA8PCBTQ0JfU0hQUl9QUklfTjFfUG9zKSAgICAgLyohPCAweDAwMDBGRjAwICovDQojZGVmaW5lIFNDQl9TSFBSX1BSSV9OMSAgICAgICAgICAgICAgICAgICAgIFNDQl9TSFBSX1BSSV9OMV9Nc2sgICAgICAgICAgICAgICAgLyohPCBQcmlvcml0eSBvZiBzeXN0ZW0gaGFuZGxlciA1LDksIGFuZCAxMy4gQnVzIEZhdWx0LCByZXNlcnZlZCBhbmQgcmVzZXJ2ZWQgKi8NCiNkZWZpbmUgU0NCX1NIUFJfUFJJX04yX1BvcyAgICAgICAgICAgICAgICAgKDE2VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgU0NCX1NIUFJfUFJJX04yX01zayAgICAgICAgICAgICAgICAgKDB4RkZVTCA8PCBTQ0JfU0hQUl9QUklfTjJfUG9zKSAgICAgLyohPCAweDAwRkYwMDAwICovDQojZGVmaW5lIFNDQl9TSFBSX1BSSV9OMiAgICAgICAgICAgICAgICAgICAgIFNDQl9TSFBSX1BSSV9OMl9Nc2sgICAgICAgICAgICAgICAgLyohPCBQcmlvcml0eSBvZiBzeXN0ZW0gaGFuZGxlciA2LDEwLCBhbmQgMTQuIFVzYWdlIEZhdWx0LCByZXNlcnZlZCBhbmQgUGVuZFNWICovDQojZGVmaW5lIFNDQl9TSFBSX1BSSV9OM19Qb3MgICAgICAgICAgICAgICAgICgyNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIFNDQl9TSFBSX1BSSV9OM19Nc2sgICAgICAgICAgICAgICAgICgweEZGVUwgPDwgU0NCX1NIUFJfUFJJX04zX1BvcykgICAgIC8qITwgMHhGRjAwMDAwMCAqLw0KI2RlZmluZSBTQ0JfU0hQUl9QUklfTjMgICAgICAgICAgICAgICAgICAgICBTQ0JfU0hQUl9QUklfTjNfTXNrICAgICAgICAgICAgICAgIC8qITwgUHJpb3JpdHkgb2Ygc3lzdGVtIGhhbmRsZXIgNywxMSwgYW5kIDE1LiBSZXNlcnZlZCwgU1ZDYWxsIGFuZCBTeXNUaWNrICovDQoNCi8qKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBTQ0JfU0hDU1IgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIFNDQl9TSENTUl9NRU1GQVVMVEFDVCAgICAgICAgICAgICAgICgweDAwMDAwMDAxVSkgICAgICAgICAgICAgICAgICAgICAgLyohPCBNZW1NYW5hZ2UgaXMgYWN0aXZlICovDQojZGVmaW5lIFNDQl9TSENTUl9CVVNGQVVMVEFDVCAgICAgICAgICAgICAgICgweDAwMDAwMDAyVSkgICAgICAgICAgICAgICAgICAgICAgLyohPCBCdXNGYXVsdCBpcyBhY3RpdmUgKi8NCiNkZWZpbmUgU0NCX1NIQ1NSX1VTR0ZBVUxUQUNUICAgICAgICAgICAgICAgKDB4MDAwMDAwMDhVKSAgICAgICAgICAgICAgICAgICAgICAvKiE8IFVzYWdlRmF1bHQgaXMgYWN0aXZlICovDQojZGVmaW5lIFNDQl9TSENTUl9TVkNBTExBQ1QgICAgICAgICAgICAgICAgICgweDAwMDAwMDgwVSkgICAgICAgICAgICAgICAgICAgICAgLyohPCBTVkNhbGwgaXMgYWN0aXZlICovDQojZGVmaW5lIFNDQl9TSENTUl9NT05JVE9SQUNUICAgICAgICAgICAgICAgICgweDAwMDAwMTAwVSkgICAgICAgICAgICAgICAgICAgICAgLyohPCBNb25pdG9yIGlzIGFjdGl2ZSAqLw0KI2RlZmluZSBTQ0JfU0hDU1JfUEVORFNWQUNUICAgICAgICAgICAgICAgICAoMHgwMDAwMDQwMFUpICAgICAgICAgICAgICAgICAgICAgIC8qITwgUGVuZFNWIGlzIGFjdGl2ZSAqLw0KI2RlZmluZSBTQ0JfU0hDU1JfU1lTVElDS0FDVCAgICAgICAgICAgICAgICAoMHgwMDAwMDgwMFUpICAgICAgICAgICAgICAgICAgICAgIC8qITwgU3lzVGljayBpcyBhY3RpdmUgKi8NCiNkZWZpbmUgU0NCX1NIQ1NSX1VTR0ZBVUxUUEVOREVEICAgICAgICAgICAgKDB4MDAwMDEwMDBVKSAgICAgICAgICAgICAgICAgICAgICAvKiE8IFVzYWdlIEZhdWx0IGlzIHBlbmRlZCAqLw0KI2RlZmluZSBTQ0JfU0hDU1JfTUVNRkFVTFRQRU5ERUQgICAgICAgICAgICAoMHgwMDAwMjAwMFUpICAgICAgICAgICAgICAgICAgICAgIC8qITwgTWVtTWFuYWdlIGlzIHBlbmRlZCAqLw0KI2RlZmluZSBTQ0JfU0hDU1JfQlVTRkFVTFRQRU5ERUQgICAgICAgICAgICAoMHgwMDAwNDAwMFUpICAgICAgICAgICAgICAgICAgICAgIC8qITwgQnVzIEZhdWx0IGlzIHBlbmRlZCAqLw0KI2RlZmluZSBTQ0JfU0hDU1JfU1ZDQUxMUEVOREVEICAgICAgICAgICAgICAoMHgwMDAwODAwMFUpICAgICAgICAgICAgICAgICAgICAgIC8qITwgU1ZDYWxsIGlzIHBlbmRlZCAqLw0KI2RlZmluZSBTQ0JfU0hDU1JfTUVNRkFVTFRFTkEgICAgICAgICAgICAgICAoMHgwMDAxMDAwMFUpICAgICAgICAgICAgICAgICAgICAgIC8qITwgTWVtTWFuYWdlIGVuYWJsZSAqLw0KI2RlZmluZSBTQ0JfU0hDU1JfQlVTRkFVTFRFTkEgICAgICAgICAgICAgICAoMHgwMDAyMDAwMFUpICAgICAgICAgICAgICAgICAgICAgIC8qITwgQnVzIEZhdWx0IGVuYWJsZSAqLw0KI2RlZmluZSBTQ0JfU0hDU1JfVVNHRkFVTFRFTkEgICAgICAgICAgICAgICAoMHgwMDA0MDAwMFUpICAgICAgICAgICAgICAgICAgICAgIC8qITwgVXNhZ2VGYXVsdCBlbmFibGUgKi8NCg0KLyoqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBTQ0JfQ0ZTUiByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKi8NCi8qITwgTUZTUiAqLw0KI2RlZmluZSBTQ0JfQ0ZTUl9JQUNDVklPTF9Qb3MgICAgICAgICAgICAgIChTQ0JfU0hDU1JfTUVNRkFVTFRBQ1RfUG9zICsgMFUpICAgIC8qITwgU0NCIENGU1IgKE1NRlNSKTogSUFDQ1ZJT0wgUG9zaXRpb24gKi8NCiNkZWZpbmUgU0NCX0NGU1JfSUFDQ1ZJT0xfTXNrICAgICAgICAgICAgICAoMVVMIC8qPDwgU0NCX0NGU1JfSUFDQ1ZJT0xfUG9zKi8pICAvKiE8IFNDQiBDRlNSIChNTUZTUik6IElBQ0NWSU9MIE1hc2sgKi8NCiNkZWZpbmUgU0NCX0NGU1JfSUFDQ1ZJT0wgICAgICAgICAgICAgICAgICAgU0NCX0NGU1JfSUFDQ1ZJT0xfTXNrICAgICAgICAgICAgICAvKiE8IEluc3RydWN0aW9uIGFjY2VzcyB2aW9sYXRpb24gKi8NCiNkZWZpbmUgU0NCX0NGU1JfREFDQ1ZJT0xfUG9zICAgICAgICAgICAgICAoU0NCX1NIQ1NSX01FTUZBVUxUQUNUX1BvcyArIDFVKSAgICAvKiE8IFNDQiBDRlNSIChNTUZTUik6IERBQ0NWSU9MIFBvc2l0aW9uICovDQojZGVmaW5lIFNDQl9DRlNSX0RBQ0NWSU9MX01zayAgICAgICAgICAgICAgKDFVTCA8PCBTQ0JfQ0ZTUl9EQUNDVklPTF9Qb3MpICAgICAgLyohPCBTQ0IgQ0ZTUiAoTU1GU1IpOiBEQUNDVklPTCBNYXNrICovDQojZGVmaW5lIFNDQl9DRlNSX0RBQ0NWSU9MICAgICAgICAgICAgICAgICAgIFNDQl9DRlNSX0RBQ0NWSU9MX01zayAgICAgICAgICAgICAgLyohPCBEYXRhIGFjY2VzcyB2aW9sYXRpb24gKi8NCiNkZWZpbmUgU0NCX0NGU1JfTVVOU1RLRVJSX1BvcyAgICAgICAgICAgICAoU0NCX1NIQ1NSX01FTUZBVUxUQUNUX1BvcyArIDNVKSAgICAvKiE8IFNDQiBDRlNSIChNTUZTUik6IE1VTlNUS0VSUiBQb3NpdGlvbiAqLw0KI2RlZmluZSBTQ0JfQ0ZTUl9NVU5TVEtFUlJfTXNrICAgICAgICAgICAgICgxVUwgPDwgU0NCX0NGU1JfTVVOU1RLRVJSX1BvcykgICAgIC8qITwgU0NCIENGU1IgKE1NRlNSKTogTVVOU1RLRVJSIE1hc2sgKi8NCiNkZWZpbmUgU0NCX0NGU1JfTVVOU1RLRVJSICAgICAgICAgICAgICAgICAgU0NCX0NGU1JfTVVOU1RLRVJSX01zayAgICAgICAgICAgICAvKiE8IFVuc3RhY2tpbmcgZXJyb3IgKi8NCiNkZWZpbmUgU0NCX0NGU1JfTVNUS0VSUl9Qb3MgICAgICAgICAgICAgICAoU0NCX1NIQ1NSX01FTUZBVUxUQUNUX1BvcyArIDRVKSAgICAvKiE8IFNDQiBDRlNSIChNTUZTUik6IE1TVEtFUlIgUG9zaXRpb24gKi8NCiNkZWZpbmUgU0NCX0NGU1JfTVNUS0VSUl9Nc2sgICAgICAgICAgICAgICAoMVVMIDw8IFNDQl9DRlNSX01TVEtFUlJfUG9zKSAgICAgICAvKiE8IFNDQiBDRlNSIChNTUZTUik6IE1TVEtFUlIgTWFzayAqLw0KI2RlZmluZSBTQ0JfQ0ZTUl9NU1RLRVJSICAgICAgICAgICAgICAgICAgICBTQ0JfQ0ZTUl9NU1RLRVJSX01zayAgICAgICAgICAgICAgIC8qITwgU3RhY2tpbmcgZXJyb3IgKi8NCiNkZWZpbmUgU0NCX0NGU1JfTU1BUlZBTElEX1BvcyAgICAgICAgICAgICAoU0NCX1NIQ1NSX01FTUZBVUxUQUNUX1BvcyArIDdVKSAgICAvKiE8IFNDQiBDRlNSIChNTUZTUik6IE1NQVJWQUxJRCBQb3NpdGlvbiAqLw0KI2RlZmluZSBTQ0JfQ0ZTUl9NTUFSVkFMSURfTXNrICAgICAgICAgICAgICgxVUwgPDwgU0NCX0NGU1JfTU1BUlZBTElEX1BvcykgICAgIC8qITwgU0NCIENGU1IgKE1NRlNSKTogTU1BUlZBTElEIE1hc2sgKi8NCiNkZWZpbmUgU0NCX0NGU1JfTU1BUlZBTElEICAgICAgICAgICAgICAgICAgU0NCX0NGU1JfTU1BUlZBTElEX01zayAgICAgICAgICAgICAvKiE8IE1lbW9yeSBNYW5hZ2UgQWRkcmVzcyBSZWdpc3RlciBhZGRyZXNzIHZhbGlkIGZsYWcgKi8NCi8qITwgQkZTUiAqLw0KI2RlZmluZSBTQ0JfQ0ZTUl9JQlVTRVJSX1BvcyAgICAgICAgICAgICAgKFNDQl9DRlNSX0JVU0ZBVUxUU1JfUG9zICsgMFUpICAgICAgIC8qITwgU0NCIENGU1IgKEJGU1IpOiBJQlVTRVJSIFBvc2l0aW9uICovDQojZGVmaW5lIFNDQl9DRlNSX0lCVVNFUlJfTXNrICAgICAgICAgICAgICAoMVVMIDw8IFNDQl9DRlNSX0lCVVNFUlJfUG9zKSAgICAgICAgLyohPCBTQ0IgQ0ZTUiAoQkZTUik6IElCVVNFUlIgTWFzayAqLw0KI2RlZmluZSBTQ0JfQ0ZTUl9JQlVTRVJSICAgICAgICAgICAgICAgICAgICBTQ0JfQ0ZTUl9JQlVTRVJSX01zayAgICAgICAgICAgICAgIC8qITwgSW5zdHJ1Y3Rpb24gYnVzIGVycm9yIGZsYWcgKi8NCiNkZWZpbmUgU0NCX0NGU1JfUFJFQ0lTRVJSX1BvcyAgICAgICAgICAgIChTQ0JfQ0ZTUl9CVVNGQVVMVFNSX1BvcyArIDFVKSAgICAgICAvKiE8IFNDQiBDRlNSIChCRlNSKTogUFJFQ0lTRVJSIFBvc2l0aW9uICovDQojZGVmaW5lIFNDQl9DRlNSX1BSRUNJU0VSUl9Nc2sgICAgICAgICAgICAoMVVMIDw8IFNDQl9DRlNSX1BSRUNJU0VSUl9Qb3MpICAgICAgLyohPCBTQ0IgQ0ZTUiAoQkZTUik6IFBSRUNJU0VSUiBNYXNrICovDQojZGVmaW5lIFNDQl9DRlNSX1BSRUNJU0VSUiAgICAgICAgICAgICAgICAgIFNDQl9DRlNSX1BSRUNJU0VSUl9Nc2sgICAgICAgICAgICAgLyohPCBQcmVjaXNlIGRhdGEgYnVzIGVycm9yICovDQojZGVmaW5lIFNDQl9DRlNSX0lNUFJFQ0lTRVJSX1BvcyAgICAgICAgICAoU0NCX0NGU1JfQlVTRkFVTFRTUl9Qb3MgKyAyVSkgICAgICAgLyohPCBTQ0IgQ0ZTUiAoQkZTUik6IElNUFJFQ0lTRVJSIFBvc2l0aW9uICovDQojZGVmaW5lIFNDQl9DRlNSX0lNUFJFQ0lTRVJSX01zayAgICAgICAgICAoMVVMIDw8IFNDQl9DRlNSX0lNUFJFQ0lTRVJSX1BvcykgICAgLyohPCBTQ0IgQ0ZTUiAoQkZTUik6IElNUFJFQ0lTRVJSIE1hc2sgKi8NCiNkZWZpbmUgU0NCX0NGU1JfSU1QUkVDSVNFUlIgICAgICAgICAgICAgICAgU0NCX0NGU1JfSU1QUkVDSVNFUlJfTXNrICAgICAgICAgICAvKiE8IEltcHJlY2lzZSBkYXRhIGJ1cyBlcnJvciAqLw0KI2RlZmluZSBTQ0JfQ0ZTUl9VTlNUS0VSUl9Qb3MgICAgICAgICAgICAgKFNDQl9DRlNSX0JVU0ZBVUxUU1JfUG9zICsgM1UpICAgICAgIC8qITwgU0NCIENGU1IgKEJGU1IpOiBVTlNUS0VSUiBQb3NpdGlvbiAqLw0KI2RlZmluZSBTQ0JfQ0ZTUl9VTlNUS0VSUl9Nc2sgICAgICAgICAgICAgKDFVTCA8PCBTQ0JfQ0ZTUl9VTlNUS0VSUl9Qb3MpICAgICAgIC8qITwgU0NCIENGU1IgKEJGU1IpOiBVTlNUS0VSUiBNYXNrICovDQojZGVmaW5lIFNDQl9DRlNSX1VOU1RLRVJSICAgICAgICAgICAgICAgICAgIFNDQl9DRlNSX1VOU1RLRVJSX01zayAgICAgICAgICAgICAgLyohPCBVbnN0YWNraW5nIGVycm9yICovDQojZGVmaW5lIFNDQl9DRlNSX1NUS0VSUl9Qb3MgICAgICAgICAgICAgICAoU0NCX0NGU1JfQlVTRkFVTFRTUl9Qb3MgKyA0VSkgICAgICAgLyohPCBTQ0IgQ0ZTUiAoQkZTUik6IFNUS0VSUiBQb3NpdGlvbiAqLw0KI2RlZmluZSBTQ0JfQ0ZTUl9TVEtFUlJfTXNrICAgICAgICAgICAgICAgKDFVTCA8PCBTQ0JfQ0ZTUl9TVEtFUlJfUG9zKSAgICAgICAgIC8qITwgU0NCIENGU1IgKEJGU1IpOiBTVEtFUlIgTWFzayAqLw0KI2RlZmluZSBTQ0JfQ0ZTUl9TVEtFUlIgICAgICAgICAgICAgICAgICAgICBTQ0JfQ0ZTUl9TVEtFUlJfTXNrICAgICAgICAgICAgICAgIC8qITwgU3RhY2tpbmcgZXJyb3IgKi8NCiNkZWZpbmUgU0NCX0NGU1JfQkZBUlZBTElEX1BvcyAgICAgICAgICAgIChTQ0JfQ0ZTUl9CVVNGQVVMVFNSX1BvcyArIDdVKSAgICAgICAvKiE8IFNDQiBDRlNSIChCRlNSKTogQkZBUlZBTElEIFBvc2l0aW9uICovDQojZGVmaW5lIFNDQl9DRlNSX0JGQVJWQUxJRF9Nc2sgICAgICAgICAgICAoMVVMIDw8IFNDQl9DRlNSX0JGQVJWQUxJRF9Qb3MpICAgICAgLyohPCBTQ0IgQ0ZTUiAoQkZTUik6IEJGQVJWQUxJRCBNYXNrICovDQojZGVmaW5lIFNDQl9DRlNSX0JGQVJWQUxJRCAgICAgICAgICAgICAgICAgIFNDQl9DRlNSX0JGQVJWQUxJRF9Nc2sgICAgICAgICAgICAgLyohPCBCdXMgRmF1bHQgQWRkcmVzcyBSZWdpc3RlciBhZGRyZXNzIHZhbGlkIGZsYWcgKi8NCi8qITwgVUZTUiAqLw0KI2RlZmluZSBTQ0JfQ0ZTUl9VTkRFRklOU1RSX1BvcyAgICAgICAgICAgKFNDQl9DRlNSX1VTR0ZBVUxUU1JfUG9zICsgMFUpICAgICAgIC8qITwgU0NCIENGU1IgKFVGU1IpOiBVTkRFRklOU1RSIFBvc2l0aW9uICovDQojZGVmaW5lIFNDQl9DRlNSX1VOREVGSU5TVFJfTXNrICAgICAgICAgICAoMVVMIDw8IFNDQl9DRlNSX1VOREVGSU5TVFJfUG9zKSAgICAgLyohPCBTQ0IgQ0ZTUiAoVUZTUik6IFVOREVGSU5TVFIgTWFzayAqLw0KI2RlZmluZSBTQ0JfQ0ZTUl9VTkRFRklOU1RSICAgICAgICAgICAgICAgICBTQ0JfQ0ZTUl9VTkRFRklOU1RSX01zayAgICAgICAgICAgIC8qITwgVGhlIHByb2Nlc3NvciBhdHRlbXB0IHRvIGV4Y2VjdXRlIGFuIHVuZGVmaW5lZCBpbnN0cnVjdGlvbiAqLw0KI2RlZmluZSBTQ0JfQ0ZTUl9JTlZTVEFURV9Qb3MgICAgICAgICAgICAgKFNDQl9DRlNSX1VTR0ZBVUxUU1JfUG9zICsgMVUpICAgICAgIC8qITwgU0NCIENGU1IgKFVGU1IpOiBJTlZTVEFURSBQb3NpdGlvbiAqLw0KI2RlZmluZSBTQ0JfQ0ZTUl9JTlZTVEFURV9Nc2sgICAgICAgICAgICAgKDFVTCA8PCBTQ0JfQ0ZTUl9JTlZTVEFURV9Qb3MpICAgICAgIC8qITwgU0NCIENGU1IgKFVGU1IpOiBJTlZTVEFURSBNYXNrICovDQojZGVmaW5lIFNDQl9DRlNSX0lOVlNUQVRFICAgICAgICAgICAgICAgICAgIFNDQl9DRlNSX0lOVlNUQVRFX01zayAgICAgICAgICAgICAgLyohPCBJbnZhbGlkIGNvbWJpbmF0aW9uIG9mIEVQU1IgYW5kIGluc3RydWN0aW9uICovDQojZGVmaW5lIFNDQl9DRlNSX0lOVlBDX1BvcyAgICAgICAgICAgICAgICAoU0NCX0NGU1JfVVNHRkFVTFRTUl9Qb3MgKyAyVSkgICAgICAgLyohPCBTQ0IgQ0ZTUiAoVUZTUik6IElOVlBDIFBvc2l0aW9uICovDQojZGVmaW5lIFNDQl9DRlNSX0lOVlBDX01zayAgICAgICAgICAgICAgICAoMVVMIDw8IFNDQl9DRlNSX0lOVlBDX1BvcykgICAgICAgICAgLyohPCBTQ0IgQ0ZTUiAoVUZTUik6IElOVlBDIE1hc2sgKi8NCiNkZWZpbmUgU0NCX0NGU1JfSU5WUEMgICAgICAgICAgICAgICAgICAgICAgU0NCX0NGU1JfSU5WUENfTXNrICAgICAgICAgICAgICAgICAvKiE8IEF0dGVtcHQgdG8gbG9hZCBFWENfUkVUVVJOIGludG8gcGMgaWxsZWdhbGx5ICovDQojZGVmaW5lIFNDQl9DRlNSX05PQ1BfUG9zICAgICAgICAgICAgICAgICAoU0NCX0NGU1JfVVNHRkFVTFRTUl9Qb3MgKyAzVSkgICAgICAgLyohPCBTQ0IgQ0ZTUiAoVUZTUik6IE5PQ1AgUG9zaXRpb24gKi8NCiNkZWZpbmUgU0NCX0NGU1JfTk9DUF9Nc2sgICAgICAgICAgICAgICAgICgxVUwgPDwgU0NCX0NGU1JfTk9DUF9Qb3MpICAgICAgICAgICAvKiE8IFNDQiBDRlNSIChVRlNSKTogTk9DUCBNYXNrICovDQojZGVmaW5lIFNDQl9DRlNSX05PQ1AgICAgICAgICAgICAgICAgICAgICAgIFNDQl9DRlNSX05PQ1BfTXNrICAgICAgICAgICAgICAgICAgLyohPCBBdHRlbXB0IHRvIHVzZSBhIGNvcHJvY2Vzc29yIGluc3RydWN0aW9uICovDQojZGVmaW5lIFNDQl9DRlNSX1VOQUxJR05FRF9Qb3MgICAgICAgICAgICAoU0NCX0NGU1JfVVNHRkFVTFRTUl9Qb3MgKyA4VSkgICAgICAgLyohPCBTQ0IgQ0ZTUiAoVUZTUik6IFVOQUxJR05FRCBQb3NpdGlvbiAqLw0KI2RlZmluZSBTQ0JfQ0ZTUl9VTkFMSUdORURfTXNrICAgICAgICAgICAgKDFVTCA8PCBTQ0JfQ0ZTUl9VTkFMSUdORURfUG9zKSAgICAgIC8qITwgU0NCIENGU1IgKFVGU1IpOiBVTkFMSUdORUQgTWFzayAqLw0KI2RlZmluZSBTQ0JfQ0ZTUl9VTkFMSUdORUQgICAgICAgICAgICAgICAgICBTQ0JfQ0ZTUl9VTkFMSUdORURfTXNrICAgICAgICAgICAgIC8qITwgRmF1bHQgb2NjdXJzIHdoZW4gdGhlcmUgaXMgYW4gYXR0ZW1wdCB0byBtYWtlIGFuIHVuYWxpZ25lZCBtZW1vcnkgYWNjZXNzICovDQojZGVmaW5lIFNDQl9DRlNSX0RJVkJZWkVST19Qb3MgICAgICAgICAgICAoU0NCX0NGU1JfVVNHRkFVTFRTUl9Qb3MgKyA5VSkgICAgICAgLyohPCBTQ0IgQ0ZTUiAoVUZTUik6IERJVkJZWkVSTyBQb3NpdGlvbiAqLw0KI2RlZmluZSBTQ0JfQ0ZTUl9ESVZCWVpFUk9fTXNrICAgICAgICAgICAgKDFVTCA8PCBTQ0JfQ0ZTUl9ESVZCWVpFUk9fUG9zKSAgICAgIC8qITwgU0NCIENGU1IgKFVGU1IpOiBESVZCWVpFUk8gTWFzayAqLw0KI2RlZmluZSBTQ0JfQ0ZTUl9ESVZCWVpFUk8gICAgICAgICAgICAgICAgICBTQ0JfQ0ZTUl9ESVZCWVpFUk9fTXNrICAgICAgICAgICAgIC8qITwgRmF1bHQgb2NjdXJzIHdoZW4gU0RJViBvciBESVYgaW5zdHJ1Y3Rpb24gaXMgdXNlZCB3aXRoIGEgZGl2aXNvciBvZiAwICovDQoNCi8qKioqKioqKioqKioqKioqKioqICBCaXQgZGVmaW5pdGlvbiBmb3IgU0NCX0hGU1IgcmVnaXN0ZXIgICoqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIFNDQl9IRlNSX1ZFQ1RUQkwgICAgICAgICAgICAgICAgICAgICgweDAwMDAwMDAyVSkgICAgICAgICAgICAgICAgICAgICAgLyohPCBGYXVsdCBvY2N1cmVzIGJlY2F1c2Ugb2YgdmVjdG9yIHRhYmxlIHJlYWQgb24gZXhjZXB0aW9uIHByb2Nlc3NpbmcgKi8NCiNkZWZpbmUgU0NCX0hGU1JfRk9SQ0VEICAgICAgICAgICAgICAgICAgICAgKDB4NDAwMDAwMDBVKSAgICAgICAgICAgICAgICAgICAgICAvKiE8IEhhcmQgRmF1bHQgYWN0aXZhdGVkIHdoZW4gYSBjb25maWd1cmFibGUgRmF1bHQgd2FzIHJlY2VpdmVkIGFuZCBjYW5ub3QgYWN0aXZhdGUgKi8NCiNkZWZpbmUgU0NCX0hGU1JfREVCVUdFVlQgICAgICAgICAgICAgICAgICAgKDB4ODAwMDAwMDBVKSAgICAgICAgICAgICAgICAgICAgICAvKiE8IEZhdWx0IHJlbGF0ZWQgdG8gZGVidWcgKi8NCg0KLyoqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBTQ0JfREZTUiByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgU0NCX0RGU1JfSEFMVEVEICAgICAgICAgICAgICAgICAgICAgKDB4MDAwMDAwMDFVKSAgICAgICAgICAgICAgICAgICAgICAvKiE8IEhhbHQgcmVxdWVzdCBmbGFnICovDQojZGVmaW5lIFNDQl9ERlNSX0JLUFQgICAgICAgICAgICAgICAgICAgICAgICgweDAwMDAwMDAyVSkgICAgICAgICAgICAgICAgICAgICAgLyohPCBCS1BUIGZsYWcgKi8NCiNkZWZpbmUgU0NCX0RGU1JfRFdUVFJBUCAgICAgICAgICAgICAgICAgICAgKDB4MDAwMDAwMDRVKSAgICAgICAgICAgICAgICAgICAgICAvKiE8IERhdGEgV2F0Y2hwb2ludCBhbmQgVHJhY2UgKERXVCkgZmxhZyAqLw0KI2RlZmluZSBTQ0JfREZTUl9WQ0FUQ0ggICAgICAgICAgICAgICAgICAgICAoMHgwMDAwMDAwOFUpICAgICAgICAgICAgICAgICAgICAgIC8qITwgVmVjdG9yIGNhdGNoIGZsYWcgKi8NCiNkZWZpbmUgU0NCX0RGU1JfRVhURVJOQUwgICAgICAgICAgICAgICAgICAgKDB4MDAwMDAwMTBVKSAgICAgICAgICAgICAgICAgICAgICAvKiE8IEV4dGVybmFsIGRlYnVnIHJlcXVlc3QgZmxhZyAqLw0KDQovKioqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFNDQl9NTUZBUiByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBTQ0JfTU1GQVJfQUREUkVTU19Qb3MgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBTQ0JfTU1GQVJfQUREUkVTU19Nc2sgICAgICAgICAgICAgICAoMHhGRkZGRkZGRlVMIDw8IFNDQl9NTUZBUl9BRERSRVNTX1BvcykgLyohPCAweEZGRkZGRkZGICovDQojZGVmaW5lIFNDQl9NTUZBUl9BRERSRVNTICAgICAgICAgICAgICAgICAgIFNDQl9NTUZBUl9BRERSRVNTX01zayAgICAgICAgICAgICAgLyohPCBNZW0gTWFuYWdlIGZhdWx0IGFkZHJlc3MgZmllbGQgKi8NCg0KLyoqKioqKioqKioqKioqKioqKiogIEJpdCBkZWZpbml0aW9uIGZvciBTQ0JfQkZBUiByZWdpc3RlciAgKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgU0NCX0JGQVJfQUREUkVTU19Qb3MgICAgICAgICAgICAgICAgKDBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgU0NCX0JGQVJfQUREUkVTU19Nc2sgICAgICAgICAgICAgICAgKDB4RkZGRkZGRkZVTCA8PCBTQ0JfQkZBUl9BRERSRVNTX1BvcykgLyohPCAweEZGRkZGRkZGICovDQojZGVmaW5lIFNDQl9CRkFSX0FERFJFU1MgICAgICAgICAgICAgICAgICAgIFNDQl9CRkFSX0FERFJFU1NfTXNrICAgICAgICAgICAgICAgLyohPCBCdXMgZmF1bHQgYWRkcmVzcyBmaWVsZCAqLw0KDQovKioqKioqKioqKioqKioqKioqKiAgQml0IGRlZmluaXRpb24gZm9yIFNDQl9hZnNyIHJlZ2lzdGVyICAqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBTQ0JfQUZTUl9JTVBERUZfUG9zICAgICAgICAgICAgICAgICAoMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBTQ0JfQUZTUl9JTVBERUZfTXNrICAgICAgICAgICAgICAgICAoMHhGRkZGRkZGRlVMIDw8IFNDQl9BRlNSX0lNUERFRl9Qb3MpIC8qITwgMHhGRkZGRkZGRiAqLw0KI2RlZmluZSBTQ0JfQUZTUl9JTVBERUYgICAgICAgICAgICAgICAgICAgICBTQ0JfQUZTUl9JTVBERUZfTXNrICAgICAgICAgICAgICAgIC8qITwgSW1wbGVtZW50YXRpb24gZGVmaW5lZCAqLw0KLyoqDQogICogQH0NCiAgKi8NCg0KIC8qKg0KICAqIEB9DQogICovIA0KLyoqIEBhZGR0b2dyb3VwIEV4cG9ydGVkX21hY3JvDQogICogQHsNCiAgKi8NCiAgICAgIA0KLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiBBREMgSW5zdGFuY2VzICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgSVNfQURDX0FMTF9JTlNUQU5DRShJTlNUQU5DRSkgKChJTlNUQU5DRSkgPT0gQURDMSkNCg0KI2RlZmluZSBJU19BRENfQ09NTU9OX0lOU1RBTkNFKElOU1RBTkNFKSAoKElOU1RBTkNFKSA9PSBBREMxX0NPTU1PTikNCg0KLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqIENPTVAgSW5zdGFuY2VzICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgSVNfQ09NUF9BTExfSU5TVEFOQ0UoSU5TVEFOQ0UpICgoKElOU1RBTkNFKSA9PSBDT01QMSkgfHwgXA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoSU5TVEFOQ0UpID09IENPTVAyKSkNCg0KI2RlZmluZSBJU19DT01QX0NPTU1PTl9JTlNUQU5DRShDT01NT05fSU5TVEFOQ0UpICgoQ09NTU9OX0lOU1RBTkNFKSA9PSBDT01QMTJfQ09NTU9OKQ0KDQovKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqIENSQyBJbnN0YW5jZXMgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBJU19DUkNfQUxMX0lOU1RBTkNFKElOU1RBTkNFKSAoKElOU1RBTkNFKSA9PSBDUkMpDQoNCi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKiogREFDIEluc3RhbmNlcyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIElTX0RBQ19BTExfSU5TVEFOQ0UoSU5TVEFOQ0UpICgoSU5TVEFOQ0UpID09IERBQykNCg0KLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiBETUEgSW5zdGFuY2VzICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgSVNfRE1BX0FMTF9JTlNUQU5DRShJTlNUQU5DRSkgKCgoSU5TVEFOQ0UpID09IERNQTFfQ2hhbm5lbDEpIHx8IFwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoSU5TVEFOQ0UpID09IERNQTFfQ2hhbm5lbDIpIHx8IFwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoSU5TVEFOQ0UpID09IERNQTFfQ2hhbm5lbDMpIHx8IFwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoSU5TVEFOQ0UpID09IERNQTFfQ2hhbm5lbDQpIHx8IFwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoSU5TVEFOQ0UpID09IERNQTFfQ2hhbm5lbDUpIHx8IFwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoSU5TVEFOQ0UpID09IERNQTFfQ2hhbm5lbDYpIHx8IFwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoSU5TVEFOQ0UpID09IERNQTFfQ2hhbm5lbDcpIHx8IFwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoSU5TVEFOQ0UpID09IERNQTJfQ2hhbm5lbDEpIHx8IFwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoSU5TVEFOQ0UpID09IERNQTJfQ2hhbm5lbDIpIHx8IFwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoSU5TVEFOQ0UpID09IERNQTJfQ2hhbm5lbDMpIHx8IFwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoSU5TVEFOQ0UpID09IERNQTJfQ2hhbm5lbDQpIHx8IFwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoSU5TVEFOQ0UpID09IERNQTJfQ2hhbm5lbDUpKQ0KDQovKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiBHUElPIEluc3RhbmNlcyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBJU19HUElPX0FMTF9JTlNUQU5DRShJTlNUQU5DRSkgKCgoSU5TVEFOQ0UpID09IEdQSU9BKSB8fCBcDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gR1BJT0IpIHx8IFwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBHUElPQykgfHwgXA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoSU5TVEFOQ0UpID09IEdQSU9EKSB8fCBcDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gR1BJT0UpIHx8IFwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBHUElPRikgfHwgXA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoSU5TVEFOQ0UpID09IEdQSU9HKSB8fCBcDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gR1BJT0gpKQ0KDQovKioqKioqKioqKioqKioqKioqKioqKioqKioqKiBHUElPIEFsdGVybmF0ZSBGdW5jdGlvbiBJbnN0YW5jZXMgKioqKioqKioqKioqKioqLw0KI2RlZmluZSBJU19HUElPX0FGX0lOU1RBTkNFKElOU1RBTkNFKSBJU19HUElPX0FMTF9JTlNUQU5DRShJTlNUQU5DRSkNCg0KLyoqKioqKioqKioqKioqKioqKioqKioqKioqKiogR1BJTyBMb2NrIEluc3RhbmNlcyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8NCi8qIE9uIEwxLCBhbGwgR1BJTyBCYW5rIHN1cHBvcnQgdGhlIExvY2sgbWVjaGFuaXNtICovDQojZGVmaW5lIElTX0dQSU9fTE9DS19JTlNUQU5DRShJTlNUQU5DRSkgSVNfR1BJT19BTExfSU5TVEFOQ0UoSU5TVEFOQ0UpDQoNCi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiBJMkMgSW5zdGFuY2VzICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIElTX0kyQ19BTExfSU5TVEFOQ0UoSU5TVEFOQ0UpICgoKElOU1RBTkNFKSA9PSBJMkMxKSB8fCBcDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBJMkMyKSkNCg0KLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiBTTUJVUyBJbnN0YW5jZXMgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgSVNfU01CVVNfQUxMX0lOU1RBTkNFKElOU1RBTkNFKSBJU19JMkNfQUxMX0lOU1RBTkNFKElOU1RBTkNFKQ0KDQovKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiogSTJTIEluc3RhbmNlcyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBJU19JMlNfQUxMX0lOU1RBTkNFKElOU1RBTkNFKSAoKChJTlNUQU5DRSkgPT0gU1BJMikgfHwgXA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gU1BJMykpDQovKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqIElXREcgSW5zdGFuY2VzICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBJU19JV0RHX0FMTF9JTlNUQU5DRShJTlNUQU5DRSkgICgoSU5TVEFOQ0UpID09IElXREcpDQoNCi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKiogT1BBTVAgSW5zdGFuY2VzICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIElTX09QQU1QX0FMTF9JTlNUQU5DRShJTlNUQU5DRSkgKCgoSU5TVEFOQ0UpID09IE9QQU1QMSkgfHwgXA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBPUEFNUDIpKQ0KDQojZGVmaW5lIElTX09QQU1QX0NPTU1PTl9JTlNUQU5DRShDT01NT05fSU5TVEFOQ0UpICgoQ09NTU9OX0lOU1RBTkNFKSA9PSBPUEFNUDEyX0NPTU1PTikNCg0KLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiBSVEMgSW5zdGFuY2VzICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgSVNfUlRDX0FMTF9JTlNUQU5DRShJTlNUQU5DRSkgICgoSU5TVEFOQ0UpID09IFJUQykNCg0KLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqIFNQSSBJbnN0YW5jZXMgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgSVNfU1BJX0FMTF9JTlNUQU5DRShJTlNUQU5DRSkgKCgoSU5TVEFOQ0UpID09IFNQSTEpIHx8IFwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoSU5TVEFOQ0UpID09IFNQSTIpIHx8IFwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoSU5TVEFOQ0UpID09IFNQSTMpKQ0KDQovKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqIFRJTSBJbnN0YW5jZXMgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLyANCiNkZWZpbmUgSVNfVElNX0lOU1RBTkNFKElOU1RBTkNFKSAoKChJTlNUQU5DRSkgPT0gVElNMikgICAgfHwgXA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBUSU0zKSAgICB8fCBcDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoSU5TVEFOQ0UpID09IFRJTTQpICAgIHx8IFwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gVElNNSkgICAgfHwgXA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBUSU02KSAgICB8fCBcDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoSU5TVEFOQ0UpID09IFRJTTcpICAgIHx8IFwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gVElNOSkgICAgfHwgXA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBUSU0xMCkgICB8fCBcDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoSU5TVEFOQ0UpID09IFRJTTExKSkNCg0KI2RlZmluZSBJU19USU1fQ0MxX0lOU1RBTkNFKElOU1RBTkNFKSAoKChJTlNUQU5DRSkgPT0gVElNMikgIHx8IFwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoSU5TVEFOQ0UpID09IFRJTTMpICB8fCBcDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBUSU00KSAgfHwgXA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gVElNNSkgIHx8IFwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoSU5TVEFOQ0UpID09IFRJTTkpICB8fCBcDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBUSU0xMCkgfHwgXA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gVElNMTEpKQ0KDQojZGVmaW5lIElTX1RJTV9DQzJfSU5TVEFOQ0UoSU5TVEFOQ0UpICgoKElOU1RBTkNFKSA9PSBUSU0yKSAgfHwgXA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gVElNMykgIHx8IFwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoSU5TVEFOQ0UpID09IFRJTTQpICB8fCBcDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBUSU01KSAgfHwgXA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gVElNOSkpDQoNCiNkZWZpbmUgSVNfVElNX0NDM19JTlNUQU5DRShJTlNUQU5DRSkgKCgoSU5TVEFOQ0UpID09IFRJTTIpICB8fCBcDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBUSU0zKSAgfHwgXA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gVElNNCkgIHx8IFwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoSU5TVEFOQ0UpID09IFRJTTUpKQ0KDQojZGVmaW5lIElTX1RJTV9DQzRfSU5TVEFOQ0UoSU5TVEFOQ0UpICgoKElOU1RBTkNFKSA9PSBUSU0yKSAgfHwgXA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gVElNMykgIHx8IFwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoSU5TVEFOQ0UpID09IFRJTTQpICB8fCBcDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBUSU01KSkNCg0KI2RlZmluZSBJU19USU1fQ0xPQ0tTT1VSQ0VfRVRSTU9ERTFfSU5TVEFOQ0UoSU5TVEFOQ0UpICgoKElOU1RBTkNFKSA9PSBUSU0yKSAgfHwgXA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBUSU0zKSAgfHwgXA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBUSU00KSAgfHwgXA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBUSU01KSAgfHwgXA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBUSU05KSkNCg0KI2RlZmluZSBJU19USU1fQ0xPQ0tTT1VSQ0VfRVRSTU9ERTJfSU5TVEFOQ0UoSU5TVEFOQ0UpICgoKElOU1RBTkNFKSA9PSBUSU0yKSAgfHwgXA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBUSU0zKSAgfHwgXA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBUSU00KSAgfHwgXA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBUSU01KSAgfHwgXA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBUSU05KSAgfHwgXA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBUSU0xMCkgfHwgXA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBUSU0xMSkpDQoNCiNkZWZpbmUgSVNfVElNX0NMT0NLU09VUkNFX1RJWF9JTlNUQU5DRShJTlNUQU5DRSkgKCgoSU5TVEFOQ0UpID09IFRJTTIpICB8fCBcDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBUSU0zKSAgfHwgXA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gVElNNCkgIHx8IFwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoSU5TVEFOQ0UpID09IFRJTTUpICB8fCBcDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBUSU05KSkNCg0KI2RlZmluZSBJU19USU1fQ0xPQ0tTT1VSQ0VfSVRSWF9JTlNUQU5DRShJTlNUQU5DRSkgKCgoSU5TVEFOQ0UpID09IFRJTTIpICB8fCBcDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gVElNMykgIHx8IFwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBUSU00KSAgfHwgXA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoSU5TVEFOQ0UpID09IFRJTTUpICB8fCBcDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gVElNOSkpDQoNCiNkZWZpbmUgSVNfVElNX09DWFJFRl9DTEVBUl9JTlNUQU5DRShJTlNUQU5DRSkgKCgoSU5TVEFOQ0UpID09IFRJTTIpICB8fCBcDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBUSU0zKSAgfHwgXA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gVElNNCkpDQoNCiNkZWZpbmUgSVNfVElNX1hPUl9JTlNUQU5DRShJTlNUQU5DRSkgKCgoSU5TVEFOQ0UpID09IFRJTTIpICB8fCBcDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBUSU0zKSAgfHwgXA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gVElNNCkgIHx8IFwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoSU5TVEFOQ0UpID09IFRJTTUpKQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQojZGVmaW5lIElTX1RJTV9FVFJfSU5TVEFOQ0UoSU5TVEFOQ0UpICgoKElOU1RBTkNFKSA9PSBUSU0yKSAgfHwgXA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gVElNMykgIHx8IFwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoSU5TVEFOQ0UpID09IFRJTTQpICB8fCBcDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBUSU01KSAgfHwgXA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gVElNOSkpDQoNCg0KI2RlZmluZSBJU19USU1fTUFTVEVSX0lOU1RBTkNFKElOU1RBTkNFKSAoKChJTlNUQU5DRSkgPT0gVElNMikgIHx8IFwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoSU5TVEFOQ0UpID09IFRJTTMpICB8fCBcDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBUSU00KSAgfHwgXA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gVElNNSkgIHx8IFwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoSU5TVEFOQ0UpID09IFRJTTkpKQ0KDQojZGVmaW5lIElTX1RJTV9TWU5DSFJPX0lOU1RBTkNFKElOU1RBTkNFKSAgSVNfVElNX01BU1RFUl9JTlNUQU5DRShJTlNUQU5DRSkNCg0KI2RlZmluZSBJU19USU1fU0xBVkVfSU5TVEFOQ0UoSU5TVEFOQ0UpICgoKElOU1RBTkNFKSA9PSBUSU0yKSAgfHwgXA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBUSU0zKSAgfHwgXA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBUSU00KSAgfHwgXA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBUSU05KSkNCg0KI2RlZmluZSBJU19USU1fMzJCX0NPVU5URVJfSU5TVEFOQ0UoSU5TVEFOQ0UpICgoSU5TVEFOQ0UpID09IFRJTTUpDQoNCiNkZWZpbmUgSVNfVElNX0RNQUJVUlNUX0lOU1RBTkNFKElOU1RBTkNFKSAoKChJTlNUQU5DRSkgPT0gVElNMikgIHx8IFwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gVElNMykgIHx8IFwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gVElNNCkgIHx8IFwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gVElNNSkpDQoNCiNkZWZpbmUgSVNfVElNX0NDWF9JTlNUQU5DRShJTlNUQU5DRSwgQ0hBTk5FTCkgXA0KICAgICgoKChJTlNUQU5DRSkgPT0gVElNMikgJiYgICAgICAgICAgICAgICAgICAgXA0KICAgICAoKChDSEFOTkVMKSA9PSBUSU1fQ0hBTk5FTF8xKSB8fCAgICAgICAgICBcDQogICAgICAoKENIQU5ORUwpID09IFRJTV9DSEFOTkVMXzIpIHx8ICAgICAgICAgIFwNCiAgICAgICgoQ0hBTk5FTCkgPT0gVElNX0NIQU5ORUxfMykgfHwgICAgICAgICAgXA0KICAgICAgKChDSEFOTkVMKSA9PSBUSU1fQ0hBTk5FTF80KSkpICAgICAgICAgICBcDQogICAgfHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwNCiAgICAoKChJTlNUQU5DRSkgPT0gVElNMykgJiYgICAgICAgICAgICAgICAgICAgXA0KICAgICAoKChDSEFOTkVMKSA9PSBUSU1fQ0hBTk5FTF8xKSB8fCAgICAgICAgICBcDQogICAgICAoKENIQU5ORUwpID09IFRJTV9DSEFOTkVMXzIpIHx8ICAgICAgICAgIFwNCiAgICAgICgoQ0hBTk5FTCkgPT0gVElNX0NIQU5ORUxfMykgfHwgICAgICAgICAgXA0KICAgICAgKChDSEFOTkVMKSA9PSBUSU1fQ0hBTk5FTF80KSkpICAgICAgICAgICBcDQogICAgfHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwNCiAgICAoKChJTlNUQU5DRSkgPT0gVElNNCkgJiYgICAgICAgICAgICAgICAgICAgXA0KICAgICAoKChDSEFOTkVMKSA9PSBUSU1fQ0hBTk5FTF8xKSB8fCAgICAgICAgICBcDQogICAgICAoKENIQU5ORUwpID09IFRJTV9DSEFOTkVMXzIpIHx8ICAgICAgICAgIFwNCiAgICAgICgoQ0hBTk5FTCkgPT0gVElNX0NIQU5ORUxfMykgfHwgICAgICAgICAgXA0KICAgICAgKChDSEFOTkVMKSA9PSBUSU1fQ0hBTk5FTF80KSkpICAgICAgICAgICBcDQogICAgfHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwNCiAgICAoKChJTlNUQU5DRSkgPT0gVElNNSkgJiYgICAgICAgICAgICAgICAgICAgXA0KICAgICAoKChDSEFOTkVMKSA9PSBUSU1fQ0hBTk5FTF8xKSB8fCAgICAgICAgICBcDQogICAgICAoKENIQU5ORUwpID09IFRJTV9DSEFOTkVMXzIpIHx8ICAgICAgICAgIFwNCiAgICAgICgoQ0hBTk5FTCkgPT0gVElNX0NIQU5ORUxfMykgfHwgICAgICAgICAgXA0KICAgICAgKChDSEFOTkVMKSA9PSBUSU1fQ0hBTk5FTF80KSkpICAgICAgICAgICBcDQogICAgfHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwNCiAgICAoKChJTlNUQU5DRSkgPT0gVElNOSkgJiYgICAgICAgICAgICAgICAgICBcDQogICAgICgoKENIQU5ORUwpID09IFRJTV9DSEFOTkVMXzEpIHx8ICAgICAgICAgIFwNCiAgICAgICgoQ0hBTk5FTCkgPT0gVElNX0NIQU5ORUxfMikpKSAgICAgICAgICAgXA0KICAgIHx8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcDQogICAgKCgoSU5TVEFOQ0UpID09IFRJTTEwKSAmJiAgICAgICAgICAgICAgICAgIFwNCiAgICAgKCgoQ0hBTk5FTCkgPT0gVElNX0NIQU5ORUxfMSkpKSAgICAgICAgICAgXA0KICAgIHx8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcDQogICAgKCgoSU5TVEFOQ0UpID09IFRJTTExKSAmJiAgICAgICAgICAgICAgICAgIFwNCiAgICAgKCgoQ0hBTk5FTCkgPT0gVElNX0NIQU5ORUxfMSkpKSkNCg0KI2RlZmluZSBJU19USU1fQ0xPQ0tfRElWSVNJT05fSU5TVEFOQ0UoSU5TVEFOQ0UpICgoKElOU1RBTkNFKSA9PSBUSU0yKSAgfHwgXA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBUSU0zKSAgfHwgXA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBUSU00KSAgfHwgXA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBUSU01KSAgfHwgXA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBUSU05KSAgfHwgXA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBUSU0xMCkgfHwgXA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBUSU0xMSkpDQoNCiNkZWZpbmUgSVNfVElNX0RNQV9JTlNUQU5DRShJTlNUQU5DRSkgKCgoSU5TVEFOQ0UpID09IFRJTTIpICAgIHx8IFwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoSU5TVEFOQ0UpID09IFRJTTMpICAgIHx8IFwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoSU5TVEFOQ0UpID09IFRJTTQpICAgIHx8IFwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoSU5TVEFOQ0UpID09IFRJTTUpICAgIHx8IFwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoSU5TVEFOQ0UpID09IFRJTTYpICAgIHx8IFwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoSU5TVEFOQ0UpID09IFRJTTcpKQ0KICAgIA0KI2RlZmluZSBJU19USU1fRE1BX0NDX0lOU1RBTkNFKElOU1RBTkNFKSAoKChJTlNUQU5DRSkgPT0gVElNMikgIHx8IFwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoSU5TVEFOQ0UpID09IFRJTTMpICB8fCBcDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBUSU00KSAgfHwgXA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gVElNNSkpDQoNCiNkZWZpbmUgSVNfVElNX0NPVU5URVJfTU9ERV9TRUxFQ1RfSU5TVEFOQ0UoSU5TVEFOQ0UpICgoKElOU1RBTkNFKSA9PSBUSU0yKSAgICB8fCBcDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gVElNMykgICAgfHwgXA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoSU5TVEFOQ0UpID09IFRJTTQpICAgIHx8IFwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBUSU01KSAgICB8fCBcDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gVElNOSkpDQoNCiNkZWZpbmUgSVNfVElNX0VOQ09ERVJfSU5URVJGQUNFX0lOU1RBTkNFKElOU1RBTkNFKSAoKChJTlNUQU5DRSkgPT0gVElNMikgIHx8IFwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gVElNMykgIHx8IFwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gVElNNCkgIHx8IFwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gVElNNSkgIHx8IFwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gVElNOSkpDQoNCiNkZWZpbmUgSVNfVElNX1JFTUFQX0lOU1RBTkNFKElOU1RBTkNFKSAoKChJTlNUQU5DRSkgPT0gVElNMikgICAgfHwgXA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBUSU0zKSAgICB8fCBcDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoSU5TVEFOQ0UpID09IFRJTTkpICAgIHx8IFwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gVElNMTApICAgfHwgXA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBUSU0xMSkpDQoNCi8qKioqKioqKioqKioqKioqKioqKiBVU0FSVCBJbnN0YW5jZXMgOiBTeW5jaHJvbm91cyBtb2RlICoqKioqKioqKioqKioqKioqKioqKiovICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KI2RlZmluZSBJU19VU0FSVF9JTlNUQU5DRShJTlNUQU5DRSkgKCgoSU5TVEFOQ0UpID09IFVTQVJUMSkgfHwgXA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoSU5TVEFOQ0UpID09IFVTQVJUMikgfHwgXA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoSU5TVEFOQ0UpID09IFVTQVJUMykpDQoNCi8qKioqKioqKioqKioqKioqKioqKiBVQVJUIEluc3RhbmNlcyA6IEFzeW5jaHJvbm91cyBtb2RlICoqKioqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIElTX1VBUlRfSU5TVEFOQ0UoSU5TVEFOQ0UpICgoKElOU1RBTkNFKSA9PSBVU0FSVDEpIHx8IFwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoSU5TVEFOQ0UpID09IFVTQVJUMikgfHwgXA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gVVNBUlQzKSB8fCBcDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBVQVJUNCkgIHx8IFwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoSU5TVEFOQ0UpID09IFVBUlQ1KSkNCg0KLyoqKioqKioqKioqKioqKioqKioqIFVBUlQgSW5zdGFuY2VzIDogSGFsZi1EdXBsZXggbW9kZSAqKioqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBJU19VQVJUX0hBTEZEVVBMRVhfSU5TVEFOQ0UoSU5TVEFOQ0UpICAgKCgoSU5TVEFOQ0UpID09IFVTQVJUMSkgfHwgXA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoSU5TVEFOQ0UpID09IFVTQVJUMikgfHwgXA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoSU5TVEFOQ0UpID09IFVTQVJUMykgfHwgXA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoSU5TVEFOQ0UpID09IFVBUlQ0KSAgfHwgXA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoSU5TVEFOQ0UpID09IFVBUlQ1KSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCg0KLyoqKioqKioqKioqKioqKioqKioqIFVBUlQgSW5zdGFuY2VzIDogTElOIG1vZGUgKioqKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgSVNfVUFSVF9MSU5fSU5TVEFOQ0UoSU5TVEFOQ0UpICAgKCgoSU5TVEFOQ0UpID09IFVTQVJUMSkgfHwgXA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gVVNBUlQyKSB8fCBcDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBVU0FSVDMpIHx8IFwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoSU5TVEFOQ0UpID09IFVBUlQ0KSAgfHwgXA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gVUFSVDUpKSANCg0KLyoqKioqKioqKioqKioqKioqKiBVQVJUIEluc3RhbmNlcyA6IEhhcmR3YXJlIEZsb3cgY29udHJvbCAqKioqKioqKioqKioqKioqKioqKi8gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiNkZWZpbmUgSVNfVUFSVF9IV0ZMT1dfSU5TVEFOQ0UoSU5TVEFOQ0UpICgoKElOU1RBTkNFKSA9PSBVU0FSVDEpIHx8IFwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBVU0FSVDIpIHx8IFwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBVU0FSVDMpKQ0KDQovKioqKioqKioqKioqKioqKioqKioqIFVBUlQgSW5zdGFuY2VzIDogU21hcmQgY2FyZCBtb2RlICoqKioqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBJU19TTUFSVENBUkRfSU5TVEFOQ0UoSU5TVEFOQ0UpICgoKElOU1RBTkNFKSA9PSBVU0FSVDEpIHx8IFwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gVVNBUlQyKSB8fCBcDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoSU5TVEFOQ0UpID09IFVTQVJUMykpDQoNCi8qKioqKioqKioqKioqKioqKioqKioqKiBVQVJUIEluc3RhbmNlcyA6IElSREEgbW9kZSAqKioqKioqKioqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIElTX0lSREFfSU5TVEFOQ0UoSU5TVEFOQ0UpICgoKElOU1RBTkNFKSA9PSBVU0FSVDEpIHx8IFwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoSU5TVEFOQ0UpID09IFVTQVJUMikgfHwgXA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gVVNBUlQzKSB8fCBcDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBVQVJUNCkgIHx8IFwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoSU5TVEFOQ0UpID09IFVBUlQ1KSkNCg0KLyoqKioqKioqKioqKioqKioqIFVBUlQgSW5zdGFuY2VzIDogTXVsdGktUHJvY2Vzc29yIG1vZGUgKioqKioqKioqKioqKioqKioqKioqKi8NCiNkZWZpbmUgSVNfVUFSVF9NVUxUSVBST0NFU1NPUl9JTlNUQU5DRShJTlNUQU5DRSkgICAoKChJTlNUQU5DRSkgPT0gVVNBUlQxKSB8fCBcDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoSU5TVEFOQ0UpID09IFVTQVJUMikgfHwgXA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBVU0FSVDMpIHx8IFwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gVUFSVDQpICB8fCBcDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoSU5TVEFOQ0UpID09IFVBUlQ1KSkgDQoNCi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKiogV1dERyBJbnN0YW5jZXMgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIElTX1dXREdfQUxMX0lOU1RBTkNFKElOU1RBTkNFKSAgKChJTlNUQU5DRSkgPT0gV1dERykNCg0KDQovKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqIExDRCBJbnN0YW5jZXMgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovDQojZGVmaW5lIElTX0xDRF9BTExfSU5TVEFOQ0UoSU5TVEFOQ0UpICgoSU5TVEFOQ0UpID09IExDRCkNCg0KLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiBVU0IgSW5zdGFuY2VzICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLw0KI2RlZmluZSBJU19VU0JfQUxMX0lOU1RBTkNFKElOU1RBTkNFKSAoKElOU1RBTkNFKSA9PSBVU0IpDQojZGVmaW5lIElTX1BDRF9BTExfSU5TVEFOQ0UgICAgICAgICAgIElTX1VTQl9BTExfSU5TVEFOQ0UNCg0KLyoqDQogICogQH0NCiAgKi8NCg0KLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8NCi8qICBGb3IgYSBwYWlubGVzcyBjb2RlcyBtaWdyYXRpb24gYmV0d2VlbiB0aGUgU1RNMzJMMXh4IGRldmljZSBwcm9kdWN0ICAgICAgICovDQovKiAgbGluZXMsIHRoZSBhbGlhc2VzIGRlZmluZWQgYmVsb3cgYXJlIHB1dCBpbiBwbGFjZSB0byBvdmVyY29tZSB0aGUgICAgICAgICAqLw0KLyogIGRpZmZlcmVuY2VzIGluIHRoZSBpbnRlcnJ1cHQgaGFuZGxlcnMgYW5kIElSUW4gZGVmaW5pdGlvbnMuICAgICAgICAgICAgICAgKi8NCi8qICBObyBuZWVkIHRvIHVwZGF0ZSBkZXZlbG9wZWQgaW50ZXJydXB0IGNvZGUgd2hlbiBtb3ZpbmcgYWNyb3NzICAgICAgICAgICAgICovIA0KLyogIHByb2R1Y3QgbGluZXMgd2l0aGluIHRoZSBzYW1lIFNUTTMyTDEgRmFtaWx5ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8NCi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovDQoNCi8qIEFsaWFzZXMgZm9yIF9fSVJRbiAqLw0KDQovKiBBbGlhc2VzIGZvciBfX0lSUUhhbmRsZXIgKi8NCg0KLyoqDQogICogQH0NCiAgKi8NCg0KLyoqDQogICogQH0NCiAgKi8NCg0KI2lmZGVmIF9fY3BsdXNwbHVzDQp9DQojZW5kaWYgLyogX19jcGx1c3BsdXMgKi8NCg0KI2VuZGlmIC8qIF9fU1RNMzJMMTUyeEVfSCAqLw0KDQoNCg0KLyoqKioqKioqKioqKioqKioqKioqKioqKiAoQykgQ09QWVJJR0hUIFNUTWljcm9lbGVjdHJvbmljcyAqKioqKkVORCBPRiBGSUxFKioqKi8NCg==