LyoKICogUG9ydHVndWVzZSBMYW5ndWFnZSBGaWxlCiAqCiAqIENvcHlyaWdodCAyMDA4IFJpY2FyZG8gRmlsaXBlCiAqCiAqIFRoaXMgbGlicmFyeSBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IKICogbW9kaWZ5IGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIExlc3NlciBHZW5lcmFsIFB1YmxpYwogKiBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieSB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uOyBlaXRoZXIKICogdmVyc2lvbiAyLjEgb2YgdGhlIExpY2Vuc2UsIG9yIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCiAqCiAqIFRoaXMgbGlicmFyeSBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAogKiBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZgogKiBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlIEdOVQogKiBMZXNzZXIgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLgogKgogKiBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgTGVzc2VyIEdlbmVyYWwgUHVibGljCiAqIExpY2Vuc2UgYWxvbmcgd2l0aCB0aGlzIGxpYnJhcnk7IGlmIG5vdCwgd3JpdGUgdG8gdGhlIEZyZWUgU29mdHdhcmUKICogRm91bmRhdGlvbiwgSW5jLiwgNTEgRnJhbmtsaW4gU3QsIEZpZnRoIEZsb29yLCBCb3N0b24sIE1BIDAyMTEwLTEzMDEsIFVTQQogKi8KCkxBTkdVQUdFIExBTkdfUE9SVFVHVUVTRSwgU1VCTEFOR19ORVVUUkFMCgpJRE1fTUFJTk1FTlUgTUVOVSBESVNDQVJEQUJMRQpCRUdJTgogICAgUE9QVVAgIiZGaWNoZWlybyIKICAgIEJFR0lOCiAgICAgICAgTUVOVUlURU0gIiZOb3ZvLi4uXHRDdHJsK04iLCAgICAgICBJRF9GSUxFX05FVwogICAgICAgIE1FTlVJVEVNICImQWJyaXIuLi5cdEN0cmwrTyIsICAgICAgSURfRklMRV9PUEVOCiAgICAgICAgTUVOVUlURU0gIiZHdWFyZGFyXHRDdHJsK1MiLCAgICAgICAgIElEX0ZJTEVfU0FWRQogICAgICAgIE1FTlVJVEVNICJHdWFyZGFyICZjb21vLi4uIiwgICAgICAgICAgIElEX0ZJTEVfU0FWRUFTCiAgICAgICAgTUVOVUlURU0gU0VQQVJBVE9SCiAgICAgICAgTUVOVUlURU0gIiZJbXByaW1pci4uLlx0Q3RybCtQIiwgICAgIElEX1BSSU5UCiAgICAgICAgTUVOVUlURU0gIiZQcukgdmlzdWFsaXphci4uLiIsICAgICBJRF9QUkVWSUVXCiAgICAgICAgTUVOVUlURU0gIkMmb25maWd1cmFyIHDhZ2luYS4uLiIsICAgICAgICBJRF9QUklOVFNFVFVQCiAgICAgICAgTUVOVUlURU0gU0VQQVJBVE9SCiAgICAgICAgTUVOVUlURU0gIiZTYWlyIiwgICAgICAgICAgICAgICAgIElEX0ZJTEVfRVhJVAogICAgRU5ECiAgICBQT1BVUCAiJkVkaXRhciIKICAgIEJFR0lOCiAgICAgICAgTUVOVUlURU0gIiZBbnVsYXJcdEN0cmwrWiIsICAgICAgICAgICAgICAgSURfRURJVF9VTkRPCiAgICAgICAgTUVOVUlURU0gIiZSZWZhemVyXHRDdHJsK1kiLCAgICAgICAgICAgICAgIElEX0VESVRfUkVETwogICAgICAgIE1FTlVJVEVNIFNFUEFSQVRPUgogICAgICAgIE1FTlVJVEVNICImQ29ydGFyXHRDdHJsK1giLCAgICAgICAgICAgICAgICBJRF9FRElUX0NVVAogICAgICAgIE1FTlVJVEVNICJDJm9waWFyXHRDdHJsK0MiLCAgICAgICAgICAgICAgIElEX0VESVRfQ09QWQogICAgICAgIE1FTlVJVEVNICJDb2wmYXJcdEN0cmwrViIsICAgICAgICAgICAgICBJRF9FRElUX1BBU1RFCiAgICAgICAgTUVOVUlURU0gIiZMaW1wYXJcdERFTCIsICAgICAgICAgICAgICAgICBJRF9FRElUX0NMRUFSCiAgICAgICAgTUVOVUlURU0gIiZTZWxlY2Npb25hciB0dWRvXHRDdHJsK0EiLCAgICAgICAgIElEX0VESVRfU0VMRUNUQUxMCiAgICAgICAgTUVOVUlURU0gU0VQQVJBVE9SCiAgICAgICAgTUVOVUlURU0gIkxvY2FsJml6YXIuLi5cdENydGwrRiIsICAgICAgICAgICAgSURfRklORAogICAgICAgIE1FTlVJVEVNICImRW5jb250cmFyIFNlZ3VpbnRlXHRGMyIsICAgICAgICAgICAgICBJRF9GSU5EX05FWFQKICAgICAgICBNRU5VSVRFTSAiJlN1YnN0aXR1aXIuLi5cdEN0cmwrSCIsICAgICAgICAgSURfUkVQTEFDRQogICAgICAgIE1FTlVJVEVNIFNFUEFSQVRPUgogICAgICAgIE1FTlVJVEVNICJTb21lJm50ZSBsZWl0dXJhIiwgICAgICAgICAgICAgICAgICBJRF9FRElUX1JFQURPTkxZCiAgICAgICAgTUVOVUlURU0gIiZNb2RpZmljYWRvIiwgICAgICAgICAgICAgICAgICAgSURfRURJVF9NT0RJRklFRAogICAgICAgIE1FTlVJVEVNIFNFUEFSQVRPUgogICAgICAgIFBPUFVQICJFJnh0cmFzIgogICAgICAgIEJFR0lOCiAgICAgICAgICAgIE1FTlVJVEVNICImSW5mb3JtYefjbyBkYSBzZWxlY+fjbyIsICAgICAgICAgICAgIElEX0VESVRfU0VMRUNUSU9OSU5GTwogICAgICAgICAgICBNRU5VSVRFTSAiJkZvcm1hdG8gZG9zIGNhcmFjdGVyZXMiLCAgICAgICAgICAgSURfRURJVF9DSEFSRk9STUFUCiAgICAgICAgICAgIE1FTlVJVEVNICImRGVmaW5pciBmb3JtYXRvIGRvcyBjYXJhY3RlcmVzIiwgICAgICAgICAgIElEX0VESVRfREVGQ0hBUkZPUk1BVAogICAgICAgICAgICBNRU5VSVRFTSAiRiZvcm1hdG8gZG9zIHBhcuFncmFmb3MiLCAgICAgICAgICAgSURfRURJVF9QQVJBRk9STUFUCiAgICAgICAgICAgIE1FTlVJVEVNICImQnVzY2FyIHRleHRvIiwgICAgICAgICAgICAgICAgICAgSURfRURJVF9HRVRURVhUCiAgICAgICAgRU5ECiAgICBFTkQKICAgIFBPUFVQICImVmVyIgogICAgQkVHSU4KICAgICAgICBNRU5VSVRFTSAiJkJhcnJhIGRlIEZlcnJhbWVudGFzIiwgICAgICAgIElEX1RPR0dMRV9UT09MQkFSCiAgICAgICAgTUVOVUlURU0gIkJhcnJhIGRlICZGb3JtYXRh5+NvIiwgICAgICBJRF9UT0dHTEVfRk9STUFUQkFSCiAgICAgICAgTUVOVUlURU0gIiZS6Wd1YSIsICAgICAgICAgIElEX1RPR0dMRV9SVUxFUgogICAgICAgIE1FTlVJVEVNICJCYXJyYSBkZSAmRXN0YWRvIiwgICAgICBJRF9UT0dHTEVfU1RBVFVTQkFSCiAgICAgICAgTUVOVUlURU0gU0VQQVJBVE9SCiAgICAgICAgTUVOVUlURU0gIiZPcOf1ZXMuLi4iLCAgICAgSURfVklFV1BST1BFUlRJRVMKICAgIEVORAogICAgUE9QVVAgIiZJbnNlcmlyIgogICAgQkVHSU4KICAgICAgICBNRU5VSVRFTSAiJkRhdGEgZSBob3JhLi4uIiwgIElEX0RBVEVUSU1FCiAgICBFTkQKICAgIFBPUFVQICJGJm9ybWF0byIKICAgIEJFR0lOCiAgICAgICAgTUVOVUlURU0gIiZUaXBvIGRlIExldHJhLi4uIiwgICAgICAgICAgICAgICAgICAgICBJRF9GT05UU0VUVElOR1MKICAgICAgICBNRU5VSVRFTSAiJkxpc3RhIGRlIG1hcmNhcyIgICAgICAgICAgICAgICAgSURfQlVMTEVUCiAgICAgICAgTUVOVUlURU0gIiZQYXLhZ3JhZm8uLi4iICAgICAgICAgICAgICAgICBJRF9QQVJBRk9STUFUCiAgICAgICAgTUVOVUlURU0gIlQmYWJ1bGHn9WVzLi4uIiAgICAgICAgICAgICAgICAgICAgICBJRF9UQUJTVE9QUwogICAgICAgIFBPUFVQICImRnVuZG8iCiAgICAgICAgQkVHSU4KICAgICAgICAgICAgTUVOVUlURU0gIiZTaXN0ZW1hXHRDdHJsKzEiLCAgICAgICAgIElEX0JBQ0tfMQogICAgICAgICAgICBNRU5VSVRFTSAiJlBvc3RUaGF0IGFtYXJlbG9cdEN0cmwrMiIsICAgICAgICAgICBJRF9CQUNLXzIKICAgICAgICBFTkQKICAgIEVORAogICAgUE9QVVAgIiZBanVkYSIKICAgIEJFR0lOCiAgICAgICAgTUVOVUlURU0gIiZTb2JyZSBXaW5lIFdvcmRwYWQiICAgICAgIElEX0FCT1VUCiAgICBFTkQKRU5ECgpJRE1fUE9QVVAgTUVOVSBESVNDQVJEQUJMRQpCRUdJTgogICAgUE9QVVAgIiIKICAgIEJFR0lOCiAgICAgICAgTUVOVUlURU0gIiZDb3J0YXIiLCAgICAgICAgICAgICAgICBJRF9FRElUX0NVVAogICAgICAgIE1FTlVJVEVNICJDJm9waWFyIiwgICAgICAgICAgICAgICBJRF9FRElUX0NPUFkKICAgICAgICBNRU5VSVRFTSAiQ28mbGFyIiwgICAgICAgICAgICAgIElEX0VESVRfUEFTVEUKICAgICAgICBNRU5VSVRFTSBTRVBBUkFUT1IKICAgICAgICBNRU5VSVRFTSAiJkxpc3RhIGRlIG1hcmNhcyIgICAgICAgSURfQlVMTEVUCiAgICAgICAgTUVOVUlURU0gIiZQYXLhZ3JhZm8uLi4iICAgICAgICBJRF9QQVJBRk9STUFUCiAgICBFTkQKRU5ECgpJRERfREFURVRJTUUgRElBTE9HIERJU0NBUkRBQkxFIDMwLCAyMCwgMTMwLCA4MApTVFlMRSBEU19NT0RBTEZSQU1FIHwgV1NfQ0FQVElPTiB8IFdTX1NZU01FTlUKQ0FQVElPTiAiRGF0YSBlIGhvcmEiCkZPTlQgMTAsICJNUyBTYW5zIFNlcmlmIgpCRUdJTgogICAgTFRFWFQgICAgICAgICJGb3JtYXRvcyBEaXNwb27tdmVpcyIsLTEsMywyLDEwMCwxNQogICAgTElTVEJPWCAgICAgIElEQ19EQVRFVElNRSwzLDEyLDgwLDY1LExCU19OT0lOVEVHUkFMSEVJR0hUIHwgTEJTX05PVElGWQogICAgUFVTSEJVVFRPTiAgICImT0siLElET0ssODcsMTIsNDAsMTIKICAgIFBVU0hCVVRUT04gICAiJkNhbmNlbGFyIixJRENBTkNFTCw4NywyNiw0MCwxMgpFTkQKCklERF9ORVdGSUxFIERJQUxPRyBESVNDQVJEQUJMRSAzMCwgMjAsIDE0MCwgODAKU1RZTEUgRFNfTU9EQUxGUkFNRSB8IFdTX0NBUFRJT04gfCBXU19TWVNNRU5VCkNBUFRJT04gIk5vdm8iCkZPTlQgMTAsICJNUyBTYW5zIFNlcmlmIgpCRUdJTgogICAgTFRFWFQgICAgICAgICJOb3ZvIHRpcG8gZGUgZG9jdW1lbnRvIiwtMSwzLDIsMTAwLDE1CiAgICBMSVNUQk9YICAgICAgSURDX05FV0ZJTEUsMywxMiw5MCw2NSxMQlNfTk9JTlRFR1JBTEhFSUdIVAogICAgUFVTSEJVVFRPTiAgICImT0siLElET0ssOTcsMTIsNDAsMTIKICAgIFBVU0hCVVRUT04gICAiJkNhbmNlbGFyIixJRENBTkNFTCw5NywyNiw0MCwxMgpFTkQKCklERF9QQVJBRk9STUFUIERJQUxPRyBESVNDQVJEQUJMRSAzMCwgMjAsIDIwMCwgMTEwClNUWUxFIERTX01PREFMRlJBTUUgfCBXU19DQVBUSU9OIHwgV1NfU1lTTUVOVQpDYXB0aW9uICJQYXLhZ3JhZm8iCkZPTlQgOCwgIk1TIFNoZWxsIERsZyIKQkVHSU4KICAgIEdST1VQQk9YICJJZGVudGHn428iLCAtMSwgMTAsIDEwLCAxMjAsIDY4CiAgICBMVEVYVCAiRXNxdWVyZGEiLCAtMSwgMTUsIDIyLCA0MCwgMTMKICAgIEVESVRURVhUIElEQ19QQVJBX0xFRlQsIDU1LCAyMCwgNjAsIDEzCiAgICBMVEVYVCAiRGlyZWl0YSIsIC0xLCAxNSwgNDAsIDQwLCAxMwogICAgRURJVFRFWFQgSURDX1BBUkFfUklHSFQsIDU1LCAzOCwgNjAsIDEzCiAgICBMVEVYVCAiUHJpbWVpcmEgTGluaGEiLCAtMSwgMTUsIDU4LCA0MCwgMTMKICAgIEVESVRURVhUIElEQ19QQVJBX0ZJUlNULCA1NSwgNTYsIDYwLCAxMwogICAgTFRFWFQgIkFsaW5oYW1lbnRvIiwgLTEsIDE1LCA4NywgNDAsIDEzCiAgICBDT01CT0JPWCBJRENfUEFSQV9BTElHTiwgNTUsIDg1LCA2MCwgNjAsIENCU19EUk9QRE9XTkxJU1QKICAgIFBVU0hCVVRUT04gIiZPSyIsIElET0ssIDEzNywgMTUsIDUwLCAxNQogICAgUFVTSEJVVFRPTiAiJkNhbmNlbGFyIiwgSURDQU5DRUwsIDEzNywgMzMsIDUwLCAxNQpFTkQKCklERF9UQUJTVE9QUyBESUFMT0cgRElTQ0FSREFCTEUgMzAsIDIwLCAyMDAsIDExMApTVFlMRSBEU19NT0RBTEZSQU1FIHwgV1NfQ0FQVElPTiB8IFdTX1NZU01FTlUKQ2FwdGlvbiAiVGFidWxh5/VlcyIKRk9OVCA4LCAiTVMgU0hlbGwgRExnIgpCRUdJTgogICAgR1JPVVBCT1ggIk1hcmNhIGRlIHRhYnVsYefjbyIsIC0xLCAxMCwgMTAsIDEyMCwgOTAKICAgIENPTUJPQk9YIElEQ19UQUJTVE9QUywgMjAsIDIwLCAxMDAsIDYwLCBDQlNfU0lNUExFCiAgICBERUZQVVNIQlVUVE9OICImQWRpY2lvbmFyIiwgSURfVEFCX0FERCwgMjAsIDgwLCA0NSwgMTUKICAgIFBVU0hCVVRUT04gIiZSZW1vdmVyIiwgSURfVEFCX0RFTCwgNzIsIDgwLCA0NSwgMTUKICAgIFBVU0hCVVRUT04gIiZPSyIsIElET0ssIDEzNSwgMTUsIDU1LCAxNQogICAgUFVTSEJVVFRPTiAiJkNhbmNlbGFyIiwgSURDQU5DRUwsIDEzNSwgMzMsIDU1LCAxNQogICAgUFVTSEJVVFRPTiAiUmVtb3ZlciAmdG9kb3MiLCBJRF9UQUJfRU1QVFksIDEzNSwgNTEsIDU1LCAxNQpFTkQKCklERF9GT1JNQVRPUFRTIERJQUxPRyBESVNDQVJEQUJMRSAwLCAwLCAyODAsIDExMApTVFlMRSBEU19TWVNNT0RBTApDYXB0aW9uICIiCkZPTlQgOCwgIk1TIFNoZWxsIERsZyIKQkVHSU4KICAgIEdST1VQQk9YICJNb2xkYXIgbyB0ZXh0byIsIC0xLCAxMCwgMTAsIDEzMCwgODUKICAgIFJBRElPQlVUVE9OICImU2VtIG1vbGRhZ2VtIiwgSURDX1BBR0VGTVRfV04sIDE4LCAyNSwgMTE3LCAxNQogICAgUkFESU9CVVRUT04gIiZNb2xkYXIg4CBqYW5lbGEiLCBJRENfUEFHRUZNVF9XVywgMTgsIDQ1LCAxMTcsIDE1CiAgICBSQURJT0JVVFRPTiAiTW9sZGFyIHBlbGEgJnLpZ3VhIiwgSURDX1BBR0VGTVRfV00sIDE4LCA2NSwgMTE3LCAxNQogICAgR1JPVVBCT1ggIkJhcnJhcyBkZSBGZXJyYW1lbnRhcyIsIC0xLCAxNTAsIDEwLCAxMjAsIDg1CiAgICBDSEVDS0JPWCAiJkJhcnJhIGRlIEZlcnJhbWVudGFzIiwgSURDX1BBR0VGTVRfVEIsIDE2MCwgMjAsIDkwLCAxNQogICAgQ0hFQ0tCT1ggIkJhcnJhIGRlICZGb3JtYXRh5+NvIiwgSURDX1BBR0VGTVRfRkIsIDE2MCwgMzgsIDkwLCAxNQogICAgQ0hFQ0tCT1ggIiZS6Wd1YSIsIElEQ19QQUdFRk1UX1JVLCAxNjAsIDU2LCA5MCwgMTUKICAgIENIRUNLQk9YICJCYXJyYSBkZSAmRXN0YWRvIiwgSURDX1BBR0VGTVRfU0IsIDE2MCwgNzQsIDkwLCAxNQogICAgTFRFWFQgIiIsIElEQ19QQUdFRk1UX0lELCAwLDAsMCwwCkVORAoKU1RSSU5HVEFCTEUgRElTQ0FSREFCTEUKQkVHSU4KICAgIFNUUklOR19SSUNIVEVYVF9GSUxFU19SVEYsICAgICAiUmljaCB0ZXh0IGZvcm1hdCAoKi5ydGYpIgogICAgU1RSSU5HX1RFWFRfRklMRVNfVFhULCAgICAgICAgICJEb2N1bWVudG9zIGRlIHRleHRvICgqLnR4dCkiCiAgICBTVFJJTkdfVEVYVF9GSUxFU19VTklDT0RFX1RYVCwgIkRvY3VtZW50b3MgZGUgdGV4dG8gVW5pY29kZSAoKi50eHQpIgogICAgU1RSSU5HX0FMTF9GSUxFUywgICAgICAgICAgICAgICJUb2RvcyBvcyBkb2N1bWVudG9zICgqLiopIgpFTkQKClNUUklOR1RBQkxFIERJU0NBUkRBQkxFCkJFR0lOCiAgICBTVFJJTkdfQUxJR05fTEVGVCwgICAgICAgICAgICAiRXNxdWVyZGEiCiAgICBTVFJJTkdfQUxJR05fUklHSFQsICAgICAgICAgICAiRGlyZWl0YSIKICAgIFNUUklOR19BTElHTl9DRU5URVIsICAgICAgICAgICJDZW50cm8iCkVORAoKU1RSSU5HVEFCTEUgRElTQ0FSREFCTEUKQkVHSU4KICAgIFNUUklOR19ORVdGSUxFX1JJQ0hURVhULCAgICAgIlJpY2ggdGV4dCBkb2N1bWVudCIKICAgIFNUUklOR19ORVdGSUxFX1RYVCwgICAgICAgICAgIkRvY3VtZW50byBkZSB0ZXh0byIKICAgIFNUUklOR19ORVdGSUxFX1RYVF9VTklDT0RFLCAgIkRvY3VtZW50byBkZSB0ZXh0byBVbmljb2RlIgpFTkQKClNUUklOR1RBQkxFIERJU0NBUkRBQkxFCkJFR0lOCiAgICBTVFJJTkdfUFJJTlRFUl9GSUxFU19QUk4sICAgICAgICAiRmljaGVpcm9zIGRlIGltcHJlc3NvcmEgKCouUFJOKSIKRU5ECgpTVFJJTkdUQUJMRSBESVNDQVJEQUJMRQpCRUdJTgogICAgU1RSSU5HX1ZJRVdQUk9QU19USVRMRSwgICAgICAgICAgIk9w5/VlcyIKICAgIFNUUklOR19WSUVXUFJPUFNfVEVYVCwgICAgICAgICAgICJUZXh0byIKICAgIFNUUklOR19WSUVXUFJPUFNfUklDSFRFWFQsICAgICAgICJSaWNoIHRleHQiCkVORAoKU1RSSU5HVEFCTEUgRElTQ0FSREFCTEUKQkVHSU4KICAgIFNUUklOR19QUkVWSUVXX1BSSU5ULCAgICAgICAgICAgICJJbXByaW1pciIKICAgIFNUUklOR19QUkVWSUVXX05FWFRQQUdFLCAgICAgICAgICJQcvN4aW1hIHDhZ2luYSIKICAgIFNUUklOR19QUkVWSUVXX1BSRVZQQUdFLCAgICAgICAgICJQ4WdpbmEgYW50ZXJpb3IiCiAgICBTVFJJTkdfUFJFVklFV19UV09QQUdFUywgICAgICAgICAiRHVhcyBw4WdpbmFzIgogICAgU1RSSU5HX1BSRVZJRVdfT05FUEFHRSwgICAgICAgICAgIlVtYSBw4WdpbmEiCiAgICBTVFJJTkdfUFJFVklFV19DTE9TRSwgICAgICAgICAgICAiRmVjaGFyIgpFTkQKClNUUklOR1RBQkxFIERJU0NBUkRBQkxFCkJFR0lOCiAgICBTVFJJTkdfVU5JVFNfQ00sICAgICAgICAgICAgICJjbSIKRU5ECgpTVFJJTkdUQUJMRSBESVNDQVJEQUJMRQpCRUdJTgogICAgU1RSSU5HX0RFRkFVTFRfRklMRU5BTUUsICAgICAiRG9jdW1lbnRvIgogICAgU1RSSU5HX1BST01QVF9TQVZFX0NIQU5HRVMsICAiR3VhcmRhciBhbHRlcmHn9WVzIGEgJyVzJz8iCiAgICBTVFJJTkdfU0VBUkNIX0ZJTklTSEVELCAgICAgICJBY2Fib3UgYSBwZXNxdWlzYSBkbyBkb2N1bWVudG8uIgogICAgU1RSSU5HX0xPQURfUklDSEVEX0ZBSUxFRCwgICAiRmFsaG91IG8gY2FycmVnYW1lbnRvIGRhIGJpYmxpb3RlY2EgUmljaEVkaXQuIgogICAgU1RSSU5HX1NBVkVfTE9TRUZPUk1BVFRJTkcsICAiRXNjb2xoZXUgZ3VhcmRhciBlbSBmb3JtYXRvIGRlIHRleHRvIHNpbXBsZXMsICIgXAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAibyBxdWUgdmFpIGFudWxhciB0b2RhcyBhcyBmb3JtYXRh5/Vlcy4gIiBcCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJUZW0gYSBjZXJ0ZXphIHF1ZSBxdWVyIGZhemVyIGlzdG8/IgogICAgU1RSSU5HX0lOVkFMSURfTlVNQkVSLCAgICAgICAiRm9ybWF0byBkZSBu+m1lcm8gaW524WxpZG8iCiAgICBTVFJJTkdfT0xFX1NUT1JBR0VfTk9UX1NVUFBPUlRFRCwgIkRvY3VtZW50b3MgT0xFIG7jbyBz428gc3Vwb3J0YWRvcyIKICAgIFNUUklOR19XUklURV9GQUlMRUQsICAgICAgICAgICAgICAiTuNvIGZvaSBwb3Nz7XZlbCBndWFyZGFyIG8gZmljaGVpcm8uIgogICAgU1RSSU5HX1dSSVRFX0FDQ0VTU19ERU5JRUQsICAgICAgICJO428gdGVtIHBlcm1pc3P1ZXMgcGFyYSBndWFyZGFyIG8gZmljaGVpcm8uIgogICAgU1RSSU5HX09QRU5fRkFJTEVELCAgICAgICAgICAgICAgICJO428gZm9pIHBvc3PtdmVsIGFicmlyIG8gZmljaGVpcm8uIgogICAgU1RSSU5HX09QRU5fQUNDRVNTX0RFTklFRCwgICAgICAgICJO428gdGVtIHBlcm1pc3P1ZXMgcGFyYSBhYnJpciBvIGZpY2hlaXJvLiIKICAgIFNUUklOR19QUklOVElOR19OT1RfSU1QTEVNRU5URUQsICJJbXByZXNz428gbuNvIGltcGxlbWVudGFkYSIKRU5ECg==