LyoKICogT2xlVmlldyAoTm8ucmMpCiAqIE5vcndlZ2lhbiBCb2tt5WwgTGFuZ3VhZ2UgU3VwcG9ydAogKgogKiBDb3B5cmlnaHQgMjAwNiBBbGV4YW5kZXIgTi4gU/hybmVzIDxhbGV4QHRoZWhhbmRvZmFnb255LmNvbT4KICoKICogVGhpcyBsaWJyYXJ5IGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vcgogKiBtb2RpZnkgaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgTGVzc2VyIEdlbmVyYWwgUHVibGljCiAqIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5IHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlcgogKiB2ZXJzaW9uIDIuMSBvZiB0aGUgTGljZW5zZSwgb3IgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KICoKICogVGhpcyBsaWJyYXJ5IGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCiAqIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCiAqIE1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4gIFNlZSB0aGUgR05VCiAqIExlc3NlciBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMuCiAqCiAqIFlvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBMZXNzZXIgR2VuZXJhbCBQdWJsaWMKICogTGljZW5zZSBhbG9uZyB3aXRoIHRoaXMgbGlicmFyeTsgaWYgbm90LCB3cml0ZSB0byB0aGUgRnJlZSBTb2Z0d2FyZQogKiBGb3VuZGF0aW9uLCBJbmMuLCA1MSBGcmFua2xpbiBTdCwgRmlmdGggRmxvb3IsIEJvc3RvbiwgTUEgMDIxMTAtMTMwMSwgVVNBCiAqLwoKTEFOR1VBR0UgTEFOR19OT1JXRUdJQU4sIFNVQkxBTkdfTk9SV0VHSUFOX0JPS01BTAoKSURNX01FTlUgTUVOVQp7CiAgICBQT1BVUCAiJkZpbCIKICAgIHsKICAgICAgICBNRU5VSVRFTSAiJkJpbmQgdGlsIGZpbC4uLiIsICAgIElETV9CSU5ECiAgICAgICAgTUVOVUlURU0gIiZWaXMgVHlwZUxpYi4uLiIsICAgIElETV9UWVBFTElCCiAgICAgICAgTUVOVUlURU0gU0VQQVJBVE9SCiAgICAgICAgTUVOVUlURU0gIiZTeXN0ZW1vcHBzZXR0Li4uIiwgICAgSURNX1NZU0NPTkYKICAgICAgICBNRU5VSVRFTSAiS2r4JnIgcmVnaXN0ZXJyZWRpZ2VyZXIiLCAgICBJRE1fUkVHRURJVAogICAgICAgIE1FTlVJVEVNIFNFUEFSQVRPUgogICAgICAgIE1FTlVJVEVNICImQXZzbHV0dCIsICAgIElETV9FWElUCiAgICB9CiAgICBQT1BVUCAiJk9iamVrdCIKICAgIHsKICAgICAgICBQT1BVUCAiJkNvQ3JlYXRlSW5zdGFuY2UtZmxhZ2ciCiAgICAgICAgewogICAgICAgICAgICBNRU5VSVRFTSAiQ0xTQ1RYXyZJTlBST0NfU0VSVkVSIiwgICAgSURNX0ZMQUdfSU5TRVJWLENIRUNLRUQKICAgICAgICAgICAgTUVOVUlURU0gIkNMU0NUWF9JTlBST0NfJkhBTkRMRVIiLCAgICBJRE1fRkxBR19JTkhBTkRMCiAgICAgICAgICAgIE1FTlVJVEVNICJDTFNDVFhfJkxPQ0FMX1NFUlZFUiIsICAgICAgICBJRE1fRkxBR19MT0NTRVJWLENIRUNLRUQKICAgICAgICAgICAgTUVOVUlURU0gIkNMU0NUWF8mUkVNT1RFX1NFUlZFUiIsICAgIElETV9GTEFHX1JFTVNFUlYKICAgICAgICB9CiAgICAgICAgTUVOVUlURU0gU0VQQVJBVE9SCiAgICAgICAgTUVOVUlURU0gIlZpcyAmdHlwZS1pbmZvcm1hc2pvbiIsICAgIElETV9UWVBFSU5GTywgR1JBWUVECiAgICAgICAgTUVOVUlURU0gU0VQQVJBVE9SCiAgICAgICAgTUVOVUlURU0gIk9wcHJldHQgJmluc3RhbnMiLCAgICBJRE1fQ1JFQVRFSU5TVCwgR1JBWUVECiAgICAgICAgTUVOVUlURU0gIiZPcHByZXR0IGluc3RhbnMgcOUuLi4iLCAgICBJRE1fQ1JFQVRFSU5TVE9OLCBHUkFZRUQKICAgICAgICBNRU5VSVRFTSAiJlNsaXBwIGluc3RhbnMiLCAgICBJRE1fUkVMRUFTRUlOU1QsIEdSQVlFRAogICAgICAgIE1FTlVJVEVNIFNFUEFSQVRPUgogICAgICAgIE1FTlVJVEVNICJLb3BpZXIgQyZMU0lEIHRpbCB1dGtsaXBwc3RhdmxlbiIsICAgIElETV9DT1BZQ0xTSUQsIEdSQVlFRAogICAgICAgIE1FTlVJVEVNICImS29waWVyICZIVE1MLW9iamVrdGxhcHAgdGlsIHV0a2xpcHBzdGF2bGVuIiwgSURNX0hUTUxUQUcsIEdSQVlFRAogICAgICAgIE1FTlVJVEVNIFNFUEFSQVRPUgogICAgICAgIE1FTlVJVEVNICImVmlzLi4uIiwgICAgSURNX1ZJRVcsIEdSQVlFRAogICAgfQogICAgUE9QVVAgIiZWaXMiCiAgICB7CiAgICAgICAgTUVOVUlURU0gIiZFa3NwZXJ0bW9kdXMiLCAgICBJRE1fRVhQRVJULENIRUNLRUQKICAgICAgICBNRU5VSVRFTSBTRVBBUkFUT1IKICAgICAgICBNRU5VSVRFTSAiU2tqdWx0JmUga29tcG9uZW50a2F0ZWdvcmllciIsICAgIElETV9ISURERU4sIEdSQVlFRAogICAgICAgIE1FTlVJVEVNIFNFUEFSQVRPUgogICAgICAgIE1FTlVJVEVNICJWZXJrJnT4eWxpbmplIiwgICAgSURNX1RPT0xCQVIsQ0hFQ0tFRAogICAgICAgIE1FTlVJVEVNICImU3RhdHVzbGluamUiLCAgICBJRE1fU1RBVFVTQkFSLENIRUNLRUQKICAgICAgICBNRU5VSVRFTSBTRVBBUkFUT1IKICAgICAgICBNRU5VSVRFTSAiT3BwZGF0ZSZyXHRGNSIsICAgIElETV9SRUZSRVNICiAgICB9CiAgICBQT1BVUCAiJkhqZWxwIgogICAgewogICAgICAgIE1FTlVJVEVNICImT20gT2xlVmlldyIsICAgIElETV9BQk9VVAogICAgfQp9CgpJRE1fVFlQRUxJQiBNRU5VCnsKICAgIFBPUFVQICImRmlsIgogICAgewogICAgICAgIE1FTlVJVEVNICJMYWdyZSAmc29tLi4uIiwgICAgSURNX1NBVkVBUwogICAgICAgIE1FTlVJVEVNICImTHVrayIsICBJRE1fQ0xPU0UKICAgIH0KICAgIFBPUFVQICImVmlzIgogICAgewogICAgICAgIE1FTlVJVEVNICJTb3J0ZSZyIGV0dGVyIHR5cGUiLCBJRE1fR1JPVVAKICAgICAgICBNRU5VSVRFTSBTRVBBUkFUT1IKICAgICAgICBNRU5VSVRFTSAiVmVyayZ0+HlsaW5qZSIsICAgIElETV9UT09MQkFSCiAgICAgICAgTUVOVUlURU0gIiZTdGF0dXNsaW5qZSIsIElETV9TVEFUVVNCQVIsQ0hFQ0tFRAogICAgfQp9CgpTVFJJTkdUQUJMRQp7CiAgICBJRFNfQVBQTkFNRSAgICAgICAgICAgICJPbGVWaWV3IgogICAgSURTX0FQUFRJVExFICAgICAgICAgICAiT2xlVmlldyIKICAgIElEU19SRUFEWSAgICAgICAgICAgICAgIktsYXIiCiAgICBJRFNfQUJPVVQgICAgICAgICAgICAgICJPbGVWaWV3IC0gb2JqZWt0dmlzZXIgZm9yIE9MRS9DT00iCiAgICBJRFNfQUJPVVRWRVIgICAgICAgICAgICJ2ZXJzam9uIDEuMCIKICAgIElEU19UWVBFTElCVElUTEUgICAgICAgIklUeXBlTGliLXZpc2VyIgogICAgSURTX09QRU4gICAgICAgICAgICAgICAixXBuZSIKICAgIElEU19PUEVOX1RZUEVMSUJfRklMVEVSICJUeXBlTGliIEZpbGVzICgqLnRsYjsqLm9sYjsqLmRsbDsqLm9jeDsqLmV4ZSlcMCoudGxiOyoub2xiOyouZGxsOyoub2N4OyouZXhlXDBBbGwgRmlsZXMgKCouKilcMCouKlwwXDAiCgogICAgSURNX0JJTkQsICAgICAgICAgICAgICAiQmluZCB0aWwgZmlsIHZpYSBGaWxlIE1vbmlrZXIiCiAgICBJRE1fVFlQRUxJQiwgICAgICAgICAgICLFcG5lIGVuIFR5cGVMaWItZmlsIG9nIHZpcyBpbm5ob2xkZXQiCiAgICBJRE1fU1lTQ09ORiwgICAgICAgICAgICJFbmRyZSBpbm5zdGlsbGluZ2VyIGZvciBkaXN0cmlidWVydCBDT00gZm9yIGhlbGUgbWFza2luZW4iCiAgICBJRE1fUkVHRURJVCwgICAgICAgICAgICJLavhyIHJlZ2lzdGVycmVkaWdlcmluZyIKICAgIElETV9FWElULCAgICAgICAgICAgICAgIkF2c2x1dHQgcHJvZ3JhbW1ldC4gRGV0IHNw+HIgb20g5SBsYWdyZSBlbmRyaW5nZXIiCiAgICBJRE1fQ1JFQVRFSU5TVCwgICAgICAgICJPcHByZXR0IGVuIGluc3RhbnMgYXYgZGV0IHZhbGd0ZSBvYmpla3RldCIKICAgIElETV9DUkVBVEVJTlNUT04sICAgICAgIk9wcHJldHQgZW4gaW5zdGFucyBhdiBkZXQgdmFsZ3RlIG9iamVrdGV0IHDlIGVuIGJlc3RlbXQgbWFza2luIgogICAgSURNX1JFTEVBU0VJTlNULCAgICAgICAiU2xpcHAgdmFsZ3RlIG9iamVrdGluc3RhbnMiCiAgICBJRE1fQ09QWUNMU0lELCAgICAgICAgICJLb3BpZXIgZGV0IHZhbGd0ZSBlbGVtZW50ZXRzIEdVSUQgdGlsIHV0a2xpcHBzdGF2bGVuIgogICAgSURNX1ZJRVcsICAgICAgICAgICAgICAixXBuZSB2aXNlcmVuIGZvciBkZXQgdmFsZ3RlIGVsZW1lbnRldCIKICAgIElETV9GTEFHX0lOU0VSViwgICAgICAgIkJydWsgQ0xTQ1RYX0lOUFJPQ19TRVJWRVIgdmVkIGthbGwgdGlsIENvR2V0Q2xhc3NPYmplY3QiCiAgICBJRE1fRkxBR19JTkhBTkRMLCAgICAgICJCcnVrIENMU0NUWF9JTlBST0NfSEFORExFUiB2ZWQga2FsbCB0aWwgQ29HZXRDbGFzc09iamVjdCIKICAgIElETV9GTEFHX0xPQ1NFUlYsICAgICAgIkJydWsgQ0xTQ1RYX0xPQ0FMX1NFUlZFUiB2ZWQga2FsbCB0aWwgQ29HZXRDbGFzc09iamVjdCIKICAgIElETV9GTEFHX1JFTVNFUlYsICAgICAgIkJydWsgQ0xTQ1RYX1JFTU9URV9TRVJWRVIgdmVkIGthbGwgdGlsIENvR2V0Q2xhc3NPYmplY3QiCiAgICBJRE1fRVhQRVJULCAgICAgICAgICAgICJCeXR0IG1lbGxvbSBla3NwZXJ0LSBvZyBueWJlZ3lubmVybW9kdXMiCiAgICBJRE1fSElEREVOLCAgICAgICAgICAgICJTbOUgYXYvcOUgdmlzbmluZ2VuIGF2IGtvbXBvbmVudGthdGVnb3JpZXIgc29tIGlra2UgZXIgbWVudCDlIHZpc2VzIgogICAgSURNX1RPT0xCQVIsICAgICAgICAgICAiU2zlIHZlcmt0+HlsaW5qZW4gYXYvcOUiCiAgICBJRE1fU1RBVFVTQkFSLCAgICAgICAgICJWaXMgZWxsZXIgc2tqdWwgc3RhdHVzbGluamVuIgogICAgSURNX1JFRlJFU0gsICAgICAgICAgICAiT3BwZGF0ZXIgYWxsZSBsaXN0ZXIiCiAgICBJRE1fQUJPVVQsICAgICAgICAgICAgICJWaXMgcHJvZ3JhbWluZm9ybWFzam9uLCB2ZXJzam9ubnVtbWVyIG9nIG9wcGhhdnNyZXR0IgoKICAgIElETV9TQVZFQVMsICAgICAgICAgICAgIkxhZ3JlIHNvbSBlbiCrLklETLstIGVsbGVyIKsuSLstZmlsIgogICAgSURNX0NMT1NFLCAgICAgICAgICAgICAiTHVrayB2aW5kdSIKICAgIElETV9HUk9VUCwgICAgICAgICAgICAgIlNvcnRlciB0eXBlaW5mbyBldHRlciB0eXBlIgoKICAgIElEU19UUkVFX09DLCAgICAgICAgICAgIk9iamVrdGtsYXNzZXIiCiAgICBJRFNfVFJFRV9HQkNDLCAgICAgICAgICJTb3J0ZXIgZXR0ZXIga29tcG9uZW50a2F0ZWdvcmkiCiAgICBJRFNfVFJFRV9PMU8sICAgICAgICAgICJPTEUgMS4wLW9iamVrdGVyIgogICAgSURTX1RSRUVfQ0xPLCAgICAgICAgICAiQ09NIGJpYmxpb3Rla29iamVrdGVyIgogICAgSURTX1RSRUVfQU8sICAgICAgICAgICAiQWxsZSBvYmpla3RlciIKICAgIElEU19UUkVFX0FJRCwgICAgICAgICAgIlByb2dyYW0tSUQnZXIiCiAgICBJRFNfVFJFRV9UTCwgICAgICAgICAgICJUeXBlYmlibGlvdGVrIgogICAgSURTX1RMX1ZFUiwgICAgICAgICAgICAidmVyLiIKICAgIElEU19UUkVFX0ksICAgICAgICAgICAgIkdyZW5zZXNuaXR0IgoKICAgIElEU19UQUJfUkVHLCAgICAgICAgICAgIlJlZ2lzdGVyIgogICAgSURTX1RBQl9JTVBMLCAgICAgICAgICAiSW1wbGVtZW50ZXJpbmciCiAgICBJRFNfVEFCX0FDVElWLCAgICAgICAgICJBa3RpdmVyaW5nIgoKICAgIElEU19DR0NPRkFJTCwgICAgICAgICAgIkNvR2V0Q2xhc3NPYmplY3QgZmVpbGV0LiIKICAgIElEU19FUlJPUl9VTktOLCAgICAgICAgIlVramVudCBmZWlsIgogICAgSURTX1RSVUUsICAgICAgICAgICAgICAiU2FubiIKICAgIElEU19GQUxTRSwgICAgICAgICAgICAgIlVzYW5uIgogICAgSURTX0JZVEVTLCAgICAgICAgICAgICAiYnl0ZSIKCiAgICBJRFNfRVJST1JfTE9BRFRZUEVMSUIsICJMb2FkVHlwZUxpYiggJXMgKSBmZWlsZXQgKCQleCkiCiAgICBJRFNfSU5IRVJJVElOVEVSRkFDRVMsICJBcnZldGUgZ3JlbnNlc25pdHQiCn0KCkRMR19DUkVBVEVJTlNUT04gRElBTE9HIERJU0NBUkRBQkxFIDAsIDAsIDI1MCwgNDEKU1RZTEUgRFNfTU9EQUxGUkFNRSB8IERTX05PSURMRU1TRyB8IFdTX0NBUFRJT04gfCBXU19TWVNNRU5VCkNBUFRJT04gIktvYmxlIHRpbCBlbiBhbm5lbiBtYXNraW4iCkZPTlQgOCwgIk1TIFNoZWxsIERsZyIKewogICAgTFRFWFQgICAiJk1hc2tpbm5hdm46IiwgLTEsIDUsIDYsIDE5MCwgOAogICAgRURJVFRFWFQgICAgSURDX01BQ0hJTkUsIDUsIDE2LCAxOTAsIDEyLCBXU19CT1JERVIgfCBXU19UQUJTVE9QIHwgRVNfQVVUT0hTQ1JPTEwKICAgIERFRlBVU0hCVVRUT04gICAiJk9LIiwgSURPSywgMjAwLCA1LCA0NSwgMTQKICAgIFBVU0hCVVRUT04gICImQXZicnl0IiwgSURDQU5DRUwsIDIwMCwgMjIsIDQ1LCAxNAp9CgpETEdfU1lTQ09ORiBESUFMT0cgRElTQ0FSREFCTEUgMCwgMCwgMTcwLCAxMDAKU1RZTEUgRFNfTU9EQUxGUkFNRSB8IERTX05PSURMRU1TRyB8IFdTX0NBUFRJT04gfCBXU19TWVNNRU5VCkNBUFRJT04gIlN5c3RlbW9wcHNldHQiCkZPTlQgOCwgIk1TIFNoZWxsIERsZyIKewogICAgTFRFWFQgICAiU3lzdGVtaW5uc3RpbGxpbmdlciIsIC0xLCA1LCA2LCAxNjAsIDgKICAgIENIRUNLQk9YICAgICJTbOUgcOUgZGlzdHJpYnUmZXJ0ICBDT00iLCBJRENfRU5BQkxFRENPTSwgNSwgMjAsIDE2MCwgMTAsIFdTX1RBQlNUT1AgfCBXU19HUk9VUCB8IEJTX0FVVE9DSEVDS0JPWAogICAgQ0hFQ0tCT1ggICAgIlNs5SBw5SBla3N0ZXJuZSB0aWxrb2JsaW5nZSZyIChrdW4gV2luOTUpIiwgSURDX0VOQUJMRVJFTU9URSwgNSwgMzUsIDE2MCwgMTAsIFdTX1RBQlNUT1AgfCBXU19HUk9VUCB8IEJTX0FVVE9DSEVDS0JPWAogICAgTFRFWFQgICAiRGlzc2UgaW5uc3RpbGxpbmdlbmUgZW5kcmVyIGt1biByZWdpc3RlcnZlcmRpZXIuXG5EZSBw5XZpcmtlciBpa2tlIFdpbmVzIHl0ZWxzZS4iLCAtMSwgNSwgNTAsIDE2MCwgNDAKICAgIERFRlBVU0hCVVRUT04gICAiJk9LIiwgSURPSywgNzAsIDgwLCA0NSwgMTQKICAgIFBVU0hCVVRUT04gICImQXZicnl0IiwgSURDQU5DRUwsIDEyMCwgODAsIDQ1LCAxNAp9CgpETEdfREVGQVVMVF9JViBESUFMT0cgRElTQ0FSREFCTEUgMCwgMCwgMjgwLCA1MApTVFlMRSBEU19NT0RBTEZSQU1FIHwgRFNfTk9JRExFTVNHIHwgV1NfQ0FQVElPTiB8IFdTX1NZU01FTlUKQ0FQVElPTiAiU3RhbmRhcmQgZ3JlbnNlc25pdHR2aXNlciIKRk9OVCA4LCAiTVMgU2hlbGwgRGxnIgp7CiAgICBMVEVYVCAgICJHcmVuc2Vzbml0dCIsIC0xLCA1LCA2LCA1MCwgOAogICAgTFRFWFQgICAiIiwgSURDX0xBQkVMLCA2MCwgNiwgMTQ1LCA4CiAgICBMVEVYVCAgICJJSUQ6IiwgLTEsIDUsIDE2LCA1MCwgOAogICAgTFRFWFQgICAiIiwgSURDX0lERU5USUZJRVIsIDYwLCAxNiwgMTY1LCA4CiAgICBERUZQVVNIQlVUVE9OICAgIiZMdWtrIiwgSURDQU5DRUwsIDIzMCwgNiwgNDUsIDE0CiAgICBQVVNIQlVUVE9OICAiJlZpcyB0eXBlaW5mbyIsIElEQ19WSUVXVFlQRUlORk8sIDYsIDMxLCA3MCwgMTQsIFdTX0RJU0FCTEVECn0KCkRMR19JUEVSU0lTVF9JViBESUFMT0cgRElTQ0FSREFCTEUgMCwgMCwgMjgwLCAyOQpTVFlMRSBEU19NT0RBTEZSQU1FIHwgRFNfTk9JRExFTVNHIHwgV1NfQ0FQVElPTiB8IFdTX1NZU01FTlUKQ0FQVElPTiAiR3JlbnNlc25pdHR2c2llciBmb3IgSVBlcnNpc3QiCkZPTlQgOCwgIk1TIFNoZWxsIERsZyIKewogICAgTFRFWFQgICAiS2xhc3NlbmF2bjoiLCAtMSwgNSwgNiwgNTAsIDgKICAgIExURVhUICAgIiIsIElEQ19MQUJFTCwgNjAsIDYsIDE0NSwgOAogICAgTFRFWFQgICAiQ0xTSUQ6IiwgLTEsIDUsIDE2LCA1MCwgOAogICAgTFRFWFQgICAiIiwgSURDX0lERU5USUZJRVIsIDYwLCAxNiwgMTY1LCA4CiAgICBERUZQVVNIQlVUVE9OICAgIiZMdWtrIiwgSURDQU5DRUwsIDIzMCwgNiwgNDUsIDE0Cn0KCkRMR19JUEVSU0lTVFNUUkVBTV9JViBESUFMT0cgRElTQ0FSREFCTEUgMCwgMCwgMjgwLCA2OApTVFlMRSBEU19NT0RBTEZSQU1FIHwgRFNfTk9JRExFTVNHIHwgV1NfQ0FQVElPTiB8IFdTX1NZU01FTlUKQ0FQVElPTiAiR3JlbnNlc25pdHR2aXNlciBmb3IgSVBlcnNpc3RTdHJlYW0iCkZPTlQgOCwgIk1TIFNoZWxsIERsZyIKewogICAgTFRFWFQgICAiS2xhc3NlbmF2bjoiLCAtMSwgNSwgNiwgNTAsIDgKICAgIExURVhUICAgIiIsIElEQ19MQUJFTCwgNjAsIDYsIDE0NSwgOAogICAgTFRFWFQgICAiQ0xTSUQ6IiwgLTEsIDUsIDE2LCA1MCwgOAogICAgTFRFWFQgICAiIiwgSURDX0lERU5USUZJRVIsIDYwLCAxNiwgMTY1LCA4CiAgICBERUZQVVNIQlVUVE9OICAgIiZMdWtrIiwgSURDQU5DRUwsIDIzMCwgNiwgNDUsIDE0CiAgICBQVVNIQlVUVE9OICAiJklzRGlydHkiLCBJRENfSVNESVJUWV9CVVRUT04sIDYsIDMxLCA1MCwgMTQKICAgIExURVhUICAgIj8/PyIsIElEQ19JU0RJUlRZLCA2MCwgMzQsIDE0NSwgOAogICAgUFVTSEJVVFRPTiAgIiZHZXRTaXplTWF4IiwgSURDX0dFVFNJWkVNQVhfQlVUVE9OLCA2LCA0OSwgNTAsIDE0CiAgICBMVEVYVCAgICI/Pz8iLCBJRENfR0VUU0laRU1BWCwgNjAsIDUyLCAxNDUsIDgKfQo=