LyoKICogV2luZUZpbGUKICogVHVya2lzaCBMYW5ndWFnZSBTdXBwb3J0CiAqCiAqIENvcHlyaWdodCAyMDA2IEZhdGloIEH+/WP9CiAqCiAqIFRoaXMgbGlicmFyeSBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IKICogbW9kaWZ5IGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIExlc3NlciBHZW5lcmFsIFB1YmxpYwogKiBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieSB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uOyBlaXRoZXIKICogdmVyc2lvbiAyLjEgb2YgdGhlIExpY2Vuc2UsIG9yIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCiAqCiAqIFRoaXMgbGlicmFyeSBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAogKiBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZgogKiBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlIEdOVQogKiBMZXNzZXIgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLgogKgogKiBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgTGVzc2VyIEdlbmVyYWwgUHVibGljCiAqIExpY2Vuc2UgYWxvbmcgd2l0aCB0aGlzIGxpYnJhcnk7IGlmIG5vdCwgd3JpdGUgdG8gdGhlIEZyZWUgU29mdHdhcmUKICogRm91bmRhdGlvbiwgSW5jLiwgNTEgRnJhbmtsaW4gU3QsIEZpZnRoIEZsb29yLCBCb3N0b24sIE1BIDAyMTEwLTEzMDEsIFVTQQogKi8KCiNpbmNsdWRlICJyZXNvdXJjZS5oIgoKTEFOR1VBR0UgTEFOR19UVVJLSVNILCBTVUJMQU5HX0RFRkFVTFQKCi8qIE1lbnUgKi8KCklETV9XSU5FRklMRSBNRU5VIEZJWEVEIElNUFVSRQp7CiAgICBQT1BVUCAiJkRvc3lhIiAgewogICAgICAgIE1FTlVJVEVNICImQedcdEVudGVyIiwgICAgICAgICAgICAgICAgICBJRF9BQ1RJVkFURQogICAgICAgIE1FTlVJVEVNICImVGH+/S4uLlx0RjciLCAgICAgICAgICAgICAgICBJRF9GSUxFX01PVkUKICAgICAgICBNRU5VSVRFTSAiSyZvcHlhbGEuLi5cdEY4IiwgICAgICAgICAgICAgSURfRklMRV9DT1BZCiAgICAgICAgTUVOVUlURU0gIiZQYW5vZGFuLi4uXHRGOSIsICAgICAgICAgICAgIDExOAogICAgICAgIE1FTlVJVEVNICImU2lsXHREZWwiLCAgICAgICAgICAgICAgICAgICBJRF9GSUxFX0RFTEVURQogICAgICAgIE1FTlVJVEVNICJZZSZuaWRlbiBBZGxhbmT9ci4uLiIsICAgICAgICAxMDkKICAgICAgICBNRU5VSVRFTSAiJtZ6ZWxsaWtsZXIuLi5cdEFsdCtFbnRlciIsICAgSURfRURJVF9QUk9QRVJUSUVTCiAgICAgICAgTUVOVUlURU0gU0VQQVJBVE9SCiAgICAgICAgTUVOVUlURU0gIlMm/Wv9/nT9ci4uLiIsICAgICAgICAgICAgICAgIDExOQogICAgICAgIE1FTlVJVEVNICJHZW5pJv5sZXQuLi4iLCAgICAgICAgICAgICAgICAxMjAKICAgICAgICBNRU5VSVRFTSBTRVBBUkFUT1IKICAgICAgICBNRU5VSVRFTSAiJsdhbP3+dP1yLi4uIiwgICAgICAgICAgICAgICAgSURfUlVOCiAgICAgICAgTUVOVUlURU0gIllhJnpk/XIuLi4iLCAgICAgICAgICAgICAgICAgIDEwMgogICAgICAgIE1FTlVJVEVNICLdbGn+a2lsZW5kaXIuLi4iLCAgICAgICAgICAgICAxMDMKICAgICAgICBNRU5VSVRFTSBTRVBBUkFUT1IKICAgICAgICBNRU5VSVRFTSAiJkRpemluIE9sdf50dXIuLi4iLCAgICAgICAgICAgMTExCiAgICAgICAgTUVOVUlURU0gIkEmcmEuLi4iLCAgICAgICAgICAgICAgICAgICAgIDEwNAogICAgICAgIE1FTlVJVEVNICJEJm9zeWFsYXL9IFNl5y4uLiIsICAgICAgICAgICAxMTYKICAgICAgICBNRU5VSVRFTSBTRVBBUkFUT1IKI2lmbmRlZiBfTk9fRVhURU5TSU9OUwogICAgICAgIE1FTlVJVEVNICImx/1r/f5cdEFsdCtYIiwgICAgICAgICAgICAgICAgSURfRklMRV9FWElUCiNlbHNlCiAgICAgICAgTUVOVUlURU0gIibH/Wv9/iIsICAgICAgICAgICAgICAgICAgICAgICBJRF9GSUxFX0VYSVQKI2VuZGlmCiAgICB9CgogICAgUE9QVVAgIiZEaXNrIiAgewogICAgICAgIE1FTlVJVEVNICJEaXNrIEsmb3B5YWxhLi4uIiwgICAgICAgICAgICAgMjAxCiAgICAgICAgTUVOVUlURU0gIkRpc2sgJkV0aWtldGkuLi4iLCAgICAgICAgICAgICAyMDIKICAgICAgICBNRU5VSVRFTSBTRVBBUkFUT1IKICAgICAgICBNRU5VSVRFTSAiRGlzayBCaSbnaW1sZW5kaXIuLi4iLCAgICAgICAgIElEX0ZPUk1BVF9ESVNLCiNpZmRlZiBfV0lOOTUKICAgICAgICBNRU5VSVRFTSAiJlNpc3RlbSBEaXNraSBPbHX+dHVyLi4uIiwgLTEgLypUT0RPKi8KI2VuZGlmCiAgICAgICAgTUVOVUlURU0gU0VQQVJBVE9SCiAgICAgICAgTUVOVUlURU0gIiZB8CBT/HL8Y/xz/G5lIEJh8GxhbiIsICAgICAgIElEX0NPTk5FQ1RfTkVUV09SS19EUklWRQogICAgICAgIE1FTlVJVEVNICJB8CBT/HL8Y/xz/G5lIEJh8GxhbnT9ef0gJktlcyIsICAgSURfRElTQ09OTkVDVF9ORVRXT1JLX0RSSVZFCiAgICAgICAgTUVOVUlURU0gU0VQQVJBVE9SCiAgICAgICAgTUVOVUlURU0gIlBheWxh/i4uLiIsICAgICAgICAgICAgICAgICAgIDI1NAogICAgICAgIE1FTlVJVEVNICJQYXlsYf79bf0gUyZpbC4uLiIsICAgICAgICAgICAyNTUKICAgICAgICBNRU5VSVRFTSBTRVBBUkFUT1IKICAgICAgICBNRU5VSVRFTSAiUyb8cvxj/CBTZecuLi4iLCAgICAgICAgICAgICAgMjUxCiAgICB9CgogICAgUE9QVVAgIkRpJnppbmxlciIgIHsKICAgICAgICBNRU5VSVRFTSAiJlNvbnJha2kgU2V2aXllXHQrIiwgICAgICAgICAgMzAxCiAgICAgICAgTUVOVUlURU0gIkHwYWP9ICZHZW5p/mxldFx0KiIsICAgICAgICAgIDMwMgogICAgICAgIE1FTlVJVEVNICImVPxt/G78IEdlbmn+bGV0XHRTdHJnKyoiLCAgICAzMDMKICAgICAgICBNRU5VSVRFTSAiQfBhY/0gVCZvcGxhXHQtIiwgICAgICAgICAgICAgMzA0CiAgICAgICAgTUVOVUlURU0gU0VQQVJBVE9SCiAgICAgICAgTUVOVUlURU0gIkEmbHQgRGFsbGFy/SDd/mFyZXRsZSIsICAgICAgIDUwNQogICAgfQoKICAgIFBPUFVQICImR/Zy/G78bSIgIHsKICAgICAgICBNRU5VSVRFTSAiQSbwYecgdmUgRGl6aW4iLCAgICAgICAgICAgICAgNDEzCiAgICAgICAgTUVOVUlURU0gIllhbG79emNhICZB8GHnIiwgICAgICAgICAgICAgIDQxMQogICAgICAgIE1FTlVJVEVNICJZYWxu/XpjYSAmRGl6aW4iLCAgICAgICAgICAgICA0MTIKICAgICAgICBNRU5VSVRFTSBTRVBBUkFUT1IKICAgICAgICBNRU5VSVRFTSAiQXkmcmHnIiwgICAgICAgICAgICAgICAgICAgICAgSURfVklFV19TUExJVAogICAgICAgIE1FTlVJVEVNIFNFUEFSQVRPUgogICAgICAgIE1FTlVJVEVNICImQWQiLCAgICAgICAgICAgICAgICAgICAgICAgICBJRF9WSUVXX05BTUUKICAgICAgICBNRU5VSVRFTSAiJlT8bSBEb3N5YSBBeXL9bnT9bGFy/SIsICAgICAgSURfVklFV19BTExfQVRUUklCVVRFUywgQ0hFQ0tFRAogICAgICAgIE1FTlVJVEVNICImU2XnaWxtaf4gQXly/W50/Wxhci4uLiIsICAgICBJRF9WSUVXX1NFTEVDVEVEX0FUVFJJQlVURVMKICAgICAgICBNRU5VSVRFTSBTRVBBUkFUT1IKICAgICAgICBNRU5VSVRFTSAiJkFkYSBH9nJlIFP9cmFsYSIsICAgICAgICAgICAgSURfVklFV19TT1JUX05BTUUKICAgICAgICBNRU5VSVRFTSAiJlT8cmUgR/ZyZSBT/XJhbGEiLCAgICAgICAgICAgSURfVklFV19TT1JUX1RZUEUKICAgICAgICBNRU5VSVRFTSAiJkJveXV0YSBH9nJlIFP9cmFsYSIsICAgICAgICAgSURfVklFV19TT1JUX1NJWkUKICAgICAgICBNRU5VSVRFTSAiJlRhcmloZSBH9nJlIFP9cmFsYSIsICAgICAgICAgSURfVklFV19TT1JUX0RBVEUKICAgICAgICBNRU5VSVRFTSBTRVBBUkFUT1IKICAgICAgICBNRU5VSVRFTSAiU/x6Z2XnICYuLi4iLCAgICAgICAgICAgICAgICAgSURfVklFV19GSUxURVIKICAgIH0KCiAgICBQT1BVUCAiJlNl52VuZWtsZXIiICB7CiAgICAgICAgTUVOVUlURU0gIiZPbmF5bGFtYS4uLiIsICAgICAgICAgICAgICAgIDUwMQogICAgICAgIE1FTlVJVEVNICImWWF6/SBUaXBpLi4uIiwgICAgICAgICAgICAgICBJRF9TRUxFQ1RfRk9OVAogICAgICAgIE1FTlVJVEVNICJBcmHnIMd1YnXwdW51ICbWemVsbGX+dGlyLi4uIiwgIDUxMgogICAgICAgIE1FTlVJVEVNIFNFUEFSQVRPUgogICAgICAgIE1FTlVJVEVNICImQXJh5yDHdWJ18HUiLCAgICAgICAgICAgICAgICBJRF9WSUVXX1RPT0xfQkFSLCBDSEVDS0VECiAgICAgICAgTUVOVUlURU0gIiZT/HL8Y/wgx3VidfB1IiwgICAgICAgICAgICAgIElEX1ZJRVdfRFJJVkVfQkFSLCBDSEVDS0VECiAgICAgICAgTUVOVUlURU0gIiZEdXJ1bSDHdWJ18HUiLCAgICAgICAgICAgICAgIElEX1ZJRVdfU1RBVFVTQkFSLCBDSEVDS0VECiNpZm5kZWYgX05PX0VYVEVOU0lPTlMKICAgICAgICBNRU5VSVRFTSAiJlRhbSBFa3Jhblx0Q3RybCtTaGlmdCtTIiwgICAgSURfVklFV19GVUxMU0NSRUVOCiNlbmRpZgogICAgICAgIE1FTlVJVEVNIFNFUEFSQVRPUgogICAgICAgIE1FTlVJVEVNICJB5/1s/f50YSAma/zn/Gx0IiwgICAgICAgICAgICA1MDQKICAgICAgICBNRU5VSVRFTSAiJsf9a/3+dGEgYXlhcmxhcv0ga2F5ZGV0IiwgICAgNTExCiAgICB9CgoKICAgIFBPUFVQICImR/x2ZW5saWsiICB7CiAgICAgICAgTUVOVUlURU0gIiZFcmn+aW0uLi4iLCAgICAgICAgICAgICAgICAgIDYwNQogICAgICAgIE1FTlVJVEVNICImT3R1cnVtIEHnbWEuLi4iLCAgICAgICAgICAgICA2MDYKICAgICAgICBNRU5VSVRFTSAiJlNhaGlwLi4uIiwgICAgICAgICAgICAgICAgICAgNjA3CiAgICB9CgogICAgUE9QVVAgIiZQZW5jZXJlIiAgewogICAgICAgIE1FTlVJVEVNICImWWVuaSBQZW5jZXJlIiwgICAgICAgICAgICAgICBJRF9XSU5ET1dfTkVXCiAgICAgICAgTUVOVUlURU0gIkRpelx0Q3RybCtGNSIsICAgICAgICAgICAgICAgIElEX1dJTkRPV19DQVNDQURFCiAgICAgICAgTUVOVUlURU0gIiZZYXRheSBE9v5lIiwgICAgICAgICAgICAgICAgIElEX1dJTkRPV19USUxFX0hPUloKICAgICAgICBNRU5VSVRFTSAiRGkma2V5IET2/mVcdEN0cmwrRjQiLCAgICAgICAgSURfV0lORE9XX1RJTEVfVkVSVAojaWZuZGVmIF9OT19FWFRFTlNJT05TCiAgICAgICAgTUVOVUlURU0gIk90b21hdGlrIET8emVubGUiLCAgICAgICAgICAgIElEX1dJTkRPV19BVVRPU09SVAojZW5kaWYKICAgICAgICBNRU5VSVRFTSAiU2ltZ2VsZXJpIEQm/HplbmxlIiwgICAgICAgICAgSURfV0lORE9XX0FSUkFOR0UKICAgICAgICBNRU5VSVRFTSAiWWUmbmlsZVx0RjUiLCAgICAgICAgICAgICAgICAgSURfUkVGUkVTSAogICAgfQoKICAgIFBPUFVQICImWWFyZP1tIiAgewogICAgICAgIE1FTlVJVEVNICImWWFyZP1tIEtvbnVsYXL9XHRGMSIsICAgICAgICBJRF9IRUxQCiAgICAgICAgTUVOVUlURU0gIllhcmT9bWRhICZBcmEuLi5cdEYxIiwgICAgICAgIElEX0hFTFAKICAgICAgICBNRU5VSVRFTSAiWWFyZP1tICZLdWxsYW79bf1cdEYxIiwgICAgICAgSURfSEVMUF9VU0lORwogICAgICAgIE1FTlVJVEVNIFNFUEFSQVRPUgogICAgICAgIE1FTlVJVEVNICJXaW5lZmlsZSBoYWtr/W5kYSAmYmlsZ2kuLi4iLCBJRF9BQk9VVAogICAgfQp9CgpJRERfU0VMRUNUX0RFU1RJTkFUSU9OIERJQUxPRyBGSVhFRCBJTVBVUkUgMTUsIDEzLCAyMTAsIDYzClNUWUxFIERTX01PREFMRlJBTUUgfCBXU19QT1BVUCB8IFdTX0NBUFRJT04gfCBXU19TWVNNRU5VCkNBUFRJT04gIkhlZGVmaSBzZeciCkZPTlQgOCwgIk1TIFNoZWxsIERsZyIKewogICAgQ09OVFJPTCAgICAgICAgICIiLCAxMDEsICJTdGF0aWMiLCBTU19TSU1QTEV8U1NfTk9QUkVGSVgsIDMsIDYsIDE2MiwgMTAKICAgIENPTlRST0wgICAgICAgICAiJllvbDoiLCAtMSwgIlN0YXRpYyIsIFNTX0xFRlROT1dPUkRXUkFQfFdTX0dST1VQLCAzLCAxOCwgNjAsIDEwCiAgICBFRElUVEVYVCAgICAgICAgMjAxLCAzLCAyOSwgMTM0LCAxMiwgRVNfQVVUT0hTQ1JPTEwKICAgIERFRlBVU0hCVVRUT04gICAiVGFtYW0iLCAxLCAxNTgsIDYsIDQ3LCAxNAogICAgUFVTSEJVVFRPTiAgICAgICLdcHRhbCIsIDIsIDE1OCwgMjMsIDQ3LCAxNAogICAgUFVTSEJVVFRPTiAgICAgICImR/Z6YXQiLCAyNTQsIDE1OCwgNDMsIDQ3LCAxNAp9CgpJRERfRElBTE9HX1ZJRVdfVFlQRSBESUFMT0cgRElTQ0FSREFCTEUgMTUsIDEzLCAxNjEsIDk3ClNUWUxFIERTX01PREFMRlJBTUUgfCBXU19QT1BVUCB8IFdTX0NBUFRJT04gfCBXU19TWVNNRU5VCkNBUFRJT04gIkRvc3lhIFT8cvxuZSBH9nJlIgpGT05UIDgsICJNUyBTYW5zIFNlcmlmIgpCRUdJTgogICAgTFRFWFQgICAgICAgICAgICImQWQ6IiwtMSw3LDgsMjIsMTAKICAgIEVESVRURVhUICAgICAgICBJRENfVklFV19QQVRURVJOLDMxLDcsNjMsMTIsRVNfQVVUT0hTQ1JPTEwKICAgIEdST1VQQk9YICAgICAgICAiRG9zeWEgVPxy/CIsLTEsNywyMyw4Nyw1NgogICAgQ09OVFJPTCAgICAgICAgICImRGl6aW5sZXIiLElEQ19WSUVXX1RZUEVfRElSRUNUT1JJRVMsIkJ1dHRvbiIsCiAgICAgICAgICAgICAgICAgICAgQlNfQVVUT0NIRUNLQk9YIHwgV1NfVEFCU1RPUCwxMywzMiw3MCwxMAogICAgQ09OVFJPTCAgICAgICAgICImUHJvZ3JhbWxhciIsSURDX1ZJRVdfVFlQRV9QUk9HUkFNUywiQnV0dG9uIiwKICAgICAgICAgICAgICAgICAgICBCU19BVVRPQ0hFQ0tCT1ggfCBXU19UQUJTVE9QLDEzLDQzLDcwLDEwCiAgICBDT05UUk9MICAgICAgICAgIiZCZWxnZWxlciIsSURDX1ZJRVdfVFlQRV9ET0NVTUVOVFMsIkJ1dHRvbiIsCiAgICAgICAgICAgICAgICAgICAgQlNfQVVUT0NIRUNLQk9YIHwgV1NfVEFCU1RPUCwxMyw1NCw3MCwxMAogICAgQ09OVFJPTCAgICAgICAgICImRGnwZXIgZG9zeWFsYXIiLElEQ19WSUVXX1RZUEVfT1RIRVJTLCJCdXR0b24iLAogICAgICAgICAgICAgICAgICAgIEJTX0FVVE9DSEVDS0JPWCB8IFdTX1RBQlNUT1AsMTMsNjUsNzAsMTAKICAgIENPTlRST0wgICAgICAgICAiR2l6bGkvU2lzdGVtINZ6ZWxsaWtsaSBEb3N5YWxhcv0gJkf2c3RlciIsSURDX1ZJRVdfVFlQRV9ISURERU4sCiAgICAgICAgICAgICAgICAgICAgIkJ1dHRvbiIsQlNfQVVUT0NIRUNLQk9YIHwgV1NfVEFCU1RPUCw3LDgxLDE0MCw5CiAgICBERUZQVVNIQlVUVE9OICAgIlRhbWFtIixJRE9LLDEwNCw3LDUwLDE0CiAgICBQVVNIQlVUVE9OICAgICAgIt1wdGFsIixJRENBTkNFTCwxMDQsMjQsNTAsMTQKRU5ECgpJRERfRElBTE9HX1BST1BFUlRJRVMgRElBTE9HIERJU0NBUkRBQkxFICAwLCAwLCAyNDgsIDIxNQpTVFlMRSBEU19NT0RBTEZSQU1FIHwgV1NfUE9QVVAgfCBXU19DQVBUSU9OIHwgV1NfU1lTTUVOVQpDQVBUSU9OICIlcyDWemVsbGlrbGVyaSIKRk9OVCA4LCAiTVMgU2FucyBTZXJpZiIKQkVHSU4KICAgIERFRlBVU0hCVVRUT04gICAiVGFtYW0iLElET0ssMTkxLDcsNTAsMTQKICAgIFBVU0hCVVRUT04gICAgICAi3XB0YWwiLElEQ0FOQ0VMLDE5MSwyOSw1MCwxNAogICAgTFRFWFQgICAgICAgICAgICImRG9zeWEgQWT9OiIsLTEsNyw3LDU5LDkKICAgIEVESVRURVhUICAgICAgICBJRENfU1RBVElDX1BST1BfRklMRU5BTUUsNzEsNywxMjAsOSxFU19SRUFET05MWSB8IE5PVCBXU19CT1JERVIgfCBXU19UQUJTVE9QCiAgICBMVEVYVCAgICAgICAgICAgIlRhbSAmWW9sOiIsLTEsNywxOCw1OSw5CiAgICBFRElUVEVYVCAgICAgICAgSURDX1NUQVRJQ19QUk9QX1BBVEgsNzEsMTgsMTIwLDksIEVTX1JFQURPTkxZIHwgTk9UIFdTX0JPUkRFUiB8IFdTX1RBQlNUT1AKICAgIExURVhUICAgICAgICAgICAiU29uIERl8Gn+bWU6IiwtMSw3LDI5LDU5LDkKICAgIEVESVRURVhUICAgICAgICBJRENfU1RBVElDX1BST1BfTEFTVENIQU5HRSw3MSwyOSwxMjAsOSxFU19SRUFET05MWSB8IE5PVCBXU19CT1JERVIgfCBXU19UQUJTVE9QCiAgICBMVEVYVCAgICAgICAgICAgIlP8cvxtOiIsLTEsNyw0MCw1OSw5CiAgICBFRElUVEVYVCAgICAgICAgSURDX1NUQVRJQ19QUk9QX1ZFUlNJT04sNzEsNDAsMTIwLDksRVNfUkVBRE9OTFkgfCBOT1QgV1NfQk9SREVSIHwgV1NfVEFCU1RPUAogICAgTFRFWFQgICAgICAgICAgICImVGVsaWYgSGFra/06IiwtMSw3LDUxLDU5LDkKICAgIEVESVRURVhUICAgICAgICBJRENfU1RBVElDX1BST1BfQ09QWVJJR0hULDcxLDUxLDEyMCw5LEVTX1JFQURPTkxZIHwgTk9UIFdTX0JPUkRFUiB8IFdTX1RBQlNUT1AKICAgIExURVhUICAgICAgICAgICAiQm95dXQ6IiwtMSw3LDYyLDU5LDkKICAgIEVESVRURVhUICAgICAgICBJRENfU1RBVElDX1BST1BfU0laRSw3MSw2MiwxMjAsOSxFU19SRUFET05MWSB8IE5PVCBXU19CT1JERVIgfCBXU19UQUJTVE9QCiAgICBHUk9VUEJPWCAgICAgICAgItZ6ZWxsaWtsZXIiLC0xLDcsNzksMTU4LDQ2CiAgICBDT05UUk9MICAgICAgICAgIiZTYWx0IE9rdW51ciIsSURDX0NIRUNLX1JFQURPTkxZLCJCdXR0b24iLEJTX0FVVE9DSEVDS0JPWCB8IFdTX1RBQlNUT1AsMTcsOTEsNjgsOQogICAgQ09OVFJPTCAgICAgICAgICImR2l6bGkiLElEQ19DSEVDS19ISURERU4sIkJ1dHRvbiIsQlNfQVVUT0NIRUNLQk9YIHwgV1NfVEFCU1RPUCw5Miw5MSw2OCw5CiAgICBDT05UUk9MICAgICAgICAgIiZBcv5pdiIsSURDX0NIRUNLX0FSQ0hJVkUsIkJ1dHRvbiIsQlNfQVVUT0NIRUNLQk9YIHwgV1NfVEFCU1RPUCwxNywxMDEsNjgsOQogICAgQ09OVFJPTCAgICAgICAgICImU2lzdGVtIixJRENfQ0hFQ0tfU1lTVEVNLCJCdXR0b24iLEJTX0FVVE9DSEVDS0JPWCB8IFdTX1RBQlNUT1AsOTIsMTAxLDY4LDkKICAgIENPTlRST0wgICAgICAgICAiUyb9a/3+/WsiLElEQ19DSEVDS19DT01QUkVTU0VELCJCdXR0b24iLCBCU19BVVRPQ0hFQ0tCT1ggfCBXU19UQUJTVE9QLDE3LDExMSw2OCw5CiAgICBHUk9VUEJPWCAgICAgICAgIlMm/HL8bSBCaWxnaXNpIiwtMSw3LDEyOSwyMzQsNzkKICAgIExJU1RCT1ggICAgICAgICBJRENfTElTVF9QUk9QX1ZFUlNJT05fVFlQRVMsMTMsMTM5LDEwNyw2MyxMQlNfU09SVCB8IExCU19OT0lOVEVHUkFMSEVJR0hUIHwgV1NfVlNDUk9MTCB8IFdTX1RBQlNUT1AKICAgIEVESVRURVhUICAgICAgICBJRENfTElTVF9QUk9QX1ZFUlNJT05fVkFMVUVTLDEyMywxMzksMTExLDYzLEVTX01VTFRJTElORSB8IEVTX1JFQURPTkxZIHwgV1NfVlNDUk9MTApFTkQKCgpTVFJJTkdUQUJMRQp7CiAgICBJRFNfRk9OVF9TRUxfRExHX05BTUUgICAiWWF6/SB0aXBpIGF5YXJsYXL9IHV5Z3VsYW79eW9yIgogICAgSURTX0ZPTlRfU0VMX0VSUk9SICAgICAgIlllbmkgeWF6/SB0aXBpIHNl52Vya2VuIGhhdGEuIgp9CgpTVFJJTkdUQUJMRQp7CiAgICBJRFNfV0lORUZJTEUgICAgICAgICAgICAiV2luZWZpbGUiCiAgICBJRFNfRVJST1IgICAgICAgICAgICAgICAiSGF0YSIKICAgIElEU19ST09UX0ZTICAgICAgICAgICAgICJr9msgZHMiCiAgICBJRFNfVU5JWEZTICAgICAgICAgICAgICAidW5peGZzIgogICAgSURTX0RFU0tUT1AgICAgICAgICAgICAgIk1hc2H8c3T8IgogICAgSURTX1NIRUxMICAgICAgICAgICAgICAgIkthYnVrIgogICAgSURTX1RJVExFRk1UICAgICAgICAgICAgIiVzIC0gJXMiCiAgICBJRFNfTk9fSU1QTCAgICAgICAgICAgICAiSGVu/HogdGFtYW1sYW5tYWT9IgogICAgSURTX1dJTkVfRklMRSAgICAgICAgICAgIldpbmUgRG9zeWEgWfZuZXRpY2lzaSIKfQoKU1RSSU5HVEFCTEUKewogICAgSURTX0NPTF9OQU1FICAgICAgICAgICAgIkFkIgogICAgSURTX0NPTF9TSVpFICAgICAgICAgICAgIkJveXV0IgogICAgSURTX0NPTF9DREFURSAgICAgICAgICAgIk9UYXJpaGkiCiAgICBJRFNfQ09MX0FEQVRFICAgICAgICAgICAiRVRhcmloaSIKICAgIElEU19DT0xfTURBVEUgICAgICAgICAgICJEVGFyaWhpIgogICAgSURTX0NPTF9JRFggICAgICAgICAgICAgIt1uZGVrcy9E/PD8bSIKICAgIElEU19DT0xfTElOS1MgICAgICAgICAgICJCYfBsYW50/WxhciIKICAgIElEU19DT0xfQVRUUiAgICAgICAgICAgICLWemVsbGlrbGVyIgogICAgSURTX0NPTF9TRUMgICAgICAgICAgICAgIkf8dmVubGlrIgoKICAgIElEU19GUkVFX1NQQUNFX0ZNVCAgICAgICIlcyAvICVzIGJv/iIKfQo=