LyoKICogQ29weXJpZ2h0IDIwMDYgYnkgSGVubmluZyBHZXJoYXJkdAogKgogKiBUaGlzIGxpYnJhcnkgaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yCiAqIG1vZGlmeSBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBMZXNzZXIgR2VuZXJhbCBQdWJsaWMKICogTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkgdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbjsgZWl0aGVyCiAqIHZlcnNpb24gMi4xIG9mIHRoZSBMaWNlbnNlLCBvciAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgogKgogKiBUaGlzIGxpYnJhcnkgaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKICogYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKICogTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiAgU2VlIHRoZSBHTlUKICogTGVzc2VyIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KICoKICogWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05VIExlc3NlciBHZW5lcmFsIFB1YmxpYwogKiBMaWNlbnNlIGFsb25nIHdpdGggdGhpcyBsaWJyYXJ5OyBpZiBub3QsIHdyaXRlIHRvIHRoZSBGcmVlIFNvZnR3YXJlCiAqIEZvdW5kYXRpb24sIEluYy4sIDUxIEZyYW5rbGluIFN0LCBGaWZ0aCBGbG9vciwgQm9zdG9uLCBNQSAwMjExMC0xMzAxLCBVU0EKICovCgpMQU5HVUFHRSBMQU5HX0dFUk1BTiwgU1VCTEFOR19ORVVUUkFMCgpJRE1fTUFJTk1FTlUgTUVOVSBESVNDQVJEQUJMRQpCRUdJTgogICAgUE9QVVAgIiZEYXRlaSIKICAgIEJFR0lOCiAgICAgICAgTUVOVUlURU0gIiZOZXUuLi5cdFN0cmcrTiIsICAgICAgICAgIElEX0ZJTEVfTkVXCiAgICAgICAgTUVOVUlURU0gItYmZmZuZW4uLi5cdFN0cmcrTyIsICAgIElEX0ZJTEVfT1BFTgogICAgICAgIE1FTlVJVEVNICImU3BlaWNoZXJuXHRTdHJnK1MiLCAgICBJRF9GSUxFX1NBVkUKICAgICAgICBNRU5VSVRFTSAiU3BlaWNoZXJuICZ1bnRlci4uLiIsICAgSURfRklMRV9TQVZFQVMKICAgICAgICBNRU5VSVRFTSBTRVBBUkFUT1IKICAgICAgICBNRU5VSVRFTSAiJkRydWNrZW4uLi5cdFN0cmcrUCIsICAgSURfUFJJTlQKICAgICAgICBNRU5VSVRFTSAiU2VpdGVuYW5zaSZjaHQiLCAgICAgICAgSURfUFJFVklFVwogICAgICAgIE1FTlVJVEVNICJTZWl0ZSBlaW4mcmljaHRlbi4uLiIsICBJRF9QUklOVFNFVFVQCiAgICAgICAgTUVOVUlURU0gU0VQQVJBVE9SCiAgICAgICAgTUVOVUlURU0gIiZCZWVuZGVuIiwgICAgICAgICAgICAgIElEX0ZJTEVfRVhJVAogICAgRU5ECiAgICBQT1BVUCAiJkJlYXJiZWl0ZW4iCiAgICBCRUdJTgogICAgICAgIE1FTlVJVEVNICImUvxja2fkbmdpZ1x0U3RyZytaIiwgICAgICAgICBJRF9FRElUX1VORE8KICAgICAgICBNRU5VSVRFTSAiJldpZWRlcmhvbGVuXHRTdHJnK1kiLCAgICAgICAgSURfRURJVF9SRURPCiAgICAgICAgTUVOVUlURU0gU0VQQVJBVE9SCiAgICAgICAgTUVOVUlURU0gIiZBdXNzY2huZWlkZW5cdFN0cmcrWCIsICAgICAgIElEX0VESVRfQ1VUCiAgICAgICAgTUVOVUlURU0gIiZLb3BpZXJlblx0U3RyZytDIiwgICAgICAgICAgIElEX0VESVRfQ09QWQogICAgICAgIE1FTlVJVEVNICImRWluZvxnZW5cdFN0cmcrViIsICAgICAgICAgICBJRF9FRElUX1BBU1RFCiAgICAgICAgTUVOVUlURU0gIiZM9nNjaGVuXHRFbnRmIiwgICAgICAgICAgICAgIElEX0VESVRfQ0xFQVIKICAgICAgICBNRU5VSVRFTSAiQWxsZXMgJm1hcmtpZXJlblx0U3RyZytBIiwgICAgSURfRURJVF9TRUxFQ1RBTEwKICAgICAgICBNRU5VSVRFTSBTRVBBUkFUT1IKICAgICAgICBNRU5VSVRFTSAiJlN1Y2hlbi4uLlx0U3RyZytGIiwgICAgICAgICAgSURfRklORAogICAgICAgIE1FTlVJVEVNICImV2VpdGVyc3VjaGVuXHRGMyIsICAgICAgICAgICBJRF9GSU5EX05FWFQKICAgICAgICBNRU5VSVRFTSAiRXJzZXQmemVuLi4uXHRTdHJnK0giLCAgICAgICAgSURfUkVQTEFDRQogICAgICAgIE1FTlVJVEVNIFNFUEFSQVRPUgogICAgICAgIE1FTlVJVEVNICJTY2hyZWliZ2VzY2j8JnR6dCIsICAgICAgICAgICBJRF9FRElUX1JFQURPTkxZCiAgICAgICAgTUVOVUlURU0gIiZHZeRuZGVydCIsICAgICAgICAgICAgICAgICAgIElEX0VESVRfTU9ESUZJRUQKICAgICAgICBNRU5VSVRFTSBTRVBBUkFUT1IKICAgICAgICBQT1BVUCAiJkV4dHJhcyIKICAgICAgICBCRUdJTgogICAgICAgICAgICBNRU5VSVRFTSAiTWFya2llcnVuZ3MmaW5mb3JtYXRpb24iLCAgICAgSURfRURJVF9TRUxFQ1RJT05JTkZPCiAgICAgICAgICAgIE1FTlVJVEVNICJaZWljaGVuJmZvcm1hdCIsICAgICAgICAgICAgICBJRF9FRElUX0NIQVJGT1JNQVQKICAgICAgICAgICAgTUVOVUlURU0gIiZTdGFuZGFyZHplaWNoZW5mb3JtYXQiLCAgICAgIElEX0VESVRfREVGQ0hBUkZPUk1BVAogICAgICAgICAgICBNRU5VSVRFTSAiJkFic2F0emZvcm1hdCIsICAgICAgICAgICAgICAgSURfRURJVF9QQVJBRk9STUFUCiAgICAgICAgICAgIE1FTlVJVEVNICImVGV4dCBob2xlbiIsICAgICAgICAgICAgICAgICBJRF9FRElUX0dFVFRFWFQKICAgICAgICBFTkQKICAgIEVORAogICAgUE9QVVAgIiZBbnNpY2h0IgogICAgQkVHSU4KICAgICAgICBNRU5VSVRFTSAiJlN5bWJvbGxlaXN0ZSIsICAgICAgICAgSURfVE9HR0xFX1RPT0xCQVIKICAgICAgICBNRU5VSVRFTSAiJkZvcm1hdGllcnVuZ3NsZWlzdGUiLCAgSURfVE9HR0xFX0ZPUk1BVEJBUgogICAgICAgIE1FTlVJVEVNICJMJmluZWFsIiwgICAgICAgICAgICAgICBJRF9UT0dHTEVfUlVMRVIKICAgICAgICBNRU5VSVRFTSAiU3RhdHVzJmxlaXN0ZSIsICAgICAgICAgSURfVE9HR0xFX1NUQVRVU0JBUgogICAgICAgIE1FTlVJVEVNIFNFUEFSQVRPUgogICAgICAgIE1FTlVJVEVNICImT3B0aW9uZW4uLi4iLCAgICAgICAgICBJRF9WSUVXUFJPUEVSVElFUwogICAgRU5ECiAgICBQT1BVUCAiJkVpbmb8Z2VuIgogICAgQkVHSU4KICAgICAgICBNRU5VSVRFTSAiJkRhdHVtIHVuZCBVaHJ6ZWl0Li4uIiwgIElEX0RBVEVUSU1FCiAgICBFTkQKICAgIFBPUFVQICJGb3JtYSZ0IgogICAgQkVHSU4KICAgICAgICBNRU5VSVRFTSAiU2NoJnJpZnRhcnQuLi4iLCAgICAgICAgICAgICAgIElEX0ZPTlRTRVRUSU5HUwogICAgICAgIE1FTlVJVEVNICJBdWYmeuRobHVuZ3N6ZWljaGVuIiAgICAgICAgICAgSURfQlVMTEVUCiAgICAgICAgTUVOVUlURU0gIiZBYnNhdHouLi4iICAgICAgICAgICAgICAgICAgICBJRF9QQVJBRk9STUFUCiAgICAgICAgTUVOVUlURU0gIiZUYWJzdG9wcHMuLi4iICAgICAgICAgICAgICAgICBJRF9UQUJTVE9QUwogICAgICAgIFBPUFVQICImSGludGVyZ3J1bmQiCiAgICAgICAgQkVHSU4KICAgICAgICAgICAgTUVOVUlURU0gIiZTeXN0ZW1cdFN0cmcrMSIsICAgICAgICAgSURfQkFDS18xCiAgICAgICAgICAgIE1FTlVJVEVNICImUG9zdEl0LU5vdGl6XHRTdHJnKzIiLCAgIElEX0JBQ0tfMgogICAgICAgIEVORAogICAgRU5ECiAgICBQT1BVUCAiJj8iCiAgICBCRUdJTgogICAgICAgIE1FTlVJVEVNICLcJmJlciBXaW5lIFdvcmRwYWQiICAgICAgIElEX0FCT1VUCiAgICBFTkQKRU5ECgpJRE1fUE9QVVAgTUVOVSBESVNDQVJEQUJMRQpCRUdJTgogICAgUE9QVVAgIiIKICAgIEJFR0lOCiAgICAgICAgTUVOVUlURU0gIkF1cyZzY2huZWlkZW4iLCAgICAgICBJRF9FRElUX0NVVAogICAgICAgIE1FTlVJVEVNICImS29waWVyZW4iLCAgICAgICAgICAgSURfRURJVF9DT1BZCiAgICAgICAgTUVOVUlURU0gIiZFaW5m/GdlbiIsICAgICAgICAgICBJRF9FRElUX1BBU1RFCiAgICAgICAgTUVOVUlURU0gU0VQQVJBVE9SCiAgICAgICAgTUVOVUlURU0gIkF1ZiZ65GhsdW5nc3plaWNoZW4iICBJRF9CVUxMRVQKICAgICAgICBNRU5VSVRFTSAiJkFic2F0ei4uLiIgICAgICAgICAgIElEX1BBUkFGT1JNQVQKICAgIEVORApFTkQKCklERF9EQVRFVElNRSBESUFMT0cgRElTQ0FSREFCTEUgMzAsIDIwLCAxMzAsIDgwClNUWUxFIERTX01PREFMRlJBTUUgfCBXU19DQVBUSU9OIHwgV1NfU1lTTUVOVQpDQVBUSU9OICJEYXR1bSB1bmQgVWhyemVpdCIKRk9OVCAxMCwgIk1TIFNhbnMgU2VyaWYiCkJFR0lOCiAgICBMVEVYVCAgICAgICAgIlZlcmb8Z2JhcmUgRm9ybWF0ZSIsMCwzLDIsMTAwLDE1CiAgICBMSVNUQk9YICAgICAgSURDX0RBVEVUSU1FLDMsMTIsODAsNjUsTEJTX05PSU5URUdSQUxIRUlHSFQKICAgIFBVU0hCVVRUT04gICAiJk9LIixJRE9LLDg3LDEyLDQwLDEyCiAgICBQVVNIQlVUVE9OICAgIkEmYmJyZWNoZW4iLElEQ0FOQ0VMLDg3LDI2LDQwLDEyCkVORAoKSUREX05FV0ZJTEUgRElBTE9HIERJU0NBUkRBQkxFIDMwLCAyMCwgMTQwLCA4MApTVFlMRSBEU19NT0RBTEZSQU1FIHwgV1NfQ0FQVElPTiB8IFdTX1NZU01FTlUKQ0FQVElPTiAiTmV1IgpGT05UIDEwLCAiTVMgU2FucyBTZXJpZiIKQkVHSU4KICAgIExURVhUICAgICAgICAiTmV1ZXIgRG9rdW1lbnR0eXAiLDAsMywyLDEwMCwxNQogICAgTElTVEJPWCAgICAgIElEQ19ORVdGSUxFLDMsMTIsOTAsNjUsTEJTX05PSU5URUdSQUxIRUlHSFQKICAgIFBVU0hCVVRUT04gICAiJk9LIixJRE9LLDk3LDEyLDQwLDEyCiAgICBQVVNIQlVUVE9OICAgIkEmYmJyZWNoZW4iLElEQ0FOQ0VMLDk3LDI2LDQwLDEyCkVORAoKSUREX1BBUkFGT1JNQVQgRElBTE9HIERJU0NBUkRBQkxFIDMwLCAyMCwgMjAwLCAxMTAKU1RZTEUgRFNfTU9EQUxGUkFNRSB8IFdTX0NBUFRJT04gfCBXU19TWVNNRU5VCkNhcHRpb24gIkFic2F0eiIKRk9OVCA4LCAiTVMgU2hlbGwgRGxnIgpCRUdJTgogICAgR1JPVVBCT1ggIkVpbnp1ZyIsIDAsIDEwLCAxMCwgMTIwLCA2OAogICAgTFRFWFQgIkxpbmtzIiwgMCwgMTUsIDIyLCA0MCwgMTMKICAgIEVESVRURVhUIElEQ19QQVJBX0xFRlQsIDU1LCAyMCwgNjAsIDEzCiAgICBMVEVYVCAiUmVjaHRzIiwgMCwgMTUsIDQwLCA0MCwgMTMKICAgIEVESVRURVhUIElEQ19QQVJBX1JJR0hULCA1NSwgMzgsIDYwLCAxMwogICAgTFRFWFQgIkVyc3RlIFplaWxlIiwgMCwgMTUsIDU4LCA0MCwgMTMKICAgIEVESVRURVhUIElEQ19QQVJBX0ZJUlNULCA1NSwgNTYsIDYwLCAxMwogICAgTFRFWFQgIkF1c3JpY2h0dW5nIiwgMCwgMTUsIDg3LCA0MCwgMTMKICAgIENPTUJPQk9YIElEQ19QQVJBX0FMSUdOLCA1NSwgODUsIDYwLCAxMywgQ0JTX0RST1BET1dOTElTVAogICAgUFVTSEJVVFRPTiAiJk9LIiwgSURPSywgMTM3LCAxNSwgNTAsIDE1CiAgICBQVVNIQlVUVE9OICJBJmJicmVjaGVuIiwgSURDQU5DRUwsIDEzNywgMzMsIDUwLCAxNQpFTkQKCklERF9UQUJTVE9QUyBESUFMT0cgRElTQ0FSREFCTEUgMzAsIDIwLCAyMDAsIDExMApTVFlMRSBEU19NT0RBTEZSQU1FIHwgV1NfQ0FQVElPTiB8IFdTX1NZU01FTlUKQ2FwdGlvbiAiVGFic3RvcHBzIgpGT05UIDgsICJNUyBTSGVsbCBETGciCkJFR0lOCiAgICBHUk9VUEJPWCAiVGFic3RvcHBwb3NpdGlvbiIsIDAsIDEwLCAxMCwgMTIwLCA5MAogICAgQ09NQk9CT1ggSURDX1RBQlNUT1BTLCAyMCwgMjAsIDEwMCwgNjAsIENCU19TSU1QTEUgfCBDQlNfU09SVAogICAgREVGUFVTSEJVVFRPTiAiJkZlc3RsZWdlbiIsIElEX1RBQl9BREQsIDIwLCA4MCwgNDUsIDE1CiAgICBQVVNIQlVUVE9OICImTPZzY2hlbiIsIElEX1RBQl9ERUwsIDcyLCA4MCwgNDUsIDE1CiAgICBQVVNIQlVUVE9OICImT0siLCBJRE9LLCAxMzcsIDE1LCA1MCwgMTUKICAgIFBVU0hCVVRUT04gIkEmYmJyZWNoZW4iLCBJRENBTkNFTCwgMTM3LCAzMywgNTAsIDE1CiAgICBQVVNIQlVUVE9OICImQWxsZSBs9nNjaGVuIiwgSURfVEFCX0VNUFRZLCAxMzcsIDUxLCA1MCwgMTUKRU5ECgpJRERfRk9STUFUT1BUUyBESUFMT0cgRElTQ0FSREFCTEUgMCwgMCwgMjgwLCAxMTAKU1RZTEUgRFNfU1lTTU9EQUwKQ2FwdGlvbiAiIgpGT05UIDgsICJNUyBTaGVsbCBEbGciCkJFR0lOCiAgICBHUk9VUEJPWCAiWmVpbGVudW1icnVjaCIsIDAsIDEwLCAxMCwgMTMwLCA4NQogICAgUkFESU9CVVRUT04gIiZBbSBGZW5zdGVyIHVtYnJlY2hlbiIsIElEQ19QQUdFRk1UX1dXLCAxOCwgMjUsIDExNywgMTUKICAgIFJBRElPQlVUVE9OICJBJm0gTGluZWFsIHVtYnJlY2hlbiIsIElEQ19QQUdFRk1UX1dNLCAxOCwgNDUsIDExNywgMTUKICAgIEdST1VQQk9YICJTeW1ib2xsZWlzdGVuIiwgMCwgMTUwLCAxMCwgMTIwLCA4NQogICAgQ0hFQ0tCT1ggIiZTeW1ib2xsZWlzdGUiLCBJRENfUEFHRUZNVF9UQiwgMTYwLCAyMCwgODAsIDE1CiAgICBDSEVDS0JPWCAiJkZvcm1hdGllcnVuZ3NsZWlzdGUiLCBJRENfUEFHRUZNVF9GQiwgMTYwLCAzOCwgODAsIDE1CiAgICBDSEVDS0JPWCAiTCZpbmVhbCIsIElEQ19QQUdFRk1UX1JVLCAxNjAsIDU2LCA4MCwgMTUKICAgIENIRUNLQk9YICJTdGF0dXMmbGVpc3RlIiwgSURDX1BBR0VGTVRfU0IsIDE2MCwgNzQsIDgwLCAxNQogICAgTFRFWFQgIiIsIElEQ19QQUdFRk1UX0lELCAwLDAsMCwwCkVORAoKU1RSSU5HVEFCTEUgRElTQ0FSREFCTEUKQkVHSU4KICAgIFNUUklOR19SSUNIVEVYVF9GSUxFU19SVEYsICAgICAiUlRGLUZvcm1hdCAoKi5ydGYpIgogICAgU1RSSU5HX1RFWFRfRklMRVNfVFhULCAgICAgICAgICJUZXh0ZG9rdW1lbnRlICgqLnR4dCkiCiAgICBTVFJJTkdfVEVYVF9GSUxFU19VTklDT0RFX1RYVCwgIlVuaWNvZGUtVGV4dGRva3VtZW50ZSAoKi50eHQpIgogICAgU1RSSU5HX0FMTF9GSUxFUywgICAgICAgICAgICAgICJBbGxlIERva3VtZW50ZSAoKi4qKSIKRU5ECgpTVFJJTkdUQUJMRSBESVNDQVJEQUJMRQpCRUdJTgogICAgU1RSSU5HX0FMSUdOX0xFRlQsICAgICAgICAgICAgIkxpbmtzIgogICAgU1RSSU5HX0FMSUdOX1JJR0hULCAgICAgICAgICAgIlJlY2h0cyIKICAgIFNUUklOR19BTElHTl9DRU5URVIsICAgICAgICAgICJaZW50cmllcnQiCkVORAoKU1RSSU5HVEFCTEUgRElTQ0FSREFCTEUKQkVHSU4KICAgIFNUUklOR19ORVdGSUxFX1JJQ0hURVhULCAgICAgIlJURi1Eb2t1bWVudCIKICAgIFNUUklOR19ORVdGSUxFX1RYVCwgICAgICAgICAgIlRleHRkb2t1bWVudCIKICAgIFNUUklOR19ORVdGSUxFX1RYVF9VTklDT0RFLCAgIlVuaWNvZGUtVGV4dGRva3VtZW50IgpFTkQKClNUUklOR1RBQkxFIERJU0NBUkRBQkxFCkJFR0lOCiAgICBTVFJJTkdfUFJJTlRFUl9GSUxFU19QUk4sICAgICAgICAiRHJ1Y2tlcmRhdGVpZW4gKCouUFJOKSIKRU5ECgpTVFJJTkdUQUJMRSBESVNDQVJEQUJMRQpCRUdJTgogICAgU1RSSU5HX1ZJRVdQUk9QU19USVRMRSwgICAgICAgICAgIk9wdGlvbmVuIgogICAgU1RSSU5HX1ZJRVdQUk9QU19URVhULCAgICAgICAgICAgIlRleHQiCiAgICBTVFJJTkdfVklFV1BST1BTX1JJQ0hURVhULCAgICAgICAiUmljaCBUZXh0IgpFTkQKClNUUklOR1RBQkxFIERJU0NBUkRBQkxFCkJFR0lOCiAgICBTVFJJTkdfUFJFVklFV19QUklOVCwgICAgICAgICAgICAiJkRydWNrZW4iCiAgICBTVFJJTkdfUFJFVklFV19ORVhUUEFHRSwgICAgICAgICAiJk7kY2hzdGUiCiAgICBTVFJJTkdfUFJFVklFV19QUkVWUEFHRSwgICAgICAgICAiJlZvcmhlcmlnZSIKICAgIFNUUklOR19QUkVWSUVXX1RXT1BBR0VTLCAgICAgICAgICJad2VpIFNlaXRlbiIKICAgIFNUUklOR19QUkVWSUVXX09ORVBBR0UsICAgICAgICAgICJFaW5lIFNlaXRlIgogICAgU1RSSU5HX1BSRVZJRVdfQ0xPU0UsICAgICAgICAgICAgIiZTY2hsaWXfZW4iCkVORAoKU1RSSU5HVEFCTEUgRElTQ0FSREFCTEUKQkVHSU4KICAgIFNUUklOR19VTklUU19DTSwgICAgICAgICAgICAgImNtIgpFTkQKClNUUklOR1RBQkxFIERJU0NBUkRBQkxFCkJFR0lOCiAgICBTVFJJTkdfREVGQVVMVF9GSUxFTkFNRSwgICAgICJEb2t1bWVudCIKICAgIFNUUklOR19QUk9NUFRfU0FWRV9DSEFOR0VTLCAgIsRuZGVydW5nZW4gYW4gJyVzJyBzcGVpY2hlcm4/IgogICAgU1RSSU5HX1NFQVJDSF9GSU5JU0hFRCwgICAgICAiV29yZHBhZCBoYXQgZGFzIER1cmNoc3VjaGVuIGRlcyBEb2t1bWVudHMgYmVlbmRldC4iCiAgICBTVFJJTkdfTE9BRF9SSUNIRURfRkFJTEVELCAgICJEaWUgUmljaEVkaXQtQmlibGlvdGhlayBrb25udGUgbmljaHQgZ2VsYWRlbiB3ZXJkZW4uIgogICAgU1RSSU5HX1NBVkVfTE9TRUZPUk1BVFRJTkcsICAiU2llIHNpbmQgZGFiZWksIGRpZSBEYXRlaSBhbHMgVGV4dGRhdGVpIHp1IHNwZWljaGVybi4gIiBcCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJEYWR1cmNoIGdlaHQgZGllIEZvcm1hdGllcnVuZyB2ZXJsb3Jlbi4gIiBcCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJN9mNodGVuIFNpZSBkZW4gVm9yZ2FuZyB0cm90emRlbSBmb3J0c2V0emVuPyIKICAgIFNUUklOR19JTlZBTElEX05VTUJFUiwgICAgICAgIkRpZXNlIE1h32VpbmhlaXQgaXN0IG5pY2h0IHp1bORzc2lnLiIKICAgIFNUUklOR19PTEVfU1RPUkFHRV9OT1RfU1VQUE9SVEVELCAiT0xFLURva3VtZW50ZW5zcGVpY2hlcnVuZyB3aXJkIG5pY2h0IHVudGVyc3T8dHp0LiIKRU5ECg==