LyoKICogIE5vdGVwYWQgKERhbmlzaCByZXNvdXJjZXMpCiAqCiAqICBDb3B5cmlnaHQgMTk5OCBIZW5yaWsgT2xzZW4gPGhlbnJpa0BpYWVzdGUuZGs+CiAqLwoKI2RlZmluZSBMQU5HVUFHRV9JRCAgICAgICAgICAgICAgICAgICAgIERhCiNkZWZpbmUgTEFOR1VBR0VfTlVNQkVSICAgICAgICAgICAgICAgICA2CiNkZWZpbmUgTEFOR1VBR0VfTUVOVV9JVEVNICAgICAgICAgICAgICAiJkRhbnNrIgoKLyogTWVudSAqLwoKI2RlZmluZSBNRU5VX0ZJTEUgICAgICAgICAgICAgICAgICAgICAgICImRmlsZWYiCiNkZWZpbmUgTUVOVV9GSUxFX05FVyAgICAgICAgICAgICAgICAgICAiJk55Li4uIgojZGVmaW5lIE1FTlVfRklMRV9PUEVOICAgICAgICAgICAgICAgICAgIsUmYm5cdEVudGVyIgojZGVmaW5lIE1FTlVfRklMRV9TQVZFICAgICAgICAgICAgICAgICAgIiZHZW0iCiNkZWZpbmUgTUVOVV9GSUxFX1NBVkVBUyAgICAgICAgICAgICAgICAiR2VtIHNvJm0uLi4iCiNkZWZpbmUgTUVOVV9GSUxFX1BSSU5UICAgICAgICAgICAgICAgICAiJlVkc2tyaXYiCiNkZWZpbmUgTUVOVV9GSUxFX1BBR0VTRVRVUCAgICAgICAgICAgICAiU2lkZSZvcHPmdG5pbmcuLi4iCiNkZWZpbmUgTUVOVV9GSUxFX1BSSU5UU0VUVVAgICAgICAgICAgICAiJkluZHN0aWwgcHJpbnRlci4uLiIKI2RlZmluZSBNRU5VX0ZJTEVfRVhJVCAgICAgICAgICAgICAgICAgICImQWZzbHV0IgoKI2RlZmluZSBNRU5VX0VESVQgICAgICAgICAgICAgICAgICAgICAgICImUmVkaWdlciIKI2RlZmluZSBNRU5VX0VESVRfVU5ETyAgICAgICAgICAgICAgICAgICImRm9ydHJ5ZFx0Q3RybCtaIgojZGVmaW5lIE1FTlVfRURJVF9DVVQgICAgICAgICAgICAgICAgICAgIiZLbGlwXHRDdHJsK1giCiNkZWZpbmUgTUVOVV9FRElUX0NPUFkgICAgICAgICAgICAgICAgICAiSyZvcGllclx0Q3RybCtDIgojZGVmaW5lIE1FTlVfRURJVF9QQVNURSAgICAgICAgICAgICAgICAgIlPmdCAmaW5kXHRDdHJsK1YiCiNkZWZpbmUgTUVOVV9FRElUX0RFTEVURSAgICAgICAgICAgICAgICAiJlNsZXRcdERlbCIKI2RlZmluZSBNRU5VX0VESVRfU0VMRUNUQUxMICAgICAgICAgICAgICJNYXJrZXIgJmFsdCIKI2RlZmluZSBNRU5VX0VESVRfVElNRURBVEUgICAgICAgICAgICAgICImRGF0by90aWRcdEY1IgojZGVmaW5lIE1FTlVfRURJVF9XUkFQICAgICAgICAgICAgICAgICAgIkF1dG9tYXRpc2sgJmxpbmplc2tpZnQiCgojZGVmaW5lIE1FTlVfU0VBUkNIICAgICAgICAgICAgICAgICAgICAgIiZT+GciCiNkZWZpbmUgTUVOVV9TRUFSQ0hfU0VBUkNIICAgICAgICAgICAgICAiJlP4Zy4uLiIKI2RlZmluZSBNRU5VX1NFQVJDSF9ORVhUICAgICAgICAgICAgICAgICImRmluZCBu5nN0ZVx0RjMiCgojZGVmaW5lIE1FTlVfTEFOR1VBR0UgICAgICAgICAgICAgICAgICAgIlMmcHJvZyIKCiNkZWZpbmUgTUVOVV9IRUxQICAgICAgICAgICAgICAgICAgICAgICAiJkhq5mxwIgojZGVmaW5lIE1FTlVfSEVMUF9DT05URU5UUyAgICAgICAgICAgICAgIiZJbmRob2xkIgojZGVmaW5lIE1FTlVfSEVMUF9TRUFSQ0ggICAgICAgICAgICAgICAgIiZT+GcgZWZ0ZXIgaGrmbHAgb20uLi4iCiNkZWZpbmUgTUVOVV9IRUxQX0hFTFBfT05fSEVMUCAgICAgICAgICAiJkJydWcgYWYgSGrmbHAiCgojZGVmaW5lIE1FTlVfSU5GTyAgICAgICAgICAgICAgICAgICAgICAgIiZPbSBOb3Rlc2Jsb2suLi4iCiNkZWZpbmUgTUVOVV9JTkZPX0xJQ0VOU0UgICAgICAgICAgICAgICAiJkxpY2VucyIKI2RlZmluZSBNRU5VX0lORk9fTk9fV0FSUkFOVFkgICAgICAgICAgICImTk8gV0FSUkFOVFkiCiNkZWZpbmUgTUVOVV9JTkZPX0FCT1VUX1dJTkUgICAgICAgICAgICAiJk9tIFdJTkUiCgoKLyogRGlhbG9ncyAqLwoKI2RlZmluZSBESUFMT0dfT0sgICAgICAgICAgICAgICAgICAgICAgICJPSyIKI2RlZmluZSBESUFMT0dfQ0FOQ0VMICAgICAgICAgICAgICAgICAgICJBbm51bGxlciIKI2RlZmluZSBESUFMT0dfQlJPV1NFICAgICAgICAgICAgICAgICAgICImR2VubmVtc2UuLi4iCiNkZWZpbmUgRElBTE9HX0hFTFAgICAgICAgICAgICAgICAgICAgICAiJkhq5mxwIgoKI2RlZmluZSBESUFMT0dfUEFHRVNFVFVQX0NBUFRJT04gICAgICAgICJTaWRlb3Bz5nRuaW5nIgojZGVmaW5lIERJQUxPR19QQUdFU0VUVVBfSEVBRCAgICAgICAgICAgIiZTaWRlaG92ZWQ6IgojZGVmaW5lIERJQUxPR19QQUdFU0VUVVBfVEFJTCAgICAgICAgICAgIlNpZGUmZm9kOiIKI2RlZmluZSBESUFMT0dfUEFHRVNFVFVQX01BUkdJTiAgICAgICAgICJNYXJnZW5lcjoiCiNkZWZpbmUgRElBTE9HX1BBR0VTRVRVUF9MRUZUICAgICAgICAgICAiJlZlbnN0cmU6IgojZGVmaW5lIERJQUxPR19QQUdFU0VUVVBfUklHSFQgICAgICAgICAgIiZI+GpyZToiCiNkZWZpbmUgRElBTE9HX1BBR0VTRVRVUF9UT1AgICAgICAgICAgICAiJlRvcDoiCiNkZWZpbmUgRElBTE9HX1BBR0VTRVRVUF9CT1RUT00gICAgICAgICAiJkJ1bmQ6IgoKCi8qIFN0cmluZ3MgKi8NCg0KI2RlZmluZSBTVFJJTkdfUEFHRVNFVFVQX0hFQURFUlZBTFVFICAgICImbiIgICAgICAgIC8qIEZJWE1FICovDQojZGVmaW5lIFNUUklOR19QQUdFU0VUVVBfRk9PVEVSVkFMVUUgICAgIlBhZ2UgJnMiICAgLyogRklYTUUgKi8NCiNkZWZpbmUgU1RSSU5HX1BBR0VTRVRVUF9MRUZUVkFMVUUgICAgICAiMjAgbW0iICAgICAvKiBGSVhNRSAqLw0KI2RlZmluZSBTVFJJTkdfUEFHRVNFVFVQX1JJR0hUVkFMVUUgICAgICIyMCBtbSIgICAgIC8qIEZJWE1FICovDQojZGVmaW5lIFNUUklOR19QQUdFU0VUVVBfVE9QVkFMVUUgICAgICAgIjI1IG1tIiAgICAgLyogRklYTUUgKi8NCiNkZWZpbmUgU1RSSU5HX1BBR0VTRVRVUF9CT1RUT01WQUxVRSAgICAiMjUgbW0iICAgICAvKiBGSVhNRSAqLw0KCiNkZWZpbmUgU1RSSU5HX05PVEVQQUQgICAgICAgICAgICAgICAgICAiTm90ZXNibG9rIgojZGVmaW5lIFNUUklOR19FUlJPUiAgICAgICAgICAgICAgICAgICAgIkZFSkwiCiNkZWZpbmUgU1RSSU5HX1dBUk5JTkcgICAgICAgICAgICAgICAgICAiQURWQVJTRUwiCiNkZWZpbmUgU1RSSU5HX0lORk8gICAgICAgICAgICAgICAgICAgICAiSW5mb3JtYXRpb24iCgojZGVmaW5lIFNUUklOR19VTlRJVExFRCAgICAgICAgICAgICAgICAgIihpa2tlLW5hdm5naXZldCkiCgojZGVmaW5lIFNUUklOR19BTExfRklMRVMgICAgICAgICAgICAgICAgIkFsbGUgZmlsZXIgKCouKikiCiNkZWZpbmUgU1RSSU5HX1RFWFRfRklMRVNfVFhUICAgICAgICAgICAiVGVrc3QgZmlsZXIgKCoudHh0KSIKCiNkZWZpbmUgU1RSSU5HX1RPT0xBUkdFICAgICAgICAgIkZpbGVuICclcycgZXIgZm9yIHN0b3IgdGlsIE5vdGVzYmxvay4gXApcbkJydWcgZW4gYW5kZW4gZWRpdG9yIHRpbCBhdCByZWRpZ2VyZSBmaWxlbi4iCgojZGVmaW5lIFNUUklOR19OT1RFWFQgICAgICAgICAgICJEdSBoYXIgaWtrZSBza3JldmV0IG5vZ2V0IHRla3N0LiBcClxuU2tyaXYgbm9nZXQgdGVrc3QsIG9nIHBy+HYgc+UgaWdlbiIKCi8qIEZJWE1FOiAqLwoKI2RlZmluZSBTVFJJTkdfTk9UU0FWRUQgICAgICAgICAiRmlsZW4gJyVzJ1xuIGhhcyBiZWVuIG1vZGlmaWVkLlxuXG4gXApXb3VsZCB5b3UgbGlrZSB0byBzYXZlIHRoZSBjaGFuZ2VzID8iCgojZGVmaW5lIFNUUklOR19OT1RGT1VORCAgICAgICAgICJLYW4gaWtrZSBmaW5kZSAnJXMnLiIKCiNkZWZpbmUgU1RSSU5HX09VVF9PRl9NRU1PUlkgICAgIkRlciBlciBpa2tlIG5vayBodWtvbW1lbHNlIHRpbCBhdCB1ZGb4cmUgXApkZW5uZSBvcGVyYXRpb24uIFxuQWZzbHV0IGV0IGVsbGVyIGZsZXJlIGFrdGl2ZSBwcm9ncmFtbWVyIGZvciBhdCBmcmln+HJlIFwKaHVrb21tZWxzZSwgb2cgcHL4diBz5SBpZ2VuLiIKCiNpbmNsdWRlICJub3RlcGFkLnJjIgo=