LyoKICogQ29weXJpZ2h0IDE5OTggS2FybCBCYWNrc3Ry9m0KICoKICogVGhpcyBsaWJyYXJ5IGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vcgogKiBtb2RpZnkgaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgTGVzc2VyIEdlbmVyYWwgUHVibGljCiAqIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5IHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlcgogKiB2ZXJzaW9uIDIuMSBvZiB0aGUgTGljZW5zZSwgb3IgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KICoKICogVGhpcyBsaWJyYXJ5IGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCiAqIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCiAqIE1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4gIFNlZSB0aGUgR05VCiAqIExlc3NlciBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMuCiAqCiAqIFlvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBMZXNzZXIgR2VuZXJhbCBQdWJsaWMKICogTGljZW5zZSBhbG9uZyB3aXRoIHRoaXMgbGlicmFyeTsgaWYgbm90LCB3cml0ZSB0byB0aGUgRnJlZSBTb2Z0d2FyZQogKiBGb3VuZGF0aW9uLCBJbmMuLCA1OSBUZW1wbGUgUGxhY2UsIFN1aXRlIDMzMCwgQm9zdG9uLCBNQSAgMDIxMTEtMTMwNyAgVVNBCiAqLwoKLyoKICogV0FSTklORzogRE8gTk9UIENIQU5HRSBUSEUgU0laRSBPRiBUSEUgU1RBTkRBUkQgRElBTE9HIFRFTVBMQVRFUy4KICovCgpMQU5HVUFHRSBMQU5HX1NXRURJU0gsIFNVQkxBTkdfREVGQVVMVAoKT1BFTl9GSUxFIERJQUxPRyBMT0FET05DQUxMIE1PVkVBQkxFIERJU0NBUkRBQkxFIDM2LCAyNCwgMjc1LCAxMzQKU1RZTEUgRFNfTU9EQUxGUkFNRSB8IFdTX1BPUFVQIHwgV1NfQ0FQVElPTiB8IFdTX1NZU01FTlUKQ0FQVElPTiAi1nBwbmEiCkZPTlQgOCwgIk1TIFNoZWxsIERsZyIKewogTFRFWFQgIkZpbCZuYW1uOiIsIDEwOTAsIDYsIDYsIDc2LCA5CiBFRElUVEVYVCAxMTUyLCA2LCAxNiwgOTAsIDEyLCBFU19BVVRPSFNDUk9MTCB8IEVTX09FTUNPTlZFUlQgfCBXU19CT1JERVIgfCBXU19UQUJTVE9QCiBMSVNUQk9YIDExMjAsIDYsIDMyLCA5MCwgNjgsIExCU19TVEFOREFSRCB8IExCU19PV05FUkRSQVdGSVhFRCB8IExCU19IQVNTVFJJTkdTIHwgTEJTX0RJU0FCTEVOT1NDUk9MTCB8IFdTX1RBQlNUT1AKIExURVhUICImS2F0YWxvZ2VyOiIsIC0xLCAxMTAsIDYsIDkyLCA5CiBMVEVYVCAiIiwgMTA4OCwgMTEwLCAxOCwgOTIsIDksIFNTX05PUFJFRklYIHwgV1NfR1JPVVAKIExJU1RCT1ggMTEyMSwgMTEwLCAzMiwgOTIsIDY4LCBMQlNfU1RBTkRBUkQgfCBMQlNfT1dORVJEUkFXRklYRUQgfCBMQlNfSEFTU1RSSU5HUyB8IExCU19ESVNBQkxFTk9TQ1JPTEwgfCBXU19UQUJTVE9QCiBMVEVYVCAiTGlzdGEgZmlsZXIgYXYgJnR5cGVuOiIsIDEwODksIDYsIDEwNCwgOTAsIDkKIENPTUJPQk9YIDExMzYsIDYsIDExNCwgOTAsIDM2LCBDQlNfRFJPUERPV05MSVNUIHwgQ0JTX0FVVE9IU0NST0xMIHwgV1NfQk9SREVSIHwgV1NfVlNDUk9MTCB8IFdTX1RBQlNUT1AKIExURVhUICImRW5oZXRlcjoiLCAxMDkxLCAxMTAsIDEwNCwgOTIsIDkKIENPTUJPQk9YIDExMzcsIDExMCwgMTE0LCA5MiwgNjgsIENCU19EUk9QRE9XTkxJU1QgfCBDQlNfT1dORVJEUkFXRklYRUQgfCBDQlNfQVVUT0hTQ1JPTEwgfCBDQlNfU09SVCB8IENCU19IQVNTVFJJTkdTIHwgV1NfQk9SREVSIHwgV1NfVlNDUk9MTCB8IFdTX1RBQlNUT1AKIERFRlBVU0hCVVRUT04gItZwcG5hIiwgSURPSywgMjA4LCA2LCA1NiwgMTQsIEJTX0RFRlBVU0hCVVRUT04gfCBXU19HUk9VUCB8IFdTX1RBQlNUT1AKIFBVU0hCVVRUT04gIkF2YnJ5dCIsIElEQ0FOQ0VMLCAyMDgsIDI0LCA1NiwgMTQsIFdTX0dST1VQIHwgV1NfVEFCU1RPUAogUFVTSEJVVFRPTiAiJkhq5GxwIiwgMTAzOCwgMjA4LCA0NiwgNTYsIDE0LCBXU19HUk9VUCB8IFdTX1RBQlNUT1AKIENIRUNLQk9YICImU2tyaXZza3lkZGF0IiwgMTA0MCwgMjA4LCA2OCwgNTAsIDEyLCBCU19BVVRPQ0hFQ0tCT1ggfCBXU19HUk9VUCB8IFdTX1RBQlNUT1AKfQoKClNBVkVfRklMRSBESUFMT0cgTE9BRE9OQ0FMTCBNT1ZFQUJMRSBESVNDQVJEQUJMRSAzNiwgMjQsIDI3NSwgMTM0ClNUWUxFIERTX01PREFMRlJBTUUgfCBXU19QT1BVUCB8IFdTX0NBUFRJT04gfCBXU19TWVNNRU5VCkNBUFRJT04gIlNwYXJhIHNvbSAuLi4iCkZPTlQgOCwgIk1TIFNoZWxsIERsZyIKewogTFRFWFQgIiZGaWxuYW1uOiIsIDEwOTAsIDYsIDYsIDc2LCA5CiBFRElUVEVYVCAxMTUyLCA2LCAxNiwgOTAsIDEyLCBFU19BVVRPSFNDUk9MTCB8IEVTX09FTUNPTlZFUlQgfCBXU19CT1JERVIgfCBXU19UQUJTVE9QCiBMSVNUQk9YIDExMjAsIDYsIDMyLCA5MCwgNjgsIExCU19TVEFOREFSRCB8IExCU19PV05FUkRSQVdGSVhFRCB8IExCU19IQVNTVFJJTkdTIHwgTEJTX0RJU0FCTEVOT1NDUk9MTCB8IFdTX1RBQlNUT1AKIExURVhUICImS2F0YWxvZ2VyOiIsIC0xLCAxMTAsIDYsIDkyLCA5CiBMVEVYVCAiIiwgMTA4OCwgMTEwLCAxOCwgOTIsIDksIFNTX05PUFJFRklYIHwgV1NfR1JPVVAKIExJU1RCT1ggMTEyMSwgMTEwLCAzMiwgOTIsIDY4LCBMQlNfU1RBTkRBUkQgfCBMQlNfT1dORVJEUkFXRklYRUQgfCBMQlNfSEFTU1RSSU5HUyB8IExCU19ESVNBQkxFTk9TQ1JPTEwgfCBXU19UQUJTVE9QCiBMVEVYVCAiTGlzdGEgZmlsZXIgYXYgJnR5cGVuOiIsIDEwODksIDYsIDEwNCwgOTAsIDkKIENPTUJPQk9YIDExMzYsIDYsIDExNCwgOTAsIDM2LCBDQlNfRFJPUERPV05MSVNUIHwgQ0JTX0FVVE9IU0NST0xMIHwgV1NfQk9SREVSIHwgV1NfVlNDUk9MTCB8IFdTX1RBQlNUT1AKIExURVhUICImRW5oZXRlcjoiLCAxMDkxLCAxMTAsIDEwNCwgOTIsIDkKIENPTUJPQk9YIDExMzcsIDExMCwgMTE0LCA5MiwgNjgsIENCU19EUk9QRE9XTkxJU1QgfCBDQlNfT1dORVJEUkFXRklYRUQgfCBDQlNfQVVUT0hTQ1JPTEwgfCBDQlNfU09SVCB8IENCU19IQVNTVFJJTkdTIHwgV1NfQk9SREVSIHwgV1NfVlNDUk9MTCB8IFdTX1RBQlNUT1AKIERFRlBVU0hCVVRUT04gIlNwYXJhIHNvbSIsIElET0ssIDIwOCwgNiwgNTYsIDE0LCBCU19ERUZQVVNIQlVUVE9OIHwgV1NfR1JPVVAgfCBXU19UQUJTVE9QCiBQVVNIQlVUVE9OICJBdmJyeXQiLCBJRENBTkNFTCwgMjA4LCAyNCwgNTYsIDE0LCBXU19HUk9VUCB8IFdTX1RBQlNUT1AKIFBVU0hCVVRUT04gIiZIauRscCIsIDEwMzgsIDIwOCwgNDYsIDU2LCAxNCwgV1NfR1JPVVAgfCBXU19UQUJTVE9QCiBDSEVDS0JPWCAiJlNrcml2c2t5ZGRhZCIsIDEwNDAsIDIwOCwgNjgsIDUwLCAxMiwgQlNfQVVUT0NIRUNLQk9YIHwgV1NfR1JPVVAgfCBXU19UQUJTVE9QCn0KCgpQUklOVCBESUFMT0cgTE9BRE9OQ0FMTCBNT1ZFQUJMRSBESVNDQVJEQUJMRSAzNiwgMjQsIDI2NCwgMTM0ClNUWUxFIERTX01PREFMRlJBTUUgfCBXU19QT1BVUCB8IFdTX0NBUFRJT04gfCBXU19TWVNNRU5VCkNBUFRJT04gIlNrcml2IHV0IgpGT05UIDgsICJNUyBTaGVsbCBEbGciCnsKIExURVhUICJTa3JpdmFyZToiLCAxMDg4LCA2LCA2LCA0MCwgOQogTFRFWFQgIiIsIDEwODksIDYwLCA2LCAxNTAsIDkKIEdST1VQQk9YICJTa3JpdiB1dCBkZWwiLCAxMDcyLCA2LCAzMCwgMTYwLCA2NSwgQlNfR1JPVVBCT1gKIFJBRElPQlVUVE9OICImQWxsdCIsIDEwNTYsIDE2LCA0NSwgNjAsIDEyCiBSQURJT0JVVFRPTiAiJk1hcmtlcmF0IiwgMTA1NywgMTYsIDYwLCA2MCwgMTIKIFJBRElPQlVUVE9OICImU2lkb3IiLCAxMDU4LCAxNiwgNzUsIDYwLCAxMgogREVGUFVTSEJVVFRPTiAiU2tyaXYgdXQiLCBJRE9LLCAyMDYsIDYsIDU2LCAxNCwgQlNfREVGUFVTSEJVVFRPTiB8IFdTX0dST1VQIHwgV1NfVEFCU1RPUAogUFVTSEJVVFRPTiAiQXZicnl0IiwgSURDQU5DRUwsIDIwNiwgMjQsIDU2LCAxNCwgV1NfR1JPVVAgfCBXU19UQUJTVE9QCiBQVVNIQlVUVE9OICImSW5zdORsbG5pbmdhciIsIDEwMjQsIDIwNiwgNDYsIDU2LCAxNCwgV1NfR1JPVVAgfCBXU19UQUJTVE9QCiBMVEVYVCAiJkZy5W46IiwgMTA5MCwgNjAsIDgwLCAzMCwgOQogTFRFWFQgIiZUaWxsOiIsIDEwOTEsIDEyMCwgODAsIDMwLCA5CiBMVEVYVCAiVXRza3JpZnRza3ZhbGl0ZXQ6IiwgMTA5MiwgNiwgMTAwLCA3NiwgOQogQ09NQk9CT1ggMTEzNiwgODAsIDEwMCwgOTIsIDY4LCBDQlNfRFJPUERPV05MSVNUIHwgQ0JTX09XTkVSRFJBV0ZJWEVEIHwgQ0JTX0FVVE9IU0NST0xMIHwgQ0JTX1NPUlQgfCBDQlNfSEFTU1RSSU5HUyB8IFdTX0JPUkRFUiB8IFdTX1ZTQ1JPTEwgfCBXU19UQUJTVE9QCiBDSEVDS0JPWCAiJlNrcml2IHRpbGwgZmlsIiwgMTA0MCwgMjAsIDEwMCwgNTAsIDEyLCBCU19BVVRPQ0hFQ0tCT1ggfCBXU19HUk9VUCB8IFdTX1RBQlNUT1AKIENIRUNLQk9YICJTYW1tYW50cnlja3QiLCAxMDQxLCAxNjAsIDEwMCwgNTAsIDEyLCBCU19BVVRPQ0hFQ0tCT1ggfCBXU19HUk9VUCB8IFdTX1RBQlNUT1AKfQoKClBSSU5UX1NFVFVQIERJQUxPRyBMT0FET05DQUxMIE1PVkVBQkxFIERJU0NBUkRBQkxFIDM2LCAyNCwgMjY0LCAxMzQKU1RZTEUgRFNfTU9EQUxGUkFNRSB8IFdTX1BPUFVQIHwgV1NfQ0FQVElPTiB8IFdTX1NZU01FTlUKQ0FQVElPTiAiU2tyaXZhcmluc3TkbGxuaW5nYXIiCkZPTlQgOCwgIk1TIFNoZWxsIERsZyIKewogR1JPVVBCT1ggIlNrcml2YXJlIiwgMTA3MiwgNiwgMTAsIDE4MCwgNjUsIEJTX0dST1VQQk9YCiBSQURJT0JVVFRPTiAiJlN0YW5kYXJkc2tyaXZhcmUiLCAxMDU2LCAxNiwgMjAsIDgwLCAxMgogTFRFWFQgIltpbmdlbl0iLCAxMDg4LCAzNSwgMzUsIDEyMCwgOQogUkFESU9CVVRUT04gIlNwZWNpZmllcmFkICZza3JpdmFyZSIsIDEwNTcsIDE2LCA1MCwgODAsIDEyCiBDT01CT0JPWCAxMTM2LCAzNSwgNjUsIDE0OSwgNjgsIENCU19EUk9QRE9XTkxJU1QgfCBDQlNfT1dORVJEUkFXRklYRUQgfCBDQlNfQVVUT0hTQ1JPTEwgfCBDQlNfU09SVCB8IENCU19IQVNTVFJJTkdTIHwgV1NfQk9SREVSIHwgV1NfVlNDUk9MTCB8IFdTX1RBQlNUT1AKIERFRlBVU0hCVVRUT04gIk9rIiwgSURPSywgMjA2LCA2LCA1NiwgMTQsIEJTX0RFRlBVU0hCVVRUT04gfCBXU19HUk9VUCB8IFdTX1RBQlNUT1AKIFBVU0hCVVRUT04gIkF2YnJ5dCIsIElEQ0FOQ0VMLCAyMDYsIDI0LCA1NiwgMTQsIFdTX0dST1VQIHwgV1NfVEFCU1RPUAogUFVTSEJVVFRPTiAiJkluc3TkbGxuaW5nYXIiLCAxMDI0LCAyMDYsIDQ2LCA1NiwgMTQsIFdTX0dST1VQIHwgV1NfVEFCU1RPUAogR1JPVVBCT1ggIk9yaWVudGVyaW5nIiwgMTA3MywgNiwgODUsIDEwMCwgNTAsIEJTX0dST1VQQk9YCiBSQURJT0JVVFRPTiAiJlBvcnRy5HR0IiwgMTA1OCwgNTAsIDEwMCwgNDAsIDEyCiBSQURJT0JVVFRPTiAiJkxhbmRza2FwIiwgMTA1OSwgNTAsIDExNSwgNDAsIDEyCiBJQ09OICJMQU5EU0NBUCIsIDEwOTcsIDEwLCA5NSwgMzIsIDMyCiBJQ09OICJQT1JUUkFJVCIsIDEwOTgsIDEwLCA5NSwgMzIsIDMyCiBHUk9VUEJPWCAiUGFwZXIiLCAxMDc0LCAxMjAsIDg1LCAxODAsIDUwLCBCU19HUk9VUEJPWAogTFRFWFQgIiZTdG9ybGVrIiwgMTA4OSwgMTMwLCA5NSwgMzAsIDkKIExURVhUICImS+RsbGEiLCAxMDkwLCAxMzAsIDExMCwgMzAsIDkKIENPTUJPQk9YIDExMzcsIDE1NSwgOTUsIDkyLCA2OCwgQ0JTX0RST1BET1dOTElTVCB8IENCU19PV05FUkRSQVdGSVhFRCB8IENCU19BVVRPSFNDUk9MTCB8IENCU19TT1JUIHwgQ0JTX0hBU1NUUklOR1MgfCBXU19CT1JERVIgfCBXU19WU0NST0xMIHwgV1NfVEFCU1RPUAogQ09NQk9CT1ggMTEzOCwgMTU1LCAxMTAsIDkyLCA2OCwgQ0JTX0RST1BET1dOTElTVCB8IENCU19PV05FUkRSQVdGSVhFRCB8IENCU19BVVRPSFNDUk9MTCB8IENCU19TT1JUIHwgQ0JTX0hBU1NUUklOR1MgfCBXU19CT1JERVIgfCBXU19WU0NST0xMIHwgV1NfVEFCU1RPUAp9CgoKQ0hPT1NFX0ZPTlQgRElBTE9HIERJU0NBUkRBQkxFICAxMywgNTQsIDI2NCwgMTQ3ClNUWUxFIERTX01PREFMRlJBTUUgfCBXU19QT1BVUCB8IFdTX0NBUFRJT04gfCBXU19TWVNNRU5VCkNBUFRJT04gIlR5cHNuaXR0IgpGT05UIDgsICJNUyBTaGVsbCBEbGciCnsKICAgIExURVhUICAgICAgICAgICAiJlR5cHNuaXR0OiIsMTA4OCAsNiwzLDQwLDkKICAgIENPTUJPQk9YICAgICAgICAxMTM2ICw2LDEzLDk0LDU0LCAgQ0JTX09XTkVSRFJBV0ZJWEVEIHwgQ0JTX0hBU1NUUklOR1MgfCBDQlNfRElTQUJMRU5PU0NST0xMIHwKICAgICAgICAgICAgICAgICAgICBDQlNfQVVUT0hTQ1JPTEwgfCBDQlNfU09SVCB8IFdTX1ZTQ1JPTEwgfCBXU19UQUJTVE9QIHwgQ0JTX1NJTVBMRQogICAgTFRFWFQgICAgICAgICAgICJUeXBzbml0dHNzJnRpbDoiLDEwODkgLDEwOCwzLDQ0LDkKICAgIENPTUJPQk9YICAgICAgICAxMTM3LDEwOCwxMyw2NCw1NCwgQ0JTX09XTkVSRFJBV0ZJWEVEIHwgQ0JTX0hBU1NUUklOR1MgfCBDQlNfRElTQUJMRU5PU0NST0xMIHwgV1NfVlNDUk9MTCB8IFdTX1RBQlNUT1AgfCBDQlNfU0lNUExFCiAgICBMVEVYVCAgICAgICAgICAgIiZTdG9ybGVrOiIsMTA5MCwxNzksMywzMCw5CiAgICBDT01CT0JPWCAgICAgICAgMTEzOCwxNzksMTMsMzIsNTQsIENCU19PV05FUkRSQVdGSVhFRCB8IENCU19IQVNTVFJJTkdTIHwgQ0JTX0RJU0FCTEVOT1NDUk9MTCB8IFdTX1ZTQ1JPTEwgfCBXU19UQUJTVE9QIHwgQ0JTX1NJTVBMRSB8IENCU19TT1JUCiAgICBERUZQVVNIQlVUVE9OICAgIk9rIixJRE9LLDIxOCw2LDQwLDE0LFdTX0dST1VQCiAgICBQVVNIQlVUVE9OICAgICAgIkF2YnJ5dCIsSURDQU5DRUwsMjE4LDIzLDQwLDE0LFdTX0dST1VQCiAgICBQVVNIQlVUVE9OICAgICAgIiZBbnbkbmQiLCAxMDI2LDIxOCw0MCw0MCwxNCxXU19HUk9VUAogICAgUFVTSEJVVFRPTiAgICAgICImSGrkbHAiICwgMTAzOCwyMTgsNTcsNDAsMTQsV1NfR1JPVVAKICAgIEdST1VQQk9YICAgICAgICAiRWZmZWt0ZXIiLDEwNzIsNiw3Miw4NCwzNCxXU19HUk9VUAogICAgQ0hFQ0tCT1gJICAgICImR2Vub21zdHJ1a2VuIiwgMTA0MCwgMTAsODIsNTAsMTAsIEJTX0FVVE9DSEVDS0JPWCB8IFdTX1RBQlNUT1AKICAgIENIRUNLQk9YIAkgICAgIiZVbmRlcnN0cnVrZW4iLCAxMDQxLCAxMCw5NCw1MCwxMCwgQlNfQVVUT0NIRUNLQk9YCiAgICBMVEVYVCAgICAgICAgICAgIiZG5HJnOiIsIDEwOTEgLDYsMTEwLDMwLDkKICAgIENPTUJPQk9YICAgICAgICAxMTM5LDYsMTIwLDg0LDEwMCxDQlNfRFJPUERPV05MSVNUIHwgQ0JTX09XTkVSRFJBV0ZJWEVEIHwgQ0JTX0hBU1NUUklOR1MgfAoJCSAgICBDQlNfQVVUT0hTQ1JPTEwgfCAgV1NfQk9SREVSIHwgV1NfVlNDUk9MTCB8IFdTX1RBQlNUT1AKICAgIEdST1VQQk9YICAgICAgICAiVGVzdCIsZ3JwMiw5OCw3MiwxMjAsMzYsV1NfR1JPVVAKICAgIENURVhUICAgICAgICAgICAiQWFCYll5WnoiLHN0YzUsMTAzLDgwLDEwOSwyNCxTU19OT1BSRUZJWCB8IE5PVCBXU19WSVNJQkxFCiAgICBMVEVYVCAgICAgICAgICAgIlNjciZpcHQgKHRyYW5zbGF0ZSk6IixzdGM3ICw5OCwxMTQsODAsOQogICAgQ09NQk9CT1ggICAgICAgIGNtYjUsOTgsMTI0LDEyMCwxMCxDQlNfRFJPUERPV05MSVNUIHxDQlNfT1dORVJEUkFXRklYRUQgfCBDQlNfSEFTU1RSSU5HUyB8CgkJICAgIENCU19BVVRPSFNDUk9MTCB8ICAgV1NfVlNDUk9MTCB8IFdTX1RBQlNUT1AKfQoKCkNIT09TRV9DT0xPUiBESUFMT0cgTE9BRE9OQ0FMTCBNT1ZFQUJMRSBESVNDQVJEQUJMRSAzNiwgMjQsIDMwMCwgMTg1ClNUWUxFIERTX01PREFMRlJBTUUgfCBXU19QT1BVUCB8IFdTX0NBUFRJT04gfCBXU19TWVNNRU5VCkNBUFRJT04gIkbkcmciCkZPTlQgOCwgIk1TIFNoZWxsIERsZyIKewogTFRFWFQgIiZHcnVuZGzkZ2dhbmRlIGbkcmdlcjoiLCAgIDEwODgsIDQsICAgIDQsICAxNDAsIDEwCiBMVEVYVCAiJkVnZW5kZWZpbmVyYWRlIGbkcmdlcjoiLCAgMTA4OSwgNCwgICAxMDYsIDE0MCwgMTAKIExURVhUICJFbmbkcmdhdCIsICAxMDkwLCAxNTAsIDE1MSwgIDQ4LCAxMAogTFRFWFQgICAiJlL2ZDoiLCA3MjYgLyoxMDk0Ki8sMjQ5LDEyNiwyNCwxMAogRURJVFRFWFQgNzA2LCAyNzUsMTI0LDE4LDEyLCBXU19CT1JERVIgfCBXU19HUk9VUCB8IFdTX1RBQlNUT1AKIExURVhUICAgIiZHcvZuOiIsNzI3LyoxMDk1Ki8sMjQ5LDE0MCwyNCwxMAogRURJVFRFWFQgNzA3LCAyNzUsMTM4LDE4LDEyLCBXU19CT1JERVIgfCBXU19HUk9VUCB8IFdTX1RBQlNUT1AKIExURVhUICAgIiZCbOU6Iiw3MjggLyoxMDk2Ki8sMjQ5LDE1NCwyNCwxMAogRURJVFRFWFQgNzA4LCAyNzUsMTUyLDE4LDEyLCBXU19CT1JERVIgfCBXU19HUk9VUCB8IFdTX1RBQlNUT1AKIExURVhUICAiJkludDoiICw3MjMgLyoxMDkxKi8sMjAyLDEyNiwyMiwxMAogRURJVFRFWFQgNzAzLCAyMjYsMTI0LDE4LDEyLCBXU19CT1JERVIgfCBXU19HUk9VUCB8IFdTX1RBQlNUT1AKIExURVhUICAiJk1ldDoiICw3MjQgLyoxMDkyKi8sMjAyLDE0MCwyMiwxMAogRURJVFRFWFQgNzA0LCAyMjYsMTM4LDE4LDEyLCBXU19CT1JERVIgfCBXU19HUk9VUCB8IFdTX1RBQlNUT1AKIExURVhUICAiJkx1bToiICw3MjUgLyoxMDkzKi8sMjAyLDE1NCwyMiwxMAogRURJVFRFWFQgNzA1LCAyMjYsMTUyLDE4LDEyLCBXU19CT1JERVIgfCBXU19HUk9VUCB8IFdTX1RBQlNUT1AKIENPTlRST0wgIiIgLDcyMCwiU1RBVElDIixTU19TSU1QTEV8V1NfVEFCU1RPUHxXU19HUk9VUCw0LDE0LDE0MCw4NgogQ09OVFJPTCAiIiAsNzIxLCJTVEFUSUMiLFNTX1NJTVBMRXxXU19UQUJTVE9QfFdTX0dST1VQLDQsMTE2LDE0MCwyOAogQ09OVFJPTCAiIiAsNzEwLCJTVEFUSUMiLFdTX0JPUkRFUnxTU19TSU1QTEV8V1NfVEFCU1RPUHxXU19HUk9VUCwgMTUyLDQsMTE4LDExNgogQ09OVFJPTCAiIiAsNzAyLCJTVEFUSUMiLFNTX1NJTVBMRXxXU19UQUJTVE9QfFdTX0dST1VQLCAyNzgsNCw4LDExNgogQ09OVFJPTCAiIiAsNzA5LCJTVEFUSUMiLFNTX1NJTVBMRXxXU19UQUJTVE9QfFdTX0dST1VQLCAxNTIsMTI0LDQwLDI2CiBERUZQVVNIQlVUVE9OICJPayIsICBJRE9LLCAgNCwgMTY2LCA0NCwgMTQsIEJTX0RFRlBVU0hCVVRUT04gfCBXU19HUk9VUCB8IFdTX1RBQlNUT1AKIFBVU0hCVVRUT04gIkF2YnJ5dCIsIElEQ0FOQ0VMLCA1MiwgMTY2LCA0NCwgMTQsIFdTX0dST1VQIHwgV1NfVEFCU1RPUAogUFVTSEJVVFRPTiAiSGrkbHAiLCAxMDM4LDEwMCwxNjYsIDQ0LCAxNAogUFVTSEJVVFRPTiAiJkzkZ2cgdGlsbCBlZ2VuZGVmaW5lcmFkIGbkcmciLCAgICA3MTIvKjEwMjQqLywgMTUyLCAxNjYsIDE0MiwgMTQsIFdTX0dST1VQIHwgV1NfVEFCU1RPUAogUFVTSEJVVFRPTiAiJkRlZmluZ25lcmEgZWdlbiBm5HJnID4+IiwgNzE5LyoxMDI1Ki8sICAgNCwgMTUwLCAxNDIsIDE0LCBXU19HUk9VUCB8IFdTX1RBQlNUT1AKIFBVU0hCVVRUT04gICImaSIsNzEzLDMwMCwyMDAsNCwxNCAgIC8qIGp1c3QgYSBkdW1teTogICdpJyBpcyAgbGlrZSAgJmkgIGluICJzb2wmaWQiICAqLwp9CgoKRklORERMR09SRCBESUFMT0cgTE9BRE9OQ0FMTCBNT1ZFQUJMRSBESVNDQVJEQUJMRSAzNiwgMjQsIDIzNiwgNjIKU1RZTEUgRFNfTU9EQUxGUkFNRSB8IFdTX1BPUFVQIHwgV1NfQ0FQVElPTiB8IFdTX1NZU01FTlUKQ0FQVElPTiAiU/ZrIgpGT05UIDgsICJNUyBTaGVsbCBEbGciCnsKIExURVhUICImU/ZrIGVmdGVyOiIsIC0xLCA0LCA4LCA0MiwgOAogRURJVFRFWFQgMTE1MiwgNDcsIDcsIDEyOCwgMTIsIEVTX0FVVE9IU0NST0xMIHwgV1NfQk9SREVSIHwgV1NfR1JPVVAgfCBXU19UQUJTVE9QCiBDSEVDS0JPWCAiJkJhcmEgaGVsYSBvcmQiLCAxMDQwLCA0LCAyNiwgMTAwLCAxMiwgQlNfQVVUT0NIRUNLQk9YIHwgV1NfR1JPVVAgfCBXU19UQUJTVE9QCiBDSEVDS0JPWCAiJlNraWxsbmFkIHDlIHN0b3JhL3Nt5SBib2tzdOR2ZXIiLCAxMDQxLCA0LCA0MiwgMTAwLCAxMiwgQlNfQVVUT0NIRUNLQk9YIHwgV1NfVEFCU1RPUAogR1JPVVBCT1ggIlJpa3RuaW5nIiwgMTA3MiwgMTA3LCAyNiwgNjgsIDI4CiBDT05UUk9MICImVXBwIiwgMTA1NiwgIkJVVFRPTiIsIEJTX0FVVE9SQURJT0JVVFRPTiB8IFdTX0NISUxEIHwgV1NfVklTSUJMRSB8IFdTX0dST1VQIHwgV1NfVEFCU1RPUCwgMTExLCAzOCwgMjAsIDEyCiBDT05UUk9MICImTmVyIiwgMTA1NywgIkJVVFRPTiIsIEJTX0FVVE9SQURJT0JVVFRPTiB8IFdTX0NISUxEIHwgV1NfVklTSUJMRSB8IFdTX1RBQlNUT1AsIDEzOCwgMzgsIDMwLCAxMgogREVGUFVTSEJVVFRPTiAiJlP2ayBlZnRlciBu5HN0YSIsIElET0ssIDE4MiwgNSwgNTAsIDE0LCBXU19HUk9VUCB8IFdTX1RBQlNUT1AKIFBVU0hCVVRUT04gIkF2YnJ5dCIsIElEQ0FOQ0VMLCAxODIsIDIzLCA1MCwgMTQsIFdTX0dST1VQIHwgV1NfVEFCU1RPUAogUFVTSEJVVFRPTiAiJkhq5GxwIiwgMTAzOCwgMTgyLCA0NSwgNTAsIDE0LCBXU19HUk9VUCB8IFdTX1RBQlNUT1AKfQoKClJFUExBQ0VETEdPUkQgRElBTE9HIExPQURPTkNBTEwgTU9WRUFCTEUgRElTQ0FSREFCTEUgMzYsIDI0LCAyMzAsIDk0ClNUWUxFIERTX01PREFMRlJBTUUgfCBXU19QT1BVUCB8IFdTX0NBUFRJT04gfCBXU19TWVNNRU5VCkNBUFRJT04gIlP2ay9lcnPkdHQiCkZPTlQgOCwgIk1TIFNoZWxsIERsZyIKewogTFRFWFQgIiZT9msgZWZ0ZXI6IiwgLTEsIDQsIDksIDQ4LCA4CiBFRElUVEVYVCAxMTUyLCA1NCwgNywgMTE0LCAxMiwgRVNfQVVUT0hTQ1JPTEwgfCBXU19CT1JERVIgfCBXU19HUk9VUCB8IFdTX1RBQlNUT1AKIExURVhUICImRXJz5HR0IG1lZDoiLCAtMSwgNCwgMjYsIDQ4LCA4CiBFRElUVEVYVCAxMTUzLCA1NCwgMjQsIDExNCwgMTIsIEVTX0FVVE9IU0NST0xMIHwgV1NfQk9SREVSIHwgV1NfR1JPVVAgfCBXU19UQUJTVE9QCiBDSEVDS0JPWCAiJkJhcmEgaGVsYSBvcmQiLCAxMDQwLCA1LCA0NiwgMTA0LCAxMiwgQlNfQVVUT0NIRUNLQk9YIHwgV1NfR1JPVVAgfCBXU19UQUJTVE9QCiBDSEVDS0JPWCAiJlNraWxsbmFkIHDlIHN0b3JhL3Nt5SBib2tzdOR2ZXIiLCAxMDQxLCA1LCA2MiwgMTA0LCAxMiwgQlNfQVVUT0NIRUNLQk9YIHwgV1NfVEFCU1RPUAogREVGUFVTSEJVVFRPTiAiJlP2ayBlZnRlciBu5HN0YSIsIElET0ssIDE3NCwgNCwgNTAsIDE0LCBCU19ERUZQVVNIQlVUVE9OIHwgV1NfR1JPVVAgfCBXU19UQUJTVE9QCiBQVVNIQlVUVE9OICImRXJz5HR0IiwgMTAyNCwgMTc0LCAyMSwgNTAsIDE0LCBXU19HUk9VUCB8IFdTX1RBQlNUT1AKIFBVU0hCVVRUT04gIkVyc+R0dCAmYWxsYSIsIDEwMjUsIDE3NCwgMzgsIDUwLCAxNCwgV1NfR1JPVVAgfCBXU19UQUJTVE9QCiBQVVNIQlVUVE9OICJBdmJyeXQiLCBJRENBTkNFTCwgMTc0LCA1NSwgNTAsIDE0LCBXU19HUk9VUCB8IFdTX1RBQlNUT1AKIFBVU0hCVVRUT04gIiZIauRscCIsIDEwMzgsIDE3NCwgNzUsIDUwLCAxNCwgV1NfR1JPVVAgfCBXU19UQUJTVE9QCn0KClBSSU5UMzIgRElBTE9HIExPQURPTkNBTEwgTU9WRUFCTEUgRElTQ0FSREFCTEUgIDMyLCAzMiwgMjg4LCAxODYKU1RZTEUgRFNfTU9EQUxGUkFNRSB8IFdTX1BPUFVQIHwgV1NfVklTSUJMRSB8IFdTX0NBUFRJT04gfCBXU19TWVNNRU5VIHwKICAgICAgRFNfQ09OVEVYVEhFTFAgfCBEU18zRExPT0sKQ0FQVElPTiAiU2tyaXYgdXQiCkZPTlQgOCwgIk1TIFNoZWxsIERsZyIKewogREVGUFVTSEJVVFRPTiAgICJPayIsICAgICBJRE9LLCAgICAgMTgwLDE2NCwgNDgsMTQsIFdTX0dST1VQIHwgQlNfREVGUFVTSEJVVFRPTgogUFVTSEJVVFRPTiAgICAgICJBdmJyeXQiLCBJRENBTkNFTCwgMjMyLDE2NCwgNDgsMTQsIFdTX0dST1VQCiBQVVNIQlVUVE9OICAgICAgIiZIauRscCIsICBwc2hIZWxwLCAgNTAsIDE2MSwgNDgsMTQsIFdTX0dST1VQCgogR1JPVVBCT1ggICAgICAgICJTa3JpdmFyZSIsICAgICAgIGdycDQsICAgOCwgIDQsIDI3Miw4NCwgV1NfR1JPVVAKIENPTlRST0wgICAgICAgICAiU2tyJml2IHRpbGwgZmlsIixjaHgxLCJCdXR0b24iLEJTX0FVVE9DSEVDS0JPWCB8IFdTX0dST1VQIHwgV1NfVEFCU1RPUCwyMTIsNzAsNjQsMTIKIFBVU0hCVVRUT04gICAgICAiJkVnZW5za2FwZXIiLCAgICBwc2gyLCAyMTIsIDE3LCAgNjAsMTQsIFdTX0dST1VQCiBMVEVYVCAgICAgICAgICAgIiZOYW1uOiIsICAgICAgICAgc3RjNiwgIDE2LCAyMCwgIDM2LDgKIENPTUJPQk9YICAgICAgICAgICAgICAgICAgICAgICAgICBjbWI0LCAgNTIsIDE4LCAgMTUyLDE1MixDQlNfRFJPUERPV05MSVNUIHwgQ0JTX1NPUlQgfCBXU19WU0NST0xMIHwgV1NfR1JPVVAgfCBXU19UQUJTVE9QCiBMVEVYVCAgICAgICAgICAgIlN0YXR1czoiLCAgICAgICAgc3RjOCwgIDE2LCAzNiwgIDM2LDEwLCBTU19OT1BSRUZJWAogTFRFWFQgICAgICAgICAgICJEdW0gc3RhdHVzIiwgICAgIHN0YzEyLCA1MiwgMzYsIDIyNCwxMCwgU1NfTk9QUkVGSVggfFNTX0xFRlROT1dPUkRXUkFQCiBMVEVYVCAgICAgICAgICAgIlR5cDoiLCAgICAgICAgICAgc3RjNywgIDE2LCA0OCwgIDM2LDEwLCBTU19OT1BSRUZJWAogTFRFWFQgICAgICAgICAgICJEdW0gdHlwIiwgICAgICAgIHN0YzExLCA1MiwgNDgsIDIyNCwxMCwgU1NfTk9QUkVGSVh8IFNTX0xFRlROT1dPUkRXUkFQCiBMVEVYVCAgICAgICAgICAgIlBsYXRzOiIsICAgICAgICAgc3RjMTAsIDE2LCA2MCwgIDM2LDEwLCBTU19OT1BSRUZJWAogTFRFWFQgICAgICAgICAgICJEdW0gcGxhdHMiLCAgICAgIHN0YzE0LCA1MiwgNjAsIDIyNCwxMCwgU1NfTk9QUkVGSVh8IFNTX0xFRlROT1dPUkRXUkFQCiBMVEVYVCAgICAgICAgICAgIktvbW1lbnRhcjoiLCAgICAgc3RjOSwgIDE2LCA3MiwgIDM2LDEwLCBTU19OT1BSRUZJWAogTFRFWFQgICAgICAgICAgICJEdW0ga29tbWVudGFyIiwgIHN0YzEzLCA1MiwgNzIsIDE1MiwxMCwgU1NfTk9QUkVGSVh8IFNTX0xFRlROT1dPUkRXUkFQCgogR1JPVVBCT1ggICAgICAgICJLb3Bpb3IiLCAgICAgICAgIGdycDIsIDE2MCwgOTIsIDEyMCw2NCwgV1NfR1JPVVAKIExURVhUICAgICAgICAgICAiQW50YWwgayZvcGlvcjoiLCBzdGM1LDE2OCwxMDgsNjgsOAogSUNPTiAgICAgICAgICAgICIiLCAgICAgICAgICAgICAgIGljbzMsIDE2MiwxMjQsICA3NiwyNCxXU19HUk9VUCB8IFNTX0NFTlRFUklNQUdFCiBDT05UUk9MICAgICAgICAgIiZTb3J0ZXJhIiwgICAgICAgY2h4MiwiQnV0dG9uIixCU19BVVRPQ0hFQ0tCT1ggfFdTX0dST1VQIHwgV1NfVEFCU1RPUCwyNDAsMTMwLDM2LDEyCiBFRElUVEVYVCAgICAgICAgICAgICAgICAgICAgICAgICAgZWR0MywgMjQwLDEwNiwgIDMyLDEyLCBXU19HUk9VUCB8RVNfTlVNQkVSCgogR1JPVVBCT1ggICAgICAgICJTa3JpdiB1dCIsICAgICAgIGdycDEsICAgOCw5MiwgIDE0NCw2NCwgV1NfR1JPVVAKIENPTlRST0wgICAgICAgICAiJkFsbGEiLCAgICAgICAgICByYWQxLCJCdXR0b24iLEJTX0FVVE9SQURJT0JVVFRPTiB8V1NfR1JPVVAgfCBXU19UQUJTVE9QLDE2LDEwNiw2NCwxMgogQ09OVFJPTCAgICAgICAgICJTaSZkb3IiLCAgICAgICAgIHJhZDMsIkJ1dHRvbiIsQlNfQVVUT1JBRElPQlVUVE9OLDE2LDEyMiwzNiwxMgogQ09OVFJPTCAgICAgICAgICImTWFya2VyaW5nIiwgICAgIHJhZDIsIkJ1dHRvbiIsQlNfQVVUT1JBRElPQlVUVE9OLDE2LDEzOCw2NCwxMgogRURJVFRFWFQgICAgICAgICAgICAgICAgICAgICAgICAgIGVkdDEsICA3NCwxMjIsICAyNiwxMiwgV1NfR1JPVVAgfEVTX05VTUJFUgogRURJVFRFWFQgICAgICAgICAgICAgICAgICAgICAgICAgIGVkdDIsIDExOCwxMjIsICAyNiwxMiwgV1NfR1JPVVAgfEVTX05VTUJFUgogUlRFWFQgICAgICAgICAgICImZnLlbjoiLCAgICAgICAgIHN0YzIsICA1MiwxMjQsICAyMCw4CiBSVEVYVCAgICAgICAgICAgIiZ0aWxsOiIsICAgICAgICAgc3RjMywgMTAwLDEyNCwgIDE2LDgKCn0KClBSSU5UMzJfU0VUVVAgRElBTE9HIExPQURPTkNBTEwgTU9WRUFCTEUgRElTQ0FSREFCTEUgIDMyLCAzMiwgMjg4LCAxNzgKU1RZTEUgRFNfTU9EQUxGUkFNRSB8IFdTX1BPUFVQIHwgV1NfVklTSUJMRSB8IFdTX0NBUFRJT04gfCBXU19TWVNNRU5VIHwKICAgICAgRFNfQ09OVEVYVEhFTFAgfCBEU18zRExPT0sKQ0FQVElPTiAiVXRza3JpZnRzZm9ybWF0IgpGT05UIDgsICJNUyBTaGVsbCBEbGciCkJFR0lOCiBERUZQVVNIQlVUVE9OICAgIk9rIixJRE9LLDE4MCwxNTYsNDgsMTQsV1NfR1JPVVAKIFBVU0hCVVRUT04gICAgICAiQXZicnl0IixJRENBTkNFTCwyMzIsMTU2LDQ4LDE0CgogR1JPVVBCT1ggICAgICAgICJTa3JpdmFyZSIsICAgZ3JwNCwgICA4LCAgNCwgMjcyLDg0LCBXU19HUk9VUAogUFVTSEJVVFRPTiAgICAgICImRWdlbnNrYXBlciIsICAgIHBzaDIsIDIxMiwgMTcsIDYwLDE0LCBXU19HUk9VUAogTFRFWFQgICAgICAgICAgICImTmFtbjoiLCAgICAgICAgIHN0YzYsICAxNiwgMjAsICAzNiw4CiBDT01CT0JPWCAgICAgICAgICAgICAgICAgICAgICAgICAgY21iMSwgIDUyLCAxOCwxNTIsMTUyLENCU19EUk9QRE9XTkxJU1QgfCBDQlNfU09SVCB8IFdTX1ZTQ1JPTEwgfCBXU19HUk9VUCB8IFdTX1RBQlNUT1AKIExURVhUICAgICAgICAgICAiU3RhdHVzOiIsICAgICAgICBzdGM4LCAgMTYsIDM2LCAgMzYsMTAsIFNTX05PUFJFRklYCiBMVEVYVCAgICAgICAgICAgIkR1bSBTdGF0ZSIsICAgICAgc3RjMTIsIDUyLCAzNiwgMjI0LDEwLCBTU19OT1BSRUZJWCB8IFNTX0xFRlROT1dPUkRXUkFQCiBMVEVYVCAgICAgICAgICAgIlR5cDoiLCAgICAgICAgICAgc3RjNywgIDE2LCA0OCwgIDM2LDEwLCBTU19OT1BSRUZJWAogTFRFWFQgICAgICAgICAgICJEdW0gdHlwIiwgICAgICAgIHN0YzExLCA1MiwgNDgsIDIyNCwxMCwgU1NfTk9QUkVGSVggfCBTU19MRUZUTk9XT1JEV1JBUAogTFRFWFQgICAgICAgICAgICJQbGF0czoiLCAgICAgICAgIHN0YzEwLCAxNiwgNjAsICAzNiwxMCwgU1NfTk9QUkVGSVgKIExURVhUICAgICAgICAgICAiRHVtIHBsYXRzIiwgICAgICBzdGMxNCwgNTIsIDYwLCAyMjQsMTAsIFNTX05PUFJFRklYIHwgU1NfTEVGVE5PV09SRFdSQVAKIExURVhUICAgICAgICAgICAiS29tbWVudGFyOiIsICAgICBzdGM5LCAgMTYsIDcyLCAgMzYsMTAsIFNTX05PUFJFRklYCiBMVEVYVCAgICAgICAgICAgIkR1bSBrb21tbmV0YXIiLCAgc3RjMTMsIDUyLCA3MiwgMjI0LDEwLCBTU19OT1BSRUZJWCB8IFNTX0xFRlROT1dPUkRXUkFQCiBHUk9VUEJPWCAgICAgICAgIlBhcHBlciIsICAgICAgICAgZ3JwMiwgICA4LCA5MiwgMTY0LDU2LCBXU19HUk9VUAogTFRFWFQgICAgICAgICAgICJTdCZvcmxlazoiLCAgICAgIHN0YzIsICAxNiwxMDgsICAzNiwgOAogQ09NQk9CT1ggICAgICAgICAgICAgICAgICAgICAgICAgIGNtYjIsICA1MiwxMDYsIDExMiwxMTIsQ0JTX0RST1BET1dOTElTVCB8IENCU19TT1JUIHwgV1NfVlNDUk9MTCB8IFdTX0dST1VQIHwgV1NfVEFCU1RPUAogTFRFWFQgICAgICAgICAgICImS+RsbGE6IiwgICAgICAgIHN0YzMsICAxNiwxMjgsICAzNiwgOAogQ09NQk9CT1ggICAgICAgICAgICAgICAgICAgICAgICAgIGNtYjMsICA1MiwxMjYsIDExMiwxMTIsQ0JTX0RST1BET1dOTElTVCB8IENCU19TT1JUIHwgV1NfVlNDUk9MTCB8IFdTX0dST1VQIHwgV1NfVEFCU1RPUAogR1JPVVBCT1ggICAgICAgICJPcmllbnRlcmluZyIsICAgIGdycDEsIDE4MCwgOTIsIDEwMCw1NiwgV1NfR1JPVVAKIElDT04gICAgICAgICAgICAiIiwgICAgICAgICAgICAgICBpY28xLCAxOTUsMTEyLCAgMTgsMjAsIFdTX0dST1VQCiBDT05UUk9MICAgICAgICAgIlN0JuVlbmRlIiwgICAgICAgcmFkMSwiQnV0dG9uIixCU19BVVRPUkFESU9CVVRUT04gfCBXU19HUk9VUCB8V1NfVEFCU1RPUCwyMjQsMTA2LDUyLDEyCiBDT05UUk9MICAgICAgICAgIkwmaWdnYW5kZSIsICAgICAgcmFkMiwiQnV0dG9uIixCU19BVVRPUkFESU9CVVRUT04sMjI0LDEyNiw1MiwxMgpFTkQKClBBR0VTRVRVUERMR09SRCBESUFMT0cgTE9BRE9OQ0FMTCBNT1ZFQUJMRSBESVNDQVJEQUJMRSAzMiwgMzIsIDI0MCwgMjQwClNUWUxFIERTX01PREFMRlJBTUUgfCBXU19QT1BVUCB8IFdTX1ZJU0lCTEUgfCBXU19DQVBUSU9OIHwgV1NfU1lTTUVOVQpDQVBUSU9OICJVdHNrcmlmdHNmb3JtYXQiCkZPTlQgOCwgIk1TIFNoZWxsIERsZyIKQkVHSU4KICBDT05UUk9MICIiLCByY3QxLCAiU3RhdGljIiwgU1NfV0hJVEVSRUNULCA4MCwgOCwgODAsIDgwCiAgQ09OVFJPTCAiIiwgcmN0MiwgIlN0YXRpYyIsIFNTX0dSQVlSRUNULCAxNjAsIDEyLCA0LCA4MAogIENPTlRST0wgIiIsIHJjdDMsICJTdGF0aWMiLCBTU19HUkFZUkVDVCwgIDg0LCA4OCwgODAsIDQKICBHUk9VUEJPWCAiUGFwcGVyIiwgZ3JwMiwgOCwgOTYsIDIyNCwgNTYsIEJTX0dST1VQQk9YCiAgTFRFWFQgIiZTdG9ybGVrOiIsIHN0YzIsIDE2LCAxMTIsIDM2LCA4CiAgQ09NQk9CT1ggY21iMiwgNjQsIDExMCwgMTYwLCAxNjAsQ0JTX1NJTVBMRXxDQlNfRFJPUERPV058Q0JTX1NPUlR8V1NfR1JPVVB8V1NfVEFCU1RPUHxXU19WU0NST0xMCiAgTFRFWFQgIiZUcmF5OiIsIHN0YzMsIDE2LCAxMzIsIDM2LCA4CiAgQ09NQk9CT1ggY21iMywgNjQsIDEzMCwgMTYwLCAxNjAsQ0JTX1NJTVBMRXxDQlNfRFJPUERPV058Q0JTX1NPUlR8V1NfR1JPVVB8V1NfVEFCU1RPUHxXU19WU0NST0xMCiAgR1JPVVBCT1ggIk9yaWVudGVyaW5nIiwgZ3JwMSwgOCwgMTU2LCA2NCwgNTYsIEJTX0dST1VQQk9YCiAgQVVUT1JBRElPQlVUVE9OICImU3TlZW5kZSIsIHJhZDEsIDE2LCAxNzAsIDUyLCAxMiwgQlNfQVVUT1JBRElPQlVUVE9OCiAgQVVUT1JBRElPQlVUVE9OICImTGlnZ2FuZGUiLCByYWQyLCAxNiwgMTkwLCA1MiwgMTIsIEJTX0FVVE9SQURJT0JVVFRPTgogIEdST1VQQk9YICJNYXJnaW5hbGVyIiwgZ3JwNCwgODAsIDE1NiwgMTUyLCA1NiwgQlNfR1JPVVBCT1gKICBMVEVYVCAiJlbkbnN0ZXI6Iiwgc3RjMTUsIDg4LCAxNzIsIDIxLCA4CiAgRURJVFRFWFQgZWR0NCwgMTExLCAxNzAsIDM5LCAxMiwgV1NfVEFCU1RPUHxXU19HUk9VUHxXU19CT1JERVIKICBMVEVYVCAiJkj2Z2VyOiIsIHN0YzE2LCAxNTksIDE3MiwgMjcsIDgKICBFRElUVEVYVCBlZHQ2LCAxODcsIDE3MCwgMzksIDEyLCBXU19UQUJTVE9QfFdTX0dST1VQfFdTX0JPUkRFUgogIExURVhUICIm1nZlcmthbnQ6Iiwgc3RjMTcsIDg4LCAxOTIsIDIxLCA4CiAgRURJVFRFWFQgZWR0NSwgMTExLCAxOTAsIDM5LCAxMiwgV1NfVEFCU1RPUHxXU19HUk9VUHxXU19CT1JERVIKICBMVEVYVCAiJk5lZGVya2FudDoiLCBzdGMxOCwgMTU5LCAxOTIsIDIzLCA4CiAgRURJVFRFWFQgZWR0NywgMTg3LCAxOTAsIDM5LCAxMiwgV1NfVEFCU1RPUHxXU19HUk9VUHxXU19CT1JERVIKICBERUZQVVNIQlVUVE9OICJPayIsIElET0ssIDcxLCAyMjAsIDUwLCAxNCwgQlNfUFVTSEJVVFRPTgogIFBVU0hCVVRUT04gIkF2YnJ5dCIsIElEQ0FOQ0VMLCAxMjYsIDIyMCwgNTAsIDE0CiAgUFVTSEJVVFRPTiAiJlNrcml2YXJlLi4uIiwgcHNoMywgMTg0LCAyMjAsIDQ4LCAxNApFTkQKCk5FV0ZJTEVPUEVOT1JEIERJQUxPRyBMT0FET05DQUxMIE1PVkVBQkxFIERJU0NBUkRBQkxFIDAsIDAsIDI4MCwgMTY0ClNUWUxFIERTX01PREFMRlJBTUUgfCBEU19DT05URVhUSEVMUCB8IFdTX1ZJU0lCTEUgfCBXU19QT1BVUCB8IFdTX0NBUFRJT04gfCBXU19TWVNNRU5VIHwgV1NfQ0xJUENISUxEUkVOCkNBUFRJT04gItZwcG5hIgpGT05UIDgsICJNUyBTaGVsbCBEbGciCnsKIExURVhUICAgICAgICJMZXRhICZpIixJRENfTE9PS0lOU1RBVElDLDQsNiw0Myw4LCBTU19OT1RJRlkKIENPTUJPQk9YICAgIElEQ19MT09LSU4sNDksMywxMzIsMTAwLENCU19EUk9QRE9XTkxJU1QgfCBDQlNfT1dORVJEUkFXRklYRUQgfCBDQlNfSEFTU1RSSU5HUyB8IFdTX1ZTQ1JPTEwgfCBXU19UQUJTVE9QCgogTFRFWFQgICAgICAgIiIgLCBJRENfVE9PTEJBUlNUQVRJQywgMTgxLCAyLCAxMDIsIDE3LCBOT1QgV1NfR1JPVVAgfCBOT1QgV1NfVklTSUJMRQogTElTVEJPWCAgICAgSURDX1NIRUxMU1RBVElDLDQsMjAsMjcyLDg1LCBMQlNfU09SVCB8IExCU19OT0lOVEVHUkFMSEVJR0hUIHwgTEJTX01VTFRJQ09MVU1OIHwgV1NfSFNDUk9MTCB8IE5PVCBXU19WSVNJQkxFCgogTFRFWFQgICAgICAgIkZpbCZuYW1uOiIsSURDX0ZJTEVOQU1FU1RBVElDLDUsMTEyLDQ2LDgsIFNTX05PVElGWQogRURJVFRFWFQgICAgSURDX0ZJTEVOQU1FLDU0LDExMCwxNTUsMTIsRVNfQVVUT0hTQ1JPTEwKCiBMVEVYVCAgICAgICAiJkZpbGZvcm1hdCIsSURDX0ZJTEVUWVBFU1RBVElDLDUsMTI4LDQyLDgsIFNTX05PVElGWQogQ09NQk9CT1ggICAgSURDX0ZJTEVUWVBFLDU0LDEyNiwxNTUsNTMsQ0JTX0RST1BET1dOTElTVCB8IFdTX1ZTQ1JPTEwgfCBXU19UQUJTVE9QCgogQ09OVFJPTCAgICAgItZwcG5hIHNvbSAmc2tyaXZza3lkZGFkIixJRENfT1BFTlJFQURPTkxZLCJCdXR0b24iLEJTX0FVVE9DSEVDS0JPWCB8IFdTX1RBQlNUT1AsNTQsMTQ1LDEwMCwxMAoKIERFRlBVU0hCVVRUT04gICAgICAgIibWcHBuYSIsICAgICAgICAgICAgICAgICBJRE9LLDIyMiwxMTAsNTAsMTQKIFBVU0hCVVRUT04gICAgICAgICAgIkF2YnJ5dCIsICAgICAgICAgICAgICAgIElEQ0FOQ0VMLDIyMiwxMjgsNTAsMTQKIFBVU0hCVVRUT04gICAgICAgICAgIiZIauRscCIsICAgICAgICAgICAgICAgICBwc2hIZWxwLDIyMiwxNDUsNTAsMTQKfQoKU1RSSU5HVEFCTEUgRElTQ0FSREFCTEUKewogSURTX0FCT1VUQk9YICAgICAgICAgICAgIiZPbSBGb2xkZXJQaWNrZXIgVGVzdCIKIElEU19ET0NVTUVOVEZPTERFUlMgICAgICJEb2t1bWVudG1hcHBhciIKIElEU19QRVJTT05BTCAgICAgICAgICAgICJNaW5hIERvY3VtZW50cyIKIElEU19GQVZPUklURVMgICAgICAgICAgICJNaW5hIEZhdm9yaXRlcyIKIElEU19QQVRIICAgICAgICAgICAgICAgICJTeXN0ZW1z9mt25GciCiBJRFNfREVTS1RPUCAgICAgICAgICAgICAiU2tyaXZib3JkIgogSURTX0ZPTlRTICAgICAgICAgICAgICAgIlR5cHNuaXR0IgogSURTX01ZQ09NUFVURVIgICAgICAgICAgIkRlbiBo5HIgZGF0b3JuIgp9CgpTVFJJTkdUQUJMRSBESVNDQVJEQUJMRQp7CiBJRFNfU1lTVEVNRk9MREVSUyAgICAgICAiU3lzdGVtbWFwcGFyIgogSURTX0xPQ0FMSEFSRFJJVkVTICAgICAgIkxva2FsYSBo5XJkZGlza2FyIgogSURTX0ZJTEVOT1RGT1VORCAgICAgICAgIkt1bmRlIGludGUgaGl0dGEgZmlsZW4iCiBJRFNfVkVSSUZZRklMRSAgICAgICAgICAiVmFkIGdvZCB2ZXJpZmllcmEgc+Uga29ycmVrdCBmaWxuYW1uIORyIGFuZ2l2ZXQiCiBJRFNfQ1JFQVRFRklMRSAgICAgICAgICAiRmlsZW4gZmlubnMgaW50ZVxuVmlsbCBkdSBza2FwYSBmaWwiCiBJRFNfT1ZFUldSSVRFRklMRSAgICAgICAiRmlsZW4gZmlubnMgcmVkYW4uXG5WaWxsIGR1IGVyc+R0dGEgZGVuPyIKIElEU19JTlZBTElEX0ZJTEVOQU1FX1RJVExFICJJbGxlZ2FsdCB0ZWNrZW4gaSBz9mt25GciCiBJRFNfSU5WQUxJRF9GSUxFTkFNRSAgICAiRXR0IGZpbG5hbW4ga2FuIGludGUgaW5uZWjlbGxhIG7lZ29uIGF2IGb2bGphbmRlIHRlY2tlbjogXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8gOiA8ID4gfCIKIElEU19QQVRITk9URVhJU1RJTkcgICAgICJT9mt25GdlbiBmaW5ucyBpbnRlIgogSURTX0ZJTEVOT1RFWElTVElORyAgICAgIkZpbGVuIGZpbm5zIGludGUiCn0KClNUUklOR1RBQkxFIERJU0NBUkRBQkxFCnsKIElEU19VUEZPTERFUiAgICAgICAgICJVcHAgZW4gbml25SIKIElEU19ORVdGT0xERVIgICAgICAgICJTa2FwYSBueSBtYXBwIgogSURTX0xJU1RWSUVXICAgICAgICAgIkxpc3RhIgogSURTX1JFUE9SVFZJRVcgICAgICAgIkRldGFsamVyYXQiCiBJRFNfVE9ERVNLVE9QICAgICAgICAiVmlzYSBTa3JpdmJvcmRldCIKfQoKU1RSSU5HVEFCTEUgRElTQ0FSREFCTEUKewogUEQzMl9QUklOVF9USVRMRSAgICAgICAiU2tyaXYgdXQiCgogUEQzMl9WQUxVRV9VUkVBREFCTEUgICAgICAgICAgICAgICAgICAiT2zkc2JhcnQgZuRsdCIKIFBEMzJfSU5WQUxJRF9QQUdFX1JBTkdFICJEZXR0YSB25HJkZXQgbGlnZ2VyIGludGUgaW5vbSBzaWRvdXJ2YWxldC5cblwKVmFyIGdvZCBza3JpdiBpbiBldHQgduRyZGUgbWVsbGFuICVkIG9jaCAlZC4iCiBQRDMyX0ZST01fTk9UX0FCT1ZFX1RPICAgICAgICAgICAgICAgICInZnLlbictZuRsdGV0IGthbiBpbnRlIPZ2ZXJza3JpZGEgJ3RpbGwnLWbkbHRldCIKIFBEMzJfTUFSR0lOU19PVkVSTEFQICAgICAgICAgICAgICAgICAgIk1hcmdpbmFsZXJuYSD2dmVybGFwcGFyIGVsbGVyIORyIHV0YW5m9nIgXApwYXBwZXJzZ3LkbnNlcm5hLlxuVmFyIGdvZCBza3JpdiBpbiBtYXJnaW5hbGxlcm5hIGlnZW4uIgogUEQzMl9OUl9PRl9DT1BJRVNfRU1QVFkgICAgICAgICAgICAgICAiTnVtcmV0ICdBbnRhbCBrb3Bpb3InIGthbiBpbnRlIHZhcmEgdG9tdC4iCiBQRDMyX1RPT19MQVJHRV9DT1BJRVMgICAgICAgICAgICAgICAgICJEaW4gc2tyaXZhcmUgc3T2ZGplciBpbnRlIHPlIG3lbmdhIGtvcGlvciBzb20gZHUgYW5nYXYuIFZhZCBnb2Qgc2tyaXYgaW4gZXR0IHbkcmRlIG1lbGxhbiAxIG9jaCAlZC4iCiBQRDMyX1BSSU5UX0VSUk9SICAgICAgICAgICAgICAgICAgICAgICJFdHQgc2tyaXZhcmZlbCBpbnRy5GZmYWRlLiIKIFBEMzJfTk9fREVGQVVMVF9QUklOVEVSICAgICAgICAgICAgICAgIkRldCBmaW5ucyBpbmdlbiBzdGFuZGFyZHNrcml2YXJlLiIKIFBEMzJfQ0FOVF9GSU5EX1BSSU5URVIgICAgICAgICAgICAgICAgIkthbiBpbnRlIGhpdHRhIHNrcml2YXJlLiIKIFBEMzJfT1VUX09GX01FTU9SWSAgICAgICAgICAgICAgICAgICAgIlNsdXQgcOUgbWlubmUuIgogUEQzMl9HRU5FUklDX0VSUk9SICAgICAgICAgICAgICAgICAgICAiRXR0IGZlbCB1cHBzdG9nLiIKIFBEMzJfRFJJVkVSX1VOS05PV04gICAgICAgICAgICAgICAgICAgIk9r5G5kIHNrcml2YXJkcml2cnV0aW4uIgoKIFBEMzJfREVGQVVMVF9QUklOVEVSICAgICAgICAgICAgICAgICAgIlN0YW5kYXJkc2tyaXZhcmU7ICIKIFBEMzJfTlJfT0ZfRE9DVU1FTlRTX0lOX1FVRVVFICAgICAgICAgIkRldCDkciAlZCBkb2t1bWVudCBpIGv2biIKIFBEMzJfTUFSR0lOU19JTl9JTkNIRVMgICAgICAgICAgICAgICAgIk1hcmdpbmFsZXIgW2luY2hlc10iCiBQRDMyX01BUkdJTlNfSU5fTUlMSU1FVEVSUyAgICAgICAgICAgICJNYXJnaW5hbGVyIFttaWxsaW1ldGVyXSIKIFBEMzJfTUlMSU1FVEVSUyAgICAgICAgICAgICAgICAgICAgICAgIm1pbGxpbWV0ZXIiCgogUEQzMl9QUklOVEVSX1NUQVRVU19SRUFEWSAgICAgICAgICAgICAiUmVkbyIKIFBEMzJfUFJJTlRFUl9TVEFUVVNfUEFVU0VEICAgICAgICAgICAgIlN0YW5uYWQ7ICIKIFBEMzJfUFJJTlRFUl9TVEFUVVNfRVJST1IgICAgICAgICAgICAgIkZlbDsgIgogUEQzMl9QUklOVEVSX1NUQVRVU19QRU5ESU5HX0RFTEVUSU9OICAiUGVuZGxhbmRlIGJvcnR0YWduaW5nOyAiCiBQRDMyX1BSSU5URVJfU1RBVFVTX1BBUEVSX0pBTSAgICAgICAgICJQYXBwZXJza3LlbmdlbDsgIgogUEQzMl9QUklOVEVSX1NUQVRVU19QQVBFUl9PVVQgICAgICAgICAiU2x1dCBw5SBwYXBwZXI7ICIKIFBEMzJfUFJJTlRFUl9TVEFUVVNfTUFOVUFMX0ZFRUQgICAgICAgIkZ5bGwgcOUgcGFwcGVyIG1hbnVlbGxldDsgIgogUEQzMl9QUklOVEVSX1NUQVRVU19QQVBFUl9QUk9CTEVNICAgICAiUGFwcGVyc3Byb2JsZW07ICIKIFBEMzJfUFJJTlRFUl9TVEFUVVNfT0ZGTElORSAgICAgICAgICAgIlNrcml2ZXJhcmUg5G4gYXZzdORuZ2Q7ICIKIFBEMzJfUFJJTlRFUl9TVEFUVVNfSU9fQUNUSVZFICAgICAgICAgIkkvTyBBa3RpdjsgIgogUEQzMl9QUklOVEVSX1NUQVRVU19CVVNZICAgICAgICAgICAgICAiVXBwdGFnZW47ICIKIFBEMzJfUFJJTlRFUl9TVEFUVVNfUFJJTlRJTkcgICAgICAgICAgIlNrcml2ZXIgdXQ7ICIKIFBEMzJfUFJJTlRFUl9TVEFUVVNfT1VUUFVUX0JJTl9GVUxMICAgIlV0bWF0bmluZ3NmYWNrZXQg5HIgZnVsbHQ7ICIKIFBEMzJfUFJJTlRFUl9TVEFUVVNfTk9UX0FWQUlMQUJMRSAgICAgIkludGUgdGlsbGfkbmdsaWc7ICIKIFBEMzJfUFJJTlRFUl9TVEFUVVNfV0FJVElORyAgICAgICAgICAgIlbkbnRhcjsgIgogUEQzMl9QUklOVEVSX1NUQVRVU19QUk9DRVNTSU5HICAgICAgICAiUHJvY2VzZXJhcjsgIgogUEQzMl9QUklOVEVSX1NUQVRVU19JTklUSUFMSVpJTkcgICAgICAiSW5pdGlhbGlzZXJhcjsgIgogUEQzMl9QUklOVEVSX1NUQVRVU19XQVJNSU5HX1VQICAgICAgICAiVuRybWVyIHVwcDsgIgogUEQzMl9QUklOVEVSX1NUQVRVU19UT05FUl9MT1cgICAgICAgICAiVG9uZXIgc25hcnQgc2x1dDsgIgogUEQzMl9QUklOVEVSX1NUQVRVU19OT19UT05FUiAgICAgICAgICAiSW5nYSB0b25lcjsgIgogUEQzMl9QUklOVEVSX1NUQVRVU19QQUdFX1BVTlQgICAgICAgICAiU2lkb3B1bnQ7ICIKIFBEMzJfUFJJTlRFUl9TVEFUVVNfVVNFUl9JTlRFUlZFTlRJT04gIkF2YnJ1dGVuIGF2IGFuduRuZGFyZW47ICIKIFBEMzJfUFJJTlRFUl9TVEFUVVNfT1VUX09GX01FTU9SWSAgICAgIlNsdXQgcOUgbWlubmU7ICIKIFBEMzJfUFJJTlRFUl9TVEFUVVNfRE9PUl9PUEVOICAgICAgICAgIlNrcml2YXJk9nJyZW4g5HIg9nBwZW47ICIKIFBEMzJfUFJJTlRFUl9TVEFUVVNfU0VSVkVSX1VOS05PV04gICAgIlNrcml2YXJzZXJ2ZXIgb2vkbmQ7ICIKIFBEMzJfUFJJTlRFUl9TVEFUVVNfUE9XRVJfU0FWRSAgICAgICAgIkZlbHPka2VydCBs5GdlOyAiCn0K