LyoKICogQ29weXJpZ2h0IDIwMDQgYnkgS3J6eXN6dG9mIEZvbHRtYW4KICogQ29weXJpZ2h0IDIwMDYgYnkgTWlrb2xhaiBaYWxld3NraQogKgogKiBUaGlzIGxpYnJhcnkgaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yCiAqIG1vZGlmeSBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBMZXNzZXIgR2VuZXJhbCBQdWJsaWMKICogTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkgdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbjsgZWl0aGVyCiAqIHZlcnNpb24gMi4xIG9mIHRoZSBMaWNlbnNlLCBvciAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgogKgogKiBUaGlzIGxpYnJhcnkgaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKICogYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKICogTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiAgU2VlIHRoZSBHTlUKICogTGVzc2VyIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KICoKICogWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05VIExlc3NlciBHZW5lcmFsIFB1YmxpYwogKiBMaWNlbnNlIGFsb25nIHdpdGggdGhpcyBsaWJyYXJ5OyBpZiBub3QsIHdyaXRlIHRvIHRoZSBGcmVlIFNvZnR3YXJlCiAqIEZvdW5kYXRpb24sIEluYy4sIDUxIEZyYW5rbGluIFN0LCBGaWZ0aCBGbG9vciwgQm9zdG9uLCBNQSAwMjExMC0xMzAxLCBVU0EKICovCgpMQU5HVUFHRSBMQU5HX1BPTElTSCwgU1VCTEFOR19ERUZBVUxUCgpJRE1fTUFJTk1FTlUgTUVOVSBESVNDQVJEQUJMRQpCRUdJTgogICAgUE9QVVAgIiZQbGlrIgogICAgQkVHSU4KICAgICAgICBNRU5VSVRFTSAiJk5vd3kuLi5cdEN0cmwrTiIsICAgICAgICAgICBJRF9GSUxFX05FVwogICAgICAgIE1FTlVJVEVNICImT3R383J6Li4uXHRDdHJsK08iLCAgICAgIElEX0ZJTEVfT1BFTgogICAgICAgIE1FTlVJVEVNICImWmFwaXN6XHRDdHJsK1MiLCAgICAgICAgIElEX0ZJTEVfU0FWRQogICAgICAgIE1FTlVJVEVNICJaJmFwaXN6IGpha28uLi4iLCAgICAgICAgIElEX0ZJTEVfU0FWRUFTCiAgICAgICAgTUVOVUlURU0gU0VQQVJBVE9SCiAgICAgICAgTUVOVUlURU0gIiZEcnVrdWouLi5cdEN0cmwrUCIsICAgIElEX1BSSU5UCiAgICAgICAgTUVOVUlURU0gIiZQb2RnbLlkIHd5ZHJ1a3UuLi4iLCAgICBJRF9QUkVWSUVXCiAgICAgICAgTUVOVUlURU0gIiZVc3Rhd2llbmlhIHN0cm9ueS4uLiIsICAgICAgIElEX1BSSU5UU0VUVVAKICAgICAgICBNRU5VSVRFTSBTRVBBUkFUT1IKICAgICAgICBNRU5VSVRFTSAiWmEma2/xY3oiLCAgICAgICAgIElEX0ZJTEVfRVhJVAogICAgRU5ECiAgICBQT1BVUCAiJkVkeWNqYSIKICAgIEJFR0lOCiAgICAgICAgTUVOVUlURU0gIiZDb2ZuaWpcdEN0cmwrWiIsICAgICAgICAgICAgICAgSURfRURJVF9VTkRPCiAgICAgICAgTUVOVUlURU0gIiZQb3d083J6XHRDdHJsK1kiLCAgICAgICAgICAgICAgIElEX0VESVRfUkVETwogICAgICAgIE1FTlVJVEVNIFNFUEFSQVRPUgogICAgICAgIE1FTlVJVEVNICJXeSZ0bmlqXHRDdHJsK1giLCAgICAgICAgICAgICAgICBJRF9FRElUX0NVVAogICAgICAgIE1FTlVJVEVNICImS29waXVqXHRDdHJsK0MiLCAgICAgICAgICAgICAgIElEX0VESVRfQ09QWQogICAgICAgIE1FTlVJVEVNICJXa2wmZWpcdEN0cmwrViIsICAgICAgICAgICAgICAgIElEX0VESVRfUEFTVEUKICAgICAgICBNRU5VSVRFTSAiJlVzdfFcdERlbCIsICAgICAgICAgICAgICAgICAgICBJRF9FRElUX0NMRUFSCiAgICAgICAgTUVOVUlURU0gIiZaYXpuYWN6IHdzenlzdGtvXHRDdHJsK0EiLCAgICAgICAgIElEX0VESVRfU0VMRUNUQUxMCiAgICAgICAgTUVOVUlURU0gU0VQQVJBVE9SCiAgICAgICAgTUVOVUlURU0gIlpuYWomZJ8uLi5cdENydGwrRiIsICAgICAgICAgICBJRF9GSU5ECiAgICAgICAgTUVOVUlURU0gIlombmFqZJ8gbmFzdOpwbnlcdEYzIiwgICAgICAgICAgICAgICAgSURfRklORF9ORVhUCiAgICAgICAgTUVOVUlURU0gIlphJm1pZfEuLi5cdEN0cmwrSCIsICAgICAgICBJRF9SRVBMQUNFCiAgICAgICAgTUVOVUlURU0gU0VQQVJBVE9SCiAgICAgICAgTUVOVUlURU0gIlR5bGtvIGRvICZvZGN6eXR1IiwgICAgICAgICAgICAgICAgICBJRF9FRElUX1JFQURPTkxZCiAgICAgICAgTUVOVUlURU0gIiZabW9kaWZ5a293YW55IiwgICAgICAgICAgICAgICAgICAgSURfRURJVF9NT0RJRklFRAogICAgICAgIE1FTlVJVEVNIFNFUEFSQVRPUgogICAgICAgIFBPUFVQICImRG9kYXRraSIKICAgICAgICBCRUdJTgogICAgICAgICAgICBNRU5VSVRFTSAiWmF6bmFjemVuaWUgLSAmaW5mbyIsICAgICAgICAgICAgIElEX0VESVRfU0VMRUNUSU9OSU5GTwogICAgICAgICAgICBNRU5VSVRFTSAiJkZvcm1hdCB6bmFr83ciLCAgICAgICAgICAgSURfRURJVF9DSEFSRk9STUFUCiAgICAgICAgICAgIE1FTlVJVEVNICImU3RhbmRhcmRvd3kgZm9ybWF0IHpuYWvzdyIsICAgICAgICAgICBJRF9FRElUX0RFRkNIQVJGT1JNQVQKICAgICAgICAgICAgTUVOVUlURU0gIkZvcm1hdCBha2EmcGl0dSIsICAgICAgICAgICBJRF9FRElUX1BBUkFGT1JNQVQKICAgICAgICAgICAgTUVOVUlURU0gIiZQb2JpZXJ6IHRla3N0IiwgICAgICAgICAgICAgICAgICAgSURfRURJVF9HRVRURVhUCiAgICAgICAgRU5ECiAgICBFTkQKICAgIFBPUFVQICJXaWRvJmsiCiAgICBCRUdJTgogICAgICAgIE1FTlVJVEVNICJQYXNlayAmbmFyeupkemkiLCAgICAgICAgSURfVE9HR0xFX1RPT0xCQVIKICAgICAgICBNRU5VSVRFTSAiUGFzZWsgJmZvcm1hdHUiLCAgICAgIElEX1RPR0dMRV9GT1JNQVRCQVIKICAgICAgICBNRU5VSVRFTSAiJkxpbmlqa2EiLCAgICAgICAgICBJRF9UT0dHTEVfUlVMRVIKICAgICAgICBNRU5VSVRFTSAiUGFzZWsgJnN0YW51IiwgICAgICBJRF9UT0dHTEVfU1RBVFVTQkFSCiAgICAgICAgTUVOVUlURU0gU0VQQVJBVE9SCiAgICAgICAgTUVOVUlURU0gIiZPcGNqZS4uLiIsICBJRF9WSUVXUFJPUEVSVElFUwogICAgRU5ECiAgICBQT1BVUCAiJldzdGF3IgogICAgQkVHSU4KICAgICAgICBNRU5VSVRFTSAiJkRhdGEgaSBnb2R6aW5hLi4uIiwgIElEX0RBVEVUSU1FCiAgICBFTkQKICAgIFBPUFVQICJGb3ImbWF0IgogICAgQkVHSU4KICAgICAgICBNRU5VSVRFTSAiJkN6Y2lvbmthLi4uIiwgICAgICAgICAgICAgICAgICBJRF9GT05UU0VUVElOR1MKICAgICAgICBNRU5VSVRFTSAiJld5cHVua3Rvd2FuaWUiICAgICAgICAgICAgICAgIElEX0JVTExFVAogICAgICAgIE1FTlVJVEVNICImQWthcGl0Li4uIiAgICAgICAgICAgICAgSURfUEFSQUZPUk1BVAogICAgICAgIE1FTlVJVEVNICImVGFidWxhdG9yeS4uLiIgICAgICAgICAgICAgICAgICAgSURfVEFCU1RPUFMKICAgICAgICBQT1BVUCAiVLMmbyIKICAgICAgICBCRUdJTgogICAgICAgICAgICBNRU5VSVRFTSAiJlN5c3RlbVx0Q3RybCsxIiwgICAgICAgICBJRF9CQUNLXzEKICAgICAgICAgICAgTUVOVUlURU0gIiZQb3N0VGhhdCAov/OzdHkpXHRDdHJsKzIiLCAgICAgICAgICAgSURfQkFDS18yCiAgICAgICAgRU5ECiAgICBFTkQKICAgIFBPUFVQICJQb21vJmMiCiAgICBCRUdJTgogICAgICAgIE1FTlVJVEVNICJXaW5lIFdvcmRwYWQgLSAmaW5mb3JtYWNqZSIgICAgICAgSURfQUJPVVQKICAgIEVORApFTkQKCklETV9QT1BVUCBNRU5VIERJU0NBUkRBQkxFCkJFR0lOCiAgICBQT1BVUCAiIgogICAgQkVHSU4KICAgICAgICBNRU5VSVRFTSAiV3kmdG5paiIsICAgICAgICAgICAgICBJRF9FRElUX0NVVAogICAgICAgIE1FTlVJVEVNICImS29waXVqIiwgICAgICAgICAgICAgIElEX0VESVRfQ09QWQogICAgICAgIE1FTlVJVEVNICJXa2wmZWoiLCAgICAgICAgICAgICAgIElEX0VESVRfUEFTVEUKICAgICAgICBNRU5VSVRFTSBTRVBBUkFUT1IKICAgICAgICBNRU5VSVRFTSAiJld5cHVua3Rvd2FuaWUiICAgICAgICBJRF9CVUxMRVQKICAgICAgICBNRU5VSVRFTSAiJkFrYXBpdC4uLiIgICAgICBJRF9QQVJBRk9STUFUCiAgICBFTkQKRU5ECgpJRERfREFURVRJTUUgRElBTE9HIERJU0NBUkRBQkxFIDMwLCAyMCwgMTMwLCA4MApTVFlMRSBEU19NT0RBTEZSQU1FIHwgV1NfQ0FQVElPTiB8IFdTX1NZU01FTlUKQ0FQVElPTiAiRGF0YSBpIGdvZHppbmEiCkZPTlQgMTAsICJNUyBTYW5zIFNlcmlmIgpCRUdJTgogICAgTFRFWFQgICAgICAgICJEb3N06nBuZSBmb3JtYXR5IiwwLDMsMiwxMDAsMTUKICAgIExJU1RCT1ggICAgICBJRENfREFURVRJTUUsMywxMiw4MCw2NSxMQlNfTk9JTlRFR1JBTEhFSUdIVAogICAgUFVTSEJVVFRPTiAgICImT0siLElET0ssODcsMTIsNDAsMTIKICAgIFBVU0hCVVRUT04gICAiJkFudWx1aiIsSURDQU5DRUwsODcsMjYsNDAsMTIKRU5ECgpJRERfTkVXRklMRSBESUFMT0cgRElTQ0FSREFCTEUgMzAsIDIwLCAxNDAsIDgwClNUWUxFIERTX01PREFMRlJBTUUgfCBXU19DQVBUSU9OIHwgV1NfU1lTTUVOVQpDQVBUSU9OICJOb3d5IgpGT05UIDEwLCAiTVMgU2FucyBTZXJpZiIKQkVHSU4KICAgIExURVhUICAgICAgICAiVHlwIG5vd2VnbyBkb2t1bWVudHUiLDAsMywyLDEwMCwxNQogICAgTElTVEJPWCAgICAgIElEQ19ORVdGSUxFLDMsMTIsOTAsNjUsTEJTX05PSU5URUdSQUxIRUlHSFQKICAgIFBVU0hCVVRUT04gICAiJk9LIixJRE9LLDk3LDEyLDQwLDEyCiAgICBQVVNIQlVUVE9OICAgIiZBbnVsdWoiLElEQ0FOQ0VMLDk3LDI2LDQwLDEyCkVORAoKSUREX1BBUkFGT1JNQVQgRElBTE9HIERJU0NBUkRBQkxFIDMwLCAyMCwgMjAwLCAxMTAKU1RZTEUgRFNfTU9EQUxGUkFNRSB8IFdTX0NBUFRJT04gfCBXU19TWVNNRU5VCkNhcHRpb24gIkZvcm1hdCBha2FwaXR1IgpGT05UIDgsICJNUyBTaGVsbCBEbGciCkJFR0lOCiAgICBHUk9VUEJPWCAiV2Np6mNpYSIsIDAsIDEwLCAxMCwgMTIwLCA2OAogICAgTFRFWFQgIlogbGV3ZWoiLCAwLCAxNSwgMjIsIDQwLCAxMwogICAgRURJVFRFWFQgSURDX1BBUkFfTEVGVCwgNTUsIDIwLCA2MCwgMTMKICAgIExURVhUICJaIHByYXdlaiIsIDAsIDE1LCA0MCwgNDAsIDEzCiAgICBFRElUVEVYVCBJRENfUEFSQV9SSUdIVCwgNTUsIDM4LCA2MCwgMTMKICAgIExURVhUICJQaWVyd3N6eSB3aWVyc3oiLCAwLCAxNSwgNTUsIDQwLCAxOQogICAgRURJVFRFWFQgSURDX1BBUkFfRklSU1QsIDU1LCA1NiwgNjAsIDEzCiAgICBMVEVYVCAiV3ly83duYW5pZSIsIDAsIDE1LCA4NywgNDAsIDEzCiAgICBDT01CT0JPWCBJRENfUEFSQV9BTElHTiwgNTUsIDg1LCA2MCwgNjAsIENCU19EUk9QRE9XTkxJU1QKICAgIFBVU0hCVVRUT04gIiZPSyIsIElET0ssIDEzNywgMTUsIDUwLCAxNQogICAgUFVTSEJVVFRPTiAiJkFudWx1aiIsIElEQ0FOQ0VMLCAxMzcsIDMzLCA1MCwgMTUKRU5ECgpJRERfVEFCU1RPUFMgRElBTE9HIERJU0NBUkRBQkxFIDMwLCAyMCwgMjAwLCAxMTAKU1RZTEUgRFNfTU9EQUxGUkFNRSB8IFdTX0NBUFRJT04gfCBXU19TWVNNRU5VCkNhcHRpb24gIlRhYnVsYXRvcnkiCkZPTlQgOCwgIk1TIFNoZWxsIERsZyIKQkVHSU4KICAgIEdST1VQQk9YICJQb3p5Y2plIHRhYnVsYXRvcvN3IiwgMCwgMTAsIDEwLCAxMjAsIDkwCiAgICBDT01CT0JPWCBJRENfVEFCU1RPUFMsIDIwLCAyMCwgMTAwLCA2MCwgQ0JTX1NJTVBMRSB8IENCU19TT1JUCiAgICBERUZQVVNIQlVUVE9OICImRG9kYWoiLCBJRF9UQUJfQURELCAyMCwgODAsIDQ1LCAxNQogICAgUFVTSEJVVFRPTiAiJlVzdfEiLCBJRF9UQUJfREVMLCA3MiwgODAsIDQ1LCAxNQogICAgUFVTSEJVVFRPTiAiJk9LIiwgSURPSywgMTM3LCAxNSwgNTcsIDE1CiAgICBQVVNIQlVUVE9OICImQW51bHVqIiwgSURDQU5DRUwsIDEzNywgMzMsIDU3LCAxNQogICAgUFVTSEJVVFRPTiAiVXN18SAmd3N6eXN0a2llIiwgSURfVEFCX0VNUFRZLCAxMzcsIDUxLCA1NywgMTUKRU5ECgpJRERfRk9STUFUT1BUUyBESUFMT0cgRElTQ0FSREFCTEUgMCwgMCwgMjgwLCAxMTAKU1RZTEUgRFNfU1lTTU9EQUwKQ2FwdGlvbiAiIgpGT05UIDgsICJNUyBTaGVsbCBEbGciCkJFR0lOCiAgICBHUk9VUEJPWCAiWmF3aWphbmllIHdpZXJzenkiLCAwLCAxMCwgMTAsIDEzMCwgODUKICAgIFJBRElPQlVUVE9OICJObyBsaW5lIHdyYXBwaW5nIiwgSURDX1BBR0VGTVRfV04sIDE4LCAyNSwgMTE3LCAxNQogICAgUkFESU9CVVRUT04gIlphd2lqYWogZG8gJmJyemVndSBva25hIiwgSURDX1BBR0VGTVRfV1csIDE4LCA0NSwgMTE3LCAxNQogICAgUkFESU9CVVRUT04gIlphd2lqYWogZG8gJm1hcmdpbmVzdSIsIElEQ19QQUdFRk1UX1dNLCAxOCwgNjUsIDExNywgMTUKICAgIEdST1VQQk9YICJQYXNraSBuYXJ66mR6aSIsIDAsIDE1MCwgMTAsIDEyMCwgODUKICAgIENIRUNLQk9YICJQYXNlayAmbmFyeupkemkiLCBJRENfUEFHRUZNVF9UQiwgMTYwLCAyMCwgODAsIDE1CiAgICBDSEVDS0JPWCAiUGFzZWsgJmZvcm1hdHUiLCBJRENfUEFHRUZNVF9GQiwgMTYwLCAzOCwgODAsIDE1CiAgICBDSEVDS0JPWCAiJkxpbmlqa2EiLCBJRENfUEFHRUZNVF9SVSwgMTYwLCA1NiwgODAsIDE1CiAgICBDSEVDS0JPWCAiUGFzZWsgJnN0YW51IiwgSURDX1BBR0VGTVRfU0IsIDE2MCwgNzQsIDgwLCAxNQogICAgTFRFWFQgIiIsIElEQ19QQUdFRk1UX0lELCAwLDAsMCwwCkVORAoKU1RSSU5HVEFCTEUgRElTQ0FSREFCTEUKQkVHSU4KICAgIFNUUklOR19SSUNIVEVYVF9GSUxFU19SVEYsICAgICAiVGVrc3Qgc2Zvcm1hdG93YW55IC0gUlRGICgqLnJ0ZikiCiAgICBTVFJJTkdfVEVYVF9GSUxFU19UWFQsICAgICAgICAgIkRva3VtZW50IHRla3N0b3d5ICgqLnR4dCkiCiAgICBTVFJJTkdfVEVYVF9GSUxFU19VTklDT0RFX1RYVCwgIlVuaWNvZGUgdGV4dCBkb2N1bWVudCAoKi50eHQpIgogICAgU1RSSU5HX0FMTF9GSUxFUywgICAgICAgICAgICAgICJXc3p5c3RraWUgZG9rdW1lbnR5ICgqLiopIgpFTkQKClNUUklOR1RBQkxFIERJU0NBUkRBQkxFCkJFR0lOCiAgICBTVFJJTkdfQUxJR05fTEVGVCwgICAgICAgICAgICAiRG8gbGV3ZWoiCiAgICBTVFJJTkdfQUxJR05fUklHSFQsICAgICAgICAgICAiRG8gcHJhd2VqIgogICAgU1RSSU5HX0FMSUdOX0NFTlRFUiwgICAgICAgICAgIld5nHJvZGtvd2FuZSIKRU5ECgpTVFJJTkdUQUJMRSBESVNDQVJEQUJMRQpCRUdJTgogICAgU1RSSU5HX05FV0ZJTEVfUklDSFRFWFQsICAgICAiRG9jdW1lbnQgc2Zvcm1hdG93YW55IChSVEYpIgogICAgU1RSSU5HX05FV0ZJTEVfVFhULCAgICAgICAgICAiRG9jdW1lbnQgdGVrc3Rvd3kiCiAgICBTVFJJTkdfTkVXRklMRV9UWFRfVU5JQ09ERSwgICJEb2N1bWVudCB0ZWtzdG93eSBVbmljb2RlIgpFTkQKClNUUklOR1RBQkxFIERJU0NBUkRBQkxFCkJFR0lOCiAgICBTVFJJTkdfUFJJTlRFUl9GSUxFU19QUk4sICAgICAgICAiUGxpa2kgZHJ1a2Fya2kgKCouUFJOKSIKRU5ECgpTVFJJTkdUQUJMRSBESVNDQVJEQUJMRQpCRUdJTgogICAgU1RSSU5HX1ZJRVdQUk9QU19USVRMRSwgICAgICAgICAgIk9wY2plIgogICAgU1RSSU5HX1ZJRVdQUk9QU19URVhULCAgICAgICAgICAgIlRla3N0IgogICAgU1RSSU5HX1ZJRVdQUk9QU19SSUNIVEVYVCwgICAgICAgIlRla3N0IHNmb3JtYXRvd2FueSIKRU5ECgpTVFJJTkdUQUJMRSBESVNDQVJEQUJMRQpCRUdJTgogICAgU1RSSU5HX1BSRVZJRVdfUFJJTlQsICAgICAgICAgICAgIkRydWt1aiIKICAgIFNUUklOR19QUkVWSUVXX05FWFRQQUdFLCAgICAgICAgICJOYXN0LiBzdHJvbmEiCiAgICBTVFJJTkdfUFJFVklFV19QUkVWUEFHRSwgICAgICAgICAiUG9wcnouIHN0cm9uYSIKICAgIFNUUklOR19QUkVWSUVXX1RXT1BBR0VTLCAgICAgICAgICJUd28gcGFnZXMiCiAgICBTVFJJTkdfUFJFVklFV19PTkVQQUdFLCAgICAgICAgICAiT25lIHBhZ2UiCiAgICBTVFJJTkdfUFJFVklFV19DTE9TRSwgICAgICAgICAgICAiWmFta25paiIKRU5ECgpTVFJJTkdUQUJMRSBESVNDQVJEQUJMRQpCRUdJTgogICAgU1RSSU5HX1VOSVRTX0NNLCAgICAgICAgICAgICAiY20iCkVORAoKU1RSSU5HVEFCTEUgRElTQ0FSREFCTEUKQkVHSU4KICAgIFNUUklOR19ERUZBVUxUX0ZJTEVOQU1FLCAgICAgIkRva3VtZW50IgogICAgU1RSSU5HX1BST01QVF9TQVZFX0NIQU5HRVMsICAiWmFwaXNh5iB6bWlhbnkgdyBwbGlrdSAnJXMnPyIKICAgIFNUUklOR19TRUFSQ0hfRklOSVNIRUQsICAgICAgIlpha2/xY3pvbm8gcHJ6ZXN6dWtpd2FuaWUgZG9rdW1lbnR1LiIKICAgIFNUUklOR19MT0FEX1JJQ0hFRF9GQUlMRUQsICAgIk5pZSB1ZGGzbyBzaeogemGzYWRvd2HmIGJpYmxpb3Rla2kgc3lzdGVtb3dlaiBSaWNoRWRpdC4iCiAgICBTVFJJTkdfU0FWRV9MT1NFRk9STUFUVElORywgICJXeWJyYW5vIHphcGlzYW5pZSBkb2t1bWVudHUgamFrbyB6d3lrs3kgdGVrc3QsICIgXAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAidyB3eW5pa3UgY3plZ28gZm9ybWF0b3dhbmllIHpvc3RhbmllIHV0cmFjb25lLiAiIFwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIkN6eSBuYSBwZXdubyBjaGNlc3ogdG8genJvYmnmPyIKICAgIFNUUklOR19JTlZBTElEX05VTUJFUiwgICAgICAgIlqzeSBmb3JtYXQgbGljemJ5IgogICAgU1RSSU5HX09MRV9TVE9SQUdFX05PVF9TVVBQT1JURUQsICJEb2t1bWVudHkgdHlwdSBPTEUgc3RvcmFnZSBuaWUgc7kgb2Jzs3VnaXdhbmUiCkVORAo=