LyoKICogUHJvZ3JhbSBNYW5hZ2VyCiAqCiAqIENvcHlyaWdodCAxOTk4IEthcmwgQmFja3N0cvZtCiAqLwoKI2RlZmluZSBMQU5HVUFHRV9JRCAgICAgICAgICAgICAgICAgIFN3CiNkZWZpbmUgTEFOR1VBR0VfTlVNQkVSICAgICAgICAgICAgICAxZAojZGVmaW5lIExBTkdVQUdFX01FTlVfSVRFTSAgICAgICAgICAgIiZTdmVuc2thIgoKLyogTWVudSAqLwoKI2RlZmluZSBNRU5VX0ZJTEUgICAgICAgICAgICAgICAgICAgICImQXJraXYiCiNkZWZpbmUgTUVOVV9GSUxFX05FVyAgICAgICAgICAgICAgICAiJk55Li4uIgojZGVmaW5lIE1FTlVfRklMRV9PUEVOICAgICAgICAgICAgICAgItYmcHBuYVx0RW50ZXIiCiNkZWZpbmUgTUVOVV9GSUxFX01PVkUgICAgICAgICAgICAgICAiJkZseXR0YS4uLlx0RjciCiNkZWZpbmUgTUVOVV9GSUxFX0NPUFkgICAgICAgICAgICAgICAiJktvcGllcmEuLi5cdEY4IgojZGVmaW5lIE1FTlVfRklMRV9ERUxFVEUgICAgICAgICAgICAgIiZUYSBib3J0XHRFbnRmIgojZGVmaW5lIE1FTlVfRklMRV9BVFRSSUJVVEVTICAgICAgICAgIiZFZ2Vuc2thcGVyLi4uXHRBbHQrRW50ZXIiCiNkZWZpbmUgTUVOVV9GSUxFX0VYRUNVVEUgICAgICAgICAgICAiJkv2ci4uLiIKI2RlZmluZSBNRU5VX0ZJTEVfRVhJVCAgICAgICAgICAgICAgICJBJnZzbHV0YSBXaW5kb3dzLi4uIgoKI2RlZmluZSBNRU5VX09QVElPTlMgICAgICAgICAgICAgICAgICImSW5zdORsbG5pbmdhciIKI2RlZmluZSBNRU5VX09QVElPTlNfQVVUT19BUlJBTkdFICAgICImQXJyYW5nZXJhIGF1dG9tYXRpc2t0IgojZGVmaW5lIE1FTlVfT1BUSU9OU19NSU5fT05fUlVOICAgICAgIiZNaW5pbWVyYSB2aWQga/ZybmluZyIKI2RlZmluZSBNRU5VX09QVElPTlNfU0FWRV9TRVRUSU5HUyAgICImU3BhcmEgaW5zdORsbG5pbmdhcm5hIHZpZCBhdnNsdXQiCgojZGVmaW5lIE1FTlVfV0lORE9XUyAgICAgICAgICAgICAgICAgIiZG9m5zdGVyIgojZGVmaW5lIE1FTlVfV0lORE9XU19PVkVSTEFQICAgICAgICAgIibWdmVybGFwcGFuZGVcdFNoaWZ0K0Y1IgojZGVmaW5lIE1FTlVfV0lORE9XU19TSURFX0JZX1NJREUgICAgIiZTaWRhIHZpZCBzaWRhXHRTaGlmdCtGNCIKI2RlZmluZSBNRU5VX1dJTkRPV1NfQVJSQU5HRSAgICAgICAgICImQXJyYW5ncmEgSWtvbmVyIgoKI2RlZmluZSBNRU5VX0xBTkdVQUdFICAgICAgICAgICAgICAgICImU3By5WsiCgojZGVmaW5lIE1FTlVfSEVMUCAgICAgICAgICAgICAgICAgICAgIiZIauRscCIKI2RlZmluZSBNRU5VX0hFTFBfQ09OVEVOVFMgICAgICAgICAgICImSW5uZWjlbGwiCiNkZWZpbmUgTUVOVV9IRUxQX1NFQVJDSCAgICAgICAgICAgICAiJlP2ay4uLiIKI2RlZmluZSBNRU5VX0hFTFBfSEVMUF9PTl9IRUxQICAgICAgICImQW525G5kbmluZ2VuIGF2IEhq5GxwIgojZGVmaW5lIE1FTlVfSEVMUF9UVVRPUklBTCAgICAgICAgICAgIiZXaW5kb3dzIFNq5Gx2c3R1ZGllciIKCiNkZWZpbmUgTUVOVV9JTkZPICAgICAgICAgICAgICAgICAgICAiJkluZm9ybWF0aW9uLi4uIgojZGVmaW5lIE1FTlVfSU5GT19MSUNFTlNFICAgICAgICAgICAgIiZMaWNlbnMiCiNkZWZpbmUgTUVOVV9JTkZPX05PX1dBUlJBTlRZICAgICAgICAiJklOR0VOIEdBUkFOVEkiCiNkZWZpbmUgTUVOVV9JTkZPX0FCT1VUX1dJTkUgICAgICAgICAiJk9tIFdJTkUiCgovKiBEaWFsb2dzICovCgojZGVmaW5lIERJQUxPR19PSyAgICAgICAgICAgICAgICAgICAgIk9LIgojZGVmaW5lIERJQUxPR19DQU5DRUwgICAgICAgICAgICAgICAgIkF2YnJ5dCIKI2RlZmluZSBESUFMT0dfQlJPV1NFICAgICAgICAgICAgICAgICImQmzkZGRyYSIKI2RlZmluZSBESUFMT0dfSEVMUCAgICAgICAgICAgICAgICAgICImSGrkbHAiCgojZGVmaW5lIERJQUxPR19ORVdfQ0FQVElPTiAgICAgICAgICAgIk55dHQgUHJvZ3JhbSBPYmpla3QiCiNkZWZpbmUgRElBTE9HX05FV19ORVcgICAgICAgICAgICAgICAiTnl0dCIKI2RlZmluZSBESUFMT0dfTkVXX0dST1VQICAgICAgICAgICAgICJQcm9ncmFtICZncnVwcCIKI2RlZmluZSBESUFMT0dfTkVXX1BST0dSQU0gICAgICAgICAgICImUHJvZ3JhbSIKCiNkZWZpbmUgRElBTE9HX01PVkVfQ0FQVElPTiAgICAgICAgICAiRmx5dHRhIFByb2dyYW0iCiNkZWZpbmUgRElBTE9HX01PVkVfUFJPR1JBTSAgICAgICAgICAiRmx5dHRhIHByb2dyYW06IgojZGVmaW5lIERJQUxPR19NT1ZFX0ZST01fR1JPVVAgICAgICAgIkZy5W4gZ3J1cHA6IgojZGVmaW5lIERJQUxPR19NT1ZFX1RPX0dST1VQICAgICAgICAgIiZUaWxsIGdydXBwOiIKCiNkZWZpbmUgRElBTE9HX0NPUFlfQ0FQVElPTiAgICAgICAgICAiS29waWVyYSBQcm9ncmFtIgojZGVmaW5lIERJQUxPR19DT1BZX1BST0dSQU0gICAgICAgICAgIktvcGllcmEgcHJvZ3JhbToiCiNkZWZpbmUgRElBTE9HX0NPUFlfRlJPTV9HUk9VUCAgICAgICBESUFMT0dfTU9WRV9GUk9NX0dST1VQCiNkZWZpbmUgRElBTE9HX0NPUFlfVE9fR1JPVVAgICAgICAgICBESUFMT0dfTU9WRV9UT19HUk9VUAoKI2RlZmluZSBESUFMT0dfR1JPVVBfQ0FQVElPTiAgICAgICAgICJQcm9ncmFtZ3J1cHBzIGVnZW5za2FwZXIiCiNkZWZpbmUgRElBTE9HX0dST1VQX0RFU0NSSVBUSU9OICAgICAiJkJlc2tyaXZuaW5nOiIKI2RlZmluZSBESUFMT0dfR1JPVVBfRklMRSAgICAgICAgICAgICImR3J1cHBmaWw6IgoKI2RlZmluZSBESUFMT0dfUFJPR1JBTV9DQVBUSU9OICAgICAgICJQcm9ncmFtIGVnZW5za2FwZXIiCiNkZWZpbmUgRElBTE9HX1BST0dSQU1fREVTQ1JJUFRJT04gICBESUFMT0dfR1JPVVBfREVTQ1JJUFRJT04KI2RlZmluZSBESUFMT0dfUFJPR1JBTV9DT01NQU5EX0xJTkUgICImS29tbWFuZG8gcmFkOiIKI2RlZmluZSBESUFMT0dfUFJPR1JBTV9ESVJFQ1RPUlkgICAgICImQXJiZXRzIGthdGFsb2c6IgojZGVmaW5lIERJQUxPR19QUk9HUkFNX0hPVF9LRVkgICAgICAgIiZUYW5nZW50Ym9yZHMga29tYmluYXRpb246IgojZGVmaW5lIERJQUxPR19QUk9HUkFNX1NZTUJPTCAgICAgICAgIkv2ciAmbWluaW1lcmF0IgojZGVmaW5lIERJQUxPR19QUk9HUkFNX09USEVSX1NZTUJPTCAgIiZCeXQgSWtvbi4uLiIKCiNkZWZpbmUgRElBTE9HX1NZTUJPTF9DQVBUSU9OICAgICAgICAiQnl0IElrb24iCiNkZWZpbmUgRElBTE9HX1NZTUJPTF9GSUxFICAgICAgICAgICAiJkZpbG5hbW46IgojZGVmaW5lIERJQUxPR19TWU1CT0xfQ1VSUkVOVCAgICAgICAgIiZOdXZhcmFuZGUgaWtvbjoiCgojZGVmaW5lIERJQUxPR19FWEVDVVRFX0NBUFRJT04gICAgICAgIkv2ciIKI2RlZmluZSBESUFMT0dfRVhFQ1VURV9DT01NQU5EX0xJTkUgIERJQUxPR19QUk9HUkFNX0NPTU1BTkRfTElORQojZGVmaW5lIERJQUxPR19FWEVDVVRFX1NZTUJPTCAgICAgICAgRElBTE9HX1BST0dSQU1fU1lNQk9MCgovKiBTdHJpbmdzICovCgojZGVmaW5lIFNUUklOR19QUk9HUkFNX01BTkFHRVIgICAgICAgICAgICAiUHJvZ3JhbWhhbnRlcmFyZW4iCiNkZWZpbmUgU1RSSU5HX0VSUk9SICAgICAgICAgICAgICAgICAgICAgICJGRUwiCiNkZWZpbmUgU1RSSU5HX1dBUk5JTkcgICAgICAgICAgICAgICAgICAgICJWQVJOSU5HIgojZGVmaW5lIFNUUklOR19JTkZPICAgICAgICAgICAgICAgICAgICAgICAiSW5mb3JtYXRpb24iCiNkZWZpbmUgU1RSSU5HX0RFTEVURSAgICAgICAgICAgICAgICAgICAgICJUYSBib3J0IgojZGVmaW5lIFNUUklOR19ERUxFVEVfR1JPVVBfcyAgICAgICAgICAgICAiVGEgYm9ydCBncnVwcCBgJXMnID8iCiNkZWZpbmUgU1RSSU5HX0RFTEVURV9QUk9HUkFNX3MgICAgICAgICAgICJUYSBib3J0IHByb2dyYW0gYCVzJyA/IgojZGVmaW5lIFNUUklOR19OT1RfSU1QTEVNRU5URUQgICAgICAgICAgICAiRWogaW1wbGVtZW50ZXJhdCIKI2RlZmluZSBTVFJJTkdfRklMRV9SRUFEX0VSUk9SX3MgICAgICAgICAgIkthbiBlaiBs5HNhIGZpbGVuIGAlcyciCiNkZWZpbmUgU1RSSU5HX0ZJTEVfV1JJVEVfRVJST1JfcyAgICAgICAgICJLYW4gZWogc2tyaXZhIHRpbGwgZmlsZW4gYCVzJyIKCiNkZWZpbmUgU1RSSU5HX0dSUEZJTEVfUkVBRF9FUlJPUl9zICAgICAgICJcCkthbiBpbnRlIPZwcG5hIGdydXBwZmlsZW4gYCVzJy5cblwK1m5za2FyIGR1IGF0dCBQcm9ncmFtaGFudGVyYXJlbiBpIGZyYW10aWRlbiBza2EgZvZyc/ZrYSD2cHBuYSBkZW4/IgoKI2RlZmluZSBTVFJJTkdfT1VUX09GX01FTU9SWSAgICAgICAgICAgICAgIlNsdXQgcOUgbWlubmUiCiNkZWZpbmUgU1RSSU5HX1dJTkhFTFBfRVJST1IgICAgICAgICAgICAgICJIauRscCBlaiB0aWxsZ+RuZ2xpZyIKI2RlZmluZSBTVFJJTkdfVU5LTk9XTl9GRUFUVVJFX3MgICAgICAgICAgIk9r5G50IGlubmVo5WxsIGkgJXMiCiNkZWZpbmUgU1RSSU5HX0ZJTEVfTk9UX09WRVJXUklUVEVOX3MgICAgICJGaWxlbiBgJXMnIGV4aXN0ZXJhci4gRGVuIGhhciBlaiBza3Jpdml0cyD2dmVyLiIKI2RlZmluZSBTVFJJTkdfU0FWRV9HUk9VUF9BU19zICAgICAgICAgICAgIlNwYXJhIGZpbGVuIHNvbSBgJXMnIGb2ciBhdHQgZvZyaGluZHJhIGF0dCBvcmdpbmFsZmlsZW4gc2tyaXZzIPZ2ZXIiCgojZGVmaW5lIFNUUklOR19OT19IT1RfS0VZICAgICAgICAgICAgICAgICAiSW5nZW4iCgojZGVmaW5lIFNUUklOR19BTExfRklMRVMgICAgICAgICAgICAgICAgICAiQWxsYSBmaWxlciAoKi4qKSIKI2RlZmluZSBTVFJJTkdfUFJPR1JBTVMgICAgICAgICAgICAgICAgICAgIlByb2dyYW0iCiNkZWZpbmUgU1RSSU5HX0xJQlJBUklFU19ETEwgICAgICAgICAgICAgICJCaWJsaW90ZWtzZmlsZXIgKCouZGxsKSIKI2RlZmluZSBTVFJJTkdfU1lNQk9MX0ZJTEVTICAgICAgICAgICAgICAgIklrb25maWxlciIKI2RlZmluZSBTVFJJTkdfU1lNQk9MU19JQ08gICAgICAgICAgICAgICAgIklrb25lciAoKi5pY28pIgoKI2luY2x1ZGUgIlh4LnJjIgo=