LyoKICogQ29weXJpZ2h0IDIwMDggYnkgSmVucyBBbGJyZXRzZW4gPGplbnNAYWxicmV0c2VuLmRrPgogKgogKiBUaGlzIGxpYnJhcnkgaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yCiAqIG1vZGlmeSBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBMZXNzZXIgR2VuZXJhbCBQdWJsaWMKICogTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkgdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbjsgZWl0aGVyCiAqIHZlcnNpb24gMi4xIG9mIHRoZSBMaWNlbnNlLCBvciAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgogKgogKiBUaGlzIGxpYnJhcnkgaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKICogYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKICogTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiAgU2VlIHRoZSBHTlUKICogTGVzc2VyIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KICoKICogWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05VIExlc3NlciBHZW5lcmFsIFB1YmxpYwogKiBMaWNlbnNlIGFsb25nIHdpdGggdGhpcyBsaWJyYXJ5OyBpZiBub3QsIHdyaXRlIHRvIHRoZSBGcmVlIFNvZnR3YXJlCiAqIEZvdW5kYXRpb24sIEluYy4sIDUxIEZyYW5rbGluIFN0LCBGaWZ0aCBGbG9vciwgQm9zdG9uLCBNQSAwMjExMC0xMzAxLCBVU0EKICovCgojaW5jbHVkZSAid29yZHBhZC5oIgoKTEFOR1VBR0UgTEFOR19EQU5JU0gsIFNVQkxBTkdfREVGQVVMVAoKSURNX01BSU5NRU5VIE1FTlUgRElTQ0FSREFCTEUKQkVHSU4KICAgIFBPUFVQICImRmlsIgogICAgQkVHSU4KICAgICAgICBNRU5VSVRFTSAiJk55Li4uXHRDdHJsK04iLCAgICAgICAgICAgIElEX0ZJTEVfTkVXCiAgICAgICAgTUVOVUlURU0gIibFYmVuLi4uXHRDdHJsK08iLCAgICAgICAgICBJRF9GSUxFX09QRU4KICAgICAgICBNRU5VSVRFTSAiJkdlbW1lXHRDdHJsK1MiLCAgICAgICAgICAgIElEX0ZJTEVfU0FWRQogICAgICAgIE1FTlVJVEVNICJHZW1tZSAmc29tLi4uIiwgICAgICAgICAgICAgSURfRklMRV9TQVZFQVMKICAgICAgICBNRU5VSVRFTSBTRVBBUkFUT1IKICAgICAgICBNRU5VSVRFTSAiJlVkc2tyaXYuLi5cdEN0cmwrUCIsICAgICAgIElEX1BSSU5UCiAgICAgICAgTUVOVUlURU0gIiZGb3Jo5W5kc3Zpc25pbmcuLi4iLCAgICAgICBJRF9QUkVWSUVXCiAgICAgICAgTUVOVUlURU0gIiZTaWRlIGluZHN0aWxsaW5nZXIuLi4iLCAgICBJRF9QUklOVFNFVFVQCiAgICAgICAgTUVOVUlURU0gU0VQQVJBVE9SCiAgICAgICAgTUVOVUlURU0gIiZBZnNsdXQiLCAgICAgICAgICAgICAgICAgICBJRF9GSUxFX0VYSVQKICAgIEVORAogICAgUE9QVVAgIlImZWRpZ2VyIgogICAgQkVHSU4KICAgICAgICBNRU5VSVRFTSAiJkZvcnRyeWRcdEN0cmwrWiIsICAgICAgICAgIElEX0VESVRfVU5ETwogICAgICAgIE1FTlVJVEVNICImR2VuZGFnXHRDdHJsK1kiLCAgICAgICAgICAgSURfRURJVF9SRURPCiAgICAgICAgTUVOVUlURU0gU0VQQVJBVE9SCiAgICAgICAgTUVOVUlURU0gIiZLbGlwXHRDdHJsK1giLCAgICAgICAgICAgICBJRF9FRElUX0NVVAogICAgICAgIE1FTlVJVEVNICJLJm9waWVyXHRDdHJsK0MiLCAgICAgICAgICAgSURfRURJVF9DT1BZCiAgICAgICAgTUVOVUlURU0gIiZJbmRz5nRcdEN0cmwrViIsICAgICAgICAgICBJRF9FRElUX1BBU1RFCiAgICAgICAgTUVOVUlURU0gIiZGamVyblx0REVMIiwgICAgICAgICAgICAgICBJRF9FRElUX0NMRUFSCiAgICAgICAgTUVOVUlURU0gIiZNYXJrZXIgYWx0XHRDdHJsK0EiLCAgICAgICBJRF9FRElUX1NFTEVDVEFMTAogICAgICAgIE1FTlVJVEVNIFNFUEFSQVRPUgogICAgICAgIE1FTlVJVEVNICImU/hnIGVmdGVyLi4uXHRDcnRsK0YiLCAgICAgSURfRklORAogICAgICAgIE1FTlVJVEVNICJT+GcgZWZ0ZXIgJm7mc3RlXHRGMyIsICAgICAgSURfRklORF9ORVhUCiAgICAgICAgTUVOVUlURU0gIkUmcnN0YXQuLi5cdEN0cmwrSCIsICAgICAgICBJRF9SRVBMQUNFCiAgICAgICAgTUVOVUlURU0gU0VQQVJBVE9SCiAgICAgICAgTUVOVUlURU0gIlMma3JpdmViZXNreXR0ZXQiLCAgICAgICAgICBJRF9FRElUX1JFQURPTkxZCiAgICAgICAgTUVOVUlURU0gIsYmbmRyZXQiLCAgICAgICAgICAgICAgICAgICBJRF9FRElUX01PRElGSUVECiAgICAgICAgTUVOVUlURU0gU0VQQVJBVE9SCiAgICAgICAgUE9QVVAgIiZFa3N0cmEiCiAgICAgICAgQkVHSU4KICAgICAgICAgICAgTUVOVUlURU0gIiZJbmZvcm1hdGlvbiBvbSBtYXJrZXJldCBvbXLlZGUiLCBJRF9FRElUX1NFTEVDVElPTklORk8KICAgICAgICAgICAgTUVOVUlURU0gIlRlZ24mZm9ybWF0IiwgICAgICAgICAgIElEX0VESVRfQ0hBUkZPUk1BVAogICAgICAgICAgICBNRU5VSVRFTSAiU3RhbiZkYXJkIHRlZ25mb3JtYXQiLCAgSURfRURJVF9ERUZDSEFSRk9STUFUCiAgICAgICAgICAgIE1FTlVJVEVNICImQWZzbml0c2Zvcm1hdCIsICAgICAgICBJRF9FRElUX1BBUkFGT1JNQVQKICAgICAgICAgICAgTUVOVUlURU0gIiZIZW50IHRla3N0IiwgICAgICAgICAgIElEX0VESVRfR0VUVEVYVAogICAgICAgIEVORAogICAgRU5ECiAgICBQT1BVUCAiJlZpcyIKICAgIEJFR0lOCiAgICAgICAgTUVOVUlURU0gIlbmcmsmdPhqc2xpbmllIiwgICAgICAgICAgICBJRF9UT0dHTEVfVE9PTEJBUgogICAgICAgIE1FTlVJVEVNICImRm9ybWF0dGVyaW5nbGluaWUiLCAgICAgICAgSURfVE9HR0xFX0ZPUk1BVEJBUgogICAgICAgIE1FTlVJVEVNICImTGluZWFsIiwgICAgICAgICAgICAgICAgICAgSURfVE9HR0xFX1JVTEVSCiAgICAgICAgTUVOVUlURU0gIiZTdGF0dXNsaW5pZSIsICAgICAgICAgICAgICBJRF9UT0dHTEVfU1RBVFVTQkFSCiAgICAgICAgTUVOVUlURU0gU0VQQVJBVE9SCiAgICAgICAgTUVOVUlURU0gIiZBbHRlcm5hdGl2ZXIuLi4iLCAgICAgICAgICBJRF9WSUVXUFJPUEVSVElFUwogICAgRU5ECiAgICBQT1BVUCAiJkluZHPmdCIKICAgIEJFR0lOCiAgICAgICAgTUVOVUlURU0gIiZEYXRvIG9nIHRpZC4uLiIsICAgICAgICAgICBJRF9EQVRFVElNRQogICAgRU5ECiAgICBQT1BVUCAiRiZvcm1hdCIKICAgIEJFR0lOCiAgICAgICAgTUVOVUlURU0gIiZTa3JpZnR0eXBlLi4uIiwgICAgICAgICAgICBJRF9GT05UU0VUVElOR1MKICAgICAgICBNRU5VSVRFTSAiJkJ1bGxldHMiICAgICAgICAgICAgICAgICAgIElEX0JVTExFVAogICAgICAgIE1FTlVJVEVNICImQWZzbml0Li4uIiAgICAgICAgICAgICAgICAgSURfUEFSQUZPUk1BVAogICAgICAgIE1FTlVJVEVNICImVGFidWxhdG9yZXIuLi4iICAgICAgICAgICAgSURfVEFCU1RPUFMKICAgICAgICBQT1BVUCAiJkJhZ2dydW5kIgogICAgICAgIEJFR0lOCiAgICAgICAgICAgIE1FTlVJVEVNICImU3lzdGVtXHRDdHJsKzEiLCAgICAgICBJRF9CQUNLXzEKICAgICAgICAgICAgTUVOVUlURU0gIiZIdXNrZXNlZGRlbFx0Q3RybCsyIiwgIElEX0JBQ0tfMgogICAgICAgIEVORAogICAgRU5ECiAgICBQT1BVUCAiJkhq5mxwIgogICAgQkVHSU4KICAgICAgICBNRU5VSVRFTSAiJk9tIFdpbmUgV29yZHBhZCIgICAgICAgICAgIElEX0FCT1VUCiAgICBFTkQKRU5ECgpJRE1fUE9QVVAgTUVOVSBESVNDQVJEQUJMRQpCRUdJTgogICAgUE9QVVAgIiIKICAgIEJFR0lOCiAgICAgICAgTUVOVUlURU0gIiZLbGlwIiAgICAgICAgICAgICAgICBJRF9FRElUX0NVVAogICAgICAgIE1FTlVJVEVNICJLJm9waWVyIiAgICAgICAgICAgICAgSURfRURJVF9DT1BZCiAgICAgICAgTUVOVUlURU0gIiZJbmRz5nQiICAgICAgICAgICAgICBJRF9FRElUX1BBU1RFCiAgICAgICAgTUVOVUlURU0gU0VQQVJBVE9SCiAgICAgICAgTUVOVUlURU0gIiZCdWxsZXRzIiAgICAgICAgICAgICBJRF9CVUxMRVQKICAgICAgICBNRU5VSVRFTSAiJkFmc25pdC4uLiIgICAgICAgICAgIElEX1BBUkFGT1JNQVQKICAgIEVORApFTkQKCklERF9EQVRFVElNRSBESUFMT0cgRElTQ0FSREFCTEUgMzAsIDIwLCAxMzAsIDgwClNUWUxFIERTX01PREFMRlJBTUUgfCBXU19DQVBUSU9OIHwgV1NfU1lTTUVOVQpDQVBUSU9OICJEYXRvIG9nIHRpZCIKRk9OVCAxMCwgIk1TIFNhbnMgU2VyaWYiCkJFR0lOCiAgICBMVEVYVCAgICAgICAgIlRpbGfmbmdlbGlnZSBmb3JtYXRlciIsLTEsMywyLDEwMCwxNQogICAgTElTVEJPWCAgICAgIElEQ19EQVRFVElNRSwzLDEyLDgwLDY1LExCU19OT0lOVEVHUkFMSEVJR0hUIHwgTEJTX05PVElGWQogICAgUFVTSEJVVFRPTiAgICImT0siLElET0ssODcsMTIsNDAsMTIKICAgIFBVU0hCVVRUT04gICAiJkFubnVsbGVyIixJRENBTkNFTCw4NywyNiw0MCwxMgpFTkQKCklERF9ORVdGSUxFIERJQUxPRyBESVNDQVJEQUJMRSAzMCwgMjAsIDE0MCwgODAKU1RZTEUgRFNfTU9EQUxGUkFNRSB8IFdTX0NBUFRJT04gfCBXU19TWVNNRU5VCkNBUFRJT04gIk55IgpGT05UIDEwLCAiTVMgU2FucyBTZXJpZiIKQkVHSU4KICAgIExURVhUICAgICAgICAiTnkgZG9rdW1lbnR0eXBlIiwtMSwzLDIsMTAwLDE1CiAgICBMSVNUQk9YICAgICAgSURDX05FV0ZJTEUsMywxMiw5MCw2NSxMQlNfTk9JTlRFR1JBTEhFSUdIVAogICAgUFVTSEJVVFRPTiAgICImT0siLElET0ssOTcsMTIsNDAsMTIKICAgIFBVU0hCVVRUT04gICAiJkFubnVsbGVyIixJRENBTkNFTCw5NywyNiw0MCwxMgpFTkQKCklERF9QQVJBRk9STUFUIERJQUxPRyBESVNDQVJEQUJMRSAzMCwgMjAsIDIwMCwgMTEwClNUWUxFIERTX01PREFMRlJBTUUgfCBXU19DQVBUSU9OIHwgV1NfU1lTTUVOVQpDYXB0aW9uICJGb3JtYXRlciBhZnNuaXQiCkZPTlQgOCwgIk1TIFNoZWxsIERsZyIKQkVHSU4KICAgIEdST1VQQk9YICJJbmRyeWsiLCAtMSwgMTAsIDEwLCAxMjAsIDY4CiAgICBMVEVYVCAiVmVuc3RyZSIsIC0xLCAxNSwgMjIsIDQwLCAxMwogICAgRURJVFRFWFQgSURDX1BBUkFfTEVGVCwgNTUsIDIwLCA2MCwgMTMKICAgIExURVhUICJI+GpyZSIsIC0xLCAxNSwgNDAsIDQwLCAxMwogICAgRURJVFRFWFQgSURDX1BBUkFfUklHSFQsIDU1LCAzOCwgNjAsIDEzCiAgICBMVEVYVCAiRvhyc3RlIGxpbmllIiwgLTEsIDE1LCA1OCwgNDAsIDEzCiAgICBFRElUVEVYVCBJRENfUEFSQV9GSVJTVCwgNTUsIDU2LCA2MCwgMTMKICAgIExURVhUICJKdXN0ZXJpbmciLCAtMSwgMTUsIDg3LCA0MCwgMTMKICAgIENPTUJPQk9YIElEQ19QQVJBX0FMSUdOLCA1NSwgODUsIDYwLCA2MCwgQ0JTX0RST1BET1dOTElTVAogICAgUFVTSEJVVFRPTiAiJk9LIiwgSURPSywgMTM3LCAxNSwgNTAsIDE1CiAgICBQVVNIQlVUVE9OICImQW5udWxsZXIiLCBJRENBTkNFTCwgMTM3LCAzMywgNTAsIDE1CkVORAoKSUREX1RBQlNUT1BTIERJQUxPRyBESVNDQVJEQUJMRSAzMCwgMjAsIDIwMCwgMTEwClNUWUxFIERTX01PREFMRlJBTUUgfCBXU19DQVBUSU9OIHwgV1NfU1lTTUVOVQpDYXB0aW9uICJUYWJ1bGF0b3JlciIKRk9OVCA4LCAiTVMgU0hlbGwgRExnIgpCRUdJTgogICAgR1JPVVBCT1ggIlRhYnVsYXRvcnN0b3AiLCAtMSwgMTAsIDEwLCAxMjAsIDkwCiAgICBDT01CT0JPWCBJRENfVEFCU1RPUFMsIDIwLCAyMCwgMTAwLCA2MCwgQ0JTX1NJTVBMRQogICAgREVGUFVTSEJVVFRPTiAiJlRpbGb4aiIsIElEX1RBQl9BREQsIDIwLCA4MCwgNDUsIDE1CiAgICBQVVNIQlVUVE9OICImRmplcm4iLCBJRF9UQUJfREVMLCA3MiwgODAsIDQ1LCAxNQogICAgUFVTSEJVVFRPTiAiJk9LIiwgSURPSywgMTM3LCAxNSwgNTAsIDE1CiAgICBQVVNIQlVUVE9OICImQW5udWxsZXIiLCBJRENBTkNFTCwgMTM3LCAzMywgNTAsIDE1CiAgICBQVVNIQlVUVE9OICJGamVybiBhbGwmZSIsIElEX1RBQl9FTVBUWSwgMTM3LCA1MSwgNTAsIDE1CkVORAoKSUREX0ZPUk1BVE9QVFMgRElBTE9HIERJU0NBUkRBQkxFIDAsIDAsIDI4MCwgMTEwClNUWUxFIERTX1NZU01PREFMCkNhcHRpb24gIiIKRk9OVCA4LCAiTVMgU2hlbGwgRGxnIgpCRUdJTgogICAgR1JPVVBCT1ggIkxpbmllYnJ5ZG5pbmciLCAtMSwgMTAsIDEwLCAxMzAsIDg1CiAgICBSQURJT0JVVFRPTiAiTm8gbGluZSB3cmFwcGluZyIsIElEQ19QQUdFRk1UX1dOLCAxOCwgMjUsIDExNywgMTUKICAgIFJBRElPQlVUVE9OICJCcnlkIHRla3N0IGVmdGVyIHYmaW5kdXNicmVkZGVuIiwgSURDX1BBR0VGTVRfV1csIDE4LCA0NSwgMTE3LCAxNQogICAgUkFESU9CVVRUT04gIkJyeWQgdGVrc3QgZWZ0ZXIgJm1hcmdlbiIsIElEQ19QQUdFRk1UX1dNLCAxOCwgNjUsIDExNywgMTUKICAgIEdST1VQQk9YICJW5nJrdPhqc2xpbmllciIsIC0xLCAxNTAsIDEwLCAxMjAsIDg1CiAgICBDSEVDS0JPWCAiJlbmcmt0+GpzbGluaWUiLCBJRENfUEFHRUZNVF9UQiwgMTYwLCAyMCwgODAsIDE1CiAgICBDSEVDS0JPWCAiJkZvcm1hdHRlcmluZ2xpbmllIiwgSURDX1BBR0VGTVRfRkIsIDE2MCwgMzgsIDgwLCAxNQogICAgQ0hFQ0tCT1ggIiZMaW5lYWwiLCBJRENfUEFHRUZNVF9SVSwgMTYwLCA1NiwgODAsIDE1CiAgICBDSEVDS0JPWCAiJlN0YXR1c2xpbmllIiwgSURDX1BBR0VGTVRfU0IsIDE2MCwgNzQsIDgwLCAxNQogICAgTFRFWFQgIiIsIElEQ19QQUdFRk1UX0lELCAwLDAsMCwwCkVORAoKU1RSSU5HVEFCTEUgRElTQ0FSREFCTEUKQkVHSU4KICAgIFNUUklOR19SSUNIVEVYVF9GSUxFU19SVEYsICAgICAiUmlnIHRla3N0Zm9ybWF0ICgqLnJ0ZikiCiAgICBTVFJJTkdfVEVYVF9GSUxFU19UWFQsICAgICAgICAgIlRla3N0ZG9rdW1lbnQgKCoudHh0KSIKICAgIFNUUklOR19URVhUX0ZJTEVTX1VOSUNPREVfVFhULCAiVW5pY29kZS10ZWtzdGRva3VtZW50ICgqLnR4dCkiCiAgICBTVFJJTkdfQUxMX0ZJTEVTLCAgICAgICAgICAgICAgIkFsbGUgZmlsZXIgKCouKikiCkVORAoKU1RSSU5HVEFCTEUgRElTQ0FSREFCTEUKQkVHSU4KICAgIFNUUklOR19ORVdGSUxFX1JJQ0hURVhULCAgICAgIlJpZyB0ZWtzdGRva3VtZW50IgogICAgU1RSSU5HX05FV0ZJTEVfVFhULCAgICAgICAgICAiVGVrc3Rkb2t1bWVudCIKICAgIFNUUklOR19ORVdGSUxFX1RYVF9VTklDT0RFLCAgIlRla3N0ZG9rdW1lbnQgKFVuaWNvZGUpIgpFTkQKClNUUklOR1RBQkxFIERJU0NBUkRBQkxFCkJFR0lOCiAgICBTVFJJTkdfQUxJR05fTEVGVCwgICAgICAgICAgICAiVmVuc3RyZXN0aWxsZXQiCiAgICBTVFJJTkdfQUxJR05fUklHSFQsICAgICAgICAgICAiSPhqcmVzdGlsbGV0IgogICAgU1RSSU5HX0FMSUdOX0NFTlRFUiwgICAgICAgICAgIk1pZHRlcnN0aWxsZXQiCkVORAoKU1RSSU5HVEFCTEUgRElTQ0FSREFCTEUKQkVHSU4KICAgIFNUUklOR19QUklOVEVSX0ZJTEVTX1BSTiwgICAgICAgICJQcmludGVyZmlsZXIgKCouUFJOKSIKRU5ECgpTVFJJTkdUQUJMRSBESVNDQVJEQUJMRQpCRUdJTgogICAgU1RSSU5HX1ZJRVdQUk9QU19USVRMRSwgICAgICAgICAgIkFsdGVybmF0aXZlciIKICAgIFNUUklOR19WSUVXUFJPUFNfVEVYVCwgICAgICAgICAgICJUZWtzdCIKICAgIFNUUklOR19WSUVXUFJPUFNfUklDSFRFWFQsICAgICAgICJSaWcgdGVrc3QiCkVORAoKU1RSSU5HVEFCTEUgRElTQ0FSREFCTEUKQkVHSU4KICAgIFNUUklOR19QUkVWSUVXX1BSSU5ULCAgICAgICAgICAgICJVZHNrcml2IgogICAgU1RSSU5HX1BSRVZJRVdfTkVYVFBBR0UsICAgICAgICAgIk7mc3RlIHNpZGUiCiAgICBTVFJJTkdfUFJFVklFV19QUkVWUEFHRSwgICAgICAgICAiRm9ycmlnZSBzaWRlIgogICAgU1RSSU5HX1BSRVZJRVdfVFdPUEFHRVMsICAgICAgICAgIlRvIHNpZGVyIgogICAgU1RSSU5HX1BSRVZJRVdfT05FUEFHRSwgICAgICAgICAgIsluIHNpZGUiCiAgICBTVFJJTkdfUFJFVklFV19DTE9TRSwgICAgICAgICAgICAiTHVrIgpFTkQKClNUUklOR1RBQkxFIERJU0NBUkRBQkxFCkJFR0lOCiAgICBTVFJJTkdfVU5JVFNfQ00sICAgICAgICAgICAgICJjbSIKRU5ECgpTVFJJTkdUQUJMRSBESVNDQVJEQUJMRQpCRUdJTgogICAgU1RSSU5HX0RFRkFVTFRfRklMRU5BTUUsICAgICAiRG9rdW1lbnQiCiAgICBTVFJJTkdfUFJPTVBUX1NBVkVfQ0hBTkdFUywgICJHZW1tZSDmbmRyaW5nZXIgaSCrJXO7PyIKICAgIFNUUklOR19TRUFSQ0hfRklOSVNIRUQsICAgICAgIkbmcmRpZyBtZWQgYXQgc/hnZSBpIGRva3VtZW50ZXQuIgogICAgU1RSSU5HX0xPQURfUklDSEVEX0ZBSUxFRCwgICAiS3VubmUgaWtrZSBpbmRs5nNlIFJpY2hFZGl0LWJpYmxpb3Rla2V0LiIKICAgIFNUUklOR19TQVZFX0xPU0VGT1JNQVRUSU5HLCAgIkR1IGhhciB2YWxndCBhdCBnZW1tZSBpIHJlbnQgdGVrc3Rmb3JtYXQsIG5vZ2V0IHNvbSAiIFwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInZpbCBtZWRm+HJlIGF0IGFsIGZvcm1hdGVyaW5nIGflciB0YWJ0LiBFciBkdSAiIFwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInNpa2tlciBw5SBhdCBkdSB2aWwgZm9ydHPmdHRlPyIKICAgIFNUUklOR19JTlZBTElEX05VTUJFUiwgICAgICAgIlVneWxkaWd0IHRhbGZvcm1hdCIKICAgIFNUUklOR19PTEVfU1RPUkFHRV9OT1RfU1VQUE9SVEVELCAiT0xFIHN0b3JhZ2UgZG9rdW1lbnRlciBlciBpa2tlIHVuZGVyc3T4dHRldCIKRU5ECg==