LyoKICogQ29weXJpZ2h0IDIwMDQgYnkgS3J6eXN6dG9mIEZvbHRtYW4KICogQ29weXJpZ2h0IDIwMDYgYnkgTWlrb2xhaiBaYWxld3NraQogKgogKiBUaGlzIGxpYnJhcnkgaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yCiAqIG1vZGlmeSBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBMZXNzZXIgR2VuZXJhbCBQdWJsaWMKICogTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkgdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbjsgZWl0aGVyCiAqIHZlcnNpb24gMi4xIG9mIHRoZSBMaWNlbnNlLCBvciAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgogKgogKiBUaGlzIGxpYnJhcnkgaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKICogYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKICogTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiAgU2VlIHRoZSBHTlUKICogTGVzc2VyIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KICoKICogWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05VIExlc3NlciBHZW5lcmFsIFB1YmxpYwogKiBMaWNlbnNlIGFsb25nIHdpdGggdGhpcyBsaWJyYXJ5OyBpZiBub3QsIHdyaXRlIHRvIHRoZSBGcmVlIFNvZnR3YXJlCiAqIEZvdW5kYXRpb24sIEluYy4sIDUxIEZyYW5rbGluIFN0LCBGaWZ0aCBGbG9vciwgQm9zdG9uLCBNQSAwMjExMC0xMzAxLCBVU0EKICovCgojaW5jbHVkZSAid29yZHBhZC5oIgoKTEFOR1VBR0UgTEFOR19QT0xJU0gsIFNVQkxBTkdfREVGQVVMVAoKSURNX01BSU5NRU5VIE1FTlUgRElTQ0FSREFCTEUKQkVHSU4KICAgIFBPUFVQICImUGxpayIKICAgIEJFR0lOCiAgICAgICAgTUVOVUlURU0gIiZOb3d5Li4uXHRDdHJsK04iLCAgICAgICAgICAgSURfRklMRV9ORVcKICAgICAgICBNRU5VSVRFTSAiJk90d/Nyei4uLlx0Q3RybCtPIiwgICAgICBJRF9GSUxFX09QRU4KICAgICAgICBNRU5VSVRFTSAiJlphcGlzelx0Q3RybCtTIiwgICAgICAgICBJRF9GSUxFX1NBVkUKICAgICAgICBNRU5VSVRFTSAiWiZhcGlzeiBqYWtvLi4uIiwgICAgICAgICBJRF9GSUxFX1NBVkVBUwogICAgICAgIE1FTlVJVEVNIFNFUEFSQVRPUgogICAgICAgIE1FTlVJVEVNICImRHJ1a3VqLi4uXHRDdHJsK1AiLCAgICBJRF9QUklOVAogICAgICAgIE1FTlVJVEVNICImUG9kZ2y5ZCB3eWRydWt1Li4uIiwgICAgSURfUFJFVklFVwogICAgICAgIE1FTlVJVEVNICImVXN0YXdpZW5pYSBzdHJvbnkuLi4iLCAgICAgICBJRF9QUklOVFNFVFVQCiAgICAgICAgTUVOVUlURU0gU0VQQVJBVE9SCiAgICAgICAgTUVOVUlURU0gIlphJmtv8WN6IiwgICAgICAgICBJRF9GSUxFX0VYSVQKICAgIEVORAogICAgUE9QVVAgIiZFZHljamEiCiAgICBCRUdJTgogICAgICAgIE1FTlVJVEVNICImQ29mbmlqXHRDdHJsK1oiLCAgICAgICAgICAgICAgIElEX0VESVRfVU5ETwogICAgICAgIE1FTlVJVEVNICImUG93dPNyelx0Q3RybCtZIiwgICAgICAgICAgICAgICBJRF9FRElUX1JFRE8KICAgICAgICBNRU5VSVRFTSBTRVBBUkFUT1IKICAgICAgICBNRU5VSVRFTSAiV3kmdG5palx0Q3RybCtYIiwgICAgICAgICAgICAgICAgSURfRURJVF9DVVQKICAgICAgICBNRU5VSVRFTSAiJktvcGl1alx0Q3RybCtDIiwgICAgICAgICAgICAgICBJRF9FRElUX0NPUFkKICAgICAgICBNRU5VSVRFTSAiV2tsJmVqXHRDdHJsK1YiLCAgICAgICAgICAgICAgICBJRF9FRElUX1BBU1RFCiAgICAgICAgTUVOVUlURU0gIiZVc3XxXHREZWwiLCAgICAgICAgICAgICAgICAgICAgSURfRURJVF9DTEVBUgogICAgICAgIE1FTlVJVEVNICImWmF6bmFjeiB3c3p5c3Rrb1x0Q3RybCtBIiwgICAgICAgICBJRF9FRElUX1NFTEVDVEFMTAogICAgICAgIE1FTlVJVEVNIFNFUEFSQVRPUgogICAgICAgIE1FTlVJVEVNICJabmFqJmSfLi4uXHRDdHJsK0YiLCAgICAgICAgICAgSURfRklORAogICAgICAgIE1FTlVJVEVNICJaJm5hamSfIG5hc3TqcG55XHRGMyIsICAgICAgICAgICAgICAgIElEX0ZJTkRfTkVYVAogICAgICAgIE1FTlVJVEVNICJaYSZtaWXxLi4uXHRDdHJsK0giLCAgICAgICAgSURfUkVQTEFDRQogICAgICAgIE1FTlVJVEVNIFNFUEFSQVRPUgogICAgICAgIE1FTlVJVEVNICJUeWxrbyBkbyAmb2Rjenl0dSIsICAgICAgICAgICAgICAgICAgSURfRURJVF9SRUFET05MWQogICAgICAgIE1FTlVJVEVNICImWm1vZGlmeWtvd2FueSIsICAgICAgICAgICAgICAgICAgIElEX0VESVRfTU9ESUZJRUQKICAgICAgICBNRU5VSVRFTSBTRVBBUkFUT1IKICAgICAgICBQT1BVUCAiJkRvZGF0a2kiCiAgICAgICAgQkVHSU4KICAgICAgICAgICAgTUVOVUlURU0gIlphem5hY3plbmllIC0gJmluZm8iLCAgICAgICAgICAgICBJRF9FRElUX1NFTEVDVElPTklORk8KICAgICAgICAgICAgTUVOVUlURU0gIiZGb3JtYXQgem5ha/N3IiwgICAgICAgICAgIElEX0VESVRfQ0hBUkZPUk1BVAogICAgICAgICAgICBNRU5VSVRFTSAiJlN0YW5kYXJkb3d5IGZvcm1hdCB6bmFr83ciLCAgICAgICAgICAgSURfRURJVF9ERUZDSEFSRk9STUFUCiAgICAgICAgICAgIE1FTlVJVEVNICJGb3JtYXQgYWthJnBpdHUiLCAgICAgICAgICAgSURfRURJVF9QQVJBRk9STUFUCiAgICAgICAgICAgIE1FTlVJVEVNICImUG9iaWVyeiB0ZWtzdCIsICAgICAgICAgICAgICAgICAgIElEX0VESVRfR0VUVEVYVAogICAgICAgIEVORAogICAgRU5ECiAgICBQT1BVUCAiV2lkbyZrIgogICAgQkVHSU4KICAgICAgICBNRU5VSVRFTSAiUGFzZWsgJm5hcnrqZHppIiwgICAgICAgIElEX1RPR0dMRV9UT09MQkFSCiAgICAgICAgTUVOVUlURU0gIlBhc2VrICZmb3JtYXR1IiwgICAgICBJRF9UT0dHTEVfRk9STUFUQkFSCiAgICAgICAgTUVOVUlURU0gIiZMaW5pamthIiwgICAgICAgICAgSURfVE9HR0xFX1JVTEVSCiAgICAgICAgTUVOVUlURU0gIlBhc2VrICZzdGFudSIsICAgICAgSURfVE9HR0xFX1NUQVRVU0JBUgogICAgICAgIE1FTlVJVEVNIFNFUEFSQVRPUgogICAgICAgIE1FTlVJVEVNICImT3BjamUuLi4iLCAgSURfVklFV1BST1BFUlRJRVMKICAgIEVORAogICAgUE9QVVAgIiZXc3RhdyIKICAgIEJFR0lOCiAgICAgICAgTUVOVUlURU0gIiZEYXRhIGkgZ29kemluYS4uLiIsICBJRF9EQVRFVElNRQogICAgRU5ECiAgICBQT1BVUCAiRm9yJm1hdCIKICAgIEJFR0lOCiAgICAgICAgTUVOVUlURU0gIiZDemNpb25rYS4uLiIsICAgICAgICAgICAgICAgICAgSURfRk9OVFNFVFRJTkdTCiAgICAgICAgTUVOVUlURU0gIiZXeXB1bmt0b3dhbmllIiAgICAgICAgICAgICAgICBJRF9CVUxMRVQKICAgICAgICBNRU5VSVRFTSAiJkFrYXBpdC4uLiIgICAgICAgICAgICAgIElEX1BBUkFGT1JNQVQKICAgICAgICBNRU5VSVRFTSAiJlRhYnVsYXRvcnkuLi4iICAgICAgICAgICAgICAgICAgIElEX1RBQlNUT1BTCiAgICAgICAgUE9QVVAgIlSzJm8iCiAgICAgICAgQkVHSU4KICAgICAgICAgICAgTUVOVUlURU0gIiZTeXN0ZW1cdEN0cmwrMSIsICAgICAgICAgSURfQkFDS18xCiAgICAgICAgICAgIE1FTlVJVEVNICImUG9zdFRoYXQgKL/zs3R5KVx0Q3RybCsyIiwgICAgICAgICAgIElEX0JBQ0tfMgogICAgICAgIEVORAogICAgRU5ECiAgICBQT1BVUCAiUG9tbyZjIgogICAgQkVHSU4KICAgICAgICBNRU5VSVRFTSAiV2luZSBXb3JkcGFkIC0gJmluZm9ybWFjamUiICAgICAgIElEX0FCT1VUCiAgICBFTkQKRU5ECgpJRE1fUE9QVVAgTUVOVSBESVNDQVJEQUJMRQpCRUdJTgogICAgUE9QVVAgIiIKICAgIEJFR0lOCiAgICAgICAgTUVOVUlURU0gIld5JnRuaWoiLCAgICAgICAgICAgICAgSURfRURJVF9DVVQKICAgICAgICBNRU5VSVRFTSAiJktvcGl1aiIsICAgICAgICAgICAgICBJRF9FRElUX0NPUFkKICAgICAgICBNRU5VSVRFTSAiV2tsJmVqIiwgICAgICAgICAgICAgICBJRF9FRElUX1BBU1RFCiAgICAgICAgTUVOVUlURU0gU0VQQVJBVE9SCiAgICAgICAgTUVOVUlURU0gIiZXeXB1bmt0b3dhbmllIiAgICAgICAgSURfQlVMTEVUCiAgICAgICAgTUVOVUlURU0gIiZBa2FwaXQuLi4iICAgICAgSURfUEFSQUZPUk1BVAogICAgRU5ECkVORAoKSURNX0NPTE9SX1BPUFVQIE1FTlUgRElTQ0FSREFCTEUKQkVHSU4KICAgIFBPUFVQICIiCiAgICBCRUdJTgogICAgICAgIE1FTlVJVEVNICJDemFybnkiICAgICAgIElEX0NPTE9SX0JMQUNLCiAgICAgICAgTUVOVUlURU0gIkthc3p0YW5vd3kiICAgSURfQ09MT1JfTUFST09OCiAgICAgICAgTUVOVUlURU0gIlppZWxvbnkiICAgICAgSURfQ09MT1JfR1JFRU4KICAgICAgICBNRU5VSVRFTSAiT2xpd2tvd3kiICAgICBJRF9DT0xPUl9PTElWRQogICAgICAgIE1FTlVJVEVNICJHcmFuYXRvd3kiICAgIElEX0NPTE9SX05BVlkKICAgICAgICBNRU5VSVRFTSAiUHVycHVyb3d5IiAgICBJRF9DT0xPUl9QVVJQTEUKICAgICAgICBNRU5VSVRFTSAiWmllbG9ub21vZHJ5IiBJRF9DT0xPUl9URUFMCiAgICAgICAgTUVOVUlURU0gIlN6YXJ5IiAgICAgICAgSURfQ09MT1JfR1JBWQogICAgICAgIE1FTlVJVEVNICJTcmVicm55IiAgICAgIElEX0NPTE9SX1NJTFZFUgogICAgICAgIE1FTlVJVEVNICJDemVyd29ueSIgICAgIElEX0NPTE9SX1JFRAogICAgICAgIE1FTlVJVEVNICJMaW1vbm93eSIgICAgIElEX0NPTE9SX0xJTUUKICAgICAgICBNRU5VSVRFTSAir/OzdHkiICAgICAgICBJRF9DT0xPUl9ZRUxMT1cKICAgICAgICBNRU5VSVRFTSAiTmllYmllc2tpIiAgICBJRF9DT0xPUl9CTFVFCiAgICAgICAgTUVOVUlURU0gIkZ1a3NqYSIgICAgICAgSURfQ09MT1JfRlVDSFNJQQogICAgICAgIE1FTlVJVEVNICJBa3dhbWFyeW5hIiAgIElEX0NPTE9SX0FRVUEKICAgICAgICBNRU5VSVRFTSAiQmlhs3kiICAgICAgICBJRF9DT0xPUl9XSElURQogICAgICAgIE1FTlVJVEVNICJBdXRvbWF0aWMiICAgIElEX0NPTE9SX0FVVE9NQVRJQwogICAgRU5ECkVORAoKSUREX0RBVEVUSU1FIERJQUxPRyBESVNDQVJEQUJMRSAzMCwgMjAsIDEzMCwgODAKU1RZTEUgRFNfTU9EQUxGUkFNRSB8IFdTX0NBUFRJT04gfCBXU19TWVNNRU5VCkNBUFRJT04gIkRhdGEgaSBnb2R6aW5hIgpGT05UIDEwLCAiTVMgU2FucyBTZXJpZiIKQkVHSU4KICAgIExURVhUICAgICAgICAiRG9zdOpwbmUgZm9ybWF0eSIsLTEsMywyLDEwMCwxNQogICAgTElTVEJPWCAgICAgIElEQ19EQVRFVElNRSwzLDEyLDgwLDY1LExCU19OT0lOVEVHUkFMSEVJR0hUIHwgTEJTX05PVElGWQogICAgUFVTSEJVVFRPTiAgICImT0siLElET0ssODcsMTIsNDAsMTIKICAgIFBVU0hCVVRUT04gICAiJkFudWx1aiIsSURDQU5DRUwsODcsMjYsNDAsMTIKRU5ECgpJRERfTkVXRklMRSBESUFMT0cgRElTQ0FSREFCTEUgMzAsIDIwLCAxNDAsIDgwClNUWUxFIERTX01PREFMRlJBTUUgfCBXU19DQVBUSU9OIHwgV1NfU1lTTUVOVQpDQVBUSU9OICJOb3d5IgpGT05UIDEwLCAiTVMgU2FucyBTZXJpZiIKQkVHSU4KICAgIExURVhUICAgICAgICAiVHlwIG5vd2VnbyBkb2t1bWVudHUiLC0xLDMsMiwxMDAsMTUKICAgIExJU1RCT1ggICAgICBJRENfTkVXRklMRSwzLDEyLDkwLDY1LExCU19OT0lOVEVHUkFMSEVJR0hUCiAgICBQVVNIQlVUVE9OICAgIiZPSyIsSURPSyw5NywxMiw0MCwxMgogICAgUFVTSEJVVFRPTiAgICImQW51bHVqIixJRENBTkNFTCw5NywyNiw0MCwxMgpFTkQKCklERF9QQVJBRk9STUFUIERJQUxPRyBESVNDQVJEQUJMRSAzMCwgMjAsIDIwMCwgMTEwClNUWUxFIERTX01PREFMRlJBTUUgfCBXU19DQVBUSU9OIHwgV1NfU1lTTUVOVQpDYXB0aW9uICJGb3JtYXQgYWthcGl0dSIKRk9OVCA4LCAiTVMgU2hlbGwgRGxnIgpCRUdJTgogICAgR1JPVVBCT1ggIldjaepjaWEiLCAtMSwgMTAsIDEwLCAxMjAsIDY4CiAgICBMVEVYVCAiWiBsZXdlaiIsIC0xLCAxNSwgMjIsIDQwLCAxMwogICAgRURJVFRFWFQgSURDX1BBUkFfTEVGVCwgNTUsIDIwLCA2MCwgMTMKICAgIExURVhUICJaIHByYXdlaiIsIC0xLCAxNSwgNDAsIDQwLCAxMwogICAgRURJVFRFWFQgSURDX1BBUkFfUklHSFQsIDU1LCAzOCwgNjAsIDEzCiAgICBMVEVYVCAiUGllcndzenkgd2llcnN6IiwgLTEsIDE1LCA1NSwgNDAsIDE5CiAgICBFRElUVEVYVCBJRENfUEFSQV9GSVJTVCwgNTUsIDU2LCA2MCwgMTMKICAgIExURVhUICJXeXLzd25hbmllIiwgLTEsIDE1LCA4NywgNDAsIDEzCiAgICBDT01CT0JPWCBJRENfUEFSQV9BTElHTiwgNTUsIDg1LCA2MCwgNjAsIENCU19EUk9QRE9XTkxJU1QKICAgIFBVU0hCVVRUT04gIiZPSyIsIElET0ssIDEzNywgMTUsIDUwLCAxNQogICAgUFVTSEJVVFRPTiAiJkFudWx1aiIsIElEQ0FOQ0VMLCAxMzcsIDMzLCA1MCwgMTUKRU5ECgpJRERfVEFCU1RPUFMgRElBTE9HIERJU0NBUkRBQkxFIDMwLCAyMCwgMjAwLCAxMTAKU1RZTEUgRFNfTU9EQUxGUkFNRSB8IFdTX0NBUFRJT04gfCBXU19TWVNNRU5VCkNhcHRpb24gIlRhYnVsYXRvcnkiCkZPTlQgOCwgIk1TIFNoZWxsIERsZyIKQkVHSU4KICAgIEdST1VQQk9YICJQb3p5Y2plIHRhYnVsYXRvcvN3IiwgLTEsIDEwLCAxMCwgMTIwLCA5MAogICAgQ09NQk9CT1ggSURDX1RBQlNUT1BTLCAyMCwgMjAsIDEwMCwgNjAsIENCU19TSU1QTEUKICAgIERFRlBVU0hCVVRUT04gIiZEb2RhaiIsIElEX1RBQl9BREQsIDIwLCA4MCwgNDUsIDE1CiAgICBQVVNIQlVUVE9OICImVXN18SIsIElEX1RBQl9ERUwsIDcyLCA4MCwgNDUsIDE1CiAgICBQVVNIQlVUVE9OICImT0siLCBJRE9LLCAxMzcsIDE1LCA1NywgMTUKICAgIFBVU0hCVVRUT04gIiZBbnVsdWoiLCBJRENBTkNFTCwgMTM3LCAzMywgNTcsIDE1CiAgICBQVVNIQlVUVE9OICJVc3XxICZ3c3p5c3RraWUiLCBJRF9UQUJfRU1QVFksIDEzNywgNTEsIDU3LCAxNQpFTkQKCklERF9GT1JNQVRPUFRTIERJQUxPRyBESVNDQVJEQUJMRSAwLCAwLCAyODAsIDExMApTVFlMRSBEU19TWVNNT0RBTApDYXB0aW9uICIiCkZPTlQgOCwgIk1TIFNoZWxsIERsZyIKQkVHSU4KICAgIEdST1VQQk9YICJaYXdpamFuaWUgd2llcnN6eSIsIC0xLCAxMCwgMTAsIDEzMCwgODUKICAgIFJBRElPQlVUVE9OICJObyBsaW5lIHdyYXBwaW5nIiwgSURDX1BBR0VGTVRfV04sIDE4LCAyNSwgMTE3LCAxNQogICAgUkFESU9CVVRUT04gIlphd2lqYWogZG8gJmJyemVndSBva25hIiwgSURDX1BBR0VGTVRfV1csIDE4LCA0NSwgMTE3LCAxNQogICAgUkFESU9CVVRUT04gIlphd2lqYWogZG8gJm1hcmdpbmVzdSIsIElEQ19QQUdFRk1UX1dNLCAxOCwgNjUsIDExNywgMTUKICAgIEdST1VQQk9YICJQYXNraSBuYXJ66mR6aSIsIC0xLCAxNTAsIDEwLCAxMjAsIDg1CiAgICBDSEVDS0JPWCAiUGFzZWsgJm5hcnrqZHppIiwgSURDX1BBR0VGTVRfVEIsIDE2MCwgMjAsIDgwLCAxNQogICAgQ0hFQ0tCT1ggIlBhc2VrICZmb3JtYXR1IiwgSURDX1BBR0VGTVRfRkIsIDE2MCwgMzgsIDgwLCAxNQogICAgQ0hFQ0tCT1ggIiZMaW5pamthIiwgSURDX1BBR0VGTVRfUlUsIDE2MCwgNTYsIDgwLCAxNQogICAgQ0hFQ0tCT1ggIlBhc2VrICZzdGFudSIsIElEQ19QQUdFRk1UX1NCLCAxNjAsIDc0LCA4MCwgMTUKICAgIExURVhUICIiLCBJRENfUEFHRUZNVF9JRCwgMCwwLDAsMApFTkQKClNUUklOR1RBQkxFIERJU0NBUkRBQkxFCkJFR0lOCiAgICBTVFJJTkdfUklDSFRFWFRfRklMRVNfUlRGLCAgICAgIlRla3N0IHNmb3JtYXRvd2FueSAtIFJURiAoKi5ydGYpIgogICAgU1RSSU5HX1RFWFRfRklMRVNfVFhULCAgICAgICAgICJEb2t1bWVudCB0ZWtzdG93eSAoKi50eHQpIgogICAgU1RSSU5HX1RFWFRfRklMRVNfVU5JQ09ERV9UWFQsICJVbmljb2RlIHRleHQgZG9jdW1lbnQgKCoudHh0KSIKICAgIFNUUklOR19BTExfRklMRVMsICAgICAgICAgICAgICAiV3N6eXN0a2llIGRva3VtZW50eSAoKi4qKSIKRU5ECgpTVFJJTkdUQUJMRSBESVNDQVJEQUJMRQpCRUdJTgogICAgU1RSSU5HX0FMSUdOX0xFRlQsICAgICAgICAgICAgIkRvIGxld2VqIgogICAgU1RSSU5HX0FMSUdOX1JJR0hULCAgICAgICAgICAgIkRvIHByYXdlaiIKICAgIFNUUklOR19BTElHTl9DRU5URVIsICAgICAgICAgICJXeZxyb2Rrb3dhbmUiCkVORAoKU1RSSU5HVEFCTEUgRElTQ0FSREFCTEUKQkVHSU4KICAgIFNUUklOR19ORVdGSUxFX1JJQ0hURVhULCAgICAgIkRvY3VtZW50IHNmb3JtYXRvd2FueSAoUlRGKSIKICAgIFNUUklOR19ORVdGSUxFX1RYVCwgICAgICAgICAgIkRvY3VtZW50IHRla3N0b3d5IgogICAgU1RSSU5HX05FV0ZJTEVfVFhUX1VOSUNPREUsICAiRG9jdW1lbnQgdGVrc3Rvd3kgVW5pY29kZSIKRU5ECgpTVFJJTkdUQUJMRSBESVNDQVJEQUJMRQpCRUdJTgogICAgU1RSSU5HX1BSSU5URVJfRklMRVNfUFJOLCAgICAgICAgIlBsaWtpIGRydWthcmtpICgqLlBSTikiCkVORAoKU1RSSU5HVEFCTEUgRElTQ0FSREFCTEUKQkVHSU4KICAgIFNUUklOR19WSUVXUFJPUFNfVElUTEUsICAgICAgICAgICJPcGNqZSIKICAgIFNUUklOR19WSUVXUFJPUFNfVEVYVCwgICAgICAgICAgICJUZWtzdCIKICAgIFNUUklOR19WSUVXUFJPUFNfUklDSFRFWFQsICAgICAgICJUZWtzdCBzZm9ybWF0b3dhbnkiCkVORAoKU1RSSU5HVEFCTEUgRElTQ0FSREFCTEUKQkVHSU4KICAgIFNUUklOR19QUkVWSUVXX1BSSU5ULCAgICAgICAgICAgICJEcnVrdWoiCiAgICBTVFJJTkdfUFJFVklFV19ORVhUUEFHRSwgICAgICAgICAiTmFzdC4gc3Ryb25hIgogICAgU1RSSU5HX1BSRVZJRVdfUFJFVlBBR0UsICAgICAgICAgIlBvcHJ6LiBzdHJvbmEiCiAgICBTVFJJTkdfUFJFVklFV19UV09QQUdFUywgICAgICAgICAiVHdvIHBhZ2VzIgogICAgU1RSSU5HX1BSRVZJRVdfT05FUEFHRSwgICAgICAgICAgIk9uZSBwYWdlIgogICAgU1RSSU5HX1BSRVZJRVdfWk9PTUlOLCAgICAgICAgICAgIlpvb20gaW4iCiAgICBTVFJJTkdfUFJFVklFV19aT09NT1VULCAgICAgICAgICAiWm9vbSBvdXQiCiAgICBTVFJJTkdfUFJFVklFV19DTE9TRSwgICAgICAgICAgICAiWmFta25paiIKICAgIFNUUklOR19QUkVWSUVXX1BBR0UsICAgICAgICAgICAgICJQYWdlIgogICAgU1RSSU5HX1BSRVZJRVdfUEFHRVMsICAgICAgICAgICAgIlBhZ2VzIgpFTkQKClNUUklOR1RBQkxFIERJU0NBUkRBQkxFCkJFR0lOCiAgICBTVFJJTkdfVU5JVFNfQ00sICAgICAgICAgICAgICJjbSIKRU5ECgpTVFJJTkdUQUJMRSBESVNDQVJEQUJMRQpCRUdJTgogICAgU1RSSU5HX0RFRkFVTFRfRklMRU5BTUUsICAgICAiRG9rdW1lbnQiCiAgICBTVFJJTkdfUFJPTVBUX1NBVkVfQ0hBTkdFUywgICJaYXBpc2HmIHptaWFueSB3IHBsaWt1ICclcyc/IgogICAgU1RSSU5HX1NFQVJDSF9GSU5JU0hFRCwgICAgICAiWmFrb/Fjem9ubyBwcnplc3p1a2l3YW5pZSBkb2t1bWVudHUuIgogICAgU1RSSU5HX0xPQURfUklDSEVEX0ZBSUxFRCwgICAiTmllIHVkYbNvIHNp6iB6YbNhZG93YeYgYmlibGlvdGVraSBzeXN0ZW1vd2VqIFJpY2hFZGl0LiIKICAgIFNUUklOR19TQVZFX0xPU0VGT1JNQVRUSU5HLCAgIld5YnJhbm8gemFwaXNhbmllIGRva3VtZW50dSBqYWtvIHp3eWuzeSB0ZWtzdCwgIiBcCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ3IHd5bmlrdSBjemVnbyBmb3JtYXRvd2FuaWUgem9zdGFuaWUgdXRyYWNvbmUuICIgXAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiQ3p5IG5hIHBld25vIGNoY2VzeiB0byB6cm9iaeY/IgogICAgU1RSSU5HX0lOVkFMSURfTlVNQkVSLCAgICAgICAiWrN5IGZvcm1hdCBsaWN6YnkiCiAgICBTVFJJTkdfT0xFX1NUT1JBR0VfTk9UX1NVUFBPUlRFRCwgIkRva3VtZW50eSB0eXB1IE9MRSBzdG9yYWdlIG5pZSBzuSBvYnOzdWdpd2FuZSIKRU5ECg==