LyoKICogU2hlbGwzMgogKiBGcmVuY2ggbGFuZ3VhZ2Ugc3VwcG9ydAogKgogKiBDb3B5cmlnaHQgMTk5OCBKdWVyZ2VuIFNjaG1pZWQKICogQ29weXJpZ2h0IDIwMDYtMjAwNyBKb25hdGhhbiBFcm5zdAogKgogKiBUaGlzIGxpYnJhcnkgaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yCiAqIG1vZGlmeSBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBMZXNzZXIgR2VuZXJhbCBQdWJsaWMKICogTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkgdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbjsgZWl0aGVyCiAqIHZlcnNpb24gMi4xIG9mIHRoZSBMaWNlbnNlLCBvciAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgogKgogKiBUaGlzIGxpYnJhcnkgaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKICogYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKICogTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiAgU2VlIHRoZSBHTlUKICogTGVzc2VyIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KICoKICogWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05VIExlc3NlciBHZW5lcmFsIFB1YmxpYwogKiBMaWNlbnNlIGFsb25nIHdpdGggdGhpcyBsaWJyYXJ5OyBpZiBub3QsIHdyaXRlIHRvIHRoZSBGcmVlIFNvZnR3YXJlCiAqIEZvdW5kYXRpb24sIEluYy4sIDUxIEZyYW5rbGluIFN0LCBGaWZ0aCBGbG9vciwgQm9zdG9uLCBNQSAwMjExMC0xMzAxLCBVU0EKICovCgpMQU5HVUFHRSBMQU5HX0ZSRU5DSCwgU1VCTEFOR19ORVVUUkFMCgpNRU5VXzAwMSBNRU5VIERJU0NBUkRBQkxFCkJFR0lOCglNRU5VSVRFTSAiJkdyYW5kZXMgaWP0bmVzIiwJRkNJRE1fU0hWSUVXX0JJR0lDT04KCU1FTlVJVEVNICImUGV0aXRlcyBpY/RuZXMiLAlGQ0lETV9TSFZJRVdfU01BTExJQ09OCglNRU5VSVRFTSAiJkxpc3RlIiwJCUZDSURNX1NIVklFV19MSVNUVklFVwoJTUVOVUlURU0gIiZE6XRhaWxzIiwJCUZDSURNX1NIVklFV19SRVBPUlRWSUVXCkVORAoKLyoKIHNoZWxsdmlldyBiYWNrZ3JvdW5kIG1lbnUKKi8KTUVOVV8wMDIgTUVOVSBESVNDQVJEQUJMRQpCRUdJTgoJUE9QVVAgIiIKCUJFR0lOCgkgIFBPUFVQICImQWZmaWNoYWdlIgoJICBCRUdJTgoJICAgIE1FTlVJVEVNICImR3JhbmRlcyBpY/RuZXMiLAlGQ0lETV9TSFZJRVdfQklHSUNPTgoJICAgIE1FTlVJVEVNICImUGV0aXRlcyBpY/RuZXMiLAlGQ0lETV9TSFZJRVdfU01BTExJQ09OCgkgICAgTUVOVUlURU0gIiZMaXN0ZSIsCQlGQ0lETV9TSFZJRVdfTElTVFZJRVcKCSAgICBNRU5VSVRFTSAiJkTpdGFpbHMiLAlGQ0lETV9TSFZJRVdfUkVQT1JUVklFVwoJICBFTkQKCSAgTUVOVUlURU0gU0VQQVJBVE9SCgkgIFBPUFVQICJUcmllciBsZXMgJmlj9G5lcyIKCSAgQkVHSU4KCSAgICBNRU5VSVRFTSAiUGFyICZub20iLAkweDMwCS8qIGNvbHVtbiAwICovCgkgICAgTUVOVUlURU0gIlBhciAmdHlwZSIsCTB4MzIJLyogY29sdW1uIDIgKi8KCSAgICBNRU5VSVRFTSAiUGFyIHQmYWlsbGUiLAkweDMxCS8qIC4uLiAqLwoJICAgIE1FTlVJVEVNICJQYXIgJmRhdGUiLAkweDMzCgkgICAgTUVOVUlURU0gU0VQQVJBVE9SCgkgICAgTUVOVUlURU0gIlQmcmkgYXV0b21hdGlxdWUiLAlGQ0lETV9TSFZJRVdfQVVUT0FSUkFOR0UKCSAgRU5ECgkgIE1FTlVJVEVNICJBbGlnbmVyIGxlcyBpY/RuZXMiLAlGQ0lETV9TSFZJRVdfU05BUFRPR1JJRAoJICBNRU5VSVRFTSBTRVBBUkFUT1IKCSAgTUVOVUlURU0gIkFjdHVhbGlzZXIiLAkJRkNJRE1fU0hWSUVXX1JFRlJFU0gKCSAgTUVOVUlURU0gU0VQQVJBVE9SCgkgIE1FTlVJVEVNICJDb2xsZXIiLAkJCUZDSURNX1NIVklFV19JTlNFUlQKCSAgTUVOVUlURU0gIkNvbGxlciBjb21tZSBsaWVuIiwJRkNJRE1fU0hWSUVXX0lOU0VSVExJTksKCSAgTUVOVUlURU0gU0VQQVJBVE9SCgkgIFBPUFVQICJOb3V2ZWF1IgoJICBCRUdJTgoJICAgIE1FTlVJVEVNICJOb3V2ZWF1IGQmb3NzaWVyIiwJRkNJRE1fU0hWSUVXX05FV0ZPTERFUgoJICAgIE1FTlVJVEVNICJOb3V2ZWF1ICZsaWVuIiwJCUZDSURNX1NIVklFV19ORVdMSU5LCgkgICAgTUVOVUlURU0gU0VQQVJBVE9SCgkgIEVORAoJICBNRU5VSVRFTSBTRVBBUkFUT1IKCSAgTUVOVUlURU0gIlByb3Byael06XMiLAkJRkNJRE1fU0hWSUVXX1BST1BFUlRJRVMKCUVORApFTkQKCi8qCiBzaGVsbHZpZXcgaXRlbSBtZW51CiovCk1FTlVfU0hWX0ZJTEUgTUVOVSBESVNDQVJEQUJMRQpCRUdJTgoJUE9QVVAgIiIKCUJFR0lOCgkgIE1FTlVJVEVNICImU+lsZWN0aW9ubmVyIgkJRkNJRE1fU0hWSUVXX09QRU4KCSAgTUVOVUlURU0gIkUmeHBsb3JlciIsCQlGQ0lETV9TSFZJRVdfRVhQTE9SRQoJICBNRU5VSVRFTSAiJk91dnJpciIsCQlGQ0lETV9TSFZJRVdfT1BFTgoJICBNRU5VSVRFTSBTRVBBUkFUT1IKCSAgTUVOVUlURU0gIkMmb3VwZXIiLAkJRkNJRE1fU0hWSUVXX0NVVAoJICBNRU5VSVRFTSAiJkNvcGllciIsCQlGQ0lETV9TSFZJRVdfQ09QWQoJICBNRU5VSVRFTSBTRVBBUkFUT1IKCSAgTUVOVUlURU0gIkNy6WVyIHVuICZsaWVuIiwJRkNJRE1fU0hWSUVXX0NSRUFURUxJTksKCSAgTUVOVUlURU0gIiZTdXBwcmltZXIiLAlGQ0lETV9TSFZJRVdfREVMRVRFCgkgIE1FTlVJVEVNICImUmVub21tZXIiLAkJRkNJRE1fU0hWSUVXX1JFTkFNRQoJICBNRU5VSVRFTSBTRVBBUkFUT1IKCSAgTUVOVUlURU0gIiZQcm9wcmnpdOlzIiwJRkNJRE1fU0hWSUVXX1BST1BFUlRJRVMKCUVORApFTkQKClNIQlJTRk9SRk9MREVSX01TR0JPWCBESUFMT0cgTE9BRE9OQ0FMTCBNT1ZFQUJMRSBESVNDQVJEQUJMRSAxNSwgNDAsIDE4OCwgMTkyClNUWUxFIERTX01PREFMRlJBTUUgfCBXU19DQVBUSU9OIHwgV1NfU1lTTUVOVSB8IERTX01PREFMRlJBTUUgfCBEU19TRVRGT05UIHwgRFNfM0RMT09LCkNBUFRJT04gIlBhcmNvdXJpciBsZXMgZG9zc2llcnMiCkZPTlQgOCwgIk1TIFNoZWxsIERsZyIKewogREVGUFVTSEJVVFRPTiAiT0siLCAxLCA4MCwgMTc2LCA1MCwgMTIsIEJTX0RFRlBVU0hCVVRUT04gfCBXU19HUk9VUCB8IFdTX1RBQlNUT1AKIFBVU0hCVVRUT04gIkFubnVsZXIiLCAyLCAxMzQsIDE3NiwgNTAsIDEyLCBXU19HUk9VUCB8IFdTX1RBQlNUT1AKIExURVhUICIiLCBJRERfVElUTEUsIDQsIDQsIDE4MCwgMTIKIExURVhUICIiLCBJRERfU1RBVFVTLCA0LCAyNSwgMTgwLCAxMgogQ09OVFJPTCAiIiwgSUREX1RSRUVWSUVXLCAiU3lzVHJlZVZpZXczMiIsCiAJVFZTX0hBU0JVVFRPTlMgfCBUVlNfSEFTTElORVMgfCBUVlNfTElORVNBVFJPT1QgfAoJV1NfQk9SREVSIHwgV1NfVEFCU1RPUCwKCTQsIDQwLCAxODAsIDEyMAp9CgpTSE5FV0JSU0ZPUkZPTERFUl9NU0dCT1ggRElBTE9HIExPQURPTkNBTEwgTU9WRUFCTEUgRElTQ0FSREFCTEUgMTUsIDQwLCAyMTgsIDE5NgpTVFlMRSBEU19NT0RBTEZSQU1FIHwgV1NfQ0FQVElPTiB8IFdTX1NZU01FTlUgfCBEU19NT0RBTEZSQU1FIHwgRFNfU0VURk9OVCB8IERTXzNETE9PSwpDQVBUSU9OICJQYXJjb3VyaXIgbGVzIGRvc3NpZXJzIgpGT05UIDgsICJNUyBTaGVsbCBEbGciCnsKIExURVhUICIiLCBJRERfVElUTEUsIDEwLCA4LCAxOTgsIDI0CiBMVEVYVCAiIiwgSUREX1NUQVRVUywgMTAsIDI1LCAxOTgsIDEyCiBMVEVYVCAiRG9zc2llcqA6IiwgSUREX0ZPTERFUiwgMTAsIDE1NiwgNDAsIDEyCiBDT05UUk9MICIiLCBJRERfVFJFRVZJRVcsICJTeXNUcmVlVmlldzMyIiwKCVRWU19IQVNCVVRUT05TIHwgVFZTX0hBU0xJTkVTIHwgVFZTX0xJTkVTQVRST09UIHwKCVdTX0JPUkRFUiB8IFdTX1RBQlNUT1AsCgkxMiwgMzgsIDE5NCwgMTA1CiBFRElUVEVYVCBJRERfRk9MREVSVEVYVCwgNDYsIDE1MCwgMTYwLCAxNCwgV1NfQk9SREVSIHwgV1NfR1JPVVAgfCBXU19UQUJTVE9QCiBQVVNIQlVUVE9OICImQ3LpZXIgdW4gbm91dmVhdSBkb3NzaWVyIiwgSUREX01BS0VORVdGT0xERVIsIDEyLCAxNzQsIDcwLCAxNCwgV1NfR1JPVVAgfCBXU19UQUJTVE9QCiBERUZQVVNIQlVUVE9OICJPSyIsIElET0ssIDEwMiwgMTc0LCA1MCwgMTQsIEJTX0RFRlBVU0hCVVRUT04gfCBXU19HUk9VUCB8IFdTX1RBQlNUT1AKIFBVU0hCVVRUT04gIkFubnVsZXIiLCBJRENBTkNFTCwgMTU2LCAxNzQsIDUwLCAxNCwgV1NfR1JPVVAgfCBXU19UQUJTVE9QCn0KClNIRUxMX1lFU1RPQUxMX01TR0JPWCBESUFMT0cgMjAwLCAxMDAsIDI4MCwgOTAKU1RZTEUgRFNfTU9EQUxGUkFNRSB8IFdTX1BPUFVQIHwgV1NfVklTSUJMRSB8IFdTX0NBUFRJT04gfCBXU19TWVNNRU5VCkNBUFRJT04gIk1lc3NhZ2UiCkZPTlQgOCwgIk1TIFNoZWxsIERsZyIKewogICAgREVGUFVTSEJVVFRPTiAiJk91aSIsIElEWUVTLCAzNCwgNjksIDUzLCAxNCwgV1NfR1JPVVAgfCBXU19UQUJTVE9QCiAgICBQVVNIQlVUVE9OICJPdWkgcG91ciAmdG91cyIsIElERF9ZRVNUT0FMTCwgOTIsIDY5LCA2NSwgMTQsIFdTX0dST1VQIHwgV1NfVEFCU1RPUAogICAgUFVTSEJVVFRPTiAiJk5vbiIsIElETk8sIDE2MiwgNjksIDUzLCAxNCwgV1NfR1JPVVAgfCBXU19UQUJTVE9QCiAgICBQVVNIQlVUVE9OICImQW5udWxlciIsIElEQ0FOQ0VMLCAyMjAsIDY5LCA1MywgMTQsIFdTX0dST1VQIHwgV1NfVEFCU1RPUAogICAgSUNPTiAiIiwgSUREX0lDT04sIDEwLCAxMCwgMTYsIDE2CiAgICBMVEVYVCAiIiwgSUREX01FU1NBR0UsIDQwLCAxMCwgMjM4LCA1MiwgMAp9CgpTSEVMTF9BQk9VVF9NU0dCT1ggRElBTE9HIExPQURPTkNBTEwgTU9WRUFCTEUgRElTQ0FSREFCTEUgMTUsIDQwLCAyMTAsIDE1MgpTVFlMRSBEU19NT0RBTEZSQU1FIHwgV1NfUE9QVVAgfCBXU19WSVNJQkxFIHwgV1NfQ0FQVElPTiB8IFdTX1NZU01FTlUKQ0FQVElPTiAiwCBwcm9wb3MgZGUgJXMiCkZPTlQgMTAsICJNUyBTaGVsbCBEbGciCnsKIERFRlBVU0hCVVRUT04gIk9LIiwgSURPSywgMTUzLCAxMzMsIDUwLCAxMiwgV1NfVEFCU1RPUAogTElTVEJPWCA5OSwgOCwgNjUsIDEzNywgODIsIExCU19OT1RJRlkgfCBXU19WU0NST0xMIHwgV1NfQk9SREVSCiBJQ09OICIiLCAxMDg4LCAxMCwgMTAsIDE0LCAxNgogTFRFWFQgIiIsIDEwMCwgMzAsIDEwLCAxMzcsIDEwCiBMVEVYVCAiIiwgMTAxLCAzMCwgMjIsIDEzNywgMTAKIExURVhUICJXaW5lIGVzdCB1bmUgculhbGlzYXRpb24gZGWgOiIsIDk4LCA4LCA1NSwgMTM3LCAxMAp9CgpTSEVMTF9SVU5fRExHIERJQUxPRyBMT0FET05DQUxMIE1PVkVBQkxFIERJU0NBUkRBQkxFIDAsIDAsIDIyNywgOTUKU1RZTEUgRFNfTU9EQUxGUkFNRSB8IFdTX1BPUFVQIHwgV1NfVklTSUJMRSB8IFdTX0NBUFRJT04gfCBXU19TWVNNRU5VCkNBUFRJT04gIiIKRk9OVCA4LCAiTVMgU2hlbGwgRGxnIgp7CiBJQ09OICIiLCAxMjI5NywgNywgMTEsIDE4LCAyMCwgV1NfVklTSUJMRQogTFRFWFQgIkVudHJleiBsZSBub20gZCd1biBwcm9ncmFtbWUsIGQndW4gZG9zc2llciwgZCd1biBkb2N1bWVudCBvdSBkJ3VuZSByZXNzb3VyY2UgSW50ZXJuZXQsIGV0IFdpbmUgbCdvdXZyaXJhIHBvdXIgdm91cy4iLCAxMjI4OSwgMzYsIDExLCAxODIsIDE4CiBMVEVYVCAiJk91dnJpcqA6IiwgMTIzMDUsIDcsIDM5LCAyNCwgMTAKIENPTlRST0wgIiIsIDEyMjk4LCAiQ09NQk9CT1giLCBXU19UQUJTVE9QIHwgV1NfR1JPVVAgfCBXU19WU0NST0xMIHwgV1NfVklTSUJMRSB8IENCU19ESVNBQkxFTk9TQ1JPTEwgfCBDQlNfQVVUT0hTQ1JPTEwgfCBDQlNfRFJPUERPV04sIDM2LCAzNywgMTgzLCAxMDAKIERFRlBVU0hCVVRUT04gIk9LIiwgSURPSywgNjIsIDYzLCA1MCwgMTQsIFdTX1RBQlNUT1AKIFBVU0hCVVRUT04gIkFubnVsZXIiLCBJRENBTkNFTCwgMTE2LCA2MywgNTAsIDE0LCBXU19UQUJTVE9QCiBQVVNIQlVUVE9OICImUGFyY291cmlyLi4uIiwgMTIyODgsIDE3MCwgNjMsIDUwLCAxNCwgV1NfVEFCU1RPUAp9CgpTVFJJTkdUQUJMRQp7CiAgICAgICAgLyogY29sdW1ucyBpbiB0aGUgc2hlbGx2aWV3ICovCglJRFNfU0hWX0NPTFVNTjEJCSJGaWNoaWVyIgoJSURTX1NIVl9DT0xVTU4yCQkiVGFpbGxlIgoJSURTX1NIVl9DT0xVTU4zCQkiVHlwZSIKCUlEU19TSFZfQ09MVU1ONAkJIk1vZGlmaekiCglJRFNfU0hWX0NPTFVNTjUJCSJBdHRyaWJ1dHMiCglJRFNfU0hWX0NPTFVNTjYJCSJDYXBhY2l06SIKCUlEU19TSFZfQ09MVU1ONwkJIkVzcGFjZSBkaXNwb25pYmxlIgoJSURTX1NIVl9DT0xVTU44CQkiTm9tIgoJSURTX1NIVl9DT0xVTU45CQkiQ29tbWVudGFpcmVzIgoJSURTX1NIVl9DT0xVTU4xMAkiUHJvcHJp6XRhaXJlIgoJSURTX1NIVl9DT0xVTU4xMQkiR3JvdXBlIgoJSURTX1NIVl9DT0xVTU5fREVMRlJPTQkiRW1wbGFjZW1lbnQgZCdvcmlnaW5lIgoJSURTX1NIVl9DT0xVTU5fREVMREFURQkiRGF0ZSBkZSBzdXBwcmVzc2lvbiIKCiAgICAgICAgLyogc3BlY2lhbCBmb2xkZXJzICovCglJRFNfREVTS1RPUAkJIkJ1cmVhdSIKCUlEU19NWUNPTVBVVEVSCQkiUG9zdGUgZGUgdHJhdmFpbCIKCUlEU19SRUNZQ0xFQklOX0ZPTERFUl9OQU1FICAgICAgIkNvcmJlaWxsZSIKCiAgICAgICAgLyogY29udGV4dCBtZW51cyAqLwoJSURTX1ZJRVdfTEFSR0UJCSImR3JhbmRlcyBpY/RuZXMiCglJRFNfVklFV19TTUFMTAkJIiZQZXRpdGVzIGlj9G5lcyIKCUlEU19WSUVXX0xJU1QJCSImTGlzdGUiCglJRFNfVklFV19ERVRBSUxTCSImROl0YWlscyIKCUlEU19TRUxFQ1QJCSJT6WxlY3Rpb25uZXIiCglJRFNfT1BFTgkJIk91dnJpciIKCglJRFNfQ1JFQVRFRk9MREVSX0RFTklFRCAiSW1wb3NzaWJsZSBkZSBjcullciBsZSBub3V2ZWF1IGRvc3NpZXKgOiBwZXJtaXNzaW9uIHJlZnVz6WUuIgoJSURTX0NSRUFURUZPTERFUl9DQVBUSU9OICJFcnJldXIgbG9ycyBkZSBsYSBjculhdGlvbiBkdSBub3V2ZWF1IGRvc3NpZXIiCglJRFNfREVMRVRFSVRFTV9DQVBUSU9OICJDb25maXJtZXIgbGEgc3VwcHJlc3Npb24gZHUgZmljaGllciIKCUlEU19ERUxFVEVGT0xERVJfQ0FQVElPTiAiQ29uZmlybWVyIGxhIHN1cHByZXNzaW9uIGR1IGRvc3NpZXIiCglJRFNfREVMRVRFSVRFTV9URVhUICLKdGVzLXZvdXMgc/tyIGRlIHZvdWxvaXIgc3VwcHJpbWVyICclMSc/IgoJSURTX0RFTEVURU1VTFRJUExFX1RFWFQgIsp0ZXMtdm91cyBz+3IgZGUgdm91bG9pciBzdXBwcmltZXIgY2VzICUxIOls6W1lbnRzID8iCglJRFNfREVMRVRFU0VMRUNURURfVEVYVCAiynRlcy12b3VzIHP7ciBkZSB2b3Vsb2lyIHN1cHByaW1lciBsZShsZXMpIOls6W1lbnQocykgc+ls6WVjdGlvbm7pKHMpoD8iCglJRFNfVFJBU0hJVEVNX1RFWFQgIsp0ZXMtdm91cyBz+3IgZGUgdm91bG9pciBtZXR0cmUgq6AlMaC7IGRhbnMgbGEgY29yYmVpbGxloD8iCglJRFNfVFJBU0hGT0xERVJfVEVYVCAiynRlcy12b3VzIHP7ciBkZSB2b3Vsb2lyIG1ldHRyZSCroCUxoLsgZXQgdG91dCBjZSBxdSdpbCBjb250aWVudCBkYW5zIGxhIGNvcmJlaWxsZaA/IgoJSURTX1RSQVNITVVMVElQTEVfVEVYVCAiynRlcy12b3VzIHP7ciBkZSB2b3Vsb2lyIG1ldHRyZSBjZXMgJTEg6WzpbWVudHMgZGFucyBsYSBjb3JiZWlsbGWgPyIKCUlEU19DQU5UVFJBU0hfVEVYVCAiTCfpbOltZW50IKugJTGguyBuZSBwZXV0IHBhcyDqdHJlIG1pcyBkYW5zIGxhIGNvcmJlaWxsZS4gU291aGFpdGV6LXZvdXMgbGUgc3VwcHJpbWVyIOAgbGEgcGxhY2WgPyIKCUlEU19PVkVSV1JJVEVGSUxFX1RFWFQgIkNlIGRvc3NpZXIgY29udGllbnQgZOlq4CB1biBmaWNoaWVyIG5vbW3pIKugJTGguy5cblxuVm91bGV6LXZvdXMgbGUgcmVtcGxhY2VyoD8iCglJRFNfT1ZFUldSSVRFRklMRV9DQVBUSU9OICJDb25maXJtZXIgbCfpY3Jhc2VtZW50IGR1IGZpY2hpZXIiCglJRFNfT1ZFUldSSVRFRk9MREVSX1RFWFQgIkNlIGRvc3NpZXIgY29udGllbnQgZOlq4CB1biBkb3NzaWVyIG5vbW3pIKugJTGguy5cblxuIlwKCSAgICAiU2kgZGVzIGZpY2hpZXJzIGRhbnMgbGUgZG9zc2llciBkZSBkZXN0aW5hdGlvbiBvbnQgbGUgbeptZSBub20gcXVlIGNldXggZGFucyBsZSBkb3NzaWVyXG4iXAoJICAgICJz6WxlY3Rpb25u6SwgaWxzIHNlcm9udCByZW1wbGFj6XMuIFZvdWxlei12b3VzIHF1YW5kIG3qbWUgZOlwbGFjZXIgb3UgY29waWVyXG4iXAoJICAgICJsZSBkb3NzaWVyoD8iCgogICAgICAgIC8qIG1lc3NhZ2UgYm94IHN0cmluZ3MgKi8KICAgICAgIElEU19SRVNUQVJUX1RJVExFICAgICAgICJSZWTpbWFycmVyIgogICAgICAgSURTX1JFU1RBUlRfUFJPTVBUICAgICAgIlZvdWxlei12b3VzIHNpbXVsZXIgbGUgcmVk6W1hcnJhZ2UgZGUgV2luZG93c6A/IgogICAgICAgSURTX1NIVVRET1dOX1RJVExFICAgICAgIkFycup0ZXIiCiAgICAgICBJRFNfU0hVVERPV05fUFJPTVBUICAgICAiVm91bGV6LXZvdXMgZmVybWVyIGxhIHNlc3Npb24gV2luZaA/IgoKLyogc2hlbGwgZm9sZGVyIHBhdGggZGVmYXVsdCB2YWx1ZXMgKi8KIElEU19QUk9HUkFNUyAgICAgICAgICAgICAgICAiTWVudSBE6W1hcnJlclxcUHJvZ3JhbW1lcyIKIElEU19QRVJTT05BTCAgICAgICAgICAgICAgICAiTWVzIGRvY3VtZW50cyIKIElEU19GQVZPUklURVMgICAgICAgICAgICAgICAiRmF2b3JpcyIKIElEU19TVEFSVFVQICAgICAgICAgICAgICAgICAiTWVudSBE6W1hcnJlclxcUHJvZ3JhbW1lc1xcROltYXJyYWdlIgogSURTX1JFQ0VOVCAgICAgICAgICAgICAgICAgICJSZWNlbnQiCiBJRFNfU0VORFRPICAgICAgICAgICAgICAgICAgIlNlbmRUbyIKIElEU19TVEFSVE1FTlUgICAgICAgICAgICAgICAiTWVudSBE6W1hcnJlciIKIElEU19NWU1VU0lDICAgICAgICAgICAgICAgICAiTWEgbXVzaXF1ZSIKIElEU19NWVZJREVPICAgICAgICAgICAgICAgICAiTWVzIHZpZOlvcyIKIElEU19ERVNLVE9QRElSRUNUT1JZICAgICAgICAiQnVyZWF1IgogSURTX05FVEhPT0QgICAgICAgICAgICAgICAgICJWb2lzaW5hZ2UgUulzZWF1IgogSURTX1RFTVBMQVRFUyAgICAgICAgICAgICAgICJNb2TobGVzIgogSURTX0FQUERBVEEgICAgICAgICAgICAgICAgICJBcHBsaWNhdGlvbiBEYXRhIgogSURTX1BSSU5USE9PRCAgICAgICAgICAgICAgICJWb2lzaW5hZ2UgZCdpbXByZXNzaW9uIgogSURTX0xPQ0FMX0FQUERBVEEgICAgICAgICAgICJMb2NhbCBTZXR0aW5nc1xcQXBwbGljYXRpb24gRGF0YSIKIElEU19JTlRFUk5FVF9DQUNIRSAgICAgICAgICAiTG9jYWwgU2V0dGluZ3NcXFRlbXBvcmFyeSBJbnRlcm5ldCBGaWxlcyIKIElEU19DT09LSUVTICAgICAgICAgICAgICAgICAiQ29va2llcyIKIElEU19ISVNUT1JZICAgICAgICAgICAgICAgICAiTG9jYWwgU2V0dGluZ3NcXEhpc3RvcmlxdWUiCiBJRFNfUFJPR1JBTV9GSUxFUyAgICAgICAgICAgIlByb2dyYW0gRmlsZXMiCiBJRFNfTVlQSUNUVVJFUyAgICAgICAgICAgICAgIk1lcyBpbWFnZXMiCiBJRFNfUFJPR1JBTV9GSUxFU19DT01NT04gICAgIlByb2dyYW0gRmlsZXNcXEZpY2hpZXJzIGNvbW11bnMiCiBJRFNfQ09NTU9OX0RPQ1VNRU5UUyAgICAgICAgIkRvY3VtZW50cyIKIElEU19BRE1JTlRPT0xTICAgICAgICAgICAgICAiTWVudSBE6W1hcnJlclxcUHJvZ3JhbW1lc1xcT3V0aWxzIGQnYWRtaW5pc3RyYXRpb24iCiBJRFNfQ09NTU9OX01VU0lDICAgICAgICAgICAgIkRvY3VtZW50c1xcTWEgbXVzaXF1ZSIKIElEU19DT01NT05fUElDVFVSRVMgICAgICAgICAiRG9jdW1lbnRzXFxNZXMgaW1hZ2VzIgogSURTX0NPTU1PTl9WSURFTyAgICAgICAgICAgICJEb2N1bWVudHNcXE1lcyB2aWTpb3MiCiBJRFNfQ0RCVVJOX0FSRUEgICAgICAgICAgICAgIkxvY2FsIFNldHRpbmdzXFxBcHBsaWNhdGlvbiBEYXRhXFxNaWNyb3NvZnRcXENEIEJ1cm5pbmciCgogSURTX05FV0ZPTERFUgkJIk5vdXZlYXUgZG9zc2llciIKfQo=