LyoKICogQ29weXJpZ2h0IDE5OTYgRHVuY2FuIEMgVGhvbXNvbgogKiBDb3B5cmlnaHQgMTAwNiBBbnRvbmlvIENvZGF6emkKICoKICogVGhpcyBsaWJyYXJ5IGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vcgogKiBtb2RpZnkgaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgTGVzc2VyIEdlbmVyYWwgUHVibGljCiAqIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5IHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlcgogKiB2ZXJzaW9uIDIuMSBvZiB0aGUgTGljZW5zZSwgb3IgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KICoKICogVGhpcyBsaWJyYXJ5IGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCiAqIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCiAqIE1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4gIFNlZSB0aGUgR05VCiAqIExlc3NlciBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMuCiAqCiAqIFlvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBMZXNzZXIgR2VuZXJhbCBQdWJsaWMKICogTGljZW5zZSBhbG9uZyB3aXRoIHRoaXMgbGlicmFyeTsgaWYgbm90LCB3cml0ZSB0byB0aGUgRnJlZSBTb2Z0d2FyZQogKiBGb3VuZGF0aW9uLCBJbmMuLCA1MSBGcmFua2xpbiBTdCwgRmlmdGggRmxvb3IsIEJvc3RvbiwgTUEgMDIxMTAtMTMwMSwgVVNBCiAqLwoKLyoKICogV0FSTklORzogRE8gTk9UIENIQU5HRSBUSEUgU0laRSBPRiBUSEUgU1RBTkRBUkQgRElBTE9HIFRFTVBMQVRFUy4KICovCgpMQU5HVUFHRSBMQU5HX0VTUEVSQU5UTywgU1VCTEFOR19ERUZBVUxUCgpPUEVOX0ZJTEUgRElBTE9HIExPQURPTkNBTEwgTU9WRUFCTEUgRElTQ0FSREFCTEUgMzYsIDI0LCAyNzUsIDEzNApTVFlMRSBEU19NT0RBTEZSQU1FIHwgV1NfUE9QVVAgfCBXU19DQVBUSU9OIHwgV1NfU1lTTUVOVQpDQVBUSU9OICJNYWxmZXJtdSIKRk9OVCA4LCAiTVMgU2hlbGwgRGxnIgp7CiBMVEVYVCAiRG9zaWVyJm5vbW86IiwgMTA5MCwgNiwgNiwgNzYsIDkKIEVESVRURVhUIDExNTIsIDYsIDE2LCA5MCwgMTIsIEVTX0FVVE9IU0NST0xMIHwgRVNfT0VNQ09OVkVSVCB8IFdTX0JPUkRFUiB8IFdTX1RBQlNUT1AKIExJU1RCT1ggMTEyMCwgNiwgMzIsIDkwLCA2OCwgTEJTX1NUQU5EQVJEIHwgTEJTX09XTkVSRFJBV0ZJWEVEIHwgTEJTX0hBU1NUUklOR1MgfCBMQlNfRElTQUJMRU5PU0NST0xMIHwgV1NfVEFCU1RPUAogTFRFWFQgIiZWb2pvOiIsIC0xLCAxMTAsIDYsIDkyLCA5CiBMVEVYVCAiIiwgMTA4OCwgMTEwLCAxOCwgOTIsIDksIFNTX05PUFJFRklYIHwgV1NfR1JPVVAKIExJU1RCT1ggMTEyMSwgMTEwLCAzMiwgOTIsIDY4LCBMQlNfU1RBTkRBUkQgfCBMQlNfT1dORVJEUkFXRklYRUQgfCBMQlNfSEFTU1RSSU5HUyB8IExCU19ESVNBQkxFTk9TQ1JPTEwgfCBXU19UQUJTVE9QCiBMVEVYVCAiRG9zaWVyJnNwZWNvOiIsIDEwODksIDYsIDEwNCwgOTAsIDkKIENPTUJPQk9YIDExMzYsIDYsIDExNCwgOTAsIDM2LCBDQlNfRFJPUERPV05MSVNUIHwgQ0JTX0FVVE9IU0NST0xMIHwgV1NfQk9SREVSIHwgV1NfVlNDUk9MTCB8IFdTX1RBQlNUT1AKIExURVhUICImRHJhanZvOiIsIDEwOTEsIDExMCwgMTA0LCA5MiwgOQogQ09NQk9CT1ggMTEzNywgMTEwLCAxMTQsIDkyLCA2OCwgQ0JTX0RST1BET1dOTElTVCB8IENCU19PV05FUkRSQVdGSVhFRCB8IENCU19BVVRPSFNDUk9MTCB8IENCU19TT1JUIHwgQ0JTX0hBU1NUUklOR1MgfCBXU19CT1JERVIgfCBXU19WU0NST0xMIHwgV1NfVEFCU1RPUAogREVGUFVTSEJVVFRPTiAiTWFsZmVybXUiLCBJRE9LLCAyMDgsIDYsIDU2LCAxNCwgQlNfREVGUFVTSEJVVFRPTiB8IFdTX0dST1VQIHwgV1NfVEFCU1RPUAogUFVTSEJVVFRPTiAiTnVsaWdpIiwgSURDQU5DRUwsIDIwOCwgMjQsIDU2LCAxNCwgV1NfR1JPVVAgfCBXU19UQUJTVE9QCiBQVVNIQlVUVE9OICImSGVscG8iLCAxMDM4LCAyMDgsIDQ2LCA1NiwgMTQsIFdTX0dST1VQIHwgV1NfVEFCU1RPUAogQ0hFQ0tCT1ggIk51ciAmbGVnZWJsYSIsIDEwNDAsIDIwOCwgNjgsIDUwLCAxMiwgQlNfQVVUT0NIRUNLQk9YIHwgV1NfR1JPVVAgfCBXU19UQUJTVE9QCn0KCgpTQVZFX0ZJTEUgRElBTE9HIExPQURPTkNBTEwgTU9WRUFCTEUgRElTQ0FSREFCTEUgMzYsIDI0LCAyNzUsIDEzNApTVFlMRSBEU19NT0RBTEZSQU1FIHwgV1NfUE9QVVAgfCBXU19DQVBUSU9OIHwgV1NfU1lTTUVOVQpDQVBUSU9OICJLb25zZXJ2dSBraWVsLi4uIgpGT05UIDgsICJNUyBTaGVsbCBEbGciCnsKIExURVhUICJEb3NpZXImbm9tbzoiLCAxMDkwLCA2LCA2LCA3NiwgOQogRURJVFRFWFQgMTE1MiwgNiwgMTYsIDkwLCAxMiwgRVNfQVVUT0hTQ1JPTEwgfCBFU19PRU1DT05WRVJUIHwgV1NfQk9SREVSIHwgV1NfVEFCU1RPUAogTElTVEJPWCAxMTIwLCA2LCAzMiwgOTAsIDY4LCBMQlNfU1RBTkRBUkQgfCBMQlNfT1dORVJEUkFXRklYRUQgfCBMQlNfSEFTU1RSSU5HUyB8IExCU19ESVNBQkxFTk9TQ1JPTEwgfCBXU19UQUJTVE9QCiBMVEVYVCAiJlZvam86IiwgLTEsIDExMCwgNiwgOTIsIDkKIExURVhUICIiLCAxMDg4LCAxMTAsIDE4LCA5MiwgOSwgU1NfTk9QUkVGSVggfCBXU19HUk9VUAogTElTVEJPWCAxMTIxLCAxMTAsIDMyLCA5MiwgNjgsIExCU19TVEFOREFSRCB8IExCU19PV05FUkRSQVdGSVhFRCB8IExCU19IQVNTVFJJTkdTIHwgTEJTX0RJU0FCTEVOT1NDUk9MTCB8IFdTX1RBQlNUT1AKIExURVhUICJEb3NpZXImc3BlY286IiwgMTA4OSwgNiwgMTA0LCA5MCwgOQogQ09NQk9CT1ggMTEzNiwgNiwgMTE0LCA5MCwgMzYsIENCU19EUk9QRE9XTkxJU1QgfCBDQlNfQVVUT0hTQ1JPTEwgfCBXU19CT1JERVIgfCBXU19WU0NST0xMIHwgV1NfVEFCU1RPUAogTFRFWFQgIiZEcmFqdm86IiwgMTA5MSwgMTEwLCAxMDQsIDkyLCA5CiBDT01CT0JPWCAxMTM3LCAxMTAsIDExNCwgOTIsIDY4LCBDQlNfRFJPUERPV05MSVNUIHwgQ0JTX09XTkVSRFJBV0ZJWEVEIHwgQ0JTX0FVVE9IU0NST0xMIHwgQ0JTX1NPUlQgfCBDQlNfSEFTU1RSSU5HUyB8IFdTX0JPUkRFUiB8IFdTX1ZTQ1JPTEwgfCBXU19UQUJTVE9QCiBERUZQVVNIQlVUVE9OICJLb25zZXJ2dSIsIElET0ssIDIwOCwgNiwgNTYsIDE0LCBCU19ERUZQVVNIQlVUVE9OIHwgV1NfR1JPVVAgfCBXU19UQUJTVE9QCiBQVVNIQlVUVE9OICJOdWxpZ2kiLCBJRENBTkNFTCwgMjA4LCAyNCwgNTYsIDE0LCBXU19HUk9VUCB8IFdTX1RBQlNUT1AKIFBVU0hCVVRUT04gIiZIZWxwbyIsIDEwMzgsIDIwOCwgNDYsIDU2LCAxNCwgV1NfR1JPVVAgfCBXU19UQUJTVE9QCiBDSEVDS0JPWCAiTnVyICZsZWdlYmxhIiwgMTA0MCwgMjA4LCA2OCwgNTAsIDEyLCBCU19BVVRPQ0hFQ0tCT1ggfCBXU19HUk9VUCB8IFdTX1RBQlNUT1AKfQoKClBSSU5UIERJQUxPRyBMT0FET05DQUxMIE1PVkVBQkxFIERJU0NBUkRBQkxFIDM2LCAyNCwgMjY0LCAxMzQKU1RZTEUgRFNfTU9EQUxGUkFNRSB8IFdTX1BPUFVQIHwgV1NfQ0FQVElPTiB8IFdTX1NZU01FTlUKQ0FQVElPTiAiUHJlc3UiCkZPTlQgOCwgIk1TIFNoZWxsIERsZyIKewogTFRFWFQgIlByaW50aWxvOiIsIDEwODgsIDYsIDYsIDQwLCA5CiBMVEVYVCAiIiwgMTA4OSwgNjAsIDYsIDE1MCwgOQogR1JPVVBCT1ggIkV0ZW5kafhvbiIsIDEwNzIsIDYsIDMwLCAxNjAsIDY1LCBCU19HUk9VUEJPWAogUkFESU9CVVRUT04gIuYmaXVqbiIsIDEwNTYsIDE2LCA0NSwgNjAsIDEyCiBSQURJT0JVVFRPTiAiJmVsZWt0b24iLCAxMDU3LCAxNiwgNjAsIDYwLCAxMgogUkFESU9CVVRUT04gIiZwYfhvam4iLCAxMDU4LCAxNiwgNzUsIDYwLCAxMgogREVGUFVTSEJVVFRPTiAiUHJlc3UiLCBJRE9LLCAyMDYsIDYsIDU2LCAxNCwgQlNfREVGUFVTSEJVVFRPTiB8IFdTX0dST1VQIHwgV1NfVEFCU1RPUAogUFVTSEJVVFRPTiAiTnVsaWdpIiwgSURDQU5DRUwsIDIwNiwgMjQsIDU2LCAxNCwgV1NfR1JPVVAgfCBXU19UQUJTVE9QCiBQVVNIQlVUVE9OICImQXJhbvh1IiwgMTAyNCwgMjA2LCA0NiwgNTYsIDE0LCBXU19HUk9VUCB8IFdTX1RBQlNUT1AKIExURVhUICJkZToiLCAxMDkwLCA2MCwgODAsIDMwLCA5CiBMVEVYVCAi+GlzOiIsIDEwOTEsIDEyMCwgODAsIDMwLCA5CiBMVEVYVCAiJkt2YWxpdG86IiwgMTA5MiwgNiwgMTAwLCA3NiwgOQogQ09NQk9CT1ggMTEzNiwgODAsIDEwMCwgOTIsIDY4LCBDQlNfRFJPUERPV05MSVNUIHwgQ0JTX09XTkVSRFJBV0ZJWEVEIHwgQ0JTX0FVVE9IU0NST0xMIHwgQ0JTX1NPUlQgfCBDQlNfSEFTU1RSSU5HUyB8IFdTX0JPUkRFUiB8IFdTX1ZTQ1JPTEwgfCBXU19UQUJTVE9QCiBDSEVDS0JPWCAiUHJlc3UgJmRvc2llcmVuIiwgMTA0MCwgMjAsIDEwMCwgNTAsIDEyLCBCU19BVVRPQ0hFQ0tCT1ggfCBXU19HUk9VUCB8IFdTX1RBQlNUT1AKIENIRUNLQk9YICJNYWxsYXL4dGlwZSIsIDEwNDEsIDE2MCwgMTAwLCA1MCwgMTIsIEJTX0FVVE9DSEVDS0JPWCB8IFdTX0dST1VQIHwgV1NfVEFCU1RPUAp9CgoKUFJJTlRfU0VUVVAgRElBTE9HIExPQURPTkNBTEwgTU9WRUFCTEUgRElTQ0FSREFCTEUgMzYsIDI0LCAyNjQsIDEzNApTVFlMRSBEU19NT0RBTEZSQU1FIHwgV1NfUE9QVVAgfCBXU19DQVBUSU9OIHwgV1NfU1lTTUVOVQpDQVBUSU9OICJQcmVzYWRhaiBBZ29yZG9qIgpGT05UIDgsICJNUyBTaGVsbCBEbGciCnsKIEdST1VQQk9YICJQcmludGlsbyIsIDEwNzIsIDYsIDEwLCAxODAsIDY1LCBCU19HUk9VUEJPWAogUkFESU9CVVRUT04gIiZJbXBsaWNpdGEgUHJlc2lsbyIsIDEwNTYsIDE2LCAyMCwgODAsIDEyCiBMVEVYVCAiW25vbmVdIiwgMTA4OCwgMzUsIDM1LCAxMjAsIDkKIFJBRElPQlVUVE9OICImU3BlY2lmYSBQcmludGlsbyIsIDEwNTcsIDE2LCA1MCwgODAsIDEyCiBDT01CT0JPWCAxMTM2LCAzNSwgNjUsIDE0OSwgNjgsIENCU19EUk9QRE9XTkxJU1QgfCBDQlNfT1dORVJEUkFXRklYRUQgfCBDQlNfQVVUT0hTQ1JPTEwgfCBDQlNfU09SVCB8IENCU19IQVNTVFJJTkdTIHwgV1NfQk9SREVSIHwgV1NfVlNDUk9MTCB8IFdTX1RBQlNUT1AKIERFRlBVU0hCVVRUT04gIkJvbmUiLCBJRE9LLCAyMDYsIDYsIDU2LCAxNCwgQlNfREVGUFVTSEJVVFRPTiB8IFdTX0dST1VQIHwgV1NfVEFCU1RPUAogUFVTSEJVVFRPTiAiTnVsaWdpIiwgSURDQU5DRUwsIDIwNiwgMjQsIDU2LCAxNCwgV1NfR1JPVVAgfCBXU19UQUJTVE9QCiBQVVNIQlVUVE9OICImQWdvcmRvIiwgMTAyNCwgMjA2LCA0NiwgNTYsIDE0LCBXU19HUk9VUCB8IFdTX1RBQlNUT1AKIEdST1VQQk9YICJGb3JtYXRvIiwgMTA3MywgNiwgODUsIDEwMCwgNTAsIEJTX0dST1VQQk9YCiBSQURJT0JVVFRPTiAiJlZlcnRpa2FsYSIsIDEwNTgsIDUwLCAxMDAsIDQwLCAxMgogUkFESU9CVVRUT04gIiZIb3Jpem9udGFsYSIsIDEwNTksIDUwLCAxMTUsIDQwLCAxMgogSUNPTiAiTEFORFNDQVAiLCAxMDk3LCAxMCwgOTUsIDMyLCAzMgogSUNPTiAiUE9SVFJBSVQiLCAxMDk4LCAxMCwgOTUsIDMyLCAzMgogR1JPVVBCT1ggIlBhcGVybyIsIDEwNzQsIDEyMCwgODUsIDE4MCwgNTAsIEJTX0dST1VQQk9YCiBMVEVYVCAiJkRpbWVuc2lvIiwgMTA4OSwgMTMwLCA5NSwgMzAsIDkKIExURVhUICImRm9udG8iLCAxMDkwLCAxMzAsIDExMCwgMzAsIDkKIENPTUJPQk9YIDExMzcsIDE1NSwgOTUsIDkyLCA2OCwgQ0JTX0RST1BET1dOTElTVCB8IENCU19PV05FUkRSQVdGSVhFRCB8IENCU19BVVRPSFNDUk9MTCB8IENCU19TT1JUIHwgQ0JTX0hBU1NUUklOR1MgfCBXU19CT1JERVIgfCBXU19WU0NST0xMIHwgV1NfVEFCU1RPUAogQ09NQk9CT1ggMTEzOCwgMTU1LCAxMTAsIDkyLCA2OCwgQ0JTX0RST1BET1dOTElTVCB8IENCU19PV05FUkRSQVdGSVhFRCB8IENCU19BVVRPSFNDUk9MTCB8IENCU19TT1JUIHwgQ0JTX0hBU1NUUklOR1MgfCBXU19CT1JERVIgfCBXU19WU0NST0xMIHwgV1NfVEFCU1RPUAp9CgoKQ0hPT1NFX0ZPTlQgRElBTE9HIExPQURPTkNBTEwgTU9WRUFCTEUgRElTQ0FSREFCTEUgMzYsIDI0LCAyNjQsIDE0NwpTVFlMRSBEU19NT0RBTEZSQU1FIHwgV1NfUE9QVVAgfCBXU19DQVBUSU9OIHwgV1NfU1lTTUVOVQpDQVBUSU9OICJUaXBhcm8iCkZPTlQgOCwgIk1TIFNoZWxsIERsZyIKewpMVEVYVCAgICAgICAgICAgIiZUaXBhcm86IixzdGMxICw2LDMsNDAsOQpDT01CT0JPWCAgICAgICAgY21iMSwgNiwxMyw5NCw1NCwgIENCU19PV05FUkRSQVdGSVhFRCB8IENCU19IQVNTVFJJTkdTIHwgQ0JTX0RJU0FCTEVOT1NDUk9MTCB8CkNCU19BVVRPSFNDUk9MTCB8IENCU19TT1JUIHwgV1NfVlNDUk9MTCB8IFdTX1RBQlNUT1AgfCBDQlNfU0lNUExFCkxURVhUICAgICAgICAgICAiVGlwYXJhIFN0JmlsbzoiLHN0YzIgLDEwOCwzLDQ0LDkKQ09NQk9CT1ggICAgICAgIGNtYjIsMTA4LDEzLDY0LDU0LCBDQlNfT1dORVJEUkFXRklYRUQgfCBDQlNfSEFTU1RSSU5HUyB8IENCU19ESVNBQkxFTk9TQ1JPTEwgfApXU19WU0NST0xMIHwgV1NfVEFCU1RPUCB8IENCU19TSU1QTEUKTFRFWFQgICAgICAgICAgICImRGltZW5zaW86IixzdGMzLDE3NywzLDMzLDkKQ09NQk9CT1ggICAgICAgIGNtYjMsMTc5LDEzLDMyLDU0LCBDQlNfT1dORVJEUkFXRklYRUQgfCBDQlNfSEFTU1RSSU5HUyB8IENCU19ESVNBQkxFTk9TQ1JPTEwgfApXU19WU0NST0xMIHwgV1NfVEFCU1RPUCB8IENCU19TSU1QTEUgfCBDQlNfU09SVApERUZQVVNIQlVUVE9OICAgIkJvbmUiLElET0ssMjE4LDYsNDAsMTQsIFdTX0dST1VQIHwgV1NfVEFCU1RPUCB8IEJTX0RFRlBVU0hCVVRUT04KUFVTSEJVVFRPTiAgICAgICJSZXppZ25pIixJRENBTkNFTCwyMTgsMjMsNDAsMTQsV1NfR1JPVVAgfCBXU19UQUJTVE9QClBVU0hCVVRUT04gICAgICAiJkFwbGlraSIsIHBzaDMsMjE4LDQwLDQwLDE0LFdTX0dST1VQIHwgV1NfVEFCU1RPUApQVVNIQlVUVE9OICAgICAgIiZIZWxwbyIgLCBwc2hIZWxwLDIxOCw1Nyw0MCwxNCxXU19HUk9VUCB8IFdTX1RBQlNUT1AKR1JPVVBCT1ggICAgICAgICJFZmljb2oiLGdycDEsNiw3Miw4NCwzNCxXU19HUk9VUApDSEVDS0JPWAkgICAgIlN0cmUma28iLCBjaHgxLCAxMCw4Miw1MCwxMCwgQlNfQVVUT0NIRUNLQk9YIHwgV1NfVEFCU1RPUApDSEVDS0JPWCAJICAgICJTJnVic3RyZWtvIiwgY2h4MiwgMTAsOTQsNTAsMTAsIEJTX0FVVE9DSEVDS0JPWApMVEVYVCAgICAgICAgICAgIiZLb2xvcm86Iiwgc3RjNCAsNiwxMTAsMzAsOQpDT01CT0JPWCAgICAgICAgY21iNCw2LDEyMCw4NCwxMDAsQ0JTX0RST1BET1dOTElTVCB8IENCU19PV05FUkRSQVdGSVhFRCB8IENCU19IQVNTVFJJTkdTIHwKQ0JTX0FVVE9IU0NST0xMIHwgIFdTX0JPUkRFUiB8IFdTX1ZTQ1JPTEwgfCBXU19UQUJTVE9QCkdST1VQQk9YICAgICAgICAiRWt6ZW1wbG8iLGdycDIsOTgsNzIsMTIwLDM2LFdTX0dST1VQCkNURVhUICAgICAgICAgICAiQWFCYll5WnoiLHN0YzUsMTAzLDgwLDEwOSwyNCxTU19OT1BSRUZJWCB8IE5PVCBXU19WSVNJQkxFCkxURVhUICAgICAgICAgICAiU2NyaSZwdDoiLHN0YzcgLDk4LDExNCw0MCw5CkNPTUJPQk9YICAgICAgICBjbWI1LDk4LDEyNCwxMjAsOTAsQ0JTX0RST1BET1dOTElTVCB8IENCU19IQVNTVFJJTkdTIHwKQ0JTX0FVVE9IU0NST0xMIHwgICBXU19WU0NST0xMIHwgV1NfVEFCU1RPUAp9CgpDSE9PU0VfQ09MT1IgRElBTE9HIExPQURPTkNBTEwgTU9WRUFCTEUgRElTQ0FSREFCTEUgMzYsIDI0LCAzMDAsIDE4NQpTVFlMRSBEU19NT0RBTEZSQU1FIHwgV1NfUE9QVVAgfCBXU19DQVBUSU9OIHwgV1NfU1lTTUVOVQpDQVBUSU9OICJLb2xvcm8iCkZPTlQgOCwgIk1TIFNoZWxsIERsZyIKewpMVEVYVCAiJk5vcm1hbGEga29sb3Jhcm86IiwgMTA4OCwgNiwgNiwgNDAsIDkKTFRFWFQgIiZQZXJzb25hIGtvbG9yYXJvOiIsIDEwODksIDYsIDEyNiwgNDAsIDkKTFRFWFQgIlNvbCZpZGtvbG9ybyIsIDEwOTAsIDEwMCwgMTQ2LCA0MCwgOQpMVEVYVCAgICImUnX4byIsIDcyNiAvKjEwOTQqLywyNDksMTI2LDI0LDEwCkVESVRURVhUIDcwNiwgMjc1LDEyNCwyMSwxMiwgV1NfQk9SREVSIHwgV1NfR1JPVVAgfCBXU19UQUJTVE9QCkxURVhUICAgIiZWZXJkbyIsNzI3LyoxMDk1Ki8sMjQ5LDE0MCwyNCwxMApFRElUVEVYVCA3MDcsIDI3NSwxMzgsMjEsMTIsIFdTX0JPUkRFUiB8IFdTX0dST1VQIHwgV1NfVEFCU1RPUApMVEVYVCAgICImQmx1byIsNzI4IC8qMTA5NiovLDI0OSwxNTQsMjQsMTAKRURJVFRFWFQgNzA4LCAyNzUsMTUyLDIxLDEyLCBXU19CT1JERVIgfCBXU19HUk9VUCB8IFdTX1RBQlNUT1AKTFRFWFQgICImRmFyYm8iICw3MjMgLyoxMDkxKi8sMjAyLDEyNiwyMiwxMApFRElUVEVYVCA3MDMsIDIyNiwxMjQsMjEsMTIsIFdTX0JPUkRFUiB8IFdTX0dST1VQIHwgV1NfVEFCU1RPUApMVEVYVCAgIiZTYXR1cm8iICw3MjQgLyoxMDkyKi8sMjAyLDE0MCwyMiwxMApFRElUVEVYVCA3MDQsIDIyNiwxMzgsMjEsMTIsIFdTX0JPUkRFUiB8IFdTX0dST1VQIHwgV1NfVEFCU1RPUApMVEVYVCAgIiZIZWxvIiAsNzI1IC8qMTA5MyovLDIwMiwxNTQsMjIsMTAKRURJVFRFWFQgNzA1LCAyMjYsMTUyLDIxLDEyLCBXU19CT1JERVIgfCBXU19HUk9VUCB8IFdTX1RBQlNUT1AKQ09OVFJPTCAiIiAsNzIwLCJTVEFUSUMiLFNTX1NJTVBMRXxXU19UQUJTVE9QfFdTX0dST1VQLDQsMTQsMTQwLDg2CkNPTlRST0wgIiIgLDcyMSwiU1RBVElDIixTU19TSU1QTEV8V1NfVEFCU1RPUHxXU19HUk9VUCw0LDExNiwxNDAsMjgKQ09OVFJPTCAiIiAsNzEwLCJTVEFUSUMiLFdTX0JPUkRFUnxTU19TSU1QTEV8V1NfVEFCU1RPUHxXU19HUk9VUCwgMTUyLDQsMTE4LDExNgpDT05UUk9MICIiICw3MDIsIlNUQVRJQyIsU1NfU0lNUExFfFdTX1RBQlNUT1B8V1NfR1JPVVAsIDI3OCw0LDgsMTE2CkNPTlRST0wgIiIgLDcwOSwiU1RBVElDIixTU19TSU1QTEV8V1NfVEFCU1RPUHxXU19HUk9VUCwgMTUyLDEyNCw0MCwyNgpERUZQVVNIQlVUVE9OICJCb25lIiwgIDEsICA0LCAxNjYsIDQ0LCAxNCwgQlNfREVGUFVTSEJVVFRPTiB8IFdTX0dST1VQIHwgV1NfVEFCU1RPUApQVVNIQlVUVE9OICJSZXppZ25pIiwgMiwgNTIsIDE2NiwgNDQsIDE0LCBXU19HUk9VUCB8IFdTX1RBQlNUT1AKUFVTSEJVVFRPTiAiSGVscG8iLCBwc2hIZWxwLDEwMCwxNjYsIDQ0LCAxNApQVVNIQlVUVE9OICImQWxkb251IGFsIEtvbG9yYXJvIiwgICAgNzEyLyoxMDI0Ki8sIDE1MiwgMTY2LCAxNDIsIDE0LCBXU19HUk9VUCB8IFdTX1RBQlNUT1AKUFVTSEJVVFRPTiAiJkZvcnYmaf51IEtvbG9yYXJvbiA+PiIsIDcxOS8qMTAyNSovLCAgIDQsIDE1MCwgMTQyLCAxNCwgV1NfR1JPVVAgfCBXU19UQUJTVE9QClBVU0hCVVRUT04gICImaSIsNzEzLDMwMCwyMDAsNCwxNCAgIC8qIGp1c3QgYSBkdW1teTogICdpJyBpcyAgbGlrZSAgJmkgIGluICJzb2wmaWQiICAqLwp9CgoKRklORERMR09SRCBESUFMT0cgTE9BRE9OQ0FMTCBNT1ZFQUJMRSBESVNDQVJEQUJMRSAzNiwgMjQsIDIzNiwgNjIKU1RZTEUgRFNfTU9EQUxGUkFNRSB8IFdTX1BPUFVQIHwgV1NfQ0FQVElPTiB8IFdTX1NZU01FTlUKQ0FQVElPTiAiU2Vy5nUiCkZPTlQgOCwgIk1TIFNoZWxsIERsZyIKewogTFRFWFQgIiZTZXLmdToiLCAtMSwgNCwgOCwgNDIsIDgKIEVESVRURVhUIDExNTIsIDQ3LCA3LCAxMjgsIDEyLCBFU19BVVRPSFNDUk9MTCB8IFdTX0JPUkRFUiB8IFdTX0dST1VQIHwgV1NfVEFCU1RPUAogQ0hFQ0tCT1ggIk51ciB0dXRhbiAmdm9ydG9uIiwgMTA0MCwgNCwgMjYsIDEwMCwgMTIsIEJTX0FVVE9DSEVDS0JPWCB8IFdTX0dST1VQIHwgV1NfVEFCU1RPUAogQ0hFQ0tCT1ggIkF0ZW50dSAmVXNrbGVjb24iLCAxMDQxLCA0LCA0MiwgNjQsIDEyLCBCU19BVVRPQ0hFQ0tCT1ggfCBXU19UQUJTVE9QCiBHUk9VUEJPWCAiRGlyZWt0byIsIDEwNzIsIDEwNywgMjYsIDY4LCAyOAogQ09OVFJPTCAiJlN1cHJlIiwgMTA1NiwgIkJVVFRPTiIsIEJTX0FVVE9SQURJT0JVVFRPTiB8IFdTX0NISUxEIHwgV1NfVklTSUJMRSB8IFdTX0dST1VQIHwgV1NfVEFCU1RPUCwgMTA4LCAzOCwgMzAsIDEyCiBDT05UUk9MICImU3ViZSIsIDEwNTcsICJCVVRUT04iLCBCU19BVVRPUkFESU9CVVRUT04gfCBXU19DSElMRCB8IFdTX1ZJU0lCTEUgfCBXU19UQUJTVE9QLCAxNDQsIDM4LCAyOCwgMTIKIERFRlBVU0hCVVRUT04gIiZQbHVzZXLmdSIsIElET0ssIDE4MiwgNSwgNTAsIDE0LCBXU19HUk9VUCB8IFdTX1RBQlNUT1AKIFBVU0hCVVRUT04gIk51bGlnaSIsIElEQ0FOQ0VMLCAxODIsIDIzLCA1MCwgMTQsIFdTX0dST1VQIHwgV1NfVEFCU1RPUAogUFVTSEJVVFRPTiAiJkhlbHBvIiwgMTAzOCwgMTgyLCA0NSwgNTAsIDE0LCBXU19HUk9VUCB8IFdTX1RBQlNUT1AKfQoKClJFUExBQ0VETEdPUkQgRElBTE9HIExPQURPTkNBTEwgTU9WRUFCTEUgRElTQ0FSREFCTEUgMzYsIDI0LCAyMzAsIDk0ClNUWUxFIERTX01PREFMRlJBTUUgfCBXU19QT1BVUCB8IFdTX0NBUFRJT04gfCBXU19TWVNNRU5VCkNBUFRJT04gIkFuc3RhdGH9aWd1IgpGT05UIDgsICJNUyBTaGVsbCBEbGciCnsKIExURVhUICJBbnN0YXRh/WlndToiLCAtMSwgNCwgOSwgNDgsIDgKIEVESVRURVhUIDExNTIsIDU0LCA3LCAxMTQsIDEyLCBFU19BVVRPSFNDUk9MTCB8IFdTX0JPUkRFUiB8IFdTX0dST1VQIHwgV1NfVEFCU1RPUAogTFRFWFQgIiZwZXI6IiwgLTEsIDQsIDI2LCA0OCwgOAogRURJVFRFWFQgMTE1MywgNTQsIDI0LCAxMTQsIDEyLCBFU19BVVRPSFNDUk9MTCB8IFdTX0JPUkRFUiB8IFdTX0dST1VQIHwgV1NfVEFCU1RPUAogQ0hFQ0tCT1ggIk51ciB0dXRhbiAmdm9ydG9uIiwgMTA0MCwgNSwgNDYsIDEwNCwgMTIsIEJTX0FVVE9DSEVDS0JPWCB8IFdTX0dST1VQIHwgV1NfVEFCU1RPUAogQ0hFQ0tCT1ggIkF0ZW50dSAmVXNrbGVjb24iLCAxMDQxLCA1LCA2MiwgNTksIDEyLCBCU19BVVRPQ0hFQ0tCT1ggfCBXU19UQUJTVE9QCiBERUZQVVNIQlVUVE9OICJQbHUmc2Vy5nUiLCBJRE9LLCAxNzQsIDQsIDUwLCAxNCwgQlNfREVGUFVTSEJVVFRPTiB8IFdTX0dST1VQIHwgV1NfVEFCU1RPUAogUFVTSEJVVFRPTiAiJkFuc3RhdGH9aWd1IiwgMTAyNCwgMTc0LCAyMSwgNTAsIDE0LCBXU19HUk9VUCB8IFdTX1RBQlNUT1AKIFBVU0hCVVRUT04gIkFuc3RhdGH9aWd1IOYmaXVqbiIsIDEwMjUsIDE3NCwgMzgsIDUwLCAxNCwgV1NfR1JPVVAgfCBXU19UQUJTVE9QCiBQVVNIQlVUVE9OICJOdWxpZ2kiLCBJRENBTkNFTCwgMTc0LCA1NSwgNTAsIDE0LCBXU19HUk9VUCB8IFdTX1RBQlNUT1AKIFBVU0hCVVRUT04gIiZIZWxwbyIsIDEwMzgsIDE3NCwgNzUsIDUwLCAxNCwgV1NfR1JPVVAgfCBXU19UQUJTVE9QCn0KCgpQUklOVDMyIERJQUxPRyBMT0FET05DQUxMIE1PVkVBQkxFIERJU0NBUkRBQkxFICAzMiwgMzIsIDI4OCwgMTg2ClNUWUxFIERTX01PREFMRlJBTUUgfCBXU19QT1BVUCB8IFdTX1ZJU0lCTEUgfCBXU19DQVBUSU9OIHwgV1NfU1lTTUVOVSB8CkRTX0NPTlRFWFRIRUxQIHwgRFNfM0RMT09LCkNBUFRJT04gIlByZXN1IgpGT05UIDgsICJNUyBTaGVsbCBEbGciCnsKREVGUFVTSEJVVFRPTiAgICJCb25lIiwgICAgIElET0ssICAgICAxODAsMTY0LCA0OCwxNCwgV1NfR1JPVVAgfCBCU19ERUZQVVNIQlVUVE9OClBVU0hCVVRUT04gICAgICAiUmV6aWduaSIsIElEQ0FOQ0VMLCAyMzIsMTY0LCA0OCwxNCwgV1NfR1JPVVAKUFVTSEJVVFRPTiAgICAgICImSGVscG8iLCAgcHNoSGVscCwgIDUwLCAxNjEsIDQ4LDE0LCBXU19HUk9VUAoKR1JPVVBCT1ggICAgICAgICJQcmludGlsbyIsICAgICAgICBncnA0LCAgIDgsICA0LCAyNzIsODQsIFdTX0dST1VQCkNPTlRST0wgICAgICAgICAiUHJlenUga2llbCAmZG9zaWVybyIsIGNoeDEsICJCdXR0b24iLEJTX0FVVE9DSEVDS0JPWCB8IFdTX0dST1VQIHwgV1NfVEFCU1RPUCwyMTIsNzAsNjQsMTIKUFVTSEJVVFRPTiAgICAgICImRWNvaiIsICAgIHBzaDIsIDIxMiwgMTcsICA2MCwxNCwgV1NfR1JPVVAKTFRFWFQgICAgICAgICAgICImTm9tbzoiLCAgICAgICAgIHN0YzYsICAxNiwgMjAsICAzNiw4CkNPTUJPQk9YICAgICAgICAgICAgICAgICAgICAgICAgICBjbWI0LCAgNTIsIDE4LCAxNTIsMTUyLENCU19EUk9QRE9XTkxJU1QgfCBDQlNfU09SVCB8IFdTX1ZTQ1JPTEwgfCBXU19HUk9VUCB8IFdTX1RBQlNUT1AKTFRFWFQgICAgICAgICAgICJTdGF0bzoiLCAgICAgICAgc3RjOCwgIDE2LCAzNiwgIDM2LDEwLCBTU19OT1BSRUZJWApMVEVYVCAgICAgICAgICAgIkR1bW15IFN0YXRlIiwgICAgc3RjMTIsIDUyLCAzNiwgMjI0LDEwLCBTU19OT1BSRUZJWCB8IFNTX0xFRlROT1dPUkRXUkFQCkxURVhUICAgICAgICAgICAiU3BlY286IiwgICAgICAgICAgc3RjNywgIDE2LCA0OCwgIDM2LDEwLCBTU19OT1BSRUZJWApMVEVYVCAgICAgICAgICAgIkR1bW15IFR5cGUiLCAgICAgc3RjMTEsIDUyLCA0OCwgMjI0LDEwLCBTU19OT1BSRUZJWCB8IFNTX0xFRlROT1dPUkRXUkFQCkxURVhUICAgICAgICAgICAiS2llOiIsICAgICAgICAgc3RjMTAsIDE2LCA2MCwgIDM2LDEwLCBTU19OT1BSRUZJWApMVEVYVCAgICAgICAgICAgIkR1bW15IExvY2F0aW9uIiwgc3RjMTQsIDUyLCA2MCwgMjI0LDEwLCBTU19OT1BSRUZJWCB8IFNTX0xFRlROT1dPUkRXUkFQCkxURVhUICAgICAgICAgICAiS29tZW50bzoiLCAgICAgICBzdGM5LCAgMTYsIDcyLCAgMzYsMTAsIFNTX05PUFJFRklYCkxURVhUICAgICAgICAgICAiRHVtbXkgUmVtYXJrIiwgICBzdGMxMywgNTIsIDcyLCAxNTIsMTAsIFNTX05PUFJFRklYIHwgU1NfTEVGVE5PV09SRFdSQVAKCkdST1VQQk9YICAgICAgICAiRWt6ZW1wbGVyb2oiLCAgICAgICAgIGdycDIsIDE2MCwgOTIsIDEyMCw2NCwgV1NfR1JPVVAKTFRFWFQgICAgICAgICAgICJOb21icm8gZGEgJmVremVtcGxlcm9qOiIsc3RjNSwxNjgsMTA4LDY4LDgKSUNPTiAgICAgICAgICAgICIiLCAgICAgICAgICAgICAgIGljbzMsIDE2MiwxMjQsICA3NiwyNCwgV1NfR1JPVVAgfCBTU19DRU5URVJJTUFHRQpDT05UUk9MICAgICAgICAgIkxh/SZrYWplcmUiLCAgICAgICBjaHgyLCJCdXR0b24iLEJTX0FVVE9DSEVDS0JPWCB8IFdTX0dST1VQIHwgV1NfVEFCU1RPUCwyNDAsMTMwLDM2LDEyCkVESVRURVhUICAgICAgICAgICAgICAgICAgICAgICAgICBlZHQzLCAyNDAsMTA2LCAgMzIsMTIsIFdTX0dST1VQIHwgRVNfTlVNQkVSCgpHUk9VUEJPWCAgICAgICAgIkV0ZW5kafhvbiIsICAgIGdycDEsICAgOCw5MiwgIDE0NCw2NCwgV1NfR1JPVVAKQ09OVFJPTCAgICAgICAgICLmJml1am4iLCAgICAgICAgICAgcmFkMSwiQnV0dG9uIixCU19BVVRPUkFESU9CVVRUT04gfCBXU19HUk9VUCB8IFdTX1RBQlNUT1AsMTYsMTA2LDY0LDEyCkNPTlRST0wgICAgICAgICAiJnBh+G9qbiIsICAgICAgICAgcmFkMywiQnV0dG9uIixCU19BVVRPUkFESU9CVVRUT04sMTYsMTIyLDM2LDEyCkNPTlRST0wgICAgICAgICAiJmVsZWt0b24iLCAgICAgcmFkMiwiQnV0dG9uIixCU19BVVRPUkFESU9CVVRUT04sMTYsMTM4LDY0LDEyCkVESVRURVhUICAgICAgICAgICAgICAgICAgICAgICAgICBlZHQxLCAgNzQsMTIyLCAgMjYsMTIsIFdTX0dST1VQIHwgRVNfTlVNQkVSCkVESVRURVhUICAgICAgICAgICAgICAgICAgICAgICAgICBlZHQyLCAxMTgsMTIyLCAgMjYsMTIsIFdTX0dST1VQIHwgRVNfTlVNQkVSClJURVhUICAgICAgICAgICAiZGU6IiwgICAgICAgICBzdGMyLCAgNTIsMTI0LCAgMjAsOApSVEVYVCAgICAgICAgICAgIvhpczoiLCAgICAgICAgICAgc3RjMywgMTAwLDEyNCwgIDE2LDgKfQoKUFJJTlQzMl9TRVRVUCBESUFMT0cgTE9BRE9OQ0FMTCBNT1ZFQUJMRSBESVNDQVJEQUJMRSAgMzIsIDMyLCAyODgsIDE3OApTVFlMRSBEU19NT0RBTEZSQU1FIHwgV1NfUE9QVVAgfCBXU19WSVNJQkxFIHwgV1NfQ0FQVElPTiB8IFdTX1NZU01FTlUgfApEU19DT05URVhUSEVMUCB8IERTXzNETE9PSwpDQVBUSU9OICJQcmVzYWRhaiBBZ29yZG9qIgpGT05UIDgsICJNUyBTaGVsbCBEbGciCkJFR0lOCkRFRlBVU0hCVVRUT04gICAiQm9uZSIsSURPSywxODAsMTU2LDQ4LDE0LFdTX0dST1VQClBVU0hCVVRUT04gICAgICAiUmV6aWduaSIsSURDQU5DRUwsMjMyLDE1Niw0OCwxNAovKiAgICBQVVNIQlVUVE9OICAgICAgIk5ldHdvcmsuLi4iLCBwc2g1LCAyODQsMTU2LDQ4LDE0ICovCgpHUk9VUEJPWCAgICAgICAgIlByaW50aWxvIiwgICAgICAgIGdycDQsICAgOCwgIDQsIDI3Miw4NCwgV1NfR1JPVVAKUFVTSEJVVFRPTiAgICAgICImRWNvaiIsICAgIHBzaDIsIDIxMiwgMTcsICA2MCwxNCwgV1NfR1JPVVAKTFRFWFQgICAgICAgICAgICImTm9tbzoiLCAgICAgICAgIHN0YzYsICAxNiwgMjAsICAzNiw4CkNPTUJPQk9YICAgICAgICAgICAgICAgICAgICAgICAgICBjbWIxLCAgNTIsIDE4LCAxNTIsMTUyLENCU19EUk9QRE9XTkxJU1QgfCBDQlNfU09SVCB8IFdTX1ZTQ1JPTEwgfCBXU19HUk9VUCB8IFdTX1RBQlNUT1AKTFRFWFQgICAgICAgICAgICJTdGF0bzoiLCAgICAgICAgc3RjOCwgIDE2LCAzNiwgIDM2LDEwLCBTU19OT1BSRUZJWApMVEVYVCAgICAgICAgICAgIkR1bW15IFN0YXRlIiwgICAgc3RjMTIsIDUyLCAzNiwgMjI0LDEwLCBTU19OT1BSRUZJWCB8IFNTX0xFRlROT1dPUkRXUkFQCkxURVhUICAgICAgICAgICAiU3BlY286IiwgICAgICAgICAgc3RjNywgIDE2LCA0OCwgIDM2LDEwLCBTU19OT1BSRUZJWApMVEVYVCAgICAgICAgICAgIkR1bW15IFR5cGUiLCAgICAgc3RjMTEsIDUyLCA0OCwgMjI0LDEwLCBTU19OT1BSRUZJWCB8IFNTX0xFRlROT1dPUkRXUkFQCkxURVhUICAgICAgICAgICAiS2llOiIsICAgICAgICAgc3RjMTAsIDE2LCA2MCwgIDM2LDEwLCBTU19OT1BSRUZJWApMVEVYVCAgICAgICAgICAgIkR1bW15IExvY2F0aW9uIiwgc3RjMTQsIDUyLCA2MCwgMjI0LDEwLCBTU19OT1BSRUZJWCB8IFNTX0xFRlROT1dPUkRXUkFQCkxURVhUICAgICAgICAgICAiS29tZW50bzoiLCAgICAgICBzdGM5LCAgMTYsIDcyLCAgMzYsMTAsIFNTX05PUFJFRklYCkxURVhUICAgICAgICAgICAiRHVtbXkgUmVtYXJrIiwgICBzdGMxMywgNTIsIDcyLCAyMjQsMTAsIFNTX05PUFJFRklYIHwgU1NfTEVGVE5PV09SRFdSQVAKCkdST1VQQk9YICAgICAgICAiUGFwZXJvIiwgICAgICAgICAgZ3JwMiwgICA4LCA5MiwgMTY0LDU2LCBXU19HUk9VUApMVEVYVCAgICAgICAgICAgIiZEaW1lbnNpbzoiLCAgICAgICAgIHN0YzIsICAxNiwxMDgsICAzNiwgOApDT01CT0JPWCAgICAgICAgICAgICAgICAgICAgICAgICAgY21iMiwgIDUyLDEwNiwgMTEyLDExMixDQlNfRFJPUERPV05MSVNUIHwgQ0JTX1NPUlQgfCBXU19WU0NST0xMIHwgV1NfR1JPVVAgfCBXU19UQUJTVE9QCkxURVhUICAgICAgICAgICAiJkZvbnRvOiIsICAgICAgIHN0YzMsICAxNiwxMjgsICAzNiwgOApDT01CT0JPWCAgICAgICAgICAgICAgICAgICAgICAgICAgY21iMywgIDUyLDEyNiwgMTEyLDExMixDQlNfRFJPUERPV05MSVNUIHwgQ0JTX1NPUlQgfCBXU19WU0NST0xMIHwgV1NfR1JPVVAgfCBXU19UQUJTVE9QCgpHUk9VUEJPWCAgICAgICAgIkZvcm1hdG8iLCAgICBncnAxLCAxODAsIDkyLCAxMDAsNTYsIFdTX0dST1VQCklDT04gICAgICAgICAgICAiIiwgICAgICAgICAgICAgICBpY28xLCAxOTUsMTEyLCAgMTgsMjAsIFdTX0dST1VQCkNPTlRST0wgICAgICAgICAiJlZlcnRpa2FsYSIsICAgICAgcmFkMSwiQnV0dG9uIixCU19BVVRPUkFESU9CVVRUT04gfCBXU19HUk9VUCB8V1NfVEFCU1RPUCwyMjQsMTA2LDUyLDEyCkNPTlRST0wgICAgICAgICAiJkhvcml6b250YWxhIiwgICAgIHJhZDIsIkJ1dHRvbiIsQlNfQVVUT1JBRElPQlVUVE9OLDIyNCwxMjYsNTIsMTIKRU5ECgpQQUdFU0VUVVBETEdPUkQgRElBTE9HIExPQURPTkNBTEwgTU9WRUFCTEUgRElTQ0FSREFCTEUgMzIsIDMyLCAyNDAsIDI0MApTVFlMRSBEU19NT0RBTEZSQU1FIHwgV1NfUE9QVVAgfCBXU19WSVNJQkxFIHwgV1NfQ0FQVElPTiB8IFdTX1NZU01FTlUKQ0FQVElPTiAiSW1wb3p1IFBh+G9uIgpGT05UIDgsICJNUyBTaGVsbCBEbGciCkJFR0lOCkNPTlRST0wgIiIsIHJjdDEsICJTdGF0aWMiLCBTU19XSElURVJFQ1QsIDgwLCA4LCA4MCwgODAKQ09OVFJPTCAiIiwgcmN0MiwgIlN0YXRpYyIsIFNTX0dSQVlSRUNULCAxNjAsIDEyLCA0LCA4MApDT05UUk9MICIiLCByY3QzLCAiU3RhdGljIiwgU1NfR1JBWVJFQ1QsICA4NCwgODgsIDgwLCA0CkdST1VQQk9YICJQYXBlcm8iLCBncnAyLCA4LCA5NiwgMjI0LCA1NiwgQlNfR1JPVVBCT1gKTFRFWFQgIiZEaW1lbnNpbzoiLCBzdGMyLCAxNiwgMTEyLCAzNiwgOApDT01CT0JPWCBjbWIyLCA2NCwgMTEwLCAxNjAsIDE2MCwgQ0JTX1NJTVBMRXxDQlNfRFJPUERPV058Q0JTX1NPUlR8V1NfR1JPVVB8V1NfVEFCU1RPUHxXU19WU0NST0xMCkxURVhUICJQJmxldG86Iiwgc3RjMywgMTYsIDEzMiwgMzYsIDgKQ09NQk9CT1ggY21iMywgNjQsIDEzMCwgMTYwLCAxNjAsIENCU19TSU1QTEV8Q0JTX0RST1BET1dOfENCU19TT1JUfFdTX0dST1VQfFdTX1RBQlNUT1B8V1NfVlNDUk9MTApHUk9VUEJPWCAiRm9ybWF0byIsIGdycDEsIDgsIDE1NiwgNjQsIDU2LCBCU19HUk9VUEJPWApBVVRPUkFESU9CVVRUT04gIiZWZXJ0aWthbGEiLCByYWQxLCAxNiwgMTcwLCA1MiwgMTIsIEJTX0FVVE9SQURJT0JVVFRPTgpBVVRPUkFESU9CVVRUT04gIiZIb3Jpem9udGFsYSIsIHJhZDIsIDE2LCAxOTAsIDUyLCAxMiwgQlNfQVVUT1JBRElPQlVUVE9OCkdST1VQQk9YICJNYXL4ZW5vaiIsIGdycDQsIDgwLCAxNTYsIDE1MiwgNTYsIEJTX0dST1VQQk9YCkxURVhUICImRGVrc3RyYToiLCBzdGMxNSwgODgsIDE3MiwgMjEsIDgKRURJVFRFWFQgZWR0NCwgMTExLCAxNzAsIDM5LCAxMiwgV1NfVEFCU1RPUHxXU19HUk9VUHxXU19CT1JERVJ8RVNfTlVNQkVSCkxURVhUICImTWFsZGVrc3RyYToiLCBzdGMxNiwgMTU5LCAxNzIsIDI3LCA4CkVESVRURVhUIGVkdDYsIDE4NywgMTcwLCAzOSwgMTIsIFdTX1RBQlNUT1B8V1NfR1JPVVB8V1NfQk9SREVSfEVTX05VTUJFUgpMVEVYVCAiJlN1cHJlOiIsIHN0YzE3LCA4OCwgMTkyLCAyMSwgOApFRElUVEVYVCBlZHQ1LCAxMTEsIDE5MCwgMzksIDEyLCBXU19UQUJTVE9QfFdTX0dST1VQfFdTX0JPUkRFUnxFU19OVU1CRVIKTFRFWFQgIlN1JmJlOiIsIHN0YzE4LCAxNTksIDE5MiwgMjMsIDgKRURJVFRFWFQgZWR0NywgMTg3LCAxOTAsIDM5LCAxMiwgV1NfVEFCU1RPUHxXU19HUk9VUHxXU19CT1JERVJ8RVNfTlVNQkVSCkRFRlBVU0hCVVRUT04gIkJvbmUiLCBJRE9LLCA3MSwgMjIwLCA1MCwgMTQsIEJTX1BVU0hCVVRUT04KUFVTSEJVVFRPTiAiUmV6aWduaSIsIElEQ0FOQ0VMLCAxMjYsIDIyMCwgNTAsIDE0ClBVU0hCVVRUT04gIiZQcmludGlsby4uIiwgcHNoMywgMTg0LCAyMjAsIDQ4LCAxNApFTkQKCk5FV0ZJTEVPUEVOT1JEIERJQUxPRyBMT0FET05DQUxMIE1PVkVBQkxFIERJU0NBUkRBQkxFIDAsIDAsIDI4MCwgMTY0ClNUWUxFIERTX01PREFMRlJBTUUgfCBEU19DT05URVhUSEVMUCB8IFdTX1ZJU0lCTEUgfCBXU19QT1BVUCB8IFdTX0NBUFRJT04gfCBXU19TWVNNRU5VIHwgV1NfQ0xJUENISUxEUkVOCkNBUFRJT04gIk1hbGZlcm11IgpGT05UIDgsICJNUyBTaGVsbCBEbGciCnsKTFRFWFQJIlNlcuZ1ICZlbjoiLElEQ19MT09LSU5TVEFUSUMsNCw2LDQzLDgsIFNTX05PVElGWQpDT01CT0JPWAlJRENfTE9PS0lOLDQ5LDMsMTMyLDEwMCxDQlNfRFJPUERPV05MSVNUIHwgQ0JTX09XTkVSRFJBV0ZJWEVEIHwgQ0JTX0hBU1NUUklOR1MgfCBXU19WU0NST0xMIHwgV1NfVEFCU1RPUAoKTFRFWFQJIiIgLCBJRENfVE9PTEJBUlNUQVRJQywgMTgxLCAyLCAxMDIsIDE3LCBOT1QgV1NfR1JPVVAgfCBOT1QgV1NfVklTSUJMRQpMSVNUQk9YCUlEQ19TSEVMTFNUQVRJQyw0LDIwLDI3Miw4NSwgTEJTX1NPUlQgfCBMQlNfTk9JTlRFR1JBTEhFSUdIVCB8IExCU19NVUxUSUNPTFVNTiB8IFdTX0hTQ1JPTEwgfCBOT1QgV1NfVklTSUJMRQoKTFRFWFQJIkRvc2llciZub21vOiIsSURDX0ZJTEVOQU1FU1RBVElDLDUsMTEyLDQ2LDgsIFNTX05PVElGWQpFRElUVEVYVAlJRENfRklMRU5BTUUsNTQsMTEwLDE1NSwxMixFU19BVVRPSFNDUk9MTAoKTFRFWFQJIkRvc2llciZzcGVjbzoiLElEQ19GSUxFVFlQRVNUQVRJQyw1LDEyOCw0Miw4LCBTU19OT1RJRlkKQ09NQk9CT1gJSURDX0ZJTEVUWVBFLDU0LDEyNiwxNTUsNTMsQ0JTX0RST1BET1dOTElTVCB8IFdTX1ZTQ1JPTEwgfCBXU19UQUJTVE9QCgpDT05UUk9MCSJOdXIgJmxlZ2VibGEiLElEQ19PUEVOUkVBRE9OTFksIkJ1dHRvbiIsQlNfQVVUT0NIRUNLQk9YIHwgV1NfVEFCU1RPUCw1NCwxNDUsMTAwLDEwCgpERUZQVVNIQlVUVE9OCSImTWFsZmVybXUiLAkJIElET0ssMjIyLDExMCw1MCwxNApQVVNIQlVUVE9OCQkiUmV6aWduaSIsCQkgSURDQU5DRUwsMjIyLDEyOCw1MCwxNApQVVNIQlVUVE9OCQkiJkhlbHBvIiwJCSBwc2hIZWxwLDIyMiwxNDUsNTAsMTQKfQoKU1RSSU5HVEFCTEUgRElTQ0FSREFCTEUKewpJRFNfQUJPVVRCT1ggICAgICAgICAgICAiJlByaSAnVGVzdCBGb2xkZXJQaWNrZXInIgpJRFNfRE9DVU1FTlRGT0xERVJTICAgICAiRG9rdW1lbnRkb3NpZXJ1am9qIgpJRFNfUEVSU09OQUwgICAgICAgICAgICAiTWlhaiBEb2t1bWVudG9qIgpJRFNfRkFWT1JJVEVTICAgICAgICAgICAiTWlhaiBGYXZvcml0YWoiCklEU19QQVRIICAgICAgICAgICAgICAgICJTaXN0ZW12b2pvIgpJRFNfREVTS1RPUCAgICAgICAgICAgICAiRGVza3RvcCIKSURTX0ZPTlRTICAgICAgICAgICAgICAgIlRpcGFyb2oiCklEU19NWUNPTVBVVEVSICAgICAgICAgICJNaWEgS29tcHV0ZXJvIgp9CgpTVFJJTkdUQUJMRSBESVNDQVJEQUJMRQp7CklEU19TWVNURU1GT0xERVJTICAgICAgICJTaXN0ZW1kb3NpZXJ1am9qIgpJRFNfTE9DQUxIQVJEUklWRVMgICAgICAiTG9jYWxhaiBEdXJkaXNrb2oiCklEU19GSUxFTk9URk9VTkQgICAgICAgICJEb3NpZXJvIG5lIGVzdGlzIHRyb3ZpdGEiCklEU19WRVJJRllGSUxFICAgICAgICAgICJLb250cm9sdSBsYSD4dXN0ZWNvbiBqZSBoYXZpZ2l0YSBkb3NpZXJub21vLiIKSURTX0NSRUFURUZJTEUgICAgICAgICAgIkRvc2llcm8gZXN0YXMgbmVla3ppc3RhbnRhXG7GdSB2aSB2b2xhcyBrcmVpIGRvc2llcm9uPyIKSURTX09WRVJXUklURUZJTEUgICAgICAgIkRvc2llcm8gZXN0YXMgamFtIGVremlzdGFudGEuXG7GdSB2aSB2b2xhcyBzdXBlcnNrcmliaSD4aW4/IgpJRFNfSU5WQUxJRF9GSUxFTkFNRV9USVRMRSAiTmVrb3Jla3RhKGopIHRpcG8oaikgZW4gdm9qbyIKSURTX0lOVkFMSURfRklMRU5BTUUgICAgIkxhIGRvc2llcm5vbW8gbmUgcG92YXMgZW5oYXZpIGxhIGplbmFqbiB0aXBvam46IFxuIC8gOiA8ID4gfCIKSURTX1BBVEhOT1RFWElTVElORyAgICAgIlZvam8gZXN0YXMgbmVla3ppc3RhbnRhIgpJRFNfRklMRU5PVEVYSVNUSU5HICAgICAiRG9zaWVybyBlc3RhcyBuZWVremlzdGFudGEiCn0KCQpTVFJJTkdUQUJMRSBESVNDQVJEQUJMRQp7CglJRFNfVVBGT0xERVIgICAgICAgICAiU3VyaXJ1IGRhIHVudSBuaXZlbG8iCglJRFNfTkVXRk9MREVSICAgICAgICAiS3JldSBOb3ZhbiBEb3NpZXVqb24iCglJRFNfTElTVFZJRVcgICAgICAgICAiTGlzdG8iCglJRFNfUkVQT1JUVklFVyAgICAgICAiRGV0YWxlIgoJSURTX1RPREVTS1RPUCAgICAgICAgIkZvbGl1IERlc2t0b3AiCn0KCQpTVFJJTkdUQUJMRSBESVNDQVJEQUJMRQp7CglQRDMyX1BSSU5UX1RJVExFICAgICAgICJQcmVzdSIKCQoJUEQzMl9WQUxVRV9VUkVBREFCTEUgICAgICAgICAgICAgICAgICAiTmVsZWdlYmxhIEVudHJ5IgoJUEQzMl9JTlZBTElEX1BBR0VfUkFOR0UgIsZpIHRpdSB2YWxvcm8gbmUgZXN0YXMgZW4gbGEgcGH4by5cblwKCUVuaWd1IHZhbG9yb24gaW50ZXIgJWQga2FqICVkLiIKCVBEMzJfRlJPTV9OT1RfQUJPVkVfVE8gICAgICAgICAgICAgICAgIkxhICdkZTonIHZhbG9ybyBuZSBwb3ZhcyBzdXBlcmkgbGEgXAoJJ/hpczonIHZhbG9yb24uIgoJUEQzMl9NQVJHSU5TX09WRVJMQVAgICAgICAgICAgICAgICAgICAiTWFy+GVub2ogc3VybWV0afhhcyBpbnRlciBzaSBh/SBlc3RhcyBla3N0ZXIgXAoJcGFwZXJmb2xpby5cbkRpZmludSBkZW5vdmUgbGEgbWFy+GVub2puLiIKCVBEMzJfTlJfT0ZfQ09QSUVTX0VNUFRZICAgICAgICAgICAgICAgIkxhIG5vbWJydmFsb3JvIGplICdOb21icm8gZGEgJmVremVtcGxlcm9qJyBcCgluZSBwb3ZhcyBlc3RpIG1hbHBsZW5hLiIKCVBEMzJfVE9PX0xBUkdFX0NPUElFUyAgICAgICAgICAgICAgICAgIkxhIHZpYSBwcmludGlsbyBuZSBwb3ZhcyBwcmVzaSB0aWVsIGdyYW5kYSBub21icm8gZGEgZWt6ZW1wbGVyb2pcbkVuaWd1IHZhbG9yb24gaW50ZXIgMSBrYWogJWQuIgoJUEQzMl9QUklOVF9FUlJPUiAgICAgICAgICAgICAgICAgICAgICAiT2themlzIHByaW50aWxhIGVyb3JvLiIKCVBEMzJfTk9fREVGQVVMVF9QUklOVEVSICAgICAgICAgICAgICAgIk5lIGVzdGFzIGRlZmH9bHRhIHByaW50aWxvLiIKCVBEMzJfQ0FOVF9GSU5EX1BSSU5URVIgICAgICAgICAgICAgICAgIk1pIG5lIHBvdmFzIHRyb3ZpIGxhIHByaW50aWxvbi4iCglQRDMyX09VVF9PRl9NRU1PUlkgICAgICAgICAgICAgICAgICAgICJMYSBtZW1vcm8gZXN0YXMgZWzmZXJwaXRhLiIKCVBEMzJfR0VORVJJQ19FUlJPUiAgICAgICAgICAgICAgICAgICAgIk9rYXppcyBlcm9yby4iCglQRDMyX0RSSVZFUl9VTktOT1dOICAgICAgICAgICAgICAgICAgICJOZWtvbmF0YSBwcmludGlsem9yZ2lsby4iCglQRDMyX05PX0RFVklDRVMgICAgICAgICAgICAgICAgICAgICAgICJBbnRh/SBvbCB2aSBwb3ZvcyBwbGVudW1pIHByaW50aWx0YXNrb2puIFwKCWt2YXph/SBpbXBvemkgcGH4b24gYf0gcHJlc2kgZG9rdW1lbnRvbiwgZXN0YXMgbmVjZXNlIGtlIHZpIGluc3RhbHUgcHJpbnRpbG9uLiBcCglPbmkga29uc2lsYXMgaW5zdGFsaSD4aW4ga2FqIHJlcHJvdmkuIgoJCglQRDMyX0RFRkFVTFRfUFJJTlRFUiAgICAgICAgICAgICAgICAgICJEZWZh/Wx0YSBQcmludGlsbzsgIgoJUEQzMl9OUl9PRl9ET0NVTUVOVFNfSU5fUVVFVUUgICAgICAgICAiJWQgZG9rdW1lbnRvKGopIGVzdGFzIGVuIHByZXN2aWNvIgoJUEQzMl9NQVJHSU5TX0lOX0lOQ0hFUyAgICAgICAgICAgICAgICAiTWFy+GVub2ogW2luY2hlc10iCglQRDMyX01BUkdJTlNfSU5fTUlMSU1FVEVSUyAgICAgICAgICAgICJNYXL4ZW5vaiBbbW1dIgoJUEQzMl9NSUxJTUVURVJTICAgICAgICAgICAgICAgICAgICAgICAibW0iCgkKCVBEMzJfUFJJTlRFUl9TVEFUVVNfUkVBRFkgICAgICAgICAgICAgIlByZXRhIgoJUEQzMl9QUklOVEVSX1NUQVRVU19QQVVTRUQgICAgICAgICAgICAiUGH9c2U7ICIKCVBEMzJfUFJJTlRFUl9TVEFUVVNfRVJST1IgICAgICAgICAgICAgIkVyb3JvOyAiCglQRDMyX1BSSU5URVJfU1RBVFVTX1BFTkRJTkdfREVMRVRJT04gICJOdWxpZ2EgYXRlbmRhZG87ICIKCVBEMzJfUFJJTlRFUl9TVEFUVVNfUEFQRVJfSkFNICAgICAgICAgIkJsb2tpdGEgcGFwZXJvOyAiCglQRDMyX1BSSU5URVJfU1RBVFVTX1BBUEVSX09VVCAgICAgICAgICJFbOZlcnBpdGEgcGFwZXJvOyAiCglQRDMyX1BSSU5URVJfU1RBVFVTX01BTlVBTF9GRUVEICAgICAgICJNYW5lIGVu/m92byBkZSBwYXBlcm87ICIKCVBEMzJfUFJJTlRFUl9TVEFUVVNfUEFQRVJfUFJPQkxFTSAgICAgIlBhcGVyYSBwcm9ibGVtbzsgIgoJUEQzMl9QUklOVEVSX1NUQVRVU19PRkZMSU5FICAgICAgICAgICAiTmVrb25la3RpdGEgcHJpbnRpbG87ICIKCVBEMzJfUFJJTlRFUl9TVEFUVVNfSU9fQUNUSVZFICAgICAgICAgIkkvTyBBa3RpdmE7ICIKCVBEMzJfUFJJTlRFUl9TVEFUVVNfQlVTWSAgICAgICAgICAgICAgIk9rdXBpdGEgcHJpbnRpbG87ICIKCVBEMzJfUFJJTlRFUl9TVEFUVVNfUFJJTlRJTkcgICAgICAgICAgIk51biBwcmVzYXRhOyAiCglQRDMyX1BSSU5URVJfU1RBVFVTX09VVFBVVF9CSU5fRlVMTCAgICJFbGpyZWphIHBsZXRvIGVzdGFzIHBsZW5hOyAiCglQRDMyX1BSSU5URVJfU1RBVFVTX05PVF9BVkFJTEFCTEUgICAgICJOZSBkaXNwb25lYmxhOyAiCglQRDMyX1BSSU5URVJfU1RBVFVTX1dBSVRJTkcgICAgICAgICAgICJBdGVuZGFuZG87ICIKCVBEMzJfUFJJTlRFUl9TVEFUVVNfUFJPQ0VTU0lORyAgICAgICAgIlByb2Nlem87ICIKCVBEMzJfUFJJTlRFUl9TVEFUVVNfSU5JVElBTElaSU5HICAgICAgIlByZXBhcmFkbzsgIgoJUEQzMl9QUklOVEVSX1NUQVRVU19XQVJNSU5HX1VQICAgICAgICAiVmFybWlnbyBkZSBsYSBwcmludGlsbzsgIgoJUEQzMl9QUklOVEVSX1NUQVRVU19UT05FUl9MT1cgICAgICAgICAiS3Nlcm9wcmludGlsYSBuaXZlbG8gZXN0YXMgYmFzYTsgIgoJUEQzMl9QUklOVEVSX1NUQVRVU19OT19UT05FUiAgICAgICAgICAiTmVuaXUga3Nlcm9wcmludGlsbzsgIgoJUEQzMl9QUklOVEVSX1NUQVRVU19QQUdFX1BVTlQgICAgICAgICAiUGH4YSAncHVudCc7ICIKCVBEMzJfUFJJTlRFUl9TVEFUVVNfVVNFUl9JTlRFUlZFTlRJT04gIkludGVycm9tcGl0YSBmYXIgdXphbnRvOyAiCglQRDMyX1BSSU5URVJfU1RBVFVTX09VVF9PRl9NRU1PUlkgICAgICJFbOZlcnBpdGEgbWVtb3JvOyAiCglQRDMyX1BSSU5URVJfU1RBVFVTX0RPT1JfT1BFTiAgICAgICAgICJMYSBwcmludGlsYSBwb3JkbyBlc3RhcyBtYWxmZXJtaXRhOyAiCglQRDMyX1BSSU5URVJfU1RBVFVTX1NFUlZFUl9VTktOT1dOICAgICJOZWtvbmF0YSBwcmVzLXNlcnZhbnRvOyAiCglQRDMyX1BSSU5URVJfU1RBVFVTX1BPV0VSX1NBVkUgICAgICAgICJFbmVyZ2n+cGFyZTsgIgp9CgkKU1RSSU5HVEFCTEUgRElTQ0FSREFCTEUgLyogQ29sb3IgbmFtZXMgKi8KewoJSURTX0NPTE9SX0JMQUNLICAgICAiTmlncm8iCglJRFNfQ09MT1JfTUFST09OICAgICJEdW9ucnX4YnJ1bmEga29sb3JvIgoJSURTX0NPTE9SX0dSRUVOICAgICAiVmVyZG8iCglJRFNfQ09MT1JfT0xJVkUgICAgICJPbGl2dmVyZG8iCglJRFNfQ09MT1JfTkFWWSAgICAgICJVbHRyYW1hcmEgYmx1byIKCUlEU19DT0xPUl9QVVJQTEUgICAgIlB1cnB1cnJ1+G8iCglJRFNfQ09MT1JfVEVBTCAgICAgICJLcmVrYSBrb2xvcm8iCglJRFNfQ09MT1JfR1JBWSAgICAgICJHcml6byIKCUlEU19DT0xPUl9TSUxWRVIgICAgIkFy+GVudG8iCglJRFNfQ09MT1JfUkVEICAgICAgICJSdfhvIgoJSURTX0NPTE9SX0xJTUUgICAgICAiTGltZXRhIGtvbG9ybyIKCUlEU19DT0xPUl9ZRUxMT1cgICAgIkZsYXZvIgoJSURTX0NPTE9SX0JMVUUgICAgICAiQmx1byIKCUlEU19DT0xPUl9GVUNIU0lBICAgIkZ1a3NpYSBrb2xvcm8iCglJRFNfQ09MT1JfQVFVQSAgICAgICJBa3ZvIgoJSURTX0NPTE9SX1dISVRFICAgICAiQmxhbmtvIgp9CgkKU1RSSU5HVEFCTEUgRElTQ0FSREFCTEUKewoJSURTX0ZPTlRfU0laRSAgICJFbGVrdHUgdGlwYXJhbiBncmFuZGVjdmFsb3JvbiBpbnRlciAlZCBrYWogJWQgcHVua3Rvai4iCglJRFNfU0FWRV9CVVRUT04gIktvbiZzZXJ2dSIKCUlEU19TQVZFX0lOICAgICAiS29uc2VydnUgJmVuOiIKCUlEU19TQVZFICAgICAgICAiS29uc2VydnUiCglJRFNfU0FWRV9BUyAgICAgIktvbnNlcnZ1IGtpZWwiCglJRFNfT1BFTl9GSUxFICAgIk1hbGZlcm11IERvc2llcm9uIgp9Cg==