LyoKICogQ29weXJpZ2h0IDE5OTggSnVlcmdlbiBTY2htaWVkCiAqIENvcHlyaWdodCAyMDA2IEFudG9uaW8gQ29kYXp6aQogKgogKiBUaGlzIGxpYnJhcnkgaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yCiAqIG1vZGlmeSBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBMZXNzZXIgR2VuZXJhbCBQdWJsaWMKICogTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkgdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbjsgZWl0aGVyCiAqIHZlcnNpb24gMi4xIG9mIHRoZSBMaWNlbnNlLCBvciAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgogKgogKiBUaGlzIGxpYnJhcnkgaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKICogYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKICogTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiAgU2VlIHRoZSBHTlUKICogTGVzc2VyIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KICoKICogWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05VIExlc3NlciBHZW5lcmFsIFB1YmxpYwogKiBMaWNlbnNlIGFsb25nIHdpdGggdGhpcyBsaWJyYXJ5OyBpZiBub3QsIHdyaXRlIHRvIHRoZSBGcmVlIFNvZnR3YXJlCiAqIEZvdW5kYXRpb24sIEluYy4sIDUxIEZyYW5rbGluIFN0LCBGaWZ0aCBGbG9vciwgQm9zdG9uLCBNQSAwMjExMC0xMzAxLCBVU0EKICovCgojaW5jbHVkZSAic2hyZXNkZWYuaCIKCkxBTkdVQUdFIExBTkdfRVNQRVJBTlRPLCBTVUJMQU5HX0RFRkFVTFQKCi8qIEN4YXBlbGl0YWogbGl0ZXJvaiBlc3RhcyBlbiBMYXRpbi0zIGlzbzg4OTUtMyAqLwoKTUVOVV8wMDEgTUVOVSBESVNDQVJEQUJMRQpCRUdJTgoJTUVOVUlURU0gIiZHcmFuZGFqIElrb25vaiIsCUZDSURNX1NIVklFV19CSUdJQ09OCglNRU5VSVRFTSAiTWFsZ3JhbmRhaiBJa29ub2oiLAlGQ0lETV9TSFZJRVdfU01BTExJQ09OCglNRU5VSVRFTSAiJkxpc3RvIiwJCUZDSURNX1NIVklFV19MSVNUVklFVwoJTUVOVUlURU0gIiZEZXRhbGUiLAkJRkNJRE1fU0hWSUVXX1JFUE9SVFZJRVcKRU5ECgovKgogc2hlbGx2aWV3IGJhY2tncm91bmQgbWVudQoqLwpNRU5VXzAwMiBNRU5VIERJU0NBUkRBQkxFCkJFR0lOCglQT1BVUCAiIgoJQkVHSU4KCSAgUE9QVVAgIiZWaWRvIgoJICBCRUdJTgoJICAgIE1FTlVJVEVNICImR3JhbmRhaiBJa29ub2oiLAlGQ0lETV9TSFZJRVdfQklHSUNPTgoJICAgIE1FTlVJVEVNICJNYWxncmFuZGFqIElrb25vaiIsCUZDSURNX1NIVklFV19TTUFMTElDT04KCSAgICBNRU5VSVRFTSAiJkxpc3RvIiwJCUZDSURNX1NIVklFV19MSVNUVklFVwoJICAgIE1FTlVJVEVNICImRGV0YWxlIiwJRkNJRE1fU0hWSUVXX1JFUE9SVFZJRVcKCSAgRU5ECgkgIE1FTlVJVEVNIFNFUEFSQVRPUgoJICBQT1BVUCAiQXJhbvh1ICZJa29ub2puIgoJICBCRUdJTgoJICAgIE1FTlVJVEVNICJMYf2tICZOb21vIiwJMHgzMAkvKiBjb2x1bW4gMCAqLwoJICAgIE1FTlVJVEVNICJMYf2tICZUaXBvIiwJMHgzMgkvKiBjb2x1bW4gMiAqLwoJICAgIE1FTlVJVEVNICJMYf2tIEdyYW5kZWNvIiwJMHgzMQkvKiAuLi4gKi8KCSAgICBNRU5VSVRFTSAiTGH9rSAmRGF0byIsCTB4MzMKCSAgICBNRU5VSVRFTSBTRVBBUkFUT1IKCSAgICBNRU5VSVRFTSAiJkFyYW74dSBB/XRvbWF0ZSIsCUZDSURNX1NIVklFV19BVVRPQVJSQU5HRQoJICBFTkQKCSAgTUVOVUlURU0gIlZpY2lndSBJa29ub2puIiwJRkNJRE1fU0hWSUVXX1NOQVBUT0dSSUQKCSAgTUVOVUlURU0gU0VQQVJBVE9SCgkgIE1FTlVJVEVNICJSZWxlZ3UiLAkJRkNJRE1fU0hWSUVXX1JFRlJFU0gKCSAgTUVOVUlURU0gU0VQQVJBVE9SCgkgIE1FTlVJVEVNICJFbm1ldHUiLAkJRkNJRE1fU0hWSUVXX0lOU0VSVAoJICBNRU5VSVRFTSAiRW5tZXR1IGtpZWwgTGlnbyIsCUZDSURNX1NIVklFV19JTlNFUlRMSU5LCgkgIE1FTlVJVEVNIFNFUEFSQVRPUgoJICBQT1BVUCAiTm92YSIKCSAgQkVHSU4KCSAgICBNRU5VSVRFTSAiTm92YSAmRG9zaWVydWpvIiwJRkNJRE1fU0hWSUVXX05FV0ZPTERFUgoJICAgIE1FTlVJVEVNICJOb3ZhICZMaWdvIiwJRkNJRE1fU0hWSUVXX05FV0xJTksKCSAgICBNRU5VSVRFTSBTRVBBUkFUT1IKCSAgRU5ECgkgIE1FTlVJVEVNIFNFUEFSQVRPUgoJICBNRU5VSVRFTSAiRWNvaiIsCUZDSURNX1NIVklFV19QUk9QRVJUSUVTCglFTkQKRU5ECgovKgogc2hlbGx2aWV3IGl0ZW0gbWVudQoqLwpNRU5VX1NIVl9GSUxFIE1FTlUgRElTQ0FSREFCTEUKQkVHSU4KCVBPUFVQICIiCglCRUdJTgoJICBNRU5VSVRFTSAiJlNlbGVjdCIJCUZDSURNX1NIVklFV19PUEVOCgkgIE1FTlVJVEVNICJFJnNwbG9ydSIsCQlGQ0lETV9TSFZJRVdfRVhQTE9SRQoJICBNRU5VSVRFTSAiTWFsZmVybXUiLAkJRkNJRE1fU0hWSUVXX09QRU4KCSAgTUVOVUlURU0gU0VQQVJBVE9SCgkgIE1FTlVJVEVNICJFbm1ldHUiLAkJRkNJRE1fU0hWSUVXX0NVVAoJICBNRU5VSVRFTSAiS29waXUiLAkJRkNJRE1fU0hWSUVXX0NPUFkKCSAgTUVOVUlURU0gU0VQQVJBVE9SCgkgIE1FTlVJVEVNICJLcmV1IExpZ29uIiwJRkNJRE1fU0hWSUVXX0NSRUFURUxJTksKCSAgTUVOVUlURU0gIkZvcmlndSIsCQlGQ0lETV9TSFZJRVdfREVMRVRFCgkgIE1FTlVJVEVNICJBbGlub211IiwJCUZDSURNX1NIVklFV19SRU5BTUUKCSAgTUVOVUlURU0gU0VQQVJBVE9SCgkgIE1FTlVJVEVNICJFY29qIiwJRkNJRE1fU0hWSUVXX1BST1BFUlRJRVMKCUVORApFTkQKCk1FTlVfQ1BBTkVMIE1FTlUKQkVHSU4KICAgIFBPUFVQICImRmlsZSIKICAgIEJFR0lOCiAgICAgICAgTUVOVUlURU0gU0VQQVJBVE9SCiAgICAgICAgTUVOVUlURU0gIkUmeGl0IiwgSURNX0NQQU5FTF9FWElUCiAgICBFTkQKCiAgICBQT1BVUCAiJlZpZXciCiAgICBCRUdJTgogICAgICAgIE1FTlVJVEVNICImR3JhbmRhaiBJa29ub2oiLCBGQ0lETV9TSFZJRVdfQklHSUNPTgogICAgICAgIE1FTlVJVEVNICJNYWxncmFuZGFqIElrb25vaiIsIEZDSURNX1NIVklFV19TTUFMTElDT04KICAgICAgICBNRU5VSVRFTSAiJkxpc3RvIiwgRkNJRE1fU0hWSUVXX0xJU1RWSUVXCiAgICAgICAgTUVOVUlURU0gIiZEZXRhbGUiLCBGQ0lETV9TSFZJRVdfUkVQT1JUVklFVwogICAgRU5ECgogICAgUE9QVVAgIiZIZWxwIgogICAgQkVHSU4KICAgICAgICBNRU5VSVRFTSAiJkFib3V0IENvbnRyb2wgUGFuZWwuLi4iLCBJRE1fQ1BBTkVMX0FCT1VUCiAgICBFTkQKRU5ECgpTSEJSU0ZPUkZPTERFUl9NU0dCT1ggRElBTE9HIExPQURPTkNBTEwgTU9WRUFCTEUgRElTQ0FSREFCTEUgMTUsIDQwLCAxODgsIDE5MgpTVFlMRSBEU19NT0RBTEZSQU1FIHwgV1NfQ0FQVElPTiB8IFdTX1NZU01FTlUgfCBEU19NT0RBTEZSQU1FIHwgRFNfU0VURk9OVCB8IERTXzNETE9PSwpDQVBUSU9OICJGb2xpdSBEb3NpZXJ1am9uIgpGT05UIDgsICJNUyBTaGVsbCBEbGciCnsKIERFRlBVU0hCVVRUT04gIkJvbmUiLCAxLCA4MCwgMTc2LCA1MCwgMTIsIEJTX0RFRlBVU0hCVVRUT04gfCBXU19HUk9VUCB8IFdTX1RBQlNUT1AKIFBVU0hCVVRUT04gIlJlemlnbmkiLCAyLCAxMzQsIDE3NiwgNTAsIDEyLCBXU19HUk9VUCB8IFdTX1RBQlNUT1AKIExURVhUICIiLCBJRERfVElUTEUsIDQsIDQsIDE4MCwgMTIKIExURVhUICIiLCBJRERfU1RBVFVTLCA0LCAyNSwgMTgwLCAxMgogQ09OVFJPTCAiIiwgSUREX1RSRUVWSUVXLCAiU3lzVHJlZVZpZXczMiIsCiAJVFZTX0hBU0JVVFRPTlMgfCBUVlNfSEFTTElORVMgfCBUVlNfTElORVNBVFJPT1QgfAoJV1NfQk9SREVSIHwgV1NfVEFCU1RPUCwKCTQsIDQwLCAxODAsIDEyMAp9CgpTSEVMTF9BQk9VVF9NU0dCT1ggRElBTE9HIExPQURPTkNBTEwgTU9WRUFCTEUgRElTQ0FSREFCTEUgMTUsIDQwLCAyMjAsIDE1MgpTVFlMRSBEU19NT0RBTEZSQU1FIHwgV1NfUE9QVVAgfCBXU19WSVNJQkxFIHwgV1NfQ0FQVElPTiB8IFdTX1NZU01FTlUKQ0FQVElPTiAiUHJpICVzIgpGT05UIDEwLCAiTVMgU2hlbGwgRGxnIgp7CiBERUZQVVNIQlVUVE9OICJCb25lIiwgSURPSywgMTUzLCAxMzMsIDYwLCAxMiwgV1NfVEFCU1RPUAogUFVTSEJVVFRPTiAiV2luZSAmbGljZW5zZS4uLiIsIElEQ19BQk9VVF9MSUNFTlNFLCAxNTMsIDExMywgNjAsIDEyLCBXU19UQUJTVE9QCiBMSVNUQk9YIElEQ19BQk9VVF9MSVNUQk9YLCA4LCA2NSwgMTM3LCA4MiwgTEJTX05PVElGWSB8IFdTX1ZTQ1JPTEwgfCBXU19CT1JERVIKIElDT04gIiIsIHN0YzEsIDEwLCAxMCwgMzAsIDMwCiBMVEVYVCAiIiwgSURDX0FCT1VUX1NUQVRJQ19URVhUMSwgNDAsIDEwLCAxNzAsIDEwCiBMVEVYVCAiIiwgSURDX0FCT1VUX1NUQVRJQ19URVhUMiwgNDAsIDIyLCAxNzAsIDEwCiBMVEVYVCAiUnVubmluZyBvbiAlcyIsIElEQ19BQk9VVF9TVEFUSUNfVEVYVDMsIDQyLCAzNCwgMTcwLCAxMAogTFRFWFQgIldpbmUgZXN0YXMgZGlzcG9uZWJsYSBkYW5rJ2FsOiIsIElEQ19BQk9VVF9XSU5FX1RFWFQsIDgsIDU0LCAyMDQsIDEwCn0KClNIRUxMX1JVTl9ETEcgRElBTE9HIExPQURPTkNBTEwgTU9WRUFCTEUgRElTQ0FSREFCTEUgMCwgMCwgMjI3LCA5NQpTVFlMRSBEU19NT0RBTEZSQU1FIHwgV1NfUE9QVVAgfCBXU19WSVNJQkxFIHwgV1NfQ0FQVElPTiB8IFdTX1NZU01FTlUKQ0FQVElPTiAiIgpGT05UIDgsICJNUyBTaGVsbCBEbGciCnsKIElDT04gIiIsIDEyMjk3LCA3LCAxMSwgMTgsIDIwLCBXU19WSVNJQkxFCiBMVEVYVCAiU2tyaWJ1IG5vbW9uIGRlIHByb2dyYW1vLCBkZSBkb3NpZXJ1am8sIGRlIGRvY3VtZW50byBh/SBkZSBJbnRlcnJldGEgZm9udG8sIGthaiBXaW5lIG1hbGZlcm1vcyD4aW4uIiwgMTIyODksIDM2LCAxMSwgMTgyLCAxOAogTFRFWFQgIk1hbGZlcm11OiIsIDEyMzA1LCA3LCAzOSwgMjQsIDEwCiBDT05UUk9MICIiLCAxMjI5OCwgIkNPTUJPQk9YIiwgV1NfVEFCU1RPUCB8IFdTX0dST1VQIHwgV1NfVlNDUk9MTCB8IFdTX1ZJU0lCTEUgfCBDQlNfRElTQUJMRU5PU0NST0xMIHwgQ0JTX0FVVE9IU0NST0xMIHwgQ0JTX0RST1BET1dOLCAzNiwgMzcsIDE4MywgMTAwCiBERUZQVVNIQlVUVE9OICJCb25lIiwgSURPSywgNjIsIDYzLCA1MCwgMTQsIFdTX1RBQlNUT1AKIFBVU0hCVVRUT04gIlJlemlnbmkiLCBJRENBTkNFTCwgMTE2LCA2MywgNTAsIDE0LCBXU19UQUJTVE9QCiBQVVNIQlVUVE9OICJGb2xpdS4uLiIsIDEyMjg4LCAxNzAsIDYzLCA1MCwgMTQsIFdTX1RBQlNUT1AKfQoKU1RSSU5HVEFCTEUKewoJLyogY29sdW1ucyBpbiB0aGUgc2hlbGx2aWV3ICovCglJRFNfU0hWX0NPTFVNTjEwCSJPd25lciIKCUlEU19TSFZfQ09MVU1OMTEJIkdyb3VwIgoJSURTX1NIVl9DT0xVTU5fREVMRlJPTQkiT3JpZ2luYWwgbG9jYXRpb24iCglJRFNfU0hWX0NPTFVNTl9ERUxEQVRFCSJEYXRlIGRlbGV0ZWQiCgoJLyogc3BlY2lhbCBmb2xkZXJzICovCglJRFNfREVTS1RPUAkJIkRlc2t0b3AiCglJRFNfTVlDT01QVVRFUgkJIk1lYSBLb21wdXRlcm8iCglJRFNfQ09OVFJPTFBBTkVMCSJDb250cm9sIFBhbmVsIgoKCS8qIGNvbnRleHQgbWVudXMgKi8KCUlEU19WSUVXX0xBUkdFCQkiJkdyYW5kYWogSWtvbm9qIgoJSURTX1ZJRVdfU01BTEwJCSJNYWxncmFuZGFqIElrb25vaiIKCUlEU19WSUVXX0xJU1QJCSImTGlzdG8iCglJRFNfVklFV19ERVRBSUxTCSImRGV0YWxlIgoJSURTX1NFTEVDVAkJIkVsZWt0dSIKCUlEU19PUEVOCQkiTWFsZmVybXUiCn0KClNUUklOR1RBQkxFCnsKCUlEU19DUkVBVEVGT0xERVJfREVOSUVEICJNaSBuZSBwb3ZhcyBjcmVpIG5vdmFuIERvc2llcnVqb246IEFsaXJvIHJpZnV6aXRhLiIKCUlEU19DUkVBVEVGT0xERVJfQ0FQVElPTiAiRXJhcm8gZHVtIGtyZWn4byBkZSBkb3NpZXJ1am8iCglJRFNfREVMRVRFSVRFTV9DQVBUSU9OICJLb25maXJtdSBmb3JpZ29uIGRlIGRvc2llcm8iCglJRFNfREVMRVRFRk9MREVSX0NBUFRJT04gIktvbmZpcm11IGZvcmlnb24gZGUgZG9zaWVydWpvIgoJSURTX0RFTEVURUlURU1fVEVYVCAixnUgdmkgZXN0YXMgY2VydGEgcHJpIGZvcmlnbyBkZSAnJTEnPyIKCUlEU19ERUxFVEVNVUxUSVBMRV9URVhUICLGdSB2aSBlc3RhcyBjZXJ0YSBwcmkgZm9yaWdvIGRlIOZpIHRpdWogJTEga29tcG9uYW50b2o/IgoJSURTX0RFTEVURVNFTEVDVEVEX1RFWFQgIkFyZSB5b3Ugc3VyZSB5b3Ugd2FudCB0byBkZWxldGUgdGhlIHNlbGVjdGVkIGl0ZW0ocyk/IgoJSURTX1RSQVNISVRFTV9URVhUICJBcmUgeW91IHN1cmUgdGhhdCB5b3Ugd2FudCB0byBzZW5kICclMScgdG8gdGhlIFRyYXNoPyIKCUlEU19UUkFTSEZPTERFUl9URVhUICJBcmUgeW91IHN1cmUgdGhhdCB5b3Ugd2FudCB0byBzZW5kICclMScgYW5kIGFsbCBpdHMgY29udGVudCB0byB0aGUgVHJhc2g/IgoJSURTX1RSQVNITVVMVElQTEVfVEVYVCAiQXJlIHlvdSBzdXJlIHRoYXQgeW91IHdhbnQgdG8gc2VuZCB0aGVzZSAlMSBpdGVtcyB0byB0aGUgVHJhc2g/IgoJSURTX0NBTlRUUkFTSF9URVhUICJUaGUgaXRlbSAnJTEnIGNhbid0IGJlIHNlbnQgdG8gVHJhc2guIERvIHlvdSB3YW50IHRvIGRlbGV0ZSBpdCBpbnN0ZWFkPyIKCUlEU19PVkVSV1JJVEVGSUxFX1RFWFQgIlRoaXMgZm9sZGVyIGFscmVhZHkgY29udGFpbnMgYSBmaWxlIGNhbGxlZCAnJTEnLlxuXG5EbyB5b3Ugd2FudCB0byByZXBsYWNlIGl0PyIKCUlEU19PVkVSV1JJVEVGSUxFX0NBUFRJT04gIktvbmZpcm11IHN1cHJlc2tyaWJpdG9uIGRlIGRvc2llcm9uIgoJSURTX09WRVJXUklURUZPTERFUl9URVhUICJUaGlzIGZvbGRlciBhbHJlYWR5IGNvbnRhaW5zIGEgZm9sZGVyIG5hbWVkICclMScuXG5cbiJcCgkgICAgIklmIHRoZSBmaWxlcyBpbiB0aGUgZGVzdGluYXRpb24gZm9sZGVyIGhhdmUgdGhlIHNhbWUgbmFtZXMgYXMgZmlsZXMgaW4gdGhlXG4iXAoJICAgICJzZWxlY3RlZCBmb2xkZXIgdGhleSB3aWxsIGJlIHJlcGxhY2VkLiBEbyB5b3Ugc3RpbGwgd2FudCB0byBtb3ZlIG9yIGNvcHlcbiJcCgkgICAgInRoZSBmb2xkZXI/Igp9CgovKgljb2x1bW5zIGluIHRoZSBzaGVsbHZpZXcJKi8KU1RSSU5HVEFCTEUKQkVHSU4KCUlEU19TSFZfQ09MVU1OMQkJIkRvc2llcm8iCglJRFNfU0hWX0NPTFVNTjIJCSJHYW5kZWNvIgoJSURTX1NIVl9DT0xVTU4zCQkiVGlwbyIKCUlEU19TSFZfQ09MVU1ONAkJIk1vZGlmaXRhIgoJSURTX1NIVl9DT0xVTU41CQkiQXRyaWJ1dG9qIgoJSURTX1NIVl9DT0xVTU42CQkiU3BhY28iCglJRFNfU0hWX0NPTFVNTjcJCSJEaXNwb25lYmxhIFNwYWNvIgoJSURTX1NIVl9DT0xVTU44CQkiTm9tbyIKCUlEU19TSFZfQ09MVU1OOQkJIktvbWVudGFyaW8iCkVORAoKCi8qIG1lc3NhZ2UgYm94IHN0cmluZ3MgKi8KU1RSSU5HVEFCTEUKewogICAgICAgSURTX1JFU1RBUlRfVElUTEUgICAgICAgIlJlc3RhcnRpZ3UiCiAgICAgICBJRFNfUkVTVEFSVF9QUk9NUFQgICAgICAixnUgdmkgdm9sYXMgc2ltdWxpIFZpbmRvemFuIHJlc3RhcnRpZ29uPyIKICAgICAgIElEU19TSFVURE9XTl9USVRMRSAgICAgICJBZGlh/XUiCiAgICAgICBJRFNfU0hVVERPV05fUFJPTVBUICAgICAixnUgdmkgdm9sYXMgYWRpYf1pIFdpbmU/Igp9CgovKiBzaGVsbCBmb2xkZXIgcGF0aCBkZWZhdWx0IHZhbHVlcyAqLwpTVFJJTkdUQUJMRQp7CglJRFNfUFJPR1JBTVMgICAgICAgICAgICAgICAgIlN0YXJ0IE1lbnVcXFByb2dyYW1zIgoJSURTX1BFUlNPTkFMICAgICAgICAgICAgICAgICJNaWFqIERva3VtZW50b2oiCglJRFNfRkFWT1JJVEVTICAgICAgICAgICAgICAgIkZhdm9yaXRlcyIKCUlEU19TVEFSVFVQICAgICAgICAgICAgICAgICAiU3RhcnQgTWVudVxcUHJvZ3JhbXNcXFN0YXJ0VXAiCglJRFNfUkVDRU5UICAgICAgICAgICAgICAgICAgIlJlY2VudCIKCUlEU19TRU5EVE8gICAgICAgICAgICAgICAgICAiU2VuZFRvIgoJSURTX1NUQVJUTUVOVSAgICAgICAgICAgICAgICJTdGFydCBNZW51IgoJSURTX01ZTVVTSUMgICAgICAgICAgICAgICAgICJNaWFqIERva3VtZW50b2pcXE11emlrbyIKCUlEU19NWVZJREVPICAgICAgICAgICAgICAgICAiTWlhaSBEb2t1bWVudG9qXFxWaWRlbyIKCUlEU19ERVNLVE9QRElSRUNUT1JZICAgICAgICAiRGVza3RvcCIKCUlEU19ORVRIT09EICAgICAgICAgICAgICAgICAiTmV0SG9vZCIKCUlEU19URU1QTEFURVMgICAgICAgICAgICAgICAiVGVtcGxhdGVzIgoJSURTX0FQUERBVEEgICAgICAgICAgICAgICAgICJBcHBsaWNhdGlvbiBEYXRhIgoJSURTX1BSSU5USE9PRCAgICAgICAgICAgICAgICJQcmludEhvb2QiCglJRFNfTE9DQUxfQVBQREFUQSAgICAgICAgICAgIkxvY2FsIFNldHRpbmdzXFxBcHBsaWNhdGlvbiBEYXRhIgoJSURTX0lOVEVSTkVUX0NBQ0hFICAgICAgICAgICJUZW1wb3JhcnkgSW50ZXJuZXQgRmlsZXMiCglJRFNfQ09PS0lFUyAgICAgICAgICAgICAgICAgIkNvb2tpZXMiCglJRFNfSElTVE9SWSAgICAgICAgICAgICAgICAgIkhpc3RvcnkiCglJRFNfUFJPR1JBTV9GSUxFUyAgICAgICAgICAgIlByb2dyYW0gRmlsZXMiCglJRFNfTVlQSUNUVVJFUyAgICAgICAgICAgICAgIk1haiBEb2N1bWVudG9qXFxCaWxkb2oiCglJRFNfUFJPR1JBTV9GSUxFU19DT01NT04gICAgIlByb2dyYW0gRmlsZXNcXENvbW1vbiBGaWxlcyIKCUlEU19DT01NT05fRE9DVU1FTlRTICAgICAgICAiRG9jdW1lbnRzIgoJSURTX0FETUlOVE9PTFMgICAgICAgICAgICAgICJTdGFydCBNZW51XFxQcm9ncmFtc1xcQWRtaW5pc3RyYXRpdmUgVG9vbHMiCglJRFNfQ09NTU9OX01VU0lDICAgICAgICAgICAgIkRvY3VtZW50c1xcTXVzaWtvIgoJSURTX0NPTU1PTl9QSUNUVVJFUyAgICAgICAgICJEb2N1bWVudHNcXEJpbGRvaiIKCUlEU19DT01NT05fVklERU8gICAgICAgICAgICAiRG9jdW1lbnRzXFxWaWRlbyIKCUlEU19DREJVUk5fQVJFQSAgICAgICAgICAgICAiTG9jYWwgU2V0dGluZ3NcXEFwcGxpY2F0aW9uIERhdGFcXE1pY3Jvc29mdFxcQ0QgQnVybmluZyIKCglJRFNfTkVXRk9MREVSCQkiTmV3IEZvbGRlciIKCglJRFNfQ1BBTkVMX1RJVExFICAgICAgICAgICAgIldpbmUgQ29udHJvbCBQYW5lbCIKCUlEU19DUEFORUxfTkFNRSAgICAgICAgICAgICAiTmFtZSIKCUlEU19DUEFORUxfREVTQ1JJUFRJT04gICAgICAiRGVzY3JpcHRpb24iCn0K