LyoKICogV2luZUNmZyByZXNvdXJjZXMKICogVHVya2lzaCBMYW5ndWFnZSBTdXBwb3J0CiAqCiAqIENvcHlyaWdodCAyMDA2IEZhdGloIEH+/WP9CiAqCiAqIFRoaXMgbGlicmFyeSBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IKICogbW9kaWZ5IGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIExlc3NlciBHZW5lcmFsIFB1YmxpYwogKiBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieSB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uOyBlaXRoZXIKICogdmVyc2lvbiAyLjEgb2YgdGhlIExpY2Vuc2UsIG9yIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCiAqCiAqIFRoaXMgbGlicmFyeSBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAogKiBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZgogKiBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlIEdOVQogKiBMZXNzZXIgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLgogKgogKiBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgTGVzc2VyIEdlbmVyYWwgUHVibGljCiAqIExpY2Vuc2UgYWxvbmcgd2l0aCB0aGlzIGxpYnJhcnk7IGlmIG5vdCwgd3JpdGUgdG8gdGhlIEZyZWUgU29mdHdhcmUKICogRm91bmRhdGlvbiwgSW5jLiwgNTEgRnJhbmtsaW4gU3QsIEZpZnRoIEZsb29yLCBCb3N0b24sIE1BIDAyMTEwLTEzMDEsIFVTQQogKgogKi8KCkxBTkdVQUdFIExBTkdfVFVSS0lTSCwgU1VCTEFOR19ERUZBVUxUCgpJRFJfV0lORUNGRyBNRU5VIERJU0NBUkRBQkxFCkJFR0lOCiAgICBQT1BVUCAiIgogICAgQkVHSU4KICAgICAgICBNRU5VSVRFTSAiWWFw/WxhbmT9ciIsIElEQ19BVURJT19DT05GSUdVUkUKICAgIEVORApFTkQKCklERF9BQk9VVENGRyBESUFMT0dFWCAwLCAwLCAyNjAsIDI3MApTVFlMRSBXU19DSElMRApGT05UIDgsICJNUyBTaGVsbCBEbGciCkJFR0lOCiAgICBMVEVYVCAgICAgICAgICAgUEFDS0FHRV9TVFJJTkcsSURDX1NUQVRJQywxMTksMTcsMTIwLDgKICAgIENPTlRST0wgICAgICAgICBJREJfV0lORSxJRENfU1RBVElDLCJTdGF0aWMiLFNTX0JJVE1BUCAsMTUsMTcsMTU3LDExMQogICAgTFRFWFQgICAgICAgICAgICJodHRwOi8vd3d3LndpbmVocS5vcmcvIixJRENfU1RBVElDLDExOSwzMSwxMDYsOAogICAgTFRFWFQgICAgICAgICAgICJUaGlzIGxpYnJhcnkgaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeSBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBMZXNzZXIgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkgdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbjsgZWl0aGVyIHZlcnNpb24gMi4xIG9mIHRoZSBMaWNlbnNlLCBvciAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLiIsCiAgICAgICAgICAgICAgICAgICAgSURDX1NUQVRJQywxMTksNDQsMTI0LDcyCkVORAoKSUREX0FQUENGRyBESUFMT0cgRElTQ0FSREFCTEUgIDAsIDAsIDI2MCwgMjUwClNUWUxFIFdTX0NISUxEIHwgV1NfRElTQUJMRUQKRk9OVCA4LCAiTVMgU2hlbGwgRGxnIgpCRUdJTgogICAgR1JPVVBCT1ggICAgICAgICIgVXlndWxhbWEgQXlhcmxhcv0gIixJRENfU1RBVElDLCA4LDQsMjQ0LDI0MAogICAgTFRFWFQgICAgICAgICAgICJXaW5lIGhlciB1eWd1bGFtYSBp52luIGRl8Gn+aWsgV2luZG93cyBz/HL8bWxlcmluaSB0YWtsaXQgZWRlYmlsaXIuIEJ1IHNla21lIEtpdGFwbP1rbGFyIHZlIEdyYWZpayBzZWttZWxlcmkgaWxlIGJh8GxhbnT9bP0gb2x1cCBidSBzZWttZWxlcmRlIGRlIHNpc3RlbSDnYXD9bmRha2kgdmV5YSB1eWd1bGFtYXlhIPZ6ZWwgYXlhcmxhcv0geWFwbWFu/XphIGl6aW4gdmVyaXIuIiwKICAgICAgICAgICAgICAgICAgICBJRENfU1RBVElDLDE1LDIwLDIyNywzMAogICAgQ09OVFJPTCAgICAgICAgICJVeWd1bGFtYWxhciIsSURDX0FQUF9MSVNUVklFVywiU3lzTGlzdFZpZXczMiIsV1NfQk9SREVSIHwgV1NfVEFCU1RPUCB8IExWU19MSVNUIHwgTFZTX1NJTkdMRVNFTCB8IExWU19TSE9XU0VMQUxXQVlTLAogICAgICAgICAgICAgICAgICAgIDE1LDUwLDIzMCwxNTAKICAgIFBVU0hCVVRUT04JICAgICJVeWd1bGFtYSAmRWtsZS4uLiIsSURDX0FQUF9BRERBUFAsIDkwLDIwNCw3NSwxNAogICAgUFVTSEJVVFRPTgkgICAgIlV5Z3VsYW1hICZLYWxk/XIiLElEQ19BUFBfUkVNT1ZFQVBQLCAxNzAsMjA0LDc1LDE0CiAgICBMVEVYVCAgICAgICAgICAgIiZXaW5kb3dzIFP8cvxt/DoiLElEQ19TVEFUSUMsMTcsMjI2LDU4LDgKICAgIENPTUJPQk9YICAgICAgICBJRENfV0lOVkVSLDgzLDIyNCwxNjMsNTYsQ0JTX0RST1BET1dOTElTVCB8IFdTX1ZTQ1JPTEwgfCBXU19UQUJTVE9QICAgIApFTkQKCklERF9HUkFQSENGRyBESUFMT0cgRElTQ0FSREFCTEUgIDAsIDAsIDI2MCwgMjUwClNUWUxFIFdTX0NISUxEIHwgV1NfRElTQUJMRUQKRk9OVCA4LCAiTVMgU2hlbGwgRGxnIgpCRUdJTgogICAgR1JPVVBCT1ggICAgICAgICIgUGVuY2VyZSBheWFybGFy/SAiLElEQ19TVEFUSUMsOCwyNSwyNDQsMTgwCgogICAgQ09OVFJPTCAgICAgICAgICJEaXJlY3RYIHV5Z3VsYW1hbGFy/W79biBmYXJleWkgcGVuY2VyZSBp52luZSBraWxpdGxlbWVsZXJpbmUgaXppbiB2ZXIiLElEQ19EWF9NT1VTRV9HUkFCLCJCdXR0b24iLEJTX0FVVE9DSEVDS0JPWCB8IFdTX1RBQlNUT1AsMTUsMzUsMjMwLDgKICAgIENPTlRST0wgICAgICAgICAiTWFzYfxzdPwg52lmdCB0YW1wb25sYW1hef0gZXRraW5sZf50aXIiLElEQ19ET1VCTEVfQlVGRkVSLCJCdXR0b24iLEJTX0FVVE9DSEVDS0JPWCB8IFdTX1RBQlNUT1AsMTUsNDUsMjMwLDgKICAgIExURVhUICAgICAgICAgICAiUGVuY2VyZWxlciBwZW5jZXJlIHn2bmV0aWNpbml6IHRhcmFm/W5kYW4gefZuZXRpbGRp8GluZGUsIHN0YW5kYXJ0IGtlbmFybGFyYSBzYWhpcCBvbGFjYWssIHNhbmFsIG1hc2H8c3T8bvx6ZSB1eWd1biBkYXZyYW5hY2FrIHZlIHBlbmNlcmUgbGlzdGVuaXpkZSBn9nL8bmVjZWt0aXIuIFxuXG5F8GVyIHBlbmNlcmVsZXIgefZuZXRpbG1lenNlLCBwZW5jZXJlIHn2bmV0aWNpbml6ZGVuIGJh8P1tc/16IG9sYWNha2xhcmT9ci4gQnUsIHBlbmNlcmVsZXJpbiBtYXNh/HN0/G78emxlIHRhbSBvbGFyYWsgYvx0/G5sZf5lbWV5ZWNl8GkgYW5sYW39bmEgZ2VsaXI7IGFtYSB0YWtsaXQgZGFoYSBk/Hpn/G4geWFw/WxhYmlsaWNl8GluZGVuIGJhev0gcHJvZ3JhbWxhciBkYWhhIGl5aSDnYWz9/mFiaWxpci4iLAogICAgCQkgICAgSURDX1NUQVRJQywxNSw1OCwyMjgsODAKICAgIENPTlRST0wgICAgICAgICAiUGVuY2VyZSB59m5ldGljaXNpbmluIHBlbmNlcmVsZXJpIHn2bmV0bWVzaW5lIGl6aW4gdmVyIixJRENfRU5BQkxFX01BTkFHRUQsIkJ1dHRvbiIsQlNfQVVUT0NIRUNLQk9YIHwgV1NfVEFCU1RPUCwxNSwxMzIsMjMwLDgKICAgIAogICAgTFRFWFQgICAgICAgICAgICJU/G0gcGVuY2VyZWxlcmluIHNhbmFsIGJpciBla3JhbmEgaGFwc2VkaWxkafBpIGJpciB3aW5kb3dzIG1hc2H8c3T8IGVt/GxlIGVkZWJpbGlyc2luaXogdmV5YSBwZW5jZXJlbGVyaW4gc3RhbmRhcnQgbWFzYfxzdPxu/HplIHllcmxl/m1lc2luaSBzYfBsYXlhYmlsaXJzaW5pei4iLAogICAgICAgICAgICAgICAgICAgIElEQ19TVEFUSUMsMTUsMTQ2LDIyOCwyOAogICAgTFRFWFQgICAgICAgICAgICJNYXNh/HN0/CBi/Hn8a2z88Pw6IixJRENfREVTS1RPUF9TSVpFLDE1LDE4OCw0NCw4LFdTX0RJU0FCTEVECiAgICBMVEVYVCAgICAgICAgICAgIlgiLElEQ19ERVNLVE9QX0JZLDEwOCwxODgsOCw4LFdTX0RJU0FCTEVECiAgICBDT05UUk9MICAgICAgICAgIlNhbmFsIG1hc2H8c3T8IGt1bGxhbiIsSURDX0VOQUJMRV9ERVNLVE9QLCJCdXR0b24iLAogICAgICAgICAgICAgICAgICAgIEJTX0FVVE9DSEVDS0JPWCB8IFdTX1RBQlNUT1AsMTUsMTczLDIzMCwxMAoJCSAgICAKICAgIEVESVRURVhUICAgICAgICBJRENfREVTS1RPUF9XSURUSCw2NCwxODgsNDAsMTIsRVNfQVVUT0hTQ1JPTEwgfCBFU19OVU1CRVIgfCBXU19ESVNBQkxFRAogICAgRURJVFRFWFQgICAgICAgIElEQ19ERVNLVE9QX0hFSUdIVCwxMTcsMTg4LDQwLDEyLEVTX0FVVE9IU0NST0xMIHwgRVNfTlVNQkVSIHwgV1NfRElTQUJMRUQKCiAgICBHUk9VUEJPWCAgICAgICAgIiBEaXJlY3QzRCAiLElEQ19TVEFUSUMsOCwyMTAsMjQ0LDUwCgogICAgTFRFWFQgICAgICAgICAgICJWZXJ0ZXggU2hhZGVyIERlc3Rl8Gk6ICIsSURDX1NUQVRJQywxNSwyMjAsODAsMzAKICAgIENPTUJPQk9YCSAgICBJRENfRDNEX1ZTSEFERVJfTU9ERSwxMDAsMjE4LDE1MCw3MCxDQlNfRFJPUERPV05MSVNUIHwgV1NfVlNDUk9MTCB8IFdTX1RBQlNUT1AKCiAgICBDT05UUk9MICAgICAgICAgIlBpeGVsIFNoYWRlcidhIGl6aW4gdmVyIChkb25hbv1tIGRlc3Rla2xpeW9yc2EpIixJRENfRDNEX1BTSEFERVJfTU9ERSwiQnV0dG9uIixCU19BVVRPQ0hFQ0tCT1ggfCBXU19UQUJTVE9QLDE1LDIzNywyMzAsMTAKRU5ECgpJRERfRExMQ0ZHIERJQUxPRyBESVNDQVJEQUJMRSAgMCwgMCwgMjYwLCAyNTAKU1RZTEUgV1NfQ0hJTEQgfCBXU19ESVNBQkxFRApGT05UIDgsICJNUyBTaGVsbCBEbGciCkJFR0lOCiAgICBHUk9VUEJPWCAgICAgICAgIiBETEwg1m5jZWxpa2xlcmkgIixJRENfU1RBVElDLDgsNCwyNDQsMjQwCiAgICBMVEVYVCAgICAgICAgICAgIkRldmluZ2VuIEJh8Gz9IEtpdGFwbP1rbGFy/W4gaGVyIGJpcmkgeWVybGX+aWsgKFdpbmUgaWxlIGdlbGVuKSB2ZXlhIGRv8GFsIChXaW5kb3dzJ3RhbiBhbP1ubf3+IHZleWEgdXlndWxhbWEgdGFyYWb9bmRhbiBzYfBsYW5t/f4pIG9sYXJhayBiZWxpcnRpbGViaWxpci4iCiAgICAgICAgICAgICAgICAgICAgLElEQ19TVEFUSUMsMTYsMTYsMjIwLDMyCiAgICBMVEVYVCAgICAgICAgICAgIktpdGFwbP1rIGnnaW4geWVuaSD2bmNlbGlrOiIsSURDX1NUQVRJQywxNiw1OCwxMDAsOAogICAgQ09NQk9CT1ggICAgICAgIElEQ19ETExDT01CTywxNiw2OCwxNDAsMTQsQ0JTX0RST1BET1dOIHwgV1NfVlNDUk9MTCB8IFdTX1RBQlNUT1AgfCBDQlNfU09SVCB8IENCU19MT1dFUkNBU0UKICAgIFBVU0hCVVRUT04gICAgICAiJkVrbGUiLElEQ19ETExTX0FERERMTCwgMTY0LDY4LDgyLDEzLEJTX0RFRlBVU0hCVVRUT04gCiAgICBMVEVYVCAgICAgICAgICAgIlZhciBvbGFuIPZuY2VsaWtsZXI6IixJRENfU1RBVElDLDE2LDg2LDEwMCw4CiAgICBMSVNUQk9YICAgICAgICAgSURDX0RMTFNfTElTVCwxNiw5NiwxNDAsMTQwLFdTX0JPUkRFUiB8IFdTX1RBQlNUT1AgfCBXU19WU0NST0xMCiAgICBQVVNIQlVUVE9OICAgICAgIiZE/HplbmxlIixJRENfRExMU19FRElURExMLDE2NCw5Niw4MiwxNAogICAgUFVTSEJVVFRPTiAgICAgICImU2lsIixJRENfRExMU19SRU1PVkVETEwsMTY0LDExNCw4MiwxNCAKRU5ECgpJRERfTE9BRE9SREVSIERJQUxPRyBESVNDQVJEQUJMRSA4MCwgOTAsIDEyNSwgOTIKU1RZTEUgRFNfTU9EQUxGUkFNRSB8IFdTX0NBUFRJT04gfCBXU19TWVNNRU5VCkNBUFRJT04gItZuY2VsaWsgRPx6ZW5sZSIKRk9OVCA4LCAiTVMgU2hlbGwgRGxnIgpCRUdJTgogICAgR1JPVVBCT1ggICAgICAgICIgWfxrbGVtZSBT/XJhc/0gIixJRENfU1RBVElDLDgsNCwxMTAsNjYKICAgIENPTlRST0wgICAgICAgICAiJlllcmxl/mlrIChXaW5lKSIsSURDX1JBRF9CVUlMVElOLCJCdXR0b24iLCBCU19BVVRPUkFESU9CVVRUT04gfCBXU19HUk9VUCwxNiwxNCwxMDAsMTAKICAgIENPTlRST0wgICAgICAgICAiJkRv8GFsIChXaW5kb3dzKSIsSURDX1JBRF9OQVRJVkUsIkJ1dHRvbiIsIEJTX0FVVE9SQURJT0JVVFRPTiwxNiwyNCwxMDAsMTAKICAgIENPTlRST0wgICAgICAgICAi1m5jZSBZZXImbGX+aWsgc29ucmEgRG/wYWwiLElEQ19SQURfQlVJTFRJTl9OQVRJVkUsIkJ1dHRvbiIsIEJTX0FVVE9SQURJT0JVVFRPTiwxNiwzNCwxMDAsMTAKICAgIENPTlRST0wgICAgICAgICAi1m5jZSBEJm/wYWwgc29ucmEgWWVybGX+aWsiLElEQ19SQURfTkFUSVZFX0JVSUxUSU4sIkJ1dHRvbiIsIEJTX0FVVE9SQURJT0JVVFRPTiwxNiw0NCwxMDAsMTAKICAgIENPTlRST0wgICAgICAgICAiJkV0a2lzaXpsZf50aXIiLElEQ19SQURfRElTQUJMRSwiQnV0dG9uIiwgQlNfQVVUT1JBRElPQlVUVE9OLDE2LDU0LDEwMCwxMAogICAgREVGUFVTSEJVVFRPTiAgICJUYW1hbSIsSURPSyw4LDc0LDUzLDE0LFdTX0dST1VQCiAgICBQVVNIQlVUVE9OICAgICAgIt1wdGFsIixJRENBTkNFTCw2NCw3NCw1MywxNCxXU19HUk9VUApFTkQKCklERF9EUklWRUNGRyBESUFMT0cgRElTQ0FSREFCTEUgIDAsIDAsIDI2MCwgMjUwClNUWUxFIFdTX0NISUxEIHwgV1NfRElTQUJMRUQKRk9OVCA4LCAiTVMgU2hlbGwgRGxnIgpCRUdJTgogICAgR1JPVVBCT1ggICAgICAgICIgU/xy/GP8IEX+bGX+dGlybWVzaSAiLElEQ19TVEFUSUMsOCw0LDI0NCwyNDAKICAgIENPTlRST0wgICAgICAgICAiTGlzdHZpZXciLElEQ19MSVNUX0RSSVZFUywiU3lzTGlzdFZpZXczMiIsTFZTX1JFUE9SVCB8IExWU19BVVRPQVJSQU5HRSB8IExWU19BTElHTkxFRlQgfAogICAgICAgICAgICAgICAgICAgIExWU19TSU5HTEVTRUwgfCBXU19CT1JERVIgfCBXU19UQUJTVE9QLCAxNSwxOCwyMzIsNzYKICAgIFBVU0hCVVRUT04gICAgICAiJkVrbGUuLi4iLElEQ19CVVRUT05fQURELDE1LDk4LDM3LDE0CiAgICBQVVNIQlVUVE9OICAgICAgIiZLYWxk/XIiLElEQ19CVVRUT05fUkVNT1ZFLDU2LDk4LDM3LDE0CiAgICBQVVNIQlVUVE9OICAgICAgIk90b21hdGlrICZBbGf9bGEuLi4iLElEQ19CVVRUT05fQVVUT0RFVEVDVCwxODYsOTgsNjAsMTQKCiAgICAvKiBlZGl0aW5nIGRyaXZlIGRldGFpbHMgKi8KICAgIExURVhUICAgICAgICAgICAiJllvbDoiLElEQ19TVEFUSUMsMTUsMTIzLDIwLDkgICAgCiAgICBFRElUVEVYVCAgICAgICAgSURDX0VESVRfUEFUSCw0MSwxMjAsMTYwLDEzLEVTX0FVVE9IU0NST0xMIHwgV1NfVEFCU1RPUAogICAgUFVTSEJVVFRPTiAgICAgICImR/Z6YXQuLi4iLElEQ19CVVRUT05fQlJPV1NFX1BBVEgsMjA2LDEyMCw0MCwxMwogICAgCiAgICBMVEVYVCAgICAgICAgICAgIiZU/HI6IixJRENfU1RBVElDX1RZUEUsMTUsMTM4LDIxLDEwCiAgICBDT01CT0JPWCAgICAgICAgSURDX0NPTUJPX1RZUEUsNDEsMTM1LDc3LDYwLENCU19EUk9QRE9XTkxJU1QgfCBXU19WU0NST0xMIHwgV1NfVEFCU1RPUAogICAgCiAgICBMVEVYVCAgICAgICAgICAgIkV0aWtldCB2ZSBzZXJpIG5vIixJRENfTEFCRUxTRVJJQUxfU1RBVElDLDE1LDE1NSw5NSwxMAogICAgCiAgICBQVVNIQlVUVE9OICAgICAgIkdlbGn+bWn+ICZTZedlbmVrbGVyIixJRENfQlVUVE9OX1NIT1dfSElERV9BRFZBTkNFRCwxODYsMTM2LDYwLDEzCiAgICBDT05UUk9MICAgICAgICAgIkF5Z/10dGFuIE90b21hdGlrIEEmbGf9bGE6IixJRENfUkFESU9fQVVUT0RFVEVDVCwiQnV0dG9uIiwKICAgICAgICAgICAgICAgICAgICBCU19BVVRPUkFESU9CVVRUT04sMTUsMTY2LDkzLDEwCiAgICBFRElUVEVYVCAgICAgICAgSURDX0VESVRfREVWSUNFLDI3LDE3NiwxNzQsMTMsRVNfQVVUT0hTQ1JPTEwKICAgIFBVU0hCVVRUT04gICAgICAiR/YmemF0Li4uIixJRENfQlVUVE9OX0JST1dTRV9ERVZJQ0UsMjA2LDE3Niw0MCwxMwogICAgQ09OVFJPTCAgICAgICAgICImRWxsZSBBdGE6IixJRENfUkFESU9fQVNTSUdOLCJCdXR0b24iLAogICAgICAgICAgICAgICAgICAgIEJTX0FVVE9SQURJT0JVVFRPTiwxNSwxOTUsNjksMTAKCiAgICBMVEVYVCAgICAgICAgICAgIiZFdGlrZXQ6IixJRENfU1RBVElDX0xBQkVMLDMzLDIwOCwyOSwxMgogICAgRURJVFRFWFQgICAgICAgIElEQ19FRElUX0xBQkVMLDYzLDIwNSw3OCwxMyxFU19BVVRPSFNDUk9MTCB8IFdTX1RBQlNUT1AKICAgIExURVhUICAgICAgICAgICAiUyZlcmkgTm86IixJRENfU1RBVElDX1NFUklBTCwzMywyMjUsMjksMTIKICAgIEVESVRURVhUICAgICAgICBJRENfRURJVF9TRVJJQUwsNjMsMjIxLDc4LDEzLEVTX0FVVE9IU0NST0xMIHwgV1NfVEFCU1RPUAoKICAgIENPTlRST0wgICAgICAgICAiTm9rdGF5bGEgYmH+bGF5YW4gZG9zeWFsYXL9IGf2c3RlciIsSURDX1NIT1dfRE9UX0ZJTEVTLCJCdXR0b24iLEJTX0FVVE9DSEVDS0JPWCB8IFdTX1RBQlNUT1AsOCwyNjAsMjMwLDgKRU5ECgpJRERfQVVESU9DRkcgRElBTE9HIERJU0NBUkRBQkxFICAwLCAwLCAyNjAsIDI1MApTVFlMRSBXU19DSElMRCB8IFdTX0RJU0FCTEVECkZPTlQgOCwgIk1TIFNoZWxsIERsZyIKQkVHSU4KICAgIEdST1VQQk9YICAgICAgICAiIFP8cvxj/CBTZedpbWkgIixJRENfU1RBVElDLDgsNCwyNDQsMTk1CiAgICBMVEVYVCAgICAgICAgICAgIt1zdGVkafBpbml6IHP8cvxj/G78biBrdXR1c3VudSBp/mFyZXRsZXllcmVrIGJpciBzZXMgc/xy/GP8c/wgc2XnaW4uIEhp52JpciBz/HL8Y/wgc2XnbWV5ZXJlayBzZXNpIGV0a2lzaXpsZf50aXJlYmlsaXJzaW5pei4gQmlyZGVuIGZhemxhIHP8cvxj/CBzZedpbWkg9m5lcmlsbWV6LiDcemVyaW5lIHNh8CB0/WtsYXlhcmFrIGJpciBz/HL8Y/x5/CB5YXD9bGFuZP1y/W4uIixJRENfU1RBVElDLDE1LDIwLDIyNywzMAogICAgQ09OVFJPTCAgICAgICAgICJBeWf9dGxhciIsSURDX0FVRElPX1RSRUUsIlN5c1RyZWVWaWV3MzIiLFdTX0JPUkRFUiB8IFdTX1RBQlNUT1AsMTUsNTAsMTQwLDE0MCAKICAgIFBVU0hCVVRUT04JICAgICJEZW5ldGltIE1hc2Fz/SIsSURDX0FVRElPX0NPTlRST0xfUEFORUwsMTcwLDUwLDU5LDE0CiAgICBHUk9VUEJPWCAgICAgICAgIiBEaXJlY3RTb3VuZCAiLElEQ19TVEFUSUMsOCwyMDUsMjQ0LDYwCiAgICBMVEVYVCAgICAgICAgICAgIkRvbmFu/W0gSP16bGFuZP1ybWFz/TogIixJRENfU1RBVElDLDE1LDIxNSw5MCwxMAogICAgQ09NQk9CT1gJICAgIElEQ19EU09VTkRfSFdfQUNDRUwsMTAwLDIxMywxNTAsNzAsQ0JTX0RST1BET1dOTElTVCB8IFdTX1ZTQ1JPTEwgfCBXU19UQUJTVE9QCiAgICBMVEVYVCAgICAgICAgICAgItZudGFu/W1s/SDWcm5la2xlbWUgSP16/ToiLElEQ19TVEFUSUMsMTUsMjMyLDcwLDgKICAgIENPTUJPQk9YICAgICAgICBJRENfRFNPVU5EX1JBVEVTLDkwLDIzMCw0Miw3NixDQlNfRFJPUERPV05MSVNUIHwgV1NfVlNDUk9MTCB8IFdTX1RBQlNUT1AKICAgIExURVhUICAgICAgICAgICAi1nJuZWsgQmH+/W5hIEJpdCBTYXn9c/06IixJRENfU1RBVElDLDEzNywyMzIsODAsOAogICAgQ09NQk9CT1ggICAgICAgIElEQ19EU09VTkRfQklUUywyMjAsMjMwLDMwLDU2LENCU19EUk9QRE9XTkxJU1QgfCBXU19WU0NST0xMIHwgV1NfVEFCU1RPUAogICAgQ09OVFJPTCAgICAgICAgICJT/HL8Y/wgVGFrbGlkaSIsSURDX0RTT1VORF9EUlZfRU1VTCwiQnV0dG9uIixCU19BVVRPQ0hFQ0tCT1ggfCBXU19UQUJTVE9QLDE1LDI1MCwyMzAsMTAKRU5ECgpJRERfREVTS1RPUF9JTlRFR1JBVElPTiBESUFMT0cgRElTQ0FSREFCTEUgIDAsIDAsIDI2MCwgMjUwClNUWUxFIFdTX0NISUxEIHwgV1NfRElTQUJMRUQKRk9OVCA4LCAiTVMgU2hlbGwgRGxnIgpCRUdJTgogICAgR1JPVVBCT1ggICAgICAgICIgR/Zy/G78bSAiLElEQ19TVEFUSUMsOCw0LDI0NCwxMDYKICAgIExURVhUICAgICAgICAgICAiVGVtYToiLElEQ19TVEFUSUMsMTUsMTYsMjMwLDgKICAgIENPTUJPQk9YICAgICAgICBJRENfVEhFTUVfVEhFTUVDT01CTywxNSwyNCwyMzAsMTQsQ0JTX0RST1BET1dOTElTVCB8IFdTX1ZTQ1JPTEwgfCBXU19UQUJTVE9QCiAgICBQVVNIQlVUVE9OICAgICAgIlRlbWEga3VyLi4uIixJRENfVEhFTUVfSU5TVEFMTCwxNTIsMzgsOTMsMTQKICAgIExURVhUICAgICAgICAgICAiUmVuazoiLElEQ19USEVNRV9DT0xPUlRFWFQsMTUsNTQsMjMwLDgKICAgIENPTUJPQk9YICAgICAgICBJRENfVEhFTUVfQ09MT1JDT01CTywxNSw2MiwyMzAsMTQsQ0JTX0RST1BET1dOTElTVCB8IFdTX1ZTQ1JPTEwgfCBXU19UQUJTVE9QCiAgICBMVEVYVCAgICAgICAgICAgIkJveXV0OiIsSURDX1RIRU1FX1NJWkVURVhULDE1LDgwLDIzMCw4CiAgICBDT01CT0JPWCAgICAgICAgSURDX1RIRU1FX1NJWkVDT01CTywxNSw4OCwyMzAsMTQsQ0JTX0RST1BET1dOTElTVCB8IFdTX1ZTQ1JPTEwgfCBXU19UQUJTVE9QCiAgICBHUk9VUEJPWCAgICAgICAgIiDWemVsIEtsYXP2cmxlciAiLElEQ19TVEFUSUMsOCwxMTQsMjQ0LDEwMAogICAgQ09OVFJPTCAgICAgICAgICJMaXN0dmlldyIsSURDX0xJU1RfU0ZQQVRIUywiU3lzTGlzdFZpZXczMiIsTFZTX1JFUE9SVCB8IExWU19BVVRPQVJSQU5HRSB8IExWU19BTElHTkxFRlQgfAogICAgICAgICAgICAgICAgICAgICBMVlNfU0lOR0xFU0VMIHwgV1NfQk9SREVSIHwgV1NfVEFCU1RPUCwgMTUsMTI2LDIzMCw2NAogICAgQ09OVFJPTCAgICAgICAgICJIZWRlZiBkaXppbjoiLElEQ19MSU5LX1NGUEFUSCwiQnV0dG9uIixCU19BVVRPQ0hFQ0tCT1h8V1NfVEFCU1RPUHxXU19ESVNBQkxFRCwxNSwxOTUsNTAsMTMKICAgIEVESVRURVhUICAgICAgICAgSURDX0VESVRfU0ZQQVRILDY1LDE5NSwxNDUsMTMsRVNfQVVUT0hTQ1JPTEx8V1NfVEFCU1RPUHxXU19ESVNBQkxFRAogICAgUFVTSEJVVFRPTiAgICAgICJH9nphdCIsSURDX0JST1dTRV9TRlBBVEgsMjE1LDE5NSwzMCwxMyxXU19ESVNBQkxFRApFTkQKClNUUklOR1RBQkxFIERJU0NBUkRBQkxFCkJFR0lOCiAgICBJRFNfV0lORV9WRVJTSU9OICAgICAgICAiQ1ZTIgogICAgSURTX1RBQl9BUFBMSUNBVElPTlMgICAgIlV5Z3VsYW1hbGFyIgogICAgSURTX1RBQl9ETExTICAgICAgICAgICAgIktpdGFwbP1rbGFyIgogICAgSURTX1RBQl9EUklWRVMgICAgICAgICAgIlP8cvxj/GxlciIKICAgIElEU19DSE9PU0VfUEFUSCAgICAgICAgICJM/HRmZW4gaGFyaXRhbGFuYWNhayB1bml4IGRpemluaW5pIHNl52luLiIKICAgIElEU19ISURFX0FEVkFOQ0VEICAgICAgICJUZW1lbCBBeWFybGFyIgogICAgSURTX1NIT1dfQURWQU5DRUQgICAgICAgIkdlbGn+bWn+IEF5YXJsYXIiCiAgICBJRFNfTk9USEVNRSAgICAgICAgICAgICAiKFRlbWEgWW9rKSIKICAgIElEU19UQUJfR1JBUEhJQ1MgICAgICAgICJHcmFmaWsiCiAgICBJRFNfVEFCX0RFU0tUT1BfSU5URUdSQVRJT04gIk1hc2H8c3T8IEVudGVncmFzeW9udSIKICAgIElEU19UQUJfQVVESU8gICAgICAgICAgICJTZXMiCiAgICBJRFNfVEFCX0FCT1VUICAgICAgICAgICAiSGFra/1uZGEiCiAgICBJRFNfV0lORUNGR19USVRMRSAgICAgICAiV2luZSB5YXD9bGFuZP1ybWFz/SIKICAgIElEU19XSU5FQ0ZHX1RJVExFX0FQUCAgICIlcyBp52luIFdpbmUgeWFw/WxhbmT9cm1hc/0iCiAgICBJRFNfVEhFTUVGSUxFICAgICAgICAgICAiVGVtYSBkb3N5YWxhcv0iCiAgICBJRFNfVEhFTUVGSUxFX1NFTEVDVCAgICAiVGVtYSBkb3N5YXP9IHNl52luIgogICAgSURTX0FVRElPX01JU1NJTkcgICAgICAgIlNpc3RlbSBrYXlk/W5kYSBiZWxpcmxlbm1p/iBiaXIgc2VzIHP8cvxj/HP8IHlvay5cblxu1m5lcmlsZW4gYmlyIHP8cvxj/CBzaXppbiBp52luIHNl52lsZGkuXG5CdSBz/HL8Y/x5/CBrdWxsYW5hYmlsaXIgdmV5YSB2YXJzYSBiYf5rYSBiaXIgc/xy/GP8efwgc2XnZWJpbGlyc2luaXouXG5cblNl52ltaW4gZXRraWxpIG9sYWJpbG1lc2kgaedpbiBVeWd1bGEnef0gdP1rbGFtYWz9c/1u/XouIgogICAgSURTX1NIRUxMX0ZPTERFUiAgICAgICAgIktsYXP2ciIKICAgIElEU19MSU5LU19UTyAgICAgICAgICAgICJIZWRlZiBEaXppbiIKRU5ECgpTVFJJTkdUQUJMRSBESVNDQVJEQUJMRQpCRUdJTgogICAgSURTX0RMTF9XQVJOSU5HICAgICAgICAgIkJ1IGtpdGFwbP3w/W4gefxrbGVtZSBz/XJhc/1u/W4gZGXwaf50aXJpbG1lc2kg9m5lcmlsbWV6LlxuQnVudSB5YXBtYWsgaXN0ZWRp8GluaXpkZW4gZW1pbiBtaXNpbml6PyIKICAgIElEU19ETExfV0FSTklOR19DQVBUSU9OICJVeWFy/Togc2lzdGVtIGtpdGFwbP3w/SIKICAgIElEU19ETExfTkFUSVZFICAgICAgICAgICJkb/BhbCIKICAgIElEU19ETExfQlVJTFRJTiAgICAgICAgICJ5ZXJsZf5payIKICAgIElEU19ETExfTkFUSVZFX0JVSUxUSU4gICJkb/BhbCwgeWVybGX+aWsiCiAgICBJRFNfRExMX0JVSUxUSU5fTkFUSVZFICAieWVybGX+aWssIGRv8GFsIgogICAgSURTX0RMTF9ESVNBQkxFRCAgICAgICAgImRldnJlIGT9/v0iCiAgICBJRFNfREVGQVVMVF9TRVRUSU5HUyAgICAi1m50YW79bWz9IEF5YXJsYXIiCiAgICBJRFNfRVhFQ1VUQUJMRV9GSUxURVIgICAiV2luZSBQcm9ncmFtbGFy/SAoKi5leGUsKi5leGUuc28pXDAqLmV4ZTsqLmV4ZS5zb1wwIgogICAgSURTX1VTRV9HTE9CQUxfU0VUVElOR1MgIkdlbmVsIGF5YXJsYXL9IGt1bGxhbiIKICAgIElEU19TRUxFQ1RfRVhFQ1VUQUJMRSAgICLHYWz9/nT9cv1sYWJpbGlyIGJpciBkb3N5YSBzZedpbiIKRU5ECgpTVFJJTkdUQUJMRSBESVNDQVJEQUJMRQpCRUdJTgogICAgSURTX1NIQURFUl9NT0RFX0hBUkRXQVJFICAgICJEb25hbv1tIgogICAgSURTX1NIQURFUl9NT0RFX05PTkUgICAgICAgICJIaediaXJpIgogICAgSURTX1NIQURFUl9NT0RFX0VNVUxBVElPTiAgICJUYWtsaXQiCkVORAoKU1RSSU5HVEFCTEUgRElTQ0FSREFCTEUKQkVHSU4KICAgIElEU19EUklWRV9VTktOT1dOICAgICAgICAgICAiT3RvbWF0aWsgQWxn/WxhIgogICAgSURTX0RSSVZFX0ZJWEVEICAgICAgICAgICAgICJZZXJlbCBzYWJpdCBkaXNrIgogICAgSURTX0RSSVZFX1JFTU9URSAgICAgICAgICAgICJB8CBwYXlsYf79bf0iCiAgICBJRFNfRFJJVkVfUkVNT1ZBQkxFICAgICAgICAgIkRpc2tldCBz/HL8Y/wiCiAgICBJRFNfRFJJVkVfQ0RST00gICAgICAgICAgICAgIkNELVJPTSIKICAgIElEU19EUklWRV9MRVRURVJTX0VYQ0VFREVEICAiRGFoYSBmYXpsYSBz/HL8Y/wgZWtsZXllbWV6c2luaXouXG5cbkhlciBz/HL8Y/xu/G4gQS1aIGFyYWz98P1uZGEgYmlyIGhhcmZpIG9sbWFs/WT9ci4gRG9sYXn9c/15bGEgMjYnZGFuIGZhemxhIHRhbv1tbGF5YW1henP9bv16LiIKICAgIElEU19TWVNURU1fRFJJVkVfTEFCRUwgICAgICAiU2lzdGVtIHP8cvxj/HP8IgogICAgSURTX0NPTkZJUk1fREVMRVRFX0MgICAgICAgICJDIHP8cvxj/HP8bvwgc2lsbWVrIGlzdGVkafBpbml6ZGVuIGVtaW4gbWlzaW5pej9cblxux2/wdSBXaW5kb3dzIHV5Z3VsYW1hc/0gQyBz/HL8Y/xz/G78biB2YXIgb2xtYXP9bv0gYmVrbGVyIHZlIHlva3NhIGlzdGVubWV5ZW4gYmlyIP5la2lsZGUgc29ubGFu/XIuIEXwZXIgZGV2YW0gZWRlcnNlbml6LCBkYWhhIHNvbnJhIHllbmlkZW4gb2x1/nR1cm1hef0gdW51dG1hef1uISIKICAgIElEU19DT0xfRFJJVkVMRVRURVIgICAgICAgICAiSGFyZiIKICAgIElEU19DT0xfRFJJVkVNQVBQSU5HICAgICAgICAiU/xy/GP8IEX+bGVtZSIKICAgIElEU19OT19EUklWRV9DICAgICAgICAgICAgICAiQyBz/HL8Y/xu/HogeW9rLiBCdSBiZWtsZW5lbiBiaXIgZHVydW0gZGXwaWwuXG5cbkJpciB0YW5lIG9sdf50dXJtYWsgaedpbiBT/HL8Y/xsZXIgc2VrbWVzaW5kZW4gRWtsZSd5aSB0/WtsYW1hef0gdW51dG1hef1uIVxuIgpFTkQKClNUUklOR1RBQkxFIERJU0NBUkRBQkxFCkJFR0lOCiAgICBJRFNfQUNDRUxfRlVMTCAgICAgICAgICAgICAgIlRhbSIKICAgIElEU19BQ0NFTF9TVEFOREFSRCAgICAgICAgICAiU3RhbmRhcnQiCiAgICBJRFNfQUNDRUxfQkFTSUMgICAgICAgICAgICAgIlRlbWVsIgogICAgSURTX0FDQ0VMX0VNVUxBVElPTiAgICAgICAgICJUYWtsaXQiCiAgICBJRFNfRFJJVkVSX0FMU0EgICAgICAgICAgICAgIkFMU0EgU/xy/GP8c/wiCiAgICBJRFNfRFJJVkVSX0FSVFMgICAgICAgICAgICAgImFSdHMgU/xy/GP8c/wiCiAgICBJRFNfRFJJVkVSX0VTT1VORCAgICAgICAgICAgIkVzb3VuRCBT/HL8Y/xz/CIKICAgIElEU19EUklWRVJfT1NTICAgICAgICAgICAgICAiT1NTIFP8cvxj/HP8IgogICAgSURTX0RSSVZFUl9KQUNLICAgICAgICAgICAgICJKQUNLIFP8cvxj/HP8IgogICAgSURTX0RSSVZFUl9OQVMgICAgICAgICAgICAgICJOQVMgU/xy/GP8c/wiCiAgICBJRFNfRFJJVkVSX0FVRElPSU8gICAgICAgICAgIkF1ZGlvIElPIChTb2xhcmlzKSBT/HL8Y/xz/CIKICAgIElEU19EUklWRVJfQ09SRUFVRElPICAgICAgICAiQ29yZUF1ZGlvIFP8cvxj/HP8IgogICAgSURTX09QRU5fRFJJVkVSX0VSUk9SICAgICAgICIlcyBh5/1sYW1hZP0hIgogICAgSURTX1NPVU5ERFJJVkVSUyAgICAgICAgICAgICJTZXMgU/xy/GP8bGVyaSIKICAgIElEU19ERVZJQ0VTX1dBVkVPVVQgICAgICAgICAiRGFsZ2Egx/1r/f4gQXln/XRsYXL9IgogICAgSURTX0RFVklDRVNfV0FWRUlOICAgICAgICAgICJEYWxnYSBHaXJp/iBBeWf9dGxhcv0iCiAgICBJRFNfREVWSUNFU19NSURJT1VUICAgICAgICAgIk1JREkgx/1r/f4gQXln/XRsYXL9IgogICAgSURTX0RFVklDRVNfTUlESUlOICAgICAgICAgICJNSURJIEdpcmn+IEF5Z/10bGFy/SIKICAgIElEU19ERVZJQ0VTX0FVWCAgICAgICAgICAgICAiQXV4IEF5Z/10bGFy/SIKICAgIElEU19ERVZJQ0VTX01JWEVSICAgICAgICAgICAiTWl4ZXIgQXln/XRsYXL9IgogICAgSURTX1VOQVZBSUxBQkxFX0RSSVZFUiAgICAgICJTaXN0ZW0ga2F5ZP1uZGEga3VsbGFu/WxhYmlsaXIgb2xtYXlhbiBiaXIgc/xy/GP8IGJ1bHVuZHUhXG5cblwiJXNcIiBnaXJp/mkgc2lzdGVtIGtheWT9bmRhbiBzaWxpbnNpbiBtaT8iCiAgICBJRFNfV0FSTklORyAgICAgICAgICAgICAgICAgIlV5YXL9IgpFTkQK