LyoKICogQ29weXJpZ2h0IDE5OTggSnVlcmdlbiBTY2htaWVkCiAqIENvcHlyaWdodCAyMDA0IFBpb3RyIENhYmFuCiAqCiAqIFRoaXMgbGlicmFyeSBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IKICogbW9kaWZ5IGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIExlc3NlciBHZW5lcmFsIFB1YmxpYwogKiBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieSB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uOyBlaXRoZXIKICogdmVyc2lvbiAyLjEgb2YgdGhlIExpY2Vuc2UsIG9yIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCiAqCiAqIFRoaXMgbGlicmFyeSBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAogKiBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZgogKiBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlIEdOVQogKiBMZXNzZXIgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLgogKgogKiBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgTGVzc2VyIEdlbmVyYWwgUHVibGljCiAqIExpY2Vuc2UgYWxvbmcgd2l0aCB0aGlzIGxpYnJhcnk7IGlmIG5vdCwgd3JpdGUgdG8gdGhlIEZyZWUgU29mdHdhcmUKICogRm91bmRhdGlvbiwgSW5jLiwgNTEgRnJhbmtsaW4gU3QsIEZpZnRoIEZsb29yLCBCb3N0b24sIE1BIDAyMTEwLTEzMDEsIFVTQQogKi8KCkxBTkdVQUdFIExBTkdfUE9MSVNILCBTVUJMQU5HX0RFRkFVTFQKCk1FTlVfMDAxIE1FTlUgRElTQ0FSREFCTEUKQkVHSU4KCU1FTlVJVEVNICImRHW/ZSBJa29ueSIsCUZDSURNX1NIVklFV19CSUdJQ09OCglNRU5VSVRFTSAiJk1hs2UgSWtvbnkiLAlGQ0lETV9TSFZJRVdfU01BTExJQ09OCglNRU5VSVRFTSAiJkxpc3RhIiwJCUZDSURNX1NIVklFV19MSVNUVklFVwoJTUVOVUlURU0gIiZTemN6ZWfzs3kiLAkJRkNJRE1fU0hWSUVXX1JFUE9SVFZJRVcKRU5ECgovKgogc2hlbGx2aWV3IGJhY2tncm91bmQgbWVudQoqLwpNRU5VXzAwMiBNRU5VIERJU0NBUkRBQkxFCkJFR0lOCglQT1BVUCAiIgoJQkVHSU4KCSAgUE9QVVAgIiZXaWRvayIKCSAgQkVHSU4KCSAgICBNRU5VSVRFTSAiJkR1v2UgSWtvbnkiLAlGQ0lETV9TSFZJRVdfQklHSUNPTgoJICAgIE1FTlVJVEVNICImTWGzZSBJa29ueSIsCUZDSURNX1NIVklFV19TTUFMTElDT04KCSAgICBNRU5VSVRFTSAiJkxpc3RhIiwJCUZDSURNX1NIVklFV19MSVNUVklFVwoJICAgIE1FTlVJVEVNICImU3pjemVn87N5IiwJRkNJRE1fU0hWSUVXX1JFUE9SVFZJRVcKCSAgRU5ECgkgIE1FTlVJVEVNIFNFUEFSQVRPUgoJICBQT1BVUCAiUm96bWllnOYgJmlrb255IHdlZLN1ZyIKCSAgQkVHSU4KCSAgICBNRU5VSVRFTSAiJk5hend5IiwJMHgzMAkvKiBjb2x1bW4gMCAqLwoJICAgIE1FTlVJVEVNICImVHlwdSIsCTB4MzIJLyogY29sdW1uIDIgKi8KCSAgICBNRU5VSVRFTSAiJldpZWxrb5xjaSIsCTB4MzEJLyogLi4uICovCgkgICAgTUVOVUlURU0gIiZEYXR5IiwJMHgzMwoJICAgIE1FTlVJVEVNIFNFUEFSQVRPUgoJICAgIE1FTlVJVEVNICImQXV0b3Jvem1pZXN6Y3phbmllIiwJRkNJRE1fU0hWSUVXX0FVVE9BUlJBTkdFCgkgIEVORAoJICBNRU5VSVRFTSAiJld5cvN3bmFqIGlrb255IiwJRkNJRE1fU0hWSUVXX1NOQVBUT0dSSUQKCSAgTUVOVUlURU0gU0VQQVJBVE9SCgkgIE1FTlVJVEVNICImT2Scd2llcnoiLAkJRkNJRE1fU0hWSUVXX1JFRlJFU0gKCSAgTUVOVUlURU0gU0VQQVJBVE9SCgkgIE1FTlVJVEVNICJXJmtsZWoiLAkJRkNJRE1fU0hWSUVXX0lOU0VSVAoJICBNRU5VSVRFTSAiV2tsZWogcyZrcvN0IiwJRkNJRE1fU0hWSUVXX0lOU0VSVExJTksKCSAgTUVOVUlURU0gU0VQQVJBVE9SCgkgIFBPUFVQICImTm93eSIKCSAgQkVHSU4KCSAgICBNRU5VSVRFTSAiJkZvbGRlciIsCUZDSURNX1NIVklFV19ORVdGT0xERVIKCSAgICBNRU5VSVRFTSAiJlNrcvN0IiwJRkNJRE1fU0hWSUVXX05FV0xJTksKCSAgICBNRU5VSVRFTSBTRVBBUkFUT1IKCSAgRU5ECgkgIE1FTlVJVEVNIFNFUEFSQVRPUgoJICBNRU5VSVRFTSAiV7NhnGNpd2+cY2kiLAlGQ0lETV9TSFZJRVdfUFJPUEVSVElFUwoJRU5ECkVORAoKLyoKIHNoZWxsdmlldyBpdGVtIG1lbnUKKi8KTUVOVV9TSFZfRklMRSBNRU5VIERJU0NBUkRBQkxFCkJFR0lOCglQT1BVUCAiIgoJQkVHSU4KCSAgTUVOVUlURU0gIiZTZWxlY3QiCQlGQ0lETV9TSFZJRVdfT1BFTgoJICBNRU5VSVRFTSAiJkVrc3Bsb3J1aiIsCQlGQ0lETV9TSFZJRVdfRVhQTE9SRQoJICBNRU5VSVRFTSAiJk90d/NyeiIsCQlGQ0lETV9TSFZJRVdfT1BFTgoJICBNRU5VSVRFTSBTRVBBUkFUT1IKCSAgTUVOVUlURU0gIiZXeXRuaWoiLAkJRkNJRE1fU0hWSUVXX0NVVAoJICBNRU5VSVRFTSAiJktvcGl1aiIsCQlGQ0lETV9TSFZJRVdfQ09QWQoJICBNRU5VSVRFTSBTRVBBUkFUT1IKCSAgTUVOVUlURU0gIlV0d/NyeiAmU2ty83QiLAlGQ0lETV9TSFZJRVdfQ1JFQVRFTElOSwoJICBNRU5VSVRFTSAiJlVzdfEiLAkJRkNJRE1fU0hWSUVXX0RFTEVURQoJICBNRU5VSVRFTSAiJlptaWXxIG5henfqIiwJCUZDSURNX1NIVklFV19SRU5BTUUKCSAgTUVOVUlURU0gU0VQQVJBVE9SCgkgIE1FTlVJVEVNICJXsyZhnGNpd2+cY2kiLAlGQ0lETV9TSFZJRVdfUFJPUEVSVElFUwoJRU5ECkVORAoKU0hCUlNGT1JGT0xERVJfTVNHQk9YIERJQUxPRyBMT0FET05DQUxMIE1PVkVBQkxFIERJU0NBUkRBQkxFIDE1LCA0MCwgMTg4LCAxOTIKU1RZTEUgRFNfTU9EQUxGUkFNRSB8IFdTX0NBUFRJT04gfCBXU19TWVNNRU5VIHwgRFNfTU9EQUxGUkFNRSB8IERTX1NFVEZPTlQgfCBEU18zRExPT0sKQ0FQVElPTiAiV3liaWVyeiBmb2xkZXIiCkZPTlQgOCwgIk1TIFNoZWxsIERsZyIKewogREVGUFVTSEJVVFRPTiAiT0siLCAxLCA4MCwgMTc2LCA1MCwgMTIsIEJTX0RFRlBVU0hCVVRUT04gfCBXU19HUk9VUCB8IFdTX1RBQlNUT1AKIFBVU0hCVVRUT04gIkFudWx1aiIsIDIsIDEzNCwgMTc2LCA1MCwgMTIsIFdTX0dST1VQIHwgV1NfVEFCU1RPUAogTFRFWFQgIiIsIElERF9USVRMRSwgNCwgNCwgMTgwLCAxMgogTFRFWFQgIiIsIElERF9TVEFUVVMsIDQsIDI1LCAxODAsIDEyCiBDT05UUk9MICIiLCBJRERfVFJFRVZJRVcsICJTeXNUcmVlVmlldzMyIiwKIAlUVlNfSEFTQlVUVE9OUyB8IFRWU19IQVNMSU5FUyB8IFRWU19MSU5FU0FUUk9PVCB8CglXU19CT1JERVIgfCBXU19UQUJTVE9QLAoJNCwgNDAsIDE4MCwgMTIwCn0KClNIRUxMX1lFU1RPQUxMX01TR0JPWCBESUFMT0cgMjAwLCAxMDAsIDI4MCwgOTAKU1RZTEUgRFNfTU9EQUxGUkFNRSB8IFdTX1BPUFVQIHwgV1NfVklTSUJMRSB8IFdTX0NBUFRJT04gfCBXU19TWVNNRU5VCkNBUFRJT04gIktvbXVuaWthdCIKRk9OVCA4LCAiTVMgU2hlbGwgRGxnIgp7CiAgICBERUZQVVNIQlVUVE9OICImVGFrIiwgSURZRVMsIDM0LCA2OSwgNTMsIDE0LCBXU19HUk9VUCB8IFdTX1RBQlNUT1AKICAgIFBVU0hCVVRUT04gIlRhayBuYSAmd3N6eXN0a2llIiwgSUREX1lFU1RPQUxMLCA5MiwgNjksIDY1LCAxNCwgV1NfR1JPVVAgfCBXU19UQUJTVE9QCiAgICBQVVNIQlVUVE9OICImTmllIiwgSUROTywgMTYyLCA2OSwgNTMsIDE0LCBXU19HUk9VUCB8IFdTX1RBQlNUT1AKICAgIFBVU0hCVVRUT04gIiZBbnVsdWoiLCBJRENBTkNFTCwgMjIwLCA2OSwgNTMsIDE0LCBXU19HUk9VUCB8IFdTX1RBQlNUT1AKICAgIElDT04gIiIsIElERF9JQ09OLCAxMCwgMTAsIDE2LCAxNgogICAgTFRFWFQgIiIsIElERF9NRVNTQUdFLCA0MCwgMTAsIDIzOCwgNTIsIDAKfQoKU0hFTExfQUJPVVRfTVNHQk9YIERJQUxPRyBMT0FET05DQUxMIE1PVkVBQkxFIERJU0NBUkRBQkxFIDE1LCA0MCwgMjEwLCAxNTIKU1RZTEUgRFNfTU9EQUxGUkFNRSB8IFdTX1BPUFVQIHwgV1NfVklTSUJMRSB8IFdTX0NBUFRJT04gfCBXU19TWVNNRU5VCkNBUFRJT04gIk8gJXMiCkZPTlQgMTAsICJNUyBTaGVsbCBEbGciCnsKIERFRlBVU0hCVVRUT04gIk9LIiwgSURPSywgMTUzLCAxMzMsIDUwLCAxMiwgV1NfVEFCU1RPUAogTElTVEJPWCA5OSwgOCwgNjUsIDEzNywgODIsIExCU19OT1RJRlkgfCBXU19WU0NST0xMIHwgV1NfQk9SREVSCiBJQ09OICIiLCAxMDg4LCAxMCwgMTAsIDE0LCAxNgogTFRFWFQgIiIsIDEwMCwgMzAsIDEwLCAxMzcsIDEwCiBMVEVYVCAiIiwgMTAxLCAzMCwgMjIsIDEzNywgMTAKIExURVhUICJNb79lc3oga29yenlzdGHmIHogV2luZSdhIGR6aepraToiLCA5OCwgOCwgNTUsIDEzNywgMTAKfQoKU0hFTExfUlVOX0RMRyBESUFMT0cgTE9BRE9OQ0FMTCBNT1ZFQUJMRSBESVNDQVJEQUJMRSAwLCAwLCAyMjcsIDk1ClNUWUxFIERTX01PREFMRlJBTUUgfCBXU19QT1BVUCB8IFdTX1ZJU0lCTEUgfCBXU19DQVBUSU9OIHwgV1NfU1lTTUVOVQpDQVBUSU9OICIiCkZPTlQgOCwgIk1TIFNoZWxsIERsZyIKewogSUNPTiAiIiwgMTIyOTcsIDcsIDExLCAxOCwgMjAsIFdTX1ZJU0lCTEUKIExURVhUICJXcGlzeiBuYXp36iBwcm9ncmFtdSwga2F0YWxvZ3UsIGRva3VtZW50dSwgYSBXaW5lIG90d29yenkgZ28gZGxhIGNpZWJpZS4iLCAxMjI4OSwgMzYsIDExLCAxODIsIDE4CiBMVEVYVCAiJk90d/NyejoiLCAxMjMwNSwgNywgMzksIDI0LCAxMAogQ09OVFJPTCAiIiwgMTIyOTgsICJDT01CT0JPWCIsIFdTX1RBQlNUT1AgfCBXU19HUk9VUCB8IFdTX1ZTQ1JPTEwgfCBXU19WSVNJQkxFIHwgQ0JTX0RJU0FCTEVOT1NDUk9MTCB8IENCU19BVVRPSFNDUk9MTCB8IENCU19EUk9QRE9XTiwgMzYsIDM3LCAxODMsIDEwMAogREVGUFVTSEJVVFRPTiAiT0siLCBJRE9LLCA2MiwgNjMsIDUwLCAxNCwgV1NfVEFCU1RPUAogUFVTSEJVVFRPTiAiQW51bHVqIiwgSURDQU5DRUwsIDExNiwgNjMsIDUwLCAxNCwgV1NfVEFCU1RPUAogUFVTSEJVVFRPTiAiJlByemVnbLlkYWouLi4iLCAxMjI4OCwgMTcwLCA2MywgNTAsIDE0LCBXU19UQUJTVE9QCn0KClNUUklOR1RBQkxFIERJU0NBUkRBQkxFCnsKICAgICAgICAvKiBjb2x1bW5zIGluIHRoZSBzaGVsbHZpZXcgKi8KCUlEU19TSFZfQ09MVU1OMQkJIlBsaWsiCglJRFNfU0hWX0NPTFVNTjIJCSJXaWVsa2+c5iIKCUlEU19TSFZfQ09MVU1OMwkJIlR5cCIKCUlEU19TSFZfQ09MVU1ONAkJIk1vZHlmaWthY2phIgoJSURTX1NIVl9DT0xVTU41CQkiQXRyeWJ1dHkiCglJRFNfU0hWX0NPTFVNTjYJCSJXaWVsa2+c5iIKCUlEU19TSFZfQ09MVU1ONwkJIkRvc3TqcG5hIHdpZWxrb5zmIgoJSURTX1NIVl9DT0xVTU44CQkiTmF6d2EiCglJRFNfU0hWX0NPTFVNTjkJCSJLb21lbnRhcnoiCglJRFNfU0hWX0NPTFVNTjEwICAgICAgICAiV7NhnGNpY2llbCIKCUlEU19TSFZfQ09MVU1OMTEgICAgICAgICJHcnVwYSIKCUlEU19TSFZfQ09MVU1OX0RFTEZST00JIkxva2FjamEgb3J5Z2luYWxuYSIKCUlEU19TSFZfQ09MVU1OX0RFTERBVEUJIkRhdGEgdXN1bmnqY2lhIgoKICAgICAgICAvKiBzcGVjaWFsIGZvbGRlcnMgKi8KCUlEU19ERVNLVE9QCQkiUHVscGl0IgoJSURTX01ZQ09NUFVURVIJCSJN82oga29tcHV0ZXIiCglJRFNfUkVDWUNMRUJJTl9GT0xERVJfTkFNRQkiS29zeiIKCgkvKiBjb250ZXh0IG1lbnVzICovCglJRFNfVklFV19MQVJHRQkJIiZEdb9lIElrb255IgoJSURTX1ZJRVdfU01BTEwJCSImTWGzZSBJa29ueSIKCUlEU19WSUVXX0xJU1QJCSImTGlzdGEiCglJRFNfVklFV19ERVRBSUxTCSImU3pjemVn87N5IgoJSURTX1NFTEVDVAkJIlphem5hY3oiCglJRFNfT1BFTgkJIk90d/NyeiIKCglJRFNfQ1JFQVRFRk9MREVSX0RFTklFRCAiTmllIG1vZ+ogdXR3b3J6eeYgbm93ZWdvIGthdGFsb2d1OiBCcmFrIGRvc3TqcHUuIgoJSURTX0NSRUFURUZPTERFUl9DQVBUSU9OICJCs7lkIHByenkgdHdvcnplbml1IG5vd2VnbyBrYXRhbG9ndS4iCglJRFNfREVMRVRFSVRFTV9DQVBUSU9OICJQb3R3aWVyZJ8gdXN1bmnqY2lhIHBsaWt1IgoJSURTX0RFTEVURUZPTERFUl9DQVBUSU9OICJQb3R3aWVyZJ8gdXN1bmnqY2llIGthdGFsb2d1IgoJSURTX0RFTEVURUlURU1fVEVYVCAiQ3p5IGplc3RlnCBwZXdpZW4sIL9lIGNoY2VzeiB1c3VuueYgJyUxJz8iCglJRFNfREVMRVRFTVVMVElQTEVfVEVYVCAiQ3p5IGplc3RlnCBwZXdpZW4sIL9lIGNoY2VzeiB1c3VuueYgdGUgJTEgcGxpa2k/IgoJSURTX0RFTEVURVNFTEVDVEVEX1RFWFQgIkN6eSBqZXN0ZZwgcGV3aWVuLCC/ZSBjaGNlc3ogdXN1brnmIHd5YnJhbmUgZWxlbWVudHk/IgoJSURTX1RSQVNISVRFTV9URVhUICJDenkgamVzdGWcIHBld2llbiwgv2UgY2hjZXN6IHVtaWWcY2nmIHBsaWsgJyUxJyB3IEtvc3p1PyIKCUlEU19UUkFTSEZPTERFUl9URVhUICJDenkgamVzdGWcIHBld2llbiwgv2UgY2hjZXN6IHVtaWWcY2nmIGZvbGRlciAnJTEnIGkgY2GzuSBqZWdvIHphd2FydG+c5iB3IGtvc3p1IgoJSURTX1RSQVNITVVMVElQTEVfVEVYVCAiRWxlbWVudPN3OiAlMSAtIGN6eSBuYSBwZXdubyBjaGNlc3ogamUgdW1pZZxjaeYgdyBLb3N6dT8iCglJRFNfQ0FOVFRSQVNIX1RFWFQgIk5pZSBtb2fqIHByemVuaWWc5iBlbGVtZW50dSAnJTEnIGRvIEtvc3phLiBDenkgY2hjZXN6IGdvIHphbWlhc3QgdGVnbyB1c3VuueY/IgoJSURTX09WRVJXUklURUZJTEVfVEVYVCAiVGVuIGZvbGRlciBqdb8gemF3aWVyYSBwbGlrIG8gbmF6d2llICclMScuXG5cbkN6eSBjaGNlc3ogZ28gemFzdLlwaeY/IgoJSURTX09WRVJXUklURUZJTEVfQ0FQVElPTiAiUG90d2llcmSfIHphc3S5cGllbmllIHBsaWt1IgoJSURTX09WRVJXUklURUZPTERFUl9URVhUICJUZW4gZm9sZGVyIGp1vyB6YXdpZXJhIGZvbGRlciBvIG5hendpZSAnJTEnLlxuXG4iXAoJICAgICJKZb9lbGkgdyBkb2NlbG93eW0gZm9sZGVyemUgd3lzdLlwabkgcGxpa2kgbyB0YWtpY2ggc2FteWNoIG5hendhY2ggamFrXG4iXAoJICAgICJ3IHd5YnJhbnltIGZvbGRlcnplLCB0byB6b3N0YW65IG9uZSB6YXN0uXBpb25lLiBDenkgY2hjZXN6IG1pbW8gdG8gcHJ6ZW5pZZzmXG4iXAoJICAgICJsdWIgc2tvcGlvd2HmIGZvbGRlcj8iCgogICAgICAgIC8qIG1lc3NhZ2UgYm94IHN0cmluZ3MgKi8KICAgICAgICBJRFNfUkVTVEFSVF9USVRMRSAgICAgICAiVXJ1Y2hvbSBwb25vd25pZSIKICAgICAgICBJRFNfUkVTVEFSVF9QUk9NUFQgICAgICAiQ3p5IGNoY2VzeiB6YXN5bXVsb3dh5iB6cmVzdGFydG93YW5pZSBXaW5kb3dzYT8iCiAgICAgICAgSURTX1NIVVRET1dOX1RJVExFICAgICAgIld5s7ljeiIKICAgICAgICBJRFNfU0hVVERPV05fUFJPTVBUICAgICAiQ3p5IGNoY2VzeiB3ebO5Y3p55iBzZXNq6iBXaW5lJ2E/IgoKICAgICAgICAvKiBzaGVsbCBmb2xkZXIgcGF0aCBkZWZhdWx0IHZhbHVlcyAqLwoJSURTX1BST0dSQU1TICAgICAgICAgICAgICAgICJNZW51IFN0YXJ0XFxQcm9ncmFteSIKCUlEU19QRVJTT05BTCAgICAgICAgICAgICAgICAiTW9qZSBkb2t1bWVudHkiCglJRFNfRkFWT1JJVEVTICAgICAgICAgICAgICAgIlVsdWJpb25lIgoJSURTX1NUQVJUVVAgICAgICAgICAgICAgICAgICJNZW51IFN0YXJ0XFxQcm9ncmFteVxcQXV0b1N0YXJ0IgoJSURTX1JFQ0VOVCAgICAgICAgICAgICAgICAgICJSZWNlbnQiCglJRFNfU0VORFRPICAgICAgICAgICAgICAgICAgIlNlbmRUbyIKCUlEU19TVEFSVE1FTlUgICAgICAgICAgICAgICAiTWVudSBTdGFydCIKCUlEU19NWU1VU0lDICAgICAgICAgICAgICAgICAiTW9qYSBtdXp5a2EiCglJRFNfTVlWSURFTyAgICAgICAgICAgICAgICAgIk1vamUgd2lkZW8iCglJRFNfREVTS1RPUERJUkVDVE9SWSAgICAgICAgIlB1bHBpdCIKCUlEU19ORVRIT09EICAgICAgICAgICAgICAgICAiTmV0SG9vZCIKCUlEU19URU1QTEFURVMgICAgICAgICAgICAgICAiU3phYmxvbnkiCglJRFNfQVBQREFUQSAgICAgICAgICAgICAgICAgIkRhbmUgYXBsaWthY2ppIgoJSURTX1BSSU5USE9PRCAgICAgICAgICAgICAgICJQcmludEhvb2QiCglJRFNfTE9DQUxfQVBQREFUQSAgICAgICAgICAgIlVzdGF3aWVuaWEgbG9rYWxuZVxcRGFuZSBhcGxpa2FjamkiCglJRFNfSU5URVJORVRfQ0FDSEUgICAgICAgICAgIlVzdGF3aWVuaWEgbG9rYWxuZVxcVGVtcG9yYXJ5IEludGVybmV0IEZpbGVzIgoJSURTX0NPT0tJRVMgICAgICAgICAgICAgICAgICJDb29raWVzIgoJSURTX0hJU1RPUlkgICAgICAgICAgICAgICAgICJVc3Rhd2llbmlhIExva2FsbmVcXEhpc3RvcmlhIgoJSURTX1BST0dSQU1fRklMRVMgICAgICAgICAgICJQcm9ncmFtIEZpbGVzIgoJSURTX01ZUElDVFVSRVMgICAgICAgICAgICAgICJNb2plIG9icmF6eSIKCUlEU19QUk9HUkFNX0ZJTEVTX0NPTU1PTiAgICAiUHJvZ3JhbSBGaWxlc1xcQ29tbW9uIEZpbGVzIgoJSURTX0NPTU1PTl9ET0NVTUVOVFMgICAgICAgICJEb2t1bWVudHkiCglJRFNfQURNSU5UT09MUyAgICAgICAgICAgICAgIk1lbnUgU3RhcnRcXFByb2dyYW15XFxOYXJ66mR6aWEgYWRtaW5pc3RyYWN5am5lIgoJSURTX0NPTU1PTl9NVVNJQyAgICAgICAgICAgICJEb2N1bWVudHlcXE1vamEgbXV6eWthIgoJSURTX0NPTU1PTl9QSUNUVVJFUyAgICAgICAgICJEb2N1bWVudHlcXE1vamUgb2JyYXp5IgoJSURTX0NPTU1PTl9WSURFTyAgICAgICAgICAgICJEb2N1bWVudHlcXE1vamUgd2lkZW8iCglJRFNfQ0RCVVJOX0FSRUEgICAgICAgICAgICAgIlVzdGF3aWVuaWEgbG9rYWxuZVxcRGFuZSBhcGxpa2FjamlcXE1pY3Jvc29mdFxcTmFncnl3YW5pZSBkeXNr83cgQ0QiCgoJSURTX05FV0ZPTERFUgkJIk5ldyBGb2xkZXIiCn0K