LyoKICogQ29tbW9uIERpYWxvZyBUZXN0IEppZyBFeGVyY2lzZXIKICogR2VybWFuIExhbmd1YWdlIFN1cHBvcnQKICoKICogQ29weXJpZ2h0IChjKSAyMDA0LDIwMDUgSGVubmluZyBHZXJoYXJkdAogKgogKiBUaGlzIGxpYnJhcnkgaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yCiAqIG1vZGlmeSBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBMZXNzZXIgR2VuZXJhbCBQdWJsaWMKICogTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkgdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbjsgZWl0aGVyCiAqIHZlcnNpb24gMi4xIG9mIHRoZSBMaWNlbnNlLCBvciAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgogKgogKiBUaGlzIGxpYnJhcnkgaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKICogYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKICogTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiAgU2VlIHRoZSBHTlUKICogTGVzc2VyIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KICoKICogWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05VIExlc3NlciBHZW5lcmFsIFB1YmxpYwogKiBMaWNlbnNlIGFsb25nIHdpdGggdGhpcyBsaWJyYXJ5OyBpZiBub3QsIHdyaXRlIHRvIHRoZSBGcmVlIFNvZnR3YXJlCiAqIEZvdW5kYXRpb24sIEluYy4sIDU5IFRlbXBsZSBQbGFjZSwgU3VpdGUgMzMwLCBCb3N0b24sIE1BICAwMjExMS0xMzA3ICBVU0EKICovCgpMQU5HVUFHRSBMQU5HX0dFUk1BTiwgU1VCTEFOR19ERUZBVUxUCgpDbWRsZ3RzdE1lbnUgTUVOVQp7CiBQT1BVUCAiJkRhdGVpIgogewogIE1FTlVJVEVNICImQmVlbmRlbiIsIENNX1VfRVhJVAogfQoKIFBPUFVQICImQ29tbWRsZyIKIHsKICBNRU5VSVRFTSAiJtZmZm5lbiIsIENNX1VfT1BFTgogIE1FTlVJVEVNICImU3BlaWNoZXJuIiwgQ01fVV9TQVZFCiAgTUVOVUlURU0gU0VQQVJBVE9SCiAgTUVOVUlURU0gIiZGYXJiZSIsIENNX1VfQ09MT1IKICBNRU5VSVRFTSAiUyZjaHJpZnRhcnQiLCBDTV9VX0ZPTlQKICBNRU5VSVRFTSBTRVBBUkFUT1IKICBNRU5VSVRFTSAiU3VjaGUgJlRleHQiLCBDTV9VX0ZJTkQKICBNRU5VSVRFTSAiJkVyc2V0emUgVGV4dCIsIENNX1VfUkVQTEFDRQogIE1FTlVJVEVNIFNFUEFSQVRPUgogIE1FTlVJVEVNICJEJnJ1Y2tlbiIsIENNX1VfUFJJTlQKICBNRU5VSVRFTSAiU2VpJnRlbmVpbnN0ZWxsdW5nIiwgQ01fVV9QQUdFU0VUVVAKIH0KCiBQT1BVUCAiRiZsYWdzIgogewogIE1FTlVJVEVNICJEYXQmZWkiLCBDTV9GX0ZJTEUKICBNRU5VSVRFTSBTRVBBUkFUT1IKICBNRU5VSVRFTSAiJkZhcmJlIiwgQ01fRl9DT0xPUgogIE1FTlVJVEVNICImU2NocmlmdCIsIENNX0ZfRk9OVAogIE1FTlVJVEVNIFNFUEFSQVRPUgogIE1FTlVJVEVNICJTdWNoZW4gLyAmRXJzZXR6ZW4iLCBDTV9GX0ZJTkRSRVBMQUNFCiAgTUVOVUlURU0gU0VQQVJBVE9SCiAgTUVOVUlURU0gIkQmcnVja2VuIiwgQ01fRl9QUklOVAogIE1FTlVJVEVNICJTZWkmdGVuZWluc3RlbGx1bmciLCBDTV9GX1BBR0VTRVRVUAogfQoKIFBPUFVQICImSGlsZmUiCiB7CiAgTUVOVUlURU0gIiZHZWJyYXVjaCIsIENNX0hfVVNBR0UKICBNRU5VSVRFTSAi3CZiZXIiLCBDTV9IX0FCT1VUCiB9Cgp9CgpDb2xvcl9GbGFnc19EaWFsb2cgRElBTE9HIDExLCAyMCwgMjA3LCAxMDcKU1RZTEUgRFNfTU9EQUxGUkFNRSB8IFdTX1BPUFVQIHwgV1NfVklTSUJMRSB8IFdTX0NBUFRJT04KQ0FQVElPTiAiRmFyYmRpYWxvZyBGbGFncyIKRk9OVCA4LCAiTVMgU2hlbGwgRGxnIgp7CiBERUZQVVNIQlVUVE9OICJPSyIsIElET0ssIDE0OCwgNiwgNTAsIDE0LCBCU19ERUZQVVNIQlVUVE9OIHwgV1NfR1JPVVAgfCBXU19UQUJTVE9QCiBQVVNIQlVUVE9OICJBYmJyZWNoZW4iLCBJRENBTkNFTCwgMTQ4LCAyNCwgNTAsIDE0LCBXU19HUk9VUCB8IFdTX1RBQlNUT1AKIFBVU0hCVVRUT04gIkhpbGZlIiwgQ01fUl9IRUxQLCAxNDgsIDQyLCA1MCwgMTQsIFdTX0dST1VQIHwgV1NfVEFCU1RPUAogQ0hFQ0tCT1ggIkNDX0VOQUJMRUhPT0siLCBJX0NDX0VOQUJMRUhPT0ssIDEyLCAxMiwgMTIyLCAxMCwgQlNfQVVUT0NIRUNLQk9YIHwgV1NfVEFCU1RPUAogQ0hFQ0tCT1ggIkNDX0VOQUJMRVRFTVBMQVRFIiwgSV9DQ19FTkFCTEVURU1QTEFURSwgMTIsIDI0LCAxMjIsIDEwLCBCU19BVVRPQ0hFQ0tCT1ggfCBXU19UQUJTVE9QCiBDSEVDS0JPWCAiQ0NfRU5BQkxFVEVNUExBVEVIQU5ETEUiLCBJX0NDX0VOQUJMRVRFTVBMQVRFSEFORExFLCAxMiwgMzYsIDEyMiwgMTAsIEJTX0FVVE9DSEVDS0JPWCB8IFdTX1RBQlNUT1AKIENIRUNLQk9YICJDQ19GVUxMT1BFTiIsIElfQ0NfRlVMTE9QRU4sIDEyLCA0OCwgMTIyLCAxMCwgQlNfQVVUT0NIRUNLQk9YIHwgV1NfVEFCU1RPUAogQ0hFQ0tCT1ggIkNDX1BSRVZFTlRGVUxMT1BFTiIsIElfQ0NfUFJFVkVOVEZVTExPUEVOLCAxMiwgNjAsIDEyMiwgMTAsIEJTX0FVVE9DSEVDS0JPWCB8IFdTX1RBQlNUT1AKIENIRUNLQk9YICJDQ19SR0JJTklUIiwgSV9DQ19SR0JJTklULCAxMiwgNzIsIDEyMiwgMTAsIEJTX0FVVE9DSEVDS0JPWCB8IFdTX1RBQlNUT1AKIENIRUNLQk9YICJDQ19TSE9XSEVMUCIsIElfQ0NfU0hPV0hFTFAsIDEyLCA4NCwgMTIyLCAxMCwgQlNfQVVUT0NIRUNLQk9YIHwgV1NfVEFCU1RPUAp9CgpGb250X0ZsYWdzX0RpYWxvZyBESUFMT0cgOSwgMjAsIDIwNywgMzEzClNUWUxFIERTX01PREFMRlJBTUUgfCBXU19QT1BVUCB8IFdTX1ZJU0lCTEUgfCBXU19DQVBUSU9OCkNBUFRJT04gIlNjaHJpZnRkaWFsb2cgRmxhZ3MiCkZPTlQgOCwgIk1TIFNoZWxsIERsZyIKewogREVGUFVTSEJVVFRPTiAiT0siLCBJRE9LLCAxNDgsIDYsIDUwLCAxNAogUFVTSEJVVFRPTiAiQWJicmVjaGVuIiwgSURDQU5DRUwsIDE0OCwgMjQsIDUwLCAxNAogUFVTSEJVVFRPTiAiSGlsZmUiLCBDTV9SX0hFTFAsIDE0OCwgNDIsIDUwLCAxNAogQ0hFQ0tCT1ggIkNGX0FQUExZIiwgSV9DRl9BUFBMWSwgMTIsIDEyLCAxMjAsIDEwLCBCU19BVVRPQ0hFQ0tCT1ggIHwgV1NfVEFCU1RPUAogQ0hFQ0tCT1ggIkNGX0FOU0lPTkxZIiwgSV9DRl9BTlNJT05MWSwgMTIsIDI0LCAxMjAsIDEwLCBCU19BVVRPQ0hFQ0tCT1ggIHwgV1NfVEFCU1RPUAogQ0hFQ0tCT1ggIkNGX0JPVEgiLCBJX0NGX0JPVEgsIDEyLCAzNiwgMTIwLCAxMCwgQlNfQVVUT0NIRUNLQk9YICB8IFdTX1RBQlNUT1AKIENIRUNLQk9YICJDRl9UVE9OTFkiLCBJX0NGX1RUT05MWSwgMTIsIDQ4LCAxMjAsIDEwLCBCU19BVVRPQ0hFQ0tCT1ggIHwgV1NfVEFCU1RPUAogQ0hFQ0tCT1ggIkNGX0VGRkVDVFMiLCBJX0NGX0VGRkVDVFMsIDEyLCA2MCwgMTIwLCAxMCwgQlNfQVVUT0NIRUNLQk9YICB8IFdTX1RBQlNUT1AKIENIRUNLQk9YICJDRl9FTkFCTEVIT09LIiwgSV9DRl9FTkFCTEVIT09LLCAxMiwgNzIsIDEyMCwgMTAsIEJTX0FVVE9DSEVDS0JPWCAgfCBXU19UQUJTVE9QCiBDSEVDS0JPWCAiQ0ZfRU5BQkxFVEVNUExBVEUiLCBJX0NGX0VOQUJMRVRFTVBMQVRFLCAxMiwgODQsIDEyMCwgMTAsIEJTX0FVVE9DSEVDS0JPWCAgfCBXU19UQUJTVE9QCiBDSEVDS0JPWCAiQ0ZfRU5BQkxFVEVNUExBVEVIQU5ETEUiLCBJX0NGX0VOQUJMRVRFTVBMQVRFSEFORExFLCAxMiwgOTYsIDEyMCwgMTAsIEJTX0FVVE9DSEVDS0JPWCAgfCBXU19UQUJTVE9QCiBDSEVDS0JPWCAiQ0ZfRklYRURQSVRDSE9OTFkiLCBJX0NGX0ZJWEVEUElUQ0hPTkxZLCAxMiwgMTA4LCAxMjAsIDEwLCBCU19BVVRPQ0hFQ0tCT1ggIHwgV1NfVEFCU1RPUAogQ0hFQ0tCT1ggIkNGX0ZPUkNFRk9OVEVYSVNUIiwgSV9DRl9GT1JDRUZPTlRFWElTVCwgMTIsIDEyMCwgMTIwLCAxMCwgQlNfQVVUT0NIRUNLQk9YICB8IFdTX1RBQlNUT1AKIENIRUNLQk9YICJDRl9JTklUVE9MT0dGT05UU1RSVUNUIiwgSV9DRl9JTklUVE9MT0dGT05UU1RSVUNULCAxMiwgMTMyLCAxMjAsIDEwLCBCU19BVVRPQ0hFQ0tCT1ggIHwgV1NfVEFCU1RPUAogQ0hFQ0tCT1ggIkNGX0xJTUlUU0laRSIsIElfQ0ZfTElNSVRTSVpFLCAxMiwgMTQ0LCAxMjAsIDEwLCBCU19BVVRPQ0hFQ0tCT1ggIHwgV1NfVEFCU1RPUAogQ0hFQ0tCT1ggIkNGX05PRkFDRVNFTCIsIElfQ0ZfTk9GQUNFU0VMLCAxMiwgMTU2LCAxMjAsIDEwLCBCU19BVVRPQ0hFQ0tCT1ggIHwgV1NfVEFCU1RPUAogQ0hFQ0tCT1ggIkNGX05PT0VNRk9OVFMiLCBJX0NGX05PT0VNRk9OVFMsIDEyLCAxNjgsIDEyMCwgMTAsIEJTX0FVVE9DSEVDS0JPWCAgfCBXU19UQUJTVE9QCiBDSEVDS0JPWCAiQ0ZfTk9TSU1VTEFUSU9OUyIsIElfQ0ZfTk9TSU1VTEFUSU9OUywgMTIsIDE4MCwgMTIwLCAxMCwgQlNfQVVUT0NIRUNLQk9YICB8IFdTX1RBQlNUT1AKIENIRUNLQk9YICJDRl9OT1NJWkVTRUwiLCBJX0NGX05PU0laRVNFTCwgMTIsIDE5MiwgMTIwLCAxMCwgQlNfQVVUT0NIRUNLQk9YICB8IFdTX1RBQlNUT1AKIENIRUNLQk9YICJDRl9OT1NUWUxFU0VMIiwgSV9DRl9OT1NUWUxFU0VMLCAxMiwgMjA0LCAxMjAsIDEwLCBCU19BVVRPQ0hFQ0tCT1ggIHwgV1NfVEFCU1RPUAogQ0hFQ0tCT1ggIkNGX05PVkVDVE9SRk9OVFMiLCBJX0NGX05PVkVDVE9SRk9OVFMsIDEyLCAyMTYsIDEyMCwgMTAsIEJTX0FVVE9DSEVDS0JPWCAgfCBXU19UQUJTVE9QCiBDSEVDS0JPWCAiQ0ZfUFJJTlRFUkZPTlRTIiwgSV9DRl9QUklOVEVSRk9OVFMsIDEyLCAyMjgsIDEyMCwgMTAsIEJTX0FVVE9DSEVDS0JPWCAgfCBXU19UQUJTVE9QCiBDSEVDS0JPWCAiQ0ZfU0NBTEFCTEVPTkxZIiwgSV9DRl9TQ0FMQUJMRU9OTFksIDEyLCAyNDAsIDEyMCwgMTAsIEJTX0FVVE9DSEVDS0JPWCAgfCBXU19UQUJTVE9QCiBDSEVDS0JPWCAiQ0ZfU0hPV0hFTFAiLCBJX0NGX1NIT1dIRUxQLCAxMiwgMjY0LCAxMjAsIDEwLCBCU19BVVRPQ0hFQ0tCT1ggIHwgV1NfVEFCU1RPUAogQ0hFQ0tCT1ggIkNGX1NDUkVFTkZPTlRTIiwgSV9DRl9TQ1JFRU5GT05UUywgMTIsIDI1MiwgMTIwLCAxMCwgQlNfQVVUT0NIRUNLQk9YICB8IFdTX1RBQlNUT1AKIENIRUNLQk9YICJDRl9VU0VTVFlMRSIsIElfQ0ZfVVNFU1RZTEUsIDEyLCAyNzYsIDEyMCwgMTAsIEJTX0FVVE9DSEVDS0JPWCAgfCBXU19UQUJTVE9QCiBDSEVDS0JPWCAiQ0ZfV1lTSVdZRyIsIElfQ0ZfV1lTSVdZRywgMTIsIDI4OCwgMTIwLCAxMCwgQlNfQVVUT0NIRUNLQk9YICB8IFdTX1RBQlNUT1AKfQoKRmluZF9GbGFnc19EaWFsb2cgRElBTE9HIDgsIDI0LCAyMDcsIDMwNgpTVFlMRSBEU19NT0RBTEZSQU1FIHwgV1NfUE9QVVAgfCBXU19WSVNJQkxFIHwgV1NfQ0FQVElPTgpDQVBUSU9OICJTdWNoZW4gLyBFcnNldHplbiBEaWFsb2cgRmxhZ3MiCkZPTlQgOCwgIk1TIFNoZWxsIERsZyIKewogREVGUFVTSEJVVFRPTiAiT0siLCBJRE9LLCAxNDgsIDYsIDUwLCAxNAogUFVTSEJVVFRPTiAiQWJicmVjaGVuIiwgSURDQU5DRUwsIDE0OCwgMjQsIDUwLCAxNAogUFVTSEJVVFRPTiAiSGlsZmUiLCBJREhFTFAsIDE0OCwgNDIsIDUwLCAxNAogQ0hFQ0tCT1ggIkZSX0RJQUxPR1RFUk0iLCBJX0ZSX0RJQUxPR1RFUk0sIDI0LCAxMiwgMTIwLCAxMiwgQlNfQVVUT0NIRUNLQk9YIHwgV1NfVEFCU1RPUAogQ0hFQ0tCT1ggIkZSX0RPV04iLCBJX0ZSX0RPV04sIDI0LCAyNCwgMTIwLCAxMiwgQlNfQVVUT0NIRUNLQk9YIHwgV1NfVEFCU1RPUAogQ0hFQ0tCT1ggIkZSX0VOQUJMRUhPT0siLCBJX0ZSX0VOQUJMRUhPT0ssIDI0LCAzNiwgMTIwLCAxMiwgQlNfQVVUT0NIRUNLQk9YIHwgV1NfVEFCU1RPUAogQ0hFQ0tCT1ggIkZSX0VOQUJMRVRFTVBMQVRFIiwgSV9GUl9FTkFCTEVURU1QTEFURSwgMjQsIDQ4LCAxMjAsIDEyLCBCU19BVVRPQ0hFQ0tCT1ggfCBXU19UQUJTVE9QCiBDSEVDS0JPWCAiRlJfRU5BQkxFVEVNUExBVEVIQU5ETEUiLCBJX0ZSX0VOQUJMRVRFTVBMQVRFSEFORExFLCAyNCwgNjAsIDEyMCwgMTIsIEJTX0FVVE9DSEVDS0JPWCB8IFdTX1RBQlNUT1AKIENIRUNLQk9YICJGUl9GSU5ETkVYVCIsIElfRlJfRklORE5FWFQsIDI0LCA3MiwgMTIwLCAxMiwgQlNfQVVUT0NIRUNLQk9YIHwgV1NfVEFCU1RPUAogQ0hFQ0tCT1ggIkZSX0hJREVNQVRDSENBU0UiLCBJX0ZSX0hJREVNQVRDSENBU0UsIDI0LCA4NCwgMTIwLCAxMiwgQlNfQVVUT0NIRUNLQk9YIHwgV1NfVEFCU1RPUAogQ0hFQ0tCT1ggIkZSX0hJREVXSE9MRVdPUkQiLCBJX0ZSX0hJREVXSE9MRVdPUkQsIDI0LCA5NiwgMTIwLCAxMiwgQlNfQVVUT0NIRUNLQk9YIHwgV1NfVEFCU1RPUAogQ0hFQ0tCT1ggIkZSX0hJREVVUERPV04iLCBJX0ZSX0hJREVVUERPV04sIDI0LCAxMDgsIDEyMCwgMTIsIEJTX0FVVE9DSEVDS0JPWCB8IFdTX1RBQlNUT1AKIENIRUNLQk9YICJGUl9NQVRDSENBU0UiLCBJX0ZSX01BVENIQ0FTRSwgMjQsIDEyMCwgMTIwLCAxMiwgQlNfQVVUT0NIRUNLQk9YIHwgV1NfVEFCU1RPUAogQ0hFQ0tCT1ggIkZSX05PTUFUQ0hDQVNFIiwgSV9GUl9OT01BVENIQ0FTRSwgMjQsIDEzMiwgMTIwLCAxMiwgQlNfQVVUT0NIRUNLQk9YIHwgV1NfVEFCU1RPUAogQ0hFQ0tCT1ggIkZSX05PVVBET1dOIiwgSV9GUl9OT1VQRE9XTiwgMjQsIDE0NCwgMTIwLCAxMiwgQlNfQVVUT0NIRUNLQk9YIHwgV1NfVEFCU1RPUAogQ0hFQ0tCT1ggIkZSX05PV0hPTEVXT1JEIiwgSV9GUl9OT1dIT0xFV09SRCwgMjQsIDE1NiwgMTIwLCAxMiwgQlNfQVVUT0NIRUNLQk9YIHwgV1NfVEFCU1RPUAogQ0hFQ0tCT1ggIkZSX1JFUExBQ0UiLCBJX0ZSX1JFUExBQ0UsIDI0LCAxNjgsIDEyMCwgMTIsIEJTX0FVVE9DSEVDS0JPWCB8IFdTX1RBQlNUT1AKIENIRUNLQk9YICJGUl9SRVBMQUNFQUxMIiwgSV9GUl9SRVBMQUNFQUxMLCAyNCwgMTgwLCAxMjAsIDEyLCBCU19BVVRPQ0hFQ0tCT1ggfCBXU19UQUJTVE9QCiBDSEVDS0JPWCAiRlJfU0hPV0hFTFAiLCBJX0ZSX1NIT1dIRUxQLCAyNCwgMTkyLCAxMjAsIDEyLCBCU19BVVRPQ0hFQ0tCT1ggfCBXU19UQUJTVE9QCiBDSEVDS0JPWCAiRlJfV0hPTEVXT1JEIiwgSV9GUl9XSE9MRVdPUkQsIDI0LCAyMDQsIDEyMCwgMTIsIEJTX0FVVE9DSEVDS0JPWCB8IFdTX1RBQlNUT1AKIENPTlRST0wgIiIsIC0xLCAic3RhdGljIiwgU1NfQkxBQ0tSRUNUIHwgV1NfQ0hJTEQgfCBXU19WSVNJQkxFLCAxMiwgMTIsIDExLCAxMwogQ09OVFJPTCAiIiwgLTEsICJzdGF0aWMiLCBTU19CTEFDS1JFQ1QgfCBXU19DSElMRCB8IFdTX1ZJU0lCTEUsIDEyLCA3MiwgMTEsIDEzCiBDT05UUk9MICIiLCAtMSwgInN0YXRpYyIsIFNTX0JMQUNLUkVDVCB8IFdTX0NISUxEIHwgV1NfVklTSUJMRSwgMTIsIDE2OCwgMTEsIDEzCiBDT05UUk9MICIiLCAtMSwgInN0YXRpYyIsIFNTX0JMQUNLUkVDVCB8IFdTX0NISUxEIHwgV1NfVklTSUJMRSwgMTIsIDE4MCwgMTEsIDEzCiBDT05UUk9MICIiLCAtMSwgInN0YXRpYyIsIFNTX0JMQUNLUkVDVCB8IFdTX0NISUxEIHwgV1NfVklTSUJMRSwgMjQsIDIyOCwgMTEsIDEzCiBDT05UUk9MICJNYXJraWVydGUgRmxhZ3Mgc2luZCBkdXJjaCBkYXMgU3lzdGVtIGdlc2V0enQgd3VyZGVuIHVuZCBt/HNzZW4gdm9uIGRlbSBCZW51dHplciBlbnRmZXJudCB3ZXJkZW4iLCAtMSwgInN0YXRpYyIsIFNTX0xFRlQgfCBXU19DSElMRCB8IFdTX1ZJU0lCTEUsIDQ4LCAyMjgsIDk4LCAzNgp9CgpQcmludF9GbGFnc19EaWFsb2cgRElBTE9HIDQsIDE3LCAyMzksIDI4NwpTVFlMRSBEU19NT0RBTEZSQU1FIHwgV1NfUE9QVVAgfCBXU19WSVNJQkxFIHwgV1NfQ0FQVElPTiB8IFdTX1NZU01FTlUKQ0FQVElPTiAiRHJ1Y2tlbiAvIERydWNrZWluc3RlbGx1bmcgRmxhZ3MiCkZPTlQgOCwgIk1TIFNoZWxsIERsZyIKewogREVGUFVTSEJVVFRPTiAiT0siLCBJRE9LLCAxODAsIDYsIDUwLCAxNAogUFVTSEJVVFRPTiAiQWJicmVjaGVuIiwgSURDQU5DRUwsIDE4MCwgMjQsIDUwLCAxNAogUFVTSEJVVFRPTiAiSGlsZmUiLCBDTV9SX0hFTFAsIDE4MCwgNDIsIDUwLCAxNAogQ0hFQ0tCT1ggIlBEX0FMTFBBR0VTIiwgSV9QRF9BTExQQUdFUywgMTIsIDEyLCAxNDQsIDEyLCBCU19BVVRPQ0hFQ0tCT1ggfCBXU19UQUJTVE9QCiBDSEVDS0JPWCAiUERfQ09MTEFURSIsIElfUERfQ09MTEFURSwgMTIsIDI0LCAxNDQsIDEyLCBCU19BVVRPQ0hFQ0tCT1ggfCBXU19UQUJTVE9QCiBDSEVDS0JPWCAiUERfRElTQUJMRVBSSU5UVE9GSUxFIiwgSV9QRF9ESVNBQkxFUFJJTlRUT0ZJTEUsIDEyLCAzNiwgMTQ0LCAxMiwgQlNfQVVUT0NIRUNLQk9YIHwgV1NfVEFCU1RPUAogQ0hFQ0tCT1ggIlBEX0VOQUJMRVBSSU5USE9PSyIsIElfUERfRU5BQkxFUFJJTlRIT09LLCAxMiwgNDgsIDE0NCwgMTIsIEJTX0FVVE9DSEVDS0JPWCB8IFdTX1RBQlNUT1AKIENIRUNLQk9YICJQRF9FTkFCTEVQUklOVFRFTVBMQVRFIiwgSV9QRF9FTkFCTEVQUklOVFRFTVBMQVRFLCAxMiwgNjAsIDE0NCwgMTIsIEJTX0FVVE9DSEVDS0JPWCB8IFdTX1RBQlNUT1AKIENIRUNLQk9YICJQRF9FTkFCTEVQUklOVFRFTVBMQVRFSEFORExFIiwgSV9QRF9FTkFCTEVQUklOVFRFTVBMQVRFSEFORExFLCAxMiwgNzIsIDE0NCwgMTIsIEJTX0FVVE9DSEVDS0JPWCB8IFdTX1RBQlNUT1AKIENIRUNLQk9YICJQRF9FTkFCTEVTRVRVUEhPT0siLCBJX1BEX0VOQUJMRVNFVFVQSE9PSywgMTIsIDg0LCAxNDQsIDEyLCBCU19BVVRPQ0hFQ0tCT1ggfCBXU19UQUJTVE9QCiBDSEVDS0JPWCAiUERfRU5BQkxFU0VUVVBURU1QTEFURSIsIElfUERfRU5BQkxFU0VUVVBURU1QTEFURSwgMTIsIDk2LCAxNDQsIDEyLCBCU19BVVRPQ0hFQ0tCT1ggfCBXU19UQUJTVE9QCiBDSEVDS0JPWCAiUERfRU5BQkxFU0VUVVBURU1QTEFURUhBTkRMRSIsIElfUERfRU5BQkxFU0VUVVBURU1QTEFURUhBTkRMRSwgMTIsIDEwOCwgMTQ0LCAxMiwgQlNfQVVUT0NIRUNLQk9YIHwgV1NfVEFCU1RPUAogQ0hFQ0tCT1ggIlBEX0hJREVQUklOVFRPRklMRSIsIElfUERfSElERVBSSU5UVE9GSUxFLCAxMiwgMTIwLCAxNDQsIDEyLCBCU19BVVRPQ0hFQ0tCT1ggfCBXU19UQUJTVE9QCiBDSEVDS0JPWCAiUERfTk9QQUdFTlVNUyIsIElfUERfTk9QQUdFTlVNUywgMTIsIDEzMiwgMTQ0LCAxMiwgQlNfQVVUT0NIRUNLQk9YIHwgV1NfVEFCU1RPUAogQ0hFQ0tCT1ggIlBEX05PU0VMRUNUSU9OIiwgSV9QRF9OT1NFTEVDVElPTiwgMTIsIDE0NCwgMTQ0LCAxMiwgQlNfQVVUT0NIRUNLQk9YIHwgV1NfVEFCU1RPUAogQ0hFQ0tCT1ggIlBEX05PV0FSTklORyIsIElfUERfTk9XQVJOSU5HLCAxMiwgMTU2LCAxNDQsIDEyLCBCU19BVVRPQ0hFQ0tCT1ggfCBXU19UQUJTVE9QCiBDSEVDS0JPWCAiUERfUEFHRU5VTVMiLCBJX1BEX1BBR0VOVU1TLCAxMiwgMTY4LCAxNDQsIDEyLCBCU19BVVRPQ0hFQ0tCT1ggfCBXU19UQUJTVE9QCiBDSEVDS0JPWCAiUERfUFJJTlRTRVRVUCIsIElfUERfUFJJTlRTRVRVUCwgMTIsIDE4MCwgMTQ0LCAxMiwgQlNfQVVUT0NIRUNLQk9YIHwgV1NfVEFCU1RPUAogQ0hFQ0tCT1ggIlBEX1BSSU5UVE9GSUxFIiwgSV9QRF9QUklOVFRPRklMRSwgMTIsIDE5MiwgMTQ0LCAxMiwgQlNfQVVUT0NIRUNLQk9YIHwgV1NfVEFCU1RPUAogQ0hFQ0tCT1ggIlBEX1JFVFVSTkRDIiwgSV9QRF9SRVRVUk5EQywgMTIsIDIwNCwgMTQ0LCAxMiwgQlNfQVVUT0NIRUNLQk9YIHwgV1NfVEFCU1RPUAogQ0hFQ0tCT1ggIlBEX1JFVFVSTkRFRkFVTFQiLCBJX1BEX1JFVFVSTkRFRkFVTFQsIDEyLCAyMTYsIDE0NCwgMTIsIEJTX0FVVE9DSEVDS0JPWCB8IFdTX1RBQlNUT1AKIENIRUNLQk9YICJQRF9SRVRVUk5JQyIsIElfUERfUkVUVVJOSUMsIDEyLCAyMjgsIDE0NCwgMTIsIEJTX0FVVE9DSEVDS0JPWCB8IFdTX1RBQlNUT1AKIENIRUNLQk9YICJQRF9TRUxFQ1RJT04iLCBJX1BEX1NFTEVDVElPTiwgMTIsIDI0MCwgMTQ0LCAxMiwgQlNfQVVUT0NIRUNLQk9YIHwgV1NfVEFCU1RPUAogQ0hFQ0tCT1ggIlBEX1NIT1dIRUxQIiwgSV9QRF9TSE9XSEVMUCwgMTIsIDI1MiwgMTQ0LCAxMiwgQlNfQVVUT0NIRUNLQk9YIHwgV1NfVEFCU1RPUAogQ0hFQ0tCT1ggIlBEX1VTRURFVk1PREVDT1BJRVMiLCBJX1BEX1VTRURFVk1PREVDT1BJRVMsIDEyLCAyNjQsIDE0NCwgMTIsIEJTX0FVVE9DSEVDS0JPWCB8IFdTX1RBQlNUT1AKfQoKRmlsZV9GbGFnc19EaWFsb2cgRElBTE9HIDYsIDE1LCAyMDcsIDIyNwpTVFlMRSBEU19NT0RBTEZSQU1FIHwgV1NfUE9QVVAgfCBXU19WSVNJQkxFIHwgV1NfQ0FQVElPTiB8IFdTX1NZU01FTlUKQ0FQVElPTiAi1mZmbmUgRGF0ZWkvU2ljaGVyZSBEYXRlaSBGbGFncyIKRk9OVCA4LCAiTVMgU2hlbGwgRGxnIgp7CiBERUZQVVNIQlVUVE9OICJPSyIsIElET0ssIDE0OCwgNiwgNTAsIDE0CiBQVVNIQlVUVE9OICJBYmJyZWNoZW4iLCBJRENBTkNFTCwgMTQ4LCAyNCwgNTAsIDE0CiBQVVNIQlVUVE9OICJIaWxmZSIsIENNX1JfSEVMUCwgMTQ4LCA0MiwgNTAsIDE0CiBDSEVDS0JPWCAiT0ZOX0FMTE9XTVVMVElTRUxFQ1QiLCBJX09GTl9BTExPV01VTFRJU0VMRUNULCAxMiwgMTIsIDEzMiwgMTIsIEJTX0FVVE9DSEVDS0JPWCB8IFdTX1RBQlNUT1AKIENIRUNLQk9YICJPRk5fQ1JFQVRFUFJPTVBUIiwgSV9PRk5fQ1JFQVRFUFJPTVBULCAxMiwgMjQsIDEzMiwgMTIsIEJTX0FVVE9DSEVDS0JPWCB8IFdTX1RBQlNUT1AKIENIRUNLQk9YICJPRk5fRU5BQkxFSE9PSyIsIElfT0ZOX0VOQUJMRUhPT0ssIDEyLCAzNiwgMTMyLCAxMiwgQlNfQVVUT0NIRUNLQk9YIHwgV1NfVEFCU1RPUAogQ0hFQ0tCT1ggIk9GTl9FTkFCTEVURU1QTEFURSIsIElfT0ZOX0VOQUJMRVRFTVBMQVRFLCAxMiwgNDgsIDEzMiwgMTIsIEJTX0FVVE9DSEVDS0JPWCB8IFdTX1RBQlNUT1AKIENIRUNLQk9YICJPRk5fRU5BQkxFVEVNUExBVEVIQU5ETEUiLCBJX09GTl9FTkFCTEVURU1QTEFURUhBTkRMRSwgMTIsIDYwLCAxMzIsIDEyLCBCU19BVVRPQ0hFQ0tCT1ggfCBXU19UQUJTVE9QCiBDSEVDS0JPWCAiT0ZOX0VYVEVOU0lPTkRJRkZFUkVOVCIsIElfT0ZOX0VYVEVOU0lPTkRJRkZFUkVOVCwgMTIsIDcyLCAxMzIsIDEyLCBCU19BVVRPQ0hFQ0tCT1ggfCBXU19UQUJTVE9QCiBDSEVDS0JPWCAiT0ZOX0ZJTEVNVVNURVhJU1QiLCBJX09GTl9GSUxFTVVTVEVYSVNULCAxMiwgODQsIDEzMiwgMTIsIEJTX0FVVE9DSEVDS0JPWCB8IFdTX1RBQlNUT1AKIENIRUNLQk9YICJPRk5fSElERVJFQURPTkxZIiwgSV9PRk5fSElERVJFQURPTkxZLCAxMiwgOTYsIDEzMiwgMTIsIEJTX0FVVE9DSEVDS0JPWCB8IFdTX1RBQlNUT1AKIENIRUNLQk9YICJPRk5fTk9DSEFOR0VESVIiLCBJX09GTl9OT0NIQU5HRURJUiwgMTIsIDEwOCwgMTMyLCAxMiwgQlNfQVVUT0NIRUNLQk9YIHwgV1NfVEFCU1RPUAogQ0hFQ0tCT1ggIk9GTl9OT1JFQURPTkxZUkVUVVJOIiwgSV9PRk5fTk9SRUFET05MWVJFVFVSTiwgMTIsIDEyMCwgMTMyLCAxMiwgQlNfQVVUT0NIRUNLQk9YIHwgV1NfVEFCU1RPUAogQ0hFQ0tCT1ggIk9GTl9OT1RFU1RGSUxFQ1JFQVRFIiwgSV9PRk5fTk9URVNURklMRUNSRUFURSwgMTIsIDEzMiwgMTMyLCAxMiwgQlNfQVVUT0NIRUNLQk9YIHwgV1NfVEFCU1RPUAogQ0hFQ0tCT1ggIk9GTl9OT1ZBTElEQVRFIiwgSV9PRk5fTk9WQUxJREFURSwgMTIsIDE0NCwgMTMyLCAxMiwgQlNfQVVUT0NIRUNLQk9YIHwgV1NfVEFCU1RPUAogQ0hFQ0tCT1ggIk9GTl9PVkVSV1JJVEVQUk9NUFQiLCBJX09GTl9PVkVSV1JJVEVQUk9NUFQsIDEyLCAxNTYsIDEzMiwgMTIsIEJTX0FVVE9DSEVDS0JPWCB8IFdTX1RBQlNUT1AKIENIRUNLQk9YICJPRk5fUEFUSE1VU1RFWElTVCIsIElfT0ZOX1BBVEhNVVNURVhJU1QsIDEyLCAxNjgsIDEzMiwgMTIsIEJTX0FVVE9DSEVDS0JPWCB8IFdTX1RBQlNUT1AKIENIRUNLQk9YICJPRk5fUkVBRE9OTFkiLCBJX09GTl9SRUFET05MWSwgMTIsIDE4MCwgMTMyLCAxMiwgQlNfQVVUT0NIRUNLQk9YIHwgV1NfVEFCU1RPUAogQ0hFQ0tCT1ggIk9GTl9TSEFSRUFXQVJFIiwgSV9PRk5fU0hBUkVBV0FSRSwgMTIsIDE5MiwgMTMyLCAxMiwgQlNfQVVUT0NIRUNLQk9YIHwgV1NfVEFCU1RPUAogQ0hFQ0tCT1ggIk9GTl9TSE9XSEVMUCIsIElfT0ZOX1NIT1dIRUxQLCAxMiwgMjA0LCAxMzIsIDEyLCBCU19BVVRPQ0hFQ0tCT1ggfCBXU19UQUJTVE9QCn0KCkFib3V0RGlhbG9nIERJQUxPRyA2LCAxNSwgMTk0LCAxMTkKU1RZTEUgRFNfTU9EQUxGUkFNRSB8IFdTX1BPUFVQIHwgV1NfVklTSUJMRSB8IFdTX0NBUFRJT04gfCBXU19TWVNNRU5VCkNBUFRJT04gItxiZXIiCkZPTlQgOCwgIk1TIFNoZWxsIERsZyIKewogREVGUFVTSEJVVFRPTiAiT0siLCBJRE9LLCA3MiwgOTYsIDUwLCAxNAogTFRFWFQgIkNvbW1vbiBEaWFsb2cgVGVzdCBKaWcgRXhlcmNpc2VyLCBWZXJzaW9uIDEuMjAiLCAtMSwgMTMsIDM2LCAxNjgsIDEyCiBMVEVYVCAiKGMpIDE5OTktMjAwMCwgRXJpYyBXaWxsaWFtcy4gIFJpZ2h0cyBhcmUgYXMgZ3JhbnRlZCB1bmRlciB0aGUgV0lORSBsaWNlbnNlLiAgRG9uJ3QgaG9hcmQgY29kZS4uLnNoYXJlIGl0ISIsIC0xLCAxOCwgNjAsIDE1NywgMjQKIElDT04gIkFib3V0SWNvbiIsIC0xLCA4NCwgMTIsIDE4LCAyMAp9CgpVc2FnZURpYWxvZyBESUFMT0cgMTgzLCAyMiwgMTkwLCAzMDAKU1RZTEUgRFNfTU9EQUxGUkFNRSB8IFdTX1BPUFVQIHwgV1NfVklTSUJMRSB8IFdTX0NBUFRJT04gfCBXU19TWVNNRU5VCkNBUFRJT04gIkdlYnJhdWNoIgpGT05UIDgsICJNUyBTaGVsbCBEbGciCnsKIERFRlBVU0hCVVRUT04gIk9LIiwgSURPSywgNzAsIDI3NiwgNTAsIDE0CiBMVEVYVCAiQ29tbW9uIERpYWxvZyBUZXN0IEppZyBFeGVyY2lzZXIsIFZlcnNpb24gMS4yMCIsIC0xLCAxMywgNDgsIDE2OCwgMTIKIExURVhUICJEaWVzZXMgVG9vbCB0ZXN0ZXQgQ09NTURMRyBm/HIgV2luZS4iLCAtMSwgMTIsIDcyLCAxNjgsIDEyCiBMVEVYVCAiRGllIEZsYWdzIGv2bm5lbiBpbSBGbGFncyAtIE1lbvwgZ2VmdW5kZW4gd2VyZGVuLiIsIC0xLCAxMiwgOTYsIDE2OCwgMjQKIExURVhUICJGYXJiZGlhbG9nIORuZGVydCBkaWUgSGludGVyZ3J1bmRmYXJiZS4iLCAtMSwgMTIsIDEyMCwgMTY4LCAxMgogTFRFWFQgIlNjaHJpZnRkaWFsb2cg5G5kZXJ0IGFsbGUgU2NocmlmdGVuIHVuZCBkaWUgU2NocmlmdGZhcmJlLCB3ZW5uIENGX0VGRkVDVFMgYXVzZ2V35GhsdCBpc3QuIiwgLTEsIDEyLCAxNDQsIDE2OCwgMjQKIExURVhUICJEaWUgbGlua2UsIG9iZXJlIEVja2Ugd2Vpc3QgYXVmIGRlbiB2b2xsc3TkbmRlbiBWZXJ6ZWljaG5pc25hbWVuIHVuZCBkaWUgQmV6ZWljaG51bmcgZGVzIGxldHp0ZW4gZXJmb2xncmVpY2hlbiDWZmZuZW5zIG9kZXIgU2ljaGVybnMgaGluLiIsIC0xLCAxMiwgMTgwLCAxNjgsIDI0CiBMVEVYVCAiKGMpIDE5OTktMjAwMCwgRXJpYyBXaWxsaWFtcy4gIFJpZ2h0cyBhcmUgYXMgZ3JhbnRlZCB1bmRlciB0aGUgV0lORSBsaWNlbnNlLiAgRG9uJ3QgaG9hcmQgY29kZS4uLnNoYXJlIGl0ISIsIC0xLCAxMiwgMjI4LCAxNjgsIDM2CiBJQ09OICJBYm91dEljb24iLCAtMSwgODYsIDEyLCAxOCwgMjAKIENPTlRST0wgIiIsIC0xLCAic3RhdGljIiwgU1NfQkxBQ0tSRUNUIHwgV1NfQ0hJTEQgfCBXU19WSVNJQkxFLCAxMiwgMjE2LCAxNjgsIDIKfQoKUEFHRVNFVFVQRExHT1JEX0NTVE0gRElBTE9HIExPQURPTkNBTEwgTU9WRUFCTEUgRElTQ0FSREFCTEUgMzIsIDMyLCAyNDAsIDI0MApTVFlMRSBEU19NT0RBTEZSQU1FIHwgV1NfUE9QVVAgfCBXU19WSVNJQkxFIHwgV1NfQ0FQVElPTiB8IFdTX1NZU01FTlUKQ0FQVElPTiAiVEZUIFRlc3QgRGlhbG9nIgpGT05UIDgsICJNUyBTaGVsbCBEbGciCkJFR0lOCiAgQ09OVFJPTCAiIiwgcmN0MSwgIlN0YXRpYyIsIFNTX1dISVRFUkVDVCwgODAsIDgsIDgwLCA4MAogIENPTlRST0wgIiIsIHJjdDIsICJTdGF0aWMiLCBTU19HUkFZUkVDVCwgMTYwLCAxMiwgNCwgODAKICBDT05UUk9MICIiLCByY3QzLCAiU3RhdGljIiwgU1NfR1JBWVJFQ1QsICA4NCwgODgsIDgwLCA0CiAgR1JPVVBCT1ggIlBhcGllciIsIGdycDIsIDgsIDk2LCAyMjQsIDU2LCBCU19HUk9VUEJPWAogIExURVhUICImR3L232U6Iiwgc3RjMiwgMTYsIDExMiwgMzYsIDgKICBDT01CT0JPWCBjbWIyLCA2NCwgMTEwLCA4MCwgMTYwLCBDQlNfU0lNUExFfENCU19EUk9QRE9XTnxDQlNfU09SVHxXU19HUk9VUHxXU19UQUJTVE9QfFdTX1ZTQ1JPTEwKICBDT01CT0JPWCBjbWIxLCAxNTAsIDExMCwgODAsIDE2MCwgQ0JTX1NJTVBMRXxDQlNfRFJPUERPV058Q0JTX1NPUlR8V1NfR1JPVVB8V1NfVEFCU1RPUHxXU19WU0NST0xMCiAgTFRFWFQgIiZadWZ1aHIiLCBzdGMzLCAxNiwgMTMyLCAzNiwgOAogIENPTUJPQk9YIGNtYjMsIDY0LCAxMzAsIDE2MCwgMTYwLCBDQlNfU0lNUExFfENCU19EUk9QRE9XTnxDQlNfU09SVHxXU19HUk9VUHxXU19UQUJTVE9QfFdTX1ZTQ1JPTEwKICBHUk9VUEJPWCAiRm9ybWF0IiwgZ3JwMSwgOCwgMTU2LCA2NCwgNTYsIEJTX0dST1VQQk9YCiAgQVVUT1JBRElPQlVUVE9OICImSG9jaGZvcm1hdCIsIHJhZDEsIDE2LCAxNzAsIDUyLCAxMiwgQlNfQVVUT1JBRElPQlVUVE9OCiAgQVVUT1JBRElPQlVUVE9OICImUXVlcmZvcm1hdCIsIHJhZDIsIDE2LCAxOTAsIDUyLCAxMiwgQlNfQVVUT1JBRElPQlVUVE9OCiAgR1JPVVBCT1ggIlLkbmRlciIsIGdycDQsIDgwLCAxNTYsIDE1MiwgNTYsIEJTX0dST1VQQk9YCiAgTFRFWFQgIiZMaW5rczoiLCBzdGMxNSwgODgsIDE3MiwgMjEsIDgKICBFRElUVEVYVCBlZHQ0LCAxMTEsIDE3MCwgMzksIDEyLCBXU19UQUJTVE9QfFdTX0dST1VQfFdTX0JPUkRFUgogIExURVhUICImUmVjaHRzOiIsIHN0YzE2LCAxNTksIDE3MiwgMjcsIDgKICBFRElUVEVYVCBlZHQ2LCAxODcsIDE3MCwgMzksIDEyLCBXU19UQUJTVE9QfFdTX0dST1VQfFdTX0JPUkRFUgogIExURVhUICImT2JlbjoiLCBzdGMxNywgODgsIDE5MiwgMjEsIDgKICBFRElUVEVYVCBlZHQ1LCAxMTEsIDE5MCwgMzksIDEyLCBXU19UQUJTVE9QfFdTX0dST1VQfFdTX0JPUkRFUgogIExURVhUICImVW50ZW46Iiwgc3RjMTgsIDE1OSwgMTkyLCAyMywgOAogIEVESVRURVhUIGVkdDcsIDE4NywgMTkwLCAzOSwgMTIsIFdTX1RBQlNUT1B8V1NfR1JPVVB8V1NfQk9SREVSCiAgREVGUFVTSEJVVFRPTiAiT0siLCBJRE9LLCA3MSwgMjIwLCA1MCwgMTQsIEJTX1BVU0hCVVRUT04KICBQVVNIQlVUVE9OICJBYmJyZWNoZW4iLCBJRENBTkNFTCwgMTI2LCAyMjAsIDUwLCAxNAogIFBVU0hCVVRUT04gIiZEcnVja2VyLi4uIiwgcHNoMywgMTg0LCAyMjAsIDQ4LCAxNApFTkQK