LyoKICogV2luZUNmZyByZXNvdXJjZXMKICogU3BhbmlzaCBMYW5ndWFnZSBTdXBwb3J0CiAqCiAqIENvcHlyaWdodCAyMDAzLTIwMDcgSm9z6SBNYW51ZWwgRmVycmVyIE9ydGl6CiAqCiAqIFRoaXMgbGlicmFyeSBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IKICogbW9kaWZ5IGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIExlc3NlciBHZW5lcmFsIFB1YmxpYwogKiBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieSB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uOyBlaXRoZXIKICogdmVyc2lvbiAyLjEgb2YgdGhlIExpY2Vuc2UsIG9yIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCiAqCiAqIFRoaXMgbGlicmFyeSBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAogKiBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZgogKiBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlIEdOVQogKiBMZXNzZXIgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLgogKgogKiBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgTGVzc2VyIEdlbmVyYWwgUHVibGljCiAqIExpY2Vuc2UgYWxvbmcgd2l0aCB0aGlzIGxpYnJhcnk7IGlmIG5vdCwgd3JpdGUgdG8gdGhlIEZyZWUgU29mdHdhcmUKICogRm91bmRhdGlvbiwgSW5jLiwgNTEgRnJhbmtsaW4gU3QsIEZpZnRoIEZsb29yLCBCb3N0b24sIE1BIDAyMTEwLTEzMDEsIFVTQQogKgogKi8KCkxBTkdVQUdFIExBTkdfU1BBTklTSCwgU1VCTEFOR19ORVVUUkFMCgpJRFJfV0lORUNGRyBNRU5VIERJU0NBUkRBQkxFCkJFR0lOCiAgICBQT1BVUCAiIgogICAgQkVHSU4KICAgICAgICBNRU5VSVRFTSAiQ29uZmlndXJlIiwgSURDX0FVRElPX0NPTkZJR1VSRQogICAgRU5ECkVORAoKSUREX0FCT1VUQ0ZHIERJQUxPR0VYIDAsIDAsIDI2MCwgMjcwClNUWUxFIFdTX0NISUxECkZPTlQgOCwgIk1TIFNoZWxsIERsZyIKQkVHSU4KICAgIExURVhUICAgICAgICAgICBQQUNLQUdFX1NUUklORyxJRENfU1RBVElDLDExOSwxNywxMjAsOAogICAgQ09OVFJPTCAgICAgICAgIElEQl9XSU5FLElEQ19TVEFUSUMsIlN0YXRpYyIsU1NfQklUTUFQICwxNSwxNywxNTcsMTExCiAgICBMVEVYVCAgICAgICAgICAgImh0dHA6Ly93d3cud2luZWhxLm9yZy8iLElEQ19TVEFUSUMsMTE5LDMxLDEwNiw4CiAgICBMVEVYVCAgICAgICAgICAgIlRoaXMgbGlicmFyeSBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5IGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIExlc3NlciBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieSB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uOyBlaXRoZXIgdmVyc2lvbiAyLjEgb2YgdGhlIExpY2Vuc2UsIG9yIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uIiwKICAgICAgICAgICAgICAgICAgICBJRENfU1RBVElDLDExOSw0NCwxMjQsNzIKRU5ECgpJRERfQVBQQ0ZHIERJQUxPRyBESVNDQVJEQUJMRSAgMCwgMCwgMjYwLCAyNTAKU1RZTEUgV1NfQ0hJTEQgfCBXU19ESVNBQkxFRApGT05UIDgsICJNUyBTaGVsbCBEbGciCkJFR0lOCiAgICBHUk9VUEJPWCAgICAgICAgIiBDb25maWd1cmFjafNuIGRlIGFwbGljYWNpb25lcyAiLElEQ19TVEFUSUMsIDgsNCwyNDQsMjQwCiAgICBMVEVYVCAgICAgICAgICAgIldpbmUgcHVlZGUgaW1pdGFyIGRpc3RpbnRhcyB2ZXJzaW9uZXMgZGUgV2luZG93cyBwYXJhIGNhZGEgYXBsaWNhY2nzbi4gRXN0YSBwZXN0YfFhIGVzdOEgZW5sYXphZGEgYSBsYXMgZGUgTGlicmVy7WFzIHkgR3LhZmljb3MgcGFyYSBwb2RlciBjYW1iaWFyIGVuIGVsbGFzIGxhIGNvbmZpZ3VyYWNp824gZ2xvYmFsIHkvbyBsYSBkZSBwb3IgYXBsaWNhY2nzbi4iLAogICAgICAgICAgICAgICAgICAgIElEQ19TVEFUSUMsMTUsMjAsMjI3LDMwCiAgICBDT05UUk9MICAgICAgICAgIkFwbGljYWNpb25lcyIsSURDX0FQUF9MSVNUVklFVywiU3lzTGlzdFZpZXczMiIsV1NfQk9SREVSIHwgV1NfVEFCU1RPUCB8IExWU19MSVNUIHwgTFZTX1NJTkdMRVNFTCB8IExWU19TSE9XU0VMQUxXQVlTLAogICAgICAgICAgICAgICAgICAgIDE1LDUwLDIzMCwxNTAKICAgIFBVU0hCVVRUT04gICAgICAiJkHxYWRpciBhcGxpY2FjafNuLi4uIixJRENfQVBQX0FEREFQUCwgOTAsMjA0LDc1LDE0CiAgICBQVVNIQlVUVE9OICAgICAgIiZFbGltaW5hciBhcGxpY2FjafNuLi4uIixJRENfQVBQX1JFTU9WRUFQUCwgMTcwLDIwNCw3NSwxNAogICAgTFRFWFQgICAgICAgICAgICImVmVyc2nzbiBhIGltaXRhcjoiLElEQ19TVEFUSUMsMTcsMjI2LDU4LDE2CiAgICBDT01CT0JPWCAgICAgICAgSURDX1dJTlZFUiw4MywyMjQsMTYzLDU2LENCU19EUk9QRE9XTkxJU1QgfCBXU19WU0NST0xMIHwgV1NfVEFCU1RPUCAgICAKRU5ECgpJRERfR1JBUEhDRkcgRElBTE9HIERJU0NBUkRBQkxFICAwLCAwLCAyNjAsIDI1MApTVFlMRSBXU19DSElMRCB8IFdTX0RJU0FCTEVECkZPTlQgOCwgIk1TIFNoZWxsIERsZyIKQkVHSU4KICAgIEdST1VQQk9YICAgICAgICAiIENvbmZpZ3VyYWNp824gZGUgdmVudGFuYXMgIixJRENfU1RBVElDLDgsNCwyNDQsMTgwCgogICAgQ09OVFJPTCAgICAgICAgIlBlcm1pdGlyIGEgbG9zIHByb2dyYW1hcyBEaXJlY3RYIHJldGVuZXIgZWwgcmF0824gZW4gc3VzIHZlbnRhbmFzIixJRENfRFhfTU9VU0VfR1JBQiwiQnV0dG9uIixCU19BVVRPQ0hFQ0tCT1ggfCBXU19UQUJTVE9QLDE1LDE0LDIzMCw4CiAgICBMVEVYVCAgICAgICAgICAiU2kgbGFzIHZlbnRhbmFzIHNvbiBnZXN0aW9uYWRhcyBwb3Igc3UgZ2VzdG9yIGRlIHZlbnRhbmFzLCB0ZW5kcuFuIGxvcyBib3JkZXMgZXN04W5kYXIsIHJlc3BldGFy4W4gc3UgZXNjcml0b3JpbyB2aXJ0dWFsIHkgYXBhcmVjZXLhbiBlbiBzdSBsaXN0YSBkZSB2ZW50YW5hcy5cblxuU2kgbGFzIHZlbnRhbmFzIG5vIHNvbiBnZXN0aW9uYWRhcywgZXN0YXLhbiBkZXNjb25lY3RhZGFzIGRlIHN1IGdlc3RvciBkZSB2ZW50YW5hcy4gRXN0byBzaWduaWZpY2EgcXVlIGxhcyB2ZW50YW5hcyBubyBzZSBpbnRlZ3JhcuFuIHRhbnRvIGNvbiBzdSBlc2NyaXRvcmlvLCBwZXJvIGxhIGVtdWxhY2nzbiBzZXLhIG3hcyBwcmVjaXNhIHBvciBsbyBxdWUgcHVlZGUgaGFjZXIgcXVlIGFsZ3Vub3MgcHJvZ3JhbWFzIGZ1bmNpb25lbiBtZWpvci4iLAoJCSAgICBJRENfU1RBVElDLDE1LDM3LDIyOCw4MAogICAgQ09OVFJPTCAgICAgICAgIlBlcm1pdGlyIGFsIGdlc3RvciBkZSB2ZW50YW5hcyBjb250cm9sYXIgbGFzIHZlbnRhbmFzIixJRENfRU5BQkxFX01BTkFHRUQsIkJ1dHRvbiIsQlNfQVVUT0NIRUNLQk9YIHwgV1NfVEFCU1RPUCwxNSwxMTEsMjMwLDgKCiAgICBMVEVYVCAgICAgICAgICAgIlB1ZWRlIGVsZWdpciBlbnRyZSB0ZW5lciB0b2RhcyBsYXMgYXBsaWNhY2lvbmVzIGRlIFdpbmRvd3MgY29uZmluYWRhcyBhIPpuaWNhIHZlbnRhbmEgcXVlIGFjdPplIGNvbW8gdW4gZXNjcml0b3JpbyB2aXJ0dWFsLCBvIGJpZW4gaGFjZXIgcXVlIHNlIGNvbXBvcnRlbiBjb21vIHN1cyBvdHJhcyBhcGxpY2FjaW9uZXMuIiwKICAgICAgICAgICAgICAgICAgICBJRENfU1RBVElDLDE1LDEyNSwyMjgsMjgKICAgIExURVhUICAgICAgICAgICAiRGltZW5zaW9uZXM6IixJRENfREVTS1RPUF9TSVpFLDE1LDE2Nyw0NCw4LFdTX0RJU0FCTEVECiAgICBMVEVYVCAgICAgICAgICAgIlgiLElEQ19ERVNLVE9QX0JZLDEwOCwxNjcsOCw4LFdTX0RJU0FCTEVECiAgICBDT05UUk9MICAgICAgICAgIkVtdWxhciB1biBlc2NyaXRvcmlvIHZpcnR1YWwiLElEQ19FTkFCTEVfREVTS1RPUCwiQnV0dG9uIiwKICAgICAgICAgICAgICAgICAgICBCU19BVVRPQ0hFQ0tCT1ggfCBXU19UQUJTVE9QLDE1LDE1MiwyMzAsMTAKCiAgICBFRElUVEVYVCAgICAgICAgSURDX0RFU0tUT1BfV0lEVEgsNjQsMTY3LDQwLDEyLEVTX0FVVE9IU0NST0xMIHwgRVNfTlVNQkVSIHwgV1NfRElTQUJMRUQKICAgIEVESVRURVhUICAgICAgICBJRENfREVTS1RPUF9IRUlHSFQsMTE3LDE2Nyw0MCwxMixFU19BVVRPSFNDUk9MTCB8IEVTX05VTUJFUiB8IFdTX0RJU0FCTEVECgogICAgR1JPVVBCT1ggICAgICAgICIgRGlyZWN0M0QgIixJRENfU1RBVElDLDgsMTg5LDI0NCw1MAoKICAgIExURVhUICAgICAgICAgICAiU29wb3J0ZSBWZXJ0ZXggU2hhZGVyOiAiLElEQ19TVEFUSUMsMTUsMTk5LDgwLDMwCiAgICBDT01CT0JPWCAgICAgICAgSURDX0QzRF9WU0hBREVSX01PREUsMTAwLDE5NywxNDUsNzAsQ0JTX0RST1BET1dOTElTVCB8IFdTX1ZTQ1JPTEwgfCBXU19UQUJTVE9QCgogICAgQ09OVFJPTCAgICAgICAgICJQZXJtaXRpciBQaXhlbCBTaGFkZXIgKHNpIGhheSBzb3BvcnRlIHBvciBoYXJkd2FyZSkiLElEQ19EM0RfUFNIQURFUl9NT0RFLCJCdXR0b24iLEJTX0FVVE9DSEVDS0JPWCB8IFdTX1RBQlNUT1AsMTUsMjE2LDIzMCwxMApFTkQKCklERF9ETExDRkcgRElBTE9HIERJU0NBUkRBQkxFICAwLCAwLCAyNjAsIDI1MApTVFlMRSBXU19DSElMRCB8IFdTX0RJU0FCTEVECkZPTlQgOCwgIk1TIFNoZWxsIERsZyIKQkVHSU4KICAgIEdST1VQQk9YICAgICAgICAiIFJlZW1wbGF6b3MgZGUgRExMICIsSURDX1NUQVRJQyw4LDQsMjQ0LDI0MAogICAgTFRFWFQgICAgICAgICAgICJDYWRhIGxpYnJlcu1hIGRlIGVubGFjZSBkaW7hbWljbyBzZSBwdWVkZSBlc3BlY2lmaWNhciBwYXJhIHF1ZSBzZWEgbGEgaW50ZXJuYSAocHJvcG9yY2lvbmFkYSBwb3IgV2luZSkgbyBsYSBuYXRpdmEgKG9idGVuaWRhIGRlIFdpbmRvd3MgbyBwcm9wb3JjaW9uYWRhIHBvciBsYSBhcGxpY2FjafNuKS4iCiAgICAgICAgICAgICAgICAgICAgLElEQ19TVEFUSUMsMTYsMTYsMjIwLDMyCiAgICBMVEVYVCAgICAgICAgICAgIk51ZXZvIHJlZW1wbGF6byBwYXJhIGxpYnJlcu1hOiIsSURDX1NUQVRJQywxNiw1OCwxMDAsOAogICAgQ09NQk9CT1ggICAgICAgIElEQ19ETExDT01CTywxNiw2OCwxNDAsMTQsQ0JTX0RST1BET1dOIHwgV1NfVlNDUk9MTCB8IFdTX1RBQlNUT1AgfCBDQlNfU09SVCB8IENCU19MT1dFUkNBU0UKICAgIFBVU0hCVVRUT04gICAgICAiJkHxYWRpciIsSURDX0RMTFNfQURERExMLCAxNjQsNjgsODIsMTMsQlNfREVGUFVTSEJVVFRPTgogICAgTFRFWFQgICAgICAgICAgICJSZWVtcGxhem9zIGV4aXN0ZW50ZXM6IixJRENfU1RBVElDLDE2LDg2LDEwMCw4CiAgICBMSVNUQk9YICAgICAgICAgSURDX0RMTFNfTElTVCwxNiw5NiwxNDAsMTQwLFdTX0JPUkRFUiB8IFdTX1RBQlNUT1AgfCBXU19WU0NST0xMCiAgICBQVVNIQlVUVE9OICAgICAgIiZFZGl0YXIiLElEQ19ETExTX0VESVRETEwsMTY0LDk2LDgyLDE0CiAgICBQVVNIQlVUVE9OICAgICAgIkUmbGltaW5hciIsSURDX0RMTFNfUkVNT1ZFRExMLDE2NCwxMTQsODIsMTQKRU5ECgpJRERfTE9BRE9SREVSIERJQUxPRyBESVNDQVJEQUJMRSA4MCwgOTAsIDEyMCwgOTIKU1RZTEUgRFNfTU9EQUxGUkFNRSB8IFdTX0NBUFRJT04gfCBXU19TWVNNRU5VCkNBUFRJT04gIkVkaXRhciByZWVtcGxhem8iCkZPTlQgOCwgIk1TIFNoZWxsIERsZyIKQkVHSU4KICAgIEdST1VQQk9YICAgICAgICAiIE9yZGVuIGRlIGNhcmdhICIsSURDX1NUQVRJQyw4LDQsMTA0LDY2CiAgICBDT05UUk9MICAgICAgICAgIiZJbnRlcm5hIChXaW5lKSIsSURDX1JBRF9CVUlMVElOLCJCdXR0b24iLCBCU19BVVRPUkFESU9CVVRUT04gfCBXU19HUk9VUCwxNiwxNCw4NSwxMAogICAgQ09OVFJPTCAgICAgICAgICImTmF0aXZhIChXaW5kb3dzKSIsSURDX1JBRF9OQVRJVkUsIkJ1dHRvbiIsIEJTX0FVVE9SQURJT0JVVFRPTiwxNiwyNCw4NSwxMAogICAgQ09OVFJPTCAgICAgICAgICJJJm50ZXJuYSB5IGx1ZWdvIG5hdGl2YSIsSURDX1JBRF9CVUlMVElOX05BVElWRSwiQnV0dG9uIiwgQlNfQVVUT1JBRElPQlVUVE9OLDE2LDM0LDg1LDEwCiAgICBDT05UUk9MICAgICAgICAgIk5hdGkmdmEgeSBsdWVnbyBpbnRlcm5hIixJRENfUkFEX05BVElWRV9CVUlMVElOLCJCdXR0b24iLCBCU19BVVRPUkFESU9CVVRUT04sMTYsNDQsODUsMTAKICAgIENPTlRST0wgICAgICAgICAiJkRlc2hhYmlsaXRhciIsSURDX1JBRF9ESVNBQkxFLCJCdXR0b24iLCBCU19BVVRPUkFESU9CVVRUT04sMTYsNTQsODUsMTAKICAgIERFRlBVU0hCVVRUT04gICAiQWNlcHRhciIsSURPSyw4LDc0LDUwLDE0LFdTX0dST1VQCiAgICBQVVNIQlVUVE9OICAgICAgIkNhbmNlbGFyIixJRENBTkNFTCw2Miw3NCw1MCwxNCxXU19HUk9VUApFTkQKCklERF9EUklWRUNGRyBESUFMT0cgRElTQ0FSREFCTEUgIDAsIDAsIDI2MCwgMjUwClNUWUxFIFdTX0NISUxEIHwgV1NfRElTQUJMRUQKRk9OVCA4LCAiTVMgU2hlbGwgRGxnIgpCRUdJTgogICAgR1JPVVBCT1ggICAgICAgICIgTWFwZW9zIGRlIHVuaWRhZCAiLElEQ19TVEFUSUMsOCw0LDI0NCwyNDAKICAgIENPTlRST0wgICAgICAgICAiTGlzdHZpZXciLElEQ19MSVNUX0RSSVZFUywiU3lzTGlzdFZpZXczMiIsTFZTX1JFUE9SVCB8IExWU19BVVRPQVJSQU5HRSB8IExWU19BTElHTkxFRlQgfAogICAgICAgICAgICAgICAgICAgIExWU19TSU5HTEVTRUwgfCBXU19CT1JERVIgfCBXU19UQUJTVE9QLCAxNSwxOCwyMzIsNzYKICAgIFBVU0hCVVRUT04gICAgICAiJkHxYWRpci4uLiIsSURDX0JVVFRPTl9BREQsMTUsOTgsMzcsMTQKICAgIFBVU0hCVVRUT04gICAgICAiJkVsaW1pbmFyIixJRENfQlVUVE9OX1JFTU9WRSw1Niw5OCwzNywxNAogICAgUFVTSEJVVFRPTiAgICAgICJBdXRvJmRldGVjdGFyLi4uIixJRENfQlVUVE9OX0FVVE9ERVRFQ1QsMTk3LDk4LDQ5LDE0CgogICAgLyogZWRpdGluZyBkcml2ZSBkZXRhaWxzICovCiAgICBMVEVYVCAgICAgICAgICAgIiZSdXRhOiIsSURDX1NUQVRJQywxNSwxMjMsMjAsOQogICAgRURJVFRFWFQgICAgICAgIElEQ19FRElUX1BBVEgsNDEsMTIwLDE2MCwxMyxFU19BVVRPSFNDUk9MTCB8IFdTX1RBQlNUT1AKICAgIFBVU0hCVVRUT04gICAgICAiJkV4YW1pbmFyLi4uIixJRENfQlVUVE9OX0JST1dTRV9QQVRILDIwNiwxMjAsNDAsMTMKCiAgICBMVEVYVCAgICAgICAgICAgIiZUaXBvOiIsSURDX1NUQVRJQ19UWVBFLDE1LDEzOCwyMSwxMAogICAgQ09NQk9CT1ggICAgICAgIElEQ19DT01CT19UWVBFLDQxLDEzNSw3Nyw2MCxDQlNfRFJPUERPV05MSVNUIHwgV1NfVlNDUk9MTCB8IFdTX1RBQlNUT1AKCiAgICBMVEVYVCAgICAgICAgICAgIkV0aXF1ZXRhIHkgbvptLiBkZSBzZXJpZSIsSURDX0xBQkVMU0VSSUFMX1NUQVRJQywxNSwxNTUsOTUsMTAKCiAgICBQVVNIQlVUVE9OICAgICAgIiZNb3N0cmFyIGF2YW56YWRvIixJRENfQlVUVE9OX1NIT1dfSElERV9BRFZBTkNFRCwxODYsMTM2LDYwLDEzCiAgICBDT05UUk9MICAgICAgICAgIkF1dG9kZXRlY3RhciAmZGVzZGUgZGlzcG9zaXRpdm86IixJRENfUkFESU9fQVVUT0RFVEVDVCwiQnV0dG9uIiwKICAgICAgICAgICAgICAgICAgICBCU19BVVRPUkFESU9CVVRUT04sMTUsMTY2LDkzLDEwCiAgICBFRElUVEVYVCAgICAgICAgSURDX0VESVRfREVWSUNFLDI3LDE3NiwxNzQsMTMsRVNfQVVUT0hTQ1JPTEwKICAgIFBVU0hCVVRUT04gICAgICAiRSZ4YW1pbmFyLi4uIixJRENfQlVUVE9OX0JST1dTRV9ERVZJQ0UsMjA2LDE3Niw0MCwxMwogICAgQ09OVFJPTCAgICAgICAgICJBJnNpZ25hciBtYW51YWxtZW50ZToiLElEQ19SQURJT19BU1NJR04sIkJ1dHRvbiIsCiAgICAgICAgICAgICAgICAgICAgQlNfQVVUT1JBRElPQlVUVE9OLDE1LDE5NSw2OSwxMAoKICAgIExURVhUICAgICAgICAgICAiJkV0aXF1ZXRhOiIsSURDX1NUQVRJQ19MQUJFTCwzMywyMDgsMjksMTIKICAgIEVESVRURVhUICAgICAgICBJRENfRURJVF9MQUJFTCw2MywyMDUsNzgsMTMsRVNfQVVUT0hTQ1JPTEwgfCBXU19UQUJTVE9QCiAgICBMVEVYVCAgICAgICAgICAgIiZOuiBzZXJpZToiLElEQ19TVEFUSUNfU0VSSUFMLDMzLDIyNSwyOSwxMgogICAgRURJVFRFWFQgICAgICAgIElEQ19FRElUX1NFUklBTCw2MywyMjEsNzgsMTMsRVNfQVVUT0hTQ1JPTEwgfCBXU19UQUJTVE9QCgogICAgQ09OVFJPTCAgICAgICAgICJNb3N0cmFyIGZpY2hlcm9zIHB1bnRvIixJRENfU0hPV19ET1RfRklMRVMsIkJ1dHRvbiIsQlNfQVVUT0NIRUNLQk9YIHwgV1NfVEFCU1RPUCw4LDI2MCwyMzAsOApFTkQKCklERF9BVURJT0NGRyBESUFMT0cgRElTQ0FSREFCTEUgIDAsIDAsIDI2MCwgMjUwClNUWUxFIFdTX0NISUxEIHwgV1NfRElTQUJMRUQKRk9OVCA4LCAiTVMgU2hlbGwgRGxnIgpCRUdJTgogICAgR1JPVVBCT1ggICAgICAgICIgU2VsZWNjafNuIGRlIG1hbmVqYWRvciAiLElEQ19TVEFUSUMsOCw0LDI0NCwxOTUKICAgIExURVhUICAgICAgICAgICAiU2VsZWNjaW9uZSB1biBtYW5lamFkb3IgZGUgc29uaWRvIG1hcmNhbmRvIGxhIGNhc2lsbGEgZGVsIGRlc2VhZG8uIFBhcmEgZGVzaGFiaWxpdGFyIGVsIHNvbmlkbyBubyBzZWxlY2Npb25lIG5pbmd1bm8uIE5vIHNlIHJlY29taWVuZGEgbGEgc2VsZWNjafNuIGRlIG3hcyBkZSB1biBtYW5lamFkb3IuIFBhcmEgY29uZmlndXJhciB1biBtYW5lamFkb3IgaGFnYSBkb2JsZSBjbGljayBzb2JyZSDpbC4iLElEQ19TVEFUSUMsMTUsMTUsMjI3LDM1CiAgICBDT05UUk9MICAgICAgICAgIkRpc3Bvc2l0aXZvcyIsSURDX0FVRElPX1RSRUUsIlN5c1RyZWVWaWV3MzIiLFdTX0JPUkRFUiB8IFdTX1RBQlNUT1AsMTUsNTAsMTQwLDE0MAogICAgUFVTSEJVVFRPTiAgICAgICJQcm9iYXIgc29uaWRvIixJRENfQVVESU9fVEVTVCwxNzAsNTAsNTksMTQKICAgIFBVU0hCVVRUT04gICAgICAiUGFuZWwgZGUgY29udHJvbCIsSURDX0FVRElPX0NPTlRST0xfUEFORUwsMTcwLDcwLDU5LDE0CiAgICBHUk9VUEJPWCAgICAgICAgIiBEaXJlY3RTb3VuZCAiLElEQ19TVEFUSUMsOCwyMDUsMjQ0LDYwCiAgICBMVEVYVCAgICAgICAgICAgIkFjZWxlcmFjafNuIEhhcmR3YXJlOiAiLElEQ19TVEFUSUMsMTUsMjE1LDkwLDEwCiAgICBDT01CT0JPWAkgICAgSURDX0RTT1VORF9IV19BQ0NFTCwxMDAsMjEzLDE1MCw3MCxDQlNfRFJPUERPV05MSVNUIHwgV1NfVlNDUk9MTCB8IFdTX1RBQlNUT1AKICAgIExURVhUICAgICAgICAgICAiRnJlY3VlbmNpYSBtdWVzdHJlbzoiLElEQ19TVEFUSUMsMTUsMjMyLDcwLDgKICAgIENPTUJPQk9YICAgICAgICBJRENfRFNPVU5EX1JBVEVTLDkwLDIzMCw0Miw3NixDQlNfRFJPUERPV05MSVNUIHwgV1NfVlNDUk9MTCB8IFdTX1RBQlNUT1AKICAgIExURVhUICAgICAgICAgICAiQml0cyBwb3IgbXVlc3RyYToiLElEQ19TVEFUSUMsMTM3LDIzMiw4MCw4CiAgICBDT01CT0JPWCAgICAgICAgSURDX0RTT1VORF9CSVRTLDIyMCwyMzAsMzAsNTYsQ0JTX0RST1BET1dOTElTVCB8IFdTX1ZTQ1JPTEwgfCBXU19UQUJTVE9QCiAgICBDT05UUk9MICAgICAgICAgIkVtdWxhY2nzbiBkZWwgbWFuZWphZG9yIixJRENfRFNPVU5EX0RSVl9FTVVMLCJCdXR0b24iLEJTX0FVVE9DSEVDS0JPWCB8IFdTX1RBQlNUT1AsMTUsMjUwLDIzMCwxMApFTkQKCklERF9ERVNLVE9QX0lOVEVHUkFUSU9OIERJQUxPRyBESVNDQVJEQUJMRSAgMCwgMCwgMjYwLCAyNTAKU1RZTEUgV1NfQ0hJTEQgfCBXU19ESVNBQkxFRApGT05UIDgsICJNUyBTaGVsbCBEbGciCkJFR0lOCiAgICBHUk9VUEJPWCAgICAgICAgIiBBcGFyaWVuY2lhICIsSURDX1NUQVRJQyw4LDQsMjQ0LDEwNgogICAgTFRFWFQgICAgICAgICAgICJUZW1hOiIsSURDX1NUQVRJQywxNSwxNiwxMzAsOAogICAgQ09NQk9CT1ggICAgICAgIElEQ19USEVNRV9USEVNRUNPTUJPLDE1LDI0LDEzMCwxNCxDQlNfRFJPUERPV05MSVNUIHwgV1NfVlNDUk9MTCB8IFdTX1RBQlNUT1AKICAgIFBVU0hCVVRUT04gICAgICAiSW5zdGFsYXIgdGVtYS4uLiIsSURDX1RIRU1FX0lOU1RBTEwsMTUyLDIzLDkzLDE0CiAgICBMVEVYVCAgICAgICAgICAgIkNvbG9yOiIsSURDX1RIRU1FX0NPTE9SVEVYVCwxNSw0MCwxMTIsOAogICAgQ09NQk9CT1ggICAgICAgIElEQ19USEVNRV9DT0xPUkNPTUJPLDE1LDQ4LDExMiwxNCxDQlNfRFJPUERPV05MSVNUIHwgV1NfVlNDUk9MTCB8IFdTX1RBQlNUT1AKICAgIExURVhUICAgICAgICAgICAiVGFtYfFvOiIsSURDX1RIRU1FX1NJWkVURVhULDEzNSw0MCwxMTAsOAogICAgQ09NQk9CT1ggICAgICAgIElEQ19USEVNRV9TSVpFQ09NQk8sMTM1LDQ4LDExMCwxNCxDQlNfRFJPUERPV05MSVNUIHwgV1NfVlNDUk9MTCB8IFdTX1RBQlNUT1AKICAgIExURVhUICAgICAgICAgICAiRWxlbWVudG86IixJRENfU1RBVElDLDE1LDY0LDExMiw4CiAgICBDT01CT0JPWCAgICAgICAgSURDX1NZU1BBUkFNX0NPTUJPLDE1LDc0LDExMiwxMjAsQ0JTX0RST1BET1dOTElTVCB8IFdTX1ZTQ1JPTEwgfCBXU19UQUJTVE9QIHwgQ0JTX1NPUlQKICAgIExURVhUICAgICAgICAgICAiQ29sb3I6IixJRENfU1lTUEFSQU1fQ09MT1JfVEVYVCwxMzUsNjQsMjUsOCxXU19ESVNBQkxFRAogICAgUFVTSEJVVFRPTiAgICAgICIiLElEQ19TWVNQQVJBTV9DT0xPUiwxMzUsNzQsMjUsMTMsV1NfRElTQUJMRUQgfCBCU19PV05FUkRSQVcKICAgIExURVhUICAgICAgICAgICAiVGFtYfFvOiIsSURDX1NZU1BBUkFNX1NJWkVfVEVYVCwxNjYsNjQsMzAsOCxXU19ESVNBQkxFRAogICAgRURJVFRFWFQgICAgICAgIElEQ19TWVNQQVJBTV9TSVpFLDE2Niw3NCwyMywxMyxFU19BVVRPSFNDUk9MTCB8IFdTX1RBQlNUT1AgfCBXU19ESVNBQkxFRAogICAgQ09OVFJPTCAgICAgICAgICIiLElEQ19TWVNQQVJBTV9TSVpFX1VELFVQRE9XTl9DTEFTUyxVRFNfU0VUQlVERFlJTlQgfCBXU19ESVNBQkxFRCwxODcsNzQsMTUsMTMKICAgIFBVU0hCVVRUT04gICAgICAiRnVlbnRlIixJRENfU1lTUEFSQU1fRk9OVCwyMDgsNzQsMzcsMTMsV1NfRElTQUJMRUQKICAgIEdST1VQQk9YICAgICAgICAiIENhcnBldGFzIGRlbCBzaXN0ZW1hICIsSURDX1NUQVRJQyw4LDExNCwyNDQsMTAwCiAgICBDT05UUk9MICAgICAgICAgIkxpc3R2aWV3IixJRENfTElTVF9TRlBBVEhTLCJTeXNMaXN0VmlldzMyIixMVlNfUkVQT1JUIHwgTFZTX0FVVE9BUlJBTkdFIHwgTFZTX0FMSUdOTEVGVCB8CiAgICAgICAgICAgICAgICAgICAgIExWU19TSU5HTEVTRUwgfCBXU19CT1JERVIgfCBXU19UQUJTVE9QLCAxNSwxMjYsMjMwLDY0CiAgICBDT05UUk9MICAgICAgICAgIkVubGFjZSBhOiIsSURDX0xJTktfU0ZQQVRILCJCdXR0b24iLEJTX0FVVE9DSEVDS0JPWHxXU19UQUJTVE9QfFdTX0RJU0FCTEVELDE1LDE5NSw1MCwxMwogICAgRURJVFRFWFQgICAgICAgICBJRENfRURJVF9TRlBBVEgsNjUsMTk1LDE0NSwxMyxFU19BVVRPSFNDUk9MTHxXU19UQUJTVE9QfFdTX0RJU0FCTEVECiAgICBQVVNIQlVUVE9OICAgICAgIkV4cGxvcmFyIixJRENfQlJPV1NFX1NGUEFUSCwyMTUsMTk1LDMwLDEzLFdTX0RJU0FCTEVECkVORAoKU1RSSU5HVEFCTEUgRElTQ0FSREFCTEUKQkVHSU4KICAgIElEU19XSU5FX1ZFUlNJT04gICAgICAgICJDVlMiCiAgICBJRFNfVEFCX0FQUExJQ0FUSU9OUyAgICAiQXBsaWNhY2lvbmVzIgogICAgSURTX1RBQl9ETExTICAgICAgICAgICAgIkxpYnJlcu1hcyIKICAgIElEU19UQUJfRFJJVkVTICAgICAgICAgICJVbmlkYWRlcyIKICAgIElEU19DSE9PU0VfUEFUSCAgICAgICAgICJQb3IgZmF2b3IsIHNlbGVjY2lvbmUgZWwgZGlyZWN0b3JpbyB1bml4LiIKICAgIElEU19ISURFX0FEVkFOQ0VEICAgICAgICJPY3VsdGFyIGF2YW56YWRvIgogICAgSURTX1NIT1dfQURWQU5DRUQgICAgICAgIk1vc3RyYXIgYXZhbnphZG8iCiAgICBJRFNfTk9USEVNRSAgICAgICAgICAgICAiKE5pbmf6biB0ZW1hKSIKICAgIElEU19UQUJfR1JBUEhJQ1MgICAgICAgICJHcuFmaWNvcyIKICAgIElEU19UQUJfREVTS1RPUF9JTlRFR1JBVElPTiAiSW50ZWdyYWNp824gZGUgZXNjcml0b3JpbyIKICAgIElEU19UQUJfQVVESU8gICAgICAgICAgICJBdWRpbyIKICAgIElEU19UQUJfQUJPVVQgICAgICAgICAgICJBY2VyY2EgZGUiCiAgICBJRFNfV0lORUNGR19USVRMRSAgICAgICAiQ29uZmlndXJhY2nzbiBkZSBXaW5lIgogICAgSURTX1dJTkVDRkdfVElUTEVfQVBQICAgIkNvbmZpZ3VyYWNp824gZGUgV2luZSBwYXJhICVzIgogICAgSURTX1RIRU1FRklMRSAgICAgICAgICAgIkZpY2hlcm9zIGRlIHRlbWEiCiAgICBJRFNfVEhFTUVGSUxFX1NFTEVDVCAgICAiU2VsZWNjaW9uZSB1biBmaWNoZXJvIGRlIHRlbWEiCiAgICBJRFNfQVVESU9fTUlTU0lORyAgICAgICAiQWN0dWFsbWVudGUgbm8gaGF5IG5pbmf6biBtYW5lamFkb3IgZGUgYXVkaW8gZXNwZWNpZmljYWRvIGVuIGVsIHJlZ2lzdHJvLlxuXG5TZSBoYSBzZWxlY2Npb25hZG8gcGFyYSB1c3RlZCB1biBtYW5lamFkb3IgcmVjb21lbmRhZG8uIFB1ZWRlIHVzYXIg6XN0ZSBvIHNlbGVjY2lvbmFyIG90cm8gbWFuZWphZG9yIGRpc3BvbmlibGUuXG5cbkRlYmUgcHVsc2FyIEFwbGljYXIgcGFyYSBxdWUgbGEgc2VsZWNjafNuIHN1cmphIGVmZWN0by4iCiAgICBJRFNfU0hFTExfRk9MREVSICAgICAgICAiQ2FycGV0YSBkZWwgc2lzdGVtYSIKICAgIElEU19MSU5LU19UTyAgICAgICAgICAgICJFbmxhemEgYSIKRU5ECgpTVFJJTkdUQUJMRSBESVNDQVJEQUJMRQpCRUdJTgogICAgSURTX0RMTF9XQVJOSU5HICAgICAgICAgIk5vIHNlIHJlY29taWVuZGEgY2FtYmlhciBlbCBvcmRlbiBkZSBjYXJnYSBkZSBlc3RhIGxpYnJlcu1hLlxuv0VzdOEgc2VndXJvIHF1ZSBkZXNlYSBoYWNlciBlc3RvPyIKICAgIElEU19ETExfV0FSTklOR19DQVBUSU9OICJBZHZlcnRlbmNpYTogbGlicmVy7WEgZGVsIHNpc3RlbWEiCiAgICBJRFNfRExMX05BVElWRSAgICAgICAgICAibmF0aXZhIgogICAgSURTX0RMTF9CVUlMVElOICAgICAgICAgImludGVybmEiCiAgICBJRFNfRExMX05BVElWRV9CVUlMVElOICAibmF0aXZhLCBpbnRlcm5hIgogICAgSURTX0RMTF9CVUlMVElOX05BVElWRSAgImludGVybmEsIG5hdGl2YSIKICAgIElEU19ETExfRElTQUJMRUQgICAgICAgICJkZXNoYWJpbGl0YWRhIgogICAgSURTX0RFRkFVTFRfU0VUVElOR1MgICAgIkNvbmZpZ3VyYWNp824gcG9yIGRlZmVjdG8iCiAgICBJRFNfRVhFQ1VUQUJMRV9GSUxURVIgICAiUHJvZ3JhbWFzIFdpbmUgKCouZXhlLCouZXhlLnNvKVwwKi5leGU7Ki5leGUuc29cMCIKICAgIElEU19VU0VfR0xPQkFMX1NFVFRJTkdTICJVc2FyIGxhIGNvbmZpZ3VyYWNp824gZ2xvYmFsIgogICAgSURTX1NFTEVDVF9FWEVDVVRBQkxFICAgIlNlbGVjY2lvbmUgdW4gZmljaGVybyBlamVjdXRhYmxlIgpFTkQKClNUUklOR1RBQkxFIERJU0NBUkRBQkxFCkJFR0lOCiAgICBJRFNfU0hBREVSX01PREVfSEFSRFdBUkUgICAgIkhhcmR3YXJlIgogICAgSURTX1NIQURFUl9NT0RFX05PTkUgICAgICAgICJOaW5ndW5vIgpFTkQKClNUUklOR1RBQkxFIERJU0NBUkRBQkxFCkJFR0lOCiAgICBJRFNfRFJJVkVfVU5LTk9XTiAgICAgICAgICAgIkF1dG9kZXRlY3RhciIKICAgIElEU19EUklWRV9GSVhFRCAgICAgICAgICAgICAiRGlzY28gZHVybyBsb2NhbCIKICAgIElEU19EUklWRV9SRU1PVEUgICAgICAgICAgICAiQ29tcGFydGljafNuIGRlIHJlZCIKICAgIElEU19EUklWRV9SRU1PVkFCTEUgICAgICAgICAiRGlzY28gZmxleGlibGUiCiAgICBJRFNfRFJJVkVfQ0RST00gICAgICAgICAgICAgIkNELVJPTSIKICAgIElEU19EUklWRV9MRVRURVJTX0VYQ0VFREVEICAiTm8gcHVlZGUgYfFhZGlyIG3hcyB1bmlkYWRlcy5cblxuQ2FkYSB1bmlkYWQgZGViZSB0ZW5lciB1bmEgbGV0cmEsIGRlIGxhIEEgYSBsYSBaLCBwb3IgbG8gcXVlIG5vIHB1ZWRlIHRlbmVyIG3hcyBkZSAyNiIKICAgIElEU19TWVNURU1fRFJJVkVfTEFCRUwgICAgICAiVW5pZGFkIGRlbCBzaXN0ZW1hIgogICAgSURTX0NPTkZJUk1fREVMRVRFX0MgICAgICAgICK/U2VndXJvIHF1ZSBkZXNlYSBlbGltaW5hciBsYSB1bmlkYWQgQz9cblxuTGEgbWF5b3LtYSBkZSBsYXMgYXBsaWNhY2lvbmVzIFdpbmRvd3MgZXNwZXJhbiBxdWUgbGEgdW5pZGFkIEMgZXhpc3RhLCB5IGZhbGxhcuFuIHNpIG5vIGV4aXN0ZS4goVNpIGxvIGhhY2UgcmVjdWVyZGUgdm9sdmVyIGEgY3JlYXJsYSEiCiAgICBJRFNfQ09MX0RSSVZFTEVUVEVSICAgICAgICAgIkxldHJhIgogICAgSURTX0NPTF9EUklWRU1BUFBJTkcgICAgICAgICJNYXBlbyBkZSB1bmlkYWQiCiAgICBJRFNfTk9fRFJJVkVfQyAgICAgICAgICAgICAgIk5vIHRpZW5lIHVuYSB1bmlkYWQgQy4gRXN0byBubyBlcyBtdXkgYnVlbm8uXG5cbqFSZWN1ZXJkZSBwdWxzYXIgJ0HxYWRpcicgZW4gbGEgcGVzdGHxYSBkZSBVbmlkYWRlcyBwYXJhIGNyZWFyIHVuYSFcbiIKRU5ECgpTVFJJTkdUQUJMRSBESVNDQVJEQUJMRQpCRUdJTgogICAgSURTX0FDQ0VMX0ZVTEwgICAgICAgICAgICAgICJDb21wbGV0YSIKICAgIElEU19BQ0NFTF9TVEFOREFSRCAgICAgICAgICAiRXN04W5kYXIiCiAgICBJRFNfQUNDRUxfQkFTSUMgICAgICAgICAgICAgIkLhc2ljYSIKICAgIElEU19BQ0NFTF9FTVVMQVRJT04gICAgICAgICAiRW11bGFjafNuIgogICAgSURTX0RSSVZFUl9BTFNBICAgICAgICAgICAgICJNYW5lamFkb3IgQUxTQSIKICAgIElEU19EUklWRVJfRVNPVU5EICAgICAgICAgICAiTWFuZWphZG9yIEVzb3VuRCIKICAgIElEU19EUklWRVJfT1NTICAgICAgICAgICAgICAiTWFuZWphZG9yIE9TUyIKICAgIElEU19EUklWRVJfSkFDSyAgICAgICAgICAgICAiTWFuZWphZG9yIEpBQ0siCiAgICBJRFNfRFJJVkVSX05BUyAgICAgICAgICAgICAgIk1hbmVqYWRvciBOQVMiCiAgICBJRFNfRFJJVkVSX0FVRElPSU8gICAgICAgICAgIk1hbmVqYWRvciBBdWRpbyBJTyAoU29sYXJpcykiCiAgICBJRFNfRFJJVkVSX0NPUkVBVURJTyAgICAgICAgIk1hbmVqYWRvciBDb3JlQXVkaW8iCiAgICBJRFNfT1BFTl9EUklWRVJfRVJST1IgICAgICAgIqFObyBzZSBoYSBwb2RpZG8gYWJyaXIgJXMhIgogICAgSURTX1NPVU5ERFJJVkVSUyAgICAgICAgICAgICJNYW5lamFkb3JlcyBkZSBzb25pZG8iCiAgICBJRFNfREVWSUNFU19XQVZFT1VUICAgICAgICAgIkRpc3Bvc2l0aXZvcyBkZSBzYWxpZGEgZGUgb25kYSIKICAgIElEU19ERVZJQ0VTX1dBVkVJTiAgICAgICAgICAiRGlzcG9zaXRpdm9zIGRlIGVudHJhZGEgZGUgb25kYSIKICAgIElEU19ERVZJQ0VTX01JRElPVVQgICAgICAgICAiRGlzcG9zaXRpdm9zIGRlIHNhbGlkYSBNSURJIgogICAgSURTX0RFVklDRVNfTUlESUlOICAgICAgICAgICJEaXNwb3NpdGl2b3MgZGUgZW50cmFkYSBNSURJIgogICAgSURTX0RFVklDRVNfQVVYICAgICAgICAgICAgICJEaXNwb3NpdGl2b3MgYXV4aWxpYXJlcyIKICAgIElEU19ERVZJQ0VTX01JWEVSICAgICAgICAgICAiRGlzcG9zaXRpdm9zIG1lemNsYWRvcmVzIgogICAgSURTX1VOQVZBSUxBQkxFX0RSSVZFUiAgICAgICKhU2UgaGEgZW5jb250cmFkbyBlbiBlbCByZWdpc3RybyB1biBtYW5lamFkb3IgcXVlIG5vIGVzdOEgZGlzcG9uaWJsZSFcblxuv0VsaW1pbmFyIFwiJXNcIiBkZWwgcmVnaXN0cm8/IgogICAgSURTX1dBUk5JTkcgICAgICAgICAgICAgICAgICJBZHZlcnRlbmNpYSIKRU5ECgpTVFJJTkdUQUJMRSBESVNDQVJEQUJMRQpCRUdJTgogICAgSURDX1NZU1BBUkFNU19CVVRUT04gICAgICAgICAgICAiRm9uZG8gZGVsIGNvbnRyb2wiCiAgICBJRENfU1lTUEFSQU1TX0JVVFRPTl9URVhUICAgICAgICJUZXh0byBkZWwgY29udHJvbCIKICAgIElEQ19TWVNQQVJBTVNfREVTS1RPUCAgICAgICAgICAgIkVzY3JpdG9yaW8iCiAgICBJRENfU1lTUEFSQU1TX01FTlUgICAgICAgICAgICAgICJGb25kbyBkZWwgbWVu+iIKICAgIElEQ19TWVNQQVJBTVNfTUVOVV9URVhUICAgICAgICAgIlRleHRvIGRlbCBtZW76IgogICAgSURDX1NZU1BBUkFNU19TQ1JPTExCQVIgICAgICAgICAiQmFycmEgZGUgZGVzcGxhemFtaWVudG8iCiAgICBJRENfU1lTUEFSQU1TX1NFTEVDVElPTiAgICAgICAgICJGb25kbyBkZSBsYSBzZWxlY2Np824iCiAgICBJRENfU1lTUEFSQU1TX1NFTEVDVElPTl9URVhUICAgICJUZXh0byBkZSBsYSBzZWxlY2Np824iCiAgICBJRENfU1lTUEFSQU1TX1RPT0xUSVAgICAgICAgICAgICJGb25kbyBkZWwgY29uc2VqbyIKICAgIElEQ19TWVNQQVJBTVNfVE9PTFRJUF9URVhUICAgICAgIlRleHRvIGRlbCBjb25zZWpvIgogICAgSURDX1NZU1BBUkFNU19XSU5ET1cgICAgICAgICAgICAiRm9uZG8gZGUgbGEgdmVudGFuYSIKICAgIElEQ19TWVNQQVJBTVNfV0lORE9XX1RFWFQgICAgICAgIlRleHRvIGRlIGxhIHZlbnRhbmEiCiAgICBJRENfU1lTUEFSQU1TX0FDVElWRV9USVRMRSAgICAgICJCYXJyYSBkZSB07XR1bG8gYWN0aXZhIgogICAgSURDX1NZU1BBUkFNU19BQ1RJVkVfVElUTEVfVEVYVCAiVGV4dG8gZGUgYmFycmEgZGUgdO10dWxvIGFjdGl2YSIKICAgIElEQ19TWVNQQVJBTVNfSU5BQ1RJVkVfVElUTEUgICAgIkJhcnJhIGRlIHTtdHVsbyBpbmFjdGl2YSIKICAgIElEQ19TWVNQQVJBTVNfSU5BQ1RJVkVfVElUTEVfVEVYVCAiVGV4dG8gZGUgYmFycmEgZGUgdO10dWxvIGluYWN0aXZhIgpFTkQK